/* Quiz foundation matched to the approved Emotize landing page. */
body.quiz-lp-theme {
  --ink: #14254a;
  --blue: #2e79ac;
  --sky: #eef6fc;
  --orange: #ff916d;
  --orange-ink: #bd5936;
  --line: #dce6f0;
  --muted: #586b83;
  --navy: var(--ink);
  --navy-2: #244476;
  --cyan: var(--blue);
  --cyan-2: var(--blue);
  --cyan-soft: var(--sky);
  --navy-soft: #edf3f9;
  --dark: #495d76;
  --medium: var(--muted);
  --light: var(--line);
  --offwhite: #f8fbfd;
  --white: #fff;
  --violet: var(--orange-ink);
  --violet-2: #a74f32;
  --violet-soft: #fff0e7;
  --notice: var(--blue);
  --success: var(--blue);
  --warn: var(--orange-ink);
  --danger: var(--orange-ink);
  --grad-primary: linear-gradient(135deg, #14254a, #244476);
  --grad-accent: linear-gradient(135deg, #2e79ac, #408bb9);
  --grad-brand: linear-gradient(135deg, #14254a, #2e79ac);
  --grad-violet: linear-gradient(135deg, #ff916d, #ffa380);
  --band-navy: linear-gradient(180deg, #18375b, #14254a);
  --footer-navy: linear-gradient(180deg, #18375b, #10223e);
  --text-strong: var(--ink);
  --text-body: var(--dark);
  --text-muted: var(--muted);
  --surface-page: #fff;
  --surface-card: #fff;
  --surface-tint: var(--sky);
  --border-hairline: var(--line);
  --border-card: var(--line);
  --accent: var(--blue);
  --accent-ink: var(--blue);
  --link: var(--blue);
  --font-body: 'Source Sans 3', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --font-display: var(--font-body);
  --font-mono: var(--font-body);
  --font-label: var(--font-body);
  --font-serif: 'Lora', Georgia, serif;
  --fw-heading: 700;
  --fw-heavy: 750;
  --shadow-sm: 0 2px 8px #14254a08;
  --shadow-md: 0 6px 18px #21486712;
  --shadow-lg: 0 16px 40px -20px #21486730;
  --shadow-card: 0 18px 45px -25px #2148672b;
  --shadow-glow: 0 5px 20px #2e79ac21;
  --shadow-float: 0 20px 45px -24px #21486733;
  --shadow-form: 0 12px 30px -20px #21486733;
  --focus-ring: 0 0 0 4px #2e79ac26;
  min-width: 0;
  color: var(--ink);
  font-family: var(--font-body);
  font-size: 17px;
  line-height: 1.5;
  background:
    radial-gradient(ellipse 980px 720px at calc(50% + 310px) 150px, #e8f3fbb3 0%, transparent 72%),
    radial-gradient(ellipse 800px 560px at calc(50% - 350px) 470px, #fff0e599 0%, transparent 75%),
    #fff;
}

body.quiz-lp-theme .bg-layer {
  display: none;
}

body.quiz-lp-theme ::selection {
  background: #d9eafa;
  color: var(--ink);
}

body.quiz-lp-theme :is(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid #328ac1;
  outline-offset: 4px;
}

body.quiz-lp-theme .lp-header {
  padding-top: 22px;
}

body.quiz-lp-theme .lp-header-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-height: 66px;
}

body.quiz-lp-theme .lp-header-row > img {
  display: block;
  width: 220px;
  height: auto;
  max-width: 100%;
  object-fit: contain;
}

body.quiz-lp-theme .lp-header-row > span {
  max-width: 100%;
}

body.quiz-lp-theme .hdr-back {
  justify-self: start;
  color: var(--muted);
  font-family: var(--font-body);
  font-weight: 600;
}

body.quiz-lp-theme main {
  min-width: 0;
  padding: 26px 20px 60px;
}

body.quiz-lp-theme :is(.quiz, .screen) {
  min-width: 0;
}

body.quiz-lp-theme .qcard {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 22px;
  padding: 38px 36px 34px;
  background: #ffffffed;
  box-shadow: var(--shadow-card);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  overflow-wrap: break-word;
}

body.quiz-lp-theme :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: -.035em;
}

body.quiz-lp-theme :is(h1.t, h2.t) {
  color: var(--ink);
  font-weight: 750;
  line-height: 1.08;
  letter-spacing: -.035em;
}

body.quiz-lp-theme h1.t {
  font-size: clamp(34px, 4.5vw, 48px);
}

body.quiz-lp-theme h2.t {
  font-size: clamp(25px, 3.2vw, 34px);
}

body.quiz-lp-theme :is(.accent, .t .accent) {
  color: var(--blue);
  font-style: normal;
}

body.quiz-lp-theme :is(.kicker, .step-tag, .mk) {
  font-family: var(--font-body);
  font-weight: 650;
  letter-spacing: .13em;
  color: var(--blue);
}

body.quiz-lp-theme .lead {
  color: var(--dark);
  font-size: 18px;
  line-height: 1.55;
}

body.quiz-lp-theme .body {
  color: var(--dark);
  font-size: 17px;
  line-height: 1.55;
}

body.quiz-lp-theme :is(.lead, .body) b {
  color: var(--ink);
  font-weight: 650;
}

body.quiz-lp-theme :is(.msg, .sub, .level-name) {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: -.025em;
}

body.quiz-lp-theme .quote {
  text-wrap: balance;
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(18px, 2.4vw, 21px);
  line-height: 1.5;
  color: #58768e;
}

@media (max-width: 640px) {
  body.quiz-lp-theme .lp-header {
    padding-top: 18px;
  }

  body.quiz-lp-theme .lp-header-row {
    gap: 8px;
    min-height: 48px;
  }

  body.quiz-lp-theme .lp-header-row > img {
    width: clamp(132px, 42vw, 155px);
  }

  body.quiz-lp-theme .hdr-back {
    gap: 5px;
    padding: 8px 0;
    font-size: 13px;
  }

  body.quiz-lp-theme main {
    padding: 22px 14px 48px;
  }

  body.quiz-lp-theme .qcard {
    border-radius: 18px;
    padding: 28px 20px 26px;
  }

  body.quiz-lp-theme h1.t {
    font-size: clamp(31px, 8.7vw, 37px);
  }

  body.quiz-lp-theme h2.t {
    font-size: clamp(25px, 7.1vw, 30px);
  }

  body.quiz-lp-theme .lead {
    font-size: 17px;
  }
}
