/************************************************ 

Stylesheet for ACF flexibile modules -- ONLY LOAD ON 'FLEXIBLE FULL WIDTH' TEMPLATE

*************************************************/
 :root {
   --grey: #171c21;
   --light-grey: #e9e9e9;
   --gold: #08b1a8;
   --global-width: 75rem;
   --white: #ffffff;
   --body-font-color: #ef7d00;

   --red: var(--cb-v1-accent);
   --green: #22b0b2;

   --red-window: rgb(244 55 25 / 80%);
   --hover-gold: #ef7d00;
   --curved-edge: 5px;
}

.template-flexible-full {
  overflow-x: hidden;
}

/********************* BOOTSTRAP OVERRIDES *********************/

.col.col-auto {
    flex: 1 0 0% !important;
}


/********************* SLICK *********************/

.slick-track { /* equalise height */
  display: flex !important;
}
.slick-slide { /* equalise height */
  height: inherit !important;
}

.cb-slick-style .slick-slider {
  margin-bottom: -1rem;
}

.cb-slick-style button.slick-arrow {
    position: absolute;
    top: calc(50% - 1rem);
    width: 2rem;
    height: 2rem;
    border: none;
    font-size: 0;  
    z-index: 5;  
    background-color: transparent;
    color: var(--red);
}

.cb-slick-style button.slick-arrow.slick-next:before,
.cb-slick-style button.slick-arrow.slick-prev:before {
  opacity: 1;
  font-size: 4rem;
  line-height: 0;
}

.cb-slick-style button.slick-arrow.slick-next {
  right: 0;
}

.cb-slick-style button.slick-arrow.slick-prev {
  left: 0;
}

@media (min-width: 768px) {

  .cb-slick-style {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
  } 

  .cb-slick-style button.slick-arrow.slick-next {
    right: -1rem;
  }

  .cb-slick-style button.slick-arrow.slick-prev {
    left: -1rem;
  }
}

.cb-slick-style button.slick-arrow.slick-next:before {
  content: "›";
}

.cb-slick-style button.slick-arrow.slick-prev:before {
  content: "‹";
}

.cb-slick-style ul.slick-dots {
    display: none !important;
    align-items: center;
    justify-content: center;
}




/********************* SPACING AND GENERAL SETTINGS *********************/

.flexible-full.dhrfonts.dhrfontsupdate h1, .flexible-full.dhrfonts.dhrfontsupdate .Header2 {
  font-weight: normal;
}

.below-hero {
  background-color: var(--white);
}
 .sticky-module {
   height: 0 !important;
}

 .sticky-module .sticky-fouc {
   opacity: 0;
   transition: all 1s ease;
}
 .sticky-module .sticky-fouc.is-stuck {
   opacity: 1;
}
 @media (max-width: 768px) {
   .sticky-module {
     display: none;
  }
}
 h1.no-hero {
   z-index: 1;
   position: relative;
}
 .no-hero {
   padding-top: 8rem;
}
 .no-hero .the-content {
   padding-top: 2rem;
}
 .psudeo-grid-padding-x {
   padding-right: 0.625rem;
   padding-left: 0.625rem;
}
 @media print, screen and (min-width: 40em) {
   .psudeo-grid-padding-x {
     padding-right: 0.9375rem;
     padding-left: 0.9375rem;
  }
}
 .reintroduced-container {
   padding-right: 0.625rem;
   padding-left: 0.625rem;
   max-width: var(--global-width);
   margin-left: auto;
   margin-right: auto;
}
 @media print, screen and (min-width: 40em) {
   .reintroduced-container {
     padding-right: 1.25rem;
     padding-left: 1.25rem;
  }
}
 .boxed-top {
   border-top: 1rem solid white;
}
 .module-shortcode .container, .module-tabs .container, .module-cta .container, .module-shortcode .boxed, .module-tabs .boxed, .module-cta .boxed {
   border: none;
   padding-right: 0;
   padding-left: 0;
   max-width: none;
}
 .container .flex-modules-container .container {
   padding: 0;
}
 .double-equal-pad {
   padding: 9rem 0;
}
 @media (max-width: 768px) {
   .double-equal-pad {
     padding: 2rem 0;
  }
}
 .equal-pad {
   padding: 4.5rem 0;
}
 @media (max-width: 768px) {
   .equal-pad {
     padding: 2rem 0;
  }
}
 .bottom-pad {
   padding-bottom: 4.5rem;
}
 @media (max-width: 768px) {
   .bottom-pad {
     padding-bottom: 2rem;
  }
}
 .top-pad, .the-content {
   padding-top: 4.5rem;
}
 @media (max-width: 768px) {
   .top-pad, .the-content {
     padding-top: 2rem;
  }
}
/********************* ANIMATION AND DELIGHTERS *********************/
 .wow {
   visibility: hidden;
}
/********************* UTILITY *********************/

