@font-face {
    font-family: 'SyneDigits';
    src: local('Arial');
    unicode-range: U+0030-0039;
}

:root {
    --max-width: 1200px;

    --color-text-black: #1A2C3E;

    --fz-btn-m: 1.6rem;
    --fz-btn-l: 1.6rem;
    --fz-btn-s: 1.6rem;
    --fz-btn-xs: 1rem;

    --fz-accent-link: 1.6rem;

    --size-btn-icon: 1.2rem;

    --fz-features: 1.2rem;

    --fz-menu-link: 1.6rem;

    --fz-screen-title: 2.2rem;
    --fz-screen-dscr: 1.6rem;

    --fz-hero-title: 2.4rem;
    --fz-hero-text: 1.6rem;
    --fz-hero-caption: 1rem;

    --fz-about-title: 1.8rem;

    --fz-price-block-title: 1rem;
    --fz-price-block-caption: 1rem;
    --fz-price-block-amount: 2rem;

    --fz-price-hero-title: 2.8rem;

    --fz-step-num: 2rem;
    --fz-step-label: 1.6rem;

    --fz-advantage-title: 1.2rem;
    --fz-advantage-hero-title: 1.4rem;
    --fz-advantage-text: 1.2rem;
    --fz-advantage-caption: 1rem;

    --fz-faq-title: 1.8rem;
    --size-faq-icon: 1.8rem;
    --fz-faq-text: 1.4rem;

    --fz-specialist-info: 1rem;
    --fz-specialist-name: 1.2rem;

    --fz-comment-text: 1.2rem;
    --fz-comment-author-name: 1.4rem;
    --fz-comment-author-post: 1.2rem;
}

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

    -webkit-tap-highlight-color: transparent;
}

html {
    font-size: 62.5%;
}

body {
    font-family:
        'SyneDigits',
        'Syne',
        sans-serif;
    font-size: 1.4rem;
    background-color: #F8F7F3;
}

body .only-desktop {
    display: none;
}

.btn {
    background: transparent;
    border: 0 none;
    cursor: pointer;
    border-radius: 1.1rem;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
    white-space: nowrap;
}

.btn-link {
    color: #4A5B6E;
    text-decoration: underline;
    font-weight: 700;
    font-size: 1.4rem;
    display: block;
}

.btn-link:link,
.btn-link:active,
.btn-link:visited {
    color: #4A5B6E;
}

.btn_fill.btn_primary {
    background-color: #F5A159;
    color: #1A2C3E;
}

.btn_fill.btn_secondary {
    background-color: #2A4E89;
    color: #fff;
}

a.btn_fill.btn_secondary {
    text-decoration: none;
}

a.btn_fill.btn_secondary:active,
a.btn_fill.btn_secondary:visited,
a.btn_fill.btn_secondary:link {
    color: #fff;
}

.btn_border.btn_primary {
    border: 3px solid #F5A159;
    color: #F5A159;
}

.btn_border.btn_secondary {
    border: 2px solid #2A4E89;
    color: #2A4E89;
}

.btn_icon {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: nowrap;
}

.btn_icon::after {
    content: '';
    width: var(--size-btn-icon);
    height: var(--size-btn-icon);
    font-size: var(--size-btn-icon);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 17'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.89715 1.15427C4.89715 0.516784 5.41394 0 6.05142 0H15.8457C16.4832 0 17 0.516784 17 1.15427V10.9486C17 11.5861 16.4832 12.1028 15.8457 12.1028C15.2082 12.1028 14.6915 11.5861 14.6915 10.9486V3.94092L1.97046 16.6619C1.51969 17.1127 0.788848 17.1127 0.338078 16.6619C-0.112693 16.2112 -0.112693 15.4803 0.338078 15.0295L13.0591 2.30854H6.05142C5.41394 2.30854 4.89715 1.79176 4.89715 1.15427Z' fill='%23fff'/%3E%3C/svg%3E");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.btn_border.btn_primary.btn_icon::after {
    content: '';
    width: var(--size-btn-icon);
    height: var(--size-btn-icon);
    font-size: var(--size-btn-icon);
    background-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.89715 1.15427C4.89715 0.516784 5.41394 0 6.05142 0H15.8457C16.4832 0 17 0.516784 17 1.15427V10.9486C17 11.5861 16.4832 12.1028 15.8457 12.1028C15.2082 12.1028 14.6915 11.5861 14.6915 10.9486V3.94092L1.97046 16.6619C1.51969 17.1127 0.788848 17.1127 0.338078 16.6619C-0.112693 16.2112 -0.112693 15.4803 0.338078 15.0295L13.0591 2.30854H6.05142C5.41394 2.30854 4.89715 1.79176 4.89715 1.15427Z' fill='%23F5A159'/%3E%3C/svg%3E");
}

.btn_fill.btn_primary.btn_icon::after {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='17' height='17' viewBox='0 0 17 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.89715 1.15427C4.89715 0.516784 5.41394 0 6.05142 0H15.8457C16.4832 0 17 0.516784 17 1.15427V10.9486C17 11.5861 16.4832 12.1028 15.8457 12.1028C15.2082 12.1028 14.6915 11.5861 14.6915 10.9486V3.94092L1.97046 16.6619C1.51969 17.1127 0.788848 17.1127 0.338078 16.6619C-0.112693 16.2112 -0.112693 15.4803 0.338078 15.0295L13.0591 2.30854H6.05142C5.41394 2.30854 4.89715 1.79176 4.89715 1.15427Z' fill='%231A2C3E'/%3E%3C/svg%3E");
}

.btn_primary {
    font-weight: 600;
}

.btn_l {
    font-size: var(--fz-btn-l);
    padding: 1.1rem 2rem;
}

.btn_m {
    font-size: var(--fz-btn-m);
    padding: 1.6rem 2.5rem;
}

.btn_s {
    font-size: var(--fz-btn-s);
    padding: 1.6rem 2.5rem;
}

.btn_xs {
    padding: 1rem 1.8rem;
    border-radius: .6rem;
    font-size: var(--fz-btn-xs);
}

.btn_full {
    width: 100%;
    justify-content: center;
}

.btn_upp {
    text-transform: uppercase;
}

