body {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size:1em;
	line-height:1.15em;
	color:#333;
	background:#f5f7fa;	
}


h1, h2, h3, h4, h5, h6 {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

	
h6 {
	clear:both;
}

h1,h2,h3 {
	font-weight:700;
	color:#222;
    letter-spacing: 0px;
}

h1 {
	font-size: 2.4em;
	font-weight:300;
	margin-top:10px;
	clear:both;
}

h2 {
	font-size: 1.5em;
	font-weight:400;
	margin-top:0px;
}
.columns > h2:first-of-type  {
	margin-top:30px;
}

h3 {
	font-size: 1.3em;
	font-weight:400;
	margin-top:25px;
}

h4 {
	font-size: 1.2em;
}

h6.is-active {
	color:#999;
    border-bottom: 1px solid #ccc;
	margin:0;
	padding:5px 5px;
}

#left h6.is-active {
	background:#7ea1c5;
	color:#fff;
	margin-bottom:0;
	padding: 10px 5px 7px;
	border:0;
}

.row {
    max-width: 72.5rem;
}

a {
	color:#426994;
	color: #1779ba;
	transition: all .3s;
	text-decoration: underline;
}

a.button {
	text-decoration: none;
}

a:hover {
	color:#C00	
}

a.disabled {
	cursor: not-allowed !important;
	opacity:0.5;
    filter:alpha(opacity=50);
}

p {
	
}

b, .bold {
	font-weight:600;
}

.inline-block {
	display:inline-block;
}

.block {
	display:block;
}

.regular, .standard-text {
	font-weight:normal
}

.bold-600 {
	font-weight:600;
}

.is-dropdown-submenu {
	margin-left:5px;
	border-radius:5px;
}

ul.side ul {
	margin:0;
	border-radius:0;
}

ul.double-space li, ol.double-space li {
	margin-bottom:1rem;
}

.side.dropdown.menu.vertical>li .is-dropdown-submenu {
    top: -1px;
}
.side .is-dropdown-submenu a {
    padding: .6rem 1rem;
}

.border-bottom {
	border-bottom:1px solid #ccc;
}

.callout {
	border-radius:4px;
	border-color:#fff;
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1);
}.callout * {
    color: #fff;
}.callout a:hover {
    color: #ccc;
}

.callout.grey, .callout {
    background-color:#5a5c69;
    color: #fff;
}
.callout.grey * {
    color: #fff;
}



.callout.success {
    background-color: rgb(63 171 103);
    color: #fff;
}
.callout.success * {
    color: #fff;
}
.callout.success.fade {
	background-color:#e1ede5;
	color: #258b4b;
}.callout.success.fade * {
    color: #258b4b;
}

.callout.warning {
    background-color:#fbcd6a;
    color: #000;
}.callout.warning * {
    color: #000;
}

.callout.alert {
    background-color:#c72c11;
    color: #fff;
}.callout.alert * {
    color: #fff;
}

.callout.alert.fade {
    background-color:#f8ecea;
	border-color:#ebc1ba;
    color: #c72c11;
}.callout.alert.fade * {
    color: #c72c11;
}

.warning-text {
	color:#ffae00
}

.success-text {
	color:#00a33d;
}
a.success-text:hover {
	color:#338f55;
}

.alert-text {
	color:#c72c11;
}
a.alert-text:hover {
	color:#8a1f0c;
}

ul.large {
	font-size:1.1em;
}

ul.spaced li {
	margin-bottom:.5rem;
}



table, thead, tbody {
	background-color:transparent;
}

table {
	border-collapse:separate;
	display:table;
}

table tr th, table tr td {
	padding:15px 10px;
	vertical-align:top;
}



table tr th {
	text-align:left;
	background:#ebeff5;
	color:#333;
	border-bottom:1px solid #ccc;
}
table tr th.transparent {
	background:transparent;
}



tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: transparent;
}

tbody tr:nth-child(even) td {
    border-bottom: 0;
    background-color: #fff;
}

.card tbody tr:nth-child(even) td {
    border-bottom: 0;
    background-color: #f5f7fa;
}

table tr.no-style th, 
table tr.no-style td {
	background:#f5f7fa !important;
	padding:10px 0;
}

table tfoot {
	border:none;
}


table.print, table.print tr th, table.print tr td {
	border:1px solid #999;
}

table.no-padding tr th, table.no-padding tr td {
	padding:2px 5px;
}

table.min-padding tr th, table.min-padding tr td {
	padding:10px;
}


table.stack tr {
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
}

table.stack tr th, table.stack tr td {
	padding:2px;
	text-align:left;
}

table tfoot tr.no-style th, table tfoot tr.no-style td {
	padding:10px 0;
}

th.sorting_asc::after {
    content: " ▲";
    font-size: 0.8em;
	color:rgba(0, 0, 0, 0.3);
	float: right;
}

th.sorting_desc::after {
    content: " ▼";
    font-size: 0.8em;
	color:rgba(0, 0, 0, 0.3);
	float: right;
}

.no-bk {
	background:transparent !important;
}

.no-border {
	border:none;
}

small, h1 small, h2 small, h3 small h4 small, h5 small {
	color:inherit;
	font-weight: 400;
    opacity: .8;
	font-size:.675em;
}

.small {
	font-weight: 400;
    opacity: .8;
	font-size:.875em;
}

.reveal.small {
	opacity:1;
}

.horizontal {
	list-style-type: none;
	padding: 0;
	margin: 0;
	text-align: left;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
}
.horizontal > li {
	display: flex;
	flex-direction: column;
	align-items: left;
	position: relative;
	flex: 1;
	margin: 10px 3px;
}



.node {
	min-width:95%;
	border-bottom: 1px solid #ccc;
	padding: 0px;
	background: #fff;
	position: relative;
	font-weight:bold;
	text-align:left;
}

.print-button {
	padding:10px 10px 12px;
}

.top {

}

.horizontal  li ul li {
	margin-top: 5px;
	font-size:.95em;
	text-align:left;
}

.line {
	position:relative;
	margin:20px 0;
	border-top:1px solid #ccc;
	clear:both;
	display: block;
    float: left;
    width: 100%;
}

.box-score {
	border:1px solid #eee;
	margin:0 0 10px;
	padding:5px;
	list-style:none;
	color:#666;
}

.box-score li:first-child {
	border-bottom:1px solid #eee;
}

.box-score li span.matches {
	float:right;
	color:#ccc;
}

.box-score li span.final {
	font-weight:bold;
	color:#666;
	margin-left:10px;
}


.total {
	font-size:1.4em;
}



.faded {
	opacity:0.5;
    filter:alpha(opacity=50);
}

.faded-30 {
	opacity:0.3;
    filter:alpha(opacity=30);
}

.faded-20 {
	opacity:0.2;
    filter:alpha(opacity=20);
}

.faded-10 {
	opacity:0.1;
    filter:alpha(opacity=10);
}


.strikethrough {
	text-decoration: line-through;
}

.label {
	padding:4px;
}

.right {
	float: right;
}

.round {
	border-radius:500px;
}

.rounded {
	border-radius:10px;
}

li.no-bullet {
	list-style-type: none; 
	margin-left:-1.25rem;
}

li.admin a, .side.menu > li.admin > a:hover , .dropdown.menu>li.admin.is-active>a {
	background:#a72d2e;
	color:#fff;
}

.dropdown.menu.vertical>li.admin.opens-right>a::after {
    border-color: transparent transparent transparent #fff;
}

.card {
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1);
	background:#fff;
	padding:10px;
	width:100%;
    border-radius: 3px;
}

.card.lt-bk {
	background:#f5f7fa;
}

.card.certified {
	background:#e8f0f9;
	border: 1px solid #a7c5ed;
}

.context-menu {
	font-weight:normal;
	line-height:1.9em;
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1);
	background:#fff;
	padding:10px 0;
    border-radius: 3px;
}

