html{ 
    overflow: auto; 
    -webkit-overflow-scrolling: touch;
}

.wrapper.grey{
	background-color: #f8f8f8;
}

.topbar{
	background-color: #121212;
	color: #fff;
	font-size: 12px;
	position: relative;
	display: flex;
	align-items: center;
}

.topbar a{
	color: #fff;
}

.swiper-gallery{
	width: 100%;
	overflow: hidden;
}

.swiper-button-next, .swiper-button-prev {
    font-size: 14px !important;
    width: 30px !important;
    height: 30px !important;
    background: #000 !important;
    border-radius: 30px;
    color: #fff !important;
	border: 2px solid #fff;
	display: none !important;
}

.swiper-pagination{
	display: none !important;
}

.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 14px !important;
}

.swiper-button-next:after{
    margin-left: 2px;
}

.swiper-button-prev:after{
    margin-right: 2px;
}


.divider-bar{
	background-color: #B51324;
	width: 120px;
	height: 4px;
}

.hero {
	background-color: #1A1A1A;
	background-image: url(../img/hero.png);
	color: #fff;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center;
	flex-shrink: 0;
	min-height: 40vh;
	padding: 120px 0 80px;
}

.hero.sub-hero {
	min-height: 30vh;
}

.hero h1 {
	font-size: 28px;
	margin-bottom: 20px;
}

.hero p {
	line-height: 170%;
}

.hero * {
	color: #fff;
}

.horizontal-stripe {
	background-color: #fff;
	height: 3px;
	width: 100px;
	margin: 25px 0 30px;
}

.mini-pitch {
	color: #DB4E4E;
}

.text-link{
	color: #B51324;
}

.pitch {
	background: #fff;
	padding: 50px 0;
	color: #fff;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
	text-align: center;
	flex-shrink: 0;
	position: relative;
}

.pitch, .pitch h2 {
	color: #1A1A1A;
	justify-content: center;
	-ms-align-items: center;
	align-items: center;
	text-align: center;
}

.services{
	background-color: #212121;
	color: #fff;
}

.services .container,
.services-overview.container,
.offer .container,
.about.container{
	overflow-x: hidden;
}

.services *{
	color: #fff;
}

.services .row {
    margin-right: calc(-.75 * var(--bs-gutter-x));
    margin-left: calc(-.75 * var(--bs-gutter-x));
}

.services .row>* {
    padding-right: calc(var(--bs-gutter-x) * 0.75);
    padding-left: calc(var(--bs-gutter-x) * 0.75);
}

.services-overview .row {
    margin-right: calc(-1.25 * var(--bs-gutter-x));
    margin-left: calc(-1.25 * var(--bs-gutter-x));
}

.services-overview .row>* {
    padding-right: calc(var(--bs-gutter-x) * 1.25);
    padding-left: calc(var(--bs-gutter-x) * 1.25);
}

.offer .row {
    margin-right: calc(-.75 * var(--bs-gutter-x));
    margin-left: calc(-.75 * var(--bs-gutter-x));
}

.offer .row>* {
    padding-right: calc(var(--bs-gutter-x) * 0.75);
    padding-left: calc(var(--bs-gutter-x) * 0.75);
}

.about .row {
    margin-right: calc(-1.25 * var(--bs-gutter-x));
    margin-left: calc(-1.25 * var(--bs-gutter-x));
}

.about .row>* {
	padding-right: calc(var(--bs-gutter-x) * 1.25);
	padding-left: calc(var(--bs-gutter-x) * 1.25);
}

.service-item{
	border: 1px solid #4A4A4A;
	text-decoration: none;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	transition: 0.2s ease all;
}

.service-item:hover{
	background-color: #fff;
	scale: 1.02;
	box-shadow: 0 0 15px rgba(0,0,0,0.2);
	border: none;
}

.service-item:hover *{
	color: #212121;
}

.offer-item{
	border: 1px solid #4A4A4A;
	text-decoration: none;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	transition: 0.2s ease all;
	align-items: center;
	padding: 40px;
}

.offer-item:hover{
	background-color: #fff;
	scale: 1.02;
	box-shadow: 0 0 15px rgba(0,0,0,0.2);
	border: none;
}

