body{
	overflow-x: hidden !important;
  transition: all 200ms linear;
	font-family: 'Montserrat', sans-serif;
}

::selection {
	color: #fff;
	background-color: #8167a9;
}

::-moz-selection {
	color: #fff;
	background-color: #8167a9;
}

iframe {
	border-radius: 10px;
}


/* #Navigation
================================================== */

.start-header {
	opacity: 1;
	transform: translateY(0);
	padding: 10px 0;
	/* box-shadow: 0 10px 30px 0 rgba(138, 155, 165, 0.15); */
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}

.start-header.scroll-on {
	box-shadow: 0 5px 10px 0 rgba(138, 155, 165, 0.15);
	padding: 5px 0;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
	background: #ffffff;
}

.start-header.scroll-on .navbar-brand img{
	height: 25px;
	-webkit-transition : all 0.7s ease-out;
	transition : all 0.7s ease-out;
}

.navigation-wrap{
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 1000;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}

.navbar{
	padding: 0;
}

.navbar-brand img{
	height: 35px;
	width: auto;
	display: block;
	-webkit-transition : all 0.3s ease-out;
	transition : all 0.3s ease-out;
}

.navbar-toggler {
	float: right;
	border: none;
	padding-right: 0;
}

.navbar-toggler:active,
.navbar-toggler:focus {
	outline: none;
}

.navbar-light .navbar-toggler-icon {
	width: 24px;
	height: 17px;
	background-image: none;
	position: relative;
	border-bottom: 1px solid #000;
  transition: all 300ms linear;
}

.navbar-light .navbar-toggler-icon:after,
.navbar-light .navbar-toggler-icon:before{
	width: 24px;
	position: absolute;
	height: 1px;
	background-color: #000;
	top: 0;
	left: 0;
	content: '';
	z-index: 2;
  transition: all 300ms linear;
}

