/* ------------------------- Style ® Code by Dennis -------------------------------------------------- */

/* ------------------------- Loading -------------------------------------------------- */

.loading-container {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   overflow: hidden;
   z-index: 500;
   pointer-events: none;
}

.loading-container .loading-screen {
   position: relative;
   width: 100%;
   height: 100%;
   background-color: var(--color-lightgray);
   display: flex;
   justify-content: center;
   align-items: center;
}

.loading-container .loading-screen .pattern {
   background-color: var(--color-lightgray);
   background-clip: text;
	background-image: url('../images/pattern-grain.png');
   background-position: center center;
   background-size: cover;
   background-repeat: no-repeat;
}

.loading-container .loading-screen .logo-box {
   width: calc(var(--title-size) * 2.2);
   position: relative;
   overflow: hidden;
}

.loading-container .loading-screen .logo-box svg {
   width: 100%;
}

.loading-container .loading-screen .logo-box svg path {
   fill: var(--color-primary);
}

.loading-container .loading-screen .bar {
   position: absolute;
   top: 0;
   left: 0;
   display: flex;
   width: 100%;
   background-color: var(--color-primary);
   height: var(--progress-bar-height);
   transform-origin: left top;
}

/* ------------------------- Page Transition -------------------------------------------------- */

.transition-screen {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   overflow: hidden;
   z-index: 200;
   pointer-events: none;
   background: var(--color-dark);
   opacity: 0;
   visibility: hidden;
}

.transition-screen[data-transition-type="light"] {
   background: var(--color-light);
}

/* ------------------------- Cookie Jar -------------------------------------------------- */

.cookie-jar {
   position: fixed;
   z-index: 100;
   right: 2em;
   top: calc(100vh - 2em);
   transform: translateY(-100%);
   background: var(--color-light);
   padding: 2em;
   display: flex;
   flex-direction: column;
   gap: 1em;
   max-width: 20em;
}

.cookie-jar .row-buttons .col {
   display: flex;
   gap: 1em;
}

/* ------------------------- Navigation -------------------------------------------------- */

:root {
   --notification-bar-height: 2.6em;
   --notification-bar-height-scrolled: 0em;
   --progress-bar-height: 0.3em;
   --progress-bar-height-scrolled: 0.225em;
   --main-navigation-height: 6.2em;   
   --main-navigation-height-scrolled: 4.6em;   
   --sub-navigation-height: 2.2em;
   --sub-navigation-height-scrolled: 2.2em;
   --inquiries-btn-width: 11em;
}

@media screen and (max-width: 1024px) {
   :root {
      --main-navigation-height: max(3em, 10vw);
      --notification-bar-height: 2.6em;
   }
}

.navigation {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   overflow: hidden;
   z-index: 300;
   pointer-events: none;
   display: flex;
   flex-direction: column;
}

/*  Back  */

.navigation-back {
   opacity: 0;
   visibility: hidden;
   background: rgba(var(--color-black-rgb), 0.5);
   transition: var(--animation-smooth);
   z-index: 200;
   /* cursor: pointer; */
}

[data-navigation-status="active"] .navigation-back,
[data-site-dropdown-status="active"] .navigation-back {
   opacity: 1;
   visibility: visible;
}

/*  Notification Bar  */

.notification-bar {
   position: relative;
   display: flex;
   width: 100%;
   height: var(--notification-bar-height);
   background-color: var(--color-dark);
   overflow: hidden;
   transition: var(--animation-smooth);
   pointer-events: all;
   align-items: center;
   padding: 0 var(--col-padding);
}

.notification-bar > p {
   color: var(--color-light);
   font-size: 0.9em;
   padding-top: calc((var(--progress-bar-height) * 0.5) + 0.15em);
   transition: var(--animation-smooth);
   position: relative;
   overflow: hidden;
   text-overflow: ellipsis;
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 1;
   line-clamp: 1;
   min-height: calc(0.9em * 1.55);
}

.notification-bar > .marquee {
   display: none;
}

[data-scrolling-started="true"][data-scrolling-direction="down"] .notification-bar{
   height: var(--notification-bar-height-scrolled);
}

[data-scrolling-started="true"][data-scrolling-direction="down"] .notification-bar > p {
   opacity: 0;
}


/*  Hidden - Notification Bar */

.notification-bar.hidden,
[data-scrolling-started="true"][data-scrolling-direction="down"] .notification-bar.hidden {
   height: var(--notification-bar-height-scrolled);
}

.notification-bar.hidden > *,
[data-scrolling-started="true"][data-scrolling-direction="down"] .notification-bar.hidden p {
   opacity: 0;
}

@media screen and (max-width: 1024px) {
   .notification-bar > p {
      display: none;
   }

   .notification-bar > .marquee {
      display: flex;
   }

   .notification-bar > .marquee .marquee-content {
      will-change: transform;
      animation: marquee calc(var(--marquee-speed) * 0.03) linear infinite;
      flex-shrink: 0;
      display: flex;
   }

   .notification-bar > .marquee p {
      flex-shrink: 0;
      white-space: nowrap;
      color: var(--color-light);
      font-size: 0.9em;
      padding-left: var(--container-padding);
      padding-top: calc((var(--progress-bar-height) * 0.5) + 0.05em);
   }
   .notification-bar > .marquee p::before {
      content: "•";
      color: var(--color-secondary);
      padding-right: var(--container-padding);
   }

   @keyframes marquee {
      from { transform: translateX(0); }
      to { transform: translateX(-100%); }
    }
}

/*  Progress Bar  */

.progress-bar {
   position: relative;
   display: flex;
   width: 100%;
   height: var(--progress-bar-height);
   background-color: var(--color-dark);
   overflow: hidden;
   transition: var(--animation-smooth);
}

.progress-bar-inner {
   background-color: rgba(var(--color-light-rgb), 0.15);
   background: var(--color-secondary);
   /* background: linear-gradient(90deg, rgba(176,164,127,0) 0%, rgba(176,164,127,1) 100%); */
   transform-origin: left top;
   transform: scale(0, 1);
   height: 110%;
}

[data-scrolling-started="true"][data-scrolling-direction="down"] .progress-bar{
   height: calc(var(--progress-bar-height) * 0.75);
}

@media screen and (max-width: 1024px) {
   .progress-bar{
      height: calc(var(--progress-bar-height) * 0.75);
   }
}

/*  Main Navigation  */

.main-navigation {
   position: relative;
   width: 100%;
   padding: 0 var(--col-padding);
   pointer-events: all;
   background-color: var(--color-light);
   transition: var(--animation-smooth);
   height: var(--main-navigation-height);
   display: flex;
   justify-content: space-between;
   align-items: center;
   overflow: hidden;
   z-index: 1;
   box-shadow: 0em 0.2em 0.4em 0em rgba(var(--color-black-rgb), 0);
}

[data-scrolling-started="true"] .main-navigation {
   box-shadow: 0em 0.2em 0.2em 0em rgba(var(--color-black-rgb), 0.05);
}

@media screen and (min-width: 1024px) {

   [data-scrolling-started="true"][data-scrolling-direction="down"] .main-navigation {
      height: 4.6em;
   }

   nav:has(.sub-navigation-active) .main-navigation {
      box-shadow: 0em 0.15em 0.3em 0em rgba(var(--color-black-rgb), 0);
   }
     
}

.main-navigation ul {
   display: flex;
   align-items: center;
}

@media screen and (max-width: 1024px) {
   
   .main-navigation .mobile {
      display: flex;
   }

   .main-navigation {
      flex-direction: column;
      justify-content: flex-start;
      align-items: flex-start;
      padding: 0;
   }

   .main-navigation, [data-scrolling-started="true"][data-scrolling-direction="down"] .main-navigation {
      height: var(--main-navigation-height);
   }

   [data-navigation-status="active"] .main-navigation, [data-navigation-status="active"][data-scrolling-started="true"][data-scrolling-direction="down"] .main-navigation {
      height: 100%;
   }
   
}

/* Logo */

.main-navigation .logo-bar {
   position: relative;
}

.main-navigation .logo {
   width: 11em;
   display: flex;
   transition: var(--animation-smooth);
}

.main-navigation .logo svg {
   width: 100%;
}

.main-navigation .logo svg path {
   fill: var(--color-dark);
   transition: 0.45s cubic-bezier(0.3, 1, 0.3, 1);
}

.main-navigation .logo svg path:nth-child(2) {transition-delay: 0.015s;}
.main-navigation .logo svg path:nth-child(3) {transition-delay: 0.03s;}
.main-navigation .logo svg path:nth-child(4) {transition-delay: 0.045s;}
.main-navigation .logo svg path:nth-child(5) {transition-delay: 0.06s;}
.main-navigation .logo svg path:nth-child(6) {transition-delay: 0.075s;}
.main-navigation .logo svg path:nth-child(7) {transition-delay: 0.09s;}

.main-navigation .logo:hover svg path {
   fill: var(--color-secondary);
}

