/*
Theme Name:     Fireworks PR
Theme URI:      https://visualcomposer.io/visual-composer-starter-theme/
Description:    A child theme of Visual Composer Starter Theme
Author:         The Visual Composer Team
Author URI:     https://visualcomposer.io/
Version:        1.0.0
Template:       visual-composer-starter
*/



/******************* Base *******************/
* {
    outline: none !important;
}
body {
    background: #000;
}
p {
    font-family: IBM Plex Serif;
    color: #0F0F0F;
}
ul {
    list-style: none;
    padding: 0;
}
li {
    padding: 0 !important;
}
li:before {
    display: none;
}
a,
a:focus,
a:hover {
    text-decoration: none;
    border-bottom: 0 !important;
}

body.home.page-template-default.page.page-id-48.logged-in.vcwb.edit {
    overflow: scroll!important;
}
html {
  -webkit-transition: height 1s;
  -moz-transition: height 1s;
  transition: height 1s;
}

/******************* Custom *******************/
.single-case_studies .vce-text-block-wrapper {/*font-size: 1.2vw;*/ font-family: IBM Plex Serif; }
.single-case_studies h3.headings {font-size: 43px!important; }
.people-text .vce-col-inner {max-width: 839px; margin: 0 auto!important; }
.people-text .vce-col-inner p.paragraphs {text-align: justify!important; }

a.popup-our-people-link {
    color: #FF5B62;
    text-decoration: underline;
}
.bg-main-red {
    background: #E23A41;
}
.bg-sub-red {
    background: #FF5B62;
}
.color-sub-red {
    color: #FF5B62 !important;
}
.color-dark-grey {
    color: #0F0F0F;
}
.color-light-grey {
    color: #D8D8D8;
}
.color-white {
    color: #FFFFFF;
}
.headings,
.sub-headings {
    font-family: Hind;
    font-weight: 300;
    letter-spacing: 2.5px;
    margin-bottom: 0.4em;
}
.headings {
    font-size: 4.5vw;
}
.sub-headings {
    font-size: 3vw;
}
.social-icons-container img:hover {
    width: 3vw;
}
.social-icons-header img:hover {
    width: 35px;
}
#fullscreen-menu .fullscreen-socials img:hover {
    width: 3vw !important;
    height: 3vw;
}
.vce-row-container {
    margin-top: -2px;
}
.grid-gap-html {
    display: none;
}
.grid-gap {
    width: 3.5%;
}
.page-id-269 .client-grid-inner.client-599 .client-content .client-brand .client-logo {
    max-width: 127% !important;
}
html.pum-open.pum-open-overlay.pum-open-scrollable body > *[aria-hidden] {
    padding-right: 0px;
}
.page-id-625 .case-studies-grid,
.page-id-620 .testimonials-grid {
    display: flex;
    position: relative;
    margin: 0 auto;
    text-align: center;
    overflow: unset !important;
    flex-wrap: wrap;
    justify-content: space-between;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-justify-content: space-between;
}
.page-id-620 .testimonial-content-container {
    position: relative;
}
.page-id-620 .testimonial-content-container .testimonial-excerpt,
.page-id-620 .testimonial-content-container .testimonial-full-content {
    position: absolute;
    top: 0;
    width: 100%;
}
.page-id-620 .testimonial-content-container .testimonial-full-content {
    max-height: 250px;
    overflow-y: auto;
}
.page-id-620 .testimonial-content-container .testimonial-excerpt p,
.page-id-620 .testimonial-content-container .testimonial-full-content p {
    text-align: center;
}
.page-id-620 .testimonial-excerpt .testimonial-read-more {
    display: block;
    margin-top: 1.5rem;
    color: #FF5B62;
    text-decoration: underline;
}
.page-id-620 .testimonials-grid .testimonials-grid-inner {
    width: 31%;
    height: 450px;
    overflow: hidden;
    border: 1px solid #eee;
    background: #fff;
    position: relative;
    margin: 0px 0px 5vw 0px;
}
.page-id-625 .case-studies-grid .case-study-grid-inner {
    width: 31%;
    overflow: hidden;
    border: 1px solid #eee;
    background: #fff;
    position: relative;
    margin: 0px 0px 5vw 0px;
    height: 65.038vh;
}
.page-id-625 .case-studies-grid .case-study-grid-inner:hover,
.page-id-620 .testimonials-grid .testimonials-grid-inner:hover {
    box-shadow: 0 8px 25px -2px rgba(179, 179, 179, 0.4);
}
.page-id-625 .case-study-grid-inner .case-study-info {
    display: block;
    font-size: 1vw;
    text-align: center;
    font-family: IBM Plex serif;
    line-height: 1.5;
    position: absolute;
    bottom: -79%;
    /*bottom: -100%;*/
    left: 0;
    height: 100%;
    width: 100%;
    background: #fff;
    padding: 1.5vw 1.5vw 1.5vw !important;
    margin-bottom: 0px;
    transition: bottom ease 0.5s;
}
.page-id-620 .testimonials-grid-inner .testimonial-info {
    display: block;
    font-size: 1vw;
    text-align: center;
    font-family: IBM Plex serif;
    line-height: 1.5;
    position: absolute;
    bottom: -73%;
    left: 0;
    height: 100%;
    width: 100%;
    background: #fff;
    padding: 1.5vw 1.5vw 1.5vw !important;
    margin-bottom: 0px;
    transition: bottom ease 0.5s;
}
.page-id-625 .case-study-grid-inner:hover .case-study-info {
    bottom: -25%;
}
.page-id-620 .testimonials-grid-inner:hover .testimonial-info {
    bottom: 0%;
}
.page-id-625 .case-study-title,
.page-id-620 .testimonial-title {
    text-transform: capitalize;
    letter-spacing: 1px;
    font-size: 1.8vw;
    margin-bottom: 1.3em !important;
    line-height: 1.3;
    font-weight: 100;
    height: 3.5vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-family: Hind;
    font-weight: 300;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-justify-content: center;
}
.page-id-625 .case-study-tags-list {
  margin-bottom: 25px !important;
}
.page-id-625 .case-study-tags-list li {
    display: inline-block;
    font-size: 0.9vw;
    text-transform: uppercase;
    opacity: 0.5;
    border-right: 1px solid ;
    line-height: 1;
    padding: 0 6px !important;
    letter-spacing: 0.5px;
    font-family: Hind;
    font-weight: 300;
}
.page-id-625 .case-study-tags-list li:last-child {
    border: none;
    padding-right: 0 !important;
}
.page-id-625 .case-study-tags-list li:first-child {
    padding-left: 0 !important;
}
.page-id-625 .case-study-summary {
    padding: 5px 10px;
}
.page-id-625 .case-study-featured,
.page-id-620 .testimonials-grid .testimonial-featured {
    overflow: hidden;
    line-height: 0;
    height: 75%;
}
.page-id-625 .case-study-featured img,
.page-id-620 .testimonial-featured img {
    height: 100%;
    object-fit: cover;
    filter: none !important;
    border-radius: 0;
    box-shadow: none;
    width: 100%;
}
.page-id-625 .case-study-content,
.page-id-620 .testimonial-content {
    padding: 5px 10px;
}
.page-id-625 .read-more,
.page-id-620 .read-more {
    text-transform: lowercase;
    display: block;
    padding: 1em;
    color: #FF5B62;
    text-decoration: underline;
}
.page-id-625 .case-study-grid-inner .case-study-info p {
    margin-bottom: 10px;
}
.page-id-625 .case-study-grid-inner .case-study-info p.case-study-year {
    margin-bottom: 25px !important;
}
.page-id-620 .testimonials-grid-inner .testimonial-info .testimonial-customer-title-company {
    margin-bottom: 25px !important;
    display: inline-block;
    font-size: 0.9vw;
    text-transform: uppercase;
    opacity: 0.5;
    line-height: 1;
    padding: 0 6px !important;
    letter-spacing: 0.5px;
    font-family: Hind;
    font-weight: 300;
}
.home .client-grid-inner {
    margin-bottom: 30px;
}
.home .client-featured img {
    object-fit: cover;
    filter: brightness(80%);
    height: 100%;
}
.home .client-grid .slick-track,
#post-grid-158 .slick-track {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-justify-content: space-between;
}
#post-grid-158 .slick-track {
    height: 480px; 
    width: 100% !important;
}
.testimonial-popup-container {
  padding: 2.5vw 2.5vw;
}
.testimonial-popup-featured-image, .testimonial-popup-content {
  width: 50%;
  float: left;
}
.testimonial-popup-content {
  padding-left: 15px;
  display: table;
}
.testimonial-popup-content p {
  display: table-cell;
  vertical-align: middle;
}
.post-grid .item .layer-media img {
  height: 422px !important;
}