.context-menu a {
	display:block;
	padding:0 10px;
	margin-bottom:5px;
}

.context-menu a:last-child {
	margin-bottom: 0 !important;
  }

.context-menu a:hover {
	background:#eee;
}

.context-menu .info {
	color:#999;
}

.i-block {
	display:inline-block;
}

.help-anchor {
	margin-bottom: 100px;
    position: relative;
    clear: both;
    display: block;
}

.ccard {
	/*max-width:525px;
	height:305px;*/
	/*margin:0 auto 25px;*/
}

.ccard .card-section {
    position: relative;
}

.ccard .card-section .bottom-text {
    margin: 10px 0px 0;
	text-align:left;
	color:#999;
	border-top:1px solid #ddd;
	display:block;
	width:100%;
}

.card.basic {
	padding:20px;
}

.card-section {
	padding:1rem .5rem 2rem;
	color:#444;
}

.card-section h1 {
	font-size:1.6em;
}

.card-section .certifications  {
	line-height:2em;
	}
	
	.card-section .certifications .label {
background:#f5f7fa;
color:#333;
padding:7px;
border-radius:3px;
border:1px solid #ddd;
}

.card-divider {
	font-size:1.5em;
	padding-left:10px;
	background:#f5f7fa;
	border:1px solid #ddd;
	color:#666;
	border-radius:5px;
}

.min-margin {
	margin:0 0 3px;
}

.no-margin {
	margin:0 !important;
}

.no-margin-top {
	margin-top:0 !important;
}

.no-margin-bottom {
	margin-bottom:0 !important;
}

.no-padding {
	padding:0;
}

blockquote {
	background:#e7edf5;
	padding:5px 5px 5px 10px;
	color:#555;
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1);
}

.select2-container {
	margin-bottom:12px;
}

.select2-search__field {
	margin:0;
	height:0;
}

[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea {
	height:auto;
}

.select2-selection.select2-selection--multiple, .input-box {
	
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    border: 1px solid #cacaca;
    border-radius: 0;
    background-color: #fefefe;
    -webkit-box-shadow: inset 0 1px 2px rgba(10, 10, 10, .1);
    box-shadow: inset 0 1px 2px rgba(10, 10, 10, .1);
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #0a0a0a;
    -webkit-transition: border-color .25sease-in-out, -webkit-box-shadow .5s;
    transition: border-color .25sease-in-out, -webkit-box-shadow .5s;
    transition: box-shadow .5s, border-color .25sease-in-out;
    transition: box-shadow .5s, border-color .25sease-in-out, -webkit-box-shadow .5s;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #f5f7fa;
    border: 1px solid #ddd;
    border-radius: 4px;
    cursor: default;
    float: left;
    margin-right: 5px;
    margin-top: 5px;
    padding: 0 5px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: #1779ba;
}


.stacker-card {
    background: #f9f9f9;
	border: 1px solid #ddd;
	border-right: 2px solid #ddd;
	border-bottom: 2px solid #ddd;
    padding: 12px 10px 0px;
	margin-bottom:25px;	
}

.column, .columns {
	position: relative;
}

.stacker-rank {
	position:absolute;
	left:0;
	width: 30px; /* Set the width and height to create a circle */
	height: 30px;
	background-color: #ddd; /* Background color of the circle */
	border-radius: 50%; /* Make it a circle with border-radius */
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff; /* Text color */
	font-size: 18px; /* Text font size */
	transition:all .4s ease;
}

.row .row .stacker-card .avatar {
	width:98%; 
	max-width:240px; 
	max-height:initial;
	position:relative;
	left:0;
	top:0;
}

.row .row .stacker-card:hover .avatar {
	left:-1%;
	top:-1%;
	width:100%;
	
}

.row .row .stacker-card {
	border-radius:5px;
	border-bottom:3px solid #ddd;
	margin:inherit;
	margin-bottom:20px;
	display:block;
}

.row .row .stacker-card:hover {
	background:#eee;
	border-bottom:3px solid #43AC6A;
}

.stacker-card:hover .stacker-rank {
	background:#43AC6A;
	color:#fff;
}


th.min-width, td.min-width {
    width:1px;
    white-space: nowrap;
}

table.calendar {
	border-collapse:separate;
	border-spacing: 2px;
	display:table;
	font-size:.8em;
} 
table.calendar tbody tr th.active, table.calendar tbody tr td.active {
	background:#43ac6a;
	color:#fff;
}

.calendar th {
	background:#eee;
}

.calendar th.heading {
	background:#fff;
	font-size:1em;
	font-weight:bold;
}

.calendar th, .calendar td {
	padding: .5rem 0rem ;
	font-weight:normal;
	text-align:center;
	width:14.28%;
}

.calendar-day.faded {
    position: relative;
    opacity: 0.5; /* Optional: Makes the text look faded */
}

.calendar-day.faded::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 80%; /* Ensures the line fully covers the cell */
    height: 2px; /* Thickness of the line */
    background-color: #333; /* Change color as needed */
	opacity:.5;
    transform: translate(-50%, -50%) rotate(-45deg); /* Rotates for a clean diagonal line */
    pointer-events: none; /* Ensures the line does not interfere with clicks */
}




/*
table.calendar {
    border:1px solid #ddd;
	border-collapse:separate;
	border-spacing: 2px;
} 

table.calendar tbody tr:nth-child(even) {
    background-color: transparent;
} 

table.calendar tbody tr th.active {
	border-bottom:1px solid #fff;
}

table.calendar tbody tr th.active, table.calendar tbody tr td.active {
	background:#ffc;
	border-left:1px solid #eee;
	border-right:1px solid #eee;
	font-weight:bold;
}


.calendar th {
    background:#eee;
	font-weight:normal;
	border-color:#fff;
}

.calendar th, .calendar td {
    text-align: center;
	padding:3px;
}


.calendar .calendar-row {
    width: 100%;
    display: table-row;
}
*/

fieldset {
    position:relative;
    padding:50px 10px 20px;
	margin:0 0 25px;
    background:#fff;
    border-radius: 3px;
    -moz-border-radius: 3px 3px 3px 3px;
    -webkit-border-radius: 3px 3px 3px 3px;
    -webkit-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1);
    box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1);
	border: 1px solid #ddd;
}

fieldset legend {
    font-weight:300;
    background:#43ac6a;
    position:absolute;
    top:0px;
    left:0px;
    -moz-box-shadow: none;
    -webkit-box-shadow:none;
    box-shadow:none;
    border-bottom:1px solid #ddd;
    border-right:1px solid #ddd;
    border-radius: 3px 0px 5px 0px;
    -moz-border-radius: 3px 0px 5px 0px;
    -webkit-border-radius: 3px 0px 5px 0px;
    padding: 5px 10px 4px 10px;
    color:#fff;
}

fieldset legend.alert-box.success {
    background: #43ac6a;
    font-weight:300;
    font-size:1em;
    position:absolute;
    top:0px;
    left:3px;
    -moz-box-shadow: none;
    -webkit-box-shadow:none;
    box-shadow:none;
    border:none;
    border-bottom:1px solid #ddd;
    border-right:1px solid #ddd;
    border-radius: 3px 0px 5px 0px;
    -moz-border-radius: 3px 0px 5px 0px;
    -webkit-border-radius: 3px 0px 5px 0px;
    padding: 3px 10px 2px 10px;
    color:#fff;
}


input.required,
select.required,
textarea.required {
  border-left: 3px solid #f04124;
}

span.required {
  border: 1px solid #cacaca;
  border-left: 3px solid #f04124;
  display:inline-block;
  padding:2px 5px;
  border-radius: 5px;
background: #f5f7fa;
color:#999;
}

input.filled,
select.filled,
textarea.filled {
  border-left: 3px solid #43ac6a;
}

