/*
	Theme Name: Squatch Creative 2026
	Theme URI: https://squatchcreative.com
	Description: WP Theme for Squatch Creative
	Version: 2026.001
	Author: Squatch Creative
	Author URI: https://squatchcreative.com

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

@import url('https://fonts.googleapis.com/css?family=Montserrat:400,400i,700');
@import url('https://fonts.googleapis.com/css?family=Orbitron:700|Oswald:400,700|Source+Code+Pro');

:root {
	--header:100px;
	--header-scrolled:70px;
	--yellow:#ffd747;
	--gray:#a8a8a8;
	--row:1300px;
	--small-row:975px;
	--transition:90ms ease-out all;
}

::selection {
    background-color: var(--yellow);
    color: black;
}

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

*,:after,:before{-moz-box-sizing:border-box;box-sizing:border-box;-webkit-font-smoothing:antialiased;font-smoothing:antialiased;text-rendering:optimizeLegibility}

.alignfull, .container.alignfull {
	width:100%;
	max-width:100%;
	margin:0;
}

.alignwide,
.container.alignwide {
	width: var(--row);
	max-width: calc(100% - 2rem);
	position: relative;
	left: 0;
	margin:0 auto;
}

article > *:not(.alignwide, .alignfull) {
    width: var(--small-row);
    margin: 0 auto;
	max-width: calc(100% - 2rem);
}

.wp-block-image {
	margin-bottom:0;
}

.wp-block-image img {
    max-width: 100%;
    display: block;	
}

.wp-block-columns {
    margin-bottom: 0;
}


html {
	font-size:18px;
	scroll-behavior: smooth;
}

body {
	margin:0px; 
	padding:0px;
	font-family: 'Source Code Pro', Arial, sans-serif;
	background:#212121;
	color:#a8a8a8;
	overflow-y:auto;
	-webkit-overflow-scrolling:auto;
} 
div { 
	display:block; 
	position:relative; 
	margin:0px; 
	padding:0px; 
}
.body-wrapper {
	max-width:100%;
	width:100%; 
	overflow:clip;
}
.container {
	float:none; 
	clear:both; 
	margin:0px auto; 
	padding:0px 1rem;
	width:100%; 
	height:auto; 	
}
.row {
	clear:both; 
	margin:0px auto; 
	padding:0px; 
	width:100%; 
	height:auto; 
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	align-items:stretch;
	max-width:var(--row); 
}
div[class*='span'] {
	margin:0;
	padding:1.6rem;
}
.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%; }

h1 {
	font-size:3rem;
	line-height:135%;
	margin:1.5rem 0;
}

h2 {
	font-size:2.4rem;
	line-height:135%;
	margin:1.5rem 0;
}

h3 {
	font-size:1.8rem;
	line-height:135%;
	margin:1.5rem 0;
}

h4 {
	font-size:1.4rem;
	line-height:135%;
	margin:1rem 0;
}

p {
	font-size:1rem;
	line-height:140%;
	margin:1.1rem 0;
	padding:0;
}
article ul li {
    font-size: 1rem;
    line-height: 150%;
}
a {
	transition: var(--transition); 
	text-decoration:none;
	color:var(--wp--preset--color--yellow);
}
a:hover {
	color:#000000;
}
a.large-link {
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:5;
}
image-overlay {
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:2;
	background:rgba(0,0,0,0.5);
}
figure {
	display:block;
	position:relative;
	margin:0 auto;
}
img, a img {
	display:inline-block; 
	max-width:100%; 
	height:auto; 
	border:0px;
	padding:0px;
	margin:0px auto;
}
svg {
	display:block;
	position:relative;
	width:100%;
	height: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; } 
.overview hr:first-of-type {
	margin-top: 0;
}
hr {
	display: block;
	clear: both;
	position: relative;
	max-width: 120px;
	border: 0;
	border-bottom: 6px #ffd747 solid;
	height: 1px;
	margin: 48px 0;
	text-align: left;
}

/* FORMS & BUTTONS
============================== */

