.elementor-5178 .elementor-element.elementor-element-663da69{--display:flex;border-style:none;--border-style:none;}@media(min-width:768px){.elementor-5178 .elementor-element.elementor-element-663da69{--content-width:100%;}}/* Start custom CSS for html, class: .elementor-element-56eb887 */.pc-faq, .pc-faq *{ box-sizing: border-box; }
.pc-faq *::before, .pc-faq *::after{ content: none !important; display: none !important; }

.pc-faq{
  --pc-text: #051633;
  --pc-primary: #0B57D0;
  --pc-muted: rgba(5,22,51,.68);

  --pc-shell: rgba(240,245,255,.82);
  --pc-chip: rgba(255,255,255,.92);
  --pc-card: rgba(255,255,255,.90);
  --pc-cardOpen: rgba(255,255,255,.98);

  --pc-shadow-1: 0 10px 26px rgba(5,22,51,.06);
  --pc-shadow-2: 0 18px 46px rgba(5,22,51,.09);
  --pc-shadow-3: 0 28px 76px rgba(5,22,51,.12);

  --pc-radius: 18px;
  --pc-gap: 14px;
  --pc-max: 980px;

  font-family: "Figtree", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Noto Sans", "Helvetica Neue", sans-serif !important;
  color: var(--pc-text) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.pc-faq input{
  box-shadow: none;
}

.pc-faq a, .pc-faq button, .pc-faq input{ font-family: inherit !important; color: inherit; }
.pc-faq svg{ display:block; max-width:100%; height:auto; }

/* Wrapper */
.pc-faq__wrap{
  max-width: var(--pc-max);
  margin: 0 auto;
  padding: 6px 0 0;
}

.pc-faq__head{
  text-align: center;
  padding: 0 18px 14px;
}

.pc-faq__title{
  margin: 0;
  font-weight: 800!important;
  font-size: clamp(1.7rem, 3.2vw, 2.45rem)!important;
  line-height: 1.12;
  letter-spacing: -0.02em;
  color: var(--pc-text) !important;
}

.pc-faq__sub{
  margin: 8px auto 0;
  max-width: 30em;
  color: rgb(5 22 51 / 55%) !important;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 600;
}

.pc-faq__controls{
  margin-top: 16px;
  display: grid;
  gap: 12px;
  align-items: center;
  justify-items: center;
}

/* =========================================================
   Width alignment fix:
   Tabs, search, and list items all share the same max width
   ========================================================= */
.pc-faq__tabs,
.pc-faq__search,
.pc-faq__list{
  width: 100%;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}

/* Tabs */
.pc-faq__tabs{
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  justify-content: center;
  position: relative;
  padding: 7px;
  border-radius: 999px;

  scrollbar-width: none;
}
.pc-faq__tabs::-webkit-scrollbar{ display:none; }

.pc-faq__tabIndicator{
  position: absolute;
  top: 7px;
  bottom: 7px;
  left: 0;
  width: 120px;
  border-radius: 999px;
  background: rgba(11,87,208,.98);
  box-shadow: 0 18px 44px rgba(11,87,208,.24);
  transform: translateX(0);
  transition: transform .38s cubic-bezier(.2,.9,.2,1), width .38s cubic-bezier(.2,.9,.2,1);
  will-change: transform, width;
  pointer-events:none;
  z-index: 1;
}

.pc-faq__tab{
  appearance: none !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--pc-text) !important;
  border-radius: 999px !important;
  padding: 11px 14px !important;
  font-size: .95rem !important;
  line-height: 1 !important;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  user-select: none;
  position: relative;
  z-index: 2;
  transition: transform .18s ease, color .18s ease, opacity .18s ease;
  opacity: .92;
  white-space: nowrap;
  flex: 0 0 auto;
  font-weight: 700;
}

.pc-faq__tab:hover{ transform: translateY(-1px); opacity: 1; color: var(--pc-primary) !important; }
.pc-faq__tab:focus-visible{ outline: none; box-shadow: 0 0 0 5px rgba(11,87,208,.14); }

