@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Noto+Serif:ital,wght@0,100..900;1,100..900&display=swap');

:root {
  --lf-color-primary: #2B4742;
  --lf-color-secondary: #F05023;
  --lf-color-bg: #E2DFD6;
  --lf-color-badge-bg: #EDEAE4;
  --lf-color-input-bg: #CCC9C0;
  --lf-color-muted: #808080;

  --lf-font-title: 'Noto Serif', serif;
  --lf-font-body: 'Noto Sans', sans-serif;

  /* Fluid typography: 320px -> 1440  px viewport, scaling up to max 36px (for XL) */
  --lf-fs-xxs: clamp(0.5rem, 0.4464rem + 0.2679vw, 0.6875rem);
  /* 8px -> 11px */
  --lf-fs-xs: clamp(0.5625rem, 0.5089rem + 0.2679vw, 0.75rem);
  /* 9px -> 12px */
  --lf-fs-sm: clamp(0.625rem, 0.5536rem + 0.3571vw, 0.875rem);
  /* 10px -> 14px */
  --lf-fs-md: clamp(0.75rem, 0.6429rem + 0.5357vw, 1.125rem);
  /* 12px -> 18px */
  --lf-fs-lg: clamp(0.875rem, 0.7321rem + 0.7143vw, 1.375rem);
  /* 14px -> 22px */
  --lf-fs-xl: clamp(1.3125rem, 1.0446rem + 1.3393vw, 2.25rem);
  /* 21px -> 36px */

  /* [ADDED] New custom tokens for final title sizing | Updated: 2026-08-21 */
  /* 22px (1.375rem) -> 28px (1.75rem) across 320px - 1440px viewports */
  --lf-fs-title-final: clamp(1.375rem, 1.2679rem + 0.5357vw, 1.75rem);
  /* 24px (1.5rem) -> 32px (2rem) across 320px - 1440px viewports */
  --lf-lh-title-final: clamp(1.5rem, 1.3571rem + 0.7143vw, 2rem);

  /* Fluid line-heights matching design ratios*/
  --lf-lh-xxs: clamp(0.625rem, 0.5714rem + 0.2679vw, 0.8125rem);
  /* 10px -> 13px */
  --lf-lh-xs: clamp(0.6875rem, 0.6339rem + 0.2679vw, 0.875rem);
  /* 11px -> 14px */
  --lf-lh-sm: clamp(0.75rem, 0.6429rem + 0.5357vw, 1.125rem);
  /* 12px -> 18px */
  --lf-lh-md: clamp(0.875rem, 0.7679rem + 0.5357vw, 1.25rem);
  /* 14px -> 20px */
  --lf-lh-lg: clamp(1.125rem, 1rem + 0.625vw, 1.5625rem);
  /* 18px -> 25px */
  --lf-lh-xl: clamp(1.5rem, 1.1786rem + 1.6071vw, 2.625rem);
  /* 24px -> 42px */

  /* Fluid spacing: 320px -> 1440px viewport, 1.25 scale factor on desktop */
  --lf-space-xs: clamp(0.5rem, 0.4643rem + 0.1786vw, 0.625rem);
  /* 8px -> 10px */
  --lf-space-sm: clamp(0.75rem, 0.6964rem + 0.2679vw, 0.9375rem);
  /* 12px -> 15px */
  --lf-space-md: clamp(1.125rem, 1.0446rem + 0.4018vw, 1.4063rem);
  /* 18px -> 22.5px */
  --lf-space-lg: clamp(1.75rem, 1.625rem + 0.625vw, 2.1875rem);
  /* 28px -> 35px */

  /* 21px (1.3125rem) -> 28px (1.75rem) across 320px - 1440px viewports */
  --lf-fs-title-start: clamp(1.125rem, 1.2679rem + 0.5357vw, 1.75rem);
  /* 24px (1.5rem) -> 32px (2rem) across 320px - 1440px viewports */
  --lf-lh-title-start: clamp(1.5rem, 1.3571rem + 0.7143vw, 2rem);"
}

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  height: 100%;
  width: 100%;
  font-size: 16px;
}


.lfuc-quiz {
  width: 100%;
  max-width: 600px;
  margin: auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.quiz__content-wrapper,
.lfuc-quiz__content-wrapper {
  width: 100%;
  min-height: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  overflow-y: visible;
  /*padding: calc(var(--lf-space-lg) + 24px) var(--lf-space-md) var(--lf-space-lg);*/
  padding: 0;
}

.lfuc-quiz__content-wrapper::-webkit-scrollbar {
  display: none;
}

.lfuc-quiz__logo-container {
  margin-bottom: var(--lf-space-lg);
}

.lfuc-quiz__logo-img {
  /* Old value: 48px | New value: 43px | Updated: 2026-08-21 */
  height: 43px;
  object-fit: contain;
}

.lfuc-quiz__title {
  font-family: var(--lf-font-title);
  /* Old value: var(--lf-fs-xl) | New value: 1rem | Updated: 2026-08-21 */
  font-size: var(--lf-fs-title-start);
  /* Old value: var(--lf-lh-xl) | New value: 1rem | Updated: 2026-08-21 */
  line-height: var(--lf-lh-title-start);
  font-weight: 500;
  color: var(--lf-color-primary);
  /* Old value: var(--lf-space-lg) | New value: 1rem | Updated: 2026-08-21 */
  margin-bottom: 1rem;
}

.lfuc-quiz__subtitle {
  font-family: var(--lf-font-title);
  /* Old value: var(--lf-fs-xl) | New value: var(--lf-lh-md) | Updated: 2026-08-21 */
  font-size: var(--lf-lh-md);
  line-height: var(--lf-lh-xl);
  font-weight: 500;
  color: var(--lf-color-secondary);
  /* Old value: var(--lf-space-sm) | New value: var(--lf-space-xs) | Updated: 2026-08-21 */
  margin-bottom: var(--lf-space-xs);
}

#quiz__subtitle-game {
  margin-bottom: var(--lf-space-xs);
}

