@import url('/assets/sevicep.min.css?v=800');

:root {
    --services-ink: #1c1f22;
    --services-paper: #f3f3ef;
    --services-white: #ffffff;
    --services-yellow: #ffdd00;
    --services-muted: #6d7074;
    --services-line: rgba(28, 31, 34, 0.16);
}

/* /services/ reuses the proven service-page and homepage components. */
.services-visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.services-page .services-reference-hero__lead {
    max-width: 760rem;
    margin: 34rem 0 64rem;
    font-family: "Roboto", sans-serif;
    font-size: 18rem;
    font-weight: 400;
    line-height: 1.5;
}

.services-page .services-reference-hero {
    min-height: 880rem;
    padding-top: calc(190rem + env(safe-area-inset-top, 0px));
    padding-bottom: 110rem;
}

.services-page .services-reference-hero .hero__title {
    max-width: 980rem;
}

.services-page .services-reference-hero .h1-title {
    display: inline;
    max-width: none;
    margin: 0;
    line-height: 1.04;
    background-position: 100% 0;
    animation: services-hero-title-fill 1.8s cubic-bezier(.22, 1, .36, 1) .25s forwards;
}

@keyframes services-hero-title-fill {
    to { background-position: 0 0; }
}

.services-page .services-reference-hero .hero__image {
    top: 160rem;
    right: 150rem;
    bottom: auto;
    width: var(--ui-hero-art-size, 560rem);
    height: var(--ui-hero-art-size, 560rem);
    max-width: none;
}

.services-page .services-reference-hero .hero__image img,
.services-page .services-reference-hero .hero__image video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.services-page .services-reference-hero .hero__features {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32rem;
    margin: 0 0 64rem;
}

.services-page .services-reference-catalog {
    background: #fff;
    padding-bottom: 110rem;
}

.services-page .services-reference-method {
    padding-top: 110rem;
}

.services-page .services-reference-method .cases__stack {
    list-style: none;
    padding-left: 0;
    gap: 180rem;
}

.services-page .services-reference-method .cases-item:nth-child(odd) {
    background: var(--bg-light);
}

.services-page .services-reference-method .cases-item:nth-child(even) {
    background: var(--pr-yellow);
}

.services-page .services-reference-method .cases-item__label {
    margin: 0;
}

.services-page .services-reference-industries .types__item {
    position: relative;
}

body:has(.services-reference-hero) .header--white.header--theme-light:not(.header--menu-open) .header__contacts-link,
body:has(.services-reference-hero) .header--white.header--theme-light:not(.header--menu-open) .logo__text,
body:has(.services-reference-hero) .header--white.header--theme-light:not(.header--menu-open) .menu__nav-link {
    color: var(--text);
}

body:has(.services-reference-hero) .header--white.header--theme-light:not(.header--menu-open) .header__icon-path {
    fill: var(--text);
}

body:has(.services-reference-hero) .header--white.header--theme-light:not(.header--menu-open) svg rect {
    fill: var(--text);
    stroke: var(--text);
}

body:has(.services-reference-hero) .header--white.header--theme-light:not(.header--menu-open) .logo__img,
body:has(.services-reference-hero) .header--white.header--theme-light:not(.header--menu-open) .logo__canvas {
    filter: none;
}

@media screen and (max-width: 1365px) {
    .services-page .services-reference-hero {
        min-height: 0;
        padding-top: calc(120rem + env(safe-area-inset-top, 0px));
        padding-bottom: 60rem;
    }

    .services-page .services-reference-hero .hero__title {
        max-width: 60%;
    }

    .services-page .services-reference-hero .h1-title {
        max-width: none;
    }

    .services-page .services-reference-hero__lead {
        max-width: 62%;
        margin: 20rem 0 48rem;
        font-size: 14rem;
        line-height: 1.45;
    }

    .services-page .services-reference-hero .hero__image {
        top: 135rem;
        right: 0;
        bottom: auto;
        width: var(--ui-hero-art-size-tablet, 260rem);
        height: var(--ui-hero-art-size-tablet, 260rem);
    }

    .services-page .services-reference-hero .hero__features {
        margin: 0 0 36rem;
    }

    .services-page .services-reference-catalog {
        padding-bottom: 60rem;
    }

    .services-page .services-reference-method {
        padding-top: 60rem;
    }

    .services-page .services-reference-method .cases__stack {
        gap: 0;
    }
}

