/*
	Theme Name: The Tess Olivia
	Theme URI: thetessolivia.com
	Description: WP Theme for The Tess Olivia
	Version: 1
	Author: Squatch Creative
	Author URI: http://squatch.us

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/

@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800');

/*WP CORE
=========================*/

*,:after,:before{-moz-box-sizing:border-box;box-sizing:border-box;-webkit-font-smoothing:antialiased;font-smoothing:antialiased;text-rendering:optimizeLegibility}.alignnone{margin:5px 20px 20px 0}.aligncenter,div.aligncenter{display:block;margin:5px auto}.alignright{float:right;margin:5px 0 20px 20px}.alignleft{float:left;margin:5px 20px 20px 0}a img.alignright{float:right;margin:5px 0 20px 20px}a img.alignleft,a img.alignnone{margin:5px 20px 20px 0}a img.alignleft{float:left}a img.aligncenter{display:block;margin-left:auto;margin-right:auto}.wp-caption{background:#FFF;border:1px solid #F0F0F0;max-width:96%;padding:5px 3px 10px;text-align:center}.wp-caption.alignleft,.wp-caption.alignnone{margin:5px 20px 20px 0}.wp-caption.alignright{margin:5px 0 20px 20px}.wp-caption img{border:0;height:auto;margin:0;max-width:98.5%;padding:0;width:auto}.gallery-caption,.wp-caption .wp-caption-text{font-size:11px;line-height:17px;margin:0;padding:0 4px 5px}

:root {
	/* --pink: #d9c1a2; */
	--pink: #f9c7ac;
	--gray: #171717;
}

/* SPAN SIMPLE by Squatch
==========================*/
body {
	margin:0px; padding:0px;
	font-family: 'Open Sans', sans-serif;
	background:#fff;
	font-size:26px; 
	line-height:150%; 
	color:#000;
} 
div { 
	display:block; 
	position:relative; 
	margin:0px; 
	padding:0px; 
}
.body-wrapper {
	max-width:100%;
	width:100%; 
	overflow:hidden; 
}
.container {
	float:none; clear:both; margin:0px auto; padding:0px;
	width:100%; height:auto; 	
}
.padded-container {
	padding:64px 0px;
}
.row {
	float:none; clear:both; margin:0px auto; padding:0px; 
	width:100%; height:auto; 
	max-width:960px; 
}

div[class*='span'] {
	float:left; margin:0px auto; padding:28px 28px; height:auto;
   	-moz-box-sizing: border-box;
   	-webkit-box-sizing: border-box;
   	-ms-box-sizing: border-box;
   	box-sizing: border-box;
}
.span5 { width:5%; }
.span10 { width:10%; }
.span15 { width:15%; }
.span20 { width:20%; }
.span25 { width:25%; }
.span30 { width:30%; }
.span33 { width:33%; }
.span35 { width:35%; }
.span40 { width:40%; }
.span45 { width:45%; }
.span50 { width:50%; }
.span55 { width:55%; }
.span60 { width:60%; }
.span65 { width:65%; }
.span66 { width:66%; }
.span70 { width:70%; }
.span75 { width:75%; }
.span80 { width:80%; }
.span85 { width:85%; }
.span90 { width:90%; }
.span100 { width:100%; }


.flex-container {
	display:-webkit-flex;
	display:flex;
}

h1, h2, h3, h4, h5, h6 {
	font-weight:500;
}

h1 {
	font-size:38px;
	letter-spacing:8px;
	margin:38px 0;
}

h2 {
    font-size: 33px;
    letter-spacing: 8px;
    margin: 33px 0;
}

h3 {
    font-size: 29px;
    letter-spacing: 4px;
    margin: 29px 0;
}

h2 strong, h3 strong {
	font-weight:800;
}

h4 {
    letter-spacing: 3px;
    font-size: 22px;
    margin: 22px 0;
}

p {
    font-size: 22px;
    margin: 24px auto;
    padding: 0;
}
a {
	transition: 120ms; 
	text-decoration:none;
	color:var(--pink);
}
a:hover {
	color:#383838;
}
img, a img {
	display:inline-block; 
	max-width:100%; 
	height:auto; 
	border:0px;
	padding:0px;
	margin:0px auto;
}
small {font-size:70%;}
.bold, strong {font-weight:bold;}
.italic, em { font-style:italic;}
.hidden { display:none; }
.clear {	clear:both; float:none; display:block; position:relative; }
.text-center { text-align:center; }
.text-right { text-align:right; } 
.no-gap { margin:0px auto !important; padding:0px !important; } 
hr {
	display:block; 
	clear:both; 
	position:relative;
	max-width:640px;
	border:0px;
	border-bottom:2px #efefef solid;
	height:1px;
	margin:48px auto;
}















/* HEADER
================================*/

ul.menu {
	list-style:none; margin:0px; padding:0px;
	display:inline-block;
	position:relative;
}

ul.menu li {
	list-style:none; margin:0px; padding:0px;
	display:inline-block;
	position:relative;
}

ul.menu li a {
	display:block;
	height:auto; width:auto;	
	margin:0px; padding:18px 16px 18px 16px;
	text-transform:uppercase;
	font-size:18px; 
	line-height:26px;
	font-weight:400;
	color:#3d3d3d;
	text-decoration:none;
}

ul.menu li a:hover {
	
}

.mobile-menu {
	display:none;
}












/* HERE WE GO
========================= */

.hero-container {
	height:100vh;
}







.video-reel-container {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: stretch;
    max-width: 1280px;
    padding: 96px 4vw;
}

.copy-box {
    z-index: 5;
    flex: 0 0 40%;
    max-width: 40%;
    padding: 24px 48px;
}

.copy-box p {
    font-size: 20px;
    line-height: 145%;
}

.copy-box h2 {
    transform: translateX(-5vw);
}

.video-thumb {
    flex: 0 0 60%;
    min-height: 360px;
}

.video-thumb a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: rgba(0,0,0,0.1) url(images/triangle.png) center center no-repeat;
    background-size: 64px auto;
	transition: 320ms ease;
}

