/***********************************************************************************************************************

****** Kirby Theme ******

*** Author: Graham Harper
*** Author URI: http://grahamharper.ie
*** First release: 
*** Current release 0.0.1 January 2015
*** Made for Kirby CMS [http://getkirby.com]

************************************************************************************************************************/

/* Base styles
-------------------------------------------------------------- */

body {
	font-size: 1.6em;
	line-height: 2;
	font-family: "Merriweather", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #444;
}

/* Typography
-------------------------------------------------------------- */

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: "Source Sans Pro", Helvetica, Arial, sans-serif;
    font-weight: 500;
    /* line-height: 1.1; */
}

h1 {
	font-weight: 700;
}

h2,
h3 {
	font-weight: 600;
}

.content blockquote {
	margin-left: 0;
	margin-right: 0;
	font-style: italic;
	font-size: 2rem;
}

.content figcaption {
    font-family: "Source Sans Pro", Helvetica, Arial, sans-serif;
	font-size: 1.4rem;
	color: #999999;
}

/* Links
-------------------------------------------------------------- */

a:link,
a:visited {
    color: #00c26f;
    text-decoration: none;
    transition: color 0.3s ease;
}
a:hover,
a:active {
    color: #444;
}
a:focus {
    background: #ddd;
}

.overlay {
	display: block;
	position: relative;
}

.overlay:after {
	position: absolute;
	content:"";
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color: #00c26f;
	opacity:0;
	transition: opacity 0.3s ease;
}

.overlay:hover:after  {
	opacity: .4;
}

/**
 * Tooltips!
 */

/* Base styles for the element that has a tooltip */
[data-tooltip] {
  position: relative;
  cursor: pointer;
}

/* Base styles for the entire tooltip */
[data-tooltip]:before,
[data-tooltip]:after {
  position: absolute;
  visibility: hidden;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: 
	  opacity 0.2s ease-in-out,
		visibility 0.2s ease-in-out,
		-webkit-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
	-moz-transition:    
		opacity 0.2s ease-in-out,
		visibility 0.2s ease-in-out,
		-moz-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
	transition:         
		opacity 0.2s ease-in-out,
		visibility 0.2s ease-in-out,
		transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform:    translate3d(0, 0, 0);
  transform:         translate3d(0, 0, 0);
  pointer-events: none;
  bottom: 100%;
  left: 50%;
  margin-bottom: 5px;
  -webkit-transform: translateX(-50%);
  -moz-transform:    translateX(-50%);
  transform:         translateX(-50%);
}

/* Base styles for the tooltip's triangle */
[data-tooltip]:before {
  z-index: 1001;
  border: 5px solid transparent;
  background: transparent;
  content: "";
  margin-bottom: -5px;
  border-top-color: #000;
  border-top-color: hsla(0, 0%, 20%, 0.9);
}

/* Base styles for the tooltip's content area */
[data-tooltip]:after {
  z-index: 1000;
  padding: 5px 10px;
  width: auto;
  background-color: #000;
  background-color: hsla(0, 0%, 20%, 0.9);
  color: #fff;
  content: attr(data-tooltip);
  font-size: 12px;
  line-height: 1.2;
  border-radius: 14px;
  text-align: center;
  font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;
}

/* Show the entire tooltip on hover and focus */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after,
[data-tooltip]:focus:before,
[data-tooltip]:focus:after {
  visibility: visible;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

[data-tooltip]:hover:before,
[data-tooltip]:hover:after,
[data-tooltip]:focus:before,
[data-tooltip]:focus:after {
  -webkit-transform: translateX(-50%) translateY(-12px);
  -moz-transform:    translateX(-50%) translateY(-12px);
  transform:         translateX(-50%) translateY(-12px);
}

/* Code
-------------------------------------------------------------- */
/* override Skeleton's code styles as we're using Prism
for syntax highlighting */

pre > code {
	background: none;
	border: none;
	padding: 0;
	margin: 0;
}

/* Embeds
-------------------------------------------------------------- */

.content iframe,
.content object,
.content video,
.content audio,
.content embed {
	max-width: 100%;
}

/* Header
-------------------------------------------------------------- */

.site-header {
	position: relative;
	background-color: #303538;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-image: url("../images/typewriter-green-grad.jpg");
	display: block;
	min-height: 350px;
	max-height: 400px;
	overflow: hidden;
	color: #fff;
}

.site-header:before {
    content: "";
    display: block;
    padding-bottom: 50%
}

.site-header .header-overlay {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3);
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
	-webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

.site-header .header-overlay .site-header-content {
	box-sizing: border-box;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    width: 100%;
    text-align: center;
    margin-top: -16px; /*Allow for navtabs*/
    padding-left: 15px;
    padding-right: 15px;
}

.site-logo {
	text-decoration: none;
	max-width: 120px;
}

.site-logo .logo img,
.site-logo .logo svg {
	width: 100px;
	height: 100px;
	border: 3px solid white;
	box-shadow: 0 2px 4px rgba(0,0,0,0.3);
	border-radius:50%;
}

#hrprco-logo-square #rectangle {
	fill: #FE6055;
}

