:root {
  --wff-surface-alt: #F2F7FA;
  --wff-line-green: #06C755;
  --wff-gutter: 16px;
  --wff-card-peek: 82%;
}

a:hover {
  color: var(--wff-primary);
}

input#searchProduct {
  width: calc(100% - 18px);
}

.wff-bg-img {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.wff-eyebrow {
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--wff-primary);
  margin-bottom: 12px;
}

.wff-title {
  font-size: clamp(1.75rem, 0.4167rem + 2.7778vw, 2.5rem);
  font-weight: 600;
  color: var(--wff-deep-blue);
  margin-bottom: 24px;
}

.wff-desc {
  font-size: 1.25rem;
  color: #6B7280;
  margin: 0;
}

.wff-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 40px;
}

.wff-fade-in {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.wff-fade-in--visible {
  opacity: 1;
  transform: none;
}

.wff-banner::before,
.wff-home-banner-contact::before,
.wff-home-cat-product .wff-item::before,
.wff-home-spaces .wff-card::before,
.wff-about-vision-mission::before,
.wff-about-who-we-sever .wff-card::before,
.wff-about-quality .wff-card::before,
.wff-contact-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

.wff-home-cat-product .wff-grid,
.wff-home-spaces .wff-viewport,
.wff-about-who-we-sever .wff-viewport,
.wff-about-quality .wff-viewport,
.wff-about-after-installation .wff-viewport {
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.wff-home-cat-product .wff-grid::-webkit-scrollbar,
.wff-home-spaces .wff-viewport::-webkit-scrollbar,
.wff-about-who-we-sever .wff-viewport::-webkit-scrollbar,
.wff-about-quality .wff-viewport::-webkit-scrollbar,
.wff-about-after-installation .wff-viewport::-webkit-scrollbar {
  display: none;
}

.wff-about-who-we-sever .wff-viewport,
.wff-about-after-installation .wff-viewport {
  margin-inline: calc(var(--wff-gutter) * -1);
}

.wff-home-spaces .wff-track::after,
.wff-about-who-we-sever .wff-track::after,
.wff-about-quality .wff-track::after,
.wff-about-after-installation .wff-track::after {
  content: "";
  flex: 0 0 var(--wff-gutter);
}

.wff-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.wff-gallery-grid > :first-child {
  grid-column: 1/-1;
}
@media (min-width: 768px) {
  .wff-gallery-grid {
    gap: 24px;
  }
}
.wff-gallery-grid img {
  width: 100%;
  height: auto;
  margin: 0 !important;
}

.wff-banner {
  position: relative;
  height: 260px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.wff-banner::before {
  background: rgba(0, 0, 0, 0.4);
}
.wff-banner .container {
  position: relative;
  z-index: 2;
  text-align: center;
}
.wff-banner .wff-title {
  color: #fff;
  margin: 0;
  font-size: 2rem;
  text-transform: capitalize;
}
@media (min-width: 768px) {
  .wff-banner .wff-title {
    font-size: 3rem;
  }
}

.wff-home-banner-contact {
  position: relative;
  padding-block: 40px;
}
@media (min-width: 768px) {
  .wff-home-banner-contact {
    padding-block: 80px;
  }
}
.wff-home-banner-contact::before {
  background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.51) 74%, #fff 100%);
  pointer-events: none;
}
.wff-home-banner-contact .container {
  position: relative;
  z-index: 2;
}
.wff-home-banner-contact .wff-content {
  text-align: center;
}
.wff-home-banner-contact .wff-title {
  font-size: clamp(2rem, 0.75rem + 4vw, 3rem);
  margin-bottom: 12px;
}
.wff-home-banner-contact .wff-desc {
  font-size: clamp(1.125rem, 0.9688rem + 0.5vw, 1.25rem);
  color: #565656;
  margin-bottom: 40px;
  text-wrap: balance;
}
.wff-home-banner-contact .btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.wff-home-specifications {
  padding: 80px 0;
}
.wff-home-specifications .wff-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 40px;
}
@media (min-width: 768px) {
  .wff-home-specifications .wff-row {
    column-gap: 64px;
  }
}
.wff-home-specifications .wff-home-specifications-col {
  list-style: none;
  margin: 0;
  padding: 0;
  flex: 1 1 calc(50% - 8px);
  min-width: 0;
}
@media (min-width: 768px) {
  .wff-home-specifications .wff-home-specifications-col {
    margin-bottom: 24px;
    flex: 1 1 320px;
  }
}
.wff-home-specifications .wff-item {
  border-bottom: 1px solid #E4E5F0;
}
.wff-home-specifications .wff-item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding-block: 18px;
  font-size: clamp(1.125rem, 0.9688rem + 0.5vw, 1.25rem);
  font-weight: 600;
  color: var(--wff-text);
  transition: color 0.2s ease-in-out;
}
.wff-home-specifications .wff-item a:hover, .wff-home-specifications .wff-item a:focus-visible {
  color: var(--wff-primary);
}
.wff-home-specifications .wff-item.wff-item--active a {
  color: var(--wff-primary);
}
.wff-home-specifications .wff-item i {
  font-size: 1.25rem;
}

.wff-home-why-choose {
  padding-block: 60px;
  text-align: center;
  font-family: var(--wff-font-family, Inter, sans-serif);
}
@media (min-width: 768px) {
  .wff-home-why-choose {
    padding-block: 80px;
  }
}
.wff-home-why-choose .wff-title {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .wff-home-why-choose .wff-title {
    margin-bottom: 60px;
  }
}
.wff-home-why-choose .wff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-content: center;
  gap: 16px 24px;
}
@media (min-width: 768px) {
  .wff-home-why-choose .wff-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 40px 24px;
  }
}
.wff-home-why-choose .wff-icon {
  width: 60px;
  height: 60px;
  margin: 0 auto 16px;
  border-radius: 12px;
  background: var(--wff-blue-1);
  display: flex;
  align-items: center;
  justify-content: center;
}
.wff-home-why-choose .wff-icon i {
  font-size: 1.75rem;
  color: #fff;
}
.wff-home-why-choose .wff-item-title {
  font-size: clamp(1.125rem, 0.9688rem + 0.5vw, 1.25rem);
  font-weight: 600;
  color: var(--wff-text);
  margin: 0 0 8px;
}
.wff-home-why-choose .wff-item-desc {
  font-size: 1rem;
  color: #6B7280;
  margin: 0;
}

