#hero {
    display: flex;
    flex-direction: row;
    min-height: 80vh;
    background: #111;
    color: #fff;
  }
  
  #hero .hero-left {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 0 0 0 10vw;
    position: relative;
  }
  #hero .hero-left-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.15;
    z-index: 0;
    pointer-events: none;
  }
  #hero .hero-left > *:not(.hero-left-bg) {
    position: relative;
    z-index: 1;
  }
  #hero .hero-left::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 1;
  }
  #hero .hero-categories, #hero .hero-title, #hero .hero-description {
    position: relative;
    z-index: 2;
  }
  
  #hero .hero-categories {
    color: #e6c97a;
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 1.5rem;
    font-size: 16px;
  }
  
  #hero .hero-title {
    font-size: 63px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
    margin-bottom: 1rem;
  }
  
  #hero .hero-description {
    color: #e0e0e0;
    line-height: 1.5;
    margin-bottom: 2.5rem;
    max-width: 350px;
  }
  
  #hero .hero-cta {
    display: inline-flex;
    align-items: center;
    background: #fff;
    color: #222;
    font-weight: 700;
    padding: 10px 24px;
    border: none;
    border-radius: 1px;
    text-decoration: none;
    font-size: 1rem;
    transition: background 0.2s, color 0.2s;
    gap: 1em;
    justify-content: center;
  }
  #hero .hero-cta:hover {
    background: #e6c97a;
    color: #111;
  }
  
  #hero .hero-cta-arrow {
    background: #e6c97a;
    padding: 0.7em 0.7em;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #hero .hero-cta-arrow img {
    height: 1em;
    margin-left: 0;
    display: block;
  }
  
  #hero .hero-cta-arrow .hero-arrow-svg {
    color: #222;
    transition: color 0.2s;
  }
  #hero .hero-cta:hover #hero-cta-arrow .hero-arrow-svg {
    color: #111;
  }
  
  #hero .hero-right {
    flex: 1;
    position: relative;
    min-width: 0;
    background: #222;
    /* Remove centering flex properties */
  }
  #hero .hero-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    box-shadow: 0 8px 32px rgba(0,0,0,0.25);
  }
  
  /* Responsive styles for screens smaller than 1024px */
  @media (max-width: 1024px) {
    #hero {
      position: relative;
      flex-direction: column;
      height: 60vh;
      overflow: hidden;
      background-image: url('../images/hero-image.png');
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
    }
  
    /* Move hero image to background */
    #hero .hero-image {
      display: none;
    }
  
         /* Add dark overlay for better text readability */
     #hero::before {
       content: "";
       position: absolute;
       top: 0;
       left: 0;
       width: 100%;
       height: 100%;
       background: linear-gradient(135deg, rgba(17, 17, 17, 0.85) 0%, rgba(17, 17, 17, 0.75) 100%);
       z-index: 2;
     }
  
    /* Hide the hero-right section */
    #hero .hero-right {
      display: none;
    }
  
    /* Modify hero-left to be the main content container - keep left alignment */
    #hero .hero-left {
      position: relative;
      z-index: 3;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: flex-start;
      text-align: left;
      width: 100%;
      padding-left: 5vw;
    }
  
    /* Ensure text content is above all overlays */
    #hero .hero-categories, #hero .hero-title, #hero .hero-description, #hero .hero-cta {
      position: relative;
      z-index: 4;
    }
  
    /* Hide the marble image overlay - use hero-image instead */
    #hero .hero-left-bg {
      display: none;
    }
  
    /* Remove the original overlay from hero-left */
    #hero .hero-left::before {
      display: none;
    }
  
    /* Keep original text styles for consistency */
    #hero .hero-categories {
      font-size: 16px;
      margin-bottom: 1.5rem;
    }
  
    #hero .hero-title {
      font-size: 63px;
      margin-bottom: 0;
      max-width: none;
    }
  
    #hero .hero-description {
      font-size: 18px;
      margin-bottom: 2.5rem;
      max-width: 350px;
    }
  
    #hero .hero-cta {
      padding: 10px 24px;
      font-size: 1rem;
    }
  }
  
  /* Tablet adjustments for screens smaller than 768px */
  @media (max-width: 768px) {
    #hero .hero-title {
      font-size: 3rem;
      line-height: 1.2;
      margin-bottom: 0.5rem;
      margin-top: 0;
    }

    #hero .hero-description {
      font-size: 16px;
      margin-bottom: 2rem;
      max-width: 300px;
      line-height: 1.4;
    }
  }
  @media (max-width: 425px) {
    #hero .hero-categories {
      font-size: 14px;
    }
    #hero .hero-title {
      font-size: 2.7rem;
      line-height: 1.2;
      margin-top: 0;
      margin-bottom: 2rem;
    }
    #hero .hero-description {
      font-size: 18px;
      margin-bottom: 2rem;
      max-width: 300px;
      line-height: 1.4;
    }
  }
  @media (max-width: 340px) {
    #hero .hero-title {
      font-size: 2.1rem;
    }
  }
  
