/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/**
 * Variables
 */
:root {
  --red: #C1272D;
  --white: #ffffff;
}

/**
 * FONTS
 */
@font-face {
  font-family: "Avenir";
  src:  url("fonts/Avenir Regular.ttf") format("ttf")
 /* font-weight: normal;*/
}

@font-face {
  font-family: "Avenir Medium";
  src:  url("fonts/AvenirLTStd-Medium.otf") format("opentype")
  /*font-weight:bold;*/
}

/*@font-face {
  font-family: "Avenir";
  src:  url("/fonts/Avenir Heavy.ttf") format("ttf")
  font-weight: 900;
}*/
@font-face {
  font-family: "Avenir Heavy";
  src:  url("fonts/AvenirLTStd-Heavy.otf") format("opentype")
  /*font-weight: 900;*/
}

/* 
 * Typography 
 */
h1,h2,h3,h4,h5 {
    font-family: "Avenir Heavy";
   /* font-weight:bold;*/
   /*font-weight:600;*/
}

h1 {
    font-size: 49px;
}
h2 {
    font-size: 32px;
}
h3 {
    font-size: 24px;
}
h4 {
    font-size: 20px;
}
h5 {
    font-size: 14px;
}
p {
    margin-bottom:20px;
    font-size: 18px;
    /*line-height:21px;*/
}
.sub-header .fl-heading-text {
    letter-spacing: 2.22px;
    /*line-height: 27px;*/
}
ul {
    margin-left: 20px;
}
.fl-module-content ul li {
    list-style-type: square;
}
.fl-module-content ul li::marker {
    color:var(--red);
}
@media (max-width: 768px) {
    /*h1 {
        font-size: 49px;
    }
    h2 {
        font-size: 32px;
    }*/
    /*h3 {
        font-size: 24px;
    }
    h4 {
        font-size: 20px;
    }
    h5 {
        font-size: 14px;
    }*/
    .sub-header {
        font-size: 20px;
    }
}
p a {
    color:var(--red);
}


/**
 * Header
 */

header.site-header {
    background: #050505;
    border-bottom: 4px solid var(--red);
}
.inside-header {
    padding: 15px 40px;
}

/*
 * Primary header menu
 */

#primary-header-menu li {
    display:inline-block;
    position: relative;
}
#primary-header-menu li > a {
    font-family: "Avenir Heavy";
    color:var(--white);
    font-size: 14px;
    /*font-weight:bold;*/
    text-transform: uppercase;
}
#primary-header-menu > ul > li > a  {
 padding: 28px 56px;    
}
#primary-header-menu li > a:hover {
    color:var(--red);
}
#primary-header-menu {
    margin-left:40px;
}
#primary-header-menu ul {
    margin:0px;  
}
.menu-toggle{
    line-height: unset;
}
.main-navigation .menu-bar-item>a {
     line-height: unset; 
     
}
.navigation-search input[type="search"] {
        color:#fff;
        height: 35px!important;
        opacity: 1 !important;
    
}
.navigation-search input[type="search"], 
.navigation-search input[type="search"]:active, 
.navigation-search input[type="search"]:focus, 
.main-navigation .main-nav ul li.search-item.active > a, 
.main-navigation .menu-bar-items .search-item.active > a,
.main-navigation .menu-bar-item:hover > a, .main-navigation .menu-bar-item.sfHover > a {
    background-color: #000 !important;
    color:white !important;
}
.menu-bar-item .icon-search img {
    margin-top: 3px;
}
/* Change the white to any color */
/*input[type="search"]:-webkit-autofill,
input[type="search"]:-webkit-autofill:hover, 
input[type="search"]:-webkit-autofill:focus, 
input[type="search"]:-webkit-autofill:active
{
 background-color: #000;
}*/
.search-wrapper {
    position: relative;
    width: 250px;
    border: 2px solid var(--red);
    display: none;
    transition: all 100ms ease-in-out;
        margin-right: -54px;
    z-index: 99;
}
.search-wrapper.search-open {
    display: inline-flex;
}
.search-wrapper .icon-search {
    margin:0px 10px;
}
.navigation-search {
    position: relative !important;
    left: 0;
    right: 0;
    pointer-events: auto;
    visibility: visible;
    opacity: 1;
}

#primary-header-menu .sub-menu {
    display:none;
    background-color: var(--red);
    position: absolute;
    z-index: 9;
    padding: 0 20px;
    top: 48px;
    z-index: 100;
    padding: 0px;
    left:0;
    right:0;
}
#primary-header-menu .sub-menu li {
    display:block;
    text-align:center;
    border-bottom:1px solid #FFFFFF;
}
#primary-header-menu .sub-menu li:last-child {
    border-bottom: 0;
}
#primary-header-menu .sub-menu li a{
    padding:15px 0;
    display:block;
}
#primary-header-menu .sub-menu li a:hover {
    color:black;
}
#primary-header-menu > ul > li:hover > .sub-menu{
    display:block;
}

/* Third sub menu */
#primary-header-menu .sub-menu .menu-item-has-children:hover .sub-menu {
    display: block;
    position: absolute;
    left: 100%;
    /* border-left: solid 3px #fff; */
    top: 0;
    width: 100%;
}


/*
 *Primary menu (collapsed)
 */
.has-inline-mobile-toggle .mobile-menu-control-wrapper {
    display: flex;
    flex-wrap: wrap;
}
.main-navigation .menu-toggle, .sidebar-nav-mobile:not(#sticky-placeholder) {
    display: block;
}
.main-navigation, .main-navigation ul ul {
    background-color: transparent !important;
}
.mobile-menu-control-wrapper svg {
    color:var(--white);
}

.menu-toggle .icon-menu-bars svg {
    width: 28px;
    height: 29px;
}

.sub-menu-right.toggled .menu-toggle svg:last-child{
        height: 40px;
    width: 40px;
}
.sub-menu-right.toggled .menu-toggle{
        position: absolute;
    top: 20px;
    right: 30px;
}
.sub-menu-right.toggled .menu-toggle svg:hover {
    opacity: 0.8;
}
.main-navigation .menu-toggle {
    padding-right:0;
}
.menu-toggle svg:last-child{
    height: 28px;
    width:28px;
    color:var(--red);

}

.main-navigation .main-nav ul li > a {
    color: #FFFFFF;
      font-family: "Avenir Heavy";
      font-size: 24px;
      /*font-weight: 600;*/
      letter-spacing: 0.5px;
      line-height: 40px;
      text-transform: uppercase;
      padding-left: 0px;
        padding-right: 0px;
}

.main-navigation .main-nav ul li > a > li > a {
    color: #FFFFFF;
      font-family: "Avenir Heavy";
      font-size: 22px;
  /*font-weight:600;*/
  letter-spacing: 0.31px;
  line-height: 37px;
}
#primary-menu ul li[class*="current-menu-"] > a {
    background:transparent !important ;
    color:white ;
}
#primary-menu > ul > li.current-menu-item > a,
#primary-menu > ul > li > .sub-menu > li.current-menu-item > a,
#primary-menu > ul > li.current-menu-parent > a,
#primary-header-menu > ul > li.current-menu-parent > a {
    color:var(--red) !important;
}
.main-navigation .main-nav ul li:hover > a, .main-navigation .main-nav ul li:focus > a, .main-navigation .main-nav ul li.sfHover > a, .main-navigation .menu-bar-item:hover > a, .main-navigation .menu-bar-item.sfHover > a,
.main-navigation .main-nav ul ul li:hover > a, .main-navigation .main-nav ul ul li:focus > a, .main-navigation .main-nav ul ul li.sfHover > a {
    color: var(--red) !important;
    background-color: transparent !important;
}
#site-navigation .inside-navigation {
    padding-left: 35px;
    padding-right: 35px;
}
/**
 * Submenu
 */
#primary-menu .sub-menu {
    position: relative;
    top: 0;
    left: auto!important;
    right: auto!important;
    width: 100%;
    pointer-events: auto;
    height: auto;
    opacity: 1;
    display: block;
    visibility: visible;
    margin-bottom:20px;
}
#primary-menu .sub-menu:last-child {
    margin-bottom: 5px;
}
#primary-menu .sub-menu a {
    color: #FFFFFF;
      font-family: "Avenir Medium";
      font-size: 20px;
      /*font-weight: bold;*/
     padding:0px 20px 0px 20px;
     line-height: 34px;
     text-transform: capitalize;
}
#primary-menu .sub-menu .sub-menu a{
    margin-left: 20px;
}
.dropdown-menu-toggle {
    display: none !important;
}

