/* ═══════════════════════════════════════════════════════════════
   AOMICS — Advanced Clinical Data Science CRO
   Dark-theme design system with AI/ML visual language
   ═══════════════════════════════════════════════════════════════ */

:root {
  --bg-deep: #030712;
  --bg-base: #0a0f1c;
  --bg-surface: #111827;
  --bg-elevated: #1e293b;
  --bg-glass: rgba(17, 24, 39, 0.72);
  --cyan-400: #963232;
  --cyan-500: #891919;
  --cyan-600: #7c0000;
  --teal-400: #a34c4c;
  --teal-500: #963232;
  --violet-400: #a78bfa;
  --violet-500: #8b5cf6;
  --text-primary: #f8fafc;
  --text-secondary: #94a3b8;
  --text-muted: #64748b;
  --text-inverse: #0f172a;
  --border-subtle: rgba(148, 163, 184, 0.08);
  --border-glow: rgba(124, 0, 0, 0.25);
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --shadow-glow: 0 0 40px rgba(124, 0, 0, 0.08);
  --shadow-card: 0 4px 24px rgba(0, 0, 0, 0.4);
  --transition-fast: 0.15s ease;
  --transition-base: 0.3s ease;
  --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: var(--bg-deep);
  color: var(--text-primary);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

.wrap { max-width: 1280px; margin: 0 auto; padding: 0 24px; }
@media (min-width: 1024px) { .wrap { padding: 0 40px; } }

.skip-link {
  position: absolute; top: -40px; left: 0;
  background: var(--cyan-500); color: var(--text-inverse);
  padding: 8px 16px; font-size: 13px; font-weight: 600;
  border-radius: 0 0 var(--radius-sm) 0; z-index: 10000;
  transition: top var(--transition-fast);
}
.skip-link:focus { top: 0; }

.reveal { opacity: 1 !important; transform: translateY(0) !important; }

/* Header */
.site-header {
  position: sticky; top: 0; left: 0; right: 0; z-index: 1000;
  background: transparent; backdrop-filter: blur(0px);
  border-bottom: 1px solid transparent;
  transition: all var(--transition-base);
}
.site-header.scrolled {
  background: rgba(3, 7, 18, 0.88); backdrop-filter: blur(16px);
  border-bottom-color: var(--border-subtle);
}
.header-inner {
  max-width: 1280px; margin: 0 auto; padding: 0 24px;
  display: flex; align-items: center; justify-content: space-between; height: 72px;
}
@media (min-width: 1024px) { .header-inner { padding: 0 40px; } }

.brand { display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--text-primary); }
.brand img { height: 36px; width: auto; filter: brightness(1.2); }
.brand-text {
  font-size: 20px; font-weight: 800; letter-spacing: 0.08em;
  background: linear-gradient(135deg, var(--cyan-400), var(--teal-400));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}

.nav-toggle { display: flex; flex-direction: column; gap: 5px; background: none; border: none; cursor: pointer; padding: 8px; z-index: 1001; }
.nav-toggle span { display: block; width: 24px; height: 2px; background: var(--text-primary); border-radius: 2px; transition: all 0.3s ease; }
.nav-open .nav-toggle span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.nav-open .nav-toggle span:nth-child(2) { opacity: 0; }
.nav-open .nav-toggle span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

.main-nav {
  position: fixed; top: 0; right: -100%; width: 80%; max-width: 360px; height: 100vh;
  background: var(--bg-surface); border-left: 1px solid var(--border-subtle);
  padding: 100px 32px 32px; display: flex; flex-direction: column; gap: 24px;
  transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1); z-index: 999;
}
.nav-open .main-nav { right: 0; }
.main-nav ul { list-style: none; display: flex; flex-direction: column; gap: 4px; }
.main-nav ul li a { display: block; padding: 10px 0; color: var(--text-secondary); text-decoration: none; font-size: 15px; font-weight: 500; transition: color var(--transition-fast); }
.main-nav ul li a:hover { color: var(--cyan-400); }
.nav-item-row { display: flex; align-items: center; justify-content: space-between; }
.nav-sub-toggle { display: inline-flex; align-items: center; justify-content: center; min-width: 28px; min-height: 28px; background: none; border: none; border-radius: 8px; color: var(--text-muted); cursor: pointer; padding: 6px; transition: color var(--transition-fast), background var(--transition-fast); }
.nav-sub-toggle:hover, .nav-sub-toggle[aria-expanded="true"] { color: var(--aomics-burgundy); background: rgba(124, 0, 0, .08); }
.nav-sub-toggle svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; transition: transform .2s ease; }
.nav-sub-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.sub-menu { max-height: 0; overflow: hidden; padding-left: 16px; transition: max-height 0.3s ease; }
.sub-menu-open { max-height: 400px; }

.lang-switch { display: flex; gap: 8px; margin-top: auto; }
.lang-btn { padding: 6px 14px; border-radius: var(--radius-sm); border: 1px solid var(--border-subtle); background: transparent; color: var(--text-muted); font-size: 13px; font-weight: 600; cursor: pointer; transition: all var(--transition-fast); }
.lang-btn:hover { border-color: var(--cyan-500); color: var(--text-primary); }
.lang-btn.active { background: var(--cyan-500); color: var(--text-inverse); border-color: var(--cyan-500); }

.header-cta {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 12px 24px; background: linear-gradient(135deg, var(--cyan-500), var(--teal-500));
  color: var(--text-inverse); text-decoration: none; font-weight: 700; font-size: 14px;
  border-radius: var(--radius-md); transition: all var(--transition-base);
  box-shadow: 0 0 20px rgba(124, 0, 0, 0.2);
}
.header-cta:hover { box-shadow: 0 0 30px rgba(124, 0, 0, 0.4); transform: translateY(-1px); }

@media (min-width: 1024px) {
  .nav-toggle { display: none; }
  .main-nav { position: static; width: auto; height: auto; background: transparent; border: none; padding: 0; flex-direction: row; align-items: center; gap: 32px; }
  .main-nav ul { flex-direction: row; gap: 24px; }
  .main-nav ul li a { padding: 8px 0; font-size: 14px; }
  .sub-menu { position: absolute; background: var(--bg-elevated); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); padding: 8px 0; min-width: 200px; box-shadow: var(--shadow-card); }
  .lang-switch { margin-top: 0; }
}

/* Buttons */
.btn {
  display: inline-flex; align-items: center; gap: 8px; padding: 14px 28px;
  background: linear-gradient(135deg, var(--cyan-500), var(--teal-500));
  color: var(--text-inverse); text-decoration: none; font-weight: 700; font-size: 15px;
  border-radius: var(--radius-md); border: none; cursor: pointer;
  transition: all var(--transition-base); position: relative; overflow: hidden;
}
.btn::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, var(--cyan-400), var(--teal-400)); opacity: 0; transition: opacity var(--transition-base); }
.btn:hover::before { opacity: 1; }
.btn span, .btn { position: relative; z-index: 1; }
/* .btn-glow intentionally carries no styling of its own any more: its old
   cyan box-shadow was already dead (overridden further down by the burgundy
   canonical .btn/.btn:hover rules), but its translateY(-2px) hover lift was
   still live and was the one thing making these buttons ("Explore our
   services", "Request a quote", etc.) hover differently from .btn-outline's
   "Scope this work". Removing it lets every .btn variant share one hover
   treatment. */
.btn-outline {
  background: transparent;
  border: 1px solid rgba(124, 0, 0,.45);
  color: var(--cyan-600);
}
.btn-outline::before { display: none; }
.btn-outline {
  background: transparent;
  border: 1px solid rgba(124, 0, 0,.45);
  color: var(--cyan-600);
}
.btn-outline::before { display: none; }

/* Hero */
.aomics-hero {
  position: relative; padding: 140px 0 80px;
  background: radial-gradient(ellipse at 50% 0%, rgba(124, 0, 0, 0.06) 0%, transparent 60%),
              radial-gradient(ellipse at 80% 50%, rgba(139, 92, 246, 0.04) 0%, transparent 50%),
              var(--bg-base);
  overflow: hidden; min-height: 640px; display: flex; flex-direction: column; justify-content: flex-start;
}
.particle-canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1; }
.hero-gradient-bottom { position: absolute; bottom: 0; left: 0; right: 0; height: 200px; background: linear-gradient(to top, var(--bg-deep), transparent); z-index: 2; pointer-events: none; }
.aomics-hero-grid { position: relative; z-index: 3; display: grid; grid-template-columns: 1fr; gap: 48px; align-items: center; }
@media (min-width: 1024px) { .aomics-hero-grid { grid-template-columns: 1.1fr 1fr; gap: 64px; } }

.aomics-hero-copy { opacity: 0; transform: translateY(30px); transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1); }
.aomics-hero-copy.reveal { opacity: 1; transform: translateY(0); }

.aomics-hero-kicker { display: inline-flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--cyan-400); margin-bottom: 20px; }
.kicker-pulse { width: 8px; height: 8px; border-radius: 50%; background: var(--cyan-400); box-shadow: 0 0 12px var(--cyan-400); animation: pulse-glow 2s ease-in-out infinite; }
@keyframes pulse-glow { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.5; transform: scale(1.3); } }

.aomics-hero-copy h1 { font-size: clamp(2.2rem, 5vw, 3.8rem); font-weight: 800; line-height: 1.1; letter-spacing: -0.02em; margin-bottom: 24px; }
.type-line { display: block; }
.type-line em { font-style: normal; background: linear-gradient(135deg, var(--cyan-400), var(--teal-400)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }

.aomics-hero-lead { font-size: 17px; color: var(--text-secondary); max-width: 520px; margin-bottom: 32px; line-height: 1.7; }
.aomics-hero-actions { display: flex; flex-wrap: wrap; gap: 16px; margin-bottom: 40px; }
.aomics-hero-secondary { display: inline-flex; align-items: center; gap: 8px; color: var(--text-primary); text-decoration: none; font-weight: 600; font-size: 15px; padding: 14px 4px; transition: color var(--transition-fast); }
.aomics-hero-secondary:hover { color: var(--cyan-400); }
.aomics-hero-secondary span { transition: transform var(--transition-fast); }
.aomics-hero-secondary:hover span { transform: translateX(4px); }

.aomics-hero-trust { display: flex; flex-wrap: wrap; gap: 12px; }
.aomics-hero-trust span { padding: 6px 16px; background: rgba(124, 0, 0, 0.08); border: 1px solid rgba(124, 0, 0, 0.15); border-radius: 100px; font-size: 12px; font-weight: 600; letter-spacing: 0.04em; color: var(--cyan-400); }

/* Hero Visual */
.aomics-hero-visual { opacity: 0; transform: translateY(30px) scale(0.98); transition: all 1s cubic-bezier(0.4, 0, 0.2, 1) 0.2s; background: var(--bg-glass); backdrop-filter: blur(20px); border: 1px solid var(--border-subtle); border-radius: var(--radius-xl); overflow: hidden; box-shadow: var(--shadow-glow), var(--shadow-card); }
.aomics-hero-visual.reveal { opacity: 1; transform: translateY(0) scale(1); }
.aomics-hero-visual.is-dashboard { background: #fff; }
.hhd-fit { width: 100%; overflow: hidden; }
.hhd-dashboard { transform-origin: top left; }

.hero-window-bar { display: flex; align-items: center; gap: 12px; padding: 12px 16px; background: rgba(0, 0, 0, 0.3); border-bottom: 1px solid var(--border-subtle); font-size: 12px; font-weight: 600; color: var(--text-muted); }
.hero-window-dots { display: flex; gap: 6px; }
.hero-window-dots i { width: 10px; height: 10px; border-radius: 50%; display: block; }
.hero-window-dots i:nth-child(1) { background: #ef4444; }
.hero-window-dots i:nth-child(2) { background: #f59e0b; }
.hero-window-dots i:nth-child(3) { background: #7c0000; }
.hero-window-status { margin-left: auto; display: flex; align-items: center; gap: 6px; font-size: 11px; color: var(--teal-400); }
.live-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--teal-400); animation: pulse-glow 1.5s ease-in-out infinite; }

.hero-window-body { padding: 24px; }
.hero-workspace-heading { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 20px; }
.hero-workspace-heading p { font-size: 11px; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 4px; }
.hero-workspace-heading h2 { font-size: 20px; font-weight: 700; }
.hero-reviewed { padding: 4px 10px; background: rgba(124, 0, 0, 0.1); border: 1px solid rgba(124, 0, 0, 0.2); border-radius: 100px; font-size: 11px; font-weight: 700; color: var(--teal-400); }

.hero-signal-card { background: rgba(0, 0, 0, 0.25); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); padding: 16px; margin-bottom: 16px; }
.hero-signal-title { display: flex; justify-content: space-between; font-size: 12px; margin-bottom: 12px; color: var(--text-muted); }
.hero-signal-title strong { color: var(--text-secondary); font-weight: 600; }
.hero-sparkline { display: flex; align-items: flex-end; gap: 6px; height: 60px; margin-bottom: 8px; }
.hero-sparkline span { flex: 1; background: linear-gradient(to top, var(--cyan-600), var(--cyan-400)); border-radius: 3px 3px 0 0; opacity: 0.7; animation: grow-up 0.8s ease-out forwards; transform-origin: bottom; transform: scaleY(0); }
@keyframes grow-up { to { transform: scaleY(1); } }
.hero-signal-axis { display: flex; justify-content: space-between; font-size: 10px; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.06em; }

.hero-workspace-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 16px; }
.hero-workspace-tile { background: rgba(255, 255, 255, 0.03); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); padding: 14px 10px; text-align: center; transition: all var(--transition-base); }
.hero-workspace-tile:hover { background: rgba(124, 0, 0, 0.06); border-color: rgba(124, 0, 0, 0.2); transform: translateY(-2px); }
.tile-icon { display: block; font-size: 20px; margin-bottom: 6px; color: var(--cyan-400); }
.hero-workspace-tile strong { display: block; font-size: 11px; font-weight: 700; margin-bottom: 2px; }
.hero-workspace-tile small { font-size: 10px; color: var(--text-muted); }

.hero-workspace-footer { display: flex; align-items: center; gap: 8px; font-size: 11px; color: var(--text-muted); }
.hero-footer-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--violet-400); box-shadow: 0 0 8px var(--violet-400); }

/* Data Stream */
.data-stream { background: var(--bg-surface); border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); overflow: hidden; padding: 12px 0; }
.data-stream-track { display: flex; gap: 40px; width: max-content; animation: stream-scroll 40s linear infinite; }
@keyframes stream-scroll { 0% { transform: translateX(0); } 100% { transform: translateX(-33.33%); } }
.data-stream-item { display: flex; align-items: center; gap: 10px; font-family: 'SF Mono', 'Fira Code', monospace; font-size: 12px; color: var(--text-muted); white-space: nowrap; }
.data-stream-dot { width: 5px; height: 5px; border-radius: 50%; background: var(--teal-400); opacity: 0.6; }

/* Metrics */
.aomics-metrics { padding: 80px 0; background: var(--bg-deep); }
.metrics-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
@media (min-width: 768px) { .metrics-grid { grid-template-columns: repeat(4, 1fr); } }

.metric-card { background: var(--bg-surface); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); padding: 28px 24px; text-align: center; transition: all var(--transition-base); position: relative; overflow: hidden; }
.metric-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, var(--cyan-500), var(--teal-500)); opacity: 0; transition: opacity var(--transition-base); }
.metric-card:hover::before { opacity: 1; }
.metric-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-glow), var(--shadow-card); border-color: var(--border-glow); }
.metric-value { display: block; font-size: clamp(1.8rem, 3vw, 2.4rem); font-weight: 800; background: linear-gradient(135deg, var(--cyan-400), var(--teal-400)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 8px; font-variant-numeric: tabular-nums; }
.metric-label { font-size: 13px; color: var(--text-muted); font-weight: 500; }

/* Section Heading */
.aomics-section-heading { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 48px; opacity: 0; transform: translateY(24px); transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1); }
.aomics-section-heading.reveal { opacity: 1; transform: translateY(0); }
.aomics-section-heading h2 { font-size: clamp(1.6rem, 3.5vw, 2.4rem); font-weight: 800; line-height: 1.15; letter-spacing: -0.02em; margin: 12px 0 16px; max-width: 600px; }
.aomics-section-heading p { color: var(--text-secondary); font-size: 16px; max-width: 560px; line-height: 1.65; }
.section-number { font-family: 'SF Mono', monospace; font-size: 13px; color: var(--text-muted); font-weight: 600; letter-spacing: 0.04em; }
.aomics-kicker { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--cyan-400); }
.aomics-kicker::before { content: ''; width: 24px; height: 1px; background: var(--cyan-500); }

/* Capabilities */
.aomics-capabilities { padding: 100px 0; background: var(--bg-base); }
.aomics-capability-layout { display: grid; grid-template-columns: 1fr; gap: 32px; opacity: 0; transform: translateY(24px); transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0.15s; }
.aomics-capability-layout.reveal { opacity: 1; transform: translateY(0); }
@media (min-width: 1024px) { .aomics-capability-layout { grid-template-columns: 1fr 1.2fr; gap: 48px; } }

.aomics-capability-list { display: flex; flex-direction: column; gap: 8px; }
.aomics-capability-row { display: flex; align-items: center; gap: 16px; width: 100%; padding: 20px 24px; background: var(--bg-surface); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); color: var(--text-primary); text-align: left; cursor: pointer; transition: all var(--transition-base); position: relative; overflow: hidden; }
.aomics-capability-row::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: linear-gradient(to bottom, var(--cyan-500), var(--teal-500)); opacity: 0; transition: opacity var(--transition-fast); }
.aomics-capability-row:hover, .aomics-capability-row.is-open { background: var(--bg-elevated); border-color: rgba(124, 0, 0, 0.2); }
.aomics-capability-row.is-open::before { opacity: 1; }
.aomics-capability-number { font-family: 'SF Mono', monospace; font-size: 13px; font-weight: 700; color: var(--text-muted); min-width: 28px; }
.aomics-capability-row span strong { display: block; font-size: 15px; font-weight: 700; margin-bottom: 2px; }
.aomics-capability-row span small { font-size: 13px; color: var(--text-muted); }
.aomics-capability-row b { margin-left: auto; font-size: 20px; font-weight: 300; color: var(--cyan-400); min-width: 20px; text-align: right; }

.aomics-capability-detail { background: var(--bg-surface); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); padding: 32px; position: relative; overflow: hidden; }
.aomics-capability-detail::after { content: ''; position: absolute; top: -100px; right: -100px; width: 300px; height: 300px; background: radial-gradient(circle, rgba(124, 0, 0, 0.06), transparent 70%); pointer-events: none; }
.aomics-detail-label { font-family: 'SF Mono', monospace; font-size: 11px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 12px; }
.aomics-capability-detail h3 { font-size: 24px; font-weight: 800; margin-bottom: 16px; }
.aomics-capability-detail > p { color: var(--text-secondary); font-size: 15px; line-height: 1.7; margin-bottom: 24px; }

.aomics-bars { display: flex; align-items: flex-end; gap: 8px; height: 80px; margin-bottom: 24px; }
.aomics-bars span { flex: 1; border-radius: 4px 4px 0 0; transition: height 0.8s cubic-bezier(0.4, 0, 0.2, 1); background: linear-gradient(to top, var(--cyan-600), var(--cyan-400)); opacity: 0.8; }
.aomics-bars span:nth-child(3n) { background: linear-gradient(to top, var(--teal-600), var(--teal-400)); }
.aomics-bars span:nth-child(3n+2) { background: linear-gradient(to top, var(--violet-600), var(--violet-400)); }

.aomics-tag-list { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.aomics-tag-list span { padding: 6px 14px; background: rgba(124, 0, 0, 0.08); border: 1px solid rgba(124, 0, 0, 0.15); border-radius: 100px; font-size: 12px; font-weight: 600; color: var(--cyan-400); }
.aomics-detail-note { font-size: 12px !important; color: var(--text-muted) !important; font-style: italic; }

/* Operating Model */
.aomics-operating-model { padding: 100px 0; background: radial-gradient(ellipse at 30% 50%, rgba(139, 92, 246, 0.04) 0%, transparent 60%), var(--bg-deep); }
.aomics-stage-line { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 16px; margin-bottom: 32px; opacity: 0; transform: translateY(24px); transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0.15s; }
.aomics-stage-line.reveal { opacity: 1; transform: translateY(0); }
.aomics-stage-line button { flex: 1; min-width: 140px; padding: 20px 16px; background: var(--bg-surface); border: 1px solid var(--border-subtle); border-radius: var(--radius-md); color: var(--text-secondary); text-align: left; cursor: pointer; transition: all var(--transition-base); position: relative; }
.aomics-stage-line button:hover { background: var(--bg-elevated); border-color: rgba(124, 0, 0, 0.2); }
.aomics-stage-line button.is-selected { background: linear-gradient(135deg, rgba(124, 0, 0, 0.12), rgba(124, 0, 0, 0.08)); border-color: var(--border-glow); box-shadow: 0 0 20px rgba(124, 0, 0, 0.1); }
.aomics-stage-line button i { display: block; font-family: 'SF Mono', monospace; font-size: 11px; font-weight: 700; color: var(--text-muted); margin-bottom: 8px; }
.aomics-stage-line button strong { display: block; font-size: 15px; font-weight: 700; color: var(--text-primary); margin-bottom: 4px; }
.aomics-stage-line button small { font-size: 12px; color: var(--text-muted); }

.aomics-stage-detail { display: grid; grid-template-columns: 1fr; gap: 24px; background: var(--bg-surface); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); padding: 32px; opacity: 0; transform: translateY(24px); transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0.3s; }
.aomics-stage-detail.reveal { opacity: 1; transform: translateY(0); }
@media (min-width: 768px) { .aomics-stage-detail { grid-template-columns: 2fr 1fr; } }

.aomics-stage-detail h3 { font-size: 22px; font-weight: 800; margin: 12px 0 16px; }
.aomics-stage-detail p { color: var(--text-secondary); font-size: 15px; line-height: 1.7; }
.aomics-stage-status { background: rgba(124, 0, 0, 0.06); border: 1px solid rgba(124, 0, 0, 0.15); border-radius: var(--radius-md); padding: 24px; text-align: center; align-self: start; }
.aomics-stage-status span { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: 0.1em; color: var(--text-muted); margin-bottom: 8px; }
.aomics-stage-status strong { display: block; font-size: 20px; font-weight: 800; color: var(--teal-400); margin-bottom: 4px; }
.aomics-stage-status small { font-size: 12px; color: var(--text-muted); }

/* Trust Band */
.aomics-trust-band { padding: 100px 0; background: var(--bg-base); }
.aomics-trust-grid { display: grid; grid-template-columns: 1fr; gap: 24px; opacity: 0; transform: translateY(24px); transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0.15s; }
.aomics-trust-grid.reveal { opacity: 1; transform: translateY(0); }
@media (min-width: 768px) { .aomics-trust-grid { grid-template-columns: repeat(3, 1fr); } }

.trust-card { background: var(--bg-surface); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); padding: 36px 28px; position: relative; overflow: hidden; transition: all var(--transition-base); }
.trust-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-glow), var(--shadow-card); border-color: var(--border-glow); }
.trust-card-glow { position: absolute; top: -60px; right: -60px; width: 180px; height: 180px; background: radial-gradient(circle, rgba(124, 0, 0, 0.1), transparent 70%); pointer-events: none; transition: opacity var(--transition-base); opacity: 0; }
.trust-card:hover .trust-card-glow { opacity: 1; }
.trust-card strong { display: block; font-family: 'SF Mono', monospace; font-size: 13px; font-weight: 700; color: var(--cyan-400); margin-bottom: 16px; }
.trust-card h3 { font-size: 20px; font-weight: 800; margin-bottom: 12px; }
.trust-card p { color: var(--text-secondary); font-size: 14px; line-height: 1.7; }

/* Contact */
.aomics-home-contact { padding: 100px 0; background: radial-gradient(ellipse at 70% 50%, rgba(124, 0, 0, 0.05) 0%, transparent 60%), var(--bg-deep); }
.contact-content { display: grid; grid-template-columns: 1fr; gap: 32px; align-items: center; opacity: 0; transform: translateY(24px); transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1); }
.contact-content.reveal { opacity: 1; transform: translateY(0); }
@media (min-width: 768px) { .contact-content { grid-template-columns: 1.2fr 1fr; } }

.aomics-home-contact h2 { font-size: clamp(1.6rem, 3.5vw, 2.4rem); font-weight: 800; line-height: 1.15; margin: 12px 0 16px; }
.aomics-home-contact p { color: var(--text-secondary); font-size: 16px; max-width: 480px; line-height: 1.7; }
.aomics-home-contact-actions { display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
.aomics-home-contact-actions a:not(.btn) { color: var(--cyan-400); text-decoration: none; font-weight: 600; font-size: 15px; transition: color var(--transition-fast); }
.aomics-home-contact-actions a:not(.btn):hover { color: var(--teal-400); }
.aomics-home-contact-actions small { font-size: 13px; color: var(--text-muted); }

/* Footer */
.site-footer { background: var(--bg-surface); border-top: 1px solid var(--border-subtle); padding: 64px 0 0; }
.footer-grid { max-width: 1280px; margin: 0 auto; padding: 0 24px; display: grid; grid-template-columns: 1fr; gap: 40px; }
@media (min-width: 768px) { .footer-grid { grid-template-columns: 1.5fr repeat(4, 1fr); } }
@media (min-width: 1024px) { .footer-grid { padding: 0 40px; } }

.footer-brand img { height: 40px; margin-bottom: 16px; filter: brightness(1.2); }
.footer-brand p { color: var(--text-muted); font-size: 14px; max-width: 280px; margin-bottom: 20px; }
.footer-social { display: flex; gap: 12px; }
.footer-social a { width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; background: var(--bg-elevated); border: 1px solid var(--border-subtle); border-radius: 50%; color: var(--text-secondary); text-decoration: none; font-weight: 700; font-size: 14px; transition: all var(--transition-fast); }
.footer-social a:hover { background: var(--cyan-500); color: var(--text-inverse); border-color: var(--cyan-500); }

.footer-col h4 { font-size: 13px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-primary); margin-bottom: 20px; }
.footer-col ul { list-style: none; }
.footer-col ul li { margin-bottom: 10px; }
.footer-col ul li a { color: var(--text-muted); text-decoration: none; font-size: 14px; transition: color var(--transition-fast); }
.footer-col ul li a:hover { color: var(--cyan-400); }

.footer-bottom { margin-top: 48px; padding: 24px; border-top: 1px solid var(--border-subtle); text-align: center; }
.footer-bottom p { color: var(--text-muted); font-size: 13px; }

