@font-face {
   font-family: "Martian Mono";
   src: url("./fonts/MartianMono-SemiBold.ttf") format("truetype");
   font-weight: 600;
   font-style: normal;
   font-display: swap;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
           url("./fonts/Geologica-Thin.woff") format("woff"),
           url("./fonts/Geologica-Thin.woff2") format("woff2");
   font-weight: 100;
   font-style: normal;
}
@font-face {
   font-family: "Geologica-italic";
   font-display: swap;
   src:
           url("./fonts/geologica-italic.woff") format("woff"),
           url("./fonts/geologica-italic.woff2") format("woff2");
   font-weight: 600;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
           url("./fonts/Geologica-ExtraLight.woff") format("woff"),
           url("./fonts/Geologica-ExtraLight.woff2") format("woff2");
   font-weight: 200;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
           url("./fonts/Geologica-Light.woff") format("woff"),
           url("./fonts/Geologica-Light.woff2") format("woff2");
   font-weight: 300;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
           url("./fonts/Geologica-Regular.woff") format("woff"),
           url("./fonts/Geologica-Regular.woff2") format("woff2");
   font-weight: 400;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
           url("./fonts/Geologica-Medium.woff") format("woff"),
           url("./fonts/Geologica-Medium.woff2") format("woff2");
   font-weight: 500;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
           url("./fonts/Geologica-SemiBold.woff") format("woff"),
           url("./fonts/Geologica-SemiBold.woff2") format("woff2");
   font-weight: 600;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
           url("./fonts/Geologica-Bold.woff") format("woff"),
           url("./fonts/Geologica-Bold.woff2") format("woff2");
   font-weight: 700;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
           url("./fonts/Geologica-ExtraBold.woff") format("woff"),
           url("./fonts/Geologica-ExtraBold.woff2") format("woff2");
   font-weight: 800;
   font-style: normal;
}
@font-face {
   font-family: "Geologica";
   font-display: swap;
   src:
           url("./fonts/Geologica-Black.woff") format("woff"),
           url("./fonts/Geologica-Black.woff2") format("woff2");
   font-weight: 900;
   font-style: normal;
}
b {
   font-size: inherit;
   font-weight: 500;
}
* {
   padding: 0px;
   margin: 0px;
   border: 0px;
   font-size: 14px;
}
*,
*:before,
*:after {
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
}
:root {
   --font-primary: "Geologica";
}
html,
body {
   height: 100%;
   min-width: 320px;
   margin: 0;
}
html {
   scroll-behavior: smooth;
}
body {
   line-height: 1;
   -ms-text-size-adjust: 100%;
   -moz-text-size-adjust: 100%;
   -webkit-text-size-adjust: 100%;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}

button {
   cursor: pointer;
   color: inherit;
   background-color: transparent;
   font-family: var(--font-primary);
}

a {
   color: inherit;
   text-decoration: none;
}

ul li {
   list-style: none;
}

img {
   vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
   font-weight: inherit;
   font-size: inherit;
   margin: 0;
}

p {
   margin: 0;
}

.wrapper > * {
   min-width: 0;
}
body {
   font-family: var(--font-primary), sans-serif;
}

/* ===== Родительский слайдер ===== */
.brand-slider__wrapper {
   overflow: hidden;
}

.brand-slider__list {
   display: flex;
   flex-wrap: nowrap;
   transition:
           transform 0.5s ease,
           opacity 0.8s ease;
   will-change: transform;
   opacity: 0;
}
.brand-slider__list.is-visible {
   opacity: 1;
}

.brand-slider__item {
   flex: 0 0 100%;
   max-width: 100%;
   justify-content: center;
}

/* ===== Вложенный слайдер ===== */
.brand-subslider__slider {
   position: relative;
   overflow: hidden;
   touch-action: none;
   user-select: none;
   min-height: 420px;
}

.brand-subslider__slider:active {
   cursor: grabbing;
}