.menu-item-156 .sub-menu .current_page_item a{
    color:white !important;
}
.main-navigation.toggled .main-nav li {
    display: inline-block !important;
    width: 75%;
}
@media (min-width: 768px) {
    #page .search-wrapper{
            display: none ;
        }

}
@media (max-width: 768px) {
    #site-navigation.toggled {
        position: absolute;
        top: 73px;
        left: 0;
        right: 0;
        margin-top:0 !important;
        padding-top:15px;
        background:#000 !important;
      /*  padding-left: 35px;
        padding-right: 35px;*/
    }
    #site-navigation .inside-navigation {
        background:#000;
        
    }
    .main-navigation .main-nav ul li > a {
        /*font-size:32px;*/
        font-size:18px;
        padding-left: 0px;
        padding-right: 0px;
        line-height: 28px;
    }
    .main-navigation.toggled .main-nav li {
        width: 85%;
    }
    #primary-menu .sub-menu a {
        font-size:18px;
        line-height: 16px;
        margin-bottom: 8px;
    }
    #primary-menu .sub-menu a:first-child{
        margin-top: 5px;
    }
    #primary-menu .sub-menu {
        margin-bottom: 10px;
    }
    #primary-menu .sub-menu .sub-menu a {
        font-size: 16px;
    }
    .inside-nav-footer {
        margin-top: 10px !important;
    }
    .inside-nav-footer p {
        font-size: 12px !important;
    }

    .main-navigation .menu-bar-item>a {
        padding-right: 0;
    }
    .has-inline-mobile-toggle #site-navigation.has-active-search {
        margin-top: 0 !important;
    }
    #mobile-menu-control-wrapper .search-wrapper{
        display: none !important;
    }
    #page .search-wrapper {
        z-index: 999;
            background: #000;
            border: none;
            padding: 10px 40px;
            width: 100%;
            margin: 0;
            position: fixed;
    }
}


/**
 * Fixed header + scroll
 */
body > #page{
    padding-top: 73px;
}

.fl-builder-edit #page {
    padding-top: 44px !important;
}
/*header.scrolled {*/
 header {
    position: fixed !important;
    top:0;
    right:0;
    left:0;
    z-index: 999;
    
}
.admin-bar header {
    top:32px;
}
@media (max-width: 768px) {
    .admin-bar header {
        top:46px;
    }
}

/* Software tab sticky*/
/*.tab-menu-sticky,*/
.wrapper--tab-menu-sticky {
    position: fixed;
    top:0px;
    right:0;
    left:0;
    z-index: 999;
    background: white;
    display: none;
}
.wrapper--tab-menu-sticky {
    display: none;
    width: 100%;
    padding: 10px;
}
.wrapper--tab-menu-sticky .tab-menu {
    
    max-width: 1240px;
    margin: auto;
}
.wrapper--tab-menu-sticky li {
    padding: 10px 20px !important;
}
.admin-bar .wrapper--tab-menu-sticky {
    top:32px;
}

/**
 * Nav Footer
 */
.inside-nav-footer {
    display: flex;
    justify-content: space-between;
    flex-basis: 100%;
    order: 4;
    border-top: 1px solid var(--red);
    color:white;
    padding: 3px 0px 15px;
    margin-top:20px;
    align-items: center;
}
@media (max-width: 768px) {
    .toggled .inside-nav-footer {
        display: flex !important;
    }
}

.inside-nav-footer p {
    color:white;
    font-family: "Avenir Heavy";
  font-size: 14.1px;
  /*font-weight: bold;*/
  letter-spacing: 0;
  line-height: 19px;
  margin-bottom:0px;
}


/**
 * CONTACT PAGE
 */
#map-office, #map-lab {
    height:450px;
}
.page-id-152 #map-lab {
    height:570px;
}
.gm-style img {
    max-width: none;
}
.geo-form .frm_form_field > input,
.geo-form .frm_form_field textarea{
    background-color: transparent !important;
    border: 0;
    border-bottom: solid 1px white;
    border-radius: 0;
    padding: 0;
    color: #E8E8E8;
    font-family: "Roboto";
    font-size: 20px;
    width: 100%;
}
.geo-form .frm_form_field > input{
        padding: 0 0 10px 0;
}
.geo-form .frm_form_field {
    margin-bottom:25px;
}
.geo-form .frm_form_field *::placeholder {
    font-size: 20px;
    color: #E8E8E8;
    font-family: "Roboto";
}
/*input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active  {
  transition: background-color 5000s;
  -webkit-text-fill-color: #fff !important;
}*/
div[role="status"] {
    margin-top: 15px;
    color: var(--red);
}
.geo-form .frm_error {
    color: var(--red);
    margin-top: 1px;
    font-weight: normal;
}
.frm_submit button,
.frm_submit button:hover {
  background-color: #C1272D;
  border-radius: 0;
  color: white;
  font-family: "Avenir Heavy";
  font-size: 16px;
  text-transform: uppercase;
  border-color:#C1272D;
  padding: 6px 25px 4px;
  box-shadow: none;
}
/* Button hover */
.frm_submit button {
    position: relative;
}
.frm_submit button span {
    display: inline-block;
    transform: translateX(0);
    transition: opacity .45s cubic-bezier(.25,1,.33,1),transform .45s cubic-bezier(.25,1,.33,1);
    position: relative;
}
.frm_submit button:hover span{
    transform: translateX(-8px);
}

.frm_submit button.frm_button_submit i {
    position: absolute;
    top: 11px;
    right: 20px;
    font-size: 12px !important;
    opacity: 0;
    -ms-filter: "alpha(opacity=0)";
    transition: all .45s cubic-bezier(.25,1,.33,1);
}

.frm_submit button:hover i {
    opacity: 1;
    -ms-filter: "alpha(opacity=100)";
    transform: translateX(6px);
}

/*.location-col {
    opacity: 0.7;
}
.location-col.location-col--active {
    opacity: 1;
}*/
.geo-form .frm_form_field .frm_radio label {
        color: white;
        font-weight: 500;
    }
@media (min-width: 769px) {
    .geo-form .frm_form_field .frm_radio{
        display: inline-block;
        margin-right: 40px;
    }
    .geo-form .frm_form_field .frm_radio input {
        margin-right: 5px;
    }
    
}
@media (max-width: 768px) {
    .location-col {
        opacity: 1;
    }
}



/**
 * FOOTER
 */
.site-footer,
.site-footer #footer-widgets,
.site-footer .site-info {
    background-color:#050505;
    color:white;
}
.footer-widgets-container {
    padding:61px 40px;
}
#footer-widgets h4 {
     color: #9F9999;
  letter-spacing: 0.5px;
  font-size: 14px;
}
#footer-widgets .footer-widget-5 h4 {
    color:white;
}
.inside-site-info {
    align-items: initial;
    justify-content: unset;
    padding:20px 40px 27px;
}
footer .copyright-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 1280px;
}
footer .copyright-bar p {
    margin-bottom:0px;
    font-family: 'Avenir Heavy';
    /*font-weight:bold;*/
    font-size:12px;
}
.site-footer .menu li {
    margin-bottom:0;
}
.site-footer .menu li a {
    font-family: 'Avenir Heavy';
  font-size: 12px;
  /*font-weight: 600;*/
  color:white;
  text-transform: uppercase;
}
.footer-widgets .widget {
    margin-bottom:15px;
}
#mc-embedded-subscribe-form {
    padding: 0 !important;
}
#mc-embedded-subscribe-form #mce-EMAIL{
        background: 0;
    border-radius: 0;
    border-color: var(--red);
    padding: 5px 0;
    text-align: center !important;
    color:white;
}
#mc-embedded-subscribe-form #mce-EMAIL::placeholder {

    color:#C6BBBB;
    font-family: Roboto;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.38px;
  text-align: center !important;
}
#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error {
    background: transparent!important;
    border-radius: 0px !important;
}
#mc_embed_signup #mce-responses + p {
    margin-bottom:0;
}
#mc_embed_signup .button {
    border:0 !important;
    background: none !important;
    font-family: "Avenir Heavy";
  font-size: 12px !important;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 16px;
  text-transform: uppercase !important;
  padding-left:0px !important;
  padding-right:0px !important;
}
#mc_embed_signup .button i {
    font-size:8px !important;
    margin-left:2px;
}

#block-12{
    padding: 0px 40px 0 0;
}
@media (min-width: 1300px) {
    .inside-site-info {
        padding:20px 20px;
    }
    .footer-widgets-container {
        padding:61px 20px;
    }
}
@media (max-width: 992px) {
    .footer-widget-4 #block-12{
        padding: 20px 20px 0 0;
    }
}
@media (max-width: 768px) {
    .inside-site-info {
        padding:20px 20px;
    }
    .footer-widgets-container {
        padding:61px 20px 0px;
    }
    .inside-footer-widgets {
            flex-direction: row;
        flex-wrap: wrap;
    }
    .inside-footer-widgets>div {
        flex: 50%;
        flex-direction: column;
    }
    .footer-widget-5 {
        display: none;
    }
    .copyright-bar {
        flex-direction: column;
        align-items: start !important;
    }
    .footer-widget-4 {
        flex: 100% !important;
    }
    .footer-widget-4 img {
        max-width: 175px;
    }
    .footer-widget-4 #block-12{
        padding: 0px 20px 0 0;
    }
}


