body {
  background-color: #f9f7f2;
  color: #545456;
  font-family: "Oswald", "Gill Sans", "Gill Sans MT", Calibri, "Trebuchet MS",
    sans-serif;
}

h1 {
  color: black;
  font-family: "Oswald", "Gill Sans", "Gill Sans MT", Calibri, "Trebuchet MS",
    sans-serif;
  font-size: 3em;
  font-weight: 400;
  margin-bottom: 1em;
  text-align: center;
}

h2 {
  color: black;
  font-family: "Oswald", "Gill Sans", "Gill Sans MT", Calibri, "Trebuchet MS",
    sans-serif;
  font-size: 3em;
  font-weight: 700;
  margin: 1em auto 0.5em auto;
  padding: 8px 0;
}

h3 {
  color: black;
  font-family: "Oswald", "Gill Sans", "Gill Sans MT", Calibri, "Trebuchet MS",
    sans-serif;
  font-size: 1.5em;
  font-weight: 700;
  margin-bottom: 0.5em;
  text-align: center;
}

h4 {
  color: black;
  font-family: "PT Sans Narrow";
  font-size: 1.5em;
  margin-bottom: 2em;
}

h6 {
  color: rgb(66, 66, 66);
  font-size: 1.5em;
}

p,
li {
  color: black;
  font-family: "PT Sans Narrow";
  font-size: 1.25em;
  padding-bottom: 10px;
}

.center {
  text-align: center;
}

.center-white {
  color: white;
  text-align: center;
}

.line {
  border-top: 2px solid #512e46;
}

/* Containers */

.container-fluid {
  padding: 3% 10%;
}

/* Sections */
.cream-section {
  background-color: #f9f7f2;
}

.lightblue-section {
  background-color: #0089a8;
}

.lightv-section {
  background-color: #a8deeb;
}

.bg-right {
  background: -webkit-linear-gradient(90deg, #f9f7f2 60%, #a8deeb 40%);
  background: -o-linear-gradient(90deg, #f9f7f2 60%, #a8deeb 40%);
  background: -moz-linear-gradient(90deg, #f9f7f2 60%, #a8deeb 40%);
  background: linear-gradient(90deg, #f9f7f2 60%, #a8deeb 40%);
}

@media (max-width: 992px) {
  .bg-right {
    background: #f9f7f2 !important;
  }
  body {
    background-color: #f9f7f2;
  }
}

.bg-white {
  background-color: #f9f7f2;
}

/* Navigation */

.navbar {
  background-color: transparent;
  width: 100%;
  padding: 0.3% 3% 0.3% 3%;
}
.navbar-brand {
  color: black;
  font-size: 1.75em;
  padding: 2px 7px;
}

.nav-link {
  color: black;
  font-size: 1.1em;
  margin-right: 10px;
}

.navbar-toggler-icon {
  color: black;
}

.navbar .navbar-nav .nav-link:hover {
  background-color: #006592;
  color: #fff;
}

/* BUTTONS */

.blue-btn {
  background-color: #006592;
  color: white;
}

.white-btn {
  background-color: white;
  color: black;
}

.btn-outline-violet {
  color: #512e46;
  border-color: #512e46;
}

.btn-outline-violet:hover {
  background-color: #cca7bf;
}

/* HOME */

.shop-col {
  padding: 5%;
  text-align: center;
}

.fas {
  color: white;
  font-size: 75px;
  margin-bottom: 10%;
  text-align: center;
}

/* ======= Click to learn More ======= */
.links-row {
  display: -ms-flexbox; /* IE 10 */
  display: flex;
  -ms-flex-wrap: wrap; /* IE 10 */
  flex-wrap: wrap;
  padding-left: 0;
  padding-right: 0;
}

.col {
  margin-left: auto;
  margin-right: auto;
}

.col:hover .image {
  opacity: 0.3;
}

@media (max-width: 991px) {
  .links-row {
    display: flex;
    flex-direction: column-reverse;
    padding: 1em auto;
  }
}

/* ======= CONTACT ======= */

.contact-container {
  background-color: #fff;
  border-radius: 8px;
  margin-bottom: 32px;
  margin-top: -60px;
  position: relative;
  text-align: center;
  z-index: 2;
}

.form {
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  font-size: 1.25em;
  margin-top: 6px;
  margin-bottom: 16px;
  padding: 12px;
  resize: vertical;
  width: 75%;
}

input[type="text"],
select,
textarea {
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  font-size: 1.25em;
  margin-top: 6px;
  margin-bottom: 16px;
  padding: 12px;
  resize: vertical;
  width: 75%;
}

input[type="submit"] {
  background-color: #006592;
  border: none;
  border-radius: 4px;
  color: white;
  cursor: pointer;
  font-size: 1.5em;
  margin-bottom: 1em;
  padding: 12px 20px;
  width: 50%;
}

input[type="submit"]:hover {
  background-color: #a8deeb;
  color: black;
}

/* ======= FOOTER ======= */

.footer {
  background-color: #a8deeb;
  color: white;
  text-align: center;
  padding-bottom: 1em;
  padding-top: 1em;
}

/* ======= PORTFOLIO & CAROUSEL - COMMERCIAL ======= */

.portfolio-link {
  color: black;
  font-family: "PT Sans Narrow";
  font-size: 1em;
  padding-bottom: 10px;
}

.btn-outline-violet {
  color: #006592;
  border-color: #006592;
}

.btn-outline-violet:hover {
  background-color: #a8deeb;
}
.carousel-inner {
  padding: 1em;
}

.carousel-card {
  background-color: #f9f7f2;
  margin: 0 1.5em;
  box-shadow: 2px 6px 8px 0 rgba(22, 22, 26, 0.18);
  border: none;
  text-align: center;
  padding-top: 0.75em;
}
.carousel-control-prev,
.carousel-control-next {
  background-color: black;
  width: 4vh;
  height: 4vh;
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  #carouselExampleControls .carousel-item {
    margin-right: 0;
    flex: 0 0 33.333333%;
    display: block;
  }
  #carouselExampleControls .carousel-inner {
    display: flex;
  }
}
.card .img-wrapper {
  max-width: 100%;
  height: 13em;
  display: flex;
  justify-content: center;
  align-items: center;
}
.card img {
  max-height: 100%;
}
@media (max-width: 767px) {
  .card .img-wrapper {
    height: 17em;
  }
}

/* ======= Residential CAROUSEL ======= */

.imagegroup {
  animation: travel 40s linear infinite;
  animation-delay: 1s;
  display: flex;
}

.imagegroup img {
  max-height: 400px;
  flex-shrink: 0;
  object-fit: cover;
  border: 10px solid #f9f7f2;
}

@keyframes travel {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-5798px);
  }
}