/****** Homepage Links ******/
.page-anchor-links .vce-col-content {
  padding: 0 !important;
}
#menu-home-links {
    display: flex;
    justify-content: space-between;
    margin: 0;
    -webkit-justify-content: space-between;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
}
#menu-home-links li a {
    color: #fff;
    font-family: Hind;
  font-weight: 300;
  letter-spacing: 1.2px;
  font-size: 1.2vw;
}

/****** What We Do Row ******/
#what-we-do {
  overflow: hidden;
}
.what-we-do-list li {
  font-family: IBM Plex Serif;
  opacity: 0.5;
  line-height: 2;
  transition: all ease 0.2s;
  font-size: 1.2vw;
}
.what-we-do-list li:hover {
  color: #FF5B62;
  cursor: pointer;
  opacity: 1;
}
.what-we-do-bg {
  position: absolute !important;
  width: 55%;
  right: -12%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
.what-we-do-content {
  z-index: 2;
}

/****** Achieve Row Links ******/
.achieve-menu {
  display: flex;
  justify-content: space-between;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-justify-content: space-between;
}
.achieve-menu li {
    padding: 0 !important;  
}
.achieve-menu li:before {
    display: none;
}
.achieve-menu li a {
  color: #fff;
  border: none;
  font-family: IBM Plex Serif;
  font-size: 2.5vw;
  letter-spacing: 1.5px;
  opacity: 0.5;
  transition: all ease 0.3s;
}
.achieve-menu li.active a {
  opacity: 1;
}
.achieve-menu li a:hover,
.achieve-menu li a:focus {
    color: #fff;
    opacity: 1;
}
.achieve-menu li.active:after {
  content: '';
  background: #fff;
  height: 2px;
  width: 100%;
  display: block;
  position: relative;
  top: -5px;
}
.achieve-text {
  position: relative;
  top: -8vw;
}


/****** Our People Row ******/
.our-people-list {
  position: relative;
  left: -18%;
  padding: 3vw 5vw;
  width: calc(100% + 18%);
}
.our-people-list ul{
  margin-bottom: 0;
}
.our-people-list ul li:not(:last-child) {
  margin-bottom: 3vw;
}
.our-people-list a {
  display: block;
  font-family: IBM Plex Serif;
  font-size: 2.5vw;
  font-weight: 300;
  color: #fff;
  letter-spacing: 1.5px;
  margin-bottom: 6px;
}
.our-people-list a:hover,
.our-people-list a:focus {
  color: #fff !important;
}
.our-people-list ul li span {
  text-transform: uppercase;
  color: #fff;
  font-family: IBM Plex serif;
  letter-spacing: 1px;
  opacity: 0.5;
  font-weight: 300;
  font-size: 1.2vw;
}


.our-world-posts .slick-dots {
    margin-top: 30px !important;
}

/****** Responsive ******/
@media only screen and (max-width: 479px) {
  #post-grid-158 .element_2 {
    width: 100% !important;
  }
}
@media screen and (max-width: 425px) {
  .what-we-do-list li {
    font-size: 3.5vw !important;
    text-align: left !important;
  }
  .header-text {
    font-size: 4.5vw !important;
  }
  .grid-nav-bottom {
    display: none;
    }
  .achieve-menu li a {
    font-size: 4vw;
  }
  .achieve-text {
    top: -15vw;
    }
  .achieve-inner-text {
    font-size: 3.5vw !important;
    margin-top: -10px;
  }
  .our-people-list ul li:not(:last-child) {
    margin-bottom: 7vw;
  }
  .our-people-list {
    left: unset;
    width: 90%;
    margin: auto;
    top: -60px;
  }
  .our-people-list ul li span {
    font-size: 3.5vw;
    display: block;
    text-align: center;
    }
  .our-people-list a {
    font-size: 7vw;
    text-align: center;
    }
  .testimonials-carousel {
    height: 160vw;
    }
  .testimonials-inner {
    display: block;
    }
  .customer-image {
    width: 100%;
    padding: 30px 0 0;
    left: unset;
    margin-left: unset;
  }
  .customer-featured img {
    height: 60vw;
  }
  .customer-testimonial {
    padding: 5%;
        max-width: 100%;
  }
  .customer-excerpt {
    text-align: center;
    font-size: 4vw;
  }
  .customer-details, .customer-name {
    font-size: 3.5vw;
    text-align: center;
    }
  .testimonial-carousel-controls {
    position: unset;
    padding: 0;
    text-align: center;
    margin-top: 20px;
    }
  .testimonial-carousel-controls .controls {
    font-size: 3.5vw;
  }
  .testimonial-carousel-controls .control-prev {
    margin: 0;
  }
  .what-we-do-bg {
    right: -30%;
    top: 70%;
    width: 100%;
    }
}

