/*!
Theme Name: Insuresoft 2019
Theme URI: http://www.insuresoft.com/
Author: Guillaume Martin
Author URI: http://www.insuresoft.com/
Description: Insuresoft Official Wordpress Theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: insuresoft
Tags: custom-background, custom-logo, custom-menu, featured-images, elementor-ready

*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	font-size: 20px;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: "Montserrat", Verdana, sans-serif !important;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

p {
	margin-bottom: 1.5em;
}

dfn, cite, em {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark, ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	/* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #fff;
	/* Fallback for when there is no custom background color defined. */
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul, ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto;
	/* Make sure images are scaled correctly. */
	max-width: 100%;
	/* Adhere to container width. */
}

figure {
	margin: 1em 0;
	/* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

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

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: #0047BB;
}

a:visited {
	color: #003488;
}

a:hover, a:focus, a:active {
	color: #005aee;
}

a:focus {
	outline: thin dotted;
}

a:hover, a:active {
	outline: 0;
}

.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/* Stickymenu */
body[data-elementor-device-mode=desktop]:not(.elementor-editor-active) > div.elementor-location-header {
	transition: all 500ms;
	top: -100px;
	background: #fff;
}
body[data-elementor-device-mode=desktop].stickymenu:not(.elementor-editor-active) > div.elementor-location-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
    background: #FFF;
    -webkit-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.1);
    z-index: 9900;
}

body.admin-bar[data-elementor-device-mode=desktop].stickymenu:not(.elementor-editor-active) > div.elementor-location-header {
	top: 32px;
}

body[data-elementor-device-mode=desktop].stickymenu:not(.elementor-editor-active) #content {
	margin-top: 92px;
}

body.admin-bar .elementor-lightbox {
	top: 32px;
}

@media (max-width: 1024px) {
	body > #page > header {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		background: #FFF;
		z-index: 9999;
	}
	body.admin-bar #wpadminbar {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;		
	}
	body.admin-bar > #page > header {
		top: 32px;
	}

}

@media (max-width: 782px) {
	body.admin-bar > #page > header {
		top: 46px;
	}
}


/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0;
	/* Make sure select elements fit in widgets. */
}

h2.widget-title {
	display: none;
}

.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block;
}

.hentry {
	margin: 0;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 0;
}

.page-links {
	clear: both;
	margin: 0;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
## Custom CSS
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
	body:not(.single-resource) h1 {
	line-height: 50px !important;	
}
}
body:not(.single-resource) h1 {
    font-size: 90px;
	line-height: 100px;	
}
h2 {
    font-size: 36px;
	line-height: 46px;	
}
h3 {
    font-size: 32px;
	line-height: 42px;
}
h4 {
    font-size: 28px;
	line-height: 38px;
}
h5 {
    font-size: 24px;
	line-height: 30px;
}
h6 {
    font-size: 20px;
	line-height: 24px;	
}
p {
	
}
small {
    font-size: 12px;
	font-weight: normal;
}

ol li {
	padding: 0 0 18px 0;
}

header#masthead {
	z-index: 9999;
	box-shadow: 0 0 4px 1px rgba(0, 0, 0, 0.3);
}

section#content {
	overflow: hidden;
}

section#content .resources-blog.breadcrumb-wrapper {
	background-color: #4054b2;
}
section#content .resources-library.breadcrumb-wrapper {
	background-color: #23a455;
}
section#content .resources-video.breadcrumb-wrapper {
	background-color: #54595f;
}
section#content .resources-newsroom.breadcrumb-wrapper {
	background-color: #c17d1f;
}
section#content .resources-event.breadcrumb-wrapper {
	background-color: #bc4343;
}

section#content .breadcrumb-wrapper .breadcrumb {
	margin: 0 auto;
	width: 1140px;
	padding: 50px 15px 15px;
	color: rgba(255,255,255,0.4);
}

section#content .breadcrumb-wrapper .breadcrumb a {
	color: rgba(255, 255, 255, 0.8);
	text-decoration: none;
}

