* {
    border: 0;
    margin: 0;
    padding: 0
}

*, :after, :before {
    box-sizing: border-box
}

:after, :before {
    display: inline-block
}

body, html {
    height: 100%
}

body {
    line-height: 1;
    scrollbar-gutter: stable;
    -ms-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

button, input, textarea {
    background-color: transparent;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

input, textarea {
    width: 100%
}

label {
    display: inline-block
}

button, option, select {
    cursor: pointer
}

a {
    color: inherit;
    display: inline-block;
    text-decoration: none
}

ul li {
    list-style: none
}

img {
    height: auto;
    max-width: 100%;
    vertical-align: middle
}

h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit
}

@font-face {
    font-display: swap;
    font-family: icons;
    font-style: normal;
    font-weight: 400;
    src: url(../assets/fonts/icons.woff2) format("woff2")
}

:root {
    --primary: #7b297b;
    --secondary: #00684d;
    --dark-purple: #251025
}

body {
    color: #251025;
    font-family: Lato, sans-serif;
    font-size: 1rem;
    min-width: 20rem
}

[data-scrolllock] body {
    overflow: hidden;
    overscroll-behavior: none;
    touch-action: none
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: clip
}

.wrapper > main {
    flex: 1 1 auto
}

.wrapper > * {
    min-width: 0
}

[class*=__container] {
    margin: 0 auto;
    max-width: 91.875rem;
    padding-left: .9375rem;
    padding-right: .9375rem
}

.tabs__navigation {
    gap: 1rem
}

.tabs__title {
    background-color: #fff;
    border: .125rem solid transparent;
    border-radius: 5rem;
    box-shadow: 0 .5rem 1.25rem rgba(0, 0, 0, .05);
    transition: all .3s ease
}

.tabs__title:hover {
    border-color: var(--primary)
}

.tabs__title.--tab-active {
    background-color: var(--primary);
    color: #fff
}

.spollers__title {
    cursor: default;
    list-style: none;
    position: relative;
    text-align: left;
    width: 100%
}

.spollers__title::-webkit-details-marker, .spollers__title::marker {
    display: none
}

.--spoller-init .spollers__title {
    cursor: pointer
}

.--spoller-init .spollers__title:after, .--spoller-init .spollers__title:before {
    background-color: #000;
    content: "";
    height: .125rem;
    position: absolute;
    right: .625rem;
    top: 50%;
    transition: transform .5s ease 0s;
    width: .625rem
}

.--spoller-init .spollers__title:before {
    transform: translate(-75%, -50%) rotate(40deg)
}

.--spoller-init .spollers__title:after {
    transform: translateY(-50%) rotate(-40deg)
}

.--spoller-init .spollers__title.--spoller-active:before {
    transform: translateX(-75%) rotate(-40deg)
}

.--spoller-init .spollers__title.--spoller-active:after {
    transform: rotate(40deg)
}

.swiper {
    overflow: hidden
}

.swiper-initialized {
    touch-action: pan-y
}

.swiper-wrapper {
    box-sizing: content-box;
    display: flex;
    height: 100%;
    position: relative;
    width: 100%
}

.swiper-vertical .swiper-wrapper {
    flex-direction: column
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start
}

.swiper-initialized .swiper-slide {
    flex-shrink: 0
}

.swiper-android .swiper-slide, .swiper-android .swiper-wrapper {
    transform: translateZ(0)
}

.swiper-button-lock {
    display: none !important
}

.icon-menu {
    display: none
}

.header {
    background-color: #fff;
    padding: 1rem 0
}

.header.--header-scroll {
    box-shadow: 0 .25rem .9375rem 0 rgba(0, 0, 0, .2)
}

.header-top {
    background-color: var(--dark-purple);
    color: #fff;
    padding: .5rem 0
}

.header-top__content {
    align-items: center;
    display: flex;
    gap: 1rem;
    justify-content: space-between
}

.header-top__info ul {
    align-items: center;
    display: flex;
    gap: 1rem 3rem
}

.header-top__info ul li a {
    align-items: center;
    display: flex;
    font-size: .75rem;
    gap: .5rem
}

.header-top__info ul li a:hover {
    text-decoration: underline
}

.header-top__info ul li a svg {
    height: 1rem;
    width: 1rem
}

.header-top__socials ul {
    align-items: center;
    display: flex;
    gap: .75rem
}

.header-top__socials ul li a {
    align-items: center;
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    flex: 0 0 1.5rem;
    gap: .5rem;
    height: 1.5rem;
    justify-content: center;
    transition: all .3s;
    width: 1.5rem
}

.header-top__socials ul li a:hover {
    transform: translateY(-.125rem);
    -webkit-transform: translateY(-.125rem);
    -moz-transform: translateY(-.125rem);
    -ms-transform: translateY(-.125rem);
    -o-transform: translateY(-.125rem)
}

.header-top__socials ul li a svg {
    height: 1rem;
    width: 1.25rem
}

.header__content {
    gap: 1rem;
    justify-content: space-between
}

.header__content, .header__left {
    align-items: center;
    display: flex
}

.header__left {
    gap: 4rem
}

.header__logo {
    position: relative;
    z-index: 5
}

.header__logo img {
    max-width: 10.75rem
}

[data-header-scroll].--header-scroll {
    left: 0;
    position: sticky;
    right: 0;
    top: 0;
    z-index: 50
}

[data-header-scroll-show].--header-scroll {
    transition: translate .3s;
    translate: 0 -100%
}

[data-header-scroll-show].--header-show {
    translate: 0 0
}

.footer {
    background-color: #f7f7f7;
    padding: 3.75rem 0 1.25rem
}

.footer__content {
    display: grid;
    margin-bottom: 2.5rem
}

.footer__column--logo {
    grid-column: 1
}

.footer__logo {
    align-items: center;
    display: flex;
    margin-bottom: .5rem
}

.footer__logo-icon {
    align-items: center;
    display: flex;
    margin-right: .9375rem
}

.footer__logo-figure {
    border-radius: 50%;
    height: .75rem;
    margin-right: .25rem;
    width: .75rem
}

.footer__logo-figure--purple {
    background-color: #8b5cf6
}

.footer__logo-figure--green {
    background-color: #10b981
}

.footer__logo-text {
    display: flex;
    flex-direction: column
}

.footer__logo-title {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1
}

.footer__logo-title--green {
    color: #10b981
}

.footer__logo-subtitle {
    font-size: .875rem;
    line-height: 1
}

.footer__logo-subtitle--purple {
    color: #8b5cf6
}

.footer__description {
    color: #666;
    font-size: .875rem;
    line-height: 1.5;
    margin: 0
}

.footer__title {
    color: var(--dark-purple);
    font-weight: 700;
    max-width: 8.125rem;
    position: relative
}

.footer__list {
    list-style: none;
    margin: 0;
    padding: 0
}

.footer__list--contacts .footer__item {
    margin-bottom: 1.25rem
}

.footer__item {
    margin-bottom: 1.5rem
}

.footer__item:last-child {
    margin-bottom: 0
}

.footer__link {
    color: #000;
    font-size: .875rem;
    text-decoration: none;
    transition: color .3s ease
}

.footer__link:hover {
    color: var(--primary)
}

.footer__contact {
    align-items: flex-start;
    color: #000;
    display: flex;
    font-size: .875rem;
    gap: .5rem;
    text-decoration: none;
    transition: color .3s ease
}

.footer__contact img {
    margin-top: .25rem
}

.footer__contact span {
    line-height: 1.3
}

.footer__contact:hover {
    color: var(--primary)
}

.footer__bottom {
    align-items: center;
    border-top: .0625rem solid #e5e5e5;
    display: flex;
    justify-content: space-between;
    padding-top: 1.25rem
}

.footer__copyright {
    color: #666;
    font-size: .75rem
}

.footer__social ul {
    align-items: center;
    display: flex;
    gap: .75rem
}

.footer__social li a {
    align-items: center;
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    height: 1.5rem;
    justify-content: center;
    text-decoration: none;
    transition: all .3s ease;
    width: 1.5rem
}

.footer__social li a svg {
    height: 1rem;
    width: 1rem
}

.footer__social li a svg path {
    fill: var(--secondary)
}

.footer__social li a:hover {
    transform: translateY(-.125rem);
    -webkit-transform: translateY(-.125rem);
    -moz-transform: translateY(-.125rem);
    -ms-transform: translateY(-.125rem);
    -o-transform: translateY(-.125rem)
}

input {
    border: .0625rem solid #d3d3d3;
    border-radius: 2.5rem;
    color: var(--dark-purple);
    font-size: .875rem;
    font-weight: 500;
    min-height: 4rem;
    outline: none;
    padding: .625rem 2rem;
    transition: all .3s ease
}

input::placeholder {
    color: var(--dark-purple);
    font-style: italic;
    font-weight: 500
}

input:focus {
    border-color: var(--primary)
}

.form-error, .form__row {
    position: relative
}

.form-error {
    animation: slideIn .3s ease-out;
    color: #ef4444;
    font-size: 1rem;
    margin-bottom: .625rem;
    margin-top: .75rem;
    padding: .25rem .5rem
}

.input-error {
    border-color: #ef4444;
    box-shadow: 0 0 0 .0625rem #ef4444
}

.input-error:focus {
    border-color: #ef4444;
    box-shadow: 0 0 0 .125rem rgba(239, 68, 68, .2)
}

.form-message {
    animation: slideIn .3s ease-out;
    border-radius: .375rem;
    font-size: .875rem;
    font-weight: 500;
    margin: 1rem 0;
    padding: .75rem 1rem;
    text-align: center
}

.form-message-error {
    background: #fef2f2;
    border: .0625rem solid #fecaca;
    color: #ef4444
}

.form-message-success {
    background: #f0fdf4;
    border: .0625rem solid #bbf7d0;
    color: #059669
}

button[type=submit]:disabled {
    cursor: not-allowed;
    opacity: .7
}

.form-thank-you {
    animation: slideIn .5s ease-out;
    padding: 2rem;
    text-align: center
}

.form-thank-you .thank-you-content h3 {
    color: var(--primary);
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1rem
}

.form-thank-you .thank-you-content p {
    color: var(--dark-purple);
    font-size: 1rem;
    line-height: 1.5;
    margin: 0
}

.preloader {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    transition: all .8s .3s;
    width: 100%;
    z-index: -1
}

.preloader__body {
    display: flex;
    flex-direction: column;
    max-width: 31.25rem;
    padding: .93rem
}

.preloader__counter {
    font-size: 10rem
}

.preloader__logo {
    max-width: 12.5rem;
    width: 100%
}

.preloader__logo img {
    width: 100%
}

.preloader__line span {
    background-color: var(--secondary);
    border-radius: .625rem;
    display: inline-block;
    height: .5rem;
    margin-top: 1.25rem;
    transition: width .2s ease
}

[data-preloader-loaded] .preloader {
    opacity: 0;
    visibility: hidden
}

.title-h1, .title-h2 {
    font-weight: 900;
    line-height: 1.2
}

.main-txt {
    color: var(--dark-purple);
    font-weight: 400;
    line-height: 1.5
}

.section-header {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2rem;
    justify-content: space-between
}

.section-header__left {
    display: flex;
    flex-direction: column;
    max-width: 40.5rem
}

.section-header__right {
    max-width: 31.25rem
}

.section-header__subtitle {
    font-weight: 400;
    line-height: 1.2;
    text-transform: uppercase
}

.section-header__subtitle.subtitle-primary {
    color: #7b297b
}

.section-header__subtitle.subtitle-secondary {
    color: var(--secondary)
}

.slider-button-one {
    align-items: center;
    border-radius: 50%;
    color: var(--white);
    display: inline-flex;
    height: 1.5rem;
    justify-content: center;
    transition: all .3s ease-in-out;
    width: 1.5rem
}

.slider-button-one:hover {
    background-color: var(--secondary)
}

.slider-button-one.swiper-button-disabled {
    opacity: .5;
    pointer-events: none;
    visibility: hidden
}

.slider-button-one.swiper-button-next {
    background: url(../assets/img/icons/slider-button-right.svg) 50%/contain no-repeat
}

.slider-button-one.swiper-button-next:hover {
    transform: translateX(.25rem);
    -webkit-transform: translateX(.25rem);
    -moz-transform: translateX(.25rem);
    -ms-transform: translateX(.25rem);
    -o-transform: translateX(.25rem)
}

.slider-button-one.swiper-button-prev {
    background: url(../assets/img/icons/slider-button-left.svg) 50%/contain no-repeat
}

.slider-button-one.swiper-button-prev:hover {
    transform: translateX(-.25rem);
    -webkit-transform: translateX(-.25rem);
    -moz-transform: translateX(-.25rem);
    -ms-transform: translateX(-.25rem);
    -o-transform: translateX(-.25rem)
}

.slider-pagination-one {
    align-items: center;
    display: flex;
    gap: .5rem;
    justify-content: center
}

.slider-pagination-one .swiper-pagination-bullet {
    align-items: center;
    background-color: #ededed;
    border-radius: 50%;
    cursor: pointer;
    display: inline-flex;
    height: .5rem;
    justify-content: center;
    transform-origin: center;
    transition: all .3s ease-in-out;
    width: .5rem
}

.slider-pagination-one .swiper-pagination-bullet:hover {
    background-color: var(--secondary)
}

.slider-pagination-one .swiper-pagination-bullet-active {
    background-color: var(--secondary);
    border-radius: 1rem;
    width: 2rem
}

.button.button-md {
    font-size: 1rem;
    min-height: 2.75rem;
    padding: .5rem 1.5rem
}

.button.button-lg, .button.button-md {
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease
}

.button.button-lg {
    font-size: 1.125rem;
    padding: .75rem 2rem
}

.button.button-primary {
    align-items: center;
    background-color: var(--secondary);
    border-radius: 5rem;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    text-align: center
}

.button.button-primary:hover {
    background-color: #009b73
}

.button.button-primary-two {
    align-items: center;
    background-color: #009971;
    border-radius: 5rem;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    text-align: center
}

.button.button-primary-two:hover {
    background-color: #00cc97
}

.button.button-secondary {
    align-items: center;
    background-color: var(--primary);
    border-radius: 5rem;
    color: #fff;
    display: inline-flex;
    justify-content: center;
    text-align: center
}

.button.button-secondary:hover {
    background-color: #a136a1
}

.hero {
    color: #fff;
    display: flex;
    padding: 4rem 0;
    position: relative
}

.hero__scroll {
    align-items: center;
    animation: scroll-down .7s infinite alternate;
    bottom: 7%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    left: 0;
    position: absolute;
    right: 0
}

.hero__scroll svg {
    animation: bounce-down .7s infinite alternate;
    display: block;
    height: 1.5rem;
    width: 1.5rem
}

@keyframes bounce-down {
    0% {
        transform: translateY(0)
    }
    to {
        transform: translateY(.625rem);
        -webkit-transform: translateY(.625rem);
        -moz-transform: translateY(.625rem);
        -ms-transform: translateY(.625rem);
        -o-transform: translateY(.625rem)
    }
}

.hero__container {
    width: 100%
}

.hero__left {
    max-width: 40.5rem;
    position: relative;
    z-index: 3
}

.hero__title {
    margin-bottom: .75rem
}

.hero__subtitle {
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 2rem
}

.hero__subtitle span {
    display: inline-block;
    margin: 0 .25rem
}

.hero__text {
    margin-bottom: 2.5rem
}

.hero__text p {
    font-weight: 400;
    line-height: 1.5
}

.hero__actions {
    display: flex;
    gap: 1rem
}

.tariffs {
    background-color: #fff
}

.tariffs .tariff-card {
    display: flex;
    flex-direction: column;
    height: 100%
}

.tariffs .tariff-card__header {
    align-items: center;
    display: flex;
    margin-bottom: 1rem
}

.tariffs .tariff-card__title-bar {
    background-color: var(--primary);
    border-radius: 1.5rem;
    -webkit-border-radius: 1.5rem;
    -moz-border-radius: 1.5rem;
    -ms-border-radius: 1.5rem;
    -o-border-radius: 1.5rem;
    flex: 0 0 0.3125rem;
    height: 80%;
    margin-right: .75rem;
    width: .3125rem
}

.tariffs .tariff-card__title {
    color: var(--dark-purple);
    font-weight: 700;
    line-height: 1.1;
    margin: 0
}

.tariffs .tariff-card__description {
    margin-bottom: 2rem
}

.tariffs .tariff-card__description p {
    color: var(--dark-purple);
    font-weight: 400;
    line-height: 1.6;
    margin: 0
}

.tariffs .tariff-card__features {
    flex-grow: 1;
    list-style: none;
    margin: 0 0 2rem;
    padding: 0
}

.tariffs .tariff-card__feature {
    align-items: center;
    display: flex;
    margin-bottom: .75rem
}

.tariffs .tariff-card__feature:last-child {
    margin-bottom: 0
}

.tariffs .tariff-card__feature-icon {
    align-items: center;
    border-radius: 50%;
    display: flex;
    flex-shrink: 0;
    font-weight: 700;
    height: 1.5rem;
    justify-content: center;
    margin-right: .75rem;
    margin-top: .125rem;
    width: 1.5rem
}

.tariffs .tariff-card__feature--included .tariff-card__feature-icon {
    background-color: var(--secondary);
    color: #fff
}

.tariffs .tariff-card__feature--included .tariff-card__feature-text {
    color: #333
}

.tariffs .tariff-card__feature--excluded .tariff-card__feature-icon {
    background-color: #f44;
    color: #fff
}

.tariffs .tariff-card__feature--excluded .tariff-card__feature-text {
    color: #999;
    text-decoration: line-through
}

.tariffs .tariff-card__feature-text {
    flex: 1;
    font-size: .9rem;
    line-height: 1.4
}

.tariffs .tariff-card__price {
    color: var(--primary);
    margin-bottom: 2rem
}

.tariffs .tariff-card__price-text {
    font-weight: 600
}

.tariffs .tariff-card__action {
    text-align: center
}

.tariffs .tariff-card__button {
    justify-content: center;
    width: 100%
}

.tariffs__cards {
    display: grid;
    gap: 1.5rem;
    grid-template-columns:repeat(auto-fit, minmax(21.875rem, 1fr))
}

.tariffs__card {
    background: #fff;
    border-radius: .625rem;
    box-shadow: 0 .25rem 1.25rem rgba(0, 0, 0, .1);
    padding: 2rem 1.5rem;
    transition: transform .3s ease, box-shadow .3s ease
}

.tariffs__card:hover {
    box-shadow: 0 .5rem 1.875rem rgba(0, 0, 0, .15);
    transform: translateY(-.3125rem)
}

.services {
    background-color: #fbf7fb
}

.services-tab-content {
    display: grid;
    gap: 2rem
}

.services-tab-content__image {
    height: 100%
}

.services-tab-content__image img {
    border-radius: 1.25rem;
    -webkit-border-radius: 1.25rem;
    -moz-border-radius: 1.25rem;
    -ms-border-radius: 1.25rem;
    -o-border-radius: 1.25rem;
    height: 100%;
    max-width: 100%;
    object-fit: cover;
    width: 100%
}

.services-tab-content__right ul {
    counter-reset: item
}

.services-tab-content__right ul li {
    counter-increment: item;
    display: flex;
    flex-direction: column;
    gap: .5rem
}

.services-tab-content__right ul li:last-child {
    margin-bottom: 0
}

.services-tab-content__right ul li span {
    align-items: center;
    color: var(--dark-purple);
    display: inline-flex;
    font-weight: 700;
    gap: 1rem
}

.services-tab-content__right ul li span:before {
    color: var(--secondary);
    content: "0" counter(item);
    font-weight: 500;
    line-height: 1
}

.form-section__header {
    display: flex;
    flex-direction: column;
    gap: 1rem
}

.form-section__left {
    flex: 0 1 40%
}

.form-section__right {
    flex: 0 1 60%
}

.form-section__content {
    align-items: flex-end;
    display: flex;
    gap: 1rem 5rem
}

.form-section__content__left:first-child {
    grid-column: 1/2
}

.form-section__content__left:last-child {
    grid-column: 2/3
}

.our-services__container-max {
    margin: 0 auto;
    max-width: 120rem
}

.our-services__content {
    margin: 0 -.9375rem
}

.our-services__controls {
    align-items: center;
    display: flex;
    gap: 2rem;
    justify-content: center
}

.our-services__slide {
    background-color: #fff;
    border-radius: .625rem;
    box-shadow: 0 .25rem 1.25rem 0 rgba(0, 0, 0, .1);
    overflow: hidden
}

.our-services__slide .slide {
    display: flex;
    flex-direction: column;
    gap: 1rem
}

.our-services__slide .slide__image img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.our-services__slide .slide__body {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between
}

.our-services__slide .slide__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 1rem;
    justify-content: space-between;
    padding: 1.5rem
}

