/* ============================================= */
/* --- FINAL Full-Width & Responsive Hero --- */
/* ============================================= */

.service-hero-v2 {
    position: relative;
    background-color: #06301B;
    color: white;
    overflow: hidden;

    /* Flexbox for perfect centering */
    display: flex;
    justify-content: center;
    align-items: center;

    /* Smaller and more responsive height */
    min-height: 90px;
    padding: 2rem 1rem;
    /* Reduced padding */
}

.service-hero-title {
    position: relative;
    z-index: 2;
    text-align: center;
    /* More controlled responsive font size */
    font-size: clamp(1.5rem, 5vw, 2.75rem);
    font-weight: 700;
    line-height: 1.3;
}

/* Base style for both plant images */
.service-hero-plant-v2 {
    position: absolute;
    z-index: 1;
    width: 90px;
    /* Adjusted base size */
    opacity: 0.15;
    pointer-events: none;
}

/* Position and rotate the left plant */
.service-hero-plant-v2.left {
    top: -15px;
    left: -25px;
    transform: rotate(-45deg);
}

/* Position and rotate the right plant */
.service-hero-plant-v2.right {
    bottom: -15px;
    right: -25px;
    transform: rotate(45deg);
}

/* ============================================= */
/* --- Service Page Introduction Article --- */
/* ============================================= */

.service-intro {
    margin: auto;
    padding: 2rem;
    border-radius: 12px;
    max-width: 1400px;
}

.service-intro p {
    /* Typography for readability */
    text-align: center;
    font-size: 1rem;
    line-height: 1.8;
    font-weight: 300;
    color: var(--para-text);
}

/* ============================================= */
/* --- Service Feature Section (Zig-Zag) --- */
/* ============================================= */

.feature-section-container {
  max-width: 1100px;
  margin: 0 auto; /* Centers the container */
  padding: 1rem;
}

.feature-block {
  display: flex;
  /* Mobile First: Stack image on top of text */
  flex-direction: column; 
  background-color: #ffffff;
  border-radius: 16px;
  overflow: hidden; /* Keeps image corners rounded */
  box-shadow: var(--box-shaow);
  margin-bottom: 3rem;
}

.feature-image-wrapper img {
  width: 100%;
  height: 280px;
  object-fit: cover;
}

.feature-text-wrapper {
  padding: 2rem;
}

.feature-text-wrapper h3 {
  /* This makes the font size responsive */
  font-size: clamp(1.5rem, 5vw, 2rem); 
  margin-bottom: 1rem;
  color: #333;
  line-height: 1.3; /* Added for better text flow if title wraps */
}

.feature-text-wrapper p {
  color: var(--para-text);
  line-height: 1.7;
  font-size: 1.1rem;
}










/* --- Desktop Styles --- */
@media (min-width: 768px) {
  .feature-block {
    /* Side-by-side on desktop */
    flex-direction: row; 
    align-items: center;
  }

  .feature-image-wrapper,
  .feature-text-wrapper {
    /* Each div takes up 50% of the width */
    flex: 1; 
  }

  .feature-image-wrapper img {
    height: 100%;
    min-height: 420px;
  }
  
  .feature-text-wrapper {
    padding: 3rem;
  }

  /* This class reverses the order for the zig-zag effect */
  .feature-block.reverse-layout {
    flex-direction: row-reverse;
  }



    .service-hero-v2 {
        min-height: 160px;
    }

    .service-hero-plant-v2 {
        width: 160px;
        /* Adjusted desktop size */
    }

    .service-hero-plant-v2.left {
        top: -30px;
        left: -40px;
    }

    .service-hero-plant-v2.right {
        bottom: -30px;
        right: -40px;
    }

    .service-intro {
        padding: 3rem;
        /* More padding on larger screens */
        margin: auto;
    }

    .service-intro p {
        font-size: 1.2rem;
        /* Slightly larger text on desktop */
    }
}