.container {
   width: 100%;
   max-width: 1920px;
   margin: 0 auto;
   box-sizing: border-box;
   padding-left: clamp(24px, calc(15.75px + 2.116vw), 32px);
   padding-right: clamp(24px, calc(15.75px + 2.116vw), 32px);
}
@media (min-width: 768px) {
   .container {
      padding-left: clamp(32px, calc(-10.67px + 5.556vw), 96px);
      padding-right: clamp(32px, calc(-10.67px + 5.556vw), 96px);
   }
}
@media (max-width: 767px) {
   .container {
      padding-left: 24px;
      padding-right: 24px;
   }
   .header .container {
      display: block;
   }
}
.hero {
   position: relative;
   min-height: 100vh;
   overflow: hidden;
   background-color: #1E8F7F;
}
.hero-img {
   position: absolute;
   object-fit: cover;
   z-index: 0;
   display: block;
   right: 0;
   top: 1.8333vw;
   left: auto;
   bottom: auto;
   transform: none;
   width: auto;
   height: 80%;
}
@media (max-width: 1024px) {
   .hero-img {
      top: 40%;
      left: 50%;
      right: auto;
      transform: translateX(-50%);
      width: auto;
      height: auto;
   }
}
@media (max-width: 767px) {
   .hero-img {
      top: 40%;
      height: 48%;
   }
}
.hero-content {
   display: flex;
   flex-direction: column;
   position: relative;
   z-index: 2;
   padding-bottom: 5vw;
   min-height: 100%;
}
.site-header {
   display: flex;
   align-items: center;
   justify-content: space-between;
   min-height: 13.3333vh;
   height: auto;
   padding: 32px 0;
   border-bottom: 1px solid rgba(255, 255, 255, 0.2);
   overflow: hidden;
}
.header--services-hover .site-header {
   border-bottom: 1px solid #B4B4B4;
}
.main-navigation a,
.hero-button {
   color: #FFF;
   text-decoration: none;
}
.main-navigation {
   position: absolute;
   left: 50%;
   transform: translateX(-50%);
}
.menu {
   list-style: none;
   margin: 0;
   padding: 0;
   display: flex;
}
.menu a {
   font-family: "Inter", sans-serif;
   font-weight: 700;
   font-size: 0.8333vw;
   line-height: 0.98;
   letter-spacing: -0.05em;
   text-transform: uppercase;
   color: #FFF;
   text-decoration: none;
   display: flex;
   align-items: center;
   justify-content: center;
   padding: 2.8646vw 1.6797vw;
   box-shadow: inset 0 -4px 0 0 transparent;
   transition: box-shadow 0.25s ease;
}
.menu a::after {
   content: "";
   position: absolute;
   left: 0;
   bottom: 0;
   width: 100%;
   height: 0.4233vh;
   background: #FFF;
   opacity: 0;
   transition: opacity 0.25s ease;
}
.menu a:hover::after,
.menu .current-menu-item > a::after {
   opacity: 1;
}
.hero-button {
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: -0.04em;
   background-color: #FFF;
   color: #1E8F7F !important;
   padding: 0.694vw 1.667vw;
   border-radius: 0.2083vw;
   display: inline-block;
   transition: background-color 0.2s;
}
.hero-button:hover {
   background-color: #EFEFEF;
}
.hero-headline {
   text-align: left;
   margin-top: 14.3915vh;
}
.hero-badge {
   font-family: "Inter", sans-serif;
   font-weight: 700;
   font-size: 0.8333vw;
   line-height: 1.1;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #1E8F7F;
   background-color: #FFF;
   display: inline-block;
   padding: 0.10416666666666667vw 0.20833333333333334vw;
   border-radius: 0.20833333333333334vw;
   margin-bottom: clamp(16px, calc(7.74px + 2.14vw), 24px);
}
@media (max-width: 1024px) {
   .hero-badge {
      font-size: 16px;
      padding: 2px 4px;
      border-radius: 4px;
   }
}
@media (max-width: 767px) {
   .hero-badge {
      font-size: 14px;
   }
}
.hero-title {
   font-family: "Roboto Condensed", sans-serif;
   font-weight: 900;
   font-style: normal;
   font-size: 6.67vw;
   line-height: 1;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   margin: 0;
   padding: 0;
   color: #FFF;
}
@media (max-width: 1024px) {
   .hero-title {
      font-size: 64px;
   }
}
@media (max-width: 768px) {
   .hero-title {
      font-size: 48px;
   }
}
.hero-title__line {
   display: block;
   margin-bottom: -0.1em;
}
.hero-title__line:last-child {
   margin-bottom: 0;
}
@media (min-width: 768px) and (max-width: 1024px) {
   .hero-title__line--1,
   .hero-title__line--2 {
      display: inline;
      margin-bottom: 0;
   }
   .hero-title__line--2 {
      position: relative;
      left: -15px;
   }
   .hero-title__line--1::after {
      content: "\00A0";
   }
   .hero-title__line--3 {
      display: block;
      margin-top: -0.1em;
      margin-bottom: 0;
   }
}
@media (max-width: 767px) {
   .hero-title__line:last-child {
      margin-bottom: 0;
   }
}
.hero-subcontent {
   display: flex;
   align-items: center;
   margin-top: clamp(24px, calc(18.67px + 0.69vw), 32px);
}
.hero-subcontent__icon {
   margin-right: 16px;
}
.hero-subcontent__icon img {
   display: block;
   width: 48px;
   height: 48px;
}
@media (min-width: 768px) {
   .hero-subcontent__icon img {
      width: 96px;
      height: 96px;
   }
}
.hero-subcontent p {
   font-family: "Inter", sans-serif;
   font-weight: 600;
   font-size: 1.04vw;
   line-height: 1.4;
   letter-spacing: -0.04em;
   color: #FFF;
   width: 100%;
   padding: 0;
   max-width: clamp(171px, calc(157.52px + 4.62vw), 245px);
   margin: 0;
}
@media (min-width: 1025px) {
   .hero-subcontent p {
      margin: 0 2.5vw 0 0;
   }
}
@media (max-width: 1024px) {
   .hero-subcontent p {
      font-size: 16px;
      max-width: 220px;
   }
}
@media (max-width: 767px) {
   .hero-subcontent p {
      font-size: 14px;
      max-width: 175px;
   }
}

