/*
Theme Name: Americo
Description: Americo WordPress Theme
Author: Gragg Advertising
Author URI: http://graggadv.com/
Version: 4.1.0
*/

/* html5doctor.com Reset v1.6.1mod (http://html5doctor.com/html-5-reset-stylesheet/) - http://cssreset.com */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent} body{line-height:1.2} article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block} nav ul{list-style:none} blockquote,q{quotes:none} blockquote:before,blockquote:after,q:before,q:after{content:none} a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent; color:inherit;text-decoration: none} ins{background-color:#ff9;color:#000;text-decoration:none} mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold} del{text-decoration:line-through} abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help} table{border-collapse:collapse;border-spacing:0} hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0} input,select{vertical-align:middle}

/* mobile/basic layout */
body {font-family: 'Open Sans', sans-serif; margin: 0 auto; }
img {height: auto; max-width: 100%}
p, ol, ul {margin: 1em 0}
h1{font-size: 175%; line-height: 1; }
h2{font-size: 150%; }
h3{font-size: 125%; }
h4{font-size: 112%; }
h1 + p, h2 + p, h3 + p, h4 + p, h5 + p, h6 + p {margin-top: 0;}
.clear{clear: both}
.container {padding: 0 1em; }
.disclaimer {font-size: 75%; }
.d-none { display: none; }
.content .disclaimer, #middle .disclaimer, #bottom .disclaimer{font-style: italic; margin-top: 3em;}
.content li{margin: 0.5em 0;}


/* ADA warning for links opening in new tab*/
a.info {
	position: relative;
	z-index: 24;
}
a.info:hover, a.info:focus, a.info:active {
	z-index: 25;
}
a.info span {
	position: absolute;
	left: -9000px;
	width: 0;
	overflow: hidden;
}
a.info:hover span, a.info:focus span, a.info:active span {
	display: block;
	position: absolute;
	top: 3em; 
	left: 1em; 
	width: auto;
	padding: 5px;
	color: #000;
	background-color: #fff;
	border: 1px solid #808080;
	text-align: center;
	font-weight: 100;
	text-transform: lowercase;
}

/*misc colors*/
#top,#middle{background-color: #f1f1f1; position: relative;}
#top .container { z-index: 1; position: relative; }
.page-who-we-are #top::before { content: ''; background-color: rgba(0,0,0,0.6); position: absolute; z-index: 0; top: 0; left: 0; right: 0; bottom: 0;}; 
.page-insurance-solutions #top::before { content: ''; background-color: rgba(0,0,0,0.6); position: absolute; z-index: 0; top: 0; left: 0; right: 0; bottom: 0;}; 
#bottom{background-color: #f1f1f1}
#boxes{background-color: #303030}
.altColor {color: #ffffff;}
.sidebar{background-color:#E8E8E8;}
.sidebarHolderWrapper .content{background-color:#f1f1f1}
#canvasWrapper {background-color: #ffffff;}

/*fonts*/
#top-menu, #bottom-menu,.heading {font-family: "futura-pt", 'Open Sans', sans-serif; font-weight: 500;}
.subheading {font-family: "adobe-garamond-pro",serif;font-weight: 400;}

/*header*/
#header {
	border-spacing: 1em;
	display: table;
	margin: 0 auto;
	max-width: 1600px;
	width: 100%;
	letter-spacing: 0.005em;
	position: relative;
	z-index: 10;
}
#menuLogoWrapper {
	display: table-cell;
	width: 50%;
	vertical-align: middle;
}
#menuToggle {
	display: table-cell;
	width: 50%;
	vertical-align: middle;
	text-align: right;
}
#top-menu, #bottom-menu, #topLinks {display: none;}
.top-logo, .footer-logo {max-height:3em; width:auto}
/*footer*/
#footer {padding: 1.5em 0}
#footer .container {padding: 0}
#footer_address, #footer_phone {padding: 0 1em;}#footer_menu ul.sub-menu {margin: 0;}
#footer_menu .menu li {display: block; font-weight: bold;}
#footer_menu .sub-menu li {font-weight: normal;}
#footer_links p, #footer_menu ul {margin: 0;}
#footer_links p a, #footer_menu li a {
	border-bottom: 1px solid #b7b7b7;
	display: block;
	padding: .5em 2em;
}
#footer_links p:last-child a {border: none}
#footer_phone .fa {font-size: 67%;}
#subFooter {background-color: #f1f1f1; font-size: 75%; padding:2em 0}
#main_content .content a, #subFooter a, #subFooter .divider {color: #122a5c}
#main_content .content a {text-decoration: underline}
#main_content .content a.button {color: #ffffff; margin-bottom: 1em; text-decoration: none}
#subFooter .divider {margin: 0 0.5em;}

