/*
Theme Name: OceanWP Child
Theme URI: https://welldesignstudio.com/
Description: OceanWP WordPress theme example child theme.
Author: Well Design Studio
Author URI: https://welldesignstudio.com/
Template: oceanwp
Version: 1.5
*/

/* Parent stylesheet should be loaded from functions.php not using @import */

/* OceanWP Resets */
body {
	overflow-x: hidden;
}
body ul, body ol {
	margin-top: 0;
}

#site-header.transparent-header {
	border: none;
}

body #site-logo #site-logo-inner a:hover img {
	opacity: .95;
}
#site-header #site-logo #site-logo-inner a img {
	width: 100%;
}

body.boxed-layout.wrap-boxshadow #wrap {
  -webkit-box-shadow: 0 0 30px -10px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 0 30px -10px rgba(0, 0, 0, 0.5);
	box-shadow: 0 0 30px -10px rgba(0, 0, 0, 0.5);
}
.boxed-layout #wrap #site-header-inner.container {
  max-width: 1330px;
}

.page-header, .has-transparent-header .page-header {
	display: none;
}
.elementor-page header.page-header, .single-post header.page-header {
  display: none;
}

/* Bootstrap Resets for OceanWP */
#content div#blog-entries .blog-entry.col-1 {
	max-width: inherit;
}
body #site-navigation-wrap ul.main-menu.dropdown-menu > li.menu-item > ul.megamenu.sub-menu {
	max-width: inherit;
	flex: initial;
}
.woocommerce-checkout .col-1, .woocommerce-checkout .col-2 {
	max-width: 100%;
}
body.single-product .elementor.elementor-location-single.product.col {
	padding: 0;
}
body .woocommerce-MyAccount-content .addresses > * {
	max-width: unset;
	flex: unset;
}

.elementor-widget-nav-menu li.menu-item > a.elementor-item > span.hidden {
	display: none;
}

/* Woo Resets */
body.woocommerce div.product.elementor form.cart table.variations td.value:before {
	content: "" !important;
	margin: 0 !important;
}
body.woocommerce div.product.elementor form.cart table.variations .reset_variations {
	float: none;
	position: absolute;
	right: 0px;
	margin: 0;
	transform: translateX(100%);
	border: none;
	display: flex !important;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
body.woocommerce div.product form.cart .variations .reset_variations:before {
	margin: 0;
}
body.woocommerce.single-product .single_variation .woocommerce-variation-price .price {
	display: block !important;
	text-align: center;
	font-size: 20px;
}



/* Elementor Resets */
section.elementor-section.elementor-top-section {
	padding: 70px 15px;
}
body .elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 15px;
}

body.has-transparent-header #main section.elementor-section.elementor-top-section:first-child {
	padding-top: 160px;
	padding-top: calc(100px + 60px);
}

body .elementor-element.elementor-widget-spacer, body .elementor-widget.elementor-widget-divider {
  margin-bottom: 0 !important;
}
body .elementor-widget-divider .elementor-divider {
	overflow: hidden;
}

body .elementor-widget-text-editor {
	/* margin-bottom: 0 !important; */
}
/* body .elementor-widget:last-child p:last-child {} */
body .elementor-widget p:last-child {
	margin: 0;
}



::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #616161;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #616161;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #616161;
}
:-moz-placeholder { /* Firefox 18- */
  color: #616161;
}


/* Menu tweaks - MISC */
body #site-navigation-wrap .dropdown-menu > li > a .nav-arrow {
	padding: 0;
	margin-left: -2px;
}

.effect-three #site-navigation-wrap .dropdown-menu>li.current-menu-item>a.menu-link>span:after, .effect-three #site-navigation-wrap .dropdown-menu>li>a.menu-link>span:after {
  height: 2px;
}
.effect-two #site-navigation-wrap .dropdown-menu>li.current-menu-item>a.menu-link>span:after, .effect-two #site-navigation-wrap .dropdown-menu>li>a.menu-link>span:after {
  height: 1px;
}

body.has-transparent-header .effect-two #site-navigation-wrap .dropdown-menu >li >a.menu-link >span:after, body.has-transparent-header .effect-eight #site-navigation-wrap .dropdown-menu >li >a.menu-link >span:before, body.has-transparent-header .effect-eight #site-navigation-wrap .dropdown-menu >li >a.menu-link >span:after {
	background-color: #fff;
}