input, textarea, select {
   	box-sizing: border-box;
	display:block;
	max-width:100%;
	width:100%;
	height:auto;
	padding:0.65rem 1.75rem;
	margin:8px auto; 
	font-size:1rem;
	line-height:100%;	
	border:2px #000 solid; 
	color:#000;
}

.button, input[type="submit"], button, .wp-block-button__link {
	display: inline-flex;
	position: relative;
	margin: 0 auto;
	padding: 1rem 2.5rem;
	width: auto;
	height: auto;
	font-size: 1rem;
	line-height: 100%;
	border: 2px solid var(--yellow);
	color: var(--yellow);
	background: transparent;
	text-transform: uppercase;
	letter-spacing: 1px;
	cursor:pointer;
	transition: var(--transition);
}

.button:hover, input[type="submit"]:hover, button:hover
.wp-block-button__link:hover {
	background:#000;
}

button.rstore-add-to-cart.button.btn.btn-primary {
    margin-top: 36px;
}













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

.flex-container {
	display:flex;
	height:100vh;
	overflow:clip;
	padding:0;
}

header {
	position: fixed;
	z-index: 9999;
	overflow: clip;
	height: var(--header);
	width: 100vw;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 2rem 0 1rem;
	transition:var(--transition);
}

body.header-scrolled header {
	height:var(--header-scrolled);
	background:#212121;
}

.header-spacer {
	width:100%;
	position:relative;
	height:0px;
}

header .row {
	max-width: 100%;
	justify-content: space-between;
	gap: 1rem 2rem;
	align-items: center;
}

a.squatch-logo-tight {
    position: relative;
    display: block;
    width: 140px;
    transition: var(--transition);
}
a.squatch-logo-tight svg {
	fill: var(--yellow);
}

body.home .header-spacer,
body.single-reseller_product .header-spacer {
	height: 0;
}

body.home a.squatch-logo-tight {
	transform:translateY(-100px);
}

body.home.header-scrolled a.squatch-logo-tight {
	transform:translateY(0px);
}

a.toggle-menu {
	display: block;
	position: relative;
	z-index: 1000;
	height: 48px;
	width: 48px;
	padding: 0px;
	margin: 0px;
	text-align: center;
	font-size: 24px;
	line-height: 48px;
	border: 1px #ffd747 solid;
	color: #ffd747;
	background: transparent;
	transition: 120ms;
}
 
a.no-touch.toggle-menu:hover {
	background:#ffd747;
	color:#fff;
}
 
body.nav-opened a.toggle-menu {
	color:#fff;
	border-color:#fff;
}
 
body.nav-opened a.toggle-menu:hover {
	color:#383838;
	border-color:#383838;
}
 
.nav-panel {
	position:fixed;
	z-index:-1;
	top:0;
	opacity:0.0;
	pointer-events:none;
	margin:0px;
	padding:0px;
	width:100%; 
	height:auto;
	min-height:100vh;
	-webkit-transition:120ms;
	transition:120ms;
}

body.nav-opened .nav-panel {
	z-index:999;
	opacity:1.0; 
	pointer-events:auto;
}

.logo-holder {	
	padding:28px;
	overflow:hidden;	
	-webkit-flex:1;
	flex:1;
	display: flex;
	align-items: center;
	background:#000 url('images/squatchtv.gif') center center no-repeat;
	background-size:cover;

	transition:180ms;
	max-width:50vw;
	max-height:100vh;
	
	opacity:0.0;
	transform:translateX(-100vw);
}

.nav-panel a.logo-image {
	visibility: hidden;
	width: 350px;
	margin: 0 auto;
	height: auto;
	position: relative;
	display: block;
}

.nav-holder {	
	padding:28px;
	overflow:hidden;
	
	-webkit-flex:1;
	flex:1;
	display: flex;
	align-items: center;
	background:#ffd747;

	transition:180ms;
	max-width:50vw;
	max-height:100vh;
	
	opacity:0.0;
	-webkit-transform:translateX(100vw);
	transform:translateX(100vw);
}

body.nav-opened .nav-holder,
body.nav-opened .logo-holder {
	opacity:1.0;
	-webkit-transform:translateX(0);
	transform:translateX(0);
}

