:root {
  --qt-clr-primary: #003dff;
  --qt-clr-primary-dark: #0030cc;
  --qt-clr-primary-light: #4d79ff;
  --qt-clr-accent: #14f0b5;
  --qt-clr-accent-dark: #0dc494;
  --qt-clr-purple: #890aff;
  --qt-clr-orange: #f57200;
  --qt-clr-dark: #0a0f1e;
  --qt-clr-dark-2: #111827;
  --qt-clr-dark-3: #1e2a3b;
  --qt-clr-surface: #f8faff;
  --qt-clr-surface-2: #eef2ff;
  --qt-clr-white: #ffffff;
  --qt-clr-text: #1f2937;
  --qt-clr-text-body: #374151;
  --qt-clr-muted: #6b7280;
  --qt-clr-light: #9ca3af;
  --qt-clr-border: #e5e7eb;
  --qt-clr-border-dark: rgba(255, 255, 255, 0.12);

  --qt-radius-sm: 6px;
  --qt-radius-md: 10px;
  --qt-radius-lg: 16px;
  --qt-radius-xl: 24px;
  --qt-radius-pill: 999px;

  --qt-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.06);
  --qt-shadow-sm: 0 2px 8px rgba(0, 61, 255, 0.06), 0 1px 3px rgba(0, 0, 0, 0.08);
  --qt-shadow-md: 0 4px 20px rgba(0, 61, 255, 0.1), 0 2px 6px rgba(0, 0, 0, 0.06);
  --qt-shadow-lg: 0 8px 40px rgba(0, 61, 255, 0.16), 0 4px 12px rgba(0, 0, 0, 0.08);

  --qt-container-max: 1280px;
  --qt-container-pad: clamp(1rem, 4vw, 2rem);
  --qt-section-y: clamp(3rem, 8vw, 6rem);

  --qt-ease-std: cubic-bezier(0.4, 0, 0.2, 1);
  --qt-ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
}

html {
  scroll-behavior: smooth;
}

body {
  color: var(--qt-clr-text-body);
  background: var(--qt-clr-white);
  -webkit-font-smoothing: antialiased;
}

.qt-site-main > .wp-block-post-content {
  min-height: 40vh;
}

.qt-site-main {
  padding-top: 92px;
}

.qt-site-main .alignwide,
.qt-site-footer .alignwide,
.qt-site-header .alignwide {
  max-width: var(--qt-container-max);
  padding-inline: var(--qt-container-pad);
}

.qt-section {
  padding: var(--qt-section-y) var(--qt-container-pad);
}

.qt-section--dark {
  background: var(--qt-clr-dark);
  color: var(--qt-clr-white);
}

.qt-section--surface {
  background: var(--qt-clr-surface);
}

.qt-section--surface-2 {
  background: var(--qt-clr-surface-2);
}

.qt-hero--dark,
.qt-cta-band--dark {
  background:
    radial-gradient(circle at 14% 12%, rgb(20 240 181 / 12%) 0%, transparent 34%),
    radial-gradient(circle at 88% 20%, rgb(0 61 255 / 22%) 0%, transparent 38%),
    linear-gradient(180deg, #060d24 0%, #0c1d4b 58%, #12306f 100%);
}

.qt-hero--dark {
  color: var(--qt-clr-white);
}

.qt-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 700;
  font-size: 0.78rem;
  margin-bottom: 0.75rem;
}

.qt-site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 200;
  background: rgb(10 15 30 / 84%);
  border-bottom: 1px solid rgb(255 255 255 / 7%);
  backdrop-filter: blur(14px);
  transition:
    background 250ms var(--qt-ease-std),
    border-color 250ms var(--qt-ease-std),
    box-shadow 250ms var(--qt-ease-std);
}

.qt-site-header.is-scrolled {
  background: rgb(10 15 30 / 94%);
  box-shadow: 0 1px 0 rgb(255 255 255 / 6%);
}

.qt-site-header__inner {
  min-height: 82px;
}

.qt-site-header .custom-logo {
  width: 112px;
  height: auto;
}

.qt-site-footer {
  background: linear-gradient(180deg, #060d21 0%, #091432 100%);
}

.qt-site-footer .wp-block-site-title,
.qt-site-footer h4 {
  color: var(--qt-clr-white);
}

.qt-site-footer p,
.qt-site-footer a {
  color: rgb(255 255 255 / 75%);
}

@media (max-width: 1024px) {
  .qt-site-main {
    padding-top: 84px;
  }

  .qt-site-header {
    backdrop-filter: none;
  }

  .qt-site-header__inner {
    min-height: 76px;
  }
}

@media (max-width: 768px) {
  .qt-site-header .custom-logo {
    width: 88px;
  }
}