.lfuc-quiz__description {
  font-family: var(--lf-font-body);
  /* Old value: var(--lf-fs-lg) | New value: var(--lf-fs-md) | Updated: 2026-08-21 */
  font-size: var(--lf-fs-md);
  line-height: var(--lf-lh-lg);
  color: var(--lf-color-primary);
  opacity: 0.85;
  margin-bottom: var(--lf-space-lg);
  font-weight: 500;
}

.lfuc-quiz__form {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--lf-space-sm);
  margin-bottom: var(--lf-space-sm);
}

.quiz__input-group,
.lfuc-quiz__input-group {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  background-color: var(--lf-color-input-bg) !important;
  border-radius: 12px;
  padding: var(--lf-space-sm) var(--lf-space-md);
  transition: all 0.3s ease;
}

.quiz__input-group:focus-within,
.lfuc-quiz__input-group:focus-within {
  background-color: #C8C5BB !important;
  box-shadow: 0 0 0 2px rgba(43, 71, 66, 0.15);
}

.riq-lead-form input,
.riq-lead-form input.quiz__input,
.riq-lead-form input.lfuc-quiz__input,
.quiz__input-group input,
.lfuc-quiz__input-group input,
.quiz__input,
.lfuc-quiz__input {
  width: 100%;
  border: none !important;
  background: transparent !important;
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-md);
  line-height: var(--lf-lh-md);
  color: var(--lf-color-primary) !important;
  font-weight: 500;
  outline: none;
  padding: 0 !important;
  padding-right: var(--lf-space-lg) !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.quiz__input::placeholder,
.lfuc-quiz__input::placeholder {
  color: var(--lf-color-primary);
  opacity: 0.6;
}

.lfuc-quiz__required-star {
  position: absolute;
  right: 20px;
  color: var(--lf-color-secondary);
  font-size: var(--lf-fs-md);
  pointer-events: none;
}

.lfuc-quiz__mandatory-note {
  align-self: flex-start;
  font-size: var(--lf-fs-xs);
  line-height: var(--lf-lh-xs);
  font-weight: 500;
  color: var(--lf-color-primary);
  opacity: 0.8;
  /*margin-bottom: var(--lf-space-sm);*/
  margin-bottom: calc(var(--lf-space-sm) + 4px);
  display: flex;
  align-items: center;
  gap: var(--lf-space-xs);
  padding-left: 4px;
}

.lfuc-quiz__star-icon {
  color: var(--lf-color-secondary);
  font-size: var(--lf-fs-xxs);
}

.lfuc-quiz__submit-btn {
  width: 100%;
  background-color: var(--lf-color-secondary);
  color: #FFFFFF;
  border: none;
  border-radius: 7px;
  padding: 9px 19px;
  font-family: var(--lf-font-title);
  font-size: var(--lf-fs-lg);
  /* Old value: var(--lf-lh-lg) | New value: var(--lf-lh-md) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-md);
  font-weight: 600;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 4px 14px rgba(240, 80, 35, 0.25);
  text-decoration: none;
}

.lfuc-quiz__submit-btn:hover {
  background-color: #D94116;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(240, 80, 35, 0.35);
}

.lfuc-quiz__submit-btn:active {
  transform: translateY(1px);
}

/* Quiz Steps */
.lfuc-quiz__step {
  display: none;
  width: 100%;
  flex-direction: column;
}

.lfuc-quiz__step--active {
  display: flex;
}

.lfuc-quiz__question-block {
  display: none;
  width: 100%;
  flex-direction: column;
}

.lfuc-quiz__question-block.active {
  display: flex;
}

/* Progress Indicator */
.lfuc-quiz__progress {
  display: flex;
  width: 100%;
  gap: var(--lf-space-xs);
  margin-bottom: var(--lf-space-lg);
}

.lfuc-quiz__progress-segment {
  height: 4px;
  background-color: var(--lf-color-muted);
  opacity: 0.35;
  border-radius: 2px;
  flex-grow: 1;
  transition: all 0.3s ease;
}

.lfuc-quiz__progress-segment--active {
  background-color: var(--lf-color-secondary);
  opacity: 1;
}

/* Question Counter and Text */
.lfuc-quiz__counter {
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-sm);
  line-height: var(--lf-lh-xs);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--lf-color-primary);
  opacity: 0.7;
  margin-bottom: var(--lf-space-sm);
}