/*misc layout*/
.content ol, .content ul {padding-left: 2em}
.sectionHeading {text-shadow: 0 0 2px #ffffff, 0 0 5px #ffffff;}
.altColor .sectionHeading {text-shadow: 0 0 2px #000000, 0 0 5px #000000;}
.sectionHeading::after {
	border-bottom: 2px solid #7397d0;
	content: "";
	display: block;
	margin: 1em 0;
	width: 5em;
}
p.subheading {font-size: 112.5%; font-style: italic;margin-top: 0.25em;}
div.bg{
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.toplink, .button {
	background-color: #132b5d;
	border: none;
	border-radius: 1em;
	color: #ffffff;
	display: inline-block;
	font-size: 100%;
	font-family: "futura-pt", 'Open Sans', sans-serif;
	font-weight: 700;
	margin: 0.25em;
	padding: 0.5em 1em;
	text-transform: uppercase;
}
.button {padding: .33em 2em;}
.imageHolderWrapper .imageHolder {
    margin: 1em auto 2em;
    text-align: center;
}
sup {font-size:xx-small; vertical-align:super;}

/*forms*/
.graggform .comments {display: none}
.graggform input, .graggform select, .graggform textarea{
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
textarea[name="comments"]{display:none;}

/*lightbox stuff*/
#lightbox {
	position:fixed; /* keeps the lightbox window in the current viewport */
	top:0; 
	left:0; 
	width:100%; 
	height:100%; 
	background-color: #000000; 
	background-color: rgba(0,0,0,.75); 
	text-align:center;
	z-index: 10;
}
#lightbox .content {
	left: 50%;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}
#lightbox .content .closer {
	bottom: 100%;
	color: #ffffff;
	cursor: pointer;
	font-size: 150%;
	left: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
}
#lightbox img, #lightbox iframe {
	background-color: #000000;
	box-shadow:0 0 25px #111;
	-webkit-box-shadow:0 0 25px #111;
	-moz-box-shadow:0 0 25px #111;
	max-width:980px;
}

/*lightbox search*/
#lightbox.search .content {
    background-color: #ffffff;
    height: 80%;
    width: 80%;
}
#modalSearch {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
}
#modalSearch label{display: none}
#modalSearch input {
	border: medium none;
	display: block;
	margin: 1em auto;
	text-align: center;
}
#modalSearch #searchField {font-size: 125%;}
#modalSearch input.submitBtn {
	background-color: #132b5d;
	color: #ffffff;
	cursor: pointer;
	font-size: 125%;
	padding: 1em 3em;
	text-transform: uppercase;
}
/* ADA tooltip for lightbox search close button */
#lightbox #closer-link:hover + #closer-link-label, 
#lightbox #closer-link:focus + #closer-link-label {
	display: block;
    position: absolute;
    top: 0;
    left: 100%;
    margin: 0 5px;
    padding: 5px;
    border: 1px solid black;
    background-color: white;
    color: black;
    font-size: 0.75rem;
}


.likebtn ul {
	display: flex;
	justify-content: center;
	list-style: none;
}

.likebtn li {
	margin: 0 4px;
}

.likebtn img {
	border: 1px solid #808080;
	border-radius: 0.5em;
	padding: 0.5em;
}

a.skip-navigation {
	display: block;
	height: 1px;
	left: -1000px;
	overflow: hidden;
	position: fixed;
	text-align: left;
	top: -1000px;
	width: 1px;
}
a.skip-navigation:focus, a.skip-navigation:active {
	background-color: #132b5d;
	border: 1px dotted #000;
	color: #ffffff;
	display: block;
	height: auto;
	left: 0;
	overflow: visible;
	padding: 5px;
	position: fixed;
	top: 0;
	width: auto;
	z-index: 10;
}

