/*!
 * K2WebHost - Optimized Font Awesome 7 CSS
 * Ultra-lightweight: Only solid icons + 3 brand icons as lightweight alternatives
 * Based on Font Awesome 7.0.1 - Solid only (113KB vs 274KB = 161KB savings!)
 * File size: ~6KB + 113KB font = 119KB total (vs 280KB+ previous)
 */

/* Base Font Awesome classes */
.fa, .fas, .fa-solid, .fa-brands, .fa-regular, .far {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: var(--fa-display, inline-block);
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    text-rendering: auto;
}

.fa, .fas, .fa-solid {
    font-family: var(--fa-style-family, "Font Awesome 7 Free"), "Font Awesome 6 Free", FontAwesome, monospace;
    font-weight: var(--fa-style, 900);
}

/* Brand icons - lightweight CSS-only alternatives (no extra font needed!) */
.fa-brands {
    font-family: inherit;
    font-weight: normal;
    display: inline-block;
    text-align: center;
    line-height: 1;
}

/* Font definitions */
:root {
    --fa-style-family-classic: "Font Awesome 7 Free";
    --fa-font-solid: normal 900 1em/1 "Font Awesome 7 Free";
}

/* Font face definitions - Font Awesome 7 with fallback to FA6 for compatibility */
@font-face {
    font-family: "Font Awesome 7 Free";
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.1/webfonts/fa-solid-900.woff2) format("woff2"),
         url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.1/webfonts/fa-solid-900.ttf) format("truetype"),
         url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/webfonts/fa-solid-900.woff2) format("woff2");
}

/* SOLID ICONS (fa-solid or fa) */

/* Navigation & UI Icons */
.fa-bolt:before { content: "\f0e7"; }
.fa-question-circle:before, .fa-circle-question:before { content: "\f059"; }
.fa-phone:before { content: "\f095"; }
.fa-check:before { content: "\f00c"; }
.fa-check-circle:before, .fa-circle-check:before { content: "\f058"; }

/* Fallback for check icons if font doesn't load */
.fa-check-circle:before {
    font-family: "Font Awesome 7 Free", "Font Awesome 6 Free", FontAwesome, "Arial Unicode MS", sans-serif !important;
}
.fa-money:before { content: "\f0d6"; }
.fa-map-marker:before { content: "\f041"; }
.fa-envelope:before, .fa-solid.fa-envelope:before { content: "\f0e0"; }
.fa-chevron-down:before { content: "\f078"; }

/* Server & Tech Icons */
.fa-server:before { content: "\f233"; }
.fa-shield:before { content: "\f132"; }
.fa-shield-halved:before { content: "\f3ed"; }
.fa-shield-virus:before { content: "\e06c"; }
.fa-headset:before { content: "\f590"; }
.fa-cogs:before { content: "\f085"; }
.fa-rocket:before { content: "\f135"; }
.fa-lock:before { content: "\f023"; }
.fa-refresh:before { content: "\f021"; }
.fa-history:before { content: "\f1da"; }
.fa-microchip:before { content: "\f2db"; }
.fa-gauge-high:before { content: "\f625"; }
.fa-cloud-download:before { content: "\f0ed"; }
.fa-arrows-spin:before { content: "\e4bb"; }
.fa-terminal:before { content: "\f120"; }
.fa-network-wired:before { content: "\f6ff"; }

/* Storage & Data Icons */
.fa-hdd-o:before, .fa-hard-drive:before { content: "\f0a0"; }
.fa-database:before { content: "\f1c0"; }
.fa-exchange:before { content: "\f0ec"; }
.fa-globe:before { content: "\f0ac"; }

/* Email & Communication Icons */
.fa-envelope-o:before, .fa-envelope-open:before { content: "\f2b6"; }
.fa-envelope-open-text:before { content: "\f658"; }
.fa-mobile-phone:before, .fa-mobile:before { content: "\f10b"; }
.fa-at:before { content: "\40"; }

/* Business & Office Icons */
.fa-briefcase:before { content: "\f0b1"; }
.fa-users:before { content: "\f0c0"; }
.fa-user:before { content: "\f007"; }
.fa-user-shield:before { content: "\f505"; }
.fa-handshake-angle:before { content: "\f4c4"; }
.fa-tags:before { content: "\f02c"; }
.fa-file-invoice-dollar:before { content: "\f571"; }

/* Magic & AI Icons */
.fa-wand-magic-sparkles:before { content: "\e2ca"; }
.fa-magnifying-glass:before { content: "\f002"; }
.fa-magic:before { content: "\f0d0"; }
.fa-lightbulb:before { content: "\f0eb"; }
.fa-vial-circle-check:before { content: "\e596"; }

