/**
* Theme Name:   Alpine Property Group Divi CHILD THEME
* Theme URL:    http://www.serpcom.com
* Description:  Divi Child Theme
* Author:       SERPCOM
* Author URI:   http://www.serpcom.com
* Template:     Divi
* Version:      1.0.0
* Tags:       
*/

/** =Theme customization starts here
-------------------------------------------------------------- */

/* Custom */
a {
	transition: opacity .3s linear;
}

a:not(.et_pb_button):not(.mobile_nav.opened):hover, a:not(.et_pb_button):not(.mobile_nav.opened):focus {
	opacity: 0.5;
}

.et_pb_gallery_image a:hover, .et_pb_gallery_image a:focus, .et_pb_portfolio_item a:hover, .et_pb_portfolio_item a:focus {
	opacity: 1 !important;
}

.white_link a, .white_link a[href^="tel:"] {
	color: #fff !important;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 300;
}

hr {
    margin-top: 10px;
    margin-bottom: 20px;
    border: 0;
    border-top: 1px solid #ddd;
}

.hr_cut {
    border-top: 1px solid #ddd;
	width: 30%;
	margin: 0 0 20px;
}

.hr_cut_center {
    border-top: 1px solid #ddd;
	width: 30%;
	margin: 10px auto 20px;
}

.last_p_fix p:last-of-type {
	padding-bottom: 1em !important;
}

.lead, .lead_p p, .lead_p li {
	font-size: 22px;
	line-height: 1.4em;
}

.airy_list li {
  padding-bottom: 10px;
}

.white_link a {
	color: #fff !important;
}

sup {
    font-size: 0.8em;
    top: -0.5em;
    display: inline-block;
}

.et_pb_text ul ul, .et_pb_text ul ul ul {
    padding-bottom: 0 !important;
}

/* Tighter Line-Height Menu */
#top-menu li li {
	line-height: 1.3em;
}

#top-menu li li a {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}

/* Dropdown background color change on hover */
#top-menu li li a:hover {
    background-color: #4d4d4d !important;
	color: #fff !important;
	transition: none;
	opacity: 1;
}

.et-fixed-header #top-menu li.current-menu-ancestor li a:hover {
	color: #fff !important;	
}

/* Hide 'Home' Link on Nav on medium screens, before mobile size */
@media (max-width: 1390px) and (min-width: 980px) {
	.hide_early {
		display: none !important;
	}
}

/* smaller font and changes the point where it changes */
@media (max-width: 1099px) {
	#top-menu li, #top-menu li a {
		font-size: 13px!important;
		padding-right: 15px!important;
	}
	#top-menu>li:last-child, #top-menu>li:last-child a {
		padding-right: 0 !important;
	}
}

/* smaller font and changes the point where it changes */
@media (max-width: 1024px) {
	#top-menu li, #top-menu li a {
		font-size: 12px!important;
		padding-right: 13px!important;
	}
	#top-menu>li:last-child, #top-menu>li:last-child a {
		padding-right: 0 !important;
	}
}

.et_mobile_menu li a, .nav li li a {
	font-weight: normal !important;
}

/* Hide Show */
.show767, .show980 {
	display: none !important;
}

@media (max-width: 980px) {
	.show980 {
		display: inline !important;
	}
}

@media (max-width: 767px) {
	.hide767 {
		display: none !important;
	}
	.show767 {
		display: inline !important;
	}
}

/* Flex */
.flex, .flex_col {
	display: flex;
	align-items: center;	
}

.flex .et_pb_module {
	align-items: center;
	width: 100%;
}

@media (min-width: 981px) {
	.vertical_center_desk {
	   display: flex;
	   align-items: center;
	}
}

/* Fullscreen */
.fullscreen_section {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
}

/* Blog */
.author article, .archive article, .archive .entry {
	border-bottom: solid 1px #ddd;
	margin-bottom: 40px;
	padding-bottom: 30px;
}

.instagram_image {
	text-align: center;
	width: 100%;
	margin-bottom: 10px;
}

.instagram_image img {
	width: 100%;
}

.wp-video {
	margin: 0 auto;
} /* Center Instagrate video */

/* Blog Extras Blog */
/* Truncate Blog Module */
.et_pb_post_extra.el_dbe_grid_extended h2.entry-title {
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 8;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
	padding-bottom: 0!important;
	margin-bottom: 10px;
}