/* Menu tweaks - Main Menu */
/* #site-navigation-wrap ul.dropdown-menu > li.menu-item > a.menu-link {
	font-size: 16px;
	font-family: 'Open Sans', sans-serif !important;
	text-transform: uppercase;
	transition: none !important;
	letter-spacing: 1px;
} */
body.has-transparent-header #site-navigation-wrap ul.dropdown-menu > li.menu-item > a.menu-link {
	color: #fff;
}

/* Menu tweaks - Sub Menu */
#site-navigation-wrap ul.dropdown-menu li.dropdown > ul.sub-menu {
	padding: 10px 0;
}
#site-navigation-wrap ul.dropdown-menu li.dropdown > ul.sub-menu > li.menu-item {
	border: none;
}

#site-navigation-wrap ul.dropdown-menu li.dropdown > ul.sub-menu > li.menu-item > a {
	font-size: 14px;
	line-height: 1.7em;
	padding: 8px 15px;
	transition: .25s;
	text-transform: uppercase;
}
#site-navigation-wrap ul.dropdown-menu li.dropdown > ul.sub-menu > li.menu-item > a:hover {
	background: transparent;
	transition: .25s;
}


html.pum-open.pum-open-overlay.pum-open-scrollable body>[aria-hidden] {
	padding: 0 !important;
}



/* Gravity form tweaks */
body .gform_wrapper {
  margin: -16px 0px 0px !important;
}

body .gform_wrapper li.hidden_label input {
  margin-top: 0px;
}
body .gform_wrapper ul li.gfield textarea {
  margin-top: 8px;
}

body .gform_wrapper .ginput_container.ginput_container_checkbox ul.gfield_checkbox li input[type=checkbox] {
	padding: inherit !important;
	font-size: inherit !important;
	width: 16px !important;
	height: 16px !important;
}
body .gform_wrapper .ginput_container.ginput_container_checkbox ul.gfield_checkbox li input[type=checkbox]:checked ~ label {
	font-weight: normal;
}

body .gform_wrapper .top_label .gfield_label, body .gform_wrapper legend.gfield_label {
}

body .gform_wrapper ul li.gfield input:not([type="checkbox"]), body .gform_wrapper ul li.gfield textarea {
  padding: 8px 15px !important;
	font-family: 'Open Sans', sans-serif !important;
	-webkit-border-radius: 0px;
	border-radius: 0px;
}

body .gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=submit], body .gform_wrapper .gform_page_footer input.button, body .gform_wrapper .gform_page_footer input[type=submit] {
	padding: 10px 20px;
	font-family: 'Open Sans', sans-serif !important;
	font-size: 16px;
	line-height: 1.4em;
	text-transform: uppercase;
	font-weight: bold;
	min-width: 120px;
	-webkit-border-radius: 0px;
	border-radius: 0px;
}

body .gform_wrapper .gf_list_inline .gfield_checkbox li label, body .gform_wrapper .gf_list_inline .gfield_radio li label {
	max-width: 100%;
}

body .gform_wrapper .gf_list_inline .gfield_radio li input[type=radio] {
	margin-top: 0;
}

/* Gravity forms - off-center padding override */
@media only screen and (min-width: 641px) {
	body .gform_wrapper:not(.custom-inline-form_wrapper) .gform_body ul.gform_fields {
		margin-right: -15px !important;
	}
	body .gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=submit], body .gform_wrapper .gform_page_footer input.button, body .gform_wrapper .gform_page_footer input[type=submit] {
		margin-right: 0;
	}
}

/* Gravity forms - inline form tweak */
@media only screen and (min-width: 768px) {
	body .gform_wrapper.custom-inline-form_wrapper .gform_body {
		display: inline;
		clear: none;
		float: left;
		width: 66.666%;
	}
	body .gform_wrapper.custom-inline-form_wrapper .gform_footer {
		display: inline;
		clear: none;
		float: left;
		width: 33.333%;
		margin-top: 8px;
	}

	.gform_wrapper.custom-inline-form_wrapper .gform_footer input[type=submit] {
		width: 100%;
		height: 46px;
		line-height: 46px;
		padding: 0 30px;
	}
}
body .gform_wrapper.custom-inline-form_wrapper .gform_footer {
	text-align: center;
}