/**
 * GLOBAL
 */

input:focus, textarea:focus, select:focus{
        outline: none;
    }
.site-content {
    display: block;
}
.fl-builder-content a.fl-button, .fl-builder-content a.fl-button:visited {
    border: 2px solid var(--red);
    border-radius: 0px;
    color:var(--red);
    padding:6px 20px 4px;
    font-size: 16px;
    background: transparent ; 
    letter-spacing: 0.45px;
  line-height: 22px;

}
.fl-builder-content a.fl-button span {
    font-family: 'Avenir Heavy' !important;

    /*font-weight: bold;*/
}
.fl-builder-content a.fl-button *,
.fl-builder-content a.fl-button:visited * {
    color:var(--red) ;
}
.btn-white-noBorder a.fl-button,
.btn-white-noBorder a.fl-button:visited {
    border:0 !important;
    color:white !important;
    padding-left:0 !important;
    background: transparent !important;
}
.btn-white-noBorder a.fl-button span,
.btn-white-noBorder a.fl-button .fl-button-icon {
    color:white !important;
}
.btn--noBorder a {
    border:0 !important;
    
    padding:0 !important;
}
.fl-button i.fl-button-icon-after {
    /*margin-left:3px !important; */
    /*display:none;*/
   /* margin-top:1px;*/
}
.fl-button-has-icon .fl-button-text {
    vertical-align: top !important;
}
.fl-button-icon-after.geoicon-button-arrow {
    font-size:12px !important;
}
footer .social-icons i:before,
header .social-icons i:before {
    color:white !important;
}
footer .social-icons .fl-module-content,
footer .social-icons .fl-builder-template,
header .social-icons .fl-module-content,
header .social-icons .fl-builder-template {
    margin:0;
    padding:0;
}
.social-icons i {
    font-size: 20px;
}
.social-icons .fl-icon + .fl-icon {
    margin-left: 10px;
}
.social-icons .fl-icon {
        display: inline-block;
    margin-bottom: 10px;
    margin-top: 10px;
}
.social-icons i:hover:before {
    color:var(--red) !important;
}
.sub-header--line-through .fl-module-content {
    margin-bottom:5px;
}
.sub-header--line-through .fl-heading{
    position: relative;
        z-index: 1;
        color:#B7B7B7;
        font-size:16px;
        /*letter-spacing: 9.65px;*/
       /*  line-height: 29px;*/
}
.sub-header--line-through .fl-heading:before {
    border-top: 1px solid #B7B7B7;
    content:"";
    margin: 0 auto; /* this centers the line to the full width specified */
    position: absolute; /* positioning must be absolute here, and relative positioning must be applied to the parent */
    top: 46%; left: 0; right: 0; bottom: 0;
    width: 100%;
    z-index: -1;
}
.sub-header--line-through .fl-heading span { 
    /* to hide the lines from behind the text, you have to set the background color the same as the container */ 
    background: #fff; 
    padding: 0 15px 0 0; 
}

/* Button hover */
.fl-button-has-icon .fl-button {
    position: relative;
}
.fl-button-has-icon .fl-button span {
    display: inline-block;
    transform: translateX(0);
    transition: opacity .45s cubic-bezier(.25,1,.33,1),transform .45s cubic-bezier(.25,1,.33,1);
    position: relative;
}
.fl-button-has-icon .fl-button:hover span.fl-button-text {
    transform: translateX(-8px);
}

.fl-button-has-icon .fl-button i {
    position: absolute;
    top: 10px;
    right: 17px;
  
    opacity: 0;
    -ms-filter: "alpha(opacity=0)";
    transition: all .45s cubic-bezier(.25,1,.33,1);
}
.fl-button-group .fl-button-has-icon .fl-button i {
    top: 10px;
}
.fl-button-has-icon .fl-button:hover i {
    opacity: 1;
    -ms-filter: "alpha(opacity=100)";
    transform: translateX(6px);
}
.fl-post-feed .fl-button i{
    top: 4px;
    right: -2px;
}
.facet-reset {
        color: white;
    padding: 5px 20px;
    text-transform: uppercase;
    width: 100%;
    display: none;
    background: var(--red);
    font-weight: 500;
}
.facet-reset i {
    margin-right: 4px;

}
blockquote {
    border-color: #c1272d;
}

/**
 * HOMEPAGE
 */

.homepage-service-lab .fl-row-content-wrap {
    background-position: 101% 101%;
    background-attachment: scroll;
    background-size: 75%;
}
.homepage-hero-title h1 {
    color:white;
    font-size: 64px;
    margin-bottom:0px;
    line-height:1em;
}
.homepage-hero-title h1:last-child{
    letter-spacing: 1.8px;
}
.homepage-hero-title .line-through {
    position: relative;
        z-index: 1;
        color:var(--red);
        font-size:21px;
        letter-spacing: 9.65px;
       /*  line-height: 29px;*/
}
.homepage-hero-title .line-through:before {
    border-top: 2px solid #979797;
    content:"";
    margin: 0 auto; /* this centers the line to the full width specified */
    position: absolute; /* positioning must be absolute here, and relative positioning must be applied to the parent */
    top: 46%; left: 0; right: 0; bottom: 0;
    width: 95%;
    z-index: -1;
}
.homepage-hero-title .line-through span { 
    /* to hide the lines from behind the text, you have to set the background color the same as the container */ 
    background: #000; 
    padding: 0 15px; 
}
.home .fl-row-bg-video .fl-row-content-wrap .fl-col:first-child .fl-col-content {
    /*max-width:463px;*/
}

.home .fl-bg-video video{
    transform:scale(1.2);
}
.home .fl-row-bg-video .fl-row-content {
    z-index: 99;
}
@media (max-width: 768px) {
    /* CSS in here for mobile only */
    .homepage-hero-title h1 {
        font-size:49px;
    }
    .homepage-hero-title .line-through {
        font-size:15px;
    }
    .home .fl-bg-video video {
        transform: scale(1.5);
    }
}

/* Homepage hero animated title 
-- https://codepen.io/alvaromontoro/pen/RmRjvg
*/
@import url('https://fonts.googleapis.com/css?family=Roboto:700');
@keyframes showTopText {
  0% { transform: translate3d(0, 100%, 0); }
 /* 40%, 60% { transform: translate3d(0, 50%, 0); }*/
  100% { transform: translate3d(0, 0, 0); }
}
@keyframes showBottomText {
  0% { transform: translate3d(0, -100%, 0); }
  100% { transform: translate3d(0, 0, 0); }
}
.animated-title {
  color: #222;
    font-family: Roboto, Arial, sans-serif;
    /*height: 30vmin;*/
    height: 225px;
    left: 0%;
    position: absolute;
    top: 25%;
    /*transform: translate(-50%, 0%);*/
    width: 100%;
    max-width: 730px;
}
.animated-title > div {
  height: 50%;
  overflow: hidden;
  position: absolute;
  width: 100%;
}
.animated-title > div div {
  font-size: 12vmin;
  padding: 2vmin 0;
  position: absolute;
}
.animated-title > div div span {
 /* display: block;*/
}
.animated-title > div.text-top {
  border-bottom: 2px solid #97979796;
  top: 0;
}
.animated-title > div.text-top div {
  animation: showTopText 1s;
  animation-delay: 0.5s;
  animation-fill-mode: forwards;
  bottom: -4px;
  transform: translate(0, 100%);
}
/*.animated-title > div.text-top div span:first-child {
  color: white;
}*/
.animated-title > div.text-bottom {
  bottom: 0;
}
.animated-title > div.text-bottom div {
  animation: showBottomText 1s;
  animation-delay: 0.5s;
  animation-fill-mode: forwards;
  top: 10px;
  transform: translate(0, -100%);
}

.homepage-hero-animated-title {
    height: 225px;
}
.homepage-hero-animated-title h1 {
    font-size: 64px;
    margin-bottom:0px;
    color: var(--red);
    line-height: 60px;
}
.animated-title > div.text-top div {
    padding-bottom: 5px;
}
.animated-title > div.text-bottom div {
    padding-top: 5px;
}
.homepage-hero-animated-title h1 span {
    color: white;
    }
.homepage-hero-animated-title .fl-html {
    position: relative;
}

