/* Logistika Auto — cinematic night + amber (headlight) */
:root {
  --bg: #050608;
  --bg-deep: #0F1115;
  --bg-2: #1A1C22;
  --text: #EAEAEA;
  --text-muted: #9A9EA6;
  --amber: #FF6A00;
  --amber-hover: #FF8C32;
  --amber-glow: rgba(255, 106, 0, 0.15);
  --border: rgba(255, 255, 255, 0.08);
}

html {
  background: var(--bg);
  scroll-behavior: smooth;
  overflow-x: hidden;
  /* иначе при переполнении (vw-ширины из style.min) тянется скролл влево-вправо */
  width: 100%;
  max-width: 100%;
}

.premium-page {
  background: var(--bg) !important;
  color: var(--text) !important;
  min-height: 100vh;
  overflow-x: hidden;
  max-width: 100%;
  position: relative;
  box-sizing: border-box;
}

/* ——— HERO (index) ——— */
.premium-hero {
  position: relative;
  min-height: 100dvh;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  text-align: left;
  overflow: hidden;
  background: var(--bg);
  box-sizing: border-box;
  padding: clamp(1.25rem, 3vh, 2.5rem) clamp(1rem, 4vw, 2.5rem) clamp(1.25rem, 3vh, 2.5rem)
    clamp(6.5rem, 28vw, 22.5rem);
}

.premium-hero__bg {
  position: absolute;
  inset: 0;
  background: url(../images/hero.jpg) center / cover no-repeat;
  z-index: 0;
}

.premium-hero__overlay,
.premium-hero__overlay--cinematic {
  position: absolute;
  inset: 0;
  z-index: 1;
  /* слева плотнее (текст), справа светлее — фото читается */
  background: linear-gradient(
    to right,
    rgba(5, 6, 8, 0.82) 0%,
    rgba(10, 5, 3, 0.48) 40%,
    rgba(20, 8, 3, 0.14) 70%,
    rgba(5, 6, 8, 0) 100%
  );
}

.premium-hero .container.premium-hero__content,
.premium-hero__content.container {
  position: relative;
  z-index: 2;
  /* чуть шире под +10% к шрифту, без переполнения */
  max-width: min(44rem, 100%) !important;
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box;
  padding: clamp(1.5rem, 3vh, 2.5rem) 0;
  animation: premium-fade-up 0.9s ease-out;
}

.premium-hero__stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%;
}

.premium-hero__title {
  font-size: clamp(1.49rem, 4.65vw, 2.6rem);
  font-weight: 500;
  line-height: 1.28;
  color: #fff;
  margin: 0 0 2.5rem;
  letter-spacing: -0.02em;
  text-align: center;
  text-shadow: 0 4px 40px rgba(0, 0, 0, 0.45);
  overflow-wrap: break-word;
  word-wrap: break-word;
  width: 100%;
}

.premium-hero__cta {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  background: #ff6a00 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 29px 57px !important;
  font-size: clamp(1.16rem, 1.55vw, 1.45rem) !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  box-shadow:
    0 0 20px rgba(255, 106, 0, 0.4),
    0 0 40px rgba(255, 106, 0, 0.2) !important;
  transition: background 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease, color 0.3s ease !important;
  animation: premium-cta-pulse 3.2s ease-in-out infinite, premium-fade-up 0.9s ease-out 0.24s both;
  min-width: 0;
  min-height: 3.6rem;
  margin-left: 0;
  align-self: center;
  max-width: 100%;
  box-sizing: border-box;
}

.premium-hero__cta .btn-blick {
  background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, 0.4) 50%, transparent 65%) !important;
  opacity: 0.5;
}

.premium-hero__cta:hover {
  background: #ff8c32 !important;
  transform: translateY(-2px) scale(1.03);
  box-shadow:
    0 0 40px rgba(255, 106, 0, 0.7),
    0 0 80px rgba(255, 106, 0, 0.4) !important;
  color: #fff !important;
}

.premium-hero__cta .btn-text {
  color: #fff !important;
  font-size: inherit !important;
  position: relative;
  z-index: 1;
}

