/* color definitions */
.bg-white{
	background-color: #ffffff !important;
}

.bg-blue{
	background-color: #0095ff;
}

.bg-light-blue{
	background-color: #c8e6fb;
}

.bg-dark-blue{
	background-color: #003a63;
}

.bg-dark {
	background-color: #2b2d2f;
}

.bg-light-gray{
	background-color: #fafafa;
}

.bg-dashboard-gray{
	background-color: #fcfcfc;
}

.color-grey{
	color: #cccccc;
}
.color-inherit{
	color: inherit;
}

/* opacity */

.opacity-0{
	opacity: 0;
}

.opacity-03{
	opacity: 0.3;
}

.opacity-1{
	opacity: 1 !imortant;
}

/* width and height */
.width-full,
.full-width {
	width: 100%;
	max-width: 100%;
}

.width-inherit {
	width: inherit;
}

.max-width-inherit {
	max-width: inherit;	
}

.viewport-height {
  height: 100vh; /* Fallback for browsers that do not support Custom Properties */
  height: calc(var(--vh, 1vh) * 100);
}

.viewport-min-height {
  min-height: 100vh; /* Fallback for browsers that do not support Custom Properties */
  min-height: calc(var(--vh, 1vh) * 100);
}

.viewport-max-height {
  max-height: 100vh; /* Fallback for browsers that do not support Custom Properties */
  max-height: calc(var(--vh, 1vh) * 100);
}

.full-height{
	height: 100%;
	max-height: 100%;
}

.background-cover {
	background-size: cover;
}

.background-contain {
	background-size: contain;
}

/* display properties */
.block{
	display: block;
}

.hidden{
	display: none !important;
}

.invisible {
	visibility: hidden;
}

.inline{
	display: inline;
}

.flex{
	display: flex;
}

.flex-center {
	display: flex;
	align-items: center;
}


.justify-center {
	justify-content: center;
}

.flex-column {
	flex-direction: column;
}

.flex-wrap {
	flex-wrap: wrap;
}

.scrolling-touch {
	-webkit-overflow-scrolling: touch !important;
}

.scrolling-auto {
	-webkit-overflow-scrolling: auto !important;
}

.stack-bottom-up {
	 display: flex; 
	 align-items: flex-end;
	 flex-direction: column-reverse; 
}

.stack-top-down{
  	display: flex; 
	align-items: flex-start;
	flex-direction: column; 
}


.inline-block{
	display: inline-block;
}

.table{
	display: table;
}

.inline-table{
	display: inline-table;
}



/* positions: absolute, fixed, relative */
.absolute{
	position: absolute !important;
}

.fixed{
	position: fixed !important;
}

.relative{
	position: relative;
}

.sticky{
	position: sticky;
}


/* floating etc */

.float-left{
	float: left;
}

.float-right{
	float: right;
}

.clearfix{
	clear: both;
}


/* positioning: bottom, left, right, top */

.bottom-0{
	bottom: 0px;
}

.bottom-3{
	bottom: 3px;
}

.bottom-6{
	bottom: 6px;
}

.bottom-9{
	bottom: 9px;
}

.bottom-12{
	bottom: 12px;
}

.bottom-15{
	bottom: 15px;
}

.bottom-18{
	bottom: 18px;
}

.bottom-21{
	bottom: 21px;
}

.bottom-24{
	bottom: 24px;
}


.left-0{
	left: 0px;
}

.left-3{
	left: 3px;
}

.left-6{
	left: 6px;
}

.left-9{
	left: 9px;
}

.left-12{
	left: 12px;
}

.left-15{
	left: 15px;
}

.left-18{
	left: 18px;
}

.left-21{
	left: 21px;
}

.right-0 {
	right: 0px;
}

.right-3{
	right: 3px;
}

.right-6{
	right: 6px;
}

.right-9{
	right: 9px;
}

.right-12{
	right: 12px;
}

.right-15{
	right: 15px;
}

.top-0{
	top: 0px;
}

.top-3{
	top: 3px;
}

.top-6{
	top: 6px;
}

.top-9{
	top: 9px;
}

.top-12{
	top: 12px;
}

.top-15 {
	top: 15px;
}

.top-18 {
	top: 18px;
}
.top-21 {
	top: 21px;
}
.top-24 {
	top: 24px;
}

.top-27 {
	top: 27px;
}

.top-30 {
	top: 30px;
}

.top-46{
	top: 46px;
}

.top-54{
	top: 54px;
}

.top-56{
	top: 56px;
}

.top-60{
	top: 60px;
}

.top-90{
	top: 90px;
}

