/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/

h1 {
    font-size: 50px;
}
h2 {
    font-size: 50px;
    line-height: 50px;
    padding: 30px 0px;
}
h3 {
    padding: 30px 0px;
}
h4 {
    font-size: 28px;
    padding: 30px 0px;
}
#brx-header.scrolling .logo-container a.black-scrolling {
	max-width: 100px !important;
}
:root {
    --primary-color: #005d7d;
    --secondary-color: #670038;
    --tertiary-color: #7b4b48;
    --quaternary-color: #00a896;
    --quinary-color: #04142c;
    --senary-color: #ffffff;
    --septenary-color: #000000;
    --octonary-color: #ffffff;
    --nonary-color: #000000;
    --denary-color: #ffffff;
    --color-1: #005d7d;

    --mega-menu-toggle-color: #ffffff;
}
/**
Cabernet - #670038 - 103,0,56
Cobalt - #005d7d - 0,93,125
Turquoise - #00a896 - 0,168,150
Rust - #7b4b48 - 123,75,72
 */
.cabernet-background {
    background-color: #670038;
}
.cobalt-background {
    background-color: #005d7d;
}
.cabernet-text {
    color: #670038;
}
.cobalt-text,
.cobalt-text-hover:hover {
    color: #005d7d;
}
.cobalt-background {
	background-color: #005d7d;
}
.cobalt-border,
.cobalt-border-hover:hover {
	border: 2px solid #005d7d;
}
.turquoise-background {
    background-color: #00a896;
}
.turquoise-text {
    color: #00a896;
}
.white-text {
    color: #ffffff;
}
.black-text {
    color: #000000;
}
.dark-blue-text {
    color: #04142c;
}
.white-border-button {
    border-radius: 6px;
    border: 2px solid #ffffff;
    color: #ffffff;
    font-size: 20px;
    font-weight: 500;
    padding: 6px 20px;
}
.white-border-button:hover {
    background-color: rgba(255,255,255,0.3);
}
.white-background-hover:hover {
	background-color: #ffffff;
}
.dark-blue-border {
    border-radius: 6px;
    border: 2px solid #04142c;
    color: #04142c;
    font-size: 20px;
    font-weight: 500;
    padding: 6px 20px;
}
.dark-blue-border:hover {
    color: #ffffff;
    background-color: rgba(4,20,44,0.8)
}
.black-border {
    border-radius: 6px;
    border: 2px solid #000000;
    color: #000000;
    font-size: 20px;
    font-weight: 500;
    padding: 6px 20px;
}
.black-background {
	background-color: #000000;
}
.submit-button-wrapper > button,
.brxe-button {
	border-radius: 6px;
	font-size: 20px;
	font-weight: 500;
	padding: 6px 20px;
	border: 2px solid #ffffff;
}
.submit-button-wrapper > button {
    border: 2px solid var(--secondary-color);
    color: #ffffff;
    background-color: var(--secondary-color);
}
.submit-button-wrapper > button:hover {
    background-color: rgba(255,255,255);
    color: var(--secondary-color);
}
.area-title {

}
#brx-content section:first-of-type{
    margin-top: 0px;
    width: 100%;
}
#brx-content section:last-of-type {
    margin-bottom: 0px;
    width: 100%;
}

#brx-content section {
    margin-top: 30px;
    margin-bottom: 30px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
#brx-content section.contact-section {
    margin-top: 60px;
    margin-bottom: 60px;
}
.property-overview-container .property-list-price {
    padding: 10px 0px;
}
.property-overview-container .group-property-details,
.property-overview-container .property-address {
    font-size: 14px;
}
.property-overview-container .property-address {
    color: #999999;
}

@media (max-width: 401px) {
	h2.contact-section {
		font-size: 22px !important;
		line-height: 1.3em !important;
	}
	footer .footer-logo {
		max-width: 140px !important;
	}
	footer #logo-media-container > div {
		width: 50%;
	}
	.page-homepage main section > div:nth-child(2) {
		margin-top: 30px;
	}
	.hero-title, .contact-section-title {
		margin-left: 40px;
		margin-right: 40px;
	}
}
.equal-height {
    display: flex;
    align-items: stretch;
}
.equal-height > .brxe-block {
    flex: 1;
}

