:root {
  --primary-font-family: 'EB Garamond', serif;
  --secondary-font-family: 'Figtree', sans-serif;
  --gray-1: #282828;
  --gray-1-70: rgba(40, 40, 40, 0.7);
  --gray-1-80: rgba(40, 40, 40, 0.8);
  --color-black: #000000;
  --color-black-1: #0b0b0b;
  --color-black-80: rgba(0, 0, 0, 0.8);
  --color-black-75: rgba(0, 0, 0, 0.75);
  --color-black-70: rgba(0, 0, 0, 0.7);
  --color-black-65: rgba(0, 0, 0, 0.65);
  --color-black-60: rgba(0, 0, 0, 0.6);
  --color-white: #ffffff;
  --color-white-08: rgba(255, 255, 255, 0.8);
  --gray-0: #f8f8f8;
  --xl-container: 1180px;
  --2xl-container: 1270px;
}

body {
  font-feature-settings: 'liga' off;
  overflow-x: hidden;
}

.overflow-x-hidden {
  overflow-x: hidden;
  overflow-y: visible;
}

/* ======================================== */
/* Font family                              */
/* ======================================== */

.heading,
.heading-lg,
.font-primary {
  font-family: var(--primary-font-family);
}

.btn,
.description,
.explore-link,
.font-secondary {
  font-family: var(--secondary-font-family);
}

/* ======================================== */
/* Font size                                */
/* ======================================== */

.explore-link,
.text-xs {
  font-size: clamp(10px, 1vw, 11px);
}

.text-tiny {
  font-size: 12px;
}

.btn,
.description,
.text-sm {
  font-size: clamp(12px, 1.2vw, 14px);
}

.description-lg,
.text-lg {
  font-size: clamp(14px, 2vw, 16px);
}

.text-lg-1 {
  font-size: 16px;
}

.text-2xl {
  font-size: 24px;
}

.heading,
.text-3xl {
  font-size: clamp(16px, 3.2vw, 28px);
}

.heading-lg,
.text-5xl {
  font-size: clamp(28px, 4.8vw, 48px);
}

.btn-filled-secondary {
  font-size: 12px;
}

/* ======================================== */
/* Font Weight                              */
/* ======================================== */

.description,
.font-light {
  font-weight: 300;
}

.heading,
.heading-lg,
.font-normal {
  font-weight: 400;
}

.btn,
.explore-link,
.font-bold {
  font-weight: 500;
}

/* ======================================== */
/* Position                                 */
/* ======================================== */
.top-50 {
  top: 50% !important;
}

.start-50 {
  left: 50% !important;
}

.top-0 {
  top: 0 !important;
}

.bottom-0 {
  bottom: 0 !important;
}

.left-0 {
  left: 0 !important;
}

.right-0 {
  right: 0 !important;
}

.top-50 {
  top: 50% !important;
}

.translate-middle {
  transform: translate(-50%, -50%) !important;
}

/* ======================================== */
/* Z Index                                  */
/* ======================================== */

.z-0 {
  z-index: 0 !important;
}

.z-10 {
  z-index: 10 !important;
}

.z-20 {
  z-index: 20 !important;
}

.z-30 {
  z-index: 30 !important;
}

.z-40 {
  z-index: 40 !important;
}

.z-50 {
  z-index: 50 !important;
}

.z-60 {
  z-index: 60 !important;
}
.z-100 {
  z-index: 100 !important;
}

/* ======================================== */
/* Gap                                       */
/* ======================================== */
.gap-40 {
  gap: 40px !important;
}

/* ======================================== */
/* Button                                   */
/* ======================================== */
.btn {
  font-style: normal;
}

.btn-outline-secondary-custom {
  border-radius: 100px;
  border-color: rgba(99, 77, 78, 0.2);
  padding: 16px 24px;
}

.btn-outline-secondary-custom:hover {
  background-color: transparent;
}

/* ======================================== */
/* Text Color                               */
/* ======================================== */

.explore-link.text-white,
.text-white {
  color: var(--color-white) !important;
}

.heading-lg,
.text-black {
  color: var(--color-black);
}

.text-white-light {
  color: var(--color-white-08);
}

.text-gray-1 {
  color: var(--gray-1) !important;
}

.heading-lg--lighter,
.description,
.text-black-75 {
  color: var(--color-black-75);
}

.text-black-80 {
  color: var(--color-black-80);
}

.description--lighter,
.text-gray-1-70 {
  color: var(--gray-1-70) !important;
}

.text-gray-1-80 {
  color: var(--gray-1-80);
}

.text-black-70 {
  color: var(--color-black-70);
}

.text-black-65 {
  color: var(--color-black-65);
}

.text-black-60 {
  color: var(--color-black-60);
}

.explore-link,
.btn-outline-secondary-custom,
.text-black-1 {
  color: var(--color-black-1) !important;
}

.transtion-delay-50 {
  transition-delay: 50ms;
}

/* ======================================== */
/* Background Color                          */
/* ======================================== */

.bg-gray-0 {
  background-color: var(--gray-0) !important;
}

