/* <--------------------------------------------------------- FONTS ---------------------------------------------------------> */

/* Primary font */

@font-face {
  font-family: Inter;
  src: url(../fonts/Inter/Inter-Black.ttf);
  font-weight: 900;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url(../fonts/Inter/Inter-ExtraBold.ttf);
  font-weight: 800;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url(../fonts/Inter/Inter-Bold.ttf);
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url(../fonts/Inter/Inter-SemiBold.ttf);
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url(../fonts/Inter/Inter-Medium.ttf);
  font-weight: 500;
}

@font-face {
  font-family: Inter;
  src: url(../fonts/Inter/Inter-Regular.ttf);
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url(../fonts/Inter/Inter-Light.ttf);
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url(../fonts/Inter/Inter-ExtraLight.ttf);
  font-weight: 200;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url(../fonts/Inter/Inter-Thin.ttf);
  font-weight: 100;
  font-display: swap;
}

/* Secondary font */

@font-face {
  font-family: CormorantGaramond;
  src: url(../fonts/CormorantGaramond/CormorantGaramond-Bold.ttf);
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: CormorantGaramond;
  src: url(../fonts/CormorantGaramond/CormorantGaramond-SemiBold.ttf);
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: CormorantGaramond;
  src: url(../fonts/CormorantGaramond/CormorantGaramond-Medium.ttf);
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: CormorantGaramond;
  src: url(../fonts/CormorantGaramond/CormorantGaramond-Regular.ttf);
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: CormorantGaramond;
  src: url(../fonts/CormorantGaramond/CormorantGaramond-Light.ttf);
  font-weight: 300;
  font-display: swap;
}

/* <--------------------------------------------------------- ROOT ---------------------------------------------------------> */

:root {
  /* Colors */

  --primary-color: #bd9660;
  --secondary-color: #001d00;
  --white-secondary: #ededed;
  --black-secondary: #0a0a0a;
  --hover-btn: #ede9e3;
  --gray: #6e6e6e;
  --red: #fa0000;
  --c-orange: #f39700;
  --yellow: #f9bf3b;
  --green: #5b721d;
  --body-bg: #efefef;
  /* --p-color: #646464; */
  --p-color: #2a2a2a;
  --p-color-w: #ede9e3;
  --h-color: #0a0a0a;
  --h-color-w: #efefef;
  --a-color: #000000;
  --black: #000000;
  --black-70: rgb(0, 0, 0, 70%);
  --black-60: #666666;
  --black-30: rgb(0, 0, 0, 30%);
  --black-20: rgb(0, 0, 0, 20%);
  --white: #ffffff;
  --white-70: rgb(255, 255, 255, 70%);
  --white-40: rgb(255, 255, 255, 40%);
  --white-20: rgb(255, 255, 255, 20%);
  --white-10: rgb(255, 255, 255, 10%);
  --bs-form-invalid-color: #f38181;

  /* Transition */

  --transition-slow: all 0.5s linear;
  --transition-medium: all 0.35s linear;
  --transition-fast: all 0.25s linear;
  --transition-superfast: all 0.15s linear;
  --transition: 0.6s cubic-bezier(0.25, 1, 0.5, 1);

  /* Dynamic height */

  --dynamic-height: calc(var(--vh, 1vh) * 100);
  --header-height: --header-height;
  --buttone-height: --buttone-height;

  /* Radius */
  --rad-sm: 0.313em;
  --rad-md: 0.5rem;
  --rad-lg: 1em;
  --rad-xl: 2em;
  --rad-xxl: 3em;
  --rad-btn: 0.25em;
  --rad-full: 999rem;

  /* Titles */
  --title-xxl: clamp(4rem, 7vw, 10rem);
  --title-xl: 4rem;
  --title-lg: 3rem;
  --title-md: 2.5rem;
  --title-sm: 1.5rem;
  --title-xs: 1.3rem;

  --font-xs: 0.675rem;
  --font-sm: 1.7rem;

  --fs-3: 2.25rem;
  --fs-5: 1.105rem;
  --fs-5e: 1.105em;

  --h3: 2rem;

  /* Font size */
  --text-xs: 0.875rem;
  --text-regular: 1.125rem;
  --text-ssm: 1.275rem;
  --text-sm: 1rem;
  --text-md: 1.5rem;
  --text-lg: 2rem;
  --text-xl: 2.5rem;
  --text-xxl: 3rem;
  --section-title: 3rem;

  /* Font weight */
  --font-thin: 100;
  --font-extralight: 200;
  --font-light: 300;
  --font-regular: 400;
  --font-medium: 500;
  --font-semibold: 600;
  --font-bold: 700;
  --font-extrabold: 800;
  --font-black: 900;

  /* Gap */

  --container-padding: var(--col-gap);
  --row-gap: max(1.75em, 1.75vw);
  --col-gap: 5rem;
  --col-gap-50: calc(var(--col-gap) * 0.5);
}

