.prm-pill{border-radius:9999px;overflow:hidden}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}

/* ===== Shared Navigation Button Token ===== */
/* Used across: Homepage Hero, Project Slider, Testimonials, Timeline, Related Articles */
.prm-nav-button {
  width: 50px;
  height: 50px;
  border-radius: 10px;
  border: 2px solid #0093BE;
  background: #FFFFFF !important; /* Pure white default, override theme */
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: background 200ms ease, border-color 200ms ease, transform 150ms ease;
  position: relative;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent; /* Remove pink tap highlight on mobile */
}

.prm-nav-button:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.68) !important; /* Off-white transparency, override theme pink */
  border-color: #0093BE !important;
  transform: scale(1.05);
  box-shadow: none !important;
}

.prm-nav-button:active:not(:disabled) {
  background: rgba(255, 255, 255, 0.5) !important; /* Slightly more transparent on press */
  transform: scale(0.95);
  box-shadow: none !important;
}

.prm-nav-button:focus,
.prm-nav-button:focus-visible {
  background: #FFFFFF !important; /* Match default background (pure white), override theme */
  border-color: #0093BE !important; /* Match default border, override theme */
  outline: 2px solid #0093BE;
  outline-offset: 2px;
  box-shadow: none !important; /* Remove any theme-applied shadows */
}

.prm-nav-button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

.prm-nav-button svg {
  width: 24px;
  height: 24px;
  color: #0093BE;
  stroke: currentColor;
}

/* ===== Service Page: Section-4 (e.g. Commitment to Energy Efficiency) ===== */
/* Increase horizontal gap between the bold title and paragraph in the        */
/* two-column Elementor layout used on service detail pages.                   */
.section-4 > .e-con-inner > .e-con.e-flex {
  gap: clamp(40px, 5vw, 80px);
}

/* ===== WYSIWYG Paragraph Spacing (ewa-rteLine) ===== */
/* The ACF/Elementor WYSIWYG editor wraps each line in <div class="ewa-rteLine">. */
/* Empty divs represent paragraph breaks but collapse by default since divs have  */
/* no margin unlike <p> tags. This gives them visible height as spacing.          */
.ewa-rteLine:empty {
  min-height: 1em;
}