/* ==========================================================================
   DBIM icon style 1 - LINE ICONS ONLY
   One set: 24 px grid, 1.75 px stroke, round caps/joins, no fills, no gradients.
   Files: ../images/icons/*.svg (-key #162F6A, -white #FFFFFF, status variants).
   The markup, the Font Awesome class names and the database values are unchanged;
   this sheet only changes how each existing icon is drawn. Loaded last.
   ========================================================================== */

/* ---------- 1. Font Awesome glyphs -> line icons (colour follows the text colour) ---------- */
html i[class*="fa-"]::before,
html span[class*="fa-"]::before,
html em[class*="fa-"]::before {
  content: "" !important;
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -0.14em;
  background-color: currentColor;
  -webkit-mask: var(--ico, url(../images/icons/ring.svg)) center / contain
    no-repeat;
  mask: var(--ico, url(../images/icons/ring.svg)) center / contain no-repeat;
  font-family: inherit !important;
  font-weight: 400 !important;
}
/* any element using these classes keeps its own size/colour rules */
.fa-calendar-days,
.fa-calendar,
.fa-regular.fa-calendar-days {
  --ico: url(../images/icons/calendar.svg);
}
.fa-file-pdf,
.fa-file-pdf-o {
  --ico: url(../images/icons/file-pdf.svg);
}
.fa-file,
.fa-file-lines {
  --ico: url(../images/icons/file.svg);
}
.fa-phone {
  --ico: url(../images/icons/phone.svg);
}
.fa-envelope {
  --ico: url(../images/icons/envelope.svg);
}
.fa-location-dot,
.fa-map-marker,
.fa-location-pin {
  --ico: url(../images/icons/location.svg);
}
.fa-clock {
  --ico: url(../images/icons/clock.svg);
}
.fa-circle {
  --ico: url(../images/icons/ring.svg);
}
.fa-pause {
  --ico: url(../images/icons/pause.svg);
}
.fa-play {
  --ico: url(../images/icons/play.svg);
}
.fa-chevron-left,
.fa-angle-left,
.fa-caret-left {
  --ico: url(../images/icons/chevron-left.svg);
}
.fa-chevron-right,
.fa-angle-right,
.fa-caret-right {
  --ico: url(../images/icons/chevron-right.svg);
}
.fa-chevron-down,
.fa-angle-down,
.fa-caret-down {
  --ico: url(../images/icons/chevron-down.svg);
}
.fa-chevron-up,
.fa-angle-up,
.fa-caret-up {
  --ico: url(../images/icons/chevron-up.svg);
}
.fa-arrow-left {
  --ico: url(../images/icons/arrow-left.svg);
}
.fa-arrow-right {
  --ico: url(../images/icons/arrow-right.svg);
}
.fa-arrow-up {
  --ico: url(../images/icons/arrow-up.svg);
}
.fa-arrow-down {
  --ico: url(../images/icons/arrow-down.svg);
}
.fa-arrow-up-right-from-square,
.fa-up-right-from-square,
.fa-external-link,
.fa-external-link-alt,
.fa-square-arrow-up-right {
  --ico: url(../images/icons/external.svg);
}
.fa-x-twitter,
.fa-twitter {
  --ico: url(../images/icons/x-twitter.svg);
}
.fa-facebook,
.fa-facebook-f {
  --ico: url(../images/icons/facebook.svg);
}
.fa-instagram {
  --ico: url(../images/icons/instagram.svg);
}
.fa-youtube {
  --ico: url(../images/icons/youtube.svg);
}
.fa-linkedin,
.fa-linkedin-in {
  --ico: url(../images/icons/linkedin.svg);
}
.fa-search,
.fa-magnifying-glass {
  --ico: url(../images/icons/search.svg);
}
.fa-download {
  --ico: url(../images/icons/download.svg);
}
.fa-print {
  --ico: url(../images/icons/print.svg);
}
.fa-share-nodes,
.fa-share-alt,
.fa-share {
  --ico: url(../images/icons/share.svg);
}
.fa-house,
.fa-home {
  --ico: url(../images/icons/home.svg);
}
.fa-bars {
  --ico: url(../images/icons/menu.svg);
}
.fa-xmark,
.fa-times,
.fa-close {
  --ico: url(../images/icons/close.svg);
}
.fa-user {
  --ico: url(../images/icons/user.svg);
}
.fa-globe {
  --ico: url(../images/icons/globe.svg);
}
.fa-link {
  --ico: url(../images/icons/link.svg);
}
.fa-circle-info,
.fa-info-circle {
  --ico: url(../images/icons/info.svg);
}
.fa-check {
  --ico: url(../images/icons/check.svg);
}
.fa-circle-check,
.fa-check-circle {
  --ico: url(../images/icons/check-circle.svg);
}
.fa-circle-xmark,
.fa-times-circle {
  --ico: url(../images/icons/x-circle.svg);
}
.fa-triangle-exclamation,
.fa-exclamation-triangle {
  --ico: url(../images/icons/alert.svg);
}
.fa-star {
  --ico: url(../images/icons/star.svg);
}
/* ID Card */
.fa-id-card,
.fa-address-card {
  --ico: url(../images/icons/id-card.svg);
}

