.whatsapp-button {
  background: #25d366;
  color: #052d19;
}
.whatsapp-button:hover { background: #58e083; }
.contact-note a,
.contact-note > div {
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: 12px;
  color: var(--ink);
}
.contact-note a:hover span { color: var(--teal); }
.contact-note b {
  font-size: .78rem;
  letter-spacing: .04em;
}
.contact-note span {
  color: var(--slate);
  font-size: .9rem;
}
.generated-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.whatsapp-send {
  border-color: #25d366;
  color: #bdf5d0;
}
.email-send {
  border-color: #81e7df;
  color: #81e7df;
}
.email-send:hover { background: rgba(129,231,223,.1); }
.floating-whatsapp {
  position: fixed;
  z-index: 30;
  right: 22px;
  bottom: 22px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px 10px 10px;
  border-radius: 999px;
  background: #25d366;
  color: #052d19;
  box-shadow: 0 12px 30px rgba(5,45,25,.26);
  font-size: .86rem;
  transition: transform .2s ease;
}
.floating-whatsapp span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #fff;
  font-size: .68rem;
  font-weight: 900;
}
.floating-whatsapp:hover { transform: translateY(-2px); }
.breaker-gallery {
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  height: 430px;
  gap: 4px;
  padding: 4px;
  background: #d9eef5;
  overflow: hidden;
}
.breaker-gallery > img,
.breaker-gallery > div,
.breaker-gallery > div img {
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
}
.breaker-gallery > div {
  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 4px;
  overflow: hidden;
}
.insulator-card p { max-width: 100%; }
.insulator-trio {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-top: 24px;
}
.insulator-trio figure {
  position: relative;
  height: 150px;
  margin: 0;
  overflow: hidden;
  background: var(--mist);
}
.insulator-trio img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.insulator-trio figcaption {
  position: absolute;
  left: 8px;
  bottom: 8px;
  padding: 4px 7px;
  background: rgba(9,34,51,.9);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
}
.transformer-card p { max-width: 100%; }
.transformer-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  height: 190px;
  margin-top: 20px;
}
.transformer-gallery img {
  width: 100%;
  height: 100%;
  padding: 10px;
  object-fit: contain;
  background: linear-gradient(145deg,#eef5f6,#dce9ec);
}
.contactor-card p { max-width: 100%; }
.contactor-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  height: 190px;
  margin-top: 20px;
}
.contactor-gallery img {
  width: 100%;
  height: 100%;
  padding: 8px;
  object-fit: contain;
  background: linear-gradient(145deg,#f4f6f7,#e5ecee);
}
.switch-card p { max-width: 100%; }
.switch-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  height: 190px;
  margin-top: 20px;
}
.switch-gallery img {
  width: 100%;
  height: 100%;
  padding: 8px;
  object-fit: contain;
  background: linear-gradient(145deg,#f4f6f7,#e5ecee);
}
.system-equipment-module {
  margin-top: 64px;
  padding: 42px;
  background: var(--navy);
  color: #fff;
}
.equipment-heading {
  display: grid;
  grid-template-columns: .62fr 1.05fr 1fr;
  gap: 28px;
  align-items: end;
  margin-bottom: 30px;
}
.equipment-heading .eyebrow { margin: 0; }
.equipment-heading h3 {
  margin: 0;
  font-size: clamp(1.65rem,3vw,2.55rem);
  line-height: 1.08;
}
.equipment-heading > p:last-child {
  margin: 0;
  color: #b5c9d1;
}
.equipment-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 1px;
  background: #43606d;
}
.equipment-grid figure {
  display: grid;
  grid-template-rows: 230px auto;
  margin: 0;
  background: #fff;
  color: var(--ink);
}
.equipment-image {
  display: grid;
  place-items: center;
  padding: 18px;
  background: linear-gradient(145deg,#f7fafb,#e8f0f2);
  overflow: hidden;
}
.equipment-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.equipment-grid figcaption {
  padding: 18px;
  border-top: 3px solid var(--teal);
  font-size: .9rem;
  font-weight: 800;
  line-height: 1.35;
}
@media (max-width: 900px) {
  .equipment-heading { grid-template-columns: 1fr; }
  .equipment-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 620px) {
  .floating-whatsapp { right: 14px; bottom: 14px; }
  .floating-whatsapp b { display: none; }
  .breaker-gallery { height: 340px; }
  .insulator-trio { grid-template-columns: 1fr; }
  .insulator-trio figure { height: 210px; }
  .transformer-gallery { height: 175px; }
  .contactor-gallery { height: 175px; }
  .switch-gallery { height: 175px; }
  .system-equipment-module { margin-top: 42px; padding: 24px; }
  .equipment-grid { grid-template-columns: 1fr; }
  .equipment-grid figure { grid-template-rows: 240px auto; }
}
