/** Shopify CDN: Minification failed

Line 3357:16 Expected identifier but found whitespace
Line 3357:23 Unexpected ";"

**/
/* =========================================
   FORCE REMOVE STICKY HEADER
========================================= */

#shopify-section-header,
.shopify-section-header-sticky,
.header-wrapper,
.header-wrapper--border-bottom,
.section-header,
sticky-header,
.header {

  position: relative !important;
  position: static !important;

  top: unset !important;

  transform: none !important;

  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* REMOVE STICKY CONTAINER HEIGHT */

sticky-header {
  display: block !important;
  height: auto !important;
}

/* REMOVE DAWN HEADER SPACING BUG */

.scrolled-past-header #MainContent,
.scrolled-past-header-shopify-section {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* ==================================================
   MV STUDIO — FOUNDATION
================================================== */

:root {

  --mv-black: #050505;
  --mv-white: #ffffff;

  --mv-purple: #7c4dff;
  --mv-turquoise: #00ffd5;

  --mv-glass:
    rgba(255,255,255,0.06);

  --mv-border:
    rgba(255,255,255,0.08);

  --mv-shadow:
    0 10px 40px rgba(0,0,0,0.45);

  --mv-transition:
    0.35s cubic-bezier(.4,0,.2,1);

  --mv-radius: 22px;

  --mv-max-width: 1500px;
}

/* ==================================================
   GLOBAL
================================================== */

html {
  scroll-behavior: smooth;
}

body {

  background:
    radial-gradient(
      circle at top,
      rgba(0,255,213,0.06),
      transparent 35%
    ),
    radial-gradient(
      circle at bottom,
      rgba(124,77,255,0.08),
      transparent 40%
    ),
    #050505;

  color: white;

  overflow-x: hidden;

  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* ==================================================
   TYPOGRAPHY
================================================== */

h1,
h2,
h3,
h4,
h5,
h6 {

  font-family:
  'Outfit',
  sans-serif;

  letter-spacing: 0.04em;

  color: white;

  margin: 0;
}

p {
  color:
    rgba(255,255,255,0.72);

  line-height: 1.8;
}

/* ==================================================
   CONTAINERS
================================================== */

.page-width,
.mv-container {

  width: 100%;

  max-width:
    var(--mv-max-width);

  margin-inline: auto;

  padding-inline: 40px;
}

/* ==================================================
   LINKS
================================================== */

a {

  color: inherit;

  text-decoration: none;

  transition:
    var(--mv-transition);
}


/* ==================================================
   PREMIUM BUTTON SYSTEM
================================================== */

.button,
button,
.btn,
.shopify-payment-button button,
.button--primary,
.button--secondary {

  position: relative;

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

  min-height: 56px;

  padding:
    16px 30px;

  border-radius:
    18px;

  border:
    1px solid rgba(255,255,255,0.08);

  background:
    linear-gradient(
      135deg,
      rgba(124,77,255,0.20),
      rgba(0,255,213,0.10)
    );

  color: white !important;

  font-weight: 600;

  letter-spacing:
    0.06em;

  text-transform: uppercase;

  backdrop-filter:
    blur(12px);

  -webkit-backdrop-filter:
    blur(12px);

  box-shadow:
    0 10px 30px rgba(0,0,0,0.28);

  transition:
    transform 0.35s ease,
    border-color 0.35s ease,
    box-shadow 0.35s ease,
    background 0.35s ease;

  overflow: hidden;

  cursor: pointer;
}
/* ==================================================
   PREMIUM BUTTON SYSTEM
================================================== */

.button,
button,
.btn,
.shopify-payment-button button {

  position: relative;

  overflow: hidden;

  isolation: isolate;

  padding:
    16px 28px;

  font-weight: 600;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  backdrop-filter:
    blur(14px);

  -webkit-backdrop-filter:
    blur(14px);
}

/* LIGHT SWEEP */

.button::before,
button::before,
.btn::before,
.shopify-payment-button button::before {

  content: "";

  position: absolute;

  top: 0;
  left: -120%;

  width: 70%;
  height: 100%;

  background:
    linear-gradient(
      120deg,
      transparent,
      rgba(255,255,255,0.22),
      transparent
    );

  transform:
    skewX(-20deg);

  transition:
    left 0.8s ease;

  z-index: -1;
}

/* HOVER */

.button:hover::before,
button:hover::before,
.btn:hover::before,
.shopify-payment-button button:hover::before {

  left: 150%;
}

/* PRESS EFFECT */

.button:active,
button:active,
.btn:active {

  transform:
    scale(0.98);
}

/* GLOW */

.button:hover,
button:hover,
.btn:hover,
.shopify-payment-button button:hover {

  box-shadow:
    0 0 25px rgba(0,255,213,0.18),
    0 10px 40px rgba(0,0,0,0.35);
}

/* HOVER */

.button:hover,
button:hover,
.btn:hover,
.shopify-payment-button button:hover,
.button--primary:hover,
.button--secondary:hover {

  transform:
    translateY(-3px);

  border-color:
    rgba(0,255,213,0.35);

  box-shadow:
    0 14px 40px rgba(0,255,213,0.16);

  background:
    linear-gradient(
      135deg,
      rgba(124,77,255,0.26),
      rgba(0,255,213,0.16)
    );
}

/* ACTIVE */

.button:active,
button:active,
.btn:active {

  transform:
    translateY(0px) scale(0.98);
}

/* BUTTON GLOW */

.button::before,
button::before,
.btn::before {

  content: "";

  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      120deg,
      transparent,
      rgba(255,255,255,0.12),
      transparent
    );

  transform:
    translateX(-120%);

  transition:
    transform 0.8s ease;
}

/* SWEEP */

.button:hover::before,
button:hover::before,
.btn:hover::before {

  transform:
    translateX(120%);
}

/* MOBILE */

@media (max-width: 640px) {

  .button,
  button,
  .btn {

    width: 100%;

    min-height: 54px;

    padding:
      15px 22px;

    font-size:
      1.4rem;
  }
}
/* ==================================================
   IMAGES
================================================== */

img {

  max-width: 100%;

  display: block;
}

/* ==================================================
   CINEMATIC TEXT
================================================== */

.cinematic-text,
.cine-title {

  opacity: 0;

  transform:
    translateY(40px);

  transition:
    opacity 1s ease,
    transform 1s ease;
}

.cinematic-text.active,
.cine-title.active {

  opacity: 1;

  transform:
    translateY(0);
}

/* ==================================================
   PREMIUM CARD SYSTEM
================================================== */

.mv-card,
.card,
.card-wrapper,
.multicolumn-card,
.collection-list-card,
.product-card-wrapper {

  position: relative;

  overflow: hidden;

  border-radius:
    26px;

  border:
    1px solid rgba(255,255,255,0.08);

  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,0.05),
      rgba(255,255,255,0.025)
    );

  backdrop-filter:
    blur(16px);

  -webkit-backdrop-filter:
    blur(16px);

  box-shadow:
    0 14px 40px rgba(0,0,0,0.28);

  transition:
    transform 0.45s ease,
    border-color 0.45s ease,
    box-shadow 0.45s ease,
    background 0.45s ease;
}