a.btn {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

a.btn.btn_fill.btn_primary:link,
a.btn.btn_fill.btn_primary:visited,
a.btn.btn_fill.btn_primary:active {
    color: #1A2C3E;
}

.accent-link {
    font-size: var(--fz-accent-link);
    font-weight: 600;
    text-decoration: none;
    margin-top: 1.6rem;
    display: flex;
    align-items: center;
    gap: 1.2rem;
}

.accent-link::after {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='26' height='16' viewBox='0 0 26 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19.0998 14.1635L24.5181 8.74525C25.1606 8.10266 25.1606 7.06083 24.5181 6.41825L19.0998 1M24.0361 7.58175L1 7.58175' stroke='%23F5A159' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
    width: 18px;
    height: 10px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.accent-link:link,
.accent-link:visited,
.accent-link:active {
    color: #F5A159;
}

h2.title {
    color: #5A6E7F;
    font-size: var(--fz-screen-title);
    font-weight: 800;
    line-height: 120%;
}

mark.selection-fill {
    background-color: #F5A159;
    border-radius: 8px;
    padding: .4rem;
    color: #4A5B6E;
    display: inline-block;
    white-space: nowrap;
    font-weight: 600;
}

mark.selection-text {
    color: #F5A159;
    background-color: transparent;
    white-space: nowrap;
    font-weight: 700;
}

.nobr {
    white-space: nowrap;
}

.container {
    width: 100%;
    margin: 0 auto;
    max-width: var(--max-width);
}

.page {
    transition: transform .3s;
    position: relative;
}

/* .page_menu-open {
    transform: translateX(-20rem);
}

.page_menu-open::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(.1rem);
    -webkit-backdrop-filter: blur(.1rem);
    box-shadow: inset -1.5px 0px 8px -4px #ababab;
}

.page_menu-open .header__nav {
    position: fixed;
    top: 0;
    right: 0;
    transform: translateX(20rem);
    width: 20rem;
} */

.screen:not(.footer):not(.quiz_hidden) {
    margin-bottom: 4rem;
}

.screen__wrap {
    padding: 0 1.6rem
}

.section__wrap_offset {
    padding: 1rem 2rem 3rem 2rem;
}

/* ==== SCREEN-MAIN ==== */
.screen_main {
    background-color: #023049;
    border-radius: 0 0 22px 22px;
    position: relative;
    overflow: hidden;
}

.screen_main::after {
    content: '';
    position: absolute;
    background-image: url('../img_v2/hero-media-mobile.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center right;
    width: 35rem;
    height: 35rem;
    bottom: -2vh;
    right: -5rem;
}

.screen_main .section__wrap {
    position: relative;
    z-index: 1;
}

.screen__title {
    margin-bottom: 1.6rem;
}

.screen__title_center {
    text-align: center;
}

.screen__title mark {
    background-color: transparent;
    color: #F5A159;
}

.screen__title span.number {
    font-family: 'Inter', sans-serif;
    font-weight: 900;
}

.screen__dscr {
    margin-bottom: 2rem;
    line-height: 130%;
    font-size: var(--fz-screen-dscr);
    color: #4A5B6E;
}

.screen__dscr_center {
    text-align: center;
}

/*==== HEADER ====*/
.header {
    font-family: 'Inter', sans-serif;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 4rem;
}

.header.header_menu-open {
    position: relative;
    transition: padding-bottom .3s;
}

.header__menu-toggle {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
}

.header__menu-toggle svg {
    transition: transform .3s;
}

.header__menu-toggle svg line {
    transform-origin: center;
    transition: transform .3s;
}

.header__menu-toggle svg line:nth-child(1) {
    transform: translateY(0)
}

.header__menu-toggle svg line:nth-child(2) {
    transform: scaleX(1);
}

.header__menu-toggle svg line:nth-child(3) {
    transform: translateY(0);
}

.header__menu-toggle_active {
    position: absolute;
    top: 2rem;
    right: 2rem;
    z-index: 10;
}

.header__menu-toggle_active svg {
    transform: scale(.7);
}

.header__menu-toggle_active svg line:nth-child(1) {
    transform: translateY(10px) rotate(45deg);
}

.header__menu-toggle_active svg line:nth-child(2) {
    transform: scaleX(0);
}

.header__menu-toggle_active svg line:nth-child(3) {
    transform: translateY(-10px) rotate(-45deg);
}

.header__logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-decoration: none;
}

.header__logo,
.header__logo:link,
.header__logo:visited,
.header__logo:active {
    color: #FBFCFE;
}

.header__logo span {
    line-height: 150%;
    font-weight: 600;
    font-size: 1.5rem;
}

.header__logo img {
    margin-right: .9rem;
    /* filter: invert(1) brightness(10); */
    will-change: transform;
    filter: brightness(0) invert(1);
}

.header__nav {
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(60px);
    -webkit-backdrop-filter: blur(60px);
    box-shadow:
        0 1px 15px 0 rgba(0, 0, 0, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 0.15),
        inset 0 -1px 0px rgba(255, 255, 255, 0.06),
        inset -1px -1px 0px rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    padding: 2rem;
    visibility: hidden;
    overflow: hidden;
    max-height: 0;
    position: absolute;
}

.header.header_menu-open .header__nav {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    visibility: visible;
    max-height: none;
}

.header.header_menu-open .header__nav::after,
.header.header_menu-open .header__nav::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 20%;
    height: 100%;
    filter: blur(10px);
    background: radial-gradient(ellipse 80% 100% at left center, #fdfdfd00 0%, #ffffff29 40%, #3f51b500 70%);
    pointer-events: none;
    z-index: -1;
}

.header.header_menu-open .header__nav::after {
    right: 0;
    left: auto;
    transform: scale(-1, 1);
}

.menu-top {
    list-style-type: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
}

.header_menu-open .menu-top {
    margin-bottom: 2rem;
}

.menu-top__link {
    font-weight: 400;
    font-size: var(--fz-menu-link);
    font-family: 'Syne', sans-serif;
    text-decoration: none;
}

.menu-top__link,
.menu-top__link:link,
.menu-top__link:visited,
.menu-top__link:active {
    color: #FFFFFF;
}

.header__phone {
    text-decoration: none;
    font-size: 2rem;
    font-weight: 600;
    transition: text-shadow .3s;
    cursor: pointer;
    margin-left: auto;
    margin-right: 3rem;
}

.header__phone,
.header__phone:link,
.header__phone:visited,
.header__phone:active {
    color: #F5A159;
}

.header_menu-open .header__phone {
    font-size: 1.8rem;
}

.header__phone span {
    display: none;
}

.header.header_menu-open .header__phone span {
    display: inline;
}

/* ==== FEATURES ==== */
.features {
    list-style-type: none;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .6rem;
    margin-bottom: 2.2rem;
    flex-direction: column;
    grid-column: 1/2;
}

.features__item {
    font-size: var(--fz-features);
    line-height: 130%;
    color: #fff;
    display: flex;
    align-items: center;
    flex: 1;
}

.features__item::before {
    content: '';
    height: 2.4rem;
    width: 2.4rem;
    flex: 1 0 2.4rem;
    background-image: url('../img_v2/tick-mobile.svg');
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 1.6rem;
}

/* ==== HERO ==== */
.hero {
    display: grid;
    grid-template-columns: 7fr 3fr;
}

.hero__content {
    display: contents;
}

.hero__title {
    font-weight: 700;
    font-size: var(--fz-hero-title);
    color: #fff;
    line-height: 110%;
    margin-bottom: 1.6rem;
    grid-column: 1/2;
}

.hero__title span.animate__animated {
    --animate-duration: 1.6s;
    --animate-repeat: 5;
}

.hero__title span.only-mobile.animate__animated {
    display: inline-block;
}

.hero__title span:first-child {
    margin-bottom: 1.6rem;
    display: inline-block;
}

.hero__text {
    font-size: var(--fz-hero-text);
    color: #fff;
    line-height: 130%;
    margin-bottom: 2rem;
    grid-column: 1/2;
    /* font-weight: 500; */
}

.hero__footer {
    display: flex;
    align-items: center;
    grid-column: 1/3;
    gap: 2rem;
}

.hero__caption {
    text-align: right;
    color: #fff;
    line-height: 130%;
    font-size: var(--fz-hero-caption);
}

.hero__controls {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
}

/*==== ABOUT-SCREEN ====*/
.about-group {
    display: flex;
    gap: 1.6rem;
    align-items: stretch;
    flex-direction: column;
}

.about-info__top {
    margin-bottom: .8rem;
}

.about-info__title {
    color: #5A6E7F;
    font-weight: 600;
    font-size: var(--fz-about-title);
    margin-bottom: .8rem;
}

.about-info__caption {
    font-size: 1.2rem;
}

.about-doc {
    align-self: center;
}

.about-doc img {
    border-radius: 18px;
    border: 1px solid rgba(90, 110, 127, 0.8);
    max-width: 60%;
}

/*==== ADVANTAGES-SCREEN ====*/
.advantages {
    display: flex;
    gap: 1.2rem;
    flex-direction: column;
    color: #4A5B6E;
}

.advantage {
    border-radius: 22px;
    background-color: #DEDEE0;
    padding: 1.6rem 2.5rem;
    display: flex;
    flex-direction: column;
}

.advantage__wrap {
    max-width: 70%;
    display: flex;
    flex-direction: column;
}

.advantage_bg-icon,
.advantage_bg-icon.advantage_hero {
    background-repeat: no-repeat;
    background-position: calc(100% - 2.5rem) center;
    background-size: 8rem;
}

.advantage_bg-1 {
    background-image: url('../img_v2/advant-1.png');
}

.advantage_bg-2 {
    background-image: url('../img_v2/advant-2.png');
}

.advantage_bg-3 {
    background-image: url('../img_v2/advant-3.png');
}

.advantage_bg-4 {
    background-image: url('../img_v2/advant-4.png');
}

.advantage_bg-5 {
    background-image: url('../img_v2/advant-5.png');
}

.advantage_bg-6 {
    background-image: url('../img_v2/advant-6.png');
}

.advantage_accent {
    color: #fff;
}

.advantage_fill {
    background-color: #225797;
    color: #fff;
}

.advantage__title {
    font-size: var(--fz-advantage-title);
    font-weight: 700;
    margin-bottom: .8rem;
    color: #1A2C3E;
}

.advantage_fill .advantage__title,
.advantage_accent .advantage__title {
    color: #fff;
}

.advantage__text {
    font-size: var(--fz-advantage-text);
    line-height: 130%;
}

.advantage__text mark {
    color: #F5A159;
    background-color: transparent;
    font-weight: 600;
}

.advantage__text:has(+ .advantage__caption:not(.only-desktop)) {
    margin-bottom: 1.6rem;
}

.advantage__caption {
    font-size: var(--fz-advantage-caption);
    line-height: 130%;
    align-self: flex-end;
    padding-right: 14%;
    text-align: right;
}

.advantage_hero .advantage__title {
    font-size: var(--fz-advantage-hero-title);
}

.advantage:last-of-type.advantage_hero .advantage__title {
    font-size: var(--fz-advantage-title);
}

.advantage:last-of-type.advantage_hero .advantage__wrap {
    max-width: 100%;
}

.advantage_hero {
    background-position: right top, center;
    background-size: auto 100%, cover;
    background-repeat: no-repeat;
    background-color: #023049;
}

.advantage_hero-1 {
    background-image: url('../img_v2/advant-hero-1.png'), url('../img_v2/advant-hero-shapes.svg')
}

.advantage_video {
    position: relative;
}

.advantage_video .advantage__video-link {
    position: absolute;
    bottom: -1px;
    left: -1px;
    width: 4.2rem;
    height: 4.2rem;
    border-radius: 50%;
    background-color: #F5A159;
    border: 2px solid #fff;
}

.advantage_video .advantage__video-link::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-33%, -50%);
    width: 1.2rem;
    height: 1.2rem;
    background: url('data:image/svg+xml;utf8,<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10.2361 4.27153C10.5185 4.4199 10.7547 4.64138 10.9194 4.91225C11.0841 5.18312 11.1712 5.49317 11.1712 5.80917C11.1712 6.12517 11.0841 6.43522 10.9194 6.70609C10.7547 6.97696 10.5185 7.19844 10.2361 7.34681L2.70292 11.3939C1.48993 12.0457 0 11.1976 0 9.85688V1.76205C0 0.420169 1.48993 -0.427363 2.70292 0.223825L10.2361 4.27153Z" fill="white"/></svg>');
    background-size: contain;
}

