@layer doverie-base {
  :root {
    --interaction-ease: cubic-bezier(.22, 1, .36, 1);
  }
  :where(a, button, input, textarea):focus-visible {
    outline: 3px solid rgba(255, 255, 255, .96);
    outline-offset: 4px;
    box-shadow: 0 0 0 2px rgba(89, 85, 82, .72);
  }
  button {
    font: inherit;
  }
  .price-card__button {
    cursor: pointer;
    transition: opacity 260ms var(--interaction-ease), transform 260ms var(--interaction-ease), filter 180ms ease;
  }
  .pricing > .pricing__tag,
.pricing > .pricing__title,
.pricing > .pricing__copy,
.pricing > .price-card {
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: opacity 0s linear, transform 0s linear, visibility 0s linear;
  }
  .pricing.is-expanded > .pricing__tag,
.pricing.is-expanded > .pricing__title,
.pricing.is-expanded > .pricing__copy,
.pricing.is-expanded > .price-card {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(10px);
    transition: opacity 300ms var(--interaction-ease), transform 500ms var(--interaction-ease), visibility 0s linear 500ms;
  }
  .pricing-expanded {
    position: absolute;
    z-index: 8;
    left: 135px;
    top: 111px;
    display: grid;
    grid-template-columns: 365px minmax(0, 1fr);
    gap: 60px;
    width: 1650px;
    height: 750px;
    padding: 60px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .9);
    border-radius: 30px;
    background: rgba(216, 207, 198, .2);
    box-shadow: 0 4px 250px rgba(0, 0, 0, .25);
    -webkit-backdrop-filter: blur(10px) saturate(.98);
    backdrop-filter: blur(10px) saturate(.98);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(18px) scale(.992);
    transform-origin: 50% 40%;
    transition: opacity 440ms var(--interaction-ease), transform 560ms var(--interaction-ease), visibility 0s linear 560ms;
  }
  .pricing-expanded.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    transition-delay: 80ms, 80ms, 0s;
  }
  .pricing-expanded__media {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 365px;
    height: 550px;
  }
  .pricing-expanded__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .pricing-expanded[data-kind="cremation"] .pricing-expanded__media img {
    width: 330px;
  }
  .pricing-expanded__content {
    min-width: 0;
    padding: 18px 0 74px;
  }
  .pricing-expanded__heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 32px;
  }
  .pricing-expanded__heading h3 {
    margin: 0;
    font: 400 52px/64px "Unbounded", sans-serif;
  }
  .pricing-expanded__heading .price {
    margin: 5px 0 0;
  }
  .pricing-expanded__heading .price span {
    font: 400 42px/52px "Unbounded", sans-serif;
  }
  .pricing-expanded__heading .price small {
    margin: 22px 0 0 8px;
    font: 400 16px/20px "Unbounded", sans-serif;
  }
  .pricing-expanded__copy {
    max-width: 1020px;
    margin-top: 32px;
    font: 400 19px/26px "Montserrat", sans-serif;
  }
  .pricing-expanded__copy p + p {
    margin-top: 18px;
  }
  .pricing-expanded__pills {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px 10px;
    margin-top: 25px;
  }
  .pricing-expanded__pills span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    height: 60px;
    min-height: 60px;
    padding: 12px 18px;
    border: 1px solid rgba(255, 255, 255, .64);
    border-radius: 100px;
    background: rgba(216, 207, 198, .86);
    font: 500 16px/20px "Montserrat", sans-serif;
    text-align: center;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 360ms var(--interaction-ease), transform 440ms var(--interaction-ease);
  }
  .pricing-expanded.is-active .pricing-expanded__pills span {
    opacity: 1;
    transform: none;
  }
  .pricing-expanded.is-active .pricing-expanded__pills span:nth-child(1) {
    transition-delay: 180ms;
  }
  .pricing-expanded.is-active .pricing-expanded__pills span:nth-child(2) {
    transition-delay: 210ms;
  }
  .pricing-expanded.is-active .pricing-expanded__pills span:nth-child(3) {
    transition-delay: 240ms;
  }
  .pricing-expanded.is-active .pricing-expanded__pills span:nth-child(4) {
    transition-delay: 270ms;
  }
  .pricing-expanded.is-active .pricing-expanded__pills span:nth-child(5) {
    transition-delay: 300ms;
  }
  .pricing-expanded.is-active .pricing-expanded__pills span:nth-child(6) {
    transition-delay: 330ms;
  }
  .pricing-expanded.is-active .pricing-expanded__pills span:nth-child(7) {
    transition-delay: 360ms;
  }
  .pricing-expanded.is-active .pricing-expanded__pills span:nth-child(8) {
    transition-delay: 390ms;
  }
  .pricing-expanded.is-active .pricing-expanded__pills span:nth-child(9) {
    transition-delay: 420ms;
  }
  .pricing-expanded__collapse {
    position: absolute;
    right: 60px;
    bottom: 42px;
    width: 168px;
    height: 54px;
    border: 1px solid rgba(255, 255, 255, .86);
    border-radius: 100px;
    background: rgba(255, 255, 255, .18);
    color: #595552;
    cursor: pointer;
  }
  .faq__item {
    position: relative;
    width: 1093px;
    height: 74px;
    overflow: visible;
    border-radius: 37px;
    transition: height 380ms var(--interaction-ease), background 280ms ease, box-shadow 280ms ease;
  }
  .faq__question {
    position: absolute;
    z-index: 4;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    border-radius: inherit;
    background: transparent;
    color: var(--ink);
    cursor: pointer;
    appearance: none;
  }
  .faq__item summary i {
    transition: transform 320ms var(--interaction-ease);
  }
  .faq__item.is-open {
    height: var(--faq-open-height, 148px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .88);
    background: linear-gradient(90deg, rgba(188,178,168,.2), rgba(223,219,213,.2));
    box-shadow: 0 10px 38px rgba(110, 91, 75, .08);
  }
  .faq__item summary {
    transition: border-color 180ms ease, background-color 180ms ease;
  }
  .faq__item.is-open summary {
    border-color: transparent;
    background: transparent;
  }
  .faq__item.is-open summary i {
    transform: rotate(45deg);
  }
  .faq__answer {
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    top: 67px;
    padding: 11px 88px 18px 26px;
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity 260ms ease, transform 340ms var(--interaction-ease);
  }
  .faq__item.is-open .faq__answer {
    opacity: 1;
    transform: none;
    transition-delay: 70ms;
  }
  .faq__answer p {
    margin: 0;
    font: 400 16px/22px "Montserrat", sans-serif;
  }
  .design-page,
.design-page .scene--footer,
.design-page > .footer {
    transition: height 460ms var(--interaction-ease);
  }
  .footer__cta-glass,
.footer__cta-shape,
.footer__cta-copy,
.footer__cta-button {
    transition: opacity 300ms ease, transform 440ms var(--interaction-ease), visibility 0s linear 0s;
  }
  .statement {
    transition: opacity 300ms ease, transform 440ms var(--interaction-ease), visibility 0s linear 0s;
  }
  .footer-online-form {
    position: absolute;
    z-index: 9;
    left: 135px;
    top: -267px;
    width: 1650px;
    height: 800px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(24px) scale(.992);
    transition: opacity 320ms ease, transform 460ms var(--interaction-ease), visibility 0s linear 460ms;
  }
  .footer-online-form.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    transition-delay: 55ms, 35ms, 0s;
  }
  .footer-online-form__exact {
    position: absolute;
    left: 0;
    top: 0;
    width: 1650px;
    height: 800px;
    object-fit: fill;
    pointer-events: none;
    user-select: none;
    -webkit-mask: url("/assets/contacts-final/form-cutout-mask.a71cebee53.svg") center/100% 100% no-repeat;
    mask: url("/assets/contacts-final/form-cutout-mask.a71cebee53.svg") center/100% 100% no-repeat;
  }
  .footer-online-form__panel {
    position: absolute;
    left: 663px;
    top: 0;
    width: 986px;
    height: 800px;
    padding: 0;
    border-radius: 30px;
    background: transparent;
    color: #595552;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .footer-online-form__panel h2 {
    position: absolute;
    left: 50px;
    top: 78px;
    width: 724px;
    margin: 0;
    color: transparent;
    font: 400 40px/52px "Unbounded", sans-serif;
  }
  .footer-online-form__panel > p {
    position: absolute;
    left: 50px;
    top: 160px;
    width: 812px;
    margin: 0;
    color: transparent;
    font: 300 20px/26px "Montserrat", sans-serif;
  }
  .footer-online-form__panel > input,
.footer-online-form__panel > textarea {
    position: absolute;
    left: 50px;
    display: block;
    width: 886px;
    border: 0;
    border-radius: 30px;
    outline: 0;
    background: transparent;
    box-shadow: none;
    color: #595552;
    font: 300 16px "Montserrat", sans-serif;
  }
  .footer-online-form__panel > input {
    top: 286px;
    height: 65px;
    margin: 0;
    padding: 0 27px;
  }
  .footer-online-form__panel > input[name="phone"] {
    top: 381px;
  }
  .footer-online-form__panel > textarea {
    top: 476px;
    height: 140px;
    padding: 27px;
    resize: none;
  }
  .footer-online-form__panel > input::placeholder,
.footer-online-form__panel > textarea::placeholder {
    color: transparent;
  }
  .footer-online-form__panel > label {
    position: absolute;
    left: 50px;
    top: 677px;
    color: transparent;
    font-size: 16px;
    font-weight: 300;
  }
  .footer-online-form__panel > label input {
    width: 20px;
    height: 20px;
    margin-left: 14px;
    opacity: 0;
    vertical-align: middle;
  }
  .footer-online-form__panel > button[type="submit"] {
    position: absolute;
    right: 50px;
    top: 650px;
    width: 220px;
    height: 74px;
    border: 0;
    border-radius: 100px;
    background: transparent;
    color: transparent;
    cursor: pointer;
    font: 400 20px "Montserrat", sans-serif;
  }
  .footer-online-form__close {
    position: absolute;
    z-index: 2;
    right: 45px;
    top: 24px;
    border: 0;
    background: transparent;
    color: #595552;
    cursor: pointer;
    font: 500 14px/20px "Montserrat", sans-serif;
  }
  .design-page.is-footer-form-open {
    height: 7878px;
  }
  .design-page.is-footer-form-open .scene--footer {
    height: 786px;
  }
  .design-page.is-footer-form-open > .footer {
    height: 1111px;
  }
  .design-page.is-footer-form-open .footer__cta-glass,
.design-page.is-footer-form-open .footer__cta-shape,
.design-page.is-footer-form-open .footer__cta-copy,
.design-page.is-footer-form-open .footer__cta-button {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-18px) scale(.985);
    transition-delay: 0s, 0s, 440ms;
  }
  .design-page.is-footer-form-open .statement {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-18px) scale(.985);
    transition-delay: 0s, 0s, 440ms;
  }
  .design-page.is-footer-form-open .footer__backword--upper {
    top: 552px;
  }
  .design-page.is-footer-form-open .footer__backword--lower {
    top: 686px;
  }
  .design-page.is-footer-form-open .footer__logo {
    top: 667px;
  }
  .design-page.is-footer-form-open .footer__rating {
    top: 853px;
  }
  .design-page.is-footer-form-open .footer__nav,
.design-page.is-footer-form-open .footer__contacts {
    top: 671px;
  }
  .footer__backword,
.footer__logo,
.footer__rating,
.footer__nav,
.footer__contacts {
    transition: top 460ms var(--interaction-ease), margin-top 460ms var(--interaction-ease);
  }
  .form-status {
    position: absolute;
    z-index: 20;
    left: 50px;
    right: 50px;
    bottom: 14px;
    min-height: 20px;
    margin: 0;
    color: #6f493a;
    font: 500 13px/18px "Montserrat", sans-serif;
  }
  .footer-online-form__panel > label,
.contacts-consent {
    cursor: pointer;
  }
  .footer-online-form__panel > label .project-consent-checkbox,
.contacts-consent .project-consent-checkbox {
    opacity: 1;
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 0;
    border-radius: 5px;
    background: #fff;
    box-shadow: none;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    outline: 0;
  }
  .footer-online-form__panel > label .project-consent-checkbox:checked,
.contacts-consent .project-consent-checkbox: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;
  }
  .footer-online-form__panel > label .project-consent-checkbox:hover,
.footer-online-form__panel > label .project-consent-checkbox:focus,
.footer-online-form__panel > label .project-consent-checkbox:focus-visible,
.contacts-consent .project-consent-checkbox:hover,
.contacts-consent .project-consent-checkbox:focus,
.contacts-consent .project-consent-checkbox:focus-visible {
    outline: 0;
    box-shadow: none;
    filter: none;
  }
  .footer-online-form__panel > label .project-consent-checkbox:hover:not(:checked),