.wff-home-cat-product {
  padding-block: 60px;
  text-align: center;
  font-family: var(--wff-font-family, Inter, sans-serif);
}
@media (min-width: 768px) {
  .wff-home-cat-product {
    padding-block: 80px;
  }
}
.wff-home-cat-product .wff-title {
  margin-bottom: 24px;
  font-size: clamp(2rem, 0.2222rem + 3.7037vw, 3rem);
}
@media (min-width: 768px) {
  .wff-home-cat-product .wff-title {
    margin-bottom: 40px;
  }
}
.wff-home-cat-product .wff-grid {
  display: flex;
  gap: 12px;
  text-align: left;
  scroll-padding-left: var(--wff-gutter);
  margin-inline: calc(var(--wff-gutter) * -1);
  padding: 0 var(--wff-gutter) 4px 0;
}
@media (min-width: 1200px) {
  .wff-home-cat-product .wff-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    overflow: visible;
    scroll-padding-left: 0;
    margin-inline: 0;
    padding: 0;
  }
}
.wff-home-cat-product .wff-item {
  position: relative;
  display: block;
  flex: 0 0 var(--wff-card-peek);
  aspect-ratio: 312/210;
  overflow: hidden;
  border-radius: 20px;
  scroll-snap-align: start;
  transition: box-shadow 0.3s ease-in-out;
}
@media (min-width: 768px) {
  .wff-home-cat-product .wff-item {
    flex-basis: 44%;
  }
}
@media (min-width: 1200px) {
  .wff-home-cat-product .wff-item {
    aspect-ratio: auto;
    height: 286px;
  }
}
.wff-home-cat-product .wff-item:first-child {
  margin-left: var(--wff-gutter);
}
@media (min-width: 1200px) {
  .wff-home-cat-product .wff-item:first-child {
    margin-left: 0;
  }
}
.wff-home-cat-product .wff-item:nth-child(1) {
  grid-column: span 2;
}
.wff-home-cat-product .wff-item::before {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.6) 90.38%);
}
.wff-home-cat-product .wff-item:hover, .wff-home-cat-product .wff-item:active {
  box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.1490196078);
}
.wff-home-cat-product .wff-item:hover .wff-bg-img, .wff-home-cat-product .wff-item:active .wff-bg-img {
  transform: scale(1.06);
}
.wff-home-cat-product .wff-item:hover .wff-link, .wff-home-cat-product .wff-item:active .wff-link {
  gap: 10px;
}
.wff-home-cat-product .wff-bg-img {
  transition: transform 0.6s ease-out;
}
.wff-home-cat-product .wff-home-cat-product-item-content {
  position: absolute;
  z-index: 2;
  left: 24px;
  right: 24px;
  bottom: 24px;
  color: #fff;
}
@media (min-width: 1200px) {
  .wff-home-cat-product .wff-home-cat-product-item-content {
    bottom: 20px;
  }
}
.wff-home-cat-product .wff-item-title {
  display: block;
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 4px;
}
@media (min-width: 1200px) {
  .wff-home-cat-product .wff-item-title {
    font-size: 2rem;
  }
}
.wff-home-cat-product .wff-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.875rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.8);
  transition: gap 0.2s ease-in-out;
}
.wff-home-cat-product .wff-link i {
  font-size: 0.75rem;
}

.wff-home-spaces {
  padding-block: 100px 40px;
  text-align: center;
}
@media (min-width: 768px) {
  .wff-home-spaces {
    padding-block: 185px 60px;
  }
}
.wff-home-spaces .wff-title {
  margin-bottom: 12px;
}
@media (min-width: 768px) {
  .wff-home-spaces .wff-title {
    margin-bottom: 16px;
  }
}
.wff-home-spaces .wff-desc {
  font-size: clamp(1.125rem, 0.9028rem + 0.463vw, 1.25rem);
  color: #6B7280;
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .wff-home-spaces .wff-desc {
    margin-bottom: 40px;
  }
}
.wff-home-spaces .wff-viewport {
  scroll-padding-left: var(--wff-gutter);
  margin-inline: calc(var(--wff-gutter) * -1);
  padding: 0 var(--wff-gutter) 4px 0;
}
@media (min-width: 1200px) {
  .wff-home-spaces .wff-viewport {
    overflow: visible;
    scroll-padding-left: 0;
    margin-inline: 0;
    padding: 0;
  }
}
.wff-home-spaces .wff-track {
  display: flex;
  gap: 16px;
  text-align: left;
  padding-bottom: 4px;
}
@media (min-width: 1200px) {
  .wff-home-spaces .wff-track {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    padding-bottom: 0;
  }
}
.wff-home-spaces .wff-track::after {
  margin-left: -16px;
}
@media (min-width: 1200px) {
  .wff-home-spaces .wff-track::after {
    display: none;
  }
}
.wff-home-spaces .wff-card {
  position: relative;
  display: flex;
  flex: 0 0 var(--wff-card-peek);
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 8px;
  aspect-ratio: 312/286;
  padding: 24px;
  border-radius: 20px;
  transition: box-shadow 0.3s ease-in-out;
  overflow: hidden;
  scroll-snap-align: start;
}
@media (min-width: 768px) {
  .wff-home-spaces .wff-card {
    flex-basis: 44%;
  }
}
.wff-home-spaces .wff-card::before {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 62.76%, rgba(0, 0, 0, 0.5) 100%);
}
.wff-home-spaces .wff-card:first-child {
  margin-left: var(--wff-gutter);
}
@media (min-width: 1200px) {
  .wff-home-spaces .wff-card:first-child, .wff-home-spaces .wff-card + .wff-card {
    margin-left: 0;
  }
}
.wff-home-spaces .wff-card:hover {
  box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.1490196078);
}
.wff-home-spaces .wff-card:hover .wff-bg-img {
  transform: scale(1.06);
}
.wff-home-spaces .wff-bg-img {
  transition: transform 0.6s ease-out;
}
.wff-home-spaces .wff-badge {
  position: relative;
  z-index: 2;
  padding: 8px 12px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.829804) 0%, rgba(255, 255, 255, 0.645804) 100%);
  color: var(--wff-text);
  font-size: 0.875rem;
  font-weight: 700;
  border-radius: 999px;
  backdrop-filter: blur(18px);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.8), 0 6px 16px rgba(0, 0, 0, 0.08);
}
@media (min-width: 768px) {
  .wff-home-spaces .wff-badge {
    padding: 8px 16px;
    font-size: 0.8125rem;
  }
}
.wff-home-spaces .wff-link {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.875rem;
  font-weight: 500;
  color: #fff;
  transition: color 0.2s ease-in-out;
}

.wff-about-story {
  padding-block: 60px;
}
@media (min-width: 768px) {
  .wff-about-story {
    padding-block: 80px;
  }
}
.wff-about-story .wff-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 40px;
  align-items: center;
}
@media (min-width: 1200px) {
  .wff-about-story .wff-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 60px;
  }
}
.wff-about-story .wff-title {
  font-size: 2rem;
  text-transform: capitalize;
  margin-bottom: 12px;
}
@media (min-width: 768px) {
  .wff-about-story .wff-title {
    font-size: 3rem;
    margin-bottom: 32px;
  }
}
.wff-about-story .wff-desc {
  font-size: 1.125rem;
  margin-bottom: 16px;
}
@media (min-width: 768px) {
  .wff-about-story .wff-desc {
    font-size: 1.25rem;
  }
}
.wff-about-story .wff-desc:last-child {
  margin-bottom: 0;
}
.wff-about-story .wff-media {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 8px;
  aspect-ratio: 358/317.11;
}
@media (min-width: 768px) {
  .wff-about-story .wff-media {
    gap: 24px;
    aspect-ratio: 620/540;
  }
}
.wff-about-story .wff-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 16px;
}
.wff-about-story .wff-img:nth-child(1) {
  grid-column: 1;
  grid-row: 1/3;
}
.wff-about-story .wff-img:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}
.wff-about-story .wff-img:nth-child(3) {
  grid-column: 2;
  grid-row: 2;
}