select.inline {
	display:inline;
	width:auto;
	border: 1px solid transparent;
	color: #426994;
    border-bottom: 1px solid #426994;
    background-color: transparent;
}

select.inline:focus {
	border:1px solid #ccc;
	color:#333;
}

::placeholder {
	color: #bbb;
	opacity: 1; /* Firefox */
  }
  
  ::-ms-input-placeholder { /* Edge 12 -18 */
	color: #bbb;
  }


.input-group-label {
    padding: 10px;
    border: 1px solid #cacaca;
    background: #f7f7f7;
    color: #0a0a0a;
    text-align: center;
    white-space: nowrap;
    width: 1%;
    height:auto;
}


.close-button {
	color:#333;
	font-size:1.7em;
}

.clr {
	clear:both;
	float:left !important;
}


table.draggable tbody tr.used {
	background-color: #e0e0e0; /* Style for rows marked as used */
}

table.draggable tbody tr td i.drag-icon:hover {
	color:#ccc;
	cursor:move;
}

table.draggable tbody tr {
	position: relative; /* Ensure all rows have relative positioning by default */
}

.ui-draggable-dragging {
	background-color: #f9f9f9;
	border: 1px dashed #ccc;
}

table.ui-droppable-hover thead tr th {
	color:#999;

}



table.draggable tbody {
	height: 25px;
	border: 2px dashed #ccc;
}

table.draggable:not(.available) tbody {
	border: none;
}
table.draggable:not(.available) {

}


table.full tbody, table.full thead tr th {
	border: none;
	color: #c00;
}

table.draggable.available.home tbody {
	border:2px dashed #426994;
}

.wrapper {

}

.auto-width {
	width:auto;
}

h1 .button {
	margin-top:5px;
}

.button-color {
	color:rgb(23, 121, 186);
}

.button.rounded {
	border-radius:5px;
}

.hlite {
	background:#ffc;
}

.sticky {
	z-index:1000;
	position:relative;
}
.header {
	background:#24588c;
	background: -moz-linear-gradient(top, #093268 0%, #24588c 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #093268 0%,#24588c 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #093268 0%,#24588c 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	/*box-shadow: 0px 5px 10px 0px rgba(0,0,0,.3);*/
	position:relative;
	z-index:1000;
	transition: all .3s;
	border-bottom:1px solid #eee;
}

.logo {
	padding:10px 3px;
	margin:0;
	display: inline-block;
	position:relative;
	z-index:1000;
	float:left;
}


.logo img {
	max-height:120px;
	transition: all .3s;
}

.header.is-stuck {
	
}

.header.is-stuck .logo {
	padding:5px;
}

.header.is-stuck .logo img {
	max-height:55px;
	position:relative;
}

.hide-on-load {
	display:none;
}

.jq-hide, .pending {
	display:none;
}


.thin {
	font-weight:100;
}

.expand {
	width:100%;
	display:block;
}

table.expand {
	display:table;
}

.row.expanded, .row.expand {
	max-width:100%;
}

.content {
	padding:0px;
}

.content-mid {
	padding:15px;
	max-width:75em;
	margin:0 auto;
}

.header .content-mid {
	padding-top:0;
	padding-bottom:0;
}

.side {
	height:100%;
}

.avatar {
	max-height: 400px;
}


footer {
	clear:both;
	margin:35px 0 0;
	color:#666;
	background:#fff;
	padding:20px;	
}

body > .row {
	margin-top:25px;
}

.text-center ul {
	display: flex;
	flex-direction: column;
	align-items: center;
	list-style-position: outside;
}

.text-center ul li {
	text-align: center;
}

/* main nav */
.top-bar, .top-bar ul {
    background-color: transparent;
    padding:0;
    margin:0;
	top:25px;
    width:100%;
    font-family: 'Montserrat';
    font-weight:400;
}

.top-bar {
	display:inline-block;
	width: auto;    
    position: relative;
}

.top-bar > ul, .top-bar > ul > li {
	list-style:none;
	margin:5px;
	padding:0;
	text-align:left;
    font-size: 15px;
    letter-spacing: 0px;
}

.row > .menu {
	display: inline-block;
}


#responsive-menu {
	padding: 15px 0 0;
}

.header .menu a {
	margin:5px;
	transition: color .3s;
}

.header .menu a, .header .dropdown.menu a {
	display:block;
	color:rgba(255,255,255,.5);
	padding:10px;
}

.header .menu li a i {
	color:rgba(255,255,255,0);
	transition: color .3s;
}

.header .menu a:hover i, .header .menu li.is-active a i {
	color:#fff;
}

.header .menu a:hover, .header .dropdown.menu a:hover, .header .dropdown.menu .is-active>a  {
	color:#fff !important;
	background: #ac2d2d !important;
	border-radius:5px;
}

.header .dropdown.menu.vertical>li.opens-right>a::after {
    display: block;
    margin-top: -5px;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent rgba(255,255,255,.3);
}

.header .dropdown.menu>li.is-dropdown-submenu-parent>a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: rgba(255,255,255,.3) transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px;
}

.header .dropdown.menu li ul {
	background:#fff;
    box-shadow: 0 0 4px rgba(0,0,0,.4);
	border:none;
}
.header .dropdown.menu li ul li a {
	color:#666;
	padding:10px;
	margin:0;
	border-radius:0;
}
.header .dropdown.menu li ul li a:hover {
	background:#eee;
	color:#333;
	border-radius:0;
}


.vb_hold {
    position: relative;
    background: #000;
    max-height: 35vh;
    min-height: 35vh;
    overflow: hidden;
    margin-bottom: 45px;
    border-bottom: 10px solid #eee;
}

.vb_hold video {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
    min-height: 100%;
    min-width: 100%;
    max-width: 100%;
}

.top-bar ul li a .text {

}
/* end main nav */

.side.menu  {
	border-top:1px solid #ccc;
	margin-bottom:12px;
}
.side.menu > li {
	border-bottom:1px solid #eee;
}

.side.menu > li > a { 
	padding:10px 10px 10px 5px
}

.side.menu > li > a:hover { 
	background:#eee;
}


.side.menu > li > a.active { 
	background:#426994;
	color:#fff;
}

.menu-icon::after {
    background: transparent;
    box-shadow: none;
    content:none;
}
.menu-icon {
	outline:none;
    width:auto;
    height:auto;
    margin-top:10px;
}

.what-is {
	margin:0 auto 55px;
	font-size:1.5em;
}