.hero-subcontent-button {
   margin: 0;
   padding: 8px 8px 8px 16.35px;
   width: auto;
   height: auto;
   justify-content: center;
}
.hero-book-call {
   display: none;
}
.hero-stats {
   display: flex;
   justify-content: space-between;
   gap: 1.6667vw;
   margin-top: clamp(243px, calc(190.4px + 0.143vw), 276px);
   width: 100%;
}
.hero-stat {
   position: relative;
   min-width: 0;
   height: auto;
   background: #23504933;
   backdrop-filter: blur(20px);
   -webkit-backdrop-filter: blur(20px);
   border-radius: 0.8333333333333334vw;
   border-bottom: 1px solid rgba(255, 255, 255, 0.1);
   padding: 1.67vw;
   display: flex;
   align-items: center;
   gap: 1.25vw;
   box-sizing: border-box;
   width: 100%;
}
@media (max-width: 1024px) {
   .hero-stat {
      border-radius: 16px;
      padding: 32px;
      gap: 24px;
   }
}
@media (max-width: 767px) {
   .hero-stat {
      padding: 24px;
      gap: 16px;
   }
}
.hero-stat__number {
   font-family: "Roboto Condensed", sans-serif;
   font-weight: 900;
   font-size: 6.25vw;
   line-height: 0.85;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #FFF;
   margin: 0;
   padding: 0;
   flex-shrink: 0;
   white-space: nowrap;
}
@media (max-width: 1024px) {
   .hero-stat__number {
      font-size: 64px;
   }
}
@media (max-width: 767px) {
   .hero-stat__number {
      font-size: 48px;
   }
}
.hero-stat__content {
   display: flex;
   flex-direction: column;
   gap: 0.4166666666666667vw;
   overflow: hidden;
}
.hero-stat__title {
   font-family: "Roboto Condensed", sans-serif;
   font-weight: 900;
   font-size: 1.46vw;
   line-height: 1;
   letter-spacing: -0.03em;
   text-transform: uppercase;
   color: #FFF;
   margin: 0;
   padding: 0;
   white-space: nowrap;
   overflow: hidden;
}
@media (max-width: 1024px) {
   .hero-stat__title {
      font-size: 24px;
   }
}
@media (max-width: 767px) {
   .hero-stat__title {
      font-size: 18px;
   }
}
.hero-stat__description {
   font-family: "Inter", sans-serif;
   font-weight: 600;
   font-size: 1.0417vw;
   line-height: 1.4;
   letter-spacing: -0.04em;
   color: #FFF;
   margin: 0;
   padding: 0;
   opacity: 0.7;
   overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
}
@media (max-width: 1024px) {
   .hero-stat__description {
      font-size: 16px;
   }
}
@media (max-width: 767px) {
   .hero-stat__description {
      font-size: 14px;
   }
}
@media (max-width: 1024px) {
   .hero-content {
      display: block;
      min-height: 1127px;
   }
   .mob-btn-slider {
      position: absolute;
      bottom: 0;
      margin-bottom: clamp(48px, 5vw, 65px);
      width: 100%;
   }
   .hero-stats,
   .hero-stats-slider {
      display: block !important;
      position: relative;
      bottom: 0;
      left: 0;
      right: 0;
      margin-top: 0;
      padding: 0;
      box-sizing: border-box;
      width: 100%;
      overflow: hidden;
   }
   .hero-headline {
      margin-top: 64px;
   }
}
@media (max-width: 767px) {
   .hero-headline {
      margin-top: 48px;
   }
   .hero-content {
      min-height: 749px;
   }
   .mob-btn-slider {
      margin-bottom: 48px;
   }
}
.hero-stats-slides {
   display: flex;
   transition: transform 0.4s ease-in-out;
   width: 100%;
   height: auto;
   flex-wrap: nowrap;
}
.hero-stat-slide {
   flex: 0 0 100%;
   display: flex;
   justify-content: center;
}
.hero-stats-dots {
   display: flex;
   justify-content: center;
   gap: 4px;
   margin-top: 40px;
}
.header-button {
   display: flex;
   align-items: center;
   justify-content: flex-end;
   background: #FFF;
   color: #2E2E2E;
   font-family: "Inter", sans-serif;
   font-weight: 700;
   font-size: 0.8333vw;
   line-height: 0.98;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   text-decoration: none;
   border-radius: 0.625vw;
   gap: 0.8333333333333334vw;
   position: relative;
   overflow: hidden;
   padding: 0.4166666666666667vw 0.4166666666666667vw 0.4166666666666667vw 0.8333333333333334vw;
   height: 3.229166666666667vw;
   min-width: 9.705729166666668vw;
}
.header-button__icon {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   background: #1E8F7F;
   border-radius: 0.4166666666666667vw;
   transition: all 0.3s ease;
   overflow: hidden;
}
.header-button__icon img {
   width: 1.25vw;
   height: 1.25vw;
   color: #FFF;
}
.header-button__icon--right {
   opacity: 1;
   transform: translateX(0);
}
.header-button__icon--left {
   position: absolute;
   left: 0.4166666666666667vw;
   opacity: 0;
   transform: translateX(-8px);
   width: 0;
   height: 0;
   background: #1E8F7F;
   border-radius: 0.4166666666666667vw;
}
.header-button:hover .header-button__icon--right {
   width: 0;
   height: 0;
   opacity: 0;
   padding: 0;
   margin: 0;
}
.header-button:hover .header-button__icon--left {
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   opacity: 1;
   transform: translateX(0);
}
.header-button:hover .header-button__text {
   transform: translateX(6px);
}
.header-desktop {
   display: flex;
   align-items: center;
   gap: 1.6666666666666667vw;
}
.burger-menu {
   display: none;
}
.mobile-menu-overlay {
   display: none;
}
@media (min-width: 1025px) {
   .hero-stats-slider {
      display: none !important;
   }
}
@media (max-width: 1024px) {
   .hero-book-call {
      display: block;
      width: 100%;
      position: relative;
      bottom: clamp(19px, 2vw, 24px);
      left: 0;
      right: 0;
      box-sizing: border-box;
   }
   .header-button {
      justify-content: space-between;
      width: 100%;
      height: 62px;
      font-size: 16px;
      padding: 8px 8px 8px 16.35px;
      border-radius: 12px;
   }
   .header-button__icon {
      width: 46px;
      height: 46px;
      border-radius: 8px;
   }
   .header-button__icon img {
      width: auto;
      height: auto;
   }
   .hero-stats {
      display: none !important;
   }
   .hero-subcontent__button {
      display: none !important;
   }
   .header-button:hover {
      background: #FFF;
   }
   .header-button:hover .header-button__icon--right {
      width: 46px !important;
      height: 46px !important;
      opacity: 1 !important;
      transform: translateX(0) !important;
      padding: 0 !important;
      margin: 0 !important;
   }
   .header-button:hover .header-button__icon--left {
      width: 0 !important;
      height: 0 !important;
      opacity: 0 !important;
      transform: translateX(-8px) !important;
   }
   .header-button:hover .header-button__text {
      transform: translateX(0) !important;
   }
   .header-button,
   .header-button__icon,
   .header-button__text,
   .header-button__icon--right,
   .header-button__icon--left {
      transition: none !important;
   }
}
@media (max-width: 767px) {
   .hero {
      padding: 0;
      min-height: 100vh;
      display: flex;
      flex-direction: column;
   }
   .hero-title {
      line-height: 0.85;
   }
   .hero-title__line--1,
   .hero-title__line--2 {
      display: inline;
   }
   .hero-title__line--1::after {
      content: " ";
   }
   .hero-title__line--3 {
      display: block;
   }
   .hero-title__line--1,
   .hero-title__line--2 {
      margin-bottom: 0 !important;
   }
}
@media (max-width: 480px) {
   .hero-subcontent {
      align-items: flex-start;
   }
}
.what-we-do__columns {
   display: flex;
   gap: 5.2604vw;
   margin-top: clamp(48px, calc(35.76px + 3.14vw), 96px);
   margin-bottom: clamp(48px, calc(35.76px + 3.14vw), 96px);
   min-width: 0;
}
.what-we-do__col--left {
   flex: 0 1 clamp(320px, calc(286px + 10.6875vw), 491px);
}
.what-we-do__col--right {
   flex: 1;
   min-width: 0;
}
.tag {
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.8333vw;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #ffffff;
   background-color: #1E8F7F;
   padding: 0.10416666666666667vw 0.20833333333333334vw;
   border-radius: 0.20833333333333334vw;
   display: inline-block;
   line-height: 1.1;
   box-sizing: border-box;
   margin: 0;
}
.what_tag {
   width: fit-content;
}
.reviews_tag {
   width: fit-content;
}
@media (max-width: 1024px) {
   .tag {
      font-size: 16px;
      padding: 2px 4px;
      border-radius: 4px;
      width: fit-content;
   }
}
@media (max-width: 767px) {
   .what_tag {
      letter-spacing: -5%;
   }
   .tag {
      font-size: 14px;
   }
}
.what-we-do__title {
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-size: 6.67vw;
   margin-top: clamp(16px, calc(13.9px + 0.523vw), 24px);
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #2E2E2E;
   margin-bottom: 0;
   overflow: hidden;
   line-height: 0.85;
}
.what-we-do__card {
   width: 100%;
   border: 1px solid #B4B4B4;
   border-radius: 0.8333333333333334vw;
   margin-top: 2.5397vw;
}
.what-we-do__card-inner {
   display: flex;
   align-items: flex-start;
   padding: 1.6667vw;
   gap: 1.25vw;
}
.what-we-do__card-image {
   width: auto;
   height: auto;
   object-fit: cover;
   flex: 0 0 auto;
}
.what-we-do__card-text {
   display: flex;
   flex-direction: column;
   gap: 0.4166666666666667vw;
}
.what-we-do__card-title {
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-size: 1.46vw;
   line-height: 1;
   letter-spacing: -0.03em;
   text-transform: uppercase;
   color: #2E2E2E;
   margin: 0;
}
.what-we-do__card-description {
   font-family: 'Inter', sans-serif;
   font-weight: 600;
   font-size: 1.0417vw;
   line-height: 1.4;
   letter-spacing: -0.04em;
   color: #2E2E2E;
   margin: 0;
   opacity: 0.7;
   padding-top: 1.4583vw;
}
.what-we-do__button {
   display: flex;
   align-items: center;
   justify-content: center;
   height: 3.229166666666667vw;
   margin: 0 1.6667vw 1.6667vw 1.6667vw;
   padding: 0 3.2292vw 0 3.2292vw;
   background-color: #1E8F7F;
   color: #FFFFFF;
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.8333333333333334vw;
   line-height: 1.2;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   text-decoration: none;
   border-radius: 0.625vw;
   position: relative;
   overflow: hidden;
   box-sizing: border-box;
   transition: background-color 0.3s ease;
}
.what-we-do__button-text {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   left: 0.8854vw;
   transition: all 0.3s ease;
   white-space: nowrap;
}
.what-we-do__button:hover .what-we-do__button-text {
   left: 50%;
   transform: translate(-50%, -50%);
}
.what-we-do__button-icon {
   display: flex;
   align-items: center;
   justify-content: center;
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   background-color: #FFFFFF;
   border-radius: 0.4166666666666667vw;
   transition: all 0.3s ease;
}
.what-we-do__button-icon img {
   width: 1.25vw;
   height: 1.25vw;
   display: block;
}
@media (max-width: 1024px) {
   .what-we-do__button-icon img {
      width: auto;
      height: auto;
   }
}
.what-we-do__button-icon--right {
   right: 0.5208333333333333vw;
   opacity: 1;
}
.what-we-do__button-icon--left {
   left: 0.5208333333333333vw;
   opacity: 0;
   width: 0;
   height: 0;
   overflow: hidden;
}
.what-we-do__button:hover {
   background-color: #2E2E2E;
}
.what-we-do__button:hover .what-we-do__button-icon--right {
   width: 0;
   height: 0;
   opacity: 0;
}
.what-we-do__button:hover .what-we-do__button-icon--left {
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   opacity: 1;
}
.what-we-do__services {
   list-style: none;
   margin: 0;
   padding: 0;
}
.what-we-do__service-item {
   display: block;
   width: 100%;
   height: 7.0833vw;
   border-bottom: 1px solid #B4B4B4;
   padding: 0;
   position: relative;
}
.what-we-do__service-link {
   display: flex;
   width: 100%;
   height: 100%;
   align-items: center;
   text-decoration: none;
   color: inherit;
}
.what-we-do__service-item:hover .what-we-do__service-title {
   color: rgb(30, 143, 127);
}
.what-we-do__service-link:hover .what-we-do__service-icon-wrapper {
   background-color: #1E8F7F;
   border-color: #1E8F7F;
}
.what-we-do__service-link:hover .what-we-do__service-icon-wrapper .what-we-do__icon-black {
   opacity: 0;
}
.what-we-do__service-link:hover .what-we-do__service-icon-wrapper .what-we-do__icon-white {
   opacity: 1;
}
.what-we-do__service-item:last-child {
   border-bottom: none;
}
.what-we-do__service-col {
   width: 50%;
   display: flex;
   align-items: center;
   height: 100%;
   min-width: 0;
}
.what-we-do__service-col--left {
   justify-content: flex-start;
   gap: 1.875vw;
}
.what-we-do__service-col--right {
   justify-content: space-between;
   gap: 1.25vw;
   min-width: 0;
}
.what-we-do__service-icon-star {
   width: 0.7291666666666666vw;
   height: 0.7291666666666666vw;
   flex: 0 0 auto;
}
@media (max-width: 1024px) {
   .what-we-do__service-icon-star {
      width: 14.48px;
      height: 14px;
   }
}
.what-we-do__service-title {
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-size: 1.46vw;
   line-height: 1;
   letter-spacing: -0.03em;
   text-transform: uppercase;
   color: #2E2E2E;
   margin: 0;
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
}
.what-we-do__service-description {
   max-width: 13.4375vw;
   width: auto;
   flex: none;
   font-family: 'Inter', sans-serif;
   font-weight: 600;
   font-size: 1.0417vw;
   line-height: 1.4;
   letter-spacing: -0.04em;
   color: #2E2E2E;
   margin: 0;
   opacity: 0.7;
   white-space: normal;
   overflow: visible;
   display: block;
   overflow-wrap: break-word;
}
.what-we-do__service-icon-wrapper {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   border: 1px solid #B4B4B4;
   border-radius: 8px;
   flex: 0 0 auto;
   text-decoration: none;
   position: relative;
   transition: background-color 0.2s ease, border-color 0.2s ease;
}
.what-we-do__icon-black,
.what-we-do__icon-white {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 1.25vw;
   height: 1.25vw;
   display: block;
   pointer-events: none;
   transition: opacity 0.2s ease;
}
.what-we-do__icon-white {
   opacity: 0;
}
.what-we-do__service-icon-wrapper:hover {
   background-color: #1E8F7F;
   border-color: #1E8F7F;
}
.what-we-do__service-icon-wrapper:hover .what-we-do__icon-black {
   opacity: 0;
}
.what-we-do__service-icon-wrapper:hover .what-we-do__icon-white {
   opacity: 1;
}
@media (max-width: 1024px) {
   .what-we-do__columns {
      display: flex;
      flex-direction: column;
      gap: 64px;
   }
   .what-we-do__col {
      display: contents;
   }
   .what-we-do__title {
      /*order: 1;*/
      font-size: 64px;
   }
   .what-we-do__services {
      /*order: 2;*/
      margin: 0;
      padding: 0;
   }
   .what-we-do__card {
      order: 3;
      border-radius: 16px;
      margin-top: 0;
   }
   .what-we-do__card-inner {
      flex-direction: row;
      align-items: center;
      text-align: left;
      padding: 4.166vw;
   }
   .what-we-do__card-image {
      width: 140px;
      height: 140px;
   }
   .what-we-do__card-title {
      font-size: 24px;
   }
   .what-we-do__card-description {
      font-size: 16px;
      padding-top: 20px;
      max-width: 170px;
      opacity: 50%;
   }
   .what-we-do__button {
      margin: 0 32px 32px;
      padding: 8px 8px 8px 16px;
      height: 56px;
      font-size: 16px;
      box-sizing: border-box;
      border-radius: 12px;
   }
   .what-we-do__button-text {
      left: 16px;
   }
   .what-we-do__button-icon {
      width: 42px;
      height: 42px;
      border-radius: 8px;
      right: 8px;
   }
   .what-we-do__service-item {
      display: block;
      align-items: center;
      height: 112px;
      border-bottom: 1px solid #B4B4B4;
   }
   .what-we-do__service-item:last-child {
      border-bottom: none;
   }
   .what-we-do__service-description {
      display: none;
   }
   .what-we-do__service-col--left {
      display: flex;
      align-items: center;
      gap: 24px;
      flex: 1;
      padding-right: 24px;
   }
   .what-we-do__service-col--right {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      width: auto;
      min-width: auto;
      gap: 0;
      padding: 0;
      margin: 0;
   }
   .what-we-do__service-title {
      font-size: 24px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      margin: 0;
   }
   .what-we-do__service-icon-wrapper {
      width: 42px;
      height: 42px;
      border-radius: 8px;
   }
   .what-we-do__icon-black,
   .what-we-do__icon-white {
      width: 20px;
      height: 20px;
   }

   .what-we-do__button,
   .what-we-do__button-text,
   .what-we-do__button-icon,
   .what-we-do__button-icon--right,
   .what-we-do__button-icon--left {
      transition: none !important;
   }

   .what-we-do__button:hover {
      background-color: #1E8F7F;
   }

   .what-we-do__button:hover .what-we-do__button-text {
      left: 16px !important;
      transform: none !important;
      top: auto;
   }

   .what-we-do__button:hover .what-we-do__button-icon--right {
      width: 42px !important;
      height: 42px !important;
      opacity: 1 !important;
      transform: none !important;
      top: auto;
   }

   .what-we-do__button:hover .what-we-do__button-icon--left {
      width: 0 !important;
      height: 0 !important;
      opacity: 0 !important;
      transform: none !important;
   }
}
@media (max-width: 767px) {
   .what-we-do__service-item {
      height: 94px;
   }
   .what-we-do__service-title {
      font-size: 18px;
      white-space: normal;
   }
   .what-we-do__card-inner {
      padding: 24px;
   }
   .what-we-do__columns {
      gap: 16px;
   }
   .what-we-do__title {
      font-size: 48px;
      margin-top: 0;
   }
   .what-we-do__card-text {
      gap: 0;
      padding-left: 16px;
   }
}
@media (max-width: 480px) {
   .what-we-do__card-image {
      width: 124px;
      height: 124px;
   }
   .what-we-do__card-title {
      font-size: 18px;
   }
   .what-we-do__card-description {
      font-size: 14px;
   }
   .what-we-do__button {
      width: calc(100% - 48px);
      margin: 0 24px 24px;
   }
}

.what-we-do__columns {
   gap: 5vw;
   margin-top: 5vw;
   margin-bottom: 5vw;
}
.what-we-do__col--left {
   flex: 0 1 25.573vw;
   min-width: 16.667vw;
}
.what-we-do .tag,
.what-we-do__tag {
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.833vw;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #ffffff;
   background-color: #1E8F7F;
   padding: 0.104vw 0.208vw;
   border-radius: 4px;
   display: inline-block;
   width: 5.729vw;
   height: 1.042vw;
   line-height: 1.1;
   box-sizing: border-box;
}
.what-we-do__title {
   font-size: 6.667vw;
   margin: 1.25vw 0 0;
   width: 25.313vw;
}
.what-we-do__card {
   border-radius: 16px;
   margin-top: 1.25vw;
}
.what-we-do__card-inner {
   padding: 1.667vw 1.667vw 1.25vw 1.667vw;
   gap: 1.25vw;
}
.what-we-do__card-image {
   width: 8.75vw;
   height: 8.75vw;
}
.what-we-do__card-text {
   gap: 0.417vw;
}
.what-we-do__card-title {
   font-size: 1.458vw;
}
.what-we-do__card-description {
   font-size: 1.042vw;
   padding-top: 1.458vw;
}
.what-we-do__button {
   width: 22.24vw;
   height: 3.229vw;
   margin: 0 1.667vw 1.667vw 1.667vw;
   padding: 0 3.229vw 0 3.229vw;
   font-size: 0.833vw;
   border-radius: 12px;
}
.what-we-do__button-text {
   left: 0.885vw;
}
.what-we-do__button-icon {
   width: 2.396vw;
   height: 2.396vw;
   border-radius: 8px;
}
.what-we-do__button-icon img {
   width: 1.25vw;
   height: 1.25vw;
}
.what-we-do__button-icon--right {
   right: 0.521vw;
}
.what-we-do__button-icon--left {
   left: 0.521vw;
}
.what-we-do__button:hover .what-we-do__button-icon--left {
   width: 2.396vw;
   height: 2.396vw;
}
.what-we-do__service-item {
   height: 7.083vw;
}
.what-we-do__service-icon-star {
   width: 0.729vw;
   height: 0.729vw;
}
.what-we-do__service-title {
   font-size: 1.46vw;
}
.what-we-do__service-description {
   max-width: 13.438vw;
   font-size: 1.042vw;
}
.what-we-do__service-icon-wrapper {
   width: 2.396vw;
   height: 2.396vw;
}
.what-we-do__icon-black,
.what-we-do__icon-white {
   width: 1.25vw;
   height: 1.25vw;
}

@media (min-width: 1025px) and (max-width: 1300px) {
   .what-we-do__columns {
      gap: 3.333vw;
   }
   .what-we-do__col--left {
      flex: 0 1 19.792vw;
      min-width: 16.667vw;
   }
   .what-we-do__title {
      font-size: 5.208vw;
      width: auto;
      line-height: 0.88;
   }
   .what-we-do .tag,
   .what-we-do__tag {
      font-size: 0.781vw;
      width: auto;
      padding: 0.104vw 0.313vw;
   }
   .what-we-do__card-inner {
      padding: 1.25vw;
      gap: 1.042vw;
   }
   .what-we-do__card-image {
      width: 7.292vw;
      height: 7.292vw;
   }
   .what-we-do__card-title {
      font-size: 1.354vw;
   }
   .what-we-do__card-description {
      font-size: 0.938vw;
      padding-top: 1.25vw;
   }
   .what-we-do__button {
      width: 17.188vw;
      height: 3.021vw;
      margin: 0 1.25vw 1.25vw 1.25vw;
      padding: 0 2.917vw 0 2.917vw;
      font-size: 0.781vw;
   }
   .what-we-do__button-text {
      left: 0.833vw;
   }
   .what-we-do__button-icon {
      width: 2.292vw;
      height: 2.292vw;
   }
}