/* LIGHT SWEEP */

.mv-card::before,
.card::before,
.multicolumn-card::before {

  content: "";

  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      120deg,
      transparent,
      rgba(255,255,255,0.08),
      transparent
    );

  transform:
    translateX(-130%);

  transition:
    transform 1s ease;
}

/* HOVER */

.mv-card:hover,
.card:hover,
.card-wrapper:hover,
.multicolumn-card:hover,
.collection-list-card:hover,
.product-card-wrapper:hover {

  transform:
    translateY(-8px);

  border-color:
    rgba(0,255,213,0.18);

  box-shadow:
    0 18px 60px rgba(0,255,213,0.12);

  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,0.07),
      rgba(255,255,255,0.03)
    );
}

/* SWEEP ANIMATION */

.mv-card:hover::before,
.card:hover::before,
.multicolumn-card:hover::before {

  transform:
    translateX(130%);
}
/* ==================================================
   FLOATING CINEMATIC MOTION
================================================== */

.mv-card,
.hero-content,
.glass-card {

  animation:
    mvFloat 6s ease-in-out infinite;
}

/* STAGGERED TIMING */

.mv-card:nth-child(2) {

  animation-delay: 1s;
}

.mv-card:nth-child(3) {

  animation-delay: 2s;
}

.mv-card:nth-child(4) {

  animation-delay: 3s;
}

/* FLOAT */

@keyframes mvFloat {

  0% {

    transform:
      translateY(0px);
  }

  50% {

    transform:
      translateY(-8px);
  }

  100% {

    transform:
      translateY(0px);
  }
}
/* ==================================================
   PREMIUM HOVER DEPTH
================================================== */

.mv-card {

  transform-style:
    preserve-3d;

  will-change:
    transform;
}

.mv-card:hover {

  transform:
    perspective(1200px)
    rotateX(4deg)
    rotateY(-4deg)
    translateY(-10px);

  transition:
    transform 0.5s ease;
}
/* ==================================================
   SCROLL REVEAL SYSTEM
================================================== */

.reveal {

  opacity: 0;

  transform:
    translateY(60px);

  transition:
    opacity 1s ease,
    transform 1s ease;

  will-change:
    transform, opacity;
}

.reveal.active {

  opacity: 1;

  transform:
    translateY(0);
}

/* LEFT */

.reveal-left {

  opacity: 1;

  transform:
    translateX(-60px);

  transition:
    opacity 1s ease,
    transform 1s ease;
}

.reveal-left.active {

  opacity: 1;

  transform:
    translateX(0);
}

/* RIGHT */

.reveal-right {

  opacity: 0;

  transform:
    translateX(60px);

  transition:
    opacity 1s ease,
    transform 1s ease;
}

.reveal-right.active {

  opacity: 1;

  transform:
    translateX(0);
}

/* SCALE */

.reveal-scale {

  opacity: 0;

  transform:
    scale(0.92);

  transition:
    opacity 1s ease,
    transform 1s ease;
}

.reveal-scale.active {

  opacity: 1;

  transform:
    scale(1);
}

/* CARD IMAGES */

.card img,
.mv-card img {

  transition:
    transform 0.7s ease,
    filter 0.7s ease;
}

/* IMAGE ZOOM */

.card:hover img,
.mv-card:hover img {

  transform:
    scale(1.04);

  filter:
    brightness(1.04);
}

/* CONTENT SPACING */

.card__content,
.multicolumn-card__info,
.card-information {

  padding:
    28px;
}

/* MOBILE */

@media (max-width: 640px) {

  .mv-card,
  .card,
  .multicolumn-card {

    border-radius:
      22px;
  }

  .card__content,
  .multicolumn-card__info {

    padding:
      22px;
  }
}
/* ==================================================
   PREMIUM GRID SYSTEM
================================================== */

/* COLLECTIONS / CARDS LAYOUT */

.grid,
.collection-list,
.multicolumn-list,
.product-grid {

  display: grid !important;

  grid-template-columns:
    repeat(auto-fit, minmax(280px, 1fr));

  gap:
    28px;

  align-items: stretch;
}

/* FORCE CARDS TO FIT GRID */

.card-wrapper,
.product-card-wrapper,
.collection-list-card,
.multicolumn-card,
.mv-card {

  width: 100% !important;

  max-width: 100% !important;

  height: 100%;
}

/* REMOVE GIANT DAWN CARD WIDTHS */

.slider__slide,
.grid__item {

  width: auto !important;

  max-width: 100% !important;
}

/* BETTER CARD HEIGHTS */

.card,
.multicolumn-card,
.collection-list-card {

  min-height: 100%;
}

/* MOBILE */

@media (max-width: 990px) {

  .grid,
  .collection-list,
  .multicolumn-list,
  .product-grid {

    grid-template-columns:
      repeat(2, 1fr);

    gap:
      20px;
  }
}

@media (max-width: 640px) {

  .grid,
  .collection-list,
  .multicolumn-list,
  .product-grid {

    grid-template-columns:
      1fr;

    gap:
      18px;
  }
}

/* ==================================================
   SECTION SPACING
================================================== */

section {

  position: relative;

  padding-block: 120px;

  z-index: 2;
}

/* ==================================================
   RESPONSIVE
================================================== */

@media (max-width: 990px) {

  .page-width,
  .mv-container {

    padding-inline: 24px;
  }

  section {

    padding-block: 90px;
  }
}

@media (max-width: 640px) {

  h1 {
    font-size: 4rem;
  }

  h2 {
    font-size: 3rem;
  }

  section {

    padding-block: 70px;
  }
}
/* ==================================================
   MV GRID
================================================== */

.mv-grid {

  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 28px;

  margin-top: 50px;
}

/* MOBILE */

@media (max-width: 990px) {

  .mv-grid {

    grid-template-columns:
      1fr;
  }
}
/* =========================================
   FORCE REMOVE STICKY HEADER
========================================= */