.btn.advantage__btn {
    margin-left: auto;
    padding: .9rem 1.6rem;
    background-color: rgba(34, 87, 151, .7);
    border-radius: 20px;
}

/*==== STEPS-SCREEN ====*/
.screen__border-box {
    padding: 4rem 3rem;
    border: 2px solid rgba(90, 110, 127, .7);
    border-radius: 50px;
}

.steps {
    margin-bottom: 2rem;
    color: #4A5B6E;
}

.steps__item {
    list-style: none;
    counter-increment: step;
    list-style-position: inside;
}

.steps__item:not(:last-child) {
    margin-bottom: 1.6rem;
}

.steps__item .steps__label {
    display: inline-block;
    margin-left: .8rem;
    color: #225797;
    font-size: var(--fz-step-label);
    font-weight: 700;
    margin-bottom: 1.2rem;
}

.steps__item::before {
    content: counters(step, " ");
    color: #225797;
    font-size: var(--fz-step-num);
    font-weight: 700;
    font-family: 'Arial', sans-serif;
}

/*==== NRS-SCREEN ====*/
#nrs-screen .screen__dscr {
    margin-bottom: 1.6rem;
}

.nrs-info {
    display: flex;
    flex-wrap: wrap;
    gap: 2.4rem;
    margin-bottom: 4rem;
}

