/*
Theme Name: EWS Child
Description: EWS Child Theme
Author: Effective Web Solutions
Author URI: https://www.effectivewebsolutions.biz/
Template: EWS-Theme
Version: 2.0 "Pixie"
Text Domain: EWS-Child
*/
/* Custom styles go here */

/* CSS VARIABLES */

:root {
	--line-height-set: 1.7;
	--theme-font-main: Roboto;
	--theme-font-secondary: Rowdies;
	--theme-font-headings: Rowdies;
	--theme-font-menu: Rowdies;
	--button-font: Rowdies;
	--button-bg: #f27500;
	--button-color: #3c2d24;
	--button-shadow: /*inset 0 25px 20px -10px rgba(255, 255, 255, 0.3)*/;
	--button-shadow-hover: 3px 3px 0px 0px #458db5;
	--footer-anchor-color: #a7dcff;
	--menu-toggle-shadow-color: #a7dcff;
	--menu-toggle-bg: rgba(215,215,215,0.5);
	--themed-bg-color: #fcfcfc;
	--themed-bg-secondary: rgba(41,145,214,0.8);
	--themed-bg-tertiary: #fff;
	--header-margin-bottom: 18px;
}

@media only screen and (min-width: 1px) {
	
	    .named-grid .head-section {
        grid-template-columns: 1fr 1fr;
			grid-template-areas:
					"banner-phn banner-phn"
					"logo site-navigation";
		}

	.home .before-services {
		background-image: url(../../uploads/2025/09/Home-page-hero-image-cover-Mobile-view-dark.jpg);
		background-size:cover;
		background-repeat:no-repeat;
		background-position-x: center;
        background-position-y: 10%;
	}
	
	.before-services {
        padding: 6% 2%;
	}
	
	.non-home-header-text {
		background-image: url(../../uploads/2017/06/temp-home-bg.jpg);
	}

	.inline-heading > * {
		display: inline;
	}
	
	/*=====General=====*/
	
	.button:not(.wp-block-button):not(#menubutton), .woocommerce header a.button, .wp-block-button.button a {
        border-radius: 15px;
	}
	
	.button:not(.wp-block-button):not(#menubutton):hover{
		border: 3px solid #fff;
		box-shadow:none;
	}
		
	.button:not(.wp-block-button):not(#menubutton){
		transition: 0.4s;
		border-color: #ffffff;
        border-style: solid;
        border-width: 3px;
    }
	
	.cbox{
		background-image:url() !important;
		background-color:#f27500;
	}
	
	.image-border img{
		border-radius:20px;
	}
	
	
	
	/*.card-section-bg-image{
		background-image: url(../../uploads/2025/06/card-section-background-mobile-view-home.jpg);
	}*/
	
	/*=====Header=====*/
	
	#header {
        background-color: #fcfcfc;
	}
	
	.banner-phn{
		width: 100%;
	}
	
	.named-grid .banner-phn{
		padding: 10px 0px 10px 0px;
		background-color: #f27500;
	}
	
	.banner-a{
		justify-content:center;
	}
	
	/*=flex=*/
	
	.flex-hero{
		display:flex;
	}
	
	.flex-dire-column{
		flex-direction:column;
	}
	
	.align-start{
		align-items: flex-start;
	}
	
	.align-center{
		align-items: center;
	}
	
	.justify-center{
		justify-content:center;
	}
	
	
	/*=colors=*/
	
	.Medium-Sky-Blue{
		color:#3c7a9d;
	}
	
	.Pumpkin-Orange{
		color:#e87000;
	}
	
	.white{
		color:#fff;
	}
	
	
	/*=aligns=*/
	
	.align-left{
		text-align:left;
	}

	
	/*=radius=*/
	.radius-30px a{
		border-radius:30px;
	}
	
	
	/*=sizes=*/
	
	.tx-40-px{
		font-size:20px;
	}
	.tx-2-rem{
		font-size:2rem;
	}
		
	/*=====form=====*/
	
	.home .before-services .gfield_checkbox {
		display:flex;
		justify-content:center;
	}
	
	.gchoice_1_6_1, .gchoice_1_6_2{
		width:100px;
	}
	
	.gform_wrapper.gravity-theme .gfield_description{
		font-size:11px;
	}
	
	.gform_wrapper.gravity-theme .gfield textarea.small {
		height: 90px;
	}
	
	.form-background{
		background: #2a5770;
		padding: 0px 20px;
		border-radius: 50px;
		color: #ffffff;
	}
	
	.gform_wrapper.gravity-theme input[type=text], .gform_wrapper.gravity-theme input[type=email], .gform_wrapper.gravity-theme input[type=tel], .gform_wrapper.gravity-theme textarea{
		padding: 8px 8px 8px 18px;
	}
	
	.form-background .button:not(.wp-block-button):not(#menubutton):hover{
		box-shadow: 3px 3px 0px 0px #fff;
		border: 1px solid rgb(255 255 255)
	}
	    
	input, textarea {
        border-radius: 27px;
	}
	
	#input_1_6{
		justify-content:left;
	}
	
	.before-services #input_1_6{
		justify-content:center;
	}
	
	.home .gform_wrapper.gravity-theme .gfield_required {
		color: #ffb876;
	}
	
	.home div#gfield_description_1_6 a {
		color: #ffb876;
	}
	
	.flex-option{
		display:flex;
	}
	
	/*=====after hero image======*/
	
	.after-hero-bg-color {
		background-color: #33333;
	}
	
	
	
		/* Fade-in animation */
	@keyframes fadeInUp {
	  0% {
		opacity: 0;
		transform: translateY(30px);
	  }
	  100% {
		opacity: 1;
		transform: translateY(0);
	  }
	}

	.homepage-title-animation {
	  opacity: 0;
	  animation: fadeInUp 1.2s ease-out forwards;
	  animation-delay: 0.3s;
	}

	/*=====Hide=====*/
	.hide-desktop{
		display:block;
	}
	
	.hide-mobile{
		display:none;	
	}
	
	/*=====Footer=====*/
	
	.menu-ftr a {
        color: #282829;
	}
	
	.ftr-cta {
        background-color: #f27500;
		color:#3c2d24;
	}
	
	.ftr-cta a.footer-cta-click {
        color: #282829;
		text-decoration: underline;
	}
	
	#footer {
        background-color: #fcfcfc;
		color:#3c2d24;
	}
	
	#footer a{
		color: #282829;
	}
	
	aside.footer-widgets .fauxthree {
        color: #3c7a9d;
	}
	
	.sub-ftr {
		background-color: #f27500;
		color: #282829;
	}
	
	.ews-ftr a{
		color: #042c6f;
	}
	
}

