/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

/** CSS Custom Properties**/

:root {
	--primary-color: #1A1818;
	--secondary-color: #636568;
	--accent-color: #FFB026;
	--text-color: #000000;
}

/** Full Site Styles **/

.elementor-kit-5565{
	--e-global-color-primary: var(--primary-color);
	--e-global-color-secondary: var(--secondary-color);
	--e-global-color-text: var(--text-color);
	--e-global-color-accent: var(--accent-color);
}

body {
  overflow-x: hidden;
}

b, strong{
	font-weight: 700;
}

p a{
	color: var(--text-color);
	font-weight: 600;
	text-decoration: underline;
}

p a:hover{
	color: var(--accent-color);
}

/** Homepage Styles **/

.homepage-icon-box .elementor-icon-box-icon {
  display: flex;
  height: 100px;
  width: 100px;
  align-items: center;
  justify-content: center;
  background-color: var(--accent-color);
  border-radius: 15px;
}

/** Services Funnel Styles **/

#service-funnel{
  width: 100%;
}

.heading-row{
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  background-color: var(--primary-color);
  height: 50px;
  position: relative;
	z-index: 5
}

.heading-row a{
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 30px;
  letter-spacing: 1px;
  text-decoration: none;
  text-align: center;
}

.heading-row a:hover{
  text-decoration: underline;
}

.heading-row::before {
    content: '';
    position: absolute;
    display: block;
    left: -25px;
    width: 27px;
    height: 100%;
    background: var(--primary-color);
    -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
    clip-path: polygon(100% 0, 0 0, 100% 100%);
}

.heading-row::after {
    content: '';
    position: absolute;
    display: block;
    right: -25px;
    width: 26px;
    height: 100%;
    background: var(--primary-color);
    -webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
    clip-path: polygon(100% 0, 0 0, 0 100%);
}

.item-row{
  display: grid;
  grid-gap: 10px;
  padding: 0 25px;
  background-color: var(--accent-color);
  position: relative;
  height: 74px;
}

.item-row::before {
    content: '';
    position: absolute;
    display: block;
    left: -37px;
  bottom: 0;
    width: 38px;
    height: 125%;
    background: linear-gradient(0deg, var(--accent-color) 80%, rgba(163,104,8,1) 80%);
    -webkit-clip-path: polygon(100% 0, 0 20%, 100% 100%);
    clip-path: polygon(100% 0, 0 20%, 100% 100%);
}

.item-row::after {
    content: '';
    position: absolute;
    display: block;
    right: -37px;
  bottom: 0;
    width: 38px;
    height: 125%;
    background: linear-gradient(0deg, var(--accent-color) 80%, rgba(163,104,8,1) 80%);
    -webkit-clip-path: polygon(100% 20%, 0 0, 0 100%);
    clip-path: polygon(100% 20%, 0 0, 0 100%);
}

.service-item{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0px;
  color: var(--primary-color);
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  text-align: center;
}

.service-item:hover{
  text-decoration: underline;
	color: var(--primary-color);
}

.service-item img{
  max-height: 32px;
}

.funnel-bottom{
  width: calc(100% - 1000px);
  aspect-ratio: 1;
  margin: 0 auto;
  background-color: var(--primary-color);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}

.col-5{
  grid-template-columns: repeat(5, 1fr);
}
.col-4{
  grid-template-columns: repeat(4, 1fr);
}
.col-3{
  grid-template-columns: repeat(3, 1fr);
}
.col-2{
  grid-template-columns: repeat(2, 1fr);
}
.col-1{
  grid-template-columns: repeat(1, 1fr);
}

.funnel-group-1{
  width: calc(100% - 100px);
  margin: 0 auto;
}
.funnel-group-2{
  width: calc(100% - 225px);
  margin: 0 auto;
}
.funnel-group-3{
  width: calc(100% - 350px);
  margin: 0 auto;
}
.funnel-group-4{
  width: calc(100% - 475px);
  margin: 0 auto;
}
.funnel-group-5{
  width: calc(100% - 600px);
  margin: 0 auto;
}




@media only screen and (max-width: 999px) {
	.funnel-group-1, .funnel-group-2, .funnel-group-3, .funnel-group-4, .funnel-group-5{
		width: 100%;
		margin-bottom: 25px;
	}
	.heading-row::before, .heading-row::after, .item-row::before, .item-row::after, .funnel-bottom{
		display: none;
	}
	.heading-row{
		height: 100%;
		padding: 15px;
	}
	.heading-row a{
		font-size: 24px;
		line-height: 30px;
	}
	.item-row{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 20px;
		height: 100%;
		padding: 25px;
	}
	.service-item{
		flex-direction: row;
		align-items: center;
		justify-content: flex-start;
	}
	.service-item img{
		width: 80px;
		max-height: 30px;
	}
}

