/* 
Theme Name: Connect Agency Custom Theme
Description: Custom theme based on Hello Elementor
Author: Connect + CFM
Author URI: https://theconnectagency.com
Template: hello-elementor
Version: 3.0.5
Text Domain: connectbase
*/

/* GLOBAL */

html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
[type=button], [type=submit], button { border: inherit; }
.swiper-button-right, .swiper-button-next { text-align:right; }

.whiteText, .whiteText p, .whiteText h1, .whiteText h2, .whiteText h3, .whiteText h4, .whiteText li, .whiteText li:before, .whiteText a:not(.elementor-button), .whiteText a:not(.elementor-button):hover { color: #ffffff !important; }

.blackText, .blackText p, .blackText h1, .blackText h2, .blackText h3, .blackText h4, .blackText li, .blackText li:before, .blackText a:not(.elementor-button), .blackText a:not(.elementor-button):hover { color: #000000 !important; }

.underlineLinks a:not(.elementor-button):hover, .alwaysUnderline a:not(.elementor-button) { text-decoration: underline; }
.noUnderline a:hover { text-decoration: none !important; }


ul.elementor-nav-menu--dropdown a, ul.elementor-nav-menu--dropdown a:focus, ul.elementor-nav-menu--dropdown a:hover {
    border-left: none;
}

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

@media (min-width:768px) {
	.mobileShow { display: none !important; }
}

@media (max-width: 640px) {
.wp-block-image figure {
    float: none;
    width: 100% !important;
    clear: both;
    text-align: center;
}
}

.fullWidth {
	margin-left: -50vw;
	margin-right: -50vw;
	max-width: 100vw !important;
	position: relative;
  left: 50%;
	right: 50%;
	width: 100vw;
}

/* ACCESSIBILITY */

@supports selector(:focus-visible) {
	:focus { outline: none; }
	:focus-visible { outline: 1px dotted; outline-offset: 1px;}
}

.screen-reader-text, .skipLink {
    border: 0;
    border-radius: 0;
    clip: rect(1px,1px,1px,1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    overflow: hidden;
    padding: 0;
    position: absolute;
    height: 1px;
    width: 1px;
    margin: -1px;
    word-wrap: normal !important;
}

.screen-reader-text:focus, .skipLink:focus  {
    background-color: #efefef !important;
    clip: none !important;
    -webkit-clip-path: none;
    clip-path: none;
    color: #101010 !important;
    display: block;
    font-size: 1em;
    font: message-box;
    text-decoration: none;
    line-height: normal;
    padding: 12px 20px !important;
    left: 5px;
    top: 5px;
    height: auto;
    width: auto;
    min-width: 220px;
    z-index: 100000;
}

.hideElement {
    border: 0;
    clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px; 
} 

.hideElement-focusable:active,
.hideElement-focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
} 


/* BUTTONS IN HORIZONTAL NAVIGATION MENUS */

.elementor-nav-menu--layout-horizontal .menuButton .elementor-item {
	padding: 8px 16px !important;
	color: #ffffff !important;
	background-color: var( --e-global-color-primary );
	border-radius: 5px;
	font-size: 1.1rem !important;
	font-weight: 700 !important;
}

.elementor-nav-menu--layout-horizontal .menuButton .elementor-item:hover {
	background-color: var( --e-global-color-secondary );
}

.elementor-nav-menu--layout-horizontal .menuButton .elementor-item:before, 
.elementor-nav-menu--layout-horizontal .menuButton .elementor-item:after {
	display:none;
	}

.menuIcon i {
	padding: 2px 0 0 8px;}
	
/* GRAVITY FORMS GENERAL STYLES */

.gform_wrapper.gravity-theme .gform_confirmation_wrapper {
    border: 1px solid #333333;
    background-color: #efefef;
    padding: 20px 10px;
    text-align: center;
    font-size: 1.2rem;
}

.gform_wrapper.gravity-theme .gfield_label, 
.gform_wrapper.gravity-theme .ginput_complex label, 
.gform_wrapper.gravity-theme .field_description_above .gfield_description {
	margin-top: 2px; 
	margin-bottom: 4px;
	padding: 0;
}

.gform_wrapper.gravity-theme .gfield_label, 
.gform_wrapper.gravity-theme .ginput_complex label {
	color:  var( --e-global-color-primary );
}

.gform_wrapper.gravity-theme select,
.gform_wrapper.gravity-theme .ginput_complex select {
	border-radius: 0;
	border-color: #333333;	
	min-height: 42.75px;
	max-width: 97.5%;
}

@media only screen and (min-width:641px) {
.gform_wrapper .gform_body .gform_fields .gfield .address_city, 
.gform_wrapper .gform_body .gform_fields .gfield .address_state {
	max-width: 40%;
	margin-bottom: 0 !important;
}
.gform_wrapper .gform_body .gform_fields .gfield .address_zip, 
.gform_wrapper .gform_body .gform_fields .gfield .address_line_2 {
	max-width: 20%;
}
}

/* CUSTOM LIST STYLES */

.customList ul, .customList ol {
    margin: 0.5rem 0 1rem -0.5rem;
}

.customList li {
    margin-bottom: 5px;
}

.customList ul {
    list-style: none;
}

.customList ul li::before {
  content: "\2014";
  color: var( --e-global-color-accent );
  font-weight: normal; 
  display: inline-block; 
  width: 1.5em;
  margin-left: -1.5em;
}

.customList .wp-block-columns {
    margin-bottom: 0.25rem;
}

/* GENERAL */