.wff-about-intention {
  padding-block: 40px;
}
@media (min-width: 1200px) {
  .wff-about-intention {
    padding-block: 100px 120px;
  }
}
.wff-about-intention .wff-grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "content" "media";
  gap: 40px;
}
@media (min-width: 1200px) {
  .wff-about-intention .wff-grid {
    grid-template-columns: minmax(0, 1fr) 660px;
    grid-template-areas: "media content";
    gap: 84px;
  }
}
.wff-about-intention .wff-media {
  grid-area: media;
  height: 100%;
}
.wff-about-intention .wff-media img {
  width: 100%;
  height: 462px;
  object-fit: cover;
  border-radius: 16px;
  background-color: var(--wff-blue-bg-2);
}
@media (min-width: 1200px) {
  .wff-about-intention .wff-media img {
    height: 100%;
  }
}
.wff-about-intention .wff-content {
  grid-area: content;
}
.wff-about-intention .wff-title {
  text-transform: capitalize;
  margin-bottom: 40px;
}
.wff-about-intention .wff-about-intention-items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  text-align: left;
}
@media (min-width: 768px) {
  .wff-about-intention .wff-about-intention-items {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}
.wff-about-intention .wff-icon {
  width: 44px;
  height: 44px;
  margin-bottom: 16px;
  border-radius: 12px;
  background: var(--wff-primary);
  display: flex;
  align-items: center;
  justify-content: center;
}
.wff-about-intention .wff-icon i {
  font-size: 1.0625rem;
  color: #fff;
}
.wff-about-intention .wff-item-title {
  font-size: clamp(1.25rem, 0.8056rem + 0.9259vw, 1.5rem);
  font-weight: 600;
  text-transform: capitalize;
  color: var(--wff-text, #111111);
  margin-bottom: 8px;
}
.wff-about-intention .wff-item-desc {
  font-size: 1rem;
  color: #6B7280;
  margin: 0;
}

.wff-about-vision-mission {
  position: relative;
  padding-block: 60px;
}
@media (min-width: 768px) {
  .wff-about-vision-mission {
    padding-block: 80px;
  }
}
.wff-about-vision-mission .wff-bg-img {
  object-position: center;
}
.wff-about-vision-mission::before {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.35) 45%, rgba(0, 0, 0, 0.65) 100%);
  pointer-events: none;
}
.wff-about-vision-mission .container {
  position: relative;
  z-index: 2;
}
.wff-about-vision-mission .wff-title {
  color: #fff;
}
.wff-about-vision-mission .wff-about-vision {
  margin-bottom: 80px;
}
@media (min-width: 768px) {
  .wff-about-vision-mission .wff-about-vision {
    margin-bottom: 120px;
  }
}
.wff-about-vision-mission .wff-desc {
  font-size: 1.125rem;
  color: #EEEEEE;
  margin: 0;
}
@media (min-width: 768px) {
  .wff-about-vision-mission .wff-desc {
    font-size: 1.25rem;
  }
}
.wff-about-vision-mission .wff-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media (min-width: 768px) {
  .wff-about-vision-mission .wff-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
  }
}
.wff-about-vision-mission .wff-about-vision-mission-item-number {
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 12px;
}
.wff-about-vision-mission .wff-item-desc {
  font-size: 1.125rem;
  color: #EEEEEE;
  margin: 0;
}
@media (min-width: 768px) {
  .wff-about-vision-mission .wff-item-desc {
    font-size: 1.25rem;
  }
}

.wff-about-who-we-sever {
  padding-block: 60px;
  overflow: hidden;
}
@media (min-width: 768px) {
  .wff-about-who-we-sever {
    padding-top: 120px;
    padding-bottom: 80px;
  }
}
@media (min-width: 1200px) {
  .wff-about-who-we-sever {
    overflow: visible;
  }
}
.wff-about-who-we-sever .wff-grid {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  gap: 40px;
}
@media (min-width: 768px) {
  .wff-about-who-we-sever .wff-grid {
    gap: 32px;
  }
}
@media (min-width: 1200px) {
  .wff-about-who-we-sever .wff-grid {
    grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
    gap: 84px;
  }
}
.wff-about-who-we-sever .wff-title {
  margin-bottom: 12px;
}
@media (min-width: 768px) {
  .wff-about-who-we-sever .wff-title {
    margin-bottom: 16px;
  }
}
.wff-about-who-we-sever .wff-desc {
  font-size: clamp(1.125rem, 0.9028rem + 0.463vw, 1.25rem);
}
.wff-about-who-we-sever .wff-viewport {
  scroll-padding-left: var(--wff-gutter);
}
@media (min-width: 768px) {
  .wff-about-who-we-sever .wff-viewport {
    scroll-padding-left: 32px;
  }
}
@media (min-width: 1200px) {
  .wff-about-who-we-sever .wff-viewport {
    width: auto;
    margin-inline: 0;
    overflow: visible;
    scroll-padding-left: 0;
  }
}
.wff-about-who-we-sever .wff-track {
  display: flex;
  gap: var(--wff-gutter);
}
@media (min-width: 768px) {
  .wff-about-who-we-sever .wff-track {
    gap: 20px;
  }
}
@media (min-width: 1200px) {
  .wff-about-who-we-sever .wff-track {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
}
.wff-about-who-we-sever .wff-track::after {
  margin-left: calc(var(--wff-gutter) * -1);
}
@media (min-width: 768px) {
  .wff-about-who-we-sever .wff-track::after {
    margin-left: -20px;
  }
}
@media (min-width: 1200px) {
  .wff-about-who-we-sever .wff-track::after {
    display: none;
  }
}
.wff-about-who-we-sever .wff-card {
  position: relative;
  display: flex;
  flex: 0 0 var(--wff-card-peek);
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 8px;
  padding: 24px;
  aspect-ratio: 312/248;
  border-radius: 20px;
  overflow: hidden;
  scroll-snap-align: start;
}
@media (min-width: 768px) {
  .wff-about-who-we-sever .wff-card {
    flex: 0 0 45%;
  }
}
.wff-about-who-we-sever .wff-card:first-child {
  margin-left: var(--wff-gutter);
}
@media (min-width: 1200px) {
  .wff-about-who-we-sever .wff-card:first-child {
    margin-left: 0;
  }
}
.wff-about-who-we-sever .wff-card::before {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 62.76%, rgba(0, 0, 0, 0.5) 100%);
}
.wff-about-who-we-sever .wff-card:hover .wff-link {
  color: var(--wff-primary);
}
.wff-about-who-we-sever .wff-badge {
  position: relative;
  z-index: 2;
  padding: 8px 12px;
  color: var(--wff-text);
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 16px;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.829804) 0%, rgba(255, 255, 255, 0.645804) 100%);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.8), 0px 6px 16px -6px rgba(0, 0, 0, 0.0784314);
  border-radius: 999px;
  backdrop-filter: blur(9px);
}
@media (min-width: 1200px) {
  .wff-about-who-we-sever .wff-badge {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.5;
  }
}
.wff-about-who-we-sever .wff-link {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 17px;
  color: #fff;
  opacity: 0.8;
}
@media (min-width: 1200px) {
  .wff-about-who-we-sever .wff-link {
    font-weight: 500;
    line-height: 1.5;
  }
}