/* ======================================== */
/* Line height                              */
/* ======================================== */

.btn,
.explore-link,
.line-height-140 {
  line-height: 140%;
}

.heading-lg,
.line-height-54px {
  line-height: 54px;
}

.line-height-26 {
  line-height: 26px; /* 144.444% */
}

.line-height-46 {
  line-height: 46px;
}

.description,
.line-height-18px {
  line-height: 18px;
}

.heading,
.line-height-normal {
  line-height: normal;
}

/* ======================================== */
/* Letter spacing                           */
/* ======================================== */

.heading-lg,
.tracking-tighter-xl {
  letter-spacing: -0.96px;
}

.heading,
.font-product-heading,
.tracking-tighter-md {
  letter-spacing: -0.56px;
}

.tracking-tighter {
  letter-spacing: -0.48px;
}

.tracking-tighter-sm {
  letter-spacing: -0.36px;
}

.tracking-tighter-032 {
  letter-spacing: -0.32px;
}

.tracking-tighter-xs {
  letter-spacing: -0.28px;
}

.tracking-tight {
  letter-spacing: 0px;
}

.tracking-normal {
  letter-spacing: 0.5px;
}

.tracking-wide {
  letter-spacing: 1px;
}

.explore-link,
.tracking-wider-132 {
  letter-spacing: 1.32px;
}

.btn,
.tracking-wider {
  letter-spacing: 1.4px;
}

.tracking-widest {
  letter-spacing: 2px;
}

a.explore-link {
  padding-top: 0 !important; /* override common style */
}

a.float {
  z-index: 1000 !important; /* highter z-index for existing code */
}

/* Common */

.btn-height {
  height: 56px;
}

.width-auto {
  width: auto !important;
}

.opactiy-0 {
  opacity: 0;
}

.object-fit-cover {
  object-fit: cover;
}

.pointer-events-none {
  pointer-events: none !important;
}

.object-top {
  object-position: top !important;
}

.text-underline {
  text-decoration-line: underline !important;
}

.mb-2px {
  margin-bottom: 2px;
}

.bg-bottom {
  background-position: bottom !important;
}

.bg-cover {
  background-size: cover !important;
}

.product-row {
  margin: 0 -20px;
}

.cursor-pointer {
  cursor: pointer;
}

.product-row [class*='col-'] {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

/* iPad mini tablet */
@media (min-width: 744px) {
  .apple-video-blur-patch.d-md-none {
    display: none !important;
  }

  br.d-md-inline {
    display: inline !important;
  }

  br.d-md-block {
    display: block !important;
  }

  video.video-leaf-fall {
    display: block !important;
  }

  .apple-video-patch {
    display: none;
  }

  .d-md-none.product-3-patch-2-tab {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .btn-height {
    height: 64px;
  }

  .btn-filled-secondary {
    font-size: 14px;
  }

  .translate-md-middle {
    transform: translate(-50%, -50%) !important;
  }

  .start-md-50 {
    left: 50% !important;
  }

  .top-md-50 {
    top: 50% !important;
  }

  .position-md-relative {
    position: relative !important;
  }
}

@media (min-width: 768px) and (max-width: 1279px) {
  .translate-md-middle {
    transform: translate(-50%, -50%) !important;
  }

  .start-md-50 {
    left: 50% !important;
  }

  .position-md-absolute {
    position: absolute !important;
  }

  .text-5xl--tab {
    font-size: 24px;
  }

  .product-4-video-web {
    object-position: -55vw;
  }
}

@media (min-width: 1280px) {
  .text-lg-1 {
    font-size: 18px;
  }

  .container {
    max-width: var(--xl-container);
  }

  .position-lg-absolute {
    position: absolute;
  }

  .w-desktop-auto {
    width: auto;
  }

  .mx-desktop-auto {
    margin-left: auto;
    margin-right: auto;
  }

  .h-100-desktop {
    height: 100%;
  }

  .position-desktop-absolute {
    position: absolute !important;
  }

  .position-desktop-relative {
    position: relative !important;
  }

  .top-desktop-50 {
    top: 50% !important;
  }

  .line-height-deesktop-54px {
    line-height: 54px;
  }

  .translate-deskktop-middle-top {
    transform: translateY(-50%) !important;
  }

  .tracking-desktop-tighter {
    letter-spacing: -0.48px;
  }

  .text-desktop-left {
    text-align: left !important;
  }

  .gap-desktop-40 {
    gap: 40px !important;
  }

  .object-desktop-bottom {
    object-position: bottom !important;
  }

  .btn-outline-secondary-custom {
    padding: 24px 36px;
  }
}

@media (max-width: 767px) {
  .line-height-normal-mobile {
    line-height: normal !important;
  }

  .container-no-space-mobile {
    padding: 0;
  }

  #leaf-fall-lottie {
    overflow: hidden !important;
    max-width: 100vw !important;
    height: 100vh !important;
  }

  #leaf-fall-lottie svg {
    width: auto !important;
    height: 100vh !important;
  }
}

[data-gsap-video-second-v1] {
  will-change: transform;
}