/* Breadcrumb */
.breadcrumb-bar { background: var(--bg-surface); border-bottom: 1px solid var(--border-subtle); padding: 16px 0; }
.breadcrumb-bar .wrap { display: flex; align-items: center; gap: 8px; font-size: 13px; }
.breadcrumb-bar a { color: var(--text-muted); text-decoration: none; transition: color var(--transition-fast); }
.breadcrumb-bar a:hover { color: var(--cyan-400); }
.breadcrumb-bar span { color: var(--text-secondary); }
.bc-sep { color: var(--text-muted); margin: 0 4px; }

/* Blog Grid */
.blog-grid { display: grid; grid-template-columns: 1fr; gap: 28px; opacity: 0; transform: translateY(24px); transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1); }
.blog-grid.reveal { opacity: 1; transform: translateY(0); }
@media (min-width: 768px) { .blog-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .blog-grid { grid-template-columns: repeat(3, 1fr); } }

.blog-card { background: var(--bg-surface); border: 1px solid var(--border-subtle); border-radius: var(--radius-lg); overflow: hidden; transition: all var(--transition-base); }
.blog-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-card); border-color: rgba(124, 0, 0, 0.15); }
.blog-card-img { display: block; aspect-ratio: 16/10; overflow: hidden; background: var(--bg-elevated); }
.blog-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--transition-slow); }
.blog-card:hover .blog-card-img img { transform: scale(1.05); }
.img-placeholder { width: 100%; height: 100%; background: linear-gradient(135deg, var(--bg-elevated), var(--bg-surface)); }
.blog-card-body { padding: 24px; }
.blog-meta { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--text-muted); margin-bottom: 12px; }
.blog-meta .dot { color: var(--text-muted); }
.blog-card-title { margin-bottom: 10px; }
.blog-card-title a { color: var(--text-primary); text-decoration: none; font-size: 18px; font-weight: 700; line-height: 1.3; transition: color var(--transition-fast); }
.blog-card-title a:hover { color: var(--cyan-400); }
.blog-excerpt { color: var(--text-secondary); font-size: 14px; line-height: 1.6; margin-bottom: 16px; }
.text-link { color: var(--cyan-400); text-decoration: none; font-weight: 600; font-size: 14px; transition: color var(--transition-fast); }
.text-link:hover { color: var(--teal-400); }

/* Single Post */
.single-post { padding: 40px 0; }
.post-hero { margin-bottom: 40px; }
.post-title { font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 800; line-height: 1.15; margin: 20px 0 24px; }
.post-hero-img { width: 100%; max-height: 400px; object-fit: cover; border-radius: var(--radius-lg); border: 1px solid var(--border-subtle); }
.post-body { color: var(--text-secondary); font-size: 16px; line-height: 1.8; }
.post-body h2, .post-body h3 { color: var(--text-primary); margin: 32px 0 16px; }
.post-body p { margin-bottom: 16px; }
.post-body a { color: var(--cyan-400); }

/* Page Hero */
.page-hero { padding: 120px 0 60px; background: radial-gradient(ellipse at 50% 0%, rgba(124, 0, 0, 0.05) 0%, transparent 60%), var(--bg-base); text-align: center; }
.page-hero h1 { font-size: clamp(2rem, 5vw, 3.2rem); font-weight: 800; }