.last-p-mb0 p:last-of-type {
  margin-bottom: 0;
}

.last-h2-mb0 h2:last-of-type {
  margin-bottom: 0;
}

.point-down:hover {
    transform: rotate(90deg);
}

.module-text hr {
  max-width: none;
  display: block !important; 
}

.text-right {
  text-align: right;
}
.full-height-children {
  display: -moz-box;
  display: -webkit-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-flex-direction: row;
  -moz-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}
.max-width-100px {
   max-width: 100px;
}
 .force-height {
   min-height: 28rem;
}
 .fine-margins {
   margin: 0 -0.1rem;
}
 .fine-margins .fine-margins-border {
   border: 0.1rem solid transparent;
}
 .rounded-corners {
   border-radius: 1rem;
}
 .border {
   border: 1px solid var(--grey);
   border-radius: 1rem;
}
 .border-bottom {
   border-bottom: 1px solid var(--grey);
}
 .border-gold {
   border: 1px solid var(--gold);
   border-color: var(--gold) !important;
}
 .narrow-page .container {
   max-width: 60.25rem;
}
 .container.container-wider {
   max-width: 100rem;
}
 .big-title {
   font-size: 1.75rem;
}
 p.big-title {
   font-size: 1.5rem;
}
 .small-text li, p.small-text li, .small-text p, p.small-text p, .small-text i, p.small-text i, .small-text h1, p.small-text h1, .small-text h2, p.small-text h2, .small-text h3, p.small-text h3, .small-text h4, p.small-text h4, .small-text h5, p.small-text h5, .small-text h6, p.small-text h6, .small-text a, p.small-text a, .small-text span, p.small-text span {
   font-size: 0.9rem;
   line-height: 1.4;
}

 .white-text {
   color: var(--white);
}
 .white-text .ssba-share-text, .white-text button, .white-text blockquote, .white-text cite, .white-text a, .white-text li, .white-text p, .white-text i, .white-text h1, .white-texth2, .white-text h2, .white-texth3, .white-text h3, .white-text h4, .white-text h5, .white-text h6 {
   color: var(--white) !important;
}
 .white-text .button {
   border-color: var(--white);
   color: var(--white);
}
 .dark-text {
   color: var(--body-font-color);
}
 .dark-text .menu a, .dark-text a, .dark-text li, .dark-text p, .dark-text i, .dark-text h1, .dark-text h2, .dark-text h3, .dark-text h4, .dark-text h5, .dark-text h6 {
   color: var(--body-font-color);
}
 .gold-text {
   color: var(--gold);
}
 .gold-text .menu a, .gold-text a, .gold-text li, .gold-text p, .gold-text i, .gold-text h1, .gold-text h2, .gold-text h3, .gold-text h4, .gold-text h5, .gold-text h6 {
   color: var(--gold);
}
 .gold-text a {
   text-decoration: none;
}
 .white-back {
   background-color: var(--white);
   position: relative;
   z-index: 1;
}
 .accent-overlay {
   position: relative;
   color: var(--white);
   z-index: 1;
}
 .accent-overlay:after {
   content: "";
   display: block;
   position: absolute;
   width: 100%;
   height: 100%;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   background-color: var(--red-window);
   z-index: -1;
}
 .accent-overlay li, .accent-overlay p, .accent-overlay i, .accent-overlay h1, .accent-overlay h2, .accent-overlay h3, .accent-overlay h4, .accent-overlay h5, .accent-overlay h6 {
   color: var(--white);
}
 .white-overlay {
   position: relative;
   z-index: 0;
}
 .white-overlay:after {
   content: "";
   display: block;
   position: absolute;
   width: 100%;
   height: 100%;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   background-color: rgba(246, 244, 245, .95);
   z-index: -1;
}
.purple-back {
  background-color: var(--red);
  color: var(--white);
}
.purple-back li, .purple-back p, .purple-back i, .purple-back h1, .purple-back h2, .purple-back h3, .purple-back h4, .purple-back h5, .purple-back h6, .purple-back a {
  color: var(--white);
}
.purple-back a {
  text-decoration: underline;
}

.green-back {
  background-color: var(--green);
  color: var(--white);
}
.green-back .client-testimonial:before, .green-back button.slick-arrow, .green-back cite, .green-back li, .green-back p, .green-back i, .green-back h1, .green-back h2, .green-back h3, .green-back h4, .green-back h5, .green-back h6, .green-back a {
  color: var(--white) !important;
}
.green-back a {
  text-decoration: underline;
}
.green-back a.btn {
  text-decoration: none;
}

