

/* Start:/assets/nm-home-30721624e8a6f42717bd.css?1791574867279163*/
.page-fidelity .f-portfolio {
    background: 0 0;
    overflow: hidden
}

.page-fidelity .f-portfolio > .container {
    z-index: 1;
    position: relative
}

.page-fidelity .f-portfolio .f-project__controls {
    left: 24px;
    right: 24px
}

.page-fidelity .f-portfolio .f-project__thumbs {
    flex-basis: 350px;
    width: 350px;
    transform: translateY(3px)
}

.page-fidelity .f-portfolio .f-project__thumbs button {
    border: .773px solid #000
}

.page-fidelity .f-portfolio .f-project__arrow {
    border-radius: 14px;
    justify-content: center;
    align-items: center;
    display: flex;
    transform: translateY(-.5px)
}

.page-fidelity .f-portfolio .f-project__arrow--next {
    border: 0
}

.page-fidelity .f-portfolio .f-project__arrow svg {
    fill: #0000;
    stroke: currentColor;
    stroke-width: 2px;
    width: 32.7273%;
    height: 40%
}

.page-fidelity .f-portfolio .f-project__arrow--next svg {
    transform: rotate(180deg)
}

.page-fidelity .f-portfolio .f-project__details {
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    padding: 12px 23px;
    transition: opacity .3s, visibility .3s, transform .3s;
    position: absolute;
    bottom: 23%;
    left: 15px;
    transform: translateY(10px)
}

.page-fidelity .f-portfolio .f-project__details svg {
    fill: #0000;
    stroke: #fff;
    stroke-width: 2px;
    width: 18px;
    height: 13.5px;
    margin-left: 10px;
    transform: rotate(180deg)
}

@media (hover: hover) {
    .page-fidelity .f-portfolio .f-project__gallery:hover .f-project__details, .page-fidelity .f-portfolio .f-project__gallery:focus-within .f-project__details {
        opacity: 1;
        visibility: visible;
        transform: none
    }
}

.page-fidelity .f-portfolio .f-project__meta {
    border-radius: 15px;
    gap: 10px;
    font-size: 16px;
    line-height: 1.3
}

.page-fidelity .f-portfolio .f-project__meta-item {
    color: inherit;
    white-space: nowrap;
    flex: none;
    align-items: center;
    -webkit-text-decoration: underline #0000;
    text-decoration: underline #0000;
    display: flex
}

.page-fidelity .f-portfolio .f-project__meta-item svg {
    flex: none;
    width: 24px;
    height: 24px;
    margin-right: 10px
}

.page-fidelity .f-portfolio .f-project__meta-item:hover {
    color: inherit;
    text-decoration-color: currentColor
}

.page-fidelity .f-portfolio .f-project h3 {
    margin-top: 15px;
    line-height: 1.3
}

.page-fidelity .f-portfolio .f-project h3 a {
    color: #000
}

@media (max-width: 700px) {
    .page-fidelity .f-portfolio .f-project {
        padding-bottom: 0
    }

    .page-fidelity .f-portfolio .f-project__gallery {
        border-radius: 15px;
        overflow: hidden
    }

    .page-fidelity .f-portfolio .f-project__controls {
        left: auto;
        right: auto
    }

    .page-fidelity .f-portfolio .f-project__details {
        display: none
    }

    .page-fidelity .f-portfolio .f-project__thumbs {
        flex-basis: 290px;
        width: 290px;
        transform: none
    }

    .page-fidelity .f-portfolio .f-project__thumbs button {
        border-width: 1px
    }

    .page-fidelity .f-portfolio .f-project__arrow {
        transform: translateY(1px)
    }

    .page-fidelity .f-portfolio .f-project h3 {
        margin-top: 15px;
        font-size: 18px;
        line-height: 1.3
    }

    .page-fidelity .f-portfolio .f-project__meta {
        color: #000;
        border-radius: 0;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 10px;
        min-height: 0;
        margin-top: 0;
        font-size: 14px;
        line-height: 1.3;
        display: flex
    }

    .page-fidelity .f-portfolio .f-project__meta-item {
        margin-top: 10px
    }

    .page-fidelity .f-portfolio .f-project__meta-item svg {
        width: 21.6px;
        height: 21.6px;
        margin-right: 8px
    }
}

@keyframes f-recommendation-move {
    to {
        transform: translate(calc(-50% - 50px))
    }
}

@keyframes f-recommendation-surface {
    0%, to {
        background-color: #0d4e96
    }
    33%, 66% {
        background-color: #fff
    }
}

@keyframes f-recommendation-ink {
    0%, to {
        color: #fff;
        -webkit-text-stroke-color: #fff
    }
    33% {
        color: #000;
        -webkit-text-stroke-color: #000
    }
    66% {
        color: #fff;
        -webkit-text-stroke-color: #000
    }
}

@keyframes f-reputation-reading-progress {
    0% {
        background-position-x: 13.75%
    }
    to {
        background-position-x: -107.917%
    }
}

@media (min-width: 1201px) {
    .page-fidelity.page-fidelity--home .f-design-prices {
        background: 0 0;
        height: 595.125px;
        padding: 0
    }

    .page-fidelity.page-fidelity--home .f-design-prices > .container {
        height: 71.1875px
    }

    .page-fidelity.page-fidelity--home .f-design-prices .f-heading {
        width: 100%;
        height: 50.3906px;
        margin: 0;
        font-size: 36px;
        line-height: 50.4px
    }

    .page-fidelity.page-fidelity--home .f-design-prices .container > p {
        color: red;
        height: 20.7969px;
        margin: 0;
        font-family: Manrope, Arial, sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 20.8px
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid {
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap: 0;
        width: auto;
        max-width: none;
        height: 423.938px;
        margin: 100px 70px 0;
        padding: 0;
        display: grid
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid article {
        color: #000;
        background: 0 0;
        border: 1px solid #0000004d;
        border-radius: 0;
        flex-direction: column;
        width: auto;
        height: 423.938px;
        min-height: 0;
        margin: 0;
        padding: 34px 20px 30px 15px;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid article:nth-child(n+2) {
        padding-left: 20px;
        padding-right: 15px
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid h3 {
        color: #252b42;
        height: 20.7969px;
        margin: 0;
        font-family: Manrope, Arial, sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 20.8px
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid article > .f-design-price__value {
        color: #0d4e96;
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
        height: 88.5938px;
        margin: 15px 0 0;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid s {
        color: #0d4e96;
        opacity: .65;
        height: 28.5938px;
        font-family: Manrope, Arial, sans-serif;
        font-size: 26px;
        font-weight: 700;
        line-height: 28.6px;
        text-decoration: line-through;
        display: block
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid strong {
        color: red;
        height: 50px;
        font-family: Manrope, Arial, sans-serif;
        font-size: 40px;
        font-weight: 700;
        line-height: 50px;
        display: block
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid article > span {
        color: #8c8c8c;
        height: 23.9375px;
        margin: 15px 0 0;
        font-size: 14px;
        line-height: 23.94px
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid article > p {
        color: #000;
        letter-spacing: .2px;
        flex: 0 0 71.8125px;
        height: 71.8125px;
        margin: 5px 0 0;
        font-size: 14px;
        line-height: 23.94px
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid .btn {
        color: #e1e1e1;
        text-transform: none;
        white-space: nowrap;
        border-radius: 49px;
        align-self: flex-start;
        width: 210px;
        height: 52px;
        min-height: 52px;
        margin: 30px 0 0;
        padding: 5.25px 40px;
        font-family: Montserrat, Arial, sans-serif;
        font-size: 14px;
        font-weight: 700;
        line-height: 14px
    }

    .page-fidelity.page-fidelity--home .f-design-prices__grid article > a {
        color: #121212;
        text-align: left;
        height: 20.7969px;
        margin: 15px 0 0 20px;
        font-size: 16px;
        line-height: 20.8px;
        text-decoration: none;
        display: block
    }

    .page-fidelity.page-fidelity--home .f-statement--reputation {
        background: radial-gradient(440px 520px at -95px 48%, #8baee085, #f2f2f200 77%), radial-gradient(390px 520px at calc(100% + 125px) 58%, #8baee052, #f2f2f200 78%);
        height: 156px;
        min-height: 156px;
        display: block;
        overflow: visible
    }

    .page-fidelity.page-fidelity--home .f-statement--reputation > .container {
        height: 156px;
        padding-top: 0;
        padding-bottom: 0
    }

    .page-fidelity.page-fidelity--home .f-statement--reputation p {
        color: #000;
        text-indent: 420px;
        -webkit-text-fill-color: transparent;
        background: linear-gradient(90deg, #8c8c8c 50%, #000 50%) -79.0864% 0/200% 100%;
        -webkit-background-clip: text;
        background-clip: text;
        width: 1130px;
        max-width: 100%;
        height: 156px;
        margin: 0;
        font-family: Manrope, Arial, sans-serif;
        font-size: 30px;
        font-weight: 400;
        line-height: 39px;
        display: block
    }

    @supports (animation-timeline:view()) {
        .page-fidelity.page-fidelity--home .f-statement--reputation p {
            animation: 1s linear both f-reputation-reading-progress;
            animation-timeline: view();
            animation-range: cover
        }
    }.page-fidelity.page-fidelity--home .f-running-line--recommendation {
         color: #fff;
         background: #0d4e96;
         border-top: 1px solid #1212124d;
         border-bottom: 1px solid #1212124d;
         height: 120px;
         min-height: 120px;
         animation: 20s linear infinite f-recommendation-surface;
         overflow: hidden
     }

    .page-fidelity.page-fidelity--home .f-running-line--recommendation > div {
        white-space: nowrap;
        align-items: center;
        gap: 0;
        width: max-content;
        height: 100%;
        animation: 20s linear infinite f-recommendation-move, 20s linear infinite f-recommendation-ink;
        display: flex;
        transform: translate(0)
    }

    .page-fidelity.page-fidelity--home .f-running-line--recommendation span {
        color: #0000;
        background: url(/media/fidelity/common/snowflake.svg) 50%/contain no-repeat;
        flex: 0 0 83px;
        width: 83px;
        height: 83px;
        margin: 0 38px 0 100px;
        font-size: 0;
        display: block
    }

    .page-fidelity.page-fidelity--home .f-running-line--recommendation strong {
        max-width: none;
        color: inherit;
        -webkit-text-stroke: 1px currentColor;
        font-family: Days One, Montserrat, Arial, sans-serif;
        font-size: 42px;
        font-weight: 400;
        line-height: 54.6px
    }

    .page-fidelity.page-fidelity--home .f-findout {
        background: #fff;
        height: 464.578px;
        padding: 60px 0 0
    }

    .page-fidelity.page-fidelity--home .f-findout > .container {
        height: 74px
    }

    .page-fidelity.page-fidelity--home .f-findout .f-heading {
        justify-content: space-between;
        align-items: center;
        width: 100%;
        height: 74px;
        margin: 0;
        font-size: 36px;
        line-height: 50.4px;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-findout .f-heading > svg {
        fill: #121212;
        flex: 0 0 74px;
        width: 74px;
        height: 74px;
        margin-left: 10px;
        display: block
    }

    .page-fidelity.page-fidelity--home .f-findout__grid {
        border: 0;
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap: 0;
        width: 100%;
        max-width: none;
        height: 270.578px;
        margin: 60px 0 0;
        padding: 0;
        display: grid
    }

    .page-fidelity.page-fidelity--home .f-findout__grid article {
        background: 0 0;
        border: 1px solid #1212124d;
        border-radius: 0;
        flex-direction: column;
        width: auto;
        height: 270.578px;
        min-height: 0;
        margin: 0;
        padding: 44px 30px 44px 70px;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-findout__grid article:first-child {
        padding-left: 70px;
        padding-right: 30px
    }

    .page-fidelity.page-fidelity--home .f-findout__grid article:nth-child(2) {
        padding-left: 30px;
        padding-right: 30px
    }

    .page-fidelity.page-fidelity--home .f-findout__grid article:nth-child(3) {
        padding-left: 30px;
        padding-right: 60px
    }

    .page-fidelity.page-fidelity--home .f-findout__grid h3 {
        color: #121212;
        height: 23.3906px;
        margin: 0 0 10px;
        font-family: Manrope, Arial, sans-serif;
        font-size: 18px;
        font-weight: 700;
        line-height: 23.4px
    }

    .page-fidelity.page-fidelity--home .f-findout__grid p {
        color: #121212;
        min-height: 0;
        margin: 0;
        font-family: Manrope, Arial, sans-serif;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity.page-fidelity--home .f-findout__grid article:first-child > p {
        margin-bottom: 20px
    }

    .page-fidelity.page-fidelity--home .f-findout__contact {
        justify-content: flex-start;
        align-items: center;
        gap: 16px;
        width: 100%;
        height: 36px;
        margin: 0 0 8px;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-findout__phone {
        color: #000;
        align-items: center;
        width: auto;
        height: 22.7969px;
        margin: 0;
        font-size: 16px;
        font-weight: 400;
        line-height: 20.8px;
        text-decoration: none;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-findout__phone > svg {
        fill: none;
        stroke: #292d32;
        stroke-width: 2px;
        flex: 0 0 18px;
        width: 18px;
        height: 18px;
        margin-right: 13.3438px
    }

    .page-fidelity.page-fidelity--home .f-findout__phone > span {
        border-bottom: 1px solid;
        line-height: 20px
    }

    .page-fidelity.page-fidelity--home .f-findout__socials {
        flex: 0 0 72px;
        width: 72px;
        height: 36px;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-findout__socials a {
        color: #0d4e96;
        justify-content: center;
        align-items: center;
        width: 36px;
        height: 36px;
        text-decoration: none;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-findout__socials svg {
        fill: currentColor;
        width: 20px;
        height: 20px;
        display: block
    }

    .page-fidelity.page-fidelity--home .f-findout__socials a:last-child svg {
        fill: #0d4e96;
        stroke: #0d4e96
    }

    .page-fidelity.page-fidelity--home .f-findout__grid small {
        color: #121212;
        height: 41.5938px;
        margin: 0;
        font-size: 16px;
        line-height: 20.8px;
        display: block
    }

    .page-fidelity.page-fidelity--home .f-findout__grid .btn {
        color: #e1e1e1;
        text-transform: uppercase;
        white-space: nowrap;
        border-radius: 49px;
        align-self: flex-start;
        width: auto;
        min-width: 222px;
        height: 42px;
        min-height: 42px;
        margin: auto 0 0;
        padding: 5.25px 24px;
        font-family: Manrope, Arial, sans-serif;
        font-size: 14px;
        font-weight: 600;
        line-height: 14px
    }
}

@media (max-width: 1200px) {
    .page-fidelity--home .f-findout .f-heading > svg {
        display: none
    }

    .page-fidelity.page-fidelity--home .f-findout__contact {
        align-items: center;
        gap: 10px;
        height: 28px;
        margin: 0 0 8px;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-findout__phone {
        color: #121212;
        align-items: center;
        width: auto;
        height: 22px;
        margin: 0;
        font-size: 16px;
        font-weight: 400;
        line-height: 20.8px;
        text-decoration: none;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-findout__phone > svg {
        fill: none;
        stroke: #292d32;
        stroke-width: 2px;
        flex: 0 0 18px;
        width: 18px;
        height: 18px;
        margin-right: 8px
    }

    .page-fidelity.page-fidelity--home .f-findout__phone > span {
        border-bottom: 1px solid
    }

    .page-fidelity.page-fidelity--home .f-findout__socials {
        height: 28px;
        display: flex
    }

    .page-fidelity.page-fidelity--home .f-findout__socials a {
        color: #0d4e96;
        place-items: center;
        width: 28px;
        height: 28px;
        display: grid
    }

    .page-fidelity.page-fidelity--home .f-findout__socials svg {
        fill: currentColor;
        width: 18px;
        height: 18px
    }

    .page-fidelity.page-fidelity--home .f-findout__grid small {
        margin: 0;
        font-size: 16px;
        line-height: 20.8px
    }
}

body.page-fidelity footer.site-footer.f-footer {
    z-index: 2;
    color: #121212;
    background: #fff;
    border: 1px solid #0000004d;
    border-radius: 15px 15px 0 0;
    width: 100%;
    height: 611.359px;
    padding: 0;
    position: relative;
    overflow: hidden
}

body.page-fidelity footer.f-footer .f-footer__glow {
    z-index: 0;
    opacity: .8;
    pointer-events: none;
    background: 0 0;
    border-radius: 0;
    width: 673px;
    height: 742px;
    position: absolute
}

body.page-fidelity footer.f-footer .f-footer__glow:before {
    content: "";
    background: radial-gradient(circle closest-side, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #fff0 100%);
    border-radius: 50%;
    width: 213.967%;
    height: 250%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

body.page-fidelity footer.f-footer .f-footer__glow--left {
    top: -93px;
    left: calc(-666px + max(0px, 50vw - 700px))
}

body.page-fidelity footer.f-footer .f-footer__glow--right {
    top: -224px;
    right: calc(-549px + max(0px, 50vw - 700px))
}

body.page-fidelity footer.f-footer .f-footer__main {
    z-index: 2;
    border-bottom: 1px solid #1212121a;
    grid-template-rows:199.984px 148.578px;
    grid-template-columns:369px minmax(0, 1fr) minmax(0, 1fr) 381px;
    width: 100%;
    height: 349.563px;
    min-height: 0;
    display: grid;
    position: relative
}

body.page-fidelity footer.f-footer .f-footer__brand {
    border-right: 1px solid #1212121a;
    flex-direction: column;
    grid-row: 1/3;
    justify-content: flex-end;
    height: 348.563px;
    padding: 30px 20px 30px 70px;
    display: flex
}

body.page-fidelity footer.f-footer .f-footer__brand-inner {
    width: 280px;
    margin-top: auto
}

body.page-fidelity footer.f-footer .f-footer__logo {
    width: 280px;
    height: 145.188px;
    display: block
}

body.page-fidelity footer.f-footer .f-footer__logo img {
    object-fit: contain;
    width: 230px;
    max-width: none;
    height: 145.188px;
    display: block
}

body.page-fidelity footer.f-footer .f-footer__socials {
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: 0;
    width: 280px;
    margin: 18px 0 0 -2px;
    display: flex
}

@media (min-width: 1201px) {
    body.page-fidelity footer.f-footer .f-footer__socials {
        width: auto
    }
}

body.page-fidelity footer.f-footer .f-footer__socials a {
    width: 36px;
    height: 36px;
    box-shadow: none;
    color: #0d4e96;
    background: #fff;
    border: 0;
    border-radius: 50%;
    flex: 0 0 36px;
    justify-content: center;
    align-items: center;
    margin: 2px 2px 0;
    padding: 0;
    text-decoration: none;
    display: flex
}

body.page-fidelity footer.f-footer .f-footer__socials svg {
    fill: currentColor;
    width: 20px;
    height: 20px;
    display: block
}

body.page-fidelity footer.f-footer .f-footer__socials a:nth-child(2) svg {
    width: 28px;
    height: 24px
}

body.page-fidelity footer.f-footer .f-footer__socials .f-footer__social-back {
    fill: #fff
}

body.page-fidelity footer.f-footer .f-footer__socials .f-footer__social-rt {
    color: #100943
}

body.page-fidelity footer.f-footer .f-footer__socials a:hover {
    color: #fdb813;
    background: #121212
}

body.page-fidelity footer.f-footer .f-footer__socials a:hover .f-footer__social-back {
    fill: #121212
}

body.page-fidelity footer.f-footer .f-footer__clients {
    border-bottom: 1px solid #1212121a;
    grid-column: 2/5;
    height: 199.984px;
    padding: 30px 70px 30px 20px
}

body.page-fidelity footer.f-footer h2 {
    color: #121212;
    letter-spacing: 0;
    text-transform: none;
    margin: 0;
    font-family: Manrope, Arial, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3
}

body.page-fidelity footer.f-footer .f-footer__clients nav {
    justify-content: flex-start;
    align-items: center;
    gap: 0;
    margin: 5px -5px -5px;
    line-height: 1.3;
    display: flex
}

body.page-fidelity footer.f-footer .f-footer__clients nav a, body.page-fidelity footer.f-footer .f-footer__clients nav span {
    color: #3d3d3d;
    white-space: nowrap;
    padding: 5px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    -webkit-text-decoration: underline #0000;
    text-decoration: underline #0000
}

body.page-fidelity footer.f-footer .f-footer__clients nav a:hover {
    color: #0d4e96;
    text-decoration-color: currentColor
}

body.page-fidelity footer.f-footer .f-footer__ratings {
    grid-template-columns:repeat(4, minmax(0, 1fr));
    align-items: start;
    width: calc(100% - 1px);
    height: 64.7969px;
    margin: 20px 0 0 1px;
    display: grid
}

body.page-fidelity footer.f-footer .f-footer__ratings > a, body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a {
    color: #fff;
    width: 100px;
    min-width: 0;
    height: 60px;
    text-decoration: none;
    display: block;
    position: relative
}

body.page-fidelity footer.f-footer .f-footer__ratings img, body.page-fidelity footer.f-footer .f-footer__mobile-ratings img {
    object-fit: contain;
    width: 100px;
    max-width: none;
    height: 60px;
    display: block
}

body.page-fidelity footer.f-footer .f-footer__ratings a > span, body.page-fidelity footer.f-footer .f-footer__mobile-ratings a > span {
    color: #fff;
    text-align: center;
    background: #0d4e96;
    border-radius: 50px;
    min-width: 35px;
    padding: 9px;
    font-size: 12px;
    font-weight: 400;
    line-height: 15.6px;
    position: absolute;
    top: 0;
    left: 100px
}

body.page-fidelity footer.f-footer .f-footer__cell {
    border-right: 1px solid #1212121a;
    min-width: 0;
    height: 148.578px;
    padding: 16px 10px 16px 20px
}

body.page-fidelity footer.f-footer .f-footer__cell:last-child {
    border-right: 0
}

body.page-fidelity footer.f-footer .f-footer__contacts, body.page-fidelity footer.f-footer .f-footer__schedule, body.page-fidelity footer.f-footer .f-footer__address {
    border-left: 1px solid #1212121a
}

body.page-fidelity footer.f-footer .f-footer__cell h2 {
    margin-bottom: 10px
}

body.page-fidelity footer.f-footer .f-footer__schedule {
    padding-left: 10px
}

body.page-fidelity footer.f-footer .f-footer__address {
    padding-left: 10px;
    padding-right: 70px
}

body.page-fidelity footer.f-footer .f-footer__cell a, body.page-fidelity footer.f-footer .f-footer__cell p {
    color: #3d3d3d;
    align-items: flex-start;
    margin: 0;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    -webkit-text-decoration: underline #0000;
    text-decoration: underline #0000;
    display: flex
}

body.page-fidelity footer.f-footer .f-footer__cell a + a {
    margin-top: 12px
}

body.page-fidelity footer.f-footer .f-footer__cell a:hover {
    color: #0d4e96;
    text-decoration-color: currentColor
}

body.page-fidelity footer.f-footer .f-footer__cell svg {
    fill: none;
    stroke: #292d32;
    stroke-width: 1.5px;
    stroke-linecap: round;
    stroke-linejoin: round;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    margin-right: 10px;
    display: block
}

body.page-fidelity footer.f-footer .f-footer__help {
    z-index: 1;
    border-top: 1px solid #1212121a;
    width: 100%;
    height: 124px;
    min-height: 0;
    padding: 44px 0;
    position: relative
}

body.page-fidelity footer.f-footer .f-footer__help > .container {
    grid-template-columns:repeat(4, minmax(0, 1fr));
    align-items: center;
    gap: 40px;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0 70px;
    display: grid
}

body.page-fidelity footer.f-footer .f-footer__help h2 {
    font-family: Days One, Montserrat, Arial, sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.3
}

body.page-fidelity footer.f-footer .f-footer__help > .container > a, body.page-fidelity footer.f-footer .f-footer__help > .container > button {
    color: #3d3d3d;
    text-align: left;
    cursor: pointer;
    background: 0 0;
    border: 0;
    border-top: 1px solid #1212124d;
    border-radius: 0;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    min-width: 0;
    min-height: 0;
    margin: 0;
    padding: 10px 0 0;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    text-decoration: none;
    display: flex
}

body.page-fidelity footer.f-footer .f-footer__help > .container > button {
    height: 35px;
    line-height: 24px
}

body.page-fidelity footer.f-footer .f-footer__help > .container > a {
    height: 31.7969px;
    line-height: 20.8px
}

body.page-fidelity footer.f-footer .f-footer__action-arrow {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.2px;
    stroke-linecap: square;
    stroke-linejoin: miter;
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    margin-left: 10px;
    display: block
}

body.page-fidelity footer.f-footer .f-footer__help > .container > a:hover, body.page-fidelity footer.f-footer .f-footer__help > .container > button:hover {
    color: #0d4e96;
    border-color: #0d4e964d
}

body.page-fidelity footer.f-footer .f-footer__mobile-nav, body.page-fidelity footer.f-footer .f-footer__mobile-ratings {
    display: none
}

body.page-fidelity footer.f-footer .f-footer__info {
    z-index: 1;
    color: #8c8c8c;
    border-top: 1px solid #1212121a;
    width: 100%;
    height: 135.797px;
    min-height: 0;
    padding: 20px 0 60px;
    position: relative
}

body.page-fidelity footer.f-footer .f-footer__info > .container {
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0 70px;
    display: flex
}

body.page-fidelity footer.f-footer .f-footer__info > .container > span {
    color: #8c8c8c;
    white-space: nowrap;
    margin-right: 30px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3
}

body.page-fidelity footer.f-footer .f-footer__yandex {
    width: 150px;
    height: 50px;
    box-shadow: none;
    color: #121212;
    background: #f8f8f8;
    border: 0;
    border-radius: 4px;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 4.79688px;
    margin-right: auto;
    padding: 6px 7px 4px;
    text-decoration: none;
    display: flex;
    position: relative
}

body.page-fidelity footer.f-footer .f-footer__yandex-line {
    width: 100%;
    height: 18px;
    font-family: Arial, sans-serif;
    line-height: 18px;
    display: block;
    position: relative
}

body.page-fidelity footer.f-footer .f-footer__yandex-line > svg {
    fill: #f04b23;
    width: 16px;
    height: 18px;
    display: block;
    position: absolute;
    top: 1px;
    left: 1px
}

body.page-fidelity footer.f-footer .f-footer__yandex-line > svg circle {
    fill: #fff
}

body.page-fidelity footer.f-footer .f-footer__yandex-line > b {
    color: #121212;
    font-size: 12px;
    font-weight: 400;
    line-height: 12px;
    position: absolute;
    top: 2px;
    left: 20px
}

body.page-fidelity footer.f-footer .f-footer__stars {
    color: #0000;
    background: linear-gradient(90deg, #fc0 0 90%, #dedede 90% 100%);
    letter-spacing: 1px;
    white-space: nowrap;
    -webkit-background-clip: text;
    background-clip: text;
    font-size: 18px;
    line-height: 18px;
    position: absolute;
    top: 0;
    left: 55px
}

body.page-fidelity footer.f-footer .f-footer__yandex small {
    color: #555;
    white-space: nowrap;
    font-family: Arial, sans-serif;
    font-size: 8px;
    line-height: 8px;
    position: absolute;
    top: 31px;
    left: 8px
}

body.page-fidelity footer.f-footer .f-footer__info > .container > div:last-child {
    flex-direction: column;
    gap: 10px;
    width: 254.344px;
    display: flex
}

body.page-fidelity footer.f-footer .f-footer__info > .container > div:last-child a {
    color: #8c8c8c;
    white-space: nowrap;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    -webkit-text-decoration: underline #0000;
    text-decoration: underline #0000
}

body.page-fidelity footer.f-footer .f-footer__info > .container > div:last-child a:hover {
    color: #0d4e96;
    text-decoration-color: currentColor
}

body.page-fidelity .f-back-top {
    font-size: 16px;
    bottom: 40px;
    right: 40px
}

@media (min-width: 1281px) and (max-width: 1440px) {
    body.page-fidelity footer.f-footer .f-footer__main {
        grid-template-columns:369px minmax(0, 1fr) minmax(0, 1fr) 381px
    }
}

@media (min-width: 1441px) {
    body.page-fidelity footer.f-footer .f-footer__glow--left {
        left: calc(50vw - 1367px)
    }

    body.page-fidelity footer.f-footer .f-footer__glow--right {
        right: calc(50vw - 1250px)
    }
}

@media (max-width: 992px) {
    body.page-fidelity footer.site-footer.f-footer {
        height: 1311.14px
    }

    body.page-fidelity footer.f-footer .f-footer__main {
        border-bottom: 1px solid #1212121a;
        width: 100%;
        height: 242.188px;
        min-height: 0;
        display: block
    }

    body.page-fidelity footer.f-footer .f-footer__brand {
        border: 0;
        width: 100%;
        height: 241.188px;
        padding: 20px 0;
        display: block
    }

    body.page-fidelity footer.f-footer .f-footer__brand-inner {
        width: 280px;
        margin: 0 auto;
        transform: translate(1px)
    }

    body.page-fidelity footer.f-footer .f-footer__logo, body.page-fidelity footer.f-footer .f-footer__logo img {
        height: 145.188px
    }

    body.page-fidelity footer.f-footer .f-footer__logo {
        margin: 0
    }

    body.page-fidelity footer.f-footer .f-footer__socials {
        margin-top: 18px
    }

    body.page-fidelity footer.f-footer .f-footer__socials a {
        background: #f3f5f8
    }

    body.page-fidelity footer.f-footer .f-footer__clients, body.page-fidelity footer.f-footer .f-footer__cell {
        display: none
    }

    body.page-fidelity footer.f-footer .f-footer__help {
        width: 100%;
        height: 692.766px;
        min-height: 0;
        padding: 44px 0
    }

    body.page-fidelity footer.f-footer .f-footer__help > .container {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        width: 280px;
        max-width: 280px;
        margin: 0 auto;
        padding: 0;
        display: flex
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-nav {
        order: -1;
        width: 280px;
        min-height: 380.781px;
        display: block
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-nav a {
        color: #3d3d3d;
        border: 0;
        border-top: 1px solid #1212124d;
        width: 280px;
        height: 31.7969px;
        min-height: 0;
        margin-top: 30px;
        padding: 10px 0 0;
        font-size: 16px;
        font-weight: 400;
        line-height: 20.8px;
        text-decoration: none;
        display: block
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-nav .is-extra {
        display: none
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-nav.is-expanded .is-extra {
        display: block
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-nav button {
        color: #3d3d3d;
        cursor: pointer;
        background: 0 0;
        border: 0;
        border-bottom: 1px dotted;
        border-radius: 0;
        width: max-content;
        height: 23.7969px;
        min-height: 0;
        margin: 24px 0;
        padding: 0 0 2px;
        font-size: 16px;
        font-weight: 400;
        line-height: 20.8px;
        display: block
    }

    body.page-fidelity footer.f-footer .f-footer__help h2 {
        align-self: center;
        width: max-content;
        height: 31.1875px;
        min-height: 0;
        font-size: 24px;
        line-height: 31.2px
    }

    body.page-fidelity footer.f-footer .f-footer__help > .container > a, body.page-fidelity footer.f-footer .f-footer__help > .container > button {
        width: 280px;
        min-height: 32px;
        margin-top: 30px;
        padding-top: 10px;
        font-size: 16px;
        line-height: 20.8px
    }

    body.page-fidelity footer.f-footer .f-footer__help > .container > button {
        height: 35px;
        line-height: 24px
    }

    body.page-fidelity footer.f-footer .f-footer__help > .container > a {
        height: 31.7969px;
        min-height: 0
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings {
        z-index: 1;
        border-top: 0;
        grid-template-rows:48px 60px;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap: 16px;
        width: 100%;
        height: 144px;
        min-height: 0;
        padding: 19px 40px 0;
        display: grid;
        position: relative
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a {
        width: 80px;
        height: 48px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings img {
        width: 80px;
        height: auto
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4) img {
        width: 80px;
        height: 60px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(3) {
        align-self: center
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4) {
        height: 60px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings a > span {
        min-width: 0;
        padding: 5px;
        font-size: 11px;
        line-height: 14.3px;
        top: 0;
        left: 50%;
        transform: translate(-50%)
    }

    body.page-fidelity footer.f-footer .f-footer__info {
        width: 100%;
        height: 230.188px;
        min-height: 0;
        padding: 20px 0 30px
    }

    body.page-fidelity footer.f-footer .f-footer__info > .container {
        flex-direction: column;
        align-items: center;
        gap: 16px;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0 15px;
        display: flex
    }

    body.page-fidelity footer.f-footer .f-footer__info > .container > span {
        margin: 0;
        transform: translate(-15px)
    }

    body.page-fidelity footer.f-footer .f-footer__yandex {
        margin: 0 0 4.79688px
    }

    body.page-fidelity footer.f-footer .f-footer__info > .container > div:last-child {
        align-self: center;
        gap: 10px;
        width: 254.344px
    }

    body.page-fidelity footer.f-footer .f-footer__info > .container > div:last-child a {
        margin-top: 10px
    }

    body.page-fidelity footer.f-footer .f-footer__info > .container > div:last-child a:last-child {
        color: #8c8c8c;
        text-decoration-color: #0000
    }

    body.page-fidelity .f-back-top {
        width: 48px;
        height: 48px;
        font-size: 16px;
        bottom: 20px;
        right: 20px
    }
}

@media (max-width: 768px) {
    body.page-fidelity footer.f-footer .f-footer__glow--left {
        width: 605.7px;
        height: 667.8px;
        top: -3px;
        left: -416px
    }

    body.page-fidelity footer.f-footer .f-footer__glow--right {
        width: 605.7px;
        height: 667.8px;
        top: -54px;
        right: -549px
    }
}

@media (min-width: 992px) and (max-width: 1269px) {
    body.page-fidelity footer.f-footer .f-footer__main {
        grid-template-columns:29% 20.5% 20.5% 30%
    }
}

@media (min-width: 1201px) {
    .page-fidelity .header__nav-item > button {
        width: 25px;
        height: 23.4px
    }

    .page-fidelity--service .header__btns {
        gap: 0;
        margin-left: -15px
    }

    .page-fidelity--service .header__btns .btn {
        margin-left: 15px
    }

    .page-fidelity--service .header__phone-number-title {
        display: inline
    }

    .page-fidelity--service .header__socials {
        margin-top: -2px
    }

    .page-fidelity--service .header__nav-item > button {
        margin-left: 1px
    }
}

.page-fidelity--home .calc-form form > input, .page-fidelity--home .calc-form form > .btn, .page-fidelity--home .calc-form__policy, .page-fidelity--service .lead-form form > input, .page-fidelity--service .lead-form__submit, .page-fidelity--service .lead-form__policy {
    font-family: ibmplexsans, sans-serif
}

.page-fidelity--home .advantages__item {
    flex: 0 0 350px;
    width: 350px;
    max-width: none
}

.page-fidelity .header__nav, .page-fidelity--home .cover__desc, .page-fidelity--service .service-hero__copy > p, .page-fidelity--home .advantages__item, .page-fidelity--service .service-advantage {
    color: #000
}

.page-fidelity--service .breadcrumbs > a {
    color: #8c8c8c
}

.page-fidelity--service .service-hero__cta {
    color: #e1e1e1
}

.page-fidelity--service .breadcrumbs {
    gap: 4px;
    min-height: 32px;
    padding: 0 35px;
    top: 20px
}

.page-fidelity--service .breadcrumbs span[aria-current=page] {
    text-overflow: clip;
    flex-shrink: 0;
    overflow: visible
}

.page-fidelity--service .service-hero__copy > p {
    max-width: 480px
}

.page-fidelity--service .service-hero:before {
    opacity: 1;
    background: radial-gradient(590.5px at calc(max(0px, 50vw - 600px) - 329px) 259px, #1121b213, #113eb213 20%, #86a7cb0f 60%, #ffffff04 90%, #0000 100%), radial-gradient(720px at calc(max(0px, 50vw - 600px) - 69.5px) 226.5px, #1121b240, #113eb240 20%, #86a7cb33 60%, #ffffff0d 90%, #0000 100%)
}

.page-fidelity--service .lead-form {
    min-height: 0
}

.page-fidelity--service .lead-form .captcha-placeholder {
    height: 120px
}

.page-fidelity--service .lead-form__submit {
    font-weight: 600
}

.page-fidelity--service .lead-form__policy {
    color: #fff;
    font-size: 14px;
    line-height: 18.2px
}

.page-fidelity--service .lead-form__help {
    display: flex
}

.page-fidelity--service .lead-form__help button {
    color: #fff;
    text-align: left;
    background: 0 0;
    border: 1px solid #fff;
    flex-grow: 1;
    align-items: flex-start;
    gap: 0;
    min-height: 55px;
    padding: 16px 12px;
    font-size: 16px;
    line-height: 20.8px
}

.page-fidelity--service .lead-form__help button:first-child {
    border-right-color: #fff
}

.page-fidelity--service .lead-form__help button + button {
    border-left-color: #fff
}

.page-fidelity--service .lead-form__help button svg {
    fill: currentColor;
    flex: 0 0 21px;
    width: 21px;
    height: 21px;
    margin-right: 6px
}

.page-fidelity--service .service-advantages {
    border: 1px solid #0000004d
}

.page-fidelity--service .service-advantages__grid {
    justify-content: space-between;
    align-items: center;
    gap: 0;
    display: flex
}

.page-fidelity--service .service-advantage {
    flex: 0 0 calc(50% - 20px);
    width: calc(50% - 20px)
}

.page-fidelity .calc-form > form > .captcha-placeholder em, .page-fidelity .lead-form > form > .captcha-placeholder em {
    margin-top: 13px
}

.page-fidelity .calc-form > form > .captcha-placeholder em:after, .page-fidelity .lead-form > form > .captcha-placeholder em:after {
    content: "9335926343678034943-1788383583";
    color: #aaa;
    margin-top: 2px;
    font-size: 10px;
    line-height: 1;
    display: block
}
.page-fidelity--service .service-hero__copy > p strong{
    display: inline-block;
}
@media (max-width: 700px) {
    .page-fidelity .header__phone-mob a {
        color: #000
    }

    .page-fidelity .header__socials .social {
        background: #f3f5f8
    }

    .page-fidelity--service .header__socials {
        gap: 8px;
        min-width: 48px;
        margin-top: -2px;
        margin-left: 10px;
        margin-right: 6px
    }

    .page-fidelity--service .header__socials .social {
        margin: 2px 2px 0
    }

    .page-fidelity--service .header__logo {
        margin-right: 8px
    }

    .page-fidelity--service .header__open-menu-btn {
        display: flex
    }

    .page-fidelity--service .header__phone-mob {
        height: 20.8px;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity--service .header__phone-mob a {
        font-size: 14px;
        line-height: 20.8px
    }

    .page-fidelity.page-fidelity--home .cover, .page-fidelity.page-fidelity--service .service-hero {
        height: auto
    }

    .page-fidelity--home .captcha-placeholder {
        height: 120px
    }

    .page-fidelity.page-fidelity--home .advantages, .page-fidelity.page-fidelity--service .service-advantages {
        height: auto;
        min-height: 0
    }

    .page-fidelity--home .advantages > .container {
        margin-top: -20px
    }

    .page-fidelity--home .advantages__item {
        flex-basis: auto
    }

    .page-fidelity--service .breadcrumbs {
        width: calc(100% - 30px);
        max-width: none;
        height: 32px;
        min-height: 32px;
        padding: 0 35px;
        font-size: 16px;
        line-height: 20.8px;
        top: 20px
    }

    .page-fidelity--service .service-hero__copy {
        padding: 100px 0 40px
    }

    .page-fidelity--service .service-hero:before {
        opacity: 1;
        background: radial-gradient(590.5px at -196px 349px, #1121b220, #113eb220 20%, #86a7cb1a 60%, #ffffff06 90%, #0000 100%), radial-gradient(720px at 63.5px 316.5px, #1121b259, #113eb259 20%, #86a7cb47 60%, #ffffff12 90%, #0000 100%)
    }

    .page-fidelity--service .service-hero__copy > p {
        max-width: none;
        line-height: 1.66
    }

    .page-fidelity--service .service-hero__cta {
        height: 58px;
        min-height: 58px
    }

    .page-fidelity--service .service-hero__media {
        margin-top: 20px;
        padding: 150px 0
    }

    .page-fidelity--service .service-hero__media > picture {
        width: calc(100% + 140px);
        top: 0;
        bottom: 0;
        left: -70px;
        right: auto
    }

    .page-fidelity--service .lead-form {
        color: #121212;
        background: #fff;
        border: 0;
        border-radius: 15px;
        width: calc(100% + 30px);
        max-width: none;
        margin-left: -15px;
        margin-right: -15px;
        padding: 19px 15px 0;
        font-size: 18px;
        line-height: 23.4px
    }

    .page-fidelity--service .lead-form form {
        margin-top: 15px
    }

    .page-fidelity--service .lead-form .captcha-placeholder {
        height: 118px
    }

    .page-fidelity--service .lead-form .captcha-placeholder em {
        margin-top: 1px
    }

    .page-fidelity--service .lead-form__policy {
        color: #8c8c8c;
        margin-top: 15px;
        font-size: 12px;
        line-height: 15.6px
    }

    .page-fidelity--service .lead-form__help {
        margin: 56px -15px 0
    }

    .page-fidelity--service .lead-form__help button {
        color: #121212;
        background: #1515150d;
        border: 1px solid #1515154d;
        align-items: flex-start;
        min-height: 0;
        padding: 16px 16px 16px 15px;
        font-size: 12px;
        line-height: 15.6px
    }

    .page-fidelity--service .lead-form__help button:first-child {
        border-right-color: #15151526;
        padding-left: 15px
    }

    .page-fidelity--service .lead-form__help button + button {
        border-left-color: #15151526;
        padding-right: 26px
    }

    .page-fidelity--service .lead-form__help button svg {
        flex-basis: 16px;
        width: 16px;
        height: 16px
    }

    .page-fidelity--service .service-advantages {
        padding: 20px 0
    }

    .page-fidelity--service .service-advantages__grid {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 0;
        margin-top: -20px
    }

    .page-fidelity--service .service-advantage {
        flex: none;
        align-items: flex-start;
        width: 100%;
        margin-top: 20px
    }

    .page-fidelity--service .service-advantage img {
        margin-right: 15px
    }

    .page-fidelity--service .service-advantage p {
        font-size: 16px;
        line-height: 20.8px
    }
}

@media (min-width: 701px) {
    .page-fidelity--service .lead-form {
        background: 0 0;
        border-color: #fff
    }
}

body.page-fidelity.page-fidelity--home .f-approach {
    position: relative
}

body.page-fidelity.page-fidelity--home .f-approach__grid {
    grid-template-columns:repeat(4, minmax(0, 1fr))
}

body.page-fidelity.page-fidelity--home .f-approach__grid article {
    width: auto
}

@media (min-width: 992px) {
    body.page-fidelity.page-fidelity--home .f-approach > .container {
        top: 50px
    }
}

body.page-fidelity.page-fidelity--home .f-director .container {
    border-top: 1px solid #1212124d;
    border-bottom: 1px solid #1212124d
}

body.page-fidelity.page-fidelity--home .f-director__phone svg {
    fill: none;
    stroke: #fff;
    width: 34px;
    height: 34px
}

body.page-fidelity.page-fidelity--home .f-director .btn {
    flex: auto;
    width: auto;
    padding: 5.25px 10.5px;
    font-family: Manrope, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 14px
}

body.page-fidelity.page-fidelity--home .f-statement--economy p, body.page-fidelity.page-fidelity--home .f-statement--guarantee p {
    -webkit-text-fill-color: initial;
    background: 0 0;
    width: 900px;
    max-width: 900px;
    margin-left: auto
}

body.page-fidelity.page-fidelity--home .f-statement--economy p > span, body.page-fidelity.page-fidelity--home .f-statement--guarantee p > span {
    -webkit-box-decoration-break: slice;
    box-decoration-break: slice;
    -webkit-text-fill-color: transparent;
    background: linear-gradient(90deg, #8c8c8c 50%, #000 50%) 0 0/200% 100%;
    -webkit-background-clip: text;
    background-clip: text
}

body.page-fidelity.page-fidelity--home .f-statement--economy p {
    text-indent: 220px
}

body.page-fidelity.page-fidelity--home .f-statement--economy {
    background: radial-gradient(590.55px at 926px 769.688px, #1121b213, #113eb213 20%, #86a7cb0f 60%, #ffffff04 90%, #fff0 100%), radial-gradient(720px at 1185.5px 920.188px, #1121b240, #113eb240 20%, #86a7cb33 60%, #ffffff0d 90%, #fff0 100%), radial-gradient(590.55px at -289px 647.688px, #1121b213, #113eb213 20%, #86a7cb0f 60%, #ffffff04 90%, #fff0 100%), radial-gradient(720px at -29.5px 321.188px, #1121b240, #113eb240 20%, #86a7cb33 60%, #ffffff0d 90%, #fff0 100%), #f2f2f2
}

body.page-fidelity.page-fidelity--home .f-statement--guarantee p {
    text-indent: 40px
}

body.page-fidelity.page-fidelity--home .f-process-link {
    height: 163.797px;
    min-height: 163.797px;
    padding: 18px 0 19px
}

body.page-fidelity.page-fidelity--home .f-process-link .container {
    justify-content: space-between;
    height: auto;
    min-height: 124.797px
}

body.page-fidelity.page-fidelity--home .f-process-link__snowflake {
    fill: #121212;
    flex: 0 0 68.625px;
    width: 68.625px;
    height: 83px
}

body.page-fidelity.page-fidelity--home .f-process-link .container > span:not(.f-process-link__arrow) {
    flex: auto;
    width: auto;
    min-width: 0;
    min-height: 124.797px
}

body.page-fidelity.page-fidelity--home .f-process-link__arrow {
    width: 51.25px;
    height: 46px;
    color: inherit;
    fill: #0000;
    stroke: #121212;
    stroke-width: 2px;
    flex: 0 0 51.25px;
    margin-left: 20px;
    overflow: visible;
    transform: rotate(180deg)
}

body.page-fidelity.page-fidelity--home .f-process-link__arrow:before, body.page-fidelity.page-fidelity--home .f-process-link__arrow:after {
    content: none
}

body.page-fidelity.page-fidelity--home .f-guarantee {
    background: radial-gradient(590.55px at 926px 171.906px, #1121b213, #113eb213 20%, #86a7cb0f 60%, #ffffff04 90%, #fff0 100%), radial-gradient(720px at 1185.5px 322.406px, #1121b240, #113eb240 20%, #86a7cb33 60%, #ffffff0d 90%, #fff0 100%), radial-gradient(590.55px at -289px 49.9063px, #1121b213, #113eb213 20%, #86a7cb0f 60%, #ffffff04 90%, #fff0 100%), radial-gradient(720px at -29.5px -276.594px, #1121b240, #113eb240 20%, #86a7cb33 60%, #ffffff0d 90%, #fff0 100%), #f2f2f2;
    height: 851.938px;
    padding-top: 0;
    position: relative
}

body.page-fidelity.page-fidelity--home .f-guarantee .f-heading {
    width: 1140px;
    max-width: 100%;
    margin-top: 50px
}

body.page-fidelity.page-fidelity--home .f-guarantee__grid {
    grid-template-rows:321.578px 259.578px;
    height: auto;
}

body.page-fidelity.page-fidelity--home .f-guarantee__grid .btn {
    width: 249.5px;
    padding: 5.25px 24px;
    font-weight: 600
}

body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
    height: 775.359px
}

body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
    height: 754.563px
}

body.page-fidelity.page-fidelity--home .f-video-block .container > p {
    height: 41.5938px
}

body.page-fidelity.page-fidelity--home .f-video-block--supervision .container > p {
    height: 20.7969px
}

body.page-fidelity.page-fidelity--home .f-video-block__wrap {
    height: 603.375px
}

body.page-fidelity .f-video-block__poster > img {
    border-radius: 15px
}

body.page-fidelity .f-video-block__poster .video-poster__play:after {
    content: "";
    border-top: 7px solid #0000;
    border-bottom: 7px solid #0000;
    border-left: 11px solid #0d4e96;
    width: 0;
    height: 0;
    margin-left: 3px
}

@media (min-width: 992px) {
}

body.page-fidelity.page-fidelity--service .f-work__pagination::-webkit-scrollbar {
    height: 4px
}

body.page-fidelity.page-fidelity--service .f-work__pagination::-webkit-scrollbar-track {
    background: #121212 padding-box content-box;
    border: 1px solid #0000
}

body.page-fidelity.page-fidelity--service .f-work__pagination::-webkit-scrollbar-thumb {
    background: #0d4e96;
    border: 1px solid #0d4e96
}

@media (max-width: 700px) {


    body.page-fidelity.page-fidelity--home .f-approach__grid h3 {
        height: auto;
        min-height: auto;
        margin-top: 20px;
        margin-bottom: 0;
        padding: 20px 0 10px;
    }

    body.page-fidelity.page-fidelity--home .f-approach__grid article:first-child p, body.page-fidelity.page-fidelity--home .f-approach__grid article:nth-child(3) p {
        height: 72.5938px;
        min-height: 72.5938px
    }

    body.page-fidelity.page-fidelity--home .f-approach__grid article:nth-child(2) p {
        height: 51.7969px;
        min-height: 51.7969px
    }

    body.page-fidelity.page-fidelity--home .f-director .btn {
        flex: 0 0 296px;
        width: 296px;
        padding-inline-start: 10px;
        padding-inline-end: 10px
    }

    body.page-fidelity.page-fidelity--home .f-statement--economy p, body.page-fidelity.page-fidelity--home .f-statement--guarantee p {
        width: 360px;
        max-width: 360px;
        margin-left: 0
    }

    body.page-fidelity.page-fidelity--home .f-statement--economy p {
        text-indent: 100px
    }

    body.page-fidelity.page-fidelity--home .f-statement--economy {
        background: radial-gradient(720px at 621.5px -20.8125px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #fff0 100%), #f2f2f2
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee p {
        text-indent: 20px
    }

    body.page-fidelity.page-fidelity--home .f-process-link {
        height: 52px;
        min-height: 52px;
        padding: 0
    }

    body.page-fidelity.page-fidelity--home .f-process-link .container {
        justify-content: flex-start;
        height: 50px;
        min-height: 50px
    }

    body.page-fidelity.page-fidelity--home .f-process-link__snowflake {
        flex-basis: 21.5px;
        width: 21.5px;
        height: 24px
    }

    body.page-fidelity.page-fidelity--home .f-process-link .container > span:not(.f-process-link__arrow) {
        flex: auto;
        width: auto;
        min-height: 36.3906px
    }

    body.page-fidelity.page-fidelity--home .f-process-link__arrow {
        flex-basis: 21.5px;
        width: 21.5px;
        height: 24px;
        margin-left: 0
    }

    body.page-fidelity.page-fidelity--home .f-guarantee {
        background: radial-gradient(720px at -136.5px 596.281px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #fff0 100%), radial-gradient(720px at 621.5px -466.719px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #fff0 100%), #f2f2f2;
        height: 1455.56px;
        min-height: 1455.56px
    }

    body.page-fidelity.page-fidelity--home .f-guarantee .f-heading {
        height: 75.5625px;
        margin-top: 0
    }

    body.page-fidelity.page-fidelity--home .f-guarantee__grid {
        grid-template-rows:repeat(5, 266px);
        height: auto;
    }

    body.page-fidelity.page-fidelity--home .f-guarantee__grid article, body.page-fidelity.page-fidelity--home .f-guarantee__grid article:nth-child(3n), body.page-fidelity.page-fidelity--home .f-guarantee__grid article:nth-child(3n+1), body.page-fidelity.page-fidelity--home .f-guarantee__grid article:nth-child(3n+2) {
        justify-content: center
    }

    body.page-fidelity.page-fidelity--home .f-guarantee__grid .btn {
        width: 320px;
        padding: 5.25px 10px
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 364.875px
    }

    body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 323.281px
    }

    body.page-fidelity.page-fidelity--home .f-video-block .container > p {
        height: 83.1875px
    }

    body.page-fidelity.page-fidelity--home .f-video-block--supervision .container > p {
        height: 41.5938px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__wrap {
        height: 226.5px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__poster, body.page-fidelity.page-fidelity--home .f-video-block__poster > img {
        height: 184.5px
    }
}

@font-face {
    font-family: Days One;
    src: url(/media/fonts/days-one.woff2) format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 400
}

@font-face {
    font-family: ibmplexsans;
    src: url(/media/fonts/ibmplexsans-regular.woff2) format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 400
}

@font-face {
    font-family: ibmplexsans;
    src: url(/media/fonts/ibmplexsans-semibold.woff2) format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 600
}

.page-fidelity {
    --f-blue: #0d4e96;
    --f-yellow: #fdb813;
    --f-paper: #f2f2f2;
    --f-ink: #121212;
    --f-line: #1212123d;
    background: var(--f-paper);
    color: var(--f-ink)
}

.page-fidelity .header {
    will-change: transform;
    transition: transform .24s
}

.page-fidelity .heading-main {
    letter-spacing: 0
}

.page-fidelity .calc-form .form-status {
    margin: 0
}

@media (min-width: 1201px) {
    .page-fidelity .header.header--scrolled {
        transform: translateY(-63px)
    }
}

.page-fidelity .f-heading {
    letter-spacing: 0;
    text-transform: uppercase;
    margin: 0;
    font-family: Days One, Montserrat, Arial, sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 1.4
}

.page-fidelity .f-portfolio {
    background: 0 0;
    padding: 50px 0 0;
    position: relative
}

.page-fidelity .f-portfolio__grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 40px 30px;
    margin-top: 62px;
    padding-right: 10px;
    display: grid
}

.page-fidelity .f-project {
    min-width: 0;
    position: relative;
    overflow: hidden
}

.page-fidelity .f-project__gallery {
    background: #ddd;
    border-radius: 15px;
    height: 425px;
    position: relative;
    overflow: hidden
}

.page-fidelity .f-project__main, .page-fidelity .f-project__main img {
    width: 100%;
    height: 100%;
    display: block
}

.page-fidelity .f-project__main img {
    object-fit: cover
}

.page-fidelity .f-project__controls {
    z-index: 2;
    pointer-events: none;
    align-items: center;
    gap: 0;
    height: 58px;
    display: flex;
    position: absolute;
    bottom: 15px;
    left: 23px;
    right: 23px
}

.page-fidelity .f-project__arrow, .page-fidelity .f-project__thumbs button {
    pointer-events: auto;
    cursor: pointer
}

.page-fidelity .f-project__arrow {
    border: 1px solid var(--f-ink);
    width: 55px;
    height: 35px;
    color: var(--f-ink);
    background: #ffffff26;
    border-radius: 18px;
    flex: 0 0 55px;
    padding: 0;
    font-size: 20px
}

.page-fidelity .f-project__arrow--next {
    border-color: var(--f-blue);
    background: var(--f-blue);
    color: #fff;
    margin-left: auto
}

.page-fidelity .f-project__thumbs {
    flex: 0 0 342px;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 7px;
    width: 342px;
    min-width: 0;
    height: 52px;
    margin-left: 21px;
    display: grid
}

.page-fidelity .f-project__thumbs button {
    background: #ddd;
    border: 2px solid #0000;
    border-radius: 12px;
    min-width: 0;
    padding: 0;
    overflow: hidden
}

.page-fidelity .f-project__thumbs button.is-active {
    border-color: #fff
}

.page-fidelity .f-project__thumbs img {
    object-fit: cover;
    width: 100%;
    height: 100%
}

.page-fidelity .f-project__meta {
    z-index: 2;
    color: #fff;
    background: #0d4e96e6;
    align-items: center;
    height: 72px;
    padding: 0 30px;
    font-size: 14px;
    transition: transform .24s;
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    transform: translateY(-72px)
}

.page-fidelity .f-project:hover .f-project__meta, .page-fidelity .f-project:focus-within .f-project__meta {
    transform: translateY(0)
}

.page-fidelity .f-project h3 {
    margin: 14px 0 0;
    font-family: Manrope, Arial, sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px
}

.page-fidelity .f-project h3 a {
    text-decoration: none
}

.page-fidelity .f-project h3 a:hover {
    color: var(--f-blue)
}

.page-fidelity .f-portfolio__more {
    text-align: center;
    margin-top: 34px
}

.page-fidelity .f-portfolio__more .btn {
    color: #e1e1e1;
    text-transform: uppercase;
    min-width: 370px;
    min-height: 54px
}

.page-fidelity .f-pagination {
    justify-content: center;
    align-items: center;
    gap: 8px;
    height: 46px;
    margin-top: 30px;
    display: flex
}

.page-fidelity .f-pagination a, .page-fidelity .f-pagination span {
    border-radius: 50%;
    place-items: center;
    width: 38px;
    height: 38px;
    text-decoration: none;
    display: grid
}

.page-fidelity .f-pagination a.is-active {
    background: var(--f-blue);
    color: #fff
}

.page-fidelity .f-running-line {
    border-block: 1px solid var(--f-line);
    background: #fff;
    height: 120px;
    overflow: hidden
}

.page-fidelity .f-running-line > div {
    white-space: nowrap;
    align-items: center;
    gap: 30px;
    width: max-content;
    height: 100%;
    display: flex;
    transform: translate(-120px)
}

.page-fidelity .f-running-line strong {
    max-width: none;
    font-size: 18px;
    font-weight: 400
}

.page-fidelity .f-running-line span {
    color: var(--f-blue);
    font-size: 42px
}

.page-fidelity .f-running-line--blue {
    background: var(--f-blue);
    color: #fff;
    border: 0
}

.page-fidelity .f-running-line--blue span {
    color: var(--f-yellow)
}

.page-fidelity .f-approach {
    background: 0 0;
    padding: 0
}

.page-fidelity .f-approach .f-heading {
    width: 1000px;
    max-width: 100%;
    margin-top: 50px
}

.page-fidelity .f-approach__grid {
    grid-template-columns:repeat(4, 260px);
    gap: 30px;
    margin-top: 80px;
    display: grid
}

.page-fidelity .f-approach__grid article {
    width: 260px;
    min-height: 0;
    padding: 0
}

.page-fidelity .f-approach__grid article + article {
    border-left: 0;
    padding-left: 0
}

.page-fidelity .f-approach__grid span {
    display: none
}

.page-fidelity .f-approach__grid h3 {
    border-top: 1px solid var(--f-line);
    border-bottom: 1px solid var(--f-line);
    text-transform: uppercase;
    height: 151px;
    margin: 0;
    padding: 20px 0 25px;
    margin-bottom: 20px;
    font-family: Days One, Arial, sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 26px
}

.page-fidelity .f-approach__grid p {
    border-bottom: 1px solid var(--f-line);
    color: #3d3d3d;
    height: 116px;
    margin: 0;
    padding: 20px 0 25px;
    font-size: 18px;
    line-height: 23.4px
}

.page-fidelity .f-director {
    color: #3d3d3d;
    background: 0 0;
    height: 562px;
    position: relative;
    overflow: visible
}

.page-fidelity .f-director__bg {
    object-fit: cover;
    object-position: center bottom;
    opacity: 1;
    width: 100%;
    height: 400px;
    display: block;
    position: static
}

.page-fidelity .f-director .container {
    background: #fff;
    align-items: center;
    width: 100%;
    height: 162px;
    display: flex;
    position: absolute;
    top: 400px;
    left: 0
}

.page-fidelity .f-director .container > img {
    object-fit: contain;
    object-position: left bottom;
    width: 400px;
    height: 467px;
    max-height: none;
    position: absolute;
    bottom: 161px;
    left: 50px
}

.page-fidelity .f-director__copy {
    align-items: center;
    width: 100%;
    height: 160px;
    padding: 0;
    display: flex
}

.page-fidelity .f-director__copy p {
    width: 170px;
    margin: 0;
    font-size: 18px;
    line-height: 23.4px
}

.page-fidelity .f-director__copy h2 {
    text-transform: none;
    width: 257px;
    margin: 0 0 0 36px;
    font-family: Days One, sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 31.2px
}

.page-fidelity .f-director__phone {
    background: var(--f-blue);
    color: #fff;
    border-radius: 50%;
    flex: 0 0 60px;
    place-items: center;
    width: 60px;
    height: 60px;
    margin: 0 0 0 30px;
    font-size: 31px;
    text-decoration: none;
    display: inline-grid
}

.page-fidelity .f-director .btn {
    border-color: var(--f-blue);
    background: var(--f-blue);
    color: #fff;
    text-transform: uppercase;
    width: 551px;
    min-height: 60px;
    margin-left: 26px
}

.page-fidelity .f-statement {
    align-items: center;
    display: grid
}

.page-fidelity .f-statement .container {
    padding-block-start: 40px;
    padding-block-end: 40px
}

.page-fidelity .f-statement p {
    max-width: 1110px;
    margin: 0;
    font-family: Manrope, Arial, sans-serif;
    font-size: 26px;
    line-height: 1.36
}

.page-fidelity .f-statement--economy {
    background: radial-gradient(68% 145% at 0%, #8baee0b3, #f2f2f200 78%);
    min-height: 234px;
    display: block
}

.page-fidelity .f-statement--economy .container {
    height: 234px;
    padding-block-start: 0;
    padding-block-end: 0
}

.page-fidelity .f-statement--economy p {
    -webkit-text-fill-color: transparent;
    background: linear-gradient(90deg, #8c8c8c 50%, #000 50%) -71.2066% 0/200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    width: 900px;
    max-width: calc(100% - 230px);
    height: 234px;
    margin-left: 230px;
    font-size: 30px;
    line-height: 39px
}

.page-fidelity .f-statement--guarantee {
    min-height: 117px;
    color: var(--f-ink);
    background: 0 0;
    display: block
}

.page-fidelity .f-statement--guarantee .container {
    height: 117px;
    padding-block-start: 0;
    padding-block-end: 0
}

.page-fidelity .f-statement--guarantee p {
    -webkit-text-fill-color: transparent;
    background: linear-gradient(90deg, #8c8c8c 50%, #000 50%) -11.5234% 0/200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    width: 900px;
    max-width: calc(100% - 230px);
    height: 117px;
    margin-left: 230px;
    font-size: 30px;
    line-height: 39px
}

.page-fidelity .f-statement--reputation {
    min-height: 156px
}

.page-fidelity .f-statement--reputation p {
    font-size: 22px
}

.page-fidelity .f-process-link {
    width: 100%;
    height: 164px;
    min-height: 164px;
    color: var(--f-ink);
    text-align: left;
    cursor: pointer;
    background: #fff;
    border: 1px solid #1212124d;
    border-left: 0;
    border-right: 0;
    padding: 17px 0 18px;
    font-family: Days One, sans-serif;
    font-size: 48px;
    font-weight: 400;
    line-height: 62.4px;
    display: block
}

.page-fidelity .f-process-link .container {
    align-items: center;
    height: 125px;
    display: flex
}

.page-fidelity .f-process-link__snowflake {
    flex: 0 0 68px;
    width: 68px;
    height: 83px
}

.page-fidelity .f-process-link .container > span:not(.f-process-link__arrow) {
    text-align: center;
    width: 991px;
    min-height: 125px;
    display: block
}

.page-fidelity .f-process-link__arrow {
    color: #0000;
    flex: 0 0 51px;
    width: 51px;
    height: 46px;
    margin-left: 20px;
    display: block;
    position: relative;
    overflow: hidden
}

.page-fidelity .f-process-link__arrow:before {
    content: "";
    background: var(--f-ink);
    width: 49px;
    height: 4px;
    position: absolute;
    top: 21px;
    right: 1px
}

.page-fidelity .f-process-link__arrow:after {
    content: "";
    border-top: 4px solid var(--f-ink);
    border-right: 4px solid var(--f-ink);
    width: 25px;
    height: 25px;
    position: absolute;
    top: 9px;
    right: 2px;
    transform: rotate(45deg)
}

.page-fidelity .f-guarantee {
    background: radial-gradient(70% 110% at 92% 44%, #86ade180, #f2f2f200 70%), radial-gradient(55% 100% at 43% 0, #fffc, #f2f2f200 72%);
    padding: 50px 0 0
}

.page-fidelity .f-guarantee .f-heading {
    max-width: 1130px
}

.page-fidelity .f-guarantee__grid {
    border: 0;
    grid-template-rows:322px 260px;
    grid-template-columns:repeat(3, 1fr);
    width: 100%;
    max-width: none;
    height: 581px;
    margin: 120px 0 0;
    padding: 0;
    display: grid
}

.page-fidelity .f-guarantee__grid article {
    background: 0 0;
    border: 1px solid #1212124d;
    min-height: 0;
    padding: 60px 46px 48px
}

.page-fidelity .f-guarantee__grid article:nth-child(3n+1) {
    padding-left: 70px
}

.page-fidelity .f-guarantee__grid article:nth-child(3n+2) {
    padding-left: 30px;
    padding-right: 30px
}

.page-fidelity .f-guarantee__grid h3 {
    margin: 0 0 4px;
    font-family: Manrope, Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 20.8px
}

.page-fidelity .f-guarantee__grid p {
    color: #000;
    margin: 0;
    font-size: 16px;
    line-height: 20.8px
}

.page-fidelity .f-guarantee__grid .btn {
    border-color: var(--f-blue);
    background: var(--f-blue);
    color: #e1e1e1;
    text-transform: none;
    width: 250px;
    min-height: 42px;
    margin-top: 20px;
    padding: 5px 24px;
    font-size: 14px;
    line-height: 14px
}

.page-fidelity .f-guarantee__summary {
    background: 0 0;
    display: block
}

.page-fidelity .f-guarantee__summary p {
    color: #000;
    font-size: 16px;
    font-weight: 400
}

.page-fidelity .f-video-block {
    background: 0 0;
    padding: 0
}

.page-fidelity .f-video-block--service {
    padding: 50px 0 21px
}

.page-fidelity .f-video-block--service .f-heading {
    margin-bottom: 101px
}

.page-fidelity .f-video-block--service .f-video-block__poster {
    border-width: 1px;
    height: 635px
}

.page-fidelity--home .f-video-block .container > p {
    height: 42px;
    margin: 0;
    font-size: 16px;
    line-height: 20.8px
}

.page-fidelity--home .f-video-block--supervision .container > p {
    height: 21px
}

.page-fidelity--home .f-video-block__wrap {
    border: 1px solid #1515154d;
    height: 598px;
    margin-top: 80px;
    padding: 20px 70px
}

.page-fidelity--home .f-video-block__poster {
    aspect-ratio: 16/9;
    width: 100%;
    height: auto;
    box-shadow: none;
    border: 0;
    border-radius: 0
}

.page-fidelity .f-video-block__poster > img {
    object-fit: cover;
    width: 100%;
    height: 100%
}

.page-fidelity .f-video-block__poster:before {
    content: "";
    z-index: 1;
    pointer-events: none;
    background: #030c2b66;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.page-fidelity .f-video-block__poster .video-poster__play {
    z-index: 3;
    color: #0000;
    background: #fff;
    border: 0;
    width: 66px;
    height: 66px
}

.page-fidelity .f-prices {
    background: #fff;
    padding: 100px 0 0
}

.page-fidelity .f-prices .f-heading {
    margin-top: 50px
}

.page-fidelity .f-prices__lead {
    width: 520px;
    max-width: 100%;
    color: var(--f-ink);
    margin: 50px 0 0 20px;
    font-size: 18px;
    line-height: 1.3
}

.page-fidelity .f-prices__grid {
    grid-template-columns:repeat(3, 1fr);
    max-width: 1400px;
    margin: 70px auto 0;
    padding-inline-start: 100px;
    padding-inline-end: 100px;
    display: grid
}

.page-fidelity .f-price-card {
    border: 1px solid var(--f-line);
    background: #fff;
    border-right: 0;
    flex-direction: column;
    height: 537px;
    min-height: 537px;
    padding: 34px 15px 30px 20px;
    display: flex
}

.page-fidelity .f-price-card:first-child {
    padding-left: 15px;
    padding-right: 20px
}

.page-fidelity .f-price-card:last-child {
    border-right: 1px solid var(--f-line)
}

.page-fidelity .f-price-card--accent {
    box-shadow: none;
    background: #fff;
    transform: none
}

.page-fidelity .f-price-card h3 {
    color: #252b42;
    width: 290px;
    min-height: 0;
    margin: 0;
    font-family: Manrope, Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3
}

.page-fidelity .f-price-card > strong {
    color: var(--f-blue);
    letter-spacing: .2px;
    margin-top: 15px;
    font-family: Manrope, Arial, sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 50px
}

.page-fidelity .f-price-card > span {
    color: #8c8c8c;
    letter-spacing: .2px;
    margin-top: 15px;
    font-size: 14px;
    line-height: 23.94px
}

.page-fidelity .f-price-card ul {
    scrollbar-width: thin;
    flex: 0 0 200px;
    height: 200px;
    margin: 15px 0 0 -2px;
    padding: 0 4px 0 0;
    list-style: none;
    overflow: auto
}

.page-fidelity .f-price-card li {
    color: #252b42;
    letter-spacing: .2px;
    align-items: flex-start;
    min-height: 0;
    margin-left: 4px;
    padding: 0;
    font-size: 14px;
    font-weight: 700;
    line-height: 23.94px;
    display: flex
}

.page-fidelity .f-price-card li:before {
    content: "✓";
    color: #fff;
    background: #181818;
    border-radius: 50%;
    flex: 0 0 24px;
    place-items: center;
    width: 24px;
    height: 24px;
    margin-right: 10px;
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;
    display: grid
}

.page-fidelity .f-price-card li > span {
    flex: auto;
    min-width: 0;
    display: block
}

.page-fidelity .f-doc-link {
    color: #000;
    align-items: center;
    gap: 10px;
    width: max-content;
    height: 24px;
    margin: 25px 0 0;
    font-size: 16px;
    line-height: 20.8px;
    display: flex
}

.page-fidelity .f-doc-icon {
    fill: none;
    stroke: #292d32;
    stroke-width: 1.5px;
    stroke-linecap: round;
    stroke-linejoin: round;
    flex: 0 0 24px;
    width: 24px;
    height: 24px
}

.page-fidelity .f-price-card .btn {
    color: #e1e1e1;
    text-transform: none;
    width: 240px;
    min-height: 52px;
    margin-top: 30px;
    padding: 5.25px 40px;
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 14px
}

.page-fidelity .f-design-prices {
    background: #fff;
    padding: 62px 0 0
}

.page-fidelity .f-design-prices .container > p {
    color: #e31b23;
    margin: 12px 0 0;
    font-weight: 700
}

.page-fidelity .f-design-prices__grid {
    grid-template-columns:repeat(3, 1fr);
    max-width: 1400px;
    margin: 25px auto 0;
    padding-inline-start: 100px;
    padding-inline-end: 100px;
    display: grid
}

.page-fidelity .f-design-prices__grid article {
    border: 1px solid var(--f-line);
    background: var(--f-paper);
    border-right: 0;
    flex-direction: column;
    min-height: 350px;
    padding: 30px;
    display: flex
}

.page-fidelity .f-design-prices__grid article:last-child {
    border-right: 1px solid var(--f-line)
}

.page-fidelity .f-design-prices__grid h3 {
    margin: 0 0 14px;
    font-size: 22px
}

.page-fidelity .f-design-prices__grid article > div {
    align-items: center;
    gap: 12px;
    display: flex
}

.page-fidelity .f-design-prices__grid strong {
    color: #e31b23;
    font-size: 20px
}

.page-fidelity .f-design-prices__grid article > span {
    color: #666;
    margin-top: 7px
}

.page-fidelity .f-design-prices__grid p {
    flex: 1;
    margin: 18px 0;
    font-size: 14px
}

.page-fidelity .f-design-prices__grid .btn {
    text-transform: uppercase;
    min-height: 43px
}

.page-fidelity .f-design-prices__grid article > a {
    color: var(--f-blue);
    text-align: center;
    margin-top: 12px
}

.page-fidelity .f-reviews {
    background: #f2f2f2;
    padding: 50px 0 0;
    position: relative;
    overflow: hidden
}

.page-fidelity .f-reviews__facts {
    border: 1px solid var(--f-line);
    grid-template-columns:repeat(2, 1fr);
    height: 154.39px;
    margin: 75px 0 0;
    padding: 0;
    display: grid
}

.page-fidelity .f-reviews__facts > p, .page-fidelity .f-ratings {
    box-sizing: border-box;
    align-items: center;
    width: 600px;
    height: 152.39px;
    margin: 0;
    display: flex
}

.page-fidelity .f-reviews__facts > p {
    border-right: 1px solid var(--f-line);
    justify-self: end;
    padding: 23px 13px 23px 70px
}

.page-fidelity .f-ratings {
    justify-self: start;
    padding: 23px 70px 23px 13px
}

.page-fidelity .f-review-snow {
    object-fit: contain;
    flex: 0 0 83px;
    width: 83px;
    height: 83px;
    margin-right: 13px
}

.page-fidelity .f-reviews__facts > p > span {
    width: 420px
}

.page-fidelity .f-ratings__content {
    flex: 0 0 600px;
    width: 600px
}

.page-fidelity .f-ratings__content > p {
    margin: 0
}

.page-fidelity .f-ratings__content > div {
    height: 65px;
    margin-top: 21px;
    display: flex
}

.page-fidelity .f-ratings a {
    color: #000;
    width: 150px;
    height: 65px;
    font-weight: 400;
    text-decoration: none;
    display: block;
    position: relative
}

.page-fidelity .f-ratings a > img {
    object-fit: contain;
    width: 100px;
    height: 60px
}

.page-fidelity .f-ratings a > span, .page-fidelity .f-ratings a {
    font-size: 12px
}

.page-fidelity .f-ratings a {
    color: #0000
}

.page-fidelity .f-ratings a:after {
    content: attr(data-score)
}

.page-fidelity .f-ratings a:not([data-score]) {
    color: #0000
}

.page-fidelity .f-ratings a:not([data-score]):after {
    content: none
}

.page-fidelity .f-ratings a {
    --score: ""
}

.page-fidelity .f-ratings__content a {
    overflow: visible
}

.page-fidelity .f-ratings__content a:before {
    box-sizing: border-box;
    background: var(--f-blue);
    color: #fff;
    border-radius: 50px;
    place-items: center;
    min-width: 35px;
    height: 34px;
    padding: 9px;
    font-size: 12px;
    line-height: 15.6px;
    display: grid;
    position: absolute;
    top: 0;
    left: 100px
}

.page-fidelity .f-ratings__content a:first-child:before {
    content: "4,7"
}

.page-fidelity .f-ratings__content a:nth-child(2):before {
    content: "4,8"
}

.page-fidelity .f-ratings__content a:nth-child(3):before, .page-fidelity .f-ratings__content a:nth-child(4):before {
    content: "5,0"
}

.page-fidelity .f-reviews__tabs {
    gap: 16px;
    height: 44px;
    margin-top: 55px;
    display: flex
}

.page-fidelity .f-reviews__tabs button, .page-fidelity .f-reviews__tabs a {
    height: 44px;
    color: var(--f-ink);
    white-space: nowrap;
    background: #f3f5fb;
    border: 1px solid #1515154d;
    border-radius: 24px;
    align-items: center;
    padding: 0 20px;
    font-family: ibmplexsans, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 14px;
    text-decoration: none;
    display: flex
}

.page-fidelity .f-reviews__tabs button {
    justify-content: center;
    width: 142px
}

.page-fidelity .f-reviews__tabs button:nth-child(2) {
    width: 114px
}

.page-fidelity .f-reviews__tabs a {
    justify-content: center;
    width: 114px
}

.page-fidelity .f-reviews__tabs .is-active {
    border-color: var(--f-blue);
    background: var(--f-blue);
    color: #fff;
    font-weight: 600
}

.page-fidelity .f-reviews__rail {
    border: 1px solid #1515154d;
    grid-auto-columns: 584px;
    grid-auto-flow: column;
    align-items: start;
    gap: 0;
    height: 510.06px;
    margin: 25px 0 0;
    padding: 0 50px;
    display: grid;
    overflow: hidden
}

.page-fidelity .f-reviews__rail[hidden], .page-fidelity .f-reviews .f-slider-nav[hidden], .page-fidelity .f-text-reviews[hidden] {
    display: none !important
}

.page-fidelity .f-review-card {
    border: 1px solid #1515154d;
    width: 584px;
    height: 468.47px;
    margin-top: -1px;
    padding: 50px 20px
}

.page-fidelity .f-review-card .video-poster {
    width: 542px;
    box-shadow: none;
    border-radius: 15px;
    display: block
}

.page-fidelity .f-review-card .video-poster:after {
    content: "";
    z-index: 2;
    pointer-events: none;
    background: #030c2b66;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.page-fidelity .f-review-card .video-poster img {
    aspect-ratio: 16/9;
    object-fit: cover;
    border-radius: 15px;
    width: 542px;
    height: auto
}

.page-fidelity .f-review-card .video-poster__play {
    z-index: 3;
    width: 65.6px;
    height: 65.6px;
    color: var(--f-ink);
    background: #fff
}

.page-fidelity .f-review-card h3 {
    width: 280px;
    margin: 20px 0 0;
    font-family: Manrope, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 20.8px
}

.page-fidelity .f-review-card h3 a {
    color: #3d3d3d;
    text-decoration: none
}

.page-fidelity .f-slider-nav {
    justify-content: center;
    align-items: center;
    gap: 14px;
    width: auto;
    margin: 0;
    padding: 0;
    display: flex;
    position: absolute;
    top: 389px;
    right: 80px
}

.page-fidelity .f-slider-nav span {
    display: none
}

.page-fidelity .f-slider-nav button {
    border: 1px solid var(--f-ink);
    width: 55px;
    height: 35px;
    color: var(--f-ink);
    background: 0 0;
    border-radius: 18px;
    padding: 0;
    font-size: 24px
}

.page-fidelity .f-slider-nav button:last-child {
    border-color: var(--f-blue);
    background: var(--f-blue);
    color: #fff
}

.page-fidelity--service .f-reviews {
    background: radial-gradient(720px at calc(50% + 1029.5px) 681px, #1121b266, #113eb266 20%, #86a7cb52 60%, #ffffff14 90%, #0000 100%), #f2f2f2
}

.page-fidelity--home .f-reviews {
    background: radial-gradient(720px at calc(50% + 989.5px) 1358px, #1121b266, #113eb266 20%, #86a7cb52 60%, #ffffff14 90%, #0000 100%), radial-gradient(720px at calc(50% - 1009.5px) 1108px, #1121b266, #113eb266 20%, #86a7cb52 60%, #ffffff14 90%, #0000 100%), #f2f2f2
}

.page-fidelity .f-work {
    background: radial-gradient(590.5px at calc(50% + 286px) -141px, #1121b213, #113eb213 20%, #86a7cb0f 60%, #ffffff04 90%, #0000 100%), radial-gradient(720px at calc(50% + 545.5px) 9.5px, #1121b240, #113eb240 20%, #86a7cb33 60%, #ffffff0d 90%, #0000 100%), radial-gradient(590.5px at calc(50% - 929px) -263px, #1121b213, #113eb213 20%, #86a7cb0f 60%, #ffffff04 90%, #0000 100%), radial-gradient(720px at calc(50% - 669.5px) -589.5px, #1121b240, #113eb240 20%, #86a7cb33 60%, #ffffff0d 90%, #0000 100%), #f2f2f2;
    padding: 0;
    overflow: hidden
}

.page-fidelity .f-work > .container {
    height: 100%
}

.page-fidelity .f-work__head {
    height: 170px;
    position: relative
}

.page-fidelity .f-work__head .f-heading {
    position: absolute;
    top: 50px;
    left: 0
}

.page-fidelity .f-work__head p {
    width: 505px;
    margin: 0;
    font-size: 18px;
    position: absolute;
    top: 38px;
    left: 625px
}

.page-fidelity .f-work__nav {
    height: 133px;
    display: block
}

.page-fidelity .f-work__nav > strong {
    font-size: 24px;
    line-height: 31.2px;
    display: block
}

.page-fidelity .f-work__nav > div {
    align-items: center;
    gap: 10px;
    margin-top: 20px;
    display: flex
}

.page-fidelity .f-work__nav button {
    cursor: pointer;
    background: #fff;
    border: 0;
    border-radius: 50%;
    place-items: center;
    width: 38px;
    height: 38px;
    padding: 0;
    font-size: 24px;
    display: grid
}

.page-fidelity .f-work__nav button:first-child, .page-fidelity .f-work__nav button:last-child {
    border: 1px solid var(--f-ink);
    border-radius: 18px;
    width: 55px;
    height: 35px
}

.page-fidelity .f-work__nav button:first-child {
    margin-right: 10px
}

.page-fidelity .f-work__nav button:last-child {
    border-color: var(--f-blue);
    background: var(--f-blue);
    color: #fff;
    margin-left: 10px
}

.page-fidelity .f-work__nav button.is-active {
    background: var(--f-blue);
    color: #fff
}

.page-fidelity .f-work__steps {
    width: calc(100% + 2 * var(--container-pad));
    margin: 0 0 0 calc(-1 * var(--container-pad));
    scroll-behavior: smooth;
    counter-reset: work-stage;
    grid-auto-columns: 100%;
    grid-auto-flow: column;
    padding: 0;
    list-style: none;
    display: grid;
    overflow: hidden
}

.page-fidelity .f-work__steps li {
    border: 1px solid var(--f-line);
    counter-increment: work-stage;
    grid-template-columns:1fr 1fr;
    height: 263px;
    display: grid
}

.page-fidelity .f-work__steps li > p {
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: 600px;
    height: 261px;
    margin: 0 0 0 33px;
    padding: 15px 15px 15px 70px;
    font-size: 18px;
    display: flex
}

.page-fidelity .f-work__steps li > p:before {
    content: counter(work-stage) ".";
    margin: -50px 0 -15px;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 90px;
    font-weight: 700;
    line-height: 126px;
    display: block
}

.page-fidelity .f-work__steps img {
    object-fit: cover;
    width: calc(100% - 120px);
    height: 231px;
    margin: 15px 104px 15px 16px
}

.page-fidelity .f-work__consultation form {
    grid-column: 1/3;
    grid-template-columns:1fr 1fr auto;
    align-items: end;
    gap: 15px;
    width: 760px;
    margin: 25px auto;
    display: grid
}

.page-fidelity .f-work__consultation h3 {
    text-align: center;
    text-transform: uppercase;
    grid-column: 1/4;
    margin: 0 0 10px
}

.page-fidelity .f-work__consultation input {
    background: 0 0;
    border: 0;
    border-bottom: 1px solid;
    width: 100%;
    height: 48px;
    padding: 0 12px
}

.page-fidelity .f-work__consultation .btn {
    height: 44px
}

.page-fidelity .f-calculator {
    background: radial-gradient(590.5px at calc(50% + 286px) 773px, #1121b213, #113eb213 20%, #86a7cb0f 60%, #ffffff04 90%, #0000 100%), radial-gradient(720px at calc(50% + 545.5px) 923.5px, #1121b240, #113eb240 20%, #86a7cb33 60%, #ffffff0d 90%, #0000 100%), radial-gradient(590.5px at calc(50% - 929px) 651px, #1121b213, #113eb213 20%, #86a7cb0f 60%, #ffffff04 90%, #0000 100%), radial-gradient(720px at calc(50% - 669.5px) 324.5px, #1121b240, #113eb240 20%, #86a7cb33 60%, #ffffff0d 90%, #0000 100%), #f2f2f2;
    padding: 0 0 30px
}

.page-fidelity .f-calculator__head {
    grid-template-columns:repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 40px;
    height: 350px;
    display: grid
}

.page-fidelity .f-calculator__head .f-heading {
    margin-top: 50px
}

.page-fidelity .f-calculator__head p {
    margin: 0 0 20px;
    font-family: inter, sans-serif;
    font-size: 24px;
    line-height: 30px
}

.page-fidelity .f-calc {
    border: 1px solid var(--f-line);
    background: #fff;
    border-radius: 15px;
    height: 384px;
    margin-top: 80px;
    display: block;
    position: relative;
    overflow: hidden
}

.page-fidelity .f-calc__panel {
    height: 384px;
    min-height: 0;
    padding: 30px 60px
}

.page-fidelity .f-calc__step {
    justify-content: space-between;
    gap: 20px;
    display: flex
}

.page-fidelity .f-calc__step h3 {
    order: -1;
    width: 310px;
    margin: 0;
    font-size: 24px;
    line-height: 30px
}

.page-fidelity .f-calc__step > span {
    align-items: baseline;
    font-family: Days One, sans-serif;
    display: flex
}

.page-fidelity .f-calc__step > span b {
    font-size: 36px;
    font-weight: 400
}

.page-fidelity .f-calc__step > span small {
    color: #777;
    font-size: 18px
}

.page-fidelity .f-calc__params {
    grid-template-columns:repeat(2, 270px);
    gap: 45px 30px;
    width: 570px;
    margin-top: 20px;
    display: grid
}

.page-fidelity .f-calc__params label {
    grid-template-rows:21px 48px;
    gap: 20px;
    font-size: 16px;
    line-height: 20.8px;
    display: grid
}

.page-fidelity .f-calc__params input {
    border: 1px solid var(--f-line);
    width: 270px;
    height: 48px;
    font: inherit;
    border-radius: 15px;
    padding: 1px 2px 1px 20px
}

.page-fidelity .f-calc__rooms {
    margin-top: 30px
}

.page-fidelity .f-calc__rooms > span {
    margin-bottom: 20px;
    display: block
}

.page-fidelity .f-calc__rooms > div {
    align-items: center;
    width: 270px;
    height: 34px;
    display: flex
}

.page-fidelity .f-calc__rooms button {
    background: var(--f-blue);
    color: #fff;
    border: 0;
    border-radius: 9px;
    justify-content: center;
    align-items: center;
    width: 38px;
    height: 34px;
    padding: 0;
    font-size: 18px;
    display: flex
}

.page-fidelity .f-calc__rooms input {
    text-align: center;
    -webkit-appearance: textfield;
    appearance: textfield;
    background: 0 0;
    border: 0;
    border-radius: 0;
    width: 32px;
    height: 26px;
    padding: 1px 2px;
    font-size: 18px
}

.page-fidelity .f-calc__rooms input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none
}

.page-fidelity .f-calc__types {
    border: 0;
    margin: 42px 0 0;
    padding: 0
}

.page-fidelity .f-calc__types legend {
    margin-bottom: 14px;
    font-weight: 700
}

.page-fidelity .f-calc__types label {
    cursor: pointer;
    margin: 0 10px 10px 0;
    display: inline-flex
}

.page-fidelity .f-calc__types input {
    opacity: 0;
    position: absolute
}

.page-fidelity .f-calc__types span {
    border: 1px solid var(--f-line);
    border-radius: 22px;
    padding: 10px 16px;
    display: grid
}

.page-fidelity .f-calc__types small {
    color: #666
}

.page-fidelity .f-calc__types input:checked + span {
    border-color: var(--f-blue);
    background: var(--f-blue);
    color: #fff
}

.page-fidelity .f-calc__types input:checked + span small {
    color: #fff
}

.page-fidelity .f-calc__hidden-range {
    opacity: 0;
    pointer-events: none;
    position: absolute
}

.page-fidelity .f-calc__result {
    display: none
}

.page-fidelity .f-calc__result > p {
    font-size: 18px;
    font-weight: 700
}

.page-fidelity .f-calc__result dl {
    margin: 18px 0
}

.page-fidelity .f-calc__result dl > div {
    border-bottom: 1px solid #ffffff40;
    justify-content: space-between;
    gap: 20px;
    padding: 9px 0;
    display: flex
}

.page-fidelity .f-calc__result dt {
    font-size: 13px
}

.page-fidelity .f-calc__result dd {
    white-space: nowrap;
    margin: 0
}

.page-fidelity .f-calc__total {
    justify-content: space-between;
    align-items: end;
    margin-top: auto;
    display: flex
}

.page-fidelity .f-calc__total output {
    font-family: Days One, sans-serif;
    font-size: 26px
}

.page-fidelity .f-calc__result .btn {
    border-color: var(--f-yellow);
    background: var(--f-yellow);
    min-height: 46px;
    color: var(--f-ink);
    text-transform: uppercase;
    margin-top: 22px
}

.page-fidelity .f-calc__result > small {
    color: #ffffffbf;
    margin-top: 14px
}

.page-fidelity .f-calc__nav {
    position: absolute;
    bottom: 30px;
    right: 60px
}

.page-fidelity .f-calc__nav .btn {
    text-transform: none;
    width: 270px;
    height: 42px;
    min-height: 42px;
    padding: 6px 12px;
    font-size: 16px;
    font-weight: 400
}

.page-fidelity .f-faq {
    background: radial-gradient(circle at -9% 42%, #4b7cc23d, transparent 34%), var(--f-paper);
    padding: 0;
    position: relative
}

.page-fidelity--home .f-faq {
    background: radial-gradient(720px at calc(50% - 903.5px) 363px, #1121b266, #113eb266 20%, #86a7cb52 60%, #ffffff14 90%, #0000 100%), #f2f2f2
}

.page-fidelity--service .f-faq {
    background: radial-gradient(720px at calc(50% - 1076.5px) 517px, #1121b266, #113eb266 20%, #86a7cb52 60%, #ffffff14 90%, #0000 100%), #f2f2f2
}

.page-fidelity .f-faq__layout {
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 40px;
    display: grid
}

.page-fidelity .f-faq__media {
    border-radius: 15px;
    grid-area: 1/2;
    align-self: start;
    position: relative;
    overflow: hidden
}

.page-fidelity .f-faq__layout > div:last-child {
    grid-area: 1/1
}

.page-fidelity .f-faq__media > img {
    object-fit: cover;
    border-radius: 15px;
    width: 100%;
    height: 456px;
    min-height: 0
}

.page-fidelity .f-faq__thumbs {
    z-index: 2;
    gap: 9px;
    height: 52px;
    display: flex;
    position: absolute;
    bottom: 31px;
    left: 31px
}

.page-fidelity .f-faq__thumbs button {
    cursor: pointer;
    background: 0 0;
    border: 1px solid #0000;
    border-radius: 12px;
    width: 87px;
    height: 52px;
    padding: 0;
    overflow: hidden
}

.page-fidelity .f-faq__thumbs button.is-active {
    border-color: #fff
}

.page-fidelity .f-faq__thumbs img {
    object-fit: cover;
    width: 85px;
    height: 50px
}

.page-fidelity .f-faq .f-heading {
    margin-bottom: 40px
}

.page-fidelity .f-faq .service-faq__list details {
    border-color: var(--f-line)
}

.page-fidelity .f-faq .service-faq__list summary {
    font-size: 18px
}

.page-fidelity--home .f-faq .service-faq__list details {
    border: 0;
    border-top: 1px solid #1212122e
}

.page-fidelity--home .f-faq .service-faq__list details:last-child {
    border-bottom: 1px solid #1212122e
}

.page-fidelity--home .f-faq .service-faq__list summary {
    cursor: pointer;
    padding: 22px 54px 22px 0;
    line-height: 24.3px;
    list-style: none;
    position: relative
}

.page-fidelity--home .f-faq .service-faq__list summary::-webkit-details-marker {
    display: none
}

.page-fidelity .f-faq .service-faq__list summary:before {
    display: none
}

.page-fidelity .f-faq .service-faq__list summary:after {
    content: "";
    background: linear-gradient(var(--f-blue), var(--f-blue)) center / 22px 3px no-repeat, linear-gradient(var(--f-blue), var(--f-blue)) center / 3px 22px no-repeat;
    border: 0;
    border-radius: 0;
    width: 22px;
    height: 22px;
    display: block;
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%)
}

.page-fidelity .f-faq .service-faq__list details[open] summary:after {
    background: linear-gradient(var(--f-blue), var(--f-blue)) center / 22px 3px no-repeat
}

.page-fidelity .f-faq .service-faq__list details p {
    color: #121212ad;
    padding: 0 54px 24px 0;
    font-size: 18px;
    line-height: 27px
}

.page-fidelity .f-doc-button {
    top: 486px;
    right: var(--container-pad);
    background: var(--f-blue);
    color: #fff;
    text-transform: none;
    border-radius: 28px;
    place-items: center;
    width: 220px;
    height: 54px;
    font-weight: 400;
    text-decoration: none;
    display: grid;
    position: absolute
}

.page-fidelity .f-question {
    background: var(--f-paper);
    color: var(--f-ink);
    padding: 0 0 50px
}

.page-fidelity--home .f-question {
    background: radial-gradient(720px at calc(50% + 953.5px) 493px, #1121b266, #113eb266 20%, #86a7cb52 60%, #ffffff14 90%, #0000 100%), radial-gradient(720px at calc(50% - 998.5px) 473px, #1121b266, #113eb266 20%, #86a7cb52 60%, #ffffff14 90%, #0000 100%), radial-gradient(720px at calc(50% - 903.5px) -277px, #1121b266, #113eb266 20%, #86a7cb52 60%, #ffffff14 90%, #0000 100%), #f2f2f2
}

.page-fidelity--service .f-question {
    background: radial-gradient(720px at calc(50% - 1076.5px) -302px, #1121b266, #113eb266 20%, #86a7cb52 60%, #ffffff14 90%, #0000 100%), #f2f2f2
}

.page-fidelity .f-question__top {
    justify-content: space-between;
    align-items: flex-start;
    height: 94px;
    display: flex
}

.page-fidelity .f-question__top .f-heading {
    white-space: nowrap;
    font-size: 36px;
    line-height: 50px
}

.page-fidelity .f-question__top p {
    margin: 20px 0 0;
    font-size: 18px
}

.page-fidelity .f-question__phone {
    gap: 11px;
    width: 310px;
    padding-top: 16px;
    display: grid
}

.page-fidelity .f-question__phone > span b {
    color: inherit;
    font-weight: 400
}

.page-fidelity .f-question__phone a {
    font-family: Manrope, sans-serif;
    font-size: 22px;
    text-decoration: none
}

.page-fidelity .f-consultation {
    border: 1px solid var(--f-line);
    border-radius: 15px;
    margin-top: 49px;
    padding: 28px 0 30px
}
.page-fidelity .f-consultation .nm-standard-form {
    width: 320px;
    margin: 11px auto 0;
}
.page-fidelity .f-consultation h3 {
    text-align: center;
    text-transform: uppercase;
    width: 400px;
    margin: 0 auto;
    font-family: Manrope, sans-serif;
    font-size: 18px;
    line-height: 23px
}

.page-fidelity .f-consultation__fields {
    width: 300px;
    margin: 11px auto 0;
    display: block
}

.page-fidelity .f-consultation__fields label {
    width: 280px;
    margin-left: 10px;
    display: block
}

.page-fidelity .f-consultation__fields label + label {
    margin-top: 16px
}

.page-fidelity .f-consultation input {
    border: 0;
    border-bottom: 1px solid var(--f-ink);
    text-align: center;
    background: 0 0;
    border-radius: 0;
    width: 100%;
    height: 48px;
    padding: 0 10px
}

.page-fidelity .f-consultation .captcha-placeholder {
    width: 300px;
    height: 120px;
    min-height: 120px;
    color: var(--f-ink);
    background: #fff;
    margin: 16px 0 0 10px
}

.page-fidelity .f-consultation .btn {
    border-color: var(--f-blue);
    background: var(--f-blue);
    color: #fff;
    white-space: nowrap;
    text-transform: uppercase;
    width: 280px;
    min-height: 42px;
    margin: 20px 0 0 10px;
    font-size: 14px
}

.page-fidelity .f-consultation__policy {
    color: #9a9a9a;
    text-align: center;
    width: 270px;
    margin: 18px auto 0;
    font-size: 10px;
    line-height: 13px
}

.page-fidelity .f-findout {
    background: #fff;
    padding: 60px 0 0
}

.page-fidelity .f-findout .f-heading span {
    color: var(--f-blue)
}

.page-fidelity .f-findout__grid {
    border-top: 1px solid var(--f-line);
    grid-template-columns:repeat(3, 1fr);
    max-width: 1400px;
    margin: 52px auto 0;
    padding-inline-start: 100px;
    padding-inline-end: 100px;
    display: grid
}

.page-fidelity .f-findout__grid article {
    border-right: 1px solid var(--f-line);
    min-height: 310px;
    padding: 36px 30px
}

.page-fidelity .f-findout__grid article:first-child {
    padding-left: 0
}

.page-fidelity .f-findout__grid article:last-child {
    border-right: 0;
    padding-right: 0
}

.page-fidelity .f-findout__grid h3 {
    margin: 0 0 18px;
    font-size: 21px
}

.page-fidelity .f-findout__grid p {
    min-height: 64px;
    margin: 0 0 18px
}

.page-fidelity .f-findout__phone {
    color: var(--f-blue);
    font-size: 20px;
    font-weight: 700;
    text-decoration: none;
    display: block
}

.page-fidelity .f-findout__grid small {
    margin-top: 14px;
    display: block
}

.page-fidelity .f-findout__grid .btn {
    text-transform: uppercase;
    min-height: 45px
}

.page-fidelity .f-seo {
    background: #fff;
    padding: 20px 0 124px;
    font-size: 16px;
    font-weight: 100;
    line-height: 20.8px;
    position: relative
}

.page-fidelity .f-seo--service {
    min-height: 417px;
    display: block
}


.page-fidelity .f-seo > .container {
    position: relative
}

.page-fidelity .f-seo__content {
    max-height: 880px;
    padding-bottom: 50px;
    position: relative;
    overflow: hidden
}

.page-fidelity .f-seo__content:after {
    content: "";
    pointer-events: none;
    background: linear-gradient(#fff0, #fff);
    height: 100px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0
}

.page-fidelity .f-seo__content.is-open {
    max-height: none
}

.page-fidelity .f-seo__content.is-open:after {
    display: none
}

.page-fidelity .f-seo h3 {
    margin: 10px 0 16px;
    font-family: Manrope, sans-serif;
    font-size: 16px;
    font-weight: 100;
    line-height: 20.8px
}

.page-fidelity .f-seo p {
    margin: 10px 0 16px
}

.page-fidelity .f-seo ul {
    margin: 20px 0 20px 18px;
    padding: 0
}

.page-fidelity .f-seo__toggle {
    z-index: 1;
    background: var(--f-blue);
    color: #fff;
    cursor: pointer;
    border: 0;
    border-radius: 22px;
    width: 200px;
    height: 40px;
    margin: auto;
    padding: 0;
    font-size: 16px;
    line-height: 16px;
    position: absolute;
    bottom: 5px;
    left: 0;
    right: 0
}

@media (min-width: 992px) {
    .page-fidelity--home .f-portfolio--home {
        height: 1218px;
        margin-top: 100px
    }

    .page-fidelity--home .f-portfolio--home + .f-running-line {
        margin-top: 100px
    }

    .page-fidelity--home .f-running-line + .f-approach {
        margin-top: 100px
    }

    .page-fidelity--home .f-approach + .f-director {
        margin-top: 100px
    }

    .page-fidelity--home .f-director + .f-statement--economy {
        height: 234px;
        margin-top: 100px
    }

    .page-fidelity--home .f-statement--economy + .f-process-link {
        height: 164px;
        margin-top: 100px
    }

    .page-fidelity--home .f-process-link + .f-guarantee {
        height: 852px;
        margin-top: 100px;
        overflow: hidden
    }

    .page-fidelity--home .f-guarantee + .f-statement--guarantee {
        height: 117px;
        margin-top: 100px
    }

    .page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 770px;
        margin-top: 100px
    }

    .page-fidelity--home .f-prices {
        height: 904px
    }

    .page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 749px;
        margin-top: 100px
    }

    .page-fidelity--home .f-design-prices {
        height: 595px;
        margin-top: 100px
    }

    .page-fidelity--home .f-reviews {
        height: 963.84px
    }

    .page-fidelity--home .f-reviews + .f-statement--reputation {
        height: 156px;
        margin-top: 100px
    }

    .page-fidelity--home .f-statement--reputation + .f-running-line {
        margin-top: 100px
    }

    .page-fidelity--home .f-findout {
        height: 465px
    }

    .page-fidelity--home .f-faq--home {
        height: 540px;
        margin-top: 100px;
        overflow: hidden
    }

    .page-fidelity--home .f-faq--home + .f-question {
        height: 679px;
        margin-top: 100px
    }

    .page-fidelity--home .f-seo--home {
        height: 1044px;
        margin-bottom: -100px
    }

    .page-fidelity--service .f-portfolio--service {
        height: 1779px;
        margin-top: 100px
    }

    .page-fidelity--service .f-portfolio--service + .f-video-block--service {
        height: 857px;
        margin-top: 100px
    }

    .page-fidelity--service .f-video-block--service + .f-calculator {
        height: 814px;
        margin-top: 100px
    }

    .page-fidelity--service .f-calculator + .f-work {
        height: 567px;
        margin-top: 100px
    }

    .page-fidelity--service .f-prices {
        height: 904px
    }

    .page-fidelity--service .f-reviews {
        height: 963.84px
    }

    .page-fidelity--service .f-faq {
        height: 719px;
        margin-top: 100px;
        overflow: hidden
    }

    .page-fidelity--service .f-faq + .f-question {
        height: 679px;
        margin-top: 100px
    }

    .page-fidelity--service .f-seo--service {
        height: 417px;
        margin-bottom: -100px
    }

    .page-fidelity .f-slider-nav {
        gap: 15px;
        width: 125px;
        top: 389.78px;
        right: 71px
    }

    .page-fidelity .f-slider-nav button {
        border-radius: 14px
    }

    .page-fidelity .f-slider-nav button:last-child {
        border: 0
    }
}

@media (max-width: 1440px) {
    .page-fidelity .f-prices__grid, .page-fidelity .f-design-prices__grid {
        padding-inline-start: 70px;
        padding-inline-end: 70px
    }
}

@media (max-width: 1200px) {
    .page-fidelity .header.header--scrolled {
        transform: translateY(-90px)
    }

    .page-fidelity .f-heading {
        font-size: 36px
    }

    .page-fidelity .f-guarantee__grid, .page-fidelity .f-prices__grid, .page-fidelity .f-design-prices__grid, .page-fidelity .f-reviews__facts, .page-fidelity .f-reviews__rail, .page-fidelity .f-findout__grid {
        padding-inline-start: 60px;
        padding-inline-end: 60px
    }

    .page-fidelity .f-project__gallery {
        aspect-ratio: 580/425;
        height: auto
    }

    .page-fidelity .f-project__controls {
        gap: 10px;
        left: 15px;
        right: 15px
    }

    .page-fidelity .f-consultation__fields {
        grid-template-columns:1fr 1fr
    }
}

@media (max-width: 900px) {
    .page-fidelity .f-portfolio__grid {
        column-gap: 22px
    }

    .page-fidelity .f-project__controls {
        grid-template-columns:38px 1fr 38px
    }

    .page-fidelity .f-project__arrow {
        width: 38px
    }

    .page-fidelity .f-approach__grid {
        grid-template-columns:1fr
    }

    .page-fidelity .f-approach__grid article + article {
        border-left: 0;
        border-top: 1px solid var(--f-line);
        padding-left: 0
    }

    .page-fidelity .f-director .container {
        grid-template-columns:48% 52%
    }

    .page-fidelity .f-director__copy {
        padding-left: 20px
    }

    .page-fidelity .f-guarantee__grid {
        grid-template-columns:1fr 1fr
    }

    .page-fidelity .f-guarantee__grid article:nth-child(3n) {
        border-right: 1px solid var(--f-line)
    }

    .page-fidelity .f-guarantee__grid article:nth-child(2n) {
        border-right: 0
    }

    .page-fidelity .f-guarantee__grid article {
        border-bottom: 1px solid var(--f-line)
    }

    .page-fidelity .f-prices__grid, .page-fidelity .f-design-prices__grid {
        grid-template-columns:1fr;
        gap: 16px
    }

    .page-fidelity .f-price-card, .page-fidelity .f-design-prices__grid article {
        border-right: 1px solid var(--f-line);
        min-height: auto
    }

    .page-fidelity .f-price-card--accent {
        transform: none
    }

    .page-fidelity .f-reviews__facts {
        grid-template-columns:1fr
    }

    .page-fidelity .f-reviews__facts > p {
        border-right: 0;
        border-bottom: 1px solid var(--f-line)
    }

    .page-fidelity .f-ratings {
        padding-left: 0
    }

    .page-fidelity .f-reviews__rail {
        grid-auto-columns: calc(75% - 20px)
    }

    .page-fidelity .f-calculator__head {
        grid-template-columns:1fr;
        gap: 28px
    }

    .page-fidelity .f-calc {
        grid-template-columns:1fr
    }

    .page-fidelity .f-calc__nav {
        top: 430px;
        bottom: auto
    }

    .page-fidelity .f-faq__layout {
        grid-template-columns:1fr
    }

    .page-fidelity .f-faq__media {
        display: none
    }

    .page-fidelity .f-findout__grid {
        grid-template-columns:1fr
    }

    .page-fidelity .f-findout__grid article {
        border-right: 0;
        border-bottom: 1px solid var(--f-line);
        min-height: auto;
        padding: 32px 0
    }

    .page-fidelity .f-question__top {
        grid-template-columns:1fr
    }

    .page-fidelity .f-question__phone {
        justify-self: start
    }
}

@media (max-width: 768px) {
    .page-fidelity .header.header--scrolled {
        transform: translateY(-72px)
    }
}

@media (max-width: 700px) {
    .page-fidelity .f-heading {
        font-size: 18px;
        line-height: 1.3
    }

    .page-fidelity .f-portfolio {
        padding: 48px 0 44px
    }

    .page-fidelity .f-portfolio__grid {
        grid-template-columns:1fr;
        row-gap: 38px;
        margin-top: 32px
    }

    .page-fidelity .f-project h3 {
        margin-top: 12px;
        font-size: 16px
    }

    .page-fidelity .f-project__controls {
        grid-template-columns:32px 1fr 32px;
        height: 46px
    }

    .page-fidelity .f-project__arrow {
        width: 32px;
        height: 28px;
        font-size: 15px
    }

    .page-fidelity .f-project__thumbs {
        gap: 4px;
        height: 46px
    }

    .page-fidelity .f-project__thumbs button {
        border-radius: 8px
    }

    .page-fidelity .f-portfolio__more {
        margin-top: 32px
    }

    .page-fidelity .f-running-line {
        height: 82px
    }

    .page-fidelity .f-running-line strong {
        font-size: 15px
    }

    .page-fidelity .f-running-line span {
        font-size: 30px
    }

    .page-fidelity .f-approach {
        padding: 48px 0 35px
    }

    .page-fidelity .f-approach__grid {
        margin-top: 30px
    }

    .page-fidelity .f-approach__grid article {
        min-height: 160px;
        padding: 22px 0
    }

    .page-fidelity .f-approach__grid h3 {
        margin-top: 22px;
        font-size: 17px
    }

    .page-fidelity .f-director {
        height: 610px
    }

    .page-fidelity .f-director .container {
        padding-top: 42px;
        display: block
    }

    .page-fidelity .f-director .container > img {
        object-position: bottom right;
        width: 105%;
        height: 410px;
        position: absolute;
        bottom: 0;
        right: -20px
    }

    .page-fidelity .f-director__copy {
        z-index: 2;
        padding: 0;
        position: relative
    }

    .page-fidelity .f-director__copy h2 {
        margin-bottom: 22px;
        font-size: 26px
    }

    .page-fidelity .f-director .btn {
        position: absolute;
        top: 116px;
        left: 0
    }

    .page-fidelity .f-director__phone {
        position: absolute;
        top: 116px;
        left: 230px
    }

    .page-fidelity .f-statement .container {
        padding-block-start: 30px;
        padding-block-end: 30px
    }

    .page-fidelity .f-statement p {
        font-size: 18px
    }

    .page-fidelity .f-statement--economy {
        min-height: 330px
    }

    .page-fidelity .f-statement--guarantee {
        min-height: 190px
    }

    .page-fidelity .f-statement--guarantee p {
        font-size: 17px
    }

    .page-fidelity .f-statement--reputation {
        min-height: 260px
    }

    .page-fidelity .f-process-link {
        min-height: 190px
    }

    .page-fidelity .f-process-link .container {
        flex-direction: column;
        justify-content: center;
        align-items: flex-start
    }

    .page-fidelity .f-process-link p {
        font-size: 18px
    }

    .page-fidelity .f-guarantee {
        padding: 48px 0 42px
    }

    .page-fidelity .f-guarantee__grid {
        border-bottom: 0;
        grid-template-columns:1fr;
        margin-top: 32px;
        padding-inline-start: 24px;
        padding-inline-end: 24px
    }

    .page-fidelity .f-guarantee__grid article, .page-fidelity .f-guarantee__grid article:nth-child(3n) {
        border-right: 0;
        border-bottom: 1px solid var(--f-line);
        min-height: auto;
        padding: 28px 0
    }

    .page-fidelity .f-guarantee__grid h3 {
        font-size: 17px
    }

    .page-fidelity .f-guarantee__summary {
        padding-inline-start: 20px !important;
        padding-inline-end: 20px !important
    }

    .page-fidelity .f-video-block {
        padding-block-start: 12px;
        padding-block-end: 12px
    }

    .page-fidelity .f-video-block--service {
        padding: 48px 0 35px
    }

    .page-fidelity .f-video-block--service .f-heading {
        margin-bottom: 30px
    }

    .page-fidelity .f-video-block__poster {
        aspect-ratio: 16/9;
        border-width: 8px;
        height: auto
    }

    .page-fidelity .f-video-block__caption {
        max-width: 250px;
        bottom: 20px;
        left: 24px
    }

    .page-fidelity .f-video-block__caption b {
        font-size: 18px
    }

    .page-fidelity .f-video-block__caption small {
        display: none
    }

    .page-fidelity .f-prices {
        padding-top: 48px
    }

    .page-fidelity .f-prices__lead {
        margin-top: 18px;
        font-size: 14px
    }

    .page-fidelity .f-prices__grid, .page-fidelity .f-design-prices__grid, .page-fidelity .f-reviews__facts, .page-fidelity .f-reviews__rail, .page-fidelity .f-findout__grid {
        padding-inline-start: 24px;
        padding-inline-end: 24px
    }

    .page-fidelity .f-price-card {
        padding: 32px 24px
    }

    .page-fidelity .f-design-prices {
        padding-top: 46px
    }

    .page-fidelity .f-design-prices__grid {
        margin-top: 22px
    }

    .page-fidelity .f-reviews {
        padding: 48px 0 42px
    }

    .page-fidelity .f-reviews__facts {
        margin-top: 30px
    }

    .page-fidelity .f-reviews__facts > p, .page-fidelity .f-ratings {
        flex-wrap: wrap;
        align-items: flex-start;
        min-height: auto;
        padding: 22px 0
    }

    .page-fidelity .f-ratings > span {
        display: none
    }

    .page-fidelity .f-ratings p {
        width: 100%
    }

    .page-fidelity .f-reviews__tabs {
        margin-top: 30px
    }

    .page-fidelity .f-reviews__rail {
        grid-auto-columns: 100%;
        gap: 20px;
        margin-top: 26px
    }

    .page-fidelity .f-review-card .video-poster img {
        aspect-ratio: 580/330;
        height: auto
    }

    .page-fidelity .f-work {
        padding: 48px 0 42px
    }

    .page-fidelity .f-work__head {
        display: block
    }

    .page-fidelity .f-work__head p {
        margin-top: 12px;
        font-size: 15px
    }

    .page-fidelity .f-work__nav {
        margin-top: 30px
    }

    .page-fidelity .f-work__steps li {
        grid-template-rows:120px 210px;
        grid-template-columns:1fr;
        height: 330px
    }

    .page-fidelity .f-work__steps p {
        padding: 24px;
        font-size: 18px
    }

    .page-fidelity .f-calculator {
        padding: 48px 0 42px
    }

    .page-fidelity .f-calculator__head {
        gap: 20px
    }

    .page-fidelity .f-calculator__head > div {
        font-size: 14px
    }

    .page-fidelity .f-calc {
        margin-top: 26px
    }

    .page-fidelity .f-calc__panel {
        min-height: 600px;
        padding: 24px 20px 70px
    }

    .page-fidelity .f-calc__step {
        display: block
    }

    .page-fidelity .f-calc__step h3 {
        margin-top: 8px;
        font-size: 18px
    }

    .page-fidelity .f-calc__params {
        grid-template-columns:1fr;
        margin-top: 28px
    }

    .page-fidelity .f-calc__types {
        margin-top: 30px
    }

    .page-fidelity .f-calc__types label {
        display: flex
    }

    .page-fidelity .f-calc__types span {
        width: 100%
    }

    .page-fidelity .f-calc__result {
        min-height: 450px;
        padding: 28px 20px
    }

    .page-fidelity .f-calc__nav {
        top: 555px;
        left: 20px
    }

    .page-fidelity .f-calc__result dl > div {
        display: block
    }

    .page-fidelity .f-calc__result dd {
        margin-top: 4px
    }

    .page-fidelity .f-faq {
        padding: 48px 0 42px
    }

    .page-fidelity .f-faq .service-faq__list summary {
        padding-right: 44px;
        font-size: 15px
    }

    .page-fidelity .f-question {
        padding: 48px 0 42px
    }

    .page-fidelity .f-question__top {
        gap: 24px
    }

    .page-fidelity .f-question__phone a {
        font-size: 21px
    }

    .page-fidelity .f-consultation {
        margin-top: 34px;
        padding: 24px 18px
    }

    .page-fidelity .f-consultation__fields {
        grid-template-columns:1fr
    }

    .page-fidelity .f-findout {
        padding-top: 48px
    }

    .page-fidelity .f-findout__grid {
        margin-top: 30px
    }

    .page-fidelity .f-findout__grid p {
        min-height: auto
    }

    .page-fidelity .f-seo {
        padding: 44px 0;
        font-size: 14px
    }


    .page-fidelity .f-seo__content {
        max-height: 1020px
    }
}

@media (max-width: 400px) {
    .page-fidelity .f-guarantee__grid, .page-fidelity .f-prices__grid, .page-fidelity .f-design-prices__grid, .page-fidelity .f-reviews__facts, .page-fidelity .f-reviews__rail, .page-fidelity .f-findout__grid {
        padding-inline-start: 15px;
        padding-inline-end: 15px
    }
}

.page-fidelity .f-footer {
    z-index: 2;
    background: #fff;
    border: 1px solid #0000004d;
    border-bottom: 0;
    border-radius: 15px 15px 0 0;
    padding: 0;
    position: relative;
    overflow: hidden
}

.page-fidelity .f-footer__glow {
    pointer-events: none;
    background: radial-gradient(circle, #1121b238, #86a7cb1f 60%, #0000 75%);
    border-radius: 50%;
    width: 674px;
    height: 742px;
    position: absolute
}

.page-fidelity .f-footer__glow--left {
    top: -93px;
    left: -666px
}

.page-fidelity .f-footer__glow--right {
    top: -224px;
    right: -549px
}

.page-fidelity .f-footer__main {
    grid-template-rows:200px 150px;
    grid-template-columns:29% 20.5% 20.5% 30%;
    min-height: 350px;
    display: grid
}

.page-fidelity .f-footer__brand {
    border-right: 1px solid #1212121a;
    grid-row: 1/3;
    padding: 30px 20px 30px 70px
}

.page-fidelity .f-footer__brand > a {
    width: 230px;
    height: 145px;
    display: block
}

.page-fidelity .f-footer__brand > a img {
    object-fit: contain;
    width: 230px;
    height: 145px
}

.page-fidelity .f-footer__socials {
    justify-content: space-between;
    width: 280px;
    margin-top: 18px;
    display: flex
}

.page-fidelity .f-footer__socials a {
    width: 36px;
    height: 36px;
    color: var(--f-blue);
    background: #fff;
    border-radius: 50%;
    place-items: center;
    font-size: 9px;
    font-weight: 700;
    text-decoration: none;
    display: grid;
    box-shadow: 0 0 0 1px #0d4e9624
}

.page-fidelity .f-footer__socials a:hover {
    background: var(--f-ink);
    color: var(--f-yellow)
}

.page-fidelity .f-footer__clients {
    border-bottom: 1px solid #1212121a;
    grid-column: 2/5;
    padding: 30px 70px 24px 20px
}

.page-fidelity .f-footer h2 {
    letter-spacing: 0;
    text-transform: none;
    margin: 0;
    font-family: Manrope, sans-serif;
    font-size: 18px;
    font-weight: 700
}

.page-fidelity .f-footer__clients nav {
    align-items: center;
    gap: 24px;
    margin-top: 5px;
    display: flex
}

.page-fidelity .f-footer__clients nav a, .page-fidelity .f-footer__clients nav span {
    color: #3d3d3d;
    padding: 5px 0;
    text-decoration: none
}

.page-fidelity .f-footer__ratings {
    grid-template-columns:repeat(4, 1fr);
    align-items: center;
    margin-top: 18px;
    display: grid
}

.page-fidelity .f-footer__ratings > a, .page-fidelity .f-footer__mobile-ratings > a {
    align-items: center;
    gap: 7px;
    min-width: 0;
    text-decoration: none;
    display: flex
}

.page-fidelity .f-footer__ratings img, .page-fidelity .f-footer__mobile-ratings img {
    object-fit: contain;
    width: 100px;
    height: 45px
}

.page-fidelity .f-footer__ratings a > span, .page-fidelity .f-footer__mobile-ratings a > span {
    background: var(--f-blue);
    color: #fff;
    border-radius: 16px;
    padding: 4px 8px;
    font-size: 12px
}

.page-fidelity .f-footer__cell {
    border-right: 1px solid #1212121a;
    padding: 16px 10px 16px 20px
}

.page-fidelity .f-footer__cell:last-child {
    border-right: 0
}

.page-fidelity .f-footer__cell h2 {
    margin-bottom: 13px
}

.page-fidelity .f-footer__cell a {
    color: #3d3d3d;
    text-decoration: none;
    display: block
}

.page-fidelity .f-footer__cell a + a {
    margin-top: 8px
}

.page-fidelity .f-footer__cell p {
    color: #3d3d3d;
    margin: 0;
    line-height: 1.3
}

.page-fidelity .f-footer__address {
    padding-right: 70px
}

.page-fidelity .f-footer__help {
    border-top: 1px solid #1212121a;
    min-height: 124px;
    padding: 44px 0
}

.page-fidelity .f-footer__help .container {
    grid-template-columns:repeat(4, 1fr);
    gap: 40px;
    display: grid
}

.page-fidelity .f-footer__help h2 {
    font-family: Days One, sans-serif;
    font-size: 24px;
    font-weight: 400
}

.page-fidelity .f-footer__help a, .page-fidelity .f-footer__help > .container > button {
    color: #3d3d3d;
    text-align: left;
    cursor: pointer;
    background: 0 0;
    border: 0;
    border-top: 1px solid #1212124d;
    justify-content: space-between;
    min-width: 0;
    padding: 10px 0 0;
    text-decoration: none;
    display: flex
}

.page-fidelity .f-footer__help a:hover, .page-fidelity .f-footer__help > .container > button:hover {
    border-color: var(--f-blue);
    color: var(--f-blue)
}

.page-fidelity .f-footer__mobile-nav, .page-fidelity .f-footer__mobile-ratings {
    display: none
}

.page-fidelity .f-footer__info {
    color: #8c8c8c;
    border-top: 1px solid #1212121a;
    min-height: 136px;
    padding: 20px 0 60px
}

.page-fidelity .f-footer__info .container {
    align-items: center;
    display: flex
}

.page-fidelity .f-footer__info .container > span {
    margin-right: 30px
}

.page-fidelity .f-footer__yandex {
    width: 150px;
    height: 55px;
    color: var(--f-ink);
    border: 1px solid #ddd;
    border-radius: 4px;
    grid-template-columns:1fr auto;
    align-items: center;
    margin-right: auto;
    padding: 6px 10px;
    text-decoration: none;
    display: grid
}

.page-fidelity .f-footer__yandex b {
    font-size: 14px
}

.page-fidelity .f-footer__yandex span {
    color: #fc0;
    font-size: 12px
}

.page-fidelity .f-footer__yandex small {
    grid-column: 1/3;
    font-size: 9px
}

.page-fidelity .f-footer__info .container > div:last-child {
    gap: 10px;
    display: grid
}

.page-fidelity .f-footer__info .container > div:last-child a {
    color: inherit
}

.page-fidelity .f-cookie {
    z-index: 1000;
    padding: 20px 0;
    font: 400 14px/1.35 Manrope, sans-serif;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0
}

.page-fidelity .f-cookie[hidden] {
    display: none
}

.page-fidelity .f-cookie__inner {
    background: #fff;
    border-radius: 14px;
    align-items: center;
    gap: 18px;
    padding: 12px 34px 12px 25px;
    display: flex;
    position: relative;
    box-shadow: 0 0 40px #0000001a
}

.page-fidelity .f-cookie p {
    color: #202732;
    flex: 1;
    margin: 0;
    font-size: 14px;
    line-height: 1.35
}

.page-fidelity .f-cookie .btn {
    min-width: 94px;
    min-height: 30px;
    padding: 6px 12px
}

.page-fidelity .f-cookie__close {
    cursor: pointer;
    background: 0 0;
    border: 0;
    width: 11px;
    height: 21px;
    padding: 0;
    font: 400 14px/21px Manrope, sans-serif;
    position: absolute;
    top: 12px;
    right: 12px
}

.page-fidelity .f-cookie__close svg {
    vertical-align: baseline;
    display: inline
}

.page-fidelity .f-back-top {
    z-index: 900;
    background: var(--f-blue);
    color: #fff;
    border-radius: 50%;
    place-items: center;
    width: 54px;
    height: 54px;
    font-size: 24px;
    text-decoration: none;
    display: grid;
    position: fixed;
    bottom: 45px;
    right: 60px
}

.page-fidelity .f-back-top[hidden] {
    display: none
}

@media (max-width: 991px) {
    .page-fidelity .f-footer__main {
        min-height: 242px;
        display: block
    }

    .page-fidelity .f-footer__brand {
        border: 0;
        height: 241px;
        padding: 20px 0
    }

    .page-fidelity .f-footer__brand > a, .page-fidelity .f-footer__socials {
        margin-inline-start: auto;
        margin-inline-end: auto
    }

    .page-fidelity .f-footer__clients, .page-fidelity .f-footer__cell {
        display: none
    }

    .page-fidelity .f-footer__help {
        min-height: 693px
    }

    .page-fidelity .f-footer__help .container {
        flex-direction: column;
        gap: 30px;
        max-width: 388px;
        display: flex
    }

    .page-fidelity .f-footer__mobile-nav {
        order: -1;
        display: grid
    }

    .page-fidelity .f-footer__mobile-nav a {
        border-top: 1px solid #1212124d;
        min-height: 32px;
        display: block
    }

    .page-fidelity .f-footer__mobile-nav .is-extra {
        display: none
    }

    .page-fidelity .f-footer__mobile-nav.is-expanded .is-extra {
        display: block
    }

    .page-fidelity .f-footer__mobile-nav button {
        cursor: pointer;
        background: 0 0;
        border: 0;
        border-bottom: 1px dotted;
        width: max-content;
        margin-top: 24px;
        padding: 0 0 2px
    }

    .page-fidelity .f-footer__help > .container > button, .page-fidelity .f-footer__help > .container > a {
        min-height: 36px
    }

    .page-fidelity .f-footer__mobile-ratings {
        border-top: 1px solid #1212121a;
        grid-template-columns:1fr 1fr;
        gap: 12px 16px;
        min-height: 144px;
        padding: 20px 40px;
        display: grid
    }

    .page-fidelity .f-footer__mobile-ratings img {
        width: 80px
    }

    .page-fidelity .f-footer__info {
        min-height: 230px;
        padding: 20px 0 30px
    }

    .page-fidelity .f-footer__info .container {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px
    }

    .page-fidelity .f-footer__info .container > span {
        margin: 0
    }

    .page-fidelity .f-footer__yandex {
        margin: 0 auto
    }
}

@media (max-width: 576px) {
    .page-fidelity .header.header--scrolled {
        transform: translateY(-60px)
    }

    .page-fidelity .f-footer__help .container {
        width: 280px;
        padding: 0
    }

    .page-fidelity .f-footer__help h2 {
        font-size: 24px
    }

    .page-fidelity .f-back-top {
        bottom: 30px;
        right: 15px
    }
}

@media (max-width: 767.98px) {
    .page-fidelity .f-cookie {
        background: #eef0f4
    }

    .page-fidelity .f-cookie__inner {
        box-shadow: none;
        background: 0 0;
        border-radius: 0;
        flex-direction: column;
        align-items: stretch;
        gap: 18px;
        padding: 0;
        position: static
    }

    .page-fidelity .f-cookie p {
        flex: none
    }

    .page-fidelity .f-cookie .btn {
        width: 100%;
        min-height: 30px
    }

    .page-fidelity .f-cookie__close {
        top: 16px;
        right: 16px
    }
}

@media (max-width: 700px) {
    .page-fidelity .f-heading {
        font-size: 18px;
        line-height: 25.2px
    }

    .page-fidelity--home .cover {
        height: 1280px
    }

    .page-fidelity--home .advantages {
        height: 270px
    }

    .page-fidelity--service .service-hero {
        height: 1340px
    }

    .page-fidelity--service .service-advantages {
        min-height: 166px
    }

    .page-fidelity .f-portfolio {
        margin-top: 80px;
        padding: 0;
        overflow: visible
    }

    .page-fidelity--home .f-portfolio--home {
        min-height: 1894px
    }

    .page-fidelity--service .f-portfolio--service {
        min-height: 2950px
    }

    .page-fidelity .f-portfolio__grid {
        grid-template-columns:1fr;
        row-gap: 40px;
        margin-top: 30px;
        padding-right: 0
    }

    .page-fidelity .f-project {
        flex-direction: column;
        padding-bottom: 7px;
        display: flex;
        overflow: visible
    }

    .page-fidelity .f-project__gallery {
        aspect-ratio: auto;
        background: 0 0;
        border-radius: 0;
        width: calc(100% + 30px);
        height: 304px;
        margin-left: -15px;
        overflow: visible
    }

    .page-fidelity .f-project__main {
        border-radius: 15px;
        width: 390px;
        max-width: 100vw;
        height: 234px;
        overflow: hidden
    }

    .page-fidelity .f-project__main img {
        object-fit: cover;
        border-radius: 15px;
        width: 100%;
        height: 234px
    }

    .page-fidelity .f-project__controls {
        pointer-events: none;
        align-items: center;
        gap: 7px;
        width: 100%;
        height: 60px;
        margin-top: 10px;
        padding: 0 13px;
        display: flex;
        position: static
    }

    .page-fidelity .f-project__arrow {
        border: 1px solid var(--f-ink);
        background: 0 0;
        border-radius: 15px;
        flex: 0 0 30px;
        width: 30px;
        height: 30px;
        font-size: 16px;
        line-height: 28px
    }

    .page-fidelity .f-project__arrow--next {
        border-color: var(--f-blue);
        background: var(--f-blue);
        color: #fff;
        margin-left: 0
    }

    .page-fidelity .f-project__thumbs {
        flex: 290px;
        grid-template-columns:repeat(4, minmax(0, 1fr));
        gap: 7px;
        width: 290px;
        height: 60px;
        margin: 0
    }

    .page-fidelity .f-project__thumbs button {
        border-width: 1px;
        border-radius: 12px;
        height: 60px
    }

    .page-fidelity .f-project__thumbs img {
        width: 100%;
        height: 100%
    }

    .page-fidelity .f-project h3 {
        order: 2;
        margin: 15px 0 0;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-project__meta {
        color: #3d3d3d;
        background: 0 0;
        order: 3;
        height: auto;
        min-height: 21px;
        margin-top: 8px;
        padding: 0;
        font-size: 14px;
        line-height: 20.8px;
        display: block;
        position: static;
        transform: none
    }

    .page-fidelity .f-portfolio__more {
        margin-top: 33px
    }

    .page-fidelity .f-portfolio__more .btn {
        width: 320px;
        min-width: 0;
        min-height: 58px
    }

    .page-fidelity .f-pagination {
        margin-top: 30px
    }

    .page-fidelity .f-running-line {
        height: 72px
    }

    .page-fidelity--home .f-portfolio--home + .f-running-line {
        margin-top: 80px
    }

    .page-fidelity .f-running-line > div {
        gap: 20px;
        transform: translate(-95px)
    }

    .page-fidelity .f-running-line strong {
        font-size: 16px
    }

    .page-fidelity .f-running-line span {
        font-size: 34px
    }

    .page-fidelity--home .f-running-line + .f-approach {
        margin-top: 80px
    }

    .page-fidelity .f-approach {
        padding: 0
    }

    .page-fidelity .f-approach .f-heading {
        width: 360px;
        margin-top: 0;
        line-height: 25.2px
    }

    .page-fidelity .f-approach__grid {
        margin-top: 30px;
        display: block
    }

    .page-fidelity .f-approach__grid article {
        width: auto;
        min-height: 0;
        padding: 0;
        display: contents
    }

    .page-fidelity .f-approach__grid article + article {
        border: 0
    }

    .page-fidelity .f-approach__grid h3 {
        border-top: 1px solid #1212124d;
        border-bottom: 0;
        width: 100%;
        height: auto;
        min-height: 84px;
        margin: 0;
        padding: 20px 0;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-approach__grid p {
        border-top: 1px solid #1212124d;
        border-bottom: 0;
        width: 100%;
        height: auto;
        min-height: 52px;
        margin: 0;
        padding: 10px 0 20px;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-approach__grid article:first-child p, .page-fidelity .f-approach__grid article:last-child p {
        min-height: 73px
    }

    .page-fidelity .f-approach__grid article:last-child p {
        border-bottom: 1px solid #1212124d
    }

    .page-fidelity--home .f-approach + .f-director {
        margin-top: 120px
    }

    .page-fidelity .f-director {
        height: 600px;
        overflow: hidden
    }

    .page-fidelity .f-director__bg {
        object-position: center;
        width: 100%;
        height: 400px
    }

    .page-fidelity .f-director .container {
        background: #fff;
        width: 100%;
        height: 200px;
        padding: 21px 15px 20px;
        display: block;
        position: absolute;
        top: 400px;
        left: 0
    }

    .page-fidelity .f-director .container > img {
        z-index: 1;
        object-position: left bottom;
        width: 400px;
        max-width: none;
        height: 467px;
        position: absolute;
        bottom: 199px;
        left: 40px;
        right: auto
    }

    .page-fidelity .f-director__copy {
        z-index: 2;
        flex-wrap: wrap;
        align-content: flex-start;
        align-items: flex-start;
        width: 360px;
        height: 158px;
        padding: 0;
        display: flex;
        position: relative
    }

    .page-fidelity .f-director__copy p {
        width: 360px;
        height: 47px;
        margin: 0;
        font-size: 18px;
        line-height: 23.4px
    }

    .page-fidelity .f-director__copy h2 {
        width: 360px;
        height: 31px;
        margin: 5px 0 0;
        font-size: 24px;
        line-height: 31.2px
    }

    .page-fidelity .f-director__phone {
        flex: 0 0 54px;
        width: 54px;
        height: 54px;
        margin: 20px 0 0;
        font-size: 27px;
        position: static
    }

    .page-fidelity .f-director .btn {
        width: 296px;
        min-height: 54px;
        margin: 20px 0 0 10px;
        padding-inline-start: 10px;
        padding-inline-end: 10px;
        font-size: 14px;
        position: static
    }

    .page-fidelity--home .f-director + .f-statement--economy {
        margin-top: 80px
    }

    .page-fidelity .f-statement--economy, .page-fidelity .f-statement--economy .container {
        height: 234px;
        min-height: 234px
    }

    .page-fidelity .f-statement .container {
        padding-block-start: 0;
        padding-block-end: 0
    }

    .page-fidelity .f-statement--economy p, .page-fidelity .f-statement--guarantee p, .page-fidelity .f-statement--reputation p {
        width: 360px;
        max-width: 360px;
        height: 100%;
        margin: 0;
        font-size: 18px;
        line-height: 23.4px
    }

    .page-fidelity--home .f-statement--economy + .f-process-link {
        margin-top: 80px
    }

    .page-fidelity .f-process-link {
        height: 52px;
        min-height: 52px;
        padding: 0;
        font-size: 14px;
        line-height: 18.2px
    }

    .page-fidelity .f-process-link .container {
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        height: 50px;
        padding-inline-start: 15px;
        padding-inline-end: 15px
    }

    .page-fidelity .f-process-link__snowflake {
        flex: 0 0 22px;
        width: 22px;
        height: 24px
    }

    .page-fidelity .f-process-link .container > span:not(.f-process-link__arrow) {
        text-align: center;
        place-items: center;
        width: calc(100% - 44px);
        min-height: 36px;
        display: grid
    }

    .page-fidelity .f-process-link__arrow {
        flex: 0 0 22px;
        width: 22px;
        height: 24px;
        margin: 0
    }

    .page-fidelity .f-process-link__arrow:before {
        width: 21px;
        height: 2px;
        top: 11px;
        right: 0
    }

    .page-fidelity .f-process-link__arrow:after {
        border-width: 2px;
        width: 11px;
        height: 11px;
        top: 5px;
        right: 1px
    }

    .page-fidelity--home .f-process-link + .f-guarantee {
        margin-top: 80px
    }

    .page-fidelity .f-guarantee {
        min-height: 1456px;
        padding: 0
    }

    .page-fidelity .f-guarantee .f-heading {
        width: 360px;
        max-width: 360px;
        height: 76px
    }

    .page-fidelity .f-guarantee__grid {
        grid-template-rows:repeat(5, 266px);
        grid-template-columns:1fr;
        width: 390px;
        height: 1330px;
        margin: 50px 0 0;
        padding: 0
    }

    .page-fidelity .f-guarantee__grid article, .page-fidelity .f-guarantee__grid article:nth-child(3n), .page-fidelity .f-guarantee__grid article:nth-child(3n+1), .page-fidelity .f-guarantee__grid article:nth-child(3n+2) {
        border: 1px solid #1212124d;
        flex-direction: column;
        width: 390px;
        height: 266px;
        min-height: 266px;
        padding: 20px 15px;
        display: flex
    }

    .page-fidelity .f-guarantee__grid h3 {
        margin: 0 0 4px;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-guarantee__grid p {
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-guarantee__grid .btn {
        border-radius: 30px;
        width: 320px;
        min-height: 58px;
        margin-top: 20px
    }

    .page-fidelity .f-guarantee__summary {
        display: none !important
    }

    .page-fidelity--home .f-guarantee + .f-statement--guarantee {
        margin-top: 80px
    }

    .page-fidelity .f-statement--guarantee, .page-fidelity .f-statement--guarantee .container {
        min-height: 117px
    }

    .page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 365px;
        margin-top: 80px
    }

    .page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 323px;
        margin-top: 80px
    }

    .page-fidelity--home .f-video-block {
        padding: 0
    }

    .page-fidelity--home .f-video-block .container > p {
        height: 84px;
        margin: 0;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity--home .f-video-block--supervision .container > p {
        height: 42px
    }

    .page-fidelity--home .f-video-block__wrap {
        width: 360px;
        height: 227px;
        margin-top: 30px;
        padding: 20px 15px
    }

    .page-fidelity--home .f-video-block__poster {
        aspect-ratio: 16/9;
        width: 328px;
        height: 185px
    }

    .page-fidelity--home .f-video-block__poster > img {
        width: 328px;
        height: 185px
    }

    .page-fidelity--home .f-video-block__poster:before, .page-fidelity--home .f-video-block__poster .video-poster__play {
        display: none
    }

    .page-fidelity--service .f-portfolio--service + .f-video-block--service {
        height: 299px;
        margin-top: 80px;
        padding: 0
    }

    .page-fidelity .f-video-block--service .f-heading {
        margin: 0
    }

    .page-fidelity .f-video-block--service .f-video-block__poster {
        aspect-ratio: auto;
        border: 1px solid #1515154d;
        border-radius: 0;
        width: 390px;
        height: 244px;
        margin: 30px 0 0 -15px;
        padding: 20px 15px
    }

    .page-fidelity .f-video-block--service .f-video-block__poster > img {
        border-radius: 15px;
        width: 358px;
        height: 202px
    }

    .page-fidelity .f-video-block--service .f-video-block__poster:before, .page-fidelity .f-video-block--service .f-video-block__poster .video-poster__play {
        display: none
    }

    .page-fidelity .f-prices {
        height: 1855.78px;
        padding: 70px 0 0
    }

    .page-fidelity .f-prices .f-heading {
        margin: 0
    }

    .page-fidelity .f-prices__lead {
        width: 360px;
        height: 62.39px;
        margin: 30px 0 0;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-prices__grid {
        grid-template-columns:1fr;
        gap: 0;
        width: 390px;
        max-width: none;
        margin: 40px 0 0;
        padding: 0
    }

    .page-fidelity .f-price-card, .page-fidelity .f-price-card:first-child {
        border: 1px solid #1212124d;
        width: 390px;
        height: 542.73px;
        min-height: 542.73px;
        padding: 34px 15px 20px
    }

    .page-fidelity .f-price-card h3 {
        width: 290px;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-price-card > strong {
        font-size: 40px;
        line-height: 50px
    }

    .page-fidelity .f-price-card ul {
        flex-basis: 220px;
        height: 220px
    }

    .page-fidelity .f-price-card li {
        min-height: 0;
        margin-left: 4px;
        padding: 0;
        line-height: 23.94px
    }

    .page-fidelity .f-price-card .btn {
        border-radius: 30px;
        width: 320px;
        min-height: 58px;
        margin-top: 20px
    }

    .page-fidelity--service .f-video-block--service + .f-calculator {
        background: radial-gradient(720px at -136.5px 1156.2px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), radial-gradient(720px at calc(100% + 231.5px) 93.2px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), #f2f2f2;
        height: 1088px;
        margin-top: 80px;
        padding: 0;
        overflow: visible
    }

    .page-fidelity .f-calculator__head {
        height: 393px;
        display: block
    }

    .page-fidelity .f-calculator__head .f-heading {
        height: 51px;
        margin: 0
    }

    .page-fidelity .f-calculator__head > div {
        margin-top: 30px;
        font-size: 18px;
        line-height: 22.5px
    }

    .page-fidelity .f-calculator__head p {
        margin: 0;
        font-size: 18px;
        line-height: 22.5px
    }

    .page-fidelity .f-calculator__head p:first-child {
        height: 225px
    }

    .page-fidelity .f-calculator__head p + p {
        height: 68px;
        margin-top: 20px
    }

    .page-fidelity .f-calc {
        width: 390px;
        height: 665px;
        margin: 30px 0 0 -15px;
        overflow: hidden
    }

    .page-fidelity .f-calc__panel {
        width: 390px;
        height: 665px;
        min-height: 0;
        padding: 30px 15px 88px
    }

    .page-fidelity .f-calc__step {
        display: block
    }

    .page-fidelity .f-calc__step h3 {
        white-space: nowrap;
        width: 358px;
        height: 23.4px;
        margin: 0;
        font-family: Days One, sans-serif;
        font-size: 18px;
        font-weight: 400;
        line-height: 23.4px
    }

    .page-fidelity .f-calc__step > span {
        z-index: 1;
        position: absolute;
        top: 10px;
        right: 15px
    }

    .page-fidelity .f-calc__step > span b {
        font-size: 20px;
        line-height: 28px
    }

    .page-fidelity .f-calc__step > span small {
        font-size: 14px;
        line-height: 19.6px
    }

    .page-fidelity .f-calc__params {
        grid-template-columns:1fr;
        row-gap: 36px;
        width: 358px;
        margin-top: 20px
    }

    .page-fidelity .f-calc__params label {
        grid-template-rows:20.8px 48px;
        gap: 20px;
        width: 358px
    }

    .page-fidelity .f-calc__params input {
        border-radius: 15px;
        width: 358px;
        height: 48px
    }

    .page-fidelity .f-calc__rooms {
        margin: 0
    }

    .page-fidelity .f-calc__rooms > span {
        margin-bottom: 20px
    }

    .page-fidelity .f-calc__rooms > div {
        width: 166px;
        height: 56.6px
    }

    .page-fidelity .f-calc__rooms button {
        border-radius: 12px;
        width: 54px;
        height: 48px;
        margin-top: 4px;
        font-size: 32px;
        line-height: 0
    }

    .page-fidelity .f-calc__rooms input {
        width: 58px;
        height: 56.6px;
        font-size: 42px;
        font-weight: 600;
        line-height: 54.6px
    }

    .page-fidelity .f-calc__types {
        display: none !important
    }

    .page-fidelity .f-calc__result {
        display: none
    }

    .page-fidelity .f-calc__nav {
        top: auto;
        bottom: 30px;
        left: 15px;
        right: 15px
    }

    .page-fidelity .f-calc__nav .btn {
        border-radius: 30px;
        width: 358px;
        height: 58px;
        min-height: 58px
    }

    .page-fidelity--service .f-calculator + .f-work {
        background: radial-gradient(720px at -136.5px -11.8px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), #f2f2f2;
        height: 687px;
        margin-top: 80px;
        padding: 0
    }

    .page-fidelity .f-work > .container {
        height: 687px
    }

    .page-fidelity .f-work__head {
        height: 56px
    }

    .page-fidelity .f-work__head .f-heading {
        position: static
    }

    .page-fidelity .f-work__head p {
        width: 360px;
        margin: 10px 0 0;
        font-size: 16px;
        line-height: 20.8px;
        position: static
    }

    .page-fidelity .f-work__nav {
        height: 83px;
        margin-top: 30px
    }

    .page-fidelity .f-work__nav > strong {
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-work__nav > div {
        gap: 10px;
        margin-top: 20px;
        overflow: hidden
    }

    .page-fidelity .f-work__nav button {
        flex: 0 0 38px
    }

    .page-fidelity .f-work__steps {
        height: 478px;
        margin-top: 40px
    }

    .page-fidelity .f-work__steps li {
        grid-template-rows:178px 300px;
        grid-template-columns:1fr;
        width: 390px;
        height: 478px
    }

    .page-fidelity .f-work__steps li > p {
        width: 390px;
        height: 178px;
        margin: 0;
        padding: 15px 20px;
        font-size: 18px;
        line-height: 23.4px
    }

    .page-fidelity .f-work__steps li > p:before {
        margin: -35px 0 -13px;
        font-size: 90px;
        line-height: 126px
    }

    .page-fidelity .f-work__steps img {
        width: 320px;
        height: 260px;
        margin: 20px 54px 20px 15px
    }

    .page-fidelity--service .f-reviews {
        background: #f2f2f2
    }

    .page-fidelity--home .f-reviews {
        background: radial-gradient(720px at -154.5px 1085px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), radial-gradient(720px at calc(100% + 351.5px) -181px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), radial-gradient(720px at -144.5px -450px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), #f2f2f2
    }

    .page-fidelity .f-reviews {
        height: 859.41px;
        padding: 0;
        overflow: hidden
    }

    .page-fidelity .f-reviews__facts {
        border: 1px solid #1212124d;
        grid-template-rows:123.19px 189.59px;
        grid-template-columns:1fr;
        width: 390px;
        height: 314.78px;
        margin: 30px 0 0;
        padding: 0
    }

    .page-fidelity .f-reviews__facts > p, .page-fidelity .f-ratings {
        flex-wrap: nowrap;
        justify-self: start;
        align-items: flex-start;
        width: 388px;
        height: auto;
        min-height: 0;
        margin: 0;
        padding: 20px 15px
    }

    .page-fidelity .f-ratings {
        padding-left: 16px;
        padding-right: 14px
    }

    .page-fidelity .f-reviews__facts > p {
        border-bottom: 1px solid #1212124d;
        border-right: 0
    }

    .page-fidelity .f-review-snow {
        flex: 0 0 55px;
        width: 55px;
        height: 55px;
        margin-right: 17px
    }

    .page-fidelity .f-reviews__facts > p > span {
        width: 286px
    }

    .page-fidelity .f-ratings__content {
        flex: 0 0 285px;
        width: 285px
    }

    .page-fidelity .f-ratings__content > div {
        grid-template-rows:48px 60px;
        grid-template-columns:repeat(2, 134.5px);
        gap: 0 16px;
        height: 108px;
        margin-top: 20.8px;
        display: grid
    }

    .page-fidelity .f-ratings a {
        align-self: center;
        width: 134.5px;
        height: 48px
    }

    .page-fidelity .f-ratings a:nth-child(4) {
        align-self: start;
        height: 60px
    }

    .page-fidelity .f-ratings a > img {
        width: 80px;
        height: 48px
    }

    .page-fidelity .f-ratings a:nth-child(4) > img {
        height: 60px
    }

    .page-fidelity .f-ratings__content a:before {
        min-width: 0;
        height: 24.3px;
        padding: 5px;
        font-size: 11px;
        line-height: 14.3px;
        left: 27px
    }

    .page-fidelity .f-reviews__tabs {
        box-sizing: border-box;
        gap: 16px;
        width: 390px;
        height: 44px;
        margin-top: 30px;
        padding: 0 15px
    }

    .page-fidelity .f-reviews__rail {
        border: 1px solid #1515154d;
        grid-auto-columns: 100%;
        gap: 0;
        width: 100%;
        height: 390px;
        margin: 25px 0 0;
        padding: 54px 0 0;
        overflow: hidden
    }

    .page-fidelity .f-review-card {
        width: 100%;
        min-width: 0;
        height: 293.84px;
        margin: 0 0 0 -5px;
        padding: 20px
    }

    .page-fidelity .f-review-card .video-poster {
        width: 100%;
        max-width: 100%;
        height: 200.25px
    }

    .page-fidelity .f-review-card .video-poster:after {
        display: none
    }

    .page-fidelity .f-review-card .video-poster img {
        aspect-ratio: auto;
        width: 100%;
        max-width: 100%;
        height: 200.25px
    }

    .page-fidelity .f-review-card .video-poster__play {
        display: none
    }

    .page-fidelity .f-review-card h3 {
        width: 280px;
        margin-top: 9px;
        font-size: 16px;
        line-height: 20.8px;
        text-decoration: underline
    }

    .page-fidelity .f-slider-nav {
        gap: 15px;
        width: 125px;
        height: 35px;
        top: 489px;
        right: 16px
    }

    .page-fidelity--home .f-design-prices {
        height: 1402px;
        margin-top: 80px;
        padding: 0
    }

    .page-fidelity .f-design-prices .container {
        height: 92px
    }

    .page-fidelity .f-design-prices .container > p {
        height: 42px;
        margin: 0;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-design-prices__grid {
        grid-template-rows:repeat(3, 410px);
        grid-template-columns:1fr;
        gap: 0;
        width: 390px;
        height: 1230px;
        margin: 80px 0 0;
        padding: 0
    }

    .page-fidelity .f-design-prices__grid article {
        background: 0 0;
        border: 1px solid #1212124d;
        width: 390px;
        height: 410px;
        min-height: 410px;
        padding: 34px 15px 24px
    }

    .page-fidelity .f-design-prices__grid h3 {
        margin: 0 0 15px;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-design-prices__grid article > div {
        display: block
    }

    .page-fidelity .f-design-prices__grid s {
        color: #537da8;
        font-size: 26px;
        line-height: 34px;
        display: block
    }

    .page-fidelity .f-design-prices__grid strong {
        color: #e20b13;
        margin-top: 4px;
        font-size: 40px;
        font-weight: 400;
        line-height: 50px;
        display: block
    }

    .page-fidelity .f-design-prices__grid article > span {
        margin-top: 15px;
        font-size: 14px;
        line-height: 20.8px
    }

    .page-fidelity .f-design-prices__grid p {
        margin: 10px 0;
        font-size: 14px;
        line-height: 23.4px
    }

    .page-fidelity .f-design-prices__grid .btn {
        border-radius: 30px;
        width: 320px;
        min-height: 58px
    }

    .page-fidelity .f-design-prices__grid article > a {
        text-align: left;
        color: #3d3d3d;
        margin-top: 12px;
        padding-left: 20px
    }

    .page-fidelity--home .f-reviews + .f-statement--reputation {
        margin-top: 80px
    }

    .page-fidelity .f-statement--reputation, .page-fidelity .f-statement--reputation .container {
        height: 164px;
        min-height: 164px
    }

    .page-fidelity .f-statement--reputation {
        /*background: radial-gradient(80% 130% at 52% 45%, #8baee0a8, #f2f2f200 84%)*/
    }

    .page-fidelity--home .f-statement--reputation + .f-running-line {
        margin-top: 80px
    }

    .page-fidelity .f-findout {
        height: 866px;
        padding: 60px 0 0
    }

    .page-fidelity .f-findout .f-heading {
        height: 51px
    }

    .page-fidelity .f-findout .f-heading span {
        display: none
    }

    .page-fidelity .f-findout__grid {
        border-top: 1px solid #1212124d;
        grid-template-rows:254px 246px 226px;
        grid-template-columns:1fr;
        width: 390px;
        max-width: none;
        height: 726px;
        margin: 30px 0 0;
        padding: 0
    }

    .page-fidelity .f-findout__grid article, .page-fidelity .f-findout__grid article:first-child, .page-fidelity .f-findout__grid article:last-child {
        border-bottom: 1px solid #1212124d;
        border-right: 1px solid #1212124d;
        width: 390px;
        min-height: 0;
        padding: 44px 15px 27px
    }

    .page-fidelity .f-findout__grid h3 {
        margin: 0 0 18px;
        font-size: 18px;
        line-height: 23.4px
    }

    .page-fidelity .f-findout__grid p {
        min-height: 0;
        margin: 0 0 18px;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-findout__phone {
        color: #121212;
        font-size: 16px;
        font-weight: 400;
        text-decoration: underline
    }

    .page-fidelity .f-findout__grid .btn {
        border-radius: 30px;
        width: 320px;
        min-height: 58px;
        margin: 20px auto 0;
    }

    .page-fidelity .f-faq {
        margin-top: 80px;
        padding: 0;
        overflow: visible
    }

    .page-fidelity--home .f-faq {
        background: radial-gradient(720px at calc(100% + 128.5px) -228px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), radial-gradient(720px at -294.5px -368px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), #f2f2f2
    }

    .page-fidelity--service .f-faq {
        background: radial-gradient(720px at -144.5px 1300.2px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), #f2f2f2
    }

    .page-fidelity--home .f-faq--home {
        height: 817px
    }

    .page-fidelity--service .f-faq {
        height: 1086px
    }

    .page-fidelity .f-faq__layout {
        grid-template-columns:1fr;
        align-content: start;
        gap: 0;
        height: 100%;
        display: grid
    }

    .page-fidelity--home .f-faq__layout {
        grid-template-rows:25.2px 402.14px 302px 88px
    }

    .page-fidelity--service .f-faq__layout {
        grid-template-rows:25.2px 670.49px 302px 88px
    }

    .page-fidelity .f-faq__layout > div:last-child {
        grid-column: 1;
        display: contents
    }

    .page-fidelity .f-faq .f-heading {
        grid-row: 1;
        width: 360px;
        height: 25.2px;
        margin: 0
    }

    .page-fidelity .f-faq .service-faq__list {
        grid-row: 2;
        width: 360px;
        margin-top: 28px;
        display: block
    }

    .page-fidelity--home .f-faq .service-faq__list {

    }

    .page-fidelity--service .f-faq .service-faq__list {
        height: 642.49px
    }

    .page-fidelity .f-faq .service-faq__list details {
        border: 0;
        border-bottom: 1px solid #1212122e;
        height: auto;
        overflow: hidden
    }

    .page-fidelity .f-faq .service-faq__list details:first-child {
        border-top: 1px solid #1212122e
    }

    .page-fidelity .f-faq .service-faq__list summary {
        width: 360px;
        height: auto;
        min-height: 0;
        padding: 18px 42px 18px 0;
        font-size: 16px;
        font-weight: 700;
        line-height: 21.6px;
        list-style: none;
        display: list-item;
        position: relative
    }

    .page-fidelity--home .f-faq .service-faq__list details:nth-child(2) summary {
        padding-right: 55px
    }

    .page-fidelity .f-faq .service-faq__list summary::-webkit-details-marker {
        display: none
    }

    .page-fidelity .f-faq .service-faq__list summary:after {
        background: linear-gradient(var(--f-blue), var(--f-blue)) center / 18px 3px no-repeat, linear-gradient(var(--f-blue), var(--f-blue)) center / 3px 18px no-repeat;
        width: 18px;
        height: 18px;
        top: 50%;
        right: 4px;
        transform: translateY(-50%)
    }

    .page-fidelity .f-faq .service-faq__list details[open] summary:after {
        background: linear-gradient(var(--f-blue), var(--f-blue)) center / 18px 3px no-repeat
    }

    .page-fidelity .f-faq__media {
        border-radius: 15px;
        grid-area: 3/1;
        width: 390px;
        height: 272px;
        margin: 30px 0 0 -15px;
        display: block;
        position: relative;
        overflow: hidden
    }

    .page-fidelity .f-faq__media > img {
        border-radius: 15px;
        width: 390px;
        height: 272px
    }

    .page-fidelity .f-faq__thumbs {
        bottom: 15px;
        left: 85px
    }

    .page-fidelity .f-doc-button {
        border-radius: 30px;
        grid-area: 4/1;
        width: 320px;
        height: 58px;
        margin: 30px 0 0 20px;
        position: static
    }

    .page-fidelity .f-faq + .f-question {
        height: 700px;
        margin-top: 80px;
        padding: 0
    }

    .page-fidelity--home .f-question {
        background: #f2f2f2
    }

    .page-fidelity--service .f-question {
        background: radial-gradient(720px at calc(100% + 351.5px) 403.5px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), radial-gradient(720px at -144.5px 134.5px, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #0000 100%), #f2f2f2
    }

    .page-fidelity .f-question__top {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 0;
        width: 360px;
        height: 162px;
        display: flex
    }

    .page-fidelity .f-question__top .f-heading {
        white-space: normal;
        width: 360px;
        height: 26px;
        font-size: 18px;
        line-height: 25.2px
    }

    .page-fidelity .f-question__top p {
        height: 21px;
        margin: 20px 0 0;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-question__phone {
        border-top: 1px solid #1212124d;
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
        width: 255px;
        height: 66px;
        margin-top: 30px;
        padding: 10px 0 0;
        display: flex
    }

    .page-fidelity .f-question__phone a {
        font-size: 18px;
        line-height: 23.4px
    }

    .page-fidelity .f-consultation {
        border-radius: 15px;
        width: 390px;
        height: auto;
        margin: 50px 0 0 -15px;
        padding: 28px 15px 30px
    }

    .page-fidelity .f-consultation h3 {
        width: 358px;
        height: 47px;
        font-size: 18px;
        line-height: 23.4px
    }

    .page-fidelity .f-consultation__fields {
        width: 320px;
        height: 326px;
        margin: 11px auto 0
    }

    .page-fidelity .f-consultation__fields label {
        width: 270px;
        margin-left: 25px
    }

    .page-fidelity .f-consultation__fields label + label {
        margin-top: 16px
    }

    .page-fidelity .f-consultation .captcha-placeholder {
        visibility: hidden;
        width: 300px;
        height: 120px;
        margin: 16px 0 0 10px
    }

    .page-fidelity .f-consultation .btn {
        border-radius: 30px;
        width: 320px;
        min-height: 58px;
        margin: 20px 0 0
    }

    .page-fidelity .f-consultation__policy {
        margin-top: 5px
    }

    .page-fidelity .f-question + .f-seo {
        margin-top: 50px
    }

    .page-fidelity .f-seo {
        padding: 20px 0 80px;
        font-size: 16px;
        line-height: 20.8px
    }

    .page-fidelity .f-seo--service {
        height: 820px;
        min-height: 820px;
        display: block
    }

    .page-fidelity .f-seo__content {
        max-height: 880px
    }
}

@media (min-width: 992px) {

}

.page-fidelity .f-calc__panel[hidden], .page-fidelity .f-calc__stage[hidden], .page-fidelity .f-calc__nav .btn[hidden] {
    display: none !important
}

.page-fidelity .f-calc__types.is-active {
    display: block !important
}

.page-fidelity .f-calc__result.is-active {
    background: var(--f-blue);
    color: #fff;
    flex-direction: column;
    width: 100%;
    height: 100%;
    padding: 30px 60px;
    display: flex
}

.page-fidelity .f-calc__nav {
    gap: 12px;
    display: flex
}

.page-fidelity .f-calc__nav:has([data-calculator-prev]:not([hidden])) {
    justify-content: flex-end;
    left: 60px
}

.page-fidelity .f-calc__nav:has([data-calculator-prev]:not([hidden])) .btn {
    width: min(270px, 50% - 6px)
}

.page-fidelity .f-calc__nav .btn--secondary {
    border-color: var(--f-blue);
    color: var(--f-blue);
    background: #fff
}

@media (max-width: 700px) {
    .page-fidelity .f-calc__result.is-active {
        padding: 30px 15px 88px
    }

    .page-fidelity .f-calc__nav:has([data-calculator-prev]:not([hidden])) {
        left: 15px;
        right: 15px
    }
}

.page-fidelity .f-price-card li {
    letter-spacing: .2px;
    position: relative
}

.page-fidelity .f-price-card li + li {
    margin-top: 10px
}

.page-fidelity .f-price-card li:before {
    content: "";
    background: #151515
}

.page-fidelity .f-price-card li:after {
    content: "";
    border: 0 solid #fff;
    border-width: 0 0 2px 2px;
    width: 9px;
    height: 5px;
    margin: 7px 0 0 7px;
    position: absolute;
    transform: rotate(-45deg)
}

.page-fidelity .f-question__phone a {
    color: inherit;
    align-items: center;
    gap: 15px;
    display: flex
}

.page-fidelity .f-question__phone a svg {
    fill: none;
    stroke: currentColor;
    flex: 0 0 24px;
    width: 24px;
    height: 24px
}

.page-fidelity .f-seo__content {
    margin-top: 20px
}

.page-fidelity .f-doc-link {
    text-decoration: none
}

.page-fidelity .f-review-card .video-poster:after {
    display: none
}

.page-fidelity .f-review-card picture {
    display: block
}

.page-fidelity .f-review-card .video-poster__play {
    color: #0000;
    background: #00a1e7;
    border-radius: 12px;
    place-items: center;
    width: 72px;
    height: 72px;
    padding: 0;
    display: grid
}

.page-fidelity .f-review-card .video-poster__play:after {
    content: "";
    border-top: 12px solid #0000;
    border-bottom: 12px solid #0000;
    border-left: 19px solid #fff;
    width: 0;
    height: 0;
    margin-left: 5px
}

.page-fidelity .f-text-reviews {
    border: 1px solid #1515154d;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 20px;
    max-width: 1200px;
    margin: 25px auto 0;
    padding: 54px 30px 40px;
    display: grid
}

.page-fidelity .f-text-reviews[hidden] {
    display: none
}

.page-fidelity .f-text-review {
    background: #fff;
    grid-template-columns:46% 1fr;
    gap: 22px;
    padding: 20px;
    display: grid
}

.page-fidelity .f-text-review img {
    object-fit: cover;
    width: 100%;
    height: 230px
}

.page-fidelity .f-text-review h3 {
    margin: 8px 0;
    font: 700 18px/1.3 Manrope, sans-serif
}

.page-fidelity .f-text-review p, .page-fidelity .f-text-review blockquote {
    margin: 0 0 12px
}

.page-fidelity .f-text-review a, .page-fidelity .f-text-review button {
    color: #1515b2;
    font: inherit
}

@media (max-width: 700px) {
    .page-fidelity .f-review-card .video-poster__play {
        color: #0000;
        background: #00a1e7;
        border-radius: 12px;
        place-items: center;
        width: 72px;
        height: 72px;
        padding: 0;
        display: grid
    }

    .page-fidelity .f-review-card .video-poster__play:after {
        border-top-width: 12px;
        border-bottom-width: 12px;
        border-left: 19px solid #fff;
        margin-left: 5px
    }

    .page-fidelity .f-consultation .captcha-placeholder {
        visibility: visible
    }

    .page-fidelity .f-price-card li > span {
        max-width: 286px
    }

    .page-fidelity .f-price-card .btn {
        background: #0d4e96;
        border-color: #0d4e96
    }

    .page-fidelity .f-question__phone a {
        gap: 10px
    }

    .page-fidelity .f-design-prices__grid s, .page-fidelity .f-design-prices__grid strong {
        font-family: Manrope, sans-serif;
        font-weight: 700
    }

    .page-fidelity .f-design-prices__grid .btn {
        color: #e1e1e1;
        text-transform: none;
        font-family: Montserrat, sans-serif;
        font-size: 14px;
        font-weight: 700;
        line-height: 14px
    }

    .page-fidelity .f-design-prices__grid article > a {
        color: #121212;
        text-align: left;
        margin-top: 15px;
        padding-left: 20px;
        line-height: 20.8px;
        text-decoration: none
    }

    .page-fidelity .f-running-line span {
        color: #0000;
        background: url(/media/fidelity/common/snowflake.svg) 50%/contain no-repeat;
        flex: 0 0 55px;
        width: 55px;
        height: 55px;
        font-size: 0
    }

    .page-fidelity .f-running-line--blue > div {
        gap: 10px;
        transform: translate(99px)
    }

    .page-fidelity .f-running-line--blue strong {
        line-height: 20.8px
    }

    .page-fidelity .f-text-reviews {
        grid-template-columns:1fr;
        width: 390px;
        margin-top: 25px;
        padding: 54px 15px 40px
    }

    .page-fidelity .f-text-review {
        grid-template-columns:1fr
    }
}

@media (min-width: 993px) and (max-width: 1200px) {
    body.page-fidelity--home .advantages__item {
        flex: 1 1 0;
        width: auto;
        max-width: 350px
    }

    body.page-fidelity .f-project__gallery {
        aspect-ratio: auto;
        height: 425px
    }

    body.page-fidelity--home .f-portfolio--home {
        height: 1264.95px
    }

    body.page-fidelity--home .f-running-line + .f-approach {

    }

    body.page-fidelity--home .f-approach > .container {
        top: 0
    }

    body.page-fidelity--home .f-approach__grid, body.page-fidelity--home .f-approach__grid article {
        height: 293.172px
    }

    body.page-fidelity--home .f-approach__grid p {
        height: 142.172px
    }

    body.page-fidelity--home .f-director {
        height: 582px
    }

    body.page-fidelity--home .f-director__bg {
        height: 401px
    }

    body.page-fidelity--home .f-director .container {
        height: 180px;
        top: 401px
    }

    body.page-fidelity--home .f-director .container > img {
        bottom: 179px
    }

    body.page-fidelity--home .f-process-link + .f-guarantee {
        height: 893.922px
    }

    body.page-fidelity--home .f-guarantee__grid {
        grid-template-rows:342.375px 280.375px;
        height: 622.75px;
        margin-top: 70px
    }

    body.page-fidelity--home .f-guarantee__grid article {
        min-height: 0
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 653.859px
    }

    body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 633.063px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__wrap {
        aspect-ratio: 16/9;
        border: 0;
        width: calc(100% - 122px);
        height: auto;
        margin: 100px auto 0;
        padding: 0
    }

    body.page-fidelity .f-prices {
        height: 883.906px
    }

    body.page-fidelity .f-prices__grid {
        margin-top: 50px
    }

    body.page-fidelity .f-reviews {
        height: 850.281px;
        padding-top: 0
    }

    body.page-fidelity--home .f-video-block--supervision + .f-design-prices {
        height: 669.438px
    }

    body.page-fidelity--home .f-design-prices .container {
        height: 121.578px
    }

    body.page-fidelity--home .f-design-prices__grid {
        height: 447.859px;
        margin-top: 100px
    }

    body.page-fidelity--home .f-design-prices__grid article {
        height: 447.859px;
        min-height: 447.859px
    }

    body.page-fidelity--home .f-design-prices + .f-reviews {
        margin-top: 50px
    }

    body.page-fidelity .f-reviews__rail {
        height: 446.5px
    }

    body.page-fidelity .f-review-card {
        height: 404.906px
    }

    body.page-fidelity--home .f-reviews + .f-statement--reputation, body.page-fidelity--home .f-statement--reputation, body.page-fidelity--home .f-statement--reputation .container {
        height: 195px;
        min-height: 195px
    }

    body.page-fidelity--home .f-findout {
        height: 485.172px
    }

    body.page-fidelity .f-faq + .f-question {
        height: auto;
    }

    body.page-fidelity .f-question + .f-seo {
        margin-top: 50px
    }

    body.page-fidelity footer.site-footer.f-footer {
        height: 880.922px
    }

    body.page-fidelity footer.f-footer .f-footer__main {
        grid-template-rows:241.188px 200.984px 148.578px;
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) 382px;
        height: 591.75px
    }

    body.page-fidelity footer.f-footer .f-footer__brand {
        border-right: 0;
        grid-area: 1 / 1 /auto/ 4;
        align-items: center;
        height: 241.188px;
        padding: 20px 0
    }

    body.page-fidelity footer.f-footer .f-footer__brand-inner {
        margin: auto 0 0;
        transform: translate(1px)
    }

    body.page-fidelity footer.f-footer .f-footer__clients {
        border-top: 1px solid #1212121a;
        border-right: 1px solid #1212121a;
        grid-area: 2 / 1 /auto/ 4;
        height: 200.984px;
        padding: 30px 70px 30px 20px
    }

    body.page-fidelity footer.f-footer .f-footer__cell {
        grid-row: 3;
        height: 148.578px
    }

    body.page-fidelity footer.f-footer .f-footer__clients nav {
        width: calc(100% + 9px);
        margin-left: -4px;
        margin-right: -4px
    }

    body.page-fidelity footer.f-footer .f-footer__address p {
        width: 300px
    }

    body.page-fidelity footer.f-footer .f-footer__address {
        border-right: 1px solid #1212121a
    }

    body.page-fidelity footer.f-footer .f-footer__help {
        height: 151.375px
    }
}

@media (min-width: 701px) and (max-width: 992px) {
    body.page-fidelity .container {
        padding-left: 60px;
        padding-right: 60px
    }

    body.page-fidelity .f-heading {
        font-size: 22px;
        line-height: 1.4
    }

    body.page-fidelity--home .advantages__item {
        flex: 0 auto;
        width: auto;
        max-width: 350px
    }

    body.page-fidelity--home .advantages > .container {
        margin-top: -20px
    }

    body.page-fidelity .f-portfolio {
        margin-top: 80px;
        padding: 50px 0 0;
        overflow: hidden
    }

    body.page-fidelity--home .f-portfolio--home {
        height: auto;
        min-height: 0
    }

    body.page-fidelity .f-portfolio__grid {
        grid-template-columns:repeat(2, calc(50% - 11px));
        justify-content: start;
        gap: 20px;
        margin-top: 80px;
        padding: 0 0 20px
    }

    body.page-fidelity .f-project {
        overflow: hidden
    }

    body.page-fidelity .f-project__gallery {
        aspect-ratio: auto;
        height: 280px
    }

    body.page-fidelity .f-portfolio .f-project__controls {
        gap: 0;
        height: 38px;
        padding-left: 18px;
        padding-right: 18px;
        left: 0;
        right: 0
    }

    body.page-fidelity .f-project__arrow {
        flex-basis: 34px;
        width: 34px;
        height: 25px
    }

    body.page-fidelity .f-portfolio .f-project__thumbs {
        flex-basis: calc(100% - 104px);
        gap: 5px;
        width: calc(100% - 104px);
        height: 38px;
        margin-left: 18px;
        transform: none
    }

    body.page-fidelity .f-project h3 {
        font-size: 18px;
        line-height: 1.3
    }

    body.page-fidelity .f-project__meta {
        color: #000;
        border-radius: 0;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 10px;
        min-height: 0;
        margin-top: 0;
        font-size: 14px;
        line-height: 1.3;
        display: none;
        transform: translateY(-100%)
    }

    body.page-fidelity .f-project__meta-item {
        margin-top: 10px
    }

    body.page-fidelity .f-project__meta-item svg {
        width: 20px;
        height: 20px;
        margin-right: 8px
    }

    body.page-fidelity .f-portfolio__more {
        margin-top: 35px;
        display: block
    }

    body.page-fidelity--home .f-portfolio--home + .f-running-line {
        margin-top: 80px
    }

    body.page-fidelity .f-running-line {
        height: 80px
    }

    body.page-fidelity .f-running-line > div {
        gap: 20px;
        transform: translate(-95px)
    }

    body.page-fidelity .f-running-line strong {
        font-size: 16px
    }

    body.page-fidelity .f-running-line span {
        font-size: 34px
    }

    body.page-fidelity--home .f-running-line + .f-approach {
        height: 403.969px;
        margin-top: 80px
    }

    body.page-fidelity--home .f-approach .f-heading {
        width: 100%;
        height: 61.5938px;
        margin: 0
    }

    body.page-fidelity--home .f-approach__grid {
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap: 0 30px;
        height: 312.375px;
        margin-top: 30px
    }

    body.page-fidelity--home .f-approach__grid article {
        height: 156.188px
    }

    body.page-fidelity--home .f-approach__grid h3 {
        height: 83.5938px;
        padding: 10px 0 20px;
        font-size: 16px;
        line-height: 20.8px
    }

    body.page-fidelity--home .f-approach__grid p {
        height: 72.5938px;
        padding: 10px 0 20px;
        font-size: 16px;
        line-height: 20.8px
    }

    body.page-fidelity--home .f-approach + .f-director {
        height: 582px;
        margin-top: 100px
    }

    body.page-fidelity--home .f-director__bg {
        height: 401px
    }

    body.page-fidelity--home .f-director .container {
        height: 180px;
        padding-top: 21px;
        padding-bottom: 20px;
        top: 401px
    }

    body.page-fidelity--home .f-director .container > img {
        bottom: 179px
    }

    body.page-fidelity--home .f-director + .f-statement--economy {
        height: 218.313px;
        min-height: 218.313px;
        margin-top: 80px
    }

    body.page-fidelity--home .f-statement--economy .container, body.page-fidelity--home .f-statement--guarantee .container {
        align-items: center;
        height: 100%;
        padding-block-start: 0;
        padding-block-end: 0;
        display: flex
    }

    body.page-fidelity--home .f-statement--economy p, body.page-fidelity--home .f-statement--guarantee p {
        width: 100%;
        max-width: none;
        height: auto;
        margin: 0;
        font-size: 24px;
        line-height: 1.36
    }

    body.page-fidelity--home .f-statement--economy p {
        text-indent: 140px
    }

    body.page-fidelity--home .f-statement--economy + .f-process-link {
        height: 72px;
        min-height: 72px;
        margin-top: 80px;
        padding: 0;
        font-size: 20px;
        line-height: 28px
    }

    body.page-fidelity--home .f-process-link .container {
        height: 70px;
        min-height: 70px
    }

    body.page-fidelity--home .f-process-link__snowflake, body.page-fidelity--home .f-process-link__arrow {
        flex-basis: 32px;
        width: 32px;
        height: 32px
    }

    body.page-fidelity--home .f-process-link .container > span:not(.f-process-link__arrow) {
        min-height: 36px
    }

    body.page-fidelity--home .f-process-link + .f-guarantee {
        height: 979.594px;
        margin-top: 80px;
        overflow: hidden
    }

    body.page-fidelity--home .f-guarantee .f-heading {
        width: calc(100% - 120px);
        height: 61.5938px;
        margin: 0 60px
    }

    body.page-fidelity--home .f-guarantee__grid {
        grid-template-rows:repeat(3, 266px);
        grid-template-columns:repeat(2, minmax(0, 1fr));
        width: 100%;
        height: 798px;
        margin-top: 120px;
        padding: 0
    }

    body.page-fidelity--home .f-guarantee__grid article, body.page-fidelity--home .f-guarantee__grid article:nth-child(3n), body.page-fidelity--home .f-guarantee__grid article:nth-child(3n+1), body.page-fidelity--home .f-guarantee__grid article:nth-child(3n+2) {
        border: 1px solid #1212124d;
        justify-content: center;
        width: auto;
        height: 266px;
        min-height: 266px;
        padding: 20px
    }

    body.page-fidelity--home .f-guarantee__summary {
        display: block !important
    }

    body.page-fidelity--home .f-guarantee + .f-statement--guarantee {
        height: 124.75px;
        min-height: 124.75px;
        margin-top: 80px
    }

    body.page-fidelity--home .f-statement--guarantee p {
        text-indent: 20px
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 481.063px;
        margin-top: 80px
    }

    body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 439.469px;
        margin-top: 80px
    }

    body.page-fidelity.page-fidelity--home .f-video-block .container > p {
        height: 62.3906px;
        font-size: 16px;
        line-height: 20.8px
    }

    body.page-fidelity.page-fidelity--home .f-video-block--supervision .container > p {
        height: 20.7969px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__wrap {
        aspect-ratio: 16/9;
        border: 0;
        width: calc(100% - 122px);
        height: auto;
        margin: 70px auto 0;
        padding: 0
    }

    body.page-fidelity .f-prices {
        height: 1887.78px;
        padding: 70px 0 0
    }

    body.page-fidelity .f-prices .f-heading {
        margin: 0
    }

    body.page-fidelity .f-prices__lead {
        width: 520px;
        height: 62.3906px;
        margin: 30px 0 0;
        font-size: 16px;
        line-height: 20.8px
    }

    body.page-fidelity .f-prices__grid {
        grid-template-rows:repeat(3, 536.734px);
        grid-template-columns:1fr;
        gap: 0;
        width: calc(100% - 120px);
        height: 1610.2px;
        margin: 84.3906px auto 0;
        padding: 0
    }

    body.page-fidelity .f-price-card, body.page-fidelity .f-price-card:first-child {
        border: 1px solid #1212124d;
        width: 460px;
        height: 536.734px;
        min-height: 536.734px;
        padding: 34px 15px 30px 20px
    }

    body.page-fidelity .f-running-line--blue {
        height: 80px
    }

    body.page-fidelity .f-reviews {
        height: 1025.63px;
        padding: 0
    }

    body.page-fidelity .f-reviews__facts {
        grid-template-rows:123.188px 158.203px;
        grid-template-columns:1fr;
        width: 100%;
        height: 283.391px;
        margin: 50px 0 0;
        padding: 0
    }

    body.page-fidelity .f-reviews__facts > p, body.page-fidelity .f-ratings {
        border-right: 0;
        justify-self: start;
        align-items: flex-start;
        width: 100%;
        height: auto;
        min-height: 0;
        padding: 30px 56px
    }

    body.page-fidelity .f-reviews__facts > p {
        border-bottom: 1px solid #1212124d
    }

    body.page-fidelity .f-review-snow {
        flex-basis: 55px;
        width: 55px;
        height: 55px;
        margin-right: 17px
    }

    body.page-fidelity .f-ratings__content {
        flex: auto;
        width: auto
    }

    body.page-fidelity .f-reviews__tabs {
        height: 44px;
        margin-top: 30px
    }

    body.page-fidelity .f-reviews__rail {
        grid-auto-columns: 100%;
        width: 100%;
        height: 562.438px;
        margin-top: 25px;
        padding: 20px 60px
    }

    body.page-fidelity .f-review-card {
        width: 100%;
        height: 520.438px;
        margin: 0;
        padding: 20px
    }

    body.page-fidelity .f-review-card .video-poster, body.page-fidelity .f-review-card .video-poster img {
        aspect-ratio: 16/9;
        width: 100%;
        height: auto
    }

    body.page-fidelity--home .f-video-block--supervision + .f-design-prices {
        height: 1386.33px;
        margin-top: 80px;
        padding: 0
    }

    body.page-fidelity .f-design-prices .container {
        height: 82.3906px
    }

    body.page-fidelity .f-design-prices .container > p {
        margin: 0;
        font-size: 16px;
        line-height: 20.8px
    }

    body.page-fidelity .f-design-prices__grid {
        grid-template-rows:repeat(3, 407.979px);
        grid-template-columns:1fr;
        gap: 0;
        width: calc(100% - 120px);
        height: 1223.94px;
        margin: 80px auto 0;
        padding: 0
    }

    body.page-fidelity .f-design-prices__grid article {
        width: 460px;
        height: 407.979px;
        min-height: 407.979px;
        padding: 34px 20px 24px
    }

    body.page-fidelity--home .f-design-prices + .f-reviews {
        margin-top: 50px
    }

    body.page-fidelity--home .f-reviews + .f-statement--reputation, body.page-fidelity--home .f-statement--reputation, body.page-fidelity--home .f-statement--reputation .container {
        height: 155.938px;
        min-height: 155.938px;
        margin-top: 80px;
        padding-block-start: 0;
        padding-block-end: 0
    }

    body.page-fidelity--home .f-statement--reputation + .f-running-line {
        height: 80px;
        margin-top: 80px
    }

    body.page-fidelity--home .f-findout {
        height: 886.156px;
        padding-top: 100px
    }

    body.page-fidelity--home .f-findout__grid {
        grid-template-rows:254px 246px 226px;
        grid-template-columns:1fr;
        width: 100%;
        height: 726px;
        margin-top: 30px;
        padding: 0
    }

    body.page-fidelity--home .f-findout__grid article, body.page-fidelity--home .f-findout__grid article:first-child, body.page-fidelity--home .f-findout__grid article:last-child {
        width: 100%;
        min-height: 0;
        padding: 44px 60px 27px
    }

    body.page-fidelity .f-faq {
        margin-top: 80px;
        padding: 0;
        overflow: hidden
    }

    body.page-fidelity--home .f-faq {
        height: 911.578px
    }

    body.page-fidelity .f-faq__layout {
        grid-template-columns:1fr;
        align-content: start;
        gap: 0;
        height: 100%;
        padding-left: 60px;
        padding-right: 60px;
        display: grid
    }

    body.page-fidelity .f-faq__layout > div:last-child {
        display: contents
    }

    body.page-fidelity .f-faq .f-heading {
        grid-area: 1/1;
        width: 100%;
        height: 30.7969px;
        margin: 0
    }

    body.page-fidelity .f-faq .service-faq__list {
        grid-area: 2/1;
        width: 100%;
        margin-top: 40px
    }

    body.page-fidelity--home .f-faq .service-faq__list {

    }

    body.page-fidelity .f-faq .service-faq__list summary {
        width: 100%;
        font-size: 16px;
        line-height: 21.6px
    }

    body.page-fidelity .f-faq__media {
        grid-area: 3/1;
        width: 100%;
        height: auto;
        margin: 30px 0 0;
        display: block
    }

    body.page-fidelity .f-faq__media > img {
        width: 100%;
        height: 310px
    }

    body.page-fidelity .f-doc-button {
        grid-area: 4/1;
        width: 220px;
        height: 54px;
        margin: 30px auto 0;
        position: static
    }

    body.page-fidelity .f-faq + .f-question {
        height: auto;
        margin-top: 80px;
        padding: 0
    }

    body.page-fidelity .f-question__top {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        width: 100%;
        height: 179.578px;
        position: relative
    }

    body.page-fidelity .f-question__top .f-heading {
        white-space: normal;
        width: 100%;
        height: 30.7969px
    }

    body.page-fidelity .f-question__top p {
        height: 20.7969px;
        margin-top: 20px;
        font-size: 16px;
        line-height: 20.8px
    }

    body.page-fidelity .f-question__phone {
        height: 78px;
        margin-top: 30px;
        padding-top: 10px
    }

    body.page-fidelity .f-consultation {
        width: 100vw;
        height: auto;
        margin: 50px 0 0 -60px
    }

    body.page-fidelity .f-question + .f-seo {
        margin-top: 50px
    }

    body.page-fidelity--home .f-seo--home {
        height: 1000px;
        min-height: 1000px
    }

    body.page-fidelity footer.site-footer.f-footer {
        height: 1251.94px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings {
        justify-content: space-between;
        align-items: flex-start;
        gap: 0;
        width: auto;
        height: 64.7969px;
        min-height: 64.7969px;
        margin: 20px 15px 0;
        padding: 0;
        display: flex
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a {
        width: 134px;
        height: 64.7969px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings img, body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4) img {
        width: 100px;
        height: 60px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(3), body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4) {
        align-self: flex-start;
        height: 64.7969px
    }
}

@media (min-width: 701px) and (max-width: 767px) {
    body.page-fidelity .f-portfolio {
        padding-top: 0
    }
}

@media (min-width: 769px) and (max-width: 992px) {
    body.page-fidelity .f-heading {
        font-size: 32px;
        line-height: 1.4
    }

    body.page-fidelity .f-portfolio {
        margin-top: 100px
    }

    body.page-fidelity--home .f-portfolio--home {
        height: auto;
        min-height: 0
    }

    body.page-fidelity .f-portfolio__grid {
        grid-template-columns:repeat(2, calc(50% - 20px));
        gap: 30px;
        margin-top: 80px;
        padding-bottom: 0;
        padding-right: 0
    }

    body.page-fidelity .f-project {
        overflow: hidden
    }

    body.page-fidelity .f-project__gallery {
        aspect-ratio: auto;
        height: 326px
    }

    body.page-fidelity .f-portfolio .f-project__controls {
        gap: 0;
        width: auto;
        height: 52px;
        padding-left: 18px;
        padding-right: 18px;
        left: 0;
        right: 0
    }

    body.page-fidelity .f-portfolio .f-project__arrow {
        flex-basis: 34px;
        width: 34px;
        height: 25px;
        transform: translateY(6.5px)
    }

    body.page-fidelity .f-portfolio .f-project__thumbs {
        flex-basis: calc(100% - 104px);
        gap: 7px;
        width: calc(100% - 104px);
        height: 52px;
        margin-left: 18px;
        transform: none
    }

    body.page-fidelity .f-project__meta {
        display: none
    }

    body.page-fidelity .f-portfolio__more {
        margin-top: 35px
    }

    body.page-fidelity--home .f-portfolio--home + .f-running-line {
        margin-top: 100px
    }
}

@media (min-width: 1201px) and (max-width: 1280px) {


    body.page-fidelity.page-fidelity--home .f-approach > .container {
        top: 0
    }

    body.page-fidelity.page-fidelity--home .f-guarantee {
        height: 801.938px
    }

    body.page-fidelity.page-fidelity--home .f-guarantee .f-heading {
        margin-top: 0
    }

    body.page-fidelity .f-prices__grid {
        width: calc(100% - 140px);
        margin-left: 70px;
        margin-right: 70px;
        padding: 0
    }

    body.page-fidelity .f-reviews {
        height: 916.656px;
        padding-top: 0
    }

    body.page-fidelity .f-reviews__rail {
        grid-auto-columns: 50%;
        height: 512.875px
    }

    body.page-fidelity .f-review-card {
        width: 100%;
        height: 471.281px
    }

    body.page-fidelity .f-review-card .video-poster, body.page-fidelity .f-review-card .video-poster img {
        width: calc(100% - 42px)
    }

    body.page-fidelity--home .f-review-card:nth-child(2) .video-poster:after {
        display: none
    }

    body.page-fidelity--home .f-review-card:nth-child(2) .video-poster__play {
        background: #00a1e7;
        border-radius: 12px;
        width: 72px;
        height: 72px
    }

    body.page-fidelity--home .f-review-card:nth-child(2) .video-poster__play:after {
        border-top-width: 12px;
        border-bottom-width: 12px;
        border-left: 19px solid #fff
    }

    body.page-fidelity--home .f-design-prices + .f-reviews, body.page-fidelity .f-question + .f-seo {
        margin-top: 50px
    }

    body.page-fidelity .f-faq__thumbs {
        width: 490px;
        left: 30px;
        overflow: hidden
    }

    body.page-fidelity .f-faq + .f-question {
        height: 628.563px;
        padding-bottom: 0
    }

    body.page-fidelity .f-question__top {
        height: 93.7813px
    }

    body.page-fidelity .f-consultation {
        flex-direction: column;
        height: auto;
        margin-top: 50px;
        padding: 28px 30px 30px;
        display: flex
    }
}

@media (min-width: 1281px) and (max-width: 1600px) {
    body.page-fidelity--home .f-portfolio--home {
        height: 1218.17px
    }

    body.page-fidelity.page-fidelity--home .f-approach > .container {
        top: 0
    }

    body.page-fidelity.page-fidelity--home .f-approach .f-heading, body.page-fidelity.page-fidelity--home .f-guarantee .f-heading {
        margin-top: 0
    }

    body.page-fidelity--home .f-process-link + .f-guarantee {
        height: 760.344px
    }

    body.page-fidelity.page-fidelity--home .f-guarantee__grid {
        grid-template-rows:300.781px 238.781px;
        height: auto;
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block, body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: auto
    }

    body.page-fidelity.page-fidelity--home .f-video-block__wrap {
        aspect-ratio: auto;
        border: 1px solid #1212124d;
        width: 100%;
        height: auto;
        margin: 80px 0 0;
        padding: 20px 70px;
        display: block
    }

    body.page-fidelity .f-reviews__rail {
        grid-auto-columns: 50%
    }

    body.page-fidelity .f-review-card {
        width: 100%;
        height: calc(111.281px + 28.125vw);
        margin-top: -2px
    }

    body.page-fidelity .f-slider-nav {
        top: 338px
    }

    body.page-fidelity .f-review-card .video-poster, body.page-fidelity .f-review-card .video-poster img {
        width: calc(100% - 42px)
    }

    body.page-fidelity .f-question__top {
        height: 93.7813px
    }

    body.page-fidelity .f-consultation {
        flex-direction: column;
        height: auto;
        margin-top: 50px;
        padding: 28px 30px 30px;
        display: flex
    }

    body.page-fidelity--home .f-prices {
        height: 903.906px
    }

    body.page-fidelity--home .f-video-block--supervision + .f-design-prices {
        height: 645.125px
    }

    body.page-fidelity .f-reviews {
        padding-top: 0
    }

    body.page-fidelity .f-question + .f-seo {
        margin-top: 50px
    }

    body.page-fidelity--home .f-findout {
        height: 464.578px
    }

    body.page-fidelity--home .f-faq__layout, body.page-fidelity--home .f-faq__media, body.page-fidelity--home .f-faq__media > img {
        height: 540px
    }

    body.page-fidelity .f-faq + .f-question {
        height: 628.563px;
        padding-bottom: 0
    }
}

@media (min-width: 1281px) and (max-width: 1399px) {
    body.page-fidelity--home .f-running-line + .f-approach {

    }

    body.page-fidelity.page-fidelity--home .f-approach__grid {
        height: 267.172px
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 823.734px
    }

    body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 802.938px
    }

    body.page-fidelity .f-reviews {
        height: 940.844px
    }

    body.page-fidelity .f-reviews__rail {
        height: 537.063px
    }

    body.page-fidelity--home .f-reviews + .f-statement--reputation, body.page-fidelity--home .f-statement--reputation, body.page-fidelity--home .f-statement--reputation .container {
        height: 156px;
        min-height: 156px
    }
}

@media (min-width: 1400px) and (max-width: 1600px) {
    body.page-fidelity--home .f-running-line + .f-approach {

    }

    body.page-fidelity.page-fidelity--home .f-approach__grid {
        height: 243.781px
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 865.359px
    }

    body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 844.563px
    }

    body.page-fidelity .f-reviews {
        height: 961.656px
    }

    body.page-fidelity .f-reviews__rail {
        height: 557.875px
    }

    body.page-fidelity--home .f-reviews + .f-statement--reputation, body.page-fidelity--home .f-statement--reputation, body.page-fidelity--home .f-statement--reputation .container {
        height: 117px;
        min-height: 117px
    }
}

@media (min-width: 1601px) {
    body.page-fidelity .f-heading {
        font-size: 42px;
        line-height: 58.8px
    }

    body.page-fidelity .f-portfolio__grid {
        gap: 60px 40px;
        padding-right: 0
    }

    body.page-fidelity--home .f-portfolio--home {
        height: 1246.58px
    }

    body.page-fidelity--home .f-approach > .container {
        top: 0
    }

    body.page-fidelity--home .f-approach .f-heading, body.page-fidelity--home .f-guarantee .f-heading {
        margin-top: 0
    }

    body.page-fidelity--home .f-running-line + .f-approach {

    }

    body.page-fidelity--home .f-process-link + .f-guarantee {
        height: 818.75px
    }

    body.page-fidelity--home .f-guarantee__grid {
        grid-template-rows:321.578px 259.578px;
        grid-template-columns:37.5% 25% 37.5%;
        height: 581.156px
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 783.766px
    }

    body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 762.969px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__wrap {
        border: 0;
        width: 998px;
        height: 561.375px;
        margin: 101px auto 21px;
        padding: 0
    }

    body.page-fidelity .f-prices {
        height: 912.313px
    }

    body.page-fidelity--home .f-video-block--supervision + .f-design-prices {
        height: 712.328px
    }

    body.page-fidelity .f-reviews {
        height: 942.5px;
        padding-top: 0
    }

    body.page-fidelity .f-reviews__rail {
        height: 530.313px
    }

    body.page-fidelity.page-fidelity--home section.f-findout {
        min-height: 473.578px;
        height: 473.578px !important
    }

    body.page-fidelity .f-question + .f-seo {
        margin-top: 50px
    }

    body.page-fidelity .f-faq__layout, body.page-fidelity .f-faq__media, body.page-fidelity .f-faq__media > img {
        height: 100%
    }

    body.page-fidelity .f-faq + .f-question {
        height: auto;
        padding-bottom: 0
    }

    body.page-fidelity .f-question__top {
        height: 102.188px
    }

    body.page-fidelity footer.site-footer.f-footer {
        height: 663.359px
    }

    body.page-fidelity footer.f-footer .f-footer__main {
        grid-template-rows:229.703px 170.859px;
        height: 401.563px;
        min-height: 401.563px
    }
}

@media (min-width: 401px) and (max-width: 430px),(max-width: 370px) {
    body.page-fidelity {
        --rf-phone-pad: 24px
    }

    body.page-fidelity .f-project__gallery, body.page-fidelity .f-project__main {
        width: 100vw;
        max-width: none;
        margin-left: calc(-1 * var(--rf-phone-pad))
    }

    body.page-fidelity .f-project__main {
        margin-left: 0
    }

    body.page-fidelity--home .f-approach .f-heading, body.page-fidelity--home .f-director__copy, body.page-fidelity--home .f-director__copy p, body.page-fidelity--home .f-director__copy h2, body.page-fidelity--home .f-statement--economy p, body.page-fidelity--home .f-statement--guarantee p, body.page-fidelity--home .f-statement--reputation p, body.page-fidelity--home .f-guarantee .f-heading, body.page-fidelity .f-prices__lead, body.page-fidelity .f-faq .f-heading, body.page-fidelity .f-faq .service-faq__list, body.page-fidelity .f-faq .service-faq__list summary, body.page-fidelity .f-question__top, body.page-fidelity .f-question__top .f-heading {
        width: 100%;
        max-width: none
    }

    body.page-fidelity--home .f-guarantee__grid, body.page-fidelity--home .f-guarantee__grid article, body.page-fidelity .f-prices__grid, body.page-fidelity .f-price-card, body.page-fidelity .f-design-prices__grid, body.page-fidelity .f-design-prices__grid article, body.page-fidelity .f-findout__grid, body.page-fidelity .f-findout__grid article, body.page-fidelity .f-reviews__facts, body.page-fidelity .f-reviews__tabs, body.page-fidelity .f-reviews__rail, body.page-fidelity .f-text-reviews {
        width: 100vw;
        max-width: 100vw
    }

    body.page-fidelity .f-price-card li > span {
        max-width: calc(100vw - 104px)
    }

    body.page-fidelity .f-consultation {
        width: 100vw;
        margin-left: calc(-1 * var(--rf-phone-pad))
    }

    body.page-fidelity .f-reviews__facts > p, body.page-fidelity .f-ratings {
        width: calc(100vw - 2px)
    }

    body.page-fidelity .f-reviews__facts > p > span, body.page-fidelity .f-ratings__content {
        flex-basis: calc(100vw - 104px);
        width: calc(100vw - 104px)
    }

    body.page-fidelity .f-ratings__content > div {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    body.page-fidelity .f-ratings a {
        width: 100%
    }

    body.page-fidelity .f-reviews__rail {
        grid-auto-columns: calc(100vw + 8px)
    }

    body.page-fidelity .f-review-card {
        width: calc(100vw + 8px)
    }

    body.page-fidelity .f-review-card .video-poster, body.page-fidelity .f-review-card .video-poster img {
        aspect-ratio: 16/9;
        width: calc(100vw - 34px);
        height: auto
    }

    body.page-fidelity .f-faq__media, body.page-fidelity .f-faq__media > img {
        width: 100%;
        margin-left: 0
    }

    body.page-fidelity .f-consultation h3 {
        width: calc(100vw - 32px)
    }
}

@media (min-width: 401px) and (max-width: 430px) {
    body.page-fidelity.page-fidelity--home .advantages {
        height: 289.969px
    }

    body.page-fidelity--home .f-portfolio--home {
        height: 1893.69px;
        min-height: 1893.69px
    }

    body.page-fidelity.page-fidelity--home .f-running-line + .f-approach {

    }

    body.page-fidelity--home .f-director {
        height: 605.969px
    }

    body.page-fidelity--home .f-director__bg {
        height: 402px
    }

    body.page-fidelity--home .f-director .container {
        height: 204px;
        top: 402px
    }

    body.page-fidelity--home .f-director .container > img {
        bottom: 203px
    }

    body.page-fidelity--home .f-statement--economy, body.page-fidelity--home .f-statement--economy .container {
        height: 210.516px;
        min-height: 210.516px
    }

    body.page-fidelity.page-fidelity--home .f-process-link + .f-guarantee {
        height: 1459.14px;
        min-height: 1459.14px
    }

    body.page-fidelity.page-fidelity--home .f-guarantee__grid {
        height: auto;
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 333.375px
    }

    body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 291.781px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__wrap {
        width: 304px;
        height: 195px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__poster, body.page-fidelity.page-fidelity--home .f-video-block__poster > img {
        width: 272px;
        height: 153px
    }

    body.page-fidelity--home .f-video-block--supervision + .f-design-prices {
        height: 1425.72px
    }

    body.page-fidelity .f-reviews {
        height: 870.828px
    }

    body.page-fidelity .f-reviews__facts {
        grid-template-rows:123.188px 222.391px;
        height: 347.578px
    }

    body.page-fidelity .f-reviews__rail {
        height: 369.047px
    }

    body.page-fidelity--home .f-reviews + .f-statement--reputation, body.page-fidelity--home .f-statement--reputation, body.page-fidelity--home .f-statement--reputation .container {
        height: 163.734px;
        min-height: 163.734px
    }

    body.page-fidelity--home .f-faq--home {
        height: auto;
    }

    body.page-fidelity--home .f-faq__layout {
        display: flex;
        flex-direction: column;
    }
    body.page-fidelity .f-faq__media {
        order: 1;
    }
    body.page-fidelity--home .f-faq .service-faq__list {

    }

    body.page-fidelity .f-faq + .f-question {
        height: auto;
    }

    body.page-fidelity footer.site-footer.f-footer {
        height: 1323.14px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings {
        height: 156px;
        min-height: 156px
    }
}

@media (max-width: 370px) {
    body.page-fidelity--home .cover--home .calc-form .captcha-placeholder {
        height: 122px
    }

    body.page-fidelity .f-faq + .f-question {
        height: 724.953px
    }
}

@media (min-width: 371px) and (max-width: 430px) {
    body.page-fidelity--home .cover--home .calc-form .captcha-placeholder {
        height: 102px
    }

    body.page-fidelity .f-faq + .f-question {
        height: auto;
    }
}
.page-fidelity .f-faq .service-faq__list details div {
    padding-bottom: 14px;
}
@media (max-width: 370px) {
    body.page-fidelity {
        --rf-phone-pad: 15px
    }

    body.page-fidelity.page-fidelity--home .advantages {
        height: 289.969px
    }

    body.page-fidelity--home .f-portfolio--home {
        height: 2018.47px;
        min-height: 2018.47px
    }

    body.page-fidelity.page-fidelity--home .f-running-line + .f-approach {

    }

    body.page-fidelity--home .f-statement--economy, body.page-fidelity--home .f-statement--economy .container {
        height: 257.297px;
        min-height: 257.297px
    }

    body.page-fidelity.page-fidelity--home .f-process-link + .f-guarantee {
        height: 1459.14px;
        min-height: 1459.14px
    }

    body.page-fidelity.page-fidelity--home .f-guarantee__grid {
        height: auto;
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: 368.797px
    }

    body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: 306.406px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__wrap {
        aspect-ratio: auto;
        width: 100%;
        height: auto
    }

    body.page-fidelity.page-fidelity--home .f-video-block__poster, body.page-fidelity.page-fidelity--home .f-video-block__poster > img {
        aspect-ratio: 16/9;
        width: 100%;
        height: auto
    }

    body.page-fidelity--home .f-video-block--supervision + .f-design-prices {
        height: 1425.72px
    }

    body.page-fidelity .f-reviews {
        height: 851.328px
    }

    body.page-fidelity .f-reviews__facts {
        grid-template-rows:123.188px 198.391px;
        height: 323.578px
    }

    body.page-fidelity .f-reviews__rail {
        height: 373.578px
    }

    body.page-fidelity--home .f-reviews + .f-statement--reputation, body.page-fidelity--home .f-statement--reputation, body.page-fidelity--home .f-statement--reputation .container {
        height: 187.125px;
        min-height: 187.125px
    }

    body.page-fidelity--home .f-faq--home {
        height: auto;
    }

    body.page-fidelity--home .f-faq__layout {
        grid-template-rows:25.2px 423.734px 302px 88px
    }

    body.page-fidelity--home .f-faq .service-faq__list {

    }

    body.page-fidelity .f-faq + .f-question {
        height: auto;
    }

    body.page-fidelity .f-consultation {
        height: auto;
    }

    body.page-fidelity footer.site-footer.f-footer {
        height: 1299.14px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings {
        height: 132px;
        min-height: 132px
    }
}

@media (min-width: 401px) and (max-width: 430px) {
    body.page-fidelity .f-portfolio {
        overflow: hidden
    }

    body.page-fidelity .f-portfolio .f-project__gallery {
        border-radius: 15px;
        width: calc(100% + 50px);
        max-width: none;
        margin-left: -25px;
        overflow: hidden
    }

    body.page-fidelity .f-portfolio .f-project__main, body.page-fidelity .f-portfolio .f-project__main > img, body.page-fidelity .f-portfolio .f-project__controls {
        width: 100%;
        max-width: none;
    }

    body.page-fidelity .f-portfolio .f-project__main {
        margin-left: 0
    }

    body.page-fidelity .f-portfolio .f-project__thumbs {
        grid-template-columns:repeat(5, 87px);
        grid-auto-columns: 87px;
        justify-content: start;
        overflow: hidden
    }

    body.page-fidelity .f-portfolio .f-project__thumbs:after {
        content: "";
        box-sizing: border-box;
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: cover;
        background-image: var(--peek-image, none);
        border: 1px solid #000;
        border-radius: 12px;
        width: 87px;
        height: 60px
    }
}

@media (max-width: 430px) {
    body.page-fidelity .f-portfolio__grid {
        padding-bottom: 40px
    }

    body.page-fidelity .f-portfolio__more {
        margin-top: 35px
    }

    body.page-fidelity .f-portfolio__more .btn {
        height: 54px;
        min-height: 54px
    }
}

@media (max-width: 400px) {
    body.page-fidelity .f-portfolio__more .btn {
        width: calc(100vw - 30px)
    }
}

@media (min-width: 401px) and (max-width: 430px) {
    body.page-fidelity .f-portfolio__more .btn {
        width: calc(100vw - 60px)
    }
}

body.page-fidelity .f-pagination {
    justify-content: center;
    align-items: center;
    gap: 0;
    height: 46px;
    margin-top: 30px;
    display: flex
}

body.page-fidelity .f-pagination__pages {
    box-sizing: border-box;
    flex: 0 0 240px;
    width: 240px;
    height: 46px;
    margin: 0 10px;
    padding: 4px 0;
    display: flex
}

body.page-fidelity .f-pagination .f-pagination__page {
    color: #000;
    background: #fff;
    border-radius: 50%;
    flex: 0 0 38px;
    justify-content: center;
    align-items: center;
    width: 38px;
    height: 38px;
    margin: 0 5px;
    font-family: Days One, sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 31.2px;
    text-decoration: none;
    display: flex
}

body.page-fidelity .f-pagination .f-pagination__page.is-active {
    background: var(--f-blue);
    color: #fff
}

body.page-fidelity .f-pagination .f-pagination__arrow {
    border: 1px solid var(--f-ink);
    width: 55px;
    height: 35px;
    color: var(--f-ink);
    background: 0 0;
    border-radius: 14px;
    flex: 0 0 49.5px;
    justify-content: center;
    align-items: center;
    padding: 0;
    display: flex
}

body.page-fidelity .f-pagination .f-pagination__arrow--next {
    background: var(--f-blue);
    color: #fff;
    border: 0
}

body.page-fidelity .f-pagination .f-pagination__arrow svg {
    fill: #0000;
    stroke: currentColor;
    stroke-width: 2px;
    width: 32.7273%;
    height: 40%
}

body.page-fidelity .f-pagination .f-pagination__arrow--next svg {
    transform: rotate(180deg)
}

@media (max-width: 1439px) {
    body.page-fidelity .f-pagination .f-pagination__arrow {
        width: 49.5px;
        height: 31.5px
    }
}

@media (max-width: 400px) {
    body.page-fidelity .f-pagination {
        width: calc(100% - 30px);
        height: 40px;
        margin: 30px 15px 0
    }

    body.page-fidelity .f-pagination__pages {
        flex-basis: 210px;
        width: 210px;
        height: 40px
    }

    body.page-fidelity .f-pagination .f-pagination__page {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
        font-size: 18px;
        line-height: 23.4px
    }
}
body.page-fidelity--home .f-running-line + .f-approach {
    margin-bottom: 170px;
}
@media (max-width: 991px) {
    body.page-fidelity--home .f-running-line + .f-approach {
        margin-bottom: 120px;
    }
}
@media (min-width: 769px) and (max-width: 992px) {
    body.page-fidelity--home .cover--home {
        height: 1424.34px
    }

    body.page-fidelity--home .cover--home .heading-main {
        font-size: 32px
    }

    body.page-fidelity .f-running-line, body.page-fidelity .f-running-line--blue {
        height: 96px
    }

    body.page-fidelity .f-running-line > div {
        gap: 20px
    }

    body.page-fidelity .f-running-line strong {
        font-size: 32px;
        line-height: 1.3
    }

    body.page-fidelity .f-running-line span {
        font-size: 64px;
        line-height: 1
    }

    body.page-fidelity--home .f-portfolio--home + .f-running-line, body.page-fidelity--home .f-running-line + .f-approach, body.page-fidelity--home .f-approach + .f-director, body.page-fidelity--home .f-director + .f-statement--economy, body.page-fidelity--home .f-statement--economy + .f-process-link, body.page-fidelity--home .f-process-link + .f-guarantee, body.page-fidelity--home .f-guarantee + .f-statement--guarantee, body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block, body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision, body.page-fidelity--home .f-video-block--supervision + .f-design-prices, body.page-fidelity--home .f-reviews + .f-statement--reputation, body.page-fidelity--home .f-statement--reputation + .f-running-line, body.page-fidelity .f-faq + .f-question {
        margin-top: 100px
    }

    body.page-fidelity--home .f-running-line + .f-approach {
        height: clamp(533.156px, 1081.32px - 55.3139vw, 655.953px)
    }

    body.page-fidelity--home .f-approach > .container {
        height: 100%;
        padding-top: 0;
        top: 0
    }

    body.page-fidelity--home .f-approach .f-heading {
        width: 100%;
        height: auto;
        margin: 50px 0 0
    }

    body.page-fidelity--home .f-approach__grid {
        grid-template-rows:repeat(4, auto);
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap: 0 30px;
        height: auto;
        margin-top: 60px
    }

    body.page-fidelity--home .f-approach__grid article {
        width: auto;
        height: auto;
        display: contents
    }

    body.page-fidelity--home .f-approach__grid article > span {
        display: none
    }

    body.page-fidelity--home .f-approach__grid h3 {
        border-top: 1px solid #0000004d;
        border-bottom: 1px solid #0000004d;
        height: auto;
        min-height: 0;
        padding: 20px 0 25px;
        font-size: 20px;
        line-height: 1.3
    }

    body.page-fidelity--home .f-approach__grid p {
        border-bottom: 1px solid #0000004d;
        height: auto;
        min-height: 0;
        padding: 20px 0 25px;
        font-size: 18px;
        line-height: 1.3
    }

    body.page-fidelity--home .f-approach__grid article:first-child h3 {
        grid-area: 1/1
    }

    body.page-fidelity--home .f-approach__grid article:first-child p {
        grid-area: 2/1
    }

    body.page-fidelity--home .f-approach__grid article:nth-child(2) h3 {
        grid-area: 1/2
    }

    body.page-fidelity--home .f-approach__grid article:nth-child(2) p {
        grid-area: 2/2
    }

    body.page-fidelity--home .f-approach__grid article:nth-child(3) h3 {
        grid-area: 3/1
    }

    body.page-fidelity--home .f-approach__grid article:nth-child(3) p {
        grid-area: 4/1
    }

    body.page-fidelity--home .f-director + .f-statement--economy, body.page-fidelity--home .f-director + .f-statement--economy .container {
        height: clamp(273px, 621.189px - 35.1351vw, 351px);
        min-height: clamp(273px, 621.189px - 35.1351vw, 351px)
    }

    body.page-fidelity--home .f-statement--economy + .f-process-link {
        height: 96px;
        min-height: 96px;
        padding: 0;
        font-size: 28px;
        line-height: 1.4
    }

    body.page-fidelity--home .f-process-link .container {
        height: 94px;
        min-height: 94px
    }

    body.page-fidelity--home .f-process-link__snowflake, body.page-fidelity--home .f-process-link__arrow {
        flex-basis: 56px;
        width: 56px;
        height: 56px
    }

    body.page-fidelity--home .f-process-link .container > span:not(.f-process-link__arrow) {
        min-height: 0
    }

    body.page-fidelity--home .f-process-link + .f-guarantee {
        height: clamp(949.547px, 1320.89px - 37.4718vw, 1032.73px);
        display: block;
        overflow: visible
    }

    body.page-fidelity--home .f-guarantee .f-heading {
        width: calc(100% - 120px);
        height: auto;
        margin: 50px 0 0
    }

    body.page-fidelity--home .f-guarantee__grid {
        flex: none;
        grid-template-rows:repeat(3, minmax(0, auto));
        grid-template-columns:repeat(2, minmax(0, 1fr));
        align-content: start;
        width: 100%;
        height: auto;
        min-height: 0;
        margin-top: 120px;
        padding: 0
    }

    body.page-fidelity--home .f-guarantee__grid article, body.page-fidelity--home .f-guarantee__grid article:nth-child(3n), body.page-fidelity--home .f-guarantee__grid article:nth-child(3n+1), body.page-fidelity--home .f-guarantee__grid article:nth-child(3n+2) {
        border: 1px solid #1212124d;
        justify-content: flex-start;
        width: auto;
        height: auto;
        min-height: 0;
        padding: 60px 20px 48px
    }

    body.page-fidelity--home .f-guarantee + .f-statement--guarantee, body.page-fidelity--home .f-guarantee + .f-statement--guarantee .container {
        height: clamp(117px, 291.095px - 17.5676vw, 156px);
        min-height: clamp(117px, 291.095px - 17.5676vw, 156px)
    }

    body.page-fidelity.page-fidelity--home .f-statement--guarantee + .f-video-block {
        height: clamp(495.625px, 135.102px + 46.882vw, 600.266px)
    }

    body.page-fidelity.page-fidelity--home .f-running-line--blue + .f-video-block--supervision {
        height: clamp(454.031px, 21.4688px + 56.25vw, 579.469px)
    }

    body.page-fidelity.page-fidelity--home .f-video-block .container > p {
        height: auto;
        font-size: 16px;
        line-height: 20.8px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__wrap {
        aspect-ratio: auto;
        border: 1px solid #1212124d;
        width: 100%;
        height: auto;
        margin: 50px 0 0;
        padding: 20px 60px
    }

    body.page-fidelity.page-fidelity--home .f-video-block__wrap .f-video-block__poster {
        aspect-ratio: 16/9;
        width: 100%;
        height: auto;
        display: block
    }

    body.page-fidelity .f-prices {
        height: 1931.78px;
        padding-top: 100px
    }

    body.page-fidelity .f-running-line--blue {
        margin-top: 0
    }

    body.page-fidelity .f-reviews {
        height: calc(573.422px + 56.25vw)
    }

    body.page-fidelity .f-reviews__facts {
        grid-template-rows:217.188px;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        width: 100%;
        height: 219.188px;
        margin: 50px 0 0;
        padding: 0
    }

    body.page-fidelity .f-reviews__facts > p, body.page-fidelity .f-ratings {
        justify-self: start;
        align-items: center;
        width: 100%;
        height: 217.188px;
        min-height: 0;
        padding: 23px 13px
    }

    body.page-fidelity .f-reviews__facts > p {
        border-bottom: 0;
        border-right: 1px solid #1212124d;
        padding-left: 70px
    }

    body.page-fidelity .f-ratings {
        border-left: 1px solid #1212124d;
        padding-right: 70px
    }

    body.page-fidelity .f-reviews__facts > p > span, body.page-fidelity .f-ratings__content {
        flex: auto;
        width: auto;
        min-width: 0
    }

    body.page-fidelity .f-ratings__content > div {
        flex-wrap: wrap;
        height: auto
    }

    body.page-fidelity .f-ratings a {
        flex: 0 0 50%;
        width: 50%
    }

    body.page-fidelity .f-reviews__tabs {
        height: 44px;
        margin-top: 55px
    }

    body.page-fidelity .f-reviews__rail {
        grid-auto-columns: 100%;
        width: 100%;
        height: calc(135.438px + 56.25vw);
        margin-top: 25px;
        padding: 0 40px
    }

    body.page-fidelity .f-review-snow {
        flex-basis: 83px;
        width: 83px;
        height: 83px;
        margin-right: 13px
    }

    body.page-fidelity .f-review-card {
        width: 100%;
        height: auto;
        margin-top: -1px;
        padding: 50px 20px
    }

    body.page-fidelity .f-review-card .video-poster, body.page-fidelity .f-review-card .video-poster img {
        aspect-ratio: 16/9;
        width: 100%;
        height: auto
    }

    body.page-fidelity--home .f-design-prices + .f-reviews {
        margin-top: 50px
    }

    body.page-fidelity--home .f-video-block--supervision + .f-design-prices {
        height: 1434.31px
    }

    body.page-fidelity--home .f-reviews + .f-statement--reputation, body.page-fidelity--home .f-statement--reputation, body.page-fidelity--home .f-statement--reputation .container {
        height: clamp(195px, 543.189px - 35.1351vw, 273px);
        min-height: clamp(195px, 543.189px - 35.1351vw, 273px)
    }

    body.page-fidelity--home .f-statement--reputation + .f-running-line {
        height: 96px
    }

    body.page-fidelity--home .f-findout {
        height: clamp(701.563px, 1045.22px - 34.6776vw, 778.547px);
        padding-top: 60px
    }

    body.page-fidelity--home .f-findout__grid {
        grid-template-rows:repeat(2, minmax(0, 1fr));
        grid-template-columns:repeat(2, minmax(0, 1fr));
        width: 100%;
        height: calc(100% - 154.8px);
        margin-top: 50px;
        padding: 0
    }

    body.page-fidelity--home .f-findout__grid article, body.page-fidelity--home .f-findout__grid article:first-child, body.page-fidelity--home .f-findout__grid article:last-child {
        width: auto;
        min-height: 0;
        padding: 44px 60px 27px
    }

    body.page-fidelity .f-faq {
        margin-top: 100px
    }

    body.page-fidelity--home .f-faq {
        height: 995.578px
    }

    body.page-fidelity .f-faq__media, body.page-fidelity .f-faq__media > img {
        height: 380px
    }

    body.page-fidelity .f-faq .f-heading {
        height: 44.8px
    }

    body.page-fidelity .f-faq__thumbs {
        justify-content: center;
        width: calc(100% - 60px);
        left: 30px;
        right: 30px
    }

    body.page-fidelity .f-doc-button {
        justify-content: center;
        align-items: center;
        width: 220px;
        height: 54px;
        margin: 30px 0 0 auto;
        padding: 6px 10px;
        line-height: 16px;
        display: flex
    }

    body.page-fidelity .f-faq + .f-question {
        height: clamp(622.969px, 831.799px - 21.0726vw, 669.75px);
        padding: 0 0 50px
    }

    body.page-fidelity .f-question__top {
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
        width: 100%;
        height: clamp(88.1875px, 297.016px - 21.0726vw, 134.969px);
        position: relative
    }

    body.page-fidelity .f-question__top .f-heading {
        white-space: normal;
        width: auto;
        height: auto
    }

    body.page-fidelity .f-question__top > div:first-child {
        min-width: auto;
        margin-right: 40px
    }

    body.page-fidelity .f-question__top p {
        height: auto;
        margin-top: 20px;
        font-size: 18px;
        line-height: 1.3
    }

    body.page-fidelity .f-question__phone {
        flex: 0 auto;
        width: 310.125px;
        height: auto;
        margin-top: 0;
        padding: 15px 70px 0 0;
        font-family: Manrope, Arial, sans-serif
    }

    body.page-fidelity .f-consultation {
        flex-direction: column;
        width: 100%;
        height: auto;
        margin: 50px 0;
        padding: 28px 30px 30px;
        display: flex
    }

    body.page-fidelity--home .f-seo--home {
        height: 1044px;
        min-height: 1044px
    }

    body.page-fidelity .f-question + .f-seo {
        margin-top: 50px;
        margin-bottom: -100px
    }

    body.page-fidelity.page-fidelity--home .f-approach > .container {
        padding-top: 0;
        top: 0
    }

    body.page-fidelity.page-fidelity--home .f-approach .f-heading {
        margin: 50px 0 0
    }

    body.page-fidelity.page-fidelity--home .f-approach__grid {
        grid-template-rows:repeat(4, auto);
        grid-template-columns:repeat(2, minmax(0, 1fr));
        column-gap: 30px;
        height: auto
    }

    body.page-fidelity.page-fidelity--home .f-approach__grid article {
        height: auto;
        display: contents
    }

    body.page-fidelity.page-fidelity--home .f-guarantee {
        display: block;
        overflow: visible
    }

    body.page-fidelity.page-fidelity--home .f-guarantee .f-heading {
        margin: 50px 0 0
    }

    body.page-fidelity.page-fidelity--home .f-guarantee__grid {
        grid-template-rows:repeat(3, auto);
        align-content: start;
        height: auto
    }

    body.page-fidelity.page-fidelity--home .f-findout {
        flex-direction: column;
        display: flex
    }

    body.page-fidelity.page-fidelity--home .f-findout > .container {
        height: auto
    }

    body.page-fidelity.page-fidelity--home .f-findout .f-heading {
        text-transform: uppercase;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        height: auto;
        margin: 0;
        font-size: 32px;
        line-height: 44.8px;
        display: flex
    }

    body.page-fidelity.page-fidelity--home .f-findout .f-heading > svg {
        fill: #121212;
        flex: 0 74px;
        width: 74px;
        height: 74px;
        margin-left: 10px;
        display: block
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid {
        border-top: 1px solid #1212124d;
        flex: auto;
        grid-template-rows:auto auto;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap: 0;
        width: 100%;
        max-width: none;
        height: auto;
        margin: 50px 0 0;
        padding: 0
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid article, body.page-fidelity.page-fidelity--home .f-findout__grid article:first-child, body.page-fidelity.page-fidelity--home .f-findout__grid article:last-child {
        border: 1px solid #1212124d;
        border-top: 0;
        border-radius: 0;
        flex-direction: column;
        width: auto;
        height: auto;
        min-height: 0;
        margin: 0;
        padding: 44px 60px;
        display: flex
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid h3 {
        margin: 0 0 10px;
        font-size: 18px;
        line-height: 23.4px
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid p {
        min-height: 0;
        margin: 0
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid article:first-child > p {
        margin-bottom: 20px
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid .btn {
        align-self: flex-start;
        width: auto;
        min-width: 222px;
        height: 42px;
        min-height: 42px;
        margin: auto 0 0;
        padding: 5.25px 24px;
        font-size: 14px;
        line-height: 14px
    }

    body.page-fidelity.page-fidelity--home .f-findout__phone > svg {
        margin-right: 10px
    }

    body.page-fidelity .f-reviews__rail {
        grid-auto-columns: calc(100% + 40px);
        padding: 0 60px
    }

    body.page-fidelity .f-review-card {
        width: 100%;
        margin: -1px 0 0 -20px
    }

    body.page-fidelity .f-slider-nav {
        width: 125px;
        padding: 0;
        right: 60px
    }

    body.page-fidelity .f-faq .service-faq__list details {
        border: 0;
        border-bottom: 1px solid #1212122e;
        height: auto;
        overflow: hidden
    }

    body.page-fidelity .f-faq .service-faq__list details:first-child {
        border-top: 1px solid #1212122e
    }

    body.page-fidelity .f-faq .service-faq__list summary {
        width: 100%;
        height: auto;
        min-height: 0;
        padding: 22px 54px 22px 0;
        font-size: 18px;
        line-height: 24.3px
    }

    body.page-fidelity .f-faq .service-faq__list summary:after {
        background: linear-gradient(var(--f-blue), var(--f-blue)) center / 22px 3px no-repeat, linear-gradient(var(--f-blue), var(--f-blue)) center / 3px 22px no-repeat;
        width: 22px;
        height: 22px;
        right: 8px
    }

    body.page-fidelity .f-faq .service-faq__list details[open] summary:after {
        background: linear-gradient(var(--f-blue), var(--f-blue)) center / 22px 3px no-repeat
    }

    body.page-fidelity .f-faq__thumbs {
        justify-content: flex-start;
        gap: 7px;
        bottom: 30px
    }

    body.page-fidelity .f-faq__thumbs button {
        width: 89px;
        height: 52px
    }

    body.page-fidelity .f-faq__thumbs img {
        width: 87px;
        height: 50px
    }

    body.page-fidelity .f-question {
        padding: 0
    }

    body.page-fidelity .f-question__top .f-heading {
        text-transform: uppercase;
        font-size: 32px;
        line-height: 44.8px
    }

    body.page-fidelity .f-question__phone {
        flex-direction: column;
        gap: 0;
        padding: 15px 70px 0 0;
        display: flex
    }

    body.page-fidelity .f-question__phone > span {
        margin-bottom: 10px;
        font-size: 18px;
        line-height: 23.4px
    }

    body.page-fidelity .f-question__phone a {
        white-space: normal;
        gap: 0;
        margin-top: 5px;
        font-family: Manrope, Arial, sans-serif;
        font-size: 22px;
        line-height: 28.6px
    }

    body.page-fidelity .f-question__phone a svg {
        flex: 0 24px;
        width: 24px;
        height: 24px;
        margin-right: 15px
    }

    body.page-fidelity .f-consultation {
        margin: 50px 0 0
    }

    body.page-fidelity .f-consultation h3 {
        line-height: 23.4px
    }
}

@media (min-width: 769px) and (max-width: 799px) {
    body.page-fidelity.page-fidelity--home .f-guarantee__grid article:nth-child(3), body.page-fidelity.page-fidelity--home .f-guarantee__grid article:nth-child(4) {
        min-height: 259.578px
    }
}

@media (min-width: 992px) and (max-width: 992px) {
    body.page-fidelity footer.site-footer.f-footer {
        height: 871.156px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-nav {
        display: none !important
    }

    body.page-fidelity footer.f-footer .f-footer__help {
        height: 311.984px
    }
}

@media (max-width: 700px) {
    body.page-fidelity .f-reviews, body.page-fidelity .f-faq {
        background: 0 0
    }

    body.page-fidelity .f-faq__media {
        border-radius: 0;
        height: auto;
        overflow: visible
    }

    body.page-fidelity .f-doc-button {
        margin-left: auto;
        margin-right: auto
    }

    body.page-fidelity .f-review-card {
        height: auto
    }

    body.page-fidelity .f-review-card h3 {
        margin-top: 10px
    }
}

@media (max-width: 400px) {
    body.page-fidelity .f-faq__media {
        width: calc(100vw - 30px);
        min-width: 0;
        margin-left: 0
    }

    body.page-fidelity .f-faq__media > img {
        border-radius: 15px;
        width: 100vw;
        max-width: none;
        height: 272px;
        margin-left: -15px
    }

    body.page-fidelity .f-faq__thumbs {
        width: calc(100% - 10px);
        left: 5px;
        right: auto
    }
}

@media (min-width: 401px) and (max-width: 430px) {
    body.page-fidelity .f-faq__media {
        width: calc(100vw - 48px);
        min-width: 0;
        margin-left: 0
    }

    body.page-fidelity .f-faq__media > img {
        border-radius: 15px;
        width: 490px;
        max-width: none;
        height: 272px;
        margin-left: -54px
    }

    body.page-fidelity .f-faq__thumbs {
        justify-content: flex-start;
        width: 450px;
        left: -13px;
        right: auto
    }

    body.page-fidelity .f-price-card, body.page-fidelity .f-price-card:first-child {
        width: 100vw;
        padding: 34px 55px 20px
    }

    body.page-fidelity .f-reviews__rail {
        grid-auto-columns: 360px;
        padding-left: 35px;
        padding-right: 0
    }

    body.page-fidelity .f-review-card {
        width: 360px;
        margin-left: 0
    }

    body.page-fidelity .f-review-card .video-poster, body.page-fidelity .f-review-card .video-poster img {
        width: 318px;
        height: 178.875px
    }

    body.page-fidelity--service .f-calc__nav:has([data-calculator-prev]:not([hidden])) {
        width: 380px;
        left: 55px;
        right: 55px
    }
}

@media (min-width: 769px) {
    body.page-fidelity .f-portfolio, body.page-fidelity .f-calculator, body.page-fidelity .f-work, body.page-fidelity .f-guarantee, body.page-fidelity .f-statement--economy, body.page-fidelity .f-statement--reputation, body.page-fidelity .f-reviews, body.page-fidelity .f-faq, body.page-fidelity .f-question {
        background: 0 0
    }
}

body.page-fidelity .f-back-top {
    box-sizing: border-box;
    border: 2px solid #0d4e96;
    width: 60px;
    height: 60px;
    bottom: 40px;
    right: 40px
}

body.page-fidelity .f-back-top svg {
    fill: none;
    stroke: #fff;
    stroke-width: 2px;
    width: 30%;
    height: 23.3333%;
    transform: rotate(90deg)
}

@media (max-width: 1440px) {
    body.page-fidelity .f-back-top {
        width: 54px;
        height: 54px
    }
}

@media (max-width: 768px) {
    body.page-fidelity .f-back-top {
        width: 48px;
        height: 48px;
        bottom: 20px;
        right: 20px
    }
}

@media (min-width: 1201px) and (max-width: 1600px) {
    body.page-fidelity .f-review-card .video-poster, body.page-fidelity .f-review-card .video-poster img {
        width: 100%
    }

    body.page-fidelity .f-review-card .video-poster img {
        object-fit: fill
    }

    body.page-fidelity .f-review-card .video-poster__play {
        width: 65.5938px;
        height: 65.5938px
    }

    body.page-fidelity .f-review-card .video-poster:after {
        display: block
    }

    body.page-fidelity .f-review-card .video-poster__play {
        background: #fff;
        border-radius: 50%
    }

    body.page-fidelity .f-review-card .video-poster__play:after {
        border-top-width: 6px;
        border-bottom-width: 6px;
        border-left: 11px solid #0d4e96
    }

    body.page-fidelity .f-reviews__tabs button:nth-child(2) {
        width: 114px
    }

    body.page-fidelity .f-faq .service-faq__list details {
        border: 0;
        border-bottom: 1px solid #1212122e
    }

    body.page-fidelity .f-faq .service-faq__list details:first-child {
        border-top: 1px solid #1212122e
    }

    body.page-fidelity .f-faq .service-faq__list summary {
        padding: 22px 54px 22px 0;
        font-size: 18px;
        font-weight: 700;
        line-height: 24.3px;
        position: relative
    }

    body.page-fidelity .f-faq .service-faq__list summary:before, body.page-fidelity .f-faq .service-faq__list summary:after {
        content: "";
        background: #0d4e96;
        width: 22px;
        height: 3px;
        display: block;
        position: absolute;
        top: 31px;
        right: 8px;
        transform: none
    }

    body.page-fidelity .f-faq .service-faq__list summary:after {
        transform: rotate(90deg)
    }

    body.page-fidelity .f-faq .service-faq__list details[open] summary:after {
        transform: rotate(0)
    }

    body.page-fidelity--home .f-faq__media {
        height: 100%
    }

    body.page-fidelity--home .f-faq__media > img {
        width: 100%;
        height: 456px
    }

    body.page-fidelity .f-faq__thumbs {
        gap: 7px;
        width: calc(100% - 60px);
        height: 52px;
        top: 374px;
        bottom: auto;
        left: 30px;
        right: 30px;
        overflow: hidden
    }

    body.page-fidelity .f-faq__thumbs button {
        flex: 0 0 89px;
        width: 89px;
        height: 52px
    }

    body.page-fidelity .f-faq__thumbs img {
        width: 87px;
        height: 50px
    }

    body.page-fidelity .f-doc-button {
        justify-content: center;
        align-items: center;
        width: 220px;
        height: 54px;
        padding: 6px 10px;
        line-height: 16px;
        display: flex;
        top: 486px;
        left: auto;
        right: 70px
    }
}

@media (min-width: 1201px) and (max-width: 1280px) {
    body.page-fidelity--home .f-portfolio--home {
        height: 1218.17px
    }

    body.page-fidelity .f-prices {
        height: 903.906px
    }
}

@media (min-width: 701px) and (max-width: 768px) {
    body.page-fidelity--home .cover__unit {
        white-space: nowrap
    }

    body.page-fidelity .f-portfolio .f-project__thumbs {
        gap: 7px
    }
}

@media (max-width: 700px) {
    body.page-fidelity .f-faq__thumbs {
        justify-content: center;
        gap: 7px;
        width: calc(100% - 40px);
        left: 20px;
        right: 20px
    }

    body.page-fidelity .f-faq__thumbs button {
        flex: 0 0 66px;
        width: 66px;
        height: 52px
    }

    body.page-fidelity .f-faq__thumbs img {
        width: 64px;
        height: 50px
    }
}

@media (max-width: 430px) {
    body.page-fidelity footer.f-footer .f-footer__mobile-ratings {
        border-top: 0;
        flex-flow: wrap;
        place-content: stretch space-between;
        align-items: center;
        gap: 16px;
        width: auto;
        height: auto;
        min-height: 0;
        margin: 20px 15px 0;
        padding: 0;
        display: flex
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a {
        flex: 0 0 calc(50% - 8px);
        width: calc(50% - 8px);
        max-width: calc(50% - 8px);
        height: 60px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings img, body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4), body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4) img {
        width: 100%;
        height: 60px
    }
}

@media (max-width: 390px) {
    body.page-fidelity footer.f-footer .f-footer__mobile-ratings {
        margin-left: 40px;
        margin-right: 40px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a, body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4) {
        height: 48px
    }

    body.page-fidelity footer.f-footer .f-footer__mobile-ratings img, body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4) img {
        width: 80px;
        height: 48px
    }
}

@media (min-width: 389px) and (max-width: 390px) {
    body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4), body.page-fidelity footer.f-footer .f-footer__mobile-ratings > a:nth-child(4) img {
        height: 60px
    }
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(5) {
    width: 518px;
    height: 615px;
    top: 1712px;
    left: -530px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(6) {
    width: 518px;
    height: 615px;
    top: 2164px;
    left: auto;
    right: -507px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(7) {
    opacity: .5;
    width: 673px;
    height: 673px;
    top: 3973px;
    left: -406px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(8) {
    opacity: .15;
    width: 552px;
    height: 552px;
    top: 4360px;
    left: -605px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(9) {
    opacity: .5;
    width: 673px;
    height: 673px;
    top: 4572px;
    left: auto;
    right: -282px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(10) {
    opacity: .15;
    width: 552px;
    height: 552px;
    top: 4482px;
    left: auto;
    right: 38px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(11) {
    top: 6800px;
    left: auto;
    right: -766px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(12) {
    top: 7700px;
    left: -813px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(13) {
    top: 9830px;
    left: -746px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(14) {
    top: 10080px;
    left: auto;
    right: -726px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(15) {
    top: 11090px;
    left: -640px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(16) {
    top: 11840px;
    left: -735px
}

body.page-fidelity.page-fidelity--home .circle-backgrounds__container > div:nth-child(17) {
    top: 11860px;
    left: auto;
    right: -690px
}

@media (max-width: 768px) {
    body.page-fidelity.page-fidelity .circle-backgrounds__container > div {
        opacity: 1
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:first-child {
        opacity: .7;
        top: 40px;
        left: -273px;
        right: auto
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(2) {
        opacity: .25;
        top: 133px;
        left: -472px;
        right: auto
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(3), body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(4), body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(7), body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(8), body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(9), body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(10) {
        display: none
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(5) {
        width: 558px;
        height: 615px;
        top: 1892px;
        left: -440px;
        right: auto
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(6) {
        width: 558px;
        height: 615px;
        top: 2354px;
        left: auto;
        right: -479px
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(11) {
        top: 4777px;
        left: auto;
        right: -568px
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(12) {
        top: 5840px;
        left: -473px;
        right: auto
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(13) {
        top: 10704px;
        left: -481px;
        right: auto
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(14) {
        top: 10973px;
        left: auto;
        right: -688px
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(15) {
        top: 12239px;
        left: -491px;
        right: auto
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(16) {
        top: 12987px;
        left: -631px;
        right: auto
    }

    body.page-fidelity.page-fidelity .circle-backgrounds__container > div:nth-child(17) {
        top: 13127px;
        left: auto;
        right: -465px
    }
}

@media (min-width: 701px) and (max-width: 768px) {
    body.page-fidelity .f-prices__grid {
        margin-top: 34.3906px
    }

    body.page-fidelity .f-reviews__facts {
        grid-template-rows:115px 166.391px
    }

    body.page-fidelity .f-reviews__facts > p > span {
        flex: auto;
        width: auto;
        min-width: 0
    }

    body.page-fidelity .f-ratings__content {
        flex: 0 0 400px;
        width: 400px;
        min-width: 0
    }

    body.page-fidelity .f-ratings__content > div {
        justify-content: flex-start;
        width: 400px
    }

    body.page-fidelity .f-ratings a {
        flex: 0 0 100px;
        width: 100px
    }

    body.page-fidelity .f-slider-nav {
        width: 125px;
        height: 35px;
        padding: 0;
        top: 483.188px;
        right: 60px
    }

    body.page-fidelity .f-reviews__rail {
        column-gap: 60px;
        padding-top: 54px
    }

    body.page-fidelity .f-review-card {
        padding-left: 0;
        padding-right: 0
    }

    body.page-fidelity.page-fidelity--home .f-reviews, body.page-fidelity.page-fidelity--home .f-faq {
        background: 0 0
    }

    body.page-fidelity .f-faq__thumbs {
        justify-content: center;
        gap: 7px;
        width: calc(100% - 40px);
        left: 20px;
        right: 20px
    }

    body.page-fidelity .f-faq__thumbs button {
        flex: 0 0 89px;
        width: 89px;
        height: 52px
    }

    body.page-fidelity .f-faq__thumbs img {
        width: 87px;
        height: 50px
    }

    body.page-fidelity .f-doc-button {
        margin-left: auto;
        margin-right: 0
    }

    body.page-fidelity .f-faq .service-faq__list summary {
        padding: 22px 54px 22px 0;
        font-size: 18px;
        font-weight: 700;
        line-height: 24.3px
    }
}

@media (min-width: 769px) and (max-width: 992px) {
    body.page-fidelity--home .cover--home {
        height: 1424.34px
    }

    body.page-fidelity .f-prices .f-heading {
        margin: 50px 0 0
    }

    body.page-fidelity .f-prices__lead {
        height: 46.7813px;
        font-size: 18px;
        line-height: 23.4px
    }

    body.page-fidelity .f-prices__grid {
        margin-top: 50px
    }

    body.page-fidelity .f-ratings__content > div {
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        height: 129.594px;
        margin-top: 20.7969px;
        display: flex
    }

    body.page-fidelity .f-ratings a {
        flex: 0 0 100px;
        width: 100px;
        height: 64.7969px
    }

    body.page-fidelity .f-ratings__content a:before {
        box-sizing: border-box;
        border-radius: 50px;
        width: auto;
        min-width: 0;
        height: 24.2969px;
        padding: 5px;
        font-size: 11px;
        line-height: 14.3px;
        top: 0;
        left: 100px
    }

    body.page-fidelity .f-reviews__facts {
        border-color: #0000004d
    }

    body.page-fidelity .f-faq__list details {
        border-top: 0;
        border-bottom: 1px solid #1212122e
    }

    body.page-fidelity .f-faq__list details:first-child {
        border-top: 1px solid #1212122e
    }

    body.page-fidelity .f-faq__list summary {
        padding: 22px 54px 22px 0;
        font-size: 18px;
        font-weight: 700;
        line-height: 24.3px
    }

    body.page-fidelity .f-faq__list summary:before, body.page-fidelity .f-faq__list summary:after {
        content: "";
        background: #0d4e96;
        width: 22px;
        height: 3px;
        position: absolute;
        top: 31px;
        right: 8px;
        transform: none
    }

    body.page-fidelity .f-faq__list summary:after {
        transform: rotate(90deg)
    }

    body.page-fidelity .f-faq__list details[open] summary:after {
        transform: rotate(0)
    }

    body.page-fidelity .f-faq + .f-question {
        height: auto;
        min-height: 0;
        padding: 0
    }

    body.page-fidelity .f-question__top {
        height: auto
    }

    body.page-fidelity .f-question__phone {
        border-top: 1px solid #1212124d
    }

    body.page-fidelity .f-question__phone > span {
        line-height: 1.3
    }

    body.page-fidelity .f-consultation {
        border-color: #0000004d;
        height: auto;
    }

    body.page-fidelity .f-consultation h3 {
        color: #3d3d3d;
        width: 100%;
        max-width: 390px
    }

    body.page-fidelity .f-consultation .captcha-placeholder {
        height: 118px;
        min-height: 118px
    }

    body.page-fidelity .f-consultation .form-status:empty {
        display: none !important
    }

    body.page-fidelity .f-consultation .btn[type=submit] {
        color: #e1e1e1;
        font-weight: 600
    }

    body.page-fidelity.page-fidelity--home .f-findout {
        height: auto !important;
        min-height: 0 !important;
        display: block !important
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid {
        border-top: 0;
        flex: none;
        grid-template-rows:auto auto;
        height: auto;
        min-height: 0
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid article, body.page-fidelity.page-fidelity--home .f-findout__grid article:first-child, body.page-fidelity.page-fidelity--home .f-findout__grid article:last-child {
        border-top: 1px solid #1212124d;
        height: 100%
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid h3 {
        line-height: 1.3
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid article:first-child > p {
        margin-bottom: 20px
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid article:nth-child(2) > p {
        margin-bottom: 60px
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid article:nth-child(3) > p {
        margin-bottom: 40px
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid article > .f-findout__contact {
        justify-content: flex-start;
        align-items: center;
        gap: 16px;
        width: 100%;
        height: auto;
        margin-bottom: 8px
    }

    body.page-fidelity.page-fidelity--home .f-findout__phone {
        width: auto;
        height: auto;
        display: block
    }

    body.page-fidelity.page-fidelity--home .f-findout__phone > svg {
        width: 18px;
        height: 18px;
        margin-right: 10px;
        display: inline
    }

    body.page-fidelity.page-fidelity--home .f-findout__phone > span {
        border-bottom: 0;
        line-height: 20.8px;
        display: inline
    }

    body.page-fidelity.page-fidelity--home .f-findout__socials {
        flex: 0 0 72px;
        width: 72px;
        height: 36px
    }

    body.page-fidelity.page-fidelity--home .f-findout__socials a {
        justify-content: center;
        align-items: center;
        width: 36px;
        height: 36px;
        display: flex
    }

    body.page-fidelity.page-fidelity--home .f-findout__socials svg {
        width: 20px;
        height: 20px
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid .btn {
        font-weight: 600
    }

    body.page-fidelity.page-fidelity--home .f-findout__grid article:nth-child(3) .btn {
        width: 227.672px
    }
}

@media (min-width: 992px) and (max-width: 992px) {
    body.page-fidelity.page-fidelity--home .f-video-block--warranty {
        height: 600.266px
    }

    body.page-fidelity footer.site-footer.f-footer {
        height: 871.156px
    }
}

@media (min-width: 993px) and (max-width: 1200px) {
    body.page-fidelity .f-reviews__facts {
        grid-template-columns:minmax(0, 1fr) 600px;
        padding: 0
    }

    body.page-fidelity .f-reviews__facts > p, body.page-fidelity .f-ratings {
        width: 100%
    }

    body.page-fidelity .f-reviews__facts > p {
        justify-self: start
    }

    body.page-fidelity .f-reviews__facts > p > span {
        flex: auto;
        width: auto;
        min-width: 0
    }

    body.page-fidelity .f-ratings {
        padding-left: 14px
    }

    body.page-fidelity .f-reviews__rail {
        grid-auto-columns: calc(50vw - 41px);
        column-gap: 0;
        padding-left: 60px;
        padding-right: 60px
    }

    body.page-fidelity .f-review-card {
        width: calc(50vw - 41px);
        height: 404.906px;
        margin: -1px 0 0 -20px
    }

    body.page-fidelity .f-review-card .video-poster, body.page-fidelity .f-review-card .video-poster img {
        aspect-ratio: 16/9;
        object-fit: fill;
        width: 100%;
        height: auto
    }

    body.page-fidelity .f-slider-nav {
        top: 339.781px;
        right: 61px
    }

    body.page-fidelity--home .f-faq__layout, body.page-fidelity--home .f-faq__media {
        height: 540px
    }

    body.page-fidelity .f-faq__media > img {
        width: 100%;
        height: 456px
    }

    body.page-fidelity .f-faq__thumbs {
        gap: 7px;
        width: calc(100% - 40px);
        height: 52px;
        top: 374px;
        bottom: auto;
        left: 20px;
        right: 20px
    }

    body.page-fidelity .f-doc-button {
        justify-content: center;
        align-items: center;
        width: 220px;
        height: 54px;
        padding: 6px 10px;
        line-height: 16px;
        display: flex;
        position: absolute;
        top: 486px;
        left: auto;
        right: 60px
    }

    body.page-fidelity footer.f-footer .f-footer__main {
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) 382px
    }

    body.page-fidelity footer.f-footer .f-footer__cell {
        min-width: auto
    }
}

@media (min-width: 1601px) {
    body.page-fidelity .f-reviews__facts > p {
        padding-left: 0
    }

    body.page-fidelity .f-ratings {
        padding-left: 14px
    }

    body.page-fidelity .f-reviews__rail {
        grid-auto-columns: 620px;
        column-gap: 0;
        padding-left: calc(50vw - 600px);
        padding-right: calc(50vw - 600px)
    }

    body.page-fidelity .f-review-card {
        width: 620px;
        height: 488.719px;
        margin: -1px 0 0 -20px
    }

    body.page-fidelity .f-review-card .video-poster, body.page-fidelity .f-review-card .video-poster img {
        aspect-ratio: 16/9;
        object-fit: fill;
        width: 100%;
        height: auto
    }

    body.page-fidelity .f-review-card .video-poster:after {
        display: block
    }

    body.page-fidelity .f-review-card .video-poster__play {
        background: #fff;
        border-radius: 50%;
        width: 65.5938px;
        height: 65.5938px
    }

    body.page-fidelity .f-review-card .video-poster__play:after {
        border-top-width: 6px;
        border-bottom-width: 6px;
        border-left: 11px solid #0d4e96
    }

    body.page-fidelity .f-slider-nav {
        top: 348.188px;
        right: calc(50vw - 600px)
    }

    body.page-fidelity--home .f-faq__layout, body.page-fidelity--home .f-faq__media {
        height: 540px
    }

    body.page-fidelity .f-faq__media > img {
        width: 100%;
        height: 456px
    }

    body.page-fidelity .f-faq__thumbs {
        gap: 7px;
        width: calc(100% - 60px);
        height: 52px;
        top: 374px;
        bottom: auto;
        left: 30px;
        right: 30px;
        overflow: hidden
    }

    body.page-fidelity .f-faq__thumbs button {
        flex: 0 0 89px;
        width: 89px;
        height: 52px
    }

    body.page-fidelity .f-faq__thumbs img {
        width: 87px;
        height: 50px
    }

    body.page-fidelity .f-doc-button {
        justify-content: center;
        align-items: center;
        width: 220px;
        height: 54px;
        padding: 6px 10px;
        line-height: 16px;
        display: flex;
        position: absolute;
        top: 486px;
        left: auto;
        right: 100px
    }

    body.page-fidelity footer.f-footer .f-footer__main {
        grid-template-rows:251.984px 148.578px;
        grid-template-columns:1fr 310px 310px 1fr
    }

    body.page-fidelity footer.f-footer .f-footer__brand {
        height: 400.563px;
        padding: 56px 20px 30px 0
    }

    body.page-fidelity footer.f-footer .f-footer__brand-inner {
        margin-top: auto;
        margin-left: auto
    }

    body.page-fidelity footer.f-footer .f-footer__clients {
        height: 251.984px;
        padding: 56px 0 56px 40px
    }

    body.page-fidelity footer.f-footer .f-footer__clients nav {
        justify-content: space-between;
        width: 900px;
        margin-left: -4px
    }

    body.page-fidelity footer.f-footer .f-footer__ratings {
        grid-template-columns:repeat(4, 220px);
        width: 890px
    }

    body.page-fidelity footer.f-footer .f-footer__contacts {
        padding-left: 40px
    }

    body.page-fidelity footer.f-footer .f-footer__address {
        padding-right: 0
    }

    body.page-fidelity footer.f-footer .f-footer__address p {
        width: 300px
    }

    body.page-fidelity footer.f-footer .f-footer__help > .container, body.page-fidelity footer.f-footer .f-footer__info > .container {
        width: 1400px;
        max-width: 1400px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 100px;
        padding-right: 100px
    }
}

@media (min-width: 993px) {
    body.page-fidelity .f-review-card:not(.is-review-visible) {
        visibility: hidden
    }
}

@media (max-width: 992px) {
    body.page-fidelity .f-review-card:not(.is-review-visible) {
        visibility: hidden
    }
}

@media (max-width: 700px) {
    body.page-fidelity .f-faq__thumbs {
        top: 208px;
        bottom: auto
    }
}

@media (max-width: 370px) {
    body.page-fidelity .f-reviews__facts {
        grid-template-rows:143.984px 177.594px;
        height: 323.578px
    }

    body.page-fidelity .f-ratings__content > div {
        height: 96px
    }

    body.page-fidelity .f-ratings__content a, body.page-fidelity .f-ratings__content a img, body.page-fidelity .f-ratings__content a:nth-child(4), body.page-fidelity .f-ratings__content a:nth-child(4) img {
        height: 48px
    }
}

@media (max-width: 400px) {
    body.page-fidelity .f-faq__thumbs {
        justify-content: flex-start;
        width: calc(100% - 10px);
        left: 5px;
        right: auto
    }
}

@media (min-width: 401px) and (max-width: 430px) {
    body.page-fidelity .f-faq__thumbs {
        justify-content: flex-start;
        width: 450px;
        left: -13px;
        right: auto
    }

    body.page-fidelity .f-reviews__facts {
        grid-template-rows:143.984px 201.594px;
        height: 347.578px
    }

    body.page-fidelity .f-reviews__facts > p, body.page-fidelity .f-ratings {
        padding: 20px 56px
    }

    body.page-fidelity .f-ratings__content > div {
        grid-template-columns:repeat(2, 113.5px);
        height: 120px
    }

    body.page-fidelity .f-ratings__content a, body.page-fidelity .f-ratings__content a img, body.page-fidelity .f-ratings__content a:nth-child(4), body.page-fidelity .f-ratings__content a:nth-child(4) img {
        width: 100px;
        height: 60px
    }

    body.page-fidelity .f-reviews__rail {
        padding-left: 34px
    }

    body.page-fidelity--service .f-calc__nav:has([data-calculator-prev]:not([hidden])) {
        width: 380px;
        left: 54px;
        right: auto
    }
}

@media (max-width: 700px) {
    body.page-fidelity .f-review-card {
        clip-path: inset(1px 20px 0)
    }

    body.page-fidelity--home .f-design-prices__grid .btn, body.page-fidelity--home .f-design-prices__grid article > a {
        position: relative;
        top: 4px
    }
}

@media (max-width: 370px),(min-width: 401px) and (max-width: 430px) {
    body.page-fidelity--home .f-design-prices__grid {
        grid-template-rows:repeat(3, 409.938px);
        row-gap: 12px;
        height: 1253.75px
    }

    body.page-fidelity--home .f-design-prices__grid article {
        height: 409.938px;
        min-height: 409.938px
    }
}

@media (max-width: 370px) {
    body.page-fidelity .f-slider-nav {
        top: 498.75px
    }

    body.page-fidelity .f-faq + .f-question {
        height: auto
    }
}

@media (min-width: 371px) and (max-width: 400px) {
    body.page-fidelity .f-slider-nav {
        top: 489.969px
    }
}

@media (min-width: 401px) and (max-width: 430px) {
    body.page-fidelity .f-reviews__tabs {
        padding-left: 24px;
        padding-right: 24px
    }

    body.page-fidelity .f-slider-nav {
        top: 522.766px;
        right: 55px
    }

    body.page-fidelity--home .f-design-prices__grid .btn, body.page-fidelity--home .f-design-prices__grid article > a {
        left: 39px
    }
}

@media (min-width: 401px) and (max-width: 576px) {
}

@media (min-width: 401px) and (max-width: 410px) {
}

@media (max-width: 700px) {
    body.page-fidelity.page-fidelity--home .f-director {
        overflow: visible
    }
}

body.page-fidelity.page-fidelity--home .f-design-prices {
    background: 0 0
}

body.page-fidelity .f-running-line {
    z-index: 1;
    background: #0d4e96;
    border-block-start: 1px solid #0000004d;
    border-block-end: 1px solid #0000004d;
    height: 120px;
    animation: 20s linear infinite cms-ticker-background;
    display: flex;
    position: relative
}

body.page-fidelity .f-running-line > div {
    color: #fff;
    -webkit-text-stroke: 1px #000;
    flex-shrink: 0;
    gap: 0;
    width: max-content;
    min-width: 100%;
    height: 100%;
    margin-left: 100px;
    font-family: Days One, sans-serif;
    font-size: 42px;
    font-weight: 400;
    line-height: 1.3;
    animation: 20s linear infinite cms-ticker-movement, 20s linear infinite cms-ticker-text;
    transform: none
}

body.page-fidelity .f-running-line strong {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: inherit
}

body.page-fidelity .f-running-line svg {
    fill: #fff;
    stroke-width: 1px;
    flex: 0 0 83px;
    width: 83px;
    height: 83px;
    margin-right: 38px;
    animation: 20s linear infinite cms-ticker-icon
}

@keyframes cms-ticker-movement {
    0% {
        transform: translate(0)
    }
    to {
        transform: translate(calc(-100% - 100px))
    }
}

@keyframes cms-ticker-background {
    0%, to {
        background: #0d4e96
    }
    33%, 66% {
        background: #fff
    }
}

@keyframes cms-ticker-text {
    0%, to {
        color: #fff;
        -webkit-text-stroke: 1px #fff
    }
    33% {
        color: #000;
        -webkit-text-stroke: 1px #000
    }
    66% {
        color: #fff;
        -webkit-text-stroke: 1px #000
    }
}

@keyframes cms-ticker-icon {
    0%, to {
        fill: #fff;
        stroke: #fff
    }
    33% {
        fill: #000;
        stroke: #000
    }
    66% {
        fill: #fff;
        stroke: #000
    }
}

@media (max-width: 992px) {
    body.page-fidelity .f-running-line {
        height: 96px
    }

    body.page-fidelity .f-running-line > div {
        font-size: 32px
    }

    body.page-fidelity .f-running-line svg {
        flex-basis: 64px;
        width: 64px;
        height: 64px
    }
}

@media (max-width: 768px) {
    body.page-fidelity .f-running-line {
        height: 80px
    }

    body.page-fidelity .f-running-line > div {
        font-size: 22px
    }

    body.page-fidelity .f-running-line svg {
        flex-basis: 52px;
        width: 52px;
        height: 52px;
        margin-right: 10px
    }
}

@media (max-width: 576px) {
    body.page-fidelity .f-running-line {
        height: 72px
    }

    body.page-fidelity .f-running-line > div {
        font-size: 18px
    }

    body.page-fidelity .f-running-line svg {
        flex-basis: 42px;
        width: 42px;
        height: 42px
    }
}

@media (prefers-reduced-motion: reduce) {
    body.page-fidelity .f-running-line, body.page-fidelity .f-running-line > div, body.page-fidelity .f-running-line svg {
        animation: none
    }

    body.page-fidelity .f-running-line > div {
        transform: none
    }
}

.header__mobile-only, .header__mobile-details {
    display: none
}

.header__nav .dropdown.showed > .header__nav-item > button > svg {
    transform: none
}

.header__nav-item > button > svg {
    stroke-width: 1.25px
}

body.page-fidelity :-webkit-any(.slider-arrow:not(:disabled):not(.swiper-button-disabled),.pagination__arrow:not(.disabled)):focus-visible {
    background-color: #fdb813 !important;
    border-color: #fdb813 !important
}

body.page-fidelity :is(.slider-arrow:not(:disabled):not(.swiper-button-disabled),.pagination__arrow:not(.disabled)):focus-visible {
    background-color: #fdb813 !important;
    border-color: #fdb813 !important
}

body.page-fidelity :-webkit-any(.slider-arrow:not(:disabled):not(.swiper-button-disabled),.pagination__arrow:not(.disabled)):focus-visible svg {
    stroke: #121212 !important
}

body.page-fidelity :is(.slider-arrow:not(:disabled):not(.swiper-button-disabled),.pagination__arrow:not(.disabled)):focus-visible svg {
    stroke: #121212 !important
}

body.page-fidelity .pagination__item:not(.pagination__item--active):focus-visible {
    color: #121212 !important;
    background-color: #fdb813 !important
}

body.page-fidelity :is(.f-project__arrow,.f-slider-nav button,.f-work__arrow,.f-pagination__arrow:not([aria-disabled=true])):focus-visible {
    border-color: var(--f-yellow) !important;
    background-color: var(--f-yellow) !important;
    color: var(--f-ink) !important
}

body.page-fidelity :is(.f-work__pagination button:not(.is-active),.f-pagination__page:not(.is-active),.f-calc__rooms button):focus-visible {
    border-color: var(--f-yellow) !important;
    background-color: var(--f-yellow) !important;
    color: var(--f-ink) !important
}

body.page-fidelity .f-reviews__tabs :-webkit-any(button,a):not(.is-active):focus-visible {
    color: #3d3d3d !important;
    background-color: #e7edf5 !important
}

body.page-fidelity .f-reviews__tabs :is(button,a):not(.is-active):focus-visible {
    color: #3d3d3d !important;
    background-color: #e7edf5 !important
}

body.page-fidelity :-webkit-any(.f-director__phone,.f-doc-button,.f-back-top):focus-visible {
    background-color: var(--f-yellow) !important;
    color: var(--f-ink) !important
}

body.page-fidelity :is(.f-director__phone,.f-doc-button,.f-back-top):focus-visible {
    background-color: var(--f-yellow) !important;
    color: var(--f-ink) !important
}

body.page-fidelity .f-seo__toggle:focus-visible {
    border-color: var(--f-yellow, #fdb813) !important;
    background-color: var(--f-yellow, #fdb813) !important;
    color: var(--f-ink, #121212) !important
}

body.page-fidelity .f-director__phone:focus-visible svg {
    stroke: var(--f-ink) !important
}

body.page-fidelity.page-fidelity--home .f-process-link:focus-visible {
    background-color: var(--f-blue) !important;
    color: #fff !important
}

body.page-fidelity.page-fidelity--home .f-process-link:focus-visible .f-process-link__snowflake {
    fill: #fff !important
}

body.page-fidelity.page-fidelity--home .f-process-link:focus-visible .f-process-link__arrow {
    stroke: #fff !important
}

@media (hover: hover) and (pointer: fine) {
    body.page-fidelity :-webkit-any(.slider-arrow:not(:disabled):not(.swiper-button-disabled),.pagination__arrow:not(.disabled)):hover {
        background-color: #fdb813 !important;
        border-color: #fdb813 !important
    }

    body.page-fidelity :is(.slider-arrow:not(:disabled):not(.swiper-button-disabled),.pagination__arrow:not(.disabled)):hover {
        background-color: #fdb813 !important;
        border-color: #fdb813 !important
    }

    body.page-fidelity :-webkit-any(.slider-arrow:not(:disabled):not(.swiper-button-disabled),.pagination__arrow:not(.disabled)):hover svg {
        stroke: #121212 !important
    }

    body.page-fidelity :is(.slider-arrow:not(:disabled):not(.swiper-button-disabled),.pagination__arrow:not(.disabled)):hover svg {
        stroke: #121212 !important
    }

    body.page-fidelity .pagination__item:not(.pagination__item--active):hover {
        color: #121212 !important;
        background-color: #fdb813 !important
    }

    body.page-fidelity :is(.f-project__arrow,.f-slider-nav button,.f-work__arrow,.f-pagination__arrow:not([aria-disabled=true])):hover {
        border-color: var(--f-yellow) !important;
        background-color: var(--f-yellow) !important;
        color: var(--f-ink) !important
    }

    body.page-fidelity :is(.f-work__pagination button:not(.is-active),.f-pagination__page:not(.is-active),.f-calc__rooms button):hover {
        border-color: var(--f-yellow) !important;
        background-color: var(--f-yellow) !important;
        color: var(--f-ink) !important
    }

    body.page-fidelity .f-reviews__tabs :-webkit-any(button,a):not(.is-active):hover {
        color: #3d3d3d !important;
        background-color: #e7edf5 !important
    }

    body.page-fidelity .f-reviews__tabs :is(button,a):not(.is-active):hover {
        color: #3d3d3d !important;
        background-color: #e7edf5 !important
    }

    body.page-fidelity :-webkit-any(.f-director__phone,.f-doc-button,.f-back-top):hover {
        background-color: var(--f-yellow) !important;
        color: var(--f-ink) !important
    }

    body.page-fidelity :is(.f-director__phone,.f-doc-button,.f-back-top):hover {
        background-color: var(--f-yellow) !important;
        color: var(--f-ink) !important
    }

    body.page-fidelity .f-seo__toggle:hover {
        border-color: var(--f-yellow, #fdb813) !important;
        background-color: var(--f-yellow, #fdb813) !important;
        color: var(--f-ink, #121212) !important
    }

    body.page-fidelity .f-director__phone:hover svg {
        stroke: var(--f-ink) !important
    }

    body.page-fidelity.page-fidelity--home .f-process-link:hover {
        background-color: var(--f-blue) !important;
        color: #fff !important
    }

    body.page-fidelity.page-fidelity--home .f-process-link:hover .f-process-link__snowflake {
        fill: #fff !important
    }

    body.page-fidelity.page-fidelity--home .f-process-link:hover .f-process-link__arrow {
        stroke: #fff !important
    }
}

.header .social svg.stroke {
    fill: currentColor;
    stroke: currentColor
}

body:has([data-header-overlay].showed) .f-cookie {
    filter: blur(2px);
    pointer-events: none
}

body.page-fidelity .dialog--measurer {
    color: #121212;
    width: min(660px, 100% - 40px);
    font: 400 16px/20.8px Manrope, Arial, sans-serif
}

body.page-fidelity .dialog--measurer .dialog__content {
    padding: 30px 40px
}

body.page-fidelity .dialog--measurer .dialog__heading {
    color: #121212;
    letter-spacing: 0;
    text-transform: none;
    text-wrap: wrap;
    width: auto;
    max-width: none;
    margin: 0 0 24px;
    padding: 0;
    font: 400 24px/31.2px Days One, sans-serif
}

body.page-fidelity .dialog--measurer .dialog__description {
    color: #121212;
    width: auto;
    max-width: 310px;
    margin: 20px 0 0;
    font: 400 16px/20.8px Manrope, Arial, sans-serif
}

body.page-fidelity .dialog--measurer .form {
    width: 100%;
    margin: 40px 0 0;
    display: block
}

body.page-fidelity .dialog--measurer .form > input:not([type=hidden]) {
    color: #121212;
    background: #f9f9f9;
    border: 1px solid #e6e6e6;
    border-radius: 15px;
    width: 100%;
    height: 58px;
    padding: 0 0 0 20px;
    font: 400 14px/21px ibmplexsans, sans-serif
}

body.page-fidelity .dialog--measurer .form > input:not([type=hidden]) ~ input:not([type=hidden]) {
    margin-top: 16px
}

body.page-fidelity .dialog--measurer .captcha-placeholder {
    width: 100%;
    margin-top: 16px
}

body.page-fidelity .dialog--measurer .form > .btn {
    color: #fff;
    text-transform: none;
    background: #0d4e96;
    border: 1px solid #0d4e96;
    border-radius: 15px;
    width: 100%;
    height: 58px;
    min-height: 58px;
    margin: 5px 0 0;
    padding: 5.25px 10.5px;
    font: 600 14px/14px ibmplexsans, sans-serif
}

body.page-fidelity .dialog--measurer .dialog__policy {
    color: #8c8c8c;
    text-align: center;
    margin: 20px 0 0;
    font: 400 14px/18.2px ibmplexsans, sans-serif
}

body.page-fidelity .dialog--measurer .dialog__policy p {
    margin: 0
}

body.page-fidelity .dialog--measurer .dialog__policy p + p {
    margin-top: 20px
}

.pt-source-search .pt-source-search__empty {
    color: green;
    margin: 0;
    font-size: 16px;
    line-height: 1.3
}

.pt-filter__form label {
    position: relative
}

.pt-filter__form label select {
    -webkit-appearance: none;
    appearance: none
}

.pt-filter__arrow {
    fill: #121212;
    pointer-events: none;
    width: 16px;
    height: 16px;
    position: absolute;
    bottom: 14px;
    right: 22px
}

@media (min-width: 1201px) {
    body.page-fidelity--home .f-faq {
        height: auto;
        min-height: 630.4px;
        overflow: visible
    }

    body.page-fidelity--home .f-faq__layout {
        height: auto;
        min-height: 630.4px
    }

    body.page-fidelity--home .f-faq__media {
        height: 456px;
        margin-top: 90.4px
    }

    body.page-fidelity--home .f-faq .f-doc-button {
        top: 576.4px
    }

    body.page-fidelity--home .f-faq .service-faq__list summary {
        color: #121212
    }

    body.page-fidelity--home .f-faq .service-faq__list p {
        color: #121212ad;
        margin: 0
    }
}

@media (max-width: 1200px) {
    body .header {
        will-change: auto
    }

    body .header__nav.main-navigation--open {
        height: calc(100dvh - var(--header-height, 90px));
        max-height: none;
        padding: 30px 15px 60px;
        scroll-padding-block: 16px
    }

    body .header .header__phone-mob a {
        text-decoration: underline
    }

    .header__nav > ul {
        gap: 20px
    }

    .header__nav > ul > li {
        border: 0
    }

    .header__nav > ul > li:first-child {
        order: 1
    }

    .header__nav > ul > li:nth-child(2) {
        order: 3
    }

    .header__nav > ul > li:nth-child(3) {
        order: 6
    }

    .header__nav > ul > li:nth-child(4) {
        order: 2
    }

    .header__nav > ul > li:nth-child(5) {
        order: 7
    }

    .header__nav > ul > li:nth-child(6) {
        order: 4
    }

    .header__nav > ul > li:nth-child(7) {
        order: 8
    }

    .header__nav > ul > li.header__mobile-only {
        order: 5;
        display: list-item
    }

    .header__nav .header__nav-item {
        justify-content: flex-start
    }

    .header__nav .header__nav-item > a {
        flex-grow: 0;
        padding: 0;
        font-size: 18px;
        line-height: 1.3;
        text-decoration: underline
    }

    .header__nav .header__nav-item > button {
        width: 28px;
        height: 23.4px;
        margin-left: 2px
    }

    .header__nav .dropdown.showed > .header__nav-item > button > svg {
        transform: rotate(180deg)
    }

    .header__nav .dropdown.showed > ul {
        margin-top: 16px
    }

    .header__mobile-details {
        color: #000;
        margin-top: 40px;
        display: block
    }

    .header__mobile-details > .btn {
        text-transform: uppercase;
        width: 100%;
        min-height: 38px;
        padding: 6px 15px
    }

    .header__mobile-contact {
        justify-content: space-between;
        align-items: center;
        margin-top: 20px;
        display: flex
    }

    .header__mobile-contact > a {
        font-size: 20px;
        text-decoration: none
    }

    .header__mobile-socials {
        gap: 6px;
        display: flex
    }

    .header__mobile-socials .social {
        background: #f5f6f8;
        width: 36px;
        height: 36px
    }

    .header__mobile-schedule {
        margin: 22px 0 16px;
        font-size: 16px
    }

    .header__mobile-ratings-title {
        margin: 0 0 18px;
        font-size: 20px
    }

    .header__mobile-ratings {
        grid-template-columns:1fr 1fr;
        gap: 6px 14px;
        display: grid
    }

    .header__mobile-ratings > a {
        align-items: end;
        width: 80px;
        height: 48px;
        display: grid;
        position: relative
    }

    .header__mobile-ratings img {
        object-fit: contain;
        width: 80px;
        height: 48px
    }

    .header__mobile-ratings span {
        color: #fff;
        background: #0d4e96;
        border-radius: 50%;
        place-items: center;
        width: 26px;
        height: 26px;
        font-family: ibmplexsans, sans-serif;
        font-size: 12px;
        display: grid;
        position: absolute;
        top: 0;
        left: 26px
    }

    body.menu-open .f-cookie {
        visibility: hidden
    }
}

@media (min-width: 577px) and (max-width: 768px) {
    body .header__nav.main-navigation--open {
        height: calc(100dvh - 72px)
    }
}

@media (max-width: 576px) {
    body .header__nav.main-navigation--open {
        height: calc(100dvh - 60px)
    }

    body.page-fidelity .dialog--measurer {
        width: min(320px, 100% - 40px)
    }

    body.page-fidelity .dialog--measurer .dialog__content {
        padding: 30px 20px
    }

    body.page-fidelity .dialog--measurer .dialog__heading {
        padding: 0;
        font-size: 18px;
        line-height: 23.4px
    }

    body.page-fidelity .dialog--measurer .form {
        margin-top: 20px
    }

    body.page-fidelity .dialog--measurer .captcha-placeholder {
        width: 300px;
        max-width: none;
        height: 118px;
        min-height: 118px
    }

    body.page-fidelity .dialog--measurer .dialog__policy {
        margin-top: 10px;
        font-size: 12px;
        line-height: 15.6px
    }

    body.page-fidelity .dialog--measurer .dialog__policy p + p {
        margin-top: 10px
    }
}

body.page-fidelity .header .header__phone-number-title {
    color: #000;
    display: inline
}

body.page-fidelity .header .header__phone-number {
    display: flex
}

body.page-fidelity .header .header__phone-number-mob, body.page-fidelity .header .header__phone-mob {
    display: none
}

body.page-fidelity .header .header__socials {
    gap: 0;
    margin-top: -2px
}

body.page-fidelity .header .header__socials .social {
    margin: 2px 2px 0
}

@media (max-width: 1200px) {
    body.page-fidelity .header .header__socials {
        margin-right: 20px
    }

    body.page-fidelity .header .header__nav > ul > li > ul a {
        text-transform: uppercase;
        padding: 0;
        font-size: 14px;
        line-height: 1.3;
        display: inline
    }

    body.page-fidelity .header .header__nav.main-navigation--open {
        padding-bottom: 50px
    }

    body.page-fidelity .header .header__nav > ul, body.page-fidelity .header .header__mobile-details {
        max-width: 340px;
        margin-inline-start: auto;
        margin-inline-end: auto
    }

    body.page-fidelity .header .header__nav > ul > li > ul {
        background: 0 0;
        max-height: none;
        margin: 0;
        padding: 0 0 0 6px;
        transition: none;
        display: none;
        overflow: hidden
    }

    body.page-fidelity .header .header__nav .dropdown.showed > ul {
        max-height: none;
        margin-top: 0;
        display: block;
        overflow: hidden
    }

    body.page-fidelity .header .header__nav > ul > li > ul > li {
        border: 0;
        width: auto;
        margin-top: 10px
    }

    body.page-fidelity .header .header__phone-mob a:hover {
        text-decoration: none
    }

    body.page-fidelity .header .header__nav-item:hover > a {
        color: #0d4e96
    }

    body.page-fidelity .header .header__nav-item > a:hover {
        text-decoration: none
    }
}

@media (max-width: 992px) {
    body.page-fidelity .header .header__socials {
        min-width: 48px;
        margin-right: 0
    }
}

@media (max-width: 768px) {
    body.page-fidelity .header .header__socials {
        gap: 8px;
        margin-right: 8px
    }

    body.page-fidelity .header .header__socials .social {
        background: #f3f5f8;
        width: 29px;
        height: 29px
    }
}

@media (max-width: 767px) {
    body.page-fidelity .header .header__phone-number-title, body.page-fidelity .header .header__phone-number {
        display: none
    }

    body.page-fidelity .header .header__phone-number-mob {
        display: block
    }

    body.page-fidelity .header .header__phone-mob {
        flex: none;
        width: 100%;
        height: auto;
        font-size: 16px;
        line-height: 20.8px;
        display: block
    }

    body.page-fidelity .header .header__phone-mob a {
        font-size: 14px;
        line-height: 1.3
    }
}

@media (max-width: 576px) {
    body.page-fidelity .header .header__nav > ul, body.page-fidelity .header .header__mobile-details {
        max-width: none
    }

    body.page-fidelity .header .header__socials {
        margin-right: 6px
    }

    body.page-fidelity .header .header__logo {
        margin-right: 8px
    }
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] {
    height: auto;
    min-height: 0;
    overflow: visible
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__decor {
    border-radius: inherit;
    pointer-events: none;
    z-index: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: clip
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__help {
    height: auto;
    min-height: 0
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] [hidden] {
    display: none !important
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__dropdown {
    z-index: 3;
    position: relative
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__dropdown-toggle {
    color: #3d3d3d;
    cursor: pointer;
    background: 0 0;
    border: 0;
    border-radius: 0;
    min-height: 0;
    margin: 0;
    padding: 5px;
    font: 400 16px/1.3 Manrope, sans-serif;
    display: block
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__dropdown-toggle:-webkit-any(:hover,:focus-visible) {
    color: #0d4e96;
    text-decoration: underline
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__dropdown-toggle:is(:hover,:focus-visible) {
    color: #0d4e96;
    text-decoration: underline
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__dropdown-panel {
    z-index: 1;
    width: max-content;
    max-width: calc(100vw - 32px);
    max-height: var(--footer-dropdown-max-height, calc(100dvh - 32px));
    overscroll-behavior: contain;
    background: #fff;
    border-radius: 4px;
    flex-direction: column;
    gap: 10px;
    margin: 0;
    padding: 5px;
    display: flex;
    position: absolute;
    top: 100%;
    right: 0;
    overflow: auto
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__dropdown-panel[data-placement=above] {
    top: auto;
    bottom: 100%
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__dropdown-panel a {
    color: #3d3d3d;
    white-space: nowrap;
    flex: none;
    padding: 5px;
    font: 400 16px/1.3 Manrope, sans-serif;
    text-decoration: none
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__dropdown-panel a:-webkit-any(:hover,:focus-visible) {
    color: #0d4e96;
    text-decoration: underline
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__dropdown-panel a:is(:hover,:focus-visible) {
    color: #0d4e96;
    text-decoration: underline
}

body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] :is(.f-footer__dropdown-toggle,.f-footer__dropdown-panel a,[data-footer-more]):focus-visible {
    outline-offset: 2px;
    outline: 2px solid #0d4e96
}

@media (max-width: 991px) {
    body.page-fidelity footer.site-footer.f-footer[data-footer-navigation] .f-footer__mobile-nav a {
        height: auto
    }
}

/* End */


/* Start:/assets/main-ClilvOqM.css?179156225159043*/
@font-face {
    font-family: Manrope;
    src: url(/media/fonts/manrope-regular.woff2) format("woff2");
    font-display: swap;
    font-weight: 400
}

:root {
    --color-text: #121212;
    --color-muted: #5f6368;
    --color-blue: #0d4e96;
    --color-yellow: #fdb813;
    --color-paper: #fff;
    --color-soft: #f2f2f2;
    --color-line: #12121229;
    --color-dark: #171a1f;
    --radius-sm: 10px;
    --radius-md: 18px;
    --shadow: 0 20px 60px #141c261f;
    --container: 1240px
}

*, :before, :after {
    box-sizing: border-box
}

* {
    scrollbar-color: #121212 #0d4e96;
    scrollbar-width: thin
}

html {
    scroll-behavior: smooth
}

body {
    color: var(--color-text);
    background: var(--color-paper);
    margin: 0;
    font-family: Manrope, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.5
}

body.menu-open {
    overflow: hidden
}

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

button, input {
    font: inherit
}

a {
    color: inherit
}

h1, h2, h3, p {
    margin-top: 0
}

h1, h2 {
    font-family: Montserrat, Arial, sans-serif;
    font-weight: 700;
    line-height: 1.12
}

h1 {
    letter-spacing: -.035em;
    margin-bottom: 28px;
    font-size: clamp(2.35rem, 5vw, 4.8rem)
}

h2 {
    letter-spacing: -.025em;
    margin-bottom: 24px;
    font-size: clamp(2rem, 3.6vw, 3.5rem)
}

h3 {
    line-height: 1.25
}

.container {
    width: min(calc(100% - 48px), var(--container));
    margin-inline-start: auto;
    margin-inline-end: auto
}

.visually-hidden {
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden
}

.skip-link {
    z-index: 1000;
    background: #fff;
    padding: 10px 14px;
    position: fixed;
    top: 10px;
    left: 10px;
    transform: translateY(-150%)
}

.skip-link:focus {
    transform: none
}

.eyebrow {
    color: var(--color-blue);
    letter-spacing: .12em;
    text-transform: uppercase;
    margin-bottom: 16px;
    font-size: .82rem;
    font-weight: 800
}

.eyebrow--light {
    color: #ffcb45
}

.button {
    border: 1px solid var(--color-yellow);
    background: var(--color-yellow);
    color: #171717;
    cursor: pointer;
    border-radius: 2px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    min-height: 54px;
    padding: 12px 30px;
    font-weight: 800;
    text-decoration: none;
    transition: background-color .2s, border-color .2s, transform .2s;
    display: inline-flex
}

.button:hover {
    background: #ffc936;
    border-color: #ffc936
}

.button:active {
    transform: translateY(1px)
}

.button:focus-visible {
    outline-offset: 3px;
    outline: 3px solid #0d4e9659
}

a:focus-visible {
    outline-offset: 3px;
    outline: 3px solid #0d4e9659
}

summary:focus-visible {
    outline-offset: 3px;
    outline: 3px solid #0d4e9659
}

input:focus-visible {
    outline-offset: 3px;
    outline: 3px solid #0d4e9659
}

.button:disabled {
    opacity: .65;
    cursor: wait
}

.button--full {
    width: 100%
}

.text-link {
    color: var(--color-blue);
    text-underline-offset: 5px;
    font-weight: 800;
    text-decoration-thickness: 1px
}

.form label {
    gap: 7px;
    margin-bottom: 14px;
    font-size: .84rem;
    font-weight: 700;
    display: grid
}

.form input {
    background: #fff;
    border: 1px solid #1212124d;
    border-radius: 5px;
    width: 100%;
    min-height: 48px;
    padding: 10px 13px
}

.section {
    padding-block-start: clamp(76px, 9vw, 132px);
    padding-block-end: clamp(76px, 9vw, 132px)
}

.section-heading {
    grid-template-columns:minmax(300px, .9fr) minmax(280px, .8fr) auto;
    align-items: end;
    gap: 42px;
    margin-bottom: 44px;
    display: grid
}

.section-heading h2 {
    margin-bottom: 0
}

.section-heading p {
    color: var(--color-muted);
    margin: 0
}

.portfolio-preview {
    background: linear-gradient(#fff, #f5f7fa)
}

.portfolio-grid {
    grid-template-columns:repeat(2, 1fr);
    gap: 28px;
    display: grid
}

.portfolio-card {
    border: 1px solid var(--color-line);
    border-radius: var(--radius-sm);
    background: #fff;
    transition: transform .25s, box-shadow .25s;
    overflow: hidden
}

.portfolio-card:hover {
    box-shadow: var(--shadow);
    transform: translateY(-4px)
}

.portfolio-card a {
    text-decoration: none;
    display: block
}

.portfolio-card img {
    aspect-ratio: 580/425;
    object-fit: cover;
    width: 100%
}

.portfolio-card__body {
    padding: 24px 26px 28px
}

.portfolio-card h3 {
    margin-bottom: 8px;
    font-size: 1.24rem
}

.portfolio-card p {
    color: var(--color-muted);
    margin: 0
}

.section--dark {
    color: #fff;
    background: var(--color-dark)
}

.approach h2 {
    max-width: 880px
}

.steps {
    border-top: 1px solid #ffffff40;
    grid-template-columns:repeat(4, 1fr);
    margin: 55px 0 0;
    padding: 0;
    list-style: none;
    display: grid
}

.steps li {
    padding: 28px 26px 10px 0
}

.steps li + li {
    border-left: 1px solid #ffffff40;
    padding-left: 26px
}

.steps span {
    color: #ffcb45;
    font-family: Montserrat, Arial, sans-serif
}

.steps h3 {
    margin: 48px 0 12px;
    font-size: 1.25rem
}

.steps p {
    color: #ffffffad;
    margin: 0
}

.video-section__grid {
    grid-template-columns:minmax(280px, .7fr) minmax(500px, 1.3fr);
    align-items: center;
    gap: 70px;
    display: grid
}

.video-section__grid > div > p:last-child {
    color: var(--color-muted);
    font-size: 1.08rem
}

.video-poster {
    border-radius: var(--radius-md);
    box-shadow: var(--shadow);
    cursor: pointer;
    background: #111;
    border: 0;
    padding: 0;
    position: relative;
    overflow: hidden
}

.video-poster img {
    aspect-ratio: 16/9;
    object-fit: cover;
    width: 100%;
    transition: transform .35s, opacity .35s
}

.video-poster:hover img {
    opacity: .85;
    transform: scale(1.02)
}

.video-poster__play {
    background: var(--color-yellow);
    color: #111;
    border-radius: 50%;
    place-items: center;
    width: 78px;
    height: 78px;
    padding-left: 5px;
    font-size: 1.5rem;
    display: grid;
    position: absolute;
    top: 50%;
    bottom: auto;
    left: 50%;
    right: auto;
    transform: translate(-50%, -50%)
}

.prices {
    background: #f4f5f7
}

.price-grid {
    grid-template-columns:repeat(3, 1fr);
    align-items: stretch;
    gap: 22px;
    display: grid
}

.price-card {
    border: 1px solid var(--color-line);
    border-radius: var(--radius-sm);
    background: #fff;
    flex-direction: column;
    padding: 34px;
    display: flex
}

.price-card--featured {
    border-color: var(--color-yellow);
    box-shadow: 0 18px 55px #1e1e1e17
}

.price-card__label {
    min-height: 42px;
    color: var(--color-muted);
    margin-bottom: 12px;
    font-size: .84rem
}

.price-card h3 {
    min-height: 60px;
    margin-bottom: 18px;
    font-size: 1.35rem
}

.price-card > strong {
    font-family: Montserrat, Arial, sans-serif;
    font-size: 1.55rem;
    font-weight: 700
}

.price-card > span {
    color: var(--color-muted);
    margin-top: 4px
}

.price-card ul {
    min-height: 160px;
    margin: 28px 0;
    padding: 0;
    list-style: none
}

.price-card li {
    padding-left: 26px;
    position: relative
}

.price-card li + li {
    margin-top: 12px
}

.price-card li:before {
    content: "✓";
    color: var(--color-blue);
    font-weight: 800;
    position: absolute;
    left: 0
}

.supervision {
    background: #f4f5f7;
    padding-top: 0
}

.supervision__box {
    border-radius: var(--radius-md);
    background: var(--color-blue);
    color: #fff;
    grid-template-columns:1fr 1fr auto;
    align-items: center;
    gap: 50px;
    padding: clamp(34px, 6vw, 72px);
    display: grid
}

.supervision__box h2 {
    margin-bottom: 0
}

.supervision__box p {
    color: #ffffffc7;
    margin: 0
}

.faq__grid {
    grid-template-columns:.65fr 1.35fr;
    gap: 80px;
    display: grid
}

.faq__grid > div:first-child > p:last-child {
    color: var(--color-muted)
}

.accordion {
    border-top: 1px solid var(--color-line)
}

.accordion details {
    border-bottom: 1px solid var(--color-line)
}

.accordion summary {
    cursor: pointer;
    padding: 24px 54px 24px 0;
    font-size: 1.1rem;
    font-weight: 800;
    list-style: none;
    position: relative
}

.accordion summary::-webkit-details-marker {
    display: none
}

.accordion summary:after {
    content: "+";
    font-size: 1.8rem;
    font-weight: 400;
    position: absolute;
    top: 17px;
    right: 8px
}

.accordion details[open] summary:after {
    content: "−"
}

.accordion details p {
    max-width: 720px;
    color: var(--color-muted);
    margin: 0;
    padding: 0 54px 24px 0
}

.site-footer {
    border-top: 1px solid var(--color-line);
    background: var(--color-soft);
    padding-top: 70px
}

.site-footer__grid {
    grid-template-columns:1.3fr .8fr 1fr;
    gap: 70px;
    padding-bottom: 60px;
    display: grid
}

.site-footer__logo {
    margin-bottom: 20px;
    display: inline-block
}

.site-footer__grid p {
    max-width: 390px;
    color: var(--color-muted)
}

.site-footer__links, .site-footer__contacts {
    align-content: start;
    justify-items: start;
    gap: 12px;
    display: grid
}

.site-footer__links strong, .site-footer__contacts strong {
    margin-bottom: 7px
}

.site-footer__links a, .site-footer__contacts a {
    text-underline-offset: 4px
}

.site-footer__contacts p {
    margin: 0
}

.site-footer__bottom {
    border-top: 1px solid var(--color-line);
    min-height: 76px;
    color: var(--color-muted);
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    font-size: .84rem;
    display: flex
}

.video-dialog__frame {
    aspect-ratio: 16/9
}

.video-dialog__frame iframe {
    border: 0;
    width: 100%;
    height: 100%
}

@media (max-width: 1080px) {
    .section-heading {
        grid-template-columns:1fr 1fr
    }

    .section-heading .text-link {
        grid-column: 1/-1
    }

    .steps {
        grid-template-columns:repeat(2, 1fr)
    }

    .supervision__box {
        grid-template-columns:1fr 1fr
    }

    .supervision__box .button {
        justify-self: start
    }
}

@media (max-width: 860px) {
    .container {
        width: min(calc(100% - 36px), var(--container))
    }

    .portfolio-grid {
        gap: 18px
    }

    .video-section__grid {
        grid-template-columns:1fr;
        gap: 35px
    }

    .price-grid {
        grid-template-columns:1fr
    }

    .price-card h3, .price-card ul, .price-card__label {
        min-height: 0
    }

    .faq__grid {
        grid-template-columns:1fr;
        gap: 34px
    }

    .site-footer__grid {
        grid-template-columns:1.2fr 1fr
    }
}

@media (max-width: 620px) {
    .container {
        width: min(calc(100% - 28px), var(--container))
    }

    h1 {
        font-size: clamp(2.2rem, 13vw, 3.25rem)
    }

    h2 {
        font-size: clamp(1.8rem, 9vw, 2.5rem)
    }

    .section-heading {
        grid-template-columns:1fr;
        gap: 14px
    }

    .portfolio-grid {
        grid-template-columns:1fr
    }

    .portfolio-card__body {
        padding: 20px
    }

    .steps {
        grid-template-columns:1fr
    }

    .steps li {
        border-bottom: 1px solid #fff3;
        padding: 24px 0 28px
    }

    .steps li + li {
        border-left: 0;
        padding-left: 0
    }

    .steps h3 {
        margin-top: 24px
    }

    .video-poster__play {
        width: 62px;
        height: 62px
    }

    .price-card {
        padding: 26px 22px
    }

    .supervision__box {
        grid-template-columns:1fr;
        gap: 20px
    }

    .site-footer__grid {
        grid-template-columns:1fr;
        gap: 34px
    }

    .site-footer__bottom {
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        padding-block-start: 20px;
        padding-block-end: 20px
    }
}

@media (prefers-reduced-motion: reduce) {
    *, :before, :after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important
    }
}

@font-face {
    font-family: Montserrat;
    src: url(/media/fonts/montserrat-bold.woff2) format("woff2");
    font-display: swap;
    font-style: normal;
    font-weight: 700
}

body {
    background: #f2f2f2;
    line-height: 1.3;
    position: relative;
    overflow-x: hidden
}

#content {
    z-index: 1;
    background: 0 0;
    padding-top: 150px;
    position: relative;
    overflow: hidden
}

.container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding-left: 100px;
    padding-right: 100px;
    position: relative
}

.btn {
    color: #fff;
    text-align: center;
    cursor: pointer;
    background: #0d4e96;
    border: 1px solid #0d4e96;
    border-radius: 49px;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    padding: .375em .75em;
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
    transition: color .25s ease-out, background-color .25s ease-out, border-color .25s ease-out;
    display: inline-flex;
    position: relative
}

.btn:hover {
    color: #121212 !important;
    background: #fdb813 !important;
    border-color: #fdb813 !important
}

.btn:focus-visible {
    color: #121212 !important;
    background: #fdb813 !important;
    border-color: #fdb813 !important
}

.header {
    z-index: 1200;
    width: 100vw;
    font-family: Manrope, Arial, sans-serif;
    position: fixed;
    top: 0;
    left: 0
}

.header__top {
    background: #f2f2f2;
    height: 63px
}

.header__top .container, .header__top-container {
    height: 100%
}

.header__top-container {
    align-items: center;
    display: flex
}

.header__logo {
    z-index: 1;
    display: block;
    position: absolute;
    top: calc(100% + 8px);
    left: 100px
}

.header__logo img {
    width: 115px;
    height: auto;
    display: block
}

.header__btns {
    margin-left: -30px;
    display: flex
}

.header__btns .btn {
    text-transform: uppercase;
    height: 38px;
    margin-left: 30px;
    padding-left: 24px;
    padding-right: 24px;
    font-size: 16px
}

.header__schedule {
    color: #121212;
    margin: 0 auto;
    font-size: 16px;
    line-height: 1.3
}

.header__mob-info {
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
    display: flex
}

.header__phone {
    position: relative
}

.header__phone-number-title {
    font-size: 12px;
    display: inline
}

.header__phone-number {
    color: #121212;
    align-items: center;
    font-size: 24px;
    line-height: 1.3;
    text-decoration: none;
    display: flex
}

.header__phone-number svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 2px;
    width: 18px;
    height: 18px;
    margin-left: 10px
}

.header__phone-number:hover {
    color: #0d4e96
}

.header__phone-number:focus-visible {
    color: #0d4e96
}

.header__phone-number-mob {
    fill: none;
    stroke: currentColor;
    stroke-width: 2px;
    display: none
}

.header__contact-toggle {
    display: none
}

.header__phone-mob {
    flex: none;
    width: 100%;
    display: none
}

.header__phone-mob a {
    font-size: 14px;
    text-decoration: none
}

.header__socials {
    flex-wrap: wrap;
    margin-top: -2px;
    margin-left: 10px;
    display: flex
}

.social {
    color: #0d4e96;
    background: #fff;
    border-radius: 50%;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    width: 36px;
    height: 36px;
    margin: 2px 2px 0;
    text-decoration: none;
    display: flex
}

.social svg {
    fill: currentColor;
    width: 20px;
    height: 20px
}

.social:hover {
    color: #fdb813;
    background: #121212
}

.social:focus-visible {
    color: #fdb813;
    background: #121212
}

.header__bottom {
    background: #fff;
    height: 87px
}

.header__bottom > .container {
    align-items: center;
    height: 100%;
    display: flex
}

.header__nav {
    flex-grow: 1;
    margin-left: 160px;
    position: relative
}

.header__nav > ul {
    justify-content: space-between;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex
}

.header__nav > ul > li {
    position: relative
}

.header__nav-item {
    align-items: center;
    display: flex
}

.header__nav-item > a {
    color: #000;
    white-space: nowrap;
    align-items: center;
    font-size: 18px;
    text-decoration: none;
    display: flex
}

.header__nav-item > button {
    color: #0d4e96;
    cursor: pointer;
    background: 0 0;
    border: 0;
    place-items: center;
    width: 26px;
    height: 26px;
    margin-left: 1px;
    font-size: 18px;
    line-height: 1;
    display: grid
}

.header__nav-item > button > span, .header__nav-item > button > svg {
    width: 18px;
    height: 18px;
    transition: transform .25s ease-out;
    display: block;
    transform: translateY(-2px)
}

.header__nav-item > button > svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 2px
}

.header__nav-item > button:hover, .header__contact-toggle:hover {
    color: #fdb813
}

.header__nav-item > button:focus-visible {
    color: #fdb813
}

.header__contact-toggle:focus-visible {
    color: #fdb813
}

.header__nav .dropdown.showed > .header__nav-item > button > span, .header__nav .dropdown.showed > .header__nav-item > button > svg {
    transform: translateY(1px) rotate(180deg)
}

.header__nav > ul > li > ul {
    opacity: 0;
    pointer-events: none;
    background: #fff;
    border-radius: 0 0 15px 15px;
    flex-direction: column;
    align-items: flex-start;
    width: 580px;
    max-height: 400px;
    margin: 0;
    padding: 0;
    list-style: none;
    transition: opacity .25s ease-out;
    display: flex;
    position: absolute;
    top: calc(100% + 30px);
    left: 50%;
    overflow-y: auto;
    transform: translate(-50%)
}

.header__nav > ul > li:last-child > ul, .header__nav > ul > li:nth-last-child(2) > ul {
    left: auto;
    right: 0;
    transform: none
}

.header__nav .dropdown.showed > ul {
    opacity: 1;
    pointer-events: auto
}

.header__nav > ul > li > ul > li {
    width: 100%
}

.header__nav > ul > li > ul > li + li {
    border-top: 1px solid #d9d9d9
}

.header__nav > ul > li > ul a {
    color: #121212;
    padding: 15px 40px;
    font-size: 18px;
    line-height: 1.3;
    text-decoration: none;
    transition: color .25s ease-out, background-color .25s ease-out;
    display: block
}

.header__nav-item > a:hover, .header__nav > ul > li > ul a:hover {
    color: #0d4e96
}

.header__nav-item > a:focus-visible {
    color: #0d4e96
}

.header__nav > ul > li > ul a:focus-visible {
    color: #0d4e96
}

.header__nav > ul > li > ul a:hover {
    background: #d9d9d966
}

.header__nav > ul > li > ul a:focus-visible {
    background: #d9d9d966
}

.contacts-dd {
    z-index: 1;
    color: #121212;
    opacity: 0;
    pointer-events: none;
    background: #fff;
    border-radius: 0 0 15px 15px;
    flex-direction: column;
    width: 580px;
    padding-bottom: 40px;
    font-size: 16px;
    line-height: 1.3;
    transition: opacity .25s ease-out;
    display: flex;
    position: absolute;
    top: calc(100% + 16px);
    right: 0;
    overflow: hidden
}

.header__phone.showed .contacts-dd {
    opacity: 1;
    pointer-events: auto
}

.contacts-dd__address {
    border: 1px solid #1212124d;
    border-bottom: 0;
    padding: 19px 90px 19px 40px
}

.contacts-dd__stations {
    display: flex
}

.contacts-dd__stations > div {
    border: 1px solid #1212124d;
    align-items: center;
    gap: 7px;
    width: 50%;
    padding: 19px 25px 19px 40px;
    display: flex
}

.contacts-dd__stations span {
    color: #e51d36;
    font-size: 21px
}

.contacts-dd__schedule {
    border: 1px solid #1212124d;
    border-top: 0;
    padding: 19px 40px
}

.contacts-dd__mail {
    padding: 40px 40px 10px
}

.contacts-dd__buttons {
    flex-wrap: wrap;
    padding: 0 40px 0 30px;
    display: flex
}

.contacts-dd__buttons .btn {
    height: 38px;
    margin: 10px 10px 0;
    padding-left: 20px;
    padding-right: 20px
}

.contacts-dd a {
    text-decoration-color: #0000
}

.contacts-dd a:hover {
    color: #0d4e96;
    text-decoration-color: currentColor
}

.overlay {
    z-index: 1000;
    opacity: 0;
    pointer-events: none;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    background: #1212124d;
    width: 100vw;
    height: 100vh;
    transition: opacity .25s ease-out;
    display: block;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.overlay.showed {
    opacity: 1;
    pointer-events: auto
}

.header__open-menu-btn {
    background: 0 0;
    border: 0;
    justify-content: center;
    align-items: center;
    width: 26px;
    height: 26px;
    margin-left: 20px;
    padding: 0;
    display: none;
    position: relative
}

.header__open-menu-btn:before, .header__open-menu-btn:after {
    content: "";
    background: #121212;
    border-radius: 2px;
    width: 26px;
    height: 2px;
    transition: transform .25s ease-out, top .25s ease-out;
    position: absolute;
    left: 0
}

.header__open-menu-btn:before {
    top: 8px
}

.header__open-menu-btn:after {
    top: 16px
}

.header__open-menu-btn[aria-expanded=true]:before {
    top: 12px;
    transform: rotate(45deg)
}

.header__open-menu-btn[aria-expanded=true]:after {
    top: 12px;
    transform: rotate(-45deg)
}

.cover {
    position: relative
}

.cover > .container {
    z-index: 2;
    justify-content: space-between;
    min-height: 780px;
    display: flex
}

.cover__left-block {
    z-index: 0;
    flex-direction: column;
    justify-content: center;
    width: 50%;
    padding: 100px 0;
    display: flex;
    position: relative
}

.cover__content {
    flex-direction: column;
    display: flex
}

.heading-main {
    color: #121212;
    text-transform: uppercase;
    margin: 0;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 47px;
    font-weight: 700;
    line-height: normal
}

.blue-text {
    color: #0d4e96
}

.cover__desc {
    max-width: 480px;
    margin-top: 24px;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.25
}

.cover__callback-btn {
    color: #e1e1e1;
    align-self: flex-start;
    height: 54px;
    margin-top: 40px;
    padding: 0 34px
}

.cover .slider-dots {
    width: 100%;
    position: absolute;
    top: calc(100% - 75px);
    left: 0
}

.cover__right-block {
    z-index: 1;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: calc(50% - 20px);
    min-height: 360px;
    padding: 40px 0 40px 10px;
    display: flex;
    position: relative
}

.cover__bg {
    width: calc(100% + 50vw - 609px);
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.cover__bg:before {
    content: "";
    z-index: 1;
    opacity: .5;
    background: #000;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0
}

.cover__bg img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%
}

.calc-form {
    z-index: 2;
    background: #fff;
    border-radius: 15px;
    width: 100%;
    max-width: 500px;
    margin-left: auto;
    padding: 21px 42px 0
}

.calc-form__heading {
    color: #121212;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3
}

.calc-form form {
    margin-top: 36px
}

.calc-form form > input {
    color: #121212;
    letter-spacing: .2px;
    background: #f9f9f9;
    border: 1px solid #e6e6e6;
    border-radius: 15px;
    width: 100%;
    height: 58px;
    padding-left: 20px;
    font-family: Manrope, Arial, sans-serif;
    font-size: 14px
}

.calc-form form > input + input {
    margin-top: 16px
}

.captcha-placeholder {
    color: #202124;
    text-align: left;
    cursor: pointer;
    background: #fff;
    border: 1px solid #d5d5d5;
    border-radius: 9px;
    align-items: flex-start;
    gap: 16px;
    width: 100%;
    height: 120px;
    margin-top: 16px;
    padding: 16px 42px 12px 16px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    display: flex;
    position: relative
}

.captcha-placeholder__check {
    background: #fafafa;
    border: 2px solid #d3d3d3;
    border-radius: 2px;
    flex: 0 0 28px;
    width: 28px;
    height: 28px
}

.captcha-placeholder[aria-pressed=true] .captcha-placeholder__check {
    background: #0d4e96;
    border-color: #0d4e96;
    place-items: center;
    display: grid
}

.captcha-placeholder[aria-pressed=true] .captcha-placeholder__check:after {
    content: "✓";
    color: #fff;
    font-size: 18px;
    line-height: 1
}

.captcha-placeholder strong, .captcha-placeholder small, .captcha-placeholder em {
    display: block
}

.captcha-placeholder strong {
    margin-top: 1px;
    font-size: 14px
}

.captcha-placeholder small {
    margin-top: 7px;
    font-size: 12px
}

.captcha-placeholder em {
    color: #777;
    margin-top: 13px;
    font-size: 10px;
    font-style: normal
}

.captcha-placeholder__help {
    color: #555;
    border: 1px solid #777;
    border-radius: 50%;
    place-items: center;
    width: 18px;
    height: 18px;
    font-size: 11px;
    display: grid;
    position: absolute;
    bottom: 8px;
    right: 9px
}

.calc-form form > .btn {
    border-radius: 15px;
    width: 100%;
    height: 58px;
    margin-top: 5px;
    font-family: Manrope, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600
}

.calc-form__policy {
    color: #8c8c8c;
    text-align: center;
    margin-top: 10px;
    font-family: Manrope, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.3
}

.calc-form__buttons {
    margin: 13px -42px 0;
    display: flex
}

.calc-form__buttons button {
    color: #121212;
    text-align: left;
    background: #1515150d;
    border: 1px solid #1515154d;
    border-radius: 15px 0 0 15px;
    flex-grow: 1;
    justify-content: center;
    align-items: flex-start;
    gap: 6px;
    min-height: 55px;
    padding: 16px 12px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
    transition: color .25s ease-out, border-color .25s ease-out, background-color .25s ease-out;
    display: flex
}

.calc-form__buttons button + button {
    border-radius: 0 15px 15px 0;
    margin-left: -1px
}

.calc-form__buttons button > span {
    border: 1px solid;
    border-radius: 50%;
    flex: 0 0 21px;
    place-items: center;
    width: 21px;
    height: 21px;
    font-size: 12px;
    display: grid
}

.calc-form__buttons .calc-form__button-label {
    width: auto;
    height: auto;
    font-size: inherit;
    border: 0;
    border-radius: 0;
    flex: 0 auto;
    display: inline
}

.calc-form__buttons button:hover {
    color: #fff;
    background: #0d4e96;
    border-color: #0d4e96
}

.calc-form__buttons button:focus-visible {
    color: #fff;
    background: #0d4e96;
    border-color: #0d4e96
}

.advantages {
    z-index: 3;
    background: #fff;
    border: 1px solid #0000004d;
    padding: 36px 0 39px;
    position: relative
}

.advantages > .container {
    justify-content: space-between;
    align-items: center;
    display: flex
}

.advantages__item {
    align-items: center;
    max-width: 350px;
    display: flex
}

.advantages__icon {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    margin-right: 19px
}

.advantages__icon img {
    object-fit: contain;
    width: 100%;
    height: 100%
}

.advantages__item p {
    margin: 0;
    font-size: 16px;
    line-height: 1.3
}

.dialog {
    color: #121212;
    background: #fff;
    border: 0;
    border-radius: 15px;
    width: min(660px, 100% - 40px);
    padding: 0
}

.dialog::backdrop {
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    background: #12121280
}

.dialog__content {
    padding: 30px 40px
}

.dialog__close {
    z-index: 10;
    cursor: pointer;
    background: 0 0;
    border: 0;
    border-radius: 0;
    width: 28px;
    height: 28px;
    padding: 0;
    font-size: 0;
    position: absolute;
    top: 10px;
    right: 10px
}

.dialog__close:before, .dialog__close:after {
    content: "";
    background: #121212;
    width: 20px;
    height: 2px;
    transition: background-color .25s ease-out;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg)
}

.dialog__close:after {
    transform: translate(-50%, -50%) rotate(-45deg)
}

.dialog__close:hover:before, .dialog__close:hover:after {
    background: #0d4e96
}

.dialog--measurer .dialog__heading {
    color: #121212;
    letter-spacing: 0;
    margin: 0 0 24px;
    font-family: Days One, sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.3
}

.dialog__description {
    max-width: 310px;
    margin: 20px 0 0
}

.dialog--measurer .form {
    width: 100%;
    margin-top: 40px
}

.dialog--measurer .form > input {
    color: #121212;
    background: #f9f9f9;
    border: 1px solid #e6e6e6;
    border-radius: 15px;
    width: 100%;
    height: 58px;
    padding-left: 20px;
    font-family: ibmplexsans, sans-serif;
    font-size: 14px;
    line-height: 1.5
}

.dialog--measurer .form > input:not([type=hidden]) ~ input:not([type=hidden]) {
    margin-top: 16px
}

.dialog--measurer .captcha-placeholder {
    width: 100%;
    margin-top: 16px
}

.dialog--measurer .form > .btn {
    border-radius: 15px;
    width: 100%;
    height: 58px;
    margin-top: 5px;
    font-family: ibmplexsans, sans-serif;
    font-size: 14px;
    font-weight: 600
}

.dialog__policy {
    color: #8c8c8c;
    text-align: center;
    margin-top: 20px;
    font-family: Manrope, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.3
}

.dialog__policy p {
    margin: 0
}

.dialog__policy p + p {
    margin-top: 20px
}

.dialog--info {
    max-width: 550px
}

.dialog--info h2 {
    color: #121212;
    letter-spacing: 0;
    margin: 0;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3
}

.dialog--info p {
    color: #8c8c8c;
    margin: 10px 0 0;
    font-size: 16px;
    line-height: 1.3
}

.dialog--info .btn {
    margin-top: 20px;
    padding: 16px 24px;
}
.why-request__btn {
    color: #121212;
    text-align: left;
    flex-grow: 1;
    align-items: center;
    gap: 6px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
    transition: color .25s ease-out, border-color .25s ease-out, background-color .25s ease-out;
    display: flex;
    justify-content: center;
    min-height: 0;
    cursor: pointer;
    background: none;
    border: none;
    margin-top: 20px;
    padding: 10px 10px 10px 0;
}
.why-request__btn-icon {
    flex-basis: 24px;
    width: 24px;
    height: 24px;
    border: 1px solid;
    border-radius: 50%;
    place-items: center;
    font-size: 16px;
    display: grid;
}
.why-request__btn:hover {
    color: #0d4e96;
}
.dialog.dialog--process {
    overscroll-behavior: contain;
    background: 0 0;
    border-radius: 0;
    width: 100%;
    max-width: none;
    height: 100dvh;
    max-height: none;
    margin: 0;
    padding: 30px 0;
    overflow: hidden auto
}

.dialog-process__content {
    background: #fff;
    border-radius: 15px;
    width: min(660px, 100% - 40px);
    margin: 0 auto;
    padding: 30px 40px;
    position: relative
}

.dialog--process h2 {
    color: #121212;
    letter-spacing: 0;
    text-transform: none;
    max-width: none;
    margin: 0;
    padding: 0;
    font-family: Montserrat, Arial, sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3
}

.dialog-process__steps {
    margin: 30px 0 0;
    padding: 0;
    list-style: none
}

.dialog-process__steps li {
    color: #121212;
    margin: 0;
    padding: 0
}

.dialog-process__steps li + li {
    margin-top: 20px
}

.dialog-process__number {
    height: 36px;
    font-family: Days One, Montserrat, Arial, sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 36px;
    display: block
}

.dialog-process__steps h3 {
    color: #121212;
    margin: -6px 0 0;
    font-family: Manrope, Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 27px
}

.dialog-process__steps p {
    color: #121212;
    margin: 6px 0 0;
    font-size: 16px;
    line-height: 1.3
}

.dialog-process__consultation, .dialog-process__form-wrap {
    border: 1px solid #1212124d;
    margin-left: -40px;
    margin-right: -40px;
    padding: 30px 40px
}

.dialog-process__consultation {
    margin-top: 30px
}

.dialog-process__consultation h3 {
    color: #121212;
    margin: 0;
    font-family: Days One, Montserrat, Arial, sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.3
}

.dialog-process__consultation p {
    color: #121212;
    margin: 20px 0 0;
    font-size: 18px;
    line-height: 1.3
}

.dialog-process__form-wrap {
    margin-top: -2px
}

.dialog-process__form {
    flex-direction: column;
    display: flex
}

.dialog-process__form > input {
    color: #121212;
    background: #f9f9f9;
    border: 1px solid #e6e6e6;
    border-radius: 15px;
    width: 100%;
    height: 58px;
    padding: 0 20px;
    font-family: Manrope, Arial, sans-serif;
    font-size: 14px
}

.dialog-process__form > input ~ input {
    margin-top: 16px
}

.dialog-process__form .captcha-placeholder {
    height: 118px;
    margin-top: 16px
}

.dialog-process__form > .btn {
    text-transform: uppercase;
    border-radius: 15px;
    width: 100%;
    height: 58px;
    margin-top: 25px;
    font-family: Manrope, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600
}

.dialog-process__form .form-status:empty {
    display: none
}

.dialog-process__policy {
    color: #121212;
    text-align: left;
    margin: 15px 0 0;
    font-size: 16px;
    line-height: 1.3
}

.dialog.dialog--video {
    background: #000;
    width: min(1100px, 100% - 28px);
    max-width: 1100px;
    overflow: hidden
}

.circle-backgrounds {
    z-index: 0;
    pointer-events: none;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden
}

.circle-backgrounds .circle-backgrounds__container {
    width: 100%;
    max-width: 1200px;
    height: 100%;
    margin: 0 auto;
    padding: 0;
    position: relative
}

.circle-backgrounds__container > div {
    opacity: .8;
    width: 673px;
    height: 742px;
    position: absolute
}

.circle-backgrounds__container > div:before {
    content: "";
    background: radial-gradient(circle closest-side, #1121b280, #113eb280 20%, #86a7cb66 60%, #ffffff1a 90%, #fff0 100%);
    border-radius: 50%;
    width: 213.967%;
    height: 250%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.circle-backgrounds__container > div:first-child {
    opacity: .5;
    width: 673px;
    height: 673px;
    top: 40px;
    left: -406px
}

.circle-backgrounds__container > div:nth-child(2) {
    opacity: .15;
    width: 552px;
    height: 552px;
    top: 133px;
    left: -605px
}

.circle-backgrounds__container > div:nth-child(3) {
    opacity: .5;
    width: 673px;
    height: 673px;
    top: 107px;
    right: -282px
}

.circle-backgrounds__container > div:nth-child(4) {
    opacity: .15;
    width: 552px;
    height: 552px;
    top: 200px;
    right: -507px
}

.dialog--video .dialog__close:before, .dialog--video .dialog__close:after {
    background: #fff
}

@media (max-width: 1440px) {
    .container {
        max-width: none;
        padding-left: 70px;
        padding-right: 70px
    }

    .header__logo {
        left: 70px
    }

    .header__btns {
        margin-left: -15px
    }

    .header__btns .btn {
        margin-left: 15px;
        padding-left: 18px;
        padding-right: 18px
    }

    .header__phone-number {
        font-size: 20px
    }

    .heading-main {
        font-size: 36px
    }

    .cover__right-block .cover__bg {
        width: calc(100% + 70px)
    }
}

@media (max-width: 1200px) {
    #content {
        padding-top: 90px
    }

    .container {
        padding-left: 60px;
        padding-right: 60px
    }

    .header__top {
        background: #fff;
        border-bottom: 1px solid #121212;
        height: 90px
    }

    .header__logo {
        margin-right: 20px;
        position: relative;
        top: auto;
        left: auto
    }

    .header__logo img {
        width: 98px
    }

    .header__btns {
        display: none
    }

    .header__bottom {
        background: 0 0;
        height: 0
    }

    .header__schedule {
        margin-left: 0;
        margin-right: 40px
    }

    .header__phone, .header__mob-info {
        margin-left: auto
    }

    .header__phone {
        align-items: center;
        gap: 12px;
        display: flex
    }

    .header__contact-toggle {
        color: #0d4e96;
        cursor: pointer;
        background: 0 0;
        border: 0;
        width: 24px;
        height: 24px;
        padding: 0;
        display: block
    }

    .header__contact-toggle svg {
        width: 24px;
        height: 24px
    }

    .contacts-dd {
        width: 100%;
        position: fixed;
        top: 90px;
        left: 0
    }

    .header__phone-number svg {
        display: none
    }

    .header__socials {
        margin-right: 20px
    }

    .header__open-menu-btn {
        display: flex
    }

    .header__nav {
        background: #fff;
        margin: 0;
        padding: 30px 60px 60px;
        display: none;
        position: fixed;
        top: 90px;
        bottom: 0;
        left: 0;
        right: 0;
        overflow-y: auto
    }

    .header__nav.main-navigation--open {
        display: block
    }

    .header__nav > ul {
        flex-direction: column;
        align-items: stretch
    }

    .header__nav li {
        border-bottom: 1px solid #12121226
    }

    .header__nav-item {
        justify-content: space-between
    }

    .header__nav-item > a {
        flex-grow: 1;
        padding: 16px 0
    }

    .header__nav > ul > li > ul {
        opacity: 1;
        pointer-events: auto;
        border-radius: 0;
        width: 100%;
        max-height: 0;
        transition: max-height .3s ease-out;
        display: block;
        position: static;
        overflow: hidden;
        transform: none
    }

    .header__nav .dropdown.showed > ul {
        max-height: 420px;
        overflow-y: auto
    }

    .header__nav > ul > li > ul a {
        padding: 13px 20px;
        font-size: 16px
    }

    .cover > .container {
        flex-direction: column
    }

    .cover__left-block {
        width: auto;
        padding: 80px 0
    }

    .cover .slider-dots {
        margin-top: 60px;
        padding: 0 15px;
        position: relative;
        top: auto
    }

    .cover__right-block {
        width: auto;
        margin-top: 20px;
        padding: 150px 0
    }

    .cover__right-block .cover__bg {
        width: calc(100% + 140px);
        left: -70px
    }

    .calc-form {
        margin-left: 0
    }

    .calc-form form {
        margin-top: 30px
    }

    .advantages > .container {
        width: calc(100% + 20px);
        margin-top: -20px;
        margin-left: -10px;
        margin-right: -10px
    }

    .advantages__item {
        text-align: center;
        flex-direction: column;
        margin: 20px 10px 0
    }

    .advantages__icon {
        margin-bottom: 15px;
        margin-right: 0
    }
}

@media (max-width: 992px) {
    .header__schedule {
        display: none
    }

    .header__socials {
        min-width: 48px;
        margin-right: 0
    }

    .header__phone-number {
        white-space: nowrap
    }

    .calc-form__heading {
        font-size: 22px
    }

    .calc-form__buttons {
        margin-top: 40px
    }

    .cover__desc {
        font-size: 22px
    }

    .cover .slider-dots {
        margin-top: 50px;
        padding: 0 6vw
    }

    .advantages {
        padding: 30px 0
    }

    .advantages > .container {
        flex-direction: column;
        align-items: flex-start;
        width: auto;
        max-width: 500px;
        margin: 0 auto;
        padding: 0
    }

    .advantages__item {
        text-align: left;
        flex-direction: row;
        align-items: flex-start;
        margin: 20px 0 0
    }

    .advantages__icon {
        margin-bottom: 0;
        margin-right: 15px
    }
}

@media (max-width: 768px) {
    .header__phone-number {
        font-size: 13px
    }

    #content {
        padding-top: 72px
    }

    .header__top {
        height: 72px
    }

    .header__logo {
        margin-right: 10px
    }

    .header__logo img {
        width: 100px
    }

    .header__socials {
        gap: 8px;
        margin-right: 8px
    }

    .header__socials .social {
        width: 29px;
        height: 29px
    }

    .header__open-menu-btn {
        margin-left: 10px
    }

    .contacts-dd {
        max-height: calc(100vh - 72px);
        top: 72px;
        overflow-y: auto
    }

    .header__nav {
        padding-left: 60px;
        padding-right: 60px;
        top: 72px;
        bottom: 0;
        left: 0;
        right: 0
    }

    .cover__left-block {
        padding: 80px 0 30px
    }

    .cover--home .cover__left-block {
        padding: 60px 0 30px
    }

    .cover .slider-dots {
        margin-top: 30px;
        padding: 0
    }

    .heading-main {
        max-width: 500px;
        font-size: 28px
    }

    .cover__desc {
        font-size: 20px;
        line-height: 1.66
    }

    .calc-form {
        padding: 21px 54px 0
    }

    .calc-form__heading {
        text-align: center;
        font-size: 18px
    }

    .calc-form form, .calc-form__policy {
        margin-top: 15px
    }

    .calc-form__buttons {
        margin: 56px -54px 0
    }

    .calc-form__buttons button {
        justify-content: center;
        min-height: 0;
        padding: 16px 16px 16px 30px
    }

    .calc-form__buttons button:nth-child(2) {
        padding-right: 26px
    }

    .calc-form__buttons button > span:first-child {
        flex-basis: 16px;
        width: 16px;
        height: 16px
    }

    .advantages > .container {
        max-width: none;
        padding-left: 54px;
        padding-right: 54px
    }

    .circle-backgrounds__container > div:first-child {
        opacity: .7;
        left: -273px
    }

    .circle-backgrounds__container > div:nth-child(2) {
        opacity: .25;
        left: -472px
    }

    .circle-backgrounds__container > div:nth-child(3), .circle-backgrounds__container > div:nth-child(4) {
        display: none
    }
}

@media (max-width: 767px) {
    .header__phone-number-title, .header__phone-number {
        display: none
    }

    .header__phone-number-mob {
        color: #0d4e96;
        stroke: #0d4e96;
        flex-shrink: 0;
        width: 25px;
        height: 25px;
        display: block
    }

    .header__phone-number-mob svg {
        width: 25px;
        height: 25px
    }

    .header__phone-mob {
        text-align: right;
        display: block
    }
}

@media (max-width: 576px) {
    #content {
        padding-top: 60px
    }

    .container {
        padding-left: 24px;
        padding-right: 24px
    }

    .header__top {
        height: 60px
    }

    .header__logo {
        margin-right: 8px
    }

    .header__logo img {
        width: 80px
    }

    .header__socials {
        margin-right: 6px
    }

    .header__socials .social {
        width: 29px;
        height: 29px
    }

    .header__open-menu-btn {
        margin-left: 8px
    }

    .header__nav {
        padding: 24px;
        top: 60px;
        bottom: 0;
        left: 0;
        right: 0
    }

    .contacts-dd {
        max-height: calc(100vh - 60px);
        padding: 30px 54px;
        top: 60px;
        overflow-y: auto
    }

    .contacts-dd__address {
        border: 0;
        padding: 0
    }

    .contacts-dd__stations {
        flex-direction: column;
        margin-top: 20px
    }

    .contacts-dd__stations > div {
        width: 100%;
        padding: 20px 18px
    }

    .contacts-dd__schedule {
        border-top: 1px solid #1212124d;
        padding: 20px 18px
    }

    .contacts-dd__mail {
        margin-top: 30px;
        padding: 0
    }

    .contacts-dd__buttons {
        flex-direction: column;
        align-items: flex-start;
        margin-top: 10px;
        padding: 0
    }

    .contacts-dd__buttons .btn {
        margin: 10px 0 0
    }

    .cover__left-block, .cover--home .cover__left-block {
        padding: 40px 0 20px
    }

    .heading-main {
        font-size: 28px
    }

    .cover__desc {
        margin-top: 20px;
        font-size: 18px;
        line-height: 1.66
    }

    .cover__callback-btn {
        align-self: center;
        width: 100%;
        max-width: 320px;
        height: 58px;
        margin-top: 30px;
        padding: 0 10px
    }

    .cover .slider-dots {
        margin-top: 20px
    }

    .cover__right-block {
        margin-top: 20px;
        padding: 150px 0
    }

    .cover__right-block .cover__bg {
        width: calc(100% + 140px);
        left: -70px
    }

    .cover .calc-form {
        width: calc(100% + 106px);
        margin-left: -54px;
        margin-right: -54px
    }

    .calc-form {
        font-size: 18px
    }

    .calc-form__policy {
        font-size: 12px
    }

    .calc-form__buttons button {
        padding-left: 15px;
        font-size: 12px
    }

    .calc-form__buttons button:first-child {
        padding-left: 15px
    }

    .advantages {
        padding: 20px 0
    }

    .advantages > .container {
        padding-left: 24px;
        padding-right: 24px
    }

    .dialog {
        width: calc(100% - 30px)
    }

    .dialog__content {
        padding: 30px 20px
    }

    .dialog--measurer .dialog__heading, .dialog--info h2 {
        padding-right: 15px;
        font-size: 18px
    }

    .dialog--measurer .form {
        margin-top: 24px
    }

    .dialog.dialog--process {
        padding-block-start: 15px;
        padding-block-end: 15px
    }

    .dialog-process__content {
        width: calc(100% - 30px);
        padding: 30px 20px
    }

    .dialog--process h2 {
        max-width: calc(100% - 20px);
        font-size: 18px
    }

    .dialog-process__steps {
        margin-top: 24px
    }

    .dialog-process__number {
        height: 32px;
        font-size: 32px;
        line-height: 32px
    }

    .dialog-process__steps h3 {
        margin-top: -4px;
        line-height: 1.35
    }

    .dialog-process__consultation, .dialog-process__form-wrap {
        margin-left: -20px;
        margin-right: -20px;
        padding: 24px 20px
    }

    .dialog-process__consultation {
        margin-top: 24px
    }

    .dialog-process__consultation h3 {
        font-size: 20px
    }

    .dialog-process__consultation p {
        margin-top: 14px;
        font-size: 16px
    }

    .dialog-process__policy {
        font-size: 13px
    }
}

@media (max-width: 400px) {
    .container {
        padding-left: 15px;
        padding-right: 15px
    }

    .heading-main {
        font-size: 24px
    }

    .cover .calc-form {
        width: calc(100% + 30px);
        margin-left: -15px;
        margin-right: -15px;
        padding: 19px 15px 0
    }

    .captcha-placeholder {
        height: 118px
    }

    .calc-form__buttons {
        margin-left: -15px;
        margin-right: -15px
    }

    .advantages > .container {
        padding-left: 15px;
        padding-right: 15px
    }
}

@media (max-width: 370px) {
    .header__socials {
        display: none
    }

    .header__phone {
        margin-left: auto
    }

    .contacts-dd {
        padding: 30px 15px
    }
}

@font-face {
    font-family: P01 Tariff Manrope;
    src: url(/media/fonts/manrope-bold.woff2) format("woff2");
    font-style: normal;
    font-weight: 700;
    font-display: swap
}

body.page-fidelity[data-page-type=P01] .f-prices .f-price-card h3, body.page-fidelity[data-page-type=P01] .f-prices .f-price-card li {
    font-family: P01 Tariff Manrope, Manrope, Arial, sans-serif
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices {
    z-index: 1;
    background: #fff;
    height: auto;
    min-height: 0;
    padding: 100px 0 0;
    position: relative;
    margin: 0 !important
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices > .container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 100px;
    position: relative
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__icons {
    width: 0;
    height: 0;
    position: absolute;
    overflow: hidden
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-heading {
    color: #121212;
    letter-spacing: normal;
    text-wrap: wrap;
    width: auto;
    max-width: none;
    height: auto;
    margin: 50px 0 0;
    padding: 0;
    font: 400 42px/1.4 Days One, sans-serif;
    position: relative
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__head {
    justify-content: space-between;
    margin-top: 50px;
    display: flex
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__lead {
    color: #121212;
    width: auto;
    max-width: 520px;
    height: auto;
    margin: 0 0 0 20px;
    font: 400 18px/1.3 Manrope, sans-serif
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__grid {
    grid-template-rows:none;
    grid-template-columns:1fr 400px 1fr;
    gap: 0;
    width: auto;
    max-width: none;
    height: auto;
    margin: 70px 0 0;
    padding: 0;
    display: grid
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card {
    width: auto;
    max-width: none;
    height: 100%;
    min-height: 0;
    box-shadow: none;
    background: #fff;
    border: 1px solid #0000004d;
    flex-direction: column;
    margin: 0;
    padding: 0;
    display: flex;
    transform: none
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card:first-child {
    align-items: flex-end
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card:last-child {
    align-items: flex-start
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card__wrap {
    flex-direction: column;
    max-width: 400px;
    height: 100%;
    padding: 34px 20px 30px;
    display: flex
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card:first-child .f-price-card__wrap {
    padding-left: 0
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card:nth-child(2) .f-price-card__wrap {
    padding-right: 15px
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card:last-child .f-price-card__wrap {
    padding-right: 0
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card h3 {
    color: #252b42;
    letter-spacing: normal;
    width: 290px;
    min-height: 0;
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card__wrap > strong {
    color: #0d4e96;
    letter-spacing: .2px;
    flex-direction: column;
    margin-top: 15px;
    font: 400 40px/1.25 Manrope, sans-serif;
    display: flex
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card__wrap > span {
    color: #8c8c8c;
    letter-spacing: .2px;
    margin-top: 15px;
    font: 400 14px/1.71 Manrope, sans-serif
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card ul {
    -webkit-user-select: none;
    user-select: none;
    scrollbar-width: thin;
    flex: 0 auto;
    height: 200px;
    margin: 15px 0 auto -2px;
    padding: 0 4px 0 0;
    list-style: none;
    overflow-y: auto;
    transform: scaleX(-1)
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card li {
    color: #252b42;
    letter-spacing: .2px;
    text-align: left;
    align-items: normal;
    min-height: 0;
    margin: 0 0 0 4px;
    padding: 0;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.71;
    display: flex;
    position: relative;
    transform: scaleX(-1)
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card li + li {
    margin-top: 10px
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card li:before, body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card li:after {
    content: none
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card li > span {
    flex: 0 auto;
    min-width: 0;
    max-width: none;
    display: block
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card li > svg {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    margin-right: 10px
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-doc-link {
    color: #000;
    align-self: flex-start;
    align-items: center;
    gap: 10px;
    width: auto;
    height: auto;
    margin: 25px 0 auto;
    font: 400 16px/1.3 Manrope, sans-serif;
    -webkit-text-decoration: underline #0000;
    text-decoration: underline #0000;
    transition: -webkit-text-decoration .25s ease-out, text-decoration .25s ease-out;
    display: flex
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-doc-link:hover {
    color: #000;
    text-decoration: underline
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card .btn {
    color: #e1e1e1;
    letter-spacing: .2px;
    text-transform: none;
    background: #0d4e96;
    border: 1px solid #0d4e96;
    border-radius: 49px;
    align-self: flex-start;
    width: auto;
    height: 52px;
    min-height: 0;
    margin: 30px 0 0;
    padding: 6px 40px;
    font: 700 14px/1 Montserrat, sans-serif
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card .btn:hover, body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card .btn:focus, body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card .btn:active {
    color: #121212;
    background: #fdb813;
    border-color: #fdb813
}

@media (max-width: 1440px) {
    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices > .container {
        max-width: none;
        padding: 0 70px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-heading {
        font-size: 36px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__grid {
        grid-template-columns:repeat(3, 1fr);
        margin-inline-start: 70px;
        margin-inline-end: 70px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card:first-child .f-price-card__wrap {
        padding-left: 15px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card:last-child .f-price-card__wrap {
        padding-right: 15px
    }
}

@media (max-width: 1200px) {
    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices > .container {
        padding-inline-start: 60px;
        padding-inline-end: 60px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__head {
        flex-direction: column-reverse;
        margin-top: 30px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__lead {
        margin-left: 0
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__grid {
        grid-template-columns:repeat(3, minmax(0, 1fr));
        margin-inline-start: 60px;
        margin-inline-end: 60px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card, body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card__wrap {
        min-width: 0;
        max-width: 100%
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card h3 {
        max-width: 100%
    }
}

@media (max-width: 992px) {
    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__grid {
        grid-template-columns:1fr;
        margin-top: 50px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card {
        max-width: 460px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card:first-child {
        align-items: flex-start
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card__wrap {
        width: 100%;
        max-width: none
    }
}

@media (max-width: 768px) {
    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices {
        padding-top: 70px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-heading {
        font-size: 22px
    }
}

@media (max-width: 576px) {
    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices > .container {
        padding-inline-start: 24px;
        padding-inline-end: 24px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-heading {
        margin-top: 0;
        font-size: 18px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__lead {
        font-size: 16px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices__grid {
        margin: 40px 0 0
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card {
        align-items: flex-start;
        width: 100%;
        max-width: none
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-prices__grid .f-price-card .f-price-card__wrap {
        padding: 34px 54px 20px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card ul {
        height: 220px
    }

    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-price-card .btn {
        width: 100%;
        max-width: 320px;
        height: 58px;
        margin-top: 20px
    }
}

@media (max-width: 400px) {
    body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices > .container, body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-prices .f-prices__grid .f-price-card .f-price-card__wrap {
        padding-inline-start: 15px;
        padding-inline-end: 15px
    }
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-portfolio--home[data-projects-expanded=true] {
    height: auto;
    min-height: 0
}

body.page-fidelity.page-fidelity--home[data-page-type=P01] .f-portfolio__fallback {
    text-align: center;
    margin: 24px 0 0
}

/* End */


/* Start:/local/templates/nm_standard/components/bitrix/form.result.new/lead/style.css?17913841147082*/
/* Native Bitrix controls keep their names, values, validation and POST tokens.
 * Style the template's field wrappers instead of relying on form > input. */
.nm-standard-form { min-width: 0; width: 100%; }
.nm-standard-form .nm-standard-form__body:not(.p26-price-catalog__form) {
  display: block; width: 100%; margin: 0; padding: 0;
}
.nm-standard-form__caption.visually-hidden {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
}
.nm-standard-form:not(.nm-standard-form--price) .nm-standard-form__field {
  min-width: 0; margin: 0 0 16px;
}
.nm-standard-form:not(.nm-standard-form--price) .nm-standard-form__field > :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]), textarea, select) {
  box-sizing: border-box; display: block; width: 100%; max-width: 100%;
  color: #121212; font: 400 16px/1.3 Manrope, sans-serif;
  box-shadow: none; transition: border-color .25s ease-out;
}
.nm-standard-form.nm-standard-form--line .nm-standard-form__field > :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]), textarea, select) {
  height: 48px; padding: 14px 0 0; border: 0; border-bottom: 1px solid #121212;
  border-radius: 0; background: transparent;
}
.nm-standard-form.nm-standard-form--rounded .nm-standard-form__field > :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]), textarea, select) {
  height: 58px; padding: 0 20px; border: 1px solid #e6e6e6;
  border-radius: 15px; background: #f9f9f9; font-family: ibmplexsans, sans-serif; font-size: 14px;
}
.nm-standard-form .nm-standard-form__field > textarea { min-height: 100px; height: auto; padding-block: 14px; resize: vertical; }
.nm-standard-form[data-standard-form-id="2"] .nm-standard-form__field > textarea { min-height: 48px; height: 48px; padding: 14px 0 0; }
.nm-standard-form .nm-standard-form__field > :is(input, textarea)::placeholder { color: #8c8c8c; opacity: 1; }
.nm-standard-form .nm-standard-form__field > :is(input, textarea, select):focus-visible {
  border-color: #0d4e96; outline: 2px solid #0d4e96; outline-offset: 2px;
}
.nm-standard-form:not(.nm-standard-form--price) [data-standard-form-submit] {
  display: flex; align-items: center; justify-content: center; width: 100%;
  min-height: 42px; padding: 10px 20px; border: 1px solid #0d4e96; border-radius: 42px;
  background: #0d4e96; color: #fff; font: 600 14px/1.3 Manrope, sans-serif;
  transition: background-color .25s ease-out, border-color .25s ease-out;
}
.nm-standard-form.nm-standard-form--rounded [data-standard-form-submit] {
  min-height: 58px; border-radius: 15px; font-family: ibmplexsans, sans-serif;
}
.nm-standard-form [data-standard-form-submit]:not(:disabled):is(:hover, :focus-visible) {
  background: #063c75; border-color: #063c75;
}
.nm-standard-form [data-standard-form-submit]:disabled { cursor: not-allowed; }
.nm-standard-form .form-status { margin: 0 0 10px; font-size: 13px; line-height: 1.35; }
.nm-standard-form .form-status:empty, .nm-standard-form .smartcaptcha-slot:empty:not([data-sitekey]) { display: none; }
.nm-standard-form .smartcaptcha-slot[data-sitekey] { display: block; width: 320px; max-width: 100%; min-height: 80px; }
.nm-standard-form .smartcaptcha-slot { margin-bottom: 5px; }
.nm-standard-form .form-status[data-state=error] { color: #b3261e; }
/* The source prices form is an auto-sized flex item, not a full-column card.
 * Apply sizing to its outer box as well as the native Bitrix form wrapper. */
.p16p30-page:is([data-page-type="P25"], [data-page-type="P26"], [data-page-type="P30"]) .p26-price-catalog__measurer > .p26-price-catalog__form-box {
  width: auto;
  max-width: 100%;
  min-width: 0;
}
.p26-price-catalog__form-box > .nm-standard-form--price,
.p26-price-catalog__form-box > .nm-standard-form--price > form {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
}
.p26-price-catalog__form .nm-standard-form__field > input {
  color: #121212;
  letter-spacing: .2px;
}
.p26-price-catalog__form .nm-standard-form__field > input::placeholder {
  color: #737373;
}
.p16p30-page:is([data-page-type="P25"], [data-page-type="P26"], [data-page-type="P30"]) .p26-price-catalog__form [data-standard-form-submit] {
  margin-top: 10px;
  padding: 5.25px 14px;
  letter-spacing: .2px;
}
/* First-screen forms have rounded controls even on pages using line forms below. */
:is(.lead-form, .nm-landing-form, .nm-zhk-form, .calc-form) .nm-standard-form .nm-standard-form__field > input:not([type=hidden]) {
  height: 58px; min-height: 58px; padding: 0 20px; border: 1px solid #e6e6e6;
  border-radius: 15px; background: #f9f9f9; font: 400 14px/1.5 ibmplexsans, sans-serif;
}
:is(.lead-form, .nm-landing-form, .nm-zhk-form, .calc-form) .nm-standard-form [data-standard-form-submit],
.dialog--measurer .nm-standard-form--rounded [data-standard-form-submit] {
  height: 58px; min-height: 58px; margin-top: 5px; border-radius: 15px;
  font: 600 14px/1 ibmplexsans, sans-serif;
}
/* The old lead-form rule treated every span as a 20px circular icon. */
.lead-form__help button > span {
  display: block; flex: 1 1 auto; width: auto; height: auto; min-width: 0;
  border: 0; border-radius: 0; font: inherit;
}
.consultation-form .nm-standard-form--line .nm-standard-form__field > input { text-align: center; padding: 0; }
/* The source flex container centered its direct form. Bitrix adds an outer
 * full-width wrapper, so center the actual form inside it as well. */
.pt-page:is([data-page-type="P05"], [data-page-type="P06"], [data-page-type="P07"]) .nm-portfolio-source .ask-question .consultation-form > .nm-standard-form > form {
  margin-inline: auto;
}
@media (max-width: 576px) {
  .pt-page:is([data-page-type="P05"], [data-page-type="P06"], [data-page-type="P07"]) .nm-portfolio-source .ask-question .consultation-form > .nm-standard-form > form > .nm-standard-form__body {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.f-work__consultation .nm-standard-form { grid-column: 1 / 3; width: 760px; max-width: 100%; margin: 25px auto; }
.page-fidelity .f-work__consultation .nm-standard-form > form { display: block; width: 100%; margin: 0; }
.f-work__consultation .nm-standard-form .nm-standard-form__body {
  display: grid; grid-template-columns: 1fr 1fr auto; align-items: end; gap: 15px;
}
.f-work__consultation .nm-standard-form .nm-standard-form__field { margin-bottom: 0; }
.f-work__consultation .nm-standard-form .nm-standard-form__field > input { padding: 0 12px; }
.f-work__consultation .nm-standard-form [data-standard-form-submit] { grid-column: 3; grid-row: 1; min-height: 44px; }
.f-work__consultation .nm-standard-form :is(.smartcaptcha-slot, .form-status) { grid-column: 1 / -1; }
@media (max-width: 700px) {
  .f-work__consultation .nm-standard-form .nm-standard-form__body { grid-template-columns: 1fr; }
  .f-work__consultation .nm-standard-form [data-standard-form-submit] { grid-column: auto; grid-row: auto; }
}

/* End */


/* Start:/local/templates/nm_standard/animated-text.css?1791384114924*/
/* Keep the scroll-driven gradient inside the letters on estate pages too.
 * This shared template rule also applies when news.detail is served from cache. */
body.nm-zhk-source .nm-zhk-lower .animated-text > span {
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
/* The reused process button has portfolio attributes, not landing attributes. */
body.nm-zhk-source .nm-zhk-lower .anim-text-box--economy + .renovation-link {
    margin-top: 100px;
}
/* Leave space on the statement's own background before the white price block. */
body.nm-zhk-source .nm-zhk-lower .anim-text-box--guarantee {
    padding-bottom: 100px;
}
@media (max-width: 768px) {
    body.nm-zhk-source .nm-zhk-lower .anim-text-box--economy + .renovation-link {
        margin-top: 80px;
    }
    body.nm-zhk-source .nm-zhk-lower .anim-text-box--guarantee {
        padding-bottom: 80px;
    }
}

/* End */


/* Start:/local/templates/nm_standard/circle-backgrounds-layout.css?1791384114576*/
/* Decorative circles belong behind the page, never after the footer in flow. */
body:is(.p16p30-page, .pt-page) {
  position: relative;
}

body:is(.p16p30-page, .pt-page) > .circle-backgrounds {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
}

body:is(.p16p30-page, .pt-page) > .circle-backgrounds .circle-backgrounds__container {
  position: relative;
  height: 100%;
}

body:is(.p16p30-page, .pt-page) > .circle-backgrounds .circle-backgrounds__container > div {
  position: absolute;
}

/* End */


/* Start:/assets/standard-forms-ajax-20260925-v2.css?17913843151289*/
/* Confirmation replaces the native form without removing neighboring help. */
.nm-standard-form-complete-wrapper {
  box-sizing: border-box;
  display: flex !important;
  align-items: center;
  justify-content: center;
  grid-column: 1 / -1;
  width: 100%;
  min-height: 112px;
  height: auto !important;
  margin-inline: auto;
}
.nm-standard-form-success {
  box-sizing: border-box;
  width: 100%;
  padding: 30px 16px;
  color: #17191c;
  font: 700 clamp(18px, 2vw, 26px)/1.35 Manrope, sans-serif;
  text-align: center;
  outline: none;
}
.nm-standard-form-success:focus,
.nm-standard-form-success:focus-visible {
  outline: none !important;
}
.p16p30-review-submit__grid.nm-standard-form-complete {
  display: flex !important;
  justify-content: center;
}
.p16p30-review-submit__grid.nm-standard-form-complete > .nm-review-submit-form {
  width: 100%;
}
.p16p30-lead__inner.nm-standard-form-complete {
  display: flex !important;
  justify-content: center;
}
.p16p30-lead__inner.nm-standard-form-complete > .p16p30-form {
  width: 100%;
}
.nm-standard-form-complete.calc-form,
.nm-standard-form-complete.lead-form,
.nm-standard-form-complete.nm-zhk-form,
.nm-standard-form-complete.nm-landing-form,
.nm-standard-form-complete.p26-price-catalog__measurer {
  height: auto !important;
}

/* End */


/* Start:/local/templates/nm_standard/components/bitrix/news.detail/portfolio_director/dialog.css?17913841146921*/
/* Common footer dialog only. Dedicated landing/about dialogs retain their own
 * source styles. Native Bitrix fields, tokens and CAPTCHA lifecycle are unchanged. */
#director-dialog.nm-director-dialog {
  box-sizing: border-box;
  width: min(660px, calc(100% - 40px));
  max-width: 660px;
  max-height: calc(100% - 60px);
  margin: auto;
  padding: 0;
  border: 0;
  border-radius: 15px;
  background: #fff;
  color: #121212;
  overflow: auto;
  font: 400 16px/1.3 Manrope, sans-serif;
  text-align: left;
}

#director-dialog.nm-director-dialog > .modal-director {
  box-sizing: border-box;
  position: relative;
  width: 100%;
  padding: 30px 40px;
}

#director-dialog.nm-director-dialog .modal-director__heading {
  margin: 0;
  padding: 0 20px 0 0;
  color: #121212;
  font: 700 24px/1.3 Montserrat, sans-serif;
  letter-spacing: normal;
  text-transform: none;
}

#director-dialog.nm-director-dialog .modal-director__head {
  display: grid;
  grid-template-columns: 144px minmax(0, 1fr);
  column-gap: 13px;
  margin-top: 32px;
}

#director-dialog.nm-director-dialog .modal-director__avatar {
  box-sizing: border-box;
  grid-row: span 2;
  width: 144px;
  height: 144px;
  border: 1px solid #121212;
  border-radius: 50%;
  overflow: hidden;
}

#director-dialog.nm-director-dialog .modal-director__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#director-dialog.nm-director-dialog .modal-director__name {
  align-self: start;
  margin: 0;
  color: #121212;
  font: 700 18px/1.3 Manrope, sans-serif;
}

#director-dialog.nm-director-dialog .modal-director__desc {
  min-width: 0;
  margin-top: 10px;
  color: #121212;
  font: 400 16px/1.3 Manrope, sans-serif;
}

#director-dialog.nm-director-dialog .modal-director__desc p {
  margin: 0;
}

#director-dialog.nm-director-dialog .modal-director__desc p + p {
  margin-top: 10px;
}

#director-dialog.nm-director-dialog .modal-director__form-heading {
  max-width: 370px;
  margin: 36px 0 0;
  padding: 0;
  color: #3d3d3d;
  font: 700 18px/1.3 Manrope, sans-serif;
  letter-spacing: normal;
  text-transform: uppercase;
}

#director-dialog.nm-director-dialog .nm-standard-form {
  min-width: 0;
  width: 100%;
  max-width: none;
  margin: 0;
  text-align: left;
}

#director-dialog.nm-director-dialog .nm-standard-form > form {
  display: block;
  width: 100%;
  margin: 30px 0 0;
  padding: 0;
}

#director-dialog.nm-director-dialog .nm-standard-form .nm-standard-form__body {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}

#director-dialog.nm-director-dialog .nm-standard-form__field {
  min-width: 0;
  margin: 0 0 16px;
}

#director-dialog.nm-director-dialog .nm-standard-form__field + .nm-standard-form__field {
  margin-top: 10px;
}

#director-dialog.nm-director-dialog .nm-standard-form__field > :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]), textarea) {
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 100%;
  height: 48px;
  min-height: 48px;
  margin: 0;
  padding: 14px 0 0;
  border: 0;
  border-bottom: 1px solid #121212;
  border-radius: 0;
  background: transparent;
  color: #121212;
  font: 400 16px/1.3 Manrope, sans-serif;
  text-align: left;
  resize: none;
  box-shadow: none;
  transition: border-color .25s ease-out;
}

#director-dialog.nm-director-dialog .nm-standard-form__field > :is(input, textarea)::placeholder {
  color: #8c8c8c;
  opacity: 1;
}

#director-dialog.nm-director-dialog .nm-standard-form__field > :is(input, textarea):focus-visible {
  border-color: #0d4e96;
}

#director-dialog.nm-director-dialog .smartcaptcha-slot {
  max-width: 100%;
  margin-top: 15px;
}

#director-dialog.nm-director-dialog .nm-standard-form [data-standard-form-submit] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 42px;
  min-height: 42px;
  margin: 30px 0 0;
  padding: 0 20px;
  border: 1px solid #0d4e96;
  border-radius: 49px;
  background: #0d4e96;
  color: #e1e1e1;
  font: 600 14px/1 Manrope, sans-serif;
  text-transform: uppercase;
  transition: color .25s ease-out, background-color .25s ease-out, border-color .25s ease-out;
}

#director-dialog.nm-director-dialog .nm-standard-form [data-standard-form-submit]:not(:disabled):is(:hover, :focus-visible) {
  border-color: #fdb813;
  background: #fdb813;
  color: #121212;
}

#director-dialog.nm-director-dialog .modal-director__policy {
  margin-top: 20px;
  color: #8c8c8c;
  font: 400 14px/1.3 ibmplexsans, sans-serif;
  text-align: center;
}

#director-dialog.nm-director-dialog .modal-director__policy p {
  margin: 0;
}

#director-dialog.nm-director-dialog .modal-director__policy p + p {
  margin-top: 20px;
}

#director-dialog.nm-director-dialog .modal-director__policy a {
  color: inherit;
  text-decoration: underline;
}

#director-dialog.nm-director-dialog .dialog__close {
  position: absolute;
  z-index: 10;
  top: 10px;
  right: 10px;
  display: block;
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  font-size: 0;
  cursor: pointer;
}

#director-dialog.nm-director-dialog .dialog__close::before,
#director-dialog.nm-director-dialog .dialog__close::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 2px;
  background: #121212;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: background-color .25s ease-out;
}

#director-dialog.nm-director-dialog .dialog__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

#director-dialog.nm-director-dialog .dialog__close:is(:hover, :focus-visible)::before,
#director-dialog.nm-director-dialog .dialog__close:is(:hover, :focus-visible)::after {
  background: #0d4e96;
}

@media (max-width: 992px) {
  #director-dialog.nm-director-dialog .modal-director__heading {
    font-size: 22px;
  }
}

@media (max-width: 768px) {
  #director-dialog.nm-director-dialog .modal-director__head {
    display: flex;
    flex-direction: column;
    align-items: start;
    margin-top: 10px;
  }

  #director-dialog.nm-director-dialog .modal-director__name {
    margin-top: 10px;
  }

  #director-dialog.nm-director-dialog .modal-director__form-heading {
    margin-top: 10px;
  }

  #director-dialog.nm-director-dialog .nm-standard-form > form {
    margin-top: 13px;
  }
}

@media (max-width: 576px) {
  #director-dialog.nm-director-dialog {
    width: min(320px, calc(100% - 30px));
  }

  #director-dialog.nm-director-dialog > .modal-director {
    padding: 30px 20px;
  }

  #director-dialog.nm-director-dialog .modal-director__heading {
    font-size: 18px;
  }

  #director-dialog.nm-director-dialog .modal-director__name {
    font-size: 16px;
  }

  #director-dialog.nm-director-dialog .modal-director__policy {
    font-size: 10px;
  }

  #director-dialog.nm-director-dialog .modal-director__policy p + p {
    margin-top: 0;
  }
}

/* End */
/* /assets/nm-home-30721624e8a6f42717bd.css?1791574867279163 */
/* /assets/main-ClilvOqM.css?179156225159043 */
/* /local/templates/nm_standard/components/bitrix/form.result.new/lead/style.css?17913841147082 */
/* /local/templates/nm_standard/animated-text.css?1791384114924 */
/* /local/templates/nm_standard/circle-backgrounds-layout.css?1791384114576 */
/* /assets/standard-forms-ajax-20260925-v2.css?17913843151289 */
/* /local/templates/nm_standard/components/bitrix/news.detail/portfolio_director/dialog.css?17913841146921 */