.lfuc-quiz__question-text {
  font-family: var(--lf-font-title);
  font-size: var(--lf-fs-xl);
  /* [REORDERED] line-height moved before color (was after) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-xl);
  color: var(--lf-color-secondary);
  margin-bottom: var(--lf-space-lg);
  padding: 0 var(--lf-space-xs);
}

/* Option Cards */
.lfuc-quiz__options {
  display: flex;
  flex-direction: column;
  gap: var(--lf-space-sm);
  width: 100%;
  margin-bottom: var(--lf-space-lg);
}

.lfuc-quiz__option-card {
  display: flex;
  align-items: center;
  width: 100%;
  /* Old value: //background-color: var(--lf-color-input-bg); | New value: commented out properly | Updated: 2026-08-21 */
  /*background-color: var(--lf-color-input-bg);*/
  background-color: var(--lf-color-badge-bg);
  border-radius: 12px;
  padding: var(--lf-space-sm) var(--lf-space-md);
  border: 2px solid transparent;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: left;
}

.lfuc-quiz__option-card--selected {
  border-color: var(--lf-color-primary);
}

.lfuc-quiz__option-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  height: 36px;
  min-width: 36px;
  background-color: var(--lf-color-badge-bg);
  border-radius: 50%;
  /* Old value: var(--lf-color-secondary) | New value: #4E4C4C | Updated: 2026-08-21 */
  color: #4E4C4C;
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-md);
  line-height: var(--lf-lh-md);
  font-weight: 500;
}

.lfuc-quiz__option-text {
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-md);
  /* [REORDERED] line-height moved before color (was after) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-md);
  color: var(--lf-color-primary);
}

.lfuc-quiz__option-badge span {
  padding: 0 0.5rem;
}

/* Navigation buttons styling */
.lfuc-quiz__nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-top: var(--lf-space-xs);
  position: relative;
  z-index: 10;
}

.lfuc-quiz__nav-btn-back {
  background: none;
  border: none;
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-md);
  line-height: var(--lf-lh-md);
  color: var(--lf-color-muted);
  opacity: 0.8;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: opacity 0.2s ease;
  padding: 12px 16px;
  min-height: 44px;
  position: relative;
  z-index: 11;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.lfuc-quiz__nav-btn-back * {
  pointer-events: none;
}

.lfuc-quiz__nav-btn-back:hover {
  opacity: 1;
}

.lfuc-quiz__nav-btn-back:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.lfuc-quiz__nav-btn-next {
  background-color: var(--lf-color-secondary);
  color: #FFFFFF;
  border: none;
  outline: none;
  border-radius: 12px;
  padding: var(--lf-space-sm) var(--lf-space-md);
  min-height: 48px;
  font-family: var(--lf-font-title);
  font-size: var(--lf-fs-lg);
  line-height: var(--lf-lh-lg);
  font-weight: 600;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--lf-space-xs);
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 4px 14px rgba(240, 80, 35, 0.25);
  position: relative;
  z-index: 11;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.lfuc-quiz__nav-btn-next * {
  pointer-events: none;
}

.lfuc-quiz__nav-btn-next:hover {
  background-color: #D94116;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(240, 80, 35, 0.35);
}

.lfuc-quiz__nav-btn-next:focus,
.lfuc-quiz__nav-btn-next:focus-visible,
.lfuc-quiz__nav-btn-next:active {
  outline: none;
  border: none;
  box-shadow: 0 4px 14px rgba(240, 80, 35, 0.25);
}

.lfuc-quiz__nav-btn-next:active {
  transform: translateY(1px);
}

.lfuc-quiz__nav-btn-next:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
  box-shadow: none;
  transform: none;
}


.lfuc-quiz__submit-btn-span {
  display: flex;
  align-items: center;
}

.lfuc-quiz__arrow-icon {
  font-family: var(--lf-font-body);
}

/* ==========================================================================
   RESULTS SCREENS STYLE
   ========================================================================== */

.lfuc-quiz__step--results {
  text-align: center;
  align-items: center;
}

.lfuc-quiz__progress--results {
  margin-bottom: var(--lf-space-xs);
}

.lfuc-quiz__results-progress-text {
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-sm);
  color: var(--lf-color-muted);
  font-weight: 500;
  margin-bottom: var(--lf-space-lg);
  width: 100%;
  text-align: left;
}

/* Slide Styles */
.lfuc-quiz__results-slides {
  width: 100%;
  text-align: left;
  margin-bottom: var(--lf-space-lg);
}

.lfuc-results__slide {
  display: none;
  flex-direction: column;
  animation: lfuc-fadeIn 0.4s ease forwards;
}

.lfuc-results__slide.active {
  display: flex;
}

