/*----------------------------------------
------------------------------------------
	## CLEARFIX
------------------------------------------
----------------------------------------*/

.cf::after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: "";
	clear: both;
	height: 0;
}

/*----------------------------------------
------------------------------------------
	## PADDING HACK
------------------------------------------
----------------------------------------*/

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	max-height: 999999px;
}

* html .cf { zoom: 1; }
*:first-child+html .cf { zoom: 1; }

/*----------------------------------------
------------------------------------------
	## GERAL
------------------------------------------
----------------------------------------*/

* {
	list-style: none;	
	margin: 0;
	padding: 0;
	border: 0;
	text-decoration: none;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
}

*:focus {
	outline: 0;
}

img.skype_pnh_logo_img { display: none!important }

a, button, input {
	-webkit-transition: .5s;
	-moz-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
}

body {
	background-color: #fff;
}

img {
	max-width: 100%;
}

/*----------------------------------------
------------------------------------------
	## GRIDS & COLS
------------------------------------------
----------------------------------------*/

.max-grid {
	width: 1200px;
	margin: 0 auto;
	overflow: visible;
	padding-left: 20px;
	padding-right: 20px;
}

.col-2,
.col-2-3,
.col-3 {
	width: 100%;
	text-align: center;
	display: flex;
}

.col-2 .wrap,
.col-3 .wrap,
.col-2-3 .wrap {
	padding: 0;
	display: inline-block;
	vertical-align: middle;
	overflow: visible;
}

.col-2 .wrap {
	width: 50%;
}

.col-2-3 .wrap:first-child {
	width: 65%;
}

.col-2-3 .wrap:last-child {
	width: 35%;
}

.col-3 .wrap {
	width: 33.3%;
}

/*----------------------------------------
------------------------------------------
	## TITLES / FONTS / BUTTONS
------------------------------------------
----------------------------------------*/

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

@font-face {
	font-family: 'londontwo';
	src: url('../fonts/londontwo-webfont.woff2') format('woff2'),
		 url('../fonts/londontwo-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

* {
	font-family: "Open Sans", sans-serif;
	font-weight: 400;
}

.title h1 {
	font-family: "londontwo", sans-serif;
	font-size: 115px;
	line-height: 115px;
	color: #ff0000;
	text-align: center;
	display: block;
	margin: 0 auto;
	text-transform: uppercase;
	letter-spacing: 2px;
}

.title span {
	font-weight: 300;
	color: #aaa;
	font-size: 22px;
	line-height: 22px;
	display: block;
	margin: 0 auto;
	text-align: center;
	letter-spacing: 10px;
	text-transform: uppercase;
}

.sub-title h2 {
	font-size: 180px;
	font-family: "londontwo", sans-serif;
	line-height: 180px;
	letter-spacing: -2px;
	color: #ddd;
	text-align: center;
	text-transform: uppercase;
}

h3 {
	font-family: "londontwo", sans-serif;
	font-size: 30px;
	color: #333;
	line-height: 30px;
	text-transform: uppercase;
}

p {
	font-size: 22px;
	line-height: 40px;
	color: #333;
	text-align: left;
}

p strong {
	font-weight: 700;
}

a.red,
button.red,
input.red {
	width: 430px;
	height: 90px;
	line-height: 90px;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
	background-color: #ce2334;
	font-family: "londontwo", sans-serif;
	letter-spacing: 2px;
	font-size: 28px;
	display: block;
	border-radius: 45px;
	cursor: pointer;
}

a.red:hover,
button.red:hover,
input.red:hover {
	background-color: #111;
}

a.hollow,
button.hollow,
input.hollow {
	width: 350px;
	height: 70px;
	line-height: 70px;
	color: #ce2334;
	text-align: center;
	text-transform: uppercase;
	border: 2px solid #ce2334;
	font-family: "londontwo", sans-serif;
	letter-spacing: 2px;
	font-size: 20px;
	display: block;
	border-radius: 35px;
	background-color: transparent;
}

a.hollow:hover,
button.hollow:hover,
input.hollow:hover {
	background-color: #ce2334;
	color: #fff;
	cursor: pointer;
}

#FsNav ul li {
	text-align: center;
	margin: 20px auto;
}

#FsNav ul li a {
	font-size: 30px;
	color: #fff;
	text-transform: uppercase;
	font-family: "londontwo", sans-serif;
}

#FsNav ul li a:hover,
#FsNav ul li a.active {
	color: #ce2334;
}

/*----------------------------------------
------------------------------------------
	## HOME
------------------------------------------
----------------------------------------*/

#home {
	height: 864px;
}