@media screen and (max-width: 768px) {
    .services-page .services-reference-hero .hero__title,
    .services-page .services-reference-hero__lead {
        max-width: 100%;
    }

    .services-page .services-reference-hero .hero__image {
        position: relative;
        top: auto;
        right: auto;
        width: var(--ui-hero-art-size-mobile, 200px);
        height: var(--ui-hero-art-size-mobile, 200px);
        margin: 16rem auto 36rem;
    }

    .services-page .services-reference-hero .hero__features {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .services-page .services-reference-hero .h1-title {
        animation: none;
        background-position: 0 0;
    }
}

html {
    scroll-behavior: smooth;
}

.services-page {
    background: var(--services-paper);
    color: var(--services-ink);
    overflow: clip;
}

.services-page h1,
.services-page h2,
.services-page h3,
.services-page p {
    margin-top: 0;
}

.services-page a:focus-visible {
    outline: 3rem solid #2f80ed;
    outline-offset: 5rem;
}

.services-eyebrow {
    margin-bottom: 24rem;
    font-size: 18rem;
    font-weight: 700;
    line-height: 1.2;
}

.services-hero {
    position: relative;
    min-height: 900rem;
    padding: 190rem 0 95rem;
    background: var(--services-paper);
}

.services-hero__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.32fr) minmax(390rem, 0.68fr);
    align-items: center;
    gap: 64rem;
}

.services-hero__content {
    position: relative;
    z-index: 2;
    max-width: 900rem;
}

.services-hero__title {
    max-width: 980rem;
    margin-bottom: 34rem;
    font-size: clamp(58rem, 4.35vw, 84rem);
    font-weight: 800;
    line-height: 1.03;
    letter-spacing: -0.035em;
}

.services-hero__lead {
    max-width: 790rem;
    margin-bottom: 48rem;
    font-family: Roboto, Arial, sans-serif;
    font-size: 24rem;
    line-height: 1.42;
    color: #46494d;
}

.services-hero__points {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22rem;
    max-width: 860rem;
    margin-bottom: 48rem;
}

.services-hero__point {
    display: flex;
    align-items: center;
    gap: 13rem;
    min-width: 0;
}

.services-hero__point span {
    display: grid;
    flex: 0 0 48rem;
    width: 48rem;
    height: 48rem;
    place-items: center;
    border-radius: 50%;
    background: var(--services-ink);
    color: var(--services-yellow);
    font-size: 12rem;
    font-weight: 800;
}

.services-hero__point p {
    margin-bottom: 0;
    font-size: 15rem;
    line-height: 1.35;
}

.services-hero__actions,
.services-consult__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16rem;
}

.services-hero__visual {
    --hero-x: 0rem;
    --hero-y: 0rem;
    position: relative;
    z-index: 1;
    display: grid;
    width: min(540rem, 100%);
    aspect-ratio: 1;
    place-items: center;
    justify-self: end;
    transform: translate3d(var(--hero-x), var(--hero-y), 0);
    transition: transform 0.45s ease-out;
}

.services-hero__visual img {
    position: relative;
    z-index: 2;
    width: 108%;
    height: 108%;
    object-fit: contain;
    animation: services-float 6.5s ease-in-out infinite;
}

@keyframes services-float {
    0%, 100% { transform: translateY(0) rotate(-1deg); }
    50% { transform: translateY(-22rem) rotate(1deg); }
}

.services-catalog,
.services-industries,
.services-cases {
    padding: 132rem 0;
    background: var(--services-white);
}

.services-section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320rem, 0.58fr);
    column-gap: 80rem;
    align-items: end;
    margin-bottom: 70rem;
}

.services-section-head .services-eyebrow {
    grid-column: 1 / -1;
}

.services-section-head h2 {
    max-width: 1030rem;
    margin-bottom: 0;
    font-size: clamp(46rem, 4.15vw, 80rem);
    font-weight: 800;
    line-height: 1.02;
    letter-spacing: -0.04em;
}