.accent-window {
   background-color: var(--red-window);
   color: var(--white);
}
.accent-window li, .accent-window p, .accent-window i, .accent-window h1, .accent-window h2, .accent-window h3, .accent-window h4, .accent-window h5, .accent-window h6, .accent-window a {
   color: var(--white);
}
.accent-window a {
   text-decoration: underline;
}

 .light-grey-back {
   background-color: var(--light-grey);
}
 .light-grey-back-psuedo {
   position: relative;
   z-index: -1;
}
 .light-grey-back-psuedo:after {
   content: "";
   display: block;
   position: absolute;
   width: 100%;
   height: 100%;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   background-color: var(--light-grey);
   z-index: -1;
}
 .grey-back {
   background-color: var(--grey);
}
 .grey-back p, .grey-back i, .grey-back h1, .grey-back h2, .grey-back h3, .grey-back h4, .grey-back h5, .grey-back h6 {
   color: var(--body-font-color);
}
 .gold-back {
   background-color: var(--gold);
}
 .gold-back p, .gold-back i, .gold-back h1, .gold-back h2, .gold-back h3, .gold-back h4, .gold-back h5, .gold-back h6 {
   color: var(--white);
}
 .bold {
   font-weight: bold;
}
 .interchange {
   background-position: center;
   background-size: cover;
   background-color: #272c31;
   background-repeat: no-repeat;
   min-height: 10rem;
}
 .button, .mepr-submit, .button-primary, .comment-button input, #mpca-add-sub-user-btn, #mpca-add-sub-user-form input[type=submit], .post-password-form input[type=submit], .mepr-btn {
   cursor: pointer;
   display: inline-block;
   font-weight: 400;
   background-color: var(--gold);
   border-color: var(--gold);
   color: var(--white);
   text-align: center;
   vertical-align: middle;
   -webkit-user-select: none;
   -moz-user-select: none;
   -ms-user-select: none;
   user-select: none;
   padding: 0.375rem 0.75rem;
   font-size: 1rem;
   line-height: 1.5;
   border-radius: 0.25rem;
   -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
   transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
   transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
   transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
}
 .button.active {
   background-color: var(--red);
   border-color: var(--red);
}
 .button.hollow {
   color: var(--red);
   border-color: var(--red);
}
 .button:hover, .button:focus, .comment-button input:hover, .comment-button input:focus, .post-password-form input[type=submit]:hover, .post-password-form input[type=submit]:focus {
   background-color: var(--hover-gold);
}
 .button.alt-button {
   background-color: var(--red);
   border-radius: 3rem;
   color: var(--gold);
   padding-left: 1.5rem;
   padding-right: 1.5rem;
}
 .big-button.button {
    font-size: 1.25rem;
    padding: 1rem 3rem !important;
}
 .button-bucket {
   padding-bottom: 2rem !important;
   position: relative;
}
 .button-bucket .sink-button {
   position: absolute;
   bottom: 0;
}
 .bucket {
   position: relative;
}
 .bucket .sink {
   position: absolute;
   bottom: 0;
   width: 100%;
}
 .chunky-button {
   padding: 0.6rem 0.8rem;
   border: 1px solid transparent;
}
 .ghost-white.button {
   background-color: var(--white);
   color: black !important;
   border: 2px solid var(--red);
   border-radius: 0;
}

 .ghost-white.button:hover, .ghost-white.button:focus  {
   background-color: var(--red);
   color: var(--white) !important;
   border: 2px solid var(--red);
   border-radius: 0;
}
 .ghost.button {
   color: var(--red);
   background-color: transparent;
   border: 1px solid transparent;
}
 .ghost.button:hover, .ghost.button:focus {
   background: var(--gold);
   color: var(--white) !important;
   -webkit-transition: all 300ms;
  /* Safari */
   transition: all 300ms;
}
 .flex-centering {
   display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6 */
   display: -moz-box;
  /* OLD - Firefox 19- (buggy but mostly works) */
   display: -ms-flexbox;
  /* TWEENER - IE 10 */
   display: -webkit-flex;
  /* NEW - Chrome */
   display: flex;
   justify-content: center;
   align-items: center;
}

 .flex-middle {
   display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6 */
   display: -moz-box;
  /* OLD - Firefox 19- (buggy but mostly works) */
   display: -ms-flexbox;
  /* TWEENER - IE 10 */
   display: -webkit-flex;
  /* NEW - Chrome */
   display: flex;
   align-items: center;
}

 .flex-right {
   display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6 */
   display: -moz-box;
  /* OLD - Firefox 19- (buggy but mostly works) */
   display: -ms-flexbox;
  /* TWEENER - IE 10 */
   display: -webkit-flex;
  /* NEW - Chrome */
   display: flex;
   justify-content: right;
}

 .relative {
   position: relative;
}
 .expand-link {
   position: absolute;
   width: 100%;
   height: 100%;
}
 .part-spacing {
   margin-bottom: 0.9375rem;
}
 @media (max-width: 768px) {
   .part-spacing {
     margin-bottom: 1rem;
  }
   .part-spacing:last-child {
     margin-bottom: 1rem !important;
  }
}
 .part-spacing:last-child {
   margin: 0;
}
 .part-spacing-not-last-child.part-spacing:last-child, .part-spacing-not-last-child .part-spacing:last-child {
   margin-bottom: 0 !important;
}
 .mb-not-last-child.mb3:last-child, .mb-not-last-child .mb3:last-child {
   margin-bottom: 0 !important;
}
 .mb-not-last-child.mb2:last-child, .mb-not-last-child .mb2:last-child {
   margin-bottom: 0 !important;
}
 .mb-not-last-child.mb1:last-child, .mb-not-last-child .mb1:last-child {
   margin-bottom: 0 !important;
}
 .mb0 {
   margin-bottom: 0 !important;
}
 .mt0 {
   margin-top: 0 !important;
}
 .p0 {
   padding: 0 !important;
}
 .pl0 {
   padding-left: 0 !important;
}
 .pl1 {
   padding-left: 1rem !important;
}
 .pl2 {
   padding-left: 2rem !important;
}
 .pl4 {
   padding-left: 4rem !important;
}
 .pl6 {
   padding-left: 6rem !important;
}
 .pr0 {
   padding-right: 0 !important;
}
 .pr1 {
   padding-right: 1rem !important;
}
 .pr2 {
   padding-right: 2rem !important;
}
 .pr4 {
   padding-right: 4rem !important;
}
 .pr6 {
   padding-right: 6rem !important;
}
 .m0 {
   margin: 0 !important;
}
 @media (max-width: 768px) {
   .pl1, .pl2 {
     padding-left: 0 !important;
  }
   .pr1, .pr2 {
     padding-right: 0 !important;
  }
   .mt1 {
     margin-top: 1rem !important;
  }
   .mb1 {
     margin-bottom: 1rem !important;
  }
   .mb-half {
     margin-bottom: 0.5rem !important;
  }
   .mt2, .mt3, .mt4, .mt5, .mt6, .mt7, .mt8, .mt9, .mt10, .mt11, .mt12 .mt14, .mt15, .mt16, .mt20 {
     margin-top: 2em !important;
  }
   .mb2, .mb3, .mb4, .mb5, .mb6, .mb7, .mb8, .mb9, .mb10, .mb11, .mb12 .mb14, .mb15, .mb16, .mb20 {
     margin-bottom: 2em !important;
  }
}
 @media (min-width: 768px) {
   .mb-half {
     margin-bottom: 0.5rem !important;
  }
   .mt1 {
     margin-top: 1rem !important;
  }
   .mt2 {
     margin-top: 2rem !important;
  }
   .mt3 {
     margin-top: 3rem !important;
  }
   .mt4 {
     margin-top: 4rem !important;
  }
   .mt5 {
     margin-top: 5rem !important;
  }
   .mt6 {
     margin-top: 6rem !important;
  }
   .mt7 {
     margin-top: 7rem !important;
  }
   .mt8 {
     margin-top: 8rem !important;
  }
   .mt9 {
     margin-top: 9rem !important;
  }
   .mt10 {
     margin-top: 10rem !important;
  }
   .mt11 {
     margin-top: 11rem !important;
  }
   .mt12 {
     margin-top: 12rem !important;
  }
   .mt13 {
     margin-top: 13rem !important;
  }
   .mt14 {
     margin-top: 14rem !important;
  }
   .mt15 {
     margin-top: 15rem !important;
  }
   .mt16 {
     margin-top: 16rem !important;
  }
   .mb1 {
     margin-bottom: 1rem !important;
  }
   .mb2 {
     margin-bottom: 2rem !important;
  }
   .mb3 {
     margin-bottom: 3rem !important;
  }
   .mb4 {
     margin-bottom: 4rem !important;
  }
   .mb5 {
     margin-bottom: 5rem !important;
  }
   .mb6 {
     margin-bottom: 6rem !important;
  }
   .mb7 {
     margin-bottom: 7rem !important;
  }
   .mb8 {
     margin-bottom: 8rem !important;
  }
   .mb9 {
     margin-bottom: 9rem !important;
  }
   .mb10 {
     margin-bottom: 10rem !important;
  }
   .mb11 {
     margin-bottom: 11rem !important;
  }
   .mb12 {
     margin-bottom: 12rem !important;
  }
   .mb13 {
     margin-bottom: 13rem !important;
  }
   .mb14 {
     margin-bottom: 14rem !important;
  }
   .mb15 {
     margin-bottom: 15rem !important;
  }
   .mb16 {
     margin-bottom: 16rem !important;
  }
}

