/* =========================================
   HERO SECTION STYLES (UPDATED)
   ========================================= */

.hero-content {
        display: flex;
        flex-direction: column;
        padding: 0;
        position: relative;
}

.hero-left {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        z-index: 2;
        position: relative;
}

.hero-right {
        width: 100%;
        position: relative;
        z-index: 1;
}

.hero-image {
        width: 100%;
        height: auto;
        display: block;
        border-radius: 16px;
        object-fit: cover;
}

@media (max-width: 1024px) {
        .hero-left {
                padding-top: 64px;
                padding-bottom: 64px;
        }
}

@media (max-width: 767px) {
        .hero-left {
                padding-top: 48px;
                padding-bottom: 48px;
        }
}

.hero-title {
        font-family: 'Roboto Condensed', sans-serif;
        font-weight: 900;
        font-size: 48px;
        line-height: 85%;
        letter-spacing: -4%;
        text-transform: uppercase;
        color: #2E2E2E;
        margin: 0 0 24px 0;
        word-break: break-word;
}

.hero-description {
        font-family: 'Inter', sans-serif;
        font-weight: 600;
        font-size: 16px;
        line-height: 140%;
        color: #2E2E2E;
        opacity: 0.7;
        margin: 0 0 32px 0;
        max-width: 100%;
}

.scroll-down-button {
        display: inline-flex;
        align-items: center;
        cursor: pointer;
        background: none;
        border: none;
        padding: 0;
        margin-top: 24px;
        outline: none;
}

.icon-wrapper {
        width: 46px;
        height: 46px;
        border: 1px solid #B4B4B4;
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        transition: background-color 0.3s ease;
        margin-right: 16px;
        flex-shrink: 0;
}

.scroll-icon {
        position: absolute;
        width: 24px;
        height: 24px;
        transition: opacity 0.3s ease;
}

.scroll-icon--black {
        opacity: 1;
}

.scroll-icon--white {
        opacity: 0;
}

.scroll-down-button span:last-child {
        font-family: 'Inter', sans-serif;
        font-weight: 700;
        font-size: 14px;
        line-height: 120%;
        letter-spacing: -4%;
        text-transform: uppercase;
        color: #2E2E2E;
}

.scroll-down-button:hover .icon-wrapper {
        background-color: #2E2E2E;
}

.scroll-down-button:hover .scroll-icon--black {
        opacity: 0;
}

.scroll-down-button:hover .scroll-icon--white {
        opacity: 1;
}

/* =========================================
   DESKTOP STYLES (1024px+)
   ========================================= */
@media (min-width: 1025px) {
        .hero-content {
                flex-direction: column;
                /*padding-top: 5vw;*/
                /*padding-bottom: 5vw;*/
                /*gap: 5vw;*/
        }

        .hero-left {
                height: auto;
                width: 100%;
                max-width: 100%;
                justify-content: center;
                position: relative;
                padding-top: 5vw;
                padding-bottom: 5vw;
        }

        .hero-right {
                width: 100%;
        }

        .hero-image {
                width: 100%;
                height: auto;
                max-height: 51.04vw;
                object-fit: cover;
        }

        .hero-title {
                font-size: 6.667vw;
                margin-bottom: 1.667vw;
        }

        .hero-description {
                font-size: 1.042vw;
                max-width: 59.4271vw;
                margin-bottom: 3.33vw;
        }

        .scroll-down-button {
                position: relative;
                left: 0;
                margin-top: 0;
        }

        .icon-wrapper {
                width: 2.396vw;
                height: 2.396vw;
                margin-right: 0.833vw;
        }

        .scroll-icon {
                width: 1.25vw;
                height: 1.25vw;
        }

        .scroll-down-button span:last-child {
                font-size: 0.833vw;
        }
}

/* =========================================
   TABLET STYLES (768px - 1024px)
   ========================================= */
@media (min-width: 768px) and (max-width: 1024px) {
        /*.hero-content {*/
        /*        gap: 40px;*/
        /*        padding-top: 48px;*/
        /*}*/

        .hero-title {
                font-size: 64px;
                margin-bottom: 24px;
        }

        .hero-description {
                font-size: 18px;
                max-width: 80%;
        }

        .hero-image {
                height: 500px;
                border-radius: 14px;
        }
}

@media (max-width: 1024px) {
        .scroll-down-button:hover .icon-wrapper {
                background-color: #fff;
        }
        .scroll-down-button:hover .scroll-icon--white {
                opacity: 0;
        }
        .scroll-down-button:hover .scroll-icon--black {
                opacity: 1;
        }
}
/* =========================================
   MOBILE STYLES (up to 767px)
   ========================================= */
@media (max-width: 767px) {
        /*.hero-content {*/
        /*        padding-top: 48px;*/
        /*        padding-bottom: 32px;*/
        /*        gap: 24px;*/
        /*}*/

        .hero-title {
                font-size: 36px;
                margin-bottom: 16px;
        }

        .hero-description {
                font-size: 14px;
                margin: 0 0 48px 0;
        }

        .hero-image {
                height: 300px;
                border-radius: 12px;
        }

        .scroll-down-button {
                margin-top: 16px;
        }
}

/* =========================================
   ІНШІ СТИЛІ (Case Label, Case Wrapper тощо)
   ========================================= */

.case-label {
        background-color: #1E8F7F;
        color: white;
        font-family: 'Inter', sans-serif;
        font-weight: 700;
        font-size: 0.833vw;
        line-height: 1.1;
        letter-spacing: -4%;
        text-transform: uppercase;
        border-radius: 4px;
        padding: 0.104vw 0.208vw;
        display: inline-block;
        margin-bottom: 1.25vw;
}

@media (max-width: 767px) {
        .case-label {
                font-size: 14px;
                margin-bottom: 16px;
                padding: 2px 4px;
        }
}

@media (min-width: 768px) and (max-width: 1024px) {
        .case-label {
                font-size: 16px;
                padding: 2px 4px;
                margin-bottom: 24px;
        }
}

.case-wrapper {
        position: relative;
        width: 100%;
        overflow: visible !important;
}

.wrapper {
        display: flex;
        gap: 5vw;
        align-items: flex-start;
}

.case-all-list {
        width: 59.42708333333333vw;
}

@media (max-width: 1024px) {
        .case-all-list {
                width: 100%;
        }
}

.case-item {
        padding-top: 0;
        padding-bottom: 0;
        border-bottom: 1px solid #B4B4B4;
}

.case-wrapper .case-item:first-of-type {
        border-bottom: none;
}

@media (max-width: 1024px) {
        .case-wrapper .container:nth-child(2) .case-item {
                padding: 0;
        }
}

.case-menu-sticky-container {
        position: absolute;
        top: 5vw;
        bottom: 5vw;
        right: 5vw;
        width: 25.573vw;
        z-index: 10;
}

@media (max-width: 1024px) {
        .case-menu-sticky-container {
                display: none;
        }
}

.case-menu {
        position: sticky;
        top: 5vw;
        height: fit-content;
        max-height: calc(100vh - 10vw);
}

.full-width-menu-block {
        width: 100%;
        height: 23.646vw;
        border: 1px solid #B4B4B4;
        border-radius: 16px;
        padding: 1.667vw 0.677vw 1.667vw 1.667vw;
        box-sizing: border-box;
        position: relative;
        overflow: hidden;
}

.menu-items-wrapper {
        height: 100%;
        overflow-y: auto;
        padding-right: 0.677vw;
        box-sizing: border-box;
        scroll-behavior: smooth;
}

.menu-items-wrapper::-webkit-scrollbar {
        width: 6px;
}

.menu-items-wrapper::-webkit-scrollbar-track {
        background: transparent;
        border-radius: 12px;
}

.menu-items-wrapper::-webkit-scrollbar-thumb {
        background-color: #B4B4B4;
        border-radius: 6px;
        border: 1px solid #B4B4B4;
}

