/*-----------FONTS--------------------*/
@font-face {
  font-display: swap;
  font-family: 'Manrope';
  font-style: normal;
  font-weight: normal;
  src: local('Manrope Regular'), local('Manrope-Regular'),
     url('../fonts/Manrope-Regular.woff2') format('woff2'),
     url('../fonts/Manrope-Regular.ttf') format('truetype');
}

@font-face {
  font-display: swap;
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  src: local('Manrope Bold'), local('Manrope-Bold'),
       url('../fonts/Manrope-Bold.woff2') format('woff2'),
       url('../fonts/Manrope-Bold.ttf') format('truetype');
}

@font-face {
  font-display: swap;
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  src: local('Manrope SemiBold'), local('Manrope-SemiBold'),
       url('../fonts/Manrope-SemiBold.woff2') format('woff2'),
       url('../fonts/Manrope-SemiBold.ttf') format('truetype');
}

@font-face {
  font-display: swap;
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  src: local('Manrope Medium'), local('Manrope-Medium'),
       url('../fonts/Manrope-Medium.woff2') format('woff2'),
       url('../fonts/Manrope-Medium.ttf') format('truetype');
}

:root {
  --black: #222222;
  --white: #ffffff;
  
  --header-bg-light: #F1F1F1;
  --text-color-light: #0E0E0E;
  --text-color-gray: #939393;
  --orange-bg: #FF5C39;
  --button-text: #ffffff;
  
  --header-bg-dark: #0E0E0E;

  --primary-font: 'Manrope', 'Helvetica Neue', sans-serif;
}

/*-----------RESET--------------------*/
* {
  padding: 0;
  margin: 0;
  border: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

:focus,
:active {
  outline: none;
}

a:focus,
a:active {
  outline: none;
}

label {
  margin: 0;
  cursor: pointer;
}

aside,
nav,
footer,
header,
section {
  display: block;
}

html,
body {
  min-width: 300px;
  height: 100%;
}

body {
  background-color: var(--white);
  color: var(--black);
  font-family: var(--primary-font);
  font-feature-settings: "ss04" on;
  font-size: 1.6rem;
  line-height: 1.3;
  -webkit-font-smoothing: antialiased;
  text-size-adjust: 100%;
}

input,
button,
textarea {
  font-family: inherit;
  font-weight: inherit;
}

input::-ms-clear {
  display: none;
}

button {
  cursor: pointer;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

a,
a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

ul li {
  list-style: none;
}

ol li {
  list-style: none;
}

img {
  display: block;
  max-width: 100%;
}

button {
  padding: 0;
  border: none;
  background-color: transparent;
}

/** BASIC **/
html {
  scroll-behavior: smooth;
}

body,
html {
  font-size: .6944444444vw
}

main {
  padding-top: 7.5rem;
  font-size: calc(100vw / 144);
}

.container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 4rem;
}

@media (max-width: 1079px) {  
  body, 
  html {
    font-size: 10px;
  }

  main {
    padding-top: 5.5rem;
    font-size: calc(100vw / 1440 * 10);
    -webkit-font-smoothing: auto;
  }
  
  .container {
    padding: 0 2rem;
  }
}

@media (max-width: 767px) {  
  /*html {
      font-size:4.2666666667vw
  }*/

  html {
    font-size: 2.7777777vw;
  }

  main {
    font-size: calc(100vw / 23.4375);
  }
  
  .container {
    padding: 0 1.6rem; /* Уменьшение горизонтальных отступов */
  }
}

@media (max-width: 320px) {
  main {
    font-size: 1rem;
  }
}

/* Блок button */
.button {
  display: inline-block;
  text-transform: uppercase;
}

/*------------------------------------------------
 * BLOCK: HEADER
 *------------------------------------------------*/
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  transition: background-color 0.3s ease;
}

.header--light {
  border-bottom: .2rem solid #EAEAEA;
  background-color: var(--header-bg-light);
}

.header--dark {
  background-color: var(--header-bg-dark);
}

.header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header--dark .header__inner {
  border-bottom: .2rem solid #262626;
}

.header__left {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}

.header__logo {
  padding: 1.6rem 4rem;
  border-right: .2rem solid;
  display: block;
  line-height: 0;
}

.header--dark  .header__logo {
  border-color: #262626;
}

.header__logo:visited {
  color: transparent!important;
}

.header--light  .header__logo {
  border-color: #EAEAEA;
}

.header__logo svg {
  height: 4rem;
}

.header--light .header__logo svg path {
  fill: #0E0E0E;
}

.header__right {
  display: flex;
  align-items: center;
  border-left: .2rem solid;
}

.header--light .header__right {
  border-color: #EAEAEA;
}

.header__icons {
  padding: 1.6rem;
  display: flex;
  gap: 1.6rem;
}

.header__icon {
  padding: .8rem;
}

.header__burger {
  display: none;
}

.header__icon svg {
  width: 2.4rem;
  height: 2.4rem;
  opacity: 1;
  transition: opacity 0.3s ease;
}

.header__icon:hover svg {
  opacity: .6;
}

.header--light .header__icon svg path {
  color: #0E0E0E;
}

.header--dark .header__icon svg path {
  stroke: var(--white);
}

.header__button {
  padding: 1.65rem 4rem;
  border: none;
  border-radius: 0;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: normal;
  letter-spacing: -0.0225rem;
  text-transform: uppercase;
  background-color: #FE5639;
  color: var(--button-text);
  cursor: pointer;
  transition: opacity 0.3s ease;
}

.header__button:hover {
  opacity: 0.9;
}

.header__button span {
  height: 4rem;
  display: flex;
  align-items: center;
}

@media (max-width: 1079px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
  }
  .header__inner {
    padding: 0;
  }
  
  .header__logo {
    padding: 1.2rem 1.6rem;
    border-right: none;
  }
  
  .header__logo svg {
    height: 2.8rem;
    width: auto;
  }

  .header__menu {
    display: none;
  }
  
  .header__right {
    border-left: none;
  }
  
  .header__icons {
    padding: 0;
    gap: 0;
  }
  
  .header__icon {
    padding: 1.4rem;
    border-left: .1rem solid;
    border-radius: 0;
  }

  .header__burger {
    display: block;
  }
  
  .header--light .header__icon {
    border-color: #EAEAEA;
  }
  
  .header__icon svg {
    width: 2.4rem;
    height: 2.4rem;
  }
  
  .header__button {
    display: none;
  }
}

@media (max-width: 767px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
  }
  .header__inner {
    padding: 0;
  }
  
  .header__logo {
    padding: 1.2rem 1.6rem;
    border-right: none;
  }
  
  .header__logo svg {
    height: 2.8rem;
    width: auto;
  }

  .header__menu {
    display: none;
  }
  
  .header__right {
    border-left: none;
  }
  
  .header__icons {
    padding: 0;
    gap: 0;
  }
  
  .header__icon {
    padding: 1.4rem;
    border-left: .1rem solid;
    border-radius: 0;
  }

  .header__burger {
    display: block;
  }
  
  .header--light .header__icon {
    border-color: #EAEAEA;
  }
  
  .header__icon svg {
    width: 2.4rem;
    height: 2.4rem;
  }
  
  .header__button {
    display: none;
  }
}

/*------------------------------------------------
 * BLOCK: FOOTER
 *------------------------------------------------*/
.footer {
  background-color: #0E0E0E;
  color: var(--white);
  padding: 10rem 0 4rem;
}

.footer-grid {
  display: grid;
  grid-template-columns: 1fr 3fr;
  gap: 6rem;
}

.footer-logo {
  display: flex;
  align-items: flex-start;
}

.footer-logo__img {
  height: 10rem;
}

.footer-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.footer-content__top {
  padding-bottom: 4rem;
  border-bottom: .15rem solid #262626;
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.footer-menu-list {
  margin: 0;
  display: flex;
  flex-direction: column;
}

.footer-menu-list a {
  position: relative;
  padding: .6rem 0;
  display: flex;
  align-items: center;
  width: fit-content;
  transition: color 0.3s ease;
}

.footer-menu-list a span {
  color: var(--white);
  font-size: 3.2rem;
  font-weight: 500;
  letter-spacing: -0.064rem;
  transition: color 0.3s ease;
}

.footer-menu-list a:hover span {
  color: #939393;
}

.menu-arrow {
  opacity: 0;
  margin-left: .8rem;
  display: flex;
  align-items: center;
  transform: translateX(-.5rem);
  transition: all 0.3s ease;
}

.menu-arrow svg {
  height: 3.2rem;
  width: 3.2rem;
}

.footer-menu-list a:hover .menu-arrow {
  opacity: 1;
  transform: translateX(0);
}

.footer-contacts {
  display: flex;
  flex-direction: column;
}

.footer-contact {
  padding: .8rem 0;
  color: var(--white);
  font-size: 2.2rem;
  letter-spacing: -0.044rem;
  width: fit-content;
  transition: color 0.3s ease;
}

.footer-contact:hover {
  color: #939393;
}

.footer-content__bottom {
  padding-top: 4rem;
  display: flex;
  align-items: center;
  gap: 1.3rem;
  font-size: 1.4rem;
  color: #838383;
  letter-spacing: -0.07px;
}

.footer-docs {
  display: flex;
  gap: 1.4rem;
}

.footer-doc,
.footer-doc:visited {
  color: #838383;
  transition: color 0.3s ease;
}

.footer-doc:hover {
  color: var(--white);
}

/* Responsive styles */
@media (max-width: 1079px) {
  #footer {
    padding: 4rem .4rem 2.4rem;
  }
  
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
  
  .footer-content__top {
    display: flex;
    flex-direction: column;
    padding-bottom: 0;
    border-bottom: none;
  }
  
  .footer-menu-list a {
    font-size: 2rem;
  }

  .footer-logo__img {
      display: none;
  }

  .footer-contacts {
    margin-top: 4rem;
    align-items: flex-start;
  }

  .footer-contact {
      padding: .8rem 0;
      font-size: 1.8rem;
  }
  
  .footer-content__bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }

  .footer-docs {
    flex-direction: column;
    gap: 0;
  }

  .footer-doc,
  .copyright {
      min-height: 2.4rem;
      font-size: 1.3rem;
      line-height: 100%;
      letter-spacing: -0.026rem;
  }

  .footer-menu-list a {
    padding: 1.2rem 0;
    border-bottom: 1.5px solid #262626;
    width: 100%;
    justify-content: space-between;
  }

  .footer-menu-list a span {
      font-size: 2.2rem;
      line-height: 100%; /* 2.2rem */
      letter-spacing: -0.066rem;
      opacity: 1;
  }

  .footer-menu-list a .menu-arrow {
    transform:  rotate(-45deg);
  }

  .footer-menu-list .menu-arrow svg {
    height: 2.4rem;
    width: 2.4rem;
  }

  .footer-menu-list a .menu-arrow path {
    stroke: var(--white);
  }
}

@media (max-width: 767px) {
  #footer {
    padding: 3.2rem 0 1.6rem;
  }  
}


/*------------------------------------------------
 * BLOCK: MENU
 *------------------------------------------------*/
.menu {
  height: 100%;
}

.menu__list {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  height: 100%;
}

.menu__item {
  padding: 1.6rem;
}

.menu__link {
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  font-weight: 600;
  text-decoration: none;
  letter-spacing: .021rem;
  text-transform: uppercase;
  height: 4rem;
  opacity: 1;
  transition: 0.3s ease;
}

.menu__link:hover {
  opacity: .6;
}

.header--light .menu__link {
  color: #0E0E0E;
}

.header--dark .menu__link {
  color: var(--white);
}

/* Базовые стили меню уже определены в main.css */

/* Пункт меню с подменю */
.menu__item--has-children {
  position: relative;
}

/* Стрелка в пункте меню */
.menu__arrow {
  margin-left: 0.8rem;
  transform: rotate(180deg);
  transition: transform 0.3s;
}

.menu__item--has-children:hover .menu__arrow {
  transform: rotate(0deg);
}

/* Структура ссылки в меню */
.menu__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Выпадающее подменю */
.menu__submenu {
  position: absolute;
  top: 100%;
  left: 0;
  background: #ffffff;
  display: flex;
  flex-direction: column;
  list-style: none;
  padding: 0;
  margin: 0;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.06), 0px 0px 4px 0px rgba(0, 0, 0, 0.04);
  min-width: 24rem;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}

.menu__item--has-children:hover .menu__submenu {
  opacity: 1;
  visibility: visible;
}

/* Элементы подменю */
.menu__submenu-item {
  border-top: 1.4px solid #eeeeee;
  display: flex;
  width: 100%;
}

.menu__submenu-item--first {
  border-top: none;
}

.menu__submenu-link {
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: -0.02rem;
  color: var(--header-bg-dark);
  text-decoration: none;
  padding: 1.4rem 3.2rem 1.4rem 1.6rem;
  display: flex;
  align-items: center;
  min-height: 2.4rem;
  width: 100%;
  transition: background-color 0.3s, color 0.3s;
}

.menu__submenu-link:visited,
.menu__submenu-link:focus-visible,
.menu__submenu-link:focus-within {
  color: var(--header-bg-dark);
}

.menu__submenu-link:hover {
  color: var(--white);
  background-color: var(--header-bg-dark);
}

/* Активный пункт подменю */
.menu__submenu-item--active .menu__submenu-link {
  background-color: #0e0e0e;
  color: #ffffff;
}

/* Текст подменю */
.menu__submenu-text {
  display: block;
  width: 100%;
}

/* Адаптивные стили для меню */
@media (max-width: 1079px) {
  .menu__submenu {
    width: 100%;
    max-width: 32rem;
  }
}

@media (max-width: 767px) {
  /* Мобильные стили для подменю, если необходимы */
  .menu__submenu {
    position: static;
    box-shadow: none;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s;
  }
  
  .menu__item--has-children.expanded .menu__submenu {
    max-height: 50rem; /* Примерное значение, должно быть достаточным для содержимого */
  }

  .menu__item--has-children .menu__arrow {
    transform: rotate(180deg);
  }
  
  .menu__item--has-children.expanded .menu__arrow {
    transform: rotate(0deg);
  }
}


/*------------------------------------------------
 * SECTION: PROMO MAIN
 *------------------------------------------------*/
 .promo-main {
  position: relative;
  padding: 4rem;
  height: 74.8rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='404' height='668' viewBox='0 0 404 668' fill='none'%3E%3Cpath d='M165.34 621.903L335.151 667.658L379.178 504.258L498.559 624.033L623.112 499.765L503.719 379.979L667.077 336.408L621.819 166.385L458.4 209.973L502.418 46.6072L332.608 0.852204L288.587 164.226L169.199 44.444L44.6459 168.711L164.067 288.526L0.638368 332.115L45.8961 502.138L209.358 458.539L165.34 621.903Z' fill='%23EAEAEA'/%3E%3C/svg%3E");
  background-size: 40.4rem 66.8rem;
  background-position: bottom right;
  background-repeat: no-repeat;
}