#shopify-section-header,
.shopify-section-header-sticky,
.header-wrapper,
.header-wrapper--border-bottom,
.section-header,
sticky-header,
.header {

  position: relative !important;
  position: static !important;

  top: unset !important;

  transform: none !important;

  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* REMOVE STICKY CONTAINER HEIGHT */

sticky-header {
  display: block !important;
  height: auto !important;
}

/* REMOVE DAWN HEADER SPACING BUG */

.scrolled-past-header #MainContent,
.scrolled-past-header-shopify-section {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* ==================================================
   MV STUDIO — FOUNDATION
================================================== */

:root {

  --mv-black: #050505;
  --mv-white: #ffffff;

  --mv-purple: #7c4dff;
  --mv-turquoise: #00ffd5;

  --mv-glass:
    rgba(255,255,255,0.06);

  --mv-border:
    rgba(255,255,255,0.08);

  --mv-shadow:
    0 10px 40px rgba(0,0,0,0.45);

  --mv-transition:
    0.35s cubic-bezier(.4,0,.2,1);

  --mv-radius: 22px;

  --mv-max-width: 1500px;
}

/* ==================================================
   GLOBAL
================================================== */

html {
  scroll-behavior: smooth;
}

body {

  background:
    radial-gradient(
      circle at top,
      rgba(0,255,213,0.06),
      transparent 35%
    ),
    radial-gradient(
      circle at bottom,
      rgba(124,77,255,0.08),
      transparent 40%
    ),
    #050505;

  color: white;

  overflow-x: hidden;

  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* ==================================================
   TYPOGRAPHY
================================================== */

/* ==================================================
   PREMIUM TYPOGRAPHY SYSTEM
================================================== */

h1 {

  font-size:
    clamp(4.5rem, 8vw, 8rem);

  line-height: 0.95;

  letter-spacing: 0.06em;

  font-weight: 800;
}

h2 {

  font-size:
    clamp(2.8rem, 4vw, 4.8rem);

  line-height: 1.05;

  font-weight: 700;
}

h3 {

  font-size:
    clamp(2rem, 3vw, 3rem);

  line-height: 1.1;
}

p {

  font-size: 1.6rem;

  max-width: 70ch;

  margin-inline: auto;
}

/* ==================================================
   LUXURY TEXT GLOW
================================================== */

.cine-title,
.mv-section-title,
.hero-title {

  text-shadow:
    0 0 30px rgba(124,77,255,0.25),
    0 0 60px rgba(0,255,213,0.10);
}

/* ==================================================
   SPACING RHYTHM
================================================== */

section {

  padding-block:
    clamp(80px, 10vw, 160px);
}

/* ==================================================
   CENTERED CONTENT
================================================== */

.section-center {

  text-align: center;

  max-width: 900px;

  margin-inline: auto;
}

/* ==================================================
   CONTAINERS
================================================== */

.page-width,
.mv-container {

  width: 100%;

  max-width:
    var(--mv-max-width);

  margin-inline: auto;

  padding-inline: 40px;
}

/* ==================================================
   LINKS
================================================== */

a {

  color: inherit;

  text-decoration: none;

  transition:
    var(--mv-transition);
}

/* ==================================================
   BUTTONS
================================================== */

.button,
button,
.btn,
.shopify-payment-button button {

  border-radius:
    var(--mv-radius);

  border:
    1px solid var(--mv-border);

  background:
    linear-gradient(
      135deg,
      rgba(124,77,255,0.18),
      rgba(0,255,213,0.10)
    );

  color: white;

  backdrop-filter: blur(14px);

  transition:
    var(--mv-transition);

  box-shadow:
    var(--mv-shadow);
}

.button:hover,
button:hover,
.btn:hover,
.shopify-payment-button button:hover {

  transform:
    translateY(-2px);

  border-color:
    rgba(0,255,213,0.35);

  box-shadow:
    0 0 30px rgba(0,255,213,0.15);
}

/* ==================================================
   IMAGES
================================================== */

img {

  max-width: 100%;

  display: block;
}

/* ==================================================
   CINEMATIC TEXT
================================================== */

.cinematic-text,
.cine-title {

  opacity: 0;

  transform:
    translateY(40px);

  transition:
    opacity 1s ease,
    transform 1s ease;
}

.cinematic-text.active,
.cine-title.active {

  opacity: 1;

  transform:
    translateY(0);
}

/* ==================================================
   PREMIUM CARD
================================================== */

.mv-card {

  position: relative;

  overflow: hidden;

  border-radius:
    var(--mv-radius);

  border:
    1px solid var(--mv-border);

  background:
    rgba(255,255,255,0.04);

  backdrop-filter:
    blur(16px);

  box-shadow:
    var(--mv-shadow);
}

/* ==================================================
   SECTION SPACING
================================================== */

section {

  position: relative;

  padding-block: 120px;

  z-index: 2;
}

/* ==================================================
   RESPONSIVE
================================================== */

@media (max-width: 990px) {

  .page-width,
  .mv-container {

    padding-inline: 24px;
  }

  section {

    padding-block: 90px;
  }
}

@media (max-width: 640px) {

  h1 {
    font-size: 4rem;
  }

  h2 {
    font-size: 3rem;
  }

  section {

    padding-block: 70px;
  }
}
/* ==================================================
   GLOBAL LAYOUT SYSTEM
================================================== */

/* REMOVE RANDOM SHOPIFY SPACING */

.shopify-section {

  position: relative;

  margin: 0 !important;
  padding: 0 !important;
}

/* CLEAN SECTION SPACING */

section,
.section {

  position: relative;

  padding-block:
    clamp(70px, 10vw, 140px);

  z-index: 2;
}

/* INNER CONTENT WIDTH */

.page-width,
.mv-container,
.section__inner {

  width: 100%;

  max-width:
    1500px;

  margin-inline: auto;

  padding-inline:
    clamp(20px, 4vw, 48px);
}

/* REMOVE EXCESS DAWN PADDING */

.rich-text__wrapper,
.multicolumn-card,
.card-wrapper,
.banner__box {

  padding:
    0 !important;
}

/* STANDARD CONTENT WIDTH */

.rich-text__blocks,
.banner__content,
.multicolumn-list {

  max-width:
    1200px;

  margin-inline:
    auto;
}

/* BETTER MOBILE SPACING */

@media (max-width: 990px) {

  section,
  .section {

    padding-block:
      80px;
  }
}

@media (max-width: 640px) {

  section,
  .section {

    padding-block:
      64px;
  }

  .page-width,
  .mv-container,
  .section__inner {

    padding-inline:
      20px;
  }
}
/* ==================================================
   FORCE SMALLER CARD LAYOUT
================================================== */

/* OVERRIDE DAWN GRID ITEMS */

.grid__item {

  width: 100% !important;

  max-width: 100% !important;

  flex: unset !important;
}

/* FORCE GRID */

.grid.product-grid,
.product-grid,
.collection-list,
.multicolumn-list,
ul.grid {

  display: grid !important;

  grid-template-columns:
    repeat(4, minmax(0, 1fr)) !important;

  gap:
    24px !important;
}

/* CARD SIZE */

.card-wrapper,
.product-card-wrapper,
.collection-list-card,
.multicolumn-card,
.mv-card {

  width: 100% !important;

  max-width: 100% !important;

  min-width: 0 !important;
}

/* FIX IMAGE SIZE */

.card img,
.card__media img {

  width: 100%;

  aspect-ratio: 1 / 1;

  object-fit: cover;
}

/* TABLET */

@media (max-width: 990px) {

  .grid.product-grid,
  .product-grid,
  .collection-list,
  .multicolumn-list,
  ul.grid {

    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }
}

/* MOBILE */

@media (max-width: 640px) {

  .grid.product-grid,
  .product-grid,
  .collection-list,
  .multicolumn-list,
  ul.grid {

    grid-template-columns:
      1fr !important;
  }
}
/* ==================================================
   FORCE SHOPIFY SECTIONS INTO REAL GRIDS
================================================== */

/* PRODUCT GRIDS */

.product-grid-container ul,
ul.product-grid,
.collection .grid,
.collection-list .grid,
.multicolumn .grid {

  display: grid !important;

  grid-template-columns:
    repeat(4, minmax(0, 1fr)) !important;

  gap:
    24px !important;

  width: 100% !important;
}

/* REMOVE DAWN WIDTH SYSTEM */

.grid__item,
.slider__slide {

  width: 100% !important;

  max-width: 100% !important;

  flex: none !important;
}

/* FORCE CARDS SMALLER */

.card-wrapper,
.product-card-wrapper,
.card {

  width: 100% !important;

  max-width: 100% !important;
}

/* FIX MEDIA */

.card__media {

  aspect-ratio: 1 / 1;

  overflow: hidden;
}

.card__media img {

  width: 100%;
  height: 100%;

  object-fit: cover;
}

/* TABLET */

@media (max-width: 990px) {

  .product-grid-container ul,
  ul.product-grid,
  .collection .grid,
  .collection-list .grid,
  .multicolumn .grid {

    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }
}

/* MOBILE */

@media (max-width: 640px) {

  .product-grid-container ul,
  ul.product-grid,
  .collection .grid,
  .collection-list .grid,
  .multicolumn .grid {

    grid-template-columns:
      1fr !important;
  }
}
/* ==================================================
   MV CUSTOM SECTION GRID
================================================== */

.mv-section {

  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap:
    28px;

  align-items: stretch;

  max-width:
    1400px;

  margin:
    0 auto;

  padding:
    40px 24px;
}

/* CARD */

.mv-section .mv-card {

  width: 100%;

  min-width: 0;
}

/* IMAGE */

.mv-section .mv-card img {

  width: 100%;

  aspect-ratio: 1 / 1;

  object-fit: cover;

  border-radius:
    18px;
}

/* MOBILE */

@media (max-width: 990px) {

  .mv-section {

    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {

  .mv-section {

    grid-template-columns:
      1fr;
  }
}
/* ==================================================
   MV SECTION — CINEMATIC LAYOUT
================================================== */

.mv-section {

  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 32px;

  align-items: stretch;

  max-width: 1400px;

  margin: 80px auto;

  padding-inline: 40px;

  position: relative;

  z-index: 2;
}

/* SECTION TITLE */

.mv-section-title,
.mv-section h1 {

  text-align: center;

  font-size: clamp(3rem, 5vw, 6rem);

  margin-bottom: 60px;

  letter-spacing: 0.08em;

  background:
    linear-gradient(
      90deg,
      #ffffff,
      #00ffd5
    );

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* SOFT AMBIENT GLOW */

.mv-section::before {

  content: "";

  position: absolute;

  inset: -10%;

  background:
    radial-gradient(
      circle,
      rgba(124,77,255,0.12),
      transparent 60%
    );

  filter: blur(80px);

  z-index: -1;

  pointer-events: none;
}

/* TABLET */

@media (max-width: 990px) {

  .mv-section {

    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 24px;
  }
}

/* MOBILE */

@media (max-width: 640px) {

  .mv-section {

    grid-template-columns: 1fr;

    padding-inline: 20px;
  }

  .mv-section h1 {

    margin-bottom: 40px;
  }
}
/* ==================================================
   CINEMATIC IMAGE TREATMENT
================================================== */

.mv-section .mv-card {

  position: relative;

  isolation: isolate;
}

/* IMAGE WRAP EFFECT */

.mv-section .mv-card::before {

  content: "";

  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      to top,
      rgba(5,5,5,0.75),
      transparent 45%
    );

  opacity: 0.9;

  z-index: 1;

  pointer-events: none;

  transition:
    opacity 0.45s ease;
}

/* IMAGE */

.mv-section .mv-card img {

  filter:
    saturate(1.05)
    contrast(1.02)
    brightness(0.92);

  transition:
    transform 0.7s ease,
    filter 0.7s ease;
}

/* CONTENT ABOVE OVERLAY */

.mv-section .mv-card h2,
.mv-section .mv-card p {

  position: relative;

  z-index: 2;
}

/* HOVER EFFECT */

.mv-section .mv-card:hover::before {

  opacity: 0.55;
}

.mv-section .mv-card:hover img {

  transform:
    scale(1.08);

  filter:
    saturate(1.15)
    brightness(1);
}
/* ==================================================
   GLOBAL AMBIENT LIGHTING
================================================== */

body::before,
body::after {

  content: "";

  position: fixed;

  width: 700px;
  height: 700px;

  border-radius: 50%;

  filter: blur(120px);

  z-index: -2;

  pointer-events: none;

  opacity: 0.16;
}

/* PURPLE LIGHT */

body::before {

  top: -250px;
  left: -180px;

  background:
    rgba(124,77,255,0.35);
}

/* TURQUOISE LIGHT */

body::after {

  bottom: -250px;
  right: -180px;

  background:
    rgba(0,255,213,0.22);
}

/* ==================================================
   GLOBAL SECTION FADE-IN
================================================== */

section,
.mv-section,
.shopify-section {

  animation:
    mvFadeUp 1s ease both;
}

@keyframes mvFadeUp {

  from {

    opacity: 0;

    transform:
      translateY(30px);
  }

  to {

    opacity: 1;

    transform:
      translateY(0);
  }
}
/* ==================================================
   CINEMATIC HERO
================================================== */

.hero,
.banner,
.hero-banner {

  position: relative;

  min-height: 92vh;

  display: flex;

  align-items: center;

  justify-content: center;

  overflow: hidden;

  padding:
    120px 40px;
}

/* HERO CONTENT */

.hero-content {

  position: relative;

  z-index: 3;

  max-width: 1100px;

  text-align: center;
}

/* HERO TITLE */

.hero-title {

  font-size:
    clamp(5rem, 9vw, 10rem);

  line-height: 0.9;

  letter-spacing: 0.04em;

  margin-bottom: 28px;

  text-transform: uppercase;
}

/* HERO TEXT */

.hero-text {

  font-size:
    clamp(1.6rem, 2vw, 2.2rem);

  color:
    rgba(255,255,255,0.72);

  max-width: 760px;

  margin:
    0 auto 42px;
}

/* HERO BACKGROUND OVERLAY */

.hero::before {

  content: "";

  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      to bottom,
      rgba(0,0,0,0.45),
      rgba(0,0,0,0.72)
    );

  z-index: 1;
}

/* HERO GLOW */

.hero::after {

  content: "";

  position: absolute;

  width: 900px;
  height: 900px;

  background:
    radial-gradient(
      circle,
      rgba(0,255,213,0.14),
      transparent 70%
    );

  filter:
    blur(90px);

  z-index: 0;

  pointer-events: none;
}

/* MOBILE */

@media (max-width: 640px) {

  .hero {

    min-height: 80vh;

    padding:
      100px 24px;
  }
}
/* ==================================================
   GLOBAL HEADING ALIGNMENT
================================================== */

h1,
h2,
h3,
.section-title,
.title,
.rich-text__heading,
.banner__heading,
.mv-section-title {

  text-align: center;

  margin-inline: auto;
}

/* OPTIONAL:
   CENTER TEXT UNDER HEADINGS
*/

.rich-text__text,
.banner__text,
.subtitle,
.section-subtitle {

  text-align: center;

  margin-inline: auto;
}

/* BETTER SPACING */

h1,
h2,
h3 {

  margin-bottom: 24px;
}
/* ==================================================
   GLOBAL BUTTON CENTERING
================================================== */

.button,
.buttons,
.button-wrapper,
.banner__buttons,
.shopify-payment-button,
.product-form__buttons {

  display: flex;

  justify-content: center;

  align-items: center;

  margin-inline: auto;
}

/* MULTIPLE BUTTON SPACING */

.buttons,
.banner__buttons,
.product-form__buttons {

  gap: 16px;

  flex-wrap: wrap;
}

/* INDIVIDUAL BUTTON */

.button,
button,
.btn {

  width: fit-content;
}
/* ==================================================
   MV CTA SECTION
================================================== */

.mv-cta {

  display: flex;

  justify-content: center;

  align-items: center;

  margin-top: 30px;
}

/* CTA TEXT */

.mv-cta-text {

  text-align: center;

  font-size:
    clamp(3rem, 5vw, 6rem);

  margin-bottom: 10px;

  letter-spacing: 0.04em;

  background:
    linear-gradient(
      90deg,
      #ffffff,
      #00ffd5
    );

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* BUTTON */

.mv-btn {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  padding:
    18px 34px;

  border-radius: 999px;

  background:
    linear-gradient(
      135deg,
      rgba(124,77,255,0.24),
      rgba(0,255,213,0.14)
    );

  border:
    1px solid rgba(255,255,255,0.08);

  color: white;

  font-weight: 600;

  letter-spacing: 0.1em;

  text-transform: uppercase;

  backdrop-filter:
    blur(14px);

  -webkit-backdrop-filter:
    blur(14px);

  box-shadow:
    0 10px 40px rgba(0,0,0,0.35);

  transition:
    transform 0.4s ease,
    box-shadow 0.4s ease,
    border-color 0.4s ease;
}

/* HOVER */

.mv-btn:hover {

  transform:
    translateY(-4px);

  border-color:
    rgba(0,255,213,0.3);

  box-shadow:
    0 0 30px rgba(0,255,213,0.18),
    0 14px 50px rgba(0,0,0,0.45);
}
/* ==================================================
   CINEMATIC SECTION DIVIDERS
================================================== */

section,
.mv-section,
.shopify-section {

  position: relative;
}

/* SOFT DIVIDER LINE */

section::after,
.mv-section::after,
.shopify-section::after {

  content: "";

  position: absolute;

  left: 50%;
  bottom: 0;

  transform:
    translateX(-50%);

  width: min(70%, 900px);

  height: 1px;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,0.08),
      rgba(0,255,213,0.14),
      rgba(255,255,255,0.08),
      transparent
    );

  opacity: 0.7;
}

/* REMOVE LAST DIVIDER */

footer::after,
#shopify-section-footer::after {

  display: none;
}
/* ==================================================
   BODY CURSOR LIGHT
================================================== */

body {

  background-image:
    radial-gradient(
      circle at var(--x, 50%) var(--y, 50%),
      rgba(0,255,213,0.12),
      transparent 220px
    ),

    radial-gradient(
      circle at top,
      rgba(0,255,213,0.06),
      transparent 35%
    ),

    radial-gradient(
      circle at bottom,
      rgba(124,77,255,0.08),
      transparent 40%
    );

  background-color:
    #050505;

  background-attachment:
    fixed;
}
/* ==================================================
   PREMIUM FOOTER
================================================== */

footer,
.footer {

  position: relative;

  padding:
    100px 40px 60px;

  background:
    linear-gradient(
      to top,
      rgba(255,255,255,0.03),
      transparent
    );

  border-top:
    1px solid rgba(255,255,255,0.06);

  overflow: hidden;
}

/* GLOW */

footer::before,
.footer::before {

  content: "";

  position: absolute;

  width: 700px;
  height: 700px;

  top: -300px;
  left: 50%;

  transform:
    translateX(-50%);

  background:
    radial-gradient(
      circle,
      rgba(124,77,255,0.16),
      transparent 70%
    );

  filter:
    blur(80px);

  pointer-events: none;
}

/* FOOTER CONTENT */

.footer__content-top,
.footer__content-bottom {

  position: relative;

  z-index: 2;
}

/* LINKS */

.footer a {

  color:
    rgba(255,255,255,0.7);

  transition:
    color 0.35s ease,
    opacity 0.35s ease;
}

.footer a:hover {

  color:
    var(--mv-turquoise);
}

/* TITLES */

.footer h2,
.footer h3,
.footer__heading {

  margin-bottom: 18px;

  letter-spacing: 0.08em;
}

/* COPYRIGHT */

.footer__copyright,
.footer__small-text {

  opacity: 0.6;

  font-size: 1.3rem;
}

/* MOBILE */

@media (max-width: 768px) {

  footer,
  .footer {

    padding:
      80px 24px 50px;
  }
}
/* ==================================================
   GLASS PANELS
================================================== */

.glass-section {

  position: relative;

  overflow: hidden;

  border-radius: 32px;

  padding:
    80px 60px;

  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,0.06),
      rgba(255,255,255,0.03)
    );

  border:
    1px solid rgba(255,255,255,0.08);

  backdrop-filter:
    blur(20px);

  -webkit-backdrop-filter:
    blur(20px);

  box-shadow:
    0 20px 60px rgba(0,0,0,0.35);

  isolation: isolate;
}

