@import url('https://fonts.googleapis.com/css?family=Montaga|Montserrat:300,400,600,700,800,900');
/**
* Owl Carousel v2.3.4
* Copyright 2013-2018 David Deutsch
* Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
*/
.owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0)}.owl-carousel .owl-item{min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}.owl-theme .owl-dots,.owl-theme .owl-nav{text-align:center;-webkit-tap-highlight-color:transparent}.owl-theme .owl-nav{margin-top:10px}.owl-theme .owl-nav [class*=owl-]{color:#FFF;font-size:14px;margin:5px;padding:4px 7px;background:#D6D6D6;display:inline-block;cursor:pointer;border-radius:3px}.owl-theme .owl-nav [class*=owl-]:hover{background:#869791;color:#FFF;text-decoration:none}.owl-theme .owl-nav .disabled{opacity:.5;cursor:default}.owl-theme .owl-nav.disabled+.owl-dots{margin-top:10px}.owl-theme .owl-dots .owl-dot{display:inline-block;zoom:1}.owl-theme .owl-dots .owl-dot span{width:10px;height:10px;margin:5px 7px;background:#D6D6D6;display:block;-webkit-backface-visibility:visible;transition:opacity .2s ease;border-radius:30px}.owl-theme .owl-dots .owl-dot.active span,.owl-theme .owl-dots .owl-dot:hover span{background:#869791}

:root {
    --bs-primary: #7B2C3C;
}

@media (min-width: 1366px) {
  .container {
    max-width: 1240px;
}
}

body {
    font: normal 400 16px/1.65 Montserrat;
}

header {
    position: absolute;
    width: 100%;
    z-index: 3;
    background: rgba(255, 255, 255, .9);
}

a {
  color: #7B2C3C;
}

a:hover {
  color: #7B2C3C;
}

a.logo {
    display: inline-block;
    padding: 18px 24px;
    background: linear-gradient(#fff, #E2E2E2);
    margin-bottom: -58px;
}

nav#primary {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 99;
}

nav#primary a {
    color: #7B2C3C;
    font-weight: bold;
    display: block;
    text-transform: uppercase;
    font-size: 14px;
    padding: 34px 11px 33px;
    transition: all .2s ease;
}

nav#primary ul {
    padding: 0;
    margin: 0;
    list-style: none inside;
}

nav#primary li {
    display: inline-block;
}

nav#primary>ul>li {
  position: relative;
}

nav#about-secondary {
  position: relative;
}

nav#about-secondary ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

nav#about-secondary ul li {
    float: right;
    display: inline-block;
    background-color: #7b2c3c;
    width: 100%;
    text-align: right;
    border-bottom: 2px solid white;
}

/* nav#about-secondary ul li:hover {
    background-color: white;
} */

nav#about-secondary a {
  color: white;
}

nav#about-secondary a:hover {
  /* color: black; */
  font-weight: bold;
}

section#hero-slider img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

section#hero-slider {
    position: relative;
    height: 100vh;
    z-index: 1;
}

.carousel-caption {
    right: auto;
    left: 10%;
    text-align: left;
    bottom: 16%;
}

aside.socials {
    position: fixed;
    top: 65px;
    right: 0;
    background: #7B2C3C;
    padding: 16px 12px;
    z-index: 99;
}

aside.socials a {
    color: #fff;
    display: block;
    font-size: 25px;
    text-align: center;
    line-height: 1.32;
}

.carousel-caption h2 {
    font-family: "Montaga", serif;
    font-size: 3vw;
    text-shadow: 0 0 12px rgba(0, 0, 0, 0.44);
}

.carousel-caption h2>span {
    font-size: 5vw;
    font-family: "Montserrat", sans-serif;
    font-weight: 900;
    display: block;
}

.carousel-caption .btn {
    color: #000;
    font-weight: bold;
    text-transform: uppercase;
    background: #fff;
    border-radius: 0;
    display: inline-block;
    padding: 17px 32px;
    font-size: 15px;
    margin-top: 24px;
}