/* Navigation & Movement Icons */
.fa-arrows-up-down-left-right:before { content: "\f047"; }
.fa-arrows-up-to-line:before { content: "\e4c2"; }
.fa-arrow-right:before { content: "\f061"; }
.fa-share-alt:before { content: "\f1e0"; }
.fa-sitemap:before { content: "\f0e8"; }
.fa-paper-plane:before { content: "\f1d8"; }

/* Content & Media Icons */
.fa-comments-o:before, .fa-comments:before { content: "\f086"; }
.fa-star:before { content: "\f005"; }
.fa-heart:before { content: "\f004"; }
.fa-bullhorn:before { content: "\f0a1"; }
.fa-bullseye:before { content: "\f140"; }
.fa-umbrella:before { content: "\f0e9"; }
.fa-code:before { content: "\f121"; }

/* Time & Schedule Icons */
.fa-clock-rotate-left:before { content: "\f1da"; }
.fa-balance-scale:before { content: "\f24e"; }

/* Support & Help Icons */
.fa-life-ring:before { content: "\f1cd"; }
.fa-support:before { content: "\f1cd"; }

/* Medical & Science Icons */
.fa-vial-circle-check:before { content: "\e596"; }

/* BRAND ICONS - Lightweight CSS-only alternatives (no 101KB font download needed!) */

/* WordPress - Clean, modern W logo */
.fa-brands.fa-wordpress:before,
.fa-wordpress:before { 
    content: "W";
    background: #21759b;
    color: white;
    border-radius: 50%;
    padding: 5px 7px;
    font-weight: 900;
    font-size: 0.85em;
    margin-right: 2px;
    display: inline-block;
    text-align: center;
    min-width: 20px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    line-height: 1;
}

/* Mobile responsive sizing for WordPress icon */
@media (max-width: 768px) {
    .fa-brands.fa-wordpress:before,
    .fa-wordpress:before {
        font-size: 0.8em;
        padding: 3px 5px;
        min-width: 16px;
    }
}

/* Facebook - Improved f logo */
.fa-brands.fa-facebook-f:before,
.fa-facebook:before, 
.fa-facebook-f:before { 
    content: "f";
    background: linear-gradient(135deg, #1877f2 0%, #4267B2 100%);
    color: white;
    padding: 4px 7px;
    border-radius: 8px;
    font-weight: bold;
    font-size: 0.9em;
    margin-right: 2px;
    display: inline-block;
    text-align: center;
    min-width: 18px;
    box-shadow: 0 2px 4px rgba(24, 119, 242, 0.3);
}

/* Instagram - Modern square logo with authentic gradient */
.fa-brands.fa-instagram:before { 
    content: "IG";
    background: linear-gradient(45deg, #405DE6, #5851DB, #833AB4, #C13584, #E1306C, #FD1D1D, #F56040, #F77737, #FCAF45, #FFDC80);
    color: white;
    border-radius: 20%;
    padding: 4px 6px;
    font-weight: bold;
    font-size: 0.8em;
    margin-right: 2px;
    display: inline-block;
    text-align: center;
    min-width: 18px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.3);
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}

/* Linux - Terminal icon (generic FA icon) */
.fa-brands.fa-linux:before { 
    content: "\f120"; /* fa-terminal */
    background: #000;
    color: white;
    border-radius: 8px;
    padding: 4px 6px;
    font-size: 0.9em;
    margin-right: 2px;
    display: inline-block;
    text-align: center;
    min-width: 18px;
    font-family: "Font Awesome 7 Free", "Font Awesome 6 Free", FontAwesome;
    font-weight: 900;
}

/* X (Twitter) - Updated styling */
.fa-brands.fa-x-twitter:before,
.fa-x-twitter:before,
.fa-twitter:before { 
    content: "𝕏"; 
    background: #000; 
    color: white; 
    padding: 4px 6px; 
    border-radius: 3px; 
    font-weight: bold;
    font-size: 0.9em;
    margin-right: 2px;
    display: inline-block;
    text-align: center;
    min-width: 18px;
}

/* Size classes */
.fa-1x { font-size: 1em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }

/* Animation */
.fa-spin {
    -webkit-animation: fa-spin 2s infinite linear;
    animation: fa-spin 2s infinite linear;
}

@-webkit-keyframes fa-spin {
    0% { -webkit-transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); }
}

@keyframes fa-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Mobile optimizations */
@media (max-width: 768px) {
    .fa-spin {
        animation-duration: 1.5s;
    }
}

/* Fallback for older browsers */
.no-fontface .fa:before,
.no-fontface .fas:before,
.no-fontface .fa-brands:before {
    font-family: sans-serif;
    content: "[icon]";
}