/* AMBIENT LIGHT */

.glass-section::before {

  content: "";

  position: absolute;

  inset: 0;

  background:
    radial-gradient(
      circle at top left,
      rgba(0,255,213,0.12),
      transparent 35%
    );

  pointer-events: none;

  z-index: -1;
}

/* MOBILE */

@media (max-width: 768px) {

  .glass-section {

    padding:
      50px 28px;

    border-radius: 24px;
  }
}
/* TEMP FIX FOR REVEAL */

.reveal,
.reveal-left,
.reveal-right,
.reveal-scale {

  opacity: 1 !important;

  transform: none !important;
}
/* ==================================================
   AMBIENT ORBS
================================================== */

.orb {

  position: fixed;

  border-radius: 999px;

  filter: blur(90px);

  opacity: 0.18;

  pointer-events: none;

  z-index: 0;

  animation:
    floatOrb 18s ease-in-out infinite;
}

/* ORB 1 */

.orb-1 {

  width: 340px;
  height: 340px;

  background:
    rgba(124,77,255,0.45);

  top: 10%;
  left: -100px;
}

/* ORB 2 */

.orb-2 {

  width: 420px;
  height: 420px;

  background:
    rgba(0,255,213,0.25);

  bottom: -120px;
  right: -120px;

  animation-delay: 4s;
}

