:root {
  /* Размеры шрифтов */
  --mob-font: 14px;
  --tab-font: 17px;
  --desc-font: 24px;

  /* Ширина шрифта */
  --normal-weight: 400;
  --tnin-weight: 200;

  /* Отступы */
  --mob-padding: 24px;
  --tab-padding: 32px;
  --desk-padding: 40px;

  /* Цвета */
  --bg-color: #f0f4f9;
  --fg-color: #fff;
  --main-color: #002050;
  --main-focus-color: rgba(0, 32, 80, 0.5);
  --accent-color: #1170FF;
  --footer-bg-color: #000B1B;
  --button-hover-color: var(--fg-color);
  --button-text-color: var(--fg-color);
  --link-color: var(--main-color);
  --link-hover-color: var(--accent-color);
  --second-color: #607594;
  --decor-color: #cecece;
  --footer-text-color: #80858d;
  --tabs-color: #D6DFEA;

  /* Размеры девайсов */
  --max-width: 1440px;
  --mob-width: 360px;
  --tab-width: 768px;
  --desk-width: 1024px;
  --midle-desc-width: 1280px;

  /* Основные скругления */
  --border-radius: 80px;
  --mob-border-radius: 40px;

  /* Анимации */
  --transition-time: .5s;
}

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  font-weight: 400;
  transition: all var(--transition-time);
}

a {
  color: var(--main-color);
  text-decoration: none;
}

img {
  max-width: 100%;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}

.page {
  height: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: 115px;
}

.page-body {
  position: relative;
  min-height: 100svh;
  width: 100vw;
  display: grid;
  grid-template-rows: 66px 1fr 784px;
  grid-template-areas:
    "header"
    "main"
    "footer";
  align-content: start;
  justify-items: center;
  align-items: center;

  font-family: "AeonikPro-Regular", Inter, sans-serif;
  font-size: var(--mob-font);
  line-height: 110%;

  color: var(--main-color);
  background-color: var(--bg-color);
}

.header {
  grid-area: header;
  height: 66px;
  background-color: var(--fg-color);
  border-radius: 0 0 32px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  top: 0;
  left: 0;
  right: 0;
  position: fixed;
  z-index: 100;
}

.header__wrapper {
  background-color: var(--fg-color);
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: space-between;
  padding: 7px 24px 12px;
  border-radius: 0 0 32px 32px;
}

.header__nav {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  padding: 80px 20px 30px;
  background-color: var(--fg-color);
  border-radius: 0 0 32px 32px;
  gap: 9px;
  z-index: -1;
  transform: translateY(-350px);
}

.header__nav.active {
  transform: translateY(0);
}

.header__link-logo {
  color: var(--main-color);
}

.header__link-logo[href]:hover {
  color: var(--accent-color);
}

.header__link-logo:not([href]):hover {
  color: var(--main-color);
}

.header__toggle {
  border-radius: 0;
  border: none;
  background-color: transparent;
  height: 48px;
  width: 48px;
  display: block;
  position: relative;
}

.header__toggle:before {
  top: 17px;
}

.header__toggle:after {
  bottom: 17px;
}

.header__toggle:before,
.header__toggle:after {
  content: "";
  width: 48px;
  height: 2px;
  background-color: var(--accent-color);
  right: 0;
  display: block;
  position: absolute;
  transition: all .5s;
}
.section-project__content-body-director-photo {
    width: 72px;
    height: 72px;
    border-radius: 100%;
    object-fit: cover;
}
.header__toggle.active:before {
  transform: translateY(6px) translateX(-7px) rotate(45deg);
  width: 30px;
}

.header__toggle.active:after {
  transform: translateY(-6px) translateX(-7px) rotate(-45deg);
  width: 30px;
}

.main {
  grid-area: main;
  width: 100%;
  z-index: 2;
  display: flex;
  height: 100%;
  flex-direction: column;
  border-radius: var(--border-radius);
  background-color: var(--bg-color);
}

.footer {
  background-color: var(--footer-bg-color);
  color: var(--footer-text-color);
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  grid-area: footer;
  z-index: 1;
  padding: 80px 24px 74px;
}

.footer::before {
  content: "";
  display: block;
  width: 100%;
  height: 100px;
  background-color: var(--footer-bg-color);
  position: absolute;
  top: -100px;
  left: 0;
}
.section-project__content-body-left-text {
	display: none;
}
.footer__section {
  display: flex;
  margin: 0 auto;
  width: 100%;
  padding: 0;
}

.footer__title {
  display: none;
}

.footer__wrapper {
  display: flex;
  flex-direction: column;
  gap: 35px;
  width: 100%;
  height: 100%;

  background-image: url("./images/logo-dtm.svg");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 270px;
}