#home .bg-slider {
	position: absolute;
	right: 0;
	left: 0;
	margin: 0 auto;
	z-index: -1;
	height: 864px;
	background-color: #000;
}

#home .bg-slider::after {
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	left: 0;
	margin: 0 auto;
	display: block;
	width: 100%;
	height: 864px;
	background: transparent url(../imgs/bg-grid.png) center center no-repeat;
	background-size: cover;
}

#home .bg-slider div {
	display: block;
	width: 100%;
	height: 864px;
	background-size: cover!important;
	background-position: center center;
	background-repeat: no-repeat;
}

#home .bg-slider div.slide-001 { background: url(../imgs/slide-001.jpg); }
#home .bg-slider div.slide-002 { background: url(../imgs/slide-002.jpg); }
#home .bg-slider div.slide-003 { background: url(../imgs/slide-003.jpg); }
#home .bg-slider div.slide-004 { background: url(../imgs/slide-004.jpg); }

#home #floating-menu {
	padding-top: 70px;
}

#home #floating-menu h1 {
	text-align: left;
}

#home #floating-menu span.phone-top {
	color: #fff;
	font-size: 32px;
	line-height: 32px;
	font-family: "londontwo", sans-serif;
	text-align: right;
	float: right;
	display: block;
	margin: -5px 40px 0 0;
}

#home .title {
	margin-top: 245px;
}

#home .title span {
	letter-spacing: 50px;
	font-size: 40px;
	padding-left: 50px;
	margin-bottom: 20px;
}

.red-line {
	display: block;
	margin: 0 auto 100px auto;
	top: -75px;
	width: 2px;
	height: 150px;
	background-color: #ff0000;
	position: relative;
	z-index: 2;
}

#about-us img {
	text-align: center;
	display: block;
	margin: -100px auto 20px auto;
	position: relative;
	z-index: 2;
}

#about-us p {
	text-align: center;
}

#about-us a {
	margin: 75px auto 150px auto;
}

#gallery .masonry {
	width: 100%;
	max-width: 100%;
	padding: 0;
	margin: 0;
}

#gallery .masonry::after {
	content: "";
	display: block;
	clear: both;
}

#gallery .masonry .grid-sizer,
#gallery .masonry .grid-item {
	width: 25%;
}

#gallery .masonry .grid-item {
	float: left;
	line-height: 0;
}

#gallery .masonry .grid-item img {
	width: 100%;
	height: 100%;
	filter: url(~"data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
	-webkit-filter: grayscale(100%) brightness(50%);
	-moz-filter: grayscale(100%) brightness(50%);
	-ms-filter: grayscale(100%) brightness(50%);
	-o-filter: grayscale(100%) brightness(50%);
	filter: gray brightness(50%);
	-webkit-transition: .3s;
	-moz-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}

#gallery .masonry .grid-item img:hover {
	filter: none;
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
	-ms-filter: grayscale(0%);
	-o-filter: grayscale(0%);
}

#gallery .masonry .grid-item a img {
	filter: none;
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
	-ms-filter: grayscale(0%);
	-o-filter: grayscale(0%);
	background-color: #111;
}

#gallery .masonry .grid-item a:hover img {
	background-color: #ce2334;
}

#gallery .masonry .grid-item.responsive-1 {
	display: none;
}

#find-us {
	padding-top: 150px;
}

#find-us .col-2-3 p {
	max-width: 500px;
	font-size: 24px;
	line-height: 30px;
	color: #222;
}

#find-us .col-2-3 .wrap:first-child img {
	margin-left: -100px;
}

#find-us .col-2-3 .wrap:first-child .white-bg {
	background-color: #fff;
	display: block;
	max-width: 470px;
	height: auto;
	position: relative;
	z-index: 3;
}

#find-us .col-2-3 .wrap:first-child h2 {
	font-size: 130px;
	line-height: 110px;
	position: relative;
	z-index: 2;
	font-family: "londontwo", sans-serif;
	color: #ce2334;
	text-transform: uppercase;
	text-align: left;
	margin: -65px 0 0 100px;
}

#find-us .col-2-3 .wrap:first-child h2 span {
	display: block;
}

#find-us .col-2-3 .wrap:first-child a {
	zoom: 60%;
	margin: -120px 0 300px 620px;
	position: relative;
	z-index: 4;
}

#find-us .col-2-3 .wrap:first-child a::before {
	content: "";
	display: block;
	vertical-align: middle;
	width: 110px;
	height: 1px;
	background-color: #ce2334;
	position: absolute;
	margin: 40px 0 0 -110px;
}