.video-thumb a:hover {
	background-color:rgba(0,0,0,0.25);
}










.gallery-container {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    max-width: 1280px;
    padding: 0 4vw;
    position: relative;
    overflow: visible;
}

.gallery-container:before {
    content: '';
	z-index:1;
    display: block;
    position: absolute;
    top: 10%;
    left: 50%;
    width: 100%;
    min-width: 2400px;
    transform: translateX(-50%);
    height: 80%;
    background: var(--pink);
}

.gallery-box {
    flex: 0 0 60%;
	max-width:60%;
    overflow: visible;
    display: flex;
    flex-flow: row;
    justify-content: flex-start;
    align-items: center;
	z-index:5;
}

.gallery-holder {
    width: calc(100% + 4vw);
}

@media all and (min-width:1281px) {
	.gallery-holder {
		width: calc(100% + 4vw + ((100vw - 1280px) / 2));
	}
}

.gallery-holder a {
	display:Block;
}

.gallery-holder img {
    display: block;
    max-height: 720px;
    margin: 0px 26px 0 0;
}

.gallery-holder a.slick-arrow {
    display: flex !important;
    position: absolute;
    z-index: 100;
    top: 0;
    height: 100%;
    width: 100px;
    border: 0px;
    color: #595959;
    text-align: center;
    cursor: pointer;
	flex-flow:column;
	justify-content:center;
	align-items:center;
}

.gallery-holder a.slick-arrow img {
	transition:180ms;
	width:24px;
	max-width:100%;
	height:auto;
}

a.slick-prev.slick-arrow {
    left: 0px;
	transform:rotate(180deg);
}

a.slick-next.slick-arrow {
    right: 0;	
}





.logo-container {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    max-width: 960px;
    padding: 0 4vw;
    position: relative;
    overflow: visible;
}

.logo-box {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
}

.logo-box img {
    display: block;
    max-height: 96px;
    margin: 24px;
    max-width: 200px;
}

















/* FORMS
============================== */

input, textarea {
	-moz-box-sizing: border-box;
   	-webkit-box-sizing: border-box;
   	-ms-box-sizing: border-box;
   	box-sizing: border-box;
	display:block;
	max-width:100%;
	width:100%;
	height:auto;
	padding:12px 24px;
	margin:8px auto; 
	
	font-size:14px;
	line-height:18px;
	
	border:1px #ccc solid; 
}

a.button, input[type="submit"] {
	display:inline-block; position:relative;
	margin:10px auto; 
	padding:10px 34px;
	width:auto; 
	height:auto;
	
	font-size:18px; line-height:18px;
	text-transform:uppercase;
	border:0px;
	
	background:#a3a3a3;
	color:#000;
	
	-webkit-transition:200ms;
	transition:200ms;
}

a.button:hover, input[type="submit"]:hover {
	background:#383838;
	color:#fff;
}

div.wpcf7-response-output {
    margin: 0px auto;
    box-sizing: border-box;
    padding: 18px;
    text-align: center;
}

div.wpcf7-mail-sent-ok {
    border: 2px solid #99c387;
    background: #d4fbb2;
    color: #000;
}