/* Mobile Phone */
.fa-mobile-phone,
.fa-mobile-screen-button,
.fa-mobile-alt {
  --ico: url(../images/icons/phone.svg);
}

/* File / Emergency Visa Guidelines */
.fa-file-alt,
.fa-file-text,
.fa-file-lines {
  --ico: url(../images/icons/file.svg);
}

.fa-bell {
  --ico: url(../images/icons/notification.svg);
}

/* ---------- 2. Small image icons (GIF/PNG/filled SVG) -> line SVG, same slot ---------- */
img[src*="ext-link-icon"] {
  content: url(../images/icons/external-key.svg);
  width: 10px;
  height: 10px;
}
img[src*="bullet_go"] {
  content: url(../images/icons/chevron-right-key.svg);
  width: 10px;
  height: 10px;
}
img[src*="file-pdf-regular"],
img[src*="PDF-icon"] {
  content: url(../images/icons/file-pdf-key.svg);
  width: 16px;
  height: 16px;
}
img[src*="new.gif"],
img[src*="newflash"] {
  content: url(../images/icons/star-key.svg);
  width: 14px;
  height: 14px;
}
#menuPartWrapper img[src*="ext-link-icon"],
.footerCont img[src*="ext-link-icon"] {
  content: url(../images/icons/external-white.svg);
  filter: none;
}
#nav img[src*="ext-link-icon"],
#innerContent img[src*="ext-link-icon"] {
  filter: none;
}

/* ---------- 3. Background-image icons in the legacy theme ---------- */
.spriteHomeIcon.prevIcon {
  background: url(../images/icons/circle-chevron-left-white.svg) center / 27px
    27px no-repeat;
}
.spriteHomeIcon.nextIcon {
  background: url(../images/icons/circle-chevron-right-white.svg) center / 27px
    27px no-repeat;
}
.spriteHomeIcon.sliderPause {
  background: url(../images/icons/circle-pause-white.svg) center / 27px 27px
    no-repeat;
}
.spriteHomeIcon.sliderPlay {
  background: url(../images/icons/circle-play-white.svg) center / 27px 27px
    no-repeat;
}
.mp-menu ul li.icon-arrow-left {
  background: url(../images/icons/chevron-right-white.svg) 8px 14px / 12px 12px
    no-repeat;
}
.mp-back {
  background: var(--brand-key) url(../images/icons/chevron-left-white.svg) 94%
    center / 14px 14px no-repeat;
}
.extLink {
  background: url(../images/icons/external-key.svg) right top / 12px 12px
    no-repeat;
}
.menuSearchIcon {
  background: url(../images/icons/search-key.svg) center / 20px 20px no-repeat;
}
#nav li li .rightArrowImg {
  background: url(../images/icons/chevron-right-key.svg) right center / 12px
    12px no-repeat;
}
.working-hours h2::before {
  content: "" !important;
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -0.14em;
  background-color: currentColor;
  -webkit-mask: url(../images/icons/clock.svg) center / contain no-repeat;
  mask: url(../images/icons/clock.svg) center / contain no-repeat;
}

/* Popup close button: the heavy "x" character becomes the line close icon */
.popup-close-img,
.popup-close-img-2 {
  font-size: 0 !important;
  background: var(--brand-key) url(../images/icons/close-white.svg) center /
    18px 18px no-repeat !important;
}

/* ---------- 4. Status icons that were text symbols (warning / check / cross / info) ---------- */
.invalid-feedback::before,
span.error::before,
.text-danger[role="alert"]::before,
span.red:not(:empty)::before {
  content: "" !important;
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.35em;
  vertical-align: -0.15em;
  background: url(../images/icons/alert-danger.svg) center / contain no-repeat;
}
.fLabel span.red::before,
label span.red::before {
  content: none !important;
  display: none;
}
.valid-feedback::before,
.text-success[role="status"]::before {
  content: "" !important;
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.35em;
  vertical-align: -0.15em;
  background: url(../images/icons/check-circle-success.svg) center / contain
    no-repeat;
}
.alert::before {
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1.15em 1.15em;
  padding-left: 1.65em;
  margin-right: 8px;
}
.alert-success::before {
  content: "Success:" !important;
  background-image: url(../images/icons/check-circle-success.svg);
}
.alert-warning::before {
  content: "Warning:" !important;
  background-color: var(--color-warning);
  background-image: url(../images/icons/alert-warning.svg);
  background-position: 6px center;
  padding: 0 6px 0 2em;
}
.alert-danger::before,
.alert-error::before {
  content: "Error:" !important;
  background-image: url(../images/icons/x-circle-danger.svg);
}
.alert-info::before {
  content: "Information:" !important;
  background-image: url(../images/icons/info-info.svg);
}