/* ORB 3 */

.orb-3 {

  width: 260px;
  height: 260px;

  background:
    rgba(255,255,255,0.08);

  top: 50%;
  right: 20%;

  animation-delay: 8s;
}

/* FLOAT */

@keyframes floatOrb {

  0% {
    transform:
      translateY(0px)
      translateX(0px);
  }

  50% {
    transform:
      translateY(-40px)
      translateX(20px);
  }

  100% {
    transform:
      translateY(0px)
      translateX(0px);
  }
}
/* ==================================================
   CINEMATIC SECTION DIVIDERS
================================================== */

section,
.glass-section {

  position: relative;
}

/* DIVIDER */

section::after,
.glass-section::after {

  content: "";

  position: absolute;

  left: 50%;
  bottom: -40px;

  transform:
    translateX(-50%);

  width: 60%;

  height: 1px;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(124,77,255,0.45),
      rgba(0,255,213,0.45),
      transparent
    );

  opacity: 0.7;
}

/* LAST SECTION */

footer::before {

  content: "";

  position: absolute;

  top: 0;
  left: 50%;

  transform:
    translateX(-50%);

  width: 70%;

  height: 1px;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,0.12),
      transparent
    );
}
/* ==================================================
   LIVE SCROLL SWEEP
================================================== */