.footer__info {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.footer__info:last-child {
  gap: 3px;
}

.footer__info .footer__link {
  text-decoration: underline;
  margin-right: auto;
  color: var(--footer-text-color);
  font-size: 14px;
  line-height: 14px;
}

.footer__info .footer__link:hover {
  opacity: 0.5;
}

.breadcrumbs {
    display: flex;
    align-items: center;
    gap: 0px 8px;
	padding-top: 55px;
}
.breadcrumbs__item {
    font-size: 12px;
    line-height: 14px;
    color: #667996;
    font-weight: 400;
}
.breadcrumbs__item_active {
    color: #1170FF;
}
.title_h1 {
	font-size: 132px;
}
.cases__detail-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    max-height: 515px;
    object-fit: cover;
    object-position: center;
}
.cases__detail-main {
    position: relative;
    border-radius: 80px;
    background-color: white;
    padding: 100px 0px 40px;
       margin-top: 200px;
}
.cases__header {
    padding: 56px 0px 100px;
}
.cases__header-inner {
    display: flex;
    flex-direction: column;
    gap: 56px 0px;
}
.cases__header-feature {
    display: flex;
    flex-direction: column;
	max-width: 166px;
    align-items: flex-start;
}
.cases__header-features {
    display: grid;
    grid-template-columns: auto auto auto;
    gap: 0px 64px;
    justify-content: start;
}
.cases__header-feature-title {
    font-size: 66px;
    line-height: 66px;
    color: #1170FF;
}
.cases__header-feature-text {
    font-size: 17px;
    line-height: 19px;
	opacity: 60%;
    color: #002050;
}
.cases__detail-main-accordion-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.cases__detail-main-accordion-title {
    font-size: 24px;
    line-height: 24px;
    color: #002050;
}
.cases__detail-main-accordion-title_active {
    color:#1170FF;
}

.cases__detail-main-accordion {
    border-radius: 40px;
    background-color: #F0F4F9;
    padding: 24px 32px;
	cursor: pointer;
}
.cases__advantages {
    padding: 100px 0px;
    background-color: white;
    border-radius: 80px;
}
.cases__detail-main-accordion-text {
  width: 100%;
    max-height: 0;
    opacity: 0;
    margin-top: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, opacity 0.3s ease, margin-top 0.3s ease, color 0.3s;
    font-size: 18px;
    line-height: 19px;
    color: #002050;

}

.cases__detail-main-accordion-text_open {
	margin-top: 1.5rem;
    opacity: 1;
}
.cases__detail-main-accordion-arrow {
    border: none;
    cursor: pointer;
    width: 40px;
    height: 40px;
	transition: all .3s;
} 
.cases__detail-main-accordion-arrow_active {
	transform: rotate(180deg);
}
.cases__advantages-inner {
    display: flex;
    flex-direction: column;
    gap: 80px 0px;
}
.cases__advantages-title {
    font-size: 66px;
    line-height: 90px;
    color: #1170FF;
}
.cases__advantages-title_black {
    color: #002050;
}
.cases__advantages-top {
    display: flex;
    flex-direction: column;
    gap: 60px 0px;
}
.cases__advantages-item {
    background-color: #F0F4F9;
    border-radius: 40px;
    padding: 40px 32px;
    display: flex;
    min-height: 279px;
    flex-direction: column;
    justify-content: space-between;
}
.cases__advantages-item-title {
    font-size: 24px;
    line-height: 24px;
    color: #002050;
}
.cases__advantages-item-subtitle {
    font-size: 17px;
    line-height: 19px;
    color: #002050;
    opacity: 60%;
}
.cases__advantages-item-header {
    display: flex;
    flex-direction: column;
    gap: 18px 0px;
}
.cases__advantages-items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 18px;
}
.cases__partners-item {
    background-color: #F0F4F9;
    border-radius: 32px;
    padding: 40px 56px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.cases__partners-item_hidden {
	display: none;
}
.cases__main {
    margin: 80px 0px;
}
.cases__main-title {
    font-size: 66px;
    line-height: 66px;
    color: #002050;
}
.cases__main-title_blue {
	color: #1170FF;
}
.cases__main-block {
    display: flex;
    flex-direction: column;
    gap: 48px 0px;
}
.cases__main-items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 12px;
}
.cases__main-items-more {
    font-size: 22px;
    line-height: 22px;
    color: #002050;
    border-bottom: 1px solid #002050;
    cursor: pointer;
}
.cases__main-item {
    border-radius: 32px;
    background-color: white;
    padding: 12px 12px 32px 12px;
    display: flex;
    flex-direction: column;
    gap: 20px 0px;
}
.cases__main-item_hidden {
	display: none;
}

.cases__main-list {
    display: flex;
    flex-direction: column;
    gap: 48px 0px;
    align-items: center;
}
.cases__main-item-type {
    font-size: 16px;
    line-height: 16px;
    color: #607594;
    opacity: 80%;
    min-height: 16px;
}
.cases__main-item-link {
    font-size: 18px;
    line-height: 18px;
    color: #1170FF;
}
.cases__main-item-name {
    font-size: 28px;
    line-height: 120%;
    color: #002050;
}
.cases__main-item-content {
    display: flex;
    flex-direction: column;
    gap: 20px 0px;
	padding: 0px 12px;
}
.cases__main-item-header {
    display: flex;
    flex-direction: column;
    gap: 12px 0px;
}

