/*
 * РеалЮрКонсалтинг — утверждённая тема 14 «Спокойная премиальность».
 * Подключается глобально ко всему проекту Tilda через код внутри HEAD.
 * Шрифт Golos Text подключается отдельно в head-code.html.
 */

:root {
  --rlc-accent: #3646A8;
  --rlc-accent-hover: #293789;
  --rlc-accent-soft: #EEEAF4;
  --rlc-success: #0E9F6E;
  --rlc-ink: #1D2330;
  --rlc-ink-2: #676472;
  --rlc-muted: #918C98;
  --rlc-bg: #F8F5EF;
  --rlc-surface: #FFFDF8;
  --rlc-border: #E6DED2;
  --rlc-font: 'Golos Text', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  --rlc-shadow: 0 4px 24px rgba(29, 35, 48, .07);
  --rlc-logo-mask: url("data:image/svg+xml;base64,PHN2ZyBpZD0iYjhjNjRiODctNmQ1NC00MjczLTgxNWMtZjI2ZDcyMjE1MTliIiBkYXRhLW5hbWU9ImxvZ28iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9Ijk0LjQzNjk2bW0iIGhlaWdodD0iNjUuODUyODNtbSIgdmlld0JveD0iMCAwIDI2Ny42OTUzMSAxODYuNjY5NDMiPg0KICA8ZGVmcz4NCiAgICA8c3R5bGU+DQogICAgICAuYTNjZThhODYtZTI1MS00Y2VmLTlkYWYtYWNjNDUxNTQ5N2U4IHsNCiAgICAgICAgZmlsbDogIzM2NDZBODsKICAgICAgfQ0KICAgIDwvc3R5bGU+DQogIDwvZGVmcz4NCiAgPHBhdGggY2xhc3M9ImEzY2U4YTg2LWUyNTEtNGNlZi05ZGFmLWFjYzQ1MTU0OTdlOCIgZD0iTTQ4MC45MDUyNywzMzkuNTMwMjdINDQ4LjQzNzVMNDA3LjI3LDI3Ni4zNDkxMnEtMi4zMzM0OS4xMDAzNS00LjE3MDkuMTQ5NDItMS44MzkxMS4wNTEyNi0zLjI3MzQ0LjA0OTgtMS4xNjY3NCwwLTIuNTExMjMtLjA0OTgtMS4zNDU0Ni0uMDQ5MDgtMi43ODA3Ni0uMTQ5NDJ2MzkuMjY0MTZxMCwxMi43NTczMiwyLjUxMTcyLDE1Ljg0NDczLDMuNDA3MjIsNC4zODcyLDEwLjIyNDYxLDQuMzg1NzRoNC43NTM0MnYzLjY4NjUySDM1OS45MTM1N3YtMy42ODY1Mmg0LjU3NDIycTcuNjIyMzIsMCwxMS4wMzE3NC01LjU4MTA1LDEuODgzNzktMy4wODc5LDEuODgzNzktMTQuNjQ5NDJWMjI4LjMxNTQzcTAtMTIuNzU1MTMtMi41MTE3Mi0xNS44NDUyMi0zLjQ5NzMxLTQuMzg0MjgtMTAuNDAzODEtNC4zODUyNWgtNC41NzQyMnYtMy42ODdoNDQuMzA2NjRxMTkuMTkyMzksMCwyOC41MjIsMy4xODlhMjkuNTA0NjQsMjkuNTA0NjQsMCwwLDEsOC41NjU0Myw0LjQ4NDM4LDMzLjc1NzU3LDMzLjc1NzU3LDAsMCwxLDExLjc0OSwxNi4yNDQxNCwzMy4xNTY1NywzMy4xNTY1NywwLDAsMSwxLjc0OSwxMC44NjIzLDM3LjEzMTU5LDM3LjEzMTU5LDAsMCwxLTEuNzkzOTQsMTEuNzA5NDgsMzAuMjc5NjEsMzAuMjc5NjEsMCwwLDEtNS41MTU2Myw5LjkxNTUyLDM0LjcwMywzNC43MDMsMCwwLDEtOS4zNzMsNy43NzM0NCw1MC40NDc0MSw1MC40NDc0MSwwLDAsMS0xMy4yNzM0NCw1LjE4MjEzbDI1LjExMzI4LDM4Ljc2NTE0cTguNjk2NzgsMTMuNDU0NTgsMTQuNzk3ODUsMTcuNzM5MjYsNi4yNzY4Niw0LjM4NTczLDE2LjE0NDUzLDUuNTgxMDVaTTM5NC41MzM2OSwyNzAuMDcwOHExLjcwMjg5LDAsMi45Ni4wNDk4MSwxLjI1NDY0LjA1MTI3LDIuMDYzLjA0OThhNDcuNDc2NTIsNDcuNDc2NTIsMCwwLDAsMTUuMjkyLTIuMjQyMTksMzAuOTMwNjgsMzAuOTMwNjgsMCwwLDAsMTAuOTg3MzEtNi4yMjg1MSwyNS40NjQ4LDI1LjQ2NDgsMCwwLDAsNi41OTE3OS05LjQxNzQ4LDMxLjE5MDA4LDMxLjE5MDA4LDAsMCwwLDIuMTk4MjUtMTEuODA5MDksMzMuNzU4NywzMy43NTg3LDAsMCwwLTEuODgzNzktMTEuNTEwMjUsMjYuNTc5NywyNi41Nzk3LDAsMCwwLTUuMzM2OTItOS4wMTg1NSwyNC4wNDY3LDI0LjA0NjcsMCwwLDAtOC4yNTE0Ni01Ljg3OTg5LDI2LjA4NTE2LDI2LjA4NTE2LDAsMCwwLTEwLjUzODU4LTIuMDkyNzcsNDguNzk5MTEsNDguNzk5MTEsMCwwLDAtNi4wOTkxMi40NDgyNHEtMy40OTczMS40NDktNy45ODI0MiwxLjQ0NTMxWiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTI4OC44NzIwNyAtMjA0LjM5Nzk1KSIvPg0KICA8cGF0aCBjbGFzcz0iYTNjZThhODYtZTI1MS00Y2VmLTlkYWYtYWNjNDUxNTQ5N2U4IiBkPSJNNTQyLjk3MzYzLDIyNC41NTEyN2w2Ljc5Njg4LDQ1Ljk0MTQxaC02Ljc5Njg4YTcxLjM1MTc0LDcxLjM1MTc0LDAsMCwwLTE2LjU1MjczLTE3LjYzOTE2LDg3LjcxNDU3LDg3LjcxNDU3LDAsMCwwLTIyLjI1MjkzLTEyLjA1ODYsMTMyLjk4NzYxLDEzMi45ODc2MSwwLDAsMC0yNy42MjQtNi44NzYsMjMwLjA1NzgsMjMwLjA1NzgsMCwwLDAtMzIuODg2NzItMi4xOTIzOXEtMjkuODE4MzcsMC01Mi44Mzc0MSw2LjYyNy0yMy4wMjE0Nyw2LjYyODQxLTM2LjYxMzc3LDIwLjM3OTM5YTUyLjk5NDExLDUyLjk5NDExLDAsMCwwLTExLjQwMDM5LDE3LjE5MDkyLDU2LjM1Niw1Ni4zNTYsMCwwLDAtMy45NDY3NywyMS41NzUxOXEwLDE4LjIzNzMyLDEyLjkzNTU0LDMxLjc5YTYyLjQ3ODY1LDYyLjQ3ODY1LDAsMCwwLDE2LjU1Mjc0LDEyLjA1ODYsMTE1LjI3MjU2LDExNS4yNzI1NiwwLDAsMCwyMi42OTE0LDguNjY5OTIsMTkwLjAwNzM4LDE5MC4wMDczOCwwLDAsMCwyNy43MzQzOCw1LjI4MTI1LDI2My4yNzE5LDI2My4yNzE5LDAsMCwwLDMxLjI0MjY4LDEuNzkzOTQsMjU2Ljk0OCwyNTYuOTQ4LDAsMCwwLDMxLjc5LTEuNjk0MzMsMTM3LjIwNzgxLDEzNy4yMDc4MSwwLDAsMCwyNC4zMzU5NC01LjE4MTY0LDEzNC42NTkxOSwxMzQuNjU5MTksMCwwLDAsMjEuMTU2MjUtOC43Njk1M3ExMC4xOTUzMi01LjI4MDc2LDIyLjQ3MjY2LTEyLjM1NzQzbDYuNzk2ODcsMS45OTMxN2ExMzkuNDkwMDksMTM5LjQ5MDA5LDAsMCwxLTI0LjExNzE4LDE1LjU0NTksMTU0Ljg2NDE3LDE1NC44NjQxNywwLDAsMS0yOC4wNjI1LDEwLjg2MjMsMjA3LjkwMTgxLDIwNy45MDE4MSwwLDAsMS0zMi43NzczNSw2LjMyODEzLDMzMS43ODc3NCwzMzEuNzg3NzQsMCwwLDEtMzguMDM4MDgsMi4wNDNxLTc0LjEwODY1LDAtMTE0LjQ0NDgzLTI0LjkxNDA2LTMwLjI1NTYyLTE4LjUzNDY2LTMwLjI1NTM3LTQzLjY0ODQ0YTQyLjgxNDc5LDQyLjgxNDc5LDAsMCwxLDcuMjM0ODYtMjMuMzY5MTRxNy4yMzQ4OC0xMS4zMDkzMiwyMi4zNjI4LTIwLjg3NzkzYTEzOC4wNDQxNywxMzguMDQ0MTcsMCwwLDEsMjQuMDA2ODMtMTIuMTA4MzksMjA1Ljg5NDI0LDIwNS44OTQyNCwwLDAsMSwyOS4xNTk2Ny04Ljk2ODc1LDI4MS4xOTk2NywyODEuMTk5NjcsMCwwLDEsMzIuOTk1MTItNS41MzA3NywzMjYuOTA2MzksMzI2LjkwNjM5LDAsMCwxLDM1LjUxODA2LTEuODkzNTUsMjg0LjA5NDQ4LDI4NC4wOTQ0OCwwLDAsMSw2My41ODAwOCw3LjE3NTI5cTkuNjQ0NTMsMi4yOTMyMSwxMy4xNTQzLDIuMTkyMzlhMjMuNzI3MTcsMjMuNzI3MTcsMCwwLDAsMTEuNzI5NDktMi42NDExMiwxNS41MTQ3LDE1LjUxNDcsMCwwLDAsNi42ODc1LTYuNzI2NTZaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjg4Ljg3MjA3IC0yMDQuMzk3OTUpIi8+DQogIDxwYXRoIGNsYXNzPSJhM2NlOGE4Ni1lMjUxLTRjZWYtOWRhZi1hY2M0NTE1NDk3ZTgiIGQ9Ik01MzYuNTk2NjgsMzUzLjY5NzI3bDIuOTYuNjk3MjYtMTAuNDA0MywzNi42NzI4NWgtOTQuMTc0OHYtMy42ODY1Mmg0LjU3NDIycTcuNjIzLDAsMTEuMDMyMjItNS41ODEwNiwxLjg4Mzc5LTMuMDg3ODgsMS44ODM3OS0xNC43NDlWMjc5Ljg1MjU0cTAtMTIuNzU1ODYtMi41MTE3Mi0xNS44NDU3LTMuNDk4LTQuMzg0MjktMTAuNDA0MjktNC4zODQ3N2gtNC41NzQyMnYtMy42ODc1aDU1LjA3MDMxdjMuNjg3NWE1Ni4yMDYxNSw1Ni4yMDYxNSwwLDAsMC04LjIwNy40OTgsMTkuNjkyNDEsMTkuNjkyNDEsMCwwLDAtNS4zODE4NCwxLjQ5NTExLDEwLjM1OTI5LDEwLjM1OTI5LDAsMCwwLTMuMzE4MzUsMi4zNDE4LDEzLjUxNzM4LDEzLjUxNzM4LDAsMCwwLTIuMDE3NTgsMi45Mzk0NXEtMS40MzU1NCwzLjA5MDgyLTEuNDM1NTUsMTUuMjQ4djg0LjkwNjI1cTAsMy40ODkyNi4yMjQ2MSw1Ljk3OTQ5YTE4LjkyNywxOC45MjcsMCwwLDAsLjc2MjY5LDQuMTM1NzUsNy44MDYzNyw3LjgwNjM3LDAsMCwwLDEuNDM0NTgsMi42OTA0Myw2LjA4NTI5LDYuMDg1MjksMCwwLDAsMi4zMzIsMS42NDQ1M3EyLjE1MTg2Ljk5NzU2LDEzLjk5MTIxLjk5NjA5aDguODc5ODhxMTMuOTAxMzcsMCwxOS42NDE2LTIuMjkyYTIxLjg1MzA2LDIxLjg1MzA2LDAsMCwwLDUuMzgxODQtMi45ODkyNiwyNS41OTQsMjUuNTk0LDAsMCwwLDQuODg3NjktNS4wMzMyLDUxLjIyODEzLDUxLjIyODEzLDAsMCwwLDQuNjY0MDctNy42MjNBMTEwLjYwNDI0LDExMC42MDQyNCwwLDAsMCw1MzYuNTk2NjgsMzUzLjY5NzI3WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTI4OC44NzIwNyAtMjA0LjM5Nzk1KSIvPg0KPC9zdmc+DQo=");
}

