/* COLORS  */
/* http://meyerweb.com/eric/tools/css/reset/  v2.0 | 20110126 License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; box-sizing: border-box; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

body { line-height: 1; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

table { border-collapse: collapse; border-spacing: 0; }

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

img { max-width: 100%; height: auto; }

.content-wrap ol, .content-wrap ul { list-style: disc outside none; }
.content-wrap a { color: #26a9e0; text-decoration: underline; }

/* WP Styles  */
@media screen and (min-width: 768px) { img.alignright { float: right; margin: 0 0 1em 1em; max-width: 50%; }
  img.alignleft { float: left; margin: 0 1em 1em 0; max-width: 50%; }
  .alignright { float: right; }
  .alignleft { float: left; }
  .aligncenter { display: block; margin-left: auto; margin-right: auto; } }
/* FONTS  */
@font-face { font-family: 'Rising Sun'; src: url("../../fonts/risingsun-demibold-webfont.woff2") format("woff2"), url("../../fonts/risingsun-demibold-webfont.woff") format("woff"); font-weight: 500; font-style: normal; }
@font-face { font-family: 'Rising Sun'; src: url("../../fonts/risingsun-heavy-webfont.woff2") format("woff2"), url("../../fonts/risingsun-heavy-webfont.woff") format("woff"); font-weight: 700; font-style: normal; }
@font-face { font-family: 'Rising Sun'; src: url("../../fonts/risingsun-heavyitalic-webfont.woff2") format("woff2"), url("../../fonts/risingsun-heavyitalic-webfont.woff") format("woff"); font-weight: 700; font-style: italic; }
@font-face { font-family: 'Rising Sun'; src: url("../../fonts/risingsun-italic-webfont.woff2") format("woff2"), url("../../fonts/risingsun-italic-webfont.woff") format("woff"); font-weight: normal; font-style: italic; }
@font-face { font-family: 'Rising Sun'; src: url("../../fonts/risingsun-regular-webfont.woff2") format("woff2"), url("../../fonts/risingsun-regular-webfont.woff") format("woff"); font-weight: normal; font-style: normal; }
/* TRANSITIONS  */
.menu-icon span, #project-nav a, .number, .row, .project { transition: all 0.1s ease; }

/* TEXT STYLES  */
h1, h2, h3, h4 { font-weight: 700; text-transform: uppercase; margin-bottom: 1rem; }

h1 { line-height: 1; }

h2 { font-size: 2em; line-height: 1.1; }
@media screen and (min-width: 768px) { h2 { font-size: 2.5em; } }

h3 { font-size: 1.5em; line-height: 1.2; }
@media screen and (min-width: 768px) { h3 { font-size: 1.75em; } }

p { margin-bottom: 1em; }