.case-menu-item {
        width: 100%;
        height: 3.229vw;
        border-radius: 12px;
        background-color: transparent;
        color: #2E2E2E;
        font-family: 'Inter', sans-serif;
        font-weight: 700;
        font-size: 0.833vw;
        line-height: 98%;
        letter-spacing: -4%;
        text-transform: uppercase;
        display: flex;
        align-items: center;
        padding-left: 0.833vw;
        box-sizing: border-box;
        margin-bottom: 0.833vw;
        cursor: pointer;
        transition: background-color 0.2s ease, color 0.2s ease;
}

.case-menu-item:last-child {
        margin-bottom: 0;
}

.case-menu-item.active {
        background-color: #D2E9E5;
        color: #1E8F7F;
}

.case-menu-item:not(.active):hover {
        background-color: #EFEFEF;
}

.case-button {
        display: block;
        width: 100%;
        height: 3.229vw;
        background: #1E8F7F;
        color: #FFF;
        font-family: "Inter", sans-serif;
        font-weight: 700;
        font-size: 0.833vw;
        line-height: 0.98;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        text-decoration: none;
        border-radius: 12px;
        position: relative;
        overflow: hidden;
        transition: background 0.3s ease;
        margin-top: 1.25vw;
}

.case-button:hover {
        background: #2E2E2E;
}

.case-button__text {
        position: absolute;
        top: 50%;
        left: 0.833vw;
        transform: translateY(-50%);
        white-space: nowrap;
        transition: left 0.35s cubic-bezier(0.32, 0.94, 0.6, 1), transform 0.35s cubic-bezier(0.32, 0.94, 0.6, 1);
        z-index: 2;
}

.case-button:hover .case-button__text {
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
}

.case-button__icon {
        position: absolute;
        top: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.396vw;
        height: 2.396vw;
        background: #FFF;
        border-radius: 8px;
        transform: translateY(-50%);
        transition: all 0.3s ease;
        z-index: 1;
}

.case-button__icon img {
        width: 1.25vw;
        height: 1.25vw;
        display: block;
}

.case-button__icon--right {
        right: 0.417vw;
        opacity: 1;
}

.case-button__icon--left {
        left: 0.417vw;
        opacity: 0;
        width: 0;
        height: 0;
        background: transparent;
        border-radius: 0;
}

.case-button:hover .case-button__icon--right {
        opacity: 0;
        width: 0;
        height: 0;
        background: transparent;
}

.case-button:hover .case-button__icon--left {
        opacity: 1;
        width: 2.396vw;
        height: 2.396vw;
        background: #FFF;
        border-radius: 8px;
}

.tag {
        display: inline-block;
        background-color: #1E8F7F;
        color: #FFF;
        font-family: "Inter", sans-serif;
        font-weight: 700;
        font-size: 0.833vw;
        line-height: 1.1;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        padding: 0.104vw 0.208vw;
        border-radius: 4px;
        margin-bottom: 1.25vw;
}

.tag--green {
        background-color: #1E8F7F;
        color: #FFF;
}

@media (max-width: 1024px) {
        .full-width-menu-block {
                height: 454px;
                padding: 32px 13px 32px 32px;
        }
        .menu-items-wrapper {
                padding-right: 13px;
        }
        .menu-items-wrapper::-webkit-scrollbar {
                width: 6px;
        }
        .case-menu-item {
                height: 62px;
                font-size: 16px;
                padding-left: 16px;
                margin-bottom: 16px;
        }
        .case-button {
                height: 62px;
                font-size: 16px;
                margin-top: 24px;
        }
        .case-button__text {
                left: 16px;
        }
        .case-button__icon {
                width: 46px;
                height: 46px;
        }
        .case-button__icon img {
                width: 24px;
                height: 24px;
        }
        .case-button__icon--right {
                right: 8px;
        }
        .case-button__icon--left {
                left: 8px;
        }
        .case-button:hover .case-button__icon--left {
                width: 46px;
                height: 46px;
        }
        .tag {
                font-size: 14px;
                padding: 2px 4px;
                margin-bottom: 24px;
        }
}

h2 {
        font-family: "Roboto Condensed", sans-serif;
        font-weight: 900;
        font-style: normal;
        font-size: 3.333vw;
        line-height: 0.85;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        color: #2E2E2E;
        margin: 0 0  1.67vw;
}

.case-item p {
        font-family: "Inter", sans-serif;
        font-weight: 600;
        font-size: 1.042vw;
        line-height: 1.4;
        letter-spacing: -0.04em;
        color: #262626;
        margin: 0 0 1.667vw;
        opacity: 0.7;
}

@media (max-width: 1024px) {
        h2 {
                font-size: 36px;
                margin: 0 0 16px;
        }
        .case-item p {
                font-size: 16px;
        }
}

@media (max-width: 767px) {
        h2 {
                font-size: 24px;
                margin: 0px 0 16px;
        }
        .case-item p {
                font-size: 14px;
        }
        .tag {
                margin-bottom: 16px;
        }
}

.project-meta {
        display: flex;
        flex-direction: column;
        gap: 1.667vw;
        margin-top: 2.604vw;
}

.project-meta-item {
        display: flex;
        flex-direction: column;
        gap: 1.25vw;
        padding-bottom: 1.667vw;
        border-bottom: 1px solid #B4B4B4;
}

.project-meta-item:last-child {
        border-bottom: none;
}

.project-meta-label {
        font-family: "Inter", sans-serif;
        font-weight: 700;
        font-size: 0.833vw;
        line-height: 1.2;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        color: #2E2E2E;
        opacity: 0.5;
}

.project-meta-value {
        font-family: "Inter", sans-serif;
        font-weight: 600;
        font-size: 1.042vw;
        line-height: 1.4;
        letter-spacing: -0.04em;
        color: #2E2E2E;
}

@media (max-width: 1024px) {
        .project-meta-value {
                font-size: 16px;
        }
        .project-meta {
                gap: 24px;
                margin-top: 50px;
        }
        .project-meta-item {
                gap: 16px;
                padding-bottom: 24px;
        }
        .project-meta-label {
                font-size: 16px;
        }
}

@media (max-width: 767px) {
        .project-meta-label,
        .project-meta-value {
                font-size: 14px;
        }
        .project-meta {
                gap: 24px;
        }
        .project-meta-item {
                gap: 16px;
        }
}

.solution-list {
        margin-top: 1.667vw;
        display: flex;
        flex-direction: column;
        gap: 0.94vw;
}

.solution-item {
        display: flex;
        gap: 0.833vw;
        align-items: flex-start;
}

.check-icon {
        flex-shrink: 0;
        width: 1.25vw;
        height: 1.25vw;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        top: 5px;
}

.check-icon img {
        width: 100%;
        height: 100%;
        display: block;
}

.solution-item p {
        font-family: "Inter", sans-serif;
        font-weight: 600;
        font-size: 1.042vw;
        line-height: 1.4;
        letter-spacing: -0.04em;
        color: #262626;
        margin: 0;
        opacity: 0.8;
}

.solutions-image {
        width: 100%;
        overflow: hidden;
        display: block;
        position: relative;
        padding-top: 2.5vw;
}

.solutions-image img {
        display: block;
        width: 100%;
        height: auto;
        object-fit: cover;
        border-radius: 16px;
}

@media (max-width: 1024px) {
        .solution-item p {
                font-size: 18px;
        }
        .solutions-image {
                padding-top: 32px;
        }
        .solution-list {
                margin-top: 32px;
                gap: 24px;
        }
        .solution-item {
                gap: 16px;
        }
        .check-icon {
                width: 24px;
                height: 24px;
        }
        .solutions-image {
                padding-top: 48px;
        }
}

@media (max-width: 767px) {
        .solution-list {
                gap: 16px;
        }
        .solution-item {
                gap: 12px;
        }
        .solution-item p {
                font-size: 14px;
        }
}

.product-accordion {
        margin-top: 2.5vw;
}

.accordion-item {
        border-bottom: 1px solid #B4B4B4;
}

.accordion-item:last-child {
        border-bottom: none;
}

.accordion-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: 1.67vw 0;
        background: none;
        border: none;
        cursor: pointer;
        font-family: "Roboto Condensed", sans-serif;
        font-weight: 900;
        font-size: 1.458vw;
        line-height: 1;
        letter-spacing: -3%;
        text-transform: uppercase;
        color: #2E2E2E;
        text-align: left;
        min-height: 6.67vw;
}