/* <--------------------------------------------------------- TYPOGRAPHY ---------------------------------------------------------> */

/* Heading */
a,
p,
li,
ul,
ol,
span,
strong,
em,
figcaption,
s {
  font-style: normal;
  letter-spacing: normal;
  font-family: "Inter";
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 0;
  font-weight: 500;
  line-height: normal;
  font-style: normal;
  letter-spacing: normal;
  font-family: "CormorantGaramond";
}
h1 {
  font-size: var(--title-xl);
  /* line-height: 0.9em; */
}
h2 {
  font-size: var(--title-lg);
  font-weight: 500;
}
h3 {
  font-size: var(--h3);
}
h4 {
  font-size: var(--title-sm);
}
h5 {
  font-size: var(--title-xs);
}

/* Paragraph */
p {
  margin-bottom: 1rem;
  color: var(--p-color);
  font-weight: 300;
}
p:last-of-type {
  margin-bottom: 0 !important;
}

/* Anchor */
a {
  text-decoration: none;
  color: #000;
  transition: var(--transition);
}
.module-text a:not(.btn),
.module-text2 a:not(.btn) {
  color: var(--primary-orange);
  text-decoration: underline;
}
a:hover {
  color: var(--primary-orange);
}

/* List */
li::marker {
  color: var(--primary-color);
}

/* Strong */
strong {
  font-weight: 500;
  line-height: 1.1em;
}

em {
  font-style: italic;
}

/* ----------- Customs ------------ */

/* Custom Classes */
.my-5 {
  margin-top: 5rem !important;
  margin-bottom: 5rem !important;
}
.mt-5 {
  margin-top: 5rem !important;
}
.mb-5 {
  margin-bottom: 5rem !important;
}
.mt-4 {
  margin-top: 2rem !important;
}
.mb-4 {
  margin-bottom: 2rem !important;
}

.py-5 {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}
.pt-6 {
  padding-top: 5rem;
}
.pb-6 {
  padding-bottom: 5rem;
}

.fs-0 {
  font-size: 0;
}
.fs-3 {
  font-size: var(--fs-3) !important;
}
.fs-5 {
  font-size: var(--fs-5) !important;
}
.fs-5e {
  font-size: var(--fs-5e) !important;
}

.text,
.text > * {
  font-family: "Inter";
}

.text.center,
.text.center > * {
  text-align: center;
}

.title.center,
.title.center > * {
  text-align: center;
}

.text.xs,
.text.xs > * {
  font-size: var(--text-xs);
}
.text-regular,
.text-regular > * {
  font-size: var(--text-regular);
}
.text.sm,
.text.sm > * {
  font-size: var(--text-sm);
}
.text.ssm,
.text.ssm > * {
  font-size: var(--text-ssm);
}

.text-ssm,
.text-ssm > * {
  font-size: var(--text-ssm);
}
.text.md,
.text.md > * {
  font-size: var(--text-md);
}
.text.lg,
.text.lg > * {
  font-size: var(--text-lg);
}
.text.xl,
.text.xl > * {
  font-size: var(--text-xl);
}
.text.xxl,
.text.xxl > * {
  font-size: var(--text-xxl);
}
.text-title,
.text-title > * {
  font-size: var(--text-title);
}

.text.black,
.text.black > * {
  font-weight: var(--font-black);
}