.homepage-latest-news .fl-post-grid-post {
    border: 0;
    margin-bottom: 70px;
   /* border-left: 4px solid var(--red);*/
   min-height:120px;
}
.homepage-latest-news .fl-post-grid-post .fl-post-text {
    padding:0 0px 0 0;

}
.homepage-latest-news .fl-post-column:nth-child(3) .fl-post-grid-post ,
.homepage-latest-news .fl-post-column:last-child .fl-post-grid-post {
    margin-bottom:0px;
}
.homepage-latest-news .fl-category span span {
    display:none;
}
.homepage-latest-news .fl-category span.blog,
.homepage-latest-news .fl-category span.news {
    display:block;
}
.homepage-latest-news .fl-post-text {
        border-left: 4px solid transparent;
    padding-left: 15px !important;
}
.homepage-latest-news .fl-post-title a:hover {
    opacity: 0.7;
}
.homepage-latest-news .fl-post-grid-post.category-featured .fl-post-text {
        border-left: 4px solid var(--red);

}
.homepage-latest-news .fl-post-grid-post.category-featured .tag-category,
.homepage-latest-news .fl-post-grid-post.category-featured a {
    color:var(--red) !important;
}
.homepage-latest-news .tag-category {
    font-family: "Avenir Heavy";
}
.homepage-btn-scroll i {
    color:var(--red);
    transform:rotate(90deg);
}
.homepage-btn-scroll a:hover{
    opacity: 0.7;
}
.homepage-hero-title-reveal .fl-html > div {
/*    display: flex;*/
    width: 100%;
    animation: showup 7s forwards;
}
.homepage-hero-title-reveal .fl-html > div:last-child {
    opacity: 0;
}
.homepage-hero-title-reveal-mobile .fl-html > div:last-child {
    opacity: 1;
}
.homepage-hero-title-reveal .fl-html > div:last-child {
    animation: showup 7s 2.5s forwards;
}
.homepage-hero-title-reveal h1 {
    display: inline-flex;
    margin-bottom: 0;
    font-size: 60px;
}
.homepage-hero-title-reveal .fl-html div h1{
/*  display:inline-block;*/
  overflow:hidden;
/*  white-space:nowrap;*/
  color: var(--red);
}
.homepage-hero-title-reveal hr{
        background: #eee;
  /*  width: 90%;*/
    margin-bottom: 10px;
    margin-top: 5px;
    animation: hr-reveal 7s forwards;
}


.homepage-hero-title-reveal .fl-html div h1:last-child{
  width:0px;
  animation: reveal 7s forwards ;
  color: white;
}
.homepage-hero-title-reveal .fl-html > div:last-child  h1:last-child{
 
  animation: reveal 7s 2s forwards ;

}

.homepage-hero-title-reveal h1 span {
  margin-left:-355px;
  animation: slidein 7s forwards;
  color: white;
}

.homepage-hero-title-reveal .fl-html > div:last-child h1 span {

  animation: slidein 7s 2s forwards ;

}

.fl-builder-edit .homepage-hero-title-reveal hr,
.homepage-hero-title-reveal-mobile hr,
.homepage-hero-title-reveal-mobile .fl-html > div,
.homepage-hero-title-reveal-mobile .fl-html > div:last-child,
.fl-builder-edit .homepage-hero-title-reveal .fl-html div h1:last-child,
.homepage-hero-title-reveal-mobile .fl-html div h1:last-child,
.fl-builder-edit .homepage-hero-title-reveal .fl-html > div:last-child  h1:last-child,
.fl-builder-edit .homepage-hero-title-reveal h1 span,
.homepage-hero-title-reveal-mobile h1 span,
.fl-builder-edit .homepage-hero-title-reveal .fl-html > div:last-child h1 span{ 
    animation: none !important;
}

.homepage-hero-title-reveal-mobile h1 span{
     margin-left:0px;
}
.homepage-hero-title-reveal-mobile .fl-html div h1:last-child{
    width: auto;
}
.homepage-hero-title-reveal-mobile h1 {
    display: block;
    text-align: center;
}
@keyframes showup {
    0% {opacity:0;}
    40% {opacity:1;}
    80% {opacity:1;}
    100% {opacity:1;}
}

@keyframes slidein {
    0% { margin-left:-800px; }
    20% { margin-left:-800px; }
    35% { margin-left:10px; }
    100% { margin-left:10px; }
}

@keyframes reveal {
    0% {opacity:0;width:0px;}
    20% {opacity:1;width:0px;}
    30% {width:416px;}
    80% {opacity:1;}
    100% {opacity:1;width:416px;}
}

@keyframes hr-reveal {
    0% {opacity: 0;}
    25% {opacity: 0;}
    50% {opacity: 1;max-width: 680px}
    100% {opacity: 1;max-width: 680px}
}
@media (max-width: 1300px) {
    .home .fl-bg-video video {
        top:-80px !important;
    }
    .home .fl-row-bg-video .fl-row-content-wrap {
        min-height:540px;
    }
}
@media (max-width: 992px) {
    .home .fl-bg-video video {
        top:-61px !important;
    }
    .home .fl-row-bg-video .fl-row-content-wrap {
        min-height:500px;
    }
    .homepage-latest-news .fl-row-content-wrap {
        background:var(--red) !important;
        background-image:none !important;
    }
    .homepage-hero-title-reveal h1 {
        font-size: 48px;
    }
    @keyframes hr-reveal {
        0% {opacity: 0;}
        25% {opacity: 0;}
        50% {opacity: 1;max-width: 545px}
        100% {opacity: 1;max-width: 545px}
    }
}
@media (min-width:769px) {
    .home .fl-bg-video:before {
        content:'';
        display:block;
        position: absolute;
        top: 0;
        bottom:0;
        right:0;
        left:0;
        z-index:1;
        /*background: linear-gradient(to right, #000000 4%,  rgba(0, 0, 0, 0.3));*/
        background: rgba(0, 0, 0, 0.6);
    }

}
@media (max-width: 768px) {
    .homepage-latest-news .fl-post-grid-post{
        margin-bottom: 20px !important;
    }
    .home .fl-bg-video:before {
        content:'';
        display:block;
        position: absolute;
        top: 0;
        bottom:0;
        right:0;
        left:0;
        z-index:1;
        background:rgba(0, 0, 0, 0.6);
    }
    .homepage-hero-title-reveal-mobile h1 {
        font-size: 45px !important;
            line-height: 44px;
    }
    .homepage-hero-title-reveal-mobile hr {
        width: 100% !important;
        max-width: 290px;
        margin-left: auto;
        margin-right: auto;
    }
    
}
@media (max-width: 570px) {
    .fl-builder-content .homepage-hero-text-col {
        width: 80% !important;
    }
}



/**
 * Irazu Table
 */
.homepage-irazu .fl-row-content > .fl-col-group > .fl-col > .fl-col-content{
    box-shadow: 0 24px 40px 0 rgba(0,0,0,0.31);
    background-color:rgb(255,255,255,0.85) !important;
}
.irazu-table {
    margin-bottom:0;
}
.irazu-table, th, td {
    border:0;
}
.irazu-table th {
    font-family: "Avenir Heavy";
  font-size: 20px;
  /*font-weight: bold;*/
  letter-spacing: 0;
  line-height: 27px;
      padding: 26px 24px 20px;

}
.irazu-table--versus th:first-child{
    width:30%;
}
.irazu-table th.col-irazu {
    color: var(--red);
  font-family: "Avenir Heavy";
  font-size: 27px;
  /*font-weight: bold;*/
  letter-spacing: 0;
  line-height: 37px;
}
.irazu-table td{
        padding: 24px 24px;
        font-family: Roboto;
  font-size: 19px;
  letter-spacing: 0;
  line-height: 25px;
  text-align: center;
}
.irazu-table.irazu-table--versus td:first-child,
.irazu-table.irazu-table--versus th:first-child{
    text-align: left;
}
.irazu-table.irazu-table--versus td:nth-child(3),
.irazu-table.irazu-table--versus th:nth-child(3){
    box-shadow: inset 30px 0 30px -30px rgb(0 0 0 / 30%);
}
.irazu-table.irazu-table--versus td:first-child,
.irazu-table.irazu-table--versus th:first-child{
    /*box-shadow: inset -20px 0 24px -20px rgb(0 0 0 / 40%);*/
    box-shadow: inset -30px 0 30px -30px rgb(0 0 0 / 30%);
}
.irazu-table--versus tr:last-child td {
    padding-bottom:50px;
}
.irazu-table.irazu-table--versus .col-irazu {
    background:white;
    opacity: 1;
}
.irazu-table img {
    vertical-align: middle;
}
.irazu-table.irazu-table--versus tr:last-child td.col-irazu {
    box-shadow: 0px 31px 41px -14px rgb(0 0 0 / 30%);
}
.irazu-table.irazu-table--versus tr:last-child td:first-child,
.irazu-table.irazu-table--versus tr:last-child th:nth-child(3){ 
    box-shadow: 0px;
}

.homepage-irazu .fl-col-content {
    
}
.homepage-irazu .fl-row-content-wrap {
    /*opacity: 0.88;*/
  background-color: rgb(216,216,216,0.88);
}
.irazu-table .close-img {
    width:19px;
}
.irazu-table--versus td:not(.col-irazu) .dot-img {
    opacity: 0.2;
}