/* Caption Middle */
.caption-middle.elementor-widget.elementor-widget-image figcaption.widget-image-caption.wp-caption-text {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	transform: translateY(-50%);
	color: #fff;
	font-size: 16px;
	line-height: 34px;
  transition: .25s;
  padding: 15px;
}
.caption-middle.elementor-widget.elementor-widget-image img {
  transition: .25s;
}
.caption-middle.elementor-widget.elementor-widget-image:hover img {
  transition: .25s;
}

.image-overlay.elementor-widget-image .elementor-image:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	opacity: 0;
}
.image-overlay.elementor-widget-image:hover .elementor-image:before {
	opacity: .8;
}
.image-overlay.green.elementor-widget-image .elementor-image:before {
	background: #a0a635;
}

@media only screen and (max-width: 767px) {
	section.float-left.elementor-section.elementor-inner-section > .elementor-container {
		margin-left: 0;
	}
	section.float-right.elementor-section.elementor-inner-section > .elementor-container {
		margin-right: 0;
	}
}

@media only screen and (max-width: 959px) {
	.container, body.content-full-screen .elementor-section-wrap>.elementor-section.elementor-section-boxed>.elementor-container {
		max-width: 100% !important;
	}
}

/* Media queiries and tweaks */
@media only screen and (max-width: 767px) {
  section.elementor-section.elementor-top-section {
		padding: 50px 15px;
  }
	body.has-transparent-header #main section.elementor-section.elementor-top-section:first-child {
		padding-top: 130px;
		padding-top: calc(80px + 50px);
	}

  body .elementor-posts .elementor-post {
    display: block;
  }
  body .elementor-post__text {
    margin: 15px 0;
  }
}


/* Font tweaks here - no longer used */
/*
body .elementor-widget-button .elementor-button {
	font-family: 'Open Sans', sans-serif !important;
	font-size: 16px;
	line-height: 1.2em;
	font-weight: bold;
	-webkit-border-radius: 0px;
	border-radius: 0px;
}
body .elementor-widget-button .elementor-button.elementor-size-sm {
	padding: 8px 30px;
	min-width: 100px;
}

body, body .elementor-widget-text-editor {
  font-size: 16px;
  line-height: 1.6em;
  font-family: 'Open Sans', sans-serif !important;
  font-weight: normal;
}

body h1, body .elementor-widget-heading h1.elementor-heading-title {
  font-size: 50px;
  line-height: 1.2em;
  font-family: 'Open Sans', sans-serif !important;
  font-weight: bold;
}
body h2, body .elementor-widget-heading h2.elementor-heading-title {
  font-size: 40px;
  line-height: 1.2em;
  font-family: 'Open Sans', sans-serif !important;
  font-weight: bold;
}
body h3, body .elementor-widget-heading h3.elementor-heading-title {
  font-size: 24px;
  line-height: 1.2em;
  font-family: 'Open Sans', sans-serif !important;
  font-weight: bold;
}
body h4, body .elementor-widget-heading h4.elementor-heading-title {
  font-size: 16px;
  line-height: 1.2em;
  font-family: 'Open Sans', sans-serif !important;
  font-weight: bold;
}
body h5, body .elementor-widget-heading h5.elementor-heading-title {
  font-size: 24px;
  line-height: 1.2em;
  font-family: 'Open Sans', sans-serif !important;
  font-weight: bold;
	letter-spacing: 2px;
}

@media only screen and (max-width: 767px) {
	body, body .elementor-widget-text-editor {
		font-size: 16px;
	}
	body h1, body .elementor-widget-heading h1.elementor-heading-title {
		font-size: 36px;
	}
	body h2, body .elementor-widget-heading h2.elementor-heading-title {
		font-size: 25px;
	}
	body h3, body .elementor-widget-heading h3.elementor-heading-title {
		font-size: 18px;
	}
	body h4, body .elementor-widget-heading h4.elementor-heading-title {
		font-size: 13px;
	}
	body h5, body .elementor-widget-heading h5.elementor-heading-title {
		font-size: 22px;
	}
} */