.main-navigation .logo-bar::before {
   content: "";
   position: absolute;
   top: 100%;
   left: 0;
   width: 100%;
   height: 2px;
   background-color: var(--color-border);
   opacity: 0;
   transition: opacity var(--animation-smooth);
}

[data-navigation-status="active"] .main-navigation .logo-bar::before {
   opacity: 1;
}

@media screen and (max-width: 1024px) {
   .main-navigation .logo-bar {
      width: 100%;
      padding: 0 var(--container-padding);
      height: var(--main-navigation-height);
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-shrink: 0;
   }

   .main-navigation .logo {
      width: max(7em, 20vw);
   }
}

/* Hamburger */

.hamburger {
   width: 1.6em;
   height: 1.6em;
   display: flex;
   justify-content: center;
   align-items: center;
   position: relative;
   cursor: pointer;
}

.hamburger .bar {
   width: 80%;
   height: 2px;
   background-color: var(--color-secondary);
   position: absolute;
   transition: var(--animation-primary);
}

.hamburger .bar:nth-child(1) {
   transform: translateY(-6px) rotate(0.001deg);
}

.hamburger .bar:nth-child(2) {
   transform: translateY(0px) rotate(0.001deg);
}

.hamburger .bar:nth-child(3) {
   transform: translateY(6px) rotate(0.001deg);
}

[data-navigation-status="active"] .hamburger .bar:nth-child(1) {
   transform: translateY(0px) rotate(-45deg); 
}

[data-navigation-status="active"] .hamburger .bar:nth-child(2) {
   transform: translateY(0px) rotate(0.001deg) scaleX(0); 
}

[data-navigation-status="active"] .hamburger .bar:nth-child(3) {
   transform: translateY(0px) rotate(45deg); 
}

@media screen and (min-width: 1024px) {

   /* Links Desktop */

   .main-navigation .level-a > li > .nav-link {
      position: relative;
      padding: 0 calc(var(--col-padding-small) * 0.5);
      height: 2.6em;
      display: flex;
      justify-content: center;
      align-items: center;
      cursor: pointer;
   }

   .main-navigation .level-a > li > .nav-link span {
      position: relative;
      font-weight: 400;
      font-style: normal;
      font-size: 1em;
      line-height: 1;
      color: var(--color-text);
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
   }

   .main-navigation .level-a > li > .nav-link span::after {
      content: "";
      position: absolute;
      bottom: 0;
      width: 100%;
      height: 2px;
      background-color: var(--color-gray-darker);
      left: 0;
      transition: all var(--animation-bounce);
      transform: translateY(0.5em) rotate(0.001deg);
      opacity: 0;
      pointer-events: none;
   }

   .main-navigation .level-a > li[data-link-status="active"] > .nav-link span::after {
      background-color: var(--color-secondary);
   }

   .main-navigation .level-a > li > .nav-link:hover span::after,
   .main-navigation .level-a > li.active > .nav-link span::after {
      opacity: 1;
      transform: translateY(0em) rotate(0.001deg);
   }

   .main-navigation .level-a > .col-btn {
      width: var(--inquiries-btn-width);
      display: flex;
      justify-content: flex-end;
      align-items: center;
   }

   .main-navigation .level-a > li .btn-click {
      transition: height var(--animation-smooth);
   }


   .main-navigation .level-a > li .btn-click {
      height: 2.6em;
   }

   .main-navigation .level-a > li .btn-click:hover .btn-fill {
      height: 80%;
   }

}

@media screen and (max-width: 1024px) {

   /* Links Mobile */

   .main-navigation .level-a {
      width: 100%;
      border-bottom: 2px solid var(--color-border);
      overflow: scroll;
      display: block;
      position: relative;
   }

   .main-navigation .level-b {
      display: grid;
      grid-template-rows: 0fr;
      align-items: unset;
      transition: all var(--animation-smooth);
      transform: translateY(calc(var(--row-padding-small) * -0.5));
   }

   .main-navigation [data-accordion-status="active"] .level-b {
      grid-template-rows: 1fr;
   }

   .main-navigation .level-b .level-b-inner {
      position: relative;
      overflow: hidden;
   }

   .main-navigation .level-b .level-b-inner > li:last-child {
      margin-bottom: calc(var(--row-padding-small) * 0.5);
   } 

   /* Level A */

   .main-navigation .level-a > li {
      width: 100%;
      position: relative;
   }
   
   .main-navigation .level-a > li > .nav-link {
      display: flex;
      border-top: 2px solid var(--color-border);
      width: 100%;
      padding: 0 var(--container-padding);
      justify-content: space-between;
      align-items: center;
      height: 5em;
   }

   .main-navigation .level-a > li > .nav-link i {
      width: 1.6em;
      height: 1.6em;
      display: flex;
      align-items: center;
      justify-content: center;
   }

   .main-navigation .level-a > li > .nav-link i svg {
      width: 100%;
      transform: rotate(90deg);
      transition: transform var(--animation-bounce);
   }

   .main-navigation .level-a li[data-accordion-status="active"] > .nav-link i svg {
      transform: rotate(-90deg);
   }

   .main-navigation .level-a > li > .nav-link i svg polyline {
      stroke-width: 1.75px;
      stroke: var(--color-secondary);
   }

   .main-navigation .level-a > li > .nav-link span {
      font-weight: 700;
      font-size: 1em;
      line-height: 1;
      color: var(--color-dark);
      text-transform: uppercase;
      letter-spacing: 0.05em;
   }

   .main-navigation [data-accordion-toggle] {
      cursor: pointer;
   }

   /* Level B */

   .main-navigation .level-b-inner > li {
      width: 100%;
      transition: var(--animation-smooth);
      opacity: 0;
      visibility: hidden;
   }

   .main-navigation [data-accordion-status="active"] .level-b-inner li {
      opacity: 1;
      visibility: visible;
   }

   .main-navigation .level-b-inner > li > .nav-link {
      display: flex;
      width: 100%;
      padding: 0.25em var(--container-padding);
   }

   /* Level C */

   .main-navigation .level-c {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      padding-top: 0.25em;
      padding-bottom: 1em;
   }
   
   .main-navigation .level-c li {
      display: flex;
      flex-direction: column;
      width: 100%;
   }
   
   .main-navigation .level-c li a {
      padding: 0.15em calc(var(--container-padding) + 1em);
      display: flex;
      align-items: center;
      position: relative;
      width: 100%;
   }

   .main-navigation .level-c li a span {
      font-size: 0.9em;
   }
   
   .main-navigation .level-c li a::before {
      content: "";
      position: absolute;
      width: 0.225em;
      height: 0.225em;
      background: var(--color-primary);
      left: var(--container-padding);
      opacity: 0.5;
   }

}

/*  Sub Navigation  */

.sub-navigation {
   position: relative;
   display: flex;
   width: 100%;
   height: var(--sub-navigation-height);
   background-color: var(--color-lightgray);
   overflow: hidden;
   transition: var(--animation-smooth);
   align-items: center;
   justify-content: center;
   pointer-events: all;
   padding: 0 var(--container-padding);
   transform: translateY(-100%) rotate(0.001deg);
}

.sub-navigation.sub-navigation-active {
   transform: translateY(0%) rotate(0.001deg);
}

.sub-navigation ul {
   display: flex;
   align-items: center;
   justify-content: flex-end;
   height: 100%;
   width: 100%;
   padding-right: var(--inquiries-btn-width);
   position: absolute;
   right: var(--container-padding);
   top: 0;
   opacity: 0;
   visibility: hidden;
   transition: all var(--animation-smooth);
}

.sub-navigation ul.visible {
   opacity: 1;
   visibility: visible;
}

.sub-navigation ul li.active {
   color: var(--color-secondary);
   transition: all var(--animation-primary) 0s;
}

.sub-navigation ul li .nav-link {
   position: relative;
   padding: 0 calc(var(--col-padding-small) * 0.5);
   height: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   cursor: pointer; 
}

.sub-navigation ul li .nav-link span {
   font-size: 0.75em;
   transition: var(--animation-primary);
   white-space: nowrap;
}

.sub-navigation ul li .nav-link:hover span {
   opacity: 0.5;
}

.sub-navigation ul li.active .nav-link:hover span {
   opacity: 1;
}

@media screen and (min-width: 1025px) { 
   .main-navigation .level-b {
      display: none;
   }
}

@media screen and (max-width: 1024px) {
   .sub-navigation {
      display: none;
   }
}


/*  Dropdown */

.dropdown-wrapper {
   position: relative;
   display: flex;
   width: 100%;
   transform: translateY(calc(var(--sub-navigation-height) * -1)) rotate(0.001deg);
   transition: var(--animation-smooth);
   z-index: -1;
}

.sub-navigation.sub-navigation-active + .dropdown-wrapper {
   transform: translateY(0%) rotate(0.001deg);
}