@media (max-width: 1024px) {
   .what-we-do__columns {
      flex-direction: column;
      gap: 0;
      margin-top: 64px;
      margin-bottom: 64px;
   }
   .what-we-do__col {
      display: contents;
   }
   .what-we-do .tag,
   .what-we-do__tag {
      font-size: 16px;
      padding: 2px 4px;
      width: 110px;
      height: 20px;
      line-height: 1;
   }
   .what-we-do__title {
      font-size: 64px;
      margin: 24px 0 16px 0;
      width: auto;
      line-height: 0.9;
   }
   .what-we-do__card {
      order: 3;
      margin-top: 24px;
   }
   .what-we-do__card-inner {
      flex-direction: row;
      align-items: center;
      text-align: left;
      padding: 32px;
      gap: 16px;
   }
   .what-we-do__card-image {
      width: 84px;
      height: 84px;
   }
   .what-we-do__card-text {
      gap: 16px;
      padding-left: 0;
   }
   .what-we-do__card-title {
      font-size: 24px;
   }
   .what-we-do__card-description {
      font-size: 16px;
      padding-top: 0;
      max-width: 170px;
      opacity: 0.7;
   }
   .what-we-do__button {
      width: calc(100% - 64px);
      height: 56px;
      margin: 0 32px 32px;
      padding: 0 48px 0 48px;
      font-size: 16px;
      border-radius: 12px;
   }
   .what-we-do__button-text {
      left: 16px;
      top: 50%;
      transform: translateY(-50%);
   }
   .what-we-do__button-icon {
      top: 50%;
      transform: translateY(-50%);
      width: 42px;
      height: 42px;
   }
   .what-we-do__button-icon img {
      width: 24px;
      height: 24px;
   }
   .what-we-do__button-icon--right {
      right: 10px;
   }
   .what-we-do__button-icon--left {
      left: 10px;
   }
   .what-we-do__button:hover .what-we-do__button-icon--left {
      width: 46px;
      height: 46px;
   }
   .what-we-do__service-item {
      height: 112px;
      padding: 0 0 0 24px;
   }
   .what-we-do__service-description {
      display: none;
   }
   .what-we-do__service-col--left {
      gap: 24px;
      flex: 1;
      padding-right: 24px;
   }
   .what-we-do__service-col--right {
      justify-content: flex-end;
      width: auto;
      min-width: auto;
      gap: 0;
      padding: 0;
      margin: 0;
   }
   .what-we-do__service-icon-star {
      width: 14.48px;
      height: 14px;
   }
   .what-we-do__service-title {
      font-size: 24px;
      white-space: nowrap;
   }
   .what-we-do__service-icon-wrapper {
      width: 42px;
      height: 42px;
   }
   .what-we-do__icon-black,
   .what-we-do__icon-white {
      width: 20px;
      height: 20px;
   }
}

@media (max-width: 767px) {
   .what-we-do .tag,
   .what-we-do__tag {
      font-size: 14px;
   }
   .what-we-do__title {
      font-size: 48px;
      margin: 0;
   }
   .what-we-do__card-inner {
      padding: 24px;
   }
   .what-we-do__card-image {
      width: 124px;
      height: 124px;
   }
   .what-we-do__card-title {
      font-size: 18px;
   }
   .what-we-do__card-description {
      font-size: 14px;
   }
   .what-we-do__button {
      width: calc(100% - 48px);
      margin: 0 24px 24px;
   }
   .what-we-do__service-item {
      height: 94px;
      padding: 0;
   }
   .what-we-do__service-title {
      font-size: 18px;
      white-space: normal;
   }
   .what-we-do__columns {
      gap: 16px;
   }
   .what-we-do__card-text {
      gap: 30px;
   }
}