.carousel-control-next, .carousel-control-prev {
    width: 9%;
    font-size: 48px;
}

nav#primary li.phone>a:before {
    content: "\f098";
    font-family: "Font Awesome 5 Pro";
    padding-right: 5px;
}

nav#primary li.phone>a {
    color: #000;
    font-size: 16px;
    line-height: 1;
    padding-top: 36px;
    padding-bottom: 37px;
}

body.home main#content {
    padding: 60px 0 90px;
}

section#main-content-callout {
    padding: 60px 0;
    color: #fff;
    background: #7b2c3c;
}

section#spotlights {
    padding: 90px 0;
    background: #F2F2F2;
}

section#testimonials {
    padding: 60px 0 65px;
}

footer {
  padding: 60px 0 0;
  background: #333;
  color: #fff;
}

h1 {
    font-weight: bold;
    color: #7b2c3c;
}

body.home main#content>.container {
    width: 950px;
}

p {
    font-size: 16px;
    margin-bottom: 2rem;
}

section#main-content-callout p {
    margin: 0;
}

section#main-content-callout h3>i {
    display: block;
    font-size: 64px;
    padding-bottom: 22px;
}

section#main-content-callout h3 {
    text-transform: uppercase;
    font-weight: 700;
    margin: 0;
    padding-bottom: 18px;
}

body.home main#content>.container:first-child {
    padding-bottom: 45px;
}

body.home main#content>.container:last-child {
    padding-top: 45px;
}

.btn {
    color: #fff;
    background: #333;
    border-radius: 0;
    border: none;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    padding: 20px 32px;
}

.primary.btn {
    background: #2077C7;
}

.btn:hover {
  color: #fff;
  background: #222;
}

.primary.btn:hover {
  background: #1765ad;
}

.spotlight a {
    padding: 200px 24px 16px;
    display: block;
    color: #fff;
    font-weight: 700;
    font-size: 17px;
    text-transform: uppercase;
    transition: all .2s ease;
    text-shadow: 0 0 6px rgba(0, 0, 0, .5);
}

.spotlight a:after {
    content: "\f178";
    font-family: "Font Awesome 5 Pro";
    padding-left: 9px;
    transition: all .2s ease;
}

.spotlight a:hover {
    text-decoration: none;
}

.spotlight a:hover:after {
    padding-left: 16px;
}

#testimonials h2 {
  text-align: center;
}

h2 {
    font-size: 1.4vw;
    font-family: "Montaga", serif;
}

h2>a {
    font-family: "Montserrat", sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    border-bottom: 1px solid;
    font-weight: bold;
    color: #7b2c3c;
    opacity: .65;
}

h2>a:hover {
  opacity: 1;
  color: #7b2c3c;
  text-decoration: none;
}

#testimonials blockquote {
    background: #7b2c3c;
    color: #fff;
    font-weight: 600;
    padding: 36px 65px;
    margin: 12px;
    width: 80%;
    position: relative;
    left: 9%;
}

#testimonials blockquote:before {
    content: "";
    background: url(/theme-assets/tsh/images/dq.png) no-repeat center center;
    width: 75px;
    height: 69px;
    display: block;
    position: absolute;
    left: -12px;
    top: -15px;
}

#testimonials blockquote:after {
    content: "";
    background: url(/theme-assets/tsh/images/dq.png) no-repeat center center;
    width: 75px;
    height: 69px;
    display: block;
    position: absolute;
    right: -12px;
    bottom: -15px;
    transform: scale(-1, -1);
}

.owl-carousel .owl-nav button.owl-prev, .owl-carousel .owl-nav button.owl-next {
    font-size: 50px;
    color: #7b2c3c;
    opacity: .8;
    pointer-events: auto;
}

.owl-carousel .owl-nav button.owl-prev:focus, .owl-carousel .owl-nav button.owl-next:focus {
  outline: none;
}

