
/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
	margin:			0;
	padding:		0;
	list-style:		none;
	text-align:center;
	/*display:		inline-table;*/
}
.sf-menu {
	line-height:	1.0;
}
.sf-menu ul {
	position:		absolute;
	top:			-999em;
	width:			10em; /* left offset of submenus need to match (see below) */
}
.sf-menu ul li {
	width:			100%;
	display:block;
}
.sf-menu li:hover {
	visibility:		inherit; /* fixes IE7 'sticky bug' */
}
.sf-menu li {
	float:			left;
	/*position:		relative;*/
	display:block;
}
.sf-menu a {
	display:		block;
	position:		relative;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
	left:			0;
	top:			2.5em; /* match top ul list item height */
	/*z-index:		99;*/
	display:block;

}
ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
	top:			-999em;

}
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;

}
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
	top:			-999em;
	
}
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
	left:			10em; /* match ul width */
	top:			0;
	
}

/*** DEMO SKIN ***/

.sf-menu {
	float:			left;
	margin-bottom:	1em;
}
.sf-menu a {
	/*border-left:	1px solid #fff;*/
	/*border-top:		1px solid #CFDEFF;*/
	padding: 		.75em 1em;
	text-decoration:none;
}
.sf-menu a, .sf-menu a:visited  { /* visited pseudo selector so IE6 applies text colour*/
	color:			#fff;
}
.sf-menu li {
	/*background:		#5f5f5f;*/
	display:block;
color:#FFFFFF;
}
.sf-menu li li {
	/*background:		#ffc80b;*/

}
.sf-menu li li li {
	background:		#9AAEDB;
}
.sf-menu li:hover, .sf-menu li.sfHover,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
	/*background:		#CFDEFF;*/
	outline:		0;
	color:#FFFFFF;
}

/*** arrows **/
.sf-menu a.sf-with-ul {
	padding-right: 	2.25em;
	min-width:		1px; /* trigger IE7 hasLayout so spans position accurately */
}
.sf-sub-indicator {
	position:		absolute;
	display:		block;
	right:			.75em;
	top:			1.05em; /* IE6 only */
	width:			10px;
	height:			10px;
	text-indent: 	-999em;
	overflow:		hidden;
	background:		url('../images/arrows-ffffff.png') no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */
}
a > .sf-sub-indicator {  /* give all except IE6 the correct values */
	top:			.8em;
	background-position: 0 -100px; /* use translucent arrow for modern browsers*/
}
/* apply hovers to modern browsers */
a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator {
	background-position: -10px -100px; /* arrow hovers for modern browsers*/
}

/* point right for anchors in subs */
.sf-menu ul .sf-sub-indicator { background-position:  -10px 0; }
.sf-menu ul a > .sf-sub-indicator { background-position:  0 0; }
/* apply hovers to modern browsers */
.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
	background-position: -10px 0; /* arrow hovers for modern browsers*/
}

/*** shadows for all but IE6 ***/
.sf-shadow ul {
	background:	url('../images/shadow.png') no-repeat bottom right;
	padding: 0 8px 9px 0;
	-moz-border-radius-bottomleft: 17px;
	-moz-border-radius-topright: 17px;
	-webkit-border-top-right-radius: 17px;
	-webkit-border-bottom-left-radius: 17px;
}
.sf-shadow ul.sf-shadow-off {
	background: transparent;
}
body{
	font-family:Verdana, Geneva, sans-serif; font-size:11px;
}

/*CR11904 Start*/
/* ========== Shared Overlay Styles ========== */
.s2u-modal,
.modal,
.mfa-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.4);
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #000;
}