/*--- Header Tweaks ---*/
#site-header {
	margin-top: -5px;
}
section:nth-child(n+2) {
	z-index: 250; /*Every section except the header and banner affected*/
}
/*--- Form Styles ---*/
#gform_fields_1 .gfield {
	padding: 0px !important;
}
#gform_fields_1 .ginput_container.ginput_container_textarea{
	padding: 0;

}
#gform_fields_1 textarea {
	height:  171px !important;
}
.gform_body input, .gform_body textarea {
	border: 1px solid #b74d00 !important;
	border-radius: 0px !important;
	background-color: #fff !important;
}
.gform_body textarea {
	resize: none;
}
.gform_body input::placeholder, .gform_body textarea::placeholder {
	opacity: 0.6 !important;
}
.gform_footer .gform_button.button {

	width: auto;
	padding: 13px 30px !important;
	color: #000 !important;
	background-color: transparent !important;
	border-radius: 0px !important;
	border: 1px solid #b74d00 !important;
	transition: all 0.4s ease;
}
body .gform_wrapper .gform_footer input.button, body .gform_wrapper .gform_page_footer input[type=submit] {
	text-align: center !important;
	font-family:  'futura-pt' !important;
	font-weight: 900 !important;
}
.gform_footer input[type="submit"]:hover {
	color: #fff !important;
	background-color: #000 !important;
	border-color: #000 !important;
}
.gform_wrapper.gravity-theme .gform_footer {
	text-align: center;
}
@media only screen and (min-width: 768px) {
	.gfmc-container {
		justify-content: center !important;
	}
	.gfmc-field:nth-child(1){
		margin-right: 8px !important;
	}
	.gfmc-field:nth-child(2){
		margin-left: 8px !important;
	}
}

@media only screen and (max-width: 767px) {
	.gform_footer .gform_button.button {
		width: 100%;
	}
}

/*--- Case Studies / Core Services Toggle ---*/
.case-toggle div.ee-toggle-element__controls-wrapper {
	display: flex;
	justify-content: center;
}
.case-toggle .ee-toggle-element__controls-wrapper.ee-toggle-element__controls-wrapper--before {
	padding-bottom: 30px!important;
}
.case-toggle ul {
	margin-bottom: 50px !important;
	width: 100%;
	max-width: 1330px;
	justify-content: space-between !important;
}
.case-toggle ul li {
	position: relative;
	font-size: 16px;
	width: 25%;
}
.case-toggle ul li div.label span {
	display: inline;
}
.case-toggle ul li.ee--is-active div.label:after {
	content: '';
	position: absolute;
	height: 2px;
	width: 100%;
	bottom: -20px;
	left: 50%;
	transform: translatex(-50%);
	background: #b74d00;
}
.case-toggle ul li span:first-child {
	display: block;
	margin-bottom: 20px;
}
.case-toggle ul li svg {
	width: 100%;
}
.case-toggle ul li.elementor-repeater-item-2518983 svg {
	padding: 14px 0px 13px 0px;
	max-width: 80px;
}
.case-toggle ul li.elementor-repeater-item-39e31d9 svg {
	padding: 25px 0px 26px 0px;
	max-width: 110px;
}
.case-toggle ul li.elementor-repeater-item-76f4e4d svg {
	padding: 25px 0px 24px 0px;
	max-width: 100px;
}
.case-toggle ul li.elementor-repeater-item-de91efa svg {
	padding: 0px;
	max-width: 90px;
}

.case-toggle .ee-toggle-element__elements {
	display: flex;
	justify-content: center;
	margin: 0 -24px !important;
	padding: 70px 25px;
	background-color: #fff;
}
.case-toggle .ee-toggle-element__elements .ee-toggle-element__element {
	//max-width: 1320px;
}
.case-toggle div.ee-toggle-element__controls-wrapper:after {
	content: '';
	position: absolute;
	height: 1px;
	width: 100%;
	max-width: 1320px;
	bottom: 0px;
	left: 50%;
	transform: translatex(-50%);
	background: #969696;
}
@media only screen and (max-width: 767px) {
	.case-toggle ul li {
		width: 100%;
	}
	.case-toggle ul li span:first-child {
		margin-bottom: 0px;
	}
	.case-toggle ul li svg {
		width: 70%;
	}
	.case-toggle ul li svg {
		padding: 20px 0px 10px !important;
	}
}