#find-us .col-2-3 .wrap:last-child p {
	margin-top: 50px;
}

#find-us .col-2-3 .wrap:last-child img {
	text-align: left;
	display: block;
	margin: 80px 0 70px 0;
}

#find-us .col-2-3 .wrap:last-child a {
	display: block;
}

#find-us .col-2-3 p span {
	font-family: "londontwo", sans-serif;
	display: block;
	margin: 0 auto 10px auto;
	color: #ce2334;
}

#find-us a {
	margin: 0px auto 0 auto;
}

#services {
	background-color: #000;
	padding-top: 100px;
	padding-bottom: 100px;
}

#services .sub-title h2 {
	font-size: 120px;
	line-height: 120px;
	color: #444;
	letter-spacing: 50px;
}

#services img {
	margin: -50px auto 0 auto;
	display: block;
	position: relative;
	z-index: 2;
}

#services ul {
	position: relative;
	z-index: 3;
	margin-top: -110px;
}

#services ul li {
	border-bottom: 1px solid #444;
	color: #fff;
	font-size: 14px;
	line-height: 24px;
	text-align: center;
	text-transform: uppercase;
	font-family: "londontwo", sans-serif;
	max-width: 275px;
	padding: 10px 0;
	margin: 0 auto;
}

#services ul li:last-child {
	border: none;
}

#services a {
	margin: 70px auto 0 auto;
}

#bottom {
	background: #fff url(../imgs/bg-bot.jpg) center bottom no-repeat;
	padding-top: 100px;
	padding-bottom: 70px;
}

#bottom ul.menu-bot {
	display: block;
	margin: 0 auto;
	text-align: center;
}

#bottom ul.menu-bot li {
	display: inline-block;
	margin: 0 10px;
}

#bottom ul.menu-bot li a {
	font-size: 14px;
	line-height: 14px;
	color: #555;
	text-transform: uppercase;
	text-decoration: none;
	letter-spacing: 2px;
}

#bottom ul.menu-bot li a:hover {
	color: #ce2334;
}

#bottom ul.menu-bot::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #eee;
	margin: 50px auto;
}

#bottom .logo-social .wrap {
	text-align: right;
	margin-right: 40px;
}

#bottom .logo-social .wrap:last-child {
	text-align: left;
	margin-left: 40px;
}

#bottom .logo-social .wrap:last-child ul li {
	display: inline-block;
	width: 45px;
	height: 36px;
	margin: 0 5px;
}

#bottom .logo-social .wrap:last-child ul li a {
	display: inline-block;
	width: 45px;
	height: 36px;
	text-indent: -9999px;
	overflow: hidden;
	font-size: 0;
	background-position: center center;
	background-repeat: no-repeat;
}

#bottom .logo-social .wrap:last-child ul li a.face { background-image: url(../imgs/icon-facebook.png); }
#bottom .logo-social .wrap:last-child ul li a.youtube { background-image: url(../imgs/icon-youtube.png); }
#bottom .logo-social .wrap:last-child ul li a.instagram { background-image: url(../imgs/icon-instagram.png); }
#bottom .logo-social .wrap:last-child ul li a.face:hover { background-image: url(../imgs/icon-facebook-on.png); }
#bottom .logo-social .wrap:last-child ul li a.youtube:hover { background-image: url(../imgs/icon-youtube-on.png); }
#bottom .logo-social .wrap:last-child ul li a.instagram:hover { background-image: url(../imgs/icon-instagram-on.png); }

#bottom p.rights {
	text-align: center;
	display: block;
	margin: 30px auto 0 auto;
	font-size: 15px;
	text-transform: uppercase;
	color: #bbb;
}

/*----------------------------------------
------------------------------------------
	## ABOUT US
------------------------------------------
----------------------------------------*/

#about-us.internal {
	padding-bottom: 150px;
}

#about-us.internal .sub-title-internal {
	font-size: 26px;
	line-height: 36px;
	text-transform: uppercase;
	font-weight: 300;
	letter-spacing: 5px;
	margin: 100px 0 50px 0;
}

#about-us.internal .sub-title-internal strong {
	font-weight: 700;
}

#about-us.internal p {
	text-align: left;
}

#about-us.internal .section-01 {
	background: url(../imgs/bg-about-us-01.jpg) center top no-repeat;
	min-height: 556px;
	margin: 100px 0 50px 0;
}

#about-us.internal .section-01 .title {
	padding-top: 170px;
}

#about-us.internal .section-01 .title span {
	font-weight: 300;
	color: #aaa;
	font-size: 40px;
	line-height: 40px;
	display: block;
	margin: 0 auto 0 5px;
	text-align: left;
	letter-spacing: 5px;
	text-transform: uppercase;
}

