/* Общая база вариантов Сайты-wb: шрифты Fira Sans Condensed, reset, quiz-оверлей.
   Пути к ассетам — от папки варианта (Сайты-wb/vN/), т.е. ../../Сайты/... */

@font-face { font-family: 'Fira Sans Condensed'; font-style: normal; font-weight: 400; font-display: swap; src: url(../fonts/fira-cyrillic-400.woff2) format('woff2'); unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family: 'Fira Sans Condensed'; font-style: normal; font-weight: 400; font-display: swap; src: url(../fonts/fira-latin-400.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Fira Sans Condensed'; font-style: normal; font-weight: 700; font-display: swap; src: url(../fonts/fira-cyrillic-700.woff2) format('woff2'); unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family: 'Fira Sans Condensed'; font-style: normal; font-weight: 700; font-display: swap; src: url(../fonts/fira-latin-700.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: 'Fira Sans Condensed'; font-style: normal; font-weight: 900; font-display: swap; src: url(../fonts/fira-cyrillic-900.woff2) format('woff2'); unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family: 'Fira Sans Condensed'; font-style: normal; font-weight: 900; font-display: swap; src: url(../fonts/fira-latin-900.woff2) format('woff2'); unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { font-family: 'Fira Sans Condensed', Arial, Helvetica, sans-serif; color: #1a1a1a; min-height: 100vh; }

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
}

/* === Quiz overlay (идентичен посадкам Сайты/) === */
#quiz-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #f5f5f5; z-index: 1000; justify-content: center; align-items: center; overflow-y: auto; overflow-x: hidden; }
#quiz-content { width: 100%; max-width: 550px; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; padding: 20px 15px; }
.quiz-header { margin-bottom: 25px; }
.quiz-step-label { text-align: center; font-size: 14px; color: #666; margin-bottom: 10px; }
.quiz-progress { width: 100%; height: 6px; background: #e0e0e0; border-radius: 3px; margin-bottom: 12px; overflow: hidden; }
.quiz-progress-bar { height: 100%; background: #2b5dae; border-radius: 3px; transition: width 0.4s; }
.quiz-segments { display: flex; gap: 6px; }
.seg { flex: 1; height: 5px; border-radius: 3px; }
.seg-filled { background: #2b5dae; }
.seg-empty { background: #ccc; }
.quiz-body { background: #fff; border-radius: 16px; padding: 30px 25px; box-shadow: 0 2px 12px rgba(0,0,0,0.08); }
.quiz-label { font-size: 13px; font-weight: 700; color: #2b5dae; letter-spacing: 0.5px; margin-bottom: 8px; }
.quiz-question { font-size: 20px; font-weight: 700; margin-bottom: 25px; line-height: 1.3; color: #1a1a1a; }
.quiz-option { display: flex; align-items: center; gap: 14px; padding: 14px 14px; border: 1px solid #ddd; border-radius: 10px; margin-bottom: 10px; cursor: pointer; font-size: 15px; transition: all 0.2s; background: #fff; color: #1a1a1a; }
.quiz-option:hover { border-color: #2b5dae; background: #f2f6fb; }
.quiz-option.selected { border-color: #2b5dae; background: #e3ecf5; }
.quiz-radio { width: 22px; height: 22px; min-width: 22px; border: 2px solid #ccc; border-radius: 50%; position: relative; transition: all 0.2s; }
.quiz-option.selected .quiz-radio { border-color: #2b5dae; }
.quiz-option.selected .quiz-radio::after { content: ''; position: absolute; top: 4px; left: 4px; width: 10px; height: 10px; background: #2b5dae; border-radius: 50%; }
.quiz-checkbox { width: 22px; height: 22px; min-width: 22px; border: 2px solid #ccc; border-radius: 4px; position: relative; transition: all 0.2s; }
.quiz-option.selected .quiz-checkbox { border-color: #2b5dae; background: #2b5dae; }
.quiz-option.selected .quiz-checkbox::after { content: '\2713'; position: absolute; top: -1px; left: 3px; color: #fff; font-size: 14px; font-weight: 700; }
.quiz-subtitle { font-size: 14px; color: #666; margin-top: -18px; margin-bottom: 15px; }
.quiz-btn { display: block; width: 100%; padding: 18px; margin-top: 20px; background: #2b5dae; color: #fff; border: none; border-radius: 10px; font-family: 'Fira Sans Condensed', Arial, sans-serif; font-size: 16px; font-weight: 700; letter-spacing: 0.5px; cursor: pointer; transition: background 0.3s; }
.quiz-btn:hover { background: #1e4a8f; }
.quiz-btn-disabled { background: #ccc; cursor: not-allowed; opacity: 0.75; }
.quiz-btn-disabled:hover { background: #ccc; }
.quiz-btn:focus-visible { outline: 3px solid #fdb913; outline-offset: 2px; }
.quiz-warning { text-align: center; color: #d52b1e; font-size: 14px; margin-top: 14px; }
.quiz-files-hook { font-size: 16px; color: #d52b1e; margin-bottom: 20px; }
.quiz-link { color: #2b5dae; font-weight: 700; text-decoration: underline; }
.quiz-lead-list { display: none; grid-template-columns: 230px 230px; gap: 20px 24px; margin-bottom: 10px; }
.quiz-lead-item { display: flex; align-items: center; gap: 12px; }
.quiz-lead-item img { width: 80px; height: auto; flex-shrink: 0; }
.quiz-lead-item span { font-size: 15px; line-height: 1.4; }
.quiz-lead-mobile { display: block; margin-bottom: 10px; }
.quiz-lead-mobile-imgs { display: flex; justify-content: center; margin-bottom: 16px; }
.quiz-lead-mobile-imgs img { width: 70px; height: auto; margin-left: -8px; }
.quiz-lead-mobile-imgs img:first-child { margin-left: 0; }
.quiz-lead-mobile-texts { display: flex; flex-direction: column; gap: 10px; }
.quiz-lead-mobile-text { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; line-height: 1.4; }
.quiz-single-layout { display: flex; flex-direction: column-reverse; gap: 20px; align-items: center; margin-bottom: 10px; }
.quiz-numbered-list { flex: 1; display: flex; flex-direction: column; gap: 14px; }
.quiz-numbered-item { display: flex; align-items: flex-start; gap: 12px; font-size: 15px; line-height: 1.4; }
.quiz-number { font-size: 28px; font-weight: 900; color: #d52b1e; line-height: 1; min-width: 24px; }
.quiz-single-img { flex-shrink: 0; width: 120px; }
.quiz-single-img img { width: 100%; height: auto; }
.quiz-phone-step { border-radius: 16px; padding: 35px 25px; }
.quiz-question-green { font-size: 22px; font-weight: 700; margin-bottom: 12px; color: #2b5dae; }
.quiz-phone-desc { font-size: 16px; line-height: 1.5; margin-bottom: 25px; color: #444; }
.quiz-input-label { display: block; font-size: 12px; letter-spacing: 1px; margin-bottom: 8px; color: #666; }
.quiz-input { display: block; width: 100%; padding: 16px; font-size: 20px; font-family: 'Fira Sans Condensed', Arial, sans-serif; border: 2px solid #ddd; border-radius: 8px; background: #fff; color: #1a1a1a; margin-bottom: 16px; outline: none; }
.quiz-input:focus { border-color: #2b5dae; }
.quiz-checkbox-label { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; margin-bottom: 20px; cursor: pointer; line-height: 1.4; color: #666; }
.quiz-checkbox-label input { margin-top: 2px; min-width: 18px; min-height: 18px; }
.quiz-checkbox-label a { color: #2b5dae; }
.quiz-messengers { display: flex; gap: 10px; margin-bottom: 20px; }
.quiz-messenger { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 14px 10px; border: 2px solid #ddd; border-radius: 10px; cursor: pointer; font-size: 14px; font-weight: 700; color: #1a1a1a; background: #fff; transition: all 0.2s; }
.quiz-messenger:hover { border-color: #2b5dae; }
.quiz-messenger.selected { border-color: #2b5dae; background: #f2f6fb; }
.quiz-messenger-icon { width: 40px; height: 40px; border-radius: 10px; object-fit: cover; }
.quiz-messenger-sms-icon { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; background: #2b5dae; color: #fff; font-size: 12px; font-weight: 900; }
.quiz-messenger.selected .quiz-radio::after { content: ''; position: absolute; top: 4px; left: 4px; width: 10px; height: 10px; background: #2b5dae; border-radius: 50%; }
@keyframes slideOutLeft { from { transform: translateX(0); opacity: 1; } to { transform: translateX(-80px); opacity: 0; } }
@keyframes slideInRight { from { transform: translateX(80px); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
.quiz-slide-out-left { animation: slideOutLeft 0.22s ease-in forwards; }
.quiz-slide-in-right { animation: slideInRight 0.22s ease-out forwards; }
@media (min-width: 768px) {
    #quiz-content { padding: 30px 20px; }
    .quiz-question { font-size: 24px; }
    .quiz-option { padding: 16px 18px; font-size: 16px; }
    .quiz-lead-list { display: grid; }
    .quiz-lead-mobile { display: none; }
    .quiz-single-layout { flex-direction: row; gap: 24px; }
    .quiz-single-img { width: 160px; }
    .quiz-question-green { font-size: 26px; }
}