/*@media only screen and (min-width: 425px) {
  #post-grid-158 .item {
      width: 31% !important;
  }
}*/
@media only screen and (max-width: 768px) {
  #post-grid-158 .item {
    height: 300px !important;
  }
  #post-grid-158 .slick-track {
    height: 330px; 
  }
}
@media only screen and (max-width: 425px) {
  #post-grid-158 .item {
    height: auto !important;
  }
  #post-grid-158 .slick-track {
    height: auto; 
  }
}

/*@media only screen and (min-width: 425px) {
    .home #post-grid-158 .item {
        width: 31%!important;
    }
}*/
@media only screen and (max-width: 991px) {
    .page-id-620 #el-f77097c0 > .vce-col-inner {
        padding: 0 !important;
    }
    .page-id-694 #el-58708377 .headings {
        font-size: 4vw;
    }
}

@media only screen and (max-width: 1023px) {
    .grid-gap {
      width: 1.35%;
    }
}
@media only screen and (max-width: 991px) {
    .grid-gap {
      width: 13.5%;
    }
}
@media only screen and (max-width: 767px) and (min-width: 426px) {
    .header-right-elements img {
        width: 60%;
    }
}
@media only screen and (max-width: 767px) and (min-width: 320px) {
    #post-grid-404 .item {
        width: 100% !important;
    }
    #post-grid-404 .grid-items .item .excerpt_read_more {
        width: 100% !important;
    }
}
@media only screen and (max-width: 767px) {
    .home #post-grid-158 .grid-items {
      flex-direction: column;
    }
    .home #post-grid-158 .item {
        width: 100% !important;
    }
    .page-id-625 .case-studies-grid .case-study-grid-inner,
    .page-id-620 .testimonials-grid .testimonials-grid-inner {
        width: 100%;
    }
    .customer-featured img {
        height: 100% !important;
    }
    .testimonials-inner {
        flex-direction: column !important;
    }
    .testimonial-carousel-controls {
        text-align: center !important;
    }
    .testimonial-carousel-controls span:first-child {
        margin-left: 0px !important;
    }
    .customer-testimonial {
        max-width: 100% !important;
        padding-left: 8vw !important;
    }
    .customer-image {
        width: 100% !important;
        padding: 31px 0px !important;
    }
    .customer-excerpt {
        font-size: 12px !important;
    }
    .customer-details, .customer-name {
        font-size: 8px !important;
    }
    .testimonial-carousel-controls .controls {
        font-size: 9px !important;
    }
    .grid-gap {
        width: 0px;
    }
    .header-right-elements {
        text-align: right;
    }
    #fullscreen-menu #menu-main-menu {
        column-count: 1 !important;
        width: 24% !important;
        -webkit-column-count: 1 !important;
        -moz-column-count: 1 !important;
    }
    #fullscreen-menu .fullscreen-socials {
        margin: 0px 10px;
    }
    .our-people-list {
        left: inherit !important;
        width: 100% !important;
    }
    .header-text {
        font-weight: 400 !important;
    }
    #fullscreen-menu .fullscreen-socials img:hover {
        width: 6vw !important;
        height: 6vw;
    }
}

@media only screen and (max-width: 767px) {
    .view-all-testimonials {
      margin-top: 25px !important;
    }
    .view-all-testimonials .vce-button--style-outline-container--align-left {
      text-align: center;
    }
    .page-id-694 #el-3356b631 > .vce-col-inner {
      margin: 25% 0;
    }
}

