.elementor-12 .elementor-element.elementor-element-6438e4a{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12 .elementor-element.elementor-element-0eab8a4{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12 .elementor-element.elementor-element-980ec6d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12 .elementor-element.elementor-element-6470563{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12 .elementor-element.elementor-element-00c6563{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12 .elementor-element.elementor-element-06a1818{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12 .elementor-element.elementor-element-2e3f00f{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-30006a0 *//* =========================================================
   FAR LIGHT ENTERPRISE
   PAGE 01 — HOME
   SECTION 01 — HERO
   FULL FINAL CSS
========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Outfit:wght@400;500;600;700&display=swap');


/* =========================================================
   RESET
========================================================= */

.fl-hero,
.fl-hero * {
  box-sizing: border-box;
}

.fl-hero {
  --fl-red: #e30613;
  --fl-red-dark: #bd000a;

  --fl-black: #080808;
  --fl-dark: #111214;
  --fl-charcoal: #1b1d20;

  --fl-white: #ffffff;
  --fl-grey: #b9bdc2;

  --fl-line: rgba(255, 255, 255, 0.14);

  position: relative;

  width: 100%;
  min-height: 920px;

  display: flex;
  flex-direction: column;
  justify-content: center;

  background: #080808;

  font-family: "Inter", Arial, sans-serif;

  overflow: hidden;
}


/* =========================================================
   BACKGROUND IMAGE
========================================================= */

.fl-hero__media {
  position: absolute;
  inset: 0;

  z-index: 0;

  overflow: hidden;
}

.fl-hero__media img {
  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center 48%;

  filter:
    saturate(0.82)
    contrast(1.08)
    brightness(0.74);

  transform: scale(1.025);
}


/* =========================================================
   BACKGROUND OVERLAY
========================================================= */

.fl-hero__overlay {
  position: absolute;
  inset: 0;

  z-index: 1;

  background:

    linear-gradient(
      90deg,
      rgba(4, 4, 4, 0.97) 0%,
      rgba(4, 4, 4, 0.91) 28%,
      rgba(4, 4, 4, 0.68) 48%,
      rgba(4, 4, 4, 0.32) 72%,
      rgba(4, 4, 4, 0.58) 100%
    ),

    linear-gradient(
      0deg,
      rgba(4, 4, 4, 0.96) 0%,
      rgba(4, 4, 4, 0.14) 42%,
      rgba(4, 4, 4, 0.30) 100%
    );
}


/* =========================================================
   SUBTLE GRID TEXTURE
========================================================= */

.fl-hero__texture {
  position: absolute;
  inset: 0;

  z-index: 2;

  opacity: 0.11;

  pointer-events: none;

  background-image:

    linear-gradient(
      rgba(255, 255, 255, 0.025) 1px,
      transparent 1px
    ),

    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.025) 1px,
      transparent 1px
    );

  background-size: 72px 72px;
}


/* =========================================================
   LARGE BACKGROUND BRAND TEXT
========================================================= */

.fl-hero__bgtext {
  position: absolute;

  left: 50%;
  bottom: 70px;

  z-index: 2;

  transform: translateX(-50%);

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(120px, 16vw, 280px);

  font-weight: 600;

  line-height: 0.8;

  letter-spacing: -0.055em;

  color: transparent;

  -webkit-text-stroke:
    1px rgba(255, 255, 255, 0.055);

  white-space: nowrap;

  pointer-events: none;
}


/* =========================================================
   MAIN WRAPPER
========================================================= */

.fl-hero__wrap {
  position: relative;

  z-index: 5;

  width: min(1440px, calc(100% - 100px));

  margin: 0 auto;

  padding:
    145px 0
    165px;

  display: grid;

  grid-template-columns:
    minmax(0, 1.38fr)
    minmax(340px, 0.62fr);

  align-items: center;

  gap: 85px;
}


/* =========================================================
   LEFT CONTENT
========================================================= */

.fl-hero__content {
  width: 100%;

  max-width: 920px;
}


/* =========================================================
   EYEBROW
========================================================= */

.fl-hero__eyebrow {
  display: inline-flex;
  align-items: center;

  gap: 14px;

  margin-bottom: 27px;

  color: rgba(255, 255, 255, 0.72);

  font-family: "Inter", Arial, sans-serif;

  font-size: 11px;
  font-weight: 600;

  line-height: 1.4;

  letter-spacing: 0.18em;

  text-transform: uppercase;
}

.fl-hero__eyebrow span {
  display: block;

  width: 48px;
  height: 2px;

  flex: 0 0 48px;

  border-radius: 50px;

  background: var(--fl-red);
}


/* =========================================================
   MAIN HEADING
========================================================= */

.fl-hero h1 {
  max-width: 900px;

  margin: 0;

  color: var(--fl-white);

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(58px, 5.25vw, 88px);

  font-weight: 400;

  line-height: 1.015;

  letter-spacing: -0.038em;
}

.fl-hero h1 strong {
  display: block;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-weight: 600;

  letter-spacing: -0.042em;
}


/* =========================================================
   HERO DESCRIPTION
========================================================= */

.fl-hero__lead {
  max-width: 660px;

  margin: 31px 0 0;

  color: rgba(255, 255, 255, 0.68);

  font-family: "Inter", Arial, sans-serif;

  font-size: 16px;
  font-weight: 400;

  line-height: 1.78;

  letter-spacing: -0.01em;
}


/* =========================================================
   ACTION BUTTONS
========================================================= */

.fl-hero__actions {
  display: flex;
  flex-wrap: wrap;

  gap: 13px;

  margin-top: 38px;
}

.fl-btn {
  min-height: 58px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 19px;

  padding: 0 27px;

  border-radius: 12px;

  text-decoration: none;

  font-family: "Inter", Arial, sans-serif;

  font-size: 12px;
  font-weight: 600;

  line-height: 1;

  letter-spacing: 0.025em;

  transition:
    transform 0.25s ease,
    background-color 0.25s ease,
    border-color 0.25s ease,
    color 0.25s ease,
    box-shadow 0.25s ease;
}

.fl-btn svg {
  width: 19px;
  height: 19px;

  flex: 0 0 19px;

  fill: none;

  stroke: currentColor;
  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* PRIMARY BUTTON */

.fl-btn--primary {
  color: #ffffff;

  background: var(--fl-red);

  border: 1px solid var(--fl-red);

  box-shadow:
    0 14px 32px rgba(227, 6, 19, 0.22);
}

.fl-btn--primary:hover {
  color: #ffffff;

  background: var(--fl-red-dark);

  border-color: var(--fl-red-dark);

  transform: translateY(-3px);

  box-shadow:
    0 18px 38px rgba(227, 6, 19, 0.30);
}


/* SECONDARY BUTTON */

.fl-btn--ghost {
  color: #ffffff;

  background: rgba(255, 255, 255, 0.06);

  border: 1px solid rgba(255, 255, 255, 0.19);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.fl-btn--ghost:hover {
  color: #111111;

  background: #ffffff;

  border-color: #ffffff;

  transform: translateY(-3px);

  box-shadow:
    0 14px 30px rgba(0, 0, 0, 0.16);
}


/* =========================================================
   TRUST ROW
========================================================= */

.fl-hero__trust {
  max-width: 770px;

  margin-top: 56px;

  padding-top: 27px;

  border-top: 1px solid var(--fl-line);

  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 18px;
}

.fl-hero__trust-item {
  min-width: 0;

  display: flex;
  align-items: center;

  gap: 13px;
}


/* TRUST ICON */

.fl-hero__trust-icon {
  width: 44px;
  height: 44px;

  flex: 0 0 44px;

  display: grid;
  place-items: center;

  border-radius: 11px;

  color: var(--fl-red);

  background:
    rgba(255, 255, 255, 0.055);

  border:
    1px solid rgba(255, 255, 255, 0.14);
}

.fl-hero__trust-icon svg {
  width: 19px;
  height: 19px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* TRUST TEXT */

.fl-hero__trust-item > div:last-child {
  min-width: 0;

  display: flex;
  flex-direction: column;

  gap: 4px;
}

.fl-hero__trust-item span {
  color: rgba(255, 255, 255, 0.34);

  font-family: "Inter", Arial, sans-serif;

  font-size: 9px;
  font-weight: 500;

  line-height: 1;

  letter-spacing: 0.11em;
}

.fl-hero__trust-item strong {
  color: #ffffff;

  font-family: "Inter", Arial, sans-serif;

  font-size: 12px;
  font-weight: 500;

  line-height: 1.4;
}


/* =========================================================
   RIGHT ENQUIRY PANEL
========================================================= */

.fl-hero__panel {
  position: relative;

  width: 100%;
  max-width: 410px;

  justify-self: end;

  color: #ffffff;

  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      rgba(23, 23, 23, 0.94),
      rgba(8, 8, 8, 0.87)
    );

  border:
    1px solid rgba(255, 255, 255, 0.15);

  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);

  box-shadow:
    0 35px 90px rgba(0, 0, 0, 0.43),
    inset 0 1px 0 rgba(255, 255, 255, 0.055);

  overflow: hidden;
}


/* RED DETAIL */

.fl-hero__panel::before {
  content: "";

  position: absolute;

  left: 0;
  top: 29px;

  width: 4px;
  height: 62px;

  border-radius: 0 6px 6px 0;

  background: var(--fl-red);
}


/* =========================================================
   PANEL TOP
========================================================= */

.fl-hero__panel-top {
  min-height: 108px;

  padding: 25px 28px;

  display: flex;
  align-items: center;

  gap: 18px;
}

.fl-hero__panel-number {
  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: 40px;
  font-weight: 600;

  line-height: 1;

  letter-spacing: -0.035em;
}

.fl-hero__panel-number small {
  color: var(--fl-red);

  font-family: "Inter", Arial, sans-serif;

  font-size: 14px;
  font-weight: 600;

  letter-spacing: 0;
}

.fl-hero__panel-top > div {
  display: flex;
  flex-direction: column;

  gap: 4px;
}

.fl-hero__panel-top div span {
  color: rgba(255, 255, 255, 0.42);

  font-family: "Inter", Arial, sans-serif;

  font-size: 9px;
  font-weight: 500;

  line-height: 1;

  letter-spacing: 0.18em;
}

.fl-hero__panel-top div strong {
  color: #ffffff;

  font-family: "Inter", Arial, sans-serif;

  font-size: 12px;
  font-weight: 600;

  line-height: 1.3;

  letter-spacing: 0.09em;
}


/* =========================================================
   PANEL DIVIDER
========================================================= */

.fl-hero__panel-line {
  height: 1px;

  margin: 0 28px;

  background:
    rgba(255, 255, 255, 0.11);
}


/* =========================================================
   PANEL CONTENT
========================================================= */

.fl-hero__panel-content {
  padding:
    31px 28px
    28px;
}

.fl-hero__panel-label {
  color: var(--fl-red);

  font-family: "Inter", Arial, sans-serif;

  font-size: 9px;
  font-weight: 600;

  line-height: 1;

  letter-spacing: 0.17em;

  text-transform: uppercase;
}


/* PANEL HEADING */

.fl-hero__panel h2 {
  margin: 12px 0 14px;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: 32px;
  font-weight: 500;

  line-height: 1.13;

  letter-spacing: -0.027em;
}


/* PANEL DESCRIPTION */

.fl-hero__panel-content > p {
  margin: 0;

  color: rgba(255, 255, 255, 0.57);

  font-family: "Inter", Arial, sans-serif;

  font-size: 13px;
  font-weight: 400;

  line-height: 1.72;
}


/* =========================================================
   WHATSAPP BUTTON / CARD
========================================================= */

.fl-hero__whatsapp {
  width: 100%;
  min-height: 76px;

  margin-top: 25px;

  padding: 13px 15px;

  display: grid;

  grid-template-columns:
    44px
    minmax(0, 1fr)
    20px;

  align-items: center;

  gap: 12px;

  color: #111111;

  background: #ffffff;

  border-radius: 14px;

  text-decoration: none;

  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.18);

  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    background-color 0.25s ease;
}

.fl-hero__whatsapp:hover {
  color: #111111;

  background: #f7f7f7;

  transform: translateY(-3px);

  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.23);
}


/* WHATSAPP ICON */

.fl-hero__whatsapp-icon {
  width: 44px;
  height: 44px;

  display: grid;
  place-items: center;

  border-radius: 10px;

  color: #ffffff;

  background: var(--fl-red);
}

.fl-hero__whatsapp svg {
  width: 20px;
  height: 20px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* WHATSAPP TEXT */

.fl-hero__whatsapp > span:nth-child(2) {
  min-width: 0;

  display: flex;
  flex-direction: column;

  gap: 4px;
}

.fl-hero__whatsapp small {
  color: #777777;

  font-family: "Inter", Arial, sans-serif;

  font-size: 9px;
  font-weight: 500;

  line-height: 1;

  letter-spacing: 0.08em;

  text-transform: uppercase;
}

.fl-hero__whatsapp strong {
  color: #111111;

  font-family: "Inter", Arial, sans-serif;

  font-size: 13px;
  font-weight: 600;

  line-height: 1.3;
}

.fl-hero__whatsapp-arrow {
  width: 17px !important;
  height: 17px !important;
}


/* =========================================================
   PANEL BOTTOM
========================================================= */

.fl-hero__panel-bottom {
  min-height: 58px;

  padding: 0 28px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 15px;

  background: var(--fl-red);

  border-radius:
    0 0
    21px 21px;
}

.fl-hero__panel-bottom span,
.fl-hero__panel-bottom strong {
  color: #ffffff;

  font-family: "Inter", Arial, sans-serif;

  font-size: 9px;
  font-weight: 600;

  line-height: 1.3;

  letter-spacing: 0.07em;
}


/* =========================================================
   BOTTOM STRIP
========================================================= */

.fl-hero__bottom {
  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  z-index: 8;

  border-top:
    1px solid rgba(255, 255, 255, 0.11);

  background:
    rgba(7, 7, 7, 0.84);

  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.fl-hero__bottom-inner {
  width: min(1440px, calc(100% - 100px));

  min-height: 84px;

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    260px
    minmax(0, 1fr);

  align-items: center;

  gap: 50px;
}


/* =========================================================
   LOCATION
========================================================= */

.fl-hero__location {
  display: flex;
  align-items: center;

  gap: 12px;
}

.fl-hero__location svg {
  width: 19px;
  height: 19px;

  flex: 0 0 19px;

  fill: none;

  stroke: var(--fl-red);

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.fl-hero__location > div {
  display: flex;
  flex-direction: column;

  gap: 3px;
}

.fl-hero__location span {
  color: rgba(255, 255, 255, 0.36);

  font-family: "Inter", Arial, sans-serif;

  font-size: 8px;
  font-weight: 500;

  line-height: 1;

  letter-spacing: 0.16em;
}

.fl-hero__location strong {
  color: #ffffff;

  font-family: "Inter", Arial, sans-serif;

  font-size: 11px;
  font-weight: 500;

  line-height: 1.3;
}


/* =========================================================
   SERVICES TICKER
========================================================= */

.fl-hero__service-ticker {
  min-width: 0;

  display: flex;
  align-items: center;
  justify-content: flex-end;

  gap: 21px;

  overflow: hidden;

  white-space: nowrap;
}

.fl-hero__service-ticker span {
  color: rgba(255, 255, 255, 0.53);

  font-family: "Inter", Arial, sans-serif;

  font-size: 9px;
  font-weight: 500;

  line-height: 1;

  letter-spacing: 0.11em;
}

.fl-hero__service-ticker i {
  display: block;

  width: 4px;
  height: 4px;

  flex: 0 0 4px;

  border-radius: 50%;

  background: var(--fl-red);
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1600px) {

  .fl-hero__wrap,
  .fl-hero__bottom-inner {
    width: min(1500px, calc(100% - 120px));
  }

}


/* =========================================================
   SMALLER DESKTOP
========================================================= */

@media (max-width: 1280px) {

  .fl-hero__wrap {
    width: min(1180px, calc(100% - 60px));

    gap: 55px;
  }

  .fl-hero h1 {
    font-size: clamp(54px, 5.4vw, 76px);
  }

  .fl-hero__bottom-inner {
    width: min(1180px, calc(100% - 60px));

    gap: 30px;
  }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

  .fl-hero {
    min-height: auto;
  }


  .fl-hero__media img {
    object-position: 62% center;
  }


  .fl-hero__overlay {
    background:

      linear-gradient(
        90deg,
        rgba(4, 4, 4, 0.96) 0%,
        rgba(4, 4, 4, 0.84) 52%,
        rgba(4, 4, 4, 0.48) 100%
      ),

      linear-gradient(
        0deg,
        rgba(4, 4, 4, 0.97) 0%,
        rgba(4, 4, 4, 0.22) 50%,
        rgba(4, 4, 4, 0.28) 100%
      );
  }


  .fl-hero__wrap {
    width: min(900px, calc(100% - 50px));

    padding:
      125px 0
      145px;

    grid-template-columns: 1fr;

    gap: 52px;
  }


  .fl-hero__content {
    max-width: 820px;
  }


  .fl-hero h1 {
    max-width: 780px;

    font-size: clamp(56px, 8vw, 78px);
  }


  .fl-hero__panel {
    max-width: 580px;

    justify-self: start;
  }


  .fl-hero__bottom-inner {
    width: min(900px, calc(100% - 50px));

    grid-template-columns:
      220px
      minmax(0, 1fr);

    gap: 20px;
  }


  .fl-hero__service-ticker {
    gap: 14px;
  }


  .fl-hero__service-ticker span:nth-of-type(5),
  .fl-hero__service-ticker i:nth-of-type(4) {
    display: none;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .fl-hero {
    min-height: 100svh;
  }


  /* BACKGROUND */

  .fl-hero__media img {
    object-position: 64% center;

    filter:
      saturate(0.78)
      contrast(1.08)
      brightness(0.66);
  }


  .fl-hero__overlay {
    background:

      linear-gradient(
        180deg,
        rgba(5, 5, 5, 0.50) 0%,
        rgba(5, 5, 5, 0.77) 23%,
        rgba(5, 5, 5, 0.94) 48%,
        rgba(5, 5, 5, 0.99) 100%
      );
  }


  .fl-hero__texture {
    background-size: 50px 50px;
  }


  /* WRAPPER */

  .fl-hero__wrap {
    width: calc(100% - 36px);

    padding:
      108px 0
      125px;

    gap: 42px;
  }


  /* EYEBROW */

  .fl-hero__eyebrow {
    gap: 10px;

    margin-bottom: 20px;

    font-size: 9px;

    letter-spacing: 0.14em;
  }


  .fl-hero__eyebrow span {
    width: 31px;

    flex-basis: 31px;
  }


  /* HEADING */

  .fl-hero h1 {
    max-width: 100%;

    font-size: clamp(43px, 12vw, 60px);

    line-height: 1.035;

    letter-spacing: -0.035em;
  }


  .fl-hero h1 strong {
    letter-spacing: -0.037em;
  }


  /* DESCRIPTION */

  .fl-hero__lead {
    max-width: 100%;

    margin-top: 23px;

    font-size: 14px;

    line-height: 1.7;
  }


  /* BUTTON */

  .fl-hero__actions {
    margin-top: 29px;

    display: grid;

    grid-template-columns: 1fr;

    gap: 10px;
  }


  .fl-btn {
    width: 100%;

    min-height: 56px;

    border-radius: 11px;

    padding: 0 20px;
  }


  /* TRUST */

  .fl-hero__trust {
    margin-top: 38px;

    padding-top: 22px;

    grid-template-columns: 1fr;

    gap: 14px;
  }


  .fl-hero__trust-icon {
    width: 41px;
    height: 41px;

    flex-basis: 41px;

    border-radius: 10px;
  }


  /* PANEL */

  .fl-hero__panel {
    max-width: none;

    border-radius: 18px;
  }


  .fl-hero__panel::before {
    top: 26px;

    height: 56px;
  }


  .fl-hero__panel-top {
    min-height: 100px;

    padding: 22px 20px;
  }


  .fl-hero__panel-number {
    font-size: 36px;
  }


  .fl-hero__panel-line {
    margin: 0 20px;
  }


  .fl-hero__panel-content {
    padding:
      27px 20px
      22px;
  }


  .fl-hero__panel h2 {
    font-size: 28px;

    line-height: 1.15;
  }


  .fl-hero__panel-content > p {
    font-size: 12.5px;

    line-height: 1.7;
  }


  /* WHATSAPP */

  .fl-hero__whatsapp {
    min-height: 72px;

    margin-top: 22px;

    border-radius: 12px;

    grid-template-columns:
      42px
      minmax(0, 1fr)
      18px;
  }


  .fl-hero__whatsapp-icon {
    width: 42px;
    height: 42px;

    border-radius: 9px;
  }


  /* PANEL BOTTOM */

  .fl-hero__panel-bottom {
    min-height: 55px;

    padding: 0 20px;

    border-radius:
      0 0
      17px 17px;
  }


  /* BACKGROUND WORD */

  .fl-hero__bgtext {
    bottom: 77px;

    font-size: 125px;
  }


  /* BOTTOM */

  .fl-hero__bottom-inner {
    width: calc(100% - 36px);

    min-height: 72px;

    display: flex;
    align-items: center;
  }


  .fl-hero__service-ticker {
    display: none;
  }

}


/* =========================================================
   EXTRA SMALL MOBILE
========================================================= */

@media (max-width: 390px) {

  .fl-hero__wrap {
    width: calc(100% - 28px);
  }


  .fl-hero h1 {
    font-size: 41px;
  }


  .fl-hero__panel-top {
    padding-left: 18px;
    padding-right: 18px;
  }


  .fl-hero__panel-content {
    padding-left: 18px;
    padding-right: 18px;
  }


  .fl-hero__panel-line {
    margin-left: 18px;
    margin-right: 18px;
  }


  .fl-hero__panel-bottom {
    padding-left: 18px;
    padding-right: 18px;
  }


  .fl-hero__bottom-inner {
    width: calc(100% - 28px);
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5fc6d33 *//* =========================================================
   FAR LIGHT ENTERPRISE
   PAGE 01 — HOME
   SECTION 02 — INTRODUCTION
========================================================= */

.fl-intro,
.fl-intro * {
  box-sizing: border-box;
}

.fl-intro {
  --fl-red: #e30613;
  --fl-red-dark: #bd000a;

  --fl-dark: #111214;
  --fl-text: #5f6369;
  --fl-muted: #8b8f95;

  --fl-white: #ffffff;
  --fl-soft: #f5f5f4;
  --fl-border: #e6e6e4;

  position: relative;

  width: 100%;

  padding: 125px 0;

  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #fbfbfa 100%
    );

  font-family: "Inter", Arial, sans-serif;

  overflow: hidden;
}


/* =========================================================
   DECORATIVE BACKGROUND
========================================================= */

.fl-intro::before {
  content: "FAR";

  position: absolute;

  right: -45px;
  top: 55px;

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(170px, 19vw, 330px);

  font-weight: 600;

  line-height: 0.8;

  letter-spacing: -0.07em;

  color: transparent;

  -webkit-text-stroke:
    1px rgba(17, 18, 20, 0.045);

  pointer-events: none;
}


/* =========================================================
   WRAPPER
========================================================= */

.fl-intro__wrap {
  position: relative;

  z-index: 2;

  width: min(1380px, calc(100% - 100px));

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 0.92fr)
    minmax(0, 1.08fr);

  align-items: center;

  gap: 100px;
}


/* =========================================================
   VISUAL AREA
========================================================= */

.fl-intro__visual {
  position: relative;

  min-height: 650px;

  padding:
    0 70px
    70px 0;
}


/* MAIN IMAGE */

.fl-intro__image-main {
  position: absolute;

  left: 0;
  top: 0;

  width: calc(100% - 55px);
  height: 575px;

  border-radius: 26px;

  overflow: hidden;

  background: #ddd;
}

.fl-intro__image-main::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0.02),
      rgba(0, 0, 0, 0.22)
    );

  pointer-events: none;
}

.fl-intro__image-main img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
  object-position: center;

  transition:
    transform 0.7s ease;
}

.fl-intro__visual:hover
.fl-intro__image-main img {
  transform: scale(1.035);
}


/* SMALL IMAGE */

.fl-intro__image-small {
  position: absolute;

  right: 0;
  bottom: 0;

  z-index: 3;

  width: 235px;
  height: 265px;

  padding: 8px;

  border-radius: 22px;

  background: #ffffff;

  box-shadow:
    0 25px 70px rgba(20, 20, 20, 0.14);
}

.fl-intro__image-small img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  border-radius: 16px;
}


/* =========================================================
   FLOAT CARD
========================================================= */

.fl-intro__float-card {
  position: absolute;

  left: 35px;
  bottom: 35px;

  z-index: 5;

  width: min(330px, calc(100% - 110px));

  min-height: 108px;

  padding: 22px;

  display: flex;
  align-items: center;

  gap: 18px;

  border-radius: 18px;

  color: #ffffff;

  background:
    rgba(17, 18, 20, 0.93);

  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  box-shadow:
    0 20px 50px rgba(0, 0, 0, 0.26);
}

.fl-intro__float-no {
  min-width: 55px;

  color: var(--fl-red);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 38px;
  font-weight: 600;

  line-height: 1;
}

.fl-intro__float-card > div {
  display: flex;
  flex-direction: column;

  gap: 5px;
}

.fl-intro__float-card small {
  color: rgba(255, 255, 255, 0.45);

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 0.14em;
}

.fl-intro__float-card strong {
  max-width: 190px;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: 15px;
  font-weight: 500;

  line-height: 1.35;
}


/* =========================================================
   CONTENT
========================================================= */

.fl-intro__content {
  position: relative;

  max-width: 700px;
}


/* =========================================================
   EYEBROW
========================================================= */

.fl-intro__eyebrow {
  display: inline-flex;
  align-items: center;

  gap: 13px;

  margin-bottom: 24px;

  color: var(--fl-red);

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 0.18em;

  text-transform: uppercase;
}

.fl-intro__eyebrow span {
  width: 42px;
  height: 2px;

  border-radius: 20px;

  background: var(--fl-red);
}


/* =========================================================
   HEADING
========================================================= */

.fl-intro h2 {
  max-width: 680px;

  margin: 0;

  color: var(--fl-dark);

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(48px, 4.1vw, 68px);

  font-weight: 400;

  line-height: 1.05;

  letter-spacing: -0.038em;
}

.fl-intro h2 strong {
  display: block;

  font-weight: 600;
}


/* =========================================================
   PARAGRAPH
========================================================= */

.fl-intro__lead {
  max-width: 620px;

  margin:
    28px 0
    0;

  color: #34373b;

  font-size: 16px;
  font-weight: 500;

  line-height: 1.75;
}

.fl-intro__text {
  max-width: 610px;

  margin:
    14px 0
    0;

  color: var(--fl-text);

  font-size: 14px;

  line-height: 1.8;
}


/* =========================================================
   FEATURES
========================================================= */

.fl-intro__features {
  margin-top: 40px;

  padding-top: 32px;

  border-top:
    1px solid var(--fl-border);

  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap:
    27px
    34px;
}

.fl-intro__feature {
  display: grid;

  grid-template-columns:
    48px
    minmax(0, 1fr);

  gap: 14px;
}


/* ICON */

.fl-intro__feature-icon {
  width: 48px;
  height: 48px;

  display: grid;
  place-items: center;

  color: var(--fl-red);

  background:
    #fff2f3;

  border:
    1px solid rgba(227, 6, 19, 0.11);

  border-radius: 13px;
}

.fl-intro__feature-icon svg {
  width: 20px;
  height: 20px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* FEATURE CONTENT */

.fl-intro__feature > div:last-child {
  min-width: 0;
}

.fl-intro__feature span {
  display: block;

  margin-bottom: 5px;

  color: #b8b9bc;

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 0.09em;
}

.fl-intro__feature strong {
  display: block;

  color: var(--fl-dark);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 16px;
  font-weight: 500;

  line-height: 1.3;
}

.fl-intro__feature p {
  margin:
    6px 0
    0;

  color: var(--fl-muted);

  font-size: 12px;

  line-height: 1.6;
}


/* =========================================================
   BOTTOM AREA
========================================================= */

.fl-intro__bottom {
  margin-top: 42px;

  padding-top: 29px;

  border-top:
    1px solid var(--fl-border);

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 30px;
}


/* CTA */

.fl-intro__btn {
  min-height: 57px;

  padding:
    0 24px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 18px;

  border-radius: 12px;

  color: #ffffff;

  background: var(--fl-dark);

  text-decoration: none;

  font-size: 12px;
  font-weight: 600;

  transition:
    background 0.25s ease,
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.fl-intro__btn:hover {
  color: #ffffff;

  background: var(--fl-red);

  transform: translateY(-3px);

  box-shadow:
    0 14px 30px rgba(227, 6, 19, 0.2);
}

.fl-intro__btn svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* COMPANY */

.fl-intro__company {
  display: flex;
  flex-direction: column;

  align-items: flex-end;

  gap: 5px;
}

.fl-intro__company span {
  color: #b0b2b5;

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 0.12em;
}

.fl-intro__company strong {
  color: var(--fl-dark);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 13px;
  font-weight: 500;
}


/* =========================================================
   DESKTOP
========================================================= */

@media (max-width: 1250px) {

  .fl-intro__wrap {
    width: min(1120px, calc(100% - 60px));

    gap: 65px;
  }


  .fl-intro__visual {
    min-height: 600px;
  }


  .fl-intro__image-main {
    height: 530px;
  }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 980px) {

  .fl-intro {
    padding: 95px 0;
  }


  .fl-intro__wrap {
    width: min(760px, calc(100% - 50px));

    grid-template-columns: 1fr;

    gap: 75px;
  }


  .fl-intro__visual {
    min-height: 630px;
  }


  .fl-intro__image-main {
    width: calc(100% - 80px);

    height: 560px;
  }


  .fl-intro__content {
    max-width: none;
  }


  .fl-intro h2 {
    max-width: 700px;

    font-size: clamp(50px, 7vw, 65px);
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .fl-intro {
    padding:
      78px 0
      82px;
  }


  .fl-intro::before {
    top: 35px;

    right: -25px;

    font-size: 155px;
  }


  .fl-intro__wrap {
    width: calc(100% - 36px);

    gap: 52px;
  }


  /* VISUAL */

  .fl-intro__visual {
    min-height: 460px;

    padding:
      0 35px
      50px 0;
  }


  .fl-intro__image-main {
    width: calc(100% - 25px);

    height: 410px;

    border-radius: 20px;
  }


  .fl-intro__image-small {
    width: 145px;
    height: 170px;

    padding: 6px;

    border-radius: 16px;
  }


  .fl-intro__image-small img {
    border-radius: 11px;
  }


  /* FLOAT */

  .fl-intro__float-card {
    left: 17px;
    bottom: 18px;

    width: min(285px, calc(100% - 75px));

    min-height: 92px;

    padding: 17px;

    gap: 13px;

    border-radius: 15px;
  }


  .fl-intro__float-no {
    min-width: 45px;

    font-size: 31px;
  }


  .fl-intro__float-card strong {
    font-size: 13px;
  }


  /* CONTENT */

  .fl-intro__eyebrow {
    margin-bottom: 18px;

    font-size: 9px;

    letter-spacing: 0.14em;
  }


  .fl-intro__eyebrow span {
    width: 30px;
  }


  .fl-intro h2 {
    font-size: clamp(40px, 11vw, 54px);

    line-height: 1.06;

    letter-spacing: -0.035em;
  }


  .fl-intro__lead {
    margin-top: 23px;

    font-size: 14px;

    line-height: 1.7;
  }


  .fl-intro__text {
    font-size: 13px;

    line-height: 1.75;
  }


  /* FEATURES */

  .fl-intro__features {
    margin-top: 32px;

    padding-top: 27px;

    grid-template-columns: 1fr;

    gap: 21px;
  }


  .fl-intro__feature {
    grid-template-columns:
      44px
      minmax(0, 1fr);

    gap: 13px;
  }


  .fl-intro__feature-icon {
    width: 44px;
    height: 44px;

    border-radius: 11px;
  }


  .fl-intro__feature strong {
    font-size: 15px;
  }


  /* BOTTOM */

  .fl-intro__bottom {
    margin-top: 34px;

    padding-top: 25px;

    flex-direction: column;

    align-items: stretch;
  }


  .fl-intro__btn {
    width: 100%;
  }


  .fl-intro__company {
    align-items: flex-start;
  }

}


/* =========================================================
   EXTRA SMALL
========================================================= */

@media (max-width: 390px) {

  .fl-intro__wrap {
    width: calc(100% - 28px);
  }


  .fl-intro__visual {
    min-height: 430px;
  }


  .fl-intro__image-main {
    height: 380px;
  }


  .fl-intro h2 {
    font-size: 39px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-36f184e *//* =========================================================
   FAR LIGHT ENTERPRISE
   PAGE 01 — HOME
   SECTION 03 — SERVICES
========================================================= */

.fl-services,
.fl-services * {
  box-sizing: border-box;
}

.fl-services {
  --fl-red: #e30613;
  --fl-red-dark: #bb0009;

  --fl-dark: #101113;
  --fl-text: #62666c;
  --fl-muted: #909398;

  --fl-white: #ffffff;
  --fl-soft: #f4f4f3;

  position: relative;

  width: 100%;

  padding: 120px 0 130px;

  background: #f3f3f2;

  font-family: "Inter", Arial, sans-serif;

  overflow: hidden;
}


/* =========================================================
   BACKGROUND DETAIL
========================================================= */

.fl-services::before {
  content: "SERVICES";

  position: absolute;

  left: 50%;
  top: 18px;

  transform: translateX(-50%);

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(120px, 14vw, 240px);

  font-weight: 600;

  line-height: 1;

  letter-spacing: -0.055em;

  color: transparent;

  -webkit-text-stroke:
    1px rgba(16, 17, 19, 0.04);

  white-space: nowrap;

  pointer-events: none;
}


/* =========================================================
   WRAPPER
========================================================= */

.fl-services__wrap {
  position: relative;

  z-index: 2;

  width: min(1380px, calc(100% - 100px));

  margin: 0 auto;
}


/* =========================================================
   HEADER
========================================================= */

.fl-services__head {
  margin-bottom: 58px;

  display: grid;

  grid-template-columns:
    minmax(0, 1.15fr)
    minmax(320px, 0.55fr);

  align-items: end;

  gap: 90px;
}


/* =========================================================
   EYEBROW
========================================================= */

.fl-services__eyebrow {
  display: inline-flex;
  align-items: center;

  gap: 13px;

  margin-bottom: 21px;

  color: var(--fl-red);

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 0.18em;

  text-transform: uppercase;
}

.fl-services__eyebrow span {
  width: 42px;
  height: 2px;

  border-radius: 30px;

  background: var(--fl-red);
}


/* =========================================================
   MAIN HEADING
========================================================= */

.fl-services h2 {
  max-width: 820px;

  margin: 0;

  color: var(--fl-dark);

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(48px, 4.3vw, 70px);

  font-weight: 400;

  line-height: 1.04;

  letter-spacing: -0.038em;
}

.fl-services h2 strong {
  display: block;

  font-weight: 600;
}


/* =========================================================
   HEADER RIGHT
========================================================= */

.fl-services__head-right {
  padding-bottom: 5px;
}

.fl-services__head-right p {
  margin: 0;

  color: var(--fl-text);

  font-size: 14px;

  line-height: 1.75;
}


/* LINK */

.fl-services__link {
  margin-top: 24px;

  display: inline-flex;
  align-items: center;

  gap: 14px;

  color: var(--fl-dark);

  font-size: 12px;
  font-weight: 600;

  text-decoration: none;

  transition:
    color 0.25s ease,
    gap 0.25s ease;
}

.fl-services__link svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.fl-services__link:hover {
  color: var(--fl-red);

  gap: 19px;
}


/* =========================================================
   GRID
========================================================= */

.fl-services__grid {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  grid-auto-flow: dense;

  gap: 20px;
}


/* =========================================================
   CARD BASE
========================================================= */

.fl-service-card {
  position: relative;

  min-height: 360px;

  border-radius: 22px;

  overflow: hidden;

  background: #17181a;

  isolation: isolate;

  box-shadow:
    0 15px 40px rgba(20, 20, 20, 0.08);
}


/* LARGE CARDS */

.fl-service-card--large {
  grid-column: span 2;

  min-height: 520px;
}


/* SMALL CARDS */

.fl-service-card--small {
  grid-column: span 1;

  min-height: 390px;
}


/* =========================================================
   IMAGE
========================================================= */

.fl-service-card__media {
  position: absolute;

  inset: 0;

  z-index: -3;

  overflow: hidden;
}

.fl-service-card__media img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  transition:
    transform 0.7s cubic-bezier(.2,.7,.2,1),
    filter 0.5s ease;
}

.fl-service-card:hover
.fl-service-card__media img {
  transform: scale(1.055);
}


/* =========================================================
   OVERLAY
========================================================= */

.fl-service-card__shade {
  position: absolute;

  inset: 0;

  z-index: -2;

  background:
    linear-gradient(
      180deg,
      rgba(8, 8, 9, 0.10) 0%,
      rgba(8, 8, 9, 0.15) 30%,
      rgba(8, 8, 9, 0.90) 82%,
      rgba(8, 8, 9, 0.97) 100%
    );
}


/* LARGE CARD OVERLAY */

.fl-service-card--large
.fl-service-card__shade {
  background:
    linear-gradient(
      180deg,
      rgba(7, 7, 8, 0.08) 0%,
      rgba(7, 7, 8, 0.14) 33%,
      rgba(7, 7, 8, 0.88) 78%,
      rgba(7, 7, 8, 0.97) 100%
    );
}


/* =========================================================
   TOP
========================================================= */

.fl-service-card__top {
  position: absolute;

  left: 0;
  right: 0;
  top: 0;

  z-index: 3;

  padding: 22px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;
}


/* NUMBER */

.fl-service-card__number {
  min-width: 45px;
  height: 34px;

  padding: 0 12px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 10px;

  color: #ffffff;

  background:
    rgba(10, 10, 10, 0.52);

  border:
    1px solid rgba(255, 255, 255, 0.15);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 12px;
  font-weight: 500;
}


/* ICON */

.fl-service-card__icon {
  width: 46px;
  height: 46px;

  display: grid;
  place-items: center;

  border-radius: 13px;

  color: #ffffff;

  background:
    rgba(12, 12, 12, 0.55);

  border:
    1px solid rgba(255, 255, 255, 0.16);

  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  transition:
    background 0.25s ease,
    transform 0.25s ease;
}

.fl-service-card__icon svg {
  width: 20px;
  height: 20px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.fl-service-card:hover
.fl-service-card__icon {
  background: var(--fl-red);

  transform: translateY(-3px);
}


/* =========================================================
   CONTENT
========================================================= */

.fl-service-card__content {
  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  z-index: 3;

  padding: 28px;
}


/* TAG */

.fl-service-card__tag {
  display: block;

  margin-bottom: 10px;

  color: rgba(255, 255, 255, 0.55);

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 0.15em;

  text-transform: uppercase;
}


/* TITLE */

.fl-service-card h3 {
  margin: 0;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: 28px;
  font-weight: 500;

  line-height: 1.08;

  letter-spacing: -0.025em;
}

.fl-service-card--large h3 {
  font-size: clamp(30px, 2.6vw, 42px);
}


/* DESCRIPTION */

.fl-service-card p {
  max-width: 420px;

  margin:
    13px 0
    0;

  color: rgba(255, 255, 255, 0.68);

  font-size: 12px;

  line-height: 1.65;
}

.fl-service-card--large p {
  max-width: 500px;

  font-size: 13px;

  line-height: 1.7;
}


/* =========================================================
   CARD CTA
========================================================= */

.fl-service-card__action {
  margin-top: 21px;

  display: inline-flex;
  align-items: center;

  gap: 13px;

  color: #ffffff;

  font-size: 11px;
  font-weight: 600;

  text-decoration: none;

  transition:
    gap 0.25s ease,
    color 0.25s ease;
}

.fl-service-card__action svg {
  width: 17px;
  height: 17px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.fl-service-card__action:hover {
  color: #ffffff;

  gap: 18px;
}


/* =========================================================
   RED ACCENT ON LARGE CARD
========================================================= */

.fl-service-card--large::after {
  content: "";

  position: absolute;

  left: 28px;
  bottom: 0;

  z-index: 5;

  width: 70px;
  height: 4px;

  border-radius: 20px 20px 0 0;

  background: var(--fl-red);

  transition:
    width 0.35s ease;
}

.fl-service-card--large:hover::after {
  width: 125px;
}


/* =========================================================
   DESKTOP MEDIUM
========================================================= */

@media (max-width: 1250px) {

  .fl-services__wrap {
    width: min(1120px, calc(100% - 60px));
  }


  .fl-services__head {
    gap: 55px;
  }


  .fl-services__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }


  .fl-service-card--large {
    grid-column: span 1;

    min-height: 480px;
  }


  .fl-service-card--small {
    grid-column: span 1;

    min-height: 360px;
  }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

  .fl-services {
    padding:
      95px 0
      105px;
  }


  .fl-services__wrap {
    width: min(760px, calc(100% - 50px));
  }


  .fl-services__head {
    grid-template-columns: 1fr;

    align-items: start;

    gap: 25px;

    margin-bottom: 45px;
  }


  .fl-services__head-right {
    max-width: 620px;
  }


  .fl-services h2 {
    max-width: 690px;

    font-size: clamp(48px, 7vw, 64px);
  }


  .fl-services__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }


  .fl-service-card--large,
  .fl-service-card--small {
    min-height: 420px;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .fl-services {
    padding:
      78px 0
      82px;
  }


  .fl-services::before {
    top: 22px;

    font-size: 105px;
  }


  .fl-services__wrap {
    width: calc(100% - 36px);
  }


  /* HEADER */

  .fl-services__head {
    margin-bottom: 35px;

    gap: 21px;
  }


  .fl-services__eyebrow {
    margin-bottom: 17px;

    font-size: 9px;

    letter-spacing: 0.14em;
  }


  .fl-services__eyebrow span {
    width: 30px;
  }


  .fl-services h2 {
    font-size: clamp(40px, 11vw, 53px);

    line-height: 1.06;

    letter-spacing: -0.035em;
  }


  .fl-services__head-right p {
    font-size: 13px;

    line-height: 1.7;
  }


  /* GRID */

  .fl-services__grid {
    grid-template-columns: 1fr;

    gap: 15px;
  }


  .fl-service-card--large,
  .fl-service-card--small {
    grid-column: span 1;

    min-height: 405px;

    border-radius: 18px;
  }


  .fl-service-card--large {
    min-height: 465px;
  }


  /* TOP */

  .fl-service-card__top {
    padding: 18px;
  }


  .fl-service-card__number {
    height: 32px;

    border-radius: 9px;
  }


  .fl-service-card__icon {
    width: 42px;
    height: 42px;

    border-radius: 11px;
  }


  /* CONTENT */

  .fl-service-card__content {
    padding: 22px;
  }


  .fl-service-card h3,
  .fl-service-card--large h3 {
    font-size: 28px;
  }


  .fl-service-card p,
  .fl-service-card--large p {
    font-size: 12.5px;

    line-height: 1.65;
  }


  .fl-service-card--large::after {
    left: 22px;
  }

}


/* =========================================================
   EXTRA SMALL
========================================================= */

@media (max-width: 390px) {

  .fl-services__wrap {
    width: calc(100% - 28px);
  }


  .fl-services h2 {
    font-size: 39px;
  }


  .fl-service-card__content {
    padding: 20px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-286b794 *//* =========================================================
   FAR LIGHT ENTERPRISE
   PAGE 01 — HOME
   SECTION 04 — TRANSPORT FOR EVERY PURPOSE
========================================================= */

.fl-purpose,
.fl-purpose * {
  box-sizing: border-box;
}

.fl-purpose {
  --fl-red: #e30613;
  --fl-red-dark: #bd000a;

  --fl-dark: #111214;
  --fl-text: #61656b;
  --fl-muted: #93969b;

  --fl-white: #ffffff;
  --fl-soft: #f7f7f6;
  --fl-border: #e8e8e6;

  position: relative;

  width: 100%;

  padding: 130px 0;

  background: #ffffff;

  font-family: "Inter", Arial, sans-serif;

  overflow: hidden;
}


/* =========================================================
   BACKGROUND DETAIL
========================================================= */

.fl-purpose::after {
  content: "";

  position: absolute;

  right: -180px;
  top: 50%;

  width: 420px;
  height: 420px;

  transform: translateY(-50%);

  border-radius: 50%;

  border:
    1px solid rgba(227, 6, 19, 0.06);

  box-shadow:
    0 0 0 70px rgba(227, 6, 19, 0.025),
    0 0 0 140px rgba(227, 6, 19, 0.018);

  pointer-events: none;
}


/* =========================================================
   WRAPPER
========================================================= */

.fl-purpose__wrap {
  position: relative;

  z-index: 2;

  width: min(1380px, calc(100% - 100px));

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(0, 1fr);

  align-items: center;

  gap: 100px;
}


/* =========================================================
   LEFT VISUAL
========================================================= */

.fl-purpose__visual {
  position: relative;

  min-height: 690px;

  border-radius: 28px;

  overflow: hidden;

  background: #111;

  box-shadow:
    0 30px 90px rgba(17, 18, 20, 0.15);
}

.fl-purpose__image {
  position: absolute;

  inset: 0;
}

.fl-purpose__image img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
  object-position: center;

  transition:
    transform 0.8s cubic-bezier(.2,.7,.2,1);
}

.fl-purpose__visual:hover
.fl-purpose__image img {
  transform: scale(1.035);
}


/* =========================================================
   IMAGE OVERLAY
========================================================= */

.fl-purpose__overlay {
  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      180deg,
      rgba(10, 10, 10, 0.08) 0%,
      rgba(10, 10, 10, 0.10) 35%,
      rgba(10, 10, 10, 0.84) 100%
    );
}


/* =========================================================
   VISUAL CONTENT
========================================================= */

.fl-purpose__visual-content {
  position: absolute;

  left: 38px;
  right: 38px;
  bottom: 105px;

  z-index: 4;

  display: grid;

  grid-template-columns:
    72px
    minmax(0, 1fr);

  align-items: end;

  gap: 20px;
}

.fl-purpose__visual-no {
  color: var(--fl-red);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 52px;
  font-weight: 600;

  line-height: 1;

  letter-spacing: -0.04em;
}

.fl-purpose__visual-content > div {
  padding-left: 20px;

  border-left:
    1px solid rgba(255, 255, 255, 0.22);
}

.fl-purpose__visual-content small {
  display: block;

  margin-bottom: 9px;

  color: rgba(255, 255, 255, 0.50);

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 0.16em;
}

.fl-purpose__visual-content h3 {
  max-width: 420px;

  margin: 0;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(30px, 2.5vw, 42px);

  font-weight: 500;

  line-height: 1.08;

  letter-spacing: -0.03em;
}


/* =========================================================
   ROUTE BAR
========================================================= */

.fl-purpose__route {
  position: absolute;

  left: 28px;
  right: 28px;
  bottom: 27px;

  z-index: 5;

  min-height: 58px;

  padding: 0 18px;

  display: grid;

  grid-template-columns:
    auto
    minmax(40px, 1fr)
    auto;

  align-items: center;

  gap: 15px;

  border-radius: 15px;

  color: #ffffff;

  background:
    rgba(13, 13, 14, 0.78);

  border:
    1px solid rgba(255, 255, 255, 0.13);

  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
}

.fl-purpose__route-point {
  display: flex;
  align-items: center;

  gap: 9px;

  color: rgba(255, 255, 255, 0.72);

  font-size: 10px;
  font-weight: 500;

  white-space: nowrap;
}

.fl-purpose__route-point span {
  width: 8px;
  height: 8px;

  border-radius: 50%;

  background: var(--fl-red);

  box-shadow:
    0 0 0 4px rgba(227, 6, 19, 0.15);
}

.fl-purpose__route-line {
  position: relative;

  height: 1px;

  background:
    rgba(255, 255, 255, 0.17);
}

.fl-purpose__route-line::after {
  content: "";

  position: absolute;

  left: 0;
  top: 0;

  width: 55%;
  height: 1px;

  background: var(--fl-red);
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.fl-purpose__content {
  max-width: 690px;
}


/* =========================================================
   EYEBROW
========================================================= */

.fl-purpose__eyebrow {
  display: inline-flex;
  align-items: center;

  gap: 13px;

  margin-bottom: 22px;

  color: var(--fl-red);

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 0.18em;

  text-transform: uppercase;
}

.fl-purpose__eyebrow span {
  width: 42px;
  height: 2px;

  border-radius: 20px;

  background: var(--fl-red);
}


/* =========================================================
   HEADING
========================================================= */

.fl-purpose h2 {
  max-width: 700px;

  margin: 0;

  color: var(--fl-dark);

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(48px, 4.1vw, 68px);

  font-weight: 400;

  line-height: 1.05;

  letter-spacing: -0.038em;
}

.fl-purpose h2 strong {
  display: block;

  font-weight: 600;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.fl-purpose__lead {
  max-width: 615px;

  margin:
    27px 0
    0;

  color: var(--fl-text);

  font-size: 14px;

  line-height: 1.8;
}


/* =========================================================
   CASES GRID
========================================================= */

.fl-purpose__cases {
  margin-top: 39px;

  padding-top: 31px;

  border-top:
    1px solid var(--fl-border);

  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 14px;
}


/* =========================================================
   CASE CARD
========================================================= */

.fl-purpose__case {
  min-height: 86px;

  padding: 15px;

  display: grid;

  grid-template-columns:
    44px
    minmax(0, 1fr);

  align-items: center;

  gap: 13px;

  border-radius: 14px;

  background: var(--fl-soft);

  border:
    1px solid transparent;

  transition:
    background 0.25s ease,
    border-color 0.25s ease,
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.fl-purpose__case:hover {
  background: #ffffff;

  border-color:
    rgba(227, 6, 19, 0.12);

  transform: translateY(-3px);

  box-shadow:
    0 14px 30px rgba(20, 20, 20, 0.07);
}


/* =========================================================
   CASE ICON
========================================================= */

.fl-purpose__case-icon {
  width: 44px;
  height: 44px;

  display: grid;
  place-items: center;

  border-radius: 11px;

  color: var(--fl-red);

  background: #ffffff;

  border:
    1px solid rgba(227, 6, 19, 0.09);
}

.fl-purpose__case-icon svg {
  width: 19px;
  height: 19px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   CASE TEXT
========================================================= */

.fl-purpose__case > div:last-child {
  min-width: 0;
}

.fl-purpose__case span {
  display: block;

  margin-bottom: 4px;

  color: #afb1b5;

  font-size: 8px;
  font-weight: 600;

  letter-spacing: 0.10em;
}

.fl-purpose__case strong {
  display: block;

  color: var(--fl-dark);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 14px;
  font-weight: 500;

  line-height: 1.3;
}


/* =========================================================
   BOTTOM
========================================================= */

.fl-purpose__bottom {
  margin-top: 39px;

  padding-top: 29px;

  border-top:
    1px solid var(--fl-border);

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 28px;
}


/* =========================================================
   BUTTON
========================================================= */

.fl-purpose__btn {
  min-height: 58px;

  padding: 0 24px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 18px;

  border-radius: 12px;

  color: #ffffff;

  background: var(--fl-red);

  text-decoration: none;

  font-size: 12px;
  font-weight: 600;

  box-shadow:
    0 14px 30px rgba(227, 6, 19, 0.18);

  transition:
    transform 0.25s ease,
    background 0.25s ease,
    box-shadow 0.25s ease;
}

.fl-purpose__btn:hover {
  color: #ffffff;

  background: var(--fl-red-dark);

  transform: translateY(-3px);

  box-shadow:
    0 18px 36px rgba(227, 6, 19, 0.25);
}

.fl-purpose__btn svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   NOTE
========================================================= */

.fl-purpose__note {
  display: flex;
  flex-direction: column;

  align-items: flex-end;

  gap: 5px;
}

.fl-purpose__note span {
  color: var(--fl-muted);

  font-size: 8px;
  font-weight: 600;

  letter-spacing: 0.14em;
}

.fl-purpose__note strong {
  max-width: 270px;

  color: #4e5156;

  font-size: 10px;
  font-weight: 500;

  line-height: 1.5;

  text-align: right;
}


/* =========================================================
   DESKTOP
========================================================= */

@media (max-width: 1250px) {

  .fl-purpose__wrap {
    width: min(1120px, calc(100% - 60px));

    gap: 65px;
  }


  .fl-purpose__visual {
    min-height: 620px;
  }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 980px) {

  .fl-purpose {
    padding: 95px 0;
  }


  .fl-purpose__wrap {
    width: min(760px, calc(100% - 50px));

    grid-template-columns: 1fr;

    gap: 70px;
  }


  .fl-purpose__visual {
    min-height: 620px;
  }


  .fl-purpose__content {
    max-width: none;
  }


  .fl-purpose h2 {
    max-width: 700px;

    font-size: clamp(48px, 7vw, 64px);
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .fl-purpose {
    padding:
      78px 0
      82px;
  }


  .fl-purpose__wrap {
    width: calc(100% - 36px);

    gap: 52px;
  }


  /* VISUAL */

  .fl-purpose__visual {
    min-height: 500px;

    border-radius: 20px;
  }


  .fl-purpose__visual-content {
    left: 22px;
    right: 22px;
    bottom: 100px;

    grid-template-columns: 48px 1fr;

    gap: 13px;
  }


  .fl-purpose__visual-no {
    font-size: 37px;
  }


  .fl-purpose__visual-content > div {
    padding-left: 13px;
  }


  .fl-purpose__visual-content h3 {
    font-size: 27px;
  }


  /* ROUTE */

  .fl-purpose__route {
    left: 14px;
    right: 14px;
    bottom: 14px;

    min-height: 58px;

    padding: 0 13px;

    gap: 9px;

    border-radius: 13px;
  }


  .fl-purpose__route-point {
    font-size: 8.5px;
  }


  /* EYEBROW */

  .fl-purpose__eyebrow {
    margin-bottom: 18px;

    font-size: 9px;

    letter-spacing: 0.14em;
  }


  .fl-purpose__eyebrow span {
    width: 30px;
  }


  /* HEADING */

  .fl-purpose h2 {
    font-size: clamp(40px, 11vw, 53px);

    line-height: 1.06;

    letter-spacing: -0.035em;
  }


  .fl-purpose__lead {
    margin-top: 22px;

    font-size: 13px;

    line-height: 1.75;
  }


  /* CASES */

  .fl-purpose__cases {
    margin-top: 31px;

    padding-top: 26px;

    grid-template-columns: 1fr;

    gap: 10px;
  }


  .fl-purpose__case {
    min-height: 76px;

    grid-template-columns:
      42px
      minmax(0, 1fr);

    padding: 13px;

    border-radius: 12px;
  }


  .fl-purpose__case-icon {
    width: 42px;
    height: 42px;

    border-radius: 10px;
  }


  /* BOTTOM */

  .fl-purpose__bottom {
    margin-top: 31px;

    padding-top: 25px;

    flex-direction: column;

    align-items: stretch;
  }


  .fl-purpose__btn {
    width: 100%;
  }


  .fl-purpose__note {
    align-items: flex-start;
  }


  .fl-purpose__note strong {
    max-width: none;

    text-align: left;
  }

}


/* =========================================================
   EXTRA SMALL
========================================================= */

@media (max-width: 390px) {

  .fl-purpose__wrap {
    width: calc(100% - 28px);
  }


  .fl-purpose__visual {
    min-height: 460px;
  }


  .fl-purpose h2 {
    font-size: 39px;
  }


  .fl-purpose__route-point {
    font-size: 7.5px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0ad8b62 *//* =========================================================
   FAR LIGHT ENTERPRISE
   PAGE 01 — HOME
   SECTION 05 — WHY CHOOSE US
========================================================= */

.fl-why,
.fl-why * {
  box-sizing: border-box;
}

.fl-why {
  --fl-red: #e30613;
  --fl-red-dark: #bc0009;

  --fl-black: #090a0b;
  --fl-dark: #101113;

  --fl-white: #ffffff;

  position: relative;

  width: 100%;

  padding:
    125px 0
    120px;

  background: #0a0b0c;

  font-family: "Inter", Arial, sans-serif;

  overflow: hidden;
}


/* =========================================================
   BACKGROUND IMAGE
========================================================= */

.fl-why__media {
  position: absolute;

  inset: 0;

  z-index: 0;
}

.fl-why__media img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
  object-position: center;

  filter:
    saturate(0.55)
    contrast(1.08)
    brightness(0.42);

  transform: scale(1.02);
}


/* =========================================================
   OVERLAY
========================================================= */

.fl-why__overlay {
  position: absolute;

  inset: 0;

  z-index: 1;

  background:

    linear-gradient(
      90deg,
      rgba(8, 9, 10, 0.98) 0%,
      rgba(8, 9, 10, 0.94) 42%,
      rgba(8, 9, 10, 0.78) 68%,
      rgba(8, 9, 10, 0.90) 100%
    ),

    linear-gradient(
      180deg,
      rgba(8, 9, 10, 0.55),
      rgba(8, 9, 10, 0.98)
    );
}


/* =========================================================
   GRID BACKGROUND
========================================================= */

.fl-why__grid-bg {
  position: absolute;

  inset: 0;

  z-index: 2;

  opacity: 0.22;

  pointer-events: none;

  background-image:

    linear-gradient(
      rgba(255, 255, 255, 0.035) 1px,
      transparent 1px
    ),

    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.035) 1px,
      transparent 1px
    );

  background-size:
    82px 82px;
}


/* =========================================================
   WRAPPER
========================================================= */

.fl-why__wrap {
  position: relative;

  z-index: 5;

  width: min(1380px, calc(100% - 100px));

  margin: 0 auto;
}


/* =========================================================
   TOP
========================================================= */

.fl-why__top {
  display: grid;

  grid-template-columns:
    minmax(0, 1.15fr)
    minmax(300px, 0.45fr);

  align-items: end;

  gap: 90px;

  margin-bottom: 58px;
}


/* =========================================================
   EYEBROW
========================================================= */

.fl-why__eyebrow {
  display: inline-flex;
  align-items: center;

  gap: 13px;

  margin-bottom: 22px;

  color: var(--fl-red);

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 0.18em;

  text-transform: uppercase;
}

.fl-why__eyebrow span {
  width: 42px;
  height: 2px;

  border-radius: 50px;

  background: var(--fl-red);
}


/* =========================================================
   HEADING
========================================================= */

.fl-why h2 {
  max-width: 830px;

  margin: 0;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(49px, 4.3vw, 71px);

  font-weight: 400;

  line-height: 1.04;

  letter-spacing: -0.04em;
}

.fl-why h2 strong {
  display: block;

  font-weight: 600;
}


/* =========================================================
   INTRO RIGHT
========================================================= */

.fl-why__intro {
  padding-bottom: 6px;
}

.fl-why__intro-no {
  display: block;

  margin-bottom: 14px;

  color: var(--fl-red);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 38px;
  font-weight: 500;

  line-height: 1;

  letter-spacing: -0.03em;
}

.fl-why__intro p {
  max-width: 350px;

  margin: 0;

  color: rgba(255, 255, 255, 0.58);

  font-size: 13px;

  line-height: 1.75;
}


/* =========================================================
   REASONS GRID
========================================================= */

.fl-why__reasons {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  border-top:
    1px solid rgba(255, 255, 255, 0.12);

  border-bottom:
    1px solid rgba(255, 255, 255, 0.12);
}


/* =========================================================
   REASON ITEM
========================================================= */

.fl-why__item {
  position: relative;

  min-height: 335px;

  padding:
    28px 28px
    30px;

  display: flex;
  flex-direction: column;

  justify-content: space-between;

  border-right:
    1px solid rgba(255, 255, 255, 0.11);

  transition:
    background 0.3s ease;
}

.fl-why__item:first-child {
  border-left:
    1px solid rgba(255, 255, 255, 0.11);
}

.fl-why__item:hover {
  background:
    rgba(255, 255, 255, 0.045);
}


/* RED HOVER LINE */

.fl-why__item::before {
  content: "";

  position: absolute;

  left: 28px;
  top: -1px;

  width: 0;
  height: 3px;

  border-radius:
    0 0 20px 20px;

  background: var(--fl-red);

  transition:
    width 0.35s ease;
}

.fl-why__item:hover::before {
  width: 68px;
}


/* =========================================================
   ITEM TOP
========================================================= */

.fl-why__item-top {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 15px;
}

.fl-why__number {
  color: rgba(255, 255, 255, 0.35);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 16px;
  font-weight: 500;
}


/* =========================================================
   ICON
========================================================= */

.fl-why__icon {
  width: 47px;
  height: 47px;

  display: grid;
  place-items: center;

  border-radius: 13px;

  color: #ffffff;

  background:
    rgba(255, 255, 255, 0.065);

  border:
    1px solid rgba(255, 255, 255, 0.13);

  transition:
    background 0.25s ease,
    transform 0.25s ease,
    color 0.25s ease;
}

.fl-why__icon svg {
  width: 20px;
  height: 20px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.fl-why__item:hover
.fl-why__icon {
  color: #ffffff;

  background: var(--fl-red);

  transform: translateY(-3px);
}


/* =========================================================
   ITEM CONTENT
========================================================= */

.fl-why__tag {
  display: block;

  margin-bottom: 11px;

  color: var(--fl-red);

  font-size: 9px;
  font-weight: 600;

  line-height: 1;

  letter-spacing: 0.15em;
}

.fl-why__item h3 {
  max-width: 230px;

  margin: 0;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: 24px;
  font-weight: 500;

  line-height: 1.13;

  letter-spacing: -0.025em;
}

.fl-why__item p {
  max-width: 260px;

  margin:
    15px 0
    0;

  color:
    rgba(255, 255, 255, 0.50);

  font-size: 12px;

  line-height: 1.7;
}


/* =========================================================
   STATEMENT
========================================================= */

.fl-why__statement {
  margin-top: 75px;

  padding:
    42px 46px;

  border-radius: 22px;

  background:
    rgba(255, 255, 255, 0.055);

  border:
    1px solid rgba(255, 255, 255, 0.12);

  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
}

.fl-why__statement-label {
  margin-bottom: 30px;

  color: rgba(255, 255, 255, 0.36);

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 0.16em;
}


/* =========================================================
   STATEMENT CONTENT
========================================================= */

.fl-why__statement-content {
  display: grid;

  grid-template-columns:
    minmax(0, 1.2fr)
    minmax(300px, 0.55fr);

  align-items: end;

  gap: 90px;
}

.fl-why__statement h3 {
  max-width: 780px;

  margin: 0;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(43px, 4vw, 65px);

  font-weight: 400;

  line-height: 1.02;

  letter-spacing: -0.04em;
}

.fl-why__statement h3 span {
  display: block;

  color: var(--fl-red);

  font-weight: 600;
}


/* =========================================================
   STATEMENT RIGHT
========================================================= */

.fl-why__statement-right p {
  margin: 0;

  color:
    rgba(255, 255, 255, 0.56);

  font-size: 13px;

  line-height: 1.75;
}


/* =========================================================
   BUTTON
========================================================= */

.fl-why__btn {
  min-height: 56px;

  margin-top: 22px;

  padding:
    0 23px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 17px;

  border-radius: 12px;

  color: #ffffff;

  background: var(--fl-red);

  text-decoration: none;

  font-size: 12px;
  font-weight: 600;

  transition:
    transform 0.25s ease,
    background 0.25s ease,
    box-shadow 0.25s ease;
}

.fl-why__btn:hover {
  color: #ffffff;

  background: var(--fl-red-dark);

  transform: translateY(-3px);

  box-shadow:
    0 16px 35px rgba(227, 6, 19, 0.25);
}

.fl-why__btn svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   DESKTOP
========================================================= */

@media (max-width: 1250px) {

  .fl-why__wrap {
    width: min(1120px, calc(100% - 60px));
  }


  .fl-why__top {
    gap: 55px;
  }


  .fl-why__item {
    padding:
      25px 22px
      27px;
  }


  .fl-why__item::before {
    left: 22px;
  }


  .fl-why__statement-content {
    gap: 55px;
  }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 980px) {

  .fl-why {
    padding:
      95px 0
      100px;
  }


  .fl-why__wrap {
    width: min(760px, calc(100% - 50px));
  }


  .fl-why__top {
    grid-template-columns: 1fr;

    align-items: start;

    gap: 26px;
  }


  .fl-why h2 {
    max-width: 700px;

    font-size: clamp(48px, 7vw, 64px);
  }


  .fl-why__reasons {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }


  .fl-why__item:nth-child(2) {
    border-right:
      1px solid rgba(255, 255, 255, 0.11);
  }


  .fl-why__item:nth-child(3),
  .fl-why__item:nth-child(4) {
    border-top:
      1px solid rgba(255, 255, 255, 0.11);
  }


  .fl-why__item:nth-child(3) {
    border-left:
      1px solid rgba(255, 255, 255, 0.11);
  }


  .fl-why__statement-content {
    grid-template-columns: 1fr;

    align-items: start;

    gap: 28px;
  }


  .fl-why__statement-right {
    max-width: 500px;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .fl-why {
    padding:
      78px 0
      82px;
  }


  .fl-why__wrap {
    width: calc(100% - 36px);
  }


  /* TOP */

  .fl-why__top {
    margin-bottom: 39px;
  }


  .fl-why__eyebrow {
    margin-bottom: 18px;

    font-size: 9px;

    letter-spacing: 0.14em;
  }


  .fl-why__eyebrow span {
    width: 30px;
  }


  .fl-why h2 {
    font-size: clamp(40px, 11vw, 53px);

    line-height: 1.06;

    letter-spacing: -0.035em;
  }


  .fl-why__intro-no {
    font-size: 31px;
  }


  .fl-why__intro p {
    font-size: 12.5px;
  }


  /* ITEMS */

  .fl-why__reasons {
    grid-template-columns: 1fr;
  }


  .fl-why__item,
  .fl-why__item:first-child,
  .fl-why__item:nth-child(2),
  .fl-why__item:nth-child(3),
  .fl-why__item:nth-child(4) {
    min-height: 275px;

    padding:
      22px 20px
      23px;

    border-left:
      1px solid rgba(255, 255, 255, 0.11);

    border-right:
      1px solid rgba(255, 255, 255, 0.11);

    border-top: 0;
  }


  .fl-why__item:not(:first-child) {
    border-top:
      1px solid rgba(255, 255, 255, 0.11);
  }


  .fl-why__item::before {
    left: 20px;
  }


  .fl-why__item h3 {
    max-width: 270px;

    font-size: 23px;
  }


  .fl-why__item p {
    max-width: 310px;
  }


  /* STATEMENT */

  .fl-why__statement {
    margin-top: 52px;

    padding:
      28px 22px;

    border-radius: 18px;
  }


  .fl-why__statement-label {
    margin-bottom: 22px;
  }


  .fl-why__statement h3 {
    font-size: clamp(38px, 10.5vw, 50px);

    line-height: 1.04;
  }


  .fl-why__statement-right p {
    font-size: 12.5px;
  }


  .fl-why__btn {
    width: 100%;
  }

}


/* =========================================================
   EXTRA SMALL
========================================================= */

@media (max-width: 390px) {

  .fl-why__wrap {
    width: calc(100% - 28px);
  }


  .fl-why h2 {
    font-size: 39px;
  }


  .fl-why__statement h3 {
    font-size: 37px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-71ac1af *//* =========================================================
   FAR LIGHT ENTERPRISE
   PAGE 01 — HOME
   SECTION 06 — JOURNEY SHOWCASE
========================================================= */

.fl-showcase,
.fl-showcase * {
  box-sizing: border-box;
}

.fl-showcase {
  --fl-red: #e30613;
  --fl-red-dark: #bd000a;

  --fl-dark: #111214;
  --fl-text: #64686d;
  --fl-muted: #96999d;

  --fl-white: #ffffff;
  --fl-soft: #f6f6f5;
  --fl-border: #e7e7e5;

  position: relative;

  width: 100%;

  padding:
    125px 0
    120px;

  background:
    linear-gradient(
      180deg,
      #ffffff 0%,
      #f7f7f6 100%
    );

  font-family: "Inter", Arial, sans-serif;

  overflow: hidden;
}


/* =========================================================
   BACKGROUND TEXT
========================================================= */

.fl-showcase::before {
  content: "JOURNEY";

  position: absolute;

  left: 50%;
  top: 25px;

  transform: translateX(-50%);

  color: transparent;

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(130px, 16vw, 260px);
  font-weight: 600;

  line-height: 1;

  letter-spacing: -0.065em;

  white-space: nowrap;

  -webkit-text-stroke:
    1px rgba(17, 18, 20, 0.04);

  pointer-events: none;
}


/* =========================================================
   WRAPPER
========================================================= */

.fl-showcase__wrap {
  position: relative;

  z-index: 2;

  width: min(1380px, calc(100% - 100px));

  margin: 0 auto;
}


/* =========================================================
   HEADER
========================================================= */

.fl-showcase__head {
  margin-bottom: 58px;

  display: grid;

  grid-template-columns:
    minmax(0, 1.15fr)
    minmax(320px, 0.5fr);

  align-items: end;

  gap: 90px;
}


/* =========================================================
   EYEBROW
========================================================= */

.fl-showcase__eyebrow {
  display: inline-flex;
  align-items: center;

  gap: 13px;

  margin-bottom: 21px;

  color: var(--fl-red);

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 0.18em;

  text-transform: uppercase;
}

.fl-showcase__eyebrow span {
  width: 42px;
  height: 2px;

  border-radius: 20px;

  background: var(--fl-red);
}


/* =========================================================
   HEADING
========================================================= */

.fl-showcase h2 {
  max-width: 800px;

  margin: 0;

  color: var(--fl-dark);

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(48px, 4.2vw, 69px);

  font-weight: 400;

  line-height: 1.04;

  letter-spacing: -0.04em;
}

.fl-showcase h2 strong {
  display: block;

  font-weight: 600;
}


/* =========================================================
   HEADER INTRO
========================================================= */

.fl-showcase__intro {
  padding-bottom: 4px;
}

.fl-showcase__intro p {
  margin: 0;

  color: var(--fl-text);

  font-size: 14px;

  line-height: 1.75;
}


/* =========================================================
   HEADER LINK
========================================================= */

.fl-showcase__head-link {
  margin-top: 23px;

  display: inline-flex;
  align-items: center;

  gap: 14px;

  color: var(--fl-dark);

  font-size: 12px;
  font-weight: 600;

  text-decoration: none;

  transition:
    color 0.25s ease,
    gap 0.25s ease;
}

.fl-showcase__head-link svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.fl-showcase__head-link:hover {
  color: var(--fl-red);

  gap: 19px;
}


/* =========================================================
   GALLERY
========================================================= */

.fl-showcase__gallery {
  display: grid;

  grid-template-columns:
    repeat(12, minmax(0, 1fr));

  grid-template-rows:
    260px
    260px;

  gap: 18px;
}


/* =========================================================
   CARD BASE
========================================================= */

.fl-showcase__card {
  position: relative;

  border-radius: 22px;

  overflow: hidden;

  background: #111;

  isolation: isolate;

  box-shadow:
    0 18px 45px rgba(20, 20, 20, 0.08);
}


/* LARGE MAIN */

.fl-showcase__card--main {
  grid-column: span 5;

  grid-row: span 2;
}


/* WIDE */

.fl-showcase__card--wide {
  grid-column: span 4;
}


/* SMALL */

.fl-showcase__card--small {
  grid-column: span 3;
}


/* =========================================================
   IMAGE
========================================================= */

.fl-showcase__media {
  position: absolute;

  inset: 0;

  z-index: -3;
}

.fl-showcase__media img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  transition:
    transform 0.75s cubic-bezier(.2,.7,.2,1),
    filter 0.4s ease;
}

.fl-showcase__card:hover
.fl-showcase__media img {
  transform: scale(1.055);
}


/* =========================================================
   OVERLAY
========================================================= */

.fl-showcase__shade {
  position: absolute;

  inset: 0;

  z-index: -2;

  background:
    linear-gradient(
      180deg,
      rgba(8, 8, 9, 0.06) 0%,
      rgba(8, 8, 9, 0.15) 35%,
      rgba(8, 8, 9, 0.86) 100%
    );
}

.fl-showcase__card--main
.fl-showcase__shade {
  background:
    linear-gradient(
      180deg,
      rgba(8, 8, 9, 0.06) 0%,
      rgba(8, 8, 9, 0.12) 40%,
      rgba(8, 8, 9, 0.92) 100%
    );
}


/* =========================================================
   TOP
========================================================= */

.fl-showcase__top {
  position: absolute;

  left: 0;
  right: 0;
  top: 0;

  z-index: 4;

  padding: 20px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 15px;
}


/* NUMBER */

.fl-showcase__top > span {
  min-width: 42px;
  height: 32px;

  padding: 0 11px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 9px;

  color: #ffffff;

  background:
    rgba(10, 10, 10, 0.46);

  border:
    1px solid rgba(255, 255, 255, 0.15);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 11px;
  font-weight: 500;
}


/* =========================================================
   ICON
========================================================= */

.fl-showcase__icon {
  width: 43px;
  height: 43px;

  display: grid;
  place-items: center;

  border-radius: 12px;

  color: #ffffff;

  background:
    rgba(10, 10, 10, 0.48);

  border:
    1px solid rgba(255, 255, 255, 0.15);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);

  transition:
    background 0.25s ease,
    transform 0.25s ease;
}

.fl-showcase__icon svg {
  width: 19px;
  height: 19px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}

.fl-showcase__card:hover
.fl-showcase__icon {
  background: var(--fl-red);

  transform: translateY(-3px);
}


/* =========================================================
   CARD CONTENT
========================================================= */

.fl-showcase__content {
  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  z-index: 4;

  padding: 23px;
}


/* LABEL */

.fl-showcase__content small {
  display: block;

  margin-bottom: 8px;

  color:
    rgba(255, 255, 255, 0.55);

  font-size: 8px;
  font-weight: 600;

  letter-spacing: 0.15em;
}


/* TITLE */

.fl-showcase__content h3 {
  margin: 0;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: 25px;
  font-weight: 500;

  line-height: 1.08;

  letter-spacing: -0.025em;
}

.fl-showcase__card--main
.fl-showcase__content h3 {
  font-size: clamp(34px, 3vw, 46px);
}


/* PARAGRAPH */

.fl-showcase__content p {
  max-width: 390px;

  margin:
    13px 0
    0;

  color:
    rgba(255, 255, 255, 0.66);

  font-size: 12px;

  line-height: 1.68;
}


/* =========================================================
   MAIN CARD ACCENT
========================================================= */

.fl-showcase__card--main::after {
  content: "";

  position: absolute;

  left: 23px;
  bottom: 0;

  z-index: 5;

  width: 70px;
  height: 4px;

  border-radius:
    20px 20px
    0 0;

  background: var(--fl-red);

  transition:
    width 0.35s ease;
}

.fl-showcase__card--main:hover::after {
  width: 125px;
}


/* =========================================================
   BOTTOM BAR
========================================================= */

.fl-showcase__bottom {
  margin-top: 38px;

  padding:
    28px 30px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 35px;

  border-radius: 18px;

  background: #ffffff;

  border:
    1px solid var(--fl-border);

  box-shadow:
    0 14px 35px rgba(20, 20, 20, 0.05);
}


/* =========================================================
   BOTTOM TEXT
========================================================= */

.fl-showcase__bottom-text {
  display: flex;
  flex-direction: column;

  gap: 7px;
}

.fl-showcase__bottom-text span {
  color: var(--fl-red);

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 0.14em;
}

.fl-showcase__bottom-text strong {
  color: var(--fl-dark);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 17px;
  font-weight: 500;

  line-height: 1.4;
}


/* =========================================================
   BUTTON
========================================================= */

.fl-showcase__btn {
  min-height: 56px;

  padding: 0 23px;

  flex: 0 0 auto;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 16px;

  border-radius: 12px;

  color: #ffffff;

  background: var(--fl-dark);

  font-size: 12px;
  font-weight: 600;

  text-decoration: none;

  transition:
    background 0.25s ease,
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.fl-showcase__btn:hover {
  color: #ffffff;

  background: var(--fl-red);

  transform: translateY(-3px);

  box-shadow:
    0 15px 32px rgba(227, 6, 19, 0.20);
}

.fl-showcase__btn svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   MEDIUM DESKTOP
========================================================= */

@media (max-width: 1250px) {

  .fl-showcase__wrap {
    width: min(1120px, calc(100% - 60px));
  }


  .fl-showcase__head {
    gap: 55px;
  }


  .fl-showcase__gallery {
    grid-template-rows:
      240px
      240px;
  }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 950px) {

  .fl-showcase {
    padding:
      95px 0
      100px;
  }


  .fl-showcase__wrap {
    width: min(760px, calc(100% - 50px));
  }


  .fl-showcase__head {
    grid-template-columns: 1fr;

    align-items: start;

    gap: 24px;

    margin-bottom: 43px;
  }


  .fl-showcase__intro {
    max-width: 600px;
  }


  .fl-showcase h2 {
    max-width: 700px;

    font-size: clamp(48px, 7vw, 64px);
  }


  .fl-showcase__gallery {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    grid-template-rows: none;

    grid-auto-rows: 330px;
  }


  .fl-showcase__card--main,
  .fl-showcase__card--wide,
  .fl-showcase__card--small {
    grid-column: span 1;

    grid-row: auto;
  }


  .fl-showcase__card--main {
    grid-column: span 2;

    min-height: 470px;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .fl-showcase {
    padding:
      78px 0
      82px;
  }


  .fl-showcase::before {
    top: 25px;

    font-size: 105px;
  }


  .fl-showcase__wrap {
    width: calc(100% - 36px);
  }


  /* HEADER */

  .fl-showcase__head {
    margin-bottom: 35px;
  }


  .fl-showcase__eyebrow {
    margin-bottom: 17px;

    font-size: 9px;

    letter-spacing: 0.14em;
  }


  .fl-showcase__eyebrow span {
    width: 30px;
  }


  .fl-showcase h2 {
    font-size: clamp(40px, 11vw, 53px);

    line-height: 1.06;

    letter-spacing: -0.035em;
  }


  .fl-showcase__intro p {
    font-size: 13px;

    line-height: 1.7;
  }


  /* GALLERY */

  .fl-showcase__gallery {
    grid-template-columns: 1fr;

    grid-auto-rows: 360px;

    gap: 14px;
  }


  .fl-showcase__card--main,
  .fl-showcase__card--wide,
  .fl-showcase__card--small {
    grid-column: span 1;

    min-height: 360px;

    border-radius: 18px;
  }


  .fl-showcase__card--main {
    min-height: 455px;
  }


  .fl-showcase__top {
    padding: 17px;
  }


  .fl-showcase__content {
    padding: 21px;
  }


  .fl-showcase__content h3,
  .fl-showcase__card--main
  .fl-showcase__content h3 {
    font-size: 28px;
  }


  .fl-showcase__card--main::after {
    left: 21px;
  }


  /* BOTTOM */

  .fl-showcase__bottom {
    margin-top: 28px;

    padding: 23px 20px;

    flex-direction: column;

    align-items: stretch;

    border-radius: 15px;
  }


  .fl-showcase__bottom-text strong {
    font-size: 15px;
  }


  .fl-showcase__btn {
    width: 100%;
  }

}


/* =========================================================
   EXTRA SMALL
========================================================= */

@media (max-width: 390px) {

  .fl-showcase__wrap {
    width: calc(100% - 28px);
  }


  .fl-showcase h2 {
    font-size: 39px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8b52d81 *//* =========================================================
   FAR LIGHT ENTERPRISE
   PAGE 01 — HOME
   SECTION 07 — FINAL CTA
========================================================= */

.fl-finalcta,
.fl-finalcta * {
  box-sizing: border-box;
}

.fl-finalcta {
  --fl-red: #e30613;
  --fl-red-dark: #ba0009;

  --fl-black: #08090a;
  --fl-dark: #101113;
  --fl-white: #ffffff;

  position: relative;

  width: 100%;
  min-height: 760px;

  padding:
    120px 0
    95px;

  display: flex;
  align-items: center;

  background: #090a0b;

  font-family: "Inter", Arial, sans-serif;

  overflow: hidden;
}


/* =========================================================
   BACKGROUND
========================================================= */

.fl-finalcta__media {
  position: absolute;

  inset: 0;

  z-index: 0;
}

.fl-finalcta__media img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
  object-position: center;

  filter:
    saturate(0.68)
    contrast(1.08)
    brightness(0.60);

  transform: scale(1.02);
}


/* =========================================================
   OVERLAY
========================================================= */

.fl-finalcta__overlay {
  position: absolute;

  inset: 0;

  z-index: 1;

  background:

    linear-gradient(
      90deg,
      rgba(5, 6, 7, 0.98) 0%,
      rgba(5, 6, 7, 0.91) 37%,
      rgba(5, 6, 7, 0.68) 60%,
      rgba(5, 6, 7, 0.52) 100%
    ),

    linear-gradient(
      180deg,
      rgba(5, 6, 7, 0.30) 0%,
      rgba(5, 6, 7, 0.94) 100%
    );
}


/* =========================================================
   SUBTLE PATTERN
========================================================= */

.fl-finalcta__pattern {
  position: absolute;

  inset: 0;

  z-index: 2;

  opacity: 0.18;

  pointer-events: none;

  background-image:

    linear-gradient(
      rgba(255,255,255,0.03) 1px,
      transparent 1px
    ),

    linear-gradient(
      90deg,
      rgba(255,255,255,0.03) 1px,
      transparent 1px
    );

  background-size:
    78px 78px;
}


/* =========================================================
   WRAPPER
========================================================= */

.fl-finalcta__wrap {
  position: relative;

  z-index: 5;

  width: min(1380px, calc(100% - 100px));

  margin: 0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 1.15fr)
    minmax(350px, 0.55fr);

  align-items: center;

  gap: 100px;
}


/* =========================================================
   CONTENT
========================================================= */

.fl-finalcta__content {
  max-width: 830px;
}


/* =========================================================
   EYEBROW
========================================================= */

.fl-finalcta__eyebrow {
  display: inline-flex;
  align-items: center;

  gap: 13px;

  margin-bottom: 25px;

  color: var(--fl-red);

  font-size: 10px;
  font-weight: 600;

  letter-spacing: 0.18em;

  text-transform: uppercase;
}

.fl-finalcta__eyebrow span {
  width: 42px;
  height: 2px;

  border-radius: 40px;

  background: var(--fl-red);
}


/* =========================================================
   TITLE
========================================================= */

.fl-finalcta h2 {
  max-width: 850px;

  margin: 0;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: clamp(55px, 5.4vw, 88px);

  font-weight: 400;

  line-height: 0.99;

  letter-spacing: -0.045em;
}

.fl-finalcta h2 strong {
  display: block;

  font-weight: 600;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.fl-finalcta__lead {
  max-width: 650px;

  margin:
    29px 0
    0;

  color:
    rgba(255, 255, 255, 0.67);

  font-size: 15px;

  line-height: 1.78;
}


/* =========================================================
   ACTIONS
========================================================= */

.fl-finalcta__actions {
  margin-top: 37px;

  display: flex;
  flex-wrap: wrap;

  gap: 12px;
}


/* =========================================================
   BUTTON BASE
========================================================= */

.fl-finalcta__btn {
  min-height: 72px;

  padding:
    10px 18px
    10px 11px;

  display: grid;

  grid-template-columns:
    46px
    minmax(0, 1fr)
    18px;

  align-items: center;

  gap: 13px;

  border-radius: 14px;

  text-decoration: none;

  transition:
    transform 0.25s ease,
    background 0.25s ease,
    border-color 0.25s ease,
    box-shadow 0.25s ease;
}


/* PRIMARY */

.fl-finalcta__btn--primary {
  min-width: 290px;

  color: #111;

  background: #ffffff;

  border:
    1px solid #ffffff;

  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.20);
}

.fl-finalcta__btn--primary:hover {
  color: #111;

  transform: translateY(-3px);

  box-shadow:
    0 22px 45px rgba(0, 0, 0, 0.28);
}


/* SECONDARY */

.fl-finalcta__btn--secondary {
  min-width: 235px;

  color: #ffffff;

  background:
    rgba(255, 255, 255, 0.07);

  border:
    1px solid rgba(255, 255, 255, 0.17);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.fl-finalcta__btn--secondary:hover {
  color: #ffffff;

  background:
    rgba(255, 255, 255, 0.12);

  transform: translateY(-3px);
}


/* =========================================================
   BUTTON ICON
========================================================= */

.fl-finalcta__btn-icon {
  width: 46px;
  height: 46px;

  display: grid;
  place-items: center;

  border-radius: 11px;
}

.fl-finalcta__btn--primary
.fl-finalcta__btn-icon {
  color: #ffffff;

  background: var(--fl-red);
}

.fl-finalcta__btn--secondary
.fl-finalcta__btn-icon {
  color: #ffffff;

  background:
    rgba(255, 255, 255, 0.10);

  border:
    1px solid rgba(255, 255, 255, 0.13);
}

.fl-finalcta__btn-icon svg {
  width: 20px;
  height: 20px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   BUTTON COPY
========================================================= */

.fl-finalcta__btn-copy {
  display: flex;
  flex-direction: column;

  gap: 4px;
}

.fl-finalcta__btn-copy small {
  font-size: 8px;
  font-weight: 600;

  letter-spacing: 0.13em;
}

.fl-finalcta__btn--primary
.fl-finalcta__btn-copy small {
  color: #999;
}

.fl-finalcta__btn--secondary
.fl-finalcta__btn-copy small {
  color:
    rgba(255, 255, 255, 0.42);
}

.fl-finalcta__btn-copy strong {
  font-family: "Outfit", Arial, sans-serif;

  font-size: 14px;
  font-weight: 500;

  line-height: 1.2;
}

.fl-finalcta__arrow {
  width: 17px;
  height: 17px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   RIGHT PANEL
========================================================= */

.fl-finalcta__panel {
  position: relative;

  width: 100%;
  max-width: 430px;

  justify-self: end;

  border-radius: 22px;

  color: #ffffff;

  background:
    rgba(14, 15, 16, 0.86);

  border:
    1px solid rgba(255, 255, 255, 0.14);

  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);

  box-shadow:
    0 35px 90px rgba(0, 0, 0, 0.38);

  overflow: hidden;
}


/* RED TOP DETAIL */

.fl-finalcta__panel::before {
  content: "";

  position: absolute;

  top: 0;
  left: 30px;

  width: 78px;
  height: 4px;

  border-radius:
    0 0
    20px 20px;

  background: var(--fl-red);
}


/* =========================================================
   PANEL HEAD
========================================================= */

.fl-finalcta__panel-head {
  padding:
    30px 28px
    27px;

  display: flex;
  align-items: flex-start;
  justify-content: space-between;

  gap: 25px;

  border-bottom:
    1px solid rgba(255,255,255,0.10);
}

.fl-finalcta__panel-head > div > span {
  display: block;

  margin-bottom: 10px;

  color: var(--fl-red);

  font-size: 8px;
  font-weight: 600;

  letter-spacing: 0.15em;
}

.fl-finalcta__panel h3 {
  max-width: 255px;

  margin: 0;

  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: 26px;
  font-weight: 500;

  line-height: 1.13;

  letter-spacing: -0.025em;
}

.fl-finalcta__panel-no {
  color:
    rgba(255, 255, 255, 0.24);

  font-family: "Outfit", Arial, sans-serif;

  font-size: 31px;
  font-weight: 500;

  line-height: 1;
}


/* =========================================================
   INFO GRID
========================================================= */

.fl-finalcta__info {
  padding: 8px 28px;

  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 0;
}


/* =========================================================
   INFO ITEM
========================================================= */

.fl-finalcta__info-item {
  min-height: 132px;

  padding:
    24px 13px;

  display: flex;
  flex-direction: column;

  justify-content: space-between;

  gap: 17px;

  border-bottom:
    1px solid rgba(255, 255, 255, 0.09);
}

.fl-finalcta__info-item:nth-child(odd) {
  padding-left: 0;

  padding-right: 20px;

  border-right:
    1px solid rgba(255, 255, 255, 0.09);
}

.fl-finalcta__info-item:nth-child(even) {
  padding-left: 20px;
  padding-right: 0;
}

.fl-finalcta__info-item:nth-last-child(-n+2) {
  border-bottom: 0;
}


/* ICON */

.fl-finalcta__info-icon {
  width: 42px;
  height: 42px;

  display: grid;
  place-items: center;

  border-radius: 11px;

  color: var(--fl-red);

  background:
    rgba(255, 255, 255, 0.06);

  border:
    1px solid rgba(255, 255, 255, 0.10);
}

.fl-finalcta__info-icon svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.7;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* INFO TEXT */

.fl-finalcta__info-item > div:last-child {
  display: flex;
  flex-direction: column;

  gap: 4px;
}

.fl-finalcta__info-item span {
  color:
    rgba(255, 255, 255, 0.30);

  font-size: 8px;
  font-weight: 600;
}

.fl-finalcta__info-item strong {
  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: 13px;
  font-weight: 500;

  line-height: 1.35;
}


/* =========================================================
   PANEL BOTTOM
========================================================= */

.fl-finalcta__panel-bottom {
  min-height: 72px;

  padding: 0 28px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  color: #ffffff;

  background: var(--fl-red);
}

.fl-finalcta__status {
  display: flex;
  align-items: center;

  gap: 11px;
}

.fl-finalcta__status > span {
  width: 8px;
  height: 8px;

  flex: 0 0 8px;

  border-radius: 50%;

  background: #ffffff;

  box-shadow:
    0 0 0 5px rgba(255,255,255,0.15);
}

.fl-finalcta__status > div {
  display: flex;
  flex-direction: column;

  gap: 3px;
}

.fl-finalcta__status small {
  color:
    rgba(255, 255, 255, 0.67);

  font-size: 7px;
  font-weight: 600;

  letter-spacing: 0.10em;
}

.fl-finalcta__status strong {
  color: #ffffff;

  font-size: 10px;
  font-weight: 600;
}

.fl-finalcta__panel-bottom > svg {
  width: 18px;
  height: 18px;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   BRAND STRIP
========================================================= */

.fl-finalcta__brand {
  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  z-index: 7;

  min-height: 72px;

  display: flex;
  align-items: center;

  background:
    rgba(7, 8, 9, 0.88);

  border-top:
    1px solid rgba(255, 255, 255, 0.10);

  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
}

.fl-finalcta__brand-inner {
  width: min(1380px, calc(100% - 100px));

  margin: 0 auto;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 40px;
}

.fl-finalcta__brand-inner > span {
  color: #ffffff;

  font-family: "Outfit", Arial, sans-serif;

  font-size: 12px;
  font-weight: 500;

  letter-spacing: 0.06em;

  white-space: nowrap;
}

.fl-finalcta__brand-services {
  display: flex;
  align-items: center;
  justify-content: flex-end;

  gap: 17px;

  white-space: nowrap;

  overflow: hidden;
}

.fl-finalcta__brand-services strong {
  color:
    rgba(255, 255, 255, 0.43);

  font-size: 8px;
  font-weight: 500;

  letter-spacing: 0.10em;
}

.fl-finalcta__brand-services i {
  width: 4px;
  height: 4px;

  flex: 0 0 4px;

  border-radius: 50%;

  background: var(--fl-red);
}


/* =========================================================
   MEDIUM DESKTOP
========================================================= */

@media (max-width: 1250px) {

  .fl-finalcta__wrap,
  .fl-finalcta__brand-inner {
    width: min(1120px, calc(100% - 60px));
  }

  .fl-finalcta__wrap {
    gap: 60px;
  }

  .fl-finalcta h2 {
    font-size: clamp(54px, 5.7vw, 76px);
  }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 980px) {

  .fl-finalcta {
    min-height: auto;

    padding:
      100px 0
      135px;
  }

  .fl-finalcta__wrap {
    width: min(760px, calc(100% - 50px));

    grid-template-columns: 1fr;

    gap: 55px;
  }

  .fl-finalcta__content {
    max-width: 760px;
  }

  .fl-finalcta h2 {
    max-width: 700px;

    font-size: clamp(52px, 8vw, 72px);
  }

  .fl-finalcta__panel {
    max-width: 600px;

    justify-self: start;
  }

  .fl-finalcta__brand-inner {
    width: min(760px, calc(100% - 50px));
  }

  .fl-finalcta__brand-services strong:nth-of-type(n+4),
  .fl-finalcta__brand-services i:nth-of-type(n+3) {
    display: none;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .fl-finalcta {
    padding:
      78px 0
      115px;
  }


  /* BACKGROUND */

  .fl-finalcta__media img {
    object-position: 60% center;
  }

  .fl-finalcta__overlay {
    background:
      linear-gradient(
        180deg,
        rgba(5, 6, 7, 0.78) 0%,
        rgba(5, 6, 7, 0.92) 45%,
        rgba(5, 6, 7, 0.99) 100%
      );
  }


  /* WRAPPER */

  .fl-finalcta__wrap {
    width: calc(100% - 36px);

    gap: 45px;
  }


  /* EYEBROW */

  .fl-finalcta__eyebrow {
    margin-bottom: 19px;

    font-size: 9px;

    letter-spacing: 0.14em;
  }

  .fl-finalcta__eyebrow span {
    width: 30px;
  }


  /* HEADING */

  .fl-finalcta h2 {
    font-size: clamp(44px, 12vw, 60px);

    line-height: 1.02;

    letter-spacing: -0.04em;
  }


  /* LEAD */

  .fl-finalcta__lead {
    margin-top: 23px;

    font-size: 13.5px;

    line-height: 1.72;
  }


  /* ACTIONS */

  .fl-finalcta__actions {
    margin-top: 29px;

    display: grid;

    grid-template-columns: 1fr;

    gap: 10px;
  }

  .fl-finalcta__btn,
  .fl-finalcta__btn--primary,
  .fl-finalcta__btn--secondary {
    width: 100%;
    min-width: 0;

    border-radius: 12px;
  }


  /* PANEL */

  .fl-finalcta__panel {
    max-width: none;

    border-radius: 18px;
  }

  .fl-finalcta__panel-head {
    padding:
      25px 20px
      23px;
  }

  .fl-finalcta__panel h3 {
    font-size: 23px;
  }

  .fl-finalcta__panel-no {
    font-size: 27px;
  }


  /* INFO */

  .fl-finalcta__info {
    padding:
      6px 20px;
  }

  .fl-finalcta__info-item {
    min-height: 120px;
  }


  /* PANEL BOTTOM */

  .fl-finalcta__panel-bottom {
    padding:
      0 20px;
  }


  /* BRAND */

  .fl-finalcta__brand {
    min-height: 68px;
  }

  .fl-finalcta__brand-inner {
    width: calc(100% - 36px);

    justify-content: center;
  }

  .fl-finalcta__brand-services {
    display: none;
  }

}


/* =========================================================
   EXTRA SMALL
========================================================= */

@media (max-width: 390px) {

  .fl-finalcta__wrap,
  .fl-finalcta__brand-inner {
    width: calc(100% - 28px);
  }

  .fl-finalcta h2 {
    font-size: 42px;
  }

  .fl-finalcta__info {
    grid-template-columns: 1fr;
  }

  .fl-finalcta__info-item,
  .fl-finalcta__info-item:nth-child(odd),
  .fl-finalcta__info-item:nth-child(even) {
    min-height: 90px;

    padding:
      18px 0;

    border-right: 0;

    border-bottom:
      1px solid rgba(255,255,255,0.09);
  }

  .fl-finalcta__info-item:last-child {
    border-bottom: 0;
  }

}/* End custom CSS */