.wff-about-where-buy {
  padding: 40px 0;
  text-align: center;
  background: linear-gradient(to bottom, #FFFFFF 0%, var(--wff-surface-alt) 30%, var(--wff-surface-alt) 90%, #FFFFFF 100%);
}
@media (min-width: 768px) {
  .wff-about-where-buy {
    padding: 80px 0;
  }
}
.wff-about-where-buy .wff-title {
  margin-bottom: 40px;
}
.wff-about-where-buy .wff-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  align-content: flex-start;
  gap: 24px var(--wff-gutter);
}
@media (min-width: 768px) {
  .wff-about-where-buy .wff-grid {
    gap: 24px;
  }
}
.wff-about-where-buy .wff-item {
  box-sizing: border-box;
  display: flex;
  flex: none;
  width: 144px;
  height: 125px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  background: #fff;
  border: 1px solid #F2F4F6;
  border-radius: 16px;
  text-decoration: none;
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}
.wff-about-where-buy .wff-item:hover {
  box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.15);
}
.wff-about-where-buy .wff-item:hover .wff-item-title {
  color: var(--wff-primary);
}
.wff-about-where-buy .wff-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  overflow: hidden;
}
.wff-about-where-buy .wff-item-title {
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--wff-text);
  margin: 0;
  transition: color 0.2s ease-in-out;
}

.wff-about-quality {
  padding: 40px 0;
  overflow: hidden;
}
@media (min-width: 768px) {
  .wff-about-quality {
    padding-block: 120px;
  }
}
.wff-about-quality .wff-row {
  display: block;
}
@media (min-width: 1200px) {
  .wff-about-quality .wff-row {
    display: flex;
    align-items: stretch;
    gap: 80px;
  }
}
.wff-about-quality .wff-content {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  width: auto;
  max-width: none;
  padding-left: var(--wff-gutter);
  padding-right: var(--wff-gutter);
  box-sizing: content-box;
}
@media (min-width: 1200px) {
  .wff-about-quality .wff-content {
    width: 420px;
    max-width: calc(100% - 32px);
    padding-left: calc(max(0px, (100vw - 1320px) / 2) + var(--wff-gutter));
    padding-right: 0;
  }
}
.wff-about-quality .wff-title {
  margin: 0 0 12px;
}
@media (min-width: 768px) {
  .wff-about-quality .wff-title {
    margin-bottom: 16px;
  }
}
.wff-about-quality .wff-desc {
  font-size: clamp(1.125rem, 0.9028rem + 0.463vw, 1.25rem);
}
.wff-about-quality .wff-nav {
  display: flex;
  justify-content: flex-end;
  gap: 16px;
  margin-top: auto;
  padding-top: 20px;
}
@media (min-width: 768px) {
  .wff-about-quality .wff-nav {
    padding-top: 32px;
  }
}
.wff-about-quality .wff-prev,
.wff-about-quality .wff-next {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: none;
  border-radius: 12px;
  background: var(--wff-primary);
  color: #fff;
  font-size: 1.5rem;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}
.wff-about-quality .wff-prev:disabled,
.wff-about-quality .wff-next:disabled {
  opacity: 0.4;
  cursor: default;
}
.wff-about-quality .wff-viewport {
  flex: 1 1 auto;
  min-width: 0;
  margin-top: 24px;
  scroll-padding-left: var(--wff-gutter);
}
@media (min-width: 1200px) {
  .wff-about-quality .wff-viewport {
    margin-top: 0;
    scroll-padding-left: 0;
    scroll-snap-type: none;
  }
}
.wff-about-quality .wff-track {
  display: flex;
}
@media (min-width: 1200px) {
  .wff-about-quality .wff-track::after {
    flex-basis: max(var(--wff-gutter), (100vw - 1320px) / 2);
  }
}
.wff-about-quality .wff-card {
  position: relative;
  display: flex;
  flex: 0 0 calc(100vw - 72px);
  width: calc(100vw - 72px);
  aspect-ratio: 318/386;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 12px;
  padding: 24px;
  border-radius: 20px;
  overflow: hidden;
  color: #fff;
  scroll-snap-align: start;
}
@media (min-width: 768px) {
  .wff-about-quality .wff-card {
    flex: 0 0 45%;
    width: 45%;
  }
}
@media (min-width: 1200px) {
  .wff-about-quality .wff-card {
    flex: 0 0 424px;
    width: 424px;
  }
}
.wff-about-quality .wff-card::before {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 64.82%, rgba(0, 0, 0, 0.5) 100%);
}
.wff-about-quality .wff-card:first-child {
  margin-left: var(--wff-gutter);
}
@media (min-width: 1200px) {
  .wff-about-quality .wff-card:first-child {
    margin-left: 0;
  }
}
.wff-about-quality .wff-card + .wff-card {
  margin-left: var(--wff-gutter);
}
@media (min-width: 768px) {
  .wff-about-quality .wff-card + .wff-card {
    margin-left: 24px;
  }
}
.wff-about-quality .wff-item-title {
  position: relative;
  z-index: 2;
  font-size: clamp(1.25rem, 0.8056rem + 0.9259vw, 1.5rem);
  font-weight: 600;
  text-transform: capitalize;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}
.wff-about-quality .wff-item-desc {
  position: relative;
  z-index: 2;
  font-size: 1.125rem;
}

.wff-about-after-installation {
  padding-block: 80px 60px;
  text-align: center;
}
@media (min-width: 1200px) {
  .wff-about-after-installation {
    padding-block: 120px 80px;
    text-align: left;
  }
}
.wff-about-after-installation .wff-title {
  margin-bottom: 12px;
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-title {
    margin-bottom: 32px;
  }
}
.wff-about-after-installation .wff-row {
  display: grid;
  grid-template-columns: 1fr;
  justify-content: space-between;
  align-items: start;
  gap: 40px;
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-row {
    grid-template-columns: 0.6fr 1fr;
    gap: 64px;
  }
}
.wff-about-after-installation .wff-content {
  text-align: center;
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-content {
    text-align: left;
  }
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-eyebrow {
    margin-bottom: 16px;
  }
}
.wff-about-after-installation .wff-desc {
  font-size: clamp(1.125rem, 0.9028rem + 0.463vw, 1.25rem);
  margin-bottom: 40px;
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-desc {
    margin-bottom: 32px;
  }
}
.wff-about-after-installation .wff-img {
  width: 100%;
  height: 308px;
  object-fit: cover;
  border-radius: 20px;
}
.wff-about-after-installation .wff-viewport {
  margin-top: 24px;
  scroll-padding-left: var(--wff-gutter);
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-viewport {
    width: auto;
    margin-top: 0;
    margin-inline: 0;
    overflow: visible;
    scroll-padding-left: 0;
  }
}
.wff-about-after-installation .wff-track {
  display: flex;
  gap: 12px;
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-track {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}
.wff-about-after-installation .wff-track::after {
  margin-left: -12px;
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-track::after {
    display: none;
  }
}
.wff-about-after-installation .wff-card {
  flex: 0 0 var(--wff-card-peek);
  border: 1px solid var(--wff-field-border);
  border-radius: 20px;
  padding: 24px;
  scroll-snap-align: start;
  text-align: left;
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-card {
    padding: 32px;
  }
}
.wff-about-after-installation .wff-card:first-child {
  margin-left: var(--wff-gutter);
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-card:first-child {
    margin-left: 0;
  }
}
.wff-about-after-installation .wff-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
.wff-about-after-installation .wff-tag {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 6px;
  background: var(--wff-blue-bg-2);
  color: var(--wff-primary);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
}
.wff-about-after-installation .wff-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--wff-primary);
}
.wff-about-after-installation .wff-icon i {
  color: #fff;
  font-size: 1.25rem;
}
.wff-about-after-installation .wff-card-title {
  font-size: 1.0625rem;
  font-weight: 600;
  color: var(--wff-deep-blue);
  margin: 0 0 12px;
}
@media (min-width: 1200px) {
  .wff-about-after-installation .wff-card-title {
    font-size: 1.125rem;
  }
}
.wff-about-after-installation .wff-card-desc {
  font-size: 1.125rem;
  color: var(--wff-text-muted);
  margin: 0;
}