@media only screen and (max-width: 640px) {
	.item-row{
		display: grid;
		grid-template-columns: 1fr;
	}
	.heading-row a{
		font-size: 22px;
		line-height: 28px;
	}
}



/** Footer Contact Form Styles **/
#footer-form #gform_wrapper_29 .gform_heading,
#footer-form #gform_wrapper_29 .gfield_required {
  display: none;
}

#footer-form #gform_wrapper_29 label {
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 24px;
}

#footer-form #gform_wrapper_29 input,
#footer-form #gform_wrapper_29 textarea {
  background-color: transparent;
  border: 1px solid var(--accent-color);
  border-radius: 15px;
  padding: 10px;
  color: #fff;
}

#footer-form #gform_wrapper_29 #gform_submit_button_29 {
  background-color: var(--accent-color);
  color: #000;
  font-size: 17px;
  font-weight: 500;
  line-height: 20px;
  padding: 10px;
  border: 1px solid var(--accent-color);
  border-radius: 0px;
  width: 150px;
}

#footer-form #gform_wrapper_29 #gform_submit_button_29:hover {
  background-color: transparent;
  color: var(--accent-color);
}

/** Contact Form **/

#gform_wrapper_3 .gform_heading,
#gform_wrapper_3 .gfield_required,
#gform_wrapper_5 .gform_heading,
#gform_wrapper_5 .gfield_required{
  display: none;
}

#gform_wrapper_3 label,
#gform_wrapper_5 label{
  color: var(--text-color);
  font-size: 15px;
  font-weight: 700;
  line-height: 24px;
}

#gform_wrapper_3 input,
#gform_wrapper_3 textarea,
#gform_wrapper_5 input,
#gform_wrapper_5 textarea{
  background-color: transparent;
  border: 1px solid var(--primary-color);
  border-radius: 15px;
  padding: 10px;
  color: var(--text-color);
}

#gform_wrapper_3 #gform_submit_button_3,
#gform_wrapper_5 #gform_submit_button_5{
  background-color: var(--primary-color);
  color: #fff;
  font-size: 17px;
  font-weight: 500;
  line-height: 20px;
  padding: 10px;
  border: 1px solid var(--primary-color);
  border-radius: 0px;
  width: 150px;
}

#gform_wrapper_3 #gform_submit_button_3:hover,
#gform_wrapper_5 #gform_submit_button_5:hover{
  background-color: transparent;
  color: var(--primary-color);
}

/** WWH Industry Vertical **/

.markets-banner ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
	flex-wrap: wrap;
  justify-content: center;
}

.markets-banner ul a {
  font-size: 18px;
  font-weight: 600;
  color: var(--primary-color);
  text-decoration: none;
	line-height: 36px;
	flex-shrink: 0;
	padding-inline: 12px;
}

.markets-banner ul a:hover {
  color: var(--accent-color);
  text-decoration: underline;
  text-underline-offset: 10px;
}


/** WWH Industry Vertical Case Studies **/

.case-study-carousel .swiper-wrapper .swiper-slide {
  opacity: 0;
  pointer-events: none;
  cursor: default;
}

.case-study-carousel .swiper-wrapper .swiper-slide-fully-visible {
  opacity: 1;
  pointer-events: auto;
  cursor: pointer;
}

.swiper-button-next {
  right: -75px;
}

.swiper-button-prev {
  left: -75px;
}

.case-study-carousel {
  max-width: 1140px;
	padding: 0px 20px !important;
}

.case-study-carousel .swiper-wrapper {
  max-width: 1140px;
  padding: 10px 0px;
}

.case-study-carousel .cs-container {
  height: 350px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: calc(100% / 5) !important;
  transition: linear 0.5s;
  overflow: visible;
}

.case-study-carousel .cs-container:nth-child(even) {
  justify-content: flex-end;
}

.cs-container .case-study {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: calc(100% + 30px);
  background-color: rgba(255, 255, 255, 0.75);
	/** background-color: var(--accent-color); **/
  aspect-ratio: 1.1547005 / 1;
  -webkit-clip-path: polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0 50%);
  clip-path: polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0 50%);
  position: relative;
}

/**.case-study-carousel .cs-container:nth-child(even) .case-study {
  background-color: rgba(0, 0, 0, 0.42);
}**/

.case-study .cs-background {
  object-fit: cover;
  height: 100%;
  width: 100%;
  aspect-ratio: 1.1547005 / 1;
  filter: grayscale(100%);
  mix-blend-mode: screen;
}

