/*
 Theme Name:	Civitas Lancaster Child Theme
 Author:		MSonder
 Template:		twentynineteen
 Version:		1.0
*/

* {
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}

html, body {  
	margin: 0px;
	
	border: 0px;
	padding: 0px;
	margin-top: 0px !important;
	
	text-align: left;

	-webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
    -webkit-text-size-adjust: none;
	text-rendering: optimizelegibility;

	color: #000;
	font-family: "Montserrat", sans-serif;
	font-size: 18px;
	line-height: 30px;
	font-weight: 500;

	background: #fff;
}

body:not(.custom-background-image).admin-bar::before {top: 0px;}
body:not(.custom-background-image)::before, body:not(.custom-background-image)::after {height: 0px;}

a {outline:none;}

ul {padding-top: 0px; margin-top: 0px;}

:root {overflow-y: scroll !important;}
::-moz-selection {
    background: #393939;
	color: #6a6a6a;
    text-shadow: none;
}

::selection {
    background: #393939;
	color: #6a6a6a;
    text-shadow: none;
}

.right {float:right !important;}
.left {float:left !important;}
.clear {clear:both;}
img.right {float:right !important; margin:0 0 20px 20px !important;}
img.left {float:left !important; margin:0 20px 20px 0 !important;}
img {border: none;}

img.alignright {float:right; margin:0 0 1em 1em;}
img.alignleft {float:left; margin:0 1em 1em 0;}
img.aligncenter {display: block; margin-left: auto; margin-right: auto;}
.alignright {float:right; }
.alignleft {float:left; }
.aligncenter {display: block; margin-left: auto; margin-right: auto;}

.responsive {width: 90%;}


