/* Font Awesome Configuration - Fix for icon display */
/* FontAwesome 7.0.1 loaded from CDN: https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.1/ */

/* Core Font Awesome styling - ensure all icons render */
.fa, .fas, .far, .fab, .fad, .fal, .falt {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

/* Font Awesome 7 - SVG with CSS classes */
svg.svg-inline--fa {
    display: inline-block;
    height: 1em;
    overflow: visible;
    vertical-align: -0.125em;
}

/* Ensure all FontAwesome classes work properly */
[class^="fa"]:before,
[class*=" fa"]:before,
[class^="far"]:before,
[class*=" far"]:before,
[class^="fas"]:before,
[class*=" fas"]:before,
[class^="fab"]:before,
[class*=" fab"]:before,
[class^="fad"]:before,
[class*=" fad"]:before {
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
}

/* Ensure proper icon styling */
.fa, .far, .fas, .fab, .fad {
    display: inline-block;
    margin-right: 5px;
    vertical-align: middle;
    line-height: 1;
}

/* Service Icons */
.service-icon {
    font-size: 48px;
    color: #ff6b6b;
    margin-bottom: 15px;
}

.service-title i {
    margin-right: 8px;
    color: #ff6b6b;
}

/* Dropdown Icons */
.dropdown-menu i {
    margin-right: 8px;
    width: 20px;
    text-align: center;
    color: #ff6b6b;
}

.dropdown-item i {
    display: inline-block;
    width: 20px;
    margin-right: 10px;
}

/* Header icons styling */
.header-top-contact ul li a i,
.header-top-social a i {
    margin-right: 8px;
}

/* Navigation icons */
.nav-link i {
    margin-right: 5px;
}

/* Breadcrumb icons */
.breadcrumb-menu i {
    margin-right: 5px;
}

/* Icon sizing utilities */
i.fa-sm { font-size: 0.875em; }
i.fa-lg { font-size: 1.33333em; }
i.fa-xl { font-size: 1.25em; }
i.fa-2x { font-size: 2em; }
i.fa-3x { font-size: 3em; }
i.fa-4x { font-size: 4em; }
i.fa-5x { font-size: 5em; }

/* Icon colors */
i.text-danger { color: #ff6b6b !important; }
i.text-success { color: #28a745 !important; }
i.text-warning { color: #ffc107 !important; }

/* Location icon fixes */
i.fa-location-dot,
i.fa-map-marker-alt {
    font-weight: 900;
}

/* Fix for anchors with icon only */
a[href*="#"] i,
a.icon-only i {
    margin: 0;
}

/* Ensure location icons are visible */
.header-top-contact .fa-location-dot,
.footer-contact .fa-location-dot {
    color: #ff6b6b;
    margin-right: 8px;
}

/* Ensure icons in buttons display correctly */
.btn i,
.btn-light i,
.btn-primary i {
    margin-right: 5px;
    vertical-align: middle;
}

/* Category list icons */
.category-list a i {
    margin-right: 8px;
    display: inline-block;
    width: 16px;
    text-align: center;
}

/* Service single list styling */
.service-single-list i {
    margin-right: 12px;
    margin-top: 4px;
    font-size: 14px;
    display: inline-flex;
}

/* Process step icons */
.process-step i {
    color: #ff6b6b;
    margin-right: 10px;
}

/* Ensure font-awesome 5 brands display */
.fab {
    font-weight: 400;
}

/* Ensure font-awesome 5 solid display */
.fas {
    font-weight: 900;
}

/* Ensure font-awesome 5 regular display */
.far {
    font-weight: 400;
}

/* Fix for nested icons */
i.fa-nested {
    margin-left: 10px;
}

/* Arrow and action icons */
i.fa-arrow-right,
i.fa-arrow-left,
i.fa-check,
i.fa-times {
    margin-right: 5px;
}

/* Responsive icon sizing */
@media (max-width: 768px) {
    .fa-2x { font-size: 1.5em; }
    .fa-3x { font-size: 2em; }
}