header .nav-holder .span100,
header .logo-holder .span100 {
	display:none;
}

body.nav-opened .nav-holder .span100,
body.nav-opened .logo-holder .span100 {
	display:block;
}

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

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

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

ul.menu li a:hover {
	color:#fff;
}


ul.social-menu {
	list-style:none;
	margin:12px auto;
	padding:0px;
}

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

ul.social-menu li a {
    display: block;
    color: #a4a4a4;
    font-size: 20px;
    line-height: 100%;
    padding: 12px 16px;
    margin: 0px;
    border: 1px #a4a4a4 solid;
}

ul.social-menu li a:hover {
	color:#ffd747;
	border-color:#ffd747;
}




















/* HERO
==========================*/

.hero {
	overflow:hidden !important;
	background:#000;
	background-size:cover; 
	position: relative;
}

.video-mobile.backgroundmp4 {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.mobile-video { 
	position: absolute; 
	bottom:0; left:50%;
	transform:translateX(-50%);
	display:block;  
	min-width: 100% !important; 
	min-height: 100% !important; 
	width:auto; height:auto; 
	overflow: hidden;
	z-index:0;
}

.video-background {
	background: #000;
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	z-index: 0;
	overflow:hidden !important;
	-webkit-transition:180ms ease;
	transition:180ms ease;
	opacity:0.0;
}

.video-background.mobile-video, 
.video-background.mobile-video.animation, 
.video-background.mobile-video.playing {
	visibility:hidden !important;
	-webkit-animation:none !important;
	animation:none !important;
}

.video-background.playing {
	opacity:1.0;
}

.video-foreground,
.video-background iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

@media (min-aspect-ratio: 16/9) {
  .video-foreground { height: 300%; top: -100%; }
}
@media (max-aspect-ratio: 16/9) {
  .video-foreground { width: 300%; left: -100%; }
}

.video-wrapper.ready {
	opacity:1.0;
}

a.toggle-mute {
	display:block;
	position:absolute;
	z-index:100;
	top:calc(var(--header) + 12px);
	left:calc(2rem + 48px);
	height:48px;
	width:48px;
	padding:0px;
	margin:0px;
	text-align:center;
	border:1px #ffd747 solid;
	color:#ffd747;
	background:transparent;
	transition:var(--transition);
}
 
a.toggle-mute:hover {
	background:#ffd747;
	color:#fff;
}

a.toggle-mute:hover::before {
	color:#fff;
}

a.toggle-mute.muted {
	color:#a4a4a4;
	border-color:#a4a4a4;
}

a.toggle-mute:before {
	font-family: 'Font Awesome 5 Free';
	font-weight:900;
	content: "\f028";
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:48px;
	height:48px;
	font-size:24px;
	line-height:48px;
	text-align:center;
	color:#ffd747;
}

a.toggle-mute.muted:before {
	content: "\f028"; /* \f026*/
	color:#a4a4a4;
}

a.toggle-play {
	display:block;
	position:absolute;
	z-index:100;
	top:calc(var(--header) + 12px);
	left:1rem;
	height:48px;
	width:48px;
	padding:0px;
	margin:0px;
	text-align:center;
	border:1px #a4a4a4 solid;
	color:#a4a4a4;
	background:transparent;
	transition:var(--transition);
}
 
a.toggle-play:hover {
	 background:#ffd747;
	 color:#fff;
}

a.toggle-play:hover::before {
	color:#fff;
}

a.toggle-play.playing {
	color:#ffd747;
	border-color:#ffd747;
}

a.toggle-play:before {
	font-family: 'Font Awesome 5 Free';
	font-weight:900;
	content: "\f04c";
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:48px;
	height:48px;
	font-size:20px;
	line-height:48px;
	text-align:center;
	color:#a4a4a4;
}

a.toggle-play.playing:before {
	content: "\f04b";
	color:#ffd747;
}

a.toggle-play.playing:hover::before {
	color:#fff;
}

.hero-container {
	padding:48px;
	overflow:hidden;
	
	-webkit-flex:1;
	flex:1;
	display: flex;
	align-items: center;
	
	-webkit-transition:120ms;
	transition:120ms;
	max-width:40vw;
	max-height:100vh;
	position:relative;
}

a.logo-image img {
    max-width: 100%;
	width:400px;
}

h2.logo-type {
	font-size:20px;
	line-height:24px;
	color:#ffd747;
	margin:12px auto;
	padding:0px;
	font-weight:400;
}

h5.tagline {
	position:absolute;
	text-align:center;
	width:100%;
	left:0;
	bottom:18px;
	font-weight:400;
	margin:12px 0px;
}

h5.locations {
    position: absolute;
    text-align: center;
    font-family: 'Oswald';
    font-size: 14px;
    line-height: 18px;
    font-weight: 400;
    width: 100%;
    left: -18vw;
    top: 44vh;
    letter-spacing: 2px;
    color: #ffd747;
    text-transform: uppercase;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

.intro-container {
	padding:28px;
	overflow:hidden;
	
	-webkit-flex:1;
	flex:1;
	display: flex;
	align-items: flex-end;
	
	-webkit-transition:120ms;
	transition:120ms;
	max-width:60vw;
	max-height:100vh;
}

.intro-container .span50 {
	padding-top:0px !important;
	padding-bottom:0px !important;
}

.intro-container p {
	color:#ffd747;
	font-size:14px;
	line-height:18px;
	padding-bottom:48px;
}

.intro-container p strong {
	color:#fff;
	font-size:18px;
	font-family: 'Oswald', sans-serif;
	font-weight:700;
	text-transform:uppercase;
}



















/* TITLE FRAMES
=========================================*/

.title-frame {
	background:#363636;
	/*url('images/tracking.gif') center center no-repeat;*/
	background-size:cover;
}

.title-holder {	
	padding:28px;
	overflow:hidden;
	
	-webkit-flex:1;
	flex:1;
	display: flex;
	align-items: center;
	
	-webkit-transition:120ms;
	transition:120ms;
	max-width:50vw;
	max-height:100vh;
}

.title-frame h1 {
	color:#fff;
	text-transform:uppercase;
	font-weight:400;
	text-align:right;
	padding-right:20px;
}

.title-frame h4  {
    font-size: 240px;
    line-height: 240px;
    font-weight: 700;
    font-family: 'Orbitron', sans-serif;
    color: #fff;
    margin: 0px auto;
	text-align:right;
}

.subnav-holder {
	padding:28px;
	overflow:hidden;
	
	-webkit-flex:1;
	flex:1;
	display: flex;
	align-items: center;
	
	-webkit-transition:120ms;
	transition:120ms;
	max-width:50vw;
	max-height:100vh;
}

.subnav-holder a {
	color:#a8a8a8;
	text-transform:uppercase;
}

.subnav-holder a:hover {
	color:#ffd747;
}




















/* SELECTED WORKS
=====================================*/

.overview {
	background:#fff url('images/white-dots.png') top left repeat;
	border-right:6px #ffd747 solid;
	
	padding:28px;
	overflow:hidden;
	
	-webkit-flex:1;
	flex:1;
	display: flex;
	align-items: center;
	
	-webkit-transition:120ms;
	transition:120ms;
	max-width:50vw;
	max-height:100vh;
}

.container.toggled .overview {
	max-width:0vw;
	padding:0px;
	border:0px;
}

.container.toggled .overview .span100 {
	display:none;
}

.overview hr:first-of-type {
	margin-top:0px 
}

.overview h1 {
	color:#000;
    margin: 0px auto 12px auto;
    font-weight: 400;
    font-size: 42px;
    line-height: 48px;
    text-transform: uppercase;
}

.overview h2 {
	font-family: 'Oswald', sans-serif;
	color:#000;
	font-weight:700;
	margin:0px auto;
	font-size:16px;
	line-height:20px;
	text-transform:uppercase;
}

.overview p {
	color:#000;
	margin:24px auto;
	text-transform:uppercase;
}

.hero-image {
	position:relative;
	display: -webkit-flex;
	display: flex;
	-webkit-flex:1;
	flex:1;
	align-items: center;
	position:relative;
	padding:28px;
	max-height:100vh;
	overflow: hidden;
}

a.toggle-more,
a.toggle-next {
	display:block;
	position:relative;
	overflow:visible;
	font-size:64px;
	line-height:64px;	
	z-index:100;
	color: var(--yellow);
}

a.toggle-more i,
a.toggle-next i {
	-webkit-transition:.1s linear all;
	transition:.1s linear all;
}

a.toggle-more:hover i {
	-webkit-transform:scale(1.2);
	transform:scale(1.2);
}

a.toggle-next i {
	-webkit-transform: rotate(90deg); 
    transform: rotate(90deg);
}

a.toggle-next:hover i { 
    transform: rotate(90deg) scale(1.2);
}

.container.toggled a.toggle-more i {
    transform: rotate(180deg);
}

.details a.toggle-next,
.details a.toggle-next i {
	font-size:22px;
	line-height:24px;
}

.details .span100.loading a.toggle-next {
	display:none; 
}

.details a.toggle-next:hover i {
    transform: rotate(90deg) scale(1.0);
}


body.noscroll {
    height: 100vh;
    overflow: clip;
}

.details {
	background:#212121;
	flex:1;
	display: flex;
	z-index:990;
	align-items:flex-start;
	max-width:0vw;
	max-height:100vh;
	overflow:hidden;
	padding:0px;
	border:0px;
	opacity:0.0;
	transition:120ms;
}

.container.toggled .details {
	border-left:6px #ffd747 solid;
	padding:28px;	
	opacity:1.0;	
	max-width:50vw;
}

.details iframe {
    width: 100%;
    height: auto;
    max-width: 100%;
    aspect-ratio: 16 / 9;
}

.overlay {
    position: fixed;
    display: block;
    overflow: auto;
    max-height: calc(100vh - var(--header));
    height: calc(100vh - var(--header));
    width: 90vw;
    top: var(--header);
    bottom: 0;
    left: 110vw;
    padding-left: calc(40vw + 28px);
    padding-right: 28px;
    z-index: 990;
    opacity: 0.0;
    overflow-y: scroll;
}

.overlay .span100 {
	padding-bottom:128px;
}

.overlay .span100 img.loader-gif {
	display:none;
}

.overlay .span100.loading img.loader-gif {
    display: block;
    padding: 24px 0px;
}

.container.toggled .overlay {
	z-index:990;
	opacity:1.0;
	left:10vw;
}

.details h1 {
    color: #fff;
    margin: 0px auto 12px auto;
    font-weight: 400;
    font-size: 42px;
    line-height: 48px;
    text-transform: uppercase;
}

.details h2 {
	font-family: 'Oswald', sans-serif;
	color:#fff;
	font-weight:700;
	margin:0px auto;
	font-size:16px;
	line-height:20px;
	text-transform:uppercase;
}

.details p {
    color: #a8a8a8;
    text-transform: none;
    margin: 24px auto;
    font-size: 14px;
    line-height: 19px;
}

.details p.sub-services  {
	color:#ffd747;
	text-transform:uppercase;
	margin-top:12px;
	font-size:15px;
	line-height:22px;
	-webkit-column-count: 2; 
    -moz-column-count: 2; 
    column-count: 2;
}

.details-added div {
    max-width: 100%;
}

.embed-container { 
	position: relative; 
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
	height: auto;
} 
 
.embed-container iframe,
.embed-container object,
.embed-container video,
.embed-container embed { 
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index:5;
}

a.youtube-url {
    display: none;
}

.wp-video {
    width: 100%;
    max-width: 100%;
	position:relative;
}

.wp-video video {
    max-width: 100%;
    height: auto;
    width: 100%;
	position:relative;
	display:block;
}

.wp-video a.toggle-mute {
    left: unset;
    right: 24px;
}

i.arrow-lead {
	display:none;
}

.active-slide.toggled i.arrow-lead {
    display: flex;
    position: fixed;
    z-index: 100;
    top: 0;
    left: 50%;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    line-height: 100%;
    margin-left: -7px;
    width: 20px;
    height: 20px;
    background: #ffd747;
    color: #212121;
    border-radius: 50%;
    box-sizing: border-box;
    overflow: visible;
}



























/* SERVICES
=============================== */

.services.overview {
	background:#212121;
}


.services.overview h1 {
	color:#fff;
}

.services.overview p {
	color:#a8a8a8;
	text-transform:none;
	font-size:14px;
	line-height:18px;
}

.services.overview p.sub-services  {
	color:#ffd747;
	text-transform:uppercase;
	margin-top:12px;
	font-size:15px;
	line-height:22px;
	-webkit-column-count: 2; 
    -moz-column-count: 2; 
    column-count: 2;
}

.scanlines {
	position: absolute;
	overflow: hidden;
	width: 100%;
	height: 100vh;
	z-index: 1;
	top:0;
	left:0;
}

.scanlines:after,
.scanlines:before {
	display: block;
	pointer-events: none;
	content: '';
	position: absolute;
}

.scanlines:before {
	width: 100%;
	height: 2px;
	z-index: 2147483649;
	background: rgba(0, 0, 0, .3);
	opacity: .75;
	-webkit-animation: scanline 6s linear infinite;
	animation: scanline 6s linear infinite;
}

.scanlines:after {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2147483648;
	background: -webkit-linear-gradient(top, transparent 50%, rgba(0, 0, 0, .3) 51%);
	background: linear-gradient(180deg, transparent 50%, rgba(0, 0, 0, .3) 51%);
	background-size: 100% 4px;
	-webkit-animation: scanlines 1s steps(60) infinite;
	animation: scanlines 1s steps(60) infinite
}


















/*** 404
==================================*/

.holder404 {
	max-width:80vw;
	-webkit-flex:2;
	flex:2;
}


























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

.contact.overview {
	background:#212121;
}


.contact.overview h1 {
	color:#fff;
}



.contact.overview p {
	color:#a8a8a8;
	text-transform:none;
	font-size:13px;
	line-height:18px;
}

.contact.overview p..-email  {
	color:#ffd747;
	text-transform:uppercase;
	margin-top:12px;
	font-size:16px;
	line-height:22px;
	-webkit-column-count: 2; 
    -moz-column-count: 2; 
    column-count: 2;
}

.overview p a {
	outline:none;
	display:block;
}

.contact.overview .directors h1 {
	font-size:18px;
	line-height:24px;
}

.contact.overview p.member-list {
    max-width: 100%;
    margin: 0px auto 6px auto;
	display:block;
	font-size:15px;
	line-height:20px;
	color:#fff;
}

p.member-list:first-of-type {
    margin-top: 24px !important;
}

.member-list .name ,
.member-list .title {
	text-transform:uppercase;
	background:#212121;
	display:inline-block;
	position:relative;
	z-index:10;
}

.member-list .title {
	padding-left:8px;
}

.member-list .name {
	color:#ffd747;	
	padding-right:8px;
}

.member-list .dots {
	background:url('images/dots.png') 0 11px repeat-x; 
	min-width:50%;
	display:inline-block;
}

.member-list .title {
}

.the-end {
	/*
	background:url('images/theend.gif') center center no-repeat;
	background-size:cover; 
	*/
}


.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:slideRight .4s forwards;
		animation:slideRight .4s forwards;
	}

	.logo-image.animation {
		-webkit-animation:fadeIn .4s .2s forwards;
		animation:fadeIn .4s .2s forwards;
	}

	.logo-type.animation {
		-webkit-animation:fadeIn .4s .4s forwards;
		animation:fadeIn .4s .4s forwards;
	}

	h5.tagline.animation,
	h5.locations.animation {
		-webkit-animation:fadeInHalf .4s .6s forwards;
		animation:fadeInHalf .4s .6s forwards;
	}

	.intro-container .span50.animation {
		-webkit-animation:slideUp .4s .8s forwards;
		animation:slideUp .4s .8s forwards;
	}

	.title-holder h1.animation, 
	.left-time.animation, 
	.right-time.animation {
		-webkit-animation:fadeIn .2s .5s forwards;
		animation:fadeIn .2s .5s forwards;
	}

	.toggle-more.animation {
		-webkit-animation:slideLeft .4s .2s forwards;
		animation:slideLeft .4s .2s forwards;
	}

	.toggle-next.animation {
		-webkit-animation:slideUp .4s .2s forwards;
		animation:slideUp .4s .2s forwards;
	}

	.hero-image.animation {
		-webkit-animation:slideLeft .4s forwards;
		animation:slideLeft .4s forwards;
	}
	
	.active-slide.toggled i.arrow-lead {
		-webkit-animation: arrowLead 8s ease infinite;
		animation: arrowLead 8s linear infinite;
	}

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

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

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

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

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

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

	@-webkit-keyframes fadeIn {
		from 	{ opacity:0.0; }
		to		{ opacity:1.0; }
		}

	@-keyframes fadeIn {
		from 	{ opacity:0.0; }
		to		{ opacity:1.0; }
	}

	@-webkit-keyframes fadeInHalf {
		from 	{ opacity:0.0; }
		to		{ opacity:0.6; }
		}

	@-keyframes fadeInHalf {
		from 	{ opacity:0.0; }
		to		{ opacity:0.6; }
	}
	
	@-webkit-keyframes arrowLead {
		0% 		{ opacity:0.0; top:0; }
		10%		{ opacity:1.0; top:10%; }
		90%		{ opacity:1.0; top:90%; }
		100%	{ opacity:0.0; top:100%; }
	}

	@-keyframes arrowLead {
		0% 		{ opacity:0.0; top:0; }
		10%		{ opacity:1.0; top:10%; }
		90%		{ opacity:1.0; top:90%; }
		100%	{ opacity:0.0; top:100%; }
	}


	@-webkit-keyframes scanline {
		0% {
			-webkit-transform: translate3d(0, 200000%, 0);
			transform: translate3d(0, 200000%, 0)
		}
	}

	@keyframes scanline {
		0% {
			-webkit-transform: translate3d(0, 200000%, 0);
			transform: translate3d(0, 200000%, 0)
		}
	}

	@-webkit-keyframes scanlines {
		0% {
			background-position: 0 50%
		}
	}

	@keyframes scanlines {
		0% {
			background-position: 0 50%
		}
	}

	@-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:1080px) {
	

hr {
	margin:36px 0px;
}
	
h5.locations {
	display:none;
}

.hero.flex-container {
	-webkit-flex-direction:column;
	flex-direction:column;
}

.hero-container {
	max-height:80vh;
	max-width:100vw;
	width:100vw;
	-webkit-flex:3;
	flex:3;
}

.intro-container {
    max-height: 40vh;
    max-width: 100vw;
}

.title-frame h4 {
    font-size: 120px; 
    line-height: 140px;
}

.title-frame h1 {
    padding-right:0px;
	font-size:32px;
	line-height:40px;
	margin:0px auto;
}

.overview h1, .details h1 {
    font-size: 34px;
    line-height: 38px;
}

.services.overview p.sub-services {
    font-size: 13px;
    line-height: 18px;
}

.overview p, .details p, .services.overview p {
    font-size: 14px;
    line-height: 18px;
	margin:18px auto;
}

.contact.overview p.member-list {
   font-size:13px;
   line-height:18px;
}





}
@media ALL and (max-aspect-ratio: 13/16) {


body.noscroll {
    overflow:scroll !important;
    height: auto;
}

.flex-container {
	flex-direction:column;
}	

.container.flex-container {
    min-height: 100vh;
}

header {
    padding: 0 1rem;
}

.logo-holder,
.title-holder,
.overview {
	align-items:flex-end;
	max-width:100vw;
	max-height:50vh;
}

.nav-holder,
.subnav-holder {
	max-width:100vw;
	max-height:50vh;
	align-items:flex-start;
}

.hero-image {
	max-width:100vw;
	max-height:50vh;
}

.details {
	max-height:0vh;
	max-width:100vw;
}

.title-holder .span100 {
	max-width:60%;
	text-align:center;
}

.subnav-holder .span60  {
	max-width:60%;
}

.container.flex-container.work-container, 
.container.flex-container.services-container {
    height: auto;
    max-height: unset;
}



.overview {
	border-right:0px;
	border-bottom:4px #ffd747 solid;
}

ul.menu li a {
	font-size:18px;
	line-height:22px;
	padding: 9px 14px;
}

a.toggle-more, a.toggle-next {
    font-size: 36px;
    line-height: 36px;
}

.container.toggled .overview {
    max-height: 0vw;
    padding: 0px !important;
}

.container.toggled .flex-box.hero-image {
	height: auto;
	border-bottom: 6px #ffd747 solid;
	aspect-ratio: 1 / 1;
	width: 100%;
}

.container.toggled .details {
    border-left: 0px;
    padding: 0px;
    max-width: 100vw;
    max-height: none;
    overflow: scroll;
}

.details-added hr:first-of-type {
    display: none;
}

.container.toggled .overlay {
	padding: 16px 16px 48px 16px;
	position: relative;
	top: 0;
	left: 0;
	height: auto;
	overflow-x: hidden;
	overflow-y: scroll;
	max-height: unset;
	width: 100vw;
	transform: translate3d(0, 0, 0);
}

a.youtube-url {
	display:block;
	position:absolute;
	top:0; left:0;
	width:100%;
	height:100%;
	z-index:50;
}




[data-container-name="lycra"] .hero-image {
	background-position:top center !important;
}

[data-container-name="hannibal-buress"] .hero-image {
    background-position: top center !important;
}

.flex-container.the-end {
	background-size:100% auto !important;
}

.active-slide.toggled i.arrow-lead {
	display:none;
}
	
	
	
	
}