.sweep-text {

  position: relative;

  display: inline-block;

  overflow: hidden;
}

/* LIGHT SWEEP */

.sweep-text::after {

  content: "";

  position: absolute;

  top: -50%;

  left: var(--sweep-position, -120%);

  width: 80%;

  height: 220%;

  pointer-events: none;

  opacity: 0.9;

  transform:
    skewX(-25deg);

  filter:
    blur(12px);

  transition:
    left 0.12s linear;

  background:
  linear-gradient(
    120deg,
    transparent,
    var(--tier-sweep),
    transparent
  );
}
/* ==================================================
   CENTER ALL HEADERS
================================================== */

h1,
h2,
h3,
h4,
h5,
h6,
.mv-section-title,
.rich-text__heading,
.inline-richtext {

  width: 100%;

  text-align: center;

  margin-inline: auto;
}

/* CENTER HEADER CONTAINERS */

.title-wrapper-with-link,
.rich-text__wrapper,
.banner__content,
.multicolumn-card__info {

  text-align: center;
}
/* ==================================================
   PREMIUM HERO
================================================== */

.hero-card{

  position:relative;

  overflow:hidden;

  background:#000;

  border-radius:34px;

  border:
    1px solid rgba(255,255,255,.08);

  padding:
    70px 50px;

  text-align:center;

  min-height:auto;

  box-shadow:
    0 25px 80px rgba(0,0,0,.45);
}

/* LOGO */

.tier-logo{

  width:100%;

  max-width:240px;

  height:auto;

  object-fit:contain;

  margin:
    0 auto 30px;

  display:block;

  position:relative;

  z-index:2;

  filter:
    drop-shadow(0 0 30px rgba(124,77,255,.25));
}

/* CONTENT */

.hero-content{

  position:relative;
  z-index:2;
}

.hero-card h1{

  font-size:
    clamp(3rem,6vw,5rem);

  margin:0;
}

.tier{

  margin-top:12px;

  font-size:1.4rem;

  letter-spacing:.35em;

  opacity:.8;
}

/* SWEEP */

.light-sweep{

  position:absolute;

  inset:0;

  overflow:hidden;

  pointer-events:none;
}

.light-sweep::after{

  content:"";

  position:absolute;

  top:-40%;

  left:-150%;

  width:70%;

  height:220%;

  transform:
    skewX(-24deg);

  background:
    linear-gradient(
      120deg,
      transparent,
      {{ sweep_color }},
      transparent
    );

  filter:
    blur(30px);

  animation:
    heroSweep 8s ease-in-out infinite;
}

/* ANIMATION */

@keyframes heroSweep{

  0%{
    left:-150%;
  }

  50%{
    left:160%;
  }

  100%{
    left:160%;
  }
}

/* TIER GLOWS */

.tier-silver{

  box-shadow:
    0 0 50px rgba(255,255,255,.08);
}

.tier-gold{

  box-shadow:
    0 0 60px rgba(255,215,0,.12);
}

.tier-platinum{

  box-shadow:
    0 0 70px rgba(191,124,249,.18);
}
/* ==================================================
   CENTER PREMIUM HERO
================================================== */

.hero-card{

  display:flex;

  flex-direction:column;

  align-items:center;

  justify-content:center;

  text-align:center;
}

/* CONTENT */

.hero-content{

  width:100%;

  display:flex;

  flex-direction:column;

  align-items:center;

  justify-content:center;

  text-align:center;
}

/* TITLE */

.hero-card h1{

  width:100%;

  text-align:center;

  margin-inline:auto;
}

/* TIER */

.hero-card .tier,
.hero-card p{

  text-align:center;

  margin-inline:auto;
}
/* ==================================================
   HORIZONTAL BENEFIT CARDS
================================================== */

.benefits-grid{

  display:grid !important;

  grid-template-columns:
    repeat(3, minmax(280px,1fr)) !important;

  gap:30px;

  align-items:stretch;

  width:100%;

  max-width:1400px;

  margin:
    0 auto;
}

/* CARD */

.card{

  width:100%;

  min-height:260px;

  display:flex;

  flex-direction:column;

  justify-content:space-between;
}

/* BUTTON */

.card button{

  width:100%;
}

/* TABLET */

@media(max-width:990px){

  .benefits-grid{

    grid-template-columns:
      repeat(2, minmax(240px,1fr)) !important;
  }
}

/* MOBILE */

@media(max-width:640px){

  .benefits-grid{

    grid-template-columns:
      1fr !important;
  }
}
/* ==================================================
   CENTER SINGLE CUP CARD
================================================== */

.benefits-grid:has(.order-card:only-child){

  display:flex !important;

  justify-content:center !important;
}

/* SINGLE ORDER CARD */

.order-card{

  max-width:420px;

  width:100%;
}
/* ==================================================
   ORDER HISTORY
================================================== */

.order-history-grid{

  margin-top:20px;
}

/* CARD */

.order-history-card{

  text-align:left;

  min-height:unset;
}

/* TITLE */

.order-history-card h3{

  margin-bottom:16px;
}

/* TEXT */

.order-history-card p{

  margin:8px 0;

  opacity:.75;
}

/* BUTTON */

.order-view-btn{

  display:inline-flex;

  align-items:center;

  justify-content:center;

  margin-top:24px;

  width:100%;

  padding:14px;

  border-radius:14px;

  background:
    linear-gradient(
      135deg,
      #7c3aed,
      #06b6d4
    );

  color:white;

  font-weight:600;

  letter-spacing:.08em;

  transition:.3s ease;
}

.order-view-btn:hover{

  transform:
    translateY(-2px);

  opacity:.92;
}
/* ==================================================
   PREMIUM PAGE TIER SWEEPS
================================================== */

/* SILVER */