.site-title {
	font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;
	font-weight: bold;
	font-size: 40px;
	text-shadow: 0 1px 3px rgba(0,0,0,0.15);
}

.site-description {
	font-family: 'Merriweather', Georgia, serif;
	margin: 0;
	font-size: 1.6rem;
	line-height: 1.5em;
	font-weight: 300;
	letter-spacing: 0;
	text-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

/* Styles for the card flip effect */
.flip_container {
	position: relative;
	width: 101px;
	height: 101px;
	z-index: 1;
	display: inline-block;
}

.flip_container {
	-webkit-perspective: 1000;
	perspective: 1000;
}

.flip_card {
	width: 100%;
	height: 100%;
	-webkit-transform-style: preserve-3d;
	-webkit-transition: all 0.4s linear;
	transform-style: preserve-3d;
	transition: all 0.4s linear;
}

.flip_container:hover .flip_card {
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
}

.flip_container .flip_card img {
	-webkit-transition: all 0.4s linear;
	transition: all 0.4s linear;
}

.flip_container:hover .flip_card img {
	-webkit-transition: all 0.4s linear;
	transition: all 0.4s linear;
}

.face {
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.face.back {
	display: block;
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
	box-sizing: border-box;
	color: white;
	text-align: center;
}


/* Navigation
-------------------------------------------------------------- */

.nav-primary {
	position: absolute;
	bottom: 0;
	width: 100%;
	text-align: center;
}

.navtabs {
	list-style: none;
	display: inline-block;
	margin: 0;
	border-top: 1px solid rgba(255,255,255,.5);
	font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;
	font-size: 14px;
	font-weight: bold;
	text-transform: uppercase;
}

.navtabs li {
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 0;
}

.navtabs li:last-of-type {
	margin-right: 0;
}

.navtabs a {
	display: inline-block;
	padding-top: 20px;
	padding-bottom: 20px; 
	color: white;
	opacity: .7;
	margin-top: -1px;
	border-top: 1px solid transparent;
	text-decoration: none;
	text-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

.navtabs a:hover,
.navtabs .active {
	opacity: 1;
}

.navtabs .active {
	border-top: 1px solid rgba(255,255,255,1);
}

/* Content
-------------------------------------------------------------- */

.content {
	padding-top: 60px;
	padding-bottom: 60px;
}

/* Pagination
-------------------------------------------------------------- */

.pagination {
	text-align: center;
}

.page-nav {
	text-align: center;
}

.prev-next .label {
	display: none;
}

/* Larger than phablet */
@media (min-width: 550px) {
	
	.page-nav {
		position: relative;
		text-align: right;
	}

	.prev-next .label {
		display: inline;
	}
	
	.page-nav .all {
		position: absolute;
		left: 0;
	}
}

/* Buttons
-------------------------------------------------------------- */

.button.button-branded {
	font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;
	border-color: #00c26f;
	transition: background-color 0.3s ease;
}

.button.button-branded:hover {
	color: white;
	background-color: #00c26f;
}

/* Posts
-------------------------------------------------------------- */

@media (min-width: 1000px) {
	.post .post-header,
	.post .text > p,
	.post .text h1,
	.post .text h2,
	.post .text h3,
	.post .text h4,
	.post .text h5,
	.post .text h5,
	.post .text ul,
	.post .text ol {
		width: 72%;
		margin-left: auto;
		margin-right: auto;
	}
}

.post {
	position: relative;
	padding-bottom: 30px;
	margin-bottom: 30px;
}

/* Larger than desktop */
@media (min-width: 1000px) {
	.post {
		margin-bottom: 60px;
	}
	
	.work.list .post {
		margin-bottom: 0;
		padding-bottom: 0;
	}
	
}

.post time {
	color: #999999;
	font-style: italic;
}

/* Larger than desktop */
@media (min-width: 1000px) {
	
	.post time {
		font-size: 1.2rem;
	}
	
	.post .text .time-wrap {
		position: relative;
	}
	
	.post time {
		display: block;
		position: absolute;
		right: 100%;
		top: 4px;
		margin: 0 30px 0 0;
		text-align: right;
		white-space: nowrap;
	}
}

.post h1 {
	font-size: 3.8rem;
	font-weight: 700;
}

/* Blog
-------------------------------------------------------------- */

.blog .post:after {
	display: block;
	content: "";
	width: 42px;
	height: 8px;
	position: absolute;
	bottom: -15px;
	left: 50%;
	margin-left: -21px;
	background-image: url("../images/3-circles.svg");
}

.blog .post:last-of-type:after {
	display: none;
}

/*
.image-holder {
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
}
*/

.blog .post .image-holder {
	overflow: hidden;
	margin: 0 auto 30px auto;	
	position: relative;
	padding-bottom: 40%;
	background-color: #00c26f;
}

.blog .post .image-holder img {
	position: absolute;
	top: 0;
	left: 0;
}

.blog .post .image-holder a img {
	transition: opacity 0.3s ease;
}

.blog .post .image-holder a:hover img {
	opacity: .8;
}

.blog .post .image-featured,
.content img {
	display: block;
	max-width: 100%;
}

.content figure {
	margin-left: 0;
	margin-right: 0;
	padding-top: 30px;
}

/* Post formats
-------------------------------------------------------------- */
.post-format-link .post-title > a:after {
    content: " →";
    opacity: .4;
}

/* Work
-------------------------------------------------------------- */

.work .row {
	margin-bottom: 30px;
}

.work .image-holder {
	overflow: hidden;
}

.hoverzoom img {
	-webkit-transition: all .3s ease;
	transition: all .3s;
}

.hoverzoom:hover img {
	-webkit-transform: scale(1.03);
	transform: scale(1.03);
}

.work .post-title {
	font-size: 2rem;
	margin-top: 10px;
	margin-bottom: 4px;
	text-align: center;
}

.work .post-subtitle {
	text-align: center;
	font-size: 1.4rem;
}

.work .post .post-excerpt {
	font-size: 1.4rem;
}

.project .meta {
	color: #999999;
	margin-top: -1.4rem;
	font-size: 1.4rem;
}

/* Larger than desktop */
@media (min-width: 1000px) {
	.project .meta {
		margin-bottom: 2rem;
	}
}

/*
.project tags:after {
	content: "\2022";
	margin-left: 3px;
	margin-right: 3px;
}
*/

.project .tags {
	list-style: none;
	display: inline;
}

.project .tag {
	display: inline;
}

.project .tag:after {
	content: ", "	;
}

.project .tag:last-of-type:after {
	content: "";	
}

.project .tag a {
	color: #999999;
}

.project .tag a:hover {
	color: 	#00c26f;
}

/* Footer
-------------------------------------------------------------- */

.footer {
	font-size: 1.4rem;
	background-color: #efefef;
	color: #555;
}

.footer .container {
	padding-top: 30px;
	padding-bottom: 20px;
}

.colophon {
	text-align: center;
	margin-bottom: 30px;
}

.colophon > p {
	margin-bottom: 0;
	line-height: 1;
}

.credit {
	font-size: 0.8rem;
	color: #999999;
}

.credit .kirby-credit {
	color: inherit;
	text-decoration: underline;	
}

.elsewhere {
	text-align: center;
}

.elsewhere ul {
    display: block;
    list-style: none;
    margin: 0 auto;
    padding: 0;
}

.elsewhere li {
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	display: inline-block;
	width: 28px;
    height: 20px;
    margin: 0;
    margin-right: 8px;
    padding: 0;
    opacity: 0.5;
    /* overflow: hidden; */
    
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

.elsewhere li:hover {
    opacity: 1.0;
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
}

.elsewhere li:last-of-type {
	padding-right: 0;
}

.elsewhere li a {
	display: block;
    opacity: 0;
}

#twitter {
	background-image: url('../images/twitter.svg');
}

#dribbble {
	background-image: url('../images/dribbble.svg');
}

#mail {
	background-image: url('../images/mail.svg');
}

#instagram {
	background-image: url('../images/instagram.svg');
}

