 /***********************************************************
     * Base Page Styling
     ***********************************************************/
     body {
        margin: 0 auto;
        font-family: Helvetica Neue,Helvetica,Arial,sans-serif;
        background-color: #2c2c2c;
        color: #ccc;
        width: 90%;
        min-width: 320px;
        max-width: 1100px;
  
      }
      img, video {
        max-width: 100%;
        height: auto;
        display: block;
      }
      main {
        padding: 0px 20px;
        background-color: #2c2c2c;
      }
      hr {
        border-color: #333;
        width: 100%;
        margin-bottom: 10px;
      }
  
      /***********************************************************
       * Header Styles
       ***********************************************************/
      header {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        padding: 20px 20px 0;
        background-color: #2c2c2c;
      }
      header h1 {
        font-size: 38px;
        font-weight: bold;
        color: #ccc;
        margin-right: 20px;
      }
      header img {
        width: 75px;
        margin: 15px;
      }
  
      /***********************************************************
       * Footer Styles
       ***********************************************************/
      footer {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 20px;
        background-color: #2c2c2c;
        color: #ccc;
      }
      footer img {
        width: 45px;
        margin: 15px;
      }
      footer .links {
        font-size: small;
        display: flex;
        gap: 10px;
        justify-content: center;
        color: #ccc;
      }
      footer .links a {
        color: #ccc;
        text-decoration: none;
      }
      footer .links a:hover {
        color: #fff;
      }
      footer .signature {
        display: flex;
        align-items: center;
        gap: 10px;
        justify-content: flex-start;
      }
  
      /* Utility no-style links */
      .no-style {
        text-decoration: none;
        color: inherit;
      }
      .no-style:hover {
        text-decoration: none;
        color: inherit;
      }
  
      /***********************************************************
       * Heading & Section Headings
       ***********************************************************/
      h2 {
        font-size: 30px;
        color: #ccc;
        font-weight: lighter;
        margin-bottom: 10px;
      }
      h3 {
        font-size: 28px;
        color: #ccc;
        font-weight: normal;
        margin-bottom: 5px;
      }
  
      /***********************************************************
       * Navigation / Dropdown
       ***********************************************************/
      nav {
        position: relative;
        margin-left: 35px;
      }
      nav ul {
        list-style: none;
        display: flex;
        gap: 20px;
        margin: 0;
        padding: 0;
      }
      nav ul li {
        position: relative;
      }
      nav ul li a {
        text-decoration: none;
        color: #ccc;
      }
      nav ul li a:hover {
        color: #fff;
      }
      /* Default dropdown behavior on larger screens */
      .dropdown-content {
        display: none;
        position: absolute;
        background-color: #333;
        right: 0;
        min-width: 150px;
        box-shadow: 0 8px 16px rgba(0,0,0,0.3);
        z-index: 1;
      }
      .dropdown-content a {
        color: #ccc;
        padding: 10px;
        text-decoration: none;
        display: block;
        transition: background 0.3s ease;
      }
      .dropdown-content a:hover {
        background-color: rgba(255, 255, 255, 0.02);
      }
      .dropdown:hover .dropdown-content {
        display: block;
      }
  
      /***********************************************************
       * Hamburger Menu
       ***********************************************************/
      .hamburger {
        display: none; /* hidden by default on large screens */
        font-size: 30px;
        cursor: pointer;
        color: #ccc;
        /* Remove margin-left: auto and let it float left. */
        margin-left: 0;
      }
  
      /* Prevent visual changes on hover/focus for the hamburger */
      .hamburger:hover,
      .hamburger:focus {
        color: #ccc;
        text-decoration: none;
        background: none;
      }
  
      #menu-toggle {
        display: none;
      }
  
      /***********************************************************
       * Product Section
       ***********************************************************/
      .product-section {
        background-color: #442369;
        padding: 3% 5%;
        border-radius: 0px;
        color: #ccc;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 15px;
        margin-bottom: 20px;
        margin-top: 0;
      }
      .product-section img {
        max-width: 300px;
        border-radius: 7px;
        box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
      }
      .product-section img:hover {
        box-shadow: 0 0 4px rgba(255, 255, 255, 0.498);
      }
      button {
        background-color: #ddd;
        color: #340058;
        padding: 10px 20px;
        border: none;
        border-radius: 30px;
        cursor: pointer;
        box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
        transition: all 0.3s ease;
        font-weight: bold;
        margin-bottom: 15px;
        margin-top: 20px;
      }
      button:hover {
        box-shadow: 0 0 4px rgba(255, 255, 255, 0.498);
      }

  
      /***********************************************************
       * Headings & Layout
       ***********************************************************/
      .product-heading {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0px 0;
        min-height: 150px; /* Ensures consistent height for centering */
      }
      .heading-content {
        display: flex;
        align-items: center;
        gap: 20px;
      }
      .heading-logo {
        width: 40px;
        height: 40px;
        margin-left: 15px;
      }
      .heading-text h2 {
        font-size: 38px;
        color: #ccc;
        margin: 0;
      }
      .heading-text p {
        font-size: 20px;
        color: #ccc;
        margin: 0;
      }
      .vertical-text {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
      }
      .vertical-text p {
        writing-mode: vertical-rl;
        transform: rotate(180deg);
        color: #ccc;
        font-size: 12px;
      }
  
      .wp-block-video video {
        min-width: 200px;
        max-width: 300px;
        height: auto;
        display: block;
        border-radius: 5px;
        margin: 0;
      }
      .video-link {
        display: block;
        max-width: 80%;
        margin: 10px 0 0;
        text-decoration: none;
        color: inherit;
        font-size: 0.9rem;
      }
      .video-link:hover {
        color: #fff;
      }
      .video-frame {
        vertical-align: top;
      }
      .product-section > div:last-child {
        align-self: flex-start;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
      }
  
      /* Language Switch */
      .lang-switch {
        align-items: center;
      }
      .lang-switch a {
        text-decoration: none;
        color: #ccc;
        font-size: 0.9rem;
        padding: 5px 0px;
        border-radius: 3px;
        transition: background 0.3s;
      }
      .lang-switch a:hover {
        color: #fff;
      }
      .lang-switch a.active {
        background-color: #4b0082;
        color: #fff;
      }

      /* checkbox lable */
      label {
        display: flex;
        align-items: center;
        gap: 0.5em;
        font-size: 0.9em;
      }
      

      /* Flat, minimal checkbox */