.accordion-icon {
        width: 0.781vw;
        height: 0.729vw;
        margin: 0 1.91vw;
        flex-shrink: 0;
}

.accordion-title {
        flex-grow: 1;
        text-align: left;
        margin-right: 0.833vw;
        transition: color 0.3s ease;
}

.accordion-toggle-wrapper {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.396vw;
        height: 2.396vw;
        border: 1px solid #B4B4B4;
        border-radius: 8px;
        flex-shrink: 0;
        transition: background-color 0.3s ease, border-color 0.3s ease;
}

.accordion-toggle-icon {
        width: 1.25vw;
        height: 1.25vw;
        display: block;
        filter: none;
}

.accordion-item[aria-expanded="true"] .accordion-toggle-wrapper, .accordion-item.is-open .accordion-toggle-wrapper {
        background-color: #2E2E2E;
        border-color: #2E2E2E;
}

.accordion-item[aria-expanded="true"] .accordion-toggle-icon {
        filter: brightness(0) invert(1);
}

.accordion-item:not([aria-expanded="true"]):hover .accordion-title {
        color: #1E8F7F;
}

.accordion-item:not([aria-expanded="true"]):hover .accordion-toggle-wrapper {
        background-color: #1E8F7F;
        border-color: #1E8F7F;
}

.accordion-item:not([aria-expanded="true"]):hover .accordion-toggle-icon {
        filter: brightness(0) invert(1);
}

.accordion-item[aria-expanded="true"] {
        padding-bottom: 3.333vw;
}

.accordion-content {
        max-height: 0;
        overflow: hidden;
        transition: height 0.4s ease;
}

.accordion-content p {
        font-family: "Inter", sans-serif;
        font-weight: 600;
        font-size: 1.042vw;
        line-height: 1.4;
        letter-spacing: -4%;
        color: #262626;
        margin: 0;
        padding: 1.25vw 4.7vw;
        opacity: unset;
}
.accordion-content p span {
        font-weight: 600!important;
}

.accordion-content ul {
        list-style: none;
        padding: 1.25vw 4.7vw;
        margin: 0;
}

.accordion-content li {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        gap: 0.625vw;
        margin-bottom: 0.833vw;
        font-family: "Inter", sans-serif;
        font-weight: 600;
        font-size: 1.042vw;
        line-height: 1.4;
        letter-spacing: -4%;
        color: rgba(46, 46, 46, 0.6);
        position: relative;
        padding-left: 1.875vw;
}

.accordion-content ul li ul {
        padding-left: 0;
}




.accordion-content li:last-child {
        margin-bottom: 0;
}

.accordion-content li::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0.104vw;
        width: 1.25vw;
        height: 1.25vw;
        background-image: url('../img/icons/green-point.svg');
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
}

.accordion-content img {
        display: block;
        margin: 1.25vw 0 0 2.604vw;
        max-width: 100%;
        height: auto;
        border-radius: 16px;
}

.accordion-content-text {
        font-family: "Inter", sans-serif;
        font-weight: 600;
        font-size: 1.042vw;
        line-height: 140%;
        letter-spacing: -4%;
        color: #2E2E2E;
        opacity: 0.7;
        margin: 0;
        padding: 0 0 1.25vw 2.5vw;
        max-width: 29.167vw;
}



.single-image-item img {
        display: block;
        max-width: 100%;
        height: auto;
        border-radius: 16px;
}

@media (max-width: 1024px) {
        .accordion-header {
                font-size: 24px;
                padding: 20px 0;
        }
        .accordion-content li,
        .accordion-content p,
        .accordion-content-text {
                font-size: 16px;
                padding-left: 0;
                padding: 0 0 24px 0;
        }
        .accordion-content ul {
                padding: 24px 0 0 68px;
        }
        .accordion-content li {
                padding-left: 52px;
                margin: 0;
        }
        .accordion-content li::before {
                width: 20px;
                height: 20px;
        }
        .accordion-content img {
                margin: 24px 0 0 0;
        }
        .accordion-icon {
                width: 15px;
                height: 14px;
                margin-right: 37px;
        }
        .accordion-title {
                margin-right: 16px;
        }
        .accordion-toggle-wrapper {
                width: 46px;
                height: 46px;
        }
        .accordion-toggle-icon {
                width: 24px;
                height: 24px;
        }
        .accordion-item[aria-expanded="true"] {
                padding-bottom: 64px;
        }
        .accordion-content p {
                font-family: "Inter", sans-serif;
                font-weight: 600;
                font-size: 20px;
                padding: 24px 68px;
                color: #2E2E2E;
                opacity: 70%;
        }
        .accordion-content li {
                gap: 12px;
                font-size: 20px;
        }
        .accordion-content li::before {
                top: 2px;
                width: 24px;
                height: 24px;
        }
        .accordion-content-text {
                font-size: 20px;
                padding: 0 0 24px 48px;
                max-width: 560px;
        }
}

@media (max-width: 767px) {
        .accordion-content ul {
                padding: 24px 0 0 45px;
        }
        .accordion-content li {
                padding-left: 24px;
        }
        .accordion-header {
                font-size: 18px;
                padding: 16px 0;
        }
        .accordion-content li,
        .accordion-content p,
        .accordion-content-text {
                font-size: 14px;
        }
        .accordion-content li::before {
                width: 16px;
                height: 16px;
        }
        .accordion-content p {
                padding: 24px 48px;
        }
        .accordion-icon {
                margin: 0;
                margin-right: 32px;
        }

}

.what-we-did-items {
        margin-top: 2.5vw;
}

.what-we-did-item {
        display: flex;
        gap: 1.25vw;
        padding: 1.67vw 0;
        min-height: 7.71vw;
}

.what-we-did-item-left {
        flex: 0 0 50%;
        display: flex;
        align-items: flex-start;

}

.what-we-did-item-right {
        flex: 0 0 50%;
}

.what-we-did-item-icon {
        flex-shrink: 0;
        width: 1.25vw;
        height: 1.25vw;
        padding: 0 1.67vw;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
}

.what-we-did-item-icon img {
        width: auto;
        height: auto;
        display: block;
}

.what-we-did-item-left h3 {
        font-family: "Roboto Condensed", sans-serif;
        font-weight: 900;
        font-size: 1.458vw;
        line-height: 1;
        letter-spacing: -0.03em;
        text-transform: uppercase;
        color: #2E2E2E;
        margin: 0;
}

.what-we-did-item-right p {
        font-family: "Inter", sans-serif;
        font-weight: 600;
        font-size: 1.042vw;
        line-height: 1.4;
        letter-spacing: -0.04em;
        color: #2E2E2E;
        opacity: 0.7;
        margin: 0;
}

.what-we-did-item-divider {
        height: 1px;
        background-color: #B4B4B4;
        /*margin: 0 0 1.25vw;*/
}

.what-we-did-image-stack {
        display: block;
        position: relative;
        /*padding-top: 3.333vw;*/
}

.what-we-did-image-item {
        display: block;
        padding: 1.667vw 0;
}

.what-we-did-image-item:first-child {
        padding-top: 0;
}

.what-we-did-image-item img {
        width: 100%;
        height: auto;
        display: block;
        border-radius: 16px;
        object-fit: cover;
}

@media (max-width: 1024px) {
        .what-we-did-item {
                padding: 16px 0;
                gap: 16px;
        }
        .what-we-did-item-left h3 {
                font-size: 24px;
        }
        .what-we-did-item-right p {
                font-size: 18px;
        }
        .what-we-did-image-stack {
                padding-top: 32px;
        }
        .what-we-did-items {
                margin-top: 0;
        }
        .what-we-did-item {
                gap: 24px;
                padding: 24px 0;
        }
        .what-we-did-item-left {
                gap: 16px;
        }
        .what-we-did-item-icon {
                width: 15px;
                height: 14px;
                top: 7px;
        }
        .what-we-did-item-left h3 {
                font-size: 28px;
        }
        .what-we-did-item-right p {
                font-size: 20px;
        }
        /*.what-we-did-item-divider {*/
        /*        margin: 0 0 24px;*/
        /*}*/
        .what-we-did-image-stack {
                padding-top: 64px;
        }
        .what-we-did-image-item {
                padding: 32px 0;
        }
}

