/*
Theme Name: Pacific Coast Custom Interiors
Version: 1.0
Theme URI: http://www.cyberoptik.net
Description: Customizable responsive Wordpress theme created by CyberOptik
Author: CyberOptik
Author URI: http://www.cyberoptik.net
Template: optik-theme
*/



/*
 * CUSTOMIZABLE CSS
 */



/* -----------------------------------------------------------------------------
 * TABLE OF CONTENTS:
 * -----------------------------------------------------------------------------
 *
 * 1 CSS IMPORTS
 *   1.1 FRAMEWORK
 *   1.2 MODULES
 *   1.3 STYLES
 *
 * 2 STRUCTURAL ELEMENTS
 *   2.1 UNIVERSAL STYLES
 *   2.2 BACK TO TOP BUTTON
 *   2.3 ELEMENTOR
 *
 * 3 CONTENT STYLES
 *   3.1 TEXT & LINKS
 *   3.2 HEADINGS
 *   3.3 BORDERS & DIVIDERS
 *   3.4 BUTTONS
 *   3.5 ICONS
 *   3.6 LIST STYLES
 *   3.7 FORM STYLES
 *
 * 4 HEADER STYLES
 *   4.1 SCROLL BAR
 *   4.2 TOP BAR
 *   4.3 HEADER 
 *   4.4 NAV BAR
 *   4.5 NAV MENUS
 *   4.6 DROPDOWN MENUS
 *   4.7 MOBILE NAV
 *
 * 5 BODY STYLES
 *   5.1 BANNER
 *   5.2 BREADCRUMBS
 *   5.3 TITLE BAR
 *   5.4 PAGE NAV BAR
 *   5.5 MAIN
 *   5.6 ARCHIVE
 *   5.7 SINGLE
 *
 * 6 FOOTER STYLES
 *   6.1 CTA BAR
 *   6.2 FOOTER
 *   6.3 BOTTOM BAR
 *
 * 7 CUSTOM THEME STYLES
 *
 * ---------------------------------------------------------------------------*/





/******************************************************************************
 * * *  1 CSS IMPORTS  * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 ******************************************************************************/

@import url("../optik-theme/style.css");


/***  Raleway  ***/ 
/* Regular */
@font-face {
  font-family: 'Raleway';
  font-weight: 400;
  src: url('fonts/raleway/raleway-regular.woff2');
}

/* Italic */
@font-face {
  font-family: 'Raleway';
  font-weight: normal;
  font-style: italic;
  src: url('fonts/raleway/raleway-italic.woff2');
}

/* Smmi-Bold */
@font-face {
  font-family: 'Raleway';
  font-weight: 600;
  src: url('fonts/raleway/raleway-semibold.woff2');
}

/* Bold */
@font-face {
  font-family: 'Raleway';
  font-weight: 700;
  src: url('fonts/raleway/raleway-bold.woff2');
}

 /***  Teko  ***/
 /* All */
 @font-face {
  font-family: 'Teko';
  font-optical-sizing: auto;
  src: url('fonts/teko/Teko-VariableFont_wght.ttf');
 }


/******************************************************************************
 * * *  2 STRUCTURAL ELEMENTS  * * * * * * * * * * * * * * * * * * * * * * * * 
 ******************************************************************************/


/***  2.1 UNIVERSAL STYLES  ***/

:root {
	--primary: #d21b00;
	--primary-dk: #b31b03;
	--primary-lt: #f72808;
	--secondary: #ae5201;
	--secondary-dk: #8c4201;
	--secondary-lt: #f07000;
	--dark-1: #282828;
	--dark-2: #240601;
	--dark-3: #777777;
	--light-1: #f1f1f1;
	--light-2: #e6e4e4;
	--light-3: #dadada;
	--radius-1: 50%;
	--radius-2: 5px;
	--radius-3: 10px;
  --radius-4: 25px;
  --shadow-1: 0px 0px 10px 0px rgba(0,0,0,.5);
  --shadow-2: 1px 1px 10px #00000036;
  --shadow-3: 1px 1px 20px #df070736;
  --shadow-4: 1px 10px 10px #00000036;
	--gap-xs: 5px;
	--gap-sm: 10px;
	--gap-md: 15px;
	--gap-lg: 20px;
	--gap-xl: 30px;
	--spacer-xs: 60px;
	--spacer-sm: 80px;
	--spacer-md: 100px;
	--spacer-lg: 120px;
	--spacer-xl: 140px;
  --font-1: 'Raleway', sans-serif;
  --font-2: 'Teko', sans-serif;
}

html {font-size: 16px;}

body {
  line-height: 1.6em;
  font-family: var(--font-1);
  color: var(--dark-2);
  background-color: white;
  text-wrap: pretty;
}

p:empty:before {display: none !important;}

.section-container {max-width: 1300px;}



/***  2.2 BACK TO TOP BUTTON  ***/

.btt-button .fa {
  border-radius: var(--radius-1);
  border: 1px solid transparent;
  background-color: var(--primary);
	font-weight: 300;
  color: white;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}

.btt-button:hover .fa {
  background-color: white;
  color: var(--primary);
  border-color: var(--primary);
}



/***  2.3 ELEMENTOR  ***/


