/*!
Theme Name: PROWEB
Theme URI: http://underscores.me/
Author: PROWEB
Author URI: https://www.proweb.gr/
Description: PROWEB Digital Agency
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: proweb
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

PROWEB is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
# Custom
	## General Styles
	## Template
		### Header Styles
		### Footer Styles
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/* normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

 html {
	scroll-behavior: smooth;  
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
}
body, html {
    width: 100%;
    margin: 0;
	padding: 0;
	display: block;
	overflow-x: hidden;
}
* {
	box-sizing: border-box;
  }

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
	margin: 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
	box-sizing: content-box; /* 1 */
	height: 0; /* 1 */
	overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
	background-color: transparent;
	text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
	border-bottom: none; /* 1 */
	text-decoration: underline; /* 2 */
	text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */

legend {
	box-sizing: border-box; /* 1 */
	color: inherit; /* 2 */
	display: table; /* 1 */
	max-width: 100%; /* 1 */
	padding: 0; /* 3 */
	white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}


input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  border-bottom: 2px solid #000;
  -webkit-text-fill-color: #000;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
  transition: background-color 5000s ease-in-out 0s;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
	display: none;
}

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

h1, h2, h3, h4, h5, h6 {
	clear: both;
	margin: 0 0 15px;
}
p {
	margin: 0 0 15px;
}

dfn, cite, em, i {
	font-style: italic;
}

blockquote {
	margin: 10px 30px;
	padding: 20px 0;
    position: relative;
}
blockquote * {
	margin: 0;
	font-size: 20px !important;
	font-weight: 700 !important;
}
blockquote:before {
    content: "";
    display: inline-block;
    position: absolute;
	left: -30px;
	top: 0;
    width: 10px;
    height: 100%;
    background: #79af25;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: none;
}

mark, ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

::-moz-selection { background: #79af25; color: #fff; }
::selection { background: #79af25; color: #fff; }

*,
*:before,
*:after {
	/* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #fff;
	/* Fallback for when there is no custom background color defined. */
}

hr {
    background-color: #79af25;
    border: 0;
    height: 1px;
    margin: 1.5em 0;
}

ul, ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul > li.list-item {
	padding: 0 0 0 15px;
	position: relative;
}
ul > li.list-item:before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 5px;
	position: absolute;
	left: 0;
    top: 17px;
	background-color: #79af25;
	border-radius: 50%;
}
ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto;
	/* Make sure images are scaled correctly. */
	max-width: 100%;
	/* Adhere to container width. */
}

figure {
	margin: 1em auto;
	/* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: transparent;
	color: rgba(0, 0, 0, 0.8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color:#000000;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #000;
	border-width: 0px 0px 2px 0px;
	border-color: #000;
	padding: 3px;
	background-color: transparent;
	outline: none;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
	outline: none;
}

select {
	border-width: 0px 0px 2px 0px;
	border-color: #000;
	padding: 3px;
    outline: 0;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/

.header-info-holder a:hover {
	text-decoration: underline;
}
.links-ani a {
	text-decoration: none;
	display: inline-block;
	position: relative;
	overflow: hidden;
}
.links-ani a:before {
	content: "";
	display: block;
	position: absolute;
	height: 1px;
	width: 100%;
	bottom: 0;
	transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
	transition-delay: 0.5s;
	-ms-transform: translateX(-150%);
    -webkit-transform: translateX(-150%);
	transform: translateX(-150%);
	background: #fff;
}
.links-ani a:hover:before {
	transform: translateX(0);
}

a:focus {
	outline: none;
}
a:hover, a:active {
	outline: 0;
}

/* Main Link Animation */

.project-title a,
.mla, .emf {
	position: relative;
	overflow: hidden;
	z-index: 1;
	display: inline-block;
	vertical-align: bottom;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
/* .main-navigation {
	clear: both;
	display: block;
	width: 100%;
}
.main-navigation ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
}
.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}
.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}
.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}
.main-navigation ul ul a {
	width: 200px;
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}
.main-navigation a {
	display: block;
	text-decoration: none;
}


.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
} */

.main-navigation {
	clear: both;
	display: block;
	width: 100%;
}
.main-navigation ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
}
.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}
.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}
.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}
.main-navigation ul ul a {
	width: 200px;
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}
.main-navigation a {
	display: block;
	text-decoration: none;
}


.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
	margin: 80px 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	text-align: right;
	float: right;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: left;
	text-align: left;
	width: 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
	/* Make sure select elements fit in widgets. */
}

.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block;
}
.updated:not(.published) {
	display: none;
}
.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	/* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
	font-size: 12px;
	line-height: 1.4;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
	position: relative;
	overflow: hidden;
}
.gallery-item .gallery-icon {
	padding-top: 100%;
	position: relative;
}
.gallery-item .gallery-icon a {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
#post-content .gallery-item img {
	width: auto;
	height: 100%;
}
.gallery-item img {
	width: auto;
	height: 100%;
	position: absolute;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}


/*--------------------------------------------------------------
# Custom
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## General Styles
--------------------------------------------------------------*/

/* Font Declaration */