/**/
.menu-expandable {  
	height:285px;
	max-height:285px;
	overflow:hidden;
	width:100%;
	text-align:left;
	list-style:none;
	display:block;
	margin:0;
	padding:0;
	position:relative;
	background: -moz-linear-gradient(top, #dddddd 0%, #c4c4c4 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #dddddd 0%,#c4c4c4 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #dddddd 0%,#c4c4c4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#c4c4c4',GradientType=0 ); /* IE6-9 */
}

.menu-expandable:hover > li { 
	width: 14%; 
}
.menu-expandable > li ul { 
	transition: all 1s;
	float:left;
	margin:50px 0 0 20px;
	color:rgba(0,0,0,.6);
	font-size:.9em;
	opacity:0;
}
.menu-expandable li ul li { 
	margin:0;
	padding:0;
	list-style:none
}

.menu-expandable:hover > li ul { 
	opacity:0;
}

.menu-expandable > li { 
	list-style:none;
	display:inline-block;
	margin:0;
	padding:0;
	float:left;
	text-align:left;
	width:16.6%;
	height:285px;
	transition: width .4s;
	overflow:hidden;
	position:relative;
}
.menu-expandable > li:hover { 
	width: 30% !important; 
}
.menu-expandable > li:hover ul { 
	opacity:1;
}

.menu-expandable > li img.profile-pic { 
	margin:0 0 0 20px;
	transition: all .4s;
	position:relative;
	width:25%;
}
.menu-expandable:hover > li img.profile-pic { 
	opacity:.3;
}
.menu-expandable > li:hover img.profile-pic { 
	margin: 0 0 0 0px;
	opacity:1;
}

a.wrap {
	border-bottom:1px solid #ddd;
	display:block;
}
.profile-img-hold {
	float:left;
	max-height:90px;
	max-width:50%;
	overflow:hidden;
	margin-right:20px;
}

.profile-img {
	height:200px;
	background:#eee;
	padding:5px;
}


.menu-expandable > li > span.wrap { 
	display: block; 
	width: 601px;
	position:relative;
}

.menu-expandable > li h3 { 
	float: left;
    transform: rotate(-81deg);
    position: absolute;
    left: -120px;
    bottom: auto;
    font-weight: 400;
    font-size: .9em;
    bottom: -175px;
    width: 55%;
    text-align: right;
    padding-right: 20px;
    color: #333;
}.menu-expandable > li:hover h3 { 
	font-weight: 700;
}

.menu-expandable > li h4 { 
	float: left;
    transform: rotate(-81deg);
    position: absolute;
    left: -90px;
    bottom: auto;
    font-weight: 400;
    color: rgba(0, 0, 0, .4);
    font-size: .8em;
    bottom: -175px;
    width: 55%;
    text-align: right;
    padding-right: 20px;
}

.menu-expandable > li img { 
	float:left;
	display: inline-block; 
}

.menu-expandable > li ul li { 
	float:none;
	display:block; 
}

li.sep, .menu-expandable li ul li.sep {
	list-style:none;
	border-bottom: 1px solid #fff;
    margin-bottom: 5px;
    padding-top: 5px;
}

.news h2 {
	font-size:1.2em;
	margin:10px 0 10px;
}

.news a.news-img {
	overflow:hidden;
	display:block;
	position:relative;
}

a.news-img .date {
	position: absolute;
    left: 0;
    bottom: 0;
    background: rgba(0,0,0,.8);
    padding: 5px 5px 3px;
    color: #fff;
    border-radius: 0 5px 0 0;
}

.news a.news-img img {
	  opacity: 0.5;
	  transition: all .5s;
} 
.news:hover  a.news-img img {

	  opacity: 1;
}

#map {
	width:100%;
	height:400px;
}

.spacer-medium {
	clear:both;
	height:50px;
}

.block {
	display:block;
}

.crumbs {
	background:#fff;
	padding:7px 7px 7px 0;
	border-bottom:1px solid #fff;
	box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);

}

.breadcrumbs {
    margin:0;
}

.tabs {
	background:transparent;
}

.tabs dd, .tabs .tab-title {
	position: relative;
	margin-bottom: 0 !important;
	list-style: none;
	float: left;
}

.su-tabs {
	padding-left:10px;
	border:none;
	border-bottom:1px solid #999;
	margin:15px 0;
}

.su-tabs .tab-title {

	background:#fff;
	margin-right:1%;
	width:48%;
	font-size:1.4em;
	font-weight:bold;
	border:1px solid transparent;
	border-top:3px solid #ccc;
	
	bottom:-1px;
}

.su-tabs .tab-title:hover {
	background:#e0e0e0;
	border-top:3px solid #426994;
}

.su-tabs .tab-title a {
	text-decoration:none !important;
	background:none;
	font-size:.8em;
	display:block;
	padding:2px 10px;
	color:#333;
}

.su-tabs .tab-title a:hover {
	background:none;
}

.su-tabs .tab-title a span.sub {
	display:block;
	font-size:.8em;
	font-weight:normal;
	color:#C00;
}

.su-tabs .tab-title.active {
	border:1px solid #999;
	border-top:3px solid #426994;
	background:transparent;
	border-bottom:2px solid #f5f7fa;
	z-index:2
}

.title-bar {
	background: #0d366c;
	text-align:right;
	padding:10px;
}





#contain_all {
	min-height: -moz-calc(100% - 52px);
	min-height: -webkit-calc(100% - 52px);
	min-height: calc(100% - 52px);
	width: 100%;
  }
  
  #left {
	width: 0px;
	position: fixed;
	left:-250px;
	z-index:10;
	min-height: -moz-calc(100vh - 52px);
	min-height: -webkit-calc(100vh - 52px);
	min-height: calc(100vh - 52px);
	-webkit-transition: width .4s;
	-moz-transition: width .4s;
	-ms-transition: width .4s;
	-o-transition: width .4s;
	transition: width .4s;
	float: left;
	padding:10px 0 0;
	margin-top:-25px;
	background:#fff;
	border-right:1px solid #ccc;
  }
  
  .menu_toggle {
	cursor: pointer;
  }
  
  @media (min-width: 768px) {
	#left {
	  width: 250px;
	  display: inline-block;
	  left:0;
	  
	margin-top:-35px;
	}
	
	#left.mobile_showing {
	}
  }
  
  
  
  #left.mobile_showing > ul > li > a:hover {
  }
  
  #left > span.menu_toggle {
	display: none;
  }
  
  #left.mobile_showing > span.menu_toggle {
	  display: block;
	  left:0px;
	  top:0;
	}
  
  #left.mobile_showing {
	display: inline-block;
	width: 100%;
	z-index:100;
	left:0;
	margin-top:-38px;
	background:#fff;
	
  }
  
  .menu_toggle {
	font-size: 20px;
	position:relative;
	display:block;
	background:#e3e6ed;
	top:-5px;
	padding:15px;
	border: none;
	border-radius: 3px;
  }
  
  #left > .menu_toggle {

  }
  
  @media (min-width: 768px) {
	.menu_toggle {
	  display: none;
	}
	
	#left.mobile_showing > span.menu_toggle {

	}
  }
  
  #left > ul {
	width: 100%;
	display: none;
	list-style-type: none;
	padding-left: 0px;
  }
  
  @media (min-width: 768px) {
	#left > ul {
	  display: inline-block;
	}
  }
  
  #left > ul > li {
	width: 100%;
  }
  
  #left > ul > li > a {
	display: inline-block;
	width: 100%;
  }
  
  #left > ul > li > a:hover {
  }
  
  #left.mobile_showing > ul {
	display: inline-block;
  }
  
  #left.mobile_showing > ul > li {

  }
  
  #left.mobile_showing > ul > li > a {

  }
  
  #right {
	width: 100%;
	background:#f5f7fa;
	min-height: -moz-calc(100vh - 52px);
	min-height: -webkit-calc(100vh - 52px);
	min-height: calc(100vh - 52px);
	display: inline-block;
	z-index:0;
	vertical-align: top;
	-webkit-transition: width .6s;
	-moz-transition: width .6s;
	-ms-transition: width .6s;
	-o-transition: width .6s;
	transition: width .6s;
	margin-top:-25px;
	padding:0 20px 0px;
  }
  
  #right.mobile_showing > span.menu_toggle {
	display: none;
  }
  
  #right span.menu_toggle {
	margin-left:-30px;
	margin-right:-30px;
  }
  
  @media (min-width: 768px) {
	#right {
	  width: -moz-calc(100% - 250px);
	  width: -webkit-calc(100% - 250px);
	  width: calc(100% - 250px);
	}
  }

  .body-bk {
	background:#f5f7fa;
	
  }
  
  button.pull_tab {
  }

ul.cart {
	border-bottom:1px solid #ddd;
	padding:10px 0 10px 10px;
	margin-bottom:10px;
	border:1px solid #ddd;
	background:#f5f7fa;
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1);
}

ul.cart:hover {
	
	box-shadow:none;
}

ul.cart li {
	display:inline-block;
	margin-right:10px;
}

ul.cart li.block {
	display:block;
}

.card > ul:last-of-type {
    margin-bottom: 0;
}



a.has-tip {
    cursor:pointer;
}

.no-href {
	cursor:default;
}