/* desktop layout */
@media (min-width: 1110px){
	h1 {font-size: 300%}
	h2 {font-size: 200%}
	h3 {font-size: 200%}
	h4 {font-size: 125%}
/* paragraphs and lists get the same desktop size */
	p, 
	ol,
	ul,
	li {font-size: 110%;}
	p.subheading {font-size: 200%;}
	.container, #footer .container, #subFooter .container{
		margin: 0 auto;
		max-width: 1200px;
	}
	/* header */
	#header {
		border-spacing: 2em 1em;
	}
	#menuLogoWrapper, #topLinks {
		width: auto;
	}
	#topLinks {display: table-cell; text-align: right; vertical-align: middle}
	#menuToggle {
		display: none;
	}
	#top-logo, #top-menu, #bottom-menu, #searchToggle, .topLink {
		display: inline-block;
		vertical-align: middle;
	}
	#top-logo {margin-right: 1em;}
	.top-logo {height:32px; width:auto}
	#top-menu .menu li {
		 display: inline;
		 padding: .25em 1em;
		 position: relative;
	}
	#top-menu .menu li.menu-item.noDesktop, 
	#bottom-menu .menu li.menu-item.noDesktop { 
		display: none;
	}
	#top-menu .menu li li,
	#bottom-menu .menu li li {
		display: block;
	}
	#top-menu li:hover,
	#bottom-menu li:hover {
		background-color: #f1f1f1;
	}
	#top-menu li li:hover,
	#bottom-menu li li:hover {
		background-color: #e2e2e2;
	}
	#top-menu li ul,
	#bottom-menu li ul {
		background-color: #f1f1f1;
		box-shadow: 1px 1px 0 #000000;
		left: 0;
		position: absolute;
		top: -1000%;
	}

	#menu-top > li.menu-item > a {font-size: 140%;}	
	/* #top-menu .menu-item-has-children:after {
		content: "\f0d7";
		font-family: FontAwesome;
	} */
	/* #top-menu .menu-item-has-children:hover ul.sub-menu, #top-menu .menu-item-has-children:focus ul.sub-menu, #top-menu .menu-item-has-children:focus-within ul.sub-menu {top: 100%;} */
	
	#top-menu .menu-item-has-children:hover ul.sub-menu,
	#bottom-menu .menu-item-has-children:hover ul.sub-menu {
		top: 100%;
	}
	#top-menu ul.sub-menu,
	#bottom-menu ul.sub-menu {
		margin: 0; white-space: nowrap
	}
	#searchToggle {
		 font-size: 150%;
		 margin-right: 0.5em;
	}
	#searchToggle i {
		 vertical-align: text-top;
	}
	/* footer */
	#footer .wrapper {
		 display: table;
		 width: 100%;
	}
	#footer .container {padding: 0 1em}
	.footer_col {
		 display: table-cell;
		 padding: 0 1em;
		 vertical-align: top;
		 width: 25%;
	}
	#footer_address {padding-left:0}
	#footer_phone {padding:0}
	#footer-logo {margin-top:.5em}
	.footer-logo {
		height: 24px;
		width: auto;
	}
	#footer_links p {margin: .5em 0}
	#footer_links p:first-child, #footer_menu ul.menu {margin-top: 1em}
	#footer_links p a, #footer_menu li a {
		border: none;
		display: block;
		padding: 0;
		width: auto;
	}
	#footer_menu .menu li {
		 margin: 0.5em 0;
	}

	#modalSearch #searchField {font-size: 200%;}
	.imageHolderWrapper {display: table}
	.imageHolderWrapper .imageHolder,  .imageHolderWrapper .contentHolder{display: table-cell;vertical-align: top;}
	.imageHolderWrapper .imageHolder {margin: 0;width: 480px;}
	.imageHolderWrapper .contentHolder {padding-left: 2em;}

}

/* For ADA Compliance */

#gform_wrapper_1 .gform_fields .gfield input::-webkit-input-placeholder {
	/* Chrome/Opera/Safari */
  color: black;
}
#gform_wrapper_1 .gform_fields .gfield input::-moz-placeholder { 
	/* Firefox 19+ */
 color: black;
}

