/***********
 * GENERAL *
 ***********/
/******************************************************************************
 * --------------------------------- GLOBAL --------------------------------- *
 ******************************************************************************/
* {
  font-family: var(--primary-font);
  font-weight: var(--b-light);
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  scroll-behavior: smooth;
}

:root {
  /* FONTS */
  --primary-font: "neue-haas-grotesk-display", sans-serif;
  /* COLORS */
  --pr-color: white;
  --sc-color: #262626;
  --tr-color: #00AA4F;
  /* SIZES */
  --txt-xl: 4.375rem; /* 70px */
  --txt-lg: 4rem; /* 64px */
  --txt-md: 3rem; /* 48px */
  --txt-sm: 1.563rem; /* 25px */
  --txt-sm-xs: 1.375rem; /* 22px */
  --txt-xs: 1.25rem; /* 20px */
  --txt-xs-xs: 1.125rem; /* 18px */
  --txt-xsxs: 1rem; /* 16px */
  /* BOLD */
  --b-light: 100;
  --b-normal: 400;
  --b-bold: 600;
}

::selection {
  background: var(--tr-color);
  color: white;
}

::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgb(89, 89, 89);
  background-color: var(--sc-color);
}

::-webkit-scrollbar {
  width: 7px;
  background-color: var(--tr-color);
}

::-webkit-scrollbar-thumb {
  background-color: var(--tr-color);
}

body {
  background: var(--sc-color);
}

.section-padding {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.big-title {
  font-size: var(--txt-lg);
  font-weight: var(--b-light);
  line-height: 1.1;
}

.md-title {
  font-size: var(--txt-md);
  font-weight: var(--b-light);
  line-height: 1.1;
}

.small-title {
  font-size: var(--txt-xs);
  font-weight: var(--b-bold);
  line-height: 1.1;
}

.parag {
  font-size: var(--txt-xs);
  font-weight: var(--b-light);
}

#breadcrumbs {
  font-size: var(--txt-xs);
  color: white;
  margin-bottom: 0.8rem;
}
#breadcrumbs a:hover {
  text-decoration: underline;
}

.btn {
  display: block;
  width: fit-content;
  font-size: var(--txt-sm-xs);
  color: white;
  font-weight: var(--b-bold);
}

/******************
 * // BTNS STYLES *
 ******************/