.et_pb_post_extra.el_dbe_grid_extended a.more-link {
    border-bottom: 2px solid #999 !important;
    color: #000;
    font-weight: 400;
}

.et_pb_bg_layout_light .et_pb_post .post-meta a {
	color: #000;
	font-weight: 500;
}

/* Divi Theme Builder Posts Using Divi Builder */
.et_builder_inner_content .et_builder_inner_content .et_pb_section .et_pb_row {
	width: 100%;
	padding: 0;
}

.et_builder_inner_content .et_builder_inner_content .et_pb_section {
	width: 100%;
	padding: 0;
}

/* Sidebar */
.et_pb_widget ul li {
	padding: 8px 0 6px 15px;
	border-bottom: 1px solid #eee;
	margin-bottom: 0 !important;
	font-size: 14px;
	line-height: 1.3em;
}

.et_pb_widget ul li:last-child {
	border-bottom: none;
}

.et_pb_widget ul li, .sidebar_menu li {
	padding-left: 0;
}

.et_pb_widget {
	border-bottom: 1px solid #a0a0a0;
	padding-bottom: 10px;
	margin-bottom: 20px !important;	
}

.et_pb_widget:last-child {
	border-bottom: none;
}

.widget_search {
	padding-bottom: 25px !important;
}

.widgettitle {
	font-size: 16px;
}

.et_monarch .et_social_inline_top {
    margin-bottom: 0;
    margin-top: -15px;
}

/* Hide 'Rule' on single sidebar */
@media (min-width: 981px) {
	#main-content .container:before {
	    background-color: rgba(0,0,0,0);
	}
}


/* Form */
body .gform_wrapper {
    padding-bottom: 0 !important;
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), body .gform_wrapper textarea.textarea {
	padding: 10px 15px !important;
	font-size: 16px !important;
	color: #000 !important;
	background: #fff !important;
	border: 1px solid #ccc !important;
}

body .gform_wrapper .gform_footer input.button, body .gform_wrapper .gform_page_footer input.button {
	font-family: 'Raleway',Helvetica,Arial,Lucida,sans-serif !important;
	color: #fff !important;
	background: #000 !important;
	border-color: #000 !important;
}

body .gform_wrapper .gform_footer input.button:hover, body .gform_wrapper .gform_page_footer input.button:hover {
	background: #d94626 !important;
	border-color: #d94626 !important;
}

.gform_wrapper .gform_footer {
    padding: 5px 0 0 !important;
    margin: 0 !important;
}

body .gform_wrapper .gform_footer {
    width: 100% !important;
}

body .gform_wrapper .validation_message, body .gform_wrapper div.validation_error {
	padding: 30px 30px 25px;
}

.gform_validation_errors>h2, .gform_wrapper .gform_validation_errors>h2, body .gform_wrapper .validation_message, body .gform_wrapper div.validation_error {
	color: #c02b0a !important;
}

.gform_wrapper .gfield_validation_message, .gform_wrapper .validation_message {
	padding: 0 !important;
	border: none !important;
	background: none !important;
}

.gform_wrapper .gform_validation_errors {
    background: none !important;
    box-shadow: none !important;
    margin-top: 0 !important;
    padding: 16px 16px 2px 48px !important;
}

.form_col {
	padding: 3.5%;
	background: #4e4b4c;
}

.form_col .gform_validation_errors>h2, .form_col .gform_wrapper .gform_validation_errors>h2, body .form_col .gform_wrapper .validation_message, body .form_col .gform_wrapper div.validation_error, .form_col .gform_wrapper.gravity-theme .gfield_label {
	color: #fff !important;
}

@media (min-width: 641px) {
	.gform_wrapper ul.gform_fields li.gfield {
	    padding-right: 0 !important;
	}
	.gform_wrapper .top_label li.gfield.gf_left_half {
		padding-right: 8px !important;
	}
	.gform_wrapper .top_label li.gfield.gf_right_half {
		padding-left: 8px !important;		
	}
}

/* Footer */
#footer-info {
	text-align: center;
	float: none;
	line-height: 1.6em;
}

#footer-info, #footer-info a {
	color: #999;
}

/* Ken Burns Slider 
https://www.elegantthemes.com/marketplace/12-full-width-slider-with-ken-burns-effect/ */
.ken-burns-effect-ap-right.et_pb_slider .et_pb_slide  {
	height: auto !important;
	min-height: 100vh !important;
	background-position: center center !important;
} /* reset slider CSS */