#github {
	background-image: url('../images/github.svg');
	background-position-x: right;
}

#rss {
	background-image: url('../images/rss.svg');
}

/* Larger than phablet */
@media (min-width: 550px) {
	.colophon {
		text-align: left;
		margin-bottom: 0;
	}
	.footer .right {
		text-align: right;
	}
}

/* Utilities
-------------------------------------------------------------- */

.text-right {
	text-align: right;
}

.vertical-align {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

/* Animation/Transitions
-------------------------------------------------------------- */

/* Pop */
@-webkit-keyframes pop {
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}

@keyframes pop {
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}

.pop {
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}
.pop:hover {
	-webkit-animation-name: pop;
	animation-name: pop;
	-webkit-animation-duration: 0.1s;
	animation-duration: 0.1s;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	-webkit-animation-iteration-count: 1;
	animation-iteration-count: 1;
}

/* Fadeslide */
.fadeslide {
    -webkit-animation: fadeslide 0.7s; /* Safari and Chrome */
       -moz-animation: fadeslide 0.7s; /* Firefox */
        -ms-animation: fadeslide 0.7s; /* Internet Explorer */
         -o-animation: fadeslide 0.7s; /* Opera */
            animation: fadeslide 0.7s;
}

@keyframes fadeslide
{
    from {
        opacity: 0;
        -webkit-transform: translateY(15px);
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0px)
    }
}

@-moz-keyframes fadeslide /* Firefox */
{
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@-webkit-keyframes fadeslide /* Safari and Chrome */
{
    0% {
        opacity: 0;
        -webkit-transform: translateY(15px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0px);
    }
}

@-o-keyframes fadeslide /* Opera */
{
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}