.navbar-light .navbar-toggler-icon:after{
	top: 8px;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:after {
	transform: rotate(45deg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:before {
	transform: translateY(8px) rotate(-45deg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
	border-color: transparent;
}

.nav-link{
	color: black !important;
  transition: all 200ms linear;
	font-weight: 700;
	letter-spacing: -1px;
}

.nav-item:hover .nav-link{
	color: #d10d11 !important;
}

.nav-item.active .nav-link{
	color: #d10d11 !important;
}

.nav-link {
	position: relative;
	padding: 5px 0 !important;
	display: inline-block;
}

.nav-item:after{
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 2px;
	content: '';
	background-color: #d10d11;
	opacity: 0;
  transition: all 200ms linear;
}

.nav-item:hover:after{
	bottom: 0;
	opacity: 1;
}

.nav-item.active:hover:after{
	opacity: 0;
}

.nav-item{
	position: relative;
    transition: all 200ms linear;
}

.button-container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

section.hero {
	position: relative;
	width: 100%;
	height: 100vh;
	background-image: url('../media/shantygroup-banner.jpg');
	background-size: cover;
	background-position: center center;
	/* background-attachment: fixed; */
}

section.hero .wavy {
	position: absolute;
	width: 100%;
	height: 143px;
	bottom: 0;
	left: 0px;
	background-image: url('../media/wavy.png');
	animation: animate linear infinite;
}

section.hero .wavy:before {
	content: '';
	width: 100%;
	height: 143px;
	background-image: url('../media/wavy.png');
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0.4;
	animation: animate-reverse 10s linear infinite;
}

section.hero .wavy:after {
	content: '';
	width: 100%;
	height: 143px;
	background-image: url('../media/wavy.png');
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0.7;
	animation-delay: -5s;
	animation: animate 10s linear infinite;
}

.summary-hero {
	margin-top: 5px;
	margin-bottom: 30px;
}

@keyframes animate
{
	0%
	{
		background-position: 0;
	}
	100%
	{
		background-position: 1360px;
	}
}

@keyframes animate-reverse
{
	0%
	{
		background-position: 1360px;
	}
	100%
	{
		background-position: 0;
	}
}

.hero-t {
	font-size: 3em;
	font-weight: 900;
	text-transform: uppercase;
	text-align: center !important;
}

.hero-info {
	color: #fff;
	margin-top: -250px;
}

.welcome-text {
	margin-top: 140px;
	font-weight: 900;
	text-transform: uppercase;
	font-size: 3em;
	text-align: center;
}

.summary-welcome {
	letter-spacing: 5px;
	text-align: center;
	margin: 20px 0px 60px 0px;
	color: grey;
}

.welcome-text>span {
	color: #d10d11;
}

img.weare {
	border-top-right-radius: 70px;
	margin-top: 60px;
}

.box-white {
	background-color: #fff;
	padding: 100px 60px;
	/* z-index: 9999;
	position: absolute; */
	color: #212121;
	margin-left: -120px;
	margin-top: 220px;
}

.about-t {
	font-weight: 900;
	text-transform: uppercase;
	margin: 20px 0;
}

img.logo-s {
	height: 250px;
	width: auto;
	display: block;
	margin: 120px 0px 60px 0px;
	/* box-sizing: border-box;
	overflow: hidden;
	box-shadow: 0 5px 15px 0px rgba(0,0,0,0.6); */
	transform: translatey(0px);
	animation: shantyg 3s ease-in-out infinite;
	img { width: 100%; height: auto; }
}

@keyframes shantyg {
	0% {
		/* box-shadow: 0 5px 15px 0px rgba(0,0,0,0.1); */
		transform: translatey(0px);
	}
	50% {
		/* box-shadow: 0 25px 15px 0px rgba(0,0,0,0.1); */
		transform: translatey(-20px);
	}
	100% {
		/* box-shadow: 0 5px 15px 0px rgba(0,0,0,0.1); */
		transform: translatey(0px);
	}
}


.parrafo-about {
	line-height: 40px;
	font-style: italic;
	margin-bottom: 120px;
	text-align: center;
}

.summary-services {
	margin-top: 10px;
}

h1.titles>span {
	color: #d10d11;
}

.titles-modal {
	font-size: 1.7em;
	font-weight: 900;
	text-transform: uppercase;
	margin: 5px 0px 0px 10px;
}

.modal-header {
	border-bottom: none;
	background: #d10d11;
	border-top-left-radius: .2rem;
	border-top-right-radius: .2rem;
	border-bottom-left-radius: none;
	border-bottom-right-radius: none;
	color: #fff;
	margin-bottom: 10px;
}

.title-services {
	font-weight: 900;
	text-transform: uppercase;
	color: #ffffff;
	margin-bottom: 25px;
}

.shanty-serv {
	margin-top: 90px;
}

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
	background: #d10d11;
}

.owl-theme .owl-dots .owl-dot span {
	width: 20px;
	height: 10px;
	background: grey;
}

.fondo-serv {
	background-color: #111;
	/* background: rgb(26, 188, 156);
	background: -moz-linear-gradient(-45deg, rgba(26, 188, 156, 1) 0%, rgba(142, 68, 173, 1) 100%);
	background: -webkit-linear-gradient(-45deg, rgba(26, 188, 156, 1) 0%, rgba(142, 68, 173, 1) 100%);
	background: linear-gradient(135deg, rgba(26, 188, 156, 1) 0%, rgba(142, 68, 173, 1) 100%); */
	padding: 120px 0px;
	color: whitesmoke;
}

.titles {
	font-size: 3em;
	font-weight: 900;
	text-transform: uppercase;
}

h2.port- {
	margin-top: 80px;
}

h4.port {
	margin-bottom: 120px;
}

.portfolio {
  margin-bottom: -30px;
 }

 img.zoomy {
	 transition: all linear .3s;
	 opacity: .99;
 }

 img.zoomy:hover {
	 opacity: .8;
	 transition: all linear .2s;
 }

.portfolio-item {
  cursor: pointer;
}

.nopad {
	padding-right: 0px;
	padding-left: 0px;
}

.portfolio-item-caption {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.close {
	position: absolute;
	z-index: 1;
	right: 1.3rem;
	top: 0.6rem;
	font-size: 2rem;
	line-height: 3rem;
	color: #ddd;
	opacity: 1;
	transition: all ease-in .2s;
}

.close:hover {
	color: grey;
	transition: all ease-in .2s;
}

.portfolio-item-caption-content {
  font-size: 1.5rem;
  }


.never {
	text-align: center;
	margin-bottom: 30px;
	font-size: 1.2em;
	font-style: italic;
	letter-spacing: 1px;
}

.work {
	background-color: #212121;
	background-image: url('../media/work-shanty.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	height: 100vh;
	width: 100%;
	padding: 170px 0px;
	color: #fff;
	margin-top: 30px;
}

.tooltip {
 	margin: 0px 15px; !important;
}

.work_ {
	font-size: 3em;
	font-weight: 900;
	text-transform: uppercase;
	text-align: center;
	margin-bottom: 90px;
}

a {
	color: inherit;
}

a:hover {
	text-decoration: none;
	color: #d10d11;
}

.container- {
	padding: 140px 50px;
}

span.location {
	font-size: 1.5em;
	padding: 15px 0;
}

p.locationb {
	margin: 20px 0px 0px 0px;
	font-size: 1.3em;
	letter-spacing: 2px;
	color: gray;
	display: inline-block;
}

.wave-footer {
	background-color: #d10d11;
	padding: 100px 0;
}

.logo-footer {
	height: 200px;
	width: auto;
}

.footer-fondo {
	background-color: #212121;
	padding: 60px 0px 40px 0px;
	color: grey;
}

i.fa-instagram,i.fa-facebook,i.fa-youtube {
	font-size: 2em;
	margin: 0px 5px;
}

.swap-l {
	right: 0;
	top: 50vh;
	position: fixed;
	align-items: center;
	z-index: 99999;
}

.swap-l>ul>li>img.switcherl {
	height: 30px;
	width: 30px;
	position: relative;
    -webkit-transition: all 200ms ease-in;
    -webkit-transform: scale(1);
    -ms-transition: all 200ms ease-in;
    -ms-transform: scale(1);
    -moz-transition: all 200ms ease-in;
    -moz-transform: scale(1);
    transition: all 200ms ease-in;
    transform: scale(1);
}

.swap-l>ul>li>img.switcherl:hover {
	box-shadow: 0px 0px 150px #000000;
    z-index: 2;
    -webkit-transition: all 200ms ease-in;
    -webkit-transform: scale(1.5);
    -ms-transition: all 200ms ease-in;
    -ms-transform: scale(1.5);
    -moz-transition: all 200ms ease-in;
    -moz-transform: scale(1.5);
    transition: all 200ms ease-in;
    transform: scale(1.5);
}

.swap-l>ul>li>a>img.switcherl {
	height: 30px;
	width: 30px;
	position: relative;
    -webkit-transition: all 200ms ease-in;
    -webkit-transform: scale(1);
    -ms-transition: all 200ms ease-in;
    -ms-transform: scale(1);
    -moz-transition: all 200ms ease-in;
    -moz-transform: scale(1);
    transition: all 200ms ease-in;
    transform: scale(1);
}

.swap-l>ul>li>a>img.switcherl:hover {
	box-shadow: 0px 0px 150px #000000;
    z-index: 2;
    -webkit-transition: all 200ms ease-in;
    -webkit-transform: scale(1.5);
    -ms-transition: all 200ms ease-in;
    -ms-transform: scale(1.5);
    -moz-transition: all 200ms ease-in;
    -moz-transform: scale(1.5);
    transition: all 200ms ease-in;
    transform: scale(1.5);
}

.swap-l>ul>li {
	list-style: none;
}



/* #Media
================================================== */

@media (max-width: 767px) {
	h1{
		font-size: 38px;
	}
	.nav-item:after{
		display: none;
	}
	.nav-item::before {
		position: absolute;
		display: block;
		top: 15px;
		left: 0;
		width: 11px;
		height: 1px;
		content: "";
		border: none;
		background-color: #000;
		vertical-align: 0;
	}
	body.dark .nav-item::before {
		background-color: #fff;
	}
}

/* ----------- iPhone 5, 5S, 5C and 5SE ----------- */

@media only screen
  and (min-device-width: 320px)
  and (max-device-width: 568px)
  and (-webkit-min-device-pixel-ratio: 2)
  and (orientation: portrait) {
		h1.hero-t {
			font-size: 2em;
			text-align: left !important;
			margin-top: -35px;
		}
		.titles {
			font-size: 2.5em;
		}
		.summary-welcome {
			letter-spacing: 3px;
		}
		.box-white {
			background-color: transparent;
			padding: 50px 0;
			margin: 0px;
		}
		img.logo-s {
			margin-top: 80px;
		}
		.owl-theme .owl-dots .owl-dot span {
			width: 20px;
			height: 3px;
		}
		.titles-portfolio {
			font-size: 2em;
			font-weight: lighter;
			margin-top: 30px;
		}
		.work_ {
			font-size: 2.1em;
		}
		.work {
			padding: 100px 0px;
		}
		p.never {
			margin-top: 0px;
		}
		p.locationb {
			font-size: 1em;
		}
		span.location {
			font-size: 1.3em;
		}
		h4.work-title {
			padding: 5px 0;
		}
		.address {
			margin-top: -53px;
		}
}

/* Landscape */
@media only screen
  and (min-device-width: 320px)
  and (max-device-width: 568px)
  and (-webkit-min-device-pixel-ratio: 2)
  and (orientation: landscape) {
		#portrait {
			display: none;
		}
		#wide {
			display: block;
		}
}

/* ----------- iPhone 6, 6S, 7 and 8 ----------- */

@media only screen
  and (min-device-width: 375px)
  and (max-device-width: 667px)
  and (-webkit-min-device-pixel-ratio: 2)
  and (orientation: portrait) {
		h1.hero-t {
			font-size: 2em;
			text-align: left !important;
			margin-top: -35px;
		}
		.summary-welcome {
			letter-spacing: 3px;
		}
		.box-white {
			background-color: transparent;
			padding: 50px 0;
			margin: 0px;
		}
		img.logo-s {
			margin-top: 80px;
		}
		.owl-theme .owl-dots .owl-dot span {
			width: 20px;
			height: 3px;
		}
		.titles-portfolio {
			font-size: 2em;
			font-weight: lighter;
			margin-top: 30px;
		}
		.work_ {
			font-size: 2.5em;
		}
		.work {
			padding: 130px 0px;
		}
		p.never {
			margin-top: 0px;
		}
		h4.work-title {
			padding: 5px 0;
		}
		.address {
			margin-top: -53px;
		}
}

/* ----------- iPhone X ----------- */


/* Portrait */
@media only screen
  and (min-device-width: 375px)
  and (max-device-width: 812px)
  and (-webkit-min-device-pixel-ratio: 3)
  and (orientation: portrait) {
		h1.hero-t {
			font-size: 2.5em;
			text-align: left !important;
			margin-top: -130px;
		}
		.about-t {
			font-size: 1.6em;
		}
		.summary-welcome {
			letter-spacing: 3px;
		}
		.box-white {
			background-color: transparent;
			padding: 50px 0;
			margin: 0px;
		}
		img.logo-s {
			margin-top: 80px;
		}
		.owl-theme .owl-dots .owl-dot span {
			width: 20px;
			height: 3px;
		}
		.titles-portfolio {
			font-size: 2em;
			font-weight: lighter;
			margin-top: 30px;
		}
		.work_ {
			font-size: 2.5em;
		}
		.work {
			padding: 170px 0px;
		}
		p.never {
			margin-top: 0px;
		}
		h4.work-title {
			padding: 5px 0;
		}
		.address {
			margin-top: -53px;
		}
}