@media (max-width: 767px) {
        .what-we-did-item {
                flex-direction: column;
                gap: 16px;
        }
        .what-we-did-item-left,
        .what-we-did-item-right {
                flex: 1 1 100%;
                width: 100%;
        }
        .what-we-did-item-left h3 {
                font-size: 18px;
        }
        .what-we-did-item-right p {
                font-size: 14px;
        }
        /*.what-we-did-item-right {*/
        /*        padding-top: 24px;*/
        /*}*/
        .what-we-did-item-icon {
                top: 0;
        }
}

.tools-list-pc {
        font-family: 'Roboto Condensed', sans-serif;
        color: #2E2E2E;
        margin-top: 1.667vw;
}

.tools-section {
        display: flex;
        gap: 1.25vw;
        padding: 1.979vw;
        border-bottom: 1px solid #E0E0E0;
}

.tools-section:last-child {
        border-bottom: none;
}

.section-header {
        display: flex;
        align-items: flex-start;
        gap: 1.927vw;
        width: 27.396vw;
        min-width: 27.396vw;
}

.section-header .star-icon {
        width: 0.781vw;
        height: 0.729vw;
        flex-shrink: 0;
        margin-top: 0.208vw;
}

.section-header h3 {
        margin: 0;
        font-family: 'Roboto Condensed', sans-serif;
        font-weight: 900;
        font-size: 1.458vw;
        line-height: 100%;
        letter-spacing: -3%;
        text-transform: uppercase;
        color: #2E2E2E;
}

.tools-items {
        list-style: none;
        padding: 0;
        margin: 0;
        width: 27.396vw;
        min-width: 27.396vw;
}

.tools-items li {
        display: flex;
        align-items: flex-start;
        gap: 0.625vw;
        margin-bottom: 0.833vw;
        font-family: 'Inter', sans-serif;
        font-weight: 600;
        font-size: 1.042vw;
        line-height: 140%;
        letter-spacing: -4%;
        color: #2E2E2E;
}

.tools-items li:last-child {
        margin-bottom: 0;
}

.tools-items .check-icon {
        width: 1.25vw;
        height: 1.25vw;
        flex-shrink: 0;
        margin-top: 0.208vw;
        opacity: 1;
}

.tools-items .tool-text {
        opacity: 0.8;
}

@media (max-width: 1024px) {
        .tools-list-pc {
                margin-top: 24px;
        }
        .tools-section {
                gap: 24px;
                padding: 33px 0;
        }
        .section-header,
        .tools-items {
                width: 100%;
                min-width: auto;
        }
        .section-header {
                gap: 20px;
                align-items: center;
        }
        .section-header h3 {
                font-size: 24px;
        }
        .tools-items li {
                font-size: 16px;
                gap: 8px;
        }
        .tools-list-pc {
                margin-top: 32px;
        }
        .section-header {
                gap: 37px;
                width: 50%;
        }
        .section-header .star-icon {
                width: 15px;
                height: 14px;
                margin-top: 4px;
        }
        .section-header h3 {
                font-size: 28px;
        }
        .tools-items {
                width: 50%;
        }
        .tools-items li {
                gap: 12px;
                margin-bottom: 16px;
                font-size: 20px;
        }
        .tools-items .check-icon {
                width: 24px;
                height: 24px;
                margin-top: 4px;
        }
}

@media (max-width: 767px) {
        .tools-section {
                padding: 24px 0;
        }
        .section-header {
                gap: 12px;
                flex-wrap: wrap;
        }
        .section-header h3 {
                font-size: 18px;
        }
        .tools-items li {
                font-size: 14px;
                line-height: 150%;
                gap: 6px;
        }
        .tools-items .check-icon {
                position: relative;
                top: 2px;
                margin-top: 0;
                width: 18px;
                height: 18px;
        }
        .check-icon {
                position: relative;
                top: 2px;
                width: 18px;
                height: 18px;
        }
        .section-header .star-icon {
                margin-top: 0;
        }
}

.case-fullwidth-image-section {
        width: 100%;
        overflow: hidden;
        display: block;
        position: relative;
        z-index: 11;
}

.case-fullwidth-image-section img {
        max-width: 100%;
        height: auto;
}

.case-image-section {
        width: 100%;
        overflow: hidden;
        display: block;
        position: relative;
        padding-top: 0.833vw;
}

.case-image-section:nth-of-type(2) {
        padding-top: 5vw;
}

.case-image-section img {
        display: block;
        width: 100%;
        height: auto;
        object-fit: cover;
        border-radius: 16px;
}

.case-image-in-container {
        margin-top: 1.25vw;
        width: 100%;
        max-width: 51.094vw;
        overflow: hidden;
        border-radius: 16px;
        position: relative;
        margin-left: auto;
        margin-right: auto;
}

.case-image-in-container__img {
        display: block;
        width: 100%;
        height: auto;
        object-fit: cover;
}

@media (max-width: 1024px) {
        .case-image-section:nth-of-type(2) {
                padding-top: 48px;
        }
        .case-image-in-container {
                border-radius: 14px;
        }
        .case-image-in-container {
                margin-top: 24px;
                max-width: 981px;
        }
}

@media (max-width: 767px) {
        .case-image-in-container {
                margin-top: 16px;
                border-radius: 12px;
        }
}

.lets-talk-section,
.lets-talk-content,
.contact-us-button,
.lets-talk-title,
.lets-talk-description {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
}

.lets-talk-section {
        position: relative;
        width: 100%;
        min-height: 30vw;
        background-color: #FFFFFF;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        padding: 2.5vw;
        border-radius: 16px;
}

.lets-talk-content {
        max-width: 31.25vw;
        position: relative;
        z-index: 2;
}

.contact-us-button {
        font-family: 'Inter', sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 0.833vw;
        line-height: 98%;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        color: #1E8F7F;
        background-color: #FFFFFF;
        padding: 0.104vw 0.208vw;
        display: inline-block;
        border-radius: 4px;
        margin-bottom: 1.25vw;
}

.lets-talk-title {
        font-family: 'Roboto Condensed', sans-serif;
        font-weight: 900;
        font-style: normal;
        font-size: 6.667vw;
        line-height: 85%;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        color: #FFFFFF;
        /*margin-top: 1.25vw;*/
        margin-bottom: 1.67vw;
}

.lets-talk-description {
        font-family: 'Inter', sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size: 1.042vw;
        line-height: 140%;
        letter-spacing: -0.04em;
        color: #FFFFFF!important;
        opacity: 0.7;
        max-width: 26.927vw;
}

.lets-talk-image img {
        position: absolute;
        right: 0;
        top: 0;
        height: 100%;
        width: auto;
        max-width: 50%;
        object-fit: contain;
        object-position: bottom right;
        z-index: 1;
        pointer-events: none;
}

@media (min-width: 1025px) {
        .lets-talk-section {
                min-height: 30vw;
                background-image: url('../img/contact-us-services-pc.webp');
        }
}

@media (min-width: 768px) and (max-width: 1024px) {
        .lets-talk-section {
                min-height: 642px;
                background-image: url('../img/contact-us-services-tablet.webp');
                padding: 32px;
        }
        .lets-talk-image img {
                max-width: 100%;
        }
}

@media (max-width: 767px) {
        .lets-talk-section {
                min-height: 524px;
                background-image: url('../img/contact-us-services-mob.webp');
                padding: 24px;
                background-size: cover;
                background-position: center;
                background-repeat: no-repeat;
        }
        .lets-talk-title {
                font-size: 48px;
                line-height: 85%;
        }
        .lets-talk-description {
                font-size: 16px;
                line-height: 140%;
        }
        .lets-talk-image img {
                max-width: 100%;
        }
}

.lets-talk-button-wrapper {
        display: block;
        position: absolute;
        bottom: 2.5vw;
        left: 2.5vw;
        z-index: 1;
}