.nrs-info__title {
    font-weight: 700;
    margin-bottom: 2.4rem;
}

.nrs-info__text {
    line-height: 130%;
    margin-bottom: 3rem;
    color: #4A5B6E;
}

.nrs-info__text p:not(:last-child) {
    margin-bottom: .8rem;
}

.nrs-info__blocks {
    display: flex;
    gap: 2.4rem;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 4rem;
}

.nrs-info__blocks>div {
    flex: 0 1 calc(50% - 1.2rem);
    border: 2px solid #DEDEE0;
    background-color: rgba(222, 222, 224, .5);
    border-radius: 22px;
    padding: 1.6rem 3rem;
}

.nrs-info__blocks>div:first-child {
    flex: 1 0 100%;
    display: flex;
    gap: 2rem;
    align-items: center;
}

.nrs-info__blocks>div:first-child p {
    font-size: 1.8rem;
    color: #225797;
    font-weight: 600;
}

.nrs-info__blocks-price {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.nrs-info__blocks-price>span {
    font-size: 1.5rem;
    display: inline-block;
    margin-bottom: .8rem;
}

.nrs-info__blocks-price p {
    color: #1A2C3E;
    font-size: 2rem;
    font-weight: 700;
    font-family: 'Inter', sans-serif;
}

.nrs-contacts {
    padding: 4rem 0;
    border-top: 1px solid #DEDEE0;
    border-bottom: 1px solid #DEDEE0;
    display: flex;
    flex-wrap: wrap;
    gap: 2.4rem;
}

.nrs-contacts__text {
    font-size: 1.8rem;
    color: #4A5B6E;
}

.nrs-contacts .tags-list {
    gap: 2rem;
}

.nrs-contacts .tags-list li,
.nrs-contacts .tags-list li.light-tag {
    flex: 1;
    text-align: center;
    font-size: 1.4rem;
}

.nrs-contacts .tags-list li {
    white-space: nowrap;
}

.nrs-contacts .tags-list li:last-of-type {
    white-space: normal;
}

.nrs-contacts .tags-list li.light-tag {
    flex: 1 0 100%;
}

.nrs-contacts .tags-list li a {
    text-decoration: none;
}

.nrs-contacts .tags-list li a,
.nrs-contacts .tags-list li a:link,
.nrs-contacts .tags-list li a:visited {
    color: #1A2C3E;
}

/*==== PRICES-SCREEN ====*/
#prices-screen {
    background-image: url('../img_v2/bg-prices-mobile.svg');
    background-position: bottom center;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 1.2rem 0;
}

.price-blocks {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 2rem;
    margin-bottom: 2rem;
}

.price-block {
    border: 0.3px solid var(--color-text-black);
    border-radius: 15px;
    padding: 1.2rem 1.6rem;
    display: flex;
    gap: .8rem;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    justify-content: space-evenly;
}

.price-block__amount {
    font-size: var(--fz-price-block-amount);
    font-weight: 700;
    color: var(--color-text-black);
    font-family: 'Inter', sans-serif;
}

.price-block__title {
    font-size: var(--fz-price-block-title);
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;

}

.price-block__caption {
    font-size: var(--fz-price-block-caption);
    text-align: center;
}

.price-hero__title {
    font-size: var(--fz-price-hero-title);
}

/* ==== REGION-SCREEN ==== */
.region-content__title {
    margin-bottom: 1.6rem;
    font-weight: 700;
    text-align: center;
}

.region-content__map img {
    width: 100%;
    max-width: 100%;
}

.tags-list {
    list-style-type: none;
    display: flex;
    column-gap: .25rem;
    row-gap: 1.2rem;
    flex-wrap: wrap;
}

#region-screen .tags-list {
    margin-bottom: 2rem;
}

.tags-list li {
    border-radius: .8rem;
    background-color: #DEDEE0;
    padding: .4rem .6rem;
    font-weight: 500;
    font-size: 1rem;
    font-family: 'Inter', sans-serif;
}

.tags-list li.border-tag {
    border: 1px solid var(--color-text-black);
    background-color: transparent;
}

.tags-list li.dark-tag {
    background-color: #275391;
    color: #fff;
}

.tags-list li.light-tag {
    background-color: #BDD0E7;
    color: #275391;
}

/* ==== COMMENTS-SCREEN ==== */
.comments {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    padding-left: 1.6rem;
    margin-bottom: 2.8rem;
}

.comments .swiper-wrapper {
    align-items: stretch;
}

.comments__slide {
    height: auto;
}