.top-120{
	top: 120px;
}


.top-156{
	top: 156px;
}

.top-210{
	top: 210px;
}

.top-50p {
	top: 50%;
}

/*spacing: margin, padding*/

.margin-0, .margin-none, .no-margin{
	margin: 0;
}

.margin-center,
 .center{
 	margin: 0 auto;
 }
 
  .margin-3{
 	margin: 3px;
 }
 
 .margin-6{
 	margin: 6px;
 }
 
 .margin-9{
 	margin: 9px;
 }
 
 .margin-12{
 	margin: 12px;
 }
 
 .margin-15{
 	margin: 15px;
 }
 
 .margin-18{
 	margin: 18px;
 }
 
  .margin-21{
 	margin: 21px;
 }
  .margin-30{
 	margin: 30px;
 }
 
 .margin-bottom-0{
 	margin-bottom: 1px;
 }
 
 .margin-bottom-1{
 	margin-bottom: 1px;
 }
 
 .margin-bottom-3{
 	margin-bottom: 3px;
 }
 
 .margin-bottom-6{
 	margin-bottom: 6px;
 }
 
 .margin-bottom-9{
 	margin-bottom: 9px;
 }
 
 .margin-bottom-12{
 	margin-bottom: 12px;
 }
 
 .margin-bottom-15{
 	margin-bottom: 15px;
 }

 .margin-bottom-18{
 	margin-bottom: 18px;
 }
 
 .margin-bottom-30{
 	margin-bottom: 30px;
 }
 .margin-bottom-42{
 	margin-bottom: 42px;
 }
 
 .margin-bottom-60{
 	margin-bottom: 60px;
 }
 
 .margin-left-3 {
 	margin-left: 3px;
 }
 .margin-left-6 {
 	margin-left: 6px;
 }
 .margin-left-9{
 	margin-left: 9px;
 }
 
 .margin-left-12{
 	margin-left: 12px;
 }
 
 .margin-left-15{
 	margin-left: 15px;
 }
 
 .margin-left-21{
 	margin-left: 21px;
 }

 .margin-left-24{
 	margin-left: 24px;
 }
 
 .margin-left-30{
 	margin-left: 30px;
 }
 
 .margin-right-3{
 	margin-right: 3px;
 }
 
 .margin-right-6{
 	margin-right: 6px;
 }
 
 .margin-right-9{
 	margin-right: 9px;
 }
 
 .margin-right-12{
 	margin-right: 12px;
 }
 
 .margin-right-15{
 	margin-right: 15px;
 }
 .margin-right-18{
 	margin-right: 18px;
 }

 .margin-right-21{
 	margin-right: 21px;
 }
 
 .margin-right-30{
 	margin-right: 30px;
 }
 
 .margin-top-0{
 	margin-top: 0;
 }
 
 .margin-top-3{
 	margin-top: 3px;
 }
  .margin-top-6{
 	margin-top: 6px;
 }
  .margin-top-9{
 	margin-top: 9px;
 }
 
 .margin-top-12{
 	margin-top: 12px;
 }
 
 .margin-top-15{
 	margin-top: 15px;
 }
 
 .margin-top-21{
 	margin-top: 21px;
 }
 
 .margin-top-27{
 	margin-top: 27px;
 }
 
 .margin-top-30{
 	margin-top: 30px;
 }
 
 .margin-top-36{
 	margin-top: 36px;
 }
 
  .margin-top-60{
 	margin-top: 60px;
 }

 .padding-0{
 	padding: 0;
 }

 .padding-3{
 	padding: 3px;
 }
 
 .padding-6{
 	padding: 6px;
 }
 
 .padding-9{
 	padding: 9px;
 }
 
 .padding-12{
 	padding: 12px;
 }
 
 .padding-15{
 	padding: 15px;
 }
 
