/* ============ Tokens (из PSD) ============ */
.rs {
  --teal: #8aaaa7;
  --teal-light: #a9cac6;
  --mint: #ebf4f3;
  --gold: #a4956c;
  --gold-circle: #ad976b;
  --sand: #e5daba;
  --rust: #a13c10;
  --rust-btn: #9e3c0f;
  --dark: #1e2928;
  --grey: #8d9392;
  --placeholder: #6c8582;
  --line: #e2eeea;
  --play: #c9bd9a;

  --font-head: 'RS Arsenal', serif;
  --font-body: 'RS Inter', sans-serif;
  --font-num: 'RS Cormorant', 'RS Arsenal', serif}

.rs *,.rs *::before,.rs *::after { box-sizing: border-box; }

.rs {
  color: var(--dark);
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: .025em}

.rs img { display: block; max-width: 100%; height: auto; }

.rs svg { max-width: 100%; }

.rs a { color: inherit; text-decoration: none; }

.rs ul,.rs ol { margin: 0; padding: 0; list-style: none; }

.rs h1,.rs h2,.rs h3,.rs h4,.rs p,.rs figure { margin: 0; }

.rs button { font: inherit; letter-spacing: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }

.rs b { font-weight: 700; }

.rs .rs-container { width: 100%; max-width: 1238px; margin: 0 auto; padding: 0 24px; }

@media (min-width: 1238px) {

.rs .rs-container { padding: 0 24px; }
 
}


/* ============ Общие элементы ============ */
.rs .rs-h2 { font-family: var(--font-head); font-weight: 400; font-size: 42px; line-height: 50px; letter-spacing: .02em; }

.rs .rs-h2--center { text-align: center; }

.rs .rs-grad-title {
  font-family: var(--font-head); font-weight: 700; font-size: 54px; line-height: 60px; letter-spacing: 0;
  background: linear-gradient(180deg, var(--teal-light) 0%, var(--teal-light) 35%, var(--sand) 65%, var(--sand) 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  -webkit-text-fill-color: transparent;
}

.rs .rs-link-rust { color: var(--rust); border-bottom: 1px solid var(--rust); font-size: 18px; line-height: 20px; }

.rs .rs-link-teal {
  font-family: var(--font-head); font-weight: 700; font-size: 24px; line-height: 24px;
  color: var(--teal); border-bottom: 1px solid var(--teal); display: inline-block; padding-bottom: 2px;
}

.rs .rs-link-teal--sm { font-family: var(--font-body); font-weight: 500; font-size: 18px; line-height: 20px; }

.rs .rs-link-teal--center { display: block; width: max-content; margin: 0 auto; background: none; cursor: pointer; border-top: 0; border-left: 0; border-right: 0; font-family: var(--font-head); }

.rs .rs-checks li {
  position: relative; padding-left: 44px; min-height: 28px; font-size: 18px; line-height: 28px; color: #fff; margin-bottom: 9px;
}

.rs .rs-checks li::before {
  content: ''; position: absolute; left: 0; top: 0; width: 28px; height: 28px; border-radius: 8px;
  background: var(--teal) url(icons/check.png) center / 16px 13px no-repeat;
}

.rs .rs-checks li:last-child { margin-bottom: 0; }

.rs .rs-arrows { display: flex; align-items: center; gap: 0; }

.rs .rs-arrows button { width: 53px; height: 40px; display: flex; align-items: center; justify-content: center; }

.rs .rs-play {
  display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--play);
}

.rs .rs-play img { margin-left: 5px; }

.rs .rs-play--sm { width: 76px; height: 77px; }

.rs .rs-btn-teal,.rs .rs-btn-scan,.rs .rs-btn-pdf {
  background: var(--teal); color: #fff; border-radius: 20px; display: flex; align-items: center;
}


/* ============ 1. Шапка ============ */
.rs .rs-header { padding-top: 23px; }

.rs .rs-header__top { display: flex; align-items: center; height: 77px; }

.rs .rs-logo { display: flex; align-items: center; gap: 22px; font-weight: 300; font-size: 15px; line-height: 22px; }

.rs .rs-logo img { flex: none; }

.rs .rs-header__top .rs-logo { width: 311px; margin-top: -2px; gap: 24px; }

.rs .rs-header__phone { margin-top: -6px; display: flex; flex-direction: column; align-items: flex-end; margin-left: 142px; width: 191px; }

.rs .rs-phone { font-family: var(--font-head); font-weight: 700; font-size: 22px; line-height: 24px; letter-spacing: .06em; white-space: nowrap; margin-top: -6px; }

.rs .rs-header__phone .rs-link-rust { font-size: 17px; margin-top: 8px; border-bottom-width: 1px; }

.rs .rs-socials { display: flex; gap: 6px; margin-left: 29px; }

.rs .rs-soc { width: 59px; height: 59px; border-radius: 50%; background: var(--mint); display: flex; align-items: center; justify-content: center; }

.rs .rs-soc--wa { background: var(--teal); }

.rs .rs-btn-pdf { margin-left: auto; width: 298px; height: 77px; border-radius: 14px; padding-left: 29px; gap: 17px; font-weight: 500; font-size: 15px; line-height: 22px; }

.rs .rs-nav { display: flex; align-items: center; justify-content: space-between; margin-top: 18px; height: 31px; }

.rs .rs-nav__list,.rs .rs-nav__actions { display: flex; align-items: center; }

.rs .rs-nav__list { gap: 0; }

.rs .rs-nav__list li { margin-right: 26px; }

.rs .rs-nav__list li:nth-child(2) { margin-right: 29px; }

.rs .rs-nav__list li:nth-child(3) { margin-right: 42px; }

.rs .rs-nav__list li:nth-child(4) { margin-right: 37px; }

.rs .rs-nav__list a { display: inline-flex; align-items: center; gap: 11px; }

.rs .rs-nav__list img { height: 20px; width: 16px; margin-top: -2px; }

.rs .rs-nav__actions { gap: 30px; margin-right: 5px; }

.rs .rs-nav__actions a,.rs .rs-footer__actions a { display: inline-flex; align-items: center; gap: 12px; }


/* ============ 2. Баннер ============ */
.rs .rs-hero {
  position: relative; margin-top: 25px; height: 784px; border-radius: 30px; overflow: hidden; color: #fff;
  padding: 60px 70px 0;
  background:
    linear-gradient(0deg, rgba(0,0,0,.75) 0, rgba(0,0,0,0) 77%) bottom / 100% 602px no-repeat,
    linear-gradient(180deg, rgba(0,0,0,.55) 0, rgba(0,0,0,0) 100%) top / 100% 559px no-repeat,
    url(img/banner.jpg) center / cover no-repeat;
}

.rs .rs-hero .rs-grad-title { max-width: 1060px; }

.rs .rs-hero__lead { margin-top: 22px; font-weight: 500; font-size: 24px; line-height: 36px; letter-spacing: .03em; }

.rs .rs-hero .rs-checks { position: absolute; left: 71px; top: 474px; }

.rs .rs-hero .rs-checks li { margin-bottom: 9px; }

.rs .rs-hero .rs-btn-scan { position: absolute; left: 72px; top: 608px; width: 448px; height: 105px; padding-left: 34px; gap: 28px; font-weight: 500; font-size: 18px; line-height: 26px; }

.rs .rs-hero__video { position: absolute; left: 893px; top: 540px; width: 240px; }

