

Creator:   Kevin L. Hsu
URL:      http://www.welcometobrew.com
@font-face { font-family: 'Reem Kufi', sans-serif; font-family: 'Open Sans', sans-serif;
}


/* Reset
-------------------------------------------------- */
*, *:before, *:after {
	margin: 0;
	padding: 0;
	border: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, main, nav, section, summary {
	display: block;
}


/* Media
-------------------------------------------------- */
img {
	display: block;
	max-width: 100%;
    margin: 0 auto;
	height: auto;
	border-width: 0;
	outline: 0;
}
img.client {
	display: block;
	max-width: 100%;
    margin: 0 auto;
	height: 200px;
}


/* Links
-------------------------------------------------- */
a {
	color: #3e484a;
	text-decoration: none;
}
a:hover {
	color: #f05155;
}


/* Clearfix
-------------------------------------------------- */
.cf:after {
	content: "";
	display: table;
	clear: both;
}

/* Site
-------------------------------------------------- */
html {
	height: auto;
    min-height: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
    /*border: 10px solid #3e484a;*/
}

body {
    font-family: 'Reem Kufi', sans-serif;
	margin: 0 auto;
    max-width: 31em;
	font-size: 1.25em;
	line-height: 1.5em;
	padding: 0 1.5em;
	background: #fff;
}

/* Header
-------------------------------------------------- */
.header {
	line-height: 1.5em;
	margin-top: 2.5em;
	text-align: center;
}
.logo {
	margin-bottom: .5em;
	display: block;
}
.logo img {
    width: 3em;
}
@media screen and (min-width: 30em) {
	.header {
		text-align: inherit;
	}
	.logo {
		float: left;
		margin-bottom: 0;
	}
}

/* Navigation
-------------------------------------------------- */
div.toggle {
	margin-top: 1em;
	display: inline-block;
}
.menu {
	display: none;
}
.menu li {
	list-style: none;
	position: relative;
}
.menu li.span, .menu li:last-child.span {
	display: none;
	font-weight: 500;
}
.menu li a {
	color: #3e484a;
	font-weight: 500;
	display: block;
    text-transform: lowercase;
}
.menu li a:hover {
	color: #f05155;
	text-decoration: none;
}
.menu li a.active,
.menu li a.active:hover {
	color: #f05155;
}
.menu.active {
	display: block;
	margin-top: 1em;
}
.menu.active li:first-child a {
	border-top: none;
}

@media screen and (min-width: 30em) {
  div.toggle {
  	display: none;
  }
	.menu {
		display: block;
		float: right;
		margin-right: -.5em;
        margin-top: .75em;
	}
	.menu li {
		float: left;
	}
	.menu li a {
		padding: 0 .5em;
		border: 0;
	}
	.menu li.span {
		display: inherit;
	}
}
aside {
    display: none;
}
@media screen and (min-width: 64em) {
aside {
    display: block;
    position: fixed;
    right: 80px;
    bottom: 500px;
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -ms-transform-origin: top right;
    transform-origin: top right;
    font-size: .9em;
    z-index: 2;
    }
}

/* Style
-------------------------------------------------- */

p {
    font-family: 'Open Sans', sans-serif;
    font-size: .85em;
    color:#3e484a;
    margin-bottom:1em;
    font-weight: 600;
}

span.colors-main {
    display: inline-block;
    width: 7em;
    margin-bottom:1em;
}
.colors-main {
border:.3em solid #3e484a;
color:#3e484a;
text-align: center;
min-width:1em;
padding: .8em;
margin: 0em .3em;
}
span.colors-accent {
    display: inline-block;
    width: 7em;
    margin-bottom:1em;
}
.colors-accent {
    border:.3em solid #f05155;
    color:#3e484a;
    text-align: center;
    padding: .8em;
    margin: 0em .3em;
}
span.colors-alt {
    display: inline-block;
    width: 7em;
    margin-bottom:1em;
}
.colors-alt {
    border:.3em solid #a0a79f;
    color:#3e484a;
    text-align: center;
    padding: .8em;
    margin: 0em auto;
}
li {
    color:#3e484a;
    line-height: 1.4em;
}
mark {
    font-size: .85em;
    padding: .4em .4em;
    background-color:#a0a79f;
    color:#fff;
    -webkit-border-radius: .12em;
    -moz-border-radius: .12em;
    border-radius: .12em;
}

/* Convenience
-------------------------------------------------- */
.title {
    text-align: center;
}
.center-wrap {
    margin: 0 auto;
    width:100%;
    text-align: center;
}
hr {
    height:4px;
    background: #3e484a;
    margin: 2.5em auto;
    width:8%;
}
img.slash {
    text-align: center;
    display: block;
    width: 100%;
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    height:2.2em;
  }
  figure.icons-foot {
      max-width:230px;
      max-height:40px;
      margin: 0 auto;
      width: 100%;
    }
    figure.icons-foot img:hover {
        -webkit-filter: blur(3px);
    	filter: blur(3px);
    	-webkit-transition: .4s ease-in-out;
    	transition: .4s ease-in-out;
      }
m-t-1 {
    margin-top: 1rem;
}
m-b-1 {
    margin-bottom: 1rem;
}

/* Headings
-------------------------------------------------- */
h1 {
	font-size: 2em;
	line-height: 1em;
	font-weight: 100;
	color: #f05155;
    margin-bottom: .5em;
}
h2 {
    font-size: 1.3em;
    text-transform: lowercase;
	font-weight: 400;
	margin-bottom: .5em;
	color: #3e484a;
}
h3 {
    font-size: 1.4em;
    text-transform: lowercase;
    line-height: 1.35em;
    font-weight: 400;
    color: #a0a79f;
}
h4 {
	font-size: .8em;
	line-height: 1.5em;
	margin-bottom: .5em;
	color: #3e484a;
}
h1 a, h2 a, h3 a, h4 a {
	color: inherit;
	border: 0 !important;
}

/* Table
-------------------------------------------------- */
table {
    margin: 0 auto;
    margin-bottom: 5rem;
    width: 100%;
}
table th {
    color: #f05155;
    text-align: left;
}
table td {
    color: #3e484a;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: .85em;
}
@media screen and (max-width: 35cem) {
    table td {
        font-size: .65em;
    }
}
/* Main
-------------------------------------------------- */
.main {
	margin-top: 2.5em;
	margin-bottom: 1em;
    animation: fadein 3s;
    -moz-animation: fadein 3s; /* Firefox */
    -webkit-animation: fadein 3s; /* Safari and Chrome */
    -o-animation: fadein 3s; /* Opera */
}
@keyframes fadein {
  from {
      opacity:0;
  }
  to {
      opacity:1;
  }
}
@-moz-keyframes fadein { /* Firefox */
  from {
      opacity:0;
  }
  to {
      opacity:1;
  }
}
@-webkit-keyframes fadein { /* Safari and Chrome */
  from {
      opacity:0;
  }
  to {
      opacity:1;
  }
}
@-o-keyframes fadein { /* Opera */
  from {
      opacity:0;
  }
  to {
      opacity: 1;
  }
}
.main p,
.main figure,
.main ul,
.main ol {
	margin-bottom: 1.5em;
}
.main a {
	border-bottom: 2px solid #ddd;
}
.main a:hover {
	border-color: #202020;
}

/* Text blocks */
.text ul,
.text ol {
	margin-left: 1em;
}

/* Video
-------------------------------------------------- */

iframe {
    display:block;
    width:100%;
    height: 60vh;
    border-top: 10px solid #f05155;
    border-right: 10px solid #a0a79f;
    border-left: 10px solid #f05155;
    border-bottom: 10px solid #a0a79f;
}
@media screen and (min-height: 850px) {
iframe {
    height: 30vh;
    }
}

/* Button
-------------------------------------------------- */
button, .button, a.button {
	font-family: inherit;
	font-size: .9em;
	font-weight: 400;
	color: #f05155;
	background-color: transparent;
	border: 1px solid #f05155;
	padding: .5em 1em;
	display: inline-block;
	cursor: pointer;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
button:hover, .button:hover, button:focus, .button:focus {
	color: #FFF;
	background-color: #f05155;
	outline: none;
}
button:active, .button:active, div.toggle.active {
	color: #FFF;
	background-color: #222;
	border-color: #222;
}


/* Notifications
-------------------------------------------------- */
.alert {
	width: 100%;
	display: block;
	background-color: #333;
	color: white;
	margin-bottom: 1.5em;
	position: relative;
	overflow: hidden;
	text-align: center;
	font-weight: 400;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.alert p {
	font-size: 1.125em;
	line-height: 1.5em;
	padding: .5em 1em;
	margin-bottom: 0em;
}
.alert p:last-of-type {
	margin-bottom: 0;
}
.alert.success {
	background: #2fdab8;
}
.alert.error {
	background: #D52C2C;
}

/* Satellite
-------------------------------------------------- */
.boom {
    position: fixed;
    z-index: 100;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #ffffff;
    display: none;
    height: 100%;
    width: 100%;
    margin: 0 auto;
}
.close {
    font-weight: 700;
    cursor: pointer;
    position: absolute;;
    top: 1em;
    left: 1em;
}
#weather {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#opener {
    cursor: pointer;
}

/* Satellite
-------------------------------------------------- */
.wrapper {
	position: relative;;
    display: inline;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	height: 200px;
}

.cloud {
	overflow: hidden;
	padding: 5px;
	height: 60px;
}

.cloud_left {
	position: relative;
	float: left;
	background-color: #3e484a;
	width: 100px;
	height: 100px;
    left: 200px;
	border-radius: 50%;
	box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.75);
}

.cloud_right {
	position: relative;
	float: left;
	background-color: #3e484a;
	width: 70px;
	height: 70px;
	border-radius: 50%;
	top: 15px;
	left: 170px;
	box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.75);
}

