html {
	font-size:100%;
	line-height:1.8rem;
	-webkit-font-smoothing:antialiased;
	-moz-font-smoothing:antialiased;
}
body {
	/*font-family:"Century Gothic", Tahoma, Geneva, Arial, Helvetica, sans-serif;*/
	font-family:"Century Gothic", CenturyGothic, Arial, ui-sans-serif;
	color:#424242;
	text-align:left;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body p:not(.card-text) {
	line-height:1.8em;
}
body #mainContent ul {
	margin-top: 0.2em;
}
body #mainContent li {
	margin-bottom: 0.78em;
	line-height: 1.4em;
}
html {
	scroll-padding-top: 8em !important;
}
.skippy {
    top:1em;
    left:1em;
    position:absolute;
    z-index:1000;
    background-color:#000000;
}
.skippy:not(:focus):not(:active):not(:focus-within) {
	clip-path:inset(50%);
	height:1px;
	overflow:hidden;
	position:absolute;
	white-space:nowrap; 
	width:1px;
}
header .navLogoIcon {
	height:1.25em;
	width:1em;
	float:left;
	clear:none;
}
.hiddenByDefault {
	display:none;
}
header #navbarCollapse {
    margin-top:0.5em;
}
header #navbarCollapse .navbar {
    padding:0.5rem;
}
header #navbarCollapse ul li {
	font-size:0.87em;
    margin:0 0 0.35em 0.35em;
}
header #navbarCollapse .nav-item .btn-grid,
footer .btn-grid {
	font-size:0.87em;
	min-width:5.5rem;
}
footer a:not(.btn) {
	font-size:0.87em;
	padding-top:0 !important;
}
header #navbarCollapse .navbar-nav.only-row, 
.only-row {
    flex-direction:row !important;
}
header .navbar-nav .dropdown-menu {
	margin-top:0em;
	margin-left:-0.3em;
	padding-left: 0.5em;
    padding-right: 0.5em;
	background-color:#212529;
	border:none;
}
header .navbar-nav .dropdown-menu .dropdown-item {
    padding:0.25em 1.25em 0.25em 0em;
}
header .navbar-nav .dropdown-menu .dropdown-item.active,
header .navbar-nav .dropdown-menu .dropdown-item:active,
header .navbar-nav .dropdown-menu .dropdown-item:focus, 
header .navbar-nav .dropdown-menu .dropdown-item:hover  {
	background-color:#212529;
}
section #btn-back-to-top {
	position:fixed;
	bottom:20px;
	right:20px;
	display:none;
	background:rgba(0, 0, 0, 0.5);
	border:none;
}
section #btn-back-to-top:hover, 
section #btn-back-to-top:focus {
	box-shadow: 0 0 0 .25rem rgba(108, 117, 125, .5);
}
section #btn-back-to-top.btn {
	z-index:6;
	margin-right:20px;
	background-color:rgba(33, 37, 41, 0.8);
}
main .mastheadBack {
	background-position:center center;
	background-size:cover;
    /*min-height:35vh;*/
    padding:2em 0;
	border-bottom:1px solid #000000;
	background-color:#F3F3F3;
	border-bottom:1px solid #C3C3C3;
	box-shadow: inset 0px 0px 50px -30px rgba(0, 0, 0, 1.0);
	position:relative;
    display:flex;
    align-items:flex-end;
}
main .mastheadBack.sub {
    padding-bottom:0;
}
main .mastheadBack.sub .txtCol {
	padding-top: 10px;
	padding-right: 0;
	padding-bottom: 2em;
	padding-left: 0.75em;
}
main .mastheadBack.sub h2 {
	border-bottom:1px solid #C3C3C3;
	padding:0.15em 0 0.5em 0;
	color:#6E6E6E;
}
main .mastheadBack.sub p {
	padding-top:0.75em;
	margin-bottom:0em;
}
main .mastheadBack .container div.mastLineSpc:not(:last-child) {
	padding-bottom:1em;
}
main .mastheadBack h2.lighteststripe {
	margin:0;
	display:inline-block;
	font-size:2.75em;
	padding:0.25rem 1rem 0.5rem 1rem;
	background-color:rgba(0,0,0,0.75);
}
main .mastheadBack h2.lighteststripe.a01 {
	border-left:12px solid #EC22C5;
	border-bottom:0px solid #EC22C5;
}
main .mastheadBack h2.lighteststripe.a02 {
	border-left:12px solid #22D1EC;
	border-bottom:0px solid #22D1EC;
}
main .mastheadBack h2.lighteststripe.a03 {
	border-left:12px solid #5FFF94;
	border-bottom:0px solid #5FFF94;
}
@media only screen and (min-width: 576px) {
	main .mastheadBack h2.lighteststripe {
		font-size:2.75em;
  }
}
@media only screen and (min-width: 768px) {
	main .mastheadBack h2.lighteststripe {
		font-size:2.75em;
  }
}
@media only screen and (min-width: 992px) {
	main .mastheadBack h2.lighteststripe {
		font-size:2em;
  }
}
@media only screen and (min-width: 1200px) {
	main .mastheadBack h2.lighteststripe {
		font-size:2em;
  }
}
@media only screen and (min-width: 1400px) {
	main .mastheadBack h2.lighteststripe {
		font-size:2.75em;
  }
}
main .mastheadBack .mastRot {
	position:relative;
    display:flex;
    align-items:flex-end;
}
main .mastheadBack .mastRot img {
}
main .mastheadBack .mastRot img.mastSprite {
}
main #mainContent {
	background-color:#F3F3F3;
	padding-bottom:3rem;
}
main .backWhite {
	background-color:#FFFFFF;
	border-bottom:1px solid #C3C3C3;
}
.firstGap {
	padding-top:3em;
}
.secondGap {
	padding-top:1em;
}
.lastGap {
	padding-bottom:3em;
}
main #mainContent div .sectionHeads {
	border-bottom:1px solid #C3C3C3;
	padding-bottom:0.5em;
	color:#6E6E6E;
}
main #mainContent div .sectionHeads h3 {
	color:#6E6E6E;
}
main #mainContent .thumbsField {
	margin-top:0;
}
main .card-body h4 {
	font-size:1em;
}
main .card-body p {
	font-size:0.8em;
}
main .card.shadow-sm {
	padding:0.75em 0.75em 0 0.75em;
	-webkit-border-radius:1em;
    -moz-border-radius:1em;
    border-radius:1em;
    -webkit-box-shadow:0 1px 4px 0px rgba(0,0,0,0.2) !important;
    -moz-box-shadow:0 1px 4px 0px rgba(0,0,0,0.2) !important;
    box-shadow:0 1px 4px 0px rgba(0,0,0,0.2) !important;
}
a.socials {
	border:1px solid rgba(0,0,0,0.2);
	-webkit-border-radius:0.25em;
    -moz-border-radius:0.25em;
    border-radius:0.25em;
	background-color:#ffffff;
    -webkit-box-shadow:0 1px 4px 0px rgba(0,0,0,0.2) !important;
    -moz-box-shadow:0 1px 4px 0px rgba(0,0,0,0.2) !important;
    box-shadow:0 1px 4px 0px rgba(0,0,0,0.2) !important;
}
a.socials:hover, 
a.socials:focus {
	box-shadow:0 0 0 .25em rgba(108, 117, 125, 0.15) !important;
}
main button.sampleButton, 
main a.sampleLink {
	border:none;
	background:none;
	padding:0;
	-webkit-border-radius:1em;
    -moz-border-radius:1em;
    border-radius:1em;
    text-decoration:none;
    display:inline-block;
}
main button.sampleButton:hover, 
main a.sampleLink:hover, 
main button.sampleButton:focus, 
main a.sampleLink:focus {
	box-shadow:0 0 0 .25em rgba(108, 117, 125, 0.15);
}
main .card .sampleImg {
	border-radius:0.5em;
	position:relative;
	z-index:2;  /* position button above loader */
	aspect-ratio:711 / 400; /* retain height even if image has not yet loaded */
	border:none;
	padding:0;
}
main .card .sampleThumb {
	border-radius:0.5em;
	position:relative;
	z-index:2;  /* position button above loader */
	aspect-ratio:711 / 400; /* retain height even if image has not yet loaded */
	border:none;
	background-color:#FFFFFF;
	padding:0;
}
main .card .sampleThumb:hover, 
main .card .sampleThumb:focus {
	box-shadow:0 0 0 0.25em rgba(108, 117, 125, 0.2);
}
btn, 
main .card .sampleThumb:focus,
main .card .sampleThumb:focus-visible {
	box-shadow:0 0 0 0.25em rgba(108, 117, 125, 0.5);
	outline:none;
}
main .card-body {
    flex: 1 1 auto;
    padding:1em 0.15em 1em 0.5em;
}
main .card-body small.text-muted {
	/*display:none;  hide tag */
}
main .sample {
	position:relative;
	background-color:#FFFFFF;
}
main .sample.shadow-sm {
	-webkit-border-radius:0.5em;
    -moz-border-radius:0.5em;
    border-radius:0.5em;
    -webkit-box-shadow:0 1px 4px 0px rgba(0,0,0,0.2) !important;
    -moz-box-shadow:0 1px 4px 0px rgba(0,0,0,0.2) !important;
    box-shadow:0 1px 4px 0px rgba(0,0,0,0.2) !important;
}
main .sample .sampleImg {
	border-radius:0.5em;
	position:relative;
	z-index:2;  /* position button above loader */
	border:1px solid #C3C3C3;
	padding:0.75em;
}
main .sample .sampleImg.noPad {
	padding:0;
}
main .sample .sampleImg.noBotPad {
	padding:0.75em 0.75em 0 0.75em;
}
main .sample .sampleImg.padTop {
	padding:0.75em 0 0 0;
}
footer #footerContent {
    padding-bottom: 3em;
}
footer .footerRule {
	margin-top:1em;
	border-left:1px solid #FFFFFF;
}
/* HTML: <div class="loader"></div> https://css-loaders.com/ */
.loader {
  width: 15px;
  aspect-ratio: 1;
  border-radius: 50%;
  animation: l5 1s infinite linear alternate;
  margin:auto;
  /*top:calc(50% - 7px);*/
  top:35%;
  left:50%;
  position:absolute;
  z-index:1;
}
.text-align-right {
	text-align:right;
}
.text-align-left {
	text-align:left;
}
.text-align-center {
	text-align:center;
}
.text-no-word-spacing {
	word-spacing:-0.25em;
}
.text-no-word-wrap {
	white-space:nowrap;
}
.text-lowercase {
	text-transform:lowercase;
}
.text-uppercase {
	text-transform:uppercase;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
}
.font-x-height {
	font-size:0.75em;
}
.font-weight-100 {
	font-weight:100;
}
.font-weight-200 {
	font-weight:200;
}
.font-weight-300 {
	font-weight:300;
}
.font-weight-400 {
	font-weight:400;
}
.font-weight-500 {
	font-weight:500;
}
.font-weight-600 {
	font-weight:600;
}
.font-weight-700 {
	font-weight:700;
}
.font-weight-800 {
	font-weight:800;
}
.font-weight-900 {
	font-weight:900;
}
.font-size-1-1 {
	font-size:1.1rem;
}
.font-size-1-1-5 {
	font-size:1.15rem;
}
.font-size-1-2 {
	font-size:1.2rem;
}
.font-size-1-2-5 {
	font-size:1.25rem;
}
.font-size-1-3 {
	font-size:1.3rem;
}
.font-size-1-3-5 {
	font-size:1.35rem;
}
.icon-baseline-fix {
    position: relative;
    top: -0.15em;
}
a.footer {
	color:#FFFFFF;
	text-decoration:undeline:
}
a.footer:hover, 
a.footer:focus {
	color:#FFFFFF;
	text-decoration:none;
}
a.active {
	color:#FFFFFF !important;
}
a.non-active {
	color:#FFFFFF !important;
}
a.active::before {
	font-weight:900;
	content:"\205D\2002" / "";
	color:#0DCAF0;
	background:-webkit-linear-gradient(#EC22C5, #EC22C5, #22D1EC, #22D1EC, #5FFF94, #5FFF94);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}
a.non-active::before {
	font-weight:900;
	content:"\205D\2002" / "";
	color:#0DCAF0;
	opacity:0;
}
a.non-active:hover::before, 
a.non-active:focus::before {
	font-weight:900;
	content:"\205D\2002" / "";
	color:#FFFFFF;
	opacity:1;
}
a:link { /* allows a link to look like normal text */
	color:inherit;
	text-decoration:underline;
}
a:visited { /* allows a link to look like normal text */
	color:inherit;
	text-decoration:underline;
}
a:hover { /* allows a link to look like normal text */
	color:inherit;
	text-decoration:none;
}
a:active { /* allows a link to look like normal text */
	color:inherit;
	text-decoration:underline;
}
.mastheadTitle a.btn-grid, .mastheadTitle button.btn-grid {
	margin:0 0.25rem 0.5rem 0.25rem;
	text-decoration:none;
}
.mastheadTitle button { /* allows a masthead button to look like normal text */
	color:inherit;
	text-decoration:underline;
}
.mastheadTitle button:visited { /* allows a masthead button to look like normal text */
	color:inherit;
	text-decoration:underline;
}
.mastheadTitle button:hover { /* allows a masthead button to look like normal text */
	color:inherit;
	text-decoration:none;
}
.mastheadTitle button:active { /* allows a masthead button to look like normal text */
	color:inherit;
	text-decoration:underline;
}
a.no-change:link { /* allows a link to look like normal text */
	color:inherit;
	text-decoration:none;
}
a.no-change:visited { /* allows a link to look like normal text */
	color:inherit;
	text-decoration:none;
}
a.no-change:hover { /* allows a link to look like normal text */
	color:inherit;
	text-decoration:none;
}
a.no-change:active { /* allows a link to look like normal text */
	color:inherit;
	text-decoration:none;
}
.hide_svg {
	display:none;
}
header.sticky { /* won't scroll uncollapsed header, must fix before implementation */
    position:sticky;
    top:0;
    z-index:101;
}
header .navbar.top, 
footer .navbar.top {
	margin-top: -1.3em;
}
header .navbar .container.text-block-rule, 
footer .navbar .container.text-block-rule {
    border-bottom:solid #fff 1px;
    margin-top:0.25em;
    padding-top:0.75em;
}
header h4.text-block-rule, 
footer h4.text-block-rule {
    border-bottom:solid #fff 1px;
    margin-top:0.25em;
    margin-bottom: 0.9em;
    padding-top:0.75em;
    padding-bottom: 0.5em;
}
header ul li , 
footer ul li {
    margin: 0 0 0.5em 1.5em;
}
header ul.subs, 
footer ul.subs {
    margin: 0 0 0 0.5em;
}
header .button-link-style, 
footer .button-link-style {
    color:#fff !important;
    border:0 !important;
    background-color:transparent;
    margin:0em -0.2em 0em -0.2em;
    padding:0em 0.2em 0em 0.2em
}
.dont-stack-favs {
	float:left;
	clear:none;
}

.width-100-per {
	width:100%;
}
#block-shift .bi {
    margin-left: 0.75em;
}
.mastheadText {
    width:100%;
	height: 100%;
    position: relative;
}
.mastheadTitle {
	position: absolute;
	top: 50%; left: 50%;
	transform: translate(-50%, -50%);
	padding:15px 30px 30px 30px;
	background-color:rgba(33, 37, 41, 0.8);
    border-radius:6px;
}
.samplesBack {
	height:225px;
	background-position:center center;
	background-size:cover;
	border:none;
}
.lightstripe {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc1JyBoZWlnaHQ9JzUnPgogIDxyZWN0IHdpZHRoPSc1JyBoZWlnaHQ9JzUnIGZpbGw9J25vbmUnLz4KICA8cGF0aCBkPSdNMCA1TDUgMFpNNiA0TDQgNlpNLTEgMUwxIC0xWicgc3Ryb2tlPScjMDAwJyBzdHJva2Utd2lkdGg9JzEnLz4KPC9zdmc+");
    background-repeat:repeat;
}
.lighterstripe {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc1JyBoZWlnaHQ9JzUnPgogIDxyZWN0IHdpZHRoPSc1JyBoZWlnaHQ9JzUnIGZpbGw9J25vbmUnLz4KICA8cGF0aCBkPSdNMCA1TDUgMFpNNiA0TDQgNlpNLTEgMUwxIC0xWicgc3Ryb2tlPScjQzRDNEM0JyBzdHJva2Utd2lkdGg9JzAuNScvPgo8L3N2Zz4=");
    background-repeat:repeat;
}
.lighteststripe {
	/*background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc1JyBoZWlnaHQ9JzUnPgogIDxyZWN0IHdpZHRoPSc1JyBoZWlnaHQ9JzUnIGZpbGw9J25vbmUnLz4KICA8cGF0aCBkPSdNMCA1TDUgMFpNNiA0TDQgNlpNLTEgMUwxIC0xWicgc3Ryb2tlPScjMDAwJyBzdHJva2Utd2lkdGg9Jy41Jy8+Cjwvc3ZnPg==");
    background-repeat:repeat;*/
}
@media only screen and (max-width: 768px) {
	.lighteststripe {
		font-size:2rem !important;
  }
}

.carousel-dark .carousel-caption {
    color:#FFF;
    background: rgba(0, 0, 0, 0.75);
}
.carousel-light .carousel-caption {
    color:#000;
    background: rgba(255, 255, 255, 0.75);
}
.modal-body {
    padding:0;
	aspect-ratio: 711 / 400; /* retain height even if image has not yet loaded */
}
.loaded {
	position:relative;
	z-index:2;
}
.carousel-item {
	aspect-ratio: 711 / 400; /* retain height even if image has not yet loaded */
}
.carousel-control-next, 
.carousel-control-prev {
	width:unset;
	margin:0 1em;
	z-index:4; /* position controls above modal content */
	opacity:1;
}
.carousel-control-next-icon, 
.carousel-control-prev-icon {
    width:3rem;
    height:2rem;
    background-color:rgba(0, 0, 0, 0.5);
    border-radius:1em;
    border:0.25em solid rgba(0, 0, 0, 0.5);
    filter:unset !important;
}
.carousel-caption {
    bottom:0;
    left:0;
    right:0;
	z-index:3; /* position captions above modal content */
	font-weight:600;
}
.carousel-caption h5 {
	font-weight:600 !important;
}
.carousel-indicators {
	z-index:4; /* position indicators above modal content */
	margin-bottom:unset;
}