/**
 * Hydroposhan — site-wide icon shield (load LAST).
 * Re-declares Font Awesome faces with paths that resolve from /css/,
 * and forces icon font-family so Inter/Playfair never replace glyphs.
 */

/* Face files: css/ → ../vendor/font-awesome/webfonts/ (works on every page depth with <base> or root-relative links) */
@font-face {
  font-family: "Font Awesome 6 Free";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("../vendor/font-awesome/webfonts/fa-solid-900.woff2") format("woff2"),
       url("../vendor/font-awesome/webfonts/fa-solid-900.ttf") format("truetype");
}

@font-face {
  font-family: "Font Awesome 6 Free";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../vendor/font-awesome/webfonts/fa-regular-400.woff2") format("woff2"),
       url("../vendor/font-awesome/webfonts/fa-regular-400.ttf") format("truetype");
}

@font-face {
  font-family: "Font Awesome 6 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../vendor/font-awesome/webfonts/fa-brands-400.woff2") format("woff2"),
       url("../vendor/font-awesome/webfonts/fa-brands-400.ttf") format("truetype");
}

/* Solid / Free 900 — works on public (ha-unified) + admin */
html.ha-unified i.fas,
html.ha-unified i.fa-solid,
html.ha-unified span.fas,
html.ha-unified span.fa-solid,
html.ha-unified .fas:not(div):not(section):not(main),
html.ha-unified .fa-solid:not(div):not(section),
html.ha-unified i.fa:not(.fab):not(.fa-brands):not(.far):not(.fa-regular),
i.fas,
i.fa-solid,
.fa-solid,
.fas {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  font-style: normal !important;
  font-variant: normal !important;
  text-rendering: auto !important;
  line-height: 1 !important;
  display: inline-block !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

html.ha-unified i.fas::before,
html.ha-unified i.fa-solid::before,
html.ha-unified span.fas::before,
html.ha-unified .fas::before,
html.ha-unified .fa-solid::before,
html.ha-unified i.fa:not(.fab):not(.fa-brands):not(.far):not(.fa-regular)::before,
i.fas::before,
i.fa-solid::before,
.fa-solid::before,
.fas::before {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  font-style: normal !important;
}

/* Regular 400 */
html.ha-unified i.far,
html.ha-unified i.fa-regular,
html.ha-unified span.far,
html.ha-unified .far:not(div),
html.ha-unified .fa-regular,
i.far,
i.fa-regular,
.far,
.fa-regular {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 400 !important;
  font-style: normal !important;
  display: inline-block !important;
  line-height: 1 !important;
  -webkit-font-smoothing: antialiased !important;
}

html.ha-unified i.far::before,
html.ha-unified i.fa-regular::before,
html.ha-unified .far::before,
html.ha-unified .fa-regular::before,
i.far::before,
i.fa-regular::before,
.far::before,
.fa-regular::before {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 400 !important;
}

/* Brands */
html.ha-unified i.fab,
html.ha-unified i.fa-brands,
html.ha-unified span.fab,
html.ha-unified .fab:not(div),
html.ha-unified .fa-brands,
i.fab,
i.fa-brands,
.fab,
.fa-brands {
  font-family: "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
  font-style: normal !important;
  display: inline-block !important;
  line-height: 1 !important;
  -webkit-font-smoothing: antialiased !important;
}

html.ha-unified i.fab::before,
html.ha-unified i.fa-brands::before,
html.ha-unified .fab::before,
html.ha-unified .fa-brands::before,
i.fab::before,
i.fa-brands::before,
.fab::before,
.fa-brands::before {
  font-family: "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
}

/* Common chrome slots */
html.ha-unified .footer-nav-link i,
html.ha-unified .footer-cta i,
html.ha-unified .footer-contact-card__icon i,
html.ha-unified .horizontal-legal-links a i,
html.ha-unified .legal-footer-links a i,
html.ha-unified .mobile-toggle i,
html.ha-unified .nav-dropdown__caret,
html.ha-unified .btn i,
html.ha-unified .btn-card i,
html.ha-unified [class*="__icon"] i.fas,
html.ha-unified [class*="__icon"] i.far,
html.ha-unified [class*="__icon"] i.fab {
  font-style: normal !important;
}

html.ha-unified .footer-nav-link i.fas,
html.ha-unified .footer-cta i.fas,
html.ha-unified .footer-contact-card__icon i.fas,
html.ha-unified .horizontal-legal-links a i.fas,
html.ha-unified .btn i.fas,
html.ha-unified .btn-card i.fas,
html.ha-unified [class*="__icon"] i.fas {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
}

html.ha-unified .legal-footer-links a i.fab,
html.ha-unified .btn i.fab,
html.ha-unified [class*="__icon"] i.fab {
  font-family: "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
}

/* Keep inline SVGs visible when used as icon replacements */
html.ha-unified .con-help-link__icon svg,
html.ha-unified .con-visit-item__icon svg,
html.ha-unified .con-action-btn__icon svg,
html.ha-unified .con-contact-card__icon svg,
html.ha-unified .footer-contact-card__icon svg,
html.ha-unified .infra-icon-wrap svg,
html.ha-unified .ha-mobile-bottom-nav__icon svg {
  display: block !important;
  flex-shrink: 0;
  fill: currentColor;
}
