@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300..700&family=Syne:wght@400..800&display=swap');

:root {
  --monochorme-black: rgba(0, 0, 0, 1);
  --monochormeb-900: rgba(25, 7, 0, 1);
  --monochormeb-800: rgba(61, 54, 52, 1);
  --monochorme-700: rgba(84, 77, 76, 1);
  --monochorme-600: rgba(102, 95, 93, 1);
  --monochorme-500: rgba(152, 143, 141, 1);
  --monochorme-400: rgba(184, 175, 173, 1);
  --monochorme-300: rgba(221, 212, 209, 1);
  --monochorme-200: rgba(238, 228, 226, 1);
  --monochorme-white: rgba(253, 252, 248, 1);

  --warms-orange: 250, 111, 10;
  --warmsdark-orange: rgba(194, 27, 0, 1);
  --warms-papaya: rgba(253, 166, 49, 1);

  --gradient-heading-gradient: linear-gradient(180deg, rgb(152, 143, 141) 0%, rgb(180, 180, 179) 124.66%);
  --gradient-heading-gradient-about: linear-gradient(180deg, #988F8D 0%, #E6E5E2 100%);
  --gradient-body-text-gradient: linear-gradient(88.52deg, rgb(0, 0, 0) -2.04%, rgb(174, 174, 174) 91.87%);
  --gradient-stroke-gradient: linear-gradient(90deg, rgb(250, 111, 10) 0%, rgb(148, 66, 6) 100%);
  --gradient-background-grey: rgba(230, 229, 226, 1);
  --gradient-black-grey: rgba(0, 0, 0, 0.5);
  --gradient-orange-grey: rgba(254, 95, 11, 0.5);
  --gradient-papaya-grey: rgba(247, 191, 97, 0.5);

  --color-white: rgba(255, 255, 255, 1);

  --heading-font-family: "Syne", Helvetica;
  --body-font-family: "Space Grotesk", Helvetica;
  --CTA-font-family: "Syne", Helvetica;
}
[data-theme="dark"] {
  --gradient-heading-gradient: linear-gradient(180deg, rgb(152, 143, 141) 0%, rgb(180, 180, 179) 93.22%) !important;
  --gradient-body-text-gradient: rgb(203, 203, 203) !important;
  --gradient-background-grey: rgba(0, 0, 0, 1) !important;
}

* {
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  padding: 0%;
  margin: 0%;
}

html,
body {
  margin: 0;
  min-height: 100%;
  /* ✅ changed from height: 100% */
  box-sizing: border-box;
  overflow-x: hidden;
  font-family: var(--body-font-family);
}

body {
  position: relative;
  background-color: var(--gradient-background-grey);
  cursor: url('../images/Cursor.svg') 16 16, default;
}

body.fade-out {
  opacity: 0;
  transition: opacity 0.6s ease-in-out;
}

a,
button,
input[type="submit"],
input[type="button"],
label,
[role="button"],
.hamburger-container {
  cursor: url('../images/Hand-Cursor.svg') 16 16, pointer !important;
}

/* a blue color as a generic focus style */
button:focus-visible {
  outline: 2px solid #4a90e2 !important;
  outline: -webkit-focus-ring-color auto 5px !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-family: var(--heading-font-family);
}

p {
  margin: 0;
  font-family: var(--body-font-family);
  font-weight: 400;
}

a {
  text-decoration: none;
  font-family: var(--body-font-family);
  font-weight: 400;
}

.Heading_XXL {
  font-family: var(--heading-font-family);
  font-weight: 800;
  font-size: 118px;
  line-height: 124px;
  letter-spacing: 0;
}

.Heading_XL {
  font-family: var(--heading-font-family);
  font-weight: 800;
  font-size: 63px;
  line-height: 124px;
  letter-spacing: 0;
}

.Heading_L {
  font-family: var(--heading-font-family);
  font-weight: 700;
  font-size: 48px;
  line-height: 56px;
  letter-spacing: 0;
}

.Heading_M {
  font-family: var(--heading-font-family);
  font-weight: 800;
  font-size: 32px;
  line-height: 36px;
  letter-spacing: 0;
}

.Heading_S {
  font-family: var(--heading-font-family);
  font-weight: 800;
  font-size: 28px;
  line-height: 261px;
  letter-spacing: 0;
}

.Heading_S_bold {
  font-family: var(--heading-font-family);
  font-weight: 700;
  font-size: 28px;
  line-height: 32px;
  letter-spacing: 0;
}

.Heading_XS {
  font-family: var(--heading-font-family);
  font-weight: 800;
  font-size: 24px;
  letter-spacing: 0;
}

.Heading_XS_mid {
  font-family: var(--heading-font-family);
  font-weight: 500;
  font-size: 24px;
  letter-spacing: 0;
}

.Heading_XXS {
  font-family: var(--heading-font-family);
  font-weight: 800;
  font-size: 20px;
  line-height: 32px;
  letter-spacing: 0;
}

.Heading_XXS_mid {
  font-family: var(--heading-font-family) !important;
  font-weight: 500 !important;
  font-size: 20px;
  line-height: 24px;
  letter-spacing: 0;
}

.Heading_3XS {
  font-family: var(--heading-font-family);
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0;
}

.Heading_4XS {
  font-family: var(--heading-font-family);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0;
}

.Body_XL {
  font-family: var(--body-font-family);
  font-weight: 400;
  font-size: 24px;
  line-height: 120%;
  letter-spacing: 0;
}

.Body_XL_bold {
  font-family: var(--body-font-family);
  font-weight: 700;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0;
}

.Body_XL_mid {
  font-family: var(--body-font-family);
  font-weight: 500;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0;
}

.Body_L_bold {
  font-family: var(--body-font-family);
  font-weight: 700;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: 0;
}

.Body_L_reg {
  font-family: var(--body-font-family);
  font-weight: 400;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: 0;
}

.Body_M_r {
  font-family: var(--body-font-family) !important;
  font-weight: 400 !important;
  font-size: 18px;
  line-height: 22px;
  letter-spacing: 0;
}

.Body_S_reg {
  font-family: var(--body-font-family);
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: 0;
}

.Body_XS {
  font-family: var(--body-font-family);
  font-weight: 500;
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0;
}

.CTA_XL {
  font-family: var(--CTA-font-family);
  font-weight: 700;
  font-size: 18px;
  line-height: 32px;
  letter-spacing: 0;
}

.CTA_L {
  font-family: var(--CTA-font-family);
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0;
}

.primary-CTA {
  background-color: var(--warmsdark-orange);
  color: var(--monochorme-white);
  min-width: 137px;
  padding: 10px;
  border: 1px solid rgb(var(--warms-orange));
  box-shadow: 0px 0px 11.25px 6.75px rgb(var(--warms-orange)) inset;
  box-shadow: 0px 0px 60px 15px rgba(var(--warms-orange), 0.78);
  box-shadow: 0px 0px 15px 3.75px rgb(var(--warms-orange));
  transition: 0.25s ease all;
  border-radius: 2px;
  cursor: pointer;
  text-align: center;
  display: inline-block;

  font-family: var(--CTA-font-family);
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0;
  text-transform: capitalize;
}

.primary-CTA:hover {
  background-color: rgb(var(--warms-orange));
}

.secondary-CTA {
  background-color: var(--color-white);
  color: rgb(var(--warms-orange));
  min-width: 137px;
  padding: 10px;
  border: 2px solid rgb(var(--warms-orange));
  transition: 0.25s ease all;
  border-radius: 2px;
  cursor: pointer;
  text-align: center;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  font-family: var(--CTA-font-family);
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0;
  text-transform: capitalize;
}

.secondary-CTA:hover {
  background-color: rgb(var(--warms-orange));
  color: var(--monochorme-white);
}

.secondary-CTA-Isometric {
  box-sizing: border-box;
  background-color: var(--monochorme-white);
  color: rgb(var(--warms-orange));
  border: 2px solid rgb(var(--warms-orange));
  border-top-width: 3px;
  border-right-width: 3px;
  min-width: 134px;
  height: 39px;
  padding: 10px;
  transform: matrix(0.98, 0.21, 0, 1, 0, 0);

  display: inline-flex;
  justify-content: center;
  align-items: center;

  font-family: var(--CTA-font-family);
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0;
  text-transform: capitalize;

  position: relative;
  transition: 0.25s ease all;
}

.secondary-CTA-Isometric::before {
  content: '';
  position: absolute;
  top: -13px;
  left: 3px;
  height: 7.96px;
  width: 100%;
  background-color: var(--monochorme-white);
  border: 2px solid rgb(var(--warms-orange));
  transform: matrix(1, 0, -0.78, 0.63, 0, 0);
  transition: 0.25s ease all;
}

.secondary-CTA-Isometric::after {
  content: '';
  position: absolute;
  top: -6px;
  right: -13px;
  height: 100%;
  width: 8px;
  background-color: var(--monochorme-white);
  border: 2px solid rgb(var(--warms-orange));
  transform: rotate(51deg) matrix(0, 1, -0.8, -0.63, 0, 0);
  transition: 0.25s ease all;
}

.secondary-CTA-Isometric:hover {
  background-color: var(--warmsdark-orange);
  color: var(--monochorme-white);
}

.secondary-CTA-Isometric:hover::before,
.secondary-CTA-Isometric:hover::after {
  background-color: var(--warmsdark-orange);
}

.secondary-CTA-plain {
  box-sizing: border-box;
  background-color: var(--monochorme-white);
  color: rgb(var(--warms-orange));
  border: 4px solid rgb(var(--warms-orange));
  /* border-top-width: 3px;
  border-right-width: 3px; */
  min-width: 134px;
  height: 61px;
  padding: 4px 12px;
  /*  transform: matrix(0.98, 0.21, 0, 1, 0, 0); */

  display: inline-flex;
  justify-content: center;
  align-items: center;

  font-family: var(--CTA-font-family);
  font-weight: 700;
  font-size: 24px;
  letter-spacing: 0;
  text-transform: capitalize;

  position: relative;
  transition: 0.25s ease all;
}

.secondary-CTA-plain:hover {
  background-color: var(--warmsdark-orange);
  color: var(--monochorme-white);
}

.tertiary-CTA {
  color: rgb(var(--warms-orange));
  min-height: 27px;
  transition: 0.25s ease all;
  cursor: pointer;

  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;

  font-family: var(--CTA-font-family);
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0;
  text-transform: capitalize;
}

.tertiary-CTA:hover {
  color: var(--warmsdark-orange);
}

.quaternary-CTA {
  background-color: #FA6F0A1A;
  color: rgb(var(--warms-orange));
  min-width: 137px;
  padding: 10px;
  border: 2px solid rgba(var(--warms-orange), 0.25);
  transition: 0.25s ease all;
  border-radius: 12px;
  cursor: pointer;
  text-align: center;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  font-family: var(--CTA-font-family);
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0;
  text-transform: capitalize;
}

.quaternary-CTA:hover {
  background-color: rgb(var(--warms-orange));
  color: var(--monochorme-white);
}

.heading-gradient {
  background: var(--gradient-heading-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
}

.p-gradient {
  background: var(--gradient-body-text-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* clip */

.clip-container {
  display: flex;
  align-items: center;
  gap: 16px;
  overflow-x: auto;
}

.clip-container::-webkit-scrollbar {
  display: none;
}

.clip-container .clip {
  position: relative;
  display: inline-block;
  padding: 7px 16px;
  background: transparent;
  border: none;
  cursor: pointer;
  z-index: 1;
  color: var(--monochorme-600);
  transition: 0.25s ease all;
  white-space: nowrap;
}

.clip-container .clip::before {
  content: '';
  position: absolute;
  inset: 0;
  padding: 1px;
  /* Border thickness */
  opacity: 0;
  background: var(--gradient-heading-gradient);
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  mask-composite: exclude;
  border-radius: 50rem;
  pointer-events: none;
  z-index: -1;
  transition: 0.25s ease opacity;
}

.clip-container .clip::after {
  content: '';
  position: absolute;
  inset: 0;
  padding: 1px;
  background: var(--gradient-stroke-gradient);
  border-radius: 50rem;
  pointer-events: none;
  z-index: -2;
  opacity: 1;
  transition: 0.25s ease opacity;
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  mask-composite: exclude;
}

.clip-container .clip:hover {
  color: var(--monochorme-600);
}

.clip-container .clip:hover::after {
  opacity: 0;
}

.clip-container .clip:hover::before {
  opacity: 1;
}

@media (min-width: 840px) and (max-width: 1272px) {
  .Heading_XXL {
    font-size: 76px;
    line-height: 98px;
  }

  .Heading_S_bold {
    font-size: 20px;
    line-height: 26px;
  }
}

@media (max-width: 840px) {
  .Heading_XXL {
    font-size: 55px;
    line-height: 72px;
  }

  .Heading_XL {
    font-size: 42px;
    line-height: 60px;
  }

  .Body_M_r {
    font-size: 17px;
  }

  .Heading_XS_mid {
    font-size: 21px;
  }

  .Body_L_bold {
    font-size: 18px;
  }

  .Heading_L {
    font-size: 40px;
    line-height: 50px;
  }
}

@media (max-width: 567px) {
  .Heading_XXL {
    font-size: 28px;
    line-height: 40px;
  }

  .Heading_XL {
    font-size: 24px;
    line-height: 29px;
  }

  .Heading_M {
    font-size: 28px;
  }

  .Heading_XS_mid {
    font-size: 14px;
    line-height: 17px;
  }

  .Body_XL_mid {
    font-size: 14px;
    line-height: 24px;
  }

  .Heading_S_bold {
    font-size: 16px;
    line-height: 16px;
  }

  .Body_M_r {
    font-size: 16px;
    line-height: 20px;
  }

  .Body_L_bold {
    line-height: 20px;
    font-size: 16px;
  }

  .Heading_XXS_mid {
    font-size: 20px !important;
    line-height: 24px !important;
  }

  .Heading_L {
    font-size: 24px;
    line-height: 29px;
  }

  .clip-container {
    gap: 12px;
  }

  .Body_L_reg {
    font-size: 16px;
    line-height: 20px;
  }

  .CTA_XL {
    font-size: 14px;
  }

  .clip-container .clip {
    padding: 0 16px;
  }

  .Body_XL {
    font-size: 14px;
    line-height: 24px;
  }

  .Heading_S {
    font-size: 20px;
  }

  .Body_XL_bold {
    font-size: 16px;
    line-height: 20px;
  }
}