.comments__slide-wrap {
    background-color: #DEDEE0;
    border-radius: 4rem;
    padding: 3rem 2.4rem;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.comments-nav {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 1.3rem;
    margin-bottom: 1.8rem;
}

.comments-nav__prev,
.comments-nav__next {
    width: 3.6rem;
    height: 3.6rem;
    padding: .9rem 1.2rem;
    position: relative;
    border-radius: 50%;
    border: .8px solid #000;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.comments-nav__prev::before,
.comments-nav__next::before {
    content: url("data:image/svg+xml,%3Csvg width='7' height='12' viewBox='0 0 7 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.89796 11.7559C5.63201 11.7559 5.36466 11.6542 5.16137 11.4509L0.305993 6.61923C0.109662 6.42289 -0.000339491 6.15694 -0.000339491 5.87846C-0.000339491 5.60137 0.109662 5.33541 0.305993 5.13908L5.16137 0.304593C5.56935 -0.101994 6.22935 -0.101994 6.63733 0.307378C7.04392 0.71675 7.04253 1.37815 6.63455 1.78474L2.52273 5.87846L6.63455 9.97218C7.04253 10.3788 7.04392 11.0388 6.63733 11.4481C6.43404 11.6542 6.1653 11.7559 5.89796 11.7559' fill='black'/%3E%3C/svg%3E");
    width: 1.4rem;
    height: .9rem;
    line-height: .9rem;
}

.comments-nav__next::before {
    transform: scale(-1, 1);
}

.comments-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2rem;
}

.comments-pagination .swiper-pagination-bullet {
    background-color: #DEDEE0;
    opacity: 1;
}

.comments-pagination .swiper-pagination-bullet-active {
    background-color: var(--color-text-black);
}

.comments__slide {
    color: #4A5B6E;
}

.comments__slide-content {
    font-size: var(--fz-comment-text);
    margin-bottom: 2rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 7;
    overflow: hidden;
}

.comments__slide-bottom {
    display: flex;
    align-items: center;
    margin-top: auto;
}

.comments__slide-author {
    flex: 1;
    gap: 1.5rem;
}

.comments__slide-author p {
    font-size: var(--fz-comment-author-name);
    font-weight: 700;
    margin-bottom: .8rem;
    color: var(--color-text-black);
}

.comments__slide-author span {
    font-size: var(--fz-comment-author-post);
}

.comments__slide-top {
    margin-bottom: 1.5rem;
    display: inline-flex;
}

.comments__slide-top::before {
    content: "★★★★★";
    color: #F5A159;
    font-size: 1.4rem;
    letter-spacing: .4rem;
    display: inherit;
    overflow: hidden;
}

.comments__slide-top[data-rating="5"]::before {
    width: 100%;
}

.comments__slide-top[data-rating="4"]::before {
    width: calc(4/5*100%);
}

.comments__slide-top[data-rating="3"]::before {
    width: calc(3/5*100%);
}

.comments__read-more {
    text-underline-offset: 4px;
    margin-bottom: 3rem;
}

.comments__read-more:link,
.comments__read-more:visited,
.comments__read-more:active {
    color: var(--color-text-black);
}

/*==== FAQ-SCREEN ====*/
.accordion__trigger {
    background-color: transparent;
    border: 0 none;
    text-align: left;
    padding: 1.6rem 0;
    border-bottom: 1px solid #A0A0A0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    gap: 2rem;
    width: 100%;
}

.accordion__item:first-of-type .accordion__trigger {
    padding-top: 0;
}

.accordion__trigger::after {
    content: url("data:image/svg+xml,%3Csvg viewBox='0 0 18 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.665 8.66504L8.66504 0.665039L0.665039 8.66504' stroke='%23334155' stroke-width='1.33' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    width: var(--size-faq-icon);
    height: 1rem;
    flex: 0 0 var(--size-faq-icon);
    transform: rotate(180deg);
    transition: transform .3s;
}

.acсordion__trigger-title {
    font-size: var(--fz-faq-title);
    font-weight: 700;
    color: var(--color-text-black);
}

.accordion__content {
    transition: max-height .3s;
    overflow: hidden;
    max-height: 0;
    color: var(--color-text-black);
    font-size: var(--fz-faq-text);
}

.accordion__content-wrap {
    padding: 1.6rem 0 2rem 0;
    line-height: 1.3;
}

.accordion__content ul {
    list-style-type: square;
    list-style-position: inside;
    padding-left: 1rem;
}

.accordion__content ol {
    list-style-position: inside;
    padding-left: 1rem;
}

.accordion__content a,
.accordion__content a:link,
.accordion__content a:active,
.accordion__content a:visited,
.accordion__content a:hover {
    color: var(--color-text-black);
}

.accordion__content strong {
    color: #36404a;
}

.accordion__item_show .accordion__trigger::after {
    transform: rotate(0deg);
}

.accordion__item_show .accordion__content {
    border-bottom: 1px solid #A0A0A0;
}

/*==== SPECIALISTS-SCREEN ====*/
.specialists {
    display: flex;
    gap: 2rem;
    flex-direction: column;
}

.specialist {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}

.specialist__media {
    max-width: 100%;
}

.speacialist__info {
    color: #4A5B6E;
    font-size: var(--fz-specialist-info);
    align-self: flex-end;
    padding-bottom: 1rem;
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.speacialist__info a {
    text-decoration: none;
}

.speacialist__info a:link,
.speacialist__info a:visited,
.speacialist__info a:active {
    color: #4A5B6E;
}

.speacialist__name {
    font-size: var(--fz-specialist-name);
    color: var(--color-text-black);
    font-weight: 700;
}

.speacialist__name span {
    text-transform: uppercase;
    display: inline-block;
    width: 100%;
}

.speacialist__post {
    font-weight: 600;
}

.speacialist__phones {
    list-style-type: none;
}

/*==== PROMO ====*/
.promo {
    border-radius: 22px;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
    padding: 2rem 3rem;
    background-image: linear-gradient(65deg,
            #096cb4 0%,
            #29518f 45%,
            #2a4d89 65%,
            #1a3a5c 100%);
    color: #fff;
}

.promo__title {
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: .8rem;
}

.promo__title span {
    font-weight: 800;
    color: #F5A159;
}

.promo__text {
    margin-bottom: 1.6rem;
}

.promo__text p {
    font-size: 1rem;
}

.promo__text p:not(:last-child) {
    margin-bottom: .4rem;
}

.promo__text p span {
    color: #F5A159;
    font-weight: 800;
}

.promo-line {
    display: none;
    opacity: 0;
    transition:
        opacity 0.3s;

    @starting-style {
        opacity: 1;
    }
}

.promo__close {
    display: none;
}

/*==== CONTACTS-SCREEN ====*/
.contacts__overlay {
    padding-top: 2rem;
    padding-bottom: 2rem;
    border-top: 1px solid #DEDEE0;
    border-bottom: 1px solid #DEDEE0;
}

.contacts {
    list-style: none;
    margin-bottom: 2.4rem;
    color: var(--color-text-black);
}

.contacts__item:has(a) a,
.contacts__item {
    display: flex;
    gap: 1.5rem;
    align-items: center;
}

.contacts__item {
    font-size: 1.2rem;
}

.contacts__item:not(:last-of-type) {
    margin-bottom: 1.6rem;
}

.contacts__item a {
    text-decoration: none;
}

.contacts__item a:link,
.contacts__item a:visited,
.contacts__item a:active {
    color: var(--color-text-black);
}

.contacts__btn {
    margin-bottom: .8rem;
}

.contacts__caption {
    font-size: 1rem;
    color: #4A5B6E;
    text-align: center;
    display: inline-block;
    width: 100%;
}

/*==== FOOTER ====*/
.footer .screen__wrap {
    display: flex;
    flex-direction: column-reverse;
    padding: 0;
    gap: 4rem;
}

.footer__form {
    padding: 0 1.6rem;
}

.footer__form-overlay {
    border-radius: 50px;
    background-color: #2A4E89;
    padding: 3rem;
}

.footer__form-title {
    font-size: 1.4rem;
    color: #fff;
    font-weight: 600;
    text-align: center;
    margin-bottom: 2.5rem;
}

.form {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
}

.form__group {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
}

.form__label {
    position: relative;
    background-color: rgba(217, 217, 217, .5);
    border: .7px solid #D9D9D9;
    border-radius: 8px;
    /* overflow: hidden; */
}

.suggestions-promo {
    display: none;
}

.form__inp {
    width: 100%;
    height: 100%;
    background-color: transparent;
    border: 0 none;
    color: #fff;
    font-size: 1.2rem;
    line-height: 180%;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
    padding: 1.4rem;
}

.form__inp:focus {
    outline: none;
}

.from__inp-caption {
    position: absolute;
    top: 1.4rem;
    left: 1.4rem;
    color: #fff;
    font-weight: 500;
    font-size: 1.2rem;
    transition:
        transform .3s,
        font-size .3s,
        color .3s;
    display: inline-block;
    font-family: 'Inter', sans-serif;
    pointer-events: none;
}

.form__label:focus-within .from__inp-caption,
.form__inp:not(:placeholder-shown)~.from__inp-caption {
    transform: translateY(-1rem);
    font-size: 1rem;
    padding-bottom: 2px;
    color: #DEDEE0;
}

.form__politic {
    font-size: 1rem;
    color: #fff;
}

.form__politic a,
.form__politic a:link,
.form__politic a:visited,
.form__politic a:active {
    color: #fff;
}

.suggestions-suggestions {
    max-height: 20rem;
    overflow-y: auto;
}

.from__message {
    color: #fff;
}

.quiz-form .from__message {
    color: #4A5B6E;
}

.footer__info {
    background-color: #DEDEE0;
    border-radius: 20px 20px 0 0;
    padding: 3rem 2rem;
    display: flex;
    flex-direction: column;
    gap: 2.8rem;
}

.footer__logo {
    display: flex;
    align-items: center;
    gap: 1.6rem;
    text-decoration: none;
}

a.footer__logo:link,
a.footer__logo:visited,
a.footer__logo:active {
    color: #003D73;

}

.footer__logo span {
    font-size: 2rem;
}

.menu-bottom {
    list-style-type: none;
    gap: 1.6rem;
    display: flex;
    flex-direction: column;
}

.menu-bottom__link {
    font-size: 1.2rem;
    text-decoration: none;
}

.menu-bottom__link:link,
.menu-bottom__link:visited,
.menu-bottom__link:active {
    color: #1C1A1A;
}

.footer__contacts {
    display: flex;
    flex-direction: column-reverse;
    gap: 3rem;
}

.footer__socials {
    list-style-type: none;
    display: flex;
    gap: 1.6rem;
}

.footer__copyright {
    color: #7E7E7E;
}

/*==== LOYALTY-PROGRAM ====*/
.loyalty-program-content {
    display: flex;
    align-items: stretch;
    flex-direction: column;
    gap: 2rem;
    color: #1A2C3E;
}

.loyalty-program-content__accent-box {
    background-color: #DEDEE0;
    border-radius: 22px;
    padding: 1.6rem 2.5rem;
    height: 100%;
    display: flex;
    flex-direction: column;
    /* justify-content: space-between; */
}

.loyalty-program-content__left {
    line-height: 1.4;
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
    justify-content: space-between;
}

.loyalty-program-content__left p:not(:last-of-type) {
    margin-bottom: 1.6rem;
}

.loyalty-program-content__left button {
    margin-bottom: 2.4rem;
}

.loyalty-program-content__left button+span {
    font-size: 1.2rem;
}

.loyalty-program-content__title {
    font-size: 2rem;
    color: #F5A159;
    font-weight: 700;
    margin-bottom: 1.5rem;
}

.loyalty-program-content__right {
    line-height: 1.3;
}

.loyalty-program-content__right .loyalty-program-content__accent-box>p,
.loyalty-program-content__right ul li:not(:last-of-type) {
    margin-bottom: 1.2rem;
}

.loyalty-program-content__right ul {
    list-style-type: none;
}

.loyalty-program-content__right ul li {
    display: flex;
    gap: 1.2rem;
    align-items: baseline;
}

.loyalty-program-content__right ul li::before {
    content: '';
    display: block;
    width: .8rem;
    height: .8rem;
    flex: 0 0 .8rem;
    background-color: #F5A159;
}

.loyalty-program-content__control button {
    width: 100%;
    justify-content: center;
}

.tags-list.loyalty-program-tags {
    padding: 0;
    padding-top: 3rem;
    border-top: 1px solid #DEDEE0;
    margin-top: 4rem;
    justify-content: center;
    gap: 2rem;
}

.loyalty-program-tags li,
.nrs-contacts .tags-list li {
    padding: .9rem 2rem;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
    border-radius: 1.8rem;
}

.loyalty-program-tags li.light-tag,
.loyalty-program-tags li,
.nrs-contacts .tags-list li.light-tag,
.nrs-contacts .tags-list li {
    font-size: 1.4rem;
}

.loyalty-program-tags li a,
.loyalty-program-tags li a:hover {
    text-decoration: none;
}

.loyalty-program-tags li a:link,
.loyalty-program-tags li a:visited,
.loyalty-program-tags li a:active {
    color: #1A2C3E;
}

/*------------------------------*/
.modal {
    position: fixed;
    inset: 0;
    z-index: 1000;

    display: none;
    align-items: center;
    justify-content: center;

    padding: 1.6rem;

    opacity: 0;
    transition:
        opacity 0.3s,
        display 0.3s allow-discrete;

    @starting-style {
        opacity: 1;
    }
}

.modal_open {
    display: flex;
    opacity: 1;

    @starting-style {
        opacity: 0;
    }
}

.modal__overlay {
    position: absolute;
    inset: 0;

    background: rgba(26, 44, 62, 0.55);
    /* backdrop-filter: blur(6px); */
}

.modal__content {
    position: relative;
    z-index: 1;

    width: 100%;
    max-height: calc(100vh - 32px);

    padding: 2rem;

    overflow: hidden;

    background: #fff;
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(26, 44, 62, 0.18);
}

#video-modal .modal__content {
    background-color: transparent;
    box-shadow: none;
}

.modal_form .modal__content {
    background-color: #2A4E89;
}

.modal_form .modal__content h2 {
    color: #fff;
    margin-bottom: 2rem;
    font-size: 1.8rem;
    line-height: 1.2;
}

.modal__close {
    position: absolute;
    top: 1.6rem;
    right: 1.6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 4rem;
    height: 4rem;

    padding: 0;

    border: none;
    border-radius: 50%;

    background: transparent;

    font-size: 4rem;
    line-height: 1;
    color: #1A2C3E;

    cursor: pointer;

    transition: background-color 0.2s;
}

.modal_form .modal__close {
    color: #fff;
}

.modal__close:hover,
#video-modal .modal__close {
    background-color: #DEDEE0;
}

.modal__header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;

    padding: 4rem 0 2rem 0;
    margin-bottom: 2rem;

    border-bottom: 1px solid #DEDEE0;
}

.modal__author {
    display: flex;
    align-items: center;
    gap: 1.4rem;
}

.modal__logo img {
    width: 5.6rem;
    height: 5.6rem;

    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.modal__name {
    margin-bottom: .4rem;

    color: #1A2C3E;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.2;
}

.modal__rating {
    display: flex;
    align-items: center;
    gap: 1rem;

    flex-wrap: wrap;
}

.modal__stars {
    color: #F5A159;
    font-size: 2.2rem;
    letter-spacing: .2rem;
    line-height: 1;
}

.modal__score {
    color: #1A2C3E;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
}

.modal__body {
    overflow-y: auto;
    overscroll-behavior: contain;

    padding-right: .8rem;

    color: #1A2C3E;
    font-size: 1.6rem;
    line-height: 1.6;
}

#video-modal .modal__body {
    max-height: none;
}

.modal__body p {
    margin: 0 0 2rem;
}

.modal__body p:last-child {
    margin-bottom: 0;
}

/* Scroll */

.modal__body::-webkit-scrollbar {
    width: 8px;
}

.modal__body::-webkit-scrollbar-track {
    background: #DEDEE0;
    border-radius: 20px;
}

.modal__body::-webkit-scrollbar-thumb {
    background: #BDD0E7;
    border-radius: 20px;
}

/* 768 */

@media (min-width: 768px) {
    .modal {
        padding: 24px;
    }

    .modal__content {
        padding: 28px;
        max-width: 720px;
        max-height: calc(100vh - 48px);
    }

    .modal__logo img {
        height: 40px;
    }

    .modal__header {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;

        padding: 6rem 0 24px 0;
        margin-bottom: 24px;
    }

    .modal__author {
        gap: 16px;
    }

    .modal__avatar {
        width: 64px;
        height: 64px;
    }

    .modal__name {
        font-size: 20px;
    }

    .modal__date {
        font-size: 15px;
    }

    .modal__stars {
        font-size: 24px;
    }

    .modal__score {
        font-size: 32px;
    }

    .modal__body {
        font-size: 18px;
        line-height: 1.7;
    }
}

/* 992 */

@media (min-width: 992px) {
    .modal__content {
        max-width: 760px;
        padding: 32px;
    }

    .modal__close {
        top: 20px;
        right: 20px;
    }

    .modal__avatar {
        width: 72px;
        height: 72px;
    }

    .modal__name {
        font-size: 2rem;
    }

    .modal__stars {
        font-size: 28px;
    }

    .modal__score {
        font-size: 2.8rem;
    }

    .modal__body {
        max-height: 420px;

        padding-right: 12px;

        font-size: 20px;
    }

    .modal_form .modal__body {
        max-height: none;
    }

    #video-modal .modal__body {
        max-height: none;
    }
}