.pc-faq__tab.is-active{ color: #ffffff !important; opacity: 1; }
.pc-faq__tab.is-active:hover{ color: #ffffff !important; transform: none; }

.pc-faq__tabLabel{ font-weight: 760; letter-spacing: -0.01em; }

/* Search */
.pc-faq__search{
  display: grid;
  grid-template-columns: 44px 1fr 44px;
  align-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 12px 30px rgba(5,22,51,.06);
  border: 1px solid rgba(5,22,51,.06);
  overflow: hidden;
  padding: 10px 10px;
}

.pc-faq__search:focus-within{
  border-color: rgba(11,87,208,.35);
  box-shadow: 0 0 0 5px rgba(11,87,208,.14), 0 12px 30px rgba(5,22,51,.06);
}

.pc-faq__searchIcon{
  display: grid;
  place-items: center;
  color: rgba(5,22,51,.58);
}

.pc-faq__searchInput{
  width: 100%;
  border: 0 !important;
  outline: none !important;
  padding: 12px 8px !important;
  font-size: 1rem !important;
  background: transparent !important;
  color: var(--pc-text) !important;
}
.pc-faq__searchInput::placeholder{ color: rgba(5,22,51,.44); }

.pc-faq__clear{
  border: 0 !important;
  background: transparent !important;
  cursor: pointer;
  display: grid;
  place-items: center;
  color: rgba(5,22,51,.52);
  transition: color .15s ease, transform .15s ease;
}
.pc-faq__clear:hover{ color: var(--pc-primary) !important; transform: scale(1.06); }

/* List */
.pc-faq__list{
  margin-top: 12px;
  padding: 0 0 18px; /* width alignment handled above; avoid double side padding */
  display: grid;
  gap: 0.7em;
}

/* Cards */
.pc-faq__item{
  position: relative;
  border: 1px solid rgba(5,22,51,.05) !important;
  border-radius: var(--pc-radius);
  background: var(--pc-card);
  box-shadow: 0 10px 24px rgba(5,22,51,.06);
  overflow: hidden;
  transition: box-shadow .18s ease, transform .18s ease, background .18s ease, border-color .18s ease;
}

.pc-faq__item::before{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 3px;
  border-radius: 999px;
  background: transparent;
  transition: background .18s ease;
}

.pc-faq__item:hover{
  box-shadow: 0 18px 44px rgba(5,22,51,.10);
  transform: translateY(-1px);
  background: rgba(255,255,255,.94);
}
.pc-faq__item:hover::before{
  background: rgba(11,87,208,.22);
}

.pc-faq__item.is-open{
  background: var(--pc-cardOpen);
  border-color: rgba(11,87,208,.16) !important;
  box-shadow: var(--pc-shadow-3);
  transform: translateY(-1px);
}
.pc-faq__item.is-open::before{
  background: rgba(11,87,208,.85);
}

.pc-faq__q{ margin: 0; }

.pc-faq__btn{
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 14px;
  align-items: center;
  text-align: left;
  padding: 14px 18px;
  border: 0 !important;
  background: transparent !important;
  color: var(--pc-text) !important;
  cursor: pointer;
  font-size: 1rem !important;
  line-height: 1.35 !important;
  font-weight: 650 !important;
  letter-spacing: -0.012em;
}

.pc-faq__btn:focus-visible{
  outline: none;
  box-shadow: inset 0 0 0 3px rgba(11,87,208,.20);
}

.pc-faq__chev{
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(5,22,51,.05) !important;
  background: rgba(240,245,255,.98);
  color: rgba(5,22,51,.72);
  box-shadow: 0 12px 24px rgba(5,22,51,.07);
  transition: transform .24s cubic-bezier(.2,.9,.2,1), background .18s ease, color .18s ease, box-shadow .18s ease, border-color .18s ease;
  flex: 0 0 auto;
}

.pc-faq__item:hover .pc-faq__chev{
  background: rgba(11,87,208,.10);
  color: var(--pc-primary);
  border-color: rgba(11,87,208,.12) !important;
  box-shadow: 0 14px 30px rgba(11,87,208,.12);
}

.pc-faq__item.is-open .pc-faq__chev{
  transform: rotate(180deg);
  background: rgba(11,87,208,.92);
  color: #ffffff;
  border-color: rgba(11,87,208,.20) !important;
  box-shadow: 0 18px 40px rgba(11,87,208,.22);
}

.pc-faq__panel{
  height: 0;
  overflow: hidden;
  transition: height .32s cubic-bezier(.2,.9,.2,1);
  will-change: height;
}

.pc-faq__a{
  padding: 0 18px 18px;
  color: rgba(5,22,51,.72) !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
}
.pc-faq__a p{ margin: 0; }
.pc-faq__a p + p{ margin-top: 10px; }

.pc-faq__link{
  color: var(--pc-primary) !important;
  text-decoration: none !important;
  font-weight: 700;
}
.pc-faq__link:hover{ text-decoration: underline !important; }

.pc-faq__list.is-switching .pc-faq__item{ animation: pcFaqFadeSlide .30s ease both; }
@keyframes pcFaqFadeSlide{ from{ opacity: 0; transform: translateY(6px);} to{ opacity: 1; transform: translateY(0);} }

.pc-faq__empty{ margin-top: 6px; }
.pc-faq__emptyCard{
  border: 0 !important;
  background: rgba(240,245,255,.75);
  box-shadow: var(--pc-shadow-1);
  border-radius: var(--pc-radius);
  padding: 18px;
  text-align: center;
  color: var(--pc-muted) !important;
}
.pc-faq__emptyCard strong{
  display:block;
  color: var(--pc-text) !important;
  margin-bottom: 6px;
  font-weight: 800;
}

@media (max-width: 740px){
  .pc-faq__head{ padding: 0 14px 12px; }
  .pc-faq__list{ padding: 0 0 14px; }
  .pc-faq__btn{ padding: 15px 14px; font-size: 1.02rem !important; }
  .pc-faq__a{ padding: 0 14px 14px; }
  .pc-faq__tabs{ gap: 6px; padding: 7px; }
  .pc-faq__tab{ padding: 11px 12px !important; }
  .pc-faq__chev{ width: 38px; height: 38px; }

  /* Keep widths aligned on small screens */
  .pc-faq__tabs,
  .pc-faq__search,
  .pc-faq__list{
    max-width: 100%;
    padding-left: 14px;
    padding-right: 14px;
  }

  /* Prevent double padding on list container in mobile */
  .pc-faq__list{ padding-top: 0; padding-bottom: 14px; }
}

@media (prefers-reduced-motion: reduce){
  .pc-faq__tabIndicator, .pc-faq__tab, .pc-faq__item, .pc-faq__chev, .pc-faq__panel, .pc-faq__clear{
    transition: none !important;
    animation: none !important;
  }
}








/* =========================
   Mobile responsiveness patch
   ========================= */
@media (max-width: 740px){

  /* 1) Make tabs horizontally scrollable and not centre-justified */
  .pc-faq__tabs{
    justify-content: center;   /* centre tabs */
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    padding: 7px 10px;
  }

  .pc-faq__tab{
    scroll-snap-align: start;
  }


  /* 2) Fix width alignment without risking overflow:
        Instead of max-width:100% + padding on the element,
        keep max-width and add side padding on the wrapper. */
  .pc-faq__wrap{
    padding-left: 14px;
    padding-right: 14px;
  }

  .pc-faq__tabs,
  .pc-faq__search,
  .pc-faq__list{
    max-width: 860px;     /* keep your intended width */
    padding-left: 0;      /* remove the mobile rule that adds padding here */
    padding-right: 0;
  }

  /* 3) Slightly tighten header spacing/typography for mobile */
  .pc-faq__head{
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 12px;
  }

  .pc-faq__title{
    font-size: clamp(1.5rem, 5.5vw, 2.1rem) !important;
    line-height: 1.12;
  }

  .pc-faq__sub{
    font-size: .8rem;
    line-height: 1.55;
  }

  /* 4) Search: keep icon columns stable and tighten height */
  .pc-faq__search{
    padding: 8px 8px;
  }

  .pc-faq__searchInput{
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    font-size: 1rem !important;
  }

  /* 5) Accordion row: improve tap target + alignment */
  .pc-faq__btn{
    padding: 8px 14px;
    min-height: 56px;
    align-items: center;
  }

  .pc-faq__qtext{
    display: block;
    font-size: 0.8rem;
  }
  
  .pc-faq__a p {
      font-size: 0.8rem;
  }

  .pc-faq__chev{
    width: 30px;
    height: 30px;
  }

  .pc-faq__a{
    padding: 0 14px 14px;
    font-size: .98rem !important;
    line-height: 1.65 !important;
  }
}/* End custom CSS */