.rain {
	width: 180px;
	height: 140px;
}

.drop {
	position: relative;
	float: left;
	width: 2px;
	margin: 10px;
	left: 200px;
	box-shadow: 1px 0.5px 1px 0.5px #f05155;
	animation: rain 0.8s infinite ease-out;
}

.drop:nth-child(1) {
	background: #f05155;
	height: 15px;
	top: 5px;
	animation-delay: -1.0s;
}

.drop:nth-child(2) {
    background: #f05155;
	height: 20px;
	animation-delay: -1.4s;
}

.drop:nth-child(3) {
    background: #f05155;
	height: 15px;
	top: 5px;
	animation-delay: -1.6s;
}

.drop:nth-child(4) {
    background: #f05155;
	height: 10px;
	top: 10px;
	animation-delay: -1.2s;
}

.drop:nth-child(5) {
    background: #f05155;
	height: 5px;
	top: 15px;
	animation-delay: -1.6s;
}

@keyframes rain {
	0% {
		opacity: 1;
		transform: translate(0, 0);
	}
	100% {
		opacity: 0.2;
		transform: translate(0, 100px);
	}
}

/* Footer
-------------------------------------------------- */
.copyright {
    line-height: 5em;
}
.footer {
	font-size: .8em;
}
.copyright p {
    font-size: 1em;
    font-weight: 600;
}
@media screen and (min-width: 30em) {
	.colophon {
		display: block;
	}
}