/* 1440 */

@media (min-width: 1440px) {
    .modal__content {
        max-width: 820px;
    }
}

.quiz {
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s;
}

.quiz__wrap {
    padding: 0 1.6rem;
    padding-top: 0;
}

.quiz__title {

    font-size: 36px;

    font-weight: 700;

    line-height: 1.2;

    color: #0f172a;

    margin-bottom: 16px;

    text-align: center;

    letter-spacing: -0.02em;

}

.quiz__subtitle {

    font-size: 18px;

    color: #64748b;

    text-align: center;

    max-width: 720px;

    margin: 0 auto 56px;

    line-height: 1.6;

}

.quiz__grid {

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 60px;

    margin-bottom: 56px;

}

.quiz__form-wrapper {

    background: #ECEDEF;

    border-radius: 24px;

    padding: 36px;

    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.06);

    border: 1px solid #DEDEE0;
    height: 100%;

}

.quiz-form {
    height: 100%;
    flex-direction: column;
    display: flex !important;
}

.quiz-form__progress {

    width: 100%;

    height: 8px;

    background: rgba(100, 126, 168, .3);

    border-radius: 6px;

    margin-bottom: 10px;

    overflow: hidden;

}

.quiz-form__progress-bar {

    height: 100%;

    background: linear-gradient(90deg, #1e40af, #3b82f6);

    border-radius: 6px;

    transition: width 0.4s ease;

    width: 0%;

}

.quiz-form__step {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    gap: 12px;
}

.quiz-form__step-text {

    font-size: 14px;

    color: #94a3b8;

    margin-bottom: 28px;

    font-weight: 500;
    font-family: 'Inter', sans-serif;
}

.quiz-form__question {

    font-size: 18px;

    font-weight: 600;

    color: #1e293b;

    margin-bottom: 20px;

    line-height: 1.4;

}

.quiz-form__options {

    display: flex;

    flex-direction: column;

    gap: 12px;

    margin-bottom: 28px;

}

.quiz-option {

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 16px 20px;

    background: rgba(139, 158, 188, .25);

    border: 2px solid rgba(139, 158, 188, .8);

    border-radius: 16px;

    cursor: pointer;

    transition: all 0.2s;

}

.quiz-form__hint {
    font-size: 12px;
}

.quiz-option:hover {

    background: #ffffff;

    border-color: #1e40af;

    box-shadow: 0 4px 12px rgba(30, 64, 175, 0.06);

}

.quiz-option input[type="radio"] {

    accent-color: #1e40af;

    width: 20px;

    height: 20px;

    cursor: pointer;

    flex-shrink: 0;

}

.quiz-option__text {

    font-size: 14px;

    color: #334155;

    font-weight: 500;

    font-family: 'Inter', sans-serif;

}

.quiz-form__nav {

    display: flex;

    gap: 14px;

}

.quiz-form__nav .btn--outline {

    flex: 1;

}

.quiz-form__nav .btn--primary,

.quiz-form__nav .btn--accent {

    flex: 2;

}

.quiz-result {
    text-align: center;
}

.quiz-result__title {
    font-size: 22px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 16px;
}

.quiz-result__summary {
    font-size: 16px;
    color: #475569;
    margin-bottom: 20px;
    line-height: 1.6;
    text-align: left;
}

.quiz-result__discount {
    margin-bottom: 24px;
}

.discount-badge {
    display: block;
    width: 100%;
    background: #dbeafe;
    color: #1e40af;
    font-weight: 700;
    font-size: 18px;
    padding: 16px 24px;
    border-radius: 14px;
    text-align: center;
}

.quiz-result__cta-text {
    font-size: 15px;
    color: #64748b;
    margin-bottom: 20px;
}

.quiz-result__reset {
    margin-top: 20px;
}

.quiz-result__divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 20px 0;
    color: #94a3b8;
    font-size: 13px;
}