.cases__main-item-image {
    border-radius: 24px;
    max-height: 200px;
    object-fit: cover;
}
.cases__main-inner {
    display: flex;
    flex-direction: column;
    gap: 60px 0px;
}
.cases__partners-image {
    max-width: 154px;
    max-height: 90px;
    object-fit: contain;
}
.cases__partners-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 64px;
}
.cases__partners-items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 12px;
}
.cases__partners-items-more {
    font-size: 22px;
    line-height: 22px;
    color: #002050;
    border-bottom: 1px solid #002050;
    cursor: pointer;
}
.cases__advantages-bottom {
    display: flex;
    flex-direction: column;
    gap: 60px 0px;
}
.contacts-intro {
    position: relative;
    margin-top: -115px;
    width: 100%;
    max-height: 515px;
}
.contacts-intro__image {
    width: 100%;
    height: 100%;
    max-height: 515px;
    object-fit: cover;
	object-position: top;
}
.container {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 0px 40px;
}
.contacts-content {
    margin-top: -90px;
    background-color: white;
    padding: 100px 0px 160px;
    border-top-left-radius: 80px;
    border-top-right-radius: 80px;
    position: relative;
}
.contacts-content__inner {
    display: flex;
    flex-direction: column;
    gap: 56px 0px;
}
.contacts-content__block {
    display: grid;
    grid-template-columns: auto 899px;
	align-items: start;
}
.contacts-content__block-header-right {
    display: flex;
    flex-direction: column;
    gap: 56px 0px;
}
.contacts-content__block-header {
    margin-bottom: 24px;
}
.contacts-content__block-left {
    display: flex;
    justify-content: flex-start;
    padding-top: 26px;
}
.contacts-content__block-text {
    font-size: 24px;
    line-height: 29px;
}
.contacts-content__block-right-mail {
    font-size: 32px;
    line-height: 38px;
    color: #667996;
}
.contacts-content__block-right-phone {
    font-size: 48px;
    line-height: 44px;
}
.contacts-content__block-right-info {
    display: flex;
    flex-direction: column;
    gap: 16px 0px;
}
.contacts-content__block-right-wrapper {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.contacts-content__block-social-item {
    background-color: white;
    border-radius: 24px;
    padding: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
	cursor: pointer;
	transition: all .3s;
}
.contacts-content__block-social-item:hover svg path.icon {
	fill: #1170FF;
	transition: all .3s;
}
.contacts-content__block-social {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0px 12px;
}
.contacts-content__block-right-wrapper iframe {
    border-radius: 40px;
}
.section-project {
    background-color: #F0F4F9;
    padding: 40px 0px 140px;
    border-radius: 80px;
    position: relative;
    z-index: 1;
    margin-top: -90px;
}
.cases__form {
    margin-top: 0px !important;
    background-color: white !important;
    padding: 114px 0px 110px !important;
}

.cases__detail-main-top-header {
    display: flex;
    flex-direction: column;
    gap: 24px 0px;
}
.cases__main-filters {
    display: grid;
        grid-template-columns: 1fr;
    gap: 0px 32px;
}
.cases__detail-form {
    background-color: #F0F4F9 !important;
    border-top-left-radius: 80px !important;
    border-top-right-radius: 80px !important;
    margin-top: -80px !important;
}
.cases__main-filter-button {
    border-radius: 32px;
    border: 1px solid #D6DFEA;
    padding: 12px 24px;
    background-color: transparent;
    font-size: 18px;
    line-height: 22px;
	cursor: pointer;
    color: #002050;
}
.cases__main-filter-button_active {
	color: white;
	background-color: #1170FF;
}
.cases__main-filter-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
}
.cases__main-filters-title {
    font-size: 17px;
    line-height: 19px;
    color: #002050;
}
.cases__main-filters-block {
    display: flex;
    flex-direction: column;
    gap: 24px 0px;
}

.link {
	color: #1170FF;
}
.contacts-content-block-tag {
    font-size: 20px;
    line-height: 23px;
    color: white;
    padding: 14px 32px 14px;
    border-radius: 1000px;
    background-color: #1170FF;
	min-width: 220px;
	display: flex;
    align-items: center;
    justify-content: center;
}
.contacts-content__block-right {
    padding: 40px;
    border-radius: 40px;
    background-color: #F0F4F9;
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}