.text.bold,
.text.bold > * {
  font-weight: var(--font-bold);
}

.text.semibold,
.text.semibold > * {
  font-weight: var(--font-semibold);
}

.text.medium,
.text.medium > * {
  font-weight: var(--font-medium);
}

.text.regular,
.text.regular > * {
  font-weight: var(--font-regular);
}

.text.light,
.text.light > * {
  font-weight: var(--font-light);
}

.text.extralight,
.text.extralight > * {
  font-weight: var(--font-extralight);
}

.text.thin,
.text.thin > * {
  font-weight: var(--font-thin);
}

.text-black,
.text-black > * {
  color: var(--black);
}

.text.primary,
.text.primary > * {
  color: var(--primary-color);
}

/* .bold,
.bold > * {
  font-weight: 500 !important;
} */
.semi-bold,
.semi-bold > * {
  font-weight: 400 !important;
}

.rad-sm {
  border-radius: var(--rad-sm);
  overflow: hidden;
}
.rad-md {
  border-radius: var(--rad-md);
  overflow: hidden;
}
.rad-lg {
  border-radius: var(--rad-lg);
  overflow: hidden;
}
.rad-xl {
  border-radius: var(--rad-xl);
  overflow: hidden;
}
.shadow {
  box-shadow: var(--shadow);
}
.balance {
  text-wrap: balance;
}
.uppercase,
.uppercase > * {
  text-transform: uppercase;
}

.title.white,
.title.white > * {
  color: var(--h-color-w);
}

.text.white,
.text.white > * {
  color: var(--p-color-w);
}

.title .center,
.title .center > * {
  text-align: center;
}

.text .center,
.text .center > * {
  text-align: center;
}

.title-black > * {
  color: var(--black);
}

.title,
.title > * {
  font-family: "CormorantGaramond";
}

.title {
  margin-bottom: 1rem;
}

.title.mb-0 > * {
  margin-bottom: 0;
}

.title.xxl,
.title.xxl > * {
  font-size: var(--title-xxl);
}
.title.xl,
.title.xl > * {
  font-size: var(--title-xl);
}
.title.lg,
.title.lg > * {
  font-size: var(--title-lg);
}
.title.md,
.title.md > * {
  font-size: var(--title-md);
}
.title.sm,
.title.sm > * {
  font-size: var(--title-sm);
}
.title.xs,
.title.xs > * {
  font-size: var(--title-xs);
}

.title.black,
.title.black > * {
  font-weight: var(--font-black);
}

.title.bold,
.title.bold > * {
  font-weight: var(--font-bold);
}

.title.semibold,
.title.semibold > * {
  font-weight: var(--font-semibold);
}

.title.medium,
.title.medium > * {
  font-weight: var(--font-medium);
}

.title.regular,
.title.regular > * {
  font-weight: var(--font-regular);
}

.title.light,
.title.light > * {
  font-weight: var(--font-light);
}

.title.extralight,
.title.extralight > * {
  font-weight: var(--font-extralight);
}

.title.thin,
.title.thin > * {
  font-weight: var(--font-thin);
}

.headline {
  margin-bottom: 1rem;
}
.headline > * {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  font-weight: 400;
}
.headline strong {
  font-weight: 300;
  color: var(--primary-color);
}

.fs-sm > * {
  font-size: var(--font-sm);
  line-height: 1.35em;
}
.fs-xs {
  font-size: var(--font-xs);
}

.fw-1,
.fw-1 > * {
  font-weight: 100;
}
.fw-2,
.fw-2 > * {
  font-weight: 200;
}
.fw-3,
.fw-3 > * {
  font-weight: 300;
}
.fw-4,
.fw-4 > * {
  font-weight: 400;
}
.fw-5,
.fw-5 > * {
  font-weight: 500;
}

.accent strong {
  color: var(--primary-color);
}
.accent.orange strong {
  color: var(--primary-orange);
}

figure {
  margin-bottom: 0;
}

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

/* Input */

.form-control {
  font-family: "Inter";
  font-weight: 400;
  font-size: 0.875rem;
  border-color: transparent;
}