.hero-brand {
  color: #FF6A00;
  letter-spacing: 0.25em;
  font-size: 13.2px;
  text-transform: uppercase;
  margin-bottom: 22px;
  opacity: 0.85;
  text-align: center;
  width: 100%;
}

/* ——— Quiz block ——— */
.premium-quiz-section {
  --pq-pad-t: 4.25rem;
  --pq-pad-b: 5.75rem;
  /* весь текст квиза ×1,2 к прежней шкале; подписи/вопросы/варианты пропорционально */
  --pq-page: clamp(1.584rem, 3.168vw, 2.178rem);
  --pq-page-accent: clamp(1.4421rem, 2.2011vw, 1.70016rem);
  --pq-progress: clamp(1.30548rem, 1.54836vw, 1.48764rem);
  --pq-question: clamp(1.56816rem, 2.7588vw, 1.91664rem);
  --pq-body: clamp(1.36488rem, 1.5246vw, 1.51008rem);
  --pq-input: clamp(1.36488rem, 1.56816vw, 1.51008rem);
  --pq-ui: clamp(1.2408rem, 1.386vw, 1.3728rem);
  --pq-semifinal-title: clamp(1.6698rem, 2.9601vw, 2.00376rem);
  --pq-semifinal-lead: clamp(1.3068rem, 1.62624vw, 1.48104rem);
  background-color: #050608;
  background-image: linear-gradient(rgba(5, 6, 8, 0.42), rgba(20, 8, 3, 0.5)),
    url(../images/quiz.jpg);
  /* cover — фон заполняет секцию на всех шагах; 100% auto давало разную «высоту картинки» и рваный низ */
  background-size: 100% 100%, cover;
  background-position: 0 0, center top;
  background-repeat: no-repeat, no-repeat;
  background-attachment: scroll, scroll;
  padding-top: var(--pq-pad-t) !important;
  padding-bottom: var(--pq-pad-b) !important;
  box-sizing: border-box;
}

/*
 * Только quiz.html: один набор отступов (без min-height + flex — они ломали ритм).
 * Весь зазор до «Реквизиты…» — padding-bottom секции, не дублируем гигантским margin у футера.
 */
.premium-page.page-quiz#quiz.premium-quiz-section,
.premium-page.page-quiz .premium-quiz-section#quiz {
  --pq-pad-t: clamp(2.4rem, 4.5vw, 4.25rem);
  --pq-pad-b: clamp(3.75rem, 8.5vw, 6.75rem);
}

.premium-page.page-quiz#quiz,
.premium-page.page-quiz .premium-quiz-section#quiz {
  position: relative;
  z-index: 1;
}

