body {
    background: #212C42;
}

body.active {
    overflow: hidden;
}

.main-block {
    background-image: url("/img/main.webp");
    height: 100vh;
    background-repeat: no-repeat;
    background-size: cover;
    position: sticky;
    top: 0;
    left: 0;
    z-index: 1;
}

.main-block.active {
    z-index: 3;
}

.header {
    padding-top: 33px;
    position: relative;
    transition: all 0.4s ease;
    top: 0;
}

.header.slide {
    top: -100px;
    opacity: 0;
    visibility: visible;
}

.header-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

.logo {
    position: absolute;
    left: 6%;
    text-align: center;
}

.menu-list {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid #FFFFFF;
    border-radius: 20px;
    position: relative;
}

.slide-el {
    content: '';
    position: absolute;
    background: #fff;
    border-radius: 17px;
    height: 47px;
    width: var(--width);
    left: var(--left);
    opacity: var(--opacity);
    transform: translateX(var(--left));
    transition: all .4s ease;
    z-index: 1;
    cursor: pointer;
}

.menu-item {
    padding: 14px 30px;
}

.menu-item:first-child {
    padding-left: 30px;
}

.menu-item:last-child {
    padding-right: 30px;
}

.menu-item a {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
    text-transform: uppercase;
    color: #FFFFFF;
    position: relative;
    z-index: 2;
    transition: all .4s ease;
}

.menu-item.selected a {
    color: #000;
    transition: all .4s ease;
}

.header-callback {
    position: absolute;
    right: 6%;
    display: flex;
    overflow: hidden;
    border-radius: 20px;
}

.header-callback_light {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
    text-transform: uppercase;
    color: #FFFFFF;
    background: #65A358;
    border-radius: 20px;
    padding: 15px 25px;
    cursor: pointer;
    position: relative;
    z-index: 2;
    left: 0;
    transition: all 0.3s ease;
}

.header-callback_dark {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
    text-transform: uppercase;
    color: #000;
    background: #fff;
    border-radius: 20px;
    padding: 15px 25px;
    cursor: pointer;
    position: absolute;
    z-index: 1;
    left: 0;
    transition: all 0.3s ease;
}

.header-callback_dark.active {
    z-index: 3;
}

.header-callback_light.active {
    transition: all 0.3s ease-in-out;
    left: 100%;
}

.header-phone a {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 18px;
    text-transform: uppercase;
    color: #FFFFFF;
}

.header-phone {
    position: absolute;
    right: 20%;
}

.main-content {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    height: 80%;
}

.main-title {
    max-width: 1017px;
}

.main-title div {
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 85px;
    line-height: 85px;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: #FFFFFF;
    text-align: center;
    left: 0;
    transition: all .4s ease;
    position: relative;
}

.main-title div.animate-block {
    position: relative;
    transition: all .4s ease;
    left: 0;
}

.h1-flex {
    display: flex;
    justify-content: space-between;
    align-items: end;
}

.main-title div.h1-min {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 110%;
    color: #FFFFFF;
    max-width: 330px;
    padding-bottom: 10px;
    text-align: initial;
    margin-left: 96px;
}

.main-bottom {
    position: relative;
    display: flex;
    align-items: center;
}

.main-bottom_text {
    display: flex;
    flex-direction: column;
    align-items: baseline;
    position: absolute;
    left: 6%;
}

.main-bottom_text a {
    display: block;
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 110%;
    text-transform: uppercase;
    color: #FFFFFF;
    transition: all .4s ease;
}

.main-bottom_text a:hover {
    color: #65A358;
    transition: all .4s ease;
}

.main-bottom_text a:not(:last-of-type) {
    margin-bottom: 10px;
}

.main-bottom_arrow {
    position: absolute;
    right: 6%;
    border: 1px solid #FFFFFF;
    border-radius: 20px;
    padding: 14px 11px;
    cursor: pointer;
}

.main-bottom_arrow svg {
    position: relative;
    transform: translate(0, 0);
    animation: spin 2s infinite linear;
}

@keyframes spin {
    0% {
        transform: translate(0, -20%);
    }
    50% {
        transform: translate(0, 20%);
    }
    100% {
        transform: translate(0, -20%);
    }
}