@media screen and (max-width: 1024px) {
   .dropdown-wrapper {
      display: none;
   }
}

.single-dropdown {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   background: var(--color-dark); 
   transition: all var(--animation-smooth);
   transform: translateY(calc(-100% - 1px)) rotate(0.001deg);
   z-index: 1;
   pointer-events: all;
   /* box-shadow: 0em 1em 2em 0em rgba(var(--color-black-rgb), 0); */
   padding: calc(var(--section-padding) * 0.66) 0 calc(var(--section-padding) * 0.66) 0;
   pointer-events: none;
}

.single-dropdown[data-dropdown-status="active"] {
   transform: translateY(0) rotate(0.001deg);
   z-index: 1;
   pointer-events: all;
   /* box-shadow: 0em 1em 2em 0em rgba(var(--color-black-rgb), 0.1); */
}

.single-dropdown .dropdown-image {
   position: absolute;
   right: 0;
   bottom: 0;
   height: 100%;
   width: 40%;
   overflow: hidden;
}

.single-dropdown .overlay-gradient {
   width: 200%;
   background: radial-gradient(circle, rgba(11,38,31, 0.35) 0%, rgba(0,33,27,1) 90%);
}

.single-dropdown .row {
   width: 70%;
   --gap: 6em;
}


.single-dropdown .row .col:nth-child(1) {
   display: flex;
   flex-direction: column;
   gap: 1.2em;
}

.single-dropdown .row .col-row-subtitle p {
   font-weight: 600;
   color: var(--color-secondary);
}

.single-dropdown ul {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   width: 16em;
}

.single-dropdown ul li {
   display: flex;
   flex-direction: column;
   border-top: 2px solid var(--color-border);
   width: 100%;
}

.single-dropdown ul > li:last-child {
   border-bottom: 2px solid var(--color-border);
}

.single-dropdown ul li a {
   display: flex;
   padding: 0.75em 0;
}

.single-dropdown ul li a span {
   color: var(--color-secondary);
   white-space: nowrap;
   font-size: 0.85em;
   transition: var(--animation-primary);
   line-height: 2;
}

.single-dropdown ul li ul li a {
   padding-left: 0.8em;
   display: flex;
   align-items: center;
   position: relative;
}

.single-dropdown ul li ul li a::before {
   content: "";
   position: absolute;
   width: 0.2em;
   height: 0.2em;
   background: var(--color-secondary);
   left: 0;
   opacity: 0.5;
}

.single-dropdown ul li a:hover span {
   opacity: 0.5;
}

.single-dropdown ul li.got-children > a > span {
   color: var(--color-white);
   text-transform: uppercase;
   letter-spacing: 0.1em;
   font-weight: 600;
   font-size: 0.7em;
}

.single-dropdown ul li.got-children {
   border-bottom: 0;
   border-top: 0;
   padding: 0.25em;
   position: relative;
}

.single-dropdown ul li.got-children > a {
   display: flex;
   align-items: center;
   gap: 0.5em;
}

.single-dropdown ul li.got-children > a::after {
   content: "";
   display: block;
   position: relative;
   width: 1em;
   height: 1em;
   background: url("../images/arrow-right-color.svg") center center no-repeat;
   transform: translateY(0.1em) rotate(0.001deg);
   transition: var(--animation-bounce);
}

.single-dropdown ul li.got-children > a:hover::after {
   transform: translateY(0em) rotate(-45deg);
}

.single-dropdown ul li.got-children:first-child > a {
   padding-top: 0.25em;
   margin-bottom: 0.5em;
}


/* ------------------------- Section - Footer -------------------------------------------------- */

.footer {
   overflow: hidden;
}

.footer .row {
   flex-wrap: wrap;
   gap: var(--row-padding) var(--gap);
   --gap: var(--col-padding);
}

.footer .col-left {
   width: calc(40% - (var(--gap) * 0.5));
   display: flex;
   flex-direction: column;
   justify-content: space-between;
}

.footer .col-left .col-row-logo {
   display: flex;
   flex-direction: column;
   max-width: 22em;
   gap: var(--row-padding-small);
}

.footer .logo {
   padding: 0.25em 0;
   width: 14em;
   display: flex;
}

.footer .logo svg {
   width: 100%;
}

.footer .logo svg path {
   fill: var(--color-light);
}

.footer .col-left .col-row-logo p {
   font-size: 1.15em;
   line-height: 1.45;
}

.footer .col-right {
   width: calc(60% - (var(--gap) * 0.5));
   display: flex;
}

.footer .footer-navigation {
   display: flex;
   flex-wrap: wrap;
   gap: var(--row-padding) var(--gap);
   --gap: var(--col-padding);
   --columns: 3;
}