.owl-carousel .owl-nav button.owl-prev:hover, .owl-carousel .owl-nav button.owl-next:hover {
  opacity: 1;
}

.owl-nav {
    position: absolute;
    top: 32%;
    width: 100%;
    pointer-events: none;
}

button.owl-next {
    float: right;
}

.owl-carousel .owl-nav button.owl-prev.disabled, .owl-carousel .owl-nav button.owl-next.disabled {
    opacity: .33;
    pointer-events: none;
}

#testimonials blockquote cite {
    display: block;
    position: absolute;
    bottom: -100px;
    color: #000;
    text-align: center;
    width: 100%;
    left: -2%;
    font-weight: 700;
    font-style: normal;
}

#testimonials blockquote cite>em {
    display: block;
    font-weight: 400;
    font-style: normal;
}

#testimonials .owl-carousel, #testimonials .owl-stage-outer {
    height: 290px;
}

#testimonials blockquote cite:before {
    content: "";
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    border-top: 40px solid #7b2c3c;
    display: block;
    width: 40px;
    position: absolute;
    left: 45.8%;
    bottom: 60px;
}

#testimonials .owl-stage-outer:before {
    content: "";
    width: 110px;
    background: linear-gradient(to right, #fff, transparent);
    display: block;
    height: 100%;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
}

#testimonials .owl-stage-outer:after {
    content: "";
    width: 110px;
    right: 0;
    top: 0;
    background: linear-gradient(to left, #fff, transparent);
    display: block;
    height: 100%;
    position: absolute;
    z-index: 1;
}

.card-header {
  background-color: #7B2C3C!important;
}

.card-body-form {
  background-color: #f2f2f2!important;
}

#mapHeader {
  color: #7B2C3C!important;
}

footer h4 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 14px;
}

footer p {
    font-size: 14px;
    line-height: 2;
    margin-bottom: 9px;
}

footer p a {
    color: #fff;
}

footer ul {
    padding: 0;
    list-style: none inside;
}

footer ul a {
    color: #fff;
    font-size: 14px;
    line-height: 2;
}

footer h5 {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 20px;
}

.footer-socials a {
    color: #fff;
    font-size: 32px;
    margin-right: 9px;
}

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

.subfooter {
    margin-top: 50px;
    background: #692432;
    padding: 12px 0;
    text-align: center;
    font-size: 11px;
    font-weight: 600;
}

.subfooter a {
    color: #fff;
}

span.spacer:before {
    content: "\2022";
    padding: 0 9px;
}

nav#primary ul.submenu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    min-width: 250px;
}

nav#primary>ul>li>a:hover+ul.submenu, nav#primary ul.submenu:hover {
    display: block;
}

nav#primary>ul>li>a {
    background: transparent;
}

nav#primary>ul>li>a:hover {
    background: #fff;
    text-decoration: none;
}

nav#primary ul.submenu a {
    padding: 18px 24px;
    width: 100%;
}

nav#primary ul.submenu li {
    display: block;
}

nav#primary ul.submenu a:hover {
    text-decoration: none;
    padding-left: 32px;
    padding-right: 4px;
}

footer .footer-socials a:hover {
    opacity: 1;
    text-decoration: none;
}

footer .footer-socials a {
    opacity: .8;
}

.topfold {
  font-family: "Montserrat", sans-serif;
  color: #ffffff;
    height: 500px;
    background-position: center center;
    background-size: cover;
    position: relative;
    display: block;
}

.topfold-container:after {
    display: block;
    width: 100%;
    height: 100%;
    content: '';
    position: absolute;
    top: 0;
    z-index: 1;
    background: rgba(0, 0, 0, .25);
}

.topfold-container {
    position: relative;
    margin-bottom: 70px;
}