section#content .breadcrumb-wrapper .breadcrumb a:hover {
	color: rgba(255, 255, 255, 1);
}

/*--------------------------------------------------------------
## Custom layout
--------------------------------------------------------------*/

body.archive section#content {
	background: #f4f4f4;
	overflow: hidden;
}

#searchbut, #searchbut-fr {
	margin: 0 !important;
}

#header-title {
	color: #FFF;
	margin: 0 !important;
}
#header-title h3 {
	font-size: 40px;
	line-height: 46px !important;
	margin: 0 0 12px 0 !important;
}
#header-description {
	color: #e4e4e4;
	margin: 0 !important;	
}
#header-description p  {
	font-size: 1rem;
	line-height: 1.2rem;
	margin: 0 !important;
}

div#primary.content-area {
	margin: 0 auto;
	overflow: hidden;	
}
div#primary.content-area-archive, div#primary.content-area-post {
	max-width: 1140px;
	padding: 48px 15px;	
}
div#primary.content-area aside {
	float: left;
	width: 25%;
	padding: 12px 0 12px 12px;
	min-height: 300px;
}

div#primary.content-area-archive main#main {
	float: left;	
	width: 75%;
	padding: 0;
}

div#primary.content-area-post main#main {	
	width: 100%;
	padding: 0;
}

/* LISTING CARDS */

#content div.filter-label {
	margin: 6px 0 12px 0;
}

#content div.cards-wrapper {
	text-align: left;
	padding: 0;
}

#content div.cards-wrapper > a.card {
	display: inline-block;
	position: relative;
	width: 32%;
	height: 360px;
	margin: 0 4px 10px 0;
	border-radius: 6px;
	color: #333;
	text-decoration: none;
	background-color: #FFFFFF;
	transition: all .6s cubic-bezier(0.165, 0.84, 0.44, 1);	
	vertical-align: top;
}
#content div.cards-wrapper > a.card::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.46);
	-moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.46);
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.46);
	opacity: 0;
	-webkit-transition: all .6s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition: all .6s cubic-bezier(0.165, 0.84, 0.44, 1);
	border-radius: 6px;	
}
#content div.cards-wrapper > a.card:hover::after {
	opacity: 1;
}

#content div.cards-wrapper > a.card .content a:hover {
	color: #0047BB;
} 

#content div.cards-wrapper > a.card header {
	height: 50%;
	overflow: hidden;
	background-color: #ccc;
	background-position: 50% 50%;
	background-size: cover;
	border-bottom: 1px solid #e4e4e4;
	border-radius: 6px;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

#content div.cards-wrapper > a.card header div.external-link {
	position: absolute;
	top: 6px;
	right: 6px;
	width: 30px;
	height: 30px;
	background-color: rgba(255,255,255,0.8);
	border-radius: 6px;
	padding: 1px 7px;
	font-size: 18px;	
}

#content div.cards-wrapper > a.card .content {
	height: 180px;
	padding: 10px 15px 15px;
	line-height: 1rem;	
	text-align: left;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	/* z-index: 100; */
	background: -moz-linear-gradient(top, rgba(242,242,242,1) 0%, rgba(255,255,255,1) 80%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(242,242,242,1) 0%,rgba(255,255,255,1) 80%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(242,242,242,1) 0%,rgba(255,255,255,1) 80%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f2f2', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
	border-top: 2px solid #efefef;
}
#content div.cards-wrapper > a.card:hover .content {
	background: rgba(255,255,255,1);
}
#content div.cards-wrapper > a.card .content a {
	font-family: "Open sans", Verdana, sans-serif !important;
	font-size: 0.8rem;
	line-height: 0.9rem;
	font-weight: 700;
	color: #333;	
	text-decoration: none;
	margin: 0;
}
#content div.cards-wrapper > a.card .content a:hover {
	color: #0047BB;	
}
#content div.cards-wrapper > a.card .content div.pubdate {
	font-size: 0.7rem;
	color: #666;
}
#content div.cards-wrapper > a.card .content div.author {
	font-size: 0.7rem;
	line-height: 0.8rem;
	padding: 8px 0;	
}