#about-us.internal .section-01 .title h2 {
	font-family: "londontwo", sans-serif;
	font-size: 90px;
	line-height: 90px;
	color: #ff0000;
	text-align: left;
	display: block;
	margin: 0 auto;
	text-transform: uppercase;
}

#about-us.internal .section-01 .title h2::after {
	content: "";
	display: block;
	width: 2px;
	height: 250px;
	position: absolute;
	background: #ce2334;
	margin: 80px 0 0 200px;
	z-index: 299;
}

#about-us.internal .section-01 .title img {
	margin-top: 50px;
}

#about-us.internal .magazines {
	margin: 70px auto;
}

#about-us.internal .magazines img {
	margin: 0 auto;
	display: block;
	text-align: center;
	position: relative;
	z-index: 1;
}

#about-us.internal .magazines a {
	position: relative;
	z-index: 2;
	float: right;
	margin: -200px 20px 0 0;
}

#about-us.internal .magazines a::before {
	content: "";
	display: block;
	width: 130px;
	height: 2px;
	background-color: #ce2334;
	position: absolute;
	z-index: 5;
	margin: 30px 0 0 -130px;
}

#about-us.internal .magazines .hidden-images {
	display: none;
}

#about-us.internal .section-02 {
	background: url(../imgs/bg-about-us-02.jpg) center top no-repeat;
	min-height: 376px;
	margin: 100px 0 50px 0;
}

#about-us.internal .section-02 .title {
	padding-top: 140px;
}

#about-us.internal .section-02 .title span {
	font-weight: 300;
	color: #fff;
	font-size: 25px;
	line-height: 25px;
	display: block;
	margin: 0 auto 0 5px;
	text-align: center;
	letter-spacing: 5px;
	text-transform: uppercase;
}

#about-us.internal .section-02 .title h2 {
	font-family: "londontwo", sans-serif;
	font-size: 70px;
	line-height: 70px;
	color: #fff;
	text-align: center;
	display: block;
	margin: 0 auto;
	text-transform: uppercase;
}

#about-us.internal .red-line {
	margin-bottom: 0;
}

#services.internal {
	padding-top: 200px;
}

#services.internal a.red {
	margin: -245px auto 100px auto;
}

/*----------------------------------------
------------------------------------------
	## SERVICES
------------------------------------------
----------------------------------------*/

#about-us.internal.internal-services {
	background: url(../imgs/bg-internal-bot.jpg) center bottom no-repeat;
	padding-bottom: 1px;
}

#about-us.internal.internal-services .sub-title-internal {
	font-size: 22px;
	line-height: 32px;
	text-transform: none;
	letter-spacing: normal;
	text-align: center;
	font-weight: 400;
}

#about-us.internal.internal-services .sub-title-internal strong {
	text-transform: uppercase;
}

#about-us.internal.internal-services .section-01 {
	background: url(../imgs/bg-services.jpg) center top no-repeat;
	min-height: 452px;
	margin: 100px 0 50px 0;
}

#about-us.internal.internal-services .section-01 .red-line {
	top: -40px;
}

#about-us.internal.internal-services .section-01 img {
	display: none;
}

#about-us.internal.internal-services .col-3 {
	margin-top: 150px;
}

#about-us.internal.internal-services .col-3 .wrap p {
	margin-bottom: 60px;
}

#about-us.internal.internal-services .col-3 .wrap p strong {
	display: block;
	font-family: "londontwo", sans-serif;
	color: #555;
	text-transform: uppercase;
	font-size: 28px;
	line-height: 30px;
	margin-bottom: 10px;
}

#about-us.internal.internal-services .col-3 .wrap:last-child p {
	text-align: right;
}

#about-us.internal.internal-services .col-3 .wrap img {
	margin-top: -400px;
}

/*----------------------------------------
------------------------------------------
	## GALLERY
------------------------------------------
----------------------------------------*/

#internal.internal-gallery {
	background: url(../imgs/bg-internal-bot.jpg) center bottom no-repeat;
	padding-bottom: 100px;
}

#internal .sub-title-internal {
	font-size: 22px;
	line-height: 32px;
	text-transform: none;
	letter-spacing: normal;
	text-align: center;
	font-weight: 400;
	margin: 100px 0;
}

#internal .sub-title-internal strong {
	text-transform: uppercase;
	font-weight: 700;
}

