@charset "UTF-8";
/*
THEME COLORS
4883a5 - hippie blue
ce2e0a - red-orange
ffc100 - bright orange
ededed - Lightest gray
FFD400 - lemon yellow
*/

:root {
  --theme-blue: #4883a5;
  --theme-orange: #ffc100;
  --theme-red: #ce2e0a;
  --theme-font: 'Noto Sans', Helvetica, Arial, sans-serif;
  --text-body: '#000';
}

.grecaptcha-badge { visibility: hidden; }
@media(max-width:767px) {
  .js-gfs-widget { bottom: 40px !important; } /* google ratings widget default position covered the call-to-action buttons */
}

/* GLOBAL SETUP STYLES */
html, body { }
body { margin: 0; padding: 0; background-color: #ededed; }
form, object, embed, .block { display: block; margin: 0px; padding: 0px; }
img { border: 0; }
/* default link styles */
a, a:link, a:visited { color: var(--theme-red); outline: none; text-decoration: none; }
a:hover, a:active { color: #ff2e0a; text-decoration: underline  }
a.tel { color: inherit; text-decoration: none; border: none; }
.reversed a { color: var(--theme-orange) !important;; }
/* default font family */
html { font-size: 18px; }
body, .default-font { line-height: 1.5; font-size: 100%; color: var(--text-body); font-weight: normal; font-family: var(--theme-font); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-display: swap; }

/* default headline styles */
h1, h2, h3, h4, h5, h6, .h1 { display: block; padding: 0; clear: both; line-height: 1.125em; font-weight: bold !important; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .h1 a { text-decoration: none !important; color: inherit !important;}
h1, .h1 { font-size: 1.75em; margin-bottom: 1em; text-transform: uppercase; line-height: 1em; }
h2, .h2 { font-size: 1.65em; margin-top: 0; margin-bottom: 0.5em; }
h3, .h3 { font-size: 1.35em; }
h4, .h4 { font-size: 1.125em; }
h5, .h5 { font-size: 1em; }
h6, .h6 { font-size: 0.875em; }
h1 .small { font-weight: inherit; color: inherit; }
h1 sup, h2 sup, h3 sup, h4 sup { font-size: 12px !important; vertical-align: super; }

strong, b, .bold, .btn, .text-bold { font-weight: bold; }
input, select, label, textarea, option, h4 {  }


.alt-font, .btn, input.sow-submit, h1, h2, h3 { font-weight: normal !important; font-style: normal !important; letter-spacing: 0.03em; font-family: 'Anton', 'Arial Condensed', 'Noto Sans', Tahoma, Helvetica, Arial, sans-serif !important; font-display: swap; }
.alt-font b, .alt-font strong, .btn b, .btn strong, h1 b, h1 strong, h2 b, h2 strong, h3, h3 b, h3 strong { font-weight: normal !important; }

em, i, .italic { font-style: italic; }
hr { height: 2px; margin: 1.5em 0 2em; background: #C0D5E1; border: none; clear: both; display: block; }
hr.thin { height: 1px; }
iframe { border: 0; }
cite { display: block; }
p { padding: 0; margin: 0.25em 0 1.255em 0; line-height: 1.875em; }
@media(max-width:767px) {
	p { line-height: 1.675em; }
}
h3 + p { margin-top: 1.5em; }
p + h3, p + h4, p + h5 { margin-top: 1.5em !important; }
h3 + ul, h4 + ul { margin-top: 1em; }
.c, .text-center { text-align: center; }
.r, .text-right { text-align: right; }
.l, .text-left { text-align: left; }
.j, .text-justified { text-align: justify; }
.large, .text-large { font-size: 1.125em; }
.larger, .text-larger { font-size: 1.5em; }
.largest, .text-largest { font-size: 1.75em; }
.small, .text-small { font-size: 0.9125em; }
.smaller, .text-smaller { font-size: 0.775em; }
.smallest, .text-smallest { font-size: 0.5925em; }
.text-normal { font-weight: normal !important; }
.ucase { text-transform: uppercase; }
.nowrap, nowrap { white-space: nowrap; }
.padtop { padding-top: 1em !important; }
.padtop.x2 { padding-top: 2em !important; }
.padtop.x3 { padding-top: 3em !important; }
.padtop.x4 { padding-top: 4em !important; }
.padtop.x5 { padding-top: 5em !important; }
.pad { padding: 1.5em 1em; }
.inline-block { display: inline-block; }
.reversed, .reversed h1, .reversed h2, .reversed h3, .reversed h4, .reversed h5, .reversed h6 { color: #fff; }
span.caption { line-height: 1.25; font-size: 0.75em; font-style: italic; display: block !important; margin-top: 10px; }
.reversed .caption { color: #fff; }

ul + h3, p + h3, ul + h4, p + h4 { margin-top: 2em; }
h4 + ul { margin-top: 1.5em; }

/* IMAGES */
img, object, embed { max-width: 100%; /* makes images scale to container */ }
img { -ms-interpolation-mode: bicubic;   /* Internet Explorer 7.0; default in IE8+ */ }
img.fit { width: 100%; height: auto; }
img.fit.vert { height: 100%; width: auto; }
img.wp-post-image { height: 100%; width: auto; }

/* UI */

form.wpcf7-form { font-size: 1.125em; }
form input[type=text], form input[type=password], form input[type=tel], form input[type=date], form input[type=datetime-local], form input[type=color], form input[type=number], form input[type=url], form input[type=time], form input[type=week], form input[type=email], form textarea { 
padding: 0.5em 0.75em; font-size: 1em;
}
.form-check { margin: 0.5em 0; }
.form-check .wpcf7-list-item { display: block; }

ul.list-icons, ul.favorites-list button.simplefavorite-button { font-size: 17px; vertical-align: middle; text-align: center; }
ul.list-icons a, ul.list-icons button, ul.favorites-list button.simplefavorite-button { color: #333; color: rgba(0,0,0,0.6); padding: 0; display: inline-block; background: rgba(255,255,255,0.5); line-height: 1 !important; border-radius: 17px; width: 24px !important; height: 24px; }
ul.list-icons a:hover, ul.list-icons button:hover, ul.list-icons button.active, ul.favorites-list button.simplefavorite-button.active { background: #fff; color: #B72526; }
ul.list-icons button.active, ul.favorites-list button.simplefavorite-button.active { border: solid 1px pink; width: 23px; height: 23px; }
ul.list-icons a span, ul.list-icons button span, ul.favorites-list button.simplefavorite-button span { margin-top: 3px !important; display: inline-block; }
ul.list-icons button span, ul.favorites-list button.simplefavorite-button span { margin-left: -1px; margin-top: 2px !important; }
ul > li { margin-bottom: 0.5em; }
ol li { margin-bottom: 1em; }

/* MISC */
.unfinished { background: yellow; }
a.unfinished, a[href='#'] { background: inherit; text-decoration: underline; text-decoration-style: wavy; text-decoration-color: crimson;  }
/*p + ul { margin-top: -0.75em;}
ol { margin-bottom: 1.5em; }
ol > li { margin-bottom: 1em; }
ul { margin-bottom: 1em; }*/
ul.cols {  }
ul.cols li { width: 50%; float: left; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
ul.menu, ul.nolist, ol.nolist { list-style: none; list-style-image: none; margin: 0; padding: 0; }
ul.menu > li, ul.nolist > li, ol.nolist > li { display: block; margin-left: 0; padding: 0; }
ul.menu.menu-horz > li { width: auto; display: inline-block;  margin-right: 0.25em; }
ul.menu.menu-vert { padding-left: 1em; }
ul.menu.menu-vert > li { line-height: 1.25; margin-bottom: 0.75em; }
ul.menu.menu-vert ul { padding-left: 1em; }
ul.menu span.menu-item-date { color: #999; font-weight: normal; font-size: 0.875em; }
ul.menu span.menu-item-date:before { content: ' '; min-width: 0.35em; display: inline-block; }
ul ul { margin-top: 0.75em; }
.note, .notes { font-size: 0.75em; color: #666; font-style: normal; line-height: 1.4em; }
.stretch, .full-width { width: 100%; }

p sup, a sup { opacity: 0.5; font-size: 0.65em;}
sup.cite { opacity: 1; font-size: 10px !important; font-weight: normal !important; vertical-align: middle; margin-left: 2px }
ol.citation { font-style: italic; font-size: 12px; }
ol.citation li:target {  background: lightyellow; }

img.border { border: solid 2px #fff; box-shadow: 0 1px 6px rgba(0,0,0,0.25); margin: 0.75em 0; }
img.circle { border-radius: 500px;}

/* HELPERS */

/* LAYOUT */
#outer { position: relative; }
main { min-height: 500px; }
@media(min-width:1200px) {
.container { max-width: 1199px; }
}

/* special fade in */
@media(min-width:768px) {
.fade-on-scroll { opacity: 0; -ms-transform: translateY(50px); -webkit-transform: translateY(50px); transform: translateY(50px); }
.fade-on-scroll.active { opacity: 1; -ms-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); -ms-transition: all 1s ease; -webkit-transition: all 1s ease; transition: all 1s ease; }
}
section.content { min-height: 1000px; }
/* HEADER */
#main-header { position: static; left: 0; top: -100px; width: 100%; z-index: 999; }
#main-header a { color: inherit; text-decoration: none; }
#header-main-block { color: #fff; padding: 0; background-color: var(--theme-blue); border: solid 0 #7fb5d6; border-width:0 0 0 0; }
#header-main-block > .container { background: url(../images/header-bg.png) no-repeat 0 50%; background-size: auto 100%; }
#header-main-block > .container > .row { min-height: 100px; }

#mainlogo-img2 { display: none; }
#main-header .logo-cutline { padding: 0 1em; font-size: 0.75em; font-weight: bold; opacity: 0.65; }
#main-header .info-col { font-size: 1.05em; }
#main-header .info-col .sep { margin-left: 0.5em; margin-right: 0.5em; }
#main-header.affix { position: fixed; top: 0; -ms-transition: top 0.5s; -webkit-transition: top 0.5s; transition: top 0.5s; }
#main-header.affix #header-main-block { background-color: rgba(72,131,165,0.95); border-bottom: solid 1px rgba(0,0,0,0.1)}
#main-header.affix #header-main-block > .container { background:none; }
#main-header.affix #header-main-block > .container > .row { height: 36px; min-height: 36px; display: flex }
#main-header.affix #mainnavbar { padding: 0; margin-top: 4px }
#main-header.affix #mainlogo-img { display: none; }
#main-header.affix #mainlogo-img2 { display: inline-block; margin-top: -3px; }
#header-affix-slug { height: 0; display: block; }
#main-header.affix +#header-affix-slug { height: 100px; }

/* MAIN NAV */

#mainnavbar { padding-right: 0; margin-top: 0.35em; font-size: 0.9em; }
#mainnavbar ul.navbar-nav > li > a { font-weight: bold; padding-top:0.5em; padding-bottom: 0.5em; padding-left: 0.75em; padding-right: 0.75em; }
#mainnavbar ul.navbar-nav > li > a.dropdown-toggle::after { display:inline-block; width:0; height:0; vertical-align:.255em; content:'\e806'; font-family: 'fontello'; font-style: normal; font-weight: normal; speak: none; font-variant: normal; text-transform: none; line-height: 1em; margin-left: 0.2em; margin-right: 0.25em; font-size: 0.65em; border: none !important; }
#mainnavbar ul.navbar-nav > li > a.dropdown-toggle[aria-expanded='true'] { background:#2e7198 }
#mainnavbar ul.navbar-nav > li > a.dropdown-toggle[aria-expanded='true']::after { content: '\e807' }
#mainnavbar ul.navbar-nav > li.current_page_ancestor > a, #mainnavbar ul.navbar-nav > li.current-menu-item > a, #mainnavbar .dropdown a.current-menu-item { font-style: italic; }
#mainnavbar .dropdown-menu a { font-weight: normal !important; font-size: 1em !important;}
li.btn-navbar > a { background: #f4eeba; border-radius: 3px;  padding-left: 1em !important; padding-right: 1em!important; display: inline-block; }
li.btn-navbar > a:hover { background:#55bf28 }
button.navbar-toggler { border: none; border-color: #fff; border-radius: 3px; margin: 0; padding-top: 0 !important; padding-bottom: 0; font-size: 1.5em; }
button.navbar-toggler span.icon-menu { color: #fff !important; }

#mainnavbar .dropdown-menu { margin: 0; top: 45px; color: #fff; background: #2e7198; padding-top: 1em; padding-bottom: 1em; min-width: 14em; border: none; -webkit-border-radius: 0; border-radius: unset; box-shadow: 0 3px 3px rgba(0,0,0,0.1)}
#mainnavbar .dropdown-menu a.dropdown-item:hover { background: rgba(255,255,255,0.15); }

#main-header.affix #mainnavbar ul.navbar-nav > li > a { padding-top: 1px; padding-bottom: 5px; }
#main-header.affix #mainnavbar .dropdown-menu { top: 33px !important; }

.top-social.dropdown a[aria-expanded=true] { background: #437094; border-radius: 10% 10% 0 0; }
.top-social.dropdown a:after { display: none; }
.top-social.dropdown h5 { margin-bottom: 1em; }
.top-social.dropdown .dropdown-menu { border: none; background: #437094 !important; color: white;  border-radius: unset; margin-left: -16em; margin-left: clamp(-280px, -280px - 10vw, -470px); width: 16em; width: clamp(300px, 200px + 10vw, 380px); line-height: 1.35em !important; padding:1em !important; }
.top-social.dropdown .dropdown-menu p {font-size: 0.875em; margin-bottom: 1em; line-height: inherit;}

/* mega-menu */
@media(min-width: 992px) {
#mainnavbar li.mega-menu { position: static;}
#mainnavbar li.mega-menu > .dropdown-menu { width: 992px; margin-left: -45%; }
	li.mega-menu> #contact-dropdown.dropdown-menu { width: 700px; margin-left: 10%; }
	.mega-menu .dropdown-menu { top: 54px !important; padding: 2em 1em 1em !important; text-align: left; }
	.mega-menu .dropdown-menu h4 > a { font-weight: bold !important; }
	.mega-menu .dropdown-menu p.description { font-size: 0.75em; line-height: 1.25; }
	.mega-menu .dropdown-menu h4 a { text-decoration: underline !important; }
	.mega-menu .dropdown-menu .menu-item a { }
	.mega-menu .dropdown-menu .menu-item a:hover { text-decoration: underline !important; }
	.mega-menu .dropdown-menu .menu-item a:before { content: '\e804'; color: rgba(255,255,255,0.25); display: inline-block; font-size: 0.875em; width: 1em; font-family: fontello; }
	.mega-menu .dropdown-menu .menu-item a:hover:before { color: white; } 
	.mega-menu .dropdown-menu li.current-menu-item a { font-weight: bold !important; font-style: italic; }
	.mega-menu .dropdown-menu ul.menu { font-size: 0.875em; line-height: 1.25; }
	.mega-menu .dropdown-menu div.col-lg-4 {padding-left: 8px; padding-right: 5px; padding-top: 0.5em; padding-bottom: 0.5em; }
	.mega-menu .dropdown-menu .col-lg-4 .row > div.col-lg-3  { padding-right: 0 !important;}
	.mega-menu .dropdown-menu .row > div.col-lg-4:last-child { border-right: none; }
	#main-header.affix .mega-menu .dropdown-menu { top: 33px !important; }
}

@media(max-width: 1199px) and (min-width: 992px) {
	#main-header .logo-cutline { display: none; }
	.mega-menu .dropdown-menu { top: 49px !important; }
	#mainnavbar li.mega-menu > .dropdown-menu { width: 980px; margin-left: -40%; }
	li.mega-menu > #contact-dropdown.dropdown-menu { width: 720px; margin-left: 7%}

}
@media(max-width: 1199px) {
}
@media(max-width: 991px) {
	#mainnavbar { position: static !important; }
	#main-header .info-col, #main-header .nav-row .nav-col { position: static !important; }
	#mainnavbarCollapse { text-align: left; border-top: solid 1px #fff; z-index: 999; position: absolute; right: 12px; top: 60px; margin-top:0 !important; width: 60%; min-width: 300px; background:var(--theme-blue); padding: 1em; max-height: 85vh; overflow-y:auto  }
	.affix #mainnavbarCollapse { top: 33px; max-height: 94vh }
	#mainnavbar .nav-link, #mainnavbar .dropdown-menu { background: none !important; }
	#mainnavbar div.dropdown-menu { box-shadow: unset !important; padding:0; font-size: 1em; }
	#main-header .logo-cutline { display: none; }
	.mega-menu .dropdown-menu p.description { display: none; }
	.mega-menu .dropdown-menu { font-size: 0.875em !important; padding-left: 2em !important;}
	.mega-menu .dropdown-menu ul.menu { padding-left: 1em; }
}
@media(max-width: 480px) {
	#main-header { font-size: 0.875em;}
	#mainnavbar div.dropdown-menu { font-size: 1em; }
	#main-header img#mainlogo-img { max-height: 80px;}
	#main-header .info-col .sep { display: none; }
	#mainnavbarCollapse { top: 72px; }
}
@media(max-width: 319px) {
	#main-header .top-social { display: none; }
}

/* HELPERS */
.intro-text { font-size: 1.125em; color: #717174;}
.intro-text + p, .intro-text + ul { margin-top: 1.5em; }
.bg-info, .bg-blue { background-color: var(--theme-blue) !important; }
.bg-warning, .bg-orange { background-color: #FFD600 !important; }

/* COMPONENTS */
.section-cta { text-align: center; }
.section-cta h1, .section-cta h2 { border-bottom: solid 3px; border-color: var(--theme-orange); padding: 0 0.5em 0.25em; display: inline-block; clear: both; }
.section-cta.orange-bg h1, .section-cta.orange-bg h2 { border-color: #fff !important;; }
.section-cta p { line-height: 1.75em;}
@media(min-width:992px) {
	.section-cta {font-size: 1.25em;}
}

.hero { background-color: #4582A7 !important; text-align: center; color: #fff; padding-top: 12%; padding-bottom: 12%; }
.hero h1 { margin: 0; font-size: 2em; padding: 0.75em 2em; display: inline-block; border: solid 6px rgba(255,255,255,0.25); background: rgba(9,17,20,0.5) }
.hero.hero-dark-overlay { position: relative; }
.hero.hero-dark-overlay:before { content: ''; position: absolute; left: 0; right: 0; top: 0; bottom: 0; background: transparent url(../images/hero-bg-overlay.png) no-repeat 50%; background-size: 100% 100%; }
.hero h1 { font-size: 1.75em; }

@media(max-width: 480px) {
	.hero { padding-top: 45%; padding-bottom: 45%; }
	.hero h1 { font-size: 1.5em; }
}

/* lightbox */
.ekko-lightbox + div.modal-backdrop { opacity: 0.85; }
.ekko-lightbox > div.modal-dialog > div.modal-content { background: none; border: none; padding: 0 !important; }
.ekko-lightbox .modal-body { padding-left: 2px; padding-right: 0; padding-top: 0; padding-bottom: 2px;}
.ekko-lightbox .modal-header { background: none !important; border: none; padding: 0; padding-right: 30px; color: white; }
.ekko-lightbox .modal-header * { background: none; }
.ekko-lightbox button { color: #fff !important; opacity: 1; }
.ekko-lightbox .modal-footer { position: absolute; left: 2px; right: 0; bottom: 1px; border-radius: unset; border: none; color: white; padding: 5px 0; font-size: 0.875rem; display: block; text-align: center !important; background-color: rgba(0,0,0,0.65); }


/* video launcher */
.responsive-video-launcher { position: relative; padding-bottom: 56.65%; background-position: 50%; background-repeat: no-repeat; background-size: cover; }
.responsive-video-launcher a.vid { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-position: 50%; background-repeat: no-repeat; background-size: cover; }
a.vid { position: relative; }
a.vid .icon-youtube { position: absolute; left: 50%; top: 40%; line-height: 1; font-size: 3em; color: #fff; opacity: 0.75; transform: translate(-50%,-50%) }
a.vid:hover .icon-youtube { opacity: 1; }
/*.responsive-video-launcher a.vid:before { content: '\e072'; font-family:'Glyphicons Halflings'; font-size: 3em; font-size: 7vw; color: rgba(255,255,255,0.5); text-shadow: 1px 1px 2px rgba(0,0,0,0.25); position: absolute; left: 50%; top: 50%; -ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.responsive-video-launcher a.vid:hover:before { color: rgba(255,255,255,0.75)}*/
#videoModal .modal-content { background: var(--text-body) !important; top: 50vh; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
#videoModal + .modal-backdrop { opacity: 0.85;}
#videoModal .modal-body { padding: 0 !important; }
#videoModal button.close { position: absolute; right: -48px; top: 0px; z-index: 999; font-size: 48px; color: #fff; text-shadow: 1px 1px 0 var(--text-body); opacity: 0.7; }
@media(max-width: 767px) {
#videoModal button.close { top: 102%; right: 30px; }
}
@media(min-height: 668px) {
	#videoModal .modal-dialog { max-width: 1080px; }
}


/* CONTENT */
p.read-more { font-size: 0.875em !important;}
.read-more, .readmore, .more { white-space: nowrap; }
a.tel { color: inherit; }


/* APPOINTMENT BUTTON & MODAL */
#appointment-button { text-align:center; position: fixed; z-index: 99; white-space: nowrap; margin: 0; }
#appointment-button button, #appointment-button a { outline: none; background:var(--theme-orange); border: solid 1px #fff; border-width: 1px 0 1px 1px; border-color: rgba(255,255,255,0.5); font-weight:bold; display: inline-block; color: var(--text-body); padding: 5px 10px; text-decoration: none; text-transform: uppercase; }
.three-button-modal { background: rgba(0,0,0,0.65); }
.three-button-modal .modal-content, .three-button-modal .modal-header { border: none; background: none; }
.three-button-modal button.close { color: #fff; text-shadow: unset; font-size: 3rem; position: absolute; right: 40px; top: 20px; }
.three-button-modal .btn-container { margin-top: 1em; margin-bottom: 2em; clear: both; }
.three-button-modal .btn-container a { font-size: 1.25em; line-height: 1; background-color:var(--theme-orange); color: black !important; display: block; box-shadow: 1px 1px 36px rgba(0,0,0,0.8);}
.three-button-modal .btn-container a.btn span.icon { display: inline-block; transform: translateY(-3px)}
.three-button-modal .btn-container a.btn:hover { background-color: #F7DE62; border-color: #F7DE62; color: #CD2E0A !important; }
.three-button-modal .btn-container a.btn:hover:after { display: none; }
@media(min-width:768px) {
#appointment-button { left: calc(100% - 206px); top: 50%; transform: rotate(90deg); }
}
@media(max-width: 767px) {
	#appointment-button { left: 0; right: 0; top: auto; bottom: 0; width: 100%; height: auto;  }
	#appointment-button button, #appointment-button a { height: auto; width: 33.32%; font-size: 0.75em; padding-top: 3px; padding-bottom: 3px; }
}
@media(max-width: 470px) {
	.three-button-modal .btn-container a { font-size: 1em; padding-left: 0 !important; padding-right: 0 !important; }
	.three-button-modal button.close { font-size: 2rem; position: relative; top: auto; right: auto; }
	
}

/* PAGINATION */
.pagination > a { display: inline-block; margin-left: 1px; margin-right: 1px; border: solid 1px #f1f1f1; padding-left: 2px; padding-right: 2px; min-width: 1em; }
.pagination > a:hover { background: #00BBE7; color: #fff; border: solid 1px #00BBE7; }
.pagination span.current {  font-size: 1.5em; vertical-align: middle; margin-left: 5px; margin-right: 5px;  }
.pagination li.page-item.active > span { background: var(--theme-blue); }

/* SIDEBAR */
.sidebar h4 { color: #717174; font-weight: normal; font-size: 1.75em; margin-bottom: 0.75em; }
.sidebar h4 a { color: inherit; }
.sidebar .well { padding: 1.5em 1.5em 1em !important; }
.sidebar .posts-well { border-bottom: solid 2px #e3e3e3; padding-bottom: 1em;margin-bottom: 1em; }
.posts-well ul.menu { padding: 0; }
.posts-well ul.menu li { padding: 0; }
.posts-well ul.menu li span.menu-item-date { display: none; }

/* TESTIMONIALS */
blockquote.testimonial { padding: 0; padding-bottom: 1em; background: #fefefe; padding: 1em;  }
blockquote.testimonial q { quotes: none; }
blockquote.testimonial cite { margin: 0; text-align: right; display: block; margin-right: 1em; }
blockquote.testimonial cite span {  display: block;  }
blockquote.testimonial cite span.title { font-size: 0.875em; font-weight: normal; }


/* SEARCH FORM & RESULTS */
button.btn-search { padding: 0.5em 5px 0.45em; margin-left: 0; line-height: 1em; position: relative; color: #aaa; font-size: 15px; background:#FF544D; color: #fff;  }
@media(max-width: 767px) {
button.btn-search { padding: 0.4em 5px 0.4em}
}
form.main-site-search { position: relative; }
form.main-site-search input { border: none; font-size: 0.875em; padding: 2px 28px 2px 2px; width: 150px; color: #555759; }
form.main-site-search button { font-size: 16px; background: none; padding: 0px; line-height: 1em; color: #ccc; left: 100%; top: 50%; margin-left: -20px; margin-top: -8px; position: absolute; }
.search-results article { margin-top: 1em; }
.search-results article h5, body.search-results article .post-info { display: inline-block; margin: 0 1em 0 0; }
.search-results article h5 { font-size: 1.25em; }
.search-results article.page .post-info { display: none; }
.search-results article .post-info { font-size: 0.75em; color: #999; }
.search-results article { border-bottom: solid 1px #fff; }
.search-results  h2 { font-size: 1em !important; color: #1B4E84 !important; font-style: normal; }
.search-results h2 em { font-size: 1.75em;  }

/* FOOTER */
.footer-map-block { position: relative; border: solid 6px white; border-width: 6px 0 0; display: block; padding-top: 12%; min-height: 150px; background: #E1F1FE url(../images/map-bg.jpg?v2) no-repeat 50%; background-size: auto 160% }
.footer-map-block a { display: block;  height: 100%; width: calc(50% - 5px); position: absolute; top: 0; left: 0; }
a#map-link-location-2 { right: 0; left: auto; }
@media(min-width:1700px) {
	.footer-map-block { min-height: 300px !important; padding-top: 0; background-size: auto 100%; }
}
footer.main .main-footer-block { background-color: var(--theme-blue); color: #fff; font-size: 0.9em; padding: 1em 0 0; background-image: url(../images/footer-bg.jpg); background-repeat: no-repeat; background-position: 95% 0 }
footer.main .logo { margin-bottom: 1em; margin-top: -30%;}
footer.main .container { padding-top: 1em; padding-bottom: 1em; }
footer.main .col-md { padding-bottom: 1em; }
footer.main a { text-decoration: none; color: inherit; }
footer.main h4 { color: inherit; }
footer.main ul.nav { line-height: 1.125em; }
footer.main nav > ul.menu > li > a { font-weight: bold; }
footer.main ul.menu-children { margin: 0.25em 0; }
footer.main ul.menu-children { padding-left: 0.5em; }
footer.main .socicons { font-size: 1.5em; }
footer.main .disclaimer-row p { line-height: 1.25; }
@media(min-width: 768px) {
footer.main ul.menu.parent > li { float: left; width: 25%; }
footer.main .info-wrapper p { margin-bottom: 0; padding-left: 2em; }
footer.main .info-wrapper { padding-bottom: 1em; padding-left: 1.5em; position:relative; }
footer.main .info-wrapper > span { font-size: 1.125em; color: #EB1C24; position: absolute; left: -4px; top: 0; }
footer.main .socicons { font-size: 1.5em; padding-left: 2em; padding-right: 2em; }
}
@media(max-width: 991px) {
	footer.main .logo { margin-top: -85px; }
	.footer-map-block a {  background-size: auto 150%; }
}
@media(max-width: 767px) {
	footer.main { text-align: center; }
	footer.main .logo img { max-height: 150px;}
}

/* CONTACT FORM 7 */
div.wpcf7 { margin: 0; padding: 0; }
div.wpcf7-response-output { margin: 2em 0.5em 1em; padding: 0.2em 1em; }
.invalid .wpcf7-response-output { border-left: solid 4px darkred; color: darkred; background: pink; padding: 1em; }
div.wpcf7 .screen-reader-response { position: absolute; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); height: 1px; width: 1px; margin: 0; padding: 0; border: 0; }
div.wpcf7-mail-sent-ok { border: 2px solid #398f14; }
div.wpcf7-mail-sent-ng { border: 2px solid #ff0000; }
div.wpcf7-spam-blocked { border: 2px solid #ffa500; }
div.wpcf7-validation-errors { border: 2px solid #f7e700; }
.wpcf7-form-control-wrap { position: relative; }
span.wpcf7-not-valid-tip { color: #f00; font-size: 1em; display: block; }
.use-floating-validation-tip span.wpcf7-not-valid-tip { position: absolute; top: 20%; left: 20%; z-index: 100; border: 1px solid #ff0000; background: #fff; padding: .2em .8em; }
span.wpcf7-list-item { display: block; margin: 0; }
.wpcf7-display-none { display: none; }
div.wpcf7 img.ajax-loader { border: none; vertical-align: middle; margin-left: 4px; }
div.wpcf7 div.ajax-error { display: none; }
div.wpcf7 .placeheld { color: #888; }
div.wpcf7 .wpcf7-recaptcha iframe { margin-bottom: 0; }
div.wpcf7 input[type="file"] { cursor: pointer; }
div.wpcf7 input[type="file"]:disabled { cursor: default; }
div.wpcf7 .form-check-inline label { margin-right: 1em; }
.form-check-inline .wpcf7-form-control-wrap .wpcf7-list-item { display: inline-block !important; }

/* CUSTOM */
span.req { color: darkorange; font-family: Arial, sans-serif; }
.wpcf7-not-valid-tip { color: #fff !important; background: darkred; display: inline-block !important; font-size: 12px !important; padding: 2px 6px; font-family: Arial, sans-serif; }
.wpcf7-validation-errors { border: none !important; color: darkred; background: lightpink; text-align: center; }
.form-check-input { width: auto; margin: 0; position: static; }
.form-check-input label, .form-check-input input { margin-right: 5px}


/* WORDPRESS / TINYMCE MODS */
img.alignnone { display: inline; vertical-align: middle; }
img.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }

@media(min-width:768px) {
img.alignright { float: right; margin: 0 0 1em 1em; max-width: 66.666%; }
img.alignleft { float: left; margin: 0 1em 1em 0; max-width: 66.666%; }
.alignright { float: right; }
.alignleft { float: left; }
}



/* BOOTSTRAP MODS */
.border { -webkit-box-shadow: unset !important; box-shadow: unset !important; }
img.border { border-width: 2px !important; }
.text-info { color: #00B1EE !important; }

/* buttons */
.btn, input.sow-submit { text-transform: uppercase; white-space: normal; color: var(--theme-red) !important; background: none; border: solid 4px var(--theme-orange); line-height: 1em; padding: 1em 2em !important; -webkit-border-radius: 0; border-radius: unset; font-size: 1.08em; font-weight: bold; }
.btn, input.sow-submit { overflow: hidden; position: relative; }
.btn > span { position: relative; z-index: 1; }
.btn:after, input.sow-submit:after { content: ''; background: rgba(255,255,255,0.75); position: absolute; z-index: 0; visibility: hidden; width: 100%; height: 100%; top: 0; left: 0;-ms-transition: all 0.25s linear; -webkit-transition: all 0.25s linear; transition: all 0.25s linear; -webkit-transform: scale(0.01) rotate(35deg); -ms-transform: scale(0.01) rotate(35deg); transform: scale(0.01) rotate(35deg); }
.btn:hover:after, input.sow-submit:after { visibility: visible; -ms-transition: all 0.25s linear; -webkit-transition: all 0.25s linear; transition: all 0.25s linear;  -ms-transform: scale(5) rotate(35deg); -webkit-transform: scale(5) rotate(35deg); transform: scale(5) rotate(35deg);}
.btn.btn-sm { font-size: 0.75em; }
.btn.btn-default, .btn.btn-primary { background: rgba(255,255,255,0.25);  }
.reversed .btn { border-color: #fff; color: #fff !important; }
.reversed .btn:after, .reversed input.sow-submit:after { background: rgba(255,255,255,0.25); }
.btn.btn-solid { border: none; background: var(--theme-orange); color: var(--text-body) !important; }
.btn.btn-solid.btn-sm { padding: 0.75em 1.5em !important; }
.input-group > .form-control:first-child { border-right: none; border-radius: 0 0 0 0 !important;}
.input-group .btn { font-size: 1em !important; padding: initial !important; padding-left: 0.5rem !important; padding-right: 0.5rem !important; background: var(--theme-orange); color: black !important; border-radius: 0 3px 3px 0; }

/* carousel */
.carousel-caption { background: rgba(0,0,0,0.25); padding: 0 1em 0.5em !important; line-height: 1em; border: solid 2px rgba(255,255,255,0.25)}
.carousel-caption a { display: block; margin: 0; }
a.carousel-control { color: #fff !important; font-size: 2em; }

/* tabs */
ul.nav-tabs { border: none; }
ul.nav-tabs > li > a { color: inherit !important; font-weight: bold; border-radius: 0 !important; border: none !important; padding: 0.5em 2em 1em; }
ul.nav-tabs > li > a.active { background: #fefefe; }
ul.nav-tabs + .tab-content { background: #fefefe; padding: 2em;  }
@media(max-width: 767px) {
	ul.nav-tabs > li { display: block !important; float: none !important; width: 100%;}
	ul.nav-tabs > li > a { padding-bottom: 0.5em; }
	ul.nav-tabs + .tab-content { padding: 1.5em 1em; }
}



/* misc */
img.pull-left { margin-right: 1.5em; }
img.pull-right { margin-left: 1.5em; }
.form-control { -webkit-border-radius: 0; border-radius: unset; }
form label { margin-bottom: 0; }
form h4 { font-size: 1.25em; color: #003f81}
input.form-control { }
.well { padding:1em; border-radius: 0; background: rgba(255,255,255,0.25); border: solid 2px #C7E0E6;  -webkit-box-shadow: none; box-shadow: unset; }
.well > h2, .well > h3, .well > h4 { margin-top: 0; }
.well > *:last-child { margin-bottom: 0; padding-bottom: 0; }


/* modal */
.modal-dialog.modal-sm { width: 100%; max-width: 360px; }
.modal-sm .modal-header { color: #fff; padding-top: 0.5em; padding-bottom: 0.5em; background: #006794; border-radius: 4px 4px 0 0; }
.modal-sm .modal-header * { color: inherit; }
.modal-sm .modal-header button.close { text-shadow: unset; font-size: 32px; float: none; position: absolute; right: 10px; top: 8px; }
.modal-body iframe { border: none; width: 100%; }

/* structure */

.css-col-2 p, .css-col-3 p, .css-xs-col-2 p, .css-xs-col-3 p, .css-sm-col-2 p, .css-sm-col-3 p, .css-md-col-2 p, .css-md-col-3 p { margin-top: 0; margin-bottom: 1.75em; line-height: 1.75em;}
.css-col-2 li, .css-col-3 li, .css-xs-col-2 li, .css-xs-col-3 li, .css-sm-col-2 li, .css-sm-col-3 li, .css-md-col-2 li, .css-md-col-3 li { line-height: 1.25em; margin-top: 0; margin-bottom: 0.75em; }

.css-xxs-col-3 { -moz-column-count: 3; -webkit-column-count: 3; column-count: 3; -moz-column-gap: 1.5em; -webkit-column-gap: 1.5em; column-gap: 1.5em;}
.css-xxs-col-2  { -moz-column-count: 2; -webkit-column-count: 2; column-count: 2; -moz-column-gap: 2em; -webkit-column-gap: 2em; column-gap: 2em;}

@media(min-width:480px) {
.visible-xxs, .visible-xxs-block { display: none; }
.css-xs-col-3 { -moz-column-count: 3; -webkit-column-count: 3; column-count: 3; -moz-column-gap: 1.5em; -webkit-column-gap: 1.5em; column-gap: 1.5em;}
.css-xs-col-2  { -moz-column-count: 2; -webkit-column-count: 2; column-count: 2; -moz-column-gap: 2em; -webkit-column-gap: 2em; column-gap: 2em;}
}

@media (min-width: 768px) {
.css-col-3, .css-sm-col-3 { -moz-column-count: 3; -webkit-column-count: 3; column-count: 3; -moz-column-gap: 1.5em; -webkit-column-gap: 1.5em; column-gap: 1.5em;}
.css-col-2, .css-sm-col-2 { -moz-column-count: 2; -webkit-column-count: 2; column-count: 2; -moz-column-gap: 2em; -webkit-column-gap: 2em; column-gap: 2em;}
}
@media (min-width: 992px) {
.css-col-3, .css-md-col-3 { -moz-column-count: 3; -webkit-column-count: 3; column-count: 3; -moz-column-gap: 1.5em; -webkit-column-gap: 1.5em; column-gap: 1.5em;}
.css-col-2, .css-md-col-2 { -moz-column-count: 2; -webkit-column-count: 2; column-count: 2; -moz-column-gap: 2em; -webkit-column-gap: 2em; column-gap: 2em;}
}

@media(max-width: 479px) {
.hidden-xxs { display: none !important; }
.visible-xxs, .visible-xxs-block { display: block !important; }
}

/* page fade in effect */
#outer{opacity:1;-o-transition:opacity 500ms linear;-webkit-transition:opacity 500ms linear;-ms-transition:opacity 500ms linear;transition:opacity 500ms linear;}