:root{
	--body-font:'Roboto', sans-serif;
	--header-font:'Roboto Slab', sans-serif;
	--color-darkblue:#2980b9;
	--color-darkblue-hover:#3e8cc0;
	--color-green:#27ae60;
	--color-green-hover:#3cb66f;
	--color-orange:#e67e22;
	--color-orange-hover:#e88a38;
	--color-lightbrown:#eadfd2;
	--color-darkbrown:#824838;
	--color-darkbrown-hover:#8e5a4b;
}

body, p, ul li, ol li{
	font-family: var(--body-font);
	font-size: 15px;
	font-weight: 300;
}

h1, h2, h3, h4, h5, h6{
	font-family: var(--header-font);
	font-weight: bold;
}

a, main a{
    color: var(--color-darkblue);
    text-decoration: none;
}

a:hover, main a:hover{
	color: var(--color-darkblue);
}

.bcDarkBlue{
	color: var(--color-darkblue);
}

.bcGreen{
	color: var(--color-green);
}

.bcOrange{
	color: var(--color-orange);
}

.bcLightBrown{
	color: var(--color-lightbrown);
}

.bcDarkBrown{
	color: var(--color-darkbrown);
}

.bgBcDarkBlue{
	color: #fff;
	background-color: var(--color-darkblue);
}

.bgBcGreen{
	color: #fff;
	background-color: var(--color-green);
}

.bgBcOrange{
	color: #fff;
	background-color: var(--color-orange);
}

.bgBcLightBrown{
	background-color: var(--color-lightbrown);
}

.bgBcDarkBrown{
	color: #fff;
	background-color: var(--color-darkbrown);
}

.btnBcBlueSm{
	background-color: var(--color-darkblue);
	color:#fff;
	font-weight: bold;
	border-radius: 0px;
	padding: 10px 25px;
	font-size: 18px;
	display:inline-block;
}

.btnBcBlueLg{
	background-color: var(--color-darkblue);
	color:#fff;
	font-weight: bold;
	border-radius: 0px;
	padding: 10px 45px;
	font-size: 24px;
	display:inline-block;
}

.btnBcGreenSm{
	background-color: var(--color-green);
	color:#fff;
	font-weight: bold;
	border-radius: 0px;
	padding: 10px 25px;
	font-size: 18px;
	display:inline-block;
}

.btnBcGreenLg{
	background-color: var(--color-green);
	color:#fff;
	font-weight: bold;
	border-radius: 0px;
	padding: 10px 45px;
	font-size: 24px;
	display:inline-block;
}

.btnBcOrangeSm{
	background-color: var(--color-orange);
	color:#fff;
	font-weight: bold;
	border-radius: 0px;
	padding: 10px 25px;
	font-size: 18px;
	display:inline-block;
}

.btnBcOrangeLg{
	background-color: var(--color-orange);
	color:#fff;
	font-weight: bold;
	border-radius: 0px;
	padding: 10px 45px;
	font-size: 24px;
	display:inline-block;
}

.btnBcBrownSm{
	background-color: var(--color-darkbrown);
	color:#fff;
	font-weight: bold;
	border-radius: 0px;
	padding: 10px 25px;
	font-size: 18px;
	display:inline-block;
}

.btnBcBrownLg{
	background-color: var(--color-darkbrown);
	color:#fff;
	font-weight: bold;
	border-radius: 0px;
	padding: 10px 45px;
	font-size: 24px;
	display:inline-block;
}

.btnBcBlueSm:hover, .btnBcBlueLg:hover{
	background-color:var(--color-darkblue-hover);
	color:#fff;
	text-decoration: none;
}

.btnBcGreenSm:hover, .btnBcGreenLg:hover{
	background-color:var(--color-green-hover);
	color:#fff;
	text-decoration: none;
}

.btnBcOrangeSm:hover, .btnBcOrangeLg:hover{
	background-color:var(--color-orange-hover);
	color:#fff;
	text-decoration: none;
}

.btnBcBrownSm:hover, .btnBcBrownLg:hover{
	background-color:var(--color-darkbrown-hover);
	color:#fff;
	text-decoration: none;
}