.alternate-title, .alternate-title a {
    color: initial !important;
    line-height: 1.35;
}

.bullets-to-ticks ul {
    list-style: none;
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

.bullets-to-ticks ul li {
    position: relative;
}

.bullets-to-ticks ul li:before {
    content: "✓";
    position: absolute;
    left: -1.5rem;
    color: var(--red);
}


/********************* HERO *********************/
 .solid-hero {
   background-color: var(--red);
   padding: 5.25rem 0;
}
 .inner-hero {
   padding: 2rem 0;
}
 .inner-hero .headline.simple-header {
   font-weight: 400;
}
 .inner-hero .headline .secondary-headline {
   display: block;
   font-weight: 400;
}
 .video-background {
   background-position: center;
   background-size: cover;
   color: #fff;
   background-color: #602482;
   overflow: hidden;
   position: relative;
}
 @media (max-width: 768px) {
   .video-background {
     min-height: 75vh;
  }
}
 .video-background video {
   max-width: 100%;
   position: absolute;
   width: 100%;
   margin: auto;
   min-width: 80rem;
   left: 50%;
   position: absolute;
   top: 50%;
   transform: translate(-50%, -50%);
}

/********************* MODULE - BUTTON *********************/

.module-button .mt {
    margin-top: 2rem;
}

/********************* MODULE - BLOG POSTS *********************/

.module-blog-posts .slick-track {
  align-items: start;
}

.layout-card .feature-crop img {
    height: 15rem;
    width: 100%;
    object-fit: cover;
}

.layout-card {
    margin: 0 1.25rem;
    border: 1px solid #EEEEEE;
}

.layout-card .below-featured-image {
  padding: 1.25rem;
}

.layout-card .below-featured-image .alternate-title {
  margin-bottom: 1.25rem;
}

.read-more-button a {
  margin-left: auto;
}

/********************* MODULE - TESTIMONIAL *********************/

.no-icon .client-testimonial:before {
  display: none;
}

.no-icon .client-testimonial {
  margin-top: -1rem !important;
}

.module-testimonial-slider .cb-slick-style button.slick-arrow {
  color: #22b0b2;  
}

.module-testimonial-slider .slick-list {
  overflow: visible !important;
}

.client-testimonial {
    position: relative;
    font-size: 1.75rem;
    font-weight: bold;
    text-align: center;
    max-width: 54rem;
    padding: 0 2rem;
    margin: 3rem auto 0 auto;
    color: #22b0b2;
    padding-top: 2rem;
}
 .client-testimonial:before {
    content: " “ ";
    font-size: 10rem;
    line-height: 0;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    margin: 0 auto;
    display: block;
    width: 100%;
    text-align: center;    
}

.client-citation {
  text-align: center;
}
.client-citation cite {
  font-style: normal;
  font-size: 1.6rem;
}


/********************* MODULE - CLIENT LOGOS *********************/
 .client-logos {
   margin-top: 30px;
}
 ul.slick-dots li:before {
   display: none;
}
 .slick-track {
   display: flex !important;
   height: auto;
   align-items: center;
   justify-content: center;
}
 .slick-track .logo-container {
   padding-right: 1.5rem;
   padding-left: 1.5rem;
}
 .slick-track .logo-container img {
   display: block;
   margin: 0 auto;
   max-height: 6rem;
   width: auto;
}
/********************* MODULE - PEOPLE *********************/
 .circular-pic img {
   border-radius: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;   
}
 .single-profile {
   border: 1px solid var(--light-grey);
}
 .single-profile .photo {
   max-width: 12.3rem;
   margin: 1rem auto;
}
 @media (min-width: 768px) {
   .single-profile .photo {
     padding-left: 0.9375rem;
  }
}
 @media (max-width: 768px) {
   .single-profile .photo {
     margin: 1rem auto 0 auto;
  }
}
 @media (min-width: 768px) {
   .single-profile .bio {
     padding-right: 2rem;
  }
}
/********************* MODULE - FLEXIBLE HALVES *********************/
 .align-stretch .full-height-if-parent-stretched:last-child {
   height: 100%;
}
 .nested-halves .module-half-content {
   padding: 10%;
}
 @media (min-width: 768px) {
   .nested-halves .cell .module-half-post-showcase .feature-crop.featured-image img {
     max-height: 11rem;
  }
   .nested-halves .cell .module-half-post-showcase h3.title {
     line-height: 1.6875;
     font-size: 1rem;
  }
   .nested-halves .cell .module-half-post-showcase section.entry-content {
     display: none;
  }
}
 @media (min-width: 768px) {
   .left-flexible-side .left-flexible-side, .right-flexible-side .left-flexible-side {
     padding-left: 0;
     padding-right: 0.46875rem;
     padding-top: 0;
     padding-bottom: 0;
  }
   .left-flexible-side .right-flexible-side, .right-flexible-side .right-flexible-side {
     padding-right: 0;
     padding-left: 0.46875rem;
     padding-top: 0;
     padding-bottom: 0;
  }
}
 @media (max-width: 768px) {
   .nested-halves {
     margin: 0 -0.625rem;
  }
}
/********************* PART (FLEXIBLE HALVES) - LISTED CONTENT *********************/
 .big-marker .marker {
   font-size: 4rem;
   line-height: 1;
   margin-right: 2rem;
   font-weight: bold;
   color: var(--gold);
}
 @media (max-width: 768px) {
   .big-marker .marker {
     margin-right: 1rem;
     font-size: 2.5rem;
  }
}
/********************* VIDEO MODAL (IN SHOWCASE AND IT'S OWN MODULE) *********************/
 .wrap-include-custom-only.background-contain .play-icon {
   border: 1px solid #e4e4e4;
}
 .wrap-include-custom-only.background-contain img.card-image {
   object-fit: contain !important;
}
 @media (max-width: 768px) {
   .wrap-include-custom-only.background-contain img {
     max-height: 100% !important;
  }
}
 .layout-card .play-icon {
   width: 100%;
   margin: auto;
   position: absolute;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   z-index: 1;
}
 .play-icon {
   cursor: pointer;
}
 .play-icon img {
   max-height: 80%;
   max-width: 90%;
}
 .module-half-modal .play-icon {
   max-width: 8rem;
   margin: 3.5rem;
}
 .dark-reveal.reveal {
   padding: 2.5rem 0;
   border: none;
   background-color: black;
}
 .dark-reveal.reveal .flex-video, .dark-reveal.reveal .responsive-embed {
   padding-bottom: 60% !important;
}
 .dark-reveal.reveal .close-button:focus, .dark-reveal.reveal .close-button:hover {
   color: var(--white);
}
/********************* MODULE - COLUMNs *********************/

.no-extra-pad .hover-reveal-cols {
  margin-bottom: 1.5rem;
}

.hover-reveal-effect {
  min-height: 15rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  margin-bottom: 0.75rem;
  border-radius: var(--curved-edge);
  text-align: center;
}

.hover-reveal-effect .col-content-overlay {
  opacity: 0;
  transition: all 0.5s;
  width: 100%;
  padding: 1.5rem;
}

.hover-reveal-effect .col-content-overlay:hover {
  opacity: 100%;
}

@media (min-width: 768px) {
  .hover-reveal-cols .col-content-overlay h1,
  .hover-reveal-cols .col-content-overlay h2,
  .hover-reveal-cols .col-content-overlay h3,
  .hover-reveal-cols .col-content-overlay h4,
  .hover-reveal-cols .col-content-overlay h5,
  .hover-reveal-cols .col-content-overlay h6 {
    display: none;
  }

  .hover-reveal-cols .col-content-below-image p,
  .hover-reveal-cols .col-content-below-image ul {
    display: none;
  }
}

@media (max-width: 768px) { 
  .hover-reveal-effect .col-content-overlay { 
    display: none;
  }  
}

.module-columns i {
    font-size: 4rem;
} 

/********************* MODULE - BANNER IMAGE *********************/

.banner-image {
  min-height: 55vh;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.banner-image .col-content-overlay {
  padding: 1rem 0 1.5rem 0;
}

.banner-image .content-wrapper {
  margin-bottom: -0.5rem
}






/*** styles events and wp form with a specific ID ***/

#horizontal-shortcodes .tribe-events-widget-events-list__events {
  display: flex;
  flex-wrap: wrap;
}

#horizontal-shortcodes .tribe-events-widget-events-list__event-row {
  flex-grow: 1;
  width: 33%;
  margin: 10px 10px 0 10px !important;
  min-height: 17rem; /* match hight of wp form */
}