@media (max-width: 1024px) {
   .what-we-do__button,
   .what-we-do__button *,
   .what-we-do__button::before,
   .what-we-do__button::after {
      transition: none !important;
   }
   .what-we-do__button .what-we-do__button-text,
   .what-we-do__button:hover .what-we-do__button-text,
   .what-we-do__button:active .what-we-do__button-text {
      left: 16px !important;
      transform: translateY(-50%) !important;
   }
   .what-we-do__button .what-we-do__button-icon--right,
   .what-we-do__button:hover .what-we-do__button-icon--right,
   .what-we-do__button:active .what-we-do__button-icon--right {
      width: 42px !important;
      height: 42px !important;
      opacity: 1 !important;
      right: 10px !important;
   }
   .what-we-do__button .what-we-do__button-icon--left,
   .what-we-do__button:hover .what-we-do__button-icon--left,
   .what-we-do__button:active .what-we-do__button-icon--left {
      width: 0 !important;
      height: 0 !important;
      opacity: 0 !important;
      left: 10px !important;
   }
   .what-we-do__button:hover,
   .what-we-do__button:active {
      background-color: #1E8F7F !important;
   }
}
.recent-projects-marquee {
   width: 100%;
   background-color: #1E8F7F;
   padding: 1.25vw 0;
   overflow: hidden;
   position: relative;
   white-space: nowrap;
}
.marquee-wrapper {
   display: flex;
   width: max-content;
   animation: marquee 20s linear infinite;
}
.marquee-group {
   display: flex;
   align-items: center;
   gap: 1.6666666666666667vw;
   white-space: nowrap;
}
.marquee-item {
   display: inline-flex;
   align-items: center;
   gap: 1.6666666666666667vw;
   flex-shrink: 0;
}
.marquee-item:last-child {
   padding-right: 1.6666666666666667vw;
}
.marquee-item span {
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-style: normal;
   font-size: 6.666666666666667vw;
   line-height: 0.85;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #FFFFFF;
   margin: 0;
   padding: 0;
}
.marquee-item img {
   width: 5.104166666666667vw;
   height: 4.947916666666666vw;
   display: block;
   flex-shrink: 0;
}
@media (min-width: 768px) and (max-width: 1025px) {
   .marquee-item {
      gap: 20px;
   }
   .marquee-item:last-child {
      padding-right: 20px;
   }
   .marquee-item span {
      font-size: 64px;
      letter-spacing: -0.04em;
   }
   .marquee-item img {
      width: 58px;
      height: 57px;
   }
   .marquee-group {
      gap: 24px;
   }
}
@media (max-width: 767px) {
   .marquee-item {
      gap: 15px;
   }
   .marquee-item:last-child {
      padding-right: 15px;
   }
   .marquee-item span {
      font-size: 48px;
      letter-spacing: -0.04em;
   }
   .marquee-item img {
      width: 36px;
      height: 35px;
   }
   .marquee-group {
      gap: 16px;
   }
}
@keyframes marquee {
   0% {
      transform: translateX(0);
   }
   100% {
      transform: translateX(-50%);
   }
}
.blocks-section {
   padding-top: clamp(64px, 5vw, 96px);
}
.blocks-row {
   display: flex;
   gap: 1.40625vw;
   justify-content: space-between;
   flex-wrap: wrap;
}
.block {
   flex: 1 1 calc(33.333% - 18px);
   min-width: 0;
   text-decoration: none;
}
.block__image-wrapper {
   position: relative;
   display: block;
   border-radius: 0.8333333333333334vw;
   overflow: hidden;
   margin-bottom: 1.25vw;
}
.block__image {
   width: 100%;
   height: 26.5625vw;
   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.20833333333333334vw;
   margin-bottom: 0.8854166666666666vw;
}
.block__text {
   margin: 0;
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.8333333333333334vw;
   line-height: 0.98;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #2E2E2E;
   opacity: 0.5;
}
@media (max-width: 1024px) {
   .block__text {
      font-size: 16px;
   }
   .block__text-line {
      margin-bottom: 16px;
   }
}
@media (max-width: 767px) {
   .block__text {
      font-size: 14px;
   }
   .block__text-line {
      margin-bottom: 8px;
   }
}
.block__icon {
   width: 1.09375vw;
   height: 0.8333333333333334vw;
   flex-shrink: 0;
   opacity: 1;
   display: block;
}
@media (max-width: 1025px) {
   .block__icon {
      position: relative;
      left: 4px;
      width: 21px;
      height: 16px;
   }
}
.block__title {
   margin: 0;
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-size: 1.46vw;
   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;
      border-radius: 0.8333333333333334vw;
      opacity: 0;
      pointer-events: none;
      transform: translateY(100%);
      transition: transform 0.4s ease, opacity 0.4s ease;
      z-index: 2;
      display: flex;
      flex-direction: column;
   }
   .block__image-wrapper:hover .block__hover {
      opacity: 1;
      transform: translateY(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.8333333333333334vw clamp(1.25vw, 2vw, 1.6666666666666667vw);
      box-sizing: border-box;
   }
   .block__hover-details {
      font-family: 'Inter', sans-serif;
      font-weight: 700;
      font-size: 0.8333333333333334vw;
      line-height: 0.98;
      letter-spacing: -0.05em;
      text-transform: uppercase;
      color: #EFEFEF;
      margin: 0;
   }
   .block__hover-star {
      width: 0.5729166666666666vw;
      height: 0.5729166666666666vw;
      flex-shrink: 0;
      display: block;
   }
   .block__hover-content {
      padding: clamp(1.0416666666666665vw, 1.6vw, 1.6666666666666667vw);
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: clamp(1.0416666666666665vw, 1.6vw, 1.6666666666666667vw);
   }
   .block__hover-group-title {
      font-family: 'Inter', sans-serif;
      font-weight: 700;
      font-size: 0.8333333333333334vw;
      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.4166666666666667vw;
      margin-top: clamp(0.8333333333333334vw, 1.2vw, 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.8333333333333334vw;
      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.8333333333333334vw;
      line-height: 0.98;
      letter-spacing: -0.05em;
      text-transform: uppercase;
      color: #2E2E2E;
      margin-top: clamp(0.8333333333333334vw, 1.2vw, 1.25vw);
   }
   .block__hover-separator {
      width: 100%;
      height: 0.052083333333333336vw;
      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.84375vw;
      height: 3.229166666666667vw;
      background: #2E2E2E;
      color: #FFF;
      font-family: "Inter", sans-serif;
      font-weight: 700;
      font-size: 0.8333333333333334vw;
      line-height: 0.98;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      text-decoration: none;
      border-radius: 0.625vw;
      gap: 0.8333333333333334vw;
      position: relative;
      overflow: hidden;
      padding: 0.4166666666666667vw 0.4166666666666667vw 0.4166666666666667vw 0;
   }
   .block-hover-button:hover {
      background: #1E8F7F;
   }
   .block-hover-button__icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 2.3958333333333335vw;
      height: 2.3958333333333335vw;
      background: #EFEFEF;
      border-radius: 0.4166666666666667vw;
      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.4166666666666667vw;
      top: 50%;
      transform: translateY(-50%) translateX(-8px);
      opacity: 0;
      width: 0;
      height: 0;
      background: #EFEFEF;
      border-radius: 0.4166666666666667vw;
      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.3958333333333335vw;
      height: 2.3958333333333335vw;
      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(6px);
   }
}
@media (max-width: 1024px) {
   .blocks-section {
      padding-top: 48px;
   }
   .blocks-row:not([data-projects-slider]) {
      display: none !important;
   }
   .blocks-row[data-projects-slider] {
      position: relative;
      overflow: hidden;
      padding: 0;
      margin: 0;
      width: 100%;
   }
   .blocks-row[data-projects-slider] .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-slider-dots {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 8px;
      margin-top: 24px;
      padding: 0;
      width: 100%;
      box-sizing: border-box;
   }
}
@media (max-width: 767px) {
   .block__image {
      height: 312px;
   }
}
@media (max-width: 480px) {
   .projects-slider-dots {
      padding: 0 16px;
   }
   .block__title {
      font-size: 18px;
   }
   .block__text {
      font-size: 14px;
   }
}
.block__text .separator {
   display: inline-block;
   margin: 0 8px;
   color: #B4B4B4;
}
@media (min-width: 1025px) {
   .blocks-row[data-projects-slider] {
      display: none !important;
   }
}
.projects-cta {
   margin-top: 3.3333333333333335vw;
   display: flex;
   justify-content: center;
   width: 100%;
}
@media (max-width: 1024px) {
   .projects-cta {
      margin-top: 48px;
      margin-bottom: 48px;
   }
}
.projects-button {
   display: flex;
   align-items: center;
   justify-content: center;
   min-width: 12.03125vw;
   height: 3.229166666666667vw;
   background: transparent;
   color: #2E2E2E;
   font-family: "Inter", sans-serif;
   font-weight: 700;
   font-size: 0.8333333333333334vw;
   line-height: 0.98;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   text-decoration: none;
   border: 1px solid #B4B4B4;
   border-radius: 0.625vw;
   gap: 0.8333333333333334vw;
   position: relative;
   overflow: hidden;
   padding: .41666667vw .41666667vw .41666667vw .83333333vw;
   transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
   box-sizing: border-box;
}
.projects-button__icon {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   background: #1E8F7F;
   border-radius: 8px;
   transition: background-color 0.3s ease;
   overflow: hidden;
   position: relative;
}
.projects-button__icon img {
   width: 1.25vw;
   height: 1.25vw;
   display: block;
}
.projects-button__icon--right {
   opacity: 1;
   transform: translateX(0);
   transition: width 0.3s ease, height 0.3s ease, opacity 0.3s ease, transform 0.3s ease;
}
.projects-button__icon--left {
   position: absolute;
   left: 0.4166666666666667vw;
   top: 50%;
   transform: translateY(-50%) translateX(-8px);
   opacity: 0;
   width: 0;
   height: 0;
   background: #FFF;
   border-radius: 0.625vw;
   display: flex;
   align-items: center;
   justify-content: center;
   transition: width 0.3s ease, height 0.3s ease, opacity 0.3s ease, transform 0.3s ease;
}
.projects-button:hover {
   background-color: #1E8F7F;
   color: #FFF;
   border-color: #1E8F7F;
}
.projects-button:hover .projects-button__icon--right {
   width: 0;
   height: 0;
   opacity: 0;
   padding: 0;
   margin: 0;
}
.projects-button:hover .projects-button__icon--left {
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   opacity: 1;
   transform: translateY(-50%) translateX(0);
}
.projects-button__text {
   transition: transform 0.3s ease;
}
.projects-button:hover .projects-button__text {
   transform: translateX(30px);
}
@media (max-width: 1024px) {
   .projects-button {
      width: 100%;
      height: auto;
      max-width: 100%;
      justify-content: space-between;
      padding: 8px 8px 8px 16px;
      border-radius: 12px;
      font-size: 16px;
   }
   .projects-button__text {
      transform: none !important;
   }
   .projects-button:hover .projects-button__text {
      transform: none !important;
   }
   .projects-button__icon--right {
      width: 46px;
      height: 46px;
   }
   .projects-button__icon img {
      width: 24px;
      height: 24px;
   }

   .projects-button,
   .projects-button__text,
   .projects-button__icon,
   .projects-button__icon--right,
   .projects-button__icon--left {
      transition: none !important;
   }

   .projects-button:hover {
      background-color: transparent;
      color: #2E2E2E;
      border-color: #B4B4B4;
   }

   .projects-button:hover .projects-button__text {
      transform: none !important;
   }

   .projects-button:hover .projects-button__icon--right {
      width: 46px !important;
      height: 46px !important;
      opacity: 1 !important;
      transform: none !important;
   }

   .projects-button:hover .projects-button__icon--left {
      width: 0 !important;
      height: 0 !important;
      opacity: 0 !important;
      transform: none !important;
   }
}
@media (max-width: 480px) {
   .projects-button {
      height: 56px;
      font-size: 15px;
   }
   .projects-button__icon {
      width: 42px;
      height: 42px;
   }
   .projects-button__icon img {
      width: 22px;
      height: 22px;
   }
}
.projects-button:focus {
   outline: 0.10416666666666667vw solid #1E8F7F;
   outline-offset: 0.10416666666666667vw;
}
.efficiency {
   padding-top: 0;
   padding-bottom: 0;
}
@media (min-width: 1025px) {
   .efficiency__desktop {
      display: block;
   }
   .efficiency__mobile {
      display: none;
   }
   .efficiency__columns {
      display: flex;
      gap: 5vw;
      margin-top: 5vw;
      margin-bottom: 5vw;
      padding-top: 5vw;
      padding-bottom: 5vw;
      min-width: 0;
      border-top: 1px solid #B4B4B4;
      border-bottom: 1px solid #B4B4B4;
   }
   .efficiency__col--left {
      flex: 0 1 25.572916666666668vw;
      min-width: 16.666666666666664vw;
   }
   .efficiency__col--right {
      flex: 1;
      min-width: 0;
   }
   .efficiency__title {
      font-family: 'Roboto Condensed', sans-serif;
      font-weight: 900;
      font-size: 6.666666666666667vw;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      color: #2E2E2E;
      margin: 1.25vw 0 0;
      line-height: 0.85;
      white-space: normal;
   }
   .efficiency__image-wrapper {
      margin-top: 1.25vw;
   }
   .efficiency__image {
      width: 8.75vw;
      height: 8.75vw;
      object-fit: cover;
      display: block;
      border-radius: 0.8333333333333334vw;
   }
   .efficiency__benefits-grid {
      display: flex;
      flex-direction: column;
      gap: 1.67vw;
   }
   .efficiency__benefit-row {
      display: flex;
      justify-content: space-between;
      gap: 1.667vw;
   }
   .efficiency__benefit-row.no-border {
      border-bottom: none;
      padding-bottom: 0;
      margin-bottom: 0;
   }
   .efficiency__benefit-item {
      padding: 1.67vw;
      display: flex;
      align-items: flex-start;
      flex: 1;
      box-sizing: border-box;
      border-top: 1px solid #B4B4B4;
   }
   .efficiency__benefit-row:first-child .efficiency__benefit-item {
      border: none;
   }
   .efficiency__benefit-icon-block {
      display: block;
      position: relative;
      width: 1.25vw;
      height: 1.25vw;
   }
   .efficiency__benefit-icon {
      position: relative;
      width: 0.781vw;
      height: 0.7291666666666666vw;
      flex: 0 0 auto;
      top: 4px;
   }
   .efficiency__benefit-content {
      display: block;
      position: relative;
      padding-left: 1.67vw;
   }
   .efficiency__benefit-title {
      font-family: 'Roboto Condensed', sans-serif;
      font-weight: 900;
      font-size: 1.46vw;
      line-height: 1;
      letter-spacing: -0.03em;
      text-transform: uppercase;
      color: #2E2E2E;
      margin: 0 0 1.25vw;
   }
   .efficiency__benefit-description {
      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) {
   .efficiency__desktop {
      display: none !important;
   }
   .efficiency__mobile {
      display: block;
   }
   .efficiency__mobile {
      padding-top: 64px;
      padding-bottom: 64px;
      border-top: 1px solid #B4B4B4;
      border-bottom: 1px solid #B4B4B4;
   }
   .efficiency__mobile-row {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 24px;
      margin-bottom: 32px;
   }
   .efficiency__text {
      flex: 1;
      min-width: 0;
   }
   .efficiency__title {
      font-family: 'Roboto Condensed', sans-serif;
      font-weight: 900;
      font-size: 64px;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      color: #2E2E2E;
      margin: 16px 0 0;
      line-height: 0.9;
      white-space: normal;
      max-width: 235px;
   }
   .efficiency__image-wrapper {
      width: 168px;
      height: 168px;
      border-radius: 16px;
      overflow: hidden;
      flex-shrink: 0;
   }
   .efficiency__image-wrapper img {
      width: 150px;
      height: 150px;
      object-fit: cover;
      display: block;
   }
   .efficiency-slider-mobile {
      width: 100%;
      overflow: hidden;
   }
   .efficiency-slides {
      display: flex;
      flex-wrap: nowrap;
      width: 100%;
      transition: transform 0.4s ease-in-out;
   }
   .efficiency-slide {
      flex: 0 0 100%;
      box-sizing: border-box;
      padding-bottom: 32px;
   }
   .efficiency-slide .efficiency__benefit-item {
      display: flex;
      align-items: flex-start;
      gap: 24px;
      padding-top: 32px;
      padding-bottom: 32px;
      margin-top: 0;
      border-top: 1px solid #B4B4B4;
   }
   .efficiency-slide .efficiency__benefit-item:first-child {
      border-top: none;
      padding-top: 0;
   }
   .efficiency__benefit-title {
      font-size: 24px;
      margin: 0 0 16px 0;
      white-space: normal;
      max-width: none;
   }
   .efficiency__benefit-description {
      font-size: 16px;
      max-width: 100%;
      opacity: 0.7;
      margin: 0;
   }
   .efficiency-slider-dots {
      display: flex;
      justify-content: center;
      gap: 8px;
      margin-top: 32px;
   }
}

@media (max-width: 767px) {
   .efficiency-slider-dots {
      margin-top: 0;
   }
}
@media (max-width: 480px) {
   .efficiency__title {
      font-size: 48px;
   }
   .efficiency__image-wrapper {
      width: 116px;
      height: 116px;
   }
   .efficiency__image-wrapper img {
      width: 116px;
      height: 116px;
   }
   .efficiency__benefit-title {
      font-size: 18px;
   }
   .efficiency__benefit-description {
      font-size: 14px;
   }
}
.about {
   padding-top: 0;
   padding-bottom: 0;
}
.about__title {
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-size: 6.666666666666667vw;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #2E2E2E;
   margin: 1.25vw 0 0;
   line-height: 0.85;
   white-space: normal;
}
.about__description-wrapper {
   margin-top: 2.5vw;
}
@media (max-width: 1024px) {
   .about__description-wrapper {
      margin-top: 0;
   }
}
.about_description {
   font-family: 'Inter', sans-serif;
   font-weight: 600;
   font-style: normal;
   font-size: 1.0416666666666665vw;
   line-height: 1.4;
   letter-spacing: -0.05rem;
   opacity: 0.7;
   margin: 0;
   color: #2E2E2E;
}
.about__button {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   height: 2.3958333333333335vw;
   border-radius: 0.4166666666666667vw;
   text-decoration: none;
   margin-top: 10.15625vw;
}
.about__button-icon-wrapper {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   border-radius: 0.4166666666666667vw;
   border: 1px solid #B4B4B4;
   padding: 0.78125vw;
}
.about__button-icon {
   width: 1.25vw;
   height: 1.25vw;
   display: block;
}
.about__button-icon--black {
   display: block;
}
.about__button-icon--white {
   display: none;
}
.about__button-text {
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.8333vw;
   line-height: 1.2;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #2E2E2E;
   margin-left: 1.041666666666667vw;
}
@media (max-width: 1024px) {
   .about__button-text {
      font-size: 16px;
      margin-left: 16px;
   }
}
.about__button:hover .about__button-icon-wrapper {
   background-color: #2E2E2E;
   border-color: #2E2E2E;
}
.about__button:hover .about__button-icon--black {
   display: none;
}
.about__button:hover .about__button-icon--white {
   display: block;
}
@media (min-width: 1025px) {
   .about__desktop {
      display: block;
   }
   .about__columns {
      display: flex;
      gap: 5vw;
      margin-top: 5vw;
      padding-bottom: 5vw;
      min-width: 0;
      border-bottom: 1px solid #B4B4B4;
   }
   .about__col--left {
      display: block;
      position: relative;
      flex: 0 1 25.572916666666668vw;
      min-width: 16.666666666666664vw;
   }
   .about__col--right {
      flex: 1;
      min-width: 0;
   }
}
@media (max-width: 1024px) {
   .about__columns {
      margin-top: 66px;
      padding-bottom: 66px;
      border-bottom: 1px solid #B4B4B4;
   }
   .about__title {
      font-size: 64px;
      margin: 24px 0 0;
   }
   .about_description {
      font-size: 16px;
      padding-top: 16px;
   }
   .about__button {
      margin-top: 64px;
      height: 46px;
      border-radius: 8px;
   }
   .about__button-icon-wrapper {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 46px;
      height: 46px;
      border-radius: 8px;
      border: 1px solid #B4B4B4;
      padding: 15px;
   }
   .about__button-icon {
      width: 24px;
      height: 24px;
      display: block;
   }
   .about__button-icon--white {
      display: none;
   }
}
@media (max-width: 767px) {
   .about__columns {
      margin-top: 50px;
      padding-bottom: 50px;
      border-bottom: 1px solid #B4B4B4;
   }
   .about__title {
      font-size: 48px;
      margin: 16px 0 0;
   }
   .about_description {
      font-size: 14px;
      padding-top: 16px;
   }
}
.about__col--right {
   display: flex;
   flex-direction: column;
   width: 100%;
}
.about__team {
   display: flex;
   gap: 1.6666666666666667vw;
   width: 100%;
}
.about__team-member {
   flex: 1 1 0;
   min-width: 0;
   display: flex;
   flex-direction: column;
}
.about__team-photo {
   width: 100%;
   height: auto;
   border-radius: 16px;
   object-fit: cover;
}
.about__team-info {
   margin-top: 1.25vw;
   display: flex;
   flex-direction: column;
}
@media (max-width: 1024px) {
   .about__team-info {
      margin-top: 24px;
   }
}
.about__team-role {
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.8333333333333334vw;
   line-height: 0.98;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #2E2E2E;
   opacity: 0.5;
}
.about__team-name {
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-size: 1.46vw;
   line-height: 1;
   letter-spacing: -0.03em;
   text-transform: uppercase;
   color: #2E2E2E;
   margin-top: 1.25vw;
}
.about__team-link {
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.8333333333333334vw;
   line-height: 0.98;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #1E8F7F;
   text-decoration: none;
   display: inline-block;
   position: relative;
   margin-top: 2.083333333333333vw;
   padding: 0;
   width: auto;
   align-self: flex-start;
}
.about__team-link:hover {
   opacity: 70%;
}
@media (max-width: 1024px) {
   .about__team-link {
      font-size: 16px;
      margin-top: 40px;
   }
}
@media (min-width: 768px) and (max-width: 1024px) {
   .about__team {
      gap: 48px;
      flex-wrap: wrap;
      margin-top: 48px;
   }
   .about__team-member {
      flex: 1 1 calc(50% - 12px);
      min-width: 100%;
   }
   .about__team-photo {
      aspect-ratio: 554.5 / 510;
      max-height: 642px;
   }
   .about__team-name {
      margin-top: 16px;
      font-size: 24px;
   }
   .about__team-role {
      font-size: 16px;
   }
}
@media (max-width: 767px) {
   .about__team {
      flex-direction: column;
      gap: 45px;
      margin-top: 48px;
   }
   .about__team-member {
      flex: none;
      width: 100%;
   }
   .about__team-photo {
      aspect-ratio: 554.5 / 510;
      max-height: 312px;
   }
   .about__team-name {
      margin-top: 12px;
      font-size: 18px;
   }
   .about__team-link {
      margin-top: 32px;
      font-size: 14px;
   }
   .about__team-role {
      font-size: 14px;
   }
}
.reviews {
   padding-top: 5vw;
   padding-bottom: 5vw;
}
.mobile-only {
   display: none;
}
@media (min-width: 1025px) {
   .desktop-only {
      display: block;
   }
   .mobile-only {
      display: none;
   }
   .reviews-content {
      display: flex;
      gap: 5vw;
      align-items: flex-start;
      min-width: 0;
   }
   .reviews-left-column {
      flex: 0 1 25.572916666666668vw;
      min-width: 16.666666666666664vw;
      display: flex;
      flex-direction: column;
   }
   .reviews-slider-container {
      flex: 1;
      min-width: 0;
      position: relative;
      overflow: visible;
   }
   .reviews-slider {
      overflow: hidden;
      width: 100%;
      position: relative;
   }
   .reviews-slides {
      display: flex;
      flex-wrap: nowrap;
      width: 100%;
      transition: transform 0.4s ease-in-out;
   }
   .review-slide {
      flex: 0 0 100%;
      display: flex;
      gap: 1.6666666666666667vw;
      width: 100%;
      box-sizing: border-box;
      padding: 0 0.052083333333333336vw;
   }
   .review-card {
      flex: 1;
      min-width: 0;
      padding: 1.6666666666666667vw;
      background: #FFFFFF;
      border: 0.052083333333333336vw solid #B4B4B4;
      border-radius: 16px;
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      height: 15.989583333333332vw;
   }
   .review-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 0.4166666666666667vw;
      margin-bottom: 1.6666666666666667vw;
   }
   .review-stars {
      display: flex;
      gap: 0.20833333333333334vw;
   }
   .review-rating {
      font-family: 'Inter', sans-serif;
      font-weight: 700;
      font-size: 1.0416666666666665vw;
      line-height: 1;
      letter-spacing: -0.06em;
      text-transform: uppercase;
      color: #1E8F7F;
   }
   .review-main {
      display: flex;
      flex-direction: column;
      flex: 1;
      justify-content: space-between;
   }
   .review-text {
      font-family: 'Inter', sans-serif;
      font-weight: 600;
      font-style: italic;
      font-size: 1.25vw;
      line-height: 1.2;
      letter-spacing: -0.05em;
      color: #2E2E2E;
      margin: 0;
   }
   .review-divider {
      height: 0.052083333333333336vw;
      background-color: #B4B4B4;
      width: 100%;
      margin: 0 auto;
      align-self: stretch;
   }
   .review-author {
      display: flex;
      align-items: center;
      gap: 0.8333333333333334vw;
      margin: 0;
   }
   .review-author-avatar img {
      width: 2.5vw;
      height: 2.5vw;
      border-radius: 0.4166666666666667vw;
      object-fit: cover;
      display: block;
   }
   .review-author-info {
      display: flex;
      flex-direction: column;
      gap: 0.20833333333333334vw;
   }
   .review-author-name {
      font-family: 'Inter', sans-serif;
      font-weight: 700;
      font-size: 0.8333333333333334vw;
      line-height: 0.98;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      color: #2E2E2E;
      margin: 0;
   }
   .review-author-company {
      font-family: 'Inter', sans-serif;
      font-weight: 400;
      font-size: 0.8333333333333334vw;
      line-height: 1.4;
      letter-spacing: -0.04em;
      color: #2E2E2E;
      opacity: 0.5;
      margin: 0;
   }
   .reviews-dots {
      display: flex;
      justify-content: flex-start;
      position: relative;
      gap: 0.4166666666666667vw;
      margin: 0;
   }
   .reviews-slider-controls {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 1.25vw;
      margin-top: 1.6666666666666667vw;
      width: 100%;
   }
   .reviews-nav-wrapper {
      display: flex;
      gap: 0.4166666666666667vw;
   }
   .reviews-nav {
      width: 2.3958333333333335vw;
      height: 2.3958333333333335vw;
      border-radius: 0.4166666666666667vw;
      background: #FFFFFF;
      border: 0.052083333333333336vw solid #B4B4B4;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: background-color 0.2s ease, border-color 0.2s ease;
   }
   .reviews-nav:hover {
      background: #2E2E2E;
      border-color: #2E2E2E;
   }
   .reviews-nav:hover img {
      filter: brightness(0) invert(1);
   }
   .reviews-nav img {
      width: 1.25vw;
      height: 1.25vw;
      display: block;
   }
   .reviews-slider-controls-left {
      width: 2.3958333333333335vw;
      height: 2.3958333333333335vw;
   }
}
@media (max-width: 1024px) {
   .reviews {
      padding-top: 66px;
      padding-bottom: 66px;
   }
   .desktop-only {
      display: none;
   }
   .mobile-only {
      display: block;
   }
   .reviews-content {
      display: flex;
      flex-direction: column;
      gap: 40px;
   }
   .reviews-slider-container {
      width: 100%;
   }
   .reviews-slider {
      overflow: hidden;
      width: 100%;
      position: relative;
   }
   .reviews-slides {
      display: flex;
      flex-wrap: nowrap;
      width: 100%;
      transition: transform 0.4s ease-in-out;
   }
   .review-slide {
      flex: 0 0 100%;
      display: block;
      width: 100%;
      box-sizing: border-box;
      padding: 0 2px;
   }
   .review-card {
      width: 100%;
      padding: 33px;
      background: #FFFFFF;
      border: 1px solid #B4B4B4;
      border-radius: 16px;
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
      height: auto;
   }
   .review-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      margin-bottom: 24px;
   }
   .review-stars {
      display: flex;
      gap: 4px;
   }
   .review-rating {
      font-family: 'Inter', sans-serif;
      font-weight: 700;
      font-size: 20px;
      line-height: 1;
      letter-spacing: -0.06em;
      text-transform: uppercase;
      color: #1E8F7F;
   }
   .review-main {
      display: flex;
      flex-direction: column;
      flex: 1;
      justify-content: space-between;
   }
   .review-text {
      font-family: 'Inter', sans-serif;
      font-weight: 600;
      font-style: italic;
      font-size: 24px;
      line-height: 1.3;
      letter-spacing: -0.05em;
      color: #2E2E2E;
      margin: 0;
   }
   .review-divider {
      height: 1px;
      background-color: #B4B4B4;
      width: 100%;
      margin: 0 auto;
      align-self: stretch;
      margin: 24px 0;
   }
   .review-author {
      display: flex;
      align-items: center;
      gap: 16px;
      margin: 0;
   }
   .review-author-avatar img {
      width: 48px;
      height: 48px;
      border-radius: 8px;
      object-fit: cover;
      display: block;
   }
   .review-author-info {
      display: flex;
      flex-direction: column;
      gap: 4px;
   }
   .review-author-name {
      font-family: 'Inter', sans-serif;
      font-weight: 700;
      font-size: 16px;
      line-height: 0.98;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      color: #2E2E2E;
      margin: 0;
   }
   .review-author-company {
      font-family: 'Inter', sans-serif;
      font-weight: 400;
      font-size: 16px;
      line-height: 1.4;
      letter-spacing: -0.04em;
      color: #2E2E2E;
      opacity: 0.5;
      margin: 0;
   }
   .reviews-slider-controls {
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 48px;
      width: 100%;
   }
   .reviews-dots {
      display: flex;
      justify-content: center;
      gap: 8px;
      margin: 0;
      width: 100%;
   }
   .reviews-nav-wrapper,
   .reviews-slider-controls-left {
      display: none;
   }
}
@media (max-width: 767px) {
   .reviews-content {
      gap: 32px;
   }
   .review-card {
      padding: 24px;
      height: 321px;
   }
   .review-author-avatar img {
      width: 35px;
      height: 35px;
   }
   .review-author-name {
      font-size: 14px;
   }
   .review-author-company {
      font-size: 14px;
   }
   .reviews-slider-controls {
      margin-top: 32px;
   }
}
.reviews-static {
   display: flex;
   flex-direction: column;
   gap: 1.25vw;
   margin: 1.25vw 0 0;
}
@media (max-width: 1024px) {
   .reviews-static {
      gap: 24px;
      margin: 24px 0 0;
   }
}
@media (max-width: 767px) {
   .reviews-static {
      margin: 0;
   }
}
.reviews-platform {
   display: flex;
   align-items: center;
   width: 100%;
   height: 6.223958333333333vw;
   padding: 1.9140625000000002vw 1.6666666666666667vw;
   background-color: #2E2E2E;
   border-radius: 0.8333333333333334vw;
   text-decoration: none;
   box-sizing: border-box;
   position: relative;
   overflow: visible;
}
.reviews-platform-arrow-wrapper {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 2.395833333333333vw;
   height: 2.395833333333333vw;
   border-radius: 0.4166666666666667vw;
   background-color: #FFFFFF;
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   transition: all 0.3s ease;
}
.reviews-platform-arrow-wrapper img {
   width: 1.25vw;
   height: 1.25vw;
   display: block;
}
.reviews-platform-arrow-wrapper--right {
   right: 2vw;
   opacity: 1;
   transform: translateY(-50%) scale(1) translateX(0);
}
.reviews-platform-arrow-wrapper--left {
   left: 1.25vw;
   opacity: 0;
   transform: translateY(-50%) scale(0) translateX(-20px);
   pointer-events: none;
}
.reviews-platform-logo {
   height: 1.25vw;
   display: flex;
   align-items: center;
   transition: transform 0.3s ease;
}
.reviews-platform-logo img {
   display: block;
   height: 1.25vw;
   width: auto;
}
.reviews-static > .reviews-platform:nth-of-type(1) .reviews-platform-logo img {
   width: 4.410416666666667vw;
}
.reviews-static > .reviews-platform:nth-of-type(2) .reviews-platform-logo img {
   width: 8.409375vw;
}
.reviews-platform-content {
   display: flex;
   align-items: center;
   margin-right: 4.06vw;
   margin-left: auto;
}
.reviews-platform-rating {
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.8333333333333334vw;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #FFFFFF;
   opacity: 0.7;
   white-space: nowrap;
   transition: transform 0.3s ease;
}
.reviews-platform:hover .reviews-platform-arrow-wrapper--right {
   opacity: 0;
   transform: translateY(-50%) scale(0) translateX(20px);
}
.reviews-platform:hover .reviews-platform-arrow-wrapper--left {
   opacity: 1;
   transform: translateY(-50%) scale(1) translateX(0);
}
.reviews-platform:hover .reviews-platform-logo,
.reviews-platform:hover .reviews-platform-rating {
   transform: translateX(60px);
}
@media (max-width: 1024px) {
   .reviews-platform {
      height: auto;
      padding: 33px;
      border-radius: 16px;
   }
   .reviews-platform-logo {
      height: 24px;
   }
   .reviews-platform-arrow {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 46px;
      height: 46px;
      border-radius: 8px;
      background-color: #FFFFFF;
      flex-shrink: 0;
   }
   .reviews-platform-logo img {
      height: 24px;
   }
   .reviews-static > .reviews-platform:nth-of-type(1) .reviews-platform-logo img {
      width: 84.68px;
   }
   .reviews-static > .reviews-platform:nth-of-type(2) .reviews-platform-logo img {
      width: 161.46px;
   }
   .reviews-platform-rating {
      font-size: 16px;
   }
   .reviews-platform-content {
      display: flex;
      align-items: center;
      gap: 32px;
      margin-left: auto;
      margin-right: 0;
   }

   .reviews-platform,
   .reviews-platform-arrow-wrapper,
   .reviews-platform-logo,
   .reviews-platform-rating {
      transition: none !important;
   }

   .reviews-platform:hover .reviews-platform-arrow-wrapper--right {
      opacity: 1 !important;
      transform: translateY(-50%) scale(1) translateX(0) !important;
   }

   .reviews-platform:hover .reviews-platform-arrow-wrapper--left {
      opacity: 0 !important;
      transform: translateY(-50%) scale(0) translateX(-20px) !important;
   }

   .reviews-platform:hover .reviews-platform-logo,
   .reviews-platform:hover .reviews-platform-rating {
      transform: none !important;
   }
}
@media (max-width: 767px) {
   .reviews-platform-rating {
      display: none;
   }
   .reviews-platform {
      padding: 24px;
   }
   .reviews-platform-logo img {
      width: auto!important;
   }
}