.lets-talk-button {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        width: 9.844vw;
        height: 3.229vw;
        background: #FFF;
        color: #2E2E2E;
        font-family: "Inter", sans-serif;
        font-weight: 700;
        font-size: 0.833vw;
        line-height: 0.98;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        text-decoration: none;
        border-radius: 12px;
        gap: 0.833vw;
        position: relative;
        overflow: hidden;
        padding: 0.417vw 0.417vw 0.417vw 0.833vw;
        transition: all 0.3s ease;
}

.lets-talk-button__icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.396vw;
        height: 2.396vw;
        background: #1E8F7F;
        border-radius: 8px;
        transition: all 0.3s ease;
        overflow: hidden;
        flex-shrink: 0;
}

.lets-talk-button__icon img {
        width: 1.25vw;
        height: 1.25vw;
        display: block;
}

.lets-talk-button__icon--right {
        opacity: 1;
        transform: translateX(0);
}

.lets-talk-button__icon--left {
        position: absolute;
        left: 0.417vw;
        opacity: 0;
        transform: translateX(-0.417vw);
        width: 0;
        height: 0;
        background: #1E8F7F;
        border-radius: 8px;
}

.lets-talk-button:hover .lets-talk-button__icon--right {
        width: 0;
        height: 0;
        opacity: 0;
        padding: 0;
        margin: 0;
}

.lets-talk-button:hover .lets-talk-button__icon--left {
        width: 2.396vw;
        height: 2.396vw;
        opacity: 1;
        transform: translateX(0);
}

.lets-talk-button:hover .lets-talk-button__text {
        transform: translateX(0.313vw);
}

@media (max-width: 1024px) {
        .lets-talk-button-wrapper {
                left: 0;
                right: 0;
                bottom: 32px;
                width: 100%;
                padding: 0 32px;
                box-sizing: border-box;
                text-align: right;
        }
        .lets-talk-button {
                width: 100%;
                max-width: 100%;
                justify-content: space-between;
        }
        .lets-talk-title {
                font-size: 64px;
                margin-bottom: 24px;
        }
        .lets-talk-description {
                font-size: 16px;
                max-width: 280px;
        }
        .lets-talk-button:hover .lets-talk-button__text {
                transform: translateX(48px);
        }
        .lets-talk-section {
                min-height: 576px;
                padding: 32px;
        }
        .lets-talk-content {
                max-width: 600px;
        }
        .contact-us-button {
                font-size: 16px;
                padding: 2px 4px;
                margin-bottom: 24px;
        }
        .lets-talk-description {
                font-size: 20px;
                max-width: 310px!important;
        }
        .lets-talk-button-wrapper {
                bottom: 48px;
                right: 48px;
        }
        .lets-talk-button {
                width: 189px;
                height: 62px;
                font-size: 16px;
                gap: 16px;
                padding: 8px 8px 8px 16px;
        }
        .lets-talk-button__icon {
                width: 46px;
                height: 46px;
        }
        .lets-talk-button__icon img {
                width: 24px;
                height: 24px;
        }
        .lets-talk-button__icon--left {
                left: 8px;
                transform: translateX(-8px);
                width: 0;
                height: 0;
        }
        .lets-talk-button:hover .lets-talk-button__icon--left {
                width: 46px;
                height: 46px;
                transform: translateX(0);
        }
        .lets-talk-button:hover .lets-talk-button__text {
                transform: translateX(6px);
        }
}

@media (max-width: 767px) {
        .lets-talk-button-wrapper {
                bottom: 24px;
                padding: 0 24px;
        }
        .lets-talk-button {
                width: 100%;
                justify-content: space-between;
                padding: 8px;
        }
        .lets-talk-button:hover .lets-talk-button__text {
                transform: translateX(48px);
        }
        .lets-talk-section {
                padding: 24px;
        }
        .contact-us-button {
                margin-bottom: 16px;
        }
        .lets-talk-title {
                margin-bottom: 16px;
        }
}

.recent-projects-marquee {
        width: 100%;
        background-color: #1E8F7F;
        padding: 1.25vw 0;
        overflow: hidden;
        position: relative;
        white-space: nowrap;
        margin-top: 6.042vw;
}

.marquee-wrapper {
        display: flex;
        width: max-content;
        animation: marquee 20s linear infinite;
}

.marquee-group {
        display: flex;
        align-items: center;
        gap: 1.667vw;
        white-space: nowrap;
}

.marquee-item {
        display: inline-flex;
        align-items: center;
        gap: 1.667vw;
        flex-shrink: 0;
}

.marquee-item:last-child {
        padding-right: 1.667vw;
}

.marquee-item span {
        font-family: 'Roboto Condensed', sans-serif;
        font-weight: 900;
        font-style: normal;
        font-size: 6.667vw;
        line-height: 0.85;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        color: #FFFFFF;
        margin: 0;
        padding: 0;
}

.marquee-item img {
        width: 5.104vw;
        height: 4.948vw;
        display: block;
        flex-shrink: 0;
}

@keyframes marquee {
        0% {
                transform: translateX(0);
        }
        100% {
                transform: translateX(-50%);
        }
}

@media (min-width: 768px) and (max-width: 1024px) {
        .recent-projects-marquee {
                margin-top: 64px;
        }
        .marquee-item {
                gap: 20px;
        }
        .marquee-item:last-child {
                padding-right: 20px;
        }
        .marquee-item span {
                font-size: 64px;
        }
        .marquee-item img {
                width: 58px;
                height: 57px;
        }
        .marquee-group {
                gap: 24px;
        }
}

@media (max-width: 767px) {
        .recent-projects-marquee {
                margin-top: 48px;
        }
        .marquee-item {
                gap: 15px;
        }
        .marquee-item:last-child {
                padding-right: 15px;
        }
        .marquee-item span {
                font-size: 48px;
        }
        .marquee-item img {
                width: 36px;
                height: 35px;
        }
        .marquee-group {
                gap: 16px;
        }
}

.blocks-section {
        padding-top: clamp(3.333vw, 5vw, 5vw);
        padding-bottom: clamp(3.333vw, 5vw, 5vw);
}

.blocks-row {
        display: flex;
        gap: 1.406vw;
        justify-content: space-between;
        flex-wrap: wrap;
}

.block {
        flex: 1 1 calc(33.333% - 0.938vw);
        min-width: 0;
        text-decoration: none;
        display: block;
}

.block__image-wrapper {
        position: relative;
        display: block;
        border-radius: 16px;
        overflow: hidden;
        margin-bottom: 1.25vw;
        transform: translateZ(0);
        isolation: isolate;
}

.block__image {
        width: 100%;
        height: 26.563vw;
        display: block;
        object-fit: cover;
        object-position: center;
}

.block__image-wrapper:hover .block__image {
        border-radius: 1vw;
}

.block__text-line {
        display: flex;
        align-items: center;
        gap: 0.208vw;
        margin-bottom: 0.885vw;
}

.block__text {
        margin: 0;
        font-family: 'Inter', sans-serif;
        font-weight: 700;
        font-size: 0.833vw;
        line-height: 0.98;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        color: #2E2E2E;
        opacity: 0.5;
}

.block__icon {
        position: relative;
        width: 1.094vw;
        height: 0.833vw;
        flex-shrink: 0;
        opacity: 1;
        display: block;
}

.block__title {
        margin: 0;
        font-family: 'Roboto Condensed', sans-serif;
        font-weight: 900;
        font-size: 1.458vw;
        line-height: 1;
        letter-spacing: -0.03em;
        text-transform: uppercase;
        color: #2E2E2E;
}

