/*  

Theme Name: Cirque Mechanics
Theme URI: http://www.cirquemechanics.com/
Description: Theme for Cirque Mechanics.
Version: 1.0
Author: Joe Mendonca
Author URI: https://www.felthat.com/

*/

/*--------------------------------------------------------------
HTML Elements
--------------------------------------------------------------*/

* {
	margin: 0;
	padding: 0;
}

body {
	background: #000000;
	background-image: url(imgs/background-repeat.jpg);
	background-position: top center;
	background-repeat: repeat-y;
	color: #000000;
	height: 100%;
	margin: 0;
	width: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

img {
	border: 0px none;
}

.alignleft {
	display: inline;
	float: left;
	margin: 0px 10px 10px 0px;
}

.alignright {
	display: inline;
	float: right;
	margin: 0px 0px 10px 10px;
}

.aligncenter {
	display: inline;
	float: center;
}

/*--------------------------------------------------------------
Layout
--------------------------------------------------------------*/

.wrapper {
	float: left;
	width: 100%;
}

.layout {
	margin: 0 auto;
	position: relative;
	width: 1460px;
}

.background {
	height: auto;
	left: 0px;
	position: absolute;
	width: 100%;
	top: 0px;
	z-index: -1;
}

.content {
	position: absolute;
	width: 100%;
}

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

header {
	background-image: url(imgs/header.png);
	background-size: 100% auto;
	margin: 39px 0px 0px 86px;
	height: 465px;
	width: 1165px;
}

/*--------------------------------------------------------------
Logo
--------------------------------------------------------------*/

.logo {
	margin: 86px 0px 0px 84px;
	position: absolute;
	animation: logo-opacity 15s infinite;
 	-webkit-transition: all 15s;
	-moz-transition: all 15s;
	-ms-transition: all 15s;
	-o-transition: all 15s;
	transition: all 15s;
}

.logo:hover {
	opacity: 1 !important;
	-webkit-transition: all 15s;
	-moz-transition: all 15s;
	-ms-transition: all 15s;
	-o-transition: all 15s;
	transition: all 15s;
}

@keyframes logo-opacity {
	0% { opacity: 1; }
	75% { opacity: 0; }
	100% { opacity: 1; }
}

/*--------------------------------------------------------------
Menu
--------------------------------------------------------------*/

.menu {
	height: 26px;
	margin: 38px 0px 0px 241px;
	position: absolute;
	width: 310px;
}

.menu li {
	float: left;
	font-family: 'Teko', serif;
	font-size: 22px;
	font-weight: 400;
	letter-spacing: 1.3px;
	list-style-type: none;
	text-transform: uppercase;
}

.menu li:first-child {
	margin-left: 9px;
}

.menu li::after {
	color: #ffffff;
	content: "+";
	margin: 0px 4px 0px 4px;
	opacity: 0.7;
}

.menu li:last-child::after {
	display: none;
}

.menu li a {
	color: #ffffff;
	opacity: 0.7;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

.menu li a:hover,
.current-menu-item a,
.current_page_item a {
	opacity: 1;
	text-shadow: 0 0 3px #ffffff;
	transition: all 0.3s ease-in-out;
}

/*--------------------------------------------------------------
Sub Menu
--------------------------------------------------------------*/

.sub-menu {
	background-image: url(imgs/sub-menu.png);
	height: 33px;
	margin: 84px 0px 0px 211px;
	position: absolute;
}

.sub-menu::before {
	background-image: url(imgs/sub-menu-before.png);
	content: " ";
	float: left;
	height: 35px;
	margin-left: -9px;
	width: 9px;
}

.sub-menu::after {
	background-image: url(imgs/sub-menu-after.png);
	content: " ";
	float: right;
	height: 78px;
	margin: -21px -43px 0px 0px;
	width: 43px;
}

.sub-menu li {
	float: left;
	font-family: 'Teko', serif;
	font-size: 19px;
	letter-spacing: 0.5px;
	list-style-type: none;
	margin-top: 1px;
	text-transform: uppercase;
}

.sub-menu li::after {
	background: #dd9654;
	content: " ";
	float: left;
	height: 16px;
	margin: 5px 7px 0px 7px;
	width: 1px;
}

.sub-menu li:last-child::after {
	display: none;
}

.sub-menu li a {
	color: #6d656b;
	float: left;
	text-decoration: none;
	-moz-transition: all 200ms linear;
	-o-transition: all 200ms linear;
	-webkit-transition: all 200ms linear;
	transition: all 200ms linear;
}

.sub-menu li.current_page_item a {
	color: #c14e30;
}

.sub-menu li a:hover {
	color: #252525;
}

/*--------------------------------------------------------------
Hamburger
--------------------------------------------------------------*/

.hamburger {
	cursor: pointer;
	display: none;
	height: 32px;
	position: absolute;
	right: 10px;
	top: 33px;
	width: 32px;
	z-index: 100;
}

.hamburger li {
	background-color: #f15a29;
	display: block;
	height: 2px;
	margin: 8px auto;
	width: 32px;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

.hamburger li:first-child{
	margin-top: 0px;
}

.hamburger:hover {
	cursor: pointer;
}

.hamburger.is-active li:nth-child(2) {
	display: none;
}

.hamburger.is-active li:nth-child(1) {
	-webkit-transform: translateY(0px) rotate(-45deg);
	-ms-transform: translateY(0px) rotate(-45deg);
	-o-transform: translateY(0px) rotate(-45deg);
	transform: translateY(0px) rotate(-45deg);
}

.hamburger.is-active li:nth-child(3) {
	-webkit-transform: translateY(-10px) rotate(45deg);
	-ms-transform: translateY(-10px) rotate(45deg);
	-o-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
}

/*--------------------------------------------------------------
Main
--------------------------------------------------------------*/

.main {
	float: left;
	margin: -349px 0px 0px 264px;
	position: relative;
	width: 925px;
}

.main a {
	color: #f15a29;
	text-decoration: none;
}

.chain-left,
.chain-right {
	background-image: url(imgs/chain.png);
	position: absolute;
	width: 13px;
	z-index: -1;
}

.chain-left {
	height: calc(100% - 235px);
	left: 0px;
	top: 208px;
}

.chain-right {
	height: calc(100% - 55px);
	right: 0px;
	top: 28px;
}

/*--------------------------------------------------------------
Home
--------------------------------------------------------------*/

.metal {
	float: left;
	margin-top: -27px;
	position: relative;
	z-index: 1;
	width: 943px;
}

.metal img {
	float: left;
	height: auto;
	position: absolute;
	width: 100%;
	z-index: 1;
}

.metal-overlay1 {
	left: 0px;
	mix-blend-mode: multiply;
	top: 0px;
	z-index: 3 !important;
}

.metal-overlay2 {
	left: 0px;
	mix-blend-mode: screen;
	top: 0px;
	z-index: 4 !important;
}

.metal .metal-image {
	left: 48px;
	top: 55px;	
	width: calc(100% - 94px);
	z-index: 0 !important;
}

.metal-logo-overlay {
	z-index: 2;
}

.home-mobile {
	display: none;
}

/*--------------------------------------------------------------
Home three featured sections
--------------------------------------------------------------*/

.link1,
.link2,
.link3 {
	height: 166px;
	position: absolute;
	top: 367px;
	width: 166px;
	z-index: 6;
}


.link1 {
	left: 162px;
}

.link2 {
	left: 388px;
}

.link3 {
	left: 620px;
}

.home-line-one,
.home-line-two,
.home-line-three {
	display: block;
	font-family: 'Teko', serif;
	font-weight: 400;
	letter-spacing: 0.6px;
	text-align: center;
	text-shadow: #000000 1px 2px;
	text-transform: uppercase;
}

.home-line-one {
	margin-top: 44px;
}

.home-line-one,
.home-line-three {
	color: #f15a29;
	font-size: 18px;
	line-height: 18px;
}

.home-line-two {
	color: #dea120;
	font-size: 48px;
	line-height: 48px;
	margin-bottom: -2px;
}

/*--------------------------------------------------------------
Gallery
--------------------------------------------------------------*/

.gallery {
	background-image: url(imgs/metal-box.png);
	float: left;
	height: 923px;
	margin: 35px 0px 0px -146px;
	padding: 53px 58px 0px 58px;
	width: 1108px;
}

.mobile-instructions {
	display: none;
}

/*--------------------------------------------------------------
Flexslider
--------------------------------------------------------------*/

.flexslider,
ul.slides,
.flexslider li {
	float: left;
	height: 100%;
	width: 100%;
}

.flexslider li img {
	float: left;
	height: auto;
	width: 100%;
}

.gallery-caption {
	color: #f0efd5;
	float: left;
	/*font-family: "Sentinel A", "Sentinel B";*/
	font-family: Georgia,Serif;
	font-style: normal;
	font-weight: 700;
	font-size: 20px;
	margin-top: 35px;
	text-align: center;
	width: 100%;
}

/*--------------------------------------------------------------
Events Archive
--------------------------------------------------------------*/

.event-archive {
	float: left;
	margin: 6px 0px 0px 7px;
}

.event-archive-post,
.two-columns-featured {
	position: relative;
}

.event-archive-post,
.event-archive-overlay,
.two-columns-featured {
	float: left;
	height: 528px;
	width: 426px;
}

.two-columns-featured {
	margin-top: -27px;
}

.event-archive-post:nth-of-type(2) {
	height: 496px;
	margin: -16px 0px 0px -2px;
	width: 446px;
}

.event-archive-overlay {
	background-image: url(imgs/box-lights.png);
	height: 100%;
	pointer-events: none;
	position: absolute;
	width: 100%;
	z-index: 3;
}

.event-archive-post:nth-of-type(2) .event-archive-overlay {
	background-image: url(imgs/box-right.png);
}

.event-archive-post img,
.two-columns-featured img {
	float: left;
	height: auto;
	margin: 33px 0px 0px 35px;
	width: calc(100% - 67px);
}

.event-archive-post:nth-of-type(2) img {
	margin: 73px 0px 0px 80px;
	width: calc(100% - 160px);
}

.pagination-direction a {
	background-repeat: no-repeat;
	background-size: 141px 236px !important;
	display: block;
	font-size: 0px;
	height: 236px;
	position: absolute;
	width: 141px;
}

.pagination-left a {
	background: url(imgs/gallery-prev.png);
	left: -103px;
	top: 238px;
	z-index: 1;
	transition: all 0.3s ease-in-out;
}

.pagination-right a {
	background: url(imgs/gallery-next.png);
	right: -19px;
	top: 217px;
	z-index: 4;
	transition: all 0.3s ease-in-out;
}

.pagination-left a:hover {
	background: url(imgs/gallery-prev-on.png);
	transition: all 0.3s ease-in-out;
}

.pagination-right a:hover {
	background: url(imgs/gallery-next-on.png);
	transition: all 0.3s ease-in-out;
}

/*--------------------------------------------------------------
Two Columns Template
--------------------------------------------------------------*/

.two-columns-content {
	float: left;
	margin: 33px 0px 0px 7px;
	width: 1210px;
}

.two-columns-main {
	background: #eae1cf;
	float: left;
	margin-top: -7px;
	min-height: 480px;
	padding: 19px 106px 32px 47px;
	position: relative;
	width: 631px;
}

.two-columns-main h1,
.three-columns-main h1 {
	font-family: 'Oswald', sans-serif;
	font-size: 34px;
	font-weight: 300;
	line-height: 38px;
	margin-bottom: 10px;
}

.two-columns-main h3,
.three-columns-main h3 {
	font-family: 'Oswald', sans-serif;
	font-size: 22px;
	font-weight: 300;
	line-height: 26px;
	margin-bottom: 10px;
}

.two-columns-main p,
.three-columns-main p {
	/*font-family: "Sentinel A", "Sentinel B";*/
	font-family: Georgia,Serif;
	font-size: 20px;
	font-weight: 400;
	line-height: 25px;
	margin-bottom: 12px;
}

.two-columns-main p strong,
.three-columns-main p strong {
	font-weight: 600;
}

.two-columns-main img {
	margin-bottom: 20px;
	margin-top: 12px;
}

img.alignnone {
	height: auto;
	width: 100%;
}

img.alignleft,
img.alignright {
	height: auto;
	width: 300px !important;
}

img.alignleft {
	margin: 7px 30px 0px 0px;
}

img.alignright {
	margin: 7px 0px 0px 30px;
}

.two-columns {
	float: left;
	margin-top: 7px;
	position: relative;
	width: 100%;
}

.two-columns li {
	float: left;
	list-style-type: none;
	width: 100%;
}

.two-columns li a {
	color: #000000;
	text-decoration: none;
}

.two-columns li img {
	float: left;
	height: auto;
	margin: 8px 0px 15px 0px;
	width: 100%;
}

.two-columns li h3 {
	font-family: 'Oswald', sans-serif;
	font-size: 20px;
	font-weight: 300;
	line-height: 26px;
	margin-bottom: -3px;
}

.two-columns li h3.video-title {
	margin-bottom: 7px;
}

.two-columns li p {
	font-size: 15px;
	font-weight: 500;
	line-height: 21px;
	margin-bottom: 10px;
}

.column-one,
.column-two {
	float: left;
	width: 300px;
}

.column-one {
	margin-right: 30px;
}

.page-bottom {
	float: left;
	height: 70px;
	width: 100%;
}

.back-to-top,
.button-link a {
	background-color: #f15a29;
	border-radius: 8px;
	box-shadow: 2px 2px 4px #888888;
	color: #ffffff !important;
	cursor: pointer;
	float: left;
	font-family: 'Oswald', sans-serif;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.5px;
	margin: 20px 0px 0px 0px;
	padding: 5px 0px 5px 0px;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	width: 190px !important;
}

/*--------------------------------------------------------------
Three Columns Template
--------------------------------------------------------------*/

.three-columns-content {
	float: left;
	width: 1220px;
}

.three-columns-main {
	background: #eae1cf;
	float: left;
	margin: 26px 0px 0px 104px;
	min-height: 480px;
	padding: 19px 106px 32px 47px;
	position: relative;
	width: 963px;
}

/*--------------------------------------------------------------
Contact form
--------------------------------------------------------------*/

input,
textarea {
	border: 0px !important;
	border-radius: 0px !important;
}

input[type="submit"] {
  background-color: #f15a29;
  border-radius: 8px !important;
  box-shadow: 2px 2px 4px #888888;
  color: #ffffff;
  cursor: pointer;
  display: block;
  float: left;
  font-family: 'Oswald', sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.5px;
  margin: 0px 0px 0px 0px;
  padding: 5px 0px 5px 0px;
  text-align: center;
  text-transform: uppercase;
  width: 190px !important;
}

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

.content-border-left {
	background-image: url(imgs/content-border-left.jpg);
	height: 100%;
	left: 0px;
	position: absolute;
	top: 0px;
	width: 22px;
}

.content-border-right {
	background-image: url(imgs/content-border-right.jpg);
	height: 100%;
	right: 0px;
	position: absolute;
	top: 0px;
	width: 25px;
}

.content-border-top,
.content-border-top-wide {
	background-image: url(imgs/content-border-top.png);
	height: 52px;
	left: 0px;
	position: absolute;
	top: -26px;
	width: 100%;
	z-index: 5;
}

.content-border-top-wide {
	background-image: url(imgs/content-border-top-wide.png);
}

.content-border-bottom,
.content-border-bottom-wide {
	background-image: url(imgs/content-border-bottom.png);
	bottom: -26px;
	height: 57px;
	left: 0px;
	position: absolute;
	width: 100%;
	z-index: 5;
}

.content-border-bottom-wide {
	background-image: url(imgs/content-border-bottom-wide.png);
}

/*--------------------------------------------------------------
Open/close grid
--------------------------------------------------------------*/

.grid {
	display: grid;
	float: left;
	/*font-family: "Sentinel A", "Sentinel B";*/
	font-family: Georgia,Serif;
	grid-gap: 30px;
	grid-template-areas:
    	"item item item item"
    	"desc desc desc desc";
	grid-template-columns: repeat(3, 1fr);
	margin-top: 13px;
	width: calc(100% + 28px);
}

.grid-section {
	float: left;
	width: 100%;
}

.grid-item {
	display: flex;
	position: relative;
}

.grid-item img {
	cursor: pointer;
	float: left;
	height: auto;
	margin-bottom: 16px;
	width: 100%;
}

.grid-name {
	font-size: 20px;
	font-weight: 700;
}

.grid-title {
	font-size: 15px;
	font-weight: 700;
	line-height: 21px;
}

.grid-description {
	display: none;
	grid-area: desc;
	margin: -19px 0px 7px 0px;
	position: relative;
	width: calc(100% - 30px);
}

.grid-description p {
	font-size: 15px;
	font-weight: 400;
	line-height: 21px;
}

.grid-description a {
	color: #000000;
}

.grid-item-content {
	float: left;
	width: 100%;
}

.grid-fade {
	opacity: 0.25;
	transition: linear .3s;
}

.grid-close {
	cursor: pointer;
	position: absolute;
	right: -62px;
	top: 6px;
}

.grid-close > div {
	background: #b7b9bb;
	display: block;
	height: 7px;
	margin-bottom: 9px;
	transition: linear .2s;
	width: 35px;
}

.grid-close > div:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(45deg);
	-ms-transform: translateY(10px) rotate(45deg);
	-o-transform: translateY(10px) rotate(45deg);
	transform: translateY(10px) rotate(45deg);
}

.grid-close > div:nth-of-type(2) {
	-webkit-transform: translateY(-6px) rotate(-45deg);
	-ms-transform: translateY(-6px) rotate(-45deg);
	-o-transform: translateY(-6px) rotate(-45deg);
	transform: translateY(-6px) rotate(-45deg);
}

/*--------------------------------------------------------------
Marketing Assets
--------------------------------------------------------------*/

.asset-images-title {
	color: #000000;
	font-family: 'Oswald', sans-serif;
	font-size: 24px;
	font-weight: 300;
	margin: 6px 0px 15px 0px;
}

.image-group {
	float: left;
	width: 100%;
}

.asset-images {
	font-family: 'Oswald', sans-serif;
	float: left;
	margin-bottom: 26px;
	width: 100%;
}

.asset-images img {
	float: left;
	height: auto;
	width: 100%;
}

.asset-images-featured {
	float: left;
	margin-right: 30px;
	width: 630px;
}

.image-description {
	float: left;
	font-size: 20px;
	font-weight: 300;
	height: 42px;
	margin-top: 2px;
	text-align: center;
	width: 100%;
}

.asset-images-gallery li {
	float: left;
	list-style-type: none;
	margin-bottom: 10px;
	margin-right: 20px !important;
	width: 300px;
}

/*--------------------------------------------------------------
Videos
--------------------------------------------------------------*/

.video-link {
	cursor: pointer;
}

.video-url {
	display: none;
}

.video-overlay {
	display: none;
	height: calc(100% - 82px);
	left: 41px;
	position: fixed;
	top: 41px;
	width: calc(100% - 82px);
	z-index: 100;
}

.video-embed {
	background: #000000;
	height: calc(100% - 130px);
	left: 0px;
	padding: 55px 55px 55px 55px;
	position: absolute;
	top: 0px;
	width: calc(100% - 107px);
}

.video-frame-right {
	background-image: url(imgs/video-frame-right.png);
	height: calc(100% - 169px);
	position: absolute;
	right: 0px;
	top: 70px;
	width: 52px;
	z-index: 103;
}

.video-frame-left {
	background-image: url(imgs/video-frame-left.png);
	height: calc(100% - 170px);
	left: 0px;
	position: absolute;
	top: 71px;
	width: 55px;
	z-index: 103;
}

.video-frame-top {
	background-image: url(imgs/video-frame-top.png);
	height: 62px;
	left: 71px;
	position: absolute;
	top: 0px;
	width: calc(100% - 141px);
	z-index: 103;
}

.video-frame-bottom {
	background-image: url(imgs/video-frame-bottom.png);
	bottom: 0px;
	height: 81px;
	left: 70px;
	position: absolute;
	width: calc(100% - 140px);
	z-index: 103;
}

.video-frame-top-left-corner {
	background-image: url(imgs/video-frame-top-left-corner.png);
	height: 70px;
	left: 0px;
	position: absolute;
	top: 1px;
	width: 71px;
	z-index: 102;	
}

.video-frame-bottom-left-corner {
	background-image: url(imgs/video-frame-bottom-left-corner.png);
	bottom: -1px;
	height: 100px;
	left: 0px;
	position: absolute;
	width: 70px;
	z-index: 102;	
}

.video-frame-top-right-corner {
	background-image: url(imgs/video-frame-top-right-corner.png);
	height: 70px;
	position: absolute;
	right: 2px;
	top: 0px;
	width: 71px;
	z-index: 102;	
}

.video-frame-bottom-right-corner {
	background-image: url(imgs/video-frame-bottom-right-corner.png);
	bottom: -1px;
	height: 100px;
	position: absolute;
	right: 0px;
	width: 70px;
	z-index: 102;	
}

.video-close > div {
	cursor: pointer;
	display: block;
	height: 25px;
	position: absolute;
	right: 25px;
	top: 25px;
	width: 25px;
	z-index: 104;
}

.video-close > div {
	background: #ffffff;
	height: 2px;
	width: 25px;
}

.video-close > div:nth-of-type(1) {
	-webkit-transform: translateY(0px) rotate(45deg);
	-ms-transform: translateY(0px) rotate(45deg);
	-o-transform: translateY(0px) rotate(45deg);
	transform: translateY(0px) rotate(45deg);
}

.video-close > div:nth-of-type(2) {
	-webkit-transform: translateY(0px) rotate(-45deg);
	-ms-transform: translateY(0px) rotate(-45deg);
	-o-transform: translateY(0px) rotate(-45deg);
	transform: translateY(0px) rotate(-45deg);
}

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

footer {
	background-image: url(imgs/footer.png);
	float: left;
	margin: 0px 0px 0px 234px;
	height: 426px;
	width: 1043px;
}

.home footer {
	margin-top: 65px;
}

.post-type-archive-events footer {
	margin-top: -190px;
}

.page-template-gallery footer {
	margin-top: -114px;
}

.page-template-template-two-columns footer,
.page-template-template-three-columns footer,
.page-template-template-grid footer,
.events-template-template-marketing-assets footer,
.page-template-template-videos footer,
.single-events footer {
	margin-top: -163px;
}

.footer-social {
	margin: 248px 0px 0px 130px;
	position: absolute;
}

.footer-social a {
	float: left;
}

.footer-social a:first-child,
.footer-social a:nth-of-type(3) {
	margin-right: 21px;
}

.footer-social a:nth-of-type(2) {
	margin-right: 23px;
}

.footer-social a:nth-of-type(4) {
	margin-right: 22px;
}

.footer-social img {
	float: left;
	height: 25px;
	opacity: 0.7;
	width: 25px;
	transition: all 0.3s ease-in-out;
}

.join {
	margin: 227px 0px 0px 402px;
	position: absolute;
	opacity: 0.7;
	transition: all 0.3s ease-in-out;
}

.footer-social img:hover,
.join:hover {
	opacity: 1;
	transition: all 0.3s ease-in-out;
}