.services-section-head > p:last-child {
    margin-bottom: 0;
    font-family: Roboto, Arial, sans-serif;
    font-size: 19rem;
    line-height: 1.48;
    color: var(--services-muted);
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32rem;
}

.service-direction {
    position: relative;
    display: flex;
    min-height: 620rem;
    flex-direction: column;
    border-radius: 36rem;
    background: var(--services-paper);
    isolation: isolate;
    overflow: hidden;
    transition: transform 0.35s ease;
}

.service-direction:hover {
    transform: translateY(-6rem);
}

.service-direction--light,
.service-direction--yellow,
.service-direction--dark {
    background: var(--services-paper);
    color: var(--services-ink);
}

.service-direction__top {
    position: static;
    display: flex;
    order: 2;
    flex: 1 1 275rem;
    align-items: flex-end;
    justify-content: center;
    min-height: 275rem;
    padding: 0 12rem 8rem;
    overflow: visible;
}

.service-direction__number {
    position: absolute;
    top: 35rem;
    left: 36rem;
    z-index: 2;
    font-size: 15rem;
    font-weight: 800;
}

.service-direction__top img,
.service-direction__top video {
    display: block;
    width: 88%;
    height: 310rem;
    object-fit: contain;
    mix-blend-mode: darken;
    filter: brightness(1.02);
    transition: transform 0.55s cubic-bezier(.2,.8,.2,1);
}

.service-direction:hover .service-direction__top img,
.service-direction:hover .service-direction__top video {
    transform: translateY(-6rem) scale(1.025);
}

.service-direction__body {
    display: flex;
    position: static;
    z-index: 2;
    order: 1;
    flex-direction: column;
    padding: 88rem 36rem 8rem;
}

.service-direction__body h3 {
    max-width: 330rem;
    margin-bottom: 18rem;
    font-size: 36rem;
    font-weight: 800;
    line-height: 1.04;
    letter-spacing: -0.035em;
}

.service-direction__body > p {
    margin-bottom: 0;
    font-family: Roboto, Arial, sans-serif;
    font-size: 17rem;
    line-height: 1.48;
    color: var(--services-muted);
}

.service-direction__body ul {
    display: none;
}

.service-direction__body li {
    position: relative;
    padding-left: 18rem;
    font-size: 14rem;
    line-height: 1.35;
}

.service-direction__body li::before {
    position: absolute;
    top: 0.55em;
    left: 0;
    width: 6rem;
    height: 6rem;
    border-radius: 50%;
    background: currentColor;
    content: "";
}

.service-direction__body > a {
    position: absolute;
    z-index: 4;
    inset: 0;
    font-size: 0;
}

.service-direction__body > a::before {
    position: absolute;
    top: -120rem;
    right: -120rem;
    width: 240rem;
    height: 240rem;
    border-radius: 50%;
    background: var(--services-yellow);
    opacity: 0;
    transform: scale(0.45);
    transition: opacity 0.35s ease, transform 0.45s cubic-bezier(.2,.8,.2,1);
    content: "";
}

.service-direction__body > a span {
    position: absolute;
    top: 38rem;
    right: 38rem;
    display: grid;
    width: 44rem;
    height: 44rem;
    place-items: center;
    color: var(--services-ink);
    font-size: 30rem;
    opacity: 0;
    transform: translate(-28rem, 28rem) scale(0.55);
    transition: opacity 0.3s ease 0.08s, transform 0.42s cubic-bezier(.2,.8,.2,1) 0.08s;
}

.service-direction:hover .service-direction__body > a::before,
.service-direction:focus-within .service-direction__body > a::before {
    opacity: 1;
    transform: scale(1);
}

.service-direction:hover .service-direction__body > a span {
    opacity: 1;
    transform: translate(0, 0) scale(1);
}

.service-direction:focus-within .service-direction__body > a span {
    opacity: 1;
    transform: translate(0, 0) scale(1);
}

.services-method,
.services-consult {
    padding: 132rem 0;
    background: var(--services-ink);
    color: var(--services-white);
}

.services-section-head--dark {
    display: block;
}

.services-section-head--dark h2 {
    max-width: 1150rem;
}

.services-method__steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.services-method__steps li {
    min-height: 310rem;
    padding: 28rem 30rem 36rem;
    border: 1rem solid rgba(255, 255, 255, 0.2);
    border-radius: 30rem;
    background: rgba(255, 255, 255, 0.035);
}