@media only screen and (max-width: 640px) {
	
	h1 {
		font-size:1.7em;
	}
	.wrapper {
		margin-left:0;	
	}
	
	.logo {
		padding:3px;
		float:left;
		margin: 7px;
	}
	
	.logo img {
		max-height:45px;
	}
	
	
	.title-bar {
		padding:0;
	}
	
	.header {
		background: #0d366c;
		width:100%;
		height:auto;
		max-height:none;
	}
	
	.top-bar ul.is-accordion-submenu {
		margin-left:35px;
	}
	
	.menu li a i {
		color:rgba(255,255,255,.5);
	}

	#responsive-menu {
		padding: 0;
	}

	.su-tabs .tab-title a {
		font-weight:normal;
		color: #333;
	}
	
	.content {
		padding-top:0px;
	}
	
	.parallax-window {
		max-height:300px;
		min-height:200px;
	}
	
	.menu-expandable > li { 
		list-style:none;
		display:inline-block;
		margin:0;
		padding:0;
		float:left;
		text-align:left;
		width:30%;
		height:285px;
		transition: width .4s;
		overflow:hidden;
	}
	.menu-expandable > li:hover { 
		width: 45% !important; 
	}

	.horizontal {
		display: block;
		text-align: left;
	}
	.horizontal > li {
		display: block;
		padding-left: 20px;
	}
	.horizontal > li::before, .horizontal > li::after {
		display: none;
	}
	.node {
		position: relative;
		top: 0;
	}
	.horizontal > li > ul {
		padding-left: 20px;
	}

	.print-lesson {
		margin-bottom:25px;
	}

	[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], select, select:not([multiple]), textarea {
		padding:15px 10px;
		height:auto;
	}
}

@media (max-width: 1023px) {


	table.stacked, table.stacked thead, table.stacked tbody, table.stacked tfoot, table.stacked th, table.stacked td, table.stacked tr {
		background:#fff;
		border:none;
    }
	
	table.stacked {	
        
    }

    table.stacked thead tr, table.stacked tfoot tr {
        display: none; /* Hide the table header */
    }

    table.stacked tr {
        margin-bottom: 2px;
        border-bottom: 1px solid #ddd;
        padding: 10px;
		display:block;
    }

    table.stacked td, table.stacked th {
        display: inline-block;
        text-align: left;
        position: relative;
		padding:5px 0 0;
		margin-right:10px;
    }

	table.stacked td.block {
        display: block;
    }

    table.stacked td::before {
        content: attr(data-label); /* Use data-label attribute */
        position: relative;
        font-weight: bold;
		font-size:.8em;
        text-align: left;
		margin-right:10px;
    }
	
}


@media only screen and (max-width: 865px) {
	
	#responsive-menu {
		padding: 0;
	}

}



.profile-img-new {
	margin-bottom: 0px;
	padding: 10px;
	height: 289px;
	overflow: hidden;
	background: #eee;
	/*border-radius: 7px 7px 0 0;
    -moz-border-radius: 7px 7px 0 0;
    -webkit-border-radius: 7px 7px 0 0;*/
    -webkit-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.2);
    box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.2);
	border: 1px solid #ddd;
	border-bottom: 5px solid #43ac6a;
}

.info-boxes {
	background: #eee;
	text-align:center;
	border-radius:0 0 7px 7px;
    -moz-border-radius: 0 0 7px 7px;
    -webkit-border-radius: 0 0 7px 7px;
    -webkit-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.2);
    -moz-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.2);
    box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.2);
	border: 1px solid #ccc;
	margin-bottom:25px;
}

.info-boxes li {
	text-align:center;
	padding:3px;
	border-bottom: 1px solid #ccc;
	color:#999;
}
.info-boxes li a, .info-boxes li span {
	/*display:block;*/
}

.info-boxes li span {
	color:#333;
}

.info-boxes li.title {
	margin:0;
	font-size:1.5em;
	color:#333;
	padding:7px;
}