.btn_underline_left {
  position: relative;
}
.btn_underline_left::after {
  content: "";
  position: absolute;
  border-bottom: 2px solid var(--tr-color);
  bottom: -9px;
  right: 0;
  width: calc(100% + 400px);
  background: linear-gradient(0deg, #00aa4f -40%, transparent 60%);
  height: 0%;
  transition: all 0.5s ease;
}
.btn_underline_left:hover::after {
  width: calc(30% + 1px);
}

.btn_underline_right {
  position: relative;
}
.btn_underline_right::after {
  content: "";
  position: absolute;
  border-bottom: 2px solid var(--tr-color);
  bottom: -9px;
  left: 0;
  width: calc(100% + 400px);
  background: linear-gradient(0deg, #00aa4f -40%, transparent 60%);
  height: 0%;
  transition: all 0.5s ease;
}
.btn_underline_right:hover::after {
  width: calc(30% + 1px);
}

.btn_underline_cta_menu {
  position: relative;
}
.btn_underline_cta_menu::after {
  content: "";
  position: absolute;
  border-bottom: 2px solid var(--tr-color);
  bottom: -9px;
  right: 0;
  width: 100%;
  background: linear-gradient(0deg, #00aa4f -40%, transparent 60%);
  height: 0%;
  transition: all 0.5s ease;
}
.btn_underline_cta_menu:hover::after {
  width: 30%;
}

.btn_dark_square {
  font-size: var(--txt-xs-xs);
  font-weight: var(--b-light);
  backdrop-filter: blur(2px);
  background: rgba(0, 0, 0, 0.3607843137);
  padding: 0.6rem 1.8rem;
  border: 1px solid white;
  border-radius: 0.4rem;
  transition: all 0.3s ease;
}
.btn_dark_square:hover {
  background: rgba(0, 0, 0, 0.2352941176);
}

.btn_filter {
  font-size: var(--txt-sm-xs);
  color: white;
  font-weight: var(--b-bold);
  font-size: var(--txt-xs-xs);
  font-weight: var(--b-light);
  backdrop-filter: blur(2px);
  background: var(--sc-color);
  padding: 0.6rem 1.8rem;
  border: 1px solid white;
  border-radius: 0.4rem;
  transition: all 0.3s ease;
}
.btn_filter:hover {
  background: var(--tr-color);
}

.btn_filter.active {
  background: var(--tr-color);
  border-color: var(--tr-color);
}

.btn_underline_centered {
  position: relative;
}
.btn_underline_centered::after {
  content: "";
  position: absolute;
  border-bottom: 2px solid var(--tr-color);
  bottom: -9px;
  right: 0;
  width: calc(100% + 50vw);
  background: linear-gradient(0deg, #00aa4f -40%, transparent 60%);
  height: 0%;
  transition: all 0.5s ease;
}
.btn_underline_centered:hover::after {
  width: calc(30% + 0vw);
}

.btn_underline_centered_right {
  position: relative;
}
.btn_underline_centered_right::after {
  content: "";
  position: absolute;
  border-bottom: 2px solid var(--tr-color);
  bottom: -9px;
  left: 0;
  width: calc(100% + 50vw);
  background: linear-gradient(0deg, #00aa4f -40%, transparent 60%);
  height: 0%;
  transition: all 0.5s ease;
}
.btn_underline_centered_right:hover::after {
  width: calc(30% + 0vw);
}

.btn_bordered_style {
  position: relative;
  font-size: var(--txt-xs-xs);
  border: 2px solid var(--tr-color);
  border-radius: 0.2rem;
  padding: 0.6rem 1rem;
  transition: all 0.3s ease;
}
.btn_bordered_style:hover {
  background: var(--tr-color);
  color: white;
}
.btn_bordered_style::after {
  CONTENT: "";
  position: absolute;
  right: 100%;
  bottom: 1.2rem;
  width: 100vh;
  border-bottom: 2px solid var(--tr-color);
}

.btn_bordered_style_from_right {
  position: relative;
  font-size: var(--txt-xs-xs);
  border: 2px solid var(--tr-color);
  border-radius: 0.2rem;
  padding: 0.6rem 1rem;
  transition: all 0.3s ease;
}
.btn_bordered_style_from_right:hover {
  background: var(--tr-color);
  color: white;
}
.btn_bordered_style_from_right::after {
  CONTENT: "";
  position: absolute;
  left: 100%;
  bottom: 1.2rem;
  width: 100vh;
  border-bottom: 2px solid var(--tr-color);
}

ped {
  font-size: 50%;
  padding: 0 3px;
}

.hide-scrollbar {
  /* Hide scrollbar for Chrome, Safari and Opera */
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

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

option {
  background: #262626;
}

/************
 * FANCYBOX *
 ************/
/**********************
 * VIMEO VIDEO IFRAME *
 **********************/
.video-wrapper iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none; /* Allows clicks to go through if overlayed */
}

/******************
 * FOR ANIMATIONS *
 ******************/
.animate-on-scroll {
  will-change: transform, opacity;
}

/*************
 * NO SCROLL *
 *************/
.no-scroll {
  overflow: hidden;
  height: 100vh;
}

/**********
 * HEADER *
 **********/
/********
 * LOGO *
 ********/
.Site-logo_header img {
  width: 100%;
  height: 50px;
  object-fit: contain;
}

/********
 * NAVS *
 ********/
.pre-nav_bar.menu_styling_list li a {
  font-size: var(--txt-xsxs) !important;
}

.menu_styling {
  background: var(--sc-color);
}

@media screen and (min-width: 1024px) {
  .menu_styling .pre-nav_bar {
    display: none;
  }
}
.menu_styling.bg-transparent .pre-nav_bar {
  display: flex;
}

.menu_styling_list {
  color: white;
}
.menu_styling_list li a {
  color: white;
  font-weight: var(--b-light);
  font-size: var(--txt-xs);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  height: 100%;
  text-shadow: 0px 0px 0px white;
  transition: all 0.3s ease;
  position: relative;
}
.menu_styling_list li a::after {
  content: "";
  position: absolute;
  border-bottom: 2px solid var(--tr-color);
  bottom: -3px;
  right: 0;
  width: 0%;
  background: linear-gradient(0deg, #00aa4f -40%, transparent 60%);
  transition: all 0.4s ease;
}
.menu_styling_list li a:hover::after {
  width: 65%;
}
.menu_styling_list .current-menu-item a {
  font-weight: var(--b-bold);
  position: relative;
}
.menu_styling_list .current-menu-item a::after {
  width: 65%;
}

/********
 * LANG *
 ********/
#language-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(41, 39, 38, 0.8);
  z-index: 99999;
  display: none;
  justify-content: center;
  align-items: center;
}
#language-popup ul .current-lang a {
  background-color: var(--sc-color);
  color: white;
}
#language-popup ul .current-lang a::after {
  transform: rotate(-90deg);
}
#language-popup ul li a {
  display: flex;
  align-items: center;
  background: #f4f4f4;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  padding: 1rem 1.5rem;
  border-radius: 0.5rem;
  font-size: var(--txt-xs);
  position: relative;
  transition: all 0.2s ease;
}
#language-popup ul li a img {
  width: 19px !important;
  height: 15px !important;
  border-radius: 0.2rem;
}
#language-popup ul li a span {
  padding-left: 0.5rem;
}
#language-popup ul li a::after {
  content: "\e920";
  font-family: "icomoon";
  transform: rotate(50deg);
  font-size: 1rem;
  position: absolute;
  right: 20px;
  transition: all 0.3s ease;
}
#language-popup ul li a:hover {
  background-color: var(--sc-color);
  color: white;
}
#language-popup ul li a:hover::after {
  transform: rotate(-90deg);
}