.footer .footer-navigation > .col:nth-child(1),
.footer .footer-navigation > .col:nth-child(4) {
   width: calc(37.5% - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

.footer .footer-navigation > .col:nth-child(2),
.footer .footer-navigation > .col:nth-child(5) {
   width: calc(27.5% - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

.footer .footer-navigation > .col:nth-child(3),
.footer .footer-navigation > .col:nth-child(6) {
   width: calc(35% - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

.footer .footer-navigation {
   margin-bottom: -0.25em;
}

.footer .footer-navigation ul {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
}

.footer .footer-navigation ul li {
   display: flex;
   flex-direction: column;
}

.footer .footer-navigation ul li a {
   display: flex;
}

.footer .footer-navigation ul li a span {
   color: var(--color-secondary);
   white-space: nowrap;
   font-size: 0.85em;
   transition: var(--animation-primary);
   line-height: 2;
}

.footer .footer-navigation ul li ul li a {
   padding-left: 0.8em;
   display: flex;
   align-items: center;
   position: relative;
}

.footer .footer-navigation ul li ul li a::before {
   content: "";
   position: absolute;
   width: 0.2em;
   height: 0.2em;
   background: var(--color-secondary);
   left: 0;
   opacity: 0.5;
}

.footer .footer-navigation p {
   line-height: 1.5;
   font-size: 0.85em;
   color: var(--color-secondary);
}

.footer .footer-navigation p a {
   transition: var(--animation-primary);
   line-height: 2;
}

.footer .footer-navigation ul li a:hover span,
.footer .footer-navigation p a:hover {
   opacity: 0.5;
}

/* .footer .footer-navigation ul li.active span {
   opacity: 1;
   color: var(--color-gray);
} */

.footer .footer-navigation h5 {
   margin-bottom: 0.75em;
   color: var(--color-light);
   letter-spacing: 0.08em;
}

.footer .footer-navigation .col-contact > .col-row {
   display: flex;
   flex-direction: column;
}

.footer .footer-navigation .col-careers,
.footer .footer-navigation .col-contact {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}

.footer .col-row-credits {
   display: flex;
   flex-direction: column;
   gap: 0.5em;
}

.footer .col-row-credits p {
   display: flex;
   gap: 0em 1em;
   font-size: 0.7em;
   flex-wrap: wrap;
}

.footer .col-row-credits p .span-text {
   opacity: 0.5;
   color: var(--color-secondary);
}

.footer .col-row-credits p a {
   transition: var(--animation-primary);
   opacity: 0.5;
   color: var(--color-secondary);
}

.footer .col-row-credits p a:hover {
   opacity: 1;
}

.default-header + .footer {
   border-top: 1px solid rgba(var(--color-light-rgb), 0.15);
}

@media screen and (max-width: 1024px) {

   .footer .row {
      flex-wrap: nowrap;
      flex-direction: column;
   }
   
   .footer .col-left,
   .footer .col-right {
      width: 100%;
   }

   .footer .col-row-credits.desktop {
      display: none;
   }
   
   .footer .logo {
      width: clamp(10em, 30vw, 14em);
      padding: 0;
   }

   .footer .col-row-credits {
      padding-top: var(--row-padding);
   }
}

@media screen and (max-width: 720px) {

   .footer .footer-navigation > .col:nth-child(1),
   .footer .footer-navigation > .col:nth-child(2) {
      order: 1
   }
   
   .footer .footer-navigation > .col:nth-child(5) {
      order: 4;
   }

   .footer .footer-navigation > .col:nth-child(4) {
      order: 3;
   }

   .footer .footer-navigation > .col:nth-child(3),
   .footer .footer-navigation > .col:nth-child(6) {
      order: 5
   }

   .footer .footer-navigation > .col:nth-child(1),
   .footer .footer-navigation > .col:nth-child(3),
   .footer .footer-navigation > .col:nth-child(4) {
      width: calc(65% - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
   }

   .footer .footer-navigation > .col:nth-child(2),
   .footer .footer-navigation > .col:nth-child(5) {
      width: calc(35% - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
   }

   .footer .footer-navigation > .col:nth-child(6) {
      width: 100%;
   }

   .footer .col-socials {
      display: flex;
      align-items: flex-end;
   }

}

/* ------------------------- Social Icons -------------------------------------------------- */

.social-icons {
   display: flex;
   gap: 0.5em;
}

.social-icons .s-icon {
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 3.4em;
   height: 3.4em;
   border-radius: 50%;
   flex-shrink: 0;
}

.social-icons .s-icon::before {
   content: "";
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%) rotate(0.001deg);
   width: 100%;
   height: 100%;
   border: 2px solid var(--color-primary);
   border-radius: 20em;
   transition: all var(--animation-bounce), border var(--animation-primary), background-color var(--animation-primary);
   background-color: transparent;
}

.social-icons .s-icon svg {
   width: 35%;
   z-index: 2;
}

.social-icons .s-icon:hover::before {
   background-color: var(--color-light);
   border: 2px solid var(--color-light);
   height: 80%;
}

.social-icons .s-icon svg path {
   transition: var(--animation-primary);
   fill: var(--color-gray);
}

.social-icons .s-icon:hover svg path {
   fill: var(--color-dark);
}

/* ------------------------- Section - Prefooter -------------------------------------------------- */

.prefooter {
   background-color: var(--color-secondary);
}

.prefooter .row {
   max-width: 36em;
   max-width: 55%;
}

.prefooter .row .col {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}

/* .prefooter .large-p p {
   font-weight: 400;
} */

.prefooter .pattern-box {
   aspect-ratio: 1/1;
   height: 100%;
   position: absolute;
   bottom: 0;
   right: 0;
   background-color: #FEFDFA;
   overflow: hidden;
   display: flex;
   align-items: center;
   justify-content: center;
}

.prefooter .pattern-box svg {
   width: 100%;
   position: absolute;
   --svg-circle: 42.5%;
   --svg-offset-top-x: 12.5%;
   --svg-offset-top-y: -35%;
   --svg-offset-bottom-x: 6%;
   --svg-offset-bottom-y: 67.5%;
   --svg-delay: 0.1s;
   transition: 1.6s cubic-bezier(0.1, 1, 0.3, 1);
}

.prefooter .pattern-box svg path {
   stroke: var(--color-gray);
}

.prefooter .pattern-box svg:nth-child(1) {
   transform: translate(calc((var(--svg-circle) * -1) - var(--svg-offset-top-x)), var(--svg-offset-top-y)) rotate(0.001deg);
   transition-delay: calc(var(--svg-delay) * 0);
}

.prefooter .pattern-box svg:nth-child(2) {
   transform: translate(calc((var(--svg-circle) * 0) - var(--svg-offset-top-x)), var(--svg-offset-top-y)) rotate(0.001deg);
   transition-delay: calc(var(--svg-delay) * 1);
}

.prefooter .pattern-box svg:nth-child(3) {
   transform: translate(calc((var(--svg-circle) * 1) - var(--svg-offset-top-x)), var(--svg-offset-top-y)) rotate(0.001deg);
   transition-delay: calc(var(--svg-delay) * 2);
}

.prefooter .pattern-box svg:nth-child(4) {
   transform: translate(calc((var(--svg-circle) * 2) - var(--svg-offset-top-x)), var(--svg-offset-top-y)) rotate(0.001deg);
   transition-delay: calc(var(--svg-delay) * 3);
}

.prefooter .pattern-box svg:nth-child(5) {
   transform: translate(calc((var(--svg-circle) * -2) - var(--svg-offset-bottom-x)), var(--svg-offset-bottom-y)) rotate(0.001deg);
   transition-delay: calc(var(--svg-delay) * 0);
}

.prefooter .pattern-box svg:nth-child(6) {
   transform: translate(calc((var(--svg-circle) * -1) - var(--svg-offset-bottom-x)), var(--svg-offset-bottom-y)) rotate(0.001deg);
   transition-delay: calc(var(--svg-delay) * 1);
}

.prefooter .pattern-box svg:nth-child(7) {
   transform: translate(calc((var(--svg-circle) * 0) - var(--svg-offset-bottom-x)), var(--svg-offset-bottom-y)) rotate(0.001deg);
   transition-delay: calc(var(--svg-delay) * 2);
}

.prefooter .pattern-box svg:nth-child(8) {
   transform: translate(calc((var(--svg-circle) * 1) - var(--svg-offset-bottom-x)), var(--svg-offset-bottom-y)) rotate(0.001deg);
   transition-delay: calc(var(--svg-delay) * 3);
}

.prefooter .pattern-box.not-active svg {
   --svg-circle: 42.5%;
   --svg-offset-top-x: calc(12.5% - 70%);
   --svg-offset-top-y: calc(-35% - 70%);
   --svg-offset-bottom-x: calc(6% + 70%);
   --svg-offset-bottom-y: calc(67.5% + 70%);
}

@media screen and (max-width: 800px) {
   .prefooter .row {
      max-width: 100%;
   }

   .prefooter .pattern-box {
      aspect-ratio: 5/3;
      height: unset;
      width: 100%;
      position: relative;
      transform: translateY(var(--section-padding));
   }

   .prefooter .pattern-box svg {
      --svg-offset-top-y: -50%;
      --svg-offset-bottom-y: 52.5%;
   }

   .prefooter .pattern-box.not-active svg {
      --svg-offset-top-y: calc(-50% - 70%);
      --svg-offset-bottom-y: calc(52.5% + 70%);
   }
}

/* Newsletter Sign Up */

.newsletter-btn {
   border: 0;
   outline: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   position: relative;
   border-radius: 100em;
   height: 3.2em;
   background-color: transparent;
   border-radius: 100em;
   border: 2px solid var(--color-dark);
   gap: 0.8em;
   max-width: 21em;
}

.newsletter-btn input.email {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   outline: none;
   border: 0;
   border-radius: 0;
   background: transparent;
   height: 100%;
   text-transform: uppercase;
   font-weight: 600;
   font-size: 0.7em;
   line-height: 1;
   color: var(--color-dark);
   text-transform: uppercase;
   letter-spacing: 0.1em;
   transition: color var(--animation-primary);
   width: 100%;
   padding: 0em 0 0em 2em;
}

.newsletter-btn input::placeholder {
   color: rgba(var(--color-dark-rgb), 0.5);
}

/* Arrow & Submit */

.newsletter-btn .submit-arrow {
   width: 3.8em;
   height: 3.2em;
   background: transparent;
   position: relative;
   overflow: hidden;
   display: flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   border-radius: 0 5em 5em 0;
   overflow: hidden;
}

.newsletter-btn .submit-arrow input {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   opacity: 0;
   cursor: pointer;
}

.newsletter-btn i {
   position: relative;
   width: 0.9em;
   height: 0.9em;
   display: flex;
   justify-content: center;
   align-items: center;
   flex-shrink: 0;
}

.newsletter-btn i .arrow {
   position: relative;
   width: 100%;
   height: 100%;
   transform: rotate(0.001deg);
   transition: all var(--animation-bounce);
}

.newsletter-btn .arrow .bar {
   position: absolute;
   background-color: var(--color-dark);
   transition: all var(--animation-bounce);
}

.newsletter-btn i .arrow .bar:nth-child(1) {
   width: 2px;
   height: 100%;
   right: 0;
   top: 0;
   transform: scaleY(1) rotate(0.001deg);
   transform-origin: right bottom;
}

.newsletter-btn i .arrow .bar:nth-child(2) {
   width: 100%;
   height: 2px;
   bottom: 0;
   right: 0;
   transform: scaleX(1) rotate(0.001deg);
   transform-origin: right bottom;
}

.newsletter-btn i .arrow .bar:nth-child(3) {
   width: 120%;
   height: 2px;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%) rotate(45deg);
}

/* Hover */

.newsletter-btn .submit-arrow:hover i .arrow {
   transform: rotate(-45deg);
}

.newsletter-btn .submit-arrow:hover i .bar:nth-child(1) {
   transform: scaleY(0.6) rotate(0.001deg);
}

.newsletter-btn .submit-arrow:hover i .bar:nth-child(2) {
   transform: scaleX(0.6) rotate(0.001deg);
}

/* Validation */

#mc_embed_signup .mc-field-group div.mce_inline_error {
   margin: unset;
   padding: unset;
   background-color: transparent;
   font-weight: normal;
   z-index: 1;
   color: #930606;
   font-size: 0.9em;
   font-weight: 400;
   padding: 0.25em 0;
}

#mce-success-response {
   margin: unset;
   padding: unset;
   background-color: transparent;
   font-weight: normal;
   z-index: 1;
   color: #135a17;
   font-size: 0.9em;
   font-weight: 400;
   padding: 0.25em 0;
}


/* ------------------------- Section - Empty -------------------------------------------------- */

.section-empty {
   padding-top: 0;
}

.section-empty .row {
   padding-top: var(--section-padding);
   border-top: 1px solid var(--color-border);
   justify-content: center;
}

/* ------------------------- Section - Grid Images -------------------------------------------------- */

.section-grid-images .row {
   --gap: 2em;
   --columns: 3;
   display: flex;
   flex-wrap: wrap;
   gap: var(--gap);
}

.section-grid-images .row .col {
   width: calc((100% / var(--columns)) - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

@media screen and (max-width: 1024px) {
   .section-grid-images .row {
      --columns: 2;
   }
}

@media screen and (max-width: 720px) {
   .section-grid-images .row {
      --columns: 1;
   }
}

/* ------------------------- Textpage Single -------------------------------------------------- */

[data-barba-namespace="textpage-single"] .default-header .row .col:nth-child(2){
   display: none;
}

/* ------------------------- Home - Header -------------------------------------------------- */

.home-header {
   padding-top: calc(var(--section-padding) - 2em);
   padding-bottom: 0;
   overflow: hidden;
}

.home-header.default-header .container .row,
.home-header.default-header .container .row .col {
   gap: var(--row-padding-small);
}

.home-header.default-header .container .row .col {
   display: flex;
   flex-direction: column;
}

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

.home-header .container p {
   max-width: 30em;
}

.home-header .header-home-illustation {
   width: 100%;
   position: relative;
   margin-top: calc(var(--section-padding) * -2);
}

.home-header .header-home-illustation .inner {
   position: relative;
   width: 100%;
}

.home-vector-canvas {
   position: relative;
   --vector-canvas-w: 3000;
   --vector-canvas-h: 1500;
   transform: translate(35%, 0);
   width: 90%;
   margin-bottom: -10vw;
}

.home-vector-canvas::before {
   content: "";
   display: block;
   padding-top: 50%;
}

.home-vector-canvas .canvas-back {
   display: flex;
   align-items: flex-end;
   justify-content: flex-end;
   opacity: 0;
}

.home-vector-canvas .canvas-layers {
   display: flex;
   align-items: center;
   justify-content: center;
}

.home-vector-canvas .canvas-layers .img {
   position: absolute;
   left: calc((var(--vector-img-x) / var(--vector-canvas-w) * 100) * 1%);
   top: calc((var(--vector-img-y) / var(--vector-canvas-h) * 100) * 1%);
   pointer-events: none;
}

.home-vector-canvas .canvas-layers .img img {
   position: relative;
   transition: var(--animation-primary);
}

.home-vector-canvas .canvas-layers .img-1 { --vector-img-x: 890; --vector-img-y: 354;}
.home-vector-canvas .canvas-layers .img-2 { --vector-img-x: 791; --vector-img-y: 264;}
.home-vector-canvas .canvas-layers .img-3 { --vector-img-x: 696; --vector-img-y: 319;}
.home-vector-canvas .canvas-layers .img-4 { --vector-img-x: 1556; --vector-img-y: 284;}
.home-vector-canvas .canvas-layers .img-5 { --vector-img-x: 995; --vector-img-y: 513;}
.home-vector-canvas .canvas-layers .img-6 { --vector-img-x: 421; --vector-img-y: 260;}
.home-vector-canvas .canvas-layers .img-7 { --vector-img-x: 942; --vector-img-y: 564;}
.home-vector-canvas .canvas-layers .img-8 { --vector-img-x: 1130; --vector-img-y: 86;}
.home-vector-canvas .canvas-layers .img-9 { --vector-img-x: 1299; --vector-img-y: 297;}
.home-vector-canvas .canvas-layers .img-10 { --vector-img-x: 1498; --vector-img-y: 671;}
.home-vector-canvas .canvas-layers .img-11 { --vector-img-x: 1744; --vector-img-y: 481;}
.home-vector-canvas .canvas-layers .img-12 { --vector-img-x: 1999; --vector-img-y: 601;}
.home-vector-canvas .canvas-layers .img-13 { --vector-img-x: 301; --vector-img-y: 707;}
.home-vector-canvas .canvas-layers .img-14 { --vector-img-x: 152; --vector-img-y: 796;}
.home-vector-canvas .canvas-layers .img-15 { --vector-img-x: 0; --vector-img-y: 883;}
.home-vector-canvas .canvas-layers .img-16 { --vector-img-x: 162; --vector-img-y: 635;}
.home-vector-canvas .canvas-layers .img-17 { --vector-img-x: 660; --vector-img-y: 768;}
.home-vector-canvas .canvas-layers .img-18 { --vector-img-x: 521; --vector-img-y: 861;}
.home-vector-canvas .canvas-layers .img-19 { --vector-img-x: 385; --vector-img-y: 956;}
.home-vector-canvas .canvas-layers .img-20 { --vector-img-x: 574; --vector-img-y: 773;}
.home-vector-canvas .canvas-layers .img-21 { --vector-img-x: 1860; --vector-img-y: 700;}

@media screen and (max-width: 1200px) {
   .home-header .header-home-illustation {
      margin-top: 0em;
   }

   .home-vector-canvas {
      transform: translate(0%, 0);
      width: 110%;
      max-width: 110%;
   }
}

@media screen and (max-width: 1024px) { 
   .home-header .header-home-illustation {
      margin-top: var(--row-padding);
   }
   
   .home-vector-canvas {
      transform: translate(-2%, 0);
      width: 150%;
      max-width: 150%;
      margin-bottom: -20vw;
   }
}

@media screen and (max-width: 540px) { 
   .home-header .header-home-illustation {
      margin-top: var(--row-padding-small);
   }
   
   .home-vector-canvas {
      width: 200%;
      max-width: 200%;
      transform: translate(-15%, 0);
      margin-bottom: -25vw;
   }
}

@media screen and (max-width: 440px) { 
   .home-header .btn {
      font-size: calc((100vw - (var(--container-padding) * 2)) * 0.04);
   }
}


/* ------------------------- Block - Two Third -------------------------------------------------- */

.block-two-third .col {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}

.block-two-third .col-row-btn {
   display: flex;
}

/* ------------------------- Block - Title Background  -------------------------------------------------- */

.block-title-background {
   padding-top: 25vh;
}

.block-title-background .background-image {
   position: absolute;
   right: 0;
   bottom: 0;
   height: 100%;
   width: 66.666%;
   overflow: hidden;
}

.block-title-background .overlay-gradient {
   width: 200%;
   background: radial-gradient(circle, rgba(11,38,31, 0.35) 0%, rgba(0,33,27,1) 90%);
}
 
/* ------------------------- Block - Split Image  -------------------------------------------------- */

.block-split-image .col {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}

.block-split-image .col-row-btn {
   display: flex;
}

.block-split-image figure {
   overflow: hidden;
   position: relative;
}

/* ------------------------- Block - Split Table  -------------------------------------------------- */

.block-split-table .col-row-btn {
   display: flex;
}

/* ------------------------- Block - Full Table  -------------------------------------------------- */

.block-full-table .col {
   width: 100%;
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}

.block-full-table .table {
   display: flex;
   flex-wrap: wrap;
   gap: 0 var(--gap);
   --gap: calc(var(--col-padding) * 2);
   --columns: 2;
   flex-direction: row;
   padding-top: var(--row-padding);
}

.block-full-table .table .single-table-row {
   width: calc((99.99% / var(--columns)) - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

.block-full-table .col-row-btn {
   display: flex;
   align-items: center;
   justify-content: center;
}

.block-full-table + .block-full-table,
.block-full-table + .block-two-third-2 {
   padding-top: 0;
}


@media screen and (min-width: 1024px) {

   .block-full-table .table .single-table-row:nth-child(2) {
      border-top: 2px solid var(--color-border);
   }

}

@media screen and (max-width: 1024px) {
   .block-full-table .table {
      --columns: 1;
   }
}

/* ------------------------- Block - Split Table  -------------------------------------------------- */

.block-split-table .col {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}

/* ------------------------- Block - Slider Industries  -------------------------------------------------- */

.block-slider-industries {
   overflow: hidden;
   --container-width: calc((var(--title-size) * 12) - (var(--container-padding) * 2));
   --gap: var(--col-padding-small);
   --columns: 3;
   --slides-progress-width: var(--container-width);
   --slides-progress-height: 1.2em;
   --slides-amount: 0;
   --slider-info-distance: var(--row-padding);
   padding-bottom: calc(var(--section-padding) + var(--slides-progress-height) + var(--slider-info-distance));
}

@media screen and (max-width: 960px) {
   .block-slider-industries {
      --container-width: calc(100vw - (var(--container-padding) * 2));
   }
}

@media screen and (max-width: 720px) {

   .block-slider-industries {
      --columns: 2;
      --gap: var(--container-padding);
   }
}

@media screen and (max-width: 440px) {

   .block-slider-industries {
      --columns: 1.5;
   }
}

.block-slider-industries .front {
   max-width: calc((var(--container-width) / var(--columns)) - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
   position: absolute;
   height: 100%;
   display: flex;
   align-items: center;
   top: 0;
   z-index: 1;
   pointer-events: none;
}

.block-slider-industries .front .col {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
   pointer-events: all;
}

.block-slider-industries .front .col-row-btn {
   display: flex;
   /* padding-bottom: var(--row-padding-small); */
}

@media screen and (min-width: 1024px) {

   .block-slider-industries .front .col-row-btn {
      display: flex;
      padding-bottom:  calc((var(--slides-progress-height) + var(--slider-info-distance)) * 0.5);
   }
}

.block-slider-industries .front h2 div {
   font-size: 0.9em;
   line-height: inherit;
   font-weight: inherit;
}

.block-slider-industries .back {
   position: relative;
   z-index: 0;
   display: flex;
   align-items: center;
   justify-content: center;
}

.block-slider-industries .back .cover-tile {
   width: var(--container-width);
   position: absolute;
   top: -10%;
   left: 50%;
   transform: translateX(-50%);
   height: 120%;
   pointer-events: none;
}

.block-slider-industries .back .cover-tile::before {
   content: "";
   display: block;
   height: 100%;
   width: calc((var(--container-width) / var(--columns)) - (var(--gap) * ((var(--columns) - 1) / var(--columns))) + (var(--gap) * 2));
   background: var(--color-dark);
   margin-left: calc(var(--gap) * -1);
}

@media screen and (max-width: 1024px) { 

   .block-slider-industries .back .cover-tile {
      display: none;
   }

   .block-slider-industries .front {
      max-width: calc(var(--title-size) * 8);
      position: relative;
   }

   .block-slider-industries .front .col-row-btn {
      padding-bottom: var(--row-padding);
   }
}


/* ------------------------- Flickity Slider - Custom: Cards -------------------------------------------------- */


.flickity-slider-group[data-flickity-slider-type="cards"] .flickity-slide {
   width: calc((var(--container-width) / var(--columns)) - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
   background: var(--color-primary);
   position: relative;
   pointer-events: none;
   user-select: none;
   overflow: hidden;
}

.flickity-slider-group[data-flickity-slider-type="cards"] .flickity-slide::before {
   content: "";
   display: block;
   padding-top: 100%;
}

.flickity-slider-group[data-flickity-slider-type="cards"] .overlay-gradient {
   width: 150%;
   background: radial-gradient(circle, rgba(11,38,31, 0.35) 0%, rgba(0,33,27,1) 100%);
}

.flickity-slider-group[data-flickity-slider-type="cards"] .overlay-content {
   display: flex;
   padding: var(--row-padding-small);
   align-items: flex-end;
}

@media screen and (max-width: 1024px) { 

   .flickity-slider-group[data-flickity-slider-type="cards"] .flickity-slide::before {
      padding-top: 125%;
   }
}

/* ------------------------- Block - Big Image  -------------------------------------------------- */

.block-big-image {
   padding-top: 25vh;
   padding-bottom: 25vh;
}

.block-big-image .background-image {
   position: absolute;
   --box-gap: var(--container-padding);
   left: var(--box-gap);
   top: var(--box-gap);
   height: calc(100% - (var(--box-gap) * 2));
   width: calc(100% - (var(--box-gap) * 2));
   overflow: hidden;
}

.block-big-image .background-image .overlay {
   top: -1vh;
   height: calc(100% + 2vh);
}

.block-big-image .overlay-gradient {
   width: 100%;
   background: radial-gradient(circle, rgba(11,38,31, 0.35) 0%, rgba(0,33,27,1) 200%);
}

.block-big-image .row {
   background: var(--color-dark);
   padding: var(--row-padding-small) 0;
   max-width: 32em;
}

.block-big-image .row .col {
   display: flex;
   flex-direction: column;
   gap: 1em;
}

.block-big-image .border-static-x {
   margin: 0.8em 0 1em 0;
}

.block-big-image .row .col .col-row {
   padding: 0 var(--row-padding-small);
}

.block-big-image .row .col .col-row-btn {
   display: flex;
}

@media screen and (max-width: 1024px) {  

   .block-big-image {
      padding-top: var(--container-padding);
      padding-bottom: 0;
   }

   .block-big-image .background-image {
      position: relative;
      width: calc(100% - (var(--container-padding) * 2));
      left: var(--container-padding);
      top: unset;
      height: unset;
   }

   .block-big-image .background-image::before {
      content: "";
      padding-top: 50%;
      display: block;
   }

   .block-big-image .row .col .col-row {
      padding: 0;
   }   
}

@media screen and (max-width: 540px) {  
   .block-big-image .background-image::before {
      padding-top: 66.66%;
   }
}


/* ------------------------- Block - Industries Cards  -------------------------------------------------- */

.block-industries-cards .single-card {
   display: flex;
   flex-direction: column;
   background: var(--color-light);
}

.block-industries-cards .single-card .top {
   width: 100%;
   position: relative;
   overflow: hidden;
}

.block-industries-cards .single-card .top::before {
   content: "";
   padding-top: 66%;
   display: block;
}

.block-industries-cards .single-card .overlay-gradient {
   width: 200%;
   background: radial-gradient(circle, rgba(11,38,31, 0) 0%, rgba(0,33,27,1) 90%);
}

.block-industries-cards .single-card .bottom {
   padding: var(--row-padding-small) var(--col-padding-small);
}


.block-industries-cards .single-card .overlay-content {
   display: flex;
   align-items: flex-end;
   padding: var(--row-padding-small) var(--col-padding-small);
}

.block-industries-cards .single-card h2 {
   color: var(--color-white);
}

@media screen and (max-width: 1024px) {  
   .block-industries-cards .single-card .bottom {
      padding: var(--container-padding);
   }
}


/* ------------------------- Section - Company About Intro -------------------------------------------------- */

.section-company-about-intro {
   padding-bottom: 0;
}

/* ------------------------- Section - Company About Images -------------------------------------------------- */

.section-company-about-images::before {
   content: "";
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: calc(var(--section-padding) * 2);
   background-color: var(--color-secondary);
}

.section-company-about-images .col {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding);
}

@media screen and (min-width: 1024px) {  

   .section-company-about-images .col:nth-child(2) figure:nth-child(1) {
      margin-top: calc(var(--section-padding) * -1);
   }

   .section-company-about-images .col:nth-child(2) figure:nth-child(2) {
      width: 75%;
   }
}

@media screen and (max-width: 1024px) {
   .section-company-about-images .row.split.large-gap,
   .section-company-about-images .row.split.large-gap .col {
      gap: var(--container-padding);
   }
}

/* ------------------------- Section - Company About Map -------------------------------------------------- */

.section-company-about-map {
   padding-top: 0;
}

.section-company-about-map .col:nth-child(1),
.section-company-about-map .col-row.map {
   display: flex;
   align-items: flex-end;
}

.section-company-about-map figure {
   --figure-width: calc(50vw - (var(--gap) * 0.5));
   max-width: var(--figure-width);
   width: var(--figure-width); 
   min-width: var(--figure-width); 
}

@media screen and (min-width: 1024px) {  
   .section-company-about-map .col:nth-child(1) {
      margin-top: calc(var(--section-padding) * -1.5);
   }

   .section-company-about-map .col-row.map {
      display: none;
   }
}

@media screen and (max-width: 1024px) {  

   .section-company-about-map .col.desktop {
      display: none;
   }

   .section-company-about-map .mobile {
      display: flex;
      justify-content: flex-end;
   }

   .section-company-about-map figure {
      --figure-width: 100vw;
   }
}

@media screen and (max-width: 540px) {  
   .section-company-about-map figure {
      --figure-width: 125vw;
   }
}

/* ------------------------- Section - Company Community Intro -------------------------------------------------- */

.section-company-community-intro {
   padding-bottom: 0;
}

@media screen and (min-width: 1024px) {  
   .section-company-community-intro h2,
   .section-company-community-images h2 {
      font-size: calc(var(--title-size) * 0.35);
   }
}

/* ------------------------- Section - Company Community Images -------------------------------------------------- */

.section-company-community-images::before {
   content: "";
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: calc(var(--section-padding) * 2);
   background-color: var(--color-secondary);
}

.section-company-community-images .col:nth-child(2) {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}

.section-company-community-images .col:nth-child(2) .col-row.large-p {
   padding-top: var(--row-padding);
}

@media screen and (min-width: 1024px) {  

   .section-company-community-images .col:nth-child(2) figure:nth-child(1) {
      margin-top: calc(var(--section-padding) * -1);
   }

   .section-company-community-images .col:nth-child(1) figure:nth-child(2) {
      width: 67.5%;
   }

   .section-company-community-images .col:nth-child(1) {
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      gap: var(--row-padding);
   }
}

@media screen and (max-width: 1024px) {
   .section-company-community-images .row,
   .section-company-community-images .col {
      display: flex;
      flex-direction: column;
      gap: var(--container-padding);
   }
}

/* ------------------------- Section - Company Lagacy Sticky Nav -------------------------------------------------- */

.sticky-page-nav-wrapper {
   position: relative;
}

.sticky-page-nav {
   position: sticky;
   top: 0;
   width: 100%;
   z-index: 10000;
   top: calc(var(--main-navigation-height) + var(--progress-bar-height));
   transition: var(--animation-smooth);
   background-color: var(--color-primary);
   padding: 0 var(--container-padding);
}

.sticky-page-nav[data-sub-navigation="active"] {
   top: calc(var(--main-navigation-height) + var(--progress-bar-height) + var(--sub-navigation-height));
}

[data-scrolling-started="true"][data-scrolling-direction="down"] .sticky-page-nav {
   top: calc(var(--main-navigation-height-scrolled) + var(--progress-bar-height-scrolled));
}

[data-scrolling-started="true"][data-scrolling-direction="down"] .sticky-page-nav[data-sub-navigation="active"] {
   top: calc(var(--main-navigation-height-scrolled) + var(--progress-bar-height-scrolled) + var(--sub-navigation-height-scrolled));
}

@media screen and (max-width: 1024px) {  
   .sticky-page-nav,
   .sticky-page-nav[data-sub-navigation="active"],
   [data-scrolling-started="true"][data-scrolling-direction="down"] .sticky-page-nav,
   [data-scrolling-started="true"][data-scrolling-direction="down"] .sticky-page-nav[data-sub-navigation="active"] {
      top: calc(var(--main-navigation-height) + (var(--progress-bar-height) * 0.75));
   }
}

.sticky-page-nav ul {
   display: flex;
   align-items: center;
   justify-content: flex-end;
   transition: all var(--animation-smooth);
   padding-right: var(--inquiries-btn-width);
   height: var(--sub-navigation-height);
}

.sticky-page-nav ul li .nav-link {
   position: relative;
   padding: 0 calc(var(--col-padding-small) * 0.5);
   height: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   cursor: pointer; 
}

.sticky-page-nav ul li .nav-link span {
   font-size: 0.75em;
   transition: var(--animation-primary);
   white-space: nowrap;
   color: var(--color-light);
}

.sticky-page-nav ul li .nav-link.active span {
   color: var(--color-secondary);
}

.sticky-page-nav ul li .nav-link:hover span {
   opacity: 0.5;
}

.sticky-page-nav ul li.active .nav-link:hover span {
   opacity: 1;
}

@media screen and (max-width: 1024px) {  

   .sticky-page-nav {
      flex: 1;
      overflow: auto;
      padding: 0;
   }
   .sticky-page-nav ul {
      padding-right: 0;
      min-height: min-content;
      justify-content: flex-start;
      height: 2.75em;
   }

   .sticky-page-nav ul li .nav-link {
      padding: 0 0.75em;
   }

   .sticky-page-nav ul li .nav-link span {
      font-size: 0.8em;
   }
}

/* ------------------------- Section - Company Lagacy Era -------------------------------------------------- */

.section-legacy-era {
   padding-top: 0;
   overflow: hidden;
}

.section-legacy-era .era {
   width: 100%;
   padding: var(--section-padding) var(--container-padding);
   display: flex;
   align-items: center;
   justify-content: center;
   background-color: var(--color-dark);
}

.section-legacy-era .era h2 {
   color: var(--color-secondary);
   font-size: calc(var(--title-size) * 2.6);
   font-weight: 700;
   line-height: 0.9;
   transform: translateY(-10%);
   white-space: nowrap;
   color: transparent;
}

/* .section-legacy-era .era h2 .single-char {
   overflow: hidden;
} */

.section-legacy-era .era h2 .single-char-inner {
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent;
   -webkit-text-stroke: 1.5px var(--color-secondary);
	background-clip: text;
	background-image: url('../images/pattern-grain.png');
   background-position: center center;
   background-size: 6em;
   background-repeat: no-repeat;
	color: transparent;
   transform: rotate(0.001deg);
}

.section-legacy-era .row .col:nth-child(1) {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding);
   margin-top: calc(var(--row-padding) * -1);
   align-items: flex-end;
}

.section-legacy-era strong {
   line-height: 2.5em;
}

/* Era - 1960-1980  */

#section-1960 h2 {
   font-size: calc((var(--title-size) * 2.6) * 0.725);
}

@media screen and (min-width: 1024px) {  

   #section-1930 .row .col:nth-child(1),
   #section-1960 .row .col:nth-child(1),
   #section-2000 .row .col:nth-child(1),
   #section-2020 .row .col:nth-child(1) {
      order: 2;
      align-items: flex-start;
   }

   .section-legacy-era .row .col:nth-child(2) {
      padding-top: var(--section-padding);
   }
}

@media screen and (max-width: 1024px) { 
   .section-legacy-era .era h2 {
      font-size: calc(var(--title-size) * 2);
   }

   .section-legacy-era .era h2 .single-char-inner {
      -webkit-text-stroke: 1.25px var(--color-secondary);
   }

   #section-1960 h2 {
      font-size: calc((var(--title-size) * 2) * 0.725);
   }
}

@media screen and (max-width: 720px) { 
   .section-legacy-era .era h2 {
      font-size: 22vw;
   }

   .section-legacy-era .era h2 .single-char-inner {
      -webkit-text-stroke: 1px var(--color-secondary);
   }

   #section-1960 h2 {
      font-size: calc(22vw * 0.725);
   }
}


/* Varations */

#section-1800 .col figure:nth-child(2) {
   width: 80%;
}

#section-1930 .col figure:nth-child(2) {
   width: 80%;
}

#section-1940 .col figure:nth-child(2) {
   width: 55%;
}

#section-1950 .col figure:nth-child(2) {
   width: 75%;
}