.irazu-table--versions .col-software,
.irazu-table--versions th.col-software {
    font-weight:bold;
    color:var(--red);
    text-align: left;
}
.irazu-table--versions thead tr,
.irazu-table--versions tbody tr:nth-child(even) {
    background:#DFDFDF;
}
/*.irazu-table--versions .dot-img {
    opacity: 0.7;
}*/
.irazu-table--versions  {
    margin-bottom:20px;
}
.irazu-table--versions th {
    padding:12px 24px 20px;
}

@media (max-width: 768px) {
    /* CSS in here for mobile only */
    .irazu-table td {
        font-size:14px;
        padding:10px 20px;
        line-height: 17.5px;
    }
    .irazu-table th {
        font-size:14px;
        padding: 10px 20px;
    }
    .irazu-table th.col-irazu {
        font-size: 16px;
    }

    .irazu-table img {
        width:15px !important;
    }
    .irazu-table--versus  th:first-child {
        width:40%;
    }
    
}
@media (max-width: 1024px) {
    .homepage-irazu .fl-html {
        overflow-x: scroll;
    }
}

/**
 * Quotes
 */
.has-quotes blockquote {
 background-image: url('img/icons/icon-quote.svg');
 background-repeat: no-repeat;
 border:0;
 /*background-position: 0 20px;*/
 margin:0px;
 padding: 0px 40px;
}
.has-quotes blockquote:after {
 content: url(img/icons/icon-quote.svg);
    position: absolute;
    right: -6px;
    bottom: 0;
}
.has-quotes blockquote p {
 /*background-image: url('img/icons/icon-quote.svg');
 background-repeat: no-repeat;
 background-position: bottom right;
 font-style: normal;*/
}


/**
 * Blog 
 */
.single-post .site-content {
    display: block;
}
.fl-builder-content-93 {
    width:100%;
}
.fl-builder-content-93 .fl-post-meta span {
    color: #9A9292;
  font-family: "Avenir Heavy";
  /*font-weight:bold;*/
  font-size: 12px;
  margin-right:12px;
  text-transform: uppercase;
}
.fl-post-meta--categories a,
.fl-post-meta--author a {
    color: #9A9292;;
}
.fl-post-meta a:hover {
    opacity: 0.8;
}

.fl-builder-content-93 .fl-post-meta i {
    margin-right:3px;
}
.fl-builder-content-93 .fl-button {
    font-size: 14px;
}
.blog .fl-post-text {
    overflow: hidden;
}
.fl-builder-pagination ul.page-numbers {
    text-align: left;
}
.blog .fl-post-image--video_embed iframe {
    height: auto;
}
/*.blog .fl-post-image--video_embed {
        position: relative;
    width: 100%;
    padding-bottom: 56.25%;
}
.blog .fl-post-image--video_embed iframe{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}*/

.blog h2.fl-post-title {
    margin-bottom:10px;
    line-height: 35px;
}
ul.page-numbers span,
ul.page-numbers a {
    color:black !important;
    background:#DFDFDF !important;
    font-size: 18px !important;
    font-family: "Avenir Medium" !important;
    /*font-weight:500 !important;*/
    text-transform: uppercase;
}
ul.page-numbers a:hover,
ul.page-numbers .current{
    background:var(--red) !important;
    color:white !important;
}
.sidebar--blog .facetwp-facet > div {
    font-size:20px;
    color:#5D5D5D;
    border-bottom: 2px solid #B9B9B9;
    padding:10px 10px 10px 0px;
    margin:0;
    background:none;
}
.sidebar--blog .facetwp-counter {
    display: none;
}
.sidebar--blog .facetwp-input-wrap {
    border:2px solid #C1272D;
    min-width:100%;
    
}
.sidebar--blog .facetwp-input-wrap input {
    border:0px;
        padding: 6px 15px;
        width:100%;
        background:#FFF;
        /*padding-left:45px;*/
        padding-top:9px;
}
.sidebar--blog .facetwp-input-wrap input::placeholder {
    font-size:20px;
    color:#DFDFDF;
}
.sidebar--blog .facetwp-input-wrap i,
.sidebar--blog [data-value="blog"],
.sidebar--blog [data-value="news"],
.sidebar--blog [data-value="featured"]{
    display:none;
}

.sidebar--blog .facetwp-checkbox.checked {
    color: var(--red);
}
/*.sidebar--blog .fl-form-field:before {*/
/*    filter: invert(0%) sepia(1%) saturate(3%) hue-rotate(326deg) brightness(97%) contrast(104%);*/
/* content: url(https://trankevin.com/geomechanica/wp-content/themes/generatepress_child/img/icons/icon-search.svg);*/
    /*position: absolute;*/
    /*right: -6px;*/
    /*bottom: 0;*/
/*}*/

.categories-filter-btn {
    color:#979797;
    font-weight:500 !important;
    display: inline-flex;
    text-align: right;
    margin-right: 19px;
    font-size: 28px;
    justify-content: flex-end;
    width: 100%;
    padding-right: 20px;
}
.categories-filter-btn:hover,
.categories-filter-btn:focus {
     color:#979797;
}
.categories-filter-btn:after {
    content:url("img/icons/icon-filter.svg");
    display: inline-block;
    /*transform: scale(.7);*/
    vertical-align: text-top;
    margin-left: 5px;
   
}

.categories-filter-btn h3 {
    margin-bottom: 0;
        margin-top: 4px;
    margin-right: 5px;
}

.blog--back-btn {
    font-weight: 500;
        display: flex;
    /* align-content: center; */
    align-items: center;
}
.blog--back-btn i{
    transform: rotate(180deg);
    display: inline-block;
    margin-right: 10px;
}
.blog--back-btn:hover {
    opacity: 0.7;
    color: var(--red);
}

.sidebar--blog .facetwp-type-search .facetwp-input-wrap {
        display: flex;
    align-items: center;
}
.sidebar--blog .facetwp-type-search svg {
    width:40px;
    margin-left:10px;
}
input.facetwp-search:focus-visible {
    outline: 0;
}
.single .fl-module-fl-post-content .text-center,
.single .fl-module-fl-post-content .rtecenter {
    text-align: center;
}
.single .fl-module-fl-post-content .btn-primary{
    border: 2px solid var(--red);
    border-radius: 0px;
    color: var(--red);
    padding: 6px 20px;
    font-size: 16px;
    background: transparent;
    letter-spacing: 0.45px;
    line-height: 22px;
    margin: 20px;
    display: inline-block;
}
.single .single--video-embed .fl-html{
    text-align: center;
}
@media (max-width: 768px) {
   #blog-list .fl-post-image{
       float:none;
       margin-bottom:10px;
       margin-top:0px;
   }
   #blog-list .fl-post-meta {
        display: flex;
        flex-wrap: wrap;

   }
   #blog-list .fl-post-meta i {
    margin-right:7px;
   }
   #blog-list .fl-post-meta > span {
        flex: 50%;
         margin-right: 0 !important;
         line-height: 16px;
         margin-bottom:5px;
   }
   #blog-list .fl-post-meta--date {
        flex: 30% !important;
   }
   #blog-list .fl-post-meta--categories {
        flex: 70% !important;
   }
   #blog-list .fl-post-feed-post {
       max-width:100% !important;
   }
   #blog-list .fl-post-text {
    padding:0;
   }
    #blog-list .fl-post-feed-post .fl-post-image{
       width:100%;
    }
    .sidebar--blog {
        position: relative;
    }
    .sidebar--blog .fl-col-content:before{
        content: "";
            position: absolute;
            border-color: #979797;
            border: solid transparent;
            border-bottom-color: white;
            border-width: 23px;
            margin-right: -22px;
            top: -45px;
            right: 32px;
            z-index: 1;
    }
    .sidebar--blog .fl-col-content:after{
        content: "";
            position: absolute;
            right: 10px;
            top: -46px;
            width: 0;
            height: 0;
            border: solid transparent;
            border-width: 23px;
            border-bottom-color: #979797;
            z-index: 0;
    }
    .sidebar--blog .fl-col-content {
        display: none;
        position: absolute;
            background: #fff;
            left: 20px;
            right: 20px;
            top: 20px;
            border: 1px solid #979797;
            overflow:visible !important;
    }
    .sidebar--blog .fl-node-6143acca0ee3e {
        display: none;
    }
    .sidebar--blog h3 .fl-heading-text {
        font-size:18px;
    }
    .sidebar--blog .facetwp-facet > div {
        border:0;
        font-size:16px;
        color:#9A9292;
        font-family: "Avenir Heavy";
        /*font-weight:600;*/
    }
    .sidebar--blog .facetwp-facet {
        margin-bottom: 0px;
    }
}


/**
 * SOFTWARE PAGE
 **********************/