.wff-about-faq {
  padding-block: 60px;
  text-align: center;
}
@media (min-width: 768px) {
  .wff-about-faq {
    padding-block: 120px 80px;
  }
}
@media (min-width: 1200px) {
  .wff-about-faq .wff-eyebrow {
    margin-bottom: 16px;
  }
}
.wff-about-faq .wff-title {
  margin-bottom: 12px;
}
@media (min-width: 1200px) {
  .wff-about-faq .wff-title {
    margin-bottom: 16px;
  }
}
.wff-about-faq .wff-desc {
  font-size: 0.875rem;
  color: var(--wff-text-muted);
  margin: 0 auto 40px;
  max-width: 620px;
}
@media (min-width: 768px) {
  .wff-about-faq .wff-desc {
    font-size: 1rem;
    margin-bottom: 48px;
  }
}
.wff-about-faq .wff-faq-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  text-align: left;
}
@media (min-width: 768px) {
  .wff-about-faq .wff-faq-list {
    max-width: 1096px;
    margin-inline: auto;
  }
}
.wff-about-faq .wff-faq-item {
  box-sizing: border-box;
  padding: var(--wff-gutter);
  border: 1px solid var(--wff-surface-alt);
  border-radius: 12px;
  background: #fff;
}
@media (min-width: 768px) {
  .wff-about-faq .wff-faq-item {
    padding: 24px;
  }
}
.wff-about-faq .wff-faq-item.active {
  background: var(--wff-surface-alt);
}
.wff-about-faq .wff-faq-item.active .wff-faq-icon {
  transform: rotate(180deg);
}
.wff-about-faq .wff-faq-item.active .wff-faq-answer {
  grid-template-rows: 1fr;
}
.wff-about-faq .wff-faq-question {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  padding: 0;
  border: none;
  background: none;
  text-align: left;
  cursor: pointer;
}
.wff-about-faq .wff-faq-number {
  flex-shrink: 0;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  color: var(--wff-primary);
}
.wff-about-faq .wff-faq-text {
  flex: 1 1 auto;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
  text-transform: capitalize;
  color: var(--wff-text);
}
@media (min-width: 768px) {
  .wff-about-faq .wff-faq-text {
    font-size: 1.25rem;
  }
}
.wff-about-faq .wff-faq-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  color: var(--wff-text);
  font-size: 1.25rem;
  transition: transform 0.2s ease-in-out;
}
.wff-about-faq .wff-faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.25s ease-in-out;
}
.wff-about-faq .wff-faq-answer-inner {
  overflow: hidden;
}
.wff-about-faq .wff-faq-answer p {
  margin: 0;
  padding-top: 16px;
  padding-left: 36px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: #6B7280;
}

.wff-services-intro {
  padding-block: 60px;
}
@media (min-width: 768px) {
  .wff-services-intro {
    padding-block: 80px;
  }
}
.wff-services-intro .wff-row {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  gap: 40px;
}
@media (min-width: 768px) {
  .wff-services-intro .wff-row {
    grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
    gap: 60px;
  }
}
.wff-services-intro .wff-title {
  font-size: clamp(2rem, 0.2222rem + 3.7037vw, 3rem);
  margin-bottom: 12px;
}
.wff-services-intro .wff-desc {
  font-size: clamp(1.125rem, 0.9028rem + 0.463vw, 1.25rem);
  margin-bottom: 28px;
}
@media (min-width: 768px) {
  .wff-services-intro .wff-desc {
    margin-bottom: 36px;
  }
}
.wff-services-intro .btn-primary {
  margin-bottom: 32px;
}
@media (min-width: 768px) {
  .wff-services-intro .btn-primary {
    margin-bottom: 0;
  }
}
.wff-services-intro .wff-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  margin-top: 8px;
}
@media (min-width: 768px) {
  .wff-services-intro .wff-stats {
    display: flex;
    margin-top: 80px;
  }
}
.wff-services-intro .wff-stat {
  display: flex;
  flex-direction: column;
}
.wff-services-intro .wff-stat-label {
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--wff-text);
}
.wff-services-intro .wff-stat-value {
  font-size: clamp(3rem, 4.7778rem - 3.7037vw, 2rem);
  font-weight: 600;
  color: var(--wff-deep-blue);
}
.wff-services-intro .wff-stat-desc {
  font-size: 1rem;
  color: var(--wff-field-label);
  margin-top: 4px;
}
.wff-services-intro .wff-media {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  min-width: 0;
}
@media (min-width: 768px) {
  .wff-services-intro .wff-media {
    gap: 24px;
  }
}
.wff-services-intro .wff-media-item {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: 20px;
}
.wff-services-intro .wff-media-item:nth-child(1) {
  grid-column: 1/-1;
  aspect-ratio: 700/293;
}

.wff-services-step {
  padding-block: 80px;
  background: linear-gradient(to bottom, #FFFFFF 0%, var(--wff-surface-alt) 10%, var(--wff-surface-alt) 90%, #FFFFFF 100%);
}
@media (min-width: 1200px) {
  .wff-services-step {
    padding-block: 120px;
  }
}
.wff-services-step .wff-grid {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  gap: 40px;
}
@media (min-width: 768px) {
  .wff-services-step .wff-grid {
    grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
    gap: 80px;
  }
}
.wff-services-step .wff-media {
  order: 2;
}
@media (min-width: 768px) {
  .wff-services-step .wff-media {
    order: 1;
  }
}
.wff-services-step .wff-img {
  display: block;
  width: 100%;
  object-fit: cover;
  border-radius: 24px;
}
.wff-services-step .wff-content {
  order: 1;
}
@media (min-width: 768px) {
  .wff-services-step .wff-content {
    order: 2;
  }
}
.wff-services-step .wff-title {
  margin-bottom: 16px;
}
.wff-services-step .wff-desc {
  font-size: clamp(1.125rem, 0.9028rem + 0.463vw, 1.25rem);
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .wff-services-step .wff-desc {
    margin-bottom: 48px;
  }
}
.wff-services-step .wff-steps {
  display: flex;
  flex-direction: column;
  gap: 24px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.wff-services-step .wff-step {
  position: relative;
  display: flex;
  gap: 20px;
}
.wff-services-step .wff-step:not(:last-child)::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 35px;
  bottom: 0;
  width: 2px;
  background: var(--wff-deep-blue);
}
.wff-services-step .wff-step-number {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--wff-deep-blue);
  color: #fff;
  font-size: 0.875rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wff-services-step .wff-step-content * {
  margin-bottom: 4px;
}
.wff-services-step .wff-step-label {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--wff-primary);
}
.wff-services-step .wff-step-title {
  font-size: clamp(1.125rem, 0.9028rem + 0.463vw, 1.25rem);
  font-weight: 600;
  color: var(--wff-text);
}
.wff-services-step .wff-step-desc {
  font-size: 1.125rem;
  color: var(--wff-text-muted);
  margin: 0;
}