#gform_wrapper_1 .gform_fields .gfield input:-ms-input-placeholder {
	/* IE 10+ */
 color: black;
}
#gform_wrapper_1 .gform_fields .gfield input:-moz-placeholder {
	/* Firefox 18- */
   color: black;
}

#top-menu ul li a {
	word-break: normal; 
}


.dropdown, .dropup {
    position: relative;
}
.dropdown-menu.show {
    display: block;
}
.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
		transform: none!important; 
    z-index: 1000;
    display: none; 
    float: left;
    min-width: 10rem;
    padding: .5rem 0;
    margin: .125rem 0 0;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,.15);
    border-radius: .25rem;
}
.dropdown-item {
    display: block;
    width: 100%;
    padding: .25rem 1.5rem;
    clear: both;
    font-weight: 400;
    color: #212529;
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}

.dropdown-toggle {
	background-color: #003366;
    color: #fff;
    padding: 10px;
    border: none;
    cursor: pointer;
    width: auto;
    border-radius: 3px;
}

.mm-menu {
	--mm-color-background: #012d5a;
    --mm-color-text: #ffffff;
    --mm-color-border: #667482;
}

.mm-searchfield input, .mm-searchfield input:focus, .mm-searchfield input:hover {
    --mm-color-text: white;
}

a.mm-navbar__title {
	color: white!important; 
}

.mm-searchfield input, .mm-searchfield input:focus, .mm-searchfield input:hover {
    --mm-color-background-highlight: #b7b7b7;
}

.mm-btn_next:after, .mm-btn_prev:before {
	border-color: white!important; 
}

.mm-btn_close:after, .mm-btn_close:before {
	border-color: white!important; 
}

.font-size-100 {
	font-size: 100%;
}

.text-bold {
	font-weight: bold;
}


/* new code for desktop top navbar */
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-menu-item-has-children {
	display: inline-flex;
}

#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-menu-item-has-children > a {
	padding-right: 0;
}

#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-menu-item-has-children button {
	background-color: transparent;
    border: none;
    padding: unset;
    margin: 0;
	font-size: 17px;
}

#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-menu-item-has-children:hover > a,
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-menu-item-has-children:hover > button,
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-toggle-on > a,
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-toggle-on > button,
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-animating > a,
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-animating > button {
	background-color: #f1f1f1;
}

#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-menu-item-has-children button .mega-indicator {
	display: inline-block;
    position: relative;
    left: auto;
    height: auto;
    width: auto;
    min-width: auto;
    margin: 0;
    margin-left: 6px;
    padding: 0;
    background: transparent;
    pointer-events: auto;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
}
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-menu-item-has-children button .mega-indicator::after {
	content: '\f140';
    font-family: dashicons;
    font-weight: normal;
    display: inline-block;
    margin: 0;
    vertical-align: top;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: rotate(0);
    color: inherit;
    position: relative;
    background: transparent;
    height: auto;
    width: auto;
    right: auto;
    line-height: inherit;
}

#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-toggle-on > ul, 
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-animating > ul {
	top: 100%;
}

/* tweaks for second level sub-menus */
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-menu-item-has-children .mega-menu-item-has-children {
	display: flex;
	background-color: transparent;
}

#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-menu-item-has-children .mega-menu-item-has-children button {
	transform: rotate(-90deg);
	margin-left: auto;
	margin-top: 6px;
	margin-right: 6px;
}

#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-toggle-on > ul ul, 
#top-menu #mega-menu-wrap-top-menu #mega-menu-top-menu .mega-animating > ul ul {
	top: 0;
}
/* END new code for top navbar */


/* new code for mobile/zoomed-in navbar canvas */

@media (max-width: 512px) {
	/* force menu to use megamenu css vars */
	#bottom-mmenu #mega-menu-wrap-bottom-menu #mega-menu-bottom-menu {
		line-height: var(--mm-line-height);
		min-height: var(--mm-line-height);
	}
	#bottom-mmenu #mega-menu-wrap-bottom-menu #mega-menu-bottom-menu > li.mega-menu-item, 
	#bottom-mmenu #mega-menu-wrap-bottom-menu #mega-menu-bottom-menu > li.mega-menu-item > a.mega-menu-link {
		padding: 0 calc(0.5 * var(--mm-line-height));
		line-height: var(--mm-line-height);
		height: var(--mm-line-height);
	}
}