.topfold+.container {
    height: 100%;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.topfold-container .row {
   position: absolute;
   bottom: 10%;
}
body.inventoryhome .topfold-container .row, body.modelhome .topfold-container .row, body.community .topfold-container .row {
   position: absolute;
   bottom: -3%;
}

.topfold-container h2.title {
    font-family: Montserrat, sans-serif;
    color: #fff;
    font-weight: 800;
    font-size: 3vw;
    text-shadow: 0 1px 9px rgba(0, 0, 0, .66);
    margin-bottom: 6%;
}

.btn.reverse {
    transform: scale(1);
    color: #000;
    background: #fff;
    box-shadow: 0 0 9px rgba(0, 0, 0, .33);
    transition: all .2s ease;
}

.topfold-container .btn.reverse:hover {
    transform: scale(.97);
    box-shadow: 0 0 4px rgba(0, 0, 0, .16);
}

.page-section-title {
    color: #7b2c3c;
    font-weight: 700;
}

h1.h2 {
    font-family: "Montaga", serif;
    color: #7b2c3c;
    font-size: 1.6vw;
    margin-bottom: 21px;
}

.inventory-list__city-title,
.inventory-list__community-title {
    color: var(--bs-primary);
    font-family: Montserrat, sans-serif;
    font-weight: 700;
}

.inventory-list__city-title {
    margin-bottom: 0.5rem;
}

.inventory-list__community-title {
    font-size: 1.125rem;
    text-transform: uppercase;
    margin-bottom: 0.875rem;
}

h2.city {
    color: #7B2C3C;
    font-family: Montserrat, sans-serif;
    font-weight: bold;
    font-size: 18px;
    text-transform: uppercase;
    margin-bottom: 14px;
}

main#content>.container>.row>.col p {
    margin-bottom: 0;
}

h4.card-title {
    font-family: Montserrat, sans-serif;
    font-weight: bold;
    margin-bottom: 7px;
    font-size: 21px;
}

h4.card-title a {
    color: rgba(32, 32, 32, .85);
}

.card, .card-footer:last-child, .card-img-top {
    border-radius: 0;
}

.card {
  border: none;
}

.card-body {
    border-left: 1px solid rgba(32, 32, 32, .85);
    border-right: 1px solid rgba(32, 32, 32, .85);
    border-bottom: 1px solid rgba(32, 32, 32, .85);
}

.card>.card-footer .card-text small {
    font-size: 18px;
    font-weight: bold;
    font-family: Montserrat, sans-serif;
}

.card-footer.bg-dark {
    padding: 15px 22px;
}

span.space {
    display: inline-block;
    width: 12px;
}

h3.preheadline {
    color: #fff;
    font-family: Montaga, sans-serif;
    font-weight: 400;
    font-size: 1.8vw;
}

.topfold-container h2.title {
   margin-bottom: 0;
}

.topfold-container p.description {
    color: #fff;
    font-weight: bold;
    font-size: 0.9vw;
}

.topfold-container p.description span.price {
    padding-right: 2vw;
}

h2 {
    font-family: Montserrat, sans-serif;
    font-weight: bold;
    font-size: 1.1vw;
    margin-bottom: 1em;
}

span.badge.badge-pill.badge-secondary {
    background: #7b2c3c;
    text-transform: uppercase;
    font-weight: 700;
    padding: 17px 24px;
    margin: 0 9px 12px 0;
}

.carousel-caption {
    top: auto;
    bottom: 12px;
    padding: 16px 24px;
    background: rgba(0,0,0,.8);
    border-radius: 0;
    font-weight: 600;
    left: 12px;
    text-transform: uppercase;
    font-size: 14px;
}

.col-3>.card>.card-header {
    background: #7b2c3c !important;
    font-weight: bold;
    text-align: center;
    padding-bottom: 9px;
    border-radius: 0;
}

.col-3>.card>.card-body {
    padding: 15px 12px;
    background: #f2f2f2;
    border-color: #7b2c3c;
    border-bottom: 1px solid #7b2c3c;
}

