/* Community Level Styles */
/* font accent updates */
:root {
    --accent-color: #63B7BD;
    --menu-desktop-logo-bg: var(--primary-base);
    --menu-hamburger-close-button-color: var(--primary-base-alt);
    
    --menu-font-size: calc(var(--header-base-font-size) * 1);
    
    /* topbar & nav */
    --top-bar-bg: var(--primary-base);
    --navbar-background-color: var(--primary-base);
    --navbar-mobile-logo-max-width: 150px;
    --navbar-logo-max-width: 200px;
    
    /* menu */
    --menu-background-color: var(--background-1-base);
    --menu-text-color: var(--background-1-base-alt);
    
    /* home page */
    --hero-header-font-size-sm: calc(var(--hero-header-base-font-size) * 2.5);
    --neighborhood-text-block-bg: var(--primary-base);
    --neighborhood-btn-bg: var(--primary-base);
    --intro-hpt-impact-font-size: 14px;

    /* gallery */
    --gallery-group-background: transparent;
    
    /* floorplan */
    --fp-sub-nav-text-color: var(--primary-base-alt);
    --fp-footer-info-bg-color: var(--accent-color);
    --fp-hover-underline-animation-color: var(--secondary-base-alt);
    
    /* footer */
    --footer-header-font-family: var(--fonts-header);
    --footer-header-font-size: var(--header-base-font-size);
    
    /* amenities */
    --amenities-title-font-family: var(--fonts-header);
    --amenities-title-font-size: var(--header-base-font-size);
    
    /* contact */
    --contact-info-bg-color: var(--primary-base-alt);
    --contact-info-text-color: var(--secondary-base-alt);
    
    /* neighborhood */
    --neighborhood-btn-text: var(--primary-base-alt);
    --neighborhood-btn-bg-hover: var(--primary-base-alt);
    --neighborhood-impact-title-base-font-size: var(--header-base-font-size);
    --neighborhood-impact-title-font-family: var(--fonts-header);
    --neighborhood-header-font-family: var(--fonts-accent);
    --neighborhood-header-base-font-size: var(--accent-base-font-size);
    
    --neighborhood-map-poi-dot-multicolor-1: #cc3333; /* muted red */
    --neighborhood-map-poi-dot-multicolor-2: #33aa33; /* muted green */
    --neighborhood-map-poi-dot-multicolor-3: #884488; /* muted purple */
    --neighborhood-map-poi-dot-multicolor-4: #cc8400; /* muted orange/golden */
    --neighborhood-map-poi-dot-multicolor-5: #3366cc; /* muted blue */
    --neighborhood-map-poi-dot-multicolor-6: #993355; /* muted magenta/rose */
    
    /* footer */
    --footer-button-bg-hover-color: var(--secondary-base);
    --footer-button-text-hover-color: var(--footer-text-color);
}

@media (max-width: 767px) {
    #intro_text_section .intro-homepage-paragraph-text:nth-of-type(2) {
        display: none; /* customer request to remove 2nd paragraph at mobile */
    }
}

.top-bar {
    border-bottom: 3px solid var(--secondary-base);
}

#hp_intro .hero-overlay-info {
    transform: unset;
}

/* Accent color headers & large text */
.amenities-section-container .column-group .bulletlist li:before {
  color: var(--accent-color);
}

/* Intro text tweaks */
#intro_text_section .foreground-container .hpt-impact-text .impact-divider-line {
    height: 2px; 
    opacity: 0.9; 
}

#main_content #neighborhood_section .neighborhood-impact-title { 
    color: var(--primary-base-alt); 
}

/* Buttons */
.btn,
.button-style-1,
.newsletter_button,
#contact_us_page_container .lightning-form .form-btn {
    font-family: var(--amenities-header-font-family);
    border: 1px solid var(--accent-color);
    background-color: transparent;
    color: var(--primary-base);
    letter-spacing: 1px;
}


.button-style-1:hover { 
    background-color: var(--accent-color); 
    color: var(--primary-base); 
}

#contact_us_page_container .lightning-form .form-btn:hover { 
    background-color: var(--accent-color); 
    color: var(--secondary-base-alt); 
}


/* AMENITY */
body:not(#body_home) header .navbar { 
    background-color: transparent;
    position: relative;
    z-index: 10;
}

body:not(#body_home) header .navbar::after {
    content: '';
    background: var(--primary-base);
    position: absolute;
    inset: 0;
    z-index: -1;
}

/* PETS */
.pet-card-expanded .confined-banner-text {
    text-align: left;
}

.button-style-1-petite { background-color: transparent; }

/* Over-image script face */
#intro_text_section .foreground-container .hpt-impact-text .hpt-impact-line-one,
.accent-banner #accent_banner_headline,
#presentational_headline_1 .over-image-header,
#presentational_headline_2 .over-image-header {
  font-weight: 400;
  font-style: normal;
  text-transform: capitalize;
}