.padding-18{
 	padding: 18px;
 }
 
  .padding-21{
 	padding: 21px;
 }
 
   .padding-24{
 	padding: 24px;
 }
 
  .padding-30{
 	padding: 30px;
 }
 
   .padding-60{
 	padding: 60px;
 }
 
 
  .padding-left-3{
 	padding-left: 3px;
 }
 
 .padding-left-6{
 	padding-left: 6px;
 }
 
 .padding-left-9{
 	padding-left: 9px;
 }
 
 .padding-left-12{
 	padding-left: 12px;
 }
 
 .padding-left-15{
 	padding-left: 15px;
 }
 
 .padding-left-18{
 	padding-left: 18px;
 }
 
 .padding-left-21{
 	padding-left: 21px;
 }

 .padding-left-30{
 	padding-left: 30px;
 }
 
  .padding-right-3{
 	padding-right: 3px;
 }
 
 .padding-right-6{
 	padding-right: 6px;
 }
 
 .padding-right-9{
 	padding-right: 9px;
 }
 
 .padding-right-12{
 	padding-right: 12px;
 }
 
 .padding-right-15{
 	padding-right: 15px;
 }
 
  .padding-right-18{
 	padding-right: 18px;
 }
 
  .padding-right-21{
 	padding-right: 21px;
 }
 
 .padding-right-24{
 	padding-right: 24px;
 }

 .padding-top-3{
 	padding-top: 3px;
 }
 
 .padding-top-6{
 	padding-top: 6px;
 }
 
 .padding-top-9{
 	padding-top: 9px;
 }
 
 .padding-top-12{
 	padding-top: 12px;
 }
 
 .padding-top-15{
 	padding-top: 15px;
 }
 
 .padding-top-30{
 	padding-top: 30px;
 }
 .padding-top-60{
 	padding-top: 60px;
 }
 
 .padding-bottom-0{
 	padding-bottom: 0;
 }
 
 .padding-bottom-3{
 	padding-bottom: 3px;
 }
 
 .padding-bottom-6{
 	padding-bottom: 6px;
 }
 
 .padding-bottom-9{
 	padding-bottom: 9px;
 }
 
 .padding-bottom-12{
 	padding-bottom: 12px;
 }
 
 .padding-bottom-15{
 	padding-bottom: 15px;
 }
 .padding-bottom-30{
 	padding-bottom: 30px;
 }
 .padding-bottom-60{
 	padding-bottom: 60px;
 }
 
 .padding-bottom-120{
 	padding-bottom: 120px;
 }
 
 /*alignment*/
 .vertical-bottom{
	vertical-align: bottom;
}
 
.vertical-middle{
	vertical-align: middle;
}

.vertical-top{
	vertical-align: top;
}

.vertical-text-bottom {
	vertical-align: text-bottom;
}

.vertical-webkit-middle{
	vertical-align: -webkit-baseline-middle;
}
.translate-x-m-50{
	transform: translateX(-50%);
}
 
 /* styling */
 
 .content-primary{
 	padding: 75px 15px;
 } 
 
 .content-secondary{
 	padding: 50px 15px 0px 15px;
 }  
 
 .content-tertiary{
 	padding: 25px 15px;
 }
 
 .overflow-hidden{
 	overflow: hidden;
 }
 
 .overflow-visible{
 	overflow: visible;
 }

 .overflow-auto{
 	overflow: auto;
 }
 
 .overflow-y-auto{
 	overflow-y: auto;
 }
 .overflow-x-hidden{
 	overflow-x: hidden;
 }
 
 /* border radius */
 .border-none {
 	border: none !important;
 }
 .border-radius-3{
 	border-radius: 3px;
 }
 .border-radius-6{
 	border-radius: 6px;
 }
 .border-radius-12{
 	border-radius: 12px;
 }
 
 
 .border-top-grey, .border-top-gray {
 	    border-top: 1px solid #dfdfdf;
 }
 
 .border-top-dark {
 	    border-top: 1px solid #2b2d2f;
 }
 
 .border-blue{
 	border: 1px solid #0095ff;
 }

 .border-bottom-blue {
 	border-bottom: 1px solid #0095ff;
 }

 .border-bottom-dark {
 	    border-bottom: 1px solid #2b2d2f;
 }
 

  .border-bottom-grey, .border-bottom-gray{
 	    border-bottom: 1px solid  #dfdfdf;
 }
 
 .border-right-gray{
 	    border-right: 1px solid #dfdfdf;
 }

 /* flex stuff*/
 .flex-start{
 	justify-content: flex-start;
 }
 
 .flex-between {
    justify-content: space-between;
 }
 
 .flex-end{
 	justify-content: flex-end;
 }
 
 /* cursor */
 .pointer{
 	cursor: pointer;
 }
 
 /* z-index */
 .z-index-0 {
  z-index: 0;
 }
 .z-index-1 {
  z-index: 1;
 }
 .z-index-2 {
  z-index: 2;
 }
 .z-index-3 {
  z-index: 3;
 }
 .z-index-4 {
  z-index: 4;
 }
 
 .z-index-5 {
  z-index: 5;
 }
 
 .z-index-6 {
  z-index: 6;
 }
 
 
 .box-shadow-6 {
 	box-shadow: 0 0 6px 0 #00000040;
 }
 
 a.link{
	color: #0095ff;
}


a.link:hover{
	color: #406580;
}
 