.footer-online-form__panel > label .project-consent-checkbox:focus:not(:checked),
.footer-online-form__panel > label .project-consent-checkbox:focus-visible:not(:checked),
.contacts-consent .project-consent-checkbox:hover:not(:checked),
.contacts-consent .project-consent-checkbox:focus:not(:checked),
.contacts-consent .project-consent-checkbox:focus-visible:not(:checked) {
    background: #fff;
  }
  .form-status:empty {
    display: none;
  }
  form [aria-invalid="true"] {
    outline-offset: -2px;
  }
  :is(.contacts-form__panel, .request form, .footer-online-form__panel)
  :is(input:not([type="checkbox"]):not([type="submit"]), textarea) {
    caret-color: #595552;
    -webkit-text-fill-color: #595552;
    transition: border-color 200ms ease, box-shadow 200ms ease, filter 200ms ease;
  }
  .contacts-input:focus-within {
    background: rgba(244, 241, 237, .56);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .92), 0 0 0 1px rgba(169, 151, 139, .42), 0 0 24px rgba(174, 152, 131, .14);
  }
  .contacts-input:has(:is(input, textarea):not(:placeholder-shown)) {
    background: rgba(244, 241, 237, .52);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .88), 0 0 0 1px rgba(169, 151, 139, .24);
  }
  .footer-online-form__panel :is(input:not([type="checkbox"]), textarea):focus,
.footer-online-form__panel :is(input:not([type="checkbox"]), textarea):focus-visible {
    background: rgba(244, 241, 237, .56);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .92), 0 0 0 1px rgba(169, 151, 139, .34), 0 0 28px rgba(174, 152, 131, .14);
  }
  .footer-online-form__panel :is(input:not([type="checkbox"]), textarea):not(:placeholder-shown) {
    background: rgba(244, 241, 237, .52);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .88), 0 0 0 1px rgba(169, 151, 139, .24);
  }
  .footer__developer-link {
    display: inline-block;
    color: #d9653f;
    font-weight: 700;
  }
  .call-chooser {
    position: fixed;
    left: var(--call-chooser-left);
    top: auto;
    bottom: 24px;
    z-index: 1000;
    width: 380px;
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, .88);
    border-radius: 24px;
    background: rgba(216, 207, 198, .78);
    box-shadow: 0 18px 80px rgba(45, 36, 30, .28);
    -webkit-backdrop-filter: blur(18px) saturate(.95);
    backdrop-filter: blur(18px) saturate(.95);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(8px) scale(.985);
    transition: opacity 220ms ease, transform 280ms var(--interaction-ease), visibility 0s linear 280ms;
  }
  .call-chooser.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    transition-delay: 0s;
  }
  .call-chooser h2 {
    margin: 0 38px 18px 0;
    font: 400 22px/29px "Unbounded", sans-serif;
  }
  .call-chooser__close {
    position: absolute;
    right: 16px;
    top: 14px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .3);
    color: #595552;
    cursor: pointer;
    font-size: 22px;
  }
  .call-chooser__numbers {
    display: grid;
    gap: 10px;
  }
  .call-chooser__numbers a {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 14px 18px;
    border: 1px solid rgba(255, 255, 255, .65);
    border-radius: 16px;
    background: rgba(255, 255, 255, .2);
    font: 500 18px/22px "Montserrat", sans-serif;
  }
  .call-chooser__numbers small {
    font-size: 12px;
    font-weight: 400;
  }
  .privacy-consent-link {
    color: inherit;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
  }
  .interactive-map {
    isolation: isolate;
  }
  .interactive-map > img,
.interactive-map__frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .interactive-map > img {
    z-index: 0;
    transition: opacity 240ms ease, visibility 0s linear 240ms;
  }
  .interactive-map__frame {
    z-index: 1;
    display: block;
    border: 0;
    border-radius: inherit;
    background: #eee9e4;
  }
  .interactive-map[data-map-loaded="true"] > img {
    opacity: 0;
    visibility: hidden;
  }
  .interactive-map__actions {
    position: absolute;
    z-index: 3;
    right: 12px;
    top: 12px;
    display: none;
    gap: 8px;
  }
  .interactive-map .interactive-map__actions {
    display: flex;
  }
  .interactive-map__actions a,
.interactive-map__actions button {
    min-height: 38px;
    padding: 8px 14px;
    border: 1px solid rgba(255, 255, 255, .9);
    border-radius: 100px;
    background: rgba(89, 85, 82, .82);
    color: #fff;
    cursor: pointer;
    font: 500 12px/16px "Montserrat", sans-serif;
  }
  .interactive-map__location-label {
    position: absolute;
    z-index: 3;
    left: 12px;
    top: 12px;
    max-width: calc(100% - 132px);
    padding: 9px 14px;
    border: 1px solid rgba(255, 255, 255, .9);
    border-radius: 100px;
    background: rgba(238, 233, 228, .86);
    color: #595552;
    box-shadow: 0 6px 20px rgba(55, 43, 35, .12);
    font: 500 12px/16px "Montserrat", sans-serif;
    pointer-events: none;
  }
  .news-exact .useful {
    pointer-events: none;
  }
  .news-exact .useful :is(a, button) {
    pointer-events: auto;
  }
  .article-preview-backdrop {
    position: fixed;
    z-index: 2000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(45, 38, 33, .38);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    opacity: 0;
    visibility: hidden;
    transition: opacity 220ms ease, visibility 0s linear 220ms;
  }
  .article-preview-backdrop.is-open {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s;
  }
  .article-preview {
    position: relative;



    color: #595552;
    transform: translateY(12px) scale(.99);
    transition: transform 280ms var(--interaction-ease);
  }
  body.article-preview-open {
    position: fixed;
    left: 0;
    right: 0;
    width: 100%;
    overflow: hidden;
  }
  .article-preview__topbar {
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255, 255, 255, .66);
  }
  .article-preview__topbar > span {
    font: 500 11px/15px "Montserrat", sans-serif;
    letter-spacing: .14em;
  }
  .article-preview-backdrop.is-open .article-preview {
    transform: none;
  }
  .article-preview:focus {
    outline: 0;
  }
  .article-preview__content {
    min-width: 0;
    min-height: 0;


    scrollbar-color: rgba(89, 85, 82, .36) transparent;
  }
  .article-preview__body img {
    width: 100%;
    height: 100%;
    border-radius: 0 0 0 29px;
    object-fit: cover;
    object-position: var(--article-position-desktop, 50% 50%);
  }
  .article-preview__body h2 {

    padding-right: 0;

  }
  .article-preview__body time {
    display: block;

  }
  .article-preview__body p {
    margin: 0 0 13px;
    font: 400 17px/25px "Montserrat", sans-serif;
  }
  .article-preview__copy h3 {
    font: 500 19px/26px "Unbounded", sans-serif;
  }
  .article-preview__copy ul {
    margin: 0 0 18px;
    padding-left: 22px;
  }
  .article-preview__copy li {
    margin-bottom: 8px;
    font: 400 16px/23px "Montserrat", sans-serif;
  }
  .article-preview__close {

    z-index: 2;
    flex: 0 0 42px;



    font-size: 24px;
  }
  .services-exact .cc {
    cursor: pointer;
    transition-property: left, top, width, height, box-shadow, opacity, filter;
  }
  .services-exact .carousel.is-expanded > :is(.cc, .arrow) {
    opacity: 0;
    filter: blur(2px);
    pointer-events: none;
  }
  .service-detail {
    position: absolute;
    z-index: 40;
    left: 135px;
    top: 0;
    width: 1650px;
    height: 560px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .78);
    border-radius: 30px;
    background: linear-gradient(120deg, rgba(238, 233, 228, .62), rgba(222, 212, 203, .38));
    box-shadow: 0 36px 90px rgba(55, 43, 35, .22), inset 0 1px 0 rgba(255, 255, 255, .55);
    -webkit-backdrop-filter: blur(18px) saturate(.96);
    backdrop-filter: blur(18px) saturate(.96);
    color: #595552;
    opacity: 0;
    pointer-events: none;
    transform: translateY(16px) scale(.992);
    transition: opacity 360ms ease, transform 500ms var(--interaction-ease);
  }
  .service-detail.is-open {
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }
  .service-detail:focus {
    outline: 0;
  }
  .service-detail__image {
    position: absolute;
    left: 0;
    top: 0;
    width: 620px;
    height: 100%;
    object-fit: cover;
    border-radius: 29px 0 0 29px;
  }
  .service-detail__content {
    position: absolute;
    left: 620px;
    top: 0;
    display: flex;
    flex-direction: column;
    width: 1030px;
    height: 100%;
    padding: 52px 68px 42px;
  }
  .service-detail__eyebrow {
    margin: 0 0 16px;
    font: 500 13px/18px "Montserrat", sans-serif;
    letter-spacing: .14em;
  }
  .service-detail h2 {
    max-width: 790px;
    margin: 0;
    font: 400 38px/48px "Unbounded", sans-serif;
  }
  .service-detail__lead {
    max-width: 820px;
    margin: 20px 0 24px;
    font: 400 18px/26px "Montserrat", sans-serif;
  }
  .service-detail__body {
    min-height: 0;
    padding: 0 18px 18px 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-color: rgba(89, 85, 82, .36) transparent;
  }
  .service-detail__body :is(p, h3, ul) {
    margin: 0 0 14px;
  }
  .service-detail__body p,
.service-detail__body li {
    font: 400 15px/22px "Montserrat", sans-serif;
  }
  .service-detail__body h3 {
    margin-top: 22px;
    font: 500 18px/24px "Unbounded", sans-serif;
  }
  .service-detail__body ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 30px;
    padding: 0;
    list-style: none;
  }
  .service-detail__body li {
    position: relative;
    padding-left: 24px;
  }
  .service-detail__body li::before {
    position: absolute;
    left: 0;
    top: 7px;
    width: 8px;
    height: 8px;
    border: 1px solid rgba(89, 85, 82, .56);
    border-radius: 50%;
    content: "";
  }
  .service-detail__close {
    position: absolute;
    z-index: 2;
    right: 26px;
    top: 24px;
    min-width: 98px;
    height: 42px;
    border: 1px solid rgba(255, 255, 255, .78);
    border-radius: 100px;
    background: rgba(255, 255, 255, .28);
    color: #595552;
    cursor: pointer;
    font: 500 13px/18px "Montserrat", sans-serif;
  }
  .floating-header {
    position: fixed;
    z-index: 3000;
    left: 50%;
    top: 18px;
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr) 235px;
    align-items: center;
    width: min(1420px, calc(100vw - 48px));
    height: 68px;
    padding: 0 28px;
    border: 1px solid rgba(255, 255, 255, .54);
    border-radius: 24px;
    background: linear-gradient(115deg, rgba(105, 89, 77, .48), rgba(174, 155, 141, .38));
    box-shadow: 0 14px 46px rgba(55, 43, 35, .15), inset 0 1px 0 rgba(255, 255, 255, .32);
    -webkit-backdrop-filter: blur(14px) saturate(1.04);
    backdrop-filter: blur(14px) saturate(1.04);
    color: #fff;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate(-50%, -8px);
    transition: opacity 280ms ease, transform 320ms var(--interaction-ease), visibility 0s linear 320ms;
  }
  .floating-header.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
    transition-delay: 0s;
  }
  .floating-header__logo {
    display: block;
    width: 154px;
    height: 43px;
  }
  .floating-header__logo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .floating-header__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(24px, 3vw, 56px);
    min-width: 0;
  }
  .floating-header__nav a {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 12px;
    border: 1px solid transparent;
    border-radius: 100px;
    font: 300 15px/20px "Unbounded", sans-serif;
    white-space: nowrap;
  }
  .floating-header__nav a.is-active {
    border-color: rgba(255, 255, 255, .72);
    background: rgba(255, 255, 255, .1);
  }
  .floating-header__phones {
    display: grid;
    justify-items: end;
    gap: 2px;
  }
  .floating-header__phones a {
    font: 500 14px/18px "Montserrat", sans-serif;
    letter-spacing: 1.5px;
    white-space: nowrap;
  }
  .services-exact .arrow,