#content div.cards-wrapper > a.card .content div.title {
	font-size: 0.8rem;
	line-height: 0.9rem;
	font-weight: 700;
}
#content div.cards-wrapper > a.card .content div.title:hover {
	color: #0047BB;
}

#content div.cards-wrapper > a.card .content div.taxonomy {
	font-size: 0.7rem;
	line-height: 0.8rem;
	font-weight: 400;
	color: #777;
	margin: 0;
}

#content div.cards-wrapper > a.card .content div.customerlogo {
	text-align: center;
	height: 100px;
	background-position: 50% 50%;
	width: 100%;
	background-repeat: no-repeat;
}


/* SINGLE LIBRARY DOCUMENT */

.single-librarydocument #content h3 {
	margin: 6px 0 12px;	
}

.single-librarydocument article #library-details {
	float: left;
	width: 50%;
	padding: 0 24px 0 0;
	font-size: 16px;
}
.single-librarydocument article #library-download-form {
	float: left;
	width: 50%;
	padding: 24px 24px 12px 24px;
	background: #EFEFEF;
	font-size: 16px;	
}

/* Post Details */

#post-details .post-date {
	font-size: 16px;
	font-style: italic;
	color: #666;	
}
#post-details h3 {
	margin: 0;
}
#post-details .post-author {
	margin: 0;
}
#post-details .post-author a {
	font-weight: 700;
	text-decoration: none;
}
#post-details .post-thumbnail {
	float: right;
	width: 312px;
	height: 312px;	
	margin: 6px 0 18px 18px;
	padding: 6px;
	background: #e4e4e4;
	border-radius: 12px;	
}

#post-details .post-thumbnail img {
	width: 300px;
	height: 300px;
	border-radius: 8px;
}

/* Event Details */

#event-details .event-date {
	font-size: 16px;
	font-style: italic;
	color: #666;	
}
#event-details h3 {
	margin: 0;
}

#event-details .event-thumbnail {
	float: right;
	width: 312px;
	height: 312px;	
	margin: 6px 0 18px 18px;
	padding: 6px;
	background: #e4e4e4;
	border-radius: 12px;	
}
#event-details .event-thumbnail img {
	border-radius: 8px;
}


/* SINGLE VIDEO */
#video-details h3 {
	margin: 0 0 24px 0;
}

/*--------------------------------------------------------------
## Widgets
--------------------------------------------------------------*/


aside #blogtags-widget, aside #author-widget, aside #latestposts-widget {
	margin: 0 0 24px 0;
	background: transparent;
	padding: 0;
	border-radius: 0;	
}

aside #blogtags-widget h6, aside #author-widget h6, aside #latestposts-widget h6 {
	margin: 0 0 4px 0;
	padding: 0;
}

aside #blogtags-widget a, aside #author-widget a {
	text-decoration: none;
	white-space: nowrap;
} 
aside #latestposts-widget a {
	text-decoration: none;
} 

aside #blogtags-widget div {
	color: #ccc;
	padding: 0 2px;
}

aside #author-widget ul {
	list-style-type: none;
	margin: 0;
	padding: 0 2px;
}
aside #author-widget ul li a {
	font-size: 16px;
}

aside #latestposts-widget ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	line-height: 1.1;	
}
aside #latestposts-widget ul li {
	margin: 0;
	padding: 8px 2px;
	border-bottom: 1px dashed #e4e4e4;
}
aside #latestposts-widget ul li .post-date {
	font-size: 0.7rem;
	color: #666;
}
aside #latestposts-widget ul li a {
	font-size: 16px;
	font-weight: 700;
}

.tag-cloud-link {
	padding: 4px 6px;
	background-color: #ddd;
	margin: 0 3px 0 0;
	display: inline-block;
	font-size: 14px !important;
	color: #333;
}
.tag-cloud-link:visited {
	background-color: #ddd;	
	color: #333;
}


.tag-cloud-link:hover {
	background-color: #005aee;
	color: #FFF;
}