.promo-main__content {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.promo-main__title {
  margin: 0 0 3.2rem;
  font-size: 7.6rem;
  font-style: normal;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.228rem;
}

.promo-main__text {
  color: #0E0E0E;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 140%;
  letter-spacing: -0.009rem;
  max-width: 70rem;
}

.promo-main__stories {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

.promo-main__story-item {
  width: calc(25% - 1.5rem);
}

.promo-main__story-image {
  position: relative;
  overflow: hidden;
}

.promo-main__story-img {
  width: 100%;
  height: auto;
  border-radius: 0.5rem;
  transition: transform 0.3s ease;
}

.promo-main__story-img:hover {
  transform: scale(1.05);
}

.promo-main__story-title {
  margin-top: 1rem;
  font-size: 1.8rem;
  font-weight: 500;
}

.promo-main__bottom {
  display: flex;
  justify-content: space-between;
  align-items: end;
  width: 100%;
}

.promo-main__contacts {
  display: flex;
  align-items: center;
  gap: .8rem;
}

.promo-main__contact {
  padding: 0 1rem;
  border-radius: 3.2rem;
  border: .15rem solid var(--header-bg-dark);
  color: var(--header-bg-dark);
  text-align: center;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 130%;
  letter-spacing: 0.021rem;
  text-transform: uppercase;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 3rem;
  transition: .3s ease-in-out;
}

a.promo-main__contact:hover {
  background-color: var(--orange-bg);
  border-color: var(--orange-bg);
  color: var(--button-text);
}

.promo-main__button {
  display: none;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .promo-main {
    padding: 0 2.4rem 6.4rem;
    height: auto;
    background-size: 20.4rem 35.8rem;
    background-position: right 18.8rem;
    height: 44.8rem;
  }
  
  .promo-main__title {
      margin-bottom: 2.4rem;
      font-size: 3.8rem;
      letter-spacing: -0.114rem;
  }
  
  .promo-main__text {
      margin-top: 2.4rem;
      margin-bottom: 5.6rem;
      font-size: 1.5rem;
      letter-spacing: -0.0075rem;
  }
  .promo-main__button {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 1.2rem 1.6rem 1.2rem 2.4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 5.2rem;
    font-size: 1.2rem;
    letter-spacing: 0.014rem;
    font-weight: 700;
    color: var(--white);
    background-color: var(--orange-bg);
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    transition: opacity 0.3s ease;
  }
  .promo-main__contact {
    display: none;
  }

  .promo-main__bottom {
    order: 1;
  }

  .promo-main__top {
    order: 2;
  }
  
  .promo-main__stories {
    display: flex;
    gap: 1.5rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 1rem;
    margin: 0 -2rem;
    padding: 0 2rem;
    scroll-snap-type: x mandatory;
  }
  
  .promo-main__story-item {
    width: calc(33.333% - 1.33rem);
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .promo-main {
    padding: 1.6rem 1.6rem 6.4rem;
    height: auto;
    background-image: none;
  }
  
  .promo-main__title {
    margin: 0 0 1.6rem;
    font-size: 3.8rem;
    letter-spacing: -0.114rem;
  }

  .promo-main__text {
    margin-top: 2.4rem;
    margin-bottom: 5.6rem;
    font-size: 1.5rem;
    letter-spacing: -0.0075rem;
    max-width: 100%;
  }

  .promo-main__title br,
  .promo-main__text br {
    display: none;
  }

  .promo-main__bottom {
    
  }
  
  .promo-main__stories {
    display: flex;
    gap: 1.5rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 1rem;
    margin: 0 -2rem;
    padding: 0 2rem;
    scroll-snap-type: x mandatory;
  }
  
  .promo-main__story-item {
    width: 70%;
    min-width: 20rem;
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  .promo-main__button {
    height: 6.4rem;
  }
}

/*------------------------------------------------
* SECTION: PROMO CTA
*------------------------------------------------*/
.promo-cta {
  padding: 4rem;
  position: relative;
  background-color: #0e0e0e;
  color: #ffffff;
  overflow: hidden;
  min-height: 74.8rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.promo-cta__bg-vector {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  bottom: 0;
  background-repeat: no-repeat;
  pointer-events: none;
  background-position: bottom right;
  background-size: 90rem;
  z-index: 1;
}

.promo-cta__bg-decor {
  position: absolute;
  bottom: 0;
  right: 0;
  height: 100%;
  width: 36rem;
}

.promo-cta__content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  z-index: 2;
}

/* Add overlay for better text readability when using bg image */
.promo-cta::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 1;
  display: none;
}

.promo-cta[style*="background-image"]::before {
  display: block;
}

/* Title and text styling */
.promo-cta__title {
  font-size: 7.6rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  margin: 0;
  max-width: 136rem;
}

.promo-cta__text {
  font-size: 1.8rem;
  line-height: 140%;
  letter-spacing: -0.005em;
  font-weight: 400;
  color: #838383;
  max-width: 48.8rem;
  margin: 0;
}

.promo-cta__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem 3rem;
  color: var(--button-text);
  font-size: 1.4rem;
  font-weight: 700;
  border-radius: 0;
  line-height: normal;
  letter-spacing: -0.021rem;
  gap: 1.6rem;
  cursor: pointer;
  text-decoration: none;
  width: fit-content;
  text-transform: uppercase;
  transition: background-color 0.2s ease-in-out;
}

.promo-cta__button svg{
  width: 3.2rem;
  height: 3.2rem;
  transform: rotate(0deg);
  transition: transform 0.2s ease-in-out;
}

.promo-cta__button:hover {
  background-color: #d4482f!important;
}


.promo-cta__button:hover svg{
  transform: rotate(45deg);
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .promo-cta {
    padding: 3.2rem 2.4rem;
    min-height: 55.6rem;
  }
  
  .promo-cta__bg-vector {
    background-size: 52rem;
  }
  
  .promo-cta__content {
    gap: 2.4rem;
  }
  
  .promo-cta__title {
    font-size: 3.8rem;
    max-width: 55rem;
  }
  
  .promo-cta__text {
    font-size: 1.5rem;
    max-width: 35rem;
  }

  .promo-cta__button {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    font-size: 1.2rem;
    letter-spacing: -0.018rem;
    z-index: 5;
    height: 5.6rem;
  }

  .promo-cta__button svg {
    display: none;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .promo-cta {
    padding: 1.6rem;
    min-height: 60rem;
  }
  
  .promo-cta__content {
    gap: 1.6rem;
  }
  
  .promo-cta__breadcrumbs {
    gap: 0.4rem;
  }
  
  .promo-cta__breadcrumb-link,
  .promo-cta__breadcrumb-separator,
  .promo-cta__breadcrumb-current {
    font-size: 1.2rem;
  }
  
  .promo-cta__bg-vector {
    background-size: 100%;
  }
  
  .promo-cta__title {
    font-size: 3.8rem;
    font-weight: 600;
    line-height: 100%; /* 3.8rem */
    letter-spacing: -0.114rem;
  }
  
  .promo-cta__text {
    margin-top: 1rem;
    font-size: 1.5rem;
    line-height: 140%; /* 2.1rem */
    letter-spacing: -0.0075rem;
  }
  
  .promo-cta__button {
      width: 100%;
  }
}

/*------------------------------------------------
* SECTION: SEARCH
*------------------------------------------------*/
.search-input {
  font-size: 2.6rem;
  line-height: 100%;
  letter-spacing: -0.013rem;
  vertical-align: middle;
  border: 1px solid #fff !important;
  width: 100%;
  height: 5.5rem;
}

.search-inpu::placeholder {
  color: #DFDFDF;
}

/* Base Styles */
.search-results {
  position: absolute;
  top: 5.5rem;
  left: 0;
  right: 0;
  margin: 0.8rem -4rem 0;
  z-index: 100;
  max-height: 100%;
  overflow-y: auto;
}

.search-result__item {
  padding: 1.2rem 4rem;
  border-top: 1.4px solid #EEEEEE;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.search-result__item:last-child {
  margin-bottom: 0;
}

.search-result__item:hover {
  background-color: var(--header-bg-dark);
}

.search-result__item-content {
  flex: 1;
  overflow: hidden;
  padding-right: 1.6rem;
}

.search-result__item-title {
  font-size: 1.6rem;
  font-weight: 500;
  color: var(--text-color-light);
  margin-bottom: 0.4rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: 0.2s ease;
}

.search-result__item:hover .search-result__item-title {
  color: var(--white);
}

.search-result__item-posttype {
  padding: .6rem;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  color: #9A9A9A;
  width: fit-content;
  background-color: #EAEAEA;
  transition: 0.2s ease;
}

.search-result__item:hover .search-result__item-posttype {
  color: var(--white);
  background-color: #212121;
}

.search-result__item-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.search-result__item-icon svg {
  width: 2.4rem;
  height: 2.4rem;
}

.search-result__item a {
  text-decoration: none;
  color: inherit;
  display: block;
}

.search-result__empty,
.search-result__loading,
.search-result__error {
  padding: 2rem;
  text-align: center;
  color: #838383;
  font-size: 1.4rem;
}

/* Focus styles for keyboard navigation */
.search-result__item:focus-within {
  background-color: rgba(255, 255, 255, 0.1);
  outline: none;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .search-results {
      padding: 1.2rem 0;
      margin: 0.8rem 0 0;
  }

  .search-result__item {
      padding: 1rem 0;
  }

  .search-result__item-title {
      font-size: 1.5rem;
  }

  .search-result__item-posttype {
      font-size: 1.1rem;
  }

  .search-result__item-icon {
      width: 3.6rem;
      height: 3.6rem;
  }

  .search-result__item-icon svg {
      width: 2.2rem;
      height: 2.2rem;
  }

  .search-result__empty,
  .search-result__loading,
  .search-result__error {
      padding: 1.6rem;
      font-size: 1.3rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .search-results {
      padding: 0;
      margin: 0.6rem 0 0;
      height: calc(100svh - 5.5rem - 0.8rem - 3.2rem - 1.6rem);
  }

  .search-result__item {
      padding: 0.8rem 0;
      margin-bottom: 0.3rem;
      border-radius: 0.6rem;
  }

  .search-result__item-content {
      padding-right: 0.8rem;
  }

  .search-result__item-title {
      font-size: 1.4rem;
  }

  .search-result__item-posttype {
      font-size: 1rem;
  }

  .search-result__item-icon {
      width: 3.2rem;
      height: 3.2rem;
  }

  .search-result__item-icon svg {
      width: 2rem;
      height: 2rem;
  }

  .search-result__empty,
  .search-result__loading,
  .search-result__error {
      padding: 1.2rem;
      font-size: 1.2rem;
  }
}

/* Dark mode or high-contrast mode enhancements */
@media (prefers-color-scheme: dark) {
  .search-result__item:focus-within {
      outline: 1px solid #ffffff;
      background-color: rgba(255, 255, 255, 0.15);
  }
}

/*------------------------------------------------
* SECTION: BRANDS
*------------------------------------------------*/
.brands {
  background-color: var(--header-bg-dark);
}

.brands__container {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}

.brands__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 11rem;
  background-color: var(--header-bg-dark);
  overflow: hidden;
  transition: .3s ease-in-out;
}

.brands__item::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--orange-bg);
  transform: translateY(100%);
  transition: transform 0.3s ease;
  z-index: 1;
}

.brands__item:hover::before {
  transform: translateY(0);
}

.brands__logo {
  position: relative;
  height: 11rem;
  width: auto;
  z-index: 2;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .brands {
      padding: 0;
  }
  
  .brands__item {
    height: 7.2rem;
    width: 11rem;
    flex: 0 0 11rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .brands__container {
    display: flex;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .brands__container::-webkit-scrollbar {
    display: none;
  }
}

/*------------------------------------------------
* SECTION: BIG IMAGE WITH TAGS
*------------------------------------------------*/
.big-image-tags {
  
}

.big-image-tags__container {
  position: relative;
}

.big-image-tags__image {
  width: 100%;
  height: auto;
  display: block;
}

.big-image-tags__tags {
  position: absolute;
  left: 4rem;
  bottom: 4rem;
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
}

.big-image-tags__tag {
  display: inline-flex;
  padding: 1rem;
  background-color: var(--header-bg-light);
  color: var(--text-color-light);
  border-radius: 3rem;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 130%; /* 1.82rem */
  letter-spacing: 0.021rem;
  text-transform: uppercase;
  transition: background-color 0.3s ease;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .big-image-tags__tags {
    left: 0;
    bottom: 0;
    padding: 2.4rem;
    display: flex;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    gap: .4rem;
    white-space: nowrap;
  }
  
  .big-image-tags__tag {
    padding: 0.5rem .9rem;
    font-size: 1rem;
    flex: 0 0 auto;
  }

  .big-image-tags__image {
      width: auto;
      max-width: 100%;
      height: auto;
      display: flex;
      justify-self: center;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .big-image-tags {
    overflow: hidden;
  }

  .big-image-tags__tags {
    padding: 1.6rem;
    gap: 1rem;
  }

  .big-image-tags__image {
      max-width: fit-content;
      height: 45rem;
  }
}

/*------------------------------------------------
* SECTION: BIG IMAGE WITH TEXT
*------------------------------------------------*/
.big-image-text {
  padding: 0;
}

.big-image-text .container {
  padding: 0;
}

.big-image-text__container {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4rem;
}

.big-image-text__image-wrapper {
  width: 100%;
  overflow: hidden;
}

.big-image-text__image {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.5s ease;
}

.big-image-text__image-wrapper:hover .big-image-text__image {
  transform: scale(1.03);
}

.big-image-text__content {
  position: absolute;
  bottom: 4rem;
  left: 4rem;
  padding: 4rem 8rem 6rem 4rem;
  max-width: 64rem;
  background-color: var(--white);
  display: flex;
  flex-direction: column;
  gap: 4rem;
}

.big-image-text__title {
  font-size: 3.2rem;
  font-weight: 600;
  line-height: 110%; /* 3.52rem */
  letter-spacing: -0.064rem;
}

.big-image-text__text {
  font-size: 1.8rem;
  line-height: 140%; /* 2.52rem */
  letter-spacing: -0.009rem;
}

.big-image-text__text p {
  margin-bottom: 1.5rem;
}

.big-image-text__text p:last-child {
  margin-bottom: 0;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .big-image-text {
      padding: 0;
  }

  .big-image-text__container {
    gap: 0;
  }
  
  .big-image-text__content {
    position: relative;
    padding: 3.2rem 2.4rem 4.8rem;
    max-width: 100%;
    bottom: 0;
    left: 0;
    gap: 2.4rem;  
  }

  .big-image-text__title {
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 100%; /* 3.2rem */
    letter-spacing: -0.096rem;
    max-width: 55rem;
  }
  
  .big-image-text__text {
    font-size: 1.4rem;
    line-height: 140%; /* 1.96rem */
    letter-spacing: -0.007rem;
    max-width: 55rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .big-image-text {
      padding: 0;
  }
  
  .big-image-text__container {
      gap: 0;
  }

  .big-image-text__content {
    padding: 3.2rem 1.6rem 4.8rem;
  }
  
  .big-image-text__title {
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 110%; /* 2.64rem */
    letter-spacing: -0.048rem;
  }
  
  .big-image-text__text p {
      margin-bottom: 1.2rem;
  }
}

/*------------------------------------------------
 * SECTION: THREE POSTS
 *------------------------------------------------*/
 .three-posts {
  position: relative;
  background-color: var(--header-bg-dark);
  color: var(--white);
}

.three-posts__header {
  padding: 10rem 4rem 4rem;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

.three-posts__title {
  min-height: 7.2rem;
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%; /* 6.4rem */
  letter-spacing: -0.192rem;
}

.three-posts__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.three-posts__item {
  position: relative;
  background: #0E0E0E;
}

.three-posts__item-link {
  display: block;
  height: 100%;
  color: inherit;
  text-decoration: none;
  transition: transform 0.3s ease;
}

.three-posts__img-box {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  z-index: 0;
}

.three-posts__img-box img {
  width: 100%;
}

.three-posts__item-image {
  position: relative;
  overflow: hidden;
  height: 55rem;
}

.three-posts--videos .three-posts__item-image {
  height: 30rem;
}

.three-posts__item-image:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-image: linear-gradient(#0e0e0e00 0%, #0e0e0e 80%, #0e0e0e 100%);
}

.three-posts__item-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.three-posts__item-content {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 4rem;
  width: 100%;
}

.three-posts__item-soon {
  position: relative;
  padding: 0 1rem;
  border-radius: 3.2rem;
  border: .15rem solid rgba(255, 255, 255, 0.25);
  margin-top: 1.6rem;
  background-color: var(--text-color-light);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 3rem;
  color: var(--white);
  text-align: center;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 130%; /* 1.82rem */
  letter-spacing: 0.021rem;
  text-transform: uppercase;
  z-index: 1;
  transition: .3s ease-in-out;
}

.three-posts__item-title {
  margin-bottom: 1.6rem;
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 100%; /* 2.6rem */
  letter-spacing: -0.052rem;
  display: flex;
  align-items: center;
  gap: 1.2rem;
}

.three-posts__item-title span {
  word-wrap: break-word;
  width: auto;
  max-width: calc(100% - 3.6rem); /* Ensure it doesn't overflow container */
  text-overflow: ellipsis;
  overflow: hidden;
  display: flex;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.three-posts__item-title svg {
  opacity: 0;
  transform: translateX(-5px);
  transition: transform .3s ease-in-out;
  flex-shrink: 0;
}

.three-posts__item:hover .three-posts__item-title svg {
  height: 2.4rem;
  width: 2.4rem;
  opacity: 1;
  transform: translateX(0);
}

.three-posts--videos .three-posts__item-title {
  margin-bottom: .8rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 110%; /* 2.6rem */
  letter-spacing: -0.052rem;
}

/* .three-posts--videos .three-posts__item-title span {
  max-width: 32rem;
  width: auto;
  overflow: hidden;
  text-overflow: ellipsis;
} */

.three-posts__item-text {
  font-size: 1.4rem;
  line-height: 130%; /* 1.82rem */
  letter-spacing: -0.007rem;
  color: var(--text-color-gray);
  min-height: 5.46rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  transition: color .3s ease-in-out;
}

.three-posts__item-count {
  position: relative;
  padding: 0 1rem;
  border-radius: 3.2rem;
  border: .15rem solid rgba(255, 255, 255, 0.25);
  background-color: var(--text-color-light);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  max-height: 3rem;
  height: 100%;
  gap: 1rem;
  color: var(--white);
  text-align: center;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 130%; /* 1.82rem */
  letter-spacing: 0.021rem;
  text-transform: uppercase;
  z-index: 1;
  transition: .3s ease-in-out;
}

.three-posts__item-source {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.4rem;
  line-height: 130%;
  color: #838383;
}

.three-posts__item-source svg {
  height: 2.4rem;
  width: 2.4rem;
  flex: 0 0 2.4rem;
}

.three-posts__footer {
  display: flex;
  justify-content: flex-end;
}

.three-posts__all-link {
  padding: 1.2rem 1.6rem 1.2rem 2.4rem;
  display: flex;
  align-items: center;
  background-color: #212121;
  gap: 1.6rem;
  font-size: 1.4rem;
  font-weight: 700;
  color: inherit;
  text-decoration: none;
}

.three-posts__all-link:visited,
.three-posts__all-link:active,
.three-posts__all-link:hover {
  color: var(--white);
}

.three-posts__all-link svg {
  height: 3.2rem;
  width: 3.2rem;
  transform: rotate(0);
  transition: transform 0.2s ease;
}

.three-posts__all-link:hover svg {
  transform: rotate(45deg);
}

/* Services specific styles */
.three-posts--services .three-posts__item {
  padding: 4rem;
  border-right: .2rem solid #262626;
  border-top: .2rem solid #262626;
  height: 55rem;
}

.three-posts--services .three-posts__item:last-child {
  border-right: none;
}

.three-posts--services .three-posts__item-link {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.three-posts--services .three-posts__item-title svg {
  position: relative;
  top: .4rem;
  height: 2.4rem;
  width: 2.4rem;
  opacity: 0;
  transform: translateX(-0.5rem);
  transition: transform .3s ease-in-out;
}

.three-posts--services .three-posts__item-link:hover .three-posts__item-title svg {
  transform: translateX(0rem);
  opacity: 1;
}

.three-posts--services .three-posts__item-link:hover .three-posts__item-count {
  background: var(--white);
  color: var(--text-color-light);
}

.three-posts__item-link:active,
.three-posts__item-link:visited,
.three-posts__item-link:focus,
.three-posts__item-link:hover {
  color: var(--white);
}

.post-type-archive-project .three-posts .container,
.post-type-archive .follow-us .container {
  padding: 0;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .three-posts {
      padding: 0 0 6.4rem;
  }
  .three-posts.three-posts--services,
  .three-posts.three-posts--projects {
      padding: 0;
  }
  
  /* .three-posts__grid {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
  } */

  .three-posts__grid::-webkit-scrollbar {
    display: none;
  }
  
  .three-posts__title {
      font-size: 3.6rem;
      min-height: auto;
  }
  
  .three-posts__title br {
      display: none;
  }
  
  .three-posts__header {
    padding: 5.6rem 2.4rem 3.2rem;
  }

  .three-posts--videos .three-posts__item-image {
      height: 25rem;
  }
  
  .three-posts__item-title {
      font-size: 2rem;
      letter-spacing: -0.04rem;
  }

  .three-posts__grid {
    display: flex;
    overflow-x: auto;
  }

  .three-posts__grid::-webkit-scrollbar {
    display: none;
  }

  .three-posts__item {
    height: 40rem;
    width: 100%;
    width: 32rem;
    flex: 0 0 32rem;
  }
  
  .three-posts--services .three-posts__item {
    min-height: 30rem;
    height: 40rem;
    padding: 2.4rem;
  }

  .three-posts--videos .three-posts__item {
    height: 27rem;
    width: 100%;
    max-width: 48rem;
    flex: 0 0 100%;
    overflow: hidden;
  }

  .three-posts__item-soon {
    position: relative;
    padding: 0 .9rem;
    margin-top: 2.4rem;
    height: 2.3rem;
    font-size: 1rem;
  }
  
  .three-posts__item-content {
    padding: 2.4rem;
  }
  
  .three-posts__item-title {
    font-size: 2rem;
    margin-bottom: 1.2rem;
  }
  
  .three-posts--videos .three-posts__item-title {
    font-size: 1.8rem;
    line-height: 110%;
    margin-bottom: .8rem;
  }

  .three-posts__item-text {
    font-size: 1.3rem;
    line-height: 130%;
    padding-right: 2.4rem;
    text-overflow: ellipsis;
    overflow: hidden;
    display: flex;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }

  .three-posts__item-image {
    height: 40rem;
  }

  .three-posts--videos .three-posts__item-image {
    height: 27rem;
  }
  

  .three-posts__footer {
    justify-content: center;
  }
  
  /* .three-posts--services .three-posts__item {
      padding: 2.4rem;
      border-bottom: .15rem solid rgba(255, 255, 255, 0.2);
      height: 40rem;
      width: 32rem;
      flex: 0 0 32rem;

  } */
  
  .three-posts__all-link {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 1.6rem 0 1.6rem;
    width: 100%;
    height: 6.4rem;
    justify-content: center;
    font-size: 1.2rem;
  }

  .three-posts__all-link svg {
    display: none;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .three-posts {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .three-posts__header {
    padding: 5.6rem 1.6rem 3.2rem;
  }

  .three-posts__grid::-webkit-scrollbar {
    display: none;
  }

  .three-posts--videos .three-posts__grid {
    display: grid;
    grid-template-columns: 1fr;
    overflow-x: visible;
  }

  .three-posts__item {
    height: 40rem;
    width: 100%;
    max-width: 32rem;
    flex: 0 0 100%;
  }

  .three-posts--videos .three-posts__item {
    height: 28rem;
    width: 100%;
    max-width: 48rem;
    flex: 0 0 100%;
    overflow: hidden;
  }
  
  .three-posts--services .three-posts__item:last-child {
      border-bottom: none;
  }

  .three-posts__item-soon {
    margin-top: 1.2rem;
  }
  
  .three-posts__item-image {
      height: 40rem;
  }
  
  .three-posts--videos .three-posts__item-image {
    height: 25rem;
  }
  
  .three-posts__item-content {
    padding: 2rem;
  }
  
  .three-posts__item-title {
    font-size: 2rem;
    margin-bottom: 1.2rem;
  }

  .three-posts__item-text {
    padding-right: 2.4rem;
  }
  
  .three-posts__footer {
    justify-content: center;
  }
}

/*------------------------------------------------
 * SECTION: EXPERT COMMENT
 *------------------------------------------------*/
 .expert-comment {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
}

/* Left side - Text content */
.expert-comment__content {
  flex: 1;
  background-color: #fe5639;
  color: #ffffff;
  padding: 4rem;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  justify-content: flex-end;
  overflow: hidden;
  min-height: 72rem;
}

.expert-comment__content p {
  margin-bottom: 1.6rem;
}

.expert-comment__content p:last-child {
  margin-bottom: 0;
}

.expert-comment__bg-vector {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.expert-comment__bg-vector svg {
  width: 65rem;
  height: 40rem;
}

.expert-comment__text-container {
  z-index: 2;
  display: flex;
  flex-direction: column;
}

.expert-comment__header {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.expert-comment__label-wrapper {
  margin-bottom: 0;
}

.expert-comment__label {
  display: inline-flex;
  padding: 1rem;
  background-color: #ffffff;
  border-radius: 3.2rem;
  color: #0e0e0e;
  font-size: 1.4rem;
  line-height: 130%;
  letter-spacing: 0.01em;
  font-weight: 600;
  height: 3rem;
  align-items: center;
  text-transform: uppercase;
}

.expert-comment__name {
  margin: 0 0 2.4rem;
  font-size: 6.4rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
}

.expert-comment__quote {
  font-size: 1.8rem;
  line-height: 140%;
  letter-spacing: -0.005em;
  font-weight: 400;
  max-width: 64.4rem;
}

.expert-comment__button {
  padding: 1.2rem 1.6rem 1.2rem 2.4rem;
  margin-top: 8rem;
  display: inline-flex;
  align-items: center;
  gap: 1.6rem;
  background-color: #d4482f;
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: -0.015em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color .2s ease;
  max-width: fit-content;
}

.expert-comment__button:hover {
  background-color: #c13d25;
}

.expert-comment__button-text,
.expert-comment__button-text:visited {
  min-height: 3.2rem;
  display: flex;
  align-items: center;
  color: var(--white);
}

.expert-comment__button svg {
  width: 3.2rem;
  height: 3.2rem;
  transform: rotate(0deg);
  transition: .2s ease;
}

.expert-comment__button:hover svg {
  transform: rotate(45deg);
}

.expert-comment__corner {
  position: absolute;
  right: 0;
  top: 3.2rem;
  width: 3.2rem;
  height: 3.2rem;
}

/* Right side - Image */
.expert-comment__image-container {
  flex: 1;
  background-color: #f1f1f1;
  position: relative;
  overflow: hidden;
  min-height: 72rem;
}

.expert-comment__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  position: absolute;
  inset: 0;
}

.expert-comment__overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(14, 14, 14, 0.16);
  z-index: 1;
}

.expert-comment__corner-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 3.2rem;
  height: 3.2rem;
  z-index: 2;
  transform: translate(-3.2rem, -3.2rem);
}

.expert-comment__tags {
  position: absolute;
  left: 4rem;
  bottom: 4rem;
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  z-index: 2;
}

.expert-comment__tag {
  display: flex;
  padding: 1rem;
  background-color: #f1f1f1;
  border-radius: 3.2rem;
  height: 3rem;
  align-items: center;
  box-shadow: 0 0.4rem 0.8rem rgba(0, 0, 0, 0.06), 0 0 0.4rem rgba(0, 0, 0, 0.04);
}

.expert-comment__tag-text {
  color: #0e0e0e;
  font-size: 1.4rem;
  line-height: 130%;
  letter-spacing: 0.01em;
  font-weight: 600;
  text-transform: uppercase;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .expert-comment {
    position: relative;
  }

  .expert-comment__content {
    padding: 3.2rem 2.4rem 8.4rem;
    position: unset;
    min-height: 51.4rem;
  }
  
  .single-expert .expert-comment__content {
    position: unset;
    padding: 3.2rem 2.4rem;
  }
  
  .expert-comment__text-container {
    gap: 1.6rem;
  }

  .expert-comment__label {
    padding: 0.8rem 0.9rem;
    font-size: 1rem;
    line-height: 130%; /* 1.3rem */
    letter-spacing: 0.01rem;
    height: 2.3rem;
  }

  .expert-comment__header {
    gap: 1.2rem;
  }
  
  .expert-comment__name {
    margin: 0;
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 100%; /* 3.2rem */
    letter-spacing: -0.096rem;
  }

  .expert-comment__bg-vector svg {
    width: 35rem;
    height: 20rem;
  }
  
  .expert-comment__quote {
    font-size: 1.4rem;
    line-height: 130%; /* 1.82rem */
    letter-spacing: -0.007rem;
  }
  
  .expert-comment__image-container {
    min-height: 51.4rem;
  }
  
  .expert-comment__tags {
    left: 2.4rem;
    bottom: 8.8rem;
  }

  .single-expert .expert-comment__tags {
    bottom: 2.4rem;
  }

  .expert-comment__tag {
    padding: 0.8rem 0.9rem;
    height: 2.3rem;
  }

  .expert-comment__tag-text {
    font-size: 1rem;
    font-weight: 600;
    line-height: 130%; /* 1.3rem */
    letter-spacing: 0.01rem;
  }

  .expert-comment__button {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 1.6rem 1.6rem 1.6rem 2.4rem;
    width: 100%;
    display: flex;
    max-width: 100%;
    justify-content: center;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: -0.018rem;
  }
  .expert-comment__button svg {
    display: none;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .expert-comment__content {
    position: relative;
    min-height: unset;
    padding: 3.2rem 1.6rem 9.8rem;
    order: 2;
  }

  .expert-comment__bg-vector { 
    display: none;
  }
  
  .expert-comment {
    grid-template-columns: 1fr;
  }
  
  .expert-comment__text-container {
    gap: 2.4rem;
  }
  
  .expert-comment__header {
    gap: 1.2rem;
  }
  
  .expert-comment__name {
    font-size: 3.2rem;
    letter-spacing: -0.096rem;
  }
  
  .expert-comment__quote {
    font-size: 1.4rem;
    line-height: 130%; /* 1.82rem */
    letter-spacing: -0.007rem;
  }

  .expert-comment__quote p:last-child {
    margin: 0;
  }
  
  .expert-comment__image-container {
    min-height: 40rem;
  }
  
  .expert-comment__tags {
    left: 1.6rem;
    bottom: 2.4rem;
  }
  
  .expert-comment__button {
    width: 100%;
  }
}

/*------------------------------------------------
 * SECTION: SERVICE TYPES
 *------------------------------------------------*/
 .service-types {
  background-color: #0e0e0e;
  color: #ffffff;
}

/* Header */
.service-types__header {
  padding: 10rem 4rem 4rem 4rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.service-types__header .container {
  display: flex;
  flex-direction: row;
  gap: 4rem;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
}

.service-types__title {
  color: #ffffff;
  font-size: 6.4rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  margin: 0;
  min-height: 7.2rem;
  flex: 1;
}

.service-types__view-all {
  display: flex;
  flex-direction: row;
  gap: 1.6rem;
  align-items: center;
  padding: 1.2rem 1.6rem 1.2rem 2.4rem;
  background-color: #212121;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.service-types__view-all:hover {
  background-color: #2f2f2f;
}

.service-types__view-all-text {
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: -0.015em;
  text-transform: uppercase;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
}

.service-types__arrow {
  width: 3.2rem;
  height: 3.2rem;
  flex-shrink: 0;
}

/* Content */
.service-types__content {
  display: flex;
  padding: 0rem 4rem 4rem 4rem;
  flex-direction: column;
  align-items: flex-start;
}

.service-types__row {
  display: flex;
  flex-direction: row;
  gap: 4rem;
  width: 100%;
  height: 18rem;
}

.service-types__row-separators {
  display: flex;
  align-items: flex-start;
  gap: 8rem;
  align-self: stretch;
}

.service-types__row-separator {
  margin: 4rem 0;
  display: flex;
  flex-direction: row;
  width: 100%;
  height: 2px;
  background-color: #262626;
}

.service-types__item {
  display: flex;
  flex-direction: row;
  flex: 1;
  max-width: calc(50% - 4rem);
  position: relative;
  cursor: pointer;
}

.service-types__separator {
  width: 2px;
  height: 100%;
  margin-top: 2px;
  background-color: #262626;
}

.service-types__item-content {
  padding: 2.4rem 0;
  display: flex;
  flex-direction: row;
  gap: 3.2rem;
  align-items: center;
  justify-content: space-between;
  flex: 1;
  overflow: hidden;
}

.service-types__item-header {
  padding-right: 4.8rem;
  display: flex;
  flex-direction: column;
  height: 100%;
  gap: 1.6rem;
  width: 100%;
}

.service-types__item-title {
  color: #ffffff;
  font-size: 2.6rem;
  line-height: 100%;
  letter-spacing: -0.02em;
  font-weight: 500;
  margin: 0;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
}

.service-types__item-description {
  color: #808080;
  font-size: 1.4rem;
  line-height: 130%;
  letter-spacing: -0.005em;
  font-weight: 400;
  transition: color 0.2s ease-in-out;
}

.service-types__item:hover .service-types__item-description {
  color: var(--white);
}

.service-types__item-arrow {
  flex-shrink: 0;
  width: 5.6rem;
  height: 5.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(0deg);
  transition: transform 0.2s ease-in-out;
}

.service-types__item:hover .service-types__item-arrow {
  transform: rotate(45deg);
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .service-types {
    position: relative;
  }

  .service-types__header {
    padding: 5.6rem 2.4rem 3.2rem 2.4rem;
  }
  
  .service-types__title {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 100%; /* 3.6rem */
    letter-spacing: -0.108rem;
  }

  .service-types__view-all {
    position: absolute;
    bottom: 0;
    left: 0;
  }
  
  .service-types__content {
    padding: 0 2.4rem 8.4rem 2.4rem;
  }
  
  .service-types__row {
    gap: 2.4rem;
    height: 21rem;
  }

  .service-types__item-header {
    padding-right: 0;
    gap: 1.2rem;
  }
  
  .service-types__item {
    position: relative;
    padding: 1.6rem 0;
    max-width: calc(50% - 2.4rem);
  }
  
  .service-types__item-content {
    padding: 0;
  }
  
  .service-types__item-title {
    padding-right: 4.8rem;
    font-size: 2rem;
    font-weight: 500;
    line-height: 100%; /* 2rem */
    letter-spacing: -0.04rem;
  }
  
  .service-types__item-arrow {
    position: absolute;
    top: 1.6rem;
    right: 0;
    width: 2.4rem;
    height: 2.4rem;
  }
  
  .service-types__item-arrow svg {
    width: 2.4rem;
    height: 2.4rem;
  }

  .service-types__view-all {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    justify-content: center;
    height: 6.4rem;
    z-index: 5;
  }

  .service-types__item-description {
    font-size: 1.3rem;
    line-height: 130%;
    letter-spacing: -0.0065rem;
  }

  .service-types__view-all svg {
    display: none;
  }

  .service-types__view-all-text {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: -0.018rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .service-types__header {
    padding: 4rem 1.6rem 2.4rem 1.6rem;
  }
  
  .service-types__header .container {
    flex-direction: column;
    gap: 2rem;
    align-items: flex-start;
  }
  
  .service-types__title {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 100%; /* 3.6rem */
    letter-spacing: -0.108rem;
  }
  
  .service-types__row {
    gap: 0;
    height: auto;
    flex-direction: column;
  }

  .service-types__item {
    padding: 2.4rem 0;
    max-width: 100%;
    border-bottom: 1px solid #262626;
  }

  .service-types__separator,
  .service-types__row-separators {
    display: none;
  }
  
  .service-types__view-all {
    width: 100%;
  }
  
  .service-types__content {
    padding: 0 1.6rem 6.4rem 1.6rem;
  }
  
  .service-types__item-content {
    gap: 1.6rem;
  }
  
  .service-types__item-header {
    padding-right: 0;
  }
  
  .service-types__item-title {
    font-size: 2rem;
  }
  
  .service-types__item-description {
    font-size: 1.3rem;
  }

  .service-types__row:last-child .service-types__item:last-child {
    border-bottom: none;
    padding-bottom: 3.8rem;
  }
}

/*------------------------------------------------
 * SECTION: EQUIPMENT
 *------------------------------------------------*/
 .equipment {
  background-color: #0e0e0e;
  color: #ffffff;
}

/* Header */
.equipment__header {
  padding: 10rem 4rem 4rem 4rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.equipment__header .container {
  display: flex;
  flex-direction: row;
  gap: 4rem;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
}

.equipment__title {
  color: #ffffff;
  font-size: 6.4rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  margin: 0;
  min-height: 7.2rem;
  flex: 1;
}

.equipment__view-all {
  display: flex;
  flex-direction: row;
  gap: 1.6rem;
  align-items: center;
  padding: 1.2rem 1.6rem 1.2rem 2.4rem;
  background-color: #212121;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.equipment__view-all:hover {
  background-color: #2f2f2f;
}

.equipment__view-all-text {
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: -0.015em;
  text-transform: uppercase;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
}

.equipment__arrow {
  width: 3.2rem;
  height: 3.2rem;
  flex-shrink: 0;
}

/* Content */
.equipment__content {
  display: flex;
  padding: 0rem 4rem 4rem 4rem;
  flex-direction: column;
  align-items: flex-start;
}

.equipment__row {
  display: flex;
  flex-direction: row;
  gap: 4rem;
  width: 100%;
  height: 18rem;
}

.equipment__row-separators {
  display: flex;
  align-items: flex-start;
  gap: 8rem;
  align-self: stretch;
}

.equipment__row-separator {
  margin: 4rem 0;
  display: flex;
  flex-direction: row;
  width: 100%;
  height: 1.5px;
  background-color: #262626;
}

.equipment__item {
  display: flex;
  flex-direction: row;
  flex: 1;
  max-width: calc(50% - 4rem);
  position: relative;
  cursor: pointer;
}

.equipment__separator {
  width: 1.5px;
  height: 100%;
  margin-top: 2px;
  background-color: #262626;
  min-height: 15.5rem;
}

.equipment__item-content {
  padding: 2.4rem 0;
  display: flex;
  flex-direction: row;
  gap: 4rem;
  align-items: center;
  justify-content: flex-start;
  flex: 1;
  overflow: hidden;
  text-decoration: none;
}

/* Иконка - новый элемент */
.equipment__item-icon {
  flex-shrink: 0;
  width: 11rem;
  height: 11rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.equipment__item-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.equipment__item-header {
  display: flex;
  flex-direction: column;
  height: 100%;
  gap: 1.6rem;
  flex: 1;
}

.equipment__item-title {
  color: #ffffff;
  font-size: 2.6rem;
  line-height: 100%;
  letter-spacing: -0.02em;
  font-weight: 500;
  margin: 0;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
}

.equipment__item-description {
  color: #808080;
  font-size: 1.4rem;
  line-height: 130%;
  letter-spacing: -0.005em;
  font-weight: 400;
  transition: color 0.2s ease-in-out;
}

.equipment__item:hover .equipment__item-description {
  color: var(--white);
}

.equipment__item-arrow {
  flex-shrink: 0;
  width: 5.6rem;
  height: 5.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(0deg);
  transition: transform 0.2s ease-in-out;
  margin-left: auto;
}

.equipment__item:hover .equipment__item-arrow {
  transform: rotate(45deg);
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .equipment {
    position: relative;
  }

  .equipment__header {
    padding: 5.6rem 2.4rem 3.2rem 2.4rem;
  }
  
  .equipment__title {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: -0.108rem;
    min-height: auto;
  }

  .equipment__view-all {
    position: absolute;
    bottom: 0;
    left: 0;
  }
  
  .equipment__content {
    padding: 0 2.4rem 2.4rem 2.4rem;
  }
  
  .equipment__row {
    gap: 2.4rem;
    height: auto;
  }

  .equipment__item-icon {
    margin-top: .6rem;
    width: 2.8rem;
    height: 2.8rem;
  }

  .equipment__item-content {
    gap: 1.6rem;
    align-items: flex-start;
  }

  .equipment__item-header {
    padding-right: 3.2rem;
    gap: 1.2rem;
  }
  
  .equipment__item {
    position: relative;
    padding: 1.6rem 0;
    border-bottom: 2px solid #262626;
  }
  
  .equipment__row-separator {
    display: none;
  }
  
  .equipment__item-content {
    padding: 0;
  }
  
  .equipment__item-title {
    font-size: 2rem;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: -0.04rem;
  }
  
  .equipment__item-arrow {
    position: absolute;
    top: 1.6rem;
    right: 0;
    width: 2.4rem;
    height: 2.4rem;
  }
  
  .equipment__item-arrow svg {
    width: 2.4rem;
    height: 2.4rem;
  }

  .equipment__view-all {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    justify-content: center;
    height: 6.4rem;
    z-index: 5;
  }

  .equipment__item-description {
    font-size: 1.3rem;
    line-height: 130%;
    letter-spacing: -0.0065rem;
  }

  .equipment__view-all svg {
    display: none;
  }

  .equipment__view-all-text {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: -0.018rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .equipment__header {
    padding: 4rem 1.6rem 2.4rem 1.6rem;
  }
  
  .equipment__header .container {
    flex-direction: column;
    gap: 2rem;
    align-items: flex-start;
  }
  
  .equipment__title {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: -0.108rem;
  }
  
  .equipment__row {
    gap: 0;
    height: auto;
    flex-direction: column;
  }

  .equipment__item {
    padding: 2.4rem 0;
    max-width: 100%;
  }

  .equipment__separator {
    display: none;
  }
  
  .equipment__view-all {
    width: 100%;
  }
  
  .equipment__content {
    padding: 0 1.6rem 6.4rem 1.6rem;
  }
  
  .equipment__item-content {
    gap: 1.6rem;
  }
  
  .equipment__item-header {
    padding-right: 3.2rem;
  }
  
  .equipment__item-title {
    font-size: 2rem;
  }
  
  .equipment__item-description {
    font-size: 1.3rem;
  }

  .equipment__row:last-child .equipment__item:last-child {
    border-bottom: none;
    padding-bottom: 3.8rem;
  }
}

/*------------------------------------------------
 * SECTION: TWO BLOCKS TITLE TEXT
 *------------------------------------------------*/
 .two-blocks {
  padding: 4rem 0;
  position: relative;
}

.two-blocks__angle {
  position: absolute;
  bottom: -3.2rem;
  left: 50%;
  transform: translateX(-50%);
  height: 3.2rem;
  width: 6.4rem;
  z-index: 2;
}

.two-blocks__bg {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 17.2rem;
  width: 36rem;
}

.two-blocks__wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.two-blocks__title {
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.192rem;
}

.two-blocks__text {
  padding: 1.2rem 6.4rem 0 0;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  font-size: 1.8rem;
  font-style: normal;
  font-weight: 400;
  line-height: 140%;
  letter-spacing: -0.009rem;
}

.two-blocks__text p {
  margin: 0;
}

.two-blocks__text ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .8rem;
}

.two-blocks__text li {
  display: flex;
  gap: 1.2rem;
  min-height: 2.4rem;
}

.two-blocks__text li::before {
  content: "";
  height: 1.2rem;
  width: 1.2rem;
  flex: 0 0 1.2rem;
  border-radius: 50%;
  margin: .6rem;
  background-color: var(--orange-bg);
}

.two-blocks__button {
  padding: 1.2rem 1.6rem 1.2rem 2.4rem;
  border: .15rem solid;
  border-radius: 0;
  margin-top: 8rem;
  min-height: 3.2rem;
  display: inline-flex;
  align-items: center;
  gap: 1.6rem;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: normal;
  letter-spacing: -0.021rem;
  text-transform: uppercase;
  transition: .2s ease-in-out;
}

.two-blocks__button svg {
  width: 3.2rem;
  height: 3.2rem;
  transform: rotate(0deg);
  transition: transform .2s ease-in-out;
}

.two-blocks__button:hover {
  color: var(--white);
  background-color: var(--header-bg-dark);
}

.two-blocks__button:hover svg {
  transform: rotate(45deg);
}

.two-blocks__button:hover svg path {
  stroke: var(--white);
}

.two-blocks--black {
  background-color: #0E0E0E;
  color: var(--white);
} 

.two-blocks--white {
  background-color: var(--white);
  color: var(--black);
}

.two-blocks--orange {
  background-color: var(--orange-bg);
  color: var(--white);
}

.two-blocks--white .two-blocks__button {
  border-color: #0E0E0E;
  background-color: var(--white);
  color: #0E0E0E;
}

.two-blocks--white .two-blocks__button:hover {
  border-color: #0E0E0E;
  color: var(--white);
  background-color: #0E0E0E;
}

.two-blocks--white .two-blocks__button svg path {
  stroke: var(--black);
}

.two-blocks--white .two-blocks__button:hover svg path {
  stroke: var(--white);
}

.two-blocks--orange .two-blocks__button {
  border-color: #d4482f;
  background-color: #d4482f;
  color: var(--white);
}

.two-blocks--orange .two-blocks__button:hover {
  background-color: var(--white);
  border-color: var(--white);
  color: var(--black);
}

.two-blocks--orange .two-blocks__button svg path {
  stroke: var(--white);
}

.two-blocks--orange .two-blocks__button:hover svg path {
  stroke: var(--black);
}

.two-blocks--black .two-blocks__button {
  border-color: #262626;
  color: var(--white);
  background-color: #0E0E0E;
}

.two-blocks--black .two-blocks__button:hover {
  background-color: var(--white);
  color: var(--black);
  border-color: var(--white);
}

.two-blocks--black .two-blocks__button svg path {
  stroke: var(--white);
}

.two-blocks--black .two-blocks__button:hover svg path {
  stroke: var(--black);
}

.two-blocks--black .two-blocks__angle path {
  fill: #0E0E0E;
}

.two-blocks--black .two-blocks__bg path {
  fill: #121212;
}

.two-blocks--white .two-blocks__angle path {
  fill: var(--white);
}

.two-blocks--white .two-blocks__bg path {
  fill: #EAEAEA;
}

.two-blocks--orange .two-blocks__angle path {
  fill: var(--orange-bg);
}

.two-blocks--orange .two-blocks__bg path {
  fill: #F35338;
}



/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .two-blocks {
      padding: 3.2rem .4rem 6.4rem;
  }

  .single-expert .two-blocks {
    padding: 3.2rem .4rem 0;
  }
  
  .two-blocks__wrapper {
      gap: 2.4rem;
      grid-template-columns: 1fr;
  }
  
  .two-blocks__title-column,
  .two-blocks__content-column {
      width: 100%;
      max-width: 55rem;
  }
  
  .two-blocks__title {
      font-size: 3.6rem;
  }
  
  .two-blocks__text {
      padding: 0;
      margin-bottom: 4.8rem;
      font-size: 1.4rem;
      gap: 1.6rem;
      max-width: 55rem;
      letter-spacing: -0.007rem;
  }

  .two-blocks__text p {
    margin: 0;
  }
  
  .two-blocks__bg {
    display: none;
  }

  .two-blocks__text p br,
  .two-blocks__angle {
    display: none;
  }
  .two-blocks__button {
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: #0E0E0E;
    color: var(--white);
    width: 100%;
    border-color: var(--header-bg-dark);
    padding: 1.2rem 2rem;
    height: 6.4rem;
    text-align: center;
    justify-content: center;
    font-size: 1.2rem;
    letter-spacing: -0.018rem;
    z-index: 5;
  }
  .two-blocks__button svg {
    display: none;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .two-blocks {
      padding: 3.2rem 0 6.4rem;
  }

  .two-blocks__text {
      max-width: unset;
  }

  .two-blocks__bg {
    display: none;
  }
}

/*------------------------------------------------
* SECTION: CASES
*------------------------------------------------*/
.cases {
  background-color: var(--orange-bg, #FE5639);
  color: var(--white, #FFFFFF);
}

.cases__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

/* Left side with navigation */
.cases__left {
  position: relative;
  padding: 4rem;
  display: flex;
  flex-direction: column;
}

.cases__angle {
  position: absolute;
  right: -3.2rem;
  top: 50%;
  transform: translateY(-50%);
  height: 6.4rem;
  width: 3.2rem;
  z-index: 2;
}

/* Background vector effect using ::after */
.cases__left::after {
  content: '';
  position: absolute;
  width: 50.4rem;
  height: 50.3rem;
  right: 0;
  bottom: 0;
  background-image: url('path/to/vector0.svg');
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.1;
  z-index: 1;
  pointer-events: none;
}

.cases__title {
  font-size: 6.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.192rem;
  position: relative;
  z-index: 2;
}

.cases__nav {
  margin-top: auto;
  position: relative;
  z-index: 2;
}

.cases__nav-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: .4rem;
}

.cases__nav-item {
  display: flex;
  align-items: center;
  gap: .8rem;
  cursor: pointer;
  color: #FFCCC4;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 100%; /* 1.6rem */
  letter-spacing: -0.008rem;
  transition: .3s ease-in-out;
}

.cases__nav-item--active.cases__nav-item {
  color: var(--white);
}

.cases__nav-text + svg {
  height: 2.4rem;
  width: 2.4rem;
  opacity: 0;
  transform: translateX(-0.5rem);
  transition: .3s ease-in-out;
}

.cases__nav-item--active.cases__nav-item svg {
  opacity: 1;
  transform: translateX(0rem);
}

.cases__nav-bullet {
  position: relative;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.cases__nav-bullet::before {
  content: '';
  position: absolute;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  border: .15rem solid #FFCCC4;
  background-color: transparent;
  z-index: 1;
  transition: .3s ease-in-out;
} 

.cases__nav-item--active .reviews__nav-bullet::before {
  background-color: var(--white);
  border: .15rem solid var(--white);
}

.cases__nav-progress {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.cases__nav-progress-bg {
  fill: none;
  stroke: transparent;
  stroke-width: 2;
}

.cases__nav-progress-bar {
  fill: none;
  stroke: var(--white);
  stroke-width: 2;
  transition: stroke-dashoffset 0.3s ease;
}

.cases__nav-item--active .cases__nav-bullet::before {
  background-color: var(--white);
}

.cases__nav-item--active .cases__nav-progress-bar {
  animation-name: cases-progress;
  animation-duration: 7s;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}

@keyframes cases-progress {
  from {
      stroke-dashoffset: 100;
  }
  to {
      stroke-dashoffset: 0;
  }
}

/* Right side with gallery */
.cases__right {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background-color: var(--header-bg-light, #F1F1F1);
  height: 72rem;
}

.cases__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: opacity 0.3s ease;
  width: 100%;
}

.cases__photo-wrapper {
  background-color: #ffffff;
  width: 46rem;
  height: 46rem;
  overflow: hidden;
}

.cases__photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.cases__controls {
  margin-top: 1.2rem;
  display: flex;
  gap: 0.8rem;
}

.cases__control {
  background-color: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s ease;
}

.cases__control:hover {
  opacity: 0.7;
}

.cases__bg {
  position: absolute;
  bottom: 0;
  right: 0;
  height: 30rem;
  width: 30rem;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .cases__container {
    grid-template-columns: 50% 50%;
  }

  .cases__content {
    padding: 3.2rem 2.4rem;
  }

  .cases__left {
    padding: 3.2rem 2.4rem;
  }

  .cases__title {
    font-size: 3.2rem;
    letter-spacing: -0.096rem;
  }

  .cases__photo-wrapper {
    width: 100%;
    height: 30rem;
  }

  .cases__nav-list {
    padding-left: 2.4rem;
    margin: 0 -2.4rem;
    flex-direction: row;
    gap: 1rem;
    overflow-x: auto;
  }

  .cases__nav-list::-webkit-scrollbar {
    display: none;
  }

  .cases__nav-item > svg {
    display: none;
  }

  .cases__nav-item {
    white-space: nowrap;
  }

  .cases__nav-text {
    font-size: 1.4rem;
    letter-spacing: -0.007rem;
  }

  .cases__right {
    height: 45rem;
  }

  .cases__nav-bullet {
    width: 2rem;
    height: 2rem;
  }
  
  .cases__angle {
    display: none;
  }
  
  .cases__left::after {
    opacity: 0.05;
    width: 30rem;
    height: 30rem;
    right: -10rem;
  }

  .cases__bg {
    display: none;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .cases__container {
    display: flex;
    flex-wrap: wrap;
  }
  
  .cases__left {
    padding: 3.2rem 1.6rem 3.2rem;
    max-width: 100%;
  }
  
  .cases__angle {
    right: calc(50% - 1.2rem);
    top: unset;
    bottom: -3.2rem;
    height: 4.8rem;
    width: 2.4rem;
    transform: rotate(90deg) translateY(0);
  }
  
  .cases__right {
    height: auto;
    min-height: 35rem;
    padding: 0;
    width: 100%;
    background-color: var(--white);
  }
  
  .cases__title {
    font-size: 3.6rem;
  }
  
  .cases__content {
    padding: 0;
  }

  .cases__nav-list {
    margin-top: 3rem;
    margin-right: -1.6rem;
    flex-direction: row;
    gap: 1rem;
    overflow-x: auto;
  }
  
  .cases__nav-list::-webkit-scrollbar {
    display: none;
  }

  .cases__nav-item > svg {
    display: none;
  }

  .cases__nav-item {
    white-space: nowrap;
  }
  
  .cases__photo-wrapper {
    height: 36rem;
  }
  
  .cases__left::after {
    display: none;
  }

  .cases__controls {
    margin-top: 0;
    display: flex;
    gap: 0;
    width: 100%;
  }

  .cases__control {
    height: 5.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.3s ease;
    width: 50%;
  }

  .cases__control:last-child {
    border-left: 1.5px solid #F1F1F1;
  }

  .cases__control svg {
    width: 2.4rem;
    height: 2.4rem;
  }
}

/*------------------------------------------------
 * SECTION: EXPERT COLUMN
 *------------------------------------------------*/
 .expert-column {
  background-color: #0e0e0e;
  color: #ffffff;
  border-bottom: 0.2rem solid #262626;
  padding: 4rem;
  overflow: hidden;
}

.expert-column__content {
  display: flex;
  flex-direction: row;
  gap: 4rem;
  align-items: flex-start;
  justify-content: space-between;
}

/* Left column with expert info */
.expert-column__info {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  flex: 1;
}

.expert-column__description {
  color: #ffffff;
  font-size: 2.6rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 500;
  min-height: 3.2rem;
  display: flex;
  flex-direction: column;
}

.expert-column__tags {
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  flex-wrap: wrap;
  align-items: center;
}

.expert-column__tag {
  border-radius: 3.2rem;
  border: 0.15rem solid rgba(255, 255, 255, 0.25);
  padding: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.expert-column__tag-text {
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 130%;
  letter-spacing: 0.01em;
  font-weight: 600;
  text-transform: uppercase;
}

/* Right column with photo and link */
.expert-column__visual {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
  flex-shrink: 0;
  position: relative;
}

.expert-column__photo-wrapper {
  background: #ffffff;
  border-radius: 12.4rem;
  border: 0.8rem solid #0e0e0e;
  width: 10.6rem;
  height: 10.6rem;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.expert-column__photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.expert-column__link {
  background: #ffffff;
  border-radius: 12.4rem;
  border: 0.8rem solid #0e0e0e;
  width: 10.6rem;
  height: 10.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 0;
  margin-left: -1.6rem;
  transform: rotate(0deg);
  transition: transform 0.3s ease;
  text-decoration: none;
}

.expert-column__link:hover {
  transform: rotate(45deg);
}

.expert-column__arrow {
  width: 5.6rem;
  height: 5.6rem;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .expert-column {
    padding: 3.2rem 2.4rem;
  }
  
  .expert-column__content {
    gap: 2.4rem;
  }
  
  .expert-column__description {
    font-size: 2rem;
    font-weight: 500;
    line-height: 100%; /* 2rem */
    letter-spacing: -0.04rem;
  }

  .expert-column__description br {
    display: none;
  }
  
  .expert-column__photo-wrapper,
  .expert-column__link {
    width: 8rem;
    height: 8rem;
    border-width: 8px;
  }
  
  .expert-column__arrow {
    width: 5.6rem;
    height: 5.6rem;
  }

  .expert-column__tag {
    height: 2.3rem;
    padding: .8rem .9rem;
  }

  .expert-column__tag-text {
    font-size: 1rem;
    font-weight: 600;
    line-height: 130%; /* 1.3rem */
    letter-spacing: 0.01rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .expert-column {
    padding: 2.4rem 1.6rem;
  }
  
  .expert-column__content {
    flex-direction: column;
    gap: 2rem;
  }
  
  .expert-column__info {
    width: 100%;
    gap: 1.6rem;
  }
  
  .expert-column__description {
    font-size: 1.8rem;
    line-height: 120%;
    letter-spacing: -0.03rem;
  }
  
  .expert-column__visual {
    align-self: flex-start;
  }
  
  .expert-column__photo-wrapper,
  .expert-column__link {
    width: 6.4rem;
    height: 6.4rem;
    border-width: 0.6rem;
  }
  
  .expert-column__arrow {
    width: 4rem;
    height: 4rem;
  }
  
  .expert-column__tags {
    align-items: flex-start;
    gap: 0.6rem;
  }
}


/*------------------------------------------------
 * SECTION: TEAM
 *------------------------------------------------*/
 .team {
    background-color: var(--header-bg-light);
  }

.team__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.team__left {
  padding: 4rem;
  display: flex;
  flex-direction: column;
}

.team__right {
  display: flex;
  align-items: flex-start;
}

.team__title-block {
  margin-bottom: 2rem;
}

.team__label {
  padding: 0 1rem;
  border-radius: 3.2rem;
  border: .15rem solid var(--text-color-light);
  margin-bottom: 1.6rem;
  display: inline-flex;
  align-items: center;
  height: 3rem;
  background: var(--header-bg-light);
  color: var(--text-color-light);
  text-align: center;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 130%; /* 1.82rem */
  letter-spacing: 0.021rem;
  text-transform: uppercase;
}

.team__name {
  color: var(--text-color-light);
  font-size: 6.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 100%; /* 6.4rem */
  letter-spacing: -0.192rem;
}

.team__details {
  margin-bottom: 3rem;
  flex-grow: 1;
}

.team__position {
  font-size: 1.8rem;
  margin-bottom: 2rem;
  color: var(--text-color-light);
}

.team__bio {
  margin-top: 2.4rem;
  font-size: 1.8rem;
  line-height: 140%; /* 2.52rem */
  letter-spacing: -0.009rem;
  color: var(--text-color-light);
}

.team__bio p {
  margin-bottom: 1.5rem;
}

.team__bio p:last-child {
  margin-bottom: 0;
}

.team__nav {
  margin-top: auto;
}

.team__nav-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: .4rem;
}

.team__nav-item {
  display: flex;
  align-items: center;
  gap: .8rem;
  cursor: pointer;
  color: var(--text-color-gray);
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 100%; /* 1.6rem */
  letter-spacing: -0.008rem;
  transition: .3s ease-in-out;
}

.team__nav-item--active.team__nav-item {
  color: var(--text-color-light);
}

.team__nav-item > svg {
  height: 2.4rem;
  width: 2.4rem;
  opacity: 0;
  transform: translateX(-0.5rem);
  transition: .3s ease-in-out;
}

.team__nav-item--active.team__nav-item svg {
  opacity: 1;
  transform: translateX(0rem);
}

.team__nav-bullet {
  position: relative;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.team__nav-bullet::before {
  content: '';
  position: absolute;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  border: .15rem solid var(--text-color-gray);
  background-color: transparent;
  z-index: 1;
  transition: .3s ease-in-out;
} 

.team__nav-item--active .team__nav-bullet::before {
  background-color: var(--text-color-light);
  border: .15rem solid var(--text-color-light);
}

.team__nav-progress {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.team__nav-progress-bg {
  fill: none;
  stroke: transparent;
  stroke-width: 2;
}

.team__nav-progress-bar {
  fill: none;
  stroke: var(--text-color-light);
  stroke-width: 2;
  transition: stroke-dashoffset 0.3s ease;
}

.team__nav-item--active .team__nav-bullet::before {
  background-color: var(--text-color-light);
}

.team__nav-item--active .team__nav-progress-bar {
  animation-name: team-progress;
  animation-duration: 7s;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}

@keyframes team-progress {
  from {
      stroke-dashoffset: 100;
  }
  to {
      stroke-dashoffset: 0;
  }
}

.team__nav-text {
  font-size: 1.8rem;
  font-weight: 500;
  color: var(--text-color-gray);
  transition: color 0.3s ease;
}

.team__nav-item--active .team__nav-text {
  color: var(--text-color-light);
}

.team__nav-item:hover .team__nav-text,
.team__nav-item--active .team__nav-text {
  color: var(--black);
}

.team__photo-wrapper {
  width: 100%;
  height: auto;
  overflow: hidden;
  border-radius: 0;
  transition: opacity 0.3s ease;
}

.team__photo {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .team {
      padding: 0;
  }

  .team__container {
      grid-template-columns: 50% 50%;
  }
  
  .team__left {
    padding: 3.2rem 2.4rem;
  }
  
  .team__name {
      font-size: 3.2rem;
      letter-spacing: -0.096rem;
  }

  .team__label {
      padding: 0 .9rem;
      margin-bottom: 1.2rem;
      height: 2.3rem;
      font-size: 1rem;
      letter-spacing: 0.01rem;
  }

  .team__bio {
      margin-top: 1.6rem;
      font-size: 1.4rem;
      line-height: 130%;
      letter-spacing: -0.021rem;
  }

  .team__bio br {
      display: none;
  }
  
  .team__photo {
      height: 100%;
      object-fit: cover;
  }  
  
  .team__nav-list {
      padding: 0 2.4rem;
      margin: 0 -2.4rem;
      flex-direction: row;
      gap: 1rem;
      overflow-x: auto;
  }
  
  .team__nav-list::-webkit-scrollbar {
      display: none;
  }

  .team__nav-item > svg {
      display: none;
  }

  .team__nav-item {
      white-space: nowrap;
  }

  .team__nav-text {
      font-size: 1.4rem;
      letter-spacing: -0.007rem;
  }
  
  .team__nav-bullet {
    width: 2rem;
    height: 2rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {  
  .team__container {
    display: flex;
    flex-direction: column;
  }

  .team__left {
    padding: 3rem 2rem;
    min-height: 32rem;
    order: 2;
  }
  
  .team__right {
    order: 1;
  }

  .team__photo-wrapper {
    height: 40rem;
  }
  
  .team__nav-list {
    padding-left: 1.6rem;
    margin: 0 -1.6rem;
  }
}

/*------------------------------------------------
* SECTION: REVIEWS
*------------------------------------------------*/
.reviews {
  background-color: var(--orange-bg);
  color: var(--white);
}

.reviews__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.reviews__left {
  position: relative;
  padding: 4rem;
  display: flex;
  flex-direction: column;
}

.reviews__angle {
  position: absolute;
  right: -3.2rem;
  top: 50%;
  transform: translateY(-50%);
  height: 6.4rem;
  width: 3.2rem;
  z-index: 2;
}

.reviews__right {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--header-bg-light);
  height: 72rem;
}

.reviews__undertitle {
  padding: 0 1rem;
  border-radius: 3rem;
  margin-bottom: 1.6rem;
  display: flex;
  align-items: center;
  width: fit-content;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: -0.014rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background-color: var(--white);
  color: var(--text-color-light);
  height: 3rem;
}

.reviews__title {
  font-size: 6.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.192rem;
}

.reviews__nav {
  margin-top: auto;
}

.reviews__nav-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: .4rem;
}

.reviews__nav-item {
  display: flex;
  align-items: center;
  gap: .8rem;
  cursor: pointer;
  color: #FFCCC4;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 100%; /* 1.6rem */
  letter-spacing: -0.008rem;
  transition: .3s ease-in-out;
}

.reviews__nav-item--active.reviews__nav-item {
  color: var(--white);
}

.reviews__nav-text + svg {
  height: 2.4rem;
  width: 2.4rem;
  opacity: 0;
  transform: translateX(-0.5rem);
  transition: .3s ease-in-out;
}

.reviews__nav-item--active.reviews__nav-item svg {
  opacity: 1;
  transform: translateX(0rem);
}

.reviews__nav-bullet {
  position: relative;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.reviews__nav-bullet::before {
  content: '';
  position: absolute;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  border: .15rem solid #FFCCC4;
  background-color: transparent;
  z-index: 1;
  transition: .3s ease-in-out;
} 

.reviews__nav-item--active .reviews__nav-bullet::before {
  background-color: var(--white);
  border: .15rem solid var(--white);
}

.reviews__nav-progress {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.reviews__nav-progress-bg {
  fill: none;
  stroke: transparent;
  stroke-width: 2;
}

.reviews__nav-progress-bar {
  fill: none;
  stroke: var(--white);
  stroke-width: 2;
  transition: stroke-dashoffset 0.3s ease;
}

.reviews__nav-item--active .reviews__nav-bullet::before {
  background-color: var(--white);
}

.reviews__nav-item--active .reviews__nav-progress-bar {
  animation-name: review-progress;
  animation-duration: 7s;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}

@keyframes review-progress {
  from {
      stroke-dashoffset: 100;
  }
  to {
      stroke-dashoffset: 0;
  }
}

.reviews__nav-text {
  font-size: 1.8rem;
  font-weight: 500;
  color: #FFCCC4;
  transition: color 0.3s ease;
}

.reviews__nav-item--active .reviews__nav-text {
  color: #FFCCC4;
}

.reviews__nav-item:hover .reviews__nav-text,
.reviews__nav-item--active .reviews__nav-text {
  color: var(--white);
}

.reviews__content {
  padding: 4rem 16rem;
  display: flex;
  align-items: center;
  text-align: center;
  flex-direction: column;
  color: var(--text-color-light);
  transition: opacity 0.3s ease;
}

.reviews__photo-wrapper {
  width: 14rem;
  height: 14rem;
  border-radius: 50%;
  overflow: hidden;
  margin-bottom: 1.2rem;
}

.reviews__photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.reviews__details {
  color: var(--text-color-light);
}

.reviews__name {
  font-size: 3.2rem;
  font-weight: 600;
  margin-bottom: 1.2rem;
}

.reviews__position {
  padding: 0 1rem;
  border-radius: 3rem;
  margin-bottom: 3.2rem;
  font-size: 1.4rem;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  height: 3rem;
  background-color: var(--orange-bg);
  color: var(--white);
}

.reviews__text {
  font-size: 1.6rem;
  line-height: 140%;
}

.reviews__text p {
  margin-bottom: 1.6rem;
}

.reviews__text p:last-child {
  margin-bottom: 0;
}

.reviews__bg {
  position: absolute;
  bottom: 0;
  right: 0;
  height: 30rem;
  width: 30rem;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .reviews {
      padding: 0;
  }

  .reviews__container {
      grid-template-columns: 50% 50%;
  }

  .reviews__content {
    padding: 3.2rem 2.4rem;
}

  .reviews__left {
    padding: 3.2rem 2.4rem;
  }

  .reviews__title {
      font-size: 3.2rem;
      letter-spacing: -0.096rem;
  }

  .reviews__undertitle {
      padding: 0 .9rem;
      margin-bottom: 1.2rem;
      height: 2.3rem;
      font-size: 1rem;
      letter-spacing: 0.01rem;
  } 
  
  .reviews__photo-wrapper {
    width: 8rem;
    height: 8rem;
  }
  
  .reviews__name {
    font-size: 2.2rem;
  }

  .reviews__text {
    font-size: 1.4rem;
    line-height: 140%;
  }

  .reviews__nav-list {
      padding: 0 2.4rem;
      margin: 0 -2.4rem;
      flex-direction: row;
      gap: 1rem;
      overflow-x: auto;
  }

  .reviews__nav-list::-webkit-scrollbar {
      display: none;
  }

  .reviews__nav-item > svg {
      display: none;
  }

  .reviews__nav-item {
      white-space: nowrap;
  }

  .reviews__nav-text {
      font-size: 1.4rem;
      letter-spacing: -0.007rem;
  }

  .reviews__right {
      height: 45rem;
  }

  .reviews__nav-bullet {
    width: 2rem;
    height: 2rem;
  }
  .reviews__angle {
    display: none;
  }

  .reviews__bg {
    display: none;
  }
  
  .reviews__position {
    padding: 0 1rem;
    font-size: 1.1rem;
    height: 2.4rem;
    font-weight: 600;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .reviews__container {
    display: flex;
    flex-wrap: wrap;
  }
  
  .reviews__left {
    padding: 3.2rem 1.6rem 3.2rem;
    max-width: 100%;
  }
  
  .reviews__angle {
    right: calc(50% - 1.2rem);
    top: unset;
    bottom: -3.2rem;
    height: 4.8rem;
    width: 2.4rem;
    transform: rotate(90deg) translateY(0);
  }
  
  .reviews__right {
    height: auto;
    padding: 8rem 2rem;
  }

  .reviews__undertitle {
    padding: 0 .9rem;
    margin-bottom: 1.2rem;
    height: 2.3rem;
    font-size: 1rem;
    line-height: 1rem;
  }
  
  .reviews__title {
    font-size: 3.6rem;
  }
  
  .reviews__content {
    padding: 0;
  }

  .reviews__nav-list {
      margin-top: 12rem;
      margin-right: -1.6rem;
      flex-direction: row;
      gap: 1rem;
      overflow-x: auto;
  }

  .reviews__position {
      padding: .8rem .9rem;
      border-radius: 3rem;
      margin-bottom: 3.2rem;
      font-size: 1.1rem;
      min-height: 2.3rem;
      letter-spacing: 0.011rem;
  }
  
  .reviews__nav-list::-webkit-scrollbar {
    display: none;
  }

  .reviews__nav-item > svg {
    display: none;
  }

  .reviews__nav-item {
      white-space: nowrap;
  }
}


/*------------------------------------------------
 * SECTION: PROPERTY COSTS
 *------------------------------------------------*/
 .property-costs {
  background-color: var(--orange-bg);
  color: var(--white);
}

.property-costs__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.property-costs__left {
  position: relative;
  background-color: #0e0e0e;
  padding: 4rem;
  display: flex;
  flex-direction: column;
  height: 72rem;
}

.property-costs__angle {
  position: absolute;
  right: -3.2rem;
  top: 50%;
  transform: translateY(-50%);
  height: 6.4rem;
  width: 3.2rem;
  z-index: 2;
}

.property-costs__undertitle {
  padding: 0 1rem;
  border-radius: 3rem;
  margin-bottom: 1.6rem;
  display: flex;
  align-items: center;
  width: fit-content;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: -0.014rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background-color: var(--white);
  color: var(--text-color-light);
  height: 3rem;
}

.property-costs__title {
  font-size: 6.4rem;
  font-style: normal;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.192rem;
}

.property-costs__nav {
  margin-top: auto;
}

.property-costs__nav-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: .4rem;
}

.property-costs__nav-item {
  display: flex;
  align-items: center;
  gap: .8rem;
  cursor: pointer;
  color: #ffffff;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 100%; /* 1.6rem */
  letter-spacing: -0.008rem;
  transition: .3s ease-in-out;
}

.property-costs__nav-item--active.property-costs__nav-item {
  color: var(--white);
}

.property-costs__nav-text + svg {
  height: 2.4rem;
  width: 2.4rem;
  opacity: 0;
  transform: translateX(-0.5rem);
  transition: .3s ease-in-out;
}

.property-costs__nav-item--active.property-costs__nav-item svg {
  opacity: 1;
  transform: translateX(0rem);
}

.property-costs__nav-bullet {
  position: relative;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.property-costs__nav-bullet::before {
  content: '';
  position: absolute;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  border: .15rem solid #ffffff;
  background-color: transparent;
  z-index: 1;
  transition: .3s ease-in-out;
} 

.property-costs__nav-item--active .property-costs__nav-bullet::before {
  background-color: var(--white);
  border: .15rem solid var(--white);
}

.property-costs__nav-progress {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.property-costs__nav-progress-bg {
  fill: none;
  stroke: transparent;
  stroke-width: 2;
}

.property-costs__nav-progress-bar {
  fill: none;
  stroke: var(--white);
  stroke-width: 2;
  transition: stroke-dashoffset 0.3s ease;
}

.property-costs__nav-item--active .property-costs__nav-bullet::before {
  background-color: var(--white);
}

.property-costs__nav-item--active .property-costs__nav-progress-bar {
  animation-name: property-progress;
  animation-duration: 7s;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}

@keyframes property-progress {
  from {
      stroke-dashoffset: 100;
  }
  to {
      stroke-dashoffset: 0;
  }
}

.property-costs__nav-text {
  font-size: 1.8rem;
  font-weight: 500;
  color: #ffffff;
  transition: color 0.3s ease;
}

.property-costs__nav-item--active .property-costs__nav-text {
  color: #ffffff;
}

.property-costs__nav-item:hover .property-costs__nav-text,
.property-costs__nav-item--active .property-costs__nav-text {
  color: var(--white);
}

/* Right column with pricing */
.property-costs__right {
  display: flex;
  flex-direction: column;
  background-color: var(--orange-bg);
}

.property-costs__price-item {
  flex: 1;
  padding: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  position: relative;
}

.property-costs__price-item--bordered {
  border-bottom: 2px solid #0e0e0e;
}

.property-costs__price-label {
  color: #ffffff;
  font-family: var(--primary-font);
  font-size: 1.8rem;
  line-height: 100%;
  letter-spacing: -0.02em;
  font-weight: 400;
  margin-bottom: 0.4rem;
}

.property-costs__price-value {
  display: flex;
  align-items: baseline;
}

.property-costs__price-from {
  color: #ffffff;
  font-family: var(--primary-font);
  font-size: 8rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 400;
  margin-right: 1rem;
}

.property-costs__price-amount {
  color: #ffffff;
  font-family: var(--primary-font);
  font-size: 11rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 400;
  transition: opacity 0.3s ease;
}

.property-costs__corner-icon {
  position: absolute;
  width: 3.2rem;
  height: 3.2rem;
}

.property-costs__corner-icon--bottom-left {
  bottom: 0;
  left: 3.2rem;
  transform: translateY(0);
}

.property-costs__corner-icon--top-left {
  top: 3.2rem;
  left: 3.2rem;
  transform: translateY(-3.2rem);
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .property-costs {
    padding: 0;
  }

  .property-costs__container {
    grid-template-columns: 50% 50%;
  }

  .property-costs__left {
    padding: 3.2rem 2.4rem;
    height: auto;
  }

  .property-costs__title {
    font-size: 3.2rem;
    letter-spacing: -0.096rem;
    margin-bottom: 3.2rem;
  }

  .property-costs__undertitle {
    padding: 0 .9rem;
    margin-bottom: 1.2rem;
    height: 2.3rem;
    font-size: 1rem;
    letter-spacing: 0.01rem;
  }

  .property-costs__price-label {
    font-size: 1.5rem;
    line-height: 100%; /* 1.5rem */
    letter-spacing: -0.03rem;
  }

  .property-costs__price-from {
    font-size: 3.2rem;
    line-height: 100%;
    letter-spacing: -0.096rem;
  }

  .property-costs__price-amount {
    font-size: 4.8rem;
    line-height: 100%;
    letter-spacing: -0.144rem;
  }

  .property-costs__price-item {
    padding: 2.4rem;
    min-height: 22.5rem;
  }

  .property-costs__nav-list {
    padding: 0 2.4rem;
    margin: 0 -2.4rem;
    flex-direction: row;
    gap: 1rem;
    overflow-x: auto;
  }

  .property-costs__nav-list::-webkit-scrollbar {
    display: none;
  }

  .property-costs__nav-item > svg {
    display: none;
  }

  .property-costs__nav-item {
    white-space: nowrap;
  }

  .property-costs__nav-text {
    font-size: 1.4rem;
    letter-spacing: -0.007rem;
  }

  .property-costs__nav-bullet {
    width: 2rem;
    height: 2rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .property-costs__container {
    display: flex;
    flex-wrap: wrap;
  }
  
  .property-costs__left {
    padding: 3.2rem 1.6rem 3.2rem;
    width: 100%;
    min-height: 32rem;
  }
  
  .property-costs__angle {
    right: calc(50% - 1.2rem);
    top: unset;
    bottom: -3.2rem;
    height: 4.8rem;
    width: 2.4rem;
    transform: rotate(90deg) translateY(0);
    display: block;
  }
  
  .property-costs__right {
    width: 100%;
  }

  .property-costs__undertitle {
    padding: 0 .9rem;
    margin-bottom: 1.2rem;
    height: 2.3rem;
    font-size: 1rem;
  }
  
  .property-costs__title {
    font-size: 3.2rem;
    line-height: 100%; /* 3.2rem */
    letter-spacing: -0.096rem;
  }

  .property-costs__nav-list {
    margin-top: 3.2rem;
    margin-right: -1.6rem;
    flex-direction: row;
    gap: 1rem;
    overflow-x: auto;
  }
  
  .property-costs__nav-list::-webkit-scrollbar {
    display: none;
  }

  .property-costs__nav-item > svg {
    display: none;
  }

  .property-costs__nav-item {
    white-space: nowrap;
  }
  
  .property-costs__price-item {
    padding: 2.4rem 1.6rem;
    border-bottom: 2px solid #0e0e0e;
    height: 20rem;
  }
  
  .property-costs__price-label {
    font-size: 1.3rem;
    line-height: 100%; /* 1.3rem */
    letter-spacing: -0.026rem;
  }
  
  .property-costs__price-from {
    font-size: 3.4rem;
    line-height: 100%; /* 3.4rem */
    letter-spacing: -0.102rem
  }
  
  .property-costs__price-amount {
    font-size: 4.8rem;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.144rem;
  }
  
  .property-costs__corner-icon {
    width: 2.4rem;
    height: 2.4rem;
  }
}


/*------------------------------------------------
 * SECTION: DOCUMENTS
 *------------------------------------------------*/
.documents {
  position: relative;
  padding: 10rem 0 4rem;
  background-color: var(--orange-bg);
  color: var(--white);
}

.page-template-page-documents .documents {
  padding-top: 4rem;
}

.documents__bg {
  position: absolute;
  top: 0;
  right: 0;
  height: 24rem;
  width: 30.9rem;
}

.page-template-page-documents .documents__bg {
  display: none;
}

.documents__breadcrumbs {
  margin-bottom: 3.2rem;
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  align-items: center;
}

.documents__breadcrumb-item {
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  color: #838383;
  text-decoration: none;
}

.documents__breadcrumb-separator {
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  color: #838383;
}

.documents__breadcrumb-current br {
  display: none;
}

.documents__breadcrumb-current,
.documents__breadcrumb-link {
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  color: var(--black);
}

.documents__breadcrumb-link,
.documents__breadcrumb-separator,
.documents__breadcrumb-link:visited,
.documents__breadcrumb-separator:visited {
  color: #838383;
}

.documents__title {
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%;
  margin-bottom: 4rem;
}

h1.documents__title {
  margin-top: 0;
  font-size: 7.2rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.216rem;
}

.documents__list {
  display: flex;
  flex-direction: column;
}

.documents__item {
  display: grid;
  grid-template-columns: 1fr 34rem 3.2rem;
  padding: 1.6rem;
  gap: 4rem;
  border-bottom: 1.5px solid rgba(255, 255, 255, 0.2);
  transition: .3s ease-in-out;
}

.page-template-page-documents .documents__item {
  border-bottom: 1.5px solid #DFDFDF;
}

.documents__item:hover {
  border-bottom: 1.5px solid var(--white);
  background-color: var(--white);
  color: var(--text-color-light);
}

.page-template-page-documents .documents__item:hover {
  background-color: var(--text-color-light);
  color: var(--white);
}
.page-template-page-documents .documents__item svg path {
  stroke: var(--header-bg-dark);
}

.documents__item:hover svg path {
  stroke: var(--text-color-light);
}

.page-template-page-documents .documents__item:hover svg path {
  stroke: var(--white);
}

.documents__item:first-child {
  border-top: 1.5px solid rgba(255, 255, 255, 0.2);
}

.documents__item-info {
  align-self: center;
}

.documents__item-title {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 100%;
}

.documents__item-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  text-align: right;
  align-self: center;
}

.documents__item-format,
.documents__item-size {
  font-size: 1.8rem;
}

.documents__item-download {
  width: 3.2rem;
  height: 3.2rem;
  transition: transform 0.3s ease;
}

.documents__item-download:hover {
  transform: translateY(-.3rem);
}

.documents__item-download svg {
  height: 100%;
  width: 100%;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .documents {
      padding: 5.6rem 0 3.2rem;
  }

  .page-template-page-documents .documents {
    padding-top: 3.2rem;
  }
  
  .documents__title {
      font-size: 3.6rem;
      margin-bottom: 3.2rem;
  }

  .documents__breadcrumbs {
    margin-bottom: 2.4rem;
    gap: 0.8rem;
  }

  h1.documents__title {
    font-size: 3.8rem;
    font-weight: 600;
    line-height: 100%; /* 3.8rem */
    letter-spacing: -0.114rem;
  }

  .documents__title br {
    display: none;
  }
  
  .documents__item {
    position: relative;
    grid-template-columns: 1fr;
    padding: 1.6rem 0;
    gap: .4rem;
  }
  
  .documents__item-title {
    padding-right: 4.8rem;
    font-size: 1.5rem;
    line-height: 120%;
  }
  
  .documents__item-meta {
    display: flex;
    gap: .8rem;
    text-align: left;
    color: #838383;
  }
  
  body.home .documents__item-meta,
  body.postid-717 .documents__item-meta {
    color: #FFCCC4;
  }
  
  .documents__item-download {
    position: absolute;
    top: 1.6rem;
    right: 0;
    height: 2.4rem;
    width: 2.4rem;
  }
  
  .documents__item-format,
  .documents__item-size {
    font-size: 1.3rem;
    line-height: 100%;
    letter-spacing: -0.026rem;
  }
  
  .documents__bg {
    display: none;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .documents__title {
    margin-bottom: 2.4rem;
  }

  .documents__item {
    position: relative;
    grid-template-columns: 1fr;
    padding: 1.6rem 0;
    gap: .4rem;
  }
  
  .documents__item-title {
    padding-right: 4.8rem;
    font-size: 1.5rem;
    line-height: 120%;
  }
  
  .documents__item-meta {
    display: flex;
    gap: .8rem;
    text-align: left;
    color: #838383;
  }
  
  body.home .documents__item-meta,
  body.postid-717 .documents__item-meta {
    color: #FFCCC4;
  }
  
  .documents__item-download {
    position: absolute;
    top: 1.6rem;
    right: 0;
    height: 2.4rem;
    width: 2.4rem;
  }
  
  .documents__item-format,
  .documents__item-size {
    font-size: 1.3rem;
  }
}

/*------------------------------------------------
 * SECTION: PRICE LIST
 *------------------------------------------------*/
 .price-list {
  position: relative;
  padding: 10rem 0 4rem;
  background-color: var(--background-light, #F1F1F1);
}

.page-template-page-prices .price-list {
  padding-top: 4rem;
}

.price-list__title {
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%;
  margin-bottom: 4rem;
  color: inherit;
}

h1.price-list__title {
  margin-top: 0;
  font-size: 7.2rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.216rem;
}

.price-list__content {
  padding: 2rem 0 0;
}

.price-list__category {
  margin-bottom: 6rem;
}

.price-list__category:last-child {
  margin-bottom: 0;
}

.price-list__category-title {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -0.02em;
  margin: 0 0 2.4rem 0;
  color: inherit;
}

.price-list__items {
  display: flex;
  flex-direction: column;
}

.price-list__item {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 1.6rem;
  gap: 4rem;
  border-bottom: 1.5px solid #262626;
  transition: .3s ease-in-out;
}

.price-list__item--first {
  border-top: 1.5px solid #262626;
}

.price-list__item-name {
  flex: 1;
  font-size: 1.8rem;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -0.02em;
}

.price-list__item-price {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -0.02em;
  text-align: right;
  white-space: nowrap;
}

/* Explicit color for free items */
.price-list__item-price--free {
  color: #838383;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .price-list {
    padding: 5.6rem 0 3.2rem;
  }
  
  .price-list__title {
    font-size: 3.6rem;
    margin-bottom: 3.2rem;
  }
  
  .price-list__title br {
    display: none;
  }
  
  .price-list__category {
    margin-bottom: 4rem;
  }
  
  .price-list__category-title {
    font-size: 2.4rem;
    margin-bottom: 1.6rem;
  }
  
  .price-list__item {
    position: relative;
    padding: 1.2rem 0;
    gap: 2rem;
  }
  
  .price-list__item-name {
    font-size: 1.5rem;
    line-height: 120%;
    padding-right: 1rem;
  }
  
  .price-list__item-price {
    font-size: 1.5rem;
    line-height: 120%;
  }

  .price-list__content {
    padding: 1.2rem 0 0;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .price-list {
    padding: 4rem 0 3.2rem;
  }
  
  .price-list__title {
    padding: 1.6rem 0 0;
    font-size: 3.6rem;
    line-height: 100%; /* 3.6rem */
    letter-spacing: -0.108rem;
  }
  
  .price-list__category {
    margin-bottom: 3.2rem;
  }
  
  .price-list__category-title {
    margin-top: 1.6rem;
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 110%; /* 2.64rem */
    letter-spacing: -0.048rem;
  }
  
  .price-list__item {
    flex-direction: column;
    align-items: flex-start;
    padding: 1.6rem 0;
    gap: 0.4rem;
  }
  
  .price-list__item-name {
    font-size: 1.5rem; 
    line-height: 120%;
    padding-right: 0;
    width: 100%;
  }
  
  .price-list__item-price {
    font-size: 1.3rem;
    text-align: left;
  }
}

/*------------------------------------------------
 * SECTION: FAQ
 *------------------------------------------------*/
 .faq {
  background-color: #F1F1F1;
  padding: 4rem;
  position: relative;
}

.faq__header {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-bottom: 8rem;
}

.faq__breadcrumbs {
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  align-items: center;
}

.faq__breadcrumb-link,
.faq__breadcrumb-link:visited {
  color: #838383;
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  text-decoration: none;
  transition: color 0.3s ease;
}

.faq__breadcrumb-link:hover {
  color: #0E0E0E;
}

.faq__breadcrumb-separator {
  color: #838383;
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
}

.faq__breadcrumb-current {
  color: #0E0E0E;
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
}

.faq__page-title {
  color: #0E0E0E;
  font-family: var(--primary-font);
  font-size: 7.2rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  margin: 0;
}

.faq__content {
  display: flex;
  flex-direction: column;
  gap: 7.2rem;
}

.faq__group-wrapper {
  display: flex;
  flex-direction: column;
  gap: 7.2rem;
}

.faq__group {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

.faq__group-title {
  padding: 6rem 0 0.8rem;
  color: #0E0E0E;
  font-family: var(--primary-font);
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.192rem;
  margin: 0;
  min-height: 4.8rem;
  display: flex;
  align-items: center;
}

.page-template-page-faq .faq__group-title {
  padding: 0;
  font-size: 4rem;
  line-height: 100%;
  letter-spacing: -0.02em;
  font-weight: 600;
}

.faq__items {
  display: flex;
  flex-direction: column;
}

.faq__item {
  border-bottom: 1.5px solid #DFDFDF;
  padding: 2.6rem 0;
  transition: .2s ease-in-out;
}

.faq__item:hover {
  border-bottom-color: var(--text-color-light)!important;
}
 
.faq__item:first-child {
  border-top: 1.5px solid #DFDFDF;
}

.faq__item-header {
  display: flex;
  flex-direction: row;
  gap: 2.4rem;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  width: 100%;
}

.faq__item-question {
  color: #0E0E0E;
  font-family: var(--primary-font);
  font-size: 2.4rem;
  line-height: 100%;
  letter-spacing: -0.02em;
  font-weight: 500;
  margin: 0;
  flex: 1;
  min-height: 3.2rem;
  transition: color 0.3s ease;
}

.faq__item--active .faq__item-question {
  color: #FE5639;
}

.faq__item-toggle {
  flex-shrink: 0;
  width: 3.2rem;
  height: 3.2rem;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .2s ease-in-out;
}

.faq__item-icon {
  width: 3.2rem;
  height: 3.2rem;
  transition: transform 0.3s ease;
}

.faq__item--active .faq__item-icon {
  transform: rotate(90deg);
}

.faq__item--active .faq__item-icon path {
  stroke: #FE5639;
}

.faq__item-content {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease, margin-top 0.3s ease;
}

.faq__item--active .faq__item-content {
  margin-top: 1.2rem;
  max-height: fit-content;
}

.faq__item-answer {
  color: #0E0E0E;
  font-family: var(--primary-font);
  font-size: 1.6rem;
  line-height: 140%;
  letter-spacing: -0.005em;
  font-weight: 400;
  padding-right: 38.4rem;
}

.faq__item-answer p:last-child {
  margin: 0;
}v

.faq__item-cursor-pointer {
  position: absolute;
  width: 2.4rem;
  height: 2.4rem;
  overflow: hidden;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .faq {
      padding: 3.2rem 2.4rem;
  }
  
  .faq__header {
      gap: 2.4rem;
      margin-bottom: 3.2rem;
  }
  
  .faq__page-title {
      font-size: 3.8rem;
      letter-spacing: -0.02em;
  }
  
  .faq__content {
      gap: 4.8rem;
  }
  
  .faq__group {
      gap: 2.4rem;
  }
  .faq__group-title {
      padding: 2.4rem 0 0.8rem;
      font-size: 3.6rem;
  }

  .page-template-page-faq .faq__group-title {
      font-size: 2.8rem;
  }
  
  .faq__item {
      padding: 2rem 0;
  }
  
  .faq__item-question {
      font-size: 1.8rem;
      line-height: 120%;
      display: flex;
      align-items: center;
  }

  .faq__item--active .faq__item-content {
    margin-top: 1.6rem;
  }

  .page-template-page-faq .faq__group-wrapper {
    padding-top: 3.2rem;
    gap: 4rem;
  }
  
  .faq__item-toggle {
      width: 2.4rem;
      height: 2.4rem;
  }
  
  .faq__item-icon {
      width: 2.4rem;
      height: 2.4rem;
  }
  
  .faq__item--active .faq__item-content {
      margin-top: 0.8rem;
  }
  
  .faq__item-answer {
      padding-right: 0;
      font-size: 1.4rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .faq {
      padding: 3.2rem 1.6rem 2.4rem;
  }
  
  .faq__header {
      gap: 1.6rem;
      margin-bottom: 2.4rem;
  }
  
  .faq__page-title {
      font-size: 3.6rem;
  }
  
  .faq__content {
      gap: 3.2rem;
  }
  
  .faq__group {
      gap: 1.6rem;
  }
  
  .faq__group-title {
    font-size: 3.6rem;
    letter-spacing: -0.108rem;
  }

  .page-template-page-faq .faq__group-title {
      font-size: 2.8rem;
  }
  
  .faq__item {
      padding: 1.6rem 0;
  }
  
  .faq__item-header {
      gap: 1.2rem;
  }
  
  .faq__item-question {
      font-size: 1.8rem;
  }
  
  .faq__item-toggle,
  .faq__item-icon {
      width: 2rem;
      height: 2rem;
  }
  
  .faq__item-answer {
      font-size: 1.4rem;
      line-height: 135%;
  }
}

/*------------------------------------------------
 * SECTION: FOLLOW-US
 *------------------------------------------------*/
 .follow-us {
  background: #0e0e0e;
  padding: 10rem 4rem 4rem;
  border-bottom: .2rem solid #262626;
  position: relative;
  overflow: hidden;
}

.follow-us__title {
  color: #ffffff;
  font-family: var(--primary-font);
  font-size: 6.4rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  min-height: 7.2rem;
  margin: 0;
  display: flex;
  flex-direction: column;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .follow-us {
    padding: 6.4rem 2.4rem 3.2rem;
  }
  
  .follow-us__title {
    font-size: 4.8rem;
    min-height: 5.6rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .follow-us {
    padding: 4.8rem 1.6rem 2.4rem;
  }
  
  .follow-us__title {
    font-size: 3.6rem;
    min-height: 4.2rem;
  }
  
  .follow-us__title br {
    display: none;
  }
}

/*------------------------------------------------
 * POSTS ARCHIVE
 *------------------------------------------------*/
 .posts-archive {
  background-color: var(--header-bg-dark);
  color: var(--white);
}

.posts-archive__title {
  margin: 0;
  color: var(--white);
  font-size: 7.2rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.03em;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .posts-archive__title {
      font-size: 4.8rem;
      margin: 1.6rem 0 3.2rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .posts-archive__title {
      font-size: 3.6rem;
      margin: 1.2rem 0 2.4rem;
  }
}

/*------------------------------------------------
 * VIDEOS ARCHIVE
 *------------------------------------------------*/
 .videos-archive {
  background-color: var(--header-bg-dark);
  color: var(--white);
}

.videos-archive__title {
  color: var(--white);
  font-size: 7.2rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.03em;
  margin: 0;
}

.breadcrumb-section {
    padding: 4rem 4rem 6rem;
}

/* Pagination styles from Figma design */
.pagination {
  background: #0e0e0e;
  padding: 4rem;
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  overflow: hidden;
}

.pagination__items {
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
}

.pagination__item {
  padding: 0.8rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border: 1.4px solid #838383;
}

.pagination__item--active {
  background: #ffffff;
  border: none;
}

.pagination__number {
  color: #838383;
  text-align: center;
  font-family: "Manrope-SemiBold", sans-serif;
  font-size: 1.6rem;
  letter-spacing: -0.03em;
  font-weight: 600;
  text-transform: uppercase;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pagination__item--active .pagination__number {
  color: #0e0e0e;
}

/* Responsive styles for pagination */
@media (max-width: 1079px) {
  .pagination {
      padding: 3.2rem 2.4rem;
  }
}

@media (max-width: 767px) {
  .pagination {
      padding: 2.4rem 1.6rem;
  }
  
  .pagination__item {
      padding: 0.6rem;
  }
  
  .pagination__number {
      font-size: 1.4rem;
      width: 2rem;
      height: 2rem;
  }
}

/* Optional: Add animation/transition for hover state */
.pagination__item:not(.pagination__item--active):hover {
  border-color: #ffffff;
  transition: border-color 0.3s ease;
}

.pagination__item:not(.pagination__item--active):hover .pagination__number {
  color: #ffffff;
  transition: color 0.3s ease;
}
 

/*------------------------------------------------
* SECTION: STEPS
*------------------------------------------------*/
.steps {
  background-color: var(--black);
  color: var(--white);
}

.steps__title {
  padding: 10rem 4rem 4rem;
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%;
}

.steps__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-bottom: .2rem solid #DFDFDF;
}

.steps--dark  .steps__grid {
  border-bottom: .2rem solid #262626;
}

.steps__item {
  padding: 4rem;
  border-top: .2rem solid #DFDFDF;
  border-right: .2rem solid #DFDFDF;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  min-height: 30rem;
  transition: .3s ease-in-out;
}

.steps__item:hover {
  background-color: #DFDFDF;
}

.steps--dark .steps__item {
  background-color: var(--text-color-light);
  border-top: .2rem solid #262626;
  border-right: .2rem solid #262626;
}

.steps--dark .steps__item:hover {
  background-color: #262626;
}

.steps__item-header {
  margin-bottom: auto;
}

.steps__item-number {
  display: inline-flex;
  align-items: center;
  padding: 0 1rem;
  background-color: transparent;
  border-radius: 3rem;
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
  height: 3rem;
  border: .15rem solid #0E0E0E;
  letter-spacing: .021rem;
}

.steps--dark  .steps__item-number {
  border: .15rem solid #ffffff;
}

.steps__item-title {
  margin-bottom: 1.6rem;
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -.056rem;
}

.steps__item-text {
  font-size: 1.4rem;
  line-height: 130%;
  min-height: 9rem;
  color: var(--header-bg-dark);
  transition: .3s ease-in-out;
}

.steps--dark .steps__item-text {
  color: #808080;
}

.steps--dark .steps__item:hover .steps__item-text {
  color: var(--white);
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .steps {
      padding: 0;
  }
  
  .steps__title {
      padding: 5.6rem 2.4rem 3.2rem;
      font-size: 3.6rem;
  }
  
  .steps__grid {
      display: flex;
      flex-wrap: wrap;
  }
  
  .steps__item {
      padding: 2.4rem;
      width: 50%;
      flex: 0 0 50%;
      height: auto;
      min-height: unset;
      justify-content: flex-start;
  }

  .steps__item-number {
      padding: 0 .9rem;
      font-size: 1rem;
      height: 2.3rem;
  }

  .steps__item-header {
      margin-bottom: 4.8rem;
  }

  .steps__item-title {
      font-size: 2rem;
      margin-bottom: 1.2rem;
  }

  .steps__item-text {
      font-size: 1.3rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {  
  .steps__title {
      padding: 5.6rem 1.6rem 3.2rem;
  }
  
  .steps__grid {
      display: grid;
      grid-template-columns: 1fr;
  }
  
  .steps__item {
      padding: 2.4rem 1.6rem;
      min-height: unset;
      width: 100%;
  }
}

/*------------------------------------------------
* SECTION: CTA
*------------------------------------------------*/
.cta {
  position: relative;
  padding: 4rem 0;
  height: 70rem;
  background-color: var(--header-bg-light);
  color: var(--text-color-light);
  text-align: center;
  display: flex;
  align-items: center;
}

.cta--dark {
  background-color: var(--black);
  color: var(--white);
}

.cta .container {
  position: relative;
  z-index: 2;
}

.cta__content {
  max-width: 88rem;
  margin: 0 auto;
}

.cta__undertitle {
  padding: 1rem;
  border: .15rem solid #0E0E0E;
  border-radius: 3rem;
  margin-bottom: 1.6rem;
  display: inline-flex;
  align-items: center;
  max-height: 3rem;
  height: 100%;
  font-size: 1.4rem;
  text-transform: uppercase;
  background-color: transparent;
  font-weight: 600;
  letter-spacing: 0.014em;
}

.cta__title {
  font-size: 5.6rem;
  font-weight: 600;
  line-height: 100%;
  margin-bottom: 2.4rem;
  max-width: 72rem;
}

.cta__text {
  margin-bottom: 5.6rem;
  font-size: 2.2rem;
  line-height: 140%;
  color: var(--text-color-gray);
  max-width: 72rem;
}

.cta__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  padding: 1.2rem 1.6rem 1.2rem 2.4rem;
  border-radius: 0;
  background-color: var(--orange-bg);
  color: var(--white);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: -0.014rem;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  transition: opacity 0.3s ease;
}

.cta__button:hover {
  opacity: 0.9;
}

.cta__button-icon {
  width: 3.2rem;
  height: 3.2rem;
  transform: rotate(0);
  transition: transform 0.2s ease;
}

.cta__button:hover .cta__button-icon {
  transform: rotate(45deg);
}

.cta__button-icon svg {
  width: 100%;
  height: 100%;
}

.cta__bg {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 70rem;
  width: auto;
  max-width: 100%;
  z-index: 1;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {  
  .cta {
    position: relative;
    height: auto;
    min-height: 51.4rem;
  }

  .cta .container {
    padding: 0;
    position: initial;
  }

  .cta__content {
      margin-bottom: 6.4rem;
      max-width: 48.6rem;
  }

  .cta__undertitle {
    padding: 0 .9rem;
    margin-bottom: 1.2rem;
    font-size: 1rem;
    height: 2.3rem;
  }
  
  .cta__title {
    font-size: 3rem;
    margin-bottom: 3.2rem;
  }
  
  .cta__text {
    font-size: 1.4rem;
    line-height: 140%;
    margin-bottom: 0;
  }
  
  .cta__button {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    justify-content: center;
    height: 6.4rem;
    font-size: 1.2rem;
  }

  .cta__button-icon {
    display: none;
  }

  .cta__bg {
      height: 51.4rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .cta {
    min-height: 54.4rem;
    padding: 0 2.4rem; 
  }

  .cta .container {
    padding: 0;
    position: initial;
  }

  .cta__content {
      margin-bottom: 6.4rem;
      max-width: 100%;
  }

  .cta__bg {
    display: none;
  }
}

/*------------------------------------------------
* SECTION: WORKS
*------------------------------------------------*/
.works {
  background-color: var(--white);
}

.works__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.works__item {
  border-bottom: .2rem solid #DFDFDF;
  background-color: var(--header-bg-light);
  min-height: 18rem;
}

.works__item:nth-child(2n-1) {
  border-right: .2rem solid #DFDFDF;
}

.works__item-link {
  display: flex;
  align-items: center;
  width: 100%;
  text-align: left;
  gap: 9.6rem;
  padding: 0 4rem;
  color: var(--text-color-light);
  text-decoration: none;
  height: 100%;
  position: relative;
  transition: transform 0.3s ease;
}

.works__item-link:hover,
.works__item-link:visited,
.works__item-link:active {
  color: var(--text-color-light);
}

.works__item-content {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  flex: 1;
}

.works__item-title {
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 100%;
}

.works__item-text {
  font-size: 1.4rem;
  line-height: 130%;
  color: var(--text-color-gray);
}

.works__item-arrow {
  height: 5.6rem;
  width: 5.6rem;
  flex: 0 0 5.6rem;
  transform: rotate(0deg);
  transition: .2s ease-in-out;
}

.works__item-arrow svg {
  height: 100%;
  width: 100%;
}

.works__item:hover .works__item-arrow {
  transform: rotate(45deg);
}

.works__cta {
  margin-top: auto;
  padding: 0 4rem;
  border: none;
  background-color: var(--orange-bg);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='493' height='180' viewBox='0 0 493 180' fill='none'%3E%3Cpath d='M264.652 30.1445L246.936 34.8915L253.307 91.0882L219.691 136.571L232.66 149.54L278.142 115.924L334.339 122.295L339.086 104.579L287.233 81.9977L264.652 30.1445Z' fill='%23F35338'/%3E%3Cpath d='M409.306 -133L391.589 -128.253L397.96 -72.0563L364.345 -26.5739L377.314 -13.6047L422.796 -47.2206L478.993 -40.8495L483.74 -58.5658L431.886 -81.1468L409.306 -133Z' fill='%23F35338'/%3E%3Cpath d='M366.347 58.1777L348.631 62.9248L355.002 119.121L321.386 164.604L334.356 177.573L379.838 143.957L436.034 150.328L440.782 132.612L388.928 110.031L366.347 58.1777Z' fill='%23F35338'/%3E%3Cpath d='M511.001 -104.967L493.285 -100.22L499.656 -44.0231L466.04 1.4593L479.009 14.4285L524.492 -19.1874L580.688 -12.8163L585.435 -30.5325L533.582 -53.1136L511.001 -104.967Z' fill='%23F35338'/%3E%3Cpath d='M338.739 -44.8594L321.022 -40.1123L327.393 16.0844L293.778 61.5667L306.747 74.5359L352.229 40.9201L408.426 47.2911L413.173 29.5749L361.32 6.9938L338.739 -44.8594Z' fill='%23F35338'/%3E%3Cpath d='M542.13 11.207L524.413 15.9541L530.784 72.1508L497.169 117.633L510.138 130.602L555.62 96.9865L611.817 103.358L616.564 85.6413L564.71 63.0602L542.13 11.207Z' fill='%23F35338'/%3E%3Cpath d='M440.434 -16.8262L422.718 -12.0791L429.089 44.1175L395.473 89.5999L408.442 102.569L453.925 68.9532L510.121 75.3243L514.868 57.6081L463.015 35.027L440.434 -16.8262Z' fill='%23F35338'/%3E%3Cpath d='M471.53 99.2246L453.814 103.972L460.185 160.168L426.569 205.651L439.539 218.62L485.021 185.004L541.218 191.375L545.965 173.659L494.111 151.078L471.53 99.2246Z' fill='%23F35338'/%3E%3Cpath d='M44.9611 272.145L27.2448 276.892L33.6157 333.088L0 378.571L12.9692 391.54L58.4515 357.924L114.648 364.295L119.395 346.579L67.5419 323.998L44.9611 272.145Z' fill='%23F35338'/%3E%3Cpath d='M189.615 109L171.898 113.747L178.269 169.944L144.654 215.426L157.623 228.395L203.105 194.779L259.302 201.151L264.049 183.434L212.196 160.853L189.615 109Z' fill='%23F35338'/%3E%3Cpath d='M146.656 300.178L128.94 304.925L135.311 361.121L101.695 406.604L114.665 419.573L160.147 385.957L216.344 392.328L221.091 374.612L169.237 352.031L146.656 300.178Z' fill='%23F35338'/%3E%3Cpath d='M291.31 137.033L273.594 141.78L279.965 197.977L246.349 243.459L259.318 256.428L304.801 222.813L360.997 229.184L365.744 211.467L313.891 188.886L291.31 137.033Z' fill='%23F35338'/%3E%3Cpath d='M119.048 197.141L101.332 201.888L107.702 258.084L74.0867 303.567L87.056 316.536L132.538 282.92L188.735 289.291L193.482 271.575L141.629 248.994L119.048 197.141Z' fill='%23F35338'/%3E%3Cpath d='M322.439 253.207L304.722 257.954L311.093 314.151L277.478 359.633L290.447 372.602L335.929 338.986L392.126 345.358L396.873 327.641L345.02 305.06L322.439 253.207Z' fill='%23F35338'/%3E%3Cpath d='M220.743 225.174L203.027 229.921L209.398 286.118L175.782 331.6L188.751 344.569L234.234 310.953L290.43 317.324L295.177 299.608L243.324 277.027L220.743 225.174Z' fill='%23F35338'/%3E%3Cpath d='M251.84 341.225L234.123 345.972L240.494 402.168L206.878 447.651L219.848 460.62L265.33 427.004L321.527 433.375L326.274 415.659L274.42 393.078L251.84 341.225Z' fill='%23F35338'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: contain;
  color: var(--white);
  display: flex;
  align-items: center;
  gap: 9.6rem;
  height: 18rem;
  text-align: left;
  cursor: pointer;
}

.works__cta-content {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  flex: 1;
}

.works__cta-title {
  font-size: 2.6rem;
  line-height: 100%;
  font-weight: 500;
}

.works__cta-text {
  font-size: 1.4rem;
  line-height: 130%;
  color: #FFCCC4;
}

.works__cta-arrow {
  height: 5.6rem;
  width: 5.6rem;
  flex: 0 0 5.6rem;
  transform: rotate(0deg);
  transition: .2s ease-in-out;
}

.works__cta-arrow svg {
  height: 100%;
  width: 100%;
}

.works__cta:hover .works__cta-arrow {
  transform: rotate(45deg);
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {  
  .works__grid {
      flex-direction: column;
  }
  
  .works__column {
      width: 100%;
  }

  .works__item {
      min-height: unset;
  }
  
  .works__item-link {
      padding: 2.4rem;
  }
  
  .works__item-link,
  .works__cta {
    align-items: flex-start;
    padding: 2.4rem;
    gap: 1.2rem;
    height: 100%;
    min-height: unset;
    background-image: none;
  }
  
  .works__item-title,
  .works__cta-title {
    font-size: 2rem;
  }

  .works__item-content {
      gap: 1.2rem;
  }

  .works__item-text {
    font-size: 1.3rem;
    margin-right: -.2rem;
  }

  .works__item-text br {
    display: none;
  }
  
  .works__cta-text {
    font-size: 1.3rem;
  }
  
  .works__item-arrow,
  .works__cta-arrow {
      margin-top: .2rem;
      width: 2.4rem;
      height: 2.4rem;
      flex: 0 0 2.4rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .works__grid {
    grid-template-columns: 1fr;
  }
  
  .works__item:nth-child(2n-1) {
    border-right: none;
  }
  
  .works__item-link,
  .works__cta {
    padding: 2.4rem 1.6rem;
    gap: 1rem;
  }

  .works__item-content {
      gap: 1.2rem;
  }

  .works__item-text {
    margin-right: -3.4rem;
  }

  .works__item-text br {
    display: none;
  }
}


/*------------------------------------------------
 * SECTION: SOCIALS
 *------------------------------------------------*/
 .socials {
  background-color: var(--header-bg-dark);
}

.socials__container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.socials__item {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--header-bg-dark);
  border-right: .2rem solid #262626;
  border-bottom: .2rem solid #262626;
  border-radius: 0;
  min-width: 35rem;
  width: 100%;
  min-height: 18rem;
  height: 100%;
  flex: 1;
  position: relative;
  overflow: hidden;
  transition: background-color 0.3s ease;
}

.socials__item::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--orange-bg);
  transform: translateY(100%);
  transition: transform 0.3s ease;
  z-index: 1;
}

.socials__item:hover::before {
  transform: translateY(0);
}

.socials__icon {
  width: 16rem;
  height: 16rem;
  position: relative;
  transition: color 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}

.socials__item:hover .socials__icon {
  color: var(--white);
}

.socials__icon-logo {
  width: 100%;
  height: 100%;
  fill: currentColor;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .socials {
      padding: 0;
  }
  
  .socials__container {
    display: flex;
    min-width: unset;
    width: 100%;
    min-height: 9rem;
    height: 100%;
    flex: 1;
    flex-wrap: nowrap;
  }
  
  .socials__item {
      min-height: 9rem;
      min-width: unset;
  }

  .socials__icon {
      width: auto;
      height: 9rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {

}

/*------------------------------------------------
* SECTION: COMPANY
*------------------------------------------------*/
.company {
  padding-bottom: 0;
  overflow: hidden;
}

.company--with-image {
  padding-top: 0;
}

.company--no-image {
  padding-top: 8rem;
  background-color: var(--black);
  min-height: 20rem;
}

.company__image-wrapper {
  width: 100%;
  height: auto;
  overflow: hidden;
}

.company__image {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.company__bg {
  position: absolute;
  bottom: 0;
  right: 0;
  height: 35.3rem;
  width: 25.2rem;
}

.company__blocks {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 72rem;
  margin-top: -30rem;
}

.company--no-image .company__blocks {
  margin-top: 0;
}

.company__main-block {
  position: relative;
  width: 100%;
  background-color: var(--orange-bg);
  color: var(--white);
  padding: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 75rem;
}

.company__data-block-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.company__undertitle {
  padding: 0 1rem;
  border-radius: 3.2rem;
  margin-bottom: 1.6rem;
  max-height: 3rem;
  height: 100%;
  font-size: 1.4rem;
  line-height: 130%;
  font-weight: 600;
  letter-spacing: .021rem;
  text-transform: uppercase;
  color: #0E0E0E;
  display: inline-flex;
  align-items: center;
  background-color: #fff;
}

.company__title {
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%;
  margin-bottom: 2.4rem;
}

.company__text {
  font-size: 1.8rem;
  line-height: 140%;
  max-width: 60rem;
}

.company__list {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

.company__list-item {
  display: flex;
  gap: .8rem;
}

.company__list-item:before {
  content: "";
  margin: 1rem .6rem;
  height: 1.2rem;
  width: 1.2rem;
  flex: 0 0 1.2rem;
  border-radius: 50%;
  background-color: var(--white);
}

.company__list-title {
  font-size: 2.4rem;
  font-weight: 500;
}

.company__list-text {
  font-size: 1.4rem;
  line-height: 130%;
}

.company__data-block-box {
  padding: 2.4rem;
  color: var(--white);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.company__data-block .company__data-block-box {
  margin-top: 10rem;
  height: calc(100% - 10rem);
}

.company__data-block--2 .company__data-block-box {
  margin-top: 20rem;
  height: calc(100% - 20rem);
}

.company__data-block--3 .company__data-block-box {
  margin-top: 30rem;
  height: calc(100% - 30rem);
}

.company__data-block--1 .company__data-block-box {
  background-color: #212121;
}

.company__data-block--2 .company__data-block-box {
  background-color: #DADADA;
  color: #0E0E0E;
}

.company__data-block--3 .company__data-block-box {
  background-color: #EFEFEF;
  color: #0E0E0E;
}

.company__data-info {
  display: flex;
  gap: 1rem;
  font-weight: 500;
}

.company__data-info-box {
  flex: 1;
}

.company__data-info svg {
  height: 4rem;
  width: 4rem;
  flex: 0 0 4rem;
}

.company__data-number {
  font-size: 4.4rem;
  line-height: 80%;
}

.company__data-value {
  font-size: 2.2rem;
  line-height: 130%;
}

.company__data-text {
  font-size: 1.4rem;
  line-height: 130%;
  color: #9A9A9A;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .company__image {
    height: 45rem;
  }

  .company__blocks {
    grid-template-columns: 1fr;
    margin-top: 0;
  }
  
  .company__data-block-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  
  .company__main-block {
    display: block;
    height: auto;
    min-height: unset;
    padding: 3.2rem 2.4rem 4.8rem;
  }

  .company__main-info {
    max-width: 55rem;
  }

  .company__undertitle {
    padding: 0 .9rem;
    margin-bottom: 1.2rem;
    font-size: 1rem;
    height: 2.3rem;
  }
  
  .company__title {
    font-size: 3.6rem;
    margin-bottom: 2.4rem;
    letter-spacing: -0.114rem;
  }
  
  .company__text {
    font-size: 1.4rem;
    line-height: 140%;
    letter-spacing: -0.007rem;
    max-width: 55rem;
  }

  .company__bg {
      height: 26.3rem;
      width: 25.2rem;
  }

  .company__list {
    margin-top: 3.2rem;
    max-width: 55rem;
    gap: 2rem;
  }

  .company__list-item {
      gap: .4rem;
  }

  .company__list-title {
    font-size: 1.8rem;
    margin-bottom: .8rem;
    font-weight: 500;
    letter-spacing: -0.054rem;
  }

  .company__list-text {
    font-size: 1.3rem;
    padding-right: 2.4rem;
    color: #FFCCC4;
  }

  .company__list-item:before {
      margin: .8rem;
      height: .8rem;
      width: .8rem;
      flex: 0 0 .8rem;
  }

  .company__data-block {
    padding: 0;
    display: inline-flex;
    width: auto;
  }

  .company__data-info svg {
    display: none;
  }
  
  .company__data-block .company__data-block-box {
    margin-top: 0;
    height: auto;
    min-height: 21.1rem;
    width: 100%;
  }
  
  .company__data-block--2 .company__data-block-box,
  .company__data-block--3 .company__data-block-box {
    margin-top: 0;
  }
  .company__data-block--1,
  .company__data-block--2,
  .company__data-block--3 {
    margin-left: 0;
  }
  .company__data-number {
      font-size: 3.2rem;
  }
  .company__data-value {
      font-size: 1.6rem;
  }
  .company__data-text {
      font-size: 1.3rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .company__image {
    height: 45rem;
  }

  .company__blocks {
    grid-template-columns: 1fr;
  }
  
  .company__data-block-wrapper {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
  }

  .company__data-block-wrapper::-webkit-scrollbar {
    display: none;
  }
  
  .company__main-block {
    padding: 3.2rem 1.6rem 4.8rem;
  }

  .company__data-block .company__data-block-box {
    width: 21.1rem;
    flex: 0 0 21.1rem;
  }

  .company__list-text br {
    display: none;
  }

  .company__bg {
    display: none;
  }
}


/*------------------------------------------------
 * BREADCRUMB STYLES
 *------------------------------------------------*/
 .breadcrumbs {
  margin-bottom: 0;
}

.page-template-page-simple .breadcrumbs {
  padding: 4rem;
  font-size: 1.6rem;
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
}

.breadcrumbs__list {
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  align-items: center;
  margin: 0;
  padding: 0;
  overflow-x: auto;
}

.breadcrumbs__list::-webkit-scrollbar {
  display: none;
}

.breadcrumbs__item {
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.breadcrumbs a,
.breadcrumbs a:visited,
.breadcrumbs__link,
.breadcrumbs__link:visited {
  color: #838383;
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  font-weight: 400;
  text-decoration: none;
  transition: color 0.3s ease;
}

.breadcrumbs__link:hover {
  color: var(--white);
}

.breadcrumbs a:hover {
  color: var(--header-bg-dark);
}

.breadcrumbs__separator {
  color: #838383;
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  font-weight: 400;
}

.breadcrumbs__current {
  color: var(--white);
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  font-weight: 400;
}

.breadcrumbs .breadcrumb_last,
.page-header--light .breadcrumbs__current {
  color: var(--text-color-light);
}

@media (max-width: 1079px) {
  .breadcrumbs {
    padding: 0;
    color: #838383;
  }
  .page-template-page-simple .breadcrumbs {
    padding: 3.2rem 2.4rem;
  }
}

@media (max-width: 767px) {
  .breadcrumbs {
    margin: 0 -1.6rem;
    padding: 0 1.6rem;
  } 
}

/*------------------------------------------------
 * SECTION: VIDEO COLUMN
 *------------------------------------------------*/
 .video-column {
  padding: 4rem;
  overflow: hidden;
}

.video-column__content {
  display: flex;
  flex-direction: row;
  gap: 4rem;
  align-items: flex-start;
  justify-content: space-between;
}

/* Left side with title */
.video-column__info {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  flex: 1;
}

.video-column__title {
  font-size: 2.6rem;
  line-height: 100%;
  letter-spacing: -0.02em;
  font-weight: 500;
  margin: 0;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
}

.video-column__source {
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  align-items: center;
  height: 3rem;
}

.video-column__source-text {
  color: #838383;
  font-size: 1.6rem;
  line-height: 130%;
  letter-spacing: -0.02em;
  font-weight: 400;
  min-height: 3rem;
  display: flex;
  align-items: center;
  white-space: nowrap;
}

/* Right side with player */
.video-column__player {
  position: relative;
  display: flex;
  flex-shrink: 0;
}

.video-column__thumbnail {
  background: #ffffff;
  border-radius: 50%;
  width: 10.6rem;
  height: 10.6rem;
  overflow: hidden;
  position: relative;
}

.video-column__thumbnail--placeholder {
  background-color: #1a1a1a;
}

.video-column__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.video-column__play-button {
  position: relative;
  margin-left: -0.8rem;
  background: #ffffff;
  border-radius: 50%;
  border: 0.8rem solid #0e0e0e;
  width: 10.6rem;
  height: 10.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transform: rotate(0deg);
  transition: transform 0.3s ease;
  text-decoration: none;
}

.video-column__play-button:hover {
  transform: rotate(45deg);
}

.video-column__play-icon {
  width: 5.6rem;
  height: 5.6rem;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .video-column {
    padding: 3.2rem 2.4rem;
  }

  .video-column .container {
      padding: 0;
  }
  
  .video-column__content {
    gap: 2.4rem;
  }
  
  .video-column__title {
    font-size: 2rem;
    font-weight: 500;
    line-height: 100%; /* 2rem */
    letter-spacing: -0.04rem;
  }

  .video-column__title br {
    display: none;
  }
  
  .video-column__thumbnail,
  .video-column__play-button {
    width: 9rem;
    height: 9rem;
    border-width: 0.8rem;
  }
  
  .video-column__play-icon {
    width: 5.6rem;
    height: 5.6rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .video-column {
    padding: 3.2rem 1.6rem;
  }
  
  .video-column__content {
    flex-direction: column;
  }
  
  .video-column__info {
    gap: 1.6rem;
    width: 100%;
  }
  
  .video-column__title {
    font-size: 2rem;
    font-weight: 500;
    line-height: 100%; /* 2rem */
    letter-spacing: -0.06rem;
  }
  
  .video-column__player {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    gap: 1.6rem;
  }
  
  .video-column__thumbnail,
  .video-column__play-button {
    width: 7rem;
    height: 7rem;
    border-width: 0.6rem;
  }
  
  .video-column__play-icon {
    width: 4.2rem;
    height: 4.2rem;
  }
}

/*------------------------------------------------
 * SECTION: BIG IMAGES SLIDER
 *------------------------------------------------*/
 .big-images-slider {
  position: relative;
  background: #ffffff;
  height: 72rem;
  overflow: hidden;
}

.big-images-slider__container {
  position: relative;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
}

.big-images-slider__track {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/* Updated for fade effect */
.big-images-slider__slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  z-index: 1;
  transition: opacity 0.8s ease, visibility 0.8s ease;
}

.big-images-slider__slide--active {
  opacity: 1;
  visibility: visible;
  z-index: 2;
}

.big-images-slider__image {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.big-images-slider__nav {
  position: absolute;
  z-index: 10;
  bottom: 4rem;
  left: 4rem;
  display: flex;
  gap: .8rem;
}

.big-images-slider__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  border: none;
  padding: 1.6rem;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.big-images-slider__nav-btn:hover {
  background-color: #f5f5f5;
}

.big-images-slider__arrow {
  width: 3.2rem;
  height: 3.2rem;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .big-images-slider {
    height: 45rem;
  }
  
  .big-images-slider__nav-btn {
    width: 4.4rem;
    height: 4.4rem;
    padding: 0;
    border-radius: 0;
  }
  
  .big-images-slider__nav--prev {
    right: 5.6rem;
  }
  
  .big-images-slider__arrow {
    width: 2.8rem;
    height: 2.8rem;
  }

  .big-images-slider__nav {
    bottom: 2.4rem;
    left: 2.4rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .big-images-slider {
    height: 45rem;
  }
  
  .big-images-slider__nav {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 5.6rem;
    padding: 0;
    gap: 0;
    background-color: var(--white);
  }

  .big-images-slider__nav-btn {
      width: 50%;
      height: 5.6rem;
  }
  
  .big-images-slider__nav--prev {
    border-right: 1.5px solid #F1F1F1;
  }
  
  .big-images-slider__arrow {
    width: 2.4rem;
    height: 2.4rem;
  }

  .page-header__description {
    margin-top: 0.8rem;
  }
}

/*------------------------------------------------
 * SECTION: BIG ICONS
 *------------------------------------------------*/
 .big-icons {
  display: flex;
  flex-direction: column;
  width: 100%;
}

/* Header section */
.big-icons__header {
  background-color: #0e0e0e;
  padding: 7rem 4rem 4rem;
  display: flex;
  align-items: flex-end;
}

.big-icons__title {
  color: #ffffff;
  font-size: 6.4rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  min-height: 7.2rem;
  margin: 0;
}

/* Systems row section */
.big-icons__systems {
  display: grid;
  /* Dynamic column count based on number of items (max 4) */
  background-color: #0e0e0e;
  border-top: 2px solid #262626;
  height: 36rem;
}

.big-icons__system {
  padding: 4rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-right: 2px solid #262626;
  background-color: #0E0E0E;
  position: relative;
  overflow: hidden;
  filter: invert(0);
  transition: filter .3s ease-in-out;
}

.big-icons__system:hover {
  filter: invert(1);
}

.big-icons__system--last {
  border-right: none;
}

.big-icons__icon-wrapper {
  width: 7.2rem;
  height: 7.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.big-icons__icon {
  width: 7.2rem;
  height: 7.2rem;
  object-fit: contain;
}

.big-icons__system-info {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.2rem;
  width: 100%;
}

.big-icons__system-title {
  color: #ffffff;
  font-size: 2.6rem;
  line-height: 100%;
  letter-spacing: -0.02em;
  font-weight: 500;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
}

.big-icons__arrow-link,
.big-icons__arrow-placeholder {
  opacity: 0;
  padding: 0.4rem 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s ease;
}

.big-icons__arrow-icon {
  width: 2.4rem;
  height: 2.4rem;
}

.big-icons__arrow-link {
  text-decoration: none;
  transform: translateX(-5px);
  transition: transform .3s ease-in-out;
}

/* Hover effects */
.big-icons__system:hover .big-icons__arrow-link {
  opacity: 1;
  transform: translateX(0rem);
}

/* Special styling for 4-column layout */
@media (min-width: 1079px) {
  .big-icons__systems[style*="grid-template-columns: repeat(4, 1fr)"] .big-icons__system {
    padding: 3rem;
  }
  
  .big-icons__systems[style*="grid-template-columns: repeat(4, 1fr)"] .big-icons__system-title {
    font-size: 2.2rem;
  }
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .big-icons__header {
    padding: 5.6rem 2.4rem 3.2rem;
  }
  
  .big-icons__title {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 100%; /* 3.6rem */
    letter-spacing: -0.108rem;
    min-height: unset;
  }

  .big-icons__systems {
    height: auto;
    grid-template-columns: repeat(2, 1fr) !important; 
  }

  .big-icons__systems.big-icons__systems--more-than-3 {
    grid-template-columns: repeat(3, 1fr) !important;
  }
  
  .big-icons__system {
    padding: 2.4rem;
    min-height: 18rem;
    border-right: none;
    border-bottom: 2px solid #262626;
    border-right: 2px solid #262626;
  }
  
  .big-icons__system--last {
    border-bottom: none;
  }
  
  .big-icons__icon-wrapper {
    width: 4.4rem;
    height: 4.4rem;
  }

  .big-icons__arrow-link {
    display: none;
  }
  
  .big-icons__icon {
    width: 4.4rem;
    height: 4.4rem;
  }
  
  .big-icons__system-title {
    font-size: 2rem;
    font-weight: 500;
    line-height: 100%; /* 2rem */
    letter-spacing: -0.04rem;
  }
  
  /* Show arrows on mobile always for better UX */
  .big-icons__arrow-link,
  .big-icons__arrow-placeholder {
    opacity: 1;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .big-icons__header {
    padding: 5.6rem 1.6rem 3.2rem;
  }
  
  .big-icons__title {
    font-size: 3.6rem;
  }

  .big-icons__arrow-link, .big-icons__arrow-placeholder {
    display: block;
  }
  
  .big-icons__system {
    padding: 0 1.6rem;
    min-height: auto;
    align-items: center;
    flex-direction: row;
    gap: 2.4rem;
    height: 8rem;
  }

  .big-icons__systems.big-icons__systems--more-than-3 {
    grid-template-columns: 1fr !important;
  }
  
  .big-icons__icon-wrapper {
    width: 2.8rem;
    height: 2.8rem;
  }
  
  .big-icons__icon {
    width: 2.8rem;
    height: 2.8rem;
  }
  
  .big-icons__system-title {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 110%; /* 1.98rem */
    letter-spacing: -0.036rem;
  }
  
  .big-icons__arrow-icon {
    transform: rotate(-45deg);
  }

  .big-icons__system-info {
    gap: 2.4rem;
    justify-content: space-between;
  }

  .big-icons__systems {
    grid-template-columns: 1fr!important;
    height: auto;
  }
}

/*------------------------------------------------
 * SECTION: CASE DESCRIPTION
 *------------------------------------------------*/
 .case-description {
  position: relative;
  padding-bottom: 50rem;
  background-color: #0E0E0E;
  overflow: visible;
  z-index: 1;
}

.case-description__main-image {
  width: 100%;
  height: 81.1rem;
  position: relative;
  overflow: hidden;
}

.case-description__hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.case-description__columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

/* Solutions Column */
.case-description__solutions {
  background-color: #fe5639;
  color: #ffffff;
  padding: 4rem 8rem 4rem 4rem;
  height: 75rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  transform: translateY(-15rem);
}

.case-description__content {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  height: 100%;
}

.case-description__label-wrapper {
  margin-bottom: -2.4rem; /* Negative margin to reduce gap with title */
}

.case-description__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 3.2rem;
  padding: 1rem;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 130%;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  background-color: #ffffff;
  color: #0e0e0e;
}

.case-description__title {
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.03em;
  width: 62px;
  max-width: 100%;
  margin: 0;
}

.case-description__text {
  margin-top: auto;
  font-size: 1.8rem;
  line-height: 140%;
  letter-spacing: -0.005em;
}

/* Support bullet points in the WYSIWYG content */
.case-description__text ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.case-description__text ul li {
  position: relative;
  padding-left: 2.4rem;
  margin-bottom: 1.6rem;
}

.case-description__text ul li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6rem;
  width: 1.2rem;
  height: 1.2rem;
  background-color: currentColor;
  border-radius: 50%;
}

.case-description__text p {
  margin: 0 0 1.6rem;
}

.case-description__text p:last-child {
  margin-bottom: 0;
}

/* Results Column */
.case-description__results {
  background-color: #f1f1f1;
  color: #0e0e0e;
  padding: 4rem 8rem 4rem 4rem;
  height: 75rem;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.case-description__results svg {
  position: absolute;
  top: 0;
  right: 0;
}

.case-description__bg-vector {
  position: absolute;
  right: -50.4rem;
  top: 68.7rem;
  transform: translate(4.5rem, -68.7rem);
  width: 126.9rem;
  height: 122.2rem;
  color: currentColor;
  pointer-events: none;
}

.case-description__icon {
  width: 8.8rem;
  height: 8.8rem;
  margin-bottom: 4rem;
}

.case-description__results-content {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-top: auto;
}

.case-description__subtitle {
  font-size: 3.2rem;
  font-weight: 600;
  line-height: 110%;
  letter-spacing: -0.02em;
  margin: 0;
}

.case-description__results-text {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  font-size: 1.8rem;
  line-height: 140%;
  letter-spacing: -0.005em;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.case-description__results-text p {
  margin: 0;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .case-description {
    padding-bottom: 0;
    margin-bottom: 0; /* Adjust for stacked columns */
  }
  
  .case-description__main-image {
    height: 50rem;
  }

  .case-description__columns {
    position: relative;
  }

  .case-description__label {
      padding: .8rem .9rem;
      height: 2.3rem;
      font-size: 1rem;
  }
  
  .case-description__solutions,
  .case-description__results {
    padding: 3.2rem 2.4rem 4.8rem;
    height: auto;
    min-height: 50rem;
    transform: none;
  }
  
  .case-description__title {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 100%; /* 3.6rem */
    letter-spacing: -0.108rem;
  }
  
  .case-description__subtitle {
    font-size: 2.8rem;
  }
  
  .case-description__icon {
    width: 5.6rem;
    height: 5.6rem;
    margin-bottom: auto;
  }
  
  .case-description__text,
  .case-description__results-text {
    font-size: 1.4rem;
    line-height: 140%; /* 1.96rem */
    letter-spacing: -0.007rem;
  }

  .case-description__text ul li:last-child {
    margin: 0;
  }

  .case-description__results-content {
    gap: 2.4rem;
  }

  .case-description__results svg {
    display: none;
  }
  
  .case-description__bg-vector {
    width: 70rem;
    height: 70rem;
    right: -20rem;
    top: 40rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .case-description__columns {
    grid-template-columns: 1fr;
  }

  .case-description__label-wrapper {
      margin-bottom: 0;
  }
  
  .case-description__main-image {
    height: 45rem;
  }
  
  .case-description__solutions,
  .case-description__results {
    padding: 3.2rem 1.6rem 4.8rem;
    min-height: 42rem;
  }
  
  .case-description__title {
    font-size: 3.2rem;
  }
  
  .case-description__subtitle {
    font-size: 2.4rem;
  }
  
  .case-description__content {
    gap: 1.2rem;
  }
  
  .case-description__icon {
    width: 4.8rem;
    height: 4.8rem;
    margin-bottom: 7.2rem;
  }

  .case-description__text {
    margin-top: 2rem;
  }
  
  .case-description__text,
  .case-description__results-text {
    font-size: 1.5rem;
    line-height: 140%; /* 2.1rem */
    letter-spacing: -0.0075rem;
  }

  .case-description__text ul li {
      margin-bottom: 2rem;
  }
  
  .case-description__results-content {
    gap: 2.4rem;
  }
  
  .case-description__bg-vector {
    width: 50rem;
    height: 50rem;
    right: -25rem;
    top: 25rem;
  }
}


/*------------------------------------------------
 * SECTION: DOUBLE TEXT IMAGE
 *------------------------------------------------*/
 .double-text-image {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background-color: var(--background-light, #F1F1F1);
  min-height: 72rem;
}

/* Reverse order if needed */
.double-text-image--reverse {
  
}

.double-text-image--reverse .double-text-image__text,
.double-text-image--reverse .double-text-image__image,
.double-text-image--reverse .double-text-image__content {
  direction: ltr;
}

/* Text Block */
.double-text-image__text {
  position: relative;
  background-color: inherit;
  padding: 4rem 8rem 4rem 4rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: inherit;
}

.double-text-image__bg {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
  display: flex;
  align-items: flex-end;
}

.double-text-image__bg--right {
  justify-content: flex-end;
}

.double-text-image__vector {
  width: 64.5rem;
  height: 64.5rem;
  position: absolute;
  left: -3rem;
  bottom: -18.3rem;
  color: currentColor;
}

.double-text-image__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  max-width: 64rem;
  height: 100%;
}

.double-text-image__undertitle-wrapper {
  margin-bottom: 0.8rem;
}

.double-text-image__undertitle {
  padding: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 3.2rem;
  border-radius: 3.2rem;
  border: 0.15rem solid currentColor;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 130%;
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

.double-text-image__title {
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.03em;
  margin: 0;
}

/* WYSIWYG Content */
.double-text-image__wysiwyg {
  margin-top: auto;
  font-size: 1.8rem;
  line-height: 140%;
  letter-spacing: -0.005em;
}

.double-text-image__wysiwyg ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.double-text-image__wysiwyg li {
  display: flex;
  gap: 1.2rem;
}

.double-text-image__wysiwyg li::before {
  content: "";
  height: 1.2rem;
  width: 1.2rem;
  flex: 0 0 1.2rem;
  border-radius: 50%;
  margin: 1.2rem;
  background-color: #0E0E0E;
}

.double-text-image__wysiwyg[data-bg="black"] li::before {
  opacity: .5;
  background-color: #ffffff;
}

.double-text-image__wysiwyg p {
  margin: 0 0 2rem;
}

.double-text-image__wysiwyg p:last-child {
  margin-bottom: 0;
}

/* List Items - Updated to match Figma design */
.double-text-image__list {
  padding: 0 11rem 0 0;
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

.double-text-image__item {
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  align-items: flex-start;
  width: 100%;
}

.double-text-image__bullet {
  width: 2.4rem;
  height: 3.2rem;
  position: relative;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.double-text-image__bullet-dot {
  width: 1.2rem;
  height: 1.2rem;
  background-color: currentColor;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.double-text-image__item-container {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  flex: 1;
}

.double-text-image__item-title {
  color: var(--text-color-dark, #0E0E0E);
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -0.02em;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
  width: 100%;
}

.double-text-image__item-text {
  color: #939393;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 130%;
  letter-spacing: -0.005em;
  width: 100%;
}

/* Image Block */
.double-text-image__image {
  position: relative;
  overflow: hidden;
  background-color: var(--background-light, #F1F1F1);
}

.double-text-image__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.double-text-image--reverse .double-text-image__text {
  background-color: #F1F1F1;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  
  .double-text-image__text {
      padding: 3.2rem 2.4rem 4rem;
      order: 1;
  }
  
  .double-text-image__image {
      min-height: 40rem;
      order: 2;
  }
  
  /* Restore original order even on tablet */
  .double-text-image--reverse .double-text-image__text {
      order: 3;
  }
  
  .double-text-image--reverse .double-text-image__image {
      order: 2;
  }
  
  .double-text-image__title {
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 100%; /* 3.2rem */
    letter-spacing: -0.096rem
  }
  
  .double-text-image__title br {
      display: none;
  }
  
  .double-text-image__vector {
      width: 40rem;
      height: 40rem;
      left: -10rem;
      bottom: -10rem;
  }

  .double-text-image__undertitle {
    height: 2.3rem;
    font-size: 1rem;
  }

  .double-text-image__undertitle-wrapper {
      margin-bottom: 0;
  }

  .double-text-image__content {
    gap: 1.2rem;
  }
  
  .double-text-image__list {
      padding: 0;
      gap: 2.4rem;
  }
  
  .double-text-image__item-title {
      font-size: 2rem;
  }
  
  .double-text-image__wysiwyg {
      font-size: 1.3rem;
      line-height: 140%; /* 1.82rem */
      letter-spacing: -0.0065rem;
      margin-top: auto;
  }

  .double-text-image__wysiwyg li::before {
    height: .8rem;
    width: .8rem;
    flex: 0 0 .8rem;
    margin: 1.6rem;
  }

  .double-text-image__wysiwyg li {
    gap: .4rem;
  }

  .double-text-image {
    min-height: 45rem;
  }
  .double-text-image__bg {
    display: none;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .double-text-image {
      grid-template-columns: 1fr;
      min-height: auto;
  }

  .double-text-image__text {
      padding: 3.2rem 1.6rem;
  }
  
  .double-text-image__image {
      min-height: 45rem;
      order: 1;
  }
  
  .double-text-image__text {
      order: 2;
  }
  
  .double-text-image__undertitle {
      font-size: 1.2rem;
      padding: 0.8rem;
  }

  .double-text-image.double-text-image--reverse .double-text-image__content {
    order: 3;
  }
  
  .double-text-image__title {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 100%; /* 3.6rem */
    letter-spacing: -0.108rem;
  }
  
  .double-text-image__list {
      gap: 2rem;
  }
  
  .double-text-image__item-title {
      font-size: 1.8rem;
      min-height: 2.4rem;
  }
  
  .double-text-image__item-text {
      font-size: 1.3rem;
  }
  
  .double-text-image__vector {
      width: 30rem;
      height: 30rem;
  }
  
  .double-text-image__wysiwyg {
      margin-top: 2rem;
      font-size: 1.3rem;
      line-height: 130%; /* 1.69rem */
      letter-spacing: -0.0065rem;
  }

  .double-text-image__wysiwyg li::before {
      height: 1.2rem;
      width: 1.2rem;
      flex: 0 0 1.2rem;
      margin: 1.2rem;
  }
  .double-text-image {
    min-height: 45rem;
    display: flex;
    flex-direction: column-reverse;
  }
}

/*------------------------------------------------
 * SECTION: PAGE HEADER WITH TAXONOMY NAVIGATION
 *------------------------------------------------*/

.page-header {
  position: relative;
  background: var(--text-color-light);
  padding: 4rem 4rem 6rem;
  color: var(--white);
}

.page-header.page-header--light {
  background: var(--header-bg-light);
  color: var(--text-color-light);
}

.page-header__content {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

/* Page Title */
.page-header__title {
  color: var(--white);
  font-family: var(--primary-font);
  font-size: 7.6rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  margin: 0;
}

.page-header--light .page-header__title {
  color: var(--text-color-light);
}

/* Description Text */
.page-header__description {
  display: flex;
  flex-direction: row;
  gap: 4rem;
}

.page-header__text {
  color: #838383;
  font-family: var(--primary-font);
  font-size: 1.8rem;
  line-height: 140%;
  letter-spacing: -0.005em;
  font-weight: 400;
  max-width: 66.4rem;
  flex: 1;
  margin: 0;
}

.page-header--light .page-header__text {
  color: var(--text-color-light);
}

.page-header__bg {
  position: absolute;
  right: 0;
  bottom: 0; 
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
  display: flex;
  align-items: end;
  justify-content: end;
}

.page-header__bg svg {
  
}

/* Taxonomy Navigation */
.taxonomy-nav {
  margin-top: 1.6rem;
  display: flex;
  flex-direction: row;
  width: fit-content;
  border: 0.15rem solid #ffffff;
}

.taxonomy-nav__item {
  padding: 0.8rem 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.taxonomy-nav__item--active {
  background-color: #ffffff;
}

.taxonomy-nav__text {
  color: #838383;
  text-align: center;
  font-family: var(--primary-font);
  font-size: 1.4rem;
  letter-spacing: -0.015em;
  font-weight: 600;
  text-transform: uppercase;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.3s ease;
}

.taxonomy-nav__item--active .taxonomy-nav__text {
  color: #0e0e0e;
}

.taxonomy-nav__item:hover:not(.taxonomy-nav__item--active) .taxonomy-nav__text {
  color: #ffffff;
}


/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .page-header {
      padding: 3.2rem 2.4rem 5.6rem;
  }

  .single-expert .page-header {
    padding: 3.2rem 2.4rem;
  }

  .page-header__bg {
    display: none;
  }
  
  .page-header__content {
      gap: 2.4rem;
  }
  
  .page-header__title {
    font-size: 3.8rem;
    font-weight: 600;
    line-height: 100%; /* 3.8rem */
    letter-spacing: -0.114rem;
  }
  
  .page-header__description {
      flex-direction: column;
      gap: 2rem;
  }
  
  .page-header__text {
    font-size: 1.5rem;
    line-height: 140%;
    letter-spacing: -0.0075rem;
  }
  
  .page-header__text p:last-child {
    margin: 0;
  }

  .taxonomy-nav::-webkit-scrollbar {
      display: none;
  }

  .taxonomy-nav__item {
      flex: 0 0 auto;
      white-space: nowrap;
  }

  .taxonomy-nav__text {
      min-height: 3rem;
      font-size: 1.2rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .page-header {
      padding: 2.4rem 1.6rem 5.6rem;
  }
  
  .page-header__content {
      gap: 1.6rem;
  }
  
  .page-header__title {
    font-size: 3.8rem;
    line-height: 100%; /* 3.8rem */
    letter-spacing: -0.114rem;
  }
  
  .page-header__title br {
      display: none;
  }
  
  .page-header__text {
    font-size: 1.5rem;
    line-height: 140%; /* 2.1rem */
    letter-spacing: -0.0075rem;
  }
  
  .page-header__text br {
      display: none;
  }
  
  .taxonomy-nav {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    width: calc(100% + 3.2rem);
    margin-left: -1.6rem;
    padding: 0 1.6rem;
    border: none;
    justify-content: flex-start;
  }

  .taxonomy-nav__item {
      padding: 0.6rem 1.2rem;
      border: 0.15rem solid #ffffff;
      margin-right: 0.8rem;
  }

  .taxonomy-nav__item:last-child {
      margin-right: 1.6rem;
  }

  .taxonomy-nav__text {
      min-height: 2.4rem;
      font-size: 1.2rem;
  }
}

/*------------------------------------------------
 * ARTICLE STYLES
 *------------------------------------------------*/
.article {
  padding: 4rem 4rem 10rem;
  margin: 0 auto;
  max-width: 88rem;
  width: 100%;
}

.article__content {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}

.article__content h1 {
  margin: 0;
  font-size: 6.4rem;
  line-height: 100%;
  font-weight: 600;
  letter-spacing: -0.021rem;
}

.article__content h2 {
  margin-top: 0;
  margin-bottom: 1.2rem;
  font-size: 3.2rem;
  line-height: 100%;
  font-weight: 600;
  letter-spacing: -0.0064rem;  
}

.article__content p {
  font-size: 1.6rem;
  line-height: 140%;
  letter-spacing: -0.008rem;
}

.article__content p:not(:last-child) {
  margin-bottom: 1.4rem;  
}

.article__content ul,
.article__content ol {
  margin-bottom: 1.4rem;
}

.article__content ul li,
.article__content ol li {
  margin-bottom: .8rem;
  font-size: 1.6rem;
  line-height: 140%;
  letter-spacing: -0.008rem;
  list-style: auto;
}


/* Mobile Breakpoint */
@media (max-width: 1079px) {
  .article {
    padding: 2rem 1.6rem 3.2rem;
    max-width: 100%;
    width: 100%;
  }
  
  .article__content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
  
  .article__content h1 {
    font-size: 3.2rem;
  }
  
  .article__content h2 {
    margin-bottom: 1.2rem;
    font-size: 2.4rem; 
  }
  
  .article__content p {
    font-size: 1.4rem;
  }
  
  .article__content p:not(:last-child) {
    margin-bottom: 1.2rem;  
  }
}

/*------------------------------------------------
 * SECTION: CALCULATOR
 *------------------------------------------------*/
 .calculator {
  color: var(--white);
}

.calculator__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

/* Left side with title and notification */
.calculator__left {
  position: relative;
  background-color: var(--orange-bg, #FE5639);
  padding: 4rem;
  display: flex;
  flex-direction: column;
  height: 72rem;
}

.calculator__content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.calculator__undertitle {
  padding: 1rem;
  border-radius: 3.2rem;
  margin-bottom: 1.6rem;
  background: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3rem;
  width: fit-content;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 130%;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: var(--text-color-light);
}

.calculator__title {
  color: var(--white);
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.03em;
  max-width: 60rem;
  margin: 0;
}

.calculator__notification {
  display: flex;
  gap: 0.8rem;
  margin-top: auto;
}

.calculator__notification-icon {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
}

.calculator__notification-text {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 140%;
  letter-spacing: -0.005em;
  margin: 0;
}

.calculator__bg-vector {
  position: absolute;
  left: -15.5rem;
  bottom: 0;
  width: 47.2rem;
  height: 47.2rem;
}

/* Right side with calculator form */
.calculator__right {
  position: relative;
  background-color: var(--background-light, #F1F1F1);
  height: 72rem;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.calculator__form {
  background: var(--white);
  padding: 2.4rem 4rem 4rem;
  display: flex;
  flex-direction: column;
  width: 48rem;
  height: 56rem;
  box-shadow: 0 0.4rem 4rem rgba(0, 0, 0, 0.05);
  z-index: 2;
}

.calculator__field {
  border-bottom: 2px solid #EAEAEA;
  padding: 2.4rem 0;
}

.calculator__field-label {
  color: var(--text-color-light);
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -0.01em;
  margin-bottom: 1.2rem;
}

/* Dropdown styling */
.calculator__dropdown {
  position: relative;
  cursor: pointer;
}

.calculator__dropdown-value {
  color: #838383;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -0.01em;
  display: flex;
  align-items: center;
  min-height: 2.4rem;
}

.calculator__dropdown-value--selected {
  color: var(--text-color-light);
}

.calculator__dropdown-arrow {
  position: absolute;
  right: 0;
  top: 50%;
  height: 2.4rem;
  width: 2.4rem;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}

.calculator__dropdown-arrow--open {
  transform: translateY(-50%) rotate(180deg);
}

.calculator__dropdown-list {
  position: absolute;
  top: calc(100% + 1.2rem);
  left: 0;
  width: 100%;
  background: var(--white);
  box-shadow: 0 0.4rem 2rem rgba(0, 0, 0, 0.1);
  z-index: 10;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  visibility: hidden;
}

.calculator__dropdown-list--open {
  max-height: 30rem;
  visibility: visible;
}

.calculator__dropdown-item {
  padding: 1.2rem;
  color: var(--text-color-light);
  font-size: 1.6rem;
  transition: color 0.3s ease;
}

.calculator__dropdown-item:hover {
  color: var(--orange-bg);
}

/* Input styling */
.calculator__input {
  background: transparent;
  border: none!important;
  color: var(--text-color-light)!important;
  font-family: var(--primary-font);
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -0.01em;
  width: 100%;
  padding: 0;
  outline: none;
  min-height: 2.4rem;
}

.calculator__input::placeholder {
  color: #838383;
}

/* Result styling */
.calculator__result {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}

.calculator__result-label {
  color: #939393;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -0.01em;
}

.calculator__result-value {
  color: var(--text-color-light);
  font-size: 5.6rem;
  font-weight: 600;
  line-height: 100%;
  letter-spacing: -0.03em;    
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  transition: opacity 0.3s ease;
}

.calculator__result-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 5.2rem;
  height: 5.2rem;
}

.calculator__result-button svg {
  height: 100%;
  width: 100%;
}

.calculator__corner-svg {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 72.4rem;
  height: 72.4rem;
}

.calculator__angle {
  position: absolute;
  right: -3.2rem;
  top: 50%;
  transform: translateY(-50%);
  height: 6.4rem;
  width: 3.2rem;
  z-index: 2;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  
  .calculator__left {
      padding: 3.2rem 2.4rem;
      height: auto;
  }

  .calculator__undertitle {
    padding: .8rem .9rem;
    margin-bottom: 1.2rem;
    height: 2.3rem;
    font-size: 1rem;
  }

  .calculator__content {
    justify-content: flex-start;
  }
  
  .calculator__title {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 100%; /* 3.6rem */
    letter-spacing: -0.108rem;
  }
  
  .calculator__notification {
      margin-top: auto;
  }

  .calculator__notification-text {
    font-size: 1.3rem;
    line-height: 130%; /* 1.69rem */
    letter-spacing: -0.0065rem;
  }
  
  .calculator__right {
      height: 45rem;
      background-color: var(--white);
  }
  
  .calculator__form {
    height: 100%;
    width: 100%;
  }
  
  .calculator__bg-vector,  
  .calculator__angle {
      display: none;
  }

  .calculator__input,
  .calculator__dropdown-value {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 100%; /* 1.4rem */
    letter-spacing: -0.014rem;
  }

  .calculator__field {
    padding: 1.6rem 0;
    margin-bottom: 1.2rem;
  }

  .calculator__result-label {
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: -0.013rem;
  }

  .calculator__result-total {
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: -0.108rem;
  }

  .calculator__dropdown-arrow {
    height: 2rem;
    width: 2rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .calculator__left {
      padding: 3.2rem 1.6rem;
  }
  
  .calculator__title {
      font-size: 3.6rem;
      margin-bottom: 2.4rem;
  }
  
  .calculator__notification {
      margin-top: 2.4rem;
  }
  
  .calculator__notification-text {
      font-size: 1.4rem;
  }

  .calculator__right {
    height: auto;
    background-color: var(--white);
  }
  
  .calculator__form {
      padding: 3.2rem 1.6rem;
  }
  
  .calculator__field-label,
  .calculator__dropdown-value {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 100%; /* 1.4rem */
    letter-spacing: -0.014rem;
  }
  
  .calculator__input {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 100%; /* 1.4rem */
    letter-spacing: -0.014rem;
  }

  .calculator__result {
    margin-top: 5.6rem;
    flex-direction: column;
    gap: 0.8rem;
  }
  
  .calculator__result-label {
      font-size: 1.3rem;
      font-weight: 500;
      line-height: 100%; /* 1.3rem */
      letter-spacing: -0.013rem;
  }
  
  .calculator__result-value {
      font-size: 3.6rem;
  }

  .calculator__container {
    grid-template-columns: 1fr;
  }
}

/*------------------------------------------------
 * SECTION: CONTACTS
 *------------------------------------------------*/
 .contacts {
  display: flex;
}

.contacts__container {
  display: flex;
  width: 100%;
}

.contacts__left {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 4rem;
  height: 72rem;
  justify-content: space-between;
  position: relative;
}

.contacts__header {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}

.contacts__left-content {
  height: 100%;
  color: var(--white);
  display: flex;
  flex-direction: column;
}

.contacts__breadcrumbs {
  margin-bottom: 4rem;
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
  align-items: center;
}

.contacts__breadcrumb-item {
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  color: #838383;
  text-decoration: none;
}

.contacts__breadcrumb-separator {
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  color: #838383;
}

.contacts__breadcrumb-current,
.contacts__breadcrumb-link {
  font-family: var(--primary-font);
  font-size: 1.4rem;
  line-height: 140%;
  letter-spacing: -0.02em;
  color: var(--white);
}

.contacts__breadcrumb-link,
.contacts__breadcrumb-separator,
.contacts__breadcrumb-link:visited,
.contacts__breadcrumb-separator:visited {
  color: #838383;
}

.contacts__title {
  font-family: var(--primary-font);
  font-size: 7.2rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  margin: 0;
}

.contacts__address {
  margin-top: auto;
  font-family: var(--primary-font);
  font-size: 2.2rem;
  letter-spacing: -0.005em;
  font-weight: 500;
  line-height: 1.1;
}

.contacts__right {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.contacts__block {
  display: flex;
  flex-direction: column;
  padding: 4rem;
  gap: 1.6rem;
  flex: 1;
  position: relative;
}

.contacts__block--phones {
  border-bottom: 2px solid #0e0e0e;
}

.contacts__block-label {
  font-family: var(--primary-font);
  font-size: 1.8rem;
  line-height: 100%;
  letter-spacing: -0.02em;
  font-weight: 400;
  color: #FFCCC4;
  margin-bottom: 0.8rem;
}

.contacts__block-content {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

.contacts__phones,
.contacts__emails {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

.contacts__phone,
.contacts__email {
  font-family: var(--primary-font);
  font-size: 5.2rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 400;
  color: var(--white);
  text-decoration: none;
  width: fit-content;
  transition: opacity 0.3s ease;
}

.contacts__phone:hover,
.contacts__email:hover {
  opacity: 0.8;
  color: white;
}



.contacts__angle {
  position: absolute;
  right: -3.2rem;
  top: 50%;
  transform: translateY(-50%);
  height: 6.4rem;
  width: 3.2rem;
  z-index: 2;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .contacts__container {
    
  }

  .contacts__breadcrumbs { 
    margin-bottom: 2.4rem;
  }
  
  .contacts__left {
      padding: 3.2rem 2.4rem;
      height: auto;
      min-height: 36rem;
  }
  
  .contacts__header {
      gap: 2.4rem;
  }
  
  .contacts__title {
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 100%; /* 3.2rem */
    letter-spacing: -0.096rem;
  }
  
  .contacts__address {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: normal;
    letter-spacing: -0.028rem;
  }
  
  .contacts__block {
    min-height: 25rem;
    padding: 2.4rem;
  }

  .contacts__block-content {
    gap: 0;
  }

  .contacts__block-label {
    font-size: 1.5rem;
    line-height: 100%; /* 1.5rem */
    letter-spacing: -0.03rem;
  }
  
  .contacts__phone,
  .contacts__email {
    font-size: 3.2rem;
    font-weight: 400;
    line-height: 100%; /* 3.2rem */
    letter-spacing: -0.096rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .contacts__breadcrumbs {
    margin-bottom: 3.2rem;
  }

  .contacts__container {
    flex-direction: column;
  }

  .contacts__left {
      padding: 1.6rem 1.6rem 3.2rem;
      min-height: unset;
  }
  
  .contacts__header {
      gap: 1.6rem;
  }
  
  .contacts__title {
    font-size: 3.8rem;
    font-weight: 600;
    line-height: 100%; /* 3.8rem */
    letter-spacing: -0.114rem;
  }
  
  .contacts__address {
      margin-top: 8rem;
      font-size: 1.4rem;
      line-height: 100%; /* 1.4rem */
      letter-spacing: -0.007rem;
  }
  
  .contacts__block {
      padding: 2.4rem 1.6rem;
  }
  
  .contacts__block-label {
    font-size: 1.6rem;
    font-size: 1.3rem;
    margin-bottom: 0.4rem;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: -0.026rem;
  }
  
  .contacts__phone,
  .contacts__email {
      font-size: 2.8rem;
      line-height: 100%; /* 2.8rem */
      letter-spacing: -0.084rem;
  }

  .contacts__block {
    min-height: 22rem;
  }

  .contacts__angle {
    position: absolute;
    right: 50%;
    top: unset;
    bottom: -3.6rem;
    transform: rotate(90deg) translateY(0);
    height: 4.8rem;
    width: 2.4rem;
    z-index: 2;
  }
}

/*------------------------------------------------
 * SECTION: MAP
 *------------------------------------------------*/
 .map {
  position: relative;
  width: 100%;
  height: 72rem;
  background-color: #f2f2f2;
}

.map__container {
  width: 100%;
  height: 100%;
}

/* Override Yandex Maps copyright to improve visibility */
.ymaps-2-1-79-copyright {
  background: rgba(255, 255, 255, 0.7) !important;
  padding: 0.5rem !important;
  border-radius: 0.4rem;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .map {
      height: 50rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .map {
      height: 40rem;
  }
}

/*------------------------------------------------
 * SECTION: 404 ERROR PAGE
 *------------------------------------------------*/
 .error-404 {
  padding: 2.5rem; /* 40px converted to REM */
  min-height: 50vh;
  background-color: #F1F1F1;
}

.error-404__container {
  max-width: 144rem; /* 1440px */
  margin: 0 auto;
  padding: 3rem 0;
}

.error-404__content {
  display: flex;
  flex-direction: column;
  gap: 4.8rem; /* 48px */
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  padding: 3rem 1rem;
  min-height: 50vh;
}

.error-404__heading {
  text-align: center;
  max-width: 88.75rem; /* 1420px */
  width: 100%;
}

.error-404__code {
  color: #0e0e0e;
  text-align: center;
  font-size: 6.4rem; /* 64px */
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  margin-bottom: 1.5rem;
}

.error-404__message {
  color: #0e0e0e;
  text-align: center;
  font-size: 1.8rem; /* 18px */
  line-height: 140%;
  letter-spacing: -0.005em;
  font-weight: 400;
}

.error-404__button {
  background: #0e0e0e;
  padding: 1.2rem 1.6rem 1.2rem 2.4rem; /* 12px 16px 12px 24px */
  display: flex;
  flex-direction: row;
  gap: 1.6rem; /* 16px */
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.error-404__button:hover {
  background: #333;
}

.error-404__button-text {
  color: #ffffff;
  font-size: 1.4rem; /* 14px */
  letter-spacing: -0.015em;
  font-weight: 700;
  text-transform: uppercase;
  min-height: 3.2rem; /* 32px */
  display: flex;
  align-items: center;
}

.error-404__arrow {
  flex-shrink: 0;
  width: 3.2rem; /* 32px */
  height: 3.2rem; /* 32px */
  aspect-ratio: 1;
  transform: rotate(-45deg);
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {
  .error-404 {
      padding: 2rem;
  }
  
  .error-404__content {
      gap: 2.5rem;
  }
  
  .error-404__code {
      font-size: 6.4rem;
      margin-bottom: 1.6rem;
  }
  
  .error-404__message {
      font-size: 1.8rem;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .error-404 {
      padding: 1.5rem;
  }
  
  .error-404__content {
      gap: 2rem;
  }
  
  .error-404__code {
      font-size: 3rem;
      margin-bottom: 1rem;
  }
  
  .error-404__message {
      font-size: 0.9375rem;
  }
  
  .error-404__button {
      width: 100%;
      justify-content: space-between;
      padding: 0.75rem 1rem;
  }
}

/*------------------------------------------------
 * MODAL STYLES
 *------------------------------------------------*/

/* Modal Styles */
.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 1000;
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0.3s ease, opacity 0.3s ease;
  pointer-events: none;
}

.modal--active {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.56);
  cursor: pointer;
}

.modal__container {
  position: relative;
  background-color: var(--white);
  padding: 4rem;
  width: 100%;
  max-width: 60rem;
  height: 100vh;
  overflow-y: hidden;
  z-index: 1;
  transform: translateX(100%);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
}

.modal--active .modal__container {
  transform: translateX(0);
}

.modal__header {
  margin-bottom: 3.2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#modal-search .modal__header {
  margin: 0;
}

.modal__title {
  font-size: 4rem;
  font-weight: 600;
  line-height: 100%;
  color: var(--black);
  margin: 0;
  letter-spacing: -0.014rem;
}

.modal__close {
  position: absolute;
  right: 1.6rem;
  top: 1.6rem;
  width: 3.2rem;
  height: 3.2rem;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: var(--black);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
}

.modal__close svg {
  width: 3.2rem;
  height: 3.2rem;
  fill: currentColor;
}

.modal__body {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

/* Contact Modal Styles */
.modal__contacts {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}

.modal__contact-item {
  display: flex;
  flex-direction: column;
}

.modal__contact-item a:visited,
.modal__contact-item a:active {
  color: var(--text-color-light)
}

.modal__contact-phone {
  font-size: 2.2rem;
  line-height: 100%;
  font-weight: 500;
  height: 5.2rem;
  display: flex;
  align-items: center;
  color: var(--black);
  text-decoration: none;
  transition: color 0.3s ease;
}

.modal__contact-phone:hover {
  color: var(--orange-bg);
}

.modal__contact-email {
  font-size: 2.2rem;
  line-height: 100%;
  font-weight: 500;
  height: 5.2rem;
  display: flex;
  align-items: center;
  color: var(--black);
  text-decoration: none;
  transition: color 0.3s ease;
}

.modal__contact-email:hover {
  color: var(--orange-bg);
}

.modal__contact-messenger {
  font-size: 2.2rem;
  line-height: 100%;
  font-weight: 500;
  height: 5.2rem;
  display: flex;
  align-items: center;
  color: var(--black);
  text-decoration: none;
  transition: color 0.3s ease;
}

.modal__contact-messenger:hover {
  color: var(--orange-bg);
}

.modal__contact-address {
  font-size: 2.2rem;
  line-height: 100%;
  font-weight: 500;
  height: 5.2rem;
  display: flex;
  align-items: center;
  color: var(--black);
}

.modal__social {
  display: flex;
  margin: auto -4rem -4rem;
}

.modal__social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: max-content;
  width: 100%;
  height: 8rem;
  background-color: var(--white);
  border-top: .15rem solid #DFDFDF;
  border-right: .15rem solid #DFDFDF;
  color: var(--black);
  transition: all 0.3s ease;
  text-decoration: none;
}

.modal__social-link:hover {
  background-color: var(--black);
  color: var(--white);
  border-color: var(--black);
}

.modal__social-icon {
  width: 8rem;
  height: 8rem;
  filter: invert(1);
  transition: .3s ease-in-out;
}

.modal__social-link:hover .modal__social-icon {
  filter: invert(0);
}

/* Main Menu Styles */
.modal__menu {
  margin-bottom: 5rem;
  padding-bottom: 2rem;
}

.modal__menu-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.modal__menu-list > li {
  border-bottom: 0.15rem solid #EAEAEA;
  margin-bottom: 0;
}

.modal__menu-list a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 2rem;
  letter-spacing: -0.06rem;
  font-weight: 600;
  color: var(--black);
  text-decoration: none;
  padding: 1.6rem 0;
  transition: color 0.3s ease;
}

.modal__menu-list a:hover {
  color: var(--orange-bg);
}

/* Стили для пунктов с подменю */
.modal__menu-item--has-children {
  position: relative;
}

.modal__menu-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.modal__menu-header a {
  flex: 1;
}

.modal__menu-toggle {
  background: none;
  border: none;
  padding: 1rem;
  margin-right: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transform: rotate(135deg);
}

.modal__menu-toggle svg {
  transition: transform 0.3s;
}

.modal__menu-item--has-children.expanded .modal__menu-toggle svg {
  transform: rotate(180deg);
}

/* Подменю */
.modal__submenu {
  padding: 0 0 0 2rem;
  margin: 0;
  list-style: none;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.modal__menu-item--has-children.expanded .modal__submenu {
  max-height: 50rem; /* Достаточно большое значение */
}

/* Элементы подменю */
.modal__submenu-item {
  border-top: 1px solid #EEEEEE;
}

.modal__submenu-item:first-child {
  border-top: 1px solid #EEEEEE;
}

.modal__submenu-link {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  font-size: 1.6rem !important;
  letter-spacing: -0.02em !important;
  font-weight: 500 !important;
  color: var(--black);
  text-decoration: none;
  padding: 1.4rem 0 !important;
}

/* Активный пункт подменю */
.modal__submenu-item--active .modal__submenu-link {
  background-color: #0E0E0E;
  color: #FFFFFF !important;
  padding: 1.4rem 1.6rem !important;
  margin: 0 -1.6rem;
}

/* Contact Form 7 Modal Styles */
.modal__form {
  position: relative;
  width: 100%;
  height: 100%;
}

.form-box {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.form-acceptance {
  font-size: 1.4rem;
  line-height: 130%;
}

.form-acceptance a {
  color: var(--text-color-light);
  font-weight: 600;
  transition: .3s ease-in-out;
}

.form-acceptance a:hover {
  color: var(--orange-bg);
}

.wpcf7 {
  width: 100%;
  height: 100%;
}

.wpcf7-form {
  width: 100%;
  height: 100%;
}

.wpcf7-form label {
  display: block;
  font-size: 1.4rem;
  margin-bottom: 0.8rem;
  color: var(--black);
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="email"],
.wpcf7-form textarea {
  width: 100%;
  padding: 2.5rem 0;
  font-size: 1.8rem;
  border: .2rem solid transparent;
  border-bottom: .2rem solid #EAEAEA;
  border-radius: 0;
  background-color: var(--white);
  color: var(--text-color-light);
  margin-bottom: .8rem;
  font-family: var(--primary-font);
  transition: .3s ease-in-out;
}

.wpcf7-form input[type="text"]::placeholder
.wpcf7-form input[type="tel"]::placeholder,
.wpcf7-form input[type="email"]::placeholder,
.wpcf7-form textarea::placeholder {
  color: #939393;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form textarea:focus {
  border-bottom: .2rem solid var(--text-color-light);
}

.wpcf7-form textarea {
  resize: vertical;
  max-height: 12.8rem;
  resize: none;
}

.wpcf7-form .wpcf7-acceptance {
  display: flex;
  align-items: flex-start;
  margin-bottom: 1.6rem;
}

.wpcf7-form .wpcf7-acceptance input {
  margin-top: .3rem;
  height: 1.8rem;
  width: 1.8rem;
  flex: 0 0 1.8rem;
  border: .15px solid #939393;
  appearance: none;
}

.wpcf7-form .wpcf7-acceptance input:checked {
  border: .15px solid var(--orange-bg);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='10' viewBox='0 0 12 10' fill='none'%3E%3Cpath d='M10 2L4.5 8L2 5.27273' stroke='%23FE5639' stroke-width='1.5' stroke-linecap='square'/%3E%3C/svg%3E");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.wpcf7-form .wpcf7-acceptance label {
  display: flex;
  gap: 1.2rem;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}

.wpcf7-form .wpcf7-acceptance label {
  font-size: 1.4rem;
  line-height: 1.4;
  margin-bottom: 0;
}

.wpcf7-form input[type="submit"] {
  display: inline-flex;
  padding: 1.2rem 2.4rem;
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--white);
  background-color: var(--black);
  text-transform: uppercase;
  height: 5.6rem;
  border: none;
  cursor: pointer;
  transition: background-color 0.3s ease;
  font-family: var(--primary-font);
  width: fit-content;
}

.wpcf7-form input[type="submit"]:hover {
  background-color: var(--orange-bg);
}

.wpcf7 .wpcf7-submit:disabled,
.wpcf7 .wpcf7-submit:disabled:hover {
  background-color: var(--text-color-gray);
}

/* Success Message Styling */
.modal__form-success {
  text-align: center;
  padding: 3rem 0;
}

.modal__success-icon {
  width: 8rem;
  height: 8rem;
  background-color: #4CAF50;
  color: var(--white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 3rem;
}

.modal__success-icon svg {
  width: 4rem;
  height: 4rem;
  fill: currentColor;
}

.modal__success-title {
  font-size: 2.4rem;
  font-weight: 500;
  margin-bottom: 1.5rem;
  color: var(--black);
}

.modal__success-text {
  font-size: 1.6rem;
  line-height: 1.5;
  color: var(--text-color-light);
  margin-bottom: 3rem;
}

.modal__button {
  padding: 1.5rem 3rem;
  font-size: 1.6rem;
  font-weight: 500;
  border: none;
  cursor: pointer;
  font-family: var(--primary-font);
}

.modal__button--success {
  background-color: var(--black);
  color: var(--white);
  transition: background-color 0.3s ease;
}

.modal__button--success:hover {
  background-color: var(--orange-bg);
}

/* Prevent body scrolling when modal is open */
body.modal-open {
  padding-right: 17px;
  overflow: hidden;
}

/* Tablet Breakpoint */
@media (max-width: 1079px) {  
  body.modal-open {
    padding-right: 0;
  }

  .modal__container {
    padding: 5.6rem 2.4rem 2.4rem;
    max-width: 100%;
    max-width: 36rem;
    height: 100svh;
  }

  .modal__menu {
    margin-bottom: 0;
  }

  .modal__menu-list {
    margin: 0 -2.4rem;
  }

  .modal__menu-list a {
      padding: 1.6rem 2.4rem;
  }

  .modal__menu-list a svg {
    height: 2.4rem;
    width: 2.4rem;
    flex: 0 0 2.4rem;
  }

  .modal__header {
    margin-bottom: 2.4rem;
  }

  .modal__social-icon {
      width: 6.4rem;
      height: 6.4rem;
  }

  #modal-menu .modal__header {
      margin-bottom: 0;
  }
  
  .modal__title {
    font-size: 3.8rem;
    letter-spacing: -0.076rem;
  }

  .modal__contact-phone, 
  .modal__contact-email, 
  .modal__contact-messenger, 
  .modal__contact-address {
      font-size: 1.8rem;
      height: 3.2rem;
      letter-spacing: -0.018rem;
  }

  .modal__menu + .modal__contacts .modal__contact-phone, 
  .modal__menu + .modal__contacts .modal__contact-email, 
  .modal__menu + .modal__contacts .modal__contact-messenger, 
  .modal__menu + .modal__contacts .modal__contact-address {
      font-size: 1.6rem;
  }

  .modal__contacts {
      gap: 2.4rem;
  }

  #modal-menu .modal__contacts {
    gap: 0;
  }

  .modal__close {
      right: 2.4rem;
      top: 2.4rem;
      width: 2.4rem;
      height: 2.4rem;
  }
  
  .modal__close svg {
      width: 2.4rem;
      height: 2.4rem;
  }

  .modal__social-link {
      height: 9rem;
  }

  .modal__social {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      margin: auto -2.4rem -2.4rem;
  }
  
  #modal-menu .modal__body {
      justify-content: space-between;
  }
  
  /* Form Optimization */
  .wpcf7-form input[type="text"],
  .wpcf7-form input[type="tel"],
  .wpcf7-form input[type="email"],
  .wpcf7-form textarea {
    padding: 1.5rem 0;
    font-size: 1.6rem;
  }
  
  .wpcf7-form input[type="submit"] {
    width: 100%;
  }
}

/* Mobile Breakpoint */
@media (max-width: 767px) {
  .modal {
    width: 100vw;
  }  

  .modal__container {
    padding: 3.2rem 1.6rem 1.6rem;
  }
  
  .modal__close {
      right: 1.6rem;
      top: 1.6rem;
      width: 2.4rem;
      height: 2.4rem;
  }

  .modal__menu-list {
    margin: 0 -1.6rem;
  }

  .modal__menu-list a {
      padding: 1.6rem;
  }

  .modal__social {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      margin: auto -1.6rem -1.6rem;
  }
}

/*------------------------------------------------
 * SEO STYLES
 *------------------------------------------------*/

.sections-seo {
  background: #f1f1f1;
  padding: 4rem 48rem 4rem 4rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  overflow: hidden;
}

.sections-seo__content {
  position: relative;
  width: 100%;
  color: #0e0e0e;
  font-size: 1.6rem;
  line-height: 140%;
  letter-spacing: -0.005em;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.sections-seo__content h1,
.sections-seo__content h2,
.sections-seo__content h3,
.sections-seo__content h4,
.sections-seo__content h5,
.sections-seo__content h6 {
  font-weight: 600;
  color: #0e0e0e;
  margin: 0;
  line-height: 110%;
}

.sections-seo__content h1 {
  font-size: 4rem; 
  line-height: 100%;
  letter-spacing: -0.03em;
}

.sections-seo__content h2 { 
  margin-top: 3.2rem;
  font-size: 3.2rem; 
  line-height: 100%;
  letter-spacing: -0.03em;
}

.sections-seo__content h3 { 
  font-size: 2.4rem;
  line-height: 100%;
  letter-spacing: -0.03em;
}

.sections-seo__content h4 { font-size: 2rem; }
.sections-seo__content h5 { font-size: 1.8rem; }
.sections-seo__content h6 { font-size: 1.6rem; }

.sections-seo__content p {
  margin: 0;
}

.sections-seo__content ul,
.sections-seo__content ol {
  margin: 1.6rem 0 1.6rem 2.4rem;
  padding: 0;
}

.sections-seo__content li {
  margin-bottom: 0.8rem;
  font-size: 1.6rem;
  line-height: 140%;
}

.sections-seo__toggle {
  padding: 1.2rem 1.6rem 1.2rem 2.4rem;
  border: 1.4px solid #0e0e0e;
  margin-top: 2.4rem;
  display: flex;
  flex-direction: row;
  border-radius: 0;
  gap: 1.6rem;
  align-items: center;
  background: none;
  cursor: pointer;
  font-size: 1.4rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #0e0e0e;
  transition: 0.2s;
}

.sections-seo__toggle:hover {
  background-color: var(--header-bg-dark);
  color: var(--white);
}

.sections-seo__toggle:hover path {
  stroke: var(--white);
}

.sections-seo__toggle-icon {
  width: 3.2rem;
  height: 3.2rem;
  transition: transform 0.3s;
}

.sections-seo__toggle:hover svg {
  transform: rotate(45deg);
}


/* Tablet styles */
@media (max-width: 1079px) {
  .sections-seo {
    padding: 3.2rem 0 0;
    gap: 2.4rem;
  }

  .sections-seo::after {
    content: '';
    background-image: linear-gradient(0deg, #f1f1f1 40%, transparent 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 25rem;
    z-index: 1;
  }

  .sections-seo__content {
    padding: 0 2.4rem;
    width: 100%;
  }

  .sections-seo__content h1 { 
    font-size: 2.4rem;
    width: 55rem;
  }

  .sections-seo__content h2 { 
    margin-top: 2.4rem;
    font-size: 2rem;
    width: 55rem;
  }

  .sections-seo__content h3 {
    font-size: 1.8rem;
    width: 55rem;
  }

  .sections-seo__content p,
  .sections-seo__content li {
    font-size: 1.3rem;
    width: 55rem;
  }

  .sections-seo__toggle {
    position: relative;
    width: 100%;
    height: 6.4rem;
    margin: 0;
    padding: 1.6rem;
    background: #212121;
    border: none;
    color: #ffffff;
    font-size: 1.2rem;
    letter-spacing: -0.015em;
    justify-content: center;
    z-index: 2;
  }

  .sections-seo__toggle-icon {
    display: none;
  }

  .sections-seo__toggle[aria-expanded="true"] + .sections-seo::after {
    display: none;
  }

  /* Gradient text effect for last paragraph when collapsed */
  .sections-seo__content p:last-child {
    background: linear-gradient(180deg, rgba(14, 14, 14, 1) 50%, rgba(241, 241, 241, 1) 90%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
}

/* Mobile styles */
@media (max-width: 767px) {
  .sections-seo {
    padding: 3.2rem 0 0;
    gap: 2rem;
  }

  .sections-seo__content {
    padding: 0 1.6rem;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
  }

  .sections-seo__content h1 { 
    font-size: 2.4rem;
    width: 100%;
    align-self: stretch;
  }

  .sections-seo__content h2 { 
    margin-top: 2.4rem;
    font-size: 2rem;
    width: 100%;
  }

  .sections-seo__content h3 {
    font-size: 1.8rem;
    width: 100%;
  }

  .sections-seo__content p,
  .sections-seo__content li {
    font-size: 1.3rem;
    width: 100%;
  }

  .sections-seo__content > div {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
  }

  .sections-seo__toggle {
    width: 100%;
    height: 6.4rem;
    margin: 0;
    padding: 1.6rem;
    background: #212121;
    border: none;
    color: #ffffff;
    font-size: 1.2rem;
    letter-spacing: -0.015em;
    justify-content: center;
  }

  .sections-seo__toggle-icon {
    display: none;
  }

  /* Gradient text effect for last paragraph when collapsed */
  .sections-seo__content p:last-child {
    background: linear-gradient(180deg, rgba(14, 14, 14, 1) 50%, rgba(241, 241, 241, 1) 90%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
}

/* Other Services Section */
.other-services {
  background: #0e0e0e;
  color: #ffffff;
}

.other-services__header {
  padding: 10rem 4rem 4rem 4rem;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  overflow: hidden;
}

.other-services__title {
  color: #ffffff;
  font-family: "Manrope", sans-serif;
  font-size: 6.4rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  font-weight: 600;
  margin: 0;
  min-height: 7.2rem;
}

.other-services__content {
  padding: 0 4rem 4rem 4rem;
}

.other-services__columns {
  display: flex;
  gap: 8rem;
  align-items: flex-start;
  justify-content: flex-start;
}

.other-services__column {
  display: flex;
  flex-direction: column;
  gap: 0;
  align-items: flex-start;
  justify-content: flex-start;
  flex: 1;
}

.other-services__item {
  border-top: 0.2rem solid #262626;
  padding: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  align-self: stretch;
  overflow: hidden;
  transition: all 0.3s ease;
}

.other-services__item--last {
  border-bottom: 0.2rem solid #262626;
}

.other-services__item:hover {
  background-color: rgba(255, 255, 255, 0.05);
}

.other-services__item-link {
  display: flex;
  flex-direction: row;
  gap: 4rem;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  text-decoration: none;
  color: inherit;
}

.other-services__item-link:hover {
  color: inherit;
}

.other-services__item-name {
  color: #ffffff;
  font-family: "Manrope-Medium", sans-serif;
  font-size: 1.8rem;
  line-height: 100%;
  letter-spacing: -0.02em;
  font-weight: 500;
  flex: 1;
  min-height: 3.2rem;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.other-services__item-arrow {
  flex-shrink: 0;
  width: 3.2rem;
  height: 3.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}

.other-services__item-arrow svg {
  width: 3.2rem;
  height: 3.2rem;
  color: #ffffff;
}

.other-services__item:hover .other-services__item-arrow {
  transform: rotate(45deg);
}

/* Tablet styles */
@media (max-width: 1079px) {
  .other-services__header {
    padding: 5.6rem 2.4rem 3.2rem 2.4rem;
  }

  .other-services__title {
    font-size: 4.8rem;
  }

  .other-services__content {
    padding: 0 2rem 4rem 2rem;
  }

  .other-services__column {
    width: 100%;
  }

  .other-services__columns {
    flex-direction: column;
    gap: 0;
  }

  .other-services__item {
    padding: 1.2rem 0;
  }

  .other-services__item-link {
    gap: 2rem;
  }

  .other-services__item-name {
    font-size: 1.6rem;
    min-height: 2.8rem;
  }

  .other-services__item-arrow {
    width: 2.8rem;
    height: 2.8rem;
  }

  .other-services__item-arrow svg {
    width: 2.8rem;
    height: 2.8rem;
  }
}

/* Mobile styles */
@media (max-width: 767px) {
  .other-services__header {
    padding: 5.6rem 1.6rem 3.2rem 1.6rem;
  }

  .other-services__title {
    font-size: 3.2rem;
    min-height: 3.6rem;
  }

  .other-services__content {
    padding: 0 1.6rem 3.2rem 1.6rem;
  }

  .other-services__column {
    width: 100%;
  }

  .other-services__item {
    padding: 1.6rem 0;
  }

  .other-services__item-link {
    gap: 1.6rem;
  }

  .other-services__item-name {
    font-size: 1.6rem;
    min-height: 2.4rem;
  }

  .other-services__item-arrow {
    width: 2.4rem;
    height: 2.4rem;
  }

  .other-services__item-arrow svg {
    width: 2.4rem;
    height: 2.4rem;
  }
} 