.col-3>.card>.card-body label {
    display: none;
}

.col-3>.card>.card-body input,
.col-3>.card>.card-body textarea {
    border: none;
    box-shadow: 0 1px 3px rgba(0,0,0,0.25);
    border-radius: 0;
    font-size: 14px;
}

.col-3>.card .form-group {
    margin-bottom: 15px;
}

.col-3>.card .form-group.m-t-25 {
    margin-bottom: 0;
}

.col-3>.card {
    border-radius: 0;
    margin-bottom: 48px;
}

.col-3>.card button.primary.btn {
    display: block;
    width: 100%;
}

.col-3>h3 {
    font-family: Montserrat, sans-serif;
    font-size: 0.9vw;
    font-weight: bold;
    color: #7b2c3c;
    text-transform: uppercase;
}

.col-3>p {
    font-size: 15px;
}

.col-3>h6 {
    font-weight: bold;
    text-transform: uppercase;
    font-size: 0.85vw;
}

.col-3>h6+p {
    font-weight: 600;
}

.col-3 .secondary.btn {
    display: block;
    margin-bottom: 10px;
}

main#content .col-3 .social-group a {
    color: rgba(123, 44, 60, .8);
    font-size: 1.8vw;
    margin-right: 9px;
}

main#content .col-3 .social-group a:hover,
main#content .col-3 .social-group a:focus {
  color: rgba(123, 44, 60, 1);
  text-decoration: none;
}

.school-info {
    margin-bottom: 64px;
}

.g-recaptcha-outer{
               text-align: center;
               border-radius: 2px;
               background: #f9f9f9;
               border-style: solid;
               border-color: #37474f;
               border-width: 1px;
               border-bottom-width: 2px;
}
.g-recaptcha-inner{
               width: 154px;
               height: 82px;
               overflow: hidden;
               margin: 0 auto;
}
.g-recaptcha{
               position:relative;
               left: -2px;
               top: -1px;
  margin-bottom:10px;
}

section#hero-slider .carousel-caption {
    background: rgba(0, 0, 0, .8);
    border-radius: 0;
    bottom: auto;
    top: 50%;
    width: 50%;
}

.spotlight:hover, .spotlight:focus {
    background-size: 120% !important;
}

.spotlight>a:hover, .spotlight>a:focus {
    background: rgba(0,0,0,.33);
}

.spotlight {
    transition: all .5s ease;
}

section#hero-slider .carousel-caption {
    background: rgba(0, 0, 0, .8);
    border-radius: 0;
    bottom: auto;
    top: 50%;
    width: 50%;
}

#testimonials .owl-carousel, #testimonials .owl-stage-outer {
    height: 310px;
}

button.navbar-toggler {
    display: none;
}



.sold-banner:before {
    content: 'sold';
    position: absolute;
    top: 0;
    left: 0;
    color: #FFF;
    background: red;
    z-index: 1;
    text-transform: uppercase;
    font-size: 1.25em;
    font-weight: bold;
    transform: rotate(-45deg) translate(-111px, -75px);
    width: 350px;
    text-align: center;
    padding: 5px;
}

main#content .social-group {
    margin-top: 16px;
    margin-bottom: 40px;
}

main#content .card.mb-5~h2.bold {
    font-weight: bold;
    color: #7b2c3c;
    text-transform: uppercase;
}






/* responsiveness 6/17 -jared */

@media (max-width: 1679px) {
    .topfold-container p.description {
        font-size: 1.3vw;
    }
}


@media (max-width: 1366px) {
    h2 {
        font-size: 2vw;
    }
    .carousel-caption .btn {
        margin-top: 0;
    }
    .carousel-caption h2 {
        font-size: 2.7vw !important;
    }
    .carousel-caption p {
        font-size: 1.2vw !important;
    }

}