.contacts-hero__cta,
.contacts-submit,
.hero-more,
.turnkey a,
.service-detail__close,
.request button,
.topbar a,
.footer a,
.floating-header a {
    cursor: pointer;
  }
  @media (min-width: 768px) {
    .design-page .footer-online-form__panel > button[type="submit"] {
      background: #bcb2a8;
      color: #fff;
      box-shadow: none;
      transition: transform 200ms ease, filter 200ms ease, box-shadow 200ms ease, background-color 200ms ease;
    }
  }
  @media (hover: hover) and (pointer: fine) {
    .services-exact .arrow,
  .news-exact :is(.read-small, .read-large, .read-glass),
  .pricing-expanded__collapse,
  .footer-online-form button,
  .price-card__button,
  .contacts-submit,
  .contacts-hero__cta,
  .hero-more,
  .turnkey a,
  .service-detail__close,
  .request button,
  .topbar a,
  .footer__nav a,
  .footer__developer-link,
  .floating-header a {
      transition: transform 200ms ease, filter 200ms ease, box-shadow 200ms ease, background-color 200ms ease, opacity 200ms ease;
    }
    .services-exact .arrow:hover,
  .news-exact :is(.read-small, .read-large, .read-glass):hover,
  .pricing-expanded__collapse:hover,
  .footer-online-form button:hover,
  .price-card__button:hover,
  .contacts-submit:hover,
  .hero-more:hover,
  .turnkey a:hover,
  .service-detail__close:hover,
  .request button:hover,
  .topbar a:hover,
  .footer__nav a:hover,
  .footer__developer-link:hover,
  .floating-header a:hover {
      transform: translateY(-2px);
      filter: brightness(1.055);
    }
    .contacts-submit:hover,
  .request button:hover,
  .footer-online-form__panel > button[type="submit"]:hover {
      box-shadow: 0 8px 26px rgba(89, 72, 60, .12);
    }
    .contacts-form__panel .contacts-submit {
      transition-duration: 320ms;
      transition-timing-function: cubic-bezier(.22, .61, .36, 1);
    }
    .contacts-form__panel .contacts-submit:hover {
      transform: translateY(-1px);
    }
    .footer-online-form__panel > button[type="submit"]:hover {
      background: rgba(255, 255, 255, .12);
    }
    .design-page .footer-online-form__panel > button[type="submit"]:hover {
      transform: translateY(-2px);
      background: #bcb2a8;
      color: #fff;
      filter: brightness(1.055);
      box-shadow: 0 10px 24px rgba(89, 72, 60, .16);
    }
    .services-exact .arrow:hover {
      background-color: rgba(255, 255, 255, .27);
    }
    .topbar__nav a:hover,
  .floating-header__nav a:hover,
  .floating-header__phones a:hover {
      text-shadow: 0 0 14px rgba(255, 255, 255, .62);
    }
    .topbar__nav a.is-active:hover,
  .floating-header__nav a.is-active:hover {
      transform: none;
      filter: none;
      text-shadow: none;
    }
    .services-exact .arrow:active,
  .news-exact :is(.read-small, .read-large, .read-glass):active,
  .pricing-expanded__collapse:active,
  .footer-online-form button:active,
  .price-card__button:active,
  .contacts-submit:active,
  .contacts-hero__cta:active,
  .hero-more:active,
  .turnkey a:active,
  .service-detail__close:active,
  .request button:active,
  .topbar a:active,
  .footer__nav a:active,
  .footer__developer-link:active,
  .floating-header a:active {
      transform: scale(.98);
    }
  }
  @media (max-width: 767px) {
    :where(a, button, input, textarea):focus-visible {
      outline-width: 2px;
      outline-offset: 2px;
    }
    .pricing > .pricing__tag,
  .pricing > .pricing__title,
  .pricing > .pricing__copy,
  .pricing > .price-card {
      transition-duration: 260ms, 440ms, 0s;
    }
    .pricing-expanded {
      display: block;
      height: 598px;
      padding: 20px;
      border-radius: 15px;
      box-shadow: 0 4px 8.3px rgba(0, 0, 0, .25);
      transform: translateY(12px) scale(.99);
    }
    .pricing-expanded.is-active {
      transform: none;
    }
    .pricing-expanded__media {
      position: absolute;
      left: 20px;
      top: 20px;
      width: 100px;
      height: 144px;
    }
    .pricing-expanded[data-kind="cremation"] .pricing-expanded__media img {
      width: 90px;
    }
    .pricing-expanded__content {
      position: absolute;
      inset: 20px;
      padding: 0 0 46px;
    }
    .pricing-expanded__heading {
      display: block;
      min-height: 144px;
      padding: 8px 0 0 120px;
    }
    .pricing-expanded__heading h3 {
      font: 400 24px/30px "Unbounded", sans-serif;
    }
    .pricing-expanded__heading .price {
      margin-top: 10px;
    }
    .pricing-expanded__heading .price span {
      font: 400 14px/18px "Unbounded", sans-serif;
    }
    .pricing-expanded__heading .price small {
      margin: 7px 0 0 4px;
      font: 400 10px/12px "Unbounded", sans-serif;
    }
    .pricing-expanded__copy {
      margin-top: 12px;
      font: 400 11px/14px "Montserrat", sans-serif;
    }
    .pricing-expanded__copy p + p {
      margin-top: 7px;
    }
    .pricing-expanded__pills {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 5px;
      margin-top: 10px;
    }
    .pricing-expanded__pills span {
      background: rgba(216, 207, 198, .9);
      font: 500 7px/9px "Montserrat", sans-serif;
    }
    .pricing-expanded__collapse {
      right: 20px;
      bottom: 12px;
      width: 92px;
      height: 32px;
      font-size: 9px;
    }
    .faq__item {
      height: 49px;
      border-radius: 25px;
    }
    .faq__item.is-open {
      height: var(--faq-open-height, 104px);
    }
    .faq__answer {
      top: 45px;
      padding: 6px 16px 10px;
    }
    .faq__answer p {
      font: 400 9px/12px "Montserrat", sans-serif;
    }
    .faq__answer br {
      display: none;
    }
    .footer-online-form {
      left: var(--mobile-gutter);
      top: -191px;
      width: var(--mobile-content);
      height: 735px;
    }
    .footer-online-form__exact {
      content: url("/assets/mobile/contacts-form-photo.ce9374e67e.webp");
      width: 100%;
      height: 250px;
      object-fit: cover;
      border-radius: 15px;
      -webkit-mask: none;
      mask: none;
    }
    .footer-online-form__panel {
      left: 0;
      top: 265px;
      width: 100%;
      height: 470px;
      padding: 0;
      border-radius: 15px;
      overflow: hidden;
      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;
    }
    .footer-online-form__panel h2 {
      left: 30px;
      top: 27px;
      width: calc(100% - 60px);
      color: #543f32;

    }
    .footer-online-form__panel > p {
      left: 30px;
      top: 72px;
      width: calc(100% - 60px);
      margin: 0;
      color: #543f32;
      font: 300 12px/16px "Montserrat", sans-serif;
    }
    .footer-online-form__panel > input,
  .footer-online-form__panel > textarea {
      left: 30px;
      width: calc(100% - 60px);
      padding: 0 24px;
      background: rgba(255,255,255,.25);
      box-shadow: 0 0 50px rgba(174,152,131,.25);
      font-size: 12px;
    }
    .footer-online-form__panel > input {
      top: 136px;
      height: 46px;
      margin: 0;
    }
    .footer-online-form__panel > input[name="phone"] {
      top: 194px;
    }
    .footer-online-form__panel > textarea {
      top: 252px;
      height: 90px;
      padding-top: 18px;
    }
    .footer-online-form__panel > input::placeholder,
  .footer-online-form__panel > textarea::placeholder {
      color: rgba(89,85,82,.38);
    }
    .footer-online-form__panel > button[type="submit"] {
      left: 50%;
      right: auto;
      top: 397px;
      width: 180px;
      height: 50px;
      transform: translateX(-50%);
      background: #543f32;
      color: #fff;
      font-size: 14px;
    }
    .footer-online-form__panel > label {
      left: 30px;
      top: 354px;
      width: 213px;
      height: 32px;
      padding-right: 20px;
      transform: none;
      color: #543f32;
      font-size: 12px;
      line-height: 16px;
    }
    .footer-online-form__panel > label input {
      position: absolute;
      left: 193px;
      top: 6px;
      margin: 0;
      opacity: 1;
    }
    .footer-online-form__close {
      right: 12px;
      top: 8px;
      font-size: 10px;
    }
    .form-status {
      left: 30px;
      right: 30px;
      bottom: 8px;
      font-size: 10px;
      line-height: 13px;
    }
    .call-chooser {
      left: 16px;
      right: 16px;
      top: auto;
      bottom: 16px;
      width: auto;
      padding: 22px;
      border-radius: 24px;
      transform: translateY(24px);
    }
    .call-chooser h2 {
      font-size: 19px;
      line-height: 25px;
    }
    .interactive-map__actions {
      right: 8px;
      top: 8px;
      flex-direction: column;
      align-items: flex-end;
    }
    .interactive-map__actions a,
  .interactive-map__actions button {
      min-height: 34px;
      padding: 7px 11px;
      font-size: 10px;
    }
    .article-preview__topbar {
      min-height: 58px;
      padding: 8px 10px 8px 18px;
    }
    .article-preview__topbar > span {
      max-width: calc(100% - 58px);
      font-size: 8px;
      line-height: 12px;
    }
    .article-preview__close {
      flex-basis: 42px;
      width: 42px;
    }
    .article-preview__body {
      overflow-y: auto;
      overscroll-behavior: contain;
    }
    .article-preview__body img {
      width: 100%;
      height: clamp(210px, 36dvh, 310px);
      margin: 0;
      border-radius: 0;
      object-position: var(--article-position-mobile, 50% 50%);
    }
    .article-preview__content {
      overflow: visible;
    }
    .article-preview__body h2 {
      padding-right: 0;


    }
    .services-exact.is-service-expanded .turnkey {
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      transition: opacity 260ms ease, visibility 0s linear 260ms;
    }
    .service-detail {
      left: 0;
      top: 0;
      width: 100%;
      height: 710px;
      border-radius: 15px;
    }
    .service-detail__image {
      left: 0;
      top: 0;
      width: 100%;
      height: 190px;
      border-radius: 14px 14px 0 0;
    }
    .service-detail__content {
      left: 0;
      top: 190px;
      width: 100%;
      height: 520px;
      padding: 22px 22px 18px;
    }
    .service-detail__eyebrow {
      margin-bottom: 9px;
      font-size: 9px;
      line-height: 12px;
    }
    .service-detail h2 {
      max-width: calc(100% - 40px);
      font-size: 20px;
      line-height: 26px;
    }
    .service-detail__lead {
      margin: 13px 0 15px;
      font-size: 12px;
      line-height: 17px;
    }
    .service-detail__body {
      padding-right: 8px;
    }
    .services-exact .carousel:has(.cc[data-service-id="care"][aria-expanded="true"]) .service-detail,
  .services-exact .carousel:has(.cc[data-service-id="canopies"][aria-expanded="true"]) .service-detail {
      height: 575px;
    }
    .services-exact .carousel:has(.cc[data-service-id="care"][aria-expanded="true"]) .service-detail__content,
  .services-exact .carousel:has(.cc[data-service-id="canopies"][aria-expanded="true"]) .service-detail__content {
      height: 385px;
    }
    .services-exact .carousel:has(.cc[data-service-id="care"][aria-expanded="true"]) .service-detail__body,
  .services-exact .carousel:has(.cc[data-service-id="canopies"][aria-expanded="true"]) .service-detail__body {
      overflow-y: hidden;
      padding-right: 0;
      scrollbar-width: none;
    }
    .services-exact .carousel:has(.cc[data-service-id="care"][aria-expanded="true"]) .service-detail__body::-webkit-scrollbar,
  .services-exact .carousel:has(.cc[data-service-id="canopies"][aria-expanded="true"]) .service-detail__body::-webkit-scrollbar {
      display: none;
    }
    .service-detail__body :is(p, h3, ul) {
      margin-bottom: 9px;
    }
    .service-detail__body ul {
      grid-template-columns: 1fr;
      gap: 7px;
    }
    .service-detail__body p,
  .service-detail__body li {
      font-size: 11px;
      line-height: 15px;
    }
    .service-detail__body h3 {
      margin-top: 14px;
      font-size: 13px;
      line-height: 17px;
    }
    .service-detail__body li {
      padding-left: 19px;
    }
    .service-detail__body li::before {
      top: 4px;
      width: 7px;
      height: 7px;
    }
    .service-detail__close {
      right: 10px;
      top: 10px;
      min-width: 76px;
      height: 34px;
      background: rgba(238, 233, 228, .76);
      font-size: 10px;
      line-height: 14px;
    }
  }
  :is(.workflow__intro > a, .contacts__buttons a, .contacts-card__hit) {
    cursor: pointer;
    transition: transform 200ms ease, filter 200ms ease, box-shadow 200ms ease;
  }
  @media (hover: hover) and (pointer: fine) {
    :is(.workflow__intro > a, .contacts__buttons a, .contacts-card__hit):hover {
      transform: translateY(-2px);
      filter: brightness(1.045);
      box-shadow: 0 8px 24px rgba(89, 72, 60, .12);
    }
    :is(.workflow__intro > a, .contacts__buttons a, .contacts-card__hit):active {
      transform: scale(.98);
      filter: none;
      box-shadow: none;
    }
  }
  @media (min-width: 768px) {
    .contacts-form__panel {
      overflow: hidden;
      border-radius: 30px;
      background: linear-gradient(rgba(255,255,255,.22), rgba(255,255,255,.22)), url("/assets/mobile/contacts-form-panel.17dd60f042.webp") center/cover no-repeat;
    }
    .contacts-form__panel h2,
  .contacts-form__lead,
  .contacts-consent {
      color: #595552;
    }
    .contacts-form__panel h2::selection,
  .contacts-form__lead::selection,
  .contacts-consent .privacy-consent-link::selection {
      color: #595552;
    }
    .contacts-input {
      border: 1px solid rgba(255,255,255,.82);
      background: rgba(255,255,255,.3);
      box-shadow: 0 0 38px rgba(174,152,131,.12);
    }
    .contacts-input input::placeholder,
  .contacts-input textarea::placeholder {
      color: rgba(89,85,82,.42);
    }
    .contacts-form__panel input.contacts-submit {
      background: #bcb2a8;
      color: #fff;
      -webkit-text-fill-color: #fff;
      opacity: 1;
      -webkit-appearance: none;
      appearance: none;
    }
  }
  @media (max-width: 767px) {
    .pricing-expanded {
      flex-direction: column;
      align-items: center;
      gap: 20px;
    }
    .pricing-expanded__media {
      flex: 0 0 144px;
    }
    .pricing-expanded__media img,
  .pricing-expanded[data-kind="cremation"] .pricing-expanded__media img {
      object-fit: contain;
    }
    .pricing-expanded__content {
      display: flex;
      flex: 1 1 auto;
      flex-direction: column;
      width: 100%;
      min-height: 0;
    }
    .pricing-expanded__heading h3 {
      min-width: 0;
    }
    .pricing-expanded__heading .price {
      display: flex;
      white-space: nowrap;
    }
    .pricing-expanded__pills span {
      height: 42px;
      min-height: 42px;
      padding: 6px 14px;
      font-size: 9.5px;
      line-height: 12px;
    }
    .footer-online-form {
      flex-direction: column;
      gap: 15px;
    }
    .footer-online-form__exact {
      flex: 0 0 250px;
    }
    .footer-online-form__panel {
      display: flex;
      min-height: 520px;
      flex-direction: column;
      gap: 12px;
    }
    .footer-online-form__panel h2 {
      padding-right: 58px;
      font: 400 22px/29px "Unbounded", sans-serif;
    }
    .footer-online-form__panel > input {
      flex: 0 0 46px;
    }
    .footer-online-form__panel > textarea {
      flex: 0 0 90px;
    }
    .footer-online-form__panel > label {
      display: flex;
      min-height: 32px;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
    }
    .footer-online-form__panel > label input {
      flex: 0 0 20px;
    }
    .footer-online-form__panel > button[type="submit"] {
      align-self: center;
    }
    .footer-online-form .form-status {
      position: static;
      min-height: 0;
      margin: 0;
      font-size: 10px;
      line-height: 13px;
    }
  }
  @media (hover: hover) and (pointer: fine) {
    .workflow__intro > a:hover {
      transform: translateY(-2px);
      filter: brightness(1.035);
      box-shadow: -3px 3px 10px rgba(255,255,255,.1),
      3px -3px 15px rgba(0,0,0,.15),
      1px -1px 3px rgba(0,0,0,.2),
      inset 3px -3px 3px rgba(255,255,255,.3),
      inset -2px 2px 3px rgba(0,0,0,.3);
    }
    .workflow__intro > a:active {
      transform: translateY(0) scale(.985);
      filter: brightness(1.01);
      box-shadow: -3px 3px 10px rgba(255,255,255,.1),
      3px -3px 15px rgba(0,0,0,.15),
      1px -1px 3px rgba(0,0,0,.2),
      inset 3px -3px 3px rgba(255,255,255,.3),
      inset -2px 2px 3px rgba(0,0,0,.3);
    }
  }
  @media (min-width: 768px) and (hover: hover) and (pointer: fine) {
    .contacts-card__hit,
  .contacts-card__hit:hover,
  .contacts-card__hit:active {
      transform: none;
      filter: none;
      box-shadow: none;
    }
    .contacts-card__hit::before {
      content: "";
      position: absolute;
      z-index: 1;
      inset: 0;
      border-radius: inherit;
      background-size: 780px 332px;
      background-position: -547px -232px;
      background-repeat: no-repeat;
      pointer-events: none;
      transition: transform 200ms ease, filter 200ms ease, box-shadow 200ms ease;
    }
    .contacts-card--phone .contacts-card__hit::before {
      background-image: url("/assets/contacts-final/contact-phone-card.c266568738.webp");
    }
    .contacts-card--office .contacts-card__hit::before {
      background-image: url("/assets/contacts-final/contact-office-card.6770e5b085.webp");
    }
    .contacts-card__hit:hover::before {
      transform: translateY(-2px);
      filter: brightness(1.04);
      box-shadow: 0 7px 18px rgba(89,72,60,.13);
    }
    .contacts-card__hit:active::before {
      transform: translateY(0) scale(.985);
      filter: brightness(1.015);
      box-shadow: 0 3px 10px rgba(89,72,60,.1);
    }
  }
  @media (min-width: 768px) {
    .contacts-form__exact {
      width: 653px;
      height: 800px;
      clip-path: none;
      border-radius: 30px;
      object-fit: none;
      object-position: left top;
      box-shadow: 2px 2px 90px rgba(188,178,168,.56);
    }
    .contacts-form__shadow {
      display: none;
    }
    .contacts-form__panel {
      isolation: isolate;
      background-clip: padding-box;
      box-shadow: 2px 2px 90px rgba(188,178,168,.42);
    }
    .contacts-form__panel .contacts-input:focus-within,
  .contacts-form__panel .contacts-input:has(:is(input, textarea):not(:placeholder-shown)) {
      border-color: rgba(255,255,255,.82);
      background: rgba(255,255,255,.3);
      box-shadow: 0 0 38px rgba(174,152,131,.12);
    }
  }
  @media (min-width: 768px) {

    .article-preview__body h2 {
      margin-bottom: 12px;
      font-size: 25px;
      line-height: 32px;
    }
    .article-preview__body time {
      margin-bottom: 16px;
      font-size: 12px;
    }
    .article-preview__body p {
      margin-bottom: 12px;
      font-size: 15px;
      line-height: 22px;
    }
    .article-preview__copy h3 {
      margin: 20px 0 10px;
      font-size: 17px;
      line-height: 23px;
    }
    .article-preview__copy li {
      font-size: 14px;
      line-height: 21px;
    }
  }
  body.article-preview-open {
    box-sizing: border-box;
  }
  @media (min-width: 768px) and (hover: hover) and (pointer: fine) {
    .contacts-card--phone .contacts-card__art {
      content: url("/assets/contacts-final/contact-phone-card-clean.fec10951ec.webp");
    }
    .contacts-card--office .contacts-card__art {
      content: url("/assets/contacts-final/contact-office-card-clean.4fea0f2861.webp");
    }
  }
  @media (min-width: 768px) {
    .article-preview {
      width: min(840px, calc(100vw - 64px));
      max-height: calc(100vh - 48px);
      padding: 16px 18px 20px;
      border-radius: 28px;
    }
    .article-preview__topbar {
      position: relative;
      z-index: 5;
      top: auto;
      right: auto;
      display: flex;
      min-height: 42px;
      margin: 0 0 8px;
      padding: 0;
      align-items: center;
      justify-content: flex-end;
      border: 0;
      background: transparent;
      pointer-events: auto;
    }
    .article-preview__topbar > span {
      display: none;
    }
    .article-preview__close {
      flex: 0 0 38px;
      width: 38px;
      height: 38px;
      pointer-events: auto;
      background: rgba(255,255,255,.6);
    }
    .article-preview__body {
      display: grid;
      grid-template-columns: 300px minmax(0, 1fr);
      gap: 28px;
      height: min(430px, calc(100vh - 126px));
      min-height: 350px;
      max-height: none;
      align-items: stretch;
      overflow: hidden;
    }
    .article-preview__body img {
      display: block;
      width: 100%;
      height: 100%;
      min-width: 0;
      min-height: 0;
      border-radius: 20px;
      object-fit: cover;
      object-position: var(--article-position-desktop, 50% 50%);
      image-rendering: auto;
    }
    .article-preview__content {
      height: 100%;
      max-height: none;
      padding: 8px 8px 8px 0;
      overflow-y: auto;
    }
  }
  @media (max-width: 767px) {
    .mobile-drawer {
      overflow: hidden;
    }
  }
  .article-preview {
    width: min(900px, calc(100vw - 80px));
    height: min(500px, calc(100dvh - 96px));
    min-height: 390px;
    max-height: calc(100dvh - 72px);
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.78);
    border-radius: 30px;
    background: linear-gradient(120deg, rgba(238,233,228,.96), rgba(222,212,203,.90));
    box-shadow: 0 36px 90px rgba(55,43,35,.22), inset 0 1px 0 rgba(255,255,255,.55);
    -webkit-backdrop-filter: blur(18px) saturate(.96);
    backdrop-filter: blur(18px) saturate(.96);
  }
  .article-preview__topbar {
    position: absolute;
    z-index: 8;
    right: 26px;
    top: 24px;
    display: block;
    width: auto;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    pointer-events: none;
  }
  .article-preview__topbar > span {
    display: none;
  }
  .article-preview__close {
    position: relative;
    right: auto;
    top: auto;
    display: block;
    min-width: 98px;
    width: auto;
    height: 42px;
    padding: 0 20px;
    border: 1px solid rgba(255,255,255,.82);
    border-radius: 100px;
    background: rgba(238,233,228,.72);
    color: #595552;
    box-shadow: 0 8px 24px rgba(65,51,42,.10), inset 0 1px 0 rgba(255,255,255,.50);
    cursor: pointer;
    font: 500 13px/18px "Montserrat", sans-serif;
    pointer-events: auto;
  }
  .article-preview__body {
    display: grid;
    grid-template-columns: 42% minmax(0, 1fr);
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    gap: 0;
    overflow: hidden;
    overscroll-behavior: contain;
  }
  .article-preview__body > img {
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(225, 217, 210, .34);
    min-width: 0;
    min-height: 0;
    border-radius: 29px 0 0 29px;
    object-fit: cover;
    object-position: var(--article-position-desktop, 50% 50%);
    image-rendering: auto;
  }
  .article-preview__content {
    width: 100%;
    height: 100%;
    max-height: none;
    padding: 44px 46px 34px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }
  .article-preview__body h2 {
    max-width: calc(100% - 72px);
    margin: 0 0 16px;
    font: 400 28px/36px "Unbounded", sans-serif;
    overflow-wrap: normal;
  }
  .article-preview__body time {
    margin-bottom: 18px;
    font-size: 13px;
  }
  .article-preview__body p {
    margin-bottom: 13px;
    font-size: 15px;
    line-height: 22px;
  }
  .article-preview__copy h3 {
    margin: 22px 0 10px;
    font-size: 17px;
    line-height: 23px;
  }
  .article-preview__copy li {
    font-size: 14px;
    line-height: 21px;
  }
  @media (min-width: 768px) and (max-height: 900px) {
    .article-preview-backdrop {
      place-items: start center;
      padding: 132px 20px 20px;
    }
    .article-preview {
      height: min(500px, calc(100dvh - 152px));
      min-height: 0;
      max-height: calc(100dvh - 152px);
    }
  }
  @media (max-width: 767px) {
    .article-preview {
      width: min(342px, calc(100vw - 36px));
      height: min(430px, calc(100dvh - 72px));
      min-height: min(360px, calc(100dvh - 72px));
      max-height: calc(100dvh - 72px);
      padding: 0;
      border-radius: 15px;
    }
    .article-preview__topbar {
      right: 10px;
      top: 10px;
    }
    .article-preview__close {
      min-width: 76px;
      height: 34px;
      padding: 0 14px;
      background: rgba(238,233,228,.76);
      font-size: 10px;
      line-height: 14px;
    }
    .article-preview__body {
      display: flex;
      flex-direction: column;
      width: 100%;
      height: 100%;
      min-height: 0;
      max-height: none;
      overflow: hidden;
      border-radius: 14px;
    }
    .article-preview__body > img {
      flex: 0 0 155px;
      width: 100%;
      height: 155px;
      min-height: 155px;
      border-radius: 14px 14px 0 0;
      object-fit: cover;
      object-position: var(--article-position-mobile, 50% 50%);
    }
    .article-preview__content {
      flex: 1 1 auto;
      width: 100%;
      height: auto;
      min-height: 0;
      max-height: none;
      padding: 20px 22px 18px;
      overflow-y: auto;
      overscroll-behavior: contain;
      scrollbar-gutter: auto;
    }
    .article-preview__body h2 {
      max-width: calc(100% - 18px);
      margin-bottom: 9px;
      font-size: 20px;
      line-height: 26px;
    }
    .article-preview__body time {
      margin-bottom: 13px;
      font-size: 9px;
      line-height: 12px;
    }
    .article-preview__body p,
  .article-preview__copy li {
      font-size: 11px;
      line-height: 15px;
    }
    .article-preview__copy h3 {
      margin-top: 14px;
      font-size: 13px;
      line-height: 17px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > label input[type="checkbox"] {
      cursor: pointer;
    }


    .contacts-form__panel .contacts-input:focus-within,
  .contacts-form__panel .contacts-input:has(:is(input, textarea):not(:placeholder-shown)) {
      border-color: transparent;
      background: rgba(255,255,255,.25);
      box-shadow: 0 0 50px rgba(174,152,131,.25);
    }
    .contacts-form__panel .contacts-input :is(input, textarea):focus,
  .contacts-form__panel .contacts-input :is(input, textarea):focus-visible {
      outline: 0;
      box-shadow: none;
    }
    .contacts-form__panel .contacts-input :is(input, textarea):-webkit-autofill,
  .contacts-form__panel .contacts-input :is(input, textarea):-webkit-autofill:focus {
      -webkit-box-shadow: inset 0 0 0 1000px rgba(255,255,255,.02);
      box-shadow: inset 0 0 0 1000px rgba(255,255,255,.02);
    }
    .contacts-submit:focus-visible {
      outline: 2px solid rgba(255,255,255,.72);
      outline-offset: -5px;
      box-shadow: 0 5px 18px rgba(89,72,60,.14);
    }
  }
  @media (min-width: 768px) {
    .footer-online-form__exact {
      width: 653px;
      height: 800px;
      object-fit: none;
      object-position: left top;
      border-radius: 30px;
      -webkit-mask: none;
      mask: none;
    }
    .footer-online-form__panel {
      overflow: hidden;
      border: 1px solid rgba(255,255,255,.78);
      background: linear-gradient(rgba(255,255,255,.18), rgba(255,255,255,.18)),
      url("/assets/mobile/contacts-form-panel.17dd60f042.webp") center/cover no-repeat;
      box-shadow: 0 18px 55px rgba(98,78,62,.08);
    }
    .footer-online-form__panel h2 {
      color: #595552;
    }
    .footer-online-form__panel > p,
  .footer-online-form__panel > label {
      color: #595552;
    }
    .footer-online-form__panel > input,
  .footer-online-form__panel > textarea,
  .footer-online-form__panel > input:focus,
  .footer-online-form__panel > input:focus-visible,
  .footer-online-form__panel > textarea:focus,
  .footer-online-form__panel > textarea:focus-visible {
      border: 1px solid rgba(255,255,255,.82);
      background: rgba(255,255,255,.24);
      box-shadow: 0 0 50px rgba(174,152,131,.18);
      color: #595552;
      -webkit-text-fill-color: #595552;
      caret-color: #595552;
      filter: none;
    }
    .footer-online-form__panel > input::placeholder,
  .footer-online-form__panel > textarea::placeholder {
      color: rgba(89,85,82,.52);
      -webkit-text-fill-color: rgba(89,85,82,.52);
      opacity: 1;
    }
    .footer-online-form__panel > button[type="submit"] {
      background: #bcae9f;
      color: #fff;
    }
  }
  :is(.footer-online-form__panel > label, .request form > label, .contacts-consent) .privacy-consent-link {
    color: inherit;
    text-decoration-line: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
    cursor: pointer;
  }
  .contacts-submit {
    overflow: hidden;
    outline: 0;
    background-clip: padding-box;
    caret-color: transparent;
    -webkit-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
  }
  .contacts-submit::before,
.contacts-submit::after {
    content: none;
    display: none;
  }
  .contacts-submit:focus,
.contacts-submit:focus-visible {
    outline: 0;
  }
  @media (max-width: 767px) {
    .contacts-form__panel .contacts-input,
  .contacts-form__panel .contacts-input:focus-within,
  .contacts-form__panel .contacts-input:has(:is(input, textarea):not(:placeholder-shown)) {
      border: 0;
      outline: 0;
    }
    .contacts-form__panel .contacts-input :is(input, textarea),
  .contacts-form__panel .contacts-input :is(input, textarea):focus,
  .contacts-form__panel .contacts-input :is(input, textarea):focus-visible {
      border: 0;
      outline: 0;
      box-shadow: none;
      -webkit-appearance: none;
      appearance: none;
    }
  }
  .footer__address-link {
    position: relative;
    display: flex;
    align-items: flex-start;
    width: 100%;
    min-height: 44px;
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: transform 220ms var(--interaction-ease), filter 220ms ease, text-shadow 220ms ease;
  }
  @media (hover: hover) and (pointer: fine) {
    .footer__address-link:hover {
      transform: translateY(-3px);
      filter: brightness(1.08);
      text-shadow: 0 4px 18px rgba(255,255,255,.22);
    }
    .footer__address-link:active {
      transform: translateY(-1px);
    }
  }
  .footer__address-link:focus-visible {
    outline: 2px solid rgba(255,255,255,.82);
    outline-offset: 6px;
    border-radius: 12px;
  }
  @media (min-width: 768px) {
    .call-chooser {
      width: 460px;
      padding: 30px 32px 32px;
      border-radius: 28px;
    }
    .call-chooser h2 {
      margin: 0 48px 24px 0;
      font: 400 26px/34px "Unbounded", sans-serif;
    }
    .call-chooser__close {
      right: 18px;
      top: 17px;
      width: 40px;
      height: 40px;
      font-size: 25px;
    }
    .call-chooser__numbers {
      gap: 12px;
    }
    .call-chooser__numbers a {
      justify-content: center;
      min-height: 90px;
      padding: 17px 22px;
      border-radius: 19px;
      font: 500 21px/26px "Montserrat", sans-serif;
    }
    .call-chooser__numbers small {
      font-size: 14px;
      line-height: 19px;
    }
  }
  @media (max-width: 767px) {
    .footer__address-link {
      justify-content: center;
    }
  }
  @media (min-width: 768px) {
    .call-chooser {
      min-height: 326px;
    }
    .footer__nav {
      left: calc(50% - 236px);
    }
  }
}

