@font-face {
  font-family: 'Kanit-light';
  font-display: swap;
  src: url(https://www.threatfabric.com/hubfs/Threatfabric/fonts/kanit/Kanit-Light.eot);
  src: url(https://www.threatfabric.com/hubfs/Threatfabric/fonts/kanit/Kanit-Light.eot#iefix) format('embedded-opentype'),
       url(https://www.threatfabric.com/hubfs/Threatfabric/fonts/kanit/Kanit-Light.otf) format('otf'),
       url(https://www.threatfabric.com/hubfs/Threatfabric/fonts/kanit/Kanit-Light.svg#Kanit-Light) format('svg'),
       url(https://www.threatfabric.com/hubfs/Threatfabric/fonts/kanit/Kanit-Light.ttf) format('truetype'),
       url(https://www.threatfabric.com/hubfs/Threatfabric/fonts/kanit/Kanit-Light.woff) format('woff'),
       url(https://www.threatfabric.com/hubfs/Threatfabric/fonts/kanit/Kanit-Light.woff2) format('woff2');
}

body {
  font-family: 'Kanit', sans-serif;
}

pre {
  overflow-x: scroll;
}

/* =========
* Header
* ====================== */

@media (min-width: 992px) {
  .header > div > div {
    align-items: flex-start;
  }
  .header .header-menu > .hs-menu-wrapper > ul > li > a {
    transition: all ease .5s;
    border: none;
    opacity: 1;
  }
  .header .header-menu > .hs-menu-wrapper > ul > li.active-branch > a, 
  .header .header-menu > .hs-menu-wrapper > ul > li.active > a, 
  .header .header-menu > .hs-menu-wrapper > ul > li:hover > a {
    border: none;
    border-color: transparent;
  }
  .header .header-menu > .hs-menu-wrapper > ul > li.active > a, 
  .header .header-menu > .hs-menu-wrapper > ul > li > a:hover {
    color: var(--primary);
  }
  .template-header-transparent .dnd-section:not([class*=force-full-width-section]):first-child:before {
    height: 210px!important;
  }
  .header .header-menu > .hs-menu-wrapper > ul > li > .hs-menu-children-wrapper {
    min-width: 16rem; 
  }
}
@media (max-width: 991px) {
  
  /* Mobile dropdown */
  .header .header-menu > .hs-menu-wrapper {
    top: 0;
    height: 100vh;
    max-height: 100vh;
    padding-top: 4rem;
    background-color: #233C45;
  }
 
  
  /* Logo */
  .header-inverted-logo img,
  .header-logo img {
    width: 55px!important;
  }
  
  /* Mobile Trigger */
  .header .header-menu .mobile-trigger {
    z-index: 31;
  }
  
  .hamburger-inner, 
  .hamburger-inner:after, 
  .hamburger-inner:before,
  .hamburger.is-active .hamburger-inner, 
  .hamburger.is-active .hamburger-inner:after, 
  .hamburger.is-active .hamburger-inner:before {
    background-color: #fff;
  }
  
  
  .template-header-transparent .dnd-section:not([class*=force-full-width-section]):first-child:before {
    height: 90px!important;
  }
  body.mobile-open {
    overflow: hidden;
  }
}

/* =========
* Fonts
* ====================== */
p,
.tf-light-font {
  font-weight: 300;
  word-break: break-word;
}
.btn-cta.btn-m a, .btn.btn-m, .hs-button {
  font-weight: 300;
}
.heading-primary h3 {
  line-height: 1.0; 
}
.content-module ul,
.content-module ol {
  font-weight: 300; 
}
.content-module ol + h2,
.content-module ul + h2,
.content-module p + h2 {
  margin-top: 4rem;
}

/* =========
* Icon
* ====================== */
.icon-xs i {
  font-size: 1rem;
}
.icon-sm i {
  font-size: 1.25rem;
}
.icon-md i {
  font-size: 1.5rem;
}
.icon-lg i {
  font-size: 2rem;
}
.icon-xl i {
  font-size: 2.5rem;
}
.icon-2xl i {
  font-size: 3rem;
}
.icon-3xl i {
  font-size: 4rem;
}

/* =========
* Arrow
* ====================== */
.tf-arrow-wrapper > .row-fluid {
  position: static;
}
.tf-arrow-image {
  position: absolute;
  bottom: 0;
  left: -6rem;
}
.tf-arrow-image img {
  height: auto!important;
}
@media (min-width: 1280px) {
  .tf-arrow-image {
    left: -2rem;
  }
}
@media (min-width: 992px) and (max-width: 1279px) {
  .tf-arrow-image {
    left: -11rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .tf-arrow-image {
    left: -17rem;
  }
}
@media (min-width: 768px) {
  .tf-arrow-wrapper {
    clip-path: polygon(0 70px,100% 0,100% 100%,0 100%);
    margin-bottom: -1px;
    margin-top: -70px;
    text-align: center;
    z-index: 3;
  }
  .tf-arrow-image {
    top: 6rem;
    bottom: auto;
  }
}
@media (max-width: 767px) {
  .tf-arrow-image-text {
    padding-bottom: 50%;
  }
  .tf-arrow-image {
    left: 0;
    bottom: 0;
  }
  .tf-arrow-wrapper {
    text-align: center;
    margin-top: -2rem;
    clip-path: polygon(0 30px, 100% 0, 100% 100%, 0 100%);
    z-index: 3;
    margin-bottom: -1px;
  }
}
/* =========
* Headlines
* ====================== */
.tf-headlines-linespace h1,
.tf-headlines-linespace h2,
.tf-headlines-linespace h3,
.tf-headlines-linespace h4 {
  line-height: 1;
  padding-bottom: 1rem;
}

/* =========
* List
* ====================== */
.light-list ul {
  font-weight: 300;
}
/* =========
* Homepage
* ====================== */
.tf-hp-benefits {
  clip-path: polygon(0 70px,100% 0,100% 100%,0 100%);
  margin-bottom: -1px;
  margin-top: -70px;
  text-align: center;
  z-index: 3;
}
.tf-hp-bg:after {
  content: '';
  display: block;
  position: absolute;
  pointer-events: none;
  left: 0;
  bottom: 0;
  background: #517D77;
  width: 100%;
  height: 340px;
  clip-path: polygon(0 100%, 100% 70%, 100% 86%, 0% 100%);
}
.tf-hp-bg > .row-fluid {
  padding: 6rem 0 0;
}
@media (min-width: 768px) {
  .tf-hp-bg > .row-fluid {
    background-image: url(https://www.threatfabric.com/hubfs/Threatfabric/images/hero-home.png);
    background-size: 1100px auto;
    background-repeat: no-repeat;
    background-position: right -150px bottom;
    min-height: 430px;
    padding: 6rem 0 10rem;
  }
  .tf-hp-benefits:after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    background-color: #efefef;
    height: 100%;
  }
}
@media (min-width: 1601px) {
  body .tf-hp-bg {
    background-position: calc(100% + -33px) calc(100% + 5px)!important;
    background-size: 75rem!important;
  }
}
@media (min-width: 768px) and (max-width: 1600px) {
  body .tf-hp-bg {
    background-position: calc(100% + 102px) calc(100% + 5px)!important;
    background-size: contain!important;
  }
}
@media (min-width: 546px) and (max-width: 767px) {
  .tf-hp-benefits:after {
    content: '';
    position: absolute;
    right: 0;
    width: 100%;
    background-color: #efefef;
    height: 35rem;
    bottom: 0;
    clip-path: polygon(0 30px, 100% 0, 100% 100%, 0 100%);
  }
}
@media (min-width: 451px) and (max-width: 545px) {
  .tf-hp-benefits:after {
    content: '';
    position: absolute;
    right: 0;
    width: 100%;
    background-color: #efefef;
    height: 35rem;
    bottom: 0;
    clip-path: polygon(0 30px, 100% 0, 100% 100%, 0 100%);
  }
}
@media (max-width: 450px) {
  .tf-hp-benefits:after {
    content: '';
    position: absolute;
    right: 0;
    width: 100%;
    background-color: #efefef;
    height: 35rem;
    bottom: 0;
    clip-path: polygon(0 30px, 100% 0, 100% 100%, 0 100%);
  }
}
@media (max-width: 767px) {
  .tf-hp-benefits {
    clip-path: polygon(0 30px,100% 0,100% 100%,0 100%);
    margin-bottom: -1px;
    margin-top: -70px;
    text-align: center;
    z-index: 3;
  }
  .tf-hp-bg:after {
    clip-path: polygon(0 87%,100% 72%,100% 83%,0 115%);
  }
  body .tf-hp-bg {
    background-position: right bottom !important;
    background-size: contain!important;
  }
  .tf-2col-icon-box,
  .tf-1col-icon-box {
    padding-top: 2rem;
  }
  .tf-1col-icon-box > div,
  .tf-2col-icon-box > div > div {
    display: flex;
    align-items: center;
  }
  .tf-2col-icon-box > div > div > div:nth-child(2),
  .tf-1col-icon-box > div > div:nth-child(2) {
    width: 100%;
    margin-top: 0;
    padding-left: 1rem;
  }
  .tf-hp-recent-blogs .blog-item > a {
    margin-bottom: 1rem!important;
    border-radius: 0;
    max-width: 306px;
    width: 100%;
    margin: auto;
    height: 160px;
    padding: 0;
  }
  .tf-hp-recent-blogs .blog-item .mh-item h4 {
    font-size: 20px;
    margin-bottom: 0;
  }
  .tf-hp-recent-blogs .blog-item .mh-item p {
    font-size: 1rem;
  }
  .tf-hp-gartner-mb-height {
    height: 27rem;
  }
  .tf-hp-gartner-mb-height > div {
    height: 100%;
  }
  .tf-hp-gartner-02 > div > div:nth-child(2) {
    bottom: 2rem;
    position: absolute;
  }
  .tf-hp-icon-boxes .icon-only.icon-3xl {
    height: 2rem;
    width: 2rem;
  }
  .tf-hp-icon-boxes .icon-only.icon-3xl i {
    font-size: 2rem;
  }
  .tf-homepage-visibility h2 {
    font-size: 3rem;
  }
}

@media (min-width: 768px) and (max-width: 880px) {
  .tf-homepage-visibility h2 {
    font-size: 2.9rem;
  }
}

.dnd_area-row-0-background-image {
  background-size: 1100px auto !important;
  background-repeat: no-repeat !important;
  background-position: right -150px bottom !important;
}

/* =========
* News
* ====================== */
.tf-news-banner::before {
  content: '';
  display: block;
  position: absolute;
  pointer-events: none;
  left: 0;
  bottom: 0;
  background: #9ACA3C;
  width: 100%;
  height: 500px;
  clip-path: polygon(50% 100%, 100% calc(100% - 7vw), 100% 100%, 50% 100%, 0 100%, 0 calc(100% - 7vw));
  z-index: 1;
}
.tf-news-banner::after {
  content: '';
  display: block;
  position: absolute;
  pointer-events: none;
  left: 0;
  bottom: 0;
  background: white;
  width: 100%;
  height: 500px;
  clip-path: polygon(50% 100%, 100% calc(100% - 3.5vw), 100% 100%, 50% 100%, 0 100%, 0 calc(100% - 3.5vw));
  z-index: 1;
  margin-bottom: -1px;
}
@media (min-width: 1680px) {
  .tf-news-hacker {
    margin-bottom: -9rem;
  }
}
@media (min-width: 992px) and (max-width: 1679px) {
  .tf-news-hacker {
    margin-bottom: -7rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .tf-news-hacker {
    margin-bottom: -5rem;
  }
}
@media (max-width: 767px) {
  .tf-news-hacker {
    margin-bottom: -6rem;
    transform: rotate(8deg);
    z-index: 0;
  }
  .tf-news-banner::before {

  }
}

/* =========
* Solutions
* ====================== */
.th-fraud-risk-section {
  position: relative;
  width: 100%;
  clip-path: polygon(0 0,50% 11%,100% 0,100% 100%,50% 100%,0 100%);
  padding-top: 12rem;
  margin-top: -8rem;
}
.th-fraud-risk-section:before {
  display: block;
  width: 767px;
  height: 780px;
  background: #395657;
  position: absolute;
  top: -58px;
  clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  left: 50%;
  right: 50%;
  transform: translate(-50.7%, -50%);
  z-index: 1;
}
.tf-solution-bottom-slant {
  text-align: center;
  padding: 8rem 0;
  z-index: 3!important;
  margin-top: -70px;
  clip-path: polygon(0 70px, 100% 0, 100% 100%, 0 100%);
}
@media (min-width: 1281px) and (max-width: 1366px) {
  .th-fraud-risk-section:before {
    transform: translate(-50.8%,-50%);
    width: 56%;
  }
}
@media (min-width: 1281px) and (max-width: 1153px) {
  .th-fraud-risk-section:before {
    transform: translate(-50.6%,-50%);
    width: 57%;
  }
}
@media (min-width: 332px) and (max-width: 1152px) {
  .th-fraud-risk-section:before {
    transform: translate(-50%,-50%);
    width: 56%;
  }
}
@media (min-width: 992px) and (max-width: 1366px) {
  .th-fraud-risk-section {
    clip-path: polygon(0 0,50% 9%,100% 0,100% 100%,50% 100%,0 100%);
  }
}
@media (min-width: 992px) {
  .tf-solution-banner {
    padding-bottom: 14rem;
  }
  .tf-solution-bottom-slant {
    clip-path: polygon(0 70px, 100% 0, 100% 100%, 0 100%);
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .tf-solution-bottom-slant {
    clip-path: polygon(0 50px, 100% 0, 100% 100%, 0 100%);
  }
}
@media (min-width:992px) {
  .th-fraud-risk-section:before {
    content: "";
  }
}
@media (max-width: 991px) {
  .th-fraud-risk-section {
    clip-path: polygon(-40% 0,50% 11%,140% 0,100% 100%,50% 100%,0 100%);
    margin-top: -12rem;
  }
}

@media (max-width: 767px) {
  .tf-solution-bottom-slant {
    clip-path: polygon(0 35px, 100% 0, 100% 100%, 0 100%);
  }
}

@media (min-width:768px) {
  .th-fraud-risk-section .row-fluid > div > div > div > div .span8 .span6:last-child, 
  .th-fraud-risk-section > .row-fluid .span8 {
    margin-left: 1.5rem;
  }
}

/* =========
* 2 Col Icon Box
* ====================== */
.tf-2col-icon-box > div > div > div:first-child {
  margin-top: 0;
}
@media (min-width: 992px) {
  .tf-2col-icon-box > div > div {
    align-items: center;
  }
  .tf-2col-icon-box > div > div > div:last-child {
    padding-left: 1rem;
  }
}
/* =========
* Icon Box Module
* ====================== */
.icon-box-module li {
  font-weight: 300;
}

/* =========
* Flip Horizontal
* ====================== */
.tf-flip-divider {
  transform: scaleY(-1);
}

/* =========
* Contact Form
* ====================== */
.tf-contact-form .hs-form-booleancheckbox-display span,
.tf-forms-checkbox .hs-form-booleancheckbox-display span {
  font-size: 1rem;
}
.tf-contact-form .hs_submit.hs-submit {
  margin-top: 2rem;
}
.tf-contact-form .hs-form-field .hs-input,
.tf-forms-checkbox .hs-form-field .hs-input {
  padding: 0.5rem!important;
}
.tf-contact-form .hs-form-field > label,
.tf-forms-checkbox .hs-form-field > label {
  font-size: 1rem;
  margin-bottom: 0.25rem;
  font-weight: 300;
}

.tf-contact-map-section {
  width: 100%;
  margin-top: -5rem;
  z-index: 3;
  clip-path: polygon(0 70px, 100% 0, 100% 100%, 0 100%);
  background: #efefef;
}

@media (min-width: 992px){
  .tf-contact-form {
    margin-top: -20rem;
    margin-bottom: -38rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .tf-contact-us-form-section > .row-fluid {
    flex-wrap: wrap;
  }
  .tf-contact-us-form-section > .row-fluid .span5,
  .tf-contact-us-form-section > .row-fluid .span6,
  .tf-contact-us-form-section > .row-fluid .span7 {
    width: 100%;
    margin-left: 0;
  }
  .tf-contact-form {
    margin-top: -8rem;
    margin-bottom: -9rem;
  }
}
@media (max-width: 767px) {
  .tf-contact-form {
    margin-top: -7rem;
    margin-bottom: -7rem;
  }
  .tf-contact-map-section {
    clip-path: polygon(0 70px, 100% 0, 100% 100%, 0 100%);
  }
}

/* =========
* Resources Pages
* ====================== */
.tf-resources-forms {
/* height: 850px; */
  height: auto;
  right: -60px;
  bottom: -100px;
  margin-bottom: -4rem;
  padding-bottom: 6rem;
  z-index: 0;
}
.tf-resources-forms .offer-module {
  height: 100%;
}

@media (min-width: 1281px) {
  .resources-pages-header > .row-fluid > .dnd-column:first-child .row-fluid-wrapper {
    padding-left: 23px;
  }
}
@media (min-width: 1201px) {
  .resources-pages-header > .row-fluid > .dnd-column:first-child .row-fluid-wrapper {
    width: 600px;
  }
}
@media (min-width: 992px) and (max-width: 1200) {
  .resources-pages-header > .row-fluid > .dnd-column:first-child .row-fluid-wrapper {
    width: 50%;
  }
}
@media (min-width: 992px) {
  .resources-pages-header {
    padding-top: 15rem;
  }
  .resources-pages-header > .row-fluid > .dnd-column:first-child {
    margin-top: 100px;
  }
  .resources-pages-header > .row-fluid > .dnd-column:first-child .row-fluid-wrapper {
    margin-left: auto;
  }
  .tf-resources-forms-large-content {
    height: 1179px!important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .resources-pages-header {
    padding-top: 5rem;
  }
  .resources-pages-header > .row-fluid > .dnd-column:first-child {
    margin-top: 100px;
  }
  .tf-resources-forms {
/*     height: 820px; */
    height: auto;
    right: -20px;
  }
  .tf-resources-forms-large-content {
    height: 1377px!important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .tf-resources-trial {
    clip-path: polygon(0 40px,100% 0,100% 100%,0 100%)!important;
  }
}
@media (min-width: 768px) {
  .tf-resources-forms:before {
    content: '';
    display: block;
    background-color: #3A5D5E;
    clip-path: polygon(100% 50%, 0% 100%, 100% 100%);
    position: absolute;
    left: 0;
    top: -3.5rem;
    height: 3.5rem;
    width: 100%;
  }
  .tf-resources-forms:after {
    content: '';
    display: block;
    margin-top: 50px;
    background-color: #3A5D5E;
    clip-path: polygon(100% 0%, 5% 100%, 100% 100%);
    width: 30px;
    height: 100%;
    position: absolute;
    left: -30px;
    bottom: 0;
  }
  .tf-resources-trial {
    text-align: center;
    margin-top: -70px;
    clip-path: polygon(0 70px, 100% 0, 100% 100%, 0 100%);
    z-index: 3;
    margin-bottom: -1px;
  }
  .tf-resources-forms .form-module {
    height: 100%;
  }
}
@media (max-width: 767px) {
  .resources-pages-header {
    padding-left: 0;
    padding-right: 0;
  }
  .resources-pages-header {
    padding-top: 4rem;
  }
  .resources-pages-header > .row-fluid > .dnd-column:first-child {
    margin-top: 100px;
    padding: 0 20px;
  }
  .tf-resources-forms {
    height: 560px;
    right: -20px;
  }
  .tf-resources-forms {
    height: auto;
    bottom: -2.5rem;
    left: 0;
    right: 0;
    z-index: 3;
    clip-path: polygon(0 30px, 100% 0, 100% 100%, 0 100%);
  }
  .tf-resources-trial {
    text-align: center;
    margin-top: -2rem;
    clip-path: polygon(0 30px, 100% 0, 100% 100%, 0 100%);
    z-index: 3;
    margin-bottom: -1px;
  }
  .tf-resources-forms .form-module {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
}

/* =========
* Blog Post
* ====================== */
.blog-post-02 .toc-content h2:before, 
.blog-post-02 .toc-content h3:before {
  display: none;
}
.blog-post-02 .toc-content ul,
.blog-post-02 .toc-content ol {
  font-weight: 300; 
}
.blog-post-02 .blog-post-01_content {
  background-color: #EFEFEF;
}
.blog-post-01_content .content-wrapper p {
  word-break: break-word;
}
.blog-post-02 .toc-content h2 {
  font-size: 2.25rem;
  margin-bottom: 1.5rem;
}
.blog-post-02 .toc-content ul + h2,
.blog-post-02 .toc-content ol + h2,
.blog-post-02 .toc-content p + h2 {
  margin-top: 4rem;
}
.blog-post-02 .toc-content img {
  border: 3px solid var(--gray-300);
}
.blog-post-02 .toc-content table {
  width: 100%;
  min-width: 100%;
  border: 2px solid!important;
  text-align: left;
  font-weight: 300;
}
.blog-post-02 .toc-content table td, 
.blog-post-02 .toc-content table th {
  word-break: break-all;
}
/* TOC */
.blog-post-02 .toc > .toc-list {
  padding: 0;
}
.blog-post-02 a.toc-link {
  font-size: 1rem;
  font-weight: 300;
  padding-bottom: 0.25rem;
  padding-top: 0.25rem;
  display: block;
  color: #000;
}
.blog-post-02 .toc-link:before {
  margin-top: -10px;
  display: none;
}

/* Code Format in Blog Post */
.blog-post-02 .toc-content pre {
  border: 1px solid grey;
  padding: 0.5rem!important;
/*   background-color: #EFEFEF; */
}

/* Add bit of margin below blog tags when they wrap to new line */
.blog-post-02 .blog-post-01_banner .heading-primary .mb-4 span.uppercase {
  margin-bottom: 4px;
  display: inline-block;
  background-color: var(--secondary);
}

@media (max-width: 991px) {
  .blog-post-02 .blog-post-01_content {
    background-color: #fff;
  }
}

/* ====
*  Hero
* ===== */

.hero-repeater h1 {
  line-height: 1;
  margin-bottom: 2rem;
}
.hero-repeater h4 {
/*   color: white; */
}
.hero-repeater .hero-item .container > div > div.relative {
  padding: 2rem 2rem 6rem 2rem !important;
}
/* Add background blur effect to first column of hero section */
.hero-repeater .hero-item > div.relative > div {
  backdrop-filter: blur(5px);
  box-shadow: 0 0 2rem #233c4599;
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.5)) !important;
  background-position: left top !important;
  background-size: auto !important;
  background-repeat: no-repeat !important;
}

.hero-repeater .hero-item > div.relative .ds:w-2/5 {
/*   width: auto;  */
}

.hero-repeater .hero-item {
/*   padding-bottom: 0; */
}

/* =========
*  Tables
* ====================== */
.tf-table {
  overflow: auto;
}
.tf-table table {
  width: 100%;
  min-width: 100%;
  border: none!important;
}
.tf-table table thead {
  border-bottom: 1px solid #e2e7ea;
}
.tf-table table tr {
  border-left: 0;
  border-right: 0;
}

/* =========
*  Why ThreatFabric
* ====================== */
.tf-bottom-right-bg.dnd_area-row-1-background-image {
  background-position: calc(100% - -200px) calc(100% - -5px)!important;
}
@media (min-width: 1025px) {
  .image-module.relative.tf-about-magnify-img {
    margin-bottom: -10rem;
  }
}
@media (min-width: 992px) and (max-width: 1024px) {
  .image-module.relative.tf-about-magnify-img {
    margin-bottom: -22rem;
  }
}
@media (max-width: 991px) {
  .tf-bottom-right-bg.dnd_area-row-1-background-image {
    background-image: unset!important;
  }
}
@media (max-width: 767px) {
  .image-module.relative.tf-about-magnify-img {
    margin-bottom: -60px;
  }
}


/* =========
*  404
* ====================== */
.tf-404-footer-inner:before {
  content: '';
  display: block;
  position: absolute;
  pointer-events: none;
  width: 100%;
  height: 60px;
  background: #9ACA3C;
  bottom: 20px;
  clip-path: polygon(-35% 65px, 100% 0, 100% 100%, 0 100%);
  left: 0;
}

.tf-clear-404 {
  background: #517D77;
  margin-top: -66px;
  z-index: 3;
  /*clip-path: polygon(0 30px, 100% 0, 100% 100%, 0 100%);*/
  clip-path: polygon(-50% 70px, 100% 0, 100% 100%, 0 100%);
  padding-top: 120px;
}

.tf-clear-404:after {
  content: '';
  display: block;
  background: #233C45;
  margin-top: -80px;
  clip-path: polygon(0 55px, 100% 0, 100% 100%, 0 100%);
  z-index: 9;
  padding-top: 120px;
}
@media (min-width: 992px) {
  .system-template-404:after {
    content: '';
    display: block;
    position: absolute;
    pointer-events: none;
    width: 100%;
    height: 70px;
    background: #233C45;
    top: calc(100% - 1px);
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 70px), calc(100% - 100px) 100%, calc(100% - 100px) 100%, 0 calc(100% - 70px));
    left: 0;
  }
  .template-header-transparent .system-template-404.dnd-section:not([class*=force-full-width-section]):first-child:before {
    height: 70px!important;
    content: '';
    display: block;
    position: absolute;
    pointer-events: none;
    width: 100%;
    height: 70px;
    background: #9ACA3C;
    top: calc(100% - 1px);
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 35px), calc(100% - 100px) 100%, calc(100% - 100px) 100%, 0 calc(100% - 35px));
    left: 0;
    margin-top: 1px;
  }
}
@media (max-width: 991px) {
  .template-header-transparent .system-template-404.dnd-section:not([class*=force-full-width-section]):first-child:before {
    content: '';
    display: block;
    position: absolute;
    pointer-events: none;
    width: 100%;
    height: 70px!important;
    background: #9ACA3C;
    bottom: -69px;
    left: 0;
    clip-path: polygon(100% 0,100% 12px,0 calc(100% - 22px),0 29px);
  }
  .system-template-404:after {
    content: '';
    display: block;
    position: absolute;
    pointer-events: none;
    width: 100%;
    height: 70px;
    background: #233C45;
    top: calc(100% - 1px);
    clip-path: polygon(0 0, 100% 0, 0 calc(100% - 35px));
    left: 0;
  }
}

/* =========
* Footer
* ====================== */
footer .footer-inline-menu a {
  font-size: 18px;
  font-weight: 300;
  letter-spacing: 1px;
}
footer .footer-inline-menu a:before {
  display: none;
}
@media (max-width: 767px) {
  footer > .footer-row:first-child > .container > div > div:first-child > div > div > div {
    width: 30%;
  }
}

/** Modifications Revisions #2 **/
/** remove shadows below buttons **/
.btn-cta.btn-m a, .btn.btn-m, .hs-button {
  box-shadow: none;
}

/** normal fonts for news items **/
.tf-news-items {
  font-weight: 300;
}

/** homepage why tf icons **/
.tf-homepage-why-tf-icons i {
  font-size: 6rem;
}


/* =========
* Buttons
* ====================== */
.btn-cta.btn-m a, .btn.btn-m, .hs-button {
  font-size: 18px;
  font-weight: 300;
  letter-spacing: 1px;
  line-height: 1.5;
  margin: 0;
  padding: 8px 16px;
}

/* =========
* Partners
* ====================== */
.tf-partners-ecosystem {
  max-width: 2040px!important;
  width: 100%;
  height: 650px!important;
}
.tf-partners-ecosystem > div > div {
  width: 100%;
}
.tf-partners-ecosystem > div > div > div {
  height: 650px!important;
  width: 100%;
}
.image-module.relative.tf-partners-ecosystem img {
  max-width: unset!important;
  width: 160%;
  height: 100%!important;
  position: absolute;
  top: 0;
  right: -55%;
  object-fit: contain;
}
@media (min-width: 768px) and (max-width: 991px) {
  .image-module.relative.tf-partners-ecosystem img {
    right: -65%;
  }
}
@media (max-width: 767px) {
  .tf-partners-ecosystem {
    height: 100%!important;
  }
  .tf-partners-ecosystem > div > div > div {
    height: auto!important;
  }
  .image-module.relative.tf-partners-ecosystem img {
    position: unset;
  }
}

/* =========
* Map
* ====================== */
.tf-contact-map::before {
  content: '';
  background: var(--primary);
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 145px;
  padding-top: 26px;
  transform: skew(0, -2deg);
  z-index: 3;
}
.tf-contact-map::after {
  content: '';
  background: var(--secondary);
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 85px;
  padding-top: 70px;
  transform: skew(0, -2deg);
  z-index: 3;
}
@media (min-width: 992px) and (max-width: 1679px) {
  .tf-contact-map:before {
    bottom: 105px;
  }
  .tf-contact-map:after {
    bottom: 45px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .tf-contact-map:before {
    bottom: 107px;
  }
  .tf-contact-map:after {
    bottom: 50px;
  }
}
@media (max-width: 767px) {
  .tf-contact-map:before {
    bottom: 88px;
  }
  .tf-contact-map:after {
    bottom: 27px;
  }
}

/* =====================
* Rich text content
* ====================== */

.widget-type-rich_text li {
  font-weight: 300; 
}

.small-headings h2, {
  font-size: 250%;
}
.small-headings h3 {
  font-size: 150%;
}

/* Image shift up (used for Fusion Fireside) */
.image-shift-up {
  margin-top: -13rem; 
}

/* Ugly fix to enforce full size image for Fusion Fireside blog (avoid cropped featured images) */
.blog-module.grid.grid-cols-1 img.object-cover {
  object-fit: contain;
}
/* Multi-level nested lists numbering for terms */
.terms ol {
  counter-reset: section;
  list-style-type: none;
  margin-top: 3rem;
  padding-left: 0;
}
.terms li {
  display: block;
  margin-bottom: 3rem;
}
.terms li ol li {
  margin-bottom: 1rem; 
}
.terms li ul li {
  margin-bottom: 0; 
}
.terms ol li:before {
  counter-increment: section;
  content: counters(section, ".") ". ";
  min-width: 3rem;
  display: inline-block;
  font-weight: 500;
}
.terms ul {
  list-style-type: disc;
}
.terms ul li:before {
  content: "• ";
}
.terms ol ol,
.terms ol ul {
  padding-left: 0;
  margin-top: 1rem;
}
.terms ol li li {
  padding-left: 3rem;
  text-indent: -1.5rem;
/*   color: red !important; */
}
.terms ol li li:before {
  min-width: 1.5rem;
  font-weight: 300;
}
.terms ol li li li {
  padding-left: 2rem;
  text-indent: -1rem;
}
.terms ol li li li:before {
  min-width: 1rem;
  font-weight: 300;
}
.terms ol[type="a"] li:before {
  content: counter(section, lower-alpha) ") ";
/*   color: blue; */
}

/* Add background blur effect to first column of hero section */
.dnd_area-row-0-background-image > .row-fluid > .dnd-column:first-child {
  backdrop-filter: blur(5px);
  box-shadow: 0 0 2rem #233c4599;
}
/* No background blur effect for landing pages */
.hs-landing-page .dnd_area-row-0-background-image > .row-fluid > .dnd-column:first-child {
  backdrop-filter: none;
  box-shadow: none;
}

.zz-top {
  z-index: 10001;
}

/* Tweaked negative margin for homepage image on mobile */
@media (min-width: 768px) and (max-width: 991px) {
  .product-overview-image {
    margin-top: -250px !important;
  }
}  
@media (max-width: 767px) {
  .product-overview-image {
    margin-top: -200px !important;
  }
}