@import url('https://fonts.googleapis.com/css2?family=Crimson+Text:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&family=Figtree:ital,wght@0,300..900;1,300..900&display=swap');

body {
  font: 16px 'Figtree', sans-serif;
  color: #333;
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  overflow-x: hidden;
  position: relative;
  background-color:#fff;
}

dl, ol, ul {margin:0!important;}
li {margin:10px 0; line-height: 1.25em;}

p {font-family: 'Figtree', sans-serif; font-size: 16px; color: #333; line-height: 1.6em;}

.serif {font-family: 'Crimson Text', serif;}
.sans {font-family: 'Figtree', sans-serif;}

a {color:#2f7ab6; text-decoration: none; font-weight: 700; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
a:hover {color:#333; text-decoration: none;}
a:focus {color:#000!important; text-decoration: none; outline: -webkit-focus-ring-color auto 1px;}
a:focus-visible {color:#2f7ab6!important; text-decoration: none; outline: -webkit-focus-ring-color auto 5px;}

.section {scroll-margin-top: 115px!important;}

.max-container {max-width:856px;}

/*SKIP TO CONTENT*/
.skip-to-content-link {
    left: 0%;
    position: absolute;
    transform: translateY(-100%);
    background: #fff;
    height: 70px;
    padding: 8px;
    transition: transform 0.3s;
	scroll-padding-top:110px;
}
.skip-to-content-link:focus {
    transform: translateY(0%);
	width:100%;
	background-color:#fff;
	z-index:99999999999;
	line-height:50px;
	font-weight:bold;
	color:#333;
	border:none;
	text-align: center!important;
}
/*END SKIP TO CONTENT*/

.small {font-size: 90%!important;}
.smaller {font-size: 80%!important;}
.smallest {font-size: 70%!important;}
.large {font-size: 110%!important;}
.larger {font-size: 120%!important;}
.largest {font-size: 135%!important;}

.lh-sm {line-height: 1.5em!important;}
.lh-md {line-height: 1.6em!important;}
.lh-lg {line-height: 1.7em!important;}

.blue {color:#2f7ab6;}
.green {color:#bfd24e;}
.black {color:#333;}
.white {color:#fff;}

.bar-blue {width:120px; border-top:6px solid #2f7ab6;}
.bar-green {width:120px; border-top:6px solid #bfd24e;}
.bar-white {width:120px; border-top:6px solid #fff;}
.bar-black {width:120px; border-top:6px solid #333;}

.divider {border-top: 1px solid #f2e3bc;}

.border-pic {border: 4px solid #2f7ab6;}
.border-lt {border: 1px solid #2f7ab6;}
.border-green {border: 2px solid #bfd24e;}
.shadow {box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.75)!important; -webkit-box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.75); -moz-box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.75);}
.shadow-lt {box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.25)!important; -webkit-box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.35); -moz-box-shadow: 0px 20px 20px -10px rgba(0,0,0,0.35);}

h1 {
	font-family: 'Crimson Text', serif;
	font-size: 3em;
	font-weight: 900;
	font-style: italic;
	color:#333;
	letter-spacing: -.5px;
}

h2 {
	font-family: 'Crimson Text', serif;
	font-size: 2.35em;
	font-weight: 600;
	font-style: italic;
	color:#2f7ab6;
	letter-spacing: -.5px;
}

h3 {
	font-family: 'Figtree', sans-serif;
	font-size: 1.35em;
	font-weight: 700;
	color:#bfd24e;
	letter-spacing: -.25px;
	text-transform: uppercase;
}

h4 {
	font-family: 'Crimson Text', serif;
	font-size: 1.35em;
	font-weight: 400;
	font-style: italic;
	color:#2f7ab6;
	letter-spacing: -.25px;
}

/*BACK TO TOP*/
#button {
  display: inline-block;
  background-color: #2f7ab6;
  width: 50px;
  height: 50px;
  text-align: center;
  border:2px solid #FFF;
  border-radius: 0;
  position: fixed;
  bottom: 30px;
  right: 0;
  transition: background-color .3s, 
    opacity .5s, visibility .5s;
  opacity: 0;
  visibility: hidden;
  z-index: 1000;
}
#button::after {
  content: "\f077";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  font-size: 2em;
  line-height: 50px;
  color: #fff;
}
#button:hover {
  cursor: pointer;
  background-color: #bfd24e;
}
#button:active {
  background-color: #2f7ab6;
}
#button.show {
  opacity: 1;
  visibility: visible;
}
/*END BACK TO TOP*/

.header {
  background:#fff;
  z-index: 999999;
  -webkit-box-shadow: 0px 1px 10px 2px rgba(0,0,0,0.15);
  box-shadow: 0px 1px 10px 2px rgba(0,0,0,0.15);
  clear: both;
  padding:0!important;
  margin:0!important;
  height: 110px!important;
}

.sticky {
  position: fixed;
  top: 0;
  width: 100%;
  background: #fff;
  z-index: 10;
}

.sticky + .content {
  padding-top: 102px;
}

.bg-top {background:#2f7ab6; color:#fff; font-family: 'Figtree', sans-serif; font-size:11pt; font-weight:500; letter-spacing: -.25px!important;}
.bg-top a {color: #fff; text-decoration: underline; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.bg-top a:hover {color: #000; text-decoration: none;}
.bg-top a:focus {border:2px solid #bfd24e; color:#FFF!important;}
.bg-top a:focus-visible {border:2px solid #000; color:#FFF!important;}
.bg-top ul {padding:0; margin:0; text-align:left;}
.bg-top ul li {list-style-type:none; display:inline;}
.bg-top ul li:before {content:'';}
.bg-top ul li:after {content:''; margin:0 20px;}
.bg-top ul li:last-child:after {content:'';}

.btn-top {
	background-color:#333;
	font-family: 'Figtree', sans-serif;
	font-size: 1.1em;
	font-weight: 800;
	text-transform: uppercase;
	text-align: center;
	text-shadow: none!important;
	color:#fff!important;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border:4px solid #333;
	display: inline-block;
}
.btn-top:hover {
	background:#000;
	color:#bfd24e!important;
	cursor: pointer;
	border:4px solid #FFF;
	text-decoration: underline;
}
.btn-top:focus {border:2px solid #000;}
.btn-top:focus-visible {border:2px solid #000;}

.offcanvas {background:#fff; border-top: none!important; padding:0!important;}
.offcanvas-header {padding:0!important;}
.offcanvas-header img {height:85px!important; padding-top:25px; margin:0 0 0 20px!important;}
.offcanvas-header .btn-close {margin-top: 0.5rem; margin-right: 0.5rem; margin-bottom: 0.5rem;}

.navbar-light .navbar-nav .nav-link {
  font-family: 'Figtree', sans-serif;
  font-size: 1.1em;
  font-weight: 600;
  color: #333;
  padding: 15px 1.35rem!important;
  margin:15px 0 0 0;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-top:2px solid #fff;
  border-bottom:2px solid #fff;
}
.navbar-light .navbar-nav .nav-link:hover {color:#2f7ab6!important; border-top:2px solid #8c9c33; border-bottom:2px solid #8c9c33;}
.navbar-light .navbar-nav .nav-link:focus {border:2px solid #8c9c33; box-shadow: none!important;}
.navbar-light .navbar-nav .nav-link:focus-visible {border:2px solid #8c9c33; box-shadow: none!important;}

.navbar-toggler {border-color:#000!important; background-color:transparent!important; border:0!important; color:(0,0,0,1.0)!important;}
.navbar-light .navbar-toggler {outline: none;}

.navbar-brand {height:auto; padding:0!important;}
.navbar-brand img {height:90px; margin: 0;}
.navbar-brand.js-scrolling img {
	height: 65px;
	-webkit-transition: height 0.3s ease; 
	-moz-transition: height 0.3s ease; 
	-ms-transition: height 0.3s ease; 
	-o-transition: height 0.3s ease; 
	transition: height 0.3s ease;
}

.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {color:#b4ab98!important;}

.carousel-control-next, .carousel-control-prev {
    opacity: 1;
}
.carousel-control-next-icon, .carousel-control-prev-icon {
    background-color: rgba(0,0,0,0.65);
    padding: 1rem 0;
	border:1px solid #fff;
}

.content {min-height:900px; font-family: 'Figtree', sans-serif; font-size: 16px; font-weight: 500; letter-spacing: -.5px;}
.content a {color:#2f7ab6; text-decoration:none; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.content a:hover {color:#333; text-decoration:none;}
.btn-content {
	background-color:#2f7ab6;
	font-family: 'Figtree', sans-serif;
	font-size: 1.1em;
	font-weight: 700;
	text-transform: uppercase;
	text-align: center;
	text-shadow: none!important;
	color:#fff!important;
	letter-spacing: .5px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border:4px solid #2f7ab6;
	display: inline-block;
}
.btn-content:hover {
	background:#000;
	color:#bfd24e!important;
	cursor: pointer;
	border:4px solid #000;
	text-decoration: underline;
}
.btn-content:focus {border:2px solid #000;}
.btn-content:focus-visible {border:2px solid #000;}

.content-index {min-height:350px; font-family: 'Figtree', sans-serif; font-size: 16px; font-weight: 500; letter-spacing: -.5px;}
.content-index a {color:#2f7ab6; text-decoration:none; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.content-index a:hover {color:#333; text-decoration:none;}
.index-text {font-size: 22px; font-weight: 700; line-height: 1.8em;}

.bg-tagline {background-image:url("graphics/bg-tagline.jpg"); line-height: 1.5em;}
.btn-tagline {
	background-color:#2f7ab6;
	font-family: 'Figtree', sans-serif;
	font-size: 21px;
	font-weight: 700;
	text-transform: uppercase;
	text-align: center;
	text-shadow: none!important;
	color:#fff!important;
	letter-spacing:1px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border:3px solid #2f7ab6;
	display: inline-block;
}
.btn-tagline:hover {
	background:transparent;
	color:#fff!important;
	cursor: pointer;
	border:3px solid #bfd24e;
	text-decoration: underline;
}
.btn-tagline:focus {border:2px solid #fff;}
.btn-tagline:focus-visible {border:2px solid #fff;}

.footer {font-family: 'Figtree', sans-serif; font-size: 1.05em; font-weight:600; color:#333; letter-spacing: -.5px; text-transform: uppercase;}
.footer a {color: #333; font-weight: 800; text-decoration: none; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.footer a:hover {color: #2f7ab6; text-decoration: underline;}
.footer ul {padding:0; margin:0; text-align:center;}
.footer ul li {list-style-type:none; display:inline;}
.footer ul li:before {content:'';}
.footer ul li:after {content:''; margin:0 0 0 50px;}
.footer ul li:last-child:after {content:''; margin-left: 0;}

.footer-fb {font-size: 1.75em; color:#2f7ab6;}
.footer-fb a {color: #2f7ab6; text-decoration: none; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.footer-fb a:hover {color: #333; text-decoration: none;}

.bg-anchor {background:#2f7ab6; color:#fff; font-size: .75em; font-weight: 400; letter-spacing: -.25px; border-bottom: 3px solid #bfd24e;}
.bg-anchor a {color:#fff; text-decoration:underline; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.bg-anchor a:hover {color:#000; text-decoration:underline;}

.bg-anchor ul {padding:0; margin:0; text-align:center;}
.bg-anchor ul li {list-style-type:none; display:inline;}
.bg-anchor ul li:before {content:'';}
.bg-anchor ul li:after {content:'|'; color:#bfd24e; margin:0 10px; font-weight: 900;}
.bg-anchor ul li:last-child:after {content:'';}

.bg-intro {background:#eee;}
.intro-text {font-size: 18px; line-height: 1.8em;}

.bg-callout {background-image: url("data:image/svg+xml,<svg id='patternId' width='100%' height='100%' xmlns='http://www.w3.org/2000/svg'><defs><pattern id='a' patternUnits='userSpaceOnUse' width='65' height='65' patternTransform='scale(2) rotate(0)'><rect x='0' y='0' width='100%' height='100%' fill='hsla(207, 59%, 45%, 1)'/><path d='M.5.5v12h12V.5H.5zm13 13v12h12v-12h-12zm-13 13v12h12v-12H.5zm26 13v12h12v-12h-12zm13 13v12h12v-12h-12z'  stroke-width='1' stroke='none' fill='hsla(207, 61%, 41%, 1)'/><path d='M26.5.5v12h12V.5h-12zm0 13v12h12v-12h-12zm13 13v12h12v-12h-12zm-39 13v12h12v-12H.5zm0 13v12h12v-12H.5z'  stroke-width='1' stroke='none' fill='hsla(207, 65%, 39%, 1)'/><path d='M13.5.5v12h12V.5h-12zm39 13v12h12v-12h-12zm-39 13v12h12v-12h-12zm39 0v12h12v-12h-12zm-26 26v12h12v-12h-12z'  stroke-width='1' stroke='none' fill='hsla(207, 61%, 41%, 1)'/><path d='M52.5.5v12h12V.5h-12zm-13 13v12h12v-12h-12zm0 26v12h12v-12h-12zm13 0v12h12v-12h-12zm-39 13v12h12v-12h-12z'  stroke-width='1' stroke='none' fill='hsla(207, 61%, 41%, 1)'/></pattern></defs><rect width='800%' height='800%' transform='translate(0,0)' fill='url(%23a)'/></svg>"); background-attachment: fixed;}
.callout {width:14%; float:none; margin:0 1.3%; text-decoration: underline!important; color:#FFF!important;}
.callout a {text-decoration: underline!important; color:#FFF!important;}
.callout a:hover {text-decoration: none!important; color:#FFF!important;}
.callout-container {margin-top: 15px; text-decoration: underline!important; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease;}
.callout-container:hover {margin-top: 0; text-decoration: none!important; color:#fff!important;}
.callout-border {border-top:3px solid #bfd24e;}
.callout-img {border:10px solid #fff; margin:20px 0;}

.quote-text {font-size: 18px; font-weight: 400; line-height: 1.8em;}

.bg-about {background:#2f7ab6;}

.sidebar {background: #eee; border-bottom:3px solid #2f7ab6;}
.btn-secondary {color:#fff!important;}

.nav-pills .nav-link {color:#2f7ab6!important;}
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {background-color: #2f7ab6!important; color:#fff!important;}

/*FORM*/
#form {
        width:100%;
        float:left;
		font-family: 'Figtree', sans-serif;
}


form{
        width: 100%;
        }

legend {font-size: 16px; font-weight: 500; color:#222;}

fieldset{
        border: 0;
        padding:2.5% 0;
        clear: left;
		
        }
        
textarea, input, select{
        border-top:0;
		border-right:0;
		border-left:0;
		border:1px solid #222;
        padding:2.5%;
        width: 100%;
		font-size: 16px;
        }

label{
        font-weight: 600!important;
		font-size: 100%;
		display: block;
        }       
        
textarea:focus, input:focus, select:focus{
        border: 3px solid #2f7ab6;
        -webkit-transition: all .4s ease-in-out;
        -moz-transition: all .4s ease-in-out;
        transition: all .4s ease-in-out;
        outline: none;
}

.submit {
	background-color:#2f7ab6;
	font-family: 'Figtree', sans-serif;
	font-size: 2.5em;
	font-weight: 800;
	text-transform: uppercase;
	text-align: center;
	text-shadow: none!important;
	color:#fff!important;
	letter-spacing: .5px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border:4px solid #2f7ab6;
}
.submit:hover {
	background:#000;
	color:#bfd24e!important;
	cursor: pointer;
	border:4px solid #000;
	outline-color: #FFF; 
	outline-style: solid; 
	outline-width: 4px; 
	padding:4px;
}
.submit:focus {border:2px solid #FFF; outline-color: #2f7ab6; outline-style: solid; outline-width: 4px; padding:4px;}
.submit:focus-visible {border:2px solid #FFF; outline-color: #2f7ab6; outline-style: solid; outline-width: 4px; padding:4px;}

input {padding:10px!important;}
/*END FORM*/

/*CART*/
.navbar-header {height:110px!important;}
.btn-warning {color:#000!important;}
.btn-success {color:#fff!important;}
/*END CART*/


@media (max-width: 1399px) {
.bg-top ul li:after {content:''; margin:0 10px;}
.navbar-light .navbar-nav .nav-link {padding: 5px 1rem!important; margin:0!important;}
.callout {width:31%; float:none; margin:0 auto 25px auto;}
.footer ul li:after {content:''; margin:0 0 0 30px;}
}

@media (max-width: 1199px) {
.bg-top ul {text-align:center;}
.footer {font-size: 1.1em; line-height: 1.8em;}
.footer li {padding:12px 0;}
.footer ul li {display:block;}
.footer ul li:after {margin:0;}
}

@media (max-width: 991px) {
.callout {width:45%; float:none; margin:0 auto 25px auto;}
.bg-top ul {text-align:center;}
.bg-top li {padding:12px 0;}
.bg-top ul li {display:block;}
.bg-top ul li:after {margin:0;}
}

@media (max-width: 767px) {
.callout {width:50%; float:none; margin:0 auto 25px auto;}
}

@media (max-width: 767px) {
.callout {width:95%; float:none; margin:0 auto 50px auto;}
}

@media (max-width: 480px) {
.bg-anchor {line-height: 1.7em;}
.bg-anchor ul li {display:block;}
.bg-anchor ul li:after {content:''; margin:0;}
}

@media (max-width: 375px) {
.navbar-brand img {height:65px;}
.navbar-brand.js-scrolling img {height: 45px;}
.callout {width:100%; float:none; margin:0 auto 50px auto;}
}