/*********************
 * BUTTON TO THE TOP *
 *********************/
.tothe_top_btn {
  position: fixed;
  right: -30px;
  bottom: -18vh;
  height: 30px;
  width: 93px;
  text-wrap: nowrap;
  transition: all 0.4s ease;
  z-index: 40;
}

.tothe_top_btn.up {
  bottom: 0vh;
}

.contact_btn {
  color: white;
  transform: rotate(-90deg);
  transform-origin: top left;
  font-size: 1.2rem;
  mix-blend-mode: difference;
}
.contact_btn::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 200px;
  background-color: white;
  mix-blend-mode: difference;
}

/******************
 * SECONDARY MENU *
 ******************/
.cta_menu .mobile_only {
  display: none;
}

@media screen and (max-width: 1024px) {
  .tothe_top_btn {
    display: none;
  }
  .menu_styling .pre-nav_bar {
    padding-top: 6px;
    padding-bottom: 6px;
  }
  .cta_menu .mobile_only {
    display: flex;
  }
  .cta_menu .change_icon a {
    visibility: hidden;
    position: relative !important;
    width: 1rem;
    height: 2rem !important;
    font-size: 0px !important;
  }
  .cta_menu .change_icon a::after {
    display: none;
  }
  .cta_menu .change_icon a::before {
    font-family: "icomoon";
    font-size: 1.15rem;
    visibility: visible;
    color: rgb(255, 255, 255);
    position: absolute !important;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .sec_menu_map a::before {
    content: "\e9a9" !important;
  }
  .sec_menu_news {
    display: none;
  }
  .sec_menu_download a::before {
    content: "\e902" !important;
  }
  .sec_menu_contact a::before {
    content: "\e9d0" !important;
  }
  .sec_menu_search a::before {
    content: "\e9e7" !important;
  }
}
/***************
* DESKTOP MENU *
****************/
.menus_cols::after {
  content: "";
  position: absolute;
  right: 0;
  border: 1px solid #6E6E6E;
  height: 60%;
  top: 20%;
}

.btn.menu_cta {
  border-bottom: 2px solid var(--tr-color);
}

.categories-container::after {
  content: "";
  position: absolute;
  left: 65%;
  border: 1px solid #6E6E6E;
  height: 48%;
  top: 21%;
}

/**************
* MOBILE MENU *
***************/
/**************
* CLOSE ICON *
**************/
.burger_menu.icon-close {
  /* margin-top: -4.6rem; */
  /* margin-top: -6.1rem; */
  top: 6.1rem;
  position: fixed;
}

/*************
* SUB MENUS *
*************/
.submenu {
  /* position: absolute; */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  /* padding: 60px 35px; */
}

@media screen and (max-width: 1279px) {
  .burger_menu.icon-close {
    top: 13px;
    right: 15px;
    position: fixed;
  }
  .burger_menu.text-3xl.icon-close.text-black.bg-white {
    background: transparent !important;
    color: white !important;
  }
}
.mobile_socialmedia_container:after {
  content: "";
  position: absolute;
  top: 0;
  left: 5%;
  width: 90%;
  margin: auto;
  height: 1px;
  background: black;
}

/**********
 * LOADER *
 **********/
.loader-box svg {
  animation: 2s ease infinite pulse;
}

@keyframes pulse {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/**************
* CLONED MENU *
***************/
.cloned_nav {
  top: -7rem;
  transition: all 0.4s ease-in-out;
}
.cloned_nav .nav_menu_desktop a {
  color: black;
}
.cloned_nav .language-popup-btn {
  display: none;
}

.cloned_nav.active {
  top: 0rem;
}

/**********
 * FOOTER *
 **********/
/**********
 * FOOTER *
 **********/
footer {
  background: white;
}
footer a {
  text-shadow: 0px 0px 0px white;
  transition: all 0.3s ease;
  line-height: 1;
}
footer a:hover {
  text-shadow: 0px 0px 5px white;
}
footer .sub-menu {
  line-height: 1.7 !important;
  margin: 6px 0 2px !important;
}
footer .primaryfooter_menu ul {
  line-height: 0.7;
}
footer .primaryfooter_menu .custom-logo-link img {
  width: 100%;
  max-width: 9rem;
}
footer .primaryfooter_menu .menu-item a,
footer .primaryfooter_menu .follow_us_txt {
  font-size: var(--txt-xs-xs);
}
footer .primaryfooter_menu .social-media-menu .menu-item a {
  font-size: var(--txt-xs);
  font-weight: var(--b-light);
}
footer .secondfooter_menu li {
  font-weight: var(--b-light);
}
footer .secondfooter_menu li a {
  font-weight: var(--b-light);
}
footer .secondfooter_menu strong {
  font-size: var(--txt-xs);
  font-weight: var(--b-normal);
}
footer .secondfooter_menu p {
  font-size: var(--txt-xs);
  font-weight: var(--b-light);
}

/*********
 * PARTS *
 *********/
/***********
 * GENERAL *
 ***********/
.title {
  line-height: 1;
}

/*****************************
 * MODULE 0 - HEADING BANNER *
 *****************************/
.module_0 .info_overlay {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.6784313725) -10%, transparent 40%);
}
.module_0 .info_overlay .pre_title {
  font-size: var(--txt-xs);
  font-weight: var(--b-light);
  color: white;
}
.module_0 .info_overlay .title {
  font-size: var(--txt-xl);
  color: white;
  font-weight: var(--b-bold);
}
.module_0 .swiper-pagination .swiper-pagination-bullet {
  width: 40px;
  height: 6px;
  border-radius: 1px;
  background: #555555;
  opacity: 1;
}
.module_0 .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: white;
}
.module_0 .m0-button-next {
  padding-right: 15px;
}
.module_0 .m0-button-next::after {
  color: white;
}
.module_0 .m0-button-prev {
  padding-left: 15px;
}
.module_0 .m0-button-prev::after {
  color: white;
}