@keyframes lfuc-fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Nav override for results */
.lfuc-quiz__nav--results {
  margin-top: var(--lf-space-md);
  border-top: 1px solid rgba(43, 71, 66, 0.1);
  padding-top: var(--lf-space-md);
}

.lfuc-quiz__results-slides::-webkit-scrollbar {
  display: none;
}

/* Typography Modifiers */
.lfuc-quiz__subtitle--results-greeting {
  margin-top: var(--lf-space-sm);
  margin-bottom: var(--lf-space-xs);
}

.lfuc-quiz__description--results-thanks {
  margin-bottom: var(--lf-space-lg);
}

.lfuc-quiz__counter--results-style {
  margin-bottom: var(--lf-space-xs);
}

.lfuc-quiz__subtitle--results-style-name {
  font-family: var(--lf-font-title, 'Noto Serif', serif);
  font-size: calc(var(--lf-fs-xl) * 1.25);
  color: var(--lf-color-primary);
  margin-bottom: var(--lf-space-md);
}

/* Badge Modifiers */
.quiz__option-badge--large,
.lfuc-quiz__option-badge--large {
  width: clamp(100px, 10vw, 200px);
  height: clamp(100px, 10vw, 200px);
  min-width: 100px;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  /* Old value: clamp(0.65rem, 1.5vw, 0.85rem) | New value: clamp(0.6875rem, 1.5vw, 0.85rem) | Updated: 2026-08-21 */
  font-size: clamp(0.6875rem, 1.5vw, 0.85rem);
  /* Old value: 1.2 | New value: 13px | Updated: 2026-08-21 */
  line-height: 13px;
  /* Old value: 600 | New value: 500 | Updated: 2026-08-21 */
  font-weight: 500;
  padding: 12px !important;
  box-sizing: border-box;
}

.results__graphic-container .quiz__option-badge--large,
.results__graphic-container .lfuc-quiz__option-badge--large,
.lfuc-results__graphic-container .lfuc-quiz__option-badge--large {
  width: clamp(100px, 10vw, 200px);
  height: clamp(100px, 10vw, 200px);
  border-radius: 50% !important;
}

.lfuc-quiz__option-badge--results-watch {
  display: inline-flex;
  vertical-align: middle;
  border-radius: 20px;
  padding: 4px 12px;
  background-color: transparent;
  border: 1px solid var(--lf-color-secondary);
  font-size: var(--lf-fs-xs);
  font-weight: 600;
  text-transform: uppercase;
}

.lfuc-quiz__option-badge--conscious {
  background-color: #009087;
  color: #FFFFFF;
}

.lfuc-quiz__option-badge--awareness {
  background-color: #F48B73;
  color: #FFFFFF;
}

.lfuc-quiz__option-badge--regulation {
  background-color: #ECCA78;
  color: #4A3E1B;
}

.lfuc-quiz__option-badge--cream {
  background-color: #F8ECC8;
  color: #4A3E1B;
}

/* [ADDED] New badge variant for dark-cream | Updated: 2026-08-21 */
.quiz__option-badge--dark-cream {
  background-color: #EECF75;
  color: var(--lf-color-primary);
}

.lfuc-quiz__option-badge--slate {
  background-color: #769389;
  color: #FFFFFF;
}

.lfuc-quiz__option-badge--dark {
  background-color: #5C5346;
  color: #FFFFFF;
}

.lfuc-quiz__option-badge--communication {
  background-color: #2A7B9B;
  color: #FFFFFF;
}

.lfuc-quiz__option-badge--conflict {
  background-color: #A85A4E;
  color: #FFFFFF;
}

/* Also support non-prefixed classnames used in HTML */
/* [REFORMATTED] Changed from single-line to multi-line declarations | Updated: 2026-08-21 */
.quiz__option-badge--conscious {
  background-color: #009087;
  color: #FFFFFF;
}

.quiz__option-badge--awareness {
  background-color: #F48B73;
  color: #FFFFFF;
}

.quiz__option-badge--regulation {
  background-color: #ECCA78;
  color: #4A3E1B;
}

.quiz__option-badge--cream {
  background-color: #F8ECC8;
  color: #4A3E1B;
}

.quiz__option-badge--slate {
  background-color: #769389;
  color: #FFFFFF;
}

.quiz__option-badge--dark {
  background-color: #5C5346;
  color: #FFFFFF;
}

.quiz__option-badge--communication {
  background-color: #2A7B9B;
  color: #FFFFFF;
}

.quiz__option-badge--conflict {
  background-color: #A85A4E;
  color: #FFFFFF;
}

/* Card Modifiers */
.lfuc-quiz__option-card--results-info {
  justify-content: space-between;
  align-items: self-start;
  cursor: default;
  border: none;
  margin: var(--lf-space-md) 0;
  gap: var(--lf-space-md);
}

/* [ADDED] New nested overrides for subtitle/description inside results-info card | Updated: 2026-08-21 */
.lfuc-quiz__option-card--results-info .lfuc-quiz__subtitle {
  font-size: var(--lf-lh-lg);
  line-height: var(--lf-fs-xl);
}