@media (max-width: 1299px) {
    nav#primary a {
        font-size: 13px;
        padding: 35px 11px 34px;
    }
    nav#primary li.phone>a {
        font-size: 14px;
        padding-top: 38px;
    }
    nav#primary ul.submenu a:hover {
        padding-right: 6px;
    }
    aside.socials a {
        font-size: 21px;
        line-height: 1.5;
    }
    aside.socials {
        padding: 12px 9px;
    }
    .carousel-caption .btn {
        margin-top: 0;
    }
    body {
        font-size: 14px;
    }
    .spotlight a {
        padding-top: 180px;
        font-size: 16px;
    }
    .carousel-caption {
        padding: 24px 34px 34px !important;
    }
    footer ul a, footer p {
        font-size: 12px;
    }
    footer h5 {
        font-size: 15px;
        margin-bottom: 18px;
    }
    footer h4 {
        font-size: 22px;
    }
    .footer-socials a {
        font-size: 24px;
    }
    .h3, h3 {
        font-size: 1.5rem;
    }
}

@media (max-width: 1099px) {
    a.logo {
        padding: 14px 20px;
    }

    a.logo img {
        max-width: 100px;
    }

    nav#primary a {
        padding: 25px 11px 25px;
        font-size: 11px;
    }

    nav#primary li.phone>a {
        padding-top: 28px;
        padding-bottom: 28px;
        font-size: 12px;
    }
    .spotlight a {
        padding-top: 150px;
        font-size: 15px;
    }
    h2 {
        font-size: 2.4vw;
    }
    #testimonials .owl-carousel, #testimonials .owl-stage-outer {
        height: 320px;
    }
    #testimonials blockquote cite:before {
        left: 44.8%;
    }
    #testimonials blockquote cite {
        left: 0;
    }
    h1.h2 {
        font-size: 2vw;
    }
    .col-3>h3 {
        font-size: 1.5vw;
    }
    main#content .card.mb-5~h2.bold {
        font-size: 1.8vw;
    }
}

@media (max-width: 991px) {
    button.navbar-toggler {
        display: block;
        position: absolute;
        top: 14px;
        right: 0;
        z-index: 999;
    }
    span.navbar-toggler-icon:before {
        content: "\f0c9";
        font-family: "Font Awesome 5 Pro";
        color: #7b2c3c;
        font-weight: 700;
        position: relative;
        top: 5px;
    }
    button.navbar-toggler:not(.collapsed)>span.navbar-toggler-icon:before {
        content: "\f00d";
    }
    aside.socials {
        top: 10%;
    }
    aside.socials a {
        line-height: 1.8;
    }
    header {
        position: fixed;
    }
    ul#navul {
        display: block;
        position: fixed;
        left: 100%;
        width: 60%;
        height: 100%;
        background: #fff;
        transition: left .2s ease;
        overflow-y: scroll;
        z-index: 99;
    }

    ul#navul.show {
        left: 40%;
    }
    ul#navul>li {
        display: block;
        margin-right: 20%;
        padding-left: 5%;
    }

    ul#navul>li:first-child {
        padding-top: 5%;
    }
    nav#primary ul.submenu {
        display: block;
        position: relative;
    }

    ul.submenu>li>a:before {
        content: "\2013";
        padding-right: 7px;
    }
    nav#primary a {
        font-size: 15px;
    }
    nav#primary li.phone>a {
        font-size: 16px;
        padding-bottom: 9vh;
    }
    .footer-about, .footer-socials {
        padding-top: 36px;
    }
    nav#primary ul.submenu a {
        padding: 14px 24px;
    }
    nav#primary a {
        padding: 14px 11px 14px;
    }
    .navshadow {
        opacity: 0;
        width: 40%;
        position: fixed;
        left: -40%;
        top: 0;
        background: rgba(0, 0, 0, 0.5);
        height: 100%;
        z-index: 0;
        transition: all .2s ease;
    }
    ul#navul.show>.navshadow {
        opacity: 1;
        left: 0;
    }
    button.navbar-toggler:focus {
        outline: none;
    }
    body.home main#content>.container {
        width: 100%;
    }
    .h1, h1 {
        font-size: 4.5vw;
    }
    .h3, h3 {
        font-size: 2.5vw;
    }
    section#spotlights .col-lg-4:not(:last-child) {
        margin-bottom: 36px;
    }
    section#spotlights {
        padding: 70px 0;
    }
    footer ul a {
        padding: 11px 0;
        display: inline-block;
        font-size: 1.7vw;
    }
    h2 {
        font-size: 3vw;
    }
    #testimonials .owl-carousel, #testimonials .owl-stage-outer {
        height: 370px;
    }
    #testimonials .owl-stage-outer:before, #testimonials .owl-stage-outer:after {
        width: 75px;
    }
    #testimonials blockquote cite:before {
        left: auto;
        margin: 0 auto;
        position: relative;
        bottom: 15px;
    }
    .carousel-caption h2 {
        font-size: 4.2vw !important;
    }
    .carousel-caption p {
        font-size: 2vw !important;
    }
    section#hero-slider .carousel-caption {
        width: 80%;
    }
    h3.preheadline {
        font-size: 3vw;
    }
    .topfold-container h2.title {
        font-size: 4vw;
    }
    .topfold-container p.description {
        font-size: 2vw;
    }
    h1.h2 {
        font-size: 3vw;
    }

}