#internal #gallery .masonry .grid-item a img {
	filter: url(~"data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
	-webkit-filter: grayscale(100%) brightness(50%);
	-moz-filter: grayscale(100%) brightness(50%);
	-ms-filter: grayscale(100%) brightness(50%);
	-o-filter: grayscale(100%) brightness(50%);
	filter: gray brightness(50%);
	-webkit-transition: .3s;
	-moz-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}

#internal #gallery .masonry .grid-item a img:hover {
	filter: none;
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
	-ms-filter: grayscale(0%);
	-o-filter: grayscale(0%);
}

#internal #gallery .hidden-01 * {
	display: none!important;
	visibility: hidden;
	opacity: 0;
}

#load-more input {
	margin: 100px auto 0 auto;
}

/*----------------------------------------
------------------------------------------
	## MECHANICAL
------------------------------------------
----------------------------------------*/

#internal.internal-mechanical {
	background: url(../imgs/bg-internal-bot.jpg) center bottom no-repeat;
	padding-bottom: 200px;
	padding-top: 250px;
}

#internal.internal-mechanical .bg-mechanical {
	background: url(../imgs/mechanical-bg.jpg) center 0 no-repeat;
}

#internal.internal-mechanical p {
	text-align: right;
	color: #333;
	margin-top: 100px;
	max-width: 400px;
	float: right;
}

#internal.internal-mechanical p strong {
	display: block;
	font-family: "londontwo", sans-serif;
	font-size: 32px;
	line-height: 32px;
	text-transform: uppercase;
	font-weight: normal;
	margin-bottom: 30px;
}

#internal.internal-mechanical p a {
	float: right;
	margin: 50px 175px 0 0;
}

#internal.internal-mechanical p a::after {
	content: "";
	display: block;
	width: 175px;
	height: 2px;
	background: #ce2334;
	float: right;
	margin: 45px -175px 0 0;
}

#internal.internal-mechanical p a:hover::after {
	background: #111;
}

/*----------------------------------------
------------------------------------------
	## CONTACT
------------------------------------------
----------------------------------------*/

#internal.internal-contact {
	padding-top: 100px;
}

#internal.internal-contact h2 {
	margin: 0 auto 50px auto;
	font-family: "londontwo", sans-serif;
	font-size: 40px;
	line-height: 40px;
	text-align: center;
	color: #666;
	text-transform: uppercase;
	font-weight: normal;
	letter-spacing: 5px;
}

#internal.internal-contact .col-2 .wrap:first-child {
	padding-right: 20px;
}

#internal.internal-contact .col-2 input,
#internal.internal-contact textarea {
	height: 70px;
	background: transparent;
	border: 1px solid #ccc;
	border-radius: 35px;
	line-height: 70px;
	font-size: 24px;
	font-weight: 400;
	color: #333;
	padding: 0 40px;
	width: 100%;
	margin-top: 20px;
}

#internal.internal-contact input[type=submit] {
	margin: 50px auto;
}

#internal.internal-contact textarea {
	height: 240px;
	line-height: 30px;
	padding-top: 20px;
	resize: vertical;
}

#find-us.find-us-contact {
	padding-bottom: 150px;
}

#find-us.find-us-contact .col-2-3 .wrap:last-child img {
	margin: 0 0 50px 0;
}

#find-us.find-us-contact .col-2-3 .wrap:last-child p {
	margin-top: 30px;
}

#find-us p.bot-msg {
	text-align: left;
	line-height: 30px;
}

#find-us p.bot-msg::before {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #222;
	margin-bottom: 30px;
}

#g-maps iframe {
	pointer-events: none;
}

#g-maps iframe.clicked {
	pointer-events: auto;
}

/*----------------------------------------
------------------------------------------
	## TOUR 360
------------------------------------------
----------------------------------------*/

/*----------------------------------------
------------------------------------------
	## PACE
------------------------------------------
----------------------------------------*/

.pace {
	-webkit-pointer-events: none;
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	z-index: 2000;
	position: fixed;
	margin: auto;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	width: 350px;
	background: #fff;
	overflow: hidden;
}

.pace .pace-progress {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	max-width: 350px;
	position: fixed;
	z-index: 2000;
	display: block;
	position: absolute;
	top: 0;
	right: 100%;
	height: 100%;
	width: 100%;
	background: #ce2334;
}

.pace.pace-inactive {
	display: none;
}

/*----------------------------------------
------------------------------------------
	## RESPONSIVE
------------------------------------------
----------------------------------------*/

@media only screen and (max-width: 1200px) {

	.max-grid {
		width: 100%;
	}

}