.our-services__slide .slide__content-control {
    align-items: center;
    color: var(--primary);
    display: inline-flex;
    font-weight: 700;
    gap: .5rem;
    line-height: 1.2;
    text-transform: uppercase
}

.our-services__slide .slide__content-control:after {
    background-color: var(--primary);
    content: "";
    display: block;
    height: 1.5rem;
    -webkit-mask: url(../assets/img/icons/arrow-right-more.svg) no-repeat center center/contain;
    mask: url(../assets/img/icons/arrow-right-more.svg) no-repeat center center/contain;
    transition: all .3s ease;
    width: 1.5rem
}

.our-services__slide .slide__content-control:hover {
    color: var(--secondary)
}

.our-services__slide .slide__content-control:hover:after {
    background-color: var(--secondary);
    transform: translateX(.25rem)
}

.our-services__slide .slide__content-title {
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: .75rem
}

.our-services__slide .slide__content-text {
    font-weight: 400;
    line-height: 1.5;
    line-clamp: 3;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.testimonials__container-max {
    margin: 0 auto;
    max-width: 120rem
}

.testimonials__content {
    margin: 0 -.9375rem
}

.testimonials__controls {
    align-items: center;
    display: flex;
    gap: 2rem;
    justify-content: center
}

.testimonials__slide {
    background-color: #fff;
    border-radius: .625rem;
    box-shadow: 0 .25rem 1.25rem 0 rgba(0, 0, 0, .1);
    min-height: 21.25rem;
    opacity: .5;
    overflow: hidden;
    transition: all .3s ease
}

.testimonials__slide.swiper-slide-active, .testimonials__slide.swiper-slide-next, .testimonials__slide.swiper-slide-prev {
    opacity: 1
}

.testimonials__slide .slide {
    display: flex;
    flex-direction: column;
    gap: 1rem
}

.testimonials__slide .slide__image img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.testimonials__slide .slide__body {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between
}

.testimonials__slide .slide__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 1rem;
    justify-content: space-between;
    padding: 1.5rem
}