@font-face {
    font-family: 'Gotham-Black';
    src: url('fonts/GothamGreek-Black.eot'); /* IE9 Compat Modes */
    src: url('fonts/GothamGreek-Blackd41d.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('fonts/GothamGreek-Black.html') format('woff2'),
		url('fonts/GothamGreek-Black.woff') format('woff'), /* Pretty Modern Browsers */
		url('fonts/GothamGreek-Black.ttf')  format('truetype'), /* Safari, Android, iOS */
		url('fonts/GothamGreek-Black.svg#svgFontName') format('svg'); /* Legacy iOS */
}

@font-face {
    font-family: 'Gotham-Book';
    src: url('fonts/GothamGreek-Book.eot'); /* IE9 Compat Modes */
    src: url('fonts/GothamGreek-Bookd41d.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
        url('fonts/GothamGreek-Book.html') format('woff2'),
        url('fonts/GothamGreek-Book.woff') format('woff'), /* Pretty Modern Browsers */
        url('fonts/GothamGreek-Book.ttf')  format('truetype'), /* Safari, Android, iOS */
        url('fonts/GothamGreek-Book.svg#svgFontName') format('svg'); /* Legacy iOS */
}

@font-face {
    font-family: 'Gotham-Thin';
    src: url('fonts/Gotham-Thin.eot'); /* IE9 Compat Modes */
    src: url('fonts/Gotham-Thind41d.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('fonts/Gotham-Thin.html') format('woff2'), /* Super Modern Browsers */
		url('fonts/Gotham-Thin.woff') format('woff'), /* Pretty Modern Browsers */
		url('fonts/Gotham-Thin.ttf')  format('truetype'), /* Safari, Android, iOS */
		url('fonts/Gotham-Thin.svg#svgFontName') format('svg'); /* Legacy iOS */
}

@font-face {
    font-family: 'PFRegal-Medium';
    src: url('fonts/PFRegalDisplayPro-Medium.eot'); /* IE9 Compat Modes */
    src: url('fonts/PFRegalDisplayPro-Mediumd41d.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('fonts/PFRegalDisplayPro-Medium.html') format('woff2'),
		url('fonts/PFRegalDisplayPro-Medium.woff') format('woff'), /* Pretty Modern Browsers */
		url('fonts/PFRegalDisplayPro-Medium.ttf')  format('truetype'), /* Safari, Android, iOS */
		url('fonts/PFRegalDisplayPro-Medium.svg#svgFontName') format('svg'); /* Legacy iOS */
}

@font-face {
    font-family: 'PFRegal-Italic';
    src: url('fonts/PFRegalDisplayPro-Italic.eot'); /* IE9 Compat Modes */
    src: url('fonts/PFRegalDisplayPro-Italicd41d.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('fonts/PFRegalDisplayPro-Italic.html') format('woff2'),
		url('fonts/PFRegalDisplayPro-Italic.woff') format('woff'), /* Pretty Modern Browsers */
		url('fonts/PFRegalDisplayPro-Italic.ttf')  format('truetype'), /* Safari, Android, iOS */
		url('fonts/PFRegalDisplayPro-Italic.svg#svgFontName') format('svg'); /* Legacy iOS */
}

/* Fonts */

.goth-black {
	font-family: 'Gotham-Black',Helvetica,Arial,sans-serif;
}
.goth-book {
	font-family: 'Gotham-Book',Helvetica,Arial,sans-serif;
}
.goth-thin {
	font-family: 'Gotham-Thin',Helvetica,Arial,sans-serif;
}
.regal-it {
	font-family: 'PFRegal-Italic',Helvetica,Arial,sans-serif;
}
.regal-mid {
	font-family: 'PFRegal-Medium',Helvetica,Arial,sans-serif;
}
html {
    font-family: 'Gotham-Book',Helvetica,Arial,sans-serif;
    font-weight: 400;
    font-style: normal;
    font-display: auto;
    color: #e2e2e2;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    touch-action: manipulation;
	overflow-x: hidden;
}
p,
a,
div,
li,
body,
button,
input,
select,
optgroup,
textarea {
	font-family: 'Gotham-Book',Helvetica,Arial,sans-serif;
	color: #000;
	font-size: 18px;
	line-height: 24px;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Gotham-Black',Helvetica,Arial,sans-serif;
	font-weight: 900;
}
.big_title {
	font-family: 'Gotham-Black',Helvetica,Arial,sans-serif;
    font-size: 95px;
	line-height: 85px;
	font-weight: 900;
}
.bolder {
	font-family: 'Gotham-Black',Helvetica,Arial,sans-serif;
	font-weight: 900;
}
.big_text {
    font-size: 32px;
    line-height: 21px;
}
.text-outline {
	-webkit-text-stroke-width: 2px;
	-webkit-text-stroke-color: white;
}
.strong {
	font-weight: 700;
}
.section-title {
	letter-spacing: 1em;
}
.fs-12 {font-size: 12px;}
.fs-16 {font-size: 16px;}
.fs-18 {font-size: 18px;}
.fs-20 {font-size: 20px;}
.fs-24 {font-size: 24px;}
.fs-28 {font-size: 28px;}
.fs-32 {font-size: 32px;}
.fs-33 {font-size: 33px;}
.fs-37 {font-size: 37px;}
.fs-40 {font-size: 40px;}
.fs-54 {font-size: 54px;}
.fs-66 {font-size: 66px;}
.fs-90 {font-size: 90px;}
.fs-100 {font-size: 100px;}

.lh-08 {line-height: 0.8;}
.lh-1 {line-height: 1;}
.lh-12 {line-height: 1.2;}
.lh-15 {line-height: 1.5;}
.lh-2 {line-height: 2;}
.lh-3 {line-height: 3;}
.lh-24 {font-size: 24px;}
.lh-26 {line-height: 26px;}
.lh-34 {line-height: 34px;}
.lh-32 {line-height: 32px;}
.lh-44 {line-height: 44px;}
.lh-56 {line-height: 56px;}
.lh-94 {line-height: 94px;}

.ls--1 {letter-spacing: -1px;}
.ls--3 {letter-spacing: -3px;}
.ls-1 {letter-spacing: 1px;}

.uppercase {
	text-transform: uppercase;
}

.list-inline {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
.list-inline li {
	display: inline-block;
	padding: 0 10px;
}
.list-inline li:first-child {
	padding: 0 10px 0 0;
}
.stroked {
    -moz-text-fill-color: transparent;
    -webkit-text-fill-color: transparent;
    -moz-text-stroke-color: #000;
    -webkit-text-stroke-color: #000;
    -moz-text-stroke-width: 1.2px;
    -webkit-text-stroke-width: 1.2px;
}

/* General */

.vert-middle {
	top: 50%;
	-ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.abs {position: absolute;}
.abs-lt {
	position: absolute;
	left: 0;
	top: 0;
}
.abs-rt {
	position: absolute;
	right: 0;
	top: 0;
}
.abs-lb {
	position: absolute;
	left: 0;
	bottom: 0;
}
.abs-rb {
	position: absolute;
	right: 0;
	bottom: 0;
}
.abs-center {
	position: absolute;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.abs-tl {
	position: absolute;
	left: 50%;
	-ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.abs-bl {
	position: absolute;
	bottom: 5%;
	left: 50%;
	-ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.abs-mr {
	position: absolute;
	top: 50%;
	right: 0;
	-ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.abs-ml {
	position: absolute;
	top: 50%;
	left: 0;
	-ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.no-scroll {
	overflow: hidden;
}
.fixed {
	position: fixed;
}
.relative {
	position: relative;
}
.go-right {
	margin-left: auto;
}
.go-center {
	margin: 0 auto;
}
.float-left {
	float: left;
}
.float-right {
	float: right;
}

.fill-dimentions {
	width: 100%;
	height: 100%;
}
.full-width {
	width: 100%;
}
.full-height {
	height: 100%;
}

.ta-center {
	text-align: center;
}
.ta-left {
	text-align: left;
}
.ta-right {
	text-align: right;
}
.ta-justify {
	text-align: justify;
	display: block;
}

.z--1 {z-index: -1;}
.z-0 {z-index: 0;}
.z-1 {z-index: 1;}
.z-2 {z-index: 2;}
.z-10 {z-index: 10;}
.z-20 {z-index: 20;}
.z-100 {z-index: 100;}
.z-200 {z-index: 200;}
.z-998 {z-index: 998;}
.z-999 {z-index: 999;}

.hidden {
	opacity: 0;
}
.display-none {
	display: none;
}
.overflow {
	overflow: hidden;
}
.display--inline {
	display: inline-block;
}
.display--inline-top {
	display: inline-block;
	vertical-align: top;
}
.display--inline-mid {
	display: inline-block;
	vertical-align: middle;
}
.display--flex {
	display: inline-flex;
}
.display--block {
	display: block;
}
.pe-none {
	pointer-events: none;
}
.pe-all {
	pointer-events: all;
}
.general-bg {
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}
.no-margin {
	margin: 0;
}

/* Colors */

.main-color {
	color: #000;
}
.color-white p,
.color-white a,
.color-white {
	color: #fff;
}
.color-blue {
	color: #7378d4;
}
.color-pink {
	color: #79af25;
}
.bg-black {
	background: #000;
}
.bg-white {
	background: #fff;
}
.bg-crem {
	background:#f0f0f0;
}
.bg-blue {
	background: #7378d4;
}

/* Scrollbar */

/* body::-webkit-scrollbar {
    width: 0;
} */

/* Grid */

.grid {
	width: 92%;
	margin: 0 auto;
}
.gutter {
	margin: 0 20px;
}
.block-10 {
	width: 10%;
}
.block-20 {
	width: 20%;
}
.block-25 {
	width: 25%;
}
.block-30 {
	width: 30%;
}
.block-33 {
	width: 33.33333%;
}
.block-40 {
	width: 40%;
}
.block-42 {
	width: 42%;
}
.block-50 {
	width: 50%;
}
.block-60 {
	width: 60%;
}
.block-66 {
	width: 66.66667%;
}
.block-70 {
	width: 70%;
}
.block-73 {
	width: 73%;
}
.block-80 {
	width: 80%;
}

/* Animations */

.delay-1 {
	-webkit-transition-delay: 0.1s !important;
    -o-transition-delay: 0.1s !important;
    transition-delay: 0.1s !important;
}
.delay-2 {
	-webkit-transition-delay: 0.2s !important;
    -o-transition-delay: 0.2s !important;
    transition-delay: 0.2s !important;
}
.delay-3 {
	-webkit-transition-delay: 0.3s !important;
    -o-transition-delay: 0.3s !important;
    transition-delay: 0.3s !important;
}
.delay-4 {
	-webkit-transition-delay: 0.4s !important;
    -o-transition-delay: 0.4s !important;
    transition-delay: 0.4s !important;
}
.delay-8 {
	-webkit-transition-delay: 0.4s !important;
    -o-transition-delay: 0.4s !important;
    transition-delay: 0.4s !important;
}
.delay-10 {
	-webkit-transition-delay: 1s !important;
    -o-transition-delay: 1s !important;
    transition-delay: 1s !important;
}

/* Page Helpers */

#content {
	min-height: 100vh;
	width: 100%;
}
.full-screen {
	width: 100%;
	height: 100vh;
}
#page {
	display: block;
	width: 100%;
	position: relative;
}

/*--------------------------------------------------------------
## Template
--------------------------------------------------------------*/

/* Cursor */

html, *:hover, input[type="submit"]:hover, #slb_viewer_wrap .slb_theme_slb_baseline .slb_template_tag_ui:hover {
	cursor: none;
}
.cursor {
	position: fixed;
	background-color: #79af25;
	border: 1px solid #79af25;
	width: 16px;
	height: 16px;
	border-radius: 8px;
	z-index: 1;
	transition: 0.3s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform, 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity, 0.3s cubic-bezier(0.75, -0.27, 0.3, 1.33) background;
	user-select: none;
	pointer-events: none;
	z-index: 100000;
	transform: scale(1);
}
.cursor.active {
	opacity: 1;
	transform: scale(3);
	background-color: transparent;
}
.cursor.menu-active {
	opacity: 1;
	transform: scale(2);
}
.cursor.hovered {
	opacity: 1;
}
.cursor.white-cursor {
	background-color: #fff;
	border: 1px solid #fff;
}
.cursor.black-cursor {
	background-color: #000;
	border: 1px solid #000;
}
.cursor.white-cursor.active,
.cursor.black-cursor.active {
	background-color: transparent;
}
.cursor-follower {
	/* position: fixed;
	border: 1px solid #79af25;
	width: 30px;
	height: 30px;
	border-radius: 100%;
	z-index: 1;
	transition: 0.3s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform, 0.3s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity, 0.3s cubic-bezier(0.75, -0.27, 0.3, 1.33) background;
	user-select: none;
	pointer-events: none;
	z-index: 10000;
	transform: translate(0, 0) scale(0); */
	display: none;
}
.cursor-follower.active {
	/* opacity: 1;
	transform: scale(2); */
}
.cursor-follower.menu-active {
	/* opacity: 1;
	transform: scale(2); */
}
.cursor-follower.hovered {
	/* opacity: 1; */
}

/* Global SVG Styles */

.wdy0{fill:#FFFFFF;}
.wdy1{fill:#79af25;}

.fill-black {fill: #000;}
.fill-white {fill: #fff;}

.svg-fill-black path {fill: #000;}

.serv0{opacity:0.1;}
.serv1{fill:#FFFFFF;}
.serv2{fill:#3A3A3A;}
.serv3{fill:#303030;}
.serv4{opacity:0.5;}
.serv5{opacity:0.15;}
.serv6{opacity:0.2;}
.serv7{fill:#2D2D2D;}
.serv8{opacity:0.4;}
.serv9{opacity:0.3;}
.serv10{opacity:0.22;}
.serv11{opacity:0.21;fill:#FFFFFF;}
.serv12{fill:#A5A5A5;}

.absvg0{fill:#FFFFFF;stroke:#010101;stroke-miterlimit:10;}
.absvg1{opacity:0.3;}
.absvg2{fill:#B0B0B0;stroke:#010101;stroke-miterlimit:10;}
.absvg3{opacity:0.2;fill:#010101;}
.absvg4{opacity:0.5;fill:#010101;}
.absvg5{fill:#434343;}
.absvg6{opacity:0.2;}
.absvg7{fill:#010101;}
.absvg8{fill:#9F9F9F;}
.absvg9{fill:#0C0C0C;}
.absvg10{fill:#E9E1D7;}
.absvg11{fill:none;stroke:#010101;stroke-miterlimit:10;}
.absvg12{opacity:0.5;fill:none;stroke:#010101;stroke-miterlimit:10;}
.absvg13{fill:none;stroke:#010101;stroke-width:8;stroke-miterlimit:10;}
.absvg14{opacity:0.4;fill:#010101;}
.absvg15{fill:#FFFFFF;}
.absvg16{fill:#212121;}
.absvg17{fill:#2B2B2B;}
.absvg18{opacity:0.1;fill:#FFFFFF;}
.absvg19{opacity:0.2;fill:#FFFFFF;}
.absvg20{opacity:0.56;}
.absvg21{fill:#1B1611;}
.absvg22{clip-path:url(#XMLID_2_);fill:#C7C6C5;stroke:#000000;stroke-width:0.5;stroke-miterlimit:10;}
.absvg23{clip-path:url(#XMLID_2_);fill:#EDEDEE;stroke:#000000;stroke-width:0.5;stroke-miterlimit:10;}
.absvg24{clip-path:url(#XMLID_2_);fill:#FFFFFF;stroke:#000000;stroke-width:0.5;stroke-miterlimit:10;}
.absvg25{clip-path:url(#XMLID_2_);fill:#010101;}
.absvg26{opacity:0.67;clip-path:url(#XMLID_2_);fill:#DBDADA;}
.absvg27{fill:none;stroke:#000000;stroke-miterlimit:10;}
.absvg28{clip-path:url(#XMLID_3_);fill:#C7C6C5;stroke:#000000;stroke-width:0.5;stroke-miterlimit:10;}
.absvg29{clip-path:url(#XMLID_3_);fill:#EDEDEE;stroke:#000000;stroke-width:0.5;stroke-miterlimit:10;}
.absvg30{clip-path:url(#XMLID_3_);fill:#FFFFFF;stroke:#000000;stroke-width:0.5;stroke-miterlimit:10;}
.absvg31{clip-path:url(#XMLID_3_);fill:#010101;}
.absvg32{opacity:0.67;clip-path:url(#XMLID_3_);fill:#DBDADA;}
.absvg33{fill:#292929;stroke:#010101;stroke-width:3;stroke-miterlimit:10;}
.absvg34{fill:#FFFFFF;stroke:#000000;stroke-miterlimit:10;}
.absvg35{fill:none;stroke:#000000;stroke-width:3;stroke-miterlimit:10;}
.absvg36{fill:none;stroke:#000000;stroke-width:2;stroke-miterlimit:10;}
.absvg37{opacity:0.6;}
.absvg38{opacity:0;fill:#010101;}
.absvg39{opacity:0;}
.absvg40{fill:#1C1A1B;}
.absvg41{fill:#312E2F;}
.absvg42{opacity:0.5;}
.absvg43{fill:#737374;}
.absvg44{opacity:0.5;fill:#434343;}

.cont0{fill:#010101;}
.cont1{fill:#8B8B8B;}
.cont2{opacity:0.3;}
.cont3{fill:#353635;}
.cont4{fill:#C3C3C3;}
.cont5{fill:#9C9C9D;}
.cont6{fill:#FFFFFF;}
.cont7{fill:#FFFFFF;stroke:#231F20;stroke-miterlimit:10;}
.cont8{fill:#7E7F81;}
.cont9{fill:#282828;}
.cont10{fill:#232323;}
.cont11{fill:none;stroke:#010101;stroke-miterlimit:10;}
.cont12{fill:#CCCCCC;}
.cont13{opacity:0.1;fill: #ededed;}
.cont14{fill:#191919;}

.htbg0{fill:#D8D8D8;}
.htbg1{opacity:0.3;fill:#222222;}
.htbg2{opacity:0.7;fill:#222222;}
.htbg3{fill:#818181;}
.htbg4{opacity:0.72;fill:#222222;}
.htbg5{fill:#0A0A0A;}
.htbg6{fill:#FFFFFF;stroke:#000000;stroke-width:2;stroke-miterlimit:10;}
.htbg7{fill:#1B1B1B;}
.htbg8{opacity:0.5;fill:#505050;}
.htbg9{fill:#E2E2E2;}
.htbg10{fill:#222222;}
.htbg11{opacity:0;fill:#0A0A0A;}
.htbg12{opacity:0.53;}
.htbg13{fill:#232323;}
.htbg14{opacity:0.5;}
.htbg15{fill:#FFFFFF;}
.htbg16{fill:#F8F8F8;}
.htbg17{fill:none;stroke:#000000;}
.htbg18{opacity:0.5;fill:#222222;}

.white-fill{fill:#fff;}

.close-eyes {
	transition: opacity 5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
	-webkit-animation: eyes-close 5s infinite cubic-bezier(0.280, 0.840, 0.420, 1);
	animation: eyes-close 5s infinite cubic-bezier(0.280, 0.840, 0.420, 1);
}
@keyframes eyes-close {
	0% {
		opacity: 0;
	}
	48% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	52% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

.wdy-we,
.wdy-design,
.wdy-you,
.wdy-dot {
	opacity: 0;
	-ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
	transition: all 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.home-cta.active .wdy-we,
.home-cta.active .wdy-design,
.home-cta.active .wdy-you,
.home-cta.active .wdy-dot {
	opacity: 1;
	-ms-transform: translateY(0);
    -webkit-transform: translateY(0);
	transform: translateY(0);
}
.home-cta .wdy-design path {
	transition: all 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.home-cta .block-60:hover .wdy-design {
	-ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
}
.home-cta .block-60:hover .wdy-design path {
	fill: #79af25;
}
.project__logo {
    max-height: 220px;
    width: auto;
}
.project-taxonomy .project__logo {
	max-height: 100px;
}
.project-taxonomy .project-categories .additional-cat {
    font-size: 16px;
	line-height: 1.5;
}
.single-post-holder .project-categories .additional-cat {
	padding: 0 10px;
}
.main-trans {
	-moz-transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    -o-transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    -webkit-transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
}
.long-trans {
	-moz-transition: all 1s cubic-bezier(0.16, 0.01, 0.77, 1);
    -o-transition: all 1s cubic-bezier(0.16, 0.01, 0.77, 1);
    -webkit-transition: all 1s cubic-bezier(0.16, 0.01, 0.77, 1);
    transition: all 1s cubic-bezier(0.16, 0.01, 0.77, 1);
}

/*--------------------------------------------------------------
### Header Styles
--------------------------------------------------------------*/
/* Header General */

#masthead {
	position: fixed;
	width: 100%;
	z-index: 900;
	padding: 0;
	background: #000;
	height: 65px;
	left: 0;
	top: 0;
}
.menu-buttons {
    width: 100px;
}

/* Logo */

.site-branding svg {
    display: block;
    height: 50px;
}
.site-branding svg * {
	transition: transform 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.site-branding path {
	fill: #fff;
}
.site-branding:hover #XMLID_8_ {
	-ms-transform: translateX(2px);
    -webkit-transform: translateX(2px);
	transform: translateX(2px);
}
.site-branding:hover #XMLID_9_ {
	-ms-transform: translateX(-2px);
    -webkit-transform: translateX(-2px);
	transform: translateX(-2px);
}

/* Header Info */

.header-info-holder {
    width: 350px;
    margin-right: 40px;
}
.header-info-holder a {
	color: #fff;
	font-size: 14px;
	line-height: 2;
	display: inline-block;
	background: #000;
	padding: 0 10px;
}
.header-info-line {
	width: 100%;
	height: 1px;
	background-color: #fff;
	z-index: -1;
}
.menu-project-link a {
	font-size: 30px;
	text-align: center;
	display: inline-block;
	padding: 20px;
	border: 1px solid #fff;
	transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.menu-project-link a:hover {
	color: #79af25;
	border: 1px solid #79af25;
}
.menu-project-link a:before {
	display: none !important;
}
.menu-project-link strong {
	font-family: 'Gotham-Black',Helvetica,Arial,sans-serif;
    font-size: 60px;
    line-height: 1;
}
.menu-project-link em {
	font-style: normal;
	line-height: 1;
	font-size: 35px;
}
.works-holder .project-row:nth-child(2) .block-50:first-child .project__img-holder.vimeo-holder {
    transform: translate(-50%, -56%);
}

/* Search */

.search-holder {
    width: 35px;
    height: 42px;
}
.search-holder svg {
	position: absolute;
    width: 30px;
    height: auto;
    display: block;
	left: 50%;
	top: 50%;
	transition: transform 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
	-ms-transform: translate(-50%, -50%) scale(1);
    -webkit-transform: translate(-50%, -50%) scale(1);
	transform: translate(-50%, -50%) scale(1);
}
.search-area:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
	background: #fff;
	opacity: 0;
	transition: all 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.search-area:hover:before {
	opacity: 1;
}
.search-area:hover svg path {
	fill: #000;
}
.search-holder:hover svg {
	-ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.search-field-holder {
	z-index: -1;
	padding: 165px 0 40px;
	transition: transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
	-ms-transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}
.search-field-inner {
	max-width: 900px;
}
.search-open .search-field-holder {
	-ms-transform: translateY(0%);
    -webkit-transform: translateY(0%);
	transform: translateY(0%);
}
#masthead .search-overlay {
	pointer-events: none;
	opacity: 0;
	left: 0;
	top: 0;
	background: #000;
}
#masthead.search-open .search-overlay {
	transition: opacity 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
	opacity:0.8;
	pointer-events: all;
}
.search-widget {
	opacity: 0;
	transition: opacity 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.search-open .search-widget {
	opacity: 1;
}
.search-form {position: relative;}
input[type="search"] {
	width: 100%;
	display: inline-block;
	background: transparent;
	line-height: 2;
	padding: 2px 10px;
	border-width: 0px 0px 1px 0px;
	outline: none;
	border-color: #000;
	color: #000;
}
.search-field-holder .search-field-inner {
	width: calc(100% - 50px);
}
.search-field-holder input[type="search"] {
	border-color: #fff;
	color: #fff;
}
.search-field-svg {
	width: 50px;
	height: 40px;
	padding: 4px;
	-moz-transform: translateX(100%);
	-ms-transform: translateX(100%);
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
}
.search-field-svg.fill-black path {
	fill: #000;
}
.search-field-svg svg,
.search-field-svg svg path {
	transition: all 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.search-field-svg.hover svg {
	-moz-transform: translateX(5px);
	-ms-transform: translateX(5px);
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
}
.search-field-svg.hover svg path {
	fill: #79af25;
}
.search-field-svg svg {
	height: 100%;
	width: auto;
}
.search-form input[type="submit"] {
    display: inline-block;
    padding: 0;
    height: 100%;
    position: absolute;
    border: none;
    border-radius: 0px;
    font-size: 0;
	width: 50px;
	outline: none;
	background: transparent;
}
#search-svg-icon-close {
	opacity: 0;
}

/* Burger */

.burger-area:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 10;
	background: #fff;
	opacity: 0;
	transition: all 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.burger-area:hover:before {
	opacity: 1;
}
.burger-holder {
	width: 40px;
	height: 30px;
	-webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s;
}
.b-line {
	height: 1px;
	transform-origin: 50% 50%;
	left: 50%;
	top: 50%;
	border-radius: 1px;
	transition: all 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22);
	mix-blend-mode: screen;
	background: #fff;
}
.burger-area:hover .burger-holder .b-line {
	background: #000;
}
.b-line__mid {
	-ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.b-line__top,
.b-line__bot {
	-ms-transform: translate(-50%, -50%) rotate(0);
    -webkit-transform: translate(-50%, -50%) rotate(0);
	transform: translate(-50%, -50%) rotate(0);
}
.burger-holder.open .b-line {
	background: #fff;
	-webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
}
.burger-holder.open:hover .b-line {
	background: #000;
}
.burger-area:hover .b-line__top,
.burger-area:focus .b-line__top {
	-ms-transform: translate(-50%, -5px);
    -webkit-transform: translate(-50%, -5px);
    transform: translate(-50%, -5px);
}
.burger-area:hover .b-line__mid,
.burger-area:focus .b-line__mid {
	-ms-transform: translate(-70%, -50%);
    -webkit-transform: translate(-70%, -50%);
    transform: translate(-70%, -50%);
}
.burger-area:hover .b-line__bot,
.burger-area:focus .b-line__bot {
	-ms-transform: translate(-50%, 4px);
    -webkit-transform: translate(-50%, 4px);
    transform: translate(-50%, 4px);
}
.burger-holder.open .b-line__mid {
	opacity: 0;
	-ms-transform: translate(-150%, -50%);
    -webkit-transform: translate(-150%, -50%);
    transform: translate(-150%, -50%);
}
.burger-holder.open .b-line__top {
	-ms-transform: translate(-50%, -50%) rotate(40deg);
    -webkit-transform: translate(-50%, -50%) rotate(40deg);
	transform: translate(-50%, -50%) rotate(40deg);
}
.burger-holder.open .b-line__bot {
	-ms-transform: translate(-50%, -50%) rotate(-40deg);
    -webkit-transform: translate(-50%, -50%) rotate(-40deg);
	transform: translate(-50%, -50%) rotate(-40deg);
}
.burger-holder.open:hover .b-line__bot,
.burger-holder.open:focus .b-line__bot {
	-ms-transform: translate(-50%, -50%) rotate(-40deg) scale(0.9);
    -webkit-transform: translate(-50%, -50%) rotate(-40deg) scale(0.9);
	transform: translate(-50%, -50%) rotate(-40deg) scale(0.9);
	
}
.burger-holder.open:hover .b-line__top,
.burger-holder.open:focus .b-line__top {
	-ms-transform: translate(-50%, -50%) rotate(40deg) scale(0.9);
    -webkit-transform: translate(-50%, -50%) rotate(40deg) scale(0.9);
	transform: translate(-50%, -50%) rotate(40deg) scale(0.9);
}

/* Menu */

.menu-holder {
	height: 100vh;
	width: 100%;
	overflow: hidden;

}
.menu-gif-bg,
.menu-bg {
	opacity: 0;
}
.menu-gif-bg {
	background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}
#site-navigation {
	top: 50%;
    position: absolute;
	width: 40%;
	-ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
#primary-menu li {
	overflow: hidden;
}
#primary-menu li a {
	color: #fff;
	font-family: 'Gotham-Black',Helvetica,Arial,sans-serif;
	font-size: 75px;
	line-height: 80px;
	font-weight: 900;
	text-transform: lowercase;
	-ms-transform: translateY(110%);
	-webkit-transform: translateY(110%);
	transform: translateY(110%);
	display: inline-block;
	color: #fff;
	padding: 2px;
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
	position: relative;
}
#primary-menu li a:hover {
	color: #79af25;
	padding-left: 12px;
}
.menu-holder:after, .menu-holder:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 500vw;
    -webkit-transform-origin: bottom left;
    -o-transform-origin: bottom left;
    transform-origin: bottom left;
    will-change: transform;
    -webkit-transition: 1s ease;
    -o-transition: 1s ease;
    transition: 1s ease;
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
body.menu-open .menu-holder:before {
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
}
.menu-holder:before {
    background: #f0f0f0;
    -webkit-transition-delay: 1.08s;
    -o-transition-delay: 1.08s;
    transition-delay: 1.08s;
}
body.menu-open .menu-holder:after, body.menu-open .menu-holder:before {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
}
body.menu-open .menu-holder:after {
    -webkit-transition-delay: .1s;
    -o-transition-delay: .1s;
    transition-delay: .1s;
}
body.menu-open .menu-holder:after, body.menu-open .menu-holder:before {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
}
.menu-holder:after {
    background: #000;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s;
}
.menu-info p {
	opacity: 0;
	-moz-transform: translateY(50px);
	-ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
}
.menu-info * {
	pointer-events: none;
}
.menu-open .menu-info * {
	pointer-events: all;
}

/* COOKIE */

#cookie-law-info-bar {
    top: 50% !important;
	bottom: unset !important;
	left: 50% !important;
	-moz-transform: translate(-50%, -50%) !important;
	-ms-transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
	transform: translate(-50%, -50%) !important;
	width: auto;
    max-width: 400px;
    padding: 160px 40px 40px;
    background: url(images/cookie.png) no-repeat;
    background-position: center 20px;
    background-size: 120px;
}
h5.cli_messagebar_head {
    font-family: 'Gotham-Black',Helvetica,Arial,sans-serif;
    font-size: 70px;
    line-height: 1.2;
}
.cli-plugin-button, .cli-plugin-button:visited, .medium.cli-plugin-button, .medium.cli-plugin-button:visited {
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
	margin-top: 25px;
	transition: all 0.4s linear;
	border: 1px solid #000;
}
.cli-plugin-button:hover, .medium.cli-plugin-button:hover {
	background-color: #79af25 !important;
	color: #000 !important;
}
#cookie-law-info-again {
	right: 20px !important;
}

/* Intro Scene */

.proweb-intro {
	max-height: 100vh;
}
.proweb-intro__logo svg {
	opacity: 0;
	overflow: initial;
}
.proweb-intro__logo path {
	fill: #fff;
}
.logo-full-l {
	transform: rotateX(90deg);
    transform-style: preserve-3d;
    transform-origin: bottom;
}

/* Progress bar */

.progress-container {
	left: 20px;
    top: 58%;
    -ms-transform: rotate(-90deg) translate(0, -50%);
    -webkit-transform: rotate(-90deg) translate(0, -50%);
	transform: rotate(-90deg) translate(0, -50%);
	transform-origin: 0% 0%;
    position: fixed;
	display: inline-flex;
}
.progress-inner {
	display: inline-block;
    width: 70px;
    margin-right: 10px;
}
.progress-bar {
	width: 0%;
    height: 1px;
    background: #818181;
    margin: 12px 0;
    float: right;
}
.progress-bar:before,
.progress-bar:after {
	content: "";
	display: block;
	width: 3px;
	height: 3px;
	-ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	position: absolute;
	top: 50%;
	border-radius: 50%;
	background: #818181;
}
.progress-bar:before {left: 0;}
.progress-bar:after {left: 100%;}
.progress-text {
	font-family: 'Gotham-Book',Helvetica,Arial,sans-serif;
    color: #818181;
    font-size: 14px;
    line-height: 24px;
}
.gtt {
	position: absolute;
	left: 0;
	top: 0;
	-ms-transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	width: 100%;
	text-align: center;
}
.gtt:hover {
	opacity: 1;
	color: #79af25;
}
.progress-container.bottom .gtt {
	-ms-transform: translateY(0%);
    -webkit-transform: translateY(0%);
	transform: translateY(0%);
}
.progress-container.bottom .scroll-tag,
.progress-container.bottom .progress-inner {
	-ms-transform: translateY(100%);
    -webkit-transform: translateY(100%);
	transform: translateY(100%);
}

/* Search */

/*--------------------------------------------------------------
### Footer Styles
--------------------------------------------------------------*/

/* Footer General */

.site-footer {
	padding-top: 50px;
}
.site-footer a {
	font-weight: 400;
}
.site-footer .footer-center__info p:last-child a {
	font-weight: 700;
}
.site-footer a:after,
.site-footer a:before {
	background: #fff;
}
.site-footer p {
	margin-bottom: 0;
}
.site-footer * {
	color: #fff;
}
.footer-top-row {
	padding-bottom: 50px;
}
.footer__title {
	font-size: 24px;
	margin-bottom: 32px;
}
.footer__label {
	font-size: 12px;
	line-height: 24px;
    opacity: 0.5;
	margin-bottom: 0.5rem;
}
.footer__info {
    margin-bottom: 35px;
}
.footer-inner-holder,
.footer-holder {
	padding-bottom: 50px;
}
.subfooter-holder {
	padding: 20px 0;
}
.no-pad-top {
	padding-top: 0 !important;
}
.g-part__img {
	margin-top: 15px;
	height: auto;
	width: auto;
}
.greca-img img {
	width: 160px !important;
}
.social-row {
	margin-bottom: 50px;
}
.social-row .social-icon {
	width: 50px;
	height: 50px;
	border: 1px solid #fff;
	display: inline-block;
	position: relative;
	border-radius: 50%;
	background: #fff;
	color: #fff;
	margin-right: 20px;
	vertical-align: middle;
	transition: all 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.social-row a:last-child .social-icon {
	margin-right: 0;
}
.social-row .social-icon:hover {
	background: #000;
	border: 1px solid #79af25;
}
.social-intro p {
	opacity: 1;
}
.footer-left__intro,
.footer-center__intro,
.footer-right__intro,
.social-intro p:first-child {
	margin-bottom: 30px;
}
.footer-center p.footer-center__intro {
	font-size: 18px;
	line-height: 24px;
}
.footer-center p,
.footer-center a {
	font-size: 14px;
	line-height: 24px;
}
.footer-center p,
.footer-right p,
.social-intro p:last-child {
	margin-bottom: 15px;
}
.pad-right {
	padding-right: 20px;
}
.social-icon svg {
	width: 100%;
	max-width: 24px;
	max-height: 24px;
	transition: all 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22);
	-ms-transform: scale(1) translate(-50%, -50%);
	-webkit-transform: scale(1) translate(-50%, -50%);
	transform: scale(1) translate(-50%, -50%);
	position: absolute;
	left: 50%;
	top: 50%;
	transform-origin: 0% 0%;
}
.social-icon:hover svg {
	-ms-transform: scale(1.2) translate(-50%, -50%);
	-webkit-transform: scale(1.2) translate(-50%, -50%);
	transform: scale(1.2) translate(-50%, -50%);
}
.copyright {
	padding-bottom: 15px;
	left: 20px;
}
.social-icon path {
	fill: #fff;
}
.footer-left__bottom {
	padding: 0 0 20px ;
}
.footer-right__info {
	padding-bottom: 0;
}
.footer-center a,
.footer-right__info a {
	position: relative;
	overflow: hidden;
	display: inline-block;
	vertical-align: bottom;
}
.footer-center a:before,
.footer-right__info a:before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
	height: 1px;
	width: 100%;
	background: #fff;
	-ms-transform: translateX(-105%);
	-webkit-transform: translateX(-105%);
	transform: translateX(-105%);
	transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.footer-right p {
	line-height: 28px;
}
.footer-center a:hover:before,
.footer-right__info a:hover:before {
	-ms-transform: translateX(0%);
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}
.social-row a svg path {
	transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.social-row a svg path {
	fill: #000;
}
.social-row a:hover svg path {
	fill: #79af25;
}
.site-footer .footer-left__intro {
	margin-bottom: 15px;
}
.site-footer .nl-input-holder input {
    width: 100%;
    height: 50px;
	max-width: 380px;
	padding: 5px;
	color: #fff;
	text-align: center;
	border-bottom: 1px solid #fff;
	font-size: 14px;
}
.nl-input-holder {
	background-position: left;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 10px 0 5px;
}
.site-footer input[type="submit"] {
	border: 0px;
	outline: none;
    border-radius: 0;
    background: #000;
    color: #fff;
    font-size: 18px;
    line-height: 1.2;
	padding: 10px 0;
}
.site-footer input[type="submit"]:hover {
	color: #79af25;
}
.footer-top-row br {display: none;}

/*--------------------------------------------------------------
### Home Page Styles
--------------------------------------------------------------*/

/* Sections */

.main-page-pad {
    padding: 100px 0 10vh;
}
.home-block,
.home-top {
	min-height: 100vh;
}
.section-title-holder {
    padding: 20px 0;
}
.section-title-holder:after {
	content: "";
	display: block;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
	background: #171717;
	position: absolute;
	-ms-transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
	transform: translateX(-100%);
	transition: all 1s ease;
}
.section-title-holder h2 {
	-ms-transform: scaleX(0.9);
    -webkit-transform: scaleX(0.9);
	transform: scaleX(0.9);
	transition: all 1.2s ease;
	margin-bottom: 0;
}
.section-title-holder.active:after {
	-ms-transform: translateX(0);
    -webkit-transform: translateX(0);
	transform: translateX(0);
}
.section-title-holder.active h2 {
	-ms-transform: scaleX(1);
    -webkit-transform: scaleX(1);
	transform: scaleX(1);
}

/* Home page */

.ht-svg {
    width: 60%;
	opacity: 0;
	-ms-transform: translateY(20%);
    -webkit-transform: translateY(20%);
	transform: translateY(20%);
	margin-right: -12%;
}
.ht-svg svg {
	position: absolute;
	display: block;
	bottom: 0;
	left: 0;
	transition-timing-function: ease-in-out;
	will-change: transform;
}
.ht-holder {
	min-height: 100vh;
}
.ht-intro {
	top: 40%;
	position: absolute;
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%;
}
.ht-bg svg {
    height: 100%;
    width: auto;
    position: absolute;
    left: 50%;
    top: 0;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.h-intro-text__title div,
.h-intro-text__title {
	color: #fff;
	-webkit-text-stroke-width: 1px;
	-webkit-text-stroke-color: black;
}
.h-intro-text__title .word {
	font-size: 82px;
    line-height: 94px;
	letter-spacing: -1.8px;
	font-weight: 700;
	font-family: 'Gotham-Black',Helvetica,Arial,sans-serif;
	font-weight: 900;
	padding-right: 15px;
	-moz-transform: scale(1.1) rotate(10deg) translate(-10px, -10px);
    -ms-transform: scale(1.1) rotate(10deg) translate(-10px, -10px);
    -webkit-transform: scale(1.1) rotate(10deg) translate(-10px, -10px);
	transform: scale(1.1) rotate(10deg) translate(-10px, -10px);
	opacity: 0;
}
.h-intro-text__title div:last-child {
	padding-right: 0;
}
.h-intro-rotate__item:after {
	/* content: "";
	display: inline-block;
	margin-left: 5px;
	position: absolute;
	right: 0;
	bottom: 20px;
	width: 18px;
	height: 18px;
	background: #79af25;
	border-radius: 50%;
	opacity: 1; */
}
.h-intro-we {
    font-size: 320px;
    color: #fff;
	letter-spacing: -10px;
	-webkit-text-stroke-width: 1px;
	-webkit-text-stroke-color: black;
	-moz-transform: translateY(10px);
	-ms-transform: translateY(10px);
    -webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0;
}
.h-intro-rotate {
    position: absolute;
    bottom: 0;
    left: 0;
    -moz-transform: translateY(10px);
	-ms-transform: translateY(10px);
    -webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0;
    height: 320px;
    width: 80vw;
	padding-left: 510px;
    text-align: center;
    min-width: 360px;
}
.h-intro-rotate__item {
	font-size: 320px;
	position: absolute;
	width: auto;
	-webkit-text-fill-color: #00000085;
	/* -moz-transform: translateY(-250%);
	-ms-transform: translateY(-250%);
    -webkit-transform: translateY(-250%);
	transform: translateY(-250%); */
}
.intro_sec_row {
	position: absolute;
	right: 0;
	top: 80%;
	font-size: 320px;
	height: 320px;
	width: auto;
}

.scroll-down-holder {
	width: 120px;
}
.scroll-down__svg {
	transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.scroll-down-holder:hover .scroll-down__svg {
	-ms-transform: translateY(20px);
    -webkit-transform: translateY(20px);
	transform: translateY(20px);
}
.home-top-intro,
.home-mid {
	padding-top: 110px;
}
.tax-items-holder,
.works-holder {
	max-width: 1500px;
	margin: 0 auto;
}
.project-container:after,
.project-container:before,
.feat-project-div:after,
.feat-project-div:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
	left: 0;
	transition: transform 0.8s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.project-container:before,
.feat-project-div:before {
	background: #fff;
	z-index: 40;
}
.project-container:after,
.feat-project-div:after{
	background: #dbdde2;
	z-index: 30;
	transition-delay: 0.4s;
}
.project-container.active:before,
.project-container.active:after,
.feat-project-div.active:before,
.feat-project-div.active:after {
	-moz-transform: translateY(-101%);
	-ms-transform: translateY(-101%);
    -webkit-transform: translateY(-101%);
    transform: translateY(-101%);
}
.project-name {
	padding: 10px 0;
}
.project-name-marg {
	margin-bottom: 5px;
}
.feat-project-div-holder.fp-big {
	width: 95%;
}
.feat-image,
.feat-image-big {
	/* padding-top: 75%; */
	padding-top: 60%;
}
.showcase-image {
	padding-top: 50%;
	margin-bottom: 40px;
}
.full-width .showcase-image {
    padding-top: 40%;
    margin-bottom: 40px;
}
.feat-image-med {
    padding-top: 88%;
}
.feat-project-div a {
	top: 0;
	left: 0;
}
.pr-cta-bg {
	-moz-transform: translate(-100%, -100%);
    -ms-transform: translate(-100%, -100%);
	-webkit-transform: translate(-100%, -100%);
	transform: translate(-100%, -100%);
	opacity: 0;
}
.project-cta.active .pr-cta-bg {
	-moz-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
	-webkit-transform: translate(0%, 0%);
	transform: translate(0%, 0%);
	opacity: 1;
}
.project-cta-link {
	-moz-transform: translate(25px, 15px);
    -ms-transform: translate(25px, 15px);
	-webkit-transform: translate(25px, 15px);
	transform: translate(25px, 15px);
}
.project-single .project-cta-link {
	-moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}
.single-project-cta-link {
	margin-top: 40px;
	margin-bottom: 40px;
	padding: 0 40px;
	text-decoration: none !important;
}
.feat-project-row .project-cta-link {
	-moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}
.feat-project-row .project-cta {
    height: 100px;
    padding: 60px 0 0;
}
.home-services .project-cta-link,
.project-cta.active .project-cta-link {
	-moz-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
	-webkit-transform: translate(0%, 0%);
	transform: translate(0%, 0%);
}
.project__img-holder {
	width: 100%;
	height: 100%;
	position: absolute;
    left: 50%;
    top: 0;
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}
.project__img-holder.vimeo-holder {
    width: 100%;
	height: 125%;
	top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background-size: cover !important;
}
.vimeo-holder iframe {
	width: auto;
	height: auto;
	min-width: 115%;
	min-height: 100%;
	left: 50%;
	position: absolute;
	-ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	border: 0;
}
.video-holder {
    width: auto;
	height: auto;
	min-width: 100%;
	min-height: 100%;
    position: absolute;
    left: 50%;
	top: 50%;
	-moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background: #fff;
}
.project__img-holder:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	/* background-color: #000; */
	z-index: 2;
	opacity: 1;
	mix-blend-mode: hue;
	transition: opacity 0.8s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.project__img-info {
	padding: 25px;
	background-color: #000000c7;
	transition: opacity 0.8s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.feat-project-div:hover .project__img-holder:before,
.feat-project-div:focus .project__img-holder:before {
	opacity: 0;
}

.feat-project-div:hover .project__img-info,
.feat-project-div:focus .project__img-info {
	opacity: 1;
}
.project__img-holder {
	background-size: cover !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
}
.project__img-holder img {
	position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    -ms-transform: scale(1.1) translate(-50%, -50%);
    -webkit-transform: scale(1.1) translate(-50%, -50%);
    transform: scale(1.1) translate(-50%,-50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform-origin: left top;
	transition: all 1.5s ease;
}
.project-single .project__img-holder img {
	-ms-transform: scale(1) translate(-50%, -50%);
    -webkit-transform: scale(1) translate(-50%, -50%);
	transform: scale(1) translate(-50%,-50%);
}
.feat-project-div:hover .project__img-holder img {
	-ms-transform: scale(1) translate(-50%, -50%);
    -webkit-transform: scale(1) translate(-50%, -50%);
    transform: scale(1) translate(-50%,-50%);
}
.pr-cta-bg svg {
	width: 100%;
	max-width: 605px;
	height: auto;
}
.project-cta {
    padding: 60px 0;
}
.project-cta-link {
	max-width: 530px;
    margin: 0 auto;
}
.single-project-cta-link:before,
.error-404-link:before,
.project-cta-link:before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 60%;
	background: #79af25;
	height: 2px;
	width: 80%;
	-ms-transform: scaleX(0) translate(-50%, -50%);
    -webkit-transform: scaleX(0) translate(-50%, -50%);
	transform: scaleX(0) translate(-50%,-50%);
	transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
	transform-origin: 0 50%;
}
.single-project-cta-link:hover:before,
.error-404-link:hover:before,
.project-cta-link:hover:before {
	-ms-transform: scaleX(1) translate(-50%, -50%);
    -webkit-transform: scaleX(1) translate(-50%, -50%);
	transform: scaleX(1) translate(-50%,-50%);
}
.visit-site {
	position: relative;
	z-index: 10;
    text-align: center;
}
.home-cta {
	height: 60vh;
	-ms-transform: translateY(-40vh);
    -webkit-transform: translateY(-40vh);
	transform: translateY(-40vh);
}
.home-services {
	padding: 150px 0 100px;
}
.services-grid {
	max-width: 1500px;
}
.services-grid-block {
	padding-top: 100%;
}
.services-grid-inner {
	border: 5px solid #fff;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: contain !important;
}
.services-grid-block:before {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	pointer-events: none;
	left: 0;
	top: 0;
	z-index: 3;
}
.services-grid-block-holder:nth-child(4n+1) .services-grid-block:before,
.services-grid-block-holder:nth-child(4n+2) .services-grid-block:before,
.services-grid-block-holder:nth-child(4n+3) .services-grid-block:before {
	border-bottom: 5px solid #fff;
	border-right: 5px solid #fff;
}
.services-grid-block-holder:nth-child(4n) .services-grid-block:before {
	border-bottom: 5px solid #fff;
}
.services-grid-block-holder:nth-child(9) .services-grid-block:before,
.services-grid-block-holder:nth-child(10) .services-grid-block:before,
.services-grid-block-holder:nth-child(11) .services-grid-block:before,
.services-grid-block-holder:nth-child(12) .services-grid-block:before {
	border-bottom: 0px;
}
.all-services-grid-block-inner {
	transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.services-grid-block-inner {
	transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
	background: #79af25;
	mix-blend-mode: lighten;
}
.all-services-link span {
	padding-bottom: 5px;
}
.all-services-link span:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: #fff;
	transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
	-ms-transform: translateX(-105%);
	-webkit-transform: translateX(-105%);
	transform: translateX(-105%);
}
.all-services-link:hover span:before {
	-ms-transform: translateX(0%);
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}
.services-grid-block:hover .services-grid-block-inner {
	opacity: 1;
}
.service-block-title {
	padding: 0 15px;
}
.service-block-title-inner {
	-ms-transform: translateY(-100%);
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	transition-delay: 0.2s;
	transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.service-block-link:hover .service-block-title-inner {
	-ms-transform: translateY(0%);
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
}
.services-grid-bg {
	padding: 20px;
}
.services-grid-bg svg {
	height: 100%;
}
.hs-title-hor {
	width: max-content;
	padding-left: 0;
	padding-right: 0;
}
.hs-title-hor:after {
    content: "";
    display: inline-block;
    margin-left: 5px;
	position: absolute;
	right: -22px;
	bottom: 7px;
    width: 18px;
    height: 18px;
    background: #79af25;
    border-radius: 50%;
}
.hs-title-ver {
	-ms-transform: rotate(-90deg) translate(-100%, 0%);
	-webkit-transform: rotate(-90deg) translate(-100%, 0%);
	transform: rotate(-90deg) translate(-100%, 0%);
	transform-origin: 0% 0%;
	padding-right: 68px;
}
.services-table {
	padding: 80px 50px;
}
.services-table svg {
	width: auto;
	height: 100vh;
}
.services-table .service-link {
	padding-bottom: 2px;
}
.services-table .service-link:before {
	content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    height: 2px;
    width: 100%;
	background: #79af25;
	-moz-transform: translateX(-105%);
    -ms-transform: translateX(-105%);
    -webkit-transform: translateX(-105%);
    transform: translateX(-105%);
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.services-table .service-link:hover:before {
	-moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}
.service-link-1 {
	left: 10%;
    top: 11%;
}
.service-link-2 {
    right: 10%;
    top: 12%;
}
.service-link-3 {
    right: 0;
    top: 24%;
}
.service-link-4 {
    right: -10%;
    top: 53%;
}
.service-link-5 {
	right: -10%;
    bottom: 23%;
}
.service-link-6 {
    right: 28%;
    bottom: 10%;
}
.service-link-7 {
	left: -10%;
    bottom: 20%;
}
.service-link-8 {
	left: 0%;
	bottom: 36%;
}
.service-link-9 {
	left: 0%;
	top: 44%;
}
.service-link-10 {
    left: -12%;
    top: 25%;
}
.service-link-11 {
    left: 50%;
    top: 2%;
}
.design {
	display: block;
	width: 40%;
	height: 35%;
	left: 0%;
	bottom: 8%;
}
.design__placeholder {
	top: 50%;
}
.web-dev__placeholder:before,
.dig-str__placeholder:before,
.soc-med__placeholder:before,
.log-bra__placeholder:before,
.design__placeholder:before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
	height: 2px;
	width: 100%;
	background: #79af25;
	-ms-transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
	transform: translateX(-100%);
	transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.web-dev:hover .web-dev__placeholder:before,
.dig-str:hover .dig-str__placeholder:before,
.log-bra:hover .log-bra__placeholder:before,
.design:hover .design__placeholder:before,
.soc-med:hover .soc-med__placeholder:before {
	-ms-transform: translateX(0%);
    -webkit-transform: translateX(0%);
	transform: translateX(0%);
}
.hs-title-hor {
	width: auto;
}

/*--------------------------------------------------------------
### About Page Styles
--------------------------------------------------------------*/

.mask {
	transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.mask.active {
	opacity: 0;
	-moz-transform: translateY(50px);
	-ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
}
.about-top {
	padding: 32vh 0 10vh;
	height: 100vh;
	min-height: 415px;
}
.a-intro-text__title {
	margin-bottom: 10px;
	opacity: 0;
	-ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
}
.home-intro-subtitle {
	opacity: 0;
	-ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
}
.home-intro-subtitle span {
	letter-spacing: -0.8px;
    line-height: 1.6;
}
.about-section {
	padding: 13vh 0;
	min-height: 100vh;
}
.about-mid .a-intro-text__title {
	margin-bottom: 71px;
}
.home-intro-subtitle p {
    font-family: inherit;
    font-size: inherit;
	line-height: inherit;
	margin-bottom: 0;
}
.about-mid__right-pad {
	padding-right: 36%;
}
.about-svg-holder {
	opacity: 0;
	top: 100%;
	height: 100vh;
	width: 50%;
	display: inline-block;
}
.member-info {
	padding-right: 15px;
}
.member-info p {
	margin-bottom: 5px;
	font-size: 14px;
}
.member-info li {
	display: inline-block;
	padding: 0 0 0 12px;
	position: relative;
    font-size: 16px;
}
.member-info li:before {
	content: "";
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #79af25;
	position: absolute;
	left: 0;
	top: 13px;
	-ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.our-team__rows {
	padding: 10vh 0;
}
.team-member {
	padding: 5vh 0;
	/* min-height: 280px; */
	min-height: 120px;
}


/* Services Styles */

.service-top,
.services-top {
	padding: 100px 0 10vh;
}
.serv-intro-subtitle {
	margin-top: 50px;
	padding-top: 50px;
}
.serv-intro-subtitle p {
	font-size: inherit;
    line-height: inherit;
	opacity: 0;
	-moz-transform: translateY(50px);
	-ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
	margin-bottom: 0;
}
.serv-intro-subtitle:before {
	content: "";
	display: block;
	width: 50px;
	height: 1px;
	background: #fff;
	position: absolute;
	top: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.service-feat-project-row,
.serv-mid-row {
	padding: 15vh 0;
}
.serv-mid-row__quote {
	padding: 15px 0;
}
.serv-mid-row__row p {
    opacity: 0;
    -moz-transform: translateY(50px);
    -ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
}
.serv-mid-row .serv-mid-row__quote h2 {
	-moz-transform: scaleX(1.5);
	-ms-transform: scaleX(1.5);
    -webkit-transform: scaleX(1.5);
	transform: scaleX(1.5);
	transition-delay: 1s;
	transition: all 1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.serv-mid-row.active .serv-mid-row__quote h2 {
	-moz-transform: scaleX(1);
	-ms-transform: scaleX(1);
    -webkit-transform: scaleX(1);
	transform: scaleX(1);
}
.services-mid:before {
	content: "";
	display: inline-block;
	width: 2px;
	height: 100%;
	background: #fff;
	position: absolute;
	left: 50%;
	-moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.serv-row {
	padding: 50px 0;
}
.serv-row__link {
	width: 78px;
	height: 78px;
	border: 2px solid #79af25;
	border-radius: 50%;
	transition: all 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
	position: absolute;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -30%);
    -webkit-transform: translate(-50%, -30%);
	transform: translate(-50%, -30%);
	opacity: 0;
}
.serv-row__link:before {
	content: "";
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: #fff;
	opacity: 0;
	transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.serv-row__link:hover:before,
.serv-row__link:focus:before {
	opacity: 1;
}
.serv-row__link svg {
	width: 15px;
	-moz-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    left: 50%;
    top: 50%;
	position: absolute;
	transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.serv-row__link:hover svg,
.serv-row__link:focus svg {
	-moz-transform: translate(-50%, -50%) scale(1.2);
    -ms-transform: translate(-50%, -50%) scale(1.2);
    -webkit-transform: translate(-50%, -50%) scale(1.2);
    transform: translate(-50%, -50%) scale(1.2);
}
.serv-row__link svg path {
	transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.serv-row__link:hover svg path,
.serv-row__link:focus svg path {
	fill: #79af25;
}
.serv-row__right,
.serv-row__left {
	-moz-transform: translateY(50px);
    -ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
	opacity: 0;
	transition: all 0.8s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.serv-row.active .serv-row__left,
.serv-row.active .serv-row__right {
	-moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}
.serv-row.active .serv-row__link {
	-moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	opacity:1;
}
.serv-svg-holder svg {
	width: 200px;
	height: 200px;
}
.serv-svg-holder svg path {
	fill: #fff;
}
.services-bot {
	height: 200px;
}
.serv-num {
	margin-right: 25px;
}
.serv-subtitle-row,
.serv-title-row {
	margin-bottom: 20px;
}
.serv-title-row span:first-child {
	vertical-align: bottom;
	display: inline-block;
}
.serv-title-row span {
	transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.serv-row .serv-title-row a {
	padding-bottom: 5px;
}
.serv-row .serv-title-row a:hover span,
.serv-row .serv-title-row a:focus span {
	color: #79af25;
}
.serv-row .serv-title-row a:before {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: #fff;
	position: absolute;
	bottom: 0px;
	left: 0;
	-moz-transform: translateX(-105%);
    -ms-transform: translateX(-105%);
    -webkit-transform: translateX(-105%);
	transform: translateX(-105%);
	transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.serv-row .serv-title-row a:focus:before,
.serv-row .serv-title-row a:hover:before {
	background: #79af25;
	-moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    -webkit-transform: translateX(0%);
	transform: translateX(0%);
}
.services-mid {
	max-width: 1600px;
	margin: 0 auto;
}

/* Single Service Page */

.service .serv-svg-holder {
	margin: 130px 0 50px;
}
.service-intro-subtitle {
    padding: 50px 0 66px;
    margin: 65px 0 0;
}
.service-intro-subtitle p {
	margin: 0;
}
.service-intro-subtitle:before {
	content: "";
	display: block;
	width: 50px;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 50%;
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.service-mid-row {
    padding: 0 0 50px;
}
.service-list {
	padding: 50px 0;
	display: inline-block;
	text-align: left;
}
.service .feat-project-div:before {
	background: #000;
}
.service-bottom .service-feat-project-row {
	text-align: center;
}

/* Project Page */

.projects {
	padding-bottom: 15vh;
}
.project-image-holder {
	width: 100%;
	height: 400px;
}
.project-image {
    object-fit: cover;
	min-height: 100%;
	min-width: 100%;
	opacity: 0;
}
.single-project-container {
	margin-bottom: 40px;
}
.project-title {
	margin: 8px 0;
	padding: 0 5px;
	position: absolute;
	bottom: 25px;
	left: 0;
	width: 100%;
    text-align: center;
}
.project-title a {
	transition: all 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.project-title a:hover {
	color: #79af25;
}
.single-post-holder .project-categories {
	margin-bottom: 50px;
}
.project-categories {
	line-height: 1;
	padding: 10px 10px 0;
}
.project-categories span {
	padding: 0 6px 0 0;
	opacity: 0.7;
	transition: opacity 0.4s ease;
}
.project-categories a:hover span {
	opacity: 1;
}
.project-name span {
	display: inline-block;
	padding: 0 6px 0 0;
}
.project-name span.additional-cat {
	padding: 0 6px 0 10px;
}
.additional-cat {
	border-left: 1px solid #000;
}
.tax-holder {
	padding: 100px 0 10vh;
}
.tax-items-holder {
	padding: 0 0 20vh;
}
.tax-text__title {
	margin-bottom: 10px;
}
.tax-subtitle span {
	display: block;
	line-height: initial;
}

/* Contact Page */

.ct-holder {
	padding: 100px 0 10vh;
	min-height: 100vh;
}
.ct-bot-holder {
	padding: 20vh 0;
	min-height: 100vh;
}
.contact-bot-title {
	margin-bottom: 20vh;
}
.ct-bot-info-holder {
	padding-bottom: 40px;
}
.contact-bot a {
	font-weight: 700;
}
#contact-svg {
	opacity: 0;
	-ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
}
.c-intro-text__subtitle,
.c-intro-text__title {
	opacity: 0;
	-ms-transform: translateY(50px);
    -webkit-transform: translateY(50px);
	transform: translateY(50px);
}
.serv-mid-row:before,
.contact-bot:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #000;
	z-index: -1;
	-moz-transform: translateX(-100%) skewX(10deg);
	-ms-transform: translateX(-100%) skewX(10deg);
    -webkit-transform: translateX(-100%) skewX(10deg);
	transform: translateX(-100%) skewX(10deg);
	-moz-transition: all 0.8s cubic-bezier(1,.15,.25,1);
    -o-transition: all 0.8s cubic-bezier(1,.15,.25,1);
    -webkit-transition: all 0.8s cubic-bezier(1,.15,.25,1);
	transition: all 0.8s cubic-bezier(1,.15,.25,1);
	/* -webkit-transform: scaleX(1.1) ;
    transform: scaleX(1.1) skewX(0deg);
    -webkit-transform-origin: top right;
    transform-origin: top right; */
}
.serv-mid-row.active:before,
.contact-bot.active:before {
	-moz-transform: translateX(0) skewX(0deg);
	-ms-transform: translateX(0) skewX(0deg);
    -webkit-transform: translateX(0) skewX(0deg);
	transform: translateX(0) skewX(0deg);
}
.contact-map {
	max-height: 400px;
	margin-bottom: 20px;
}
.contact-map iframe {
	max-height: 400px;
}
button.gm-ui-hover-effect,
#gmimap0 area {
    cursor: none !important;
}

/* Contact Form */

.contact-left {
	float: left;
}
.contact-right {
	float: right;
}
.contact-cell {
	width: 49%;
	height: 70px;
	margin-top: 28px;
}
.contact-cell select,
.contact-cell input {
	line-height: 42px;
	padding: 22px 0 5px 0;
	font-size: 20px;
	width: 100%;
}
.contact-cell select {
	padding: 22px 0 5px 0;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
}
.contact-cell label {
	position: absolute;
	left: 0;
	top: 0;
	font-size: 15px;
	line-height: 27px;
}
.contact-full.contact-cell {
	width: 100%;
	height: 190px;
	margin-top: 28px;
	padding: 0 0 27px 0;
	width: 100%;
}
.contact-full.contact-cell textarea {
	height: 190px;
	line-height: 38px;
	font-size: 18px;
	width: 100%;
	resize: none;
	padding-top: 22px;
}
.gtpr a,
.gtpr p {
	font-size: 15px;
	line-height: 20px;
}
.gtpr a {
	text-decoration: underline;
}
.gtpr label {
	line-height: 28px;
	font-size: 18px;
}
.gtpr span {
	margin: 0;
}
.radio-cell input,
.gtpr input {
	outline: none;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	cursor: pointer;
	height: 28px;
	width: 28px;
	-moz-appearance: none;
	-webkit-appearance: none;
	display: inline-block;
	background-color: transparent;
	border: 1px solid #000;
	vertical-align: bottom;
	position: relative;
}
input[type="checkbox"] {
    cursor: none;
}
.radio-cell label {display: block;}
span.wpcf7-list-item.first {margin: 0;}
.radio-cell input[type="checkbox"]:checked:after,
.gtpr input[type="checkbox"]:checked:after {
    opacity: 1;
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
.radio-cell input[type="checkbox"]:after,
.gtpr input[type="checkbox"]:after {
	content: "";
    position: absolute;
	width: 8px;
	height: 8px;
	background: #000;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	left: 50%;
    top: 50%;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -moz-transform: translate(-50%,-60%);
    -ms-transform: translate(-50%,-60%);
    -webkit-transform: translate(-50%,-60%);
    transform: translate(-50%,-60%);
    z-index: 1;
    -moz-transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    -o-transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    -webkit-transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
}
.contact-submit input {
	line-height: 28px;
	font-size: 18px;
}
.contact-submit .wpcf7-submit:disabled {
	border: 1px solid #999999;
	background-color: #cccccc;
	color: #666666;
}
.contact-submit .wpcf7-submit {
	border: 1px solid;
	border-color: #000;
	border-radius: 0;
	background: transparent;
	color: #000;
	-moz-transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    -o-transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    -webkit-transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
    transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
	line-height: 1;
	padding: 10px 30px;
	margin: 10px 0 0;
}
.contact-submit .wpcf7-submit:hover {
	color: #fff;
	background: #000;
}
div.wpcf7 .wpcf7-submit:disabled {
    cursor: none;
}

/* Blog Archive */

.blog-holder {
	padding: 100px 0 10vh;
}
.blog-intro-text__title {
	margin-bottom: 10px;
}
.blog-single {
	margin-bottom: 50px;
	opacity: 0;
	-moz-transform: translateY(150px);
    -ms-transform: translateY(150px);
	-webkit-transform: translateY(150px);
	transform: translateY(150px);
	transition: all 1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.blog-single.active {
	opacity: 1;
	-moz-transform: translateY(0);
    -ms-transform: translateY(0);
	-webkit-transform: translateY(0);
	transform: translateY(0);
}
.journal-image-link {
	padding-top: 63.15789%;
}
.journal-image-link img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: auto;
	-moz-transform: translate(-50%,-50%) scale(1, 1);
    -ms-transform: translate(-50%,-50%) scale(1, 1);
	-webkit-transform: translate(-50%,-50%) scale(1, 1);
	transform: translate(-50%,-50%) scale(1, 1);
	transition: transform 1s cubic-bezier(0.16, 0.01, 0.77, 1);
}
.journal-image-link:hover img {
	-moz-transform: translate(-50%,-50%) scale(1.1, 1.1);
    -ms-transform: translate(-50%,-50%) scale(1.1, 1.1);
	-webkit-transform: translate(-50%,-50%) scale(1.1, 1.1);
	transform: translate(-50%,-50%) scale(1.1, 1.1);
}
.journal-item-title {
	margin-top: 14px;
}
.journal-title-link {
	transition: color 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
}
.journal-title-link:before {
	content: "";
	display: block;
	-moz-transform: translateX(-50%) scaleX(0);
    -ms-transform: translateX(-50%) scaleX(0);
	-webkit-transform: translateX(-50%) scaleX(0);
	transform: translateX(-50%) scaleX(0);
	height: 1px;
	background: #79af25;
	position: absolute;
	width: 100%;
	position: absolute;
	top: 105%;
	left: 50%;
	transition: transform 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
}
.journal-title-link:hover:before {
	-moz-transform: translateX(-50%) scaleX(1);
    -ms-transform: translateX(-50%) scaleX(1);
	-webkit-transform: translateX(-50%) scaleX(1);
	transform: translateX(-50%) scaleX(1);
}
.journal-title-link:hover {
	color: #79af25;
}

/* Single Blog */

#slb_viewer_wrap .slb_theme_slb_baseline .slb_container {
	padding: 0 !important;
}
.single-post-holder {
	padding: 100px 0 10vh;
}
.single-post-holder p {
	font-size: inherit;
	line-height: inherit;
}
.single-post-feat-image {
	margin: 50px 0;
}
.single-post-feat-image img {
	max-height: 800px;
	width: auto;
}
.single-post-content h1,
.single-post-content h2, 
.single-post-content h3, 
.single-post-content h4, 
.single-post-content h5, 
.single-post-content h6 {
	margin: 25px 0 15px;
	line-height: 1.2;
}
.single-post-content h1 {
	font-size: 40px;
}
.single-post-content h2 {
	font-size: 35px;
}
.single-post-content h3 {
	font-size: 30px;
}
.single-post-content h4 {
	font-size: 25px;
}
.single-post-content h5 {
	font-size: 20px;
}
.single-post-content h6 {
	font-size: 15px;
}
.single-post-content ul, 
.single-post-content ol {
	margin: 0 0 25px 0;
	padding: 0;
}
.single-post-content li {
	margin-bottom: 5px;
}
.single-post-content ol {
	padding-left: 25px;
}
.single-post-content ul li {
	position: relative;
	padding-left: 25px;
}
.single-post-content ul li:before {
	content: "";
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    background: #79af25;
    top: 12px;
	left: 5px;
	-moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
.single-post-content img {
	display: block;
	margin: 0 auto;
	width: auto; 
	max-height: 500px;
	height: auto;
	border: 2px solid #e7e7e7;
}
.single-post-content img.full-img {
	max-height: initial;
}
.single-post-content .gallery-item .gallery-icon {
	border: 2px solid #e7e7e7;
}
.single-post-content .gallery-item img {
	border: 0;
}
.single-post-content a:hover {
	color: #79af25;
}
.single-post-content a {
	text-decoration: underline;
}
.single-post-content iframe {
	width: 100%;
	height: 450px;
}
figcaption {
	font-size: 12px;
}
body #slb_viewer_wrap .slb_theme_slb_default .slb_data_title, 
body #slb_viewer_wrap .slb_theme_slb_default .slb_group_status {
	font-size: 12px;
	font-family: 'Gotham-Book',Helvetica,Arial,sans-serif;
    color: #000;
	display: inline-block;
	margin: 0.8075em 0;
	line-height: 1.4;
}
body .slb_data_content {
	padding: 0 20px !important;
}
#slb_viewer_wrap .slb_theme_slb_default .slb_container {
	overflow: hidden;
}

/* Social Share Buttons */

.social-share {
    top: 58%;
	right: -55px;
	-moz-transform: rotate(-90deg) translate(0, -50%);
    -ms-transform: rotate(-90deg) translate(0, -50%);
    -webkit-transform: rotate(-90deg) translate(0, -50%);
    transform: rotate(-90deg) translate(0, -50%);
    height: 26px;
	overflow: hidden;
}
.social-share-holder {
	height: 26px;
}
.social-share path {
	fill: #000;
}
.social-share-toggler__text {
	transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
}
.social-share-links {
	display: inline-block;
    width: 100%;
	text-align: center;
	-moz-transform: rotate(90deg) translate(0, -50%);
    -ms-transform: rotate(90deg) translate(0, -50%);
    -webkit-transform: rotate(90deg) translate(0, -50%);
    transform: rotate(90deg) translate(0, -50%);
    width: 26px;
    left: 50%;
    position: absolute;
	transform-origin: 0% 0%;
	transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
	opacity: 0;
}
.social-share:hover .social-share-toggler__text,
.social-share:focus .social-share-toggler__text {
	-moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	opacity: 0;
}
.social-share:hover .social-share-links,
.social-share:focus .social-share-links {
	-moz-transform: rotate(90deg) translate(-100%, -50%);
    -ms-transform: rotate(90deg) translate(-100%, -50%);
    -webkit-transform: rotate(90deg) translate(-100%, -50%);
	transform: rotate(90deg) translate(-100%, -50%);
	opacity: 1;
}
.social-share .social-icon svg {
    width: 100%;
    max-width: 21px;
    max-height: 21px;
    transition: all 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22);
	margin: 10px 0;
}

/* Blog Navigation */

.post-nav-left {
	padding-left: 40px;
}
.post-nav-right {
	padding-right: 40px;
}
.post-nav-svg {
	position: absolute;
	width: 40px;
	height: 24px;
	top: 0;
	text-align: center;
}
.post-nav-right .post-nav-svg {
	right: 0;
}
.post-nav-left .post-nav-svg {
	left: 0;
}
.post-nav-svg svg {
	height: 100%;
	width: auto;
	transition: all 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
}
.post-nav-right:hover svg {
	-ms-transform: translateX(2px);
    -webkit-transform: translateX(2px);
    transform: translateX(2px);
}
.post-nav-left:hover svg {
	-ms-transform: translateX(-2px);
    -webkit-transform: translateX(-2px);
    transform: translateX(-2px);
}
.post-nav-link__title {
	transition: color 400ms cubic-bezier(0.16, 0.01, 0.77, 1);
	line-height: 30px;
}
.post-nav-link:hover .post-nav-link__title {
	color: #79af25;
}

/* Project Inquiry */

.about-form {
	padding-bottom: 10vh;
}

/* Search Page */

.search-page {
	padding: 100px 0 10vh;
}
.search-row {
	margin-top: 100px;
	padding: 10px 30px;
}
.search-row p {
	margin: 10px 0 0;
}
.search-row:before {
	content: "";
	display: block;
	width: 10px;
	height: 100%;
	background: #79af25;
	position: absolute;
	left: 0;
	top: 0;
}

/* 404 Page */

.error-404.not-found,
.error-404.not-found .full-screen {
	min-height: 500px;
}
.error-404-header-holder {
	width: 80vw;
	height: 80vh;
}
.error-404-header {
	font-size: 500px;
	letter-spacing: -10px;
}
.error-404-text {
	bottom: 0;
	left: 0;
}
.error-404-link {
	margin-top: 50px;
	padding: 0 70px;
}
.error-404-vid-holder {
	padding-top: 100%;
}
.error-404-vid-holder video {
	width: auto;
	min-height: 100%;
	min-width: 100%;
	height: auto;
}
.error-404-white-layer {
	background: #ffffff20;
}


/* New */

.project-row {
    padding: 0 0 70px 0;
}

.works-holder .project-row .full-width .feat-project-div-holder {
	width: 70%;
	margin: 0 auto;
}
.all-blog-link-holder,
.all-services-link-holder {
	position: fixed;
	top: 50%;
	-ms-transform: translateY(-50%) rotate(-90deg);
    -webkit-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg);
	transform-origin: 70% 0%;
}
.all-blog-link-holder {
	right: -20px;
}
.all-services-link-holder {
	right: 0;
}
.all-serv-page-link,
.all-blog-page-link {
	transition: all 0.5s cubic-bezier(0.5, 0, 0.75, 0);
	-ms-transform: translateY(100%);
    -webkit-transform: translateY(100%);
	transform: translateY(100%);
	padding: 5px;
}
.all-blog-page-link {
	color: #000;
}
.all-serv-page-link {
	background-color: #000;
}
.page-scrolled .all-blog-page-link,
#masthead.scrolled  .all-serv-page-link {
	-ms-transform: translateY(0%);
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
}
.all-blog-page-link:before,
.all-serv-page-link:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	height: 1px;
	width: 100%;
	transition: all 0.5s cubic-bezier(0.5, 0, 0.75, 0);
	-ms-transform: translateX(-101%);
    -webkit-transform: translateX(-101%);
    transform: translateX(-101%);
}
.all-serv-page-link:before {
	background: #fff;
}
.all-blog-page-link:before {
	background: #000;
}
.all-blog-page-link:hover:before,
.all-serv-page-link:hover:before {
	-ms-transform: translateX(0%);
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}

/* 
.team-member .member-photo {
	opacity: 1;
	transform-origin: 50% 50%;
	transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.team-member:hover .member-photo {
	-ms-transform: translate(-50%, -50%) scale(0.95);
	-webkit-transform: translate(-50%, -50%) scale(0.95);
	transform: translate(-50%, -50%) scale(0.95);
}
.team-member .member-hover-photo {
	opacity: 0;
	transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transform-origin: 50% 50%;
}
.team-member:hover .member-hover-photo {
	opacity: 1;
	-ms-transform: translate(-50%, -50%) scale(0.95);
	-webkit-transform: translate(-50%, -50%) scale(0.95);
	transform: translate(-50%, -50%) scale(0.95);
}
*/
/* .team-photo img {
	display: none;
	opacity: 0;
} */
.team-photo-holder {
	padding-top: 100%;
	position: relative;
	width: 100%;
}
.team-photo {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}
.team-photo canvas {
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}
/* .member-photo,
.member-hover-photo {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.3s;
} */

.grecaptcha-badge {display: none !important;}