@media (min-width: 1025px) {
        .block__hover {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                background-color: #EFEFEF;
                opacity: 0;
                transform: translateY(100%) translateZ(0);
                transition: transform 0.4s ease, opacity 0.4s ease;
                z-index: 2;
                display: flex;
                flex-direction: column;
                backface-visibility: hidden;
                -webkit-backface-visibility: hidden;
                box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.01);
                border-radius: inherit;
        }
        .block__image-wrapper:hover .block__hover {
                opacity: 1;
                transform: translateY(0) translateZ(0);
                pointer-events: auto;
        }
        .block__hover-header {
                height: 2.5vw;
                background-color: #2E2E2E;
                width: 100%;
                display: flex;
                align-items: center;
                justify-content: space-between;
                padding: 0.833vw 1.667vw;
                box-sizing: border-box;
        }
        .block__hover-details {
                font-family: 'Inter', sans-serif;
                font-weight: 700;
                font-size: 0.833vw;
                line-height: 0.98;
                letter-spacing: -0.05em;
                text-transform: uppercase;
                color: #EFEFEF;
                margin: 0;
        }
        .block__hover-star {
                width: 0.573vw;
                height: 0.573vw;
                flex-shrink: 0;
                display: block;
        }
        .block__hover-content {
                padding: 1.667vw;
                flex: 1;
                display: flex;
                flex-direction: column;
                gap: 1.667vw;
        }
        .block__hover-group-title {
                font-family: 'Inter', sans-serif;
                font-weight: 700;
                font-size: 0.833vw;
                line-height: 0.98;
                letter-spacing: -0.05em;
                text-transform: uppercase;
                color: #2E2E2E;
                opacity: 0.5;
                margin: 0;
        }
        .block__hover-metrics {
                display: flex;
                flex-direction: column;
                gap: 0.417vw;
                margin-top: 1.25vw;
        }
        .block__hover-metric {
                display: flex;
                justify-content: space-between;
                width: 100%;
        }
        .block__hover-metric-label,
        .block__hover-metric-value {
                font-family: 'Inter', sans-serif;
                font-weight: 700;
                font-size: 0.833vw;
                line-height: 0.98;
                letter-spacing: -0.05em;
                text-transform: uppercase;
                color: #2E2E2E;
                margin: 0;
        }
        .block__hover-metric-value {
                text-align: right;
                flex: 0 0 auto;
                white-space: nowrap;
        }
        .block__hover-metric-value--green {
                color: #1E8F7F;
        }
        .block__hover-industry-value {
                font-family: 'Inter', sans-serif;
                font-weight: 700;
                font-size: 0.833vw;
                line-height: 0.98;
                letter-spacing: -0.05em;
                text-transform: uppercase;
                color: #2E2E2E;
                margin-top: 1.25vw;
        }
        .block__hover-separator {
                width: 100%;
                height: 1px;
                background-color: #B4B4B4;
                margin: 0;
        }
        .block-hover-button-wrapper {
                margin-top: auto;
                display: flex;
                justify-content: center;
        }
        .block-hover-button {
                display: flex;
                align-items: center;
                justify-content: flex-end;
                width: 9.844vw;
                height: 3.229vw;
                background: #2E2E2E;
                color: #FFF;
                font-family: "Inter", sans-serif;
                font-weight: 700;
                font-size: 0.833vw;
                line-height: 0.98;
                letter-spacing: -0.04em;
                text-transform: uppercase;
                text-decoration: none;
                border-radius: 12px;
                gap: 0.833vw;
                position: relative;
                overflow: hidden;
                padding: 0.417vw 0.417vw 0.417vw 0;
                transition: background 0.3s ease;
        }
        .block-hover-button:hover {
                background: #1E8F7F;
        }
        .block-hover-button__icon {
                display: flex;
                align-items: center;
                justify-content: center;
                width: 2.396vw;
                height: 2.396vw;
                background: #EFEFEF;
                border-radius: 8px;
                transition: all 0.3s ease;
                overflow: hidden;
        }
        .block-hover-button__icon img {
                width: 1.25vw;
                height: 1.25vw;
                display: block;
        }
        .block-hover-button__icon--right {
                opacity: 1;
                transform: translateX(0);
        }
        .block-hover-button__icon--left {
                position: absolute;
                left: 0.417vw;
                top: 50%;
                transform: translateY(-50%) translateX(-0.417vw);
                opacity: 0;
                width: 0;
                height: 0;
                background: #EFEFEF;
                border-radius: 8px;
                display: flex;
                align-items: center;
                justify-content: center;
        }
        .block-hover-button:hover .block-hover-button__icon--right {
                width: 0;
                height: 0;
                opacity: 0;
                padding: 0;
                margin: 0;
        }
        .block-hover-button:hover .block-hover-button__icon--left {
                width: 2.396vw;
                height: 2.396vw;
                opacity: 1;
                transform: translateY(-50%) translateX(0);
        }
        .block-hover-button__text {
                transition: transform 0.3s ease;
        }
        .block-hover-button:hover .block-hover-button__text {
                transform: translateX(0.313vw);
        }
}

@media (max-width: 1024px) {
        .blocks-section {
                padding-top: 48px;
                padding-bottom: 48px;
        }
        .desktop-projects {
                display: none !important;
        }
        .mobile-projects {
                display: block !important;
                position: relative;
                overflow: hidden;
                padding: 0;
                margin: 0;
                width: 100%;
        }
        .blocks-slides {
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                width: 100%;
                height: auto;
                transition: transform 0.4s ease-in-out;
                box-sizing: border-box;
        }
        .block[data-projects-slide] {
                flex: 0 0 100%;
                width: 100%;
                max-width: 100%;
                min-width: 100%;
                box-sizing: border-box;
        }
        .block__image {
                margin-bottom: 16px;
                border-radius: 16px;
                height: 642px;
        }
        .block__title {
                font-size: 24px;
        }
        .projects-dots {
                display: flex;
                justify-content: center;
                align-items: center;
                gap: 8px;
                margin-top: 24px;
                padding: 0;
                width: 100%;
                box-sizing: border-box;
        }
        .projects-dot {
                width: 8px;
                height: 8px;
                border: 1px solid #B4B4B4;
                border-radius: 4px;
                background: transparent;
                position: relative;
                cursor: pointer;
                flex-shrink: 0;
                overflow: hidden;
        }
        .projects-dot-fill {
                position: absolute;
                top: 0;
                left: 0;
                height: 100%;
                width: 0;
                background-color: #1E8F7F;
                border-radius: 4px;
                transition: none;
        }
        .projects-dot.active {
                width: 28px;
                height: 8px;
                border-radius: 4px;
                background: transparent;
                border: 1px solid #1E8F7F;
        }
        .projects-dot.active .projects-dot-fill {
                display: block;
                width: 100%;
        }
        .blocks-row {
                gap: 27px;
        }
        .block {
                flex: 1 1 calc(33.333% - 18px);
        }
        .block__image-wrapper {
                margin-bottom: 24px;
        }
        .block__image {
                height: 510px;
        }
        .block__text-line {
                gap: 4px;
                margin-bottom: 17px;
        }
        .block__text {
                font-size: 16px;
        }
        .block__icon {
                top: 1px;
                width: 21px;
                height: 16px;
        }
        .block__title {
                font-size: 28px;
        }
}

@media (max-width: 767px) {
        .block__image {
                height: 312px;
        }
        .block__text-line {
                margin-bottom: 11px;
        }
}

@media (max-width: 480px) {
        .block__title {
                font-size: 18px;
        }
        .block__text {
                font-size: 14px;
        }
        .projects-dot.active {
                width: 24px;
        }
}

@media (min-width: 1025px) {
        .desktop-projects {
                display: flex !important;
        }
        .mobile-projects {
                display: none !important;
        }
}

.contact-us {
        position: relative;
        width: 100%;
}

.contact-us__wrapper {
        position: relative;
        min-height: 27.188vw;
        border-radius: 16px;
        overflow: hidden;
        padding: 2.5vw;
        margin-bottom: 5vw;
        box-sizing: border-box;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        color: #FFFFFF;
        background: url('../img/blog-single-top-bg-pc.webp') center / cover no-repeat;
        z-index: 10;
}

@media (max-width: 1024px) {
        .contact-us__wrapper {
                background-image: url('../img/blog-single-top-bg-tablet.webp');
                min-height: auto;
                padding: 32px;
                margin-bottom: 0;
                display: block;
        }
}

@media (max-width: 767px) {
        .contact-us__wrapper {
                background-image: url('../img/blog-single-top-bg-mob.webp');
                padding: 24px;
                margin-bottom: 0;
        }
}

.contact-us__content {
        max-width: 100%;
        width: 100%;
}