@media only screen and (max-width: 1100px) {

	.sub-title h2 {
		font-size: 150px;
		line-height: 150px;
	}

	#about-us img {
		margin-top: -80px;
	}

	#about-us p {
		padding: 0 20px;
	}

	#gallery .masonry .grid-sizer,
	#gallery .masonry .grid-item {
		width: 33.33%;
	}

	#gallery .masonry .grid-item.responsive-1 {
		display: block;
	}

	#find-us .col-2-3 .wrap:first-child .white-bg {
		max-width: 350px;
	}

	#find-us .col-2-3 .wrap:first-child h2 {
		margin-left: 30px;
	}

	#find-us .col-2-3 .wrap:first-child a {
		margin-left: 430px;
	}

	#services .sub-title h2 {
		font-size: 100px;
		line-height: 100px;
		letter-spacing: 0px;
	}

	#services img {
		margin-top: -30px;
	}

	/**-------------------------------------------
	----------------------------------------------
		## INTERNAL
	----------------------------------------------
	-------------------------------------------**/

	#internal.internal-mechanical p a {
		margin-right: 100px;
	}

	#internal.internal-mechanical p a::after {
		width: 100px;
		margin-right: -100px;
	}

	#find-us p.bot-msg {
		margin-top: 50px;
	}

}

@media only screen and (max-width: 960px) {

	#home #floating-menu h1 {
		margin-top: -20px;
	}

	#home .title span {
		font-size: 30px;
		letter-spacing: 30px;
		line-height: 30px;
	}

	.title h1 {
		font-size: 90px;
		line-height: 90px;
	}

	.sub-title h2,
	#find-us .sub-title h2,
	#find-us .col-2-3 .wrap:first-child h2 {
		font-size: 100px;
		line-height: 100px;
	}

	#about-us img {
		margin-top: -30px;
	}

	#find-us .col-2-3 {
		display: block;
	}

	#find-us .col-2-3 .wrap:first-child,
	#find-us .col-2-3 .wrap:last-child {
		width: 100%;
		display: block;
	}

	#find-us .col-2-3 .wrap:first-child img {
		margin: 0 auto;
		text-align: center;
	}

	#find-us .col-2-3 .wrap:first-child .white-bg {
		max-width: initial;
		background-color: initial;
		position: initial;
		z-index: initial;
		height: initial;
		display: initial;
	}

	#find-us .col-2-3 .wrap:first-child h2 {
		margin: 50px auto;
		text-align: center;
	}

	#find-us .col-2-3 .wrap:first-child h2 span {
		display: none;
	}

	#find-us .col-2-3 .wrap:first-child a,
	#find-us .col-2-3 .wrap:last-child img {
		display: none;
	}

	#find-us .col-2-3 .wrap p {
		max-width: initial;
		margin: 0 auto;
		text-align: center;
	}

	#find-us .col-2-3 p span br {
		display: none;
	}

	#find-us .col-2-3 .wrap:last-child a {
		margin: 70px auto 100px auto;
		display: block;
	}

	#services .col-3 {
		display: block;
		margin-top: -200px;
	}

	#services .col-3 .wrap {
		width: 100%;
		display: block;
	}

	#services ul {
		margin-top: 0;
	}

	#services ul li {
		font-size: 20px;
		line-height: 40px;
		max-width: 80%;
	}

	#services ul li:last-child {
		border-bottom: 1px solid #444;
	}

	/**-------------------------------------------
	----------------------------------------------
		## INTERNAL
	----------------------------------------------
	-------------------------------------------**/

	#about-us.internal .section-01 .title h2::after {
		margin-left: 50px;
	}

	#about-us.internal .magazines a {
		width: 250px;
	}

	#about-us.internal.internal-services .col-3 {
		display: block;
		margin-top: -200px;
	}

	#about-us.internal.internal-services .wrap {
		width: 100%;
		display: block;
	}

	#about-us.internal.internal-services .wrap.second-wrap {
		display: none;
	}

	#about-us.internal.internal-services .section-01 {
		padding-top: 150px;
	}

	#about-us.internal.internal-services .section-01 .red-line {
		display: none;
	}

	#about-us.internal.internal-services .section-01 img {
		display: block;
		margin: -210px auto 250px auto;
	}

	#about-us.internal.internal-services .col-3 .wrap:last-child p {
		text-align: left;
	}

	#internal.internal-mechanical {
		padding-top: 150px;
	}

	#internal.internal-mechanical .bg-mechanical {
		background-position: -290px 0;
	}

	#internal.internal-mechanical .col-2 {
		display: block;
	}

	#internal.internal-mechanical .col-2 .wrap {
		width: 100%;
		display: block;
	}

	#internal.internal-mechanical .col-2 img {
		margin-top: 100px;
	}

	#internal.internal-mechanical p {
		margin: 0;
		float: none;
		max-width: initial;
		text-align: center;
	}

	#internal.internal-mechanical p a {
		margin: 50px auto;
		float: none;
	}

	#internal.internal-mechanical p a::after {
		display: none;
	}

	#internal.internal-contact .col-2 {
		display: block;
	}

	#internal.internal-contact .col-2 .wrap {
		width: 100%;
		display: block;
	}

	#internal.internal-contact .col-2 .wrap:first-child {
		padding: 0;
	}

	#find-us p.bot-msg::before {
		max-width: 80%;
		margin: 50px auto 50px auto;
		background-color: #ddd;
	}

}

