 body.intro-active {
    overflow: hidden;
   display: none;
  }

  #intro-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgb(0, 0, 0);
  z-index: 10000; /* 👈 bump this to be above header */
  display: flex;
  justify-content: center;
  align-items: center;
  transition: opacity 1s ease-out;
}


  #intro-overlay.hide {
    opacity: 0;
    pointer-events: none;
    
  }

  .intro-logo {
    width: 703px;
    height: auto;
    opacity: 0;
    animation: glowFadeIn 2s ease-in-out 1s forwards, logoFadeOut 1s ease-out 4s forwards;
  }



  @keyframes glowFadeIn {
    0% {
      opacity: 0;
      filter: drop-shadow(0 0 5px #0ff);
    }
    50% {
      opacity: 1;
      filter: drop-shadow(0 0 20px #0ff);
    }
    100% {
      opacity: 1;
      filter: drop-shadow(0 0 10px #0ff);
    }
  }

  @keyframes logoFadeOut {
    to {
      opacity: 0;
    }
  }
      

    :root {
      --bg-color: #000;
      --text-color: #fff;
      --card-bg: #222;
      --card-border: #00bcd4;
      --accent: #00adc3;
      --glow: rgba(0, 226, 255, 0.6);
      --input-bg: #222;
      --input-border: #00bcd4;
    }

    [data-theme="light"] {
      --bg-color: #ffffff;
      --text-color: #000;
      --card-bg: #cbcaca;
      --card-border: #00a3b9;
      --accent: #0098ac;
      --glow: rgba(0, 226, 255, 0.6);
      --input-bg: #e7e7e7;
      --input-border: #008393;
      --card-glow: #008ea0;
    }

    *, *::before, *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }
@keyframes pulseGlow {
  0% {
    box-shadow: 0 0 10px var(--glow), 0 0 5px var(--glow);
  }
  50% {
    box-shadow: 0 0 10px var(--glow), 0 0 5px var(--glow);
  }
  100% {
    box-shadow: 0 0 10px var(--glow), 0 0 5px var(--glow);
  }
}

    body {
      font-family: Arial, sans-serif;
      background: var(--bg-color);
      color: var(--text-color);
      transition: background 0.3s, color 0.3s;
      margin: 0;
      padding-top: 80px !important;
    }

  .sticky-header {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background: #000 !important;
  color: #fff;
  padding: 0.5rem;
  width: 100%;
  box-shadow: 0 2px 10px var(--glow); /* ✅ fix: use glow variable */
  display: flex;
  align-items: center;
  justify-content: space-between;
    opacity: 90%;
}




    .logo {
      height: 35px;
      filter: drop-shadow(0 0 5px var(--accent));
      flex-shrink: 0;

    }
     .logo:hover,
    .logo:focus{
      
        transition: transform 0.2s ease, filter 0.2s ease;
      filter: drop-shadow(0 0 8px var(--accent));
      transform: scale(1.15);
    }

    .header-controls {
      margin-left: auto;
      display: flex;
      align-items: center;
      gap: 0.4rem;
    }
/* --- Base Container --- */
.search-container {
  position: relative;
  margin-left: 18PX;
}

.search-form {
  position: relative;
  display: flex;
  align-items: center;
}

.search-input {
  padding: 0.7rem 2.4rem 0.6rem 1rem; /* right space for icon */
  font-size: 1rem;
  border: 2px solid var(--card-border);
  border-radius: 10px;
  background: var(--input-bg);
  color: var(--text-color);
  box-shadow: 0 0 10px var(--glow);
  width: 196px;
  transition: box-shadow 0.3s;
}

/* Icon inside input */
.search-icon {
  position: absolute;
  right: 3px;
  font-size: 1.8rem;
  color: var(--accent);
  pointer-events: none;
}

/* MOBILE icon-only */
.mobile-search-icon {
  display: none;
  background: none;
  border: none;
  font-size: 1.9rem;
  color: var(--accent);
  cursor: pointer;
line-height: 25.4px;
  margin-left: -10PX;

}

/* Dropdown for mobile search */
.mobile-search-form {
  display: none;
  position: absolute;
  top: 120%;
  left: 0;
  background: var(--card-bg);
  border: 2px solid var(--card-border);
  border-radius: 10px;
  box-shadow: 0 0 18px var(--glow);
  padding: 0.3rem;
  z-index: 999;
}

.search-container.active .mobile-search-form {
  display: block;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .search-form {
    display: none;
  }

  .mobile-search-icon {
    display: inline-block;
  }

  .mobile-search-form .search-input {
    width: 200px;
  }
}



.hamburger {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
  width: 25px;
  height: 25px;
  background: black;
  border: none;
  padding: 0;
  cursor: pointer;
  margin-bottom: -2px;
}

.hamburger span {
  display: block;
  width: 100%;
  height: 3px;
  background: #fff;
  border-radius: 1px;
  transition: background 0.3s, transform 0.2s ease, filter 0.2s ease;
}

.hamburger:hover span,
.hamburger:focus span {
  background: var(--accent, #f39c12); 
  filter: drop-shadow(0 0 8px var(--accent, #f39c12));
  transform: scale(1.15);
}

.theme-toggle {
  background: none;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
}


    .theme-toggle:hover,
    .theme-toggle:focus {
      transition: transform 0.2s ease, filter 0.2s ease;
      filter: drop-shadow(0 0 8px var(--accent));
      color: #000;
      transform: scale(1.15);
    }
.social-icons {
  display: flex;
  gap: 0.71rem;
  align-items: center;
  margin-right: 6px;
  margin-block: 6px;
  margin-bottom: -2px
    }
 

.social-icons a img {
  width: 27px;
  height: 27px;
  filter: drop-shadow(0 0 4px var(--accent));
  transition: transform 0.2s ease, filter 0.2s ease;
  
}

.social-icons a:hover img {
  transform: scale(1.15);
  filter: drop-shadow(0 0 6px var(--glow));
}

    .mobile-menu {
      display: none;
      flex-direction: column;
      position: absolute;
      top: 52px;
      right: 1rem;
      background: var(--bg-color);
      border: 3px solid var(--card-border);
      border-radius: 14px;
      box-shadow: 0 0 19px var(--glow);
      z-index: 1100;
      list-style: none;
      min-width: 119px;
    
    }
    

    .mobile-menu.show {
      display: flex;
    }


.mobile-menu a {
  display: block;
  padding: 1rem 1.5rem;
  color: var(--text-color);
  font-weight: bold;
  text-decoration: none;
  border-bottom: 22px solid var(--card-border); 
  transition: background 0.3s, color 0.3s;
}

.mobile-menu a:hover {
  background-color: var(--glow); 
  color: var(--accent-color);
  border-radius: 11px;
}

.mobile-menu a:last-child {
  border-bottom: 18px;
}
    .mobile-menu a {
      display: block;
      padding: 1rem 1.5rem;
      color: var(--text-color);
      font-weight: bold;
      text-decoration: none;
 
    }

    .mobile-menu a:last-child {
      border-bottom: none;
    }

    nav .nav-links {
      display: none;
    }

 :root {
  --accent: #00bcd4; /* or whatever glow color you prefer */
}

.hero {
  background: #000 !important;
  text-align: center;
  padding: 2rem 1rem;
}

.hero-logo {
  max-width: 600px;
  width: 100%;
  height: auto;
  animation: pulseGlow 2.2s infinite ease-in-out;
  filter: drop-shadow(0 0 5px var(--accent)) drop-shadow(0 0 10px var(--accent));
}

/* Pulsing animation */
@keyframes pulseGlow {
  0%, 100% {
    filter: drop-shadow(0 0 5px var(--accent)) drop-shadow(0 0 10px var(--accent));
  }
  50% {
    filter: drop-shadow(0 0 10px var(--accent)) drop-shadow(0 0 20px var(--accent));
  }
}

    .tagline {
      font-size: 1.5rem;
      margin-top: 1rem;
      color: white;
      font-family: 'montserrat', semi-bold;
letter-spacing: 0.1rem;
    }

.below-tagline-menu {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 2rem auto;
  text-align: center;
}


.glow-nav-btn {
  padding: 12px 24px;
  font-size: 18px;
  margin: 5px;
  display: inline-block;
  text-decoration: none;
  border: 2px solid var(--card-border);
  border-radius: 10px;
  background: var(--input-bg);
  color: var(--text-color);
  box-shadow: 0 0 10px var(--glow);
  transition: all 0.3s ease;}


.glow-nav-btn:hover,
.glow-nav-btn:focus {
  background: var(--accent);
  color: #000;
  transform: scale(1.08);
  box-shadow: 0 0 16px var(--accent);
}


    .tagline-divider,
    hr {
      height: 3px;
      width: 100%;
      margin: 2rem auto;
      background: var(--accent);
      border: none;
     filter: drop-shadow(0 0 6px #00bcd4);
      position: relative;
    }

    hr,
    .tagline-divider {
      background-color: var(--accent);
      border: none;
      height: 2px;
      box-shadow: 0 0 16px var(--glow);
    }
.neon-border {

  padding: 0.5em 1.2em;               /* smaller padding on mobile */
  border: 2px solid var(--card-border);
  border-radius: 13px;
  position: relative;
  color: var(--card-border);
  font-size: 0.85rem;                 /* smaller text */
  text-align: center;
  box-sizing: border-box;
  word-wrap: break-word;
  white-space: normal;
  margin-top: -25px;
  margin-left: 10px;
  margin-right: 10px;
}

/* Tablet and up */
@media (min-width: 768px) {
  .neon-border {
    font-size: 1rem;
    padding: 1em 3em;
  }
}

/* Large screens */
@media (min-width: 1200px) {
  .neon-border {
    font-size: 1rem;
    padding: 1rem 20em;
  }
}

 @media (max-width: 497px) {
.neon-border, h2 {
    font-size: 1px;
    padding: 1em 1em;
  }
}


    main > section {
      border-bottom: 1px solid var(--card-border);
      padding: 2rem 1rem;
    }

    main > section:last-child {
      border-bottom: none;
      margin-bottom: 0;
      padding-bottom: 0;
    }

    .content-section {
      max-width: 2993px;
      margin: auto;
    }
  .shop-section {
  text-align: center;
  padding: 60px 0;
  background-color: #000;
  position: relative;
}

.shop-container {
  display: flex;
  overflow-x: auto;
  gap: 2rem;
  padding: 4rem;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #00bcd4 #111;
  -webkit-overflow-scrolling: touch;
 
}

.shop-item {
  flex: 0 0 auto;
  width: 300px;
  background: rgba(0, 0, 0, 0.6);
  border: 2px solid #00bcd4;
  border-radius: 12px;
  padding: 1rem;
  scroll-snap-align: center;
  transition: transform 0.3s, box-shadow 0.3s;
  color: #00bcd4;
  background-color: #222;
  box-shadow: var(--card-glow, 0 0 26px var(--glow));
}



.shop-item img {
  width: 88%;
  border-radius: 8px;
  margin-bottom: 0.5rem;
}
 .content-section2 {
      max-width: 2993px;
      margin: auto;
    }
  .shop-section2 {
  text-align: center;
  padding: 60px 0;
  background-color: #000;
  position: relative;
}

.shop-container2 {
  display: flex;
  overflow-x: auto;
  gap: 11rem;
  padding: 4rem;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #00bcd4 #111;
  -webkit-overflow-scrolling: touch;
 align-content: center;
}

.shop-item2 {
  flex: 0 0 auto;
  width: 300px;
  background: rgba(0, 0, 0, 0.6);
  border: 2px solid #00bcd4;
  border-radius: 16px;
  padding: 1rem;
  scroll-snap-align: center;
  transition: transform 0.3s, box-shadow 0.3s;
  color: #00bcd4;
  background-color: #222;
  box-shadow: var(--card-glow, 0 0 26px var(--glow));

  align-content: center;
}




.shop-item img {
  width: 88%;
  border-radius: 8px;
  margin-bottom: 0.5rem;
}
.shop-item3{
  flex: 0 0 auto;
  width: 385px;
  background: rgba(0, 0, 0, 0.6);
  border: 2px solid #00bcd4;
  border-radius: 12px;
  padding: 1rem;
  scroll-snap-align: center;
  transition: transform 0.3s, box-shadow 0.3s;
  color: #00bcd4;
  background-color: #222;
  box-shadow: var(--card-glow, 0 0 26px var(--glow));
margin-bottom: 50px;
}
.shop-item3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.shop-item3 img
 {
  width: 88%;
  border-radius: 8px;
  margin-bottom: 0.5rem;

}

/* === MORE INFO OVERLAY – WORKS ON ALL SIZES === */

.shop-item3 {
  position: relative;
  overflow: hidden;
}

.more-info-btn {
  display: block;
  width: 100%;
  text-align: center;
  background: transparent;
  color: var(--accent);
  border: 2px solid var(--card-border);
  padding: 0.7rem 1rem;
  border-radius: 10px;
  cursor: pointer;
  font-weight: bold;
  margin-top: 0.75rem;
  box-shadow: 0 0 10px var(--glow);
  transition: all 0.25s ease;
}

.more-info-btn:hover {
  background: var(--accent);
  color: #000;
  box-shadow: 0 0 16px var(--accent);
  transform: scale(1.03);
}

.card-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: rgba(10, 10, 10, 0.96);
  border-radius: 12px;
  color: var(--text-color);
  display: none;
  padding: 1.5rem;
  z-index: 5;
  overflow-y: auto; /* so Close is reachable if content is tall */
}

.card-overlay.active {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

.overlay-content {
  width: 100%;
  max-width: 90%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  text-align: center;
}

.close-overlay {
  margin-top: auto;
  align-self: center;
  background: var(--accent);
  color: #000;
  border: none;
  padding: 0.6rem 1.4rem;
  border-radius: 8px;
  cursor: pointer;
  font-weight: bold;
  box-shadow: 0 0 10px var(--glow);
  transition: all 0.2s ease;
}

.close-overlay:hover {
  transform: scale(1.03);
  box-shadow: 0 0 14px var(--accent);
}

.shop-item4 {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

@media (min-width: 900px) {
  .shop-item4 {
    grid-column: 2 / 3; /* Center column only on desktop */
  }
}

@media (max-width: 899px) {
  .shop-item4 {
    grid-column: 1 / -1; /* Full width on tablet and mobile */
  }
}

.shop-item4{
  flex: 0 0 auto;
  width: 385px;
  background: rgba(0, 0, 0, 0.6);
  border: 2px solid #00bcd4;
  border-radius: 12px;
  padding: 1rem;
  scroll-snap-align: center;
  transition: transform 0.3s, box-shadow 0.3s;
  color: #00bcd4;
  background-color: #222;
  box-shadow: var(--card-glow, 0 0 26px var(--glow));
margin-bottom: 50px;
}


.product-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 30px;
  padding: 20px;
  justify-items: center; /* ← THIS centers ALL grid children horizontally */
}

@media (min-width: 600px) {
  .product-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 900px) {
  .product-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.shop-item3,
.shop-item4 {
  width: 100%;
  max-width: 320px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.about-card {
  background: var(--card-bg);
  border: 2px solid var(--card-border);
  border-radius: 10px;
  padding: 1.5rem;
  margin: 1rem auto;
  max-width: 800px;
  box-shadow: var(--card-glow, 0 0 26px var(--glow));
  transition: transform 0.3s;
  
}

.about-card:hover {
  animation: pulseGlow 2.2s infinite ease-in-out;
  transform: translateY(-5px) scale(1.01);
      }

    #about {
      text-align: center;
      margin-bottom: 2px;
    }
.supplement-card-supplements{ 
  background: var(--card-bg);
  border: 2px solid var(--card-border);
  border-radius: 10px;
  padding: 2.2rem;
  margin: 1rem auto;
  max-width: 1183px;
  box-shadow: var(--card-glow, 0 0 26px var(--glow));
  transition: transform 0.3s;
text-align: center; 
  margin-bottom: 30px;
}
.supplement-card-supplements:hover{
  animation: pulseGlow 2.2s infinite ease-in-out;
  transform: translateY(-5px) scale(1.01);
      }

.supplement-card-supplements1{ 
  background: var(--card-bg);
  border: 2px solid var(--card-border);
  border-radius: 10px;
  padding: 2.9rem;
  margin: 1rem auto;
  max-width: 850px;
  box-shadow: var(--card-glow, 0 0 26px var(--glow));
  transition: transform 0.3s;
  text-align: center;
  margin-bottom: 30px;
  
}

.supplement-card-supplements1:hover{
  animation: pulseGlow 2.2s infinite ease-in-out;
  transform: translateY(-5px) scale(1.01);
      }


.supplement-card-supplements, h2{
  color: var(--accent);
}

.supplement-card-coaching {
  max-width: 800px;
  margin: 40px auto;
  padding: 30px;
  background: #222;
  border-radius: 20px;
  text-align: center;
  border: 2px solid var(--card-border);
  box-shadow: var(--card-glow, 0 0 26px var(--glow));
  
}
.supplement-card-coaching, ul{
  line-height: 1.2rem
}

.supplement-card-coaching, h1{
  color: #00bcd4
}



.supplement-card-coaching:hover{ animation: pulseGlow 2.2s infinite ease-in-out;
  transform: translateY(-5px) scale(1.01);}

.supplement-card-coaching .section-title {
  color: #00bcd4;
  font-size: 2rem;
  margin-bottom: 20px;
  letter-spacing: 1px;
}

.coach-profile {
  margin: 0 auto 20px;

}

.coaching {
  width: 300px;
  height: 300px;
  object-fit: cover;
  border-radius: 24%;
  border: 4px solid #00bcd4;
  box-shadow: 0 4px 12px #00bcd4;
}

.coach-profile h3 {
  margin-top: 15px;
  font-size: 1.5rem;
  color: #00bcd4;

}

.coach-bio p {
  color: #333;
  line-height: 1.7;
  font-size: 1rem;
  margin-bottom: 18px;
}

@media (max-width: 768px) {
  .supplement-card-coaching {
    padding: 40px 30px;
      margin-left: 15px;
    margin-right: 15px;
  }

  .coach-container {
    gap: 30px;
  }

  .coaching {
    width: 220px;
    height: 220px;
  }

  .coach-bio p {
    font-size: 1rem;
  }
}

/* ---------- Mobile (600px and below) ---------- */
@media (max-width: 600px) {
  .supplement-card-coaching {
    padding: 30px 32px;
    margin-left: 15px;
    margin-right: 15px;
  }

  .coach-container {
    flex-direction: column;
    text-align: center;
  }

  .coaching {
    width: 180px;
    height: 180px;
  
  }
  

  .coach-bio p {
    font-size: 0.95rem;
  }

  .section-title {
    font-size: 2rem;
  }

  .coach-profile h3 {
    font-size: 1.4rem;
  }
}

.spaced-list{
  line-height:  2rem;
}

    .line1 {
      font-size: 2rem;
      font-weight: bold;
      color: var(--accent);
      text-align: center;
      margin-bottom: 4px;
      
    }

    .line2 {
      font-size: 1rem;
      color: var(--text-color);
      text-align: center;
    }

    .line3 {
      font-size: 1.1rem;
      color: var(--text-color);
      text-align: center;
      margin-bottom: 16px;
      display: block;
    }

    .line4 {
      font-size: 1.4rem;
      font-weight: bold;
      color: var(--text-color);
      text-align: center;
      margin-bottom: 1px;
    }

    .line5 {
      font-size: 0.7rem;
      font-weight: bold;
      color: var(--accent);
      text-align: center;
      line-height: 21px;
    }

    .line6 {
      font-size: 1rem;
      color: var(--text-color);
      text-align: center;
    }
      
 .line10 {
      font-size: 1rem;
      color: #00bcd4
     
    }
    .supplements {
      background: var(--bg-color);
      padding: 3rem 1rem;
      text-align: center;
    }
    

    .supplement-card {
     width: 501px;
      background: var(--card-bg);
      border: 2px solid var(--card-border);
      border-radius: 13px;
      padding: 1rem;
      margin: 5rem auto;
     
      transition: transform 0.3s;
      box-shadow: var(--card-glow, 0 0 26px var(--glow));
      font-size: 1rem;
        align-content: center;
      text-align: center;
      
    }

    .supplement-card:hover {     
  animation: pulseGlow 2.2s infinite ease-in-out;
  transform: translateY(-13px) scale(1.04);


    }
.supplement-card-home{
     width: 80%;
      background: var(--card-bg);
      border: 2px solid var(--card-border);
      border-radius: 13px;
      padding: 1.3rem;
      margin: 1rem auto;
      max-width: 100%;
      transition: transform 0.3s;
      box-shadow: var(--card-glow, 0 0 26px var(--glow));
      font-size: 1rem;
        align-content: center;
      text-align: center;
      
    }

.supplement-card-home:hover {     
  animation: pulseGlow 2.2s infinite ease-in-out;
  transform: translateY(-13px) scale(1.04);


    }

.supplement-card-home2{
     width: 80%;
      background: var(--card-bg);
      border: 2px solid var(--card-border);
      border-radius: 13px;
      padding: 1.3rem;
      margin: 1rem auto;
      max-width: 100%;
      transition: transform 0.3s;
      box-shadow: var(--card-glow, 0 0 26px var(--glow));
      font-size: 1rem;
      
      
      
    }


  

.supplement-card stage-card{
   width: 920px;
      background: var(--card-bg);
      border: 2px solid var(--card-border);
      border-radius: 13px;
      padding: 1rem;
      margin: 5rem auto;
     max-width: 100%;
      transition: transform 0.3s;
      box-shadow: var(--card-glow, 0 0 26px var(--glow));
      font-size: 1rem;
        align-content: center;
      text-align: center; 
}

.supplement-card-contact{ width: 900px;
      background: var(--card-bg);
      border: 2px solid var(--card-border);
      border-radius: 13px;
      padding: 3rem;
      margin: 1rem auto;
     max-width: 100%;
      transition: transform 0.3s;
      box-shadow: var(--card-glow, 0 0 26px var(--glow));
      font-size: 1.2rem;
        align-content: center;
      text-align: center;

}
.supplement-card-contact:hover
 {
  animation: pulseGlow 2.2s infinite ease-in-out;
  transform: translateY(-5px) scale(1.01);
      }

   /* === Neon Phoenix Button Glow (Determine Stage, etc.) === */
.actions button {
  background: transparent;
  color: var(--accent);
  border: 3px solid var(--card-border);
  border-radius: 10px;
  font-weight: bold;
  font-size: 1rem;
  padding: 0.75rem 1.5rem;
  cursor: pointer;
  text-transform: uppercase;
  box-shadow: 0 0 10px var(--glow);
  transition: all 0.3s ease;
  min-width: 200px;

}

/* Hover effect */
.actions button:hover {
  background: var(--accent);
  color: #000;
  transform: scale(1.06);
  box-shadow: 0 0 18px var(--accent);
}

/* Active press feedback */
.actions button:active {
  transform: scale(0.98);
  box-shadow: 0 0 10px var(--accent);
}

/* Secondary style consistency (for other similar buttons) */
.actions button.secondary {
  background: rgba(0, 188, 212, 0.1);
  color: var(cadetblue);
  border: 1px solid var(--card-border);
}
.actions button.secondary:hover {
  background: var(--accent);
  color: #000;
  box-shadow: 0 0 18px var(--accent);
}

   /* === Stage of Change Styling === */
.stage-card {
  padding: 2rem 1.5rem;
}

.question-block {
  margin-bottom: 1.6rem;
  text-align: center;
}

.question-block p {
  font-size: 1rem;
  color: var(--text-color);
  margin-bottom: 1.2rem;
}

/* Hide native radios */
.yesno input[type="radio"] {
  display: none;
}

/* Button-style labels */
.btn-yes,
.btn-no {
  display: inline-block;
  padding: 0.5rem 0.8rem;
  font-weight: bold;
  color: var(--text-color);
  background: var(--card-bg);
  border: 2px solid var(--card-border);
  border-radius: 8px;
  cursor: pointer;
  box-shadow: 0 0 10px var(--glow);
  transition: all 0.25s ease;
  min-width: 126px;
}

/* Hover glow */
.btn-yes:hover,
.btn-no:hover {
  background: var(--accent);
  color: #000;
  transform: scale(1.05);
  box-shadow: 0 0 16px var(--accent);
}

/* Active states */
input[type="radio"]:checked + label.btn-yes {
  background: var(--success, #00ffc8);
  color: #000;
  box-shadow: 0 0 16px var(--success, #00ffc8);
}

input[type="radio"]:checked + label.btn-no {
  background: var(--danger, #ff0040);
  color: #fff;
  box-shadow: 0 0 16px var(--danger, #ff0040);
}

   
   #assessment textarea {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  display: block;
  background: var(--input-bg);
  border: 2px solid var(--input-border);
  border-radius: 10px;
  padding: 0.9rem 1rem;
  color: var(--text-color);
  font-size: 1rem;
  margin: 0.6rem 0;
  box-shadow: 0 0 10px var(--glow);
  transition: border 0.3s, box-shadow 0.3s;
}

#assessment textarea:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 14px var(--accent);
}

    .content-section h2 {
  text-align: center;
}


    .supplement-card h3 {
      color: var(--accent);
   margin-bottom: 10px;
      font-size: 1.5rem;
    }

    #contact h2 {
      text-align: center;
      color: var(--accent);
      font-size: 2rem;
      margin-bottom: 1rem;
      border: 2px;
      
    }

    #contact label {
      color: var(--accent);
      font-weight: bold;
      text-align: left;
    }

    form {
      display: flex;
      flex-direction: column;
      gap: 1rem;
      max-width: 500px;
      margin: auto;
    }

    input,
    textarea {
      padding: 0.75rem;
      border-radius: 8px;
      border: 1px solid var(--input-border);
      background: var(--input-bg);
      color: var(--text-color);
      font-size: 1rem;
      resize: vertical;
    }

    button[type="submit"] {
      background: var(--accent);
      color: #fff;
      padding: 0.75rem;
      border: none;
      border-radius: 12px;
      font-weight: bold;
      cursor: pointer;
      transition: background 0.3s;
      margin-top: 1.5rem;
    }

  
   /* === Coachability Section Styling === */
.coach-card {
  padding: 2rem 1.5rem;
animation: none !important;
  transition: none !important;

}
   .coach-card:hover {
  animation: none !important;
  transform: scale(1.02); /* optional gentle hover lift */
}
   .results-card{
      padding: 2rem 1.5rem;
animation: none !important;
  transition: none !important;

}
   .results-card:hover {
  animation: none !important;
  transform: scale(1.02); /* optional gentle hover lift */
}
 .stage-card{
      padding: 2rem 1.5rem;
animation: none !important;
  transition: none !important;

}
   .stage-card:hover {
  animation: none !important;
  transform: scale(1.02); /* optional gentle hover lift */
}
   .reflection-card{
      padding: 2rem 1.5rem;
animation: none !important;
  transition: none !important;

}
   .reflection-card:hover {
  animation: none !important;
  transform: scale(1.02); /* optional gentle hover lift */
}
.slider-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 1rem 0;
  color: var(--text-color);
  text-align: left;
}

.slider-row label {
  flex: 1;
  font-weight: bold;
  color: var(--accent);
}

.slider-row input[type="range"] {
  flex: 1;
   }
   .rating-row {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.2rem;
  margin: 0.5rem 0;
}

.rating-btn {
  background: var(--card-bg);
  color: var(--text-color);
  border: 2px solid var(--card-border);
  border-radius: 8px;
  padding: 0.4rem 0.8rem;
  font-weight: bold;
  min-width: 34px;
  text-align: center;
  cursor: pointer;
  box-shadow: 0 0 10px var(--glow);
  transition: all 0.25s ease;
}

.rating-btn:hover {
  background: var(--accent);
  color: #000;
  transform: scale(1.1);
  box-shadow: 0 0 18px var(--accent);
}

.rating-btn.selected {
  background: var(--accent);
  color: #000;
  box-shadow: 0 0 18px var(--accent);
  transform: scale(1.05);
}



   .footer-info {
    color: #00bcd4;
    font-family: sans-serif;
    line-height: 1.4;
    text-align: center;
    margin-top: -27px;
  }

  .footer-info span {
    display: block; 
    margin-bottom: 39px; }

  .footer-info a {
     color: #00bcd4; 
    text-decoration: none;
  }



  .footer-info a:hover {
    text-decoration: none;
  }
   .logo-divider {
    position: relative;
    margin: 60px auto 40px;
    width: 100%;
    text-align: center;
    
  }

  .divider-line-container {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
   
  }

  .divider-line {
    width: 100%;
    height: 2px;
    background: #00bcd4;
    border: none;
    position: relative;
    z-index: 0;
   filter: drop-shadow(0 0 6px #00bcd4);
    
  
  }

  .footer-logos-on-line {
  position: absolute;
  top: 52%;
  transform: translateY(-50%);
  display: flex;
  gap: 0;
  z-index: 13;
  
}


.footer-logo {
  background: none;
  border: none;
  padding: 24;
  transition: transform 0.3s ease;
  position: relative;
  
}


.logo1 {
  width: 48px;
  
  margin: 0 5px;
  transform: translateY(-18px);
  
}

.logo2 {
  width: 50px;
  
  margin: 0 10px;
  transform: translateY(-21px); 
}

.logo3 {
  width: 48px;
  
  margin: 0 8px;
  transform: translateY(-22px);
}

.logo4 {
  width: 55px;

  margin: 0 14px;
  transform: translateY(-23px);
}

.logo5 {
  width: 48px;
  
  margin: 0 8px;
  transform: translateY(-20px);
}

.logo6 {
  width: 52px;
  
  margin: 0 10px;
  transform: translateY(-18px);
}

.logo7 {
  width: 53px;
 
  margin: 0 5px;
  transform: translateY(-15px);
}
.line {
    font-size: 14px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-block: -25px
  }
  .line5 {
    font-size: 14px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-block: -25px
  }

  .final-logo-wrapper {
  display: flex;
  justify-content: center;
  margin-top: -29px;

}

.final-logo {
  width: 400px;
  filter: drop-shadow(0 0 6px #00bcd4);
  margin-block: 28px;
 

  
}
.uk-delivery {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 18px;
  margin: 40px auto 10px;
  text-align: center;
}

.uk-outline {
  width: 76px;
  height: 90px;
  margin-top: -41px;
}

.uk-text {
  color: #008393;
  font-size: 1rem;
  letter-spacing: 1.2px;
  margin-block: -2px;

}

@media (max-width: 600px) {
  .uk-delivery {
    flex-direction: column;
    gap: 5px;
  }
  .uk-outline {
    width: 75px;
  }
  .uk-text {
    font-size: 0.9rem;
  }
}


    .footer{
      background-color: black !important;
    }

@media (max-width: 768px) {
  .logo1{  width: 38px !important;       
    transform: translateY(-11px) !important; 
    margin: 0 8px !important;       }
  .logo2{  width: 39px !important;       
    transform: translateY(-13px) !important; 
    margin: 0 12px !important;       }
  .logo3{  width: 39px !important;       
    transform: translateY(-13px) !important; 
    margin: 0 12px !important;       }
  .logo4{  width: 39px !important;       
    transform: translateY(-14px) !important; 
    margin: 0 12px !important;       }
  .logo5{  width: 39px !important;       
    transform: translateY(-12px) !important; 
    margin: 0 12px !important;       }
  .logo6{  width: 39px !important;       
    transform: translateY(-11px) !important; 
    margin: 0 12px !important;       }
  .logo7 {
    width: 39px !important;       
    transform: translateY(-9px) !important; 
    margin: 0 12px !important;       
  }
  @media (max-width: 768px) {
    .logo1, 
  .logo2,
  .logo3,
  .logo4,
  .logo5,
  .logo6,
  .logo7 {
    width: 31px !important;       }
   
    .tagline {
      font-size: 0.8rem;
      margin-top: 1rem;
      color: white;
    }

  
  .final-logo {
    width: 60px !important;
    margin-block: 20px !important;
    filter: drop-shadow(0 0 4px #00bcd4) !important;
  }

  
  .final-logo-wrapper {
    margin-top: -20px !important;
  }
}



    @media (min-width: 769px) {
     
.body {
  background: linear-gradient(180deg, #000000 0%, #000000 100%);
}
      
      .hero-logo {
      max-width: 600px;
      filter: drop-shadow(0 0 18px var(--accent));
    }

    .tagline {
      font-size: 2rem;
      margin-top: 1rem;
      color: white;
    }
.content-section,
.supplements,
.contact {
  max-width: 1000px;
  margin: 0 auto;
  padding: 3rem 2rem;
}

.about-card,
.supplement-card {
  padding: 2rem 2.5rem;
  font-size: 1.1rem;
  line-height: 1.6;
}

.line1 {
  font-size: 2.5rem;
}

.line3 {
  font-size: 1.6rem;
}

.line4 {
  font-size: 2rem;
}

.sticky-header {
  position:sticky;
  padding: 1rem 2rem;
  font-size: 1rem;
}

.nav-links a {
  padding: 8px 14px;
  font-size: 1rem;
  border: 1px solid transparent;
}

.nav-links a:hover,
.nav-links a:focus {
  background: rgba(0, 226, 255, 0.1);
  border: 7px solid var(--accent);
  color: var(--accent);
  box-shadow: 0 0 6px var(--glow);
}


.final-logo-wrapper {
  margin-top: -15px;
}

.final-logo {
  width: 100px;
  margin-block: 40px;
  transition: transform 0.3s ease-in-out;
}

.final-logo:hover {
  transform: scale(1.05);
      }
}
   
@media (max-width: 768px) {

  /* --- General Layout Fixes --- */
  .supplement-card,
  .stage-card,
  .coach-card {
    padding: 1.2rem 1rem;
    border-width: 2px;
    margin: 2rem auto;
  }

  h3.line4,
  p.line5 {
    text-align: center;
    font-size: 1.1rem;
  }

  /* --- Stage of Change (Part 1) --- */
  .question-block {
    margin-bottom: 1.2rem;
    text-align: center;
  }

  .question-block p {
    font-size: 0.95rem;
    line-height: 1.4;
  }

  .yesno {
    display: flex;
    justify-content: center;
    gap: 0.6rem;
    flex-wrap: wrap;
  }
      .total-text {
    text-align: center;      /* centers inline content */
    margin: 20px auto;       /* adds space above/below and centers the block */
    display: block;          /* ensures it behaves as a block element */
    font-size: 1.2rem;
  }

  /* Remove default line-height issues if any */
  .total-text strong {
    display: inline-block;
    margin: 0 4px;           /* small gap between “Total:” and the number */
  }


  .btn-yes,
  .btn-no {
    min-width: 90px;
    padding: 0.6rem 1rem;
    font-size: 0.9rem;
    border-radius: 8px;
  }

  .actions button {
    font-size: 0.9rem;
    padding: 0.6rem 1.2rem;
    min-width: 160px;
  }

  #coachTotal {
    display: block;
    text-align: center;
    margin-top: -1rem;
    font-size: 1.2rem;
  }

  .actions button#calcCoach {
    width: 100%;
    font-size: 0.9rem;
    margin-top: 1rem;
  }

  /* --- Textarea Adjustments (Reflection Section) --- */
  #assessment textarea {
    font-size: 0.9rem;
    padding: 0.8rem;
    margin-top: 0.8rem;
  }

  .reflection-inputs textarea + textarea {
    margin-top: 0.8rem;
  }

  /* --- Prevent horizontal scroll on mobile --- */
  body {
    overflow-x: hidden;
  }
  }
  @media screen and (max-width: 480px) {
  .supplement-card {
    padding: 12px;
    font-size: 0.95em;
  }

  .supplement-card h3 {
    font-size: 1rem;
  }

  .supplement-card p {
    margin: 4px 0;
  }
    /* Results Card - Default */
#results {
 
  padding: 1.5rem;
  max-width: 100%;
  box-sizing: border-box;
  border: 2px solid var(--card-border);
  border-radius: 12px;
  background: var(--card-bg);
  box-shadow: 0 0 16px var(--glow);
  text-align: center;
  margin: 2rem auto;
  font-size: 1rem;
  color: var(--text-color);
}

/* Results Heading */
#results h3 {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  color: var(--accent);
}

/* Results Details */
#results p {
  margin-bottom: 0.8rem;
  line-height: 1.2;
}
  }

/* Mobile adjustments */
@media (max-width: 768px) {
  #results {
    padding: 1rem;
    font-size: 0.95rem;
    box-shadow: 0 0 12px var(--glow);
  }

  #results h3 {
    font-size: 1rem;
    margin-bottom: 0.7rem;
  }

  #results p {
    font-size: 0.95rem;
    margin-bottom: 1.2rem;
  }


   .total-text {
    text-align: center;      /* centers inline content */
    margin: 20px auto;       /* adds space above/below and centers the block */
    display: block;          /* ensures it behaves as a block element */
    font-size: 1.2rem;
  }

  /* Remove default line-height issues if any */
  .total-text strong {
    display: inline-block;
    margin: 12 12px;         
  }
  }
  /* Optional: adjust text size on smaller devices */
 
@media (max-width: 768px) {
  /* Fix cards overflowing */
  .supplement-card,
  .about-card {
    max-width: 90% !important;
    margin: 1.5rem auto !important;
    text-align: center;
  }

  /* Ensure footer logos are centered */
  .footer-logos-on-line {
    justify-content: center !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 100% !important;
  }

  /* Keep final logo properly centered */
  .final-logo-wrapper {
    justify-content: center !important;
  }

  /* Prevent overall horizontal scrolling */
  body {
    overflow-x: hidden !important;
  }
  /* Ensure body and html take full width and prevent horizontal scrolling */
html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    overflow-x: hidden;
}
  .supplement-card-contact{ width: 380px;
      background: var(--card-bg);
      border: 2px solid var(--card-border);
      border-radius: 13px;
      padding: 1rem;
      margin: 5rem auto;
     max-width: 100%;
      transition: transform 0.3s;
      box-shadow: var(--card-glow, 0 0 26px var(--glow));
      font-size: 1rem;
        align-content: center;
      text-align: center;
  }
 
  .supplement-card-supplements{ 
  background: var(--card-bg);
  border: 2px solid var(--card-border);
  border-radius: 10px;
  padding: 2.2rem;
  margin: 1rem auto;
  max-width: 380px;
  box-shadow: var(--card-glow, 0 0 26px var(--glow));
  transition: transform 0.3s;
text-align: center; 
  margin-bottom: 30px;
}
  .supplement-card-supplements, h2{font-size: 1.4rem;}
  .supplement-card-supplements1{ 
  background: var(--card-bg);
  border: 2px solid var(--card-border);
  border-radius: 10px;
  padding: 2.9rem;
  margin: 1rem auto;
  max-width: 380px;
  box-shadow: var(--card-glow, 0 0 26px var(--glow));
  transition: transform 0.3s;
  text-align: center;
  margin-bottom: 30px;
  
}
  .supplement-card-supplements1, h2{font-size: 1.4rem;}
.sticky-header{
    z-index: 1000;
 position: sticky;
  top: 0;

  }
/* Center container content */
.container {
    max-width: 1200px; /* adjust to your design */
    margin: 0 auto;     /* centers container */
    padding: 0 15px;    /* small side padding */
    box-sizing: border-box;

}

/* Make images, videos, iframes responsive */
img, video, iframe {
    max-width: 100%;
    height: auto;
}
  }



  /* Tablet: screen widths 768px and below */
@media (max-width: 768px) {
  .glow-nav-btn {
    padding: 8px 14px;
    font-size: 16px;
    
  }
.below-tagline-menu {
    margin-bottom: -8px;
    margin-top: 6px;
  }
  

/* Mobile: screen widths 480px and below */
@media (max-width: 480px) {
  .glow-nav-btn {
    padding: 6px 3px;
    font-size: 3px;
  }
}




  @media (max-width: 497px) {
  .below-tagline-menu {
    flex-direction: row !important;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.2rem;
  margin-bottom: -12px;
    margin-top: 7px;
  }

  .glow-nav-btn {
    font-size: 0.6rem;
    padding: 0.5rem 0.7rem;
    min-width: auto;
  }
}
  
   /* === SEARCH RESULTS CLEAN DESKTOP LAYOUT === */

.search-results {
  padding: 2rem 1rem;
  max-width: 1200px;
  margin: 0 auto;
}

.results-container {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.results-container > h2 {
  text-align: center;
  font-size: 2rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 1rem;
  border: none;
  box-shadow: none;
}

/* Remove glow effect from search results header */
.results-container .neon-border {
  box-shadow: none !important;
  border: none !important;
  text-shadow: none !important;
}

/* Individual result card style */
.supplement-card.search-card {
  background-color: #222;
  border: 1px solid #0ff;
  padding: 1.5rem;
  border-radius: 12px;
  color: #fff;
}

.supplement-card.search-card h2 {
  margin-top: 0;
  font-size: 1.5rem;
  color: #0ff;
}

.supplement-card.search-card p {
  margin: 1rem 0;
  line-height: 1.5;
}

.supplement-card.search-card mark {
  background-color: #0ff;
  color: #222;
  font-weight: bold;
}
  .mobile-search-button {
  margin-top: 0.5rem;
  padding: 0.2rem 2rem;
  background: var(--accent);
  color: white;
  border: none;
  border-radius: 8px;
  font-weight: bold;
  cursor: pointer;
  box-shadow: 0 0 10px var(--glow);
  width: 100%;
}

.mobile-search-button:hover {
  background-color: #008fa1;
}
/* Global More Info button – same look on mobile, tablet & desktop */
/* === MORE INFO BUTTON – SAME ON MOBILE, TABLET & DESKTOP === */
.more-info-btn {
  display: block;
  width: 100%;
  text-align: center;
  background: transparent;
  color: var(--accent);
  border: 2px solid var(--card-border);
  padding: 0.7rem 1rem;
  border-radius: 10px;
  cursor: pointer;
  font-weight: bold;
  margin-top: 0.75rem;
  box-shadow: 0 0 10px var(--glow);
  transition: all 0.25s ease;
}

.more-info-btn:hover {
  background: var(--accent);
  color: #000;
  box-shadow: 0 0 16px var(--accent);
  transform: scale(1.03);
}

/* === PRODUCT CARD OVERLAY – CONSISTENT ON ALL SIZES === */
.shop-item3 {
  position: relative;
  overflow: hidden;
}

/* Overlay fills the card and can scroll if content is tall */
.card-overlay {
  position: absolute;
  inset: 0;                 /* shorthand for top:0; right:0; bottom:0; left:0 */
  width: 100%;
  height: 100%;
  background: rgba(10, 10, 10, 0.96);
  border-radius: 12px;
  color: var(--text-color);
  display: none;            /* default hidden */
  padding: 1.5rem;
  z-index: 5;
  overflow-y: auto;         /* scroll if needed so Close is reachable */
}

/* When active, flex layout like on mobile */
.card-overlay.active {
  display: flex;
  justify-content: center;
  align-items: flex-start;  /* start at top, feels like mobile */
}

/* Content stacked with Close at the bottom */
.overlay-content {
  width: 100%;
  max-width: 90%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  text-align: center;
}

/* Push the Close button to the bottom of the overlay */
.close-overlay {
  margin-top: auto;         /* pushes it to the bottom inside flex column */
  align-self: center;
  background: var(--accent);
  color: #000;
  border: none;
  padding: 0.6rem 1.4rem;
  border-radius: 8px;
  cursor: pointer;
  font-weight: bold;
  box-shadow: 0 0 10px var(--glow);
  transition: all 0.2s ease;
}

.close-overlay:hover {
  transform: scale(1.03);
  box-shadow: 0 0 14px var(--accent);
}
