/*--------------------------------------------------------------
>>> Main site styles, last editted on 1/13/25
---------------------------------------------------------------- */
@charset "UTF-8";

@import url(normalize.css);
@import url(topnav.css);
@import url(l2-style.css);
@import url(footer.css);
@import url(form-style.css);
@import url(mobile-menu.css);


@import url('https://fonts.googleapis.com/css?family=Lora:400,400i,700,700i'); /* font-family: 'Lora', serif; */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Semi+Condensed:ital,wght@0,300;0,400;0,600;1,300;1,400;1,600&family=Barlow:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap');
/* font-family: 'Roboto Condensed', sans-serif;
font-family: 'Barlow Semi Condensed', sans-serif; */

@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/font-awesome.min.css');


/*-------------------------------------------------------------- 
# base styles
--------------------------------------------------------------*/

html { background-color: #fff; }

body { color: #454545; font-family: 'Barlow', Helvetica, Arial, sans-serif;
 -webkit-text-size-adjust: 100%;
 -moz-osx-font-smoothing: grayscale;
 -webkit-font-smoothing: antialiased;
 text-rendering: optimizeLegibility;
 text-align: center; margin: 0; padding: 0; overflow-x: hidden; }
 
::selection { background: #99d0df; color: #fff !important; }
::-moz-selection { background: #99d0df; color: #fff !important; }
::-webkit-selection { background: #99d0df; color: #fff !important; } 


article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary { display: block; } 

a img { border: 0 none; }

a:hover,
a:active,
a:focus { outline: 0; }

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: button;
  *overflow: visible;
}
button[disabled],
input[disabled] { cursor: default; }

textarea { overflow: auto; vertical-align: top; resize: vertical; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }


div  { margin-top: 0; margin-bottom: 0; padding: 0; border: none; border-width: 0; }
img { text-decoration: none; margin: 0; padding: 0; border: none; border-width: 0; outline: none; outline-width: 0; }

img.nofloat { float: none; }
.floatright,
img.floatright { float: right; }
.floatleft,
img.floatleft { float: left; }
.product-overview,
img.product-overview { margin-right: auto; margin-left: auto; width: 100%; max-width: 100%; height: auto !important; display: inline-block; float: none !important; clear: both; }

p.clear + p.small,
p.clearfix + p.small { margin-top: 0; }

a, a:visited { color: #b52d39; text-decoration: none; border: none;  
  -webkit-transition: color .3s;
  -moz-transition: color .3s;
  -o-transition: color .3s;
  -ms-transition: color .3s;
  transition: color .3s;
	}
a:hover, a:active { color: #48525b; text-decoration: underline; border: none; }

#searchResults a { font-weight: 600 !important; }
 
/* 
 Base page structure
--------------------------------------------------------------*/
.row { width: 100%; max-width: 1180px; min-width: 320px; margin: 0 auto; /* overflow: hidden; */ }

div#page { background: #fff; min-width: 1180px; width: 100% !important; text-align: center; height: auto; min-height: 700px; margin: 0; padding: 0; overflow: hidden; float: left; clear: both; }
div#page-container, div.container { width: 100%; max-width: 1180px; text-align: left; display: block; clear: both; margin: 0 auto !important; padding: 0 10px; /* overflow: hidden; */ }

/* 
 CMS overrides
--------------------------------------------------------------*/
.via-image-upload { height: 0px !important; width: 0px !important; display: none !important;  }


/* 
 Main font weights and styles
--------------------------------------------------------------*/

.sansserif { font-family: 'Barlow', serif !important; }
.serif { font-family: 'Lora', sans-serif !important; } 
.caps { text-transform: uppercase !important; }

.tk-adelle { font-family: 'adelle', serif !important; }

.flush { margin-top: 0px; }
.date { color: #333; }

div.clear { height: 1px !important; margin-bottom: -1px; display: block !important; width: 100% !important; clear: both !important; }
p.clear { display: block !important; width: 100% !important; clear: both !important; }

.clearfix { clear: both !important; }
.clearfix:before,
.clearfix:after { content: ""; display: table; clear: both; width: 100%; }

.black { color: #000 !important; }
.red { color: #b52d39 !important; }
.orange { color: #d17036 !important; }
.purple { color: #4b0b76 !important; }
.dk-purple { color: #27034e !important; }
.blue { color: #023047 !important; }
.ltblue { color: #82badd !important; }
.gray { color: #999 !important; }
.textgray { color: #454545 !important; }
.dkgray, .ubi-gray { color: #48525b !important; }
.green { color: #a0ce67 !important; }
.white { color: #fff !important; }

.lt-gray-bg { background-color: #f0f1f2 !important; }
.white-bg { background-color: #fff !important; }

article a.btn, aside a.btn, a.btn {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  /* text-shadow: 1px 1px 3px #023047; */
  color: #fff;
	font-size: 18px; font-weight: 700;
  background: #b52d39;
  padding: 7px 18px 7px 18px;
  border: solid #b52d39 1px;
  text-decoration: none;
}

article a.btn:hover, aside a.btn:hover, a.btn:hover { background: #48525b; text-decoration: none; }

a.icon { padding-left: 35px;
	background: url(../css-images/gold-icon.png) no-repeat 1px 4px;
  -webkit-background-size: 30px auto;
     -moz-background-size: 30px auto;
       -o-background-size: 30px auto;
          background-size: 30px auto;
}

a.block { display: block !important; }

.nowrap { white-space: nowrap !important; }
.inline { display: inline !important; width: auto; }

ul, ol { list-style: none; }

div, h1, h2, h3 h4, p, a, li, td, img { -webkit-text-size-adjust: none; } 

article, aside, h1, h2, h3, h4, h5, p, li { }
h1.linetop, h2.linetop, h3.linetop, h4.linetop, h5.linetop, p.linetop, .linetop-short, .linetop-strong { border-top: 1px solid #ccc !important; padding-top: 15px !important; margin-top: 35px; width: 100%; }
.linetop-strong { font-weight: 600 !important; }

hr { border: none !important; background-color: #ccc !important; padding: 0px !important; margin-top: 1.5em !important; margin-bottom: 1.5em !important; width: 100%; height: 1px !important; display: block; }

h1, h2 { color: #b52d39; font-family: 'Barlow', sans-serif; font-weight: 700; clear: both; line-height: 1.3em; }
h3, h4, h5 { color: #023047; font-family: 'Barlow', sans-serif; font-weight: 600; clear: both; line-height: 1.3em; }
h2 .view, h3 .view { font-size: 70% !important; font-weight: 400 !important; }

h1 { font-size: 32px; }
h2 { font-size: 42px; }
#home h2 { color: #023047; font-size: 32px; font-family: 'Barlow', sans-serif; font-weight: 300; margin-top: 5px; margin-bottom: 10px; } 

h3 { font-size: 30px; }
h4, h5 { font-size: 24px; }
h2 .small { font-size: 75%; font-weight: 400; }

.home-page h1.home-intro, #home h1.home-intro, .home-page h2.home-intro, 
#home h2.home-intro, h3.home-intro, .home-page h3.home-intro
{ font-size: 21px; font-weight: 700; text-align: left; margin: 0 !important; padding: 15px 0 0 0 !important; }
#home h1.home-intro + p,
#home h2.home-intro + p,
#home h3.home-intro + p
{ margin-top: 5px !important; }

p { font-size: 16px; line-height: 1.5em; font-weight: 400; }
p.intro, h1.intro { font-size: 29px; line-height: 40px; font-weight: 400; }
p.smaller, p.small, .small, .smalltext { font-size: 14px !important; }
cite, h3 cite { font-size: 16px; font-weight: 400; font-style: oblique; }

.col-2 .smalltext p { font-size: 14px; }

.center { text-align: center !important; }
p.center img { float: none; clear: both; display: block; margin-right: auto; margin-left: auto; }

p + h2 { padding-top: 13px; }

h4 + ul { padding-top: 3px; }
h3.linetop + ul { padding-top: 7px; }

.hidden { display: none; visibility: hidden; position: absolute; margin-top: -1000px; }

.normal, h1 .normal, h2 .normal { font-weight: 400 !important; }

a.closed { cursor: pointer; }  

a.back-to-top {
	color: #b52d39;
	font-family: FontAwesome !important;
	font-size: 57px; 
  font-weight: 600;
	-moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
	display: none;
/* width: 46px; height: 46px; */
	position: fixed;
	z-index: 999;
	right: 25px;
	bottom: 25px;
/*	-webkit-border-radius: 23px;
	-moz-border-radius: 23px;
	border-radius: 23px; */
	opacity: 0.80;
}
a:hover.back-to-top {
	color: #99a4a7;
	opacity: 0.95;
  }

.fa.fa-arrow-circle-o-up { font-family: "Font Awesome 5 Pro" !important; font-weight: 600 !important; }

/* Responsive
---------------------------------------------------------------- */

@media only screen and (max-width: 1200px) {
div.container { max-width: 1160px; }

}

@media only screen and (max-width: 1180px) {
div#page { min-width: 100%; max-width: 100%; overflow: hidden !important; }
div.container { width: 96%; padding: 0 2%; }
	
}


@media only screen and (max-width: 980px) {
/* div.container { width: 97%; padding: 0 1.5%; } */
html, body { oveflow-x: hidden !important; }
	
}

@media only screen and (max-width: 855px) {
div#page { oveflow: hidden !important; } 

}

@media only screen and (max-width: 640px) {
h1, h2, article h1, article h2 { font-size: 25px !important; } 
h3, h4, article h3, article h4 { font-size: 21px !important; } 
p, aside p, article p, article li, aside li { font-size: 15px !important; }
p.intro, h1.intro { font-size: 26px !important; }
p.smaller, p.small, .smalltext, figcaption, .date { font-size: 12px !important; }

}

@media only screen and (max-width: 480px) {
h1, h2, article h1, article h2 { font-size: 23px !important; } 
h3, h4, article h3, article h4 { font-size: 19px !important; } 	
a.back-to-top { right: 20px; bottom: 20px; }
	
div.floatright, 
div.floatleft { float: none !important; clear: both; margin: 1px auto 20px auto !important; display: block !important; }	
	
}

@media only screen and (max-width: 320px) {	
div#page { min-width: 320px; }

}


/*--------------------------------------------------------------
END
--------------------------------------------------------------*/