#presentational_headline_1 .over-image-header .meow-script,
#presentational_headline_2 .over-image-header .meow-script {
  text-transform: lowercase;
  font-size: 1.2em;
}

/* Uppercasing */
#intro_text_section .hpt-impact-text .hpt-impact-line,
#neighborhood_section .token-header-three,
.insidepage .page-header,
#fp_page_main_header,
.content-container .neighborhood-text-section h1 {
  text-transform: uppercase;
}

/* Type sizes */
#intro_text_section .hpt-impact-text .hpt-impact-line-one {
  font-size: calc(var(--intro-hpt-impact-font-size) * 1.8);
}

@media (min-width: 768px) {
  #neighborhood_section .token-header-three {
    font-size: calc(var(--neighborhood-header-base-font-size) * 2.3);
  }
}

@media (min-width: 1400px) {
  #intro_text_section .hpt-impact-text .hpt-impact-line-one {
    font-size: calc(var(--intro-hpt-impact-font-size) * 2.9);
  }
}

/* HOME PAGE AMENITIES */
#neighborhood_section .neighborhood-impact-title {
    font-size: calc(var(--neighborhood-impact-title-base-font-size) * 2.34);
}

@media (min-width: 768px) {
    #neighborhood_section .neighborhood-impact-title {
        font-size: calc(var(--neighborhood-impact-title-base-font-size) * 3.4);
    }
}

@media (min-width: 1024px) {
    #neighborhood_section .neighborhood-impact-title {
        font-size: calc(var(--neighborhood-impact-title-base-font-size) * 3.825);
    }
}

@media (min-width: 1600px) {
    #neighborhood_section .neighborhood-impact-title {
        font-size: calc(var(--neighborhood-impact-title-base-font-size) * 4.25);
    }
}

/* INTERIOR PAGES */
.insidepage .page-header {
  font-family: var(--fonts-header);
  font-size: var(--inside-page-header-base-font-size-smdt);
}

/* AMENITIES */
@media only screen and (min-width: 1025px) {
    @supports (display:flex) {
        .amenities-section-container .column-group .column-2 {
            align-items: start;
        }
        
        .amenities-section-container .column-group .column-2 .image-zoom-crop {
            margin-top: 0;
        }
    }
}

/* RESIDENTS */
#residents_app_container .card-style-1 {
  border: 1px solid var(--accent-color);
  box-shadow: none;
}

/* FLOORPLAN */
#body_floorplans #fp_sub_navigation .fp-sub-navigation-wrapper { 
    background-color: var(--secondary-base); 
}

/* NAV / TOP BAR / GALLERY */
.top-bar .left-side-links-container .top-bar-sm li .left-side-link:hover,
.top-bar .top-bar-container #nav_menu_button_desktop:hover { 
    background: var(--primary-hover);
}

#gallery_slideshow { 
    background-color: transparent; 
}

/* GALLERY */
.gallery-page .gallery-type-heading,
.gallery-page .gallery-name { display: none; }

.gallery-page .gallery-group { 
    box-shadow: none !important; 
}

/* NEIGHBORHOOD */
.content-container #category_btn_container .category-btn:hover {
    background: var(--secondary-base);
}

.content-container .poi-group {
    border: 2px solid var(--secondary-base);
}

@media only screen and (min-width: 1200px) {
    .content-container .map-app-wrapper #poi_wrapper {
        margin: 0;
    }
}

@media only screen and (min-width: 1600px) {
    .content-container .neighborhood-text-section {
        top: 0;
        height: 32vw;
    }
}

/* CONTACT */
#contact_desired_bedrooms option,
#appointment_desired_bedrooms option { 
    color: #000 !important; 
}

#contact_us_page_container {
    border: 1px solid #000;
}

.lightning-form .form-group { 
    width: 85%;
}

/* PROMO */
#specials_overlay_backdrop #specials_overlay_wrapper #specials_overlay_right #promo_valid { 
    font-weight: bold; 
}

/* FOOTER */
footer .no-hover-underline a,
footer .no-hover-underline svg { 
    margin-inline: auto; 
}

footer .top-section .spacing,
footer .ace-text { 
    text-align: center; 
}

footer .ace-text { 
    padding: 0.5em 5%; 
    margin-inline: var(--footer-spacing); 
}

@media (max-width: 767px) {
    footer a:not(.no-hover-underline) {
        margin: 0 auto;
    }
    
    footer .social-links {
        justify-content: center;
    }
    
    p.copyright_text {
        text-align: center;
    }
}

/* FP footer text color */
.fp-footer-info p:last-of-type { color: var(--secondary-base-alt); }