@media all and (max-width:768px) {
	
div[class*='span'] {
    float: none;
    padding: 0px;
}

.hero-image {
	align-items:flex-start;
}

.tiny-squatch, .slide-counter {
	display:none;
}

hr {
	margin:24px 0px;
	border-width:4px;
}
	
.logo-holder .logo-image img {
    max-width: 140px;
}
	
a.logo-image img {
	max-width:200px;
}

ul.social-menu li a {
    font-size: 1rem;
	padding: 1rem;
	border: 0px;
}

.intro-container {
	display:none;
}

.hero-container {
	max-height:100vh;
}

a.toggle-play {
	display:none;
}

h2.logo-type {
    font-size: 14px;
    line-height: 20px;
    margin: 8px auto;
}
	
.title-frame h4 {
    font-size: 48px;
    line-height: 60px;
}

.overview h1, 
.details h1 {
    font-size: 24px;
    line-height: 28px;
    margin-bottom: 4px;
}

.overview h2 {
	font-size:12px;
	line-height:18px;
}

.overview p, 
.details p, 
.services.overview p,
.details p.sub-services {
    font-size: 12px;
    line-height: 16px;
	margin:8px auto;
}

.directors, .member-list {
	display:none !important;
}

.overview p:not(.sub-services):not(.phone-email):not(.address):not(.services-provided) {
	display:none;
}

.contact.overview p.phone-email {
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
}

.contact.overview p {
    font-size: 12px;
    line-height: 16px;
}

.contact.overview p.copyright {
	font-size:8px; 
	line-height:10px;
}
		
	
	
}
@media all and (max-width:480px) {
	



	
h5.tagline {
	display:none;
}

.video-background.playing {
	opacity:0.0; 
}

.title-holder .span100 {
    max-width: 100%;
}

.subnav-holder .span60 {
    max-width: 100%;
    width: 100%;
}

.flex-box:not(.details) {
	padding:12px !important;
}

a.toggle-mute, a.toggle-play {
	display:none;
}

a.toggle-play {
	top:12px;
	left:12px; 
}

p.services-provided {
    column-count: 2;
}
	
	
	
}
/**** MEDIA QUERIES *****/
/**** MEDIA QUERIES *****/
/**** MEDIA QUERIES *****/


