﻿/*@import 'bootstrap.less';*/
:root {
  /* URL-encode the SVG; replace '#' with '%23' for the color */
  --fa-circle: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z'/%3E%3C/svg%3E");
  --fa-facebook-f: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z'/%3E%3C/svg%3E");
  --fa-instagram: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z'/%3E%3C/svg%3E");
  --fa-envelope: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9V112c0-26.5-21.5-48-48-48H48c-26.5 0-48 21.5-48 48v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z'/%3E%3C/svg%3E");
  --fa-shopping-cart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.332-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z'/%3E%3C/svg%3E");
  --fa-user-secret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-32 0 512 512'%3E%3Cpath fill='black' d='M383.9 308.3l23.9-62.6c4-10.5-3.7-21.7-15-21.7h-58.5c11-18.9 17.8-40.6 17.8-64v-.3c39.2-7.8 64-19.1 64-31.7 0-13.3-27.3-25.1-70.1-33-9.2-32.8-27-65.8-40.6-82.8-9.5-11.9-25.9-15.6-39.5-8.8l-27.6 13.8c-9 4.5-19.6 4.5-28.6 0L182.1 3.4c-13.6-6.8-30-3.1-39.5 8.8-13.5 17-31.4 50-40.6 82.8-42.7 7.9-70 19.7-70 33 0 12.6 24.8 23.9 64 31.7v.3c0 23.4 6.8 45.1 17.8 64H56.3c-11.5 0-19.2 11.7-14.7 22.3l25.8 60.2C27.3 329.8 0 372.7 0 422.4v44.8C0 491.9 20.1 512 44.8 512h358.4c24.7 0 44.8-20.1 44.8-44.8v-44.8c0-48.4-25.8-90.4-64.1-114.1zM176 480l-41.6-192 49.6 32 24 40-32 120zm96 0l-32-120 24-40 49.6-32L272 480zm41.7-298.5c-3.9 11.9-7 24.6-16.5 33.4-10.1 9.3-48 22.4-64-25-2.8-8.4-15.4-8.4-18.3 0-17 50.2-56 32.4-64 25-9.5-8.8-12.7-21.5-16.5-33.4-.8-2.5-6.3-5.7-6.3-5.8v-10.8c28.3 3.6 61 5.8 96 5.8s67.7-2.1 96-5.8v10.8c-.1.1-5.6 3.2-6.4 5.8z'/%3E%3C/svg%3E");
  --fa-users: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath fill='black' d='M96 128c0-35.3 28.7-64 64-64s64 28.7 64 64-28.7 64-64 64-64-28.7-64-64zm448 0c0-35.3 28.7-64 64-64s64 28.7 64 64-28.7 64-64 64-64-28.7-64-64zm-32 24c0 30.9 25.1 56 56 56s56-25.1 56-56-25.1-56-56-56-56 25.1-56 56zm-416 0c0-30.9 25.1-56 56-56s56 25.1 56 56-25.1 56-56 56-56-25.1-56-56zm544 32h-16c-17.7 0-32 14.3-32 32v128c0 17.7 14.3 32 32 32h16c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zM32 184c-17.7 0-32 14.3-32 32v128c0 17.7 14.3 32 32 32h16c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32H32zm416 0h-32c-17.7 0-32 14.3-32 32v160c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-192 0h-32c-17.7 0-32 14.3-32 32v160c0 17.7 14.3 32 32 32h32c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32z'/%3E%3C/svg%3E");
  --fa-home: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M280.37 148.26L96 300.11V464a16 16 0 0 0 16 16l112.06-.29a16 16 0 0 0 15.92-16V368a16 16 0 0 1 16-16h64a16 16 0 0 1 16 16v95.64a16 16 0 0 0 16.05 16.05l112.06-.29a16 16 0 0 0 15.91-16V300.11l-184.37-151.85zM567.3 264.45L305.21 48.33a32 32 0 0 0-42.42 0L8.7 264.45a16 16 0 0 0-2.25 22.63l12.46 15.15a16 16 0 0 0 22.63 2.25L288 97.78l246.46 203.7a16 16 0 0 0 22.63-2.25l12.46-15.15a16 16 0 0 0-2.25-22.63z'/%3E%3C/svg%3E");
  --fa-tag: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M0 252.118V48C0 21.49 21.49 0 48 0h204.118a48 48 0 0 1 33.941 14.059l211.882 211.882c18.745 18.745 18.745 49.137 0 67.882L293.823 497.941c-18.745 18.745-49.137 18.745-67.882 0L14.059 286.059A48 48 0 0 1 0 252.118zM112 160a48 48 0 1 0-48-48 48.054 48.054 0 0 0 48 48z'/%3E%3C/svg%3E");
  --fa-file: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm160-14.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z'/%3E%3C/svg%3E");
  --fa-building: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M436 480h-20V24c0-13.255-10.745-24-24-24H56C42.745 0 32 10.745 32 24v456H12c-6.627 0-12 5.373-12 12v20h448v-20c0-6.627-5.373-12-12-12zM128 76h64v64h-64V76zm0 112h64v64h-64v-64zm0 112h64v64h-64v-64zm128-224h64v64h-64V76zm0 112h64v64h-64v-64zm0 112h64v64h-64v-64z'/%3E%3C/svg%3E");
  --fa-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='black' d='M493.4 24.6l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-36 76.7-98.9 140.5-177.2 177.2l-49.6-60.6c-6.7-8.3-18.2-11.1-28-6.9l-112 48C3.9 366.5-2 378.1.6 389.4l24 104C27.1 504.2 36.7 512 48 512c256.1 0 464-207.5 464-464 0-11.3-7.8-20.9-18.6-23.4z'/%3E%3C/svg%3E");
  /* Official Font Awesome 4 Truck Path (viewBox 0 0 640 512) */
  --fa-truck: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath fill='black' d='M624 352h-16V243.9c0-12.7-5.1-24.9-14.1-33.9L494 110.1c-9-9-21.2-14.1-33.9-14.1H416V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v320c0 26.5 21.5 48 48 48h16c0 53 43 96 96 96s96-43 96-96h128c0 53 43 96 96 96s96-43 96-96h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM160 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm320 0c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-208H416V144h44.1l99.9 99.9V256z'/%3E%3C/svg%3E");
  /* Official Font Awesome 4 File-Text Path (viewBox 0 0 384 512) */
  --fa-file-text: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath fill='black' d='M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm64 236c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8zm0-64c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8zm0-64c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8zm160-91.9V128H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z'/%3E%3C/svg%3E");
  --fa-star: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath fill='black' d='M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z'/%3E%3C/svg%3E");
  --fa-star-o: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath fill='black' d='M528.1 171.5L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6zM388.6 312.3l23.7 138.4L288 385.4l-124.3 65.3 23.7-138.4-100.6-98 139-20.2 62.2-126 62.2 126 139 20.2-100.6 98z'/%3E%3C/svg%3E");
  --fa-cube: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='black' d='M234.5 9.2c13.4-12.3 33.7-12.3 47.1 0L499 213c8.2 7.5 13 18.1 13 29.2V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V242.2c0-11.1 4.8-21.7 13-29.2L234.5 9.2zM64 258.5V448h384V258.5L256 67.4 64 258.5z'/%3E%3C/svg%3E");
  --fa-plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='black' d='M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32V224H48c-17.7 0-32 14.3-32 32s14.3 32 32 32H192V432c0 17.7 14.3 32 32 32s32-14.3 32-32V288H400c17.7 0 32-14.3 32-32s-14.3-32-32-32H256V80z'/%3E%3C/svg%3E");
  --fa-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='black' d='M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z'/%3E%3C/svg%3E");
  --fa-check-circle: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='black' d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z'/%3E%3C/svg%3E");
  --fa-minus-circle: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='black' d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM184 232H328c13.3 0 24 10.7 24 24s-10.7 24-24 24H184c-13.3 0-24-10.7-24-24s10.7-24 24-24z'/%3E%3C/svg%3E");
  --fa-file-pdf-o: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath fill='black' d='M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5-.1 0 21.4 0 47.9v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V47.9h160V144c0 17.7 14.3 32 32 32h96v288H48zm205.1-236.4c-11.4-11.4-29.8-11.4-41.2 0l-71.1 71.1-28.1-28.1c-11.4-11.4-29.8-11.4-41.2 0s-11.4 29.8 0 41.2l48.6 48.6c11.4 11.4 29.8 11.4 41.2 0l91.9-91.9c11.3-11.2 11.3-29.6-.1-40.9z'/%3E%3C/svg%3E");
  --fa-greater-than: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='black' d='M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z'/%3E%3C/svg%3E");
  --fa-less-than: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='black' d='M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z'/%3E%3C/svg%3E");
  --fa-trash: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='black' d='M135.2 17.7L128 32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H320l-7.2-14.3C307.4 6.8 296.3 0 284.2 0H163.8c-12.1 0-23.2 6.8-28.6 17.7zM416 128H32L53.2 467c1.6 25.3 22.6 45 47.9 45H346.9c25.3 0 46.3-19.7 47.9-45L416 128z'/%3E%3C/svg%3E");
  --fa-dollar: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='black' d='M160 0c17.7 0 32 14.3 32 32V67.7c1.6 .2 3.1 .4 4.7 .7c.4 .1 .7 .1 1.1 .2l48 8.8c17.4 3.2 28.9 19.9 25.7 37.2s-19.9 28.9-37.2 25.7l-47.5-8.7c-31.3-4.6-58.1 18.9-58.1 50.5c0 28.6 23.4 51.9 52 51.9h1c32.5 0 63.8 11.2 88.8 31.6c26.2 21.4 41.2 52.8 41.2 85.9c0 62.4-48 113.9-108.9 119.5V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V444.3c-1.6-.2-3.1-.4-4.7-.7c-.4-.1-.7-.1-1.1-.2l-48-8.8c-17.4-3.2-28.9-19.9-25.7-37.2s19.9-28.9 37.2-25.7l47.5 8.7c31.3 4.6 58.1-18.9 58.1-50.5c0-28.6-23.4-51.9-52-51.9h-1c-32.5 0-63.8-11.2-88.8-31.6C27.3 333.9 12.3 302.5 12.3 269.4c0-62.4 48-113.9 108.9-119.5V32c0-17.7 14.3-32 32-32z'/%3E%3C/svg%3E");
  --fa-arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath fill='black' d='M169.4 470.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 370.8 224 64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 306.7L54.6 265.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z'/%3E%3C/svg%3E");
  --fa-lock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='black' d='M144 144v48H304V144c0-44.2-35.8-80-80-80s-80 35.8-80 80zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-248 40c-22.1 0-40 17.9-40 40v80c0 22.1 17.9 40 40 40h80c22.1 0 40-17.9 40-40V336c0-22.1-17.9-40-40-40h-80z'/%3E%3C/svg%3E");
  --fa-sliders: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='black' d='M0 416c0 17.7 14.3 32 32 32l54.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L512 448c17.7 0 32-14.3 32-32s-14.3-32-32-32l-278.7 0c-12.3-28.3-40.5-48-73.3-48s-61 19.7-73.3 48L32 384c-17.7 0-32 14.3-32 32zm128 0a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM320 256c0 17.7 14.3 32 32 32l54.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48l54.7 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-54.7 0c-12.3-28.3-40.5-48-73.3-48s-61 19.7-73.3 48L352 224c-17.7 0-32 14.3-32 32zm192 0a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm-512-96c0 17.7 14.3 32 32 32l182.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L512 192c17.7 0 32-14.3 32-32s-14.3-32-32-32l-150.7 0c-12.3-28.3-40.5-48-73.3-48s-61 19.7-73.3 48L32 128c-17.7 0-32 14.3-32 32zm192 0a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z'/%3E%3C/svg%3E");
  --fa-play: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath fill='black' d='M73 39c-14.8-9.1-33.4-9.4-48.5-.9S0 62.6 0 80V432c0 17.4 9.4 33.4 24.5 41.9s33.7 8.1 48.5-.9L361 297c14.3-8.7 23-24.2 23-41s-8.7-32.2-23-41L73 39z'/%3E%3C/svg%3E");
  --fa-warning: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath fill='black' d='M288 32c-20.7 0-38.1 12.9-45.4 31.4L3.5 417.4c-7.2 18.2 6.1 38.6 25.7 38.6H546.8c19.6 0 32.9-20.4 25.7-38.6L323.4 63.4C316.1 44.9 298.7 32 288 32zM256 192c0-17.7 14.3-32 32-32s32 14.3 32 32V320c0 17.7-14.3 32-32 32s-32-14.3-32-32V192zM288 416a32 32 0 1 1 0-64 32 32 0 1 1 0 64z'/%3E%3C/svg%3E");
  --fa-bot: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 5V20.7929C3 21.2383 3.53857 21.4614 3.85355 21.1464L7.70711 17.2929C7.89464 17.1054 8.149 17 8.41421 17H19C20.1046 17 21 16.1046 21 15V5C21 3.89543 20.1046 3 19 3H5C3.89543 3 3 3.89543 3 5Z' fill='black'/%3E%3Cpath d='M15 12C14.2005 12.6224 13.1502 13 12 13C10.8498 13 9.79952 12.6224 9 12' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3Ccircle cx='9' cy='8' r='1.5' fill='white'/%3E%3Ccircle cx='15' cy='8' r='1.5' fill='white'/%3E%3C/svg%3E");
}
.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
/* Base class for your icons */
.icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  /* Matches icon color to text color */
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  mask-size: contain;
  vertical-align: middle;
  vertical-align: -0.125em;
  /* Standard FA alignment fix */
}
.is-bot {
  -webkit-mask-image: var(--fa-bot);
  mask-image: var(--fa-bot);
}
.is-arrow-down {
  -webkit-mask-image: var(--fa-arrow-down);
  mask-image: var(--fa-arrow-down);
}
.is-lock {
  -webkit-mask-image: var(--fa-lock);
  mask-image: var(--fa-lock);
}
.is-sliders {
  -webkit-mask-image: var(--fa-sliders);
  mask-image: var(--fa-sliders);
}
.is-play {
  -webkit-mask-image: var(--fa-play);
  mask-image: var(--fa-play);
}
.is-warning {
  -webkit-mask-image: var(--fa-warning);
  mask-image: var(--fa-warning);
}
.is-check-circle {
  -webkit-mask-image: var(--fa-check-circle);
  mask-image: var(--fa-check-circle);
}
.is-circle {
  -webkit-mask-image: var(--fa-circle);
  mask-image: var(--fa-circle);
}
.is-dollar {
  -webkit-mask-image: var(--fa-dollar);
  mask-image: var(--fa-dollar);
}
.is-cube {
  -webkit-mask-image: var(--fa-cube);
  mask-image: var(--fa-cube);
}
.is-greater-than {
  -webkit-mask-image: var(--fa-greater-than);
  mask-image: var(--fa-greater-than);
}
.is-less-than {
  -webkit-mask-image: var(--fa-less-than);
  mask-image: var(--fa-less-than);
}
.is-plus {
  -webkit-mask-image: var(--fa-plus);
  mask-image: var(--fa-plus);
}
.is-minus {
  -webkit-mask-image: var(--fa-minus);
  mask-image: var(--fa-minus);
}
.is-minus-circle {
  -webkit-mask-image: var(--fa-minus-circle);
  mask-image: var(--fa-minus-circle);
}
.is-facebook {
  -webkit-mask-image: var(--fa-facebook-f);
  mask-image: var(--fa-facebook-f);
}
.is-instagram {
  -webkit-mask-image: var(--fa-instagram);
  mask-image: var(--fa-instagram);
}
.is-envelope {
  -webkit-mask-image: var(--fa-envelope);
  mask-image: var(--fa-envelope);
}
.is-cart {
  -webkit-mask-image: var(--fa-shopping-cart);
  mask-image: var(--fa-shopping-cart);
}
.is-user-secret {
  -webkit-mask-image: var(--fa-user-secret);
  mask-image: var(--fa-user-secret);
}
.is-users {
  -webkit-mask-image: var(--fa-users);
  mask-image: var(--fa-users);
  width: 1.25em;
}
.is-phone {
  -webkit-mask-image: var(--fa-phone);
  mask-image: var(--fa-phone);
  transform: scaleX(-1);
}
.is-home {
  -webkit-mask-image: var(--fa-home);
  mask-image: var(--fa-home);
}
.is-tag {
  -webkit-mask-image: var(--fa-tag);
  mask-image: var(--fa-tag);
}
.is-trash {
  -webkit-mask-image: var(--fa-trash);
  mask-image: var(--fa-trash);
}
.is-file {
  -webkit-mask-image: var(--fa-file);
  mask-image: var(--fa-file);
}
.is-file-pdf-o {
  -webkit-mask-image: var(--fa-file-pdf-o);
  mask-image: var(--fa-file-pdf-o);
}
.is-star {
  -webkit-mask-image: var(--fa-star);
  mask-image: var(--fa-star);
}
.is-star-o {
  -webkit-mask-image: var(--fa-star-o);
  mask-image: var(--fa-star-o);
}
.is-building {
  -webkit-mask-image: var(--fa-building);
  mask-image: var(--fa-building);
}
.is-truck {
  -webkit-mask-image: var(--fa-truck);
  mask-image: var(--fa-truck);
  /* Wide icon adjustment */
  width: 1.25em;
}
.is-file-text {
  -webkit-mask-image: var(--fa-file-text);
  mask-image: var(--fa-file-text);
  /* File icons are usually slightly narrow, 1em works fine */
  width: 1em;
}
/* Container for the stacked icons */
.icon-stack {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 2em;
  height: 2em;
  vertical-align: middle;
}
/* Base for the layers */
.stack-layer {
  position: absolute;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  background-color: currentColor;
}
/* Background Layer (usually the circle) */
.layer-bg {
  width: 100%;
  height: 100%;
  -webkit-mask-image: var(--fa-circle);
  mask-image: var(--fa-circle);
}
/* Top Layer (the actual brand/icon) */
.layer-top {
  width: 50%;
  /* Adjust size of the top icon relative to the circle */
  height: 50%;
  color: #fff;
}
.flex {
  display: flex;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.justify {
  justify-content: center;
  align-items: center;
}
.uppercase {
  text-transform: uppercase;
}
.mb5 {
  margin-bottom: 5em;
}
@media (max-width: 768px) {
  .flex-col-m {
    flex-direction: column;
  }
}
@media (max-width: 1080px) {
  .flex-col-t {
    flex-direction: column;
  }
}
/* Container/Link Styling */
.animated-link {
  /*font-size: 24px;*/
  color: #333;
  text-decoration: none;
  /* Important: Remove default underline */
  position: relative;
  /* Allows the pseudo-element to be positioned relative to the link */
  display: inline-block;
  /* Ensures the link container respects the width */
  padding-bottom: 3px;
  /* Optional: Adds space between text and underline */
  display: flex;
  align-items: center;
  /* This is the magic line! */
  gap: 8px;
  /* Adds nice spacing between the text and the symbol */
}
.animated-link:hover {
  color: var(--primary-color);
}
/* Pseudo-element creates the underline */
.animated-link::after {
  content: '';
  position: absolute;
  width: 0;
  /* Start with zero width */
  height: 2px;
  /* Thickness of the line */
  bottom: 0;
  /* Place it at the bottom of the link */
  left: 0;
  background-color: #007bff;
  /* The color of your underline */
  /* This transition makes the animation smooth */
  transition: width 0.3s ease-in-out;
}
/* HOVER STATE: On hover, we expand the width */
.animated-link:hover:after {
  width: 100%;
  /* Grow to 100% of the parent element's width */
}
/* --- Arrow Style (The Element that Rotates) --- */
.arrow {
  /* Make sure the arrow spans the entire area needed for rotation */
  display: inline-block;
  transition: transform 0.3s ease-in-out;
  transform: rotate(180deg);
  color: var(--primary-color);
}
/* ================================================== */
/* HOVER EFFECT: This is where the magic happens */
/* ================================================== */
/* When the main link is hovered, we target the arrow inside it */
.dropdown:hover .animated-link .arrow,
.animated-link:hover .arrow {
  /* Rotate the arrow by 180 degrees */
  transform: rotate(0deg);
}
/* Optional: Change the link color on hover for extra feedback */
.animated-link:hover {
  color: #007bff;
}
html {
  font-size: 14px;
}
@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}
.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}
html {
  position: relative;
  min-height: 100%;
}
body {
  /*margin-bottom: 60px;*/
}
.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}
.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
  text-align: start;
}
:root {
  /* Light theme palette */
  --primary-color: #007bff;
  /* Bright Blue */
  --secondary-color: #28a745;
  /* Green Accent */
  --link-color: #fff;
  --text-dark: #333;
  --text-light: #555;
  --bg-light: #f9f9f9;
  --card-bg: #ffffff;
  --bs-dropdown-link-hover-bg: #555;
  --bs-navbar-toggler-font-size: 1.25em;
}
/* Base Reset and Typography */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
body {
  font-family: 'Arial', sans-serif;
  color: var(--text-dark);
  background-color: var(--bg-light);
  line-height: 1.6;
}
a {
  text-decoration: none;
  color: #fff;
  transition: color 0.3s ease-in-out;
}
a:hover {
  color: var(--primary-color);
}
.transition-colors {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.services {
  padding: 0.5em;
}
/* Navigation Bar */
.navbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 5%;
  background: var(--card-bg);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.logo {
  font-size: 1.25em;
  font-weight: bold;
  color: var(--text-dark);
  display: inline;
}
.logo img {
  width: 4em;
  height: 4em;
  margin-right: -1em;
  object-fit: contain;
}
nav {
  /* Base state of the menu */
  /* Hover state of the menu */
}
nav .dropdown-menu {
  margin-top: 0;
  padding-top: 10px;
  /* Bridge any visual gaps with padding instead of margin */
}
nav .nav-item.dropdown .dropdown-menu {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
}
nav .nav-item.dropdown .dropdown-menu.show {
  opacity: 1;
  visibility: unset;
}
nav .nav-item.dropdown:hover .dropdown-menu {
  display: block;
  /* Overrides Bootstrap default display toggles */
  opacity: 1;
  visibility: visible;
}
nav a {
  margin-left: 25px;
  font-weight: 500;
  color: var(--text-light);
}
nav .flex a {
  margin-left: 0;
}
/* Call to Action Button Style */
.cta-button {
  background-color: var(--primary-color);
  color: white !important;
  padding: 10px 20px;
  border-radius: 25px;
  transition: all 0.3s ease;
  /* The core glowing effect using box-shadow */
  box-shadow: 0 0 0 rgba(74, 144, 226, 0);
  /* Start with zero shadow */
}
.cta-button:hover {
  background-color: #0056b3;
  box-shadow: 0 0 15px rgba(74, 144, 226, 0.8);
  transform: translateY(-2px);
  /* Optional: lifts the button slightly */
}
.cta-button.outline {
  border: 2px solid var(--primary-color);
  color: var(--primary-color) !important;
  background-color: transparent;
}
.cta-button.outline:hover {
  background-color: #0056b3;
  color: white !important;
}
/* General Sections */
section {
  padding: 80px 5%;
  text-align: center;
}
.section-pad {
  padding: 60px 5%;
}
h1,
h2 {
  margin-bottom: 20px;
  color: var(--text-dark);
}
/* Hero Section */
/* 1. Hero (Container) */
.hero {
  position: relative;
  /*background: url('../img/hero-consult.png') no-repeat center center/cover;*/
  /* Placeholder background image */
  background-color: #eef6ff;
  /* Fallback light blue */
  min-height: 50vh;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 100px 5%;
}
.hero picture {
  margin: 2em;
}
.hero h1 {
  /*color: #fff;*/
  font-size: 3.5em;
  margin-bottom: 1em;
  /*text-shadow: 0 0 10px rgba(0, 0, 0, 0.8), 0 0 5px rgba(0, 0, 0, 0.9);*/
}
.hero p {
  /*color: #fff;*/
  /*text-shadow: 0 0 10px rgba(0, 0, 0, 0.8), 0 0 5px rgba(0, 0, 0, 0.9);*/
}
/* 2. Hero Background (The Picture Element) */
.hero-background {
  /* Makes the image fill the container completely */
  /*position: absolute;*/
  border-radius: 2em;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* Sits behind the content */
  z-index: 0;
  /* Optional: Dim the image slightly for readability */
  /*opacity: 0.7;*/
  /* If you need to control image aspect ratios, adjust object-fit */
  object-fit: contain;
}
/* 3. Hero Content (Foreground) */
.hero-content {
  /* Brings content above the background image */
  position: relative;
  z-index: 1;
  /* MUST give it an opaque background overlay for readability */
  /*background-color: rgba(0, 0, 0, 0.30);*/
  padding: 30px;
  max-width: 600px;
  /*color: #fff;*/
  width: 100%;
}
.subtitle {
  font-size: 1.3em;
  color: var(--text-light);
  margin-bottom: 30px;
}
.cta-primary {
  display: inline-block;
  padding: 15px 35px;
  background-color: var(--primary-color);
  color: white;
  font-size: 1.1em;
  border-radius: 50px;
  transition: background-color 0.3s, transform 0.3s;
  margin-bottom: 15px;
}
.cta-primary:hover {
  background-color: #0056b3;
  transform: translateY(-2px);
}
.cta-secondary {
  display: inline-block;
  padding: 0.5em 1em;
  background-color: var(--secondary-color);
  color: white;
  font-size: 1.1em;
  border-radius: 5em;
  transition: background-color 0.3s, transform 0.3s;
  margin-bottom: 1em;
}
.cta-secondary:hover {
  background-color: #0056b3;
  transform: translateY(-2px);
}
/* Service Page Sections */
#service-detail {
  margin-top: 30px;
}
.service-detail {
  background: #fff;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
  flex: 1 1 300px;
  /* Allows cards to flex and wrap */
  text-align: left;
  transition: transform 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  /* Bounce effect for animation */
  min-width: 20em;
}
/* Services Section */
.services-container {
  background-color: var(--card-bg);
  padding-top: 40px;
}
.services-container h2 {
  font-size: 2.2em;
  margin-bottom: 40px;
}
#services {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  justify-content: center;
  margin-top: 30px;
}
.service-card {
  background: #fff;
  padding: 30px;
  border-radius: 10px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
  flex: 1 1 300px;
  /* Allows cards to flex and wrap */
  text-align: left;
  transition: transform 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  /* Bounce effect for animation */
}
.service-card h3 {
  color: var(--primary-color);
  font-size: 1.5em;
  margin-bottom: 10px;
}
/* Animation Placeholder Styling */
.service-card[data-visible] {
  opacity: 1;
  transform: translateY(0) scale(1);
}
.service-card:not([data-visible]) {
  opacity: 0;
  transform: translateY(50px) scale(0.95);
}
/* About Section Styling */
.content-box {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
}
.content-box ul {
  list-style: none;
  padding-top: 20px;
}
.content-box li {
  padding: 10px 0;
  border-bottom: 1px dashed #eee;
  font-size: 1.1em;
}
/* Contact Form Styling */
.hero-contact {
  background-color: var(--primary-color);
  color: white;
  padding: 80px 5%;
  position: relative;
  display: inline-block;
}
.hero-contact h2,
.hero-contact p {
  color: white;
  margin-bottom: 20px;
}
.hero-contact .img-bg {
  display: block;
  width: 100%;
  height: auto;
}
.hero-contact .overlay {
  position: absolute;
  /* Centers the text completely over the image box */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /* Typography rules */
  color: white;
  text-align: center;
  font-family: sans-serif;
  /* Optional: Adds a dark tint behind text for premium legibility */
  background-color: rgba(0, 0, 0, 0.5);
  padding: 20px;
}
.estimate-form {
  max-width: 500px;
  margin: 30px auto 0;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.estimate-form input[type="text"],
.estimate-form input[type="tel"],
.estimate-form textarea {
  width: 100%;
  padding: 15px;
  border: none;
  border-radius: 8px;
  font-size: 1em;
}
.estimate-form button {
  border: none;
  cursor: pointer;
}
/* FAQ */
.faq-item {
  margin-bottom: 25px;
  border-bottom: 1px dashed #ccc;
  padding-bottom: 15px;
}
.faq-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
.question {
  font-weight: bold;
  color: #0056b3;
  /* A nice blue for questions */
  display: block;
  margin-bottom: 5px;
}
.answer {
  margin-left: 15px;
  padding-left: 10px;
  border-left: 3px solid #e0e0e0;
  color: #333;
}
/* Footer */
footer {
  background-color: #333;
  color: #aaa;
  padding: 20px 0;
  font-size: 0.9em;
  text-align: center;
  text-wrap: auto;
  /*display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;*/
}
footer > * {
  padding: 1em;
}
footer .logo {
  color: #fff;
  font-size: 1.8em;
  line-height: 1.8em;
}
footer .logo img {
  height: 4em;
  width: 4em;
  /*margin: -2em;*/
}
/* Services */
nav .services p {
  color: var(--primary-color);
  font-weight: bold;
}
footer .services p {
  font-weight: bold;
  color: #fff;
}
/* Responsiveness */
@media (max-width: 768px) {
  .navbar {
    flex-direction: column;
    gap: 15px;
    padding: 15px 5%;
  }
  nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
  }
  nav .nav-item.dropdown:hover .dropdown-menu {
    display: block;
    margin-top: 0;
  }
  .hero h1 {
    font-size: 2.5em;
  }
  .service-card {
    flex: 1 1 90%;
    /* Stack on mobile */
  }
  footer {
    align-items: center;
  }
}
/* Responsiveness */
@media (max-width: 1080px) {
  .hero {
    flex-direction: column;
  }
}