.clear:before, .clear:after {
  content: ' ';
  display: table; }

.clear {
  *zoom: 1; }
  .clear:after {
    clear: both; }

* {
  box-sizing: border-box;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility; }

html {
  font-size: 72.5%; }
                                                                     
body {
  font: 300 12px/1.2 'Arial', Helvetica, Arial;
  color: #444;
  transition: all .4s .3s ease-in; }

body, html {
  width: 100%;
  min-height: 100vh; }

p {
  font-size: 1.525em; }



a {
  text-decoration: none;
  color: inherit; }

.main {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto;
  position: relative; }

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  /*font: inherit;*/    
  line-height: 1.9em;
  height:35px;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
/*input {
  line-height: normal; }*/

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

.header {
  width: 100%;
  background: #222222;
  position: relative;
  z-index: 5; }
  .header .title p {
    color: #9c9d9d;
    float: left;
    margin: 23px 0; }
    .header .title p:hover {
      color: white; }
  .header .button {
    float: right; }
    @media only screen and (max-width: 500px) {
      .header .button {
        float: left; } }
  .header .sign-out {
    float: right;
    margin: 23px 0; }
    @media only screen and (max-width: 380px) {
      .header .sign-out {
        float: left; } }
   .logo {
    position: absolute;
    left: 50%;
    top: 20px;
    margin-left: -70px;
    width: 60%;
    z-index:1050;
    max-width: 140px; }
    @media only screen and (max-width: 800px) {
     .logo {
        display: none; } }
    .logo img {
      width: 120%; }