/*****************************
 *     MODULE 1 - SLIDER     *
 *****************************/
.module_1 .title {
  font-size: var(--txt-lg);
  color: white;
}
.module_1 .swiper-slide img {
  transition: all 0.3s ease;
}
.module_1 .swiper-slide:hover img {
  transform: scale(1.1) !important;
}

.module_1.module_1_colorchanger {
  background: rgba(247, 247, 247, 0);
  transition: background 0.4s ease;
}

.module_1.module_1_colorchanger.white_version {
  background: #F7F7F7;
}
.module_1.module_1_colorchanger.white_version .title {
  color: black !important;
}
.module_1.module_1_colorchanger.white_version .small-title, .module_1.module_1_colorchanger.white_version .date {
  color: black !important;
}
.module_1.module_1_colorchanger.white_version .btn_underline_right,
.module_1.module_1_colorchanger.white_version .btn_underline_centered_right {
  color: black;
}

/*****************************
*     MODULE 2 - SLIDERS     *
*****************************/
.module_2 .title {
  font-size: var(--txt-lg);
  color: white;
}
.module_2 .swiper-slide {
  transition: all 0.3s ease;
  transform: scale(0.9) !important;
}
.module_2 .swiper-slide img {
  transition: all 0.3s ease;
}
.module_2 .swiper-slide:hover img {
  transform: scale(1.1) !important;
}
.module_2 .swiper-slide.swiper-slide-active {
  transform: scale(1) !important;
}

/****************************
*     MODULE 3 - SLIDER     *
*****************************/
.module_3 .title {
  font-size: var(--txt-lg);
  color: white;
}
.module_3 .swiper-slide img {
  transition: all 0.3s ease;
}
.module_3 .swiper-slide:hover img {
  transform: scale(1.1) !important;
}

/***********************************
*  MODULE 4 - FULL WIDTH SECTION   *
***********************************/
.module_4 .overlay {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.6117647059) 0%, transparent 50%);
}
.module_4 div {
  color: white;
}
.module_4 div .title {
  font-size: var(--txt-md);
}
.module_4 div .parag {
  font-size: var(--txt-xs);
}

/****************************************
*       MODULE 5 - TWO SQUARE POSTS     *
****************************************/
.module_5 {
  color: black;
}
.module_5 .title {
  font-size: var(--txt-md);
}
.module_5 .parag {
  font-size: var(--txt-xs);
}
.module_5 .btn_underline_left {
  font-size: var(--txt-sm-xs);
  color: black;
}

/***********************************
*     MODULE 6 - TITLE AND TEXT    *
************************************/
.module_6 {
  color: white;
}
.module_6 .title {
  font-size: var(--txt-xl);
}
.module_6 .parag {
  font-size: var(--txt-sm);
}

/*************************
 * MODULE 7 - MAP EMBEDE *
 *************************/
.module_7 .title {
  font-size: var(--txt-lg);
  color: white;
}
.module_7 .grid-item img {
  transition: all 0.3s ease;
}
.module_7 .grid-item:hover img {
  transform: scale(1.1) !important;
}

/***********************************
 * MODULE 8 - PARAGRAPH AS COLUMNS *
 ***********************************/
.module_8 {
  color: white;
}
.module_8 .title {
  font-size: var(--txt-lg);
}
.module_8 .grid-item .title {
  font-size: var(--txt-md);
  line-height: 1.1;
}
.module_8 .grid-item .parag {
  font-size: var(--txt-xs);
  line-height: 1.2;
}

/*********************************
 * MODULE 9 - PRODUCT COMPONENTS *
 *********************************/