.title_h1 {
    font-size: 122px;
    color: #002050;
    line-height: 110px;
}
.title_h2 {
    font-size: 66px;
    line-height: 63px;
}
.title_h4 {
    font-size: 32px;
    line-height: 38px;
}
.section-project__image {
	border-radius: 80px;
}
.section-project__inner {
    display: flex;
    flex-direction: column;
    gap: 100px 0px;
}
.section-project__content-header {
    display: grid;
    grid-template-columns: 1fr 899px;
}
.section-project__content {
    display: flex;
    flex-direction: column;
    gap: 60px 0px;
}
.section-project__content-body {
    display: grid;
    grid-template-columns: 1fr 899px;
} 
.section-project__content-body-left {
    display: flex;
    flex-direction: column;
    gap: 6px 0px;
    padding-top: 120px;
}
.cases__detail-main-top-body {
    display: grid;
   grid-template-columns: 1fr 1fr;
    gap: 0px 24px;
}
.cases__detail-main-top-body-content-block {
    display: flex;
    align-items: center;
    gap: 0px 12px;
}
.cases__detail-main-top-body-text {
    font-size: 18px;
    line-height: 19px;
}
.cases__detail-main-top-body-title {
    font-size: 24px;
    line-height: 24px;
    color: #607594;
}
.cases__detail-help-block-header-text {
    font-size: 18px;
    line-height: 24px;
    max-width: 578px;
}
.cases__detail-help-block-header-title {
    font-size: 40px;
    line-height: 40px;
    max-width: 692px;
	width: 692px;
}
.cases__detail-help-block-body-item-content-title {
    font-size: 24px;
    line-height: 24px;
}
.cases__detail-help-block-body-item-content-text  {
    font-size: 18px;
    line-height: 19px;
    opacity: 60%;
}
.cases__detail-help-block-body-item-content {
    display: flex;
    flex-direction: column;
    gap: 24px 0px;
}
.cases__detail-help-block-body-item {
    padding: 40px 48px 40px 32px;
    border-radius: 40px;
    background-color: white;
    display: flex;
    align-items: flex-start;
    gap: 0px 20px;
}
.cases__detail-help-block-body {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 24px;
}
.cases__detail-help-block {
    display: flex;
    flex-direction: column;
    gap: 48px 0px;
}
.cases__detail-help-inner {
    display: flex;
    flex-direction: column;
    gap: 60px 0px;
}
.cases__detail-help-block-header {
    display: grid;
    grid-template-columns: auto auto;
    gap: 0px 90px;
}
.cases__detail-help-title {
    font-size: 66px;
    line-height: 66px;
}
.cases__detail-help-title-blue {
	color: #1170FF;
}
.cases__detail-help {
    padding: 80px 0px;
}
.cases__detail-main-bottom-info-items {
    font-size: 18px;
    line-height: 19px;
}
.cases__detail-main-bottom-info {
    display: flex;
    align-items: center;
    gap: 0px 24px;
}
.cases__detail-main-bottom-info-block {
    display: flex;
    align-items: center;
    gap: 0px 8px;
}
.cases__detail-main-bottom-info-title {
    font-size: 18px;
    line-height: 19px;
    opacity: 60%;
}
.cases__detail-main-bottom-content-desc {
    font-size: 24px;
    line-height: 26px;
    opacity: 60%;
}
.cases__detail-main-bottom-content {
    display: flex;
    flex-direction: column;
    gap: 18px 0px;
   max-width: 1320px;
}
.cases__detail-main-bottom-content-title {
    font-size: 24px;
    line-height: 26px;
}
.cases__detail-main-inner {
    display: flex;
    flex-direction: column;
    gap: 60px 0px;
}
.cases__detail-main-bottom {
    padding-top: 40px;
    border-top: 1px solid #D6DFEA;
	display: flex;
    flex-direction: column;
    gap: 60px 0px;
}
.cases__detail-main-bottom-title {
    font-size: 66px;
    line-height: 66px;
}
.cases__detail-main-bottom-title-blue {
	color: #1170FF;
}
.cases__detail-banner-subtitle {
    font-size: 24px;
    line-height: 120%;
}
.cases__detail-banner {
    border-radius: 80px;
    padding: 40px;
    background-color: white;
    display: flex;
    align-items: center;
    gap: 0px 48px;
}
.cases__detail-banner-image {
    max-width: 333px;
    object-fit: cover;
    width: 100%;
    max-height: 445px;
    height: 445px;
    border-radius: 80px;
}
.cases__detail-banner-button {
	justify-content: flex-start;
    padding-left: 40px;
    display: flex;
    align-items: center;
    position: relative;
	        min-height: 104px;
        font-size: 24px;
        line-height: 36px;
    width: 100%;
    background-color: #1170FF;
    color: #fff;
    border: 1px solid #1170FF;
    cursor: pointer;
	max-width: 544px;
    border-radius: 200px;
    font: 24px / 36px "AeonikPro-Regular", Inter, sans-serif;
    transition: all 0.5s;
}
.cases__detail-client-emp {
    font-size: 17px;
    line-height: 19px;
    color: #607494;
}
.cases__detail-client-name {
    font-size: 17px;
    line-height: 19px;
}
.cases__detail-client-profile {
    display: flex;
    align-items: center;
    gap: 0px 12px;
}
.cases__detail-client-notation {
    font-size: 32px;
    line-height: 38px;
    font-style: italic;
}
.cases__detail-client-review {
    display: flex;
    flex-direction: column;
    gap: 20px 0px;
}
.cases__detail-main-inner {
    display: flex;
    flex-direction: column;
    gap: 50px 0px;
}
.cases__detail-main-top {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}

.cases__detail-client-service {
    padding: 12px 24px;
    border-radius: 100px;
    border: 1px solid #D6DFEA;
    font-size: 18px;
    line-height: 22px;
}
.cases__detail-client-services-list {
    display: flex;
    align-items: center;
    gap:  8px;
    flex-direction: row;
    flex-wrap: wrap;
}
.cases__detail-client-services-title {
    font-size: 40px;
    line-height: 40px;
}
.cases__detail-client-services-title-blue {
	color: #1170FF;
}
.cases__detail-client-services {
    display: flex;
    flex-direction: column;
    gap: 40px 0px;
}
.cases__detail-client {
    background-color: white;
    padding: 100px 0px 180px;
    border-top-left-radius: 80px;
    border-top-right-radius: 80px;
}
.cases__detail-client-inner {
    display: flex;
    flex-direction: column;
    gap: 60px 0px;
}
.cases__detail-help-block-body-item_gray {
	background-color: #F0F4F9;
}
.cases__detail-client-title {
    font-size: 66px;
    line-height: 66px;
}
.cases__detail-client-title-blue {
	color: #1170FF;
}
.cases__detail-banner-button::after {
    content: "";
    background-image: url(/upload/images/arrow-button.svg);
    width: 80px;
    height: 80px;
    right: 16px;
    top: 12px;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
    background-color: white;
    border-radius: 100%;
}
.cases__detail-banner-title {
    font-size: 66px;
    line-height: 90%;
}
.cases__detail-banner-title-blue {
	color: #1170FF;
}
.cases__detail-banner-content {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 48px 0px;
}