.btnMinWidth{
	min-width: 350px;
}

.backToTopBtn{
	font-weight: 600;
    font-size: 16px;
    border-radius: 0px;
    letter-spacing: 1px;
    background-color: #000 !important;
    color: #fff !important;
	display: inline-block;
    margin: 0px;
    padding: 10px 25px 10px 25px;
}

.backToTopBtn:hover{
	text-decoration: none !important;
}

.brWhite35{
	border:35px solid #fff;
}

.divider{
	height: 3px;
	margin-top: 5px;
	margin-bottom: 5px;
	padding-top: 5px;
	border-top: 1px dotted #CCC;
}

.topDash{
	border-top: 1px dashed #ddd;
}

.bottomDash{
	border-bottom: 1px dashed #ddd;
}

.navbar-light .navbar-toggler {
    color: rgba(0,0,0,.5);
    border-color: rgba(0,0,0,0);
}

.nav-main{
	background-color:#fff;
	position:relative;
	z-index:5;
	box-shadow: 1px 1px 10px #555;
	display: block;
}

.lgHeaderLogos{
	text-align:left !important;
	display:inline-block;
	width:auto;
}

.lgPDP img{
	box-shadow: 5px 5px 5px #CCC;
}

.lgDSYFYF{
	display:inline-block;
	float:right;
	padding-left:20px;
}

.smHeaderLogos a:hover{
	text-decoration: none;
}

.smHeaderLogos img{
	height: 60px;
}

.top-info{
	text-align: right;
	font-size: 13px;
	padding-bottom: 30px;
}

.top-info a:hover{
	text-decoration: none !important;
}

.header-smi{
	height: 30px;
	border-radius: 1px;
}	

.navbar{
	background-color: #fff;
}

.navbar-light .navbar-nav .nav-link {
    color: #555;
	font-size: 15px;
	padding: 5px 20px;
	text-transform: uppercase;
	font-weight: 400;
	transition: all 0.3s ease;
}

.navbar-light .navbar-nav .nav-link:hover {
    color: #000;
}

.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
	color: #000;
}

.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: #000;
}

.navbar-light .navbar-toggler {
	border-color: transparent;
}

.dropdown-menu {
	background-color: var(--color-darkbrown);
	margin-top: -1px;
	padding:15px;
}

.dropdown-item {
	padding: 0px;
	background-color: transparent !important;
}

.dropdown-menu a {
	font-size: 15px;
	display: block;
	padding: 5px;
	color: #fff;
	text-decoration: none;
	font-weight: 300;
}

.dropdown-menu a:focus, .dropdown-menu a:hover {
	color: #fff;
}

.banner{
	height: 500px;
}

.bgImage{
	height: 600px;
}

.bgImage .overlayBlack{
	background:rgba(0,0,0, 0.25);
	color:#fff;
}

.bgImage h1{
	text-shadow: 1px 1px 3px #000;
	font-weight: bold;
	text-transform: uppercase;
}

.overlay-white{
	height:100%;
	width:100%;
	background:rgba(255,255,255, 0.5);
	position:relative;
}

.overlay-black{
	height:100%;
	width:100%;
	background:rgba(0,0,0, 0.5);
	position:relative;
}

.tsBlack{
	text-shadow: 1px 1px 3px #000;
}

.tsGrey{
	text-shadow: 1px 1px 3px #333;
}

.tsWhite{
	text-shadow: 1px 1px 3px #fff;
}

.tsNone{
	text-shadow: 0px 0px 0px;
}

.bigText{
	font-weight: 600;
	font-size: 46px;
}

.bigTextX{
	font-weight: 600;
	font-size: 63px;
}

.bigTextEx{
	font-size: 80px;
	font-weight: 600;
}

.greyCircle{
	border:10px solid #ddd;
	border-radius: 50%;
}

.greySquare{
	border:10px solid #ddd;
}

.whiteCircle{
	border:10px solid #fff;
	border-radius: 50%;
	box-shadow: 0px 0px 10px #ccc;
}