.about__button-icon--mobile {
   display: none !important;
}

.about__button-icon--desktop.about__button-icon--black {
   display: block;
}

.about__button-icon--desktop.about__button-icon--white {
   display: none;
}

.about__button:hover .about__button-icon--desktop.about__button-icon--black {
   display: none;
}

.about__button:hover .about__button-icon--desktop.about__button-icon--white {
   display: block;
}

@media (max-width: 767px) {
   .about__button-icon--desktop {
      display: none !important;
   }

   .about__button-icon--mobile {
      display: block !important;
   }

   .about__button:hover .about__button-icon--mobile {
      display: block !important;
   }

   .about__button:hover .about__button-icon-wrapper {
      background-color: transparent !important;
      border-color: #B4B4B4 !important;
   }

   .about__button:hover .about__button-text {
      transform: none !important;
   }
}

.articles {
   padding-top: 5vw;
   padding-bottom: 5vw;
}
.articles-row {
   display: flex;
   justify-content: space-between;
   gap: 1.4322916666666665vw;
   margin-bottom: 3.3333333333333335vw;
}
.article-card {
   flex: 1 1 calc(33.333% - 18.33px);
   height: 33.90625vw;
   display: flex;
   flex-direction: column;
   text-decoration: none;
}
.article-card__image-wrapper {
   display: block;
   height: 26.5625vw;
   overflow: hidden;
   border-radius: 16px;
}
.article-card__image {
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center;
   display: block;
   transition: transform 0.4s ease-in-out;
}
.article-card:hover .article-card__image,
.article-card__image-wrapper:hover .article-card__image {
   transform: scale(1.2);
}
.article-card__meta {
   margin-top: 1.25vw;
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.8333333333333334vw;
   line-height: 1;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #2E2E2E;
   opacity: 0.5;
}
.article-card__title {
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-size: 1.46vw;
   line-height: 1;
   letter-spacing: -0.03em;
   text-transform: uppercase;
   color: #2E2E2E;
   margin: 17px 0 0 0;
}
.articles-cta {
   display: flex;
   justify-content: center;
   width: 100%;
}
.articles-button {
   display: flex;
   align-items: center;
   justify-content: space-between;
   min-width: 11.71875vw;
   height: 3.229166666666667vw;
   background: transparent;
   color: #2E2E2E;
   font-family: "Inter", sans-serif;
   font-weight: 700;
   font-size: 0.8333333333333334vw;
   line-height: 1;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   text-decoration: none;
   border: 1px solid #B4B4B4;
   border-radius: 0.625vw;
   gap: 0.8333333333333334vw;
   position: relative;
   overflow: hidden;
   padding: 0.41666667vw 0.41666667vw 0.41666667vw 0.83333333vw;
   transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
   box-sizing: border-box;
}
.articles-button__icon {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   background: #1E8F7F;
   border-radius: 0.4166666666666667vw;
   transition: background-color 0.3s ease;
   overflow: hidden;
   position: relative;
}
.articles-button__icon img {
   width: 1.25vw;
   height: 1.25vw;
   display: block;
}
.articles-button__icon--right {
   opacity: 1;
   transform: translateX(0);
   transition: all 0.3s ease;
}
.articles-button__icon--left {
   position: absolute;
   left: 0.4166666666666667vw;
   top: 50%;
   transform: translateY(-50%) translateX(-8px);
   opacity: 0;
   width: 0;
   height: 0;
   background: #FFFFFF;
   border-radius: 0.4166666666666667vw;
   display: flex;
   align-items: center;
   justify-content: center;
   transition: all 0.3s ease;
}
.articles-button:hover {
   background-color: #1E8F7F;
   color: #FFFFFF;
   border-color: #1E8F7F;
}
.articles-button:hover .articles-button__icon--right {
   width: 0;
   height: 0;
   opacity: 0;
   padding: 0;
}
.articles-button:hover .articles-button__icon--left {
   width: 2.3958333333333335vw;
   height: 2.3958333333333335vw;
   opacity: 1;
   transform: translateY(-50%) translateX(0);
}
.articles-button__text {
   transition: transform 0.3s ease;
}
.articles-button:hover .articles-button__text {
   transform: translateX(52px);
}