.wff-contact-map {
  padding-block: 60px;
}
@media (min-width: 768px) {
  .wff-contact-map {
    padding-block: 0 80px;
  }
}

.wff-contact-map-row {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  gap: 40px;
}
@media (min-width: 1200px) {
  .wff-contact-map-row {
    grid-template-columns: minmax(0, 640fr) minmax(0, 620fr);
    gap: 60px;
  }
}

.wff-contact-map-media {
  border-radius: 20px;
  overflow: hidden;
}

.wff-contact-map-image,
.wff-contact-map-media iframe {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 8/5;
  border: 0;
}

.wff-contact-map .wff-title {
  margin-bottom: 32px;
}

.wff-contact-map-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.wff-contact-map-icon {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  font-size: 1.25rem;
  color: var(--wff-blue-1);
}

.wff-contact-map-name {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--wff-text);
  margin: 0 0 4px;
}

.wff-contact-map-desc {
  font-size: 1rem;
  color: #6B7280;
  margin: 0;
}

.wff-contact-map-divider {
  margin-block: 16px;
  border: none;
  border-top: 1px solid var(--wff-field-border);
  opacity: 1;
}

.wff-contact-banner {
  position: relative;
  display: block;
  padding-block: 32px 40px;
  min-height: 0;
}
@media (min-width: 768px) {
  .wff-contact-banner {
    display: flex;
    align-items: center;
    padding-block: 80px;
    min-height: 265px;
  }
}
.wff-contact-banner::before {
  background: linear-gradient(90deg, rgba(17, 17, 17, 0.75) 0%, rgba(17, 17, 17, 0.4) 55%, rgba(17, 17, 17, 0.05) 100%);
  pointer-events: none;
}
.wff-contact-banner .container {
  position: relative;
  z-index: 2;
}
.wff-contact-banner .wff-content {
  width: 100%;
}
.wff-contact-banner .wff-row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
}
@media (min-width: 768px) {
  .wff-contact-banner .wff-row {
    flex-direction: row;
    align-items: flex-end;
    gap: 40px;
  }
}
.wff-contact-banner .wff-title {
  font-size: 3rem;
  color: #fff;
  margin-bottom: 0;
  flex: 0 0 auto;
}
.wff-contact-banner .wff-eyebrow {
  color: rgba(255, 255, 255, 0.85);
}
.wff-contact-banner .wff-desc {
  max-width: 656px;
  margin: 0;
  color: rgba(255, 255, 255, 0.85);
}

.wff-contact-information {
  padding-block: 60px;
}
@media (min-width: 768px) {
  .wff-contact-information {
    padding-block: 80px;
  }
}
.wff-contact-information .wff-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media (min-width: 768px) {
  .wff-contact-information .wff-row {
    grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
  }
}
.wff-contact-information .wff-card {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px;
  background: #fff;
  border-top: 4px solid var(--wff-primary);
  border-radius: 16px;
  box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.15);
  height: 100%;
}
.wff-contact-information .wff-card--email {
  border-top-color: var(--wff-deep-blue);
}
.wff-contact-information .wff-card--email .wff-icon {
  background: var(--wff-deep-blue);
}
.wff-contact-information .wff-card--line {
  border-top-color: var(--wff-line-green);
}
.wff-contact-information .wff-card--line .wff-icon {
  background: var(--wff-line-green);
}
.wff-contact-information .wff-card--line .wff-pill {
  color: var(--wff-line-green);
}
.wff-contact-information .wff-card-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
@media (min-width: 768px) {
  .wff-contact-information .wff-card-header {
    flex-direction: row;
  }
}
.wff-contact-information .wff-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--wff-blue-1);
  color: #fff;
  font-size: 1.25rem;
}
.wff-contact-information .wff-card-desc {
  margin: 0;
  font-size: 1.125rem;
  color: #6B7280;
}
.wff-contact-information .wff-info-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: auto;
}
.wff-contact-information .wff-info-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 14px;
  background: var(--wff-blue-bg-2);
  border-radius: 10px;
}
.wff-contact-information .wff-info-row:hover, .wff-contact-information .wff-info-row:focus, .wff-contact-information .wff-info-row:active {
  background: var(--wff-blue-bg-1);
}
.wff-contact-information .wff-info-label {
  font-size: 1rem;
  font-weight: 500;
  color: var(--wff-text-muted);
}
.wff-contact-information .wff-info-value {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--wff-primary);
  white-space: nowrap;
  text-decoration: none;
}
.wff-contact-information .wff-pill {
  display: block;
  margin-top: auto;
  padding: 12px 16px;
  background: var(--wff-blue-bg-2);
  border-radius: 10px;
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--wff-deep-blue);
  text-align: center;
  text-decoration: none;
}
.wff-contact-information .wff-pill:hover, .wff-contact-information .wff-pill:focus, .wff-contact-information .wff-pill:active {
  background: var(--wff-blue-bg-1);
}