/* Page Home
-------------------------------------------------- */
.intro {
    margin: 9em 0em;
}

ul.teaser {
	list-style: none;
	margin-top: 1.5em;
	margin-bottom: 1em;
}
ul.teaser li {
	width: 100%;
	float: left;
	display: block;
	position: relative;
	vertical-align: top;
	margin-bottom: 1.5em;
	line-height: 0;
	overflow: hidden;
    border: 5px solid #3e484a;
}
ul.teaser li a {
	border: none;
	display: block;
}
ul.teaser li a:hover img {
	opacity: 0.5;
}
ul.teaser li a img {
	width: 100%;
}

@media screen and (min-width: 20em) and (max-width: 29.99em) {
	ul.teaser li {
		width: 47.5%;
		margin-right: 5% !important;
	}
	ul.teaser li:nth-child(2n+2) {
		margin-right: 0 !important;
	}
}

@media screen and (min-width: 30em) {
	ul.teaser li {
		width: 30%;
		margin-right: 5% !important;
	}
	ul.teaser li:nth-child(3n+3) {
		margin-right: 0 !important;
	}
}


/* Page projects
-------------------------------------------------- */
article.aucun {
	text-align: center;
	margin-top: 2.5em;
	margin-bottom: 1.5em;
}
article.aucun p {
	padding: 1em 1.5em;
	background-color: #333;
	border: 1px solid #333;
	color: white;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

ul.projects {
	list-style: none;
	margin-top: 2.5em;
	margin-bottom: 1em;
}
ul.projects li {
	width: 100%;
	float: left;
	display: block;
	position: relative;
	vertical-align: top;
	margin-bottom: 1.5em;
	line-height: 0;
	overflow: hidden;
}
ul.projects li a {
	border: none;
	display: block;
}
ul.projects li a:hover img {
	opacity: 0.5;
}
ul.projects li a img {
	width: 100%;
}
.pagination {
	text-align: center;
	margin-bottom: 1.5em;
	clear: both;
}
span.text-content {
  background: #fff;
  border: 2px #3e484a solid;
  color: #3e484a;
  cursor: pointer;
  display: table;
  height: 35px;
  position: absolute;
  top: 40px;
  left:16px;
  width: 75%;
  margin: 0 auto;
  opacity: 0;
    -webkit-transition: opacity 500ms;
    -moz-transition: opacity 500ms;
    -o-transition: opacity 500ms;
    transition: opacity 500ms;
}
span.text-content span {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    font-size: 1em;
    padding-top: .25em;
    }
ul.projects li:hover span.text-content {
  opacity: 1;
}
a.next {
	font-size: .9em;
	font-weight: 700;
	display: inline-block;
	text-align: center;
	padding: .5em 1em;
	background-color: white;
	border: 1px solid #e67e22;
	color: #e67e22;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-decoration: none;
	cursor: pointer;
}
a.next:hover {
	color: white;
	background-color: #e67e22;
	border-color: #e67e22;
}
.end {
	width: 100%;
	display: block;
	text-align: center;
	margin-top: -1em;
	padding: 1em 1.5em;
	background-color: #333;
	border: 1px solid #333;
	color: white;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

@media screen and (min-width: 20em) and (max-width: 29.99em) {
	ul.projects li {
		width: 47.5%;
		margin-right: 5% !important;
	}
	ul.projects li:nth-child(2n+2) {
		margin-right: 0 !important;
	}
}

@media screen and (min-width: 30em) and (max-width: 39.99em) {
	ul.projects li {
		width: 30%;
		margin-right: 5% !important;
	}
	ul.projects li:nth-child(3n+3) {
		margin-right: 0 !important;
	}
}

@media screen and (min-width: 40em) {
	ul.projects li {
		width: 21.25%;
		margin-right: 5% !important;
	}
	ul.projects li:nth-child(4n+4) {
		margin-right: 0 !important;
	}
}


/* Page Work
-------------------------------------------------- */
.meta {
	text-align: center;
	margin-bottom: 1.5em;
}
.meta li {
	display: inline-block;
	list-style: none;
	margin: 0 .3em;
	color: #3e484a;
}
a.tweet {
	color: #FFF;
	background: #55acee;
	font-weight: 400;
	font-size: .85em;
	margin-top: 1.5em;
	padding: .5em 1em;
	border: none;
	display: inline-block;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.tweet:hover {
	color: #FFF;
	background: #2174D9;
}
.tweet:active {
	color: #FFF;
	background: #222;
}


/* Page Practice
-------------------------------------------------- */
.cover img {
	width: 100%;
	height: auto;
	margin-bottom: 1.5em;
	display: block;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

/* Page Error
-------------------------------------------------- */
#error article {
	text-align: center;
	margin-top: 2.5em;
	margin-bottom: 2.5em;
}
#error article p { color: silver }

/* Columns
-------------------------------------------------- */
.columns {
  margin-right: -2rem;
}
.column {
  display: inline-block;
  vertical-align: top;
  padding-right: 2rem;
}
.columns-1 .column {
  width: 100%;
}
.columns-2 .column {
  width: 50%;
}
.columns-3 .column {
  width: 33.33%;
}
.columns-4 .column {
  width: 25%;
}
.columns-5 .column {
  width: 20%;
}

/* Timer
-------------------------------------------------- */
.frame {
    margin-top: 2em;
    border: 5px dashed #3e484a;
}
.panel {
  margin-top: 2em;
}
h3#countdown {
    margin-bottom: 1em;
    background: #3e484a;
     color: #fff;
     padding: 1em;
     text-shadow: 3px 0 rgba(255, 0, 0, 0.9), -2px 0 rgba(0, 0, 255, 0.9);
     background-image: linear-gradient(to top, rgba(255, 255, 255, 0.2) 33.33333%, rgba(255, 255, 255, 0.4) 33.33333%, rgba(255, 255, 255, 0.4) 66.66666%, rgba(255, 255, 255, 0.6) 66.66666%), linear-gradient(to right, rgba(255, 0, 0, 0.7) 33.33333%, rgba(0, 255, 0, 0.7) 33.33333%, rgba(0, 255, 0, 0.7) 66.66666%, rgba(0, 0, 255, 0.7) 66.66666%);
     background-size: 3px 3px;
     mix-blend-mode: multiply;
}
 p#descCopy {
 display:none;
  }