@media (max-width: 1024px) {
   .articles {
      padding-top: 64px;
      padding-bottom: 64px;
   }

   .article-card,
   .article-card[data-articles-slide] {
      height: 755px !important;
      display: flex;
      flex-direction: column;
   }

   .article-card__meta {
      font-size: 16px;
      margin-top: 24px;
   }
   .article-card__title {
      font-size: 24px;
      margin-top: 24px;
   }
   .articles-row {
      display: none !important;
   }

   .article-card__image-wrapper,
   .article-card[data-articles-slide] .article-card__image-wrapper {
      height: 642px !important;
      aspect-ratio: 16 / 9;
      border-radius: 16px;
      flex-shrink: 0;
   }

   .articles-slider-wrapper[data-articles-slider] {
      display: block;
      position: relative;
      overflow: hidden;
      width: 100%;
      margin: 0 auto 48px;
      min-height: 755px;
   }

   .articles-slides {
      display: flex;
      flex-wrap: nowrap;
      width: 100%;
      transition: transform 0.4s ease-in-out;
      box-sizing: border-box;
   }
   .article-card[data-articles-slide] {
      flex: 0 0 100%;
      width: 100%;
      min-width: 100%;
      box-sizing: border-box;
      display: flex;
      flex-direction: column;
   }
   .article-card[data-articles-slide] .article-card__image {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
      transition: none;
   }
   .article-card__title {
      margin-top: 24px;
   }
   .articles-slider-dots {
      display: flex;
      justify-content: center;
      gap: 8px;
      margin-top: 48px;
      padding: 0;
      width: 100%;
      box-sizing: border-box;
   }
   .article-card[data-articles-slide] .article-card__image-wrapper {
      margin-bottom: 0;
   }
   .article-card__title {
      font-size: 28px;
   }
   .articles-button {
      width: 100%;
      height: auto;
      font-size: 16px;
      justify-content: space-between;
      padding: 8px 8px 8px 17px;
      border-radius: 12px;
   }
   .articles-button:hover {
      justify-content: space-between;
   }
   .articles-button:hover .articles-button__text {
      transform: translateX(0px);
   }
   .articles-button__icon {
      width: 46px;
      height: 46px;
      border-radius: 8px;
   }
   .articles-button__icon img {
      width: 24px;
      height: 24px;
   }

   .article-card:hover .article-card__image,
   .article-card__image-wrapper:hover .article-card__image {
      transform: none !important;
   }

   .articles-button,
   .articles-button__text,
   .articles-button__icon,
   .articles-button__icon--right,
   .articles-button__icon--left {
      transition: none !important;
   }
   .articles-button:hover {
      background-color: transparent;
      color: #2E2E2E;
      border-color: #B4B4B4;
   }
   .articles-button:hover .articles-button__text {
      transform: none !important;
   }
   .articles-button:hover .articles-button__icon--right {
      width: 46px !important;
      height: 46px !important;
      opacity: 1 !important;
      transform: none !important;
   }
   .articles-button:hover .articles-button__icon--left {
      width: 0 !important;
      height: 0 !important;
      opacity: 0 !important;
      transform: none !important;
   }
}

@media (max-width: 767px) {
   .articles {
      padding-top: 64px;
      padding-bottom: 64px;
   }

   .article-card,
   .article-card[data-articles-slide] {
      height: auto !important;
      min-height: 415px;
   }

   .article-card[data-articles-slide] .article-card__image-wrapper,
   .article-card__image-wrapper {
      height: 312px !important;
   }

   .articles-slider-wrapper[data-articles-slider] {
      min-height: auto;
   }

   .article-card__title {
      font-size: 18px;
      margin-top: 11px;
   }
   .article-card__meta {
      margin-top: 16px;
      font-size: 14px;
   }
   .articles-button {
      width: 100%;
      justify-content: space-between;
      padding: 8px 8px 8px 16px;
      font-size: 15px;
   }
   .articles-button__icon {
      width: 46px;
      height: 46px;
   }
}

@media (min-width: 1025px) {
   .articles-slider-wrapper[data-articles-slider] {
      display: none !important;
   }
}

.reviews-slider {
   width: 100%;
   height: auto;
   overflow: hidden;
}
.reviews-slides.swiper-wrapper {
   display: flex;
   box-sizing: border-box;
}
.review-slide.swiper-slide {
   height: auto;
   display: flex;
   justify-content: center;
}
.reviews-dot {
   position: relative;
   overflow: hidden;
   display: inline-block;
   vertical-align: middle;
}
@media (max-width: 1024px) {
   .reviews-nav-wrapper {
      display: none !important;
   }
}

.articles-slider-dots,
.projects-slider-dots,
.pain-points-dots,
.why-urich-dots,
.workflow-dots,
.process-dots,
.value-cards-dots {
   display: flex !important;
   justify-content: center !important;
   align-items: center !important;
   gap: 8px !important;
   margin-top: 24px !important;
   padding: 0 !important;
   width: 100% !important;
   min-height: 8px !important;
}

.swiper-pagination-bullet {
   width: 8px !important;
   height: 8px !important;
   border: 1px solid #B4B4B4 !important;
   border-radius: 4px !important;
   background: transparent !important;
   opacity: 1 !important;
   position: relative !important;
   overflow: hidden !important;
   margin: 0 !important;
   cursor: pointer !important;
   flex-shrink: 0 !important;
   display: inline-block !important;
   transition: width 0.3s ease, border-color 0.3s ease !important;
}

.swiper-pagination-bullet-active {
   width: 28px !important;
   border-color: #1E8F7F !important;
   background: transparent !important;
}

.swiper-pagination-bullet-active .swiper-dot-fill {
   position: absolute !important;
   top: 0 !important;
   left: 0 !important;
   height: 100% !important;
   width: 0%;
   background-color: #1E8F7F !important;
   border-radius: 4px !important;
   transition: none;
   display: block !important;
   z-index: 1 !important;
}
.swiper-pagination-bullet:not(.swiper-pagination-bullet-active) .swiper-dot-fill {
   display: none !important;
}

.reviews-dots { margin-top: 18px !important; }
.articles-slider-dots { margin-top: 48px !important; }
.projects-slider-dots { margin-top: 24px !important; }

@media (max-width: 1024px) {
   .hero-stats-slider {
      display: block !important;
      position: relative;
      overflow: hidden;
      width: 100%;
   }

   .hero-stats-slider .hero-stats-slides {
      display: flex !important;
      flex-wrap: nowrap;
      width: 100%;
      transition: transform 0.4s ease-in-out;
   }

   .hero-stat {
      min-height: 92px;
   }

   .hero-stats-slider .hero-stat-slide {
      flex: 0 0 100% !important;
      width: 100% !important;
      display: flex;
      justify-content: center;
   }

   .hero-stats {
      display: none !important;
   }

   .hero-stats-slider  .swiper-pagination {
      position: relative;
   }

   .hero-stats-dots {
      margin-top: 48px;
   }
}

@media (max-width: 767px) {
   .hero-stat {
      min-height: 92px;
   }
}

@media (min-width: 1025px) {
   .hero-stats-slider {
      display: none !important;
   }
   .hero-stats {
      display: flex !important;
   }
}

.hero-stats-dots .swiper-pagination-bullet {
   border: 1px solid #FFFFFF !important;
   background: transparent !important;
   opacity: 0.6;
}
.hero-stats-dots .swiper-pagination-bullet-active {
   border: 1px solid #FFFFFF !important;
   opacity: 1;
   width: 28px !important;
}

@media (min-width: 1025px) {
   .what-we-do__columns {
      align-items: flex-start;
   }

   .what-we-do__col--left {
      position: sticky;
      top: 120px;
      align-self: flex-start;
      height: fit-content;
      z-index: 10;
   }
}