.brand-subslider__slider-wrapper {
   display: flex;
   flex-wrap: nowrap;
   transition: transform 0.4s ease;
   will-change: transform;
}

.brand-subslider__item {
   flex: 0 0 100%;
   max-width: 100%;
   height: 100%;
}
.brand-subslider__item-img {
   width: 100%;
   height: 100%;
}

.brand-subslider__item-img img {
   width: 100%;
   height: 540px;
   object-fit: contain;
   pointer-events: none;
   user-select: none;
   -webkit-user-drag: none;
   user-drag: none;
}

/* ===== Кнопки управления вложенным слайдером ===== */
.brand-subslider__item-pagination {
   display: none;
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   z-index: 2;
   flex-direction: row;
   justify-content: space-between;
   width: 80%;
}

/* Показываем управление только на втором родительском слайде */
.brand-slider--sub-active .brand-subslider__item-pagination {
   display: flex;
}

.brand-subslider__item-btn-left,
.brand-subslider__item-btn-right {
   width: 44px;
   height: 44px;
   border: none;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   padding: 0;
   background: linear-gradient(180deg, #363636 0%, #181818 90%);
   transition: all 0.3s ease 0s;
}

.brand-subslider__item-btn-left:hover,
.brand-subslider__item-btn-right:hover {
}
.brand-btn__text {
   font-family: "Geologica";
   font-weight: 400;
   font-size: 24px;
   line-height: 30px;
   letter-spacing: -0.01em;
   color: #ffffff;
}
.brand-container {
   margin: 0 auto;
   max-width: 1270px;
   padding: 0 35px;
   width: 100%;
}
.brand-home {
   overflow: hidden;
}
.brand-home__wrapper {
}
.brand-home__header {
}
.brand-home__logo {
   margin: 60px auto 0 auto;
   max-width: 180px;
   width: 100%;
}
.brand-home__logo img {
   width: 100%;
   height: auto;
}
.brand-home__body {
   margin-top: 150px;
   padding-bottom: 111px;
   display: flex;
   flex-direction: column;
   align-items: center;
}
.brand-home__title {
   max-width: 800px;
   opacity: 0;
   transform: translateY(24px);
   transition:
           opacity 0.8s ease,
           transform 0.8s ease;
}
.brand-home__title.is-visible {
   opacity: 1;
   transform: translateY(0);
}
.brand-h1 {
   font-family: "Martian Mono";
   font-style: normal;
   font-weight: 600;
   font-size: 86px;
   line-height: 108px;
   text-align: center;
   text-transform: uppercase;
   color: #181818;
}
.brand-home__block {
}
.brand-home__subtitle {
   margin: 120px 0 42px 0;
}
.brand-subtitle {
   font-weight: 500;
   font-size: 24px;
   line-height: 30px;
   text-align: center;
   letter-spacing: -0.01em;
   color: #181818;
}
.brand-home__description {
   max-width: 588px;
   margin: 42px 0 62px 0;
}
.brand-text,
.brand-text-underline a {
   font-weight: 300;
   font-size: 20px;
   line-height: 30px;
   text-align: center;
   letter-spacing: -0.01em;
   color: #181818;
}
.brand-home__btn {
   margin: 0 auto;
   display: flex;
}
.brand-btn {
   display: flex;
   flex-direction: row;
   justify-content: center;
   align-items: center;
   width: 250px;
   height: 72px;
   background: linear-gradient(180deg, #363636 0%, #181818 90%);
   border-radius: 60px;
   font-weight: 400;
   font-size: 24px;
   line-height: 30px;
   text-align: center;
   letter-spacing: -0.01em;
   color: #ffffff;
   cursor: pointer;
   transition: all 0.3s ease 0s;
   border: none;
}
section:nth-child(2) {
   margin-top: 59px;
}
section:nth-child(3) {
   margin-top: 34px;
}
section:nth-child(4) {
   margin-top: 68px;
}
section:nth-child(5) {
   margin-top: 17px;
}
section:nth-child(6) {
   margin-top: 47px;
}
section:nth-child(7) {
   margin-top: 70px;
}
section:nth-child(8) {
   margin-top: 35px;
}

.brand-home {
   position: relative;
   height: 1352px;
}
.brand-home__container {
   position: relative;
   z-index: 3;
}
.brand-home__bg {
   position: absolute;
   top: 0;
   left: 50%;
   transform: translateX(-50%);
   z-index: 1;
   width: 1920px;
   max-width: none;
   pointer-events: none;
}
.brand-home__bg img {
   width: 1200px;
   height: auto;
   display: block;
   margin: 0 auto;
}
section:nth-child(4) .brand-slider__bg {
   margin-left: 150px;
}
.brand-slider {
   height: 720px;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   position: relative;
   overflow: hidden;
}
.brand-slider__bg {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 1;
   pointer-events: none;
}
.brand-slider__bg img {
   position: relative;
   left: 50%;
   transform: translateX(-50%);
   height: auto;
   display: block;
   max-width: none;
}
.brand-slider__bg svg {
   position: relative;
   left: 50%;
   transform: translateX(-50%);
   display: block;
   width: 1008px;
   max-width: none;
   height: auto;
   overflow: visible;
}
section:nth-child(2) .brand-slider__bg img {
   width: 1008px;
}
section:nth-child(3) .brand-slider__bg img {
   width: 882px;
}
section:nth-child(4) .brand-slider__bg img {
   width: 734px;
}
section:nth-child(5) .brand-slider__bg img {
   width: 874px;
}
section:nth-child(6) .brand-slider__bg img {
   width: 886px;
}
section:nth-child(7) .brand-slider__bg img {
   width: 844px;
}
section:nth-child(2) .brand-slider__bg svg {
   width: 1008px;
}
section:nth-child(3) .brand-slider__bg svg {
   width: 882px;
}
section:nth-child(4) .brand-slider__bg svg {
   width: 734px;
}
section:nth-child(5) .brand-slider__bg svg {
   width: 874px;
}
section:nth-child(6) .brand-slider__bg svg {
   width: 886px;
}
section:nth-child(7) .brand-slider__bg svg {
   width: 844px;
}
/*section:nth-child(8) .brand-vibe__bg img {
   width: 1062px;
}*/
.brand-slider__container {
   position: relative;
   z-index: 3;
}
.brand-slider__item {
   display: flex;
   flex-direction: column;
   align-items: center;
}
.brand-slider__img-dec {
   position: absolute;
   top: 0;
   left: 50%;
   transform: translateX(-50%);
   z-index: 2;
}
.brand-slider__img-dec img {
   opacity: 0;
   transform: scale(0.2);
   transition:
           opacity 0.6s ease,
           transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.brand-slider__img-dec.is-visible img:nth-child(1) {
   opacity: 1;
   transform: scale(1);
   transition-delay: 0s;
}
.brand-slider__img-dec.is-visible img:nth-child(2) {
   opacity: 1;
   transform: scale(1);
   transition-delay: 0.2s;
}
.brand-slider__img-dec.is-visible img:nth-child(3) {
   opacity: 1;
   transform: scale(1);
   transition-delay: 0.4s;
}
.brand-slider__img-dec.is-swaying img {
   animation: dec-sway 6s ease-in-out infinite;
}
.brand-slider__img-dec.is-swaying img:nth-child(1) {
   animation-duration: 5.5s;
   animation-delay: 0s;
}
.brand-slider__img-dec.is-swaying img:nth-child(2) {
   animation-duration: 7s;
   animation-delay: 0.9s;
}
.brand-slider__img-dec.is-swaying img:nth-child(3) {
   animation-duration: 6.3s;
   animation-delay: 1.7s;
}
@keyframes dec-sway {
   0% {
      transform: scale(1) rotate(0deg) translate(0, 0);
   }
   25% {
      transform: scale(1) rotate(6deg) translate(8px, -6px);
   }
   50% {
      transform: scale(1) rotate(-4deg) translate(-6px, 8px);
   }
   75% {
      transform: scale(1) rotate(4deg) translate(6px, 6px);
   }
   100% {
      transform: scale(1) rotate(0deg) translate(0, 0);
   }
}
.brand-slider__img-dec-smile img:nth-child(1) {
   position: absolute;
   top: 90px;
   left: 120px;
   width: 186px;
}
.brand-slider__img-dec-smile img:nth-child(2) {
   position: absolute;
   top: 250px;
   right: 150px;
   width: 110px;
}
.brand-slider__img-dec-smile img:nth-child(3) {
   position: absolute;
   top: 480px;
   right: 230px;
   width: 150px;
}

.brand-slider__img-dec-tobe img:nth-child(1) {
   position: absolute;
   top: 0px;
   left: 0px;
   width: 186px;
}
.brand-slider__img-dec-tobe img:nth-child(2) {
   position: absolute;
   top: 400px;
   left: 180px;
}
.brand-slider__img-dec-tobe img:nth-child(3) {
   position: absolute;
   top: 170px;
   right: 70px;
}

.brand-slider__img-dec-reach img:nth-child(1) {
   position: absolute;
   top: 450px;
   left: 180px;
}
.brand-slider__img-dec-reach img:nth-child(2) {
   position: absolute;
   top: 80px;
   right: 150px;
}

.brand-slider__item-title {
   margin-bottom: 42px;
}
.brand-h2 {
   font-weight: 700;
   font-size: 48px;
   line-height: 54px;
   text-align: center;
   letter-spacing: -0.02em;
   color: #181818;
}
.brand-slider__item-subtitle {
   margin-bottom: 42px;
}
.brand-slider__item-text {
   max-width: 588px;
}
.brand-slider__item-btn {
   margin-top: 60px;
}
.brand-btn-icon {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   align-items: center;
   padding: 0 36px;
}
.brand-subslider__slider {
   width: 100%;
}
.brand-subslider__item {
   width: 100%;
   padding: 0 204px;
}
.brand-subslider__item-wrapper {
   position: relative;
}
.brand-subslider__item-img {
   position: relative;
   z-index: 4;
}
.brand-subslider__item-block {
   position: absolute;
   z-index: 5;
   padding: 24px 36px;
   background: linear-gradient(180deg, #363636 0%, #181818 90%);
   border-radius: 18px;
   display: block;
   width: fit-content;
   max-width: 384px;
   display: flex;
   flex-direction: column;
   gap: 30px;
}
.brand-slider-text {
   font-weight: 300;
   font-size: 20px;
   line-height: 30px;
   letter-spacing: -0.01em;
   color: #ffffff;
}
.top-left .brand-subslider__item-block {
   top: 0;
   left: 0;
}
.top-right .brand-subslider__item-block {
   top: 0;
   right: 0;
}
.bottom-left .brand-subslider__item-block {
   bottom: 0;
   left: 0;
}
.bottom-right .brand-subslider__item-block {
   bottom: 0;
   right: 0;
}
.z-index-bottom .brand-subslider__item-block {
   z-index: 3;
}
.brand-subslider__item-link {
   display: flex;
   flex-direction: row;
   align-items: center;
   gap: 6px;
}
.brand-subslider__item-link-icon {
}
.content {
   width: 100%;
}
.brand-subslider__item-link-text {
   font-weight: 300;
   font-size: 17px;
   line-height: 24px;
   text-decoration-line: underline;
   color: #ffffff;
}
.brand-slider-v2 .brand-slider__item-subtext,
.brand-slider-v3 .brand-slider__item-subtext {
   padding-top: 30px;
}
.brand-slider-v2 .brand-subslider__item-block {
   position: relative;
   z-index: 5;
   padding: 36px 0 0 0;
   background: transparent;
   border-radius: 0;
   width: 100%;
   text-align: center;
   max-width: 792px;
   display: flex;
   flex-direction: column;
   gap: 10px;
   margin: 0 auto;
}
.brand-slider-v2 .brand-slider-text {
   font-weight: 300;
   font-size: 20px;
   line-height: 30px;
   text-align: center;
   letter-spacing: -0.01em;
   color: #181818;
}
.brand-slider-v2 .brand-subslider__item-img img {
   height: 414px;
}
.brand-subslider__item-title {
   margin-bottom: 48px;
}
.brand-h3 {
   font-weight: 600;
   font-size: 36px;
   line-height: 42px;
   text-align: center;
   letter-spacing: -0.02em;
   background: linear-gradient(180deg, #363636 0%, #181818 90%);
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent;
   background-clip: text;
   text-fill-color: transparent;
}
.brand-slider-v3 .brand-subslider__item-img img {
   height: 360px;
}
.brand-slider-v3 .brand-subslider__item-block {
   bottom: 10px;
   left: 50%;
   transform: translateX(-50%);
}
.brand-slider-v3 .brand-slider-text {
   text-align: center;
}
.brand-slider-v3 .brand-subslider__item-img {
   padding-bottom: 90px;
}
.brand-slider-subtext {
   font-weight: 300;
   font-size: 17px;
   line-height: 24px;
   color: #bcbcbc;
}
.brand-vibe {
   position: relative;
   height: 780px;
   margin-top: 35px;
}
.brand-vibe__container {
}
.brand-vibe__wrapper {
   position: relative;
   z-index: 2;
   padding-top: 60px;
}
.brand-vibe__title {
   text-align: center;
   margin-bottom: 42px;
}
.brand-vibe__subtitle {
   text-align: center;
}
.brand-vibe__bg {
   position: absolute;
   z-index: 1;
   top: 0;
   left: 50%;
   transform: translateX(-50%);
   width: 100%;
   max-width: 1062px;
   opacity: 0;
   transition: opacity 0.8s ease;
}
.brand-vibe__bg.is-visible {
   opacity: 1;
}
.brand-vibe__bg img {
   width: 100%;
}
.brand-text-underline {
   font-size: inherit;
   font-weight: inherit;
   text-decoration: underline;
}
.brand-slider__bg svg.brand-slider__bg-s {
   display: none;
}
.brand-slider__bg .brand-slider__bg-s {
   display: none;
}
.brand-vibe__bg{
   overflow: hidden;
}
.brand-vibe__bg svg{
   transform: translateX(-70px);
}
@media (max-width: 1200px) {
   .brand-subslider__item {
      padding: 0 100px;
   }
   .brand-subslider__item-pagination {
      width: 95%;
   }
}
@media (max-width: 1080px) {
   .brand-subslider__item {
      padding: 0px;
   }
   .brand-subslider__item-pagination {
      width: 100%;
   }
   .brand-vibe__bg {
   }
   .brand-slider__img-dec-smile img:nth-child(1) {
      left: 0px;
   }
   .brand-slider__img-dec-smile img:nth-child(2) {
      right: 50px;
   }
   .brand-slider__img-dec-smile img:nth-child(3) {
      right: 130px;
   }
   .brand-slider__img-dec-tobe img:nth-child(3) {
      right: 0px;
      width: 150px;
   }
   .brand-slider__img-dec-reach img:nth-child(1) {
      left: 50px;
   }
   .brand-slider__img-dec-reach img:nth-child(2) {
      right: 0px;
      width: 180px;
   }
   .brand-vibe__bg svg{
      transform: translateX(0px);
      max-width: 100%;
   }
   .brand-vibe {
      height: 680px;
   }
}
@media (max-width: 768px) {
   .brand-slider__bg svg.brand-slider__bg-s {
      display: block;
   }
   .brand-slider__bg .brand-slider__bg-s {
      display: block;
   }
   .brand-slider__bg svg.brand-slider__bg-m {
      display: none;
   }
   .brand-home {
      height: 1072px;
   }
   .brand-home__bg img {
      width: 890px;
   }
   section:nth-child(4) .brand-slider__bg img {
      width: 900px;
   }
   section:nth-child(4) .brand-slider__bg svg {
      width: 900px;
   }
   section:nth-child(4) .brand-slider__bg {
      margin-left: 0px;
   }
   section:nth-child(2) .brand-slider__bg img {
      width: 900px;
   }
   section:nth-child(2) .brand-slider__bg svg {
      width: 900px;
   }
   .brand-home__logo {
      max-width: 140px;
   }
   .brand-h1 {
      font-size: 42px;
      line-height: 66px;
   }
   .brand-subtitle {
      font-size: 24px;
      line-height: 30px;
      letter-spacing: -0.01em;
   }
   .brand-slider-text {
      font-weight: 300;
      font-size: 17px;
      line-height: 27px;
   }
   .brand-subslider__item-title {
      margin-bottom: 18px;
   }
   .brand-home__subtitle {
      margin: 72px 0 42px 0;
   }
   .brand-home__description {
      margin: 42px 0 54px 0;
   }
   .brand-home__body {
      margin-top: 72px;
      padding-bottom: 90px;
   }
   .brand-slider__item-btn {
      margin-top: 54px;
   }
   .brand-container {
      padding: 0 18px;
   }
   .brand-slider--sub-active .brand-subslider__item-pagination {
      display: none;
   }
   .brand-subslider__item-block {
      position: relative;
      padding: 18px 24px;
      max-width: 300px;
      gap: 20px;
      margin: 0 auto;
   }
   .brand-subslider__item-img img {
      width: 100%;
      height: 354px;
      object-fit: contain;
   }
   .brand-subslider__item-img {
      margin-bottom: 18px;
   }
   .brand-slider__container.brand-container {
      padding: 0;
   }
   .brand-slider__item-text,
   .brand-slider__item-subtitle {
      padding: 0 18px;
   }
   .brand-slider-v2 .brand-subslider__item-block {
      padding: 0 18px;
   }
   .brand-slider-v2 .brand-subslider__item-img img {
      height: 354px;
   }
   .brand-slider-v3 .brand-subslider__item-img {
      padding-bottom: 0px;
   }
   .brand-slider-v3 .brand-subslider__item-block {
      bottom: auto;
      left: auto;
      transform: none;
   }
   .brand-vibe__bg {
      padding: 0 18px;
   }
   .brand-slider__img-dec {
      display: none;
   }
}
@media (max-width: 560px) {
   .brand-vibe__bg svg {
      height: auto;
   }
   .brand-vibe__bg {
      position: initial;
      transform: none;
      margin-top: 34px;
      max-width: 1062px;
   }
   .brand-vibe {
      height: 560px;
   }
   .brand-vibe__bg {
      padding: 0;
   }
}
.brand-slider__bg {
   width: 100%;
   overflow: hidden;
}
.brand-slider__bg svg {
   position: relative;
   left: 50%;
   transform: translateX(-50%);
   display: block;
   width: 1008px;
   max-width: none;
   height: auto;
   overflow: visible;
}
.brand-slider__bg path {
   opacity: 0;
   stroke-dashoffset: var(--draw-len, 0);
}
.brand-slider__bg.is-ready path {
   opacity: 1;
}
.brand-slider__bg.is-drawn path {
   animation: vector-draw 2.5s ease forwards;
}
@keyframes vector-draw {
   from {
      stroke-dashoffset: var(--draw-len, 0);
   }
   to {
      stroke-dashoffset: 0;
   }
}
.brand-vibe__bg path {
   opacity: 0;
   stroke-dasharray: 100000;
   stroke-dashoffset: 100000;
}
.brand-vibe__bg.is-ready path {
   opacity: 1;
}
.brand-vibe__bg.is-drawn path {
   animation: vector-draw 2.5s ease forwards;
}
