/* Font Awesome Local Backup - Essential Icons Only - Clean Version */
.fa, .fab, .fad, .fal, .far, .fas {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

/* Size variants */
.fa-lg { font-size: 1.33333em; line-height: .75em; vertical-align: -.0667em; }
.fa-xs { font-size: .75em; }
.fa-sm { font-size: .875em; }
.fa-1x { font-size: 1em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }
.fa-4x { font-size: 4em; }
.fa-5x { font-size: 5em; }

/* Utilities */
.fa-fw { text-align: center; width: 1.25em; }
.fa-border { border: .08em solid #eee; border-radius: .1em; padding: .2em .25em .15em; }
.fa-pull-left { float: left; }
.fa-pull-right { float: right; }

/* Animations */
.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); }
}

/* Rotations with proper filter support */
.fa-rotate-90 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
    transform: rotate(90deg);
}
.fa-rotate-180 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
    transform: rotate(180deg);
}
.fa-rotate-270 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
    transform: rotate(270deg);
}

/* Flips with proper filter support */
.fa-flip-horizontal {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
    transform: scaleX(-1);
}
.fa-flip-vertical {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
    transform: scaleY(-1);
}
.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
    transform: scale(-1);
}

/* Stack */
.fa-stack { display: inline-block; height: 2em; line-height: 2em; position: relative; vertical-align: middle; width: 2.5em; }
.fa-stack-1x, .fa-stack-2x { left: 0; position: absolute; text-align: center; width: 100%; }
.fa-stack-1x { line-height: inherit; }
.fa-stack-2x { font-size: 2em; }
.fa-inverse { color: #fff; }

/* Essential icons used in the project */
.fa-facebook:before { content: "\f09a"; }
.fa-facebook-f:before { content: "\f39e"; }
.fa-instagram:before { content: "\f16d"; }
.fa-youtube:before { content: "\f167"; }
.fa-google:before { content: "\f1a0"; }
.fa-envelope:before { content: "\f0e0"; }
.fa-phone:before { content: "\f095"; }
.fa-mobile-alt:before { content: "\f3cd"; }
.fa-map-marker-alt:before { content: "\f3c5"; }
.fa-chevron-down:before { content: "\f078"; }
.fa-chevron-left:before { content: "\f053"; }
.fa-chevron-right:before { content: "\f054"; }
.fa-chevron-up:before { content: "\f077"; }
.fa-cut:before { content: "\f0c4"; }
.fa-microscope:before { content: "\f610"; }
.fa-user-tie:before { content: "\f508"; }
.fa-eye:before { content: "\f06e"; }
.fa-venus:before { content: "\f221"; }
.fa-star:before { content: "\f005"; }
.fa-calendar-check:before { content: "\f274"; }
.fa-tag:before { content: "\f02b"; }
.fa-whatsapp:before { content: "\f232"; }

/* Font face definitions with proper font-display */
@font-face {
    font-family: "Font Awesome 6 Free";
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/webfonts/fa-solid-900.woff2") format("woff2"),
         url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/webfonts/fa-solid-900.ttf") format("truetype");
}

@font-face {
    font-family: "Font Awesome 6 Brands";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/webfonts/fa-brands-400.woff2") format("woff2"),
         url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/webfonts/fa-brands-400.ttf") format("truetype");
}

/* Font families */
.fa, .fas { font-family: "Font Awesome 6 Free"; font-weight: 900; }
.fab { font-family: "Font Awesome 6 Brands"; font-weight: 400; }

/* Screen reader only */
.sr-only {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