/* accordion: keep front page visually identical to page-services.css */
.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.46vw;
   line-height: 1;
   letter-spacing: -3%;
   text-transform: uppercase;
   color: #2E2E2E;
   text-align: left;
   height: 7.0833vw;
   transition: color 0.3s ease;
}
.accordion-icon {
   width: 0.781vw;
   height: 0.729vw;
   margin: 0 1.25vw;
   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;
   position: relative;
}
.accordion-toggle-icon {
   width: 1.25vw;
   height: 1.25vw;
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   transition: opacity 0.3s ease;
}
.accordion-icon-minus {
   opacity: 0;
}
.accordion-item.is-open .accordion-toggle-wrapper {
   background-color: #2E2E2E;
   border-color: #2E2E2E;
}
.accordion-item.is-open .accordion-icon-plus {
   opacity: 0;
}
.accordion-item.is-open .accordion-icon-minus {
   opacity: 1;
}
.accordion-item:not(.is-open):hover .accordion-title {
   color: #1E8F7F;
}
.accordion-item:not(.is-open):hover .accordion-toggle-wrapper {
   background-color: #1E8F7F;
   border-color: #1E8F7F;
}
.accordion-item:not(.is-open):hover .accordion-icon-plus {
   filter: brightness(0) invert(1);
}
.accordion-content {
   height: 0;
   overflow: hidden;
   transition: height 0.4s ease;
}
.accordion-content-text {
   font-family: "Inter", sans-serif;
   font-weight: 600;
   font-size: 1.042vw;
   line-height: 140%;
   letter-spacing: -0.04em;
   color: #2E2E2E;
   opacity: 0.7;
   max-width: 29.167vw;
   padding: 0 0 1.25vw 2.5vw;
   margin: 0;
}
.accordion-submenu-list {
   list-style: none;
   padding: 0 0 1.88vw 2.5vw;
   margin: 0;
}
.accordion-submenu-item {
   margin-bottom: 1.25vw;
   opacity: 0;
   transform: translateY(-10px);
   animation: slideIn 0.4s ease forwards;
}
.accordion-submenu-item:last-child {
   margin-bottom: 0;
}
.accordion-submenu-item:nth-child(1) { animation-delay: 0.05s; }
.accordion-submenu-item:nth-child(2) { animation-delay: 0.1s; }
.accordion-submenu-item:nth-child(3) { animation-delay: 0.15s; }
.accordion-submenu-item:nth-child(4) { animation-delay: 0.2s; }
.accordion-submenu-item:nth-child(5) { animation-delay: 0.25s; }
.accordion-submenu-link {
   display: inline-flex;
   align-items: center;
   font-family: "Inter", sans-serif;
   font-weight: 700;
   font-size: 1.042vw;
   line-height: 98%;
   letter-spacing: -0.04em;
   color: #1E8F7F;
   text-decoration: none;
   transition: color 0.2s ease;
}
.submenu-arrow {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;
}
.submenu-arrow img {
   width: 1.25vw;
   height: 1.25vw;
   display: block;
}
.submenu-text {
   display: inline-block;
   transform: translateX(0);
   transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
   white-space: nowrap;
}
.arrow {
   display: flex;
   align-items: center;
   justify-content: center;
   transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
   flex-shrink: 0;
}
.arrow img {
   width: 100%;
   height: 100%;
   display: block;
   object-fit: contain;
}
.arrow-left {
   opacity: 0;
   transform: translateX(-8px);
   position: absolute;
   left: 0;
}
.arrow-right {
   display: block;
   width: 24px;
   height: 24px;
   opacity: 1;
   transform: translateX(0);
   position: relative;
}
.accordion-submenu-link:hover {
   color: #145a50;
}
.accordion-submenu-link:hover .submenu-text {
   transform: translateX(1.25vw);
}
.accordion-submenu-link:hover .arrow-right {
   opacity: 0;
   transform: translateX(8px);
}
.accordion-submenu-link:hover .arrow-left {
   opacity: 1;
   transform: translateX(0);
}
.accordion-submenu-link.active {
   color: #145a50;
}
.accordion-submenu-link.active .arrow-right {
   opacity: 0;
   transform: translateX(8px);
}
.accordion-submenu-link.active .arrow-left {
   opacity: 1;
   transform: translateX(0);
}
.accordion-toggle {
   width: 1.563vw;
   height: 1.563vw;
   display: flex;
   align-items: center;
   justify-content: center;
   transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.accordion-toggle.active {
   transform: rotate(180deg);
}
.accordion-toggle img {
   width: 100%;
   height: 100%;
   object-fit: contain;
}

@media (max-width: 1024px) {
   .product-accordion { margin-top: 0; }
   .accordion-header { font-size: 24px; padding: 33px 0; height: auto; }
   .accordion-icon { width: 15px; height: 14px; margin-left: 4.76px; margin-right: 37px; }
   .accordion-title { margin-right: 16px; }
   .accordion-toggle-wrapper { width: 46px; height: 46px; }
   .accordion-toggle-icon { width: 24px; height: 24px; }
   .accordion-content-text { font-size: 20px; max-width: 560px; padding: 0 0 24px 48px; }
   .accordion-submenu-list { padding: 0 0 24px 48px; }
   .accordion-submenu-item { margin-bottom: 16px; }
   .accordion-submenu-link { font-size: 16px; }
   .submenu-arrow img { width: 24px; height: 24px; }
   .accordion-submenu-item,
   .accordion-submenu-item *,
   .accordion-submenu-item::before,
   .accordion-submenu-item::after,
   .submenu-text,
   .arrow,
   .arrow-left,
   .arrow-right,
   .accordion-submenu-link,
   .accordion-submenu-link * {
      animation: none !important;
      transition: none !important;
      transform: none !important;
      opacity: 1 !important;
   }
   .accordion-submenu-item,
   .accordion-submenu-list .accordion-submenu-item {
      opacity: 1 !important;
      transform: none !important;
   }
   .arrow-left,
   .accordion-submenu-list .arrow-left {
      opacity: 0 !important;
      transform: none !important;
      position: absolute !important;
      left: 0 !important;
   }
   .arrow-right,
   .accordion-submenu-list .arrow-right {
      display: block !important;
      width: 24px !important;
      height: 24px !important;
      opacity: 1 !important;
      transform: none !important;
      position: relative !important;
   }
   .accordion-submenu-link:hover,
   .accordion-submenu-link:active,
   .accordion-submenu-link:focus,
   .accordion-submenu-link.active,
   .accordion-submenu-list .accordion-submenu-link:hover,
   .accordion-submenu-list .accordion-submenu-link.active {
      color: #1E8F7F !important;
   }
   .accordion-submenu-link:hover .submenu-text,
   .accordion-submenu-link:active .submenu-text,
   .accordion-submenu-link.active .submenu-text,
   .accordion-submenu-list .accordion-submenu-link:hover .submenu-text,
   .accordion-submenu-list .accordion-submenu-link.active .submenu-text {
      transform: none !important;
   }
   .accordion-submenu-link:hover .arrow-right,
   .accordion-submenu-link:active .arrow-right,
   .accordion-submenu-link.active .arrow-right,
   .accordion-submenu-list .accordion-submenu-link:hover .arrow-right,
   .accordion-submenu-list .accordion-submenu-link.active .arrow-right {
      opacity: 1 !important;
      transform: none !important;
   }
   .accordion-submenu-link:hover .arrow-left,
   .accordion-submenu-link:active .arrow-left,
   .accordion-submenu-link.active .arrow-left,
   .accordion-submenu-list .accordion-submenu-link:hover .arrow-left,
   .accordion-submenu-list .accordion-submenu-link.active .arrow-left {
      opacity: 0 !important;
      transform: none !important;
   }
}

@media (max-width: 767px) {
   .accordion-header { font-size: 18px; padding: 24px 0; }
   .accordion-content-text { font-size: 14px; padding: 0 0 24px 36px; }
   .accordion-submenu-list { padding: 0 0 24px 36px; }
   .accordion-submenu-link { 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.46vw;
   line-height: 1;
   letter-spacing: -3%;
   text-transform: uppercase;
   color: #2E2E2E;
   text-align: left;
   height: 7.0833vw;
   transition: color 0.3s ease;
}

.accordion-icon {
   width: 0.781vw;
   height: 0.729vw;
   margin-right: 1.927vw;
   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;
   position: relative;
}

.accordion-toggle-icon {
   width: 1.25vw;
   height: 1.25vw;
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   transition: opacity 0.3s ease;
}

.accordion-icon-minus {
   opacity: 0;
}

.accordion-item.is-open .accordion-toggle-wrapper {
   background-color: #2E2E2E;
   border-color: #2E2E2E;
}

.accordion-item.is-open .accordion-icon-plus {
   opacity: 0;
}

.accordion-item.is-open .accordion-icon-minus {
   opacity: 1;
}

.accordion-item:not(.is-open):hover .accordion-title {
   color: #1E8F7F;
}

.accordion-item:not(.is-open):hover .accordion-toggle-wrapper {
   background-color: #1E8F7F;
   border-color: #1E8F7F;
}

.accordion-item:not(.is-open):hover .accordion-icon-plus {
   filter: brightness(0) invert(1);
}

.accordion-content {
   height: 0;
   overflow: hidden;
   transition: height 0.4s ease;
}

.accordion-content-text {
   font-family: "Inter", sans-serif;
   font-weight: 600;
   font-size: 1.042vw;
   line-height: 140%;
   letter-spacing: -0.04em;
   color: #2E2E2E;
   opacity: 0.7;
   max-width: 29.167vw;
   padding: 0 0 1.25vw 3.3vw;
   margin: 0;
}

.accordion-submenu-list {
   list-style: none;
   padding: 0 0 1.88vw 3.3vw;
   margin: 0;
}

.accordion-submenu-item {
   margin-bottom: 1.25vw;
}

.accordion-submenu-item:last-child {
   margin-bottom: 0;
}

.accordion-submenu-link {
   display: inline-flex;
   align-items: center;
   font-family: "Inter", sans-serif;
   font-weight: 700;
   font-size: 1.042vw;
   line-height: 98%;
   letter-spacing: -0.04em;
   color: #1E8F7F;
   text-decoration: none;
   transition: color 0.2s ease;
}

.submenu-arrow {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;
}

.submenu-arrow img {
   width: 1.25vw;
   height: 1.25vw;
   display: block;
}

/* ============================================================
   ВІДКЛЮЧЕННЯ АНІМАЦІЙ ДЛЯ .accordion-submenu-list
   НА ЕКРАНАХ 1024px ТА МЕНШЕ
   ============================================================ */
@media (max-width: 1024px) {
   .product-accordion { margin-top: 0; }

   .accordion-header { font-size: 24px; padding: 33px 0; height: auto; }
   .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-content-text { font-size: 20px; max-width: 560px; padding: 0 0 24px 58px; }

   .accordion-submenu-list { padding: 0 0 24px 58px; }
   .accordion-submenu-item { margin-bottom: 16px; }
   .accordion-submenu-link { font-size: 16px;  }
   .submenu-arrow img { width: 24px; height: 24px; }

   /* === Вимикаємо анімації для підменю акордеону === */
   .accordion-submenu-list .accordion-submenu-item,
   .accordion-submenu-list .submenu-text,
   .accordion-submenu-list .arrow,
   .accordion-submenu-list .arrow-left,
   .accordion-submenu-list .arrow-right,
   .accordion-submenu-list .accordion-submenu-link {
      transition: none !important;
      animation: none !important;
      transform: none !important;
   }

   /* === Елементи видимі за замовчуванням, без анімації появи === */
   .accordion-submenu-list .accordion-submenu-item {
      opacity: 1 !important;
      transform: none !important;
   }

   /* === Вимикаємо ховер-ефекти для посилань підменю === */
   .accordion-submenu-list .accordion-submenu-link:hover,
   .accordion-submenu-list .accordion-submenu-link.active {
      color: #1E8F7F !important;
   }

   .accordion-submenu-list .accordion-submenu-link:hover .submenu-text,
   .accordion-submenu-list .accordion-submenu-link.active .submenu-text {
      transform: none !important;
   }

   .accordion-submenu-list .accordion-submenu-link:hover .arrow-right,
   .accordion-submenu-list .accordion-submenu-link.active .arrow-right {
      opacity: 1 !important;
      transform: none !important;
   }

   .accordion-submenu-list .accordion-submenu-link:hover .arrow-left,
   .accordion-submenu-list .accordion-submenu-link.active .arrow-left {
      opacity: 0 !important;
      transform: none !important;
   }
}

/* Вимикаємо @keyframes slideIn для мобільних, якщо він глобальний */
@media (max-width: 1024px) {
   @keyframes slideIn {
      to {
         opacity: 1;
         transform: none;
      }
   }
}

@media (max-width: 767px) {
   .accordion-header { font-size: 18px; padding: 24px 0; }
   .accordion-content-text { font-size: 14px; }
   /*.accordion-submenu-list { padding: 0 0 24px 36px; }*/
   .accordion-submenu-link { font-size: 14px; }
}

/* ============================================================
   ЗАЛИШАЄМО АНІМАЦІЇ ДЛЯ ПК (>1024px) — БЕЗ ЗМІН
   ============================================================ */
.accordion-submenu-item {
   opacity: 0;
   transform: translateY(-10px);
   animation: slideIn 0.4s ease forwards;
}

.accordion-submenu-item:nth-child(1) { animation-delay: 0.05s; }
.accordion-submenu-item:nth-child(2) { animation-delay: 0.1s; }
.accordion-submenu-item:nth-child(3) { animation-delay: 0.15s; }
.accordion-submenu-item:nth-child(4) { animation-delay: 0.2s; }
.accordion-submenu-item:nth-child(5) { animation-delay: 0.25s; }

@keyframes slideIn {
   to {
      opacity: 1;
      transform: translateY(0);
   }
}

.submenu-text {
   display: inline-block;
   transform: translateX(0);
   transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
   white-space: nowrap;
}

.arrow {
   display: flex;
   align-items: center;
   justify-content: center;
   transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
   flex-shrink: 0;
}

.arrow img {
   width: 100%;
   height: 100%;
   display: block;
   object-fit: contain;
}

.arrow-left {
   opacity: 0;
   transform: translateX(-8px);
   position: absolute;
   left: 0;
}

.arrow-right {
   display: block;
   width: 24px;
   height: 24px;
   opacity: 1;
   transform: translateX(0);
   position: relative;
}

.accordion-submenu-link:hover {
   color: #145a50;
}

.accordion-submenu-link:hover .submenu-text {
   transform: translateX(1.25vw);
}

.accordion-submenu-link:hover .arrow-right {
   opacity: 0;
   transform: translateX(8px);
}

.accordion-submenu-link:hover .arrow-left {
   opacity: 1;
   transform: translateX(0);
}

.accordion-submenu-link.active {
   color: #145a50;
}

.accordion-submenu-link.active .arrow-right {
   opacity: 0;
   transform: translateX(8px);
}

.accordion-submenu-link.active .arrow-left {
   opacity: 1;
   transform: translateX(0);
}

.accordion-toggle {
   width: 1.563vw;
   height: 1.563vw;
   display: flex;
   align-items: center;
   justify-content: center;
   transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.accordion-toggle.active {
   transform: rotate(180deg);
}

.accordion-toggle img {
   width: 100%;
   height: 100%;
   object-fit: contain;
}

.services-btn {
   display: flex;
   justify-content: center;
   margin-top: 5vw;
   margin-bottom: 5vw;
}

.services-btn .btn {
   width: 15.78vw;
}

.btn {
   display: flex;
   align-items: center;
   justify-content: flex-end;
   background: #1E8F7F;
   color: #FFFFFF;
   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;
   min-width: 12.65625vw;
   height: 3.229vw;
   padding: 0.417vw 0.417vw 0.417vw 0.833vw;
}

.btn__icon {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 2.396vw;
   height: 2.396vw;
   background: #FFFFFF;
   border-radius: 8px;
   transition: all 0.3s ease;
   overflow: hidden;
}

.btn__icon img {
   width: 1.25vw;
   height: 1.25vw;
   display: block;
}

.btn__icon--right {
   opacity: 1;
   transform: translateX(0);
}

.btn__icon--left {
   position: absolute;
   left: 0.417vw;
   opacity: 0;
   transform: translateX(-0.417vw);
   width: 0;
   height: 0;
   background: #FFFFFF;
   border-radius: 8px;
}

.btn:hover .btn__icon--right {
   width: 0;
   height: 0;
   opacity: 0;
   padding: 0;
   margin: 0;
}

.btn:hover .btn__icon--left {
   width: 2.396vw;
   height: 2.396vw;
   opacity: 1;
   transform: translateX(0);
}

.btn:hover .btn__text {
   transform: translateX(0.313vw);
}

.btn--secondary {
   background: #FFFFFF;
   color: #2E2E2E;
   border: 1px solid #B4B4B4;
}

.btn--secondary .btn__icon,
.btn--secondary .btn__icon--left {
   background: #1E8F7F;
}

.btn--secondary:hover {
   background: #1E8F7F;
   border: 1px solid #1E8F7F;
   color: #FFFFFF;
}

.btn--secondary:hover .btn__icon,
.btn--secondary:hover .btn__icon--left {
   background: #FFFFFF;
}

.services-btn-mob {
   display: none;
}

@media (max-width: 1024px) {
   .services-btn {
      margin-top: 0;
      margin-bottom: 0;
   }
   .services-btn .btn {
      width: auto;
   }
   .btn {
      display: flex;
      align-items: center;
      justify-content: space-between;
      background: #1E8F7F;
      color: #FFFFFF;
      font-size: 16px;
      line-height: 0.98;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      text-decoration: none;
      border-radius: 12px;
      gap: 16px;
      position: relative;
      overflow: hidden;
      height: 62px;
      padding: 8px 8px 8px 16px;
      width: 100%;
   }
   .btn__icon {
      width: 46px;
      height: 46px;
      background: #FFFFFF;
      border-radius: 8px;
      transition: all 0.3s ease;
      overflow: hidden;
   }
   .btn__icon img {
      width: 24px;
      height: 24px;
      display: block;
   }
   .btn__icon--right {
      opacity: 1;
      transform: translateX(0);
   }
   .btn__icon--left {
      position: absolute;
      left: 8px;
      opacity: 0;
      transform: translateX(-8px);
      width: 0;
      height: 0;
      background: #FFFFFF;
      border-radius: 8px;
   }
   .btn--secondary {
      background: #FFFFFF;
      color: #2E2E2E;
      border: 1px solid #B4B4B4;
      width: 100%;
      max-width: 50%;
   }
   .btn--secondary .btn__icon,
   .btn--secondary .btn__icon--left {
      background: #1E8F7F;
   }
   .btn--secondary:hover {
      background: #1E8F7F;
      border: 1px solid #1E8F7F;
      color: #FFFFFF;
   }
   .btn--secondary:hover .btn__icon,
   .btn--secondary:hover .btn__icon--left {
      background: #FFFFFF;
   }
   .services-btn .btn,
   .services-btn .btn *,
   .services-btn .btn::before,
   .services-btn .btn::after {
      transition: none !important;
      animation: none !important;
      transform: none !important;
   }
   .services-btn .btn .btn__icon--right {
      width: 46px !important;
      height: 46px !important;
      opacity: 1 !important;
      padding: 0 !important;
      margin: 0 !important;
      transform: translateX(0) !important;
   }
   .services-btn .btn .btn__icon--left {
      width: 0 !important;
      height: 0 !important;
      opacity: 0 !important;
      transform: translateX(-8px) !important;
   }
   .services-btn .btn .btn__text {
      transform: translateX(0) !important;
   }
   .services-btn .btn:hover,
   .services-btn .btn:active,
   .services-btn .btn:focus {
      background-color: inherit !important;
      color: inherit !important;
      border-color: inherit !important;
   }
   .services-btn .btn.btn--secondary:hover {
      background: #FFFFFF !important;
      color: #2E2E2E !important;
      border: 1px solid #B4B4B4 !important;
   }
   .services-btn .btn.btn--secondary:hover .btn__icon,
   .services-btn .btn.btn--secondary:hover .btn__icon--left {
      background: #1E8F7F !important;
   }

   .services-btn-pc {
      display: none;
   }
   .services-btn-mob {
      display: flex;
   }

}

@media (max-width: 767px) {
   .btn {
      width: 100%;
      max-width: 100%;
   }
   .btn--secondary {
      width: 100%;
      max-width: 100%;
   }
}

/* what-we-do: keep front page visually identical to page-services.css */
.what-we-do__columns {
   display: flex;
   gap: 5vw;
   margin-top: 5vw;
   margin-bottom: 5vw;
   min-width: 0;
}
.what-we-do__col--left {
   flex: 0 1 25.573vw;
   min-width: 16.667vw;
}
.what-we-do__col--right {
   flex: 1;
   min-width: 0;
}
.what-we-do .tag,
.what-we-do__tag {
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.833vw;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #ffffff;
   background-color: #1E8F7F;
   padding: 0.104vw 0.208vw;
   border-radius: 4px;
   display: inline-block;
   width: 5.729vw;
   height: 1.042vw;
   line-height: 1.1;
   box-sizing: border-box;
}
.what-we-do__title {
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-size: 6.667vw;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   color: #2E2E2E;
   margin: 1.25vw 0 0;
   width: 25.313vw;
   overflow: hidden;
   line-height: 0.85;
}
.what-we-do__card {
   width: 100%;
   border: 1px solid #B4B4B4;
   border-radius: 16px;
   margin-top: 1.25vw;
}
.what-we-do__card-inner {
   display: flex;
   align-items: flex-start;
   padding: 1.667vw 1.667vw 1.25vw 1.667vw;
   gap: 1.25vw;
}
.what-we-do__card-image {
   width: 8.75vw;
   height: 8.75vw;
   object-fit: cover;
   flex: 0 0 auto;
}
.what-we-do__card-text {
   display: flex;
   flex-direction: column;
   gap: 0.417vw;
   padding-left: 0;
}
.what-we-do__card-title {
   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-do__card-description {
   font-family: 'Inter', sans-serif;
   font-weight: 600;
   font-size: 1.042vw;
   line-height: 1.4;
   letter-spacing: -0.04em;
   color: #2E2E2E;
   margin: 0;
   opacity: 0.7;
   padding-top: 1.458vw;
}
.what-we-do__button {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 22.24vw;
   height: 3.229vw;
   margin: 0 1.667vw 1.667vw 1.667vw;
   padding: 0 3.229vw 0 3.229vw;
   background-color: #1E8F7F;
   color: #FFFFFF;
   font-family: 'Inter', sans-serif;
   font-weight: 700;
   font-size: 0.833vw;
   line-height: 1.2;
   letter-spacing: -0.04em;
   text-transform: uppercase;
   text-decoration: none;
   border-radius: 12px;
   position: relative;
   overflow: hidden;
   box-sizing: border-box;
   transition: background-color 0.3s ease;
}
.what-we-do__button-text {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   left: 0.885vw;
   transition: all 0.3s ease;
   white-space: nowrap;
}
.what-we-do__button:hover .what-we-do__button-text {
   left: 50%;
   transform: translate(-50%, -50%);
}
.what-we-do__button-icon {
   display: flex;
   align-items: center;
   justify-content: center;
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   width: 2.396vw;
   height: 2.396vw;
   background-color: #FFFFFF;
   border-radius: 8px;
   transition: all 0.3s ease;
}
.what-we-do__button-icon img {
   width: 1.25vw;
   height: 1.25vw;
   display: block;
}
.what-we-do__button-icon--right {
   right: 0.521vw;
   opacity: 1;
}
.what-we-do__button-icon--left {
   left: 0.521vw;
   opacity: 0;
   width: 0;
   height: 0;
   overflow: hidden;
}
.what-we-do__button:hover {
   background-color: #2E2E2E;
}
.what-we-do__button:hover .what-we-do__button-icon--right {
   width: 0;
   height: 0;
   opacity: 0;
}
.what-we-do__button:hover .what-we-do__button-icon--left {
   width: 2.396vw;
   height: 2.396vw;
   opacity: 1;
}
.what-we-do__services {
   list-style: none;
   margin: 0;
   padding: 0;
}
.what-we-do__service-item {
   display: block;
   width: 100%;
   height: 7.083vw;
   border-bottom: 1px solid #B4B4B4;
   padding: 0;
   position: relative;
}
.what-we-do__service-item:last-child {
   border-bottom: none;
}
.what-we-do__service-link {
   display: flex;
   width: 100%;
   height: 100%;
   align-items: center;
   text-decoration: none;
   color: inherit;
}
.what-we-do__service-item:hover .what-we-do__service-title {
   color: rgb(30, 143, 127);
}
.what-we-do__service-link:hover .what-we-do__service-icon-wrapper {
   background-color: #1E8F7F;
   border-color: #1E8F7F;
}
.what-we-do__service-link:hover .what-we-do__service-icon-wrapper .what-we-do__icon-black {
   opacity: 0;
}
.what-we-do__service-link:hover .what-we-do__service-icon-wrapper .what-we-do__icon-white {
   opacity: 1;
}
.what-we-do__service-col {
   width: 50%;
   display: flex;
   align-items: center;
   height: 100%;
   min-width: 0;
}
.what-we-do__service-col--left {
   justify-content: flex-start;
   gap: 1.875vw;
}
.what-we-do__service-col--right {
   justify-content: space-between;
   gap: 1.25vw;
   min-width: 0;
}
.what-we-do__service-icon-star {
   width: 0.729vw;
   height: 0.729vw;
   flex: 0 0 auto;
}
.what-we-do__service-title {
   font-family: 'Roboto Condensed', sans-serif;
   font-weight: 900;
   font-size: 1.46vw;
   line-height: 1;
   letter-spacing: -0.03em;
   text-transform: uppercase;
   color: #2E2E2E;
   margin: 0;
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
}
.what-we-do__service-description {
   max-width: 13.438vw;
   width: auto;
   flex: none;
   font-family: 'Inter', sans-serif;
   font-weight: 600;
   font-size: 1.042vw;
   line-height: 1.4;
   letter-spacing: -0.04em;
   color: #2E2E2E;
   margin: 0;
   opacity: 0.7;
   white-space: normal;
   overflow: visible;
   display: block;
   overflow-wrap: break-word;
}
.what-we-do__service-icon-wrapper {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 2.396vw;
   height: 2.396vw;
   border: 1px solid #B4B4B4;
   border-radius: 8px;
   flex: 0 0 auto;
   text-decoration: none;
   position: relative;
   transition: background-color 0.2s ease, border-color 0.2s ease;
}
.what-we-do__icon-black,
.what-we-do__icon-white {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 1.25vw;
   height: 1.25vw;
   display: block;
   pointer-events: none;
   transition: opacity 0.2s ease;
}
.what-we-do__icon-white {
   opacity: 0;
}
.what-we-do__service-icon-wrapper:hover {
   background-color: #1E8F7F;
   border-color: #1E8F7F;
}
.what-we-do__service-icon-wrapper:hover .what-we-do__icon-black {
   opacity: 0;
}
.what-we-do__service-icon-wrapper:hover .what-we-do__icon-white {
   opacity: 1;
}

@media (min-width: 1025px) and (max-width: 1300px) {
   .what-we-do__columns {
      gap: 3.333vw;
   }
   .what-we-do__col--left {
      flex: 0 1 19.792vw;
      min-width: 16.667vw;
   }
   .what-we-do__title {
      font-size: 5.208vw;
      width: auto;
      line-height: 0.88;
   }
   .what-we-do .tag,
   .what-we-do__tag {
      font-size: 0.781vw;
      width: auto;
      padding: 0.104vw 0.313vw;
   }
   .what-we-do__card-inner {
      padding: 1.25vw;
      gap: 1.042vw;
   }
   .what-we-do__card-image {
      width: 7.292vw;
      height: 7.292vw;
   }
   .what-we-do__card-title {
      font-size: 1.354vw;
   }
   .what-we-do__card-description {
      font-size: 0.938vw;
      padding-top: 1.25vw;
   }
   .what-we-do__button {
      width: 17.188vw;
      height: 3.021vw;
      margin: 0 1.25vw 1.25vw 1.25vw;
      padding: 0 2.917vw 0 2.917vw;
      font-size: 0.781vw;
   }
   .what-we-do__button-text {
      left: 0.833vw;
   }
   .what-we-do__button-icon {
      width: 2.292vw;
      height: 2.292vw;
   }
}

@media (max-width: 1024px) {
   .what-we-do__columns {
      display: flex;
      flex-direction: column;
      gap: 0;
      margin-top: 64px;
      margin-bottom: 64px;
      min-width: 0;
   }
   .what-we-do__col {
      display: contents;
   }
   .what-we-do__card {
      order: 3;
      width: 100%;
      border: 1px solid #B4B4B4;
      border-radius: 16px;
      margin-top: 24px;
   }
   .what-we-do .tag,
   .what-we-do__tag {
      font-size: 16px;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      color: #ffffff;
      background-color: #1E8F7F;
      padding: 2px 4px;
      border-radius: 4px;
      display: inline-block;
      width: 110px;
      height: 20px;
      line-height: 1;
      box-sizing: border-box;
   }
   .what-we-do__title {
      font-weight: 900;
      font-size: 64px;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      color: #2E2E2E;
      margin: 24px 0 16px 0;
      width: auto;
      overflow: hidden;
      line-height: 0.9;
   }
   .what-we-do__card-inner {
      flex-direction: row;
      align-items: center;
      text-align: left;
      padding: 32px;
      gap: 16px;
      display: flex;
   }
   .what-we-do__card-image {
      width: 84px;
      height: 84px;
      object-fit: cover;
   }
   .what-we-do__card-text {
      display: flex;
      flex-direction: column;
      gap: 16px;
      padding-left: 0;
   }
   .what-we-do__card-title {
      font-weight: 900;
      font-size: 24px;
      line-height: 1;
      letter-spacing: -0.03em;
      text-transform: uppercase;
      color: #2E2E2E;
      margin: 0;
   }
   .what-we-do__card-description {
      font-weight: 600;
      font-size: 16px;
      line-height: 1.4;
      letter-spacing: -0.04em;
      color: #2E2E2E;
      margin: 0;
      opacity: 0.7;
      padding-top: 0;
      max-width: 170px;
   }
   .what-we-do__button {
      display: flex;
      align-items: center;
      justify-content: center;
      width: calc(100% - 64px);
      height: 56px;
      margin: 0 32px 32px;
      padding: 0 48px 0 48px;
      background-color: #1E8F7F;
      color: #FFFFFF;
      font-weight: 700;
      font-size: 16px;
      line-height: 1.2;
      letter-spacing: -0.04em;
      text-transform: uppercase;
      text-decoration: none;
      border-radius: 12px;
      position: relative;
      overflow: hidden;
      box-sizing: border-box;
   }
   .what-we-do__button-text {
      left: 16px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      transition: all 0.3s ease;
      white-space: nowrap;
   }
   .what-we-do__button-icon {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 42px;
      height: 42px;
      background-color: #FFFFFF;
      border-radius: 8px;
      transition: all 0.3s ease;
   }
   .what-we-do__button-icon img {
      width: 24px;
      height: 24px;
      display: block;
   }
   .what-we-do__button-icon--right {
      right: 10px;
      opacity: 1;
   }
   .what-we-do__button-icon--left {
      left: 10px;
      opacity: 0;
      width: 0;
      height: 0;
      overflow: hidden;
   }
   .what-we-do__button:hover {
      background-color: #2E2E2E;
   }
   .what-we-do__button:hover .what-we-do__button-icon--right {
      width: 0;
      height: 0;
      opacity: 0;
   }
   .what-we-do__button:hover .what-we-do__button-icon--left {
      width: 46px;
      height: 46px;
      opacity: 1;
   }
   .what-we-do__services {
      list-style: none;
      margin: 0;
      padding: 0;
   }
   .what-we-do__service-item {
      display: block;
      align-items: center;
      height: 112px;
      padding: 0 0 0 24px;
      border-bottom: 1px solid #B4B4B4;
      width: 100%;
      position: relative;
   }
   .what-we-do__service-item:last-child {
      border-bottom: none;
   }
   .what-we-do__service-link {
      display: flex;
      width: 100%;
      height: 100%;
      align-items: center;
      text-decoration: none;
      color: inherit;
   }
   .what-we-do__service-description {
      display: none;
   }
   .what-we-do__service-col {
      width: 50%;
      display: flex;
      align-items: center;
      height: 100%;
      min-width: 0;
   }
   .what-we-do__service-col--left {
      display: flex;
      align-items: center;
      gap: 24px;
      flex: 1;
      padding-right: 24px;
   }
   .what-we-do__service-col--right {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      width: auto;
      min-width: auto;
      gap: 0;
      padding: 0;
      margin: 0;
   }
   .what-we-do__service-icon-star {
      width: 14.48px;
      height: 14px;
   }
   .what-we-do__service-title {
      font-weight: 900;
      font-size: 24px;
      line-height: 1;
      letter-spacing: -0.03em;
      text-transform: uppercase;
      color: #2E2E2E;
      margin: 0;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
   }
   .what-we-do__service-icon-wrapper {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 42px;
      height: 42px;
      border: 1px solid #B4B4B4;
      border-radius: 8px;
      flex: 0 0 auto;
      position: relative;
   }
   .what-we-do__icon-black,
   .what-we-do__icon-white {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 20px;
      height: 20px;
      display: block;
      pointer-events: none;
      transition: opacity 0.2s ease;
   }
   .what-we-do__icon-white {
      opacity: 0;
   }
   .what-we-do__button,
   .what-we-do__button *,
   .what-we-do__button::before,
   .what-we-do__button::after {
      transition: none !important;
   }
   .what-we-do__button .what-we-do__button-text,
   .what-we-do__button:hover .what-we-do__button-text,
   .what-we-do__button:active .what-we-do__button-text {
      left: 16px !important;
      transform: translateY(-50%) !important;
   }
   .what-we-do__button .what-we-do__button-icon--right,
   .what-we-do__button:hover .what-we-do__button-icon--right,
   .what-we-do__button:active .what-we-do__button-icon--right {
      width: 42px !important;
      height: 42px !important;
      opacity: 1 !important;
      right: 10px !important;
   }
   .what-we-do__button .what-we-do__button-icon--left,
   .what-we-do__button:hover .what-we-do__button-icon--left,
   .what-we-do__button:active .what-we-do__button-icon--left {
      width: 0 !important;
      height: 0 !important;
      opacity: 0 !important;
      left: 10px !important;
   }
   .what-we-do__button:hover,
   .what-we-do__button:active {
      background-color: #1E8F7F !important;
   }
}

@media (max-width: 767px) {
   .what-we-do .tag,
   .what-we-do__tag {
      font-size: 14px;
   }
   .what-we-do__title {
      font-size: 48px;
      margin: 0;
   }
   .what-we-do__card-inner {
      padding: 24px;
   }
   .what-we-do__card-image {
      width: 124px;
      height: 124px;
   }
   .what-we-do__card-title {
      font-size: 18px;
   }
   .what-we-do__card-description {
      font-size: 14px;
   }
   .what-we-do__button {
      width: calc(100% - 48px);
      margin: 0 24px 24px;
   }
   .what-we-do__service-item {
      height: 94px;
      padding: 0;
   }
   .what-we-do__columns {
      gap: 16px;
   }
   .what-we-do__card-text {
      gap: 30px;
   }
   .what-we-do__service-title {
      font-size: 18px;
      white-space: normal;
   }
}

@media (min-width: 1025px) {
   .what-we-do__columns {
      align-items: flex-start;
   }
   .what-we-do__col--left {
      position: sticky;
      top: 120px;
      align-self: flex-start;
      height: fit-content;
      z-index: 10;
   }
}

/* final accordion parity with page-services.css */
.accordion-icon {
   width: 0.781vw;
   height: 0.729vw;
   margin: 0 1.25vw;
   flex-shrink: 0;
}

@media (max-width: 1024px) {
   .accordion-icon {
      width: 15px;
      height: 14px;
      margin-left: 4.76px;
      margin-right: 37px;
   }
}