.services-method__steps span { color: var(--services-yellow); font-size: 13rem; font-weight: 800; }
.services-method__steps h3 { margin: 100rem 0 18rem; font-size: 25rem; line-height: 1.1; }
.services-method__steps p { margin-bottom: 0; font-family: Roboto, Arial, sans-serif; font-size: 16rem; line-height: 1.5; color: rgba(255,255,255,.68); }

.services-industries {
    background: var(--services-paper);
}

.services-industries__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18rem;
}

.services-industries__grid > div,
.services-industries__grid > a {
    display: block;
    min-height: 340rem;
    padding: 30rem;
    border: 1rem solid var(--services-line);
    border-radius: 30rem;
    background: rgba(255, 255, 255, 0.48);
}

.services-industries__grid span { font-size: 13rem; font-weight: 800; color: var(--services-muted); }
.services-industries__grid h3 { margin: 140rem 0 18rem; font-size: 27rem; line-height: 1.1; }
.services-industries__grid p { margin-bottom: 0; font-family: Roboto, Arial, sans-serif; font-size: 16rem; line-height: 1.5; color: var(--services-muted); }

.services-section-head--row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 40rem;
}

.services-section-head--row .services-eyebrow { margin-bottom: 24rem; }

.services-cases__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24rem;
}

.services-cases__grid > a {
    position: relative;
    min-height: 500rem;
    border-radius: 32rem;
    overflow: hidden;
    background: var(--services-ink);
    color: var(--services-white);
}

.services-cases__grid img {
    width: 100%;
    height: 100%;
    min-height: 500rem;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(.2,.8,.2,1), opacity 0.5s ease;
}

.services-cases__grid > a:hover img { transform: scale(1.045); opacity: .82; }

.services-cases__grid > a > div {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 80rem 30rem 28rem;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.78));
}

.services-cases__grid h3 { margin-bottom: 8rem; font-size: 30rem; }
.services-cases__grid p { margin-bottom: 0; font-size: 14rem; color: rgba(255,255,255,.76); }

.services-consult__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(360rem, 0.72fr);
    gap: 100rem;
    align-items: start;
}

.services-consult h2 {
    max-width: 950rem;
    margin-bottom: 0;
    font-size: clamp(50rem, 4.7vw, 90rem);
    line-height: 1;
    letter-spacing: -0.04em;
}

.services-consult__content > p {
    margin: 8rem 0 34rem;
    font-family: Roboto, Arial, sans-serif;
    font-size: 20rem;
    line-height: 1.55;
    color: rgba(255,255,255,.7);
}

.services-consult-form {
    display: grid;
    gap: 22rem;
}

.services-consult-form__row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14rem;
}

.services-consult-form__field {
    display: grid;
    gap: 9rem;
    font-family: Roboto, Arial, sans-serif;
    font-size: 13rem;
    line-height: 1.3;
    color: rgba(255,255,255,.62);
}

.services-consult-form__field input,
.services-consult-form__field textarea {
    width: 100%;
    border: 1rem solid rgba(255,255,255,.2);
    border-radius: 18rem;
    outline: 0;
    background: rgba(255,255,255,.055);
    color: var(--services-white);
    font-family: Roboto, Arial, sans-serif;
    font-size: 17rem;
    transition: border-color .25s ease, background-color .25s ease;
}

.services-consult-form__field input {
    min-height: 58rem;
    padding: 0 18rem;
}

.services-consult-form__field textarea {
    min-height: 132rem;
    padding: 16rem 18rem;
    resize: vertical;
}

.services-consult-form__field input::placeholder,
.services-consult-form__field textarea::placeholder {
    color: rgba(255,255,255,.38);
}

.services-consult-form__field input:focus,
.services-consult-form__field textarea:focus {
    border-color: var(--services-yellow);
    background: rgba(255,255,255,.085);
}

.services-consult-form__consent {
    display: flex;
    align-items: flex-start;
    gap: 11rem;
    font-family: Roboto, Arial, sans-serif;
    font-size: 12rem;
    line-height: 1.45;
    color: rgba(255,255,255,.5);
}