.form-control:focus {
  border-color: var(--primary-color);
  outline: 0;
  box-shadow: none;
}

.help-block {
  font-size: 0.75rem;
  font-family: "Inter";
  font-weight: 400;
  color: var(--red);
  margin-top: 0.313rem;
}

.help-block a {
  font-size: 12px;
  font-family: "Inter";
  font-weight: 400;
  color: var(--red);
  text-decoration: underline;
}

.was-validated .form-control:valid:focus,
.form-control.is-valid:focus {
  box-shadow: none;
}

.was-validated .form-control:invalid:focus,
.form-control.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: none;
}

/* <--------------------------------------------------------- GENERALS ---------------------------------------------------------> */

/* Classes */

.mb-title-gap {
  margin-bottom: 3.125rem;
}

.ssp-top {
  padding-top: 3.125rem;
}

.ss {
  margin-bottom: 6.25rem;
}

.ss-top {
  margin-top: 6.25rem;
}

.ssp-top {
  padding-top: 6.25rem;
}

.ssp-bottom {
  padding-bottom: 6.25rem;
}

.ssp-y {
  padding-top: 6.25rem;
  padding-bottom: 6.25rem;
}

.bg-sec {
  background: var(--white-secondary);
}

.fs-0 {
  font-size: 0;
}

/* Containers */

body {
  background: var(--body-bg);
  overflow-x: hidden;
}
body.menu-open {
  overflow: hidden;
}

main {
  margin-top: var(--header-height);
}

.homepage main {
  margin-top: 0;
  overflow-x: hidden;
}

.container-fluid {
  margin: 0 auto;
  padding-left: 0;
  padding-right: 0;
}
.container-fluid .row {
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
}
.container {
  margin: 0 auto;
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
  max-width: 1920px;
}

/* <--------------------------------------------------------- COOKIE ---------------------------------------------------------> */

#cookie-banner {
  position: fixed;
  width: 100%;
  background: #fff;
  border: 1px solid #ccc;
  z-index: 9999;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  opacity: 1;
  transition: opacity 0.5sease, transform 0.5sease;
  max-width: 800px;
  right: 1rem;
  left: 1rem;
  width: calc(100% - 2rem);
  top: 0;
  bottom: 0;
  height: fit-content;
  margin: auto;
  display: none;
}
#cookie-banner .cookie-logo-container {
  text-align: center;
  display: flex;
  justify-content: flex-start;
  padding: 1rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

#cookie-banner .cookie-logo-container img {
  max-width: 7rem;
  height: auto;
}

#cookie-banner .cookie-tabs {
  display: flex;
  justify-content: center;
  gap: 10px;
  /* padding: 1rem 0; */
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

#cookie-banner .tab-button {
  background-color: transparent;
  border: none;
  padding: 1rem 0.5rem;
  cursor: pointer;
  transition: background-color 0.3s;
  width: 100%;
  font-weight: 600;
  font-size: 0.875rem;
  border-radius: 0;
  color: var(--black);
}

#cookie-banner .tab-button.active {
  border-bottom: 3px solid var(--black);
  /* color: var(--primary-color); */
}

#cookie-banner .tab-content {
  display: none;
  padding: 1rem;
}

#cookie-banner .tab-content > * {
  font-weight: 500;
  font-size: 0.875rem;
}

#cookie-banner .tab-content a {
  font-weight: 500;
  font-size: 0.875rem;
  text-decoration: underline;
}

#cookie-banner .tab-content.active {
  display: block;
}

#cookie-banner .cookie-buttons .btn {
  padding: 0.875rem;
  width: 100%;
  justify-content: center;
  border-radius: var(--border-radius-sm);
}

#cookie-banner.hidden {
  opacity: 0;
  transform: translate(-50%, -60%);
  pointer-events: none;
}

#cookie-banner .cookie-buttons {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  padding: 1rem;
  gap: 1rem;
}

#cookie-banner .cookie-buttons .btn {
  font-weight: 600;
  font-size: 0.938rem;
  transition: var(--transition-fast);
}

#cookie-banner .cookie-buttons .btn:hover {
  color: #000;
  opacity: 0.8;
  transition: var(--transition-fast);
}

