:root {
    color: #78866B;
    color: #00000029;
    color: #0D0D0B;
    color: #000000;
    color: #FFFFFF;
}

body {
    margin: 0;
	padding: 0;
    color: #fff;
    font-weight: 400;
    font-style: normal;
    font-family: 'Poppins', sans-serif;
    position: relative;
}

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

h1, h2, h3, h4, h5, h6,.h1, .h2, .h3, .h4, .h5, .h6 {
	margin-top: 0;
    font-weight: 300;
}

p, li, a {
	font-size: 15px;
    font-weight: 200;
    line-height: 30px;
}

b, strong {
    font-weight: 800;
}

ul {
	padding-left: 20px;
    margin-bottom: 0;
}

a:hover, a:focus {
	text-decoration: none;
    color: inherit;
}

i {
	vertical-align: middle;
}

.card, .card-img, .card-img-bottom {
    border-radius: 0;
}

button:focus {
    outline: none;
}

.btn-primary {
    vertical-align: middle;
    font-size: 15px;
    font-weight: 300;
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: 0;
    padding: 10px 20px;
    min-width: 270px;
}

.btn-primary:hover, .btn-primary:focus {
    background-color: #fff;
    color: initial!important;
    border: 1px solid #fff;
    font-weight: 300;
}

.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active {
    color: initial!important;
    border: 1px solid #fff;
    box-shadow: none!important;
    background-color: #fff;
}

.not-btn {
    color: #fff;
    background-color: transparent;
    border: 0;
    text-transform: uppercase;
    font-weight: 400;
}

.not-btn i {
    color: #fff!important;
    vertical-align: middle;
    font-weight: 300!important;
    margin-left: 10px;
    font-size: 20px;
}
/* ============================================ */
/* This is an example of styling the header menu but it depends on the design of the page */
.nav-link {
    display: block;
    padding: 0 0 0 3rem;
}

.nav-item {
    color: #0D0D0B;
    font-weight: 400;
}

.nav-link.active .nav-item, .nav-link .nav-item:hover {
    font-weight: 700;
    color: #0D0D0B;
}

.navbar-light .navbar-nav .nav-link:hover {
    color: #0D0D0B;
}

.navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 20px;
    padding-left: 20px;
    font-weight: 400;
    color: #0D0D0B;
}

.navbar-collapse .dropdown-menu {
    position: absolute;
    top: 300%;
    left: 45px;
    float: left;
    min-width: 10rem;
    padding: 0;
    margin: 0.125rem 0 0;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 0;
    border-radius: 0;
}

.navbar-collapse .dropdown-item {
    display: block;
    width: 100%;
    padding: 10px 25px;
    clear: both;
    font-weight: 400;
    color: #221F1F;
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}

.navbar-collapse .dropdown-item:hover, .navbar-collapse .dropdown-item.active, .navbar-collapse .dropdown-item:active {
    color:#0D0D0B;
    text-decoration: none;
    outline: none;
    background-color: #F2F2F2;
    font-weight: 500;
}

.navbar-collapse .dropdown-toggle::after {
    display: none;
}

.logo img {
    width: 235px;
    height: 235px;
}

/* Home */
.home-header-h1 {
    margin-top: 0;
    font-weight: 800;
    font-size: 60px;
    text-transform: uppercase;
    /* letter-spacing: -1px; */
}
.home-header .card {
    background-size: cover; 
    background-position: center; 
    height: 550px;
}

.home .card {
    background-image: url('/images/home/header.jpg');
}

.home-header .card-img-overlay {
    position: absolute;
    top: 26%;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1.25rem;
}

.about-header .card {
    background-image: url('/images/about/header.jpg');
}

.about-header .card-img-overlay, .services-header .card-img-overlay {
    top: 45%;
}

.services-header .card {
    background-image: url('/images/services/header.jpg');
}

.home-intro {
    background-color: #78866B;
    text-align: center;
    padding: 5% 0;
}

.home-intro h2, .home-intro h3 {
    margin-bottom: 20px;
}

.gif-section img {
    width: 8%;
    margin: 10% 0;
}

.project h5, .project a {
    color: #fff;
    font-size: 25px;
}

.project .card-img-overlay {
    position: absolute;
    top: 45%;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1.25rem;
}

.project .card {
    background-size: cover; 
    background-position: center; 
    height: 500px;
    justify-content: center;
}

.project .card-body {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    min-height: 1px;
    padding: 1.25rem;
    box-sizing: border-box;
    display: contents;
}

.main-current {
    background-image: url('/images/home/currentprojects.jpg');
}

.main-completed {
    background-image: url('/images/home/completedprojects.jpg');
}

.services .card {
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: 0;
}

.services .card img {
    width: 100%;
    margin: 0;
}

/* Form styles */
.form-control {
    display: block;
    width: 100%;
    height: auto;
    padding: 15px;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.5;
    color: #fff;
    margin-bottom: 15px;
    background-color: transparent;
    background-clip: padding-box;
    border: 1px solid #fff;
    border-radius: 0;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.form-control:focus {
    background-color: transparent;
    border: 1px solid #fff;
    color: #fff;
}

textarea.form-control {
    height: 200px;
    margin-bottom: 30px;
}

/*Placeholder text*/
.form-control::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #fff;
    opacity: 1; /* Firefox */
    vertical-align: middle;
    line-height: 20px;
    font-weight: 200;
    text-transform: uppercase;
}

.form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #fff;
    vertical-align: middle;
    line-height: 20px;
    font-weight: 200;
    text-transform: uppercase;
}

.form-control::-ms-input-placeholder { /* Microsoft Edge */
    color: #fff;
    vertical-align: middle;
    line-height: 20px;
    font-weight: 200;
    text-transform: uppercase;
}

/* Footer */
footer {
    background-color: #000000;
}
.footer {
    padding: 5% 0;
}

.footer-lower {
    padding: 20px 0;
}

.footer a, .footer li {
    color: #fff;
    font-weight: 200;
}

.footer i {
    color: #78866B;
    vertical-align: middle;
    font-size: 18px;
    text-align: center;
    width: 25px;
}

.footer-contact-details li {
    line-height: 40px;
}

.footer-lower p, .footer-lower a {
    font-weight: 100;
    color: #fff;
    text-transform: uppercase;
    font-weight: 200;
}

.back-to-top {
    position: fixed;
    right: 10px;
    top: auto;
    bottom: 10px;
    z-index: 9999;
    color: #fff;
    text-align: center;
    padding: 2px 10px;
	z-index: 999999;
    background-color: #0000004a;
}

.back-to-top i:hover {
    cursor: pointer;
}

.back-to-top i {
    font-size: 35px;
    vertical-align: middle;
}

.swal2-styled.swal2-confirm {
    border: 0;
    border-radius: 0.25em;
    background: initial;
    background-color: #78866B;
    color: #fff;
    font-size: 1em;
}

.swal2-styled.swal2-confirm:focus {
    box-shadow: none;
}

.error-page {
    padding: 8% 0;
}