/* =========================== CORE STYLES =========================== */
/* =========================== CORE STYLES =========================== */
/* =========================== CORE STYLES =========================== */
/* * {
	font-family: 'Open Sans', sans-serif;
} */

html {
	height:100vh;
	font-size: 10px; /* set root size to 10px so it's easier to convert to rem for other elements. 1rem = 10px */
	font-family: Inter, sans-serif;
}

p, a, span, ul li, .input-field>label, table, label, nav ul a {
	font-size: 1.6rem;
}
input[type=text],input[type=email],input[type=tel],input[type=password] {
	padding: 0.7rem 2rem !important;
    border: none !important;
    background-color: #F7FAFC !important;
    color: #000000 !important;
    font-size: 1.6rem !important;
    font-weight: 400 !important;
    margin: 0 !important;
    width: 100%;
    height: 3.5rem;
	outline: none;
}

/* .select-wrapper input.select-dropdown {
	width: 90%;
	height: 2rem;
}

.select-wrapper ul.select-dropdown li>span {
	color: #000;
}
.select-wrapper svg.caret {
	z-index: 1 !important;
} */

select.browser-default {
	height: 3.5rem;
    font-size: 1.6rem;
    border-radius: 0;
    background-color: #F7FAFC;
}

input[type=checkbox]+span:not(.lever) {
	font-size: 1.6rem;
}
.btn>i.material-icons {
	font-size: inherit;
}
.material-icons {
	cursor: default;
}
strong {
	font-weight: bold;
}

::placeholder {
	color: #AFB8C2;
	opacity: 1; /* Firefox */
}

::-ms-input-placeholder { /* Edge 12 -18 */
	color: #AFB8C2;
}

.input-field label {
	color: #fff;
    position: relative;
    left: unset !important;
    margin-bottom: 0.8rem;
    display: block;
    transform: unset !important;
    transform-origin: unset !important;
}
.input-field label.required::after {
	content: "*";
	margin-left: 0.5rem;
	color: #FF5454;
}

.input-field .helper {
    display: block;
	font-size: 1.05rem;
    margin-top: 0.5rem;
    font-style: italic;
    color: #acacac;
}

input.disabled {
	background-color: #c3c3c3 !important;
    cursor: not-allowed;
}

body {
	min-height:100vh;
	padding:0;
	margin:0;
	position:relative;
	background-color: #1f2937;
	color: #fff;
}
/* body.confirmation.success {
	background-color: #444444;
} */
/* body.confirmation.fail {
	background-color: #4d4d44;
} */

.container-fluid {
    min-height: 100vh;
}
body.confirmation .container-fluid {
	display: flex;
	align-items: center;
	justify-content: center;
}

.nopadding {
    padding: 0 !important;
}

.nomargin {
    margin: 0 !important;
}

.hidden {
	display: none !important;
}

.material-tooltip .tooltip-content, .material-tooltip .tooltip-content * {
	font-size: 1.2rem;
}

.btn-loading {
	background-image: url('/images/loading.gif');
	background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

/* =========================== HEADER STYLES =========================== */
/* =========================== HEADER STYLES =========================== */
/* =========================== HEADER STYLES =========================== */
.oi-header-container {
	background-color: rgba(17, 24, 39, 0.8);
	padding: 3.5vh 3.5vw !important;
}

.logo {
    height: 25rem;
}

.oi-page-title, body.confirmation .title {
	font-family: Inter, sans-serif;
	margin: 0;
	padding: 3rem 0;
	font-size: 4.5rem;
	color: #f4f4f4;
	font-weight: 900;
}

.oi-page-subtitle, body.confirmation .message {
	margin: 0;
	font-size: 2.8rem;
	color: #f4f4f4;
	letter-spacing: 1.2rem;
}
body.confirmation .message {
	letter-spacing: unset;
}

body.confirmation .icon {
	display: block;
    margin: 5rem auto;
	font-size: 10rem;
    width: 10rem;
    height: 10rem;
	border-radius: 99%;
}
body.confirmation.success .icon {
	color: #9bf515;
}
body.confirmation.fail .icon {
    background-color: #BF1E2D;
}

.sponsor-logo {
    display: block;
    height: 15rem;
    margin: 0 auto 2rem;
    padding: 2rem;
    background-color: #fff;
}

/* =========================== BODY STYLES =========================== */
/* =========================== BODY STYLES =========================== */
/* =========================== BODY STYLES =========================== */
.oi-page-container {
	padding: 3.5vh 3.5vw !important;
    float: unset !important;
	margin: 0 auto !important;
    max-width: 110rem;
}

.oi-payment-form .section {
	margin-bottom: 4rem;
}

.oi-payment-form .section .header {
	font-family: Inter, sans-serif;
	font-weight: 700;
	color: #f4f4f4;
	font-size: 2.5rem;
	margin-bottom: 1rem;
}

.oi-payment-form .section .sponsor-type {
	color: #A57E2D;
	font-size: 4.5rem;
	display: flex;
	align-items: center;
}
.oi-payment-form .section .sponsor-type.gold {color: #A57E2D;}
.oi-payment-form .section .sponsor-type.silver {color: #C0BABC;}

.oi-payment-form .section .sponsor-type::after {
	content: '';
	display: inline-block;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 5.5rem;
	height: 5.5rem;
	margin-left: 1rem;
}
.oi-payment-form .section .sponsor-type.gold::after {background-image: url('icon-gold.png');}
.oi-payment-form .section .sponsor-type.silver::after {background-image: url('icon-silver.png');}

.oi-payment-form .section .sponsor-cost {
	color: #fff;
	font-size: 2rem;
	font-weight: 300;
}

.oi-payment-form .disclaimer {
	font-style: italic;
}

.oi-submit-btn {
	font-family: Inter, sans-serif;
	background-color: transparent;
    color: #fff;
	border: 2px solid;
	border-radius: 0.4rem;
    font-weight: 700;
    font-size: 2rem;
    height: 4.8rem;
	box-shadow: none !important;
	transition-duration: 0.2s;
	-webkit-transition-duration: 0.2s;
}
.oi-submit-btn:hover, .oi-submit-btn:focus, .oi-submit-btn:hover {
	background-color: #0284c7;
	border-color: #0284c7;
}
.oi-submit-btn:focus {
	background-color: transparent;
	border-color: #fff;
}

.oi-payment-form .error {
	display: block;
	margin-top: 1rem;
	color: #cd7518;
	font-size: 1.4rem;
}

/* =========================== RESPONSIVE STYLES =========================== */
/* =========================== RESPONSIVE STYLES =========================== */
/* =========================== RESPONSIVE STYLES =========================== */

@media (min-width: 37.5625em) {/* MaterializeCSS Breakpoint for tablet or medium sized screens (m); Assuming 1em = 16px, 601px = 37.5625em */
	
}

@media (min-width: 62.0625em) {/* MaterializeCSS Breakpoint for desktop or large sized screens (l); Assuming 1em = 16px, 993px = 62.0625em */
	
}

@media (min-width: 75.0625em) {/* MaterializeCSS Breakpoint for large desktop or extra large sized screens (xl); Assuming 1em = 16px, 1201px = 75.0625em */
	
}