.whiteSquare{
	border:10px solid #fff;
	box-shadow: 0px 0px 10px #ccc;
}

.whiteBr10{
	border:10px solid #fff;
}

.lh-15em{ 
	line-height: 1.5em;
}

.borderSidesLg{
	border-left: 1px solid #fff;
    border-right: 1px solid #fff;
}

.videoBanner {
  	position: relative;
  	background-color: black;
  	height: 75vh;
  	min-height: 25rem;
  	width: 100%;
 	overflow: hidden;
}

.videoBanner video {
  	position: absolute;
  	top: 50%;
  	left: 50%;
  	min-width: 100%;
  	min-height: 100%;
  	width: auto;
  	height: auto;
  	z-index: 0;
  	-ms-transform: translateX(-50%) translateY(-50%);
  	-moz-transform: translateX(-50%) translateY(-50%);
  	-webkit-transform: translateX(-50%) translateY(-50%);
  	transform: translateX(-50%) translateY(-50%);
}

.videoBanner .container {
  	position: relative;
  	z-index: 2;
}

.videoBanner .overlay {
  	position: absolute;
  	top: 0;
  	left: 0;
  	height: 100%;
  	width: 100%;
  	background-color: black;
  	opacity: 0.25;
  	z-index: 1;
}

.circleLink img{
	width: 250px;
	transition: all 0.3s ease;
}

.circleLink:hover img{
	transform: scale(1.085);
}

.modal-backdrop{
	opacity:0.65 !important;
}

/*.modal-dialog {
	max-width: 1000px;
}*/

.modal-header {
	border-bottom: none;
	padding-bottom: 0px;
	padding-top: 10px;
}
.linkBox{
	display:block;
	position:relative;
}

.linkBox img{
	display:block;
	width:100%;
	height:auto;
}

.linkBoxOverlay{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;    
	background-color: rgba(37, 37, 37, 0.5);
	transition: background-color ease-in-out .2s;
}

.linkBoxOverlay:hover{  
	background-color: rgba(37, 37, 37, 0.2);
}

.linkBoxText{
	position:relative;
	display:block;top:45%;    
	text-align: center;    
	padding-left: 3rem;
	padding-right: 3rem;
}

.linkBox h3{
	color: #fff;
	text-shadow: 1px 1px #2B2B2B;
}

.ribbon-wrapper {
	position: relative;
	z-index: 1;
}

.ribbonRed {
	font-size: 24px!important;
	text-transform: uppercase;
	width: 90%;
	position: relative;
	background: #980A0D;
	color: #fff;
	text-align: center;
	padding: 1em 2em;
	margin: 1em auto 0em;
	border: none;
}

.ribbonRed:after, .ribbonRed:before {
	content: "";
	position: absolute;
	display: block;
	bottom: -1em;
	border: 1.5em solid #79080a;
	z-index: -1
}

.ribbonRed:before {
	left: -2em;
	border-right-width: 1.5em;
	border-left-color: transparent
}

.ribbonRed:after {
	right: -2em;
	border-left-width: 1.5em;
	border-right-color: transparent
}

.ribbonRed-inner:after, .ribbonRed-inner:before {
	content: "";
	position: absolute;
	display: block;
	border-style: solid;
	border-color: #4c0506 transparent transparent;
	bottom: -1em
}

.ribbonRed-inner:before {
	left: 0;
	border-width: 1em 0 0 1em
}

.ribbonRed-inner:after {
	right: 0;
	border-width: 1em 1em 0 0
}

.ribbonGold {
	font-size: 24px!important;
	text-transform: uppercase;
	width: 90%;
	position: relative;
	background: #EFBF04;
	color: #fff;
	text-align: center;
	padding: 1em 2em;
	margin: 1em auto 0em;
	border: none;
}

.ribbonGold:after, .ribbonGold:before {
	content: "";
	position: absolute;
	display: block;
	bottom: -1em;
	border: 1.5em solid #bf9803;
	z-index: -1
}

.ribbonGold:before {
	left: -2em;
	border-right-width: 1.5em;
	border-left-color: transparent
}