#tab-menu-row {
    background: white;
}
.tab-menu {
    display: flex;
    list-style-type: none;
    margin:0;
}
.tab-menu li {
    display: flex;
    flex: 1;
    flex-grow: 1;
    flex-basis: 0;
    align-items: center;
    text-transform: uppercase;
    color:#000;
    cursor: pointer;
    justify-content: center;
    padding:20px;
    border-bottom: 8px solid #D8D8D8;
    font-family: 'Avenir Medium';
    /*font-weight:500;*/
}
.tab-menu img {
    filter: invert(0%) sepia(1%) saturate(3%) hue-rotate(326deg) brightness(97%) contrast(104%);
    margin-right:10px;
}
.tab-menu li.active,
.tab-menu li:hover {
    color:var(--red);
    border-bottom: 8px solid var(--red);
}
.tab-menu li.active img,
.tab-menu li:hover img {
    filter: invert(22%) sepia(100%) saturate(1788%) hue-rotate(338deg) brightness(84%) contrast(98%);
}
body:not(.fl-builder-edit) .tab-content{
    display: none;
}
body .tab-content.active{
    display: block;
}
.tab-content:not(.tab-content--overview) .fl-row-content-wrap {
        padding-top: 40px;
    padding-bottom: 30px;
}
/* Tab Overview*/
.irazu-table-header h2 span {
    padding: 6px 25px 3px;
    background: var(--red);
    color: white !important;
    display:inline-block;
}
/*header.scrolled{
    border-bottom: none;
}
header.scrolled #tab-menu-row {
    border-top: 4px solid var(--red);
}*/
@media (max-width: 1100px) {
    .tab-menu li span {
        /*display:none;*/
    }
    .tab-menu img {
        max-width:30px;
    }
    .tab-menu {
        overflow-x: scroll;
        -ms-overflow-style: none;  /* IE and Edge */
          scrollbar-width: none;  /* Firefox */
     
    }

     .tab-menu::-webkit-scrollbar {
       display: none;
     }
}
@media (max-width: 768px) {
    .tab-menu li span {
        display:none;
    }
    .tab-menu img {
        margin-right:0;
    }
    .tab-content h1 .fl-heading-text{
        font-size: 36px;
    }
}
/* Highlights */

.software-highlights--description-wrapper .fl-col-content {
    padding:0px;
}
/*.software-highlights--title--mobile .fl-module-content {
    margin-top:0px;
}*/
.software-highlights--title--mobile .fl-heading {
    cursor: pointer;
}
.software-highlights--title--mobile .fl-heading-text {
    vertical-align: middle;
}
.software-highlights--img--mobile .fl-module-content {
    margin-top:0px !important;
}
@media (min-width: 769px) {
    .software-highlights > .fl-col-content{
        box-shadow: 1px 2px 23px 0 rgba(0,0,0,0.17);
        margin:20px;
    }
    body:not(.fl-builder-edit) .software-highlights--description-wrapper {
        display: block !important;
    }

}
@media (max-width: 768px) {
    body:not(.fl-builder-edit) .software-highlights--description-wrapper {
        display:none;
    }
    
    .software-highlights--col .fl-module-content {
        margin-left:0px !important;
    }
    .software-highlights--title--mobile .fl-module-content {
        margin-top:10px;
        margin-bottom:10px;
    }
    .software-highlights--col > .fl-col-content{
        
        margin-left:20px !important;
        margin-right:20px !important;
    }
    .software-highlights--col  .fl-col-group {
        border-bottom: 0.5px solid #B4B4B4;
        
    }
}

/* Irazu Features */
#irazu-features-menu {
    overflow-y: scroll;
}
#irazu-features-menu a {
    color: #FFFFFF;
      font-family: "Avenir Heavy";
      font-size: 20px;
      /*font-weight: 600;*/
      letter-spacing: 0;
      margin-bottom:20px;
      display: block;
}
#irazu-features-menu a:last-child {
    margin-bottom:0;
}
#irazu-features-menu a.active,
#irazu-features-menu a:hover {
    color:var(--red);
}
#irazu-features:not(.owl-carousel) .irazu-features-content {
    display: none;
}
.irazu-features-content{
    color:white;
    font-size:22px;
}
#irazu-features .irazu-features-content.active {
    display:block;
}
.irazu-features-content h2 {
    margin-bottom:35px;
}
.irazu-features-content li {
    line-height: 54px;
}
.custom-select {
        background: transparent;
        color: var(--red);
        border:2px solid var(--red);
        position: relative;
}
.custom-select span{
    transform:rotate(45deg);
    color:var(--red);

}
#irazu-features-select {
        background: transparent;
        color: var(--red);
        border:0;
        width: 100%;
        font-weight: 500;
        -webkit-appearance: none;
         -moz-appearance: none;
}
.custom-select:after {
    content: "\e901";  
     font-family: 'Geoicons' !important;
     font-style: normal;
     font-weight: normal;
     font-variant: normal;
     text-transform: none;
     font-size:10px;
     margin-left:8px;
     margin-bottom: 2px;
     display: inline-block;
     vertical-align: middle;
         position: absolute;
         right: 17px;
         top: 14px;
         font-size: 12px;
         transform: rotate(90deg);
}
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
    background: var(--red);
}
.owl-theme .owl-dots .owl-dot span {
    margin: 5px 4px;
}
@media (max-width: 768px) {
    .fl-node-6168a00a9ecdf .fl-html {
        max-width:91vw;
        margin:auto;
    }
    .irazu-features-content {
        padding: 0 5px;
    }
}

/**
 * System Requirments
 */
#system-menu .fl-button.active{
    background:var(--red) !important;
}
#system-menu .fl-button.active .fl-button-text{
    color:white !important;
}
@media (max-width: 768px) {
    .col-minimum, .col-recommended {
        width:75% !important;
        clear:none;
        max-width:unset !important;
        float:none !important;
    }
    .fl-col.col-minimum {
        display:none;
    }

}


/**
 * Case Studies
 */
#case-studies .facetwp-facet-industries .facetwp-radio{
 display: inline-block;
 background:none;
 border: 2px solid #FFFFFF;
 padding:6px 12px !important;
 margin-right:30px;
 text-transform: uppercase;
 font-family: "Avenir Heavy";
   font-size: 16.13px;
   font-weight: 700;
   letter-spacing: 0.45px;
   margin-bottom:0;
}

#case-studies .facetwp-facet-industries .facetwp-radio:hover,
#case-studies .facetwp-facet-industries .facetwp-radio.checked {
 border-color:#C1272D;
 background-color: #C1272D;
}
#case-studies .facetwp-facet-industries .facetwp-counter {
 display:none;
}
.case-studies--bg {
    background-repeat: no-repeat;
    background-size: cover;
    
}
.case-studies--bg .fl-post-text:hover {
    background: rgba(0,0,0,0.5);
}
#case-studies-list .fl-post-feed-post.case_studies {
    margin-bottom: 0 !important;
}
.icon-requirement--red img {
 filter: invert(22%) sepia(100%) saturate(1788%) hue-rotate(338deg) brightness(84%) contrast(98%);
}
.single-case_studies .fl-module-rich-text ul > li{
    margin-bottom: 20px;
}
.single-case_studies .fl-module-rich-text ul ul,
.single-case_studies .fl-module-rich-text ul ul > li{
    margin-top: 15px;
}


@media (min-width: 993px){
    #case-studies-list .fl-post-title {
        max-width:35%;
    }
    #case-studies .facetwp-facet-industries .facetwp-radio:after{
    content: "\e901";  
     font-family: 'Geoicons' !important;
     font-style: normal;
     font-weight: normal;
     font-variant: normal;
     text-transform: none;
     font-size:10px;
     margin-left:8px;
     margin-bottom: 2px;
     display: inline-block;
     vertical-align: middle;
     
    }
}
@media (max-width: 992px) {
    #case-studies .facetwp-facet-industries .facetwp-radio{
        margin-right:20px;
    }
    #case-studies-list .fl-post-title {
        font-size:22px;
    }
    #case-studies .fl-module-class-facet .fl-module-content {
        padding-right: 20px;
        position: relative;
    }
    #case-studies .fl-module-class-facet .fl-module-content:after{
    content: "\e901";  
    color:#C2C2C2;
     font-family: 'Geoicons' !important;
     font-style: normal;
     font-weight: normal;
     font-variant: normal;
     text-transform: none;
     font-size:10px;
     margin-left:8px;
     margin-bottom: 2px;
     vertical-align: middle;
     position: absolute;
    right: 1px;
    top: 21px;
    font-size: 13px;
    }
    #case-studies .facetwp-bb-module {
        /*padding-top: 5px;
        padding-bottom: 5px;*/
        border-right:2px solid #A5A5A5;
    }
     #case-studies .facetwp-facet-industries {
        overflow-x: scroll;
        padding-top: 10px;
        padding-bottom: 10px;
        white-space: nowrap;
        -ms-overflow-style: none;  /* IE and Edge */
          scrollbar-width: none;  /* Firefox */
     }
     #case-studies .facetwp-facet-industries::-webkit-scrollbar {
       display: none;
     }
     #case-studies .facetwp-facet {
        margin-bottom:0;
     }
     #case-studies-list .fl-post-text {
        padding-left:0;
     }
     .single-case_studies .page-banner .fl-row-content-wrap {
        padding-top: 60px;
        padding-bottom: 60px;
     }
     .single-case_studies .page-banner .fl-row-content-wrap .fl-heading{
        font-size: 28px;
     }
}