@media only screen and (min-width: 400px) {

}

@media only screen and (min-width: 500px) {
    .before-services {
		padding: 0% 2% 15% 2%;
    }
	
}
	
@media only screen and (min-width: 600px) {
	.before-services {
        padding: 0% 2% 9% 2%;
    }
	
	.home .before-services {
        background-position-y: 79%;
	}
}

@media only screen and (min-width: 600px) {
	
}
@media only screen and (min-width: 768px) {

	.home .before-services {
		background-image: url(../../uploads/2025/09/Home-page-hero-image-cover-dark.jpeg);
        background-size: cover;
        background-repeat: no-repeat;
		background-position:center;
	}
	
	  .named-grid .head-section {
        grid-template-columns: 300px minmax(1px, 1fr) 300px;
        grid-template-areas:
							"tspace tspace tspace"
							"logo site-navigation banner-phn";
    }
	
	/*=====Header=====*/
	
	.banner-phn{
		width: auto;
		padding: 0 20px;
	}
	
	.before-services {
        padding: 2% 2% 11% 2%;
    }
	.named-grid .banner-phn{
		background-color:transparent;
	}
	.button:not(.wp-block-button):not(#menubutton):hover{
		border: 1px solid #458db5;
		box-shadow:var(--button-shadow-hover);
	}
	
	
	
	
	.non-home-header-text {
		background-image: url(../../uploads/2025/06/AdobeStock_78621981-min.jpeg);
	}
	
/*	.card-section-bg-image{
		background-image: url(../../uploads/2025/06/card-section-background-home.jpg);
		background-position:center;
		background-size:cover;
		background-repeat:no-repeat;
	}*/

}