.lfuc-quiz__option-card--results-info .lfuc-quiz__description {
  font-size: var(--lf-fs-md) !important;
  margin-bottom: 0 !important;
}

.lfuc-quiz__option-card--results-cta-dark {
  flex-direction: column;
  align-items: flex-start;
  cursor: default;
  margin-bottom: var(--lf-space-sm);
  background-color: var(--lf-color-primary);
  color: #FFFFFF;
  padding: var(--lf-space-md);
  border: none;
}

.lfuc-quiz__option-card--results-cta-light {
  flex-direction: column;
  align-items: flex-start;
  cursor: default;
  margin-bottom: var(--lf-space-sm);
  border: 1px solid rgba(43, 71, 66, 0.15);
  padding: var(--lf-space-md);
}

.lfuc-quiz__option-card--border-primary {
  cursor: default;
  border: none;
  border-left: 4px solid var(--lf-color-primary);
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: var(--lf-space-sm);
  border-radius: 12px;
}

.lfuc-quiz__option-card--border-secondary {
  cursor: default;
  border: none;
  border-left: 4px solid var(--lf-color-secondary);
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: var(--lf-space-sm);
  border-radius: 12px;
}

/* Graphic Centering and Fitting Helpers */
.lfuc-results__graphic-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: var(--lf-space-lg) 0;
  /* [ADDED] flex-wrap: wrap | Updated: 2026-08-21 */
  flex-wrap: wrap;
}

.lfuc-results__graphic-img {
  /* Old value: clamp(240px, 35vw, 300px) | New value: clamp(200px, 35vw, 300px) | Updated: 2026-08-21 */
  width: clamp(200px, 35vw, 300px);
  /* Old value: clamp(240px, 35vw, 300px) | New value: clamp(200px, 35vw, 300px) | Updated: 2026-08-21 */
  height: clamp(200px, 35vw, 300px);
  object-fit: contain;
}

.lfuc-results__watch-container {
  margin: var(--lf-space-md) 0;
  line-height: var(--lf-lh-md);
}

.lfuc-results__watch-dot {
  display: inline-block;
  margin: 0 var(--lf-space-xs);
  color: var(--lf-color-secondary);
  font-weight: bold;
}

.lfuc-quiz__description--results-watch-text {
  display: inline;
  color: var(--lf-color-secondary);
  font-size: var(--lf-fs-md);
  /* [REORDERED] line-height moved before font-weight (was after padding) | Updated: 2026-08-21 */
  line-height: 1.6;
  font-weight: 500;
  margin-bottom: 0;
  padding: 0;
}

/* Circles Grid Modifiers for Slide 4 */
/* [REFACTORED] Merged .report-drivers and .lfuc-results__circles-grid into a single combined rule | Updated: 2026-08-21 */
.lfuc-results__circles-grid,
.report-drivers {
  display: grid;
  /* Old value: repeat(2, clamp(100px, 10vw, 200px)) | New value: repeat(2, clamp(140px, 10vw, 200px)) | Updated: 2026-08-21 */
  grid-template-columns: repeat(2, clamp(140px, 10vw, 200px));
  /* justify-content: center; */
  align-items: end;
}

/* [CHANGED] Added .quiz__option-badge--large to selector list | Updated: 2026-08-21 */
.quiz__option-badge--large,
.lfuc-quiz__option-badge--large,
.lfuc-results__circle-img {
  /* Old value: clamp(100px, 10vw, 200px) | New value: clamp(140px, 10vw, 200px) | Updated: 2026-08-21 */
  width: clamp(140px, 10vw, 200px);
  /* Old value: clamp(100px, 10vw, 200px) | New value: clamp(140px, 10vw, 200px) | Updated: 2026-08-21 */
  height: clamp(140px, 10vw, 200px);
}

.lfuc-quiz__option-badge--cream {
  background-color: #F8ECC8;
  color: #2B4742;
}

.lfuc-quiz__option-badge--slate {
  background-color: #769389;
  color: #FFFFFF;
}

.lfuc-quiz__option-badge--dark {
  background-color: #5C5346;
  color: #FFFFFF;
}

.lfuc-results__list {
  padding-left: var(--lf-space-md);
  margin-bottom: var(--lf-space-lg);
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-md);
  font-weight: 400;
}

.lfuc-results__list li {
  margin-bottom: var(--lf-space-sm);
  /* Old value: var(--lf-lh-md) | New value: var(--lf-lh-lg) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-lg);
  color: var(--lf-color-primary);
  opacity: 0.85;
  /* [ADDED] font-weight: 500 | Updated: 2026-08-21 */
  font-weight: 500;
}

/* Capacities Wheel Layout for Slide 6 */
.lfuc-results__capacities-wheel {
  position: relative;
  width: clamp(280px, 45vw, 320px);
  height: clamp(280px, 45vw, 320px);
  border-radius: 50%;
  background-color: #EDE5DC;
  margin: var(--lf-space-lg) auto;
  display: block;
}

