@use "mixins" as *; @use "config" as *; *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } :focus { outline: none; } :focus-visible { outline: 2px solid var(--color-red); outline-offset: -2px; } ::placeholder { color: #8b8f9b; } ::selection { background-color: var(--color-red); color: #fff; } @keyframes fade-in { from { opacity: 0; } to { opacity: 1; } } html { height: 100%; scroll-behavior: smooth; } body { position: relative; display: flex; flex-direction: column; min-width: 375px; min-height: 100%; overflow-x: hidden; font-family: "Onest"; font-size: 20px; line-height: 1.5; font-weight: normal; letter-spacing: -0.01em; color: var(--color-text); text-decoration-skip-ink: none; -webkit-tap-highlight-color: transparent; } @include media-max($md) { body { font-size: 18px; } } @include media-max($sm) { body { font-size: 15px; } } main { display: flex; flex-direction: column; flex-grow: 1; } fieldset { border: none; } input, textarea { font: inherit; color: inherit; border: none; background: none; box-shadow: none; appearance: none; } input { &::-webkit-contacts-auto-fill-button, &::-webkit-credentials-auto-fill-button, &::-webkit-outer-spin-button, &::-webkit-inner-spin-button { position: absolute; visibility: hidden; &[type=number] { -moz-appearance: textfield; } } } .inputs { input, textarea { width: 100%; outline: none; font-size: 18px; line-height: 1.3; border-radius: 10px; background-color: #fff; border: 1px solid #efefef; &:focus { border-color: #ccc; } } input { height: 64px; padding: 0 20px; } textarea { width: 120px; padding: 15px 20px; resize: none; } } @include media-max($lg) { .inputs { input { height: 60px; } } } @include media-max($md) { .inputs { input { height: 56px; } } } @include media-max($sm) { .inputs { input, textarea { font-size: 15px; } input { height: 50px; } } } .file-field { position: relative; display: inline-flex; &__label { display: inline-flex; align-items: center; height: 45px; padding-inline: 15px; font-size: 16px; line-height: 1.2; color: var(--color-dark); border-radius: 100px; background-color: #ececf1; cursor: pointer; transition: background-color 0.25s ease; &::before { content: ''; display: block; width: 24px; aspect-ratio: 1; flex-shrink: 0; background: var(--icon-clip) center no-repeat; background-size: contain; } &:hover { background-color: #cacdd9; } } &__text { margin-left: 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } &__input { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); &:focus-visible { + .file-field__label { outline: 2px solid var(--color-red); } } } } @include media-max($sm) { .file-field { &__label { height: 40px; font-size: 13px; } } } button { font: inherit; border: none; background: none; appearance: none; } img { display: block; max-width: 100%; max-height: 100%; height: auto; } a { text-decoration: none; } ul, ol { list-style-type: none; } h1 { font-size: var(--fs-h1-sm); line-height: 1.1; font-weight: 700; color: var(--color-dark); } h2 { font-size: var(--fs-h2-lg); line-height: 1.1; font-weight: 700; color: var(--color-dark); } h3 { font-size: var(--fs-h3-lg); line-height: 1.1; font-weight: 700; color: var(--color-dark); } h4 { font-size: var(--fs-h3-lg); line-height: 1.1; font-weight: 700; color: var(--color-dark); } .container { max-width: 1360px; width: 100%; margin: 0 auto; padding: 0 40px; } @include media-max($xl) { .container { padding: 0 20px; } } @include media-max($sm) { .container { padding: 0 15px; } } .section { &-title { margin-bottom: 30px; text-align: center; span { color: var(--color-red); } } &-descr { margin-bottom: 50px; text-align: center; } } @include media-max($lg) { .section { &-descr { margin-bottom: 45px; } } } @include media-max($md) { .section { &-title { margin-bottom: 25px; text-align: center; } &-descr { margin-bottom: 40px; text-align: center; } } } @include media-max($sm) { .section { &-title { margin-bottom: 15px; text-align: center; } &-descr { margin-bottom: 25px; text-align: center; line-height: 1.3; } } } .page { &-title { margin-bottom: 50px; text-align: center; } } @include media-max($md) { .page { &-title { margin-bottom: 40px; } } } @include media-max($sm) { .page { &-title { margin-bottom: 30px; } } } .btn { position: relative; display: inline-flex; justify-content: center; align-items: center; border-radius: 100px; font-size: 18px; line-height: 1.2; text-align: center; overflow: hidden; cursor: pointer; color: var(--color-text); transition-property: color, background-color, border-color; transition-duration: 0.25s; transition-timing-function: ease; &--lg { height: 64px; padding: 0 30px; font-size: 20px; } &--md { height: 58px; padding: 0 25px; } &--sm { height: 50px; padding: 0 25px; } &--red { color: #fff; background-color: var(--color-red); &:hover { background-color: var(--color-red-dark); } } &--transp-red { color: var(--color-red); border: 1px solid rgba(174, 0, 27, 0.5); &:hover { color: #fff; border-color: var(--color-red); background-color: var(--color-red); } } } @include media-max($lg) { .btn { &--lg { height: 60px; } &--md { height: 54px; } } } @include media-max($md) { .btn { font-size: 16px; &--lg { padding: 0 25px; height: 56px; font-size: 18px; } &--md { height: 50px; } } } @include media-max($sm) { .btn { font-size: 15px; &--lg { height: 50px; padding: 0 20px; font-size: 16px; } &--md, &--sm { height: 44px; padding: 0 20px; } } } .breadcrumbs { margin-top: 125px; margin-bottom: fluid-clamp(20px, 65px); &__inner { overflow-x: auto; scrollbar-width: none; &::-webkit-scrollbar { display: none; } } &__list { display: flex; width: max-content; } &__item { display: flex; align-items: center; font-size: 14px; line-height: 1.2; &::after { content: ''; display: block; width: 0.6em; aspect-ratio: 1; margin-inline: 0.5em; transform: rotate(180deg); mask: var(--icon-angle-left) center no-repeat; -webkit-mask: var(--icon-angle-left) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: #c7c7c7; } &.is-active { &::after { display: none; } span { color: var(--color-text); cursor: default; } } } &__link { padding-block: 5px; white-space: nowrap; color: #a0a0a0; transition: color 0.25s ease; } + section { margin-top: 0; } } @include media-max($xl) { .breadcrumbs { margin-top: fluid-clamp(65px, 105px); &__inner { margin-inline: -20px; padding-inline: 20px; } } } @include media-max($sm) { .breadcrumbs { &__inner { margin-inline: -15px; padding-inline: 15px; } &__item { font-size: 12px; } } } @media (hover: hover) { .breadcrumbs { &__link[href]:hover { color: var(--color-text); } } } .single-article .breadcrumbs, .single-news .breadcrumbs { margin-bottom: 0; } .visually-hidden { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; } .swiper { &-slide { min-width: 0; height: auto; } &-pagination { position: relative; display: flex; max-width: 100%; width: min-content; height: 10px; z-index: 2; column-gap: 12px; margin: 40px auto 0; overflow: hidden; &-item { height: 100%; aspect-ratio: 1; cursor: pointer; border-radius: 50%; background-color: #d9d9d9; transition: background-color 0.25s ease; &.is-active { background-color: var(--color-red); } } &-lock { display: none; } } } @include media-max($xl) { .swiper { &:not(.swiper-fade, .swiper-full) { margin: 0 -20px; padding: 0 20px; .swiper-wrapper.is-grid { column-gap: 20px; } } } } @include media-max($sm) { .swiper { &:not(.swiper-fade, .swiper-full) { margin: 0 -15px; padding: 0 15px; .swiper-wrapper.is-grid { column-gap: 15px; } } &-pagination { margin-top: 30px; } } } .fancybox { &__slide { &.has-html { padding: 15px; } } } .form-fancybox { .f-html { opacity: 0; transform: translate3d(0, -50%, 0); transition: transform 0.3s ease, opacity 0.3s ease; &.is-visible { opacity: 1; transform: translate3d(0, 0, 0); } &.is-hidden { opacity: 0; transform: translate3d(0, -50%, 0); } &.is-replacing { opacity: 0; transform: translate3d(0, 0, 0); transition: none; } &.is-replaced:not(.is-hidden) { transform: translate3d(0, 0, 0); } &.is-replaced.is-hidden { opacity: 0; transform: translate3d(0, -50%, 0); } } } .popups { display: none; } .popup { position: relative; max-width: 520px; width: 100%; padding-top: fluid-clamp(25px, 50px); padding-bottom: fluid-clamp(30px, 60px); padding-inline: fluid-clamp(20px, 45px); cursor: default; border-radius: var(--radius-md); &-title { font-size: var(--fs-h3-lg); line-height: 1.1; font-weight: 700; text-align: center; color: var(--color-dark); } &-message { &__info { margin-top: fluid-clamp(15px, 25px); line-height: 1.3; text-align: center; color: var(--color-text); } &__ok { margin-top: fluid-clamp(25px, 40px); text-align: center; &-btn { width: 165px; } } } &-close { position: absolute; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; top: 15px; right: 15px; cursor: pointer; mask: var(--icon-close) center no-repeat; -webkit-mask: var(--icon-close) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: var(--color-grey-dark); transition: background-color 0.25s ease; &:hover { background-color: var(--color-red); } } } @include media-max($lg) { .popup { max-width: 480px; } } @include media-max($md) { .popup { &-close { width: 24px; height: 24px; top: 10px; right: 10px; } } } @include media-max($sm) { .popup { &-message { &__ok-btn { width: 140px; } } } } .header { &-main { position: fixed; top: 20px; left: 0; right: 0; z-index: 20; padding-right: var(--f-scrollbar-compensate, 0px); &__body { display: grid; grid-auto-flow: column; align-items: center; justify-content: space-between; column-gap: 25px; padding: 10px 10px 10px 20px; border-radius: 100px; border: 1px solid #f0f0f0; background-color: #fff; } } &-logo { flex-shrink: 0; &__link { display: block; padding-top: 5px; img { width: 122px; } } } &-menu { &__item { position: relative; min-width: 0; font-size: 18px; line-height: 1.2; } &__link { display: block; padding: 10px 0; color: var(--color-text); transition: color 0.25s ease; &:not([href]) { cursor: default; } } &__submenu-toggle { display: none; } &__submenu { opacity: 0; visibility: hidden; li { font-size: 16px; } a { padding: 8px 0; } } } &-buttons { display: grid; grid-auto-flow: column; align-items: center; column-gap: 30px; &__login-btn { padding: 10px 0; border-radius: 0; &::before { content: ''; display: block; width: 1.1em; height: 1.1em; margin: 0 4px 0.1em 0; mask: var(--icon-user) center no-repeat; -webkit-mask: var(--icon-user) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: var(--color-text); transition: background-color 0.25s ease; } &:hover { color: var(--color-red); &::before { background-color: var(--color-red); } } } &__download-btn { height: 50px; padding: 0 25px; } &__menu-btn { display: none; align-content: center; row-gap: 13%; width: 44px; aspect-ratio: 1; border-radius: 50%; border: 1px solid #eee; transition: row-gap 0.25s ease; span, &::before, &::after { content: ''; display: block; width: 55%; height: 1.5px; margin: 0 auto; border-radius: 10px; transform: translateY(50%); background-color: #535369; transition: all 0.25s ease; } &::after { transform: translateY(50%) scaleX(65%); transform-origin: 0 50%; } &.is-active { row-gap: 0; span { width: 0; background-color: transparent; } &::before { transform: rotate(45deg) translate(1px, 1px); } &::after { transform: rotate(-45deg) translate(1px, -1px); transform-origin: 50% 50%; } } } } &-dropdown { position: fixed; display: none; align-items: unset; height: 100%; top: 0; left: 0; right: 0; z-index: 10; padding: 120px 0 40px; overflow-x: hidden; overflow-y: auto; transform: translateY(-100%); background-color: #fff; transition: transform 0.4s ease-in-out; &.is-active { transform: translateY(0); } } &-login__btn { width: 100%; color: var(--color-grey-text); background-color: #f4f5fc; &::before { content: ''; display: block; width: 1.1em; height: 1.1em; margin: 0 4px 0.1em 0; mask: var(--icon-user) center no-repeat; -webkit-mask: var(--icon-user) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: var(--color-grey-text); transition: background-color 0.25s ease; } &:hover { background-color: #ebecf2; } } } @include media-min($lg) { .header-menu { &__list { display: grid; align-items: center; grid-auto-flow: column; column-gap: 30px; > li { &.has-children { &::after { content: ''; position: absolute; display: block; width: 10px; height: 10px; right: 0; top: 0; bottom: 0; margin: auto 0; pointer-events: none; mask: var(--icon-angle-down) center no-repeat; -webkit-mask: var(--icon-angle-down) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: var(--color-text); transition: background-color 0.25s ease; } > a { padding-right: 14px; } } > a { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } &:hover { &::after { background-color: var(--color-red); } > a { color: var(--color-red); } > ul { visibility: visible; opacity: 1; } } } } &__submenu { position: absolute; min-width: 200px; max-width: 265px; width: max-content; top: calc(100% + 22px); left: 0; padding: 18px 30px; z-index: 2; border-radius: 20px; background-color: var(--color-grey); transition: visibility 0.25s ease, opacity 0.25s ease; transition-delay: 0.02s; &::before { content: ''; position: absolute; display: block; width: 100%; height: 22px; bottom: 100%; left: 0; } a { color: var(--color-grey-dark); &:hover { color: var(--color-grey-light); } } } } } @include media-max($xl) { .header { &-main { display: flex; height: fluid-clamp(50px, 70px); top: 0; border-bottom: 1px solid #efefef; background-color: #fff; &__body { height: 100%; padding: 0; border-radius: 0; background: none; border: none; } } &-logo { &__link { padding-left: 0; } } } } @include media-max($lg) { .header { &-main { .header-menu { display: none; } } &-buttons { column-gap: 10px; &__login-btn { display: none; } &__download-btn { height: 44px; } &__menu-btn { display: grid; } } &-dropdown { display: block; } &-menu { margin-top: 40px; &__list { > li { &.has-children { display: grid; grid-template-columns: 1fr auto; column-gap: 20px; } &.is-open { > a { color: var(--color-red); } > button { transform: rotate(-180deg); background-color: var(--color-red); } > ul { opacity: 1; visibility: visible; } } } } &__submenu-toggle { display: block; width: 32px; height: 32px; margin: auto 0; mask: var(--icon-angle-down) center no-repeat; -webkit-mask: var(--icon-angle-down) center no-repeat; mask-size: 10px; -webkit-mask-size: 10px; background-color: var(--color-text); transition: transform 0.25s ease, background-color 0.25s ease; } &__submenu { grid-column: 1/-1; height: 0; overflow: hidden; will-change: height, opacity; transition: height 0.25s ease, opacity 0.25s ease, visibility 0.25s ease; &::before, &::after { content: ''; display: block; height: 2px; } } } } } @include media-max($md) { .header { &-buttons { &__menu-btn { width: 40px; } &__download-btn { height: 40px; padding: 0 20px; } } &-dropdown { padding: 110px 0 35px; } &-menu { margin-top: 35px; } } } @include media-max($sm) { .header { &-logo__link img { width: 100px; } &-buttons { column-gap: 8px; &__menu-btn { width: 36px; } &__download-btn { height: 36px; padding: 0 15px; font-size: 14px; } } &-dropdown { padding: 95px 0 30px; } &-menu { margin-top: 30px; &__item { font-size: 16px; } &__submenu li { font-size: 15px; } } } } .hero { overflow: hidden; &-main { background: linear-gradient(145deg, #f5f5f9 0%, #f5f5f9 50%, #fff5e7 100%); &__body { position: relative; display: grid; grid-template-columns: fluid-clamp(450px, 650px, 768px) auto; column-gap: 40px; padding: 160px 0 50px; z-index: 1; } &__left { position: relative; min-height: fluid-clamp(550px, 650px, 1024px); &::before { content: ''; position: absolute; display: block; width: 80%; height: 110%; top: 0; bottom: 0; left: 0; right: 0; margin: auto; z-index: -1; filter: blur(8px); background: url(../img/bg/logo-bg.svg) center no-repeat; background-size: contain; } } } &-title { font-size: var(--fs-h1-lg); span { color: var(--color-red); } } &-descr { max-width: 90%; margin-top: 20px; span { display: inline-block; } } &-buttons { display: grid; grid-auto-flow: column; justify-content: start; column-gap: 12px; row-gap: 8px; margin-top: 50px; } &-qrcode { display: grid; grid-auto-flow: column; justify-content: start; align-items: center; column-gap: 20px; margin-top: 50px; &__img { display: flex; width: fluid-clamp(90px, 110px, 1024px); aspect-ratio: 1; padding: 8px; border-radius: 10px; background-color: #fff; border: 1px solid #ececec; img { width: 100%; } } &__info { font-size: 14px; line-height: 1.2; color: #5d5e5f; } } &-stores { display: grid; grid-auto-flow: column; justify-content: start; align-items: center; column-gap: 20px; margin-top: 50px; } &-store { position: relative; display: flex; align-items: center; padding-right: 20px; &::after { content: ''; position: absolute; display: block; width: 1px; height: 10px; right: -1px; top: 0; bottom: 0; margin: auto 0; background-color: #dedede; } &:last-child { padding-right: 0; &::after { display: none; } } &:hover { .hero-store__name { color: var(--color-text); } } &__icon { display: flex; width: 24px; aspect-ratio: 1; } &__name { margin-left: 5px; margin: 2px 0 0 5px; font-size: 14px; line-height: 1.2; font-weight: 500; color: #000; transition: color 0.25s ease; } } &-img { position: absolute; width: fluid-clamp(375px, 840px); right: 0; bottom: 0; z-index: -1; user-select: none; -webkit-user-select: none; } &-features { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; height: 100%; } &-feature { display: flex; align-items: center; height: 64px; padding: 10px 20px 10px 10px; border-radius: 100px; border: 1px solid #ececec; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); background: linear-gradient(135deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); &:nth-child(1) { margin: 0 0 40% 40px; } &:nth-child(3) { margin: 40px 0 14% auto; } &__icon { display: flex; flex-shrink: 0; width: 36px; aspect-ratio: 1; } &__img { display: flex; flex-shrink: 0; height: 100%; img { width: auto; } } &__title { margin-left: 10px; font-weight: 500; font-size: 18px; line-height: 1.2; color: rgba(26, 20, 20, 0.8); } } &-scroller { overflow: hidden; background-color: var(--color-dark); &__track { display: flex; align-items: center; width: max-content; height: 54px; } &__group { display: flex; white-space: nowrap; will-change: transform; } &__item { position: relative; padding-right: 40px; margin-right: 40px; font-weight: 600; font-size: 18px; line-height: 1.2; color: #fff; &::after { content: ''; position: absolute; display: block; width: 6px; height: 6px; right: 0; top: 0; bottom: 0; margin: auto 0; border-radius: 50%; transform: translateX(50%); background-color: var(--color-red); } } } &-footer { .hero-stores { display: none; } } } @include media-max($xl) { .hero { &-main { &__body { padding-top: fluid-clamp(75px, 140px); } } } } @include media-max($lg) { .hero { &-main { &__body { padding-bottom: fluid-clamp(70px, 100px, 768px, 1024px); } &__left { min-height: fluid-clamp(420px, 480px, 768px, 1024px); } .hero-stores { display: none; } } &-buttons { grid-auto-flow: row; justify-content: unset; max-width: 280px; } &-qrcode { display: none; } &-feature { height: 50px; &:nth-child(1) { margin-left: 0; } &:nth-child(2) { margin-left: -40px; } &:nth-child(3) { margin-bottom: 0; } &__icon { width: 28px; } &__title { font-size: 16px; } } &-scroller { &__track { height: 48px; } &__item { padding-right: 35px; margin-right: 35px; font-size: 16px; } } &-footer { .hero-stores { display: grid; } } &-stores { justify-content: center; } } } @include media-max($md) { .hero { &-main { &__body { grid-template-columns: 1fr; padding-bottom: 0; } &__left { min-height: unset; &::before { display: none; } } &__right { position: relative; display: flex; justify-content: center; margin-top: 40px; } } &-buttons { max-width: unset; margin-top: 30px; } &-features { position: absolute; justify-content: center; width: fluid-clamp(345px, 480px, 375px, 768px); margin: 0 auto; top: 0; left: 0; right: 0; } &-feature { padding: 8px 12px 8px 8px; height: 44px; &:nth-child(1) { margin: 0 0 25% 60px; } &:nth-child(2) { margin-left: 0; } &__icon { width: 24px; } &__title { margin-left: 8px; font-size: 14px; } } &-img { position: relative; } &-scroller { &__track { height: 42px; } &__item { padding-right: 30px; margin-right: 30px; font-size: 14px; &::after { width: 4px; height: 4px; } } } &-stores { column-gap: 15px; margin-top: 40px; } &-store { padding-right: 15px; &__icon { width: 20px; } &__name { font-size: 12px; } } } } @include media-max($sm) { .hero { &-img { margin: 0 -15px; } &-feature { padding: 6px 12px 6px 6px; height: 36px; &__icon { width: 20px; } &__title { font-size: 12px; } } &-scroller { &__track { height: 36px; } &__item { padding-right: 25px; margin-right: 25px; font-size: 12px; } } &-stores { column-gap: 12px; margin-top: 30px; } &-store { padding-right: 12px; &__icon { width: 16px; } &__name { margin-left: 4px; font-size: 10px; } } } } .services { margin-top: 70px; &-body { display: flex; flex-direction: column; } &-title { order: 2; margin-top: 30px; font: inherit; text-align: center; color: var(--color-text); } &-grid { --item-size: 70px; --gap-min: 20px; --gap-max: 70px; display: flex; justify-content: space-between; width: min(100%, calc(var(--items) * var(--item-size) + (var(--items) - 1) * var(--gap-max))); margin: 0 auto; gap: var(--gap-min); } &-item { display: flex; width: var(--item-size); aspect-ratio: 1; } } @include media-max($lg) { .services { margin-top: 60px; } } @include media-max($md) { .services { margin-top: 50px; &-grid { --item-size: 60px; flex-wrap: wrap; justify-content: center; max-width: calc(var(--item-size) * 5 + var(--gap-min) * 4); width: auto; } } } @include media-max($sm) { .services { margin-top: 40px; &-title { margin-top: 25px; } &-grid { --item-size: 50px; --gap-min: 8px; } } } .work { &--block { margin-top: var(--space-section); } &-grid { display: grid; row-gap: 30px; } &-item { display: grid; grid-template-columns: 1.1fr 1fr; column-gap: 40px; padding-top: fluid-clamp(25px, 50px); padding-bottom: fluid-clamp(25px, 65px); padding-inline: fluid-clamp(20px, 65px); border-radius: var(--radius-lg); background: var(--gradient-grey); &__title { font-size: var(--fs-h3-lg); font-weight: 700; line-height: 1.1; color: var(--color-dark); } &__list { display: grid; row-gap: 0.6em; margin-top: 30px; line-height: 1.3; } &__li { position: relative; padding-left: 1.5em; &::before { content: ''; position: absolute; display: block; width: 1em; aspect-ratio: 1; top: 0.15em; left: 0; background: var(--icon-checkmark) center no-repeat; background-size: contain; } } &__buttons { display: grid; grid-auto-flow: column; justify-content: start; column-gap: 12px; row-gap: 8px; margin-top: 40px; } &__img { aspect-ratio: 1024/680; align-self: center; margin: -10px 0 -20px; img { width: 100%; height: 100%; object-fit: contain; } } } } @include media-max($lg) { .work { &-grid { row-gap: 20px; } &-item { grid-template-columns: 1fr 1.1fr; &__list { margin-top: 20px; } &__buttons { grid-auto-flow: row; justify-content: unset; max-width: 280px; margin-top: 30px; } &__img { margin: 0; } } } } @include media-max($md) { .work { &-item { grid-template-columns: 1fr; &__buttons { max-width: unset; } &__img { margin-top: 40px; } } } } @include media-max($sm) { .work { &-grid { row-gap: 10px; } &-item { &__img { margin-top: 30px; } } } } .advantages { margin-top: var(--space-section); &-slider { counter-reset: num; &__wrapper.is-grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 1fr; gap: 20px; } } &-item { padding: 30px 30px 35px; counter-increment: num; border-radius: var(--radius-lg); background: var(--gradient-grey); &::before { content: counter(num, decimal-leading-zero); position: absolute; display: block; top: 30px; right: 30px; font-size: 0.9em; line-height: 1; color: #b6b6c5; } &__icon { display: flex; width: 50px; aspect-ratio: 1; } &__title { min-height: 2.2em; margin-top: 25px; font-size: var(--fs-h3-sm); font-weight: 600; line-height: 1.1; color: var(--color-dark); } &__descr { margin-top: 15px; line-height: 1.4; } } } @include media-max($lg) { .advantages { &-slider { &__wrapper.is-grid { grid-template-columns: unset; grid-auto-flow: column; grid-auto-columns: slide-size(2.25, 20px); } } } } @include media-max($md) { .advantages { &-slider { &__wrapper.is-grid { grid-auto-columns: slide-size(1.25, 15px); } } &-item { &__icon { width: 44px; } &__title { font-size: var(--fs-title-sm); } &__descr { line-height: 1.3; } } } } @include media-max($sm) { .advantages { &-item { padding: 20px; &::before { top: 20px; right: 20px; } &__icon { width: 40px; } &__title { margin-top: 15px; } &__descr { margin-top: 10px; } } } } .scheme { margin-top: var(--space-section); padding-top: fluid-clamp(40px, 80px); padding-bottom: fluid-clamp(40px, 100px); background-color: var(--color-dark); &-title, &-descr { color: #fff; } &-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; counter-reset: num; } &-item { padding: 30px 25px; counter-increment: num; border-radius: var(--radius-md); background-color: #fff; &__top, &__img { display: flex; aspect-ratio: 1.3/1; } &__top { flex-direction: column; min-height: 0; } &__img { align-items: flex-start; justify-content: center; img { width: var(--img-width); } } &__qrcode { display: flex; align-self: flex-start; min-height: 0; padding: 8px; aspect-ratio: 1; border-radius: 10px; background-color: #fff; border: 1px solid #ececec; img { width: 100%; } } &__login { margin-top: 12px; &-btn { width: 100%; height: 44px; font-size: 16px; color: var(--color-grey-text); border: 1px solid #ececec; &::before { content: ''; display: block; width: 1.1em; height: 1.1em; margin: 0 4px 0.1em 0; mask: var(--icon-user) center no-repeat; -webkit-mask: var(--icon-user) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: var(--color-grey-text); } &:hover { background-color: #f4f5fc; border-color: #f4f5fc; } } } &__title { margin-top: 20px; font-size: var(--fs-title-sm); font-weight: 600; line-height: 1.1; color: var(--color-dark); &::before { content: counter(num) '.'; display: block; margin-bottom: 20px; color: var(--color-red); } } &__descr { margin-top: 20px; font-size: 18px; line-height: 1.3; } } } @include media-max($lg) { .scheme { &-grid { grid-template-columns: 1fr 1fr; } &-item { &__top, &__img { aspect-ratio: 3.5/1; } &__top { flex-direction: row; align-items: flex-end; column-gap: 20px; } &__qrcode { height: 100%; } &__login { flex: 1; margin-top: 0; } &__img img { height: 100%; } &__title { br { display: none; } } } } } @include media-max($md) { .scheme { &-grid { grid-template-columns: 1fr; } &-item { display: grid; grid-template-columns: 1.8fr 1fr; column-gap: 30px; &:first-child { grid-template-columns: 1fr; } &__top, &__img { aspect-ratio: unset; } &__top { order: 3; margin-top: 30px; } &__qrcode { display: none; } &__img { grid-column: 2/3; grid-row: 1/3; img { width: 100%; height: auto; } } &__title { margin-top: 0; } } } } @include media-max($sm) { .scheme { &-grid { row-gap: 8px; } &-item { column-gap: 15px; padding: 20px; &__top { margin-top: 15px; } &__login-btn { height: 40px; font-size: 15px; } &__title::before { margin-bottom: 10px; } &__descr { margin-top: 10px; font-size: 15px; } } } } .income { margin-top: var(--space-section); &-calc { display: grid; grid-template-columns: 1fr 1.15fr; column-gap: fluid-clamp(40px, 100px, 1024px); line-height: 1.2; &--single { .income-calc__top { display: none; } } &__top { display: flex; justify-content: center; grid-column: 1/-1; margin-bottom: 40px; } &__types { display: grid; grid-auto-flow: column; column-gap: 6px; padding: 6px; border-radius: 100px; border: 1px solid #ebebf1; } &__type { position: relative; &--taxi span::before { mask-image: var(--icon-car); -webkit-mask-image: var(--icon-car); } &--courier span::before { mask-image: var(--icon-bike); -webkit-mask-image: var(--icon-bike); } &--cargo span::before { mask-image: var(--icon-truck); -webkit-mask-image: var(--icon-truck); } &-input { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 1; cursor: pointer; border-radius: 100px; &:checked { + span { color: #fff; background-color: var(--color-dark); &::before { background-color: #fff; } } } } &-label { display: flex; align-items: center; padding: 8px 15px; font-size: 18px; font-weight: 500; border-radius: 100px; transition: color 0.25s ease, background-color 0.25s ease; &::before { content: ''; display: block; width: 24px; aspect-ratio: 1; margin-right: 6px; mask-position: center; -webkit-mask-position: center; mask-repeat: no-repeat; -webkit-mask-repeat: no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: #cacada; transition: background-color 0.25s ease; } } } &__controls { min-width: 0; } &__range { margin-bottom: 40px; &-top { display: flex; align-items: center; justify-content: space-between; } &-value { font-size: var(--fs-title-sm); font-weight: 600; line-height: 1.1; color: var(--color-red); } &-number { font-size: 1.5em; } &-input { --range-track-height: 3px; --range-thumb-width: 32px; --range-thumb-height: 22px; --range-progress: 0%; display: block; width: 100%; height: var(--range-thumb-height); margin-top: 12px; cursor: pointer; &::-webkit-slider-runnable-track { height: var(--range-track-height); border-radius: 100px; background: linear-gradient(to right, var(--color-red) 0%, var(--color-red) var(--range-progress), #dedede var(--range-progress), #dedede 100%); } &::-webkit-slider-thumb { width: var(--range-thumb-width); height: var(--range-thumb-height); margin-top: calc((var(--range-track-height) - var(--range-thumb-height)) / 2); border: 3px solid #fff; border-radius: 100px; background: var(--color-red); box-shadow: 10px 4px 24px 0 #c4c4d7; box-sizing: border-box; appearance: none; } &::-moz-range-track { height: var(--range-track-height); border-radius: 100px; background: #dedede; } &::-moz-range-progress { height: var(--range-track-height); border-radius: 100px; background: var(--color-red); } &::-moz-range-thumb { width: var(--range-thumb-width); height: var(--range-thumb-height); border: 3px solid #fff; border-radius: 100px; background: var(--color-red); box-shadow: 10px 4px 24px 0 #c4c4d7; box-sizing: border-box; cursor: pointer; } &:focus { outline: none; } &:focus-visible::-webkit-slider-thumb { outline: 2px solid var(--color-red); } &:focus-visible::-moz-range-thumb { outline: 2px solid var(--color-red); } } } &__radios { min-width: 0; &-label { margin-bottom: 20px; } &-wrapper { overflow-x: auto; scrollbar-width: none; &::-webkit-scrollbar { display: none; } } &-inner { display: grid; justify-content: start; grid-auto-flow: column; column-gap: 6px; width: max-content; } } &__radio { position: relative; white-space: nowrap; &-input { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 1; cursor: pointer; border-radius: 100px; &:checked { + span { color: #fff; background-color: var(--color-dark); &::before { background-color: #fff; } } } } &-label { display: flex; align-items: center; padding: 10px 12px; font-weight: 500; font-size: 18px; border-radius: 100px; border: 1px solid #e2e2e2; transition-property: color, background-color, border-color; transition-duration: 0.25s; transition-timing-function: ease; } } } &-result { padding: 30px; overflow: hidden; border-radius: var(--radius-md); color: #fff; background-color: var(--color-red); &__main { min-width: 0; } &__total { display: block; margin-top: 25px; font-size: var(--fs-h1-sm); font-weight: 600; line-height: 1.1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } &__note { margin-top: 5px; font-size: 18px; } &__stats { display: grid; grid-template-columns: 1.35fr 1.5fr 1fr; column-gap: 20px; margin-top: 25px; padding-top: 20px; border-top: 1px solid #b9354a; } &__stat { min-width: 0; &-label { font-size: 16px; opacity: 0.6; } &-value { display: block; margin-top: 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: var(--fs-title-md); font-weight: 600; line-height: 1.1; } } } &-footnote { margin-top: 40px; font-size: 13px; line-height: 1.2; text-align: center; } } @include media-max($xl) { .income { &-calc { &__radio-label { font-size: 16px; } } } } @include media-max($lg) { .income { &-calc { grid-template-columns: 1fr; &__range { margin-bottom: 30px; } &__radios-wrapper { margin-inline: -20px; padding-inline: 20px; } } &-result { display: grid; align-items: center; grid-template-columns: 1fr 1.5fr; column-gap: 30px; margin-top: 45px; &__total { margin-top: 10px; } &__stats { margin-top: 0; padding-top: 0; border: none; } } } } @include media-max($md) { .income { &-descr br { display: none; } &-calc { &__type { &-label { font-size: 16px; &::before { width: 22px; } } } } &-result { grid-template-columns: 1fr; &__stats { margin-top: 20px; padding-top: 15px; border-top: 1px solid #b9354a; } } } } @include media-max($sm) { .income { &-calc { &__top { margin-bottom: 30px; } &__types { column-gap: 0; } &__type { &-label { padding: 8px 10px; font-size: 14px; &::before { width: 18px; } } } &__range { margin-bottom: 20px; &-input { margin-top: 6px; } } &__radios { &-label { margin-bottom: 15px; } &-wrapper { margin-inline: -15px; padding-inline: 15px; } } &__radio-label { font-size: 14px; } } &-result { margin-top: 35px; padding: 20px; &__note { font-size: 15px; } &__stats { margin-top: 17px; } &__stat-label { font-size: 15px; } } &-footnote { margin-top: 30px; font-size: 12px; } } } .socials { margin-top: var(--space-section); padding-top: fluid-clamp(40px, 80px); background: var(--gradient-grey); &-title { text-align: center; } &-body { display: grid; grid-template-columns: 1.15fr 1fr; column-gap: fluid-clamp(40px, 115px, 768px); margin-top: fluid-clamp(25px, 50px); } &-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: fluid-clamp(25px, 50px, 1024px); } &-item { display: grid; align-items: center; grid-template-columns: auto 1fr; column-gap: 25px; padding: 15px 30px; border-radius: 15px; color: var(--main-color); background-color: #fff; transition: color 0.25s ease, background-color 0.25s ease; &:hover { color: #fff; background-color: var(--main-color); .socials-item__icon { &::before, &::after { background-color: #fff; } } } &__icon { display: flex; align-items: flex-start; &::before { content: ''; display: block; width: 32px; height: 32px; background-color: var(--icon-color); mask: var(--social-icon) center no-repeat; -webkit-mask: var(--social-icon) center no-repeat; mask-size: contain; -webkit-mask-size: contain; transition: background-color 0.25s ease; } } &__name { font-size: 18px; line-height: 1.2; } &--vk { --main-color: #366cfe; --icon-color: currentColor; --social-icon: url(../img/icons/vk.svg); } &--instagram { --main-color: #000; --icon-color: currentColor; --social-icon: url(../img/icons/instagram.svg); } &--youtube { --main-color: #e80b2e; --icon-color: currentColor; --social-icon: url(../img/icons/youtube.svg); } &--threads { --main-color: #000; --icon-color: currentColor; --social-icon: url(../img/icons/threads.svg); } &--tiktok { --main-color: #000; --icon-color: currentColor; --social-icon: url(../img/icons/tiktok.svg); } &--telegram { --main-color: #3292dd; --icon-color: currentColor; --social-icon: url(../img/icons/telegram.svg); } &--dzen { --main-color: #000; --icon-color: #2c3036; --social-icon: url(../img/icons/dzen.svg); } &--rutube { --main-color: #0e0333; --icon-color: currentColor; --social-icon: url(../img/icons/rutube.svg); .socials-item__icon::after { content: ''; display: block; width: 8px; aspect-ratio: 1; border-radius: 50%; background-color: #ed143b; transition: background-color 0.25s ease; } } } &-footnote { margin-block: fluid-clamp(30px, 60px, 1024px); font-size: 11px; line-height: 1.2; } &-img { display: flex; align-items: flex-end; img { width: 100%; } } } @include media-max($lg) { .socials { &-grid { margin-top: 0; } &-item { column-gap: 15px; padding: 10px 15px; border-radius: 10px; } } } @include media-max($md) { .socials { &-body { grid-template-columns: 1fr; } &-footnote { margin-bottom: 0; } &-img { width: fluid-clamp(345px, 600px, 375px, 768px); margin: 40px auto 0; } } } @include media-max($sm) { .socials { &-item { column-gap: 10px; &__icon { &::before { width: 28px; height: 28px; } } &__name { font-size: 16px; } &--rutube { .socials-item__icon::after { width: 6px; } } } &-footnote { margin-top: 20px; } &-img { margin-top: 30px; } } } .reviews { &--block { margin-top: var(--space-section); } &-slider { -webkit-text-size-adjust: 100%; &__container { padding: 0 20px; } &__wrapper { width: fit-content; margin-inline: auto; &.is-grid { display: grid; justify-content: center; grid-auto-flow: column; column-gap: 20px; } } &__bottom { margin-top: 60px; &:has(.swiper-pagination-lock) { display: none; } } &__pagination { display: flex; height: 2px; &-item { flex: 1; height: 100%; background-color: #e2e2e2; transition: background-color 0.25s ease; &.is-active { background-color: var(--color-grey-dark); } } } } &-grid { display: grid; row-gap: fluid-clamp(30px, 80px); padding-top: 10px; } &-slide { display: flex; flex-direction: column; width: 414px; &:last-child { margin-right: 0 !important; } &__img { position: relative; aspect-ratio: 768/580; overflow: hidden; border-radius: var(--radius-sm); background-color: var(--color-light); img { width: 100%; height: 100%; object-fit: cover; } } &__info { display: flex; flex-direction: column; flex: 1; } &__user { margin-top: 25px; padding-right: 20px; line-height: 1.1; &-name { font-size: var(--fs-title-sm); font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--color-dark); } &-descr { margin-top: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } } &__comment { display: flex; flex-direction: column; flex: 1; margin-top: 30px; padding: 25px; font-size: 18px; border-radius: var(--radius-sm); background-color: #f6f6f6; &::before { content: ''; display: block; width: 24px; aspect-ratio: 1; background: var(--icon-quotes) center no-repeat; background-size: contain; } &-text { margin: 15px 0 auto; } &-link { align-self: flex-start; margin-top: 10px; color: var(--color-dark); transition: color 0.25s ease; &:hover { color: var(--color-red); } } } } &-item { display: grid; grid-template-columns: fluid-clamp(300px, 414px, 768px) 1fr; column-gap: fluid-clamp(30px, 70px, 768px); &__img { position: relative; aspect-ratio: 768/580; overflow: hidden; border-radius: var(--radius-sm); background-color: var(--color-light); img { width: 100%; height: 100%; object-fit: cover; } } &__user { line-height: 1.1; &-name { font-size: var(--fs-title-sm); font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--color-dark); } &-descr { margin-top: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } } &__comment { margin-top: 30px; padding: 25px; font-size: 18px; border-radius: var(--radius-sm); background-color: #f6f6f6; &::before { content: ''; display: block; width: 24px; aspect-ratio: 1; margin-bottom: 15px; mask: var(--icon-quotes) center no-repeat; -webkit-mask: var(--icon-quotes) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: var(--color-red); } &-text { margin-top: 15px; } &-link { display: inline-block; margin-top: 10px; color: var(--color-dark); transition: color 0.25s ease; &:hover { color: var(--color-red); } } } } &-showmore { margin-top: fluid-clamp(30px, 80px); text-align: center; &.is-hidden { display: none; } &__btn { max-width: 265px; width: 100%; } } } @include media-max($xl) { .reviews { &-slider { &__wrapper.is-grid { grid-template-columns: unset; grid-auto-flow: column; grid-auto-columns: slide-size(3, 20px); justify-content: unset; column-gap: 20px; } } &-slide { width: 100%; } } } @include media-max($lg) { .reviews { &-slider { &__wrapper.is-grid { grid-auto-columns: slide-size(2.25, 20px); } } &-grid { padding-top: 0; } } } @include media-max($md) { .reviews { &-slider { &__wrapper.is-grid { grid-auto-columns: slide-size(1.25, 15px); } &__bottom { margin-top: 50px; } } &-item { grid-template-columns: 1fr; &__user { margin-top: 25px; padding-right: 20px; } } &-showmore { &__btn { max-width: unset; } } } } @include media-max($sm) { .reviews { &-slider { &__container { padding: 0 15px; } &__wrapper.is-grid { column-gap: 15px; } &__bottom { margin-top: 30px; } } &-slide { &__user { margin-top: 20px; padding-right: 15px; &-descr { margin-top: 10px; } } &__comment { margin-top: 25px; padding: 20px; font-size: 15px; &::before { width: 20px; } &-text { margin-top: 10px; } } } &-item { &__user { margin-top: 20px; padding-right: 15px; &-descr { margin-top: 10px; } } &__comment { margin-top: 25px; padding: 20px; font-size: 15px; &::before { width: 20px; margin-bottom: 10px; } } } } } .payments { margin-top: var(--space-section); &-body { position: relative; display: flex; flex-direction: column; align-items: center; padding-top: fluid-clamp(25px, 60px); border-radius: var(--radius-lg); background: linear-gradient(145deg, #f5f5f9 50%, #fff5e7 100%); } &-header { width: fluid-clamp(300px, 800px); z-index: 1; } &-descr { margin-bottom: 0; } &-images { margin-top: fluid-clamp(60px, 90px, 768px); &__phone { display: flex; width: fluid-clamp(240px, 360px); overflow: hidden; img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 0; } } &__messages img { position: absolute; &:nth-child(1) { width: 24%; left: 5%; bottom: 46%; } &:nth-child(2) { width: 19%; left: 7%; bottom: 7%; } &:nth-child(3) { width: 19%; right: 9%; bottom: 42%; } } &__coins img { position: absolute; &:nth-child(1) { width: 9%; left: 5%; top: 10%; } &:nth-child(2) { width: 6%; right: 7%; top: 14%; } &:nth-child(3) { width: 16%; right: 4%; bottom: 4%; } } } } @include media-max($md) { .payments { &-images { margin-top: 90px; &__phone { aspect-ratio: 240/260; } &__messages img { &:nth-child(1) { width: 33%; top: 32%; bottom: unset; } &:nth-child(2) { width: 31%; top: 30%; right: 5%; left: unset; bottom: unset; } &:nth-child(3) { display: none; } } &__coins img { &:nth-child(1) { max-width: 90px; width: 18%; left: 4%; bottom: 25%; top: unset; } &:nth-child(2) { max-width: 60px; width: 10%; top: 47%; } &:nth-child(3) { max-width: 130px; width: 26%; right: 8%; bottom: 6%; } } } } } .faq { &--block { margin-top: var(--space-section); } &-item { border-bottom: 1px solid #ededed; &:first-child { border-top: 1px solid #ededed; } &__question { position: relative; padding-block: 25px; padding-right: fluid-clamp(60px, 120px); font-size: var(--fs-h3-sm); font-weight: 600; line-height: 1.2; cursor: pointer; color: var(--color-dark); transition: color 0.25s ease; &::after { content: ''; position: absolute; display: block; width: 1em; height: 1em; top: 0; bottom: 0; right: 0; margin: auto 0; background: var(--icon-cross) center no-repeat; background-size: contain; transition: transform 0.25s ease; } } &__answer { height: 0; opacity: 0; overflow: hidden; visibility: hidden; will-change: height, opacity; transition: height 0.25s ease, opacity 0.25s ease, visibility 0.25s ease; } &__content { padding-right: fluid-clamp(60px, 120px); padding-bottom: 25px; } &.is-active { .faq-item__question::after { transform: rotate(-45deg); } .faq-item__answer { opacity: 1; visibility: visible; } } } } @include media-max($lg) { .faq-item__content { padding-right: 0; } } @include media-max($md) { .faq-item { &__question { padding-block: 20px; font-size: var(--fs-title-sm); &::after { width: 1.2em; height: 1.2em; } } &__content { padding-bottom: 20px; } } } @include media-max($sm) { .faq-item { &__question { padding-block: 15px; } &__content { padding-bottom: 15px; } } } @media (hover: hover) { .faq-item__question:hover { color: var(--color-grey-dark); } } .articles { &--block { margin-top: var(--space-section); } &--page { margin-top: fluid-clamp(40px, 100px); } &-title { &--sm { margin-bottom: 40px; font-size: var(--fs-h3-lg); } &--lg { margin-bottom: 45px; text-align: center; } } &-filter { margin-bottom: 30px; overflow-x: auto; scrollbar-width: none; &::-webkit-scrollbar { display: none; } &__list { display: grid; justify-content: start; grid-auto-flow: column; column-gap: 6px; width: max-content; } &__link { display: flex; align-items: center; padding: 10px 15px; border-radius: 10px; color: #798079; border: 1px solid #dcdcdc; transition-property: color, background-color, border-color; transition-duration: 0.25s; transition-timing-function: ease; } &__item { font-size: 18px; line-height: 1.2; white-space: nowrap; &.is-active a { color: #fff; border-color: var(--color-dark); background-color: var(--color-dark); } } } &-slider { &__wrapper.is-grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 20px; } } &-grid { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 20px; row-gap: 50px; transition: opacity 0.25s ease; &.is-loading { opacity: 0; } } &-item { display: flex; flex-direction: column; &__img { &-link { display: block; aspect-ratio: 768/435; overflow: hidden; border-radius: var(--radius-sm); background-color: var(--color-light); img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; } } } &__info { display: flex; flex-direction: column; margin-top: 25px; flex: 1; } &__meta { display: flex; align-items: center; line-height: 1.2; white-space: nowrap; } &__date { font-size: 15px; } &__tags { display: grid; grid-auto-flow: column; column-gap: 6px; margin-left: 15px; } &__tag { padding: 6px 10px; font-size: 14px; border-radius: 10px; overflow: hidden; text-overflow: ellipsis; color: #798079; background-color: #f6f6f6; } &__title { min-height: 2.4em; margin-top: 25px; padding-right: 20px; font-size: var(--fs-title-sm); font-weight: 600; line-height: 1.2; &-link { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; width: fit-content; overflow: hidden; color: var(--color-dark); transition: color 0.25s ease; &:hover { color: var(--color-red); } } } &__descr { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; margin: 20px 0 auto; padding-right: 20px; font-size: 18px; line-height: 1.3; } &__read { margin-top: 30px; &-btn { border-color: rgba(185, 185, 185, 0.5); } } } &-showmore { margin-top: 50px; text-align: center; transition: opacity 0.25s ease; &.is-loading { opacity: 0; } &.is-hidden { display: none; } &__btn { max-width: 265px; width: 100%; } } } @include media-max($xl) { .articles { &-filter { margin-inline: -20px; padding-inline: 20px; } } } @include media-max($lg) { .articles { &-filter { &__item { font-size: 16px; } } &-slider { &__wrapper.is-grid { grid-template-columns: unset; grid-auto-flow: column; grid-auto-columns: slide-size(2.25, 20px); } } &-grid { grid-template-columns: 1fr 1fr; } } } @include media-max($md) { .articles { &-title { &--sm { margin-bottom: 30px; } &--lg { margin-bottom: 35px; } } &-slider { &__wrapper.is-grid { grid-auto-columns: slide-size(1.25, 15px); } } &-grid { grid-template-columns: 1fr; row-gap: 40px; .articles-item { &__title { min-height: unset; padding-right: 0; } &__descr { padding-right: 0; } } } &-showmore { margin-top: 40px; &__btn { max-width: unset; } } } } @include media-max($sm) { .articles { &-title { &--sm, &--lg { margin-bottom: 25px; } } &-filter { margin-bottom: 20px; margin-inline: -15px; padding-inline: 15px; &__item { font-size: 14px; } &__link { padding: 7px 12px; } } &-grid { row-gap: 30px; } &-item { &__info { margin-top: 20px; } &__date { font-size: 13px; } &__tags { margin-left: 10px; } &__tag { padding: 5px 8px; font-size: 12px; border-radius: 5px; } &__title { margin-top: 20px; padding-right: 15px; } &__descr { margin-top: 15px; padding-right: 15px; font-size: 15px; } &__read { margin-top: 20px; } } &-showmore { margin-top: 30px; } } } @media (hover: hover) { .articles { &-filter__link:hover { border-color: #a6a6a6; } &-item__img-link:hover img { transform: scale(1.15); } } } .getapp { margin-top: var(--space-section); &-body { display: grid; grid-template-columns: 1fr 1fr; column-gap: fluid-clamp(40px, 65px, 768px); padding-block: fluid-clamp(25px, 65px); padding-inline: fluid-clamp(20px, 65px); border-radius: var(--radius-lg); background: url(../img/bg/dl-bg.webp) center no-repeat; background-size: cover; &__right { display: grid; align-items: end; grid-template-columns: 1fr 2.38fr; column-gap: fluid-clamp(40px, 65px, 768px); max-width: 500px; } } &-title { color: #fff; } &-descr { margin-top: 25px; font-size: 18px; color: #fff; } &-stores { display: flex; gap: 8px; margin-top: 40px; } &-store { display: flex; align-items: center; justify-content: center; height: 60px; padding: 0 25px 0 20px; border-radius: 100px; color: #000; background-color: #fff; transition: background-color 0.25s ease; &:hover { background-color: rgba(255, 255, 255, 0.8); } &__icon { display: flex; width: 24px; aspect-ratio: 1; flex-shrink: 0; } &__name { margin-left: 10px; font-size: 16px; line-height: 1.2; white-space: nowrap; } } &-qrcode { display: flex; padding: 10px; border-radius: 10px; background-color: #fff; img { width: 100%; } } &-img { display: flex; margin-bottom: fluid-clamp(-25px, -65px); overflow: hidden; img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 0; } } } @include media-max($xl) { .getapp { &-body { grid-template-columns: 1fr 1.2fr; &__right { grid-template-columns: 1fr 2.5fr; margin: 0 auto; } } &-stores { flex-wrap: wrap; } &-store { height: 50px; padding: 0 20px 0 15px; } } } @include media-max($lg) { .getapp { &-body { grid-template-columns: 1.2fr 1fr; &__right { grid-template-columns: 1fr; } } &-qrcode { display: none; } &-img { width: fluid-clamp(240px, 360px); } } } @include media-max($md) { .getapp { &-body { grid-template-columns: 1fr; &__right { display: flex; justify-content: center; max-width: unset; margin: 40px 0 0; } } &-img { aspect-ratio: 240/260; } } } @include media-max($sm) { .getapp { &-body { &__right { margin-top: 30px; } } &-descr { margin-top: 15px; font-size: 15px; } &-stores { margin-top: 25px; } &-store { height: 40px; padding: 0 15px 0 12px; &__icon { width: 20px; } &__name { margin-left: 8px; font-size: 14px; } } } } .footer { margin-top: var(--space-section); padding-block: fluid-clamp(35px, 65px); border-top-left-radius: var(--radius-lg); border-top-right-radius: var(--radius-lg); background-color: var(--color-grey); &-top { &__body { display: grid; grid-template-columns: 1fr 1.75fr 220px; column-gap: fluid-clamp(60px, 120px, 768px); } } &-logo { display: flex; flex-direction: column; align-items: flex-start; &__link { img { width: 122px; } } } &-info { max-width: 240px; margin-top: 20px; font-size: 12px; line-height: 1.3; color: var(--color-grey-dark); p { margin-bottom: 1.25em; &:last-child { margin-bottom: 0; } } } &-contacts { grid-column: 1/2; grid-row: 2/5; margin-top: 25px; line-height: 1.2; &__email { display: flex; font-size: 14px; &-link { color: var(--color-red); transition: color 0.25s ease; &:hover { color: var(--color-red-dark); } } } &__map { display: flex; font-size: 12px; margin-top: 15px; &-link { position: relative; padding-left: 1.25em; color: var(--color-grey-dark); transition: color 0.25s ease; &::before { content: ''; position: absolute; display: block; width: 1em; height: 1em; left: 0; top: 0; mask: var(--icon-placemark) center no-repeat; -webkit-mask: var(--icon-placemark) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: var(--color-grey-dark); transition: background-color 0.25s ease; } &:hover { color: var(--color-red); &::before { background-color: var(--color-red); } } } } } &-socials { display: flex; flex-wrap: wrap; gap: 5px; max-width: 200px; margin-top: 30px; &__item { display: flex; align-items: center; justify-content: center; width: 44px; aspect-ratio: 1; border-radius: 12px; border: 1px solid rgba(209, 216, 221, 0.5); background-color: #fff; transition: border-color 0.25s ease; &:hover { border-color: #d1d1d1; } img { width: 20px; aspect-ratio: 1; } } } &-menu { grid-row: 1/3; &__list { display: grid; grid-template-columns: 1fr 1fr; column-gap: fluid-clamp(40px, 60px, 768px); row-gap: fluid-clamp(30px, 45px, 768px); > li > a { font-weight: 700; } } &__item { display: flex; flex-direction: column; align-items: flex-start; font-size: 16px; line-height: 1.2; } &__link { color: var(--color-grey-dark); transition: color 0.25s ease; &[href]:hover { color: #8a8f9f; } &:not([href]) { cursor: default; } } &__submenu { margin-top: 10px; a { padding: 10px 0; } } &__submenu-toggle { display: none; } } &-stores { display: grid; grid-template-columns: repeat(4, auto); justify-content: start; align-items: center; gap: 6px; margin-top: fluid-clamp(30px, 50px, 768px); grid-column: 2/4; } &-store { position: relative; display: flex; width: 128px; aspect-ratio: 178/50; transition: opacity 0.25s ease; &:hover { opacity: 0.8; } } &-actions { grid-row: 1/3; } &-qrcode { &__img { display: flex; max-width: 175px; padding: 10px; border-radius: 10px; background-color: #fff; border: 1px solid #ececec; img { width: 100%; } } &__info { margin-top: 25px; font-size: 14px; line-height: 1.3; } } &-buttons { display: grid; row-gap: 6px; max-width: 265px; margin-top: 25px; .btn { height: 44px; font-size: 16px; } &__login-btn { width: 100%; height: 44px; color: var(--color-grey-text); background-color: #dbdfec; &::before { content: ''; display: block; width: 1.1em; height: 1.1em; margin: 0 4px 0.1em 0; mask: var(--icon-user) center no-repeat; -webkit-mask: var(--icon-user) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: var(--color-grey-text); } &:hover { background-color: #cacdd9; } } } &-bottom { margin-top: fluid-clamp(35px, 65px); padding-top: 30px; border-top: 1px solid #e5e8f4; font-size: 12px; line-height: 1.2; &__body { display: grid; grid-template-columns: 1.3fr 1.75fr 1fr; column-gap: 20px; } } &-details { color: var(--color-grey-dark); } &-copyright { font-size: 14px; } &-madein { display: flex; align-items: center; margin-top: 25px; &__icon { display: flex; width: 1.2em; aspect-ratio: 1; margin-left: 6px; } } &-registry { display: flex; align-items: center; margin-top: 25px; &__icon { display: flex; flex-shrink: 0; width: 20px; aspect-ratio: 1; } &__text { max-width: 265px; margin-left: 10px; font-size: 10px; } } &-links { display: flex; justify-content: space-between; column-gap: 20px; &__list { display: grid; row-gap: 8px; } &__link { color: var(--color-grey-dark); transition: color 0.25s ease; &:hover { color: var(--color-dark); } } } &-developer { text-align: right; &__link { color: var(--color-grey-dark); transition: color 0.25s ease; span { color: var(--color-red); } &:hover { color: var(--color-dark); } } } } @include media-max($xl) { .footer-bottom__body { grid-template-columns: calc(38vw - 105px) 1.75fr 1fr; } } @include media-max($lg) { .footer { &-top { &__body { grid-template-columns: 1fr 1.5fr; } } &-qrcode { display: none; } &-info { max-width: unset; } &-contacts { grid-row: 2/3; margin-top: 30px; } &-actions { grid-column: 1/2; grid-row: 3/4; margin-top: 30px; } &-buttons { margin-top: 0; } &-menu { grid-row: 1/4; } &-stores { grid-column: 1/-1; } &-bottom { margin-top: 30px; &__body { grid-template-columns: 1fr 1.5fr; column-gap: fluid-clamp(60px, 120px, 768px); } } &-links { column-gap: 40px; } &-developer { order: 3; margin-top: 30px; text-align: left; } } } @include media-max($md) { .footer { &-top { &__body { display: flex; flex-direction: column; } } &-buttons { max-width: unset; } &-menu { margin-top: 30px; &__list { display: block; > li { align-items: center; border-bottom: 1px solid #e5e7ef; &:first-child { border-top: 1px solid #e5e7ef; } &.has-children { display: grid; grid-template-columns: 1fr auto; column-gap: 20px; } &.is-open { > button { transform: rotate(-180deg); } } > a { padding: 12px 0; } } } &__item { flex-direction: row; } &__submenu-toggle { display: block; width: 32px; height: 32px; margin: auto 0; mask: var(--icon-angle-down) center no-repeat; -webkit-mask: var(--icon-angle-down) center no-repeat; mask-size: 10px; -webkit-mask-size: 10px; background-color: var(--color-text); transition: transform 0.25s ease, background-color 0.25s ease; } &__submenu { grid-column: 1/-1; margin-top: 0; height: 0; overflow: hidden; will-change: height, opacity; transition: height 0.25s ease, opacity 0.25s ease, visibility 0.25s ease; &::after { content: ''; display: block; height: 6px; } li { font-size: 15px; } a { padding: 8px 0; } } } &-socials { max-width: unset; } &-bottom__body { grid-template-columns: 1fr; } &-links { justify-content: unset; } &-details { order: 2; padding-top: 30px; margin-top: 30px; border-top: 1px solid #e5e8f4 } } } @include media-max($sm) { .footer { &-stores { grid-template-columns: auto auto; } &-links { flex-direction: column; row-gap: 30px; } } } .blog { margin-top: 145px; &-header { display: grid; grid-template-columns: 1fr auto; padding-block: fluid-clamp(25px, 50px); padding-inline: fluid-clamp(20px, 60px); column-gap: fluid-clamp(20px, 80px); border-radius: var(--radius-sm); background: linear-gradient(198deg, #fef8ea 0%, #ffeff0 100%); } &-info { max-width: 680px; } &-descr { margin-top: fluid-clamp(15px, 30px); font-size: 18px; line-height: 1.4; } &-logo { width: fluid-clamp(48px, 112px); margin-right: 40px; } &-slider { margin-top: fluid-clamp(25px, 70px); } &-item { display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; &__info { padding-right: fluid-clamp(20px, 60px, 768px); } &__tags { display: grid; grid-auto-flow: column; justify-content: start; column-gap: 6px; } &__tag { padding: 6px 10px; font-size: 14px; line-height: 1.2; border-radius: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #798079; background-color: #f6f6f6; } &__title { margin-top: 20px; font-size: var(--fs-h3-lg); font-weight: 700; line-height: 1.1; &-link { display: block; color: var(--color-dark); transition: color 0.25s ease; &:hover { color: var(--color-red); } } } &__descr { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; margin-top: 20px; font-size: 18px; line-height: 1.3; } &__read { margin-top: 30px; &-btn { border-color: rgba(185, 185, 185, 0.5); } } &__img { align-self: start; &-link { display: block; aspect-ratio: 1024/580; overflow: hidden; border-radius: var(--radius-sm); background-color: var(--color-light); img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; } } } } } @include media-max($xl) { .blog { margin-top: fluid-clamp(75px, 125px); } } @include media-max($lg) { .blog { &-logo { margin-right: 0; } &-item { &__img { margin-top: 55px; } } } } @include media-max($md) { .blog { &-slider { &__container { border-bottom-left-radius: var(--radius-sm); border-bottom-right-radius: var(--radius-sm); } } &-item { grid-template-columns: 1fr; &__info { padding-right: 0; } &__img { margin-top: 40px; } } } } @include media-max($sm) { .blog { &-descr { font-size: 15px; } &-item { &__tag { padding: 5px 8px; font-size: 12px; border-radius: 5px; } &__title { margin-top: 15px; } &__descr { margin-top: 12px; font-size: 15px; } &__read { margin-top: 20px; } &__img { margin-top: 25px; } } } } @media (hover: hover) { .blog-item__img-link:hover img { transform: scale(1.15); } } .content { > *:first-child { margin-top: 0; } > *:last-child { margin-bottom: 0; } h1 + h2, h1 + h3, h1 + h4 { margin-top: 0; } h1 { margin-bottom: fluid-clamp(25px, 70px); text-align: center; } h2 + h3, h3 + h4 { margin-top: 0; } h2, h3, h4 { margin-top: fluid-clamp(30px, 60px); margin-bottom: fluid-clamp(18px, 25px); font-weight: 600; } h2 { font-size: var(--fs-h2-sm); } h3, h4 { font-size: var(--fs-h3-sm); line-height: 1.3; } p, ul, ol { margin-bottom: 1.25em; } li { position: relative; padding-left: 1.5em; &:not(:last-child) { margin-bottom: 0.5em; } ul, ol { margin-block: 0.5em; } p { margin-bottom: 0.5em; } } ul > li::before { content: ''; position: absolute; display: block; width: 0.3em; aspect-ratio: 1; top: 0.6em; left: 0.6em; border-radius: 50%; background-color: var(--color-red); } ol { counter-reset: num; > li { counter-increment: num; &::before { content: counter(num) '.'; position: absolute; width: 1.25em; left: 0; top: 0; font-weight: 500; text-align: right; color: var(--color-red); } } } b, strong { font-weight: 600; color: var(--color-dark); } a { display: inline-block; color: var(--color-red); transition: color 0.25s ease; &:hover { color: var(--color-red-dark); } } img { margin-block: 1.75em; border-radius: var(--radius-sm); } .table-wrapper { margin-block: 1.75em; overflow-x: auto; scrollbar-width: none; &::-webkit-scrollbar { width: 0; } } table { width: 100%; border-collapse: collapse; th, td { padding: 15px 20px; border: 1px solid #eee; } th { text-align: left; color: var(--color-dark); background-color: var(--color-light); } } &--sm { h2, h3, h4 { margin-top: fluid-clamp(20px, 40px); } } } @include media-max($lg) { .content { .table-wrapper { margin-inline: -20px; padding-inline: 20px; } } } @include media-max($md) { .content { h3, h4 { line-height: 1.2; } } } @include media-max($sm) { .content { .table-wrapper { margin-inline: -15px; padding-inline: 15px; } table { th, td { padding: 10px 15px; } } } } .article { &-goback { display: flex; margin-top: fluid-clamp(15px, 40px); margin-bottom: 20px; &__btn { position: relative; display: flex; align-items: center; font-size: 14px; line-height: 1.2; color: var(--color-text); transition: color 0.25s ease; &::before, &::after { content: ''; display: block; width: 2.55em; aspect-ratio: 1; border-radius: 50%; border-width: 1px; border-style: solid; } &::before { margin-right: 10px; border-color: #f0f0f0; background-color: #fff; transition: background-color 0.25s ease; } &::after { position: absolute; top: 0; left: 0; border-color: transparent; background: var(--icon-angle-left) center no-repeat; background-size: 0.6em; } &:hover { &::before { background-color: #f0f0f0; } } } } &-title { text-align: center; } &-img { aspect-ratio: 1280/440; margin-top: fluid-clamp(25px, 40px); border-radius: var(--radius-sm); overflow: hidden; img { width: 100%; height: 100%; object-fit: cover; } } &-meta { display: flex; align-items: center; justify-content: space-between; column-gap: 30px; margin-top: 30px; line-height: 1.2; white-space: nowrap; } &-date { font-size: 15px; } &-tags { display: grid; grid-auto-flow: column; column-gap: 6px; &__item { padding: 6px 10px; font-size: 14px; border-radius: 10px; overflow: hidden; text-overflow: ellipsis; color: #798079; background-color: #f6f6f6; } } &-body { display: grid; align-items: start; grid-template-columns: 1fr 300px; column-gap: fluid-clamp(40px, 125px, 1024px); margin-top: fluid-clamp(40px, 60px); &.no-toc { grid-template-columns: 1fr; margin-top: fluid-clamp(30px, 60px); } } &-main { min-width: 0; } &-sidebar { position: sticky; top: 112px; } &-toc { padding: 25px 30px; background-color: var(--color-light); border-radius: var(--radius-sm); &__title { font-size: var(--fs-h3-sm); line-height: 1.2; font-weight: 600; color: var(--color-dark); } &__list { display: grid; row-gap: 18px; margin-top: 25px; max-height: calc(100vh - 260px); overflow-y: auto; scrollbar-width: none; &::-webkit-scrollbar { width: 0; } &.is-scrollable { padding-right: 10px; scrollbar-width: auto; @-moz-document url-prefix() { scrollbar-width: thin; } &::-webkit-scrollbar { width: 5px; } &::-webkit-scrollbar-track { background-color: #f0f0f0; border-radius: 5px; } &::-webkit-scrollbar-thumb { background-color: #d9d9d9; border-radius: 5px; } } } &__item { font-size: 18px; line-height: 1.2; } &__link { color: var(--color-text); transition: color 0.25s ease; &:hover { color: var(--color-red); } } } } @include media-max($xl) { .article { &-sidebar { top: fluid-clamp(70px, 90px); } &-toc { &__list { max-height: calc(100vh - 240px); } } } } @include media-max($lg) { .article { &-body { grid-template-columns: 1fr; } &-sidebar { position: unset; top: unset; order: -1; margin-bottom: fluid-clamp(40px, 60px); } &-toc { &__list { max-height: unset; } } } } @include media-max($md) { .article { &-img { aspect-ratio: 1280/720; } } } @include media-max($sm) { .article { &-goback { &__btn { font-size: 12px; } } &-meta { flex-direction: column; align-items: flex-start; margin-top: 20px; } &-tags { &__item { padding: 5px 8px; font-size: 12px; border-radius: 5px; } } &-date { order: 2; margin-top: 15px; font-size: 13px; &:first-child:last-child { margin-top: 0; } } &-toc { padding: 20px; &__list { row-gap: 12px; margin-top: 15px; } &__item { font-size: 15px; } } } } .requirements { margin-top: var(--space-section); &-title { text-align: center; } &-main { margin-top: 45px; &__list { display: grid; grid-template-columns: repeat(var(--items), 1fr); gap: 20px; } &__item { display: grid; align-content: center; grid-template-columns: auto 1fr; column-gap: 0.5em; min-height: calc(2.6em + 24px); padding: 12px 20px; line-height: 1.3; border-radius: 10px; background-color: #f5f5fa; &::before { content: ''; position: relative; display: block; width: 1em; height: 1em; top: 0.15em; background: var(--icon-checkmark) center no-repeat; background-size: contain; } &:has(p) { align-content: start; padding-block: 20px; strong { display: block; margin-bottom: 0.5em; } } } } &-docs { margin-top: 60px; &__title { font-size: fluid-clamp(20px, 30px); font-weight: 600; text-align: center; } &__list { display: grid; justify-content: center; grid-template-columns: auto auto; column-gap: fluid-clamp(40px, 120px, 768px); row-gap: 15px; margin-top: 40px; counter-reset: num; } &__item { position: relative; padding-left: 1.85em; line-height: 1.3; counter-increment: num; &::before { content: counter(num); position: absolute; display: flex; align-items: center; justify-content: center; width: 1.25em; height: 1.25em; top: 0; left: 0; border-radius: 100px; color: #fff; background-color: var(--color-red); } } } } @include media-max($md) { .requirements { &-main { margin-top: 35px; &__list { grid-template-columns: 1fr; row-gap: 8px; } &__item { min-height: unset; padding: 15px 20px; &:has(p) { padding-block: 15px; } } } &-docs { margin-top: 45px; &__list { grid-template-columns: 1fr; margin-top: 25px; } } } } @include media-max($sm) { .requirements { &-main { margin-top: 25px; } &-docs { margin-top: 35px; &__list { row-gap: 12px; margin-top: 20px; } } } } .cities { margin-top: var(--space-section); &-title { text-align: center; } &-list { display: flex; flex-wrap: wrap; justify-content: center; margin-top: 45px; gap: 10px; } &-item { display: flex; min-width: 0; font-size: 22px; line-height: 1.1; &__link { padding: 20px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border-radius: 100px; border: 1px solid #e2e2e2; color: var(--color-text); transition-property: color, background-color, border-color; transition-duration: 0.25s; transition-timing-function: ease; &:hover { color: #fff; border-color: var(--color-red); background-color: var(--color-red); } } &.is-active a { color: #fff; border-color: var(--color-red); background-color: var(--color-red); } } } @include media-max($xl) { .cities { &-item { font-size: inherit; } } } @include media-max($lg) { .cities { &-item { &__link { padding: 15px; } } } } @include media-max($md) { .cities { &-list { margin-top: 35px; gap: 8px; } &-item { &__link { padding: 12px 15px; } } } } @include media-max($sm) { .cities { &-list { margin-top: 25px; } &-item { &__link { padding: 10px 12px; } } } } .jobs { margin-top: var(--space-section); &-body { padding-top: fluid-clamp(25px, 60px); padding-bottom: fluid-clamp(35px, 80px); padding-inline: fluid-clamp(20px, 65px); border-radius: var(--radius-lg); background-color: var(--color-red); } &-title { color: #fff; text-align: center; } &-list { display: flex; flex-wrap: wrap; justify-content: center; margin-top: 45px; gap: 10px; } &-item { display: flex; min-width: 0; font-size: 22px; line-height: 1.1; &__link { padding: 20px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border-radius: 100px; color: #fff; border: 1px solid rgba(255, 255, 255, 0.5); transition-property: color, background-color, border-color; transition-duration: 0.25s; transition-timing-function: ease; &:hover { color: var(--color-red); border-color: #fff; background-color: #fff; } } &.is-active a { color: var(--color-red); border-color: #fff; background-color: #fff; } } } @include media-max($xl) { .jobs { &-item { font-size: inherit; } } } @include media-max($lg) { .jobs { &-item { &__link { padding: 15px; } } } } @include media-max($md) { .jobs { &-list { margin-top: 35px; gap: 8px; } &-item { &__link { padding: 12px 15px; } } } } @include media-max($sm) { .jobs { &-list { margin-top: 25px; } &-item { &__link { padding: 10px 12px; } } } } .news { &-grid { display: grid; row-gap: fluid-clamp(30px, 60px); } &-item { display: grid; grid-template-columns: fluid-clamp(300px, 414px, 768px) 1fr; column-gap: 40px; &__img { &-link { display: block; aspect-ratio: 768/435; overflow: hidden; border-radius: var(--radius-sm); background-color: var(--color-light); img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; } } } &__date { display: block; font-size: 15px; line-height: 1.2; } &__title { margin-top: 15px; font-size: var(--fs-title-sm); font-weight: 600; line-height: 1.2; &-link { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; width: fit-content; color: var(--color-dark); transition: color 0.25s ease; &:hover { color: var(--color-red); } } } &__descr { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; margin-top: 15px; font-size: 18px; line-height: 1.3; } &__read { margin-top: 25px; &-btn { border-color: rgba(185, 185, 185, 0.5); } } } &-showmore { margin-top: fluid-clamp(30px, 60px); text-align: center; &.is-hidden { display: none; } &__btn { max-width: 265px; width: 100%; } } } @include media-max($lg) { .news { &-item { column-gap: 30px; } } } @include media-max($md) { .news { &-item { grid-template-columns: 1fr; &__info { margin-top: 25px; } } &-showmore { &__btn { max-width: unset; } } } } @include media-max($sm) { .news { &-item { &__info { margin-top: 20px; } &__date { font-size: 13px; } &__descr { font-size: 15px; } &__read { margin-top: 20px; } } } } @media (hover: hover) { .news { &-item__img-link:hover img { transform: scale(1.15); } } } .download { padding-bottom: var(--space-section); padding-top: 165px; text-align: center; background-image: url(../img/content/bag.webp), url(../img/content/car.webp), linear-gradient(145deg, #f5f5f9 50%, #fff5e7 100%); background-repeat: no-repeat; background-position: calc(50% - 80px - 30vw) 30%, calc(50% + 280px + 20vw) 63%, center; background-size: fluid-clamp(232px, 280px, 768px) auto, fluid-clamp(450px, 540px, 768px) auto, cover; &-descr, &-info { font-size: 18px; line-height: 1.3; } &-descr { margin-top: 25px; } &-info { margin-top: fluid-clamp(30px, 90px); } &-qrcode { width: fluid-clamp(256px, 330px); margin-top: fluid-clamp(30px, 60px); margin-inline: auto; padding: var(--radius-sm); background-color: #fff; border-radius: var(--radius-md); border: 1px solid #ececec; img { width: 100%; } } &-stores { display: grid; grid-template-columns: repeat(4, auto); justify-content: center; align-items: center; gap: 8px; margin-top: fluid-clamp(35px, 50px); } &-store { position: relative; display: flex; width: fluid-clamp(160px, 178px); aspect-ratio: 178/50; transition: opacity 0.25s ease; &:hover { opacity: 0.8; } } } @include media-min(1920px) { .download { background-position: calc(50% - 660px) 30%, calc(50% + 660px) 63%, center; } } @include media-max($xl) { .download { padding-top: fluid-clamp(80px, 145px); } } @include media-max($md) { .download { min-height: 100vh; background: linear-gradient(145deg, #f5f5f9 50%, #fff5e7 100%); &-stores { grid-template-columns: auto auto; } } } @include media-max($sm) { .download { &-descr, &-info { font-size: 15px; } &-descr { margin-top: 20px; } } } .ymaps3--map-container { .ymaps3--map-copyrights, .ymaps3--controls_bottom { display: none; } .ymaps3--controls { z-index: 5; } } .contacts { &-body { display: grid; align-items: stretch; grid-template-columns: 1fr 1.42fr; column-gap: 20px; min-height: fluid-clamp(400px, 460px, 1024px); } &-card { display: flex; flex-direction: column; padding-top: fluid-clamp(25px, 50px); padding-bottom: fluid-clamp(25px, 60px); padding-inline: fluid-clamp(20px, 60px); border-radius: var(--radius-lg); background: var(--gradient-grey); &__title { font-size: var(--fs-title-lg); line-height: 1.1; font-weight: 700; color: var(--color-dark); } &__list { display: grid; row-gap: 20px; margin-top: fluid-clamp(20px, 50px); margin-bottom: auto; } &__item { display: flex; align-items: flex-start; justify-content: flex-start; overflow: hidden; line-height: 1.2; color: var(--color-dark); &::before { content: ''; position: relative; display: block; width: 20px; aspect-ratio: 1; flex-shrink: 0; margin-right: 12px; top: 0.15em; background-position: center; background-repeat: no-repeat; background-size: contain; } &--tel { font-size: var(--fs-title-sm); font-weight: 700; &::before { background-image: var(--icon-phone); } a { color: var(--color-dark); &:hover { color: var(--color-red); } } } &--address { &::before { background-image: var(--icon-location); } } &--email { &::before { background-image: var(--icon-email); } a { color: var(--color-red); &:hover { color: var(--color-red-dark); } } } &-link { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color 0.25s ease; } } &__download { margin-top: fluid-clamp(25px, 60px); } } &-map { position: relative; overflow: hidden; border-radius: var(--radius-lg); background-color: var(--color-light); &__container { position: absolute; width: 100%; height: 100%; top: 0; left: 0; } &__marker { transform: translate(-50%, -100%); &.is-open { transform: translate(-50%, calc(-100% - 14px)); .contacts-map__marker-button { display: none; } .contacts-map__popup { display: block; } } &-button { display: block; width: 60px; height: 68px; padding: 0; border: 0; background: none; cursor: pointer; } &-icon { display: block; width: 60px; height: 68px; pointer-events: none; } } &__popup { position: relative; display: none; width: max-content; max-width: 260px; min-width: 180px; padding: 10px 36px 10px 12px; border-radius: 10px; background-color: #fff; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.16); font-size: 14px; line-height: 1.2; &::after { content: ''; position: absolute; left: 50%; bottom: -8px; width: 16px; height: 16px; background-color: #fff; transform: translateX(-50%) rotate(45deg); box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.08); } &-title { position: relative; z-index: 1; margin-bottom: 4px; font-weight: 600; color: var(--color-dark); } &-text { position: relative; z-index: 1; color: var(--color-text); } &-close { position: absolute; top: 7px; right: 7px; display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; padding: 0; border: 0; background: none; color: #999; cursor: pointer; transition: color 0.25s ease; &:hover { color: #222; } } } } } @include media-max($lg) { .contacts { &-body { grid-template-columns: 1fr; min-height: unset; } &-map { height: fluid-clamp(240px, 460px); order: -1; } &-card { margin-top: 20px; } } } @include media-max($md) { .contacts { &-card { &__item { &::before { top: 0; } } } } } @include media-max($sm) { .contacts { &-card { margin-top: 15px; &__list { row-gap: 15px; } &__item { &::before { width: 18px; } } &__download { &-btn { width: 100%; } } } } } .about { &-hero { display: grid; grid-template-columns: 1.25fr 1fr; column-gap: fluid-clamp(40px, 180px, 768px); &__info { margin-top: fluid-clamp(50px, 80px, 1024px); font-size: var(--fs-title-lg); line-height: 1.3; font-weight: 600; color: var(--color-dark); } } &-stats { --gap: #{fluid-clamp(40px, 135px, 1024px)}; display: grid; grid-template-columns: repeat(4, 1fr); column-gap: var(--gap); margin-top: fluid-clamp(20px, 80px); &__item { position: relative; &::after { content: ''; position: absolute; display: block; width: 1px; height: 25px; top: 0; bottom: 0; right: calc(var(--gap) / -2); margin: auto 0; background-color: #d8d8e8; } &:last-child::after { display: none; } &-value { font-size: fluid-clamp(32px, 50px); line-height: 1.1; font-weight: 600; white-space: nowrap; color: var(--color-dark); span { font-size: fluid-clamp(18px, 24px); } } &-text { margin-top: 12px; font-size: 18px; line-height: 1.3; } } } &-cards { display: grid; row-gap: 40px; margin-top: var(--space-section); } &-card { display: grid; grid-template-columns: 1.7fr 1fr; column-gap: 40px; padding-block: fluid-clamp(25px, 50px); padding-inline: fluid-clamp(20px, 50px); border-radius: var(--radius-lg); &--first { background: var(--gradient-grey); } &--second { grid-template-columns: 1fr auto; border: 1px solid #ededed; } &__title { margin-bottom: fluid-clamp(18px, 25px); font-size: var(--fs-h2-sm); font-weight: 600; } &__img, &__logo { grid-column: 2/3; grid-row: 1/4; } &__img { display: flex; align-self: center; } &__logo { padding-top: 10px; img { width: fluid-clamp(100px, 135px, 768px); } } } } @include media-max($lg) { .about { &-hero { grid-template-columns: 1fr; &__img { width: fluid-clamp(345px, 600px, 375px, 1024px); margin-inline: auto; order: -1; } } &-stats { grid-template-columns: 1fr 1fr; row-gap: 40px; &__item::after { display: none; } } &-cards { row-gap: 20px; } &-card { column-gap: 30px; } } } @include media-max($md) { .about { &-hero { &__info { margin-top: 40px; } } &-stats { row-gap: 30px; } &-card { grid-template-columns: 1fr; &__logo { display: none; } &__img { grid-column: unset; grid-row: unset; margin: 5px 0 25px; } &__content { order: 3; } } } } @include media-max($sm) { .about { &-hero { &__info { margin-top: 25px; } } &-stats { column-gap: 30px; row-gap: 20px; &__item-text { margin-top: 8px; font-size: 15px; } } &-cards { row-gap: 15px; } } } .features { margin-top: var(--space-section); &-title { text-align: center; } &-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 45px; } &-card { display: grid; grid-template-columns: 1fr auto; column-gap: 20px; padding-block: fluid-clamp(20px, 40px); padding-inline: fluid-clamp(20px, 45px); border-radius: var(--radius-lg); &--first { border: 1px solid #ededed; .features-card__img { width: fluid-clamp(90px, 160px); margin-right: fluid-clamp(-20px, -45px); margin-block: fluid-clamp(-20px, -40px); } } &--second { background: linear-gradient(160deg, #29292d 0%, #083743 100%); .features-card__title, .features-card__descr { color: #fff; } .features-card__img { width: fluid-clamp(75px, 145px); } } &--third { grid-template-columns: 1fr; grid-column: 2/3; grid-row: 1/3; background: var(--gradient-grey); .features-card__img { align-items: flex-end; margin-top: fluid-clamp(20px, 40px); margin-bottom: fluid-clamp(-20px, -40px); } } &__title { font-size: fluid-clamp(16px, 30px); line-height: 1.1; font-weight: 600; color: var(--color-dark); } &__descr { margin-top: fluid-clamp(12px, 30px); padding-right: fluid-clamp(10px, 40px, 1024px); line-height: 1.3; } &__img { display: flex; align-items: center; img { width: 100%; } } } &-bottom { display: grid; grid-template-columns: 1fr auto; column-gap: 20px; margin-top: 20px; } &-slider { min-width: 0; &__wrapper.is-grid { display: grid; align-items: stretch; grid-template-columns: repeat(3, 1fr); column-gap: 20px; } } &-item { display: flex; flex-direction: column; justify-content: space-between; min-height: fluid-clamp(140px, 225px); padding: 25px; line-height: 1.2; border-radius: var(--radius-lg); border: 1px solid #ededed; &__top { display: grid; align-items: center; grid-template-columns: 1fr auto; column-gap: 20px; } &__title { font-size: var(--fs-title-sm); font-weight: 600; line-height: 1.2; color: var(--color-dark); } &__icon { display: flex; width: fluid-clamp(30px, 50px); aspect-ratio: 1; } &__descr { margin-top: 20px; line-height: 1.3; } } &-download { display: flex; width: 195px; font-weight: 600; line-height: 1.2; &__link { display: flex; flex-direction: column; justify-content: space-between; width: 100%; padding: 25px; border-radius: var(--radius-lg); color: #fff; background-color: var(--color-red); transition: background-color 0.25s ease; &:hover { background-color: var(--color-red-dark); } span { display: flex; align-items: center; justify-content: center; width: fluid-clamp(36px, 50px); aspect-ratio: 1; border-radius: 50%; background-color: #fff; &::before { content: ''; display: block; width: 13px; height: 13px; background: var(--icon-arrow-up) center no-repeat; background-size: contain; } } } } } @include media-max($lg) { .features { &-card { &__descr { font-size: 18px; } } &-bottom { grid-template-columns: 1fr; } &-slider { &__wrapper.is-grid { grid-template-columns: unset; grid-auto-flow: column; grid-auto-columns: slide-size(2.5, 20px); } } &-item { &__descr { font-size: 18px; } } &-download { display: block; width: unset; margin-top: 20px; &__link { flex-direction: row; align-items: center; } } } } @include media-max($md) { .features { &-cards { grid-template-columns: 1fr; margin-top: 35px; } &-card { &--third { grid-column: unset; grid-row: unset; } &__descr { br { display: none; } } } &-slider { &__wrapper.is-grid { grid-auto-columns: slide-size(1.5, 15px); } } } } @include media-max($sm) { .features { &-cards { row-gap: 15px; margin-top: 25px; } &-card { &__descr { margin-top: 15px; font-size: 15px; } } &-bottom { margin-top: 15px; } &-item { padding: 20px; &__descr { font-size: 15px; } } &-download { margin-top: 15px; &__link { padding: 20px; } } } } .vacancies { &-img { aspect-ratio: 1280/300; overflow: hidden; border-radius: var(--radius-md); img { width: 100%; height: 100%; object-fit: cover; } } &-subtitle { margin-top: fluid-clamp(40px, 80px); font-size: var(--fs-h2-sm); text-align: center; span { display: inline-block; width: 2ch; margin-right: -2ch; font-size: 13px; font-weight: 400; text-align: left; vertical-align: text-top; } } &-filter { position: relative; max-width: 430px; margin: 25px auto 0; font-size: 18px; line-height: 1.3; user-select: none; -webkit-user-select: none; &__trigger { position: relative; display: flex; align-items: center; justify-content: space-between; column-gap: 15px; width: 100%; height: 64px; padding-inline: 20px; background-color: #fff; border: 1px solid #efefef; border-radius: 10px; cursor: pointer; transition: border-color 0.25s ease; &::after { content: ''; display: block; width: 12px; height: 12px; flex-shrink: 0; mask: var(--icon-angle-down) center no-repeat; -webkit-mask: var(--icon-angle-down) center no-repeat; mask-size: contain; -webkit-mask-size: contain; background-color: var(--color-text); transition: transform 0.25s ease; } } &__value { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--color-text); } &__options { position: absolute; width: 100%; top: calc(100% + 6px); left: 0; z-index: 2; opacity: 0; overflow: hidden; visibility: hidden; background-color: #fff; border-radius: 10px; border: 1px solid #ccc; transition: opacity 0.25s ease, visibility 0.25s ease; } &__link { display: block; padding: 15px 20px; color: inherit; cursor: pointer; outline: none; transition: color 0.25s ease, background-color 0.25s ease; &:hover, &:focus { background-color: var(--color-grey); } } &__option { &.is-selected a { background-color: var(--color-grey); } } &.is-open { .vacancies-filter__trigger { border-color: #ccc; &::after { transform: rotate(-180deg); } } .vacancies-filter__options { opacity: 1; visibility: visible; } } } &-list { display: grid; row-gap: 20px; margin-top: fluid-clamp(30px, 60px, 768px); transition: opacity 0.25s ease; &.is-loading { opacity: 0; } } &-item { border-radius: var(--radius-md); background-color: #fafaff; border: 1px solid transparent; transition: background-color 0.25s ease, border-color 0.25s ease; &__header { position: relative; padding: 25px 80px 25px 25px; line-height: 1.2; cursor: pointer; &::after { content: ''; position: absolute; display: block; width: 36px; aspect-ratio: 1; top: 25px; right: 25px; background: var(--icon-angle-round) center no-repeat; background-size: contain; transition: transform 0.25s ease; } } &__title { font-size: var(--fs-title-sm); font-weight: 600; color: var(--color-dark); } &__descr { margin-top: 15px; font-size: 18px; line-height: 1.3; } &__city { position: relative; margin-top: 15px; padding-left: 1.25em; color: var(--color-dark); &::before { content: ''; position: absolute; display: block; width: 1em; height: 1em; top: 0.1em; left: 0; background: var(--icon-location-alt) center no-repeat; background-size: contain; } } &__body { position: relative; height: 0; opacity: 0; overflow: hidden; visibility: hidden; will-change: height, opacity; transition: height 0.25s ease, opacity 0.25s ease, visibility 0.25s ease; &::before { content: ''; position: absolute; display: block; height: 1px; top: 0; left: 25px; right: 25px; background-color: #ededed; } } &__content { padding: 25px; } &__respond { padding: 15px 25px 30px; } &.is-active { border-color: #ededed; background-color: transparent; .vacancies-item__header::after { transform: rotate(-180deg); } .vacancies-item__body { opacity: 1; visibility: visible; } } } &-showmore { margin-top: fluid-clamp(30px, 60px, 768px); text-align: center; transition: opacity 0.25s ease; &.is-loading { opacity: 0; } &.is-hidden { display: none; } &__btn { max-width: 265px; width: 100%; } } } @include media-max($lg) { .vacancies { &-filter { &__trigger { height: 60px; } } } } @include media-max($md) { .vacancies { &-filter { max-width: unset; &__trigger { height: 56px; } &__link { padding-block: 12px; } } &-img { aspect-ratio: 1280/560; } &-item { &__respond { padding-top: 10px; &-btn { width: 100%; } } } &-showmore { &__btn { max-width: unset; } } } } @include media-max($sm) { .vacancies { &-filter { margin-top: 20px; font-size: 15px; &__trigger { height: 50px; &::after { width: 10px; height: 10px; } } &__link { padding-block: 10px; } } &-list { row-gap: 15px; margin-top: 25px; } &-subtitle { span { font-size: 12px; } } &-item { &__header { padding: 20px 70px 20px 20px; &::after { width: 30px; top: 20px; right: 20px; } } &__descr { margin-top: 10px; font-size: 15px; } &__city { margin-top: 10px; } &__content { padding: 20px; } &__respond { padding: 5px 20px 25px; } } &-showmore { margin-top: 25px; } } } .feedback { margin-top: var(--space-section); &-body { padding-top: fluid-clamp(25px, 60px); padding-bottom: fluid-clamp(30px, 70px); padding-inline: fluid-clamp(20px, 65px); border-radius: var(--radius-lg); background: var(--gradient-grey); } &-descr { margin-top: 25px; line-height: 1.3; } &-form { &__inputs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 40px; } &__file { margin-top: 20px; } &__submit { margin-top: 40px; &-btn { max-width: 312px; width: 100%; } } } } @include media-max($md) { .feedback { &-descr { margin-top: 20px; } &-form { &__inputs { grid-template-columns: 1fr; row-gap: 8px; margin-top: 30px; } &__submit { &-btn { max-width: unset; } } } } } @include media-max($sm) { .feedback { &-descr { margin-top: 12px; } &-form { &__inputs { margin-top: 20px; } &__file { margin-top: 15px; } &__submit { margin-top: 25px; } } } } .info { margin-top: var(--space-section); &-title { font-size: var(--fs-h2-sm); } &-body { padding-top: fluid-clamp(25px, 50px); padding-bottom: fluid-clamp(25px, 60px); padding-inline: fluid-clamp(20px, 50px); border-radius: var(--radius-lg); border: 1px solid #ededed; } &-content { display: grid; grid-template-columns: 1fr 1fr; column-gap: fluid-clamp(20px, 50px); row-gap: fluid-clamp(20px, 35px); margin-top: fluid-clamp(20px, 35px); &__row { grid-column: 1/-1; } } } @include media-max($lg) { .info { &-content { grid-template-columns: 1fr; } } } .error { display: flex; flex-direction: column; justify-content: center; margin: 260px 0 100px; flex: 1; &-body { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; } &-title { font-size: fluid-clamp(80px, 110px); } &-gohome { margin-top: fluid-clamp(20px, 40px); &__btn { width: fluid-clamp(180px, 240px); } } } @include media-max($xl) { .error { margin-top: fluid-clamp(160px, 240px); } } .cookie-consent { --offset: 40px; position: fixed; left: 0; right: 0; z-index: 5; opacity: 0; bottom: var(--offset); transform: translateY(calc(100% + var(--offset))); transition: transform 0.3s ease, opacity 0.3s ease; &.is-active { transform: translateY(0); opacity: 1; } &__dialog { display: grid; align-items: center; grid-template-columns: auto 1fr auto; max-width: 800px; margin-left: auto; column-gap: 20px; padding: 20px; border-radius: var(--radius-sm); background-color: var(--color-grey); &::before { content: ''; display: block; width: 36px; aspect-ratio: 1; background: var(--icon-cookie) center no-repeat; background-size: contain; } } &__info { font-size: 14px; line-height: 1.2; color: var(--color-dark); a { color: var(--color-red); transition: color 0.25s ease; &:hover { color: var(--color-red-dark); } } } &__buttons { display: flex; column-gap: 15px; .btn { height: 48px; font-size: 16px; } } &__accept-btn { padding: 0 25px; } &__reject-btn { color: var(--color-grey-dark); &:hover { color: var(--color-red); } } } @include media-max($xl) { .cookie-consent { --offset: 20px; } } @include media-max($md) { .cookie-consent { &__dialog { align-items: start; grid-template-columns: 1fr auto; max-width: unset; &::before { grid-column: 2/3; grid-row: 1/3; } } &__info { font-size: 12px; } &__buttons { justify-self: start; margin-top: 15px; .btn { height: 40px; font-size: 14px; } } &__reject-btn { order: 2; } &__accept-btn { padding: 0 20px; } } } @include media-max($sm) { .cookie-consent { --offset: 15px; &__dialog { &::before { width: 28px; } } &__info { font-size: 10px; } &__buttons { .btn { height: 30px; font-size: 12px; } } &__accept-btn { padding: 0 15px; } } } .specs { margin-top: var(--space-section); scroll-margin-top: 140px; &-body { display: grid; grid-template-columns: 300px 1fr; column-gap: fluid-clamp(45px, 70px, 1024px); } &-tabs { &__list { display: grid; row-gap: 20px; border-right: 1px solid #e8e6e6; } &__item { position: relative; padding-right: 30px; font-size: 18px; line-height: 1.1; font-weight: 600; color: var(--color-dark); cursor: pointer; transition: color 0.25s ease; &::after { content: ''; position: absolute; display: block; top: 0; right: -1px; width: 1px; height: 100%; opacity: 0; background-color: var(--color-red); transition: opacity 0.25s ease; } &.is-active { color: var(--color-red); &::after { opacity: 1; } } } } &-panel { animation: fade-in 0.5s ease both; &[hidden] { display: none; } &__title { font-size: var(--fs-title-sm); } &__content { margin-top: fluid-clamp(20px, 35px); } &__footnotes { margin-top: fluid-clamp(20px, 35px); font-size: 14px; p { margin-bottom: 1.25em; &:last-child { margin-bottom: 0; } } } } } @include media-max($lg) { .specs { &-body { grid-template-columns: 1fr; } &-tabs { display: flex; margin-inline: -20px; padding-inline: 20px; overflow-x: auto; scrollbar-width: none; &::-webkit-scrollbar { width: 0; } &__list { grid-auto-flow: column; column-gap: 20px; border-right: none; border-bottom: 1px solid #e8e6e6; } &__item { width: fluid-clamp(160px, 220px, 375px, 1024px); padding: 0 0 20px; font-size: 16px; &::after { right: 0; top: unset; bottom: -1px; width: 100%; height: 1px; } } } &-panels { margin-top: fluid-clamp(25px, 50px, 375px, 1024px); } } } @include media-max($md) { .specs { &-tabs { &__item { font-size: 14px; } } &-panel { &__footnotes { font-size: 12px; } } } } @include media-max($sm) { .specs { &-tabs { margin-inline: -15px; padding-inline: 15px; &__list { column-gap: 15px; } &__item { padding-bottom: 15px; font-size: 12px; } } &-panel { &__footnotes { font-size: 10px; } } } } @media (hover: hover) { .specs-tabs__item:hover { color: var(--color-red); } }