.content-block {
    position: relative;
    background: #212C42;
    z-index: 2;
    box-sizing: border-box;
}

.portfolio {
    padding-top: 150px;
}

.portfolio.section {
    margin-top: 0;
}

.portfolio-items {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 30px;
}

.portfolio-item {
    display: flex;
    flex-direction: column;
    align-items: baseline;
    margin-bottom: 30px;
    position: relative;
}

.portfolio-item {
    width: calc(50% - 30px);
}

.portfolio-item_img {
    min-height: 330px;
}

.portfolio-item_img img {
    width: 100%;
    height: 100%;
    border-radius: 30px;
    object-fit: contain;
}

.portfolio-item_name {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 21px;
    text-transform: uppercase;
    color: #FFFFFF;
    margin-top: 25px;
    margin-bottom: 10px;
}

.portfolio-item_desc {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 22px;
    color: #FFFFFF;
    margin-bottom: 20px;
}

.portfolio-item_info {
    padding-top: 20px;
    border-top: 1px solid #578850;
    display: flex;
    flex-wrap: wrap;
    grid-gap: 15px;
}

.portfolio-item_label {
    border: 1px solid #5E9552;
    border-radius: 20px;
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    color: #FFFFFF;
    padding: 10px 35px;
    text-align: center;
}

.portfolio_all {
    display: flex;
    justify-content: center;
    width: 100%;
    border-top: 1px solid #5E9552;
    border-bottom: 1px solid #5E9552;
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    color: #FFFFFF;
    padding: 20px 0;
    background: transparent;
    transition: all .4s ease;
}

.price {
    width: calc(100% - 120px);
    margin: 0 auto 0 auto;
    background: #65A358;
    border-radius: 60px;
}

.price-wrapper {
    position: relative;
    padding: 130px 0;
}

.label-name {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 17px;
    text-transform: uppercase;
    color: #212C42;
    position: absolute;
    left: 5px;
    top: 136px;
}

h2.main div {
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 60px;
    line-height: 60px;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: #212C42;
}

h2.main div:first-of-type {
    text-align: end;
    padding-right: 78px;
}

h2.main div:last-of-type {
    padding-left: 98px;
}

.price-items {
    margin-top: 100px;
}

.price-item {
    padding: 45px 0;
    border-top: 1px solid #212C42;
}

.price-item:last-of-type {
    border-bottom: 1px solid #212C42;
}

.price-item_top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
}

.price-item_name {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 30px;
    line-height: 36px;
    color: #212C42;
    width: 390px;
}

.price-item_desc {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    color: #212C42;
    max-width: 229px;
}

.price-item_icon {
    background: #212C42;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 15px;
    transition: all .4s ease;
}

.price-item_icon.active {
    transform: rotate(45deg);
}

.price-bot_wrapper {
    display: none;
}

.price-item_bot {
    margin-top: 40px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    grid-gap: 20px;
}

.price-bot_el {
    display: flex;
    flex-direction: column;
    align-items: baseline;
    border: 1px solid #212C42;
    border-radius: 15px;
    padding: 20px;
    width: calc(33% - 52px);
}

.price-bot_name {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    line-height: 130%;
    color: #212C42;
    margin-bottom: 20px;
    min-height: 46px;
}

.price-bot_val {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    line-height: 130%;
    color: #212C42;
    margin-bottom: 35px;
}

.price-bot_callback {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    color: #FFFFFF;
    background: #212C42;
    border-radius: 6px;
    cursor: pointer;
    padding: 10px 45px;
    transition: all .4s ease;
}

.price-bot_callback:hover {
    transition: all .4s ease;
    background: #fff;
    color: #000;
}

.team {
    margin: 143px 0;
}

.team-wrapper {
    position: relative;
}

.team .label-name {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 17px;
    text-transform: uppercase;
    color: #fff;
    position: absolute;
    left: 0;
    top: 0;
}

.team h2.main div {
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 57px;
    line-height: 57px;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: #FFFFFF;
}

.team h2.main div:first-of-type {
    text-align: center;
}

