/* Ann Gems — overrides and additions on top of the Laborc template. */

:root {
  --gem-primary: #1E3A8A;
  --gem-dark: #0B1437;
  --gem-gold: #C9A24D;
}

.cta1 { background-color: var(--gem-primary); }

/* ---- Logo ---- */
.gem-logo { display: inline-flex; align-items: center; gap: 10px; white-space: nowrap; }
.gem-logo .gem-mark { flex: none; color: var(--gem-gold); }
.gem-logo__text { display: flex; flex-direction: column; line-height: 1; }
.gem-logo__text strong { font-size: 22px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; }
.gem-logo__text small { margin-top: 5px; font-size: 9.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; opacity: 0.85; }
.gem-logo--light { color: #fff; }
.gem-logo--dark { color: var(--gem-dark); }
.site-logo { max-width: none; }
.site-logo a, .mobile-logo a, .logo-m a, .logo-area a { text-decoration: none; }

/* ---- Header ---- */
.header-area.header-area1 .main-menu-ex > ul > li > a.is-active { color: var(--gem-gold); }

/* ---- Section label ---- */
.gem-label { display: inline-flex !important; align-items: center; gap: 8px; }
.gem-label .gem-mark { color: var(--gem-gold); }

/* ---- Home hero ---- */
.gem-hero .gem-hero__slide {
  min-height: 780px;
  background-size: cover;
  background-position: center;
}
.gem-hero .gem-hero__slide::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(11, 20, 55, 0.92) 0%, rgba(11, 20, 55, 0.72) 45%, rgba(11, 20, 55, 0.25) 100%);
}
.gem-hero .gem-hero__slide .container { position: relative; z-index: 1; }
.gem-hero .main-heading1 { margin-top: 90px; }
.gem-hero__eyebrow {
  display: inline-block;
  margin-bottom: 18px;
  color: var(--gem-gold);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}
.gem-hero h1, .gem-hero h2 { line-height: 1.15; }
@media (max-width: 991px) {
  .gem-hero .gem-hero__slide { min-height: 640px; }
  .gem-hero .main-heading1 { margin-top: 40px; }
}

/* ---- Inner page banner ---- */
.gem-page-hero { position: relative; background-position: center; }
.gem-page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(11, 20, 55, 0.9), rgba(11, 20, 55, 0.5));
}
.gem-page-hero .container { position: relative; }

/* ---- Photo crops ---- */
.gem-about-images .image1 img { width: 270px; height: 400px; }
.gem-about-images .image2 img { width: 380px; height: 420px; }
.gem-about-images .image3 img { width: 400px; height: 250px; }
.gem-about-images img, .gem-cover img { object-fit: cover; border-radius: 8px; }
.gem-about-images .image-anime, .gem-rounded { border-radius: 8px; overflow: hidden; }
@media (max-width: 767px) {
  .gem-about-images { height: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
  .gem-about-images > div { position: static !important; }
  .gem-about-images .image3 { grid-column: 1 / -1; }
  .gem-about-images .image1 img, .gem-about-images .image2 img, .gem-about-images .image3 img { width: 100%; height: 200px; }
}
.service-box1 .image img, .research-box .image img { aspect-ratio: 37 / 30; object-fit: cover; }
.gem-detail-image img { aspect-ratio: 5 / 3; object-fit: cover; border-radius: 8px; }
.gem-gallery img { aspect-ratio: 36 / 25; object-fit: cover; border-radius: 8px; }
.gem-process-image { background-color: #05060a; background-size: contain; }

/* ---- Icons that replace the template's chemistry artwork ---- */
.gem-icon-badge { display: inline-flex; align-items: center; justify-content: center; font-size: 30px; color: var(--gem-primary); }
.gem-ring-icon { display: flex; align-items: center; justify-content: center; font-size: 26px; color: #fff; }
.gem-ring-centre { display: flex; align-items: center; justify-content: center; aspect-ratio: 1; }
.gem-ring-centre img { width: 78% !important; height: auto; filter: drop-shadow(0 18px 24px rgba(11, 20, 55, 0.25)); }

/* ---- Leadership ---- */
.gem-signature { display: flex; flex-direction: column; gap: 4px; padding-left: 18px; border-left: 3px solid var(--gem-gold); }

/* ---- Fact table on gemstone pages ---- */
.gem-facts { margin: 0; padding: 0; list-style: none; }
.gem-facts li { display: flex; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid #E5E7EB; font-size: 16px; }
.gem-facts li:last-child { border-bottom: 0; }
.gem-facts span { color: #6C757D; }
.gem-facts strong { color: var(--gem-dark); font-weight: 600; text-align: right; }

/* ---- Contact ---- */
.gem-contact-icon { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; flex: none; border-radius: 50%; background: #F1F5FD; color: var(--gem-primary); font-size: 22px; }
.contact-box-p { display: flex; align-items: flex-start; }
.contact-box-p .heading a, .contact-box-p .heading span { display: block; line-height: 1.6; }
.phone-label { color: #6C757D; font-size: 14px; }
.gem-alert { padding: 14px 18px; border-radius: 8px; font-size: 16px; margin-bottom: 20px; }
.gem-alert--ok { background: #E7F6EC; color: #14532D; border: 1px solid #B7E2C4; }
.gem-alert--error { background: #FDECEC; color: #7F1D1D; border: 1px solid #F5C2C2; }
.gem-hp { position: absolute !important; left: -9999px !important; height: 0; overflow: hidden; }
.contact-map-page iframe { width: 100%; display: block; }

.footer1 .conditons-area1 span::after { display: none; }
.contact-box-p .heading a .phone-label { display: inline; }