/* ELEMENTOR SPACING */

/* Column Spacing */
.elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {padding: var(--gap-xs);}
.elementor-column-gap-default > .elementor-column > .elementor-element-populated {padding: var(--gap-sm);}
.elementor-column-gap-extended > .elementor-column > .elementor-element-populated {padding: var(--gap-md);}
.elementor-column-gap-wide > .elementor-column > .elementor-element-populated {padding: var(--gap-lg);}
.elementor-column-gap-wider > .elementor-column > .elementor-element-populated {padding: var(--gap-xl);}

/* Top Boxed Sections - Horizontal Spacing */
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-no, 
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-custom {
	padding-left: 50px;
	padding-right: 50px;
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-narrow {
	padding-left: calc(50px - var(--gap-xs));
	padding-right: calc(50px - var(--gap-xs));
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-default {
	padding-left: calc(50px - var(--gap-sm));
	padding-right: calc(50px - var(--gap-sm));
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-extended {
	padding-left: calc(50px - var(--gap-md));
	padding-right: calc(50px - var(--gap-md));
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-wide {
	padding-left: calc(50px - var(--gap-lg));
	padding-right: calc(50px - var(--gap-lg));
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-wider {
	padding-left: calc(50px - var(--gap-xl));
	padding-right: calc(50px - var(--gap-xl));
}

/* Top Boxed Sections - Vertical Spacing */

.elementor-section-boxed > .elementor-column {
  display: flex;
  margin-right: 0;
}
.elementor-section-boxed > .elementor-column-gap-narrow {
	margin-top: calc(var(--gap-xs) * -1);
	margin-bottom: calc(var(--gap-xs) * -1);
}
.elementor-section-boxed > .elementor-column-gap-default {
	margin-top: calc(var(--gap-sm) * -1);
	margin-bottom: calc(var(--gap-sm) * -1);
}
.elementor-section-boxed > .elementor-column-gap-extended {
	margin-top: calc(var(--gap-md) * -1);
	margin-bottom: calc(var(--gap-md) * -1);
}
.elementor-section-boxed > .elementor-column-gap-wide {
	margin-top: calc(var(--gap-lg) * -1);
	margin-bottom: calc(var(--gap-lg) * -1);
}
.elementor-section-boxed > .elementor-column-gap-wider {
	margin-top: calc(var(--gap-xl) * -1);
	margin-bottom: calc(var(--gap-xl) * -1);
}

/* Inner Boxed Sections - Horiztonal Spacing */

.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-narrow {
	width: calc(100% + (var(--gap-xs) * 2));
	margin-left: calc(var(--gap-xs) * -1);
	margin-right: calc(var(--gap-xs) * -1);
}
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-default {
	width: calc(100% + (var(--gap-sm) * 2));
	margin-left: calc(var(--gap-sm) * -1);
	margin-right: calc(var(--gap-sm) * -1);
}
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-extended {
	width: calc(100% + (var(--gap-md) * 2));
	margin-left: calc(var(--gap-md) * -1);
	margin-right: calc(var(--gap-md) * -1);
}
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-wide {
	width: calc(100% + (var(--gap-lg) * 2));
	margin-left: calc(var(--gap-lg) * -1);
	margin-right: calc(var(--gap-lg) * -1);
}
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-wider {
	width: calc(100% + (var(--gap-xl) * 2));
	margin-left: calc(var(--gap-xl) * -1);
	margin-right: calc(var(--gap-xl) * -1);
}

@media screen and (max-width: 900px) {
	
/* Top Boxed Sections - Horizontal Spacing */
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-no {
	padding-left: 40px;
	padding-right: 40px;
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-narrow {
	padding-left: calc(40px - var(--gap-xs));
	padding-right: calc(40px - var(--gap-xs));
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-default {
	padding-left: calc(40px - var(--gap-sm));
	padding-right: calc(40px - var(--gap-sm));
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-extended {
	padding-left: calc(40px - var(--gap-md));
	padding-right: calc(40px - var(--gap-md));
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-wide {
	padding-left: calc(40px - var(--gap-lg));
	padding-right: calc(40px - var(--gap-lg));
}
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-wider {
	padding-left: calc(40px - var(--gap-xl));
	padding-right: calc(40px - var(--gap-xl));
}
	
}

@media screen and (max-width: 600px) {
	
/* All Boxed Sections - Vertical & Hortizontal Spacing */
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-narrow, 
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-default, 
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-extended, 
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-wide, 
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-wider, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-narrow, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-default, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-extended, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-wide, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-wider {
	padding-left: 25px;
	padding-right: 25px;
	margin-top: -25px;
	margin-bottom: -25px;
}
	
/* All Boxed Sections - Column Padding */
.elementor-section-boxed > .elementor-column-gap-narrow > .elementor-column > .elementor-element-populated, 
.elementor-section-boxed > .elementor-column-gap-default > .elementor-column > .elementor-element-populated, 
.elementor-section-boxed > .elementor-column-gap-extended > .elementor-column > .elementor-element-populated, 
.elementor-section-boxed > .elementor-column-gap-wide > .elementor-column > .elementor-element-populated, 
.elementor-section-boxed > .elementor-column-gap-wider > .elementor-column > .elementor-element-populated {padding: 25px 0;}

}

@media screen and (max-width: 420px) {
	
/* All Boxed Sections - Vertical & Hortizontal Spacing */
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-narrow, 
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-default, 
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-extended, 
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-wide, 
.elementor-top-section.elementor-section-boxed > .elementor-column-gap-wider, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-narrow, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-default, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-extended, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-wide, 
.elementor-inner-section.elementor-section-boxed > .elementor-column-gap-wider {
	padding-left: 15px;
	padding-right: 15px;
	margin-top: -15px;
	margin-bottom: -15px;
}

/* All Boxed Sections - Column Padding */
.elementor-section-boxed > .elementor-column-gap-narrow > .elementor-column > .elementor-element-populated, 
.elementor-section-boxed > .elementor-column-gap-default > .elementor-column > .elementor-element-populated, 
.elementor-section-boxed > .elementor-column-gap-extended > .elementor-column > .elementor-element-populated, 
.elementor-section-boxed > .elementor-column-gap-wide > .elementor-column > .elementor-element-populated, 
.elementor-section-boxed > .elementor-column-gap-wider > .elementor-column > .elementor-element-populated {padding: 15px 0;}

}


/* ELEMENTOR WIDGETS */
.elementor-widget-container .elementor-swiper-button{
  padding: 5px;
  background-color: var(--primary-lt);
  border-radius: var(--radius-2);
}

.elementor-widget-container .elementor-swiper-button:hover{background-color: var(--primary-dk);}

/*elementor-widget-gallery*/
.elementor-gallery__titles-container{gap: 10px;}

.elementor-widget-gallery .elementor-gallery__titles-container .elementor-gallery-title{
  border: 1px solid var(--primary-lt);
  color: white;
}

.elementor-widget-gallery .elementor-gallery__titles-container .elementor-gallery-title:hover{
  background-color: white;
  text-decoration: none;
  color: var(--primary);
}

.elementor-widget-gallery .elementor-gallery__titles-container .elementor-item-active{
  background-color: var(--primary)!important;
  color: white!important;
}

/*lightbox file name*/
.elementor-slideshow__description,
.elementor-slideshow__title{display: none!important;}

/* Elementor Headings */

.elementor-widget-heading .elementor-heading-title {line-height: 1.3em !important;}

/* Elementor Testimonials */

.elementor-testimonial__image {display: none !important;}

.quote-icon-widget i{color: white!important;}
/* Elementor Buttons */

.elementor-button {
  line-height: normal;
  font-size: inherit;
  -webkit-transition: all 350ms ease-in-out;
  -moz-transition: all 350ms ease-in-out;
  -o-transition: all 350ms ease-in-out;
  -ms-transition: all 350ms ease-in-out;
  transition: all 350ms ease-in-out;
}
.elementor-button:hover {text-decoration: none;}

/* Elementor Icons */

[class*="eicon-"], 
[class*="e-icon-"] {font-style: normal !important;}

.elementor-widget .elementor-icon-list-item:not(:last-child) {margin-bottom: 0.5em;}

.elementor .fa,
.elementor .fas,
.elementor .far,
.elementor .fal,
.elementor .fab,
.elementor .fa:before,
.elementor .fas:before,
.elementor .far:before,
.elementor .fal:before,
.elementor .fab:before {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

/* Elementor Gallery */

.elementor-lightbox [class*="eicon-"] {color: white !important;}

.elementor-image-gallery .gallery-item img {border: 0 !important;}

.elementor-slideshow__header {
  -webkit-box-sizing: border-box !important;
  -moz-box-sizing: border-box !important;
  box-sizing: border-box !important;
}





/******************************************************************************
 * * *  3 CONTENT STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * *
 ******************************************************************************/



/***  3.1 TEXT & LINKS  ***/

a {color: var(--primary);}

a:hover {color: var(--secondary);}

.accent-text{
  font-size: 1.25em;
  margin-bottom: 10px !important;
  color: var(--primary);
  letter-spacing: .5px;
}

/***  3.2 HEADINGS  ***/

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  font-family: var(--font-2);
  color: var(--dark-2);
  letter-spacing: 2px;
  text-transform: uppercase;
  font-style: italic;
}

h1 {font-size: 3.5em;}


h2.elementor-headline,
h2 {font-size: 2.75em;}
h3 {font-size: 2.2em;}
h4 {font-size: 1.75em;}
h5 {font-size: 1.5em;}
h6 {font-size: 1.25em;}

@media screen and (max-width:900px) {
  h1 {font-size: 2.7em;}
	
	h2.elementor-headline,
  h2 {font-size: 2.35em;}
  h3 {font-size: 2em;}
}

/***  3.3 BORDERS & DIVIDERS  ***/

hr, .divider {
    display: block;
	width: 100%;
    height: 1px;
    border: 0;
    border-top: 1px solid #e2e2e2;
    margin: 2.5em auto;
    padding: 0;
	clear: both;
}



/***  3.4 BUTTONS  ***/

.button, 
.elementor-button,
.elementor-button:visited{
  padding: 1em 2em;
  border: 2px solid var(--primary);
	border-radius: var(--radius-3);
  background-color: transparent;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
  color: var(--primary);
}

.button:hover, 
.elementor-button:hover {
  background-color: var(--primary);
  color: white;
	background-position: -100% 100%;
	border-color:var(--primary);
}

.primary-bg-btn .elementor-button{
  background-color: var(--primary);
  color: white;
}

.primary-bg-btn .elementor-button:hover{
  background-color: white;
  border-color: white;
  color: var(--primary);
}

/* Empty Button */

.button-empty {
  background: none;
  color: var(--primary);
}

.button-empty:hover {
  border-color: var(--secondary);
  background: none;
  color: var(--secondary);
}



/***  3.5 ICONS  ***/

/*  Icon Colors  */

.fa, .fas, .far, .fal, .fab {color: var(--primary);}

a .fa, a .fas, a .far, a .fal, a .fab {
  color: var(--primary);
  webkit-transition: all 350ms ease-in-out;
  -moz-transition: all 350ms ease-in-out;
  -o-transition: all 350ms ease-in-out;
  -ms-transition: all 350ms ease-in-out;
  transition: all 350ms ease-in-out;
}

a:hover .fa, a:hover .fas, a:hover .far, a:hover .fal, a:hover .fab {color: var(--secondary);}

/*  Icon Backgrounds  */

.fa-bg {
  background-color: var(--primary);
  color: white;
}

a .fa-bg {
  background-color: var(--primary);
  color: white;
}

a:hover .fa-bg {
  background-color: var(--secondary);
  color: white;
}

/*  Icon Borders  */
.fa-br {border-color: var(--primary);}
a .fa-br {border-color: var(--primary);}
a:hover .fa-br {border-color: var(--secondary);}

/* Elementor Icons */

.elementor-view-stacked .elementor-icon {background-color: var(--primary);}
.elementor-view-stacked .elementor-icon i {color: white;}
.elementor-view-stacked .elementor-icon:hover {background-color: var(--secondary);}



/***  3.6 LISTS  ***/

/* Icon Lists */

.arrow-list, 
.check-list, 
.check-circle-list, 
.icon-list, 
.contact-list {list-style: none;}

.arrow-list li, 
.check-list li, 
.check-circle-list li, 
.icon-list li, 
.contact-list li {position: relative;}

.icon-list li .fa, 
.icon-list li .fal, 
.icon-list li .fas, 
.icon-list li .fab, 
.icon-list li .fad, 
.contact-list li .fa, 
.contact-list li .fal, 
.contact-list li .fas, 
.contact-list li .fab, 
.contact-list li .fad {
  position: absolute;
	top: 0.25em;
  left: -1.75em;
	width: 1em;
	height: 1em;
	line-height: 1;
}

.arrow-list li:not(:last-child), 
.check-list li:not(:last-child), 
.check-circle-list li:not(:last-child), 
.icon-list li:not(:last-child), 
.contact-list li:not(:last-child) {margin-bottom: 0.5em;}

.arrow-list li:before, 
.check-list li:before, 
.check-circle-list li:before, 
.icon-list li:before, 
.contact-list li:before {
  position: absolute;
  top: 0.4em;
  left: -1.75em;
  width: 1em;
  height: 1em;
  display: block;
  font-family: 'Font Awesome 5 Pro';
  font-weight: 300;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-size: 1em;
  text-align: center;
	color: var(--primary);
}

.arrow-list li:before, 
.icon-list li.arrow:before, 
.contact-list li.arrow:before {content: "\f105";}

.check-list li:before, 
.icon-list li.check:before, 
.contact-list li.check:before {content: "\f00c";}

.check-circle-list li:before, 
.icon-list li.check-circle:before, 
.contact-list li.check-circle:before {content: "\f058";}

.icon-list li.map-marker:before, 
.contact-list li.map-marker:before {content: "\f3c5";}

.icon-list li.phone:before, 
.contact-list li.phone:before {content: "\f095";}

.icon-list li.fax:before, 
.contact-list li.fax:before {content: "\f1ac";}

.icon-list li.envelope:before, 
.contact-list li.envelope:before {content: "\f0e0";}

.icon-list li.clock:before, 
.contact-list li.clock:before {content: "\f4fd";}

.icon-list li.share:before, 
.contact-list li.share:before {content: "\f14d";}

/* Double Size Icon List */

.icon-list-2x li, 
.contact-list-2x li {margin-left: 3em;}

.icon-list-2x li:not(:last-child), 
.contact-list-2x li:not(:last-child) {margin-bottom: 1em;}

.icon-list-2x li:before, 
.contact-list-2x li:before {
  font-size: 1.5em;
  top: 0;
  right: calc(100% + 1em);
}

.arrow-list li a, 
.icon-list li a, 
.contact-list li a {display: block;} 

/* Column Lists */

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

.two-col-list, 
.three-col-list, 
.four-col-list, 
.five-col-list {
  width: 100%;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
}

.two-col-list {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
}

.three-col-list, 
.four-col-list, 
.five-col-list {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
}

.two-col-list li, 
.three-col-list li, 
.four-col-list li, 
.five-col-list li {
  display: inline-block;
  width: calc(100% - 1.75em);
}

}

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

.four-col-list, 
.five-col-list {
  -webkit-column-count: 4; /* Chrome, Safari, Opera */
  -moz-column-count: 4; /* Firefox */
  column-count: 4;
}

}

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

.five-col-list {
  -webkit-column-count: 5; /* Chrome, Safari, Opera */
  -moz-column-count: 5; /* Firefox */
  column-count: 5;
}

}



/***  3.7 FORM STYLES  ***/

/* Inputs */

input[type="text"], input[type="email"], input[type="number"], 
input[type="password"], input[type="search"], input[type="tel"], 
input[type="url"], input[type="date"], input[type="datetime-local"], 
input[type="month"], input[type="time"], input[type="week"], 
textarea, select {border-radius: var(--radius-2);}

input[type="text"]:focus, input[type="email"]:focus, input[type="number"]:focus, 
input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, 
input[type="url"]:focus, input[type="date"]:focus, input[type="datetime-local"]:focus, 
input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, 
textarea:focus, select:focus {border-color: black;}

/* Buttons */

input[type="submit"], input[type="reset"], input[type="button"] {
  background-color: var(--primary);
	height: 50px;
	border-radius: var(--radius-3);
  padding: 0.75em 2em;
  color: white;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}

input[type="Submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover {
  background-color: var(--secondary);
  color: white;
}

input[type="Submit"]:active, input[type="reset"]:active, input[type="button"]:active {
  background-color:  var(--primary);
  color: white;
}

/* Search Form */

.search-form {position: relative;}

input[type="text"].search-field {background-color: var(--light-3);}

input[type="text"].search-field:focus {background-color: white;}

input[type="Submit"].search-submit {
  display: block;
  position: absolute;
  z-index: 50;
  top: 50%;
  right: 0;
  float: none;
  width: 42px;
  height: 42px;
  border: 0;
  margin-top: -21px;
  background: rgba(0,0,0,0) url(images/icon-search.svg) center center no-repeat !important;
  background-size: 1.5em !important;
  opacity: 0.6;
  cursor: pointer;
  cursor: hand;
}

input[type="Submit"].search-submit:hover {
  outline: none;
  opacity: 1;
}

input[type="Submit"].search-submit:active {
  background-color: rgba(0,0,0,0.025);
  outline: none;
}

/* Ninja Forms */

.nf-form-cont .list-checkbox-wrap label{
  font-weight: 400;
}

.nf-before-form-content {display: none !important;}

.nf-field-element input[type="button"], 
.nf-field-element input[type="submit"] {
  font-size: 1em;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1px;
}


.nf-error-msg, .ninja-forms-req-symbol{
  font-style: italic;
  font-size: .85em;
}

@media screen and (min-width:900px) {
.nf-form-cont .check-two-col-list ul{
  columns: 2;
} 
}





/******************************************************************************
 * * *  4 HEADER STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 ******************************************************************************/



/***  4.1 SCROLL BAR  ***/

.scroll-bar {
  background-color: white;
  box-shadow: var(--shadow-1);
}

.scroll-bar .nav-menu > li > a{
  padding-top: .5em;
  padding-bottom: .5em;
}

.scroll-bar .scroll-logo-wrapper {width: 23%;}

.scroll-bar .scroll-bar-nav {width: 77%;}

.scroll-bar .scroll-logo-wrapper .scroll-logo img {margin-bottom: -20px;}

/***  4.2 TOP BAR  ***/

.top-bar {
  margin-bottom: -12px;
  padding-top: 12px;
  padding-bottom: 0;
  background-color: white;
}
@media screen and (max-width: 768px) {
	.top-bar {display:none;}
}

.top-bar .col-custom {
  padding-top: 2px;
  padding-bottom: 2px;
}

.top-bar .textwidget {text-align: right;}

.top-bar .button{
    margin-right: 8px;
    line-height: 1;
    padding: .7em 1em .5em;
	transition: all 300ms ease-in-out;
	background-image: linear-gradient(90deg, transparent 50%, var(--primary) 50%);
  	background-size: 200%;
}

.top-bar .button:hover{
	  background-color: var(--primary);
  color: white;
	    background-position: -100% 100%;
}

.top-bar .button i{
	font-size:.75em;
	color:inherit;
	transition:none;
}

/***  4.3 HEADER  ***/

.header .col-custom {
  padding-top: 0;
  padding-bottom: 0;
}

@media screen and (min-width: 1201px) {
  .header .col-custom { width: 77%; }
}

.header .logo-wrapper {
  padding-top: 10px;
	padding-bottom: 10px;
}

@media screen and (min-width: 1201px) {
  .header .logo-wrapper {width: 23%;}
}

.logo img {
  max-height: 110px;
  margin: -20px 0;
  position: relative;
  z-index: 1;
}  

@media screen and (max-width: 1200px) {
  .logo img {
    margin-top: 0;
    margin-bottom: -40px;
  }
}

@media screen and (max-width: 600px) {
  .logo img {max-height: 80px;}
}

/* Menu Button */

.header .menu-button .fal, 
.header .menu-button:hover .fal {color: var(--dark-1);}

.header .menu-button.active .fal {
  background-color: var(--primary);
  color: white;
}



/***  4.4 NAV BAR  ***/



/***  4.5 NAV MENUS  ***/

.nav-menu > li > a {
  padding: 1em 0.5em;
  color: black;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: .95em;
}

.single-service .nav-menu > li.services-link > a, 
.single-post .nav-menu > li.posts-link > a, 
.category .nav-menu > li.posts-link > a, 
.nav-menu > li.current-menu-ancestor > a, 
.nav-menu .current-menu-item > a, 
.nav-menu > li:hover > a {color: var(--primary);}

.nav-button a{
  padding-top: 0;
  padding-bottom: 0;
}

.nav-button span{
  border: 2px solid var(--primary);
  color: var(--primary);
  letter-spacing: 1px;
  padding: .8em 1.2em;
  border-radius: var(--radius-3);
  line-height: 1;
  transition: all 300ms ease-in-out;
	background-image: linear-gradient(90deg, transparent 50%, var(--primary) 50%);
  background-size: 200%;
}

.nav-button a i{
  font-size: .8em;
  margin-right: 2px;
  margin-top: -1px;
}

.nav-button a:hover span{
  background-color: var(--primary);
  color: white;
	    background-position: -100% 100%;
}

.nav-button a:hover i{color: white;}

@media screen and (min-width:1025px) {
  .nav-button span{display: block;}
}

.nav-menu .home-link {display: none;}


/***  4.6 DROPDOWN MENUS  ***/

.nav-menu li ul {}

.nav-menu li ul li a {
  text-transform: uppercase;
  text-align: left;
  letter-spacing: .5px;
  font-size: .9em;
  color: var(--dark-1);
}

.nav-menu li ul li a:hover{
  background-color: var(--primary);
  color: white;
}

/*submenu icon*/
 .nav-menu > .menu-item-has-children>a:after {
   content: '\f078';
   font-family: "Font Awesome 5 Pro";
   margin-left: 7px;
   position: relative;
   font-weight: 400;
   font-size: .7em;
   top: -2px;
 }

/***  4.7 MOBILE NAV  ***/
.mobile-menu a{color: var(--dark-1);}

.mobile-menu .current-menu-item a{color: var(--primary);}

.mobile-menu > li > a {}

/*mobile submenu*/

.mobile-menu a{text-transform: uppercase;}

.mobile-menu .sub-menu{padding-left: 10px;}

.mobile-menu ul li a{font-size: .85em;}

.mobile-menu .nav-button{margin-top: 10px;}





/******************************************************************************
 * * *  5 BODY STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 ******************************************************************************/



/***  5.1 BANNER  ***/

.banner {
  background-color: var(--dark-2);
  color: white;
}

.banner:after{
    content: '';
    position: absolute;
    height: 100%;
    width: 100%;
	background: rgb(0,0,0);
	background: linear-gradient(60deg, var(--primary) 60%,  rgba(0,0,0,0)60%);
    top: 0;
    visibility: visible;
	opacity: .5;
}

.banner-inner {
  min-height: 350px;
  padding-top: 80px;
	padding-bottom: 80px;
	z-index:1;
}

.banner-content{
	max-width:600px;
	margin-left:0;
}

.banner-tall .banner-inner {min-height: 550px;}

.banner a {color: var(--primary);}

.banner a:hover {color: white;}

/***  5.2 BREADCRUMBS  ***/

.breadcrumbs {
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: var(--light-2);
}



/***  5.3 TITLE BAR  ***/

.title-bar {
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: var(--light-1);
}



/***  5.4 PAGE NAV BAR  ***/

.page-nav-bar .page-menu {
  padding: 0;
  margin: 0;
  list-style: none;
  justify-content: center;
}

.page-nav-bar .page-menu {display: flex;}

.page-nav-bar .page-menu li {
  margin: 0;
  font-size: 0.9em;
  line-height: 1.4;
  text-align: center;
}

.page-nav-bar .page-menu li > a {
    padding: 24px 18px;
    display: flex;
    align-items: center;
    color: var(--dark-1);
    -webkit-transition: all 350ms ease-in-out;
    -moz-transition: all 350ms ease-in-out;
    -o-transition: all 350ms ease-in-out;
    -ms-transition: all 350ms ease-in-out;
    transition: all 350ms ease-in-out;
}

.page-nav-bar .page-menu li.current-menu-item > a, 
.page-nav-bar .page-menu li:hover > a {
    background: var(--primary);
    text-decoration: none;
    color: white;
}



/***  5.5 MAIN  ***/

.main, 
.section-spacer {
  padding-top: var(--spacer-md);
  padding-bottom: var(--spacer-md);
}

.section-spacer-top {padding-top: var(--spacer-md);}
.section-spacer-btm {padding-bottom: var(--spacer-md);}

.section-spacer-sm {
  padding-top: var(--spacer-sm);
  padding-bottom: var(--spacer-sm);
}

.section-spacer-top-sm {padding-top: var(--spacer-sm);}
.section-spacer-btm-sm {padding-bottom: var(--spacer-sm);}

.section-spacer-lg {
  padding-top: var(--spacer-lg);
  padding-bottom: var(--spacer-lg);
}

.section-spacer-top-lg {padding-top: var(--spacer-lg);}
.section-spacer-btm-lg {padding-bottom: var(--spacer-lg);}

@media screen and (min-width: 421px) {
.content .alignleft {margin: 0 20px 1em 0;}
.content .alignright {margin: 0 0 1em 20px;}
}



/***  5.6 ARCHIVE  ***/

/* Entry Cols */

.entry-cols .entry-link {
  border-radius: var(--radius-3);
  background-color: var(--primary-dk);
  box-shadow: var(--shadow-2);
  overflow: hidden;
  color: white;
}

.entry-cols .entry-link:hover {background-color: var(--primary-dk);}

.entry-cols .entry-link:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-3);
}

.entry-cols .entry-icon-wrap {padding: 30px 30px 0;}

.entry-cols .entry-icon-wrap svg {
  width: 60px;
	fill: inherit;
}

.entry-cols .entry-link .entry-title{
  font-size: 1.5em;
  color: white;
  letter-spacing: 1px;
  font-weight: 600;
}

.entry-cols .entry-link .entry-title:after{
  content: '';
  display: block;
  width: 30px;
  margin: 10px auto;
  height: 2px;
  background-color: currentColor;
}

.entry-cols .entry-text-wrap {padding: 30px 30px 85px 30px;}

.entry-cols .entry-meta, 
.entry-cols .entry-meta li {
  margin-left: 0;
  list-style: none;
}

.entry-cols .entry-meta li:not(:last-child) {margin-right: 10px;}

.entry-cols .entry-date {
  font-size: 0.9em;
	color: var(--dark-3);
}

.entry-cols .entry-cats {
  position: absolute;
  top: 30px;
  left: 30px;
}

.entry-cols .entry-cats span {
  border-radius: var(--radius-3);
  padding: 5px 10px;
  margin: 0;
  margin-right: 4px;
  background: rgba(0,0,0,0.4);
  color: white;
}

.entry-cols .entry-more {
  position: absolute;
  width: 100%;
  left: 30px;
  bottom: 30px;
}

/* .entry-cols .entry-link .entry-button {color: var(--primary);} */

/* .entry-cols .entry-link:hover .entry-button {color: var(--secondary);} */

.entry-cols .entry-link .entry-button:after{
  font-family: 'Font Awesome 5 Pro';
  content: '\f178';
  font-size: .8em;
  margin-left: 10px;
}

/* Paging Nav */

.archive-nav a {
  padding: 0.6em 1.2em;
  border-radius: var(--radius-3);
	border: 1px solid var(--light-1);
  background: var(--light-2);
  color: var(--dark-1);
}

.archive-nav a:hover {
  background-color: var(--secondary);
  color: white;
}

/*services*/
.service-cols .service{ text-align: center; }

.service-cols .service-more{left: 0;}

@media (min-width:901px) and (max-width:1200px) {
  .service-cols .service{
    width: 50%;
  }
}

.service-cols .service-thumb {
  aspect-ratio: 1/1;
  object-fit: cover;
  width: 100%;
}

.service-cols .service-text-wrap {
  position: relative;
  margin-top: -130px;
  top: 130px;
  transition: all 300ms ease-in-out;
  background-color: var(--primary-dk);
}

.service-cols .service-link:hover .service-text-wrap {
  top: 0;
  background-color: var(--primary-dk);
}

@media screen and (max-width: 900px) {
  .service-cols .service-link .service-text-wrap { 
    top: 0; 
    margin-top: 0;
  }
}


.service-cols .service-excerpt,
.service-cols .service-more {
  opacity: 0;
  transition: all 300ms ease-in-out;
}

.service-cols .service-link:hover .service-excerpt,
.service-cols .service-link:hover .service-more {opacity: 1;}

@media screen and (max-width: 900px) {
  .service-cols .service-link .service-excerpt,
  .service-cols .service-link .service-more {opacity: 1;}
}


/***  5.7 SINGLE  ***/





/******************************************************************************
 * * *  6 FOOTER STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 ******************************************************************************/



/***  6.1 CTA BAR  ***/

.cta-bar {
  padding-top: 120px;
	padding-bottom: 60px;
  background-color: var(--primary-dk);
	color: white;
  position: relative;
	margin-top: 140px;
}

.cta-bar::before{
  content: '';
  position: absolute;
  width: 100%;
  height: calc(100% + 140px);
  top: -140px;
  background-image: url(/wp-content/uploads/cta-bg.png);
    background-size: 70% auto;
    background-repeat: no-repeat;
    background-position: top left;
}

@media screen and (max-width: 901px) {
	.cta-bar {
		background-image: url(/wp-content/uploads/cta-bg.jpg);
		background-size:cover;
		background-position:center;
	}
}
.cta-bar::after{
	content:'';
	background-color:var(--primary);
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	opacity:.7;
	visibility:visible;
}

.cta-bar .grid {
  gap: 20px 40px;
  position: relative;
  z-index: 2;
}

.cta-bar .col-custom:last-child {margin-top: 1em;}

@media screen and (min-width: 901px) {
.cta-bar .col-custom:first-child {
  width: calc(60% - 40px);
}
.cta-bar .col-custom:last-child {
  width: 40%;
	margin-top: 0;
}
}

.cta-bar .cta-title, 
.cta-bar .elementor-widget-heading {margin-bottom: 0.5em;}

.cta-bar .cta-title:after{
  content: '';
  display: block;
  margin-top: 10px;
  margin-bottom: 30px;
  width: 50px;
  height: 3px;
  background-color: white;
}

.cta-bar .cta-title + p {margin-top: 0;}

.cta-bar h1, 
.cta-bar h2, 
.cta-bar h3, 
.cta-bar h4, 
.cta-bar h5, 
.cta-bar h6, 
.cta-bar .elementor-heading-title {color: white;}

.cta-bar .button:hover, 
.cta-bar .elementor-button:hover {
  border-color: white;
  background-color: white;
	color: var(--primary);
}

.cta-bar a[href^="tel:"]{
  font-size: 2.5em;
  color: white;
  transition: all 300ms ease-in-out;
}

.cta-bar a i{
  color: white;
  transition: none;
  margin-right: 5px;
  transition: inherit;
}

.cta-bar a:hover,
.cta-bar a:hover i{color: white;}

.cta-bar .cta-separator{
  margin-top: 40px;
  margin-bottom: 40px;
  letter-spacing: 2px;
  font-weight: 600;
}

.cta-bar .nf-field-element textarea{
  color: var(--dark-1);
  height: 120px;
}

.cta-bar .nf-field-element input{color: var(--dark-1);}

.cta-bar input[type="submit"]{
  background-color: white;
  color: var(--primary);
}

.cta-bar input[type="submit"]:hover{
  background-color: var(--dark-1);
  color: white;
  cursor: pointer;
}

.cta-bar .nf-error-msg{color: white;}



/***  6.2 FOOTER  ***/

.footer {
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: var(--dark-1);
  font-size: 0.9em;
  color: white;
}

.footer .col-custom {
  padding-top: 15px;
  padding-bottom: 15px;
}

.footer .footer-logo img{max-height: 70px;}

.footer h4,
.footer .contact-list li a,
.footer .contact-list li:before{
  color: white;
}

.footer h4::after{
  content: '';
  display: block;
  margin-top: 10px;
  margin-bottom: 20px;
  width: 40px;
  height: 2px;
  background-color: var(--primary);
}

.footer a {
  color: var(--light-1);
  display: block;
}

.footer .contact-list li a:hover,
.footer a:hover {
  text-decoration: none;
  color: var(--primary-lt);
}

.footer .social-list li a {display: inline-block;}

/* Footer Menus */

.footer .menu {margin-top: -5px;}

.footer .menu a {
  display: block;
	padding-top: 5px;
	padding-bottom: 5px;
}

/* Footer Icon List */

.footer .arrow-list li, 
.footer .check-list li, 
.footer .check-circle-list li, 
.footer .icon-list li, 
.footer .contact-list li {margin-left: 1.75em;}

.footer .contact-list li:before {top:.6em}



/***  6.3 BOTTOM BAR  ***/

.bottom-bar {
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: var(--dark-1);
  border-top: 1px solid var(--dark-3);
  font-size: 0.9em;
  color: white;
}

.bottom-bar .col-custom {
  padding-top: 10px;
  padding-bottom: 10px;
}

.bottom-bar a {color: white;}

.bottom-bar a:hover {
  text-decoration: none;
  color: var(--primary-lt);
}

.copyright, .credits {display: inline-block;}

.credits img {width: 1.1em;}





/******************************************************************************
 * * *  7 CUSTOM STYLES  * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 ******************************************************************************/

/* Add custom theme styles here */

.bg-lt-one{background-color: var(--light-1);}

.bg-lt-two{background-color: var(--light-2);}

.bg-lt-three{background-color: var(--light-3);}

.bg-black{background-color: black;}

.text-md{font-size: 1.1em;}

.text-lg{font-size: 1.25em;}

.text-x-lg{font-size: 1.5em;}

.elementor-headline-dynamic-text,
.text-primary{color:var(--primary);}

.line-heading:after{
  content: '';
  display: block;
  margin-top: 20px;
  margin-bottom: 10px;
  width: 150px;
  height: 3px;
  background-color: var(--primary);
}

.line-heading.line-heading-center:after {
  margin-left: auto;
  margin-right: auto;
}

.line-heading.line-heading-btm:after {margin-top: 0;}

.slider-border img{
  border: 4px solid white;
  border-radius: var(--radius-4);
  box-shadow: var(--shadow-2);
  max-width: calc(100% - 20px);
}

.slider-border .swiper{padding: 10px 0 !important;}

/*before after image*/
.elementor-widget-wts-ab-image{
  position: initial!important;
}

.elementor-widget-wts-ab-image .elementor-widget-container{
  border: 4px solid white;
  box-shadow: var(--shadow-2);
  border-radius: var(--radius-2);
}

.eae-img-comp-slider{
  width: 25px;
  height: 25px;
}

.social-list li{
  list-style: none;
  font-size: 1.4em;
  margin-left: 0;
}

.bordered-img img{
  border-radius: var(--radius-3);
  border: 4px solid white;
  box-shadow: var(--shadow-2);
}

/* Max Width */
.mw-800 {max-width: 800px;}

/* Section Height */
.section-full-height section {height: 100%;}
/*
 * END OF
 * CUSTOMIZABLE CSS
 */