@layer doverie-base {
  .mobile-menu-toggle {
    display: none;
  }
  .footer__phone-link {
    display: contents;
    color: inherit;
    text-decoration: none;
  }
  .footer__phone-link > span {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    letter-spacing: 3px;
  }
  .footer__phone-link small {
    letter-spacing: 0;
  }
  @media (min-width: 768px) and (max-width: 1919px) {
    .design-page {
      zoom: var(--doverie-artboard-scale, 1);
    }
    .services-exact,
  .news-exact,
  .contacts-exact {
      zoom: var(--doverie-artboard-scale, 1);
    }
  }
  @media (width <= 767px) {
    :root {
      --mobile-content: min(342px, calc(100vw - 40px));
      --mobile-gutter: calc((100vw - var(--mobile-content)) / 2);
      --mobile-header-width: min(370px, calc(100vw - 32px));
      --mobile-header-gutter: calc((100vw - var(--mobile-header-width)) / 2);
      --mobile-form-width: calc(100vw - 32px);
      --mobile-form-gutter: 16px;
      --mobile-ink: #595552;
      --mobile-paper: #f3efe9;
    }
    .mobile-menu-toggle {
      display: block;
    }
    html,
  body {
      width: 100%;
      overflow-x: clip;
    }
    body {
      background: var(--mobile-paper);
    }
    .design-page {
      height: 7574px;
    }
    .services-exact {
      height: 3119px;
    }
    .news-exact {
      height: 3028px;
    }
    .contacts-exact {
      height: 3560px;
    }
    .topbar,
  .contacts-exact .topbar {
      color: #fff;
    }
    .topbar__logo img {
      display: block;
      object-fit: contain;
    }
    .topbar__phone,
  .contacts-exact .topbar__phone {
      justify-content: flex-end;
    }
    .topbar__phone img {
      filter: brightness(0) invert(1);
    }
    .topbar__phone b,
  .topbar__phone .topbar__phone-text--line-1,
  .topbar__phone .topbar__phone-text--line-2 {
      white-space: nowrap;
    }
    .mobile-menu-toggle {
      position: absolute;
      z-index: 3;
      left: 50%;
      top: 0;
      width: 70px;
      height: 28px;
      padding: 0;
      transform: translateX(-50%);
      border: 0;
      border-radius: 100px;
      background: rgba(208, 197, 183, .25);
      color: #fff;
      font: 400 12px/28px "Montserrat", sans-serif;
      cursor: pointer;
      -webkit-tap-highlight-color: transparent;
    }
    .mobile-menu-toggle:focus-visible {
      outline: 2px solid #fff;
      outline-offset: 2px;
    }
    .topbar__nav,
  .contacts-exact .topbar__nav {
      border: 1px solid rgba(255, 255, 255, .55);
      border-radius: 18px;
      background: rgba(89, 85, 82, .88);
      box-shadow: 0 14px 36px rgba(46, 38, 32, .2);
      -webkit-backdrop-filter: blur(14px);
      backdrop-filter: blur(14px);
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      transition: opacity .18s ease, transform .18s ease, visibility .18s;
    }
    .topbar.is-menu-open .topbar__nav {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
    }
    .topbar__nav a,
  .topbar__nav a:nth-child(1),
  .topbar__nav a:nth-child(2),
  .topbar__nav a:nth-child(3),
  .topbar__nav a:nth-child(4) {
      border-radius: 12px;
      color: #fff;
    }
    .topbar__nav a.is-active {
      background: rgba(255, 255, 255, .16);
    }
    .footer,
  .services-exact > .footer,
  .news-exact > .footer,
  .contacts-exact > .footer {
      overflow: visible;
    }
    .service-footer-scene,
  .news-footer-scene,
  .contacts-footer-scene {
      pointer-events: none;
    }
    .service-footer-transition,
  .news-footer-transition,
  .contacts-footer-transition {
      pointer-events: none;
    }
    .footer__transition,
  .footer__backword,
  .footer__cta-glass,
  .footer__cta-shape,
  .footer__cta-copy,
  .footer__cta-button {
      display: none;
    }
    .footer__nav nav a:nth-child(1) {
      grid-column: 1;
      grid-row: 1;
    }
    .footer__nav nav a:nth-child(2) {
      grid-column: 1;
      grid-row: 2;
    }
    .footer__nav nav a:nth-child(3) {
      grid-column: 1;
      grid-row: 3;
    }
    .footer__nav nav a:nth-child(4) {
      grid-column: 2;
      grid-row: 1;
    }
    .footer__contacts img,
  .contacts-exact > .footer .footer__contacts > p > img {
      object-fit: contain;
    }
    .footer__rating-content {
      transform: scale(.9175);
      transform-origin: top left;
    }
    .footer__developer-break {
      display: initial;
    }
    .design-page {
      background: #f4f0ec;
    }
    .design-page .scene {
      pointer-events: none;
    }
    .design-page .scene--hero::before,
  .design-page .scene--hero::after {
      content: "";
      position: absolute;
      pointer-events: none;
      border-radius: 50%;
      background: #595552;
      opacity: .5;
    }
    .design-page .scene--hero::before {
      left: 0;
      top: 54px;
      width: 402px;
      height: 400px;
      filter: blur(250px);
    }
    .design-page .scene--hero::after {
      left: -7px;
      top: 522px;
      width: 380px;
      height: 52px;
      filter: blur(150px);
    }
    .design-page .scene--light,
  .design-page .scene--pricing,
  .design-page .scene--trust,
  .design-page .scene--lower {
      opacity: 1;
    }
    .design-page .scene--pricing {
      overflow: hidden;
    }
    .design-page .hero-transition {
      pointer-events: none;
    }
    .design-page .pricing-workflow-transition,
  .design-page .workflow-trust-transition {
      pointer-events: none;
    }
    .design-page .scene-transition--trust-out {
      pointer-events: none;
    }
    .design-page .scene--footer::before {
      content: "";
      position: absolute;
      left: 50%;
      top: -41px;
      width: 475px;
      height: 81px;
      background: #efece8;
      filter: blur(17.5px);
      transform: translateX(-50%) scaleY(-1);
      pointer-events: none;
    }
    .hero__description br {
      display: none;
    }
    .first-steps__copy br {
      display: none;
    }
    .folder-card__image::after {
      display: none;
    }
    .folder-tab {
      transform-origin: top left;
    }
    .folder-card--3 .folder-card__text h3 {
      overflow-wrap: normal;
      word-break: normal;
    }
    .folder-card--3 .folder-card__mobile-title-line {
      display: block;
    }
    .trust__hands {
      content: url("/assets/mobile/home-hand.a64ed00f98.webp");
    }
    .trust__copy br {
      display: none;
    }
    .design-page .contacts::before {
      position: absolute;
      z-index: 0;
      left: var(--mobile-gutter);
      top: 324px;
      width: calc(var(--mobile-content) - 1px);
      height: 414px;
      content: "";
      border: 1px solid rgba(255,255,255,.75);
      border-radius: 15px;
      background: linear-gradient(180deg, rgba(187,172,162,.20), rgba(255,255,255,.20));
      -webkit-backdrop-filter: blur(8px);
      backdrop-filter: blur(8px);
      pointer-events: none;
    }
    .design-page .contacts > * {
      z-index: 1;
    }
    .contacts__map img {
      content: url("/assets/mobile/home-map.bfe2d62187.webp");
    }
    .contacts__copy br {
      display: none;
    }
    .design-page > .footer .footer__cta-shape,
  .design-page > .footer .footer__cta-copy,
  .design-page > .footer .footer__cta-button {
      display: block;
    }
    .design-page > .footer .footer__cta-shape {
      content: url("/assets/mobile/home-bottom-cta-silhouette.0d4c832dc3.svg");
      filter: drop-shadow(0 4px 25px rgba(188,178,168,.35));
    }
    .services-exact {
      background-color: #b7a99d;
      background-image: url("/assets/mobile/services-bg-a-exact.74b52f1d76.webp"), url("/assets/mobile/services-bg-b-exact.3e3d33c853.webp"), url("/assets/mobile/services-bg-c-exact.18383b8b70.webp");
      background-position: center 0, center 714px, center 1428px;
      background-size: 100% 714px;
      background-repeat: no-repeat;
    }
    .services-exact .hero-card-group {
      position: absolute;
      inset: 0;
    }
    .services-exact .s-hero > p br {
      display: none;
    }
    .services-exact .cc {
      transition: left .45s ease, top .45s ease, width .45s ease, height .45s ease;
    }
    .services-exact .cc img {
      object-fit: cover;
    }
    .services-exact .arrow-left img {
      content: url("/assets/mobile/services-arrow-left.9a81b29476.svg");
    }
    .services-exact .arrow-right img {
      content: url("/assets/mobile/services-arrow-right.d4594541d8.svg");
    }
    .services-exact .turnkey > img {
      content: url("/assets/mobile/services-turnkey.86eb6b4960.webp");
    }
    .services-exact .request > img {
      content: url("/assets/mobile/services-form-photo.702830594f.webp");
    }
    .services-exact .request button {
      transform: translateX(-50%);
    }
    .news-exact {
      background: #b9aa9c;
    }
    .news-hero h1 {
      transform: translateX(-50%);
    }
    .useful-card--products > img {
      content: url("/assets/mobile/news-products-exact.e0d4d6f6fb.webp");
    }
    .contacts-exact {
      background: #f5f1ec;
    }
    .contacts-hero__bg {
      content: url("/assets/mobile/contacts-hero-exact.0d4b5b96c6.webp");
    }
    .contacts-hero__title::before {
      content: "";
      position: absolute;
      z-index: -1;
      left: 125px;
      top: 0;
      width: 178px;
      height: 36px;
      box-sizing: border-box;
      overflow: hidden;
      border: 1px solid rgba(255,255,255,.78);
      border-radius: 100px;
      background: rgba(255,255,255,.20);
      -webkit-backdrop-filter: blur(6px) saturate(1.05);
      backdrop-filter: blur(6px) saturate(1.05);
      box-shadow: inset 0 1px 1px rgba(255,255,255,.52), inset 0 -1px 1px rgba(126,107,89,.10), 0 0 7px rgba(255,255,255,.20);
    }
    .contacts-hero__lead br {
      display: none;
    }
    .contacts-hero__cta {
      transform: translateX(-50%);
    }
    .contacts-hero__cta-label--desktop {
      display: none;
    }
    .contacts-hero__cta-label--mobile {
      display: inline;
    }
    .contacts-card--phone .contacts-card__art {
      content: url("/assets/mobile/contacts-card-phone-exact.cc4b7e4003.webp");
    }
    .contacts-card--office .contacts-card__art {
      content: url("/assets/mobile/contacts-card-office-exact.daa043ec77.webp");
    }
    .contacts-card::before {
      content: "";
      position: absolute;
      z-index: 2;
      left: 18px;
      top: 59px;
      width: 297px;
      height: 18px;
      background: #000;
      filter: blur(50px);
      pointer-events: none;
    }
    .contacts-card::after {
      content: "";
      position: absolute;
      z-index: 3;
      left: 0;
      top: 113px;
      width: 64.015px;
      height: 43.846px;
      background: url("/assets/mobile/contacts-card-number-office.b4e5bd2c14.svg") center/100% 100% no-repeat;
      pointer-events: none;
    }
    .contacts-card--office::after {
      background-image: url("/assets/mobile/contacts-card-number-office.b4e5bd2c14.svg");
    }
    .contacts-card__hit::after {
      content: "Позвонить";
      font: 400 12px/25px "Montserrat", sans-serif;
    }
    .contacts-card__select::after {
      content: "";
      position: absolute;
      z-index: 1;
      left: 0;
      top: 113px;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 64.015px;
      height: 43.846px;
      color: #595552;
      font: 600 14px/14px "Montserrat", sans-serif;
      pointer-events: none;
    }
    .contacts-card--phone .contacts-card__select::after {
      content: "1";
    }
    .contacts-card--office .contacts-card__select::after {
      content: "2";
    }
    .contacts-map__frame img {
      content: url("/assets/mobile/contacts-map-exact.87e402e1c3.webp");
    }
    .contacts-form__exact {
      content: url("/assets/mobile/contacts-form-photo.ce9374e67e.webp");
    }
    .contacts-form__lead br {
      display: none;
    }
    .contacts-submit {
      transform: none;
    }
    .contacts-consent {
      transform: translateX(-50%);
    }
    .contacts-consent input {
      cursor: pointer;
    }
  }
  .mobile-drawer-backdrop {
    display: none;
  }
  @media (width <= 767px) {
    body.mobile-drawer-open {
      position: fixed;
      left: 0;
      right: 0;
      width: 100%;
      overflow: hidden;
    }
    .topbar.is-mobile-sticky,
  .contacts-exact .topbar.is-mobile-sticky,
  .privacy-page .topbar.is-mobile-sticky {
      border: 1px solid rgba(255, 255, 255, .62);
      border-radius: 18px;
      background: linear-gradient(110deg, rgba(190, 175, 160, .66), rgba(229, 221, 213, .48));
      box-shadow: 0 9px 30px rgba(59, 47, 39, .14), inset 0 1px 0 rgba(255, 255, 255, .48);
      -webkit-backdrop-filter: blur(15px) saturate(1.02);
      backdrop-filter: blur(15px) saturate(1.02);
      animation: mobile-header-in 280ms cubic-bezier(.22, 1, .36, 1) both;
    }
    @keyframes mobile-header-in {
      from {
        opacity: 0;
        transform: translateY(-10px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }
    .mobile-drawer-backdrop {
      position: fixed;
      z-index: 5000;
      inset: 0;
      display: block;
      background: rgba(50, 42, 36, .28);
      -webkit-backdrop-filter: blur(3px);
      backdrop-filter: blur(3px);
      opacity: 0;
      visibility: hidden;
      transition: opacity 260ms ease, visibility 0s linear 320ms;
    }
    .mobile-drawer-backdrop[hidden] {
      display: none;
    }
    .mobile-drawer-backdrop.is-open {
      opacity: 1;
      visibility: visible;
      transition-delay: 0s;
    }
    .mobile-drawer {
      position: absolute;
      right: 0;
      top: 0;
      display: flex;
      flex-direction: column;
      width: min(338px, calc(100vw - 28px));
      height: 100dvh;
      padding: max(22px, env(safe-area-inset-top)) 22px max(24px, env(safe-area-inset-bottom));
      border-left: 1px solid rgba(255, 255, 255, .72);
      background: linear-gradient(155deg, rgba(241, 236, 231, .97), rgba(207, 195, 184, .94));
      color: #595552;
      box-shadow: -20px 0 60px rgba(46, 37, 31, .2);
      -webkit-backdrop-filter: blur(20px) saturate(.96);
      backdrop-filter: blur(20px) saturate(.96);
      transform: translateX(104%);
      transition: transform 320ms cubic-bezier(.22, 1, .36, 1);
    }
    .mobile-drawer-backdrop.is-open .mobile-drawer {
      transform: translateX(0);
    }
    .mobile-drawer__head {
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
    .mobile-drawer__head > a {
      display: block;
      width: 124px;
      height: 35px;
    }
    .mobile-drawer__head img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: contain;
      filter: brightness(.55) sepia(.15);
    }
    .mobile-drawer__close {
      display: grid;
      place-items: center;
      width: 44px;
      height: 44px;
      padding: 0;
      border: 1px solid rgba(255, 255, 255, .72);
      border-radius: 50%;
      background: rgba(255, 255, 255, .32);
      color: #595552;
      cursor: pointer;
      font: 300 27px/1 Montserrat, sans-serif;
    }
    .mobile-drawer__title {
      margin: 62px 0 22px;
      font: 500 25px/32px Unbounded, sans-serif;
    }
    .mobile-drawer__nav {
      display: grid;
      gap: 5px;
    }
    .mobile-drawer__nav a {
      display: flex;
      align-items: center;
      min-height: 46px;
      padding: 0 15px;
      border: 1px solid transparent;
      border-radius: 14px;
      color: #595552;
      font: 500 15px/20px Montserrat, sans-serif;
    }
    .mobile-drawer__nav a.is-active {
      border-color: rgba(255, 255, 255, .74);
      background: rgba(255, 255, 255, .25);
    }
    .mobile-drawer__cta {
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 52px;
      margin-top: auto;
      border: 1px solid rgba(255, 255, 255, .82);
      border-radius: 100px;
      background: #595552;
      color: #fff;
      font: 500 13px/18px Montserrat, sans-serif;
    }
  }
  @media (max-width: 1279px) and (pointer: coarse) {
    a,
  button,
  summary,
  [role="button"] {
      -webkit-tap-highlight-color: transparent;
      tap-highlight-color: transparent;
      touch-action: manipulation;
    }
    a,
  button,
  [role="button"] {
      transition: scale 110ms cubic-bezier(.22, 1, .36, 1), opacity 110ms ease, filter 110ms ease;
    }
    a:active,
  button:active,
  [role="button"]:active {
      scale: .975;
      opacity: .94;
      filter: brightness(1.025);
    }
  }
  @media (max-width: 1279px) and (pointer: coarse) and (prefers-reduced-motion: reduce) {
    a,
  button,
  [role="button"] {
      transition: none;
    }
  }
}

@layer doverie-components {
  @media (min-width: 768px) and (max-width: 1919px) {
    html,
  body {
      min-width: 0;
    }
  }
  @media (width <= 767px) {
    html,
  body {
      min-width: 0;
    }
    .design-page,
  .services-exact,
  .news-exact,
  .contacts-exact {
      left: 0;
      width: 100%;
      min-width: 0;
      max-width: none;
      margin: 0;
      transform: none;
      overflow: clip;
    }
    .topbar,
  .contacts-exact .topbar {
      position: absolute;
      z-index: 100;
      left: var(--mobile-header-gutter);
      top: 30px;
      width: var(--mobile-header-width);
      height: 28px;
    }
    .topbar__logo,
  .contacts-exact .topbar__logo {
      left: 0;
      top: 0;
      width: 101px;
      height: 28px;
    }
    .topbar__logo img {
      width: 101px;
      height: 28px;
    }
    .topbar__phone,
  .contacts-exact .topbar__phone {
      left: auto;
      right: 0;
      top: 0;
      width: 103px;
      height: 28px;
      gap: 18px;
    }
    .topbar__phone img {
      width: 9px;
      height: 9px;
    }
    .topbar__phone span {
      width: 80px;
      height: 20px;
    }
    .topbar__phone b,
  .topbar__phone .topbar__phone-text--line-1,
  .topbar__phone .topbar__phone-text--line-2 {
      left: auto;
      right: 0;
      width: max-content;
      height: 10px;
      display: block;
      font-size: 8px;
      line-height: 10px;
      font-weight: 400;
      letter-spacing: .8px;
      text-align: right;
    }
    .topbar__phone .topbar__phone-text--line-1 {
      top: 0;
    }
    .topbar__phone .topbar__phone-text--line-2 {
      top: 10px;
    }
    .topbar__nav,
  .contacts-exact .topbar__nav {
      position: absolute;
      z-index: 2;
      left: 50%;
      top: 38px;
      width: min(260px, calc(100vw - 40px));
      height: auto;
      padding: 12px;
      transform: translate(-50%, -8px);
    }
    .topbar.is-menu-open .topbar__nav {
      transform: translate(-50%, 0);
    }
    .topbar__nav a,
  .topbar__nav a:nth-child(1),
  .topbar__nav a:nth-child(2),
  .topbar__nav a:nth-child(3),
  .topbar__nav a:nth-child(4) {
      position: relative;
      left: auto;
      top: auto;
      display: block;
      width: 100%;
      height: 38px;
      padding: 0 16px;
      font: 500 14px/38px "Montserrat", sans-serif;
      text-align: left;
    }
    .topbar__nav .is-active::before {
      display: none;
    }
    .footer,
  .services-exact > .footer,
  .news-exact > .footer,
  .contacts-exact > .footer {
      left: 0;
      width: 100%;
      height: 920px;
      color: var(--mobile-ink);
      background: transparent;
    }
    .services-exact > .footer {
      top: 2199px;
    }
    .news-exact > .footer {
      top: 2097px;
    }
    .contacts-exact > .footer {
      top: 2629px;
    }
    .service-footer-scene,
  .news-footer-scene,
  .contacts-footer-scene {
      left: 0;
      width: 100%;
      background-color: #f0ede8;
    }
    .service-footer-scene {
      top: 1994px;
      height: 1125px;
      background-image: url("/assets/mobile/services-footer-exact.bb475e2c22.webp"), url("/assets/mobile/home-footer-bottom.0a178f62b1.webp");
      background-position: center top, center bottom;
      background-size: 100% 839px, 100% 286px;
      background-repeat: no-repeat;
    }
    .news-footer-scene {
      top: 1957px;
      height: 1071px;
      background-image: url("/assets/mobile/services-footer-exact.bb475e2c22.webp"), url("/assets/mobile/news-footer-bottom.5153101c98.webp");
      background-position: center top, center bottom;
      background-size: 100% 839px, 100% 232px;
      background-repeat: no-repeat;
    }
    .contacts-footer-scene {
      top: 2330px;
      height: 1230px;
      background-image: url("/assets/mobile/contacts-footer-exact.6a295124e5.webp"), url("/assets/mobile/contacts-footer-bottom.7d3044f418.webp");
      background-position: center top, center bottom;
      background-size: 100% 714px, 100% 516px;
      background-repeat: no-repeat;
    }
    .service-footer-transition,
  .news-footer-transition,
  .contacts-footer-transition {
      left: -9%;
      width: 118%;
      height: 72px;
      transform: none;
      filter: blur(14px);
      background: rgba(239, 236, 232, .9);
    }
    .service-footer-transition {
      left: 50%;
      top: 1953px;
      width: 475px;
      height: 81px;
      background: #c9bca9;
      filter: blur(17.5px);
      transform: translateX(-50%) scaleY(-1);
    }
    .news-footer-transition {
      left: 50%;
      top: 1916px;
      width: 475px;
      height: 81px;
      background: #c0af9b;
      filter: blur(17.5px);
      transform: translateX(-50%) scaleY(-1);
    }
    .service-footer-transition::after,
  .news-footer-transition::after {
      display: none;
    }
    .contacts-footer-transition {
      left: 50%;
      top: 2289px;
      width: 475px;
      height: 81px;
      background: #f6f3ef;
      filter: blur(17.5px);
      transform: translateX(-50%) scaleY(-1);
    }
    :is(.services-exact, .news-exact, .contacts-exact) > .footer .footer__backword {
      display: block;
      width: auto;
      height: auto;
      color: #d8cfc6;
      font-family: "Montserrat", sans-serif;
      font-weight: 500;
      line-height: 1;
      filter: none;
      opacity: .5;
    }
    :is(.services-exact, .news-exact, .contacts-exact) > .footer .footer__backword--upper {
      left: 122px;
      top: 334px;
      transform: scaleX(-1);
      font-size: 60px;
      letter-spacing: -6px;
    }
    :is(.services-exact, .news-exact, .contacts-exact) > .footer .footer__backword--lower {
      left: -9px;
      top: 371px;
      font-size: 90px;
      letter-spacing: -9px;
    }
    .footer__nav,
  .contacts-exact > .footer .footer__nav {
      position: absolute;
      left: var(--mobile-gutter);
      top: 0;
      width: var(--mobile-content);
      height: 144px;
      text-align: center;
    }
    .footer__nav h3,
  .footer__contacts h3,
  .contacts-exact > .footer .footer__nav h3,
  .contacts-exact > .footer .footer__contacts h3 {
      margin: 0;
      color: var(--mobile-ink);
      font: 600 24px/30px "Unbounded", sans-serif;
      text-align: center;
    }
    .footer__nav nav,
  .contacts-exact > .footer .footer__nav nav {
      position: absolute;
      left: 27px;
      top: 54px;
      display: grid;
      grid-template-columns: 110px 130px;
      grid-template-rows: repeat(3, 22px);
      gap: 10px 24px;
      width: 264px;
      height: 86px;
      margin: 0;
      font: 500 16px/20px "Montserrat", sans-serif;
      text-align: left;
    }
    .footer__nav nav a,
  .contacts-exact > .footer .footer__nav nav a {
      position: static;
      width: auto;
      color: var(--mobile-ink);
    }
    .footer__policy,
  .contacts-exact > .footer .footer__policy {
      position: absolute;
      left: 161px;
      top: 86px;
      display: block;
      width: 145px;
      height: 52px;
      margin: 0;
      color: var(--mobile-ink);
      font: 500 16px/20px "Montserrat", sans-serif;
      text-align: left;
    }
    .footer__contacts,
  .contacts-exact > .footer .footer__contacts {
      position: absolute;
      left: var(--mobile-gutter);
      top: 199px;
      width: var(--mobile-content);
      height: 258px;
      text-align: center;
    }
    .footer__contacts > p,
  .contacts-exact > .footer .footer__contacts > p,
  .footer__contacts > p:nth-of-type(1),
  .footer__contacts > p:nth-of-type(2),
  .footer__contacts > p:nth-of-type(3) {
      position: absolute;
      left: 50%;
      display: flex;
      justify-content: center;
      width: 290px;
      margin: 0;
      transform: translateX(-50%);
      color: var(--mobile-ink);
      font: 500 16px/20px "Montserrat", sans-serif;
      letter-spacing: .8px;
      text-align: center;
    }
    .footer__contacts > p:nth-of-type(1) {
      top: 54px;
    }
    .footer__contacts > p:nth-of-type(2) {
      top: 119px;
    }
    .footer__contacts > p:nth-of-type(3) {
      top: 184px;
    }
    .footer__contacts img,
  .contacts-exact > .footer .footer__contacts > p > img {
      width: 20px;
      height: 20px;
      margin: 0 16px 0 0;
    }
    .footer__contacts span,
  .footer__contacts > p:nth-of-type(3) span,
  .contacts-exact > .footer .footer__contacts > p:nth-of-type(3) > span {
      position: static;
      right: auto;
      left: auto;
      display: flex;
      width: auto;
      align-items: center;
      color: var(--mobile-ink);
      letter-spacing: .8px;
      text-align: center;
    }
    .footer__contacts small,
  .contacts-exact > .footer .footer__contacts > p small {
      margin: 5px 0 0;
      transform: none;
      color: var(--mobile-ink);
      font: 500 12px/15px "Montserrat", sans-serif;
      letter-spacing: 0;
    }
    .footer__rating,
  .contacts-exact > .footer .footer__rating {
      left: 50%;
      top: 501px;
      width: 267px;
      height: 92px;
      transform: translateX(-50%);
      transform-origin: top center;
    }
    .footer__rating-refraction,
  .footer__rating-panel {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      transform: none;
      transform-origin: top left;
      border-radius: var(--rating-glass-radius, 15px);
    }
    .footer__rating-refraction {
      display: block;
      overflow: hidden;
    }
    .footer__logo,
  .contacts-exact > .footer .footer__logo {
      left: 50%;
      top: 653px;
      width: min(341px, var(--mobile-content));
      height: 94px;
      transform: translateX(-50%);
      background: var(--mobile-ink);
      -webkit-mask-size: contain;
      mask-size: contain;
    }
    .footer__nav p,
  .contacts-exact > .footer .footer__nav p {
      position: absolute;
      left: 0;
      top: 807px;
      width: 100%;
      margin: 0;
      color: var(--mobile-ink);
      font: 500 18px/22.5px "Montserrat", sans-serif;
      text-align: center;
      white-space: normal;
    }
    .design-page .scene {
      left: 0;
      width: 100%;
    }
    .design-page .contacts__glass {
      pointer-events: none;
    }
    .design-page .scene--hero {
      top: 0;
      height: 714px;
      background: url("/assets/mobile/home-hero-exact.33fbb3b3a5.webp") center/100% 714px no-repeat;
    }
    .design-page .scene--light,
  .design-page .scene--pricing,
  .design-page .scene--trust,
  .design-page .scene--lower {
      display: block;
    }
    .design-page .scene--light {
      top: 714px;
      height: 1969px;
      background: url("/assets/mobile/home-light-a-exact.3878339721.webp") center top/100% 625px repeat-y;
    }
    .design-page .scene--light::before,
  .design-page .scene--workflow::before,
  .design-page .scene--trust::before,
  .design-page .scene--trust::after,
  .design-page .scene--lower::before,
  .design-page .scene--lower::after {
      display: none;
    }
    .design-page .scene--pricing {
      top: 2683px;
      height: 658px;
      background: linear-gradient(180deg, #f1ede8 0, #f4f0ec 30px) top/100% 30px no-repeat, #fff;
    }
    .design-page .scene--pricing::before {
      display: block;
      left: -249.94%;
      top: 30px;
      width: 368.47%;
      height: 749.895px;
      opacity: .5;
      transform: none;
      background-image: image-set(
        url("/assets/figma/pricing-bg-w1920.fdb4e2b9db.avif") type("image/avif") 1x,
        url("/assets/figma/pricing-bg-w1920.03864e73b3.webp") type("image/webp") 1x
      );
      background-position: center;
      background-size: 100% 100%;
      background-repeat: no-repeat;
    }
    .design-page .scene--trust {
      top: 4037px;
      height: 923px;
      background: url("/assets/mobile/home-trust-bg-exact.5f7170816f.webp") center/100% 923px no-repeat;
      -webkit-mask-image: none;
      mask-image: none;
    }
    .design-page .scene--lower {
      top: 4960px;
      height: 1802px;
      background-image: url("/assets/mobile/home-lower-top-exact.3dda46d320.webp"), url("/assets/mobile/home-bg-abstract-exact.8d560c2810.webp");
      background-position: center top, center 279px;
      background-size: 100% 280px, 100% 1252px;
      background-repeat: no-repeat;
      -webkit-mask-image: none;
      mask-image: none;
    }
    .design-page .scene--footer {
      top: 6490px;
      height: 1084px;
      background-image: url("/assets/mobile/home-footer-exact.164c12e7f1.webp"), url("/assets/mobile/home-footer-bottom.0a178f62b1.webp");
      background-position: center top, center bottom;
      background-size: 100% 786px, 100% 298px;
      background-repeat: no-repeat;
    }
    .design-page .scene--workflow {
      display: block;
      top: 3341px;
      left: 0;
      width: 100%;
      height: 696px;
      background: url("/assets/mobile/home-workflow-bg-exact.59f5fcc065.webp") center/100% 696px no-repeat;
    }
    .design-page .services-pricing-transition,
  .design-page .pricing-workflow-transition,
  .design-page .workflow-trust-transition,
  .design-page .scene-transition {
      display: none;
    }
    .design-page .hero-transition {
      display: block;
      left: 0;
      top: 636px;
      width: 100%;
      height: 79px;
      background: linear-gradient(180deg, rgba(246, 244, 239, 0) 0%, #f6f4ef 100%) top/100% 79px no-repeat;
    }
    .design-page .hero-transition::before,
  .design-page .hero-transition::after {
      display: none;
    }
    .design-page .pricing-workflow-transition,
  .design-page .workflow-trust-transition {
      display: block;
      left: 50%;
      width: 475px;
      height: 81px;
      background: #efece8;
      filter: blur(17.5px);
    }
    .design-page .pricing-workflow-transition {
      top: 3300px;
      transform: translateX(-50%);
    }
    .design-page .workflow-trust-transition {
      top: 3996px;
      transform: translateX(-50%) scaleY(-1);
    }
    .design-page .scene-transition--trust-out {
      display: block;
      left: 50%;
      top: 4919px;
      width: 475px;
      height: 81px;
      background: #efece8;
      filter: blur(17.5px);
      transform: translateX(-50%);
    }
    .design-page .scene--footer::before {
      display: block;
    }
    .design-page .hero {
      left: 0;
      top: 0;
      width: 100%;
      height: 714px;
    }
    .hero__eyebrow {
      left: var(--mobile-gutter);
      top: 166px;
      width: var(--mobile-content);
      font: 300 10px/13px "Unbounded", sans-serif;
      white-space: normal;
    }
    .hero__title {
      left: var(--mobile-gutter);
      top: 214px;
      width: var(--mobile-content);
      font: 400 42px/36px "Unbounded", sans-serif;
      letter-spacing: -2.1px;
      white-space: normal;
      height: auto;
      color: transparent;
      background: url("/assets/mobile/home-hero-title-fill.fddf2758af.webp") center/cover no-repeat;
      -webkit-background-clip: text;
      background-clip: text;
    }
    .hero__title::before {
      display: none;
    }
    .hero__description {
      left: var(--mobile-gutter);
      top: 346px;
      width: 298px;
      font: 400 12px/20px "Montserrat", sans-serif;
    }
    .urgent-button {
      left: -49px;
      top: 430px;
      width: 288px;
      height: 47px;
      padding-left: 104px;
      font: 500 12px/47px "Unbounded", sans-serif;
    }
    .hero__note {
      left: var(--mobile-gutter);
      top: 494px;
      width: 209px;
      font: 300 10px/13px "Unbounded", sans-serif;
    }
    .hero__features {
      left: var(--mobile-gutter);
      top: 576px;
      display: flex;
      justify-content: space-between;
      width: var(--mobile-content);
      height: 52px;
    }
    .hero-feature,
  .hero-feature--clock,
  .hero-feature--pin,
  .hero-feature--document {
      position: static;
      display: flex;
      width: 30%;
      height: 30px;
      gap: 7px;
      align-items: center;
      color: #f6f6f6;
      font: 300 9px/11px "Unbounded", sans-serif;
    }
    .hero-feature img,
  .hero-feature--clock img,
  .hero-feature--pin img,
  .hero-feature--document img {
      width: 20px;
      height: 25px;
    }
    .first-steps,
  .services,
  .pricing,
  .workflow,
  .trust,
  .contacts,
  .faq,
  .statement {
      left: 0;
      width: 100%;
    }
    .section-tag {
      font: 300 10px/13px "Unbounded", sans-serif;
    }
    .section-title {
      font: 400 24px/30px "Unbounded", sans-serif;
      letter-spacing: -.6px;
    }
    .section-copy {
      font: 400 12px/16px "Montserrat", sans-serif;
    }
    .first-steps {
      top: 714px;
      height: 1250px;
    }
    .first-steps__tag {
      left: var(--mobile-gutter);
      top: 60px;
    }
    .first-steps__title {
      left: var(--mobile-gutter);
      top: 86px;
      width: 282px;
    }
    .first-steps__copy {
      left: var(--mobile-gutter);
      top: 150px;
      width: 254px;
    }
    .folder-cards {
      left: var(--mobile-gutter);
      top: 231px;
      display: block;
      width: var(--mobile-content);
      height: 874px;
    }
    .folder-card {
      position: absolute;
      width: 245px;
      height: 196px;
    }
    .folder-card--1 {
      left: calc(100% - 245px);
      top: 0;
    }
    .folder-card--2 {
      left: 0;
      top: 226px;
    }
    .folder-card--3 {
      left: calc(100% - 245px);
      top: 452px;
    }
    .folder-card--4 {
      left: 0;
      top: 678px;
    }
    .folder-card__image {
      position: absolute;
      inset: 0;
      width: 245px;
      height: 196px;
      border-radius: 20px;
      object-fit: cover;
      box-shadow: none;
    }
    .folder-tab {
      height: 85.918px;
      transform: none;
    }
    .folder-card--1 .folder-tab,
  .folder-card--2 .folder-tab {
      width: 120.822px;
    }
    .folder-card--3 .folder-tab,
  .folder-card--4 .folder-tab {
      width: 100.685px;
    }
    .folder-card--1 .folder-tab--1 {
      left: 104.43px;
      top: 14.10px;
    }
    .folder-card--2 .folder-tab--1 {
      left: 93.30px;
      top: 8.73px;
    }
    .folder-card--2 .folder-tab--2 {
      left: 104.71px;
      top: 16.78px;
    }
    .folder-card--3 .folder-tab--1 {
      left: 92.63px;
      top: 4.03px;
    }
    .folder-card--3 .folder-tab--2 {
      left: 108.74px;
      top: 10.07px;
    }
    .folder-card--3 .folder-tab--3 {
      left: 124.85px;
      top: 16.11px;
    }
    .folder-card--4 .folder-tab--1 {
      left: 72.49px;
      top: 0;
    }
    .folder-card--4 .folder-tab--2 {
      left: 89.95px;
      top: 6.04px;
    }
    .folder-card--4 .folder-tab--3 {
      left: 107.40px;
      top: 12.08px;
    }
    .folder-card--4 .folder-tab--4 {
      left: 124.85px;
      top: 18.12px;
    }
    .folder-card__number,
  .folder-card--1 .folder-card__number,
  .folder-card--2 .folder-card__number,
  .folder-card--3 .folder-card__number,
  .folder-card--4 .folder-card__number {
      left: 19px;
      top: 28px;
      width: 34px;
      height: 34px;
      font-size: 18px;
      line-height: 34px;
    }
    .folder-card--1 .folder-card__number {
      left: 28px;
      top: 28px;
    }
    .folder-card--2 .folder-card__number {
      left: 19px;
      top: 28px;
    }
    .folder-card--3 .folder-card__number {
      left: 24px;
      top: 21px;
    }
    .folder-card--4 .folder-card__number {
      left: 35px;
      top: 28px;
    }
    .folder-card__text,
  .folder-card--1 .folder-card__text,
  .folder-card--2 .folder-card__text,
  .folder-card--3 .folder-card__text,
  .folder-card--4 .folder-card__text {
      left: 19px;
      top: 92px;
      width: calc(100% - 38px);
    }
    .folder-card__text h3 {
      font: 400 16px/20px "Unbounded", sans-serif;
    }
    .folder-card__text p {
      margin-top: 10px;
      font: 400 12px/15px "Montserrat", sans-serif;
    }
    .folder-card--1 .folder-card__text {
      left: 28px;
      width: 189px;
    }
    .folder-card--2 .folder-card__text {
      left: 19px;
      width: 206px;
    }
    .folder-card--3 .folder-card__text {
      left: 24px;
      top: 82px;
      width: 176px;
      max-width: 176px;
    }
    .folder-card--3 .folder-card__text h3 {
      width: 176px;
      max-width: 176px;
    }
    .folder-card--3 .folder-card__text p {
      width: 197px;
      max-width: 197px;
    }
    .folder-card--4 .folder-card__text {
      left: 35px;
      width: 175px;
    }
    .design-page .services {
      top: 1819px;
      height: 864px;
    }
    .services__tag {
      left: var(--mobile-gutter);
      top: 60px;
    }
    .services__title {
      left: var(--mobile-gutter);
      top: 86px;
      width: 272px;
    }
    .services__copy {
      left: var(--mobile-gutter);
      top: 188px;
      width: var(--mobile-content);
    }
    .services__copy .services__mobile-break {
      display: block;
    }
    .services__copy .services__desktop-break {
      display: none;
    }
    .services__grid {
      left: 50%;
      top: 261px;
      display: grid;
      grid-template-columns: 1fr;
      gap: 16px;
      width: min(306px, var(--mobile-content));
      height: 573px;
      transform: translateX(-50%);
    }
    .service,
  .service--1,
  .service--2,
  .service--3,
  .service--4,
  .service--5,
  .service--6 {
      position: relative;
      left: auto;
      top: auto;
      display: grid;
      grid-template-columns: 65px 1fr;
      gap: 20px;
      width: 100%;
      height: 79px;
    }
    .service img,
  .service--1 img,
  .service--2 img,
  .service--3 img,
  .service--4 img,
  .service--5 img,
  .service--6 img {
      width: 65px;
      height: 70px;
      object-fit: contain;
    }
    .service div {
      width: auto;
      padding: 0;
    }
    .service h3 {
      font: 400 13px/16px "Unbounded", sans-serif;
    }
    .service p {
      margin-top: 5px;
      font: 400 10px/13px "Montserrat", sans-serif;
    }
    .pricing {
      top: 2683px;
      height: 658px;
    }
    .pricing__tag,
  .pricing__title,
  .pricing__copy {
      display: none;
    }
    .price-card,
  .price-card--funeral,
  .price-card--cremation {
      left: 50%;
      width: min(328px, calc(100% - 40px));
      height: 235px;
      transform: translateX(-50%);
    }
    .price-card--funeral {
      top: 30px;
    }
    .price-card--cremation {
      top: 340px;
    }
    .price-card__shape {
      width: 100%;
      height: 235px;
      background: none;
      -webkit-mask: none;
      mask: none;
      -webkit-backdrop-filter: none;
      backdrop-filter: none;
      filter: none;
    }
    .price-card__outer-shadow {
      display: block;
      width: 100%;
      height: 235px;
    }
    .price-card__glass {
      display: block;
      width: 100%;
      height: 235px;
      clip-path: none;
      background: rgba(216,207,198,.04);
      -webkit-mask: url("/assets/mobile/home-price-silhouette-mask.8ec6ed41bf.svg") center/100% 100% no-repeat;
      mask: url("/assets/mobile/home-price-silhouette-mask.8ec6ed41bf.svg") center/100% 100% no-repeat;
      -webkit-backdrop-filter: blur(5px) saturate(.97);
      backdrop-filter: blur(5px) saturate(.97);
    }
    .price-card__edge {
      display: none;
    }
    .price-card__art {
      left: 16px;
      top: 56px;
      width: 94px;
      height: 122px;
    }
    .price-card__art--cross {
      transform: translateX(-4px) scale(1.2, 1.235);
      transform-origin: center bottom;
    }
    .price-card--cremation .price-card__art {
      width: 83px;
      transform: translate(1px, -6px) scale(1.15, 1.26);
      transform-origin: center bottom;
    }
    .price-card__body {
      left: 110px;
      top: 56px;
      width: 202px;
    }
    .price-card__body h3 {
      font: 400 14px/17px "Unbounded", sans-serif;
    }
    .price {
      margin-top: 5px;
    }
    .price span {
      flex: 0 0 auto;
      width: auto;
      font-size: 24px;
      line-height: 30px;
    }
    .price small {
      margin: 12px 0 0 5px;
      font-size: 12px;
      line-height: 15px;
    }
    .price-card__body ul {
      display: block;
      width: 188px;
      margin-top: 10px;
      padding-left: 0;
      font-size: 10px;
      line-height: 12px;
    }
    .price-card__body li + li {
      margin-top: 3px;
    }
    .price-card__button,
  .price-card--funeral .price-card__button,
  .price-card--cremation .price-card__button {
      left: auto;
      right: 0;
      top: 201px;
      width: 86px;
      height: 34px;
      font: 400 8px/34px "Montserrat", sans-serif;
    }
    .price-card__caption {
      left: 0;
      top: 258px;
      width: 100%;
      font-size: 9px;
      line-height: 15px;
    }
    .workflow {
      top: 3341px;
      height: 696px;
    }
    .workflow__intro {
      left: var(--mobile-gutter);
      top: 86px;
      width: var(--mobile-content);
    }
    .workflow__intro h2 {
      margin-top: 12px;
      font: 400 28px/35px "Unbounded", sans-serif;
    }
    .workflow__intro > p:not(.section-tag) {
      width: 100%;
      margin-top: 12px;
      font: 400 12px/15px "Montserrat", sans-serif;
    }
    .workflow__intro > a {
      width: 160px;
      height: 60px;
      margin: 18px auto 0;
      font-size: 14px;
    }
    .workflow__list {
      left: var(--mobile-gutter);
      top: 386px;
      gap: 16px;
      width: var(--mobile-content);
    }
    .workflow__list li {
      width: 100%;
      height: 44px;
      min-height: 44px;
      padding: 7px 10px;
      gap: 10px;
      border: 0;
      background: linear-gradient(90deg, rgba(188,178,168,.20), rgba(223,219,213,.20));
    }
    .workflow__list li > span {
      width: 30px;
      height: 30px;
      font-size: 12px;
      line-height: 28px;
    }
    .workflow__list li strong {
      flex: none;
      margin-left: 0;
      font-size: 10px;
      line-height: 12px;
    }
    .workflow__list li i {
      margin-left: 0;
    }
    .workflow__list li p {
      flex: 1 1 auto;
      min-width: 0;
      width: auto;
      margin-left: 0;
      overflow: visible;
      white-space: normal;
      font-size: 10px;
      line-height: 12px;
    }
    .trust {
      top: 4037px;
      height: 923px;
    }
    .trust__hands {
      display: block;
      left: auto;
      right: 31px;
      top: 1217px;
      width: 174px;
      height: 444px;
      border-radius: 0;
      object-fit: fill;
    }
    .trust__tag {
      left: var(--mobile-gutter);
      top: 4px;
    }
    .trust__title {
      left: var(--mobile-gutter);
      top: 26px;
      width: var(--mobile-content);
    }
    .trust__copy {
      left: var(--mobile-gutter);
      top: 96px;
      width: var(--mobile-content);
    }
    .trust__cards {
      left: var(--mobile-gutter);
      right: auto;
      top: 171px;
      bottom: auto;
      display: grid;
      align-content: start;
      grid-template-rows: repeat(4, 161px);
      gap: 16px;
      width: var(--mobile-content);
      height: 692px;
    }
    .trust__cards article,
  .trust__cards article:nth-child(1),
  .trust__cards article:nth-child(2),
  .trust__cards article:nth-child(3),
  .trust__cards article:nth-child(4) {
      position: relative;
      left: auto;
      top: auto;
      width: 100%;
      height: 161px;
      border-radius: 24px;
      background: rgba(255, 255, 255, .22);
    }
    .trust__cards article > div,
  .trust__cards article:nth-child(2) > div,
  .trust__cards article:nth-child(3) > div,
  .trust__cards article:nth-child(4) > div {
      left: 24px;
      top: 24px;
      gap: 30px;
    }
    .trust__cards article strong {
      width: auto;
      font: 300 14px/18px "Unbounded", sans-serif;
    }
    .trust__cards article > p,
  .trust__cards article:nth-child(2) > p,
  .trust__cards article:nth-child(3) > p,
  .trust__cards article:nth-child(4) > p {
      left: 24px;
      top: 82px;
      width: calc(100% - 48px);
      font: 400 14px/18px "Montserrat", sans-serif;
    }
    .design-page .contacts {
      top: 4960px;
      height: 1466px;
      pointer-events: none;
    }
    .contacts__glass {
      display: none;
    }
    .design-page .contacts a,
  .design-page .contacts .contacts__tag,
  .design-page .contacts .contacts__title,
  .design-page .contacts .contacts__copy,
  .design-page .contacts .contacts__phones,
  .design-page .contacts .contacts__address {
      pointer-events: auto;
    }
    .contacts__map {
      left: var(--mobile-gutter);
      top: 0;
      width: var(--mobile-content);
      height: 294px;
      border: 1px solid #fff;
      border-radius: 15px;
      box-shadow: 3px 6px 25px rgba(0,0,0,.25);
    }
    .contacts__map img {
      width: 100%;
      height: 294px;
      border-radius: 15px;
      object-fit: cover;
    }
    .contacts__tag {
      left: calc(var(--mobile-gutter) + 24px);
      top: 354px;
    }
    .contacts__title {
      left: calc(var(--mobile-gutter) + 24px);
      top: 390px;
      width: calc(var(--mobile-content) - 50px);
      font: 400 22px/28px "Unbounded", sans-serif;
      letter-spacing: -.55px;
    }
    .contacts__copy {
      left: calc(var(--mobile-gutter) + 24px);
      top: 495px;
      width: calc(var(--mobile-content) - 48px);
      font-size: 12px;
      line-height: 16px;
    }
    .contacts__phones {
      left: calc(var(--mobile-gutter) + 24px);
      top: 564px;
      display: flex;
      justify-content: flex-start;
      gap: 25px;
      width: 263px;
      font-size: 14px;
    }
    .contacts__buttons {
      left: calc(var(--mobile-gutter) + 24px);
      right: auto;
      top: 588px;
      display: flex;
      justify-content: flex-start;
      gap: 18px;
      width: 266px;
    }
    .contacts__buttons a {
      width: 124px;
      height: 36px;
      font-size: 14px;
    }
    .contacts__address {
      left: calc(var(--mobile-gutter) + 24px);
      top: 648px;
      width: calc(var(--mobile-content) - 48px);
      gap: 8px;
      font-size: 12px;
      line-height: 16px;
    }
    .contacts__address img {
      margin-right: 0;
    }
    .faq {
      top: 5758px;
      height: 387px;
    }
    .faq__tag {
      left: var(--mobile-gutter);
      top: 0;
    }
    .faq__title {
      left: var(--mobile-gutter);
      top: 22px;
      width: var(--mobile-content);
    }
    .faq__title br:first-of-type {
      display: none;
    }
    .faq__copy {
      display: block;
      left: var(--mobile-gutter);
      top: 92px;
      width: var(--mobile-content);
    }
    .faq__copy br {
      display: none;
    }
    .faq__phone {
      display: block;
      white-space: nowrap;
    }
    .faq__list {
      left: var(--mobile-gutter);
      top: 161px;
      gap: 10px;
      width: var(--mobile-content);
    }
    .faq__list details {
      width: 100%;
    }
    .faq__list summary {
      width: 100%;
      height: 49px;
      min-height: 49px;
      padding: 0 9px 0 16px;
      gap: 7px;
      font-size: 11px;
      line-height: 14px;
    }
    .faq__list summary span {
      flex: 0 0 279px;
      width: 279px;
    }
    .faq__list summary i {
      position: relative;
      right: auto;
      top: auto;
      flex: 0 0 31px;
      width: 31px;
      height: 31px;
      background-size: 31px 31px;
    }
    .faq__list summary i::after {
      left: 9px;
      top: 15px;
      width: 13px;
    }
    .faq__list details > p {
      left: 8px;
      top: 32px;
      width: calc(100% - 16px);
      font-size: 10px;
      line-height: 13px;
    }
    .statement {
      top: 6235px;
      height: 101px;
    }
    .statement__text {
      left: var(--mobile-gutter);
      top: 0;
      width: 313px;
      height: 36px;
      font-size: 10px;
      font-weight: 500;
      line-height: 12px;
    }
    .statement__signature {
      left: auto;
      right: 44px;
      top: 48px;
      width: 53px;
      height: 53px;
      filter: drop-shadow(0 0 .3px #a9978b);
    }
    .design-page > .footer {
      top: 6426px;
      height: 1148px;
    }
    .design-page > .footer .footer__cta-glass {
      display: block;
      left: 35px;
      top: 0;
      width: calc(100% - 70px);
      height: 176px;
      clip-path: none;
      background: rgba(255, 255, 255, .20);
      -webkit-mask: url("/assets/mobile/home-bottom-cta-mask.7dbc23aa78.svg") center/100% 100% no-repeat;
      mask: url("/assets/mobile/home-bottom-cta-mask.7dbc23aa78.svg") center/100% 100% no-repeat;
      -webkit-backdrop-filter: blur(12px) saturate(.96);
      backdrop-filter: blur(12px) saturate(.96);
    }
    .design-page > .footer .footer__cta-shape {
      left: 35px;
      top: 0;
      width: calc(100% - 70px);
      height: 176px;
    }
    .design-page > .footer .footer__cta-copy {
      left: 58px;
      top: 25px;
      width: calc(100% - 117px);
    }
    .design-page > .footer .footer__cta-copy h2 {
      width: 100%;
      font: 500 16px/21px "Unbounded", sans-serif;
    }
    .design-page > .footer .footer__cta-copy p {
      margin-top: 8px;
      font-size: 12px;
      line-height: 15px;
    }
    .design-page > .footer .footer__cta-button {
      left: 48.5074627%;
      right: 35px;
      top: 136px;
      width: auto;
      height: 40px;
      border: 0;
      border-radius: 24px;
      box-shadow: none;
      font: 400 10px/40px "Montserrat", sans-serif;
      text-align: center;
    }
    .design-page > .footer .footer__backword {
      display: block;
      width: auto;
      height: auto;
      color: #d8cfc6;
      font-family: "Montserrat", sans-serif;
      font-weight: 500;
      line-height: 1;
      filter: none;
      opacity: .5;
    }
    .design-page > .footer .footer__backword--upper {
      left: 122px;
      top: 334px;
      transform: scaleX(-1);
      font-size: 60px;
      letter-spacing: -6px;
    }
    .design-page > .footer .footer__backword--lower {
      left: -9px;
      top: 371px;
      font-size: 90px;
      letter-spacing: -9px;
    }
    .design-page > .footer .footer__nav,
  .design-page > .footer .footer__contacts,
  .design-page > .footer .footer__rating,
  .design-page > .footer .footer__logo {
      margin-top: 236px;
    }
    .design-page > .footer .footer__nav p {
      top: 807px;
    }
    .services-exact .wall {
      display: none;
    }
    .services-exact .s-hero {
      left: 0;
      top: 0;
      width: 100%;
      height: 390px;
    }
    .services-exact .hero-card-left {
      left: 63px;
      top: 114px;
      width: 154.658px;
      height: 170.428px;
      border-radius: 10px;
      transform: none;
    }
    .services-exact .hero-card-right {
      left: 230.35px;
      top: 143.98px;
      width: 108.377px;
      height: 119.13px;
      border-radius: 10px;
      transform: none;
    }
    .services-exact .s-hero h1 {
      left: var(--mobile-gutter);
      top: 170px;
      width: var(--mobile-content);
      font: 400 40px/50px "Unbounded", sans-serif;
      letter-spacing: -2px;
    }
    .services-exact .s-hero > p {
      left: var(--mobile-gutter);
      top: 232px;
      width: var(--mobile-content);
      font: 500 12px/15px "Montserrat", sans-serif;
    }
    .services-exact .hero-more {
      display: none;
    }
    .services-exact .hero-object {
      left: -53px;
      top: 247px;
      width: 166px;
      height: 165px;
    }
    .services-exact .hero-consult {
      display: none;
    }
    .services-exact .carousel {
      left: var(--mobile-gutter);
      top: 390px;
      width: var(--mobile-content);
      height: 233px;
      overflow: visible;
      filter: drop-shadow(0 16px 24px rgba(0,0,0,.18));
    }
    .services-exact .cc b {
      padding: 48px 9px 12px;
      font: 500 9px/11px "Unbounded", sans-serif;
    }
    .services-exact .c1 {
      left: 0;
      top: 62px;
      width: 69px;
      height: 87px;
    }
    .services-exact .c2 {
      left: 32px;
      top: 41px;
      width: 104px;
      height: 129px;
    }
    .services-exact .c3 {
      left: 60px;
      top: 21px;
      width: 139px;
      height: 170px;
    }
    .services-exact .c4 {
      left: 87px;
      top: 0;
      width: 172px;
      height: 211px;
      border-radius: 15px;
    }
    .services-exact .c4 b {
      padding: 54px 15px 16px;
      font-size: 10px;
      line-height: 13px;
    }
    .services-exact .c5 {
      left: 148px;
      top: 21px;
      width: 139px;
      height: 170px;
    }
    .services-exact .c6 {
      left: 210px;
      top: 41px;
      width: 104px;
      height: 129px;
    }
    .services-exact .c7 {
      left: 273px;
      top: 62px;
      width: 69px;
      height: 87px;
    }
    .services-exact .arrow {
      top: 192.58px;
      width: 40px;
      height: 40px;
      border: 0;
      background: transparent;
    }
    .services-exact .arrow-left {
      left: 0;
    }
    .services-exact .arrow-right {
      left: auto;
      right: 0;
    }
    .services-exact .arrow img {
      width: 40px;
      height: 40px;
    }
    .services-exact .turnkey {
      left: var(--mobile-gutter);
      top: 683px;
      width: var(--mobile-content);
      height: 424px;
    }
    .services-exact .turnkey > img {
      width: 100%;
      height: 196px;
      border-radius: 15px;
      object-fit: cover;
    }
    .services-exact .turnkey > div {
      left: 0;
      top: 226px;
      width: 100%;
    }
    .services-exact .turnkey h2 {
      font: 500 20px/25px "Unbounded", sans-serif;
    }
    .services-exact .turnkey p {
      margin: 16px 0;
      font: 500 12px/15px "Montserrat", sans-serif;
    }
    .services-exact .turnkey a {
      width: 121px;
      height: 41px;
      font: 500 11px/41px "Montserrat", sans-serif;
    }
    .services-exact .request {
      left: var(--mobile-gutter);
      top: 1167px;
      width: var(--mobile-content);
      height: 973px;
    }
    .services-exact .request > img {
      width: 100%;
      height: 341px;
      border-radius: 0;
      object-fit: cover;
    }
    .services-exact .request form {
      left: 0;
      top: 356px;
      width: 100%;
      height: 617px;
      padding: 30px;
      border-radius: 15px;
    }
    .services-exact .request h2 {
      font: 400 28px/36px "Unbounded", sans-serif;
    }
    .services-exact .request p {
      width: 100%;
      margin: 24px 0;
      font: 300 12px/16px "Montserrat", sans-serif;
    }
    .services-exact .request input:not([type=checkbox]),
  .services-exact .request textarea {
      width: 100%;
      padding: 0 24px;
      font-size: 12px;
    }
    .services-exact .request input:not([type=checkbox]) {
      height: 48px;
      margin-bottom: 14px;
    }
    .services-exact .request textarea {
      height: 107px;
      padding-top: 24px;
    }
    .services-exact .request button {
      left: 50%;
      right: auto;
      top: 471px;
      width: 180px;
      height: 59px;
      font-size: 14px;
    }
    .services-exact .request label {
      left: 50%;
      top: 554px;
      width: 213px;
      height: 32px;
      padding-right: 20px;
      transform: translateX(-50%);
      font-size: 12px;
      line-height: 16px;
      text-align: left;
    }
    .services-exact .request label input[type=checkbox] {
      position: absolute;
      left: 193px;
      top: 6px;
      margin: 0;
    }
    .news-wall--top {
      left: 0;
      top: 0;
      width: 100%;
      height: 2097px;
      background-color: #b9aa9c;
      background-image: url("/assets/mobile/news-bg-c-exact.3df3fc0a52.webp"), url("/assets/mobile/news-bg-b-exact.0c141c122e.webp"), url("/assets/mobile/news-bg-c-exact.3df3fc0a52.webp"), url("/assets/mobile/news-bg-b-exact.0c141c122e.webp");
      background-position: center 0, center 603px, center 1206px, center 1807px;
      background-size: 100% 603px;
      background-repeat: no-repeat;
    }
    .news-wall--bottom {
      display: none;
    }
    .news-hero {
      left: 0;
      top: 0;
      width: 100%;
      height: 302px;
    }
    .news-hero__paper--main {
      left: 41px;
      top: 83px;
      width: 210px;
      height: 189px;
    }
    .news-hero__paper--side {
      left: 260px;
      top: 133px;
      width: 101px;
      height: 90px;
    }
    .news-water {
      display: none;
    }
    .news-hero h1 {
      left: 50%;
      top: 143px;
      width: 210px;
      font: 400 40px/50px "Unbounded", sans-serif;
    }
    .news-exact .latest {
      left: var(--mobile-gutter);
      top: 302px;
      display: block;
      width: var(--mobile-content);
      height: 649px;
    }
    .latest-feature {
      left: 0;
      top: 0;
      width: 100%;
      height: 226px;
      border-radius: 15px;
      overflow: hidden;
    }
    .latest-feature img {
      width: 100%;
      height: 226px;
      border-radius: 15px;
      object-fit: cover;
    }
    .latest-feature h2 {
      left: 34px;
      top: 113px;
      bottom: auto;
      width: calc(100% - 68px);
      font: 600 16px/21px "Montserrat", sans-serif;
    }
    .latest-list {
      left: 0;
      top: 256px;
      width: 100%;
      height: 393px;
    }
    .latest-list > h2 {
      left: 0;
      top: 0;
      width: 273px;
      font: 400 24px/30px "Unbounded", sans-serif;
    }
    .latest-mobile-break,
    .useful-prepare-mobile-break {
      display: block;
    }
    .useful-prepare-desktop-break {
      display: none;
    }
    .latest-list article {
      left: 0;
      width: 100%;
      height: 101px;
      margin: 0;
    }
    .latest-list article:nth-of-type(1) {
      top: 76px;
    }
    .latest-list article:nth-of-type(2) {
      top: 193px;
    }
    .latest-list article:nth-of-type(3) {
      top: 308px;
    }
    .latest-list article img {
      left: 0;
      top: 0;
      width: 101px;
      height: 101px;
      border-radius: 10px;
      object-fit: cover;
    }
    .latest-list article h3 {
      left: 121px;
      top: 8px;
      width: calc(100% - 121px);
      font: 600 12px/15px "Montserrat", sans-serif;
    }
    .latest-list article time {
      left: 121px;
      top: 67px;
      font-size: 10px;
    }
    .latest-list article:nth-of-type(2) time,
  .latest-list article:nth-of-type(3) time {
      top: 69px;
    }
    .latest-list .read-small,
  .latest-list article:nth-of-type(2) .read-small,
  .latest-list article:nth-of-type(3) .read-small {
      left: auto;
      right: 0;
      top: 58px;
      width: 101px;
      height: 35px;
      font: 400 12px/35px "Montserrat", sans-serif;
    }
    .news-exact .useful {
      left: var(--mobile-gutter);
      top: 1041px;
      width: var(--mobile-content);
      height: 996px;
    }
    .useful > h2 {
      left: 0;
      top: 0;
      font: 400 24px/30px "Unbounded", sans-serif;
    }
    .useful-card {
      left: 0;
      width: 100%;
      border-radius: 15px;
      overflow: hidden;
    }
    .useful-card--main {
      top: 60px;
      height: 230px;
    }
    .useful-card--prepare {
      top: 305px;
      height: 111px;
    }
    .useful-card--help {
      top: 431px;
      height: 109px;
    }
    .useful-card--cargo {
      top: 600px;
      height: 108px;
    }
    .useful-card--burial {
      top: 680px;
      height: 108px;
    }
    .useful-card--cremation {
      top: 808px;
      height: 108px;
    }
    .useful-card--products {
      top: 888px;
      height: 108px;
    }
    .useful-card img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .useful-card h3 {
      left: 24px;
      top: auto;
      bottom: 24px;
      width: calc(100% - 48px);
      font: 500 12px/15px "Unbounded", sans-serif;
    }
    .useful-card--main h3 {
      left: 61px;
      top: 79px;
      bottom: auto;
      width: 221px;
      font-size: 16px;
      line-height: 20px;
    }
    .useful-card--wide h3 {
      left: 34px;
      top: 37px;
      bottom: auto;
    }
    .read-large {
      display: none;
    }
    .read-glass {
      z-index: 3;
      left: auto;
      top: auto;
      right: 10px;
      bottom: 10px;
      display: flex;
      width: 72px;
      height: 28px;
      font: 400 9px/28px "Montserrat", sans-serif;
    }
    .useful-card--prepare .read-glass,
  .useful-card--help .read-glass {
      right: 0;
      bottom: 0;
    }
    .useful-card--cremation .read-glass {
      display: flex;
    }
    .contacts-body-bg {
      left: 0;
      width: 100%;
      opacity: 1;
    }
    .contacts-body-bg--main {
      top: 250px;
      height: 2080px;
      background-image: url("/assets/mobile/contacts-bg-a-exact.b499ba3391.webp"), url("/assets/mobile/contacts-bg-b-exact.b18b924157.webp"), url("/assets/mobile/contacts-bg-a-exact.b499ba3391.webp"), url("/assets/mobile/contacts-bg-d-exact.393793f1cb.webp");
      background-position: center 0, center 536px, center 1072px, center 1608px;
      background-size: 100% 536px, 100% 536px, 100% 536px, 100% 472px;
      background-repeat: no-repeat;
      transform: none;
    }
    .contacts-body-bg--lower {
      display: none;
    }
    .contacts-hero {
      left: 0;
      top: 0;
      width: 100%;
      height: 380px;
    }
    .contacts-hero__bg {
      left: 0;
      top: 0;
      width: 100%;
      height: 313px;
      border-radius: 0 0 40px 40px;
      object-fit: fill;
      object-position: center;
    }
    .contacts-hero__glass {
      display: none;
    }
    .contacts-hero__title {
      left: var(--mobile-gutter);
      top: 121px;
      width: var(--mobile-content);
      font: 400 24px/30px "Unbounded", sans-serif;
      white-space: normal;
    }
    .contacts-hero__lead {
      left: var(--mobile-gutter);
      top: 199px;
      width: var(--mobile-content);
      font: 400 10px/13px "Montserrat", sans-serif;
    }
    .contacts-hero__cta {
      left: 50%;
      top: 288px;
      width: 150px;
      height: 50px;
    }
    .contacts-hero__cta {
      background: rgba(255,255,255,.25);
      -webkit-backdrop-filter: blur(8px) saturate(1.02);
      backdrop-filter: blur(8px) saturate(1.02);
      box-shadow: inset 0 1px 1px rgba(255,255,255,.5), 0 4px 12px rgba(104,84,68,.08);
    }
    .contacts-hero__cta .figma-glass__tint {
      background: rgba(255,255,255,.18);
    }
    .contacts-hero__cta .figma-glass__specular {
      opacity: .42;
    }
    .contacts-hero__cta > i {
      inset: 5px;
    }
    .contacts-hero__cta > span {
      font-size: 14px;
      line-height: 17px;
    }
    .contacts-hero__cta > span {
      white-space: nowrap;
    }
    .contacts-hero__cta-scene {
      display: none;
    }
    .contacts-connect {
      left: 0;
      top: 380px;
      width: 100%;
      height: 439px;
    }
    .contacts-tag {
      left: var(--mobile-gutter);
      top: 0;
      font-size: 10px;
      line-height: 13px;
    }
    .contacts-connect > h2 {
      left: var(--mobile-gutter);
      top: 24px;
      font-size: 24px;
      line-height: 30px;
    }
    .contacts-card,
  .contacts-card--phone,
  .contacts-card--office {
      left: var(--mobile-gutter);
      width: var(--mobile-content);
      height: 157px;
    }
    .contacts-card--phone {
      top: 78px;
    }
    .contacts-card--office {
      top: 251px;
    }
    .contacts-card__art {
      width: 100%;
      height: 135px;
      object-fit: fill;
    }
    .contacts-card__hit {
      right: 0;
      top: 101px;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 114px;
      height: 34px;
      border-radius: 17px;
      background: #a9978b;
      color: #fff;
    }
    .contacts-card__select {
      color: #fff;
    }
    .contacts-card__select-title {
      left: 0;
      top: 0;
      color: #595552;
      font-size: 12px;
      line-height: 30px;
    }
    .contacts-card__select-copy {
      left: 18px;
      top: 45px;
      width: 297px;
      color: #fff;
      font: 400 12px/15px "Montserrat", sans-serif;
    }
    .contacts-map {
      left: 0;
      top: 819px;
      width: 100%;
      height: 469px;
    }
    .contacts-map__backtext {
      left: 0;
      top: 0;
      width: 439px;
      height: 206px;
      font-size: 50px;
    }
    .contacts-map__backtext span:nth-child(1) {
      top: 0;
    }
    .contacts-map__backtext span:nth-child(2) {
      top: 48px;
    }
    .contacts-map__backtext span:nth-child(3) {
      top: 96px;
    }
    .contacts-map__backtext span:nth-child(4) {
      top: 144px;
    }
    .contacts-map > h2 {
      left: var(--mobile-gutter);
      top: 17px;
      font-size: 24px;
      line-height: 30px;
    }
    .contacts-map > p {
      left: var(--mobile-gutter);
      top: 59px;
      width: var(--mobile-content);
      font-size: 12px;
      line-height: 16px;
    }
    .contacts-map__frame {
      left: var(--mobile-gutter);
      top: 153px;
      width: var(--mobile-content);
      height: 256px;
      border-radius: 0;
      box-shadow: none;
    }
    .contacts-map__frame img {
      width: 100%;
      height: 256px;
      object-fit: none;
      object-position: center calc(50% + 4px);
    }
    .contacts-form {
      left: var(--mobile-form-gutter);
      top: 1288px;
      width: var(--mobile-form-width);
      height: 982px;
    }
    .contacts-form__shadow {
      display: none;
    }
    .contacts-form__exact {
      display: block;
      left: 0;
      top: 0;
      width: 100%;
      height: 355px;
      border-radius: 15px;
      object-fit: cover;
    }
    .contacts-form__panel {
      left: 0;
      top: 365px;
      width: 100%;
      height: 617px;
      padding: 30px;
      border-radius: 15px;
      overflow: hidden;
      color: #543f32;
      background: linear-gradient(rgba(255,255,255,.25), rgba(255,255,255,.25)), url("/assets/mobile/contacts-form-panel.17dd60f042.webp") center/cover no-repeat;
      box-shadow: none;
    }
    .contacts-form__panel h2 {
      position: static;
      width: 100%;
      color: #543f32;
      font: 400 28px/36px "Unbounded", sans-serif;
    }
    .contacts-form__lead {
      position: static;
      width: 100%;
      margin-top: 24px;
      color: #543f32;
      font: 300 12px/16px "Montserrat", sans-serif;
    }
    .contacts-input {
      left: 30px;
      width: calc(100% - 60px);
      background: rgba(255,255,255,.25);
      box-shadow: 0 0 50px rgba(174,152,131,.25);
    }
    .contacts-input--name {
      top: 211px;
      height: 48px;
    }
    .contacts-input--phone {
      top: 273px;
      height: 48px;
    }
    .contacts-input--message {
      top: 335px;
      height: 107px;
    }
    .contacts-input input,
  .contacts-input textarea {
      padding: 0 24px;
      color: #595552;
      font-size: 12px;
    }
    .contacts-input textarea {
      padding-top: 24px;
    }
    .contacts-input input::placeholder,
  .contacts-input textarea::placeholder {
      color: rgba(89,85,82,.38);
    }
    .contacts-submit {
      left: calc(50% - 90px);
      top: 522px;
      width: 180px;
      height: 59px;
      background: #543f32;
      color: #fff;
      font-size: 14px;
    }
    .contacts-consent {
      left: 50%;
      top: 466px;
      width: 213px;
      height: 32px;
      color: #543f32;
      font-size: 12px;
      line-height: 16px;
      text-align: left;
    }
    .contacts-consent .privacy-consent-link {
      display: block;
      width: 193px;
    }
    .contacts-consent input {
      left: 193px;
      top: 6px;
      width: 20px;
      height: 20px;
      margin: 0;
      opacity: 1;
      border: 0;
      border-radius: 5px;
      outline: 0;
      background: #fff;
      box-shadow: none;
      appearance: none;
      -webkit-appearance: none;
    }
    .contacts-consent input:checked {
      background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3 3 7-7' fill='none' stroke='%23543f32' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px 16px no-repeat;
    }
    .contacts-consent input:hover,
  .contacts-consent input:focus,
  .contacts-consent input:focus-visible {
      outline: 0;
      box-shadow: none;
      filter: none;
    }
    .contacts-consent > i {
      display: none;
    }
    .contacts-family {
      left: var(--mobile-gutter);
      top: 2330px;
      width: var(--mobile-content);
    }
    .contacts-family h2 {
      font: 400 24px/24px "Unbounded", sans-serif;

    }
    .contacts-family__copy {
      font: 400 14px/18px "Montserrat", sans-serif;
    }
    .contacts-family__copy p {
      margin-bottom: 9px;
    }
    .contacts-family__copy br {
      display: none;
    }
  }
  @media (max-width: 359px) {
    .hero__title {
      font-size: 27px;
      line-height: 32px;
      letter-spacing: -1.4px;
    }
    .hero__description {
      width: var(--mobile-content);
    }
    .hero__note {
      width: var(--mobile-content);
      white-space: normal;
    }
    .folder-card__text p {
      font-size: 11px;
    }
    .footer__nav nav {
      left: 8px;
    }
    .footer__policy {
      left: 142px;
    }
    .contacts-exact > .footer .footer__nav nav {
      left: 8px;
    }
    .contacts-exact > .footer .footer__policy {
      left: 120px;
      width: 140px;
    }
    .price-card__art {
      width: 82px;
    }
    .price-card--cremation .price-card__art {
      width: 72px;
    }
    .price-card__body {
      left: 100px;
      width: calc(100% - 106px);
    }
    .price-card__body ul {
      width: 100%;
    }
    .statement__text {
      left: var(--mobile-gutter);
      width: calc(var(--mobile-content) - 20px);
    }
    .statement__signature {
      left: auto;
      right: 44px;
    }
    .services-exact .s-hero h1 {
      font-size: 31px;
      line-height: 39px;
      letter-spacing: -1.5px;
      white-space: nowrap;
    }
    .services-exact .c4 {
      left: calc(50% - 86px);
    }
    .news-hero h1 {
      font-size: 34px;
    }
    .contacts-hero__title {
      font-size: 21px;
      line-height: 26px;
    }
    .contacts-hero__lead {
      top: 205px;
    }
    .latest-list article img {
      width: 80px;
      height: 80px;
    }
    .latest-list article h3 {
      left: 96px;
      width: calc(100% - 96px);
      font-size: 10px;
      line-height: 13px;
    }
    .latest-list article time {
      left: 96px;
    }
    .latest-list .read-small,
  .latest-list article:nth-of-type(2) .read-small,
  .latest-list article:nth-of-type(3) .read-small {
      width: 80px;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .topbar__nav,
  .services-exact .cc {
      transition: none;
    }
  }
  @media (width <= 767px) {
    .topbar__nav,
  .contacts-exact .topbar__nav {
      display: none;
    }
    .topbar.is-mobile-sticky,
  .contacts-exact .topbar.is-mobile-sticky,
  .privacy-page .topbar.is-mobile-sticky {
      position: fixed;
      left: var(--mobile-header-gutter);
      top: 10px;
      width: var(--mobile-header-width);
      height: 48px;
      color: #fff;
    }
    .topbar.is-mobile-sticky .topbar__logo {
      left: 10px;
      top: 10px;
    }
    .topbar.is-mobile-sticky .topbar__phone {
      right: 10px;
      top: 10px;
    }
    .topbar.is-mobile-sticky .mobile-menu-toggle {
      top: 10px;
    }
    .topbar.is-mobile-sticky .topbar__logo img,
  .topbar.is-mobile-sticky .topbar__phone img {
      filter: brightness(0) invert(1);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .topbar.is-mobile-sticky {
      animation: none;
    }
    .mobile-drawer,
  .mobile-drawer-backdrop {
      transition-duration: .01ms;
    }
  }
  @media (width <= 767px) {
    .contacts-family {
      height: 276px;
    }
    .contacts-family::before {
      inset: 0;
      width: 100%;
      height: 100%;
      border-radius: 30px;
      background: rgba(255,255,255,.18);
      -webkit-backdrop-filter: blur(8px);
      backdrop-filter: blur(8px);
    }
    .contacts-family h2 {
      left: 24px;
      top: 27px;
      width: calc(100% - 48px);
      text-align: center;
    }
    .contacts-family__copy {
      left: 24px;
      top: 112px;
      width: calc(100% - 48px);
    }
  }
}



@layer doverie-components {
  /* Tablets intentionally reuse the approved 1920px desktop composition,
     scaled by 01-shell.css. The floating header lives outside that artboard,
     so it receives its own compact tablet geometry to prevent collisions. */
  @media (min-width: 768px) and (max-width: 1279px) {
    .floating-header {
      top: 12px;
      grid-template-columns: clamp(96px, 11vw, 132px) minmax(0, 1fr) clamp(126px, 16vw, 176px);
      width: calc(100vw - 24px);
      height: clamp(48px, 5.1vw, 58px);
      padding: 0 clamp(12px, 1.8vw, 20px);
      border-radius: 19px;
    }

    .floating-header__logo {
      width: clamp(92px, 10.5vw, 120px);
      height: auto;
      aspect-ratio: 154 / 43;
    }

    .floating-header__nav {
      width: 100%;
      justify-content: center;
      gap: clamp(14px, 2.2vw, 28px);
      padding-inline: clamp(4px, 0.8vw, 10px);
    }

    .floating-header__nav a {
      min-height: 30px;
      padding: 0 clamp(4px, 0.55vw, 7px);
      font-size: clamp(8.5px, 0.9vw, 11px);
      line-height: 1.2;
    }

    .floating-header__phones {
      gap: 1px;
    }

    .floating-header__phones a {
      font-size: clamp(8px, 0.85vw, 10.5px);
      line-height: 1.3;
      letter-spacing: clamp(.45px, 0.08vw, 1px);
    }

    /* The tablet font is smaller than the authored desktop font while the
       navigation hit areas keep their desktop geometry. Centre the label in
       its hit area so the active rounded frame remains optically balanced. */
    .topbar__nav a {
      text-align: center;
    }

    /* Decorative imagery follows the scaled desktop artboard. At tablet
       widths the 1280px source is enough for 1x screens, while higher-density
       displays can select the 1920px candidate without changing geometry. */
    .design-page .scene--pricing.is-background-loaded::before {
      background-image: image-set(
        url("/assets/figma/pricing-bg-w1280.549bb9c3eb.avif") type("image/avif") 1x,
        url("/assets/figma/pricing-bg-w1280.ae6b70a45b.webp") type("image/webp") 1x,
        url("/assets/figma/pricing-bg-w1920.fdb4e2b9db.avif") type("image/avif") 1.5x,
        url("/assets/figma/pricing-bg-w1920.03864e73b3.webp") type("image/webp") 1.5x
      );
    }

    .design-page .scene--workflow.is-background-loaded::before {
      background-image: image-set(
        url("/assets/figma/workflow-bg-w1280.2ad40738d8.avif") type("image/avif") 1x,
        url("/assets/figma/workflow-bg-w1280.22634d0d08.webp") type("image/webp") 1x,
        url("/assets/figma/workflow-bg-w1920.ea80a88300.avif") type("image/avif") 1.5x,
        url("/assets/figma/workflow-bg-w1920.9dc256d4da.webp") type("image/webp") 1.5x
      );
    }

    .design-page .scene--footer.is-background-loaded {
      background-image: image-set(
        url("/assets/figma/footer-bg-w1280.04f51253b0.avif") type("image/avif") 1x,
        url("/assets/figma/footer-bg-w1280.b963925983.webp") type("image/webp") 1x,
        url("/assets/figma/footer-bg-w1920.b54ffca561.avif") type("image/avif") 1.5x,
        url("/assets/figma/footer-bg-w1920.2add2911d0.webp") type("image/webp") 1.5x
      );
    }

    .services-exact .wall {
      background-image: image-set(
        url("/assets/services-local/wall-sharp-w1280.ee39f4e7ae.avif") type("image/avif") 1x,
        url("/assets/services-local/wall-sharp-w1280.8dca2229c6.webp") type("image/webp") 1x,
        url("/assets/services-local/wall-sharp-w1920.843bb17d43.avif") type("image/avif") 1.5x,
        url("/assets/services-local/wall-sharp-w1920.fe0014d47f.webp") type("image/webp") 1.5x
      );
    }

    .services-exact .wall-3.is-background-loaded {
      background-image: image-set(
        url("/assets/services-local/wall-bottom-sharp-w1280.e73bbb0735.avif") type("image/avif") 1x,
        url("/assets/services-local/wall-bottom-sharp-w1280.87db02f1f5.webp") type("image/webp") 1x,
        url("/assets/services-local/wall-bottom-sharp-w1920.c78d917af1.avif") type("image/avif") 1.5x,
        url("/assets/services-local/wall-bottom-sharp-w1920.c4a7fe36cf.webp") type("image/webp") 1.5x
      );
    }

    :is(.services-exact .service-footer-scene, .news-exact .news-footer-scene, .contacts-exact .contacts-footer-scene).is-background-loaded {
      background-image: image-set(
        url("/assets/services-local/footer-bg-services-w1280.bbb180efa8.avif") type("image/avif") 1x,
        url("/assets/services-local/footer-bg-services-w1280.f26033d3dc.webp") type("image/webp") 1x,
        url("/assets/services-local/footer-bg-services-w1920.bd6fcff261.avif") type("image/avif") 1.5x,
        url("/assets/services-local/footer-bg-services-w1920.0f2435af1f.webp") type("image/webp") 1.5x
      );
    }

    .news-exact :is(.news-wall--top, .news-water__background) {
      background-image: image-set(
        url("/assets/news-local/bg-top-w1280.3b6dd2ffac.avif") type("image/avif") 1x,
        url("/assets/news-local/bg-top-w1280.28cac0eae8.webp") type("image/webp") 1x,
        url("/assets/news-local/bg-top-w1920.e6c132ec37.avif") type("image/avif") 1.5x,
        url("/assets/news-local/bg-top-w1920.2249ccf01a.webp") type("image/webp") 1.5x
      );
    }

    .news-exact .news-wall--bottom.is-background-loaded {
      background-image: image-set(
        url("/assets/news-local/bg-bottom-w1280.8ab3ee1815.avif") type("image/avif") 1x,
        url("/assets/news-local/bg-bottom-w1280.bd9a96abbc.webp") type("image/webp") 1x,
        url("/assets/news-local/bg-bottom-w1920.5b2f1c2bc4.avif") type("image/avif") 1.5x,
        url("/assets/news-local/bg-bottom-w1920.5a254773fd.webp") type("image/webp") 1.5x
      );
    }

    .contacts-exact :is(.contacts-body-bg--main, .contacts-body-bg--lower),
    .contacts-exact .contacts-hero__cta-body::before {
      background-image: image-set(
        url("/assets/contacts-final/body-texture-exact-w1280.d8f4f51c09.avif") type("image/avif") 1x,
        url("/assets/contacts-final/body-texture-exact-w1280.1f57325eff.webp") type("image/webp") 1x,
        url("/assets/contacts-final/body-texture-exact-w1920.2ae8ebcd6f.avif") type("image/avif") 1.5x,
        url("/assets/contacts-final/body-texture-exact-w1920.a34f8e1aab.webp") type("image/webp") 1.5x
      );
    }
  }

  /* Small notebooks keep the links comfortably spread without stretching
     them across the entire centre track. */
  @media (min-width: 1280px) and (max-width: 1599px) {
    .floating-header {
      grid-template-columns: clamp(150px, 12vw, 180px) minmax(0, 1fr) clamp(190px, 17vw, 225px);
      width: calc(100vw - 40px);
      padding-inline: clamp(20px, 2vw, 28px);
    }

    .floating-header__nav {
      width: 100%;
      justify-content: center;
      gap: clamp(32px, 3.5vw, 52px);
      padding-inline: clamp(8px, 1.2vw, 18px);
    }

    .floating-header__nav a {
      padding-inline: clamp(7px, 0.8vw, 11px);
      font-size: clamp(12px, 1vw, 15px);
    }

    .floating-header__phones a {
      font-size: clamp(11px, 0.95vw, 14px);
      letter-spacing: clamp(.8px, 0.1vw, 1.5px);
    }
  }
}