#horizontal-shortcodes .css-columns {
   display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6 */
   display: -moz-box;
  /* OLD - Firefox 19- (buggy but mostly works) */
   display: -ms-flexbox;
  /* TWEENER - IE 10 */
   display: -webkit-flex;
  /* NEW - Chrome */
   display: flex;
   justify-content: center;
   align-items: center;
 }

#horizontal-shortcodes .tribe-compatibility-container {
    display: inline-block;
}

#horizontal-shortcodes .wpforms-container {
    display: inline-block;
    margin: 10px !important;
    padding: 1rem !important;
    border: 2px solid #eeeeee !important;
}

#horizontal-shortcodes #wpforms-form-11881:before {
    content: "Signup to our newsletter and receive event updates and other marketing related emails from Inclusive Employers:";
    max-width: 20rem;
    display: block;
    font-size: 0.85rem;
    line-height: 1.2;
    margin-bottom: 0.75rem;
}


/********************* 

----> NIW 2022 

*********************/

/********************* MODULE - PACKAGES *********************/

.bullets-to-ticks ul li ul li {
  line-height: 1.35;
  font-size: 85%;
}

.bullets-to-ticks ul li ul {
  margin-top: 0.5rem;
}

@media (min-width: 768px) {
  .sink-to-bottom-container {
    position: relative;
    padding-bottom: 5.5rem !important;
  }

  .sink-to-bottom {
    position: absolute;
    bottom: 1rem;
    right: 1.75rem;
    left: 1.75rem;
    min-height: 4rem;
  }
}