.module_9 {
  color: white;
}
.module_9 .title {
  font-size: var(--txt-md);
  line-height: 1.1;
}
.module_9 .parag {
  font-size: var(--txt-xs);
}
.module_9 .parag a {
  color: white;
  position: relative;
}
.module_9 .parag a::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0px;
  width: 100%;
  height: 1px;
  background: var(--tr-color);
  transition: all 0.3s ease;
}
.module_9 .parag a::before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0px;
  height: 1px;
  width: 0%;
  background: linear-gradient(90deg, var(--sc-color) 20%, var(--tr-color) 100%);
  z-index: 2;
  transition: all 0.8s ease;
}
.module_9 .parag a:hover::before {
  width: 100%;
}
.module_9 .underlined_title {
  font-size: var(--txt-xl);
  max-width: 45rem;
  text-align: center;
}
.module_9 .underlined_title::after {
  content: "";
  position: absolute;
  bottom: -1rem;
  right: 0;
  width: calc(100% + 100vw);
  border-bottom: 2px solid var(--tr-color);
}
.module_9 .iframe_container iframe {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
}

/******************************
 * MODULE 10 - COLLECTION LIST *
 ******************************/
.module_10 .heading .title {
  font-size: var(--txt-lg);
  color: white;
}
.module_10 .product_box .img_container img {
  transition: all 0.3s ease;
}
.module_10 .product_box .img_container:hover img {
  transform: scale(1.1) !important;
}
.module_10 .product_box .title {
  font-size: var(--txt-xs);
  color: white;
}
.module_10 .product_box .subtitle {
  font-size: var(--txt-xs-xs);
  color: #8E8E8E;
  transition: all 0.3s ease;
}
.module_10 .product_box .subtitle:hover {
  color: var(--tr-color);
}

/*******************************
 *  MODULE 11 - details table  *
 *******************************/
.module_11 button {
  font-size: var(--txt-xs);
}
.module_11 .title {
  font-size: var(--txt-lg);
  color: white;
}
.module_11 .filtername {
  font-size: var(--txt-sm);
  color: white;
}
.module_11 table {
  font-size: var(--txt-xs);
}
.module_11 table tbody .table_row {
  position: relative;
}
.module_11 table tbody .table_row th, .module_11 table tbody .table_row td {
  padding-bottom: 1.4rem;
}
.module_11 table tbody .table_row::after {
  content: "";
  background: var(--sc-color);
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 6px;
}
.module_11 table tbody .table_row:last-child::after {
  display: none;
}
.module_11 table tbody .table_row:last-child th, .module_11 table tbody .table_row:last-child td {
  padding-bottom: 1rem;
}
.module_11 table tbody tr:nth-child(1) th {
  border-radius: 0.3rem 0 0 0;
}
.module_11 table tbody tr:nth-child(1) td:last-child {
  border-radius: 0 0.3rem 0 0;
}
.module_11 table tbody tr:last-child th {
  border-radius: 0 0 0 0.3rem;
}
.module_11 table tbody tr:last-child td:last-child {
  border-radius: 0 0 0.3rem 0;
}
.module_11 table tbody tr:hover {
  background: var(--tr-color);
  color: white;
}
.module_11 table tbody tr:hover .r_box {
  border-color: white;
}
.module_11 table tbody tr:hover img {
  filter: invert(1);
}
.module_11 table .r_box {
  padding: 0.6rem 1.2rem;
  border: 1px solid currentColor;
  border-radius: 0.3rem;
}

/******************************
 * MODULE 12 - DOWNLOAD FILES *
 ******************************/
.module_12 {
  color: white;
}
.module_12 .title {
  font-size: var(--txt-md);
}
.module_12 .download_cta {
  position: relative;
  width: 100%;
  font-size: var(--txt-sm);
}
.module_12 .download_cta::after {
  content: "\e902";
  position: absolute;
  top: 1.2rem;
  right: 0;
  font-family: "icomoon";
  font-size: 18px;
}
.module_12 .download_cta::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  border-bottom: 1px solid var(--tr-color);
  width: 100%;
}

/************************************************
 * MODULE 13 - DETAILED NUMBERS OF THE REVENUES *
 ************************************************/
.module_13 {
  color: white;
}
.module_13 .title {
  font-size: var(--txt-lg);
}
.module_13 .numbers_box:nth-child(1) {
  border-top: 2px solid var(--tr-color);
}
.module_13 .numbers_box .title {
  font-size: var(--txt-sm);
  line-height: 1.1;
}
.module_13 .numbers_box .number {
  font-size: var(--txt-lg);
  line-height: 1.1;
}
.module_13 .numbers_box .numbers_row {
  padding: 3.5rem 0;
  border-bottom: 2px solid var(--tr-color);
}
.module_13 .m3_num_container_desktop .numbers_box {
  border-top: 2px solid var(--tr-color);
}
.module_13 .m3_num_container_desktop .numbers_box_animation {
  opacity: 0;
  background: var(--sc-color);
}