.quiz-result__divider::before,
.quiz-result__divider::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #e2e8f0;
}

.quiz-result__form .btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none !important;
}

.quiz-result__form .input {
    width: 100%;
    padding: 14px 16px;
    font-size: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #f8fafc;
    margin-bottom: 14px;
    font-family: inherit;
}

.quiz-result__form .input:focus {
    outline: none;
    border-color: #1e40af;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(30, 64, 175, 0.1);
}

.consent-label {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 13px;
    color: #64748b;
    margin-bottom: 16px;
    cursor: pointer;
    text-align: left;
}

.consent-label input {
    margin-top: 2px;
    accent-color: #1e40af;
    flex-shrink: 0;
}

.consent-label a {
    color: #1e40af;
    text-decoration: underline;
}

.form-note {
    font-size: 13px;
    color: #94a3b8;
    text-align: center;
    margin-top: 14px;
}

.price-card {

    background: #f8fafc;

    border: 1px solid #e2e8f0;

    border-radius: 14px;

    padding: 18px;

    text-align: center;

    cursor: default;

}

.price-card--clickable {

    cursor: pointer;

}

.price-card__value {

    font-size: 24px;

    font-weight: 700;

    color: #1e40af;

}

.price-card__label {

    font-size: 13px;

    color: #64748b;

}