.chart-h {
	height:250px;
	display: flex;
	position:relative;
	margin-left:22px;
	list-style:none;
	background: linear-gradient(180deg, #eee 1px, transparent 1px) 1px 0, #fff;
  	background-size: 1px 25px;
}

.chart-h .type {
	position: absolute;
    transform: rotate(-90deg);
    bottom:2px;
	left:-24px;
	font-size:1.3em;
    text-align: left;
}

.chart-h > li.point {
	display:inline-block;
    height: 100%;
    position: relative;
	flex: auto;
}



.chart-h > li.point span.data {
	display:block;
    height: 100px;
	width:100%;
    position: absolute;
	bottom:0;
	border-radius:3px 3px 0 0;
    border-right: 1px solid #fff;
}

.chart-h > li.point:hover  {
	background:rgba(0,0,0,.1);
}
.chart-h > li.point:hover span.data {
	background: linear-gradient(to bottom right, #666 0%, #222 100%);
}

.chart-h > li span.bar {
	display:block;
	position:absolute;
	z-index:0;
	height:100%;
	width:0;
    transition: all 1s ease;
	border-radius: 0 4px 4px 0;
	min-width:65px;
	
}



.stat-boxes {
	position:relative;
	margin-bottom:0px;
	background: linear-gradient(90deg, #ddd 1%, transparent 1%) 1px 0, #fff;
	background-size: 25px 1px;
}

.stat-boxes > li {
	border-bottom: 1px solid transparent;
	position:relative;
	font-size:1.3em;
}

.stat-boxes li.type {
	height: 87px;
    width: 87px;
	position: absolute;
    transform: rotate(-90deg);
    top:0;
	left:-4px;
	text-align:center;
}

.stat-boxes .bars {
	position:relative;
	margin-left:20px;
}

.stat-boxes .bars.hover:hover {
	background:rgba(0,0,0,.1);
}

.stat-boxes .bars.hover:hover .bar {
	background: linear-gradient(to bottom right, #666 0%, #222 100%);
}


.stat-boxes > li span.event {
	padding:0 5px;
	position:relative;
	z-index:1;
	width:65px;
	display:inline-block;
	text-align:center;
	border-right:1px solid #fff;
	color:rgba(255,255,255,.7);
	background: rgba(0, 0, 0, .2);
}

.stat-boxes > li span.type {
	padding:3px 5px 2px;
	position:relative;
	z-index:1;
	width:70px;
    font-size: .7em;
	display:inline-block;
	border-right:1px solid #fff;
	color:rgba(255,255,255,.8);
	background: rgba(255,255,255, .1);
	text-align:center;
	text-shadow: 1px 1px 2px rgb(0 0 0 / 30%);
}

.stat-boxes > li span.data {
	position:relative;
	z-index:1;
    font-size: .8em;
	margin-left:-5px;
	color:rgba(255,255,255,.8);
    transition: all 2s ease;
}

.stat-boxes > li span.bar {
	display:block;
	position:absolute;
	z-index:0;
	height:100%;
	width:0;
    transition: width 1s ease;
	border-radius: 0 4px 4px 0;
	min-width:65px;
}

.stat-boxes > span.bar {
	display:block;
	position:absolute;
	z-index:0;
	height:100%;
	border-radius: 0 4px 4px 0;
}


.stat-boxes > li.title {
	background:transparent;
	padding:0 5px;
	margin:0;
	font-weight:100;
	color:#333;
}

.badge {
	padding:25px 5px;
	margin-bottom:20px;
	text-align:center;
	color:rgba(255,255,255,.9);
	border-radius: 7px;
	font-size: .8em;
	position:relative;
	text-shadow: 1px 1px 2px rgba(0,0,0,.3);
}


.badge .desc {
	font-size:.9em;
	text-transform: uppercase;
}

.badge .desc {
	height:2em;
	display: flex;
	justify-content: center;
	align-content: center;
	flex-direction: column;
	line-height: 1.2em;
	
    margin-top: 5px;

}

.badge .data {
	font-size:2.5em;
	line-height:1em;
}


.badge .data i {
	font-size:1em;
    position: relative;
}



.badge .data small {
	font-size:.6em;
    line-height: 1em;
	padding:0 2px;
}

.badge::before,
.badge::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  border-radius: 7px;
}

/* Second sheet of paper */
.badge::before {
	left: 6px;
	top: 5px;
  z-index: -1;
  background-color: #ccc;
  transition: all 1s ease;
}

/* Third sheet of paper */
.badge::after {
	left: 12px;
	top: 10px;
  z-index: -2;
  background-color: #eee;
  transition: all 1s ease;
}




.badge-diamond {
	position: relative;
	margin: 3.5em 1.5em 1em;
	width:5.5em;
	height:5.5em;
	border-radius: 10px;
	display: inline-block;
	top: 0;
}

.badge-diamond:before {
	transform: rotate(45deg);
	position: absolute;
	border-radius: inherit;
	background: inherit;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width:5.5em;
	height:5.5em;
}

.badge-square {
	position: relative;
	margin: 3em 1.5em 0em;
	width:7em;
	height:7em;
	border-radius: 10px;
	display: inline-block;
	top: 0;
}

.badge-round {
	position: relative;
	margin: 3em 1.5em 0em;
	width:7em;
	height:7em;
	border-radius: 1000px;
	display: inline-block;
	top: 0;
}

.badge-hex {
	position: relative;
    margin: 3em 1.5em 0em;
    width: 4.5em;
    height: 7em;
    border-radius: 10px;
    display: inline-block;
    top: 0;
    transition: all 0.2s ease;
}

.badge-hex:before, .badge-hex:after {
	position: absolute;
	width: inherit;
	height: inherit;
	border-radius: inherit;
	background: inherit;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.badge-hex:before {
	transform: rotate(60deg);
}
.badge-hex:after {
	transform: rotate(-60deg);
}




.circle {
	width: 60px;
	height: 60px;
	position: absolute;
	background: #fff;
	z-index: 1;
	border-radius: 50%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	text-align:center;
    line-height: 1.9em;
    font-size: 2em;
} 
.circle i {
	font-size: 2em;
	margin-top: 15px;
}

.ribbon {
	border-radius: 4px;
	padding: 5px 10px 4px;
	color: #666;
	height: 3.65em;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.27);
	background: #eee;
	cursor: default;
	display: flex;
	justify-content: center;
	align-content: center;
	flex-direction: column;
	line-height: 1em;
}

.counter {
	position:absolute;
	background:#666;
	color:#fff;
	border:1px solid #fff;
	padding:1px 7px 0;
	border-radius: 4px;
	z-index:1;
	top:-10px;
	left:70%;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.27);
}


.box-data {
	padding:25px 5px;
	margin-bottom:20px;
	text-align:center;
	color:rgba(255,255,255,.9);
	border-radius: 7px;
	position:relative;
	text-shadow: 1px 1px 2px rgba(0,0,0,.3);
}

.box-data.white, .box-data.gray, .box-data.silver {
	text-shadow: 1px 1px 2px rgba(255,255,255,.8);
}

.box-data .desc {
	font-size:.9em;
	text-transform: uppercase;
}

.box-data.badge .desc {
	height:2em;
	display: flex;
	justify-content: center;
	align-content: center;
	flex-direction: column;
	line-height: 1.2em;
	
    margin-top: 5px;

}

.box-data .data {
	font-size:2.5em;
	line-height:1em;
}


.box-data .data i {
	font-size:1em;
    position: relative;
}

.box-data .data small {
	font-size:.6em;
    line-height: 1em;
	padding:0 2px;
}



.yellow {
	background: linear-gradient(to bottom right, #fbd726 0%, #dfa708 100%);
}i.yellow {
	color:#dfa708;
}


.orange {
	background: linear-gradient(to bottom right, #ffc107 0%, #ce6802 100%);
} i.orange, .orange-text {
	color:#ce6802;
	background:none;
}

.pink {
	background: linear-gradient(to bottom right, #F48FB1 0%, #d81b60 100%);
}

.red {
	background: linear-gradient(to bottom right, #d43030 0%, #970a0a 100%);
} i.red, red-text {
	color:#970a0a;
	background:none;
}

.crimson {
	background: linear-gradient(to bottom right, #ab3737 0%, #660a0a 100%);
}

.brown {
	background: linear-gradient(to bottom right, #645446 0%, #503a26 100%);
}

.charcoal {
	background: linear-gradient(to bottom right, #666 0%, #222 100%);
}

.storm {
	background: linear-gradient(to bottom right, #6f7f8d 0%, #384755 100%);
}

.amber {
	background: linear-gradient(to bottom right, #e79769 0%, #c72c11 100%);
}

.purple {
	background: linear-gradient(to bottom right, #ab47bc 0%, #4527a0 100%);
}i.purple, .purple-text {
	color:#4527a0;
	background:none;
}

.teal {
	background: linear-gradient(to bottom right, #4DB6AC 0%, #00796B 100%);
}i.teal,  .teal-text {
	color:#00796B;
	background:none;
}

.blue-dark {
	background: linear-gradient(to bottom right, #264f77 0%, #09243f 100%);
}

.blue {
	background: linear-gradient(to bottom right, #6692bd 0%, #336699 100%);
}i.blue,  .blue-text {
	color:#336699;
	background:none;
}

.blue-light {
	background: linear-gradient(to bottom right, #8ab4dd 0%, #5e92c5 100%);
	color: #fff;
}

.green {
	background: linear-gradient(to bottom right, #72cc93 0%, #29854b 100%);
}i.green, .green-text {
	color:#29854b;
	background:none;
}

.gray {
	background: linear-gradient(to bottom right, #eee 0%, #999 100%);
	color: #666;
}i.gray, .gray-text {
	color:#666;
	background:none;
}

.white {
	background: linear-gradient(to bottom right, #fff 0%, #fff 100%);
	color: #999;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

.silver {
	background: linear-gradient(to bottom right, #ccc 0%, #666 100%);
	color: #999;
}

.gold {
	background: linear-gradient(to bottom right, #e6ce6a 0%, #b7892b 100%);
}

.bronze {
	background: linear-gradient(to bottom right, #d8a978 0%, #79400f 100%);
}


[class*="block-grid-"]>li {
    padding-bottom: 0;
}

[class*="block-grid-"] {
    display: block;
    padding: 0;
    margin: 0 -0.625rem;
}






/* This is the default Tooltipster theme (feel free to modify or duplicate and create multiple themes!): */
.tooltipster-default {
	border-radius: 5px; 
	border: 2px solid #333;
	background: #333;
	color: #fff;
}

/* Use this next selector to style things like font-size and line-height: */
.tooltipster-default .tooltipster-content {
	font-family: Arial, sans-serif;
	font-size: 14px;
	line-height: 16px;
	padding: 8px 10px;
	overflow: hidden;
}

/* This next selector defines the color of the border on the outside of the arrow. This will automatically match the color and size of the border set on the main tooltip styles. Set display: none; if you would like a border around the tooltip but no border around the arrow */
.tooltipster-default .tooltipster-arrow .tooltipster-arrow-border {
	/* border-color: ... !important; */
}


/* If you're using the icon option, use this next selector to style them */
.tooltipster-icon {
	cursor: help;
	margin-left: 4px;
}








/* This is the base styling required to make all Tooltipsters work */
.tooltipster-base {
	padding: 0;
	font-size: 0;
	line-height: 0;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 9999999;
	pointer-events: none;
	width: auto;
	overflow: visible;
}
.tooltipster-base .tooltipster-content {
	overflow: hidden;
}


/* These next classes handle the styles for the little arrow attached to the tooltip. By default, the arrow will inherit the same colors and border as what is set on the main tooltip itself. */
.tooltipster-arrow {
	display: block;
	text-align: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.tooltipster-arrow span, .tooltipster-arrow-border {
	display: block;
	width: 0; 
	height: 0;
	position: absolute;
}
.tooltipster-arrow-top span, .tooltipster-arrow-top-right span, .tooltipster-arrow-top-left span {
	border-left: 8px solid transparent !important;
	border-right: 8px solid transparent !important;
	border-top: 8px solid;
	bottom: -7px;
}
.tooltipster-arrow-top .tooltipster-arrow-border, .tooltipster-arrow-top-right .tooltipster-arrow-border, .tooltipster-arrow-top-left .tooltipster-arrow-border {
	border-left: 9px solid transparent !important;
	border-right: 9px solid transparent !important;
	border-top: 9px solid;
	bottom: -7px;
}

.tooltipster-arrow-bottom span, .tooltipster-arrow-bottom-right span, .tooltipster-arrow-bottom-left span {
	border-left: 8px solid transparent !important;
	border-right: 8px solid transparent !important;
	border-bottom: 8px solid;
	top: -7px;
}
.tooltipster-arrow-bottom .tooltipster-arrow-border, .tooltipster-arrow-bottom-right .tooltipster-arrow-border, .tooltipster-arrow-bottom-left .tooltipster-arrow-border {
	border-left: 9px solid transparent !important;
	border-right: 9px solid transparent !important;
	border-bottom: 9px solid;
	top: -7px;
}
.tooltipster-arrow-top span, .tooltipster-arrow-top .tooltipster-arrow-border, .tooltipster-arrow-bottom span, .tooltipster-arrow-bottom .tooltipster-arrow-border {
	left: 0;
	right: 0;
	margin: 0 auto;
}
.tooltipster-arrow-top-left span, .tooltipster-arrow-bottom-left span {
	left: 6px;
}
.tooltipster-arrow-top-left .tooltipster-arrow-border, .tooltipster-arrow-bottom-left .tooltipster-arrow-border {
	left: 5px;
}
.tooltipster-arrow-top-right span,  .tooltipster-arrow-bottom-right span {
	right: 6px;
}
.tooltipster-arrow-top-right .tooltipster-arrow-border, .tooltipster-arrow-bottom-right .tooltipster-arrow-border {
	right: 5px;
}
.tooltipster-arrow-left span, .tooltipster-arrow-left .tooltipster-arrow-border {
	border-top: 8px solid transparent !important;
	border-bottom: 8px solid transparent !important; 
	border-left: 8px solid;
	top: 50%;
	margin-top: -7px;
	right: -7px;
}
.tooltipster-arrow-left .tooltipster-arrow-border {
	border-top: 9px solid transparent !important;
	border-bottom: 9px solid transparent !important; 
	border-left: 9px solid;
	margin-top: -8px;
}
.tooltipster-arrow-right span, .tooltipster-arrow-right .tooltipster-arrow-border {
	border-top: 8px solid transparent !important;
	border-bottom: 8px solid transparent !important; 
	border-right: 8px solid;
	top: 50%;
	margin-top: -7px;
	left: -7px;
}
.tooltipster-arrow-right .tooltipster-arrow-border {
	border-top: 9px solid transparent !important;
	border-bottom: 9px solid transparent !important; 
	border-right: 9px solid;
	margin-top: -8px;
}


/* Some CSS magic for the awesome animations - feel free to make your own custom animations and reference it in your Tooltipster settings! */

.tooltipster-fade {
	opacity: 0;
	-webkit-transition-property: opacity;
	-moz-transition-property: opacity;
	-o-transition-property: opacity;
	-ms-transition-property: opacity;
	transition-property: opacity;
}
.tooltipster-fade-show {
	opacity: 1;
}

.tooltipster-grow {
	-webkit-transform: scale(0,0);
	-moz-transform: scale(0,0);
	-o-transform: scale(0,0);
	-ms-transform: scale(0,0);
	transform: scale(0,0);
	-webkit-transition-property: -webkit-transform;
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-ms-transition-property: -ms-transform;
	transition-property: transform;
	-webkit-backface-visibility: hidden;
}
.tooltipster-grow-show {
	-webkit-transform: scale(1,1);
	-moz-transform: scale(1,1);
	-o-transform: scale(1,1);
	-ms-transform: scale(1,1);
	transform: scale(1,1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	-moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	-ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	-o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
}

.tooltipster-swing {
	opacity: 0;
	-webkit-transform: rotateZ(4deg);
	-moz-transform: rotateZ(4deg);
	-o-transform: rotateZ(4deg);
	-ms-transform: rotateZ(4deg);
	transform: rotateZ(4deg);
	-webkit-transition-property: -webkit-transform, opacity;
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-ms-transition-property: -ms-transform;
	transition-property: transform;
}
.tooltipster-swing-show {
	opacity: 1;
	-webkit-transform: rotateZ(0deg);
	-moz-transform: rotateZ(0deg);
	-o-transform: rotateZ(0deg);
	-ms-transform: rotateZ(0deg);
	transform: rotateZ(0deg);
	-webkit-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 1);
	-webkit-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4); 
	-moz-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4); 
	-ms-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4); 
	-o-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4); 
	transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
}

.tooltipster-fall {
	top: 0;
	-webkit-transition-property: top;
	-moz-transition-property: top;
	-o-transition-property: top;
	-ms-transition-property: top;
	transition-property: top;
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	-moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	-ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	-o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
}
.tooltipster-fall-show {
}
.tooltipster-fall.tooltipster-dying {
	-webkit-transition-property: all;
	-moz-transition-property: all;
	-o-transition-property: all;
	-ms-transition-property: all;
	transition-property: all;
	top: 0px !important;
	opacity: 0;
}

.tooltipster-slide {
	left: -40px;
	-webkit-transition-property: left;
	-moz-transition-property: left;
	-o-transition-property: left;
	-ms-transition-property: left;
	transition-property: left;
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	-moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	-ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	-o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15); 
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
}
.tooltipster-slide.tooltipster-slide-show {
}
.tooltipster-slide.tooltipster-dying {
	-webkit-transition-property: all;
	-moz-transition-property: all;
	-o-transition-property: all;
	-ms-transition-property: all;
	transition-property: all;
	left: 0px !important;
	opacity: 0;
}


/* CSS transition for when contenting is changing in a tooltip that is still open. The only properties that will NOT transition are: width, height, top, and left */
.tooltipster-content-changing {
	opacity: 0.5;
	-webkit-transform: scale(1.1, 1.1);
	-moz-transform: scale(1.1, 1.1);
	-o-transform: scale(1.1, 1.1);
	-ms-transform: scale(1.1, 1.1);
	transform: scale(1.1, 1.1);
}


table.w9 {
    border-collapse: collapse;
    width: 100%;
}

table.w9 tr {
    border:1px solid #999;
}

table.w9 th,
table.w9 td {
    padding: 2px;
    margin: 0;
    border: none;
}

table.w9 th {
    font-weight: bold;
    text-align: left;
}

table.w9 td {
    text-align: left;
}

table.w9 .value {
	padding:4px;
	display:block;
	font-weight:bold;
	background:#f2f4ff;
	margin-bottom:2px;
	min-height:26px;
}



@media print {

	a[href]:after {
	  content: none !important;
	}
  

	.contain-to-grid, .sticky, .no-print, table tr th.no-print, table tr td.no-print, table thead tr th.no-print, table thead tr td.no-print, table tbody tr th.no-print, table tbody tr td.no-print {
		display:none !important;
	}
  
	.rule-book {
		padding:0 50px !important;
	}
  
	.social-likes_single-w {
		display:none;
	}
  
	.f-topbar-fixed {
	  padding-top: 0 !important;
	  }
  
	  .print-only {
	  display: inline-block !important;
	  }
  
	  .print-4 {
		  width:33%;
	  }
  
	  .title.expand {
		  margin:0 0 10px;
		  padding:0;
	  }
  
	  h1.tournament {
		  font-weight:400;
	  }

	  .columns {
		width:100%;
	  }
  
  }


  .input {
    margin:.5rem 0 .5rem;
	line-height: 1.5;
	font-size:1em;
  }

  [type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea, select {
	margin:0 0 .6rem;
	border-radius:5px;
	background:#f5f7fa;
  }

  input[type="radio"], input[type="checkbox"] {
    transform: scale(1.3); /* Adjust the size */
    margin: 0 10px 0 5px; 
	float:left;
	top:9px;
	position:relative;
}


label {
	text-align:left;
	margin-top:5px;
	font-weight:600;
	font-size:1em;
	color:#333;
}

label.error {
    color:#fff;
    background:#f04124;
    padding:2px 5px;
    font-size:.75em;
    margin:0 0 7px;
	font-weight:normal;
}

input.error, input.error:focus, select.error {
	border:1px solid #f04124;
   }
   input.error, textarea.error, select.error {
    margin-bottom: 0;
}

[type='text']:focus, [type='search']:focus, [type='number']:focus, [type='password']:focus, select:focus, textarea:focus, .select2-container--default.select2-container--focus .select2-selection--multiple {
    background-color: #fff;
    border-color: #2199E8;
	border-left:3px solid#2199E8;
    z-index: 10;
    position: relative;
    box-shadow: 0 0 0 0.25rem rgb(13 110 253 / 25%);
}

.button.grey, .button.grey.disabled, .button.grey.disabled:focus, .button.grey.disabled:hover, .button.grey[disabled], .button.grey[disabled]:focus, .button.grey[disabled]:hover {
    background-color: #808080;
    color: #fff;
}

.button.success, .button.success.disabled, .button.success.disabled:focus, .button.success.disabled:hover, .button.success[disabled], .button.success[disabled]:focus, .button.success[disabled]:hover {
    background-color: #43ac6a;
    color: #fff;
}

.button.success:focus, .button.success:hover {
    background-color: #358853;
    color: #fff;
}

  
/* hide the OS/browser checkboxes/radio buttons */
input.fa-checkbox[type=checkbox], input.fa-radio[type=radio] {
	visibility: hidden;
	margin: 0;
	width: 0!important;
  }
  
  input.fa-checkbox[type=checkbox] + label:hover, input.fa-radio[type=radio] + label:hover {
	cursor: pointer;
  }
  
  /* set FontAwesome and positioning */
  input.fa-checkbox[type=checkbox] + label:before, input.fa-radio[type=radio] + label:before {
	font-family: "Font Awesome 5 Pro";
	font-size: 20px;
	font-weight: 300;
	position: relative;
	margin-right: 0.7em;
  }
  
  /* set checkbox icons and opacities for normal, hover, and checked */
  input.fa-checkbox[type=checkbox] + label:before { content: "\f0c8"; }
  input.fa-checkbox[type=checkbox] + label:hover:before { content: "\f14a"; filter: alpha(opacity=30); opacity: 0.3; }
  input.fa-checkbox[type=checkbox]:checked + label:before { content: "\f14a"; font-weight:600; color:#1779ba; }
  input.fa-checkbox[type=checkbox]:checked + label:hover:before, input.fa-radio[type=radio]:checked + label:hover:before { filter: alpha(opacity=100); opacity: 1; }
  
  /* set radio button icons and opacities for normal, hover, and checked */
  input.fa-radio[type=radio] + label:before { content: "\f111"; }
  input.fa-radio[type=radio] + label:hover:before { content: "\f192"; filter: alpha(opacity=30); opacity: 0.3; }
  input.fa-radio[type=radio]:checked + label:before { content: "\f192"; font-weight:600; color:#1779ba; }
  input.fa-radio[type=radio]:checked + label:hover:before { filter: alpha(opacity=100); opacity: 1; }
  
  
  @media (max-width: 768px) {
	label {
	  text-align:left;
	}
  }


  /* Container to wrap input & label */
.input-container,  .select-container {
	position: relative;
	width: 100%;
	margin-bottom:1rem;

}

/* Style the input field */
.input-container input {
	width: 100%;
	padding: 17px 10px 2px;
	outline: none;
	transition: padding-top 0.3s;
}

/* Label inside the input */
.input-container label, .select-container label {
	position: absolute;
	top: 3px;
	left: 10px;
	pointer-events: none;
	transition: 0.1s all;
	padding: 0 5px;
	font-weight:400;
	z-index:100;
}

/* Move label when input is focused or has text */
.input-container input:focus + label,
.input-container input:not(:placeholder-shown) + label, .float-label {
	top: -3px;
	left: 8px;
	font-size: 12px;
}

.float-label {
	display:block;
}

.prepend-input {
    position: relative;
}

.prepend-symbol {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #333;
    pointer-events: none; /* Prevent interaction */
	z-index:100;
}

.prepend-input input {
    padding-left: 18px; /* Space for symbol */
    text-align: left;
}


.select-container select {
	width: 100%;
	padding: 17px 5px 2px 10px;
	height:auto;
	outline: none;
	transition: border-color 0.3s;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	margin:0;
}




/* Custom arrow for select */
.select-container::after {
	content: "▼";
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	font-size: 14px;
	color: #888;
	pointer-events: none;
}



/* Move label when select has a value */
.select-container select:focus + label,
.select-container select:not([value=""]):valid + label {
	top: -3px;
	left: 8px;
	font-size: 12px;
}

.select-container.search select, .container.search input {
	background:#fff;
}
.select-container.search select:focus + label,
.select-container.search select:not([value=""]):valid + label,
.container.search input + label,
.container.search input:not([value=""]):valid + label {
	left: 0px;
}

/* Container */
.multiselect-container {
    position: relative;
    width: 100%;
}

/* Wrapper for select & label */
.multiselect-wrapper {
    position: relative;
    width: 100%;
}

/* Floating Label */
.multiselect-label {
    position: absolute;
    top: 12px;
    left: 10px;
    font-size: 14px;
    background: white;
    padding: 0 5px;
    color: #666;
    transition: all 0.3s ease;
    pointer-events: none;
}

/* Floating Label Moves Up */
.multiselect-has-selection .multiselect-label {
    top: -8px;
    font-size: 12px;
    color: #333;
}

/* Ensure Select2 matches standard form input */
.select2-container--default .select2-selection--multiple {
    border: 1px solid #ccc;
    padding: 8px;
    border-radius: 4px;
}

/* Make Select2 dropdown look cleaner */
.select2-container .select2-selection--multiple .select2-selection__rendered {
    padding: 0;
    margin: 0;
}

.editor {
    border: 1px solid #ccc;
    padding: 10px;
    min-height: 150px;
    outline: none;
    font-family: Arial, sans-serif;
	margin-bottom:1rem;
}

.toolbar {
    margin-top: 5px;
}

.toolbar button {
    margin: 2px;
    padding: 5px;
    font-size: 14px;
    cursor: pointer;
}


input.readonly:focus,
input[type="color"].readonly:focus,
input[type="date"].readonly:focus,
input[type="datetime-local"].readonly:focus,
input[type="datetime"].readonly:focus,
input[type="email"].readonly:focus,
input[type="month"].readonly:focus,
input[type="number"].readonly:focus,
input[type="password"].readonly:focus,
input[type="search"].readonly:focus,
input[type="tel"].readonly:focus,
input[type="text"].readonly:focus,
input[type="time"].readonly:focus,
input[type="url"].readonly:focus,
input[type="week"].readonly:focus,
textarea.readonly:focus {
	background:#e6e6e6 !important;
}
.readonly {
	background:#e6e6e6 !important;
}

input[type="range"] {
    accent-color: #007BFF; /* Only works in modern browsers */
}