@media only screen and (max-width: 750px) {

	.pace {
		width: 50%;
		height: 2px;
	}

	.pace .pace-progress {
		max-width: 100%;
	}

	/**-------------------------------------------
	----------------------------------------------
		## INTERNAL
	----------------------------------------------
	-------------------------------------------**/

	#about-us.internal .section-01 {
		background-position: 0 top;
		margin-top: 0;
	}

	#about-us.internal .section-01 .title span,
	#about-us.internal .section-01 .title h2 {
		text-align: center;
	}

	#about-us.internal .section-01 .title h2::after {
		display: none;
	}

	#about-us.internal .magazines a {
		float: none;
		margin: 50px auto 0 auto;
		width: 80%;
		max-width: 350px;
	}

	#about-us.internal .magazines a::before {
		display: none;
	}

}

@media only screen and (max-width: 680px) {

	#floating-menu .col-2 {
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-orient: vertical;
		-moz-box-orient: vertical;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: start;
		-moz-box-align: start;
		-ms-flex-align: start;
		-webkit-align-items: flex-start;
		align-items: flex-start;
	}

	#floating-menu .col-2 .wrap {
		width: 100%;
		display: block;
	}

	#floating-menu .col-2 .wrap:first-child {
		-webkit-box-ordinal-group: 2;
		-moz-box-ordinal-group: 2;
		-ms-flex-order: 2;
		-webkit-order: 2;
		order: 2;
	}

	#floating-menu .col-2 .wrap:last-child {
		-webkit-box-ordinal-group: 1;
		-moz-box-ordinal-group: 1;
		-ms-flex-order: 1;
		-webkit-order: 1;
		order: 1;
	}

	#home #floating-menu h1 {
		text-align: center;
		margin-top: 50px;
	}

	#home #floating-menu span.phone-top {
		text-align: left;
		float: left;
		padding-left: 20px;
	}

	#home #floating-menu #nav-icon1 {
		right: 20px;
	}

	#home .title {
		margin-top: 150px;
	}

	.title h1 {
		font-size: 60px;
		line-height: 60px;
	}

	#home .title span {
		font-size: 20px;
		line-height: 20px;
		letter-spacing: 10px;
		padding-left: 0;
	}

	.red-line {
		margin: 0 auto;
	}

	.sub-title h2,
	#find-us .sub-title h2,
	#services .sub-title h2,
	#find-us .col-2-3 .wrap:first-child h2 {
		font-size: 60px;
		line-height: 60px;
	}

	#about-us img {
		margin-top: 50px;
	}

	#gallery.gallery-home .masonry .grid-sizer,
	#gallery.gallery-home .masonry .grid-item {
		width: 100%;
	}

	#gallery .masonry .grid-sizer,
	#gallery .masonry .grid-item {
		width: 50%;
	}

	#gallery .masonry .grid-item.responsive-1,
	#gallery .masonry .grid-item.responsive-2 {
		display: none;
	}

	#find-us .col-2-3 p {
		font-size: 20px;
		line-height: 26px;
	}

	a.red, button.red, input.red,
	a.hollow, button.hollow, input.hollow {
		width: 80%;
		height: 80px;
		line-height: 80px;
		font-size: 20px;
		border-radius: 40px;
	}

	#services img {
		margin-top: 30px;
	}

	#services .col-3 {
		margin-top: -100px;
	}

	#bottom ul.menu-bot li {
		display: block;
		margin: 15px auto;
	}

	#bottom ul.menu-bot li a {
		font-weight: 700;
		font-size: 16px;
		line-height: 16px;
	}

	#bottom .col-2 {
		display: block;
	}

	#bottom .col-2 .wrap {
		width: 100%;
		display: block;
		text-align: center;
	}

	#bottom .logo-social .wrap:last-child {
		text-align: center;
		margin: 50px auto 0 auto;
	}

	/**-------------------------------------------
	----------------------------------------------
		## INTERNAL
	----------------------------------------------
	-------------------------------------------**/

	#about-us.internal .sub-title-internal {
		font-size: 22px;
		line-height: 32px;
		padding: 0 20px;
	}

	#about-us.internal .section-01 .title span {
		font-size: 30px;
		line-height: 30px;
	}

	#about-us.internal .section-01 .title h2 {
		font-size: 60px;
		line-height: 60px;
	}

	#about-us.internal .section-02 {
		min-height: 300px;
	}

	#about-us.internal .section-02 .title span {
		font-size: 20px;
		line-height: 20px;
	}

	#about-us.internal .section-02 .title h2 {
		font-size: 50px;
		line-height: 50px;
	}

	#about-us.internal .red-line {
		top: auto;
		margin: -100px auto 0 auto;
	}

	#about-us.internal p.text-2 {
		margin-top: 50px;
	}

	#internal.internal-mechanical {
		padding-top: 100px;
		padding-bottom: 100px;
	}

	#internal.internal-mechanical .bg-mechanical {
		background: none;
	}

	#internal.internal-mechanical .col-2 img {
		margin: 0 auto;
	}

	#internal.internal-contact .col-2 input,
	#internal.internal-contact textarea {
		font-size: 20px;
	}

}

