/* --------------------- */ 
/* LAYOUT GENERAL STYLES */ 
/* --------------------- */ 

/* LAYOUT GENERAL STYLES Basic Layout */

body{
	font-family: 'Open Sans', sans-serif;
	color:#333333;
	font-size:1em;
}

.max-width-1200{max-width:1200px;width:96%;margin:0 auto;}
.max-width-1120{max-width:1120px;width:96%;margin:0 auto;}
.max-width-1060{max-width:1076px;width:96%;margin:0 auto;}
.max-width-1010{max-width:1026px;width:96%;margin:0 auto;}
.max-width-960{max-width:976px;width:96%;margin:0 auto;}
.max-width-940{max-width:956px;width:96%;margin:0 auto;}
.max-width-850{max-width:866px;width:96%;margin:0 auto;}
.max-width-780{max-width:796px;width:96%;margin:0 auto;}
.max-width-750{max-width:766px;width:96%;margin:0 auto;}
.max-width-690{max-width:706px;width:96%;margin:0 auto;}
.max-width-662{max-width:678px;width:96%;margin:0 auto;}
.max-width-640{max-width:656px;width:96%;margin:0 auto;}
.max-width-600{max-width:616px;width:96%;margin:0 auto;}
.max-width-540{max-width:540px;width:96%;margin:0 auto;}
.max-width-480{max-width:496px;width:96%;margin:0 auto;}
.max-width-450{max-width:466px;width:96%;margin:0 auto;}
.max-width-none{max-width: none !important;}

.group:after{content: "";display: table;clear: both;}

.center-cell{margin-left:auto !important;margin-right:auto !important;}

.relative{position: relative;}

.nowrap{white-space: nowrap;}
.wrap-forced{word-break:break-all;}

.text-center{text-align:center;}
.text-right{text-align:right;}
.text-left{text-align:left;}

.hidden{display:none;}
.visuallyhidden{border: 0;clip: rect(0 0 0 0);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;white-space: nowrap;}

input[type=date]{
	font-family: 'Open Sans', sans-serif;
}
input[type=submit], button{ 
	-webkit-appearance: none;
}

.table{
	display:table;
}
.table .td{
	display:table-cell;
	width:100%;
}
.table.valign-middle{
	height:100%;
}
.table.valign-middle .td{
	height:100%;
	vertical-align:middle;
}

a.link-cover{
	position: absolute;
	top:0;
	left:0;
	bottom:0;
	right:0;
	text-decoration: none;
	z-index: 1;
}

@media only screen and (max-width:480px){
	.mobileHide{display:none;}
}

/* LAYOUT GENERAL STYLES MDL Overrides */

.mdl-grid{flex-basis: 100%;width: calc(100% - 16px);}
.mdl-grid.mdl-grid.mdl-grid--no-spacing{width:100%;}
.mdl-grid.boxsizing{box-sizing: border-box;}
.mdl-radio {min-height: 24px;height: auto;}
.mdl-checkbox {min-height: 24px;height:auto;}

/* LAYOUT GENERAL STYLES Form Defaults */