@media (max-width: 767px) {
  .topfold-container h2.title {
       font-size: 6vw;
   }
   h1.h2 {
       font-size: 5vw;
   }
   h4.card-title {
       font-size: 4.5vw;
   }
   p {
       font-size: 3.4vw;
   }
   .card>.card-footer .card-text small {
       font-size: 3.6vw;
   }
   .topfold {
       max-height: 50vh;
   }
    ul#navul {
        width: 100%;
    }
    ul#navul.show {
        left: 0;
    }
    .navshadow {
        display: none;
    }
    nav#primary a {
        font-size: 3.4vw;
    }
    footer {
        text-align: center;
    }
    footer .col-md-6 {
        padding-top: 36px;
    }
    footer ul a {
        font-size: 3.2vw;
    }
    .subfooter span.spacer {
        display: block;
        width: 1px;
        height: 12px;
        opacity: 0;
    }
    aside.socials {
        display: none;
    }
    body {
        font-size: 3.4vw;
    }
    .carousel-caption h2 {
        font-size: 5vw !important;
    }
    .carousel-caption p {
        font-size: 3vw !important;
    }
    .h3, h3 {
        font-size: 5.5vw;
    }
    section#main-content-callout .row > .col-md-4:not(:last-child) {
        margin-bottom: 36px;
    }
    .btn {
        display: block;
        margin-bottom: 12px;
    }
    #testimonials blockquote {
        padding: 58px 20px;
        width: 80%;
        left: 7%;
    }
    #testimonials .owl-stage-outer:before, #testimonials .owl-stage-outer:after {
        display: none;
    }
    #testimonials .owl-carousel, #testimonials .owl-stage-outer {
        height: 520px;
    }
    h2 {
        font-size: 5vw;
    }
    section#hero-slider img, section#hero-slider {
        height: 60vh;
    }
    section#hero-slider .carousel-caption {
        top: 20%;
        padding: 18px 20px 9px !important;
    }
    .carousel-control-next, .carousel-control-prev {
        display: none;
    }
    #testimonials blockquote cite {
        bottom: -95px;
    }
    .topfold-container p.description {
        font-size: 3.6vw;
    }
    .topfold-container p.description span.price {
        display: block;
    }
    main#content .social-group a {
        font-size: 6vw !important;
        padding-right: 12px;
    }

    .owl-nav {
        width: 106%;
        left: -3%;
    }
    h3.preheadline {
        font-size: 5vw;
    }
    .topfold-container {
        margin-bottom: 40px;
    }
}

.text-primary {
    color: var(--bs-primary) !important;
}