html { scroll-behavior: smooth; }
body,
.t-body {
  margin: 0;
  color: var(--rlc-ink);
  background: var(--rlc-bg);
  font-family: var(--rlc-font) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body h1,
body h2,
body h3 {
  color: var(--rlc-ink);
  letter-spacing: -.02em;
}

body a:focus-visible,
body button:focus-visible,
body input:focus-visible,
body textarea:focus-visible,
body select:focus-visible {
  outline: 2px solid var(--rlc-accent);
  outline-offset: 2px;
}

/* Глобальная перекраска существующих T123-секций */
body .rlc-hero {
  color: var(--rlc-ink);
  background:
    linear-gradient(color-mix(in srgb, var(--rlc-accent) 6%, transparent) 1px, transparent 1px),
    linear-gradient(90deg, color-mix(in srgb, var(--rlc-accent) 6%, transparent) 1px, transparent 1px),
    linear-gradient(180deg, var(--rlc-accent-soft) 0%, var(--rlc-bg) 72%);
  background-size: 44px 44px, 44px 44px, 100% 100%;
}

body .rlc-srv,
body .rlc-calcsec,
body .rlc-steps,
body .pv-form { background: var(--rlc-bg); color: var(--rlc-ink); }

body .rlc-why,
body .rlc-cases,
body .rlc-foot { background: var(--rlc-accent-soft); color: var(--rlc-ink); }

body .rlc-srv__card,
body .rlc-calc__tariff,
body .rlc-calc__result-actions,
body .rlc-why__card,
body .rlc-steps__item,
body .rlc-cases__card,
body .rlc-cases__review,
body .pv-form input,
body .pv-form textarea {
  color: var(--rlc-ink);
  background: var(--rlc-surface);
  border-color: var(--rlc-border);
}

body .rlc-hero__sub,
body .rlc-srv__card-text,
body .rlc-calcsec__sub,
body .rlc-why__card-text,
body .rlc-why__nums span,
body .rlc-steps__text,
body .rlc-cases__tag,
body .rlc-foot__desc,
body .rlc-foot__addr,
body .pv-form p,
body .rlc-calc__tariff-desc,
body .rlc-calc__zero-name { color: var(--rlc-ink-2); }

body .rlc-head__cta,
body .rlc-hero__cta,
body .rlc-calc__seg-btn.is-active,
body .rlc-calc__cta,
body .rlc-steps__num,
body .pv-form button {
  color: #fff;
  background: var(--rlc-accent);
  border-color: var(--rlc-accent);
}

body .rlc-head__cta:hover,
body .rlc-hero__cta:hover,
body .rlc-calc__cta:hover,
body .pv-form button:hover { background: var(--rlc-accent-hover); }

body .rlc-head__link.is-active,
body .rlc-calc__seg-btn:hover,
body .rlc-cases__all:hover { border-color: var(--rlc-accent); }

body .rlc-srv__card-price,
body .rlc-cases__result,
body .rlc-foot__col a:hover { color: var(--rlc-accent); }

body .rlc-calc__tariff-price,
body .rlc-calc__zero-price { color: var(--rlc-success); }

body .rlc-ico { color: var(--rlc-accent); background: var(--rlc-accent-soft); }

/*
 * Внутренние страницы используют собственные префиксы:
 * service / reg / law / val / price / company / proof / contacts / blog.
 * Специфичность html body нужна, потому что CSS секций находится ниже HEAD.
 */
html body #allrecords,
html body .t-body { background: var(--rlc-bg); }

html body section[class^="rlc-"],
html body main[class^="rlc-"] {
  color: var(--rlc-ink);
  font-family: var(--rlc-font) !important;
}

/* Hero и вводные секции */
html body .rlc-service-hero,
html body .rlc-reg-hero,
html body .rlc-law-hero,
html body .rlc-val-hero,
html body .rlc-foreign-hero,
html body .rlc-price-hero,
html body .rlc-company-hero,
html body .rlc-proof-intro,
html body .rlc-blog-intro,
html body .rlc-contacts-main {
  color: var(--rlc-ink);
  background:
    linear-gradient(color-mix(in srgb, var(--rlc-accent) 6%, transparent) 1px, transparent 1px),
    linear-gradient(90deg, color-mix(in srgb, var(--rlc-accent) 6%, transparent) 1px, transparent 1px),
    linear-gradient(180deg, var(--rlc-accent-soft) 0%, var(--rlc-bg) 76%);
  background-size: 44px 44px, 44px 44px, 100% 100%;
}

html body .rlc-service-hero__lead,
html body .rlc-reg-hero__lead,
html body .rlc-law-hero__lead,
html body .rlc-val-hero__lead,
html body .rlc-foreign-hero__lead,
html body .rlc-company-hero__lead,
html body .rlc-company-profile p,
html body .rlc-transition__lead,
html body .rlc-contacts-details__note,
html body .rlc-price-list__note,
html body .rlc-reg-prices__note,
html body .rlc-val-trust__note,
html body [class^="rlc-"][class$="__note"],
html body [class^="rlc-"][class$="__copy"] { color: var(--rlc-ink-2); }

html body .rlc-service-hero__facts,
html body .rlc-reg-hero__facts,
html body .rlc-law-hero__facts,
html body .rlc-val-hero__facts { color: var(--rlc-ink-2); }

/* Обычные и тонированные секции */
html body .rlc-includes,
html body .rlc-tariffs,
html body .rlc-transition,
html body .rlc-reg-services,
html body .rlc-reg-docs,
html body .rlc-reg-process,
html body .rlc-law-directions,
html body .rlc-law-prices,
html body .rlc-law-cases,
html body .rlc-val-types,
html body .rlc-val-purposes,
html body .rlc-val-trust,
html body .rlc-val-prices,
html body .rlc-val-process,
html body .rlc-foreign-scope,
html body .rlc-foreign-process,
html body .rlc-price-list,
html body .rlc-company-profile,
html body .rlc-company-numbers,
html body .rlc-company-team,
html body .rlc-company-skills,
html body .rlc-company-docs,
html body .rlc-proof-cases,
html body .rlc-proof-reviews,
html body .rlc-contacts-details,
html body .rlc-blog-feedpv,
html body .rlc-map-preview { background: var(--rlc-bg); color: var(--rlc-ink); }

html body .rlc-faq,
html body .rlc-reg-faq,
html body .rlc-law-faq,
html body .rlc-price-faq,
html body .rlc-reg-prices,
html body .rlc-val-purposes,
html body .rlc-company-team,
html body .rlc-proof-reviews,
html body .rlc-foreign-process { background: var(--rlc-accent-soft); }

/* Карточки, FAQ, таблицы и контактные элементы */
html body [class^="rlc-"][class$="__grid"]:not(.rlc-foot__grid):not(.rlc-calc__grid) > article,
html body [class^="rlc-"][class$="__grid"]:not(.rlc-foot__grid):not(.rlc-calc__grid) > div,
html body [class^="rlc-"][class$="__list"] > article,
html body [class^="rlc-"][class$="__list"] > div,
html body .rlc-contacts-main__item,
html body .rlc-company-team__photo,
html body .rlc-map-preview__canvas,
html body .rlc-law-prices__table,
html body .rlc-reg-prices__table,
html body .rlc-val-prices__table,
html body .rlc-price-list__table {
  color: var(--rlc-ink);
  background: var(--rlc-surface);
  border-color: var(--rlc-border);
}

html body .rlc-law-prices__row,
html body .rlc-reg-prices__row,
html body .rlc-val-prices__row,
html body .rlc-price-list__row { border-color: var(--rlc-border); }

html body .rlc-law-prices__row--head,
html body .rlc-reg-prices__row--head,
html body .rlc-val-prices__row--head,
html body .rlc-price-list__row--head { background: var(--rlc-accent-soft); color: var(--rlc-ink); }

html body [class^="rlc-"][class$="__tag"],
html body [class^="rlc-"][class$="__hint"] { color: var(--rlc-muted); }

html body .rlc-contacts-main__primary,
html body .rlc-law-prices__link,
html body .rlc-map-preview__pin { color: var(--rlc-accent); }

html body .rlc-contacts-main__grid > .rlc-contacts-main__primary {
  color: #fff !important;
  background: var(--rlc-accent) !important;
  border-color: var(--rlc-accent) !important;
  box-shadow: var(--rlc-shadow);
}
html body .rlc-contacts-main__primary a {
  color: #fff !important;
}
html body .rlc-contacts-main__primary a:hover {
  color: #fff !important;
  opacity: .82;
}

html body .rlc-calc,
html body .rlc-calc__grid,
html body .rlc-calc__params {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Все CTA внутренних страниц */
html body .rlc-service-hero__cta,
html body .rlc-reg-hero__cta,
html body .rlc-law-hero__cta,
html body .rlc-val-hero__cta,
html body .rlc-foreign-hero__cta,
html body #allrecords .rlc-foreign-hero a[href="#zayavka"],
html body [class^="rlc-"][class$="__cta"] {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background-color: var(--rlc-accent) !important;
  background-image: none !important;
  border-color: var(--rlc-accent) !important;
}

html body .rlc-service-hero__cta:hover,
html body .rlc-reg-hero__cta:hover,
html body .rlc-law-hero__cta:hover,
html body .rlc-val-hero__cta:hover,
html body .rlc-foreign-hero__cta:hover,
html body #allrecords .rlc-foreign-hero a[href="#zayavka"]:hover,
html body [class^="rlc-"][class$="__cta"]:hover {
  background-color: var(--rlc-accent-hover) !important;
  border-color: var(--rlc-accent-hover) !important;
}

/* Нативные блоки Tilda: BF-формы, тексты и кнопки */
html body #allrecords,
html body #allrecords .t-records { font-family: var(--rlc-font) !important; }

html body #allrecords .t-title,
html body #allrecords .t-heading,
html body #allrecords .t-name { color: var(--rlc-ink); font-family: var(--rlc-font) !important; }

html body #allrecords .t-text,
html body #allrecords .t-descr { color: var(--rlc-ink-2); font-family: var(--rlc-font) !important; }

html body #allrecords .t-input,
html body #allrecords .t-select,
html body #allrecords .t-textarea {
  color: var(--rlc-ink) !important;
  background-color: var(--rlc-surface) !important;
  border-color: var(--rlc-border) !important;
  border-radius: 10px !important;
  font-family: var(--rlc-font) !important;
}

html body #allrecords .t-submit {
  color: #fff !important;
  background-color: var(--rlc-accent) !important;
  border-radius: 12px !important;
  font-family: var(--rlc-font) !important;
}

