/* ============================================================
 * SingularData Theme — Stylesheet único
 * ============================================================
 * Este ficheiro contém TODO o CSS do tema, formatado:
 *   1. Framework (Tailwind utilities + Bootstrap + Plus Jakarta Sans + Swiper + Toastify + react-calendar)
 *   2. Tema custom (cores, paleta, componentes)
 *   3. WPBakery / conteúdo editável (cards, secções, ícones <img>)
 *
 * Edita à vontade — está tudo num só sítio.
 * Versão: theme v2.4.0 (CSS consolidado em ficheiro único; v2.4.0 acrescenta suporte a [vc_section])
 * ============================================================
 */

/* Home: remover barra branca entre header e banner */
body.home .container.content-wrapper,
body.page-template-front-page .container.content-wrapper {
  padding-top: 0 !important;
}

/* ------------------------------------------------------------
 * 1) FRAMEWORK + TEMA BASE
 * ------------------------------------------------------------ */

#cc-main {
  background: transparent;
  color: var(--cc-primary-color);
  font-family: var(--cc-font-family);
  font-size: 16px;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.15;
  position: relative;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  position: fixed;
  z-index: var(--cc-z-index)
}

#cc-main :after,
#cc-main :before,
#cc-main a,
#cc-main button,
#cc-main div,
#cc-main h2,
#cc-main input,
#cc-main p,
#cc-main span {
  all: unset;
  box-sizing: border-box
}

#cc-main .pm__badge,
#cc-main button {
  all: initial;
  box-sizing: border-box;
  color: unset;
  visibility: unset
}

#cc-main .pm__badge,
#cc-main a,
#cc-main button,
#cc-main input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  font-family: inherit;
  font-size: 100%;
  line-height: normal;
  margin: 0;
  outline: revert;
  outline-offset: 2px;
  overflow: hidden
}

#cc-main table,
#cc-main tbody,
#cc-main td,
#cc-main th,
#cc-main thead,
#cc-main tr {
  all: revert;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit
}

:root {
  --cc-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --cc-modal-border-radius: .5rem;
  --cc-btn-border-radius: .4rem;
  --cc-modal-transition-duration: .25s;
  --cc-link-color: var(--cc-btn-primary-bg);
  --cc-modal-margin: 1rem;
  --cc-z-index: 2147483647;
  --cc-bg: #fff;
  --cc-primary-color: #2c2f31;
  --cc-secondary-color: #5e6266;
  --cc-btn-primary-bg: #30363c;
  --cc-btn-primary-color: #fff;
  --cc-btn-primary-border-color: var(--cc-btn-primary-bg);
  --cc-btn-primary-hover-bg: #000;
  --cc-btn-primary-hover-color: #fff;
  --cc-btn-primary-hover-border-color: var(--cc-btn-primary-hover-bg);
  --cc-btn-secondary-bg: #eaeff2;
  --cc-btn-secondary-color: var(--cc-primary-color);
  --cc-btn-secondary-border-color: var(--cc-btn-secondary-bg);
  --cc-btn-secondary-hover-bg: #d4dae0;
  --cc-btn-secondary-hover-color: #000;
  --cc-btn-secondary-hover-border-color: #d4dae0;
  --cc-separator-border-color: #f0f4f7;
  --cc-toggle-on-bg: var(--cc-btn-primary-bg);
  --cc-toggle-off-bg: #667481;
  --cc-toggle-on-knob-bg: #fff;
  --cc-toggle-off-knob-bg: var(--cc-toggle-on-knob-bg);
  --cc-toggle-enabled-icon-color: var(--cc-bg);
  --cc-toggle-disabled-icon-color: var(--cc-bg);
  --cc-toggle-readonly-bg: #d5dee2;
  --cc-toggle-readonly-knob-bg: #fff;
  --cc-toggle-readonly-knob-icon-color: var(--cc-toggle-readonly-bg);
  --cc-section-category-border: var(--cc-cookie-category-block-bg);
  --cc-cookie-category-block-bg: #f0f4f7;
  --cc-cookie-category-block-border: #f0f4f7;
  --cc-cookie-category-block-hover-bg: #e9eff4;
  --cc-cookie-category-block-hover-border: #e9eff4;
  --cc-cookie-category-expanded-block-bg: transparent;
  --cc-cookie-category-expanded-block-hover-bg: #dee4e9;
  --cc-overlay-bg: rgba(0, 0, 0, .65);
  --cc-webkit-scrollbar-bg: var(--cc-section-category-border);
  --cc-webkit-scrollbar-hover-bg: var(--cc-btn-primary-hover-bg);
  --cc-footer-bg: var(--cc-btn-secondary-bg);
  --cc-footer-color: var(--cc-secondary-color);
  --cc-footer-border-color: #e4eaed;
  --cc-pm-toggle-border-radius: 4em
}

#cc-main.cc--rtl {
  direction: rtl
}

#cc-main .cm__title,
#cc-main a,
#cc-main b,
#cc-main em,
#cc-main strong {
  font-weight: 600
}

#cc-main button>span {
  pointer-events: none
}

#cc-main .cc__link,
#cc-main a {
  background-image: linear-gradient(currentColor, currentColor);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 0 1px;
  font-weight: 600;
  position: relative;
  transition: background-size .25s, color .25s ease
}

#cc-main .cc__link:hover,
#cc-main a:hover {
  background-size: 100% 1px;
  color: var(--cc-primary-color)
}

#cc-main .cc__link {
  color: var(--cc-link-color)
}

#cc-main .cm__desc,
#cc-main .pm__body {
  overscroll-behavior: auto contain;
  scrollbar-width: thin
}

@media screen and (min-width:640px) {

  #cc-main ::-webkit-scrollbar,
  #cc-main ::-webkit-scrollbar-thumb,
  #cc-main ::-webkit-scrollbar-track {
    all: revert
  }

  #cc-main ::-webkit-scrollbar-thumb {
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    background: var(--cc-toggle-readonly-bg);
    border: .25rem solid var(--cc-bg);
    border-radius: 1rem
  }

  #cc-main ::-webkit-scrollbar-thumb:hover {
    background: var(--cc-toggle-off-bg)
  }

  #cc-main ::-webkit-scrollbar {
    background: transparent;
    width: 12px
  }
}

html.disable--interaction.show--consent,
html.disable--interaction.show--consent body {
  height: auto !important;
  overflow: hidden !important
}

@media (prefers-reduced-motion) {
  #cc-main {
    --cc-modal-transition-duration: 0s
  }
}

.cc--darkmode {
  --cc-bg: #161a1c;
  --cc-primary-color: #ebf3f6;
  --cc-secondary-color: #aebbc5;
  --cc-btn-primary-bg: #c2d0e0;
  --cc-btn-primary-color: var(--cc-bg);
  --cc-btn-primary-border-color: var(--cc-btn-primary-bg);
  --cc-btn-primary-hover-bg: #98a7b6;
  --cc-btn-primary-hover-color: #000;
  --cc-btn-primary-hover-border-color: var(--cc-btn-primary-hover-bg);
  --cc-btn-secondary-bg: #242c31;
  --cc-btn-secondary-color: var(--cc-primary-color);
  --cc-btn-secondary-border-color: var(--cc-btn-secondary-bg);
  --cc-btn-secondary-hover-bg: #353d43;
  --cc-btn-secondary-hover-color: #fff;
  --cc-btn-secondary-hover-border-color: var(--cc-btn-secondary-hover-bg);
  --cc-separator-border-color: #222a30;
  --cc-toggle-on-bg: var(--cc-btn-primary-bg);
  --cc-toggle-off-bg: #525f6b;
  --cc-toggle-on-knob-bg: var(--cc-btn-primary-color);
  --cc-toggle-off-knob-bg: var(--cc-btn-primary-color);
  --cc-toggle-enabled-icon-color: var(--cc-btn-primary-color);
  --cc-toggle-disabled-icon-color: var(--cc-btn-primary-color);
  --cc-toggle-readonly-bg: #343e45;
  --cc-toggle-readonly-knob-bg: #5f6b72;
  --cc-toggle-readonly-knob-icon-color: var(--cc-toggle-readonly-bg);
  --cc-section-category-border: #1e2428;
  --cc-cookie-category-block-bg: #1e2428;
  --cc-cookie-category-block-border: var(--cc-section-category-border);
  --cc-cookie-category-block-hover-bg: #242c31;
  --cc-cookie-category-block-hover-border: #232a2f;
  --cc-cookie-category-expanded-block-bg: transparent;
  --cc-cookie-category-expanded-block-hover-bg: var(--cc-toggle-readonly-bg);
  --cc-overlay-bg: rgba(0, 0, 0, .65);
  --cc-webkit-scrollbar-bg: var(--cc-section-category-border);
  --cc-webkit-scrollbar-hover-bg: var(--cc-btn-primary-hover-bg);
  --cc-footer-bg: #0c0e0f;
  --cc-footer-color: var(--cc-secondary-color);
  --cc-footer-border-color: #060809
}

.cc--darkmode #cc-main {
  color-scheme: dark
}

#cc-main .cm {
  background: var(--cc-bg);
  border-radius: var(--cc-modal-border-radius);
  box-shadow: 0 .625em 1.875em rgba(0, 0, 2, .3);
  display: flex;
  flex-direction: column;
  max-width: 24rem;
  opacity: 0;
  overflow: hidden;
  position: fixed;
  transform: translateY(1.6em);
  visibility: hidden;
  z-index: 1
}

#cc-main .cm--top {
  top: var(--cc-modal-margin)
}

#cc-main .cm--middle {
  top: 50%;
  transform: translateY(calc(-50% + 1.6em))
}

#cc-main .cm--bottom {
  bottom: var(--cc-modal-margin)
}

#cc-main .cm--center {
  left: var(--cc-modal-margin);
  margin: 0 auto;
  right: var(--cc-modal-margin);
  width: unset
}

#cc-main .cm--left {
  left: var(--cc-modal-margin);
  margin-right: var(--cc-modal-margin)
}

#cc-main .cm--right {
  margin-left: var(--cc-modal-margin);
  right: var(--cc-modal-margin)
}

#cc-main .cm__body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative
}

#cc-main .cm__btns,
#cc-main .cm__links {
  padding: 1rem 1.3rem;
  width: unset
}

#cc-main .cm__texts {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  padding: 1rem 0 0
}

#cc-main .cm__desc,
#cc-main .cm__title {
  padding: 0 1.3rem
}

#cc-main .cm__title {
  font-size: 1.05em
}

#cc-main .cm__title+.cm__desc {
  margin-top: 1.1em
}

#cc-main .cm__desc {
  color: var(--cc-secondary-color);
  font-size: .9em;
  line-height: 1.5;
  max-height: 40vh;
  overflow-x: visible;
  overflow-y: auto;
  padding-bottom: 1em
}

#cc-main .cm__btns {
  border-top: 1px solid var(--cc-separator-border-color);
  display: flex;
  flex-direction: column;
  justify-content: center
}

#cc-main .cm__btn-group {
  display: grid;
  grid-auto-columns: minmax(0, 1fr)
}

#cc-main .cm__btn+.cm__btn,
#cc-main .cm__btn-group+.cm__btn-group {
  margin-top: .375rem
}

#cc-main .cm--flip .cm__btn+.cm__btn,
#cc-main .cm--flip .cm__btn-group+.cm__btn-group {
  margin-bottom: .375rem;
  margin-top: 0
}

#cc-main .cm--inline .cm__btn+.cm__btn {
  margin-left: .375rem;
  margin-top: 0
}

#cc-main .cm--inline.cm--flip .cm__btn+.cm__btn {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: .375rem
}

#cc-main .cm--inline.cm--flip .cm__btn-group+.cm__btn-group {
  margin-bottom: .375rem;
  margin-right: 0
}

#cc-main .cm--wide .cm__btn+.cm__btn,
#cc-main .cm--wide .cm__btn-group+.cm__btn-group {
  margin-left: .375rem;
  margin-top: 0
}

#cc-main .cm--wide.cm--flip .cm__btn+.cm__btn,
#cc-main .cm--wide.cm--flip .cm__btn-group+.cm__btn-group {
  margin-bottom: 0;
  margin-right: .375rem
}

#cc-main .cm--bar:not(.cm--inline) .cm__btn-group--uneven,
#cc-main .cm--wide .cm__btn-group--uneven {
  display: flex;
  flex: 1;
  justify-content: space-between
}

#cc-main .cm--bar:not(.cm--inline).cm--flip .cm__btn-group--uneven,
#cc-main .cm--wide.cm--flip .cm__btn-group--uneven {
  flex-direction: row-reverse
}

#cc-main .cm__btn {
  background: var(--cc-btn-primary-bg);
  border: 1px solid var(--cc-btn-primary-border-color);
  border-radius: var(--cc-btn-border-radius);
  color: var(--cc-btn-primary-color);
  font-size: .82em;
  font-weight: 600;
  min-height: 42px;
  padding: .5em 1em;
  text-align: center
}

#cc-main .cm__btn:hover {
  background: var(--cc-btn-primary-hover-bg);
  border-color: var(--cc-btn-primary-hover-border-color);
  color: var(--cc-btn-primary-hover-color)
}

#cc-main .cm__btn--secondary {
  background: var(--cc-btn-secondary-bg);
  border-color: var(--cc-btn-secondary-border-color);
  color: var(--cc-btn-secondary-color)
}

#cc-main .cm__btn--secondary:hover {
  background: var(--cc-btn-secondary-hover-bg);
  border-color: var(--cc-btn-secondary-hover-border-color);
  color: var(--cc-btn-secondary-hover-color)
}

#cc-main .cm__btn--close {
  border-radius: 0;
  border-bottom-left-radius: var(--cc-btn-border-radius);
  border-right: none;
  border-top: none;
  display: none;
  font-size: 1em;
  height: 42px;
  min-width: auto !important;
  overflow: hidden;
  padding: 0 !important;
  position: absolute;
  right: 0;
  top: 0;
  width: 42px
}

#cc-main .cm__btn--close svg {
  stroke: var(--cc-btn-primary-color);
  transform: scale(.5);
  transition: stroke .15s ease
}

#cc-main .cm__btn--close:hover svg {
  stroke: var(--cc-btn-primary-hover-color)
}

#cc-main .cm__btn--close.cm__btn--secondary svg {
  stroke: var(--cc-btn-secondary-color)
}

#cc-main .cm__btn--close.cm__btn--secondary:hover svg {
  stroke: var(--cc-btn-secondary-hover-color)
}

#cc-main .cm__btn--close+.cm__texts .cm__title {
  padding-right: 3rem
}

#cc-main .cm--inline .cm__btn-group {
  grid-auto-flow: column
}

#cc-main .cm__footer {
  background: var(--cc-footer-bg);
  border-top: 1px solid var(--cc-footer-border-color);
  color: var(--cc-footer-color);
  padding: .4em 0 .5em
}

#cc-main .cm__links {
  display: flex;
  flex-direction: row;
  padding-bottom: 0;
  padding-top: 0
}

#cc-main .cm__link-group {
  display: flex;
  flex-direction: row;
  font-size: .8em;
  width: 100%
}

#cc-main .cm__link-group>*+* {
  margin-left: 1.3rem
}

#cc-main .cm--flip .cm__btn:last-child {
  grid-row: 1
}

#cc-main .cm--inline.cm--flip .cm__btn:last-child {
  grid-column: 1
}

#cc-main .cm--box .cm__btn--close {
  display: block
}

#cc-main .cm--box.cm--flip .cm__btns {
  flex-direction: column-reverse
}

#cc-main .cm--box.cm--wide {
  max-width: 36em
}

#cc-main .cm--box.cm--wide .cm__btns {
  flex-direction: row;
  justify-content: space-between
}

#cc-main .cm--box.cm--wide .cm__btn-group {
  grid-auto-flow: column
}

#cc-main .cm--box.cm--wide .cm__btn {
  min-width: 120px;
  padding-left: 1.8em;
  padding-right: 1.8em
}

#cc-main .cm--box.cm--wide.cm--flip .cm__btns {
  flex-direction: row-reverse
}

#cc-main .cm--box.cm--wide.cm--flip .cm__btn:last-child {
  grid-column: 1
}

#cc-main .cm--cloud {
  max-width: 54em;
  width: unset
}

#cc-main .cm--cloud .cm__body {
  flex-direction: row
}

#cc-main .cm--cloud .cm__texts {
  flex: 1
}

#cc-main .cm--cloud .cm__desc {
  max-height: 9.4em
}

#cc-main .cm--cloud .cm__btns {
  border-left: 1px solid var(--cc-separator-border-color);
  border-top: none;
  max-width: 23em
}

#cc-main .cm--cloud .cm__btn-group {
  flex-direction: column
}

#cc-main .cm--cloud .cm__btn {
  min-width: 19em
}

#cc-main .cm--cloud.cm--flip .cm__btn-group,
#cc-main .cm--cloud.cm--flip .cm__btns {
  flex-direction: column-reverse
}

#cc-main .cm--cloud.cm--inline .cm__btn-group {
  flex-direction: row
}

#cc-main .cm--cloud.cm--inline .cm__btn {
  min-width: 10em
}

#cc-main .cm--cloud.cm--inline.cm--flip .cm__btn-group {
  flex-direction: row-reverse
}

#cc-main .cm--bar {
  border-radius: 0;
  left: 0;
  margin: 0;
  max-width: unset;
  opacity: 1;
  right: 0;
  transform: translateY(0);
  width: 100vw;
  --cc-modal-transition-duration: .35s
}

#cc-main .cm--bar.cm--top {
  top: 0;
  transform: translateY(-100%)
}

#cc-main .cm--bar.cm--bottom {
  bottom: 0;
  transform: translateY(100%)
}

#cc-main .cm--bar .cm__body,
#cc-main .cm--bar .cm__links {
  margin: 0 auto;
  max-width: 55em;
  width: 100%
}

#cc-main .cm--bar .cm__body {
  padding: .5em 0 .9em
}

#cc-main .cm--bar .cm__btns {
  border-top: none;
  flex-direction: row;
  justify-content: space-between
}

#cc-main .cm--bar .cm__btn-group {
  grid-auto-flow: column
}

#cc-main .cm--bar:not(.cm--inline) .cm__btn+.cm__btn,
#cc-main .cm--bar:not(.cm--inline) .cm__btn-group+.cm__btn-group {
  margin-left: .375rem;
  margin-top: 0
}

#cc-main .cm--bar .cm__btn {
  min-width: 120px;
  padding-left: 2em;
  padding-right: 2em
}

#cc-main .cm--bar.cm--flip:not(.cm--inline) .cm__btn+.cm__btn,
#cc-main .cm--bar.cm--flip:not(.cm--inline) .cm__btn-group+.cm__btn-group {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: .375rem
}

#cc-main .cm--bar.cm--flip .cm__btns {
  flex-direction: row-reverse
}

#cc-main .cm--bar.cm--flip .cm__btn:last-child {
  grid-column: 1
}

#cc-main .cm--bar.cm--inline .cm__body,
#cc-main .cm--bar.cm--inline .cm__links {
  max-width: 74em
}

#cc-main .cm--bar.cm--inline .cm__body {
  flex-direction: row;
  padding: 0
}

#cc-main .cm--bar.cm--inline .cm__btns {
  flex-direction: column;
  justify-content: center;
  max-width: 23em
}

#cc-main .cm--bar.cm--inline.cm--flip .cm__btns {
  flex-direction: column-reverse
}

#cc-main .cc--anim .cm,
#cc-main .cc--anim.cm-wrapper:before {
  transition: opacity var(--cc-modal-transition-duration) ease, visibility var(--cc-modal-transition-duration) ease, transform var(--cc-modal-transition-duration) ease
}

#cc-main .cc--anim .cm__btn,
#cc-main .cc--anim .cm__close {
  transition: background-color .15s ease, border-color .15s ease, color .15s ease
}

.disable--interaction #cc-main .cm-wrapper:before {
  background: var(--cc-overlay-bg);
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: fixed;
  right: 0;
  top: 0;
  visibility: hidden;
  z-index: 0
}

.show--consent #cc-main .cc--anim .cm {
  opacity: 1;
  transform: translateY(0);
  visibility: visible !important
}

.show--consent #cc-main .cc--anim .cm--middle {
  transform: translateY(-50%)
}

.show--consent #cc-main .cc--anim .cm--bar {
  transform: translateY(0)
}

.show--consent #cc-main .cc--anim.cm-wrapper:before {
  opacity: 1;
  visibility: visible
}

#cc-main.cc--rtl .cm__btn--close {
  border-bottom-left-radius: unset;
  border-bottom-right-radius: var(--cc-btn-border-radius);
  left: 0;
  right: unset
}

#cc-main.cc--rtl .cm__btn--close+.cm__texts .cm__title {
  padding-left: 3rem !important;
  padding-right: 1.3rem
}

#cc-main.cc--rtl .cm--inline .cm__btn+.cm__btn {
  margin-left: 0;
  margin-right: .375rem
}

#cc-main.cc--rtl .cm--inline.cm--flip .cm__btn+.cm__btn {
  margin-left: .375rem;
  margin-right: 0
}

#cc-main.cc--rtl .cm:not(.cm--inline).cm--bar .cm__btn+.cm__btn,
#cc-main.cc--rtl .cm:not(.cm--inline).cm--bar .cm__btn-group+.cm__btn-group,
#cc-main.cc--rtl .cm:not(.cm--inline).cm--wide .cm__btn+.cm__btn,
#cc-main.cc--rtl .cm:not(.cm--inline).cm--wide .cm__btn-group+.cm__btn-group {
  margin-left: 0;
  margin-right: .375rem
}

#cc-main.cc--rtl .cm:not(.cm--inline).cm--bar.cm--flip .cm__btn+.cm__btn,
#cc-main.cc--rtl .cm:not(.cm--inline).cm--wide.cm--flip .cm__btn+.cm__btn {
  margin-left: .375rem;
  margin-right: 0
}

#cc-main.cc--rtl .cm__link-group>*+* {
  margin-left: 0;
  margin-right: 1.3rem
}

@media screen and (max-width:640px) {
  #cc-main {
    --cc-modal-margin: .5em
  }

  #cc-main .cm {
    max-width: none !important;
    width: auto !important
  }

  #cc-main .cm__body {
    flex-direction: column !important;
    padding: 0 !important
  }

  #cc-main .cm__btns,
  #cc-main .cm__desc,
  #cc-main .cm__links,
  #cc-main .cm__title {
    padding-left: 1.1rem !important;
    padding-right: 1.1rem !important
  }

  #cc-main .cm__btns {
    border-left: none !important;
    border-top: 1px solid var(--cc-separator-border-color) !important;
    flex-direction: column !important;
    max-width: none !important;
    min-width: auto !important
  }

  #cc-main .cm__btn+.cm__btn,
  #cc-main .cm__btn-group+.cm__btn-group {
    margin: .375rem 0 0 !important
  }

  #cc-main .cm--flip .cm__btn+.cm__btn,
  #cc-main .cm--flip .cm__btn-group+.cm__btn-group {
    margin-bottom: .375rem !important;
    margin-top: 0 !important
  }

  #cc-main .cm__btn-group {
    display: flex !important;
    flex-direction: column !important;
    min-width: auto !important
  }

  #cc-main .cm__btn {
    flex: auto !important
  }

  #cc-main .cm__link-group {
    justify-content: center !important
  }

  #cc-main .cm--flip .cm__btn-group,
  #cc-main .cm--flip .cm__btns {
    flex-direction: column-reverse !important
  }
}

#cc-main .pm-wrapper {
  position: relative;
  z-index: 2
}

#cc-main .pm {
  background: var(--cc-bg);
  border-radius: var(--cc-modal-border-radius);
  box-shadow: 0 .625em 1.875em rgba(0, 0, 2, .3);
  display: flex;
  flex-direction: column;
  opacity: 0;
  overflow: hidden;
  position: fixed;
  visibility: hidden;
  width: 100%;
  width: unset;
  z-index: 1
}

#cc-main svg {
  fill: none;
  width: 100%
}

#cc-main .pm__body,
#cc-main .pm__footer,
#cc-main .pm__header {
  padding: 1em 1.4em
}

#cc-main .pm__header {
  align-items: center;
  border-bottom: 1px solid var(--cc-separator-border-color);
  display: flex;
  justify-content: space-between
}

#cc-main .pm__title {
  align-items: center;
  display: flex;
  flex: 1;
  font-weight: 600;
  margin-right: 2em
}

#cc-main .pm__close-btn {
  background: var(--cc-btn-secondary-bg);
  border: 1px solid var(--cc-btn-secondary-border-color);
  border-radius: var(--cc-btn-border-radius);
  height: 40px;
  position: relative;
  transition: all .15s ease;
  width: 40px
}

#cc-main .pm__close-btn span {
  display: flex;
  height: 100%;
  width: 100%
}

#cc-main .pm__close-btn svg {
  stroke: var(--cc-btn-secondary-color);
  transform: scale(.5);
  transition: stroke .15s ease
}

#cc-main .pm__close-btn:hover {
  background: var(--cc-btn-secondary-hover-bg);
  border-color: var(--cc-btn-secondary-hover-border-color)
}

#cc-main .pm__close-btn:hover svg {
  stroke: var(--cc-btn-secondary-hover-color)
}

#cc-main .pm__body {
  flex: 1;
  overflow-y: auto;
  overflow-y: overlay
}

#cc-main .pm__section,
#cc-main .pm__section--toggle {
  border-radius: var(--cc-btn-border-radius);
  display: flex;
  flex-direction: column;
  margin-bottom: .5em
}

#cc-main .pm__section--toggle .pm__section-desc-wrapper {
  border-radius: var(--cc-btn-border-radius);
  border: 1px solid var(--cc-cookie-category-block-border);
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  display: none;
  margin-top: 0 !important;
  overflow: hidden
}

#cc-main .pm__section {
  border: 1px solid var(--cc-separator-border-color);
  padding: 1em;
  transition: background-color .25s ease, border-color .25s ease
}

#cc-main .pm__section:first-child {
  border: none;
  margin-bottom: 2em;
  margin-top: 0;
  padding: 0;
  transition: none
}

#cc-main .pm__section:not(:first-child):hover {
  background: var(--cc-cookie-category-block-bg);
  border-color: var(--cc-cookie-category-block-border)
}

#cc-main .pm__section-toggles+.pm__section {
  margin-top: 2em
}

#cc-main .pm__section--toggle {
  background: var(--cc-cookie-category-block-bg);
  border-top: none;
  margin-bottom: .375rem
}

#cc-main .pm__section--toggle .pm__section-title {
  align-items: center;
  background: var(--cc-cookie-category-block-bg);
  border: 1px solid var(--cc-cookie-category-block-border);
  display: flex;
  justify-content: space-between;
  min-height: 58px;
  padding: 1.1em 5.4em 1.1em 1.2em;
  position: relative;
  transition: background-color .25s ease, border-color .25s ease;
  width: 100%
}

#cc-main .pm__section--toggle .pm__section-title:hover {
  background: var(--cc-cookie-category-block-hover-bg);
  border-color: var(--cc-cookie-category-block-hover-border)
}

#cc-main .pm__section--toggle .pm__section-desc {
  margin-top: 0;
  padding: 1em
}

#cc-main .pm__section--toggle.is-expanded {
  --cc-cookie-category-block-bg: var(--cc-cookie-category-expanded-block-bg);
  --cc-cookie-category-block-border: var(--cc-cookie-category-expanded-block-hover-bg)
}

#cc-main .pm__section--toggle.is-expanded .pm__section-title {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0
}

#cc-main .pm__section--toggle.is-expanded .pm__section-arrow svg {
  transform: scale(.5) rotate(180deg)
}

#cc-main .pm__section--toggle.is-expanded .pm__section-desc-wrapper {
  display: flex
}

#cc-main .pm__section--expandable .pm__section-title {
  cursor: pointer;
  padding-left: 3.4em
}

#cc-main .pm__section--expandable .pm__section-arrow {
  background: var(--cc-toggle-readonly-bg);
  border-radius: 100%;
  display: flex;
  height: 20px;
  justify-content: center;
  left: 18px;
  pointer-events: none;
  position: absolute;
  width: 20px
}

#cc-main .pm__section--expandable .pm__section-arrow svg {
  stroke: var(--cc-btn-secondary-color);
  transform: scale(.5)
}

#cc-main .pm__section-title-wrapper {
  align-items: center;
  display: flex;
  position: relative
}

#cc-main .pm__section-title-wrapper+.pm__section-desc-wrapper {
  margin-top: .85em
}

#cc-main .pm__section-title {
  border-radius: var(--cc-btn-border-radius);
  font-size: .95em;
  font-weight: 600
}

#cc-main .pm__badge {
  align-items: center;
  background: var(--cc-btn-secondary-bg);
  border-radius: 5em;
  color: var(--cc-secondary-color);
  display: flex;
  flex: none;
  font-size: .8em;
  font-weight: 600;
  height: 23px;
  justify-content: center;
  margin-left: 1em;
  min-width: 23px;
  overflow: hidden;
  padding: 0 .6em 1px;
  position: relative;
  text-align: center;
  white-space: nowrap;
  width: auto
}

#cc-main .pm__service-counter {
  background: var(--cc-btn-primary-bg);
  color: var(--cc-btn-primary-color);
  padding: 0;
  width: 23px
}

#cc-main .pm__service-counter[data-counterlabel] {
  padding: 0 .6em 1px;
  width: auto
}

#cc-main .section__toggle,
#cc-main .section__toggle-wrapper,
#cc-main .toggle__icon,
#cc-main .toggle__label {
  border-radius: var(--cc-pm-toggle-border-radius);
  height: 23px;
  transform: translateZ(0);
  width: 50px
}

#cc-main .section__toggle-wrapper {
  cursor: pointer;
  position: absolute;
  right: 18px;
  z-index: 1
}

#cc-main .toggle-service {
  height: 19px;
  position: relative;
  right: 0;
  width: 42px
}

#cc-main .toggle-service .section__toggle,
#cc-main .toggle-service .toggle__icon,
#cc-main .toggle-service .toggle__label {
  height: 19px;
  width: 42px
}

#cc-main .toggle-service .toggle__icon {
  position: relative
}

#cc-main .toggle-service .toggle__icon-circle {
  height: 19px;
  width: 19px
}

#cc-main .toggle-service .section__toggle:checked~.toggle__icon .toggle__icon-circle {
  transform: translateX(23px)
}

#cc-main .pm__section--toggle:nth-child(2) .section__toggle-wrapper:after {
  display: none !important
}

#cc-main .section__toggle {
  border: 0;
  cursor: pointer;
  display: block;
  left: 0;
  margin: 0;
  position: absolute;
  top: 0
}

#cc-main .section__toggle:disabled {
  cursor: not-allowed
}

#cc-main .toggle__icon {
  background: var(--cc-toggle-off-bg);
  box-shadow: 0 0 0 1px var(--cc-toggle-off-bg);
  display: flex;
  flex-direction: row;
  pointer-events: none;
  position: absolute;
  transition: all .25s ease
}

#cc-main .toggle__icon-circle {
  background: var(--cc-toggle-off-knob-bg);
  border: none;
  border-radius: var(--cc-pm-toggle-border-radius);
  box-shadow: 0 1px 2px rgba(24, 32, 3, .36);
  display: block;
  height: 23px;
  left: 0;
  position: absolute;
  top: 0;
  transition: transform .25s ease, background-color .25s ease;
  width: 23px
}

#cc-main .toggle__icon-off,
#cc-main .toggle__icon-on {
  height: 100%;
  position: absolute;
  transition: opacity .15s ease;
  width: 100%
}

#cc-main .toggle__icon-on {
  opacity: 0;
  transform: rotate(45deg)
}

#cc-main .toggle__icon-on svg {
  stroke: var(--cc-toggle-on-bg);
  transform: scale(.55) rotate(-45deg)
}

#cc-main .toggle__icon-off {
  opacity: 1
}

#cc-main .toggle__icon-off svg {
  stroke: var(--cc-toggle-off-bg);
  transform: scale(.55)
}

#cc-main .section__toggle:checked~.toggle__icon {
  background: var(--cc-toggle-on-bg);
  box-shadow: 0 0 0 1px var(--cc-toggle-on-bg)
}

#cc-main .section__toggle:checked~.toggle__icon .toggle__icon-circle {
  background-color: var(--cc-toggle-on-knob-bg);
  transform: translateX(27px)
}

#cc-main .section__toggle:checked~.toggle__icon .toggle__icon-on {
  opacity: 1
}

#cc-main .section__toggle:checked~.toggle__icon .toggle__icon-off {
  opacity: 0
}

#cc-main .section__toggle:checked:disabled~.toggle__icon {
  background: var(--cc-toggle-readonly-bg);
  box-shadow: 0 0 0 1px var(--cc-toggle-readonly-bg)
}

#cc-main .section__toggle:checked:disabled~.toggle__icon .toggle__icon-circle {
  background: var(--cc-toggle-readonly-knob-bg);
  box-shadow: none
}

#cc-main .section__toggle:checked:disabled~.toggle__icon svg {
  stroke: var(--cc-toggle-readonly-knob-icon-color)
}

#cc-main .toggle__label {
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1
}

#cc-main .pm__section-desc-wrapper {
  color: var(--cc-secondary-color);
  display: flex;
  flex-direction: column;
  font-size: .9em
}

#cc-main .pm__section-desc-wrapper>:not(:last-child) {
  border-bottom: 1px solid var(--cc-cookie-category-block-border)
}

#cc-main .pm__section-services {
  display: flex;
  flex-direction: column
}

#cc-main .pm__service {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: .4em 1.2em;
  position: relative;
  transition: background-color .15s ease
}

#cc-main .pm__service:hover {
  background-color: var(--cc-cookie-category-block-hover-bg)
}

#cc-main .pm__service-header {
  align-items: center;
  display: flex;
  margin-right: 1em;
  width: 100%
}

#cc-main .pm__service-icon {
  border: 2px solid;
  border-radius: 100%;
  height: 8px;
  margin-left: 6px;
  margin-right: 20px;
  margin-top: 1px;
  min-width: 8px
}

#cc-main .pm__service-title {
  font-size: .95em;
  width: 100%;
  word-break: break-word
}

#cc-main .pm__section-desc {
  line-height: 1.5em
}

#cc-main .pm__section-table {
  border-collapse: collapse;
  font-size: .9em;
  margin: 0;
  overflow: hidden;
  padding: 0;
  text-align: left;
  width: 100%
}

#cc-main .pm__table-caption {
  text-align: left
}

#cc-main .pm__table-caption,
#cc-main .pm__table-head>tr {
  border-bottom: 1px dashed var(--cc-separator-border-color);
  color: var(--cc-primary-color);
  font-weight: 600
}

#cc-main .pm__table-tr {
  transition: background-color .15s ease
}

#cc-main .pm__table-tr:hover {
  background: var(--cc-cookie-category-block-hover-bg)
}

#cc-main .pm__table-caption,
#cc-main .pm__table-td,
#cc-main .pm__table-th {
  padding: .625em .625em .625em 1.2em;
  vertical-align: top
}

#cc-main .pm__footer {
  border-top: 1px solid var(--cc-separator-border-color);
  display: flex;
  justify-content: space-between
}

#cc-main .pm__btn-group {
  display: flex
}

#cc-main .pm__btn+.pm__btn,
#cc-main .pm__btn-group+.pm__btn-group {
  margin-left: .375rem
}

#cc-main .pm--flip .pm__btn+.pm__btn,
#cc-main .pm--flip .pm__btn-group+.pm__btn-group {
  margin-left: 0;
  margin-right: .375rem
}

#cc-main .pm__btn {
  background: var(--cc-btn-primary-bg);
  border: 1px solid var(--cc-btn-primary-border-color);
  border-radius: var(--cc-btn-border-radius);
  color: var(--cc-btn-primary-color);
  flex: auto;
  font-size: .82em;
  font-weight: 600;
  min-height: 42px;
  min-width: 110px;
  padding: .5em 1.5em;
  text-align: center;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease
}

#cc-main .pm__btn:hover {
  background: var(--cc-btn-primary-hover-bg);
  border-color: var(--cc-btn-primary-hover-border-color);
  color: var(--cc-btn-primary-hover-color)
}

#cc-main .pm__btn--secondary {
  background: var(--cc-btn-secondary-bg);
  border-color: var(--cc-btn-secondary-border-color);
  color: var(--cc-btn-secondary-color)
}

#cc-main .pm__btn--secondary:hover {
  background: var(--cc-btn-secondary-hover-bg);
  border-color: var(--cc-btn-secondary-hover-border-color);
  color: var(--cc-btn-secondary-hover-color)
}

#cc-main .pm--box {
  height: calc(100% - 2em);
  left: var(--cc-modal-margin);
  margin: 0 auto;
  max-height: 37.5em;
  max-width: 43em;
  right: var(--cc-modal-margin);
  top: 50%;
  transform: translateY(calc(-50% + 1.6em))
}

#cc-main .pm--box.pm--flip .pm__btn-group,
#cc-main .pm--box.pm--flip .pm__footer {
  flex-direction: row-reverse
}

#cc-main .pm--bar {
  border-radius: 0;
  bottom: 0;
  height: 100%;
  margin: 0;
  max-height: none;
  max-width: 29em;
  opacity: 1;
  top: 0;
  width: 100%;
  --cc-modal-transition-duration: .35s
}

#cc-main .pm--bar .pm__section-table,
#cc-main .pm--bar .pm__table-body,
#cc-main .pm--bar .pm__table-td,
#cc-main .pm--bar .pm__table-th,
#cc-main .pm--bar .pm__table-tr {
  display: block
}

#cc-main .pm--bar .pm__table-head {
  display: none
}

#cc-main .pm--bar .pm__table-caption {
  display: block
}

#cc-main .pm--bar .pm__table-tr:not(:last-child) {
  border-bottom: 1px solid var(--cc-separator-border-color)
}

#cc-main .pm--bar .pm__table-td {
  display: flex;
  justify-content: space-between
}

#cc-main .pm--bar .pm__table-td:before {
  color: var(--cc-primary-color);
  content: attr(data-column);
  flex: 1;
  font-weight: 600;
  min-width: 100px;
  overflow: hidden;
  padding-right: 2em;
  text-overflow: ellipsis
}

#cc-main .pm--bar .pm__table-td>div {
  flex: 3
}

#cc-main .pm--bar:not(.pm--wide) .pm__body,
#cc-main .pm--bar:not(.pm--wide) .pm__footer,
#cc-main .pm--bar:not(.pm--wide) .pm__header {
  padding: 1em 1.3em
}

#cc-main .pm--bar:not(.pm--wide) .pm__btn-group,
#cc-main .pm--bar:not(.pm--wide) .pm__footer {
  flex-direction: column
}

#cc-main .pm--bar:not(.pm--wide) .pm__btn+.pm__btn,
#cc-main .pm--bar:not(.pm--wide) .pm__btn-group+.pm__btn-group {
  margin: .375rem 0 0
}

#cc-main .pm--bar:not(.pm--wide).pm--flip .pm__btn-group,
#cc-main .pm--bar:not(.pm--wide).pm--flip .pm__footer {
  flex-direction: column-reverse
}

#cc-main .pm--bar:not(.pm--wide).pm--flip .pm__btn+.pm__btn,
#cc-main .pm--bar:not(.pm--wide).pm--flip .pm__btn-group+.pm__btn-group {
  margin-bottom: .375rem;
  margin-top: 0
}

#cc-main .pm--bar:not(.pm--wide) .pm__badge {
  display: none
}

#cc-main .pm--bar.pm--left {
  left: 0;
  transform: translateX(-100%)
}

#cc-main .pm--bar.pm--right {
  right: 0;
  transform: translateX(100%)
}

#cc-main .pm--bar.pm--wide {
  max-width: 35em
}

#cc-main .pm--bar.pm--wide .pm__body,
#cc-main .pm--bar.pm--wide .pm__footer,
#cc-main .pm--bar.pm--wide .pm__header {
  padding: 1em 1.4em
}

#cc-main .pm--bar.pm--wide.pm--flip .pm__btn-group,
#cc-main .pm--bar.pm--wide.pm--flip .pm__footer {
  flex-direction: row-reverse
}

#cc-main .pm-overlay {
  background: var(--cc-overlay-bg);
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: fixed;
  right: 0;
  top: 0;
  visibility: hidden;
  z-index: 1
}

#cc-main .cc--anim .pm,
#cc-main .cc--anim .pm-overlay {
  transition: opacity var(--cc-modal-transition-duration) ease, visibility var(--cc-modal-transition-duration) ease, transform var(--cc-modal-transition-duration) ease
}

.show--preferences #cc-main .cc--anim .pm {
  opacity: 1;
  visibility: visible !important
}

.show--preferences #cc-main .cc--anim .pm--box {
  transform: translateY(-50%)
}

.show--preferences #cc-main .cc--anim .pm--bar {
  transform: translateX(0)
}

.show--preferences #cc-main .cc--anim .pm-overlay {
  opacity: 1;
  visibility: visible
}

#cc-main.cc--rtl .pm__service-header {
  margin-left: 1em;
  margin-right: 0
}

#cc-main.cc--rtl .pm__section-arrow {
  left: unset;
  right: 18px
}

#cc-main.cc--rtl .section__toggle-wrapper {
  left: 18px;
  right: unset;
  transform-origin: left
}

#cc-main.cc--rtl .toggle-service {
  left: 0
}

#cc-main.cc--rtl .pm__service-icon {
  margin-left: 20px;
  margin-right: 5px
}

#cc-main.cc--rtl .pm__section--toggle .pm__section-title {
  padding-left: 5.4em;
  padding-right: 1.2em
}

#cc-main.cc--rtl .pm__section--expandable .pm__section-title {
  padding-right: 3.4em
}

#cc-main.cc--rtl .pm__badge {
  margin-left: unset;
  margin-right: 1em
}

#cc-main.cc--rtl .toggle__icon-circle {
  transform: translateX(27px)
}

#cc-main.cc--rtl .toggle-service .toggle__icon-circle {
  transform: translateX(23px)
}

#cc-main.cc--rtl .section__toggle:checked~.toggle__icon .toggle__icon-circle {
  transform: translateX(0)
}

#cc-main.cc--rtl .pm__table-td,
#cc-main.cc--rtl .pm__table-th {
  padding-left: unset;
  padding-right: 1.2em;
  text-align: right
}

#cc-main.cc--rtl .pm__table-td {
  padding-left: unset;
  padding-right: 1.2em
}

#cc-main.cc--rtl .pm__table-td:before {
  padding-left: 2em;
  padding-right: unset
}

#cc-main.cc--rtl .pm__btn+.pm__btn,
#cc-main.cc--rtl .pm__btn-group+.pm__btn-group {
  margin-left: 0;
  margin-right: .375rem
}

#cc-main.cc--rtl .pm--flip .pm__btn+.pm__btn,
#cc-main.cc--rtl .pm--flip .pm__btn-group+.pm__btn-group {
  margin-left: .375rem;
  margin-right: 0
}

#cc-main.cc--rtl .pm--flip.pm--bar:not(.pm--wide) .pm__btn+.pm__btn,
#cc-main.cc--rtl .pm--flip.pm--bar:not(.pm--wide) .pm__btn-group+.pm__btn-group {
  margin-left: 0
}

@media screen and (max-width:640px) {
  #cc-main .pm {
    border-radius: 0;
    bottom: 0;
    height: auto;
    left: 0;
    max-height: 100%;
    max-width: none !important;
    right: 0;
    top: 0;
    transform: translateY(1.6em)
  }

  #cc-main .pm__body,
  #cc-main .pm__footer,
  #cc-main .pm__header {
    padding: .9em !important
  }

  #cc-main .pm__badge {
    display: none
  }

  #cc-main .pm__section-table,
  #cc-main .pm__table-body,
  #cc-main .pm__table-caption,
  #cc-main .pm__table-td,
  #cc-main .pm__table-th,
  #cc-main .pm__table-tr {
    display: block
  }

  #cc-main .pm__table-head {
    display: none
  }

  #cc-main .pm__table-tr:not(:last-child) {
    border-bottom: 1px solid var(--cc-separator-border-color)
  }

  #cc-main .pm__table-td {
    display: flex;
    justify-content: space-between
  }

  #cc-main .pm__table-td:before {
    color: var(--cc-primary-color);
    content: attr(data-column);
    flex: 1;
    font-weight: 600;
    min-width: 100px;
    overflow: hidden;
    padding-right: 2em;
    text-overflow: ellipsis
  }

  #cc-main .pm__table-td>div {
    flex: 3
  }

  #cc-main .pm__btn-group,
  #cc-main .pm__footer {
    flex-direction: column !important
  }

  #cc-main .pm__btn-group {
    display: flex !important
  }

  #cc-main .pm__btn+.pm__btn,
  #cc-main .pm__btn-group+.pm__btn-group {
    margin: .375rem 0 0 !important
  }

  #cc-main .pm--flip .pm__btn+.pm__btn,
  #cc-main .pm--flip .pm__btn-group+.pm__btn-group {
    margin-bottom: .375rem !important;
    margin-top: 0 !important
  }

  #cc-main .pm--flip .pm__btn-group,
  #cc-main .pm--flip .pm__footer {
    flex-direction: column-reverse !important
  }

  .show--preferences #cc-main .cc--anim .pm {
    transform: translateY(0) !important
  }
}

@font-face {
  font-family: __Plus_Jakarta_Sans_646807;
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(../fonts/6fe53d21e6e7ebd8-s.woff2) format("woff2");
  unicode-range: u+0460-052f, u+1c80-1c8a, u+20b4, u+2de0-2dff, u+a640-a69f, u+fe2e-fe2f
}

@font-face {
  font-family: __Plus_Jakarta_Sans_646807;
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(../fonts/8ebc6e9dde468c4a-s.woff2) format("woff2");
  unicode-range: u+0102-0103, u+0110-0111, u+0128-0129, u+0168-0169, u+01a0-01a1, u+01af-01b0, u+0300-0301, u+0303-0304, u+0308-0309, u+0323, u+0329, u+1ea0-1ef9, u+20ab
}

@font-face {
  font-family: __Plus_Jakarta_Sans_646807;
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(../fonts/9e7b0a821b9dfcb4-s.woff2) format("woff2");
  unicode-range: u+0100-02ba, u+02bd-02c5, u+02c7-02cc, u+02ce-02d7, u+02dd-02ff, u+0304, u+0308, u+0329, u+1d00-1dbf, u+1e00-1e9f, u+1ef2-1eff, u+2020, u+20a0-20ab, u+20ad-20c0, u+2113, u+2c60-2c7f, u+a720-a7ff
}

@font-face {
  font-family: __Plus_Jakarta_Sans_646807;
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
  src: url(../fonts/636a5ac981f94f8b-s.p.woff2) format("woff2");
  unicode-range: u+00??, u+0131, u+0152-0153, u+02bb-02bc, u+02c6, u+02da, u+02dc, u+0304, u+0308, u+0329, u+2000-206f, u+20ac, u+2122, u+2191, u+2193, u+2212, u+2215, u+feff, u+fffd
}

@font-face {
  font-family: __Plus_Jakarta_Sans_Fallback_646807;
  src: local("Arial");
  ascent-override: 98.75%;
  descent-override: 21.12%;
  line-gap-override: 0.00%;
  size-adjust: 105.12%
}

.__className_646807 {
  font-family: __Plus_Jakarta_Sans_646807, __Plus_Jakarta_Sans_Fallback_646807;
  font-style: normal
}

.react-calendar {
  width: 350px;
  max-width: 100%;
  background: #fff;
  border: 1px solid #a0a096;
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.125em
}

.react-calendar--doubleView {
  width: 700px
}

.react-calendar--doubleView .react-calendar__viewContainer {
  display: flex;
  margin: -.5em
}

.react-calendar--doubleView .react-calendar__viewContainer>* {
  width: 50%;
  margin: .5em
}

.react-calendar,
.react-calendar *,
.react-calendar :after,
.react-calendar :before {
  box-sizing: border-box
}

.react-calendar button {
  margin: 0;
  border: 0;
  outline: none
}

.react-calendar button:enabled:hover {
  cursor: pointer
}

.react-calendar__navigation {
  display: flex;
  height: 44px;
  margin-bottom: 1em
}

.react-calendar__navigation button {
  min-width: 44px;
  background: none
}

.react-calendar__navigation button:disabled {
  background-color: #f0f0f0
}

.react-calendar__navigation button:enabled:focus,
.react-calendar__navigation button:enabled:hover {
  background-color: #e6e6e6
}

.react-calendar__month-view__weekdays {
  text-align: center;
  text-transform: uppercase;
  font: inherit;
  font-size: .75em;
  font-weight: 700
}

.react-calendar__month-view__weekdays__weekday {
  padding: .5em
}

.react-calendar__month-view__weekNumbers .react-calendar__tile {
  display: flex;
  align-items: center;
  justify-content: center;
  font: inherit;
  font-size: .75em;
  font-weight: 700
}

.react-calendar__month-view__days__day--weekend {
  color: #d10000
}

.react-calendar__century-view__decades__decade--neighboringCentury,
.react-calendar__decade-view__years__year--neighboringDecade,
.react-calendar__month-view__days__day--neighboringMonth {
  color: #757575
}

.react-calendar__century-view .react-calendar__tile,
.react-calendar__decade-view .react-calendar__tile,
.react-calendar__year-view .react-calendar__tile {
  padding: 2em .5em
}

.react-calendar__tile {
  max-width: 100%;
  padding: 10px 6.6667px;
  background: none;
  text-align: center;
  line-height: 16px;
  font: inherit;
  font-size: .833em
}

.react-calendar__tile:disabled {
  background-color: #f0f0f0;
  color: #ababab
}

.react-calendar__century-view__decades__decade--neighboringCentury:disabled,
.react-calendar__decade-view__years__year--neighboringDecade:disabled,
.react-calendar__month-view__days__day--neighboringMonth:disabled {
  color: #cdcdcd
}

.react-calendar__tile:enabled:focus,
.react-calendar__tile:enabled:hover {
  background-color: #e6e6e6
}

.react-calendar__tile--now {
  background: #ffff76
}

.react-calendar__tile--now:enabled:focus,
.react-calendar__tile--now:enabled:hover {
  background: #ffffa9
}

.react-calendar__tile--hasActive {
  background: #76baff
}

.react-calendar__tile--hasActive:enabled:focus,
.react-calendar__tile--hasActive:enabled:hover {
  background: #a9d4ff
}

.react-calendar__tile--active {
  background: #006edc;
  color: #fff
}

.react-calendar__tile--active:enabled:focus,
.react-calendar__tile--active:enabled:hover {
  background: #1087ff
}

.react-calendar--selectRange .react-calendar__tile--hover {
  background-color: #e6e6e6
}

.slick-slider {
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.slick-list,
.slick-slider {
  position: relative;
  display: block
}

.slick-list {
  overflow: hidden;
  margin: 0;
  padding: 0
}

.slick-list:focus {
  outline: none
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}

.slick-slider .slick-list,
.slick-slider .slick-track {
  transform: translateZ(0)
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}

.slick-track:after,
.slick-track:before {
  display: table;
  content: ""
}

.slick-track:after {
  clear: both
}

.slick-loading .slick-track {
  visibility: hidden
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px
}

[dir=rtl] .slick-slide {
  float: right
}

.slick-slide img {
  display: block
}

.slick-slide.slick-loading img {
  display: none
}

.slick-slide.dragging img {
  pointer-events: none
}

.slick-initialized .slick-slide {
  display: block
}

.slick-loading .slick-slide {
  visibility: hidden
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}

.slick-arrow.slick-hidden {
  display: none
}

.react-tabs {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.react-tabs__tab-list {
  border-bottom: 1px solid #aaa;
  margin: 0 0 10px;
  padding: 0
}

.react-tabs__tab {
  display: inline-block;
  border: 1px solid transparent;
  border-bottom: none;
  bottom: -1px;
  position: relative;
  list-style: none;
  padding: 6px 12px;
  cursor: pointer
}

.react-tabs__tab--selected {
  background: #fff;
  border-color: #aaa;
  color: #000;
  border-radius: 5px 5px 0 0
}

.react-tabs__tab--disabled {
  color: GrayText;
  cursor: default
}

.react-tabs__tab:focus {
  outline: none
}

.react-tabs__tab:focus:after {
  content: "";
  position: absolute;
  height: 5px;
  left: -4px;
  right: -4px;
  bottom: -5px;
  background: #fff
}

.react-tabs__tab-panel {
  display: none
}

.react-tabs__tab-panel--selected {
  display: block
}

:root {
  --toastify-color-light: #fff;
  --toastify-color-dark: #121212;
  --toastify-color-info: #3498db;
  --toastify-color-success: #07bc0c;
  --toastify-color-warning: #f1c40f;
  --toastify-color-error: #e74c3c;
  --toastify-color-transparent: hsla(0, 0%, 100%, .7);
  --toastify-icon-color-info: var(--toastify-color-info);
  --toastify-icon-color-success: var(--toastify-color-success);
  --toastify-icon-color-warning: var(--toastify-color-warning);
  --toastify-icon-color-error: var(--toastify-color-error);
  --toastify-toast-width: 320px;
  --toastify-toast-offset: 16px;
  --toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));
  --toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));
  --toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));
  --toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));
  --toastify-toast-background: #fff;
  --toastify-toast-min-height: 64px;
  --toastify-toast-max-height: 800px;
  --toastify-toast-bd-radius: 6px;
  --toastify-font-family: sans-serif;
  --toastify-z-index: 9999;
  --toastify-text-color-light: #757575;
  --toastify-text-color-dark: #fff;
  --toastify-text-color-info: #fff;
  --toastify-text-color-success: #fff;
  --toastify-text-color-warning: #fff;
  --toastify-text-color-error: #fff;
  --toastify-spinner-color: #616161;
  --toastify-spinner-color-empty-area: #e0e0e0;
  --toastify-color-progress-light: linear-gradient(90deg, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);
  --toastify-color-progress-dark: #bb86fc;
  --toastify-color-progress-info: var(--toastify-color-info);
  --toastify-color-progress-success: var(--toastify-color-success);
  --toastify-color-progress-warning: var(--toastify-color-warning);
  --toastify-color-progress-error: var(--toastify-color-error);
  --toastify-color-progress-bgo: 0.2
}

.Toastify__toast-container {
  z-index: var(--toastify-z-index);
  -webkit-transform: translateZ(var(--toastify-z-index));
  position: fixed;
  padding: 4px;
  width: var(--toastify-toast-width);
  box-sizing: border-box;
  color: #fff
}

.Toastify__toast-container--top-left {
  top: var(--toastify-toast-top);
  left: var(--toastify-toast-left)
}

.Toastify__toast-container--top-center {
  top: var(--toastify-toast-top);
  left: 50%;
  transform: translateX(-50%)
}

.Toastify__toast-container--top-right {
  top: var(--toastify-toast-top);
  right: var(--toastify-toast-right)
}

.Toastify__toast-container--bottom-left {
  bottom: var(--toastify-toast-bottom);
  left: var(--toastify-toast-left)
}

.Toastify__toast-container--bottom-center {
  bottom: var(--toastify-toast-bottom);
  left: 50%;
  transform: translateX(-50%)
}

.Toastify__toast-container--bottom-right {
  bottom: var(--toastify-toast-bottom);
  right: var(--toastify-toast-right)
}

@media only screen and (max-width:480px) {
  .Toastify__toast-container {
    width: 100vw;
    padding: 0;
    left: env(safe-area-inset-left);
    margin: 0
  }

  .Toastify__toast-container--top-center,
  .Toastify__toast-container--top-left,
  .Toastify__toast-container--top-right {
    top: env(safe-area-inset-top);
    transform: translateX(0)
  }

  .Toastify__toast-container--bottom-center,
  .Toastify__toast-container--bottom-left,
  .Toastify__toast-container--bottom-right {
    bottom: env(safe-area-inset-bottom);
    transform: translateX(0)
  }

  .Toastify__toast-container--rtl {
    right: env(safe-area-inset-right);
    left: auto
  }
}

.Toastify__toast {
  --y: 0;
  position: relative;
  touch-action: none;
  min-height: var(--toastify-toast-min-height);
  box-sizing: border-box;
  margin-bottom: 1rem;
  padding: 8px;
  border-radius: var(--toastify-toast-bd-radius);
  box-shadow: 0 4px 12px rgba(0, 0, 0, .1);
  display: flex;
  justify-content: space-between;
  max-height: var(--toastify-toast-max-height);
  font-family: var(--toastify-font-family);
  cursor: default;
  direction: ltr;
  z-index: 0;
  overflow: hidden
}

.Toastify__toast--stacked {
  position: absolute;
  width: 100%;
  transform: translate3d(0, var(--y), 0) scale(var(--s));
  transition: transform .3s
}

.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,
.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body {
  transition: opacity .1s
}

.Toastify__toast--stacked[data-collapsed=false] {
  overflow: visible
}

.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>* {
  opacity: 0
}

.Toastify__toast--stacked:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: calc(var(--g)*1px);
  bottom: 100%
}

.Toastify__toast--stacked[data-pos=top] {
  top: 0
}

.Toastify__toast--stacked[data-pos=bot] {
  bottom: 0
}

.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before {
  transform-origin: top
}

.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before {
  transform-origin: bottom
}

.Toastify__toast--stacked:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  transform: scaleY(3);
  z-index: -1
}

.Toastify__toast--rtl {
  direction: rtl
}

.Toastify__toast--close-on-click {
  cursor: pointer
}

.Toastify__toast-body {
  margin: auto 0;
  flex: 1 1 auto;
  padding: 6px;
  display: flex;
  align-items: center
}

.Toastify__toast-body>div:last-child {
  word-break: break-word;
  flex: 1
}

.Toastify__toast-icon {
  margin-inline-end: 10px;
  width: 20px;
  flex-shrink: 0;
  display: flex
}

.Toastify--animate {
  animation-fill-mode: both;
  animation-duration: .5s
}

.Toastify--animate-icon {
  animation-fill-mode: both;
  animation-duration: .3s
}

@media only screen and (max-width:480px) {
  .Toastify__toast {
    margin-bottom: 0;
    border-radius: 0
  }
}

.Toastify__toast-theme--dark {
  background: var(--toastify-color-dark);
  color: var(--toastify-text-color-dark)
}

.Toastify__toast-theme--colored.Toastify__toast--default,
.Toastify__toast-theme--light {
  background: var(--toastify-color-light);
  color: var(--toastify-text-color-light)
}

.Toastify__toast-theme--colored.Toastify__toast--info {
  color: var(--toastify-text-color-info);
  background: var(--toastify-color-info)
}

.Toastify__toast-theme--colored.Toastify__toast--success {
  color: var(--toastify-text-color-success);
  background: var(--toastify-color-success)
}

.Toastify__toast-theme--colored.Toastify__toast--warning {
  color: var(--toastify-text-color-warning);
  background: var(--toastify-color-warning)
}

.Toastify__toast-theme--colored.Toastify__toast--error {
  color: var(--toastify-text-color-error);
  background: var(--toastify-color-error)
}

.Toastify__progress-bar-theme--light {
  background: var(--toastify-color-progress-light)
}

.Toastify__progress-bar-theme--dark {
  background: var(--toastify-color-progress-dark)
}

.Toastify__progress-bar--info {
  background: var(--toastify-color-progress-info)
}

.Toastify__progress-bar--success {
  background: var(--toastify-color-progress-success)
}

.Toastify__progress-bar--warning {
  background: var(--toastify-color-progress-warning)
}

.Toastify__progress-bar--error {
  background: var(--toastify-color-progress-error)
}

.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning {
  background: var(--toastify-color-transparent)
}

.Toastify__close-button {
  color: #fff;
  background: transparent;
  outline: none;
  border: none;
  padding: 0;
  cursor: pointer;
  opacity: .7;
  transition: .3s ease;
  align-self: flex-start;
  z-index: 1
}

.Toastify__close-button--light {
  color: #000;
  opacity: .3
}

.Toastify__close-button>svg {
  fill: currentColor;
  height: 16px;
  width: 14px
}

.Toastify__close-button:focus,
.Toastify__close-button:hover {
  opacity: 1
}

@keyframes Toastify__trackProgress {
  0% {
    transform: scaleX(1)
  }

  to {
    transform: scaleX(0)
  }
}

.Toastify__progress-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--toastify-z-index);
  opacity: .7;
  transform-origin: left;
  border-bottom-left-radius: var(--toastify-toast-bd-radius)
}

.Toastify__progress-bar--animated {
  animation: Toastify__trackProgress linear 1 forwards
}

.Toastify__progress-bar--controlled {
  transition: transform .2s
}

.Toastify__progress-bar--rtl {
  right: 0;
  left: auto;
  transform-origin: right;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: var(--toastify-toast-bd-radius)
}

.Toastify__progress-bar--wrp {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  border-bottom-left-radius: var(--toastify-toast-bd-radius)
}

.Toastify__progress-bar--wrp[data-hidden=true] {
  opacity: 0
}

.Toastify__progress-bar--bg {
  opacity: var(--toastify-color-progress-bgo);
  width: 100%;
  height: 100%
}

.Toastify__spinner {
  width: 20px;
  height: 20px;
  box-sizing: border-box;
  border: 2px solid;
  border-radius: 100%;
  border-color: var(--toastify-spinner-color-empty-area);
  border-right-color: var(--toastify-spinner-color);
  animation: Toastify__spin .65s linear infinite
}

@keyframes Toastify__bounceInRight {

  0%,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1)
  }

  0% {
    opacity: 0;
    transform: translate3d(3000px, 0, 0)
  }

  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0)
  }

  75% {
    transform: translate3d(10px, 0, 0)
  }

  90% {
    transform: translate3d(-5px, 0, 0)
  }

  to {
    transform: none
  }
}

@keyframes Toastify__bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, var(--y), 0)
  }

  to {
    opacity: 0;
    transform: translate3d(2000px, var(--y), 0)
  }
}

@keyframes Toastify__bounceInLeft {

  0%,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1)
  }

  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0)
  }

  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0)
  }

  75% {
    transform: translate3d(-10px, 0, 0)
  }

  90% {
    transform: translate3d(5px, 0, 0)
  }

  to {
    transform: none
  }
}

@keyframes Toastify__bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, var(--y), 0)
  }

  to {
    opacity: 0;
    transform: translate3d(-2000px, var(--y), 0)
  }
}

@keyframes Toastify__bounceInUp {

  0%,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1)
  }

  0% {
    opacity: 0;
    transform: translate3d(0, 3000px, 0)
  }

  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0)
  }

  75% {
    transform: translate3d(0, 10px, 0)
  }

  90% {
    transform: translate3d(0, -5px, 0)
  }

  to {
    transform: translateZ(0)
  }
}

@keyframes Toastify__bounceOutUp {
  20% {
    transform: translate3d(0, calc(var(--y) - 10px), 0)
  }

  40%,
  45% {
    opacity: 1;
    transform: translate3d(0, calc(var(--y) + 20px), 0)
  }

  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0)
  }
}

@keyframes Toastify__bounceInDown {

  0%,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1)
  }

  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0)
  }

  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0)
  }

  75% {
    transform: translate3d(0, -10px, 0)
  }

  90% {
    transform: translate3d(0, 5px, 0)
  }

  to {
    transform: none
  }
}

@keyframes Toastify__bounceOutDown {
  20% {
    transform: translate3d(0, calc(var(--y) - 10px), 0)
  }

  40%,
  45% {
    opacity: 1;
    transform: translate3d(0, calc(var(--y) + 20px), 0)
  }

  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0)
  }
}

.Toastify__bounce-enter--bottom-left,
.Toastify__bounce-enter--top-left {
  animation-name: Toastify__bounceInLeft
}

.Toastify__bounce-enter--bottom-right,
.Toastify__bounce-enter--top-right {
  animation-name: Toastify__bounceInRight
}

.Toastify__bounce-enter--top-center {
  animation-name: Toastify__bounceInDown
}

.Toastify__bounce-enter--bottom-center {
  animation-name: Toastify__bounceInUp
}

.Toastify__bounce-exit--bottom-left,
.Toastify__bounce-exit--top-left {
  animation-name: Toastify__bounceOutLeft
}

.Toastify__bounce-exit--bottom-right,
.Toastify__bounce-exit--top-right {
  animation-name: Toastify__bounceOutRight
}

.Toastify__bounce-exit--top-center {
  animation-name: Toastify__bounceOutUp
}

.Toastify__bounce-exit--bottom-center {
  animation-name: Toastify__bounceOutDown
}

@keyframes Toastify__zoomIn {
  0% {
    opacity: 0;
    transform: scale3d(.3, .3, .3)
  }

  50% {
    opacity: 1
  }
}

@keyframes Toastify__zoomOut {
  0% {
    opacity: 1
  }

  50% {
    opacity: 0;
    transform: translate3d(0, var(--y), 0) scale3d(.3, .3, .3)
  }

  to {
    opacity: 0
  }
}

.Toastify__zoom-enter {
  animation-name: Toastify__zoomIn
}

.Toastify__zoom-exit {
  animation-name: Toastify__zoomOut
}

@keyframes Toastify__flipIn {
  0% {
    transform: perspective(400px) rotateX(90deg);
    animation-timing-function: ease-in;
    opacity: 0
  }

  40% {
    transform: perspective(400px) rotateX(-20deg);
    animation-timing-function: ease-in
  }

  60% {
    transform: perspective(400px) rotateX(10deg);
    opacity: 1
  }

  80% {
    transform: perspective(400px) rotateX(-5deg)
  }

  to {
    transform: perspective(400px)
  }
}

@keyframes Toastify__flipOut {
  0% {
    transform: translate3d(0, var(--y), 0) perspective(400px)
  }

  30% {
    transform: translate3d(0, var(--y), 0) perspective(400px) rotateX(-20deg);
    opacity: 1
  }

  to {
    transform: translate3d(0, var(--y), 0) perspective(400px) rotateX(90deg);
    opacity: 0
  }
}

.Toastify__flip-enter {
  animation-name: Toastify__flipIn
}

.Toastify__flip-exit {
  animation-name: Toastify__flipOut
}

@keyframes Toastify__slideInRight {
  0% {
    transform: translate3d(110%, 0, 0);
    visibility: visible
  }

  to {
    transform: translate3d(0, var(--y), 0)
  }
}

@keyframes Toastify__slideInLeft {
  0% {
    transform: translate3d(-110%, 0, 0);
    visibility: visible
  }

  to {
    transform: translate3d(0, var(--y), 0)
  }
}

@keyframes Toastify__slideInUp {
  0% {
    transform: translate3d(0, 110%, 0);
    visibility: visible
  }

  to {
    transform: translate3d(0, var(--y), 0)
  }
}

@keyframes Toastify__slideInDown {
  0% {
    transform: translate3d(0, -110%, 0);
    visibility: visible
  }

  to {
    transform: translate3d(0, var(--y), 0)
  }
}

@keyframes Toastify__slideOutRight {
  0% {
    transform: translate3d(0, var(--y), 0)
  }

  to {
    visibility: hidden;
    transform: translate3d(110%, var(--y), 0)
  }
}

@keyframes Toastify__slideOutLeft {
  0% {
    transform: translate3d(0, var(--y), 0)
  }

  to {
    visibility: hidden;
    transform: translate3d(-110%, var(--y), 0)
  }
}

@keyframes Toastify__slideOutDown {
  0% {
    transform: translate3d(0, var(--y), 0)
  }

  to {
    visibility: hidden;
    transform: translate3d(0, 500px, 0)
  }
}

@keyframes Toastify__slideOutUp {
  0% {
    transform: translate3d(0, var(--y), 0)
  }

  to {
    visibility: hidden;
    transform: translate3d(0, -500px, 0)
  }
}

.Toastify__slide-enter--bottom-left,
.Toastify__slide-enter--top-left {
  animation-name: Toastify__slideInLeft
}

.Toastify__slide-enter--bottom-right,
.Toastify__slide-enter--top-right {
  animation-name: Toastify__slideInRight
}

.Toastify__slide-enter--top-center {
  animation-name: Toastify__slideInDown
}

.Toastify__slide-enter--bottom-center {
  animation-name: Toastify__slideInUp
}

.Toastify__slide-exit--bottom-left,
.Toastify__slide-exit--top-left {
  animation-name: Toastify__slideOutLeft;
  animation-timing-function: ease-in;
  animation-duration: .3s
}

.Toastify__slide-exit--bottom-right,
.Toastify__slide-exit--top-right {
  animation-name: Toastify__slideOutRight;
  animation-timing-function: ease-in;
  animation-duration: .3s
}

.Toastify__slide-exit--top-center {
  animation-name: Toastify__slideOutUp;
  animation-timing-function: ease-in;
  animation-duration: .3s
}

.Toastify__slide-exit--bottom-center {
  animation-name: Toastify__slideOutDown;
  animation-timing-function: ease-in;
  animation-duration: .3s
}

@keyframes Toastify__spin {
  0% {
    transform: rotate(0deg)
  }

  to {
    transform: rotate(1turn)
  }
}

@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal
}

:root {
  --swiper-theme-color: #007aff
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block
}

.swiper-vertical>.swiper-wrapper {
  flex-direction: column
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translateZ(0)
}

.swiper-horizontal {
  touch-action: pan-y
}

.swiper-vertical {
  touch-action: pan-x
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block
}

.swiper-slide-invisible-blank {
  visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d
}

.swiper-3d {
  perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
  transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
  display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
  scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
  scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
  scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
  content: "";
  flex-shrink: 0;
  order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after)
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border-radius: 50%;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-top: 4px solid transparent
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s linear infinite
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg)
  }

  to {
    transform: rotate(1turn)
  }
}

.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after {
  height: 1px;
  width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after {
  width: 1px;
  height: var(--swiper-virtual-size)
}

:root {
  --swiper-navigation-size: 44px
}

.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none
}

.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
  display: none !important
}

.swiper-button-next svg,
.swiper-button-prev svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  transform-origin: center
}

.swiper-rtl .swiper-button-next svg,
.swiper-rtl .swiper-button-prev svg {
  transform: rotate(180deg)
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto
}

.swiper-button-lock {
  display: none
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: normal;
  line-height: 1
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev"
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next"
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: opacity .3s;
  transform: translateZ(0);
  z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(.33);
  position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(.33)
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer
}

.swiper-pagination-bullet:only-child {
  display: none !important
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical>.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: transform .2s, top .2s
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: transform .2s, left .2s
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: transform .2s, right .2s
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit)
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));
  position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical>.swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0
}

.swiper-pagination-lock {
  display: none
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, .1))
}

.swiper-scrollbar-disabled>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical>.swiper-scrollbar {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, .5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0
}

.swiper-scrollbar-cursor-drag {
  cursor: move
}

.swiper-scrollbar-lock {
  display: none
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain
}

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none
}

.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000
}

.swiper-free-mode>.swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto
}

.swiper-grid>.swiper-wrapper {
  flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}

.swiper-cube {
  overflow: visible
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  opacity: .6;
  z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px)
}

.swiper-cube .swiper-slide-next+.swiper-slide {
  pointer-events: auto;
  visibility: visible
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden
}

.swiper-flip {
  overflow: visible
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden
}

.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height
}

.swiper-cards {
  overflow: visible
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  backface-visibility: hidden;
  overflow: hidden
}

.margin-right-auto {
  margin-right: auto
}

section {
  scroll-margin-top: 100px
}

.select-dropdown-enter {
  opacity: 0
}

.select-dropdown-enter-active {
  opacity: 1;
  transition: opacity .3s
}

.select-dropdown-exit {
  opacity: 1
}

.select-dropdown-exit-active {
  opacity: 0;
  transition: opacity .3s
}

.cart-sidebar-enter {
  opacity: 0;
  transform: translateX(100%)
}

.cart-sidebar-enter-active {
  transition: .3s
}

.cart-sidebar-enter-active,
.cart-sidebar-exit {
  opacity: 1;
  transform: translateX(0)
}

.cart-sidebar-exit-active {
  opacity: 0;
  transform: translateX(100%);
  transition: .3s
}

.search-box-enter {
  opacity: 0;
  transform: translateX(10px)
}

.search-box-enter-active {
  transition: .3s
}

.search-box-enter-active,
.search-box-exit {
  opacity: 1;
  transform: translateX(0)
}

.search-box-exit-active {
  opacity: 0;
  transform: translateX(10px);
  transition: .3s
}

.dropdown-menu-mobile-enter {
  opacity: 0;
  transform: translateY(10px)
}

.dropdown-menu-mobile-enter-active {
  opacity: 1;
  transform: translateY(0);
  transition: .3s
}

.dropdown-menu-mobile-exit {
  opacity: 1;
  transform: translateY(0)
}

.dropdown-menu-mobile-exit-active {
  opacity: 0;
  transform: translateY(10px);
  transition: .3s
}

.slider-one-button-enter,
.slider-one-description-enter,
.slider-one-subtitle-enter,
.slider-one-title-enter {
  opacity: 0;
  transform: translateY(-100%)
}

.slider-one-button-enter-active,
.slider-one-description-enter-active,
.slider-one-subtitle-enter-active,
.slider-one-title-enter-active {
  opacity: 1;
  transform: translateY(0);
  transition: 1.5s
}

.slider-one-button-exit,
.slider-one-description-exit,
.slider-one-subtitle-exit,
.slider-one-title-exit {
  opacity: 1;
  transform: translateY(0)
}

.slider-one-button-exit-active,
.slider-one-description-exit-active,
.slider-one-subtitle-exit-active,
.slider-one-title-exit-active {
  opacity: 0;
  transform: translateY(-100%);
  transition: 1.5s
}

.slider-zoom-in-enter {
  transform: scale(1.1)
}

.slider-zoom-in-enter-active {
  transform: scale(1);
  transition: 1.5s
}

.slider-zoom-in-exit {
  transform: scale(1)
}

.slider-zoom-in-exit-active {
  transform: scale(1.1);
  transition: 1.5s
}

.nav-full-enter {
  opacity: 0
}

.nav-full-enter-active {
  opacity: 1;
  transition: .5s
}

.nav-full-exit {
  opacity: 1
}

.nav-full-exit-active {
  opacity: 0;
  transition: .5s
}

.container {
  max-width: 1360px !important;
  --bs-gutter-x: 70px;
  --bs-gutter-y: 0;
  padding-right: calc(var(--bs-gutter-x)*.5);
  padding-left: calc(var(--bs-gutter-x)*.5);
  margin-right: auto;
  margin-left: auto
}

@media(max-width:991.98px) {
  .container {
    padding-left: 16px;
    padding-right: 16px
  }
}

body,
html {
  padding: 0;
  margin: 0;
  font-weight: 400;
  font-size: 16px;
  line-height: 26px
}

@media only screen and (max-width:1024px) {

  body,
  html {
    font-size: 15px
  }
}

@media only screen and (max-width:768px) {

  body,
  html {
    font-size: 14px
  }
}

* {
  box-sizing: border-box
}

html {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth
}

body {
  overflow-x: hidden
}

main {
  display: block
}

h1,
h2,
h3,
h4,
h5,
h6,
li,
p,
ul {
  margin: 0;
  padding: 0
}

hr {
  box-sizing: content-box;
  height: 1;
  overflow: visible
}

pre {
  font-family: monospace, monospace;
  font-size: 1em
}

a {
  background-color: transparent;
  text-decoration: none
}

svg {
  display: inline-block !important
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em
}

img {
  border-style: none
  
}

button {
  cursor: pointer
}

button,
input,
optgroup,
select,
textarea {
  line-height: 1.15
}

button,
input {
  overflow: visible
}

button:focus,
select:focus {
  outline: 0;
  box-shadow: none
}

input:focus,
textarea:focus {
  outline: 0;
  border-color: #0c1228;
  transition: .4s
}

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: 1px dotted ButtonText
}

fieldset {
  padding: .35em .75em .625em
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal
}

textarea {
  overflow: auto;
  outline: none
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -moz-appearance: textfield;
  appearance: textfield
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

details {
  display: block
}

template {
  display: none
}

.heading1 {
  font-size: 80px;
  line-height: 88px;
  font-weight: 600
}

.heading2 {
  font-size: 56px;
  line-height: 68px;
  font-weight: 600
}

.heading3 {
  font-size: 44px;
  line-height: 52px;
  font-weight: 600
}

.heading4 {
  font-size: 32px;
  line-height: 40px;
  font-weight: 600
}

.heading5 {
  font-size: 24px;
  line-height: 32px;
  font-weight: 600
}

.heading6 {
  font-size: 20px;
  line-height: 28px;
  font-weight: 600
}

.text-title {
  font-size: 18px;
  line-height: 28px;
  font-weight: 500
}

.text-button {
  font-size: 16px;
  line-height: 24px;
  font-weight: 600
}

.text-button-sm {
  font-size: 14px;
  line-height: 22px;
  font-weight: 600
}

.body2 {
  font-size: 18px;
  line-height: 30px;
  font-weight: 400
}

.body2-sm {
  font-size: 16px;
  line-height: 24px;
  font-weight: 400
}

.caption1 {
  font-size: 14px;
  line-height: 22px;
  font-weight: 400
}

.caption2 {
  font-weight: 400
}

.caption2,
.text-label {
  font-size: 12px;
  line-height: 20px
}

.text-label {
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.1px
}

.bg-linear {
  background: linear-gradient(238deg, #faf7ef, #f4f6fc 99.66%)
}

.bg-linear-gradient-yellow {
  background: linear-gradient(180deg, #faf7ef 65%, #fff)
}

.bg-linear-gradient {
  background: linear-gradient(0deg, #fff, #e5eaff)
}

.bg-linear-blue {
  background: linear-gradient(85deg, #414e62, #805d5d 99.85%)
}

.bg-linear-singular-blue {
  background: linear-gradient(238deg, rgba(144, 200, 234, .259), rgba(0, 150, 214, .145) 99.66%)
}

.bg-linear-pink {
  background: linear-gradient(85deg, #231a87, #e13789 99.85%)
}

.bg-linear-purple {
  background: linear-gradient(180deg, #f5ecf9, hsla(40, 11%, 95%, 0))
}

.button-main {
  display: inline-block !important;
  padding: 12px 24px  !important;
  font-size: 16px  !important;
  line-height: 24px  !important;
  font-weight: 600  !important;
  color: #fff  !important;
  background-color: #0097d6  !important;
  border-radius: 4px  
  letter-spacing: 1.28px  !important;
  cursor: pointer  !important;
  transition: all .4s ease  !important
}

.button-main-cta  {
  display: flex !important;
  padding: 12px 24px  !important;
  font-size: 16px  !important;
  line-height: 24px  !important;
  font-weight: 600  !important;
  color: #fff  !important;
  background-color: #0097d6  !important;
  border-radius: 999px  !important;
  letter-spacing: 1.28px  !important;
  cursor: pointer  !important;
  transition: all .4s ease  !important;
  justify-content: center;
  align-items: center;
	 margin-top: 30px !important;
}

.button-main.text-button-sm {
  font-size: 14px  !important;
  line-height: 22px  !important;
  font-weight: 600  !important
}

.button-main:hover {
  background-color: #1533b4  !important
}

.button-main.bg-grey {
  color: #0c1228  !important
}

.button-main.bg-grey:hover {
  color: #fff  !important
}

.button-main.bg-yellow {
  color: #0c1228  !important
}

.button-main.bg-yellow:hover {
  color: #0c1228;  !important
  background-color: #ebb41d  !important
}

.button-main.bg-pink:hover {
  background-color: #bd1476
}

.button-main.bg-green:hover {
  background-color: #26fd5c
}

.button-main.bg-purple:hover {
  background-color: #5700c9
}

.select-block {
  position: relative
}

.select-block select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

.select-block svg {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%)
}

@media(max-width:1023.98px) {
  .heading1 {
    font-size: 62px;
    line-height: 74px
  }

  .heading2 {
    font-size: 48px;
    line-height: 58px
  }

  .heading3 {
    font-size: 36px;
    line-height: 48px
  }

  .heading4 {
    font-size: 28px;
    line-height: 40px
  }

  .heading5 {
    font-size: 22px;
    line-height: 32px
  }
}

@media(max-width:767.98px) {
  .heading1 {
    font-size: 32px;
    line-height: 42px
  }

  .heading2 {
    font-size: 28px;
    line-height: 36px
  }

  .heading3 {
    font-size: 24px;
    line-height: 34px
  }

  .heading4 {
    font-size: 22px;
    line-height: 32px
  }

  .heading5 {
    font-size: 20px;
    line-height: 30px
  }

  .heading6 {
    font-size: 18px;
    line-height: 28px
  }

  .text-title {
    font-size: 16px;
    line-height: 24px
  }

  .text-button {
    font-size: 14px;
    line-height: 20px
  }

  .text-button-sm {
    font-size: 13px;
    line-height: 20px
  }

  .body2 {
    font-size: 16px;
    line-height: 24px
  }

  .caption1 {
    font-size: 13px;
    line-height: 22px
  }

  .caption2 {
    font-size: 12px;
    line-height: 20px
  }

  .caption3 {
    font-size: 10px;
    line-height: 18px
  }

  .text-label {
    font-size: 12px;
    line-height: 18px
  }

  .button-main {
    font-size: 14px;
    line-height: 22px;
    padding: 12px 20px;
    border-radius: 6px
  }
}

.accordion>.card:not(:last-of-type) {
  border-bottom: 1px solid #e1e1e1
}

.accordion .card,
.accordion .card-header {
  background-color: transparent;
  border: 0
}

.accordion .card-header {
  padding: 1em 0;
  display: flex;
  justify-content: space-between;
  cursor: pointer;
  color: #111;
  font-size: 1.25em;
  font-weight: 600;
  line-height: normal
}

.accordion .card-body p {
  color: #111;
  font-size: .875em;
  font-weight: 400;
  line-height: 1.7142857143em
}

.section-about .box-circle {
  position: relative
}

.section-about .box-circle .text-box-circle {
  position: absolute;
  bottom: 42px;
  left: 0;
  border-radius: 50%;
  width: 152px;
  height: 152px
}

.section-about .box-circle .text-box-circle i {
  font-size: 36px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
}

.section-about .box-circle .text-box-circle i:before {
  color: #0c1228
}

.section-about .box-circle .text-box-circle .text-label {
  position: absolute;
  width: 100%;
  height: 100%;
  animation: circleScroll 30s linear infinite
}

.section-about .box-circle .text-box-circle .text-label span {
  position: absolute;
  left: 50%;
  transform-origin: 0 76px;
  font-size: 10px
}

@media(max-width:767.98px) {
  .section-about .box-circle .text-box-circle {
    display: none
  }
}

.section-about.style-four {
  background-attachment: fixed;
  background-image: url(/images/component/bg-about4.png);
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: cover
}

@keyframes circleScroll {
  0% {
    transform: rotate(0)
  }

  to {
    transform: rotate(1turn)
  }
}

.history-block .content-main {
  position: relative
}

.history-block .content-main:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  width: 1px;
  height: 100%;
  background-color: #e4e4e4;
  transform: translateX(-50%)
}

@media(max-width:639.98px) {
  .history-block .content-main:before {
    display: none
  }
}

.add-to-cart {
  position: relative;
  height: 3.125em;
  display: inline-block;
  padding: 0 1.875em 0 4.375em;
  border-radius: 999px;
  border: 1px solid #e1e1e1;
  cursor: pointer;
  transition: .3s ease
}

.add-to-cart.-dark,
.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.add-to-cart {
  background-color: #111
}

.add-to-cart.-dark h5,
.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.add-to-cart h5 {
  color: #fff
}

.add-to-cart.-disable {
  pointer-events: none;
  cursor: not-allowed;
  opacity: .5;
  padding: 0 4.375em 0 1.875em
}

.add-to-cart.-disable .blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button,
.add-to-cart.-disable .btn,
.add-to-cart.-disable .product-tab-slide__content .slick-arrow,
.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form .add-to-cart.-disable button,
.product-tab-slide__content .add-to-cart.-disable .slick-arrow {
  left: 100%;
  transform: translateX(-100%)
}

.add-to-cart .blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button,
.add-to-cart .btn,
.add-to-cart .product-tab-slide__content .slick-arrow,
.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form .add-to-cart button,
.product-tab-slide__content .add-to-cart .slick-arrow {
  position: absolute;
  left: 0;
  top: 0;
  transition: .3s ease
}

.add-to-cart h5 {
  color: #111;
  font-size: .8125em;
  font-weight: 600;
  line-height: 3.8461538462em;
  text-transform: uppercase
}

.add-to-cart:hover {
  padding: 0 4.375em 0 1.875em
}

.add-to-cart:hover .blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button,
.add-to-cart:hover .btn,
.add-to-cart:hover .product-tab-slide__content .slick-arrow,
.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form .add-to-cart:hover button,
.product-tab-slide__content .add-to-cart:hover .slick-arrow {
  left: 100%;
  transform: translateX(-100%)
}

@media(min-width:1280px) {
  .section-benefit.style-four .list .benefit-item:first-child {
    display: none
  }
}

.section-benefit.style-four .list .benefit-item .heading6 {
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  word-break: break-all;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis
}

.breadcrumb {
  text-align: center;
  background-image: url(/images/common/Breadcrumb/bg.png);
  background-size: cover;
  background-repeat: no-repeat;
  padding: 3.125em 0;
  margin-bottom: 6.25rem
}

.breadcrumb h2 {
  color: #111;
  font-size: 3.125em;
  font-weight: 700;
  line-height: normal;
  margin-bottom: .4em
}

.breadcrumb ul {
  list-style: none
}

.breadcrumb ul li {
  display: inline-block
}

.breadcrumb ul li.active {
  color: red
}

.breadcrumb ul li:last-child:after {
  display: none
}

.breadcrumb ul li:after {
  content: "/";
  margin: 0 .625em
}

.blog-sidebar__section {
  padding-bottom: 2.5em;
  margin-bottom: 2.5em;
  border-bottom: 1px solid #e1e1e1
}

.blog-sidebar__section:last-child {
  padding-bottom: 0;
  border-bottom: 0
}

.blog-sidebar__section.-search form {
  position: relative
}

.blog-sidebar__section.-search form input {
  background-color: #fff;
  border: 1px solid #e1e1e1;
  height: 3.125em;
  width: 100%;
  transition: .3s ease;
  -webkit-appearance: none;
  padding: 1.25rem;
  border-radius: 0;
  color: #111;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.125em
}

.blog-sidebar__section.-search form input:focus {
  outline: 0
}

.blog-sidebar__section.-search form input:-webkit-input-placeholder,
.blog-sidebar__section.-search form input::-webkit-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.125em
}

.blog-sidebar__section.-search form input:-moz-input-placeholder,
.blog-sidebar__section.-search form input::-moz-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.125em;
  line-height: -moz-block-height
}

.blog-sidebar__section.-search form input:-ms-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.125em
}

.blog-sidebar__section.-search form input::-ms-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.125em
}

.blog-sidebar__section.-search form input:-o-input-placeholder,
.blog-sidebar__section.-search form input::-o-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.125em
}

.blog-sidebar__section.-search form input:input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.125em
}

.blog-sidebar__section.-search form input::input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.125em
}

.blog-sidebar__section.-search form button {
  position: absolute;
  top: 50%;
  right: 1.25em;
  transform: translateY(-50%);
  color: #111;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer;
  background-color: transparent;
  border: 0
}

.blog-sidebar__section.-categories ul {
  list-style: none
}

.blog-sidebar__section.-categories ul li {
  margin-bottom: 1.25em
}

.blog-sidebar__section.-categories ul li a {
  color: #888;
  font-size: .9375em;
  font-weight: 500;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer
}

.blog-sidebar__section.-categories ul li a span {
  float: right
}

.blog-sidebar__section.-categories ul li.active a {
  color: #111
}

.blog-sidebar__section.-polular-post .post-card-three {
  margin-bottom: 1.875em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email] {
  background-color: #fff;
  border: 1px solid #e1e1e1;
  height: 3.2142857143em;
  width: 100%;
  transition: .3s ease;
  -webkit-appearance: none;
  padding: 1.25rem;
  border-radius: 0;
  color: #111;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.2142857143em;
  margin-bottom: 1.0714285714em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]:focus {
  outline: 0
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]:-webkit-input-placeholder,
.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]::-webkit-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.2142857143em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]:-moz-input-placeholder,
.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]::-moz-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.2142857143em;
  line-height: -moz-block-height
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]:-ms-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.2142857143em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]::-ms-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.2142857143em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]:-o-input-placeholder,
.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]::-o-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.2142857143em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]:input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.2142857143em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form input[type=email]::input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 3.2142857143em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form label {
  color: #111;
  font-size: .875em;
  font-weight: 400;
  line-height: 2em;
  display: block;
  margin-bottom: 1.25em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form label input {
  margin-right: .625em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button {
  height: 3.4615384615em !important;
  padding: 0 2.3076923077em !important
}

.blog-sidebar__section.-newsletter p {
  color: #111;
  font-size: .9375em;
  font-weight: 400;
  line-height: 1.8666666667em;
  margin-bottom: 1.3333333333em
}

.blog-sidebar__title {
  color: #111;
  font-size: 1.25em;
  font-weight: 700;
  line-height: normal;
  margin-bottom: 1.75em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button,
.btn,
.product-tab-slide__content .slick-arrow {
  transition: .3s ease;
  font-size: .8125em;
  line-height: 1.625em;
  text-align: center;
  text-decoration: none;
  width: auto;
  height: auto;
  display: inline-block;
  padding: 1.1538461538em 2.3076923077em;
  text-transform: uppercase;
  font-weight: 600;
  border: 0;
  letter-spacing: .1em;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-disable,
.btn.-disable,
.product-tab-slide__content .-disable.slick-arrow {
  pointer-events: none;
  cursor: not-allowed;
  opacity: .5
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-round,
.btn.-round,
.product-tab-slide__content .-round.slick-arrow {
  border-radius: 999px
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-underline,
.btn.-underline,
.product-tab-slide__content .-underline.slick-arrow {
  border: 0;
  padding: 0 0 .625em;
  position: relative;
  overflow: hidden
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-underline:after,
.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-underline:before,
.btn.-underline:after,
.btn.-underline:before,
.product-tab-slide__content .-underline.slick-arrow:after,
.product-tab-slide__content .-underline.slick-arrow:before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: red;
  position: absolute;
  left: 0;
  bottom: 0;
  transition: .3s ease
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-underline:after,
.btn.-underline:after,
.product-tab-slide__content .-underline.slick-arrow:after {
  left: -100%;
  background-color: #111
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-underline:hover:after,
.btn.-underline:hover:after,
.product-tab-slide__content .-underline.slick-arrow:hover:after {
  left: 0
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button:focus,
.btn:focus,
.product-tab-slide__content .slick-arrow:focus {
  outline: 0
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-red,
.btn.-red,
.product-tab-slide__content .-red.slick-arrow {
  background-color: red;
  color: #fff
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-red:hover,
.btn.-red:hover,
.product-tab-slide__content .-red.slick-arrow:hover {
  background-color: #c00
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-light-red,
.btn.-light-red,
.product-tab-slide__content .-light-red.slick-arrow {
  background-color: #f26460;
  color: #fff
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-light-red:hover,
.btn.-light-red:hover,
.product-tab-slide__content .-light-red.slick-arrow:hover {
  background-color: #ee3631
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button,
.btn.-dark,
.product-tab-slide__content .-dark.slick-arrow {
  background-color: #111;
  color: #fff
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button:hover,
.btn.-dark:hover,
.product-tab-slide__content .-dark.slick-arrow:hover {
  background-color: #000
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-light,
.btn.-light,
.product-tab-slide__content .-light.slick-arrow {
  background-color: #f5f5f5;
  color: #fff;
  color: #111
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-light:hover,
.btn.-light:hover,
.product-tab-slide__content .-light.slick-arrow:hover {
  background-color: #dcdcdc
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-white,
.btn.-white,
.product-tab-slide__content .-white.slick-arrow {
  background-color: #fff;
  color: #fff;
  border: 1px solid #e1e1e1;
  color: #111
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-white:hover,
.btn.-white:hover,
.product-tab-slide__content .-white.slick-arrow:hover {
  background-color: #e6e6e6
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-transparent,
.btn.-transparent,
.product-tab-slide__content .-transparent.slick-arrow {
  background-color: transparent;
  color: #fff;
  color: #111
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button.-transparent:hover,
.btn.-transparent:hover,
.product-tab-slide__content .-transparent.slick-arrow:hover {
  background-color: transparent
}

.scroll-to-top {
  transition: all .3s ease
}

.scroll-to-top:hover {
  background-color: #000 !important;
  color: #fff !important
}

.swiper-slide img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain
}

.section-contact.style-three .content-main {
  color: #0c1228
}

.section-contact.style-three .content-main .tag {
  color: #0c1228;
  background-color: #f4d118
}

.section-contact.style-three .list-features,
.section-contact.style-three .organizatio,
.section-contact.style-three .select {
  display: none
}

.section-contact.style-three .button-main {
  background-color: #f4d118;
  color: #0c1228
}

.section-contact.style-five .button-main,
.section-contact.style-five .content-main .tag {
  background-color: #63e483
}

.cta {
  padding: 5.625em 0;
  background-size: cover;
  background-position: 50%;
  background-repeat: no-repeat
}

.cta__form__detail .input-validator {
  margin-bottom: 1.875em
}

.cta__form__detail textarea {
  background-color: #fff;
  border: 1px solid #e1e1e1;
  height: 7.1428571429em;
  width: 100%;
  transition: .3s ease;
  -webkit-appearance: none;
  padding: 1.5384615385em;
  border-radius: 0;
  color: #111;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.cta__form__detail textarea:focus {
  outline: 0
}

.cta__form__detail textarea:-webkit-input-placeholder,
.cta__form__detail textarea::-webkit-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.cta__form__detail textarea:-moz-input-placeholder,
.cta__form__detail textarea::-moz-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto;
  line-height: -moz-block-height
}

.cta__form__detail textarea:-ms-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.cta__form__detail textarea::-ms-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.cta__form__detail textarea:-o-input-placeholder,
.cta__form__detail textarea::-o-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.cta__form__detail textarea:input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.cta__form__detail textarea::input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.cta__form__detail input {
  background-color: #fff;
  border: 1px solid #e1e1e1;
  height: 3.8461538462em;
  width: 100%;
  transition: .3s ease;
  -webkit-appearance: none;
  padding: 0 1.5384615385em;
  border-radius: 0;
  color: #111;
  font-size: .875em;
  font-weight: 400;
  line-height: 3.8461538462em
}

.cta__form__detail input:focus {
  outline: 0
}

.cta__form__detail input:-webkit-input-placeholder,
.cta__form__detail input::-webkit-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: 3.8461538462em
}

.cta__form__detail input:-moz-input-placeholder,
.cta__form__detail input::-moz-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: 3.8461538462em;
  line-height: -moz-block-height
}

.cta__form__detail input:-ms-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: 3.8461538462em
}

.cta__form__detail input::-ms-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: 3.8461538462em
}

.cta__form__detail input:-o-input-placeholder,
.cta__form__detail input::-o-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: 3.8461538462em
}

.cta__form__detail input:input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: 3.8461538462em
}

.cta__form__detail input::input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: 3.8461538462em
}

.cta__form__detail select {
  color: #111;
  font-size: .8125em;
  font-weight: 400;
  line-height: normal;
  height: 3.8461538462em;
  width: 100%;
  padding: 0 1.5384615385em;
  background-position: calc(100% - 20px)
}

.cta.-style-1 {
  background-attachment: fixed
}

.cta.-style-1 .cta__form {
  background-color: #fff;
  padding: 3.125em;
  text-align: center
}

.cta.-style-2 {
  background-attachment: fixed
}

.cta.-style-2 .cta__form h3 {
  color: #111;
  font-size: 2.625em;
  font-weight: 600;
  line-height: 1.3095238095em;
  text-align: center;
  margin-bottom: 2.0238095238em
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form .cta.-style-2 .cta__form button,
.cta.-style-2 .cta__form .blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button,
.cta.-style-2 .cta__form .btn,
.cta.-style-2 .cta__form .product-tab-slide__content .slick-arrow,
.product-tab-slide__content .cta.-style-2 .cta__form .slick-arrow {
  width: 100%
}

.cart-items__wrapper {
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  background-color: #fff;
  z-index: 101;
  padding: 2.5em;
  max-width: 90vw;
  display: flex;
  flex-direction: column;
  overflow-y: auto
}

@media only screen and (max-width:768px) {
  .cart-items__wrapper {
    font-size: .875em
  }
}

.cart-items__wrapper h2 {
  color: #111;
  font-size: 1.25em;
  font-weight: 600;
  line-height: normal;
  margin-bottom: 1.5em
}

.cart-items__wrapper .empty-noti {
  color: #111;
  font-size: 1.875em;
  font-weight: 400;
  line-height: normal;
  padding: 3.125em 0
}

.cart-items__wrapper .cart-item {
  display: flex;
  align-items: center;
  padding-bottom: 1.875em;
  margin-bottom: 1.875em;
  border-bottom: 1px solid #e1e1e1
}

.cart-items__wrapper .cart-item:last-child {
  padding-bottom: 0;
  border: 0
}

.cart-items__wrapper .cart-item__image {
  margin-right: 1.5625em
}

.cart-items__wrapper .cart-item__image img {
  height: 5em;
  width: 5em;
  -o-object-fit: cover;
  object-fit: cover
	
}

.cart-items__wrapper .cart-item__info {
  margin-right: 1.875em
}

.cart-items__wrapper .cart-item__info a {
  color: #111;
  font-size: .9375em;
  font-weight: 500;
  text-decoration: none;
  line-height: 1.6em;
  transition: .3s ease;
  cursor: pointer;
  display: block;
  margin-bottom: .6666666667em
}

.cart-items__wrapper .cart-item__info h5 {
  color: #111;
  font-size: .9375em;
  font-weight: 600;
  line-height: normal;
  display: block;
  margin-bottom: 1em
}

.cart-items__wrapper .cart-item__info p {
  color: #888;
  font-size: .8125em;
  font-weight: 400;
  line-height: normal
}

.cart-items__wrapper .cart-item__remove {
  color: #888;
  font-size: .8571428571em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1.25em;
  transition: .3s ease;
  cursor: pointer;
  border: 1px solid #888;
  height: 1.25em;
  width: 1.25em;
  text-align: center;
  border-radius: 999px;
  margin-left: auto
}

.cart-items__wrapper .cart-item__remove:hover {
  border-color: red
}

.cart-items__wrapper .cart-item__remove:hover svg {
  color: red
}

.cart-items__wrapper .cart-items__total {
  padding-top: 1.875em;
  border-top: 1px solid #e1e1e1;
  margin-top: auto
}

.cart-items__wrapper .cart-items__total__price {
  display: flex;
  justify-content: space-between;
  color: #111;
  font-size: .9375em;
  font-weight: 600;
  line-height: normal;
  margin-bottom: 1.875em
}

.cart-items__wrapper .cart-items__total__price span {
  color: red
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form .cart-items__wrapper .cart-items__total__buttons button:first-child,
.cart-items__wrapper .cart-items__total__buttons .blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button:first-child,
.cart-items__wrapper .cart-items__total__buttons .btn:first-child,
.cart-items__wrapper .cart-items__total__buttons .product-tab-slide__content .slick-arrow:first-child,
.product-tab-slide__content .cart-items__wrapper .cart-items__total__buttons .slick-arrow:first-child {
  margin-bottom: .9375em
}

.loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center
}

.loading-overlay img {
  height: 12.5em;
  width: 12.5em;
  -o-object-fit: cover;
  object-fit: cover
}

#modal .modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 101;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 80vw;
  overflow-y: auto;
  background-color: #fff
}

#modal .modal iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

#modal .modal .modal__wrapper {
  width: 100%;
  max-height: 80vh
}

.modal-video-block {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: all .4s ease;
  background: rgba(0, 0, 0, .6);
  z-index: 1000
}

.modal-video-block:has(.modal-video-main.open) {
  opacity: 1;
  visibility: visible
}

.modal-video-block .modal-video-main {
  position: absolute;
  width: 1075px;
  height: 605px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--white);
  transition: all .5s ease;
  opacity: 0;
  visibility: hidden;
  overflow: auto
}

.modal-video-block .modal-video-main.open {
  opacity: 1;
  visibility: visible
}

.modal-video-block .modal-video-main iframe {
  width: 100%;
  height: 100%
}

@media(max-width:1400px) {
  .modal-video-block .modal-video-main {
    width: calc(100vw - 120px);
    height: 70vh
  }
}

@media(max-width:640px) {
  .modal-video-block .modal-video-main {
    height: 30vh;
    width: calc(100vw - 40px)
  }
}

.list-pagination .pagination {
  display: flex;
  align-items: center;
  gap: 10px
}

.list-pagination li {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  transition: all .3s ease
}

.list-pagination li a,
.list-pagination li button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 16px;
  line-height: 26px;
  font-weight: 500
}

.list-pagination li.active,
.list-pagination li:hover {
  background-color: #0097d6;
  color: #fff
}

.list-pagination li.disabled {
  display: none
}

@media(max-width:767.99px) {
  .list-pagination li {
    width: 36px;
    height: 36px
  }

  .list-pagination li a {
    font-size: 14px;
    line-height: 24px
  }
}

.swiper .swiper-pagination .swiper-pagination-bullet {
  position: relative;
  margin: 0 8px !important;
  background: transparent;
  border: 1px solid #0c1228;
  opacity: 1 !important;
  transition: all .5s ease
}

.swiper .swiper-pagination .swiper-pagination-bullet:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 6px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border: 1px solid transparent;
  transition: all .5s ease;
  border-radius: 50%
}

.swiper .swiper-pagination .swiper-pagination-bullet-active {
  background: #0c1228;
  transform: scale(1.2)
}

.swiper .swiper-pagination .swiper-pagination-bullet-active:before {
  border-color: #0c1228
}

.swiper.style-white .swiper-pagination .swiper-pagination-bullet {
  border: 1px solid #fff
}

.swiper.style-white .swiper-pagination .swiper-pagination-bullet-active {
  background: #fff
}

.swiper.style-white .swiper-pagination .swiper-pagination-bullet-active:before {
  border-color: #fff
}

.swiper.style-four .swiper-wrapper .swiper-slide {
  height: 100% !important
}

.swiper.style-testimonial-five .swiper-pagination,
.swiper.style-testimonial-four .swiper-pagination {
  text-align: left
}

.swiper.style-slider .swiper-pagination {
  bottom: 24px
}

.swiper.style-section {
  padding-bottom: 52px
}

.swiper.style-section .swiper-pagination {
  bottom: 0
}

.swiper.style-testimonial .swiper-pagination {
  text-align: left;
  padding-left: 28px
}

@media(min-width:1024px) {
  .swiper.style-testimonial .swiper-pagination {
    padding-left: 56px
  }
}

.swiper.style-testimonial .swiper-pagination {
  bottom: 0
}

.product-item .name {
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis
}

.product-item.style-cart .name {
  -webkit-line-clamp: 2
}

.product-item .product__thumb__actions {
  visibility: hidden;
  left: 50%;
  bottom: 0;
  opacity: 0;
  transform: translate(-50%, 60px);
  transition: all .4s ease
}

.product-item:hover .product__thumb__actions {
  visibility: visible;
  opacity: 1;
  transform: translate(-50%, -20px)
}

@media(max-width:1024px) {
  .product-item .name {
    -webkit-line-clamp: 2
  }

  .product-item .product__thumb__actions {
    visibility: visible;
    opacity: 1;
    transform: translate(-50%, -10px)
  }
}

.quantity-controller {
  display: flex;
  align-items: center;
  justify-content: space-between
}

.quantity-controller.-border {
  border: 1px solid #e4e4e4
}

.quantity-controller.-round {
  border-radius: 999px
}

.quantity-controller__btn {
  color: #888;
  font-size: 1.25em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none
}

.quantity-controller__btn.disabled {
  opacity: .5;
  pointer-events: none
}

.quantity-controller__number {
  color: #111;
  font-size: .9375em;
  font-weight: 700;
  line-height: normal;
  text-align: center
}

@media only screen and (max-width:768px) {
  .quantity-controller__number {
    padding: 0 .9375em
  }
}

.top-nav {
  position: relative;
  z-index: 3
}

.top-nav .choose-type {
  cursor: pointer
}

.top-nav .choose-type:has(.list-option.open) {
  background-color: #0097d6;
  color: #fff
}

.top-nav .choose-type .list-option {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, 20px);
  opacity: 0;
  visibility: hidden;
  transition: .4s;
  box-shadow: 0 4px 10px 3px rgba(0, 0, 0, .15)
}

.top-nav .choose-type .list-option:before {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  background-color: #fff;
  transform: translateX(-50%) rotate(45deg);
  left: 50%;
  top: -5px;
  z-index: -1
}

.top-nav .choose-type .list-option li {
  padding: 8px 16px;
  cursor: pointer;
  transition: .3s
}

.top-nav .choose-type .list-option li:hover {
  background: rgba(0, 0, 0, .6);
  color: #fff
}

.top-nav .choose-type .list-option.open {
  transform: translate(-50%, 10px);
  opacity: 1;
  visibility: visible
}

.top-nav.style-three .choose-type:has(.list-option.open) {
  background-color: #fff;
  color: #0c1228
}

.customed-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
  padding-right: 2.1875em;
  font-size: 1em;
  color: #111;
  cursor: pointer;
  border: 1px solid #e1e1e1;
  background-image: url(/images/common/Select/ic-down.png);
  background-position: 100%;
  background-repeat: no-repeat;
  background-size: 12px;
  background-color: #fff
}

.customed-select option {
  color: #111;
  font-size: 1em;
  font-weight: 400;
  line-height: normal;
  outline: 0;
  border: 0
}

.customed-select option[disable] {
  color: #888
}

.customed-select.-borderless {
  border: 0;
  background-color: transparent
}

.customed-select.-white {
  color: #fff;
  background-image: url(/images/common/Select/ic-down-white.png)
}

.customed-select.-white option {
  color: #111;
  font-size: 1em;
  font-weight: 400;
  line-height: normal
}

.social-icons.-white a {
  color: #fff
}

.social-icons.-border>li {
  margin: 0 .3125em
}

.social-icons.-border>li a {
  height: 2.8125em;
  width: 2.8125em;
  text-align: center;
  line-height: 2.8125em;
  border-radius: 999px;
  border: 1px solid #e1e1e1;
  display: inline-block
}

.social-icons.-border>li a:hover {
  background-color: red;
  color: #fff;
  border-color: transparent
}

.social-icons.-border--light-bg>li a {
  background-color: #e1e1e1
}

.social-icons>li {
  display: inline-block;
  margin: 0 .625em
}

.social-icons>li:first-child {
  margin-left: 0;
  padding-left: 0
}

.social-icons>li:last-child {
  margin-right: 0;
  padding-right: 0
}

.social-icons>li a {
  color: #111;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer
}

.tag {
  display: inline-block;
  padding: 4px 12px;
  background-color: rgba(39, 75, 227, .1);
  color: #0097d6;
  border-radius: 4px
}

#overlay .overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, .3);
  z-index: 100
}

.rate i {
  color: star;
  font-size: .75em
}

.slick-disabled {
  pointer-events: none;
  cursor: default;
  opacity: .9;
  color: #e1e1e1 !important
}

.input-validator span.input-error {
  color: darkred;
  font-size: .8125em;
  font-weight: 400;
  line-height: normal;
  margin-top: .9375em;
  display: block;
  text-align: right;
  font-style: italic
}

.five-col {
  flex: 1 1 20%;
  max-width: 20%;
  padding-left: 15px;
  padding-right: 15px
}

.w-100 {
  width: 100%
}

.text-right {
  text-align: right
}

.hover-underline {
  position: relative
}

.hover-underline:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #0c1228;
  transition: all .3s ease
}

.hover-underline.underline-white:before {
  background-color: #fff
}

.hover-underline.underline-green:before {
  background-color: #63e483
}

.hover-underline.style-2px:before {
  height: 2px
}

.hover-underline:hover:before {
  width: 100%
}

.blog-item .desc,
.blog-item .title {
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis
}

@media(min-width:640px) {
  .blog-item.style-list .desc {
    -webkit-line-clamp: 3
  }
}

.blog-item.style-modern .main-item {
  border-bottom: 4px solid transparent
}

.blog-item.style-modern .main-item:hover {
  border-bottom: 4px solid #0097d6;
  background-color: rgba(12, 18, 40, .5)
}

.blog-item.style-modern .main-item:hover .bg-img {
  opacity: 1
}

.blog-item.style-modern .main-item:hover .infor .tag {
  color: #0097d6;
  background-color: #fff
}

.blog-item.style-modern .main-item:hover .infor .date,
.blog-item.style-modern .main-item:hover .infor .desc,
.blog-item.style-modern .main-item:hover .infor .title {
  color: #fff
}

.blog-detail-page.style-standard .list .blog-item,
.blog-layout.style-standard .list .blog-item {
  padding-bottom: 40px;
  border-bottom: 1px solid #e4e4e4;
  border-radius: 0 0 8px 8px
}

@media(max-width:640px) {

  .blog-detail-page.style-standard .list .blog-item,
  .blog-layout.style-standard .list .blog-item {
    padding-bottom: 24px
  }
}

.blog-detail-page.style-modern,
.blog-detail-page.style-standard,
.blog-layout.style-modern,
.blog-layout.style-standard {
  padding-top: 32px
}

@media(min-width:640px) {

  .blog-detail-page.style-modern,
  .blog-detail-page.style-standard,
  .blog-layout.style-modern,
  .blog-layout.style-standard {
    padding-top: 48px
  }
}

@media(min-width:1024px) {

  .blog-detail-page.style-modern,
  .blog-detail-page.style-standard,
  .blog-layout.style-modern,
  .blog-layout.style-standard {
    padding-top: 60px
  }
}

.blog-detail-page .blog-sidebar .list-nav .nav-item,
.blog-layout .blog-sidebar .list-nav .nav-item {
  position: relative
}

.blog-detail-page .blog-sidebar .list-nav .nav-item:before,
.blog-layout .blog-sidebar .list-nav .nav-item:before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0;
  height: 2px;
  background-color: #0097d6;
  transition: all .3s ease
}

.blog-detail-page .blog-sidebar .list-nav .nav-item.active,
.blog-detail-page .blog-sidebar .list-nav .nav-item:hover,
.blog-layout .blog-sidebar .list-nav .nav-item.active,
.blog-layout .blog-sidebar .list-nav .nav-item:hover {
  color: #0097d6
}

.blog-detail-page .blog-sidebar .list-nav .nav-item.active:before,
.blog-detail-page .blog-sidebar .list-nav .nav-item:hover:before,
.blog-layout .blog-sidebar .list-nav .nav-item.active:before,
.blog-layout .blog-sidebar .list-nav .nav-item:hover:before {
  width: 100%
}

.blog-detail-page .blog-sidebar .list-tag .active,
.blog-layout .blog-sidebar .list-tag .active {
  color: #fff;
  background-color: #0097d6
}

.blog-detail-page .list-reply,
.blog-layout .list-reply {
  height: 0;
  overflow: hidden;
  transform: translateY(-100%);
  transition: all .4s ease
}

.blog-detail-page .list-reply.open,
.blog-layout .list-reply.open {
  height: auto;
  transform: translateY(0)
}

.blog-detail-page.style-detail-two .paragraph-heading .heading-infor,
.blog-layout.style-detail-two .paragraph-heading .heading-infor {
  justify-content: start
}

.blog-detail-page.style-detail-two .paragraph-heading .heading3,
.blog-layout.style-detail-two .paragraph-heading .heading3 {
  text-align: left
}

.section-brand__wrapper {
  background-color: #feefef;
  margin-bottom: 6.25rem;
  padding: 3.125em
}

.section-brand.style-subpage .list {
  width: 100% !important
}

.category-card {
  position: relative;
  height: 22.5em;
  display: block;
  text-decoration: none;
  overflow: hidden
}

.category-card:hover .category-card__background {
  transform: scale(1.05)
}

.category-card__background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  transition: .5s ease-out;
  transform-origin: bottom right
}

.category-card__background img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.category-card__content {
  padding: 3.125em
}

.category-card__content h3 {
  color: #111;
  font-size: 1.875em;
  font-weight: 600;
  line-height: normal;
  margin-bottom: .6666666667em
}

.category-card__content h5 {
  color: #111;
  font-size: 1em;
  font-weight: 500;
  line-height: normal
}

.category-one {
  margin-bottom: 6.25rem
}

.case-studies-block .desc,
.case-studies-block .title {
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis
}

.case-studies-block.style-four .case-studies-item .bg-img img,
.case-studies-block.style-hide-info .case-studies-item .bg-img img {
  transition: all .5s ease
}

.case-studies-block.style-four .case-studies-item .info,
.case-studies-block.style-hide-info .case-studies-item .info {
  transition: all .5s ease;
  transform: translateY(300px)
}

.case-studies-block.style-four .case-studies-item:hover .bg-img img,
.case-studies-block.style-hide-info .case-studies-item:hover .bg-img img {
  transform: scale(1.05)
}

.case-studies-block.style-four .case-studies-item:hover .info,
.case-studies-block.style-hide-info .case-studies-item:hover .info {
  transform: translateY(0)
}

@media(min-width:768px) {

  .case-studies-block .list .style-border,
  .case-studies-block .list.style-border {
    margin-left: -24px;
    margin-right: -24px
  }
}

.section-stories .title {
  background: rgba(247, 243, 249, .7);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px)
}

.case-detail-two-content .testimonial-block {
  padding-bottom: 0
}

.case-detail-two-content .testimonial-block .container {
  padding-left: 0;
  padding-right: 0
}

.case-detail-two-content .testimonial-block .container>div {
  padding: 0
}

.case-detail-two-content .testimonial-block .container>div>div,
.case-detail-two-content .testimonial-block .container>div>div>div {
  width: 100%
}

.case-detail-two-content .testimonial-block .list-avatar {
  display: none
}

@media(max-width:1024px) {
  .case-detail-two-content .box-fixed {
    position: relative !important;
    top: unset !important;
    bottom: unset !important
  }
}

.section-couter.style-two {
  background-attachment: fixed;
  background-image: url(/images/component/bg-counter2.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50%
}

.footer-block.style-three {
  background-color: #0c1228;
  color: #fff
}

.footer-block.style-three .text-surface1 {
  color: #fff
}

.footer-block.style-four {
  background-color: #1a1a1a
}

.question-item .question-item-main {
  position: relative
}

.question-item .question-item-main svg {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  transition: all .5s ease
}

.question-item .question-item-main .icon-plus {
  opacity: 1
}

.question-item .question-item-main .icon-minus {
  opacity: 0
}

.question-item .content-question {
  transition: all .5s ease-in-out;
  max-height: 0;
  overflow: hidden
}

.question-item.open .question-item-main .icon-plus {
  opacity: 0
}

.question-item.open .question-item-main .icon-minus {
  opacity: 1
}

.question-item.open .content-question {
  max-height: 150px
}

.list-faqs .question-item:last-child {
  border-bottom: none
}

.header {
  min-height: .1px
}

.header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99;
  animation: example 1s cubic-bezier(.445, .05, .55, .95) forwards;
  box-shadow: 0 2px 10px 0 hsla(240, 2%, 88%, .5)
}

.header.fixed .menu {
  border-bottom: 0;
  background-color: #fff
}

.header.fixed .menu.-style-5 {
  background-color: #fff;
  box-shadow: 0 2px 10px 0 hsla(240, 2%, 88%, .5)
}

@keyframes example {
  0% {
    transform: translateY(-100px)
  }

  to {
    transform: translateY(0)
  }
}

.instagram-one {
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 34.375em
}

.instagram-one__background {
  display: grid;
  grid-template-columns: repeat(7, 1fr)
}

.instagram-one__background__item {
  position: relative;
  transition: .3s ease
}

.instagram-one__background__item:hover {
  opacity: .7
}

.instagram-one__background__item img {
  height: 100%;
  width: auto;
  -o-object-fit: cover;
  object-fit: cover
}

.instagram-one__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  background-color: #fff;
  padding: 1.875em 3.125em;
  text-decoration: none;
  max-width: 100%;
  margin: 0 15px
}

.instagram-one__content:hover h5 {
  color: red
}

.instagram-one__content i {
  font-size: 2.25em;
  color: #888;
  margin-bottom: .5555555556em
}

.instagram-one__content h5 {
  color: #111;
  font-size: 1.25em;
  font-weight: 600;
  line-height: normal;
  margin-bottom: .75em;
  transition: .3s ease
}

.instagram-one__content p {
  color: #888;
  font-size: .9375em;
  font-weight: 400;
  line-height: normal
}

.instagram-two .slider-item {
  display: block;
  position: relative
}

.instagram-two .slider-item:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: hsla(0, 0%, 100%, .3);
  opacity: 0;
  transition: .3s ease
}

.instagram-two .slider-item:hover:after {
  opacity: 1
}

.instagram-two .slider-item img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.section-industry.style-five {
  background-attachment: fixed;
  background-image: url(/images/component/industry5.png);
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover
}

.section-industry.style-second {
  background-image: url(/images/component/industry5-below.png)
}

.menu {
  background-color: #fff;
  position: relative
}

@media only screen and (max-width:1280px) {
  .menu {
    font-size: 15px
  }
}

@media only screen and (max-width:1024px) {
  .menu {
    padding: .9375em 0
  }
}

@media only screen and (max-width:768px) {
  .menu {
    font-size: 14px
  }
}

.menu__wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  height: 74px
}

@media only screen and (max-width:1024px) {
  .menu__wrapper {
    height: 50px
  }

  .menu__wrapper .navigator {
    display: none
  }
}

.menu__wrapper .navigator.-white>ul>li>a {
  color: #fff;
  font-weight: 400
}

.menu__wrapper .navigator.-white>ul>li>a:hover {
  color: #fff
}

.menu__wrapper .navigator>ul {
  list-style: none;
  font-size: 0
}

.menu__wrapper .navigator>ul>li {
  display: inline-block;
  margin: 0 12px
}

.menu__wrapper .navigator>ul>li.relative {
  position: relative
}

.menu__wrapper .navigator>ul>li:first-child {
  margin-left: 0;
  padding-left: 0
}

.menu__wrapper .navigator>ul>li:last-child {
  margin-right: 0;
  padding-right: 0
}

.menu__wrapper .navigator>ul>li.active>a:after,
.menu__wrapper .navigator>ul>li:hover>a:after {
  width: 100%
}

.menu__wrapper .navigator>ul>li>a {
  color: #0c1228;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  line-height: 24px;
  transition: .3s ease;
  cursor: pointer;
  display: block;
  position: relative
}

.menu__wrapper .navigator>ul>li>a:before {
  content: "";
  position: absolute;
  top: 20px;
  left: 0;
  background-color: transparent;
  height: 30px;
  width: 100%
}

.menu__wrapper .navigator>ul>li>a:after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  background-color: #0097d6;
  height: 2px;
  width: 0;
  z-index: 0;
  transition: .3s ease
}

.menu__wrapper .navigator>ul>li .dropable-icon {
  margin-left: .9375em;
  font-size: .8125em
}

.menu__wrapper .navigator>ul>li:hover .dropdown-menu {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
  pointer-events: all
}

.menu__wrapper .navigator>ul>li .menu-services-item {
  padding: 8px 20px !important
}

.menu__wrapper .navigator>ul>li .dropdown-menu {
  position: absolute;
  top: 49px;
  left: -40px;
  background-color: #fff;
  padding: 18px 20px;
  border-radius: 0 0 16px 16px;
  box-shadow: -2px 2px 81px -27px rgba(0, 0, 0, .3);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(10px);
  transition: transform .4s ease, opacity .4s ease, visibility .4s ease;
  z-index: 99
}

.menu__wrapper .navigator>ul>li .dropdown-menu.style-pages {
  width: 400px
}

.menu__wrapper .navigator>ul>li .dropdown-menu li {
  list-style: none;
  border-radius: 8px
}

.menu__wrapper .navigator>ul>li .dropdown-menu li a {
  color: #0c1228;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  line-height: 24px;
  transition: .3s ease;
  cursor: pointer;
  position: relative;
  display: inline-flex;
  padding: 17px 20px;
  white-space: nowrap;
  border-radius: 8px;
  transition: all .3s ease
}

.menu__wrapper .navigator>ul>li .dropdown-menu li a:after {
  content: "";
  position: absolute;
  bottom: 17px;
  left: 20px;
  background-color: #0c1228;
  height: 1px;
  width: 0;
  z-index: 0;
  transition: .3s ease
}

.menu__wrapper .navigator>ul>li .dropdown-menu li.active a:after,
.menu__wrapper .navigator>ul>li .dropdown-menu li:hover a:after {
  width: calc(100% - 40px)
}

.menu__wrapper .navigator>ul>li .dropdown-menu li:hover {
  background: linear-gradient(238deg, #f4f6fc, #faf7ef 99.66%)
}

.menu__wrapper .navigator>ul>li .dropdown-menu.-wide {
  width: 100%;
  padding: 24px;
  top: 74px;
  left: 0;
  border-radius: 0 0 24px 24px
}

.menu__wrapper .navigator>ul>li .dropdown-menu.-wide ul li a:after {
  left: 52px
}

.menu__wrapper .navigator>ul>li .dropdown-menu.-wide ul li.active a:after,
.menu__wrapper .navigator>ul>li .dropdown-menu.-wide ul li:hover a:after {
  width: calc(100% - 72px)
}

.menu__wrapper .navigator>ul>li .dropdown-menu.-pages {
  width: 368px
}

.menu__wrapper__functions {
  display: flex;
  align-items: center
}

.menu__wrapper__functions.-white .menu-icon.-navbar .bar {
  background-color: #fff
}

.menu__wrapper__functions.-white .menu__cart .menu-icon span {
  color: red
}

.menu__wrapper__functions.-white .menu__cart h5,
.menu__wrapper__functions.-white .menu__cart h5 span {
  color: #fff
}

.menu__wrapper__functions .menu-icon {
  margin-right: 24px
}

.menu__wrapper__functions .menu-icon img {
  height: 1.5625em;
  width: 1.5625em;
  -o-object-fit: contain;
  object-fit: contain
}

.menu__wrapper__functions .menu-icon.-cart {
  position: relative
}

.menu__wrapper__functions .menu-icon.-cart span {
  color: #fff;
  font-size: .625em;
  font-weight: 400;
  line-height: normal;
  position: absolute;
  top: -4px;
  right: -5px;
  background-color: #0097d6;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center
}

.menu__wrapper__functions .menu-icon.-navbar {
  display: none;
  margin-right: 0
}

.menu__wrapper__functions .menu-icon.-navbar .bar {
  height: .125em;
  width: 1.5625em;
  margin-bottom: .3125em;
  background-color: #000
}

.menu__wrapper__functions .menu-icon.-navbar .bar:last-child {
  margin-bottom: 0
}

@media only screen and (max-width:1024px) {
  .menu__wrapper__functions .menu-icon.-navbar {
    display: block
  }

  .menu__wrapper__functions .menu-icon.-search,
  .menu__wrapper__functions .menu__cart h5 {
    display: none
  }
}

.menu__wrapper .search-box {
  position: absolute;
  right: 0;
  width: 500px
}

.menu__wrapper .search-box form {
  position: relative;
  z-index: 1
}

.menu__wrapper .search-box form input {
  background-color: #fff;
  height: auto;
  width: 100%;
  transition: .3s ease;
  -webkit-appearance: none;
  padding: 1.25rem;
  border-radius: 0;
  color: #111;
  font-size: .8125rem;
  font-weight: 400;
  line-height: auto;
  border: 0;
  box-shadow: 1px 1px 9px rgba(0, 0, 0, .141)
}

.menu__wrapper .search-box form input:focus {
  outline: 0
}

.menu__wrapper .search-box form input:-webkit-input-placeholder,
.menu__wrapper .search-box form input::-webkit-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: auto
}

.menu__wrapper .search-box form input:-moz-input-placeholder,
.menu__wrapper .search-box form input::-moz-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: auto;
  line-height: -moz-block-height
}

.menu__wrapper .search-box form input:-ms-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: auto
}

.menu__wrapper .search-box form input::-ms-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: auto
}

.menu__wrapper .search-box form input:-o-input-placeholder,
.menu__wrapper .search-box form input::-o-input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: auto
}

.menu__wrapper .search-box form input:input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: auto
}

.menu__wrapper .search-box form input::input-placeholder {
  color: #888;
  font-size: .8125rem;
  font-weight: 400;
  line-height: auto
}

.menu__wrapper .search-box form button {
  position: absolute;
  border: 0;
  background-color: transparent;
  right: .9375em;
  top: 50%;
  transform: translateY(-50%)
}

.menu.-style-2 {
  position: absolute;
  top: 44px;
  left: 0;
  width: 100%;
  height: 74px;
  background-color: transparent;
  z-index: 2
}

.menu.-style-2 .menu__wrapper .navigator>ul>li>a {
  color: #fff
}

.menu.-style-2 .list__button .bg-grey {
  background: hsla(0, 0%, 100%, .1)
}

.menu.-style-2 .list__button .bg-grey .text-button {
  color: #fff
}

.menu.-style-2 .list__button .button-main {
  display: none
}

.menu.-style-2 .list__icons .menu-icon {
  color: #fff
}

.menu.-style-2 .navigator.style-three>ul>li>a:after {
  background-color: #f4d118
}

.menu.-style-2 .navigator.style-three .bg-blue,
.menu.-style-2 .navigator.style-three .button-main {
  background-color: #f4d118;
  color: #0c1228
}

.menu.-style-2 .navigator.style-three .bg-blue:hover,
.menu.-style-2 .navigator.style-three .button-main:hover {
  background-color: #ebb41d
}

.menu.-style-2 .navigator.style-three .text-blue {
  color: #f4d118
}

.menu.-style-3 .list__icons .cart__quantity {
  background-color: #f4d118;
  color: #0c1228
}

.menu.-style-3 .list__icons .button-main {
  background-color: #fff;
  color: #0c1228
}

.menu.-style-3 .list__icons .button-main:hover {
  background-color: #f4d118;
  color: #0c1228
}

.menu.-style-4 {
  top: 0
}

.menu.-style-4 .navigator>ul>li>a:after {
  background-color: #e13789
}

.menu.-style-4 .bg-blue,
.menu.-style-4 .button-main {
  background-color: #e13789;
  color: #fff
}

.menu.-style-4 .bg-blue:hover,
.menu.-style-4 .button-main:hover {
  background-color: #bd1476
}

.menu.-style-4 .text-blue {
  color: #e13789
}

.menu.-style-4 .list__icons .button-main,
.menu.-style-4 .list__icons .cart__quantity {
  background-color: #e13789;
  color: #fff
}

.menu.-style-4 .list__icons .button-main:hover {
  background-color: #bd1476
}

.menu.-style-5 {
  top: 0
}

.menu.-style-5 .navigator>ul>li>a:after {
  background-color: #63e483
}

.menu.-style-5 .bg-blue,
.menu.-style-5 .button-main {
  background-color: #63e483;
  color: #0c1228
}

.menu.-style-5 .bg-blue:hover,
.menu.-style-5 .button-main:hover {
  background-color: #26fd5c
}

.menu.-style-5 .text-blue {
  color: #63e483
}

.menu.-style-5 .list__button>div {
  background: transparent !important;
  position: relative
}

.menu.-style-5 .list__button>div:after,
.menu.-style-5 .list__button>div:before {
  content: "";
  position: absolute;
  top: 50%;
  width: 1px;
  height: 70%;
  transform: translateY(-50%) rotate(20deg);
  background-color: #63e483
}

.menu.-style-5 .list__button>div:before {
  left: -2px
}

.menu.-style-5 .list__button>div:after {
  right: -4px
}

.menu.-style-5 .list__button .icon {
  color: #fff;
  background-color: transparent
}

.menu.-style-5 .list__icons .cart__quantity {
  background-color: #63e483;
  color: #0c1228
}

.menu.-style-6 {
  top: 0
}

.menu.-style-6 .menu__wrapper .navigator>ul>li>a {
  color: #0c1228
}

.menu.-style-6 .bg-blue,
.menu.-style-6 .button-main,
.menu.-style-6 .menu__wrapper .navigator>ul>li>a:after {
  background-color: #5b45f3
}

.menu.-style-6 .bg-blue:hover,
.menu.-style-6 .button-main:hover {
  background-color: #5700c9
}

.menu.-style-6 .text-blue {
  color: #5b45f3
}

.menu.-style-6 .list__icons svg {
  color: #0c1228
}

.menu.-style-6 .list__icons .cart__quantity {
  background-color: #5b45f3
}

.menu.-style-7 {
  top: 0
}

.menu.-style-7 .menu__wrapper .navigator>ul>li>a {
  color: #0c1228
}

.navigation-sidebar {
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  background-color: #fff;
  z-index: 101;
  padding: 2.5em;
  width: 22.5em;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  max-width: 90vw
}

@media only screen and (max-width:576px) {
  .navigation-sidebar {
    width: 80vw
  }
}

.navigation-sidebar .search-box {
  margin-bottom: 1.875em
}

.navigation-sidebar .search-box form {
  position: relative
}

.navigation-sidebar .search-box form input {
  background-color: #fff;
  height: auto;
  width: 100%;
  transition: .3s ease;
  -webkit-appearance: none;
  padding: 1.0714285714em;
  border-radius: 0;
  color: #111;
  font-size: .875em;
  font-weight: 400;
  line-height: auto;
  border: 0;
  box-shadow: 1px 1px 9px rgba(0, 0, 0, .141)
}

.navigation-sidebar .search-box form input:focus {
  outline: 0
}

.navigation-sidebar .search-box form input:-webkit-input-placeholder,
.navigation-sidebar .search-box form input::-webkit-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.navigation-sidebar .search-box form input:-moz-input-placeholder,
.navigation-sidebar .search-box form input::-moz-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto;
  line-height: -moz-block-height
}

.navigation-sidebar .search-box form input:-ms-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.navigation-sidebar .search-box form input::-ms-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.navigation-sidebar .search-box form input:-o-input-placeholder,
.navigation-sidebar .search-box form input::-o-input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.navigation-sidebar .search-box form input:input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.navigation-sidebar .search-box form input::input-placeholder {
  color: #888;
  font-size: .875em;
  font-weight: 400;
  line-height: auto
}

.navigation-sidebar .search-box form button {
  position: absolute;
  border: 0;
  background-color: transparent;
  right: .625em;
  top: 50%;
  transform: translateY(-50%)
}

.navigation-sidebar .search-box form button img {
  height: .9375em;
  width: .9375em;
  -o-object-fit: cover;
  object-fit: cover
}

.navigation-sidebar .navigator-mobile {
  margin-bottom: 5em
}

.navigation-sidebar .navigator-mobile>ul {
  list-style: none
}

.navigation-sidebar .navigator-mobile>ul>li>a {
  color: #111;
  font-size: 1em;
  font-weight: 600;
  text-decoration: none;
  line-height: 2.25em;
  transition: .3s ease;
  cursor: pointer;
  display: block
}

.navigation-sidebar .navigator-mobile>ul>li .dropable-icon {
  float: right
}

.navigation-sidebar .navigator-mobile>ul>li .dropdown-menu {
  padding-left: .9375em;
  padding-bottom: .9375em
}

.navigation-sidebar .navigator-mobile>ul>li .dropdown-menu li {
  list-style: none
}

.navigation-sidebar .navigator-mobile>ul>li .dropdown-menu li a {
  color: #888;
  font-size: .875em;
  font-weight: 500;
  text-decoration: none;
  line-height: 2.5714285714em;
  transition: .3s ease;
  cursor: pointer;
  display: block
}

.navigation-sidebar .navigator-mobile>ul>li .dropdown-menu .dropdown-menu__col.-banner a {
  display: block;
  height: 100%;
  width: 100%
}

.navigation-sidebar .navigator-mobile>ul>li .dropdown-menu .dropdown-menu__col.-banner a img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.navigation-sidebar__footer {
  margin-top: auto
}

.navigation-sidebar__footer__auth {
  color: #111;
  font-size: 1em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer;
  display: block;
  margin-bottom: 3.125em
}

.navigation-sidebar__footer select {
  width: 100%;
  margin-bottom: 1.875em;
  padding-right: 0
}

.navigation-sidebar__footer .social-icons>li>a {
  color: #111;
  font-size: 1em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer
}

.navigation-full {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 100
}

.navigation-full__content .close-btn {
  position: absolute;
  top: 1.9047619048em;
  right: 1.9047619048em;
  color: #fff;
  font-size: 2.625em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer
}

.navigation-full__content ul {
  text-align: center;
  list-style: none
}

.navigation-full__content ul li a {
  color: #fff;
  font-size: 2.625em;
  font-weight: 400;
  text-decoration: none;
  line-height: 2.5em;
  transition: .3s ease;
  cursor: pointer;
  position: relative;
  padding: 8px 0;
  overflow: hidden;
  display: inline-block
}

.navigation-full__content ul li a:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -100%;
  background-color: hsla(2, 85%, 66%, .38);
  height: .5em;
  width: 100%;
  z-index: 0;
  transition: .3s ease
}

.navigation-full__content ul li a:hover:after {
  left: 0
}

.product-slider .slick-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  color: #888;
  font-size: 1.875em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer
}

.product-slider .slick-arrow.slick-next {
  right: -.9375em
}

.product-slider .slick-arrow.slick-prev {
  left: -.9375em
}

@media only screen and (max-width:768px) {
  .product-slider .slick-arrow.slick-next {
    right: 0
  }

  .product-slider .slick-arrow.slick-prev {
    left: 0
  }
}

.product-slide {
  margin-bottom: 6.25rem
}

.product-slide .product-slide__wrapper {
  margin: 0 -.9375em 3.125em
}

.product-slide__item {
  padding: 0 .9375em;
  outline: 0
}

.product-tab.-style-1 {
  margin-bottom: 6.25rem
}

.product-tab.-style-1 .product-tab__header {
  margin-bottom: 1.875em
}

.product-tab.-style-1 .product-tab__header ul {
  text-align: center
}

.product-tab.-style-1 .product-tab__header ul li {
  display: inline-block;
  margin: 0 .625em
}

.product-tab.-style-1 .product-tab__header ul li:first-child {
  margin-left: 0;
  padding-left: 0
}

.product-tab.-style-1 .product-tab__header ul li:last-child {
  margin-right: 0;
  padding-right: 0
}

.product-tab.-style-1 .product-tab__header ul li a {
  color: #888;
  font-size: .9375em;
  font-weight: 500;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer;
  position: relative;
  padding: 8px 0;
  overflow: hidden;
  display: inline-block
}

.product-tab.-style-1 .product-tab__header ul li a:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -100%;
  background-color: hsla(2, 85%, 66%, .38);
  height: .5em;
  width: 100%;
  z-index: 0;
  transition: .3s ease
}

.product-tab.-style-1 .product-tab__header ul li a:hover:after {
  left: 0
}

.product-tab.-style-1 .product-tab__header ul li.active a {
  color: #111
}

.product-tab.-style-1 .product-tab__header ul li.active a:after {
  left: 0
}

.product-tab.-style-1 .product-tab__content__empty {
  height: 9.375rem;
  display: flex;
  align-items: center;
  justify-content: center
}

.product-tab.-style-1 .product-tab__content__empty h3 {
  color: #111;
  font-size: 1.375em;
  font-weight: 400;
  line-height: normal
}

.product-tab.-style-1 .product-tab__content__wrapper,
.product-tab.-style-1 .product-tab__content__wrapper .product {
  margin-bottom: 1.875em
}

.product-tab.-style-2 {
  margin-bottom: 6.25rem
}

.product-tab.-style-2 .product-tab__content__wrapper .product {
  margin-bottom: 1.875em
}

.product-tab.-style-2 .product-tab__content__wrapper .product .product__thumb {
  height: 16.875em
}

.product-tab.-style-2 .product-tab__content__wrapper .product.-inline-content .product__thumb {
  height: 46.875em
}

.product-tab-slide {
  background-color: #f7e7e8;
  margin-bottom: 6.25rem;
  padding: 6.25em 0
}

.product-tab-slide__header,
.product-tab.-style-2 .product-tab__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 3.125em
}

@media only screen and (max-width:768px) {

  .product-tab-slide__header,
  .product-tab.-style-2 .product-tab__header {
    justify-content: center
  }

  .product-tab-slide__header h5,
  .product-tab.-style-2 .product-tab__header h5 {
    margin-bottom: .9375em
  }
}

.product-tab-slide__header h5,
.product-tab.-style-2 .product-tab__header h5 {
  color: #111;
  font-size: 2.8125em;
  font-weight: 600;
  line-height: normal
}

.product-tab-slide__header__controller {
  display: flex;
  align-items: center
}

.product-tab-slide__header__controller ul {
  margin-right: 1.875em
}

.product-tab-slide__header__controller ul li {
  display: inline-block;
  margin: 0 .625em
}

.product-tab-slide__header__controller ul li:first-child {
  margin-left: 0;
  padding-left: 0
}

.product-tab-slide__header__controller ul li:last-child {
  margin-right: 0;
  padding-right: 0
}

.product-tab-slide__header__controller ul li a {
  color: #888;
  font-size: .9375em;
  font-weight: 500;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer;
  position: relative;
  padding: 8px 0;
  overflow: hidden;
  display: inline-block
}

.product-tab-slide__header__controller ul li a:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -100%;
  background-color: hsla(2, 85%, 66%, .38);
  height: .5em;
  width: 100%;
  z-index: 0;
  transition: .3s ease
}

.product-tab-slide__header__controller ul li a:hover:after {
  left: 0
}

.product-tab-slide__header__controller ul li.active a {
  color: #111
}

.product-tab-slide__header__controller ul li.active a:after {
  left: 0
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form .product-tab-slide__header__controller button,
.product-tab-slide__content .product-tab-slide__header__controller .slick-arrow,
.product-tab-slide__header__controller .blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button,
.product-tab-slide__header__controller .btn,
.product-tab-slide__header__controller .product-tab-slide__content .slick-arrow {
  padding: .9375em 1.25em
}

.product-tab-slide__content .slick-arrow {
  color: #fff;
  font-size: 1.875em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer;
  padding: .3333333333em .6666666667em;
  background-color: rgba(0, 0, 0, .3);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2
}

.product-tab-slide__content .slick-arrow.slick-next {
  right: 2.5em
}

.product-tab-slide__content .slick-arrow.slick-prev {
  left: 2.5em
}

@media only screen and (max-width:768px) {
  .product-tab-slide__content .slick-arrow.slick-next {
    right: .9375em
  }

  .product-tab-slide__content .slick-arrow.slick-prev {
    left: .9375em
  }
}

.product-tab-slide__content .slide-item {
  padding: 0 .9375em
}

.section-pricing .switch .background {
  display: block;
  width: 80px;
  height: 40px;
  border-radius: 99px;
  border: 1px solid #e4e4e4;
  outline: none;
  position: relative;
  transition: all .4s linear;
  overflow: hidden;
  cursor: pointer
}

.section-pricing .switch .background:before {
  content: "";
  position: absolute;
  width: 32px;
  height: 32px;
  top: 50%;
  transform: translateY(-50%);
  left: 4px;
  background-color: #5b45f3;
  border-radius: 50%;
  transition: all .25s linear
}

.section-pricing .switch.enable .background {
  background-color: #5b45f3
}

.section-pricing .switch.enable .background:before {
  left: 42px;
  background-color: #fff
}

.section-pricing .switch.enable .body3:first-child {
  color: var(--placehover)
}

.section-pricing .switch.enable .body3:last-child {
  color: #0c1228
}

.section-pricing .list-pricing .pricing-item,
.section-pricing .list-pricing-year .pricing-item {
  cursor: pointer;
  transition: all .3s linear
}

.section-pricing .list-pricing .pricing-item .list-feature,
.section-pricing .list-pricing-year .pricing-item .list-feature {
  border-top: 1px solid #e4e4e4
}

.section-pricing .list-pricing .pricing-item .price,
.section-pricing .list-pricing-year .pricing-item .price {
  display: flex;
  align-items: end
}

.section-pricing .list-pricing .pricing-item .price .heading2,
.section-pricing .list-pricing-year .pricing-item .price .heading2 {
  transition: all .3s ease
}

.section-pricing .list-pricing .pricing-item:hover,
.section-pricing .list-pricing-year .pricing-item:hover {
  box-shadow: 0 10px 25px 0 rgba(54, 95, 104, .15)
}

.section-pricing .list-pricing .pricing-item:hover .price .heading2,
.section-pricing .list-pricing-year .pricing-item:hover .price .heading2 {
  color: #5b45f3
}

.section-pricing .list-pricing .pricing-item:hover a.button,
.section-pricing .list-pricing-year .pricing-item:hover a.button {
  border-color: #5b45f3;
  background-color: #5b45f3;
  color: #fff
}

.section-pricing .list-pricing .pricing-item a.button,
.section-pricing .list-pricing-year .pricing-item a.button {
  transition: all .3s ease
}

.section-pricing .list-pricing .pricing-item a.button:hover,
.section-pricing .list-pricing-year .pricing-item a.button:hover {
  background-color: #5700c9
}

@keyframes showList {
  0% {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

.section-pricing .list-pricing,
.section-pricing .list-pricing-year {
  display: none
}

.section-pricing .list-pricing-year.show,
.section-pricing .list-pricing.show {
  display: block;
  animation: showList .7s ease-in-out
}

.section-pricing.style-seven .switch .background:before,
.section-pricing.style-seven .switch.enable .background {
  background-color: #0097d6
}

.section-pricing.style-seven .switch.enable .background:before {
  background-color: #fff
}

.service-item.-solution {
  transition: all .4s ease
}

.service-item.-solution .service-name {
  position: relative
}

.service-item.-solution .service-name:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #0c1228;
  transition: all .4s ease
}

.service-item.-solution:hover {
  box-shadow: 0 10px 25px 0 rgba(54, 95, 104, .15)
}

.service-item.-solution:hover .service-name:before {
  width: 100%
}

.service-item.-solution.style-five,
.service-item.-solution.style-three {
  box-shadow: none !important
}

.service-item.-list {
  transition: .3s
}

.service-item.-list .service-icon,
.service-item.-list .service-name {
  transition: transform .3s ease
}

.service-item.-list:hover {
  color: #fff;
  background-color: #0097d6
}

.service-item.-list:hover .service-icon,
.service-item.-list:hover .service-name {
  transform: translateX(10px)
}

.section-solution.style-five .list .service-item:last-child .main {
  border-right: none
}

.section-solution.style-five .list .service-item:hover .slash {
  opacity: 1;
  transform: translateX(-20px)
}

.section-solution.style-five .list .service-item:hover .service-name {
  color: #63e483
}

.section-solution.style-five .list .service-item:hover .service-name:before {
  display: none !important
}

.slider.style-two,
.slider.style-two .slider-item {
  width: 100%;
  height: calc(100vh - 44px);
  position: relative
}

.slider.style-two .slider-item .bg-img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0
}

.slider.style-two .slider-item .bg-img img {
  -o-object-fit: cover;
  object-fit: cover
}

@media(max-width:991.99px) {

  .slider.style-two,
  .slider.style-two .slider-item {
    height: calc(90vh - 44px)
  }
}

.slider.style-four {
  height: 100vh
}

.slider.style-four .slider-item {
  width: 100%;
  height: 100vh
}

@media(max-width:991.99px) {

  .slider.style-four,
  .slider.style-four .slider-item {
    height: calc(90vh - 44px)
  }
}

.slider.style-six {
  background: linear-gradient(180deg, #eddef4, hsla(0, 0%, 100%, .5))
}

.slider.style-six,
.slider.style-six .slider-inner {
  position: relative;
  height: 90vh
}

.slider.style-six .slider-inner .heading1 {
  line-height: 100px;
  background: linear-gradient(90deg, #5b45f3, #efca60);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent
}

@media(max-width:1023.98px) {
  .slider.style-six .slider-inner .heading1 {
    line-height: 74px
  }
}

@media(max-width:639.98px) {
  .slider.style-six .slider-inner .heading1 {
    line-height: 46px
  }
}

.slider.style-six .slider-inner .block-input {
  width: 100%;
  background-color: transparent
}

.slider.style-six .slider-inner .block-input input {
  height: 56px;
  padding-left: 16px;
  padding-right: 16px;
  border-radius: 4px 0 0 4px;
  background-color: #fff;
  width: 100%;
  box-shadow: 0 10px 25px 0 rgba(54, 95, 104, .1)
}

.slider.style-six .slider-inner .block-input button {
  height: 56px;
  padding-left: 24px;
  padding-right: 24px;
  border-radius: 0 4px 4px 0;
  transition: all .4s ease
}

@media(max-width:639.98px) {
  .slider.style-six .slider-inner .block-input button {
    padding: 12px
  }

  .slider.style-six .slider-inner .block-input button svg {
    display: none !important
  }
}

.slider.style-six .slider-inner .slider-img {
  width: 100%;
  height: 100%;
  position: relative
}

.slider.style-six .slider-inner .slider-img img {
  position: absolute;
  top: 24%
}

.slider.style-six .slider-inner .slider-img img:first-child {
  width: 75%;
  right: 0
}

.slider.style-six .slider-inner .slider-img img:last-child {
  width: 101%;
  right: 20px;
  animation: slideY 10s linear infinite
}

.slider.style-six .sub-img-dots .dot {
  position: absolute;
  border-radius: 50%
}

.slider.style-six .sub-img-dots .dot:first-child,
.slider.style-six .sub-img-dots .dot:nth-child(3),
.slider.style-six .sub-img-dots .dot:nth-child(4),
.slider.style-six .sub-img-dots .dot:nth-child(5),
.slider.style-six .sub-img-dots .dot:nth-child(6),
.slider.style-six .sub-img-dots .dot:nth-child(8) {
  width: 32px;
  height: 32px
}

.slider.style-six .sub-img-dots .dot:nth-child(2),
.slider.style-six .sub-img-dots .dot:nth-child(7) {
  width: 48px;
  height: 48px
}

.slider.style-six .sub-img-dots .dot:first-child,
.slider.style-six .sub-img-dots .dot:nth-child(3),
.slider.style-six .sub-img-dots .dot:nth-child(8) {
  background: linear-gradient(90deg, #b84ca0, #b4aee1)
}

.slider.style-six .sub-img-dots .dot:nth-child(2),
.slider.style-six .sub-img-dots .dot:nth-child(4) {
  background: linear-gradient(90deg, #5b45f3, #efca60)
}

.slider.style-six .sub-img-dots .dot:nth-child(5),
.slider.style-six .sub-img-dots .dot:nth-child(6),
.slider.style-six .sub-img-dots .dot:nth-child(7) {
  background: linear-gradient(90deg, #82b84c, #aed5e1)
}

.slider.style-six .sub-img-dots .dot:first-child {
  left: 82px;
  top: 165px;
  animation: slide_1 15s ease-in-out infinite alternate
}

.slider.style-six .sub-img-dots .dot:nth-child(2) {
  left: 140px;
  top: 270px;
  animation: slide_2 10s ease-in-out infinite alternate
}

.slider.style-six .sub-img-dots .dot:nth-child(3) {
  left: 822px;
  top: 120px;
  animation: slide_1 20s ease-in-out infinite alternate
}

.slider.style-six .sub-img-dots .dot:nth-child(4) {
  right: 722px;
  top: 160px;
  animation: slide_2 15s ease-in-out infinite alternate
}

.slider.style-six .sub-img-dots .dot:nth-child(5) {
  right: 120px;
  top: 140px;
  animation: slide_1 21s ease-in-out infinite alternate
}

.slider.style-six .sub-img-dots .dot:nth-child(6) {
  left: 60px;
  bottom: 140px;
  animation: slide_2 12s ease-in-out infinite alternate
}

.slider.style-six .sub-img-dots .dot:nth-child(7) {
  left: 820px;
  bottom: 40px;
  animation: slide_2 25s ease-in-out infinite alternate
}

.slider.style-six .sub-img-dots .dot:nth-child(8) {
  right: 160px;
  bottom: 140px;
  animation: slide_2 22s ease-in-out infinite alternate
}

@media(max-width:1023.98px) {

  .slider.style-six,
  .slider.style-six .slider-inner {
    height: auto
  }

  .slider.style-six .slider-inner .text-content {
    padding: 120px 0 100px
  }
}

.slider.style-seven {
  position: relative;
  background-color: var(--yellow-surface)
}

.slider.style-seven .slider-main>div {
  justify-content: end
}

.slider.style-seven .slider-main>div>div:first-child {
  position: absolute;
  top: 50%;
  width: 49%;
  transform: translateY(-50%)
}

.slider.style-seven .slider-main>div>div:last-child .about a:hover {
  background-color: #0c1228;
  color: #fff
}

@media(max-width:1800px) {
  .slider.style-seven .slider-main>div>div:last-child .about {
    flex-direction: column;
    justify-content: center;
    row-gap: 16px
  }
}

@media(max-width:1465px) {
  .slider.style-seven {
    position: relative;
    height: 640px
  }

  .slider.style-seven .slider-main {
    height: 640px
  }

  .slider.style-seven .slider-main>div {
    height: 100%;
    margin-left: 0;
    margin-right: 0
  }

  .slider.style-seven .slider-main>div>div:first-child {
    width: 100%;
    max-width: 1320px;
    padding-right: 15px;
    padding-left: 15px;
    margin: auto;
    position: unset;
    left: unset;
    top: unset;
    transform: unset
  }

  .slider.style-seven .slider-main>div>div:first-child>div {
    width: 50%
  }

  .slider.style-seven .slider-main>div>div:last-child {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 50%;
    height: 100%;
    padding-right: 0
  }

  .slider.style-seven .slider-main>div>div:last-child .bg-img {
    width: 100%;
    height: 100%
  }

  .slider.style-seven .slider-main>div>div:last-child .bg-img img {
    width: 130% !important;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
  }

  .slider.style-seven .slider-main>div>div:last-child .about {
    position: absolute;
    bottom: 0;
    left: 15px;
    right: 0
  }
}

@media(max-width:1350px) {

  .slider.style-seven,
  .slider.style-seven .slider-main {
    height: unset
  }

  .slider.style-seven .slider-main>div {
    flex-direction: column-reverse
  }

  .slider.style-seven .slider-main>div>div:first-child {
    padding-top: 32px;
    padding-bottom: 32px
  }

  .slider.style-seven .slider-main>div>div:first-child>div {
    width: 100%
  }

  .slider.style-seven .slider-main>div>div:last-child {
    position: relative;
    width: 100%;
    padding-left: 0
  }

  .slider.style-seven .slider-main>div>div:last-child .bg-img img {
    width: 100% !important
  }

  .slider.style-seven .slider-main>div>div:last-child .about {
    left: 0;
    flex-direction: row;
    justify-content: space-between;
    position: relative
  }
}

@media(max-width:767.99px) {
  .slider.style-seven .slider-main>div>div:last-child .about {
    padding: 20px 15px
  }
}

@media(max-width:575.99px) {
  .slider.style-seven .slider-main>div>div:last-child .bg-img {
    height: 400px
  }

  .slider.style-seven .slider-main>div>div:last-child .bg-img img {
    width: 130% !important;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
  }

  .slider.style-seven .slider-main>div>div:last-child .about {
    flex-direction: column;
    justify-content: center;
    row-gap: 12px
  }

  .slider.style-seven .slider-main>div>div:last-child .about .heading4 {
    text-align: center
  }
}

.swiper .swiper-wrapper {
  cursor: grab
}

.swiper .swiper-wrapper .swiper-slide {
  height: unset !important
}

@keyframes scaleIn {
  0% {
    transform: scale(1.3)
  }

  to {
    transform: scale(1)
  }
}

@keyframes slide_1 {
  0% {
    transform: translate(0) rotate(0deg)
  }

  15% {
    transform: translate(10px, 10px) rotate(45deg)
  }

  30% {
    transform: translate(10px, -15px) rotate(20deg)
  }

  45% {
    transform: translate(-10px, -25px) rotate(50deg)
  }

  60% {
    transform: translateY(25px) rotate(35deg)
  }

  75% {
    transform: translate(-10px, -15px) rotate(-20deg)
  }

  90% {
    transform: translate(-5, -5px) rotate(-20deg)
  }

  to {
    transform: translate(0) rotate(0deg)
  }
}

@keyframes slide_2 {
  0% {
    transform: translate(0) rotate(0deg)
  }

  25% {
    transform: translate(15px, -5px) rotate(15deg)
  }

  50% {
    transform: translate(-10px, 10px) rotate(10deg)
  }

  75% {
    transform: translate(5px, -5px) rotate(25deg)
  }

  to {
    transform: translate(0) rotate(0deg)
  }
}

.swiper.marquee-swiper {
  margin-top: 4rem;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #fff 10%, #fff 90%, transparent);
  mask-image: linear-gradient(90deg, transparent 0, #fff 10%, #fff 90%, transparent)
}

.swiper-wrapper.marquee-swiper {
  transition-timing-function: linear;
  align-items: center
}

.swiper-slide.marquee-swiper {
  width: 12rem;
  display: flex;
  align-items: center;
  justify-content: center
}

.testimonial-block .list-avatar .bg-img {
  height: 0;
  opacity: 0;
  visibility: hidden;
  transition: all .4s ease
}

.testimonial-block .list-avatar .bg-img.active {
  height: 100%;
  opacity: 1;
  visibility: visible
}

@media(max-width:639.98px) {
  .testimonial-block .list-avatar .bg-img {
    height: 0;
    width: 100%;
    transition: opacity .5s linear
  }

  .testimonial-block .list-avatar .bg-img.active {
    height: auto
  }

  .testimonial-block .desc {
    display: block;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis
  }
}

.testimonial-block.style-six .slick-list {
  overflow: unset
}

.testimonial-block.style-six .slick-list .slick-slide>div {
  height: 100%
}

.testimonial-block.style-six .slick-list .slick-slide>div .item {
  height: 100%;
  justify-content: space-between
}

.testimonial-block.style-six .slick-list .slick-slide>div .item .desc {
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis
}

.testimonial-block.style-six .slick-dots {
  margin-left: 0;
  margin-top: 40px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding-bottom: 0;
  gap: 8px
}

@media(max-width:767.99px) {
  .testimonial-block.style-six .slick-dots {
    margin-top: 32px
  }
}

.testimonial-block.style-six .slick-dots li {
  position: relative;
  border: none;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer
}

.testimonial-block.style-six .slick-dots li button {
  display: none
}

.testimonial-block.style-six .slick-dots li:after {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: transparent;
  border: 1px solid #171717;
  transition: .5s
}

.testimonial-block.style-six .slick-dots li.slick-active {
  border: 1px solid #0c1228;
  background-color: #fff
}

.testimonial-block.style-six .slick-dots li.slick-active:after {
  background-color: #0c1228;
  border: 1px solid #0c1228
}

.testimonial-block .style-service .list-avatar .bg-img {
  overflow: hidden;
  border-radius: 40px
}

.product-detail-content .category .heading6 {
  position: relative;
  transition: all .4s ease
}

.product-detail-content .category .heading6:before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0;
  height: 2px;
  background-color: #0097d6;
  transition: all .4s ease
}

.product-detail-content .category .heading6.active,
.product-detail-content .category .heading6:hover {
  color: #0c1228
}

.product-detail-content .category .heading6.active:before,
.product-detail-content .category .heading6:hover:before {
  width: 100%
}

.product-detail-content .tabs-item {
  display: none
}

.product-detail-content .tabs-item.open {
  display: block
}

.blog {
  margin-bottom: 6.25rem
}

.blog .post-card-featured {
  margin-bottom: 3.75em
}

.blog .post-card-two {
  margin-bottom: 1.875em
}

.blog-sidebar {
  margin-bottom: 4.375rem
}

.blog .search-result {
  color: #111;
  font-size: 1rem;
  font-weight: 400;
  line-height: normal;
  margin-bottom: 3.125em
}

.blog .search-result span {
  font-weight: 600
}

.post {
  margin-bottom: 6.25rem
}

.post__cover {
  max-height: 37.5em;
  overflow: hidden
}

.post__cover:hover img {
  transform: scale(1.1) rotate(1deg)
}

.post__cover img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transition: 5s cubic-bezier(.445, .05, .55, .95)
}

.post__body {
  z-index: 1;
  position: relative
}

.post__body .post__sidebar {
  padding-top: 6.25em
}

@media only screen and (max-width:768px) {
  .post__body .post__sidebar {
    margin-bottom: 5em
  }
}

.post__body .post__content {
  background-color: #fff;
  margin-top: -3.125em;
  padding: 3.125em 4.375em 0
}

@media only screen and (max-width:768px) {
  .post__body .post__content {
    padding-left: 0;
    padding-right: 0
  }
}

.cart-block .heading.banner .tow-bar-block {
  height: 4px;
  background-color: #eff0f3;
  position: relative
}

.cart-block .heading.banner .tow-bar-block .progress-line {
  position: absolute;
  left: 0;
  height: 4px;
  background-color: #0097d6
}

.cart-block .heading.banner .tow-bar-block .progress-line:before {
  content: "";
  position: absolute;
  right: -8px;
  top: -6px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: #0097d6
}

@media(max-width:640px) {
  .cart-block .list-product {
    overflow-x: auto
  }

  .cart-block .list-product>div {
    width: 640px;
    max-width: 640px;
    overflow: hidden;
    white-space: nowrap
  }
}

.form-login-block {
  display: none
}

.form-login-block.open {
  display: block
}

.payment-block .list-payment .type .infor {
  overflow: hidden;
  max-height: 0;
  visibility: hidden;
  transition: all .8s ease
}

.payment-block .list-payment .type.open .infor {
  max-height: 1000px;
  opacity: 1;
  visibility: visible
}

.error-404 {
  height: 100vh;
  width: 100%;
  display: flex;
  align-items: center;
  background-image: url(/images/404/bg.png);
  background-size: cover;
  background-position: 50%
}

.product-detail {
  margin-bottom: 6.25em
}

.product-detail__wrapper {
  padding-bottom: 6.25em;
  border-bottom: 1px solid #e1e1e1
}

@media only screen and (max-width:768px) {
  .product-detail__wrapper .product-detail__slide-two {
    margin-bottom: 4.375em
  }
}

.shop {
  margin-bottom: 6.25rem
}

@media only screen and (max-width:1024px) {
  .shop-sidebar {
    font-size: 16px;
    margin-bottom: 3.3333333333em
  }
}

.shop-sidebar__section {
  margin-bottom: 2.1875em
}

.shop-sidebar__section.-categories ul {
  list-style: none
}

.shop-sidebar__section.-categories ul>li {
  margin-bottom: .625em
}

.shop-sidebar__section.-categories ul>li.active a:after {
  left: 0
}

.shop-sidebar__section.-categories ul>li:last-child {
  margin-bottom: 0
}

.shop-sidebar__section.-categories ul>li a {
  color: #111;
  font-size: .875em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  display: inline-block;
  padding: 0
}

.shop-sidebar__section.-categories ul>li a:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -100%;
  background-color: hsla(2, 85%, 66%, .38);
  height: .5em;
  width: 100%;
  z-index: 0;
  transition: .3s ease
}

.shop-sidebar__section.-categories ul>li a:hover:after {
  left: 0
}

.shop-sidebar__section.-categories ul>li a>div {
  padding: 10px 0
}

.shop-sidebar__section.-refine .shop-sidebar__section__item {
  margin-bottom: 2.1875em
}

.shop-sidebar__section.-refine .shop-sidebar__section__item h5 {
  color: #111;
  font-size: 1.0625em;
  font-weight: 600;
  line-height: normal;
  margin-bottom: 1.4705882353em
}

.shop-sidebar__section.-refine .shop-sidebar__section__item ul {
  list-style: none
}

.shop-sidebar__section.-refine .shop-sidebar__section__item ul li {
  margin-bottom: .625em
}

.shop-sidebar__section.-refine .shop-sidebar__section__item ul li:last-child {
  margin-bottom: 0
}

.shop-sidebar__section.-refine .shop-sidebar__section__item ul li label {
  color: #111;
  font-size: .875em;
  font-weight: 400;
  line-height: normal;
  cursor: pointer
}

.shop-sidebar__section.-refine .shop-sidebar__section__item ul li label input {
  margin-right: 1.0714285714em
}

.shop-sidebar__section__banner img {
  max-width: 15.625em;
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain
}

.shop-products .product,
.shop-products .product-list {
  margin-bottom: 1.875em
}

.shop-header {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 1.25em
}

.shop-header__view {
  display: flex;
  align-items: center
}

@media only screen and (max-width:768px) {
  .shop-header__view {
    margin-bottom: 1.25em
  }
}

.shop-header__view__icon {
  margin-right: .9375em
}

.shop-header__view__icon a {
  color: #888;
  font-size: 1.25em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer;
  margin-right: .5em
}

.shop-header__view__icon a.active {
  color: #111
}

.shop-header__view__icon a:last-child {
  margin-right: 0
}

.shop-header select {
  padding: .8125em 2.8125em .8125em .8125em;
  background-position: calc(100% - 15px);
  background-color: #f5f5f5;
  border: 0
}

@media only screen and (max-width:1400px) {
  .shop.-five-col .shop-products__grid .w-100 {
    display: none
  }

  .shop.-five-col .shop-products__grid .five-col {
    flex: 1 1 25%;
    max-width: 25%
  }
}

@media only screen and (max-width:1024px) {
  .shop.-five-col .shop-products__grid .five-col {
    flex: 1 1 33.33333%;
    max-width: 33.33333%
  }
}

@media only screen and (max-width:768px) {
  .shop.-five-col .shop-products__grid .five-col {
    flex: 1 1 50%;
    max-width: 50%
  }
}

@media only screen and (max-width:576px) {
  .shop.-five-col .shop-products__grid .five-col {
    flex: 1 1 100%;
    max-width: 100%
  }
}

.wishlist {
  margin-bottom: 6.25rem
}

.wishlist__empty {
  text-align: center;
  padding: 4.375em 0
}

.wishlist__empty h3 {
  color: #111;
  font-size: 1.875em;
  font-weight: 400;
  line-height: normal
}

.wishlist__table__wrapper {
  overflow-y: auto;
  white-space: nowrap
}

.wishlist__table__wrapper table {
  width: 100%
}

.wishlist__table__wrapper table thead tr th {
  border-bottom: 1px solid #e1e1e1;
  text-align: left;
  color: #111;
  font-size: .9375em;
  font-weight: 700;
  line-height: normal;
  padding: 0 2.1875em 2.5em .9375em
}

.wishlist__table__wrapper table thead tr th:first-child {
  padding-left: 0
}

.wishlist__table__wrapper table thead tr th:last-child {
  padding-right: 0
}

.wishlist__table__wrapper table tbody tr:last-child td {
  border-bottom: 0
}

.wishlist__table__wrapper table tbody tr td {
  color: #111;
  font-size: .9375em;
  font-weight: 600;
  line-height: normal;
  padding: 2.1875em .9375em;
  border-bottom: 1px solid #e1e1e1
}

.wishlist__table__wrapper table tbody tr td:first-child {
  padding-left: 0
}

.wishlist__table__wrapper table tbody tr td:first-child .wishlist-product {
  display: flex;
  align-items: center
}

.wishlist__table__wrapper table tbody tr td:first-child .wishlist-product__image {
  flex: none;
  margin-right: 1.875em
}

.wishlist__table__wrapper table tbody tr td:first-child .wishlist-product__image img {
  height: 6.25em;
  width: 6.25em;
  -o-object-fit: cover;
  object-fit: cover
}

.wishlist__table__wrapper table tbody tr td:first-child .wishlist-product__content h5 {
  color: #888;
  font-size: .8125em;
  font-weight: 400;
  line-height: normal;
  margin-bottom: .625em
}

.wishlist__table__wrapper table tbody tr td:first-child .wishlist-product__content a {
  color: #111;
  font-size: 1em;
  font-weight: 500;
  text-decoration: none;
  line-height: 1;
  transition: .3s ease;
  cursor: pointer
}

.wishlist__table__wrapper table tbody tr td:last-child {
  padding-right: 0;
  text-align: right
}

.blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form .wishlist__table__wrapper table tbody tr td:last-child button,
.product-tab-slide__content .wishlist__table__wrapper table tbody tr td:last-child .slick-arrow,
.wishlist__table__wrapper table tbody tr td:last-child .blog-sidebar__section.-newsletter .blog-sidebar-newsletter .mc-form button,
.wishlist__table__wrapper table tbody tr td:last-child .btn,
.wishlist__table__wrapper table tbody tr td:last-child .product-tab-slide__content .slick-arrow {
  margin-right: 2.1428571429em
}

.wishlist__table__wrapper table tbody tr td:last-child .remove-btn {
  color: #888;
  font-size: .9375em;
  font-weight: 400;
  text-decoration: none;
  line-height: 1.3333333333em;
  transition: .3s ease;
  cursor: pointer;
  border: 1px solid #888;
  height: 1.3333333333em;
  width: 1.3333333333em;
  text-align: center;
  border-radius: 999px;
  margin-left: auto;
  display: inline-block
}

.wishlist__table__wrapper table tbody tr td:last-child .remove-btn:hover {
  border-color: red
}

/*
! tailwindcss v3.4.3 | MIT License | https://tailwindcss.com
*/
*,
:after,
:before {
  box-sizing: border-box;
  border: 0 solid
}

:after,
:before {
  --tw-content: ""
}

:host,
html {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  font-family: ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent
}

body {
  margin: 0;
  line-height: inherit
}

hr {
  height: 0;
  color: inherit;
  border-top-width: 1px
}

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit
}

a {
  color: inherit;
  text-decoration: inherit
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
pre,
samp {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
  font-feature-settings: normal;
  font-variation-settings: normal;
  font-size: 1em
}

small {
  font-size: 80%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -.25em
}

sup {
  top: -.5em
}

table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  padding: 0
}

button,
select {
  text-transform: none
}

button,
input:where([type=button]),
input:where([type=reset]),
input:where([type=submit]) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none
}

:-moz-focusring {
  outline: auto
}

:-moz-ui-invalid {
  box-shadow: none
}

progress {
  vertical-align: baseline
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

summary {
  display: list-item
}

blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
  margin: 0
}

fieldset {
  margin: 0
}

fieldset,
legend {
  padding: 0
}

menu,
ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0
}

dialog {
  padding: 0
}

textarea {
  resize: vertical
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  opacity: 1;
  color: #9ca3af
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: #9ca3af
}

[role=button],
button {
  cursor: pointer
}

:disabled {
  cursor: default
}

audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
  display: block

}

img,
video {
  max-width: 100%;
  height: auto
}

[hidden] {
  display: none
}

*,
:after,
:before {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgba(59, 130, 246, .5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style:
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgba(59, 130, 246, .5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style:
}

.container {
  width: 100%;
  padding-right: 16px;
  padding-left: 16px
}

@media (min-width:640px) {
  .container {
    max-width: 640px
  }
}

@media (min-width:768px) {
  .container {
    max-width: 768px
  }
}

@media (min-width:1024px) {
  .container {
    max-width: 1024px
  }
}

@media (min-width:1280px) {
  .container {
    max-width: 1280px;
    padding-right: 35px;
    padding-left: 35px
  }
}

@media (min-width:1536px) {
  .container {
    max-width: 1536px
  }
}

.prose {
  color: var(--tw-prose-body);
  max-width: 65ch
}

.prose :where(p):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
  margin-bottom: 1.25em
}

.prose :where([class~=lead]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-lead);
  font-size: 1.25em;
  line-height: 1.6;
  margin-top: 1.2em;
  margin-bottom: 1.2em
}

.prose :where(a):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-links);
  text-decoration: underline;
  font-weight: 500
}

.prose :where(strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-bold);
  font-weight: 600
}

.prose :where(a strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit
}

.prose :where(blockquote strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit
}

.prose :where(thead th strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit
}

.prose :where(ol):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: decimal;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em
}

.prose :where(ol[type=A]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-alpha
}

.prose :where(ol[type=a]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-alpha
}

.prose :where(ol[type=A s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-alpha
}

.prose :where(ol[type=a s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-alpha
}

.prose :where(ol[type=I]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-roman
}

.prose :where(ol[type=i]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-roman
}

.prose :where(ol[type=I s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-roman
}

.prose :where(ol[type=i s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-roman
}

.prose :where(ol[type="1"]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: decimal
}

.prose :where(ul):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: disc;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em
}

.prose :where(ol>li):not(:where([class~=not-prose], [class~=not-prose] *))::marker {
  font-weight: 400;
  color: var(--tw-prose-counters)
}

.prose :where(ul>li):not(:where([class~=not-prose], [class~=not-prose] *))::marker {
  color: var(--tw-prose-bullets)
}

.prose :where(dt):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.25em
}

.prose :where(hr):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-color: var(--tw-prose-hr);
  border-top-width: 1px;
  margin-top: 3em;
  margin-bottom: 3em
}

.prose :where(blockquote):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 500;
  font-style: italic;
  color: var(--tw-prose-quotes);
  border-inline-start-width: .25rem;
  border-inline-start-color: var(--tw-prose-quote-borders);
  quotes: "\201C" "\201D" "\2018" "\2019";
  margin-top: 1.6em;
  margin-bottom: 1.6em;
  padding-inline-start: 1em
}

.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose], [class~=not-prose] *)):before {
  content: open-quote
}

.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose], [class~=not-prose] *)):after {
  content: close-quote
}

.prose :where(h1):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 800;
  font-size: 2.25em;
  margin-top: 0;
  margin-bottom: .8888889em;
  line-height: 1.1111111
}

.prose :where(h1 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 900;
  color: inherit
}

.prose :where(h2):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 700;
  font-size: 1.5em;
  margin-top: 2em;
  margin-bottom: 1em;
  line-height: 1.3333333
}

.prose :where(h2 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 800;
  color: inherit
}

.prose :where(h3):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  font-size: 1.25em;
  margin-top: 1.6em;
  margin-bottom: .6em;
  line-height: 1.6
}

.prose :where(h3 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 700;
  color: inherit
}

.prose :where(h4):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.5em;
  margin-bottom: .5em;
  line-height: 1.5
}

.prose :where(h4 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 700;
  color: inherit
}

.prose :where(img):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 2em;
  margin-bottom: 2em
}

.prose :where(picture):not(:where([class~=not-prose], [class~=not-prose] *)) {
  display: block;
  margin-top: 2em;
  margin-bottom: 2em
}

.prose :where(video):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 2em;
  margin-bottom: 2em
}

.prose :where(kbd):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 500;
  font-family: inherit;
  color: var(--tw-prose-kbd);
  box-shadow: 0 0 0 1px rgb(var(--tw-prose-kbd-shadows)/10%), 0 3px 0 rgb(var(--tw-prose-kbd-shadows)/10%);
  font-size: .875em;
  border-radius: .3125rem;
  padding-top: .1875em;
  padding-inline-end: .375em;
  padding-bottom: .1875em;
  padding-inline-start: .375em
}

.prose :where(code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-code);
  font-weight: 600;
  font-size: .875em
}

.prose :where(code):not(:where([class~=not-prose], [class~=not-prose] *)):before {
  content: "`"
}

.prose :where(code):not(:where([class~=not-prose], [class~=not-prose] *)):after {
  content: "`"
}

.prose :where(a code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit
}

.prose :where(h1 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit
}

.prose :where(h2 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
  font-size: .875em
}

.prose :where(h3 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
  font-size: .9em
}

.prose :where(h4 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit
}

.prose :where(blockquote code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit
}

.prose :where(thead th code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit
}

.prose :where(pre):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-pre-code);
  background-color: var(--tw-prose-pre-bg);
  overflow-x: auto;
  font-weight: 400;
  font-size: .875em;
  line-height: 1.7142857;
  margin-top: 1.7142857em;
  margin-bottom: 1.7142857em;
  border-radius: .375rem;
  padding-top: .8571429em;
  padding-inline-end: 1.1428571em;
  padding-bottom: .8571429em;
  padding-inline-start: 1.1428571em
}

.prose :where(pre code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  background-color: transparent;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-weight: inherit;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: inherit
}

.prose :where(pre code):not(:where([class~=not-prose], [class~=not-prose] *)):before {
  content: none
}

.prose :where(pre code):not(:where([class~=not-prose], [class~=not-prose] *)):after {
  content: none
}

.prose :where(table):not(:where([class~=not-prose], [class~=not-prose] *)) {
  width: 100%;
  table-layout: auto;
  margin-top: 2em;
  margin-bottom: 2em;
  font-size: .875em;
  line-height: 1.7142857
}

.prose :where(thead):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-th-borders)
}

.prose :where(thead th):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  vertical-align: bottom;
  padding-inline-end: .5714286em;
  padding-bottom: .5714286em;
  padding-inline-start: .5714286em
}

.prose :where(tbody tr):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-td-borders)
}

.prose :where(tbody tr:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-bottom-width: 0
}

.prose :where(tbody td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  vertical-align: baseline
}

.prose :where(tfoot):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-top-width: 1px;
  border-top-color: var(--tw-prose-th-borders)
}

.prose :where(tfoot td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  vertical-align: top
}

.prose :where(th, td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  text-align: start
}

.prose :where(figure>*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
  margin-bottom: 0
}

.prose :where(figcaption):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-captions);
  font-size: .875em;
  line-height: 1.4285714;
  margin-top: .8571429em
}

.prose {
  --tw-prose-body: #374151;
  --tw-prose-headings: #111827;
  --tw-prose-lead: #4b5563;
  --tw-prose-links: #111827;
  --tw-prose-bold: #111827;
  --tw-prose-counters: #6b7280;
  --tw-prose-bullets: #d1d5db;
  --tw-prose-hr: #e5e7eb;
  --tw-prose-quotes: #111827;
  --tw-prose-quote-borders: #e5e7eb;
  --tw-prose-captions: #6b7280;
  --tw-prose-kbd: #111827;
  --tw-prose-kbd-shadows: 17 24 39;
  --tw-prose-code: #111827;
  --tw-prose-pre-code: #e5e7eb;
  --tw-prose-pre-bg: #1f2937;
  --tw-prose-th-borders: #d1d5db;
  --tw-prose-td-borders: #e5e7eb;
  --tw-prose-invert-body: #d1d5db;
  --tw-prose-invert-headings: #fff;
  --tw-prose-invert-lead: #9ca3af;
  --tw-prose-invert-links: #fff;
  --tw-prose-invert-bold: #fff;
  --tw-prose-invert-counters: #9ca3af;
  --tw-prose-invert-bullets: #4b5563;
  --tw-prose-invert-hr: #374151;
  --tw-prose-invert-quotes: #f3f4f6;
  --tw-prose-invert-quote-borders: #374151;
  --tw-prose-invert-captions: #9ca3af;
  --tw-prose-invert-kbd: #fff;
  --tw-prose-invert-kbd-shadows: 255 255 255;
  --tw-prose-invert-code: #fff;
  --tw-prose-invert-pre-code: #d1d5db;
  --tw-prose-invert-pre-bg: rgba(0, 0, 0, .5);
  --tw-prose-invert-th-borders: #4b5563;
  --tw-prose-invert-td-borders: #374151;
  font-size: 1rem;
  line-height: 1.75
}

.prose :where(picture>img):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
  margin-bottom: 0
}

.prose :where(li):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .5em;
  margin-bottom: .5em
}

.prose :where(ol>li):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: .375em
}

.prose :where(ul>li):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: .375em
}

.prose :where(.prose>ul>li p):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .75em;
  margin-bottom: .75em
}

.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em
}

.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-bottom: 1.25em
}

.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em
}

.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-bottom: 1.25em
}

.prose :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .75em;
  margin-bottom: .75em
}

.prose :where(dl):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
  margin-bottom: 1.25em
}

.prose :where(dd):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .5em;
  padding-inline-start: 1.625em
}

.prose :where(hr+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0
}

.prose :where(h2+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0
}

.prose :where(h3+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0
}

.prose :where(h4+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0
}

.prose :where(thead th:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: 0
}

.prose :where(thead th:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-end: 0
}

.prose :where(tbody td, tfoot td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-top: .5714286em;
  padding-inline-end: .5714286em;
  padding-bottom: .5714286em;
  padding-inline-start: .5714286em
}

.prose :where(tbody td:first-child, tfoot td:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: 0
}

.prose :where(tbody td:last-child, tfoot td:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-end: 0
}

.prose :where(figure):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 2em;
  margin-bottom: 2em
}

.prose :where(.prose>:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0
}

.prose :where(.prose>:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-bottom: 0
}

.prose-blue {
  --tw-prose-links: #2563eb;
  --tw-prose-invert-links: #3b82f6
}

.static {
  position: static
}

.fixed {
  position: fixed
}

.absolute {
  position: absolute
}

.relative {
  position: relative
}

.inset-0 {
  inset: 0
}

.-top-4 {
  top: -1rem
}

.bottom-0 {
  bottom: 0
}

.bottom-1 {
  bottom: .25rem
}

.bottom-1\.5 {
  bottom: .375rem
}

.bottom-24 {
  bottom: 6rem
}

.bottom-5 {
  bottom: 1.25rem
}

.left-0 {
  left: 0
}

.left-1\/2 {
  left: 50%
}

.left-20 {
  left: 5rem
}

.left-4 {
  left: 1rem
}

.left-5 {
  left: 1.25rem
}

.right-0 {
  right: 0
}

.right-1 {
  right: .25rem
}

.right-1\.5 {
  right: .375rem
}

.right-20 {
  right: 5rem
}

.right-4 {
  right: 1rem
}

.right-5 {
  right: 1.25rem
}

.right-6 {
  right: 1.5rem
}

.top-0 {
  top: 0
}

.top-1 {
  top: .25rem
}

.top-1\.5 {
  top: .375rem
}

.top-1\/2 {
  top: 50%
}

.top-4 {
  top: 1rem
}

.top-5 {
  top: 1.25rem
}

.z-50 {
  z-index: 50
}

.z-\[-1\] {
  z-index: -1
}

.z-\[1\] {
  z-index: 1
}

.col-span-2 {
  grid-column: span 2/span 2
}

.col-span-3 {
  grid-column: span 3/span 3
}

.col-span-full {
  grid-column: 1/-1
}

.-mx-4 {
  margin-left: -1rem;
  margin-right: -1rem
}

.mx-auto {
  margin-left: auto;
  margin-right: auto
}

.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem
}

.-ml-4 {
  margin-left: -1rem
}

.-ml-6 {
  margin-left: -1.5rem
}

.-mt-0 {
  margin-top: 0
}

.-mt-0\.5 {
  margin-top: -.125rem
}

.mb-10 {
  margin-bottom: 2.5rem
}

.mb-4 {
  margin-bottom: 1rem
}

.mb-5 {
  margin-bottom: 1.25rem
}

.mb-6 {
  margin-bottom: 1.5rem
}

.mb-8 {
  margin-bottom: 2rem
}

.ml-2 {
  margin-left: .5rem
}

.ml-4 {
  margin-left: 1rem
}

.ml-auto {
  margin-left: auto
}

.mt-1 {
  margin-top: .25rem
}

.mt-1\.5 {
  margin-top: .375rem
}

.mt-10 {
  margin-top: 2.5rem
}

.mt-12 {
  margin-top: 3rem
}

.mt-14 {
  margin-top: 3.5rem
}

.mt-2 {
  margin-top: .5rem
}

.mt-20 {
  margin-top: 5rem
}

.mt-3 {
  margin-top: .75rem
}

.mt-4 {
  margin-top: 1rem
}

.mt-5 {
  margin-top: 1.25rem
}

.mt-6 {
  margin-top: 1.5rem
}

.mt-7 {
  margin-top: 1.75rem
}

.mt-8 {
  margin-top: 2rem
}

.block {
  display: block
}

.inline-block {
  display: inline-block
}

.flex {
  display: flex
}

.inline-flex {
  display: inline-flex
}

.table {
  display: table
}

.grid {
  display: grid
}

.aspect-\[16\/10\] {
  aspect-ratio: 16/10
}

.aspect-\[3\/4\] {
  aspect-ratio: 3/4
}

.aspect-\[397\/258\] {
  aspect-ratio: 397/258
}

.aspect-square {
  aspect-ratio: 1/1
}

.h-1 {
  height: .25rem
}

.h-10 {
  height: 2.5rem
}

.h-12 {
  height: 3rem
}

.h-14 {
  height: 3.5rem
}

.h-20 {
  height: 5rem
}

.h-24 {
  height: 6rem
}

.h-3 {
  height: .75rem
}

.h-8 {
  height: 2rem
}

.h-\[120px\] {
  height: 120px
}

.h-\[300px\] {
  height: 300px
}

.h-\[44px\] {
  height: 44px
}

.h-\[46px\] {
  height: 46px
}

.h-\[50px\] {
  height: 50px
}

.h-\[52px\] {
  height: 52px
}

.h-\[60px\] {
  height: 60px
}

.h-\[740px\] {
  height: 740px
}

.h-auto {
  height: auto
}

.h-fit {
  height: -moz-fit-content;
  height: fit-content
}

.h-full {
  height: 100%
}

.h-px {
  height: 1px
}

.w-1\/12 {
  width: 8.333333%
}

.w-1\/2 {
  width: 50%
}

.w-1\/4 {
  width: 25%
}

.w-1\/6 {
  width: 16.666667%
}

.w-10 {
  width: 2.5rem
}

.w-12 {
  width: 3rem
}

.w-14 {
  width: 3.5rem
}

.w-20 {
  width: 5rem
}

.w-24 {
  width: 6rem
}

.w-3\/4 {
  width: 75%
}

.w-4\/5 {
  width: 80%
}

.w-5\/6 {
  width: 83.333333%
}

.w-6\/12 {
  width: 50%
}

.w-7\/12 {
  width: 58.333333%
}

.w-8 {
  width: 2rem
}

.w-\[10\%\] {
  width: 10%
}

.w-\[100px\] {
  width: 100px
}

.w-\[120px\] {
  width: 120px
}

.w-\[140px\] {
  width: 140px
}

.w-\[148px\] {
  width: 148px
}

.w-\[20\%\] {
  width: 20%
}

.w-\[26px\] {
  width: 26px
}

.w-\[3\%\] {
  width: 3%
}

.w-\[470px\] {
  width: 470px
}

.w-\[52px\] {
  width: 52px
}

.w-\[60\%\] {
  width: 60%
}

.w-\[60px\] {
  width: 60px
}

.w-\[7\%\] {
  width: 7%
}

.w-auto {
  width: auto
}

.w-fit {
  width: -moz-fit-content;
  width: fit-content
}

.w-full {
  width: 100%;
  margin-left: auto;
  margin-right: auto
}

.max-w-none {
  max-width: none
}

.flex-1 {
  flex: 1 1 0%
}

.flex-shrink-0 {
  flex-shrink: 0
}

.basis-full {
  flex-basis: 100%
}

.table-auto {
  table-layout: auto
}

.border-collapse {
  border-collapse: collapse
}

.-translate-x-1\/2 {
  --tw-translate-x: -50%
}

.-translate-x-1\/2,
.-translate-y-1\/2 {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.-translate-y-1\/2 {
  --tw-translate-y: -50%
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.cursor-pointer {
  cursor: pointer
}

.resize {
  resize: both
}

.list-decimal {
  list-style-type: decimal
}

.list-disc {
  list-style-type: disc
}

.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr))
}

.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr))
}

.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr))
}

.flex-col {
  flex-direction: column
}

.flex-col-reverse {
  flex-direction: column-reverse
}

.flex-wrap {
  flex-wrap: wrap
}

.items-start {
  align-items: flex-start
}

.items-end {
  align-items: flex-end
}

.items-center {
  align-items: center
}

.justify-start {
  justify-content: flex-start
}

.justify-end {
  justify-content: flex-end
}

.justify-center {
  justify-content: center
}

.justify-between {
  justify-content: space-between
}

.gap-0 {
  gap: 0
}

.gap-0\.5 {
  gap: .125rem
}

.gap-1 {
  gap: .25rem
}

.gap-1\.5 {
  gap: .375rem
}

.gap-10 {
  gap: 2.5rem
}

.gap-12 {
  gap: 3rem
}

.gap-2 {
  gap: .5rem
}

.gap-2\.5 {
  gap: .625rem
}

.gap-20 {
  gap: 5rem
}

.gap-3 {
  gap: .75rem
}

.gap-4 {
  gap: 1rem
}

.gap-5 {
  gap: 1.25rem
}

.gap-6 {
  gap: 1.5rem
}

.gap-7 {
  gap: 1.75rem
}

.gap-8 {
  gap: 2rem
}

.gap-\[30px\] {
  gap: 30px
}

.gap-\[88px\] {
  gap: 88px
}

.gap-px {
  gap: 1px
}

.gap-y-1 {
  row-gap: .25rem
}

.gap-y-10 {
  row-gap: 2.5rem
}

.gap-y-12 {
  row-gap: 3rem
}

.gap-y-2 {
  row-gap: .5rem
}

.gap-y-2\.5 {
  row-gap: .625rem
}

.gap-y-3 {
  row-gap: .75rem
}

.gap-y-4 {
  row-gap: 1rem
}

.gap-y-5 {
  row-gap: 1.25rem
}

.gap-y-6 {
  row-gap: 1.5rem
}

.gap-y-8 {
  row-gap: 2rem
}

.overflow-hidden {
  overflow: hidden
}

.whitespace-normal {
  white-space: normal
}

.whitespace-nowrap {
  white-space: nowrap
}

.rounded {
  border-radius: .25rem
}

.rounded-2xl {
  border-radius: 1rem
}

.rounded-3xl {
  border-radius: 1.5rem
}

.rounded-\[20px\] {
  border-radius: 20px
}

.rounded-\[40px\] {
  border-radius: 40px
}

.rounded-full {
  border-radius: 9999px
}

.rounded-lg {
  border-radius: .5rem
}

.rounded-md {
  border-radius: .375rem
}

.rounded-none {
  border-radius: 0
}

.rounded-sm {
  border-radius: .125rem
}

.rounded-xl {
  border-radius: .75rem
}

.rounded-b-3xl {
  border-bottom-right-radius: 1.5rem;
  border-bottom-left-radius: 1.5rem
}

.rounded-l-none {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0
}

.rounded-r {
  border-top-right-radius: .25rem;
  border-bottom-right-radius: .25rem
}

.rounded-t-full {
  border-top-left-radius: 9999px;
  border-top-right-radius: 9999px
}

.border {
  border-width: 1px
}

.border-b {
  border-bottom-width: 1px
}

.border-b-2 {
  border-bottom-width: 2px
}

.border-l {
  border-left-width: 1px
}

.border-l-2 {
  border-left-width: 2px
}

.border-r {
  border-right-width: 1px
}

.border-t {
  border-top-width: 1px
}

.border-black {
  --tw-border-opacity: 1;
  border-color: rgb(12 18 40/var(--tw-border-opacity))
}

.border-blue {
  --tw-border-opacity: 1;
  border-color: rgb(0 151 214/var(--tw-border-opacity))
}

.border-green {
  --tw-border-opacity: 1;
  border-color: rgb(99 228 131/var(--tw-border-opacity))
}

.border-line {
  border-color: hsla(0, 0%, 90%, .1)
}

.border-outline {
  --tw-border-opacity: 1;
  border-color: rgb(228 228 228/var(--tw-border-opacity))
}

.border-pink {
  --tw-border-opacity: 1;
  border-color: rgb(225 55 137/var(--tw-border-opacity))
}

.border-purple {
  --tw-border-opacity: 1;
  border-color: rgb(91 69 243/var(--tw-border-opacity))
}

.border-surface2 {
  --tw-border-opacity: 1;
  border-color: rgb(171 176 180/var(--tw-border-opacity))
}

.border-transparent {
  border-color: transparent
}

.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255/var(--tw-border-opacity))
}

.border-yellow {
  --tw-border-opacity: 1;
  border-color: rgb(244 209 24/var(--tw-border-opacity))
}

.bg-\[\#0D0F44\] {
  --tw-bg-opacity: 1;
  background-color: rgb(13 15 68/var(--tw-bg-opacity))
}

.bg-\[\#25D366\] {
  --tw-bg-opacity: 1;
  background-color: rgb(37 211 102/var(--tw-bg-opacity))
}

.bg-\[\#C72929\] {
  --tw-bg-opacity: 1;
  background-color: rgb(199 41 41/var(--tw-bg-opacity))
}

.bg-\[\#F3F2F0\] {
  --tw-bg-opacity: 1;
  background-color: rgb(243 242 240/var(--tw-bg-opacity))
}

.bg-\[\#F3F4F9\] {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 249/var(--tw-bg-opacity))
}

.bg-\[\#F3F5EF\] {
  --tw-bg-opacity: 1;
  background-color: rgb(243 245 239/var(--tw-bg-opacity))
}

.bg-\[\#F4D118\] {
  --tw-bg-opacity: 1;
  background-color: rgb(244 209 24/var(--tw-bg-opacity))
}

.bg-\[\#F7F3F9\] {
  --tw-bg-opacity: 1;
  background-color: rgb(247 243 249/var(--tw-bg-opacity))
}

.bg-\[\#F8EEEF\] {
  --tw-bg-opacity: 1;
  background-color: rgb(248 238 239/var(--tw-bg-opacity))
}

.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(12 18 40/var(--tw-bg-opacity))
}

.bg-blue {
  --tw-bg-opacity: 1;
  background-color: rgb(0 151 214/var(--tw-bg-opacity))
}

.bg-green {
  --tw-bg-opacity: 1;
  background-color: rgb(99 228 131/var(--tw-bg-opacity))
}

.bg-grey {
  background-color: rgba(39, 75, 227, .1)
}

.bg-outline {
  --tw-bg-opacity: 1;
  background-color: rgb(228 228 228/var(--tw-bg-opacity))
}

.bg-pink {
  --tw-bg-opacity: 1;
  background-color: rgb(225 55 137/var(--tw-bg-opacity))
}

.bg-purple {
  --tw-bg-opacity: 1;
  background-color: rgb(91 69 243/var(--tw-bg-opacity))
}

.bg-surface {
  --tw-bg-opacity: 1;
  background-color: rgb(239 240 243/var(--tw-bg-opacity))
}

.bg-transparent {
  background-color: transparent
}

.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255/var(--tw-bg-opacity))
}

.bg-yellow {
  --tw-bg-opacity: 1;
  background-color: rgb(244 209 24/var(--tw-bg-opacity))
}

.bg-opacity-50 {
  --tw-bg-opacity: 0.5
}

.object-cover {
  -o-object-fit: cover;
  object-fit: cover
}

.p-10 {
  padding: 2.5rem
}

.p-3 {
  padding: .75rem
}

.p-4 {
  padding: 1rem
}

.p-5 {
  padding: 1.25rem
}

.p-6 {
  padding: 1.5rem
}

.p-7 {
  padding: 1.75rem
}

.p-8 {
  padding: 2rem
}

.px-1 {
  padding-left: .25rem;
  padding-right: .25rem
}

.px-10 {
  padding-left: 2.5rem;
  padding-right: 2.5rem
}

.px-2 {
  padding-left: .5rem;
  padding-right: .5rem
}

.px-2\.5 {
  padding-left: .625rem;
  padding-right: .625rem
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem
}

.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem
}

.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem
}

.px-7 {
  padding-left: 1.75rem;
  padding-right: 1.75rem
}

.px-8 {
  padding-left: 2rem;
  padding-right: 2rem
}

.px-9 {
  padding-left: 2.25rem;
  padding-right: 2.25rem
}

.px-\[30px\] {
  padding-left: 30px;
  padding-right: 30px
}

.px-\[60px\] {
  padding-left: 60px;
  padding-right: 60px
}

.py-1 {
  padding-top: .25rem;
  padding-bottom: .25rem
}

.py-1\.5 {
  padding-top: .375rem;
  padding-bottom: .375rem
}

.py-10 {
  padding-top: 2.5rem;
  /*padding-bottom: 2.5rem*/
}

.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem
}

.py-2 {
  padding-top: .5rem;
  padding-bottom: .5rem
}

.py-2\.5 {
  padding-top: .625rem;
  padding-bottom: .625rem
}

.py-20 {
  padding-top: 5rem;
  padding-bottom: 5rem
}

.py-3 {
  padding-top: .75rem;
  padding-bottom: .75rem
}

.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem
}

.py-5 {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem
}

.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem
}

.py-7 {
  padding-top: 1.75rem;
  padding-bottom: 1.75rem
}

.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem
}

.py-9 {
  padding-top: 2.25rem;
  padding-bottom: 2.25rem
}

.py-\[5px\] {
  padding-top: 5px;
  padding-bottom: 5px
}

.py-\[60px\] {
  padding-top: 60px;
  padding-bottom: 60px
}

.pb-1 {
  padding-bottom: .25rem
}

.pb-10 {
  padding-bottom: 2.5rem
}

.pb-2 {
  padding-bottom: .5rem
}

.pb-20 {
  padding-bottom: 5rem
}

.pb-3 {
  padding-bottom: .75rem
}

.pb-4 {
  padding-bottom: 1rem
}

.pb-5 {
  padding-bottom: 1.25rem
}

.pb-6 {
  padding-bottom: 1.5rem
}

.pb-8 {
  padding-bottom: 2rem
}

.pb-9 {
  padding-bottom: 2.25rem
}

.pb-\[60px\] {
  padding-bottom: 60px
}

.pl-1 {
  padding-left: .25rem
}

.pl-10 {
  padding-left: 2.5rem
}

.pl-2 {
  padding-left: .5rem
}

.pl-3 {
  padding-left: .75rem
}

.pl-4 {
  padding-left: 1rem
}

.pl-5 {
  padding-left: 1.25rem
}

.pl-6 {
  padding-left: 1.5rem
}

.pl-\[15px\] {
  padding-left: 15px
}

.pl-\[60px\] {
  padding-left: 60px
}

.pr-10 {
  padding-right: 2.5rem
}

.pr-12 {
  padding-right: 3rem
}

.pr-14 {
  padding-right: 3.5rem
}

.pr-3 {
  padding-right: .75rem
}

.pr-4 {
  padding-right: 1rem
}

.pr-40 {
  padding-right: 10rem
}

.pr-6 {
  padding-right: 1.5rem
}

.pr-8 {
  padding-right: 2rem
}

.pr-\[15px\] {
  padding-right: 15px
}

.pr-\[45px\] {
  padding-right: 45px
}

.pt-10 {
  padding-top: 2.5rem
}

.pt-20 {
  padding-top: 5rem
}

.pt-3 {
  padding-top: .75rem
}

.pt-32 {
  padding-top: 8rem
}

.pt-4 {
  padding-top: 1rem
}

.pt-48 {
  padding-top: 12rem
}

.pt-5 {
  padding-top: 1.25rem
}

.pt-6 {
  padding-top: 1.5rem
}

.pt-8 {
  padding-top: 2rem
}

.text-left {
  text-align: left
}

.text-center {
  text-align: center
}

.text-justify {
  text-align: justify
}

.text-start {
  text-align: start
}

.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem
}

.text-3xl {
  font-size: 1.875rem;
  line-height: 2.25rem
}

.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem
}

.text-5xl {
  font-size: 3rem;
  line-height: 1
}

.text-6xl {
  font-size: 3.75rem;
  line-height: 1
}

.text-7xl {
  font-size: 4.5rem;
  line-height: 1
}

.text-base {
  font-size: 1rem;
  line-height: 1.5rem
}

.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem
}

.text-lg\/9 {
  font-size: 1.125rem;
  line-height: 2.25rem
}

.text-sm {
  font-size: .875rem;
  line-height: 1.25rem
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem
}

.text-xs {
  font-size: .75rem;
  line-height: 1rem
}

.font-bold {
  font-weight: 700
}

.font-medium {
  font-weight: 500
}

.font-normal {
  font-weight: 400
}

.font-semibold {
  font-weight: 600
}

.uppercase {
  text-transform: uppercase
}

.capitalize {
  text-transform: capitalize
}

.normal-case {
  text-transform: none
}

.italic {
  font-style: italic
}

.tracking-wider {
  letter-spacing: .05em
}

.text-\[\#33CCFF\] {
  --tw-text-opacity: 1;
  color: rgb(51 204 255/var(--tw-text-opacity))
}

.text-\[\#C72929\] {
  --tw-text-opacity: 1;
  color: rgb(199 41 41/var(--tw-text-opacity))
}

.text-\[\#F4D118\] {
  --tw-text-opacity: 1;
  color: rgb(244 209 24/var(--tw-text-opacity))
}

.text-black {
  --tw-text-opacity: 1;
  color: rgb(12 18 40/var(--tw-text-opacity))
}

.text-blue {
  --tw-text-opacity: 1;
  color: rgb(0 151 214/var(--tw-text-opacity))
}

.text-green {
  --tw-text-opacity: 1;
  color: rgb(99 228 131/var(--tw-text-opacity))
}

.text-pink {
  --tw-text-opacity: 1;
  color: rgb(225 55 137/var(--tw-text-opacity))
}

.text-purple {
  --tw-text-opacity: 1;
  color: rgb(91 69 243/var(--tw-text-opacity))
}

.text-surface1 {
  --tw-text-opacity: 1;
  color: rgb(100 101 112/var(--tw-text-opacity))
}

.text-surface2 {
  --tw-text-opacity: 1;
  color: rgb(171 176 180/var(--tw-text-opacity))
}

.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255/var(--tw-text-opacity)) !important
}

.text-yellow {
  --tw-text-opacity: 1;
  color: rgb(244 209 24/var(--tw-text-opacity))
}

.underline {
  text-decoration-line: underline
}

.opacity-0 {
  opacity: 0
}

.opacity-10 {
  opacity: .1
}

.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color)
}

.shadow-lg,
.shadow-md {
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.shadow-md {
  --tw-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color)
}

.shadow-xl {
  --tw-shadow: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)
}

.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s
}

.duration-300 {
  transition-duration: .3s
}

.duration-500 {
  transition-duration: .5s
}

.hover\:border-black:hover {
  --tw-border-opacity: 1;
  border-color: rgb(12 18 40/var(--tw-border-opacity))
}

.hover\:border-blue:hover {
  --tw-border-opacity: 1;
  border-color: rgb(0 151 214/var(--tw-border-opacity))
}

.hover\:border-purple:hover {
  --tw-border-opacity: 1;
  border-color: rgb(91 69 243/var(--tw-border-opacity))
}

.hover\:border-yellow:hover {
  --tw-border-opacity: 1;
  border-color: rgb(244 209 24/var(--tw-border-opacity))
}

.hover\:bg-\[\#22c15e\]:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(34 193 94/var(--tw-bg-opacity))
}

.hover\:bg-black:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(12 18 40/var(--tw-bg-opacity))
}

.hover\:bg-blue:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(0 151 214/var(--tw-bg-opacity))
}

.hover\:bg-green:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(99 228 131/var(--tw-bg-opacity))
}

.hover\:bg-pink:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(225 55 137/var(--tw-bg-opacity))
}

.hover\:bg-purple:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(91 69 243/var(--tw-bg-opacity))
}

.hover\:bg-white:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255/var(--tw-bg-opacity))
}

.hover\:bg-yellow:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(244 209 24/var(--tw-bg-opacity))
}

.hover\:text-black:hover {
  --tw-text-opacity: 1;
  color: rgb(12 18 40/var(--tw-text-opacity))
}

.hover\:text-blue:hover {
  --tw-text-opacity: 1;
  color: rgb(0 151 214/var(--tw-text-opacity))
}

.hover\:text-green:hover {
  --tw-text-opacity: 1;
  color: rgb(99 228 131/var(--tw-text-opacity))
}

.hover\:text-pink:hover {
  --tw-text-opacity: 1;
  color: rgb(225 55 137/var(--tw-text-opacity))
}

.hover\:text-purple:hover {
  --tw-text-opacity: 1;
  color: rgb(91 69 243/var(--tw-text-opacity))
}

.hover\:text-white:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255/var(--tw-text-opacity))
}

.hover\:text-yellow:hover {
  --tw-text-opacity: 1;
  color: rgb(244 209 24/var(--tw-text-opacity))
}

.hover\:underline:hover {
  text-decoration-line: underline
}

.hover\:shadow-lg:hover {
  --tw-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}

@media not all and (min-width:1280px) {
  .max-xl\:mt-7 {
    margin-top: 1.75rem
  }

  .max-xl\:flex {
    display: flex
  }

  .max-xl\:hidden {
    display: none
  }

  .max-xl\:w-1\/2 {
    width: 50%
  }

  .max-xl\:flex-col {
    flex-direction: column
  }

  .max-xl\:flex-col-reverse {
    flex-direction: column-reverse
  }

  .max-xl\:flex-wrap {
    flex-wrap: wrap
  }
}

@media not all and (min-width:1024px) {
  .max-lg\:col-span-2 {
    grid-column: span 2/span 2
  }

  .max-lg\:mt-10 {
    margin-top: 2.5rem
  }

  .max-lg\:mt-8 {
    margin-top: 2rem
  }

  .max-lg\:hidden {
    display: none
  }

  .max-lg\:h-\[400px\] {
    height: 400px
  }

  .max-lg\:w-1\/2 {
    width: 50%
  }

  .max-lg\:w-full {
    width: 100%
  }

  .max-lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }

  .max-lg\:flex-col {
    flex-direction: column
  }

  .max-lg\:flex-col-reverse {
    flex-direction: column-reverse
  }

  .max-lg\:flex-wrap {
    flex-wrap: wrap
  }

  .max-lg\:justify-center {
    justify-content: center
  }

  .max-lg\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem
  }

  .max-lg\:py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem
  }

  .max-lg\:pb-12 {
    padding-bottom: 3rem
  }

  .max-lg\:text-center {
    text-align: center
  }
}

@media not all and (min-width:768px) {
  .max-md\:flex {
    display: flex
  }

  .max-md\:w-full {
    width: 100%
  }

  .max-md\:flex-col {
    flex-direction: column
  }

  .max-md\:gap-20 {
    gap: 5rem
  }

  .max-md\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem
  }

  .max-md\:py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem
  }

  .max-md\:text-base {
    font-size: 1rem;
    line-height: 1.5rem
  }
}

@media not all and (min-width:640px) {
  .max-sm\:col-span-2 {
    grid-column: span 2/span 2
  }

  .max-sm\:hidden {
    display: none
  }

  .max-sm\:h-\[300px\] {
    height: 300px
  }

  .max-sm\:h-full {
    height: 100%
  }

  .max-sm\:w-full {
    width: 100%
  }

  .max-sm\:flex-col {
    flex-direction: column
  }

  .max-sm\:flex-col-reverse {
    flex-direction: column-reverse
  }

  .max-sm\:flex-wrap {
    flex-wrap: wrap
  }

  .max-sm\:gap-y-6 {
    row-gap: 1.5rem
  }

  .max-sm\:px-7 {
    padding-left: 1.75rem;
    padding-right: 1.75rem
  }

  .max-sm\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem
  }

  .max-sm\:py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem
  }

  .max-sm\:pb-10 {
    padding-bottom: 2.5rem
  }

  .max-sm\:pb-8 {
    padding-bottom: 2rem
  }
}

@media (max-width:510px) {
  .max-\[510px\]\:w-full {
    width: 100%
  }
}

@media (min-width:640px) {
  .sm\:col-span-2 {
    grid-column: span 2/span 2
  }

  .sm\:mb-14 {
    margin-bottom: 3.5rem
  }

  .sm\:mt-10 {
    margin-top: 2.5rem
  }

  .sm\:mt-12 {
    margin-top: 3rem
  }

  .sm\:mt-14 {
    margin-top: 3.5rem
  }

  .sm\:mt-4 {
    margin-top: 1rem
  }

  .sm\:mt-7 {
    margin-top: 1.75rem
  }

  .sm\:h-\[120px\] {
    height: 120px
  }

  .sm\:w-1\/2 {
    width: 50%
  }

  .sm\:w-2\/3 {
    width: 66.666667%
  }

  .sm\:w-5\/12 {
    width: 41.666667%
  }

  .sm\:w-5\/6 {
    width: 83.333333%
  }

  .sm\:w-7\/12 {
    width: 58.333333%
  }

  .sm\:w-\[120px\] {
    width: 120px
  }

  .sm\:w-\[147px\] {
    width: 147px
  }

  .sm\:w-\[45\%\] {
    width: 45%
  }

  .sm\:flex-shrink-0 {
    flex-shrink: 0
  }

  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }

  .sm\:items-center {
    align-items: center
  }

  .sm\:justify-center {
    justify-content: center
  }

  .sm\:justify-between {
    justify-content: space-between
  }

  .sm\:gap-14 {
    gap: 3.5rem
  }

  .sm\:gap-\[30px\] {
    gap: 30px
  }

  .sm\:rounded-3xl {
    border-radius: 1.5rem
  }

  .sm\:p-10 {
    padding: 2.5rem
  }

  .sm\:p-12 {
    padding: 3rem
  }

  .sm\:p-14 {
    padding: 3.5rem
  }

  .sm\:px-10 {
    padding-left: 2.5rem;
    padding-right: 2.5rem
  }

  .sm\:px-20 {
    padding-left: 5rem;
    padding-right: 5rem
  }

  .sm\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem
  }

  .sm\:py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem
  }

  .sm\:py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem
  }

  .sm\:py-14 {
    padding-top: 3.5rem;
    /*padding-bottom: 3.5rem*/
  }

  .sm\:py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem
  }

  .sm\:py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem
  }

  .sm\:py-\[60px\] {
    padding-top: 60px;
    padding-bottom: 60px
  }

  .sm\:pb-10 {
    padding-bottom: 2.5rem
  }

  .sm\:pb-12 {
    padding-bottom: 3rem
  }

  .sm\:pb-14 {
    padding-bottom: 3.5rem
  }

  .sm\:pl-5 {
    padding-left: 1.25rem
  }

  .sm\:pl-\[55px\] {
    padding-left: 55px
  }

  .sm\:pr-\[55px\] {
    padding-right: 55px
  }

  .sm\:pt-10 {
    padding-top: 2.5rem
  }

  .sm\:pt-14 {
    padding-top: 3.5rem
  }

  .sm\:pt-\[295px\] {
    padding-top: 295px
  }

  .sm\:text-center {
    text-align: center
  }

  .sm\:text-right {
    text-align: right
  }

  .sm\:text-end {
    text-align: end
  }
}

@media (min-width:768px) {
  .md\:absolute {
    position: absolute
  }

  .md\:mt-10 {
    margin-top: 2.5rem
  }

  .md\:mt-4 {
    margin-top: 1rem
  }

  .md\:mt-6 {
    margin-top: 1.5rem
  }

  .md\:mt-7 {
    margin-top: 1.75rem
  }

  .md\:mt-8 {
    margin-top: 2rem
  }

  .md\:mt-9 {
    margin-top: 2.25rem
  }

  .md\:h-\[460px\] {
    height: 460px
  }

  .md\:h-\[60px\] {
    height: 60px
  }

  .md\:h-full {
    height: 100%
  }

  .md\:w-1\/2 {
    width: 50%
  }

  .md\:w-2\/3 {
    width: 66.666667%
  }

  .md\:w-5\/12 {
    width: 41.666667%
  }

  .md\:w-5\/6 {
    width: 83.333333%
  }

  .md\:w-\[100px\] {
    width: 100px
  }

  .md\:w-\[60px\] {
    width: 60px
  }

  .md\:w-full {
    width: 100%
  }

  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }

  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr))
  }

  .md\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr))
  }

  .md\:justify-evenly {
    justify-content: space-evenly
  }

  .md\:gap-1 {
    gap: .25rem
  }

  .md\:gap-1\.5 {
    gap: .375rem
  }

  .md\:gap-\[30px\] {
    gap: 30px
  }

  .md\:gap-y-4 {
    row-gap: 1rem
  }

  .md\:gap-y-8 {
    row-gap: 2rem
  }

  .md\:rounded-3xl {
    border-radius: 1.5rem
  }

  .md\:border-r {
    border-right-width: 1px
  }

  .md\:border-outline {
    --tw-border-opacity: 1;
    border-color: rgb(228 228 228/var(--tw-border-opacity))
  }

  .md\:p-10 {
    padding: 2.5rem
  }

  .md\:p-\[60px\] {
    padding: 60px
  }

  .md\:px-2 {
    padding-left: .5rem;
    padding-right: .5rem
  }

  .md\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem
  }

  .md\:py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem
  }

  .md\:py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem
  }

  .md\:py-20 {
    padding-top: 5rem;
    padding-bottom: 5rem
  }

  .md\:py-3 {
    padding-top: .75rem;
    padding-bottom: .75rem
  }

  .md\:py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem
  }

  .md\:py-\[60px\] {
    padding-top: 60px;
    padding-bottom: 60px
  }

  .md\:pb-10 {
    padding-bottom: 2.5rem
  }

  .md\:pb-12 {
    padding-bottom: 3rem
  }

  .md\:pb-7 {
    padding-bottom: 1.75rem
  }

  .md\:pl-10 {
    padding-left: 2.5rem
  }

  .md\:pl-\[15px\] {
    padding-left: 15px
  }

  .md\:pl-\[45px\] {
    padding-left: 45px
  }

  .md\:pr-20 {
    padding-right: 5rem
  }

  .md\:pr-6 {
    padding-right: 1.5rem
  }

  .md\:pr-8 {
    padding-right: 2rem
  }

  .md\:pt-10 {
    padding-top: 2.5rem
  }

  .md\:pt-14 {
    padding-top: 3.5rem
  }
}

@media (min-width:1024px) {
  .lg\:absolute {
    position: absolute
  }

  .lg\:mb-20 {
    margin-bottom: 5rem
  }

  .lg\:ml-7 {
    margin-left: 1.75rem
  }

  .lg\:ml-\[70px\] {
    margin-left: 70px
  }

  .lg\:mt-10 {
    margin-top: 2.5rem
  }

  .lg\:mt-20 {
    margin-top: 5rem
  }

  .lg\:mt-3 {
    margin-top: .75rem
  }

  .lg\:mt-5 {
    margin-top: 1.25rem
  }

  .lg\:mt-6 {
    margin-top: 1.5rem
  }

  .lg\:mt-8 {
    margin-top: 2rem
  }

  .lg\:mt-9 {
    margin-top: 2.25rem
  }

  .lg\:mt-\[60px\] {
    margin-top: 60px
  }

  .lg\:flex {
    display: flex
  }

  .lg\:hidden {
    display: none
  }

  .lg\:h-\[120px\] {
    height: 120px
  }

  .lg\:h-\[68px\] {
    height: 68px
  }

  .lg\:w-1\/2 {
    width: 50%
  }

  .lg\:w-1\/3 {
    width: 33.333333%
  }

  .lg\:w-1\/4 {
    width: 25%
  }

  .lg\:w-11\/12 {
    width: 91.666667%
  }

  .lg\:w-2\/3 {
    width: 66.666667%
  }

  .lg\:w-2\/5 {
    width: 40%
  }

  .lg\:w-3\/4 {
    width: 75%
  }

  .lg\:w-4\/5 {
    width: 80%
  }

  .lg\:w-5\/12 {
    width: 41.666667%
  }

  .lg\:w-5\/6 {
    width: 83.333333%
  }

  .lg\:w-6\/12 {
    width: 50%
  }

  .lg\:w-7\/12 {
    width: 58.333333%
  }

  .lg\:w-\[120px\] {
    width: 120px
  }

  .lg\:w-\[40\%\] {
    width: 40%
  }

  .lg\:w-\[68px\] {
    width: 68px
  }

  .lg\:basis-5\/6 {
    flex-basis: 83.333333%
  }

  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }

  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr))
  }

  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr))
  }

  .lg\:items-center {
    align-items: center
  }

  .lg\:gap-7 {
    gap: 1.75rem
  }

  .lg\:gap-8 {
    gap: 2rem
  }

  .lg\:gap-\[30px\] {
    gap: 30px
  }

  .lg\:border-r {
    border-right-width: 1px
  }

  .lg\:p-20 {
    padding: 5rem
  }

  .lg\:p-\[60px\] {
    padding: 60px
  }

  .lg\:px-20 {
    padding-left: 5rem;
    padding-right: 5rem
  }

  .lg\:px-\[60px\] {
    padding-left: 60px;
    padding-right: 60px
  }

  .lg\:py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem
  }

  .lg\:py-14 {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem
  }

  .lg\:py-2 {
    padding-top: .5rem;
    padding-bottom: .5rem
  }

  .lg\:py-2\.5 {
    padding-top: .625rem;
    padding-bottom: .625rem
  }

  .lg\:py-20 {
    padding-top: 2rem;
    padding-bottom: 2rem
  }

  .lg\:py-24 {
    padding-top: 6rem;
    padding-bottom: 6rem
  }

  .lg\:py-5 {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem
  }

  .lg\:py-\[100px\] {
    padding-top: 100px;
    padding-bottom: 100px
  }

  .lg\:py-\[144px\] {
    padding-top: 144px;
    padding-bottom: 144px
  }

  .lg\:py-\[60px\] {
    padding-top: 60px;
    padding-bottom: 60px
  }

  .lg\:pb-12 {
    padding-bottom: 3rem
  }

  .lg\:pb-20 {
    padding-bottom: 5rem
  }

  .lg\:pb-\[60px\] {
    padding-bottom: 60px
  }

  .lg\:pl-10 {
    padding-left: 2.5rem
  }

  .lg\:pl-12 {
    padding-left: 3rem
  }

  .lg\:pl-16 {
    padding-left: 4rem
  }

  .lg\:pl-20 {
    padding-left: 5rem
  }

  .lg\:pl-3 {
    padding-left: .75rem
  }

  .lg\:pl-32 {
    padding-left: 8rem
  }

  .lg\:pl-4 {
    padding-left: 1rem
  }

  .lg\:pl-7 {
    padding-left: 1.75rem
  }

  .lg\:pl-\[47px\] {
    padding-left: 47px
  }

  .lg\:pl-\[55px\] {
    padding-left: 55px
  }

  .lg\:pl-\[65px\] {
    padding-left: 65px
  }

  .lg\:pl-\[74px\] {
    padding-left: 74px
  }

  .lg\:pr-10 {
    padding-right: 2.5rem
  }

  .lg\:pr-12 {
    padding-right: 3rem
  }

  .lg\:pr-16 {
    padding-right: 4rem
  }

  .lg\:pr-20 {
    padding-right: 5rem
  }

  .lg\:pr-3 {
    padding-right: .75rem
  }

  .lg\:pr-4 {
    padding-right: 1rem
  }

  .lg\:pr-7 {
    padding-right: 1.75rem
  }

  .lg\:pr-\[15px\] {
    padding-right: 15px
  }

  .lg\:pr-\[45px\] {
    padding-right: 45px
  }

  .lg\:pr-\[65px\] {
    padding-right: 65px
  }

  .lg\:pt-20 {
    padding-top: 5rem
  }

  .lg\:pt-\[265px\] {
    padding-top: 265px
  }

  .lg\:pt-\[60px\] {
    padding-top: 60px
  }

  .lg\:text-end {
    text-align: end
  }

  .lg\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem
  }

  .lg\:text-9xl {
    font-size: 8rem;
    line-height: 1
  }
}

@media (min-width:1280px) {
  .xl\:mt-10 {
    margin-top: 2.5rem
  }

  .xl\:flex {
    display: flex
  }

  .xl\:w-1\/2 {
    width: 50%
  }

  .xl\:w-1\/3 {
    width: 33.333333%
  }

  .xl\:w-1\/4 {
    width: 25%
  }

  .xl\:w-2\/3 {
    width: 66.666667%
  }

  .xl\:w-3\/4 {
    width: 75%
  }

  .xl\:w-5\/12 {
    width: 41.666667%
  }

  .xl\:w-7\/12 {
    width: 58.333333%
  }

  .xl\:basis-1\/3 {
    flex-basis: 33.333333%
  }

  .xl\:basis-2\/3 {
    flex-basis: 66.666667%
  }

  .xl\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr))
  }

  .xl\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr))
  }

  .xl\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr))
  }

  .xl\:flex-row {
    flex-direction: row
  }

  .xl\:items-center {
    align-items: center
  }

  .xl\:justify-end {
    justify-content: flex-end
  }

  .xl\:p-10 {
    padding: 2.5rem
  }

  .xl\:px-20 {
    padding-right: 5rem
  }

  .xl\:pl-20,
  .xl\:px-20 {
    padding-left: 5rem
  }

  .xl\:pl-4 {
    padding-left: 1rem
  }

  .xl\:pl-8 {
    padding-left: 2rem
  }

  .xl\:pl-\[15px\] {
    padding-left: 15px
  }

  .xl\:pr-16 {
    padding-right: 4rem
  }

  .xl\:pr-4 {
    padding-right: 1rem
  }

  .xl\:pr-7 {
    padding-right: 1.75rem
  }

  .xl\:pr-\[15px\] {
    padding-right: 15px
  }

  .xl\:pr-\[55px\] {
    padding-right: 55px
  }
}

@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal
}

:root {
  --swiper-theme-color: #007aff
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block
}

.swiper-vertical>.swiper-wrapper {
  flex-direction: column
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translateZ(0)
}

.swiper-horizontal {
  touch-action: pan-y
}

.swiper-vertical {
  touch-action: pan-x
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block
}

.swiper-slide-invisible-blank {
  visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d
}

.swiper-3d {
  perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
  transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
  display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
  scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
  scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
  scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
  content: "";
  flex-shrink: 0;
  order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after)
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border-radius: 50%;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-top: 4px solid transparent
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s linear infinite
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg)
  }

  to {
    transform: rotate(1turn)
  }
}

:root {
  --swiper-navigation-size: 44px
}

.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none
}

.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
  display: none !important
}

.swiper-button-next svg,
.swiper-button-prev svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  transform-origin: center
}

.swiper-rtl .swiper-button-next svg,
.swiper-rtl .swiper-button-prev svg {
  transform: rotate(180deg)
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto
}

.swiper-button-lock {
  display: none
}

.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: normal;
  line-height: 1
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev"
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next"
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: opacity .3s;
  transform: translateZ(0);
  z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(.33);
  position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(.33)
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer
}

.swiper-pagination-bullet:only-child {
  display: none !important
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical>.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: transform .2s, top .2s
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: transform .2s, left .2s
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: transform .2s, right .2s
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit)
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));
  position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical>.swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0
}

.swiper-pagination-lock {
  display: none
}

:root {
  --toastify-color-light: #fff;
  --toastify-color-dark: #121212;
  --toastify-color-info: #3498db;
  --toastify-color-success: #07bc0c;
  --toastify-color-warning: #f1c40f;
  --toastify-color-error: #e74c3c;
  --toastify-color-transparent: hsla(0, 0%, 100%, .7);
  --toastify-icon-color-info: var(--toastify-color-info);
  --toastify-icon-color-success: var(--toastify-color-success);
  --toastify-icon-color-warning: var(--toastify-color-warning);
  --toastify-icon-color-error: var(--toastify-color-error);
  --toastify-toast-width: 320px;
  --toastify-toast-offset: 16px;
  --toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));
  --toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));
  --toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));
  --toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));
  --toastify-toast-background: #fff;
  --toastify-toast-min-height: 64px;
  --toastify-toast-max-height: 800px;
  --toastify-toast-bd-radius: 6px;
  --toastify-font-family: sans-serif;
  --toastify-z-index: 9999;
  --toastify-text-color-light: #757575;
  --toastify-text-color-dark: #fff;
  --toastify-text-color-info: #fff;
  --toastify-text-color-success: #fff;
  --toastify-text-color-warning: #fff;
  --toastify-text-color-error: #fff;
  --toastify-spinner-color: #616161;
  --toastify-spinner-color-empty-area: #e0e0e0;
  --toastify-color-progress-light: linear-gradient(90deg, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);
  --toastify-color-progress-dark: #bb86fc;
  --toastify-color-progress-info: var(--toastify-color-info);
  --toastify-color-progress-success: var(--toastify-color-success);
  --toastify-color-progress-warning: var(--toastify-color-warning);
  --toastify-color-progress-error: var(--toastify-color-error);
  --toastify-color-progress-bgo: 0.2
}

.Toastify__toast-container {
  z-index: var(--toastify-z-index);
  -webkit-transform: translateZ(var(--toastify-z-index));
  position: fixed;
  padding: 4px;
  width: var(--toastify-toast-width);
  box-sizing: border-box;
  color: #fff
}

.Toastify__toast-container--top-left {
  top: var(--toastify-toast-top);
  left: var(--toastify-toast-left)
}

.Toastify__toast-container--top-center {
  top: var(--toastify-toast-top);
  left: 50%;
  transform: translateX(-50%)
}

.Toastify__toast-container--top-right {
  top: var(--toastify-toast-top);
  right: var(--toastify-toast-right)
}

.Toastify__toast-container--bottom-left {
  bottom: var(--toastify-toast-bottom);
  left: var(--toastify-toast-left)
}

.Toastify__toast-container--bottom-center {
  bottom: var(--toastify-toast-bottom);
  left: 50%;
  transform: translateX(-50%)
}

.Toastify__toast-container--bottom-right {
  bottom: var(--toastify-toast-bottom);
  right: var(--toastify-toast-right)
}

@media only screen and (max-width:480px) {
  .Toastify__toast-container {
    width: 100vw;
    padding: 0;
    left: env(safe-area-inset-left);
    margin: 0
  }

  .Toastify__toast-container--top-center,
  .Toastify__toast-container--top-left,
  .Toastify__toast-container--top-right {
    top: env(safe-area-inset-top);
    transform: translateX(0)
  }

  .Toastify__toast-container--bottom-center,
  .Toastify__toast-container--bottom-left,
  .Toastify__toast-container--bottom-right {
    bottom: env(safe-area-inset-bottom);
    transform: translateX(0)
  }

  .Toastify__toast-container--rtl {
    right: env(safe-area-inset-right);
    left: auto
  }
}

.Toastify__toast {
  --y: 0;
  position: relative;
  touch-action: none;
  min-height: var(--toastify-toast-min-height);
  box-sizing: border-box;
  margin-bottom: 1rem;
  padding: 8px;
  border-radius: var(--toastify-toast-bd-radius);
  box-shadow: 0 4px 12px rgba(0, 0, 0, .1);
  display: flex;
  justify-content: space-between;
  max-height: var(--toastify-toast-max-height);
  font-family: var(--toastify-font-family);
  cursor: default;
  direction: ltr;
  z-index: 0;
  overflow: hidden
}

.Toastify__toast--stacked {
  position: absolute;
  width: 100%;
  transform: translate3d(0, var(--y), 0) scale(var(--s));
  transition: transform .3s
}

.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,
.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body {
  transition: opacity .1s
}

.Toastify__toast--stacked[data-collapsed=false] {
  overflow: visible
}

.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>* {
  opacity: 0
}

.Toastify__toast--stacked:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: calc(var(--g) * 1px);
  bottom: 100%
}

.Toastify__toast--stacked[data-pos=top] {
  top: 0
}

.Toastify__toast--stacked[data-pos=bot] {
  bottom: 0
}

.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before {
  transform-origin: top
}

.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before {
  transform-origin: bottom
}

.Toastify__toast--stacked:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  transform: scaleY(3);
  z-index: -1
}

.Toastify__toast--rtl {
  direction: rtl
}

.Toastify__toast--close-on-click {
  cursor: pointer
}

.Toastify__toast-body {
  margin: auto 0;
  flex: 1 1 auto;
  padding: 6px;
  display: flex;
  align-items: center
}

.Toastify__toast-body>div:last-child {
  word-break: break-word;
  flex: 1
}

.Toastify__toast-icon {
  margin-inline-end: 10px;
  width: 20px;
  flex-shrink: 0;
  display: flex
}

.Toastify--animate {
  animation-fill-mode: both;
  animation-duration: .5s
}

.Toastify--animate-icon {
  animation-fill-mode: both;
  animation-duration: .3s
}

@media only screen and (max-width:480px) {
  .Toastify__toast {
    margin-bottom: 0;
    border-radius: 0
  }
}

.Toastify__toast-theme--dark {
  background: var(--toastify-color-dark);
  color: var(--toastify-text-color-dark)
}

.Toastify__toast-theme--colored.Toastify__toast--default,
.Toastify__toast-theme--light {
  background: var(--toastify-color-light);
  color: var(--toastify-text-color-light)
}

.Toastify__toast-theme--colored.Toastify__toast--info {
  color: var(--toastify-text-color-info);
  background: var(--toastify-color-info)
}

.Toastify__toast-theme--colored.Toastify__toast--success {
  color: var(--toastify-text-color-success);
  background: var(--toastify-color-success)
}

.Toastify__toast-theme--colored.Toastify__toast--warning {
  color: var(--toastify-text-color-warning);
  background: var(--toastify-color-warning)
}

.Toastify__toast-theme--colored.Toastify__toast--error {
  color: var(--toastify-text-color-error);
  background: var(--toastify-color-error)
}

.Toastify__progress-bar-theme--light {
  background: var(--toastify-color-progress-light)
}

.Toastify__progress-bar-theme--dark {
  background: var(--toastify-color-progress-dark)
}

.Toastify__progress-bar--info {
  background: var(--toastify-color-progress-info)
}

.Toastify__progress-bar--success {
  background: var(--toastify-color-progress-success)
}

.Toastify__progress-bar--warning {
  background: var(--toastify-color-progress-warning)
}

.Toastify__progress-bar--error {
  background: var(--toastify-color-progress-error)
}

.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,
.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning {
  background: var(--toastify-color-transparent)
}

.Toastify__close-button {
  color: #fff;
  background: transparent;
  outline: none;
  border: none;
  padding: 0;
  cursor: pointer;
  opacity: .7;
  transition: .3s ease;
  align-self: flex-start;
  z-index: 1
}

.Toastify__close-button--light {
  color: #000;
  opacity: .3
}

.Toastify__close-button>svg {
  fill: currentColor;
  height: 16px;
  width: 14px
}

.Toastify__close-button:focus,
.Toastify__close-button:hover {
  opacity: 1
}

@keyframes Toastify__trackProgress {
  0% {
    transform: scaleX(1)
  }

  to {
    transform: scaleX(0)
  }
}

.Toastify__progress-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--toastify-z-index);
  opacity: .7;
  transform-origin: left;
  border-bottom-left-radius: var(--toastify-toast-bd-radius)
}

.Toastify__progress-bar--animated {
  animation: Toastify__trackProgress linear 1 forwards
}

.Toastify__progress-bar--controlled {
  transition: transform .2s
}

.Toastify__progress-bar--rtl {
  right: 0;
  left: auto;
  transform-origin: right;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: var(--toastify-toast-bd-radius)
}

.Toastify__progress-bar--wrp {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  border-bottom-left-radius: var(--toastify-toast-bd-radius)
}

.Toastify__progress-bar--wrp[data-hidden=true] {
  opacity: 0
}

.Toastify__progress-bar--bg {
  opacity: var(--toastify-color-progress-bgo);
  width: 100%;
  height: 100%
}

.Toastify__spinner {
  width: 20px;
  height: 20px;
  box-sizing: border-box;
  border: 2px solid;
  border-radius: 100%;
  border-color: var(--toastify-spinner-color-empty-area);
  border-right-color: var(--toastify-spinner-color);
  animation: Toastify__spin .65s linear infinite
}

@keyframes Toastify__bounceInRight {

  0%,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1)
  }

  0% {
    opacity: 0;
    transform: translate3d(3000px, 0, 0)
  }

  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0)
  }

  75% {
    transform: translate3d(10px, 0, 0)
  }

  90% {
    transform: translate3d(-5px, 0, 0)
  }

  to {
    transform: none
  }
}

@keyframes Toastify__bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, var(--y), 0)
  }

  to {
    opacity: 0;
    transform: translate3d(2000px, var(--y), 0)
  }
}

@keyframes Toastify__bounceInLeft {

  0%,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1)
  }

  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0)
  }

  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0)
  }

  75% {
    transform: translate3d(-10px, 0, 0)
  }

  90% {
    transform: translate3d(5px, 0, 0)
  }

  to {
    transform: none
  }
}

@keyframes Toastify__bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, var(--y), 0)
  }

  to {
    opacity: 0;
    transform: translate3d(-2000px, var(--y), 0)
  }
}

@keyframes Toastify__bounceInUp {

  0%,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1)
  }

  0% {
    opacity: 0;
    transform: translate3d(0, 3000px, 0)
  }

  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0)
  }

  75% {
    transform: translate3d(0, 10px, 0)
  }

  90% {
    transform: translate3d(0, -5px, 0)
  }

  to {
    transform: translateZ(0)
  }
}

@keyframes Toastify__bounceOutUp {
  20% {
    transform: translate3d(0, calc(var(--y) - 10px), 0)
  }

  40%,
  45% {
    opacity: 1;
    transform: translate3d(0, calc(var(--y) + 20px), 0)
  }

  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0)
  }
}

@keyframes Toastify__bounceInDown {

  0%,
  60%,
  75%,
  90%,
  to {
    animation-timing-function: cubic-bezier(.215, .61, .355, 1)
  }

  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0)
  }

  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0)
  }

  75% {
    transform: translate3d(0, -10px, 0)
  }

  90% {
    transform: translate3d(0, 5px, 0)
  }

  to {
    transform: none
  }
}

@keyframes Toastify__bounceOutDown {
  20% {
    transform: translate3d(0, calc(var(--y) - 10px), 0)
  }

  40%,
  45% {
    opacity: 1;
    transform: translate3d(0, calc(var(--y) + 20px), 0)
  }

  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0)
  }
}

.Toastify__bounce-enter--bottom-left,
.Toastify__bounce-enter--top-left {
  animation-name: Toastify__bounceInLeft
}

.Toastify__bounce-enter--bottom-right,
.Toastify__bounce-enter--top-right {
  animation-name: Toastify__bounceInRight
}

.Toastify__bounce-enter--top-center {
  animation-name: Toastify__bounceInDown
}

.Toastify__bounce-enter--bottom-center {
  animation-name: Toastify__bounceInUp
}

.Toastify__bounce-exit--bottom-left,
.Toastify__bounce-exit--top-left {
  animation-name: Toastify__bounceOutLeft
}

.Toastify__bounce-exit--bottom-right,
.Toastify__bounce-exit--top-right {
  animation-name: Toastify__bounceOutRight
}

.Toastify__bounce-exit--top-center {
  animation-name: Toastify__bounceOutUp
}

.Toastify__bounce-exit--bottom-center {
  animation-name: Toastify__bounceOutDown
}

@keyframes Toastify__zoomIn {
  0% {
    opacity: 0;
    transform: scale3d(.3, .3, .3)
  }

  50% {
    opacity: 1
  }
}

@keyframes Toastify__zoomOut {
  0% {
    opacity: 1
  }

  50% {
    opacity: 0;
    transform: translate3d(0, var(--y), 0) scale3d(.3, .3, .3)
  }

  to {
    opacity: 0
  }
}

.Toastify__zoom-enter {
  animation-name: Toastify__zoomIn
}

.Toastify__zoom-exit {
  animation-name: Toastify__zoomOut
}

@keyframes Toastify__flipIn {
  0% {
    transform: perspective(400px) rotateX(90deg);
    animation-timing-function: ease-in;
    opacity: 0
  }

  40% {
    transform: perspective(400px) rotateX(-20deg);
    animation-timing-function: ease-in
  }

  60% {
    transform: perspective(400px) rotateX(10deg);
    opacity: 1
  }

  80% {
    transform: perspective(400px) rotateX(-5deg)
  }

  to {
    transform: perspective(400px)
  }
}

@keyframes Toastify__flipOut {
  0% {
    transform: translate3d(0, var(--y), 0) perspective(400px)
  }

  30% {
    transform: translate3d(0, var(--y), 0) perspective(400px) rotateX(-20deg);
    opacity: 1
  }

  to {
    transform: translate3d(0, var(--y), 0) perspective(400px) rotateX(90deg);
    opacity: 0
  }
}

.Toastify__flip-enter {
  animation-name: Toastify__flipIn
}

.Toastify__flip-exit {
  animation-name: Toastify__flipOut
}

@keyframes Toastify__slideInRight {
  0% {
    transform: translate3d(110%, 0, 0);
    visibility: visible
  }

  to {
    transform: translate3d(0, var(--y), 0)
  }
}

@keyframes Toastify__slideInLeft {
  0% {
    transform: translate3d(-110%, 0, 0);
    visibility: visible
  }

  to {
    transform: translate3d(0, var(--y), 0)
  }
}

@keyframes Toastify__slideInUp {
  0% {
    transform: translate3d(0, 110%, 0);
    visibility: visible
  }

  to {
    transform: translate3d(0, var(--y), 0)
  }
}

@keyframes Toastify__slideInDown {
  0% {
    transform: translate3d(0, -110%, 0);
    visibility: visible
  }

  to {
    transform: translate3d(0, var(--y), 0)
  }
}

@keyframes Toastify__slideOutRight {
  0% {
    transform: translate3d(0, var(--y), 0)
  }

  to {
    visibility: hidden;
    transform: translate3d(110%, var(--y), 0)
  }
}

@keyframes Toastify__slideOutLeft {
  0% {
    transform: translate3d(0, var(--y), 0)
  }

  to {
    visibility: hidden;
    transform: translate3d(-110%, var(--y), 0)
  }
}

@keyframes Toastify__slideOutDown {
  0% {
    transform: translate3d(0, var(--y), 0)
  }

  to {
    visibility: hidden;
    transform: translate3d(0, 500px, 0)
  }
}

@keyframes Toastify__slideOutUp {
  0% {
    transform: translate3d(0, var(--y), 0)
  }

  to {
    visibility: hidden;
    transform: translate3d(0, -500px, 0)
  }
}

.Toastify__slide-enter--bottom-left,
.Toastify__slide-enter--top-left {
  animation-name: Toastify__slideInLeft
}

.Toastify__slide-enter--bottom-right,
.Toastify__slide-enter--top-right {
  animation-name: Toastify__slideInRight
}

.Toastify__slide-enter--top-center {
  animation-name: Toastify__slideInDown
}

.Toastify__slide-enter--bottom-center {
  animation-name: Toastify__slideInUp
}

.Toastify__slide-exit--bottom-left,
.Toastify__slide-exit--top-left {
  animation-name: Toastify__slideOutLeft;
  animation-timing-function: ease-in;
  animation-duration: .3s
}

.Toastify__slide-exit--bottom-right,
.Toastify__slide-exit--top-right {
  animation-name: Toastify__slideOutRight;
  animation-timing-function: ease-in;
  animation-duration: .3s
}

.Toastify__slide-exit--top-center {
  animation-name: Toastify__slideOutUp;
  animation-timing-function: ease-in;
  animation-duration: .3s
}

.Toastify__slide-exit--bottom-center {
  animation-name: Toastify__slideOutDown;
  animation-timing-function: ease-in;
  animation-duration: .3s
}

@keyframes Toastify__spin {
  0% {
    transform: rotate(0deg)
  }

  to {
    transform: rotate(1turn)
  }
}


/* ------------------------------------------------------------
 * 2) CONTEÚDO EDITÁVEL VIA WPBAKERY
 * (checkmarks, cards, ícones, row-compact, etc.)
 * ------------------------------------------------------------ */

/**
 * SingularData — Custom CSS para conteúdo editado via WPBakery
 *
 * Adiciona checkmarks azuis em listas, estilos de cards, e outros elementos
 * gráficos do site original que se perdem quando o conteúdo passa por shortcodes.
 */

/* ========================================
   CHECKMARK BULLETS — azuis em listas
   ======================================== */
.content-wrapper ul,
.wpb_text_column .wpb_wrapper > ul,
.entry-content ul:not(.menu):not(.sub-menu):not(.footer-links):not(.footer-solutions-grid):not(.wp-block-list) {
    list-style: none;
    padding-left: 0;
    margin: 16px 0;
}
.content-wrapper ul li,
.wpb_text_column .wpb_wrapper > ul > li,
.entry-content ul:not(.menu):not(.sub-menu):not(.footer-links):not(.footer-solutions-grid):not(.wp-block-list) > li {
    position: relative;
    padding-left: 32px;
    margin-bottom: 10px;
    line-height: 1.5;
    color: #0C1228;
}
.content-wrapper ul li::before,
.wpb_text_column .wpb_wrapper > ul > li::before,
.entry-content ul:not(.menu):not(.sub-menu):not(.footer-links):not(.footer-solutions-grid):not(.wp-block-list) > li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230097D6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
    background-repeat: no-repeat;
    background-size: contain;
}

/* ========================================
   WPBakery rows — espaçamento entre secções
   ======================================== */
.content-wrapper .vc_row,
.content-wrapper > .vc_row {
    margin-bottom: 30px;
    display: flex;
    align-items: center;
    justify-content: center;	
}
.content-wrapper .vc_row:last-child {
    margin-bottom: 0;
}

/* ========================================
   Card-like containers — secções com fundo
   ======================================== */
.content-wrapper .vc_row.vc_row-has-fill,
.content-wrapper .vc_row .vc_column-inner {
    border-radius: 12px;
}

/* Espaçamento dentro de vc_column_text */
.content-wrapper .wpb_text_column {
    margin-bottom: 8px;
}
.content-wrapper .wpb_text_column:last-child {
    margin-bottom: 0;
}

/* ========================================
   Headings dentro do content
   ======================================== */
.content-wrapper h1, .content-wrapper .wpb_text_column h1 { font-size: 44px; line-height: 1.2; font-weight: 700; margin: 0 0 16px; color: #0C1228; }
.content-wrapper h2, .content-wrapper .wpb_text_column h2 { font-size: 36px; line-height: 1.25; font-weight: 700; margin: 0 0 14px; color: #0C1228; }
.content-wrapper h3, .content-wrapper .wpb_text_column h3 { font-size: 28px; line-height: 1.3; font-weight: 600; margin: 0 0 12px; color: #0C1228; }
.content-wrapper h4, .content-wrapper .wpb_text_column h4 { font-size: 22px; line-height: 1.35; font-weight: 600; margin: 0 0 10px; color: #0C1228; }
.content-wrapper h5, .content-wrapper .wpb_text_column h5 { font-size: 18px; line-height: 1.4; font-weight: 600; margin: 0 0 8px; color: #0C1228; }
.content-wrapper h6, .content-wrapper .wpb_text_column h6 { font-size: 16px; line-height: 1.4; font-weight: 600; margin: 0 0 8px; color: #0C1228; }

.content-wrapper p, .content-wrapper .wpb_text_column p {
    color: #646570;
    line-height: 1.65;
    margin: 0 0 14px;
}

/* ========================================
   Container content-wrapper — quando WP coloca o conteúdo,
   garantir bom espaçamento e estrutura
   ======================================== */
.content-wrapper {
    max-width: 1360px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;

}
@media (max-width: 768px) {
    .content-wrapper {
        padding-left: 16px;
        padding-right: 16px;
    }
    .content-wrapper h1, .content-wrapper .wpb_text_column h1 { font-size: 32px; }
    .content-wrapper h2, .content-wrapper .wpb_text_column h2 { font-size: 28px; }
    .content-wrapper h3, .content-wrapper .wpb_text_column h3 { font-size: 24px; }
}

/* ========================================
   Imagens dentro do content
   ======================================== */
.content-wrapper img,
.wpb_text_column img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
	vertical-align: middle !important;
	align-items: center; /* centraliza verticalmente */	
}

/* ========================================
   Links dentro do content
   ======================================== */
.content-wrapper a:not(.vc_btn3):not(.wp-block-button__link) {
    color: #0097D6;
    text-decoration: none;
    transition: color 0.2s;
}
.content-wrapper a:not(.vc_btn3):not(.wp-block-button__link):hover {
    color: #007BB5;
    text-decoration: underline;
}

/* ========================================
   Hero - secção primeira com título grande centrado
   ======================================== */
.content-wrapper .vc_row:first-child .vc_custom_heading {
    margin-top: 0;
}

/* Strong dentro de parágrafos */
.content-wrapper strong, .wpb_text_column strong {
    color: #0C1228;
    font-weight: 600;
}

/* ========================================
   SVG icons em cards e listas — preservar do original
   ======================================== */
.our-value-block svg,
.section-couter svg,
.section-solution svg,
.service-block svg,
.section-benefit svg,
.list-feature svg,
.list-features svg,
.history-block svg {
    display: inline-block !important;
    color: #0097D6;
    fill: currentColor;
    vertical-align: middle;
}

/* Cards "Benefícios" / "O que garantimos" — ícone grande no topo */
.our-value-block .item svg,
.our-value-block .value-item svg {
    width: 48px !important;
    height: 48px !important;
    font-size: 48px;
    margin-bottom: 16px;
}

/* Cards "Os valores que nos unem" — ícone pequeno */
.section-couter .item svg,
.section-couter .value svg {
    width: 32px !important;
    height: 32px !important;
}

/* Listas .list-feature/.list-features (ao lado de texto em section-about) */
.list-feature > div,
.list-features > div,
.list-feature .flex,
.list-features .flex {
    display: flex !important;
    align-items: center !important;
    gap: 12px;
}

/* Ícone */
.list-feature svg,
.list-features svg {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px;
    display: flex !important;
    align-self: center !important;
    vertical-align: middle;
    position: relative;
    top: 0;
}

/* Texto */
.list-feature .desc,
.list-features .desc,
.list-feature p,
.list-features p,
.list-feature span,
.list-features span {
    margin: 0 !important;
    line-height: 22px !important;
    display: flex;
    align-items: center;
	font-weight: 400;
	
}

/* Indústrias / sectores - icons inline com label */
.section-couter [class*="-list"] svg,
.service-block [class*="-list"] svg {
    width: 28px !important;
    height: 28px !important;
    color: #0097D6;
}

/* Stats counter — numbers + small icons */
.section-couter .counter svg,
.section-couter [class*="counter"] svg {
    width: 24px !important;
    height: 24px !important;
}

/* Timeline (Nossa jornada) — imagens com altura uniforme */
.history-block img,
[class*="our-journey"] img {
    width: 100% !important;
    height: auto !important;
    border-radius: 12px !important;
    margin: 16px 0;
}

/* Esconder o checkmark do nosso CSS dentro das list-feature/cards
   (apenas listas <ul> directas do content-wrapper devem ter checkmark) */
.list-feature ul, .list-features ul,
.our-value-block ul,
.section-couter ul,
.service-block ul,
.section-benefit ul {
    list-style: revert;
    padding-left: revert;
}
.list-feature ul li::before, .list-features ul li::before,
.our-value-block ul li::before,
.section-couter ul li::before,
.service-block ul li::before,
.section-benefit ul li::before {
    content: none !important;
}

/* WPBakery row compacto (industrias) - sem margin entre linhas */
.vc_row.row-compact { margin-bottom: 8px !important; }
.vc_row.row-compact .vc_column-inner { padding-top: 4px; padding-bottom: 4px; }

/* Tamanho dos ícones <img> que substituem inline SVG */
img[src*="/assets/images/icons/"] { display: inline-block; vertical-align: middle; max-width: 100%; }


/* ------------------------------------------------------------
 * Cards em vc_columns: altura igual entre cards da mesma row
 * ------------------------------------------------------------
 * As classes Tailwind `.h-full` (height:100%) nos cards (.service-item,
 * .item) só funcionam se os wrappers internos do WPBakery tiverem
 * height:100%. Por defeito não têm — vc_column-inner > wpb_wrapper >
 * wpb_text_column > wpb_wrapper formam uma cadeia que colapsa.
 * Forçar todos a esticar resolve o problema sem afectar cards mais
 * curtos (Tailwind h-full apenas tem efeito visual em flex containers).
 */
.vc_row {
  align-items: stretch;
}

.vc_row > .vc_column .vc_column-inner,
.vc_row > .vc_column .vc_column-inner > .wpb_wrapper,
.vc_row > .vc_column .vc_column-inner > .wpb_wrapper > .wpb_text_column,
.vc_row > .vc_column .vc_column-inner > .wpb_wrapper > .wpb_text_column > .wpb_wrapper {
  height: 100%;
}

/* Garantir que cards com h-full preenchem o espaço */
.vc_row > .vc_column .service-item,
.vc_row > .vc_column .item,
.vc_row > .vc_column .h-full {
  height: 100%;
}

/* ------------------------------------------------------------
 * Universal: TODOS os tipos de cards/caixas com altura igual
 * dentro da mesma row WPBakery
 * ------------------------------------------------------------
 * Tipos de caixa cobertos:
 *  .service-item     — Nossas soluções (SQL Server, BI, Fábrica)
 *  .item             — Benefícios + O que garantimos (9 e 4 cards)
 *  .-list            — Indústrias (Financeiro, Laboratório, etc.)
 *  .counter-item     — Stats counter (10 anos / +20 anos / ...)
 *  .benefit-item     — Cards de benefício individuais
 *  .content-main     — Ajudamos as empresas (Sobre Nós)
 *  .history-block    — Items da timeline (Sobre Nós)
 *  .h-full           — qualquer Tailwind h-full
 */
.vc_row > .vc_column .service-item,
.vc_row > .vc_column .item,
.vc_row > .vc_column .-list,
.vc_row > .vc_column .counter-item,
.vc_row > .vc_column .benefit-item,
.vc_row > .vc_column .content-main,
.vc_row > .vc_column .history-block,
.vc_row > .vc_column .h-full {
  height: 100%;
  box-sizing: border-box;
}

/* Para cards com flex interno: garantir distribuição vertical correta */
.vc_row > .vc_column .service-item.-solution > a,
.vc_row > .vc_column .item.bg-white,
.vc_row > .vc_column .-list {
  display: flex;
  flex-direction: column;
}
.vc_row > .vc_column .-list { flex-direction: row; align-items: center; }


/* ------------------------------------------------------------
 * v2.3.0: Alturas iguais em secções específicas com grid de cards
 * ------------------------------------------------------------
 * Apenas as secções tipo "grid de cards" precisam de flex layout.
 * Contactos, About e outras 1-column NÃO devem ser tocadas.
 *
 * Estratégia: ativar flex APENAS em rows dentro de <section> com
 * classes específicas que contêm grids de cards.
 */

.section-solution .vc_row,
.section-benefit .vc_row,
.our-value-block .vc_row,
.section-couter .vc_row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}

.section-solution .vc_row > .vc_column,
.section-benefit .vc_row > .vc_column,
.our-value-block .vc_row > .vc_column,
.section-couter .vc_row > .vc_column {
  display: flex !important;
  flex-direction: column !important;
}

.section-solution .vc_row .vc_column-inner,
.section-solution .vc_row .vc_column-inner > .wpb_wrapper,
.section-solution .vc_row .wpb_text_column,
.section-solution .vc_row .wpb_text_column > .wpb_wrapper,
.section-benefit .vc_row .vc_column-inner,
.section-benefit .vc_row .vc_column-inner > .wpb_wrapper,
.section-benefit .vc_row .wpb_text_column,
.section-benefit .vc_row .wpb_text_column > .wpb_wrapper,
.our-value-block .vc_row .vc_column-inner,
.our-value-block .vc_row .vc_column-inner > .wpb_wrapper,
.our-value-block .vc_row .wpb_text_column,
.our-value-block .vc_row .wpb_text_column > .wpb_wrapper {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 0 auto !important;
}

/* Cards finais: ocupam toda a altura disponível na coluna */
.section-solution .service-item,
.section-solution .item,
.section-benefit .item,
.section-benefit .benefit-item,
.our-value-block .item,
.our-value-block .service-item,
.section-couter .counter-item,
.section-couter .benefit-item {
  height: 100% !important;
  box-sizing: border-box !important;
}

/* ============================================================
 * v2.3.1: Mega menu — ponte de hover invisível
 * ============================================================
 * O dropdown original começa em top:49px, criando um espaço
 * vazio entre o <li> pai e o dropdown. Ao mover o rato para
 * o dropdown, o hover é perdido nesse espaço e o menu fecha.
 * Solução: criar uma ponte invisível com ::before E adicionar
 * delay de transição na saída para tolerar pequeno movimento.
 */

/* Ponte invisível entre item e dropdown (cobre os 49px de gap) */
.menu__wrapper .navigator > ul > li > .dropdown-menu::before {
  content: '';
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  height: 20px;
  background: transparent;
  pointer-events: auto;
}

/* Delay na saída para o utilizador ter tempo de chegar ao dropdown */
.menu__wrapper .navigator > ul > li .dropdown-menu {
  transition: opacity 0.2s ease, visibility 0s linear 0.3s, transform 0.2s ease !important;
}

.menu__wrapper .navigator > ul > li:hover .dropdown-menu,
.menu__wrapper .navigator > ul > li:focus-within .dropdown-menu,
.menu__wrapper .navigator > ul > li .dropdown-menu:hover {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  transition: opacity 0.2s ease, visibility 0s linear 0s, transform 0.2s ease !important;
}

/* Manter hover do parent li enquanto rato está sobre o dropdown */
.menu__wrapper .navigator > ul > li:has(.dropdown-menu:hover) > a {
  color: inherit;
}

/* ============================================================
 * v2.3.2: Correções pós-feedback
 * ============================================================ */

/* ─────────────────────────────────────────────────────────
 * 1) Secções com bg full-width "escapam" do container pai
 * ───────────────────────────────────────────────────────── */
.container.content-wrapper section.bg-linear-gradient,
.container.content-wrapper section.bg-linear,
.container.content-wrapper section.service-block,
.container.content-wrapper section.about-block,
.container.content-wrapper section.section-solution,
.container.content-wrapper section.section-couter,
.container.content-wrapper section.section-stories,
.container.content-wrapper section.section-brand,
.container.content-wrapper section.history-block {
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* O .container interno dentro dessas secções centra o conteúdo */
section.bg-linear-gradient > .container,
section.bg-linear > .container,
section.service-block > .container,
section.about-block > .container,
section.section-solution > .container,
section.section-couter > .container,
section.section-stories > .container,
section.section-brand > .container,
section.history-block > .container {
  max-width: 1320px;
  margin: 0 auto;
  padding-left: 24px;
  padding-right: 24px;
}

/* ─────────────────────────────────────────────────────────
 * 2) Indústrias: reduzir margem entre linhas (era ~32px, fica ~10px)
 * ───────────────────────────────────────────────────────── */
.vc_row.row-compact {
  margin-top: 10 !important;
  margin-bottom: 10px !important;
}
.vc_row.row-compact .vc_column-inner {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

/* ─────────────────────────────────────────────────────────
 * 3) Mega menu dropdown — não fugir para a direita
 * ───────────────────────────────────────────────────────── */
.menu__wrapper .navigator > ul > li .dropdown-menu {
  /* Reset position - centrar/alinhar ao li parent */
  left: 0 !important;
  right: auto !important;
  /* Para dropdowns largos (-wide), centrar no item parent */
}
.menu__wrapper .navigator > ul > li .dropdown-menu.-wide {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) translateY(20px);
  max-width: min(1100px, calc(100vw - 40px));
  width: 100%;
}
.menu__wrapper .navigator > ul > li:hover .dropdown-menu.-wide,
.menu__wrapper .navigator > ul > li:focus-within .dropdown-menu.-wide,
.menu__wrapper .navigator > ul > li .dropdown-menu.-wide:hover {
  transform: translateX(-50%) translateY(0) !important;
}

/* Aumentar área de hover do dropdown (ponte top já tem 20px) */
.menu__wrapper .navigator > ul > li .dropdown-menu::before {
  height: 24px !important;
  top: -24px !important;
}

/* ─────────────────────────────────────────────────────────
 * 4) Contactos: row contactos-row dentro do container (não full-width)
 * ───────────────────────────────────────────────────────── */
.vc_row.contactos-row {
  padding-top: 40px;
  padding-bottom: 40px;
}
.vc_row.contactos-row > .vc_column {
  padding: 0 24px !important;
}

/* ============================================================
 * v2.3.3: Correções pós-feedback v2.3.2
 * ============================================================ */

/* 1) Indústrias: reduzir ainda mais espaço entre linhas (era 10px, fica 3px) */
.vc_row.row-compact {
  margin-top: 0 !important;
  margin-bottom: 3px !important;
}
.vc_row.row-compact .vc_column-inner {
  padding-top: 1px !important;
  padding-bottom: 1px !important;
}
/* Cards mais compactos: reduzir padding interno */
.vc_row.row-compact .-list {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* 2) Submenu: sublinhado correto (estava com bottom:17px empurrando sobre o texto) */
.menu__wrapper .navigator > ul > li .dropdown-menu li a:after {
  bottom: 4px !important;
}

/* 3) Contactos: fundo azulado (igual ao "Onde atuamos") */
body.page-template-page-contactos .container.content-wrapper,
.page-id-contactos .container.content-wrapper,
.contactos-page-bg {
  position: relative;
  background: linear-gradient(180deg, #f0f4fa 0%, #e8eef7 50%, #f5f7fc 100%);
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  padding-left: calc(50vw - 50%) !important;
  padding-right: calc(50vw - 50%) !important;
}
/* Restaurar conteúdo interno centrado dentro do container azulado */
body.page-template-page-contactos .container.content-wrapper > * {
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
}

/* ============================================================
 * v2.4.0: Suporte para [vc_section] (WPBakery)
 * ============================================================
 * As secções do site usam agora o shortcode nativo [vc_section]
 * (renderiza como <section class="vc_section ...">). Isto sobrevive
 * ao ciclo de save do WPBakery (ao contrário do <section> solto que
 * antes era apagado a cada Atualizar). Estas regras garantem que:
 *  1. As secções com bg-color "escapam" do container central
 *  2. As rows internas centram-se no max-width de 1320px
 *  3. O padding vertical é controlado via classes .sd-py-*
 *  4. As classes legacy continuam a aplicar
 * ============================================================ */

/* 1) vc_section com bg full-width escapa do container central
 *    (mesmo comportamento que <section class="..."> tinha antes) */
.container.content-wrapper section.vc_section.bg-linear,
.container.content-wrapper section.vc_section.bg-linear-gradient,
.container.content-wrapper section.vc_section.bg-linear-gradient-yellow,
.container.content-wrapper section.vc_section.bg-linear-singular-blue,
.container.content-wrapper section.vc_section.about-block,
.container.content-wrapper section.vc_section.section-benefit,
.container.content-wrapper section.vc_section.section-solution,
.container.content-wrapper section.vc_section.section-about,
.container.content-wrapper section.vc_section.section-couter,
.container.content-wrapper section.vc_section.section-stories,
.container.content-wrapper section.vc_section.section-brand,
.container.content-wrapper section.vc_section.service-block,
.container.content-wrapper section.vc_section.our-value-block,
.container.content-wrapper section.vc_section.history-block {
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* 2) As rows internas de vc_section centram-se na largura máxima
 *    (equivalente a <div class="container"> que existia antes) */
section.vc_section > .vc_row.wpb_row {
  max-width: 1320px;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}

/* 3) Padding vertical das secções (substitui style="padding-top/bottom") */
.sd-py-48 { padding-top: 24px; padding-bottom: 24px; }
.sd-py-56 { padding-top: 28px; padding-bottom: 28px; }
.sd-py-80 { padding-top: 50px; padding-bottom: 0px; }

/* 4) Equal-height nas secções com vc_section (já existia para .section-X
 *    mas como agora a class fica no elemento que TAMBÉM tem .vc_section,
 *    nada muda — esta regra existe só para documentar e garantir) */
section.vc_section.section-solution .vc_row,
section.vc_section.section-benefit .vc_row,
section.vc_section.our-value-block .vc_row,
section.vc_section.section-couter .vc_row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}

/* ─────────────────────────────────────────────────────────
 * Ícones SVG inline — tamanhos fixos via classe
 * (substitui style="width:24px;height:24px;..." nos HTML)
 * ───────────────────────────────────────────────────────── */
.svg-icon-24,
.svg-icon-30,
.svg-icon-36,
.svg-icon-60 {
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
}
.svg-icon-24 { width: 24px; height: 24px; }
.svg-icon-30 { width: 30px; height: 30px  }
.svg-icon-36 { width: 36px; height: 36px; }
.svg-icon-60 { width: 60px; height: 60px; }

/* ─────────────────────────────────────────────────────────
 * Eyebrow (pequeno tag azul claro acima das headings)
 * Substitui o <div style="text-align:center"><span class="tag">...
 * ───────────────────────────────────────────────────────── */
.sd-section-eyebrow {
  text-align: center;
  margin-bottom: 6px;
}
.sd-section-eyebrow .tag.text-label {
  display: inline-block;
  background: rgba(0, 151, 214, 0.1);
  color: #0097D6;
  padding: 6px 18px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
/* Espaço extra apenas em Onde Atuamos */
.service-block .sd-section-eyebrow {
  margin-bottom: 40px;
}
/* === Espaçamentos personalizados na secção "Como nós fazemos" ===
 *    Aplica-se APENAS dentro de .section-solution (Nossas soluções),
 *    NÃO afeta "Onde atuamos" nem outras secções com eyebrow.
 * =============================================================== */

/* 1) "COMO NÓS FAZEMOS" → "Nossas soluções"
 *    Reduzir o espaço para METADE (era ~12px, agora 6px) */
.section-solution .sd-section-eyebrow {
  margin-bottom: -70px !important;
}

/* 2) "Nossas soluções" → 3 cards (SQL Server / BI / Fábrica)
 *    Aumentar o espaço ~3X (adiciona 60px ao gap atual) */
.section-solution > .vc_row:first-child {
  margin-bottom: 60px !important;
  margin-top: 5px !important;
}

/* ─────────────────────────────────────────────────────────
 * Placeholders dos sliders Smart Slider 3 (até serem criados)
 * Substitui os styles inline que estavam nos HTML
 * ───────────────────────────────────────────────────────── */
.slider-placeholder {
  padding: 60px 20px;
  text-align: center;
  border-radius: 12px;
  margin: 20px 0;
}
.slider-placeholder--hero {
  background: linear-gradient(238deg, #faf7ef, #f4f6fc 99.66%);
}
.slider-placeholder--brands {
  background: #fff;
  padding: 40px 20px;
  border: 2px dashed #E13789;
}
.slider-placeholder h3 {
  margin: 0 0 12px 0;
  font-size: 24px;
  color: #0C1228;
  font-weight: 600;
}
.slider-placeholder--brands h3 {
  font-size: 20px;
}
.slider-placeholder p {
  margin: 0 0 8px 0;
  color: #646570;
}
.slider-placeholder .placeholder-hint {
  font-size: 13px;
  margin-bottom: 0;
}

/* ============================================================
 * v2.4.0: Mega menu — sublinhado acompanha o texto
 * ============================================================
 * Antes: pseudo-elemento :after absoluto em left:52px;
 * width:calc(100% - 72px) — descolava do texto quando o ícone
 * ou a palavra tinham largura diferente da assumida.
 *
 * Agora: text-decoration: underline directamente no span do
 * texto (último filho do <a>). Acompanha sempre a palavra,
 * independentemente do ícone ou largura.
 * ============================================================ */

/* Desactivar o pseudo-elemento absoluto no mega menu wide */
.menu__wrapper .navigator > ul > li .dropdown-menu.-wide ul li a:after {
  display: none !important;
}

/* Aplicar underline native no span do texto em hover/active */
.menu__wrapper .navigator > ul > li .dropdown-menu.-wide ul li:hover a span:last-child,
.menu__wrapper .navigator > ul > li .dropdown-menu.-wide ul li.active a span:last-child {
  text-decoration: underline;
  text-decoration-color: #0c1228;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}

/* ============================================================
 * v2.4.1: Largura horizontal aumentada para todo o site +
 *          fundo lavanda ténue no body (igual ao original)
 * ============================================================
 * Antes: site limitado a ~1290px (container) / 1272px (vc_section).
 * Agora: ~1430px usável em ambos. Aplica-se a TODAS as páginas.
 * ============================================================ */

/* 1) Aumentar a largura do .container principal (header, footer,
 *    banner, e o wrapper das páginas todas) de 1360 → 1500 */
body .container {
  max-width: 1500px !important;
}

/* 2) Idem para as secções [vc_section] (Sobre a SingularData,
 *    Benefícios, Soluções, Indústrias, etc.) */
section.vc_section > .vc_row.wpb_row {
  max-width: 1500px !important;
}

/* 3) Idem para as secções legacy (caso ainda existam <section>
 *    soltos com .container interno) */
section.bg-linear-gradient > .container,
section.bg-linear > .container,
section.bg-linear-gradient-yellow > .container,
section.bg-linear-singular-blue > .container,
section.service-block > .container,
section.about-block > .container,
section.section-benefit > .container,
section.section-solution > .container,
section.section-about > .container,
section.section-couter > .container,
section.section-stories > .container,
section.section-brand > .container,
section.our-value-block > .container,
section.history-block > .container {
  max-width: 1500px !important;
}

/* 4) Página Contactos: o wrapper interno também passa para 1500 */
body.page-template-page-contactos .container.content-wrapper > * {
  max-width: 1500px !important;
}

/* 5) Cor de fundo lavanda muito ténue no body inteiro
 *    (igual ao ambiente do site original) */
body {
  background-color: #f4f6fc;
}


/* ============================================================
 * v2.4.2: Carrossel de logos de clientes/parceiros
 * ============================================================ */

/* 1) Container do slider — fade subtil nos lados (igual ao original) */
.n2-ss-slider.sd-brand-carousel,
.n2-ss-slider-wrapper.sd-brand-carousel,
[class*="n2-ss-slider"][class*="sd-brand-carousel"] {
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%) !important;
  mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%) !important;
  background: transparent !important;
}

/* 2) Fundo dos slides — transparente (deixa passar o fundo do site) */
.sd-brand-carousel .n2-ss-slide-background,
.sd-brand-carousel .n2-ss-slide-background-color,
.sd-brand-carousel .n2-ss-slide-background-image {
  background: transparent !important;
  background-color: transparent !important;
}

/* 3) Cada slide — centra o conteúdo (vertical + horizontal) */
.sd-brand-carousel .n2-ss-slide,
.sd-brand-carousel .n2-ss-section-main-content {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 20px !important;
}

/* 4) AS IMAGENS — respeitam proporção e altura uniforme
 *    (a regra-chave que resolve as imagens esticadas) */
.sd-brand-carousel .n2-ss-layer-image,
.sd-brand-carousel .n2-ss-layer-image img,
.sd-brand-carousel .n2-ss-layer img,
.sd-brand-carousel img {
  width: auto !important;
  height: auto !important;
  max-height: 60px !important;
  max-width: 180px !important;
  -o-object-fit: contain !important;
  object-fit: contain !important;
  -o-object-position: center !important;
  object-position: center !important;
  display: block !important;
  margin: 0 auto !important;
}

/* 5) Wrapper do layer da imagem — sem dimensões forçadas */
.sd-brand-carousel .n2-ss-layer.n2-ss-layer-with-background,
.sd-brand-carousel .n2-ss-layer {
  background: transparent !important;
  width: auto !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* 6) Padding vertical da row inteira do carrossel */
.brand-slider-row.vc_row.wpb_row,
body.home .vc_row:has(.sd-brand-carousel) {
  padding-top: 40px !important;
  padding-bottom: 60px !important;
}

/*ICON DO FOOTER*/

.dashicons-admin-settings {
    color:rgb(0 151 214) !important; /* Substitua pelo código da sua cor */
}


/* Força o tamanho máximo em qualquer imagem destacada de um post individual */
.single-post .attachment-post-thumbnail,
.single-post .post-thumbnail img,
.single-post entry-thumbnail img,
img.wp-post-image {
    max-width: 800px !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    display: block !important;
}


.sd-hero-image {
	
	 background-color: transparent;
}


/*MAPA DE SERVIÇO */
/* ── Mapa de Serviços SQL Server ── */
:root {
  --navy: #0C1228;
  --blue: #0097D6;
  --text: #2c2f31;
  --muted: #646570;
  --soft: #f4f6fc;
  --font: "Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
}
.sd-map * { box-sizing: border-box; margin: 0; padding: 0; }
.sd-map { font-family: var(--font); background: #f5f7fa; color: var(--text); max-width: 1260px; margin: 0 auto; padding: 48px 24px 80px; }
.sd-map-header { text-align: center; margin-bottom: 52px; }
.sd-map-header .eyebrow { display: inline-block; background: rgba(0,151,214,.1); color: var(--blue); padding: 6px 18px; border-radius: 999px; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .8px; margin-bottom: 16px; }
.sd-map-header h1 { font-size: clamp(26px,3vw,36px); font-weight: 700; color: var(--navy); margin-bottom: 12px; letter-spacing: -.02em; }
.sd-map-header p { font-size: 15px; color: var(--muted); max-width: 600px; margin: 0 auto; }
.sd-legend { display: flex; flex-wrap: wrap; gap: 12px 20px; justify-content: center; margin-bottom: 48px; padding: 16px 24px; background: #fff; border-radius: 10px; box-shadow: 0 2px 12px rgba(12,18,40,.06); }
.leg-item { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:600; color:var(--text); }
.leg-dot  { width:12px; height:12px; border-radius:3px; flex-shrink:0; }
.sd-section-label { font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: .8px; color: var(--navy); margin: 0 0 20px; padding: 10px 18px; border-left: 4px solid var(--blue); background: #eef2fb; border-radius: 0 8px 8px 0; }
.sd-section-label.azure  { border-left-color: #0e6655; background: #e5f4f2; }
.sd-section-label.addons { border-left-color: #888; background: #f0f0f2; }
.map-nest { border-radius: 14px; padding: 28px 28px 0; margin-bottom: 32px; position: relative; }
.map-nest.n-advanced { border: 2.5px solid #0d2c54; background: rgba(13,44,84,.025); }
.map-nest.n-optimize { border: 2.5px solid #1a5276; background: rgba(26,82,118,.025); margin: 20px 0 24px; }
.map-nest.n-core     { border: 2.5px solid #2471a3; background: rgba(36,113,163,.03);  margin: 20px 0 24px; }
.map-nest.n-az-adv   { border: 2.5px solid #0c4a6e; background: rgba(12,74,110,.025);  }
.map-nest.n-az-core  { border: 2.5px solid #0e6655; background: rgba(14,102,85,.025);  margin: 20px 0 24px; }
.plan-nest-header { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; flex-wrap: wrap; }
.plan-name { font-size: 15px; font-weight: 800; text-transform: uppercase; letter-spacing: .8px; }
.n-advanced .plan-name { color: #0d2c54; }
.n-optimize .plan-name { color: #1a5276; }
.n-core     .plan-name { color: #2471a3; }
.n-az-adv   .plan-name { color: #0c4a6e; }
.n-az-core  .plan-name { color: #0e6655; }
.plan-chip { font-size: 10.5px; font-weight: 700; padding: 3px 10px; border-radius: 999px; color: #fff; letter-spacing: .3px; }
.n-advanced .plan-chip { background: #0d2c54; }
.n-optimize .plan-chip { background: #1a5276; }
.n-core     .plan-chip { background: #2471a3; }
.n-az-adv   .plan-chip { background: #0c4a6e; }
.n-az-core  .plan-chip { background: #0e6655; }
.plan-incl { font-size: 11px; color: var(--muted); font-weight: 500; }
.feat-label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .8px; color: var(--muted); margin: 18px 0 10px; }
.feat-label:first-of-type { margin-top: 4px; }
.tiles { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.feature-tile { flex: 0 0 auto; width: 130px; min-height: 64px; padding: 8px 10px; border-radius: 8px; font-size: 11px; font-weight: 600; cursor: pointer; display: flex; align-items: center; justify-content: center; text-align: center; line-height: 1.35; color: #fff; text-decoration: none !important; transition: transform .12s, box-shadow .12s; user-select: none; }
.feature-tile:hover { transform: translateY(-3px); box-shadow: 0 6px 18px rgba(0,0,0,.25); }
.tc-core      { background: #2980B9; }
.tc-optimize  { background: #1a5276; }
.tc-advanced  { background: #0d2c54; }
.tc-secure    { background: #c0392b; }
.tc-transform { background: #5d4e6d; }
.tc-prev      { background: #d4880a; }
.tc-az-core   { background: #0f6674; }
.tc-az-adv    { background: #0c4a6e; }
.fora-toggle { font-size: 11px; font-weight: 600; color: var(--muted); cursor: pointer; padding: 10px 0 18px; display: flex; align-items: center; gap: 6px; transition: color .15s; }
.fora-toggle:hover { color: var(--navy); }
.fora-arrow { transition: transform .2s; display: inline-block; font-size: 9px; }
.fora-content { display: none; padding: 14px 20px 18px; font-size: 13px; color: var(--muted); line-height: 1.7; background: rgba(0,0,0,.03); border-radius: 8px; margin-bottom: 18px; }
.fora-content ul { padding-left: 20px; margin: 0; }
.fora-content li { margin-bottom: 6px; }
.addon-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-bottom: 8px; }
.addon-card { border-radius: 14px; overflow: hidden; background: #fff; box-shadow: 0 3px 16px rgba(12,18,40,.08); }
.addon-head { padding: 16px 20px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.addon-head h2 { font-size: 14px; font-weight: 800; color: #fff; letter-spacing: .5px; }
.addon-head.ah-secure    { background: linear-gradient(135deg,#c0392b,#8e1a10); }
.addon-head.ah-transform { background: linear-gradient(135deg,#5d4e6d,#3d3048); }
.addon-head.ah-prev      { background: linear-gradient(135deg,#d4880a,#a06208); }
.addon-body { padding: 16px 20px 4px; }
#sd-tooltip { display: none; position: fixed; background: var(--navy); color: #fff; padding: 13px 17px; border-radius: 10px; max-width: 300px; z-index: 9999; font-size: 13px; line-height: 1.5; pointer-events: none; box-shadow: 0 10px 32px rgba(12,18,40,.45); font-family: var(--font); }
#sd-tooltip .tip-plan { font-size: 10px; opacity:.6; margin-bottom:4px; text-transform:uppercase; letter-spacing:.8px; font-weight:600; }
#sd-tooltip .tip-name { font-weight:700; font-size:14px; margin-bottom:6px; }
#sd-tooltip .tip-desc { opacity:.9; }
@media(max-width:760px) {
  .addon-grid { grid-template-columns: 1fr; }
  .feature-tile { width: calc(50% - 4px); }
  .map-nest { padding: 20px 16px 0; }
}
.page-id-728 .entry-title {
  display: none;
}
/* ── fim Mapa de Serviços ── */
/* ============================================================
 * SingularData — Páginas de Serviço SQL Server
 * ============================================================
 * Adicionar ao FINAL do singulardata.css do tema.
 * Cobre 4 páginas:
 *   Mapa de Serviços  /sql-server/mapa-de-servicos/
 *   On-Premises       /sql-server/on-premises/
 *   Azure SQL         /sql-server/azure-sql/
 *   Add-ons           /sql-server/add-ons/
 *
 * Todas as regras de .sd-doc usam especificidade elevada
 * para não serem sobrescritas pelo CSS global do tema.
 * ============================================================ */

/* ─── Variáveis partilhadas ─── */
.sd-doc, .sd-map {
  --sd-navy:  #0C1228;
  --sd-blue:  #0097D6;
  --sd-text:  #1c1c2e;
  --sd-muted: #4a4f5c;
  --sd-soft:  #f5f7fa;
  --sd-bdr:   #e4e7ec;
  --sd-font:  "Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
}

/* ============================================================
 * SECÇÃO 1 — Páginas de documentação (.sd-doc)
 * On-Premises · Azure SQL · Add-ons
 * ============================================================ */

/* Reset: evitar que o tema interfira dentro do wrapper */
.sd-doc, .sd-doc * {
  box-sizing: border-box;
}
.sd-doc h1, .sd-doc h2, .sd-doc h3, .sd-doc h4,
.sd-doc p, .sd-doc ul, .sd-doc li, .sd-doc a {
  font-family: var(--sd-font) !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Wrapper principal */
.sd-doc {
  font-family: var(--sd-font);
  background: #fff;
  color: var(--sd-text);
  line-height: 1.7;
}
.sd-doc .sd-doc-inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 48px 28px 96px;
}

/* ── Título da página H1 ── */
.sd-doc .sd-page-h1 {
  font-size: clamp(28px, 4vw, 42px) !important;
  font-weight: 700 !important;
  color: var(--sd-navy) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 22px !important;
}

/* ── Leads introdutórios ── */
.sd-doc .sd-page-lead {
  font-size: 16px !important;
  color: var(--sd-muted) !important;
  line-height: 1.85 !important;
  margin-bottom: 14px !important;
  display: block;
}
.sd-doc .sd-page-lead:last-of-type { margin-bottom: 0 !important; }
.sd-doc .sd-page-lead em  { font-style: normal !important; color: var(--sd-blue) !important; font-weight: 600 !important; }
.sd-doc .sd-page-lead strong { color: var(--sd-navy) !important; font-weight: 700 !important; }

/* Separador após header */
.sd-doc .sd-page-header-sep {
  height: 1px;
  background: var(--sd-bdr);
  margin: 40px 0 56px;
}

/* ── Secção de plano ── */
.sd-doc .sd-plan-sec {
  margin-bottom: 64px;
  scroll-margin-top: 80px;
  border-top: 1px solid var(--sd-bdr);
  padding-top: 48px;
}
.sd-doc .sd-plan-sec:first-child {
  border-top: none !important;
  padding-top: 0 !important;
}

/* ── H2 — Nome do plano ── */
.sd-doc .sd-plan-h2 {
  font-size: clamp(22px, 2.8vw, 30px) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.01em !important;
  margin-bottom: 18px !important;
  text-transform: none !important;
}

/* ── Descrição do plano ── */
.sd-doc .sd-plan-desc {
  font-size: 15.5px;
  color: var(--sd-muted);
  line-height: 1.85;
  margin-bottom: 40px;
  max-width: 760px;
}
.sd-doc .sd-plan-desc p {
  margin-bottom: 16px !important;
}
.sd-doc .sd-plan-desc p:last-child { margin-bottom: 0 !important; }
.sd-doc .sd-plan-desc em     { font-style: normal !important; color: var(--sd-blue) !important; font-weight: 600 !important; }
.sd-doc .sd-plan-desc strong { color: var(--sd-navy) !important; font-weight: 700 !important; }

/* ── H3 — Grupo de features ── */
.sd-doc .sd-group-h3 {
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.3px !important;
  color: var(--sd-muted) !important;
  margin: 44px 0 18px !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  scroll-margin-top: 80px;
}
.sd-doc .sd-group-h3::after {
  content: '' !important;
  flex: 1 !important;
  height: 1px !important;
  background: var(--sd-bdr) !important;
}

/* ── Lista de features (bullets) ── */
.sd-doc .sd-feat-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 0 4px !important;
}
.sd-doc .sd-feat-list li {
  padding: 14px 0 14px 26px !important;
  border-bottom: 1px solid var(--sd-bdr) !important;
  position: relative !important;
  list-style: none !important;
}
.sd-doc .sd-feat-list li:last-child {
  border-bottom: none !important;
}
.sd-doc .sd-feat-list li::before {
  content: '' !important;
  position: absolute !important;
  left: 4px !important;
  top: 22px !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: var(--sd-plan-col, var(--sd-blue)) !important;
}
.sd-doc .sd-feat-list li strong {
  display: block !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--sd-navy) !important;
  margin-bottom: 5px !important;
  line-height: 1.3 !important;
}
.sd-doc .sd-feat-list li span {
  font-size: 14px !important;
  color: var(--sd-muted) !important;
  line-height: 1.75 !important;
}

/* ── Caixa de conclusão ── */
.sd-doc .sd-conc {
  margin-top: 64px;
  padding: 36px 40px;
  background: rgba(0, 151, 214, 0.06);
  border-radius: 12px;
  border-left: 3px solid var(--sd-blue);
}
.sd-doc .sd-conc h2 {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--sd-navy) !important;
  margin-bottom: 16px !important;
  text-transform: none !important;
}
.sd-doc .sd-conc p {
  font-size: 15px !important;
  color: var(--sd-muted) !important;
  line-height: 1.8 !important;
  margin-bottom: 14px !important;
}
.sd-doc .sd-conc p:last-of-type { margin-bottom: 0 !important; }
.sd-doc .sd-conc a {
  color: var(--sd-blue) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.sd-doc .sd-conc a:hover { text-decoration: underline !important; }

/* ── CTA button ── */
.sd-doc .sd-conc a.sd-cta-btn,
.sd-doc .sd-cta-btn {
  display: inline-block !important;
  width: auto !important;
  max-width: none !important;
  background: #0097D6 !important;
  background-color: #0097D6 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  padding: 13px 30px !important;
  border-radius: 6px !important;
  border: none !important;
  box-shadow: none !important;
  text-decoration: none !important;
  letter-spacing: 0.3px !important;
  cursor: pointer !important;
  margin: 20px 0 0 !important;
  transition: background 0.25s ease !important;
}
.sd-doc .sd-conc a.sd-cta-btn:hover,
.sd-doc .sd-cta-btn:hover {
  background: #1533b4 !important;
  background-color: #1533b4 !important;
  color: #fff !important;
  text-decoration: none !important;
}

@media (max-width: 640px) {
  .sd-doc .sd-doc-inner  { padding: 32px 18px 72px; }
  .sd-doc .sd-conc       { padding: 28px 22px; }
  .sd-doc .sd-plan-sec   { margin-bottom: 52px; }
}


/* ============================================================
 * SECÇÃO 2 — Mapa de Serviços (.sd-map)
 * ============================================================ */

.sd-map, .sd-map * { box-sizing: border-box; }
.sd-map h1, .sd-map h2, .sd-map h3, .sd-map p, .sd-map a {
  font-family: var(--sd-font) !important;
  margin: 0 !important;
  padding: 0 !important;
}
.sd-map {
  font-family: var(--sd-font);
  background: var(--sd-soft);
  color: var(--sd-text);
  max-width: 1260px;
  margin: 0 auto;
  padding: 48px 20px 80px;
}
.sd-map .sd-map-header { text-align: center; margin-bottom: 48px; }
.sd-map .sd-map-header .eyebrow {
  display: inline-block; background: rgba(0,151,214,.1); color: var(--sd-blue);
  padding: 6px 18px; border-radius: 999px; font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .8px; margin-bottom: 14px;
}
.sd-map .sd-map-header h1 {
  font-size: clamp(24px,3vw,34px) !important; font-weight: 700 !important;
  color: var(--sd-navy) !important; letter-spacing: -.02em !important; margin-bottom: 10px !important;
}
.sd-map .sd-map-header p { font-size: 14px; color: var(--sd-muted); }

.sd-map .sd-section-label {
  font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .8px;
  color: var(--sd-navy); margin: 48px 0 18px; padding: 10px 16px;
  border-left: 4px solid var(--sd-blue); background: #eef2fb; border-radius: 0 7px 7px 0;
}
.sd-map .sd-section-label.azure  { border-left-color: #0e6655; background: #e5f4f2; }
.sd-map .sd-section-label.addons { border-left-color: #888; background: #f0f0f2; }

.sd-map .map-nest {
  border-radius: 14px; padding: 24px 24px 0; margin-bottom: 28px; position: relative;
}
.sd-map .n-advanced { border: 2.5px solid #0d2c54; background: rgba(13,44,84,.03); }
.sd-map .n-optimize  { border: 2.5px solid #1a5276; background: rgba(26,82,118,.03);  margin: 18px 0 22px; }
.sd-map .n-core      { border: 2.5px solid #2471a3; background: rgba(36,113,163,.04); margin: 18px 0 22px; }
.sd-map .n-az-adv    { border: 2.5px solid #0c4a6e; background: rgba(12,74,110,.03); }
.sd-map .n-az-core   { border: 2.5px solid #0e6655; background: rgba(14,102,85,.03);  margin: 18px 0 22px; }

.sd-map .plan-nest-header { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; flex-wrap: wrap; }
.sd-map .plan-name {
  font-size: 14px !important; font-weight: 800 !important; text-transform: uppercase !important; letter-spacing: .8px !important;
}
.sd-map .n-advanced .plan-name { color: #0d2c54 !important; }
.sd-map .n-optimize  .plan-name { color: #1a5276 !important; }
.sd-map .n-core      .plan-name { color: #2471a3 !important; }
.sd-map .n-az-adv    .plan-name { color: #0c4a6e !important; }
.sd-map .n-az-core   .plan-name { color: #0e6655 !important; }

.sd-map .plan-chip {
  font-size: 10px !important; font-weight: 700 !important; padding: 3px 10px !important;
  border-radius: 999px !important; color: #fff !important; letter-spacing: .3px !important;
}
.sd-map .n-advanced .plan-chip { background: #0d2c54; }
.sd-map .n-optimize  .plan-chip { background: #1a5276; }
.sd-map .n-core      .plan-chip { background: #2471a3; }
.sd-map .n-az-adv    .plan-chip { background: #0c4a6e; }
.sd-map .n-az-core   .plan-chip { background: #0e6655; }
.sd-map .plan-incl { font-size: 11px !important; color: var(--sd-muted); font-weight: 500 !important; }

.sd-map .feat-label {
  font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .8px;
  color: var(--sd-muted); margin: 14px 0 8px;
}
.sd-map .tiles { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; padding-bottom : 20px }
.sd-map .feature-tile {
  flex: 0 0 auto; width: 128px; min-height: 62px; padding: 7px 10px; border-radius: 8px;
  font-size: 11px !important; font-weight: 600 !important; cursor: pointer;
  display: flex !important; align-items: center !important; justify-content: center !important;
  text-align: center !important; line-height: 1.35 !important; color: #fff !important;
  text-decoration: none !important; transition: transform .12s, box-shadow .12s;
  position: relative; margin: 0 !important; padding: 7px 10px !important;
}
.sd-map .feature-tile:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
  color: #fff !important;
  text-decoration: none !important;
}
.sd-map .tc-core      { background: #2980B9; }
.sd-map .tc-optimize  { background: #1a5276; }
.sd-map .tc-advanced  { background: #0d2c54; }
.sd-map .tc-secure    { background: #c0392b; }
.sd-map .tc-transform { background: #5d4e6d; }
.sd-map .tc-prev      { background: #d4880a; }
.sd-map .tc-az-core   { background: #0f6674; }
.sd-map .tc-az-adv    { background: #0c4a6e; }

/* CSS-only tooltip removido — usar #sd-tooltip via JS */

/* Fora de âmbito — details/summary nativo (sem JS) */
.sd-map .fora-det { margin-top: 4px; padding-bottom: 14px; }
.sd-map .fora-det summary {
  font-size: 11px !important; font-weight: 600 !important; color: var(--sd-muted);
  cursor: pointer; list-style: none; display: flex; align-items: center; gap: 6px;
  padding: 8px 0 10px !important;
}
.sd-map .fora-det summary::before { content: '▶'; font-size: 9px; transition: transform .2s; }
.sd-map .fora-det[open] summary::before { transform: rotate(90deg); }
.sd-map .fora-det summary::-webkit-details-marker { display: none; }
.sd-map .fora-body {
  padding: 12px 18px 14px; font-size: 12px; color: var(--sd-muted);
  background: rgba(0,0,0,.03); border-radius: 7px; line-height: 1.7;
}
.sd-map .fora-body ul { padding-left: 18px !important; margin: 0 !important; }
.sd-map .fora-body li { margin-bottom: 5px !important; list-style: disc !important; }

/* Add-ons grid */
.sd-map .addon-grid {
  display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-bottom: 8px;
}
.sd-map .addon-card { border-radius: 12px; overflow: hidden; background: #fff; box-shadow: 0 3px 14px rgba(12,18,40,.08); }
.sd-map .addon-head { padding: 14px 18px; display: flex; align-items: center; justify-content: space-between; }
.sd-map .addon-head h2 { font-size: 13px !important; font-weight: 800 !important; color: #fff !important; letter-spacing: .4px !important; }
.sd-map .ah-secure    { background: linear-gradient(135deg,#c0392b,#8e1a10); }
.sd-map .ah-transform { background: linear-gradient(135deg,#5d4e6d,#3d3048); }
.sd-map .ah-prev      { background: linear-gradient(135deg,#d4880a,#a06208); }
.sd-map .addon-body   { padding: 14px 18px 4px; }

@media (max-width: 760px) {
  .sd-map .addon-grid   { grid-template-columns: 1fr; }
  .sd-map .feature-tile { width: calc(50% - 4px); }
  .sd-map .map-nest     { padding: 18px 14px 0; }
}

/* ── Tooltip JS (#sd-tooltip) ── */
#sd-tooltip {
  display: none;
  position: fixed;
  background: #0C1228;
  color: #fff;
  padding: 13px 17px;
  border-radius: 10px;
  width: 300px;
  max-width: 300px;
  z-index: 9999;
  font-size: 13px;
  line-height: 1.6;
  pointer-events: none;
  box-shadow: 0 10px 32px rgba(12,18,40,.45);
  font-family: "Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  word-wrap: break-word;
  white-space: normal;
}
#sd-tooltip .tip-plan {
  font-size: 10px; opacity: .6; margin-bottom: 4px;
  text-transform: uppercase; letter-spacing: .8px; font-weight: 600;
}
#sd-tooltip .tip-name {
  font-weight: 700; font-size: 14px; margin-bottom: 6px; line-height: 1.3;
}
#sd-tooltip .tip-desc {
  opacity: .9; font-size: 12px; line-height: 1.6;
}


/* ============================================================
 * Mapa de Serviços — correções visuais
 * ============================================================ */

/* 1) Esconder label "MAPA DE SERVIÇOS" */
.sd-map .sd-map-header .eyebrow {
    display: none !important;
}

/* 2) Fundo transparente (igual à cor da página #f4f6fc do body) */
.sd-map {
    background: transparent !important;
    padding-top: 8px !important;
}

/* 3) Header centrado e sem espaço excessivo */
.sd-map .sd-map-header {
    text-align: center !important;
    margin-bottom: 32px !important;
}

/* 4) Título centrado */
.sd-map .sd-map-header h1 {
    text-align: center !important;
    margin: 0 auto 12px !important;
}

/* 5) Legenda centrada e sem margem excessiva */
.sd-legend {
    margin-bottom: 32px !important;
}

/* ============================================================
 * v2.5.0: H2/H3 reset no Mapa — browser defaults override
 * ============================================================ */
.sd-map h2.sd-section-label,
.sd-map h2.sd-section-label.azure,
.sd-map h2.sd-section-label.addons {
    font-size: 13px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: .8px !important;
    margin: 48px 0 18px !important;
    padding: 10px 16px !important;
    line-height: normal !important;
}
.sd-map h3.plan-name {
    font-size: 14px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: .8px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: normal !important;
    display: inline !important;
}
.sd-map { background: transparent !important; padding-top: 8px !important; }
.sd-map .eyebrow { display: none !important; }

/* ============================================================
 * Mapa de Serviços — igualar ao SQL Server
 * ============================================================ */

/* Título igual ao SQL Server (44px bold centrado) */
.sd-map .sd-map-header h1 {
    font-size: clamp(28px, 4vw, 44px) !important;
    font-weight: 700 !important;
    text-align: center !important;
    width: 100% !important;
}

/* Subtítulo centrado e igual ao "Gestão de base de dados" */
.sd-map .sd-map-header p {
    font-size: 18px !important;
    color: #646570 !important;
    text-align: center !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 8px auto 0 !important;
}

/* Caixa de legenda: transparente (igual à página, sem branco) */
.sd-legend {
    background: transparent !important;
    box-shadow: none !important;
    border: 1px solid #e4e7ec !important;
    padding: 16px 24px !important;
}

/* ============================================================
 * v2.6.0: Mapa — 3 correcções (chip, inclui, legenda)
 * ============================================================ */

/* Fix 1+2: "Código T-SQL", "Infraestrutura" e "inclui..." alinhados */
.sd-map .plan-nest-header {
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
	/*justify-content: center;*/
	display: flex;
 
}
.sd-map .plan-nest-header h3.plan-name {
    line-height: 1 !important;
    flex-shrink: 0 !important;

}
.sd-map .plan-chip {
    flex-shrink: 0 !important;
    line-height: 1.2 !important;
}
.sd-map .plan-incl {
    line-height: 1.2 !important;
    flex-shrink: 1 !important;
    white-space: nowrap !important;
	padding-left: 10px;
	
	
}

/* Fix 3: Legenda com fundo igual ao SQL Server (#EAEAF9) */
.sd-legend {
    background: rgb(234, 234, 249) !important;
    box-shadow: none !important;
    border-radius: 20px !important;
    border: none !important;
}


/* ============================================================
   SINGULAR DATA — CSS BI
   APPEND ao singulardata.css (no final, depois das v2.6.x fixes)

   Paleta BI (Microsoft-inspired):
   CORE     #217346  verde   (operações, manutenção)
   ADVANCED #2B579A  azul    (desenvolvimento activo)
   STRATEGY #744DA9  roxo    (add-on estratégico)
   PROJECTS #00695c  laranja (projectos)
   ============================================================ */

/* --- BI Tile colours --------------------------------------- */
.tc-bi-core  { background: #217346; }
.tc-bi-adv   { background: #2B579A; }
.tc-bi-strat { background: #744DA9; }
.tc-bi-proj  { background: #00695c; }

/* --- BI Plan nest backgrounds ------------------------------ */
.n-bi-adv  {
  background: rgba(43, 87, 154, .04);
  border: 1.5px solid rgba(43, 87, 154, .22);
}
.n-bi-core {
  background: rgba(33, 115, 70, .04);
  border: 1.5px solid rgba(33, 115, 70, .22);
  margin-top: 12px;
}

/* --- BI plan-name colours (corrige herança #0d2c54 do SQL) - */
.n-bi-adv  > .plan-nest-header .plan-name { color: #2B579A; }
.n-bi-core > .plan-nest-header .plan-name { color: #217346; }

/* --- BI plan-chip colours (corrige herança #0d2c54 do SQL) -- */
.n-bi-adv  > .plan-nest-header .plan-chip { background: #2B579A; }
.n-bi-core > .plan-nest-header .plan-chip { background: #217346; }

/* --- BI Addon heads ---------------------------------------- */
.ah-bi-strat {
  background: linear-gradient(135deg, #744DA9 0%, #5a3a83 100%);
}
.ah-bi-proj {
  background: linear-gradient(135deg, #00695c 0%, #004d40 100%);
}

/* BI — Migração de Plataforma: chip na mesma linha que o título */
.addon-head.ah-bi-proj {
  flex-wrap: nowrap !important;
  align-items: center !important;
}
.addon-head.ah-bi-proj h2 {
  font-size: 12px !important;
  white-space: nowrap !important;
}
.addon-head.ah-bi-proj .plan-chip {
  font-size: 9px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* ============================================================
   SINGULAR DATA — Anchor Navigation Highlight
   APPEND ao singulardata.css (no final)

   Quando o utilizador clica num tile do Mapa e é enviado para
   a página de serviços, o plano de destino fica com um
   highlight temporário (3 seg) para ser facilmente identificado.

   Funciona em SQL (/planos-de-servico-sql-server/) e
   BI (/planos-de-servico-business-intelligence/).
   ============================================================ */

/* ── 1. Scroll offset — evita que o header fixo tape o título ─ */
[id^="plan-"],
[id^="feat-"],
[id^="Plans"],
[id^="OnPremises"],
[id^="Azure"],
[id^="AddOn"],
[id^="Project"] {
  scroll-margin-top: 320px;
}

/* ── 2. Highlight de entrada ao navegar via âncora ──────────── */
[id^="plan-"]:target,
[id^="feat-"]:target {
  animation: anchor-plan-highlight 6s ease-out forwards;
  border-radius: 6px;
}

@keyframes anchor-plan-highlight {
  0%, 40% {
    background-color: rgba(0, 151, 214, .08);
    outline: 2px solid rgba(0, 151, 214, .35);
    outline-offset: 8px;
  }
  100% {
    background-color: transparent;
    outline: 2px solid transparent;
    outline-offset: 8px;
  }
}

/* ============================================================
   SINGULAR DATA — CSS Fábrica de Software
   APPEND ao singulardata.css (no final, após BI)

   Paleta Fábrica de Software:
   MANUTENÇÃO  #3d5a80  azul-ardósia
   EVOLUÇÃO    #1d3557  navy escuro
   PROJECTOS   #1948a3  azul-índigo
   ============================================================ */

/* --- Tile colours --- */
.tc-fs-manut { background: #3d5a80; }
.tc-fs-evol  { background: #1d3557; }
.tc-fs-proj  { background: #1948a3; }

/* --- Nest backgrounds --- */
.n-fs-evol {
  background: rgba(29, 53, 87, .04);
  border: 1.5px solid rgba(29, 53, 87, .20);
}
.n-fs-manut {
  background: rgba(61, 90, 128, .04);
  border: 1.5px solid rgba(61, 90, 128, .20);
  margin-top: 12px;
}

/* --- Plan chips --- */
.n-fs-evol  > .plan-nest-header .plan-name { color: #1d3557; }
.n-fs-manut > .plan-nest-header .plan-name { color: #3d5a80; }
.n-fs-evol  > .plan-nest-header .plan-chip { background: #1d3557; }
.n-fs-manut > .plan-nest-header .plan-chip { background: #3d5a80; }

/* --- Addon / project heads --- */
.ah-fs-proj {
  background: linear-gradient(135deg, #1948a3 0%, #0d2d78 100%);
}

/* --- Tiles nos cards de projecto: tamanho uniforme --- */
.sd-addons-wrap .addon-body .tiles {
  /*display: grid;*/
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 6px;

}
.sd-addons-wrap .addon-body .tiles .feature-tile {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  white-space: normal;
  line-height: 1.3;
  padding: 6px 10px;
}

/* Fabrica — chip na mesma linha que o título */
.addon-head.ah-fbr-prj {
  flex-wrap: nowrap !important;
  align-items: center !important;
}
.addon-head.ah-fbr-prj h2 {
  font-size: 12px !important;
  white-space: nowrap !important;
}
.addon-head.ah-fbr-prj .plan-chip {
  font-size: 9px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* Todos os addon-head: título e chip sempre na mesma linha */
.addon-head {
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 8px !important;
}
.addon-head h2 {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-size: clamp(10px, 1.2vw, 14px) !important;
}
.addon-head .plan-chip {
  flex-shrink: 0 !important;
  white-space: nowrap !important;
  font-size: clamp(8px, 0.9vw, 11px) !important;
}


/* ============================================================
 * SingularData — CSS adicional para página Team as a Service
 * Adicionar no final de singulardata.css
 * Versão: taas-5.0
 * ============================================================ */


/* ─────────────────────────────────────────────────────────
 * 0) Full-width escape — páginas com template padrão WP
 *    (DOM: article > .entry-content > .wpb-content-wrapper > section.vc_section)
 * ───────────────────────────────────────────────────────── */
.entry-content .wpb-content-wrapper > section.vc_section.bg-linear-gradient,
.entry-content .wpb-content-wrapper > section.vc_section.bg-linear,
.entry-content .wpb-content-wrapper > section.vc_section.bg-linear-singular-blue,
.entry-content .wpb-content-wrapper > section.vc_section.bg-linear-gradient-yellow,
.entry-content .wpb-content-wrapper > section.vc_section.sd-cta-section {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  position: relative;
}


/* ─────────────────────────────────────────────────────────
 * 0b) Secção CTA final
 * ───────────────────────────────────────────────────────── */
.sd-cta-section {
  background: linear-gradient(135deg, #0097d6 0%, #0a5fa8 100%) !important;
}


/* ─────────────────────────────────────────────────────────
 * 0c) Esconder <p> injectados pelo wpautop entre secções
 *     O WordPress adiciona <p>\n</p> entre shortcodes
 *     no template padrão — remove o espaço extra no topo
 * ───────────────────────────────────────────────────────── */
.entry-content .wpb-content-wrapper > p {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}


/* ─────────────────────────────────────────────────────────
 * 1) Cabeçalho da página TaaS
 *    Fundo: padrão da página (sem gradiente próprio)
 *    Padding reduzido para iniciar próximo do menu
 * ───────────────────────────────────────────────────────── */
.sd-taas-header {
  padding-top: 20px !important;
  padding-bottom: 44px !important;
}


/* ─────────────────────────────────────────────────────────
 * 2) Eyebrow em section-solution fora da home page
 * ───────────────────────────────────────────────────────── */
.section-solution .sd-eyebrow-reset,
.section-solution .sd-eyebrow-reset .sd-section-eyebrow {
  margin-bottom: 0 !important;
}


/* ─────────────────────────────────────────────────────────
 * 3) Listas <ul> dentro de cards de servico
 * ───────────────────────────────────────────────────────── */
.section-solution .service-item ul,
.section-solution .item ul,
.our-value-block .service-item ul,
.our-value-block .item ul,
.bg-linear-singular-blue .item ul {
  padding-left: 20px;
  list-style: disc !important;
}

.section-solution .service-item ul li::before,
.section-solution .item ul li::before,
.our-value-block .service-item ul li::before,
.our-value-block .item ul li::before,
.bg-linear-singular-blue .item ul li::before {
  display: none !important;
  content: none !important;
}

.section-solution .service-item ul li,
.section-solution .item ul li,
.bg-linear-singular-blue .item ul li {
  padding-left: 0 !important;
  margin-bottom: 6px;
  font-size: 14px;
  color: #4a4f5c;
  line-height: 1.75;
}


/* ─────────────────────────────────────────────────────────
 * 4) Caixas de icone nos cards de servico
 * ───────────────────────────────────────────────────────── */
.sd-icon-box {
  width: 48px;
  height: 48px;
  background: rgba(0, 151, 214, 0.1);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  flex-shrink: 0;
}

.sd-icon-box img {
  width: 26px;
  height: 26px;
  object-fit: contain;
}


/* ─────────────────────────────────────────────────────────
 * 5) FAQ — details/summary accordion
 *
 *    TECNICA: o icone usa position:absolute para estar sempre
 *    alinhado à direita, independente de o wpautop adicionar
 *    <p> tags em redor do texto da pergunta.
 *
 *    IMPORTANTE: colar na aba "Texto" do WPBakery (nao Visual)
 *    para que o TinyMCE nao remova as tags details/summary.
 * ───────────────────────────────────────────────────────── */
.sd-faq {
  max-width: 800px;
  margin: 0 auto;
}

.sd-faq details {
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  margin-bottom: 10px;
  overflow: hidden;
  background: #ffffff;
}

.sd-faq details summary {
  position: relative !important;
  display: block !important;
  width: 100%;
  box-sizing: border-box;
  padding: 18px 52px 18px 22px !important;
  font-size: 16px;
  font-weight: 600;
  color: #0C1228;
  cursor: pointer;
  list-style: none !important;
  -webkit-appearance: none !important;
  background: #ffffff;
  user-select: none;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  line-height: 1.5;
}

/* Remove marcador padrao do browser */
.sd-faq details summary::-webkit-details-marker,
.sd-faq details summary::marker {
  display: none !important;
  content: '' !important;
}

/* Icone + fixo a direita com position:absolute */
.sd-faq details summary .faq-icon {
  position: absolute !important;
  right: 20px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: #0097d6;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  display: block !important;
  transition: transform .25s ease;
}

.sd-faq details[open] > summary {
  border-bottom: 1px solid #f0f4f8;
}

/* Rotacao do + quando aberto — manter translateY para centrar */
.sd-faq details[open] summary .faq-icon {
  transform: translateY(-50%) rotate(45deg) !important;
}

.sd-faq .faq-body {
  padding: 14px 22px 20px;
  font-size: 15px;
  color: #4a4f5c;
  line-height: 1.75;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}


/* ─────────────────────────────────────────────────────────
 * 6) Botoes brancos sobre fundo azul (CTA final)
 * ───────────────────────────────────────────────────────── */
.button-main-white {
  display: inline-block !important;
  padding: 12px 28px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #0097d6 !important;
  background-color: #ffffff !important;
  border-radius: 4px !important;
  border: none !important;
  letter-spacing: 1.28px !important;
  text-decoration: none !important;
  transition: all .4s ease !important;
  cursor: pointer;
}

.button-main-white:hover {
  background-color: #e5f4fb !important;
  color: #0097d6 !important;
}

.button-outline-white {
  display: inline-block !important;
  padding: 12px 28px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #ffffff !important;
  background-color: transparent !important;
  border: 2px solid rgba(255, 255, 255, 0.5) !important;
  border-radius: 4px !important;
  letter-spacing: 1px !important;
  text-decoration: none !important;
  transition: all .4s ease !important;
  cursor: pointer;
}

.button-outline-white:hover {
  border-color: #ffffff !important;
  background-color: rgba(255, 255, 255, 0.1) !important;
  color: #ffffff !important;
}


/* ─────────────────────────────────────────────────────────
 * 7) Equal-height columns — elimina efeito escada
 *
 *    WPBakery usa float:left nas colunas por omissao.
 *    Converter para flexbox alinha todas as colunas ao topo
 *    e da-lhes igual altura, eliminando o efeito escada.
 * ───────────────────────────────────────────────────────── */
.entry-content .wpb-content-wrapper .vc_row.vc_row-fluid {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}

/* Ocultar pseudo-elementos de clearfix */
.entry-content .wpb-content-wrapper .vc_row.vc_row-fluid::before,
.entry-content .wpb-content-wrapper .vc_row.vc_row-fluid::after {
  display: none !important;
}

/* Colunas — flex vertical */
.entry-content .wpb-content-wrapper .vc_row.vc_row-fluid > .wpb_column {
  display: flex !important;
  flex-direction: column !important;
}

/* vc_column-inner — sem padding-top para alinhamento correto */
.entry-content .wpb-content-wrapper .vc_row.vc_row-fluid > .wpb_column > .vc_column-inner {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  padding-top: 0 !important;
}

/* Wrappers internos WPBakery */
.entry-content .wpb-content-wrapper .vc_row.vc_row-fluid > .wpb_column .wpb_wrapper {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

.entry-content .wpb-content-wrapper .vc_row.vc_row-fluid > .wpb_column .wpb_text_column {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

.entry-content .wpb-content-wrapper .vc_row.vc_row-fluid > .wpb_column .wpb_text_column > .wpb_wrapper {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Cards — esticar para preencher a coluna */
.entry-content .wpb-content-wrapper .service-item,
.entry-content .wpb-content-wrapper .item {
  flex: 1 !important;
}

/* Primeiro elemento em coluna — sem margem no topo */
.entry-content .wpb-content-wrapper .wpb_text_column .wpb_wrapper > *:first-child {
  margin-top: 0 !important;
}

.aligncenter {
  margin-top: 0em !important;
  margin-bottom: 0em !important	
}

.dashicons-taas {
    color:rgb(0 151 214) !important; /* Substitua pelo código da sua cor */
}

.service-item-taas {
  display: flex;
  flex-direction: column;
}

/* Esconde p vazios injetados pelo WordPress */
.service-item-taas > p:empty {
  display: none !important;
}

/* A lista cresce e empurra o botão para baixo */
.service-item-taas > ul {
  flex-grow: 1;
}


/* ============================================================
   SINGULAR DATA — RESPONSIVE / MOBILE
   Homepage e páginas gerais — breakpoints em falta
   Adicionado para alinhar com o site React original

   INSTRUÇÕES: Copiar este bloco e colar no FINAL do ficheiro
   singulardata.css (via WP Admin → Appearance → Theme Editor
   ou wp-content/themes/singulardata/assets/css/singulardata.css)
   ============================================================ */


/* ── 1. Menu mobile (hamburger) ───────────────────────────── */

/* Overlay escuro quando o menu está aberto */
body.menu-open::before {
  content: '';
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 998;
}

/* Painel de navegação — slide-in da direita ao abrir */
@media (max-width: 1023px) {
  .menu__wrapper .navigator {
    position: fixed;
    top: 0;
    right: -340px;
    width: 320px;
    max-width: 90vw;
    height: 100vh;
    background: #fff;
    z-index: 1000;
    overflow-y: auto;
    padding: 72px 24px 40px;
    box-shadow: -4px 0 24px rgba(0, 0, 0, 0.18);
    transition: right 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  body.menu-open .menu__wrapper .navigator {
    display: block !important;
    right: 0;
  }

  /* Lista principal vertical */
  .menu__wrapper .navigator > ul {
    display: flex !important;
    flex-direction: column;
    gap: 0;
    padding: 0;
  }

  .menu__wrapper .navigator > ul > li {
    border-bottom: 1px solid #eef0f5;
    padding: 0;
  }

  .menu__wrapper .navigator > ul > li > a {
    display: block;
    padding: 14px 0;
    font-size: 15px;
    font-weight: 600;
    color: #0C1228;
  }

  /* Dropdowns: expandem-se abaixo do item pai */
  .menu__wrapper .navigator > ul > li .dropdown-menu,
  .menu__wrapper .navigator > ul > li .dropdown-menu.-wide {
    position: static !important;
    display: none;
    opacity: 1 !important;
    visibility: visible !important;
    width: 100% !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 0 8px 12px;
    flex-direction: column !important;
  }

  /* Ocultar coluna CTA lateral do mega menu em mobile */
  .menu__wrapper .navigator > ul > li .dropdown-menu .right {
    display: none !important;
  }

  .menu__wrapper .navigator > ul > li .dropdown-menu .left {
    width: 100% !important;
    padding: 0 !important;
  }

  .menu__wrapper .navigator > ul > li .dropdown-menu .service-cate {
    display: block;
    margin-top: 12px;
    font-size: 13px;
    font-weight: 700;
    color: #0097d6;
  }

  /* Grids de links dentro do dropdown → lista vertical */
  .menu__wrapper .navigator > ul > li .dropdown-menu ul {
    display: flex !important;
    flex-direction: column;
    gap: 0;
    grid-template-columns: none !important;
  }

  .menu__wrapper .navigator > ul > li .dropdown-menu ul li a {
    font-size: 13px;
    padding: 6px 0;
  }

  /* Mostrar dropdown ao hover/focus (primeiro toque no touch) */
  .menu__wrapper .navigator > ul > li:hover .dropdown-menu,
  .menu__wrapper .navigator > ul > li:focus-within .dropdown-menu {
    display: flex !important;
  }
}


/* ── 2. WPBakery colunas — empilhar em móvel ─────────────── */

@media (max-width: 767px) {
  /* Rows flex devem quebrar linha */
  .vc_row,
  .content-wrapper .vc_row {
    flex-wrap: wrap !important;
  }

  /* Todas as colunas WPBakery passam para 100% */
  .vc_col-sm-1, .vc_col-sm-2, .vc_col-sm-3,
  .vc_col-sm-4, .vc_col-sm-5, .vc_col-sm-6,
  .vc_col-sm-7, .vc_col-sm-8, .vc_col-sm-9 {
    width: 100% !important;
    float: none !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  /* row-compact (secções "Como Nós Fazemos"): também empilhar em mobile */
  .vc_row.row-compact .vc_col-sm-6 {
    width: 100% !important;
    flex: 0 0 100% !important;
  }
}


/* ── 3. Hero / Smart Slider ──────────────────────────────── */

@media (max-width: 767px) {
  .hero-slider-row {
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Limitar altura do slider em mobile */
  .n2-ss-slider-wrapper,
  .n2-ss-slider {
    max-height: 480px !important;
  }
}


/* ── 4. Espaçamentos e tipografia em móvel ───────────────── */

@media (max-width: 767px) {
  /* Reduzir padding vertical das secções */
  .sd-py-80 {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  /* Padding lateral das secções */
  .vc_section.about-block,
  .vc_section.section-benefit,
  .vc_section.section-solution,
  .vc_section.service-block {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Títulos de secção mais pequenos */
  .heading3, h3.heading3 { font-size: 22px !important; }
  .heading4, h4.heading4 { font-size: 18px !important; }

  /* Contadores / stats: centralizar */
  .counter-item {
    text-align: center;
  }

  /* Cards de serviço */
  .service-item {
    padding: 20px 16px !important;
  }

  /* Benefícios / items da secção */
  .benefit-item {
    text-align: center;
  }
}


/* ── 5. Container — padding lateral em mobile ────────────── */

@media (max-width: 767px) {
  .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* Evitar scroll horizontal */
  body,
  .site-main {
    overflow-x: hidden;
  }
}


/* ── 6. Botões e funções do menu em mobile ───────────────── */

@media (max-width: 480px) {
  .list__button {
    gap: 8px !important;
    padding-right: 8px !important;
  }

  .button-main {
    font-size: 13px !important;
    padding: 8px 14px !important;
  }
}


/* ============================================================
   SINGULAR DATA — Layout Fixes (homepage)
   Colar no FINAL do singulardata.css

   Corrige:
   1) "Nossas Soluções" — títulos dos cards centrados
   2) "Indústrias" — gap excessivo a cada dois items
   3) "Sobre a SingularData" — conteúdo mais largo (1500px)
   ============================================================ */


/* ── 1. Nossas Soluções — centrar conteúdo dos cards ───────── */

.section-solution .service-item.-solution {
  text-align: center;
}

.section-solution .service-item.-solution .service-name {
  text-align: center;
}

/* A linha decorativa (::before) fica centrada sob o título */
.section-solution .service-item.-solution .service-name:before {
  left: 50%;
  transform: translateX(-50%);
}

/* Ícone e descrição dentro do card também centrados */
.section-solution .service-item.-solution .service-icon,
.section-solution .service-item.-solution .service-des,
.section-solution .service-item.-solution p {
  text-align: center;
}


/* ── 2. Indústrias — remover gap excessivo entre pares ─────── */

/*
   O WPBakery insere rows vazias (separadores) entre cada par de items.
   Essas rows herdam margin-bottom: 30px da regra global .content-wrapper .vc_row.
   Dentro do .service-block todas as rows devem ter gap mínimo.
*/
.service-block .vc_row {
  margin-bottom: 8px !important;
}


/* ── 3. Sobre a SingularData — conteúdo mais largo ─────────── */

/*
   As rows internas de vc_section têm max-width: 1320px (regra geral).
   Para o about-block, alargamos para 1500px para ficar consistente
   com as restantes secções.
*/
section.vc_section.about-block > .vc_row.wpb_row {
  max-width: 1500px !important;
}

/* ============================================================
   SINGULAR DATA — Homepage Fixes
   Colar no FINAL do ficheiro singulardata.css

   Corrige:
   1) "Nossas Soluções" — títulos e conteúdo dos cards centrados
   2) "Onde Atuamos" — gap excessivo entre pares de sectores
   3) "Sobre a SingularData" — container mais estreito (~1360px)
   ============================================================ */


/* ── 1. Nossas Soluções — centrar conteúdo dos cards ───────── */

.section-solution .service-item.-solution {
  text-align: center;
}

.section-solution .service-item.-solution .service-name {
  text-align: center;
}

/* Linha decorativa fica centrada sob o título */
.section-solution .service-item.-solution .service-name:before {
  left: 50%;
  transform: translateX(-50%);
}

/* Ícone e descrição dentro do card também centrados */
.section-solution .service-item.-solution .service-icon,
.section-solution .service-item.-solution .service-des,
.section-solution .service-item.-solution p {
  text-align: center;
}


/* ── 2. Onde Atuamos — remover gap das rows separadoras ─────── */
/*
   O WPBakery insere vc_rows vazias (height:1px) entre cada par de sectores.
   Essas rows herdam margin-bottom:30px da regra global .content-wrapper .vc_row.
   Dentro de .service-block reduzimos o gap de todas as rows para 0.
   As rows com conteúdo (.row-compact) mantêm 8px.
*/
.service-block .vc_row {
  margin-bottom: 0 !important;
}

.service-block .vc_row.row-compact {
  margin-bottom: 8px !important;
}


/* ── 3. Sobre a SingularData — container proporcional ──────── */
/*
   A regra geral limita as rows a 1320px.
   O about-block estava a 1500px — reduzimos para 1360px
   para ficar proporcional ao site React original (singulardata.pt).
*/
section.vc_section.about-block > .vc_row.wpb_row {
  max-width: 1360px !important;
}


/* ============================================================
   SINGULAR DATA - Mobile Definitive
   Colar no FINAL de singulardata.css
   (Remove os blocos "Mobile Menu Fix" e "Mobile Fix v2" anteriores)
   ============================================================ */


/* ============================================================
   A. MENU MOBILE
   ============================================================ */

/* A1. Botao "Fale connosco" - sem quebra de linha */
@media (max-width: 1023px) {
  .menu__wrapper__functions .button-main,
  .menu__wrapper__functions a.button-main {
    white-space: nowrap !important;
    font-size: 12px !important;
    padding: 8px 14px !important;
    line-height: 1.4 !important;
  }
}

/* A2. Painel do menu - full-width, branco, z-index correto */
@media (max-width: 1023px) {

  body.menu-open .header.fixed {
    z-index: 10000 !important;
  }

  body.menu-open .navigator {
    position: fixed !important;
    top: 74px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    background: #fff !important;
    z-index: 9999 !important;
    overflow-y: auto !important;
    padding: 0 !important;
  }

  body.menu-open .navigator > ul {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
  }

  body.menu-open .navigator > ul > li {
    border-bottom: 1px solid #eef0f5 !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
  }

  body.menu-open .navigator > ul > li > a {
    display: block !important;
    padding: 14px 24px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #0C1228 !important;
    text-decoration: none !important;
  }

  /* A3. Dropdowns - colapsados por defeito, abrem via JS (data-sd-open) */
  body.menu-open .navigator .dropdown-menu,
  body.menu-open .navigator .dropdown-menu.-wide {
    display: none !important;
    position: static !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-shadow: none !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 0 8px 24px !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: hidden !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }

  body.menu-open .navigator .dropdown-menu .right {
    display: none !important;
  }

  body.menu-open .navigator .dropdown-menu .left {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    position: static !important;
    float: none !important;
  }

  body.menu-open .navigator .dropdown-menu .service-cate,
  body.menu-open .navigator .dropdown-menu .service-title {
    display: block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #0097d6 !important;
    text-transform: uppercase !important;
    padding: 10px 0 4px !important;
    margin: 0 !important;
  }

  body.menu-open .navigator .dropdown-menu ul {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    grid-template-columns: none !important;
    width: 100% !important;
  }

  body.menu-open .navigator .dropdown-menu ul li {
    width: 100% !important;
    padding: 0 !important;
    float: none !important;
    list-style: none !important;
  }

  body.menu-open .navigator .dropdown-menu ul li a {
    display: block !important;
    font-size: 13px !important;
    color: #444 !important;
    padding: 6px 0 !important;
    text-decoration: none !important;
    border-bottom: 1px solid #f5f5f5 !important;
    white-space: normal !important;
  }
}


/* ============================================================
   B. WPBAKERY - empilhar colunas em mobile
   ============================================================ */

@media (max-width: 767px) {

  /* Reset margens de desktop (positivas ou negativas) das linhas WPBakery */
  .vc_row,
  .vc_row-fluid {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    flex-wrap: wrap !important;
    box-sizing: border-box !important;
  }

  .vc_col-sm-2, .vc_col-sm-3, .vc_col-sm-4,
  .vc_col-sm-5, .vc_col-sm-6, .vc_col-sm-7,
  .vc_col-sm-8, .vc_col-sm-9 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    float: none !important;
  }
}


/* ============================================================
   C. HOME - caixa "Sobre a SingularData"
      Em desktop a secao usa margin: -550px para full-bleed
      e o vc_row tem margin: 585px + padding: 24px para centrar.
      Em mobile, apos reset das margens, o padding acumula ~39px
      de offset a esquerda. Zeramos o padding esquerdo e mantemos
      o direito para a caixa chegar ao bordo esquerdo do ecra.
   ============================================================ */

@media (max-width: 767px) {

  .vc_section.about-block {
    padding-left: 0 !important;
    margin-left: 0 !important;
  }

  .vc_section.about-block .vc_row,
  .vc_section.about-block .vc_row-fluid {
    padding-left: 0 !important;
    margin-left: 0 !important;
  }

  .vc_section.about-block .vc_column_container,
  .vc_section.about-block .wpb_column {
    padding-left: 0 !important;
  }

  .vc_section.about-block .vc_column-inner {
    padding-left: 0 !important;
  }
}


/* ============================================================
   D. HOME - secao "Como nos fazemos" (section-solution)
      Mesma logica da "Sobre": vc_row tem margin 515px + padding 24px.
      Zeramos margem/padding esquerdo, mantemos direita.
      Adicionamos espaco entre titulo e primeiro card, e entre cards.
   ============================================================ */

@media (max-width: 767px) {

  .vc_section.section-solution {
    padding-left: 0 !important;
    margin-left: 0 !important;
  }

  .vc_section.section-solution .vc_row,
  .vc_section.section-solution .vc_row-fluid {
    padding-left: 0 !important;
    margin-left: 0 !important;
  }

  .vc_section.section-solution .vc_column_container,
  .vc_section.section-solution .wpb_column {
    padding-left: 0 !important;
  }

  .vc_section.section-solution .vc_column-inner {
    padding-left: 0 !important;
  }

  /* Espaco entre o titulo da secao e o primeiro card */
  .vc_section.section-solution .vc_row:first-child {
    margin-bottom: 24px !important;
  }

  /* Espaco entre cada card de solucao (SQL Server, BI, Fabrica) */
  .service-item.-solution {
    margin-bottom: 20px !important;
  }
}


/* ============================================================
   E. HOME - secao "Onde atuamos" (service-block)
      Cada .row-compact tem 2x vc_col-sm-6 e margin-bottom: 8px.
      Em mobile, as colunas empilham mas o gap entre itens dentro
      da mesma row e 0px e entre rows e 8px — daí o aspecto "2 a 2".
      Fix: igualar o espaco entre todos os itens do setor.
   ============================================================ */

@media (max-width: 767px) {

  /* Esconder APENAS as rows divisorias (1px, sem conteudo) entre row-compact.
     :not(:first-child) preserva a primeira row que contem o heading "Onde atuamos".
     As divisorias sao sempre filhos posteriores (nao o primeiro filho da section). */
  .vc_section.service-block .vc_row:not(.row-compact):not(:first-child) {
    display: none !important;
  }

  /* Forcar altura auto na secao e rows para evitar espaco vazio em mobile
     (em desktop a secao fica ~600px; em mobile o conteudo e diferente) */
  .vc_section.service-block {
    height: auto !important;
    min-height: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Cada row-compact: sem margens laterais, espaco uniform de baixo */
  .vc_section.service-block .row-compact {
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    padding-left: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    /* Impedir que as colunas empilhadas partilhem altura */
    align-items: flex-start !important;
    flex-wrap: wrap !important;
  }

  /* Cada coluna de setor: espaco uniform abaixo */
  .vc_section.service-block .vc_col-sm-6 {
    padding-left: 0 !important;
    margin-bottom: 10px !important;
    height: auto !important;
  }

  .vc_section.service-block .vc_column-inner {
    padding-left: 0 !important;
    height: auto !important;
    min-height: 0 !important;
  }

  /* O card individual (.-list.h-full): forcar altura auto
     h-full herda a altura do row (soma das 2 colunas empilhadas)
     o que deixava "Call Centers" com caixa demasiado alta */
  .vc_section.service-block .-list {
    height: auto !important;
    min-height: 0 !important;
  }
}


/* ============================================================
   F. PAGINA CONTACTOS - fixes especificos
   ============================================================ */

@media (max-width: 767px) {

  .page-template-page-contactos .wpb_wrapper {
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
  }

  /* Espaco entre a coluna de morada/contactos e o formulario */
  .page-template-page-contactos .contactos-row .vc_col-sm-6:last-child {
    margin-top: 32px !important;
  }

  .page-template-page-contactos h1 {
    font-size: clamp(24px, 7vw, 30px) !important;
    line-height: 1.2 !important;
  }

  .page-template-page-contactos h2 {
    font-size: clamp(20px, 6vw, 26px) !important;
    line-height: 1.3 !important;
  }
}

.contactos-row {
  align-items: flex-start !important;
}

/* ============================================================
   G. MAPA DE SERVICOS - layout responsivo em mobile
      Corrige seccoes com margem negativa (-550px),
      tiles 2 por linha e header do plano com wrap.
      Seletores com .sd-map para bater especificidade
      das regras inline do WPBakery (que tambem usam .sd-map).
   ============================================================ */

@media (max-width: 767px) {

  /* Seccoes com margin: 0 -550px causam overflow em mobile */
  .vc_section {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Mapa de servicos - responsivo */
  .sd-map {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
  }

  .map-nest {
    width: auto !important;
    max-width: 100% !important;
  }

  /* "inclui OPTIMIZE + CORE" vai para linha propria
     Usa .sd-map .plan-nest-header para bater a regra inline
     .sd-map .plan-nest-header { flex-wrap: nowrap !important } */
  .sd-map .plan-nest-header {
    flex-wrap: wrap !important;
    gap: 6px 8px !important;
    align-items: center !important;
  }

  /* Usa .sd-map .plan-incl para bater a regra inline
     .sd-map .plan-incl { white-space: nowrap !important; flex-shrink: 1 !important } */
  .sd-map .plan-incl {
    width: 100% !important;
    flex: 0 0 100% !important;
    flex-shrink: 0 !important;
    white-space: normal !important;
    font-size: 11px !important;
    margin-top: 0 !important;
    order: 3 !important;
  }

  /* Tiles - 2 colunas em mobile */
  .tiles {
    display: flex !important;
    flex-wrap: wrap !important;
    width: auto !important;
    gap: 6px !important;
  }

  /* <br> dentro de .tiles em desktop separa tiles visualmente,
     mas em flexbox ocupa largura "auto" (100%) e força 1 tile por linha.
     Escondemos em mobile para que o flex-wrap faca o layout. */
  .tiles br {
    display: none !important;
  }

  /* Usa .sd-map .feature-tile para garantir especificidade */
  .sd-map .feature-tile {
    width: calc(50% - 4px) !important;
    flex: 0 0 calc(50% - 4px) !important;
    height: auto !important;
    min-height: 54px !important;
    font-size: 11px !important;
    text-align: center !important;
    padding: 8px 6px !important;
    line-height: 1.3 !important;
  }

  /* Legenda do mapa - permitir wrap */
  .sd-legend {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }
}

/* =============================================================
 * SINGULAR DATA — Mobile Fix v2.1  (Junho 2026)
 *
 * ⚠️ APAGAR o CSS da versão 1.0 antes de aplicar este.
 *    Substituição completa, não adição.
 *
 * Corrige:
 *   1. Fundos de secção desalinhados (espaço vazio à esquerda,
 *      cortado à direita) — TaaS e Homepage
 *   2. Cartões TaaS mais largos e com espaçamento uniforme
 *   3. FAQ: 1 coluna em mobile, caixas full-width
 *   4. Homepage: texto e fundos alinhados
 *   5. Páginas de soluções: ordem imagem→texto consistente em mobile
 *
 * Método:
 *   O container tem padding: 16px em mobile (<992px).
 *   Em vez de depender do calc(50%-50vw) já existente (que é
 *   sensível à largura do bloco pai), aqui usamos margens
 *   negativas explícitas: -16px cada lado + width 100%+32px.
 * ============================================================= */


/* =============================================================
 * BLOCO 1 — Fundos de secção full-width (TaaS + Homepage)
 * ============================================================= */
@media (max-width: 767px) {

  /* Qualquer vc_section dentro do WPBakery content wrapper */
  .wpb-content-wrapper > section.vc_section,
  .entry-content .wpb-content-wrapper > section.vc_section {
    width: calc(100% + 32px) !important; /* 100% + 2×16px de padding do container */
    margin-left:  -16px !important;
    margin-right: -16px !important;
    box-sizing: border-box !important;
    position: relative !important;     /* garante que left:0 é aplicado correctamente */
    left: 0 !important;
  }

}


/* =============================================================
 * BLOCO 2 — vc_rows: padding uniforme dentro das secções
 *
 *   Reduz o padding lateral das linhas de 24px → 16px para
 *   que os cartões/conteúdos fiquem mais largos e com o mesmo
 *   espaçamento dos dois lados.
 * ============================================================= */
@media (max-width: 767px) {

  section.vc_section > .vc_row.wpb_row,
  .vc_section .wpb_row {
    padding-left:  16px !important;
    padding-right: 16px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

}


/* =============================================================
 * BLOCO 3 — TaaS: cartões (#comparacao, #como-funciona, #garantias)
 *
 *   Garante que cada coluna ocupa 100% da largura disponível
 *   em mobile (o CSS principal já define width:100% para
 *   .vc_col-sm-*, mas reforçamos para as secções específicas).
 * ============================================================= */
@media (max-width: 767px) {

  /* Activar flex nas rows das secções TaaS em mobile */
  #comparacao .vc_row,
  #como-funciona .vc_row,
  #garantias .vc_row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
  }

  /* Colunas: 100% width, sem float */
  #comparacao .vc_col-sm-6,
  #como-funciona .vc_col-sm-4,
  #garantias .vc_col-sm-3 {
    width: 100% !important;
    float: none !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  /* column-inner: sem padding lateral extra (já temos 16px na vc_row) */
  #comparacao .vc_column-inner,
  #como-funciona .vc_column-inner,
  #garantias .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Cards .item: padding interno reduzido, largura total */
  #comparacao .item,
  #como-funciona .item,
  #garantias .item {
    padding: 20px 16px !important;
    min-height: auto !important;
    width: 100% !important;
    box-sizing: border-box;
  }

}


/* =============================================================
 * BLOCO 4 — FAQ: 1 coluna, caixas mais largas
 *
 *   O grid do FAQ tem inline style: grid-template-columns:
 *   repeat(2,1fr); max-width:1000px; margin:0 auto;
 *   !important é obrigatório para sobrepor estilos inline.
 * ============================================================= */
@media (max-width: 767px) {

  /* Container do grid: 1 coluna e largura total */
  #faq .wpb_text_column .wpb_wrapper > div {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    width: 100% !important;
    gap: 12px !important;
    box-sizing: border-box !important;
  }

  /* Cada caixa individual do FAQ: 100% de largura */
  #faq .wpb_text_column .wpb_wrapper > div > div {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

}


/* =============================================================
 * BLOCO 5 — Homepage: serviços (service-block)
 *
 *   Texto centrado nos blocos de serviço em mobile.
 *   Parágrafos e listas ficam left-aligned para legibilidade.
 * ============================================================= */
@media (max-width: 767px) {

  .service-block .vc_column-inner h2,
  .service-block .vc_column-inner h3,
  .service-block .vc_column-inner h4,
  .service-block .vc_column-inner .sd-section-eyebrow {
    text-align: center !important;
  }

  .service-block .vc_column-inner p,
  .service-block .vc_column-inner li {
    text-align: left !important;
  }

}


/* =============================================================
 * BLOCO 6 — section-benefit: 2 colunas em ecrãs 480-767px
 *
 *   Em ecrãs médios (tablet estreito, telefone landscape),
 *   os 4 blocos de benefício ficam em 2×2 em vez de 1×4.
 * ============================================================= */
@media (min-width: 480px) and (max-width: 767px) {

  .section-benefit .vc_col-sm-3 {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

}


/* =============================================================
 * BLOCO 7 — Páginas de soluções: ordem imagem→texto em mobile
 *
 *   Em desktop, as secções de conteúdo (class "section-about
 *   style-seven") alternam entre:
 *     Row A (DOM): [texto 7-col] [imagem 5-col]
 *     Row B (DOM): [imagem 5-col] [texto 7-col]
 *
 *   Em mobile ao empilhar, o resultado seria:
 *     Row A: texto / imagem   ← errado
 *     Row B: imagem / texto   ← certo
 *     → padrão inconsistente: texto, imagem, imagem, texto...
 *
 *   Fix: converter cada row em flex-column e atribuir sempre
 *     order:1 à coluna de imagem (5-col)
 *     order:2 à coluna de texto  (7-col)
 *   → resultado: imagem / texto em TODAS as rows.
 *
 *   Aplica-se a todas as páginas de soluções:
 *   /sql-server/, /business-intelligence/, /fabrica-de-software/
 * ============================================================= */
@media (max-width: 767px) {

  /* Activar flex em coluna nas rows de conteúdo alternado */
  .section-about.style-seven .vc_row.wpb_row {
    display: flex !important;
    flex-direction: column !important;
  }

  /* Coluna de imagem (5-col): sempre primeiro */
  .section-about.style-seven .vc_row.wpb_row > .vc_col-sm-5 {
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Coluna de texto (7-col): sempre segundo */
  .section-about.style-seven .vc_row.wpb_row > .vc_col-sm-7 {
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

}