@media (max-width: 768px) {
  .module-packages .layout-card {
    padding: 1rem !important; 
    margin: 0;
    border: none;
  }
}

/********************* TEC EVENTS *********************/

a.event-book-now {
  font-size: 0.85rem !important;
  padding: 0.2rem 0.85rem !important;
}
@media (min-width: 768px) {
  a.event-book-now {
    margin-left: 0.55rem;
    margin-top: -0.2rem;
  }
}
@media (max-width: 768px) {
  a.event-book-now {
    margin-left: 0;
    margin-top: 0.5rem;
    display: block;
    max-width: 6rem;
    text-align: center;
  }
}

/* START: targeting awareness day shortcode in text module */
@media (min-width: 768px) {
	.module-text .tribe-events-view--list.tribe-events-view--shortcode {
		background-color: white;
		padding: 4%;
	}

	.module-text .tribe-events-view--list.tribe-events-view--shortcode .tribe-events-c-view-selector {
		display: none;
	}

	.module-text .tribe-events-view--list .tribe-events-calendar-list__event-details {
		padding-bottom: 0 !important;
	}

	.module-text .tribe-events-view--list span.tribe-events-calendar-list__event-venue-title {
		display: none;
	}

	.module-text .tribe-events-view--list .tribe-events-calendar-list__event-title-link:visited {
		opacity: 0.8;
	}

	.module-text .tribe-events-view--list .tribe-events-calendar-list__event-title a {
		color: black;
	}

	.module-text .tribe-events-view--list .tribe-events-calendar-list__event-title {
		position: relative;
		z-index: 2;
	}

	.module-text .tribe-events-view--list .time-and-date-via-func {
		position: absolute;
		right: -50%;
		padding: 0.42rem !important;
		text-align: right;
		left: var(--tec-grid-gutter-half);
		border-bottom: 1px solid var(--tec-color-border-default)!important;
	}

	.module-text .tribe-events-view--list .tribe-events-calendar-list__event-featured-image {
		margin-top: 2.8rem;
	}
}
/* END: targeting awareness day shortcode in text module */

