/* --------------------------------------------
	
	main.css : this is the main style file of the theme.
	
	CONTEXT:
	
	1. BASE (@base)
	2. TYPOGRAPHY (@typo)
	3. HELPERS (@helpers)
	4. LAYOUT (@layout)
	5. ELEMENTS (@elements)
	5. MEDIA QUERIES (@media)
	
 -------------------------------------------- */
 
 
 

/*  --------------------------------------------

	1. BASE (@base) - base html elements
	
    -------------------------------------------- */ 
html,
body {
	width: 100%; height: 100%; padding: 0; margin: 0; box-sizing: border-box;
	}
* {
	box-sizing: border-box;
	}
body {
	font-family: 'HK Grotesk', sans-serif; color: #222; background-color: #bbb; font-size: 14px; line-height: 1.7; display: flex; align-items: center;
	}
img {
	max-width: 100%; height: auto;
	}
img.cover {
	max-width: 20%; height: auto;
	}
::selection {
 	text-shadow: none; color: #000; background: #FFF9CD;
	}
::-moz-selection {
 	text-shadow: none; color: #000; background: #FFF9CD;
	}
/* Loader */
html {
	overflow: hidden;
	}
html.loaded {
	overflow: auto;
	}
html:after {
	content: ""; position: fixed; z-index: 1000; top: 0; left: 0; right: 0; bottom: 0; background: white; background-image: url(../images/preloader.gif); background-position: center center; background-repeat: no-repeat; background-size: 48px 48px;
	}
html.loaded:after {
	display: none;
	}
body {
	transition: all .6s cubic-bezier(0.77, 0, 0.175, 1); opacity: 0;
	}
html.loaded body {
	opacity: 1;
	}

/*  --------------------------------------------

	2. TYPOGRAPHY (@typo) - typographic styles
	
    -------------------------------------------- */ 
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'HK Grotesk', sans-serif; font-weight: 700; font-style: normal; margin: 1em 0 .66em 0; 
	}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	margin-top: 0;
	}
h1 { 
	font-size: 6vw; line-height: 1.1; margin-top: 0;
	}
h2 { 
	font-size: 1.8em; line-height: 1.3;
	}
h3 { 
	font-size: 1.25em; line-height: 1.3;
	}
.profile-image + h1 {
	margin-top: 28px;
	}
h4 {
	font-size: 12px; text-transform: uppercase; letter-spacing: 5px;
	}
p:last-child {
	margin-bottom: 0;
	}
p.copy {
	font-size: 12px;
	color: #fff;
   }


/*  --------------------------------------------

	3. HELPERS (@helpers) - shorthand helper styles
	
    -------------------------------------------- */ 
.is-text-align-right {
	text-align: right;
	}
	
/*  --------------------------------------------

	2. LAYOUT (@layout) - layout styles
	
    -------------------------------------------- */ 

/* CONTENT */
.content-wrap {
	width: 80%; margin: 0 auto; max-height: 100%; position: relative; z-index: 20;
	}
.content {
	padding: 3em 0;
	}

/* MEDIA */
.media {
	position: fixed; width: 100%; height: 100%; background-position: center center; background-size: cover; background-repeat: no-repeat; 
	}
	
/* PROFILE IMAGE */
.profile-image {
	max-height: 92px;
	}
.profile-image.is-outside {
	margin-top: -50%; margin-bottom: 0;
	}
.gallery {
    margin-top: 0;
    }
/* LOGO */
.logo {
	margin-bottom: 0;
	}
	

/*  --------------------------------------------

	6. MEDIA QUERIES (@media) - base html elements
	
    -------------------------------------------- */ 

/* TABLETS */
@media screen and (min-width: 768px) {
	
	body {
		font-size: 19px;
		}
		
	.profile-image {
		max-height: 128px;
		}	
	.profile-image.small {
		max-height: 92px;
		}
	.profile-image.big {
		max-height: 192px;
		}
	
	h1 { 
		font-size: 4vw; line-height: 1;
		}
		
	
	/* MEDIA */
	.media {
		position: fixed; top: 0; left: 0; width: 100%; height: 100%; bottom: 0;
		}	
}

/* DESKTOPS */
@media screen and (min-width: 1200px) {
	
	.content-wrap {
		width: 50%;
		}
	.content {
		padding: 4em 0;
		}
}

/* DESKTOPS HIGH RES */
@media screen and (min-width: 1600px) {
	
	.content-wrap {
		width: 50%;
		}
	.content {
		padding: 4em 0;
		}
	
}