div.wpcf7-validation-errors {
    border: 2px solid #d0c419;
    background: #dcdc9b;
    color: #000;
}

div.wpcf7-spam-blocked {
    border: 2px solid #d49d3a;
    background: #dcc497;
    color: #000;
}

div.wpcf7-mail-sent-ng {
    border: 2px solid #f35656;
    background: #e4b2b2;
    color: black;
}








































/* FOOTER 
================================*/

.footer {
    margin-top: 120px;
    padding: 72px 0 224px 0;
    background: var(--gray);
}

.footer h1, .footer h2, .footer h3, .footer p {
    color: white;
}

.footer h3 strong {
    font-weight: 700;
}


.builtby {
	max-width:90px; padding:20px 0px; 
	margin:0px auto; 
	display:block; float:none; clear:both; 
	z-index:100; 
	
	opacity:0.45; 
}

.builtby:hover {
	-webkit-animation:shake .2s 1;
	animation: shake .2s 1;
	opacity:1.0; 
}









/* ANIMATIONS
========================*/
@supports (-webkit-animation:test) or (animation:test) {

.animate {
	opacity:0.0; 
}		
.animation {
	-webkit-animation:slideIn 1s forwards;
	animation:slideIn 1s forwards;
}

@-webkit-keyframes slideIn {
	from 	{ opacity:0.0; -webkit-transform: translate(0px,0px); }
	to		{ opacity:1.0; -webkit-transform: translate(0,0); }
	}

@-keyframes slideIn {
	from 	{ opacity:0.0; transform: translate(0px,0px); }
	to		{ opacity:1.0; transform: translate(0,0); }
}


@-webkit-keyframes shake {
	0% { -webkit-transform: translate(2px, 1px) rotate(0deg); }
	10% { -webkit-transform: translate(-1px, -2px) rotate(-1deg); }
	20% { -webkit-transform: translate(-3px, 0px) rotate(1deg); }
	30% { -webkit-transform: translate(0px, 2px) rotate(0deg); }
	40% { -webkit-transform: translate(1px, -1px) rotate(1deg); }
	50% { -webkit-transform: translate(-1px, 2px) rotate(-1deg); }
	60% { -webkit-transform: translate(-3px, 1px) rotate(0deg); }
	70% { -webkit-transform: translate(2px, 1px) rotate(-1deg); }
	80% { -webkit-transform: translate(-1px, -1px) rotate(1deg); }
	90% { -webkit-transform: translate(2px, 2px) rotate(0deg); }
	100% { -webkit-transform: translate(1px, -2px) rotate(-1deg); }
}

@keyframes shake {
	0% { transform: translate(2px, 1px) rotate(0deg); }
	10% { transform: translate(-1px, -2px) rotate(-1deg); }
	20% { transform: translate(-3px, 0px) rotate(1deg); }
	30% { transform: translate(0px, 2px) rotate(0deg); }
	40% { transform: translate(1px, -1px) rotate(1deg); }
	50% { transform: translate(-1px, 2px) rotate(-1deg); }
	60% { transform: translate(-3px, 1px) rotate(0deg); }
	70% { transform: translate(2px, 1px) rotate(-1deg); }
	80% { transform: translate(-1px, -1px) rotate(1deg); }
	90% { transform: translate(2px, 2px) rotate(0deg); }
	100% { transform: translate(1px, -2px) rotate(-1deg); }
}






}



/**** MEDIA QUERIES *****/
/**** MEDIA QUERIES *****/
/**** MEDIA QUERIES *****/
@media all and (max-width:959px) {
	
	.hero-container {
		height: 112vw;
	}
	
	.video-reel-container {
		padding-top: 12px;
		flex-flow: column;
		align-items: center;
	}
	
	.gallery-container {
		flex-flow: column;
	}
	
	.gallery-container:before {
		top: 0;
		height: 70%;
	}
	
	.gallery-box {
		max-width: 100%;
		flex: 1;
	}
	
	.gallery-holder {
		width: calc(100% + 8vw);
		transform: translateX(-4vw);
	}
	
	.gallery-holder a.slick-arrow {
		display:none !important;
	}
	
	.gallery-holder img {
		max-height: 68vw;
	}
		
	.row {
		max-width:540px;
	}

	.copy-box, .video-thumb {
		flex: 1;
		width: 100%;
		max-width: 540px;
	}
	
	.copy-box {
		padding: 24px;
	}


}
@media all and (max-width:541px) {	
	.footer h3 {
		font-size: 12px;
	}
}	
/**** MEDIA QUERIES *****/
/**** MEDIA QUERIES *****/
/**** MEDIA QUERIES *****/