.testimonials__slide .slide__content-control {
    align-items: center;
    color: var(--primary);
    display: inline-flex;
    font-weight: 700;
    gap: .5rem;
    line-height: 1.2;
    text-transform: uppercase
}

.testimonials__slide .slide__content-control:after {
    background-color: var(--primary);
    content: "";
    display: block;
    height: 1.5rem;
    -webkit-mask: url(../assets/img/icons/arrow-right-more.svg) no-repeat center center/contain;
    mask: url(../assets/img/icons/arrow-right-more.svg) no-repeat center center/contain;
    transition: all .3s ease;
    width: 1.5rem
}

.testimonials__slide .slide__content-control:hover {
    color: var(--secondary)
}

.testimonials__slide .slide__content-control:hover:after {
    background-color: var(--secondary);
    transform: translateX(.25rem)
}

.testimonials__slide .slide__content-name {
    color: var(--dark-purple);
    font-weight: 700;
    line-height: 1.2
}

.testimonials__slide .slide__content-jobtitle {
    font-weight: 400;
    line-height: 1.5;
    line-clamp: 3;
    max-height: 12.5rem;
    overflow: auto
}

.testimonials__slide .slide__content-bottom {
    align-items: center;
    display: flex;
    gap: 1rem;
    justify-content: space-between
}

.testimonials__slide .slide__content-quote:before {
    background: url(../assets/img/icons/quote.svg) 0 0/contain no-repeat;
    content: "";
    display: block
}

.testimonials__slide .slide__content-rating {
    align-items: center;
    display: flex;
    gap: .25rem
}

.testimonials__slide .slide__content-rating .star {
    background-color: #ccc;
    display: block;
    -webkit-mask: url(../assets/img/icons/star.svg) no-repeat center center/contain;
    mask: url(../assets/img/icons/star.svg) no-repeat center center/contain;
    transition: all .3s ease
}

.testimonials__slide .slide__content-rating .star.filled {
    background-color: var(--primary)
}

.testimonials__slide .slide__content-text {
    font-weight: 400;
    line-height: 1.5;
    line-clamp: 3;
    overflow: auto
}

.jobs__list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 2rem
}

.jobs__footer {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-top: 2rem
}

.jobs__browse-button {
    min-width: 14rem
}

.jobs .job-card {
    align-items: center;
    background: #fff;
    border: .0625rem solid #e5e7eb;
    border-radius: .75rem;
    box-shadow: 0 .5rem 1.25rem rgba(0, 0, 0, .05);
    display: flex;
    flex-wrap: wrap;
    padding: 1.5rem;
    transition: all .3s ease
}

.jobs .job-card:hover {
    box-shadow: 0 .25rem .375rem rgba(0, 0, 0, .1);
    transform: translateY(-.125rem)
}

.jobs .job-card__image {
    flex-shrink: 0
}

.jobs .job-card__image-placeholder {
    align-items: center;
    background: #f3f4f6;
    border: .125rem solid #e5e7eb;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    height: 5rem;
    justify-content: center;
    width: 5rem
}

.jobs .job-card__placeholder-icon {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-bottom: .25rem
}

.jobs .job-card__placeholder-text {
    color: #9ca3af;
    font-size: .625rem;
    font-weight: 500;
    line-height: 1;
    text-align: center
}

.jobs .job-card__content {
    flex: 1;
    min-width: 0
}

.jobs .job-card__title {
    color: #1f2937;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.4;
    margin: 0 0 .5rem
}

.jobs .job-card__meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem
}

.jobs .job-card__meta-item {
    align-items: center;
    color: #6b7280;
    display: flex;
    font-size: .875rem;
    gap: .375rem
}

.jobs .job-card__meta-icon {
    flex-shrink: 0
}

.jobs .job-card__meta-text {
    white-space: nowrap
}

.jobs .job-card__action {
    flex-shrink: 0
}

.jobs .job-card__button {
    align-items: center;
    border: .125rem solid var(--secondary);
    border-radius: 4rem;
    -webkit-border-radius: 4rem;
    -moz-border-radius: 4rem;
    -ms-border-radius: 4rem;
    -o-border-radius: 4rem;
    color: var(--dark-purple);
    display: inline-flex;
    font-weight: 700;
    justify-content: center;
    line-height: 1.2;
    padding: .75rem 2rem;
    text-transform: uppercase;
    transition: all .3s ease;
    transition: all .3s
}

.jobs .job-card__button:hover {
    background-color: var(--secondary);
    color: #fff
}

.news__grid {
    display: grid;
    gap: 2rem;
    grid-template-columns:repeat(auto-fit, minmax(21.875rem, 1fr));
    margin-top: 2rem
}

.news-card {
    background: #fff;
    border-radius: .75rem;
    box-shadow: 0 .25rem .375rem rgba(0, 0, 0, .1);
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    transition: all .3s ease
}

.news-card:hover {
    box-shadow: 0 .5rem 1.5625rem rgba(0, 0, 0, .15);
    transform: translateY(-.25rem)
}