.lfuc-results__wheel-item {
  position: absolute;
  width: clamp(90px, 15vw, 105px);
  height: clamp(90px, 15vw, 105px);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-family: var(--lf-font-body);
  font-size: clamp(0.65rem, 1.2vw, 0.8rem);
  /* [REORDERED] line-height moved before font-weight (was after color) | Updated: 2026-08-21 */
  line-height: 1.2;
  font-weight: 600;
  color: #FFFFFF;
  padding: 8px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}

.lfuc-results__wheel-item--top {
  top: 6%;
  left: 50%;
  transform: translateX(-50%);
}

.lfuc-results__wheel-item--top-right {
  top: 23%;
  right: 6%;
}

.lfuc-results__wheel-item--bottom-right {
  bottom: 14%;
  right: 17%;
}

.lfuc-results__wheel-item--bottom-left {
  bottom: 14%;
  left: 17.5%;
}

.lfuc-results__wheel-item--top-left {
  top: 23%;
  left: 6%;
}

/* Final Slide modifiers */
.lfuc-quiz__description--highlight {
  font-weight: 400;
  color: var(--lf-color-secondary);
}

.lfuc-quiz__title--final {
  color: var(--lf-color-secondary);
  text-align: center;
  margin: var(--lf-space-md) 0;
  /* Old value: var(--lf-fs-lg) | New value: var(--lf-fs-title-final) | Updated: 2026-08-21 */
  font-size: var(--lf-fs-title-final);
  /* [ADDED] line-height: var(--lf-lh-title-final) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-title-final);
}

.lfuc-results__final-buttons {
  display: flex;
  flex-direction: column;
  gap: var(--lf-space-sm);
  width: 100%;
  margin-top: var(--lf-space-md);
  margin-bottom: var(--lf-space-lg);
}

.lfuc-quiz__submit-btn--grey {
  background-color: #B8B5AD;
  color: #FFFFFF;
  box-shadow: none;
}

.lfuc-quiz__submit-btn--grey:hover {
  background-color: #A39E95;
  transform: translateY(-1px);
}

/* ==========================================================================
   RIQ DYNAMIC QUIZ & REPORT OVERRIDES AND COMPONENT STYLES
   ========================================================================== */

.riq-root {
  width: 100%;
  max-width: 600px;
  margin: auto;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.riq-root::before {
  display: none;
}

.riq-quiz-view {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.riq-quiz-view[hidden],
.riq-result-view[hidden] {
  display: none !important;
}

.riq-result-view {
  width: stretch;
}

.riq-report-welcome {
  text-align: center;
  margin-bottom: var(--lf-space-md);
}

.riq-report-greeting {
  font-family: var(--lf-font-title, 'Noto Serif', serif);
  font-size: calc(var(--lf-fs-xl) * 1.1);
  line-height: var(--lf-lh-xl);
  font-weight: 500;
  color: var(--lf-color-secondary);
  margin-bottom: var(--lf-space-xs);
}

.riq-report-intro {
  font-family: var(--lf-font-body, 'Noto Sans', sans-serif);
  /* Old value: var(--lf-fs-lg) | New value: var(--lf-fs-md) | Updated: 2026-08-21 */
  font-size: var(--lf-fs-md);
  /* Old value: var(--lf-lh-lg) | New value: var(--lf-lh-md) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-md);
  color: var(--lf-color-primary);
  /* [REMOVED] opacity: 0.85 | Updated: 2026-08-21 */
  margin-bottom: var(--lf-space-md);
  /* Old value: 400 | New value: 600 | Updated: 2026-08-21 */
  font-weight: 600;
}

.riq-result-eyebrow {
  font-family: var(--lf-font-body, 'Noto Sans', sans-serif);
  /* Old value: uppercase | New value: capitalize | Updated: 2026-08-21 */
  text-transform: capitalize;
  /* Old value: var(--lf-fs-xs) | New value: var(--lf-fs-md) | Updated: 2026-08-21 */
  font-size: var(--lf-fs-md);
  /* Old value: var(--lf-lh-xs) | New value: var(--lf-lh-md) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-md);
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--lf-color-primary);
  /* Old value: 0.7 | New value: initial | Updated: 2026-08-21 */
  opacity: initial;
  margin-bottom: var(--lf-space-xs);
}

.riq-header {
  text-align: center;
  margin-bottom: var(--lf-space-lg);
  width: 100%;
}

.riq-header-eyebrow {
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-sm);
  line-height: var(--lf-lh-xs);
  /* Old value: 500 | New value: 600 | Updated: 2026-08-21 */
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--lf-color-primary);
  opacity: 0.7;
  margin-bottom: var(--lf-space-sm);
}

.riq-header h1 {
  font-family: var(--lf-font-title);
  /* Old value: var(--lf-fs-xl) | New value: var(--lf-lh-lg) | Updated: 2026-08-21 */
  font-size: var(--lf-lh-lg);
  /* Old value: var(--lf-lh-xl) | New value: var(--lf-lh-lg) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-lg);
  font-weight: 500;
  /* Old value: var(--lf-color-secondary) | New value: var(--lf-color-primary) | Updated: 2026-08-21 */
  color: var(--lf-color-primary);
  margin-bottom: var(--lf-space-sm);
}

.riq-header p {
  font-family: var(--lf-font-body);
  /* Old value: var(--lf-fs-lg) | New value: var(--lf-fs-sm) | Updated: 2026-08-21 */
  font-size: var(--lf-fs-sm);
  /* Old value: var(--lf-lh-lg) | New value: var(--lf-lh-md) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-md);
  color: var(--lf-color-primary);
  opacity: 0.85;
  /*margin-bottom: var(--lf-space-lg);*/
  margin-bottom: calc(var(--lf-space-lg) + 1);
  font-weight: 500;
  max-width: 220px;
  letter-spacing: -0.4px;
}

/* Progress Bar */
.riq-progress-wrap {
  width: 100%;
  margin-bottom: var(--lf-space-lg);
}

.riq-progress-meta {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-xxs);
  line-height: var(--lf-lh-xs);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--lf-color-primary);
  opacity: 0.7;
  margin-bottom: var(--lf-space-sm);
}