.contact-us__tag {
        font-family: "Inter", sans-serif;
        font-weight: 700;
        font-size: 0.833vw;
        line-height: 0.98;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        color: #FFFFFF;
        background: #1E8F7F;
        padding: 0.104vw 0.208vw;
        border-radius: 4px;
        margin-bottom: 1.25vw;
        display: inline-block;
}

@media (max-width: 1024px) {
        .contact-us__tag {
                margin-bottom: 26px;
        }
        .contact-us__tag {
                font-size: 16px;
                padding: 2px 4px;
                margin-bottom: 24px;
        }
}

@media (max-width: 767px) {
        .contact-us__tag {
                font-size: 14px;
        }
}

.contact-us__title {
        font-family: "Roboto Condensed", sans-serif;
        font-weight: 900;
        font-size: 3.333vw;
        line-height: 1;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        margin: 0 0 1.667vw;
        color: #FFFFFF;
        max-width: max-content;
}

@media (max-width: 1024px) {
        .contact-us__title {
                font-size: 36px;
                margin-bottom: 32px;
        }
        .contact-us__title {
                font-size: 64px;
                margin: 0 0 32px;
        }
}

@media (max-width: 767px) {
        .contact-us__title {
                font-size: 24px;
                margin-bottom: 24px;
        }
}

.contact-us__avatar-text {
        display: flex;
        align-items: center;
        gap: 0.833vw;
        margin: 0 0 3.333vw;
}

@media (max-width: 767px) {
        .contact-us__avatar-text {
                margin: 0 0 48px;
        }
}

.contact-us__avatar {
        width: 5vw;
        height: 5vw;
        border-radius: 8px;
        object-fit: cover;
        flex-shrink: 0;
}

@media (max-width: 767px) {
        .contact-us__avatar {
                width: 48px;
                height: 48px;
        }
}

.contact-us__text {
        font-family: "Inter", sans-serif;
        font-weight: 600;
        font-size: 1.042vw;
        line-height: 1.4;
        letter-spacing: -0.04em;
        margin: 0;
        color: #FFFFFF;
        opacity: 0.7;
        max-width: 21.094vw;
}

@media (max-width: 1024px) {
        .contact-us__text {
                font-size: 16px;
                max-width: 350px;
        }
        .contact-us__avatar-text {
                gap: 16px;
                margin: 0 0 64px;
        }
        .contact-us__avatar {
                width: 96px;
                height: 96px;
        }
        .contact-us__text {
                font-size: 20px;
                max-width: 405px;
        }
}

@media (max-width: 767px) {
        .contact-us__text {
                font-size: 14px;
        }
}

.contact-us__buttons {
        display: flex;
        gap: 1.042vw;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: end;
}

@media (max-width: 1024px) {
        .contact-us__buttons {
                width: 100%;
        }
        .contact-us__buttons {
                gap: 20px;
        }
}

@media (max-width: 767px) {
        .contact-us__buttons {
                gap: 13px;
                flex-direction: column;
                align-items: stretch;
        }
}

.contact-btn {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        background: #FFF;
        color: #2E2E2E;
        font-family: "Inter", sans-serif;
        font-weight: 700;
        font-size: 0.833vw;
        line-height: 0.98;
        letter-spacing: -0.04em;
        text-transform: uppercase;
        text-decoration: none;
        border-radius: 8px;
        gap: 0.833vw;
        position: relative;
        overflow: hidden;
        height: 3.229vw;
        padding: 0.417vw 0.417vw 0.417vw 0.833vw;
        width: 100%;
        transition: all 0.3s ease;
}

.contact-btn__icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.396vw;
        height: 2.396vw;
        background: #1E8F7F;
        border-radius: 8px;
        transition: all 0.3s ease;
        overflow: hidden;
        flex-shrink: 0;
}

.contact-btn__icon img {
        width: 1.25vw;
        height: 1.25vw;
        display: block;
}

.contact-btn__icon--right {
        opacity: 1;
        transform: translateX(0);
}

.contact-btn__icon--left {
        position: absolute;
        left: 0.417vw;
        opacity: 0;
        transform: translateX(-0.417vw);
        width: 0;
        height: 0;
        background: #1E8F7F;
        border-radius: 8px;
}

.contact-btn:hover .contact-btn__icon--right {
        width: 0;
        height: 0;
        opacity: 0;
        padding: 0;
        margin: 0;
}

.contact-btn:hover .contact-btn__icon--left {
        width: 2.396vw;
        height: 2.396vw;
        opacity: 1;
        transform: translateX(0);
}

.contact-btn:hover .contact-btn__text {
        transform: translateX(0.313vw);
}

.contact-btn__text {
        transition: transform 0.3s ease;
}

.contact-btn--primary {
        max-width: 14.323vw;
}

@media (max-width: 1024px) {
        .contact-btn--primary {
                width: 100%;
                max-width: 100%;
                justify-content: space-between;
        }
        .contact-btn {
                font-size: 16px;
                gap: 16px;
                height: 62px;
                padding: 8px 8px 8px 16px;
        }
        .contact-btn__icon {
                width: 46px;
                height: 46px;
        }
        .contact-btn__icon img {
                width: 24px;
                height: 24px;
        }
        .contact-btn__icon--left {
                left: 8px;
                transform: translateX(-8px);
                width: 0;
                height: 0;
        }
        .contact-btn:hover .contact-btn__icon--left {
                width: 46px;
                height: 46px;
                transform: translateX(0);
        }
        .contact-btn:hover .contact-btn__text {
                transform: translateX(6px);
        }
        .contact-btn--primary {
                max-width: 275px;
        }
}

@media (max-width: 767px) {
        .contact-btn {
                justify-content: space-between;
        }
        .contact-btn:hover .contact-btn__text {
                transform: translateX(48px);
        }
        .contact-btn--primary {
                max-width: 100%;
        }
}

.value-cards-grid {
        display: flex;
        flex-direction: column;
        gap: 1.6666666666666667vw;
        margin-top: 2.5vw;
}

.value-card-row {
        display: flex;
        justify-content: space-between;
        gap: 1.6666666666666667vw;
}

.value-card-row.no-border {
        border-bottom: none;
        padding-bottom: 0;
        margin-bottom: 0;
}

.value-card {
        padding: 1.67vw;
        display: flex;
        align-items: flex-start;
        flex: 1;
        box-sizing: border-box;
        border-top: 1px solid #B4B4B4;
}

.value-card-row:first-child .value-card {
        border: none;
}

.value-card-text {
        display: block;
        position: relative;
        padding-left: 1.67vw;
}

.value-card-icon-block {
        display: block;
        position: relative;
        width: 1.25vw;
        height: 1.25vw;
}
.value-card-icon {
        display: block;
        position: relative;
        width: auto;
        height: auto;
        top: 5px;
}

.value-card-text h3 {
        font-family: "Roboto Condensed", sans-serif;
        font-weight: 900;
        font-size: 1.4583333333333333vw;
        line-height: 1;
        letter-spacing: -0.03em;
        text-transform: uppercase;
        color: #2E2E2E;
        margin: 0 0 1.25vw;
}

.value-card-text p {
        font-family: "Inter", sans-serif;
        font-weight: 600;
        font-size: 1.0416666666666665vw;
        line-height: 1.4;
        letter-spacing: -0.04em;
        color: #2E2E2E;
        opacity: 0.7;
        margin: 0;
}