@media only screen and (min-width: 900px) {
	
   .named-grid .head-section {
        grid-template-columns: 300px minmax(1px, 1fr) 300px;
        grid-template-areas:
							"tspace tspace tspace"
							"logo site-navigation banner-phn";
    }
	
	.named-grid #menu-social-navigation {
		margin: 0;
	}
	
	div.inline-center-aligned-nav #site-navigation {
		position: relative;
	}
	
	#menu-social-navigation {
		-ms-grid-column: 2;
		grid-column: 2;
	}
	
	div.inline-center-aligned-nav .head-section {
		-ms-grid-rows: auto;
		grid-template-rows: auto;
		grid-row-gap: 0px;
		grid-template-areas:	"social-navigation social-navigation logo banner-bar banner-bar"
								"site-navigation site-navigation site-navigation site-navigation site-navigation";
	}
	
	div.inline-center-aligned-nav #menu-social-navigation {
		-ms-grid-row: 1;
		grid-row: 1;
	}
	
	/*=====after hero image======*/
	
	.after-hero-bg-color {
		background-color: #fffff;
	}
	
	/*=====form=====*/
	
	.form-background{
		background: #458db5e0;
		padding: 0px 20px;
		border-radius: 50px;
		color: #ffffff;
	}
	
	.home .gform_wrapper.gravity-theme .gfield_required {
		color: #301700;
	}
	
	.home div#gfield_description_1_6 a {
		color: #301700;
	}
	
	/*=====Hide=====*/
	.hide-desktop{
		display:none;
	}
	
	.hide-mobile{
		display:block;	
	}
	
	/*=====paddings=====*/
	
	.pad-top-50{
		padding-top:50px;
	}
	.tx-2-rem{
		font-size:2.7rem;
	}
	
	/*=====sizes=====*/
	
	.tx-50-px{
		font-size:50px;
	}
	.tx-2-rem{
		font-size:2rem;
	}
	
	/*=flex=*/
	
	.flex-dire-row{
		flex-direction:row;
	}
	/*=====Header=====*/
	.button:not(.wp-block-button):not(#menubutton){
		border-color:rgba(0, 0, 0, 0.03);
		border-width: 1px;
	}
	
	/*=====hover=====*/
	
	/*nonehomehover*/
	.hoverbox-orange{
		transition:0.4s;
	}
	
	.hoverbox-orange:hover{
		background-color:#f27500bd;
	}
	
	.hoverbox-blue{
		transition:0.4s;
	}
	
	.hoverbox-blue:hover{
		background-color:#458db5a8;
	}
	/*homehover*/
	
	.card-orange-hover{
		border: 2px solid #f275008a;
		transition: 0.4s;
		display: flex;
		flex-direction: column;
		align-items: center;
		border-radius: 20px;
		box-shadow: 5px 5px 15px 0px rgba(0, 0, 0, 0.33);
	}
	
	.card-orange-hover:hover{
		border-color: #f27500;
		box-shadow: 3px 3px 0px 0px #f27500;
	}
	
	.card-blue-hover{
		border: 2px solid #458db582;
		transition: 0.4s;
		display: flex;
		flex-direction: column;
		align-items: center;
		border-radius: 20px;
		box-shadow: 5px 5px 15px 0px rgba(0, 0, 0, 0.33);
	}
	
	.card-blue-hover:hover{
		border-color: #458db5;
		box-shadow: var(--button-shadow-hover);
	}
	
	
	#post-1541 > div > div > div:nth-child(1) > div.wp-block-ewsblocks-ewscolumns.one_half.left-text.hoverbox-orange.nomargin, #post-1541 > div > div > div.wp-block-ewsblocks-ewscolumns.one_full.flexrow-cont.themebg.reverse > div.wp-block-ewsblocks-ewscolumns.one_half.right-text.hoverbox-blue.nomargin, #post-1541 > div > div > div:nth-child(3) > div.wp-block-ewsblocks-ewscolumns.one_half.left-text.hoverbox-orange.nomargin, #post-1543 > div > div > div > div:nth-child(2) > div.wp-block-ewsblocks-ewscolumns.one_half.left-text.hoverbox-orange.nomargin, #post-1539 > div > div > div.wp-block-ewsblocks-ewscolumns.one_full.flexrow-cont.themebg.reverse > div.wp-block-ewsblocks-ewscolumns.one_half.left-text.hoverbox-orange, #post-1539 > div > div > div:nth-child(2) > div.wp-block-ewsblocks-ewscolumns.one_half.right-text.hoverbox-blue{
		margin-top:0px;
		margin-bottom:0px;
		height: auto;
	}
	
}

@media only screen and (min-width: 1024px) {
	
	.before-services, .after-services{
        padding: 10% 2%;
    }
	/*=====Header=====*/
	
	.banner-a {
        justify-content: center;
	}
}