.services-consult-form__consent input {
    flex: 0 0 18rem;
    width: 18rem;
    height: 18rem;
    margin: 1rem 0 0;
    accent-color: var(--services-yellow);
}

.services-consult-form__consent a,
.services-consult-form__phone a {
    color: var(--services-white);
    text-decoration: underline;
    text-underline-offset: 3rem;
}

.services-consult-form__footer {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18rem 24rem;
}

.services-consult-form__phone,
.services-consult-form__status {
    margin: 0;
    font-family: Roboto, Arial, sans-serif;
    line-height: 1.45;
}

.services-consult-form__phone {
    font-size: 14rem;
    color: rgba(255,255,255,.55);
}

.services-consult-form__status {
    min-height: 22rem;
    font-size: 14rem;
    color: rgba(255,255,255,.75);
}

.services-consult .btn {
    background: var(--services-yellow);
    color: var(--services-ink);
}

.services-consult-form__submit {
    margin: 0 !important;
}

.services-consult-form__submit:disabled {
    opacity: .45;
    cursor: not-allowed;
}

.services-motion-ready [data-reveal] {
    opacity: 0;
    transform: translateY(34rem);
    transition: opacity .75s ease, transform .75s cubic-bezier(.2,.8,.2,1);
}

.services-motion-ready [data-reveal].is-visible {
    opacity: 1;
    transform: translateY(0);
}

.services-project-form__title {
    margin-bottom: 58rem;
    text-transform: uppercase;
}

.services-project-form {
    display: grid;
    gap: 34rem;
    width: 100%;
}

.services-project-form .contact-form__group {
    margin: 0;
}

.services-project-form__methods {
    display: flex;
    flex-wrap: wrap;
    gap: 8rem;
    margin: -8rem 0 24rem;
    padding: 0;
    border: 0;
}

.services-project-form__methods legend {
    width: 100%;
    margin-bottom: 10rem;
    font-family: Roboto, Arial, sans-serif;
    font-size: 14rem;
    color: var(--services-muted);
}

.services-project-form__methods input {
    position: absolute;
    width: 1rem;
    height: 1rem;
    opacity: 0;
    pointer-events: none;
}

.services-project-form__methods span {
    display: block;
    padding: 10rem 14rem;
    border: 1rem solid rgba(28, 31, 34, 0.14);
    border-radius: 999rem;
    background: #fff;
    font-size: 12rem;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
    transition: background-color .25s ease, border-color .25s ease;
}

.services-project-form__methods input:checked + span {
    border-color: var(--services-yellow);
    background: var(--services-yellow);
}

.services-project-form__methods input:focus-visible + span {
    outline: 3rem solid #2f80ed;
    outline-offset: 3rem;
}

.services-project-form__submit {
    justify-self: start;
    min-width: 250rem;
    margin: 0 !important;
    gap: 10rem;
}

.services-project-form__submit:disabled {
    background: #8f9193;
    color: #fff;
    cursor: not-allowed;
}

.services-project-form__consent {
    display: flex;
    align-items: flex-start;
    gap: 12rem;
    font-family: Roboto, Arial, sans-serif;
    font-size: 13rem;
    line-height: 1.45;
    color: var(--services-muted);
}

.services-project-form__consent input {
    flex: 0 0 20rem;
    width: 20rem;
    height: 20rem;
    margin: 1rem 0 0;
    accent-color: var(--services-yellow);
}

.services-project-form__consent a {
    color: var(--services-ink);
    text-decoration: underline;
    text-underline-offset: 2rem;
}

.services-project-form__status {
    min-height: 24rem;
    margin: -10rem 0 0;
    font-family: Roboto, Arial, sans-serif;
    font-size: 15rem;
    line-height: 1.45;
}

@media (max-width: 1365px) {
    .services-hero { min-height: 780rem; }
    .services-hero__layout { grid-template-columns: minmax(0, 1fr) minmax(360rem, .72fr); gap: 40rem; }
    .service-direction { min-height: 570rem; }
    .service-direction__body h3 { font-size: 31rem; }
    .service-direction__top img, .service-direction__top video { height: 280rem; }
}