html body #allrecords .t-submit:hover { background-color: var(--rlc-accent-hover) !important; }

/* Мобильная типографика остаётся общей для всех типов страниц */
@media (max-width: 640px) {
  html body section[class^="rlc-"] h1 { font-size: 34px; line-height: 1.12; }
  html body section[class^="rlc-"] h2 { font-size: 28px; line-height: 1.18; }
}

/* Отдельная глобальная страница Header */
body .rlc-head {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 9990;
  color: var(--rlc-ink);
  background: color-mix(in srgb, var(--rlc-surface) 94%, transparent);
  border-bottom: 1px solid var(--rlc-border);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transition: box-shadow .2s;
}

body .rlc-head.is-scrolled { box-shadow: var(--rlc-shadow); }
body .rlc-head *, body .rlc-head *::before, body .rlc-head *::after { box-sizing: border-box; }
body .rlc-head__in { max-width: 1200px; height: 72px; margin: 0 auto; padding: 0 20px; display: flex; align-items: center; gap: 28px; }
body .rlc-head-spacer { height: 72px; }
body .rlc-head__logo { display: inline-flex; align-items: center; gap: 11px; color: var(--rlc-ink); font-size: 19px; font-weight: 700; text-decoration: none; white-space: nowrap; }
/* Tilda may preserve an old image element after replacing the header markup.
   Hide it so its broken-image icon cannot show through the transparent logo mark. */