.wff-contact-widget {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 1030;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 12px;
  background: rgba(0, 166, 156, 0.1);
  border-radius: 50px;
}
@media (min-width: 768px) {
  .wff-contact-widget {
    right: 24px;
    bottom: 24px;
  }
}
.wff-contact-widget .wff-contact-widget-menu {
  display: flex;
  flex-direction: column;
  gap: 14px;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
}
.wff-contact-widget .wff-contact-widget-menu > :last-child {
  margin-bottom: 14px;
}
.wff-contact-widget.is-open .wff-contact-widget-menu {
  max-height: 192px;
  opacity: 1;
  visibility: visible;
}
@media (prefers-reduced-motion: no-preference) {
  .wff-contact-widget .wff-contact-widget-menu {
    transition: max-height 0.3s ease, opacity 0.3s ease, visibility 0s linear 0.3s;
  }
  .wff-contact-widget.is-open .wff-contact-widget-menu {
    transition: max-height 0.3s ease, opacity 0.3s ease, visibility 0s;
  }
}
.wff-contact-widget .wff-contact-widget-btn,
.wff-contact-widget .wff-contact-widget-toggle {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  padding: 0;
  border: 0;
  border-radius: 50px;
  cursor: pointer;
}
.wff-contact-widget .wff-contact-widget-btn::before,
.wff-contact-widget .wff-contact-widget-toggle::before {
  content: "";
  background: center/contain no-repeat;
}
.wff-contact-widget .wff-contact-widget-btn--line {
  background: #00C500;
}
.wff-contact-widget .wff-contact-widget-btn--line::before {
  width: 28px;
  height: 26.83px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='136 0.58 28 26.83'%3E%3Cpath fill='white' d='M150 0.58374C157.715 0.58374 164 5.71745 164 12.0125C164 14.5331 163.016 16.8031 160.995 19.0466C158.056 22.4514 151.496 26.5821 150 27.2156C148.505 27.8487 148.727 26.8204 148.779 26.4636C148.806 26.3229 148.872 25.9222 148.977 25.2625C149.029 24.893 149.082 24.3385 148.938 23.9822C148.78 23.5864 148.163 23.3886 147.704 23.283C140.973 22.3988 136 17.6608 136 12.0125C136 5.71745 142.272 0.583742 150 0.58374ZM140.636 8.75269C140.492 8.75286 140.374 8.87227 140.374 9.01733V15.1667C140.374 15.3118 140.492 15.4302 140.636 15.4304H144.572C144.717 15.4304 144.835 15.3119 144.835 15.1667V14.1638C144.835 14.0187 144.717 13.9001 144.572 13.9001H141.896V9.01733C141.896 8.87217 141.777 8.75269 141.633 8.75269H140.636ZM145.937 8.75269C145.792 8.75286 145.675 8.87167 145.675 9.01733V15.1667C145.675 15.3124 145.792 15.4302 145.937 15.4304H146.934C147.078 15.4304 147.196 15.3125 147.196 15.1667V9.01733C147.196 8.87156 147.078 8.75269 146.934 8.75269H145.937ZM148.43 8.75269C148.285 8.75281 148.154 8.87224 148.154 9.01733V15.1667C148.154 15.3118 148.285 15.4303 148.43 15.4304H149.414C149.571 15.4304 149.689 15.3119 149.689 15.1667V11.5115L152.484 15.3123C152.502 15.3385 152.524 15.3602 152.55 15.3777H152.563C152.563 15.3865 152.567 15.3914 152.576 15.3914C152.577 15.3922 152.581 15.3964 152.589 15.4041H152.615V15.4177H152.642C152.659 15.4265 152.681 15.4304 152.707 15.4304H153.691C153.849 15.4304 153.967 15.3119 153.967 15.1667V9.01733C153.967 8.87217 153.849 8.75269 153.691 8.75269H152.707C152.563 8.75284 152.432 8.87226 152.432 9.01733V12.6589L149.637 8.87183C149.637 8.86307 149.633 8.85422 149.624 8.84546C149.615 8.83668 149.606 8.82787 149.598 8.81909C149.589 8.81079 149.585 8.80589 149.585 8.80542C149.585 8.80542 149.58 8.80542 149.571 8.80542C149.571 8.79694 149.567 8.79282 149.559 8.79272C149.559 8.79272 149.559 8.78785 149.559 8.77905H149.532C149.524 8.7703 149.519 8.76636 149.519 8.76636H149.506C149.497 8.76636 149.493 8.76148 149.493 8.75269H148.43ZM155.188 8.75269C155.043 8.75269 154.925 8.87217 154.925 9.01733V15.1667C154.925 15.3119 155.043 15.4304 155.188 15.4304H159.123C159.267 15.4304 159.386 15.3119 159.386 15.1667V14.1638C159.386 14.0187 159.267 13.9001 159.123 13.9001H156.446V12.8572H159.123C159.267 12.8572 159.386 12.7386 159.386 12.5935V11.5906C159.386 11.4454 159.267 11.3259 159.123 11.3259H156.446V10.2839H159.123C159.267 10.2839 159.386 10.1653 159.386 10.0203V9.01733C159.386 8.87217 159.267 8.75269 159.123 8.75269H155.188Z'/%3E%3C/svg%3E");
}
.wff-contact-widget .wff-contact-widget-btn--messenger {
  background: #0B84FF;
}
.wff-contact-widget .wff-contact-widget-btn--messenger::before {
  width: 28px;
  height: 28px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='67.8 0 28 28'%3E%3Cpath fill='white' fill-rule='evenodd' d='M67.7998 13.58C67.7998 5.7785 73.9143 0 81.7998 0C89.6853 0 95.7998 5.782 95.7998 13.5835C95.7998 21.385 89.6853 27.1635 81.7998 27.1635C80.3823 27.1635 79.0243 26.9745 77.7468 26.6245C77.4983 26.558 77.2323 26.5755 76.9978 26.6805L74.2188 27.9055C74.051 27.9795 73.8675 28.0112 73.6846 27.9977C73.5016 27.9843 73.3248 27.9261 73.1696 27.8283C73.0144 27.7305 72.8856 27.596 72.7945 27.4368C72.7035 27.2775 72.6529 27.0984 72.6473 26.915L72.5703 24.423C72.5633 24.115 72.4233 23.828 72.1958 23.625C69.4728 21.189 67.7998 17.661 67.7998 13.58ZM77.5053 11.0285L73.3928 17.5525C72.9973 18.179 73.7673 18.8825 74.3553 18.4345L78.7723 15.0815C78.9177 14.9711 79.095 14.9111 79.2775 14.9104C79.46 14.9098 79.6377 14.9686 79.7838 15.078L83.0563 17.5315C83.2884 17.7058 83.5542 17.8301 83.8367 17.8966C84.1193 17.963 84.4126 17.9701 84.6981 17.9175C84.9836 17.8649 85.255 17.7537 85.4953 17.5908C85.7357 17.428 85.9396 17.2171 86.0943 16.9715L90.2103 10.451C90.6023 9.8245 89.8323 9.1175 89.2443 9.5655L84.8273 12.9185C84.682 13.0289 84.5047 13.0889 84.3222 13.0896C84.1397 13.0902 83.9619 13.0314 83.8158 12.922L80.5433 10.4685C80.3112 10.2942 80.0455 10.1699 79.7629 10.1034C79.4803 10.037 79.187 10.0299 78.9015 10.0825C78.6161 10.1351 78.3446 10.2463 78.1043 10.4092C77.864 10.572 77.66 10.7829 77.5053 11.0285Z'/%3E%3C/svg%3E");
}
.wff-contact-widget .wff-contact-widget-btn--phone {
  background: #000;
}
.wff-contact-widget .wff-contact-widget-btn--phone::before {
  width: 19.6px;
  height: 28px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='208 0 19.6 28'%3E%3Cpath fill='white' d='M211.309 0.614829L212.815 0.133224C214.228 -0.317582 215.737 0.411827 216.342 1.83704L217.546 4.67628C218.069 5.91249 217.778 7.36711 216.826 8.27152L214.173 10.7887C214.337 12.2952 214.844 13.7778 215.692 15.2366C216.498 16.648 217.578 17.8834 218.87 18.8696L222.056 17.8056C223.263 17.4038 224.579 17.8672 225.318 18.955L227.045 21.4891C227.906 22.7547 227.75 24.4991 226.682 25.5715L225.538 26.7209C224.399 27.8647 222.77 28.2806 221.265 27.8101C217.709 26.7013 214.443 23.4099 211.461 17.9358C208.475 12.4534 207.421 7.79971 208.3 3.98047C208.669 2.37325 209.813 1.09223 211.309 0.614829Z'/%3E%3C/svg%3E");
}
.wff-contact-widget .wff-contact-widget-toggle {
  background: #72C7EB;
}
.wff-contact-widget .wff-contact-widget-toggle:hover, .wff-contact-widget .wff-contact-widget-toggle:focus-visible {
  background: #29AAE0;
}
.wff-contact-widget .wff-contact-widget-toggle::before {
  width: 28px;
  height: 26px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='272 1 28 26'%3E%3Cpath fill='white' d='M282.501 1.00049C280.735 0.999955 278.997 1.45917 277.449 2.33563C275.9 3.21209 274.591 4.47746 273.643 6.0146C272.694 7.55173 272.137 9.31094 272.022 11.1294C271.908 12.9478 272.239 14.7667 272.987 16.4176C272.635 17.9223 272.317 19.4353 272.034 20.9554C271.991 21.1847 272.002 21.4214 272.068 21.645C272.133 21.8686 272.251 22.0724 272.41 22.2388C272.568 22.4052 272.764 22.5291 272.98 22.5999C273.196 22.6707 273.425 22.6862 273.648 22.6451C274.52 22.4863 276.416 22.1252 278.177 21.7064C279.605 22.3704 281.158 22.6967 282.723 22.6613C284.288 22.6259 285.826 22.2297 287.224 21.5018C288.621 20.7738 289.844 19.7325 290.801 18.4542C291.758 17.1758 292.426 15.6928 292.756 14.1136C293.085 12.5345 293.069 10.8992 292.707 9.32757C292.345 7.75596 291.646 6.28779 290.663 5.03058C289.68 3.77338 288.437 2.75897 287.025 2.06165C285.612 1.36434 284.067 1.00176 282.501 1.00049ZM279.128 7.34932C279.497 6.64742 279.984 6.11739 280.603 5.77655C281.211 5.44149 281.864 5.33462 282.501 5.33462C283.332 5.33734 284.138 5.63115 284.786 6.16794C285.509 6.78029 286.001 7.71904 286.001 8.94375C286.001 10.3519 285.036 11.1159 284.493 11.5462L284.374 11.6416C283.781 12.1225 283.551 12.3796 283.551 12.9154C283.551 13.2026 283.44 13.4782 283.244 13.6813C283.047 13.8844 282.78 13.9985 282.501 13.9985C282.223 13.9985 281.956 13.8844 281.759 13.6813C281.562 13.4782 281.451 13.2026 281.451 12.9154C281.451 11.2776 282.447 10.4486 283.078 9.93738C283.796 9.35535 283.901 9.22537 283.901 8.94375C283.901 8.37039 283.692 8.04544 283.453 7.84469C283.182 7.62408 282.847 7.50267 282.501 7.49952C282.088 7.49952 281.804 7.57028 281.591 7.68727C281.391 7.79703 281.18 7.99055 280.975 8.3805C280.91 8.50567 280.821 8.61627 280.714 8.70596C280.607 8.79566 280.483 8.86271 280.351 8.90328C280.219 8.94385 280.08 8.95714 279.943 8.9424C279.806 8.92766 279.673 8.88518 279.551 8.81738C279.43 8.74957 279.323 8.65778 279.236 8.54724C279.149 8.43669 279.084 8.30956 279.045 8.17311C279.005 8.03665 278.992 7.89354 279.007 7.75195C279.021 7.61035 279.062 7.47449 279.128 7.34932ZM282.501 15.4428C282.872 15.4428 283.228 15.5949 283.491 15.8658C283.753 16.1366 283.901 16.504 283.901 16.887C283.901 17.27 283.753 17.6374 283.491 17.9082C283.228 18.1791 282.872 18.3312 282.501 18.3312C282.13 18.3312 281.774 18.1791 281.511 17.9082C281.249 17.6374 281.101 17.27 281.101 16.887C281.101 16.504 281.249 16.1366 281.511 15.8658C281.774 15.5949 282.13 15.4428 282.501 15.4428ZM282.361 24.1081C284.301 25.9685 286.852 27.0007 289.5 26.9966C291.04 26.9966 292.502 26.6543 293.822 26.0376C295.284 26.3915 296.882 26.7424 297.9 26.9619C298.186 27.0242 298.483 27.0109 298.764 26.9233C299.044 26.8357 299.298 26.6767 299.503 26.4609C299.708 26.2451 299.856 25.9796 299.935 25.6887C300.014 25.3979 300.021 25.0912 299.955 24.797C299.727 23.7817 299.368 22.2047 299.014 20.7489C299.636 19.3739 299.971 17.8794 299.998 16.3623C300.025 14.8451 299.743 13.3391 299.169 11.9416C298.596 10.5442 297.745 9.28659 296.671 8.25019C295.597 7.2138 294.323 6.42174 292.934 5.92531C293.423 6.84528 293.804 7.83747 294.053 8.88164C295.234 9.66669 296.204 10.7449 296.876 12.0173C297.548 13.2898 297.899 14.7159 297.898 16.1649C297.898 17.5961 297.563 18.9436 296.969 20.1322L296.787 20.4976L296.885 20.8947C297.203 22.1888 297.537 23.6388 297.782 24.7219C296.501 24.4445 295.223 24.1513 293.948 23.8424L293.577 23.7514L293.237 23.9276C292.113 24.5053 290.844 24.8303 289.5 24.8303C288.07 24.8325 286.663 24.456 285.414 23.737C284.417 23.9955 283.391 24.1198 282.363 24.1067'/%3E%3C/svg%3E");
}
.wff-contact-widget.is-open .wff-contact-widget-toggle::before {
  width: 18px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='4.8 5 18 18'%3E%3Cpath fill='white' d='M5.17592 5.393C5.41682 5.15197 5.7435 5.01656 6.08414 5.01656C6.42477 5.01656 6.75145 5.15197 6.99235 5.393L13.7918 12.1983L20.5912 5.393C20.7097 5.2702 20.8514 5.17225 21.0082 5.10487C21.1649 5.03749 21.3335 5.00202 21.504 5.00054C21.6746 4.99905 21.8438 5.03158 22.0016 5.09623C22.1595 5.16088 22.3029 5.25635 22.4235 5.37706C22.5442 5.49778 22.6396 5.64134 22.7041 5.79935C22.7687 5.95736 22.8012 6.12666 22.7998 6.29737C22.7983 6.46809 22.7628 6.6368 22.6955 6.79366C22.6282 6.95053 22.5303 7.0924 22.4076 7.211L15.6082 14.0163L22.4076 20.8216C22.6416 21.0641 22.7711 21.3888 22.7682 21.7259C22.7653 22.0631 22.6302 22.3855 22.392 22.6239C22.1538 22.8623 21.8316 22.9975 21.4948 23.0004C21.158 23.0034 20.8335 22.8738 20.5912 22.6396L13.7918 15.8343L6.99235 22.6396C6.75007 22.8738 6.42558 23.0034 6.08876 23.0004C5.75194 22.9975 5.42974 22.8623 5.19157 22.6239C4.95339 22.3855 4.81829 22.0631 4.81536 21.7259C4.81244 21.3888 4.94192 21.0641 5.17592 20.8216L11.9753 14.0163L5.17592 7.211C4.93509 6.96989 4.7998 6.64293 4.7998 6.302C4.7998 5.96108 4.93509 5.63411 5.17592 5.393Z'/%3E%3C/svg%3E");
}