/*	--------------------------------------------------
	:: Structure
	-------------------------------------------------- */

		#header-wrapper {
			width: 100%;
			height: auto;
			background: #ffffff;
		}
		#header {
			width: 90%; 
			height: auto;
			margin: 0 auto;
			position: relative;
		}		
		#header .g70 {position: absolute; top: 50%; transform: translateY(-50%); right: 0;}
		

		#logo img {width: auto;}	
		
		#phone {font-size: 20px; color: #888; padding-top: 10px;padding-left: 20px; font-weight: 900;}	
		#phone a {color: #000; text-decoration: none;}
		
		.content-wrapper {
			width: 100%;
			height: auto;
			margin: 0px auto;
            overflow-x: hidden !important;
		}
		.content-wrapper a {color: #0495b7; text-decoration: underline; line-height: 20px;}
		.content-wrapper .has-link-color a {color: inherit;}
		.content-wrapper a:hover {color: #027c99; text-decoration: none;}
				
		
		.wp-block-cover.alignfull {
			max-width: 100vw;
			width: auto;
			padding: 80px 0 60px 0;
            overflow-x: hidden !important;
		}
		.alignfull .wp-block-cover__inner-container {max-width: 1200px;}

        .wp-block-columns.is-layout-flex {gap: 2em !important;}

		.wp-block-cover.has-parallax,
        .wp-block-cover__image-background.has-parallax {background-attachment: fixed !important;}

        .cta {
            background: #ffffff;
			-webkit-box-shadow: 15px 15px 50px 0 rgba(0,0,0,.50);
			box-shadow: 15px 15px 50px 0 rgba(0,0,0,.50);
			padding: 20px;
        }

/*	--------------------------------------------------
	:: Navigation (FULL CSS w/ DROPS)
	-------------------------------------------------- */
	
		
#nav-wrapper {
	height: auto;
	margin: 0;
	padding: 0;
}

#nav-bg {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
}
		
	button#menuToggle {display: none;}

	ul.menu {margin: 0; padding: 0px 0 0 0;}
	
	ul.menu li {list-style: none; position: relative; float: left;}
	ul.menu li:last-child a {}
	ul.menu li:first-child a {}
	
	ul.menu li:hover {cursor: default;}
	ul.menu li a {
		display: block;
		line-height: 50px;
		font-family: "Montserrat", sans-serif;
		font-size: 14px;
		font-weight: bold;
	  	text-align: center;
		padding: 0 10px;
		width: 100%;
		color: #000;
		text-transform: uppercase;
		text-decoration: none;
			-webkit-transition: all 0.25s ease-in-out;
			-moz-transition: all 0.25s ease-in-out;
			-o-transition: all 0.25s ease-in-out;
			transition: all 0.25s ease-in-out;
		}
	ul.menu li a:hover, ul.menu li a:focus {border-bottom: 3px solid #16478e; transform: translateY(-3px);}

    ul.menu li.menu-item-has-children a:after {
        content: '\f0d7';
        font-family: "Font Awesome 6 Pro";
        font-style: normal;
        font-weight: 600;
        padding-left: 10px;
        font-size: 14px;
        color: #436d8a;
    }
	ul.menu li ul {
		position: absolute;
		left: -9999em;
		width: auto;
		margin: 0;
		padding: 0;
		list-style-type: none;
		white-space: nowrap;
	}

    ul.menu li:hover ul {
        left: 0;
        -webkit-box-shadow: -10px 0px 13px -7px #c7c7c7, 10px 0px 13px -7px #c7c7c7, 5px 5px 7px 5px rgba(181, 181, 181, 0);
        box-shadow: -10px 0px 13px -7px #c7c7c7, 10px 0px 13px -7px #c7c7c7, 5px 5px 7px 5px rgba(181, 181, 181, 0);
    }
    ul.menu li:hover ul li {
        float: none;
        width: 100%;
        position: relative;
        z-index: 9999;
    }
    ul.menu li:hover ul li a {
        display: block;
        line-height: 45px;
        font-size: 18px;
        font-weight: 500;
        text-transform: none;
        text-shadow: none;
        text-align: left !important;
        padding: 0 30px 0 10px;
        background: #fff;
        border-bottom: 2px solid #fff;
        width: 100%;
        color: #0e1e29;
        text-decoration: none;
    }
    ul.menu li:hover ul li a:hover {
        background: #eeeeee;
        border-bottom: 2px solid #ebeef3;
    }

    /* sub menu fix */
    ul.menu li.menu-item-has-children:hover ul li a:after {
        content: '';
        display: none;
    }
    


/*	--------------------------------------------------
	:: Footer
	-------------------------------------------------- */


		#footer-wrapper {
			height: auto; 
			width: 100%;
			background: #1f334f;
		}		
		#footer {
			height: auto; 
			width: 90%;
			margin: 0 auto;
			padding: 15px 0;
			background: #1f334f;
			font-family: "Montserrat", sans-serif;
			font-size: 18px; 
			line-height: 34px; 
			color: #ffffff;
		}
		#footer a {color: #ffffff; text-decoration: none;}
		#footer a:hover {color: #ffffff; text-decoration: underline;}
	
	
		#copyright-wrapper {
			height: auto; 
			width: 100%;
			background: #1f334f;
		}	
		#copyright {
			height: auto; 
			width: 90%;
			margin: 0 auto;
			padding: 20px 0;
			background: #1f334f;
			font-family: "Montserrat", sans-serif;
			font-size: 14px; 
			line-height: 18px; 
			color: #dbe5f2;
			border-top: 2px solid #30517f;
		}
		#copyright a {color: #dbe5f2; text-decoration: underline;}
		#copyright a:hover {color: #dbe5f2; text-decoration: none;}
				
        #copyright .g50:nth-child(2) {text-align: right !important;}

			/* Options - Social */
			ul.social-media-icons {width: 30%; list-style: none; text-align: right !important; margin: 0 !important; padding: 0;}
			ul.social-media-icons li {display: inline; padding: 2px 5px 0px 0px; margin: 0 !important;}
			ul.social-media-icons a i {
				font-size: 18px;
				width: 35px;
				height: 35px;
				line-height: 35px;
				text-align: center;
				background: #77af1a;
				color: #fff;
				border-radius: 6px;
			}
			ul.social-media-icons li a:hover {opacity: 0.8; text-decoration: none !important;}



/*	--------------------------------------------------
	:: Elements
	-------------------------------------------------- */
	ul.checkmark {
		--icon-space: 1.3em;
		list-style: none;
		padding: 0;
	}
	ul.checkmark li {padding-left: var(--icon-space);}

	ul.checkmark li:before {
		content: "\f00c"; 
		color: #77af1a;
        font-family: "Font Awesome 6 Pro";
		font-weight: 700;
		display: inline-block;
		margin-left: calc( var(--icon-space) * -1 );
		width: var(--icon-space);
		padding-right: 15px;
	}

h1:not(.site-title)::before, h2::before{
	background: none !important;
	content: none !important;
	height: 0px !important;
	margin: 0 !important;
	width: 0 !important;
}
	