@media (max-width: 1024px) {
        .value-cards-grid {
                display: none !important;
        }
        .value-cards-slider {
                display: block !important;
                width: 100%;
                overflow: hidden;
                padding: 0;
                margin-top: 32px;
        }
        .value-cards-slider .swiper-wrapper {
                padding-bottom: 0;
                align-items: stretch;
        }
        .value-cards-slider .swiper-slide {
                height: auto;
                display: flex;
                flex-direction: column;
        }
        .value-cards-slide-inner {
                display: flex;
                flex-direction: column;
                width: 100%;
        }
        .value-cards-slider .value-card {
                padding: 24px 0;
                width: 100%;
                box-sizing: border-box;
                display: flex;
                gap: 16px;
                background: transparent;
                position: relative;
                border: none !important;
        }
        .value-cards-slider .value-card::after {
                content: '';
                position: absolute;
                bottom: 0;
                left: 0;
                right: 0;
                height: 1px;
                background-color: #B4B4B4;
        }
        .value-cards-slider .value-card:last-child::after {
                display: none;
        }
        .value-card--empty {
                visibility: hidden;
                height: 0 !important;
                padding: 0 !important;
                margin: 0 !important;
        }
        .value-card--empty::after {
                display: none !important;
        }
        .value-cards-slider .value-card-icon {
                width: 15px;
                height: 14px;
        }
        .value-cards-slider .value-card-text h3 {
                font-size: 24px;
                margin: 0 0 16px;
        }
        .value-cards-slider .value-card-text p {
                font-size: 16px;
        }
        .value-cards-dots,
        .swiper-pagination {
                position: relative !important;
                bottom: auto !important;
                left: auto !important;
                right: auto !important;
                width: 100% !important;
                text-align: center;
                margin-top: 32px;
                padding: 0;
                z-index: 10;
                display: flex !important;
                justify-content: center;
                gap: 8px;
        }
        .swiper-pagination-bullet,
        .value-cards-dot {
                width: 8px !important;
                height: 8px !important;
                background: transparent !important;
                border: 1px solid rgba(46, 46, 46, 0.5) !important;
                border-radius: 4px !important;
                opacity: 1 !important;
                margin: 0 !important;
                padding: 0 !important;
                position: relative;
                transition: all 0.2s ease;
                cursor: pointer;
                overflow: hidden;
                flex-shrink: 0;
        }
        .swiper-pagination-bullet-active,
        .value-cards-dot.active {
                width: 31px !important;
                height: 8px !important;
                border-color: #1E8F7F !important;
                background: transparent !important;
                border-radius: 4px !important;
        }
        .swiper-dot-fill,
        .value-cards-dot-fill {
                position: absolute;
                top: 0;
                left: 0;
                height: 100%;
                width: 0;
                background-color: #1E8F7F;
                border-radius: 4px;
                transition: none;
                z-index: 1;
        }
        .swiper-pagination-bullet-active .swiper-dot-fill,
        .value-cards-dot.active .value-cards-dot-fill {
                width: 100%;
        }
}

@media (max-width: 767px) {
        .value-cards-slider .value-card-text h3 { font-size: 18px; }
        .value-cards-slider .value-card-text p   { font-size: 14px; }
        .value-cards-dots,
        .swiper-pagination { margin-top: 24px; }
        .swiper-pagination-bullet-active,
        .value-cards-dot.active { width: 28px !important; }
}

@media (max-width: 1024px) {
        .desktop-projects {
                display: none !important;
        }
        .mobile-projects {
                display: block !important;
                position: relative;
                overflow: hidden;
                padding: 0;
                margin: 0;
                width: 100%;
        }
        .mobile-projects .swiper-wrapper {
                padding-bottom: 0;
        }
        .mobile-projects .swiper-slide {
                height: auto;
        }
        .mobile-projects .swiper-slide .block {
                width: 100%;
                margin: 0;
                padding: 0;
        }
        .mobile-projects .swiper-slide .block__image-wrapper {
                margin-bottom: 16px;
        }
        .mobile-projects .block__image {
                height: 642px;
        }
}

@media (min-width: 768px) and (max-width: 1024px) {
        .mobile-projects .block__image {
                height: 510px;
        }
}

@media (max-width: 767px) {
        .mobile-projects .block__image {
                height: 312px;
        }
}

.value-cards-slides,
.value-cards-slide,
.value-cards-dot,
.value-cards-dot-fill,
.blocks-slides,
.projects-dot,
.projects-dot-fill {
        display: none !important;
}

@media (min-width: 1025px) {
        .value-cards-slider,
        .mobile-projects {
                display: none !important;
        }
}

@media (max-width: 1024px) {
        .value-cards-grid,
        .desktop-projects {
                display: none !important;
        }
}

.value-cards-slider,
.mobile-projects {
        width: 100%;
        overflow: hidden;
        position: relative;
        padding-bottom: 0;
}

.value-cards-slider .swiper-wrapper,
.mobile-projects .swiper-wrapper {
        padding-bottom: 0;
        align-items: stretch;
}

@media (max-width: 1024px) {
        .lets-talk-button,
        .lets-talk-button *,
        .lets-talk-button::before,
        .lets-talk-button::after {
                transition: none !important;
                animation: none !important;
                animation-duration: 0s !important;
                animation-delay: 0s !important;
                transform: none !important;
                will-change: auto !important;
        }
        .lets-talk-button {
                justify-content: space-between !important;
                gap: 16px !important;
                padding: 8px 8px 8px 16px !important;
                background: #FFF !important;
                color: #2E2E2E !important;
        }
        .lets-talk-button .lets-talk-button__icon--right {
                position: static !important;
                opacity: 1 !important;
                visibility: visible !important;
                width: 46px !important;
                height: 46px !important;
                min-width: 46px !important;
                min-height: 46px !important;
                max-width: 46px !important;
                max-height: 46px !important;
                background: #1E8F7F !important;
                border-radius: 8px !important;
                transform: none !important;
                translate: none !important;
                padding: 0 !important;
                margin: 0 !important;
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                flex-shrink: 0 !important;
                overflow: visible !important;
        }
        .lets-talk-button .lets-talk-button__icon--right img {
                width: 24px !important;
                height: 24px !important;
                opacity: 1 !important;
                visibility: visible !important;
                transform: none !important;
        }
        .lets-talk-button .lets-talk-button__icon--left {
                opacity: 0 !important;
                visibility: hidden !important;
                width: 0 !important;
                height: 0 !important;
                min-width: 0 !important;
                min-height: 0 !important;
                max-width: 0 !important;
                max-height: 0 !important;
                background: #1E8F7F !important;
                border-radius: 8px !important;
                transform: none !important;
                translate: none !important;
                padding: 0 !important;
                margin: 0 !important;
                display: none !important;
                position: absolute !important;
                left: 8px !important;
                overflow: hidden !important;
        }
        .lets-talk-button .lets-talk-button__icon--left img {
                width: 0 !important;
                height: 0 !important;
                opacity: 0 !important;
                visibility: hidden !important;
        }
        .lets-talk-button .lets-talk-button__text {
                transform: none !important;
                translate: none !important;
                transition: none !important;
                margin: 0 !important;
                padding: 0 !important;
        }
        .lets-talk-button:hover .lets-talk-button__icon--right {
                opacity: 1 !important;
                visibility: visible !important;
                width: 46px !important;
                height: 46px !important;
                display: flex !important;
        }
        .lets-talk-button:hover .lets-talk-button__icon--right img {
                width: 24px !important;
                height: 24px !important;
                opacity: 1 !important;
        }
        .lets-talk-button:hover .lets-talk-button__icon--left {
                opacity: 0 !important;
                visibility: hidden !important;
                width: 0 !important;
                height: 0 !important;
                display: none !important;
        }
        .lets-talk-button:hover .lets-talk-button__text {
                transform: none !important;
        }
        .lets-talk-button:active,
        .lets-talk-button:focus,
        .lets-talk-button:focus-visible,
        .lets-talk-button:active *,
        .lets-talk-button:focus *,
        .lets-talk-button:focus-visible * {
                outline: none !important;
                box-shadow: none !important;
                transform: none !important;
                transition: none !important;
                animation: none !important;
        }
        .lets-talk-button-wrapper:hover .lets-talk-button,
        .lets-talk-button-wrapper:hover .lets-talk-button *,
        .hero-content:hover .lets-talk-button,
        .hero-content:hover .lets-talk-button * {
                transition: none !important;
                transform: none !important;
                animation: none !important;
        }
        .lets-talk-button[style*="transition"],
        .lets-talk-button[style*="transform"],
        .lets-talk-button[style*="animation"] {
                transition: none !important;
                transform: none !important;
                animation: none !important;
        }
}

@media (min-width: 1025px) {
        .case-wrapper > *:not(:first-child) {
                margin-top: 5vw;
        }
}

@media (max-width: 1024px) {
        .case-wrapper > *:not(:first-child) {
                margin-top: 48px;
        }
}