@media screen and (max-width: 425px) {
    .page-id-694 .headings {
        font-size: 9vw !important;
    }
    .paragraphs {
        font-size: 3.5vw !important;
        text-align: left !important;
    }
    .paragraphs-quote {
        font-size: 3.8vw !important;
        text-align: left !important;
    }
    .sub-headings {
        font-size: 10vw;
        text-align: center !important;
    }
    .customer-excerpt {
        font-weight: 400 !important;
    }
    .btn-main span.vce-button--style-outline-wrapper.vce, 
    .btn-main span.vce-button--style-outline-wrapper.vce a,
    .btn-main span.vce-button--style-outline-wrapper.vce button {
        width: 100%;
        line-height: 2;
    }
    #what-they-say .btn-main span.vce-button--style-outline-wrapper.vce button {
        margin-top: 15px;
    }
    #fullscreen-menu .btn-main span.vce-button--style-outline-wrapper.vce, 
    #fullscreen-menu .btn-main span.vce-button--style-outline-wrapper.vce a,
    #fullscreen-menu .btn-main span.vce-button--style-outline-wrapper.vce button {
        width: inherit;
        line-height: inherit;
    }
    .our-people-list ul li span {
        font-weight: 400 !important;
    }
    .achieve-menu {
        flex-flow: row wrap;
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
        -webkit-justify-content: center !important;
        max-width: 75%;
        margin: 0 auto !important;
    }
    .achieve-menu li {
        margin-right: 22px;
    }
    .achieve-menu li.support, .achieve-menu li.engage {
        margin-right: 0px;
    }
    .home .client-grid-inner {
        min-height: 550.953px;
    }
}

@media only screen and (max-width: 544px) {
    .page-id-694 #el-3356b631 > .vce-col-inner {
      margin: 25% 0;
    }
}

@media only screen and (max-width: 375px) {
    #post-grid-158 .item {
        width: 31% !important;
    }
}
@media only screen and (max-width: 325px) {
    #what-they-say .btn-main span.vce-button--style-outline-wrapper.vce button {
        margin-top: 25px;
    }
}

/******************* Header *******************/
#home-splash {
    display: none;
}
body.home #home-splash {
    display: block;
}
header {
    z-index: 99;
}
.toggle-menu-container .vce-raw-html-wrapper {
    display: flex;
    justify-content: flex-end;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-justify-content: flex-end;
}
.social-icons-header {
    display:inline-block;
    padding-top: 5px;
    padding-right: 10px;
}

/* 
* Added new css style: transition and the different transition 
* kits needed to be supported by other browsers 
*/
.social-icons-header img {
    width: 30px;
    transition: width .25s ease-in-out;
    -webkit-transition: width .25s ease-in-out;
    -moz-transition: width .25s ease-in-out;
    -ms-transition: width .25s ease-in-out;
    -o-transition: width .25s ease-in-out;
}
.menu-toggle {
    cursor: pointer;
}
/* .splash-col,
.splash-col .vce-col-content, 
.splash-col .vce-col-inner {
    position: unset !important;
}
.splash-skip {
    position: absolute !important;
    bottom: 4%;
    left: 50%;
    transform: translateX(-50%);
    animation: skip 3s ease 2s infinite alternate;
    cursor: pointer;
}
.splash-skip-icon {
    color: #E23A41;
    font-size: 1.5vw;  
}
@keyframes skip {
    from {
        bottom: 4%;
    }
    to {
        bottom: 2%;
    }
} */

@media screen and (max-width: 425px) {
    .menu-toggle {
        margin-top: 5px;
        width: 100%;
    }
}


/******************* Fullscreen  Menu *******************/
#fullscreen-menu .menu-cta-btn {
    background: none;
    border: 1px solid;
    font-family: Hind;
    color: #fff;
    letter-spacing: 1.5px;
    font-size: 21px !important;
    font-weight: 300;
    padding: 15px 90px;
}
#fullscreen-menu .menu-logo {
    position: absolute;
    top: 22px;
    left: 50%;
    transform: translateX(-50%);
}
#fullscreen-menu .vce-row,
#fullscreen-menu .vce-row-content,
#fullscreen-menu .fullscreen-col,
#fullscreen-menu .vce-col-inner,
#fullscreen-menu .vce-col-content {
    height: 100%;
}
#fullscreen-menu .vce-col-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-justify-content: space-between;
}
#fullscreen-menu .vce-col,
#fullscreen-menu .vce-col-inner,
#fullscreen-menu .vce-col-content,
#fullscreen-menu .vce-widgets-wrapper {
    position: static;
}
#fullscreen-menu {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 98;
    transition: all ease-in-out 0.2s;
    visibility: hidden;
    opacity: 0;
}
#fullscreen-menu.open {
    visibility: visible;
    opacity: 1;
}
#fullscreen-menu .fullscreen-socials {
    display: inline-block;
}

/* 
* Added new css style: transition and the different transition 
* kits needed to be supported by other browsers 
*/
#fullscreen-menu .fullscreen-socials img {
    width: 2.5vw !important;
    height: 2.5vw;
    transition: width .25s ease-in-out;
    -webkit-transition: width .25s ease-in-out;
    -moz-transition: width .25s ease-in-out;
    -ms-transition: width .25s ease-in-out;
    -o-transition: width .25s ease-in-out;
    transition: height .25s ease-in-out;
    -webkit-transition: height .25s ease-in-out;
    -moz-transition: height .25s ease-in-out;
    -ms-transition: height .25s ease-in-out;
    -o-transition: height .25s ease-in-out;
}
#fullscreen-menu #fullscreen-menu-head {
    padding-top: 20px;
}

/*
* Added new css style: the different column-count
* kits needed to be supported by other browsers
*/
#fullscreen-menu #menu-main-menu {
    column-count: 2;
    width: 40%;
    margin: auto;
    -webkit-column-count: 2;
    -moz-column-count: 2; 
}
#fullscreen-menu #menu-main-menu li a {
    font-family: IBM Plex serif;
    color: #fff;
    letter-spacing: 2px;
    font-size: 2.5vw;
    font-weight: 100;
    padding-bottom: 2px;
}
#fullscreen-menu #menu-main-menu li:not(.fullscreen-socials) a:hover {
    border-bottom: 3px solid !important;
}
#fullscreen-menu .current-menu-item a {
    border-bottom: 3px solid !important;
}

