/*==========  Desktop First Method  ==========*/

/* Large Devices, Wide Screens */
@media only screen and (max-width : 1200px) {
    body {
        font-size: 14px;
    }
    .title-middle {
        font-size: 22px;
        margin-bottom: 11px;
    }
    .item-advantage__number {
        margin-bottom: 10px;
    }
    .title-page,
    .hero__title {
        font-size: 70px;
        max-width: 795px;
    }
    .hero__content {
        padding: 35px 0;
    }
    .item-approach__title {
        font-size: 21px;
    }
    .title-section {
        font-size: 34px;
    }
    .cta .title-section, .head-section .title-section {
        font-size: 40px;
    }
    .item-case__details,
    .item-case__text {
        font-size: 18px;
    }
    .services .name-section {
        margin-bottom: 80px;
    }
    .services__item {
        font-size: 52px;
    }
    .services__list {
        gap: 25px 18px;
    }
    .item-blog__title {
        font-size: 23px;
    }
    .item-blog__image {
        height: 300px;
    }
    .cta__content {
        max-width: 620px;
    }
    .footer__nav li {
        font-size: 28px;
    }
}

/* Medium Devices, Desktops */
@media only screen and (max-width : 992px) {
    .header__right .header__buttons,
    .menu {
        display: none;
    }
    .container {
        padding: 0 24px;
    }
    .header__right {
        justify-content: flex-end;
    }
    /*Style Sandwich*/
    .sandwich {
        width: 32px;
        height: 32px;
        padding-top: 8px;
        margin: 0 auto;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        align-items: center;
        z-index: 20;
        flex: none;
        background: 000;
        cursor: pointer;
    }
    .sw-topper {
        position: relative;
        top: 0px;
        width: 26px;
        height: 2px;
        display: block;
        margin: 0;
        background-color: #fff;
        border-radius: 2px;
        border: medium none;
        transition: transform 0.5s, top 0.2s;
    }
    .sw-bottom {
        position: relative;
        top: 5px;
        width: 26px;
        height: 2px;
        display: block;
        margin: 0;
        background-color: #fff;
        border-radius: 2px;
        border: medium none;
        transition: transform 0.5s, top 0.2s;
    }
    .sw-footer {
        position: relative;
        top: 10px;
        width: 26px;
        height: 2px;
        display: block;
        margin: 0;
        background-color: #fff;
        border-radius: 2px;
        border: medium none;
        transition: transform 0.5s, top 0.2s;
    }
    .sandwich.active .sw-topper {
        top: 9px;
        transform: rotate(45deg);
    }
    .sandwich.active .sw-bottom {
        opacity: 0;
    }
    .sandwich.active .sw-footer {
        top: 5px;
        transform: rotate(-45deg);
    }
    body {
        font-size: 16px;
    }
    .title-page,
    .hero__title {
        font-size: 64px;
        max-width: 100%;
    }
    .hero__content .btn-main {
        display: flex;
    }
    .hero__content {
        padding: 80px 0;
    }
    .about {
        padding-top: 80px;
        padding-bottom: 64px;
    }
    .about .name-section {
        margin-bottom: 16px;
    }
    .title-section {
        font-size: 40px;
        max-width: 100%;
    }
    .item-advantage {
        width: 458px;
         margin-right: 16px;
    }
    .item-advantage__content {
        border-radius: 16px;
    }
    .item-advantage__number {
        margin-bottom: 24px;
    }
    .item-advantage__image img {
        border-radius: 16px;
    }
    .slider-advantages {
        margin-right: -24px;
        border-radius: 0;
    }
    .title-middle {
        font-size: 24px;
        margin-bottom: 16px;
    }
    .advantages {
        padding-bottom: 120px;
    }
    .approach__columns {
        margin-top: 48px;
    }
    .item-approach__title {
        font-size: 24px;
    }
    .approach {
        padding-bottom: 120px;
    }
    .head-section {
        margin-bottom: 48px;
        display: block;
    }
    .head-section__right {
        padding-top: 48px;
        display: block;
    }
    .slider-controls-cases {
        padding-top: 24px;
    }
    .cta .title-section, .head-section .title-section {
        font-size: 48px;
    }
    .slider-cases .item-case {
        width: 448px;
    }
    .slider-cases {
        margin-right: -24px;
    }
    .item-case__image {
        height: 577px;
    }
    .item-case__details,
    .item-case__text {
        font-size: 20px;
    }
    .cases {
        padding-bottom: 80px;
    }
    .services .name-section {
        margin-bottom: 120px;
    }
    .services__item {
        font-size: 64px;
    }
    .services__list {
        gap: 32px 24px;
    }
    .item-blog__image {
        height: 408px;
    }
    .item-blog__title {
        font-size: 28px;
    }
    .news .btn-main {
        width: 100%;
    }
    .cta__content {
        margin: 0;
        text-align: left;
    }
    .cta .name-section {
        justify-content: flex-start;
    }
    .footer__nav li {
        font-size: 32px;
    }
    .footer__logo {
        margin: 48px 0;
    }
    .footer__bottom ul {
        padding-top: 48px;
    }
    .menu-mobile {
        padding: 80px 24px;
        top: 100%;
        left: 0;
        height: 100vh;
        border-top: 1px solid #D9D9D9;
        background: #ECECEC;
        z-index: 500;
        width: 100%;
        position: absolute;
        display: none;
        overflow: auto;
    }
    .menu-mobile .menu {
        display: block;
    }
    .menu__list li a::after {
        display: none;
    }
    .menu-mobile .menu li {
        font-size: 40px;
        margin-bottom: 16px;
        line-height: 110%;
        letter-spacing: -0.03em;
        font-weight: 400;
        color: #2F2F2F;
        display: block;
    }
    .menu-mobile .menu li:last-child {
        margin-bottom: 0;
    }
    .menu-mobile .contacts-list {
        margin-top: 60px;
        padding-top: 0;
    }
    .menu-mobile .menu li a {
        color: #2F2F2F;
    }
    .menu__list {
        display: block;
    }
    .body--menu {
        overflow: hidden;
    }
    .body--menu .header {
        background: #ECECEC;
        color: #121212;
    }
    .body--menu .header .btn-page__icon img,
    .body--menu .header .sandwich div,
    .body--menu .header .logo img {
        filter: brightness(0%);
    }
    .top-page {
        padding: 48px 0;
    }

    .page-cases {
        padding-bottom: 80px;
    }
    .grid-cases {
        grid-template-columns: repeat(2, 1fr);
    }
    .grid-cases--list .item-case .item-case__image {
        width: 255px;
        height: 328px;
    }
    .grid-cases--list .item-case {
        padding-top: 24px;
        margin-bottom: 24px;
        padding-left: 92px;
        padding-right: 280px;
        min-height: 352px;
    }
    .sidebar-info {
        top: 0;
        margin-bottom: 58px;
    }
    .wrapper {
        overflow: hidden;
    }
    .single-case {
        padding-bottom: 80px;
    }
    .services-wrap {
        columns: initial;
    }
    .unit-service {
        margin-bottom: 24px;
    }
    .page-text,
    .single-blog,
    .page-blog,
    .page-services {
        padding-bottom: 80px;
    }
    .popup__content {
        left: 16px;
        right: 16px;
        width: auto;
    }
    .popup__head .title-section br {
        display: none;
    }
    .checkbox label input {
        background: #fff;
    }
    .header {
        transform: none !important;
    }
    .wrapper--page {
    padding-top: 72px;
    }
}