.ribbonGold:after {
	right: -2em;
	border-left-width: 1.5em;
	border-right-color: transparent
}

.ribbonGold-inner:after, .ribbonGold-inner:before {
	content: "";
	position: absolute;
	display: block;
	border-style: solid;
	border-color: #8f7202 transparent transparent;
	bottom: -1em
}

.ribbonGold-inner:before {
	left: 0;
	border-width: 1em 0 0 1em
}

.ribbonGold-inner:after {
	right: 0;
	border-width: 1em 1em 0 0
}

.ribbonSilver {
	font-size: 24px!important;
	text-transform: uppercase;
	width: 90%;
	position: relative;
	background: #C4C4C4;
	color: #fff;
	text-align: center;
	padding: 1em 2em;
	margin: 1em auto 0em;
	border: none;
}

.ribbonSilver:after, .ribbonSilver:before {
	content: "";
	position: absolute;
	display: block;
	bottom: -1em;
	border: 1.5em solid #9c9c9c;
	z-index: -1
}

.ribbonSilver:before {
	left: -2em;
	border-right-width: 1.5em;
	border-left-color: transparent
}

.ribbonSilver:after {
	right: -2em;
	border-left-width: 1.5em;
	border-right-color: transparent
}

.ribbonSilver-inner:after, .ribbonSilver-inner:before {
	content: "";
	position: absolute;
	display: block;
	border-style: solid;
	border-color: #757575 transparent transparent;
	bottom: -1em
}

.ribbonSilver-inner:before {
	left: 0;
	border-width: 1em 0 0 1em
}

.ribbonSilver-inner:after {
	right: 0;
	border-width: 1em 1em 0 0
}

.ribbonBrown {
	font-size: 24px!important;
	text-transform: uppercase;
	width: 90%;
	position: relative;
	background: #8e5a4b;
	color: #fff;
	text-align: center;
	padding: 1em 2em;
	margin: 1em auto 0em;
	border: none;
}

.ribbonBrown:after, .ribbonBrown:before {
	content: "";
	position: absolute;
	display: block;
	bottom: -1em;
	border: 1.5em solid #71483c;
	z-index: -1
}

.ribbonBrown:before {
	left: -2em;
	border-right-width: 1.5em;
	border-left-color: transparent
}

.ribbonBrown:after {
	right: -2em;
	border-left-width: 1.5em;
	border-right-color: transparent
}

.ribbonBrown-inner:after, .ribbonBrown-inner:before {
	content: "";
	position: absolute;
	display: block;
	border-style: solid;
	border-color: #55362d transparent transparent;
	bottom: -1em
}

.ribbonBrown-inner:before {
	left: 0;
	border-width: 1em 0 0 1em
}

.ribbonBrown-inner:after {
	right: 0;
	border-width: 1em 1em 0 0
}

.ribbonBlue {
	font-size: 24px!important;
	text-transform: uppercase;
	width: 90%;
	position: relative;
	background: #3498db;
	color: #fff;
	text-align: center;
	padding: 1em 2em;
	margin: 1em auto 0em;
	border: none;
}

.ribbonBlue:after, .ribbonBlue:before {
	content: "";
	position: absolute;
	display: block;
	bottom: -1em;
	border: 1.5em solid #2979af;
	z-index: -1
}

.ribbonBlue:before {
	left: -2em;
	border-right-width: 1.5em;
	border-left-color: transparent
}

.ribbonBlue:after {
	right: -2em;
	border-left-width: 1.5em;
	border-right-color: transparent
}

.ribbonBlue-inner:after, .ribbonBlue-inner:before {
	content: "";
	position: absolute;
	display: block;
	border-style: solid;
	border-color: #1f5b83 transparent transparent;
	bottom: -1em
}

.ribbonBlue-inner:before {
	left: 0;
	border-width: 1em 0 0 1em
}

.ribbonBlue-inner:after {
	right: 0;
	border-width: 1em 1em 0 0
}


.sponsors img{
	width: 225px;
	border:25px solid #fff;
	border-radius:10px;
}