@media screen and (max-width: 425px) {
    #fullscreen-menu-head {
        display: none;
    }
    .menu-close {
        padding-top: 9px !important;
    }

    /* 
    * Customized css: width 
    */
    #fullscreen-menu #menu-main-menu {
        max-width: 41%;
        width: 100% !important;
    }

    /*
    * Customized css: font-size
    */
    #fullscreen-menu #menu-main-menu li a {
        font-size: 6vw;
    }
    #fullscreen-menu .fullscreen-socials img {
        width: 6vw !important;
        height: 6vw;
    }
}


/******************* Footer *******************/
.footer-details a:hover {
    color: #FF5B62 !important;
}

@media screen and (max-width: 768px) {
    .footer-details * {
        text-align: center !important;
        margin-bottom: 3px !important;
        font-size: 16px !important;
    }
    .footer-bottom-link {
        display: block !important;
        margin: 0 !important;
    }
}

/******************* Client Grid *******************/
.client-grid {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-justify-content: space-between;
}
.client-grid-inner {
    height: 500px;
    overflow: hidden;
    border: 1px solid #f2f2f2;
    width: 31% !important;
    text-align: center;
    position: relative;
    transition: all ease 0.5s;
    margin-bottom: 5vw;
}
.client-grid-inner:hover {
    box-shadow: 0 8px 25px -2px rgba(178, 178, 178, 0.4);
}
.client-grid-inner:hover .client-content {
    bottom: 0;
}
/* .client-grid-inner:hover .client-summary {
    height: auto !important;
    padding-bottom: 0;
} */
.client-tags-list {
    margin-bottom: 0 !important;
}
.client-featured {
    height: 50%;
}
.client-content {
    height: 75%;
    position: absolute;
    background: #fff;
    transition: all ease 0.3s;
    bottom: -25%;
    width: 100%;
}
.client-content > a{
    color: #000;
}
.client-summary {
    background: #fff;
    width: 100%;
    padding: 7vw 1.5vw 1.5vw;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    transition: all ease 0.3s !important;
    height: 66.3%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-justify-content: space-between;
}
.client-full {
    padding: 0 1.5em 1.5em;
}
.client-title,
.client-tags-list li {
    font-family: Hind;
    font-weight: 300;
}
.client-title {
    text-transform: capitalize;
    letter-spacing: 1px;
    font-size: 1.8vw;
    margin-bottom: 10px !important;
    line-height: 1.3;
    font-weight: 100;
    height: 4.5vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-justify-content: center;
}
.client-tags-list li {
    display: inline-block;
    font-size: 0.9vw;
    text-transform: uppercase;
    opacity: 0.5;
    border-right: 1px solid;
    line-height: 1;
    padding: 0 6px !important;
    letter-spacing: 0.5px;
}
.client-tags-list li:first-child {
    padding-left: 0 !important;
}
.client-tags-list li:last-child {
    border: none;
    padding-right: 0 !important;
}
.client-excerpt,
.client-link {
    font-family: IBM Plex Serif;
    font-size: 1vw;
}
.client-excerpt {
    line-height: 1.3;
}
.client-link {
    color: #E23A41;
    text-transform: lowercase;
    text-decoration: none;
    transition: all ease 0.3s;
}
.client-link:hover {
    color: #E23A41;
    text-decoration: underline;
}
.client-brand {
    position: absolute;
    top: -6vw;
    width: 12vw;
    background: #fff;
    height: 12vw;
    border-radius: 50%;
    border: 1px solid #D8D8D8;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 50%;
    transform: translateX(-50%);
    z-index: 99;
    padding: 1em;
    overflow: hidden;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-justify-content: center;
}
.client-logo-none {
    font-size: 3em;
    font-weight: bold;
    font-family: IBM Plex serif;
}
.client-logo.logo-227 {
    width: 70%;
}
.client-221 .client-brand  {
    padding: 0;
}
@media only screen and (max-width: 1920px) {
  #post-grid-158.post-grid .item {
    height: 100% !important;
  }
}
@media screen and (max-width: 768px) {
    .client-grid-inner {
        height: 300px !important;
    }
    .client-excerpt {
        margin-bottom: 0 !important;
    }
}
@media only screen and (max-width: 479px) {
    .grid-items {
      display: block !important;     
    }
}
@media screen and (max-width: 425px) {
    .page-id-269 .client-grid-inner {
        width: 100% !important;
    }
    .client-grid-inner {
        height: 100% !important;
    }
    .client-title {
        font-size: 6vw !important;
        height: auto;
    }
    .client-summary {
        padding: 18vw 4vw 4vw;
        justify-content: unset;
    }
    .client-tags-list li {
        font-size: 2.5vw;
    }
    .client-summary {
        height: auto;
    }
    .client-excerpt,
    .client-link {
        font-size: 3.5vw;
    }
    .client-content {
        height: 100%;
        position: relative;
    }
    .client-featured {
        height: 250px;
    }
    .client-brand {
        top: -17vw;
        width: 34vw;
        height: 34vw;
    }
}