.tier-silver .sweep-text::after{

  background:
    linear-gradient(
      120deg,
      transparent,
      rgba(255,255,255,.75),
      transparent
    ) !important;
}

/* GOLD */

.tier-gold .sweep-text::after{

  background:
    linear-gradient(
      120deg,
      transparent,
      rgba(255,215,0,.85),
      transparent
    ) !important;
}

/* PLATINUM */

.tier-platinum .sweep-text::after{

  background:
    linear-gradient(
      120deg,
      transparent,
      rgba(191,124,249,.9),
      transparent
    ) !important;
}
/* ==================================================
   CUP MODAL
================================================== */

.cup-modal{

  position:fixed;

  inset:0;

  background:
    rgba(0,0,0,.75);

  backdrop-filter:
    blur(12px);

  display:none;

  align-items:center;

  justify-content:center;

  z-index:9999;
}

/* ACTIVE */

.cup-modal.active{

  display:flex;
}

/* INNER */

.cup-modal-inner{

  width:90%;

  max-width:460px;

  background:#050505;

  border:
    1px solid rgba(255,255,255,.08);

  border-radius:28px;

  padding:40px;

  text-align:center;

  position:relative;
}

/* OPTIONS */

.cup-options{

  display:grid;

  grid-template-columns:
    repeat(2,1fr);

  gap:20px;

  margin-top:30px;
}

/* CLOSE */

.cup-close{

  position:absolute;

  top:16px;
  right:16px;

  width:38px;
  height:38px;

  border:none;

  border-radius:50%;

  background:
    rgba(255,255,255,.08);

  color:white;

  cursor:pointer;
}
.sweep-text{
  position:relative;
  display:inline-block;
  overflow:hidden;
}

.sweep-text{

  position:relative;

  display:inline-block;

  overflow:hidden;
}

.sweep-text::after{

  content:"";

  position:absolute;

  top:-50%;

  left:var(--sweep-position,-120%);

  width:120%;

  height:220%;

  pointer-events:none;

  transform:skewX(-25deg);

  filter:blur(10px);

  opacity:.95;

  transition:left .08s linear;

  background:

    linear-gradient(
      120deg,
      transparent,
      rgba(124,77,255,0.15),
      rgba(0,255,213,0.75),
      rgba(124,77,255,0.15),
      transparent
    );
}
/* =========================
   SHOP DROPDOWN FIX
========================= */

.header__submenu,
.list-menu--disclosure{

  min-width:240px !important;

  width:max-content !important;

  padding:14px 0 !important;

  background:rgba(10,10,10,.96) !important;

  backdrop-filter:blur(18px);

  border:1px solid rgba(255,255,255,.12);

  border-radius:18px;

  overflow:hidden;
}

/* DROPDOWN ITEMS */

.header__submenu .list-menu__item,
.list-menu--disclosure .list-menu__item{

  display:flex !important;

  align-items:center;

  justify-content:flex-start;

  width:100%;

  white-space:nowrap !important;

  padding:14px 22px !important;

  font-size:18px;

  line-height:1.2;

  text-align:left !important;
}

/* REMOVE SWEEP EFFECT INSIDE MENU */

.header__submenu .sweep-text::after,
.list-menu--disclosure .sweep-text::after{

  display:none !important;
}

/* REMOVE WRAPPING */

.header__submenu a,
.list-menu--disclosure a{

  white-space:nowrap !important;
}
scroll-behavior: smooth;
header,
.header,
.header-wrapper{

  position:relative;

  z-index:9999;
}

.hero-rays,
.premium-overlay,
#mv-cursor{

  pointer-events:none !important;
}
/* =========================
   MOBILE MENU FIX
========================= */

/* =================================
   REMOVE DEFAULT DETAILS ARROW
================================= */

summary{
  list-style:none;
}

summary::-webkit-details-marker{
  display:none;
}

summary::marker{
  display:none;
  content:"";
}

/* =================================
   FORCE DRAWER ABOVE EVERYTHING
================================= */

.menu-drawer-container{

  position:relative !important;

  z-index:9999999 !important;
}

.menu-drawer{

  position:fixed !important;

  top:0 !important;
  left:0 !important;

  width:100vw !important;
  height:100vh !important;

  z-index:99999999 !important;

  background:#050505 !important;

  overflow-y:auto !important;

  transform:translateX(-100%);
  transition:transform .35s ease;
}

/* OPEN */

.menu-drawer-container[open] .menu-drawer{

  transform:translateX(0);
}

/* OVERLAY */

.menu-drawer-overlay{

  position:fixed !important;

  inset:0 !important;

  background:rgba(0,0,0,.65);

  z-index:99999998 !important;
}

/* HEADER */

.section-header,
.header-wrapper,
header-drawer{

  position:relative !important;

  z-index:99999999 !important;
}
/* =================================
   FINAL MOBILE DRAWER FIX
================================= */

#shopify-section-header{
  position:relative !important;
  z-index:999999999 !important;
  overflow:visible !important;
}

header-drawer,
.menu-drawer-container{
  position:static !important;
  overflow:visible !important;
}

.menu-drawer{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100dvh !important;

  background:#050505 !important;

  z-index:2147483647 !important;

  overflow-y:auto !important;

  transform:translateX(-100%);
  transition:transform .35s ease !important;
}

.menu-drawer-container[open] .menu-drawer{
  transform:translateX(0) !important;
}

/* CRITICAL */

.shopify-section,
.banner,
.image-banner,
.slideshow,
.hero,
.hero-banner{
  overflow:visible !important;
}
/* =================================
   MOBILE MENU ICON TOGGLE FIX
================================= */

/* HIDE X BY DEFAULT */

.close-custom{
  display:none;
}

/* WHEN MENU IS OPEN */

.menu-drawer-container[open] .hamburger-custom{
  display:none;
}

.menu-drawer-container[open] .close-custom{
  display:block;
}

/* ICON STYLING */

.hamburger-custom,
.close-custom{

  font-size:32px;

  color:#fff;

  line-height:1;

  display:flex;

  align-items:center;

  justify-content:center;
}
/* =================================
   MOBILE MENU ICON STATE
================================= */

.close-custom{
  display:none !important;
}

.hamburger-custom{
  display:flex !important;
}

/* WHEN DETAILS IS OPEN */

details[open] .hamburger-custom{
  display:none !important;
}

details[open] .close-custom{
  display:flex !important;
}

.hamburger-custom,
.close-custom{

  width:32px;
  height:32px;

  align-items:center;
  justify-content:center;

  font-size:30px;
  line-height:1;

  color:#fff;
}
/* =================================
   HARD RESET MENU ICONS
================================= */

.custom-mobile-toggle{
  position:relative;
}

.hamburger-custom,
.close-custom{

  position:absolute;

  top:50%;
  left:0;

  transform:translateY(-50%);

  width:32px;
  height:32px;

  font-size:32px;
  line-height:32px;

  color:#fff;

  text-align:center;
}

/* DEFAULT */

.hamburger-custom{
  opacity:1 !important;
  visibility:visible !important;
}

