/**
 * CritiCall Ops — light blue theme
 * Loaded after site.css
 */

:root {
  --bg: #edf6fd;
  --bg-soft: #e3f0fa;
  --fg: #1e6bb8;
  --muted: #5a8fc4;
  --card: #ffffff;
  --border: #c5dced;
  --border-strong: #9ec5e8;
  --cyan: #1a7fd4;
  --cyan-hover: #1565b0;
  --cyan-soft: #dbeafe;
  --violet: #6366f1;
  --shadow: 0 4px 24px rgba(26, 127, 212, 0.08);
  --shadow-lg: 0 16px 48px rgba(26, 127, 212, 0.12);
  --header-bg: rgba(255, 255, 255, 0.92);
}

body {
  background:
    linear-gradient(180deg, #f5faff 0%, var(--bg) 28%, #e8f3fb 100%);
  color: var(--fg);
}

body::before {
  background:
    radial-gradient(ellipse 80% 50% at 50% -20%, rgba(26, 127, 212, 0.14), transparent),
    radial-gradient(ellipse 55% 45% at 0% 60%, rgba(56, 189, 248, 0.12), transparent),
    radial-gradient(ellipse 60% 40% at 100% 100%, rgba(147, 197, 253, 0.16), transparent);
}

.breadcrumbs__item[aria-current="page"] {
  color: var(--fg);
}

.pilot-notice {
  border-bottom-color: rgba(26, 127, 212, 0.22);
  background: rgba(219, 234, 254, 0.85);
  color: var(--fg);
}

.pilot-notice__text {
  color: var(--muted);
}

.pilot-notice__text strong {
  color: var(--fg);
}

.pilot-notice__dismiss {
  background: #ffffff;
  border-color: var(--border);
  color: var(--muted);
}

.pilot-notice__dismiss:hover {
  background: var(--cyan-soft);
  border-color: var(--border-strong);
  color: var(--fg);
}

.pilot-promo-banner {
  border-bottom-color: rgba(26, 127, 212, 0.2);
  background: linear-gradient(90deg, rgba(219, 234, 254, 0.95) 0%, rgba(237, 246, 253, 0.98) 55%);
}

.pilot-promo-banner__text,
.pricing-pilot-promo {
  color: var(--muted);
}

.pilot-promo-code,
.pilot-notice .pilot-promo-code {
  border-color: rgba(26, 127, 212, 0.35);
  background: rgba(219, 234, 254, 0.9);
  color: var(--cyan-hover);
}

.site-header {
  background: var(--header-bg);
  border-bottom-color: var(--border);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
}

.site-header--scrolled {
  background: rgba(255, 255, 255, 0.98);
  border-bottom-color: rgba(26, 127, 212, 0.18);
  box-shadow: var(--shadow);
}

.nav-toggle {
  border-color: var(--border-strong);
  background: #ffffff;
  color: var(--fg);
}

.nav-toggle:hover,
.nav-toggle[aria-expanded="true"] {
  border-color: rgba(26, 127, 212, 0.45);
  color: var(--cyan);
  background: var(--cyan-soft);
}

.nav-link {
  color: var(--muted);
}

.nav-link:hover,
.nav-link--active,
.nav-dropdown__link:hover {
  color: var(--cyan);
}

.nav-quiet {
  color: var(--fg);
  background: #ffffff;
  border-color: var(--border-strong);
}

.nav-quiet:hover {
  color: var(--cyan-hover);
  border-color: var(--cyan);
  background: var(--cyan-soft);
}

.btn-primary {
  background: linear-gradient(180deg, #2890e0 0%, var(--cyan) 100%);
  color: #ffffff;
  box-shadow: 0 2px 8px rgba(26, 127, 212, 0.25);
}

.btn-primary:hover {
  background: var(--cyan-hover);
}

.btn-secondary {
  border-color: var(--border-strong);
  background: #ffffff;
  color: var(--fg);
}

.btn-secondary:hover {
  border-color: var(--cyan);
  background: var(--cyan-soft);
}

.btn-ghost:hover {
  color: var(--cyan-hover);
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.7);
}

.hero-brand {
  color: var(--fg);
}

.hero-eyebrow {
  color: var(--cyan);
}

.hero-visual {
  border-color: rgba(26, 127, 212, 0.22);
  box-shadow: var(--shadow-lg);
}

.hero-visual::after {
  background: linear-gradient(145deg, rgba(26, 127, 212, 0.08) 0%, transparent 55%);
}

.hero-cad-frame {
  box-shadow:
    var(--shadow-lg),
    0 0 0 1px rgba(26, 127, 212, 0.12);
}

.hero-product-label {
  color: var(--muted);
}

.hero-product-badge {
  background: rgba(219, 234, 254, 0.95);
  color: var(--cyan-hover);
}

.hero-product-card {
  border-color: var(--border);
  background: #ffffff;
  box-shadow: var(--shadow);
}

.pillars {
  color: var(--muted);
}

.credibility-strip {
  padding-top: 2rem;
  padding-bottom: 2rem;
  background: rgba(255, 255, 255, 0.65);
  border-block: 1px solid var(--border);
}

.credibility-strip-grid {
  margin-bottom: 0;
}

.credibility-strip-card {
  text-align: center;
  padding: 1.25rem 1rem;
}

.credibility-strip-card h3 {
  font-size: 1rem;
  margin-bottom: 0.35rem;
}

.credibility-strip-card p {
  font-size: 0.9375rem;
  margin-bottom: 0;
  color: var(--muted);
}

.section-bordered {
  background: rgba(255, 255, 255, 0.55);
  border-color: var(--border);
}

.section-highlight {
  border-color: rgba(26, 127, 212, 0.22);
  background: linear-gradient(180deg, rgba(219, 234, 254, 0.65) 0%, rgba(237, 246, 253, 0.9) 100%);
}

.card {
  border-color: var(--border);
  background: var(--card);
  box-shadow: var(--shadow);
}

.card:hover {
  border-color: rgba(26, 127, 212, 0.35);
  box-shadow: var(--shadow-lg);
}

.compare-label {
  color: var(--cyan);
}

.compare-outcome {
  color: var(--muted);
}

.visual-banner::before {
  background: linear-gradient(
    90deg,
    rgba(237, 246, 253, 0.94) 0%,
    rgba(237, 246, 253, 0.78) 50%,
    rgba(237, 246, 253, 0.55) 100%
  );
}

.visual-banner {
  background-color: #dbeafe;
}

.visual-banner h2 {
  color: var(--fg);
}

.visual-banner p {
  color: var(--muted);
}

.split-visual__media {
  box-shadow: var(--shadow-lg);
}

.cta-box {
  border-color: rgba(26, 127, 212, 0.25);
  background: linear-gradient(
    145deg,
    rgba(255, 255, 255, 0.98) 0%,
    rgba(219, 234, 254, 0.75) 100%
  );
  box-shadow: var(--shadow-lg);
}

.stat-source,
.stat-source a,
.sources-note,
.sources-note a,
.resilience-note {
  color: var(--muted);
}

.stat-source a:hover,
.sources-note a:hover {
  color: var(--cyan);
}

.pricing-card--featured {
  border-color: rgba(26, 127, 212, 0.45);
  background: linear-gradient(180deg, rgba(219, 234, 254, 0.85), rgba(255, 255, 255, 0.98));
}

.pricing-hero-tagline {
  border-color: rgba(26, 127, 212, 0.3);
  background: rgba(255, 255, 255, 0.85);
}

.site-footer {
  border-top-color: var(--border);
  background: rgba(255, 255, 255, 0.72);
}

.site-footer .wrap {
  color: var(--muted);
}

.footer-company,
.footer-address {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.75rem;
  line-height: 1.45;
  color: var(--muted);
}

.footer-contact {
  color: var(--cyan);
}

.footer-contact:hover {
  color: var(--cyan-hover);
}

.footer-social {
  color: var(--muted);
}

.legal-notice {
  border-color: var(--border);
  background: rgba(255, 255, 255, 0.92);
}

.legal-notice--prominent {
  border-color: rgba(26, 127, 212, 0.35);
  background: linear-gradient(180deg, rgba(219, 234, 254, 0.95), rgba(255, 255, 255, 0.98));
}

.legal-notice--prominent h2 {
  color: var(--cyan-hover);
}

.legal-toc {
  background: rgba(255, 255, 255, 0.88);
  border-color: var(--border);
}

.legal-toc h2 {
  color: var(--muted);
}

.form-input,
.form-select,
.form-textarea {
  border-color: var(--border-strong);
  background: #ffffff;
  color: var(--fg);
}

.form-input:focus,
.form-select:focus,
.form-textarea:focus {
  border-color: var(--cyan);
  box-shadow: 0 0 0 3px rgba(26, 127, 212, 0.15);
}

.form-notice {
  border-color: rgba(26, 127, 212, 0.2);
  background: rgba(219, 234, 254, 0.55);
  color: var(--muted);
}

.status-chip--investigating {
  color: #6d28d9;
  background: rgba(167, 139, 250, 0.15);
  border-color: rgba(167, 139, 250, 0.35);
}

.status-chip--progress {
  color: var(--cyan-hover);
  background: rgba(219, 234, 254, 0.95);
  border-color: rgba(26, 127, 212, 0.35);
}

.status-chip--issue {
  color: #b45309;
  background: rgba(251, 191, 36, 0.15);
  border-color: rgba(245, 158, 11, 0.35);
}

.status-chip--ok {
  color: #15803d;
  background: rgba(34, 197, 94, 0.12);
  border-color: rgba(34, 197, 94, 0.35);
}

.status-meta {
  color: var(--muted);
}

@media (max-width: 899px) {
  .nav--site.is-open {
    background: rgba(255, 255, 255, 0.98);
    border-color: var(--border);
    box-shadow: var(--shadow-lg);
  }

  .nav-dropdown__menu {
    background: rgba(237, 246, 253, 0.98);
    border-color: var(--border);
  }
}

.nav--site .nav-link:not(.btn-primary) {
  background: transparent;
  border-color: transparent;
  color: var(--muted);
  box-shadow: none;
}

.nav--site .nav-link:not(.btn-primary):hover,
.nav--site .nav-link:not(.btn-primary).nav-link--active,
.nav--site .nav-dropdown__toggle.nav-link--active {
  color: var(--cyan);
  background: rgba(219, 234, 254, 0.65);
  border-color: transparent;
}

.nav--site .nav-dropdown__menu {
  background: rgba(255, 255, 255, 0.98);
  border-color: var(--border);
  box-shadow: 0 12px 32px rgba(26, 127, 212, 0.12);
}

.hero-stat-callout {
  background: rgba(219, 234, 254, 0.75);
  border-color: rgba(26, 127, 212, 0.25);
  color: var(--muted);
}

.hero-stat-callout strong {
  color: var(--cyan);
}

.pricing-card {
  background: #ffffff;
  border-color: var(--border);
  box-shadow: var(--shadow);
}

.pricing-card--featured {
  background: linear-gradient(180deg, rgba(219, 234, 254, 0.9), #ffffff);
}

.faq-item,
details.faq-panel {
  background: #ffffff;
  border-color: var(--border);
}

.stat-card {
  background: #ffffff;
}

.compare-card {
  background: #ffffff;
}

.section-bordered {
  background: rgba(255, 255, 255, 0.5);
}

.section-highlight {
  background: linear-gradient(180deg, rgba(219, 234, 254, 0.55), rgba(237, 246, 253, 0.95));
}

.card--photo .card-body {
  background: linear-gradient(180deg, transparent, rgba(255, 255, 255, 0.95));
}

.site-header {
  background: rgba(255, 255, 255, 0.94);
}

.site-header--scrolled {
  box-shadow: 0 4px 24px rgba(26, 127, 212, 0.08);
}

.page-faq .section h2,
.page-faq .section-intro {
  text-align: center;
}
