@font-face {
    font-family: 'helvetica-neue-light';
    src: url('./font/HelveticaNeue-Light.eot');
    src: url('./font/HelveticaNeue-Light.eot?#iefix') format('embedded-opentype'),
         url('./font/HelveticaNeue-Light.woff') format('woff'),
         url('./font/HelveticaNeue-Light.ttf') format('truetype'),
         url('./font/HelveticaNeue-Light.svg#helvetica-neue-light') format('svg');
    font-weight: normal;
    font-style: normal;
}
body {
    margin: 0;
    padding: 0;
    font-family: helvetica-neue-light, Arial, Helvetica, sans-serif;
}
a         { color: #FFC591; text-decoration: none; }
a:HOVER   { color: #FFC591; }
a:VISITED { color: #FFC591; }
.s4l-logo {
    z-index: 100;
    position: fixed;
    top: 26px;
    right: 38px;
    cursor: pointer;
}
#enterprise-logo {
	display: none;
    z-index: 100;
    position: fixed;
    top: 26px;
    left: 30px;
}

img.bg {
  /* Set rules to fill background */
  min-height: 100%;
  min-width: 852px;
    
  /* Set up proportionate scaling */
  width: 100%;
  height: auto;
    
  /* Set up positioning */
  position: fixed;
  top: 0;
  left: 0;
  z-index: -100;
}
@media screen and (max-width: 852px) {
  img.bg {
    left: 50%;
    margin-left: -426px;   /* 50% */
  }
}

.fullscreen-bg {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    z-index: -100;
}

.bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
@media (min-aspect-ratio: 16/9) {
  .bg-video {
    height: 300%;
    top: -100%;
  }
}

@media (max-aspect-ratio: 16/9) {
  .bg-video {
    width: 300%;
    left: -100%;
  }
}
.reg-controls-table { 
	display: table; 
    width: 100%;
    height: 100%;
	z-index: 100; 
	position: absolute;
    left: 0;
    top: 0;
}
.reg-controls-row { 
	display: table-row; 
}
.reg-controls-cell { 
	display: table-cell;
	vertical-align: middle;
	text-align: center; 
}
#reg-container {
    position: relative;
    width: 620px;
    height: 450px;
    color: #fff;
    margin: 25px auto 50px auto;
}
.reg-container-bg {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 1px solid white;
    background: #1d78d3; 
    opacity: 0.75;
    z-index: -1;
    
    -webkit-box-shadow: 0px 7px 8px 2px rgba(0,0,0,0.3);
       -moz-box-shadow: 0px 7px 8px 2px rgba(0,0,0,0.3);
            box-shadow: 0px 7px 8px 2px rgba(0,0,0,0.3);
    
    -webkit-border-radius: 10px;
       -moz-border-radius: 10px;
            border-radius: 10px;
}
#spinner-underlay {
	z-index: 1000;
	display: none;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: white; 
    opacity: 0.65;
    border: 1px solid white;
    -webkit-border-radius: 10px;
       -moz-border-radius: 10px;
            border-radius: 10px;
}
#spinner {
    z-index: 1;
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -32px;
    margin-top: -32px;
}
.reg-controls {
    position: absolute;
    width: 262px;
    height: 238px;
    margin-top: 22px;
    margin-left: 51px;
}
.reg-header-container {
	position: absolute;
	width: 100%;
	margin-top: 20px;
	text-align: center;
}
.reg-header {
    display: inline-block;
    font-size: 32px;
    margin: 0 12px;
}
.reg-header-line {
	display: inline-block;
	width: 114px;
	height: 1px;
	border-top: 1px solid white;
    margin-bottom: 8px;
}
#reg-email-addr {
	font-size: 20px;
    font-weight: bold;
    display: inline-block;
    padding: 5px 9px;
    border: 1px solid white;
    border-radius: 3px;
    margin-top: 11px;
}
#reg-enterprise-wrap {
	display: none;
	position: absolute;
	top: 74px;
	left: 36px;
}
#reg-enterprise-user-input {
    width: 222px;
}
#reg-enterprise-domain {
    font-size: 20px;
    font-weight: bold;
    margin-left: 5px;
}
.reg-btn {
    background: none;
    border: 2px solid #fff;
    color: white;
    font-weight: bold;
    padding: 10px 16px;
    text-align: center;
    cursor: pointer;
    
    -webkit-border-radius: 5px;
       -moz-border-radius: 5px;
            border-radius: 5px;
            
    -webkit-transition: background-color 250ms linear;
       -moz-transition: background-color 250ms linear;
         -o-transition: background-color 250ms linear;
        -ms-transition: background-color 250ms linear;
            transition: background-color 250ms linear;
}
.reg-btn:HOVER {
    color: #1864A9;
    background-color: white;
}
input {
    outline: 0;
    font-size: 17px;
    padding-left: 10px;
    padding-right: 10px;
    border: 1px solid white;
    color: #1864A9;
    height: 40px;
    background: #F4FAFF;
    font-family: helvetica-neue-light, Arial, Helvetica, sans-serif;
    
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
            border-radius: 3px;
            
    -webkit-box-shadow: 2px 2px 4px #1864A9;
       -moz-box-shadow: 2px 2px 4px #1864A9;
            box-shadow: 2px 2px 4px #1864A9;
}
input:FOCUS {
	border: 1px solid #FF8100;
}
.reg-link {
    position: absolute;
    font-size: 14px;
    font-weight: bold;
    cursor: pointer;
}
.reg-link:HOVER {
    color: #FFC591;
}
.reg-bottom-ctrl {
	position: absolute;
	width: 100%;
	height: 61px;
	bottom: 0;
	left: 0;
}
#reg-btn {
    position: absolute;
	bottom: 22px;
	left: 36px;
}
#reg-feedback {
	display: none;
	color: #FFD6D6;
    font-size: 16px;
    font-weight: bold;
    text-align: right;
    width: 422px;
    margin-bottom: 23px;
    margin-right: 37px;
    position: absolute;
    top: 0;
    right: 0;
}
#reg-email-input {
    position: absolute;
    width: 525px;
    top: 0;
    left: 0;
}
.reg-name-container {
	position: relative;
	top: 61px;
}
#reg-title-input {
	font-size: 21px;
    height: 41px;
    width: 65px;
    background: white;
    color: #1864A9;
    border: none;
    
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
            border-radius: 3px;
            
    -webkit-box-shadow: 2px 2px 4px #1864A9;
       -moz-box-shadow: 2px 2px 4px #1864A9;
            box-shadow: 2px 2px 4px #1864A9;
}
.reg-ctrl-left {
	position: absolute;
	top: 182px;
	left: 0;
}
.reg-ctrl-right {
	position: absolute;
	top: 182px;
	right: 0;
}
.reg-ctrl-wrap {
    width: 244px;
}
.reg-ctrl-wrap input {
    width: 100%;
    margin-bottom: 19px;
}
.reg-ctrl-right input {
	float: right;
}
.reg-name-input {
    width: 207px;
    margin-left: 8px;
}
.reg-ctrl-input {
	margin-bottom: 16px;
	width: 100%;
}
#reg-company-input {
    position: absolute;
    width: 525px;
    top: 121px;
    left: 0;
}
.reg-fixed-ctrl-wrap {
	position: absolute;
    top: 80px;
    left: 36px;
}
#reg-login-link {
	position: absolute;
	bottom: -29px;
	right: 0;
}
#reg-login-link a {
	color: white;
	font-weight: bold;
    font-size: 16px;
}

#reg-complete-container {
    display: none;
	position: relative;
    width: 400px;
    color: #fff;
    margin: 25px auto 50px auto;
    min-height: 50px;
}
.reg-complete-table {
    display: table;
    width: 100%;
    height: 100%;
}
.reg-complete-row { 
    display: table-row; 
}
.reg-complete-cell { 
    display: table-cell;
    vertical-align: middle;
    text-align: center; 
}
.reg-complete-msg {
	display: none;
	padding: 50px 25px;
}