input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  background-color: #fff;
  border: 1.5px solid #888;
  padding: 6px;
  width: 18px;
  height: 18px;
  border-radius: 4px;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  transition: background-color 0.2s ease;
  position: relative;
}

input[type="checkbox"]:checked {
  background-color: #0077cc;
  border-color: #0077cc;
}

input[type="checkbox"]:checked::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 5px;
  width: 4px;
  height: 9px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.link {
  color: #ccc;
  text-decoration: underline;
}

.link:hover {
  color: #fff;

}


/*********************************************************
* Gallery Styling
*********************************************************/

.gallery {
  max-width: 600px;
  margin: auto;
  text-align: center;
}
.gallery-main {
  position: relative;
  /*height: 400px;*/
}
.main-image, .gallery-main video {
  /*width: 100%;*/
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
  cursor: pointer;
}
.prev, .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 2em;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 1;
}
.prev { left: 10px; }
.next { right: 10px; }
.thumbnails {
  display: flex;
  justify-content: center;
  margin-top: 10px;
  gap: 5px;
}
.thumb {
  width: 60px !important;
 /*height: 40px;*/
  object-fit: cover;
  border: 2px solid transparent;
  cursor: pointer;
}
.thumb.active {
  border-color: #333;
}
#lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.8);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 100;
}
#lightbox img {
  max-width: 90%;
  max-height: 90%;
  border-radius: 8px;
}
#close-lightbox {
  position: absolute;
  top: 20px;
  right: 30px;
  font-size: 2em;
  color: white;
  cursor: pointer;
}


  
      /***********************************************************
       * Responsive Adjustments
       ***********************************************************/
      @media (max-width: 950px) {
  
        /* Make the hamburger visible, hide the nav items by default. */
        .hamburger {
          display: block;
          /* Align left, no margin left unless you want some spacing. */
          margin-left: 0;
        }
        nav ul {
          display: none;             /* Hide main nav by default */
          flex-direction: column;
          gap: 10px;
          background-color: #333;
          padding: 10px;
          border-radius: 5px;
          position: absolute;
          top: 60px;
          right: 0;
          margin-right: 10px;
          z-index: 10;
        }
        /* Show nav items when the checkbox is checked */
        #menu-toggle:checked + .hamburger + ul {
          display: flex;
        }
  
         .dropdown-content a:hover {
          background-color: rgba(255, 255, 255, 0.0);
          }
        
        .dropdown-content {
          /* Instead of absolute dropdown, show them inline & indented */
          display: block !important;
          position: static !important;
          background-color: transparent !important;
          box-shadow: none !important;
          margin-left: 20px;  /* indent them a bit */
          margin-top: 0;
        }
        .dropdown-content a {
          /* Give each sub-item a small left margin or bullet if you like */
          padding-left: 10px;
        }
  
        /* Other layout adjustments for small screens */
        body {
          width: 100%;
          padding: 0 5px;
          box-sizing: border-box;
        }
        main {
          padding: 0px 10px;
        }
        header {
          padding: 0px 10px;
        }
        header h1 {
          font-size: 24px;
        }
        .heading-text h2 {
          font-size: 28px;
        }
        .heading-text p {
          font-size: 17px;
        }
        .product-section {
          flex-direction: column;
          text-align: center;
          align-items: center;
          padding: 2% 3%;
        }
        .product-section img,
        .wp-block-video video {
          max-width: 300px;
          width: 100%;
          height: auto;
          margin-bottom: 20px;
        }
        .product-section > div:last-child {
          width: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
          text-align: center;
        }
        .video-frame {
          width: 100%;
          max-width: 300px;
          margin: 0 auto;
          text-align: center;
          display: inline;
        }
        .video-link {
          display: block;
          text-align: center;
          margin: 10px auto;
        }
        footer {
          flex-direction: column;
          text-align: center;
          gap: 10px;
        }
      }