.cases__detail-main-top {
    display: flex;
    flex-direction: column;
    gap: 56px 0px;
}
.cases__detail-main-top-body-content {
    display: flex;
    flex-direction: column;
    gap: 16px 0px;
}
.cases__detail-main-title {
    font-size: 96px;
    line-height: 110%;
}
.section-project__content-body-text {
    font-size: 17px;
    line-height: 19px;
    color: #607494;
}
.section-project__content-body-phone {
    font-size: 24px;
    line-height: 24px;
    color: #002050;
}
.section-project__content-body-right {
    display: flex;
    flex-direction: column;
    gap: 24px 0px;
}
.section-project__content-body-director {
    display: flex;
    align-items: center;
    gap: 0px 24px;
	padding-bottom: 24px;
}
.section-project__content-body-director-text {
    font-size: 17px;
    line-height: 19px;
    color: #607494;
}
.section-project__content-body-director-name {
    font-size: 17px;
    line-height: 19px;
    color: #002050;
}
.form__submit_arrow {
    justify-content: flex-start;
    padding-left: 40px;
	position: relative;
	align-items: center;
}
.form__submit_arrow::after {
	content: "";
	background-image: url("/upload/images/arrow-button.svg");
	width: 80px;
    height: 80px;
    right: 16px;
    top: 12px;
    position: absolute;
	background-repeat: no-repeat;
    background-position: center;
    background-color: white;
    border-radius: 100%;
}
.form__policy {
    font-size: 17px;
    line-height: 19px;
    color: #002050;
    margin-top: 0px;
    max-width: 670px;
}
.form__link {
    text-decoration: underline;
    text-decoration-color: #667996;
}

@media (min-width: 768px) {
  .page-body {
    grid-template-rows: 66px 1fr 440px;
  }

  .footer {
    padding: 72px 40px 40px;
  }

  .footer__wrapper {
    background-position: right bottom;
    background-size: 322px;
    max-width: 900px;
  }
}

@media (min-width: 1024px) {
  .page-body {
    grid-template-rows: 115px 1fr 440px;
    font-size: 17px;
    line-height: 20px;
    max-width: 100%;
  }

  .header {
    height: 64px;
    border-radius: 48px;
    margin: 26px 40px 25px;
    padding: 0 16px 0 32px;
    display: grid;
    grid-template-columns: 1fr 634px;
    align-content: center;
  }

  .header__nav {
    background-color: transparent;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
    position: relative;
    padding: 0;
    transform: translateY(0);
    gap: 45px;
  }

  .header__toggle {
    display: none;
  }

  .header__wrapper {
    width: auto;
    padding: 0;
    background-color: transparent;
  }

  .footer__section {
    display: grid;
    grid-template-columns: 1fr 650px;
  }
.cases__form {
    margin-top: 0px;
    background-color: white;
    padding: 114px 0px 110px;
}
  .footer__title {
    display: flex;
    max-width: 207px;
    width: 100%;
    max-height: 62px;
    height: auto;
    background-color: var(--accent-color);
    color: var(--fg-color);
    font-size: 24px;
    font-weight: 400;
    line-height: 29px;
    padding: 16px 32px;
    border-radius: 100px;
    margin-top: auto;
  }

  .footer__wrapper {
    padding-right: 330px;
    gap: 48px;
  }

  .footer__info {
    gap: 3px;
  }

  .footer__info:last-child {
    gap: 12px;
  }
}

@media(max-width: 1400px) {
.cases__advantages-items {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}
.cases__partners-items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 12px;
	        width: 100%;
}
.cases__main-items {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
}