/********************* MODULE - EVENTS *********************/

.module-events .slick-track {
    align-items: flex-start;
}

.feature-crop.featured-image > a {
    width: 100%;
}

.module-events .layout-card .below-featured-image {
  min-height: 19rem;
  position: relative;
  padding-bottom: 4rem;
}

.module-events .layout-card .below-featured-image .read-more-button {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  left: 1rem;
  display: block;
}

 @media (max-width: 768px) {
  .module-events .cb-slick-style button.slick-arrow {
    width: 1rem;
  }
}


/********************* MODULE - TESTIMONIAL *********************/

.module-testimonial-slider { /* so we can unset this property from .wrapper and use css-sticky */
    overflow-x: hidden;
}

.module-testimonial-slider blockquote {
  line-height: 1.3;
  padding: 1.5rem 0;
}

/********************* MODULE - TEXT AND IMAGE *********************/

 @media (min-width: 768px) {
  .extra-padding .order-md-2 {
    padding-left: 2rem;
  }

  .extra-padding .order-md-1 {
    padding-right: 2rem;
  }
}

@media (max-width: 768px) {
  .module-text-and-image .text-part {
    margin-top: 1rem;
  }
}

/********************* MODULE - CTA SECTION *********************/

@media (max-width: 768px) {
  .module-cta-section .circular-pic {
    display: none;
  }
}

/********************* MODULE - CONTENT AND RESOURCES *********************/

.content-and-resources ul {
  padding-left: 0;
}

.content-and-resources .resources-side {
  margin-bottom: 1.64em;
}

.content-and-resources .resources-side .resources>ul>li+li {
  border-top: 1px solid #cacaca;
}

.content-and-resources .resources-side .resource__content {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
}

.content-and-resources .resource--alt .resource__aside {
    width: 40%;
}

