/*
 * New CSS for the Astro rebuild. Everything else in /css is legacy WordPress CSS kept verbatim.
 * Keep this file small: only what the vanilla replacements for jQuery plugins need.
 */

/* ---------- Buttons that replaced clickable <span>/<div>s (keep the old look) ---------- */
.popup-close,
.unique-close,
.close-modal {
  background: transparent;
  border: 0;
  line-height: 1;
}
.popup-close { background-color: rgba(0, 0, 0, 0.6); color: #fff; }
.close-modal { color: #000; z-index: 2; }
.unique-thumbnail { padding: 0; border: 0; background: none; }
.popup-gallery { align-items: center; }
.popup-gallery img:hover { transform: none; }

/* Honeypot field */
.zhi-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* ---------- Division photo sliders ---------- */
.custom-gallery-slider .main-slider { position: relative; }
.custom-gallery-slider .slick-prev,
.custom-gallery-slider .slick-next { z-index: 2; }

/* ---------- Product gallery modals ---------- */
.custom-modal-content { max-width: 1100px; border-radius: 5px; }
.zhi-product-slider { position: relative; margin-bottom: 30px; }
.zhi-product-slider img {
  width: 100%;
  height: 70vh;
  max-height: 700px;
  object-fit: contain;
  background: #111;
  display: block;
}
.zhi-product-slider img:hover { transform: none; box-shadow: none; }
.zhi-product-slider .slick-arrow { z-index: 2; }
.zhi-product-slider .slick-prev { left: 15px; }
.zhi-product-slider .slick-next { right: 15px; }
a.open-slider[aria-disabled="true"] { cursor: default; }

/* ---------- Pressure Vessels showcase ---------- */
.unique-slider-nav { border-radius: 4px; }
.unique-text-container[hidden] { display: none; }
.unique-text-container {
  inset: auto auto 90px 30px;
  max-width: min(720px, calc(100% - 60px));
  max-height: 55%;
  background: rgba(0, 0, 0, 0.45);
}
.unique-slide-title { font-size: 2rem; }
@keyframes animateTitle { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: none; } }
@keyframes animateDescription { from { opacity: 0; transform: translateY(20px); } 40% { opacity: 0; } to { opacity: 1; transform: none; } }
.unique-thumbnail img:hover { transform: none; }
@media (max-width: 768px) {
  .unique-modal-content { width: 96%; height: 86%; top: 5%; }
  .unique-text-container { inset: auto 10px 80px 10px; max-width: none; }
  .unique-instructions { display: none; }
}

/* ---------- News article gallery (was Slick) ---------- */
.event-slider-container .slick-slider { position: relative; }
.event-slider-container .slick-slide img:hover { transform: none; }
.event-slider-container { margin-bottom: 60px; }


/* Font Awesome was only used for three icons on the News list; inline SVG replacements. */
/* Sized like Font Awesome 5: 1em tall, natural width from the viewBox. */
.event-meta i, .read-more-btn i { display: inline-block; line-height: 1; } /* was Font Awesome .fas/.far */
.zhi-ico { height: 1em; width: auto; fill: currentColor; display: inline-block; vertical-align: -0.125em; overflow: visible; }

/* ---------- Careers ---------- */
.zhi-careers-note { color: #fff; padding: 20px 0 60px; }
.zhi-careers-note a { color: #FFAB80; }

/* ---------- RTL ---------- */

/* ---------- WordPress block-editor image (from wp-includes block-library, only what posts use) ---------- */
.wp-block-image img { max-width: 100%; height: auto; box-sizing: border-box; vertical-align: bottom; }
.wp-block-image .aligncenter { display: table; margin-left: auto; margin-right: auto; }
.wp-block-image figure { margin: 0 0 1em; }

/* ---------- Contact form additions (privacy notice, Turnstile) ---------- */
.zhi-privacy-note { font-size: 0.875rem; line-height: 1.5; color: rgba(255, 255, 255, 0.7); margin: 10px 0 20px; text-align: start; }
.zhi-privacy-note a { color: #FFAB80; text-decoration: underline; font: inherit; line-height: inherit; }
.zhi-turnstile { margin: 10px 0; }

/* ---------- Rockfin article slider (was Smart Slider 3, "blurfit" mode, 700x438 frame) ---------- */
.rokfinSmart .slick-list { aspect-ratio: 700 / 438; }
.rokfinSmart .slick-track { height: 100%; }
.rokfinSmart .slick-slide { position: relative; height: 100%; overflow: hidden; background: #000; }
.rokfinSmart .slick-slide::before {
  content: ""; position: absolute; inset: -14px;
  background: var(--zhi-slide-bg) center / cover no-repeat; filter: blur(7px);
}
.rokfinSmart .slick-slide img { position: relative; width: 100%; height: 100%; object-fit: contain; }
.rokfinSmart .slick-slide img:hover { transform: none; box-shadow: none; }
.rokfinSmart .slick-arrow { z-index: 2; }
.rokfinSmart .slick-prev { left: 15px; }
.rokfinSmart .slick-next { right: 15px; }