@media (max-width: 900px) {
    .services-hero {
        min-height: auto;
        padding: 130rem 0 72rem;
    }

    .services-hero__layout,
    .services-section-head,
    .services-consult__layout {
        grid-template-columns: 1fr;
    }

    .services-hero__visual {
        width: min(520rem, 90vw);
        margin: 12rem auto 0;
        justify-self: center;
    }

    .services-section-head { align-items: start; }
    .services-section-head > p:last-child { max-width: 680rem; margin-top: 28rem; }
    .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .services-method__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .services-industries__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .services-cases__grid { grid-template-columns: 1fr; }
    .services-cases__grid > a, .services-cases__grid img { min-height: 620rem; }
    .services-consult__layout { gap: 10rem; }
}

@media (max-width: 700px) {
    .services-grid { grid-template-columns: 1fr; }
}

@media (max-width: 450px) {
    .services-eyebrow { margin-bottom: 18rem; font-size: 16rem; }
    .services-hero { padding: 112rem 0 54rem; }
    .services-hero__title { margin-bottom: 24rem; font-size: 46rem; line-height: 1.02; }
    .services-hero__lead { margin-bottom: 30rem; font-size: 18rem; }
    .services-hero__points { grid-template-columns: 1fr; gap: 12rem; margin-bottom: 30rem; }
    .services-hero__point p { font-size: 14rem; }
    .services-hero__actions { align-items: stretch; flex-direction: column; }
    .services-hero__actions .btn { width: 100%; text-align: center; }
    .services-hero__visual { width: 116%; margin-left: -8%; }
    .services-catalog, .services-industries, .services-cases, .services-method, .services-consult { padding: 82rem 0; }
    .services-section-head { margin-bottom: 42rem; }
    .services-section-head h2, .services-consult h2 { font-size: 40rem; line-height: 1.04; }
    .services-section-head > p:last-child { font-size: 17rem; }
    .services-grid { gap: 18rem; }
    .service-direction { min-height: 545rem; border-radius: 28rem; }
    .service-direction__number { top: 28rem; left: 25rem; }
    .service-direction__top { min-height: 245rem; padding: 0 12rem 5rem; }
    .service-direction__top img, .service-direction__top video { width: 94%; height: 260rem; }
    .service-direction__body { padding: 76rem 25rem 4rem; }
    .service-direction__body h3 { font-size: 30rem; }
    .service-direction__body > p { font-size: 16rem; }
    .service-direction__body > a::before { top: -90rem; right: -90rem; width: 180rem; height: 180rem; }
    .service-direction__body > a span { top: 26rem; right: 26rem; width: 36rem; height: 36rem; font-size: 25rem; }
    .services-method__steps { grid-template-columns: 1fr; }
    .services-method__steps li, .services-method__steps li:nth-child(3) { min-height: 250rem; }
    .services-method__steps h3 { margin-top: 70rem; }
    .services-industries__grid { grid-template-columns: 1fr; }
.services-industries__grid > div, .services-industries__grid > a { min-height: 270rem; }
    .services-industries__grid h3 { margin-top: 92rem; }
    .services-section-head--row { align-items: flex-start; flex-direction: column; }
    .services-cases__grid > a, .services-cases__grid img { min-height: 390rem; }
    .services-consult__content > p { margin-top: 30rem; font-size: 18rem; }
    .services-consult-form__row { grid-template-columns: 1fr; }
    .services-consult-form__footer { align-items: flex-start; flex-direction: column; }
    .services-consult-form__submit { width: 100%; }
    .services-project-form__title { margin-bottom: 42rem; font-size: 38rem; }
    .services-project-form { gap: 30rem; }
    .services-project-form__methods { margin-bottom: 12rem; }
    .services-project-form__methods span { padding: 9rem 12rem; font-size: 11rem; }
    .services-project-form__submit { width: 100%; min-width: 0; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .services-hero__visual img { animation: none; }
    .services-motion-ready [data-reveal] { opacity: 1; transform: none; transition: none; }
    .service-direction, .service-direction__top img, .service-direction__top video, .service-direction__body > a::before, .service-direction__body > a span, .services-cases__grid img { transition: none; }
}

@media (hover: none) {
    .service-direction__body > a::before {
        opacity: 1;
        transform: scale(1);
    }

    .service-direction__body > a span {
        opacity: 1;
        transform: translate(0, 0) scale(1);
    }
}