@media (max-width: 512px) {
	#bottom-mmenu #mega-menu-wrap-bottom-menu #mega-menu-bottom-menu,
	#bottom-mmenu #mega-menu-wrap-bottom-menu #mega-menu-bottom-menu > li.mega-menu-item, 
	#bottom-mmenu #mega-menu-wrap-bottom-menu #mega-menu-bottom-menu > li.mega-menu-item > a.mega-menu-link {
		--mm-line-height: 30px;
		--mm-listitem-size: 36px;
		--mm-navbar-size: 36px;
	} 
	#bottom-mmenu #mega-menu-wrap-bottom-menu .mm-navbar, 
	#bottom-mmenu #mega-menu-wrap-bottom-menu .mm-navbar .mm-navbar__title {
		line-height: 36px;
		min-height: 36px;
	} 
}
@media (max-width: 360px) {
	/* Enable scroll as a backup */
	.mm-menu .mm-panels {
		overflow-y: auto;
	}

	#bottom-mmenu #mega-menu-wrap-bottom-menu #mega-menu-bottom-menu,
	#bottom-mmenu #mega-menu-wrap-bottom-menu #mega-menu-bottom-menu > li.mega-menu-item, 
	#bottom-mmenu #mega-menu-wrap-bottom-menu #mega-menu-bottom-menu > li.mega-menu-item > a.mega-menu-link {
		--mm-line-height: 20px;
		--mm-listitem-size: 24px;
		--mm-navbar-size: 24px;
	} 
	#bottom-mmenu #mega-menu-wrap-bottom-menu .mm-navbar, 
	#bottom-mmenu #mega-menu-wrap-bottom-menu .mm-navbar .mm-navbar__title {
		line-height: 30px;
		min-height: 30px;
	} 
}
/* END new code for mobile/zoomed-in navbar canvas*/


.menu-item-has-children button {
	background-color: transparent;
	border: 0;
	position: absolute;
	bottom: 6px;
	right: 2px;
}

.menu-item-has-children button:after {
    content: "\f0d7";
    font-family: FontAwesome;
} 

/* Associated with ADA compliance - highlight invalid field */
#gform_7 #field_7_38 legend {
	margin-bottom: -8px;
}

button.gform_delete_file:hover  {
	position: relative;
}

button.gform_delete_file:hover span[id^="delete-icon"],
button.gform_delete_file:focus span[id^="delete-icon"] {
	display: block;
	position: absolute;
	top: 15px;
	margin: 5px;
	padding: 5px;
	border: 1px solid black;
	background-color: white;
}

/* Styling fixes for gravity forms with half-width address/zip fields */
@media (min-width: 641px) {
	/* 	Contact Form */
	.gform_legacy_markup_wrapper #gform_2  .ginput_complex.has_state.has_zip span.address_state {
		padding-right: 16px;
		margin-right: 0 !important;
	}
	.gform_legacy_markup_wrapper #gform_2 .ginput_complex.has_state.has_zip .address_state select {
		padding: 5px 2px;
		margin-left: 0px !important;
		margin-top: 12px !important;
		margin-bottom: 12px !important;
	}
	.gform_legacy_markup_wrapper #gform_2 .ginput_complex.has_state.has_zip .address_state+.address_zip {
		margin-right: -4px !important;
		padding-right: 0 !important;
	}
	/* 	Become an Agent */
	.gform_legacy_markup_wrapper #gform_4  .ginput_complex.has_state.has_zip span.address_state {
		padding-right: 16px;
		margin-right: 0 !important;
	}
	.gform_legacy_markup_wrapper #gform_4 .ginput_complex.has_state.has_zip .address_state select {
		padding: 5px 2px;
		margin-left: 0px !important;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
	.gform_legacy_markup_wrapper #gform_4 .ginput_complex.has_state.has_zip .address_state+.address_zip {
		margin-right: -4px !important;
		padding-right: 0 !important;
	}
}

.small-heading {
	font-size: 112%;
}

.small-heading a {
	text-decoration: none !important;
}
.small-heading a:hover {
	text-decoration: underline !important;
}

#ADA {font-size: small;}