@import url('https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600');


/* Animations
–––––––––––––––––––––––––––––––––––––––––––––––––– */
@keyframes drop-nav {
  0% {
    top: -50%;
  }
  50% {
    top: -25%;
  }
  100% {
    top: 0;
  }
}
@keyframes lift-nav {
  0% {
    top: 0;
  }
  50% {
    top: -25%;
  }
  100% {
    top: -50%;
  }
}

@keyframes showtopbutton {
  0% {
    bottom: -50%;
    opacity: 0;
  }
  50% {
    bottom: -25%;
    opacity: 1;
  }
  100% {
    bottom: 10%;
    opacity: 1;
  }
}
@keyframes hidetopbutton {
  0% {
    bottom: 10%;
    opacity: 1;
  }
  50% {
    bottom: -25%;
    opacity: 0;
  }
  100% {
    bottom: -50%;
    opacity: 0;
  }
}

/* Custom Grid
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* Number represents amount of items in row - eg; grid-lg-8 = 8 items per row at 1200px and above */
.grid { width: 100%; }
.grid .item { display: inline-block; float: left; margin: 0% 0.455555%; }

@media all and (max-width: 550px) {
  .grid-xs-8 .item { width: 11.588888%; }
  .grid-xs-4 .item { width: 23.00000%; }
  .grid-xs-3 .item { width: 32.422222%; }
  .grid-xs-2 .item { width: 48%; }
  .grid-xs-1 .item { width: 100%; }
}

@media all and (min-width: 550px) {
  .grid-sm-8 .item { width: 11.588888%; }
  .grid-sm-4 .item { width: 23.00000%; }
  .grid-sm-3 .item { width: 32.422222%; }
  .grid-sm-2 .item { width: 48%; }
  .grid-sm-1 .item { width: 100%; }
}

@media all and (min-width: 768px) {
  .grid-md-8 .item { width: 11.588888%; }
  .grid-md-4 .item { width: 23.00000%; }
  .grid-md-3 .item { width: 32.422222%; }
  .grid-md-2 .item { width: 48%; }
  .grid-md-1 .item { width: 100%; }
}

@media all and (min-width: 992px) {
  .grid-lg-8 .item { width: 11.588888%; }
  .grid-lg-4 .item { width: 23.00000%; }
  .grid-lg-3 .item { width: 32.422222%; }
  .grid-lg-2 .item { width: 48%; }
  .grid-lg-1 .item { width: 100%; }
}

@media all and (min-width: 1200px) {
  .grid-xl-8 .item { width: 11.588888%; }
  .grid-xl-4 .item { width: 23.00000%; }
  .grid-xl-3 .item { width: 32.422222%; }
  .grid-xl-2 .item { width: 48%; }
  .grid-xl-1 .item { width: 100%; }
}

.grid-xl-2 .item:nth-child(2n+1),
.grid-lg-2 .item:nth-child(2n+1),
.grid-md-2 .item:nth-child(2n+1),
.grid-sm-2 .item:nth-child(2n+1),
.grid-xs-2 .item:nth-child(2n+1) { clear: both; }

/* Base Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* NOTE
html is set to 62.5% so that all the REM measurements throughout Skeleton
are based on 10px sizing. So basically 1.5rem = 15px :) */
html {
  font-size: 62.5%; font-smoothing: antialiased; -webkit-font-smoothing: antialiased; }
body {
  font-size: 1.8em; /* currently ems cause chrome bug misinterpreting rems on body element */
  line-height: 1.6;
  font-weight: 400;
  font-family: "Source Sans Pro", "Raleway", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #222;
  letter-spacing: 0.02rem; }
.container {
  position: relative;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box; }

/* For devices larger than 400px */
@media (min-width: 400px) {
  .container {
    width: 85%;
    padding: 0; }
}

/* For devices larger than 550px */
@media (min-width: 550px) {
  .container {
    width: 80%; }
}