.price-card__label--link {

    text-decoration: underline dotted;

    cursor: pointer;

}

.card-detail {

    display: none;

    font-size: 12px;

    color: #475569;

    margin-top: 8px;

    padding-top: 8px;

    border-top: 1px solid #e2e8f0;

    text-align: left;

}

.card-detail.open {

    display: block;

}

.result-actions {

    display: flex;

    flex-direction: row;

    gap: 16px;
    flex-wrap: wrap;
    justify-content: space-between;
}

#prices-screen .result-actions .btn {
    max-width: 100%;
}

.result-actions__row {

    display: flex;

    gap: 12px;

}

@media (max-width: 768px) {
    .quiz:not(.quiz_hidden) {

        padding: 60px 0;

    }

    .quiz__grid {

        grid-template-columns: 1fr;

        gap: 40px;

    }

    .quiz__title {

        font-size: 22px;

    }

    .quiz__subtitle {

        font-size: 16px;

        margin-bottom: 40px;

    }

    .quiz__form-wrapper {

        padding: 24px 20px;

    }

    .btn span {
        display: contents;
    }
}

.scroll-to-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 52px;
    height: 52px;
    background-color: #2A4E89;
    color: #fff;
    border: none;
    border-radius: 30px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 400;
    transition: all 0.25s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    z-index: 999;
    font-family: 'Inter', sans-serif;
}

.scroll-to-top:hover {
    background-color: #F5A159;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(255, 107, 53, 0.3);
}

/* Класс, который делает кнопку видимой */
.scroll-to-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Адаптив */
@media (max-width: 600px) {
    .scroll-to-top {
        width: 48px;
        height: 48px;
        font-size: 24px;
        bottom: 20px;
        right: 20px;
    }
}

.scroll-to-top:focus-visible {
    outline: 3px solid #F5A159;
    outline-offset: 2px;
}