@media (min-width: 768px) { /* medium up */
  .content-and-resources .order-md-2.resources-side > .light-grey-back {
    margin-left: 3rem;
  }

  .content-and-resources .order-md-1.resources-side > .light-grey-back {
    margin-right: 3rem;
  }
}

/* possibly to become general css later */
.innards-cta-box > .card {
  border-color: transparent;
  border-radius: 0;
  margin-top: 0;
  padding-top: 35px;
  padding-bottom: 35px;
  border-top: 1px solid #cacaca;
}

.content-and-resources .css-sticky {
    top: 0px;
}

/********************* MODULE - QUOTE *********************/

.module-quote .client-testimonial {
    margin: 0;
    padding: 4rem 0;
}

/********************* MODULE - FEATURED RESOURCES *********************/

@media (min-width: 768px) {
  .module-featured-resources .one-resource .resource__content {
    display: flex !important;
    justify-content: center;
    align-items: center;    
    padding-left: 4rem !important;
  }

  .module-featured-resources .one-resource  .resource__inner {
    width: 70% !important;
  }

  .module-featured-resources .one-resource  .resource__actions {
    width: 30% !important;
    margin-bottom: 20px; /* offsets the margin top so flex centering works */
  }
}

.module-featured-resources .multiple-resources .resource__content {
    display: flex !important;
    justify-content: center;
    align-items: center;    
    flex-wrap: wrap;
    flex-direction: column;
}

.module-featured-resources .multiple-resources  .resource__inner {
    width: 100% !important;
}

.module-featured-resources .multiple-resources  .resource__actions {
    width: 100% !important;
    margin-bottom: 20px; /* offsets the margin top so flex centering works */
}

.module-featured-resources .multiple-resources {

}

.module-featured-resources .multiple-resources .resources ul {
  display: flex;
  flex-wrap: wrap;
  margin-left: -3rem;
  margin-right: -3rem;
  padding:  0 !important;
}

.module-featured-resources .multiple-resources .resources li {
    width: 50%;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;    
}

.module-featured-resources .multiple-resources .resources>ul>li+li {
    margin-top: 0;
    border-top: 0px solid #eee;
  }

/********************* TEMPLATE SPECIFIC *********************/

@media (max-width: 768px) {
  .page-template-template-cb-full-flexible .container {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.page-template-template-cb-full-flexible .section-counters .section__foot p {
  font-size: 1rem;
  line-height: 1.1;  
  color: var(--green);
}

/* hero */
.secodary-column {
  padding: 1.5rem;
  border-radius: 0.5rem;
}

/* buttons */

.white-text a.btn--white {
  color: #000 !important;
}
.white-text a.btn--white:hover,
.white-text a.btn--white:focus {
  color: white !important;
}

.btn-style-simple:after {
    display: none !important;
}

.btn-style-simple {
    padding: 0.5rem 1rem !important;
}

/* woo form shortcode */
.wc_login_form-shortcode form.woocommerce-form {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}

.wc_login_form-shortcode .form-row {
    width: 100% !important;
    padding: 0 !important;
}

.wc_login_form-shortcode label,
.lost_password,
.wc_login_form-shortcode input {
    font-size: 1rem !important;
}

.wc_login_form-shortcode .form-row-last {
  margin-bottom: 1rem !important;
}

.wc_login_form-shortcode label.woocommerce-form-login__rememberme {
    width: 50%;
    display: inline-block !important;
}

.wc_login_form-shortcode .woocommerce-form-login__submit {
    width: auto !important;
    display: inline-block !important;
    float: right !important;
    margin-right: 0 !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;    
}

.lost_password {
  margin-bottom: 0 !important;
  margin-top: 1rem;
  text-align: center;
  text-decoration: underline;
}

/********************* RESOURCES CPT FIELDS *********************/

.divider-element p {
  margin-bottom: 0;
  margin-top: 1rem !important;
}

.divider-element h2,
.divider-element h3,
.divider-element h4,
.divider-element h5 {
  margin-bottom: 0 !important;
}

/********************* TEMPLATE - DIVERSITY CALENDAR *********************/

.stuck-to-bottom {
  border-top: 1px solid #D2D2D2;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 99999999999999999; /* stay above TEC eevent popup windows */
  transition: all 0.75s;
}

.stuck-to-bottom h2 {
    margin-bottom: 0.5rem;
}

.modal-open .stuck-to-bottom {
    bottom: -100px;
}

.cta-banner.stuck-to-bottom .btn {
    width: 100%;
}

#cta_modal .modal-body {
    padding: 1.5rem;
}

@media (min-width: 768px) {
	.page-template-template-cb-diversity-calendar .cky-consent-container.cky-box-bottom-left {
		bottom: 150px;
	}
}