/* Performance chart */
@media (max-width: 768px) {
    .performance-chart .fl-photo,
    .performance-chart .fl-photo-content {
            max-width: none;
            overflow-x: scroll;
    }
    .performance-chart .fl-photo-content { 
        padding-bottom: 20px;
    }
    .performance-chart--right-scroll {
        position: absolute;
            right: 10px;
            top: 30%;
            opacity: .7;
    }
}

/* Software Popup Form */
#pum_popup_title_1130 {
    color: white;
    font-family: 'Avenir Heavy';
    padding: 40px;
    background: url('img/Get_Started_Irazu_Desktop_Popup_BG.png') no-repeat ;
    text-align: center;
    line-height: 1.2;
}
#popmake-1130 {
    padding: 0px;
}
#popmake-1130 .pum-content {
    padding: 40px;
}
#pum-1130 .pum-close{
    top: 5px !important;
    right: 5px !important;
    border: 0 !important;
    font-size: 28px;
    box-shadow: none;
    background: transparent;
}
@media (max-width: 769px) {
    /*.fl-row .geo-form .frm_form_field .frm_radio{
        display: inline-block;
        margin-right: 40px;
    }
    .fl-row .geo-form .frm_form_field .frm_radio input {
        margin-right: 5px;
    }*/
    #pum_popup_title_1130 {
        font-size: 28px;
    }
    #popmake-1130 .geo-form .frm_form_field .frm_radio input { 
        margin-bottom: 10px;
    }
}


/**
 * CONSULTING PAGE
 */
#solutions-expand li {
 margin-bottom:15px;
}
#solutions-expand li:last-child {
 margin-bottom:0px;
}
#solutions-expand .solution-heading p {
    font-weight:900;
}
#solutions-expand .solution-heading .fl-module-content {
    margin-bottom:0px;
}
/* Value icon hover  */
#value-and-benefits .fl-photo-content:after{
    top: 0;
    left: 0px;
    right: 0;
    bottom: 0;
    position: absolute;
    padding: 0;
    z-index: -1;
    box-shadow: 0 0 0 2px #252525;
    border-radius: 2px;
    opacity: 0;
   /* -webkit-transform: scale(0.9);
    -moz-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);*/
    content:  "";
   /* background-color: black;*/

}
#value-and-benefits .fl-photo-content:hover:after {
    -webkit-animation: sonarEffect 1.3s ease-out ;
    -moz-animation: sonarEffect 1.3s ease-out ;
    animation: sonarEffect 1.3s ease-out ;
    
      /*  animation: sonarWave 2s linear infinite;*/
}


@keyframes sonarEffect {
    0% {
        opacity: 0.3;
    }
    40% {
        opacity: 0.5;
        box-shadow: 0 0 0 2px rgba(255,255,255,0.1), 0 0 10px 10px #000, 0 0 0 10px rgba(255,255,255,0.5);
        z-index: 1;
    }
    100% {
        box-shadow: 0 0 0 2px rgba(255,255,255,0.1), 0 0 10px 10px #000, 0 0 0 10px rgba(255,255,255,0.5);
        transform: scale(1.3);
        opacity: 0;
    }
}



/**
 * Client slider
 */
#client-slider img {
    max-height:95px;
    width:auto;
    margin:auto;
}
#client-slider .slide-wrapper .logo-wrapper {
    margin-bottom:20px;
}
#client-slider .slide-wrapper .logo-wrapper:nth-child(2) {
    margin-left: 70%;
    margin-right: -30%;
}
#client-slider .logo-wrapper img[src*=".svg"] {
    max-height: 65px;
}
@media (min-width: 993px){
    #solutions-expand .fl-col {
       -webkit-transition: all 0.35s;
        -o-transition: all 0.35s;
        -moz-transition: all 0.35s;
        transition: all 0.35s;
        overflow: hidden;
       
    }

    #solutions-expand .fl-col.active{
        width:45vw !important;
    }
    #solutions-expand .fl-col-content {
        min-width:35vw !important;
        padding:30px;
        padding-bottom:150px;
    }
    #solutions-expand .fl-col-group {
        flex-wrap:nowrap !important;
    }
    .solution-content {
        padding-right: 40px;
    }
}
@media (max-width: 992px) {
    #solutions-expand .solution-heading p {
        font-size:36px;
    }
    #solutions-expand .solution-heading {
        cursor: pointer;
    }
    #solutions-expand .solution-content {
        display:none;
    }
    #solutions-expand .solution-content li {
        font-size:18px;
    }
    #solutions-expand .fl-row-content {
        padding:20px;
    }
    #solutions-expand .fl-col-content{

    }
}


/**
 * News & Events
 */
.news-events-grid .fl-post-meta--date {
    flex: 30% !important;
}
.news-events-grid .fl-post-meta--categories {
    flex: 70% !important;
}
.news-events-grid .fl-post-meta {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.news-events-grid .fl-post-meta span {
    color: #9A9292;
  font-family: 'Avenir Heavy';
 /* font-weight:bold;*/
  font-size: 12px;

  text-transform: uppercase;
}
.news-events-grid .fl-post-meta i {
    margin-right:3px;
}
.news-events-grid .fl-post-column {
    border-left: 2px solid #a9a9a987;
    margin-bottom: 80px;
    padding-bottom:0px;
}

.news-events-grid .fl-post-grid-post {
    border:0;
}
.news-events-grid .fl-post-text {
    padding: 0 10px;
}
.news-events-grid .image-bottom{
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    height:100%;
}
.news-events-grid .fl-post-image {
    margin-bottom: 0;
}
.news-events-grid .full-height {
    height:100%;
    margin:0 15px;
    position: relative;
}
.news-events-grid .full-height .fl-post-text{
    height: 100%;
}
.news-events-grid .featured{
        background: repeating-linear-gradient(  -55deg , white, white 4px,  0px, #FFF3F3 12px );
       padding-top: 5px;
}
.news-events-grid .featured-tag {
    color: var(--red);
  font-family: "Avenir Heavy";
  font-size: 14.13px;
  /*font-weight: 600;*/
  letter-spacing: 0.99px;
  line-height: 19px;
      margin-bottom: 3px;
    display:none;
}
.news-events-grid .featured .featured-tag {
    display: block;
}

.news-facets .facetwp-facet {
    display: flex;
    flex-wrap: wrap;
    margin-bottom:0;
}
.news-facets .facetwp-facet .facetwp-checkbox{
    flex: 0 0 32%;
    color: #9A9292;
      font-family: "Avenir Heavy";
      font-size: 20px;
      /*font-weight: 600;*/
      margin-bottom:15px;
}
.facetwp-counter {
    display: none;
}
.news-facets {
    position: relative;
    display: none;
}
.news-facets .fl-module-content {
    border: 1px solid #979797;
    padding: 20px;
    position: relative;
        position: absolute;
    top: -15px;
    right: 0;
    left: 0;
    z-index: 9;
    background: white;
}
.news-facets .fl-module-content:before {
        content: "";
    position: absolute;
    border-color: #979797;
    border: solid transparent;
    border-bottom-color: white;
    border-width: 23px;
    margin-right: 2px;
    top: -45px;
    right: 45px;
    z-index: 1;
}
.news-facets .fl-module-content:after {
    content: "";
    position: absolute;
    right: 47px;
    top: -46px;
    width: 0;
    height: 0;
    border: solid transparent;
    border-width: 23px;
    border-bottom-color: #979797;
    z-index: 0;
}
.news-filter-btn a:after {
    content:url("img/icons/icon-filter.svg");
    margin-left: 8px;
    vertical-align: middle;
    margin-top: -4px;
}
.news-filter-btn a {
    display: inline-flex !important;
    align-items: center;
}
.news-events-grid .fl-post-image--mobile {
    display: none;
}
.news-events-grid .fl-post-image--video_embed {
        position: relative;
    width: 100%;
    padding-bottom: 56.25%;
}
.news-events-grid .fl-post-image--video_embed iframe{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.single--video-embed {
      position: relative;
    width: 100%;
    padding-bottom: 56.25%;
}
.single--video-embed iframe{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
@media (max-width: 768px) {
    .news-filter-btn .fl-button-text {
        display:none;
    }
    .news-facets .facetwp-facet {
        display: block;
        flex-wrap: unset;
    }
    .news-facets .fl-module-content:before {
        margin-right:-38px;
    }
    .news-facets .fl-module-content:after {
        right:7px;
    }
    .news-facets .fl-module-content {
        top:0px;
    }

    .news-events-grid .fl-post-column {
        border-left:0;
        margin-bottom:0;
    }
    .news-events-grid .fl-post-grid-post{
        border-top: 1px solid #a9a9a987;
        
        padding: 20px 0;
    }
    .news-events-grid .fl-post-grid-post:last-child{
        border-bottom: 1px solid #a9a9a987;
    }
    .news-events-grid .fl-post-image {
        display: none;

    }
    .news-events-grid .fl-post-image--mobile {
        display: block;
        margin-bottom:10px;
    }
    .news-events-grid .full-height {
        margin:0;
    }

}


/**
 * ABOUT
 */
 .team-members .fl-post-grid-post{
     position:relative;
    border:0;
    background:transparent;
 }

 .team-members .fl-post-image img {
     width:100%;
     display: block;
 }
 .team-members .fl-post-text {
    background:transparent;
 }

 .team-members .fl-post-title {
     text-transform: uppercase;
    margin-bottom:5px;
    font-size:24px;
   color:black;
 }
 .team-members .fl-post-text p {
   color:var(--red);
   font-weight:500;
   line-height: 22px;
   margin-bottom:0 !important;
 }
.team-member-image {
    position: relative;
    width: 100%;
    max-width: 365px;
    margin: auto;
}
.team-member-image--hover {
        background: rgba(0,0,0,0.7);
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0;
 }
 .team-member-image--hover:hover {
    opacity: 1;
 }
 .team-member-image--hover .team-member-image--social-links {
    position: absolute;
    text-align: center;
    width: 100%;
    top: 50%;
}
.team-member-image--social-links a {

}
.team-member-image--social-links span {
    color: var(--red);
    font-size: 26px;
    
    padding: 8px;
}
.team-member-image--social-links span:hover {
    opacity: 0.7;
}
@media (min-width: 769px){
    .team-members .fl-post-title  {
       color:#fff;
    }
    .team-members .fl-post-text {
        display:none;
    }
    .team-members .fl-post-text {
        position:absolute;
        bottom:0;
        top:0;
        right:0;
        left:0;
        background:rgba(0,0,0,0.65);
       /* padding-left:0;*/
        flex-direction: column;
        justify-content:flex-end;
    }
    .team-members .fl-post-grid-post:hover .fl-post-text {
        display:flex;
    }
}

/**
 * CAREERS
 */
.accordion {

}
.accordion .accordion-item{
    border-bottom: 1px solid #979797;
}
.accordion .accordion-content{
    display:none;
}
.accordion .accordion-item.active {
    
}
.accordion .accordion-button svg {
    width:20px;
    max-width: 20px;
    height: auto;
    float: right;
}
.accordion .accordion-item.active .accordion-button svg{
    transform: rotate(180deg);
}

#job-postings .accordion-button a{
    width:100%;
    padding:20px 0;
    display: flex;
    flex-direction: row;
    color: #000000;
      font-family: "Avenir Heavy";
      font-size: 28px;
     /* font-weight: 500;*/
      
}
#job-postings .accordion-button .posting-type{
    flex:25%;
    font-family: "Avenir Medium";
}
#job-postings .accordion-button .accordion-button-label{
    flex:70%;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--red);
}

