:root {
  --ideal-viewport-width: 1920;
  --current-viewport-width: 100vw;
  --primary-color: #fe4a22;
  --secondary-color: #0039ba;
  --h1: calc(285 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  --h1-alt: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  --h2: calc(43 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  --h3: calc(46 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  --h4: calc(125 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  --big: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  --p: calc(21 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  --small: calc(13 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  --bg: #f4f4f4;
  --bg-alt: #fff;
}

@font-face {
  font-family: "Miguer";
  src: url("/fonts/MIGUERSANS-REGULAR.OTF");
}
@font-face {
  font-family: "Stolz";
  src: url("/fonts/STOLZL-REGULAR.OTF");
  font-weight: 400;
}
@font-face {
  font-family: "Stolz";
  src: url("/fonts/STOLZL-LIGHT.OTF");
  font-weight: 200;
}
* {
  position: relative;
  transition: 0.3s;
}

section {
  overflow: hidden;
}

html {
  overflow-x: hidden;
}

body {
  background: var(--bg);
  font-family: "Stolz";
  line-height: 1.2;
}

img {
  max-width: 100%;
}

input[type=text] {
  width: 100%;
  font-size: var(--p);
  padding: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border-radius: calc(90 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: var(--bg);
  border: none;
  margin-bottom: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

textarea {
  width: 100%;
  font-size: var(--p);
  padding: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border-radius: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: var(--bg);
  border: none;
  margin-bottom: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(220 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

[data-link] {
    cursor: pointer;
}

.popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999;
  align-items: center;
  justify-content: center;
  display: flex;
}

.popup:after {
  content: "";
  width: 100%;
  height: 200%;
  background: rgba(0, 0, 0, 0.15);
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  left: 0;
  top: 0;
  position: absolute;
}

.popup-content {
  background: #fff;
  border-radius: calc(25* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding: calc(45* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: calc(900* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  max-width: 90%;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  z-index: 2;
  max-height: 90vh;
  overflow-y: auto;
  overflow-x: hidden;
}

.close {
  position: absolute;
  top: calc(10* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  right: calc(10* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: calc(80* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(80* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: #fff;
  border-radius: 50%;
  padding: calc(22* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  cursor: pointer;
}

.popup .imgs-wrapper {
  display: flex;
  gap: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.popup .imgs-wrapper img {
  max-width: calc(450 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  max-height: calc(220 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
}

h1 {
  font-size: var(--h1);
  font-family: "Miguer";
}

h1.alt {
  font-size: var(--h1-alt);
  font-family: "Stolz";
  text-transform: uppercase;
}

h2 {
  font-size: var(--h2);
  background: linear-gradient(90deg, #fe4a22 50%, transparent 100%);
  width: -moz-fit-content;
  width: fit-content;
  padding: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(80 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  color: #fff;
  margin-bottom: 0;
}

h3 {
  font-size: var(--h3);
}

h4 {
  font-size: var(--h4);
  text-transform: uppercase;
}

big {
  font-size: var(--big);
}

p, b, a {
  margin-bottom: 0;
  font-size: var(--p);
}

ul {
  font-size: var(--p);
  line-height: 2;
}

a {
  cursor: pointer;
  text-decoration: none;
}

small {
  font-size: var(--small);
}

h1.primary {
  color: var(--primary-color);
}

.container {
  max-width: calc(1580 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.bl {
  border-left: calc(2 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--primary-color);
  padding-left: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#lead-form .bl {
  border-left: calc(2 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid #fff;
  line-height: 1.5;
  font-weight: 300;
}

#cases .bl {
  position: absolute;
  right: 0;
  top: calc(230 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: 43%;
  line-height: 1.4;
  font-weight: 300;
}

.tabs-content {
  margin-top: calc(230 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.card {
  background: var(--primary-color);
  border-top-left-radius: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border-top-right-radius: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border-bottom-left-radius: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  color: #fff;
  text-align: left;
  padding-right: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  font-weight: 200;
  border: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--primary-color);
  width: -moz-fit-content;
  width: fit-content;
}

.card:hover {
  background: var(--secondary-color);
  color: #fff;
}

.card img {
  width: calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-bottom: calc(-15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-right: calc(-45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  align-self: end;
}

.btn {
  display: flex;
  align-items: center;
  padding: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  font-size: var(--p);
  border-radius: calc(90 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  font-weight: 300;
  transform: scale(1);
  transition: 0.2s;
}

.btn:hover {
  transform: scale(0.95);
}

.btn.primary {
  width: 100%;
  text-align: center;
  justify-content: center;
  background: var(--primary-color);
  color: #fff;
}

.btn.white {
  background: #fff;
}

.btn.white:hover {
  background: var(--primary-color);
  color: #fff;
}

.btn.border:hover {
  background: #000;
  color: #fff;
}

.btn img {
  background: var(--primary-color);
  border-radius: calc(90 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: calc(65 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(65 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding: calc(13 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-left: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.btn:has(img) {
  padding-top: calc(8 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding-right: calc(8 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding-bottom: calc(8 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.accent-bg {
  background: var(--secondary-color);
  color: #fff;
}

header {
  display: flex;
  align-items: center;
  width: 100%;
  padding: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
}

.logo {
  width: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.menu-wrapper {
  display: flex;
  align-items: center;
  margin-left: 25%;
  gap: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.menu-item {
  display: flex;
  align-items: center;
  gap: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: #fff;
  padding: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border-radius: calc(90 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  text-decoration: none;
  color: #000;
}

.menu-item img {
  width: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.menu-item:hover {
  background: var(--primary-color);
  color: #fff;
  transform: scale(0.95);
}

.menu-item:hover img {
  filter: contrast(0) brightness(99);
}

#home {
  height: 100vh;
  display: flex;
  align-items: center;
  padding-bottom: calc(160 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#home h1 {
  margin-bottom: calc(-100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#home h1:nth-child(2) {
  margin-left: calc(550 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#home .btn {
  position: absolute;
  right: 0;
  bottom: calc(-200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#home video {
  mix-blend-mode: darken;
  position: absolute;
  right: 0;
  top: calc(-100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: calc(480 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.socials {
  display: flex;
  flex-direction: column;
  gap: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  position: absolute;
  left: calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  top: 50%;
}

.socials a {
  width: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  display: flex;
  background: #fff;
  border-radius: 50%;
  padding: calc(17 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.socials a:hover {
  background: var(--primary-color);
  transform: scale(0.95);
}

.socials a:hover img {
  filter: contrast(0) brightness(99);
}

#about h3 {
  line-height: 1.6;
}

#about .container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#about img {
  width: calc(100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  justify-self: center;
  margin-top: calc(250 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#threeJs {
  background: linear-gradient(0deg, #1537bc 59%, #01174b 60%,  #01174b 77%, transparent 100%);
  color: #fff;
  padding-top: calc(750 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-top: calc(100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#threeJs .landscape-wrapper video {
  mix-blend-mode: lighten;
}

#threeJs:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: calc(300 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: linear-gradient(0, #0039ba, transparent);
  z-index: 999;
}

.dot {
  width: calc(12 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(12 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: #fff;
  border-radius: 50%;
}

.dot:before {
  content: "";
  position: absolute;
  left: calc(-7 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  top: calc(-7 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: calc(26 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(26 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border: calc(1 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid #fff;
  border-radius: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#threeJs .container:first-child h2 {
  justify-self: right;
  z-index: 9;
}

#threeJs video {
  width: 100%;
  height: auto;
}

.galaxy-dots {
  z-index: 99;
  background: rgba(255, 255, 255, 0.2196078431);
  left: -10.3%;
  top: -16%;
  position: absolute;
}

.video-wrapper {
  width: 125%;
  left: -12.5%;
}

.galaxy-item-inner {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  flex-direction: column;
}

#galaxy {
  position: absolute;
  top: -21%;
  left: -10%;
}

.galaxy-item {
  transform-origin: bottom;
  position: absolute;
}

.galaxy-item .dot {
  order: -1;
}

.dot:hover ~ .galaxy-content {
  opacity: 1;
}

.galaxy-content {
  border-left: calc(2 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid #fff;
  padding-left: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-left: calc(6 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(245 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  opacity: 0;
  transition: 0.4s;
  pointer-events: none;
  position: absolute;
  bottom: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.galaxy-content small {
  text-shadow: calc(0 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(0 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) rgb(0, 0, 0);
  font-weight: 200;
  width: calc(360 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  display: flex;
  color: #dfdfdf;
}

.galaxy-content big {
  position: absolute;
  left: calc(-185 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  rotate: -90deg;
  width: calc(300 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  text-transform: uppercase;
  font-weight: 300;
  bottom: calc(100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  text-align: right;
}

.galaxy-item-imgs, .landscape-item-imgs {
  display: flex;
  flex-wrap: wrap;
  gap: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-top: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.galaxy-item-imgs img, .landscape-item-imgs img {
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  max-height: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.landscape-wrapper:before {
  content: "";
  position: absolute;
  left: -20%;
  top: 0;
  width: 150%;
  height: 120%;
  z-index: 1;
}

.landscape-wrapper .dot {
  width: calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--p);
  font-weight: 200;
  transition: 0.3s;
  transform: scale(0.8);
  animation: pulse 6s infinite;
}

.galaxy-wrapper .dot {
  animation: pulse 6s infinite;
}

#landscape-2 .dot, #galaxy-2 .dot {
  animation-delay: 400ms;
}

#landscape-3 .dot, #galaxy-3 .dot {
  animation-delay: 800ms;
}

#landscape-4 .dot, #galaxy-4 .dot {
  animation-delay: 1200ms;
}

#landscape-5 .dot, #galaxy-5 .dot {
  animation-delay: 1600ms;
}

#landscape-6 .dot, #galaxy-6 .dot {
  animation-delay: 2000ms;
}

.landscape-wrapper svg {
  z-index: 1;
  position: absolute;
  top: calc(170 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: 100%;
  height: 100vh;
}

.cls-1 {
  fill: transparent !important;
  stroke: #fff !important;
  stroke-dasharray: 10 0 0 !important;
  animation: line 100s linear infinite;
}

@keyframes line {
  from {
    stroke-dashoffset: 100%;
  }
  to {
    stroke-dashoffset: 0%;
  }
}
.landscape-wrapper .landscape-item:hover .dot {
  transform: scale(1);
}

.landscape-wrapper .dot:before {
  content: "";
  position: absolute;
  left: calc(-9 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  top: calc(-8 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: calc(63 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(63 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border: calc(1 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid #fff;
  border-radius: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.landscape-wrapper .dot:after {
  content: "";
  position: absolute;
  width: calc(2 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(0 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background-color: #fff;
  left: 50%;
  bottom: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  transition: 0.3s;
}

.landscape-wrapper .landscape-item:hover .dot:after {
  height: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#landscape {
  left: -3%;
  transform: scale(1.15);
}

.landscape-wrapper {
  padding-top: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.landscape-dots {
  z-index: 99999;
}

.landscape-item {
  width: 0;
  height: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  position: absolute;
  transition: 0s;
}

.landscape-content {
  display: flex;
  flex-direction: column;
  text-align: center;
  width: calc(200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  justify-content: center;
  font-weight: 200;
  position: absolute;
  left: calc(-80 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  bottom: calc(80 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  opacity: 0;
  transition: 0.6s;
}

.landscape-item:hover .landscape-content, .landscape-item:focus .landscape-content {
  opacity: 1;
}

@keyframes pulse {
  0% {
    transform: scale(1);
    box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 1);
  }
  20% {
    transform: scale(0.9);
    box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 1);
  }
  70% {
    transform: scale(1.2);
    box-shadow: 0px 0px 0px 20px rgba(255, 255, 255, 0);
  }
  100% {
    transform: scale(1);
    box-shadow: 0px 0px 0px 0px rgba(255, 255, 255, 0);
  }
}

.landscape-content small {
  margin-top: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.landscape-item-imgs {
  justify-content: center;
}

#lead-form {
  padding-top: calc(200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding-bottom: calc(200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#lead-form .imgs-wrapper {
  position: absolute;
  left: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  bottom: calc(-35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#lead-form .top {
  display: flex;
  align-items: center;
  gap: calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-bottom: calc(-30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#lead-form .center {
  text-align: right;
  margin-bottom: calc(-10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#lead-form .bottom {
  text-align: right;
}

#lead-form .imgs-wrapper img:first-child {
  position: absolute;
  left: 0;
  top: calc(-145 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: calc(341 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#lead-form .imgs-wrapper img:last-child {
  margin-left: calc(140 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: calc(562 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#lead-form .card {
  left: 50%;
}

#get-started {
  padding-top: calc(550 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding-bottom: calc(550 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.get-started-wrapper {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  justify-self: center;
}

.get-started-wrapper:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: url(/img/GetStarted-Text.png);
  background-size: contain;
  transform: scale(1.86);
  animation: rotate 160s linear infinite;
}

.get-started-wrapper:before {
  content: "";
  position: absolute;
  left: 8.5%;
  top: 3.5%;
  width: 100%;
  height: 100%;
  background-image: url(/img/GetStarted-Grid.png);
  background-size: contain;
  transform: scale(4);
}

.circle-btn {
  width: calc(250 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(250 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: #fff;
  border-radius: 50%;
  padding: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--primary-color);
  display: flex;
  overflow: visible;
}

.circle-btn:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: url(/img/GetStarted-Text.png);
  background-size: cover;
  transform: scale(1.55);
  animation: rotate 160s linear infinite;
}

.parralax {
  transition: 0.2s;
}

#cases .case-item:nth-child(2) {
  margin-top: calc(100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#cases .case-item:nth-child(3) {
  margin-top: calc(70 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.case-item:nth-child(3n) {
  margin-right: 0;
}

.case-item {
  background: #fff;
  box-shadow: 0 calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) 0 rgba(0, 0, 0, 0.1);
  width: 22%;
  margin-bottom: calc(200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  cursor: pointer;
  margin-right: 14%;
}

.case-logo {
  max-height: 80px;
  object-fit: contain;
  max-width: 200px;
}

.case-item img {
  width: 140%;
  max-width: none;
  margin-left: calc(-40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.case-item small {
  position: absolute;
  left: calc(-15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  top: calc(-15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: var(--primary-color);
  border-radius: 50%;
  border: calc(4 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 200;
}

.case-item big {
  text-transform: uppercase;
  position: absolute;
  left: calc(-165 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  top: calc(165 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  rotate: -90deg;
  width: calc(400 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  font-size: var(--h3);
}

.case-item .content {
  margin-top: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.case-item > p {
  text-transform: uppercase;
  padding: calc(25* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(20* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: var(--secondary-color);
  color: #fff;
  font-size: var(--big);
}

.case-item .content p {
  width: 100%;
  background: var(--primary-color);
  padding: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  color: #fff;
  font-size: var(--small);
  font-weight: 100;
  z-index: 3;
  margin-top: calc(-110 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.content:before {
  content: "";
  position: absolute;
  top: calc(-29 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  left: 0;
  width: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: url(/img/CaseBorder.png);
  background-size: 100% 100%;
  background-position: center;
}

.content:after {
  content: "";
  position: absolute;
  top: calc(-30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  right: calc(-2.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  rotate: 270deg;
  width: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: url(/img/CaseBorder.png);
  background-size: 100% 100%;
  background-position: center;
}

.content p:before {
  content: "";
  position: absolute;
  bottom: calc(-30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  left: calc(-2.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  rotate: 90deg;
  width: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: url(/img/CaseBorder.png);
  background-size: 100% 100%;
  background-position: center;
}

.content p:after {
  content: "";
  position: absolute;
  bottom: calc(-29 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  right: 0;
  rotate: 180deg;
  width: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: url(/img/CaseBorder.png);
  background-size: 100% 100%;
  background-position: center;
}

#cases .btn {
  justify-self: center;
  margin: 0 auto;
}

#news > .btn {
    margin: 50px auto 0 auto;
    display: flex
;
}

.tab {
  font-size: var(--h2);
  background: linear-gradient(90deg, var(--secondary-color) 50%, transparent 100%);
  width: -moz-fit-content;
  width: fit-content;
  padding: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(80 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  color: #fff;
  border: none;
}

.tab.active {
  background: linear-gradient(90deg, var(--primary-color) 50%, transparent 100%);
}

#marque {
  border-top: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid #000;
  border-bottom: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid #000;
  padding: calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) 0;
  background: #fff;
  margin-top: calc(200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-bottom: calc(200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.marque-content p {
  font-size: var(--h1-alt);
  text-transform: uppercase;
  -webkit-text-stroke: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) #000;
  color: transparent;
}

.marque-content {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  animation: marque 90s linear infinite;
}

@keyframes marque {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-50%);
  }
}
#diamond .container {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

#diamond h1.alt {
  line-height: 1;
}

#diamond video {
  mix-blend-mode: color-burn;
  margin-bottom: calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  filter: contrast(1.2) brightness(2.5);
}

.double-circle {
  border: none;
  box-shadow: none;
  padding: 0;
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
}

.circle {
  width: calc(230 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(230 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: var(--primary-color);
  border-radius: 50%;
  padding: calc(85 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.circle:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-image: url(/img/DoubleCircle-Text.png);
  background-size: cover;
  transform: scale(0.8);
  animation: rotate 120s linear infinite;
}

.side-circle {
  width: calc(260 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(230 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-right: calc(-110 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--secondary-color);
  border-top-left-radius: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border-bottom-left-radius: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.double-circle:hover {
  transform: scale(0.95);
}

.double-circle:hover .side-circle {
  background: var(--secondary-color);
}

.double-circle:hover .side-circle:before {
  filter: contrast(0) brightness(99);
}

.double-circle:hover .side-circle:after {
  border-color: #fff;
}

.side-circle:after {
  content: "";
  position: absolute;
  left: -4%;
  top: 0;
  width: 100%;
  height: 100%;
  border: calc(2 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--secondary-color);
  border-top-left-radius: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border-bottom-left-radius: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  transform: scale(0.5);
}

.side-circle:before {
  content: "";
  position: absolute;
  left: 9%;
  top: 11%;
  width: 100%;
  height: 80%;
  background-image: url(/img/DoubleCircle-Side-Text.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
}

#news > .marque-wrapper {
  background: #fff;
  padding: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) 0;
  border: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--primary-color);
}

#news {
  margin-top: calc(240 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#news > p {
  text-align: center;
  padding: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) 0;
  text-transform: uppercase;
  font-size: var(--big);
}

#news .marque-content p {
  color: #000;
  -webkit-text-stroke: unset !important;
  font-size: var(--h4);
}

.news-item {
  background: #fff;
  border: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--primary-color);
  display: flex;
}

.news-item.horizontal {
  background: var(--secondary-color);
  border-bottom: none;
}

.news-item.horizontal .left {
  width: 28%;
  background-size: cover;
  border-bottom-left-radius: calc(185 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.news-item.horizontal .left > img {
  width: 115%;
  max-width: none;
  z-index: 2;
}

.news-item.horizontal .center {
  width: 62%;
  padding: calc(80 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(80 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(85 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  background: #fff;
}

.news-item.horizontal .center h4 {
  margin-bottom: calc(-30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.news-item.horizontal .right {
  width: 10%;
  background: var(--secondary-color);
}

.marque-wrapper.vertical {
  height: 100%;
  overflow: hidden;
}

.marque-wrapper.vertical .marque-content {
  rotate: 90deg;
  right: calc(1390 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.marque-wrapper.vertical .marque-content p {
  color: #fff !important;
}

.bt {
  border-top: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--primary-color);
  margin-top: calc(100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding-top: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  font-weight: 100;
  line-height: 1.7;
}

.news-item.vertical {
  border-top: none;
}

.news-item.horizontal a {
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.news-item.vertical .left {
  width: 32%;
}

.news-item.vertical .left h4 {
  padding: calc(65 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  letter-spacing: calc(-3 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  font-size: calc(var(--h4) - calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)));
  line-height: 1.1;
  color: #fff;
  margin-bottom: 0;
  display: flex;
  align-items: center;
  height: 100%;
}

.news-item.vertical .left h4:first-child {
  background-color: var(--secondary-color);
}

.news-item.vertical .left h4:last-child {
  background-color: var(--primary-color);
}

.news-item.vertical .center {
  width: 40%;
  background-size: cover;
  background-position: center;
}

.news-item.vertical:nth-child(2n) .center {
  background-position: top;
}

.news-item.vertical .right {
  width: 28%;
}

.news-description {
  padding: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(592 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-bottom: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--primary-color);
  line-height: 1.4;
  font-weight: 300;
  gap: calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width))
}

.btn.border {
  border: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid #000 !important;
  justify-content: center;
  text-transform: uppercase;
  padding-top: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  padding-bottom: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  font-weight: 500;
}

.news-item.vertical .btn {
  margin-top: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#clients {
  margin-top: calc(200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-bottom: calc(200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.clients-logos {
  background: #fff;
  padding: calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  border-radius: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  width: 100%;
  margin-top: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#clients .container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.clients-logos .item {
  width: 12%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 25px;
}

.clients-logos .item img {
  max-height: 63px;
}



footer {
  padding: 0 calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

footer:after {
  width: calc(100% + calc(90 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)));
  position: relative;
  display: flex;
  height: calc(350 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  content: "";
  background: url(/img/Footer.png);
  background-size: 100% 100%;
  background-position: center;
  left: calc(-45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-top: calc(100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

footer img {
  width: calc(100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

footer .col-4 {
  display: flex;
  flex-direction: column;
}

footer b {
  color: #5c5c5c;
  font-weight: 400;
  font-size: var(--big);
}

footer a {
  color: #000;
  font-weight: 400;
  font-size: var(--big);
  text-decoration: none;
  margin-top: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}
.popup:has(.case-logo) .popup-content > img:last-child {
  margin-top: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(300 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  object-fit: cover;
  object-position: center;
}

.popup:has(.case-logo) ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-weight: 400;
  color: #686868;
}

.popup:has(.case-logo) ul strong {
  color: #000;
  font-weight: 400;
}

.popup:has(.case-logo) p {
  font-weight: 400;
  color: #686868;
}

.popup:has(.case-logo) h3 {
  text-transform: uppercase;
  font-size: calc(var(--h3) + 20px);
  margin-bottom: 20px;
}



.page-title {
  background: var(--bg-alt);
  text-align: center;
  padding: calc(180 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(230 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  text-transform: uppercase;
}

.page-title h4 {
  font-size: calc(80 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#news-item .img-wrapper {
  margin-top: calc(-160 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#news-item .img-wrapper img {
  width: 100%;
  max-height: calc(550 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border-radius: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

.date {
  position: absolute;
  left: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  top: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  z-index: 1;
  background: #fff;
  width: calc(90 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  height: calc(90 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border-radius: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#news-item:not(:has(.img-wrapper img)) .date {
  left: inherit;
  right: 0;
}

#news-item .img-wrapper:not(:has(img)) {
  margin-top: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  margin-bottom: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#news-item .container > p {
  margin-bottom: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

ol, ul {
  line-height: 2.1;
  margin-bottom: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#news-item h5 {
  font-size: var(--big);
  margin-bottom: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

#news-item .container h4 {
  font-size: var(--h3);
  margin-bottom: 25px;
  display: flex;
  align-items: center;
  gap: 20px;
}

#news-item .container:not(:has(.img-wrapper img)) > *:nth-child(2) {
  width: 95%;
}

#news-item .container h4:before {
  position: relative;
  content: "";
  width: 50px;
  height: 3px;
  background: #000;
  display: flex
;
}

#news-item {
  margin-bottom: calc(200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  font-weight: 300;
}

#news-item span {
  color: #686868;
}

#news-item .container {
  display: flex;
  flex-direction: column;
  line-height: 1.5;
}

#news-item .imgs-wrapper {
  display: flex;
  gap: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  align-items: center;
}

.news-item.vertical:nth-child(2n + 3) .left h4 {
  background-color: var(--secondary-color);
}

#news-item .imgs-wrapper img {
  max-width: calc(600 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  max-height: calc(300 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
}

table {
  background: #fff;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 25px;
  border-radius: 15px;
  margin-bottom: 45px;
}

tbody {
  line-height: 1.6;
  width: 100%;
}

tr {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  border-bottom: 1px solid #c9c9c9;
  padding-bottom: 15px;
  padding-top: 15px;
}

table tr:not(:has(:nth-child(4))) td, table tr:not(:has(:nth-child(4))) th {
  width: 30%;
}

thead {
  width: 100%;
  display: flex
;
}

@keyframes rotate {
  from {
    rotate: 0deg;
  }
  to {
    rotate: 360deg;
  }
}

@media only screen and (max-width: 1324px) and (min-width: 766px) {
  #threeJs {
    background: linear-gradient(0deg, #1537bc 59%, #01174b 60%,  #01174b 77%, transparent 100%);
    padding-top: calc(450* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    margin-top: calc(40* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
}

@media only screen and (min-width: 766px) {
  .mobile {
    display: none;
  }
}
@media only screen and (max-width: 765px) {
  :root {
    --h1: calc(90 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    --h1-alt: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    --h2: calc(16 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    --h3: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    --h4: calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    --big: calc(19 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    --p: calc(16 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    --small: calc(8 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    --ideal-viewport-width: 365;
    --current-viewport-width: 100vw;
  }
  body {
    overflow-x: hidden;
  }
  .parallax {
    transform: none !important;
  }
  header {
    padding: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    width: 100vw;
    justify-content: space-between;
  }
  .burger-menu-icon {
    width: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    height: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    background: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: calc(5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .burger-menu-icon span {
    width: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    height: calc(2 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    background: #000;
    display: flex;
  }
  .burger-close {
    width: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    height: calc(60 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    background: #fff;
    border-radius: 50%;
    padding: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    position: absolute;
    right: -22%;
    top: calc(11 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .burger {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.1);
    z-index: 999;
    -webkit-backdrop-filter: blur(calc(5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)));
            backdrop-filter: blur(calc(5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)));
  }
  .menu-wrapper {
    margin-left: 0;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  .burger-content {
    background: #f4f4f4;
    height: 100%;
    padding: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) 0;
    width: 80%;
  }
  .menu-item {
    background: transparent;
    border-bottom: calc(1 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid #000;
    border-radius: 0;
    padding: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .menu-item:hover {
    transform: scale(1);
  }
  .desktop {
    display: none;
  }
  h2 {
    padding: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #home {
    padding-bottom: calc(170 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #home h1:nth-child(2) {
    margin-left: 0;
  }
  #home h1 {
    margin-bottom: calc(-40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #home video {
    width: calc(250 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    top: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    right: calc(0 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #home .btn {
    left: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    right: inherit;
    bottom: calc(-230 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .socials {
    left: calc(12 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    top: 55%;
  }
  .socials a {
    width: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    height: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    padding: calc(14 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .btn {
    padding: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .btn:has(img) {
    padding-top: calc(5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    padding-right: calc(5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    padding-bottom: calc(5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .btn img {
    width: calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    height: calc(45 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    padding: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    margin-left: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #about img {
    width: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    margin-top: calc(100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #threeJs {
    padding-top: calc(150* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    margin-top: calc(100* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    background: linear-gradient(0deg, #1537bc 59%, #01174b 60%, #01174b 85%, transparent 100%);
  }
  #threeJs:after {
    height: calc(140 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #landscape {
    transform: scale(0.25);
    left: -164%;
    margin-top: calc(-1000 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    margin-bottom: calc(-1200 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #landscape-1 {
    left: 5%;
    top: 52%;
  }
  #landscape-2 {
    left: 17%;
    top: 59%;
  }
  #landscape-3 {
    left: 36%;
    top: 59%;
  }
  #landscape-4 {
    left: 51%;
    top: 63%;
  }
  #landscape-5 {
    left: 65%;
    top: 61%;
  }
  #landscape-6 {
    left: 79%;
    top: 59%;
  }
  #threeJs .landscape-wrapper video {
    width: 150%;
    max-width: none;
    left: -20%;
  }
  .landscape-item {
    width: 35px;
    height: 35px;
  }
  .landscape-dots {
    width: 100%;
    height: calc(500 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    position: absolute;
    left: 0;
    top: 0;
  }
  .landscape-content {
    width: calc(110* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    left: calc(-35* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .galaxy-item-imgs img, .landscape-item-imgs img {
    max-height: calc(17* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .landscape-wrapper .dot {
    width: calc(25* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    height: calc(25* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    font-size: calc(var(--p) - 5px);
  }
  .landscape-wrapper .dot:before {
    left: calc(-6* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    top: calc(-6* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    width: calc(38* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    height: calc(38* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .video-wrapper {
    width: 150%;
    left: -25%;
  }
  .galaxy-wrapper .video-wrapper {
    width: 685px;
    left: calc(-150* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #galaxy {
    position: absolute;
    top: -87%;
    left: -3%;
  }
  .galaxy-dots {
    left: 16.7%;
    top: calc(-105 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    transform: scale(0.7);
  }
  .galaxy-content {
    height: calc(148 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .galaxy-content big {
    left: calc(-180 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    bottom: calc(-20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .galaxy-content small {
    width: calc(290 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    font-size: calc(var(--p) - 2px);
  }
  #lead-form {
    padding-top: calc(100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #lead-form .top {
    margin-bottom: calc(-20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #lead-form .center {
    text-align: left;
    margin-bottom: calc(-20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #lead-form .bottom {
    text-align: left;
  }
  #lead-form .bl {
    margin-top: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .bl {
    padding-left: calc(25 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #lead-form .imgs-wrapper {
    left: 0;
    bottom: calc(-140 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #lead-form .imgs-wrapper img:first-child {
    width: 50%;
    top: calc(-100 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #lead-form .imgs-wrapper img:last-child {
    margin-left: 20%;
    width: 80%;
  }
  .circle-btn {
    width: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    height: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    padding: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    border: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--primary-color);
  }
  #get-started {
    padding-top: calc(350 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    padding-bottom: calc(400 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #cases .col-4 {
    width: 100%;
  }
  .tabs:after {
    content: "";
    position: absolute;
    top: 0;
    right: -1px;
    background: linear-gradient(270deg, #ffffff, transparent);
    width: 90px;
    height: 41px;
    pointer-events: none;
    user-select: none;
  } 
  .tabs-nav {
    overflow-x: scroll;
    flex-wrap: nowrap;
    display: flex;
  }
  .tab {
    min-width: max-content;
  }
  .case-item {
    width: 75%;
    margin-bottom: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    left: 5%;
  }
  #cases .bl {
    right: inherit;
    left: calc(13 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    top: calc(110 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    width: 100%;
  }
  .case-item big {
    top: calc(70* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    rotate: -90deg;
}
  .tabs-content {
    margin-top: calc(250 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #cases .col-4:nth-child(2), #cases .col-4:nth-child(3) {
    margin-top: 0;
  }
  #marque {
    padding: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) 0;
    margin-top: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    margin-bottom: calc(150 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #diamond video {
    width: 85%;
    margin-bottom: calc(-30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .double-circle {
    transform: scale(0.6);
  }
  .double-circle:hover {
    transform: scale(0.55);
  }
  #news {
    margin-top: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .news-item.horizontal {
    flex-wrap: wrap;
  }
  .news-item.horizontal .left {
    width: 100%;
  }
  .news-item.horizontal .center {
    width: 100%;
    padding: calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(51 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .news-item.horizontal .right {
    width: 100%;
  }
  .news-item.horizontal .center h4 {
    margin-bottom: calc(-10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .news-item.vertical .left h4 {
    font-size: var(--h4);
  }
  .news-item.vertical .center {
    height: 250px;
  }
  .news-description {
    height: auto;
  }
  .news-item.horizontal .center h4:first-child {
    margin-left: 0;
  }
  .bt {
    margin-top: calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .marque-wrapper.vertical .marque-content {
    right: 0;
    rotate: 0deg;
    padding-top: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    padding-bottom: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .news-item.vertical {
    display: flex;
    flex-wrap: wrap;
  }
  .news-item.vertical .item {
    width: 100%;
    padding: calc(35 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    border-bottom: calc(1.5 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) solid var(--primary-color);
  }
  .news-item.vertical .item b {
    display: flex;
    margin-top: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    margin-bottom: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .news-item.vertical .item .btn {
    width: 100%;
  }
  .news-item.vertical > * {
    width: 100% !important;
  }
  #clients h2 {
    margin-bottom: calc(30 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #clients br {
    display: none;
  }
  .clients-logos {
    padding: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    border-radius: calc(20 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .clients-logos .item {
    width: 21%;
  }
  footer {
    padding: 0 calc(12 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  footer b {
    font-size: var(--small);
  }
  footer a {
    font-size: var(--small);
    margin-top: calc(4 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  footer:after {
    height: calc(160 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    margin-top: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #news-item .imgs-wrapper {
    flex-wrap: wrap;
  }
  #news-item .imgs-wrapper img {
    width: 100%;
    height: auto;
    max-height: -moz-max-content;
    max-height: max-content;
  }
  .popup .imgs-wrapper {
    flex-wrap: wrap;
  }
  .popup .imgs-wrapper img {
    max-width: 100%;
    max-height: none;
  }
  .popup-content {
    overflow-y: scroll;
    max-height: 95vh;
  }
  .close {
    width: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    height: calc(50 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    padding: calc(15 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    right: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
    top: calc(10 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .page-title {
    padding: calc(120* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(20* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(30* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width)) calc(30* clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  .page-title h4 {
    font-size: calc(40 * clamp(350px, 100vw, 3840px) / var(--ideal-viewport-width));
  }
  #news-item .container:not(:has(.img-wrapper img)) > *:nth-child(2) {
    width: 70%;
  }
  #news-item .img-wrapper {
    margin-top: 0;
  }
  table p {
    font-size: var(--small);
  }
  footer .col-10 {
    width: 100%;
    margin-top: 25px;
  }
}