body .rlc-head__logo > img,
body .rlc-head__logo > picture,
body .rlc-head__logo > object,
body .rlc-head__logo-mark img,
body .rlc-head__logo-mark picture,
body .rlc-head__logo-mark object,
body .rlc-foot__logo > img,
body .rlc-foot__logo > picture,
body .rlc-foot__logo > object,
body .rlc-foot__logo-mark img,
body .rlc-foot__logo-mark picture,
body .rlc-foot__logo-mark object { display: none !important; }
body .rlc-head__logo-mark {
  display: block;
  flex: none;
  width: 48px;
  height: 34px;
  overflow: hidden;
  font-size: 0;
  color: var(--rlc-accent);
  background: none !important;
}
body .rlc-head__logo-mark svg,
body .rlc-foot__logo-mark svg { display: block; width: 100%; height: 100%; fill: currentColor; }
body .rlc-head__nav { display: flex; align-items: center; gap: 22px; }
body .rlc-head__link { padding: 6px 0; color: var(--rlc-ink); border-bottom: 2px solid transparent; font-size: 15px; text-decoration: none; white-space: nowrap; }
body .rlc-head__link:hover, body .rlc-head__phone:hover { color: var(--rlc-accent); }
body .rlc-head__link.is-active { border-bottom-color: var(--rlc-accent); font-weight: 600; }
body .rlc-head__caret { display: inline-block; width: 7px; height: 7px; margin-left: 4px; vertical-align: 2px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
body .rlc-head__item--drop { position: relative; }
body .rlc-head__drop { position: absolute; top: 100%; left: -16px; min-width: 280px; padding: 10px 0; background: var(--rlc-surface); border: 1px solid var(--rlc-border); border-radius: 12px; box-shadow: var(--rlc-shadow); opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .15s, transform .15s, visibility .15s; }
body .rlc-head__item--drop:hover .rlc-head__drop,
body .rlc-head__item--drop.is-open .rlc-head__drop { opacity: 1; visibility: visible; transform: none; }
body .rlc-head__drop a { display: block; padding: 9px 20px; color: var(--rlc-ink); font-size: 14px; text-decoration: none; }
body .rlc-head__drop a:hover { color: var(--rlc-accent); background: var(--rlc-accent-soft); }
body .rlc-head__side { margin-left: auto; display: flex; align-items: center; gap: 18px; }
body .rlc-head__phone { color: var(--rlc-ink); font-size: 15px; font-weight: 600; text-decoration: none; white-space: nowrap; }
body .rlc-head__cta { padding: 11px 20px; border-radius: 12px; font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; }
body .rlc-head__burger { display: none; appearance: none; width: 44px; height: 44px; margin-left: auto; padding: 10px; background: none; border: 0; cursor: pointer; flex-direction: column; justify-content: center; gap: 5px; }
body .rlc-head__burger span { display: block; width: 100%; height: 2px; background: var(--rlc-ink); border-radius: 1px; transition: transform .2s, opacity .2s; }
body .rlc-head__burger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
body .rlc-head__burger.is-open span:nth-child(2) { opacity: 0; }
body .rlc-head__burger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
body .rlc-head__mobile { display: none; position: fixed; top: 72px; right: 0; bottom: 0; left: 0; z-index: 9989; padding: 12px 20px 32px; background: var(--rlc-surface); overflow-y: auto; }
body .rlc-head__mobile.is-open { display: block; }
body .rlc-head__mobile nav { display: flex; flex-direction: column; }
body .rlc-head__mobile nav a { padding: 13px 0; color: var(--rlc-ink); border-bottom: 1px solid var(--rlc-border); font-size: 17px; text-decoration: none; }
body .rlc-head__mgroup { padding: 16px 0 6px; color: var(--rlc-muted); font-size: 13px; font-weight: 700; }
body .rlc-head__mdivider { height: 12px; }
body .rlc-head__mbottom { display: flex; flex-direction: column; gap: 16px; margin-top: 24px; }
body .rlc-head__mbottom .rlc-head__cta { padding: 15px 20px; text-align: center; }

/* Отдельная глобальная страница Footer */
body .rlc-foot { padding: 64px 20px 30px; border-top: 1px solid var(--rlc-border); }
body .rlc-foot *, body .rlc-foot *::before, body .rlc-foot *::after { box-sizing: border-box; }
body .rlc-foot__in { max-width: 1160px; margin: 0 auto; }
body .rlc-foot__grid { display: grid; grid-template-columns: 1.45fr 1fr 1fr 1.08fr; gap: 48px; margin-bottom: 48px; }
html body .rlc-foot__grid > .rlc-foot__col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  margin: 0;
  padding: 0;
  color: var(--rlc-ink);
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body .rlc-foot__logo { display: flex; align-items: center; gap: 10px; color: var(--rlc-ink); font-size: 18px; font-weight: 700; }
body .rlc-foot__logo-mark {
  display: block;
  flex: none;
  width: 40px;
  height: 30px;
  overflow: hidden;
  font-size: 0;
  color: var(--rlc-accent);
  background: none !important;
}
body .rlc-foot__desc { max-width: 260px; margin: 0; font-size: 14px; line-height: 1.55; }
body .rlc-foot__head { margin-bottom: 6px; color: var(--rlc-muted); font-size: 13px; font-weight: 700; }
body .rlc-foot__col a { color: var(--rlc-ink); font-size: 14px; line-height: 1.5; text-decoration: none; }
body .rlc-foot__msgrs { display: flex; gap: 14px; }
body .rlc-foot__addr { font-size: 14px; line-height: 1.5; }
body .rlc-foot__bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 28px; padding-top: 24px; color: var(--rlc-muted); border-top: 1px solid var(--rlc-border); font-size: 13px; }
body .rlc-foot__bottom a { color: var(--rlc-muted); text-decoration: underline; }