/*--------------------------------------------------------------
## Taxonomy Filters
--------------------------------------------------------------*/
ul.filter {
	list-style-type: none;
	padding: 0;
	margin: 6px 0 12px;
	text-align: center;
}

ul.filter li {
	display: inline-block;
	padding: 0 8px;
	border-right: 1px solid #e4e4e4;
	height: 24px;
}
ul.filter li:last-child {
	border-right: 0 !important;
}

ul.filter li a {
	display: block;
	font-weight: 400;
	font-size: 0.8rem;
	line-height: 24px;
	text-decoration: none;
	color: #333;
}
ul.filter li a:visited {
	color: #333;	
}

ul.filter li a:hover {
	color: #0047BB;
}

ul.filter li a.active {
	font-weight: 700 !important;
}

/*--------------------------------------------------------------
## Paging
--------------------------------------------------------------*/

/* Numeric Paging */
.numeric-paging {
	margin: 12px auto;
	text-align: left;
	height: 42px;
}
.numeric-paging ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: inline-block;
}
.numeric-paging ul li {
	float: left;
	margin: 0 8px 0 0;
}
.numeric-paging ul li a {
	display: block;
	padding: 6px 12px;
	background-color: #fff;
	border-radius: 6px;
	text-decoration: none;
	color: #333;
}
.numeric-paging ul li a:hover {
	background-color: #ccc;	
}
.numeric-paging ul li.active a {
	color: #FFF;
	background-color: #0047BB;
}
.numeric-paging ul li.active a:hover {
	background-color: #333;
}

.showing-count {
	margin: 12px 0;
	font-size: 16px;
	clear: both;
}

/*--------------------------------------------------------------
## Video embed
--------------------------------------------------------------*/
.embed-container { 
	position: relative; 
	padding-bottom: 56.25%;
	overflow: hidden;
	max-width: 100%;
	height: auto;
} 

.embed-container iframe,
.embed-container object,
.embed-container embed { 
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.float-left {
	float: left;
	margin: 24px 24px 24px 0 !important;
}
.float-right {
	float: right;
	margin: 24px 0 24px 24px !important;
}

.menu-breadcrumb {
	margin-bottom: 0 !important;
}

.menu-breadcrumb p {
	margin: 0;
	color: #FFF;	
}

.menu-breadcrumb p a {
	color: #FFF;
	font-size: 18px !important;
}

.menu-breadcrumb p a:hover {
	text-decoration: underline;
}

.elementor-widget:not(:last-child) {
    margin-bottom: 0;
}

.elementor-widget-heading {
	/*margin-bottom: 12px !important;*/
}

.elementor-widget-post-info {
	margin-bottom: 0 !important;
}

a.form-submit-button{
    border-radius: 3px;
	-webkit-box-shadow: 0 2px 0 0 #179ec0;
    -moz-box-shadow: 0 2px 0 0 #179ec0;
    box-shadow: 0 2px 0 0 #179ec0;
	position: relative;
    -webkit-transition: .1s background-color linear;
    -moz-transition: .1s background-color linear;
    -o-transition: .1s background-color linear;
    transition: .1s background-color linear;
	font-family: "Open Sans";
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 300;
    font-style: normal;
	display: inline-block;
	color: #fff;
    background-color: #1bbce4;
    border-color: #1bbce4;
	width: auto;
    height: auto;
    padding: .8em 2.5em;
    border-width: 0;
    text-align: center;
    cursor: pointer;
    outline: none;
    -webkit-appearance: none;	
}

a.form-submit-button:hover{
	color: #fff!important;
}
.contact-form .errors{
  font-weight: bold;
  margin-top: 20px;
}


@media(min-width: 1025px) and (-webkit-min-device-pixel-ratio:0) { 
	#content .elementor-top-section {
		transform: translate3d(0,0,0);
		-webkit-transform: translate3d(0,0,0); 
	}
}