#section-1950 .col figure:nth-child(3) {
   width: 50%;
}

#section-1960 .col figure:nth-child(2) {
   width: 85%;
}

#section-1960 .col figure:nth-child(3) {
   width: 70%;
}

#section-1990 .col figure:nth-child(2) {
   width: 75%;
}

#section-2000 .col figure:nth-child(2) {
   width: 70%;
}

#section-2010 .col figure:nth-child(2) {
   width: 65%;
}

#section-2020 .col figure:nth-child(2) {
   width: 65%;
}


/* ------------------------- Home - Capabilities Cards -------------------------------------------------- */

.capabilities-cards .row.two-third .col {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}


/* ------------------------- Home - Section Stats -------------------------------------------------- */

.section-stats {
   padding-top: 0;
   padding-bottom: 0;
}

.section-stats .container {
   padding: 0;
}

.section-stats .row {
   flex-wrap: wrap;
   gap: 0 var(--gap);
   --gap: 0em;
   --columns: 3;
}

.section-stats .col {
   width: calc((99.99% / var(--columns)) - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

.section-stats .col .single-stats {
   width: 100%;
   position: relative;
   /* cursor: pointer; */
}

.section-stats .overlay-content {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   gap: 1em;
   padding-top: 1em;
}

.section-stats .overlay-content h2,
.section-stats .overlay-content p {
   transition: var(--animation-primary);
   color: var(--color-dark);
}

.section-stats .overlay-content h2 {
   font-weight: 700;
}

.section-stats .overlay-content h2 span {
   font-size: 1.1em;
}

.section-stats .overlay-gradient {
   width: 200%;
   background: #00211B;
   opacity: 0.65;
   transition: var(--animation-primary);
}

.section-stats figure {
   filter: grayscale(1);
}

.section-stats .overlay-animate {
   transition: var(--animation-bounce);
   top: unset;
   bottom: 0;
   background: var(--color-secondary);
   overflow: hidden;
}

.section-stats .single-stats .overlay-image {
   opacity: 0;
}

[data-barba-namespace="company-single-legacy"] .section-stats {
   background: var(--color-light);
}

[data-barba-namespace="company-single-legacy"] .section-stats .col .single-stats .overlay-content {
   border-bottom: 2px solid rgba(var(--color-dark-rgb), 0.125);
}

[data-barba-namespace="company-single-legacy"] .section-stats .container {
   padding: 0;
   max-width: 100%;
}

@media screen and (min-width: 1024px) { 

   .section-stats .col .single-stats::before {
      content: "";
      padding-top: 70%;
      display: block;
   }

   .section-stats .overlay-animate {
      height: calc(100% - var(--row-padding-small));
   }

   .section-stats .single-stats .overlay-image {
      transition: var(--animation-primary);
      width: 120%;
      left: -10%;
   }

   .section-stats .col:nth-child(2) .single-stats .overlay-content {
      border-left: 2px solid rgba(var(--color-dark-rgb), 0.125);
      border-right: 2px solid rgba(var(--color-dark-rgb), 0.125);
   }

   /* Active / Hover */

   .section-stats .single-stats[data-stats-status="active"] .overlay-animate {
      height: 100%;
   }

   .section-stats .single-stats[data-stats-status="active"] .overlay-image {
      opacity: 1;
   }

   .section-stats .single-stats[data-stats-status="active"] .overlay-content h2 {
      color: var(--color-secondary);
   }
   .section-stats .single-stats[data-stats-status="active"] .overlay-content p {
      color: var(--color-light);
   }

}

@media screen and (max-width: 1024px) {
   
   .section-stats .row {
      --columns: 1;
      gap: 0;
   }

   .section-stats .col .single-stats {
      height: calc(var(--title-size) * 2.5);
   }

   .section-stats .col:nth-child(2) .single-stats .overlay-content {
      border-top: 2px solid rgba(var(--color-dark-rgb), 0.125);
      border-bottom: 2px solid rgba(var(--color-dark-rgb), 0.125);
   }

   .section-stats .overlay-content h2 span {
      font-size: 1.2em;
   }
} 


/* ------------------------- Legacy - Section Stats Today -------------------------------------------------- */

.section-legacy-today {
   padding-top: 0;
   padding-bottom: calc(var(--section-padding) * 0.75);
}

.section-legacy-today .row {
   justify-content: center;
}

/* ------------------------- Home - Section Production -------------------------------------------------- */

.section-production .row.two-third {
   padding-bottom: var(--row-padding);
}

.section-production .row.two-third .col:nth-child(1) {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}

.section-production .col-production-list li {
   padding: 1.75em 0;
   border-bottom: 2px solid var(--color-border);
}

.section-production .col-production-list li:first-child {
   border-top: 2px solid var(--color-border);
}

.section-production .col-production-list li p {
   transition: color var(--animation-primary);
}

.section-production .col-production-list li[data-production-status="active"] p {
   color: var(--color-secondary);
}

.section-production .col-production-slides li {
   position: absolute;
   transform: translateY(3em) rotate(0.001deg);
   opacity: 0;
   visibility: hidden;
   transition: opacity var(--animation-primary) 0s, all var(--animation-bounce) 0s;
}

.section-production .col-production-slides li.largest {
   position: relative;
}

.section-production .col-production-slides li[data-production-status="active"] {
   transform: translateY(0) rotate(0.001deg);
   opacity: 1;
   visibility: visible;
   transition: opacity var(--animation-primary) 0.2s, all var(--animation-bounce) 0.2s;
}

.section-production .single-production-slide {
   display: flex;
   flex-direction: column;
   gap: var(--row-padding-small);
}

.section-production .single-production-slide .production-image {
   width: 100%;
   position: relative;
}

.section-production .single-production-slide .production-image::before {
   content:"";
   padding-top: 42.5%;
   display: block;
}

.section-production .single-production-slide .col-row-btn {
   display: flex;
   gap: 0.5em;
}

[data-production-target] {
   cursor: pointer;
}


/* ------------------------- Section - Careers Cards -------------------------------------------------- */

.section-careers-cards .row.grid {
   gap: var(--row-padding) var(--gap);
   --gap: var(--col-padding);
   --columns: 3;
   padding-top: var(--row-padding);
   flex-wrap: wrap;
}

.section-careers-cards .single-careers-item {
   display: flex;
   flex-direction: column;
   width: calc((99.99% / var(--columns)) - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
   background: var(--color-light);
   padding: 1.75em;
   gap: 1.5em;
   justify-content: space-between;
}

.section-careers-cards .single-careers-item .col-row-btn {
   display: flex;
}

@media screen and (max-width: 1024px) {
   .section-careers-cards .row.grid {
      --columns: 2;
      gap: var(--row-padding-small) var(--gap);
   }
}

@media screen and (max-width: 720px) {
   .section-careers-cards .row.grid {
      --columns: 1;
   }
}


/* ------------------------- Section - Inquiries Information -------------------------------------------------- */

.section-inquiries-info .row.two-third {
   padding-bottom: var(--row-padding);
}

.section-inquiries-info .row.two-third .col {
   gap: var(--row-padding-small);
}

.section-inquiries-info .row.grid {
   flex-wrap: wrap;
   gap: var(--row-padding) var(--gap);
   --gap: calc(var(--col-padding) * 2);
   --columns: 3;
}

.section-inquiries-info .row.grid .col {
   gap: 1em;
   width: calc((99.99% / var(--columns)) - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

@media screen and (max-width: 1024px) {
   .section-inquiries-info .row.grid {
      gap: var(--row-padding) var(--gap);
      --gap: calc(var(--col-padding) * 2);
      --columns: 2;
   }
}

@media screen and (max-width: 720px) {
   .section-inquiries-info .row.grid {
      --columns: 1;
   }
}

/* ------------------------- Section - Inquiries Form -------------------------------------------------- */

.section-inquiries-form .row {
   display: flex;
   flex-wrap: wrap;
   align-items: flex-start;
   gap: var(--row-padding) var(--gap);
   --gap: calc(var(--col-padding) * 2);
   --columns: 2;
}

.section-inquiries-form .col-form {
   width: calc(63.33% - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

.section-inquiries-form .col-info {
   width: calc(36.66% - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
   background: var(--color-lightgray);
   padding: var(--row-padding) var(--col-padding);
   gap: var(--row-padding-small);
}

.section-inquiries-form .col-info h6 {
   margin-bottom: 1.25em;
}

.section-inquiries-form .col-info a {
   text-decoration: none;
}

@media screen and (max-width: 1024px) {

   .section-inquiries-form {
      padding: 0;
   }
   
   .section-inquiries-form .container {
      max-width: 100%;
      padding: 0;
   }

   .section-inquiries-form .row {
      --columns: 1;
      gap: 0;
   }

   .section-inquiries-form .col-form {
      width: 100%;
      padding: var(--section-padding) var(--container-padding);
   }

   .section-inquiries-form .col-info {
      width: 100%;
      padding: var(--section-padding) var(--container-padding);
   }
}

/* ------------------------- Section - Job Application Form -------------------------------------------------- */

.section-job-application-form .col {
   width: 100%;
}

.section-job-application-form .styled-form {
   width: 100%;
   display: flex;
   flex-wrap: wrap;
   gap: var(--row-padding) var(--gap);
   --gap: calc(var(--col-padding) * 2);
   --columns: 2;
   flex-direction: row;
}

.section-job-application-form .form-col {
   width: 100%;
}

.section-job-application-form .form-col.half {
   width: calc(49.99% - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

@media screen and (max-width: 1024px) {


   .section-job-application-form .styled-form {
      --columns: 1;
   }

   .section-job-application-form .form-col.half {
      width: 100%;
   }
}


/* ------------------------- Section - News List -------------------------------------------------- */

.section-news-list .row .col {
   width: 100%;
   background-color: var(--color-light);
   padding: calc(var(--col-padding) * 0.25) 0;
}

.section-news-list .row .news-card {
   display: flex;
   flex-direction: column;
   gap: 1em;
   padding: var(--row-padding-small) var(--col-padding) 0 var(--col-padding);
}

.section-news-list .row .news-card .card-row {
   display: flex;
}

.section-news-list .row .news-card .card-row-btn {
   padding-top: 0.75em;
   border-bottom: 2px solid var(--color-border) + 0.25em;
   padding-bottom: calc(var(--row-padding-small) + 0.25em);
} 

.section-news-list .row .news-card:last-child .card-row-btn {
   border-bottom: 0;
}


/* Hover */

.section-news-list .row .news-card:hover .btn-fill {
   height: 70%;
   background-color: var(--color-dark);
   border: 2px solid var(--color-dark);
}

.section-news-list .row .news-card:hover .btn-content i .arrow {
   transform: rotate(-45deg);
}

.section-news-list .row .news-card:hover .btn-content i .bar:nth-child(1) {
   transform: scaleY(0.6) rotate(0.001deg);
}

.section-news-list .row .news-card:hover .btn-content i .bar:nth-child(2) {
   transform: scaleX(0.6) rotate(0.001deg);
}

.section-news-list .row .news-card:hover .btn-content span {
   color: var(--color-white);
}

@media screen and (max-width: 1024px) {

   .section-news-list {
      padding: 0;
      background-color: var(--color-light);
   }

   .section-news-list .row .news-card {
      padding-left: 0;
      padding-right: 0;
   }

   .section-news-list .row .col {
      padding: calc(var(--section-padding) - var(--row-padding-small)) 0;
   }
}

/* ------------------------- Section - News Article Header -------------------------------------------------- */

.news-article-header.default-header {
   padding-bottom: var(--section-padding);
   padding-top: calc(var(--section-padding) * 0.75)
}

.news-article-header h1 {
   color: var(--color-white);
}

.news-article-header .header-image-back {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100vh;
   overflow: hidden;
   background-color: var(--color-dark);
}

.news-article-header .row-title {
   padding-bottom: calc(var(--section-padding) * 0.75);
}

.news-article-header .row-title .published {
   color: var(--color-secondary);
}

.news-article-header .row-content {
   background-color: var(--color-light);
   padding: var(--row-padding) var(--col-padding);
}


@media screen and (max-width: 1024px) { 

   .news-article-header.default-header {
      padding-top: var(--section-padding);
   }

   .news-article-header .row-content {
      max-width: unset;
   }

   .news-article-header .row-title {
      padding-bottom: var(--section-padding);
   }
}