.sponsors .owl-carousel img{
	width: 225px !important;
	display:inline-block;
	margin: auto;
	border:25px solid #fff;
	border-radius:10px;
}

.bgRiders{
	background-image:url(../../img/girl-riders.png);
	background-position: top; 
	background-size: cover;
	background-color:transparent;
	height: 700px;
}

.bgPatternAbsurdity{
	background-image: url(../../img/pattern-absurdity.png);
	background-repeat: repeat;
}

.sub-footer{
	background-color: var(--color-darkblue);
	color: #fff;
}

.sub-footer a{
	color: #fff;
	font-size: 14px;
	font-weight: 300;
}

.sf-title{
	font-weight: bold;
	text-transform: uppercase;
	font-size:16px;
	margin-bottom: 0px;
}

.footer {
    background-color: #fff;
	
}

.footer a{
	color: #0071c1;
}

.footer a:hover{
	text-decoration: underline;
}

.footer-smi-link:hover{
	text-decoration: none !important;
}

.footer-smi{
	height: 50px;
	border-radius: 4px;
}

.copyright{
	text-align: center;
	font-size: 12px;
}

.backToTop {
    position:fixed;
	bottom:0;
	right:0;
	z-index: 10000;
}


/* XLarge devices (desktops, less than 1440px) */
@media (min-width: 1440px){
	.container-xl {
		max-width: 1410px;
		margin: auto;
	}
}

@media (max-width: 1440px){
	.container-xl {
		width: 100%;
		padding-right: 15px;
		padding-left: 15px;
		margin-right: auto;
		margin-left: auto;
	}
	
	.bgImage{
		height: 500px;
	}
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
	.navbar-light .navbar-nav .nav-link {
		font-size: 14px;
		padding: 5px 11px;
	}
	
	.banner h1, .bgImage h1{
		font-size: 52px;
	}
	
	.bgImage{
		height: 500px;
	}
}

/* Medium devices (tablets, more than 992px) */
@media (min-width: 992px){
	.sticky_footer {
		left: auto;
		right: 0;
		width: 150px;
		border-left: none;
	}
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
	.dropdown-menu a {
		font-size: 14px;
		padding: 5px 10px;
	}
	
	.bigTextEx{
		font-size: 65px;
	}
	
	.banner h1, .bgImage h1{
		font-size: 40px;
	}
	
	.bgImage{
		height: 400px;
	}
	
	.borderSidesLg{
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
		border-left: none;
		border-right: none;
	}
	
	.ribbonRed, .ribbonGold, .ribbonSilver{
		width: 80%;
	}
	
	.copyright{
		font-size: 11px;
	}
}

/* Medium devices (tablets, more than 992px) 
@media only screen and (min-width:992px) {
  .dropdown:hover .dropdown-menu {
    display: block;
  }
  .dropdown-submenu {
    position: relative !important;
  }
  .dropdown-submenu>.dropdown-menu {
    top: 0 !important;
    left: 100% !important;
    margin-top: -6px !important;
    margin-left: -1px !important;
    border-radius: 0 !important;
  }
  .dropdown-submenu:hover>.dropdown-menu {
    display: block !important;
  }
  .dropdown-submenu>a:after {
    display: block;
    content: "\f105";
    font-family: 'FontAwesome';
    margin-top: -18px;
    right: 15px;
    position: absolute;
    font-weight: 300;
  }
}*/

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
	.top-info{
		font-size: 11.5px;
	}
	
	.navbar-light .navbar-nav .nav-link {
		font-size: 14px;
	}
	
	.banner{
		height: 650px;
	}
	
	.banner h1{
		font-size: 36px;
	}
	
	.bigTextEx{
		font-size: 52px;
	}
	
	.ribbonRed, .ribbonGold, .ribbonSilver, .ribbonBrown{
		font-size: 18px!important;
	}
	
	.copyright{
		font-size: 12px;
		text-align: center;
	}
	
}

/* Extra small devices (portrait phones, less than 576px)*/
@media (max-width: 575.98px) {
	.navbar-nav {
		margin-top: 10px;
		margin-bottom: 10px;
		font-size: 14px;
	}
	
}