.offer-item:hover *{
	color: #212121;
}

.offer-item:hover svg path{
	fill: #B51324;
}

/* Gallery */
/* Everything for the gallery */
    
ul.swiper-wrapper {
	list-style-type: none;
	margin: 0;
	padding: 0;
  }
  
  /* Swiper container */
  .swiper-container {
	max-width: 100%;
	position: relative;
  }
  
  /* swiper responsive image */
  .swiper-container img {
	width: 100%;
	height: auto;
  }
  
  .swiper-slide {
	/* Remove for 1 slide per view */
	width: 85%;
  }
  
  .swiper-pagination{
	position: absolute;
	bottom: 0;
  }
  
  .swiper-pagination-bullet {
	width: 34px;
	height: 34px;
	text-align: center;
	line-height: 34px;
	font-size: 14px;
	color: #000;
	opacity: 1;
	background: rgba(0, 0, 0, 0.3);
	transition: background-color 0.5s ease, color 0.5s ease;
  }
  
  /* Swiper custom pagination */
  .swiper-pagination-bullet:hover {
	transition: background-color 0.5s ease;
	background: rgba(0, 0, 0, 1);
	color: white;
  }
  
  /* Swiper custom pagination active state */
  .swiper-pagination-bullet-active {
	color: #fff;
	background: black;
  }

  .contact-link span{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	background-color: #B51324;
	color: #fff;
	border-radius: 36px;
	margin-right: 10px;
  }

  .contact-link{
	display: flex;
	align-items: center;
	margin-bottom: 15px;
	color: #000;
	text-decoration: none;
  }

  /* Carousel */
  .carousel-item.active,
.carousel-item-next,
.carousel-item-prev{
    display:block;
}

.carousel-indicators{
  margin-bottom: 0;
}

.carousel {
    position: relative;
    width: 100%;
    padding-top: 15px;
    padding-bottom: 30px;
    padding-left: 45px;
    padding-right: 45px;
}

.carousel-control-next, .carousel-control-prev{
  width: auto;
  padding: 0 5px 30px;
}

.carousel-control-prev-icon{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

/* Offer */
.offer{
	background-color: #212121;
}

.offer *{
	color: #fff;
}

.footer-logo{
	filter: brightness(0) invert(1);
}

.footer-menu{
	list-style: none;
	padding: 0;
	margin: 0;
	text-align: left;
}

.footer-menu a{
	color: #fff;
	text-decoration: none;
	display: block;
	margin-bottom: 12px;
}

.footer-menu a:hover{
	text-decoration: underline;
}

a.footer-link{
	text-decoration: none;
	color: #fff;
}

a.footer-link:hover{
	color: #fff;
	text-decoration: underline;
}

.footer-link img{
	filter: brightness(0) invert(1);
}

.fab-wa{
	position: fixed;
	bottom: 24px;
	right: 24px;
	width: 56px;
	height: 56px;
	background-image: url(../img/icons/whatsapp.svg);
	background-size: 24px;
	background-position: center;
	background-repeat: no-repeat;
	box-shadow: 0 4px 12px rgba(0,0,0,0.3);
	border-radius: 60px;
	display: block;
	z-index: 1000;
	background-color: #25D366;
}

@media (min-width: 576px) {}

@media(min-width: 768px) {
	.topbar{
		font-size: 14px;
	}

	.hero {
		padding: 80px 15px 40px;
		min-height: 70vh;
	}

	.hero.sub-hero {
		min-height: 50vh;
	}

	.hero h1 {
		font-size: 36px;
	}

	.hero.sub-hero h1{
		font-size: 30px;
	}

	.hero p{
		font-size: 18px;
	}

	.dt-gallery img{
		transition: 0.2s ease all;
	}

	.dt-gallery img:hover{
		box-shadow: 0 0 15px rgba(0,0,0,0.2);
		transform: scale(1.02);
	}
}

@media (min-width: 992px) {}

@media (min-width: 1200px) {
	.hero h1 {
		font-size: 56px;
	}

	.hero.sub-hero h1{
		font-size: 40px;
	}

	.pitch {
		padding: 50px 0;
	}

	.main-content {
		padding: 30px 0;
	}
}