/*!
 *  Font Awesome 6.0.0 compatibility layer for Font Awesome 4.7.0
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
@font-face {
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),
       url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),
       url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),
       url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),
       url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}

/* Base icon class */
.fa,
.fa-classic,
.fa-sharp,
.fas,
.fa-solid,
.far,
.fa-regular,
.fab,
.fa-brands {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Social Media Icons - Updated for FontAwesome 6 compatibility */
.fa-facebook-f:before,
.fa-facebook:before,
.fab.fa-facebook-f:before {
  content: "\f09a";
}

.fa-x-twitter:before,
.fa-twitter:before,
.fab.fa-x-twitter:before {
  content: "\e61b";
}

.fa-instagram:before,
.fab.fa-instagram:before {
  content: "\f16d";
}

.fa-youtube:before,
.fab.fa-youtube:before {
  content: "\f167";
}

/* Icon sizing */
.fa-xs {
  font-size: .75em;
  line-height: .08333em;
  vertical-align: 0.125em;
}

.fa-sm {
  font-size: .875em;
  line-height: .07143em;
  vertical-align: 0.05357em;
}

.fa-lg {
  font-size: 1.25em;
  line-height: .05em;
  vertical-align: -0.075em;
}

.fa-xl {
  font-size: 1.5em;
  line-height: .04167em;
  vertical-align: -0.125em;
}

.fa-2xl {
  font-size: 2em;
  line-height: .03125em;
  vertical-align: -0.1875em;
}

/* Fixed width */
.fa-fw {
  text-align: center;
  width: 1.25em;
}

/* Alignment */
.fa-pull-left {
  float: left;
  margin-right: .3em;
}

.fa-pull-right {
  float: right;
  margin-left: .3em;
}

/* Animation */
.fa-spin {
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  animation: fa-spin 1s infinite steps(8);
}

@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Rotation */
.fa-rotate-90 {
  transform: rotate(90deg);
}

.fa-rotate-180 {
  transform: rotate(180deg);
}

.fa-rotate-270 {
  transform: rotate(270deg);
}

/* Flip */
.fa-flip-horizontal {
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  transform: scale(1, -1);
}

.fa-flip-both {
  transform: scale(-1, -1);
}

/* Accessibility */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}