.cs-container::before{
	position: absolute;
	content: "";
	width: calc(100% + 40px);
	top: -5px;
	bottom: auto;
	aspect-ratio: 1.1547005 / 1;
	background-color: #000;
	-webkit-clip-path: polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0 50%);
  clip-path: polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0 50%);
	z-index: 0;
}

.cs-container:nth-child(even)::before{
	top: auto;
	bottom: -5px;
}

/**.case-study .cs-background {
  object-fit: cover;
  height: 100%;
  width: 100%;
  aspect-ratio: 1.1547005 / 1;
  filter: grayscale(100%);
  mix-blend-mode: screen;
}

.case-study-carousel .cs-container:nth-child(even) .case-study .cs-background {
  mix-blend-mode: overlay;
}**/

.case-study .cs-logo {
  width: 70%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.carousel-footer {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin-top: 50px;
}

.carousel-footer a {
  color: var(--text-color);
  font-size: 17px;
  line-height: 20px;
  font-weight: 600;
  text-decoration: underline;
}

.no-posts-text{
	text-align: center;
}

@media only screen and (max-width: 1330px){
	.swiper-button-next {
	  right: -50px;
	}

	.swiper-button-prev {
	  left: -50px;
	}
}

@media only screen and (max-width: 1280px){
	.swiper-button-next {
	  right: -25px;
	}

	.swiper-button-prev {
	  left: -25px;
	}
}

@media only screen and (max-width: 1220px){
	.swiper-button-next {
	  right: 0px;
	}

	.swiper-button-prev {
	  left: 0px;
	}
}

@media only screen and (max-width: 1179px){
	.case-study-carousel{
		max-width: 1000px;
	}
	.case-study-carousel .cs-container{
		height: 320px;
	}
}

@media only screen and (max-width: 1050px){
	.case-study-carousel{
		max-width: 800px;
	}
	.case-study-carousel .cs-container{
		height: 270px;
	}
	.swiper-button-next {
	  right: 0px;
	}

	.swiper-button-prev {
	  left: 0px;
	}
}

@media only screen and (max-width: 764px){
	.case-study-carousel{
		max-width: 600px;
	}
	.case-study-carousel .cs-container{
		width: calc(100% / 3) !important;
    	height: 310px;
	}
}


@media only screen and (max-width: 639px){
	.cs-container::before{
		width: calc(100%);
        top: 17px;
        bottom: 17px;
        max-width: 316px;
	}

	.cs-container:nth-child(even)::before{
		width: calc(100%);
        top: 17px;
        bottom: 17px;
        max-width: 316px;
	}
	
	.case-study-carousel .cs-container{
		width: 100% !important;
		justify-content: center !important;
		padding: 0px 50px;
	}
	.cs-container .case-study{
		    max-width: 300px;
	}
	.swiper-button-next {
	  right: 0px;
	}

	.swiper-button-prev {
	  left: 0px;
	}
}

/** WWH Industry Vertical Industry Blog **/

.industry-blog {
  display: flex;
  flex-direction: row;
  gap: 40px;
  padding: 20px 0px;
}

.industry-blog-post {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.industry-blog-post .ib-image {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 25px;
}

.industry-blog-post h3 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 30px;
  line-height: 36px;
}

.industry-blog-post a {
  padding: 20px 15px 20px 14px;
  background-color: var(--accent-color);
  align-self: flex-end;
  border-radius: 15px;
  font-size: 30px;
  line-height: 32px;
  color: var(--text-color);
  margin-top: -50px;
  margin-right: -15px;
}

@media screen and (max-width: 600px){
	.industry-blog{
		flex-direction: column;
	}
}

/** Careers **/
#careers-accordion .panel-body ul{
	padding: 0px 0px 20px 30px !important;
	list-style-position: outside;

}

#careers-accordion .panel-title a {
    font-size: 30px;
	  line-height:1.2;
}

#careers-accordion .panel-title i {
    color: #fcb614!important;
}

.btn-primary {
  border: 2px solid #fcb614!important;
	background:#fff!important;
	color:#FCB614!important;
}
.btn-primary:hover, .btn-primary:active, .btn-primary:focus{
	background:#fcb614!important;
	color:#fff!important;
}

.btn-primary:focus-visible{
	border:1px solid #fcb614!important;
}

/** Service Repeater Page **/

@media(min-width: 1024px){
	#acf-repeater-alternate .ae-acf-repeater-wrapper .ae-acf-repeater-item:nth-child(even) .e-parent{
	flex-direction: row-reverse !important;
}

}

