
/* === JAMSAE BRAND STYLE - WATERLOCK SCOPED === */
:root {
  --j-black: #111111;
  --j-white: #ffffff;
  --j-light: #f5f5f5;
  --j-mid: #e0e0e0;
  --j-font: 'Montserrat', 'Arial', sans-serif;
  --j-max: 920px;
}

main {
  font-family: var(--j-font) !important;
  color: var(--j-black) !important;
  max-width: var(--j-max) !important;
  margin: 0 auto !important;
  padding: 48px 24px !important;
  line-height: 1.75 !important;
  display: block;
  box-sizing: border-box !important;
}

/* Video Responsive Container Fix */
main .video-wrapper {
  position: relative;
  width: 100% !important;
  aspect-ratio: 16 / 9;
  margin-bottom: 30px;
  background: #000;
  overflow: hidden;
  border-radius: 4px;
  /* Ensure parent allows full expansion */
  z-index: 1;
}

@supports not (aspect-ratio: 16/9) {
  main .video-wrapper {
    height: 0;
    padding-bottom: 56.25%;
  }
}

main .video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  border: 0;
  object-fit: contain;
  /* Allow clicks to pass through correctly */
  pointer-events: auto !important;
}

main h1 {
  font-size: 2em !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: var(--j-black) !important;
  margin-bottom: 20px !important;
}

main h2 {
  font-size: 1.05em !important;
  font-weight: 700 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  color: var(--j-black) !important;
  margin-top: 48px !important;
  margin-bottom: 14px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid var(--j-mid) !important;
}

main h3 {
  font-size: 1em !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  color: var(--j-black) !important;
  margin-bottom: 10px !important;
  text-transform: uppercase !important;
}

main p, main li {
  font-family: var(--j-font) !important;
  font-size: .93em !important;
  color: #333 !important;
  margin-bottom: 14px !important;
  line-height: 1.8 !important;
}

main strong, main b { font-weight: 700 !important; }

main ul, main ol { margin-bottom: 24px !important; padding-left: 20px !important; }

main img {
  max-width: 100% !important;
  height: auto !important;
  display: block;
  margin: 24px auto;
}

/* Global Navigation & Footer Overrides */
header a, 
.header-container a, 
.header-navigation a, 
.nav-item a, 
.menu-item a, 
.header-right-meta a, 
.header-right-meta span, 
.shopping-bag-count, 
.main_title {
  color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

#footer a, #footer dt, .ly_footer_74 a, .ly_footer_74 dt { color: #ffffff !important; }
#footer a:hover, .ly_footer_74 a:hover { color: #cccccc !important; }
.main_title { color: #ffffff !important; }

@media(max-width:640px) {
  main { padding: 32px 16px !important; }
  main h1 { font-size: 1.5em !important; }
  main .video-wrapper {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