.news-card__image {
    height: 15.625rem;
    overflow: hidden;
    position: relative
}

.news-card__img {
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
    width: 100%
}

.news-card:hover .news-card__img {
    transform: scale(1.05)
}

.news-card__logo {
    background: hsla(0, 0%, 100%, .9);
    border-radius: .5rem;
    color: var(--dark-purple);
    font-weight: 700;
    left: 1rem
}

.news-card__date, .news-card__logo {
    backdrop-filter: blur(.25rem);
    font-size: .875rem;
    padding: .5rem 1rem;
    position: absolute;
    top: 1rem
}

.news-card__date {
    align-items: center;
    -webkit-backdrop-filter: blur(.25rem);
    background: rgba(0, 104, 77, .25);
    border-radius: .25rem;
    color: #00684d;
    display: flex;
    flex-direction: column;
    font-weight: 500;
    gap: .25rem;
    justify-content: center;
    right: 1rem;
    text-transform: uppercase
}

.news-card__date span {
    font-size: 1.5rem;
    font-weight: 700
}

.news-card__overlay {
    background: linear-gradient(transparent, rgba(0, 0, 0, .7));
    bottom: 0;
    left: 0;
    padding: 2rem 1.5rem 1.5rem;
    position: absolute;
    right: 0
}

.news-card__overlay-title {
    color: #fff;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3;
    margin: 0
}

.news-card__content {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 1.5rem
}

.news-card__title {
    color: var(--dark-purple);
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.4;
    margin: 0 0 .5rem
}

.news-card__text {
    flex: 1;
    margin-bottom: 1.5rem
}

.news-card__text p {
    color: #6b7280;
    font-size: .875rem;
    line-height: 1.6;
    margin: 0
}

.news-card__actions {
    align-items: center;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-top: auto
}

.news-card__link {
    align-items: center;
    display: flex;
    font-size: .875rem;
    font-weight: 600;
    gap: .5rem;
    text-decoration: none;
    transition: all .3s ease
}

.news-card__link--salary {
    color: var(--secondary);
    text-transform: uppercase
}

.news-card__link--salary:hover {
    color: var(--primary)
}

.news-card__link--more {
    align-items: center;
    color: var(--primary);
    display: inline-flex;
    font-weight: 700;
    gap: .5rem;
    line-height: 1.2;
    text-transform: uppercase
}

.news-card__link--more:after {
    background-color: var(--primary);
    content: "";
    display: block;
    height: 1.5rem;
    -webkit-mask: url(../assets/img/icons/arrow-right-more.svg) no-repeat center center/contain;
    mask: url(../assets/img/icons/arrow-right-more.svg) no-repeat center center/contain;
    transition: all .3s ease;
    width: 1.5rem
}

.news-card__link--more:hover {
    color: var(--secondary)
}

.news-card__link--more:hover:after {
    background-color: var(--secondary);
    transform: translateX(.25rem)
}

.news-card__link-icon {
    transition: transform .3s ease
}

.news-card__link:hover .news-card__link-icon {
    transform: rotate(180deg)
}

.form__row {
    display: grid;
    gap: 1rem;
    grid-template-columns:1fr 1fr 1fr;
    margin-bottom: 1.5rem
}

.form__row:last-child {
    margin-bottom: 0
}

.form__row__col:first-child {
    grid-column: 1/2
}

.form__row__col:last-child {
    grid-column: 2/3
}

.form .input, .form__col {
    position: relative;
    width: 100%
}

.form .input {
    background-color: #fff;
    border: .125rem solid #e5e7eb;
    border-radius: .75rem;
    font-size: 1rem;
    line-height: 1.5;
    padding: 1rem 1.25rem;
    transition: all .3s cubic-bezier(.4, 0, .2, 1)
}

.form .input:focus {
    border-color: var(--primary);
    box-shadow: 0 0 0 .25rem rgba(0, 104, 77, .1);
    outline: none;
    transform: translateY(-.0625rem)
}

.form .input.typing {
    border-color: #3b82f6;
    box-shadow: 0 0 0 .25rem rgba(59, 130, 246, .1)
}

.form .input.field-error {
    animation: shake .5s ease-in-out;
    border-color: #ef4444;
    box-shadow: 0 0 0 .25rem rgba(239, 68, 68, .1)
}

.form .input.field-success {
    border-color: #10b981;
    box-shadow: 0 0 0 .25rem rgba(16, 185, 129, .1)
}

.form .input.shake {
    animation: shake .5s ease-in-out
}