/*--------------------------------------------------------------
## TABLET
--------------------------------------------------------------*/
@media (max-width: 1024px) {
	
	ol {
		padding: 0;
	}
	
	ol li {
		padding: 0 0 12px 0;
	}
	
	.elementor-slick-slider .slick-dots-inside .slick-dots {
		bottom: 18px !important;
	}
	div#primary.content-area aside {
		width: 33%;
	}

	div#primary.content-area-archive main#main {
		width: 67%;
	}
	#content div.cards-wrapper > a.card {
		width: 49%;
		margin: 0 2px 12px 0;
	}
	ul.document-type-filter li a {
		font-size: 0.7rem;
	}
	#content h2 {
		font-size: 30px;
		line-height: 36px;
	}	
	#content h3 {
		font-size: 26px;
		line-height: 30px;
	}	
	
	#footer-menu ul.menu li {
		width: 25% !important;
		text-align: center;
	}
	#footer-menu ul.menu li:last-child {
		display: none;
	}
	
	#footer-menu ul.sub-menu {
		display: none;
	}
	
	.float-left {
		float: left;
		margin: 24px 24px 24px 0 !important;
	}
	.float-right {
		float: right;
		margin: 24px 0 24px 24px !important;
	}
	
	.elementor-section.elementor-section-height-full {
		height: auto !important;
	}
	
}

/*--------------------------------------------------------------
## MOBILE
--------------------------------------------------------------*/
@media (max-width: 767px) {
	
	#content h2 {
		font-size: 28px;
		line-height: 34px;
	}
	
	h4 {
		font-size: 22px;
		line-height: 26px;
	}
	
	#top-menu ul li {
		font-size: 0.6rem;
	}
	#top-menu ul li a {
		padding: 7px 8px;
		margin: 0;
		height: 32px;
		color: rgb(122,122,122);
	}
	.elementor-slick-slider .slick-dots-inside .slick-dots {
		bottom: 10px !important;
	}
	
	div#primary.content-area-archive, div#primary.content-area-post {
    	padding: 24px 18px;
	}
	
	ul.filter {
		margin: 0;
	}
	ul.filter li {
		display: block;
		padding: 0;
	}
	ul.filter li a.active {
		background-color: #e4e4e4;
	}
	
	div#primary.content-area aside {
		width: 100%;
		padding: 12px 0;		
	}

	div#primary.content-area-archive main#main {
		width: 100%;
		padding: 0;
	}
	#content div.cards-wrapper > a.card {
		width: 100%;
		min-height: 200px;
		height: auto;
		margin: 0 0 10px;
	}
	#content div.cards-wrapper > a.card header {
		height: 120px;
		background-position: 50% 50%;
		border-bottom-left-radius: 0 !important;
		border-bottom-right-radius: 0 !important;
	}
	#content div.cards-wrapper > a.card .content {
		height: auto;
		min-height: 120px;
		position: relative;
	}

	.single-librarydocument article #library-details, .single-librarydocument article #library-download-form {
		width: 100%;
	}
	
	.single-librarydocument article #library-download-form  {
		margin: 15px 0 0 0;
		padding: 15px;
	}
	
	#content h3 {
		font-size: 24px;
		line-height: 28px;
	}
	
	.breadcrumb {
		font-size: 0.8rem;
	}

	#header-title {
	}
	#header-title h3 {
		line-height: 36px !important;
	}
	#header-description {
	}
	#header-description p  {
		font-size: 0.9rem;
		line-height: 1.1rem;
	}
	
	.numeric-paging ul li {
		margin: 0 4px 0 0;
	}
	.numeric-paging ul li a {
		font-size: 0.9rem;
		line-height: 1.1rem;
		padding: 6px 12px;
	}
	.float-left {
		float: none !important;
		margin: 0 !important;
	}
	.float-right {
		float: none !important;
		margin: 0 !important;
	}	
}

#resources-header {
	transition: none !important;
}
nav#taxonomyLinks {
	padding: 12px;
	text-align: center;
}
nav#taxonomyLinks a {
	display: inline-block;
	font-size: 16px;
	padding: 6px 12px;
	border-right: 1px solid #ccc;
}
nav#taxonomyLinks a:hover {
	background-color: #eee;
}
nav#taxonomyLinks a:last-child {
	border-right: 0;
}