﻿* { font-family: "Manrope", Arial, Helvetica, "sans-serif"; box-sizing: border-box; }

body { background: #004a33; color: #fff; margin: 0; padding: 0; font-size: 1rem; line-height: 1.25rem; text-align: center; }
img { display: block; width: 100%; height: auto; border: 0; }
form { margin: 0; padding: 0; }
input, select, textarea { font-family: "Manrope", Arial, Helvetica, "sans-serif"; font-size: 18px; border: 1px solid #ccc; background: #fff; color: #000; padding: 5px; width: 100%; }
input[type=checkbox], input[type=radio] { width: auto; border: 0; background: transparent; color: #000; padding: 0; }
form input.invalid, form textarea.invalid, form select.invalid, .selectBox-dropdown.invalid { border: 1px solid #fff; background: #fee; background: #fff11; }
fieldset { margin: 30px 0; border: 1px solid #ccc; }
fieldset legend { font-weight: bold; padding: 0 10px; font-size: 22px; color: #fff; }
button { font-family: "Manrope", Arial, Helvetica, "sans-serif"; background: #004a33; border: 1px solid #004a33; color: #fff !important; line-height: 40px; padding: 0 20px; text-transform: uppercase; text-decoration: none; letter-spacing: 0.15rem; font-size: 13px; font-weight: normal; }
.clear { clear: both; }
.centered { text-align: center; }
.hidden { display: none; }

::selection { color: rgba(255,255,255,0.5); background: rgba(0,0,0,0.5); }
::-moz-selection { color: rgba(255,255,255,0.5); background: rgba(0,0,0,0.5); }

header { background: #004a33; color: #fff; position: fixed; top: 0; right: 0; left: 0; padding: 1rem 2rem; text-align: center; z-index: 2; }
header section { margin: 0 auto; padding: 0; display: flex; justify-content: space-between; align-items: end; width: 1200px; height: 70px; border-bottom: 1px solid #fff8; }
header section #logo { display: inline-block; text-decoration: none; width: 170px; margin: 0 0 0.5rem 0; }
header section #logo img { display: block; width: 100%; height: auto; }
header section nav { margin: 0; user-select: none; }
header section nav ul { list-style: none; margin: 0 0 10px 0; padding: 0; display: flex; justify-content: space-between; gap: 2rem; }
header section nav ul li {}
header section nav ul li:after { content: ""; height: 4px; background: #fff; position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; width: 0; transition: all 0.3s ease; }

header section nav ul li > a { position: relative; display: block; cursor: pointer; margin: 0; padding: 0; color: #fff; text-transform: uppercase; text-decoration: none; letter-spacing: 0.15rem; font-size: 13px; font-weight: normal; transition: all 0.3s ease; line-height: normal; background: transparent; border: none; }
header section nav ul li > a:after { content: ""; width: 0; background-color: #fff; height: 2px; position: absolute; left: 50%; bottom: 0; transition: all 0.3s ease; }

header section nav ul li > a:hover, header section nav ul li > a:focus { color: #fff; }
header section nav ul li > a:focus { outline: 3px dotted #fff; }

header section #siteid { position: absolute; top: 37.5px; left: 200px; line-height: 45px; font-size: 30px; display: block; background: #fff; color: #004a33; width: 45px; height: 45px; border-radius: 100%; text-align: center; }
header #mobile-nav { display: none; }

main { position: relative; background: #fff; color: #676767; padding: 85px 0 40px 0; text-align: center; z-index: 1; }
main * { color: inherit; }
main section.photo { width: auto; margin: 0; padding: 0; }
main section.stripe { width: auto; margin: 0; padding: 0; height: 40px; background: rgba(213,31,57,0.25); }
main section { position: relative; width: 1200px; margin: 0 auto; padding: 40px 0; text-align: left; }
main section h1 { font-size: 6rem; line-height: 8.2rem; font-weight: 400; color: #004a33; }
main section h2 { font-size: 4rem; line-height: 5.5rem; margin: 0 0 14px 0; font-weight: 400; color: #004a33; }
main section h3 { font-weight: 300; font-size: 25px; line-height: 30px; margin: 40px 0 20px 0; color: #004a33; }
main section p { font-size: 18px; margin: 20px 0; }
main section li { line-height: 25px; }
main section blockquote { margin: 20px 0; padding: 10px 20px 20px 20px; background: #f5f5f5; }
main section blockquote p { margin: 10px 0 0 0; width: 420px; }
main section a { text-decoration: none; font-weight: bold; cursor: pointer; }
main section a.pdf { display: block; line-height: 20px; background: url("/images/pdf-icon.png") no-repeat 0 50%; padding-left: 26px; background-size: contain; text-decoration: none; margin: 5px 0; font-weight: normal; }
main section img { display: block; width: 100%; height: auto; margin: 0; padding: 0; }
main section form { margin: 15px 0; }
main section .left-column { float: left; width: calc(50% - 10px); }
main section .right-column { float: right; width: calc(50% - 10px); }
main section label { display: inline-block; margin: 8px 0 2px 5px; line-height: 25px; font-weight: bold; }
main section label i { color: #ccc; font-style: normal; }
main section label.normal { margin: 0; font-weight: normal; }
main section ul.gallery { list-style: none; margin: 20px 0 40px 0; padding: 0; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; -ms-justify-content: space-between; justify-content: space-between; -ms-flex-flow: row wrap; -webkit-flex-flow: row wrap; flex-flow: row wrap; }
main section ul.gallery li { width: calc(50% - 15px); margin: 0 0 15px 0; text-align: center; }
main section ul.gallery li:nth-of-type(3), main section ul.gallery li:nth-of-type(4) { width: 100%; }
main section iframe { width: 100%; height: 400px; }
main section ul li { line-height: 1.5em; }
main section ul.images { list-style: none; margin: 20px 0 0 0; padding: 0; width: 100%; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-align-items: center; -ms-align-items: center; align-items: center; }
main section ul.images li { margin: 0 40px 20px 0; }
main section ul.images li:last-of-type { margin-right: 0; }
main section ul.images li p { margin: 10px 0 0 0; }

main section ol { margin: 20px 0; padding: 0; counter-reset: item; }
main section ol[start="10"] { counter-reset: lis 9; }
main section ol > li { position: relative; margin: 0; padding: 0 0 1em 2em; list-style-type: none; counter-increment: item; }
main section ol > li:before { position: absolute; left: 0; display: block; width: 25px; height: 25px; text-indent: 0; font-family: "Manrope", Arial, Helvetica, "sans-serif"; font-size: 18px; line-height: 25px; font-weight: normal; text-align: center; content: counter(item); background: #004a33; color: #fff; border-radius: 100%; }

body.home main section ul.gallery li { width: 33.33%; margin: 0; text-align: center; -webkit-align-self: center; -me-align-self: center; align-self: center; }
body.home main section ul.gallery li:nth-of-type(1) { padding: 0 15px 0 0; }
body.home main section ul.gallery li:nth-of-type(2) { padding: 0 10px; }
body.home main section ul.gallery li:nth-of-type(3) { padding: 0 0 0 15px; }

main section label { padding: 0 5px; line-height: 25px; font-weight: bold; }
main section label.normal { font-weight: normal; }
main section table { width: 100%; border-collapse: collapse; margin: 15px 0; line-height: 1.5em; border-top: 1px solid #eee; }
main section table th { font-weight: bold; vertical-align: top; border-bottom: 1px solid #eee; padding: 3px 10px 3px 3px; }
main section table th:last-of-type { padding-right: 3px; }
main section table td { position: relative; font-weight: normal; vertical-align: top; border-bottom: 1px solid #eee; padding: 3px; }
main section table td button { line-height: 25px; padding: 0 10px; font-size: 13px; }
main section table td i { font-style: normal; color: #808080; white-space: nowrap; }

main section ol { margin: 20px 0; padding: 0; counter-reset: item; }
main section ol[start="10"] { counter-reset: lis 9; }
main section ol > li { position: relative; margin: 0; padding: 0 0 1em 2em; list-style-type: none; counter-increment: item; }
main section ol > li:before { position: absolute; top: 0.1em; left: 0; display: block; width: 25px; height: 25px; text-indent: 0; font-family: "Manrope", Arial, Helvetica, "sans-serif"; font-size: 15px; line-height: 25px; font-weight: normal; text-align: center; content: counter(item); background: #004a33; color: #fff; border-radius: 100%; }

main section blockquote { margin: 20px 0; padding: 10px 20px 20px 20px; background: #f5f5f5; }
main section blockquote p { margin: 10px 0 0 0; width: 420px; }

main section ul.document-library { list-style: none; margin: 20px 0; padding: 0; display: flex; gap: 20px; flex-flow: row wrap; }
main section ul.document-library li { width: calc(50% - 20px); padding: 10px; background: #f5f5f5; line-height: 25px; }
main section ul.document-library li a {  }
main section ul.document-library img { display: block; }
main section ul.document-library strong { display: block; margin: 10px 0; }
main section ul.document-library em { display: block; font-style: normal; font-weight: normal; color: #999; }

main section #news {  }
main section #news .item { margin: 20px 0 0 0; padding: 20px 0 0 0; border-top: 1px solid #eee; }
main section #news .item a { display: block; font-weight: normal; cursor: pointer; }
main section #news .item a h2 { margin: 0 0 15px 0; color: #fff; }
main section #news .item a p { margin: 0 0 15px 0; color: #818181; }
main section #news .item a button { margin: 0; }
main section p a { color: #fff; }

main section ul.slideshow { list-style: none; margin: 20px 0; padding: 0 0 60px 0; }
main section ul.slideshow li {}
main section ul.slideshow ul.slick-dots { position: absolute; bottom: 20px; left: calc(50% - 50px); list-style: none; margin: 0 auto; padding: 0; text-align: center ;}
main section ul.slideshow ul.slick-dots li { float: left; margin: 0 8px}
main section ul.slideshow ul.slick-dots li button { display: block; border: 2px solid #fff; background: #fff0; width: 15px; height: 15px; padding: 0; text-indent: -999em; outline: none; cursor: pointer; box-shadow: 0 0 10px 1px rgba(255,255,255,.25); }
main section ul.slideshow ul.slick-dots li.slick-active button { background: #fff; }

#nextprev { margin: 30px 0 0 0; padding: 15px; background: #f5f5f5; text-align: center; }

footer { position: relative; padding: 20px 0 60px 0; text-align: center; font-size: 13px; color: #999; font-weight: normal; }
footer a { text-decoration: none; color: #999; }

#back-to-top { display: block; position: fixed; bottom: 60px; right: 60px; z-index: 10; transition: all 0.3s ease; }
#back-to-top a { position: relative; display: inline-block; color: #fff; background: #004a33; width: 60px; height: 60px; line-height: 60px; text-transform: uppercase; border-radius: 50%; text-decoration: none; transition: all 0.3s ease; }
#back-to-top a small { display: none; position: absolute; right: 75px; white-space: nowrap; }
#back-to-top a:hover { box-shadow: inset 0 0 0 500px rgba(255,255,255,0.1); }
#back-to-top a:hover small { display: block; }

#cookie-bar { position: fixed; bottom: 0px; left: 0px; right: 0px; background: #000; line-height: 20px; color: rgba(255,255,255,0.75); text-align: center; padding: 10px 20px; z-index: 99; }
#cookie-bar a { color: #fff; text-decoration: none; }

/* slick */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { display: table; content: ""; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; height: 100%; min-height: 1px; }
[dir="rtl"] .slick-slide { float: right; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }

@media only screen and (max-width : 1279px) {
	header section { margin: 0 2rem; width: auto; }
	main section { margin: 0 2rem; width: auto; }
}

@media only screen and (max-width : 767px) {
	body { font-size: 4vw; }
	header { width: auto; height: 74px; margin: 0; }
	header .slogan { display: none; }
	header #logo { margin-top: 0; }
	header nav { display: none; margin: 0; background: #fff; position: fixed; top: 75px; left: 0; right: 0; bottom: 0; z-index: 11; }
	header nav ul { list-style: none; padding: 0; margin: 40px 0; }
	header nav li { float: none; margin: 0; }
	header nav a { display: block; margin: 25px 0; padding: 0; line-height: 35px; font-size: 30px; text-align: center; background: transparent; }
	header nav a.selected { background: transparent; }
	header #mobile-nav { position: absolute; right: 30px; top: 28px; display: block; padding-left: 30px; }
	header #mobile-nav a { display: block; text-decoration: none; color: #444; font-weight: bold; font-size: 18px; padding-right: 30px; }
	header #mobile-nav a:before { content: ""; position: absolute; right: 0px; top: 0px; bottom: 0px; width: 25px; background: linear-gradient( to bottom, #444, #444 20%, transparent 20%, transparent 40%, #444 40%, #444 60%, transparent 60%, transparent 80%, #444 80%, #444 100% ); }
	main { width: auto; margin: 0; padding-top: 75px; }
	main section { width: auto; margin: 0; padding: 0 20px; }
	main section h1 { font-size: 10vw; }
	main section h2 { font-size: 7.5vw; }
	main section h3 { font-size: 6vw; }
	main section p { font-size: 4vw; line-height: 5vw; }
	main section .left-column { float: none; width: 100%; }
	main section .right-column { float: none; width: 100%; }
	main section .gallery { display: block; }
	main section .gallery li { width: 100%; margin: 0 0 20px 0; }
	footer { width: auto; margin: 0; padding: 20px; }
}