@media (max-width: 768px) {
    .full-screen-menu-section .brxe-container {
        grid-template-columns: 1fr; /* single column on smaller screens */
    }
    .full-screen-menu-container {
        justify-content: space-between;
    }
    .full-screen-menu-container > div {
        width: 60px;
    }
    .brx-popup-content .full-screen-menu-section a {
        font-size: 1.0em;
        margin-bottom:8px;
    }
    .full-screen-menu-section > div:nth-child(2){
        margin-top:60px;
    }
    footer {
        font-size: 10px;
    }
    footer #logo-media-container {
        flex-direction: column;
        row-gap: 30px;
    }
    .contact-section .brxe-block {
        text-align: center;
        align-items: center;
    }
}


/**
Cabernet - #670038 - 103,0,56
Cobalt - #005d7d - 0,93,125
Turquoise - #00a896 - 0,168,150
Rust - #7b4b48 - 123,75,72
 */

/* Overlay rectangle growing from center */
.overlay-hover::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.3);
    /*background: rgba(103,0,56,0.3);   !* Rust color overlay *!*/
    /*background: rgba(46,100,107,0.3);   !* Turquoise color overlay *!*/
    z-index: 0;
    pointer-events: none;
    border-radius: inherit;
    transition: all 350ms ease;
}

/* Slide Up */
.overlay-hover.slide-up::before {
    transform: translateY(100%);
}
.overlay-hover.slide-up:hover::before,
.overlay-hover.slide-up:focus-within::before {
    transform: translateY(0);
}

/* Slide Down */
.overlay-hover.slide-down::before {
    transform: translateY(-100%);
}
.overlay-hover.slide-down:hover::before,
.overlay-hover.slide-down:focus-within::before {
    transform: translateY(0);
}

/* Slide Left */
.overlay-hover.slide-left::before {
    transform: translateX(100%);
}
.overlay-hover.slide-left:hover::before,
.overlay-hover.slide-left:focus-within::before {
    transform: translateX(0);
}

/* Slide Right */
.overlay-hover.slide-right::before {
    transform: translateX(-100%);
}
.overlay-hover.slide-right:hover::before,
.overlay-hover.slide-right:focus-within::before {
    transform: translateX(0);
}

/* Grow From Center */
.overlay-hover.grow-center::before {
    clip-path: inset(50% 50% 50% 50%);
}
.overlay-hover.grow-center:hover::before,
.overlay-hover.grow-center:focus-within::before {
    clip-path: inset(0 0 0 0);
}
section.full-width {
    width: 100% !important;
}
#brx-content section.no-padding {
    padding: 0px;
    margin: 0px;
}
#realestate-contact-container .et_pb_module.member-mls-id- {
    margin-top: 30px;
}
.realestate-page-container input,
.realestate-page-container textarea {
    border: 1px solid #aaa;
    border-radius: 6px;
    padding: 0px 10px;
    width: 100%;
    margin-bottom: 10px;
}
.realestate-page-container input[type=text], .realestate-page-container input[type=email] {
	padding: 0px 10px;
}
.realestate-page-container .select2-selection > span {
line-height: 40px;
}
.full-screen-menu-section {
    color: var(--mega-menu-toggle-color);
    background-color: #005d7d;
    padding: 5% 40px;
}
.full-screen-menu {
    font-size: 1.5em;
}
/* Base button */
.djm-popup-menu-toggle{
    position: relative;
    width: 30px;
    height: 22px;
    border: 0;
    background: none;
    cursor: pointer;
    padding: 0;
}

