/* Rugged questionnaire (rq-). Core Framework tokens only. Source: my-agent/Businesses/rugged/_tools/questionnaire/ */
.rq .rq-hide { display: none !important; }
.rq .rq-hidden-soft { visibility: hidden; }
.rq .rq-head { display: flex; flex-direction: column; gap: var(--space-2xs); margin-bottom: var(--space-s); }
.rq .rq-bar { height: 4px; background: var(--dark-10); border-radius: var(--radius-global); overflow: hidden; }
.rq .rq-bar span { display: block; height: 100%; width: 0; background: var(--primary); transition: width .25s ease; }
.rq .rq-count { margin: 0; font-size: var(--text-s); color: var(--text-grey); }
.rq .rq-title { margin: 0; font-size: var(--text-xl); line-height: 1.2; outline: none; }
.rq .rq-hint { margin: 0; font-size: var(--text-s); color: var(--text-grey); }
.rq .rq-hint:empty { display: none; }
.rq .rq-about { margin: 0; font-size: var(--text-s); font-weight: 700; color: var(--dark); }
.rq .form-group:not(.rq-consent) .options-wrapper { display: flex; flex-wrap: wrap; gap: var(--space-xs); list-style: none; margin: 0; padding: 0; }
.rq .form-group:not(.rq-consent) .options-wrapper li { margin: 0; position: relative; }
.rq .form-group:not(.rq-consent) .options-wrapper input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.rq .form-group:not(.rq-consent) .options-wrapper label { display: inline-block; margin: 0; padding: var(--space-xs) var(--space-s); border: 1px solid var(--dark-20); border-radius: var(--radius-global); background: var(--light); color: var(--dark); font-weight: 700; cursor: pointer; line-height: 1.3; transition: background .15s ease, border-color .15s ease; }
.rq .form-group:not(.rq-consent) .options-wrapper label:hover { border-color: var(--primary); }
.rq .form-group:not(.rq-consent) .options-wrapper input:checked + label { background: var(--primary); border-color: var(--primary); color: var(--light); }
.rq .form-group:not(.rq-consent) .options-wrapper input:focus-visible + label { outline: 2px solid var(--primary); outline-offset: 2px; }
.rq .rq-error .options-wrapper label { border-color: var(--primary); }
.rq .rq-nav { display: flex; justify-content: space-between; align-items: center; gap: var(--space-s); width: 100%; margin-top: var(--space-xs); }
.rq .rq-back { background: none; border: 0; padding: var(--space-xs) 0; color: var(--dark); font-weight: 700; text-decoration: underline; cursor: pointer; }
.rq .rq-next { margin-left: auto; padding: var(--space-xs) var(--space-m); border: 0; border-radius: var(--radius-global); background: var(--dark); color: var(--light); font-weight: 700; cursor: pointer; }
@media (max-width: 478px) {
  .rq .form-group:not(.rq-consent) .options-wrapper li { flex: 1 1 100%; }
  .rq .form-group:not(.rq-consent) .options-wrapper label { display: block; width: 100%; }
}

.rq .rq-title:focus, .rq .rq-title:focus-visible { outline: none !important; border: 0 !important; box-shadow: none !important; }

/* Iris QA round 1 (2026-11-06) */
.rq .rq-head { width: 100%; }
.rq .rq-bar { width: 100%; }
.rq .rq-count, .rq .rq-hint { color: var(--dark-70); font-size: var(--text-s); }
.rq .rq-label { display: block; margin-bottom: var(--space-3xs); font-size: var(--text-s); font-weight: 700; color: var(--dark-80); }
.rq input:not([type=radio]):not([type=checkbox]), .rq textarea { font-size: max(16px, var(--text-m)); }
.rq input::placeholder, .rq textarea::placeholder { color: var(--dark-50); opacity: 1; }
.rq .form-group:not(.rq-consent) .options-wrapper input:focus + label { outline: none; }
.rq .form-group:not(.rq-consent) .options-wrapper input:focus-visible + label { outline: 2px solid var(--primary); outline-offset: 2px; }
.rq .rq-consent .options-wrapper { list-style: none; margin: 0; padding: 0; }
.rq .rq-consent li { display: flex; align-items: center; gap: var(--space-xs); min-height: 44px; margin: 0; }
.rq .rq-consent input[type=checkbox] { width: 2rem; height: 2rem; min-width: 2rem; margin: 0; accent-color: var(--primary); cursor: pointer; }
.rq .rq-consent label { margin: 0; cursor: pointer; }
.rq .rq-consent a { color: var(--primary); text-decoration: underline; }
.rq .rq-nav .submit-button-wrapper { width: auto; margin: 0 0 0 auto; padding: 0; }
.rq .rq-nav .submit-button-wrapper button { padding: var(--space-xs) var(--space-m); }
@media (max-width: 478px) {
  .brxe-popup-34660 .card-contact-general { align-self: flex-start; min-height: 0; height: auto; }
  .rq { row-gap: var(--space-xs); gap: var(--space-xs); }
}