h1, .wp-block-cover h1:not(.has-text-color) {
	color: #1f334f;
	font-family: "Montserrat", sans-serif;
	font-size: 40px;
	line-height: 52px;
	margin: 0px;
	padding: 0px;
	margin-bottom: 25px;
}

h2, .wp-block-cover h2:not(.has-text-color) {
	color: #1f334f;
	font-family: "Montserrat", sans-serif;
	font-size: 30px;
	line-height: 36px;
	margin: 0px;
	padding: 0px;
	margin-bottom: 25px;
}

h3, .wp-block-cover h3:not(.has-text-color) {
	color: #1f334f;
	font-family: "Montserrat", sans-serif;
	font-size: 24px;
	line-height: 30px;
	margin: 0px;
	padding: 0px;
	margin-bottom: 25px;
}

p {
	margin: 0px;
	padding: 0px 0px 15px 0px;
}

hr,
hr.is-style-wide {
	border: 0; 
	height: 4px; 
	background: #dadada;
	text-align: center;
	line-height: 4px;
	font-size: 26px;
	border-bottom: 0px;
	margin: 30px 0 45px 0;
}

hr.wp-block-separator:not(.is-style-wide) { 
	border: 0; 
	height: 4px; 
	background: #dadada;
	text-align: left;
	line-height: 4px;
	font-size: 26px;
	border-bottom: 0px;
	margin: 30px 0 45px 0;
}

	blockquote {	
		border-left: 12px solid #77af1a !important;
		background: #ededed;
		color: #000; 
		padding: 20px 10px 20px 40px !important;
	}
	blockquote p {padding: 0;}
	
	blockquote cite {
		font-size: 16px; 
		text-transform: uppercase; 
		color: #575757; 
		font-style: italic;
	}

	a.wp-block-button__link {
		display: inline-block;
		background: #77af1a;
		font-family: "Montserrat", sans-serif;
		color: #fff !important;
		font-size: 16px;
		font-weight: 700;
		margin: 10px 0;
		padding: 20px 30px;
		border-radius: 8px;
		box-shadow: 10px 10px 40px 0 rgba(0,0,0,0.50);
		text-decoration: none !important;
			-webkit-transition: all 0.25s ease-in-out;
			-moz-transition: all 0.25s ease-in-out;
			-o-transition: all 0.25s ease-in-out;
			transition: all 0.25s ease-in-out;
	}
	a.wp-block-button__link:hover {background: #5e8e0e; color: #e4f0cf !important; box-shadow: 4px 4px 10px 0 rgba(0,0,0,0.25);}
    a.wp-block-button__link:after {
        content: '\f0da';
        font-family: "Font Awesome 6 Pro";
        font-style: normal;
        font-weight: 600;
        padding-left: 10px;
        color: #1f334f;
        transition: all 0.25s ease-in-out;
    }
    a.wp-block-button__link:hover:after {color: #334f77;}





/*	--------------------------------------------------
	:: Grid 
	-------------------------------------------------- */

div.content > div img {width: 100%;}
 /* Override */.no-full {width: auto !important;}
 

.g10, .g20, .g30, .g40, .g50, .g60, .g70, .g80, .g90, .g100, .g33, .g25, .g75 {
	height:auto;
	float:left;
}
.g10 {width:10%;}
.g20 {width:20%;}
.g30 {width:30%;}
.g40 {width:40%;}
.g50 {width:50%;}
.g60 {width:60%;}
.g70 {width:70%;}
.g80 {width:80%;}
.g90 {width:90%;}
.g100 {width:100%;}

.g33 {width:33.33333333%;}
.g25 {width:25%;}
.g75 {width:75%;}

.padding {padding: 10px 15px;}




/*	--------------------------------------------------
	:: Form Styles
	-------------------------------------------------- */

input, textarea, select {
    border: 0px !important;
	background: #f5f5f5 !important;
	border-bottom: 2px solid #f5f5f5;
    font-family: inherit;
    padding: 10px !important;
	width: 100%;
}
select {padding: 14px !important;}
input[type="checkbox"], input[type="radio"] {
	width: auto;
}
input:focus, textarea:focus, select:focus {
    border: 0px;
	background: #eaeaea !important;
	border-bottom: 2px solid #eaeaea;
    font-family: inherit;
    padding: 10px !important;
}
select:focus {padding: 14px !important;}

    .gform_wrapper.gravity-theme .ginput_container_address span {
		flex: 0 0 100%;
	}
	.ginput_complex.ginput_container_address .address_city {
		width: 32% !important;
        margin: 0px 1% 0px 1% !important;
		padding: 0 !important;
		display: block;
		float: left;
		flex: unset !important;
	}
	.ginput_complex.ginput_container_address .address_state {
		width: 32% !important;
        margin: 0px 1% 0px 0px !important;
		padding: 0 !important;
		display: block;
		float: left;
		flex: unset !important;
	}
	.ginput_complex.ginput_container_address .address_zip {
		width: 33% !important;
        margin: 0px!important;
		padding: 0 !important;
		display: block;
		float: right;
		flex: unset !important;
	}

button, input[type="submit"], input[type="button"], input[type="reset"] {
    background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #15223d 0%, #15223d 100%) repeat scroll 0 0 !important;
    border-bottom: 2px solid #15223d !important;
    color: #eceae0;
    display: inline-block;
    padding: 20px 30px !important;
    font-family: 'Lato', sans-serif;
    text-decoration: none;
	text-transform: uppercase;
    font-weight: 400;
    letter-spacing: 2px;
    font-size: 18px;
    width:auto;
    border-radius: 8px;
}

button:hover, button:focus, input[type="submit"]:hover, input[type="submit"]:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="reset"]:hover, input[type="reset"]:focus {
    background: rgba(0, 0, 0, 0) linear-gradient(to bottom, #203154 0%, #203154 100%) repeat scroll 0 0 !important;
    color: #fff !important;
}




/*	--------------------------------------------------
	:: Media Queries
	-------------------------------------------------- */


@media screen and (min-width: 1200px) {
	.responsive {width: 1200px !important;}
}

@media screen and (max-width: 1200px) {
    .alignfull .wp-block-cover__inner-container {max-width: 90%;}
}

@media screen and (min-width: 801px) {.opensub {display: none;}} 

@media screen and (max-width: 800px) {
    
	#header {width: 100% !important; position: static;}
	#header .g70 {position: static;}
    
		.wp-block-cover.hero .wp-block-cover__background {opacity: .6 !important;}
	
    #copyright .g50:nth-child(2) {float: none!important; text-align: center;}

	/* ********* Mobile Navigation Styles ********** */
	button#menuToggle {
		display: block;
		border: 0;
		background: #242424 !important;
		border-bottom: transparent !important;
		padding: 10px 0;
		width: 100%;
		color: #fff;
		text-align: center;
		font-size: 24px;
		font-weight: 700; 
		border-radius: 0px !important;
	}
	button#menuToggle:hover, #menuToggle:focus {background: #242424 !important;}

	.menu-content {display: none;}

	.menu-content .right {float: none !important;}
	ul.menu {background: #242424;}
	ul.menu li {float: none; width: 100%;text-align: center;border-bottom: 1px solid #4e4e4e;}
	ul.menu li a {color: #fff;}
	ul.menu li a:hover,
	ul.menu li.current-menu-item a,
	ul.menu li a:focus {color: #fff; background: #242424 ;}

	/* submenu */
	ul.sub-menu {display: none;}
	ul.menu li ul {
		position: static;
		left: 0;
		width: auto;
	}
	ul.menu li:hover ul li {
		float: none;
		width: 100%;
		position: static;
		text-align: center !important;
	}
	ul.menu li:hover ul li:hover {text-align: center;}
	
	ul.menu li.menu-item-has-children a::after {content: ""}
	
    ul.menu li .opensub {
        color: #fff;
        background: #4e4e4e;
        position: absolute;
        right: 0px;
        font-size: 20px;
        top: 0px;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 60px;
        width: 60px;
        cursor: pointer;
    }    
	
    #content img.alignright {
        display: block;
        margin: 0px auto;   
        float: none;
        width: auto;
        max-width: 100%;
    }
	
	.g25 {width: 50% !important;}
	.g30 {width: 100% !important;}
	.g33 {width: 100% !important;}
	.g50 {width: 100% !important;}
	.g70 {width: 100% !important;}
	
}

@media screen and (max-width: 600px) {
	.responsive {width: 90% !important;}
}

@media screen and (max-width: 480px) {
	
	.g10 {width: 100% !important;}
	.g20 {width: 100% !important;}
	.g25 {width: 100% !important;}
	.g40 {width: 100% !important;}
	.g60 {width: 100% !important;}
	.g80 {width: 100% !important;}
	.g90 {width: 100% !important;}

}