.close-custom{
  opacity:0 !important;
  visibility:hidden !important;
}

/* OPEN STATE */

details[open] .hamburger-custom{
  opacity:0 !important;
  visibility:hidden !important;
}

details[open] .close-custom{
  opacity:1 !important;
  visibility:visible !important;
}
/* =================================
   DRAWER CLOSE BUTTON
================================= */

.drawer-close-btn{

  position:absolute;

  top:24px;
  right:24px;

  width:44px;
  height:44px;

  border:none;

  background:transparent;

  color:#fff;

  font-size:34px;

  line-height:1;

  cursor:pointer;

  z-index:999999999;
}
/* =================================
   MOBILE HERO TEXT FIX
================================= */

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

  .cinematic-wrap{

    padding: 20px 16px !important;
  }

  .cinematic-text{

    font-size: 34px !important;

    line-height: 0.95 !important;

    letter-spacing: -1px !important;

    margin: 0 !important;
  }

  .cinematic-text span{

    display: block;
  }
}
/* =================================
   MOBILE MENU SPACING FIX
================================= */

.menu-drawer__menu{

  display:flex !important;

  flex-direction:column !important;

  gap:28px !important;

  padding:40px 30px !important;
}

.menu-drawer__menu li{

  margin:0 !important;

  padding:0 !important;

  line-height:1 !important;
}

.menu-drawer__menu-item{

  display:block !important;

  font-size:24px !important;

  line-height:1.1 !important;

  padding:0 !important;

  margin:0 !important;

  min-height:auto !important;
}

/* SUBMENU FIX */

.menu-drawer__submenu{

  margin-top:18px !important;

  padding-left:20px !important;
}

/* CHILD LINKS */

.menu-drawer__submenu .menu-drawer__menu{

  gap:18px !important;

  padding:0 !important;
}
/* =================================
   MOBILE SUBMENU FIX
================================= */

.menu-item-has-children{

  display:flex !important;

  flex-direction:column !important;
}

/* SUBMENU */

.menu-drawer__submenu{

  position:relative !important;

  display:block !important;

  width:100% !important;

  margin-top:18px !important;

  padding-left:20px !important;

  background:transparent !important;
}

/* CHILD MENU */

.menu-drawer__submenu .menu-drawer__menu{

  display:flex !important;

  flex-direction:column !important;

  gap:16px !important;
}
/* =================================
   REMOVE RANDOM TOP LEFT ARROW
================================= */

header-drawer::before,
header-drawer::after,
.menu-drawer-container::before,
.menu-drawer-container::after,
summary::before,
summary::after{

  content:none !important;

  display:none !important;
}
/* =================================
   REMOVE ALL SUMMARY ARROWS
================================= */

summary::-webkit-details-marker{
  display:none !important;
}

summary::marker{
  display:none !important;
}

summary::before,
summary::after{
  display:none !important;
  content:none !important;
}

/* DAWN CHEVRONS */

.icon-caret{
  display:none !important;
}
/* =========================
   BENEFIT ICONS
========================= */

.benefit-icon{

  font-size:52px;

  margin-bottom:20px;

  display:flex;

  align-items:center;

  justify-content:center;

  opacity:.95;
}
/* =================================
   FINAL PRODUCT IMAGE FIX
================================= */

.template-product .page-width{
  max-width:1600px !important;
}

/* PRODUCT LAYOUT */

.template-product .product{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 480px !important;
  gap:60px !important;
  align-items:start !important;
}

/* LEFT COLUMN */

.template-product .product__media-wrapper{
  width:100% !important;
  max-width:100% !important;
  flex:none !important;
}

/* RIGHT COLUMN */

.template-product .product__info-wrapper{
  width:480px !important;
  max-width:480px !important;
}

/* REMOVE ALL IMAGE LIMITS */

.template-product .media,
.template-product .product__media,
.template-product .product__media-item,
.template-product .product__modal-opener,
.template-product .product__media img{

  width:100% !important;
  max-width:100% !important;
  height:auto !important;
}

/* FORCE LARGE IMAGE */

.template-product .product__media img{
  object-fit:contain !important;
  display:block !important;
}

/* REMOVE DAWN ASPECT RATIO SYSTEM */

.template-product .media::before{
  content:none !important;
  display:none !important;
}

/* MOBILE */

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

  .template-product .product{
    grid-template-columns:1fr !important;
  }

  .template-product .product__info-wrapper{
    width:100% !important;
    max-width:100% !important;
  }
}
.product__media-wrapper img {
  width: 100% !important;
  height: auto !important;
  display: block;
}
.variant-input,
.product-form__input,
.product-form__buttons,
fieldset.product-form__input {
  border: none !important;
}

.product-form__input input[type="radio"] + label,
.product-form__input--pill input[type="radio"] + label,
.product-form__input--pill input[type="checkbox"] + label,
.product-form__input .swatch-input__input + label,
.product-form__input .select,
.product-form__input select {
  border: 1px solid rgba(255,255,255,0.25) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,0.04) !important;
  color: #fff !important;
  padding: 12px 18px !important;
  transition: all .25s ease !important;
  box-shadow: none !important;
}

.product-form__input input[type="radio"]:checked + label,
.product-form__input--pill input[type="radio"]:checked + label,
.product-form__input--pill input[type="checkbox"]:checked + label,
.product-form__input .swatch-input__input:checked + label {
  border-color: #fff !important;
  background: rgba(255,255,255,0.12) !important;
  color: #fff !important;
}

.product-form__input input[type="radio"] + label:hover,
.product-form__input--pill input[type="radio"] + label:hover,
.product-form__input .swatch-input__input + label:hover {
  border-color: #fff !important;
  background: rgba(255,255,255,0.08) !important;
}

.product-form__input label {
  min-width: 60px !important;
  justify-content: center !important;
}
@media screen and (max-width: 749px) {

  .banner__media img,
  .banner__media video{
    object-fit: contain !important;
    transform: scale(0.7) !important;
    transform-origin: center center !important;
  }

}
.faq-section .faq-item,
.faq-section details{
  margin-bottom:16px;
  border:1px solid rgba(255,255,255,0.12);
  border-radius:18px;
  background:rgba(255,255,255,0.03);
  backdrop-filter:blur(8px);
  overflow:hidden;
  transition:all .3s ease;
}

.faq-section details[open]{
  background:rgba(255,255,255,0.05);
}

.faq-section summary{
  font-size:18px;
  font-weight:700;
  letter-spacing:1px;
  padding:20px;
}
.page-width {
  max-width: 1200px;
}
.faq-title{
  font-size: clamp(2.5rem,5vw,5rem);
  text-align:center;
  color:white;
  letter-spacing:4px;
  margin-bottom:10px;
}

.faq-subtitle{
  text-align:center;
  color:rgba(255,255,255,.7);
  margin-bottom:60px;
}
.product-form__submit {
    position: relative;
    z-index: 999;
}

.sticky-atc,
.mobile-overlay,
.popup,
.drawer {
    pointer-events: none;
}