/********************************
 * MODULE 14 - COMPANY TIMELINE *
 ********************************/
.time_line_slider .timeline_slide_point {
  background: var(--tr-color);
  z-index: 20;
}

.timeline_slide .year {
  font-size: 1.2rem;
  top: 2px;
  transition: all 0.3s ease;
}

.timeline_slide.active_slide .year {
  font-size: 2rem;
  top: -10px;
}

.timeline_slide::after {
  content: "";
  height: 2px;
  width: 100vw;
  background: var(--tr-color);
  position: absolute;
  left: 0;
  bottom: 5px;
  z-index: 10;
}

.timeline_slide.active_slide .timeline_slide_point {
  background: white !important;
}

.timeline_slide.active_slide .timeline_slide_point {
  background: white !important;
}

#event-content {
  background: linear-gradient(360deg, #323232, transparent);
  font-size: var(--txt-md);
}

/**************************
 * MODULE 15 - FOOTER CTA *
 **************************/
.module_15 {
  color: white;
}
.module_15 .title {
  font-size: var(--txt-md);
}
.module_15 .links {
  font-size: var(--txt-sm);
  border-bottom: 1px solid var(--tr-color);
}
.module_15 .links:hover {
  background: linear-gradient(45deg, transparent 5%, rgba(0, 170, 79, 0.5019607843) 40%, transparent 90%);
}
.module_15 .links:nth-child(1) {
  border-top: 1px solid var(--tr-color);
}
.module_15 .links .title.heading {
  font-size: var(--txt-sm);
  line-height: 1.1;
  transition: all 0.3s ease;
}
.module_15 .links .title {
  font-size: var(--txt-md);
  line-height: 1.1;
}
.module_15 .links .newsletter_content {
  max-height: 0rem;
  overflow: hidden;
  transition: all 0.3s ease;
}
.module_15 .links .NewsForm_container {
  width: 100%;
  position: relative;
}
.module_15 .links .NewsForm_container .NewsLetter_Input {
  width: 100%;
  height: 3.3rem;
  border-radius: 0.3rem;
  color: black;
}
.module_15 .links .NewsForm_container .subscribe_btn {
  position: absolute;
  background: black;
  right: 0.35rem;
  top: 0.35rem;
  height: 2.6rem;
  padding: 0px 25px;
  font-size: var(--txt-xs-xs);
  border-radius: 0.2rem;
  border: 1px solid black;
  transition: all 0.3s ease;
}
.module_15 .links .NewsForm_container .subscribe_btn:hover {
  background: white;
  color: black;
}
.module_15 .links.active .newsletter_content {
  max-height: 50rem;
}
.module_15 .links.active:hover {
  background: transparent;
}
.module_15 .links.active .title.heading {
  font-size: var(--txt-xsxs);
  margin-bottom: 1.2rem;
  cursor: auto;
}
.module_15 .links.active label {
  font-size: var(--txt-xs);
  margin-bottom: 0.5rem;
  display: block;
}

/*****************************
 * MODULE 16 - TEXT AND TABS *
 *****************************/
.module_16 {
  color: white;
  line-height: 1.2;
}
.module_16 .title {
  font-size: var(--txt-lg);
}
.module_16 .parag {
  font-size: var(--txt-sm);
}
.module_16 button {
  font-size: var(--txt-sm);
}
.module_16 .tab_content .title {
  font-size: var(--txt-md);
}
.module_16 .tab_content .parag {
  font-size: var(--txt-xs);
}

/***************************************
 * MODULE 17 - SLIDER FO CERTIFICATION *
 ***************************************/
.module_17 {
  color: white;
}
.module_17 .title {
  font-size: var(--txt-lg);
}
.module_17 .module_17_swiper {
  cursor: grab;
}
.module_17 .module_17_swiper::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 50px;
  background: linear-gradient(-90deg, #262626, transparent);
  z-index: 4;
}
.module_17 .module_17_swiper::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 50px;
  background: linear-gradient(90deg, #262626, transparent);
  z-index: 4;
}

/********************************************************
 * MODULE PRODUCT LISTING - PRODUCT LISTING AND FILTERS *
 ********************************************************/
