/* @override 
	https://twipi.invoxdev.com/wp-content/themes/twipi/assets/css/twipi.css */
/*! Flickity v2.3.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}
.flickity-enabled:focus {
  outline: none;
}
.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}
.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}
/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}
/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: rgba(255, 255, 255, 0.75);
  border: none;
  color: #333;
}
.flickity-button:hover {
  background: white;
  cursor: pointer;
}
.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}
.flickity-button:active {
  opacity: 0.6;
}
.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}
.flickity-button-icon {
  fill: currentColor;
}
/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}
.flickity-prev-next-button.previous {
  left: 10px;
}
.flickity-prev-next-button.next {
  right: 10px;
}
/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}
.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}
/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}
.flickity-rtl .flickity-page-dots {
  direction: rtl;
}
.flickity-page-dots .dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #333;
  opacity: 0.25;
  cursor: pointer;
}
.flickity-page-dots .dot.is-selected {
  opacity: 1;
}
:root {
  --gradient: linear-gradient(90deg, #22DADB 0%, #7C3AED 100%);
  --border: #961DFF;
}
html {
  font-family: 'IBM Plex Sans', sans-serif;
  font-weight: 300;
  font-size: 15px;
}
body {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
  color: #000;
}
.alignstretch {
  width: 990px;
  max-width: 90%;
  margin: 0 auto;
}
.alignwide {
  width: 1280px;
  max-width: 90%;
  margin: 0 auto;
}
.alignfull {
  width: 100%;
  max-width: 100%;
}
.max-width {
  max-width: calc( 100% - 60px );
  margin: 0 auto;
}
main {
  flex: 1 0 auto;
}
main > *:not(.alignfull):not(.alignstretch):not(header.blog-header):not(.wp-block-group) {
  width: 1280px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}
main > .wp-block-group:not(.alignwide) {
  width: 990px;
  max-width: 90%;
  margin: 0 auto;
}
a {
  color: inherit;
}
figure {
  margin: 0 auto;
}
*:focus {
  outline: none;
}
.valign-wrapper > div {
  width: 100%;
}
.flex-row.small-flex {
  display: flex;
  flex-wrap: wrap;
}
.social-menu {
  display: flex;
  gap: 20px;
  font-size: 26px;
  color: #244169;
}
ul.menu.solutions li {
  margin: 15px 0;
}
ul.menu.solutions li img {
  display: block;
  width: auto;
  height: 24px;
}
.twp-logo {
  display: block;
  width: 120px;
  height: auto;
  aspect-ratio: 2.58;
  background: url('../img/twipi.svg') no-repeat center center;
  background-size: contain;
}
header.site-header {
  --padding: 20px;
  padding: var(--padding) 0;
  font-size: .85em;
  background: #FFFFFF;
  position: sticky;
  top: 0;
  z-index: 10;
  transition: all 0.3s ease-in-out 0s;
  border-bottom: 1px solid #E7E9EF;
}
header.site-header .flex-row {
  align-items: center;
  gap: 30px;
}
header.site-header .flex-row .main-menu {
  margin: 0 0 0 auto;
}
header.site-header a.site-logo {
  display: block;
  margin-top: -8px;
}
header.site-header a.sidenav-trigger {
  font-size: 24px;
  line-height: 44px;
  text-align: center;
  width: 44px;
  border: 1px solid #E7E9EF;
  border-radius: 5px;
  margin-left: auto;
}
header.site-header.scrolled {
  --padding: 10px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
}
header.site-header.scrolled #main-menu {
  --lineheight: 50px;
}
nav.pagination {
  margin: 40px 0;
  font-size: 15px;
}
nav.pagination .nav-links {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}
nav.pagination .nav-links a,
nav.pagination .nav-links > span {
  display: inline-block;
  line-height: 41px;
  border-radius: 5px;
  border: 1px solid #E4E7EC;
  padding: 0 15px;
  text-decoration: none;
}
nav.pagination .nav-links span.current {
  background: var(--gradient);
  color: #FFFFFF;
  border: none;
}
.no-content-found {
  margin: 80px 0;
  font-weight: 300;
  font-size: 1.222em;
}
.twp-icon {
  display: inline-block;
  width: var(--size, 64px);
  height: var(--size, 64px);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.twp-icon--twimm {
  background-image: url('../img/twimm.svg');
}
.twp-icon--tootwi {
  background-image: url('../img/tootwi.svg');
}
.twp-icon--keyclic {
  background-image: url('../img/keyclic.svg');
}
.twp-icon--votim {
  background-image: url('../img/votim.svg');
}
footer.page-footer {
  font-size: 14px;
  position: relative;
  padding-bottom: 160px;
  color: #182945;
  overflow: hidden;
}
footer.page-footer span.bg-image {
  display: block;
  width: 150px;
  height: 100%;
  position: absolute;
  right: -10px;
  bottom: -50px;
  background: url('../img/footer-bg.svg') no-repeat right bottom;
  background-size: contain;
}
footer.page-footer .alignwide {
  position: relative;
}
footer.page-footer .main-row {
  margin: 40px 0;
}
footer.page-footer .widget-title {
  margin-bottom: 2em;
  font-weight: 400;
}
footer.page-footer ul.menu li {
  margin: .8em 0;
}
footer.page-footer .copyright {
  margin: 60px 0 20px;
  font-size: .9em;
  color: #8A8F9A;
}
footer.page-footer .widget-wrapper {
  margin-bottom: 40px;
}
footer.page-footer .locations,
footer.page-footer .phone {
  margin: 30px 0;
  padding-left: 30px;
  position: relative;
}
footer.page-footer .locations .icon,
footer.page-footer .phone .icon {
  position: absolute;
  left: 0;
  top: 3px;
}
.news-grid {
  margin: 50px 0;
}
article.blog-post {
  padding: 30px 30px 100px;
  border: 1px solid #FFFFFF;
  box-shadow: 0px 4px 25px 0px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  position: relative;
  cursor: pointer;
  overflow: hidden;
  margin-bottom: 30px;
}
article.blog-post:hover {
  border-color: var(--border);
}
article.blog-post .cubes {
  width: 50%;
  height: 200px;
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  position: absolute;
  right: -20px;
  bottom: -30px;
}
article.blog-post .excerpt,
article.blog-post .view {
  position: relative;
}
article.blog-post .excerpt {
  font-size: .9em;
  margin: 20px 0;
  color: #555;
}
article.blog-post a {
  text-decoration: none;
}
article.blog-post .post-title {
  font-size: 1em;
  font-weight: 600;
  margin: 50px 0 20px;
}
article.blog-post .category {
  display: flex;
  gap: 10px;
}
article.blog-post .category .tag {
  display: inline-block;
  border: 1px solid var(--border);
  padding: 0 10px;
  line-height: 28px;
  border-radius: 5px;
  font-size: .7em;
}
article.blog-post .view {
  font-weight: 500;
  display: inline-block;
  font-size: .9em;
}
article.blog-post .view .arrow {
  display: block;
  overflow: hidden;
  position: relative;
  height: 15px;
}
article.blog-post .view .arrow svg {
  position: absolute;
  right: 0;
  top: 3px;
}
article.blog-post.cta-card {
  background: #1E314D;
  color: #FFFFFF;
  display: flex;
  flex-direction: column;
  padding-bottom: 30px;
}
article.blog-post.cta-card .title {
  font-size: 2.11em;
  line-height: 1.25em;
  font-weight: 700;
  margin-bottom: 30px;
}
article.blog-post.cta-card .cta {
  margin-top: auto;
  margin-bottom: 0;
}
article.blog-post.twimm .cubes {
  background-image: url('../img/pattern-twimm.svg');
}
article.blog-post.twimm:hover .cubes {
  background-image: url('../img/pattern-plain-twimm.svg');
}
article.blog-post.tootwi .cubes {
  background-image: url('../img/pattern-tootwi.svg');
}
article.blog-post.tootwi:hover .cubes {
  background-image: url('../img/pattern-plain-tootwi.svg');
}
article.blog-post.keyclic .cubes {
  background-image: url('../img/pattern-keyclic.svg');
}
article.blog-post.keyclic:hover .cubes {
  background-image: url('../img/pattern-plain-keyclic.svg');
}
article.blog-post.votim .cubes {
  background-image: url('../img/pattern-votim.svg');
}
article.blog-post.votim:hover .cubes {
  background-image: url('../img/pattern-plain-votim.svg');
}
nav.rank-math-breadcrumb {
  font-size: 13.5px;
}
nav.rank-math-breadcrumb a {
  text-decoration: none;
}
nav.rank-math-breadcrumb .last {
  font-weight: 600;
}
nav.rank-math-breadcrumb .icon {
  vertical-align: middle;
}
header.resource-center-header {
  padding: 40px 0;
  color: #FFFFFF;
}
header.resource-center-header .tags {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
header.resource-center-header .tags .tag {
  text-decoration: none;
  line-height: 28px;
  font-size: 14px;
  padding: 0 12px;
  border-radius: 5px;
  border: 1px solid #FFFFFF;
}
header.resource-center-header .meta {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  font-size: 14px;
}
header.resource-center-header .meta > div {
  display: flex;
  align-items: center;
  gap: 4px;
}
.blog-post-wrapper {
  margin: 50px auto;
}
.blog-post-wrapper + .related-posts {
  margin-top: 120px;
}
.blog-post-wrapper aside .optin {
  background: #1E314D;
  padding: 24px;
  color: #FFFFFF;
  border-radius: 5px;
  margin: 40px 0;
}
.blog-post-wrapper aside .optin .title,
.blog-post-wrapper aside .optin .desc {
  font-size: 14.5px;
  font-weight: 600;
  margin-bottom: 1em;
}
.blog-post-wrapper ul.share-post {
  margin: 30px 0;
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  align-items: center;
  font-size: 14.5px;
  font-weight: 600;
}
.blog-post-wrapper ul.share-post li:not(.label) {
  margin: 0 0 0 auto;
}
.blog-post-wrapper ul.share-post li:not(.label) a {
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 38px;
  text-align: center;
  border: 1px solid #E4E7EC;
  border-radius: 5px;
  font-size: 18px;
  color: #0A66C2;
}
.blog-post-wrapper .post-content p,
.blog-post-wrapper .post-content ul,
.blog-post-wrapper .post-content ol {
  color: #4E5765;
}
.blog-post-wrapper .post-content .alignstretch,
.blog-post-wrapper .post-content .alignwide {
  width: auto;
  max-width: 100% !important;
}
.blog-post-wrapper #twipi-optin div.input .icon {
  font-size: 16px;
  left: 8px;
  line-height: 36px;
  background: var(--gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.blog-post-wrapper #twipi-optin div.input input[type="email"] {
  font-size: 14px;
  line-height: 40px;
  padding-left: 28px;
  padding-right: 5px;
}
.blog-post-wrapper #twipi-optin button[type="submit"] {
  background: var(--gradient);
  color: #FFFFFF;
  font-size: 16px;
  line-height: 40px;
}
.blog-post-wrapper #twipi-optin button[type="submit"] .icon {
  color: #FFFFFF;
}
.blog-post-wrapper .summary {
  padding: 24px;
  margin-bottom: 30px;
  border-radius: 5px;
  box-shadow: 0px 4px 25px 0px rgba(0, 0, 0, 0.1);
  font-size: 14.5px;
}
.blog-post-wrapper .summary .summary-title {
  font-weight: 600;
  margin-bottom: 15px;
}
.blog-post-wrapper .summary ul {
  margin: 0;
}
.blog-post-wrapper .summary ul li {
  margin: 0;
}
.blog-post-wrapper .summary ul li a {
  display: block;
  padding: 6px 0 6px 20px;
  text-decoration: none;
  border-left: 2px solid #EEF0F3;
  color: #4E5765;
}
.blog-post-wrapper .summary ul li a.twphl {
  font-weight: 600;
  border-color: var(--border);
}
.blog-post-wrapper .post-content .wp-block-buttons {
  margin: 30px  auto;
}
.blog-post-wrapper .post-content a:not(.wp-element-button) {
  font-weight: 500;
  background: var(--gradient);
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.blog-post-wrapper .post-content a.wp-element-button {
  background: var(--gradient);
  color: #FFFFFF;
  border: none;
}
.blog-post-wrapper .post-content a.wp-element-button:after {
  font-family: 'twipi';
  content: "\ea0b";
  margin-left: 1em;
  font-size: .8em;
}
.blog-post-wrapper .post-content .twp-block.single-testimonial {
  padding: 0;
}
.blog-post-wrapper .post-content .twp-block.single-testimonial .testimonial-card {
  --icon: 36px;
  --portrait: 70px;
  padding: 0 0 0 40px;
  position: relative;
}
.blog-post-wrapper .post-content .twp-block.single-testimonial .testimonial-card .content {
  font-size: 16px;
  text-align: left;
  padding: 30px 0 20px;
  color: #000;
}
.blog-post-wrapper .post-content .twp-block.single-testimonial .testimonial-card .meta {
  font-size: 14px;
}
.blog-post-wrapper .post-content .twp-block.single-testimonial .testimonial-card .meta .logo-secteur .logo img {
  height: 30px;
}
.blog-post-wrapper .post-content .twp-block.single-testimonial .testimonial-card:before {
  content: "";
  width: 2px;
  height: 100%;
  background: var(--gradient);
  position: absolute;
  left: 0;
  top: 0;
}
.twp-block.encadre-blog > div {
  color: var(--txtcolor, #000);
  padding: 32px 32px 16px;
  border-radius: 5px;
}
.twp-block.encadre-blog > div.bgcolor {
  background: var(--bgcolor, #fff);
}
.twp-block.encadre-blog > div > *:nth-child(1) {
  margin-top: 0;
}
.twp-block.encadre-blog > div .title-icon {
  display: inline-block;
  vertical-align: middle;
  height: 1em;
  width: auto;
  margin: -0.15em 0.3em 0 0;
}
.twp-block.encadre-blog > div p,
.twp-block.encadre-blog > div ul,
.twp-block.encadre-blog > div ol {
  color: inherit;
}
.twp-block.encadre-blog > div a {
  color: inherit;
}
.twp-block.encadre-blog > div ul,
.twp-block.encadre-blog > div ol {
  list-style: none;
  padding: 0;
}
.twp-block.encadre-blog > div ul li,
.twp-block.encadre-blog > div ol li {
  position: relative;
  margin: .75em 0;
  padding-left: 1em;
}
.twp-block.encadre-blog > div ul li:before,
.twp-block.encadre-blog > div ol li:before {
  content: "•";
  position: absolute;
  left: 0;
  top: auto;
}
#mobile-nav {
  width: 100%;
  padding: 0;
  max-height: 100%;
  overflow: auto;
}
#mobile-nav .nav-header {
  padding: 15px 0 25px;
  border-bottom: 1px solid #E7E9EF;
}
#mobile-nav .nav-header .max-width {
  position: relative;
}
#mobile-nav a.sidenav-close {
  font-size: 16px;
  display: inline-block;
  line-height: 42px;
  text-align: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid #E7E9EF;
  border-radius: 5px;
  position: absolute;
  right: 0;
  top: 5px;
}
#mobile-menu {
  font-size: 18px;
  font-weight: 600;
}
#mobile-menu > li:not(.button) {
  border-bottom: 1px solid #E7E9EF;
}
#mobile-menu > li:not(.button) > a {
  display: block;
  padding: 15px 0;
}
#mobile-menu li img.menu-icon {
  height: 22px;
  width: auto;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
#mobile-menu li .solution {
  display: flex;
  gap: 15px;
}
#mobile-menu li .solution .product {
  width: 40px;
}
#mobile-menu li .solution .product img {
  display: block;
  width: 100%;
  height: auto;
}
#mobile-menu li .solution .name {
  width: calc( 100% - 40px - 15px );
  color: #0F1533;
  font-weight: 500;
}
#mobile-menu li .solution .name .desc {
  color: #5A607A;
  font-weight: 300;
  font-size: 13.5px;
}
#mobile-menu li.button a {
  display: flex;
  width: 100%;
  margin: 20px 0;
  align-items: center;
  justify-content: center;
}
#mobile-menu li.menu-item-has-children > a:after {
  font-family: 'twipi';
  content: "\ea06";
  line-height: 30px;
  font-weight: 300;
  float: right;
  transition: transform 0.3s ease-in-out 0s;
}
#mobile-menu li.menu-item-has-children .sub-menu {
  font-size: 15px;
  color: #2B3050;
  font-weight: 500;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
}
#mobile-menu li.menu-item-has-children .sub-menu li {
  margin-bottom: 20px;
}
#mobile-menu li.menu-item-has-children .sub-menu li a {
  display: block;
  padding-top: 10px;
  padding-bottom: 10px;
}
#mobile-menu li.menu-item-has-children.open > a:after,
#mobile-menu li.menu-item-has-children.current-menu-ancestor > a:after {
  transform: rotate(180deg);
}
#mobile-menu li.menu-item-has-children.open .sub-menu,
#mobile-menu li.menu-item-has-children.current-menu-ancestor .sub-menu {
  max-height: 1000px;
  transition: max-height 1s ease-in-out;
}
@media only screen and (min-width: 602px) {
  html {
    font-size: 16px;
  }
  .flex-row.medium-flex {
    display: flex;
  }
  footer.page-footer {
    --gap: 50px;
    --columns: 4;
    font-size: 16px;
    padding-bottom: 0;
  }
  footer.page-footer span.bg-image {
    width: 245px;
  }
  footer.page-footer .main-row {
    gap: var(--gap);
  }
  footer.page-footer .main-row > div {
    width: calc( ( 100% / var( --columns ) ) - var( --gap ) + ( var( --gap ) / var( --columns ) ) );
  }
  .news-grid {
    --gap: 30px;
    --columns: 2;
    display: flex;
    gap: var(--gap);
    flex-wrap: wrap;
  }
  .news-grid article.blog-post {
    margin: 0;
    padding: 50px 50px 100px;
    width: calc( ( 100% / var( --columns ) ) - var( --gap ) + ( var( --gap ) / var( --columns ) ) );
  }
  .blog-post-wrapper {
    gap: 80px;
    flex-direction: row-reverse;
  }
  .blog-post-wrapper aside {
    width: calc( 30% - 40px );
  }
  .blog-post-wrapper aside .sticky {
    position: sticky;
    top: 100px;
  }
  .blog-post-wrapper .post-content {
    width: calc( 70% - 40px );
  }
}
@media only screen and (min-width: 992px) {
  html {
    font-size: 18px;
  }
  .flex-row {
    display: flex;
  }
  header.site-header {
    --padding: 30px;
    border-bottom: none;
  }
  header.site-header .max-width {
    position: relative;
  }
  footer.page-footer {
    font-size: 18px;
  }
  .news-grid {
    --columns: 3;
  }
  #main-menu {
    --size: 18px;
    --lineheight: 70px;
    --gap: 20px;
    font-size: var(--size);
    display: flex;
    gap: var(--gap);
    font-weight: 300;
    align-items: center;
  }
  #main-menu:not(.button) > a {
    line-height: var(--lineheight);
    transition: color 0.3s ease-in-out 0s;
  }
  #main-menu:not(.button) > a:hover {
    color: #3261FF;
  }
  #main-menu li img.menu-icon {
    height: 22px;
    width: auto;
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
  }
  #main-menu > li:not(.button) {
    margin: 0 10px;
  }
  #main-menu > li.menu-item-has-children > a {
    display: block;
    line-height: var(--lineheight);
  }
  #main-menu > li.menu-item-has-children > .sub-menu {
    position: absolute;
    top: var(--lineheight);
    left: 0;
    width: 100%;
    min-width: 320px;
    background: #FFFFFF;
    border-radius: 5px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transform: translateY(50px);
    transform-origin: 0 0;
    transition: transform .3s, opacity .3s;
  }
  #main-menu > li.menu-item-has-children:not(.mega-menu) {
    position: relative;
  }
  #main-menu > li.menu-item-has-children:not(.mega-menu) > .sub-menu {
    left: -30px;
  }
  #main-menu > li.menu-item-has-children:not(.mega-menu) > .sub-menu li a {
    display: block;
    padding: 15px 40px;
  }
  #main-menu > li.menu-item-has-children:not(.mega-menu) > .sub-menu li a:hover {
    background: #F3F2F7;
  }
  #main-menu > li.menu-item-has-children > a:after {
    font-family: 'twipi';
    content: "\ea03";
    vertical-align: middle;
    font-size: .6em;
    margin-left: .65em;
  }
  #main-menu > li.menu-item-has-children.mega-menu div.mm-wrapper {
    display: none;
  }
  #main-menu > li.menu-item-has-children:hover > a {
    color: #3261FF;
  }
  #main-menu > li.menu-item-has-children:hover > .sub-menu {
    max-height: 1500px;
    opacity: 1;
    transform: translateY(0);
  }
  #main-menu > li.menu-item-has-children.mega-menu:hover .sub-menu {
    min-height: calc( var(--submenuMinHeight) + 50px );
  }
  #main-menu > li.mega-menu > .sub-menu {
    padding-right: 35%;
    margin: 0 100px;
    max-width: calc( 100% - 200px );
    z-index: 999;
  }
  #main-menu > li.mega-menu > .sub-menu li:not(.mm-wrapper) {
    margin-left: 20px;
  }
  #main-menu > li.mega-menu > .sub-menu a.mm-trigger {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 20px 0;
    padding: 10px;
    border-radius: 6px;
    position: relative;
    background: #FFFFFF;
    border: 1px solid #FFFFFF;
    transition: all 0.3s ease-in-out 0s;
    width: calc( 100% - 80px );
  }
  #main-menu > li.mega-menu > .sub-menu a.mm-trigger .twp-icon {
    width: 48px;
    height: 48px;
  }
  #main-menu > li.mega-menu > .sub-menu a.mm-trigger strong {
    display: block;
  }
  #main-menu > li.mega-menu > .sub-menu a.mm-trigger:hover,
  #main-menu > li.mega-menu > .sub-menu a.mm-trigger.current {
    border-color: var(--border);
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper {
    width: calc( 40% - 60px );
    display: block;
    position: absolute;
    right: 30px;
    top: 20px;
    font-size: 16px;
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper > div {
    padding-left: 40px;
    border-left: 1px solid var(--border);
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper > div .cta a {
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper > div .cta a .arrow {
    display: block;
    overflow: hidden;
    position: relative;
    height: 15px;
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper > div .cta a .arrow svg {
    position: absolute;
    right: 0;
    top: 3px;
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper img {
    display: block;
    aspect-ratio: 1.66666667;
    border-radius: 5px;
    object-fit: cover;
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper .content {
    margin: 15px 0;
    font-size: var(--size);
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper .content ul li {
    position: relative;
    padding-left: 1em;
    margin: .75em 0;
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper .content ul li:before {
    content: "\25A0";
    position: absolute;
    font-size: .5em;
    left: 0;
    top: .8em;
  }
  #main-menu > li.mega-menu > .sub-menu .mm-wrapper .cta a {
    text-decoration: underline;
    font-weight: 500;
  }
}
@media only screen and (max-width: 1240px) {
  #main-menu {
    --size: 16px;
    --lineheight: 64px;
    --gap: 30px;
  }
  #main-menu li.button a {
    font-size: 15px;
    padding: 0 12px;
  }
}
@media only screen and (max-width: 1140px) {
  #main-menu {
    --size: 14px;
    --lineheight: 56px;
    --gap: 20px;
  }
  #main-menu li.button a {
    font-size: 12px;
    padding: 0 10px;
  }
}
main h1,
main h2,
main h3,
main h4,
main h5,
main h6 {
  font-family: 'IBM Plex Sans', sans-serif;
  font-weight: 700;
  line-height: 125%;
  margin: .5em auto .25em;
}
main h1 strong,
main h2 strong,
main h3 strong,
main h4 strong,
main h5 strong,
main h6 strong {
  font-weight: 700;
}
main h1 {
  font-size: 2em;
  margin: 0 0 .75em;
}
main h1.page-title small {
  display: block;
}
main h2 {
  font-size: 1.8em;
  margin: 1em 0 .5em;
}
main h3 {
  font-size: 1.5em;
  margin: .75em 0 .4em;
}
main h4 {
  font-size: 1.25em;
}
main h5,
main h6 {
  font-size: 1em;
}
main hr {
  border: 0;
  height: 1px;
  background: #A9A4CF;
}
main blockquote {
  padding: 0 0 0 1.5em;
  border-left: 1px solid var(--txtcolor, #000);
}
main b,
main strong {
  font-weight: 700;
}
main a {
  color: inherit;
  text-decoration: underline;
}
.btn,
.wp-element-button,
li.button > a {
  font-size: 16px;
  display: flex;
  width: fit-content;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-family: 'IBM Plex Sans', sans-serif;
  font-weight: 500;
  border: 1px solid #961DFF;
  color: #000;
  border-radius: 5px;
  min-height: 50px;
  line-height: 1.2em;
  padding: 0 20px;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.3s ease-in-out 0s;
}
.btn.primary,
.wp-element-button.primary,
li.button > a.primary {
  background: var(--gradient);
  color: #FFFFFF;
  border: none;
  padding-top: 1px;
}
.btn.white,
.wp-element-button.white,
li.button > a.white {
  background: #FFFFFF;
  border: none;
  padding-top: 1px;
  padding-bottom: 1px;
}
.btn.white:after,
.wp-element-button.white:after,
li.button > a.white:after {
  font-family: 'twipi';
  content: "\ea0b";
  margin-left: 1em;
  font-size: .8em;
}
.btn.primary:after,
.wp-element-button.primary:after,
li.button > a.primary:after,
.btn.arrow:after,
.wp-element-button.arrow:after,
li.button > a.arrow:after {
  font-family: 'twipi';
  content: "\ea0b";
  margin-left: 1em;
  font-size: .8em;
}
li.button > a {
  line-height: 1.2em !important;
}
li.button.primary > a {
  background: linear-gradient(90deg, #8929F5 0%, #3A49DA 100%);
  color: #FFFFFF;
  border: none;
  padding-top: 1px;
  padding-bottom: 1epx;
}
li.button.primary > a:after {
  font-family: 'twipi';
  content: "\ea0b";
  margin-left: 1em;
  font-size: .8em;
}
.screen-reader-text {
  border: 0;
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
  word-break: normal !important;
}
#breadcrumbs {
  font-size: 12px;
  margin: 0 0 20px;
}
.twp-content {
  font-weight: 300;
}
.twp-content strong {
  font-weight: 600;
}
.twp-content blockquote {
  padding-left: 60px;
}
.twp-content .aligncenter {
  text-align: center;
}
.twp-content img {
  max-width: 100%;
  height: auto;
}
.twp-content img.aligncenter {
  display: block;
  margin: 30px auto;
}
.twp-content div.wp-caption {
  max-width: 100% !important;
}
.twp-content div.wp-caption.aligncenter {
  display: block;
  margin: 30px auto;
}
.twp-content ol li,
.twp-content ul:not(.share-post) li {
  position: relative;
  margin: .75em 0;
  padding-left: 1em;
}
.twp-content ol li:before,
.twp-content ul:not(.share-post) li:before {
  content: "•";
  position: absolute;
  left: 0;
  top: auto;
}
.twp-content ul.share-post {
  margin-top: 40px;
}
.twp-content ul.share-post a {
  color: inherit;
}
.twp-content table {
  table-layout: fixed !important;
}
.twp-content .wp-caption-text {
  font-size: .85em;
  margin-top: .25em;
  font-style: italic;
  color: #A9A4CF;
}
.wp-block-paragraph a {
  color: inherit;
  text-decoration: underline;
}
.wp-block-list {
  list-style: none;
  padding: 0;
}
.wp-block-list li {
  position: relative;
  margin: .75em 0;
  padding-left: 1em;
}
.wp-block-list li:before {
  content: "•";
  color: #A9A4CF;
  position: absolute;
  left: 0;
  top: auto;
}
.collapsible-body ul {
  list-style: none;
  padding: 0;
}
.collapsible-body ul li {
  position: relative;
  margin: .75em 0;
  padding-left: 1em;
}
.collapsible-body ul li:before {
  content: "•";
  position: absolute;
  opacity: .3;
  left: 0;
  top: auto;
}
.wp-block-image {
  display: block !important;
}
.wp-block-image.aligncenter img {
  margin: 0 auto;
}
.wp-block-buttons {
  display: flex;
}
.is-style-rounded > img {
  border-radius: 5px;
}
@media only screen and (min-width: 602px) {
  main h1 {
    font-size: 2.5em;
  }
  main h2 {
    font-size: 2em;
  }
  main h3 {
    font-size: 1.6em;
  }
  main h4 {
    font-size: 1.25em;
  }
  .wp-block-columns {
    gap: 50px;
  }
  .wp-block-columns .wp-block-column *:nth-child(1) {
    margin-top: 0;
  }
}
@media only screen and (min-width: 992px) {
  main h1 {
    font-size: 2.88888em;
  }
  main h2 {
    font-size: 2em;
  }
  main h3 {
    font-size: 1.6em;
  }
  main h4 {
    font-size: 1.25em;
  }
}
.toast {
  background: #961DFF;
  color: #FFFFFF;
  font-size: 16px;
}
.twp-select {
  height: var(--height);
  display: block;
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 5px;
  background: #FFFFFF;
  overflow: hidden;
  position: relative;
}
.twp-select:after {
  font-family: 'twipi';
  content: "\ea03";
  position: absolute;
  font-size: 10px;
  right: 15px;
  top: 16px;
}
.twp-select select {
  font-size: 16px;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  color: #000;
  line-height: 48px;
  height: 43px;
  width: 105%;
  padding: 0 15px;
  font-weight: 400;
  font-family: 'IBM Plex Sans', sans-serif;
}
.twp-select.error {
  border-color: orangered;
}
.twp-select.error:after,
.twp-select.error select {
  color: orangered;
}
form p.error {
  color: orangered;
}
.twp-form {
  --height: 50px;
}
.twp-form .input-field input[type="text"],
.twp-form .input-field input[type="tel"],
.twp-form .input-field input[type="email"],
.twp-form .input-field input[type="number"],
.twp-form .input-field textarea {
  line-height: var(--height);
  width: 100%;
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 18px;
  padding: 0 15px;
  border: 1px solid #ccc;
  border-radius: 5px;
}
.twp-form .input-field textarea {
  padding: 15px;
  line-height: 1.4em;
  min-height: 135px;
}
.twp-form input::-webkit-outer-spin-button,
.twp-form input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.twp-form input[type=number] {
  -moz-appearance: textfield;
}
.twp-form button[type="submit"] {
  cursor: pointer;
  margin-top: 30px;
}
.twp-form p.privacy {
  font-size: .85em;
  padding: 20px 0;
  margin: 0;
}
.twp-form p.privacy label input[type="checkbox"] {
  display: none;
}
.twp-form p.privacy label input[type="checkbox"] + span {
  display: block;
  cursor: pointer;
  padding-left: 28px;
  position: relative;
}
.twp-form p.privacy label input[type="checkbox"] + span:before {
  content: "";
  display: block;
  width: 21px;
  height: 21px;
  border: 1px solid #ccc;
  background: #FFFFFF;
  position: absolute;
  border-radius: 3px;
  left: 0;
  top: 0;
  transition: all 0.3s ease-in-out 0s;
}
.twp-form p.privacy label input[type="checkbox"] + span:after {
  font-family: 'twipi';
  content: "\ea28";
  font-weight: 600;
  position: absolute;
  left: 3px;
  top: 0;
  color: #FFFFFF;
}
.twp-form p.privacy label input[type="checkbox"]:checked + span:before {
  background: #3261FF;
  border-color: #3261FF;
}
.twp-form p.solution {
  padding: 0 0 20px;
}
form .solution-twipi {
  --gap: 20px;
  --columns: 1;
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
}
form .solution-twipi label {
  display: block;
  width: calc( ( 100% / var( --columns ) ) - var( --gap ) + ( var( --gap ) / var( --columns ) ) );
}
form .solution-twipi label img {
  max-width: 100%;
  max-height: 25px;
  width: auto;
  height: auto;
  display: block;
  margin-bottom: 8px;
  filter: saturate(0%) brightness(70%) contrast(1000%);
  opacity: .3;
}
form .solution-twipi label .logo {
  color: #A7A7A8;
  padding: 20px;
  background: #FFFFFF;
  border: 1px solid #EAEAEC;
  border-radius: 5px;
  font-size: 14px;
  line-height: 1.2em;
  cursor: pointer;
  min-height: 100%;
}
form .solution-twipi label input {
  display: none;
}
form .solution-twipi label input:checked + .logo {
  color: #1E1E1E;
  border-color: var(--border);
}
form .solution-twipi label input:checked + .logo img {
  filter: none;
  opacity: 1;
}
@media only screen and (min-width: 602px) {
  form {
    --gap: 20px;
  }
  form .solution-twipi {
    --columns: 2;
  }
  form .input-flex {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap);
  }
  form .input-flex .input-field {
    width: 100%;
    padding-top: 10px;
  }
  form .input-flex .input-field label {
    top: 10px;
  }
  form .input-flex .input-field input[type="text"]:focus + label,
  form .input-flex .input-field input[type="tel"]:focus + label,
  form .input-flex .input-field input[type="email"]:focus + label,
  form .input-flex .input-field textarea:focus + label,
  form .input-flex .input-field input[type="text"].completed + label,
  form .input-flex .input-field input[type="tel"].completed + label,
  form .input-flex .input-field input[type="email"].completed + label,
  form .input-flex .input-field textarea.completed + label {
    top: -9px;
  }
  form .input-flex .input-field.half {
    width: calc( 50% - var(--gap)/2 );
  }
  form .input-flex .twp-select.half {
    max-width: calc( 50% - var(--gap)/2 );
  }
}
#twp-contact-form .input-field {
  position: relative;
  padding-top: 30px;
}
#twp-contact-form .input-field input[type="text"]:required + label:after,
#twp-contact-form .input-field input[type="tel"]:required + label:after,
#twp-contact-form .input-field input[type="email"]:required + label:after,
#twp-contact-form .input-field textarea:required + label:after {
  content: "*";
  margin-left: 3px;
}
#twp-contact-form .input-field input[type="text"]:focus + label,
#twp-contact-form .input-field input[type="tel"]:focus + label,
#twp-contact-form .input-field input[type="email"]:focus + label,
#twp-contact-form .input-field textarea:focus + label,
#twp-contact-form .input-field input[type="text"].completed + label,
#twp-contact-form .input-field input[type="tel"].completed + label,
#twp-contact-form .input-field input[type="email"].completed + label,
#twp-contact-form .input-field textarea.completed + label {
  font-size: 14px;
  line-height: 1em;
  padding: 0;
  top: 12px;
  color: #444;
}
#twp-contact-form .input-field label {
  display: block;
  font-size: 16px;
  color: #aaa;
  font-weight: 300;
  line-height: var(--height);
  position: absolute;
  padding: 0 15px;
  left: 0;
  top: 32px;
  transition: all 0.3s ease-in-out 0s;
}
#twp-calc-form label {
  display: block;
  font-size: 16px;
  font-weight: 600;
  margin: 10px 0 4px;
}
#twp-calc-form label small {
  display: block;
  font-weight: 400;
  font-size: 1em;
}
#twp-calc-form .input-field {
  margin: 15px 0;
  padding: 0;
}
@media only screen and (min-width: 602px) {
  #twp-calc-form {
    --gap: 20px;
  }
  #twp-calc-form .flex-row {
    gap: var(--gap);
  }
  #twp-calc-form .input-field {
    display: flex;
    margin: 0 0 10px;
    flex-direction: column;
    width: calc( 50% - var(--gap)/2 );
  }
  #twp-calc-form .input-field input {
    margin-top: auto;
  }
}
#twipi-optin .rgpd {
  font-size: 12px;
}
#twipi-optin div.input {
  margin: 20px 0;
  position: relative;
}
#twipi-optin div.input input[type="email"] {
  line-height: 52px;
  width: 100%;
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 1rem;
  padding: 0 15px 0 50px;
}
#twipi-optin div.input .icon {
  position: absolute;
  font-size: 24px;
  line-height: 50px;
  left: 15px;
  top: 4px;
  color: #961DFF;
}
#twipi-optin button[type="submit"] {
  line-height: 52px;
  width: 100%;
  border: none;
  border-radius: 5px;
  font-family: 'IBM Plex Sans', sans-serif;
  padding: 0 15px;
  background: #FFFFFF;
  color: #000;
  font-size: 20px;
  text-transform: uppercase;
  cursor: pointer;
}
#twipi-optin button[type="submit"] .icon {
  display: inline-block;
  vertical-align: middle;
  font-size: 13px;
  margin-left: 6px;
}
.twphl {
  background: var(--gradient);
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.gradient {
  background: var(--gradient);
}
.ticker-wrapper {
  --logosize: 80px;
  width: 100%;
  overflow: hidden;
}
.ticker-wrapper .ticker {
  display: flex;
  align-items: center;
  will-change: transform;
  margin: 40px 0;
  gap: 40px;
}
.ticker-wrapper .ticker img {
  width: var(--logosize);
  height: auto;
  margin: 0 15px;
}
@media only screen and (min-width: 602px) {
  .ticker-wrapper {
    --logosize: 150px;
  }
}
.twp-block {
  background: var(--bgcolor, #FFFFFF);
  color: var(--txtcolor, #000);
  position: relative;
  padding: 35px 0;
}
.twp-block h2:first-child {
  margin-top: 0;
}
.twp-block img.bg-image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.twp-block .flickity-page-dots {
  bottom: -40px;
}
.twp-block .flickity-page-dots .dot {
  margin: 0 5px;
  width: 12px;
  height: 12px;
  border-radius: 14px;
  background: #cdcdcd;
  opacity: 1;
}
.twp-block .flickity-page-dots .dot:only-child {
  display: none;
}
.twp-block .flickity-page-dots .dot:hover {
  background: transparent;
}
.twp-block .flickity-page-dots .dot.is-selected {
  background: var(--gradient);
  width: 24px;
}
.twp-block .flickity-prev-next-button {
  --size: 68px;
  width: var(--size);
  height: var(--size);
  bottom: 0;
  top: auto;
  transform: none;
  background: var(--gradient);
  color: #FFFFFF;
  opacity: 1;
}
.twp-block .flickity-prev-next-button:before {
  font-family: 'twipi';
  content: "\ea04";
  line-height: calc( var(--size) - 6px );
  font-size: 20px;
}
.twp-block .flickity-prev-next-button.next {
  right: 0;
}
.twp-block .flickity-prev-next-button.next:before {
  content: "\ea05";
}
.twp-block .flickity-prev-next-button.previous {
  left: auto;
  right: calc( var(--size) + 20px );
}
.twp-block .flickity-prev-next-button:disabled {
  background: transparent;
  border: 1px solid #ddd;
  color: #ddd;
}
.twp-block .stretch {
  width: 900px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.twp-block .tabs,
.twp-block .post-tag-filters {
  margin: 40px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
  height: auto;
  flex-wrap: wrap;
}
.twp-block .tabs .tab,
.twp-block .post-tag-filters .tab,
.twp-block .tabs li,
.twp-block .post-tag-filters li {
  line-height: 36px;
  text-transform: none;
}
.twp-block .tabs .tab a,
.twp-block .post-tag-filters .tab a,
.twp-block .tabs li a,
.twp-block .post-tag-filters li a,
.twp-block .tabs .tab em,
.twp-block .post-tag-filters .tab em,
.twp-block .tabs li em,
.twp-block .post-tag-filters li em {
  display: inline-block;
  text-decoration: none;
  line-height: 40px;
  font-size: 16px;
  height: auto;
  padding: 0;
}
.twp-block .tabs .tab a,
.twp-block .post-tag-filters .tab a,
.twp-block .tabs li a,
.twp-block .post-tag-filters li a {
  padding: 0 25px;
  border: 1px solid #1E314D;
  color: #1E314D;
  font-weight: 500;
  border-radius: 5px;
}
.twp-block .tabs .tab a:not(.active),
.twp-block .post-tag-filters .tab a:not(.active),
.twp-block .tabs li a:not(.active),
.twp-block .post-tag-filters li a:not(.active) {
  background: #FFFFFF;
}
.twp-block .tabs .tab a.active,
.twp-block .post-tag-filters .tab a.active,
.twp-block .tabs li a.active,
.twp-block .post-tag-filters li a.active {
  color: #FFFFFF;
  border: none;
  padding: 1px 24px;
  background: var(--gradient);
}
.twp-block .arrow-cta a {
  font-weight: 600;
  text-decoration: none;
  display: inline-block;
}
.twp-block .arrow-cta a .arrow {
  display: block;
  overflow: hidden;
  position: relative;
  height: 15px;
}
.twp-block .arrow-cta a .arrow svg {
  --gradientStart: #22DADB;
  --gradientEnd: #7C3AED;
  position: absolute;
  right: 0;
  top: 3px;
}
.twp-block .card-icon {
  display: flex;
  width: fit-content;
  align-items: center;
  justify-content: center;
  width: 63px;
  height: 63px;
  border-radius: 63px;
  margin-bottom: 15px;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.1);
  margin-bottom: 30px;
}
.twp-block .card-icon img {
  display: block;
  height: 24px;
  width: auto;
}
.twp-block .tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.twp-block .tags .tag {
  display: inline-block;
  line-height: 47px;
  background: var(--gradient);
  color: #FFFFFF;
  border-radius: 47px;
  padding: 0 15px;
  min-width: 70px;
  text-align: center;
}
@media only screen and (max-width: 600px) {
  .twp-block .tabs,
  .twp-block .post-tag-filters {
    gap: 0;
  }
  .twp-block .tabs .tab,
  .twp-block .post-tag-filters .tab,
  .twp-block .tabs li,
  .twp-block .post-tag-filters li {
    width: 100%;
  }
  .twp-block .tabs .tab a,
  .twp-block .post-tag-filters .tab a,
  .twp-block .tabs li a,
  .twp-block .post-tag-filters li a,
  .twp-block .tabs .tab em,
  .twp-block .post-tag-filters .tab em,
  .twp-block .tabs li em,
  .twp-block .post-tag-filters li em {
    display: block;
    text-align: center;
    margin: 8px 0;
  }
}
.twp-block.page-hero {
  position: relative;
}
.twp-block.page-hero .buttons {
  display: flex;
  margin: 30px 0;
  gap: 30px;
  flex-wrap: wrap;
}
.twp-block.page-hero .desc {
  margin: 40px auto;
}
.twp-block.page-hero .image:not(.normal) img {
  display: block;
  max-width: 40vw;
  max-height: 100%;
  width: auto;
  height: auto;
}
.twp-block.page-hero .image.normal img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 5px;
}
.twp-block.page-hero img.product-img {
  display: block;
  height: 55px;
  width: auto;
  margin-bottom: 30px;
}
.twp-block.page-hero .stretch .buttons {
  justify-content: center;
}
@media only screen and (max-width: 600px) {
  .twp-block.page-hero {
    padding-top: 30px;
  }
}
@media only screen and (max-width: 990px) {
  .twp-block.page-hero .image:not(.normal) {
    height: 360px;
  }
  .twp-block.page-hero .image:not(.normal) img {
    max-width: 100%;
    max-height: 360px;
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.page-hero {
    --gap: 150px;
  }
  .twp-block.page-hero .flex-row {
    align-items: center;
    gap: 150px;
  }
  .twp-block.page-hero .flex-row.img-normal {
    align-items: stretch;
  }
  .twp-block.page-hero .flex-row .twp-content {
    width: calc( 60% - var(--gap)/2 );
  }
  .twp-block.page-hero .flex-row .image {
    width: calc( 40% - var(--gap)/2 );
  }
  .twp-block.page-hero .flex-row .image:not(.normal) img {
    max-height: calc( 100% - 40px );
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
.twp-block.twipi-services {
  --gap: 40px;
  --columns: 1;
  position: relative;
  font-size: 14px;
  padding: 80px 0;
}
.twp-block.twipi-services .flex-row {
  gap: var(--gap);
  flex-wrap: wrap;
}
.twp-block.twipi-services .flex-row .item {
  width: calc( ( 100% / var( --columns ) ) - var( --gap ) + ( var( --gap ) / var( --columns ) ) );
  display: block;
  text-align: center;
  text-decoration: none;
}
.twp-block.twipi-services .flex-row .item img {
  display: block;
  width: auto;
  height: 44px;
  margin: 0 auto;
}
.twp-block.twipi-services .flex-row .item .label {
  display: block;
  margin-top: 15px;
}
@media only screen and (min-width: 602px) {
  .twp-block.twipi-services {
    --columns: 2;
    --gap: 60px;
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.twipi-services {
    --columns: 4;
    --gap: 90px;
    font-size: 16px;
  }
}
.twp-block.key-figures {
  --gap: 30px;
  --columns: 2;
  position: relative;
  padding: 80px 0;
}
.twp-block.key-figures .overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: var(--gradient);
  opacity: .85;
}
.twp-block.key-figures .figures {
  position: relative;
  color: #FFFFFF;
}
.twp-block.key-figures .item {
  font-weight: 500;
  margin-bottom: 40px;
}
.twp-block.key-figures .item strong {
  display: block;
  font-size: 2.2em;
  line-height: 1em;
}
.twp-block.key-figures .item strong:after {
  display: block;
  width: 90px;
  height: 2px;
  background: #FFFFFF;
  content: "";
  margin: 15px 0;
}
.twp-block.key-figures h2 + .flex-row {
  margin-top: 60px;
}
.twp-block.key-figures .small-flex {
  gap: var(--gap);
  flex-wrap: wrap;
  justify-content: center;
}
.twp-block.key-figures .small-flex .item {
  margin: 0;
  width: calc( ( 100% / var( --columns ) ) - var( --gap ) + ( var( --gap ) / var( --columns ) ) );
}
@media only screen and (max-width: 600px) {
  .twp-block.key-figures .item {
    margin-bottom: 30px;
    width: 100%;
  }
  .twp-block.key-figures .small-flex .item {
    text-align: center;
  }
  .twp-block.key-figures .small-flex .item span {
    display: block;
    font-size: .85em;
    font-weight: 300;
    line-height: 1.3em;
  }
  .twp-block.key-figures .small-flex .item strong:after {
    width: 42px;
    height: 3px;
    border-radius: 3px;
    margin: 10px auto;
    opacity: .5;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.key-figures {
    --gap: 40px;
    --columns: 4;
  }
  .twp-block.key-figures .flex-row {
    gap: var(--gap);
    flex-wrap: wrap;
    justify-content: center;
  }
  .twp-block.key-figures .flex-row .item {
    margin: 0;
    width: calc( ( 100% / var( --columns ) ) - var( --gap ) + ( var( --gap ) / var( --columns ) ) );
  }
  .twp-block.key-figures .item strong {
    font-size: 2.85em;
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.key-figures {
    --gap: 55px;
  }
}
.twp-block.services-tabs {
  padding: 60px 0;
}
.twp-block.services-tabs .tabs {
  margin: 0 auto;
}
.twp-block.services-tabs div[id^=item] {
  background: #1E314D;
  border-radius: 5px;
  margin: 30px 0;
  color: #FFFFFF;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.twp-block.services-tabs div[id^=item] .cta .primary {
  border: none;
  border-radius: 8px;
  margin-top: 30px;
}
.twp-block.services-tabs div[id^=item] .twp-content {
  padding: 30px 0 40px 60px;
}
.twp-block.services-tabs div[id^=item] .image img {
  display: block;
  margin-top: 40px;
}
.twp-block.services-tabs div[id^=item] span.logo {
  display: inline-block;
  padding: 5px 15px 5px 8px;
  border: 1px solid var(--border);
  border-radius: 50px;
}
.twp-block.services-tabs div[id^=item] span.logo img {
  display: block;
  height: 30px;
  width: auto;
}
.twp-block.services-tabs div[id^=item] .customer-logo {
  max-width: 100px;
  max-height: 60px;
  width: auto;
  height: auto;
  display: block;
}
.twp-block.services-tabs div[id^=item] .logos > div {
  display: flex;
  align-items: center;
}
.twp-block.services-tabs div[id^=item] .customers {
  background: #FFFFFF;
  color: #1E314D;
  padding: 20px 30px;
  display: flex;
  align-items: center;
  gap: 30px;
}
.twp-block.services-tabs div[id^=item] .customers .label {
  font-style: italic;
}
.twp-block.services-tabs div[id^=item] .customers .logos {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
  margin-left: auto;
}
@media only screen and (max-width: 600px) {
  .twp-block.services-tabs {
    padding: 30px 0;
  }
  .twp-block.services-tabs .sticky {
    position: sticky;
    top: 25px;
    background: #FFFFFF;
    z-index: 2 !important;
  }
  .twp-block.services-tabs .sticky .tabs {
    padding-bottom: 15px;
  }
  .twp-block.services-tabs .image img {
    display: block;
    margin-left: 30px;
    max-width: calc( 100% - 30px );
  }
  .twp-block.services-tabs div[id^=item] .twp-content {
    padding: 30px 20px 2px 30px;
  }
  .twp-block.services-tabs div[id^=item] .customers {
    display: block;
    text-align: center;
    padding: 20px 10px;
  }
  .twp-block.services-tabs div[id^=item] .customers .logos {
    gap: 20px;
    margin-top: 20px;
    justify-content: center;
  }
  .twp-block.services-tabs div[id^=item] .customers .customer-logo {
    max-width: 70px;
    max-height: 50px;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.services-tabs .customers .label {
    white-space: nowrap;
  }
  .twp-block.services-tabs div[id^=item] .flex-row {
    gap: 80px;
  }
  .twp-block.services-tabs div[id^=item] .flex-row .twp-content {
    width: calc( 65% - 80px );;
  }
  .twp-block.services-tabs div[id^=item] .flex-row .image {
    width: 35%;
    display: flex;
    align-items: flex-end;
  }
}
.twp-block.content-tabs {
  padding: 0;
}
.twp-block.content-tabs .tabs {
  margin-left: auto;
  margin-right: auto;
}
.twp-block.content-tabs .sticky-tabs {
  position: sticky;
  background: #FFFFFF;
  top: 65px;
  z-index: 10;
}
.twp-block.content-tabs .tab-items {
  position: relative;
  background: #1E314D;
  color: white;
  padding: 60px 0;
}
.twp-block.content-tabs .twp-content h3 {
  margin: 0 0 1em;
}
.twp-block.content-tabs .twp-content ul li {
  position: relative;
  padding-left: 34px;
}
.twp-block.content-tabs .twp-content ul li:before {
  font-family: 'twipi';
  content: "\ea29";
  position: absolute;
  left: 0;
  top: 3px;
  color: #22DADB;
}
.twp-block.content-tabs .twp-content .note {
  padding: 15px 15px 15px 50px;
  background: #244169;
  border-radius: 5px;
  margin: 1em 0;
  position: relative;
  line-height: 1.2em;
  font-size: 14px;
  font-weight: 600;
}
.twp-block.content-tabs .twp-content .note img {
  display: inline-block;
  height: 24px;
  width: auto;
  position: absolute;
  left: 15px;
  top: 50%;
  margin-top: -12px;
}
.twp-block.content-tabs .arrow-cta {
  margin-top: 1.5em;
}
.twp-block.content-tabs .arrow-cta a.twphl {
  background: #22DADB;
}
.twp-block.content-tabs .arrow-cta a.twphl svg path {
  fill: #22DADB;
}
@media only screen and (max-width: 600px) {
  .twp-block.content-tabs .tabs {
    margin: 20px auto;
    padding-bottom: 5px;
  }
  .twp-block.content-tabs .tab-items {
    padding-bottom: 280px;
    padding-top: 20px;
    margin-top: 0;
  }
  .twp-block.content-tabs .tab-items img.responsive-img {
    width: 100%;
    height: 240px;
    position: absolute;
    object-fit: cover;
    right: 0;
    bottom: 0;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.content-tabs {
    --gap: 60px;
  }
  .twp-block.content-tabs .tab-items img.responsive-img {
    width: calc( 50vw - var(--gap)/2 );
    height: 100%;
    position: absolute;
    object-fit: cover;
    right: 0;
    top: 0;
  }
  .twp-block.content-tabs .flex-row {
    gap: var(--gap);
  }
  .twp-block.content-tabs .flex-row > div {
    width: calc( 50% - var(--gap)/2 );
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.content-tabs {
    --gap: 80px;
  }
}
.twp-block.content-cards {
  position: relative;
  padding: 60px 0;
}
.twp-block.content-cards .bg-illustr {
  display: block;
  width: 100px;
  height: 230px;
  position: absolute;
  left: 0;
  top: 0;
  background: url('../img/pattern-default.svg') no-repeat left top;
  background-size: contain;
}
.twp-block.content-cards .flex-row {
  margin-top: 50px;
}
.twp-block.content-cards .item {
  border-radius: 5px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  margin-bottom: 30px;
  border: 1px solid transparent;
  transition: all 0.3s ease-in-out 0s;
}
.twp-block.content-cards .item:hover {
  border-color: var(--border);
}
.twp-block.content-cards .item h3 {
  font-size: 1.2em;
}
.twp-block.content-cards .item:not(.image-card) {
  padding: 40px 30px;
}
.twp-block.content-cards .item.image-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 0.85714286;
}
@media only screen and (max-width: 600px) {
  .twp-block.content-cards {
    padding: 30px 0;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.content-cards {
    --gap: 30px;
    --columns: 2;
  }
  .twp-block.content-cards .bg-illustr {
    width: 200px;
  }
  .twp-block.content-cards .flex-row {
    gap: var(--gap);
    flex-wrap: wrap;
  }
  .twp-block.content-cards .flex-row .item {
    margin: 0;
    width: calc( ( 100% / var( --columns ) ) - var( --gap ) + ( var( --gap ) / var( --columns ) ) );
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.content-cards {
    --columns: 3;
  }
}
.twp-block.half-cards {
  padding: 60px 0;
}
.twp-block.half-cards h2 + .flex-row,
.twp-block.half-cards .intro + .flex-row {
  margin-top: 50px;
}
.twp-block.half-cards .half-card {
  border-radius: 5px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  margin-bottom: 30px;
  box-shadow: 0px 4px 35px 0px rgba(0, 0, 0, 0.1);
}
.twp-block.half-cards .half-card .content {
  padding: 30px 50px;
}
.twp-block.half-cards .half-card .image {
  margin-top: auto;
}
.twp-block.half-cards .half-card .image img {
  display: block;
  aspect-ratio: 2.7;
  object-fit: cover;
  width: 100%;
  height: auto;
}
.twp-block.half-cards .half-card:nth-child(even) {
  background: #1E314D;
  color: #FFFFFF;
}
@media only screen and (min-width: 602px) {
  .twp-block.half-cards {
    --gap: 40px;
  }
  .twp-block.half-cards .flex-row {
    gap: var(--gap);
    flex-wrap: wrap;
  }
  .twp-block.half-cards .flex-row .half-card {
    margin: 0;
    width: calc( 50% - var(--gap)/2 );
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.half-cards {
    --gap: 60px;
  }
}
.twp-block.twipi-organisation {
  padding: 60px 0;
  position: relative;
}
.twp-block.twipi-organisation h2 + .flex-row,
.twp-block.twipi-organisation .intro + .flex-row {
  margin-top: 50px;
}
.twp-block.twipi-organisation .key-figures {
  margin: 50px auto;
}
.twp-block.twipi-organisation .key-figures li {
  padding: 0 40px;
  text-align: center;
  font-weight: 600;
  margin: 15px 0;
}
.twp-block.twipi-organisation .key-figures li strong {
  display: block;
  width: fit-content;
  margin: 0 auto;
  font-weight: 800;
  font-size: 1.66666em;
  background: var(--gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.twp-block.twipi-organisation .org-card {
  border-radius: 5px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: relative;
  background: #fff;
  margin-bottom: 30px;
  box-shadow: 0px 4px 35px 0px rgba(0, 0, 0, 0.1);
}
.twp-block.twipi-organisation .org-card .content {
  padding: 30px 50px;
}
.twp-block.twipi-organisation .org-card .content h3 {
  font-size: 1.1em;
  margin-top: 0;
}
.twp-block.twipi-organisation .org-card .content h3:before {
  display: block;
  width: 38px;
  height: 4px;
  border-radius: 4px;
  content: "";
  background: var(--gradient);
  margin-bottom: 10px;
}
.twp-block.twipi-organisation .org-card .image img {
  display: block;
  aspect-ratio: 2.7;
  object-fit: cover;
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 600px) {
  .twp-block.twipi-organisation .key-figures li:not(:last-child):after {
    display: block;
    content: "";
    width: 38px;
    height: 1px;
    background: #D3D5DF;
    margin: 15px auto;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.twipi-organisation {
    --gap: 40px;
  }
  .twp-block.twipi-organisation .bg-illustr {
    display: block;
    position: absolute;
    left: -50px;
    top: 40px;
    height: 400px;
    width: 300px;
    background: url('../img/organisation.png') no-repeat center center;
    background-size: contain;
    transform: translate(-1, -1);
  }
  .twp-block.twipi-organisation .flex-row {
    gap: var(--gap);
    flex-wrap: wrap;
  }
  .twp-block.twipi-organisation .flex-row .org-card {
    margin: 0;
    width: calc( 50% - var(--gap)/2 );
  }
  .twp-block.twipi-organisation .key-figures {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .twp-block.twipi-organisation .key-figures li:not(:last-child) {
    border-right: 1px solid #D3D5DF;
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.twipi-organisation {
    --gap: 60px;
  }
}
.twp-block.twipi-locations {
  padding: 60px 0;
  position: relative;
}
.twp-block.twipi-locations h2 + .flex-row,
.twp-block.twipi-locations .intro + .flex-row {
  margin-top: 50px;
}
.twp-block.twipi-locations .location-card {
  border-radius: 5px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0px 4px 35px 0px rgba(0, 0, 0, 0.1);
  margin-bottom: 30px;
}
.twp-block.twipi-locations .location-card .card-icon {
  margin: 50px auto 15px;
}
.twp-block.twipi-locations .location-card h3 {
  margin: 15px 30px 50px;
  text-align: center;
  font-size: 1.3333em;
  font-weight: 600;
}
.twp-block.twipi-locations .location-card .image img {
  display: block;
  aspect-ratio: 1.90909091;
  object-fit: cover;
  width: 100%;
  height: auto;
}
@media only screen and (min-width: 602px) {
  .twp-block.twipi-locations {
    --gap: 40px;
    --columns: 3;
  }
  .twp-block.twipi-locations .flex-row {
    gap: var(--gap);
    flex-wrap: wrap;
  }
  .twp-block.twipi-locations .flex-row .location-card {
    margin: 0;
    width: calc( ( 100% / var( --columns ) ) - var( --gap ) + ( var( --gap ) / var( --columns ) ) );
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.twipi-locations {
    --gap: 60px;
  }
}
.twp-block.big-cards h2 + .flex-row,
.twp-block.big-cards .intro + .flex-row {
  margin-top: 50px;
}
.twp-block.big-cards .big-card {
  border-radius: 5px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: #FFFFFF;
  box-shadow: 0px 4px 35px 0px rgba(0, 0, 0, 0.1);
  margin-bottom: 30px;
}
.twp-block.big-cards .big-card .title {
  display: flex;
  gap: 20px;
  margin-bottom: 30px;
  align-items: center;
}
.twp-block.big-cards .big-card .title h3,
.twp-block.big-cards .big-card .title .card-icon {
  margin: 0;
}
.twp-block.big-cards .big-card .title .card-icon {
  min-width: 63px;
}
.twp-block.big-cards .big-card.gradient-border {
  position: relative;
  padding-bottom: 30px;
}
.twp-block.big-cards .big-card.gradient-border:after {
  display: block;
  content: "";
  height: 4px;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  background: var(--gradient);
}
.twp-block.big-cards .big-card .content {
  padding: 30px 50px 15px;
}
.twp-block.big-cards .big-card .image {
  margin-top: auto;
}
.twp-block.big-cards .big-card .image img {
  display: block;
  max-height: 240px;
  max-width: 100%;
  width: auto;
  height: auto;
  margin: -50px 0 0 auto;
}
.twp-block.big-cards .big-card .cta {
  margin: 30px 0;
}
@media only screen and (min-width: 602px) {
  .twp-block.big-cards {
    --gap: 40px;
  }
  .twp-block.big-cards .flex-row {
    gap: var(--gap);
    flex-wrap: wrap;
  }
  .twp-block.big-cards .flex-row .big-card {
    margin: 0;
    width: calc( 50% - var(--gap)/2 );
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.big-cards {
    --gap: 60px;
  }
}
.twp-block.cta-banner,
.twp-block.cta-banner-alt {
  --left: 30px;
}
.twp-block.cta-banner .cta-wrapper,
.twp-block.cta-banner-alt .cta-wrapper {
  background: #1E314D;
  color: #FFFFFF;
  box-shadow: 0px 4px 25px 0px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.twp-block.cta-banner .cta-wrapper:not(.no-radius),
.twp-block.cta-banner-alt .cta-wrapper:not(.no-radius) {
  border-radius: 5px;
}
.twp-block.cta-banner .cta-wrapper .twp-content,
.twp-block.cta-banner-alt .cta-wrapper .twp-content {
  padding: 30px 30px 50px var(--left);
}
.twp-block.cta-banner .cta-wrapper .image img,
.twp-block.cta-banner-alt .cta-wrapper .image img {
  display: block;
}
.twp-block.cta-banner .cta-wrapper .cta,
.twp-block.cta-banner-alt .cta-wrapper .cta {
  margin-top: 30px;
}
.twp-block.cta-banner.light .cta-wrapper,
.twp-block.cta-banner-alt.light .cta-wrapper {
  background: #F3F2F7;
  color: #000;
}
@media only screen and (min-width: 602px) {
  .twp-block.cta-banner,
  .twp-block.cta-banner-alt {
    --left: 70px;
  }
  .twp-block.cta-banner .flex-row,
  .twp-block.cta-banner-alt .flex-row {
    gap: 80px;
    align-items: stretch;
  }
  .twp-block.cta-banner .flex-row .image,
  .twp-block.cta-banner-alt .flex-row .image {
    padding-top: 30px;
    margin-top: auto;
    width: calc( 35% - 40px );
  }
  .twp-block.cta-banner .flex-row .twp-content,
  .twp-block.cta-banner-alt .flex-row .twp-content {
    display: flex;
    align-items: center;
    width: calc( 65% - 40px );
  }
  .twp-block.cta-banner .flex-row .twp-content h2,
  .twp-block.cta-banner-alt .flex-row .twp-content h2 {
    margin-top: 0;
  }
}
.twp-block.cta-banner-alt .cta-wrapper {
  position: relative;
  padding: 40px;
  overflow: hidden;
}
.twp-block.cta-banner-alt .cta-wrapper .pattern {
  display: block;
  position: absolute;
  right: 5%;
  top: -10%;
  height: 120%;
  width: 33%;
  background: url('../img/cta-default.svg') no-repeat center center;
  background-size: contain;
  opacity: .5;
}
.twp-block.cta-banner-alt .cta-wrapper > div {
  position: relative;
}
.twp-block.cta-banner-alt .cta-wrapper > div h2 {
  margin-top: 0;
}
.twp-block.cta-banner-alt .cta-wrapper.alignfull {
  border-radius: 0;
  padding: 0;
}
.twp-block.cta-banner-alt .cta-wrapper.alignfull .flex-row {
  position: relative;
  padding: 60px 0;
}
.twp-block.cta-banner-alt .cta-wrapper.alignfull .flex-row > div {
  position: relative;
}
.twp-block.cta-banner-alt .cta-wrapper.alignfull .flex-row > div.cta .btn {
  margin: 0 auto;
}
@media only screen and (max-width: 600px) {
  .twp-block.cta-banner-alt .cta-wrapper .pattern {
    width: 50%;
    right: 25%;
    top: 30%;
    opacity: .25;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.cta-banner-alt .flex-row {
    align-items: center;
  }
  .twp-block.cta-banner-alt .flex-row .content {
    width: calc( 65% - 40px );
  }
  .twp-block.cta-banner-alt .flex-row .cta {
    width: calc( 35% - 40px );
  }
  .twp-block.cta-banner-alt .flex-row .cta .btn {
    margin-left: auto;
  }
}
.twp-block.last-news {
  padding: 60px 0;
}
.twp-block.last-news .cta {
  display: flex;
  justify-content: center;
}
.twp-block.last-news .post-tag-filters {
  margin: 0 auto;
}
.twp-block.last-news .post-tag-filters li a {
  transition: all 0.2s ease-in-out 0s;
}
@media only screen and (max-width: 600px) {
  .twp-block.last-news .sticky {
    position: sticky;
    background: #FFFFFF;
    top: 60px;
    z-index: 2 !important;
  }
}
.twp-block.footer-banner {
  position: relative;
  padding: 50px 0;
}
.twp-block.footer-banner .overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  opacity: .85;
}
.twp-block.footer-banner .flex-row {
  position: relative;
  color: #FFFFFF;
}
.twp-block.footer-banner h2 {
  margin-top: 1rem;
}
@media only screen and (max-width: 600px) {
  .twp-block.footer-banner .btn {
    width: 100%;
    margin-top: 20px;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.footer-banner .flex-row {
    gap: 120px;
    align-items: center;
  }
  .twp-block.footer-banner .flex-row .cta {
    margin-left: auto;
  }
  .twp-block.footer-banner .flex-row .btn {
    white-space: nowrap;
  }
}
.twp-block.benefits-block .navtabs {
  display: flex;
  justify-content: center;
  gap: 15px;
  flex-wrap: wrap;
  padding: 30px 0 10px;
}
.twp-block.benefits-block .navtabs li {
  width: 100%;
}
.twp-block.benefits-block .navtabs li .btn {
  border: 1px solid #ddd;
  min-height: 40px;
  border-radius: 5px;
  text-transform: none;
  width: 100%;
}
.twp-block.benefits-block .navtabs li .btn.primary {
  border: none;
}
.twp-block.benefits-block .navtabs li .btn.primary:after {
  display: none;
}
.twp-block.benefits-block .benefits {
  position: relative;
  margin: 30px 0;
  padding: 0 0;
}
.twp-block.benefits-block .benefits .pattern {
  position: absolute;
  display: block;
  width: 130px;
  height: 300px;
  left: -10px;
  bottom: -20px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
.twp-block.benefits-block .benefits .slide {
  background: #244169;
  color: #FFFFFF;
  border-radius: 5px;
  overflow: hidden;
  width: 100%;
  margin: 10px 5px;
}
.twp-block.benefits-block .benefits .slide .content {
  padding: 30px 20px 40px;
}
.twp-block.benefits-block .benefits .slide .content .gain {
  display: flex;
  align-items: center;
  margin: 20px 0;
  border: 1px solid #22DADB;
  border-radius: 5px;
}
.twp-block.benefits-block .benefits .slide .content .gain .legend {
  font-size: .85em;
  font-weight: 600;
  padding: 5px 10px;
  line-height: 1.25em;
}
.twp-block.benefits-block .benefits .slide .content .gain .value {
  font-weight: 700;
  font-size: 2em;
  padding: 5px 15px;
  color: #22DADB;
  white-space: nowrap;
}
.twp-block.benefits-block .benefits .slide .content ul {
  list-style: none;
  padding: 0;
}
.twp-block.benefits-block .benefits .slide .content ul li {
  position: relative;
  margin: .75em 0;
  padding-left: 1em;
}
.twp-block.benefits-block .benefits .slide .content ul li:before {
  content: "•";
  color: #22DADB;
  position: absolute;
  left: 0;
  top: auto;
}
.twp-block.benefits-block .benefits .slide .image {
  position: relative;
}
.twp-block.benefits-block .benefits .slide .image img {
  display: block;
  height: 100%;
  width: 100%;
  object-fit: cover;
  max-height: 320px;
}
.twp-block.benefits-block .benefits .slide .image .overlay {
  position: absolute;
  left: -2px;
  top: 0;
  content: "";
  display: block;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, #244169 0, rgba(36, 65, 105, 0.9) 30.29%, rgba(36, 65, 105, 0.638636) 51.92%, rgba(36, 65, 105, 0) 100%);
}
@media only screen and (max-width: 600px) {
  .twp-block.benefits-block {
    overflow: hidden;
  }
  .twp-block.benefits-block .sticky {
    position: sticky;
    background: #FFFFFF;
    top: 60px;
    z-index: 2 !important;
  }
  .twp-block.benefits-block .benefits .pattern {
    width: 70px;
    left: -30px;
  }
  .twp-block.benefits-block .benefits .slide .image .overlay {
    display: none;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.benefits-block .stretch {
    width: 50%;
  }
  .twp-block.benefits-block .navtabs li {
    width: auto;
  }
  .twp-block.benefits-block .benefits {
    padding: 0 100px;
  }
  .twp-block.benefits-block .benefits img.illustration {
    width: 120px;
    height: 260px;
    left: 0;
    bottom: -20px;
  }
  .twp-block.benefits-block .benefits img.illustration img {
    max-width: 100%;
    height: auto;
    display: block;
  }
  .twp-block.benefits-block .benefits .slide {
    min-height: calc( 100% - 10px );
  }
  .twp-block.benefits-block .benefits .slide .image {
    width: 40%;
  }
  .twp-block.benefits-block .benefits .slide .image img {
    width: 100%;
    height: 100%;
    max-height: 100%;
    object-fit: cover;
  }
  .twp-block.benefits-block .benefits .slide .content {
    width: 60%;
    padding: 30px 50px 40px;
  }
  .twp-block.benefits-block .benefits .slide .content .gain {
    max-width: 60%;
  }
}
.twp-block.customer-logos {
  --width: 120px;
  --height: 80px;
}
.twp-block.customer-logos .logos-title {
  font-size: 1.6em;
}
.twp-block.customer-logos.ital-title .logos-title {
  font-weight: normal;
  font-style: italic;
  font-size: 1.25em;
}
.twp-block.customer-logos .logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.twp-block.customer-logos .logos .logo {
  display: flex;
  align-items: center;
  padding: 5px 15px;
}
.twp-block.customer-logos .logos .logo img {
  display: block;
  max-width: var(--width);
  max-height: var(--height);
  width: auto;
  height: auto;
}
@media only screen and (min-width: 602px) {
  .twp-block.customer-logos {
    --width: 200px;
    --height: 90px;
  }
  .twp-block.customer-logos .logos {
    gap: 20px;
  }
}
.twp-block.feature-card {
  box-shadow: 0px 4px 25px 0px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  overflow: hidden;
  margin: 30px 0;
  padding: 0;
  background: var(--bgcolor, #FFFFFF);
  color: var(--textcolor, #000);
}
.twp-block.feature-card .content {
  padding: 32px;
  font-size: .8em;
}
.twp-block.feature-card .content .note {
  margin: 20px 0;
  padding: 6px;
  background: var(--notebgcolor);
  border-radius: 5px;
}
.twp-block.feature-card .content .note .legend {
  font-size: .85em;
  font-weight: 600;
  padding: 5px 10px;
  line-height: 1.25em;
  color: var(--notetext, inherit);
}
.twp-block.feature-card .content .note .value {
  font-weight: 700;
  font-size: 2em;
  padding: 5px 15px;
}
.twp-block.feature-card .content ol li,
.twp-block.feature-card .content ul:not(.share-post) li {
  position: relative;
  margin: .75em 0;
  padding-left: 1em;
}
.twp-block.feature-card .content ol li:before,
.twp-block.feature-card .content ul:not(.share-post) li:before {
  content: "•";
  position: absolute;
  left: 0;
  top: auto;
}
.twp-block.feature-card .image img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}
.twp-block.feature-card .tag span {
  color: #FFFFFF;
  line-height: 32px;
  padding: 0 12px;
  border-radius: 32px;
  display: inline-block;
  font-size: 14px;
}
.twp-block.feature-card.dark .cta.arrow-cta a {
  background: #22DADB;
}
.twp-block.feature-card.dark .cta.arrow-cta a svg path {
  fill: #22DADB;
}
@media only screen and (max-width: 600px) {
  .twp-block.feature-card .image {
    max-height: 240px;
    width: auto;
  }
  .twp-block.feature-card .content {
    padding-bottom: 0;
  }
  .twp-block.feature-card .content + .flex-row > .content {
    padding-top: 0;
    padding-bottom: 20px;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.feature-card:not(.slider) > .content {
    padding-bottom: 0;
  }
  .twp-block.feature-card .content .note.tb-like {
    display: table;
    width: auto;
  }
  .twp-block.feature-card .content .note.tb-like > div {
    display: table-cell;
    vertical-align: middle;
  }
  .twp-block.feature-card .content .note.tb-like .value {
    white-space: nowrap;
  }
  .twp-block.feature-card .content.img-after {
    padding-top: 0;
  }
  .twp-block.feature-card .image {
    display: flex;
    align-items: flex-end;
    position: relative;
  }
  .twp-block.feature-card .image img {
    position: absolute;
    right: 0;
    bottom: 0;
    max-height: calc( 100% - 30px );
    width: auto;
  }
  .twp-block.feature-card .row-reverse .image img {
    right: auto;
    left: 0;
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.feature-card {
    display: flex;
    min-height: 100%;
    flex-direction: column;
  }
  .twp-block.feature-card > .flex-row {
    min-height: 100%;
  }
  .twp-block.feature-card > .flex-row.row-reverse {
    flex-direction: row-reverse;
  }
  .twp-block.feature-card > .flex-row .image {
    width: var(--imgwidth);
    display: flex;
    align-items: flex-end;
  }
  .twp-block.feature-card > .flex-row .content {
    width: calc( 100% - var(--imgwidth) );
  }
}
.twp-block.feature-card.slider .slides {
  padding: 0 30px 30px;
}
.twp-block.feature-card.slider ul.slides-nav {
  margin: 0;
  display: flex;
  position: relative;
}
.twp-block.feature-card.slider ul.slides-nav:before,
.twp-block.feature-card.slider ul.slides-nav:after {
  content: "";
  width: 100%;
  height: 2px;
  background: rgba(255, 255, 255, 0.2);
  position: absolute;
  left: 0;
  top: 22px;
}
.twp-block.feature-card.slider ul.slides-nav:after {
  width: calc( var(--indicator) - 44px );
  background: var(--border);
  transition: width 1s ease-in-out 0s;
  z-index: 1;
}
.twp-block.feature-card.slider ul.slides-nav li {
  padding-right: 15px;
  flex: 1;
  cursor: pointer;
  position: relative;
  color: rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease-in-out 0s;
}
.twp-block.feature-card.slider ul.slides-nav li:hover {
  color: #fff;
}
.twp-block.feature-card.slider ul.slides-nav li span {
  position: relative;
  z-index: 2;
}
.twp-block.feature-card.slider ul.slides-nav li .num {
  display: inline-block;
  width: 44px;
  height: 44px;
  border-radius: 44px;
  line-height: 44px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.2);
  font-size: 15px;
  font-weight: 700;
  background-color: var(--bgcolor, #ffffff);
}
.twp-block.feature-card.slider ul.slides-nav li .label {
  display: block;
  margin-top: 10px;
  font-weight: 500;
  max-width: 150px;
}
.twp-block.feature-card.slider ul.slides-nav li.active {
  color: #fff;
}
.twp-block.feature-card.slider ul.slides-nav li.active .num {
  border: none;
}
.twp-block.feature-card.slider div.slides-slider {
  margin-top: 50px;
  padding-bottom: 40px;
}
.twp-block.feature-card.slider div.slides-slider .flickity-page-dots {
  bottom: 0;
}
.twp-block.feature-card.slider div.slides-slider .flickity-page-dots .dot {
  transition: all 0.3s ease-in-out 0s;
}
.twp-block.feature-card.slider div.slides-slider .flickity-page-dots .dot:not(.is-selected) {
  opacity: .25;
}
.twp-block.feature-card.slider div.slides-slider .flickity-page-dots .dot:hover {
  background: #FFFFFF;
  opacity: 1;
}
.twp-block.feature-card.slider div.slides-slider .slide {
  display: block;
  width: 100%;
  margin: 0 15px;
}
.twp-block.feature-card.slider div.slides-slider .item {
  font-size: .88em;
  padding-left: 30px;
  border-left: 2px solid var(--border);
}
.twp-block.feature-card.slider div.slides-slider .item h3 {
  margin-top: 0;
}
.twp-block.feature-card.slider div.slides-slider .item .desc {
  opacity: .8;
}
.twp-block.checklist-icons {
  padding: 60px 0;
}
.twp-block.checklist-icons .wrapper {
  background: #F8F8F8;
  padding: 30px 20px;
  border-radius: 18px;
}
.twp-block.checklist-icons ul.icons-list {
  margin: 0;
}
.twp-block.checklist-icons ul.icons-list li {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 8px 0 16px;
  font-size: .85em;
  line-height: 1.3em;
  border-bottom: 1px dashed #ddd;
}
.twp-block.checklist-icons ul.icons-list li .picto {
  width: 35px;
}
.twp-block.checklist-icons ul.icons-list li .label {
  width: calc( 100% - 35px - 15px );
}
.twp-block.checklist-icons ul.secondary {
  margin: 30px 0;
  border: 1px solid var(--border);
  border-radius: 5px;
  padding: 12px;
}
.twp-block.checklist-icons ul.secondary li {
  font-size: .85em;
  line-height: 1.2em;
  display: flex;
  align-items: center;
}
.twp-block.checklist-icons ul.secondary li:not(:last-child) {
  margin-bottom: 15px;
}
.twp-block.checklist-icons ul.secondary li .icon {
  font-size: 1.5em;
  vertical-align: middle;
  margin-right: 8px;
  padding: 2px 0;
}
@media only screen and (min-width: 602px) {
  .twp-block.checklist-icons .wrapper {
    padding: 60px;
  }
  .twp-block.checklist-icons .flex-row {
    gap: 80px;
  }
  .twp-block.checklist-icons .flex-row .title {
    width: calc( 45% - 55px );
    display: flex;
    flex-direction: column;
  }
  .twp-block.checklist-icons .flex-row .title .pattern {
    width: 240px;
    display: block;
    height: 300px;
    margin: auto auto -120px 0;
    background-image: url('../img/pattern-alt-default.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
  }
  .twp-block.checklist-icons .flex-row .checklist {
    width: calc( 55% - 55px );
    display: flex;
    flex-direction: column;
  }
  .twp-block.checklist-icons ul.secondary {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin: auto 0 0;
  }
  .twp-block.checklist-icons ul.secondary li {
    padding-right: 20px;
    margin: 0 !important;
    max-width: 40%;
    justify-content: flex-start;
  }
  .twp-block.checklist-icons ul.icons-list {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
  }
  .twp-block.checklist-icons ul.icons-list li {
    width: calc( 50% - 8px );
    padding-right: 30px;
    display: flex;
  }
}
.testimonial-card {
  --gap: 15px;
  --portrait: 80px;
  --icon: 32px;
}
.testimonial-card .content {
  padding: 36px 0;
  text-align: center;
  position: relative;
}
.testimonial-card .content .icon {
  display: block;
  position: absolute;
  font-size: var(--icon);
}
.testimonial-card .content .icon.icon-quote-open {
  left: 0;
  top: 0;
}
.testimonial-card .content .icon.icon-quote-close {
  right: 0;
  bottom: 0;
}
.testimonial-card .meta {
  gap: var(--gap);
  padding: 40px 0 10px;
}
.testimonial-card .meta .author {
  margin-top: auto;
}
.testimonial-card .meta .name {
  font-weight: 600;
  font-size: 1.2em;
}
.testimonial-card .meta .thumbnail {
  width: var(--portrait);
}
.testimonial-card .meta .thumbnail img {
  display: block;
  border-radius: 5px;
}
.testimonial-card .meta .cta {
  margin-left: auto;
}
.testimonial-card .meta .cta .btn {
  margin-top: 30px;
}
.testimonial-card .meta .logo-secteur {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 10px;
}
.testimonial-card .meta .logo-secteur .logo {
  display: flex;
  align-items: center;
}
.testimonial-card .meta .logo-secteur .logo img {
  display: block;
  max-width: 100px;
  max-height: 50px;
  width: auto;
  height: auto;
}
.testimonial-card .meta .logo-secteur .secteur span {
  font-size: 14px;
  display: inline-block;
  line-height: 34px;
  padding: 0 10px;
  border-radius: 5px;
  border: 1px solid var(--border);
}
@media only screen and (min-width: 602px) {
  .testimonial-card {
    --gap: 40px;
    --icon: 48px;
    --portrait: 110px;
  }
  .testimonial-card .content {
    padding: 30px 90px;
  }
}
@media only screen and (min-width: 992px) {
  .testimonial-card {
    max-width: 900px;
    margin: 30px auto;
  }
}
.twp-block.testimonials-block {
  padding: 60px 0;
}
.twp-block.testimonials-block .stretch {
  width: 600px;
}
.twp-block.testimonials-block .testimonials-slider {
  padding-bottom: 100px;
}
.twp-block.testimonials-block .testimonials-slider .slide {
  width: 100%;
  margin: 0 10px;
}
.twp-block.testimonials-block .testimonials-slider .slide .testimonial-card {
  margin-bottom: 0;
}
.twp-block.single-testimonial .testimonial-card {
  margin: 40px auto;
  background: var(--bgcolor, #FFFFFF);
  color: var(--txtcolor, #000);
  padding: 40px;
  border-radius: 5px;
}
.twp-block.single-testimonial .testimonial-card .content {
  font-size: 1.222em;
}
.twp-block.single-testimonial .testimonial-card .meta {
  padding: 10px 0 0;
  border: none;
  align-items: center;
}
.twp-block.pricing-cards {
  position: relative;
  padding: 60px 0;
  overflow: hidden;
}
.twp-block.pricing-cards .intro {
  margin-top: 40px;
  margin-bottom: 40px;
}
.twp-block.pricing-cards .bg-illustr {
  display: block;
  width: 150px;
  height: 300px;
  position: absolute;
  right: -75px;
  top: 220px;
  background: url('../img/pattern-alt-default.svg') no-repeat left top;
  background-size: contain;
}
.twp-block.pricing-cards .item {
  border-radius: 5px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  background: #FFFFFF;
  overflow: hidden;
  margin-bottom: 30px;
  padding: 30px 50px;
  position: relative;
}
.twp-block.pricing-cards .item .tag {
  text-align: center;
}
.twp-block.pricing-cards .item .tag span {
  font-size: 14px;
  display: inline-block;
  line-height: 34px;
  padding: 0 10px;
  border-radius: 5px;
  border: 1px solid var(--border);
}
.twp-block.pricing-cards .item .price {
  font-size: 4em;
  font-weight: 700;
  text-align: center;
  margin: 10px 0;
}
.twp-block.pricing-cards .item .price small {
  font-size: 1rem;
  font-weight: 500;
  vertical-align: middle;
  display: inline-block;
  margin-left: 4px;
}
.twp-block.pricing-cards .item .description ul {
  list-style: none;
  padding: 0;
}
.twp-block.pricing-cards .item .description ul li {
  position: relative;
  margin: .75em 0;
  padding-left: 1em;
}
.twp-block.pricing-cards .item .description ul li:before {
  content: "•";
  position: absolute;
  opacity: .3;
  left: 0;
  top: auto;
}
.twp-block.pricing-cards .cta {
  margin-top: 50px;
}
.twp-block.pricing-cards .cta .btn {
  margin: 0 auto;
}
@media only screen and (min-width: 602px) {
  .twp-block.pricing-cards {
    --gap: 30px;
    --columns: 2;
  }
  .twp-block.pricing-cards .bg-illustr {
    width: 200px;
    height: 400px;
    left: 10px;
    top: 120px;
    right: auto;
  }
  .twp-block.pricing-cards .prices {
    gap: var(--gap);
    flex-wrap: wrap;
  }
  .twp-block.pricing-cards .prices .item {
    margin: 0;
    width: calc( ( 100% / var( --columns ) ) - var( --gap ) + ( var( --gap ) / var( --columns ) ) );
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.pricing-cards {
    --columns: 3;
  }
}
@media only screen and (min-width: 1480px) {
  .twp-block.pricing-cards .bg-illustr {
    left: 10%;
  }
}
.twp-block.selected-faq .collapsible {
  width: 750px;
  max-width: 100%;
  margin: 50px auto;
  border: none;
  border-top: 1px solid #ddd;
}
.twp-block.selected-faq .collapsible > li {
  padding: 20px 0;
  border-bottom: 1px solid #ddd;
}
.twp-block.selected-faq .collapsible > li.active .collapsible-header .toggle {
  transform: rotate(90deg);
}
.twp-block.selected-faq .collapsible > li.active .collapsible-header .toggle:before {
  opacity: 0;
}
.twp-block.selected-faq .collapsible .collapsible-header,
.twp-block.selected-faq .collapsible .collapsible-body {
  padding: 0;
  border: none;
}
.twp-block.selected-faq .collapsible .collapsible-header {
  font-weight: 500;
  position: relative;
  display: flex;
}
.twp-block.selected-faq .collapsible .collapsible-header .toggle {
  width: 20px;
  height: 20px;
  position: relative;
  margin-left: auto;
  transition: transform 0.3s ease-in-out 0s;
}
.twp-block.selected-faq .collapsible .collapsible-header .toggle:before,
.twp-block.selected-faq .collapsible .collapsible-header .toggle:after {
  content: "";
  width: 100%;
  height: 1px;
  background: #A9A4CF;
  position: absolute;
  left: 0;
  top: 50%;
  transition: opacity 0.3s ease-in-out 0s;
}
.twp-block.selected-faq .collapsible .collapsible-header .toggle:after {
  transform: rotate(90deg);
}
@media only screen and (min-width: 992px) {
  .twp-block.selected-faq {
    position: relative;
    overflow: hidden;
  }
  .twp-block.selected-faq .bg-illustr {
    display: block;
    width: 150px;
    height: 300px;
    position: absolute;
    right: -10px;
    top: 200px;
    background: url('../img/pattern-plain-alt-twimm.svg') no-repeat left top;
    background-size: contain;
  }
}
@media only screen and (min-width: 1480px) {
  .twp-block.selected-faq .bg-illustr {
    right: 10%;
  }
}
.twp-block.steps-slider {
  padding-bottom: 60px;
  position: relative;
}
.twp-block.steps-slider .pattern {
  display: block;
  content: "";
  width: 175px;
  height: 275px;
  background-image: url('../img/pattern-alt-default.svg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  right: 5%;
  top: 0;
}
.twp-block.steps-slider .intro {
  margin: 40px auto;
}
.twp-block.steps-slider .slide {
  margin-bottom: 20px;
  position: sticky;
  top: 110px;
  border-top: 2px solid #FFFFFF;
  color: #FFFFFF;
}
.twp-block.steps-slider .step-card .content {
  padding: 30px 40px;
}
.twp-block.steps-slider .step-card .content .tag span {
  display: inline-block;
  line-height: 36px;
  border: 1px solid #FFFFFF;
  padding: 0 12px;
  text-transform: uppercase;
  border-radius: 5px;
}
.twp-block.steps-slider .step-card .image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 600px) {
  .twp-block.steps-slider .step-card {
    min-height: 100%;
    display: flex;
    flex-direction: column;
  }
  .twp-block.steps-slider .step-card .image {
    margin-top: auto;
  }
  .twp-block.steps-slider .step-card .image img {
    aspect-ratio: 1.33333333;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.steps-slider .step-card .image {
    width: 42%;
  }
  .twp-block.steps-slider .step-card .content {
    width: 58%;
    padding: 80px;
  }
}
.twp-block.contact-form {
  padding: 80px 0;
  background: #F3F2F7;
}
.twp-block.contact-form h2 {
  margin: 0 0 30px;
}
.twp-block.contact-form .image img {
  display: block;
  border-radius: 5px;
  margin-bottom: 40px;
}
.twp-block.contact-form form {
  margin-top: 10px;
}
@media only screen and (max-width: 600px) {
  .twp-block.contact-form .image img {
    max-height: 240px;
    max-width: 100%;
    width: auto;
    height: auto;
    margin: 0 auto 30px;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.contact-form {
    --gap: 60px;
  }
  .twp-block.contact-form .main-row {
    gap: var(--gap);
  }
  .twp-block.contact-form .main-row .image,
  .twp-block.contact-form .main-row .form {
    width: calc( 50% - var(--gap)/2 );
  }
  .twp-block.contact-form .main-row .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin: 0;
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.contact-form {
    --gap: 125px;
  }
}
.twp-block.twimm-calc .form {
  padding: 40px;
  border-radius: 5px;
  background: #F3F2F7;
}
.twp-block.twimm-calc .main-flex {
  margin-top: 40px;
}
.twp-block.twimm-calc #calc-result {
  background: #244169;
  color: #FFFFFF;
  padding: 20px;
  border-radius: 5px;
  text-align: center;
  margin-top: 30px;
}
.twp-block.twimm-calc #calc-result .cta .btn {
  margin: 30px auto 0;
}
.twp-block.twimm-calc #calc-result .default {
  padding: 40px;
  min-height: 100%;
  font-size: 1.5em;
  font-weight: 200;
  display: flex;
  align-items: center;
  justify-content: center;
}
.twp-block.twimm-calc #calc-result h3 {
  margin: 0;
  font-size: 1.4em;
}
.twp-block.twimm-calc #calc-result h3 strong {
  display: block;
  margin: 15px 0;
  line-height: 1.2em;
  font-size: 2.5rem;
}
.twp-block.twimm-calc #calc-result h3 strong small {
  font-size: 1rem;
}
.twp-block.twimm-calc #calc-result h3 strong sup {
  font-size: 1rem;
}
.twp-block.twimm-calc #calc-result .note {
  font-size: 10px;
  line-height: 1.4em;
  margin: 15px 0;
}
.twp-block.twimm-calc #calc-result .more {
  font-size: .75em;
}
.twp-block.twimm-calc #calc-result div.gains {
  gap: 30px;
}
.twp-block.twimm-calc #calc-result div.gains > div {
  padding: 20px;
  width: calc( 50% - 15px );
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid #22DADB;
  border-radius: 5px;
}
.twp-block.twimm-calc #calc-result div.gains > div h4 {
  font-size: 1em;
  margin: 0;
}
.twp-block.twimm-calc #calc-result div.gains > div .gain {
  font-size: 2.5em;
  font-weight: 700;
}
.twp-block.twimm-calc #calc-result div.gains > div .legend {
  font-size: .75em;
  line-height: 1.3em;
}
@media only screen and (min-width: 602px) {
  .twp-block.twimm-calc {
    --gap: 30px;
  }
  .twp-block.twimm-calc #calc-result {
    padding: 40px;
    margin: 0;
  }
  .twp-block.twimm-calc .main-flex {
    gap: var(--gap);
  }
  .twp-block.twimm-calc .main-flex > div {
    width: calc( 50% - var(--gap)/2 );
  }
}
.twp-block.usecase-header {
  padding: 60px 0 30px;
}
.twp-block.usecase-header .logos {
  display: flex;
  gap: 20px;
  margin-bottom: 30px;
  align-items: center;
}
.twp-block.usecase-header .logos img {
  display: block;
  max-width: 35%;
  max-height: 40px;
  width: auto;
  height: auto;
}
.twp-block.usecase-header .logos .icon {
  font-size: 16px;
}
@media only screen and (min-width: 602px) {
  .twp-block.usecase-header {
    padding: 60px 0;
  }
  .twp-block.usecase-header .logos img {
    max-width: 200px;
  }
}
.twp-block.text-media {
  padding: 30px 0;
}
.twp-block.text-media .section-title {
  margin-top: 0;
}
.twp-block.text-media .section-title + .flex-row {
  margin-top: 50px;
}
.twp-block.text-media .tags + .section-title {
  margin-top: 20px;
}
.twp-block.text-media .content > *:first-child {
  margin-top: 0;
}
.twp-block.text-media .content .tags {
  margin: 30px 0;
}
.twp-block.text-media .cta {
  margin-top: 20px;
}
.twp-block.text-media .media {
  margin-top: 40px;
}
.twp-block.text-media .media img,
.twp-block.text-media .media iframe {
  display: block;
  border-radius: 5px;
  max-width: 100%;
}
.twp-block.text-media .media iframe {
  aspect-ratio: 1.77777778;
  height: auto;
}
@media only screen and (max-width: 600px) {
  .twp-block.text-media .media img {
    max-height: 240px;
    max-width: 100%;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  .twp-block.text-media .cta {
    margin: 30px 0 50px;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.text-media {
    --gap: 60px;
    padding: 60px 0;
  }
  .twp-block.text-media .flex-row {
    gap: var(--gap);
  }
  .twp-block.text-media .flex-row.img-align-center {
    align-items: center;
  }
  .twp-block.text-media .flex-row.img-align-stretch {
    align-items: stretch;
  }
  .twp-block.text-media .flex-row.img-align-stretch .media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .twp-block.text-media .flex-row.img-on-left {
    flex-direction: row-reverse;
  }
  .twp-block.text-media .flex-row .media {
    margin: 0;
    width: calc( var(--imgwidth) - var(--gap)/2 );
  }
  .twp-block.text-media .flex-row .media img {
    display: block;
  }
  .twp-block.text-media .flex-row .content {
    width: calc( 100% - var(--imgwidth) - var(--gap)/2 );
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.text-media {
    --gap: 120px;
  }
}
.twp-block.block-checklist > div {
  padding: 30px 40px;
  border-radius: 5px;
  background-color: var(--bgcolor, transparent);
}
.twp-block.block-checklist ul {
  margin-top: 1.5em;
}
.twp-block.block-checklist ul li {
  position: relative;
  padding-left: 36px;
  margin: 10px 0;
}
.twp-block.block-checklist ul li:before {
  font-family: 'twipi';
  content: "\ea29";
  position: absolute;
  left: 0;
  top: 2px;
  background: var(--gradient);
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.twp-block.block-checklist.has-border > div {
  border: 1px solid var(--border);
}
@media only screen and (min-width: 602px) {
  .twp-block.block-checklist.wrapper-right > div {
    padding-right: 100px;
    position: relative;
  }
  .twp-block.block-checklist.wrapper-right > div img {
    position: absolute;
    width: 200px;
    height: auto;
    right: -100px;
    bottom: -60px;
  }
  .twp-block.block-checklist.block-left,
  .twp-block.block-checklist.block-right {
    position: relative;
  }
  .twp-block.block-checklist.block-left img,
  .twp-block.block-checklist.block-right img {
    position: absolute;
    width: 200px;
    height: auto;
    bottom: -40px;
  }
  .twp-block.block-checklist.block-left img {
    left: 0;
  }
  .twp-block.block-checklist.block-right img {
    right: 0;
  }
  .twp-block.block-checklist ul {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
  }
  .twp-block.block-checklist ul li {
    margin: 0;
    padding-right: 30px;
    width: calc( 50% - 10px );
  }
}
.twp-block.client-datasheet {
  padding: 60px 0;
}
.twp-block.client-datasheet h2 {
  font-size: 2.333em;
  margin-left: 0;
}
.twp-block.client-datasheet .datasheet ul li {
  font-weight: 500;
}
.twp-block.client-datasheet .datasheet ul li strong {
  display: block;
  width: fit-content;
  font-size: 2.333em;
}
.twp-block.client-datasheet .datasheet ul li strong:after {
  display: block;
  content: "";
  width: 88px;
  height: 2px;
  background: #000;
  margin: 10px 0;
}
.twp-block.client-datasheet .datasheet ul li:not(:last-child) {
  margin-bottom: 30px;
}
@media only screen and (min-width: 602px) {
  .twp-block.client-datasheet {
    --gap: 60px;
  }
  .twp-block.client-datasheet .flex-row {
    gap: var(--gap);
  }
  .twp-block.client-datasheet .flex-row .main {
    width: calc( 55% - var(--gap)/2 );
    display: flex;
    flex-direction: column;
  }
  .twp-block.client-datasheet .flex-row .main .cta {
    margin-top: auto;
    margin-bottom: 20px;
  }
  .twp-block.client-datasheet .flex-row .datasheet {
    width: calc( 45% - var(--gap)/2 );
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.client-datasheet {
    --gap: 100px;
  }
}
.twp-block.carousel-cas-clients {
  padding: 60px 0;
}
.twp-block.carousel-cas-clients h2 {
  margin: 0;
  min-height: 80px;
}
.twp-block.carousel-cas-clients .usecase-slider {
  width: calc( 100% + 20px );
  margin-left: -10px;
}
.twp-block.carousel-cas-clients .slide {
  display: flex;
  min-height: 100%;
  width: 100%;
  padding: 10px;
}
.twp-block.carousel-cas-clients .uc-card {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  padding: 32px;
  border-radius: 5px;
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.14);
}
.twp-block.carousel-cas-clients .uc-card .logo {
  height: 60px;
}
.twp-block.carousel-cas-clients .uc-card .logo img {
  display: block;
  max-height: 50px;
  max-width: 100%;
  width: auto;
  height: auto;
}
.twp-block.carousel-cas-clients .uc-card .gain {
  margin: 30px 0;
  font-size: 3em;
  font-weight: 600;
}
.twp-block.carousel-cas-clients .uc-card .desc {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ddd;
}
.twp-block.carousel-cas-clients .uc-card .arrow-cta {
  margin-top: auto;
}
.twp-block.carousel-cas-clients .uc-card.standard {
  background: var(--bgcolor, #1E314D);
  color: var(--textcolor, #FFFFFF);
}
.twp-block.carousel-cas-clients .uc-card.standard .arrow-cta a {
  background: #FFFFFF;
}
.twp-block.carousel-cas-clients .uc-card.standard .arrow-cta a svg path {
  fill: #FFFFFF;
}
.twp-block.carousel-cas-clients .uc-card.standard .desc {
  border-bottom-color: rgba(255, 255, 255, 0.25);
}
@media only screen and (max-width: 600px) {
  .twp-block.carousel-cas-clients .flickity-prev-next-button {
    display: none;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.carousel-cas-clients .usecase-slider {
    width: calc( 100% + 40px );
    margin-left: -20px;
  }
  .twp-block.carousel-cas-clients .slide {
    width: 50%;
    padding: 20px;
  }
  .twp-block.carousel-cas-clients .flickity-page-dots {
    display: none;
  }
  .twp-block.carousel-cas-clients .flickity-prev-next-button {
    --size: 45px;
    bottom: auto;
    top: -80px;
    margin-right: 20px;
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.carousel-cas-clients .slide {
    width: 33.3333%;
  }
}
.twp-block.contact-header {
  background: #F3F2F7;
  padding: 0;
  overflow: hidden;
}
.twp-block.contact-header h1,
.twp-block.contact-header h2 {
  margin: .25em 0;
}
.twp-block.contact-header h1 + h2 {
  font-size: 2.85em;
  font-weight: 300;
  margin-bottom: 30px;
}
.twp-block.contact-header .tags {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.twp-block.contact-header .tags span {
  line-height: 38px;
  padding: 0 15px;
  border: 1px solid #FFFFFF;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.3);
}
.twp-block.contact-header .form {
  padding: 30px;
}
.twp-block.contact-header .form button[type="submit"] {
  width: 100%;
}
.twp-block.contact-header .title {
  color: #FFFFFF;
}
.twp-block.contact-header img {
  object-fit: cover;
}
.twp-block.contact-header .overlay {
  opacity: .8;
}
.twp-block.contact-header .twp-logo {
  background-image: url('../img/twipi-dark.svg');
}
@media only screen and (max-width: 600px) {
  .twp-block.contact-header .form {
    padding: 30px 15px;
  }
  .twp-block.contact-header .title {
    position: relative;
    padding: 30px 15px;
  }
  .twp-block.contact-header .title img,
  .twp-block.contact-header .title .overlay {
    position: absolute;
    width: 100vw;
    height: 100%;
    left: -30px;
    top: 0;
  }
  .twp-block.contact-header .title > div {
    position: relative;
  }
  .twp-block.contact-header .title > div.home {
    margin-bottom: 40px;
  }
  .twp-block.contact-header .title .tags {
    margin: 30px 0;
    font-size: .8em;
  }
  .twp-block.contact-header h1 + p {
    font-size: 2em;
  }
}
@media only screen and (min-width: 602px) {
  .twp-block.contact-header .max-width.flex-row > div {
    width: 50%;
    padding-right: 60px;
  }
  .twp-block.contact-header .max-width.flex-row > div.form {
    padding: 60px;
  }
  .twp-block.contact-header .max-width.flex-row > div.title {
    position: relative;
    display: flex;
    align-items: center;
  }
  .twp-block.contact-header .max-width.flex-row > div.title > div {
    position: relative;
    color: #FFFFFF;
    width: 100%;
  }
  .twp-block.contact-header .max-width.flex-row > div.title > div.home {
    position: absolute;
    top: 40px;
    left: 0;
  }
  .twp-block.contact-header .max-width.flex-row > div.title img,
  .twp-block.contact-header .max-width.flex-row > div.title .overlay {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 50vw;
    height: 100%;
  }
}
.twp-block.post-author {
  margin: 40px auto;
}
.twp-block.post-author .author-wrapper {
  background: #1E314D;
  color: #FFFFFF;
  position: relative;
  padding: 20px;
  border-radius: 5px;
  overflow: hidden;
}
.twp-block.post-author .author-wrapper .pattern {
  position: absolute;
  left: -25px;
  top: -25px;
  height: 200px;
  width: 200px;
  background: url('../img/cta-default.svg') no-repeat center center;
  background-size: contain;
}
.twp-block.post-author .author-wrapper > div {
  position: relative;
}
.twp-block.post-author .author-wrapper .portrait {
  width: 155px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 5px;
  margin: 0 auto;
  overflow: hidden;
}
.twp-block.post-author .author-wrapper .portrait img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}
.twp-block.post-author .author-wrapper .author {
  margin-top: 30px;
}
.twp-block.post-author .author-wrapper .author .name {
  font-size: 18px;
  font-weight: 600;
}
.twp-block.post-author .author-wrapper .author .fonction {
  font-weight: 600;
  color: var(--border);
}
.twp-block.post-author .author-wrapper .author .description {
  margin: 15px 0;
}
@media only screen and (min-width: 602px) {
  .twp-block.post-author .author-wrapper img.bg-illustr {
    height: 100%;
    transform: translate(-30%);
  }
  .twp-block.post-author .flex-row {
    gap: 40px;
    align-items: flex-start;
  }
  .twp-block.post-author .flex-row .portrait {
    width: 155px;
  }
  .twp-block.post-author .flex-row .author {
    margin: 0;
    width: calc( 100% - 155px - 40px );
  }
}
.twp-block.blog-header {
  position: relative;
  padding: 60px 0;
}
.twp-block.blog-header .overlay {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  opacity: .75;
}
.twp-block.blog-header > div {
  position: relative;
  color: #FFFFFF;
}
.twp-block.blog-loop .news-grid {
  margin-top: 0;
}
.twp-block.blog-filters {
  padding-bottom: 40px;
  margin-bottom: 30px;
  box-shadow: 0 6px 22px 0 rgba(0, 0, 0, 0.05);
}
.twp-block.blog-filters .filters-title {
  margin: 0 0 20px;
  font-weight: 600;
}
.twp-block.blog-filters .filter-by {
  margin: 30px 0;
  position: relative;
}
.twp-block.blog-filters .filter-by:before {
  content: "";
  width: 100%;
  height: 1px;
  background: #EAEAEC;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
}
.twp-block.blog-filters .filter-by span {
  display: inline-block;
  background: #fff;
  position: relative;
  padding-right: 20px;
}
.twp-block.blog-filters .twp-select select {
  line-height: 40px;
}
.twp-block.blog-filters .search-field {
  position: relative;
}
.twp-block.blog-filters .search-field input[type="text"] {
  line-height: 42px;
  width: 100%;
  padding-left: 50px;
  font-size: 16px;
  font-family: 'IBM Plex Sans', sans-serif;
  border: 1px solid #961DFF;
  border-radius: 5px;
}
.twp-block.blog-filters .search-field .icon {
  line-height: 40px;
  position: absolute;
  left: 15px;
  top: 4px;
  color: #961DFF;
}
.twp-block.blog-filters .reset {
  display: flex;
  align-items: center;
  justify-content: center;
}
.twp-block.blog-filters .reset a {
  font-size: .85em;
  font-weight: 600;
  color: #961DFF;
}
.twp-block.blog-filters .taxonomy-filters > * {
  margin: 15px 0;
}
@media only screen and (min-width: 602px) {
  .twp-block.blog-filters .taxonomy-filters {
    gap: 20px;
  }
  .twp-block.blog-filters .taxonomy-filters > * {
    flex: 1;
    margin: 0;
  }
}
@media only screen and (min-width: 992px) {
  .twp-block.blog-filters form .solution-twipi {
    --columns: 4;
    margin: 0 50px;
  }
}
.twp-block.ebook-banner > div {
  border-radius: 5px;
  border: 1px solid #E4E7EC;
  overflow: hidden;
}
.twp-block.ebook-banner a {
  text-decoration: none;
}
.twp-block.ebook-banner img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.twp-block.ebook-banner .post-title {
  font-size: 1.44em;
  font-weight: 600;
  margin: 50px 0 20px;
}
.twp-block.ebook-banner .cta {
  margin-top: 30px;
}
.twp-block.ebook-banner .category {
  display: flex;
  gap: 10px;
}
.twp-block.ebook-banner .category .tag {
  display: inline-block;
  border: 1px solid #22DADB;
  padding: 0 10px;
  line-height: 28px;
  border-radius: 5px;
  font-size: .7em;
}
.twp-block.ebook-banner .content {
  padding: 40px;
}
@media only screen and (min-width: 602px) {
  .twp-block.ebook-banner .flex-row .content {
    width: 60%;
  }
  .twp-block.ebook-banner .flex-row .thumbnail {
    width: 40%;
  }
}
.twp-block.optin-banner {
  padding: 40px 0;
  background: var(--gradient);
  color: #FFFFFF;
}
.twp-block.optin-banner .title {
  font-size: 1.333em;
  font-weight: 700;
  line-height: 1.4em;
}
@media only screen and (min-width: 602px) {
  .twp-block.optin-banner .flex-row {
    gap: 50px;
    align-items: center;
  }
  .twp-block.optin-banner .form-fields {
    display: flex;
    gap: 15px;
    align-items: center;
  }
  .twp-block.optin-banner .form-fields > * {
    flex: auto;
  }
}
@media only screen and (max-width: 600px) {
  .wp-block-spacer {
    display: none;
  }
}
@media only screen and (min-width: 602px) {
  .wp-block-columns {
    gap: 30px;
    align-items: stretch !important;
  }
  .wp-block-columns .twp-block.feature-card {
    min-height: 100%;
    margin-bottom: 0;
  }
}
.has-grain {
  position: relative;
  overflow: hidden;
}
.has-grain::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url('../img/grain-texture.svg');
  background-repeat: repeat;
  background-size: 128px 128px;
  mix-blend-mode: overlay;
  /* ou "soft-light" ou "multiply" selon le rendu voulu */
  opacity: 0.9;
  /* intensité du grain */
  pointer-events: none;
}
.blog-post-wrapper .post-content ul li:before {
  background: var(--gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: 1;
  font-size: 1.5em;
  line-height: 1em;
  top: 0;
}
.twimm {
  --gradient: linear-gradient(90deg, #22DADB 0%, #3261FF 100%);
  --border: #3261FF;
}
.twimm .twp-block .tabs tab a.active,
.twimm .twp-block .post-tag-filters tab a.active {
  --gradient: linear-gradient(90deg, #22DADB 0%, #3261FF 100%);
}
.twimm .twp-block.content-cards .bg-illustr {
  background-image: url('../img/pattern-twimm.svg');
}
.twimm .twp-block.steps-slider .pattern,
.twimm .twp-block.pricing-cards .bg-illustr,
.twimm .twp-block.checklist-icons .flex-row .title .pattern {
  background-image: url('../img/pattern-alt-twimm.svg');
}
.twimm .twp-block.selected-faq .bg-illustr,
.twimm .twp-block.benefits-block .benefits .pattern {
  background-image: url('../img/pattern-plain-alt-twimm.svg');
}
.twimm .twp-block.cta-banner-alt .cta-wrapper .pattern,
.twimm .twp-block.post-author .author-wrapper .pattern {
  background-image: url('../img/cta-twimm.svg');
}
.twimm .twp-block.feature-card.dark .cta.arrow-cta a {
  background: var(--border);
}
.twimm .twp-block.feature-card.dark .cta.arrow-cta a svg path {
  fill: var(--border);
}
.tootwi {
  --gradient: linear-gradient(90deg, #FF9D00 0%, #FF3434 100%);
  --border: #FF9D00;
}
.tootwi .twp-block .tabs tab a.active,
.tootwi .twp-block .post-tag-filters tab a.active {
  --gradient: linear-gradient(90deg, #FF9D00 0%, #FF3434 100%);
}
.tootwi .twp-block.content-cards .bg-illustr {
  background-image: url('../img/pattern-tootwi.svg');
}
.tootwi .twp-block.steps-slider .pattern,
.tootwi .twp-block.pricing-cards .bg-illustr,
.tootwi .twp-block.checklist-icons .flex-row .title .pattern {
  background-image: url('../img/pattern-alt-tootwi.svg');
}
.tootwi .twp-block.selected-faq .bg-illustr,
.tootwi .twp-block.benefits-block .benefits .pattern {
  background-image: url('../img/pattern-plain-alt-tootwi.svg');
}
.tootwi .twp-block.cta-banner-alt .cta-wrapper .pattern,
.tootwi .twp-block.post-author .author-wrapper .pattern {
  background-image: url('../img/cta-tootwi.svg');
}
.tootwi .twp-block.feature-card.dark .cta.arrow-cta a {
  background: var(--border);
}
.tootwi .twp-block.feature-card.dark .cta.arrow-cta a svg path {
  fill: var(--border);
}
.keyclic {
  --gradient: linear-gradient(90deg, #22DADB 0%, #00C85F 100%);
  --border: #00C85F;
}
.keyclic .twp-block .tabs tab a.active,
.keyclic .twp-block .post-tag-filters tab a.active {
  --gradient: linear-gradient(90deg, #22DADB 0%, #00C85F 100%);
}
.keyclic .twp-block.content-cards .bg-illustr {
  background-image: url('../img/pattern-keyclic.svg');
}
.keyclic .twp-block.steps-slider .pattern,
.keyclic .twp-block.pricing-cards .bg-illustr,
.keyclic .twp-block.checklist-icons .flex-row .title .pattern {
  background-image: url('../img/pattern-alt-keyclic.svg');
}
.keyclic .twp-block.selected-faq .bg-illustr,
.keyclic .twp-block.benefits-block .benefits .pattern {
  background-image: url('../img/pattern-plain-alt-keyclic.svg');
}
.keyclic .twp-block.cta-banner-alt .cta-wrapper .pattern,
.keyclic .twp-block.post-author .author-wrapper .pattern {
  background-image: url('../img/cta-keyclic.svg');
}
.keyclic .twp-block.feature-card.dark .cta.arrow-cta a {
  background: var(--border);
}
.keyclic .twp-block.feature-card.dark .cta.arrow-cta a svg path {
  fill: var(--border);
}
.votim {
  --gradient: linear-gradient(90deg, #FF78E1 0%, #FF3434 100%);
  --border: #FF78E1;
}
.votim .twp-block .tabs tab a.active,
.votim .twp-block .post-tag-filters tab a.active {
  --gradient: linear-gradient(90deg, #FF78E1 0%, #FF3434 100%);
}
.votim .twp-block.content-cards .bg-illustr {
  background-image: url('../img/pattern-votim.svg');
}
.votim .twp-block.steps-slider .pattern,
.votim .twp-block.pricing-cards .bg-illustr,
.votim .twp-block.checklist-icons .flex-row .title .pattern {
  background-image: url('../img/pattern-alt-votim.svg');
}
.votim .twp-block.selected-faq .bg-illustr,
.votim .twp-block.benefits-block .benefits .pattern {
  background-image: url('../img/pattern-plain-alt-votim.svg');
}
.votim .twp-block.cta-banner-alt .cta-wrapper .pattern,
.votim .twp-block.post-author .author-wrapper .pattern {
  background-image: url('../img/cta-votim.svg');
}
.votim .twp-block.feature-card.dark .cta.arrow-cta a {
  background: var(--border);
}
.votim .twp-block.feature-card.dark .cta.arrow-cta a svg path {
  fill: var(--border);
}
body#solution-twimm {
  --gradient: linear-gradient(90deg, #22DADB 0%, #3261FF 100%);
}
body#solution-twimm .customer-logos:not(.twimm) {
  display: none;
}
body#solution-twimm .customer-logos.twimm {
  display: block !important;
}
body#solution-tootwi {
  --gradient: linear-gradient(90deg, #FF9D00 0%, #FF3434 100%);
}
body#solution-tootwi .customer-logos:not(.tootwi) {
  display: none;
}
body#solution-tootwi .customer-logos.tootwi {
  display: block !important;
}
body#solution-keyclic {
  --gradient: linear-gradient(90deg, #22DADB 0%, #00C85F 100%);
}
body#solution-keyclic .customer-logos:not(.keyclic) {
  display: none;
}
body#solution-keyclic .customer-logos.keyclic {
  display: block !important;
}
body#solution-votim {
  --gradient: linear-gradient(90deg, #FF78E1 0%, #FF3434 100%);
}
body#solution-votim .customer-logos:not(.votim) {
  display: none;
}
body#solution-votim .customer-logos.votim {
  display: block !important;
}