/* Error */
.error-hero { padding: 160px 0 80px; text-align: center; background: var(--bg-base); }
.error-code { font-family: 'SF Mono', monospace; font-size: 80px; font-weight: 800; background: linear-gradient(135deg, var(--cyan-400), var(--violet-400)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; line-height: 1; margin-bottom: 16px; }
.error-hero h1 { font-size: 28px; font-weight: 800; margin-bottom: 12px; }
.error-text { color: var(--text-muted); margin-bottom: 32px; }
.el-btn.primary { display: inline-block; padding: 14px 28px; background: linear-gradient(135deg, var(--cyan-500), var(--teal-500)); color: var(--text-inverse); text-decoration: none; font-weight: 700; border-radius: var(--radius-md); }

/* Loading */
.react-loading { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100vh; gap: 20px; color: var(--text-muted); font-size: 15px; background: var(--bg-deep); }
.loader-pulse { width: 40px; height: 40px; border-radius: 50%; background: linear-gradient(135deg, var(--cyan-500), var(--teal-500)); animation: loader-breathe 1.5s ease-in-out infinite; }
@keyframes loader-breathe { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.2); opacity: 0.5; } }
.react-error { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100vh; text-align: center; padding: 40px; background: var(--bg-deep); }
.react-error h1 { font-size: 24px; font-weight: 800; margin-bottom: 12px; color: #ef4444; }
.react-error p { color: var(--text-muted); }

/* Page Content */
.page-content { padding: 60px 0; background: var(--bg-base); min-height: 50vh; }
.page-content h1, .page-content h2, .page-content h3 { color: var(--text-primary); }
.page-content p { color: var(--text-secondary); line-height: 1.7; }
.page-content a { color: var(--cyan-400); }

/* Legacy service content is retained for continuity, but the imported flat
   WordPress stream is rebuilt as the aligned card grid used by the new shell. */
.legacy-budget-solutions { width: min(1180px, calc(100% - 48px)); margin: 0 auto 72px; padding: 76px 0 24px; }
.legacy-budget-solutions > h1 { max-width: 820px; margin: 0 auto 38px; color: var(--text-primary); font-size: clamp(1.75rem, 3.4vw, 2.75rem); line-height: 1.08; letter-spacing: -.04em; text-align: center; }
.legacy-budget-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.legacy-budget-card { display: flex; min-width: 0; min-height: 520px; flex-direction: column; overflow: hidden; border: 1px solid var(--border-subtle); border-radius: 20px; background: var(--bg-surface); box-shadow: 0 14px 34px rgba(60, 20, 20, .09); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.legacy-budget-card:hover { transform: translateY(-5px); border-color: rgba(124, 0, 0, .32); box-shadow: 0 20px 42px rgba(60, 20, 20, .14); }
.legacy-budget-card h3 { margin: 28px 28px 12px; color: var(--text-primary); font-size: 1.15rem; line-height: 1.2; }
.legacy-budget-card p { margin: 0 28px 14px; color: var(--text-secondary); font-size: .92rem; line-height: 1.65; }
.legacy-budget-card p:last-of-type { margin-top: auto; margin-bottom: 22px; }
.legacy-budget-card p:last-of-type a { display: inline-flex; align-items: center; gap: 6px; color: var(--cyan-600); font-weight: 800; text-decoration: none; }
.legacy-budget-card p:last-of-type a:hover { color: var(--teal-500); }
.legacy-budget-card > a:last-child, .legacy-budget-card > img:last-child { display: block; margin-top: 0; }
.legacy-budget-card img { display: block; width: 100%; height: 250px; object-fit: cover; object-position: center; }
.legacy-budget-card > a:last-child img { height: 250px; }

@media (max-width: 900px) { .legacy-budget-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .legacy-budget-solutions { width: min(100% - 32px, 520px); padding-top: 54px; }.legacy-budget-grid { grid-template-columns: 1fr; gap: 18px; }.legacy-budget-card { min-height: 0; }.legacy-budget-card img, .legacy-budget-card > a:last-child img { height: 220px; } }

/* Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bg-deep); }
::-webkit-scrollbar-thumb { background: var(--bg-elevated); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--text-muted); }

/* Selection */
::selection { background: rgba(124, 0, 0, 0.3); color: var(--text-primary); }

/* ═══════════════════════════════════════════════════════════════
   Light clinical system — green gradient surface and evidence-led UI
   ═══════════════════════════════════════════════════════════════ */
:root {
  --bg-deep: #faf6f5;
  --bg-base: #fbf7f6;
  --bg-surface: #ffffff;
  --bg-elevated: #f4ebeb;
  --bg-glass: rgba(255, 255, 255, 0.82);
  --cyan-400: #520000;
  --cyan-500: #520000;
  --cyan-600: #520000;
  --teal-400: #a34c4c;
  --teal-500: #963232;
  --violet-400: #5870a3;
  --violet-500: #435b91;
  --text-primary: #102c2a;
  --text-secondary: #486866;
  --text-muted: #718b87;
  --text-inverse: #ffffff;
  --border-subtle: rgba(124, 0, 0, 0.14);
  --border-glow: rgba(124, 0, 0, 0.35);
  --shadow-glow: 0 18px 50px rgba(25, 121, 97, 0.13);
  --shadow-card: 0 12px 30px rgba(26, 76, 65, 0.1);
}
body { background: var(--bg-base); color: var(--text-primary); }
.site-header { background: rgba(250, 248, 248, 0.78); }
.site-header.scrolled { background: rgba(250, 248, 248, 0.92); border-bottom-color: var(--border-subtle); }
.brand { color: var(--text-primary); }
.brand img { filter: none; }
.nav-toggle span { background: var(--text-primary); }
.main-nav { background: var(--bg-surface); border-left-color: var(--border-subtle); }
@media (min-width: 1024px) { .main-nav { background: transparent; border-left: none; } .sub-menu { background: var(--bg-surface); border-color: var(--border-subtle); } }
.main-nav ul li a { color: var(--text-secondary); }
.main-nav ul li a:hover, .breadcrumb-bar a:hover, .aomics-hero-secondary:hover { color: var(--cyan-500); }
.header-cta, .btn { color: #fff; background: linear-gradient(135deg, #520000, #a34c4c); }
.aomics-hero { background: radial-gradient(ellipse at 8% 12%, rgba(108, 211, 171, 0.28), transparent 46%), radial-gradient(ellipse at 88% 60%, rgba(124, 0, 0, 0.16), transparent 48%), var(--bg-base); }
.hero-gradient-bottom { background: linear-gradient(to top, var(--bg-base), transparent); }
.aomics-hero-copy h1 { color: var(--text-primary); }
.aomics-hero-lead, .aomics-section-heading p, .aomics-home-contact p { color: var(--text-secondary); }
.aomics-hero-trust span, .aomics-tag-list span { background: rgba(124, 0, 0, 0.09); border-color: rgba(124, 0, 0, 0.22); color: var(--cyan-600); }
.aomics-hero-visual { background: rgba(255,255,255,.72); border-color: rgba(18, 104, 89, .16); box-shadow: 0 24px 60px rgba(33, 102, 83, .16); }
.hero-window-bar { background: rgba(13, 82, 69, .96); color: #c6ebe0; }
.hero-window-body { color: var(--text-primary); }
.hero-signal-card { background: rgba(226, 245, 238, .78); border-color: var(--border-subtle); }
.hero-workspace-tile { background: rgba(235, 248, 243, .85); border-color: var(--border-subtle); }
.hero-workspace-tile:hover { background: #d9f0e5; border-color: rgba(124, 0, 0, .3); }
.hero-workspace-tile strong { color: var(--text-primary); }
.data-stream { background: #f4ebeb; border-color: var(--border-subtle); }
.data-stream-item { color: var(--text-secondary); }
.aomics-metrics, .aomics-capabilities, .aomics-trust-band, .page-content { background: var(--bg-base); }
.metric-card, .aomics-capability-row, .aomics-capability-detail, .trust-card, .aomics-stage-detail { background: var(--bg-surface); border-color: var(--border-subtle); box-shadow: 0 6px 20px rgba(60, 20, 20, .05); }
.metric-label, .section-number, .aomics-detail-label { color: var(--text-muted); }
.metric-value { background: linear-gradient(135deg, var(--cyan-600), var(--teal-400)); -webkit-background-clip: text; background-clip: text; }
.aomics-capability-row:hover, .aomics-capability-row.is-open, .aomics-stage-line button:hover { background: var(--bg-elevated); }
.aomics-capability-row span small, .aomics-stage-line button small { color: var(--text-muted); }
.aomics-capability-row span strong, .aomics-stage-line button strong, .trust-card h3, .aomics-capability-detail h3, .aomics-stage-detail h3 { color: var(--text-primary); }
.aomics-operating-model { background: linear-gradient(135deg, #faf5f5, #fdf7f7 54%, #faf5f5); }
.aomics-stage-line button { background: rgba(255,255,255,.76); border-color: var(--border-subtle); }
.aomics-stage-line button.is-selected { background: linear-gradient(135deg, rgba(124, 0, 0,.16), rgba(124, 0, 0,.13)); border-color: var(--border-glow); }
.aomics-stage-line button i { color: var(--text-muted); }
.aomics-stage-status { background: rgba(124, 0, 0, .09); border-color: rgba(124, 0, 0,.2); }
.aomics-stage-status strong { color: var(--cyan-600); }
.trust-card strong, .aomics-kicker { color: var(--cyan-600); }
.aomics-home-contact { background: linear-gradient(135deg, #520000, #3a0000 58%, #1a0000); color: #fff; }
.aomics-home-contact p, .aomics-home-contact-actions small { color: rgba(255,255,255,.74); }
.aomics-home-contact-actions a:not(.btn) { color: #e4cccc; }
.site-footer { background: #103c3a; border-top-color: rgba(255,255,255,.12); }
.footer-brand p, .footer-col ul li a, .footer-bottom p { color: rgba(228, 248, 240, .7); }
.footer-col h4 { color: #fff; }
.footer-social a { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.18); color: #d8f5eb; }
.breadcrumb-bar { background: #f6efef; border-bottom-color: var(--border-subtle); }
.breadcrumb-bar span { color: var(--text-secondary); }
.page-hero { background: linear-gradient(135deg, #faf5f5, #ffffff); }
.react-loading, .react-error { background: var(--bg-base); color: var(--text-secondary); }

/* Service atlas */
.service-atlas { padding: 104px 0; background: linear-gradient(145deg, #faf5f5 0%, #fff 48%, #faf5f5 100%); }
.service-atlas-heading { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 38px; opacity: 0; transform: translateY(22px); transition: all .7s ease; }
.service-atlas-heading.reveal, .service-atlas-shell.reveal { opacity: 1; transform: translateY(0); }
.service-atlas-heading h2 { max-width: 620px; margin: 12px 0 14px; font-size: clamp(1.9rem, 4vw, 3rem); line-height: 1.08; letter-spacing: -.035em; color: var(--text-primary); }
.service-atlas-heading p { max-width: 620px; color: var(--text-secondary); font-size: 16px; line-height: 1.7; }
.service-atlas-link, .quote-back { border: 0; background: transparent; color: var(--cyan-600); font-weight: 700; cursor: pointer; white-space: nowrap; padding: 12px 0; }
.service-atlas-link span { margin-left: 8px; }
.service-atlas-shell { opacity: 0; transform: translateY(22px); transition: all .7s ease .12s; }
.service-atlas-tabs { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid rgba(18,104,89,.18); }
.service-atlas-tabs button { border: 0; border-top: 2px solid transparent; padding: 18px 20px; text-align: left; background: transparent; color: var(--text-secondary); font-size: 15px; font-weight: 700; cursor: pointer; }
.service-atlas-tabs button span { display: inline-block; margin-right: 16px; font: 700 11px 'SF Mono', monospace; color: var(--text-muted); }
.service-atlas-tabs button b { float: right; color: var(--text-muted); }
.service-atlas-tabs button.active { color: var(--text-primary); border-top-color: var(--cyan-500); background: rgba(255,255,255,.64); }
.service-atlas-tabs button.active span, .service-atlas-tabs button.active b { color: var(--cyan-600); }
.service-atlas-detail { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 46px; padding: 42px; border: 1px solid var(--border-subtle); border-top: 0; background: rgba(255,255,255,.82); box-shadow: 0 18px 50px rgba(60, 20, 20,.08); }
.service-atlas-index, .profile-label, .quote-step-hint { color: var(--cyan-600); font: 700 11px/1.4 'SF Mono', monospace; letter-spacing: .08em; text-transform: uppercase; }
.service-atlas-copy h3 { margin: 16px 0; font-size: clamp(1.65rem, 3vw, 2.5rem); line-height: 1.1; letter-spacing: -.03em; color: var(--text-primary); }
.service-atlas-copy > p:not(.service-atlas-index) { color: var(--text-secondary); line-height: 1.75; }
.service-atlas-copy ul { list-style: none; padding: 0; margin: 24px 0 28px; display: grid; gap: 12px; }
.service-atlas-copy li { color: var(--text-primary); font-size: 14px; font-weight: 600; }
.service-atlas-copy li span { display: inline-grid; place-items: center; width: 22px; height: 22px; margin-right: 10px; border-radius: 50%; background: #f1e5e5; color: var(--cyan-600); font-size: 12px; }
.btn-outline { background: transparent; border: 1px solid rgba(124, 0, 0,.45); color: var(--cyan-600); }
.btn-outline::before { display: none; }
.service-atlas-visual { min-height: 340px; position: relative; overflow: hidden; border-radius: 22px; background: linear-gradient(145deg, #f1e5e5, #f1e5e5); }
.service-atlas-visual img { width: 100%; height: 100%; min-height: 340px; object-fit: cover; display: block; mix-blend-mode: multiply; opacity: .82; }
.service-atlas-visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(241,252,247,.35), transparent 60%); pointer-events: none; }
.service-atlas-visual.is-panel { display: flex; align-items: center; padding: 22px; background: #fff; border: 1px solid rgba(124, 0, 0, .12); }
.service-atlas-visual.is-panel::after { display: none; }
.service-atlas-visual-label { position: absolute; left: 20px; bottom: 18px; z-index: 2; display: flex; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 9px; background: rgba(255,255,255,.82); color: var(--text-primary); font-size: 11px; font-weight: 700; box-shadow: 0 8px 20px rgba(60, 20, 20,.12); }
.service-atlas-orbit { position: absolute; border: 1px solid rgba(124, 0, 0,.4); border-radius: 50%; pointer-events: none; z-index: 1; }
.orbit-one { width: 220px; height: 220px; right: -40px; top: 34px; }.orbit-two { width: 330px; height: 330px; right: -95px; top: -20px; border-color: rgba(88,112,163,.25); }

/* About people and profile experience */
.about-experience { background: var(--bg-base); }
.about-intro { padding: 112px 0 92px; background: linear-gradient(145deg, #f4ebeb, #fdf7f7 64%); opacity: 0; transform: translateY(22px); transition: all .7s ease; }
.about-intro.reveal { opacity: 1; transform: translateY(0); }
.about-intro-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 72px; align-items: end; }
.about-intro h1 { max-width: 760px; margin-top: 18px; font-size: clamp(2.5rem, 6vw, 5.1rem); line-height: .98; letter-spacing: -.055em; color: var(--text-primary); }
.about-intro-grid > p { margin: 0 0 6px; max-width: 480px; color: var(--text-secondary); font-size: 17px; line-height: 1.8; }
.about-signal-band { padding: 82px 0; background: #f4ebeb; }
.about-signal-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; align-items: center; }
.about-signal-grid h2 { margin: 14px 0 16px; max-width: 520px; font-size: clamp(1.9rem, 4vw, 3.2rem); line-height: 1.05; letter-spacing: -.04em; }
.about-signal-grid p { max-width: 510px; color: var(--text-secondary); line-height: 1.8; }
.about-signal-number { font: 800 12px 'SF Mono', monospace; color: var(--cyan-600); }
.about-signal-grid img { width: 100%; max-height: 370px; object-fit: cover; border-radius: 24px; mix-blend-mode: multiply; opacity: .78; }
.about-people { padding: 110px 0; }
.about-advisory { background: linear-gradient(145deg, #fbf7f6, #f6efef); }
.about-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 44px; }
.about-section-heading h2 { margin: 14px 0; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.04; letter-spacing: -.045em; }
.about-section-heading p:not(.aomics-kicker) { max-width: 600px; color: var(--text-secondary); line-height: 1.7; }
.about-section-heading > span { color: var(--text-muted); font: 700 12px 'SF Mono', monospace; }
.profile-rail { display: grid; grid-template-columns: .75fr 1.25fr; gap: 26px; }
.profile-rail-list { display: flex; flex-direction: column; gap: 8px; }
.profile-rail-list button { display: grid; grid-template-columns: 34px 1fr 22px; gap: 6px 12px; align-items: center; border: 1px solid transparent; border-radius: 12px; background: transparent; color: var(--text-secondary); cursor: pointer; padding: 18px; text-align: left; }
.profile-rail-list button span { grid-row: span 2; color: var(--text-muted); font: 700 11px 'SF Mono', monospace; }
.profile-rail-list button strong { color: var(--text-primary); font-size: 15px; }.profile-rail-list button small { color: var(--text-muted); font-size: 12px; }.profile-rail-list button b { grid-column: 3; grid-row: 1 / span 2; color: var(--text-muted); }
.profile-rail-list button:hover, .profile-rail-list button.active { border-color: rgba(124, 0, 0,.24); background: #fff; box-shadow: 0 8px 22px rgba(60, 20, 20, .07); }.profile-rail-list button.active span, .profile-rail-list button.active b { color: var(--cyan-600); }
.profile-feature { display: grid; grid-template-columns: .85fr 1.15fr; min-height: 340px; background: #fff; border: 1px solid var(--border-subtle); border-radius: 20px; overflow: hidden; box-shadow: 0 16px 40px rgba(60, 20, 20, .1); }
.profile-photo-wrap { min-height: 340px; position: relative; background: linear-gradient(145deg, #f1e5e5, #f1e5e5); }.profile-photo-wrap img { width: 100%; height: 100%; object-fit: cover; display: block; }.profile-index { position: absolute; top: 16px; left: 16px; padding: 7px 10px; border-radius: 7px; background: rgba(255,255,255,.82); color: var(--cyan-600); font: 700 11px 'SF Mono', monospace; }
.profile-feature-copy { padding: 38px 38px 32px; }.profile-feature-copy h3 { margin: 18px 0 6px; font-size: clamp(1.55rem, 3vw, 2.25rem); line-height: 1.1; letter-spacing: -.035em; }.profile-role { color: var(--cyan-600) !important; font-weight: 700; margin-bottom: 22px; }.profile-feature-copy > p:not(.profile-label):not(.profile-role) { color: var(--text-secondary); line-height: 1.75; }.profile-focus { margin-top: 28px; padding-top: 17px; border-top: 1px solid var(--border-subtle); display: flex; flex-direction: column; gap: 6px; }.profile-focus span { color: var(--text-muted); font: 700 10px 'SF Mono', monospace; text-transform: uppercase; letter-spacing: .1em; }.profile-focus strong { color: var(--text-primary); font-size: 13px; }
.about-cta { padding: 84px 0; background: linear-gradient(135deg, #520000, #3a0000); color: #fff; }.about-cta .wrap { display: flex; align-items: center; justify-content: space-between; gap: 40px; }.about-cta h2 { margin: 14px 0; max-width: 670px; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.03; letter-spacing: -.04em; }.about-cta p:not(.aomics-kicker) { max-width: 560px; color: rgba(255,255,255,.76); line-height: 1.7; }.about-cta .aomics-kicker { color: #e4cccc; }

/* Request quote workflow */
.quote-page { padding: 124px 0 92px; background: linear-gradient(145deg, #faf5f5, #fdf7f7 54%, #faf5f5); min-height: calc(100vh - 72px); }
.quote-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 80px; align-items: start; }.quote-brief { padding-top: 24px; }.quote-brief h1 { margin: 16px 0 22px; max-width: 580px; font-size: clamp(2.45rem, 5vw, 4.5rem); line-height: .99; letter-spacing: -.055em; }.quote-brief > p { max-width: 500px; color: var(--text-secondary); font-size: 17px; line-height: 1.8; }.quote-brief-list { display: grid; gap: 14px; margin: 34px 0; }.quote-brief-list span { display: flex; align-items: center; gap: 14px; color: var(--text-primary); font-weight: 700; }.quote-brief-list b { color: var(--cyan-600); font: 700 11px 'SF Mono', monospace; }.quote-form { background: #fff; border: 1px solid var(--border-subtle); border-radius: 20px; padding: 32px; box-shadow: 0 20px 55px rgba(60, 20, 20,.11); }.quote-progress { display: flex; border-bottom: 1px solid var(--border-subtle); margin-bottom: 28px; }.quote-progress button { flex: 1; padding: 0 8px 18px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--text-muted); font: 700 12px 'SF Mono', monospace; cursor: pointer; }.quote-progress button span { display: grid; place-items: center; width: 25px; height: 25px; margin: 0 auto 8px; border: 1px solid var(--border-subtle); border-radius: 50%; font-size: 10px; }.quote-progress button.active { color: var(--cyan-600); border-bottom-color: var(--cyan-500); }.quote-progress button.active span, .quote-progress button.complete span { background: #f1e5e5; border-color: #e4cccc; color: var(--cyan-600); }.quote-form-heading h2 { margin: 10px 0 28px; font-size: clamp(1.45rem, 3vw, 2.05rem); line-height: 1.12; letter-spacing: -.03em; }.quote-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }.quote-fields label { color: var(--text-primary); font-size: 12px; font-weight: 700; }.quote-fields input:not([type="checkbox"]), .quote-fields select, .quote-fields textarea { width: 100%; display: block; margin-top: 8px; border: 1px solid rgba(124, 0, 0,.19); border-radius: 9px; background: #faf5f5; color: var(--text-primary); padding: 12px 13px; font: 500 14px/1.4 inherit; }.quote-fields textarea { resize: vertical; }.quote-fields input:focus, .quote-fields select:focus, .quote-fields textarea:focus { outline: 3px solid rgba(124, 0, 0,.16); border-color: var(--cyan-500); }.quote-fields .full { grid-column: 1 / -1; }.domain-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.domain-grid button { min-height: 68px; display: flex; gap: 10px; align-items: center; border: 1px solid var(--border-subtle); border-radius: 10px; background: #faf5f5; color: var(--text-primary); padding: 12px; text-align: left; font-size: 13px; font-weight: 700; cursor: pointer; }.domain-grid button span { display: grid; place-items: center; width: 22px; height: 22px; border: 1px solid rgba(124, 0, 0,.32); border-radius: 6px; color: var(--cyan-600); }.domain-grid button.selected { background: #f1e5e5; border-color: rgba(124, 0, 0,.48); }.quote-consent { display: flex; align-items: flex-start; gap: 9px; line-height: 1.5; font-weight: 500 !important; }.quote-consent input { accent-color: var(--cyan-500); margin-top: 2px; }.quote-form-actions { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--border-subtle); }.btn-quiet { background: transparent; color: var(--text-secondary); border: 1px solid var(--border-subtle); }.quote-success { max-width: 760px; padding: 90px 0; text-align: center; }.quote-success-mark { display: grid; place-items: center; width: 64px; height: 64px; margin: 0 auto 24px; border-radius: 50%; background: #f1e5e5; color: var(--cyan-600); font-size: 30px; font-weight: 800; }.quote-success h1 { margin: 16px 0; font-size: clamp(2.4rem, 5vw, 4.6rem); line-height: 1; letter-spacing: -.05em; }.quote-success > p:not(.aomics-kicker) { max-width: 570px; margin: 0 auto 30px; color: var(--text-secondary); font-size: 17px; line-height: 1.7; }

@media (max-width: 900px) { .service-atlas-heading, .about-cta .wrap { align-items: flex-start; flex-direction: column; }.service-atlas-detail, .quote-layout { grid-template-columns: 1fr; gap: 32px; }.about-intro-grid, .about-signal-grid { grid-template-columns: 1fr; gap: 28px; }.profile-rail { grid-template-columns: 1fr; }.profile-feature { grid-template-columns: .8fr 1.2fr; } }
@media (max-width: 640px) { .service-atlas { padding: 76px 0; }.service-atlas-tabs { display: flex; overflow-x: auto; }.service-atlas-tabs button { min-width: 170px; }.service-atlas-detail { padding: 24px; }.service-atlas-visual, .service-atlas-visual img { min-height: 250px; }.about-intro { padding: 90px 0 68px; }.about-people { padding: 74px 0; }.profile-feature { grid-template-columns: 1fr; }.profile-photo-wrap { min-height: 280px; max-height: 330px; }.profile-feature-copy { padding: 26px; }.quote-page { padding-top: 96px; }.quote-form { padding: 22px; }.quote-fields, .domain-grid { grid-template-columns: 1fr; }.quote-fields .full { grid-column: auto; }.quote-progress button { font-size: 10px; }.about-section-heading { align-items: flex-start; flex-direction: column; } }

/* Aomics brand header — burgundy, bone and teal */
:root {
  --aomics-burgundy: #7c0000;
  --aomics-burgundy-deep: #520000;
  --aomics-bone: #f6f0e5;
  --aomics-teal: #520000;
  --aomics-teal-soft: #d7b2b2;
}
.site-header {
  background: rgba(246, 240, 229, .94);
  border-bottom: 1px solid rgba(124, 0, 0, .14);
  box-shadow: 0 8px 28px rgba(54, 18, 12, .08);
  backdrop-filter: blur(18px);
}
.header-inner { height: 108px; transition: height .35s ease; }
.site-header.scrolled {
  background: linear-gradient(112deg, var(--aomics-burgundy-deep), var(--aomics-burgundy) 55%, #520000);
  border-bottom-color: rgba(255, 255, 255, .2);
  box-shadow: 0 12px 34px rgba(82, 0, 0, .25);
}
.site-header.scrolled .header-inner { height: 72px; }
/* Homepage: the header floats OVER the full-screen hero video instead of taking
   layout space, so the video fills the viewport behind it. It's transparent until
   the user scrolls, when the solid burgundy .scrolled header takes over. Nav text +
   the dark logo stay readable over the hero's white overlay. */
.site-header.is-home { position: fixed; }
/* !important + the extra .is-home class are needed to beat the later
   `.site-header:not(.scrolled){ background: … !important }` surface rule. */
.site-header.is-home:not(.scrolled) {
  background: transparent !important;
  background-image: none !important;
  border-bottom-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.brand { flex: 0 0 auto; gap: 0; }
.brand-logo-frame { display: block; width: 220px; line-height: 0; }
.brand-logo { display: block; width: 100%; height: auto; max-height: 88px; object-fit: contain; object-position: left center; transition: opacity .25s ease, transform .35s ease; }
.brand-logo-white { display: none; }
.site-header.scrolled .brand-logo-dark { display: none; }
.site-header.scrolled .brand-logo-white { display: block; max-height: 58px; }
.site-header.scrolled .brand { color: #fff; }
.brand-text { color: var(--aomics-burgundy); }
.main-nav { gap: 26px; }
.main-nav > ul { gap: 18px; }
.main-nav > ul > li { position: relative; }
.main-nav ul li a { color: #543c37; font-size: 13px; font-weight: 700; letter-spacing: .01em; }
.main-nav ul li a:hover, .nav-sub-toggle:hover { color: var(--aomics-burgundy); }
.site-header.scrolled .main-nav ul li a, .site-header.scrolled .nav-sub-toggle { color: rgba(255, 255, 255, .9); }
.site-header.scrolled .main-nav ul li a:hover, .site-header.scrolled .nav-sub-toggle:hover { color: #fff; }
.nav-sub-toggle { color: #765f58; }
.sub-menu { border-color: rgba(124, 0, 0, .14); box-shadow: 0 18px 36px rgba(54, 18, 12, .14); }
.lang-switch { align-items: center; gap: 4px; margin-left: 2px; }
.lang-btn { padding: 5px 4px; border: 0; border-radius: 0; background: transparent; color: #765f58; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.lang-btn:hover { color: var(--aomics-burgundy); }
.lang-btn.active { color: var(--aomics-burgundy); background: transparent; border-bottom: 2px solid currentColor; }
.lang-divider { color: rgba(84, 60, 55, .42); font-size: 12px; }
.site-header.scrolled .lang-btn, .site-header.scrolled .lang-divider { color: rgba(255, 255, 255, .92); }
.site-header.scrolled .lang-btn.active { color: #fff; border-bottom-color: #fff; }
.header-cta { padding: 12px 18px; border-radius: 999px; border: 0; font: inherit; cursor: pointer; background: linear-gradient(125deg, var(--aomics-burgundy), #a32929 52%, var(--aomics-teal)); color: #fff; box-shadow: 0 10px 22px rgba(124, 0, 0, .18); }
.header-cta:hover { box-shadow: 0 14px 28px rgba(124, 0, 0, .28); transform: translateY(-2px); }
.header-cta span { margin-left: 4px; }
.site-header.scrolled .header-cta { background: linear-gradient(125deg, #fff, #e9d9c8); color: var(--aomics-burgundy); box-shadow: none; }

/* ── Full-width mega-menu ───────────────────────────────────────────
   Rendered once, portaled to <body> and fixed just below the header
   (see <MegaOverlay> in App.tsx), so nothing in the header's stacking
   or overflow context can clip or hide it. */
.header-cta-menu { position: relative; }
.mega-nav-item .nav-item-row { display: inline-flex; align-items: center; }

.mega-portal {
  position: fixed; left: 0; right: 0; z-index: 4000;
  padding: 8px 24px 28px;
  /* The full-width strip must not swallow clicks in its empty side bands —
     only the visible card is interactive. */
  pointer-events: none;
  animation: megaFade .16s ease both;
}
@keyframes megaFade { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: none; } }

.mega-card {
  position: relative;
  pointer-events: auto;
  max-width: 1280px; margin: 0 auto;
  display: grid; grid-template-columns: 250px 1fr; gap: 40px;
  background: #fff; border: 1px solid rgba(124, 0, 0, .12); border-radius: 22px;
  box-shadow: 0 40px 80px -24px rgba(54, 18, 12, .32);
  padding: 30px 36px;
}
/* Invisible bridge across the header→card gap so hover intent doesn't flicker. */
.mega-card::before { content: ''; position: absolute; left: 0; right: 0; top: -8px; height: 8px; }
.mega-lead-title { font-size: 20px; font-weight: 800; color: var(--aomics-burgundy); letter-spacing: -.01em; }
.mega-lead p { margin-top: 10px; font-size: 13px; line-height: 1.65; color: #6b5a5a; }
.mega-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px 22px; align-content: start; }
.mega-grid > a {
  display: flex; gap: 12px; align-items: flex-start;
  padding: 12px; border-radius: 14px; text-decoration: none;
  transition: background .14s ease;
}
.mega-grid > a:hover { background: #faf5f5; }
.mega-ico {
  flex: 0 0 auto; width: 34px; height: 34px; border-radius: 10px;
  display: grid; place-items: center; color: #fff;
  background: linear-gradient(135deg, var(--aomics-burgundy), #a32929);
}
.mega-txt b { display: block; font-size: 14px; font-weight: 700; color: #1a0000; }
.mega-txt small { display: block; margin-top: 3px; font-size: 12px; line-height: 1.5; color: #6b5a5a; }

@media (max-width: 1023px) {
  .mega-portal { padding: 8px 12px 16px; }
  .mega-card { grid-template-columns: 1fr; gap: 16px; padding: 22px; }
  .mega-grid { grid-template-columns: 1fr; }
}

/* ── Platforms super-mega-menu: one accent-coloured column per product,
     nested inside the same Aomics-burgundy mega-card shell. ── */
.mega-card-platforms { max-width: 1360px; }
.mega-platforms { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.mega-platform-col {
  --pc: #7c0000;
  display: flex; flex-direction: column; gap: 10px;
  border: 1px solid rgba(0, 0, 0, .08); border-top: 3px solid var(--pc);
  border-radius: 14px; padding: 18px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--pc) 7%, #fff), #fff 60%);
}
.mega-platform-head { display: flex; align-items: center; gap: 8px; }
.mega-platform-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--pc); flex: 0 0 auto; }
.mega-platform-head b { font-size: 15px; font-weight: 800; color: #1a0000; letter-spacing: -.005em; }
.mega-platform-desc { margin: 0; font-size: 12.5px; line-height: 1.55; color: #6b5a5a; }
.mega-platform-tiers {
  list-style: none; margin: 2px 0 0; padding-top: 10px;
  border-top: 1px dashed rgba(0, 0, 0, .1);
  display: grid; gap: 9px;
}
.mega-platform-tiers li { display: flex; gap: 8px; align-items: flex-start; font-size: 12.5px; line-height: 1.4; }
.mega-tier-dot { width: 7px; height: 7px; border-radius: 50%; margin-top: 4px; flex: 0 0 auto; }
.mega-platform-tiers b { display: block; font-weight: 700; color: #1a0000; }
.mega-platform-tiers small { display: block; margin-top: 1px; color: #6b5a5a; }
.mega-platform-cta {
  margin-top: auto; align-self: flex-start; padding-top: 6px;
  font-size: 12.5px; font-weight: 700; color: #1a0000; text-decoration: none;
}
.mega-platform-cta:hover { color: var(--pc); text-decoration: underline; }
@media (max-width: 1023px) {
  .mega-platforms { grid-template-columns: 1fr; }
}
.nav-toggle span { background: var(--aomics-burgundy); }
.site-header.scrolled .nav-toggle span { background: #fff; }

/* Keep the footer in the same brand family and make every link legible. */
.site-footer { background: linear-gradient(135deg, var(--aomics-burgundy-deep), var(--aomics-burgundy) 52%, #520000); border-top: 0; }
.footer-brand img { width: 208px; height: auto; max-height: none; margin-bottom: 18px; }
.footer-brand p, .footer-col ul li a, .footer-bottom p { color: rgba(246, 240, 229, .76); }
.footer-col h4 { color: var(--aomics-bone); }
.footer-col ul li a:hover { color: #fff; }
.footer-social a { background: rgba(246, 240, 229, .12); border-color: rgba(246, 240, 229, .24); color: var(--aomics-bone); }
.footer-social a:hover { background: var(--aomics-bone); border-color: var(--aomics-bone); color: var(--aomics-burgundy); }
.footer-bottom { border-top-color: rgba(246, 240, 229, .2); }

@media (min-width: 1024px) {
  .sub-menu { top: calc(100% + 10px); left: -16px; opacity: 0; pointer-events: none; transition: opacity .18s ease, transform .18s ease; transform: translateY(-6px); }
  /* Visibility is driven only by the single-open JS state (.sub-menu-open); no
     :hover / :focus-within reveal, so two panels can never show at once. */
  .sub-menu.sub-menu-open { opacity: 1; pointer-events: auto; transform: translateY(0); }
  .sub-menu li a { padding: 10px 16px !important; white-space: nowrap; }
}
@media (max-width: 1023px) {
  .header-inner { height: 88px; }
  .brand-logo-frame { width: 184px; }
  .site-header.scrolled .brand-logo-white { max-height: 50px; }
  .main-nav { background: var(--aomics-bone); border-left-color: rgba(124, 0, 0, .18); }
  .site-header.scrolled .main-nav { background: var(--aomics-burgundy-deep); }
  .main-nav ul li a { color: #543c37; }
  .site-header.scrolled .main-nav ul li a { color: rgba(255, 255, 255, .9); }
  .lang-switch { margin-top: auto; }
}

/* ── Investor Relations & legal pages (Adaptrials-style layout) ─────────── */
.biz-page { background: var(--bg-base); min-height: 60vh; }
.biz-hero {
  padding: 96px 0 64px;
  background: linear-gradient(145deg, #fefcf8, #f5eee4 54%, #f1e5e5);
  border-bottom: 1px solid var(--border-subtle);
}
.biz-hero .wrap { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.kicker-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(124, 0, 0, .22);
  background: rgba(124, 0, 0, .06);
  color: var(--aomics-burgundy);
  border-radius: 999px;
  padding: 7px 14px;
  font: 700 11px 'SF Mono', monospace;
  text-transform: uppercase;
  letter-spacing: .1em;
}
.kicker-pill svg { display: block; }
.biz-hero h1 {
  margin: 20px 0 16px;
  font-size: clamp(2.2rem, 5vw, 3.4rem);
  line-height: 1.02;
  letter-spacing: -.045em;
  color: var(--text-primary);
}
.biz-hero p:not(.kicker-pill):not(.biz-updated) {
  max-width: 760px;
  color: var(--text-secondary);
  font-size: 1.06rem;
  line-height: 1.7;
}
.biz-updated { margin-top: 14px; color: var(--text-muted); font-size: 12px; }

/* Service hero: copy + ported design graphic in the right-hand column */
.svc-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr);
  gap: 48px;
  align-items: center;
}
.svc-hero-copy { min-width: 0; }
.svc-hero-copy .biz-hero-lead,
.svc-hero-copy .biz-hero-sub { max-width: 560px; }
.svc-hero-aside { min-width: 0; }
.svc-figure {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 20px;
  border: 1px solid rgba(124, 0, 0, .16);
  background: #fff;
  box-shadow: 0 24px 56px rgba(124, 0, 0, .12);
}
.svc-figure-inner { transform-origin: top left; }
@media (max-width: 960px) {
  .svc-hero-grid { grid-template-columns: 1fr; gap: 32px; }
  .svc-hero-aside { max-width: 560px; }
}

.biz-body { max-width: 1080px; margin: 0 auto; padding: 64px 24px 96px; }
.biz-section { margin-bottom: 56px; }
.biz-section-heading,
.legal-prose section > h2 {
  font-size: clamp(1.5rem, 3vw, 2rem);
  letter-spacing: -.02em;
  color: var(--text-primary);
  margin: 0 0 22px;
}
.biz-section-lead { color: var(--text-secondary); line-height: 1.7; max-width: 720px; margin-bottom: 20px; }
.biz-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.biz-grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.biz-card {
  background: #fff;
  border: 1px solid var(--border-subtle);
  border-radius: 16px;
  padding: 26px;
  box-shadow: 0 12px 30px rgba(54, 18, 12, .06);
  transition: transform .25s ease, box-shadow .25s ease;
}
.biz-card:hover { transform: translateY(-3px); box-shadow: 0 16px 38px rgba(54, 18, 12, .12); }
.biz-card-icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(124, 0, 0, .08);
  color: var(--aomics-burgundy);
}
.biz-icon-emerald { background: rgba(124, 0, 0, .1); color: var(--aomics-teal); }
.biz-card h3 { font-size: 1.04rem; margin: 16px 0 8px; color: var(--text-primary); }
.biz-card p { color: var(--text-secondary); font-size: .92rem; line-height: 1.65; }
.biz-chip-icon { width: 20px; height: 20px; border-radius: 6px; }
.biz-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.biz-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--border-subtle);
  background: #fff;
  color: var(--aomics-burgundy);
  font-weight: 600;
  font-size: 13px;
  padding: 10px 16px;
  border-radius: 10px;
  text-decoration: none;
  transition: border-color .2s ease;
}
.biz-chip:hover { border-color: rgba(124, 0, 0, .4); }

/* Sub-navigation chips between the four Clinical Biometrics service pages */
.biz-subnav { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
.biz-chip.is-active {
  background: var(--aomics-burgundy);
  border-color: var(--aomics-burgundy);
  color: #fff;
}

/* Service page hero – headline + intro scale */
.biz-hero-lead {
  display: block;
  max-width: 820px;
  margin: 0 0 10px;
  color: var(--text-primary) !important;
  font-size: 1.3rem !important;
  font-weight: 600;
  line-height: 1.45 !important;
}
.biz-hero-sub {
  display: block;
  max-width: 800px;
  margin: 0;
  color: var(--text-secondary) !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
}

/* Capability cards – slightly denser than default biz-cards on services */
.service-grid { grid-template-columns: repeat(3, 1fr); }

/* Deliverables checklist */
.biz-deliverables {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  list-style: none;
  padding: 0;
}
.biz-deliverables li {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  border: 1px solid var(--border-subtle);
  border-radius: 12px;
  padding: 14px 16px;
  color: var(--text-secondary);
  font-size: .94rem;
  font-weight: 600;
  line-height: 1.45;
}
.biz-deliverable-icon {
  width: 26px;
  height: 26px;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(124, 0, 0, .12);
  color: var(--aomics-teal);
  flex: none;
}
.service-grid .biz-card { display: flex; flex-direction: column; }
.biz-hub-card .biz-chip { margin-top: auto; align-self: flex-start; }
.biz-hub-pipeline { padding-top: 12px; }
.biz-hub-pipeline + .biz-hub-pipeline { border-top: 1px solid rgba(124, 0, 0, .14); }
.biz-hub-pipeline-title {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 600;
  font-size: .98rem;
  color: var(--aomics-burgundy);
  text-decoration: none;
}
.biz-hub-pipeline-title:hover { text-decoration: underline; }
.biz-contact {
  background: linear-gradient(135deg, var(--aomics-burgundy-deep) 0%, var(--aomics-burgundy) 58%, #cbc3c3 100%);
  color: #fff;
  border-radius: 18px;
  padding: 34px 36px;
  box-shadow: 0 18px 44px rgba(124, 0, 0, .22);
}
.biz-contact h2 { color: #fff; display: flex; align-items: center; gap: 10px; font-size: 1.2rem; margin: 0 0 12px; }
.biz-contact-icon {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, .14);
  color: #fff;
}
.biz-contact-cta-icon { width: 18px; height: 18px; border-radius: 5px; margin-right: 4px; background: transparent; }
.biz-contact p { color: rgba(255, 255, 255, .85); line-height: 1.7; max-width: 640px; }
.biz-contact .btn-glow { display: inline-flex; align-items: center; margin-top: 18px; }
.biz-contact-addr { margin-top: 20px; font-size: 12px; color: rgba(255, 255, 255, .72) !important; }
.biz-callout {
  margin-top: 18px;
  border: 1px solid var(--border-subtle);
  background: #fff;
  border-radius: 12px;
  padding: 18px 20px;
}
.biz-callout strong { display: block; color: var(--text-primary); font-size: 14px; margin-bottom: 8px; }
.biz-callout p { margin: 0 0 4px; color: var(--text-secondary); font-size: .9rem; line-height: 1.6; }
.biz-note {
  margin-top: 44px;
  border: 1px solid var(--border-subtle);
  background: #fff;
  border-radius: 10px;
  padding: 15px 18px;
  font-size: 12px;
  color: var(--text-muted);
  line-height: 1.6;
}

/* Legal prose */
.legal-prose { max-width: 820px; }
.legal-prose section > h2 { font-size: 1.42rem; margin-bottom: 14px; }
.legal-prose p, .legal-prose li { color: var(--text-secondary); line-height: 1.78; font-size: .97rem; }
.legal-prose a { color: var(--aomics-burgundy); font-weight: 600; }
.legal-prose ul { list-style: disc; padding-left: 22px; display: grid; gap: 10px; }
.legal-prose .biz-chip { margin-top: 4px; }

@media (max-width: 900px) {
  .biz-cards { grid-template-columns: 1fr; }
  .biz-grid-2 { grid-template-columns: 1fr; }
  .biz-hero { padding: 72px 0 48px; }
}
@media (max-width: 640px) {
  .header-inner { padding: 0 18px; }
  .brand-logo-frame { width: 164px; }
  .site-header.scrolled .header-inner { height: 68px; }
  .header-cta { width: 100%; }
}

/* Compact navigation pass: the complete information architecture stays
   available in grouped menus instead of competing for one horizontal row. */
:root {
  --aomics-sage: #e4cccc;
}
.site-header {
  background: linear-gradient(112deg, rgba(255,255,255,.98), rgba(124, 0, 0,.3) 58%, rgba(124,0,0,.12));
}
.site-header.scrolled {
  background: linear-gradient(112deg, #520000, #7c0000 58%, #520000);
}
.header-inner { max-width: 1440px; padding-inline: 32px; }
.main-nav { flex: 1 1 auto; min-width: 0; justify-content: flex-end; }
.main-nav > ul { flex: 1 1 auto; min-width: 0; justify-content: flex-end; }
.main-nav > ul > li > .nav-item-row > a { white-space: nowrap; }
.sub-menu { background: linear-gradient(150deg, #fff, rgba(124, 0, 0,.3)); border-top: 3px solid var(--aomics-sage); }
.site-header.scrolled .sub-menu { background: linear-gradient(150deg, #520000, #7c0000); border-top-color: var(--aomics-sage); }
.site-header.scrolled .sub-menu li a { color: rgba(255,255,255,.9); }
.site-header.scrolled .sub-menu li a:hover { color: var(--aomics-sage); }
.header-cta { background: linear-gradient(125deg, var(--aomics-burgundy), var(--aomics-teal)); }
.site-header.scrolled .header-cta { background: var(--aomics-brand-gradient); color: #fff; }
@media (min-width: 1024px) and (max-width: 1180px) {
  .header-inner { padding-inline: 20px; }
  .brand-logo-frame { width: 190px; }
  .main-nav { gap: 16px; }
  .main-nav > ul { gap: 11px; }
  .main-nav ul li a { font-size: 12px; }
  .header-cta { padding-inline: 13px; font-size: 12px; }
}

/* Brand gradient: sage to Aomics burgundy, with white as the neutral surface. */
:root {
  --aomics-brand-gradient: linear-gradient(116deg, #e4cccc 0%, #7c0000 100%);
  --aomics-brand-gradient-soft: linear-gradient(116deg, rgba(255, 255, 255, .98) 0%, rgba(124, 0, 0, .34) 52%, rgba(124, 0, 0, .16) 100%);
}
.site-header { background: var(--aomics-brand-gradient-soft); }
.site-header.scrolled { background: var(--aomics-brand-gradient); }
.header-cta,
.site-header.scrolled .header-cta { background: var(--aomics-brand-gradient); color: #fff; }
.aomics-hero-copy h1 .type-line em,
.metric-value { background-image: var(--aomics-brand-gradient); }
.aomics-hero-copy h1 .type-line em {
  background-image: linear-gradient(110deg, #000 0%, #e4cccc 52%, #7c0000 100%);
}
.aomics-hero-kicker { color: var(--aomics-burgundy); }
.kicker-pulse { background: var(--aomics-burgundy); box-shadow: 0 0 12px rgba(124, 0, 0, .42); }
.sub-menu { background: linear-gradient(150deg, #fff, rgba(124, 0, 0, .3)); }
.site-header.scrolled .sub-menu { background: linear-gradient(150deg, #7c0000, #520000); }

/* Adaptrials-inspired shell: restrained borders, compact type and the same
   evidence-workspace rhythm across every Aomics page. */
.site-header { position: sticky; top: 0; }
.header-inner { max-width: 1280px; }
.main-nav > ul > li > .nav-item-row > a,
.nav-sub-toggle { border-radius: 8px; }
.main-nav > ul > li > .nav-item-row > a { padding: 8px 10px; }
.main-nav > ul > li > .nav-item-row > a:hover,
.main-nav > ul > li > .nav-item-row > a:focus-visible {
  background: rgba(124, 0, 0, .26);
  color: var(--aomics-burgundy);
}
.site-header.scrolled .main-nav > ul > li > .nav-item-row > a:hover,
.site-header.scrolled .main-nav > ul > li > .nav-item-row > a:focus-visible {
  background: rgba(124, 0, 0, .18);
  color: #fff;
}
.sub-menu { padding: 8px 0; border-radius: 12px; }
.sub-menu li a { border-radius: 8px; margin: 2px 8px; }
.sub-menu li a:hover, .sub-menu li a:focus-visible { background: rgba(124, 0, 0, .22); }
.lang-btn { border: 1px solid rgba(124, 0, 0, .16); border-radius: 8px; padding: 6px 9px; }
.lang-btn.active { background: var(--aomics-burgundy); color: #fff; border-color: var(--aomics-burgundy); }
.site-header.scrolled .lang-btn { border-color: rgba(255, 255, 255, .3); }
.site-header.scrolled .lang-btn.active { background: var(--aomics-sage); color: var(--aomics-burgundy-deep); border-color: var(--aomics-sage); }
.header-cta { border-radius: 9px; box-shadow: 0 8px 22px rgba(124, 0, 0, .16); }
.header-cta:focus-visible, .btn:focus-visible, .lang-btn:focus-visible { outline: 3px solid rgba(124, 0, 0, .75); outline-offset: 2px; }

/* Adaptrials scroll treatment: wide white lockup at rest, then a compact
   burgundy bar with a cross-faded white lockup once the page moves. */
.site-header {
  background: rgba(255, 255, 255, .98);
  transition: background-color .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.site-header.scrolled {
  background: #7c0000;
  border-bottom-color: rgba(255, 255, 255, .22);
}
.brand-logo-frame {
  position: relative;
  height: 88px;
  display: flex;
  align-items: center;
  transition: height .35s ease;
}
.brand-logo {
  transition: opacity .35s ease, visibility .35s ease, transform .35s ease;
}
.brand-logo-dark { opacity: 1; visibility: visible; }
.site-header.scrolled .brand-logo-dark { display: block; }
/* Compact white favicon replaces the full logo once the header condenses.
   Uses a pre-rendered white PNG (aomics-favicon-white.png) — no CSS filter,
   so bundler minification can never break the recoloring. */
.brand-logo-white {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  opacity: 0;
  visibility: hidden;
  transition: opacity .35s ease, visibility .35s ease, transform .35s ease;
}
.site-header.scrolled .brand-logo-frame { height: 58px; }
.site-header.scrolled .brand-logo-dark { opacity: 0; visibility: hidden; transform: scale(.96); }
/* Same specificity as the legacy rules above but declared later, so these win. */
.site-header.scrolled .brand-logo-white {
  opacity: 1;
  visibility: visible;
  height: 52px;
  width: auto;
  max-height: none;
  transform: scale(1);
}

/* Footer themed in the Aomics burgundy with light text for contrast.
   Layout mirrors the Adaptrials app structure:
   [logo] [col] [col] [col] [col] [col]
   ——————— legal links · badges ———————
   ——————— disclaimer ——————— */
.site-footer {
  background: var(--aomics-burgundy);
  border-top: 1px solid rgba(255, 255, 255, .16);
  padding: 48px 0 24px;
}
/* The legacy site.css draws the footer logo in a white pill (background:#fff;
   padding:5px) — wrong on the burgundy footer. Show the white logo bare. */
.site-footer .footer-brand img {
  background: transparent;
  padding: 0;
  border-radius: 0;
  filter: none;
}
.footer-grid {
  display: grid;
  grid-template-columns: repeat(6, [col-start] 1fr);
  column-gap: 32px;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
}
.footer-brand {
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 216px;
}
.footer-brand img { width: 208px; }
.footer-col { grid-column: span 1; }
.footer-col:nth-child(1) { grid-column: 1; }
.footer-col:nth-child(2) { grid-column: 2; }
.footer-col:nth-child(3) { grid-column: 3; }
.footer-col:nth-child(4) { grid-column: 4; }
.footer-col:nth-child(5) { grid-column: 5; }
.footer-col h4 { color: #fff; font-size: .85rem; font-weight: 600; margin-bottom: 16px; }
.footer-col ul li { margin-bottom: 10px; }
.footer-col ul li a { color: rgba(255, 255, 255, .82); font-size: .825rem; text-decoration: none; }
.footer-col ul li a:hover { color: #fff; }
.footer-brand p { color: rgba(255, 255, 255, .72); font-size: .8rem; line-height: 1.5; }
.footer-social { display: flex; gap: 10px; }
.footer-social a {
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, .35);
  background: rgba(255, 255, 255, .1); color: #fff; font-size: .7rem; font-weight: 700;
  text-decoration: none; transition: all .2s ease;
}
.footer-social a:hover { background: #fff; color: var(--aomics-burgundy); border-color: #fff; }
.footer-social a[aria-label="X / Twitter"] { font-size: .75rem; }

/* ── bottom legal / badges row ── */
.footer-bottom {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px;
  max-width: 1280px; margin: 0 auto; padding: 24px 24px 0;
  border-top: 1px solid rgba(255, 255, 255, .12); font-size: .75rem; color: rgba(255, 255, 255, .68);
}
.footer-legal { display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.footer-legal-divider { color: rgba(255, 255, 255, .38); }
.footer-legal a { color: rgba(255, 255, 255, .82); text-decoration: none; }
.footer-legal a:hover { color: #fff; }
.footer-badges { display: inline-flex; gap: 8px; flex-wrap: wrap; }
.footer-badges span {
  background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .22);
  color: rgba(255, 255, 255, .8); border-radius: 4px;
  padding: 3px 10px; font-size: .68rem;
}

/* ── disclaimer panel ── */
.footer-disclaimer {
  max-width: 1280px; margin: 16px auto 0; padding: 0 24px;
  background: rgba(0, 0, 0, .18); border-radius: 8px; padding: 14px 18px;
  font-size: .72rem; line-height: 1.55; color: rgba(255, 255, 255, .78);
}
.footer-disclaimer strong { color: #fff; font-weight: 600; }

@media (width<1024px) {
  .footer-grid { grid-template-columns: 1fr 1fr; column-gap: 20px; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-col { grid-column: span 1; }
  .footer-col:nth-child(odd) { }
  .footer-bottom, .footer-disclaimer { flex-direction: column; text-align: center; gap: 10px; padding-left: 24px; padding-right: 24px; }
  .footer-legal { justify-content: center; }
  .footer-badges { justify-content: center; }
}
.footer-bottom { border-top-color: rgba(255, 255, 255, .16); }
.footer-bottom p { color: rgba(255, 255, 255, .7); }

/* ── Desktop dropdown fixes ─────────────────────────────────────────────
   1. `.main-nav ul { flex-direction: row }` (top bar) also hit .sub-menu,
      laying dropdown items out in a wide horizontal strip -> stack them.
   2. The mobile accordion (`max-height: 0; overflow: hidden`) clipped the
      absolutely-positioned desktop dropdown -> release it; show/hide is
      handled by opacity/pointer-events on desktop.
   3. Bridge the 14px hover gap so the dropdown stays open while the
      pointer travels from the item to the panel. */
@media (width>=1024px) {
  .main-nav .sub-menu { flex-direction: column; gap: 0; }
  .main-nav .sub-menu { max-height: none; overflow: visible; }
  .main-nav li.has-children { position: relative; }
  .main-nav > ul > li.has-children > .sub-menu::before {
    content: '';
    position: absolute;
    top: -16px;
    left: 0;
    right: 0;
    height: 16px;
  }
}

/* Audience value map and platform technology overview. */
.aomics-audience { padding: 104px 0; background: linear-gradient(145deg, #fff 0%, #faf5f5 58%, rgba(124, 0, 0, .22) 100%); }
.aomics-audience-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; opacity: 0; transform: translateY(22px); transition: all .7s ease .12s; }
.aomics-audience-grid.reveal { opacity: 1; transform: translateY(0); }
.aomics-audience-card { display: flex; flex-direction: column; min-height: 430px; padding: 24px; border: 1px solid rgba(124, 0, 0, .14); border-radius: 16px; background: rgba(255, 255, 255, .9); box-shadow: 0 12px 28px rgba(60, 20, 20, .06); transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
.aomics-audience-card:hover { transform: translateY(-5px); border-color: rgba(124, 0, 0, .38); box-shadow: 0 18px 36px rgba(124, 0, 0, .12); }
.aomics-audience-card-top { display: flex; align-items: center; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid rgba(124, 0, 0, .12); color: var(--aomics-burgundy); font: 700 11px 'SF Mono', monospace; }
.aomics-audience-card-top b { font-size: 18px; font-family: inherit; }
.aomics-audience-label, .technology-platform-eyebrow { margin: 20px 0 8px; color: var(--aomics-burgundy); font: 700 10px/1.4 'SF Mono', monospace; letter-spacing: .09em; text-transform: uppercase; }
.aomics-audience-card h3 { margin-bottom: 12px; color: var(--text-primary); font-size: 20px; line-height: 1.13; letter-spacing: -.025em; }
.aomics-audience-card > p:not(.aomics-audience-label) { color: var(--text-secondary); font-size: 14px; line-height: 1.65; }
.aomics-audience-card ul, .technology-platform-card ul { display: grid; gap: 9px; margin: 20px 0; padding: 0; list-style: none; }
.aomics-audience-card li, .technology-platform-card li { display: flex; gap: 8px; align-items: flex-start; color: var(--text-primary); font-size: 12px; line-height: 1.45; }
.aomics-audience-card li span, .technology-platform-card li span { display: inline-grid; flex: 0 0 auto; place-items: center; width: 18px; height: 18px; border-radius: 50%; background: rgba(124, 0, 0, .4); color: var(--aomics-burgundy); font-size: 11px; font-weight: 800; }
.aomics-audience-link, .technology-platform-link { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding: 0; border: 0; background: transparent; color: var(--aomics-burgundy); font-size: 12px; font-weight: 800; cursor: pointer; }
.aomics-audience-link span, .technology-platform-link span { transition: transform .2s ease; }
.aomics-audience-link:hover span, .technology-platform-link:hover span { transform: translateX(4px); }

.technology-page { background: var(--bg-base); }
.technology-hero { padding: 104px 0 90px; background: linear-gradient(145deg, #050505 0%, #1a0000 45%, #7c0000 100%); color: #fff; }
.technology-hero-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr); gap: 72px; align-items: center; }
.technology-hero h1 { max-width: 760px; margin: 16px 0 22px; color: #fff; font-size: clamp(2.6rem, 5.5vw, 5rem); line-height: .99; letter-spacing: -.055em; }
.technology-hero h1::first-line { background: linear-gradient(110deg, #000 0%, #e4cccc 52%, #fff 86%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.technology-hero > .wrap > div:first-child > p:not(.aomics-kicker) { max-width: 650px; color: rgba(255, 255, 255, .75); font-size: 17px; line-height: 1.75; }
.technology-hero .aomics-kicker { color: var(--aomics-sage); }
.technology-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 30px; }
.technology-hero .aomics-hero-secondary { color: rgba(255,255,255,.8); }
.technology-signal-card { padding: 24px; border: 1px solid rgba(124, 0, 0, .42); border-radius: 16px; background: rgba(255, 255, 255, .08); box-shadow: 0 20px 48px rgba(0, 0, 0, .22); backdrop-filter: blur(16px); }
.technology-signal-header { display: flex; justify-content: space-between; gap: 12px; padding-bottom: 18px; border-bottom: 1px solid rgba(255,255,255,.16); color: var(--aomics-sage); font: 700 10px 'SF Mono', monospace; letter-spacing: .08em; }
.technology-signal-header b { color: #fff; font-weight: 700; }
.technology-signal-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 8px; align-items: center; margin: 32px 0 22px; color: #fff; font-size: 12px; font-weight: 700; text-align: center; }
.technology-signal-flow span { padding: 14px 8px; border: 1px solid rgba(124, 0, 0,.32); border-radius: 9px; background: rgba(124, 0, 0,.12); }
.technology-signal-flow i { color: var(--aomics-sage); font-style: normal; font-size: 18px; }
.technology-signal-bar { display: flex; align-items: end; gap: 8px; height: 76px; padding: 0 6px 8px; border-bottom: 1px solid rgba(255,255,255,.18); }
.technology-signal-bar span { flex: 1; height: 35%; border-radius: 4px 4px 0 0; background: linear-gradient(to top, #e4cccc, #fff); animation: grow-up .9s ease-out forwards; transform: scaleY(0); transform-origin: bottom; }
.technology-signal-bar span:nth-child(2) { height: 58%; animation-delay: .12s; }.technology-signal-bar span:nth-child(3) { height: 46%; animation-delay: .24s; }.technology-signal-bar span:nth-child(4) { height: 78%; animation-delay: .36s; }.technology-signal-bar span:nth-child(5) { height: 92%; animation-delay: .48s; }
.technology-signal-card > p { margin-top: 18px; color: rgba(255,255,255,.72); font-size: 13px; line-height: 1.6; }
.technology-platforms { padding: 104px 0; background: #fff; }
.technology-section-heading { max-width: 760px; margin-bottom: 40px; }.technology-section-heading h2 { margin: 12px 0 14px; color: var(--text-primary); font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.04; letter-spacing: -.045em; }.technology-section-heading > p:not(.aomics-kicker) { color: var(--text-secondary); line-height: 1.7; }
.technology-platform-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.technology-platform-card { display: flex; flex-direction: column; min-height: 510px; padding: 26px; border: 1px solid rgba(124,0,0,.16); border-radius: 16px; background: linear-gradient(160deg, #fff, rgba(124, 0, 0,.18)); box-shadow: 0 12px 30px rgba(60, 20, 20,.06); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }.technology-platform-card:hover { transform: translateY(-5px); border-color: rgba(124,0,0,.4); box-shadow: 0 20px 40px rgba(124,0,0,.1); }
.technology-platform-top { display: flex; justify-content: space-between; color: var(--aomics-burgundy); font: 700 11px 'SF Mono', monospace; }.technology-platform-top a { color: var(--aomics-burgundy); font-size: 18px; }.technology-platform-card h3 { margin: 4px 0 10px; color: var(--aomics-burgundy); font-size: 27px; letter-spacing: -.04em; }.technology-platform-card h4 { margin-bottom: 14px; color: var(--text-primary); font-size: 19px; line-height: 1.2; letter-spacing: -.025em; }.technology-platform-card > p:not(.technology-platform-eyebrow) { color: var(--text-secondary); font-size: 14px; line-height: 1.7; }
.technology-stack { padding: 104px 0; background: linear-gradient(145deg, #faf5f5, rgba(124, 0, 0,.22)); }.technology-layer-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }.technology-layer { padding: 22px; border: 1px solid rgba(124,0,0,.15); border-radius: 14px; background: rgba(255,255,255,.82); }.technology-layer > span { color: var(--aomics-burgundy); font: 700 11px 'SF Mono', monospace; }.technology-layer h3 { margin: 18px 0 9px; color: var(--text-primary); font-size: 19px; }.technology-layer p { color: var(--text-secondary); font-size: 13px; line-height: 1.65; }
.technology-cta { padding: 72px 0; background: linear-gradient(116deg, #050505 0%, #e4cccc 52%, #7c0000 100%); color: #fff; }.technology-cta .wrap { display: flex; align-items: center; justify-content: space-between; gap: 34px; }.technology-cta h2 { max-width: 720px; margin-top: 12px; color: #fff; font-size: clamp(1.9rem, 4vw, 3.3rem); line-height: 1.05; letter-spacing: -.045em; }.technology-cta .aomics-kicker { color: #fff; }.technology-cta .btn { background: #fff; color: var(--aomics-burgundy); }

@media (max-width: 1023px) { .aomics-audience-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.technology-hero-grid { grid-template-columns: 1fr; gap: 40px; }.technology-platform-grid { grid-template-columns: 1fr; }.technology-platform-card { min-height: 0; }.technology-layer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .aomics-audience { padding: 76px 0; }.aomics-audience-grid { grid-template-columns: 1fr; }.aomics-audience-card { min-height: 0; }.technology-hero, .technology-platforms, .technology-stack { padding: 76px 0; }.technology-signal-flow { grid-template-columns: 1fr; }.technology-signal-flow i { transform: rotate(90deg); }.technology-layer-grid { grid-template-columns: 1fr; }.technology-cta { padding: 58px 0; }.technology-cta .wrap { align-items: flex-start; flex-direction: column; } }

/* Keep the technology hero on the same light, clinical canvas as Adaptrials;
   the architecture card carries the dark contrast instead of reducing text
   contrast behind the black → sage → burgundy headline. */
.technology-hero { background: linear-gradient(145deg, #fff 0%, #faf5f5 56%, rgba(124, 0, 0, .34) 100%); color: var(--text-primary); }
.technology-hero h1 { color: var(--text-primary); }
.technology-hero h1::first-line { background-image: linear-gradient(110deg, #000 0%, #e4cccc 52%, #7c0000 100%); }
.technology-hero > .wrap > div:first-child > p:not(.aomics-kicker) { color: var(--text-secondary); }
.technology-hero .aomics-hero-secondary { color: var(--aomics-burgundy); }
.technology-signal-card { background: linear-gradient(145deg, #050505 0%, #1a0000 48%, #7c0000 100%); }

/* Public editorial routes: a consistent Aomics reading canvas with the
   spacious CTA rhythm used by the Adaptrials public pages. */
.editorial-page { min-height: calc(100vh - 72px); background: #faf5f5; color: var(--text-primary); }
.editorial-hero { padding: 132px 0 82px; background: linear-gradient(145deg, #fff 0%, #faf5f5 58%, rgba(124, 0, 0, .4) 100%); border-bottom: 1px solid rgba(124, 0, 0, .12); }
.editorial-hero-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr); gap: 74px; align-items: end; }
.editorial-hero h1 { max-width: 800px; margin: 14px 0 18px; color: var(--text-primary); font-size: clamp(2.65rem, 5.3vw, 5.4rem); line-height: .97; letter-spacing: -.065em; background: linear-gradient(112deg, #050505 8%, #6a1414 50%, var(--aomics-burgundy) 94%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.editorial-hero > .wrap > div:first-child > p:not(.aomics-kicker) { max-width: 690px; color: var(--text-secondary); font-size: 17px; line-height: 1.75; }
.editorial-hero-index { align-self: stretch; display: flex; flex-direction: column; justify-content: flex-end; min-height: 180px; padding: 24px; border-left: 2px solid var(--aomics-burgundy); background: rgba(255, 255, 255, .56); }.editorial-hero-index span { color: var(--aomics-burgundy); font: 700 10px 'SF Mono', monospace; letter-spacing: .1em; }.editorial-hero-index strong { margin-top: 16px; color: var(--text-primary); font-size: 23px; line-height: 1.1; letter-spacing: -.035em; }.editorial-hero-index small { margin-top: 10px; color: var(--text-secondary); font-size: 12px; line-height: 1.55; }
.editorial-content, .resources-content, .news-content, .faq-content, .careers-content { padding: 82px 0 100px; }
.editorial-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 34px; }.editorial-filters { display: flex; flex-wrap: wrap; gap: 8px; }.editorial-filters button { padding: 8px 13px; border: 1px solid rgba(124, 0, 0, .2); border-radius: 999px; background: #fff; color: var(--text-secondary); font-size: 12px; font-weight: 700; cursor: pointer; }.editorial-filters button.active, .editorial-filters button:hover { border-color: var(--aomics-burgundy); background: var(--aomics-burgundy); color: #fff; }.editorial-search { display: flex; align-items: center; gap: 8px; min-width: 220px; padding: 8px 12px; border: 1px solid rgba(124, 0, 0, .18); border-radius: 8px; background: #fff; color: var(--aomics-burgundy); }.editorial-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--text-primary); font: inherit; font-size: 12px; }.editorial-search input::placeholder { color: #87928b; }
.blog-featured { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); min-height: 370px; margin-bottom: 38px; overflow: hidden; border: 1px solid rgba(124, 0, 0, .15); border-radius: 18px; background: #fff; box-shadow: 0 18px 44px rgba(60, 20, 20, .08); }.blog-featured-image { min-height: 300px; overflow: hidden; background: linear-gradient(145deg, #1a0000, #7c0000); }.blog-featured-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }.blog-featured:hover .blog-featured-image img { transform: scale(1.04); }.blog-featured-copy { display: flex; flex-direction: column; justify-content: center; padding: 40px; }.editorial-label { margin: 0 0 10px; color: var(--aomics-burgundy); font: 700 10px/1.4 'SF Mono', monospace; letter-spacing: .1em; text-transform: uppercase; }.blog-featured-copy .blog-meta { margin-bottom: 15px; }.blog-featured-copy h2 { margin-bottom: 14px; color: var(--text-primary); font-size: clamp(1.7rem, 3vw, 2.65rem); line-height: 1.05; letter-spacing: -.045em; }.blog-featured-copy > p { color: var(--text-secondary); line-height: 1.7; }.blog-featured-copy .text-link { margin-top: 25px; }.blog-grid-modern { opacity: 1; transform: none; }.blog-grid-modern .blog-card { background: #fff; border-color: rgba(124, 0, 0, .14); box-shadow: 0 10px 28px rgba(60, 20, 20, .05); }.blog-grid-modern .blog-card-title, .blog-grid-modern .blog-card-title a { color: var(--text-primary); }.blog-grid-modern .blog-card-body { padding: 22px; }.editorial-empty { padding: 50px 0; color: var(--text-secondary); }.editorial-cta { padding: 68px 0; background: linear-gradient(116deg, #050505 0%, #e4cccc 52%, #7c0000 100%); color: #fff; }.editorial-cta .wrap { display: flex; align-items: center; justify-content: space-between; gap: 30px; }.editorial-cta h2 { max-width: 680px; margin-top: 10px; color: #fff; font-size: clamp(1.9rem, 4vw, 3.2rem); line-height: 1.04; letter-spacing: -.05em; }.editorial-cta .aomics-kicker { color: #fff; }.editorial-cta .btn { background: #fff; color: var(--aomics-burgundy); }
.resources-intro, .careers-intro { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 60px; align-items: end; margin-bottom: 38px; }.resources-intro h2, .careers-intro h2 { margin-top: 12px; color: var(--text-primary); font-size: clamp(2rem, 3.8vw, 3.4rem); line-height: 1; letter-spacing: -.05em; }.resources-intro > p, .careers-intro > p { color: var(--text-secondary); line-height: 1.75; }.resource-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }.resource-card { display: flex; flex-direction: column; min-height: 315px; padding: 23px; border: 1px solid rgba(124, 0, 0, .14); border-radius: 14px; background: linear-gradient(160deg, #fff, rgba(124, 0, 0, .17)); transition: transform .25s ease, box-shadow .25s ease; }.resource-card:hover { transform: translateY(-4px); box-shadow: 0 18px 34px rgba(124, 0, 0, .1); }.resource-card-top { display: flex; justify-content: space-between; color: var(--aomics-burgundy); font: 700 10px 'SF Mono', monospace; letter-spacing: .08em; }.resource-card-top b { font-weight: 700; text-transform: uppercase; }.resource-card h3 { margin: 30px 0 12px; color: var(--text-primary); font-size: 19px; line-height: 1.12; letter-spacing: -.025em; }.resource-card p { color: var(--text-secondary); font-size: 13px; line-height: 1.65; }.resource-card button, .news-item-copy button { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding: 0; border: 0; background: transparent; color: var(--aomics-burgundy); font-size: 12px; font-weight: 800; cursor: pointer; }.resource-card button span, .news-item-copy button span { transition: transform .2s ease; }.resource-card button:hover span, .news-item-copy button:hover span { transform: translateX(4px); }.resources-request { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-top: 58px; padding: 30px; border-radius: 16px; background: linear-gradient(135deg, #1a0000, #7c0000); color: #fff; }.resources-request h2 { margin: 10px 0; color: #fff; font-size: clamp(1.4rem, 2.8vw, 2.4rem); letter-spacing: -.035em; }.resources-request p:not(.aomics-kicker) { max-width: 680px; color: rgba(255, 255, 255, .72); font-size: 13px; line-height: 1.65; }.resources-request .aomics-kicker { color: var(--aomics-sage); }.resources-request .btn { flex: 0 0 auto; background: #fff; color: var(--aomics-burgundy); }
.news-list { max-width: 980px; margin: 0 auto; }.news-item { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 32px; padding: 35px 0; border-top: 1px solid rgba(124, 0, 0, .16); }.news-item:last-child { border-bottom: 1px solid rgba(124, 0, 0, .16); }.news-date { display: grid; align-content: start; gap: 8px; color: var(--text-secondary); font-size: 12px; }.news-date span { color: var(--aomics-burgundy); font: 700 11px 'SF Mono', monospace; }.news-item-copy h2 { max-width: 760px; margin-bottom: 11px; color: var(--text-primary); font-size: clamp(1.4rem, 2.8vw, 2.25rem); line-height: 1.08; letter-spacing: -.04em; }.news-item-copy > p:not(.editorial-label) { max-width: 680px; color: var(--text-secondary); line-height: 1.7; }.news-item-copy button { margin-top: 18px; }
.faq-grid { max-width: 980px; margin: 0 auto; }.faq-item { border-top: 1px solid rgba(124, 0, 0, .16); }.faq-item:last-child { border-bottom: 1px solid rgba(124, 0, 0, .16); }.faq-item summary { display: grid; grid-template-columns: 54px 1fr 24px; gap: 14px; align-items: center; padding: 22px 0; color: var(--text-primary); list-style: none; cursor: pointer; }.faq-item summary::-webkit-details-marker { display: none; }.faq-item summary span { color: var(--aomics-burgundy); font: 700 11px 'SF Mono', monospace; }.faq-item summary strong { font-size: 17px; letter-spacing: -.02em; }.faq-item summary b { color: var(--aomics-burgundy); font-size: 22px; font-weight: 400; text-align: center; transition: transform .2s ease; }.faq-item[open] summary b { transform: rotate(45deg); }.faq-item > p { max-width: 820px; margin: -4px 0 25px 68px; color: var(--text-secondary); line-height: 1.75; }.faq-cta { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin: 64px auto 0; max-width: 980px; padding: 30px; border-radius: 16px; background: linear-gradient(135deg, rgba(124, 0, 0, .32), rgba(124, 0, 0, .12)); }.faq-cta h2 { max-width: 630px; margin-top: 10px; color: var(--text-primary); font-size: clamp(1.5rem, 3vw, 2.5rem); line-height: 1.05; letter-spacing: -.04em; }
.career-role-list { display: grid; gap: 16px; max-width: 1040px; margin: 0 auto; }.career-role { padding: 27px; border: 1px solid rgba(124, 0, 0, .15); border-radius: 16px; background: #fff; box-shadow: 0 12px 28px rgba(60, 20, 20, .05); }.career-role-header { display: flex; align-items: start; justify-content: space-between; gap: 20px; }.career-role h3 { margin: 5px 0 8px; color: var(--text-primary); font-size: clamp(1.25rem, 2.5vw, 1.8rem); line-height: 1.1; letter-spacing: -.03em; }.career-role-header p { color: var(--text-secondary); font-size: 12px; }.career-type { flex: 0 0 auto; padding: 6px 10px; border-radius: 999px; background: rgba(124, 0, 0, .4); color: var(--aomics-burgundy); font-size: 10px; font-weight: 800; }.career-summary { max-width: 840px; margin-top: 18px; color: var(--text-secondary); font-size: 14px; line-height: 1.7; }.career-detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-top: 22px; }.career-detail-grid h4 { margin-bottom: 9px; color: var(--text-primary); font: 700 10px 'SF Mono', monospace; letter-spacing: .08em; text-transform: uppercase; }.career-detail-grid ul { display: grid; gap: 7px; padding-left: 17px; color: var(--text-secondary); font-size: 12px; line-height: 1.55; }.career-apply { margin-top: 24px; padding: 10px 15px; font-size: 12px; }.careers-cta { display: flex; align-items: center; justify-content: space-between; gap: 28px; max-width: 1040px; margin: 52px auto 0; padding: 30px; border-radius: 16px; background: linear-gradient(135deg, #1a0000, #7c0000); color: #fff; }.careers-cta h2 { margin: 10px 0; color: #fff; font-size: clamp(1.5rem, 3vw, 2.6rem); line-height: 1.03; letter-spacing: -.04em; }.careers-cta p:not(.aomics-kicker) { max-width: 640px; color: rgba(255, 255, 255, .72); font-size: 13px; line-height: 1.65; }.careers-cta .aomics-kicker { color: var(--aomics-sage); }.careers-cta .btn { flex: 0 0 auto; background: #fff; color: var(--aomics-burgundy); }

/* Compact footer and strict header button contrast. */
.header-cta { background: var(--aomics-burgundy) !important; color: #fff !important; }
.header-cta:hover { background: var(--aomics-burgundy-deep) !important; }
.site-header.scrolled .header-cta { background: #fff !important; color: var(--aomics-burgundy) !important; }
.site-header.scrolled .header-cta:hover { background: var(--aomics-bone) !important; }
.footer-grid { max-width: 1180px; grid-template-columns: minmax(210px, 1.35fr) repeat(5, minmax(0, 1fr)); column-gap: 22px; row-gap: 18px; padding: 0 24px; }
.footer-brand { grid-column: auto; max-width: 240px; }
.site-footer { padding-top: 38px; }
.footer-bottom { max-width: 1180px; margin-top: 32px; padding-top: 18px; }
.footer-disclaimer { max-width: 1180px; margin-top: 12px; padding-top: 11px; padding-bottom: 11px; }
@media (max-width: 1023px) { .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 28px; }.footer-brand { grid-column: 1 / -1; max-width: 280px; } }
@media (max-width: 900px) { .editorial-hero-grid, .resources-intro, .careers-intro { grid-template-columns: 1fr; gap: 34px; }.editorial-hero-index { min-height: 0; }.resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.blog-featured { grid-template-columns: 1fr; }.blog-featured-image { min-height: 260px; }.faq-cta, .careers-cta, .resources-request, .editorial-cta .wrap { align-items: flex-start; flex-direction: column; } }
@media (max-width: 640px) { .editorial-hero { padding: 104px 0 66px; }.editorial-hero h1 { font-size: clamp(2.45rem, 13vw, 4rem); }.editorial-content, .resources-content, .news-content, .faq-content, .careers-content { padding: 70px 0 78px; }.editorial-toolbar { align-items: stretch; flex-direction: column; }.editorial-search { min-width: 0; }.resource-grid { grid-template-columns: 1fr; }.resource-card { min-height: 0; }.blog-featured-copy { padding: 26px; }.news-item { grid-template-columns: 1fr; gap: 12px; padding: 26px 0; }.faq-item summary { grid-template-columns: 40px 1fr 22px; gap: 8px; }.faq-item summary strong { font-size: 15px; }.faq-item > p { margin-left: 48px; }.career-role { padding: 21px; }.career-role-header { flex-direction: column; gap: 10px; }.career-detail-grid { grid-template-columns: 1fr; gap: 20px; }.footer-grid { grid-template-columns: 1fr 1fr; padding-inline: 20px; }.footer-brand { grid-column: 1 / -1; }.footer-col h4 { margin-bottom: 11px; }.footer-col ul li { margin-bottom: 7px; }.footer-col ul li a { font-size: .76rem; }.footer-bottom, .footer-disclaimer { padding-left: 20px; padding-right: 20px; } }

/* Compliance / regulatory-grade evidence page. */
.compliance-page { min-height: calc(100vh - 72px); background: #faf5f5; color: var(--text-primary); }.compliance-hero { padding: 132px 0 88px; background: linear-gradient(145deg, #fff 0%, #faf5f5 56%, rgba(124, 0, 0,.4) 100%); }.compliance-hero-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(350px, .9fr); gap: 72px; align-items: center; }.compliance-hero h1 { max-width: 760px; margin: 15px 0 22px; color: var(--text-primary); font-size: clamp(2.6rem, 5.4vw, 5.2rem); line-height: .98; letter-spacing: -.06em; background: linear-gradient(110deg, #050505 10%, #6a1414 52%, var(--aomics-burgundy) 96%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }.compliance-hero > .wrap > div:first-child > p:not(.aomics-kicker) { max-width: 690px; color: var(--text-secondary); font-size: 17px; line-height: 1.75; }.compliance-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; margin-top: 30px; }.compliance-quiet-link { color: var(--aomics-burgundy); font-size: 13px; font-weight: 800; text-decoration: none; }.compliance-quiet-link span { margin-left: 6px; }.compliance-proof { min-height: 370px; padding: 26px; border-radius: 18px; background: linear-gradient(145deg, #050505, #1a0000 50%, #7c0000); color: #fff; box-shadow: 0 24px 58px rgba(60, 20, 20,.2); }.compliance-proof-top { display: flex; justify-content: space-between; gap: 12px; padding-bottom: 17px; border-bottom: 1px solid rgba(255,255,255,.2); color: var(--aomics-sage); font: 700 10px 'SF Mono', monospace; letter-spacing: .08em; }.compliance-proof-top b { color: #fff; }.compliance-proof-core { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 8px; align-items: center; margin: 84px 0 30px; text-align: center; }.compliance-proof-core span { padding: 14px 5px; border: 1px solid rgba(124, 0, 0,.4); border-radius: 8px; background: rgba(124, 0, 0,.12); font-size: 11px; font-weight: 800; letter-spacing: .06em; }.compliance-proof-core i { color: var(--aomics-sage); font-style: normal; font-size: 18px; }.compliance-proof-line { display: flex; align-items: end; gap: 8px; height: 58px; padding: 0 6px 8px; border-bottom: 1px solid rgba(255,255,255,.2); }.compliance-proof-line span { flex: 1; height: 32%; border-radius: 3px 3px 0 0; background: linear-gradient(to top, #e4cccc, #fff); }.compliance-proof-line span:nth-child(2) { height: 56%; }.compliance-proof-line span:nth-child(3) { height: 43%; }.compliance-proof-line span:nth-child(4) { height: 74%; }.compliance-proof-line span:nth-child(5) { height: 62%; }.compliance-proof-line span:nth-child(6) { height: 90%; }.compliance-proof > p { margin-top: 17px; color: rgba(255,255,255,.72); font-size: 13px; line-height: 1.6; }.compliance-thread { padding: 102px 0; background: #fff; }.compliance-standards { padding: 102px 0; background: linear-gradient(145deg, #faf5f5, rgba(124, 0, 0,.22)); }.compliance-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 42px; }.compliance-heading h2 { max-width: 760px; margin: 12px 0 14px; color: var(--text-primary); font-size: clamp(2rem, 4vw, 3.35rem); line-height: 1.02; letter-spacing: -.05em; }.compliance-heading p:not(.aomics-kicker) { max-width: 700px; color: var(--text-secondary); line-height: 1.7; }.compliance-heading > span { color: var(--text-muted); font: 700 11px 'SF Mono', monospace; }.compliance-chain { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }.compliance-chain-item { min-height: 210px; padding: 22px; border: 1px solid rgba(124,0,0,.15); border-radius: 14px; background: linear-gradient(160deg, #fff, rgba(124, 0, 0,.14)); }.compliance-chain-number { display: flex; align-items: center; justify-content: space-between; color: var(--aomics-burgundy); font: 700 11px 'SF Mono', monospace; }.compliance-chain-number i { color: rgba(124,0,0,.35); font-size: 18px; font-style: normal; }.compliance-chain-item h3 { margin: 32px 0 10px; color: var(--text-primary); font-size: 19px; line-height: 1.1; letter-spacing: -.025em; }.compliance-chain-item p { color: var(--text-secondary); font-size: 13px; line-height: 1.65; }.compliance-standard-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }.compliance-standard-grid article { padding: 22px; border: 1px solid rgba(124,0,0,.14); border-radius: 13px; background: rgba(255,255,255,.8); }.compliance-standard-grid article > span { color: var(--aomics-burgundy); font: 700 11px 'SF Mono', monospace; }.compliance-standard-grid h3 { margin: 17px 0 8px; color: var(--text-primary); font-size: 17px; }.compliance-standard-grid p { color: var(--text-secondary); font-size: 12px; line-height: 1.6; }.compliance-cta { padding: 72px 0; background: linear-gradient(116deg, #050505 0%, #e4cccc 52%, #7c0000 100%); color: #fff; }.compliance-cta .wrap { display: flex; align-items: center; justify-content: space-between; gap: 34px; }.compliance-cta h2 { max-width: 760px; margin: 11px 0; color: #fff; font-size: clamp(1.9rem, 4vw, 3.2rem); line-height: 1.03; letter-spacing: -.05em; }.compliance-cta p:not(.aomics-kicker) { max-width: 670px; color: rgba(255,255,255,.72); line-height: 1.65; }.compliance-cta .aomics-kicker { color: #fff; }.compliance-cta .btn { flex: 0 0 auto; background: #fff; color: var(--aomics-burgundy); }

/* Consent surface and the requested shell contrast. */
.cookie-banner { position: fixed; right: 22px; bottom: 22px; z-index: 1200; display: flex; align-items: center; justify-content: space-between; gap: 28px; width: min(920px, calc(100% - 44px)); padding: 18px 20px; border: 1px solid rgba(124,0,0,.25); border-radius: 14px; background: #fff; box-shadow: 0 18px 50px rgba(54,18,12,.22); }.cookie-banner-copy { display: flex; align-items: flex-start; gap: 12px; }.cookie-banner-mark { display: grid; flex: 0 0 auto; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: var(--aomics-burgundy); color: #fff; font-weight: 800; }.cookie-banner-copy strong { display: block; color: var(--text-primary); font-size: 13px; }.cookie-banner-copy p { max-width: 590px; margin: 4px 0 5px; color: var(--text-secondary); font-size: 11px; line-height: 1.5; }.cookie-policy-link { padding: 0; border: 0; background: transparent; color: var(--aomics-burgundy); font-size: 11px; font-weight: 800; cursor: pointer; }.cookie-banner-actions { display: flex; flex: 0 0 auto; gap: 8px; }.cookie-banner-actions button { padding: 9px 12px; border-radius: 8px; font-size: 11px; font-weight: 800; cursor: pointer; }.cookie-reject { border: 1px solid rgba(124,0,0,.24); background: #fff; color: var(--aomics-burgundy); }.cookie-accept { border: 1px solid var(--aomics-burgundy); background: var(--aomics-burgundy); color: #fff; }.cookie-banner-actions button:hover { background: var(--aomics-burgundy-deep); color: #fff; }
.brand-logo-frame { width: 250px; }.header-inner { height: 116px; }.site-header.scrolled .header-inner { height: 72px; }.lang-btn { color: var(--aomics-burgundy) !important; border-color: rgba(124,0,0,.2) !important; }.lang-btn.active { background: var(--aomics-burgundy) !important; color: #fff !important; }.lang-divider { color: var(--aomics-burgundy) !important; }.site-header.scrolled .lang-btn { color: #fff !important; border-color: rgba(255,255,255,.38) !important; }.site-header.scrolled .lang-btn.active { background: #fff !important; color: var(--aomics-burgundy) !important; }.site-header.scrolled .lang-divider { color: #fff !important; }.aomics-hero-copy h1 .type-line { background-image: linear-gradient(110deg, #050505 0%, #e4cccc 52%, #7c0000 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }.aomics-hero-copy h1 .type-line em { background: none; -webkit-text-fill-color: inherit; color: inherit; }.aomics-hero-actions .btn, .service-atlas .btn-outline { background: #fff; border: 1px solid var(--aomics-burgundy); color: var(--aomics-burgundy); }.aomics-hero-actions .btn:hover, .service-atlas .btn-outline:hover { background: var(--aomics-burgundy); color: #fff; }
@media (max-width: 1023px) { .brand-logo-frame { width: 210px; }.header-inner { height: 96px; } }
@media (max-width: 900px) { .compliance-hero-grid { grid-template-columns: 1fr; gap: 42px; }.compliance-proof { max-width: 620px; }.compliance-chain, .compliance-standard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.compliance-heading { align-items: flex-start; flex-direction: column; }.cookie-banner { align-items: flex-start; flex-direction: column; gap: 14px; }.cookie-banner-actions { width: 100%; justify-content: flex-end; } }
@media (max-width: 640px) { .brand-logo-frame { width: 180px; }.header-inner { height: 88px; }.compliance-hero { padding: 105px 0 70px; }.compliance-hero h1 { font-size: clamp(2.45rem, 13vw, 4rem); }.compliance-thread, .compliance-standards { padding: 74px 0; }.compliance-chain, .compliance-standard-grid { grid-template-columns: 1fr; }.compliance-proof { min-height: 350px; padding: 21px; }.compliance-proof-core { margin-top: 65px; }.compliance-cta .wrap { align-items: flex-start; flex-direction: column; }.cookie-banner { right: 12px; bottom: 12px; width: calc(100% - 24px); padding: 16px; }.cookie-banner-actions { justify-content: stretch; }.cookie-banner-actions button { flex: 1; } }

/* Final readability pass: one predictable burgundy action style, with white
   surfaces used only where a dark CTA would not have enough contrast. */
.btn { background: var(--aomics-burgundy) !important; color: #fff !important; border: 1px solid var(--aomics-burgundy) !important; }
.btn::before { background: linear-gradient(135deg, var(--aomics-burgundy-deep), var(--aomics-burgundy)); }
.btn:hover { color: #fff !important; }
.aomics-home-contact { background: linear-gradient(118deg, #0b5651 0%, #520000 55%, #11655e 100%); color: #fff; }
.aomics-home-contact h2 { color: #fff; }
.aomics-home-contact p { color: rgba(255,255,255,.76); }
.aomics-home-contact .aomics-kicker { color: var(--aomics-sage); }
.aomics-home-contact-actions a:not(.btn) { color: #fff; }
.aomics-home-contact-actions a:not(.btn):hover { color: var(--aomics-sage); }
.aomics-home-contact-actions small { color: rgba(255,255,255,.7); }
.aomics-home-contact-actions .btn { background: #fff !important; color: var(--aomics-burgundy) !important; border-color: #fff !important; }
.aomics-home-contact-actions .btn::before { background: var(--aomics-burgundy); }
.aomics-home-contact-actions .btn:hover { color: #fff !important; }
.about-cta .btn, .editorial-cta .btn, .technology-cta .btn, .compliance-cta .btn,
.resources-request .btn, .careers-cta .btn { background: #fff !important; color: var(--aomics-burgundy) !important; border-color: #fff !important; }
.about-cta .btn::before, .editorial-cta .btn::before, .technology-cta .btn::before,
.compliance-cta .btn::before, .resources-request .btn::before, .careers-cta .btn::before { background: var(--aomics-burgundy); }
.about-cta .btn:hover, .editorial-cta .btn:hover, .technology-cta .btn:hover, .compliance-cta .btn:hover,
.resources-request .btn:hover, .careers-cta .btn:hover { color: #fff !important; }

/* The consent surface follows the compact Adaptrials card: readable copy,
   stacked controls and a stable footprint on every public route. */
.cookie-banner { left: 24px; right: auto; bottom: 12px; display: block; width: min(448px, calc(100% - 48px)); padding: 20px; border-radius: 16px; }
.cookie-banner-copy { gap: 0; }
.cookie-banner-mark { display: none; }
.cookie-banner-copy p { max-width: none; font-size: 13px; line-height: 1.55; }
.cookie-banner-copy strong { font-size: 16px; }
.cookie-banner-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 16px; }
.cookie-banner-actions button { min-height: 40px; padding: 10px 14px; font-size: 13px; }
@media (max-width: 640px) {
  .cookie-banner { left: 12px; width: calc(100% - 24px); padding: 18px; }
  .cookie-banner-actions { grid-template-columns: 1fr 1fr; }
}

/* The requested homepage title uses a single black → burgundy sweep across
   both lines, including the emphasized word, instead of a separate gradient. */
.aomics-hero-copy h1 .type-line { background-image: linear-gradient(110deg, #050505 0%, #7c0000 100%); }
.aomics-hero-copy h1 .type-line em { background: none; -webkit-text-fill-color: inherit; color: inherit; }

/* Wider resting header for the full lockup, while retaining the compact
   burgundy state after scroll. */
.header-inner { max-width: 1480px; }
.brand-logo-frame { width: 290px; }
@media (max-width: 1180px) { .brand-logo-frame { width: 240px; } }
@media (max-width: 1023px) { .brand-logo-frame { width: 220px; } }
@media (max-width: 640px) { .brand-logo-frame { width: 190px; } }

/* Light-surface primary actions remain burgundy-on-white until hover. */
.aomics-hero-actions .btn, .service-atlas .btn-outline { background: #fff !important; color: var(--aomics-burgundy) !important; border-color: var(--aomics-burgundy) !important; }
.aomics-hero-actions .btn::before, .service-atlas .btn-outline::before { background: var(--aomics-burgundy); }
.aomics-hero-actions .btn:hover, .service-atlas .btn-outline:hover { background: var(--aomics-burgundy) !important; color: #fff !important; }

/* Final Aomics palette: burgundy scale only (plus white and black neutrals). */
:root {
  --aomics-burgundy: #7c0000;
  --aomics-burgundy-2: #891919;
  --aomics-burgundy-3: #963232;
  --aomics-burgundy-4: #a34c4c;
  --aomics-burgundy-5: #b06666;
  --aomics-burgundy-6: #bd7f7f;
  --aomics-burgundy-7: #ca9999;
  --aomics-burgundy-8: #d7b2b2;
  --aomics-burgundy-9: #e4cccc;
  --aomics-burgundy-10: #f1e5e5;
  --aomics-burgundy-deep: #520000;
  --aomics-sage: #bd7f7f;
  --aomics-teal: #891919;
  --aomics-teal-soft: #d7b2b2;
  --cyan-400: #963232;
  --cyan-500: #891919;
  --cyan-600: #7c0000;
  --teal-400: #a34c4c;
  --teal-500: #963232;
  --teal-600: #891919;
  --violet-400: #a34c4c;
  --violet-500: #891919;
  --bg-base: #fff;
  --bg-surface: #fff;
  --bg-elevated: #f1e5e5;
  --bg-deep: #f1e5e5;
}

/* Preserve the clinical white canvas while replacing former green washes. */
.aomics-hero, .aomics-metrics, .aomics-capabilities, .aomics-trust-band,
.aomics-operating-model, .page-content, .editorial-page, .technology-page,
.contact-page, .compliance-page { background-color: #fff; }
.aomics-hero { background-image: linear-gradient(145deg, #fff 0%, #fff 62%, #f1e5e5 100%) !important; }
.data-stream, .breadcrumb-bar { background: #f1e5e5 !important; }
.aomics-operating-model, .about-signal-band, .about-advisory, .quote-page,
.technology-stack, .compliance-standards { background: linear-gradient(145deg, #fff 0%, #f1e5e5 100%) !important; }
.technology-hero, .editorial-hero, .contact-hero, .contact-success { background: linear-gradient(145deg, #fff 0%, #fff 58%, #f1e5e5 100%) !important; }
.technology-signal-card, .contact-hero-panel, .compliance-proof { background: linear-gradient(145deg, #050505 0%, #520000 52%, #7c0000 100%) !important; }
.technology-platform-card, .resource-card, .career-role, .contact-form,
.faq-cta, .aomics-audience-card { background: linear-gradient(160deg, #fff, #f1e5e5) !important; }
.about-cta, .editorial-cta, .careers-cta, .resources-request, .technology-cta,
.compliance-cta, .contact-platform-strip { background: linear-gradient(116deg, #050505 0%, #891919 52%, #7c0000 100%) !important; }

/* Use the full wordmark at roughly 80% of the expanded header height. */
.brand-logo-frame { width: 320px; height: 96px; }
.brand-logo-dark { width: auto; height: 92px; max-width: 100%; max-height: none; object-fit: contain; }
@media (max-width: 1180px) { .brand-logo-frame { width: 260px; } }
@media (max-width: 1023px) { .brand-logo-frame { width: 230px; height: 82px; }.brand-logo-dark { height: 78px; } }
@media (max-width: 640px) { .brand-logo-frame { width: 200px; height: 76px; }.brand-logo-dark { height: 72px; } }

/* Header reference alignment and homepage surface. */
.aomics-hero { background: linear-gradient(145deg, #fff 0%, #fff 62%, rgba(124,0,0,.055) 100%) !important; }
.aomics-hero-copy h1 { background: linear-gradient(110deg, #050505 0%, #7c0000 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }
.aomics-hero-copy h1 .type-line { display: inline; background: none; -webkit-text-fill-color: inherit; color: inherit; }
.aomics-hero-copy h1 .type-line em { background: none; -webkit-text-fill-color: inherit; color: inherit; }

/* Flag buttons follow the dependency-free SVG treatment used by Adaptrials. */
.lang-btn { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 26px; padding: 3px !important; border: 1px solid rgba(124,0,0,.2) !important; border-radius: 999px !important; }
.flag-icon { display: inline-flex; width: 18px; height: 12px; overflow: hidden; border-radius: 3px; box-shadow: inset 0 0 0 1px rgba(0,0,0,.14); }
.flag-icon svg { display: block; width: 100%; height: 100%; }
.site-header.scrolled .lang-btn { border-color: rgba(255,255,255,.4) !important; }

.footer-quote-button { display: inline-flex; align-items: center; gap: 8px; width: fit-content; padding: 10px 14px; border: 1px solid #fff; border-radius: 9px; background: #fff; color: var(--aomics-burgundy); font-size: 12px; font-weight: 800; cursor: pointer; transition: background .2s ease, color .2s ease, transform .2s ease; }
.footer-quote-button:hover { background: var(--aomics-burgundy-deep); color: #fff; transform: translateY(-1px); }

@media (max-width: 640px) {
  .aomics-hero-copy h1 .type-line { display: block; }
}

/* Contact journey — the CTA pattern is intentionally spacious and decisive,
   while the intake surface gives every enquiry a useful scientific starting
   point instead of routing people into a generic mailbox. */
.contact-page { min-height: calc(100vh - 72px); background: #faf5f5; color: var(--text-primary); }
.contact-hero { padding: 136px 0 92px; background: linear-gradient(145deg, #fff 0%, #faf5f5 58%, rgba(124, 0, 0, .42) 100%); overflow: hidden; }
.contact-hero-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(350px, .9fr); gap: 76px; align-items: center; }
.contact-hero-copy { max-width: 760px; }
.contact-hero-copy h1 { max-width: 760px; margin: 14px 0 22px; color: var(--text-primary); font-size: clamp(2.65rem, 5vw, 5.1rem); line-height: .98; letter-spacing: -.06em; }
.contact-hero-copy h1 { background: linear-gradient(112deg, #050505 8%, #6a1414 50%, var(--aomics-burgundy) 94%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.contact-hero-lead { max-width: 660px; color: var(--text-secondary); font-size: 17px; line-height: 1.75; }
.contact-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; margin-top: 30px; }
.contact-hero-link { color: var(--aomics-burgundy); font-size: 14px; font-weight: 800; text-decoration: none; }
.contact-hero-link span { display: inline-block; margin-left: 5px; transition: transform .2s ease; }
.contact-hero-link:hover span { transform: translate(3px, -3px); }
.contact-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; max-width: 660px; margin-top: 58px; padding-top: 20px; border-top: 1px solid rgba(124, 0, 0, .2); }
.contact-steps div { display: grid; gap: 3px; }
.contact-steps span { color: var(--aomics-burgundy); font: 700 11px 'SF Mono', monospace; }
.contact-steps strong { color: var(--text-primary); font-size: 14px; }
.contact-steps small { color: var(--text-secondary); font-size: 11px; line-height: 1.45; }
.contact-hero-panel { position: relative; min-height: 430px; padding: 28px; border: 1px solid rgba(124, 0, 0, .5); border-radius: 18px; background: linear-gradient(145deg, #050505 0%, #19231b 48%, #7c0000 100%); box-shadow: 0 24px 60px rgba(60, 20, 20, .22); color: #fff; overflow: hidden; }
.contact-hero-panel::after { content: ''; position: absolute; right: -90px; bottom: -110px; width: 290px; height: 290px; border: 1px solid rgba(124, 0, 0, .35); border-radius: 50%; box-shadow: 0 0 0 26px rgba(124, 0, 0, .06), 0 0 0 54px rgba(124, 0, 0, .04); }
.contact-panel-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 18px; border-bottom: 1px solid rgba(255, 255, 255, .18); color: var(--aomics-sage); font: 700 10px 'SF Mono', monospace; letter-spacing: .09em; }
.contact-panel-top b { color: #fff; font-weight: 700; }
.contact-panel-orbit { position: relative; display: grid; place-items: center; width: 180px; height: 180px; margin: 40px auto 24px; border: 1px solid rgba(124, 0, 0, .42); border-radius: 50%; }
.contact-panel-orbit::before, .contact-panel-orbit::after { content: ''; position: absolute; inset: 23px; border: 1px solid rgba(124, 0, 0, .25); border-radius: 50%; }
.contact-panel-orbit::after { inset: 52px; border-color: rgba(255, 255, 255, .2); }
.contact-panel-orbit span { z-index: 1; display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: linear-gradient(145deg, #fff, var(--aomics-sage)); color: var(--aomics-burgundy); font-size: 26px; font-weight: 900; box-shadow: 0 0 30px rgba(124, 0, 0, .38); }
.contact-panel-orbit i { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--aomics-sage); box-shadow: 0 0 14px var(--aomics-sage); }
.contact-panel-orbit i:nth-of-type(1) { top: 14px; left: 83px; }.contact-panel-orbit i:nth-of-type(2) { right: 12px; bottom: 43px; background: #fff; }.contact-panel-orbit i:nth-of-type(3) { bottom: 17px; left: 45px; background: #c98989; }
.contact-hero-panel h2 { position: relative; z-index: 1; margin: 0 0 10px; color: #fff; font-size: 27px; letter-spacing: -.04em; }
.contact-hero-panel > p { position: relative; z-index: 1; max-width: 390px; color: rgba(255, 255, 255, .74); font-size: 14px; line-height: 1.7; }
.contact-panel-metrics { position: relative; z-index: 1; display: flex; gap: 26px; margin-top: 24px; }
.contact-panel-metrics span { display: grid; gap: 2px; color: rgba(255, 255, 255, .64); font-size: 10px; line-height: 1.35; text-transform: uppercase; letter-spacing: .06em; }
.contact-panel-metrics b { color: var(--aomics-sage); font-size: 19px; letter-spacing: -.04em; }
.contact-intake { padding: 108px 0; background: #fff; }
.contact-intake-grid { display: grid; grid-template-columns: minmax(250px, .76fr) minmax(0, 1.24fr); gap: 78px; align-items: start; }
.contact-intake-brief { position: sticky; top: 120px; }
.contact-intake-brief h2 { max-width: 410px; margin: 14px 0 15px; color: var(--text-primary); font-size: clamp(2rem, 3.5vw, 3.25rem); line-height: 1.03; letter-spacing: -.05em; }
.contact-intake-brief > p { max-width: 430px; color: var(--text-secondary); line-height: 1.7; }
.contact-direct-list { display: grid; gap: 9px; margin-top: 34px; }
.contact-direct-list a, .contact-direct-list button { display: grid; grid-template-columns: 30px 1fr auto; gap: 12px; align-items: center; width: 100%; padding: 14px 0; border: 0; border-top: 1px solid rgba(124, 0, 0, .15); background: transparent; color: var(--text-primary); text-align: left; text-decoration: none; cursor: pointer; }
.contact-direct-list a:last-child, .contact-direct-list button:last-child { border-bottom: 1px solid rgba(124, 0, 0, .15); }
.contact-direct-list a > span, .contact-direct-list button > span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; background: rgba(124, 0, 0, .38); color: var(--aomics-burgundy); font-weight: 800; }
.contact-direct-list strong, .contact-direct-list small { display: block; }
.contact-direct-list strong { font-size: 13px; }.contact-direct-list small { margin-top: 2px; color: var(--text-secondary); font-size: 11px; line-height: 1.4; }.contact-direct-list b { color: var(--aomics-burgundy); font-size: 17px; transition: transform .2s ease; }.contact-direct-list a:hover b, .contact-direct-list button:hover b { transform: translateX(4px); }
.contact-form { padding: 30px; border: 1px solid rgba(124, 0, 0, .16); border-radius: 18px; background: linear-gradient(150deg, #fff, rgba(124, 0, 0, .15)); box-shadow: 0 18px 44px rgba(60, 20, 20, .08); }
.contact-form-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 28px; padding-bottom: 18px; border-bottom: 1px solid rgba(124, 0, 0, .14); }.contact-form-heading span { color: var(--aomics-burgundy); font: 700 11px 'SF Mono', monospace; }.contact-form-heading p { margin: 0; color: var(--text-secondary); font-size: 12px; }
.contact-form fieldset { padding: 0; border: 0; }.contact-form legend { margin-bottom: 14px; color: var(--text-primary); font-size: 16px; font-weight: 800; }
.contact-intent-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.contact-intent-grid button { position: relative; display: grid; gap: 5px; min-height: 126px; padding: 15px; border: 1px solid rgba(124, 0, 0, .14); border-radius: 11px; background: rgba(255, 255, 255, .72); color: var(--text-primary); text-align: left; cursor: pointer; transition: border-color .2s ease, background .2s ease, transform .2s ease; }
.contact-intent-grid button:hover { transform: translateY(-2px); border-color: rgba(124, 0, 0, .4); }.contact-intent-grid button.selected { border-color: var(--aomics-burgundy); background: rgba(124, 0, 0, .35); box-shadow: inset 0 0 0 1px rgba(124, 0, 0, .12); }.contact-intent-grid button > span { color: var(--aomics-burgundy); font: 700 10px 'SF Mono', monospace; }.contact-intent-grid strong { padding-right: 20px; font-size: 13px; line-height: 1.2; }.contact-intent-grid small { max-width: 245px; color: var(--text-secondary); font-size: 11px; line-height: 1.45; }.contact-intent-grid button > b { position: absolute; top: 13px; right: 14px; color: var(--aomics-burgundy); font-size: 16px; }
.contact-form-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; margin-top: 26px; }.contact-form-fields label { display: grid; gap: 7px; color: var(--text-primary); font-size: 12px; font-weight: 700; }.contact-form-fields label:nth-child(4) { grid-column: 1 / -1; }.contact-form input:not([type="checkbox"]), .contact-form textarea { width: 100%; padding: 12px 13px; border: 1px solid rgba(124, 0, 0, .18); border-radius: 8px; background: rgba(255, 255, 255, .88); color: var(--text-primary); font: inherit; font-size: 13px; outline: none; transition: border-color .2s ease, box-shadow .2s ease; }.contact-form textarea { resize: vertical; min-height: 112px; }.contact-form input:focus, .contact-form textarea:focus { border-color: var(--aomics-burgundy); box-shadow: 0 0 0 3px rgba(124, 0, 0, .38); }.contact-form input::placeholder, .contact-form textarea::placeholder { color: #87928b; }
.contact-consent { display: flex; gap: 9px; align-items: flex-start; margin-top: 18px; color: var(--text-secondary); font-size: 11px; line-height: 1.5; }.contact-consent input { flex: 0 0 auto; width: 15px; height: 15px; margin-top: 1px; accent-color: var(--aomics-burgundy); }
.contact-form-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(124, 0, 0, .14); }.contact-form-footer small { color: var(--text-secondary); font-size: 11px; line-height: 1.4; }.contact-form-footer .btn { flex: 0 0 auto; }
.contact-platform-strip { padding: 54px 0; background: linear-gradient(116deg, #050505 0%, #3a0000 50%, #7c0000 100%); color: #fff; }.contact-platform-strip > .wrap > .aomics-kicker { color: var(--aomics-sage); }.contact-platform-strip > .wrap > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 18px; }.contact-platform-strip span { display: grid; gap: 5px; padding: 17px 18px; border: 1px solid rgba(124, 0, 0, .28); border-radius: 10px; color: rgba(255, 255, 255, .72); font-size: 12px; line-height: 1.45; }.contact-platform-strip b { color: #fff; font-size: 14px; }
.contact-success { display: grid; min-height: calc(100vh - 72px); place-items: center; padding: 120px 0 80px; background: linear-gradient(145deg, #fff 0%, #faf5f5 58%, rgba(124, 0, 0, .42) 100%); }.contact-success-card { max-width: 720px; padding: 52px; border: 1px solid rgba(124, 0, 0, .16); border-radius: 20px; background: #fff; box-shadow: 0 22px 55px rgba(60, 20, 20, .12); text-align: center; }.contact-success-mark { display: grid; place-items: center; width: 58px; height: 58px; margin: 0 auto 24px; border-radius: 50%; background: var(--aomics-burgundy); color: #fff; font-size: 28px; font-weight: 800; }.contact-success-card h1 { margin: 14px 0; color: var(--text-primary); font-size: clamp(2rem, 4vw, 3.6rem); line-height: 1; letter-spacing: -.05em; }.contact-success-card > p:not(.aomics-kicker) { color: var(--text-secondary); line-height: 1.7; }.contact-success-actions { display: flex; justify-content: center; align-items: center; gap: 20px; margin-top: 30px; }.contact-text-button { border: 0; background: transparent; color: var(--aomics-burgundy); font-size: 13px; font-weight: 800; cursor: pointer; }
@media (max-width: 900px) { .contact-hero-grid, .contact-intake-grid { grid-template-columns: 1fr; gap: 44px; }.contact-hero-panel { max-width: 620px; }.contact-intake-brief { position: static; }.contact-intake-brief > p { max-width: 620px; }.contact-direct-list { max-width: 620px; }.contact-platform-strip > .wrap > div { grid-template-columns: 1fr; } }
@media (max-width: 640px) { .contact-hero { padding: 106px 0 72px; }.contact-hero-copy h1 { font-size: clamp(2.45rem, 13vw, 4rem); }.contact-hero-lead { font-size: 15px; }.contact-steps { margin-top: 40px; }.contact-hero-panel { min-height: 390px; padding: 22px; }.contact-intake { padding: 76px 0; }.contact-form { padding: 20px; }.contact-intent-grid, .contact-form-fields { grid-template-columns: 1fr; }.contact-form-fields label:nth-child(4) { grid-column: auto; }.contact-form-heading { display: grid; gap: 8px; }.contact-form-footer { align-items: flex-start; flex-direction: column; }.contact-success-card { padding: 34px 22px; }.contact-success-actions { align-items: stretch; flex-direction: column; } }

/* Final brand pass: no green accents remain in active surfaces. Every former
   teal/sage treatment resolves to the burgundy scale supplied by the brand. */
.site-header { background: linear-gradient(112deg, rgba(255,255,255,.98), rgba(241,229,229,.72) 58%, rgba(124,0,0,.12)) !important; }
.site-header.scrolled { background: linear-gradient(112deg, #520000, #7c0000 58%, #891919) !important; }
.header-cta { background: linear-gradient(125deg, #7c0000, #891919) !important; color: #fff !important; }
.site-header.scrolled .header-cta { background: #fff !important; color: #7c0000 !important; }
.hero-window-bar { background: #520000 !important; color: #f1e5e5 !important; border-color: rgba(241,229,229,.26) !important; }
.hero-signal-card, .hero-workspace-tile { background: #f1e5e5 !important; border-color: rgba(124,0,0,.2) !important; color: var(--text-primary); }
.hero-workspace-tile:hover { background: #e4cccc !important; border-color: rgba(124,0,0,.38) !important; }
.service-atlas-orbit { border-color: rgba(124,0,0,.4) !important; }
.profile-photo-wrap { background: linear-gradient(145deg, #e4cccc, #f1e5e5) !important; }
.profile-index, .quote-brief-list b, .quote-progress button.active { color: var(--aomics-burgundy) !important; }
.quote-page, .page-hero, .technology-hero, .editorial-hero, .compliance-hero,
.contact-hero, .contact-success { background: linear-gradient(145deg, #fff 0%, #fff 58%, #f1e5e5 100%) !important; }
.quote-fields input:not([type="checkbox"]), .quote-fields select, .quote-fields textarea,
.domain-grid button { background: #fff !important; border-color: rgba(124,0,0,.2) !important; }
.quote-fields input:focus, .quote-fields select:focus, .quote-fields textarea:focus { outline-color: rgba(124,0,0,.16) !important; border-color: var(--aomics-burgundy) !important; }
.quote-progress button.active { border-bottom-color: var(--aomics-burgundy-2) !important; }
.quote-progress button.active span, .quote-progress button.complete span,
.quote-success-mark { background: #e4cccc !important; border-color: #ca9999 !important; color: var(--aomics-burgundy) !important; }
.technology-hero h1::first-line, .aomics-hero-copy h1 .type-line { background-image: linear-gradient(110deg, #050505 0%, #7c0000 100%) !important; }
.technology-signal-bar span, .compliance-proof-line span { background: linear-gradient(to top, #7c0000, #e4cccc) !important; }
.technology-stack, .compliance-standards, .aomics-audience, .aomics-operating-model,
.about-signal-band, .about-advisory { background: linear-gradient(145deg, #fff 0%, #f1e5e5 100%) !important; }
.aomics-stage-status { background: rgba(241,229,229,.72) !important; border-color: rgba(124,0,0,.2) !important; }
.aomics-stage-status strong { color: var(--aomics-burgundy) !important; }
.domain-grid button.selected { background: #e4cccc !important; border-color: rgba(124,0,0,.48) !important; }
.technology-cta, .editorial-cta, .compliance-cta, .about-cta, .careers-cta,
.resources-request, .contact-platform-strip { background: linear-gradient(116deg, #050505 0%, #891919 52%, #7c0000 100%) !important; }
.contact-hero-panel, .compliance-proof, .technology-signal-card { background: linear-gradient(145deg, #050505 0%, #520000 52%, #7c0000 100%) !important; border-color: rgba(241,229,229,.28) !important; }
.contact-panel-orbit, .compliance-proof-core span { border-color: rgba(241,229,229,.42) !important; }
.contact-panel-orbit span { background: linear-gradient(145deg, #fff, #e4cccc) !important; color: var(--aomics-burgundy) !important; }
.contact-panel-orbit i { background-color: #e4cccc !important; box-shadow: 0 0 14px #e4cccc !important; }
.contact-panel-metrics b, .contact-panel-top { color: #e4cccc !important; }
.contact-panel-top, .contact-platform-strip > .wrap > .aomics-kicker { color: #e4cccc !important; }
.contact-platform-strip span { border-color: rgba(241,229,229,.3) !important; }
.about-signal-band, .about-advisory, .technology-platform-card, .resource-card,
.career-role, .contact-form, .faq-cta, .aomics-audience-card { border-color: rgba(124,0,0,.18) !important; }

/* Contrast correction for the homepage and dark brand CTAs. */
body { background: #fff !important; color: #1c1010; }
.aomics-hero { background: #fff !important; background-image: linear-gradient(145deg, #fff 0%, #fff 70%, #f1e5e5 100%) !important; }
.aomics-hero-visual { background: linear-gradient(145deg, #fff 0%, #fff 58%, #f1e5e5 100%) !important; border-color: rgba(124,0,0,.2) !important; box-shadow: 0 24px 60px rgba(124,0,0,.12) !important; color: #1c1010; }
.hero-window-body, .hero-workspace-heading h2, .hero-workspace-tile strong { color: #1c1010 !important; }
.hero-workspace-heading p, .hero-signal-title, .hero-signal-axis, .hero-workspace-tile small, .hero-workspace-footer { color: #6d4c4c !important; }
.hero-reviewed { background: #e4cccc !important; border-color: #ca9999 !important; color: #7c0000 !important; }
.hero-signal-card, .hero-workspace-tile { background: #f1e5e5 !important; }
.about-cta h2, .about-cta p:not(.aomics-kicker), .about-cta .aomics-kicker,
.editorial-cta h2, .editorial-cta p:not(.aomics-kicker), .technology-cta h2,
.technology-cta p:not(.aomics-kicker), .compliance-cta h2, .compliance-cta p:not(.aomics-kicker),
.careers-cta h2, .careers-cta p:not(.aomics-kicker), .resources-request h2,
.resources-request p:not(.aomics-kicker) { color: #fff !important; }
.about-cta .aomics-kicker, .editorial-cta .aomics-kicker, .technology-cta .aomics-kicker,
.compliance-cta .aomics-kicker, .careers-cta .aomics-kicker, .resources-request .aomics-kicker { color: #e4cccc !important; }

/* Homepage hero headline — layered brand treatment.
   Lead copy sits in near-black ink for legibility; the emphasis word is solid
   brand; the closing phrase carries a refined burgundy→rust text gradient with
   a solid brand fallback for browsers without reliable text clipping. */
.aomics-hero-copy h1,
.aomics-hero-copy h1 .type-line {
  background-image: none !important;
  background-clip: initial !important;
  -webkit-background-clip: initial !important;
  color: #1c1010 !important;
  -webkit-text-fill-color: #1c1010 !important;
}
.aomics-hero-copy h1 .type-line em {
  font-style: normal;
  background-image: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  color: #7c0000 !important;
  -webkit-text-fill-color: #7c0000 !important;
}
.aomics-hero-copy h1 .hero-title-grad {
  color: #7c0000 !important;
  -webkit-text-fill-color: #7c0000 !important;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .aomics-hero-copy h1 .hero-title-grad {
    background-image: linear-gradient(102deg, #7c0000 0%, #9e142b 52%, #c04a33 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
  }
}

/* Canonical action treatment: every primary action follows the same
   “Scope this work” outline/hover behavior across light and dark surfaces. */
.btn, .header-cta, .footer-quote-button {
  background: #fff !important;
  color: #7c0000 !important;
  border: 1px solid #7c0000 !important;
  box-shadow: 0 8px 22px rgba(124,0,0,.12) !important;
}
/* The old cyan/teal design faded this overlay in on hover to shift the
   background gradient; .btn:hover now sets the background directly, so the
   overlay is purely redundant — and, worse, it sits (position: absolute,
   inset: 0) on top of any button label that isn't wrapped in a <span>
   (".btn span" is the only thing given z-index: 1 above it), which is why
   "Explore our services" / "Request a quote" and similar plain-text .btn-glow
   buttons went blank on hover while "Scope this work" (.btn-outline, whose
   ::before is already display: none) did not. Hiding it here matches that
   outline treatment for every .btn variant. */
.btn::before { display: none !important; }
.btn:hover, .header-cta:hover, .footer-quote-button:hover {
  background: #7c0000 !important;
  color: #fff !important;
  border-color: #7c0000 !important;
  box-shadow: 0 12px 28px rgba(124,0,0,.24) !important;
}
.btn-quiet { background: #fff !important; color: #7c0000 !important; border-color: #7c0000 !important; box-shadow: none !important; }
.btn-quiet:hover { background: #7c0000 !important; color: #fff !important; }
.cookie-accept { background: #fff !important; color: #7c0000 !important; border-color: #7c0000 !important; }
.cookie-accept:hover { background: #7c0000 !important; color: #fff !important; }

/* Keep the high-specificity navigation hover rule in lockstep with the
   “Scope this work” interaction instead of reverting to the old bone tone. */
.site-header.scrolled .header-cta:hover,
.aomics-hero-actions .btn:hover,
.service-atlas .btn-outline:hover,
.footer-quote-button:hover {
  background: #7c0000 !important;
  color: #fff !important;
  border-color: #7c0000 !important;
}

/* Header wordmark matches the footer wordmark's own size exactly (.footer-brand
   img is a fixed 208px wide, no breakpoint scaling — line ~1050), rather than
   scaling with viewport width. 97px height = 208px / the logo file's own ratio
   (2091x974 ≈ 2.147:1). One size at every breakpoint, same as the footer;
   scrolling still shrinks to the compact favicon mark.
   !important is required: the original ".brand img" rule (line ~80, height:
   36px) is a class+type selector, which outranks a bare ".brand-logo-dark"/
   ".brand-logo-white" class selector regardless of source order — without it
   the logo silently renders at 36px no matter what is set here. */
.header-inner { height: 128px; }
.brand-logo-frame { width: 208px; height: 97px; }
.brand-logo-dark { width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: contain; }
.site-header.scrolled .header-inner { height: 72px; }
.site-header.scrolled .brand-logo-frame { width: 58px; height: 58px; }
.site-header.scrolled .brand-logo-white { width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: contain; }
.aomics-hero { padding-top: 152px; }

/* --------------------------------------------------------------------------
   Light pre-footer CTA bands for About, Contact, Blogs and News & Updates.
   Replaces the shared dark burgundy→black gradient (see the earlier
   ".about-cta, .editorial-cta, … { background: … !important }" block) with a
   clean white treatment so these bands read against the burgundy footer.
   -------------------------------------------------------------------------- */
.about-cta,
.editorial-cta,
.contact-platform-strip {
  background: #fff !important;
  background-image: linear-gradient(145deg, #fff 0%, #fff 60%, #faf5f5 100%) !important;
  border-top: 1px solid rgba(124, 0, 0, .12);
}
.about-cta h2,
.editorial-cta h2,
.contact-platform-strip b {
  color: var(--text-primary) !important;
}
.about-cta p:not(.aomics-kicker),
.editorial-cta p:not(.aomics-kicker),
.contact-platform-strip span {
  color: var(--text-secondary) !important;
}
.about-cta .aomics-kicker,
.editorial-cta .aomics-kicker,
.contact-platform-strip > .wrap > .aomics-kicker {
  color: var(--aomics-burgundy) !important;
}
.contact-platform-strip span {
  background: #fff;
  border-color: rgba(124, 0, 0, .16) !important;
}

/* ═══════════════════════════════════════════════════════════════
   Snow-white app background (major surface pass, 2026-09-07).
   The page canvas is snow (#FFFAFA); content cards keep their own
   surfaces. Header loses its warm-cream tint when not scrolled.
   ═══════════════════════════════════════════════════════════════ */
:root { --snow: #fffafa; }
html, body { background: var(--snow) !important; }
body { color: #1c1010; }
main, .page-main, .react-root, #root, .site-main { background: var(--snow); }
.site-header:not(.scrolled) {
  background: rgba(255, 250, 250, .94) !important;
  border-bottom-color: rgba(124, 0, 0, .10) !important;
  box-shadow: 0 8px 26px rgba(54, 18, 12, .06) !important;
}
.aomics-hero {
  background: var(--snow) !important;
  background-image: linear-gradient(150deg, var(--snow) 0%, var(--snow) 72%, #f7ecec 100%) !important;
}
.aomics-hero-visual, .aomics-hero-visual.is-dashboard { background: var(--snow) !important; }
/* Former cream section fills → snow, so large surfaces read clean white. */
.section-soft, .bg-soft, .aomics-band, .editorial-cta, .contact-platform-strip,
.resources-hero, .about-hero, .service-atlas, .aomics-audience {
  background-color: var(--snow) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   ADAPTRIALS-ADAPTED FORMATTING  (2026-09-07)
   Ports the Adaptrials welcome-page formatting system — Geist typography, the
   at-rest header boundary treatment, shadcn-style button shape/size, and the
   compact footer type scale. Aomics brand colours (#7c0000 + rose tints) and
   brand surfaces (dark scrolled header, burgundy footer) are kept as-is.
   ═══════════════════════════════════════════════════════════════════════════ */
:root {
  --font-sans: 'Geist', ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'Geist Mono', ui-monospace, 'SF Mono', 'Fira Code', monospace;
  --radius: 0.75rem;
}

/* 1 — Typography ---------------------------------------------------------- */
body, input, button, select, textarea,
.btn, .header-cta, .footer-quote-button, .aomics-hero-secondary {
  font-family: var(--font-sans);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6 { font-family: var(--font-sans); letter-spacing: -0.021em; }
/* Mono eyebrows / labels, the way Adaptrials sets small caps in Geist Mono */
.aomics-kicker, .aomics-hero-kicker, .kicker-pill, .editorial-label,
.aomics-detail-label, .section-number, .service-atlas-index, .profile-label,
.quote-step-hint, .biz-updated, .footer-col h4, .career-detail-grid h4,
.technology-layer > span, .compliance-heading > span, .aomics-capability-number,
.aomics-stage-line button i {
  font-family: var(--font-mono);
}
/* Body / lead copy — text-base → text-lg, leading-relaxed */
.aomics-hero-lead, .biz-hero p:not(.kicker-pill):not(.biz-updated),
.aomics-section-heading p, .service-atlas-copy > p:not(.service-atlas-index) {
  font-size: 1.075rem; line-height: 1.65;
}

/* 2 — Header boundary: clean & line-free at rest, subtle only on scroll --- */
.site-header:not(.scrolled) {
  background: rgba(255, 250, 250, .72) !important;
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  border-bottom: 1px solid transparent !important;
  box-shadow: none !important;
}
.site-header.scrolled {
  box-shadow: 0 8px 30px -12px rgba(20, 8, 6, .18) !important;
}

/* 3 — Primary nav links: 14px / medium / rounded pill hover -------------- */
.main-nav > ul > li > .nav-item-row > a,
.main-nav > ul > li > a {
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  padding: 8px 12px !important;
  border-radius: 8px;
  transition: background .15s ease, color .15s ease;
}
.site-header:not(.scrolled) .main-nav > ul > li > .nav-item-row > a:hover,
.site-header:not(.scrolled) .main-nav > ul > li > a:hover {
  background: rgba(124, 0, 0, .06);
  color: var(--aomics-burgundy) !important;
}

/* 4 — Buttons: shadcn geometry (rounded-md, 14px/medium, compact) -------- */
.btn, .btn-glow, .btn-outline, .header-cta, .footer-quote-button, .biz-chip {
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}
.btn, .btn-glow, .btn-outline, .footer-quote-button { padding: 10px 18px !important; gap: 8px; }
.header-cta { padding: 9px 15px !important; }
.aomics-hero-actions .btn, .aomics-hero-actions .btn-glow,
.service-atlas .btn-outline { padding: 11px 20px !important; }
/* solid burgundy primary */
.btn.btn-glow, .aomics-hero-actions .btn.btn-glow, .footer-quote-button {
  background: var(--aomics-burgundy) !important;
  color: #fff !important;
  border: 1px solid var(--aomics-burgundy) !important;
  box-shadow: 0 1px 2px rgba(124, 0, 0, .14) !important;
}
.btn.btn-glow:hover, .aomics-hero-actions .btn.btn-glow:hover,
.footer-quote-button:hover { background: #6a0000 !important; }
/* outline secondary */
.btn.btn-outline, .service-atlas .btn-outline, .aomics-hero-actions .btn:not(.btn-glow) {
  background: #fff !important;
  color: var(--aomics-burgundy) !important;
  border: 1px solid rgba(124, 0, 0, .35) !important;
  box-shadow: 0 1px 2px rgba(124, 0, 0, .06) !important;
}
.btn.btn-outline:hover, .service-atlas .btn-outline:hover,
.aomics-hero-actions .btn:not(.btn-glow):hover {
  background: rgba(124, 0, 0, .06) !important;
  border-color: var(--aomics-burgundy) !important;
  color: var(--aomics-burgundy) !important;
}

/* 5 — Footer: keep the burgundy surface, adopt the compact Adaptrials type - */
.footer-col h4 {
  font-size: .7rem !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  margin-bottom: 14px !important;
}
.footer-col ul li a, .footer-brand p { font-size: 13px !important; }
.footer-bottom p, .footer-legal, .footer-badges span { font-size: .72rem !important; }
.footer-badges span { border-radius: 8px !important; }

/* 6 — Container width parity (Adaptrials max-w-7xl) --------------------- */
.header-inner { max-width: 1280px !important; }

/* ═══════════════════════════════════════════════════════════════
   7 — White surface pass  (Adaptrials parity: pages sit on white,
       brand colour appears only on element edges / hairlines)
   ═══════════════════════════════════════════════════════════════ */
:root {
  --bg-deep: #ffffff;
  --bg-base: #ffffff;
  --bg-surface: #ffffff;
  --bg-elevated: #f8f3f3;
  --bg-glass: rgba(255, 255, 255, 0.92);
  --border-subtle: rgba(124, 0, 0, 0.16);
  --border-glow: rgba(124, 0, 0, 0.34);
  --shadow-glow: 0 10px 34px rgba(124, 0, 0, 0.06);
  --shadow-card: 0 6px 20px rgba(60, 20, 20, 0.06);
}

/* page + section backgrounds → flat white, no gradients / tints */
body,
.aomics-hero, .hero-gradient-bottom,
.aomics-metrics, .aomics-capabilities, .aomics-trust-band, .aomics-operating-model,
.page-content, .page-hero, .error-hero, .service-atlas,
.breadcrumb-bar, .data-stream, .aomics-ticker,
.react-loading, .react-error {
  background: #fff !important;
  background-image: none !important;
}
.site-header, .site-header.scrolled { background: rgba(255, 255, 255, 0.9) !important; background-image: none !important; }

/* cards / panels: white fill + brand hairline edge */
.metric-card, .aomics-capability-row, .aomics-capability-detail, .trust-card,
.aomics-stage-detail, .aomics-stage-line button, .aomics-hero-visual,
.hero-signal-card, .hero-workspace-tile, .blog-card, .legacy-budget-card {
  background: #fff !important;
  background-image: none !important;
  border: 1px solid var(--border-subtle) !important;
  box-shadow: var(--shadow-card);
}
.aomics-capability-row:hover, .aomics-capability-row.is-open,
.aomics-stage-line button:hover, .hero-workspace-tile:hover {
  background: var(--bg-elevated) !important;
  border-color: var(--border-glow) !important;
}
.aomics-stage-line button.is-selected {
  background: #fff !important;
  border-color: var(--cyan-600) !important;
  box-shadow: inset 3px 0 0 var(--cyan-600), var(--shadow-card) !important;
}

/* pills / tags / status chips: outline, not fill */
.aomics-hero-trust span, .aomics-tag-list span, .hero-reviewed, .aomics-stage-status {
  background: #fff !important;
  border: 1px solid var(--border-subtle) !important;
  color: var(--cyan-600) !important;
}
.aomics-stage-status strong, .trust-card strong, .aomics-kicker { color: var(--cyan-600); }

/* fake window chrome + gradient text → light / solid */
.hero-window-bar { background: #f6efef !important; color: var(--text-muted) !important; border-bottom: 1px solid var(--border-subtle); }
.metric-value { background: none !important; -webkit-text-fill-color: var(--cyan-600); color: var(--cyan-600) !important; }

/* dark contrast blocks → white with a single brand top edge */
.aomics-home-contact {
  background: #fff !important; background-image: none !important; color: var(--text-primary) !important;
  border: 1px solid var(--border-subtle); border-top: 3px solid var(--cyan-600);
}
.aomics-home-contact p, .aomics-home-contact-actions small { color: var(--text-secondary) !important; }
.aomics-home-contact-actions a:not(.btn) { color: var(--cyan-600) !important; }

.site-footer { background: #fff !important; background-image: none !important; color: var(--text-secondary) !important; border-top: 3px solid var(--cyan-600); }
.footer-brand p, .footer-col ul li a, .footer-bottom p { color: var(--text-secondary) !important; }
.footer-col h4 { color: var(--text-primary) !important; }
.footer-social a { background: #fff !important; border: 1px solid var(--border-subtle) !important; color: var(--cyan-600) !important; }
.footer-social a:hover { background: var(--cyan-600) !important; color: #fff !important; }

/* scrollbar on white */
::-webkit-scrollbar-track { background: #fff; }
::-webkit-scrollbar-thumb { background: #e7dede; }
::-webkit-scrollbar-thumb:hover { background: #d3c3c3; }

/* the primary CTA stays the one intentional brand fill */
.header-cta, .btn { background: var(--cyan-600) !important; background-image: none !important; color: #fff !important; border: 1px solid var(--cyan-600) !important; }
.header-cta:hover, .btn:hover { background: #5f0000 !important; }

/* footer: very light + world-map watermark (parity with old WordPress footer) */
.site-footer {
  background: #fcfbfb url("/assets/world-map.svg") no-repeat center 58% !important;
  background-size: clamp(760px, 94%, 1220px) auto !important;
  border-top: 1px solid var(--border-subtle) !important;
}
.site-footer > * { position: relative; }

/* ── v2: subtle dotted world-map footer + line-free header ─────────────── */
.site-footer {
  background: #fcfbfb url("/assets/world-map.svg") no-repeat center 46% !important;
  background-size: min(940px, 78%) auto !important;
  border-top: 1px solid rgba(124, 0, 0, 0.10) !important;
}
.site-footer > * { position: relative; z-index: 1; }

.site-header,
.site-header:not(.scrolled),
.site-header.scrolled {
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
.site-header.scrolled { box-shadow: 0 10px 30px -18px rgba(20, 8, 6, 0.22) !important; }
.data-stream, .aomics-ticker, .breadcrumb-bar { border-top: 0 !important; border-bottom: 0 !important; }

/* ═══════════════════════════════════════════════════════════════════════════
   v3 — scrolled header stays white & legible · header/hero fully line-free ·
   footer text = dark brand, disclaimer = brand fill, map ~80% transparent
   ═══════════════════════════════════════════════════════════════════════════ */

/* 1 — scrolled header: identical white treatment to the at-rest header ----- */
.site-header, .site-header:not(.scrolled), .site-header.scrolled {
  background: #ffffff !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
}
.site-header.scrolled .brand,
.site-header.scrolled .main-nav ul li a,
.site-header.scrolled .main-nav > ul > li > .nav-item-row > a,
.site-header.scrolled .main-nav > ul > li > a,
.site-header.scrolled .nav-sub-toggle,
.site-header.scrolled .lang-btn,
.site-header.scrolled .lang-divider { color: #1c1010 !important; }
.site-header.scrolled .main-nav ul li a:hover,
.site-header.scrolled .main-nav > ul > li > .nav-item-row > a:hover,
.site-header.scrolled .nav-sub-toggle:hover { color: #7c0000 !important; }
.site-header.scrolled .nav-toggle span { background: #1c1010 !important; }
.site-header.scrolled .header-cta { background: #7c0000 !important; background-image: none !important; color: #fff !important; border-color: #7c0000 !important; }
.site-header.scrolled .lang-btn { border-color: rgba(124, 0, 0, .25) !important; }
.site-header.scrolled .lang-btn.active { background: #7c0000 !important; color: #fff !important; border-color: #7c0000 !important; }
.site-header.scrolled .lang-divider { color: rgba(124, 0, 0, .4) !important; }
.site-header.scrolled .sub-menu { background: #fff !important; background-image: none !important; border-color: rgba(124, 0, 0, .14) !important; }
.site-header.scrolled .sub-menu li a { color: #1c1010 !important; }
.site-header.scrolled .sub-menu li a:hover { color: #7c0000 !important; }
/* logo: full wordmark at rest → compact colour favicon (aomics-mark.png) once scrolled */
.site-header.scrolled .brand-logo-dark { opacity: 0 !important; visibility: hidden !important; }
.site-header.scrolled .brand-logo-white {
  display: block !important; opacity: 1 !important; visibility: visible !important;
  height: 46px !important; width: 46px !important; max-height: none !important; object-fit: contain !important;
}

/* 2 — header + hero: completely white, zero divider ---------------------- */
.aomics-hero, .aomics-hero.reveal {
  background: #ffffff !important;
  background-image: none !important;
}
.aomics-hero::before, .aomics-hero::after, .hero-gradient-bottom { background: none !important; }
main, .page-main, #root { background: #ffffff !important; }

/* 3 — footer: dark-brand text, brand-fill disclaimer, faint map ---------- */
.footer-col h4, .footer-brand strong { color: #7c0000 !important; }
.footer-col ul li a, .footer-brand p, .footer-bottom p,
.footer-legal a, .footer-legal { color: #5f0000 !important; }
.footer-legal-divider { color: rgba(124, 0, 0, .45) !important; }
.footer-col ul li a:hover, .footer-legal a:hover { color: #7c0000 !important; }
.footer-bottom { border-top-color: rgba(124, 0, 0, .14) !important; }
.footer-social a { border-color: rgba(124, 0, 0, .3) !important; color: #7c0000 !important; }

.footer-disclaimer {
  background: #7c0000 !important;
  color: rgba(255, 255, 255, .88) !important;
  border-radius: 8px;
}
.footer-disclaimer strong { color: #ffffff !important; }

/* v5 — footer brand slot: full colour Aomics wordmark (aomics-logo.png) */
.site-footer .footer-brand img,
.footer-brand img {
  width: 190px !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  margin-bottom: 18px !important;
  filter: none !important;
  background: transparent !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   v6 — German nav must not collide with the logo · dark CTA panels lightened
        to an Adaptrials-style brand+grey gradient with dark text
   ═══════════════════════════════════════════════════════════════════════════ */

/* A. header layout guards + German (longer labels) tightening ------------- */
.header-inner { gap: 22px; }
.brand { flex: 0 0 auto; position: relative; z-index: 3; align-self: stretch;
  display: flex; align-items: center; padding-right: 12px; background: #fff; }
.main-nav { min-width: 0; }
.main-nav > ul { flex-wrap: nowrap; }
html[lang="de"] .site-header:not(.scrolled) .brand-logo-frame { width: 176px !important; }
html[lang="de"] .site-header .main-nav { gap: 15px !important; }
html[lang="de"] .site-header .main-nav > ul { gap: 12px !important; }
html[lang="de"] .site-header .main-nav ul li a,
html[lang="de"] .site-header .main-nav > ul > li > .nav-item-row > a {
  font-size: 12.5px !important; letter-spacing: 0 !important;
  padding-left: 4px !important; padding-right: 4px !important;
}
html[lang="de"] .site-header .header-cta { padding-inline: 14px !important; font-size: 12.5px !important; }
@media (min-width: 1024px) and (max-width: 1360px) {
  html[lang="de"] .site-header:not(.scrolled) .brand-logo-frame { width: 148px !important; }
  html[lang="de"] .site-header .main-nav { gap: 10px !important; }
  html[lang="de"] .site-header .main-nav > ul { gap: 7px !important; }
  html[lang="de"] .site-header .main-nav ul li a,
  html[lang="de"] .site-header .main-nav > ul > li > .nav-item-row > a { font-size: 11.5px !important; }
  html[lang="de"] .site-header .lang-btn { transform: scale(.85); }
}

/* B. dark CTA / proof panels → light brand+grey gradient ----------------- */
.technology-cta, .compliance-cta, .careers-cta, .about-cta, .contact-platform-strip,
.technology-signal-card, .compliance-proof, .contact-hero-panel {
  background: linear-gradient(135deg, #f7f2f2 0%, #edeaec 46%, #ecedf2 100%) !important;
  color: #241a1b !important;
  border: 1px solid rgba(124, 0, 0, .14) !important;
  box-shadow: 0 16px 40px rgba(60, 20, 20, .07) !important;
}
.compliance-standards { background: linear-gradient(145deg, #faf6f6, #f0ecee) !important; }
.compliance-chain-item { background: linear-gradient(160deg, #fff, #f4eff1) !important; }

.technology-cta h2, .compliance-cta h2, .careers-cta h2, .about-cta h2,
.technology-signal-flow, .technology-signal-header b, .compliance-proof-top b,
.contact-hero-panel h2, .contact-hero-panel h3 { color: #241a1b !important; }
.technology-cta p:not(.aomics-kicker), .compliance-cta p:not(.aomics-kicker),
.careers-cta p:not(.aomics-kicker), .about-cta p:not(.aomics-kicker),
.technology-signal-card > p, .compliance-proof > p, .contact-hero-panel p { color: #6a5b5b !important; }
.technology-cta .aomics-kicker, .compliance-cta .aomics-kicker, .careers-cta .aomics-kicker,
.about-cta .aomics-kicker, .technology-signal-header, .technology-signal-flow i,
.compliance-proof-top, .compliance-proof-core i { color: #7c0000 !important; }
.technology-signal-header, .compliance-proof-top,
.technology-signal-bar, .compliance-proof-line { border-color: rgba(124, 0, 0, .16) !important; }
.technology-signal-flow span, .compliance-proof-core span {
  background: rgba(124, 0, 0, .05) !important; border-color: rgba(124, 0, 0, .18) !important; color: #241a1b !important;
}
.technology-signal-bar span, .compliance-proof-line span {
  background: linear-gradient(to top, #7c0000, #d9b8b8) !important;
}
.technology-cta .btn, .compliance-cta .btn, .careers-cta .btn, .about-cta .btn,
.technology-cta .btn-glow, .compliance-cta .btn-glow, .about-cta .btn-glow {
  background: #7c0000 !important; color: #fff !important; border-color: #7c0000 !important;
}
.technology-cta .btn::before, .compliance-cta .btn::before, .careers-cta .btn::before,
.about-cta .btn::before { background: #5f0000 !important; }

/* ═══════════════════════════════════════════════════════════════════════════
   v8 — minimal  EN | DE  language toggle: text only, brand-burgundy active
        with an underline, grey divider + inactive (no pill, no border)
   ═══════════════════════════════════════════════════════════════════════════ */
.lang-switch {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}
.lang-switch .lang-divider {
  display: inline !important;
  color: #b7abab !important;
  font: 400 13px/1 var(--font-mono, 'Geist Mono', ui-monospace, monospace) !important;
}
.lang-switch .lang-btn {
  width: auto !important;
  height: auto !important;
  padding: 1px 1px 3px !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #8a7d7d !important;
  font: 800 13px/1.1 var(--font-mono, 'Geist Mono', ui-monospace, monospace) !important;
  letter-spacing: .09em !important;
  transform: none !important;
  transition: color .15s ease, border-color .15s ease !important;
}
.lang-switch .lang-btn + .lang-btn { border-left: 0 !important; }
.lang-switch .lang-btn:hover { color: #7c0000 !important; background: transparent !important; }
.lang-switch .lang-btn.active {
  color: #7c0000 !important;
  background: transparent !important;
  border-bottom-color: #7c0000 !important;
}
/* scrolled header is white too — keep the toggle identical */
.site-header.scrolled .lang-switch { border: 0 !important; background: transparent !important; }
.site-header.scrolled .lang-switch .lang-btn { color: #8a7d7d !important; }
.site-header.scrolled .lang-switch .lang-btn.active { color: #7c0000 !important; border-bottom-color: #7c0000 !important; background: transparent !important; }
.site-header.scrolled .lang-switch .lang-divider { color: #b7abab !important; }

/* ── kill any hairline / shadow at the header ↔ hero boundary (all pages) ── */
.site-header, .site-header::before, .site-header::after,
.site-header:not(.scrolled), .site-header.scrolled {
  border: 0 !important; box-shadow: none !important; outline: 0 !important;
}
.site-header::before, .site-header::after { content: none !important; }
.aomics-hero, .aomics-hero::before, .aomics-hero::after,
main, .react-main, #main-content, .page-main {
  border: 0 !important; border-top: 0 !important; box-shadow: none !important;
  margin-top: 0 !important;
}
.aomics-hero { background: #ffffff !important; background-image: none !important; }
main, .react-main, #main-content, .page-main, html, body { background: #ffffff !important; }

/* ═══════════════════════════════════════════════════════════════════════════
   v9 — language dropdown at the end of the main menu (brand burgundy)
   ═══════════════════════════════════════════════════════════════════════════ */
.lang-menu { position: relative; display: inline-flex; margin-left: 4px; }
.lang-menu-btn {
  display: inline-flex; align-items: center; gap: 7px;
  font: 700 12px/1 'Geist Mono', ui-monospace, monospace; letter-spacing: .07em;
  color: #7c0000; background: #fff;
  border: 1px solid rgba(124, 0, 0, .28); border-radius: 9px;
  padding: 8px 11px; cursor: pointer;
  transition: background .14s ease, border-color .14s ease;
}
.lang-menu-btn svg { width: 14px; height: 14px; }
.lang-menu-btn .lang-caret { font-size: 9px; opacity: .75; margin-left: -1px; }
.lang-menu-btn:hover, .lang-menu.open .lang-menu-btn,
.lang-menu:hover .lang-menu-btn, .lang-menu:focus-within .lang-menu-btn {
  background: #f6efef; border-color: #7c0000;
}
.lang-menu-panel {
  position: absolute; top: calc(100% + 10px); right: 0; min-width: 178px;
  background: #fff; border: 1px solid rgba(124, 0, 0, .16); border-top: 3px solid #7c0000;
  border-radius: 10px; box-shadow: 0 18px 42px rgba(60, 20, 20, .16);
  padding: 6px; display: none; z-index: 96;
}
.lang-menu.open .lang-menu-panel,
.lang-menu:hover .lang-menu-panel,
.lang-menu:focus-within .lang-menu-panel { display: block; }
.lang-menu-panel button {
  display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 14px;
  padding: 9px 11px; border: 0; border-radius: 7px; background: transparent; cursor: pointer;
  font: 600 13px/1 'Geist', -apple-system, sans-serif; color: #1c1010; text-align: left;
}
.lang-menu-panel button .lc { font: 700 10px/1 'Geist Mono', ui-monospace, monospace; color: #9a8f8f; letter-spacing: .09em; }
.lang-menu-panel button:hover { background: #f6efef; color: #7c0000; }
.lang-menu-panel button.on { color: #7c0000; }
.lang-menu-panel button.on .lc { color: #7c0000; }
.lang-menu-panel button.on::after { content: "✓"; position: absolute; left: 12px; font-size: 11px; }
.lang-menu-panel button.on { position: relative; padding-left: 26px; }
/* scrolled header is white — keep the control identical */
.site-header.scrolled .lang-menu-btn { color: #7c0000; background: #fff; border-color: rgba(124, 0, 0, .28); }
.site-header.scrolled .lang-menu-btn:hover, .site-header.scrolled .lang-menu.open .lang-menu-btn { background: #f6efef; }
/* mobile drawer: full-width control, inline panel */
@media (max-width: 1023px) {
  .lang-menu { width: 100%; margin: 6px 0 0; }
  .lang-menu-btn { width: 100%; justify-content: center; }
  .lang-menu-panel { position: static; box-shadow: none; margin-top: 8px; min-width: 0; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   v10 — Adaptrials visual-system parity for the Aomics masthead and hero.
   The spacing, type scale, soft canvas, controls and decision-card geometry
   follow the Adaptrials welcome page while Aomics keeps its burgundy identity.
   Keep this canonical layer last so historical theme passes cannot override it.
   ═══════════════════════════════════════════════════════════════════════════ */
:root {
  --aomics-canvas: #fafcfc;
  --aomics-ink: #101918;
  --aomics-muted: #60706f;
  --aomics-line: #dfe8e6;
  --aomics-brand-soft: #f7eeee;
}

html,
body,
main,
.react-main,
#main-content,
.page-main {
  background: var(--aomics-canvas) !important;
}

body {
  color: var(--aomics-ink);
  font-family: var(--font-sans);
}

.wrap,
.header-inner {
  max-width: 1280px !important;
}

/* Header: Adaptrials scale, density and calm surface treatment. */
.site-header,
.site-header:not(.scrolled) {
  background: rgba(250, 252, 252, .9) !important;
  background-image: none !important;
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
  border: 0 !important;
  box-shadow: none !important;
}

.header-inner {
  height: 112px !important;
  gap: 16px !important;
  padding-inline: 32px !important;
  transition: height .24s ease !important;
}

.brand {
  align-self: center !important;
  height: 100%;
  padding-right: 12px !important;
  background: transparent !important;
}

.brand-logo-frame,
html[lang="de"] .site-header:not(.scrolled) .brand-logo-frame {
  width: 208px !important;
  height: 80px !important;
}

.brand-logo-dark {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.main-nav {
  gap: 12px !important;
}

.main-nav > ul {
  gap: 2px !important;
}

.main-nav > ul > li > .nav-item-row > a,
.main-nav > ul > li > a,
html[lang="de"] .site-header .main-nav ul li a,
html[lang="de"] .site-header .main-nav > ul > li > .nav-item-row > a {
  padding: 8px 10px !important;
  color: #566463 !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}

.nav-sub-toggle {
  color: #6b7776 !important;
}

.site-header:not(.scrolled) .main-nav > ul > li > .nav-item-row > a:hover,
.site-header:not(.scrolled) .main-nav > ul > li > a:hover,
.site-header:not(.scrolled) .nav-sub-toggle:hover {
  color: var(--aomics-burgundy) !important;
  background: var(--aomics-brand-soft) !important;
}

.header-cta,
.site-header.scrolled .header-cta {
  min-height: 40px !important;
  padding: 9px 16px !important;
  border: 1px solid var(--aomics-burgundy) !important;
  border-radius: 8px !important;
  background: var(--aomics-burgundy) !important;
  color: #fff !important;
  box-shadow: 0 1px 2px rgba(124, 0, 0, .16) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.header-cta:hover,
.site-header.scrolled .header-cta:hover {
  background: #650000 !important;
  border-color: #650000 !important;
  color: #fff !important;
  box-shadow: 0 6px 16px rgba(124, 0, 0, .18) !important;
  transform: translateY(-1px);
}

.lang-menu {
  margin-left: 0 !important;
}

.lang-menu-btn,
.site-header.scrolled .lang-menu-btn {
  min-height: 40px;
  padding: 8px 10px;
  border-color: transparent !important;
  background: transparent !important;
  color: #566463 !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

.lang-menu-btn:hover,
.lang-menu.open .lang-menu-btn,
.lang-menu:focus-within .lang-menu-btn,
.site-header.scrolled .lang-menu-btn:hover,
.site-header.scrolled .lang-menu.open .lang-menu-btn {
  background: var(--aomics-brand-soft) !important;
  color: var(--aomics-burgundy) !important;
}

.site-header.scrolled {
  background: rgba(250, 252, 252, .96) !important;
  background-image: none !important;
  border-bottom: 1px solid rgba(16, 25, 24, .08) !important;
  box-shadow: 0 8px 28px -18px rgba(16, 25, 24, .32) !important;
}

.site-header.scrolled .header-inner {
  height: 64px !important;
}

.site-header.scrolled .brand-logo-frame {
  width: 42px !important;
  height: 42px !important;
}

.site-header.scrolled .main-nav ul li a,
.site-header.scrolled .main-nav > ul > li > .nav-item-row > a,
.site-header.scrolled .main-nav > ul > li > a,
.site-header.scrolled .nav-sub-toggle {
  color: #566463 !important;
}

.site-header.scrolled .main-nav ul li a:hover,
.site-header.scrolled .main-nav > ul > li > .nav-item-row > a:hover,
.site-header.scrolled .main-nav > ul > li > a:hover,
.site-header.scrolled .nav-sub-toggle:hover {
  color: var(--aomics-burgundy) !important;
  background: var(--aomics-brand-soft) !important;
}

/* Hero: Adaptrials two-column proportions and editorial hierarchy. */
.aomics-hero {
  min-height: auto !important;
  padding: 0 0 128px !important;
  justify-content: flex-start !important;
  overflow: hidden;
  background:
    radial-gradient(58% 58% at 79% 22%, rgba(124, 0, 0, .065), transparent 72%),
    var(--aomics-canvas) !important;
}

.aomics-hero::before,
.aomics-hero::after,
.hero-gradient-bottom {
  content: none !important;
  display: none !important;
}

.particle-canvas {
  display: none !important;
}

.aomics-hero-grid {
  grid-template-columns: minmax(440px, .86fr) minmax(610px, 1.14fr) !important;
  gap: 44px !important;
  align-items: start !important;
}

.aomics-hero-copy {
  max-width: 660px;
  margin-top: 44px;
}

.aomics-hero > .wrap {
  max-width: 1400px !important;
}

.aomics-hero-visual {
  margin-top: 44px;
  transition: opacity 1s cubic-bezier(.4, 0, .2, 1) .2s,
    transform .34s cubic-bezier(.2, .8, .2, 1),
    box-shadow .34s ease,
    border-color .34s ease !important;
}

.aomics-hero-visual.reveal:hover {
  transform: translateY(-4px) scale(1.008) !important;
  border-color: rgba(124, 0, 0, .3) !important;
  box-shadow: 0 34px 76px rgba(64, 24, 24, .18) !important;
}

.aomics-hero-kicker {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  width: fit-content;
  margin: 0 0 26px !important;
  padding: 8px 14px !important;
  border: 1px solid rgba(124, 0, 0, .18);
  border-radius: 999px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 1px 3px rgba(16, 25, 24, .07);
  color: #4e5d5c !important;
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.kicker-pulse {
  width: 8px !important;
  height: 8px !important;
  background: var(--aomics-burgundy) !important;
  box-shadow: none !important;
}

.aomics-hero-copy h1 {
  max-width: 650px;
  margin: 0 0 24px !important;
  color: var(--aomics-ink) !important;
  font-family: var(--font-sans) !important;
  font-size: clamp(3.1rem, 4.7vw, 4.35rem) !important;
  font-weight: 750 !important;
  line-height: .99 !important;
  letter-spacing: -.052em !important;
  text-wrap: balance;
}

.aomics-hero-copy h1 .type-line {
  display: block !important;
  color: var(--aomics-ink) !important;
  -webkit-text-fill-color: var(--aomics-ink) !important;
}

.aomics-hero-copy h1 .type-line em,
.aomics-hero-copy h1 .hero-title-grad {
  font-style: normal;
  color: var(--aomics-burgundy) !important;
  -webkit-text-fill-color: var(--aomics-burgundy) !important;
}

@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .aomics-hero-copy h1 .type-line em,
  .aomics-hero-copy h1 .hero-title-grad {
    background-image: linear-gradient(105deg, #7c0000 0%, #a32929 55%, #c06b6b 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
  }
}

.aomics-hero-lead {
  max-width: 620px !important;
  margin: 0 0 32px !important;
  color: var(--aomics-muted) !important;
  font-size: 18px !important;
  font-weight: 400;
  line-height: 1.65 !important;
}

.aomics-hero-actions {
  gap: 14px !important;
  margin: 0 0 36px !important;
}

.aomics-hero-actions .btn.btn-glow,
.aomics-hero-secondary {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 20px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-decoration: none;
}

.aomics-hero-actions .btn.btn-glow {
  background: var(--aomics-burgundy) !important;
  border-color: var(--aomics-burgundy) !important;
  color: #fff !important;
  box-shadow: 0 1px 2px rgba(124, 0, 0, .16) !important;
}

.aomics-hero-actions .btn.btn-glow:hover {
  background: #650000 !important;
  border-color: #650000 !important;
  box-shadow: 0 8px 20px rgba(124, 0, 0, .18) !important;
}

.aomics-hero-secondary {
  gap: 8px !important;
  background: rgba(255, 255, 255, .76) !important;
  border: 1px solid #d8e1df !important;
  color: var(--aomics-ink) !important;
  box-shadow: 0 1px 2px rgba(16, 25, 24, .06) !important;
}

.aomics-hero-secondary:hover {
  background: var(--aomics-brand-soft) !important;
  border-color: rgba(124, 0, 0, .3) !important;
  color: var(--aomics-burgundy) !important;
}

.aomics-hero-trust {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 28px !important;
  max-width: 560px;
}

.aomics-hero-trust span {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--aomics-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

.aomics-hero-trust span::before {
  content: "✓";
  display: inline-grid;
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  place-items: center;
  border: 1.5px solid var(--aomics-burgundy);
  border-radius: 50%;
  color: var(--aomics-burgundy);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
}

.aomics-hero-visual,
.aomics-hero-visual.is-dashboard {
  width: 100%;
  border: 1px solid var(--aomics-line) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 26px 62px -24px rgba(16, 25, 24, .28) !important;
  backdrop-filter: none !important;
  overflow: hidden;
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .header-inner { padding-inline: 22px !important; }
  .brand-logo-frame,
  html[lang="de"] .site-header:not(.scrolled) .brand-logo-frame {
    width: 170px !important;
  }
  .main-nav { gap: 7px !important; }
  .main-nav > ul > li > .nav-item-row > a,
  .main-nav > ul > li > a,
  html[lang="de"] .site-header .main-nav ul li a,
  html[lang="de"] .site-header .main-nav > ul > li > .nav-item-row > a {
    padding-inline: 7px !important;
    font-size: 12.5px !important;
  }
  .aomics-hero-grid {
    grid-template-columns: minmax(0, .9fr) minmax(500px, 1.1fr) !important;
    gap: 28px !important;
  }
}

@media (max-width: 1023px) {
  .header-inner {
    height: 88px !important;
    padding-inline: 24px !important;
  }
  .brand-logo-frame,
  html[lang="de"] .site-header:not(.scrolled) .brand-logo-frame {
    width: 184px !important;
    height: 70px !important;
  }
  .main-nav {
    gap: 8px !important;
    background: var(--aomics-canvas) !important;
    border-left: 1px solid rgba(124, 0, 0, .12) !important;
  }
  .site-header.scrolled .main-nav {
    background: var(--aomics-canvas) !important;
  }
  .main-nav > ul { gap: 4px !important; }
  .lang-menu { width: 100%; }
  .aomics-hero {
    min-height: 0 !important;
    padding: 44px 0 72px !important;
  }
  .aomics-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 44px !important;
  }
  .aomics-hero-copy { max-width: 720px; margin-top: 0; }
  .aomics-hero-visual { max-width: 760px; margin-top: 0; }
}

@media (max-width: 640px) {
  .header-inner {
    height: 80px !important;
    padding-inline: 18px !important;
  }
  .brand-logo-frame,
  html[lang="de"] .site-header:not(.scrolled) .brand-logo-frame {
    width: 164px !important;
    height: 62px !important;
  }
  .aomics-hero {
    padding: 64px 0 58px !important;
  }
  .aomics-hero-copy h1 {
    font-size: clamp(2.55rem, 12vw, 3.25rem) !important;
    line-height: 1.02 !important;
  }
  .aomics-hero-lead { font-size: 16px !important; }
  .aomics-hero-actions { align-items: stretch; flex-direction: column; }
  .aomics-hero-actions .btn,
  .aomics-hero-secondary { width: 100%; }
  .aomics-hero-trust { grid-template-columns: 1fr; }
  .aomics-hero-visual { border-radius: 14px !important; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   v11 — Full public-site system. The remaining routes now share the same
   Adaptrials-derived rhythm, hierarchy, card language and interaction quality.
   ═══════════════════════════════════════════════════════════════════════════ */
:root {
  --text-primary: var(--aomics-ink);
  --text-secondary: var(--aomics-muted);
  --text-muted: #7a8785;
  --border-subtle: var(--aomics-line);
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 20px;
  --aomics-section-space: clamp(72px, 7vw, 104px);
  --aomics-card-shadow: 0 12px 34px -24px rgba(16, 25, 24, .36);
  --aomics-card-shadow-hover: 0 22px 48px -25px rgba(16, 25, 24, .38);
}

::selection {
  background: rgba(124, 0, 0, .16);
  color: var(--aomics-ink);
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid rgba(124, 0, 0, .24) !important;
  outline-offset: 3px !important;
}

.aomics-kicker,
.kicker-pill,
.editorial-label,
.aomics-detail-label,
.service-atlas-index,
.quote-step-hint,
.biz-updated {
  color: var(--aomics-burgundy) !important;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

.kicker-pill {
  gap: 8px !important;
  padding: 7px 12px !important;
  border: 1px solid rgba(124, 0, 0, .16) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .8) !important;
  box-shadow: 0 1px 3px rgba(16, 25, 24, .05);
}

.aomics-section-heading,
.service-atlas-heading,
.technology-section-heading,
.about-section-heading,
.compliance-heading,
.resources-intro,
.careers-intro {
  margin-bottom: 42px !important;
}

.aomics-section-heading h2,
.service-atlas-heading h2,
.technology-section-heading h2,
.about-section-heading h2,
.compliance-heading h2,
.resources-intro h2,
.careers-intro h2 {
  margin: 12px 0 14px !important;
  color: var(--aomics-ink) !important;
  font-family: var(--font-sans) !important;
  font-size: clamp(2rem, 3.7vw, 3.25rem) !important;
  font-weight: 700 !important;
  line-height: 1.04 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance;
}

.aomics-section-heading p:not(.aomics-kicker),
.service-atlas-heading p:not(.aomics-kicker),
.technology-section-heading > p:not(.aomics-kicker),
.about-section-heading p:not(.aomics-kicker),
.compliance-heading p:not(.aomics-kicker),
.resources-intro > p,
.careers-intro > p {
  max-width: 680px;
  color: var(--aomics-muted) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}

.section-number,
.about-section-heading > span,
.compliance-heading > span {
  color: #8a9694 !important;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

/* Reusable controls across every route. */
.btn,
.btn-glow,
.btn-outline,
.footer-quote-button,
.biz-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  gap: 8px;
  padding: 10px 17px !important;
  border-radius: 8px !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
  letter-spacing: 0 !important;
  text-decoration: none;
  transition: background .16s ease, border-color .16s ease, color .16s ease,
    box-shadow .16s ease, transform .16s ease !important;
}

.btn,
.btn.btn-glow,
.btn-glow {
  border: 1px solid var(--aomics-burgundy) !important;
  background: var(--aomics-burgundy) !important;
  color: #fff !important;
  box-shadow: 0 1px 2px rgba(124, 0, 0, .16) !important;
}

.btn:hover,
.btn.btn-glow:hover,
.btn-glow:hover {
  border-color: #650000 !important;
  background: #650000 !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(124, 0, 0, .18) !important;
  transform: translateY(-1px);
}

.btn.btn-outline,
.btn-outline,
.btn-quiet,
.biz-chip {
  border: 1px solid #d6dfdd !important;
  background: #fff !important;
  color: var(--aomics-ink) !important;
  box-shadow: 0 1px 2px rgba(16, 25, 24, .05) !important;
}

.btn.btn-outline:hover,
.btn-outline:hover,
.btn-quiet:hover,
.biz-chip:hover {
  border-color: rgba(124, 0, 0, .3) !important;
  background: var(--aomics-brand-soft) !important;
  color: var(--aomics-burgundy) !important;
  box-shadow: 0 6px 16px rgba(124, 0, 0, .08) !important;
}

/* Slim utility surfaces. */
.data-stream,
.aomics-ticker,
.breadcrumb-bar {
  background: #fff !important;
  border-top: 1px solid var(--aomics-line) !important;
  border-bottom: 1px solid var(--aomics-line) !important;
  box-shadow: none !important;
}

.data-stream,
.aomics-ticker {
  color: var(--aomics-muted) !important;
}

.data-stream-dot {
  background: var(--aomics-burgundy) !important;
  box-shadow: none !important;
}

.breadcrumb-bar {
  padding-top: 0 !important;
  color: #7a8785 !important;
  font-size: 13px !important;
}

.breadcrumb-bar .wrap {
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.breadcrumb-bar a {
  color: #64716f !important;
  font-weight: 500;
  text-decoration: none;
}

.breadcrumb-bar a:hover {
  color: var(--aomics-burgundy) !important;
}

/* Homepage sections: clearer cadence and dashboard-like grouped surfaces. */
.service-atlas,
.aomics-audience,
.aomics-metrics,
.aomics-capabilities,
.aomics-operating-model,
.aomics-trust-band {
  padding: var(--aomics-section-space) 0 !important;
}

.service-atlas,
.aomics-metrics,
.aomics-operating-model {
  background: #fff !important;
  background-image: none !important;
}

.aomics-audience,
.aomics-capabilities,
.aomics-trust-band {
  background: var(--aomics-canvas) !important;
  background-image: none !important;
}

.service-atlas-link,
.aomics-audience-link,
.technology-platform-link,
.news-item-copy button,
.resource-card button,
.contact-text-button,
.quote-back {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--aomics-burgundy) !important;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 650;
  cursor: pointer;
  text-decoration: none;
}

.service-atlas-shell,
.aomics-capability-detail,
.aomics-stage-detail {
  border: 1px solid var(--aomics-line) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: var(--aomics-card-shadow) !important;
  overflow: hidden;
}

.service-atlas-tabs {
  background: #f5f8f7 !important;
  border-bottom: 1px solid var(--aomics-line) !important;
}

.service-atlas-tabs button {
  min-height: 62px;
  border: 0 !important;
  border-right: 1px solid var(--aomics-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #697674 !important;
  font-size: 13px !important;
  font-weight: 550 !important;
}

.service-atlas-tabs button.active {
  background: #fff !important;
  color: var(--aomics-burgundy) !important;
  box-shadow: inset 0 -2px 0 var(--aomics-burgundy) !important;
}

.service-atlas-detail {
  gap: 44px !important;
  padding: clamp(26px, 4vw, 46px) !important;
  background: #fff !important;
}

.service-atlas-copy h3 {
  color: var(--aomics-ink) !important;
  font-size: clamp(1.75rem, 3vw, 2.65rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.04em !important;
}

.service-atlas-copy > p:not(.service-atlas-index) {
  color: var(--aomics-muted) !important;
}

.service-atlas-visual,
.service-atlas-visual.is-panel {
  border: 1px solid var(--aomics-line) !important;
  border-radius: 14px !important;
  background: #f8faf9 !important;
  box-shadow: none !important;
}

.aomics-audience-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.aomics-audience-card,
.metric-card,
.trust-card,
.technology-platform-card,
.technology-layer,
.compliance-chain-item,
.compliance-standard-grid article,
.resource-card,
.career-role,
.biz-card,
.biz-deliverables li,
.faq-item,
.blog-card,
.blog-featured {
  border: 1px solid var(--aomics-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  background-image: none !important;
  box-shadow: var(--aomics-card-shadow) !important;
}

.aomics-audience-card {
  min-height: 360px !important;
  padding: 26px !important;
}

.aomics-audience-card:hover,
.trust-card:hover,
.technology-platform-card:hover,
.technology-layer:hover,
.resource-card:hover,
.career-role:hover,
.biz-card:hover,
.blog-card:hover,
.blog-featured:hover {
  border-color: rgba(124, 0, 0, .24) !important;
  box-shadow: var(--aomics-card-shadow-hover) !important;
  transform: translateY(-3px);
}

.aomics-audience-card h3,
.trust-card h3,
.technology-platform-card h3,
.technology-layer h3,
.resource-card h3,
.career-role h3,
.biz-card h3 {
  color: var(--aomics-ink) !important;
}

.aomics-audience-card > p:not(.aomics-audience-label),
.trust-card p,
.technology-platform-card > p:not(.technology-platform-eyebrow),
.technology-layer p,
.resource-card p,
.career-summary,
.biz-card p {
  color: var(--aomics-muted) !important;
}

.aomics-audience-card li span,
.technology-platform-card li span,
.biz-deliverable-icon {
  border: 1px solid rgba(124, 0, 0, .18) !important;
  background: var(--aomics-brand-soft) !important;
  color: var(--aomics-burgundy) !important;
}

.metrics-grid {
  gap: 14px !important;
}

.metric-card {
  padding: 26px 22px !important;
}

.metric-value {
  color: var(--aomics-ink) !important;
  font-size: clamp(2rem, 4vw, 3rem) !important;
  letter-spacing: -.04em !important;
}

.metric-label {
  color: var(--aomics-muted) !important;
  font-size: 13px !important;
}

.aomics-capability-list {
  gap: 6px !important;
}

.aomics-capability-list button,
.aomics-stage-line button,
.profile-rail-list button {
  border-color: transparent !important;
  border-radius: 10px !important;
  background: transparent !important;
  color: var(--aomics-muted) !important;
  transition: background .16s ease, color .16s ease, border-color .16s ease !important;
}

.aomics-capability-list button:hover,
.aomics-stage-line button:hover,
.profile-rail-list button:hover {
  background: #f5f8f7 !important;
  color: var(--aomics-ink) !important;
}

.aomics-capability-list button.active,
.aomics-capability-list button.is-selected,
.aomics-stage-line button.is-selected,
.profile-rail-list button.active {
  border-color: rgba(124, 0, 0, .18) !important;
  background: var(--aomics-brand-soft) !important;
  color: var(--aomics-burgundy) !important;
  box-shadow: none !important;
}

.aomics-capability-detail,
.aomics-stage-detail {
  padding: clamp(26px, 4vw, 42px) !important;
}

.aomics-tag-list span,
.hero-reviewed,
.aomics-stage-status {
  border-color: rgba(124, 0, 0, .16) !important;
  background: var(--aomics-brand-soft) !important;
  color: var(--aomics-burgundy) !important;
}

.trust-card {
  padding: 28px !important;
}

.trust-card-glow {
  background: radial-gradient(circle, rgba(124, 0, 0, .08), transparent 68%) !important;
}

/* Shared inner-page hero composition. */
.biz-page,
.technology-page,
.editorial-page,
.compliance-page,
.contact-page,
.about-experience,
.quote-page,
.single-post,
.page-content {
  background: var(--aomics-canvas) !important;
  color: var(--aomics-ink) !important;
}

.biz-hero,
.technology-hero,
.editorial-hero,
.compliance-hero,
.contact-hero,
.about-intro {
  padding: 64px 0 82px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--aomics-line) !important;
  background:
    radial-gradient(52% 85% at 82% 26%, rgba(124, 0, 0, .06), transparent 74%),
    var(--aomics-canvas) !important;
}

.quote-page,
.page-hero,
.error-hero {
  padding-top: 64px !important;
}

.quote-brief {
  padding-top: 0 !important;
}

.biz-hero h1,
.technology-hero h1,
.editorial-hero h1,
.compliance-hero h1,
.contact-hero-copy h1,
.about-intro h1,
.quote-brief h1,
.post-title,
.page-content h1 {
  max-width: 820px;
  margin: 18px 0 20px !important;
  background: none !important;
  color: var(--aomics-ink) !important;
  -webkit-text-fill-color: var(--aomics-ink) !important;
  font-family: var(--font-sans) !important;
  font-size: clamp(2.75rem, 4.8vw, 4.2rem) !important;
  font-weight: 730 !important;
  line-height: 1 !important;
  letter-spacing: -.055em !important;
  text-wrap: balance;
}

.biz-hero p:not(.kicker-pill):not(.biz-updated),
.technology-hero > .wrap > div:first-child > p:not(.aomics-kicker),
.editorial-hero > .wrap > div:first-child > p:not(.aomics-kicker),
.compliance-hero > .wrap > div:first-child > p:not(.aomics-kicker),
.contact-hero-lead,
.about-intro-grid > p,
.quote-brief > p {
  color: var(--aomics-muted) !important;
  font-size: 17px !important;
  line-height: 1.72 !important;
}

.biz-hero-lead {
  color: var(--aomics-ink) !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
}

.biz-hero-sub {
  color: var(--aomics-muted) !important;
  font-size: 16px !important;
}

.svc-figure,
.technology-signal-card,
.compliance-proof,
.contact-hero-panel,
.editorial-hero-index,
.profile-feature,
.contact-form,
.quote-form,
.contact-success-card,
.biz-callout,
.biz-note {
  border: 1px solid var(--aomics-line) !important;
  border-radius: 18px !important;
  background: #fff !important;
  background-image: none !important;
  box-shadow: var(--aomics-card-shadow) !important;
  color: var(--aomics-ink) !important;
}

.svc-figure {
  box-shadow: 0 22px 48px -26px rgba(16, 25, 24, .36) !important;
}

.technology-signal-card,
.compliance-proof,
.contact-hero-panel {
  position: relative;
  overflow: hidden;
}

.technology-signal-card::before,
.compliance-proof::before,
.contact-hero-panel::before,
.editorial-hero-index::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: var(--aomics-burgundy);
}

.technology-signal-header,
.technology-signal-flow,
.technology-signal-card > p,
.compliance-proof-top,
.compliance-proof > p,
.contact-panel-top,
.contact-hero-panel h2,
.contact-hero-panel > p {
  color: var(--aomics-muted) !important;
}

.technology-signal-header b,
.contact-hero-panel h2,
.compliance-proof-top b {
  color: var(--aomics-ink) !important;
}

.editorial-hero-index {
  position: relative;
  min-height: 180px;
  padding: 26px 28px !important;
  border-left: 1px solid var(--aomics-line) !important;
}

.editorial-hero-index strong {
  color: var(--aomics-ink) !important;
  font-size: 22px !important;
}

.editorial-hero-index small {
  color: var(--aomics-muted) !important;
  font-size: 13px !important;
}

.biz-body,
.editorial-content,
.resources-content,
.news-content,
.faq-content,
.careers-content,
.contact-intake,
.technology-platforms,
.technology-stack,
.compliance-thread,
.compliance-standards,
.about-people,
.about-signal-band {
  padding-top: var(--aomics-section-space) !important;
  padding-bottom: var(--aomics-section-space) !important;
}

.biz-body,
.editorial-content,
.news-content,
.careers-content,
.contact-intake,
.technology-platforms,
.compliance-thread,
.about-people {
  background: #fff !important;
  background-image: none !important;
}

.resources-content,
.faq-content,
.technology-stack,
.compliance-standards,
.about-advisory,
.about-signal-band {
  background: var(--aomics-canvas) !important;
  background-image: none !important;
}

.biz-body {
  max-width: 1120px !important;
}

.biz-section {
  margin-bottom: 72px !important;
}

.biz-section-heading,
.legal-prose section > h2 {
  margin-bottom: 24px !important;
  color: var(--aomics-ink) !important;
  font-size: clamp(1.65rem, 3vw, 2.35rem) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
}

.biz-cards,
.service-grid,
.technology-platform-grid,
.technology-layer-grid,
.resource-grid,
.compliance-chain,
.compliance-standard-grid {
  gap: 16px !important;
}

.biz-card,
.technology-platform-card,
.technology-layer,
.resource-card,
.compliance-chain-item,
.compliance-standard-grid article {
  padding: 24px !important;
}

.biz-card-icon,
.mega-ico {
  border: 1px solid rgba(124, 0, 0, .14) !important;
  background: var(--aomics-brand-soft) !important;
  color: var(--aomics-burgundy) !important;
  box-shadow: none !important;
}

.biz-deliverables {
  gap: 10px !important;
}

.biz-deliverables li {
  min-height: 62px;
  padding: 15px 16px !important;
  color: #53615f !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

.legal-prose {
  max-width: 880px !important;
}

.legal-prose section {
  padding: 32px 0;
  border-bottom: 1px solid var(--aomics-line);
}

.legal-prose section:first-child { padding-top: 0; }
.legal-prose section:last-of-type { border-bottom: 0; }

.legal-prose p,
.legal-prose li,
.post-body,
.page-content {
  color: var(--aomics-muted) !important;
  font-size: 16px !important;
  line-height: 1.78 !important;
}

/* Forms and choice controls use the same product UI geometry. */
.contact-form,
.quote-form {
  padding: clamp(24px, 3vw, 34px) !important;
}

.contact-form input:not([type="checkbox"]),
.contact-form textarea,
.quote-fields input:not([type="checkbox"]),
.quote-fields select,
.quote-fields textarea,
.editorial-search {
  border: 1px solid #ced9d6 !important;
  border-radius: 9px !important;
  background: #fff !important;
  color: var(--aomics-ink) !important;
  box-shadow: 0 1px 2px rgba(16, 25, 24, .04) !important;
}

.contact-form input:not([type="checkbox"]),
.contact-form textarea,
.quote-fields input:not([type="checkbox"]),
.quote-fields select,
.quote-fields textarea {
  min-height: 44px;
  padding: 11px 13px !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
}

.contact-form input:focus,
.contact-form textarea:focus,
.quote-fields input:focus,
.quote-fields select:focus,
.quote-fields textarea:focus {
  outline: 3px solid rgba(124, 0, 0, .11) !important;
  outline-offset: 0 !important;
  border-color: rgba(124, 0, 0, .45) !important;
  box-shadow: none !important;
}

.contact-intent-grid button,
.domain-grid button {
  border: 1px solid var(--aomics-line) !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--aomics-ink) !important;
  box-shadow: none !important;
}

.contact-intent-grid button:hover,
.domain-grid button:hover,
.contact-intent-grid button.selected,
.domain-grid button.selected {
  border-color: rgba(124, 0, 0, .3) !important;
  background: var(--aomics-brand-soft) !important;
  transform: none !important;
}

.quote-progress button {
  color: #7a8785 !important;
  font-family: var(--font-sans) !important;
  font-weight: 550 !important;
}

.quote-progress button.active {
  color: var(--aomics-burgundy) !important;
  border-bottom-color: var(--aomics-burgundy) !important;
}

/* Lists, editorial content and expandable answers. */
.blog-featured,
.career-role,
.resource-card {
  overflow: hidden;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.blog-featured-copy h2,
.news-item-copy h2,
.faq-cta h2,
.careers-cta h2,
.resources-request h2,
.about-cta h2,
.editorial-cta h2,
.technology-cta h2,
.compliance-cta h2 {
  color: var(--aomics-ink) !important;
  font-size: clamp(1.75rem, 3.4vw, 2.85rem) !important;
  line-height: 1.06 !important;
  letter-spacing: -.04em !important;
  text-wrap: balance;
}

.news-item {
  border-color: var(--aomics-line) !important;
}

.faq-item {
  overflow: hidden;
  box-shadow: none !important;
}

.faq-item summary {
  min-height: 72px;
  padding: 20px 22px !important;
  color: var(--aomics-ink) !important;
  cursor: pointer;
}

.faq-item[open] {
  border-color: rgba(124, 0, 0, .22) !important;
  box-shadow: var(--aomics-card-shadow) !important;
}

.faq-item > p {
  color: var(--aomics-muted) !important;
}

/* Call-to-action bands: quiet, authoritative and consistently branded. */
.about-cta,
.editorial-cta,
.careers-cta,
.resources-request,
.technology-cta,
.compliance-cta,
.contact-platform-strip,
.faq-cta,
.biz-contact {
  border: 1px solid rgba(124, 0, 0, .14) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(135deg, rgba(124, 0, 0, .055), rgba(124, 0, 0, .018)),
    #fff !important;
  color: var(--aomics-ink) !important;
  box-shadow: var(--aomics-card-shadow) !important;
}

.about-cta,
.editorial-cta,
.technology-cta,
.compliance-cta,
.contact-platform-strip {
  margin: 0 auto clamp(56px, 6vw, 84px);
  width: min(1216px, calc(100% - 48px));
  padding: clamp(34px, 5vw, 56px) !important;
}

.about-cta .wrap,
.editorial-cta .wrap,
.technology-cta .wrap,
.compliance-cta .wrap,
.contact-platform-strip .wrap {
  max-width: none !important;
  padding: 0 !important;
}

.about-cta p:not(.aomics-kicker),
.editorial-cta p:not(.aomics-kicker),
.careers-cta p:not(.aomics-kicker),
.resources-request p:not(.aomics-kicker),
.technology-cta p:not(.aomics-kicker),
.compliance-cta p:not(.aomics-kicker),
.biz-contact p,
.faq-cta p:not(.aomics-kicker) {
  color: var(--aomics-muted) !important;
}

.about-cta .aomics-kicker,
.editorial-cta .aomics-kicker,
.careers-cta .aomics-kicker,
.resources-request .aomics-kicker,
.technology-cta .aomics-kicker,
.compliance-cta .aomics-kicker,
.contact-platform-strip .aomics-kicker {
  color: var(--aomics-burgundy) !important;
}

.careers-cta,
.resources-request,
.faq-cta,
.biz-contact {
  padding: clamp(28px, 4vw, 38px) !important;
}

.biz-contact h2,
.biz-contact-icon {
  color: var(--aomics-ink) !important;
}

.biz-contact-icon {
  border: 1px solid rgba(124, 0, 0, .14) !important;
  background: var(--aomics-brand-soft) !important;
}

.biz-contact-addr {
  color: #7a8785 !important;
}

/* Public CMS articles and posts. */
.page-content,
.post-body {
  width: min(100%, 920px);
  margin: 0 auto;
  padding: var(--aomics-section-space) 24px !important;
}

/* CMS pages already clear the fixed header through the breadcrumb bar. Keep
   their first heading on the same compact visual rhythm as bespoke pages. */
.page-content {
  padding-top: 16px !important;
}

.page-content h2,
.post-body h2 {
  margin: 42px 0 16px;
  color: var(--aomics-ink) !important;
  font-size: clamp(1.65rem, 3vw, 2.35rem);
  line-height: 1.1;
  letter-spacing: -.035em;
}

.page-content h3,
.post-body h3 {
  margin: 30px 0 12px;
  color: var(--aomics-ink) !important;
  font-size: 1.3rem;
}

.page-content p + p,
.post-body p + p {
  margin-top: 16px;
}

.single-post .post-hero {
  padding-top: 16px;
}

.post-hero .breadcrumb-bar {
  padding-top: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.post-hero-img {
  overflow: hidden;
  border: 1px solid var(--aomics-line);
  border-radius: 18px !important;
  box-shadow: var(--aomics-card-shadow);
}

/* Footer retains the approved Aomics treatment, with tighter Adaptrials type. */
.site-footer {
  border-top: 1px solid var(--aomics-line) !important;
  font-family: var(--font-sans) !important;
}

.footer-grid,
.footer-bottom,
.footer-disclaimer {
  max-width: 1280px !important;
}

.footer-col h4 {
  color: var(--aomics-ink) !important;
}

.footer-col ul li a,
.footer-brand p,
.footer-bottom,
.footer-legal a {
  color: #687573 !important;
}

.footer-col ul li a:hover,
.footer-legal a:hover {
  color: var(--aomics-burgundy) !important;
}

@media (max-width: 1023px) {
  .biz-hero,
  .technology-hero,
  .editorial-hero,
  .compliance-hero,
  .contact-hero,
  .about-intro {
    padding: 64px 0 72px !important;
  }

  .quote-page,
  .page-hero,
  .error-hero,
  .single-post .post-hero {
    padding-top: 64px !important;
  }

  .single-post .post-hero { padding-top: 16px !important; }
  .breadcrumb-bar { padding-top: 0 !important; }

  .aomics-audience-grid,
  .technology-layer-grid,
  .compliance-chain,
  .compliance-standard-grid,
  .resource-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .about-cta,
  .editorial-cta,
  .technology-cta,
  .compliance-cta,
  .contact-platform-strip {
    width: min(100% - 32px, 1216px);
  }
}

@media (max-width: 760px) {
  .aomics-section-heading,
  .service-atlas-heading,
  .technology-section-heading,
  .about-section-heading,
  .compliance-heading,
  .resources-intro,
  .careers-intro {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 18px !important;
  }

  .biz-cards,
  .service-grid,
  .biz-grid-2,
  .biz-deliverables,
  .aomics-audience-grid,
  .technology-platform-grid,
  .technology-layer-grid,
  .compliance-chain,
  .compliance-standard-grid,
  .resource-grid {
    grid-template-columns: 1fr !important;
  }

  .service-atlas-tabs {
    display: flex !important;
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }

  .service-atlas-tabs button {
    flex: 0 0 180px;
    scroll-snap-align: start;
  }

  .aomics-audience-card { min-height: 0 !important; }
}

@media (max-width: 640px) {
  .biz-hero,
  .technology-hero,
  .editorial-hero,
  .compliance-hero,
  .contact-hero,
  .about-intro {
    padding: 64px 0 62px !important;
  }

  .quote-page,
  .page-hero,
  .error-hero,
  .single-post .post-hero {
    padding-top: 64px !important;
  }

  .single-post .post-hero { padding-top: 16px !important; }
  .breadcrumb-bar { padding-top: 0 !important; }

  .biz-hero h1,
  .technology-hero h1,
  .editorial-hero h1,
  .compliance-hero h1,
  .contact-hero-copy h1,
  .about-intro h1,
  .quote-brief h1,
  .post-title,
  .page-content h1 {
    font-size: clamp(2.45rem, 12vw, 3.35rem) !important;
  }

  .about-cta,
  .editorial-cta,
  .technology-cta,
  .compliance-cta,
  .contact-platform-strip {
    width: calc(100% - 24px);
    margin-bottom: 48px;
  }

  .career-role-header,
  .contact-form-footer,
  .quote-form-actions {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  .cookie-banner {
    right: 12px !important;
    bottom: 12px !important;
    width: calc(100% - 24px) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