@media (max-width: 1080px) {
  body .rlc-head__nav, body .rlc-head__side { display: none; }
  body .rlc-head__burger { display: flex; }
}

@media (max-width: 900px) {
  body .rlc-foot__grid { grid-template-columns: 1fr 1fr; gap: 36px 48px; }
  body .rlc-foot__bottom { justify-content: flex-start; }
}

@media (max-width: 540px) {
  body .rlc-foot { padding: 44px 20px 24px; }
  body .rlc-foot__grid { grid-template-columns: 1fr; gap: 30px; margin-bottom: 36px; }
  body .rlc-foot__bottom { align-items: flex-start; flex-direction: column; padding-top: 20px; }
}

/* Motion system: quiet, short and shared by every Tilda page. */
html.rlc-motion .rlc-reveal {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
  transition:
    opacity 1.05s cubic-bezier(.16, 1, .3, 1),
    transform 1.05s cubic-bezier(.16, 1, .3, 1);
  transition-delay: var(--rlc-motion-delay, 0ms);
  will-change: opacity, transform;
}
html.rlc-motion .rlc-reveal.rlc-reveal--soft {
  transform: translate3d(0, 14px, 0);
}
html.rlc-motion .rlc-reveal.is-in {
  opacity: 1;
  transform: translate3d(0, var(--rlc-motion-y, 0px), 0);
  will-change: auto;
}

@media (hover: hover) and (pointer: fine) {
  body .rlc-head__cta,
  body .rlc-hero__cta,
  body .rlc-calc__cta,
  body .pv-form button,
  html body [class^="rlc-"][class$="__cta"] {
    transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .25s ease, transform .25s cubic-bezier(.22, 1, .36, 1);
  }
  body .rlc-head__cta:hover,
  body .rlc-hero__cta:hover,
  body .rlc-calc__cta:hover,
  body .pv-form button:hover,
  html body [class^="rlc-"][class$="__cta"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(54, 70, 168, .18);
  }
  body .rlc-why__card,
  body .rlc-steps__item,
  body .rlc-cases__card,
  body .rlc-cases__review,
  body .rlc-calc__tariff,
  html body .rlc-contacts-main__item,
  html body .rlc-tariffs__grid > article {
    transition: border-color .3s ease, box-shadow .38s ease, transform .38s cubic-bezier(.16, 1, .3, 1);
  }
  body .rlc-why__card:hover,
  body .rlc-steps__item:hover,
  body .rlc-cases__card:hover,
  body .rlc-cases__review:hover,
  body .rlc-calc__tariff:hover,
  html body .rlc-contacts-main__item:hover,
  html body .rlc-tariffs__grid > article:hover {
    --rlc-motion-y: -4px;
    transform: translateY(-4px);
    border-color: color-mix(in srgb, var(--rlc-accent) 28%, var(--rlc-border));
    box-shadow: 0 14px 34px rgba(29, 35, 48, .09);
  }
  html body section[class^="rlc-"] [class$="__grid"]:not(.rlc-calc__grid):not(.rlc-srv__grid) > * {
    transition: border-color .3s ease, box-shadow .38s ease, transform .38s cubic-bezier(.16, 1, .3, 1);
  }
  html body section[class^="rlc-"] [class$="__grid"]:not(.rlc-calc__grid):not(.rlc-srv__grid) > *:hover {
    --rlc-motion-y: -2px;
    transform: translateY(-2px);
    border-color: color-mix(in srgb, var(--rlc-accent) 28%, var(--rlc-border));
    box-shadow: 0 14px 34px rgba(29, 35, 48, .09);
  }
  body .rlc-foot__col a,
  html body [class^="rlc-"] a:not([class$="__cta"]) {
    transition: color .18s ease, opacity .18s ease;
  }
}

/* Native Tilda cookie consent (T972): theme 14. */
html body .t972,
html body .t972 button,
html body .t972 input {
  font-family: var(--rlc-font) !important;
}

html body .t972 *,
html body .t972 *::before,
html body .t972 *::after {
  box-sizing: border-box;
}

html body .t972__banner {
  right: 24px !important;
  bottom: 24px !important;
  width: min(580px, calc(100vw - 48px)) !important;
  max-width: none !important;
  padding: 24px !important;
  color: var(--rlc-ink) !important;
  background: var(--rlc-surface) !important;
  border: 1px solid var(--rlc-border) !important;
  border-radius: 16px !important;
  box-shadow: 0 16px 48px rgba(29, 35, 48, .14) !important;
}

html body .t972__title,
html body .t972__settings-title,
html body .t972__category-title {
  color: var(--rlc-ink) !important;
  font-family: var(--rlc-font) !important;
  letter-spacing: -.015em;
}