/* Small Devices, Tablets */
@media only screen and (max-width : 767px) {
    .container {
        padding: 0 20px;
    }
    .title-page,
    .hero__title {
        font-size: 40px;
        line-height: 110%;
    }
    .hero__content {
        padding: 32px 0;
        height: 90vh;
    }
    .hidden-mobile {
        display: none !important;
    }
    .sandwich {
        margin-left: auto;
        margin-right: 0;
    }
    .logo img {
        height: 18px;
    }
    .header {
        padding: 16px 0;
        position: fixed;
    }

    .about {
        padding: 64px 0;
    }
    .title-section {
        font-size: 28px;
    }
    .item-advantage {
        width: 350px;
        margin-right: 8px;
    }
    .item-advantage__content {
        padding: 16px;
        border-radius: 16px;
    }
    .item-advantage__number {
        width: 38px;
        height: 38px;
        margin-bottom: 16px;
        border-radius: 50%;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .slider-advantages .slick-arrow {
        bottom: 0;
        left: 0;
        top: auto;
        transform: none;
    }
    .slider-advantages .slick-next {
        left: 72px;
    }
    .slider-advantages {
        padding-bottom: 96px;
    }
    .advantages {
        padding-bottom: 64px;
    }
    .approach__columns {
        columns: initial;
    }
    .item-approach:nth-child(4),
    .item-approach:nth-child(5) {
        top: 0;
    }
    .approach {
        padding-bottom: 50px;
    }
    .cta .title-section, .head-section .title-section {
        font-size: 28px;
    }
    .slider-cases .item-case {
        width: 350px;
    }
    .row>div,
    .slider-cases .slick-slide {
        padding: 0 4px;
    }
    .row,
    .slider-cases .slick-list {
        margin: 0 -4px;
    }
    .item-case__logo {
        height: 108px;
    }
    .cases {
        padding-bottom: 64px;
    }
    .services .name-section {
        margin-bottom: 64px;
    }
    .services__item {
        font-size: 32px;
    }
    .services__list {
        gap: 24px 16px;
    }
    .services {
        padding-bottom: 64px;
    }

    .news {
        padding: 64px 0;
    }
    .item-blog {
        padding: 8px;
        display: block;
    }
    .item-blog__image {
        height: 200px;
        margin-bottom: 16px;
    }
    .item-blog__content {
        min-height: 200px;
        display: block;
    }
    .item-blog__head {
        margin-bottom: 24px;
        justify-content: flex-start;
    }

    .cta {
        padding: 64px 0;
    }
    .cta .title-section {
        font-size: 32px;
    }
    .cta__content .btn-main {
        width: 100%;
    }

    .footer {
        padding-top: 64px;
    }
    .footer__nav li {
        font-size: 28px;
    }
    .contacts-list {
        padding-top: 38px;
    }
    .menu-mobile {
        padding: 64px 20px;
    }
    .menu-mobile .menu li {
        font-size: 32px;
        line-height: 125%;
    }
    .menu-mobile .contacts-list {
        margin-top: 48px;
    }
    .top-page {
        padding: 32px 0;
    }
    .title-page {
        font-size: 32px;
    }
    .type-view {
        display: none;
    }
    .page-cases {
        padding-bottom: 68px;
    }
    .filter-list {
        padding: 16px;
    }
    .grid-cases {
        grid-template-columns: repeat(1, 1fr);
    }
    .unit-service {
        display: block;
    }
    .unit-service__title {
        margin-bottom: 16px;
        font-size: 28px;
        line-height: 114%;
    }
    .page-services {
        padding-bottom: 40px;
    }
    .page-text,
    .single-blog,
    .page-blog {
        padding-bottom: 64px;
    }
    .popup__wrapper {
        padding: 0;
    }
    .popup__content {
        padding: 20px;
        top: 0;
        left: 0;
        width: 100%;
        border-radius: 0;
    }
    .popup__close {
        top: 20px;
        right: 20px;
    }
    .checkbox label {
        gap: 12px;
    }
    .popup--thanks .popup__wrapper {
        padding: 20px;
    }
    .popup--thanks .popup__content {
        padding-top: 68px;
        padding-bottom: 48px;
        border-radius: 16px;
    }
    .popup--cookie .popup__wrapper {
        padding: 16px;
    }
    .popup--cookie .popup__content {
        border-radius: 16px;
    }
        .wrapper--page {
    padding-top: 65px;
    }
    .item-case__data {
        display: none;
    }
    .footer__logo span {
	    margin-top: 20px;
    }
.footer__logo .footer__logo-small {
    width: 95px;
    margin-top: 20px;
  }
  .footer__logo {
    font-size: 23vw;
}
}


/*==========  Mobile First Method  ==========*/

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {
    .grid-cases.grid-cases--list {
        display: block;
    }
    .grid-cases--list .item-case {
        padding-top: 24px;
        margin-bottom: 24px;
        padding-left: 92px;
        padding-right: 280px;
        min-height: 352px;
        border-top: 1px solid #D9D9D9;
        position: relative;
    }
    .grid-cases--list .item-case .item-case__image {
        width: 255px;
        height: 328px;
        padding: 0;
        position: absolute;
        bottom: 0;
        right: 0;
        flex: none;
        margin: 0;
    }
    .grid-cases--list .item-case__category {
        display: none;
    }
    .item-case__data {
        display: none;
    }
    .grid-cases--list .item-case__data {
        top: 24px;
        left: 0;
        color: #8E8E8E;
        display: block;
        position: absolute;
    }
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
    .menu-mobile,
    .sandwich {
        display: none !important;
    }
    .grid-cases--list .item-case {
        padding-top: 24px;
        margin-bottom: 24px;
        padding-left: 116px;
        padding-right: 160px;
        min-height: 222px;
    }
    .grid-cases--list .item-case .item-case__image {
        width: 154px;
        height: 198px;
    }
    .grid-cases--list .item-case__text {
        display: none;
    }
    .grid-cases--list .item-case__details {
        display: block;
    }

}
@media only screen and (min-width : 1920px) {
    .about .title-section {
	max-width: 56%;
}
.popup__wrapper {
    transform: scale(1.4);
    transform-origin: 100% 0%;
}
}
/*hovers*/
@media (hover: hover) {
    .slick-arrow:hover,
    .btn-main:hover {
        background: #D9D9D9;
    }
    .btn-main.btn-main--page:hover {
        background: #121212;
    }
    .item-contact a:hover u {
        text-decoration: none;
    }
    .menu__list a:hover {
        border-color: inherit;
    }
    .btn-more:hover {
        color: #686868;
    }
    .btn-page:hover .btn-page__text,
    .footer__bottom ul li a:hover,
    .footer__nav li a:hover {
        border-color: inherit;
    }
    .item-blog:hover .item-blog__image img,
    .item-case:hover .item-case__image>img {
        transform: scale(1.1);
    }
    .services__item:hover {
        color: #FF5000;
    }
    .tabs a:hover {
        color: #121212;
        border-color: #121212;
    }
    .type-view__item:hover {
        color: #121212;
        border-color: #121212;
    }
    .filter-list a:hover {
        background: #2F2F2F;
        color: #fff;
    }
    .item-contact a:hover u,
    .item-contact a:hover {
        text-decoration: none;
    }
    .item-approach:hover {
        transform: scale(1.03);
    }
}

/*mobile hovers*/
@media (hover: none) {
    .slick-arrow:active,
    .btn-main:active {
        background: #D9D9D9;
    }
    .btn-main.btn-main--page:active {
        background: #121212;
    }
    .item-contact a:active u {
        text-decoration: none;
    }
    .menu__list a:active {
        border-color: inherit;
    }
    .btn-more:active {
        color: #686868;
    }
    .btn-page:active .btn-page__text,
    .footer__bottom ul li a:active,
    .footer__nav li a:active {
        border-color: inherit;
    }
    .item-blog:active .item-blog__image img,
    .item-case:active .item-case__image>img {
        transform: scale(1.1);
    }
    .services__item:active {
        color: #FF5000;
    }
    .tabs a:active {
        color: #121212;
        border-color: #121212;
    }
    .type-view__item:active {
        color: #121212;
        border-color: #121212;
    }
    .filter-list a:active {
        background: #2F2F2F;
        color: #fff;
    }
    .item-contact a:active u,
    .item-contact a:active {
        text-decoration: none;
    }
    .item-approach:active {
        transform: scale(1.03);
    }
}