#cookie-banner .cookie-buttons .btn-primary {
  background: var(--primary-color);
}

#cookie-banner .cookie-buttons .btn-secondary {
  background: transparent;
  color: var(--black);
  border: 2px solid var(--primary-color);
}

#cookie-reset {
  position: fixed;
  bottom: 10px;
  left: 10px;
  z-index: 9999;
  background: var(--primary-color);
  color: #fff;
  border: none;
  padding: 0.625rem;
  border-radius: 50%;
  cursor: pointer;
  width: 3rem;
  height: 3rem;
}

#cookie-reset svg {
  width: 100%;
  height: 100%;
}

#cookie-reset svg path {
  stroke: var(--white);
}

/* Header */

header .header-top-part .navbar {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  padding: 1.5rem 0;
  border: 1px solid rgba(0, 0, 0, 0);
  transition: var(--transition-fast);
}

header.fixed .header-top-part .navbar {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  padding: 1rem;
  margin: 1rem 0;
  border-radius: var(--rad-md);
  transition: var(--transition-fast);
}

.menu-open header .header-top-part .navbar {
  background: transparent;
  transition: var(--transition-fast);
  backdrop-filter: blur(0px);
  -webkit-backdrop-filter: blur(0px);
}
.menu-open header.fixed .header-top-part .navbar {
  padding: 1rem 0;
}
.menu-open header:not(.fixed) .header-top-part .navbar {
  padding: 1.5rem 0;
}

header .header-bottom-part .navbar {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 3rem;
  overflow: auto;
  height: 100%;
  padding: 0;
}

.nav-link {
  transition: var(--transition);
}

header .header-bottom-part .navbar::-webkit-scrollbar {
  width: 3px;
  background: #ffffff0f;
}

header .header-bottom-part .navbar::-webkit-scrollbar-thumb {
  background-color: #fff;
  border-radius: 0px;
  border-radius: 99rem;
}

header .navbar .navbar-collapse .navbar-nav .nav-link {
  margin: 0;
}

header .navbar-menu .navbar-nav {
  gap: 0;
  width: 100%;
  align-items: flex-start;
}

header .navbar-nav .nav-item.dropdown .dropdown-menu {
  display: flex;
  background: transparent;
  border: none;
}

header .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-menu-col ul {
  list-style: none;
  padding-left: 1rem;
}

header .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-menu-col .dropdown-item {
  font-family: "CormorantGaramond";
  font-weight: 600;
  color: var(--white);
  font-size: 1.5rem;
  text-transform: uppercase;
}

header .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-menu-col .dropdown-item:hover {
  background-color: transparent;
}

header .navbar-nav .nav-item.dropdown.showing-dropdown .dropdown-menu {
  animation: slideRight 0.8s cubic-bezier(0.76, 0, 0.3, 1) forwards;
}

header .navbar-nav > .nav-item.dropdown {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-direction: column;
}

header .navbar-nav > .nav-item .nav-link-dropdown {
  height: 100%;
  aspect-ratio: 4/4;
  display: flex;
  align-items: center;
  justify-content: center;
  border-left: 1px solid rgba(0, 0, 0, 0.2);
}

header .header-bottom-part .navbar .navbar-collapse {
  position: fixed;
  top: var(--header-height);
  background: white;
  width: 100%;
  height: 100%;
  left: 0;
  padding-left: 1rem;
  padding-right: 1rem;
}

header .header-bottom-part .navbar-nav .nav-item .nav-link {
  margin: 0;
  font-size: 2.5rem;
  font-family: "CormorantGaramond";
  width: 100%;
  font-weight: 500;
  color: var(--white);
  padding: 0;
  text-transform: uppercase;
}

header .header-bottom-part .navbar-nav .nav-item .nav-link-dropdown svg {
  width: 100%;
  height: 100%;
  max-width: 1rem;
  max-height: 1rem;
}

header .header-bottom-part .navbar-nav .nav-item .nav-link-dropdown svg path {
  stroke-width: 2.5px;
}