.riq-progress-track {
  display: flex;
  width: 100%;
  gap: var(--lf-space-xs);
  margin-bottom: var(--lf-space-xs);
}

.riq-progress-segment {
  height: 4px;
  background-color: var(--lf-color-muted);
  opacity: 0.35;
  border-radius: 2px;
  flex-grow: 1;
  transition: all 0.3s ease;
}

.riq-progress-segment.active {
  background-color: var(--lf-color-secondary);
  opacity: 1;
}

.riq-report-step-count {
  text-align: left;
  display: inline-block;
  width: 100%;
  font-size: var(--lf-fs-xxs);
}

/* Question Card & Tag */
.riq-q-card {
  width: 100%;
  background: transparent;
  border: none;
  padding: 0;
  box-shadow: none;
  margin-bottom: 0;
  text-align: center;
}

.riq-q-tag {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin: 0 auto var(--lf-space-sm);
  border-radius: 20px;
  padding: 4px 12px;
  background-color: transparent;
  border: 1px solid var(--lf-color-secondary);
  color: var(--lf-color-secondary);
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-xs);
  font-weight: 600;
  text-transform: uppercase;
}

.riq-q-scenario {
  font-family: var(--lf-font-title);
  /* Old value: var(--lf-fs-xl) | New value: var(--lf-fs-lg) | Updated: 2026-08-21 */
  font-size: var(--lf-fs-lg);
  /* Old value: var(--lf-lh-xl) | New value: var(--lf-lh-lg) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-lg);
  color: var(--lf-color-secondary);
  margin-bottom: var(--lf-space-lg);
  padding: 0 var(--lf-space-xs);
  /* Old value: 400 | New value: 500 | Updated: 2026-08-21 */
  font-weight: 500;
}

/* Options */
.riq-options {
  display: flex;
  flex-direction: column;
  gap: var(--lf-space-sm);
  width: 100%;
  margin-bottom: var(--lf-space-lg);
}

.riq-opt {
  display: flex;
  align-items: center;
  width: 100%;
  background-color: var(--lf-color-badge-bg);
  border-radius: 12px;
  padding: var(--lf-space-sm) var(--lf-space-md);
  border: 2px solid transparent;
  outline: none !important;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: left;
  gap: var(--lf-space-md);
  font-family: var(--lf-font-body);
  -webkit-tap-highlight-color: transparent;
}

.riq-opt:focus,
.riq-opt:focus-visible,
.riq-opt:active {
  outline: none !important;
  box-shadow: none !important;
}

.riq-opt.riq-selected {
  border-color: var(--lf-color-primary);
  /* Old value: var(--lf-color-badge-bg) | New value: var(--lf-color-bg) | Updated: 2026-08-21 */
  background-color: var(--lf-color-bg);
  outline: none !important;
  box-shadow: none !important;
}

.riq-opt-letter {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  min-width: 24px;
  background-color: var(--lf-color-bg);
  border-radius: 50%;
  color: var(--lf-color-secondary);
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-sm);
  line-height: var(--lf-lh-md);
  font-weight: 500;
  flex-shrink: 0;
}

.riq-selected .riq-opt-letter {
  background-color: var(--lf-color-secondary);
  color: #ffffff;
}

.riq-opt-text {
  font-family: var(--lf-font-title);
  font-size: var(--lf-fs-md);
  /* [REORDERED] line-height moved before color (was after) | Updated: 2026-08-21 */
  line-height: var(--lf-lh-md);
  color: var(--lf-color-primary);
}

/* Navigation */
.riq-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-top: var(--lf-space-xs);
  position: relative;
  z-index: 10;
}

.riq-btn {
  background: none;
  border: none;
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-md);
  line-height: var(--lf-lh-md);
  color: var(--lf-color-muted);
  opacity: 0.8;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: opacity 0.2s ease;
  padding: 12px 16px;
  min-height: 44px;
  position: relative;
  z-index: 11;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.riq-btn:hover:not(:disabled) {
  opacity: 1;
}