html body .t972__title {
  margin-bottom: 8px !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

html body .t972__text,
html body .t972__settings-text,
html body .t972__category-body,
html body .t972__toggle-txt {
  color: var(--rlc-ink-2) !important;
  font-family: var(--rlc-font) !important;
}

html body .t972__text {
  max-width: 62ch;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

html body .t972__text a {
  color: var(--rlc-accent) !important;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

html body .t972__text a:hover {
  color: var(--rlc-accent-hover) !important;
}

html body .t972__buttons {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: flex-start !important;
  gap: 10px !important;
  margin-top: 18px !important;
}

html body .t972 :is(.t972__accept-btn, .t972__reject-btn, .t972__settings-btn, .t972__confirm-btn) {
  min-width: 0 !important;
  min-height: 44px !important;
  height: 44px !important;
  padding: 0 18px !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  font-family: var(--rlc-font) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .22s cubic-bezier(.22, 1, .36, 1) !important;
}

html body .t972 :is(.t972__accept-btn, .t972__confirm-btn) {
  color: #fff !important;
  background: var(--rlc-accent) !important;
  border: 1px solid var(--rlc-accent) !important;
}

html body .t972 :is(.t972__reject-btn, .t972__settings-btn) {
  color: var(--rlc-ink) !important;
  background: transparent !important;
  border: 1px solid var(--rlc-border) !important;
}

html body .t972 :is(.t972__accept-btn, .t972__confirm-btn):hover {
  background: var(--rlc-accent-hover) !important;
  border-color: var(--rlc-accent-hover) !important;
  transform: translateY(-1px);
}

html body .t972 :is(.t972__reject-btn, .t972__settings-btn):hover {
  color: var(--rlc-accent) !important;
  background: var(--rlc-accent-soft) !important;
  border-color: color-mix(in srgb, var(--rlc-accent) 30%, var(--rlc-border)) !important;
}

html body .t972 :is(button, [role="button"], input):focus-visible,
html body .t972__toggle-label:focus-within {
  outline: 2px solid var(--rlc-accent) !important;
  outline-offset: 3px !important;
}

html body .t972__settings {
  width: min(440px, 100vw) !important;
  color: var(--rlc-ink) !important;
  background: var(--rlc-surface) !important;
  border-left: 1px solid var(--rlc-border) !important;
  box-shadow: -16px 0 48px rgba(29, 35, 48, .12) !important;
}

html body .t972__settings-header {
  min-height: 64px !important;
  padding: 0 24px !important;
  color: var(--rlc-ink-2) !important;
  background: var(--rlc-surface) !important;
  border-bottom: 1px solid var(--rlc-border) !important;
}

html body .t972__settings-header:hover {
  color: var(--rlc-accent) !important;
}

html body .t972__settings-arrow,
html body .t972__settings-arrow path {
  stroke: currentColor !important;
}

html body .t972__settings-body {
  padding: 28px 24px 24px !important;
  background: var(--rlc-surface) !important;
}

html body .t972__settings-title {
  margin-bottom: 10px !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

html body .t972__settings-text {
  font-size: 15px !important;
  line-height: 1.55 !important;
}

html body .t972__categories {
  margin-top: 26px !important;
  border-top: 1px solid var(--rlc-border) !important;
}

html body .t972__category {
  border-bottom: 1px solid var(--rlc-border) !important;
}

html body .t972__category-header {
  min-height: 58px;
  padding: 14px 0 !important;
}

html body .t972__category-title {
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

html body .t972__category-body {
  padding: 0 0 18px 22px !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

html body .t972__line {
  background-color: var(--rlc-ink-2) !important;
}

html body .t972__category-enabled {
  color: var(--rlc-success) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

html body .t972__toggle-background {
  background: color-mix(in srgb, var(--rlc-muted) 38%, var(--rlc-accent-soft)) !important;
}

html body .t972__toggle-mark {
  background: var(--rlc-surface) !important;
  box-shadow: 0 1px 4px rgba(29, 35, 48, .2) !important;
}

html body .t972__toggle-input:checked + .t972__toggle-container .t972__toggle-background {
  background: var(--rlc-accent) !important;
}

html body .t972__settings-footer {
  padding: 18px 24px 24px !important;
  background: var(--rlc-surface) !important;
  border-top: 1px solid var(--rlc-border) !important;
}

html body .t972__confirm-btn {
  width: 100% !important;
}

@media (max-width: 640px) {
  html body .t972__banner {
    right: 12px !important;
    bottom: 12px !important;
    width: calc(100vw - 24px) !important;
    padding: 20px !important;
    border-radius: 14px !important;
  }

  html body .t972__buttons {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
  }

  html body .t972 :is(.t972__accept-btn, .t972__reject-btn, .t972__settings-btn) {
    width: 100% !important;
    padding: 0 12px !important;
  }

  html body .t972__settings {
    width: 100vw !important;
    border-left: 0 !important;
  }

  html body .t972__settings-header {
    padding: 0 18px !important;
  }

  html body .t972__settings-body {
    padding: 24px 18px 20px !important;
  }

  html body .t972__settings-title {
    font-size: 22px !important;
  }

  html body .t972__settings-footer {
    padding: 16px 18px max(20px, env(safe-area-inset-bottom)) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  html.rlc-motion .rlc-reveal,
  html.rlc-motion .rlc-reveal.rlc-reveal--soft {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  html body *, html body *::before, html body *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* Motion layer 2: calculator feedback, FAQ and mobile navigation. */
body [data-res],
body .rlc-hero__trust b,
body .rlc-why__nums b { font-variant-numeric: tabular-nums; }

body .rlc-calc__tariff-price.is-updating,
body .rlc-calc__zero-price.is-updating {
  animation: rlc-value-update .38s cubic-bezier(.22, 1, .36, 1);
}
@keyframes rlc-value-update {
  0% { opacity: .45; transform: translateY(5px) scale(.985); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}

html.rlc-motion section[class*="-faq"] details > :not(summary) {
  transform-origin: top;
}
html.rlc-motion section[class*="-faq"] summary::after {
  transition: color .2s ease, transform .25s cubic-bezier(.22, 1, .36, 1);
}
html.rlc-motion section[class*="-faq"] details[open] summary::after {
  color: var(--rlc-accent);
  transform: rotate(180deg);
}
html.rlc-motion section[class*="-faq"] summary:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--rlc-accent) 52%, transparent);
  outline-offset: 4px;
  border-radius: 4px;
}

@media (max-width: 1080px) {
  html.rlc-motion body .rlc-head__mobile {
    display: block;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-10px);
    transition: opacity .22s ease, transform .3s cubic-bezier(.22, 1, .36, 1), visibility .3s;
  }
  html.rlc-motion body .rlc-head__mobile.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }
  html.rlc-motion body .rlc-head__mobile nav a {
    opacity: 0;
    transform: translateY(8px);
    transition: color .18s ease, opacity .24s ease, transform .3s cubic-bezier(.22, 1, .36, 1);
  }
  html.rlc-motion body .rlc-head__mobile.is-open nav a {
    opacity: 1;
    transform: translateY(0);
  }
  html.rlc-motion body .rlc-head__mobile.is-open nav a:nth-of-type(2) { transition-delay: 35ms; }
  html.rlc-motion body .rlc-head__mobile.is-open nav a:nth-of-type(3) { transition-delay: 70ms; }
  html.rlc-motion body .rlc-head__mobile.is-open nav a:nth-of-type(4) { transition-delay: 105ms; }
  html.rlc-motion body .rlc-head__mobile.is-open nav a:nth-of-type(n+5) { transition-delay: 140ms; }
}

/* Keep reveal and hover as two separate phases; card hover must not cut off fade-in. */
html.rlc-motion .rlc-reveal:not(.is-settled) {
  transition:
    opacity .96s cubic-bezier(.16, 1, .3, 1),
    transform .96s cubic-bezier(.16, 1, .3, 1);
  transition-delay: var(--rlc-motion-delay, 0ms);
}
html.rlc-motion .rlc-reveal.is-settled {
  transition:
    transform .5s cubic-bezier(.16, 1, .3, 1),
    border-color .4s ease,
    box-shadow .5s ease;
  transition-delay: 0ms;
}

/* Initial state exists before DOMContentLoaded, preventing a visible flash/jump. */
html.rlc-motion section[class^="rlc-"] > [class$="__in"] > h1:not(.is-in),
html.rlc-motion section[class^="rlc-"] > [class$="__in"] > h2:not(.is-in),
html.rlc-motion section[class^="rlc-"] > [class$="__in"] > p:not(.is-in),
html.rlc-motion section[class^="rlc-"] > [class$="__in"] > [class$="__head"]:not(.is-in),
html.rlc-motion section[class^="rlc-"] > [class$="__in"] > [class$="__lead"]:not(.is-in),
html.rlc-motion section[class^="rlc-"] > [class$="__in"] > [class$="__actions"]:not(.is-in),
html.rlc-motion section[class^="rlc-"] > [class$="__in"] > [class$="__trust"]:not(.is-in),
html.rlc-motion section[class^="rlc-"] > [class$="__in"] > [class$="__facts"]:not(.is-in),
html.rlc-motion section[class^="rlc-"] [class$="__grid"] > *:not(.is-in),
html.rlc-motion section[class^="rlc-"] [class$="__list"] > article:not(.is-in),
html.rlc-motion section[class^="rlc-"] [class$="__list"] > div:not(.is-in),
html.rlc-motion section[class^="rlc-"] [class$="__list"] > li:not(.is-in),
html.rlc-motion section[class^="rlc-"] [class$="__list"] > details:not(.is-in),
html.rlc-motion section[class^="rlc-"] [class$="__table"] > [class*="__row"]:not([class*="--head"]):not(.is-in),
html.rlc-motion .rlc-calc__tariff:not(.is-in),
html.rlc-motion .rlc-calc__result-actions:not(.is-in) {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
}

/* Main-page process line and step-number rhythm. */
body .rlc-steps__list { position: relative; }
body .rlc-steps__list::before {
  content: '';
  position: absolute;
  top: 46px;
  right: 8%;
  left: 8%;
  height: 1px;
  background: color-mix(in srgb, var(--rlc-accent) 34%, var(--rlc-border));
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 1.8s cubic-bezier(.16, 1, .3, 1);
}
body .rlc-steps__title.is-in ~ .rlc-steps__list::before { transform: scaleX(1); }
body .rlc-steps__item { position: relative; z-index: 1; }

/* Slow ambient motion, isolated to the main hero and compositor-friendly. */
body .rlc-hero { position: relative; isolation: isolate; overflow: hidden; }
body .rlc-hero::after {
  content: '';
  position: absolute;
  z-index: 0;
  top: -28%;
  right: -8%;
  width: min(560px, 46vw);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, color-mix(in srgb, var(--rlc-accent) 13%, transparent), transparent 68%);
  pointer-events: none;
  transform: translate3d(0, 0, 0) scale(1);
  animation: rlc-hero-breathe 16s ease-in-out infinite alternate;
}
body .rlc-hero__in { position: relative; z-index: 1; }
@keyframes rlc-hero-breathe {
  to { transform: translate3d(-18px, 12px, 0) scale(1.06); opacity: .72; }
}

@media (max-width: 720px) {
  body .rlc-steps__list::before { display: none; }
  body .rlc-hero::after { width: 78vw; right: -36%; }
}

/* Native Tilda feeds: cases (FD500F) and reviews (FD500G).
 * Scoped by record id so other feed blocks keep their native appearance.
 */
html body #rec2786736301,
html body #rec2790788801 {
  color: var(--rlc-ink);
  font-family: var(--rlc-font) !important;
}

/* Tilda writes #f5f5f5 as an inline background on CMS records, so these
 * section colours intentionally use !important to restore theme 14.
 */
html body #rec2786736301 {
  background: var(--rlc-bg) !important;
}

html body #rec2790788801 {
  background: var(--rlc-accent-soft) !important;
}

html body #rec2786736301 .t-container,
html body #rec2790788801 .t-container,
html body #rec2786736301 .t2823__container,
html body #rec2790788801 .t2823__container {
  width: 100%;
  max-width: 1160px;
  box-sizing: border-box;
}

html body #rec2786736301 .t-section__title,
html body #rec2790788801 .t-section__title {
  max-width: none;
  margin-right: 0;
  margin-bottom: 48px !important;
  margin-left: 0;
  color: var(--rlc-ink) !important;
  font-family: var(--rlc-font) !important;
  font-size: clamp(32px, 3vw, 36px) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -.02em;
  text-align: left !important;
}