.button { background-color: #26a9e0; color: white; text-transform: uppercase; font-size: 0.75em; font-weight: 700; padding: 0.375em 0.75em; border-radius: 2px; letter-spacing: 0.01em; }

/* GLOBAL STYLES  */
html, body { background-color: #f5f5f5; }

body { -webkit-font-smoothing: antialiased; font-family: 'Rising Sun', sans-serif; line-height: 1.3; }

#alert-bar { display: block; background-color: #26a9e0; color: white; font-size: 0.875em; padding: 0.5em 1em; font-weight: 500; }
#alert-bar *:last-child { margin-bottom: 0; }

#top { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-items: center; -ms-flex-align: center; align-items: center; background-color: #252525; border-top: 2px solid black; color: white; padding: 0.75em; }
@media screen and (min-width: 768px) { #top { padding: 1em 2em; } }
#top .logo { width: 100px; margin-right: 2em; }
@media screen and (min-width: 768px) { #top .logo { width: 140px; } }
#top .logo img { display: block; width: 100%; }
#top h1 { margin: 0; font-size: 1em; }
@media screen and (min-width: 768px) { #top h1 { font-size: 1.5em; } }

section { position: relative; padding: 8% 0; }
@media screen and (min-width: 768px) { section { padding: 4em 0; } }

.section-header { margin-bottom: 3em; }
.section-header h1, .section-header h2 { color: #26a9e0; }

.contain { width: 90%; max-width: 1280px; margin: 0 auto; position: relative; }
.contain:after { content: ""; display: table; clear: both; }

.clear:after { content: ""; display: table; clear: both; }

[class*='col-'] { position: relative; height: 100%; }
@media screen and (max-width: 767px) { [class*='col-'] { margin-bottom: 8%; } }
@media screen and (min-width: 768px) { [class*='col-'] { float: left; margin-right: 8%; }
  [class*='col-'].right { float: right; margin-right: 0; } }

@media screen and (min-width: 768px) { .col-1-2 { width: 46%; }
  .col-1-3 { width: 28%; }
  .col-2-3 { width: 64%; }
  .col-1-4 { width: 19%; }
  .col-3-4 { width: 73%; }
  .col-1-5 { width: 13.6%; }
  .col-2-5 { width: 35.2%; }
  .col-3-5 { width: 56.8%; } }
@media screen and (min-width: 960px) { .columns { -webkit-column-count: 2; -moz-column-count: 2; column-count: 2; -webkit-column-gap: 2em; -moz-column-gap: 2em; column-gap: 2em; } }

.menu-icon { width: 16px; height: 13px; cursor: pointer; }
.menu-icon span { display: block; position: absolute; left: 0; width: 100%; height: 3px; background-color: #aaa; opacity: 1; }
.open .menu-icon span { background-color: #26a9e0; }
.menu-icon span:nth-child(1) { top: 0; }
.open .menu-icon span:nth-child(1) { top: -2px; }
.menu-icon span:nth-child(2) { top: 5px; }
.open .menu-icon span:nth-child(2) { width: 75%; left: 12.5%; }
.menu-icon span:nth-child(3) { top: 10px; }
.open .menu-icon span:nth-child(3) { top: 12px; }

/* PROJECTS  */
#projects-wrapper { display: table; width: 100%; border-collapse: collapse; }
#projects-wrapper thead { text-align: right; }
#projects-wrapper .project { display: table-row; border-top: 1px solid #ccc; }
@media screen and (min-width: 768px) { #projects-wrapper .project:hover { background-color: rgba(255, 255, 255, 0.4); } }
#projects-wrapper .project:last-of-type { border-bottom: 1px solid #ccc; }
#projects-wrapper .project > div { display: table-cell; padding: 1em 0; }
@media screen and (min-width: 768px) { #projects-wrapper .project > div { padding: 1em 0.5em; } }
#projects-wrapper .project > div:last-of-type { width: 1px; white-space: nowrap; padding-left: 1em; color: #26a9e0; }
#projects-wrapper .project > div:last-of-type * { margin: 0; }
#projects-wrapper .project > div > h3 { margin-bottom: 0; }
#projects-wrapper .project > div .content-wrap { margin-top: 1rem; }
#projects-wrapper .project.archive .title { color: #ccc; }

@media screen and (min-width: 768px) { .project-header { padding-right: calc(280px + 2em); } }
.project-header .content-wrap { margin-top: 2em; }

#project-nav { display: none; }
@media screen and (min-width: 768px) { #project-nav { display: block; position: absolute; width: 280px; top: 0; right: 0; z-index: 1; } }
#project-nav header { position: relative; padding: 0.5em 3em 0.5em 0.875em; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; border: 1px solid #eee; border-radius: 8px; box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.2); background-color: white; }
#project-nav header .menu-icon { position: absolute; top: 50%; right: 1em; margin-top: -6.5px; z-index: 2; }
#project-nav header * { margin: 0; white-space: nowrap; }
#project-nav ul { display: none; position: relative; border: 1px solid #eee; border-radius: 8px; box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.2); margin-top: 1em; background-color: white; }
#project-nav ul:before { content: ""; position: absolute; top: -0.5em; right: 1em; width: 0; height: 0; border-left: 0.5em solid transparent; border-right: 0.5em solid transparent; border-bottom: 0.5em solid white; }
#project-nav ul li a { display: block; font-size: 0.8em; font-weight: 700; text-transform: uppercase; padding: 0.75em 1em; color: #606060; letter-spacing: 0.05em; }
#project-nav ul li a:hover { background-color: #26a9e0; color: white; }
#project-nav ul li:first-child a { padding-top: 1em; border-radius: 8px 8px 0 0; }
#project-nav ul li:last-child a { padding-bottom: 1em; border-radius: 0 0 8px 8px; }

#comps-wrapper { display: table; border-collapse: collapse; width: 100%; }
#comps-wrapper .row { display: table-row; }
#comps-wrapper .row:last-child { border-bottom: 1px solid #ccc; }
#comps-wrapper .row.new-date { border-top: 1px solid #ccc; }
#comps-wrapper .row.new-date > div { padding-top: 1.25em; }
#comps-wrapper .row > div { display: table-cell; padding: 1em; }
#comps-wrapper .row > div * { margin: 0; }
#comps-wrapper .row > div:last-child { padding-right: 0; }
@media screen and (min-width: 768px) { #comps-wrapper .row > div:last-child { padding-right: 0.5em; } }
#comps-wrapper .row > div:first-child { width: 1px; padding-left: 0; }
@media screen and (min-width: 768px) { #comps-wrapper .row > div:first-child { padding-left: 0.5em; } }
#comps-wrapper .row > div:first-child h4 { color: #26a9e0; }
#comps-wrapper .row > div.round { width: 1px; text-align: right; white-space: nowrap; }
#comps-wrapper .row > div.round .number { vertical-align: middle; font-weight: 700; color: #ccc; }
@media screen and (min-width: 768px) { #comps-wrapper .row > div.round .number { position: relative; left: 1em; opacity: 0; } }
#comps-wrapper .row > div.round .dots { display: none; }
@media screen and (min-width: 768px) { #comps-wrapper .row > div.round .dots { display: inline-block; } }
#comps-wrapper .row > div.round .dots span { display: inline-block; vertical-align: middle; width: 0.375em; height: 0.375em; border-radius: 999px; background-color: #26a9e0; margin-left: 0.2em; }
#comps-wrapper .row > div .title { display: inline-block; margin-right: 0.25em; margin-bottom: 0.25em; }
#comps-wrapper .row > div .button { display: inline-block; }
@media screen and (min-width: 768px) { #comps-wrapper .row:hover { background-color: rgba(255, 255, 255, 0.4); }
  #comps-wrapper .row:hover .round .number { left: 0; opacity: 1; } }

/* SITEMAPS  */
#sitemap-wrapper ul { padding-left: 50px; }
#sitemap-wrapper li > a { position: relative; display: block; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; background-color: #ddd; border: 1px solid #ccc; padding: 0.5em 0.75em 0.5em 1.75em; margin-bottom: 0.5em; max-width: 500px; }
#sitemap-wrapper li > a:before { content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 1em; opacity: 1; }
#sitemap-wrapper li > a h4 { display: inline-block; margin-bottom: 0; padding: 0.25em 0; }
#sitemap-wrapper li > a .number { display: inline-block; color: white; font-weight: 700; background-color: black; padding: 0 0.5em; margin-right: 0.25em; }
#sitemap-wrapper li > a .indicator { display: inline-block; -webkit-flex-shrink: 1; -ms-flex-negative: 1; flex-shrink: 1; margin-left: auto; width: 0.5rem; height: 0.5rem; border-radius: 999px; background-color: red; }
#sitemap-wrapper li > a .indicator.yellow { background-color: yellow; }
#sitemap-wrapper li > a .indicator.green { background-color: green; }
#sitemap-wrapper > li:nth-child(6n-5) a:before { background-color: red; }
#sitemap-wrapper > li:nth-child(6n-4) a:before { background-color: orange; }
#sitemap-wrapper > li:nth-child(6n-3) a:before { background-color: yellow; }
#sitemap-wrapper > li:nth-child(6n-2) a:before { background-color: green; }
#sitemap-wrapper > li:nth-child(6n-1) a:before { background-color: blue; }
#sitemap-wrapper > li:nth-child(6n) > a:before { background-color: purple; }
#sitemap-wrapper > li > ul > li a:before { opacity: 0.75; }
#sitemap-wrapper > li > ul > li > ul > li a:before { opacity: 0.5; }
#sitemap-wrapper > li > ul > li > ul > li > ul > li a:before { opacity: 0.25; }

.notes-wrapper { background-color: white; border: 1px solid #eee; border-radius: 1em; padding: 1.5em; margin-bottom: 2.5em; }