/******************** Slick ********************/
.slick-dots {
    margin-bottom: 0 !important;
    width: 100%;
    text-align: center;
}
.slick-dots button {
    width: 16px;
    height: 16px;
    color: transparent;
    overflow: hidden;
    padding: 0;
    border-radius: 50%;
    background: #000;
    opacity: 0.08;
    -ms-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.slick-dots li {
    width: auto !important;
    padding: unset !important;
    display: inline-block;
    background: transparent !important;
    margin: 0 4px;
}

/* 
* Added new css: border-color 
*/
.slick-dots .slick-active button {
    opacity: 1;
    color: #000 !important;
    border-color: #000;
}
.slick-dots .slick-active {
    background: transparent !important;
    box-shadow: unset !important;
}
ul.products.columns-4 .slick-dots li {
    margin: auto 4px !important;
}


/******************* Testimonial Carousel *******************/
.testimonials-carousel {
    position: relative;
    height: 33vw;
    margin: auto;
    overflow: hidden;
}
.testimonials-inner {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
}
.customer-image {
    width: 80%;
    padding: 4vw 0;
    position: relative;
    z-index: 1;
    left: 60px;
    margin-left: -60px;
    transition: all ease 1s;
}
.customer-featured img {
    object-fit: cover;
    width: 100%;
    height: 25vw;
}
.customer-testimonial {
    background: #FF5B62;
    padding: 4vw 6vw 0px 8vw;
    position: relative;
    z-index: 0;
    max-width: 60%;
    transition: all ease 1s;
}
.customer-excerpt {
    color: #fff;
    letter-spacing: 0.5px;
    font-style: italic;
    font-size: 1.5vw;
    font-family: IBM Plex serif;
    font-weight: 100;
    line-height: 1.5;
    margin-bottom: 25px !important;
}
.customer-details,
.customer-name {
    color: #fff;
    font-family: Hind;
    font-weight: 300;
    letter-spacing: 1.5px;
    margin: 0 !important;
    line-height: 1.5;
    opacity: 0.75;
    font-size: 1.1vw;
}
.customer-details {
    text-transform: uppercase;
}
.customer-name {
    text-transform: capitalize;
}
.testimonial-carousel-controls {
    position: inherit;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: right;
    padding: 10px 0px 10px 0px;
    background: #FF5B62;
}
.testimonial-carousel-controls .controls {
    color: #fff;
    opacity: 0.35;
    margin-left: 30px;
    text-transform: uppercase;
    font-family: Hind;
    font-size: 1.2vw;
    text-decoration: underline;
    letter-spacing: 1.5px;
    cursor: pointer;
    transition: all ease 0.3s;
}
.testimonial-carousel-controls .controls:hover {
    opacity: 1;
}
.testimonials-inner.active {
    z-index: 2;
}
.testimonials-inner .customer-image,
.testimonials-inner .customer-testimonial {
    opacity: 0;
    visibility: hidden;
}
.testimonials-inner.active .customer-image,
.testimonials-inner.active .customer-testimonial {
    opacity: 1;
    visibility: visible;
}


/******************* Page Foot Nav *******************/
.foot-nav-col {
    overflow: hidden;
    position: relative;
}
.foot-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-justify-content: center;
}
.foot-label,
.foot-list a {
    color: #fff;
    font-family: Hind;
    letter-spacing: 1px;
    font-weight: 300;
}
.foot-label {
    font-size: 2.5vw;
    line-height: 1;
    padding-right: 40px;
    margin: 0 !important;
}
.foot-list {
    margin: 0 !important;
    border-left: 2px solid #fff;
    padding-left: 25px !important;
    z-index: 1;
    position: relative;
}
.foot-list li {
    display: inline-block;
    font-size: 1.5vw;
    margin-right: 50px;
    line-height: 1.4;
}
.foot-list li a{
    opacity: 0.8;
    transition: all ease 0.3s;
}
.foot-list li a:hover{
    color: #fff;
    opacity: 1;
}
.foot-list li:last-child {
    margin: 0;
}
.foot-nav img {
    position: absolute;
    right: 1vw;
    z-index: 0;
    width: 25vw;
    opacity: 0.25;
    top: -20px;
}
.single-post-links a {
    color: #fff;
    font-weight: 300;
    font-family: Hind;
    font-size: 2vw;
    letter-spacing: 1.5px;
}
.next-post-link {
    text-align: right;
}

@media screen and (max-width: 425px) {
    .foot-list {
        border-left: none !important;
        padding-left: 0 !important;
    }
    .foot-list li {
        font-size: 4vw;
        margin-right: 10px;
    }
    .foot-label {
        font-size: 8vw;
        padding-right: 0 !important;
        margin-bottom: 15px !important;
    }
    .foot-nav img {
        right: -40%;
        width: auto;
        top: unset;
    }
    .foot-nav {
        flex-direction: column;
    }
    .single-post p {
        font-size: 3.5vw !important;
        text-align: center !important;
    }
    .next-post-link {
        float: right;
    }
    .previous-post-link {
        float: left;
    }
    .single-post-links a {
        font-size: 3.5vw;
    }
}


/******************* Instagram Feed *******************/
.instagram-pics li  {
    float: left;
    width: 16.6666667%;
}
.instagram-pics li img {
    width: 100%;
    object-fit: cover;
}
#social-links {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}
.follow-us-text {
    font-family: Hind;
    font-size: 3vw;
    letter-spacing: 1.5px;
    margin-left: 0.5em;
    font-weight: 300;
}
.social-icons-container {
    margin: 0 1em;
}

/* 
* Added new css style: transition and the different transition 
* kits needed to be supported by other browsers 
*/
.social-icons-container img {
    width: 2.5vw;
    transition: width .25s ease-in-out;
    -webkit-transition: width .25s ease-in-out;
    -moz-transition: width .25s ease-in-out;
    -ms-transition: width .25s ease-in-out;
    -o-transition: width .25s ease-in-out;
}