.main-points {
	margin: 0 -24px;
}
.main-points ul li {
	padding-right: 10px;
}

/*--- S&F Tweaks ---*/
.full-width .post-container .col-md-6 {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
}
.post-container .featured-image-container {
	margin-bottom: 20px;
}
.post-container .featured-image-container a {
	box-shadow: 0px 0px 15px 0px rgb(0 0 0 / 15%);
}
.full-width .post-container .post-meta {
	margin-bottom: 50px;
}

.post-container .post-title a {
	color: #000;
}
.post-container .post-title {
	margin-top: -15px !important;
}
.news-grid .post-container {
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	height: 100%;
}
.news-grid .post-container .main-content,
.news-grid .post-container .read-more {
	height: auto;
}
.news-grid .post-title {
	margin-top: 0px !important;
}
.post-container .post-excerpt {
	margin-top: -20px !important;
}
.post-container .btn {
	margin: 50px 0;
}
.news-grid .btn {
	margin: 30px 0 !important;
}
.post-container .btn a {
	padding: 13px 18px;
	font-size: 16px;
	text-transform: uppercase;
	letter-spacing: 2px;
	border: 1px solid #000;
}
.post-container .btn a:hover {
	color: #fff;
	background-color: #000;
}

#pagination {
	display: flex;
	justify-content: center;
	padding-top: 30px;
}
#pagination .nav-prev a,
#pagination .nav-next a {
	display: inline;
	margin: 10px;
	padding: 13px 18px;
	font-size: 16px;
	text-transform: uppercase;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 0px;
	transition: all 0.4s ease;
}
#pagination .nav-prev a:hover,
#pagination .nav-next a:hover {
	background-color: #000;
	color: #fff;
}
#pagination a {
	color: #B74D00;
}

.case-study {

}
.case-study .section-title {
	position: relative;
	margin-top: 30px;
	border-top: 1px solid #969696;
}
.case-study .section-title h4 {
	margin: 70px 0;
}
.case-study .section-title h4:after {
	content: '';
	position: absolute;
	height: 1px;
	width: 18%;
	bottom: -20px;
	left: 0px;
	background-color: #969696;
}
@media only screen and (min-width: 768px) {
.full-width:nth-child(2) .post-container .row {
		flex-direction: row-reverse;
	}
}
@media only screen and (max-width: 767px) {
	.full-width .post-container .row {
		flex-direction: column-reverse;
	}
	.post-container .featured-image-container {
		margin-bottom: 20px;
	}
}

/*search/category bar tweaks*/
#search-filter-form-1520 ul {
	display: flex;
	justify-content: center;
}

#search-filter-form-1520 label {
	width: 100%;
}
#search-filter-form-1520 label input,
#search-filter-form-1520 label select {
	border-radius: 0px;
}
#search-filter-form-1520 ul {
	margin: 0px;
}
#search-filter-form-1520 ul li {
	margin: 0px 15px;
	width: 100%;

}

body form.searchandfilter ul li.sf-field-submit {
	max-width: 100px;
}
body form.searchandfilter ul li.sf-field-submit input {
	width: 100%;
	margin-top: 37px;
}
body form.searchandfilter ul li.sf-field-submit input {
	padding: 10px;
}

@media only screen and (max-width: 767px) {
	#search-filter-form-1520 ul {
		flex-flow: column nowrap;
	}
	#search-filter-form-1520 ul li {
		margin: 0px;
	}
	body form.searchandfilter ul li.sf-field-submit {
		min-width: 100% !important;
	}
	body form.searchandfilter ul li.sf-field-submit input 	{
	margin-top: 10px;
	}
}


/* Remove Box Shadow on Slideshow Carousel */
.elementor-image-carousel-wrapper .elementor-image-carousel img {
	box-shadow: unset;
}

/* Focus Outline */
body a:focus, body .focus a {
	outline: none !important;
}

/* Header Image Drop Shadow */
#site-header img {
	box-shadow: none !important;
}