/* The three bars */
.djm-popup-menu-toggle span,
.djm-popup-menu-toggle span::before,
.djm-popup-menu-toggle span::after{
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background: var(--mega-menu-toggle-color);
    content: "";
    transition: transform .3s ease, top .3s ease, opacity .2s ease, background .3s ease;
}

.djm-popup-menu-toggle span{ top: 50%; transform: translateY(-50%); }
.djm-popup-menu-toggle span::before{ top: -8px; }
.djm-popup-menu-toggle span::after{  top:  8px; }

/* When ANY popup is visible (no .hide), morph to X */
body:has(.brx-popup:not(.hide)) .djm-popup-menu-toggle span{
    background: transparent;            /* hide middle bar */
}

body:has(.brx-popup:not(.hide)) .djm-popup-menu-toggle span::before{
    top: 0;
    transform: rotate(45deg);
}

body:has(.brx-popup:not(.hide)) .djm-popup-menu-toggle span::after{
    top: 0;
    transform: rotate(-45deg);
}

/* Optional: increase hit area on mobile */
.djm-popup-menu-toggle{ touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
/* Add transition delay only when popup is open */
body:has(.brx-popup:not(.hide)) .djm-popup-menu-toggle span::before,
body:has(.brx-popup:not(.hide)) .djm-popup-menu-toggle span::after {
    transition-delay: 0.3s;
}

body:has(.brx-popup:not(.hide)) .djm-popup-menu-toggle span {
    transition-delay: 0.3s;
}
.full-screen-menu-container {
    text-align: right;
    width: 100%;
    position:absolute;
    padding: 60px 30px;
    top:0px;
}
.full-screen-menu-container .white-static {
    max-width: 130px;
}
.full-screen-menu-section h3 {
    padding-bottom: 4px;
    margin-bottom: 5px;
    opacity: .7;
    border-bottom: 1px solid;
    font-size: 12px;
}
.menu-container .ti-menu {
    color: #ffffff;
    font-size: 40px !important;
}
.brx-sticky.scrolling .menu-container .ti-menu {
    color: #000000;
}
.djm-popup-menu-toggle:focus {
    outline: none; /* reset */
}
.djm-popup-menu-toggle:focus-visible {
    outline: 2px solid var(--mega-menu-toggle-color); /* or whatever accent you want */
    outline-offset: 4px;
}
/* Apply to your nav links */
.full-screen-menu-section a {
    position: relative;
    color: var(--mega-menu-toggle-color); /* keep your white text */
    text-decoration: none;
    line-height: 1.7em;
    font-size: 22px;
}
.full-screen-menu-section a:hover {
    color: var(--secondary-color);

}

/* underline effect */
.full-screen-menu-section a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -2px; /* adjust distance from text */
    height: 1px;
    width: 0;
    background-color: var(--secondary-color);
    transform: translateX(-50%);
    transition: width 0.3s ease;
}

.full-screen-menu-section a:hover::after,
.full-screen-menu-section a:focus::after {
    width: 100%;
}
.full-screen-menu-section .brxe-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* 2 equal columns */
    gap: 40px; /* adjust spacing between columns/rows */
}

/* Optional: center the grid content */
.full-screen-menu-section {
    display: flex;
    justify-content: center;
}

.full-screen-menu-section .brxe-block {
    min-width: 0; /* prevents overflow */
}


/* Utility class for fade + slide up */
.djm-fade-up {
    opacity: 0;
    transform: translateY(30px); /* start 30px lower */
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.djm-fade-up.in-view {
    opacity: 1;
    transform: translateY(0);
}
.disclaimer {
	font-size: 0.8em;
}

.realestate-search-box-container-container {
	width: 100%;
	justify-content: center;
	display: flex;
}
.realestate-search-box-container-container .dropdown-filter {
	height: 53px;
}
.realestate-page-container .dropbtn-filter.inverse {
	background-color: #005d7d;	
}
.realestate-filter-done,
.realestate-radio-container > label.active {
	background-color: rgba(0,93, 125, 0.9);
}
.realestate-search-box-container-container #locationSearch {
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
}