@media only screen and (min-width: 1240px) {
	
	div.inline-right-aligned-nav .head-section {
		grid-template-areas: 	"social-navigation logo"
								"banner-bar logo"
								"site-navigation site-navigation";
	}
	
	div.inline-right-aligned-nav #menu-social-navigation, div.inline-right-aligned-nav .main-navigation  {
		text-align: center;
	}
	
	div.inline-default-aligned-nav #Logo {
		-ms-grid-row-span: 2;
		grid-row: 1 / 3;
	}
	
	.before-services, .after-services{
        padding: 2% 2%;
    }

}

@media only screen and (min-width: 1400px) {

}

@media only screen and (min-width: 1620px) {
	
    .named-grid .head-section {
		grid-template-columns: calc(50% - 800px) 350px 900px 350px calc(50% - 800px);
		grid-template-areas:	"tspace tspace tspace tspace tspace"
								"lspace logo site-navigation banner-phn rspace"
								
	}
	
	.before-services, .after-services{
        padding: 2% 2%;
    }

}


/*                                                                                                                    */
/*                                                                                                                    */
/* CHANGE THIS TO SHIFT THE POINT WHERE THE MOBILE MENU CHANGES TO DESKTOP */
/*                                                                                                                    */
/*                                                                                                                    */
@media only screen and (min-width: 1140px) {

	/* MENU */
	.menu-toggle, .woocommerce button.button.menu-toggle {
		display: none;
	}
	
	.sub-menu {
		display: inherit;
		transition: 0s;
	}

	.main-navigation {
		display: block;
		line-height: 0;
		z-index: 5;
	}
	
	div.nav-menu {
		border-top: 0px solid #fff;
	}
	
	div.inline-center-aligned-nav #site-navigation {
		position: fixed;
	}
	
	div.inline-right-aligned-nav .head-section {
		grid-template-areas: 	"social-navigation logo"
								"banner-bar logo"
								"site-navigation logo";
	}
	
	div.inline-right-aligned-nav #menu-social-navigation, div.inline-right-aligned-nav .main-navigation  {
		text-align: left;
	}
	
	div.inline-default-aligned-nav #Logo {
		-ms-grid-row-span: 3;
		grid-row: 1 / 4;
	}
	
	div.inline-center-aligned-nav .head-section {
		-ms-grid-rows: 55px 0px 1fr;
		grid-template-rows: 55px 1fr;
		grid-row-gap: 0px;
		grid-template-areas:	"site-navigation site-navigation site-navigation site-navigation site-navigation"
								"social-navigation social-navigation logo banner-bar banner-bar";
	}
	
	div.inline-center-aligned-nav #menu-social-navigation {
		-ms-grid-row: 2;
		grid-row: 2;
	}

	nav.main-navigation .nav-menu ul.menu, nav.main-navigation .nav-menu ul.menu.toggled-on {
		background: inherit;
		position: relative;
		top: inherit;
		left: inherit;
		right: inherit;
		display: flex;
		flex-wrap: wrap;
		padding: 0;
		width: 92%;
		border: 0;
		margin: 0 auto;
		max-width: 1400px;
		box-shadow: none;
		justify-content: center;
	}
	
	ul.sub-menu {
		border-top: 1px solid #e5e5e5;
		border-bottom: 1px solid #e5e5e5;
	}
	
	ul.sub-menu ul.sub-menu {
		margin-top: -1px;
	}

	nav.main-navigation .nav-menu ul.menu li {
		width: auto;
		background-color: transparent;
	}

	nav.main-navigation .nav-menu ul.menu li a {
		display: flex;
		padding: 20px 25px;
		line-height: 1;
		text-shadow: none;
		justify-content: space-between;
	}

	nav.main-navigation .nav-menu ul.menu li ul.sub-menu li a {
		padding: 10px 25px;
	}
	
	.main-navigation .sub-menu > li:first-of-type {
		border-top: none;
	}
	
	ul.submenu li.menu-item-has-children a:after {
		border-top: 5px solid transparent;
		border-bottom: 5px solid transparent;
		border-left: 7px solid rgba(0, 0, 0, 0.5);
	}

	.main-navigation ul.menu, .main-navigation div.nav-menu > ul {
		text-align: left;
		width: 100%;
	}
	.main-navigation ul {
		margin: 0;
		text-indent: 0;
	}
	
	.main-navigation ul.menu {
		border: none;
	}
	.main-navigation li a,
	.main-navigation li {
		text-decoration: none;
	}
	.main-navigation li a {
		border-bottom: 0;
		color: #6b5141;
		white-space: nowrap;
		border-bottom-style: solid;
        border-bottom-width: 4px;
        border-bottom-color: transparent;
	}
	.main-navigation li a:hover,
	.main-navigation li a:focus {
		color: #458db5;
		border-bottom-style: solid;
        border-bottom-width: 4px;
		border-bottom-color: #458db5;
	}
	
	.main-navigation a {
        transition: 0.4s;
	}
		
	.main-navigation li {
		margin: 0;
		position: relative;
		border-bottom: none;
		background: transparent;
		font-size: 15px;
        font-weight: 800;
		box-shadow: none;
	}
	.main-navigation li.menu-item-has-children a:after {
		margin-top: 4px;
		margin-left: 10px;
	}
	.main-navigation ul.sub-menu li.menu-item-has-children a:after {
		margin-top: 4px;
		margin-left: 10px;
		border-top: 5px solid transparent;
		border-left: 7px solid rgba(0, 0, 0, 0.5);
		border-bottom: 5px solid transparent;
	}
	.main-navigation li ul {
		margin: 0;
		padding: 0;
		position: absolute;
		top: 100%;
		z-index: 1;
		height: 1px;
		width: 1px;
		overflow: hidden;
		clip: rect(1px, 1px, 1px, 1px);
	}
	.main-navigation li ul ul {
		top: 0;
		left: 100%;
	}
	.main-navigation ul li:hover > ul,
	.main-navigation ul li:focus > ul,
	.main-navigation ul li:focus-within > ul,
	.main-navigation .focus > ul {
		border-left: 0;
		clip: inherit;
		overflow: inherit;
		height: inherit;
		width: inherit;
	}
	.main-navigation li ul li a {
		background: #f3f3f3;
		border-bottom: 1px solid #ededed;
		display: block;
		font-size: 11px;
		font-size: 1em;
		padding: 8px 10px;
		width: 180px;
		white-space: normal;
	}
	.main-navigation li ul li a:hover,
	.main-navigation li ul li a:focus {
		background: #e3e3e3;
		color: #444;
	}
	.main-navigation .current-menu-item > a,
	.main-navigation .current-menu-ancestor > a,
	.main-navigation .current_page_item > a,
	.main-navigation .current_page_ancestor > a {
		color: #b85900;
		font-weight: bold;
		border-bottom-style: solid;
        border-bottom-width: 4px;
        border-bottom-color: #f27500;
	}
	
	nav.main-navigation .nav-menu ul.menu > li > ul {
		margin-left: -1px;
	}
	
	nav.main-navigation .nav-menu ul.menu li ul li {
		border-left: 1px solid rgba(0, 0, 0, 0.15);
	}
	
	nav.main-navigation .nav-menu ul.menu li ul li ul {
		width: 100%;
	}
	
	nav.main-navigation .nav-menu ul.menu li ul li ul li {
		float: none;
		display: flex;
		width: calc(100% - 2px);
	}
	
	.sub-menu li a {
		width: 100%;
		margin-left: 0;
	}
	
	.sub-menu .menu-item-has-children {
		border-top: 0;
	}
	
	.sub-menu li .sub-menu li a {
		width: 100%;
		margin-left: 0;
	}
	
	nav.main-navigation .nav-menu ul.menu li {
		border-right:0px solid #fff;
	}
	
	nav.main-navigation .nav-menu ul.menu > li:last-child {
		border-right:0;
	}
	
	/*   ****  These styles are for the Logo in Menu option  ****   */
	
	div#Logo.in-nav {
		display: none;
	}
	
	.main-navigation.has-logo ul.menu, .main-navigation.has-logo div.nav-menu > ul {
		display: flex !important;
		justify-content: flex-end;
	}
	
	nav.main-navigation.has-logo .nav-menu ul.menu, nav.main-navigation.has-logo .nav-menu ul.menu.toggled-on {
		margin: 0 auto;
	}
	
	.main-navigation.has-logo ul.menu > li, .main-navigation.has-logo div.nav-menu > ul.menu > li {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	
	.main-navigation li.nav-image {
		margin-right: auto;
	}
	
	.main-navigation.has-logo ul.menu .sub-menu {
		display: block;
	}
}