::placeholder{color: #B4B4B4;font-style:italic;}
:-ms-input-placeholder{color: #B4B4B4;font-style:italic;}
::-ms-input-placeholder{color: #B4B4B4;font-style:italic;}
form fieldset select:invalid{color:#B4B4B4;font-style:italic;}

select{
	background-color:#fff !important;
	border:1px solid #c7c7c7 !important;
	color: #505050 !important;
}

input:focus,
textarea:focus,
select:focus{
    outline:none;
    border:0;
    -webkit-box-shadow: 0px 0px 4px 0px #B4B4B4;
    box-shadow: 0px 0px 4px 0px #B4B4B4;
}

select:disabled, textarea:disabled, input:disabled {
    background-color: rgb(235, 235, 228) !important;
}

p.margin-double{
	margin-top: 2em;
	margin-bottom: 2em;
}

hr{
	width: 100%;
}

/* ----------------- */
/* TYPOGRAPHY        */
/* ----------------- */

/* Typography: Default Type Styles */

.font-fira{
	font-family: 'Fira Sans', sans-serif;
}
.style-fira{
	font-family: 'Fira Sans', sans-serif;
	font-weight:500 !important;
	font-style:italic;
}

h1{
	font-family: 'Open Sans', sans-serif;
	margin:0 0 0.5em 0;
	font-size:2.57em;
	font-weight:700;
	/*font-style:italic;*/
	line-height:1.333em;
	color:#0075BD;
}
h2{
	font-family: 'Open Sans', sans-serif;
	margin:1em 0 1.5em 0;
	font-size:1.14285em;
	line-height:1.625em;
	font-weight:700;
	color:#0075BD;
}
h1 + h2{margin-top:0;}
h3{
	font-family: 'Open Sans', sans-serif;
	margin-top:2.1em;
	margin-bottom:1em;
	font-size:1.142em;
	line-height: 1.5em;
	font-weight:700;
	color:#575757;
}
p{
	margin-bottom:1.2em;
	font-size:1.142em;
	line-height: 1.5em;
	color:#575757;
}
p.size-larger{
	font-size:1.285em;
	line-height: 1.6660em;
}
p.size-21{
	font-size:1.5em;
	line-height:1.14285em;
}

.nowrap{white-space: nowrap;}
.wrap-forced{
	word-break:break-all;
}

.footnote{
	font-size:1.142857em;
	line-height: 1.7em;
}

a{
	color:#0075BD;
}
p a, 
li a{
	font-weight:700;
	text-decoration: none;
	color:#00B7D1;
}
p a.white-link, 
li a.white-link{
	color:#ffffff;
}
p a.white-link:hover, 
li a.white-link:hover{
	color:#ffffff;
	text-decoration: underline;
}
ul,ol{
	margin-left:0;
	margin-bottom:1.2em;
	padding-left:1em;
	font-size:1.142em;
	line-height: 1.5em;
}
ol.ol-letters{
	list-style-type: upper-alpha;
}
li{
	margin:0 0 0.2em 0;
	font-size:1.12em;
	line-height: 1.5em;
	color:#575757;
}
li.size-16{
	font-size:1em;
}

ol li{
	padding-left: 1em;
}

ol.item-space li,
ul.item-space li{
	margin:0 0 1.2em 0;
}

sup, sub {
    position: relative;
    top: -0.5em;
    vertical-align: baseline;
	font-size: 0.66em;
}
sub { 
  top: 0.2em; 
}

.weight400{font-weight:400 !important;}
.weight500{font-weight:400 !important;}
.weight700{font-weight:700 !important;}

.underline{
	text-decoration: underline;
}
.no-underline{
	text-decoration: none;
}

/* Typography: Colors */

.color-blue{color:#0075BC !important;}
.color-red{color:#E64B4B !important;}
.color-grey{color:#505050 !important;}
.color-purple{color:#8031A7 !important;}
.color-dark-grey{color:#333333 !important;}

.bgcolor-lightgrey{background-color:#F9F9F9 !important;}

/* Default Elemet Styles */

button, 
.link-button{
	box-sizing:border-box;
	display:block;
	width:100%;
	max-width:250px;
	margin:0 auto;
	padding:14px 8px 14px 8px;
	border:none;
	border-radius:5px;
	background-color:#54BE29;
	border:1px solid #54BE29;
    font-size:1.14285em;
	font-weight:700;
	line-height:1.25em;
	color:#fff;
	cursor:pointer;
	text-decoration:none;
	text-align:center;
	text-transform:uppercase;
}

button:hover, 
.link-button:hover{
	border:1px solid #54BE29;
	color:#54BE29 !important;
	background-color:#fff;
}

button:disabled,
button:disabled:hover,
.link-button:disabled,
.link-button:disabled:hover{
	border:1px solid #ABABAB;
	color:#FFFFFF !important;
	background-color:#ABABAB;
}

input[type=submit].inline-button-text,
button[type=submit].inline-button-text{
	display:inline;
	width:auto;
	max-width:1000px;
	margin:0;
	padding:0;
	background-color:transparent;
	border:0;
	border-radius: 0;
	color:#00B7D1;
	text-decoration: underline;
	text-transform: none;
	font-size: 1em;
	cursor: pointer;
}

/* --------------------- */
/* PAGE GLOBAL ELEMENTS  */
/* --------------------- */

/* PAGE GLOBAL ELEMENT: Header */

.site-header{
	background-color:#fff;
	border-bottom:10px solid #0075BD;
}
.site-header:after{
	display:block;
	content:' ';
	width:100%;
	height:10px;
	overflow:hidden;
	background-color:#00B7D1;
}
.site-header > div > .mdl-grid{
	height:104px;
}

/* PAGE GLOBAL ELEMENT: Nav */

.site-header nav{
	max-width:100%;
}
.site-header nav ul{
	margin:0;
	padding:0;
	list-style-type:none;
	font-size:1em;
	text-align:center;
}
.site-header nav ul li{
	display:inline-block;
	margin:0;
	padding:0 2.5%;
	font-size:1.1428em;
	text-align:center;
}
.site-header nav ul li a{
	display:block;
	margin-top:14px;
	padding:0;
	font-weight:600;
	color:#333333;
	line-height: 1.1em;
	text-decoration: none;
}

.site-header nav ul li a span{
	padding:0px 6px;
	box-sizing:border-box;
}

.site-header nav ul li a:hover span,
.site-header nav ul li.on a span{
	color:#49C2DB;
	border-bottom:0;
}

/* PAGE GLOBAL ELEMENT: Mobile Nav */

.open-mobile-nav{
	display:none;
}

.mdl-layout__drawer {
	left:auto;
	right:-250px;
	transform: translateX(0px);
	z-index:300;
	background-color:#0075BD;
}

.mdl-layout__drawer .mdl-navigation {
    padding-top: 34px;
}

.mdl-layout__drawer .mdl-navigation .mdl-navigation__link {
    padding: 16px 40px;
    margin: 0;
	font-size: 1.14285em;
	font-weight: 700;
	color: #ffffff;
	opacity: 1;
}

.mdl-layout__drawer .mdl-navigation .mdl-navigation__link:hover {
	background-color:#0075BD;
}

.mdl-layout__drawer .mdl-navigation .mdl-navigation__link span{
	padding:10px 5px;
	border-bottom: 0px;
}

.mdl-layout__drawer .mdl-navigation .mdl-navigation__link.on span,
.mdl-layout__drawer .mdl-navigation .mdl-navigation__link:hover span{
	color: #ffffff;
	border-bottom:0;
}

a.close-mobile-nav .material-icons{
	font-size: 30px;
}

.open-mobile-nav .material-icons{
	font-size: 57px;
}

a.close-mobile-nav{
	position:absolute;
	top:0;
	right:0;
	width:30px;
	height:30px;
	padding:5px;
	font-size:30px;
	text-decoration:none;
	color: #ffffff;
}

@media only screen and (max-width:1021px){
	
	.open-mobile-nav{
		display:block;	
		position:absolute;
	}

	.login-cell .open-mobile-nav{
		right: -20%;
		top: 12px;
	}

	.user-options-cell .open-mobile-nav{
		/*right: 200px;*/
		right: -20%;
		top: 12px;
	}

}

/* PAGE GLOBAL ELEMENT: Header Login and Register Button/Link */
	
.login-cell{
	position:relative;
	height:82px;
}
/*
.login-cell > div{
	width: 100%;
	z-index:200;
	position: absolute;
	top: 6px;
	right: 0;
}
*/

.header-logo{
	max-width:164px;
}

.site-header .login-button{
	box-sizing:border-box;
	display:block;
	width:94px;
	margin:0px 0 0 auto;
	padding:14px 8px 14px 8px;
	font-size:1.14285em;
	font-weight:700;
	line-height:1.38em;
	text-align:center;
	vertical-align:middle;
	border-radius:5px;
	background:#54BE29;
	color:#fff;
	text-decoration:none;
	border:1px solid #54BE29;
}
.site-header .login-button:hover{
	color:#54BE29 !important;
	background-color:#fff;
}

.header-register-link{
	margin-top: 0px;
    font-size:1em;
	text-align: right;
	line-height:1.357em;
	color:#575757;
}
.header-register-link a{
	font-weight:700;
	text-decoration:underline;
	color:#575757;
}


@media only screen and (max-width:1180px){

	.header-register-link{
		font-size: 0.9em;
	}
}

@media only screen and (max-width:639px){
	
	.open-mobile-nav .material-icons { }

	.login-cell .login-button{display:none;}
	.header-register-link{display:none;}

	.login-cell .open-mobile-nav,
	.user-options-cell .open-mobile-nav {
		right: -5%;
	}

}

/* PAGE GLOBAL ELEMENT: User Button / Dropdown */

.user-options-cell{
	position:relative;
	height:82px;
	padding-top: 16px;
}

.user-options{
	position:relative;
	width:100%;
	max-width:180px;
	height:82px;
	z-index:200;
}

.user-button{
	position:absolute;
	top:1px;
	left:0;
	right:0;
	box-sizing:border-box;
	display:inline-block;
	width:110px;
	margin:0 auto;
	padding:5px 10px;
	font-size:1.14285em;
	font-weight:700;
	line-height:1.25em;
	text-align:center;
	vertical-align:middle;
	border-radius:5px;
	background-color:#54BE29;
	border:1px solid #54BE29;
	color:#FFFFFF;
	text-decoration:none;
	z-index:202;
}
.user-button.no-menu{
	position:absolute;
	top:auto;
	right:0;
	left:auto;
	padding:15px 10px;
	line-height:1em;
}
.user-button:hover{
	border:1px solid #54BE29;
	color:#54BE29 !important;
	background-color:#fff;
}

.header-edit-profile-link{
	position:absolute;
	bottom:16px;
	bottom:32px;
	right:110px;
	width:100px;
	font-size:14px;
	font-weight:600;
	color:#575757;
	text-decoration:underline;
}
.header-edit-profile-link:hover{
	text-decoration:none;
}

.user-button img{
	position:absolute;
	display:block;
	top:50%;
	right:12px;
	margin-top:-6px;
	width:16px;
	height:12px;
}
.user-button > span{
	display:block;
	width:100%;
	height:38px;
	font-size:0.9375em;
	font-weight:500;
	overflow:hidden;
}

.user-dropdown{
	display:none;
	position:absolute;
	top:16px;
	left:0;
	right:0;
	padding: 46px 0 10px 0;
    border-radius: 26px;
	background-color:#DBF1FF;
	z-index:201;
}

.user-dropdown a{
	display:block;
	padding:8px 20px;
	font-size:1.14285em;
	line-height:1.2em;
	color:#303030;
	text-decoration:none;
}

@media only screen and (max-width:1021px){
	
	.user-options{
		position:absolute;
		right:0px;
	}

}

@media only screen and (max-width:640px){

	.user-button.no-menu,
	.header-edit-profile-link{
		display:none;
	}

	.user-button{
		left:auto;
		max-width: 150px;
		top: 10px;
		padding: 10px 26px 10px 41px;
		font-size: 1em;
		line-height: 1.4em;
		background-size: 20px auto;
	}

	.user-button img{
		right:10px;
		margin-top:-4px;
		width:12px;
		height:8px;
	}

	.user-dropdown{
		width: 100%;
		max-width: 150px;
		top:10px;
		left:auto;
		right:0;
		padding: 65px 0 8px 0;
	}

	.user-dropdown a{
		padding:8px 20px;
		font-size:1.14285em;
		line-height:1.2em;
	}
}

/* PAGE GLOBAL ELEMENT: Footer */

.site-footer{
	background-color:#0075BC;
	border-top:10px solid #00B7D1;
	font-size:14px;
	color:#FFFFFF;
}
.site-footer .mdl-grid{
	height:134px;
}
.site-footer nav{
	display:block;
	margin-bottom:10px;
}
.site-footer nav a{
	display:inline-block;
	margin-right:3.5em;
	line-height:1.333em;
	font-size:1em;
	text-decoration:none;
	color:#FFFFFF;
}
.site-footer .copyright{
	display:block;
	margin-bottom:0px;
	font-size:0.857em;
}

@media only screen and (max-width:640px){
	
	.site-footer .mdl-grid{
		height:auto;
	}
	.footer-logo{
		margin:0 0 0.5em 0;
		padding-top:1em;
		text-align:center;
	}
	.footer-logo img{
		max-height:65px;
	}
	.site-footer nav a{
		display:block;
		margin-right:0;
		padding:10px;
		line-height:1.2em;
		text-align: center;
	}
	.site-footer nav + div{
		line-height:1.5em;
	}
	.copyright{
		margin:1.5em 0;
		text-align:center;
	}

}

/* -------------------- */
/* PAGE LAYOUT          */
/* -------------------- */

/* Page Layout: Containers */

.site-container{
	position:relative;
	width:100%;
	overflow-x:hidden !important;
}

.content-area{
	width:94%;
	margin:80px auto;
}

.basic-layout{
	background-color:#F9F9F9;
}

.basic-layout .content-area{
	margin:80px auto;
}

.basic-layout .content-area-half{
	margin:20px auto;
}


@media only screen and (max-width:640px){

	.content-area{
		margin:40px auto;
	}
	
	.basic-layout .content-area{
		margin:40px auto;
	}
	
	.basic-layout .content-area-half{
		margin:20px auto;
	}

}




/* -------------------- */
/* CONTENT LAYOUT          */
/* -------------------- */

/* Content Layout: Box with Header  */
.content-box-container, 
.mdl-grid.mdl-grid--no-spacing .content-box-container{
	margin:25px 8px;
	border-radius:4px;
	overflow:hidden;
	background-color:#fff;
	box-shadow: 0 2px 14px 0 rgba(0,0,0,0.1);
}

.mdl-grid.mdl-grid--no-spacing .content-box-container #regStep1{
	margin-top:0;
}

.content-box-container > section > .inner{
	padding:34px 0;
}

.content-box-container-heading{
	background:#0075BD;
}

.content-box-container-heading > div{
	position:relative;
}

.content-box-container-heading h1{
	margin:0;
	padding:16px 0;
	font-family: 'Fira Sans', sans-serif;
	font-size:1.5em;
	font-weight:300;
	font-style:normal;
	line-height:1.142em;
	color:#ffffff;
}

.content-box-container-heading span{
	position: absolute;
	bottom:0px;
	right:0px;
	display: inline-block;
	padding: 0 0 16px 0;
	font-size: 0.7857em;
	line-height:2.18em;
	vertical-align:middle;
	font-weight: 400;
	color:#ffffff;
}

.content-box-container-header{
	padding:0;
	color:#fff;
	background:#0075BD;
}
.content-box-container-header > div{
	padding:2.5em 0;
}
.content-box-container-header h1{
	margin:0 0 5px 0;
	padding:0;
	color:#fff;
	font-size:2.285em;
	font-weight:700;
	line-height:1.1em;
}
.content-box-container-header p{
	margin:0;
	padding:0;
	color:#fff;
	font-size:1.285em;
	line-height:1.333em;
}
.content-box-container-header + fieldset{
	padding:1em 0;
}
.content-box-container-header + fieldset p{
	margin:2.2em 0 0 0;
	font-size:1em;
	line-height: 1.5em;
	color:#333333;
}
.content-box-container-header + fieldset span.circle-number{
	display:block;
	font-size:1em;
}
.content-box-container-header + fieldset span + span{
	display:block;
	padding:0 0 6px 0;
	font-size:1.5em;
	line-height:1.3em;
	font-weight:700;
	color:#8031A7;
}

@media only screen and (max-width:640px){
	.content-box-container-heading span{
		position:static;
		display:block;
		margin-top: -16px;
		padding: 0 0 10px 0;
		text-align:left;
	}
}




/* -------------------- */
/* Re-usable Components */
/* -------------------- */

/* COMPONENT: Marquee */

.marquee{
	color:#fff;
	background-image:url(/vivushealth-profile/include/image/global/marquee-bg@2x.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size:100% auto;
	background-color: #0075BD;
	/*background-image: linear-gradient(to bottom right, #0075BD, #00B7D1);*/
	min-height:200px;
}
.marquee .mdl-grid{
	position:relative;
}
.marquee .table{
	height:200px;
}
.marquee .td{
	padding:2em 0;
}
.marquee h1{
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
	margin:0 0 1em 0;
	font-size:2.42857em;
	font-weight:700;
	line-height:1.23529em;
	color:#fff;
}
.marquee h1:last-child{
	margin-bottom:0;
}
.marquee p{
	margin:0 0 1em 0;
	font-size:2em;
	line-height:1.3214em;
	color:#fff;
}
.marquee p:last-child{
	margin-bottom:0;
}
.marquee h1 span{
	display:block;
	font-size:0.8235em;
	font-weight:400;
}
.marquee.homepage{
	background-image:url(/vivushealth-profile/include/image/content/homepage-marquee-bg@2x.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size:100% auto;
}
.marquee.homepage .table{
	height:300px;
}
.marquee.homepage p{
	margin:0 0 1em 0;
}

@media only screen and (max-width:1440px){

	.marquee{
		background-size:auto 200px;
	}
	.marquee.homepage{
		background-size:auto 400px;
	}

}

@media only screen and (max-width:640px){

	.marquee.homepage .table {
		height: 260px;
	}

	.marquee br{display:none;}

	.marquee.homepage h1{
		font-size:2em;
	}
	.marquee h1{
		font-size:2em;
	}
	.marquee p{
		font-size:1.35em;
	}

}

/* Re-usable Component: Back to Top Link */

.back-to-top{
	margin:0.5em 0 5em 0;
	text-align:center;
}
.back-to-top a{
	text-align:center;
	font-size:1.125em;
	color:#8031A7;
	text-decoration: none;
	font-weight:700;
}

/* Re-usable Component: Pagination Links */

ul.pagination
,div.pagination-title
{
	margin: 0.5em 0;
	padding: 0;
	font-size: 16px;
}

ul.pagination li
{
	display: inline;
	list-style: none;
}

ul.pagination li .page-link
{
	display: inline-block;
	vertical-align: top;
	min-width: 1.5em;
	border: 1px solid rgba(128, 128, 128, 0.5);
	border-radius: 0.25em;
	padding: 0.25em;
	line-height: 1.0em;
	text-align: center;
	text-decoration: none;
}

ul.pagination li.active .page-link
{
	background: #eeeeee;
}

ul.pagination li:first-child .page-link::after
{
	content: " prev";
}

ul.pagination li:last-child .page-link::before
{
	content: "next ";
}

/* Re-usable Component: Floating ISI */

.floating-isi{
	position:fixed;
	bottom:0;
	left:0;
	right:0;
	height:auto;
	border-top:8px solid #8031A7;
	background:#ffffff;
	z-index:100;
}

.floating-isi .max-width-960{
	position: relative;
}

.floating-isi .max-width-960 .isi{
	padding-top:0;
	padding-bottom:0;
	margin-bottom:0;
}

.floating-isi p{
	height: 4em;
	overflow:hidden;
}

.floating-isi a{
	position: absolute;
	display:inline-block;
	top:0px;
	right:10%;
	padding:3px 10px;
	background-color: #8031A7;
	color:#fff;
	border-radius:0 0 5px 5px;
	text-decoration: none;
	font-weight: 500;
}

/* Re-usable Component: Circle Number to left of Element */

.numbered-content h1{
	margin-bottom:1em;
}

.circle-number{
	position:absolute;
	top:2px;
	left:2px;
	display:inline-block;
	width:26px;
	height:26px;
	background-color:#00B7D1;
	border-radius:100%;
	font-size:14px;
	font-weight:700;
	color:#fff;
	line-height:26px;
	vertical-align:middle;
	text-align:center;
}

.circle-indent{
	position: relative;
	padding-left:52px;
}

span.circle-number + span{
	display:block;
	font-family: 'Fira Sans', sans-serif;
	font-size:1.285em;
	line-height:1.5em;
	font-weight:300;
	font-style:normal;
	color:#0075BD;
	text-transform: uppercase;
}

@media only screen and (max-width:640px){
	.circle-num-list .circle-indent {
		padding-left: 12%;
		margin-bottom: 3em;
	}
}

@media only screen and (max-width:420px){
	.circle-num-list .circle-indent {
		padding-left: 16%;
		margin-bottom: 2.5em;
	}
}

@media (max-width: 640px){
	.circle-indent {
		position: relative;
		padding-left: 38px;
	}
}

.circle-number-relative{
	position:relative;
	top:-3px;
	left:0px;
	display:inline-block;
	width:50px;
	height:50px;
	margin-right:14px;
	background-color:#00B7D1;
	border-radius:100%;
	font-size:26px;
	font-weight:700;
	color:#fff;
	line-height:50px;
	vertical-align:middle;
	text-align:center;
}

.circle-number-centered{
	text-align:center;
}
.circle-number-centered > .relative{
	display:inline-block;
	text-align:left;
}
.circle-number-c{
	position:absolute;
	top:-5px;
	left:-70px;
	display:inline-block;
	width:50px;
	height:50px;
	background-color:#00B7D1;
	border-radius:100%;
	font-size:26px;
	font-weight:700;
	color:#fff;
	line-height:50px;
	vertical-align:middle;
	text-align:center;
}

@media only screen and (max-width:1020px){

	.circle-number-centered{
		padding:0 3%;
	}
	
	.circle-number-centered > .relative{
		padding-left:56px;
	}

	.circle-number-c{
		top:-4px;
		left:0px;
		width:40px;
		height:40px;
		font-size:22px;
		line-height:40px;
	}

}



/* List with custom text li */
.list-custom{
	position: relative;
	padding-left:40px;
}
.list-custom > .li-number{
	position: absolute;
	top:0;
	left:0;
	display:block;
}
.list-custom.sublist{
	margin-left:40px;
}

/* PDF Icon link */

.icon-pdf-file a{
	display:block;
	min-height:40px;
	padding-top:8px;
	padding-left:60px;
	background:url(../image/global/pdf-file-icon.svg) top left no-repeat;
	background-size:33px auto;
	color:#333333;
	text-decoration: none;
}

.icon-pdf-file.weight400 a{
	font-weight:400;
}

/* Icon text */

.icon-text span{
	display:block;
	min-height:40px;
	padding-top:5px;
	padding-left:60px;
	background-position:top left;
	background-repeat:no-repeat;
	color:#333333;
	text-decoration: none;
}

.icon-text.nutrition-icon span{
	background-image:url(../image/content/nutrition-icon@2x.png);
	background-size:auto 40px;
}
.icon-text.devices-icon span{
	background-image:url(../image/content/devices-icon@2x.png);
	background-size:auto 40px;
}


/* --------------- */
/* FORMS           */
/* --------------- */

#orgPractitionerFields, #orgClinicFields, #signingAuthorityOptions, #npiOptionalLabel, #legalAuthorityFields,
#regStep4, #regStep5{
	display:none;
}

.force-show #regStep4
,.force-show #regStep5 {
	display: block;
}

fieldset{
	padding:0;
}
.register-step fieldset{
	padding:16px 0 0 0;
}
fieldset.radio-fields{
	padding:36px 0;
}

fieldset p{
	margin:1em 0;
	font-size:1.14285em;
	line-height: 1.5em;
}
fieldset p.cb-footnote{
	margin:0 0 0 6px;
	font-size:0.857em;
	line-height: 2em;
}

fieldset p.error{
	position:relative;
	margin-top:0;
	padding: 6px 0 6px 52px;
	font-size:1em;
	font-weight:600;
    line-height: 1.35em;
	color:#E64B4B;
}

fieldset p.error i{
	position:absolute;
	top:0;
	left:0;
	font-size:30px;
}

fieldset .text-input p.error{
	margin-bottom:0;
	padding:8px 0 0 10px;
}

fieldset.radio-fields label{
	font-size:1.2857em;
}

fieldset.radio-fields .last-vertical-radio{
	margin:6px 0 18px 0;
}

.text-input{
	padding:12px 0;
}

.text-input label{
	position: relative;
	display:block;
	margin:0px 0px 8px 6px;
	line-height:1.3em;
	font-size:1.07em;
	font-weight:700;
}
.text-input label span{
	position: absolute;
	bottom:0;
	right:0;
	font-weight:400;
	color: #505050;
	line-height: 1.65em;
	display: inline;
	font-size: 0.733em;
}
.text-input input{
	box-sizing:border-box;
	display:block;
	width:100%;
	padding:13px 10px;
	border:1px solid #c7c7c7;
	border-radius:5px;
	font-size:1em;
	line-height:1.2em;
}

input[type=date] {
	box-sizing:border-box;
	display:block;
	width:100%;
	padding:11px 8px;
	border:1px solid #c7c7c7;
	border-radius:5px;
	font-size:1em;
	line-height:1.2em;
	color: #505050;
	text-transform: uppercase;
}

fieldset select {
	box-sizing:border-box;
	display:block;
	width:100%;
	padding:12px 8px;
	border:1px solid #c7c7c7 !important;
	border-radius:5px;
	font-size:1em;
	line-height:1.2em;
	color: #505050 !important;
}

fieldset .radio-options{
	margin:1em 0;

}
fieldset .radio-options p{
	font-size: 1.07em;
    line-height: 1.866em;
}

fieldset .radio-options .mdl-radio{
	font-size: 1.07em;
    line-height: 1.866em;
}

fieldset.date{
	padding:0;
}

fieldset.date select{
	/*-webkit-appearance: none;*/
	display:inline-block;
	width:25%;
}

fieldset.date select:nth-child(2){
	margin-left:3%;
	margin-right:3%;
}

fieldset.date select:nth-child(3){
	width:40%;
}

.checkbox-fields .checkbox-input{
    padding-top: 1em;
}

fieldset.checkbox-fields ul,
fieldset.checkbox-fields ol,
fieldset.checkbox-fields p{
    font-size:1.07em;
	line-height:1.866em;
}

fieldset.checkbox-fields ul li,
fieldset.checkbox-fields ol li{
    font-size:1em;
	line-height:1.866em;
}

.checkbox-fields a{
	color:#0075BD;
	font-weight:400;
	text-decoration: none;
}

.login-container .checkbox-input div{
    font-size:1.07em;
	line-height: 1.866em;
    margin-left: 1.5em;
}

.checkbox-input .mdl-checkbox__box-outline {
    position: absolute;
    top: 3px;
    left: 0;
    display: inline-block;
    box-sizing: border-box;
    width: 20px;
    height: 20px;
	border-radius:4px;
	border:1px solid #c7c7c7;
}
.mdl-checkbox.is-checked .mdl-checkbox__box-outline {
	border: 1px solid #0075BD;
	width: 20px;
}
.mdl-checkbox.is-checked .mdl-checkbox__tick-outline {
	background-color: #0075BD;
}

.mdl-checkbox__tick-outline {
    height: 103%;
    width: 104%;
}

input[type=submit].submit-button{
	box-sizing:border-box;
	display:block;
	width:100%;
	max-width:250px;
	margin:25px auto;
	padding:14px 8px 14px 8px;
	border:none;
	border-radius:5px;
	background:#54BE29;
	border:1px solid #54BE29;
	text-align:center;
	text-transform:uppercase;
    font-size:1.14285em;
	font-weight:700;
	line-height:1.38em;
	color:#fff;
	cursor:pointer;
	vertical-align:middle;
	text-decoration:none;
}

input[type=submit].submit-button:hover{
	border:1px solid #54BE29;
	color:#54BE29 !important;
	background-color:#fff;
}

input[type=submit].submit-button:disabled,
input[type=submit].submit-button:disabled:hover{
	border:1px solid #ABABAB;
	color:#FFFFFF !important;
	background-color:#ABABAB;
}

.circle-indent .checkbox-fields p{
	margin-bottom:0;
}
.circle-indent .checkbox-fields > div:last-child > div > p{
	margin-bottom:1em;
}
.circle-indent input[type="text"]{
	max-width:328px;
}

@media only screen and (max-width:1000px){

	.text-input label span{
		position: static;
		display: block;
	}


}

@media only screen and (max-width:640px){

	.content-box-container-header span{
		font-size:1.1em;
	}

	.register-radio-btns{
		text-align:left;
	}

	fieldset p.error {
		padding: 2px 0 8px 38px;
		font-size: 1em;
	}

	fieldset p.error i {
		font-size: 30px;
	}

}

/* Registration Scrolling Container */

.scrollable-content{
	position: relative;
	height:450px;
	margin-top:3em;
	padding-right:20px;
	overflow-y:scroll;
    background: #FFFFFF;
}
.scrollable-content > div > p:first-child{
	margin-top:0;
}
.scrollable-content ul,
.scrollable-content ol{
	margin-left:3px;
}

.reg-box-style .text-input{
	padding:0 !important;
}
.reg-box-style .text-input{
	font-size:1.066em;
}
.reg-box-style .text-input input {
	padding: 14px 10px;
}

@media (max-width: 640px){
	#cboxLoadedContent .text-input{
		margin-bottom:10px;
	}
}

/* Form global general style adjustments */

.checkbox-fields .text-input + .text-input{
	padding-top:0;
}
.register-step .circle-number{
	top:0;
}


/* -------------------- */
/* MODIFIERS            */
/* -------------------- */

/* Component/Element Visual Additions */ 

.margin-uncollapse{padding:1px 0;}

.margin-top-none{margin-top:0 !important;}
.margin-bottom-none{margin-bottom:0 !important;}

.overlay-page-bg{padding:1px 0;background-color:#F9F9F9;}
.border-grey{border:1px solid #CDCDCD;border-radius:6px;}
.border-grey-11{border:11px solid #EFEFEF;border-radius:0px;}
.bottom-border-grey{border-bottom:1px solid #BCBCBC;}

.label-width{
	display:inline-block;
	width:80px;
}

/* -------------------- */
/* PAGES                */
/* -------------------- */

/* PAGE: Homepage */

.vhp-email{
	color:#333333;
}
.vhp-email:hover{
	color:#49C2DB;
}

/* PAGE: Login */

.login-container{
	padding:0 0 0 0;
	border-radius:4px;
	overflow:hidden;
	background:#fff;
	box-shadow: 0 2px 14px 0 rgba(0,0,0,0.20);
}

.login-container-header{
	background-color: #0075BD;
	background-image: linear-gradient(to bottom right, #0075BD, #00B7D1);
}

.login-container-header + .mdl-grid{
	padding:36px 0 0 0;
}
.login-content{
    padding:50px 0;
}
.login-container fieldset{
    padding:0;
}
.login-container p{
	margin: 0 0 0.9em 0;
}
.login-container fieldset p{
	margin: 0 0 0.9em 0;
    font-size: 1.2857em;
    line-height: 1.3125em;
}
.login-container fieldset p.error {
	font-size: 1em;
	padding: 6px 0 6px 0px;
}

.login-container .checkbox-input + div > p{
	margin-bottom:0;
}

.login-container .mdl-grid.mdl-grid--no-spacing > .mdl-cell.checkbox-input,
.login-container .mdl-grid.mdl-grid--no-spacing > .mdl-cell.checkbox-input + div{
	margin-top:10px;
}

.login-container-header h1{
	margin:0;
	padding:20px 0px 20px 0px;
	font-size:1.71428em;
	font-weight:300;
	line-height:1.1666em;
	color:#fff;
}

.login-container-footer > div:last-child a{
	text-decoration:underline;
	color:#fff;
}

.login-container-footer{
	background-color: #0075BD;
	background-image: linear-gradient(to bottom right, #0075BD, #00B7D1);
}
.login-container-footer p{
	margin:1em 0;
	font-weight:400;
	color:#fff;
}

@media only screen and (max-width:640px){

	.login-container-header h1{
		padding:12px 8px;
		font-size:1.5em;
	}

	.login-content{
		padding:20px 0;
	}

}

/* PAGE: Password Reset */
.login-container .password-reset-content fieldset p{
	margin-bottom:0;
	font-size:1.07em;
	font-weight:700;
}

.password-reset-content input[type=submit].submit-button{
	max-width:360px;
	/*margin-top:0;*/
	margin-bottom:0;
}

/* PAGE: Dashboard  */

.content-container-box{
	padding:0 0 0 0;
	border-radius:4px;
	overflow:hidden;
	background:#fff;
	box-shadow: 0 2px 14px 0 rgba(0,0,0,0.20);
}

.dashboard-container .margin-top-extra{
	margin-top:1.75em;
}









/* -------------------- */
/* CONTENT ELEMENTS     */
/* -------------------- */

.content-cell{
	margin-top:60px;
	margin-bottom:60px;
}
.content-cell.margin-vertical-minus-spacing{
	margin-top:46px;
	margin-bottom:46px;
}

.content-cell h1{
	font-size:2.142857em;
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
}

.content-cell p{
	font-size:1.2857em;
	line-height:1.6666em;
	color:#333333;
}

.content-cell ul, 
.content-cell ol{
	margin:0em 0 1em 1.35em;
    padding-left: 0em;
	font-size: 1.142em;
    line-height: 1.5em;
}

.content-cell .mdl-cell--6 ul, 
.content-cell .mdl-cell--6 ol{
	padding-right:8%;
}

.content-cell ul li, 
.content-cell ol li{
	padding-left:1em;
}

.content-cell.blue-content-cell{
	padding:50px 0;
	background-color:#0075BD;
	color:#fff;
}
.content-cell.blue-content-cell h1,
.content-cell.blue-content-cell p,
.content-cell.blue-content-cell ul,
.content-cell.blue-content-cell ol,
.content-cell.blue-content-cell li{
	color:#fff;
}


/* Chevron Bar */

.chevron-bar{
	min-height:100px;
	background-color:#0075BD;
}
.chevron-bar .chevron-bar-inner{
	position:relative;
}
.chevron-bar p{
	margin:0;
	padding:22px 0;
	font-size:2em;
	line-height:1.2857em;
	color:#fff;
}
.chevron-bar .chevron{
	position: absolute;
	display:block;
	left:-52px;
	top:0;
	bottom:0;
	width:32px;
	background:url('/vivushealth-profile/include/image/global/chevron.svg') center center no-repeat;
}

@media only screen and (max-width:1200px){

	.chevron-bar{
		padding-left:60px;
	}

}

@media only screen and (max-width:640px){

	.chevron-bar p{
		font-size: 1.35em;
	}

}

/* Chevron Content Section */

.chevron-content{
	min-height:100px;
}
.chevron-content .chevron-content-inner{
	position:relative;
}
.chevron-content h2{
	font-family: 'Open Sans', sans-serif;
    margin: 0.5em 0;
    font-size: 2.14285em;
    font-weight: 700;
    line-height: 1.1666;
    color: #0075BD;
}
.chevron-content p{
	margin:1em 0;
	padding:0;
	font-size:1.2857em;
	line-height:1.6666em;
	color:#333333;
}
.chevron-content .chevron{
	position: absolute;
	display:block;
	left:-52px;
	top:5px;
	bottom:0;
	width:32px;
	background:url('/vivushealth-profile/include/image/global/chevron.svg') top center no-repeat;
}

@media only screen and (max-width:1200px){

	.chevron-content{
		padding-left:60px;
	}

}

@media only screen and (max-width:640px){

	.chevron-content h1{
		font-size: 1.85em;
	}

}



/* Centered Image Cells */

.img-cell{
	text-align:center;
}

.img-cell img{
	width:90%;
	height:auto;
	display:inline-block;
}

.home-program-diagram{
	max-width:406px;
	height:auto;
}

/* 2 Col Features */

.features-2col-row > div{
	padding-top:57px;
	padding-left:2%;
	padding-right:2%;
}

.features-2col{
	height:100%;
	padding:0 0 0 0;
	border-radius:5px;
	background:#fff;
	box-shadow: 0 2px 14px 0 rgba(0,0,0,0.20);
}

.features-2col .feature-title{
	border-radius:5px 5px 0 0;
	position: relative;
	background-color: #0075BD;
	background-image: linear-gradient(to bottom right, #0075BD, #49C2DB);
	font-size:1.71428em;
	padding:80px 15px 20px 15px;
	line-height:1.16666em;
	color:#fff;
	text-align:center;
}

.features-2col .feature-title img{
	display:block;
	position: absolute;
	top:-57px;
	left:50%;
	margin-left:-58px;
	width:114px;
	height:auto;
}

.features-2col .feature-content{
	padding:32px 12.5%;

}

.features-2col .feature-content li{
	margin-bottom:0.66em;
}
.features-2col .feature-content p{
	margin:1.2em 0;
}

.features-2col .feature-title {
    border-bottom:8px solid #49C2DB;
    background-image: none;
	border-radius: 10px 10px 0 0;
}

/* 3 Col Features */

.features-3col-row > div{
	padding-top:57px;
	padding-left:1%;
	padding-right:1%;
}

.features-3col{
	height:100%;
	padding:0 0 0 0;
	border-radius:5px;
	background:#fff;
	box-shadow: 0 2px 14px 0 rgba(0,0,0,0.20);
}

.features-3col .feature-title{
	border-radius:5px 5px 0 0;
	position: relative;
	background-color: #0075BD;
	background-image: linear-gradient(to bottom right, #0075BD, #49C2DB);
	font-size:1.71428em;
	padding:80px 15px 20px 15px;
	line-height:1.16666em;
	color:#fff;
	text-align:center;
}

.features-3col .feature-title img{
	display:block;
	position: absolute;
	top:-57px;
	left:50%;
	margin-left:-58px;
	width:114px;
	height:auto;
}

.features-3col .feature-content{
	padding:24px 20px;

}

.features-3col .feature-content li{
	margin-bottom:0.66em;
}

.features-3col .feature-title {
    border-bottom:8px solid #49C2DB;
    background-image: none;
	border-radius: 10px 10px 0 0;
}

/* Li Like Content */
.li-like{
	position: relative;
}
.li-like p:first-child{
	position: relative;
}
.li-like p:first-child span{
	position: absolute;
	left:-24px;
	font-weight:700;
}

/* Full Width CTA */
.cta-full-width{
	position: relative;
	border-radius:10px;
	background-color: #0075BD;
	background-image: linear-gradient(to bottom right, #0075BD, #49C2DB);
}
.cta-full-width h1{
	margin:0;
	color:#fff;
	font-size:1.857em;
	line-height:1.2em;
}
.cta-full-width p{
	margin:0;
	color:#fff;
	font-size:1.14285em;
}

/* FAQs */

.faq{
	margin:20px 0;
	border-radius:5px;
	border:1px solid #C7C7C7;
	overflow:hidden;
	background-color:#ffffff;
}

.faq .expandable-link {
	position: relative;
    display: block;
    margin: 0;
    padding:0.9em 35px 0.9em 35px;
    text-align: left;
    font-size: 1.2857em;
    font-weight: 600;
	background-color:#ffffff;
	color:#505050;
	text-decoration: none;
}
.faq .expandable-link:after {
	position: absolute;
	right:1em;
	top:5px;
	content:"\2014";
	font-weight:700;
	color:#0075BD;
	line-height: 39px;
    vertical-align: middle;
}
.faq .expandable-link.closed:after {
	font-size: 1.5em;
    font-weight: 700;
    content: "+";
    right: 0.6em;
}
.faq .expandable-area {
    padding:0.5em 35px 1em 35px;
}
.faq .expandable-area p{
	font-size: 1.142857em;
}

@media only screen and (max-width:640px){

	.faq .expandable-area {
		padding:0.5em 35px 1em 20px;
	}

}





















/* -------------------------------------------------------*/
/* -------------------------------------------------------*/
/* -------------------------------------------------------*/
/* OLD STYLES TO CLEAN UP AS NEEDED */
/* -------------------------------------------------------*/
/* -------------------------------------------------------*/
/* -------------------------------------------------------*/




.blue-button.disabled{
	border:1px solid #ABABAB;
	color:#FFFFFF !important;
	background-color:#ABABAB;
}
.blue-button.disabled:hover{
	border:1px solid #ABABAB;
	color:#FFFFFF !important;
	background-color:#ABABAB;
}




.circle-num-list .circle-indent {
	padding-left: 9%;
	margin-bottom:3em;
}

.circle-num-list .circle-number{
	display:inline-block;
	width:35px;
	height:35px;
	background-color:#0033A0;
	border-radius:100%;
	font-weight:700;
	color:#fff;
	font-size:1.125em;
	line-height:35px;
	vertical-align:middle;
	text-align:center;
}
.circle-num-list .header{
	display:block;
	padding: .3em 0 1em 0;
	font-size:1.125em;
	font-weight:700;
	line-height: 1.444em;
	color:#8031A7;
}
.circle-num-list > div > p:last-child{
	margin-bottom: 1.25em;
}

.circle-indent.alert .circle-number{
	background-color:#E31F42;
} 

.circle-indent.alert .circle-number{
	background-color:#E31F42;
	color:#fff;
} 
/*
.content-box-container-header + fieldset p.alert,
.content-box-container-header + fieldset p.alert a,
.content-box-container-header + fieldset .alert span + span{
	color:#E31F42;
}
*/


@media only screen and (max-width:480px){
	body{
		font-size:0.85em;
	}
}
/* GLOBAL: General Typography - Terms Styles */

.isi{
	margin-bottom:3.5em;
}

.terms-content{
	padding:0.25em 0;
}
.terms-content h1{
	margin:0 0 1em 0;
	font-size:1.42857em;
	font-weight:700;
	line-height:1.142em;
	color:#7F32A6;
}
.terms-content h2{
	margin:2em 0 1em 0;
	font-size:1.142857em;
	font-weight:700;
	line-height:2em;
	color:#333333;
}
.terms-content p:last-child{
	margin-bottom:0;
}
.terms-content p{
	margin-bottom:1.2em;
	font-size:1.142857em;
	line-height: 1.5em;
}
.terms-content p a{
	font-weight:700;
	/*text-decoration: none;
	color:#00B5F2;*/
	color:#7F32A6;
	text-decoration: underline;
}
.terms-content ul{
	margin-top:0;
	margin-bottom:1.2em;
	padding-left:16px;
	font-size:1.142857em;
	line-height: 1.5em;
}

/* ----------------- */
/* ELEMENTS          */
/* ----------------- */

/* ELEMENT - Copy Page Divider */

.content-page-divider{
	overflow:hidden;
	height:30px;
	/*background:url(/include/image/global/content-page-divider@2x.jpg) center center no-repeat;
	background-size:cover;*/
	background-color: #00B8E6;
	background-image: linear-gradient(to bottom right, #00B8E6, #7F32A6);
}

@media only screen and (max-width:640px){

	.content-page-divider{
		overflow:hidden;
		height:15px;
		/*background:url(/include/image/global/content-page-divider@2x.jpg) center center no-repeat;
		background-size:cover;*/
	}	

}



/* ELEMENT - List like area with graphical list items */

.icon-list{
	padding:.75em 0 1em 0 !important;
}
.icon-list img{
	display:block;
	width:90%;
	max-width:60px;
	height:auto;
	margin-top:3px;
}
.icon-list img.icon-rx{
	max-width:51px;
}
.icon-list img.icon-magglass{
	max-width:50px;
}
.icon-list img.icon-env{
	max-width:50px;
}
.icon-list img.icon-hcp{
	max-width:46px;
}
.icon-list .header{
	display:block;
	padding:0 0 1em 0;
	font-size:1.125em;
	font-weight:700;
	line-height: 1.444em;
	color:#0033A0;
}
.icon-list span.larger{
	display:block;
	font-size:1.2em;
}
.icon-list .header + span.larger{
	margin-bottom:1.2em;
}

@media only screen and (max-width:1021px){

	.icon-list img {
		margin: 3px auto;
	}

}

@media only screen and (max-width:640px){
	
	.icon-list img{
		width:66.5%;
	}

}

/* ELEMENT - Text in between lines */

.line-header{
	position:relative;
	margin:20px 0;
	text-align:center;
}
.line-header span{
	position:relative;
	display:inline-block;
	width:auto;
	padding:0 20px;
	background-color:#fff;
	font-size:1.1428em;
	font-weight:700;
}
.line-header:before{
	position: absolute;
	top:50%;
	left:0;
	right:0;
	display:block;
	height:1px;
	content:' ';
	overflow:hidden;
	background:#0033A0;
	overflow: hidden;
}
/*
.content-box-container .line-header{
	margin:40px 0 10px 0;
}
.content-box-container .line-header span{
	font-size:1em;
}
*/


/* ELEMENT - Login/Register Buttons */
.register-button{
	box-sizing:border-box;
	display:block;
	width:100%;
	margin:0 auto;
	padding:14px 15px;
	font-size:1.14285em;
	font-weight:700;
	line-height:1.25em;
	text-align:center;
	vertical-align:middle;
	border-radius:6px;
	/*padding:0 40px 0 62px;
	background:url(../image/global/plus-button-icon@2x.png) 20px 50% no-repeat #0033A0;
	background-size:27px auto;*/
	background-color: #0033A0;
	border:1px solid #fff;
	color:#fff;
	text-decoration:none;
}
.register-button:hover{
	border:1px solid #0033A0;
	color:#0075BC !important;
	background-color:#fff;
}
.register-button.border-button{
	border:1px solid #fff;
}
.register-button.border-button:hover{
	border:1px solid #0075BC;
}




/* COMPONENT:  Blue Card */

.blue-card{
	margin-bottom: 2em !important;
	padding:34px 0 38px 0;
	background-color:#0033A0;
	border-radius:4px;
	color:#fff;
}
.blue-card p{
	width:100%;
	max-width:215px;
	margin:0 auto 1.25em auto;
	font-size:1.5em;
	font-weight:700;
	line-height:1.142em;
	text-align:center;
	color:#fff;
}
.blue-card .register-button,
.blue-card .login-button{
	box-sizing:border-box;
	display:block;
	width:100%;
	max-width:215px;
	margin:0 auto;
	padding:14px 15px;
	font-size:1.14285em;
	font-weight:700;
	line-height:1.25em;
	text-align:center;
	vertical-align:middle;
	border-radius:6px;
	color:#fff;
	text-decoration:none;
	background-image:none;
	background-color:#3abcba;
}
.blue-card .register-button:hover,
.blue-card .login-button:hover{
	padding:13px 14px;
	background-color:#fff;
	color:#3abcba !important;
	border:1px solid #3abcba !important;
}

/* COMPONENT:  CTAs */

.ctas{
	margin-bottom:4em !important;
}

.cta{
	position: relative;
	padding:2em 3.2% 4em 3.2%;
	box-shadow: 0 2px 20px 0 rgba(0,0,0,0.20);
}
.cta p{
	font-weight:700;
}
.cta p.header{
	font-size:1.4285em;
	font-weight:700;
	color:#8031A7;
}
.cta p.header span{
	display:block;
	font-weight:400;
	color:#333;
}

.alert-box{
	padding-bottom:2em;
}

.alert-box h1{
	margin:0.65em 0 1em 0;
}
.alert-box h2{
	margin:0em 0 1em 0;
	line-height:1.4em;
	font-size:1.357em;
}
.alert-box p{
	margin:1em 0 0 0;
}
.alert-box p a{
	margin:1em 0 0 0;
	text-decoration:none;
}

/* COMPONENT:  Shipping Methods */

.shipping-methods{
	max-width:600px;
	margin:0 0 2em 0;
}
.shipping-methods th{
	font-weight:700;
}
.shipping-methods th:nth-child(1){
	width:34%;
}
.shipping-methods th:nth-child(2){
	width:22%;
}
.shipping-methods th:nth-child(3){
	width:22%;
}
.shipping-methods th:nth-child(4){
	width:22%;
}

.shipping-methods th,
.shipping-methods td{
	text-align:left;
	font-size:1.14285em;
	line-height:1.625em;
}

.shipping-methods td[rowspan="3"]{
	color:#003CAA;
	font-weight:700;
	font-size:1.1428em;
	line-height:1.625em;
	text-align:right;
	padding-right:3em;
}

@media only screen and (max-width:640px){

	.shipping-methods th:nth-child(1),
	.shipping-methods th:nth-child(2),
	.shipping-methods th:nth-child(3),
	.shipping-methods th:nth-child(4){
		width:auto;
	}
	.shipping-methods th,
	.shipping-methods td{
		padding:0 4px;
		font-size:1em;
	}	
	.shipping-methods td[rowspan="3"]{
		font-size:1em;
		padding-right:1em;
		text-align:right;
	}

}

@media only screen and (max-width:640px){

	.shipping-methods th,
	.shipping-methods td{
		padding:0 3px;
		font-size:0.9375em;
	}	
	.shipping-methods td[rowspan="3"]{
		font-size:0.9375em;
		padding-right:0em;
		text-align:left;
	}

}

/* COMPONENT:  Tool Details/Button */

.tool-button{
	margin:2em 0 3em 0;
}

.tool-button img{
	display:block;
	width:92%;
	max-width:44px;
	height:auto;
}

.tool-button .mdl-grid > div:first-child{
	position:relative;
}
.tool-button .mdl-grid > div:first-child img{
	position:absolute;
}

.tool-button .mdl-grid > div:first-child p{
	padding-left:20%;
}

.tool-button .mdl-grid > div p:last-child {
	margin-bottom:0;
	padding-left:20%;
}

@media only screen and (max-width:640px){
	.tool-button .mdl-grid > div p.customMargin {
		margin-bottom: 2.5em;
	}
}

/* COMPONENT:  Expandable Section/Link */

.expandable-area{
	display:none;
	padding: 2.5em 0 .25em 0;
}

.expandable-area.default-open{
	display:block;
}

.expandable-link{
	display:block;
	margin:30px 0 30px 0;
	padding-right:30px;
	text-align:right;
	font-size:1.2857em;
	font-weight:700;
}

.expandable-link span{
	display:inline-block;
	padding-right:30px;
	background:url(../image/global/dashboard-open-close-icon@2x.png) center right no-repeat;
	background-size:auto 16px;
}

.backtotop-link{
	font-size:1.2857em;
	margin-top: -0.5em;
    margin-bottom: 2em;
}
.backtotop-link a{
	text-decoration:none;
	font-weight: 700;
}

/* COMPONENT: Close Button */

.close-button{
	position: absolute;
	top: 1em;
	right: 1em;
	width:40px;
	height:40px;
	background: url(/include/image/global/close-lightbox@2x.png) center center no-repeat;
	background-size: 30px 30px;
	text-decoration: none;
}

@media only screen and (max-width:640px){

	.close-button{
		top: 0.5em;
		right: 0.5em;
		background-size: 24px 24px;
	}

}

@media only screen and (max-width:420px){

	.close-button{
		top: 0.2em;
		right: 0.2em;
		background-size: 20px 20px;
	}

}


/* ----------------- */
/* PAGES             */
/* ----------------- */

/* PAGE: Homepage */

h2.home-h2{
	margin:8px 0 0 0;
	font-size:1.7142em;
	font-weight:700;
	line-height:1.1666em;
	color:#0075BC;
}

.home-content-box h2{
	margin-top:0;
}

/* PAGE: Register */

#insuredError, #usResidentError{
	display:none;
}





/* PAGE: Reset Password */

.login-container.reset-pw .login-container-header + .mdl-grid {
    padding: 6px 0 0 0;
}


/* PAGE: Dashboard */

.dashboard-container ul{
	margin-left:0;
	padding-left:1.5em;
}

.mdl-grid .dashboard-container,
.mdl-grid.mdl-grid--no-spacing .dashboard-container{
	position: relative;
	margin-bottom:40px;
	padding:0;
	border-radius:4px;
	/*overflow:hidden;*/
	background-color:#fff;
	box-shadow: 0 2px 14px 0 rgba(0,0,0,0.20);
}

.dashboard-intro h2{
	margin:1.5em 0 .5em 0;
	padding:0 16px;
	font-size:1.7em;
	font-weight:700;
	line-height:1.166em;
	color:#0075BC;
}

.dashboard-container-header{
	padding:1px 0;
	color:#fff;
	/*background:url(../image/global/register-header-bg@2x.jpg) center center no-repeat;
	background-size:cover;*/
}

.dashboard-container-heading{
	position: relative;
	height:100px;
	background-color: #0033A0;
	padding-left:20%;
	text-align:left;
	line-height:0.89em;
	border-radius:5px 5px 0 0;
}
.dashboard-container-heading.qandme{

}

.dashboard-container-heading h2{
	margin:0;
	padding:0.7em 3% 0.5em 0;
	font-size:2em;
	font-weight:700;
	line-height:1.166em;
	color:#ffffff;
	text-align:left;
}

.dashboard-container-heading.qandme h2{
	padding:1em 3% 0.5em 0;
	font-size:1.785em;
	line-height:1em;
}

.dashboard-container-heading.qandme span{
	display:block;
	font-size:0.8em;
	line-height:1.25em;
	font-weight:400;
}

.dashboard-container-heading > img{
	position: absolute;
	left:30px;
	top:-15px;
}

.dashboard-co-pay-card{
	text-align:center;
}
.dashboard-co-pay-card > img{
	display:inline-block;
	margin:0.75em 0 2.25em 0;
}

.dashboard-section{
	margin:3.5em 0 0 0;
}

.dashboard-section:first-child{
	margin:0;
}

.dashboard-section .link-button{
	margin:2em auto 2em 0;
}

.dashboard-indent{
	padding:0.5em 0 0.5em 10%;
}

@media (max-width: 1020px){
	
	.dashboard-container-heading{
		padding-left:25%;
	}

	.dashboard-container-heading > img{
		left:20px;
	}
	
}

@media (max-width: 720px){

	.dashboard-container-heading{
		height:80px;
		padding-left:25%;
	}

	.dashboard-container-heading > img{
		left: 6px;
		top: -10px;
		height: 100px;
	}
	
	.dashboard-container-heading h2 {
		font-size: 1.6em;
	}

	.dashboard-container-heading.qandme h2 {
		padding: 0.9em 3% 0.5em 0;
		font-size: 1.5em;
	}

}

@media only screen and (max-width:640px){

	.expandable-area{
		/*
		padding-left:16px;
		padding-right:16px;
		*/
		padding-left:0px;
		padding-right:0px;
	}

	.dashboard-copay-area .tool-button .mdl-grid--no-spacing > div:first-child{
		min-height: 5em;
	}

}

@media (max-width: 480px){

	.dashboard-container-heading{
		height:80px;
		padding-left:27%;
	}

	.dashboard-container-heading > img{
		left: 10px;
		top: 5px;
		height: 70px;
	}
	
	.dashboard-container-heading h2 {
		padding:1.25em 3% 1em 0;
		font-size: 1.4em;
	}
	
	.dashboard-container-heading h2 > img{
		height:24px;
	}

	.dashboard-container-heading.qandme h2 {
		padding: 1.25em 3% 0.5em 0;
		font-size: 1.5em;
	}

}

@media (max-width: 355px){
	
	.dashboard-container-heading h2 {
		padding:0.7em 8% .5em 0;
	}

	.dashboard-container-heading > img{
		left: 4px;
	}

	.dashboard-container-heading{
		padding-left:28%;
	}

}








/* Homepage */ 

.icon-content-3-col{
	margin-top:2.85em;
}

.icon-content-3-col > div .inner{
	padding:0 2.5em;
	text-align:center;
}

.icon-content-3-col > div .inner h2{
	margin:1.25em 0 0.75em 0;
	line-height:1.4em;
	color:#333333;
}

.icon-content-3-col > div .inner p{
	color:#424242;
}

@media (max-width: 1020px){
	
	.icon-content-3-col > div .inner{
		padding:0 0.5em;
		text-align:center;
	}
	
}

@media (max-width: 720px){

	.icon-content-3-col > div .inner img{
		height:100px;
	}

}

p.plockicon{
	min-height: 40px;
	padding-left:50px;
	background:url(/include/image/content-icons/icon_overlay_lock.svg) top left no-repeat;
	background-size:29px auto;
}
p.prxicon{
	min-height: 40px;
	padding-left:50px;
	background:url(/include/image/content-icons/icon_overlay_rx.svg) top left no-repeat;
	background-size:34px auto;
}

/* Component Circles 3col */

.circles-3col{
	margin-bottom:1.25em;
}
.circles-3col .col{
	float:left;
	width:28%;
}
.circles-3col .col > img{
	display:block;
	width:94%;
	max-width:130px;
	height:auto;
	margin:0 auto;
}
.circles-3col .col span{
	display:block;
	text-align:center;
	padding:1.5em 8px;
	font-weight:500;
}
.circles-3col .col-operator{
	float:left;
	width:8%;
}
.circles-3col .col-operator img{
	display:block;
	width:94%;
	max-width:22px;
	height:auto;
	margin-left:auto;
	margin-right:auto;
	margin-top:86%;
}
.circles-3col .col-operator img.equals{
	max-width:21px;
	padding-top:3px;
}
.circles-3col .col-operator img.amp{
	width:17px;
}

.circles-3col.style2{
	margin-top: 2.5em;
    margin-bottom: 0.5em;
}
.circles-3col.style2 .col{
	width:22%;
}
.circles-3col.style2 .col > img{
	max-width:110px;
}
.circles-3col.style2 .col span{
	padding:1.5em 8px;
}
.circles-3col.style2 .col-operator{
	width:17%;
}
.circles-3col.style2 .col-operator img{
	max-width:22px;
	margin-top:38%;
}

@media only screen and (max-width:640px){

	.circles-3col .col{
		width:24%;
	}
	.circles-3col .col span{
		font-size:0.8em;
		line-height:1.4em;
	}
	.circles-3col .col-operator{
		width:14%;
	}
	.circles-3col .col-operator img{
		margin-top:40px;
	}

}

@media only screen and (max-width:420px){

	.circles-3col .col{
		float:none;
		width:80%;
		display:block;
		margin:0.5em auto;
	}
	.circles-3col .col > img{
		max-width:80px;
	}
	.circles-3col .col span{
		padding: 0.75em 8px 0 8px;
		font-size:1.1em;
		line-height:1.3em;
	}
	.circles-3col .col-operator{
		float:none;
		width:80%;
		display:block;
		margin:1.5em auto;
	}
	.circles-3col .col-operator img{
		margin-top:0px;
	}

	.circles-3col.style2 .col{
		width:80%;
		margin:0.5em auto;
	}
	.circles-3col.style2 .col > img{
		max-width:80px;
	}
	.circles-3col.style2 .col span{
		padding: 0.75em 8px 0 8px;
		font-size:1.1em;
		line-height:1.3em;
	}
	.circles-3col.style2 .col-operator{
		float:none;
		width:80%;
		display:block;
		margin:1.5em auto;
	}
	.circles-3col.style2 .col-operator img{
		margin-top:0px;
	}

}



/* Homepage CTAs  */

.home-ctas .home-cta-card{
	border-radius: 5px;
	border: 1px solid #0033A0;
	margin-bottom:2em;
    padding: 34px 1.25em;
}

.home-ctas .home-cta-card p{
	margin: 0 auto 1.25em auto;
	font-size: 1.5em;
	font-weight: 700;
	line-height: 1.142em;
	text-align: center;
	color: #8031A7;
}

/*console form(s)*/
.text-input .mdl-select label
{
	margin: -0.75em 0 0 4px;
	border: 0 !important;
	font-style: italic;
	font-size: 14px;
	font-weight: 400;
	color: #bbbbbb;
}
.text-input .mdl-select.is-dirty label
,.text-input .mdl-select.is-focused label
{
	margin: -1.5em 0 0 4px;
	font-style: normal;
}
.text-input .mdl-select label::after
{
	display: none;
}

.mdl-select
{
	width: 100%;
	border: 1px solid #c7c7c7;
	border-radius: 5px;
	padding: 11px 0;
}

.mdl-textfield select
{
	border: none !important;
}

.mdl-textfield select:focus
{
	-webkit-box-shadow: none;
	box-shadow: none;
}

.collapsible-form .collapse-button button
{
	background-color: rgba(0, 51, 160, 0.1);
}

.collapsible-form .collapse-button button:hover
{
	background-color: #0033a0;
	color: #ffffff;
}

.collapsible-form .collapse-button .open-text
,.collapsible-form.collapsed .collapse-button .close-text
{
	opacity: 0;
}

.collapsible-form.collapsed .collapse-button .open-text
,.collapsible-form .collapse-button .close-text
{
	opacity: 1;
}

.collapsible-form .collapse-button .close-text
,.collapsible-form .collapse-button .open-text
,.collapsible-form .form-content
{
	transition: max-height 0.5s;
	transition-duration: 0.5s; 
}

.collapsible-form .form-content
{
	max-height: 500px;
	overflow: hidden;
}
.collapsible-form.collapsed .form-content
{
	max-height: 0 !important;
	margin: 0;
	padding: 0;
}

.console-grid .grid-button
{
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	border: 1px solid #ccc;
	border-radius: 5px;
	line-height: 1.5em;
	text-align: center;
	background-color: #eee;
	text-decoration: none;
}

.console-grid .grid-button i
{
	font-size: 1.2em;
	line-height: 1.25em;
}

@media only screen and (max-width:420px){

	.home-ctas{
		
	}

}

/* Elements */

.box-parent{
	margin-top:3em;
}

.alert-corner{
	background-image:url(../image/global/alert-corner.svg);
	background-position:top left;
	background-repeat:no-repeat;
	background-size:98px auto;
}

@media only screen and (max-width:640px){
	.alert-corner{
		background-size:64px auto;
	}
}

.grey-close-btn{
	display:block;
	position: absolute;
	top:20px;
	right:20px;
	width:25px;
	height:25px;
	background:url(../image/global/alert-close-btn.svg) center center no-repeat;
	background-size:25px auto;
	text-decoration:none;
}

@media only screen and (max-width:640px){
	.grey-close-btn{
		top:10px;
		right:10px;
	}
}

.box-alert-left-image{
	position: relative;
	padding:1px 0 1px 20%;
}

.box-alert-left-image > img{
	position: absolute;
	top:0;
	left:0;
	width:16.97%;
	height:auto;
}

.left-image-delivery{
	background:url(../image/content-icons/icon_delivery.svg) center left no-repeat;
	background-size:16.97% auto;
}

@media only screen and (max-width:640px){

	.box-alert-left-image{
		padding:80px 0 1px 0;
	}
	
	.left-image-delivery{
		background:url(../image/content-icons/icon_delivery.svg) top center no-repeat;
		background-size:auto 80px;
	}

}

.red-alert-icon{
	min-height:30px;
	background:url(../image/global/icon-exclamation-mark.svg) center left no-repeat;
	background-size:30px;
	padding-left:50px;
	padding-top:4px;
}



















/* Fixes iOS form input zoom */
@supports (-webkit-overflow-scrolling: touch){
	select:focus, textarea:focus, input:focus {	font-size: 16px !important; }
	select, textarea, input {font-size: 16px !important;}
}