html body #rec2786736301 .t2823__items,
html body #rec2790788801 .t2823__items {
  --cards-row-gap: 24px !important;
  --cards-column-gap: 24px !important;
  align-items: stretch;
}

html body #rec2786736301 .t-cms__card,
html body #rec2790788801 .t-cms__card {
  --padding-top: 32px !important;
  --padding-right: 32px !important;
  --padding-bottom: 32px !important;
  --padding-left: 32px !important;
  height: 100%;
  color: var(--rlc-ink);
  background: var(--rlc-surface) !important;
  border: 1px solid var(--rlc-border) !important;
  border-radius: 16px !important;
  box-shadow: none;
  overflow: hidden;
}

html body #rec2786736301 .t-cms__card {
  min-height: 220px;
}

html body #rec2790788801 .t-cms__card {
  min-height: 280px;
  position: relative;
  isolation: isolate;
}

/* Reviews are a separate, quieter layer; ratings are hidden because they
 * read as marketplace UI and compete with the site's primary CTA colour.
 */
html body #rec2786736301 {
  padding-bottom: 72px !important;
}

html body #rec2790788801 {
  padding-top: 72px !important;
}

html body #rec2790788801 .t-cms__card::before {
  content: '\201C';
  position: absolute;
  z-index: 0;
  top: 14px;
  right: 24px;
  color: color-mix(in srgb, var(--rlc-accent) 16%, transparent);
  font-family: Georgia, serif;
  font-size: 72px;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
}

html body #rec2790788801 .t-cms__card__cell {
  position: relative;
  z-index: 1;
}

html body #rec2790788801 .t-cms__card__molecule_txt:has(.t-cms__card__atom[data-style="tag_typo"]),
html body #rec2790788801 .t-cms__card__atom[data-style="tag_typo"] {
  display: none !important;
}

/* Reviews stay self-contained: Tilda clamps FD500G descriptions to 3 lines
 * by default, but there is no detail page for a testimonial on this site.
 */
html body #rec2790788801 .t-cms__card__atom[data-style="descr_typo"] .t-cms__card__text {
  display: block !important;
  max-height: none !important;
  overflow: visible !important;
  -webkit-box-orient: initial !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
}