#job-postings .accordion-body {
    display: flex;
    flex-direction: row;
    padding-bottom:20px;
    font-size:25px;
    line-height:30px;
}
#job-postings .accordion-body p {
    font-size:25px;
    margin-bottom:40px;
}
#job-postings .job-posting--content {
    flex:70%;
    /*padding-top:20px;*/
    padding-right:60px;
}
#job-postings .job-posting--sidebar {
    flex:27%;
    /*padding-top:20px;*/
    padding-right:20px;
}
.job-posting--subtext {
    font-size: 25px;
  letter-spacing: 0.3px;
  line-height: 30px;
  color:var(--red);
  margin-bottom:30px;
}
#job-postings h4 {
    color:var(--red);
   letter-spacing: 2.22px;
   margin-bottom:5px;
   text-transform: uppercase;
}
.job-posting--duration {
    margin-bottom:40px;
}
.job_posting-apply-btn {
    background: var(--red) !important;
}
.job_posting-apply-btn .fl-button-text,
.job_posting-apply-btn i {
    color:white !important;
}
#job-postings ul li {
    margin-bottom:10px;
}
.job-posting--mobile {
    display: none;
}
.job-posting--popup-close img{
        filter: invert(22%) sepia(100%) saturate(1788%) hue-rotate(
    338deg
    ) brightness(84%) contrast(98%);
        
        width: 20px;
      
} 
.job-posting--popup-close{
    position: absolute;
        right: 20px;
        top: 25px;
}
@media (max-width: 768px) {
    .job-posting--mobile {
        display:block;
    }
    .job-posting--mobile h4 {
        font-size:14px;
    }
    .job-posting--header-section {
        border-bottom:1px solid #C1272D;
        margin-bottom:20px;
    }
    .job-posting--header-section h2{
        max-width:75%;
        margin-bottom:10px !important;
        line-height: 30px;
    }
    #job-postings .accordion-button a{
        position: relative;
        flex-wrap:wrap;

    }
    #job-postings .accordion-button .accordion-button-label{ 
        max-width:75%;
        color:var(--red);
        line-height: 30px;
        font-size:24px;
        margin-bottom:10px;
    }
    #job-postings .accordion-button .posting-type{ 
        flex:100%;
        font-size: 22px;
        font-family: "Avenir Medium" !important;
    }
    .job-posting--mobile .posting-type {
        color: #888888;
        font-size: 22px !important;
        margin-bottom: 15px;
    }
    #job-postings.accordion .accordion-button svg{
        position: absolute;
            right: 0;
            top: 50%;
            transform: rotate(270deg);
    }
    .job-posting--sidebar {
        display:none;
    }
    .job-posting--content {
        overflow-y: scroll;
        margin-bottom:20px;
    }
    #job-postings .accordion-body {
        position: fixed;
        top: 20px;
        bottom: 20px;
        right: 0;
        left: 0;
        background: #F7F7F7;
        z-index: 100;
        padding: 20px;
        padding-top:25px;
        margin: 15px;
        flex-flow:column;
    }
    .job-posting--mobile .job_posting-apply-btn {
        padding: 16px !important;
            width: 100%;
            text-align: center;
            font-size: 20px !important;
    }
    #job-postings .accordion-body,
    #job-postings .accordion-body p{
        font-size:16px;
        line-height: 20px;
        margin-bottom:20px;
    }
}


/**
 * Sample report slider
 */
#sample-report-slider .owl-nav{
    position: absolute;
    top: 45%;
    right: 20px;
    left: 20px;
    display: flex;
    justify-content: space-between;
}
#sample-report-slider .owl-dots{
    margin-top: 10px;
    }
#sample-report-slider .owl-nav .disabled{
    visibility: hidden;
}
#sample-report-slider .owl-nav i {
    font-size: 60px;
    color:var(--red);
}
#sample-report-slider .owl-nav [class*=owl-]:hover i{
    opacity: 0.7;
}
#sample-report-slider .owl-nav [class*=owl-]:hover {
    background: none;
}
@media (max-width: 768px) {
    #sample-report-slider .owl-nav{
        position: absolute;
        top: 42%;
    }
}



/**
 *  Block Revealer Effect
 **/
#rev-1.block-revealer,
#rev-2.block-revealer {
    display: inline-block;
}
.block-revealer a:hover {
    color: var(--red) !important;
}
@media (max-width: 768px) {
    .fl-node-kgvfci67qo3h h2 {
        font-size: 24px !important;
    }

}




/**
 * RESPONSIVE
 ***********************/

/*
    MOBILE MAX 768px
 */
@media (max-width: 768px) {
    #mobile-menu-control-wrapper .menu-bar-items {
        /*display: none;*/
    }

    #primary-header-menu {
        display: none;
    }

}
/*
    MINIMUM TABLET 769px
 */
@media (min-width: 769px){
    .sub-menu-right:not(.toggled),
    .sub-menu-right.toggled .menu-bar-items {
        display:none;
    }

    .sub-menu-right.toggled .menu-toggle {
        margin-left: auto !important;
    }
    .sub-menu-right.toggled .menu-toggle span.mobile-menu{
        display:none;
    }

    
    #site-navigation {
        position: absolute;
            top: 0px;
            right: 0px;
            left: 0px;
            background-color: #000 !important;
            margin:0 !important;
    }

    .inside-navigation {
        padding-top: 25px;
    }
}



@media (max-width: 768px) {
    /* CSS in here for mobile only */
}
@media (min-width: 769px) and (max-width: 1024px) {
    /* CSS in here for tablet only */
}
@media (min-width: 1025px) {
    /* CSS in here for desktop only */
}