/* ========== S2U Modal ========== */
.s2u-modal-content {
	width: 1000px;
	height: 600px;
	background: #d9d9d9;
	border-radius: 5px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.s2u-loading-section {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 50px 20px;
}

.s2u-icon {
	margin-bottom: 10px;
}

.modal-img {
	width: 75%;
}

.loading-text {
	font-size: 20px;
}

.s2u-footer {
	background-color: #ffc83d;
	display: flex;
	flex-direction: column;
	padding: 20px;
	font-family: sans-serif;
}

/* Footer top row */
.footer-top-row {
	display: flex;
	align-items: center;
	gap: 20px;
	width: 100%;
}

.footer-left {
	flex-grow: 1;
	flex-shrink: 0;
	font-size: 14px;
	line-height: 1.2;
	color: #000;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: space-between;
}

	.footer-left p {
		margin: 0;
	}

.footer-center {
	width: 100%;
	height: 100%;
	align-content: center;
}

.s2u-steps-img {
	width: 100%;
	object-fit: contain;
	border-radius: 5px;
}

/* TAC row */
.footer-tac-row {
	display: flex;
	width: 100%;
	/*margin-top: 10px;*/
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

.footer-tac-left {
	color: #000;
	font-size: 14px;
	flex: 1;
	padding-right: 20px;
	font-weight: 500;
	/*margin-top: 10px;*/
}

.footer-tac-right {
	display: flex;
	gap: 20px;
	align-items: center;
	flex-shrink: 0;
	margin-top: 5px;
}

/* ========== Buttons ========== */
.s2u-tac-input,
.submit-btn {
	font-size: 14px;
	border-radius: 4px;
}

.s2u-tac-input {
	padding: 8px 36px;
	background-color: #fff;
	color: gray;
	border: 1px solid #ccc;
	width: 150px;
	text-align: center;
	margin-bottom: 5px;
}

.submit-btn {
	padding: 8px 24px;
	background-color: #389a6e;
	color: #fff;
	border: 1px solid #318761;
	cursor: pointer;
	align-self: flex-start;
}

	.submit-btn:hover {
		background-color: #2a7553;
		border-color: #215a41;
		color: #fff;
	}

/* ========== Close Buttons ========== */
.modal-close-btn,
.mfamodal-close-btn {
	position: absolute;
	top: 10px;
	right: 15px;
	background: none;
	border: none;
	font-size: 24px;
	font-weight: bold;
	cursor: pointer;
	z-index: 10001;
	color: white;
}

	.modal-close-btn:hover,
	.mfamodal-close-btn:hover {
		color: #ff4444;
	}

/* ========== Failure/Success Message ========== */
.failure-footer {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 30px;
}

.failure-message,
.success-message {
	font-size: 18px;
	text-align: center;
}

/* ========== Modal (General) ========== */
.modal-content {
	background-color: #fff;
	border-radius: 8px;
	padding: 24px 20px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
	width: 90%;
	max-width: 420px;
	position: relative;
	text-align: center;
}

.register-btn {
	margin-top: 16px;
	padding: 10px 20px;
	background-color: #007bff;
	color: #fff;
	border: none;
	border-radius: 4px;
	cursor: pointer;
}

/* ========== MFA Modal ========== */
.mfa-modal-content {
	width: 400px;
	background-color: #d9d9d9;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.mfa-header {
	background-color: #FFF;
	padding: 16px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.mfa-title {
	font-size: 16px;
	font-weight: bold;
}

.mfa-close-btn {
	background: none;
	border: none;
	font-size: 22px;
	font-weight: bold;
	cursor: pointer;
	color: #333;
}

.mfa-content {
	padding: 20px;
	background-color: white;
	font-size: 14px;
	color: #333;
	text-align: left;
}

/* ========== Responsive ========== */
@media (max-width: 600px) {
	.footer-top-row,
	.footer-tac-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}

	.footer-tac-right {
		width: 100%;
		justify-content: flex-start;
	}
}

.tac-input-wrapper {
	display: flex;
	flex-direction: column;
	align-items: center; /* center timer under input */
	width: fit-content; /* wrapper only as wide as input */
	position: relative; /* allow precise positioning */
}

.tac-expiry {
	text-align: center;
}
/*CR11904 End*/