.module_products_listing .heading .title {
  font-size: var(--txt-lg);
  color: white;
}
.module_products_listing .filter_col .filter_sidebar {
  background: white;
  padding: 2rem;
  border-radius: 0.2rem;
}
.module_products_listing .filter_col .filter_sidebar .title {
  font-size: var(--txt-xs);
}
.module_products_listing .filter_col .filter_sidebar button {
  font-size: var(--txt-xs-xs);
}
.module_products_listing .prods_col {
  color: var(--pr-color);
}
.module_products_listing .prods_col .heading_search .search_col {
  position: relative;
}
.module_products_listing .prods_col .heading_search .search_col .search_icon {
  position: absolute;
  width: 1.8rem;
  height: 1.8rem;
  top: 0.4rem;
  left: 0.8rem;
}
.module_products_listing .prods_col .heading_search .search_input {
  background: transparent;
  border: none;
  border-bottom: 2px solid white;
  width: 100%;
  max-width: 25rem;
  padding-left: 3.5rem;
}
.module_products_listing .prods_col .heading_search .search_input:focus {
  --tw-ring-color: transparent !important;
}
.module_products_listing .prods_col .heading_search .search_input::placeholder {
  color: #959595;
  font-size: var(--txt-xs);
}
.module_products_listing .prods_col .heading_search .order_by_col label, .module_products_listing .prods_col .heading_search .order_by_col select {
  color: white;
  font-size: var(--txt-xs);
}
.module_products_listing .prods_col .prod_bx .img_box img {
  transition: all 0.3s ease;
}
.module_products_listing .prods_col .prod_bx .img_box:hover img {
  transform: scale(1.1);
}
.module_products_listing .prods_col .prod_bx .title {
  font-size: var(--txt-xs);
  color: var(--pr-color);
}
.module_products_listing .prods_col .prod_bx .catg {
  font-size: var(--txt-xsxs);
  color: #A6A6A6;
}
.module_products_listing .prods_col .prod_bx .catg:hover {
  color: var(--tr-color);
}

/******************
 * PRODUCTS POPUP *
 ******************/
.module_popup_products {
  color: black;
}
.module_popup_products .heading_part .title {
  font-size: var(--txt-lg);
}
.module_popup_products .heading_part .collections .title {
  font-size: var(--txt-xs);
}
.module_popup_products .heading_part .collections .coll_links .cat_link {
  font-size: var(--txt-xs);
  padding: 0.5rem 1rem;
  border-radius: 0.2rem;
  border: 1px solid black;
}
.module_popup_products .heading_part .collections .coll_links .cat_link:hover {
  background: black;
  color: white;
}
.module_popup_products .heading_part .general_links a {
  position: relative;
  font-size: var(--txt-sm);
  padding: 0.6rem 0;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid var(--tr-color);
}
.module_popup_products .heading_part .general_links a::after {
  content: "\e902";
  position: absolute;
  top: 1.2rem;
  right: 0;
  font-family: "icomoon";
  font-size: 18px;
}
.module_popup_products .heading_part .r_classes .title {
  font-size: var(--txt-sm);
}
.module_popup_products .heading_part .r_classes .r_icons .r_type {
  font-size: var(--txt-xs);
  padding: 0.5rem 1rem;
  margin-right: 0.5rem;
  border-radius: 0.2rem;
  border: 1px solid black;
}
.module_popup_products .heading_part .tech_and_ston .title {
  font-size: var(--txt-sm);
}
.module_popup_products .heading_part .certificates .title {
  font-size: var(--txt-sm);
}
.module_popup_products .mosaic_sugg .title {
  font-size: var(--txt-md);
}
.module_popup_products .mosaic_sugg .mos_box .title {
  font-size: var(--txt-xsxs);
}
.module_popup_products .mosaic_sugg .mos_box a img {
  transition: all 0.3s ease;
}
.module_popup_products .mosaic_sugg .mos_box a img:hover {
  transform: scale(1.1);
}
.module_popup_products .p_speciale .title {
  font-size: var(--txt-md);
}
.module_popup_products .p_speciale .mos_box .title {
  font-size: var(--txt-xsxs);
}
.module_popup_products .p_speciale .mos_box a img {
  transition: all 0.3s ease;
}
.module_popup_products .p_speciale .mos_box a img:hover {
  transform: scale(1.1);
}
.module_popup_products .prod_compositions .title {
  font-size: var(--txt-md);
}
.module_popup_products .prod_compositions .single-composition .title {
  font-size: var(--txt-xsxs);
  font-weight: 600;
}

/*****************
 * AMBIENT POPUP *
 *****************/
.popup_space_products > div {
  overflow: auto;
  min-height: 18rem;
}
.popup_space_products a {
  outline: none;
  transition: all 0.3s ease;
}
.popup_space_products a:hover {
  opacity: 0.8;
}

/*********
 * PAGES *
 *********/
/********************
 * COLLECTIONS PAGE *
 ********************/
#components-collection h2 {
  padding-top: 2.5rem;
}

#collection_navs {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.4s ease, transform 0.4s ease;
  pointer-events: none; /* Prevent interaction when hidden */
}

#collection_navs.visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

#collection_navs a {
  position: relative;
}

#collection_navs a::after {
  content: "";
  position: absolute;
  border-bottom: 2px solid var(--tr-color);
  bottom: -3px;
  right: 0;
  width: 0%;
  background: linear-gradient(0deg, #00aa4f -40%, transparent 60%);
  transition: all 0.4s ease;
}

#collection_navs a.active::after {
  width: 65%;
}

.collection_navs_mobile a {
  padding: 1rem 0px;
  border-bottom: 1px solid black;
  font-weight: 300;
}