@media screen and (max-width: 425px) {
    .instagram-pics {
        margin: 0 !important;
    }
    .instagram-pics li  {
        float: left;
        width: 33.333333%;
    }
    #instagram-first .instagram-pics li:nth-child(n+7) {
        display: none;
    }
    #instagram-second .instagram-pics li:nth-child(-n+6) {
        display: none;
    }
    #social-links {
        position: unset;
        top: unset;
        left: unset;
        transform: unset;
    }
    #social-links > div,
    #social-links > div > div {
        display: block !important;
    }
    .follow-us-text {
        margin: 0;
        font-size: 12vw;
    }
    .social-icons-container {
        margin-bottom: 15px;
    }
    /*
    * Added an !important to this style
    */
    .social-icons-container img {
        width: 10vw !important;
    }
}


/******************* Get In Touch Form *******************/
.get-in-touch-fields {
    padding: 0 10px !important;
    margin-top: 1.5vw !important;
}
.get-in-touch-fields label {
    display: none !important;
}
.fields-half {
    display: inline-block;
    width: 50%;
}
.fields-full {
    width: 100%;
}
.get-in-touch-fields input,
.get-in-touch-fields textarea {
    padding: 1.2vw 2vw !important;
    font-family: Hind !important;
    border-radius: 0 !important;
    font-weight: 300 !important;
    font-size: 1vw !important;
}
.get-in-touch-fields input:focus,
.get-in-touch-fields textarea:focus,
.get-in-touch-fields select:focus {
    outline: none !important;
}
.ginput_container_select,
.get-in-touch-fields input,
.get-in-touch-fields textarea {
    border: 1px solid #d8d8d8;
}
.get-in-touch-fields .ginput_container {
    margin-top: 0 !important;
}
.ginput_container_select { 
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
}
.get-in-touch-fields select {
    border: none;
    background: none;
}
.gform_footer {
    text-align: center;
}
.gform_button {
    background: none;
    border: 1px solid;
    font-family: Hind;
    color: #0f0f0f;
    letter-spacing: 1.5px;
    font-size: 1.6vw !important;
    font-weight: 300;
    padding: 1.2vw 7vw;
    transition: background 0.2s ease;
}
.gform_button:hover {
    background: #0f0f0f;
    color: #fff;
    border-color: #0f0f0f;
}
.get-in-touch-fields .ginput_container_select:after {
    content: '\f107';
    position: absolute;
    right: 0;
    font-size: 1.2vw;
    font-family: FontAwesome;
    padding: 1.2vw 2.5vw;
    height: 100%;
    color: #0f0f0fa3;
    display: flex;
    align-items: center;
    z-index: 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -webkit-align-items: center;
}
.gform_wrapper select {
    padding: 1.2vw 2vw !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 1vw;
    color: #0f0f0fa3;
    line-height: 1.8;
    font-family: Hind;
    position: relative;
    z-index: 1;
}
.ginput_container {
    position: relative;
}
.pum-container {
    margin-bottom: 0;
}
.gform_wrapper .validation_error {
    color: #fff !important;
    border: none !important;
    background: #ff5b62;
    font-family: Hind;
    font-weight: 300 !important;
}
.gform_wrapper .gfield_error {
    background: none !important;
    border: none !important;
    margin: 8px 0 0 !important;
}
.gform_wrapper .gfield_error.fields-half {
    width: 50%;
}
.gform_wrapper .gfield_error:not(.fields-half) {
    width: 100% !important;
    max-width: 100% !important;
}
.gform_wrapper .gfield_error input,
.gform_wrapper .gfield_error textarea,
.gform_wrapper .gfield_error .ginput_container_select {
    border: 1px solid #ff5b62 !important;
}
.gform_wrapper .validation_message {
    color: #ff5b62;
    font-weight: 300;
    font-family: Hind;
    padding: 0 !important;
}
.gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
    max-width: 100% !important;
}
.gform_confirmation_wrapper {
    text-align: center;
    margin-top: 2em;
    font-weight: 300;
}


@media screen and (max-width:  425px) { 
    .gform_button {
        font-size: 5vw !important;
    }
    .get-in-touch-fields input,
    .get-in-touch-fields textarea,
    .gform_wrapper select,
    .get-in-touch-fields .ginput_container_select:after  {
        font-size: 4vw !important;
    }
    .get-in-touch-fields input, .get-in-touch-fields textarea {
        padding: 2vw 4vw !important;
    }
    .get-in-touch-fields {
        padding: 0 !important;
    }
    .fields-half {
        display: block;
        width: 100%;
    }
}

/******************* People Modal *******************/
.people-modal-content {
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
}
.people-image {
    width: 60%;
    height: 500px;
}
.people-image img {
    margin: 0 !important;
    object-fit: cover;
    height: 100% !important;
}
.people-details {
    padding: 2vw;
    width: 40%;
}
.people-name {
    color: #FF5B62;
    font-size: 2.5vw;
}
.people-title {
    font-size: 1.2vw;
    color: rgba(255, 91, 98, 0.6);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 1.5em;
}
.people-details p {
    line-height: 1.5;
    font-size: 1vw;
}

@media screen and (max-width: 425px) {
    .people-modal-content {
        display: block;
    }
    .people-image {
        width: 100%;
        height: 250px;
    }
    .people-details {
        padding: 4%;
        width: 100%;
    }
    .people-name {
        font-size: 8vw;
    }
    .people-title {
        font-size: 3.5vw;
        margin-bottom: 1em;
    }
    .people-details p {
        font-size: 3vw;
    }
}