.footer {
  width: 100%;
  background: #222222;
  position: relative; }
  .footer ul {
    width: 580px;
    list-style: none;
    margin: 15px auto;
    padding: 0; }
    @media only screen and (max-width: 600px) {
      .footer ul {
        width: 90%;
        margin: 20px 5%; } }
    .footer ul li {
      color: #9c9d9d;
      display: inline-block;
      margin: 5px 15px; }
      @media only screen and (max-width: 600px) {
        .footer ul li {
          display: block;
          margin: 10px 15px; } }
      .footer ul li a:hover {
        color: white; }
  .footer .inner-links {
    width: 145px;
    margin: 0 auto; }
    .footer .inner-links p {
      color: #9c9d9d;
      float: left;
      margin: 20px 0; }
    .footer .inner-links .button {
      float: left;
      margin: 15px 0 15px 20px; }
      .footer .inner-links .button p {
        color: #222222; }

.button {
  text-align: center;
  padding: 10px 15px;
  border-radius: 5px;
  margin: 15px 0; 
}
  .button p {
    font-size: 1.475em;
    margin: 0 !important;
    padding: 0; }

.yellow {
  background: #f6ec13;
  color: #222222; }

.dark {
  color: #f6ec13;
  background: #222222; }

@font-face {
  font-family: 'Font-Name';
  src: url("../fonts/font-name.eot");
  src: url("../fonts/font-name.eot?#iefix") format("embedded-opentype"), url("../fonts/font-name.woff") format("woff"), url("../fonts/font-name.ttf") format("truetype"), url("../fonts/font-name.svg#font-name") format("svg");
  font-weight: normal;
  font-style: normal; }

::-moz-selection {
  background: #333;
  color: #fff;
  text-shadow: none; }

::selection {
  background: #333;
  color: #fff;
  text-shadow: none; }

::-moz-selection {
  background: #333;
  color: #fff;
  text-shadow: none; }

::-webkit-selection {
  background: #333;
  color: #fff;
  text-shadow: none; }

.wrapper {
  width: 100%;
  background: none;  /*url(../img/121263-4.jpg) no-repeat;*/
  background-size: cover; }
  @media only screen and (max-width: 800px) {
    .wrapper {
      /*background: url(../img/1.jpg) no-repeat center center;*/
      background-size: cover; } }
  .wrapper .main {
    margin: 11em auto;
	/* margin-top: 4em; */
	}
    @media only screen and (max-width: 800px) {
      .wrapper .main {
        margin: 2em auto; 
		/* margin-top: 1em; */
		} }
  .wrapper h1 {
    color: #f6ec13;
    font-weight:bold;
    max-width: 500px;
    line-height: 35px; }

/* Sign up background image */
.sign-up {
  /*background: url(../img/2.jpg) no-repeat;*/
  background-size: cover; }
  @media only screen and (max-width: 800px) {
    .sign-up {
      /*background: url(../img/2.jpg) no-repeat center center;*/
      background-size: cover; } }

	  .col {
  width: 50%;
  float: left;
  padding: 1em 1em; }
  
.col-left {
  width: 60%;
  float: left;
  margin: 0 0 0 0; }
  .col-left .content {
    background: rgba(35, 31, 32, 0.85);
    padding: 2em 1% 2em 3%;
    border-radius: 20px; }
    .col-left .content p {
      color: white;
      padding: 10px 8% 10px 0; }
  @media only screen and (max-width: 600px) {
    .col-left {
      width: 100%;
      margin: 0 0 4em 0; } }

.col-right {
  width: 40%;
  float: left; }
  @media only screen and (max-width: 800px) {
    .col-right {
      width: 100%;
      margin: 0 0 0; } }
  .col-right .content {
    background: rgba(35, 31, 32, 0.85);
    padding: 2em 5%;
    border-radius: 10px; }
    .col-right .content h1 {
      margin: 0; }
    .col-right .content p {
      color: white;
      padding: 0; }
    .col-right .content .message {
      margin: 0; }

    	  .col1 {  
  float: left;
  padding: 1em 1em; }
  

    .col-mid {   
          
  margin: 150px 0 0 0; }
  .col-mid .content {
    background: rgba(35, 31, 32, 0.6);
    padding: 2em 1% 2em 3%;
    border-radius: 20px; }
    .col-mid .content p {
      color: white;
      padding: 10px 8% 10px 0; }
  @media only screen and (max-width: 600px) {
    .col-mid {
      width: 100%;
      margin: 0 0 4em 0; } }

.login-form {
  width: 100%; }
  .login-form #status {
    font-size: 1.2em;
    margin: 20px 0 5px 0; }
  .login-form .double input {
    width: 48%;
    float: left; }
    .login-form .double input:nth-child(2) {
      float: right; }
    @media only screen and (max-width: 600px) {
      .login-form .double input {
        width: 100%;
        float: none; } }
  .login-form input {
    font-size: 1.6em; 
    color: #222222;
    width: 100%;
    margin: 8px 0;
    padding: 2px 0 2px 10px;
    border: none;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.6); }

  #submit-button
  {
      padding: 0px;
  }

  .login-form select {
  
    width: 100%;
    margin: 10px 0;                                             
    font-size: 1.8em;
   
     height: 45px; 
    padding: 2px 0 2px 10px;
    border: none;
     border-radius: 5px;
    background: rgba(255, 255, 255, 0.6); }
  .login-form .form-buttons {
   
    /*width: 100%;*/
    clear: both; }
    .login-form .form-buttons #submit-button {
       /*width: 200px;*/ 
          height:40px;
          text-transform: uppercase;
      float: left;
      text-align: center;
      padding: 0px;
      border-radius: 5px;
      background: #f6ec13;
      margin: 15px 0;

    }
    .login-form .form-buttons .button {
      float: right; }
      @media only screen and (max-width: 380px) {
        .login-form .form-buttons .button {
          float: left;
          clear: both;
          margin: 0; } }
      .login-form .form-buttons .button p {
        color: #f6ec13; }
  .login-form .forgotten a {
      color:white;
    text-decoration: underline; }
  .login-form .text-danger   {
      color:red;font-size:1.2em;
     }  
  .login-form  .validation-failed  {
      color:red;font-size:1.2em;
     }  

::-webkit-input-placeholder {
    font-size: 1.0em;

  color: #888888; }

:-moz-placeholder {
  /* Firefox 18- */
    font-size: 1.0em;
  color: #333333; }

::-moz-placeholder {
  /* Firefox 19+ */
    font-size: 1.0em;
  color: #333333; }

:-ms-input-placeholder {
      font-size: 1.0em;
  color: #333333; }

/* other page styling */
.main-solid {
  width: 90%;
  max-width: 1400px;
  margin: 6em auto;
  background: white;
  border: 15px solid rgba(35, 31, 32, 0.2);
  position: relative; }
  .main-solid .logo {
    position: absolute;
    left: -55px;
    top: -55px;
    width: 110px; }
    @media only screen and (max-width: 800px) {
      .main-solid .logo {
        display: none; } }
    .main-solid .logo img {
      width: 100%; }

.top-bar {
  width: 100%;
  margin: 2em 0 0;
  border-bottom: 1px solid #9c9d9d; }
  .top-bar h2 {
    font-size: 1.875em;
    margin: 0 0 1em 5%;
    float: left; }
    @media only screen and (max-width: 1100px) {
      .top-bar h2 {
        max-width: 400px; } }
    @media only screen and (max-width: 700px) {
      .top-bar h2 {
        width: 100%;
        max-width: 100%; } }
  .top-bar .button {
    float: right;
    margin: 0 5% 0 0;
    position: relative;
    border-radius: 5px 0 0 5px; }
    @media only screen and (max-width: 700px) {
      .top-bar .button {
        float: left;
        margin: 0 0 2em 5%; } }
    .top-bar .button .arrow-right {
      position: absolute;
      right: -19px;
      top: 0;
      width: 0;
      height: 0;
      border-top: 19px solid transparent;
      border-bottom: 19px solid transparent;
      border-left: 19px solid #f6ec13; }


  @media only screen and (max-width: 900px) {
    .col {
      width: 100%;
      margin: 0 0 0; } }
  .col h3 {
    font-size: 1.5em;
    margin: 0; }

/* modules table */
.modules-table {
  width: 100%; }
  .modules-table .hidden {
    display: none !important; }
  .modules-table p {
    margin: 0; }
  .modules-table .top {
    background: #41ad49;
    color: white; }
  .modules-table .row {
    background: #e6e7e8; }
    .modules-table .row:nth-child(2n) {
      background: white; }
  .modules-table .tick {
    width: 90px;
    height: 43px;
    background: #41ad49;
    margin: 0 !important; }
    .modules-table .tick .icon {
      width: 10px;
      height: 10px;
      margin: 15px auto;
      background: url(../img/tick.png) no-repeat;
      background-size: 10px; }
  .modules-table .cross {
    width: 90px;
    min-height: 43px;
    background: #d2232a;
    margin: 0 !important; }
    .modules-table .cross .icon {
      width: 10px;
      height: 10px;
      margin: 15px auto;
      background: url(../img/cross.png) no-repeat;
      background-size: 10px; }
  .modules-table .number {
    width: 5px;
    float: left;
    margin: 10px 15px; }
    @media only screen and (max-width: 450px) {
      .modules-table .number {
        width: 100%;
        text-align: center;
        margin: 5px 0; } }
  .modules-table .module-name {
    width: 300px;
    float: left;
    margin: 10px 15px; }
    @media only screen and (max-width: 450px) {
      .modules-table .module-name {
        width: 100%;
        text-align: center;
        margin: 5px 0; } }
  .modules-table .complete {
    float: right;
    margin: 10px 15px; }

   div.selectable
  {
      cursor: pointer; cursor:hand;
      border: solid 1px grey;
  }
    @media only screen and (max-width: 450px) {
      .modules-table .complete {
        width: 100%;
        text-align: center;
        margin: 5px 0; } }



@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; } }




#login, #signup {

  text-align: center;
  padding: 0px 15px;
  border-radius: 5px;
  margin: 5px 3px; 
   font-size: 1.3em;
    /*margin: 0 !important;*/
    /*padding: 0;*/
    text-transform:uppercase;
    letter-spacing:normal;
    
}
  

#login, #signup {
  background: #f6ec13;
  color: #222222 !important; }

a.button.secondary
{
     color: #f6ec13;
  background: #222222;
  margin-top:0px;

}

.forgotten
{width:150px;
 color:white;
    text-decoration: underline;
    font-size:1.2em;
}

a.forgotten:visited { color:Highlight; }

/*#signup {
  color: #f6ec13;
  background: #222222; }*/

@media only screen and (max-height: 800px) {
    p {
        font-size: 1.125em;
    }



    .wrapper .main {
        margin: 3em auto;
        /* margin-top: 4em; */
    }

    .logo {
        margin-left: 0px;
    }

        .logo img {
            width: 80%;
        }

    button,
    input,
    optgroup,
    select,
    textarea {
        color: inherit;
        /* 1 */
        /*font: inherit;*/
        /*line-height: 1.3em;*/
        height: 33px;
        font-size: 1.3em;
        /* 2 */
        margin: 0;
        /* 3 */
    }

    .login-form select {
        font-size: 1.3em;
        height: 33px;
        padding: 2px 0 2px 10px;
    }


    .login-form input {
        font-size: 1.3em;
        margin: 4px 0;
        /*height: 35px;
        padding: 2px 0 2px 10px;*/
    }




    ::-webkit-input-placeholder {
        font-size: 1.0em;
        color: #888888;
    }

    :-moz-placeholder {
        /* Firefox 18- */
        font-size: 0.9em;
        color: #333333;
    }

    ::-moz-placeholder {
        /* Firefox 19+ */
        font-size: 0.9em;
        color: #333333;
    }

    :-ms-input-placeholder {
        font-size: 0.9em;
        color: #333333;
    }

    .button {
        text-align: center;
        padding: 10px 15px;
        border-radius: 5px;
        margin: 15px 0;
        margin-bottom: 0;
    }

    h1 {
        font-size: 1.75em;
        margin: 0.67em 0;
        margin-bottom: 0;
    }

    .col-right .content {
        padding: 1em 5%;
    }

    .login-form .form-buttons #submit-button {
        /*width: 200px;*/
        height: 35px;
        margin: 12px 0;
    }
}

@media only screen and (max-width: 850px) {
    body {
        overflow-y: auto;
    }
}