.collection_navs_mobile a:last-child {
  border-bottom: none;
  padding-bottom: 1.8rem;
}

.collection_navs_mobile.open {
  bottom: 10px;
}

.collection_navs_mobile.open .open_close_coll_navs svg {
  transform: rotate(180deg);
}

/**************************
 * SINGLE COLLECTION PAGE *
 **************************/
#spessor_container {
  transition: opacity 0.3s ease;
}

.cleartablefilter {
  visibility: hidden;
  position: absolute;
  top: -8px;
  right: -8px;
  background: #333;
  color: white;
  font-size: 12px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  line-height: 16px;
  text-align: center;
  pointer-events: none;
  transition: background 0.3s ease;
}

.table_filters-button-group {
  padding-top: 0.5rem;
}

.table_filters-button-group .btn_filter.active {
  position: relative;
}

.table_filters-button-group .btn_filter.active .cleartablefilter {
  visibility: visible;
}

.table_filters-button-group .btn_filter.active:hover .cleartablefilter {
  background: red;
}

#clearTableFilters {
  color: white;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.1rem;
}

#clearTableFilters:hover {
  text-decoration: underline;
}

/*******************
 * SEARCH TEMPLATE *
 *******************/
.filter_sidebar .filters::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 30px;
  width: 80%;
  background: linear-gradient(360deg, #ffffff 50%, transparent);
}
.filter_sidebar .filters::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 40px;
  width: 80%;
  background: linear-gradient(180deg, #ffffff 50%, transparent);
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
#loader {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding-top: 10rem;
}

#loader div {
  width: 50px;
  height: 50px;
  border: 5px solid #f3f3f3; /* Light gray */
  border-top: 5px solid #00aa4f; /* Green */
  border-radius: 50%;
  animation: spin 1s linear infinite;
  margin: 20px auto; /* Optional: center it */
}

#filter_sidebar_search.active {
  display: flex;
  position: fixed;
  background: rgba(0, 0, 0, 0.8588235294);
  top: 40px;
  left: 0;
  padding: 8rem 15px;
  width: 100%;
  height: 100vh;
  z-index: 4380;
  align-items: flex-start;
  justify-content: center;
  overflow: auto;
}

#filter_sidebar_search.active .close-btn {
  position: absolute;
  top: 105px;
  right: 15px;
  background: white;
  color: black;
  width: 3rem;
  height: 3rem;
  z-index: 9999;
  border-radius: 0.2rem;
  font-size: 1.2rem;
  font-weight: 500;
}

/************
 * 404 PAGE *
 ************/
.container404 {
  height: 70vh;
  width: 100%;
  background: white;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

/*************
 * NEWS PAGE *
 *************/
.main_news_content {
  color: white;
  line-height: 1.4;
}
.main_news_content .big-title {
  font-size: var(--txt-lg);
  font-weight: 600;
}
.main_news_content .title {
  font-size: var(--txt-md);
  font-weight: 400;
}
.main_news_content .parag {
  font-size: var(--txt-sm);
}
.main_news_content .parag li {
  list-style: circle;
  margin-left: 45px;
}

/********************
 * SINGLE NEWS PAGE *
 ********************/
.singlenews_header img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

/****************
 * NEWS ARCHIVE *
 ****************/
.news_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*****************
 * RESPOPNSIVITY *
 *****************/
/**********************************************************************************
 * ----------------------------- RESPONSIVITY WIDTH ----------------------------- *
 **********************************************************************************/
@media screen and (max-width: 1440px) {
  :root {
    /* SIZES - FOR TABLET */
    --txt-xl: 3.75rem; /* 60px */
    --txt-lg: 3.375rem; /* 54px */
    --txt-md: 2.5rem; /* 40px */
    --txt-sm: 1.5rem; /* 24px */
    --txt-sm-xs: 1.25rem; /* 20px */
    --txt-xs: 1.25rem; /* 20px */
    --txt-xs-xs: 1.125rem; /* 18px */
    --txt-xsxs: 1rem; /* 16px */
  }
}
@media screen and (max-width: 1290px) {
  .section-padding {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}
@media screen and (max-width: 1086px) {
  :root {
    /* SIZES - FOR MOBILE */
    --txt-xl: 3.125rem; /* 50px */
    --txt-lg: 2.5rem; /* 40px */
    --txt-md: 1.875rem; /* 30px */
    --txt-sm: 1.125rem; /* 18px */
    --txt-sm-xs: 1.125rem; /* 18px */
    --txt-xs: 1.125rem; /* 18px */
    --txt-xs-xs: 1rem; /* 16px */
    --txt-xsxs: 1rem; /* 16px */
  }
}
@media screen and (max-width: 767px) {
  /************
  * MODULE 2 *
  ************/
  .module_2 .swiper-slide {
    transform: scale(0.95) !important;
  }
}
/**********************************************************************************
 * ----------------------------- RESPONSIVITY HEIGHT ---------------------------- *
 **********************************************************************************/