/******************* Responsive *******************/
@media screen and (max-width: 1100px) {
  .page-id-620 .testimonials-grid-inner .testimonial-info {
    font-size: 14px!important;
}
}
@media screen and (min-width: 1024px) {
    .vcv-layout-wrapper {
        grid-template-columns: 1fr 90% 1fr;
    }
    .vcv-header .vce-row:not([data-vce-full-width="true"]),
    .vcv-footer #el-928530bb:not([data-vce-full-width="true"]),
    .vcv-footer #el-2bd02747:not([data-vce-full-width="true"]) {
        max-width: 90%;
    }
    .vcv-header .vce-row[data-vce-full-width="true"]:not([data-vce-stretch-content="true"]) > .vce-row-content {
        padding-left: calc(50% - 45%);
        padding-right: calc(50% - 45%);
    }

    .client-grid-inner {
        height: 430px;
    }
}
@media screen and (min-width: 1280px) {
    .client-grid-inner {
        height: 450px;
    }
}
@media screen and (min-width: 1440px) {
    .client-grid-inner {
        height: 480px;
    }
}
@media screen and (min-width: 1600px) {
    .client-grid-inner {
        height: 530px;
    }
}
@media screen and (min-width: 1780px) {
    .client-grid-inner {
        height: 560px;
    }
}
@media screen and (min-width: 1920px) {
    .client-grid-inner {
        height: 615px;
    }
    .foot-nav img {
        width: 21vw;
    }
}
#insta2{display: none;}
#insta1 .vce-shortcode-wrapper, #insta2 .vce-shortcode-wrapper {
    margin-bottom: 0px;
}
svg.svg-inline--fa.fa-clone.fa-w-16.sbi_lightbox_carousel_icon {
    display: none!important;
}
@media only screen and (max-width: 425px){
	#insta1 #sb_instagram.sbi_col_6.sbi_disable_mobile #sbi_images .sbi_item:nth-child(n+7) {
	    display: none!important;
	}
	#sb_instagram.sbi_col_6.sbi_disable_mobile #sbi_images .sbi_item {
	    width: 33.333%!important;
	}
	#insta2 #sb_instagram.sbi_col_6.sbi_disable_mobile #sbi_images .sbi_item{
	    display: none!important;
	}
	#insta2 #sb_instagram.sbi_col_6.sbi_disable_mobile #sbi_images .sbi_item:nth-child(n+7) {
	    display: inline-block!important;
	}
	#insta2{ display: block!important; }
}

	.tfree-client-testimonial p {
		color: white !important;
		margin: 0 auto;
	}
@media only screen and (min-width: 768px){
		.tfree-client-testimonial p {
		max-width: 70%;
		}
}

.tfree-client-name {
    font-family: Hind;
}
.tfree-client-designation {
	font-family: IBM Plex Serif;
	font-style: italic;
}
@media only screen and (max-width: 768px){
	.page-id-2706 .paragraphs p { font-size: 1.7 em !important; }
	.fpr-home-logos .vce-image-gallery-item {
		-webkit-flex: 0 0 50%;
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
	}
}
@media only screen and (min-width: 1400px){
	#fullscreen-menu #menu-main-menu li a {
		font-size: 35px !important;
	}
}
.page-id-2706 .vce-asset-color-gradient-container { opacity: 0; }
.page-id-2706 .vce-asset-color-gradient-container {
    -webkit-animation: 10s ease 0s normal forwards 1 fadein;
    animation: 10s ease 0s normal forwards 1 fadein;
}

@keyframes fadein{
    0% { opacity:0; }
    50% { opacity:0; }
    100% { opacity:1; }
}

@-webkit-keyframes fadein{
    0% { opacity:0; }
    50% { opacity:0; }
    100% { opacity:1; }
}

.entry-content ul.fpr-home-list>li {
	list-style: disc;
	padding-bottom: 15px !important; font-size: 14pt;
	
}
.entry-content ul.fpr-home-list>li::marker {
	color: #e23a41;
}

html { scroll-behavior: smooth; }

.tfree-client-testimonial, .tfree-testimonial-content, .tfree-client-name { font-size: 16pt !important; }

.vce-basic-menu-container #fpr-nav-right .vce-basic-menu ul .menu-item a { padding: 22px 0.5vw; text-transform: lowercase; font-weight: 400; font-family: hind; }

.vce-basic-menu-container #fpr-nav-right .vce-basic-menu ul .menu-item.fpr-contact-btn a {
	font-family: Hind;
    font-weight: 300;
	font-size: 16px;
    letter-spacing: 1px;
	padding: 10px 20px 10px 20px;
	margin-top: 10px;
	margin-left: 10px;
	border: 1px solid white !important;
	text-transform: lowercase;
	transition: border-bottom .4s ease,color .4s ease,background-color .4s ease;
}
.vce-basic-menu-container #fpr-nav-right .vce-basic-menu ul .menu-item.fpr-contact-btn a:hover {
	border: 1px solid #e23a41 !important;
	background: #e23a41;
	color: white;
}

.btn-main.home-slide a { padding-bottom: .7vw !important; padding-top: .7vw !important; padding-left: 5vw !important; padding-right: 5vw !important; font-size: 15px; }
.btn-main.home-slide .vce-button--style-outline-text { font-size: 1.4vw !important; }

#tip-sheet-1 input {
	font-size: 1vw;
    color: #0f0f0fa3;
    line-height: 1.8;
    font-family: Hind;
	border: 1px solid #d8d8d8;
	background: transparent;
	padding: 1.2vw 2vw;
}
#tip-sheet-1 button {
    background: none;
    border: 1px solid;
    font-family: Hind;
    color: #0f0f0f;
    letter-spacing: 1.5px;
    font-size: 1.6vw !important;
    font-weight: 300;
    padding: 1.2vw 7vw;
	border-radius: 0;
    transition: background 0.2s ease;
}
#tip-sheet-1 button:hover {
    background: #e23a41;
    color: #fff;
    border-color: #e23a41;
}
@media (min-width: 768px) {
	.page-id-2914 #main-header, .page-id-2926 #main-header { max-width: 720px; margin: 0 auto; }
}
@media (min-width: 991px) {
.page-id-2914 #main-header, .page-id-2926 #main-header { max-width: 90%; margin: 0 auto; }
}