/* Квиз: без колеса/свайпа влево-вправо (style.min даёт .quiz-form { width: 61vw } и т.д.) */
.premium-page.page-quiz #quiz,
.premium-page.page-quiz .section.quiz {
  overflow-x: hidden;
  max-width: 100%;
  box-sizing: border-box;
}
.premium-page.page-quiz {
  overflow-x: hidden;
  overscroll-behavior-x: none;
  touch-action: pan-y;
}
.premium-page.page-quiz .quiz-inner {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: hidden;
  box-sizing: border-box;
}
.premium-page.page-quiz .quiz-form.premium-quiz-form,
.premium-page.page-quiz form.premium-quiz-form.quiz-form {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box;
  overflow-x: hidden;
}
.premium-page.page-quiz .quiz-items,
.premium-page.page-quiz .quiz-item,
.premium-page.page-quiz .quiz-options--inline,
.premium-page.page-quiz .footer {
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.premium-page.page-quiz .footer {
  width: 100% !important;
  overflow-x: hidden;
}
.premium-page.page-quiz .quiz-option p,
.premium-page.page-quiz .quiz-option__wrapper p,
.premium-page.page-quiz .premium-quiz-form h3,
.premium-page.page-quiz h1.premium-quiz__title {
  overflow-wrap: break-word;
  word-break: break-word;
  max-width: 100%;
}
.premium-page.page-quiz h1.premium-quiz__title {
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
  padding-left: 0.15rem;
  padding-right: 0.15rem;
}
.premium-page.page-quiz .premium-quiz-form .btn .btn-text {
  white-space: normal !important;
}
.premium-page.page-quiz .premium-btn-primary,
.premium-page.page-quiz .quiz-bottom .btn {
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.premium-page.page-quiz .quiz-semifinal__messengers {
  flex-wrap: wrap;
  justify-content: center;
  max-width: 100%;
  box-sizing: border-box;
}

.premium-page.page-quiz .premium-quiz-section#quiz > .container {
  max-width: min(48rem, 100%);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: max(1.1rem, env(safe-area-inset-left, 0px));
  padding-right: max(1.1rem, env(safe-area-inset-right, 0px));
  box-sizing: border-box;
}

/* Последний вопрос (5/5) — блок квиза ниже на экране, заголовок секции без сдвига */
.premium-quiz-form.premium-quiz--last-question {
  margin-top: clamp(1.75rem, 7vh, 5rem);
}

.premium-page.page-quiz .footer {
  position: relative;
  z-index: 2;
  clear: both;
  margin-top: 0;
  background: #19191b !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: none;
  padding-top: 1.75rem;
  padding-bottom: 1.75rem;
  padding-left: max(1.1rem, env(safe-area-inset-left, 0px));
  padding-right: max(1.1rem, env(safe-area-inset-right, 0px));
}

/* Шаг «Опишите желаемый…»: заголовок, прогресс, карточка и кнопки — по центру видимой области */
.premium-page.page-quiz#quiz.premium-quiz-section:has(.premium-quiz-form.premium-quiz--text-step):not(:has(.quiz-form--semifinal)),
.premium-page.page-quiz .premium-quiz-section#quiz:has(.premium-quiz-form.premium-quiz--text-step):not(:has(.quiz-form--semifinal)) {
  min-height: 100dvh;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  --pq-pad-t: clamp(1.25rem, 4dvh, 2.5rem);
  --pq-pad-b: clamp(1.25rem, 4dvh, 2.5rem);
  box-sizing: border-box;
}

.premium-page.page-quiz#quiz.premium-quiz-section:has(.premium-quiz-form.premium-quiz--text-step):not(:has(.quiz-form--semifinal)) > .container,
.premium-page.page-quiz .premium-quiz-section#quiz:has(.premium-quiz-form.premium-quiz--text-step):not(:has(.quiz-form--semifinal)) > .container {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  margin: 0 auto;
}

.premium-page.page-quiz#quiz.premium-quiz-section:has(.premium-quiz-form.premium-quiz--text-step) h1.premium-quiz__title,
.premium-page.page-quiz .premium-quiz-section#quiz:has(.premium-quiz-form.premium-quiz--text-step) h1.premium-quiz__title {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.premium-quiz__title,
.premium-quiz-section h1.premium-quiz__title {
  color: var(--text) !important;
  font-size: var(--pq-page) !important;
  line-height: 1.4 !important;
  max-width: 40rem;
  margin: 0 auto 0.9rem;
  font-weight: 500 !important;
  animation: premium-fade-up 0.6s ease-out;
}

.premium-quiz__title .premium-title-accent {
  display: block;
  margin-top: 0.5rem;
  color: #ff6a00 !important;
  font-size: var(--pq-page-accent) !important;
  font-weight: 600 !important;
  line-height: 1.35;
}

.premium-quiz-form.quiz-form,
form.premium-quiz-form {
  max-width: 44rem;
  background: rgba(255, 255, 255, 0.03) !important;
  border: 1px solid var(--border);
  border-radius: 20px;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6) !important;
  padding: 1.9rem 1.65rem 2.1rem !important;
  box-sizing: border-box;
  animation: premium-fade-up 0.75s ease-out 0.1s both;
}

.premium-quiz-form .quiz-progress p,
p.premium-quiz-progress-label {
  color: var(--text-muted) !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  z-index: auto !important;
  font-size: var(--pq-progress) !important;
  margin: 0 0 0.5rem !important;
  text-align: center;
  line-height: 1.4;
  white-space: normal !important;
  width: 100%;
  box-sizing: border-box;
}

.premium-quiz-form .quiz-progress {
  position: relative !important;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  margin-bottom: 1.1rem;
}

.premium-quiz-form .quiz-progress__bar {
  position: relative !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border-radius: 999px !important;
  height: 8px !important;
  overflow: hidden;
  width: 100% !important;
  flex-shrink: 0;
}