.form .button {
    border-radius: .75rem;
    font-size: 1rem;
    font-weight: 600;
    justify-content: center;
    overflow: hidden;
    padding: 1rem 2rem;
    position: relative;
    transition: all .3s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.form .button:disabled {
    cursor: not-allowed;
    opacity: .7;
    transform: none
}

.form .button.loading .loading-spinner {
    animation: spin 1s linear infinite;
    height: 1.25rem;
    margin-right: .5rem;
    width: 1.25rem
}

.form .button.loading .loading-spinner circle {
    stroke: currentColor;
    stroke-width: 2;
    fill: none
}

.form .button:hover:not(:disabled) {
    box-shadow: 0 .625rem 1.5625rem rgba(0, 0, 0, .15);
    transform: translateY(-.125rem)
}

.form .button:active:not(:disabled) {
    transform: translateY(0)
}

.form div.field-error {
    align-items: center;
    animation: slideIn .3s ease-out;
    background: linear-gradient(135deg, #fef2f2, #fee2e2);
    border: .0625rem solid #fecaca;
    border-radius: .5rem;
    color: #ef4444;
    display: flex;
    font-size: .875rem;
    gap: .5rem;
    margin-top: .5rem;
    padding: .75rem
}

.form div.field-error .error-icon {
    color: #ef4444;
    flex-shrink: 0;
    height: 1rem;
    width: 1rem
}

.form div.field-error span {
    line-height: 1.4
}

.form .field-success-icon {
    animation: checkmark .5s ease-out;
    color: #10b981;
    height: 1.5rem;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1.5rem
}

.form .field-success-icon svg {
    height: 100%;
    width: 100%
}

.form .form-message {
    align-items: center;
    animation: slideIn .3s ease-out;
    border-radius: .75rem;
    display: flex;
    font-size: .875rem;
    gap: .75rem;
    line-height: 1.4;
    margin-bottom: 1.5rem;
    padding: 1rem 1.25rem
}

.form .form-message .message-icon {
    flex-shrink: 0;
    height: 1.25rem;
    width: 1.25rem
}

.form .form-message-error {
    background: linear-gradient(135deg, #fef2f2, #fee2e2);
    border: .0625rem solid #fecaca;
    color: #ef4444
}

.form .form-message-error .message-icon {
    color: #ef4444
}

.form .form-message-success {
    background: linear-gradient(135deg, #f0fdf4, #dcfce7);
    border: .0625rem solid #bbf7d0;
    color: #10b981
}

.form .form-message-success .message-icon {
    color: #10b981
}

@keyframes shake {
    0%, to {
        transform: translateX(0)
    }
    10%, 30%, 50%, 70%, 90% {
        transform: translateX(-.3125rem)
    }
    20%, 40%, 60%, 80% {
        transform: translateX(.3125rem)
    }
}

@keyframes slideIn {
    0% {
        opacity: 0;
        transform: translateY(-.625rem)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes checkmark {
    0% {
        opacity: 0;
        transform: translateY(-50%) scale(.5)
    }
    50% {
        transform: translateY(-50%) scale(1.2)
    }
    to {
        opacity: 1;
        transform: translateY(-50%) scale(1)
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg)
    }
    to {
        transform: rotate(1turn)
    }
}

.tariff-popup {
    margin: 0 auto;
    max-width: 31.25rem;
    padding: 2rem;
    width: 100%
}

.tariff-popup__header {
    margin-bottom: 2rem;
    text-align: center
}

.tariff-popup__title {
    color: var(--dark-purple);
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 .5rem
}

.tariff-popup__price {
    color: var(--primary);
    font-weight: 600;
    margin: 0
}

.tariff-popup__form .form__row {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: .5rem
}

.tariff-popup__form .form__row:last-child {
    margin-bottom: 0
}

.tariff-popup__form .form__col, .tariff-popup__form .form__row button {
    width: 100%
}

.tariff-popup__form .input {
    background-color: #fff;
    border: .125rem solid #e5e7eb;
    border-radius: .75rem;
    font-size: 1rem;
    line-height: 1.5;
    padding: 1rem 1.25rem;
    transition: all .3s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.tariff-popup__form .input:focus {
    border-color: var(--primary);
    box-shadow: 0 0 0 .25rem rgba(0, 104, 77, .1);
    outline: none;
    transform: translateY(-.0625rem)
}

.tariff-popup__form .input.field-error {
    border-color: #ef4444;
    box-shadow: 0 0 0 .25rem rgba(239, 68, 68, .1)
}

.tariff-popup__form .input.field-success {
    border-color: #10b981;
    box-shadow: 0 0 0 .25rem rgba(16, 185, 129, .1)
}

.tariff-popup__form .button {
    border-radius: .75rem;
    font-size: 1rem;
    font-weight: 600;
    justify-content: center;
    padding: 1rem 2rem;
    width: 100%
}

.tariff-popup__form .button:disabled {
    cursor: not-allowed;
    opacity: .7
}

.resume-popup {
    margin: 0 auto;
    max-width: 37.5rem;
    padding: 2rem;
    width: 100%
}

.resume-popup__header {
    margin-bottom: 2rem;
    text-align: center
}

.contact-popup__title,
.resume-popup__title {
    color: var(--dark-purple);
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 .5rem
}

.resume-popup__subtitle {
    color: #6b7280;
    font-size: 1rem;
    line-height: 1.5;
    margin: 0
}

.resume-popup__form .form__row {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 1rem
}

.resume-popup__form .form__row:last-child {
    margin-bottom: 0
}

.resume-popup__form .form__col, .resume-popup__form .form__row button {
    width: 100%
}

.resume-popup__form .input {
    background-color: #fff;
    border: .125rem solid #e5e7eb;
    border-radius: .75rem;
    font-family: inherit;
    font-size: 1rem;
    line-height: 1.5;
    padding: 1rem 1.25rem;
    resize: vertical;
    transition: all .3s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.resume-popup__form .input:focus {
    border-color: var(--primary);
    box-shadow: 0 0 0 .25rem rgba(0, 104, 77, .1);
    outline: none;
    transform: translateY(-.0625rem)
}

.resume-popup__form .input.field-error {
    border-color: #ef4444;
    box-shadow: 0 0 0 .25rem rgba(239, 68, 68, .1)
}

.resume-popup__form .input.field-success {
    border-color: #10b981;
    box-shadow: 0 0 0 .25rem rgba(16, 185, 129, .1)
}

.resume-popup__form .input.textarea {
    min-height: 7.5rem;
    resize: vertical
}

.resume-popup__form .button {
    border-radius: .75rem;
    font-size: 1rem;
    font-weight: 600;
    justify-content: center;
    padding: 1rem 2rem;
    width: 100%
}

.resume-popup__form .button:disabled {
    cursor: not-allowed;
    opacity: .7
}

.file-upload {
    position: relative;
    width: 100%
}

.file-upload__input {
    height: 0;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    width: 0
}

.file-upload__label {
    align-items: center;
    background-color: #f9fafb;
    border: .125rem dashed #d1d5db;
    border-radius: .75rem;
    cursor: pointer;
    display: flex;
    gap: 1rem;
    min-height: 5rem;
    padding: 1.5rem;
    transition: all .3s cubic-bezier(.4, 0, .2, 1)
}

.file-upload__label:hover {
    background-color: #f0fdf4;
    border-color: var(--primary);
    transform: translateY(-.0625rem)
}

.file-upload__label:focus-within {
    border-color: var(--primary);
    box-shadow: 0 0 0 .25rem rgba(0, 104, 77, .1)
}

.file-upload__icon {
    align-items: center;
    background-color: var(--primary);
    border-radius: .5rem;
    color: #fff;
    display: flex;
    flex-shrink: 0;
    height: 3rem;
    justify-content: center;
    width: 3rem
}

.file-upload__icon svg {
    height: 1.5rem;
    width: 1.5rem
}

.file-upload__text {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: .25rem
}

.file-upload__title {
    color: var(--dark-purple);
    font-size: 1rem;
    font-weight: 600
}

.file-upload__subtitle {
    color: #6b7280;
    font-size: .875rem
}

.file-upload__preview {
    background-color: #f0fdf4;
    border: .0625rem solid #bbf7d0;
    border-radius: .5rem;
    display: none;
    margin-top: 1rem;
    padding: 1rem
}

.file-upload__preview.has-file {
    animation: slideIn .3s ease-out;
    display: block
}

.file-upload__preview.error {
    background-color: #fef2f2;
    border-color: #fecaca
}

.file-upload__preview .file-info {
    align-items: center;
    display: flex;
    gap: .75rem
}

.file-upload__preview .file-info .file-icon {
    color: var(--primary);
    flex-shrink: 0;
    height: 2rem;
    width: 2rem
}

.file-upload__preview .file-info .file-icon svg {
    height: 100%;
    width: 100%
}

.file-upload__preview .file-info .file-details {
    flex: 1 1 100%
}

.file-upload__preview .file-info .file-details .file-name {
    color: var(--dark-purple);
    font-size: .875rem;
    font-weight: 600;
    margin-bottom: .25rem
}

.file-upload__preview .file-info .file-details .file-size {
    color: #6b7280;
    font-size: .75rem
}

.file-upload__preview .file-info .file-remove {
    background: none;
    border: none;
    border-radius: .25rem;
    color: #ef4444;
    cursor: pointer;
    padding: .25rem;
    transition: all .2s ease;
    width: auto !important
}

.file-upload__preview .file-info .file-remove:hover {
    background-color: #fef2f2
}

.file-upload__preview .file-info .file-remove svg {
    height: 1rem;
    width: 1rem
}

.file-upload__preview .file-info .file-error {
    align-items: center;
    color: #ef4444;
    display: flex;
    gap: .75rem
}

.file-upload__preview .file-info .file-error svg {
    flex-shrink: 0;
    height: 1.5rem;
    width: 1.5rem
}

.file-upload__preview .file-info .file-error span {
    font-size: .875rem;
    font-weight: 500
}

.job-popup {
    margin: 0 auto;
    max-width: 37.5rem;
    padding: 2rem;
    width: 100%
}

.job-popup__header {
    margin-bottom: 2rem;
    text-align: center
}

.job-popup__title {
    color: var(--dark-purple);
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 .5rem
}

.job-popup__subtitle {
    color: #6b7280;
    font-size: 1rem;
    line-height: 1.5;
    margin: 0
}

.job-popup__form .form__row {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 1rem
}

.job-popup__form .form__row:last-child {
    margin-bottom: 0
}

.job-popup__form .form__col, .job-popup__form .form__row button {
    width: 100%
}

.job-popup__form .input {
    background-color: #fff;
    border: .125rem solid #e5e7eb;
    border-radius: .75rem;
    font-family: inherit;
    font-size: 1rem;
    line-height: 1.5;
    padding: 1rem 1.25rem;
    resize: vertical;
    transition: all .3s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.job-popup__form .input:focus {
    border-color: var(--primary);
    box-shadow: 0 0 0 .25rem rgba(0, 104, 77, .1);
    outline: none;
    transform: translateY(-.0625rem)
}

.job-popup__form .input.field-error {
    border-color: #ef4444;
    box-shadow: 0 0 0 .25rem rgba(239, 68, 68, .1)
}

.job-popup__form .input.field-success {
    border-color: #10b981;
    box-shadow: 0 0 0 .25rem rgba(16, 185, 129, .1)
}

.job-popup__form .input.textarea {
    min-height: 7.5rem;
    resize: vertical
}

.job-popup__form .button {
    border-radius: .75rem;
    font-size: 1rem;
    font-weight: 600;
    justify-content: center;
    padding: 1rem 2rem;
    width: 100%
}

.job-popup__form .button:disabled {
    cursor: not-allowed;
    opacity: .7
}

.contact-popup {
    max-width: 37.5rem;
    width: 100%;
    margin: 0 auto;
    padding: 2rem
}

.contact-popup__header {
    text-align: center;
    margin-bottom: 2rem
}

.contact-popup__title {
    color: var(--dark-purple);
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 0.5rem 0
}

.contact-popup__subtitle {
    color: #6b7280;
    font-size: 1rem;
    line-height: 1.5;
    margin: 0
}

.contact-popup__form .form__row {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 1rem
}

.contact-popup__form .form__row:last-child {
    margin-bottom: 0
}

.contact-popup__form .form__row button {
    width: 100%
}

.contact-popup__form .form__col {
    width: 100%
}

.contact-popup__form .input {
    width: 100%;
    padding: 1rem 1.25rem;
    border: 0.125rem solid #e5e7eb;
    border-radius: 0.75rem;
    font-size: 1rem;
    line-height: 1.5;
    color: var(--dark-purple);
    font-family: inherit;
    resize: vertical
}

.contact-popup__form .input:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 0.25rem rgba(0, 104, 77, 0.1);
    transform: translateY(-0.0625rem)
}

.contact-popup__form .input.field-error {
    border-color: #ef4444;
    box-shadow: 0 0 0 0.25rem rgba(239, 68, 68, 0.1)
}

.contact-popup__form .input.field-success {
    border-color: #10b981;
    box-shadow: 0 0 0 0.25rem rgba(16, 185, 129, 0.1)
}

.contact-popup__form .input.textarea {
    min-height: 7.5rem;
    resize: vertical
}

.contact-popup__form .button {
    width: 100%;
    justify-content: center;
    padding: 1rem 2rem;
    font-weight: 600;
    font-size: 1rem;
    border-radius: 0.75rem
}

.contact-popup__form .button:disabled {
    opacity: 0.7;
    cursor: not-allowed
}

.google-reviews {
    padding-top: 0 !important
}

.google-reviews__content {
    margin: 0 -.9375rem
}

.google-reviews__header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 3rem
}

.google-reviews__left {
    flex: 1
}

.google-reviews__right {
    flex-shrink: 0
}

.google-reviews__google-info, .google-reviews__right {
    align-items: center;
    display: flex;
    gap: 1rem
}

.google-reviews__google-logo {
    height: 3rem;
    width: 3rem
}

.google-reviews__google-logo svg {
    height: 100%;
    width: 100%
}

.google-reviews__google-text {
    display: flex;
    flex-direction: column;
    gap: .25rem
}

.google-reviews__google-label {
    color: #6b7280;
    font-size: .875rem;
    line-height: 1.4
}

.google-reviews__rating {
    align-items: center;
    display: flex;
    gap: .5rem
}

.google-reviews__stars {
    align-items: center;
    display: flex;
    gap: .125rem
}

.google-reviews__stars .star {
    background-color: #fbbf24;
    display: block;
    height: 1.25rem;
    -webkit-mask: url(../assets/img/icons/star.svg) no-repeat center center/contain;
    mask: url(../assets/img/icons/star.svg) no-repeat center center/contain;
    width: 1.25rem
}

.google-reviews__rating-number {
    color: #6b7280;
    font-size: 1rem;
    font-weight: 500
}

.google-reviews__controls {
    align-items: center;
    display: flex;
    gap: 2rem;
    justify-content: center
}

.google-reviews__slide {
    height: auto;
    padding: 0 .9375rem
}

.review-card {
    background: #f5f5f5;
    border-radius: .75rem;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1.5rem;
    transition: all .3s ease
}

.review-card:hover {
    box-shadow: 0 .5rem 1.5625rem rgba(0, 0, 0, .1);
    transform: translateY(-.125rem)
}

.review-card__header {
    align-items: flex-start;
    display: flex;
    gap: .75rem;
    margin-bottom: 1rem;
    position: relative
}

.review-card__avatar {
    align-items: center;
    border-radius: 50%;
    display: flex;
    flex-shrink: 0;
    height: 3rem;
    justify-content: center;
    width: 3rem
}

.review-card__avatar .avatar-letter {
    color: #fff;
    font-size: 1.25rem;
    font-weight: 600
}

.review-card__avatar.avatar-img picture {
    height: 100%;
    width: 100%
}

.review-card__avatar.avatar-img img {
    border-radius: 50%;
    height: 100%;
    object-fit: cover;
    width: 100%
}

.review-card__avatar--purple {
    background: #8b5cf6
}

.review-card__avatar--pink {
    align-items: center;
    background: #ec4899;
    display: flex;
    justify-content: center
}

.review-card__avatar--green {
    align-items: center;
    background: #10b981;
    display: flex;
    justify-content: center
}

.review-card__info {
    flex: 1;
    min-width: 0
}

.review-card__name {
    color: #1f2937;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: .25rem
}

.review-card__date {
    color: #6b7280;
    font-size: .875rem;
    line-height: 1.4
}

.review-card__google-logo {
    height: 1.5rem;
    position: absolute;
    right: 0;
    top: 0;
    width: 1.5rem
}

.review-card__google-logo svg {
    height: 100%;
    width: 100%
}

.review-card__rating {
    align-items: center;
    display: flex;
    gap: .25rem;
    margin-bottom: 1rem
}

.review-card__rating .star {
    background-color: #d1d5db;
    display: block;
    height: 1.25rem;
    -webkit-mask: url(../assets/img/icons/star.svg) no-repeat center center/contain;
    mask: url(../assets/img/icons/star.svg) no-repeat center center/contain;
    width: 1.25rem
}

.review-card__rating .star.filled {
    background-color: #fbbf24
}

.review-card__text {
    display: flex;
    flex: 1;
    flex-direction: column
}

.review-card__text p {
    color: #374151;
    flex: 1;
    font-size: .875rem;
    line-height: 1.5;
    margin: 0 0 .5rem
}

.review-card__read-more {
    align-self: flex-start;
    color: #6b7280;
    font-size: .875rem;
    text-decoration: none;
    transition: color .3s ease
}

.review-card__read-more:hover {
    color: var(--primary)
}

.contact {
    background-color: #e7e6e6
}

.contact__content {
    align-items: flex-start;
    display: flex
}

.contact__map {
    flex: 0 0 50%;
    height: 100%
}

.contact__map iframe {
    object-fit: cover;
    width: 100%
}

.contact__info {
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: space-between
}

.contact__title {
    margin: 0 0 1.5rem
}

.contact__description {
    color: #251025;
    line-height: 1.6;
    margin: 0 0 2rem
}

.contact__action {
    margin-top: auto
}

body:after {
    background-color: rgba(0, 0, 0, .5);
    content: "";
    height: 100%;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    transition: opacity .8s ease 0s;
    width: 100%;
    z-index: 149
}

[data-popup-open] body:after {
    opacity: 1
}

[data-popup] {
    bottom: 0;
    left: 0;
    padding: 1.875rem .625rem;
    pointer-events: none;
    position: fixed;
    right: 0;
    top: 0;
    transition: visibility .8s ease 0s;
    visibility: hidden
}

[data-popup][data-popup-active] {
    overflow: auto;
    pointer-events: auto;
    visibility: visible;
    z-index: 150
}

[data-popup-active] [data-popup-body] {
    transform: scale(1);
    visibility: visible
}

[data-popup-wrapper] {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    min-height: 100%;
    width: 100%
}

[data-popup-body] {
    background-color: #fff;
    border-radius: 1.25rem;
    max-width: 31.25rem;
    padding: 1.25rem;
    transform: scale(0);
    transition: transform .3s ease 0s, visibility .3s ease 0s;
    visibility: hidden;
    width: 100%
}

[data-popup-close] {
    position: absolute;
    right: 1rem;
    top: 1rem
}

[data-popup-youtube-place] iframe {
    aspect-ratio: 16/9;
    width: 100%
}

@media (max-width: 61.99875em) and (min-width: 29.99875em) {
    .footer__content {
        grid-template-columns:repeat(2, 1fr)
    }
}

@media (max-width: 61.99875em) {
    .contact__content {
        flex-direction: column
    }

    .contact__map {
        flex: none;
        width: 100%
    }

    .contact__info {
        padding-left: 0
    }
}

@media (max-width: 48rem) {
    .form__row {
        gap: 1rem;
        grid-template-columns:1fr
    }

    .form__col:first-child, .form__col:last-child {
        grid-column: 1/2
    }

    .form .input {
        font-size: 1rem
    }

    .tariff-popup {
        padding: 1.5rem
    }

    .tariff-popup__title {
        font-size: 1.5rem
    }

    .tariff-popup__price {
        font-size: 1.125rem
    }

    .resume-popup {
        padding: 1.5rem
    }

    .contact-popup__title,
    .resume-popup__title {
        font-size: 1.5rem
    }

    .resume-popup__subtitle {
        font-size: .875rem
    }

    .file-upload__label {
        min-height: 4.375rem;
        padding: 1rem
    }

    .file-upload__icon {
        height: 2.5rem;
        width: 2.5rem
    }

    .file-upload__icon svg {
        height: 1.25rem;
        width: 1.25rem
    }

    .file-upload__title {
        font-size: .875rem
    }

    .file-upload__subtitle {
        font-size: .75rem
    }

    .job-popup {
        padding: 1.5rem
    }

    .job-popup__title {
        font-size: 1.5rem
    }

    .job-popup__subtitle {
        font-size: .875rem
    }
}

@media (max-width: 47.99875em) and (min-width: 29.99875em) {
    .tabs__navigation {
        grid-template-columns:repeat(2, 1fr)
    }
}

@media (max-width: 47.99875em) and (any-hover: none) {
    .icon-menu {
        cursor: default
    }
}

@media (max-width: 47.99875em) {
    .contact-popup {
        padding: 1.5rem
    }

    .contact-popup__title {
        font-size: 1.5rem
    }

    .contact-popup__subtitle {
        font-size: 0.875rem
    }

    .menu__actions {
        align-items: center;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        margin-top: 2rem;
        position: relative;
        z-index: 10
    }

    .menu__actions .button {
        width: 100%
    }

    .menu__body {
        height: 100 svh;
        overflow: auto;
        padding: 10.25rem .9375rem 1.875rem
    }

    .menu__body, .menu__body:before {
        left: -100%;
        position: fixed;
        top: 0;
        transition: left .3s;
        width: 100%;
        z-index: 4
    }

    .menu__body:before {
        background-color: #fff;
        content: "";
        height: 100%
    }

    [data-menu-open] .menu__body, [data-menu-open] .menu__body:before {
        left: 0
    }

    .menu__item {
        margin-bottom: 2rem
    }

    .menu__item:last-child {
        margin-bottom: 0
    }

    .menu__link {
        color: #424242;
        font-size: 1.25rem;
        font-weight: 500;
        position: relative;
        text-decoration: none;
        transition: all .3s ease;
        z-index: 10
    }

    .menu__link:after {
        background-color: var(--secondary);
        bottom: -.5rem;
        content: "";
        height: .125rem;
        left: 0;
        position: absolute;
        transform: scaleX(0);
        transition: transform .3s ease;
        width: 100%
    }

    .menu__link:hover {
        color: var(--secondary)
    }

    .menu__link:hover:after {
        transform: scaleX(1)
    }

    .icon-menu {
        display: block;
        height: 1.125rem;
        position: relative;
        width: 1.875rem;
        z-index: 5
    }

    .icon-menu span, .icon-menu:after, .icon-menu:before {
        background-color: #000;
        content: "";
        height: .125rem;
        position: absolute;
        right: 0;
        transition: all .3s ease 0s;
        width: 100%
    }

    .icon-menu:before {
        top: 0
    }

    .icon-menu:after {
        bottom: 0
    }

    .icon-menu span {
        top: calc(50% - .0625rem)
    }

    [data-menu-open] .icon-menu span {
        width: 0
    }

    [data-menu-open] .icon-menu:before {
        top: calc(50% - .0625rem);
        transform: rotate(-45deg)
    }

    [data-menu-open] .icon-menu:after {
        bottom: calc(50% - .0625rem);
        transform: rotate(45deg)
    }

    .header-top__info {
        flex: 1 1
    }

    .header-top__info ul {
        justify-content: space-between
    }

    .header-top__socials, .header__actions {
        display: none
    }

    .header__left {
        flex: 1 1 100%;
        justify-content: space-between
    }

    .button.button-lg {
        min-height: 3.5rem
    }

    .hero {
        min-height: 35.5rem
    }

    .form-section__content {
        flex-direction: column
    }

    .jobs .job-card {
        gap: .75rem
    }

    .jobs .job-card__action {
        align-items: center;
        display: flex;
        flex: 1 1 100%;
        justify-content: center;
        margin-top: 1rem
    }

    .jobs .job-card__action button {
        width: 100%
    }

    .google-reviews__header {
        flex-direction: column;
        gap: 2rem;
        text-align: center
    }
}

@media (max-width: 29.99875em) {
    .tabs__navigation {
        align-items: center;
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
        margin: -1rem;
        padding: 1rem
    }

    .tabs__navigation::-webkit-scrollbar {
        display: none
    }

    .tabs__title {
        min-height: 2.75rem;
        padding: .625rem .9375rem;
        white-space: nowrap
    }

    .spollers__title {
        background-color: #fff;
        border: .0625rem solid #eee;
        border-radius: .625rem;
        -webkit-border-radius: .625rem;
        -moz-border-radius: .625rem;
        -ms-border-radius: .625rem;
        -o-border-radius: .625rem;
        min-width: 100%;
        padding: 1rem;
        width: 100%
    }

    .spollers__body {
        padding: 1rem
    }

    .footer__content {
        gap: .5rem;
        grid-template-columns:1fr
    }

    .footer__column--logo {
        margin-bottom: 1rem
    }

    .footer__logo {
        max-width: 16.5625rem
    }

    .footer__bottom {
        flex-direction: column-reverse;
        gap: 1rem
    }

    .hero {
        background: var(--secondary) url(../assets/img/hero/bg-hero-mob.webp) 0 0/cover no-repeat
    }

    .hero__actions {
        flex-direction: column
    }

    .our-services__slide {
        min-height: 24rem
    }

    .testimonials__slide .slide__content-quote:before {
        height: 2.5rem;
        width: 2.5rem
    }

    .testimonials__slide .slide__content-rating .star {
        height: 1rem;
        width: 1rem
    }

    .testimonials__slide .slide__content-text {
        max-height: 14.5rem
    }

    .jobs .job-card {
        align-items: center;
        flex-direction: column
    }

    .jobs .job-card, .jobs .job-card__meta {
        justify-content: center;
        text-align: center
    }

    .contact__button {
        max-width: 18.75rem;
        width: 100%
    }
}

@media (max-width: 20em) {
    .tabs__navigation {
        margin-bottom: 1.25rem
    }

    .footer__title, .tabs__title {
        font-size: 1rem
    }

    .section-padding {
        padding-top: 2.5rem
    }

    .section-padding, .section-padding-bottom {
        padding-bottom: 2.5rem
    }

    .title-h1 {
        font-size: 2rem
    }

    .title-h2 {
        font-size: 1.5rem
    }

    .main-txt {
        font-size: 1rem
    }

    .section-header {
        margin-bottom: 1.25rem
    }

    .section-header__subtitle {
        font-size: 1rem
    }

    .hero__scroll span {
        font-size: .75rem
    }

    .hero__subtitle {
        font-size: 1rem
    }

    .hero__text p {
        font-size: .875rem
    }

    .tariffs {
        padding-top: 2.5rem
    }

    .tariffs .tariff-card__title {
        font-size: 1.5rem
    }

    .tariffs .tariff-card__description p, .tariffs .tariff-card__feature-icon {
        font-size: 1rem
    }

    .tariffs .tariff-card__price-text {
        font-size: 1.125rem
    }

    .services-tab-content__right ul {
        margin-top: 1.875rem
    }

    .services-tab-content__right ul li {
        margin-bottom: 1rem
    }

    .services-tab-content__right ul li span:before {
        font-size: 1.5rem
    }

    .services-tab-content__right ul li span {
        font-size: 1.125rem
    }

    .form-section__header {
        margin-bottom: 1rem
    }

    .our-services__controls {
        margin-top: 1rem
    }

    .our-services__slide .slide__image {
        height: 11.25rem
    }

    .our-services__slide .slide__content-control {
        font-size: .875rem
    }

    .our-services__slide .slide__content-title {
        font-size: 1rem
    }

    .our-services__slide .slide__content-text {
        font-size: .875rem
    }

    .testimonials__controls {
        margin-top: 1rem
    }

    .testimonials__slide .slide__image {
        height: 11.25rem
    }

    .testimonials__slide .slide__content-control {
        font-size: .875rem
    }

    .testimonials__slide .slide__content-name {
        font-size: 1rem
    }

    .testimonials__slide .slide__content-jobtitle, .testimonials__slide .slide__content-text {
        font-size: .875rem
    }

    .jobs .job-card__button {
        font-size: .75rem
    }

    .tariff-popup__title {
        font-size: 1.5rem
    }

    .tariff-popup__price {
        font-size: 1.125rem
    }

    .contact-popup__title,
    .job-popup__title, .resume-popup__title {
        font-size: 1.5rem
    }

    .google-reviews__controls {
        margin-top: 1rem
    }

    .contact {
        margin-bottom: 5rem
    }

    .contact__content {
        gap: 2.5rem
    }

    .contact__map iframe {
        border-radius: .75rem;
        height: 15.625rem
    }

    .contact__info {
        padding-left: 6.25 e-8rem
    }

    .contact__description {
        font-size: 1rem
    }

    .contact__button {
        min-width: 11.25rem
    }
}

@media (min-width: 20em) and (max-width: 91.875em) {
    .tabs__navigation {
        margin-bottom: clamp(1.25rem, .90217391304375rem + 1.7391304348vw, 2.5rem)
    }

    .tabs__title {
        font-size: clamp(1rem, .93043478260625rem + .347826087vw, 1.25rem)
    }

    .footer__title {
        font-size: clamp(1rem, .96521739130625rem + .1739130435vw, 1.125rem)
    }

    .section-padding {
        padding-top: clamp(2.5rem, 1.108695652175rem + 6.9565217391vw, 7.5rem)
    }

    .section-padding, .section-padding-bottom {
        padding-bottom: clamp(2.5rem, 1.108695652175rem + 6.9565217391vw, 7.5rem)
    }

    .title-h1 {
        font-size: clamp(2rem, 1.44347826086875rem + 2.7826086957vw, 4rem)
    }

    .title-h2 {
        font-size: clamp(1.5rem, 1.08260869565rem + 2.0869565217vw, 3rem)
    }

    .main-txt {
        font-size: clamp(1rem, .96521739130625rem + .1739130435vw, 1.125rem)
    }

    .section-header {
        margin-bottom: clamp(1.25rem, .90217391304375rem + 1.7391304348vw, 2.5rem)
    }

    .section-header__subtitle {
        font-size: clamp(1rem, .86086956521875rem + .6956521739vw, 1.5rem)
    }

    .hero__scroll span {
        font-size: clamp(.75rem, .71521739130625rem + .1739130435vw, .875rem)
    }

    .hero__subtitle {
        font-size: clamp(1rem, .93043478260625rem + .347826087vw, 1.25rem)
    }

    .hero__text p {
        font-size: clamp(.875rem, .84021739130625rem + .1739130435vw, 1rem)
    }

    .tariffs {
        padding-top: clamp(2.5rem, 1.8043478260875rem + 3.4782608696vw, 5rem)
    }

    .tariffs .tariff-card__title {
        font-size: clamp(1.5rem, 1.2217391304375rem + 1.3913043478vw, 2.5rem)
    }

    .tariffs .tariff-card__description p, .tariffs .tariff-card__feature-icon {
        font-size: clamp(1rem, .96521739130625rem + .1739130435vw, 1.125rem)
    }

    .tariffs .tariff-card__price-text {
        font-size: clamp(1.125rem, 1.0206521739125rem + .5217391304vw, 1.5rem)
    }

    .services-tab-content__right ul {
        margin-top: clamp(1.875rem, 1.3532608695625rem + 2.6086956522vw, 3.75rem)
    }

    .services-tab-content__right ul li {
        margin-bottom: clamp(1rem, .75652173913125rem + 1.2173913043vw, 1.875rem)
    }

    .services-tab-content__right ul li span:before {
        font-size: clamp(1.5rem, 1.2217391304375rem + 1.3913043478vw, 2.5rem)
    }

    .services-tab-content__right ul li span {
        font-size: clamp(1.125rem, 1.0206521739125rem + .5217391304vw, 1.5rem)
    }

    .form-section__header {
        margin-bottom: clamp(1rem, .75652173913125rem + 1.2173913043vw, 1.875rem)
    }

    .our-services__controls {
        margin-top: clamp(1rem, .75652173913125rem + 1.2173913043vw, 1.875rem)
    }

    .our-services__slide .slide__image {
        height: clamp(11.25rem, 10.03260869565rem + 6.0869565217vw, 15.625rem)
    }

    .our-services__slide .slide__content-control {
        font-size: clamp(.875rem, .84021739130625rem + .1739130435vw, 1rem)
    }

    .our-services__slide .slide__content-title {
        font-size: clamp(1rem, .93043478260625rem + .347826087vw, 1.25rem)
    }

    .our-services__slide .slide__content-text {
        font-size: clamp(.875rem, .84021739130625rem + .1739130435vw, 1rem)
    }

    .testimonials__controls {
        margin-top: clamp(1rem, .75652173913125rem + 1.2173913043vw, 1.875rem)
    }

    .testimonials__slide .slide__image {
        height: clamp(11.25rem, 10.03260869565rem + 6.0869565217vw, 15.625rem)
    }

    .testimonials__slide .slide__content-control {
        font-size: clamp(.875rem, .84021739130625rem + .1739130435vw, 1rem)
    }

    .testimonials__slide .slide__content-name {
        font-size: clamp(1rem, .93043478260625rem + .347826087vw, 1.25rem)
    }

    .testimonials__slide .slide__content-jobtitle, .testimonials__slide .slide__content-text {
        font-size: clamp(.875rem, .84021739130625rem + .1739130435vw, 1rem)
    }

    .jobs .job-card__button {
        font-size: clamp(.75rem, .71521739130625rem + .1739130435vw, .875rem)
    }

    .tariff-popup__title {
        font-size: clamp(1.5rem, 1.43043478260625rem + .347826087vw, 1.75rem)
    }

    .tariff-popup__price {
        font-size: clamp(1.125rem, 1.09021739130625rem + .1739130435vw, 1.25rem)
    }

    .contact-popup__title,
    .job-popup__title, .resume-popup__title {
        font-size: clamp(1.5rem, 1.43043478260625rem + .347826087vw, 1.75rem)
    }

    .google-reviews__controls {
        margin-top: clamp(1rem, .75652173913125rem + 1.2173913043vw, 1.875rem)
    }

    .contact {
        margin-bottom: clamp(5rem, 4.3043478260875rem + 3.4782608696vw, 7.5rem)
    }

    .contact__content {
        gap: clamp(2.5rem, 2.15217391304375rem + 1.7391304348vw, 3.75rem)
    }

    .contact__map iframe {
        border-radius: clamp(.75rem, .68043478260625rem + .347826087vw, 1rem);
        height: clamp(15.625rem, 13.016304347825rem + 13.0434782609vw, 25rem)
    }

    .contact__info {
        padding-left: clamp(6.25 e-8rem, 6.25e-8rem + 0vw, 6.25 e-8rem)
    }

    .contact__description {
        font-size: clamp(1rem, .96521739130625rem + .1739130435vw, 1.125rem)
    }

    .contact__button {
        min-width: clamp(11.25rem, 10.5543478260875rem + 3.4782608696vw, 13.75rem)
    }
}

@media (min-width: 29.99875em) {
    .tabs__navigation {
        display: grid
    }

    .tabs__title {
        min-height: 3.75rem;
        padding: .625rem .9375rem
    }

    .footer__content {
        gap: 2.5rem
    }

    .footer__column--logo {
        max-width: 16.5625rem
    }

    .footer__title {
        align-items: center;
        display: flex;
        justify-content: center;
        margin-bottom: 1rem;
        padding: 0 0 1rem
    }

    .footer__title:after {
        background-color: rgba(123, 41, 123, .1);
        left: 0;
        width: 100%
    }

    .footer__title:after, .footer__title:before {
        bottom: 0;
        content: "";
        height: .125rem;
        position: absolute
    }

    .footer__title:before {
        background-color: #7b297b;
        right: 0;
        width: 30%
    }

    .hero {
        background: var(--secondary) url(../assets/img/hero/bg-hero.webp) 0 0/cover no-repeat
    }

    .our-services__slide {
        min-height: 30rem
    }

    .testimonials__slide .slide__content-quote:before {
        height: 3.5rem;
        width: 3.5rem
    }

    .testimonials__slide .slide__content-rating .star {
        height: 1.5rem;
        width: 1.5rem
    }

    .testimonials__slide .slide__content-text {
        max-height: 12.5rem
    }
}

@media (min-width: 47.99875em) and (min-width: 91.875em) {
    .hero__content:before {
        right: 15%;
        width: 46%
    }
}

@media (min-width: 47.99875em) and (max-width: 91.875em) {
    .hero__content:before {
        right: 5%;
        width: 50%
    }
}

@media (min-width: 47.99875em) {
    .tabs__navigation {
        grid-template-columns:repeat(4, 1fr)
    }

    .menu__actions {
        display: none
    }

    .menu__list {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        gap: 1rem 3.5rem
    }

    .menu__link {
        color: #424242;
        font-size: 1rem;
        font-weight: 500;
        position: relative;
        text-decoration: none;
        transition: all .3s ease
    }

    .menu__link:after {
        background-color: var(--secondary);
        bottom: -.5rem;
        content: "";
        height: .125rem;
        left: 0;
        position: absolute;
        transform: scaleX(0);
        transition: transform .3s ease;
        width: 100%
    }

    .menu__link:hover {
        color: var(--secondary)
    }

    .menu__link:hover:after {
        transform: scaleX(1)
    }

    .header__actions {
        align-items: center;
        display: flex;
        gap: 1rem
    }

    .button.button-lg {
        min-height: 4rem;
        min-width: 13.75rem
    }

    .hero {
        align-items: center;
        min-height: 37.5rem
    }

    .hero__content:before {
        background: url(../assets/img/hero/hero-girl.webp) 100% 100%/contain no-repeat;
        bottom: 0;
        content: "";
        height: 100%;
        position: absolute
    }

    .hero__text {
        max-width: 37.5rem
    }

    .services-tab-content {
        grid-template-columns:1fr 1fr
    }

    .form-section__title {
        max-width: 35rem
    }

    .jobs .job-card {
        gap: 1.5rem
    }
}

@media (min-width: 61.99875em) {
    .footer__content {
        grid-template-columns:2fr 1fr 1fr 1fr 1.5fr
    }

    .contact__info {
        max-width: 33.75rem
    }
}

@media (min-width: 91.875em) {
    .tabs__navigation {
        margin-bottom: 2.5rem
    }

    .tabs__title {
        font-size: 1.25rem
    }

    .footer__title {
        font-size: 1.125rem
    }

    .section-padding {
        padding-top: 7.5rem
    }

    .section-padding, .section-padding-bottom {
        padding-bottom: 7.5rem
    }

    .title-h1 {
        font-size: 4rem
    }

    .title-h2 {
        font-size: 3rem
    }

    .main-txt {
        font-size: 1.125rem
    }

    .section-header {
        margin-bottom: 2.5rem
    }

    .section-header__subtitle {
        font-size: 1.5rem
    }

    .hero__scroll span {
        font-size: .875rem
    }

    .hero__subtitle {
        font-size: 1.25rem
    }

    .hero__text p {
        font-size: 1rem
    }

    .tariffs {
        padding-top: 5rem
    }

    .tariffs .tariff-card__title {
        font-size: 2.5rem
    }

    .tariffs .tariff-card__description p, .tariffs .tariff-card__feature-icon {
        font-size: 1.125rem
    }

    .tariffs .tariff-card__price-text {
        font-size: 1.5rem
    }

    .services-tab-content__right ul {
        margin-top: 3.75rem
    }

    .services-tab-content__right ul li {
        margin-bottom: 1.875rem
    }

    .services-tab-content__right ul li span:before {
        font-size: 2.5rem
    }

    .services-tab-content__right ul li span {
        font-size: 1.5rem
    }

    .form-section__header {
        margin-bottom: 1.875rem
    }

    .our-services__controls {
        margin-top: 1.875rem
    }

    .our-services__slide .slide__image {
        height: 15.625rem
    }

    .our-services__slide .slide__content-control {
        font-size: 1rem
    }

    .our-services__slide .slide__content-title {
        font-size: 1.25rem
    }

    .our-services__slide .slide__content-text {
        font-size: 1rem
    }

    .testimonials__controls {
        margin-top: 1.875rem
    }

    .testimonials__slide .slide__image {
        height: 15.625rem
    }

    .testimonials__slide .slide__content-control {
        font-size: 1rem
    }

    .testimonials__slide .slide__content-name {
        font-size: 1.25rem
    }

    .testimonials__slide .slide__content-jobtitle, .testimonials__slide .slide__content-text {
        font-size: 1rem
    }

    .jobs .job-card__button {
        font-size: .875rem
    }

    .tariff-popup__title {
        font-size: 1.75rem
    }

    .tariff-popup__price {
        font-size: 1.25rem
    }

    .contact-popup__title,
    .job-popup__title, .resume-popup__title {
        font-size: 1.75rem
    }

    .google-reviews__controls {
        margin-top: 1.875rem
    }

    .contact {
        margin-bottom: 7.5rem
    }

    .contact__content {
        gap: 3.75rem
    }

    .contact__map iframe {
        border-radius: 1rem;
        height: 25rem
    }

    .contact__info {
        padding-left: 6.25 e-8rem
    }

    .contact__description {
        font-size: 1.125rem
    }

    .contact__button {
        min-width: 13.75rem
    }
}