.team h2.main div:last-of-type {
    padding-left: 98px;
}

.form {
    width: calc(100% - 120px);
    margin: 0 auto 30px auto;
    background: #65A358;
    border-radius: 60px;
}

.form-wrapper {
    position: relative;
    padding: 120px 0;
}

.form h2.main div:first-of-type {
    text-align: start;
    padding-left: 200px;
}

.form h2.main div:nth-of-type(2) {
    text-align: center;
    padding-left: 80px;
}

.form h2.main div:last-of-type {
    padding-left: 98px;
}

.contact {
    display: flex;
    justify-content: space-between;
    margin-top: 60px;
}

.contact-info {
    width: 40%;
    display: flex;
    flex-direction: column;
    align-items: baseline;
}

.contact-form {
    width: 40%;
}

.contact-info_name {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 24px;
    text-transform: uppercase;
    color: #212C42;
    padding-bottom: 15px;
    border-bottom: 1px solid #76C166;
    margin-bottom: 30px;
    width: 100%;
}

.contact-info_callback {
    display: flex;
    flex-direction: column;
    align-items: baseline;
    width: 100%;
}

.info-callback_address {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 140%;
    color: #212C42;
    margin-bottom: 35px;
}

.info-callback_tel {
    margin-bottom: 30px;
}

.info-callback_tel a {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 140%;
    color: #212C42;
    display: flex;
    align-items: center;
}

.info-callback_mail {
    padding-bottom: 40px;
}

.info-callback_mail a {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 140%;
    color: #212C42;
    display: flex;
    align-items: center;
}

.info-callback_mail a img {
    margin-right: 11px;
}

.info-callback_tel a img {
    margin-right: 11px;
}

.contact-callback_soc {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 28px 0;
    border-top: 1px solid #76C166;
    border-bottom: 1px solid #76C166;
    width: 100%;
    display: none;
}

.soc {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 140%;
    color: #212C42;
}

.contact-form_title {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 140%;
    color: #212C42;
    margin-bottom: 20px;
}

.form-group {
    margin-bottom: 20px;
}

.form-group input {
    background: #76C166;
    border-radius: 5px;
    padding: 20px 0 20px 20px;
    width: calc(100% - 20px);
    border: none;
}

.form-group textarea {
    outline: none;
    background: #76C166;
    border-radius: 5px;
    padding: 20px 0 20px 20px;
    width: calc(100% - 20px);
    border: none;
}

.form-group_submit input {
    background: #212C42;
    border-radius: 5px;
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 140%;
    color: #65A358;
    text-align: center;
    width: 238px;
    padding: 20px 0;
    border: none;
    cursor: pointer;
}

.form-l {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 13px;
    line-height: 140%;
    color: #212C42;
    margin-top: 17px;
    max-width: 500px;
}

.footer {
    padding-bottom: 30px;
}

.footer-top {
    display: flex;
    align-items: center;
    margin-bottom: 40px;
}

.footer-link {
    display: flex;
    align-items: center;
}

.footer-name {
    flex: 1;
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 140%;
    color: #939393;
}

.footer-link_item {
    display: block;
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 140%;
    color: #939393;
    margin-right: 90px;
}

.footer-link_item:last-of-type {
    margin-right: 0;
}

.footer-bot {
    display: flex;
    align-items: center;
}

.footer-info {
    display: flex;
    align-items: center;
}

.footer-info .footer-bot_item:first-of-type {
    margin-right: 178px;
}

.footer-bot_cop {
    flex: 1;
}

.footer-bot_item {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 140%;
    color: #939393;
}

.footer-bot_item a {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 140%;
    color: #939393;
}

.team-items {
    margin-top: 70px;
}

.team-item {
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin-bottom: 18px;
}

.team-item_block {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid #65A358;
    border-radius: 20px;
    width: 300px;
    height: 276px;
}

.team-block_number {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 60px;
    line-height: 73px;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: #FFFFFF;
}

.team-block_text {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    color: #FFFFFF;
}

.team-item_info {
    display: flex;
}