.riq-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.riq-btn.riq-primary {
  background-color: var(--lf-color-secondary);
  color: #FFFFFF;
  border: none;
  border-radius: 5px;
  /* Old value: padding:  6px 9px (extra space) | New value: padding: 6px 9px (normalized) | Updated: 2026-08-21 */
  padding: 6px 9px;
  /* Old value: 46px | New value: 6px | Updated: 2026-08-21 */
  min-height: 6px;
  font-family: var(--lf-font-title);
  font-size: var(--lf-lh-sm);
  line-height: var(--lf-lh-lg);
  font-weight: 600;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--lf-space-xs);
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 4px 14px rgba(240, 80, 35, 0.25);
  position: relative;
  z-index: 11;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.riq-btn.riq-primary:hover:not(:disabled) {
  background-color: #D94116;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(240, 80, 35, 0.35);
  color: #FFFFFF;
}

.riq-btn.riq-primary:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
  box-shadow: none;
  transform: none;
}

/* Report Action Controls */
.riq-report-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-top: var(--lf-space-md);
  /*border-top: 1px solid rgba(43, 71, 66, 0.1);*/
  padding-top: var(--lf-space-md);
}

.riq-report-actions button {
  background: none;
  border: none;
  outline: none;
  font-family: var(--lf-font-body);
  font-size: var(--lf-fs-md);
  line-height: var(--lf-lh-md);
  color: var(--lf-color-muted);
  opacity: 0.8;
  cursor: pointer;
  padding: 12px 16px;
  min-height: 44px;
}

.riq-report-actions button:focus,
.riq-report-actions button:focus-visible,
.riq-report-actions button:active {
  outline: none !important;
  box-shadow: none !important;
}

.riq-report-actions button[type="button"],
.riq-report-actions [data-riq-report-next] {
  background-color: var(--lf-color-secondary);
  color: #FFFFFF;
  border: none;
  outline: none;
  /* Old value: 12px | New value: 5px | Updated: 2026-08-21 */
  border-radius: 5px;
  /* Old value: var(--lf-space-sm) var(--lf-space-md) | New value: 6px 9px | Updated: 2026-08-21 */
  padding: 6px 9px;
  /* Old value: 48px | New value: 6px | Updated: 2026-08-21 */
  min-height: 6px;
  font-family: var(--lf-font-title);
  /* Old value: var(--lf-fs-lg) | New value: var(--lf-fs-md) | Updated: 2026-08-21 */
  font-size: var(--lf-fs-md);
  line-height: var(--lf-lh-lg);
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(240, 80, 35, 0.25);
  opacity: 1;
}

.riq-report-actions button[type="button"]:focus,
.riq-report-actions button[type="button"]:focus-visible,
.riq-report-actions [data-riq-report-next]:focus,
.riq-report-actions [data-riq-report-next]:focus-visible {
  outline: none !important;
  box-shadow: 0 4px 14px rgba(240, 80, 35, 0.25) !important;
}

.riq-report-progress {
  display: flex;
  justify-content: center;
  gap: var(--lf-space-xs);
  margin-bottom: var(--lf-space-xs);
  width: 100%;
}

.riq-report-dot {
  /* [ADDED] width: 42px !important | Updated: 2026-08-21 */
  width: 42px !important;
  height: 4px;
  background-color: var(--lf-color-muted);
  opacity: 0.35;
  border-radius: 2px;
  flex-grow: 1;
  transition: all 0.3s ease;
}

.riq-report-dot.active {
  background-color: var(--lf-color-secondary);
  opacity: 1;
}

.riq-lead-view {
  width: 100%;
}

.form-container {
  height: 100%;
}

.form-container:has(.riq-lead-view[hidden]) {
  padding-block: 40px;
}

.form-container:has(.riq-quiz-view[hidden]) {
  padding-block: 50px;
}

.form-container:has(.riq-lead-view[hidden]) .lfuc-quiz__logo-img {
  height: 32px;
}

/* [ADDED] Screen 6 Visibility & Layout Rules | Updated: 2026-08-21 */
/* 1. Sets opacity to 0 on the entire header when Screen 6 is active */
.riq-result-view:has(.riq-report-screen[data-report-screen="6"].active) .riq-result-header {
  /*opacity: 0;*/
  pointer-events: none;
  /* Prevents clicks/hover on invisible elements */
}

/* 2. Completely removes the description element from layout when Screen 6 is active */
/*.riq-result-view:has(.riq-report-screen[data-report-screen="6"].active) .riq-result-header .riq-result-desc {
  display: none;
}*/

.riq-result-view:has(.riq-report-screen[data-report-screen="6"].active) .lfuc-quiz__description {
  text-align: center;
}

.riq-report-screen[data-report-screen="6"].active .quiz__description {
  text-align: center;
}

/* [ADDED] Override h1 color in lead view | Updated: 2026-08-21 */
.riq-lead-view .riq-header h1 {
  color: var(--lf-color-secondary);
}

.riq-quiz-view .riq-header p{
  max-width: 210px;
  letter-spacing: unset;
}

.riq-quiz-view .riq-header{
  margin-bottom: 0;
}

span.highlight-text {
  color: var(--lf-color-secondary);
}