@layer doverie-components {
  form [aria-invalid="true"] {
    outline: 2px solid rgba(151, 70, 50, .72);
  }
  :is(.contacts-form__panel, .request form, .footer-online-form__panel)
  :is(input:not([type="checkbox"]), textarea) {
    outline: 0;
  }
  .request form :is(input:not([type="checkbox"]), textarea):focus,
.request form :is(input:not([type="checkbox"]), textarea):focus-visible {
    border-color: rgba(255, 255, 255, .98);
    box-shadow: 0 0 0 1px rgba(169, 151, 139, .28), 0 0 38px rgba(174, 152, 131, .22);
  }
  :is(.contacts-form__panel, .request form, .footer-online-form__panel)
  :is(input:not([type="checkbox"]), textarea):-webkit-autofill,
:is(.contacts-form__panel, .request form, .footer-online-form__panel)
  :is(input:not([type="checkbox"]), textarea):-webkit-autofill:hover,
:is(.contacts-form__panel, .request form, .footer-online-form__panel)
  :is(input:not([type="checkbox"]), textarea):-webkit-autofill:focus {
    border: 0;
    outline: 0;
    -webkit-text-fill-color: #595552;
    caret-color: #595552;
    -webkit-box-shadow: inset 0 0 0 1000px rgba(238, 233, 228, .58), 0 0 30px rgba(174, 152, 131, .16);
    box-shadow: inset 0 0 0 1000px rgba(238, 233, 228, .58), 0 0 30px rgba(174, 152, 131, .16);
    transition: background-color 999999s ease-out, border-color 200ms ease, box-shadow 200ms ease;
  }
  @media (hover: hover) and (pointer: fine) {
    .contacts-hero__cta:hover {
      transform: none;
      filter: brightness(1.07);
    }
  }
  @media (max-width: 767px) {
    .pricing.is-expanded > .price-card {
      transform: translateX(-50%) translateY(8px);
    }
    .pricing-expanded {
      left: 30px;
      width: calc(100% - 60px);
    }
    .faq__item {
      width: 100%;
    }
    .call-chooser {
      left: 16px;
      right: 16px;
      bottom: 16px;
      top: auto;
    }
    .news-exact .useful-card--help > img {
      object-position: 50% 18%;
    }
    .services-exact .carousel.is-expanded {
      filter: drop-shadow(0 18px 34px rgba(0,0,0,.2));
    }
    .floating-header {
      display: none;
    }
  }
  @media (min-width: 768px) and (max-width: 1024px) {
    .topbar__nav {
      font-size: 15px;
      line-height: 20px;
    }
    .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) {
      height: 20px;
      line-height: 20px;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
      scroll-behavior: auto;
      transition-duration: .01ms;
      animation-duration: .01ms;
      animation-iteration-count: 1;
    }
  }
  .footer__developer-link {
    color: #d9653f;
    opacity: 1;
  }
  @media (max-width: 767px) {
    .pricing-expanded__heading .price {
      margin-top: 5px;
    }
    .footer-online-form {
      position: relative;
      left: auto;
      top: auto;
      display: flex;
      width: auto;
      height: auto;
      margin: 0 35px;
    }
    .footer-online-form[hidden] {
      display: none;
    }
    .footer-online-form__exact {
      position: static;
      width: 100%;
      height: 250px;
    }
    .footer-online-form__panel {
      position: relative;
      left: auto;
      top: auto;
      width: 100%;
      height: auto;
      padding: 30px;
    }
    .footer-online-form__panel h2,
  .footer-online-form__panel > p,
  .footer-online-form__panel > input,
  .footer-online-form__panel > textarea,
  .footer-online-form__panel > label,
  .footer-online-form__panel > button[type="submit"] {
      position: static;
      inset: auto;
      width: 100%;
      margin: 0;
      transform: none;
    }
    .footer-online-form__panel > p {
      margin-bottom: 6px;
    }
    .footer-online-form__panel > input {
      height: 46px;
    }
    .footer-online-form__panel > textarea {
      height: 90px;
    }
    .footer-online-form__panel > label {
      padding: 0;
    }
    .footer-online-form__panel > label input {
      position: static;
      margin: 1px 0 0;
    }
    .footer-online-form__panel > button[type="submit"] {
      width: 180px;
      height: 50px;
    }
    .design-page.is-footer-form-open .footer__nav p {
      top: 807px;
    }
    .contacts-submit:hover,
  .contacts-submit:active {
      background-color: #543f32;
    }
    .contacts-submit:hover {
      transform: translateY(-2px);
    }
    .contacts-submit:active {
      transform: scale(.98);
    }
  }
  @media (min-width: 768px) {
    .contacts-form__panel .contacts-input :is(input, textarea):focus,
  .contacts-form__panel .contacts-input :is(input, textarea):focus-visible {
      outline: 0;
      box-shadow: none;
    }
  }
  body.article-preview-open {
    position: static;
    left: auto;
    right: auto;
    width: auto;
    overflow: hidden;
  }
  @media (max-width: 767px) {
    .topbar.is-mobile-sticky,
  .contacts-exact .topbar.is-mobile-sticky,
  .privacy-page .topbar.is-mobile-sticky {
      border-color: rgba(255,255,255,.54);
      background: linear-gradient(115deg, rgba(105,89,77,.48), rgba(174,155,141,.38));
      box-shadow: 0 10px 32px rgba(55,43,35,.15), inset 0 1px 0 rgba(255,255,255,.32);
      -webkit-backdrop-filter: blur(14px) saturate(1.04);
      backdrop-filter: blur(14px) saturate(1.04);
    }
    .mobile-drawer {
      right: 0;



    }
    .mobile-drawer__title {
      font-size: 21px;
      line-height: 27px;
    }
    .mobile-drawer__nav a {
      border-radius: 12px;
      font-size: 13px;
      line-height: 18px;
    }
    .mobile-drawer__cta {
      font-size: 12px;
    }
    .pricing-expanded__heading {


      width: 100%;
    }
    .pricing-expanded__heading h3 {

      min-width: 0;
      margin: 0;
    }
    .pricing-expanded__heading .price {





      white-space: normal;
    }
    .design-page.is-footer-form-open .scene--footer,
  .design-page.is-footer-form-open > .footer {
      height: 1468px;
    }
    .design-page.is-footer-form-open .footer-online-form[hidden] {
      display: none;
    }
    .design-page.is-footer-form-open .footer-online-form__panel {



      flex-direction: column;
      gap: 9px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel h2,
  .design-page.is-footer-form-open .footer-online-form__panel > p,
  .design-page.is-footer-form-open .footer-online-form__panel > input,
  .design-page.is-footer-form-open .footer-online-form__panel > textarea,
  .design-page.is-footer-form-open .footer-online-form__panel > label,
  .design-page.is-footer-form-open .footer-online-form__panel > button[type="submit"] {
      position: static;
      inset: auto;
      margin: 0;
      transform: none;
    }
    .design-page.is-footer-form-open .footer-online-form__panel h2 {
      padding-right: 52px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > p {
      margin-bottom: 2px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > input {
      flex: 0 0 42px;
      width: 100%;
      height: 42px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > textarea {
      flex: 0 0 72px;
      width: 100%;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > label input {
      position: static;
      flex: 0 0 18px;
      margin: 1px 0 0;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > button[type="submit"] {
      align-self: center;
    }
    .footer-online-form__panel :is(input:not([type="checkbox"]), textarea):focus,
  .footer-online-form__panel :is(input:not([type="checkbox"]), textarea):focus-visible,
  .request form :is(input:not([type="checkbox"]), textarea):focus,
  .request form :is(input:not([type="checkbox"]), textarea):focus-visible {
      outline: 0;
      border-color: rgba(255,255,255,.78);
      box-shadow: 0 0 50px rgba(174,152,131,.25);
      filter: none;
    }


    .footer-online-form__panel :is(input:not([type="checkbox"]), textarea):focus,
  .footer-online-form__panel :is(input:not([type="checkbox"]), textarea):focus-visible {
      border: 0;
      outline: 0;
      background: rgba(255,255,255,.25);
      box-shadow: 0 0 50px rgba(174,152,131,.25);
    }
  }
  body.article-preview-open,
body.mobile-drawer-open {
    position: static;
    left: auto;
    right: auto;
    top: auto;
    width: auto;
    overflow: visible;
  }
  @media (max-width: 767px) {
    .mobile-drawer {
      top: 20px;
      height: auto;
      min-height: 0;
      max-height: calc(100dvh - 40px);
      border: 1px solid rgba(255,255,255,.72);
      border-right: 0;
      overflow-y: auto;
    }
    .mobile-drawer__cta {
      flex: none;
    }
    .design-page.is-footer-form-open > .footer {
      height: 1457px;
    }
    .design-page.is-footer-form-open .scene--footer {
      background-image: url("/assets/mobile/home-footer-exact.164c12e7f1.webp"), url("/assets/mobile/home-footer-bottom.0a178f62b1.webp");
    }
    .design-page.is-footer-form-open .footer-online-form__panel > label {
      align-self: center;
      flex: 0 0 auto;
      align-items: flex-start;
      justify-content: flex-start;
      gap: 12px;


    }
    .design-page.is-footer-form-open .footer-online-form__panel > label input[type="checkbox"] {
      flex: 0 0 20px;










    }
    .design-page.is-footer-form-open .footer-online-form__panel > label input[type="checkbox"]: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;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > label input[type="checkbox"]:hover,
  .design-page.is-footer-form-open .footer-online-form__panel > label input[type="checkbox"]:focus,
  .design-page.is-footer-form-open .footer-online-form__panel > label input[type="checkbox"]:focus-visible {
      box-shadow: none;
      outline: 0;
      filter: none;
    }


    .contacts-form__panel input.contacts-submit,
  .contacts-form__panel input.contacts-submit:hover,
  .contacts-form__panel input.contacts-submit:active,
  .contacts-form__panel input.contacts-submit:focus,
  .contacts-form__panel input.contacts-submit:focus-visible {
      position: absolute;
      z-index: 30;
      left: calc(50% - 90px);
      top: 522px;
      width: 180px;
      height: 59px;
      margin: 0;
      padding: 0;
      border: 0;
      border-radius: 37px;
      outline: 0;
      box-shadow: none;
      background: #543f32;
      background-image: none;
      background-clip: border-box;
      color: #fff;
      -webkit-text-fill-color: #fff;
      text-align: center;
      text-indent: 0;
      white-space: nowrap;
      transform: none;
      scale: none;
      filter: none;
      opacity: 1;
      transition: none;
      will-change: auto;
      isolation: isolate;
      -webkit-appearance: none;
      appearance: none;
      caret-color: transparent;
      -webkit-user-select: none;
      user-select: none;
      -webkit-tap-highlight-color: transparent;
      cursor: pointer;
    }


    .design-page.is-footer-form-open > .footer,
  .design-page.is-footer-form-open .scene--footer {
      height: 1749px;
    }
    .design-page.is-footer-form-open .footer-online-form {
      position: absolute;
      left: var(--mobile-form-gutter);
      display: block;
      width: var(--mobile-form-width);
      height: 982px;
      margin: 0;
    }
    .design-page.is-footer-form-open .footer-online-form__exact {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 355px;
      object-fit: cover;
      border-radius: 15px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel {
      position: absolute;
      left: 0;
      top: 365px;
      display: block;
      width: 100%;
      height: 617px;
      min-height: 617px;
      padding: 0;
      overflow: hidden;
      border-radius: 15px;
      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;
    }
    .design-page.is-footer-form-open .footer-online-form__panel h2 {
      position: absolute;
      left: 30px;
      top: 30px;
      width: calc(100% - 60px);
      margin: 0;
      padding: 0;
      color: #543f32;
      font: 400 28px/36px "Unbounded", sans-serif;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > p {
      position: absolute;
      left: 30px;
      top: 126px;
      width: calc(100% - 60px);
      margin: 0;
      color: #543f32;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > input,
  .design-page.is-footer-form-open .footer-online-form__panel > textarea {
      position: absolute;
      left: 30px;
      width: calc(100% - 60px);
      margin: 0;
      padding: 0 24px;
      border: 0;
      border-radius: 30px;
      outline: 0;
      background: rgba(255,255,255,.25);
      box-shadow: 0 0 50px rgba(174,152,131,.25);
      color: #595552;
      -webkit-text-fill-color: #595552;
      caret-color: #595552;
      filter: none;
      transform: none;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > input[name="name"] {
      top: 211px;
      height: 48px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > input[name="phone"] {
      top: 273px;
      height: 48px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > textarea {
      top: 335px;
      height: 107px;
      padding-top: 24px;
      resize: none;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > input::placeholder,
  .design-page.is-footer-form-open .footer-online-form__panel > textarea::placeholder {
      color: rgba(89,85,82,.38);
      -webkit-text-fill-color: rgba(89,85,82,.38);
      opacity: 1;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > label {
      position: absolute;
      left: 50%;
      top: 466px;
      display: block;
      width: 213px;
      height: 32px;
      min-height: 32px;
      margin: 0;
      padding: 0 20px 0 0;
      transform: translateX(-50%);
      color: #543f32;
      text-align: left;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > label .privacy-consent-link {
      display: block;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > label input[type="checkbox"] {
      position: absolute;
      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;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > button[type="submit"] {
      position: absolute;
      left: 50%;
      right: auto;
      top: 522px;
      width: 180px;
      height: 59px;
      margin: 0;
      border: 0;
      border-radius: 100px;
      transform: translateX(-50%);
      background: #543f32;
      color: #fff;
    }
    .design-page.is-footer-form-open .footer-online-form__close {
      right: 12px;
      top: 9px;
    }

    /* Unified mobile delivery status. Keep the message inside the visual card
       without changing the absolute Figma geometry of the form controls. */
    :is(
      .design-page.is-footer-form-open .footer-online-form__panel,
      .services-exact .request form,
      .contacts-form__panel
    ) > .form-status {
      position: absolute;
      z-index: 40;
      left: 30px;
      right: 30px;
      bottom: 7px;
      display: grid;
      min-height: 24px;
      margin: 0;
      padding: 3px 10px;
      place-items: center;
      overflow: hidden;
      border: 1px solid rgba(111, 73, 58, .16);
      border-radius: 12px;
      background: rgba(255, 255, 255, .42);
      box-shadow: 0 4px 18px rgba(84, 63, 50, .06);
      color: #6f493a;
      font: 500 9px/11px "Montserrat", sans-serif;
      text-align: center;
      text-wrap: balance;
      overflow-wrap: anywhere;
      backdrop-filter: blur(6px);
      -webkit-backdrop-filter: blur(6px);
      pointer-events: none;
    }
    :is(
      .design-page.is-footer-form-open .footer-online-form__panel,
      .services-exact .request form,
      .contacts-form__panel
    ) > .form-status:empty {
      display: none;
    }
    :is(
      .design-page.is-footer-form-open .footer-online-form__panel,
      .services-exact .request form,
      .contacts-form__panel
    ) > .form-status[data-kind="success"] {
      color: #4f6554;
      border-color: rgba(79, 101, 84, .18);
      background: rgba(247, 250, 247, .52);
    }
    .design-page.is-footer-form-open > .footer .footer__nav,
  .design-page.is-footer-form-open > .footer .footer__contacts,
  .design-page.is-footer-form-open > .footer .footer__rating,
  .design-page.is-footer-form-open > .footer .footer__logo {
      margin-top: 837px;
    }
    .design-page.is-footer-form-open .footer__backword--upper {
      top: 935px;
    }
    .design-page.is-footer-form-open .footer__backword--lower {
      top: 972px;
    }


    .mobile-drawer {
      border-radius: 30px 0 0 30px;
    }
    .mobile-drawer__close {
      width: 44px;
      height: 44px;
      font-size: 27px;
    }
    .services-exact .request,
  .contacts-exact .contacts-form,
  .design-page.is-footer-form-open .footer-online-form {
      left: var(--mobile-form-gutter);
      width: var(--mobile-form-width);
    }


    .mobile-drawer {
      width: min(326px, calc(100vw - 28px));
      padding: 24px 22px 22px;
    }
    .mobile-drawer__head > a {
      width: 154px;
      height: 43px;
    }
    .mobile-drawer__head > a img {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
    .mobile-drawer__title {
      margin: 28px 0 12px;
      font: 500 27px/34px "Unbounded", sans-serif;
    }
    .mobile-drawer__nav {
      gap: 2px;
    }
    .mobile-drawer__nav a {
      min-height: 49px;
      padding: 0 15px;
      font: 500 17px/22px "Montserrat", sans-serif;
    }
    .mobile-drawer__nav a:last-child {
      min-height: 62px;
    }
    .mobile-drawer__cta {
      min-height: 56px;
      margin-top: 18px;
      font: 500 15px/20px "Montserrat", sans-serif;
    }
    .news-exact .useful-card--main .read-large {
      z-index: 3;
      left: auto;
      top: auto;
      right: 10px;
      bottom: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 72px;
      height: 28px;
      padding: 0;
      border: 1px solid rgba(255,255,255,.82);
      border-radius: 30px;
      background: rgba(255,255,255,.20);
      box-shadow: inset -2px 2px 4px rgba(70,62,55,.18), inset 2px -2px 4px rgba(255,255,255,.34), 0 0 7px rgba(255,255,255,.14);
      text-align: center;
      -webkit-backdrop-filter: blur(4px);
      backdrop-filter: blur(4px);
    }
    .news-exact .useful-card--main .read-large::before {
      display: none;
    }
    .design-page .contacts::before {
      left: 16px;
      width: calc(100vw - 32px);
    }


    .footer__nav nav,
  .contacts-exact > .footer .footer__nav nav {
      left: calc(50% + 9px);
      top: 54px;
      width: 264px;
      grid-template-columns: 110px 130px;
      grid-template-rows: repeat(3, 22px);
      column-gap: 24px;
      row-gap: 10px;
      transform: translateX(-50%);
      text-align: left;
    }
    .footer__nav nav a,
  .contacts-exact > .footer .footer__nav nav a {
      justify-self: start;
      text-align: left;
    }
    .footer__policy,
  .contacts-exact > .footer .footer__policy {
      left: calc(50% + 11px);
      top: 86px;
      width: 130px;
      text-align: left;
    }


    .price-card__button, .price-card--funeral .price-card__button, .price-card--cremation .price-card__button {
      font-size: 12px;
    }
    .design-page > .footer .footer__cta-button, .read-glass {
      font-size: 14px;
    }
    .service p, .workflow__list li strong, .workflow__list li p, .faq__list details > p, .statement__text, .contacts-hero__lead {
      font-size: 13px;
      line-height: 17px;
    }
    .topbar__phone b,
  .topbar__phone .topbar__phone-text--line-1,
  .topbar__phone .topbar__phone-text--line-2 {
      font-size: 10px;
      line-height: 12px;
    }
    .privacy-kicker {
      font-size: 12px;
      line-height: 16px;
    }
    .privacy-meta {
      font-size: 14px;
      line-height: 1.65;
    }
    .privacy-content {
      font-size: 15px;
      line-height: 1.65;
    }
    .privacy-content h2 {
      font-size: 19px;
      line-height: 1.42;
    }
    .mobile-menu-toggle {
      display: flex;
      align-items: center;
      justify-content: center;
      font: 400 14px/1 "Montserrat", sans-serif;
    }
    .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) {
      font: 500 16px/40px "Montserrat", sans-serif;
    }
    .footer__nav h3,
  .footer__contacts h3,
  .contacts-exact > .footer .footer__nav h3,
  .contacts-exact > .footer .footer__contacts h3 {
      font: 600 26px/32px "Unbounded", sans-serif;
    }
    .footer__nav nav,
  .contacts-exact > .footer .footer__nav nav {
      font: 500 18px/22px "Montserrat", sans-serif;
    }
    .footer__policy,
  .contacts-exact > .footer .footer__policy {
      font: 500 18px/22px "Montserrat", sans-serif;
    }
    .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) {
      font: 500 18px/22px "Montserrat", sans-serif;
    }
    .footer__contacts small,
  .contacts-exact > .footer .footer__contacts > p small {
      font: 500 14px/17px "Montserrat", sans-serif;
    }
    .footer__nav p,
  .contacts-exact > .footer .footer__nav p {
      font: 500 20px/24.5px "Montserrat", sans-serif;
    }
    .hero__eyebrow {
      font: 300 12px/15px "Unbounded", sans-serif;
    }
    .hero__description {
      font: 400 14px/22px "Montserrat", sans-serif;
    }
    .urgent-button {
      font: 500 14px/49px "Unbounded", sans-serif;
    }
    .hero__note {
      font: 300 12px/15px "Unbounded", sans-serif;
    }
    .section-tag {
      font: 300 12px/15px "Unbounded", sans-serif;
    }
    .section-title {
      font: 400 26px/32px "Unbounded", sans-serif;
    }
    .section-copy {
      font: 400 14px/18px "Montserrat", sans-serif;
    }
    .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 {
      font-size: 20px;
      line-height: 36px;
    }
    .service h3 {
      font: 400 16px/19.2px "Unbounded", sans-serif;
    }
    .service p {
      font: 400 12px/15px "Montserrat", sans-serif;
    }
    .price-card__body h3 {
      font: 400 16px/19.2px "Unbounded", sans-serif;
    }
    .price span {
      font-size: 26px;
      line-height: 32px;
    }
    .price small {
      font-size: 14px;
      line-height: 17px;
    }
    .price-card__body ul {
      font-size: 12px;
      line-height: 14.4px;
    }
    .price-card__button,
  .price-card--funeral .price-card__button,
  .price-card--cremation .price-card__button {
      font: 400 10px/36px "Montserrat", sans-serif;
    }
    .price-card__caption {
      font-size: 12px;
      line-height: 18px;
    }
    .workflow__intro > p:not(.section-tag) {
      font: 400 14px/17px "Montserrat", sans-serif;
    }
    .workflow__intro > a {
      font-size: 16px;
    }
    .workflow__list li > span {
      font-size: 14px;

    }

    .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 {
      font: 400 16px/20px "Montserrat", sans-serif;
    }
    .contacts__title {
      font: 400 24px/30px "Unbounded", sans-serif;
    }
    .contacts__copy {
      font-size: 14px;
      line-height: 18px;
    }
    .contacts__buttons a {
      font-size: 16px;
    }
    .contacts__address {
      font-size: 14px;
      line-height: 18px;
    }
    .faq__list summary {
      font-size: 14px;
      line-height: 17px;
    }
    .faq__list details > p {
      font-size: 12px;
      line-height: 15px;
    }
    .statement__text {
      font-size: 12px;
      line-height: 14.4px;
    }
    .design-page > .footer .footer__cta-copy h2 {
      font: 500 18px/23px "Unbounded", sans-serif;
    }
    .design-page > .footer .footer__cta-copy p {
      font-size: 14px;
      line-height: 17px;
    }
    .design-page > .footer .footer__cta-button {
      font: 400 12px/42px "Montserrat", sans-serif;
    }
    .services-exact .s-hero > p {
      font: 500 14px/17px "Montserrat", sans-serif;
    }
    .services-exact .cc b {
      font: 500 12px/14.4px "Unbounded", sans-serif;
    }
    .services-exact .c4 b {
      font-size: 12px;
      line-height: 15px;
    }
    .services-exact .turnkey h2 {
      font: 500 22px/27px "Unbounded", sans-serif;
    }
    .services-exact .turnkey p {
      font: 500 14px/17px "Montserrat", sans-serif;
    }
    .services-exact .turnkey a {
      font: 500 14px/43px "Montserrat", sans-serif;
    }
    .services-exact .request p {
      font: 300 14px/18px "Montserrat", sans-serif;
    }
    .services-exact .request input:not([type=checkbox]),
  .services-exact .request textarea {
      font-size: 14px;
    }
    .services-exact .request button {
      font-size: 16px;
    }
    .services-exact .request label {
      font-size: 14px;
      line-height: 18px;
    }
    .latest-feature h2 {
      font: 600 18px/23px "Montserrat", sans-serif;
    }
    .latest-list > h2 {
      font: 400 26px/32px "Unbounded", sans-serif;
    }
    .latest-list article h3 {
      font: 600 14px/17px "Montserrat", sans-serif;
    }
    .latest-list article time {
      font-size: 12px;
    }
    .latest-list .read-small,
  .latest-list article:nth-of-type(2) .read-small,
  .latest-list article:nth-of-type(3) .read-small {
      font: 400 14px/37px "Montserrat", sans-serif;
    }
    .useful > h2 {
      font: 400 26px/32px "Unbounded", sans-serif;
    }
    .useful-card h3 {
      font: 500 14px/17px "Unbounded", sans-serif;
    }
    .useful-card--main h3 {
      font-size: 18px;
      line-height: 22px;
    }
    .read-glass {
      font: 400 12px/30px "Montserrat", sans-serif;
    }
    .contacts-hero__title {
      font: 400 26px/32px "Unbounded", sans-serif;
    }
    .contacts-hero__lead {
      font: 400 12px/15px "Montserrat", sans-serif;
    }
    .contacts-hero__cta > span {
      font-size: 16px;
      line-height: 19.2px;
    }
    .contacts-tag {
      font-size: 12px;
      line-height: 15px;
    }
    .contacts-connect > h2 {
      font-size: 26px;
      line-height: 32px;
    }
    .contacts-card__hit::after {
      font: 400 14px/27px "Montserrat", sans-serif;
    }
    .contacts-card__select::after {
      font: 600 16px/19.2px "Montserrat", sans-serif;
    }
    .contacts-card__select-title {
      line-height: 32px;
    }
    .contacts-card__select-copy {
      font: 400 14px/17px "Montserrat", sans-serif;
    }
    .contacts-map > h2 {
      font-size: 26px;
      line-height: 32px;
    }
    .contacts-map > p {
      font-size: 14px;
      line-height: 18px;
    }
    .contacts-form__lead {
      font: 300 14px/18px "Montserrat", sans-serif;
    }
    .contacts-input input,
  .contacts-input textarea {
      font-size: 14px;
    }
    .contacts-submit {
      font-size: 16px;
    }
    .contacts-consent {
      font-size: 14px;
      line-height: 18px;
    }
    .contacts-family h2 {
      font: 400 26px/31.2px "Unbounded", sans-serif;
    }
    .contacts-family__copy {
      font: 400 16px/20px "Montserrat", sans-serif;
    }
    .pricing-expanded__heading h3 {

      font-size: 26px;
      line-height: 32px;
    }
    .pricing-expanded__heading .price span {

      font-size: 16px;
      line-height: 20px;
    }
    .pricing-expanded__heading .price small {
      font-size: 12px;
      line-height: 15px;
    }
    .pricing-expanded__pills span {
      font-size: 12px;
      line-height: 14.5px;
    }
    .pricing-expanded__collapse {
      font-size: 12px;
    }
    .faq__answer p {
      font: 400 12px/14.4px "Montserrat", sans-serif;
    }
    .footer-online-form__panel h2 {
      font: 400 24px/31px "Unbounded", sans-serif;
    }
    .footer-online-form__panel > p {
      font: 300 14px/18px "Montserrat", sans-serif;
    }
    .footer-online-form__panel > input,
  .footer-online-form__panel > textarea {
      font-size: 14px;
    }
    .footer-online-form__panel > button[type="submit"] {
      font-size: 16px;
    }
    .footer-online-form__panel > label {
      font-size: 14px;
      line-height: 18px;
    }
    .footer-online-form__close {
      font-size: 12px;
    }
    .form-status {
      font-size: 12px;
      line-height: 15px;
    }
    .call-chooser h2 {
      font-size: 21px;
      line-height: 27px;
    }
    .interactive-map__actions a,
  .interactive-map__actions button {
      font-size: 12px;
    }
    .article-preview__topbar > span {
      font-size: 12px;
      line-height: 16px;
    }
    .article-preview__body h2 {
      font-size: 22px;
      line-height: 28px;
    }
    .article-preview__body p,
  .article-preview__copy li {
      font-size: 14px;
      line-height: 18px;
    }
    .article-preview__copy h3 {
      font-size: 16px;
      line-height: 20px;
    }
    .service-detail__eyebrow {
      font-size: 12px;
      line-height: 15px;
    }
    .service-detail h2 {
      font-size: 22px;
      line-height: 28px;
    }
    .service-detail__lead {
      font-size: 14px;
      line-height: 19px;
    }
    .service-detail__body p,
  .service-detail__body li {
      font-size: 14px;
      line-height: 18px;
    }
    .service-detail__body h3 {
      font-size: 16px;
      line-height: 20px;
    }
    .service-detail__close {
      font-size: 12px;
      line-height: 16px;
    }
    .footer-online-form .form-status {
      font-size: 12px;
      line-height: 15px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel h2 {
      font-size: 22px;
      line-height: 28px;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > p {
      font-size: 12px;
      line-height: 16px;
      font: 300 14px/18px "Montserrat", sans-serif;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > label {
      font-size: 12px;
      line-height: 15px;
      font: 300 14px/18px "Montserrat", sans-serif;
    }
    .article-preview__close {
      font-size: 12px;
      line-height: 16px;
    }
    .article-preview__body time {
      font-size: 12px;
      line-height: 15px;
    }
    .contacts-form__panel input.contacts-submit,
  .contacts-form__panel input.contacts-submit:hover,
  .contacts-form__panel input.contacts-submit:active,
  .contacts-form__panel input.contacts-submit:focus,
  .contacts-form__panel input.contacts-submit:focus-visible {
      font: 400 16px/20px "Montserrat", sans-serif;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > input,
  .design-page.is-footer-form-open .footer-online-form__panel > textarea {
      font: 300 14px/18px "Montserrat", sans-serif;
    }
    .design-page.is-footer-form-open .footer-online-form__panel > button[type="submit"] {
      font: 400 16px/20px "Montserrat", sans-serif;
    }
    .design-page.is-footer-form-open .footer-online-form__close {
      font-size: 12px;
      line-height: 16px;
    }
    .news-exact .useful-card--main .read-large {
      font: 400 12px/30px "Montserrat", sans-serif;
    }


    .hero__eyebrow {
      top: 148px;
    }
    .hero__title {
      top: 196px;
    }
    .hero__description {
      top: 324px;
      width: min(312px, var(--mobile-content));
    }
    .hero__note {
      top: 492px;
      white-space: normal;
    }
    .hero__features {
      top: 582px;

      align-items: start;
    }
    .first-steps__copy {
      top: 164px;
      width: min(292px, var(--mobile-content));
    }
    .folder-cards {
      top: 250px;
    }
    .folder-card__text h3 {
      font: 400 16px/20px "Unbounded", sans-serif;
    }
    .folder-card__text p {
      margin-top: 8px;
      font: 400 12px/15px "Montserrat", sans-serif;
    }
    .services__copy {
      top: 202px;
      width: min(320px, var(--mobile-content));
    }
    .services__grid {
      top: 280px;
    }
    .pricing-expanded {
      top: 20px;
      display: block;
      height: 618px;
      padding: 22px;
    }
    .pricing-expanded__media {
      position: absolute;
      left: 22px;
      top: 30px;
      width: 102px;
      height: 142px;
    }
    .pricing-expanded__media img,
  .pricing-expanded[data-kind="cremation"] .pricing-expanded__media img {
      width: 102px;
      height: 142px;
      object-fit: contain;
    }
    .pricing-expanded__content {
      position: absolute;
      inset: 22px;
      display: block;
      width: auto;
      min-height: 0;
      padding: 0 0 42px;
    }
    .pricing-expanded__heading {
      display: flex;
      min-height: 150px;
      padding: 14px 0 0 122px;
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-start;
      gap: 6px;
    }
    .pricing-expanded__heading h3 {
      width: 100%;
      font: 400 26px/32px "Unbounded", sans-serif;
    }
    .pricing-expanded__heading .price {
      display: flex;
      width: 100%;
      margin: 0;
      align-items: baseline;
      gap: 4px;
    }
    .pricing-expanded__heading .price span {
      font: 400 16px/20px "Unbounded", sans-serif;
    }
    .pricing-expanded__heading .price small {
      margin: 0;
      font: 400 12px/15px "Unbounded", sans-serif;
    }
    .pricing-expanded__copy {
      margin-top: 4px;
      font: 400 14px/17px "Montserrat", sans-serif;
    }
    .pricing-expanded__copy p + p {
      margin-top: 7px;
    }
    .pricing-expanded__pills {
      grid-template-columns: 1fr;
      gap: 7px;
    }
    .pricing-expanded__pills span {
      min-height: 38px;
      height: 38px;
      padding: 5px 12px;
      font: 500 12px/14.5px "Montserrat", sans-serif;
    }
    .workflow__intro > a {
      margin-top: 27px;
    }
    .workflow__list {
      top: 410px;
      gap: 12px;
    }
    .workflow__list li {
      display: grid;
      grid-template-columns: 32px minmax(80px, 104px) 1px minmax(0, 1fr);
      align-items: center;
      column-gap: 9px;
      width: 100%;
      height: 54px;
      min-height: 54px;
      padding: 7px 10px;
      white-space: normal;
    }
    .workflow__list li > span {
      width: 32px;
      height: 32px;
      line-height: 30px;
    }
    .workflow__list li strong {
      width: auto;
      min-width: 0;
      white-space: nowrap;
      font-size: 12px;
      line-height: 14px;
    }
    .workflow__list li i {
      width: 1px;
      height: 18px;
      margin: 0;
    }
    .workflow__list li p {
      width: auto;
      min-width: 0;
      font-size: 11px;
      line-height: 13px;
    }
    .trust__copy {
      top: 108px;
    }
    .trust__cards {
      left: 16px;
      top: 194px;
      width: calc(100vw - 32px);
      grid-template-rows: repeat(4, 170px);
      gap: 14px;
      height: 722px;
    }
    .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) {
      width: 100%;
      height: 170px;
    }
    .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: 22px;
      top: 23px;
      width: calc(100% - 44px);
      gap: 18px;
    }
    .trust__cards article strong {
      max-width: calc(100% - 64px);
      white-space: nowrap;
      font: 300 16px/20px "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: 22px;
      top: 90px;
      width: calc(100% - 44px);
    }
    .contacts__tag {
      left: 40px;
    }
    .contacts__title {
      left: 40px;
      width: calc(100vw - 80px);
    }
    .contacts__title br {
      display: none;
    }
    .contacts__copy {
      left: 40px;
      width: calc(100vw - 80px);
    }
    .contacts__phones,
  .contacts__buttons {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, min(124px, calc((100vw - 104px) / 2))));
      column-gap: 24px;
      justify-content: start;
    }
    .contacts__phones {
      left: 40px;
      width: calc(100vw - 80px);
      font-size: clamp(13px, 3.5vw, 14px);
    }
    .contacts__phones a {
      min-width: 0;
      justify-self: start;
      white-space: nowrap;
      text-align: left;
    }
    .contacts__buttons {
      left: 40px;
      width: calc(100vw - 80px);
    }
    .contacts__buttons a {
      width: min(124px, 100%);
      justify-self: start;
    }
    .contacts__address {
      left: 40px;
      width: calc(100vw - 80px);
      gap: 13px;
    }
    .contacts__address img {
      margin-right: 10px;
    }
    .faq__copy {
      top: 104px;
    }
    .statement__signature {
      top: 66px;
    }
    .design-page > .footer .footer__cta-copy {
      left: 50px;
      top: 23px;
      width: calc(100% - 100px);
    }
    .design-page.is-footer-form-open .footer-online-form__panel > label .privacy-consent-link {
      width: 205px;
      transform: translateX(-20px);
    }
    .topbar__phone,
  .contacts-exact .topbar__phone {
      width: 108px;
    }
    .topbar__phone img,
  .contacts-exact .topbar__phone img {
      transform: translateX(-4px);
    }
    .topbar__phone span,
  .contacts-exact .topbar__phone span {
      height: 26px;
    }
    .topbar__phone .topbar__phone-text--line-1,
  .contacts-exact .topbar__phone .topbar__phone-text--line-1 {
      top: 0;
    }
    .topbar__phone .topbar__phone-text--line-2,
  .contacts-exact .topbar__phone .topbar__phone-text--line-2 {
      top: 14px;
    }




    .hero__note {
      left: var(--mobile-gutter);
      width: var(--mobile-content);
      transform: none;
      text-align: left;
    }
    .hero__features {
      display: flex;
      grid-template-columns: none;
      justify-content: space-between;
      column-gap: 0;
      width: var(--mobile-content);
    }
    .hero-feature,
  .hero-feature--clock,
  .hero-feature--pin,
  .hero-feature--document {
      width: 30%;
      min-width: 0;
      gap: 7px;
      flex: 0 0 30%;
      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;
      flex: 0 0 auto;
    }
    .pricing-expanded__pills {
      margin-top: 20px;
    }
    .contacts__map {
      top: 22px;
    }
    .faq__list {
      top: 210px;
    }


    .design-page .contacts::before {
      top: 410px;
    }
    .contacts__tag {
      top: 436px;
    }
    .contacts__title {
      top: 468px;
    }
    .contacts__copy {
      top: 570px;
    }
    .contacts__phones {
      top: 634px;
    }
    .contacts__buttons {
      top: 668px;
    }
    .contacts__address {
      top: 722px;
    }
    .faq {
      top: 5850px;
    }
    .statement {
      top: 6390px;
    }






    .services-exact .turnkey > div {
      left: -8px;
      width: calc(100% + 16px);
    }
    .services-exact .turnkey h2 {
      white-space: nowrap;
      letter-spacing: -0.5px;
    }
    .services-exact .turnkey p {
      margin: 18px 0 20px;
    }
    .services-exact .request {
      top: 1197px;
    }
    .services-exact .request > img {
      border-radius: 15px;
      overflow: hidden;
    }
    .services-exact .request label .privacy-consent-link {
      display: block;
      width: 205px;
      transform: translateX(-20px);
    }
    .services-exact > .footer {
      top: 2229px;
    }
















    .trust__hands {
      top: 1278px;
      scale: 1.04;
      transform-origin: center top;
    }


    .contacts-hero__title::before {
      left: 120px;
      width: 195px;
    }
    .contacts-card__select-title {
      font-size: 12px;
    }


    .contacts-card__select-copy {
      top: 39px;
    }


    .contacts-map__frame {
      transform: translateY(18px);
    }
    .contacts-consent .privacy-consent-link {
      display: block;
      width: 205px;
      max-width: 205px;
      transform: translateX(-20px);
      line-height: 18px;
    }




    .design-page:not(.is-footer-form-open) .scene--footer {
      height: 1328px;
      background-image: url("/assets/mobile/home-footer-exact.164c12e7f1.webp");
      background-position: center top;
      background-size: 100% 100%;
      background-repeat: no-repeat;
      background-color: transparent;
    }
    .design-page.is-footer-form-open .scene--footer {
      background-color: transparent;
    }



    body:has(.services-exact) {
      background: var(--mobile-paper);
    }


    .services-exact .request,
  .services-exact .request ~ .service-footer-scene,
  .services-exact .request ~ .service-footer-transition,
  .services-exact .request ~ .footer {
      transform: translateY(-29px);
    }


    .services-exact > .s-hero ~ * {
      transform: translateY(-72px);
    }
    .services-exact {
      height: 3077px;
      min-height: 3077px;
    }
    .services-exact > .footer {
      height: 920px;
      min-height: 920px;
      overflow: visible;
    }


    .services-exact .carousel:has(.cc[data-service-id="care"][aria-expanded="true"]) .service-detail,
  .services-exact .carousel:has(.cc[data-service-id="canopies"][aria-expanded="true"]) .service-detail {
      display: flex;
      height: auto;
      min-height: 0;
      max-height: none;
      flex-direction: column;
      overflow: hidden;
    }
    .services-exact .carousel:has(.cc[data-service-id="care"][aria-expanded="true"]) .service-detail__image,
  .services-exact .carousel:has(.cc[data-service-id="canopies"][aria-expanded="true"]) .service-detail__image {
      position: relative;
      inset: auto;
      display: block;
      flex: 0 0 190px;
      width: 100%;
      height: 190px;
      border-radius: 14px 14px 0 0;
      object-fit: cover;
    }
    .services-exact .carousel:has(.cc[data-service-id="care"][aria-expanded="true"]) .service-detail__content,
  .services-exact .carousel:has(.cc[data-service-id="canopies"][aria-expanded="true"]) .service-detail__content {
      position: relative;
      inset: auto;
      display: flex;
      flex: 0 0 auto;
      width: 100%;
      height: auto;
      min-height: 0;
      padding: 20px 22px 18px;
      flex-direction: column;
    }
    .services-exact .carousel:has(.cc[data-service-id="care"][aria-expanded="true"]) .service-detail__body,
  .services-exact .carousel:has(.cc[data-service-id="canopies"][aria-expanded="true"]) .service-detail__body {
      min-height: 0;
      padding: 0;
      overflow: visible;
      scrollbar-width: none;
    }
    .services-exact .carousel:has(.cc[data-service-id="care"][aria-expanded="true"]) .service-detail__body::-webkit-scrollbar,
  .services-exact .carousel:has(.cc[data-service-id="canopies"][aria-expanded="true"]) .service-detail__body::-webkit-scrollbar {
      display: none;
    }
    .privacy-page .footer__nav {
      overflow: visible;
    }
    .privacy-page .footer__nav nav {
      left: calc(50% + 9px);
      top: 54px;
      width: 264px;
      grid-template-columns: 110px 130px;
      grid-template-rows: repeat(3, 22px);
      column-gap: 24px;
      row-gap: 10px;
      transform: translateX(-50%);
      text-align: left;
    }
    .privacy-page .footer__nav nav a {
      justify-self: start;
      text-align: left;
    }
    .privacy-page .footer__policy {
      left: calc(50% + 11px);
      top: 86px;
      width: 130px;
      text-align: left;
    }
    .contacts__map.interactive-map,
  .contacts-map__frame.interactive-map {
      position: relative;
      overflow: hidden;
      pointer-events: auto;
      touch-action: auto;
      user-select: none;
      -webkit-user-select: none;
    }
    .contacts__map.interactive-map::before,
  .contacts__map.interactive-map::after,
  .contacts-map__frame.interactive-map::before,
  .contacts-map__frame.interactive-map::after {
      pointer-events: none;
    }
    .contacts__map.interactive-map > img,
  .contacts-map__frame.interactive-map > img {
      pointer-events: none;
    }
    .contacts__map.interactive-map > .interactive-map__frame,
  .contacts-map__frame.interactive-map > .interactive-map__frame {
      z-index: 2;
      display: block;
      width: 100%;
      height: 100%;
      border: 0;
      pointer-events: auto;
      touch-action: auto;
    }
    .contacts__map.interactive-map .interactive-map__location-label,
  .contacts-map__frame.interactive-map .interactive-map__location-label {
      z-index: 3;
      max-width: calc(100% - 112px);
      font-size: 11px;
      line-height: 14px;
      pointer-events: none;
    }
    .contacts__map.interactive-map .interactive-map__actions,
  .contacts-map__frame.interactive-map .interactive-map__actions {
      z-index: 3;
      display: flex;
      pointer-events: none;
    }
    .contacts__map.interactive-map .interactive-map__actions a,
  .contacts-map__frame.interactive-map .interactive-map__actions a {
      pointer-events: auto;
    }


    .faq__item:nth-child(3).is-open {
      height: 124px;
    }
    .faq__item:nth-child(3).is-open .faq__answer {
      top: 48px;
      padding: 8px 16px 16px;
    }
  }

  /* Mobile home: FAQ answers use the space already reserved in the layout.
     Opening an answer must not push the quote, footer or page height down. */
  @media (max-width: 767px) {





    /* The online form starts exactly where the quote starts in the closed state.
       Keep the footer itself in place and extend its background scene from the
       original 6490px seam down to the new page bottom. This removes the white
       strip between the lower scene and the footer while only gently stretching
       the footer texture. */



  }

}