@media(max-width: 1400px) {
.contacts-content__block {
    display: grid;
    grid-template-columns: auto 60%;
    align-items: start;
}
.section-project__content-body {
    display: grid;
    grid-template-columns: 1fr 60%;
}
.section-project__content-header {
    display: grid;
    grid-template-columns: 1fr 60%;
}
}
@media(max-width: 1200px) {
    .cases__advantages-items {
        display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .cases__partners-items {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 12px;
        width: 100%;
    }
.cases__detail-help-block-body {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}
.cases__detail-main-title {
    font-size: 55px;
    line-height: 110%;
}
.cases__detail-main-top-body {
    display: grid;
    grid-template-columns: 403px auto;
    gap: 0px 24px;
}
.cases__detail-help-block-header-title {
    font-size: 40px;
    line-height: 40px;
    max-width: 692px;
    width: 492px;
}
}

@media(max-width: 992px) {
.breadcrumbs {
    display: flex;
    align-items: center;
    gap: 0px 8px;
    padding-top: 80px;
}
.cases__detail-main {
    position: relative;
    border-radius: 80px;
    background-color: white;
    padding: 100px 0px;
    margin-top: 251px;
}
.cases__detail-main-accordion {
    padding: 12px 16px;
    border-radius: 20px;
}
.cases__detail-help-block-header {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px 0px;
}
.cases__detail-main-accordion-title {
    font-size: 16px;
    line-height: 24px;
    color: #002050;
    max-width: 244px;
}
.cases__detail-main-accordion-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.cases__detail-main-accordion-arrow {
    border: none;
    cursor: pointer;
    width: 28px;
    height: 28px;
    transition: all .3s;
}
.cases__detail-main-accordion-arrow svg {
    width: 28px;
    height: 28px;
}
.cases__detail-main-accordion-text {
    font-size: 14px;
	}
.cases__detail-help-title {
    font-size: 34px;
    line-height: 35px;
}
.cases__detail-help-block-header-title {
        font-size: 28px;
        line-height: 35px;
        max-width: 692px;
        width: 100%;
    }
.cases__detail-client-title {
    font-size: 34px;
    line-height: 35px;
}
.cases__detail-client-notation {
    font-size: 20px;
    line-height: 25px;
    font-style: italic;
}.cases__detail-client-services-title {
    font-size: 30px;
    line-height: 35px;
}
.cases__detail-client-services-list {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-direction: row;
    flex-wrap: wrap;
}
.cases__detail-main-bottom-title {
    font-size: 34px;
    line-height: 35px;
}
.cases__detail-banner {
    border-radius: 80px;
    padding: 40px;
    background-color: white;
    display: flex;
    align-items: center;
    gap: 48px 0px;
    flex-direction: column;
}
.cases__form cases__detail-form {
    margin-top: -90px !important;
    background-color: #F0F4F9 !important;
}
.cases__detail-help-block-body {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}
.cases__main {
    margin: 50px 0px 80px;
}
.cases__partners-items-more {
    font-size: 16px;
    line-height: 20px;
    color: #002050;
    border-bottom: 1px solid #002050;
    cursor: pointer;
}
.cases__main-item-header {
    display: flex;
    flex-direction: column;
    gap: 8px 0px;
}
.cases__main-item-type {
    font-size: 12px;
    line-height: 14px;
    color: #607594;
    opacity: 80%;
}

.cases__main-item-content {
    display: flex;
    flex-direction: column;
    gap: 12px 0px;
    padding: 0px 6px;
}
.cases__main-item-link {
    font-size: 16px;
    line-height: 16px;
    color: #1170FF;
}
.cases__main-item-name {
    font-size: 18px;
    line-height: 120%;
    color: #002050;
}
.cases__main-item-image {
    border-radius: 24px;
    max-height: 200px;
    object-fit: cover;
    height: 200px;
    object-position: center;
}
.cases__main-item {
    border-radius: 20px;
    background-color: white;
    padding: 8px 8px 16px 8px;
    display: flex;
    flex-direction: column;
    gap: 12px 0px;
}
.cases__main-items-more {
    font-size: 16px;
    line-height: 20px;
    color: #002050;
    border-bottom: 1px solid #002050;
    cursor: pointer;
}
.cases__main-list {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
    align-items: center;
}
.cases__main-filter-button {
    border-radius: 32px;
    border: 1px solid #D6DFEA;
    padding: 6px 12px;
    background-color: transparent;
    font-size: 12px;
    line-height: 14px;
    cursor: pointer;
    color: #002050;
}
.cases__main-item_hidden {
    display: none;
}
.cases__partners-item_hidden {
    display: none;
}
.cases__form {
    margin-top: 0px !important;
    background-color: white !important;
    padding: 50px 0px 70px !important;
}
.cases__main-filter-button_active {
    color: white;
    background-color: #1170FF;
}
    .cases__main-items {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
.cases__main-filters-block {
    display: flex;
    flex-direction: column;
    gap: 8px 0px;
}
.cases__main-title {
    font-size: 30px;
    line-height: 90%;
    color: #002050;
}
.cases__main-block {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.cases__form.cases__detail-form {
    margin-top: -90px !important;
    background-color: #F0F4F9 !important;
}
.cases__main-filters {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px 0px;
}
.cases__header {
    padding: 32px 0px 100px;
}
.cases__partners-image {
    max-width: 112px;
    max-height: 60px;
    object-fit: contain;
}
.cases__main-inner {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.cases__header-inner {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.cases__header-feature-title {
    font-size: 24px;
    line-height: 24px;
    color: #1170FF;
}
.cases__header-feature-text {
    font-size: 10px;
    line-height: 11px;
    opacity: 60%;
    color: #002050;
}
.cases__partners-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
}
.cases__partners-item {
    background-color: #F0F4F9;
    border-radius: 20px;
    padding: 32px 25px;
    display: flex;
    align-items: center;
    justify-content: center;
}
    .cases__partners-items {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 4px;
        width: 100%;
    }
.cases__advantages-item-title {
    font-size: 18px;
    line-height: 24px;
    color: #002050;
}
.cases__advantages-item-subtitle {
    font-size: 14px;
    line-height: 19px;
    color: #002050;
    opacity: 60%;
}
.cases__advantages-title {
    font-size: 30px;
    line-height: 30px;
    color: #1170FF;
}
.cases__advantages-item-header {
    display: flex;
    flex-direction: column;
    gap: 8px 0px;
}
.cases__advantages-item {
    background-color: #F0F4F9;
    border-radius: 20px;
    padding: 16px 12px;
    display: flex;
    min-height: 177px;
    flex-direction: column;
    justify-content: space-between;
}
.cases__advantages-top {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.cases__advantages-bottom {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.cases__header-feature {
    display: flex;
    flex-direction: column;
    max-width: 105px;
    align-items: flex-start;
    gap: 8px 0px;
}
.cases__advantages-inner {
    display: flex;
    flex-direction: column;
    gap: 48px 0px;
}
.cases__advantages {
    padding: 50px 0px;
    background-color: white;
    border-radius: 32px;
}
.cases__header-features {
    display: grid;
    grid-template-columns: auto auto auto;
    gap: 0px 12px;
    justify-content: start;
}
.cases__main-item_hidden {
    display: none;
}
.cases__partners-item_hidden {
    display: none;
}
}



@media (min-width: 1280px) {
  .page-body {
    font-size: 17px;
    line-height: 20px;
    max-width: 100%;
  }

  .header {
    max-width: 1360px;
    height: 64px;
    border-radius: 48px;
    margin: 26px auto 25px;
    padding: 0 16px 0 32px;
    grid-template-columns: 1fr 884px;
  }

  .header__nav {
    background-color: transparent;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
    position: relative;
    padding: 0;
    transform: translateY(0);
  }

  .footer {
    padding: 72px 40px 40px;
  }

  .footer__section {
    max-width: 1360px;
    grid-template-columns: 1fr 900px;
  }
}

@media(max-width: 992px) {
    .contacts-intro {
        margin-top: -60px;
        max-height: 412px;
        height: 412px;
    }
.cases__main-filter-title {
    font-size: 12px;
    line-height: 19px;
}
    .contacts-content {
        margin-top: -60px;
        background-color: white;
        padding: 28px 0px 140px;
        border-top-left-radius: 32px;
        border-top-right-radius: 32px;
    }
    .contacts-content__block {
        grid-template-columns: 1fr;
        gap: 12px 0px;
    }
.section-project__content-header {
    grid-template-columns: 1fr;
}
.contacts-content__inner {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.contacts-content__block-left {
    display: flex;
    justify-content: flex-start;
    padding-top: 0px;
}
.section-project__content-body {
        grid-template-columns: 1fr;
        gap: 32px 0px;
    }
.title_h2 {
    font-size: 31px;
    line-height: 90%;
}
    .contacts-content-block-tag {
        font-size: 16px;
        line-height: 18px;
        width: 100%;
        color: white;
        padding: 16px 32px 16px;
        border-radius: 1000px;
        background-color: #1170FF;
        min-width: 220px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
.container {
    padding: 0px 24px;
}
.contacts-content__block-text {
    font-size: 14px;
    line-height: 120%;
}
.contacts-content__block-right {
    padding: 20px;
    border-radius: 12px;
    background-color: #F0F4F9;
    display: flex;
    flex-direction: column;
    gap: 20px 0px;
}
.contacts-content__block-right-info {
    display: flex;
    flex-direction: column;
    gap: 8px 0px;
}

.contacts-content__block-social {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px 0px;
}
.contacts-content__block-right-wrapper {
    display: flex;
    flex-direction: column;
    gap: 8px 0px;
}
.contacts-content__block-right-wrapper iframe {
    border-radius: 12px;
}

.title_h1 {
    font-size: 36px;
    line-height: 32px;
}
.contacts-content__block-header-right {
    gap: 32px 0px;
}
.title_h4 {
    font-size: 14px;
    line-height: 120%;
}
    .contacts-content__block-header {
        margin-bottom: 8px;
        padding-top: 32px;
    }
.contacts-content__block-right-phone {
    font-size: 26px;
    line-height: 30px;
}
.contacts-content__block-right-mail {
    font-size: 20px;
    line-height: 24px;
    color: #667996;
}
.section-project {
    background-color: #F0F4F9;
    padding: 24px 0px 71px;
    border-radius: 32px;
    position: relative;
    z-index: 1;
    margin-top: -90px;
}
.section-project__image {
    border-radius: 32px;
    height: 180px;
    object-fit: cover;
}
.section-project__inner {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.contacts-content__block-right_social {
    border-radius: 40px;
}
.section-project__content {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.section-project__content-body-text {
    font-size: 14px;
    line-height: 19px;
    color: #607494;
}
.section-project__content-body-phone {
    font-size: 18px;
    line-height: 19px;
    color: #002050;
}
.section-project__content-body-director-photo {
    max-width: 56px;
    max-height: 56px;
}
.section-project__content-body-director-text {
    font-size: 14px;
    line-height: 110%;
    color: #607494;
}
.section-project__content-body-director-name {
    font-size: 14px;
    line-height: 110%;
    color: #002050;
}
.form__policy {
    font-size: 12px;
    line-height: 110%;
     color: #607494;
    margin-top: 12px;
}
.form__link {
    font-size: 12px;
    line-height: 110%;
     color: #607494;
    margin-top: 12px;
}
.form__submit_arrow {
    border-radius: 200px;
    padding-left: 32px;
    font-size: 18px;
    line-height: 18px;
    height: 79px;
    min-height: 79px;
}
.form__submit_arrow::after {
    content: "";
    background-image: url(/upload/images/arrow-button.svg);
    width: 55px;
    height: 55px;
    right: 12px;
    top: 12px;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
    background-color: white;
    border-radius: 100%;
}
.form__input_new {
    width: 100%;
    padding: 19px 32px 16px;
    margin-bottom: 0px;
    border: none;
    border-radius: 8px;
    font-family: "AeonikPro-Regular", Inter, sans-serif;
    font-size: 17px;
    line-height: 26px;
    color: #002050;
    height: 56px;
    font-size: 18px;
    line-height: 15px;
}
.section-project__content-body-left-text {
	display: block;
    font-size: 14px;
    line-height: 15px;
    color: #607494;
    margin-bottom: 6px;
}
.section-project__content-body-left {
    display: flex;
    flex-direction: column;
    gap: 6px 0px;
    padding-top: 0px;
    order: 3;
}
}
@media(max-width: 600px) {
    .cases__main-items {
        display: grid;
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .cases__partners-items {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 4px;
        width: 100%;
    }
    .cases__detail-banner {
        border-radius: 32px;
        padding: 12px;
        background-color: white;
        display: flex;
        align-items: flex-start;
        gap: 24px 0px;
        flex-direction: column;
    }
.cases__detail-main-bottom {
    padding-top: 50px;
    border-top: 1px solid #D6DFEA;
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.cases__detail-main-bottom-content-desc {
    font-size: 14px;
    line-height: 110%;
    opacity: 60%;
}
.cases__detail-main-bottom-content-title {
    font-size: 16px;
    line-height: 110%;
}
.cases__detail-main-bottom-title {
    font-size: 30px;
    line-height: 90%;
}
.cases__detail-banner-button {
    font-size: 18px;
    line-height: 18px;
    padding-left: 32px;
    min-height: 79px;
}
.cases__detail-banner-content {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 24px 0px;
}
.cases__detail-banner-subtitle {
    font-size: 16px;
    line-height: 120%;
}
.cases__detail-banner-title {
    font-size: 30px;
    line-height: 90%;
}
    .cases__detail-banner-image {
        max-height: 220px;
        width: 100%;
        border-radius: 32px;
        object-position: center;
        object-fit: cover;	
		max-width: 100%;
    }
.cases__detail-help-block-body {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
}
.cases__detail-main-top-body-title {
    font-size: 14px;
    line-height: 24px;
    color: #607594;
}
.cases__detail-client-services-list {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-direction: row;
    flex-wrap: wrap;
}
.cases__detail-form {
    background-color: #F0F4F9 !important;
    border-top-left-radius: 32px !important;
    border-top-right-radius: 32px !important;
    margin-top: -80px !important;
}
    .cases__detail-client-service {
        padding: 12px 24px;
        border-radius: 100px;
        border: 1px solid #D6DFEA;
        font-size: 12px;
        line-height: 14px;
    }
.cases__detail-client-profile {
    display: flex;
    align-items: center;
    gap: 0px 8px;
}
.cases__detail-client-services {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.cases__detail-client-services-title {
    font-size: 32px;
    line-height: 40px;
}
.cases__detail-client-emp {
    font-size: 14px;
    line-height: 110%;
    color: #607494;
}
.cases__detail-client-name {
    font-size: 14px;
    line-height: 110%;
}
.cases__detail-client-notation {
    font-size: 18px;
    line-height: 120%;
    font-style: italic;
}
.cases__detail-client-inner {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.cases__detail-client-title {
    font-size: 30px;
    line-height: 30px;
}
.cases__detail-client {
    background-color: white;
    padding: 50px 0px 160px;
    border-top-left-radius: 32px;
    border-top-right-radius: 32px;
}
.cases__detail-banner-button::after {
    content: "";
    background-image: url(/upload/images/arrow-button.svg);
    width: 55px;
    height: 55px;
    right: 16px;
    top: 12px;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
    background-color: white;
    border-radius: 100%;
}
.cases__detail-main-top-body {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px 0px;
}
    .cases__detail-client-service {
        padding: 12px 24px;
        border-radius: 100px;
        border: 1px solid #D6DFEA;
        font-size: 12px;
        line-height: 14px;
    }

.cases__detail-main-bottom-info {
    display: flex;
    align-items: flex-start;
    gap: 24px 0px;
    flex-direction: column;
}
.cases__detail-help-block-header {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px 0px;
}
.cases__detail-main-top-body {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px 0px;
}
.cases__detail-main-top-body-text {
    font-size: 14px;
    line-height: 19px;
}
.cases__detail-help-block {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
.cases__detail-help-block-body-item-content-title {
    font-size: 18px;
    line-height: 24px;
}
.cases__detail-help-block-body-item-content-text {
    font-size: 14px;
    line-height: 19px;
    opacity: 60%;
}
.cases__detail-help-block-header-text {
    font-size: 14px;
    line-height: 24px;
    max-width: 100%;
}
.cases__detail-help-block-body-item-content {
    display: flex;
    flex-direction: column;
    gap: 12px 0px;
}
.cases__detail-help-block-body-item {
    padding: 20px 12px;
    border-radius: 20px;
    display: flex;
    align-items: flex-start;
    gap: 12px 0px;
    flex-direction: column;
}
.cases__detail-help-title {
    font-size: 30px;
    line-height: 30px;
}
.cases__detail-main-top-body-content_object {
    max-width: 100%;
}
.cases__detail-help {
    padding: 50px 0px;
}
.cases__detail-help-inner {
    display: flex;
    flex-direction: column;
    gap: 40px 0px;
}
.cases__detail-main-top-body-title {
    font-size: 14px;
    line-height: 24px;
    color: #607594;
}
.cases__detail-main-title {
    font-size: 36px;
    line-height: 110%;
}
.cases__detail-main {
    position: relative;
    border-radius: 32px;
    background-color: white;
    padding: 50px 0px;
           margin-top: 200px;
}
.cases__detail-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    max-height: 515px;
    height: 515px;
    object-fit: cover;
    object-position: center;
}
.cases__detail-help-block-header-title {
    font-size: 24px;
    line-height: 110%;
    max-width: 692px;
    width: 100%;
}
.cases__detail-breadcrumbs {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-direction: row;
    flex-wrap: wrap;
}
.cases__detail-main-top {
    display: flex;
    flex-direction: column;
    gap: 32px 0px;
}
}