.premium-quiz-form .quiz-progress__inner {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  display: block;
  height: 100% !important;
  min-height: 8px;
  background: #ff6a00 !important;
  background-image: none !important;
  border-radius: 999px;
  width: 12%;
  animation: none !important;
}

.premium-quiz-form .fz36,
.premium-quiz-form h3 {
  color: var(--text) !important;
  font-size: var(--pq-question) !important;
  line-height: 1.3 !important;
  margin-bottom: 0.8rem !important;
  animation: premium-fade-up 0.5s ease-out;
}

.premium-quiz-form .quiz-option__wrapper {
  background: rgba(255, 255, 255, 0.02) !important;
  border: 1px solid var(--border) !important;
  border-radius: 14px;
  padding: 0.6rem 0.85rem !important;
  transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.premium-quiz-form .quiz-option:hover .quiz-option__wrapper {
  border-color: #ff6a00 !important;
  background: rgba(255, 106, 0, 0.08) !important;
  transform: translateY(-2px);
}

.premium-quiz-form .quiz-option__input:checked + .quiz-option__wrapper {
  background: rgba(255, 106, 0, 0.15) !important;
  border-color: #ff6a00 !important;
  box-shadow: 0 0 20px rgba(255, 106, 0, 0.3) !important;
}

/* Варианты: снова один столбец, плотнее (flex + gap) */
.premium-quiz-form .quiz-options--inline {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  gap: 0.5rem;
  width: 100% !important;
  align-items: stretch;
  justify-content: flex-start;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
}

.premium-quiz-form .quiz-options--inline .quiz-option {
  width: 100% !important;
  min-width: 0;
  max-width: none;
  margin: 0 !important;
  box-sizing: border-box;
}

.premium-quiz-form .quiz-options--inline .main-input,
.premium-quiz-form .quiz-options--inline .main-input--textarea {
  width: 100% !important;
}

.premium-quiz-form .quiz-options--inline p.fz18 {
  color: var(--text) !important;
  font-size: var(--pq-body) !important;
  line-height: 1.4 !important;
}

.premium-quiz-form .main-input__inner,
.premium-quiz-form .input.quiz-semifinal__input {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: #eaeaea !important;
  font-size: var(--pq-input) !important;
  border-radius: 14px !important;
  padding: 0.9rem 1.05rem !important;
  min-height: 2.75rem;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.premium-quiz-form .input.quiz-semifinal__input::placeholder,
.premium-quiz-form .main-input__inner::placeholder {
  color: #9a9ea6 !important;
}

.premium-quiz-form .main-input__inner:focus,
.premium-quiz-form .input.quiz-semifinal__input:focus {
  border-color: #ff6a00 !important;
  box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.15) !important;
  outline: none !important;
}

.premium-quiz-form .main-input--textarea .main-input__inner,
.premium-quiz-form textarea.main-input__inner {
  min-height: 6.75rem !important;
  resize: vertical;
  line-height: 1.5 !important;
  font-family: inherit !important;
  display: block;
}

.premium-quiz-form .main-input,
.premium-quiz-form .main-input__inner {
  width: 100% !important;
  box-sizing: border-box;
}

/* new.css даёт .main-input { margin-bottom: 30px } — на шаге с textarea получался лишний зазор */
.premium-quiz-form .main-input,
.premium-quiz-form .main-input.main-input--textarea {
  margin-bottom: 0 !important;
}

.premium-quiz-form .quiz-bottom {
  margin-top: 1.25rem;
  padding-bottom: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  box-sizing: border-box;
}

/* «Далёе» только на шаге ввода текста (zapchast) */
.premium-quiz-form .quiz-bottom .quiz-btn--next {
  display: none !important;
}

.premium-quiz-form.premium-quiz--text-step .quiz-bottom {
  flex-wrap: nowrap;
  justify-content: center;
  gap: 0.85rem;
  max-width: 100%;
}

.premium-quiz-form .quiz-bottom .quiz-btn--prev {
  min-height: 3rem;
  margin: 0 !important;
  padding: 0.75rem 1.25rem !important;
  font-size: var(--pq-ui) !important;
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

.premium-quiz-form:not(.premium-quiz--text-step) .quiz-bottom .quiz-btn--prev {
  flex: 0 1 auto;
  min-width: min(100%, 11rem);
  max-width: 18rem;
}

.premium-quiz-form.premium-quiz--text-step .quiz-bottom .quiz-btn--next {
  display: inline-flex !important;
  min-height: 3rem;
  margin: 0 !important;
  padding: 0.75rem 1.25rem !important;
  font-size: var(--pq-ui) !important;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
}

.premium-quiz-form .quiz-bottom .btn-text {
  font-size: inherit !important;
}

.premium-quiz-form.premium-quiz--text-step .quiz-bottom .quiz-btn--prev,
.premium-quiz-form.premium-quiz--text-step .quiz-bottom .quiz-btn--next {
  flex: 0 1 12.5rem;
  min-width: 0;
  max-width: 14rem;
}

.premium-btn-primary,
.premium-quiz-form .btn.quiz-btn--next,
.premium-quiz-form .btn[type="submit"] {
  background: #ff6a00 !important;
  color: #050608 !important;
  border: none !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  font-size: var(--pq-ui) !important;
  letter-spacing: 0.04em !important;
  padding: 0.85rem 1.5rem !important;
  transition: background 0.3s, transform 0.25s, box-shadow 0.25s !important;
}

.premium-btn-primary:hover,
.premium-quiz-form .btn.quiz-btn--next:hover:not(:disabled) {
  background: #ff8c32 !important;
  color: #050608 !important;
  transform: translateY(-1px);
}

.premium-quiz-form .btn.quiz-btn--prev {
  background: transparent !important;
  color: var(--text) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  box-shadow: none !important;
  border-radius: 999px !important;
}

.premium-quiz-form .btn.quiz-btn--prev:hover {
  border-color: #ff6a00 !important;
  color: #ff6a00 !important;
  background: rgba(255, 106, 0, 0.06) !important;
  transform: translateY(-1px);
}

.premium-quiz-form .btn--arrows .btn-arrows {
  display: none;
}

.premium-quiz-form .btn:disabled {
  opacity: 0.45;
  transform: none !important;
}

.premium-quiz-form .btn .btn-blick {
  background: linear-gradient(105deg, transparent 40%, rgba(255, 255, 255, 0.4) 50%, transparent 60%) !important;
  opacity: 0.4;
}

.premium-quiz-form.quiz-form--semifinal,
form.premium-quiz-form.quiz-form--semifinal {
  /* +10% к шагу контактов: заголовок, текст, поля, кнопка (к шкале секции) */
  --pq-semifinal-title: clamp(1.83678rem, 3.25611vw, 2.20414rem);
  --pq-semifinal-lead: clamp(1.43748rem, 1.78886vw, 1.62914rem);
  --pq-input: clamp(1.5014rem, 1.725vw, 1.6611rem);
  --pq-ui: clamp(1.3649rem, 1.5246vw, 1.51rem);
  max-width: 44rem !important;
  width: 100% !important;
  margin: 0 auto;
  padding: 0.5rem 0.75rem 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  border-radius: 0 !important;
}

.premium-page .quiz-semifinal,
.premium-quiz-form .quiz-item.quiz-semifinal,
.premium-quiz-form .quiz-semifinal {
  background: none !important;
  background-image: none !important;
  background-size: auto !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: center;
  color: var(--text) !important;
  position: relative;
  overflow: visible;
}

.premium-page .quiz-semifinal__wrapper,
.premium-quiz-form .quiz-semifinal__wrapper {
  width: 100%;
  max-width: 40rem;
  margin: 0 auto;
  padding: 0 0 0.25rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1rem;
  text-align: center;
}

.premium-semifinal__title.fz60,
.premium-quiz-form .quiz-semifinal__title {
  font-size: var(--pq-semifinal-title) !important;
  line-height: 1.3 !important;
  color: #fff !important;
  font-weight: 600 !important;
  margin: 0 !important;
}

.premium-semifinal__note,
.premium-quiz-form .quiz-semifinal .fz30,
.premium-quiz-form .quiz-semifinal p.mb {
  color: var(--text-muted) !important;
  font-size: var(--pq-semifinal-lead) !important;
  line-height: 1.5 !important;
  margin: 0 !important;
  max-width: 100% !important;
  text-align: center;
}

.premium-page .quiz-semifinal__wrapper .input,
.premium-quiz-form .quiz-semifinal__input,
.premium-quiz-form .quiz-item.quiz-semifinal .quiz-semifinal__input {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box;
  font-size: var(--pq-input) !important;
  padding: 0.9rem 1.05rem !important;
  min-height: 2.75rem;
  text-align: left;
}

/* Квиз (страница): 16px на ВСЕХ полях ввода — иначе iOS/Chrome зум при фокусе (rem<16, был .fz18=vw). Выше .quiz-semifinal__input с var() — эти селекторы длиннее. */
.premium-page.page-quiz .premium-quiz-form textarea#zapchast.main-input__inner,
.premium-page.page-quiz .premium-quiz-form textarea.main-input__inner,
.premium-page.page-quiz .premium-quiz-form .main-input--textarea .main-input__inner,
.premium-page.page-quiz .quiz-semifinal__wrapper .input.quiz-semifinal__input,
.premium-page.page-quiz .premium-quiz-form .quiz-item.quiz-semifinal .quiz-semifinal__input,
.premium-page.page-quiz .premium-quiz-form .quiz-item.quiz-semifinal input.phone_mask {
  font-size: 16px !important;
  line-height: 1.45 !important;
  -webkit-text-size-adjust: 100%;
}
.premium-page.page-quiz .premium-quiz-form .main-input__inner::placeholder,
.premium-page.page-quiz .premium-quiz-form .input.quiz-semifinal__input::placeholder {
  font-size: 16px !important;
  opacity: 0.9;
}

.premium-quiz-form .quiz-semifinal__messenger-label {
  font-size: var(--pq-input) !important;
  color: var(--text-muted) !important;
  margin: 0.1rem 0 0.15rem !important;
  line-height: 1.4 !important;
  text-align: center;
  width: 100%;
}

.premium-quiz-form .quiz-semifinal__opt {
  font-weight: 400;
  opacity: 0.9;
  font-size: 0.92em;
}

.premium-quiz-form .quiz-semifinal__messengers {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.4rem;
  width: 100%;
  margin: 0.15rem 0 0.35rem;
}

.premium-quiz-form .quiz-semifinal__messenger {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0;
  padding: 0.45rem 0.7rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  font-size: var(--pq-ui) !important;
  color: var(--text) !important;
  cursor: pointer;
  line-height: 1.2;
  transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
  user-select: none;
  background: rgba(255, 255, 255, 0.02);
}

.premium-quiz-form .quiz-semifinal__messenger:hover {
  border-color: rgba(255, 106, 0, 0.45);
}

.premium-quiz-form .quiz-semifinal__messenger:has(input:checked) {
  border-color: #ff6a00;
  background: rgba(255, 106, 0, 0.12);
  color: #fff !important;
}

.premium-quiz-form .quiz-semifinal__messenger input {
  accent-color: #ff6a00;
  width: 1.05em;
  height: 1.05em;
  margin: 0;
  flex-shrink: 0;
}

.premium-page .quiz-semifinal__wrapper .btn,
.premium-quiz-form .quiz-item.quiz-semifinal .btn.premium-btn-primary,
.premium-quiz-form .quiz-item.quiz-semifinal .premium-btn-primary {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0.35rem 0 0 !important;
  padding: 0.9rem 1.25rem !important;
  box-sizing: border-box;
  justify-content: center;
  font-size: var(--pq-ui) !important;
  letter-spacing: 0.04em !important;
}

.premium-quiz-form .quiz-item.quiz-semifinal .premium-btn-primary .btn-text {
  font-size: 1em !important;
  letter-spacing: 0.05em !important;
}

.premium-quiz-section:has(.quiz-form--semifinal) h1.premium-quiz__title {
  display: none;
}

/* Финал квиза: тот же нижний отступ, фон с фото на всю высоту экрана (без «пустой» полосы) */
.premium-quiz-section:has(.quiz-form--semifinal) {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  background-size: 100% 100%, cover;
  background-position: 0 0, center;
  padding-bottom: var(--pq-pad-b) !important;
}

.premium-quiz-section:has(.quiz-form--semifinal) .container {
  width: 100%;
  max-width: min(48rem, 100%);
  margin: 0 auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}

.premium-quiz-section:has(.quiz-form--semifinal) .quiz-inner {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.premium-quiz-section:has(.quiz-form--semifinal) .premium-quiz-form {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 0;
}

.premium-quiz-section:has(.quiz-form--semifinal) .quiz-items {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.premium-page .colored,
.premium-page .footer .link--colored {
  color: #ff6a00 !important;
  border-color: rgba(255, 106, 0, 0.35) !important;
}

.premium-page .footer,
.premium-page .footer a {
  color: var(--text-muted) !important;
}

.premium-page .modal {
  background: var(--bg-deep) !important;
  color: var(--text) !important;
  border: 1px solid var(--border) !important;
  box-shadow: 0 32px 80px rgba(0, 0, 0, 0.6) !important;
}

/* Thanks page */
.thanks-page {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 3rem 1.875rem 4.5rem;
  overflow-x: hidden;
  background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(255, 106, 0, 0.08) 0%, transparent 50%), var(--bg) !important;
}

.premium-thanks__spinner {
  width: 6.3rem;
  height: 6.3rem;
  margin: 0 auto 3.075rem;
  border-radius: 50%;
  border: 4.5px solid rgba(255, 106, 0, 0.2);
  border-top-color: #ff6a00;
  border-right-color: rgba(255, 106, 0, 0.45);
  animation: premium-thanks-spin 0.8s linear infinite;
  box-shadow: 0 0 0 1px rgba(255, 106, 0, 0.06);
}

@keyframes premium-thanks-spin {
  to {
    transform: rotate(360deg);
  }
}

.thanks-card {
  text-align: center;
  max-width: min(44rem, 96vw);
  width: 100%;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--border);
  border-radius: 24px;
  padding: 4.25rem 3rem;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5);
  animation: thanks-scroll-in 0.95s cubic-bezier(0.22, 0.9, 0.35, 1) both;
  will-change: transform, opacity;
}

@keyframes thanks-scroll-in {
  0% {
    opacity: 0;
    transform: translate3d(0, 5.25rem, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.thanks-card h1 {
  font-size: 1.594rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--text-muted) !important;
  margin: 0 0 2.025rem;
  font-weight: 600;
}

.thanks-card .thanks-hero-line {
  font-size: clamp(2.15625rem, 7.125vw, 2.71875rem);
  font-weight: 500;
  line-height: 1.4;
  color: #eaeaea;
  margin: 0 0 1.125rem;
  animation: thanks-line-in 0.75s ease 0.2s both;
}

.thanks-card .thanks-hero-line .thanks-hero-line__accent {
  color: #ff6a00;
  font-weight: 600;
}

.thanks-card .thanks-sub {
  font-size: 1.8375rem;
  color: var(--text-muted);
  margin: 0 0 1.65rem;
  line-height: 1.5;
  animation: thanks-line-in 0.65s ease 0.45s both;
}

.thanks-card p.thanks-redirect {
  color: var(--text-muted);
  line-height: 1.6;
  font-size: 1.6875rem;
  margin: 0 0 1.275rem;
  animation: thanks-line-in 0.65s ease 0.65s both;
}

.thanks-card p.thanks-back {
  margin: 0 0 0.25rem;
  animation: thanks-line-in 0.55s ease 0.85s both;
}

.thanks-card a {
  color: #ff6a00;
  font-weight: 600;
  font-size: 1.6875rem;
  animation: thanks-line-in 0.55s ease 0.85s both;
}

@keyframes thanks-line-in {
  0% {
    opacity: 0;
    transform: translate3d(0, 0.9rem, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* Animations */
@keyframes premium-cta-pulse {
  0%,
  100% {
    box-shadow: 0 0 20px rgba(255, 106, 0, 0.4), 0 0 40px rgba(255, 106, 0, 0.2);
  }
  50% {
    box-shadow: 0 0 28px rgba(255, 106, 0, 0.55), 0 0 56px rgba(255, 106, 0, 0.3);
  }
}

@keyframes premium-fade-up {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Широкий экран: колонка текста остаётся в левой половине, не разъезжается */
@media (min-width: 900px) {
  .premium-hero .container.premium-hero__content,
  .premium-hero__content.container {
    max-width: min(44rem, calc(56vw - 1.5rem)) !important;
  }
}

@media (max-width: 768px) {
  html {
    -webkit-text-size-adjust: 100%;
  }

  /* Лендинг: левый край; блок чуть НИЖЕ середины экрана; бренд по центру колонки заголовка */
  .premium-hero {
    padding: max(0.75rem, env(safe-area-inset-top, 0px)) 0.75rem
      max(0.75rem, env(safe-area-inset-bottom, 0px)) max(0.65rem, env(safe-area-inset-left, 0px)) !important;
    align-items: flex-start;
    justify-content: center;
  }
  .premium-hero__bg {
    background-image: url(../images/mob.jpg);
  }
  /* Нижняя половина экрана: фото чуть светлее (лёгкий «свет» + мягче затемнение) */
  .premium-hero::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    bottom: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(
      to top,
      rgba(255, 250, 242, 0.1) 0%,
      rgba(255, 244, 232, 0.045) 45%,
      transparent 100%
    );
  }
  .premium-hero__overlay {
    background: linear-gradient(
      105deg,
      rgba(3, 4, 6, 0.96) 0%,
      rgba(4, 5, 7, 0.8) 40%,
      rgba(2, 3, 5, 0.52) 64%,
      rgba(8, 7, 10, 0.38) 100%
    ) !important;
  }
  .premium-hero .container.premium-hero__content,
  .premium-hero__content.container {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-top: 9.5vh;
    padding-left: 0;
    padding-right: 0.35rem;
  }
  .premium-hero__stack {
    align-items: flex-start !important;
  }
  .hero-brand {
    text-align: center !important;
    width: 100%;
    align-self: stretch;
  }
  .premium-hero__title {
    text-align: left !important;
    font-size: clamp(1.375rem, 6.05vw, 2.2rem);
    width: 100%;
  }
  .premium-hero__cta {
    align-self: stretch !important;
  }

  .premium-quiz-form.quiz-form {
    padding: 1.6rem 1.1rem 1.85rem !important;
  }
  .premium-quiz-section {
    --pq-pad-t: 3.25rem;
    --pq-pad-b: 4.5rem;
  }
  /* Квиз: блок по центру моб. экрана, без «прыжка» min-height: unset */
  .premium-page.page-quiz#quiz.premium-quiz-section,
  .premium-page.page-quiz .premium-quiz-section#quiz {
    --pq-pad-t: 1.35rem;
    --pq-pad-b: 1.5rem;
    min-height: 100dvh !important;
    min-height: 100svh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch;
    box-sizing: border-box;
  }
  .premium-page.page-quiz#quiz.premium-quiz-section > .container,
  .premium-page.page-quiz .premium-quiz-section#quiz > .container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    min-height: 0;
    flex: 0 1 auto;
    margin-left: auto;
    margin-right: auto;
  }
  .premium-page.page-quiz#quiz.premium-quiz-section:has(.quiz-form--semifinal),
  .premium-page.page-quiz .premium-quiz-section#quiz:has(.quiz-form--semifinal) {
    min-height: 100dvh !important;
    min-height: 100svh !important;
  }
  .premium-page.page-quiz#quiz.premium-quiz-section:has(.premium-quiz-form.premium-quiz--text-step):not(:has(.quiz-form--semifinal)),
  .premium-page.page-quiz .premium-quiz-section#quiz:has(.premium-quiz-form.premium-quiz--text-step):not(:has(.quiz-form--semifinal)) {
    min-height: 100dvh !important;
    min-height: 100svh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }
  .premium-hero__cta,
  .premium-quiz-form .btn {
    width: 100% !important;
    max-width: 100%;
  }
  .premium-quiz-form .quiz-bottom {
    flex-direction: column-reverse;
  }
  .premium-quiz-form.premium-quiz--text-step .quiz-bottom {
    flex-direction: row;
    flex-wrap: nowrap;
  }
  .premium-quiz-form.premium-quiz--text-step .quiz-bottom .btn {
    width: auto !important;
    max-width: none;
  }
  .premium-quiz-form .quiz-options--inline {
    gap: 0.45rem;
  }
}
