/* ============================================================
   YachtBioCleaning — Local Icon Subset
   Replaces full Font Awesome (900KB+) with only the 24 icons used (3KB total)
   ============================================================ */

@font-face {
  font-family: "FA-Solid";
  src: url("../webfonts/fa-solid-subset.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: "FA-Brands";
  src: url("../webfonts/fa-brands-subset.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: block;
}

/* Base classes */
.fa-solid, .fa-brands, .fas, .fab {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  line-height: 1;
}

.fa-solid, .fas {
  font-family: "FA-Solid";
  font-weight: 900;
}

.fa-brands, .fab {
  font-family: "FA-Brands";
  font-weight: 400;
}

/* Spin animation (loading state) */
.fa-spin {
  animation: fa-spin 1s linear infinite;
}
@keyframes fa-spin {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* ── Solid icons ── */
.fa-check::before              { content: "\f00c"; }
.fa-chevron-down::before       { content: "\f078"; }
.fa-circle-half-stroke::before { content: "\f042"; }
.fa-circle-notch::before       { content: "\f1ce"; }
.fa-couch::before              { content: "\f4b8"; }
.fa-droplet::before            { content: "\f043"; }
.fa-envelope::before           { content: "\f0e0"; }
.fa-expand::before             { content: "\f065"; }
.fa-flask-vial::before         { content: "\e4f3"; }
.fa-grip::before               { content: "\f58d"; }
.fa-hand-sparkles::before      { content: "\e05d"; }
.fa-images::before             { content: "\f302"; }
.fa-location-dot::before       { content: "\f3c5"; }
.fa-mobile-screen-button::before { content: "\f3cd"; }
.fa-paper-plane::before        { content: "\f1d8"; }
.fa-phone::before              { content: "\f095"; }
.fa-shield-halved::before      { content: "\e24b"; }
.fa-star::before               { content: "\f005"; }
.fa-tree::before               { content: "\f1bb"; }
.fa-wind::before               { content: "\f72e"; }

/* ── Brand icons ── */
.fa-facebook-f::before  { content: "\f39e"; }
.fa-instagram::before   { content: "\f16d"; }
.fa-linkedin-in::before { content: "\f0e1"; }