.rs .rs-hero__video-text { display: block; margin-top: 20px; font-size: 15px; line-height: 26px; color: #fff; }

.rs .rs-hero__video-text em { font-style: normal; color: var(--teal-light); }


/* ============ 3. Проекты ============ */
.rs .rs-projects { margin-top: 71px; }

.rs .rs-projects__head { display: flex; justify-content: space-between; align-items: flex-start; }

.rs .rs-projects__head p { font-family: var(--font-head); font-size: 24px; line-height: 34px; letter-spacing: .02em; font-weight: 400; }

.rs .rs-projects__head .rs-arrows { margin-top: 12px; margin-right: -1px; }

.rs .rs-slider__track { display: flex; gap: 28px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -ms-overflow-style: none; }

.rs .rs-slider__track::-webkit-scrollbar { display: none; }

.rs .rs-slider__track > * { scroll-snap-align: start; }

.rs .rs-projects__grid { margin-top: 29px; }

.rs .rs-project {
  position: relative; flex: 0 0 calc(50% - 14px); height: 720px; border-radius: 30px; overflow: hidden; color: #fff; padding: 31px 35px 0;
  background:
    linear-gradient(0deg, rgba(0,0,0,.66) 0, rgba(0,0,0,0) 100%) bottom / 100% 418px no-repeat,
    linear-gradient(180deg, rgba(0,0,0,.66) 0, rgba(0,0,0,0) 100%) top / 100% 346px no-repeat,
    var(--bg) center / cover no-repeat;
}

.rs .rs-project h3 { font-family: var(--font-head); font-weight: 700; font-size: 30px; line-height: 36px; letter-spacing: 0; }

.rs .rs-project h3 sup { font-size: .6em; line-height: 0; vertical-align: super; }

.rs .rs-project__place { position: absolute; right: 35px; top: 37px; font-size: 14px; line-height: 17px; color: var(--teal-light); }

.rs .rs-project__text { margin-top: 18px; letter-spacing: .03em; font-size: 18px; line-height: 24px; max-width: 440px; }

.rs .rs-project .rs-play { position: absolute; left: 50%; top: 287px; width: 101px; height: 101px; margin-left: -40px; }

.rs .rs-project .rs-checks { position: absolute; left: 34px; top: 441px; }

.rs .rs-project .rs-checks li { letter-spacing: .035em; font-size: 15px; line-height: 27px; padding-left: 43px; margin-bottom: 8px; min-height: 27px; }

.rs .rs-project .rs-checks li::before { width: 27px; height: 27px; border-radius: 8px; background-size: 15px 12px; }

.rs .rs-project .rs-btn-teal { position: absolute; left: 32px; top: 553px; width: 511px; height: 81px; justify-content: center; font-weight: 700; font-size: 18px; border-radius: 20px; }

.rs .rs-calc-link { position: absolute; left: 79px; top: 655px; display: flex; align-items: center; gap: 15px; font-weight: 700; font-size: 18px; line-height: 28px; color: var(--sand); }


/* ============ 4. Результат ============ */
.rs .rs-result { margin-top: 79px; }

.rs .rs-result__top { display: flex; justify-content: space-between; height: 193px; }

.rs .rs-result__top .rs-h2 { align-self: center; margin-top: 4px; }

.rs .rs-anna { display: flex; width: 577px; }

.rs .rs-anna__photo { flex: none; width: 180px; height: 193px; position: relative; }

.rs .rs-anna__photo::before { content: ''; position: absolute; left: 0; bottom: 0; width: 180px; height: 180px; border-radius: 50%; background: var(--mint); }

.rs .rs-anna__photo img { position: relative; }

.rs .rs-anna__text { margin-left: 31px; padding-top: 17px; font-family: var(--font-head); font-size: 24px; line-height: 29px; letter-spacing: .02em; }

.rs .rs-anna__quote { font-style: italic; font-weight: 400; max-width: 360px; }

.rs .rs-anna__name,.rs .rs-anna__role { display: block; font-weight: 700; }

.rs .rs-anna__name { color: var(--teal); margin-top: 15px; }

.rs .rs-anna__role { color: #a5956d; }

.rs .rs-compare { position: relative; margin-top: 36px; }

.rs .rs-compare__img { position: relative; flex: 0 0 calc(50% - 14px); height: 439px; border-radius: 30px; overflow: hidden; }

.rs .rs-compare__img img { width: 100%; height: 100%; object-fit: cover; }

.rs .rs-compare__img figcaption { position: absolute; left: 47px; top: 35px; text-shadow: 0 1px 8px rgba(0,0,0,.25); font-family: var(--font-head); font-weight: 700; font-size: 30px; line-height: 31px; color: #fff; letter-spacing: .02em; }

.rs .rs-round { position: absolute; top: 184px; width: 60px; height: 60px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }

.rs .rs-round--l { left: -27px; background: var(--gold-circle); }

.rs .rs-round--r { right: -30px; background: var(--teal); }

.rs .rs-round img { width: auto; height: auto; max-width: none; }

.rs .rs-feats { display: flex; margin-top: 30px; }

.rs .rs-feat { display: flex; align-items: flex-start; gap: 32px; }

.rs .rs-feat:nth-child(1) { margin-left: 0; width: 403px; }

.rs .rs-feat:nth-child(2) { width: 408px; }

.rs .rs-feat:nth-child(3) { width: auto; }

.rs .rs-feat > img { flex: none; margin-top: 12px; }

.rs .rs-feat:nth-child(1) > img { margin-top: 12px; }

.rs .rs-feat b { display: block; font-weight: 700; font-size: 18px; line-height: 26px; margin-top: 10px; }

.rs .rs-feat p { margin-top: 12px; font-weight: 300; font-size: 18px; line-height: 26px; }

.rs .rs-feat:nth-child(2) { gap: 30px; }

.rs .rs-feat:nth-child(3) { gap: 25px; }


/* ============ 5. Калькулятор ============ */
.rs .rs-quiz { margin-top: 100px; text-align: center; }

.rs .rs-quiz .rs-h2 { max-width: 1100px; margin: 0 auto; }

.rs .rs-quiz__lead { margin-top: 25px; font-weight: 300; font-size: 24px; line-height: 32px; letter-spacing: .025em; }

.rs .rs-quiz__box { margin-top: 50px; padding: 31px; background: var(--mint); border-radius: 40px; text-align: left; }

.rs .rs-quiz__step { position: relative; height: 53px; background: #fff; border-radius: 15px; overflow: hidden; display: flex; align-items: center; }

.rs .rs-quiz__step i { position: absolute; left: 0; top: 0; bottom: 0; width: 33.33%; background: var(--teal); transition: width .4s ease; }

.rs .rs-quiz__step span { position: relative; margin-left: 33.33%; flex: 1; transition: color .3s; text-align: center; font-weight: 700; font-size: 15px; color: var(--teal); }

.rs .rs-quiz__body { display: flex; gap: 28px; margin-top: 28px; }

.rs .rs-quiz__img { flex: none; width: 357px; height: 584px; border-radius: 20px; object-fit: cover; }

.rs .rs-quiz__form { flex: 1; min-width: 0; display: flex; flex-direction: column; position: relative; }

.rs .rs-quiz__scroll { position: relative; height: 513px; margin-top: -2px; overflow-y: auto; overflow-x: hidden; padding-right: 31px; scrollbar-width: thin; scrollbar-color: var(--teal) #cfdbd9; }

.rs .rs-quiz__scroll::-webkit-scrollbar { width: 6px; }

.rs .rs-quiz__scroll::-webkit-scrollbar-track { background: #cfdbd9; border-radius: 3px; }

.rs .rs-quiz__scroll::-webkit-scrollbar-thumb { background: var(--teal); border-radius: 3px; }

.rs .rs-quiz__pane { display: none; }

.rs .rs-quiz__pane.rs-is-active { display: block; animation: rs-paneIn .35s ease; }

@keyframes rs-paneIn { from { opacity: 0; transform: translateX(14px); } to { opacity: 1; transform: none; } }

.rs .rs-quiz__scroll h3 { font-family: var(--font-head); font-weight: 700; font-size: 30px; line-height: 40px; letter-spacing: 0; max-width: 720px; }

.rs .rs-quiz__scroll h4 { margin-top: 36px; font-family: var(--font-head); font-weight: 700; font-size: 24px; line-height: 30px; color: var(--teal); letter-spacing: 0; }

.rs .rs-q { margin-top: 20px; }

.rs .rs-quiz__scroll h3 + .rs-q { margin-top: 33px; }

.rs .rs-quiz__scroll h4 + .rs-q { margin-top: 18px; }

.rs .rs-q__label { display: block; font-size: 18px; line-height: 22px; margin-bottom: 12px; }

.rs .rs-q__row { display: flex; gap: 20px; }

.rs .rs-q__opt { flex: 1; height: 71px; border-radius: 14px; background: #fff; font-weight: 300; font-size: 15px; color: var(--dark); }

.rs .rs-q__opt.rs-is-active { background: var(--teal); color: #fff; font-weight: 500; }

.rs .rs-q__input { width: 100%; height: 71px; border: 0; border-radius: 14px; background: #fff; padding: 0 37px; font: 300 15px var(--font-body); letter-spacing: .02em; color: var(--dark); outline: none; }

.rs .rs-q__input::placeholder { color: var(--placeholder); opacity: 1; }

.rs .rs-q__input:focus { box-shadow: 0 0 0 2px var(--teal); }

.rs .rs-q + .rs-q { margin-top: 20px; }

.rs .rs-quiz__scroll h4 + .rs-q + .rs-q { margin-top: 24px; }

.rs .rs-quiz__nav { margin-top: auto; padding-right: 31px; display: flex; align-items: center; justify-content: flex-end; gap: 18px; height: 71px; }

.rs .rs-quiz__count { font-weight: 300; font-size: 36px; line-height: 40px; margin-right: 4px; }

.rs .rs-quiz__count small { font-size: 26px; color: var(--placeholder); opacity: .7; }

.rs .rs-btn-back,.rs .rs-btn-next { height: 71px; border-radius: 14px; display: flex; align-items: center; justify-content: center; gap: 12px; font-weight: 500; font-size: 18px; color: #fff; width: 156px; }

.rs .rs-btn-back { background: #cfdbd9; }

.rs .rs-btn-back img { transform: scaleX(-1); }

.rs .rs-btn-next { background: var(--rust-btn); }

.rs .rs-btn-next { gap: 13px; }


/* ============ 6. Планировка ============ */
.rs .rs-plan {
  position: relative; margin-top: 89px; height: 782px; border-radius: 30px; overflow: hidden; color: #fff; padding: 51px 63px 0 65px;
  background:
    linear-gradient(290deg, rgba(0,0,0,.3) 0, rgba(0,0,0,0) 100%),
    radial-gradient(ellipse 85% 70% at 50% 48%, rgba(0,0,0,.28) 0%, rgba(0,0,0,0) 100%),
    url(img/plan.jpg) center / cover no-repeat;
}

.rs .rs-plan .rs-grad-title { max-width: 820px; line-height: 63px; }

.rs .rs-plan__lead { margin-top: 17px; font-weight: 500; font-size: 24px; line-height: 36px; max-width: 730px; }

.rs .rs-plan__list { position: absolute; left: 727px; top: 513px; }

.rs .rs-plan__list b { display: block; font-family: var(--font-body); font-weight: 400; font-size: 24px; line-height: 30px; color: var(--teal-light); margin-bottom: 11px; }

.rs .rs-plan__list .rs-checks li { margin-bottom: 9px; }


/* ============ 7. Интерьер с душой ============ */
.rs .rs-soul { margin-top: 81px; }

.rs .rs-soul .rs-h2 { line-height: 50px; }

.rs .rs-soul__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin-top: 25px; }

.rs .rs-soul__card { position: relative; height: 330px; border-radius: 30px; overflow: hidden; display: flex; align-items: flex-end; padding: 0 33px 31px; isolation: isolate; cursor: pointer; }

.rs .rs-soul__card::before { content: ''; position: absolute; inset: 0; z-index: -2; background: var(--bg) center / cover no-repeat; transition: transform .7s cubic-bezier(.2,.7,.2,1); }

.rs .rs-soul__card::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 242px; z-index: -1; background: linear-gradient(0deg, rgba(0,0,0,.6) 0, rgba(0,0,0,0) 100%); transition: opacity .4s, height .4s; }

.rs .rs-soul__card span {
  font-family: var(--font-head); font-weight: 700; font-size: 24px; line-height: 29px; letter-spacing: 0;
  background: linear-gradient(180deg, var(--teal-light) 0%, var(--teal-light) 40%, var(--sand) 70%, var(--sand) 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent;
}


/* ============ 8. 60 дней ============ */
.rs .rs-days { margin-top: 107px; display: flex; gap: 30px; align-items: flex-start; }

.rs .rs-days__img { flex: none; width: 581px; height: 379px; border-radius: 30px; object-fit: cover; }

.rs .rs-days__text { margin-left: 0; padding-top: 0; }

.rs .rs-days__text .rs-h2:first-child { line-height: 44px; margin-top: -4px; }

.rs .rs-days__text p { margin-top: 20px; font-weight: 300; font-size: 24px; line-height: 32px; letter-spacing: .01em; max-width: 575px; }

.rs .rs-days__text .rs-h2:nth-of-type(2) { margin-top: 48px; }

.rs .rs-days__text .rs-h2 + p { margin-top: 20px; }

.rs .rs-days__text p + .rs-h2 { margin-top: 46px; }


/* ============ 10. Под ключ ============ */
.rs .rs-turnkey {
  position: relative; margin-top: 105px; height: 608px; border-radius: 30px; overflow: hidden; padding: 61px 0 0 64px;
  background:
    linear-gradient(180deg, rgba(0,0,0,.5) 0, rgba(0,0,0,0) 100%) top / 100% 317px no-repeat,
    url(img/turnkey.jpg) center / cover no-repeat;
}

.rs .rs-turnkey .rs-btn-scan { position: absolute; left: 72px; top: 436px; width: 448px; height: 105px; padding-left: 34px; gap: 28px; font-weight: 500; font-size: 18px; line-height: 26px; }


/* ============ 9. С чего начинается ============ */
.rs .rs-steps { margin-top: 90px; }

.rs .rs-steps > .rs-h2 { line-height: 50px; margin-top: -5px; }

.rs .rs-steps__block { position: relative; }

.rs .rs-steps__block--prep { margin-top: 29px; height: 515px; }

.rs .rs-steps__block--main { margin-top: 43px; height: 618px; }

.rs .rs-steps__panel { position: absolute; top: 0; height: 100%; width: 768px; border-radius: 30px; color: #fff; }

.rs .rs-steps__block--prep .rs-steps__panel { left: 0; background: var(--teal); padding: 35px 54px 0; }

.rs .rs-steps__block--main .rs-steps__panel { right: 0; background: var(--gold); padding: 34px 54px 0 188px; }

.rs .rs-steps__panel h3 { font-family: var(--font-head); font-weight: 700; font-size: 24px; line-height: 28px; letter-spacing: 0; }

.rs .rs-steps__img { position: absolute; border-radius: 30px; object-fit: cover; z-index: 1; }

.rs .rs-steps__block--prep .rs-steps__img { right: 0; top: 39px; width: 581px; height: 411px; }

.rs .rs-steps__block--main .rs-steps__img { left: 0; top: 37px; width: 581px; height: 413px; }

.rs .rs-steps__panel ol { width: 527px; }

.rs .rs-steps__panel li p { max-width: 455px; }

.rs .rs-steps__panel li { position: relative; padding-left: 67px; font-weight: 300; font-size: 18px; line-height: 26px; letter-spacing: .025em; }

.rs .rs-num { position: absolute; left: 0; top: -3px; font-family: var(--font-num); font-weight: 300; font-size: 68px; line-height: 74px; color: var(--sand); letter-spacing: 0; font-variant-numeric: lining-nums; }

.rs .rs-steps__block--prep ol { margin-top: 35px; }

.rs .rs-steps__block--prep li { border-bottom: 1px solid rgba(255,255,255,.3); }

.rs .rs-steps__block--prep li:nth-child(1) { padding-bottom: 30px; }

.rs .rs-steps__block--prep li:nth-child(2) { padding-top: 36px; padding-bottom: 32px; }

.rs .rs-steps__block--prep li:nth-child(3) { padding-top: 26px; border-bottom: 0; }

.rs .rs-steps__block--main .rs-steps__panel { padding-left: 188px; }

.rs .rs-steps__block--main ol { margin-top: 34px; }

.rs .rs-steps__block--main li { padding-left: 68px; border-bottom: 1px solid rgba(255,255,255,.3); max-width: 526px; margin-left: 0; }

.rs .rs-steps__block--main li:nth-child(1) { padding-bottom: 33px; }

.rs .rs-steps__block--main li:nth-child(2) { padding-top: 33px; padding-bottom: 43px; }

.rs .rs-steps__block--main li:nth-child(3) { padding-top: 27px; border-bottom: 0; }

.rs .rs-doc-link { display: inline-flex; align-items: center; gap: 15px; margin-top: 17px; font-weight: 600; font-size: 18px; line-height: 22px; color: var(--sand); text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px; }


/* ============ 11. Отзывы ============ */
.rs .rs-reviews { margin-top: 80px; }

.rs .rs-reviews__head { display: flex; align-items: flex-start; }

.rs .rs-reviews__head .rs-h2 { line-height: 30px; margin-top: -2px; }

.rs .rs-reviews__head .rs-link-teal { margin-left: auto; margin-right: 38px; margin-top: 7px; }

.rs .rs-reviews__head .rs-arrows { margin-top: -2px; margin-right: -1px; }

.rs .rs-reviews__track { margin-top: 29px; gap: 0; }

.rs .rs-review { position: relative; flex: 0 0 100%; height: 448px; }

.rs .rs-review::before,.rs .rs-review::after { content: ''; position: absolute; border-radius: 30px; border: 1px solid; pointer-events: none; }

.rs .rs-review::before { left: 0; right: 0; top: 10px; bottom: 10px; border-color: var(--gold); }

.rs .rs-review::after { left: 10px; right: 10px; top: 0; bottom: 0; border-color: var(--teal); }

.rs .rs-review__quote { position: absolute; left: 61px; top: 56px; display: flex; gap: 10px; z-index: 1; }

.rs .rs-review__quote img:first-child { margin-top: 5px; }

.rs .rs-review__quote img { width: 33px; height: 70px; }

.rs .rs-review__quote img + img { margin-left: -2px; }

.rs .rs-review__body { position: absolute; left: 180px; top: 57px; width: 940px; font-weight: 300; font-size: 18px; line-height: 26px; letter-spacing: .02em; }

.rs .rs-review__body h3 { font-family: var(--font-head); font-weight: 400; font-size: 30px; line-height: 33px; }

.rs .rs-review__stars { margin-top: 8px; }

.rs .rs-review__body p { margin-top: 18px; }

.rs .rs-review__stars + p { margin-top: 24px; }

.rs .rs-review__body .rs-link-teal { margin-top: 21px; }


/* ============ 12. Вопросы ============ */
.rs .rs-faq { margin-top: 81px; }

.rs .rs-faq .rs-h2 { line-height: 50px; color: var(--dark); }

.rs .rs-faq__list { margin-top: 21px; border-top: 1px solid var(--mint); }

.rs .rs-faq__item { border-bottom: 1px solid var(--mint); position: relative; }

.rs .rs-faq__q {
  position: static; display: block; width: 100%; text-align: left; padding: 36px 90px 36px 0;
  font-family: var(--font-head); font-weight: 400; font-size: 30px; line-height: 32px; letter-spacing: 0; color: var(--dark);
}

.rs .rs-faq__q::after { content: ''; position: absolute; right: 0; top: 50%; width: 33px; height: 33px; margin-top: -16px; background: url(icons/plus.png) center / contain no-repeat; }

.rs .rs-faq__a { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s ease; font-weight: 300; font-size: 18px; line-height: 24px; letter-spacing: .005em; color: var(--dark); }

.rs .rs-faq__a-in { overflow: hidden; min-height: 0; }

.rs .rs-faq__item--extra { display: none; }

.rs .rs-faq__item--extra.rs-is-shown { display: block; animation: rs-paneIn .4s ease; }

.rs .rs-faq__item.rs-is-open .rs-faq__q { color: var(--rust); padding: 29px 0 18px; max-width: 950px; line-height: 38px; letter-spacing: -.012em; }

.rs .rs-faq__item.rs-is-open .rs-faq__q::after { background-image: url(icons/minus.png); top: 58px; height: 5px; margin-top: 0; right: 0; }

.rs .rs-faq__item.rs-is-open .rs-faq__a { grid-template-rows: 1fr; }

.rs .rs-faq__a-pad { padding-bottom: 40px; max-width: 1065px; }

.rs .rs-faq__a p { margin-bottom: 7px; font-size: 18px; letter-spacing: .008em; }

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

.rs .rs-faq__a ol { margin: 0 0 7px; counter-reset: n; }

.rs .rs-faq__a li { padding-left: 35px; position: relative; font-size: 18px; letter-spacing: .008em; line-height: 38px; font-weight: 300; }

.rs .rs-faq__a li b { font-weight: 600; color: #000; }

.rs .rs-faq__a li::before { counter-increment: n; content: counter(n) '.'; position: absolute; left: 0; font-weight: 600; color: #000; }

.rs .rs-faq .rs-link-teal--center { margin-top: 46px; }


/* ============ 13. Контакты ============ */
.rs .rs-contact { margin-top: 77px; height: 449px; background: var(--mint); border-radius: 40px; padding: 50px 46px 0; text-align: center; }

.rs .rs-contact .rs-h2 { line-height: 50px; }

.rs .rs-contact__btns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin-top: 30px; }

.rs .rs-contact__btns a { height: 80px; background: #fff; border-radius: 16px; display: flex; align-items: center; justify-content: flex-start; gap: 16px; padding-left: 40px; font-weight: 600; font-size: 18px; letter-spacing: .01em; }

.rs .rs-contact__btns a:nth-child(2) { padding-left: 45px; gap: 14px; }

.rs .rs-contact__btns a:nth-child(3) { padding-left: 42px; gap: 14px; }

.rs .rs-contact__or { margin-top: 29px; font-weight: 300; font-size: 18px; line-height: 22px; }

.rs .rs-contact__call { display: flex; justify-content: center; align-items: flex-start; gap: 49px; margin-top: 24px; padding-left: 36px; }

.rs .rs-contact__phone { font-family: var(--font-head); font-weight: 700; font-size: 42px; line-height: 40px; color: var(--rust); letter-spacing: .074em; border-bottom: 1px solid var(--rust); }

.rs .rs-contact__back { font-family: var(--font-head); font-weight: 700; font-size: 30px; line-height: 38px; letter-spacing: .075em; border-bottom: 1px solid var(--dark); margin-top: 1px; }


/* ============ Подвал ============ */
.rs .rs-footer { padding-bottom: 24px; }

.rs .rs-footer__top { display: flex; align-items: center; margin-top: 40px; height: 77px; }

.rs .rs-footer .rs-logo { width: 330px; gap: 31px; }

.rs .rs-footer__actions { display: flex; gap: 50px; margin-left: 72px; }

.rs .rs-footer__actions a { gap: 17px; }

.rs .rs-footer__nav { display: flex; margin-top: 34px; padding-top: 22px; border-top: 1px solid var(--line); height: 153px; border-bottom: 1px solid var(--line); }

.rs .rs-footer__nav ul { margin-right: 0; }

.rs .rs-footer__nav ul:nth-child(1) { width: 217px; }

.rs .rs-footer__nav ul:nth-child(2) { width: 228px; }

.rs .rs-footer__nav ul:nth-child(3) { width: 314px; }

.rs .rs-footer__nav li { color: var(--grey); font-size: 18px; line-height: 33.5px; }

.rs .rs-footer__copy { margin-top: 20px; text-align: center; color: var(--grey); font-size: 18px; line-height: 22px; }


/* ============ Hover / focus / состояния ============ */
.rs a,.rs button { transition: color .25s ease, background-color .25s ease, border-color .25s ease, opacity .25s ease, transform .25s ease, box-shadow .25s ease, filter .25s ease; }

.rs :focus-visible { outline: 2px solid var(--rust); outline-offset: 3px; }

.rs button:disabled { cursor: default; }


/* хедер */
.rs .rs-btn-pdf:active,.rs .rs-btn-scan:active,.rs .rs-btn-teal:active { transform: translateY(0); box-shadow: none; }

.rs .rs-nav__list a,.rs .rs-nav__actions a,.rs .rs-footer__actions a { position: relative; }

.rs .rs-nav__list a::after,.rs .rs-nav__actions a::after,.rs .rs-footer__actions a::after { content: ''; position: absolute; left: 0; right: 0; bottom: -4px; height: 1px; background: var(--rust); transform: scaleX(0); transform-origin: left; transition: transform .3s ease; }

.rs .rs-nav__list a img { transition: transform .3s ease; }

.rs .rs-nav__actions img,.rs .rs-footer__actions img { transition: transform .25s ease; }


/* кнопки и ссылки */
.rs .rs-play { transition: transform .3s ease, background-color .3s ease, box-shadow .3s ease; }

.rs .rs-arrows button:disabled { opacity: .3; }

.rs .rs-round { transition: transform .25s ease, opacity .25s ease, background-color .25s ease; }

.rs .rs-round:disabled { opacity: .35; }

.rs .rs-project { transition: box-shadow .35s ease; }

.rs .rs-compare__img img { transition: transform .7s cubic-bezier(.2,.7,.2,1); }

.rs .rs-days__img,.rs .rs-steps__img { transition: transform .5s ease, box-shadow .5s ease; }

.rs .rs-feat > img { transition: transform .3s ease; }


/* блоки «Интерьер с душой» */
.rs .rs-soul__card span { transition: transform .4s ease; }

.rs .rs-soul__card { transition: box-shadow .4s ease; }


/* анкета */
.rs .rs-q__opt { transition: background-color .25s, color .25s, transform .25s, box-shadow .25s; cursor: pointer; }

.rs .rs-q__input { transition: box-shadow .25s; }

.rs .rs-q__input:focus { box-shadow: 0 0 0 2px var(--teal); }

.rs .rs-is-error { box-shadow: 0 0 0 2px #d33 !important; animation: rs-shake .35s; }

@keyframes rs-shake { 25% { transform: translateX(-5px); } 75% { transform: translateX(5px); } }

.rs .rs-btn-next:active { transform: none; }

.rs .rs-btn-back:disabled { opacity: .6; }

.rs .rs-btn-next img,.rs .rs-btn-back img { transition: transform .25s; }

.rs .rs-q__row--3 .rs-q__opt { padding: 0 8px; }

.rs .rs-q__check { display: flex; align-items: center; gap: 12px; margin-top: 24px; font-weight: 300; font-size: 15px; cursor: pointer; }

.rs .rs-q__check input { width: 22px; height: 22px; accent-color: var(--teal); flex: none; }

.rs .rs-q__check.rs-is-error { border-radius: 8px; }

.rs .rs-quiz__done { padding-top: 60px; }

.rs .rs-quiz__done h3 { margin-bottom: 18px; }

.rs .rs-quiz__done p { font-weight: 300; margin-bottom: 28px; max-width: 520px; }

.rs .rs-quiz__done .rs-btn-next { width: auto; padding: 0 32px; }


/* вопросы */
.rs .rs-faq__q { cursor: pointer; transition: color .25s, padding .3s; }

.rs .rs-faq__q::after { transition: transform .35s ease; }


/* контакты */

/* подвал */
.rs .rs-footer__nav a { position: relative; transition: color .25s, padding .25s; }

.rs .rs-footer__copy { transition: color .25s; }


/* модальное окно */
.rs .rs-modal { position: fixed; inset: 0; z-index: 100; background: rgba(30,41,40,.55); display: flex; align-items: center; justify-content: center; padding: 16px; animation: rs-fadeIn .25s ease; }

.rs .rs-modal[hidden] { display: none; }

@keyframes rs-fadeIn { from { opacity: 0; } }

.rs .rs-modal__box { position: relative; width: 100%; max-width: 440px; background: #fff; border-radius: 30px; padding: 44px 40px 40px; animation: rs-paneIn .3s ease; }

.rs .rs-modal__box h3 { font-family: var(--font-head); font-weight: 700; font-size: 30px; line-height: 36px; }

.rs .rs-modal__box p { margin: 10px 0 22px; font-weight: 300; }

.rs .rs-modal__box .rs-q__input { display: block; margin-bottom: 14px; background: var(--mint); }

.rs .rs-modal__close { position: absolute; right: 18px; top: 12px; font-size: 34px; line-height: 1; color: var(--teal); }

.rs .rs-btn-next--wide { width: 100%; margin-top: 6px; }

.rs .rs-modal__done[hidden] { display: none; }

.rs .rs-no-scroll { overflow: hidden; }

@media (prefers-reduced-motion: reduce) {

.rs *,.rs *::before,.rs *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
 
}


/* hover только для устройств с наведением (без «залипания» на тач-экранах) */
@media (hover: hover) {

.rs .rs-logo:hover { opacity: .75; }

.rs .rs-phone:hover { color: var(--rust); }

.rs .rs-link-rust:hover { color: var(--dark); border-color: var(--dark); }

.rs .rs-soc:hover { background: var(--teal); transform: translateY(-3px); box-shadow: 0 8px 18px rgba(138,170,167,.45); }

.rs .rs-soc:hover img { filter: brightness(0) invert(1); }

.rs .rs-soc--wa:hover { background: #6f908d; }

.rs .rs-btn-pdf:hover,.rs .rs-btn-scan:hover,.rs .rs-btn-teal:hover { background: #759593; transform: translateY(-3px); box-shadow: 0 12px 26px rgba(90,125,122,.4); }

.rs .rs-nav__list a:hover,.rs .rs-nav__actions a:hover,.rs .rs-footer__actions a:hover { color: var(--rust); }

.rs .rs-nav__list a:hover::after,.rs .rs-nav__actions a:hover::after,.rs .rs-footer__actions a:hover::after { transform: scaleX(1); }

.rs .rs-nav__list a:hover img { transform: translateY(2px); }

.rs .rs-nav__actions a:hover img,.rs .rs-footer__actions a:hover img { transform: scale(1.1); }

.rs a:hover > .rs-play,.rs .rs-play:hover,.rs .rs-hero__video:hover .rs-play { transform: scale(1.1); background: #d6cba9; box-shadow: 0 10px 28px rgba(0,0,0,.35); }

.rs .rs-hero__video:hover .rs-hero__video-text { color: var(--sand); }

.rs .rs-calc-link:hover,.rs .rs-doc-link:hover { color: #fff; }

.rs .rs-link-teal:hover { color: var(--rust); border-color: var(--rust); }

.rs .rs-arrows button:hover:not(:disabled),.rs .rs-round:hover:not(:disabled) { transform: scale(1.15); }

.rs .rs-round:hover:not(:disabled) { background-color: var(--rust); }

.rs .rs-project:hover { box-shadow: 0 18px 40px rgba(30,41,40,.28); }

.rs .rs-compare__img:hover img { transform: scale(1.05); }

.rs .rs-days__img:hover,.rs .rs-steps__img:hover { transform: scale(1.015); box-shadow: 0 14px 34px rgba(30,41,40,.22); }

.rs .rs-feat:hover > img { transform: translateY(-4px) rotate(-3deg); }

.rs .rs-soul__card:hover::before { transform: scale(1.08); }

.rs .rs-soul__card:hover::after { height: 300px; background: linear-gradient(0deg, rgba(0,0,0,.78) 0, rgba(0,0,0,0) 100%); }

.rs .rs-soul__card:hover span { transform: translateY(-6px); }

.rs .rs-soul__card:hover { box-shadow: 0 18px 38px rgba(30,41,40,.3); }

.rs .rs-q__opt:hover:not(.rs-is-active) { background: #dcebe8; transform: translateY(-2px); box-shadow: 0 6px 14px rgba(138,170,167,.35); }

.rs .rs-q__opt.rs-is-active:hover { background: #759593; }

.rs .rs-q__input:hover { box-shadow: 0 0 0 1px var(--teal); }

.rs .rs-btn-next:hover { background: #7e2f08; transform: translateY(-2px); box-shadow: 0 10px 22px rgba(158,60,15,.4); }

.rs .rs-btn-back:hover:not(:disabled) { background: var(--teal); transform: translateY(-2px); }

.rs .rs-btn-next:hover img { transform: translateX(5px); }

.rs .rs-btn-back:not(:disabled):hover img { transform: scaleX(-1) translateX(5px); }

.rs .rs-faq__q:hover { color: var(--rust); }

.rs .rs-faq__q:hover::after { transform: rotate(90deg); }

.rs .rs-faq__item.rs-is-open .rs-faq__q:hover::after { transform: none; }

.rs .rs-contact__btns a:hover { background: var(--rust); color: #fff; transform: translateY(-3px); box-shadow: 0 12px 26px rgba(161,60,16,.35); }

.rs .rs-contact__btns a:hover img { filter: brightness(0) invert(1); }

.rs .rs-contact__phone:hover { color: var(--dark); border-color: var(--dark); }

.rs .rs-contact__back:hover { color: var(--rust); border-color: var(--rust); }

.rs .rs-footer__nav a:hover { color: var(--rust); padding-left: 6px; }

.rs .rs-footer__copy:hover { color: var(--dark); }

.rs .rs-modal__close:hover { color: var(--rust); transform: rotate(90deg); }


}


/* =====================================================================
   АДАПТИВ
   ≥1238 — макет 1:1 · ≤1237 — резиновая версия · ≤1100 — планшет
   ≤768 — мобильный · ≤420 — маленькие телефоны
   ===================================================================== */
.rs .rs-burger { display: none; }


/* ---------- ≤1237: резиновый десктоп ---------- */
@media (max-width: 1237px) {

.rs .rs-h2 { font-size: clamp(28px, 3.4vw, 42px); line-height: 1.2; }

.rs .rs-grad-title { font-size: clamp(30px, 4.4vw, 54px); line-height: 1.12; }

.rs .rs-header__top { justify-content: space-between; gap: 20px; }

.rs .rs-header__top .rs-logo { width: auto; }

.rs .rs-header__phone,.rs .rs-socials { margin-left: 0; }

.rs .rs-btn-pdf { margin-left: 0; }


  /* hero */
.rs .rs-hero { height: auto; min-height: 640px; padding: 56px 56px 48px; display: grid; grid-template-columns: 1fr auto; grid-template-rows: auto auto 1fr auto auto; column-gap: 30px; }

.rs .rs-hero .rs-grad-title,.rs .rs-hero__lead { grid-column: 1 / -1; max-width: 900px; }

.rs .rs-hero__lead { font-size: clamp(18px, 2vw, 24px); line-height: 1.5; }

.rs .rs-hero__lead br,.rs .rs-plan__lead br,.rs .rs-project__text br,.rs .rs-quiz__lead br,.rs .rs-steps li br,.rs .rs-feat p br,.rs .rs-turnkey .rs-grad-title br,.rs .rs-soul .rs-h2 br,.rs .rs-contact .rs-h2 br,.rs .rs-quiz .rs-h2 br { display: none; }

.rs .rs-hero .rs-checks { position: static; grid-column: 1; grid-row: 4; align-self: end; margin-top: 40px; }

.rs .rs-hero .rs-btn-scan { position: static; grid-column: 1; grid-row: 5; margin-top: 28px; justify-self: start; max-width: 100%; }

.rs .rs-hero__video { position: static; grid-column: 2; grid-row: 4 / 6; align-self: end; width: 240px; }


  /* проекты */
.rs .rs-projects__head p { font-size: clamp(18px, 2vw, 24px); line-height: 1.4; }

.rs .rs-projects__head p br { display: none; }

.rs .rs-project { display: flex; flex-direction: column; height: auto; min-height: 640px; padding: 31px 28px 32px; }

.rs .rs-project .rs-play { position: static; margin: 24px auto; flex: none; }

.rs .rs-project .rs-checks { position: static; margin-top: auto; }

.rs .rs-project .rs-btn-teal { position: static; width: 100%; height: 72px; margin-top: 22px; flex: none; }

.rs .rs-calc-link { position: static; margin: 22px auto 0; }

.rs .rs-project__text { max-width: none; }


  /* результат */
.rs .rs-result__top { height: auto; gap: 30px; align-items: center; }

.rs .rs-result__top .rs-h2 { margin-top: 0; }

.rs .rs-anna { width: auto; max-width: 577px; flex: 1; }

.rs .rs-compare__img { height: auto; aspect-ratio: 581 / 439; }

.rs .rs-round--l { left: 10px; }

.rs .rs-round--r { right: 10px; }

.rs .rs-feats { gap: 24px; }

.rs .rs-feat:nth-child(n) { width: auto; flex: 1; gap: 22px; }

.rs .rs-feat > img { max-width: 56px; }


  /* анкета */
.rs .rs-quiz .rs-h2 { max-width: 920px; }


  /* планировка */
.rs .rs-plan { height: auto; min-height: 640px; display: flex; flex-direction: column; padding: 51px 56px 48px; }

.rs .rs-plan .rs-grad-title { max-width: 820px; }

.rs .rs-plan__lead { font-size: clamp(18px, 2vw, 24px); line-height: 1.5; max-width: min(730px, 100%); }

.rs .rs-plan__list { position: static; margin: auto 40px 0 auto; padding-top: 32px; }


  /* 60 дней */
.rs .rs-days { gap: 30px; }

.rs .rs-days__img { flex: 0 0 48%; width: 48%; height: auto; aspect-ratio: 581 / 379; }

.rs .rs-days__text p { font-size: clamp(18px, 2vw, 24px); line-height: 1.4; }


  /* под ключ */
.rs .rs-turnkey { height: clamp(440px, 52vw, 608px); padding: 56px 0 0 56px; }

.rs .rs-turnkey .rs-grad-title { max-width: 85%; }

.rs .rs-turnkey .rs-btn-scan { top: auto; bottom: 56px; left: 56px; max-width: calc(100% - 112px); }


  /* этапы */
.rs .rs-steps__block { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; height: auto; align-items: stretch; }

.rs .rs-steps__block--prep,.rs .rs-steps__block--main { margin-top: 24px; height: auto; }

.rs .rs-steps__panel { position: static; width: auto; height: auto; padding: 34px 36px 38px; }

.rs .rs-steps__block--main .rs-steps__panel { padding: 34px 36px 38px; }

.rs .rs-steps__block--prep .rs-steps__panel { padding: 34px 36px 38px; }

.rs .rs-steps__panel ol { width: auto; }

.rs .rs-steps__panel li p,.rs .rs-steps__block--main li { max-width: none; }

.rs .rs-steps__block--main li { padding-left: 68px; }

.rs .rs-steps__img { position: static; width: 100% !important; height: 100% !important; min-height: 320px; }

.rs .rs-steps__block--prep .rs-steps__img,.rs .rs-steps__block--main .rs-steps__img { position: static; }

.rs .rs-steps__block--prep .rs-steps__panel { grid-column: 1; }

.rs .rs-steps__block--prep .rs-steps__img { grid-column: 2; grid-row: 1; }


  /* отзывы */
.rs .rs-review { height: auto; display: flex; gap: 36px; padding: 48px 56px 48px 56px; }

.rs .rs-review__quote { position: static; flex: none; }

.rs .rs-review__body { position: static; width: auto; flex: 1; min-width: 0; }


  /* faq */
.rs .rs-faq__q { font-size: clamp(21px, 2.5vw, 30px); line-height: 1.25; }

.rs .rs-faq__item.rs-is-open .rs-faq__q { line-height: 1.25; max-width: 88%; }


  /* контакты, подвал */
.rs .rs-contact { height: auto; padding: 50px 40px 56px; }

.rs .rs-contact__call { flex-wrap: wrap; padding-left: 0; }

.rs .rs-footer .rs-logo { width: auto; max-width: 100%; }

.rs .rs-footer__top { gap: 20px; flex-wrap: wrap; height: auto; }

.rs .rs-footer__actions { margin-left: auto; }

.rs .rs-footer__nav { height: auto; padding-bottom: 22px; display: grid; grid-template-columns: repeat(4, auto); justify-content: space-between; gap: 0 24px; }

.rs .rs-footer__nav ul:nth-child(n) { width: auto; }


}


/* ---------- ≤1100: планшет, меню-бургер ---------- */
@media (max-width: 1100px) {

.rs .rs-container { padding: 0 20px; }

.rs .rs-header { padding-top: 16px; }

.rs .rs-header__top { display: grid; grid-template-columns: 1fr auto auto auto; align-items: center; gap: 14px 22px; height: auto; }

.rs .rs-header__top .rs-logo { grid-column: 1; margin: 0; }

.rs .rs-header__phone { grid-column: 2; align-items: flex-end; margin: 0; width: auto; }

.rs .rs-socials { grid-column: 3; }

.rs .rs-burger { grid-column: 4; display: flex; flex-direction: column; justify-content: center; gap: 6px; width: 52px; height: 52px; border-radius: 14px; background: var(--mint); align-items: center; }

.rs .rs-burger i { display: block; width: 24px; height: 2px; background: var(--dark); border-radius: 2px; transition: transform .3s, opacity .3s; }

.rs .rs-is-menu-open .rs-burger i:nth-child(1) { transform: translateY(8px) rotate(45deg); }

.rs .rs-is-menu-open .rs-burger i:nth-child(2) { opacity: 0; }

.rs .rs-is-menu-open .rs-burger i:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

.rs .rs-header__top .rs-logo,.rs .rs-header__phone,.rs .rs-socials,.rs .rs-burger { grid-row: 1; }

.rs .rs-btn-pdf { grid-column: 1 / -1; grid-row: 2; width: 100%; height: 68px; justify-content: center; padding: 0; }

.rs .rs-nav { display: none; height: auto; margin-top: 16px; padding: 22px 0 6px; border-top: 1px solid var(--line); flex-direction: column; align-items: flex-start; gap: 22px; }

.rs .rs-is-menu-open .rs-nav { display: flex; animation: rs-paneIn .3s ease; }

.rs .rs-nav__list { flex-direction: column; align-items: flex-start; gap: 18px; }

.rs .rs-nav__list li { margin: 0 !important; }

.rs .rs-nav__actions { flex-direction: column; align-items: flex-start; gap: 18px; margin: 0; }

.rs .rs-nav a { font-size: 20px; }

.rs .rs-hero { margin-top: 20px; padding: 44px 36px 40px; grid-template-columns: minmax(0, 1fr); min-height: 0; }

.rs .rs-hero .rs-checks,.rs .rs-hero .rs-btn-scan,.rs .rs-hero__video { grid-column: 1; grid-row: auto; }

.rs .rs-hero .rs-checks { margin-top: 32px; }

.rs .rs-hero__video { margin-top: 32px; align-self: start; display: flex; align-items: center; gap: 18px; width: auto; }

.rs .rs-hero__video-text { margin-top: 0; }

.rs .rs-result__top { flex-direction: column; align-items: flex-start; }

.rs .rs-anna { max-width: none; width: 100%; }

.rs .rs-quiz__body { flex-direction: column; }

.rs .rs-quiz__img { width: 100%; height: 340px; }

.rs .rs-quiz__scroll { height: auto; overflow: visible; padding-right: 0; margin-top: 0; }

.rs .rs-quiz__nav { padding-right: 0; flex-wrap: wrap; margin-top: 24px; justify-content: flex-end; }

.rs .rs-quiz__count { margin-right: auto; }

.rs .rs-days { flex-direction: column; }

.rs .rs-days__img { flex: none; width: 100%; }

.rs .rs-steps__block { grid-template-columns: 1fr; }

.rs .rs-steps__block--prep .rs-steps__img,.rs .rs-steps__block--prep .rs-steps__panel { grid-column: 1; grid-row: auto; }

.rs .rs-steps__block--main .rs-steps__img { order: 2; }

.rs .rs-steps__img { height: auto !important; aspect-ratio: 581 / 411; min-height: 0; }

.rs .rs-footer__top { justify-content: space-between; }

.rs .rs-footer__actions { margin-left: 0; }

.rs .rs-footer__nav { grid-template-columns: repeat(2, 1fr); gap: 0 24px; }


}


/* ---------- ≤900 ---------- */
@media (max-width: 900px) {

.rs .rs-project,.rs .rs-compare__img { flex-basis: 80%; }

.rs .rs-compare__img { flex-basis: 100%; }

.rs .rs-feats { flex-direction: column; gap: 30px; }

.rs .rs-feat:nth-child(n) { flex: none; }

.rs .rs-plan__list { margin: 0; }

.rs .rs-soul__card { height: 280px; }

.rs .rs-contact__btns { grid-template-columns: 1fr; gap: 14px; }

.rs .rs-contact__btns a:nth-child(n) { padding-left: 32px; justify-content: flex-start; }

.rs .rs-review { gap: 24px; padding: 40px 36px; }


}


/* ---------- ≤768: мобильный ---------- */
@media (max-width: 768px) {

.rs { font-size: 16px}

.rs .rs-container { padding: 0 16px; }

.rs .rs-h2 { font-size: clamp(26px, 6.4vw, 32px); }

.rs .rs-grad-title { font-size: clamp(28px, 7.6vw, 38px); }

.rs .rs-header__top { grid-template-columns: minmax(0, 1fr) auto; gap: 12px 14px; }

.rs .rs-header__phone { grid-column: 1; grid-row: 2; align-items: flex-start; }

.rs .rs-socials { grid-column: 2; grid-row: 2; }

.rs .rs-burger { grid-column: 2; grid-row: 1; }

.rs .rs-soc { width: 48px; height: 48px; }

.rs .rs-socials { gap: 8px; }

.rs .rs-soc img { max-width: 24px; }

.rs .rs-btn-pdf { grid-row: 3; height: 64px; }

.rs .rs-logo { font-size: 13px; line-height: 19px; gap: 14px; }

.rs .rs-logo img { width: 50px; height: auto; }

.rs .rs-hero { padding: 36px 22px 28px; border-radius: 24px; }

.rs .rs-hero__lead { font-size: 17px; margin-top: 16px; }

.rs .rs-hero .rs-checks li,.rs .rs-plan .rs-checks li { font-size: 16px; line-height: 24px; padding-left: 40px; }

.rs .rs-btn-scan { width: 100%; height: 88px; padding-left: 20px !important; gap: 16px !important; font-size: 16px !important; line-height: 22px !important; border-radius: 18px; }

.rs .rs-btn-scan img { width: 44px; height: 44px; }

.rs .rs-hero__video { gap: 14px; }

.rs .rs-play--sm { width: 64px; height: 64px; flex: none; }

.rs .rs-play--sm img { width: 26px; height: auto; }

.rs .rs-projects { margin-top: 56px; }

.rs .rs-projects__head { gap: 12px; }

.rs .rs-projects__head p { font-size: 18px; }

.rs .rs-projects__grid { margin-top: 20px; gap: 14px; }

.rs .rs-project { flex-basis: 88%; min-height: 600px; border-radius: 24px; padding: 26px 20px 24px; }

.rs .rs-project h3 { font-size: 24px; line-height: 30px; padding-right: 110px; }

.rs .rs-project__place { right: 20px; top: 28px; font-size: 12px; line-height: 15px; }

.rs .rs-project__text { font-size: 16px; line-height: 22px; }

.rs .rs-project .rs-play { width: 80px; height: 80px; margin: 18px auto; }

.rs .rs-project .rs-play img { width: 32px; height: auto; }

.rs .rs-project .rs-btn-teal { height: 64px; font-size: 16px; text-align: center; }

.rs .rs-calc-link { font-size: 16px; text-align: left; }

.rs .rs-result,.rs .rs-quiz,.rs .rs-soul,.rs .rs-steps,.rs .rs-faq { margin-top: 64px; }

.rs .rs-result { margin-top: 56px; }

.rs .rs-result__top { gap: 20px; height: auto; }

.rs .rs-anna { flex-direction: column; align-items: center; text-align: center; gap: 4px; }

.rs .rs-anna__text { margin: 0; padding-top: 12px; font-size: 20px; line-height: 26px; }

.rs .rs-anna__quote { max-width: none; }

.rs .rs-compare { margin-top: 24px; }

.rs .rs-compare__track { gap: 14px; }

.rs .rs-compare__img { border-radius: 24px; }

.rs .rs-compare__img figcaption { left: 20px; top: 18px; font-size: 22px; }

.rs .rs-round { width: 44px; height: 44px; top: calc(50% - 22px); }

.rs .rs-round img { transform: scale(.7); }

.rs .rs-feats { margin-top: 28px; }

.rs .rs-feat b,.rs .rs-feat p { font-size: 17px; }

.rs .rs-quiz { text-align: left; }

.rs .rs-quiz .rs-h2 { text-align: left; }

.rs .rs-quiz__lead { font-size: 17px; line-height: 1.5; margin-top: 16px; text-align: left; letter-spacing: .01em; }

.rs .rs-quiz__box { margin-top: 28px; padding: 16px; border-radius: 28px; }

.rs .rs-quiz__step { height: auto; min-height: 48px; border-radius: 12px; }

.rs .rs-quiz__step span { font-size: 12px; padding: 8px 10px; line-height: 1.3; }

.rs .rs-quiz__body { gap: 20px; margin-top: 18px; }

.rs .rs-quiz__img { height: 240px; border-radius: 16px; }

.rs .rs-quiz__scroll h3 { font-size: 24px; line-height: 30px; }

.rs .rs-quiz__scroll h4 { font-size: 21px; margin-top: 28px; }

.rs .rs-q__label { font-size: 16px; }

.rs .rs-q__row { flex-direction: column; gap: 10px; }

.rs .rs-q__opt { height: 56px; flex: none; }

.rs .rs-q__input { height: 56px; padding: 0 20px; font-size: 16px; }

.rs .rs-quiz__nav { gap: 10px; height: auto; }

.rs .rs-quiz__count { width: 100%; margin: 0 0 4px; font-size: 30px; }

.rs .rs-btn-back,.rs .rs-btn-next { flex: 1; width: auto; height: 60px; min-width: 0; }

.rs .rs-plan { min-height: 0; padding: 36px 22px 32px; border-radius: 24px; }

.rs .rs-plan__lead { font-size: 17px; margin-top: 16px; }

.rs .rs-plan__list b { font-size: 20px; }

.rs .rs-soul__grid { grid-template-columns: 1fr; gap: 14px; margin-top: 20px; }

.rs .rs-soul__card { height: 240px; border-radius: 24px; padding: 0 20px 22px; }

.rs .rs-soul__card span { font-size: 20px; line-height: 25px; }

.rs .rs-days { margin-top: 64px; gap: 22px; }

.rs .rs-days__img,.rs .rs-turnkey,.rs .rs-steps__panel,.rs .rs-steps__img { border-radius: 24px; }

.rs .rs-days__text p { font-size: 17px; }

.rs .rs-days__text p + .rs-h2 { margin-top: 28px; }

.rs .rs-turnkey { margin-top: 56px; height: auto; min-height: 460px; padding: 32px 22px 0; }

.rs .rs-turnkey .rs-grad-title { max-width: 100%; }

.rs .rs-turnkey .rs-btn-scan { left: 16px; right: 16px; bottom: 16px; width: auto; max-width: none; }

.rs .rs-steps { margin-top: 56px; }

.rs .rs-steps__panel,.rs .rs-steps__block--main .rs-steps__panel,.rs .rs-steps__block--prep .rs-steps__panel { padding: 26px 20px 28px; }

.rs .rs-steps__panel li { padding-left: 52px !important; font-size: 16px; line-height: 24px; }

.rs .rs-num { font-size: 52px; }

.rs .rs-doc-link { font-size: 16px; }

.rs .rs-reviews { margin-top: 56px; }

.rs .rs-reviews__head { flex-wrap: wrap; row-gap: 10px; }

.rs .rs-reviews__head .rs-h2 { flex: 1 1 100%; }

.rs .rs-reviews__head .rs-link-teal { margin: 0; }

.rs .rs-reviews__head .rs-arrows { margin-left: auto; }

.rs .rs-review { flex-direction: column; gap: 12px; padding: 28px 20px 30px; }

.rs .rs-review__quote img { width: 22px; height: auto; }

.rs .rs-review__body { font-size: 16px; line-height: 24px; }

.rs .rs-review__body h3 { font-size: 24px; }

.rs .rs-faq__list { margin-top: 16px; }

.rs .rs-faq__q { padding: 22px 52px 22px 0; font-size: 20px; }

.rs .rs-faq__q::after { width: 24px; height: 24px; margin-top: -12px; }

.rs .rs-faq__item.rs-is-open .rs-faq__q { padding: 22px 52px 12px 0; max-width: none; }

.rs .rs-faq__item.rs-is-open .rs-faq__q::after { top: 33px; height: 4px; }

.rs .rs-faq__a,.rs .rs-faq__a p,.rs .rs-faq__a li { font-size: 16px; }

.rs .rs-faq__a li { line-height: 26px; padding-left: 28px; }

.rs .rs-faq__a-pad { padding-bottom: 24px; }

.rs .rs-faq .rs-link-teal--center { margin-top: 32px; font-size: 21px; }

.rs .rs-contact { margin-top: 56px; padding: 36px 18px 38px; border-radius: 28px; }

.rs .rs-contact__btns { margin-top: 24px; }

.rs .rs-contact__or { margin-top: 24px; }

.rs .rs-contact__call { flex-direction: column; align-items: center; gap: 18px; }

.rs .rs-contact__phone { font-size: 32px; line-height: 38px; letter-spacing: .05em; }

.rs .rs-contact__back { font-size: 21px; letter-spacing: .05em; }

.rs .rs-footer__top { flex-direction: column; align-items: flex-start; gap: 22px; }

.rs .rs-footer__actions { flex-direction: column; gap: 16px; }

.rs .rs-footer .rs-btn-pdf { width: 100%; }

.rs .rs-footer__copy { font-size: 15px; }

.rs .rs-footer { padding-bottom: calc(24px + env(safe-area-inset-bottom)); }

.rs input,.rs select,.rs textarea { font-size: 16px !important; }

.rs .rs-modal__box { padding: 38px 22px 28px; border-radius: 24px; }


}


/* ---------- ≤420 ---------- */
@media (max-width: 420px) {

.rs .rs-soc { width: 42px; height: 42px; }

.rs .rs-socials { gap: 6px; }

.rs .rs-header__top .rs-logo { min-width: 0; }

.rs .rs-phone { font-size: 18px; }

.rs .rs-header__phone .rs-link-rust { font-size: 15px; }

.rs .rs-logo span { font-size: 12px; line-height: 17px; }

.rs .rs-project { flex-basis: 92%; }

.rs .rs-checks li { font-size: 14px; }

.rs .rs-footer__nav { grid-template-columns: 1fr; }

.rs .rs-quiz__count { font-size: 26px; }

.rs .rs-contact__btns a { font-size: 16px; padding-left: 20px !important; }

.rs .rs-contact__phone { font-size: 28px; }


}


/* доводка межстрочных на адаптиве */
@media (max-width: 1237px) {

.rs .rs-soul .rs-h2,.rs .rs-faq .rs-h2,.rs .rs-steps > .rs-h2,.rs .rs-contact .rs-h2,.rs .rs-quiz .rs-h2,.rs .rs-result .rs-h2,.rs .rs-days__text .rs-h2 { line-height: 1.2; }

.rs .rs-plan .rs-grad-title,.rs .rs-turnkey .rs-grad-title,.rs .rs-hero .rs-grad-title { line-height: 1.12; }

.rs .rs-days__text .rs-h2:first-child { line-height: 1.2; margin-top: 0; }


}

@media (max-width: 768px) {

.rs .rs-btn-scan br { display: none; }

.rs .rs-q__input { padding: 0 16px; }

.rs .rs-q__input::placeholder { font-size: 14px; }

.rs .rs-quiz__step span { font-size: 12px; text-align: left; }


}


/* =====================================================================
   МОБИЛЬНАЯ ДОВОДКА: шапка, футер, заголовки
   ===================================================================== */
.rs .rs-header__call { display: none; }

@media (max-width: 1100px) {

.rs .rs-header { position: sticky; top: 0; z-index: 60; background: #fff; margin: 0 -20px; padding: 12px 20px 0; transition: box-shadow .25s; max-height: 100vh; max-height: 100dvh; overflow-y: auto; }

.rs .rs-header.rs-is-stuck,.rs .rs-header.rs-is-menu-open { box-shadow: 0 6px 20px rgba(30,41,40,.1); }

.rs .rs-header.rs-is-menu-open { padding-bottom: 20px; }

.rs .rs-header + .rs-hero { margin-top: 16px; }


}

@media (max-width: 768px) {

.rs .rs-header { margin: 0 -16px; padding: 10px 16px 0; }

.rs .rs-header__top { grid-template-columns: minmax(0, 1fr) auto auto; gap: 14px 10px; align-items: center; }

.rs .rs-header__top .rs-logo { grid-column: 1; grid-row: 1; font-size: 12.5px; line-height: 17px; gap: 12px; }

.rs .rs-header__top .rs-logo span { white-space: nowrap; }

.rs .rs-logo img { width: 44px; }

.rs .rs-header__call { grid-column: 2; grid-row: 1; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 14px; background: var(--mint); color: var(--rust); }

.rs .rs-burger { grid-column: 3; grid-row: 1; width: 48px; height: 48px; }

.rs .rs-header__phone,.rs .rs-socials,.rs .rs-btn-pdf { display: none; }

.rs .rs-is-menu-open .rs-header__phone { display: flex; grid-column: 1 / -1; grid-row: 2; flex-direction: row; align-items: center; justify-content: space-between; width: 100%; }

.rs .rs-is-menu-open .rs-header__phone .rs-phone { margin: 0; font-size: 20px; }

.rs .rs-is-menu-open .rs-header__phone .rs-link-rust { margin: 0; }

.rs .rs-is-menu-open .rs-socials { display: flex; grid-column: 1 / -1; grid-row: 3; gap: 10px; }

.rs .rs-is-menu-open .rs-btn-pdf { display: flex; grid-column: 1 / -1; grid-row: 4; height: 60px; }

.rs .rs-nav { margin-top: 14px; padding-top: 16px; gap: 14px; }

.rs .rs-nav__list,.rs .rs-nav__actions { gap: 4px; width: 100%; }

.rs .rs-nav__list li,.rs .rs-nav__actions a { width: 100%; }

.rs .rs-nav a { display: flex; align-items: center; min-height: 48px; font-size: 19px; border-bottom: 1px solid var(--line); }

.rs .rs-nav__list a { gap: 10px; }

.rs .rs-nav a::after { display: none; }

.rs .rs-soul .rs-h2 { text-align: left; }

.rs .rs-projects__head { flex-wrap: wrap; }

.rs .rs-projects__head p { flex: 1 1 100%; }

.rs .rs-projects__head .rs-arrows { margin: 0 0 0 auto; }

.rs .rs-project .rs-checks li { line-height: 20px; min-height: 27px; padding-top: 3px; margin-bottom: 8px; }

.rs .rs-project .rs-checks li::before { top: 0; }

.rs .rs-hero .rs-checks li,.rs .rs-plan .rs-checks li { line-height: 22px; min-height: 28px; padding-top: 3px; }

.rs .rs-hero .rs-checks li::before,.rs .rs-plan .rs-checks li::before { top: 0; }


  /* подвал */
.rs .rs-footer { padding-top: 8px; }

.rs .rs-footer__top { gap: 18px; margin-top: 36px; }

.rs .rs-footer .rs-logo { gap: 14px; font-size: 13px; }

.rs .rs-footer__actions { flex-direction: row; flex-wrap: wrap; gap: 8px 24px; margin: 0; }

.rs .rs-footer__actions a { min-height: 44px; gap: 12px; }

.rs .rs-footer .rs-btn-pdf { display: flex; height: 60px; }

.rs .rs-footer__nav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; margin-top: 24px; padding-top: 18px; padding-bottom: 10px; }

.rs .rs-footer__nav ul:nth-child(4) { grid-column: 1 / -1; margin-top: 4px; padding-top: 8px; border-top: 1px solid var(--line); }

.rs .rs-footer__nav li { font-size: 15.5px; line-height: 1.3; }

.rs .rs-footer__nav a { display: block; padding: 8px 0; }

.rs .rs-footer__copy { margin-top: 14px; padding-top: 4px; }


}

@media (max-width: 420px) {

.rs .rs-footer__nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.rs .rs-footer__nav li { font-size: 14.5px; }

.rs .rs-header__top .rs-logo { font-size: 11.5px; line-height: 16px; gap: 10px; }

.rs .rs-logo img { width: 40px; }

.rs .rs-header__call,.rs .rs-burger { width: 44px; height: 44px; }


}

@media (max-width: 350px) {

.rs .rs-header__top .rs-logo span { white-space: normal; }


}

@media (max-width: 768px) {

.rs .rs-is-menu-open .rs-header__phone { flex-wrap: wrap; gap: 6px 16px; }

.rs .rs-is-menu-open .rs-header__phone .rs-link-rust { white-space: nowrap; }


}


/* =====================================================================
   ГАЛЕРЕЯ: фото и видео объекта
   ===================================================================== */
.rs .rs-gallery { margin-top: 79px; }

.rs .rs-gallery__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; }

.rs .rs-gallery__title { font-family: var(--font-head); font-weight: 400; font-size: 30px; line-height: 38px; letter-spacing: .02em; max-width: 880px; }

.rs .rs-gallery__title sup { font-size: .6em; line-height: 0; }

.rs .rs-gallery__head .rs-arrows { margin-top: 6px; margin-right: -1px; flex: none; }

.rs .rs-gallery__track { margin-top: 28px; gap: 20px; }

.rs .rs-gallery__item { position: relative; flex: 0 0 calc((100% - 40px) / 3); aspect-ratio: 4 / 3; border-radius: 24px; overflow: hidden; background: var(--mint); cursor: pointer; padding: 0; }

.rs .rs-gallery__item > img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.2,.7,.2,1); }

.rs .rs-gallery__item--video::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,0,0,.45), rgba(0,0,0,0) 55%); pointer-events: none; }

.rs .rs-gallery__item .rs-play { position: absolute; left: 50%; top: 50%; margin: -38px 0 0 -38px; z-index: 1; }

.rs .rs-gallery__cap { position: absolute; left: 22px; bottom: 18px; z-index: 1; color: #fff; font-family: var(--font-head); font-weight: 700; font-size: 22px; }

@media (hover: hover) {

.rs .rs-gallery__item:hover > img { transform: scale(1.07); }


}

@media (max-width: 1100px) {

.rs .rs-gallery__item { flex-basis: calc((100% - 20px) / 2); }
 
}

@media (max-width: 768px) {

.rs .rs-gallery { margin-top: 56px; }

.rs .rs-gallery__title { font-size: 22px; line-height: 28px; }

.rs .rs-gallery__track { gap: 12px; margin-top: 20px; }

.rs .rs-gallery__item { flex-basis: 84%; border-radius: 20px; }

.rs .rs-gallery__head { flex-wrap: wrap; }

.rs .rs-gallery__head .rs-arrows { margin-left: auto; }


}


/* просмотрщик (фото / видео) */
.rs .rs-lb { position: fixed; inset: 0; z-index: 200; background: rgba(20,28,27,.92); display: flex; align-items: center; justify-content: center; padding: 56px 72px; animation: rs-fadeIn .25s ease; }

.rs .rs-lb[hidden] { display: none; }

.rs .rs-lb__stage { max-width: 100%; max-height: 100%; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }

.rs .rs-lb__stage img,.rs .rs-lb__stage video { max-width: 100%; max-height: 100%; border-radius: 14px; background: #000; object-fit: contain; }

.rs .rs-lb__close { position: absolute; top: 14px; right: 18px; width: 48px; height: 48px; font-size: 38px; line-height: 1; color: #fff; z-index: 2; }

.rs .rs-lb__nav { position: absolute; top: 50%; width: 52px; height: 52px; margin-top: -26px; border-radius: 50%; background: rgba(255,255,255,.14); display: flex; align-items: center; justify-content: center; z-index: 2; }

.rs .rs-lb__prev { left: 14px; }

.rs .rs-lb__next { right: 14px; }

.rs .rs-lb__nav:hover,.rs .rs-lb__close:hover { background-color: var(--rust); }

.rs .rs-lb__count { position: absolute; bottom: 16px; left: 0; right: 0; text-align: center; color: rgba(255,255,255,.75); font-size: 15px; }

@media (max-width: 768px) {

.rs .rs-lb { padding: 56px 10px 46px; }

.rs .rs-lb__nav { width: 42px; height: 42px; margin-top: 0; top: auto; bottom: 8px; }

.rs .rs-lb__prev { left: 12px; }

.rs .rs-lb__next { right: 12px; }


}


/* ---- выпадающие списки меню (как на основном сайте) ---- */
.rs .rs-nav__list > li { position: relative; }

.rs .rs-nav__toggle { display: none; }

.rs .rs-nav__sub { position: absolute; left: -22px; top: 100%; min-width: 280px; padding-top: 16px; opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity .3s ease, transform .3s ease, visibility .3s; z-index: 70; }

.rs .rs-nav__sub-box { background: #fff; border-radius: 16px; box-shadow: 0 10px 25px rgba(0,0,0,.1); padding: 10px 0; }

.rs .rs-nav__sub a { display: block; padding: 10px 24px; font-weight: 500; font-size: 16px; line-height: 1.35; white-space: nowrap; }

.rs .rs-nav__sub a::after { display: none !important; }

.rs .rs-nav__sub a:hover { color: var(--rust); background: var(--mint); }

.rs .rs-nav__list a img.rs-nav__chev { transition: transform .3s ease; }

@media (min-width: 1101px) {

.rs .rs-nav__item--sub:focus-within > .rs-nav__sub,.rs .rs-nav__item--sub.rs-is-sub-open > .rs-nav__sub { opacity: 1; visibility: visible; transform: none; }

.rs .rs-nav__item--sub.rs-is-sub-open > a .rs-nav__chev { transform: rotate(180deg); }


}

@media (hover: hover) and (min-width: 1101px) {

.rs .rs-nav__item--sub:hover > .rs-nav__sub { opacity: 1; visibility: visible; transform: none; }

.rs .rs-nav__item--sub:hover > a .rs-nav__chev { transform: rotate(180deg); }


}

@media (max-width: 1100px) {

.rs .rs-nav__list li.rs-nav__item--sub { display: flex; flex-wrap: wrap; align-items: center; }

.rs .rs-nav__item--sub > a { flex: 1; }

.rs .rs-nav__item--sub > a .rs-nav__chev { display: none; }

.rs .rs-nav__toggle { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-bottom: 1px solid var(--line); }

.rs .rs-nav__toggle::before { content: ''; width: 9px; height: 9px; border-right: 2px solid var(--teal); border-bottom: 2px solid var(--teal); transform: rotate(45deg) translateY(-2px); transition: transform .3s; }

.rs .rs-nav__item--sub.rs-is-sub-open > .rs-nav__toggle::before { transform: rotate(225deg); }

.rs .rs-nav__sub { position: static; opacity: 1; visibility: visible; transform: none; padding: 0; min-width: 0; width: 100%; display: none; }

.rs .rs-nav__item--sub.rs-is-sub-open > .rs-nav__sub { display: block; }

.rs .rs-nav__sub-box { box-shadow: none; background: transparent; border-radius: 0; padding: 0 0 6px 14px; }

.rs .rs-nav__sub a { white-space: normal; padding: 12px 8px; font-size: 17px; border-bottom: 1px solid var(--line); min-height: 0; }


}

.rs .rs-review__city { font-family: var(--font-body); font-weight: 300; font-size: 16px; color: var(--teal); margin-left: 10px; letter-spacing: .02em; }

.rs .rs-quiz__done a { color: var(--rust); border-bottom: 1px solid currentColor; }

.rs.rs-footer-wrap { display: flow-root; background: #fff; position: relative; z-index: 1; }

.rs.rs-main { display: flow-root; }

.rs.rs-header-wrap { display: flow-root; }

/* шапка: равномерные промежутки между логотипом, телефоном, соцсетями и кнопкой */
@media (min-width: 1101px) {

.rs .rs-header__top { justify-content: space-between; gap: 20px 40px; }

.rs .rs-header__top .rs-logo { width: auto; flex: none; }

.rs .rs-header__phone,.rs .rs-socials { margin-left: 0; flex: none; }

.rs .rs-socials { gap: 8px; }

.rs .rs-btn-pdf { margin-left: 28px; flex: none; }


}

.rs .rs-footer__nav { height: auto; min-height: 153px; padding-bottom: 24px; }

.rs .rs-footer__nav a { display: inline-block; }

.rs .rs-footer__copy { position: relative; }

@media (min-width: 769px) {

.rs .rs-review { display: flex; gap: 40px; padding: 56px 60px 50px 61px; height: auto; min-height: 448px; }

.rs .rs-review__quote { position: static; flex: none; }

.rs .rs-review__body { position: static; width: auto; flex: 1; min-width: 0; }


}

.rs .rs-soc svg { width: 26px; height: 26px; fill: var(--teal); }

.rs .rs-soc:hover svg { fill: #fff; }

.rs .rs-header { background: #fff; }

.rs.rs-main { background: #fff; overflow-x: clip; }

.rs.rs-header-wrap { background: #fff; }

@media (max-width: 1100px) {

.rs.rs-header-wrap { position: sticky; top: 0; z-index: 60; transition: box-shadow .25s; }

.rs.rs-header-wrap.rs-is-stuck { box-shadow: 0 6px 20px rgba(30,41,40,.1); }

.rs .rs-header { position: static; box-shadow: none !important; }


}

.rs-legacy-hide { display: none !important; }


/* убираем отступ под фиксированную шапку Kraken: новая шапка в потоке */
.header-offset { padding-top: 0 !important; }
