/* WEBFONT */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6, .signature-font {
	font-family: 'Questrial', sans-serif;
}

/* SVG LOGO ADJUSTMENTS */
#headerlogo { margin-top: 0px; padding-top: 6px; padding-bottom: 6px; }
#headerlogo img { height: 70px; }
#footerLogo img { max-width: 100%; width: auto !important; height: 100%; max-height: 80px; }

/* SOCIAL HEADER */
.sh-col { letter-spacing: 1.5px; }
.sh-cta-container { margin-left: 20%; }
.sh-cta { padding: 0px 32px; }
.sh-cta-container .sh-cta:not(:first-child) { border-left: 1px solid #FFF; }

/* MENU ADJUSTMENTS */
.pi-row-md .pi-full-height>li>a { line-height: 82px; }
.pi-header-row-fixed .pi-header { padding-bottom: 85px; }
.pi-section-base .pi-social-icons.pi-full-height.pi-bordered li { border: none; }
.pi-section-base .pi-social-icons.pi-full-height a { background-color: rgba(0,0,0,0.2); }
.pi-section-base .pi-social-icons.pi-full-height a:hover { background-color: rgba(0,0,0,0.4) !important; }
.pi-menu-mobile-white li, .pi-menu-mobile-white li:hover { background: #FFF; color: #666e70; }
.pi-menu-mobile-white li>a { color: #666e70; }

/* GENERAL */
.btn { box-shadow: none; }
.pi-section-base, .pi-section-dark { color: #FFFFFF; }
.pi-section-base .form-control,
.pi-section-base .form-control:hover { background: #FFFFFF; color: #333333; }
.pi-base-underline { border-width: 0px 0px 5px 0px; border-style: solid; padding-bottom: 8px; }
.pi-section-grey { background-color: #EEE; }
.pi-section-grey a.pi-link-no-style:hover { color: unset; }

/* FIXED BACKGROUNDS */
.bg-fixed { background-position: 50% 50%; background-size: cover; }
html:not(.mobile) .bg-fixed {
	background-attachment: fixed;
}

/* SECTION COLORS */
.pi-section-base, .pi-section-dark { color: #FFFFFF; }
.pi-section-grey { background-color: #EEEEEE; }
.pi-section-grey a.pi-link-no-style:hover { color: inherit; }
.pi-section-base .pi-text-base,
.pi-section-dark .pi-text-base { color: #FFFFFF !important; }
.pi-section-base a.pi-link-no-style:hover, 
.pi-section-dark a.pi-link-no-style:hover { color: #FFFFFF !important; }
.pi-section-base .pi-border-color-base, 
.pi-section-dark .pi-border-color-base { border-color: #FFFFFF !important; }

/* DESKTOP BANNER */
.desktop-banner-semitrans-slice-gradient {
	padding: 4%;
	width: 490px;
	background-color: rgba(0, 0, 0, 0.6);
}
.cf-banner-cutout {
    position: absolute;
    left: 50%;
    bottom: 0px;
    max-height: 100%;
    height: auto;
}
@media (max-width: 960px) {
	.cf-banner-cutout { display: none; }
}

/* MOBILE BANNER */
.mobile-banner-semitrans-slice {
	padding: 8% 10% 7% 10%;
	background-color: rgba(0, 0, 0, 0.6);
}

/* OUTLINE BUTTONS */
.pi-btn-outline {
	border-width: 2px;
	border-style: solid;
	background-color: transparent;
	text-shadow: none;
	box-shadow: none;
}
.pi-section-white .pi-btn-outline, 
.pi-section-grey .pi-btn-outline {
	color: #666e70;
	border-color: var(--light-accent);
}
.pi-section-base .pi-btn-outline {
	color: #FFF;
	border-color: #FFFFFF;
}
.pi-section-dark .pi-btn-outline {
	color: #FFF;
	border-color: var(--light-accent);
}

/* H1 */
.scaling-h1-font-size { font-size: 24px; }
@media all and (max-width: 767px) {
	.scaling-h1-font-size { font-size: 18px; }
}

/* ELEVATOR ROUNDING/SHADOW */
.jumper-nav-desktop-container .nav-rightside-shell {
	border-radius: 4px 0px 0px 4px;
}
.jumper-nav-desktop-container .nav-rightside-shell {
	-webkit-box-shadow: -2px 2px 11px 0px rgba(0,0,0,0.25), 0 1px 3px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: -2px 2px 11px 0px rgba(0,0,0,0.25), 0 1px 3px 0px rgba(0,0,0,0.4);
    box-shadow: -2px 2px 11px 0px rgba(0,0,0,0.25), 0 1px 3px 0px rgba(0,0,0,0.4);
}

/* CALL US TAB ROUNDING/SHADOW */
.widget-contactslider-padding-10 {
    border-radius: 0px 4px 4px 0px;
    box-shadow: 0 1px 3px 0px rgba(0,0,0,0.4), -2px 2px 11px 0px rgba(0,0,0,0.25);
}
#widget-contactslider-container {
	box-shadow: none;
	-webkit-box-shadow: none;
	z-index: 20;
}

.base-gradient-l-r {
    background-image: linear-gradient(to right, var(--dark-accent), var(--light-accent));
}

/* ADDITIONAL SIDE TAB */
.additional-side-tab {
	background-color: var(--light-accent);
	color: #FFFFFF;
	
	z-index: 20;
    position: fixed;
    left: 0px;
    top: 278px;
	
	cursor: pointer;
	display: inline-block;
    vertical-align: middle;
    writing-mode: vertical-lr;
    text-orientation: sideways-right;
    text-transform: uppercase;
    
    font-size: 20px;
    padding: 22px 18px 22px 19px;
    line-height: 26px;
    text-align: center;
    font-family: Questrial;
    
    border-radius: 0px 4px 4px 0px;
    box-shadow: 0 1px 3px 0px rgba(0,0,0,0.4), -2px 2px 11px 0px rgba(0,0,0,0.25);

    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.additional-side-tab:hover, .additional-side-tab:active, .additional-side-tab:focus {
	color: #FFFFFF;
	text-decoration: none;
	outline: none;
}
@media all and (max-width: 1175px) {
	.additional-side-tab { display: none; }
}

/* MOBILE ELEVATORS */
.mobile-fixed-nav-bar {
	background-color: var(--dark-accent) !important;
	border: 0px;
}

/* LINE CLAMP */
.two-lines,
.three-lines, 
.four-lines {
	display: -webkit-box;
	-webkit-box-orient: vertical;  
	overflow: hidden;
	visibility: visible;
}
.two-lines { -webkit-line-clamp: 2; }
.three-lines { -webkit-line-clamp: 3; }
.four-lines { -webkit-line-clamp: 4; }

/* SECTION HEADERS */
.lined-section-title {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    text-align: center;    
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 32px;
    margin-top: 8px;
}
.lined-section-title:before,
.lined-section-title:after {
    content: '';
    border-top: 2px solid var(--light-accent);
    margin: 0 20px 0 0;
    flex: 1 0 20px;
    opacity: 0.4;
}
.pi-section-base .lined-section-title:before,
.pi-section-base .lined-section-title:after {
	border-color: #FFF;
}
.lined-section-title:after { margin: 0 0 0 20px; }

/* EMBEDDED FORM ACCORDION MOD */
.pi-section-white .embeddable-forms-accordion .pi-accordion-title { background-color: var(--light-accent); border-radius: 3px; }

.pi-section-white .embeddable-forms-accordion .pi-accordion-title a { text-decoration: none; padding: 12px 0px 12px 36px; }
.pi-section-white .embeddable-forms-accordion .pi-accordion-title a, 
.pi-section-white .embeddable-forms-accordion .pi-accordion-title a:hover, 
.pi-section-white .embeddable-forms-accordion .pi-accordion-title a:active, 
.pi-section-white .embeddable-forms-accordion .pi-accordion-title a:focus { color: #FFFFFF !important; }

.pi-section-white .embeddable-forms-accordion .pi-accordion-title .pi-accordion-toggle { top: 11px; left: 8px; background-color: transparent !important; color: #FFFFFF !important; border: none !important; text-shadow: none !important; box-shadow: none !important; }

/* CIRCLE TABS */
.ct-tabs-wrapper { text-align: center; vertical-align: top; }

.ct-tab-wrapper { cursor: pointer; display: inline-block; margin: 0px 8px; }
.ct-tab-circle { background-color: var(--light-accent); border: 2px solid var(--light-accent); height: 180px; width: 180px; line-height: 180px; border-radius: 90px; margin: 0px auto; -o-transition: .3s; -ms-transition: .3s; -moz-transition: .3s; -webkit-transition: .3s; transition: .3s; }
.ct-tab-circle img {}
.ct-tab-title { font-weight: bold; font-size: 16px; text-transform: uppercase; margin-top: 16px; margin-bottom: 8px; }
.ct-tab-v-line { height: 24px; display: inline-block; margin-bottom: -6px; }

.ct-tab-wrapper.active .ct-tab-circle, 
.ct-tab-wrapper:hover .ct-tab-circle { background-color: transparent; border-color: #FFFFFF; }
.ct-tab-wrapper.active .ct-tab-v-line { border-left: 2px solid #FFFFFF; }

.ct-content-block { display: none; padding: 32px 16px 8px 16px; background-color: rgba(0,0,0,0.5); border-top: 1px solid #FFFFFF; }
.ct-content-block.active { display: block; }

@media (max-width: 870px) {
	.ct-tab-wrapper { display: block; margin: 0px 0px 8px 0px; background-color: var(--light-accent); border: 2px solid var(--light-accent); }
	.ct-tab-wrapper.active { background-color: transparent; border-color: #FFFFFF; }
	.ct-tab-title { margin-top: 8px; font-size: 14px; }
	.ct-tab-circle { display: none; }
	.ct-tab-v-line { display: none; }
}