@media only screen and (max-width: 450px) {

	body {
		position: absolute;
		height: 100%;
		overflow-x: hidden;
	}

	#home,
	#home .bg-slider,
	#home .bg-slider div,
	#home .bg-slider::after {
		height: 660px;
		height: 100%;
	}

	#home #floating-menu {
		padding-top: 30px;
	}

	#home #floating-menu span.phone-top {
		padding-left: 10px;
	}

	#home #floating-menu #nav-icon1 {
		right: 10px;
	}

	#home #floating-menu h1 {
		margin: auto;
		position: absolute;
		top: 45%;
		left: 50%;
		transform: translate(-50%,-50%);
		display: block;
		width: 400px;
		max-width: 90%;
	}

	#home .title {
		position: absolute;
		bottom: 70px;
		display: block;
		right: 0;
		left: 0;
	}

	.title h1 {
		font-size: 40px;
		line-height: 40px;
	}

	#home .title span {
		margin-bottom: 10px;
	}

	.red-line {
		top: -50px;
	}

	#about-us p {
		margin-top: 40px;
	}

	#about-us a {
		margin: 50px auto 100px auto;
	}

	.title h1,
	.sub-title h2,
	#find-us .col-2-3 .wrap:first-child h2,
	#services .sub-title h2, {
		font-size: 40px;
		line-height: 40px;
	}

	p,
	#services ul li {
		font-size: 18px;
		line-height: 30px;	
	}

	a.red, button.red, input.red,
	a.hollow, button.hollow, input.hollow {
		font-size: 16px;
		height: 70px;
		line-height: 70px;
	}

	#internal #gallery .masonry .grid-sizer,
	#internal #gallery .masonry .grid-item {
		width: 50%;
	}

	#gallery .masonry .grid-item.responsive-3 {
		display: none;
	}

	#gallery .masonry .grid-item img,
	#internal #gallery .masonry .grid-item a img {
		filter: none;
		-webkit-filter: grayscale(0%);
		-moz-filter: grayscale(0%);
		-ms-filter: grayscale(0%);
		-o-filter: grayscale(0%);
	}

	#find-us .col-2-3 p {
		margin: 10px auto;
	}

	#find-us a {
		margin-top: 50px;
	}

	/**-------------------------------------------
	----------------------------------------------
		## INTERNAL
	----------------------------------------------
	-------------------------------------------**/

	#about-us.internal .sub-title-internal {
		font-size: 20px;
		line-height: 30px;
		text-align: center;
	}

	#about-us.internal .section-01 {
		margin: 0 auto 100px auto;
		min-height: initial;
		height: 360px;
	}

	#about-us.internal .section-01 .title {
		padding-top: 70px;
	}

	#about-us.internal .section-01 .title span {
		font-size: 20px;
		line-height: 20px;
	}

	#about-us.internal .section-01 .title h2 {
		font-size: 40px;
		line-height: 40px;
	}

	#about-us.internal .section-02 .title {
		padding-top: 120px;
	}

	#about-us.internal.internal-services .section-01 {
		height: auto;
	}

	#internal.internal-contact .col-2 input,
	#internal.internal-contact textarea {
		font-size: 18px;
	}

	#internal.internal-contact textarea {
		line-height: 26px;
	}

	#internal.internal-contact h2 {
		letter-spacing: normal;
	}

}