/* FD500F detail view. It becomes active after fields are added in
 * Content -> Detailed page and the card link is set to the system post URL.
 */
html body #rec2786736301 .t-cms__page {
  color: var(--rlc-ink);
  width: 100% !important;
  max-width: none !important;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-family: var(--rlc-font) !important;
}

html body #rec2786736301 .t-cms__page-container_popup {
  padding: 48px 24px !important;
  background: var(--rlc-bg) !important;
}

html body #rec2786736301 .t-cms__page-wrapper {
  width: calc(100% - 48px) !important;
  max-width: 920px !important;
  margin: 0 auto;
  padding: 64px 72px 72px !important;
  box-sizing: border-box;
  background: var(--rlc-surface) !important;
  border: 1px solid var(--rlc-border);
  border-radius: 20px;
  box-shadow: 0 14px 48px rgba(29, 35, 48, .1);
}

html body #rec2786736301 .t-cms__page__cell_txt {
  width: 100%;
  max-width: 720px;
  margin-right: auto;
  margin-left: auto;
}

html body #rec2786736301 .t-cms__page__atom[data-style="post_title_typo"] {
  color: var(--rlc-ink) !important;
  font-family: var(--rlc-font) !important;
  font-size: clamp(34px, 3.6vw, 44px) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em;
}

html body #rec2786736301 .t-cms__page__atom[data-style="post_descr_typo"],
html body #rec2786736301 .t-cms__page__atom[data-style="post_text_typo"],
html body #rec2786736301 .t-cms__page__atom[data-style="te_typo"] {
  color: var(--rlc-ink-2) !important;
  font-family: var(--rlc-font) !important;
  font-size: 18px !important;
  line-height: 1.7 !important;
}

html body #rec2786736301 .t-cms__page__atom[data-style="post_descr_typo"] {
  display: block;
  margin-top: 20px;
  font-size: 18px !important;
  line-height: 1.55 !important;
}

html body #rec2786736301 .t-cms__page__atom[data-style="te_typo"] {
  margin-top: 36px;
}

html body #rec2786736301 .t-cms__page__atom[data-style="te_typo"] p {
  margin: 0 0 22px;
}

html body #rec2786736301 .t-cms__page__atom[data-style="te_typo"] :is(h2, h3, h4, strong) {
  color: var(--rlc-ink);
}

html body #rec2786736301 .t-cms__page__atom[data-style="te_typo"] :is(h2, h3, h4) {
  margin: 40px 0 16px;
  font-family: var(--rlc-font) !important;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.02em;
}

html body #rec2786736301 .t-cms__page__atom[data-style="te_typo"] :is(ul, ol) {
  margin: 0 0 24px;
  padding-left: 24px;
}

html body #rec2786736301 .t-cms__page__atom[data-style="te_typo"] li + li {
  margin-top: 8px;
}

html body #rec2786736301 .t-cms__page-container__close-button {
  top: 18px !important;
  right: 18px !important;
  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  color: var(--rlc-ink) !important;
  background: var(--rlc-surface) !important;
  border: 1px solid var(--rlc-border) !important;
  border-radius: 50% !important;
  box-shadow: 0 6px 24px rgba(29, 35, 48, .16) !important;
}

html body #rec2786736301 .t-cms__page__atom[data-style="post_image_styles"],
html body #rec2786736301 .t-cms__page__text figure img {
  border-radius: 16px !important;
}

@media (max-width: 760px) {
  html body #rec2786736301 .t-cms__page-container_popup {
    padding: 16px !important;
  }

  html body #rec2786736301 .t-cms__page-wrapper {
    width: 100% !important;
    padding: 40px 24px 48px !important;
    border-radius: 16px;
  }

  html body #rec2786736301 .t-cms__page__atom[data-style="post_title_typo"] {
    font-size: 32px !important;
    line-height: 1.15 !important;
  }

  html body #rec2786736301 .t-cms__page__atom[data-style="post_descr_typo"],
  html body #rec2786736301 .t-cms__page__atom[data-style="post_text_typo"],
  html body #rec2786736301 .t-cms__page__atom[data-style="te_typo"] {
    font-size: 16px !important;
  }

  html body #rec2786736301 .t-cms__page-container__close-button {
    top: 10px !important;
    right: 10px !important;
  }
}

html body #rec2786736301 .t-cms__card__atom[data-style="title_typo"],
html body #rec2790788801 .t-cms__card__atom[data-style="title_typo"] {
  color: var(--rlc-ink) !important;
  font-family: var(--rlc-font) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -.02em;
}

html body #rec2786736301 .t-cms__card__atom[data-style="descr_typo"],
html body #rec2790788801 .t-cms__card__atom[data-style="descr_typo"],
html body #rec2786736301 .t-cms__card__atom[data-style="subtitle_typo"],
html body #rec2790788801 .t-cms__card__atom[data-style="subtitle_typo"] {
  color: var(--rlc-ink-2) !important;
  font-family: var(--rlc-font) !important;
  line-height: 1.55 !important;
}

html body #rec2786736301 .t-cms__card__atom[data-style="descr_typo"],
html body #rec2790788801 .t-cms__card__atom[data-style="descr_typo"] {
  font-size: 16px !important;
}

html body #rec2786736301 .t-cms__card__atom[data-style="uptitle_typo"],
html body #rec2790788801 .t-cms__card__atom[data-style="uptitle_typo"],
html body #rec2786736301 .t-cms__card__atom[data-style="tag_typo"],
html body #rec2790788801 .t-cms__card__atom[data-style="tag_typo"] {
  color: var(--rlc-accent) !important;
  font-family: var(--rlc-font) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

html body #rec2790788801 .t-cms__card__atom[data-style="image_styles"],
html body #rec2790788801 .t-cms__card__image {
  border-radius: 50% !important;
}

html body #rec2786736301 .t-cms__card__separator,
html body #rec2790788801 .t-cms__card__separator {
  color: var(--rlc-border) !important;
}

@media (hover: hover) and (pointer: fine) {
  html body #rec2786736301 .t-cms__card,
  html body #rec2790788801 .t-cms__card {
    transition: border-color .3s ease, box-shadow .4s ease, transform .4s cubic-bezier(.16, 1, .3, 1);
  }

  html body #rec2786736301 .t-cms__card:hover,
  html body #rec2790788801 .t-cms__card:hover {
    border-color: color-mix(in srgb, var(--rlc-accent) 28%, var(--rlc-border)) !important;
    box-shadow: 0 14px 34px rgba(29, 35, 48, .09);
    transform: translateY(-3px);
  }
}

@media (max-width: 640px) {
  html body #rec2786736301 .t-container,
  html body #rec2790788801 .t-container,
  html body #rec2786736301 .t2823__container,
  html body #rec2790788801 .t2823__container {
    max-width: calc(100% - 32px);
  }

  html body #rec2786736301 .t-section__title,
  html body #rec2790788801 .t-section__title {
    margin-bottom: 32px !important;
  }

  html body #rec2786736301 .t-cms__card,
  html body #rec2790788801 .t-cms__card {
    --padding-top: 24px !important;
    --padding-right: 24px !important;
    --padding-bottom: 24px !important;
    --padding-left: 24px !important;
    min-height: 0;
  }
}
