/******************** FONTS *************/
@font-face {
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 300;
  src: url(../font/quicksand.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 400;
  src: url(../font/quicksand.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 500;
  src: url(../font/quicksand.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 600;
  src: url(../font/quicksand.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 700;
  src: url(../font/quicksand.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* ----------------------------------------------
 * Generated by Animista on 2021-3-9 23:34:0
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

 @-webkit-keyframes kenburns-top {
  0% {
    -webkit-transform: scale(1) translateY(0);
            transform: scale(1) translateY(0);
    -webkit-transform-origin: 50% 16%;
            transform-origin: 50% 16%;
  }
  100% {
    -webkit-transform: scale(1.1) translateY(-15px);
            transform: scale(1.1) translateY(-15px);
    -webkit-transform-origin: top;
            transform-origin: top;
  }
}
@keyframes kenburns-top {
  0% {
    -webkit-transform: scale(1) translateY(0);
            transform: scale(1) translateY(0);
    -webkit-transform-origin: 50% 16%;
            transform-origin: 50% 16%;
  }
  100% {
    -webkit-transform: scale(1.1) translateY(-15px);
            transform: scale(1.1) translateY(-15px);
    -webkit-transform-origin: top;
            transform-origin: top;
  }
}

 @-webkit-keyframes text-focus-in {
  0% {
    -webkit-filter: blur(12px);
            filter: blur(12px);
    opacity: 0;
  }
  100% {
    -webkit-filter: blur(0px);
            filter: blur(0px);
    opacity: 1;
  }
}
@keyframes text-focus-in {
  0% {
    -webkit-filter: blur(12px);
            filter: blur(12px);
    opacity: 0;
  }
  100% {
    -webkit-filter: blur(0px);
            filter: blur(0px);
    opacity: 1;
  }
}
@keyframes slide-in {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 1;
  }
}
@keyframes slide-out {
  0% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    opacity: 0;
  }
}
@keyframes slide-up {
  0% {
    height: 100%;
    opacity: 1;
  }
  100% {
    height: 0;
    opacity: 0;
  }
}

@keyframes slide-up-appear {
  0% {
    height: 0;
    opacity: 0;
    -webkit-transform: translateY(200%);
    transform: translateY(200%);
  }
  100% {
    height: 100%;
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

html { font-size: 87.5%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
html { -webkit-text-size-adjust: 100%; }
body { font-family: Quicksand, Verdana, Geneva, Tahoma, sans-serif; color: #151617; margin: 0 auto; }

.inner_page { position: relative; }
.inner_page .screen { position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; background-color: rgba(244, 242, 214, 0.35); }
.inner_page .wrapper {
  position: relative;
  z-index: 2;
  box-sizing: border-box;
  max-width: 1060px;
  margin: 0 auto;
  background-color: rgba(254, 254, 254, 0.92);
  min-height: 100%;
}

.wrapper .container {
  box-sizing: border-box;
  max-width: 1060px;
  margin: 0 auto;
  padding-left: 10px;
  padding-right: 10px;
}
.outer { background-position: center; background-attachment: fixed; background-size: cover; }
.container { overflow: hidden; }
.main { padding-top: 55px; padding-bottom: 50px; }
.main h4 { color: #7f2982; font-weight: 500; font-style: italic; font-size: 1.15rem; margin: 20px 0 10px; }

.desktop, .name_field, .empty { display: none; }


/**************** REUSEABLE UI **********/
.right { float: right; }
.slick-slide { outline: none; height: auto; }

.list li { position: relative; padding: 5px 10px 2px 45px; max-width: 700px; }
.list li:before { position: absolute; left: 25px; content: '\2606'; font-size: 12px; color: #7f2982; }
.list + h4 + .list li:before { content: '\2022'; }

form { max-width: 600px; }
form .contact_extra_field { display: none; }
form .col { display: flex; justify-content: space-between; }
form .col_two > div { width: 49%; }
form input[type="submit"] { -webkit-appearance: none; outline: none; padding: 10px 60px; position: relative; }
form div.form_required { text-align: right; margin-bottom: 10px; }
form div.form_contact_type { margin-bottom: 20px; }
form div.form_contact_type .col { flex-flow: row wrap; }
form div.form_contact_type input { display: none;  }
form div.form_contact_type label { width: 49%; margin-top: 5px; }
form div.form_contact_type span { position: relative; display: inline-block; color: #b38a1a; white-space: nowrap; padding-left: 20px; }
form div.form_contact_type span:before { position: absolute; content: ''; border-radius: 10px; width: 14px; height: 14px; left: 0; border: 1px solid #b38a1a; }
form div.form_contact_type input:checked + span:before { background-color: #b38a1a; }

form label { display: block; margin-bottom: 1px; }
form textarea { resize: none; height: 150px; }
form select, form input[type="text"], form input[type="email"], form textarea { -webkit-appearance: none; outline: none; background-color: transparent; padding: 10px 15px; border: 1px solid #b38a1a; width: 100%; outline: none; }
form section, form .form_field_wrap { margin-bottom: 10px; }
form .form-select-wrap { position: relative; }
form .form-select-wrap label:after { position: absolute; z-index: 1; content: '\025BE'; bottom: 10px; right: 10px; }
form .form-select-wrap select { position: relative; z-index: 3; }
form.submitted {
  -webkit-animation: slide-up 0.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  animation: slide-up 0.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

.send_message { clear: both; min-height: 30px; margin: 10px 0 0; font-size: 1.25rem; display: none; }
.form_contact_type > div:first-child { margin-bottom: 5px; }

.btn { text-align: center; border-radius: 3px; box-sizing: border-box; background-color: #b38a1a; display: inline-block; padding: 10px 25px; font-size: 1rem; border: 1px solid #b38a1a; text-transform: capitalize; }
.btn.primary { background-color: #b38a1a; color: #ffffff; font-weight: 500; }
.btn.secondary { background-color: #05386B; color: #ffffff; font-weight: 500; padding: 15px; }

.quote { color: #05386B; position: relative; font-style: italic; font-size: 1.15rem; margin: 0 10px 0 0; line-height: 1.25em; }
.quote .byline { font-style: normal; white-space: nowrap; font-size: 75%;  }
.quotes { padding: 30px 0; }


.page_header { padding: 0 15px; text-align: center; }
.page_header h1 { font-size: 1.25rem; font-weight: 500; color: #7f2982; }

.slick-active.slick-current:not(.shown) .hero-slide-image {
	-webkit-animation: kenburns-top 3s ease-out both;
	        animation: kenburns-top 3s ease-out both;
}

.slick-active.slick-current:not(.shown) .container {
	-webkit-animation: text-focus-in 0.6s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
	        animation: text-focus-in 0.6s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
}

/**************** RESET *****************/
ul { list-style: none; margin: 0; padding: 0; }
a { text-decoration: none; color: #b38a1a; outline: none; font-weight: 500; text-shadow: 1px 0 rgb(95 10 10 / 8%); }
.image { border-radius: 5px; overflow: hidden; box-shadow: 1px 3px 3px 2px rgba(0,0,0,0.15); }
.image img { width: 100%; }


/**************** HEADER ****************/
#globalHeader {
  position: fixed; 
  z-index: 100; 
  width: 100%;
  left: 0;
  padding-bottom: 2px;
}

#indexPage #globalHeader, body:not(#indexPage) #globalHeader .container {
  background-color: rgba(255,255,255,0.95);
  background: linear-gradient(180deg,rgba(255,255,255,0.95) 0%, rgba(255,255,255,0.15) 100%);
}

#globalHeader .container { 
  padding-top: 3px;
  display: flex; 
  align-items: center;
}
#globalHeader .logo { flex: 240px; }
#globalHeader nav ul { font-weight: 600; font-size: 1.25rem; }
#globalHeader nav ul li { letter-spacing: 0.01em; }
#globalHeader nav ul li a { position: relative; color: #b38a1a; display: block; }
#globalHeader nav.desktop { position: relative; }
#globalHeader nav.desktop ul { margin-top: 15px; }
#globalHeader nav.desktop ul li a { text-shadow: 1px 0 rgba(95, 10, 10, 0.1); line-height: 54px; }
#globalHeader nav.desktop ul li + li { margin-left: 20px; }
#globalHeader nav.desktop ul li { display: inline-block; }

#globalHeader nav.desktop ul li:hover a:before, #globalHeader nav.desktop ul li .current:before { 
  position: absolute;
  content: '';
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 3px;
  background-color: #b38a1a;
}

#globalHeader nav.desktop .contact {
  position: absolute;
  right: 0;
  font-size: 85%;
  text-align: right;
  color: #323949;
}

#globalHeader .hamburger { cursor: pointer; position: absolute; z-index: 100; right: 15px; top: 5px; font-size: 0; width: 30px; height: 30px; }
#globalHeader .bar { margin-top: 5px; display: block; width: 100%; height: 3px; background-color: #b38a1a; }
#globalHeader .hamburger.mobile-active .bar1 {
  opacity: 0;
}
#globalHeader .hamburger.mobile-active .bar2 {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#globalHeader .hamburger.mobile-active .bar3 {
  -webkit-transform: rotate(-45deg) translate(5px, -6px);
  transform: rotate(-45deg) translate(5px, -6px);
}
#globalHeader .hamburger.mobile-active + #mobileNav {
  -webkit-animation: slide-in 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: slide-in 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

#globalHeader .hamburger.mobile-inactive + #mobileNav {
  -webkit-animation: slide-out 0.3s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: slide-out 0.3s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

#globalHeader .desktop .contact a { padding-left: 20px; display: inline-block; position: relative; color: #b38a1a; }
#globalHeader .desktop .contact a:before { display: block; position: absolute; top: 2px; left: 5px; background-repeat: no-repeat; background-size: auto 12px;; width: 20px; height: 100%; content: ''; }
.header_contact_email:before { background-image: url(../img/mail.svg); }
.header_contact_phone:before { background-image: url(../img/phone.svg); }

#indexPage #globalHeader.scrolled, body:not(#indexPage) #globalHeader.scrolled .container {
  background-color: rgba(255, 255, 255, 0.85);
}

#mobileNav {
  position: fixed;
  z-index: 90;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  background-color: rgb(255,255,255, 0.95);
  padding-top: 70px;
  opacity: 0;
}

#mobileNav ul a {
  padding: 20px 50px;
}

#mobileNav ul a:hover, #mobileNav ul .current {
  background-color: #b38a1a;
  color: #ffffff;
}

#mobileNav .contact {
  padding: 20px 0 0 50px;
}

#mobileNav .contact a {
  color: #05386B;
}

#mobileNav .contact a:hover {
  text-decoration: underline;
}

#mobileNav .contact div + div {
  margin-top: 10px;
}

#mobileNav .contact div span {
  display: block;
  text-transform: uppercase;
  color: #616161;
  font-size: 85%;
}

/**************** HEADER LOGO **********/
#headerLogo { position: relative; z-index: 100; height: 7vw; max-height: 60px; min-height: 40px;  }
#headerLogo img { height: 98%; }

#headerLogo img { border: 0; }
#headerLogo div { margin: 0; padding: 0; left: 0; line-height: 1em; text-transform: lowercase; }
#headerLogo div a { color: #7f2982; }
#headerLogo div em { font-weight: 500; left: 0; }
#headerLogo div span { display: block; font-size: 1.25rem; position: absolute; left: 150px; top: 35px; }


/**************** FOOTER **************/
#globalFooter { padding: 20px 0 35px; border-top: 1px solid #7f2982; }
#globalFooter .container { position: relative; text-align: left; display: flex; justify-content: space-between; }
#globalFooter .logo { min-width: 100px; width: 10vw; height: 100px; background-image: url(../img/sn.svg); background-repeat: no-repeat; background-size: 100%; background-position: bottom 20px right; }
#globalFooter .legal { margin-top: 20px; font-size: 85%; }
#globalFooter .footer_contact_info li { position: relative; padding-left: 80px; }
#globalFooter .footer_contact_info li + li { margin-top: 5px; }
#globalFooter .footer_contact_info span { width: 90px; position: absolute; left: 0; }


/**************** BIO PAGE *************/
#bio { background-image: url(../img/home2.jpg); }
#bio .main { padding-bottom: 20px; }
#bio .image { margin: 15px 2.5vw 15px 0; float: left; max-width: 320px; width: 20vw; }
#bio .main p { line-height: 1.65em; }
#bio .main p strong { font-weight: 500; font-style: italic; }
#bio h4 + p { margin-top: 5px; }
#bio .main .contact { float: right; border: 1px solid #7f2982; padding: 10px 20px 30px; margin-left: 30px; margin-top: 20px; }
#bio .main .contact li + li { margin-top: 10px; }
#bio .main .contact span { display: block; text-transform: uppercase; font-size: 90%; margin-bottom: 5px; }
#bio .quote + .quote { margin-top: 25px; padding-top: 25px; border-top: 1px dashed #7f2982; line-height: 1.5rem; }


/***************** CONTACT PAGE ************/
#contactPage .outer { background-image: url(../img/home4.jpg); }


/*************** HOME ***************/
#indexPage .wrapper > section { padding: 25px 0; }
#indexPage section header h1 { margin: 0; font-weight: 500; padding: 0 0 20px; font-size: 1.75rem; color: #7f2982; }
#indexPage section header h1 + p { margin-top: 0; }
#indexPage .wrapper .highlight { background-color: #f9f6ed; }

#indexPage #hero { max-width: 100%; overflow: hidden; }
#indexPage #hero .slide { position: relative; width: 100%; height: 65vh; min-height: 300px; max-height: 500px; }
#indexPage .hero-slide-image:before {
  content: '';
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg,rgba(255,255,255,0.95) 0%, rgba(255,255,255,0) 100%);
}
#indexPage .hero-slide-image { position: absolute; width: 100%; height: 100%; background-position: center; background-size: cover; background-repeat: no-repeat; }
#indexPage .hero-slide-1 { background-image: url(../img/home1.jpg); }
#indexPage .hero-slide-2 { background-image: url(../img/home2.jpg); }
#indexPage .hero-slide-3 { background-image: url(../img/home3.jpg); }
#indexPage .hero-slide-4 { background-image: url(../img/home4.jpg); }
#indexPage #hero .container { position: relative; z-index: 3; height: 100%; margin: 0 auto; text-align: center; display: flex; flex-direction: column; justify-content: center; align-items: center; }
#indexPage #hero .btn { background-color: #05386B; border: 1px solid #05386B; padding: 20px 40px; position: relative; color:#ffffff; }

#shortBio { line-height: 1.5rem; font-size: 1rem; }
#shortBio .image { max-width: 250px; max-height: 250px; min-width: 150px; min-height: 150px; width: 20vw; height: 20vw; margin-right: 20px; margin-bottom: 20px; border-radius: 125px; overflow: hidden; text-align: center; background: url(../img/bio.jpg) no-repeat; background-size: cover; }
#shortBio .container .image + p { margin-top: 0; margin-bottom: 30px; }
#shortBio em { color: #7f2982; }

.hoods ul { display: flex; flex-flow: row wrap; justify-content: space-between; }
.hoods ul li { width: 100%; box-sizing: border-box; margin-bottom: 5px; text-align: center; }
.hood_list .image { position: relative; }
.hood_list .image a { position: absolute; z-index: 2; top: 0; left: 0; right: 0; bottom: 0; display: block; height: 100%; width: 100%; font-size: 0; }
.hood_list .hood_detail { height: 0; overflow: hidden; }
.hood_list .image { width: 100%; height: 150px; margin-bottom: 5px; background-size: cover; background-position: center center; }
.hood_list .alexandria { background-image: url(../img/hoods/Alexandria.jpg); }
.hood_list .arlington { background-image: url(../img/hoods/Arlington.jpg); }
.hood_list .ashburn { background-image: url(../img/hoods/Ashburn.jpg); }
.hood_list .burke { background-image: url(../img/hoods/Burke.jpg); }
.hood_list .fairfax { background-image: url(../img/hoods/Fairfax.jpg); }
.hood_list .fallschurch { background-image: url(../img/hoods/FallsChurch.jpg); }
.hood_list .leesburg { background-image: url(../img/hoods/Leesburg.jpg); }
.hood_list .oakton { background-image: url(../img/hoods/Oakton.jpg); }
.hood_list .reston { background-image: url(../img/hoods/Reston.jpg); }
.hood_list .mclean { background-image: url(../img/hoods/McLean.jpg); }
.hood_list .springfield { background-image: url(../img/hoods/Springfield.jpg); }
.hood_list .vienna { background-image: url(../img/hoods/Vienna.jpg); }

#contactMe .desc { font-size: 1.15rem; margin-bottom: 30px;}

#indexPage .quotes .slide { margin: 0 auto; outline: none; }
#indexPage .quotes .quote { font-size: 1.15rem; line-height: 1.5rem; padding: 0 20px; max-width: 700px; margin: 0 auto; }
#indexPage .quotes .quote .byline { display: block; margin-top: 10px; }

.listing-slide-container .slides { max-width: 100%; }
.listing-slide-container .slides img { max-width: 100%; display: block; border: 0; }
.listing-slide-container .listing-slides-nav { margin-top: 10px; }
.listing-slide-container .listing-slides-nav .listing-slide { padding: 0 5px; box-sizing: border-box; }
.listing-slide-container .listing-slides-nav .slick-current { opacity: 0.5; }

.listing-detail table { border: 0; width: 100%; }
.listing-detail table td:first-child { text-align: right; padding: 5px; font-size: 0.95em; color: #666666; }
.listing-detail table td:last-child { font-weight: 500; padding-left: 5px; }
.listing-description { font-size: 1.15em; line-height: 1.5em; }

.listing-slide-container .slick-arrow { visibility: hidden; }
.listing-slide-container .slick-prev { left: 5px; z-index: 2; }
.listing-slide-container .slick-next { right: 5px; }

/***************** CONTACT **********/
#contactPage #contactMe, #contactPage #contactModal {
  max-width: 600px;
  margin: 0 auto;
}

/***************** HOOD *************/
#nova.outer { background-image: url(../img/hoods/DC.jpg); }
#nova .hoods { padding-top: 15px; }
.hood_image { margin: 20px; float: right; width: 30vw; min-width: 200px; max-width: 450px; }

#hoodPage .hood_list { clear: both; display: flex; padding-top: 30px; max-height: 150px; overflow: hidden; }
#hoodPage .hood_list li { margin: 0 3px; outline: none; }
#hoodPage .hood_list .image { width: 100%; height: 70px; margin-bottom: 0; display: inline-block; }
#hoodPage .hood_list li h3 { font-size: 10px; text-align: center; }
#hoodPage .hood_list li.current_hood_slide .image {  opacity: 0.65; border: 2px solid #b38a1a; box-sizing: border-box; }

.page_alexandria .outer { background-image: url(../img/hoods/Alexandria_lg.jpg); }
.page_arlington .outer { background-image: url(../img/hoods/Arlington_lg.jpg); }
.page_ashburn .outer { background-image: url(../img/hoods/Ashburn_lg.jpg); }
.page_burke .outer { background-image: url(../img/hoods/Burke_lg.jpg); }
.page_fairfax .outer { background-image: url(../img/hoods/Fairfax_lg.jpg); }
.page_fallschurch .outer { background-image: url(../img/hoods/FallsChurch_lg.jpg); }
.page_leesburg .outer { background-image: url(../img/hoods/Leesburg_lg.jpg); }
.page_oakton .outer { background-image: url(../img/hoods/Oakton_lg.jpg); }
.page_reston .outer { background-image: url(../img/hoods/Reston_lg.jpg); }
.page_mclean .outer { background-image: url(../img/hoods/McLean_lg.jpg); }
.page_springfield .outer { background-image: url(../img/hoods/Springfield_lg.jpg); }
.page_vienna .outer { background-image: url(../img/hoods/Vienna_lg.jpg); }

@media (hover: hover) and (pointer: fine) {
  .btn.primary:hover { background-color: #ffffff; color: #b38a1a; border: 1px solid #b38a1a; }
  .btn.secondary:hover { background-color:#ffffff; color: #05386B; border: 1px solid #05386B; }
  #indexPage #hero .btn:hover { background-color: #ffffff; border: 1px solid #05386B; color:#05386B; }

  .main a:hover, #globalFooter a:hover { text-decoration: underline; }

  #indexPage #globalHeader:hover, body:not(#indexPage) #globalHeader .container:hover {
    background-color: rgba(255, 255, 255, 0.85);
  }

  #globalHeader nav.desktop .contact a:hover { text-decoration: underline; }

  .hoods li:hover .hood_price { position: absolute; bottom: 0px; }
  .hoods li:hover .hood_detail { 
    position: relative; 
    -webkit-animation: slide-up-appear 0.35s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
    animation: slide-up-appear 0.35s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
    background: rgba(255,255,255,0.85);
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.75) 40%, rgba(255,255,255,0.85) 100%);
  }
  
  .hoods li:hover .hood_detail div { width: 100%; margin-bottom: 5px; }
  .hoods li:hover .hood_detail em { font-style: normal; font-weight: 500; margin-right: 10px; display: block; color: #323949; }
  .hoods li:hover .hood_detail span { color: #7f2982; font-weight: 900; }

  .listing-slides:hover .slick-arrow { visibility: visible; }
}

@media (min-width: 360px) {
  .hoods ul li { width: 48%; }
}

@media (max-width: 699px) {
  .mobile { display: block; }
  .quote .byline { display: block; margin-top: 10px; }

  #indexPage .wrapper .highlight_mobile { background-color: #f9f6ed; }
}

@media (min-width: 600px) {
  form div.form_contact_type .col { flex-flow: nowrap; }
  form div.form_contact_type label { width: auto; }
}

@media (min-width: 700px) {
  .mobile { display: none; }
  .desktop { display: block; }

  .main { padding-top: 70px; }
  .wrapper .container {
    padding-left: 35px;
    padding-right: 35px;
  }

  .page_header { padding: 25px 25px 20px; }
  .page_header h1 { font-size: 1.75rem; font-weight: 600; }

  .quote p { font-size: 1.5rem; line-height: 1.35em; }
  .quote { padding-right: 200px; }
  .quote .byline { display: block; font-size: 100%; white-space: normal; }

  /************** HOME ***********/
  #indexPage #hero .slick-arrow { z-index: 5; width: 30px; }
  #indexPage #hero .slick-arrow:before { font-size: 30px; display: none; }
  #indexPage #hero:hover .slick-arrow:before { display: block; }
  #indexPage #hero .slick-prev { left: 15px; }
  #indexPage #hero .slick-next { right: 15px; }
  #indexPage .quotes .slick-prev:before, #indexPage .quotes .slick-next:before { font-size: 30px; color: #b38a1a; }
  #indexPage .wrapper .highlight_desktop { background-color: #f9f6ed; }

  #shortBio { line-height: 1.75rem; font-size: 1.25rem; }
  #shortBio .image { margin-right: 40px; }

  #indexPage section header h1 { padding-bottom: 15px; }
  .hoods ul li.empty { display: block; }
  .hoods ul li { width: 31.5%; }
  .hoods .image { height: 200px; }

  /**************** BIO PAGE *************/
  #bio h4 { font-size: 1.15rem; }
  #bio .quotes .quote .byline { text-align: right; width: 190px; position: absolute; right: 0; bottom: 0; }
  #bio .quote .quote-rel { display: block; margin-top: 5px; }

  /************** CONTACT ***********/
  #contactMe .desc { font-size: 1.25rem; margin-bottom: 30px; }
}

@media (max-width: 899px) {
  .desktop-lg { display: none; }
  .desktop-sm { display: block; }
  .full { width: 95%; max-width: 400px; box-sizing: border-box; margin: 0 auto; }
}

@media (min-width: 900px) {
  .desktop-lg { display: block; }
  .desktop-sm { display: none; }

  #indexPage .wrapper > section { padding: 40px 0; }
  #indexPage #contactMe .container { position: relative; }
  #indexPage #contactMe .container:after { position: absolute; top: 0; right: 0; content: ''; width: calc(100% - 750px); height: 100%; background: url(../img/chat.jpg) no-repeat -150px 0; background-size: cover; }

  .listing-container { display: flex; }
  .listing-slide-container { width: 60%; }
  .listing-detail { position: relative; width: 40%; padding-left: 20px; box-sizing: border-box; }
  .listing-detail table { margin-bottom: 30px; }
  .listing-detail table + a { width: 100%; max-width: 300px; margin: 0 auto; }
}

@media (max-width: 1000px) {
  #shortBio .image { float: left; }
}

@media (min-width: 1001px) {
  #shortBio .image { min-width: 250px; min-height: 250px; }
  .short-bio-detail { display: flex; align-items: center; }
}


/******** MODAL ******/
#indexPage #overlay, #indexPage .modal, #contactPage #contactModal .modal-close { display: none; }
#indexPage .modal-close { cursor: pointer; font-size: 36px; position: absolute; right: 20px; top: 0; }
#indexPage #overlay { position: fixed; z-index: 900; top: 0; bottom: 0; right: 0; left: 0; background-color: rgba(0,0,0, 0.65); }
#indexPage .modal { position: fixed; z-index: 901; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; max-width: 600px; margin: 0 auto; background: #ffffff; }
#indexPage .modal form { padding: 40px 20px; }