.ken-burns-effect-ap-right .et_pb_slide .et_parallax_bg {
	animation: kb-effect-ap-right 8s forwards;
	-ms-animation: kb-effect-ap-right 8s forwards;
	-webkit-animation: kb-effect-ap-right 8s forwards;
	-0-animation: kb-effect-ap-right 8s forwards;
	-moz-animation: kb-effect-ap-right 8s forwards;
}

@keyframes kb-effect-ap-right {
	0%{
	    -ms-transform: scale3d(1.5, 1.5, 1.5) translate3d(0, 0, 0);
	    -webkit-transform: scale3d(1.5, 1.5, 1.5) translate3d(0, 0, 0);
	    -o-transform: scale3d(1.5, 1.5, 1.5) translate3d(0, 0, 0);
	    -moz-transform: scale3d(1.5, 1.5, 1.5) translate3d(0, 0, 0);
	    transform: scale3d(1.5, 1.5, 1.5) translate3d(0, 0, 0);
	    animation-timing-function: ease;
	}
	100%{
	  	-ms-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
	    -webkit-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
	    -o-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
	    -moz-transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
	    transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
	}
}

.kb_slider {
	position: relative;
	touch-action: none;
	touch-action: pan-y; /* Prevent scroll left and right on mobile, which breaks margin */
}

.slider_text_code {
	min-height: 100vh;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	z-index: 10000;
	margin-top: -100vh;
	text-align: center;
	position: relative;
	overflow: hidden !important;
}

.slider_text_code .et_pb_code_inner {
	width: 100%;
}

.slider_text_code h2, .video_section h1 {
	margin: 33vh auto 0;
	max-width: 100%;
	font-size: 3.6vw;
	font-weight: 300;
	line-height: 1.3em;
	text-transform: none;
	color: #fff;
	text-shadow: 2px 2px 12px rgb(0 0 0 / 65%), -2px -2px 12px rgb(0 0 0 / 65%);
}

.slider_text_code h1 {
	color: #fff;
}

@media (min-width: 1500px) {
	.slider_text_code h2 {
		font-size: 3.8vw;
	}
}

@media (min-width: 1800px) {
	.slider_text_code h2 {
		font-size: 3.9vw;
	}
}

@media (min-width: 2100px) {
	.slider_text_code h2 {
	}
}

@media (min-width: 2400px) {
	.slider_text_code h2 {
		font-size: 4vw;
	}
}

@media (min-width: 2700px) {
	.slider_text_code h2 {
	}
}

@media (min-width: 3000px) {
	.slider_text_code h2 {
		font-size: 4.1vw;
	}
}

@media (min-width: 3300px) {
	.slider_text_code h2 {

	}
}

@media (min-width: 1199px) and (max-width: 1499px) {
	.slider_text_code h2 {
		font-size: 4.6vw;
	}
}

@media (min-width: 980px) and (max-width: 1198px) {
	.slider_text_code h2 {
		font-size: 4.6vw;
	}
}

@media (min-width: 768px) and (max-width: 979px) {
	.slider_text_code h2 {
		margin: 30vh auto 0;
		font-size: 5.1vw;
	}
}

@media (max-width: 767px) {
	.slider_text_code h2 {
		margin: 26vh auto 0;
		font-size: 6.2vw;
	}
}

@media (max-width: 550px) {
	.slider_text_code h2 {
		margin: 26vh auto 0;
		line-height: 1.5em;
		padding-left: 1.5%;
	}
}


.side_col, .side_col2  {
	padding: 5.5% 5% 5%;
	background: #efefef;
	border: 6px solid #fff;
    filter: drop-shadow(0px 0px 10px rgba(0,0,0,.5));
}

@media (max-width: 767px) {
	.side_col, .side_col2  {
		padding: 8.8% 8% 8%;
		background: #efefef;
		border: 6px solid #fff;
	    filter: drop-shadow(0px 0px 10px rgba(0,0,0,.5));
	}
}

/* Gallery */
.mfp-title, .et_pb_gallery_title {
	display: none;
}

.et_pb_gallery_item {
	animation: none !important;
}

.et_pb_gallery_pagination {
	height: 20px;
}

.et_pb_gallery .et_pb_gallery_pagination ul li {
	padding-bottom: 0;
}

.et_pb_gallery .et_pb_gallery_pagination {
	border-top: none;
    padding-bottom: 40px;
    padding-right: 10px;
}