.backtotop { position: fixed; bottom: -50%; right: 10%; opacity: 0; z-index: 9999; }
.backtotop i { font-size: 65px; color: #b7b7b7; }
.showtopbutton { animation: showtopbutton 1000ms forwards; }
.hidetopbutton { animation: hidetopbutton 1000ms forwards; }

header { position: relative; }
header .logo-container { padding: 80px; padding-bottom: 5%; text-align: center; }
header .logo-container img { display: inline-block; width: 100%; max-width: 450px; }

nav { position: relative; padding-bottom: 8%; }
nav ul { display: inline-block; width: 100%; list-style: none; margin: 0; background: rgba(0,0,0,0.03); }
nav ul li { margin: 0; display: inline-block; width: 25%; padding: 0 3px; float: left; text-align: center; cursor: pointer; }
nav ul li a { display: inline-block; width: 100%; padding: 10px 30px; font-size: 16px; color: #303030; background: transparent; text-transform: uppercase; transition: all 200ms cubic-bezier(0.4, 0.0, 0.2, 1); z-index: 1; font-weight: bold; }
nav ul li a:hover { text-decoration: none !important; transform: scale(1.12); color: #f9f9f9; background: #22b24c; box-shadow: 0px 6px 20px 1px #eaeaea; z-index: 10; }

.fixed-nav { display: none; opacity: 0; position: fixed; width: 100%; top: -50%; left: 0; transition: all 200ms cubic-bezier(0.4,0.0,0.2,1); background: #f8f8f8; z-index: 9999; padding: 17px 0; padding-bottom: 10px; box-shadow: 0px 0px 10px 0px #e6e6e6; }
.fixed-nav-show { display: inline-block; opacity: 1; animation: drop-nav 500ms forwards; }
.fixed-nav-hide { display: inline-block; animation: lift-nav 2000ms forwards; }
.fixed-nav nav { position: relative; padding-bottom: 0; }
.fixed-nav nav .container div { display: inline-block; vertical-align: middle; }
.fixed-nav nav .container div img { display: inline-block; width: 100%; max-width: 40px; margin-top: -5px; }
.fixed-nav nav ul { display: inline-block; vertical-align: middle; background: none; margin-top: -5px;  }
.fixed-nav nav ul li { }
.fixed-nav nav ul li a { font-size: 14px; padding: 10px 10px;  }

section.main-content { position: relative; }
section.main-content .section { margin-bottom: 12%; display: inline-block; }

section.main-content .section h1 { font-size: 5rem; margin-bottom: 2rem; font-weight: bold; }
section.main-content .section.about-us ul { display: inline-block; margin-left: 7%; list-style: none; list-style-position: outside; margin-bottom: 0; }
section.main-content .section.about-us ul li { position: relative; margin-bottom: 3%; }
section.main-content .section.about-us ul li:before { position: absolute; top: 10px; left: -28px; content: ""; width: 8px; height: 8px; border-radius: 100%; background: #22b24c; background-repeat: no-repeat; background-size: contain; background-position: center center; display: block; float: left; margin-right: 5px; }

section.main-content .section.the-media .media-list { position: relative; }
section.main-content .section.the-media .media-list ul { margin: 0 auto; }
@media all and (max-width: 768px) {
  section.main-content .section.the-media .media-list ul { display: inline-block; width: 100% !important; }
}
section.main-content .section.the-media .media-list ul li { display: inline-block; width: 100%; max-width: 455px; margin: 0 auto; transition: all 200ms cubic-bezier(0.4, 0.0, 0.2, 1); padding: 0 15px; cursor: pointer; }
section.main-content .section.the-media .media-list ul li:hover { transform: scale(1.12); }
section.main-content .section.the-media .media-list ul li:hover > a { background: rgba(34, 178, 76, 0.7);  color: white; }
section.main-content .section.the-media .media-list ul li:hover > a > span { color: white; }
section.main-content .section.the-media .media-list ul li a { display: inline-block; width: 100%; text-decoration: none !important; color: #303030 !important; padding: 20px; padding-bottom: 10px; border: 1px solid #eaeaea; box-shadow: 0px 4px 20px 0px #eaeaea; text-align: left; transition: all 200ms cubic-bezier(0.4, 0.0, 0.2, 1); margin-bottom: 2%; cursor: pointer; background: white; transition: all 200ms cubic-bezier(0.4, 0.0, 0.2, 1); }
section.main-content .section.the-media .media-list ul li .name { float: left; font-weight: bold; font-size: 21px; line-height: 27px; margin-right: 2%; clear: both; }
section.main-content .section.the-media .media-list ul li .date { float: left; color: #9a9a9a; width: 27.333333%; }
section.main-content .section.the-media .media-list ul li .source { float: left;  font-size: 13px; line-height: 31px; clear: both; }

section.main-content .section.registrations { position: relative; }
section.main-content .section.registrations form { position: relative; display: inline-block; width: 100%; background: rgba(230,230,230,0.12); padding: 6%; color: #616161; }
section.main-content .section.registrations form h1 { font-size: 4rem; font-size: 40px; color: #616161; border-bottom: 1px solid #e6e6e6; font-weight: bold; }
section.main-content .section.registrations form ul { list-style: none; }
section.main-content .section.registrations form ul li { display: inline-block; width: 100%; }
section.main-content .section.registrations form ul li span { display: inline-block; }
section.main-content .section.registrations form fieldset { display: inline-block; width: 100%; margin-bottom: 5%; }
section.main-content .section.registrations form fieldset:last-child { border-bottom: none; margin-bottom: 0; }
section.main-content .section.registrations form fieldset label { display: inline-block; width: 100%; }
section.main-content .section.registrations form fieldset label span { display: inline-block; color: #616161; }
section.main-content .section.registrations form fieldset label input { width: 100%; font-weight: normal; font-size: 15px; }
section.main-content .section.registrations form fieldset label textarea { width: 100%; font-weight: normal; font-size: 15px; }
section.main-content .section.registrations form fieldset label select { width: 100%; font-weight: normal; font-size: 15px; }

section.main-content .section.contact-us .details { }
section.main-content .section.contact-us .details ul { list-style: none; }
section.main-content .section.contact-us .details ul li { display: inline-block; border: 1px solid #e0e0e0; margin-right: 2%; padding: 20px; box-shadow: 0px 6px 20px 1px #eaeaea; transition: all 200ms cubic-bezier(0.4, 0.0, 0.2, 1); cursor: pointer; }
section.main-content .section.contact-us .details ul li:hover { transform: scale(1.12); }
section.main-content .section.contact-us .details ul li a { color: #303030 !important; text-decoration: none !important; margin-left: 10px; }
section.main-content .section.contact-us .details ul li i { color: #9a9a9a; }



footer { }
footer ul { display: inline-block; width: 100%; list-style: none; }
footer ul li { display: inline-block; font-size: 11px; }
footer ul li a { color: #303030; text-decoration: underline; }

/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 2rem;
  font-weight: 300; }
h1 { font-size: 4.0rem; line-height: 1.2;  letter-spacing: -.1rem;}
h2 { font-size: 3.6rem; line-height: 1.25; letter-spacing: -.1rem; }
h3 { font-size: 3.0rem; line-height: 1.3;  letter-spacing: -.1rem; }
h4 { font-size: 2.4rem; line-height: 1.35; letter-spacing: -.08rem; }
h5 { font-size: 1.8rem; line-height: 1.5;  letter-spacing: -.05rem; }
h6 { font-size: 1.5rem; line-height: 1.6;  letter-spacing: 0; }

/* Larger than phablet */
@media (min-width: 550px) {
  h1 { font-size: 5.0rem; }
  h2 { font-size: 4.2rem; }
  h3 { font-size: 3.6rem; }
  h4 { font-size: 3.0rem; }
  h5 { font-size: 2.4rem; }
  h6 { font-size: 1.5rem; }
}

p {
  margin-top: 0; }


/* Links
–––––––––––––––––––––––––––––––––––––––––––––––––– */
a {
  color: #1EAEDB; }
a:hover {
  color: #0FA0CE; }


/* Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  display: inline-block;
  height: 38px;
  padding: 0 30px;
  color: #555;
  text-align: center;
  font-size: 11px;
  font-weight: 600;
  line-height: 38px;
  letter-spacing: .1rem;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border-radius: 4px;
  border: 1px solid #bbb;
  cursor: pointer;
  box-sizing: border-box; }
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:focus,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
  color: #333;
  border-color: #888;
  outline: 0; }
.button.button-primary,
button.button-primary,
input[type="submit"].button-primary,
input[type="reset"].button-primary,
input[type="button"].button-primary {
  color: #FFF;
  background-color: #33C3F0;
  border-color: #33C3F0; }
.button.button-primary:hover,
button.button-primary:hover,
input[type="submit"].button-primary:hover,
input[type="reset"].button-primary:hover,
input[type="button"].button-primary:hover,
.button.button-primary:focus,
button.button-primary:focus,
input[type="submit"].button-primary:focus,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary:focus {
  color: #FFF;
  background-color: #1EAEDB;
  border-color: #1EAEDB; }


/* Forms
–––––––––––––––––––––––––––––––––––––––––––––––––– */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {
  height: 38px;
  padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
  background-color: #fff;
  border: 1px solid #D1D1D1;
  border-radius: 4px;
  box-shadow: none;
  box-sizing: border-box; }
/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
textarea {
  min-height: 65px;
  padding-top: 6px;
  padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: 1px solid #33C3F0;
  outline: 0; }
label,
legend {
  display: block;
  margin-bottom: .5rem;
  font-weight: 600; }
fieldset {
  padding: 0;
  border-width: 0; }
input[type="checkbox"],
input[type="radio"] {
  display: inline; }
label > .label-body {
  display: inline-block;
  margin-left: .5rem;
  font-weight: normal; }


/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {
  list-style: circle inside; }
ol {
  list-style: decimal inside; }
ol, ul {
  padding-left: 0;
  margin-top: 0; }
ul ul,
ul ol,
ol ol,
ol ul {
  margin: 1.5rem 0 1.5rem 3rem;
  font-size: 90%; }
li {
  margin-bottom: 1rem; }


/* Code
–––––––––––––––––––––––––––––––––––––––––––––––––– */
code {
  padding: .2rem .5rem;
  margin: 0 .2rem;
  font-size: 90%;
  white-space: nowrap;
  background: #F1F1F1;
  border: 1px solid #E1E1E1;
  border-radius: 4px; }
pre > code {
  display: block;
  padding: 1rem 1.5rem;
  white-space: pre; }


/* Tables
–––––––––––––––––––––––––––––––––––––––––––––––––– */
th,
td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #E1E1E1; }
th:first-child,
td:first-child {
  padding-left: 0; }
th:last-child,
td:last-child {
  padding-right: 0; }


/* Spacing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
button,
.button {
  margin-bottom: 1rem; }
input,
textarea,
select,
fieldset {
  margin-bottom: 1.5rem; }
pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
  margin-bottom: 2.5rem; }


/* Utilities
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.u-full-width {
  width: 100%;
  box-sizing: border-box; }
.u-max-full-width {
  max-width: 100%;
  box-sizing: border-box; }
.u-pull-right {
  float: right; }
.u-pull-left {
  float: left; }


/* Misc
–––––––––––––––––––––––––––––––––––––––––––––––––– */
hr {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
  border-width: 0;
  border-top: 1px solid #E1E1E1; }


/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Self Clearing Goodness */
.container:after,
.row:after,
.u-cf {
  content: "";
  display: table;
  clear: both; }


/* Media Queries
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/*
Note: The best way to structure the use of media queries is to create the queries
near the relevant code. For example, if you wanted to change the styles for buttons
on small devices, paste the mobile query code up in the buttons section and style it
there.
*/

/* Larger than tablet */
@media (max-width: 768px) {
  header .logo-container { padding: 60px 10px; padding-bottom: 5%; }


  nav ul li { width: 50%;}
  nav ul li a { padding: 10px 10px; font-size: 14px; }

  .fixed-nav nav ul li { width: 25%; }
  .fixed-nav nav ul li a { padding: 10px 0px; }
  .fixed-nav nav .container div:first-child { display: none; }
}

/* Larger than phablet (also point when grid becomes active) */
@media (max-width: 550px) {

}

/* Larger than mobile */
@media (min-width: 400px) {}





/* Larger than desktop */
@media (min-width: 1000px) {}

/* Larger than Desktop HD */
@media (min-width: 1200px) {}