@keyframes slideRight {
  0% {
    transform: translateX(-100%);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slideRightClose {
  0% {
    transform: translateX(0%);
    opacity: 1;
  }
  100% {
    transform: translateX(-100%);
    opacity: 0;
  }
}

@keyframes slideLeft {
  0% {
    transform: translateX(100%);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slideLeftClose {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% {
    transform: translateX(100%);
    opacity: 0;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  100% {
    opacity: 1;
    visibility: visible;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

header .header-top-part {
  position: relative;
  z-index: 1;
}

header .header-bottom-part {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: var(--secondary-color);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  /* transform: translateX(-100%); */
  visibility: hidden;
  box-shadow: none;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}

header .header-bottom-part .navbar-left {
  transform: translateX(-100%);
  padding-top: calc(var(--header-height) + 2rem);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  padding-bottom: 2rem;
  height: 100%;
  overflow: hidden;
}
header .header-bottom-part .navbar-right {
  transform: translateX(100%);
}

header.menu-open .header-bottom-part .navbar-left {
  animation: slideRight 0.6s cubic-bezier(0.76, 0, 0.3, 1) forwards;
  /* animation-delay: 0.3s; */
}

header.menu-close .header-bottom-part .navbar-left {
  animation: slideRightClose 0.8s cubic-bezier(0.76, 0, 0.3, 1) forwards;
}

header.menu-open .header-bottom-part .navbar-right {
  animation: slideLeft 0.6s cubic-bezier(0.76, 0, 0.3, 1) forwards;
  /* animation-delay: 0.4s; */
}

header .header-bottom-part .navbar-right .navbar-image {
  position: relative;
}

header .header-bottom-part .navbar-right .navbar-image::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  background: rgb(0, 0, 0, 40%);
}

header .header-bottom-part .navbar-right {
  position: relative;
  padding-left: 7.5rem;
}

header .header-bottom-part .navbar-right .close-menu-btn {
  position: absolute;
  width: 100%;
  height: 100%;
  max-width: 15rem;
  max-height: 15rem;
  border: 1px solid var(--primary-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  background: transparent;
  transition: var(--transition-medium);
  padding: 0;
}

header .header-bottom-part .navbar-right .close-menu-btn .line-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  transition: var(--transition-medium);
}

header .header-bottom-part .navbar-right .close-menu-btn .line-wrapper .circle {
  position: absolute;
  width: 0%;
  height: 0%;
  inset: 0;
  margin: auto;
  border-radius: 50%;
  background: var(--white);
  transition: var(--transition-medium);
  opacity: 0;
}

header .header-bottom-part .navbar-right .close-menu-btn:hover .line-wrapper .circle {
  width: 100%;
  height: 100%;
  transition: var(--transition-medium);
  opacity: 1;
}

header .header-bottom-part .navbar-right .close-menu-btn .line {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: flex;
  border: 1px solid var(--primary-color);
  border-radius: 50%;
  opacity: 0; /* Liniile vor fi invizibile inițial */
  transition: var(--transition-medium);
}

header .header-bottom-part .navbar-right .close-menu-btn:hover .line-1 {
  width: calc(100% + 20px);
  height: calc(100% + 20px);
  top: -10px;
  left: -10px;
  opacity: 1;
  transition: var(--transition-medium);
}

header .header-bottom-part .navbar-right .close-menu-btn:hover .line-2 {
  width: calc(100% + 40px);
  height: calc(100% + 40px);
  top: -20px;
  left: -20px;
  opacity: 0.6;
  transition: var(--transition-medium);
}

header .header-bottom-part .navbar-right .close-menu-btn:hover .line-3 {
  width: calc(100% + 60px);
  height: calc(100% + 60px);
  top: -30px;
  left: -30px;
  opacity: 0.4;
  transition: var(--transition-medium);
}

header .header-bottom-part .navbar-right .close-menu-btn svg {
  width: 1.875rem;
  height: 1.875rem;
  z-index: 1;
}

header .header-bottom-part .navbar-right .navbar-image img {
  height: 100vh;
  width: 100%;
  object-fit: cover;
}

header .header-bottom-part .navbar-right .close-menu-btn svg path {
  stroke: var(--white);
  transition: var(--transition-medium);
}

header .header-bottom-part .navbar-right .close-menu-btn:hover svg path {
  fill: var(--primary-color);
  transition: var(--transition-medium);
}

header.menu-close .header-bottom-part .navbar-right {
  animation: slideLeftClose 0.8s cubic-bezier(0.76, 0, 0.3, 1) forwards;
}

header .header-bottom-part > .container {
  height: 100%;
  /* overflow-y: auto; */
  padding-right: 0;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

header .header-bottom-part > .container::-webkit-scrollbar {
  display: none;
}

header .header-bottom-part > .container > .row {
  height: 100%;
}

header.menu-open .header-bottom-part {
  animation: fadeIn 0.8s cubic-bezier(0.76, 0, 0.3, 1) forwards;
}

header.menu-close .header-bottom-part {
  animation: fadeOut 0.8s cubic-bezier(0.76, 0, 0.3, 1) forwards;
}

header .header-bottom-part .navbar .navbar-menu {
  display: flex;
  width: 100%;
}

header .header-bottom-part .navbar .navbar-menu-contact {
  display: flex;
  width: 100%;
  flex-direction: column;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  /* padding: var(--container-padding); */
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .contact-links {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .contact-links .contact-item > * {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 0.313rem;
  font-size: 1.275rem;
  color: #d6c1a3;
  text-decoration: underline;
  text-underline-offset: 6px;
  text-decoration-thickness: 1px;
  font-weight: 600;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .contact-links .contact-item.email > * {
  font-weight: 300;
  text-transform: uppercase;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .contact-links .contact-item.address > * {
  font-size: 1rem;
  font-weight: 200;
  text-transform: uppercase;
  color: var(--white);
  text-decoration: none;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .contact-links .contact-item .icon {
  font-size: 1rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .contact-links .contact-item .icon svg {
  background: rgba(255, 255, 255, 0.8);
  padding: 0.5rem;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  overflow: visible;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .title > * {
  font-size: 1.25rem;
  font-weight: 500;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .contact-links {
  padding: 0;
  margin: 0;
  list-style: none;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .contact-links .phone-group {
  display: flex;
  gap: 4rem;
}

header .header-bottom-part .navbar .navbar-menu-contact .contact-wrapper .contact-links .contact-item .text {
  font-weight: 400;
  color: var(--gray);
}

header .header-bottom-part .navbar .navbar-menu-contact .social-media-wrapper {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: 0.5rem;
  /* padding: var(--container-padding); */
  border-top: 1px solid rgba(0, 0, 0, 0.2);
}

header .header-bottom-part .navbar .navbar-menu-contact .social-media-wrapper .title p {
  font-size: 1.25rem;
  font-weight: 500;
}

header .header-bottom-part .navbar .navbar-menu-contact .social-media-wrapper .social-media-links {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  gap: 1rem;
}

header .header-bottom-part .navbar .navbar-menu-contact .social-media-wrapper .social-media-links .social-media-item {
  display: flex;
  width: 100%;
}

header .header-bottom-part .navbar .navbar-menu-contact .social-media-wrapper .social-media-links .social-media-item a {
  background: rgba(255, 255, 255, 0.8);
  display: flex;
  width: 100%;
  justify-content: center;
  padding: 0.75rem;
  border-radius: var(--border-radius-sm);
}

header .header-bottom-part .navbar .navbar-menu-contact .social-media-wrapper .social-media-links .social-media-item a svg {
  width: 100%;
  height: 100%;
  max-height: 1.5rem;
  max-width: 2rem;
}

header .header-bottom-part .navbar .navbar-menu-contact .social-media-wrapper .social-media-links .social-media-item a svg path {
  fill: var(--black);
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile {
  flex-direction: column;
  margin: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  gap: 0;
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .nav-item {
  display: grid;
  justify-content: space-between;
  grid-template: auto / 1fr auto;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .close-dropdown-menu {
  background: transparent;
  border: none;
  width: 100%;
  display: grid;
  grid-template: auto / auto 1fr;
  padding: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .close-dropdown-menu .icon {
  display: flex;
  height: 100%;
  aspect-ratio: 4 / 4;
  align-items: center;
  justify-content: center;
  border-right: 1px solid rgba(0, 0, 0, 0.2);
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .close-dropdown-menu .icon svg {
  transform: rotate(180deg);
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .close-dropdown-menu .text {
  padding: var(--container-padding);
  width: 100%;
  display: flex;
  justify-content: end;
  font-size: 1.25rem;
  font-weight: 500;
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .nav-item .dropdown-item {
  padding: var(--container-padding);
  font-size: 1.25rem;
  font-weight: 500;
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .dropdown-menu-items {
  padding: 0;
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .dropdown-menu-items .nav-item .sub-submenu-group {
  padding: 0;
  height: 100%;
  width: 100%;
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
  position: fixed;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transform: translateX(-100%);
  /* transition: 300ms; */
  gap: 0;
  animation: slideLeft 0.8s cubic-bezier(0.76, 0, 0.3, 1) forwards;
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .dropdown-menu-items .nav-item .sub-submenu-group.showing-dropdown {
  transform: translateX(0);
  /* transition: 300ms; */
  animation: slideRight 0.8s cubic-bezier(0.76, 0, 0.3, 1) forwards;
}

.dropdown-menu-row .dropdown-menu-wrapper.mobile .dropdown-menu-items .nav-item .sub-submenu-group::-webkit-scrollbar {
  display: none;
}

/* Navbar toggler */

.navbar-toggler .navbar-toggler-bars .line {
  width: 18px;
  height: 2px;
  background-color: var(--black-secondary);
  display: block;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.menu-open .navbar-toggler .navbar-toggler-bars .line {
  background-color: var(--white);
  transition: all 0.3s ease-in-out;
}

.navbar-toggler .navbar-toggler-bars .line:not(:last-child) {
  margin-bottom: 4px;
}

.navbar-toggler .navbar-toggler-bars.menu-open .line:nth-child(2) {
  opacity: 0;
}

.navbar-toggler .navbar-toggler-bars.menu-open .line:nth-child(1) {
  -webkit-transform: translateY(6px) rotate(45deg);
  -ms-transform: translateY(6px) rotate(45deg);
  -o-transform: translateY(6px) rotate(45deg);
  transform: translateY(6px) rotate(45deg);
}

.navbar-toggler .navbar-toggler-bars.menu-open .line:nth-child(3) {
  -webkit-transform: translateY(-6px) rotate(-45deg);
  -ms-transform: translateY(-6px) rotate(-45deg);
  -o-transform: translateY(-6px) rotate(-45deg);
  transform: translateY(-6px) rotate(-45deg);
}

.navbar-toggler {
  display: flex;
  align-items: center;
  justify-self: flex-start;
  gap: 1rem;
  padding: 0.7rem 1.6rem;
  border-color: var(--primary-color);
  border-radius: 50px;
  transition: var(--transition);
}
.navbar-toggler .navbar-toggler-bars {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 21px;
  height: 21px;
}

.navbar-toggler .navbar-toggle-text {
  text-transform: uppercase;
  color: var(--black-secondary);
  font-size: 0.875rem;
  transition: all 0.3s ease-in-out;
}

.menu-open .navbar-toggler .navbar-toggle-text {
  color: var(--white);
  transition: all 0.3s ease-in-out;
}

.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: none;
}

/* Module social */

.module-social ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.module-contact ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Pagination */
.pagination {
  gap: 0.5rem;
  justify-content: center;
}

.pagination .next svg,
.pagination .prev svg {
  max-height: 10px;
  max-width: 10px;
}

.pagination .next.disabled svg path,
.pagination .prev.disabled svg path {
  stroke: #cccccc;
}

.pagination li.disabled > * {
  color: #cccccc;
}

.pagination li.active > * {
  background: var(--primary-color);
  color: var(--white);
  border-color: var(--primary-color);
}

.pagination li > * {
  width: 2.188rem;
  height: 2.188rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #cccccc;
  border-radius: var(--border-radius-sm);
  font-weight: 400;
  color: var(--black);
  font-size: 0.875rem;
  border-radius: var(--rad-sm);
}