.et_pb_gallery_grid .et_pb_gallery_image {
    padding: 1vw;
    margin: 0.5vw;
    background: #fff;
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	transition-property: transform;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,.5));
}

.et_pb_gallery_grid .et_pb_gallery_image:hover {
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
	filter: saturate(2.2);
}

.et_pb_gallery .et_pb_gallery_pagination ul li a {
    color: #000;
}

.et_pb_gallery .et_pb_gallery_pagination ul li a.active {
	color: #294697;
}

@media (max-width: 767px) {
	.et_pb_gallery_grid .et_pb_gallery_image {
	    padding: 2vw;
	}
}


/* Portfolio */
.et_pb_portfolio_grid_items .et_pb_module_header {
    padding-left: 15px;
    padding-right: 15px;
    margin: 0 0 10px !important;
}

.et_pb_portfolio_grid_items .pagination {
	padding: 15px 10px;
}

.et_portfolio_image {
    padding: 1vw;
    margin: 0.5vw;
    background: #fff;
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	transition-property: transform;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,.5));
}

.et_portfolio_image:hover {
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
	filter: saturate(2.2);
}

@media (max-width: 980px) {
	.et_pb_portfolio_grid_items .project {
	    text-align: center;
	    margin-bottom: 15px !important;
	}
	.et_pb_portfolio_grid_items .et_pb_module_header {
	    margin: 10px 0 10px !important;
	}
}

@media (max-width: 767px) {
	.et_portfolio_image {
	    padding: 2vw;
	}
}

.fw_header_full h1 {
	font-size: 4vw;
    font-weight: 400;
    text-shadow: 2px 2px 6px rgb(0 0 0 / 60%), -2px -2px 6px rgb(0 0 0 / 60%);
}

@media (max-width: 980px) {
	.fw_header_full h1 {
		font-size: 5vw;
	}
}

@media (max-width: 767px) {
	.fw_header_full h1 {
		font-size: 6vw;
	}
}

.headline_rule h1::before, .headline_rule h2::before, .headline_rule h3::before, .headline_rule h4::before, .et_pb_post_title h1::before {
    content: '';
    display: block;
    position: relative;
    bottom: 8px;
    width: 185px;
    height: 3px;
    background-color: #4d4d4d;
}

.headline_rule_darkbg h1::before, .headline_rule_darkbg h2::before, .headline_rule_darkbg h3::before, .headline_rule_darkbg h4::before {
    content: '';
    display: block;
    position: relative;
    bottom: 8px;
    width: 185px;
    height: 3px;
    background-color: #bfc9c9;
}

.et_pb_text_align_center.headline_rule h1::before, .et_pb_text_align_center.headline_rule h2::before, .et_pb_text_align_center.headline_rule h3::before, .et_pb_text_align_center.headline_rule h4::before, .et_pb_text_align_center.headline_rule_darkbg h1::before, .et_pb_text_align_center.headline_rule_darkbg h2::before, .et_pb_text_align_center.headline_rule_darkbg h3::before, .et_pb_text_align_center.headline_rule_darkbg h4::before {
	margin-left: auto;
	margin-right: auto;
}

.et_pb_text, .et_pb_text p, .et_pb_text li, .et_pb_blurb_description, .et_pb_blurb_description p, .et_pb_blurb_description li, .et_pb_post p, .single_theme_post_content p, .single_theme_post_content li, .et_pb_bg_layout_light .et_pb_widget li a {
	font-weight: 300;
}

.et_pb_text p a, .et_pb_text li a {
	font-weight: 400;
	text-decoration: underline;
}


.no_underline_a a {
	text-decoration: none !important;
}

.alpine_blurb_row .et_pb_column {
	background: #eee;
}

.alpine_blurb_row .et_pb_column.et_pb_column_empty {
	background: none;
}

.alpine_blurb .et_pb_module_header {
	width: 100%;
	background: #bfc9c9;
	padding: 10px 15px 8px 20px;
}

.alpine_blurb .et_pb_blurb_description {
	padding: 15px 25px;
	position: relative;
}

.right_read_more {
	padding-top: 8px;
	border-top: 1px solid #bfc9c9;
	font-weight: 400 !important;
}

.right_read_more a {
	color: #000 !important;
}

.side_blurb .et_pb_blurb_content {
	max-width: 100% !important;
}

.side_blurb .et-pb-icon {
	color: #333 !important;
}