.team-info_wrapper {
    display: flex;
    flex-direction: column;
    align-items: baseline;
    max-width: 460px;
    margin-left: 40px;
}

.team-info_text__first {
    max-width: 321px;
}

.team-info_text {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 140%;
    color: #fff;
}

.team-info_text span {
    color: #65A358;
}

.team-hidden {
    width: 300px;
    height: 276px;
}

.team-item_bot {
    display: flex;
}

.team-item_block__2 {
    width: 360px;
    height: 276px;
    margin-right: 40px;
}

.team-item_block__3 {
    width: 460px;
    height: 276px;
}

.burger {
    display: none;
}

.portfolio_all {
    margin-top: 50px;
}

.callback-mobile {
    display: none;
}

.form-l label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    line-height: 30px;
}

.form-l label input {
    display: none;
}

.form-l label:before {
    content: '';
    position: absolute;
    top: -2px;
    left: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #212C42;
    border-radius: 2px;
}

.form-l label:after {
    content: '';
    position: absolute;
    top: -1px;
    left: 1px;
    width: 20px;
    height: 20px;
    background-image: url(/img/arrow.svg);
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.form-l label.active:after {
    content: '';
    position: absolute;
    top: -1px;
    left: 1px;
    width: 20px;
    height: 20px;
    background-image: url(/img/arrow.svg);
    background-repeat: no-repeat;
    background-position: center;
    opacity: 1;
    visibility: visible;
    transition: all 0.3s ease;
}

.popup {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #212C42;
}

.popup.active {
    display: flex;
}

.popup-title {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 30px;
    line-height: 36px;
    color: #FFFFFF;
    text-align: center;
    margin-bottom: 10px;
}

.popup-subtitle {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    text-align: center;
    color: #FFFFFF;
}

.popup-form {
    margin-top: 35px;
}

.popup-group {
    margin-bottom: 20px;
}

.popup-group input {
    outline: none;
    background: #2E3D5B;
    border-radius: 15px;
    border: none;
    padding: 25px 0 25px 25px;
    width: calc(100% - 25px);
}

.popup-submit input {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    text-transform: uppercase;
    color: #FFFFFF;
    outline: none;
    background: #65A358;
    border-radius: 15px;
    border: none;
    padding: 25px 0;
    width: 100%;
    cursor: pointer;
}

.popup-close {
    position: absolute;
    right: 40px;
    top: 40px;
    transform: rotate(45deg);
    cursor: pointer;
}

.popup-body {
    padding: 0 15px;
}

.form-l-popup {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 140%;
    color: #F4F4F4;
}

.form-l-popup label:before {
    content: '';
    position: absolute;
    top: -2px;
    left: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #F4F4F4;
    border-radius: 2px;
}

.form-l-popup label:after {
    content: '';
    position: absolute;
    top: -1px;
    left: 1px;
    width: 20px;
    height: 20px;
    background-image: url(/img/arrow-white.svg);
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.form-l-popup label.active:after {
    content: '';
    position: absolute;
    top: -1px;
    left: 1px;
    width: 20px;
    height: 20px;
    background-image: url(/img/arrow-white.svg);
    background-repeat: no-repeat;
    background-position: center;
    opacity: 1;
    visibility: visible;
    transition: all 0.3s ease;
}

.price-page_item {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-bottom: 35px;
    border-bottom: 1px solid #65A358;
    padding-bottom: 25px;
    font-family: "Inter";
}

.price-page_item-val {
    font-size: 22px;
    font-weight: 600;
    color: #fff;
}

.price-page_item-name {
    font-size: 22px;
    color: #fff;
}

.price-page_item-name span {
    font-weight: 600;
    color: #65A358;
}

.price-list {
    margin-bottom: 60px;
}

h2.page-title {
    text-align: center;
    font-size: 40px;
    color: #fff;
    margin: 40px;
    font-family: 'HelveticaNeueCyr';
    text-transform: uppercase;
    font-weight: 600;
}

.portfolio-link {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.portfolio_all:hover {
    transition: all .4s ease;
    background: #5E9552;
    color: #000;
}

.politic-block {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 18px;
    text-transform: uppercase;
    color: #FFFFFF;
    padding: 60px 0;
}

.politic-block h2 {
    margin: 20px 0;
}

.politic-block h3 {
    margin: 20px 0;
}

.politic-block p {
    margin: 5px 0;
}

.form-l a {
    color: #212C42;
}

.form-l-popup a {
    color: #F4F4F4;
}

/* ===== СЕКЦИЯ ===== */
.portfolio {
    background: #212C42;
}

/* ===== SWIPER ===== */
.portfolio-swiper {
    overflow: visible;
}

/* ВАЖНО: растягиваем слайды по высоте */
.portfolio-swiper .swiper-wrapper {
    align-items: stretch;
}

/* ===== СЛАЙД ===== */
.portfolio-slide {
    width: 440px;
    display: flex;
    height: auto; /* важно */
}

/* ===== КАРТОЧКА ===== */
.portfolio-card {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    width: 100%;
    box-shadow: 0 20px 40px rgba(33, 44, 66, 0.35);
}

/* ===== ИЗОБРАЖЕНИЕ ===== */
.portfolio-image {
    overflow: hidden;
    flex-shrink: 0;
}

.portfolio-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ===== КОНТЕНТ ===== */
.portfolio-content {
    padding-top: 22px;
    display: flex;
    flex-direction: column;
    flex: 1;
    color: #212C42;
    font-family: 'Inter';
}

/* ===== ЗАГОЛОВОК ===== */
.portfolio-title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 14px;
    color: #fff;
}
.portfolio-subtitle{
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 14px;
    color: #fff;
}
/* ===== СТАТИСТИКА ===== */
.portfolio-stats {
    list-style: none;
    padding: 0;
    margin: 0 0 14px;
    border-top: 1px solid #5E9552;
    padding-top: 14px;
}

.portfolio-stats li {
    font-size: 14px;
    margin-bottom: 6px;
    line-height: 1.4;
    color: #fff;
}

.portfolio-stats li span {
    color: #fff;
    font-weight: 600;
}

/* ===== ОПИСАНИЕ ===== */
.portfolio-desc {
    font-size: 14px;
    line-height: 1.5;
    opacity: 0.85;
    margin-top: auto;
    color: #fff;
}

/* ===== HOVER (одинаковый для всех) ===== */
.portfolio-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 30px 60px rgba(33, 44, 66, 0.45);
    transition: 0.3s ease;
}

/* ===== АДАПТИВ ===== */
@media (max-width: 768px) {
    .portfolio-slide {
        width: 280px;
    }

    .portfolio-image {
        height: 170px;
    }
}


@media (max-width: 1700px) {
    .header-phone {
        position: absolute;
        right: 19%;
    }
}

@media (max-width: 1580px) {
    .header-phone {
        right: 6%;
        bottom: -30px;
    }
}

@media (max-width: 1400px) {
    .price-space {
        width: 70%;
        text-align: center;
        margin: 0 auto;
    }

    h2.main div:first-of-type {
        text-align: center;
        padding-right: 0;
    }

    h2.main div:last-of-type {
        padding-left: 0;
        text-align: center;
    }

    .label-name {
        top: 76px;
    }

    .team h2.main div:nth-of-type(2) {
        text-align: center;
    }

    .team h2.main div:last-of-type {
        padding-left: 0;
    }

    .team-info_wrapper {
        margin-left: 0;
    }

    .team-item_info {
        flex-direction: column;
        margin-left: 20px;
    }

    .team-item {
        justify-content: flex-start;
    }

    .team-info_wrapper .team-info_text:first-of-type {
        margin: 17px 0;
    }

    .team-hidden {
        display: none;
    }

    .team-item_block__3,
    .team-item_block__2 {
        width: 50%;
        height: 276px;
    }
}

@media (max-width: 1240px) {
    h2.main div {
        font-size: 45px;
        line-height: 45px;
    }
}

@media (max-width: 1023px) {
    .price {
        width: 100%;
    }

    .form {
        width: 100%;
    }
}

@media (max-width: 1120px) {
    .container {
        max-width: 940px;
    }

    .main-title div {
        font-size: 55px;
        line-height: 75px;
    }

    .main-title div.h1-min {
        margin-left: 24px;
        padding-bottom: 18px;
    }

    .header-callback {
        display: none;
    }

    .burger {
        display: flex;
        position: relative;
        width: 60px;
        height: 60px;
        background: none;
        border-radius: 0px;
        cursor: pointer;
        flex-direction: column;
        align-items: center;
        justify-content: space-between;
        transition: all .4s ease;
        z-index: 3;
    }

    .burger span {
        width: 100%;
        height: 2px;
        background: #ffffff;
        border-radius: 100px;
        transition: all .4s ease;
    }

    .burger span:nth-of-type(1) {
        position: absolute;
        content: '';
        top: 25%;
        transform: translate(0, -25%);
    }

    .burger span:nth-of-type(2) {
        position: absolute;
        content: '';
        top: 50%;
        transform: translate(0, -50%);
    }

    .burger span:nth-of-type(3) {
        position: absolute;
        content: '';
        bottom: 25%;
        transform: translate(0, 25%);
    }

    .burger.active span:nth-of-type(1) {
        top: 50%;
        transform: translate(0, -25%) rotate(-45deg);
        width: 100% !important;
    }

    .burger.active span:nth-of-type(2) {
        width: 0% !important;
        top: 50%;
        transform: translate(0, -50%);
    }

    .burger.active span:nth-of-type(3) {
        bottom: 45%;
        transform: translate(0, -25%) rotate(45deg);
        width: 100% !important;
    }

    .logo {
        position: unset;
        flex: 1;
        text-align: start;
    }

    .header-wrapper {
        justify-content: flex-start;
        width: 100%;
    }

    .price-bot_el {
        width: calc(33% - 53px);
    }

    .callback-mobile {
        font-family: 'Inter';
        font-style: normal;
        font-weight: 400;
        display: block;
        font-weight: 400;
        font-size: 18px;
        line-height: 22px;
        text-transform: uppercase;
        color: #FFFFFF;
        background: #65A358;
        border-radius: 15px;
        padding: 24px 40px;
        cursor: pointer;
        margin-top: 40px;
    }

    .menu-item a {
        font-size: 45px;
        line-height: 54px;
    }

    .menu {
        display: none;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        height: 100%;
        background: #212C42;
        z-index: 2;
    }

    .menu.active {
        display: block;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        height: 100%;
        background: #212C42;
        z-index: 2;
    }

    .menu-list {
        border: none;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .slide-el {
        display: none;
    }

    .header-phone {
        position: unset;
        margin-right: 20px;
    }
}

@media (max-width: 950px) {
    .price-bot_el {
        width: calc(50% - 53px);
    }

    .price-bot_name {
        font-size: 14px;
    }

    .price-bot_val {
        font-size: 14px;
    }

    .team-item {
        flex-direction: column-reverse;
        align-items: inherit;
    }

    .team-item_info {
        flex-direction: column;
        margin-left: 0;
    }

    .team-items {
        display: flex;
        flex-direction: column;
        align-items: baseline;
    }

    .team-item_block__3, .team-item_block__2 {
        width: 100%;
        height: 276px;
    }

    .team-item_block__2 {
        margin-bottom: 20px;
    }

    .team-item {
        justify-content: flex-start;
        width: 100%;
    }

    .team-item_block {
        margin-top: 20px;
        width: 100%;
    }

    .team-item_bot {
        display: flex;
        flex-direction: column;
        width: 100%;
    }
}

@media (max-width: 920px) {
    h2.main div {
        font-size: 35px;
        line-height: 35px;
    }

    .team h2.main div {
        font-size: 35px;
        line-height: 35px;
    }

    .price-item_name {
        font-size: 25px;
        line-height: 30px;
    }

    .price-item_desc {
        display: none;
    }

    .form h2.main div:first-of-type {
        text-align: center;
        padding-left: 0;
    }

    .form h2.main div:nth-of-type(2) {
        text-align: center;
        padding-left: 0;
    }

    .form h2.main div:last-of-type {
        padding-left: 0;
    }
}

@media (max-width: 900px) {
    .portfolio-item_img {
        width: 100%;
    }

    .portfolio {
        padding-top: 90px;
    }

    .portfolio-item_info {
        width: 100%;
    }
}

@media (max-width: 860px) {
    .main-content {
        justify-content: flex-start;
        height: 70%;
        padding-top: 70px;
    }

    .main-title {
        position: relative;
    }

    .main-title div.h1-min {
        margin-left: 0;
        padding-bottom: 0;
        position: absolute;
        bottom: -70px;
        left: 10px;
        width: 100%;
        max-width: 100%;
    }

    .main-title div.animate-block {
        position: unset;
    }

    .h1-flex {
        justify-content: center;
        width: 100%;
    }

    .footer-top {
        flex-direction: column;
        align-items: baseline;
    }

    .footer-link {
        flex-direction: column;
        align-items: baseline;
    }

    .footer-link_item {
        margin-right: 0;
        margin-bottom: 10px;
    }

    .footer-name {
        margin-bottom: 20px;
    }

    .footer-bot {
        flex-direction: column;
        align-items: baseline;
    }

    .footer-bot_cop {
        margin-bottom: 15px;
    }

    .footer-info {
        flex-direction: column;
        align-items: baseline;
    }

    .footer-bot_item {
        margin-bottom: 15px;
    }

    .footer-info .footer-bot_item:first-of-type {
        margin-right: 0;
    }
}

@media (max-width: 800px) {
    .contact {
        flex-direction: column-reverse;
    }

    .contact-info {
        width: 100%;
    }

    .contact-form {
        width: 100%;
        margin-bottom: 60px;
    }
}

@media (max-width: 768px) {
    .portfolio-item {
        width: 100%;
    }
}

@media (max-width: 630px) {
    .main-title div {
        font-size: 35px;
        line-height: 45px;
    }

    .main-content {
        justify-content: center;
        height: 70%;
        padding-top: 0;
    }

    .main-title div.h1-min {
        font-size: 13px;
    }

    .main-title div.h1-min {
        bottom: -40px;
    }

    h2.main div {
        font-size: 25px;
        line-height: 25px;
    }
}

@media (max-width: 595px) {
    .price-bot_el {
        width: 100%;
    }
}

@media (max-width: 540px) {
    .team h2.main div {
        font-size: 25px;
        line-height: 25px;
    }

    .team-info_text {
        font-size: 14px;
    }

    .team .label-name {
        top: -40px;
    }
}

@media (max-width: 500px) {
    .label-name {
        top: 26px;
    }

    .price-items {
        margin-top: 45px;
    }

    .price-wrapper {
        position: relative;
        padding: 60px 0;
    }
}

@media (max-width: 450px) {
    .main-title div {
        font-size: 25px;
        line-height: 35px;
    }

    .main-content {
        justify-content: center;
        height: 60%;
        padding-top: 0;
        margin-bottom: 60px;
    }

    .main-title div.h1-min {
        bottom: -70px;
    }

    .main-title div.h1-min {
        font-size: 12px;
    }

    h2.main div {
        font-size: 20px;
        line-height: 21px;
    }

    .price-item_name {
        font-size: 16px;
        line-height: 30px;
    }

    .price-item_icon {
        padding: 5px;
    }
}

@media (max-width: 410px) {
    .burger {
        width: 40px;
        height: 40px;
    }

    .header-phone a {
        font-size: 15px;
    }

    .logo img {
        width: 70px;
    }
}

/*
     FILE ARCHIVED ON 10:18:36 Jul 23, 2023 AND RETRIEVED FROM THE
     INTERNET ARCHIVE ON 21:08:21 Feb 02, 2026.
     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.

     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
     SECTION 108(a)(3)).
*/
/*
playback timings (ms):
  captures_list: 0.6
  exclusion.robots: 0.049
  exclusion.robots.policy: 0.037
  esindex: 0.011
  cdx.remote: 183.22
  LoadShardBlock: 216.733 (3)
  PetaboxLoader3.datanode: 195.524 (5)
  PetaboxLoader3.resolve: 133.43 (2)
  load_resource: 140.995
  loaddict: 36.95
*/