@import "https://fonts.googleapis.com/css2?family=Syne:wght@600;700&display=swap";
/* [project]/src/components/footer/footerstyles/Footer.css [app-client] (css) */
.cnf-root {
  background: #2147e6;
  font-family: Inter, Helvetica Neue, sans-serif;
  position: relative;
  overflow: hidden;
}

.cnf-top-overlay {
  pointer-events: none;
  z-index: 1;
  background: linear-gradient(#ffffffb8 0%, #ffffff4d 40%, #ffffff0f 75%, #fff0 100%);
  height: clamp(30px, 8vw, 180px);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.cnf-reveal {
  opacity: 0;
  will-change: transform, opacity;
}

.cnf-reveal-up {
  transition: opacity .72s cubic-bezier(.16, 1, .3, 1) calc(var(--stagger, 0s)), transform .72s cubic-bezier(.16, 1, .3, 1) calc(var(--stagger, 0s));
  transform: translateY(22px);
}

.cnf-reveal.cnf-visible {
  opacity: 1;
  transform: none;
}

.cnf-hero {
  width: 100%;
  height: clamp(520px, 67vw, 760px);
  position: relative;
  overflow: hidden;
}

.cnf-overlay {
  z-index: 1;
  background: linear-gradient(#2147e60f 0%, #2147e61a 14%, #2147e642 28%, #2147e680 42%, #2147e6b8 54%, #2147e6e6 64%, #2147e6 73% 100%);
  position: absolute;
  inset: 0;
}

.cnf-shadow {
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(#0000 0% 32%, #122caa33 50%, #122caa61 62%, #122caa00 74%, #0000 100%);
  position: absolute;
  inset: 0;
}

.cnf-cta {
  z-index: 3;
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 44%;
  padding: 0 24px;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.cnf-heading {
  color: #fff;
  letter-spacing: -.018em;
  margin: 0 0 20px;
  font-size: clamp(20px, 2.8vw, 40px);
  font-weight: 600;
  line-height: 1.22;
  animation: .85s cubic-bezier(.16, 1, .3, 1) both cnf-fadein;
}

.cnf-btn {
  color: #111;
  letter-spacing: .01em;
  background: #fff;
  border-radius: 100px;
  padding: 11px 26px;
  font-size: clamp(11px, .85vw, 13px);
  font-weight: 500;
  text-decoration: none;
  transition: transform .3s cubic-bezier(.16, 1, .3, 1), box-shadow .3s cubic-bezier(.16, 1, .3, 1), background .25s;
  animation: .85s cubic-bezier(.16, 1, .3, 1) .1s both cnf-fadein;
  display: inline-block;
}

.cnf-btn:hover {
  background: #eef1ff;
  transform: translateY(-2px)scale(1.03);
  box-shadow: 0 8px 26px #00000029;
}

.cnf-bar {
  z-index: 3;
  padding: 0 clamp(24px, 6vw, 80px) 32px;
  position: absolute;
  bottom: -2.5rem;
  left: 0;
  right: 0;
}

.cnf-grid {
  grid-template-columns: 1.7fr .9fr 1fr .9fr;
  align-items: start;
  gap: clamp(12px, 2vw, 36px);
  display: grid;
}

.cnf-brand {
  --stagger: 0s;
}

.cnf-logo {
  margin-bottom: 9px;
}

.cnf-logo-text {
  color: #fff;
  letter-spacing: .08em;
  font-family: Syne, sans-serif;
  font-size: 16px;
  font-weight: 700;
}

.cnf-tagline {
  color: #fff;
  max-width: 230px;
  margin: 0 0 8px;
  font-family: Inter;
  font-size: clamp(11px, .85vw, 12px);
  font-weight: 300;
  line-height: 1.65;
}

.cnf-copy {
  color: #fff;
  margin: 0;
  font-size: 10px;
}

.cnf-col-title {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #fff;
  margin: 0 0 10px;
  font-size: 9px;
  font-weight: 700;
}

.cnf-col-links {
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.cnf-col-links li {
  animation: none;
}

.cnf-link {
  color: #fff;
  padding: 5px 0;
  font-size: clamp(11px, .78vw, 12.5px);
  font-weight: 400;
  text-decoration: none;
  transition: color .35s, letter-spacing .4s;
  display: inline-block;
  position: relative;
}

.cnf-link:after {
  content: "";
  background: #ffffffb3;
  width: 0%;
  height: 1px;
  transition: width .42s cubic-bezier(.4, 0, .2, 1);
  position: absolute;
  bottom: 2px;
  left: 0;
}

.cnf-link:hover {
  letter-spacing: .018em;
}

.cnf-link:hover:after {
  width: 100%;
}

.cnf-row-divider {
  background: #ffffff1a;
  height: 1px;
  margin: 18px 0;
}

.cnf-row-dl-social {
  --stagger: 60ms;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  padding: 4px 0;
  display: flex;
}

.cnf-app-badges {
  flex-direction: row;
  flex-shrink: 0;
  gap: 8px;
  display: flex;
}

.cnf-badge {
  color: #fff;
  background: #00000040;
  border: 1px solid #ffffff38;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  min-width: 120px;
  padding: 7px 10px;
  text-decoration: none;
  transition: border-color .28s, background .28s, transform .3s cubic-bezier(.16, 1, .3, 1);
  display: flex;
}

.cnf-badge:hover {
  background: #00000061;
  border-color: #ffffff80;
  transform: translateY(-2px);
}

.cnf-badge-icon {
  fill: #fff;
  flex-shrink: 0;
  width: 17px;
  height: 17px;
}

.cnf-badge-text {
  flex-direction: column;
  display: flex;
}

.cnf-badge-sub {
  color: #ffffffa6;
  letter-spacing: .02em;
  font-size: 8px;
  line-height: 1.2;
}

.cnf-badge-main {
  color: #fff;
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.2;
}

.cnf-footer-trusted-row {
  justify-content: center;
  align-items: center;
  gap: clamp(.4rem, .6vw, .65rem);
  width: fit-content;
  display: flex;
}

.cnf-trip-adv-part {
  background: #ffffff1a;
  border-radius: 9999px;
  align-items: center;
  gap: 4px;
  padding: clamp(.25rem, .3vw, .4rem) clamp(.45rem, 1vw, .8rem);
  transition: background .25s;
  display: flex;
}

.cnf-trip-adv-part:hover {
  background: #ffffff26;
}

.cnf-footer-trusted-rating {
  color: #fff;
  font-size: clamp(1rem, 1.4vw, 1.3rem);
  font-weight: 800;
  line-height: 1;
}

.cnf-footer-trusted-rating-right {
  flex-direction: column;
  gap: .15rem;
  display: flex;
}

.cnf-footer-trusted-excellent {
  color: #fff;
  font-size: clamp(.55rem, .7vw, .7rem);
  font-weight: 600;
  line-height: 1;
}

.cnf-footer-trusted-dots {
  align-items: center;
  gap: .18rem;
  display: flex;
}

.cnf-footer-trusted-dot {
  background: #fff;
  border-radius: 50%;
  flex-shrink: 0;
  width: clamp(.35rem, .45vw, .5rem);
  height: clamp(.35rem, .45vw, .5rem);
}

.cnf-footer-trusted-dot--half {
  background: linear-gradient(to right, #fff 50%, #d5d5d54d 50%);
}

.cnf-footer-trusted-divider-v {
  background: #fff3;
  flex-shrink: 0;
  width: 1px;
  height: clamp(1.25rem, 2vw, 1.75rem);
}

.cnf-footer-trusted-icon {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: clamp(1.75rem, 2.5vw, 2.125rem);
  height: clamp(1.75rem, 2.5vw, 2.125rem);
  display: flex;
}

.cnf-footer-trusted-text {
  color: #fff;
  white-space: nowrap;
  font-size: clamp(.6rem, .68vw, .78rem);
  font-weight: 400;
}

.cnf-socials {
  flex-wrap: wrap;
  flex-shrink: 0;
  gap: 6px;
  display: flex;
}

.cnf-social {
  color: #fff;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  padding: 3px;
  text-decoration: none;
  transition: background .5s, transform .5s, opacity .5s;
  display: flex;
}

.cnf-social svg {
  width: 18px;
  height: 18px;
}

.cnf-social:hover {
  opacity: .85;
  background: #ffffff1a;
  transform: translateY(-1px);
}

.cnf-row-payments {
  --stagger: .12s;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  padding: 4px 0;
  display: flex;
}

.cnf-row-label {
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #fff;
  flex-shrink: 0;
  font-size: 9px;
  font-weight: 700;
}

.cnf-payments {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.cnf-pay-img-wrap {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  height: 32px;
  padding: 4px 8px;
  display: inline-flex;
}

.cnf-pay-img {
  -o-object-fit: contain;
  object-fit: contain;
  width: auto;
  height: 100%;
  display: block;
}

.cnf-pay-visa {
  height: 18px;
}

.cnf-pay-mastercard {
  height: 25px;
}

.cnf-pay-amex {
  height: 24px;
}

.cnf-pay-paypal {
  height: 20px;
}

.cnf-pay-tazapay {
  height: 16px;
}

.cnf-row-phones-wrap {
  --stagger: .18s;
  padding: 4px 0;
}

.cnf-phones-label {
  color: #fff;
  letter-spacing: .01em;
  align-items: center;
  margin: 0 0 10px;
  font-size: 10.5px;
  font-weight: 300;
  line-height: 1.5;
  display: flex;
}

.cnf-row-phones {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: clamp(20px, 4vw, 56px);
  display: flex;
}

.cnf-phone-item {
  opacity: 0;
  transition: opacity .5s cubic-bezier(.16, 1, .3, 1) calc(50ms + calc(var(--pi, 0) * 70ms)), transform .5s cubic-bezier(.16, 1, .3, 1) calc(50ms + calc(var(--pi, 0) * 70ms));
  align-items: flex-start;
  gap: 7px;
  display: flex;
  transform: translateY(8px);
}

.cnf-reveal.cnf-visible .cnf-phone-item {
  opacity: 1;
  transform: none;
}

.cnf-phone-flag {
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 2px;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.cnf-phone-info {
  flex-direction: column;
  gap: 1px;
  display: flex;
}

.cnf-phone-num {
  color: #fff;
  font-size: clamp(10px, .76vw, 12px);
  font-weight: 500;
  text-decoration: none;
  transition: opacity .28s;
}

.cnf-phone-num:hover {
  opacity: .7;
}

.cnf-phone-sub {
  color: #ffffff80;
  font-size: 9.5px;
  line-height: 1.4;
}

.cnf-legal {
  --stagger: .24s;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.cnf-legal-txt {
  color: #fff;
  margin: 0;
  font-size: 10px;
}

.cnf-legal-links {
  gap: clamp(10px, 1.5vw, 18px);
  display: flex;
}

.cnf-legal-links a {
  color: #ffffff4d;
  font-size: 10px;
  text-decoration: none;
  transition: color .35s;
}

.cnf-legal-links a:hover {
  color: #fffc;
}

.cnf-wm-wrap {
  --stagger: 0s;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  margin-bottom: -.3em;
  padding-top: 10px;
  line-height: 1;
  display: flex;
  overflow: hidden;
}

.cnf-wm {
  color: #fff;
  letter-spacing: -.025em;
  -webkit-user-select: none;
  user-select: none;
  pointer-events: none;
  white-space: nowrap;
  align-items: flex-end;
  font-family: Syne, sans-serif;
  font-size: clamp(80px, 14vw, 180px);
  font-weight: 700;
  display: flex;
}

.cnf-wm-letter {
  opacity: 0;
  transition: opacity .75s cubic-bezier(.16, 1, .3, 1) calc(var(--d, 0s)), transform .75s cubic-bezier(.16, 1, .3, 1) calc(var(--d, 0s));
  will-change: transform, opacity;
  display: inline-block;
  transform: translateY(36px)scaleY(.9);
}

.cnf-reveal.cnf-visible .cnf-wm-letter {
  opacity: 1;
  transform: none;
}

.cnf-wm-r {
  margin: 0 -.008em;
  position: relative;
  bottom: .15em;
}

.cnf-wm-e {
  font-size: 1.15em;
  position: relative;
}

@keyframes cnf-fadein {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (min-width: 651px) and (max-width: 1024px) {
  .cnf-hero {
    height: auto;
    min-height: clamp(320px, 52vw, 480px);
  }

  .cnf-overlay {
    background: linear-gradient(#2147e61a 0%, #2147e659 28%, #2147e6c7 50%, #2147e6 65% 100%);
  }

  .cnf-bar {
    padding: clamp(18px, 3vw, 28px) clamp(18px, 4vw, 36px) 20px;
    position: relative;
    bottom: auto;
  }

  .cnf-grid {
    grid-template-columns: 1fr 1fr;
    gap: clamp(16px, 2.5vw, 28px);
  }

  .cnf-app-badges {
    flex-flow: wrap;
  }

  .cnf-row-dl-social {
    flex-wrap: wrap;
    gap: 14px;
  }

  .cnf-footer-trusted-row {
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .cnf-row-phones {
    flex-wrap: wrap;
    gap: clamp(14px, 3vw, 28px);
  }
}

@media (min-width: 300px) and (max-width: 650px) {
  .cnf-hero {
    height: auto;
    min-height: clamp(260px, 85vw, 340px);
  }

  .cnf-cta {
    justify-content: flex-end;
    height: clamp(160px, 48vw, 220px);
    padding: 0 1rem clamp(1.25rem, 5vw, 2rem);
    position: relative;
  }

  .cnf-heading {
    margin-bottom: 14px;
    font-size: clamp(16px, 5.5vw, 22px);
  }

  .cnf-overlay {
    background: linear-gradient(#2147e61a 0%, #2147e673 32%, #2147e6e0 54%, #2147e6 68% 100%);
  }

  .cnf-bar {
    padding: 16px 14px 14px;
    position: relative;
    bottom: auto;
  }

  .cnf-grid {
    grid-template-columns: 1fr 1fr;
    gap: 18px;
  }

  .cnf-tagline {
    max-width: 100%;
  }

  .cnf-app-badges {
    flex-flow: wrap;
    gap: 8px;
  }

  .cnf-badge {
    min-width: unset;
    flex: auto;
  }

  .cnf-row-dl-social {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }

  .cnf-footer-trusted-row {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 6px;
  }

  .cnf-socials {
    flex-wrap: wrap;
  }

  .cnf-row-payments {
    gap: 8px;
  }

  .cnf-payments {
    gap: 6px;
  }

  .cnf-row-phones {
    flex-direction: column;
    gap: 10px;
  }

  .cnf-legal {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }

  .cnf-wm {
    font-size: clamp(52px, 17vw, 90px);
  }
}

/*# sourceMappingURL=src_components_footer_footerstyles_Footer_588a45a1.css.map*/