* {
    box-sizing: border-box !important;
    min-height: unset !important;
    min-width: unset !important;
    outline: unset !important;
    text-shadow: unset !important;
    float: none !important;
}

*:focus-visible {
    outline: unset !important;
}

html {
	width: 100% !important;
	background: #003366 !important;
	padding: 10px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

@media all and (max-width: 768px) {
	html {
		background: white !important;
		padding: 0 !important;
	}
}

body {
	width: 100% !important;
	margin: 0 !important;
	background: none !important;
}

@media all and (max-width: 768px) {
	body {
		width: 100% !important;
	}
}

.mp-background-panel-1 {
    background: #a9afb0 !important;
	border-radius: 15px !important;
	padding: 10px !important;
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
}

@media all and (max-width: 768px) {
    .mp-background-panel-1 {
        padding: 0 !important;
		background: white !important;
    }
}

.mp-background-panel-2 {
    width: 100% !important;
	display: flex !important;
	flex-direction: row !important;
	gap: 10px !important;
	overflow: visible !important;
}

html:has(.mailer-form-background) {
  height: 100% !important;
}

body:has(.mailer-form-background) {
  height: 100% !important;
}

.wp-site-blocks:has(.mailer-form-background) {
  height: 100% !important;
  padding: 0 !important;
}

iframe[name="widgetCta"] {
	display: none !important;
}

header nav {
    width: 100% !important;
    height: 60px !important;
    padding: 10px !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    background: #003366 !important;
    border: 1px solid #0054e6 !important;
    border-radius: 15px !important;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.25) !important;
}

@media all and (max-width: 768px) {
	header nav {
		border-radius: 0 !important;
		box-shadow: none !important;
		margin-bottom: 0 !important;
		padding: 0 !important;
		height: 40px !important;
	}
}

header nav a {
    height: 40px !important;
    padding: 10px !important;
    border-radius: 15px !important;
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
    color: white !important;
}

header nav a:hover {
    background-color: #0054e6 !important;
}

header .header-container .header-key-logo {
    width: 100% !important;
    padding: 10px 10% !important;
    background: white !important;
    margin-bottom: 10px !important;
    border: 1px solid #003366 !important;
    border-radius: 15px !important;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.25) !important;
}

@media all and (max-width: 768px) {
	header .header-container .header-key-logo {
		border-radius: 0 !important;
		box-shadow: none !important;
		margin-bottom: 0 !important;
		padding: 0 !important;
	}
}

header img {
    width: 100% !important;
}

footer {
    background: white !important;
    padding: 10px !important;
    border: 1px solid #003366 !important;
    border-radius: 15px !important;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.25) !important;
}

@media all and (max-width: 768px) {
	footer {
		border-radius: 0 !important;
		box-shadow: none !important;
	}
}

footer p {
    text-align: center !important;
}

footer .footer-container {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
}

footer nav {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-items: flex-end !important;
    padding: 10px !important;
}

footer nav a {
    padding: 10px !important;
    border-radius: 15px !important;
    text-decoration: none !important;
    color: #003366 !important;
}

footer nav a:hover {
    background: #003366 !important;
    color: white !important;
}

footer > .footer-container > a {
    width: 25% !important;
}

footer img {
    width: 100% !important;
}

@media all and (max-width: 768px) {
	footer > .footer-container > a {
		width: 50% !important;
	}
}

.page-header {
	padding: 20px !important;
	background: #003366 !important;
    border-radius: 15px !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25) !important;
	border: 1px solid #0054e6 !important;
}

@media (max-width: 768px) {
    .page-header {
        box-shadow: none !important;
		border-radius: 0 !important;
    }
}

.main-page-container {
    width: 60% !important;
    margin: 10px 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

@media (max-width: 768px) {
    .main-page-container {
        width: 100% !important;
        margin: 0 !important;
    }
}

.main-page-content-container,
.entry-content {
    width: 100% !important;
}

.entry-content {
    display: grid !important;
    gap: 10px !important;
}

@media (max-width: 768px) {
    .entry-content {
        gap: 0 !important;
    }
}

[class*="custom-block"] {
    margin: 0 !important;
}

.widget-container {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 10px !important;
    text-align: center !important;
    background-color: #ffffff !important;
    border: 1px solid #003366 !important;
    border-radius: 15px !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25) !important;
}

@media (max-width: 768px) {
    .widget-container {
        margin: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
}

.widget-container-body {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

.main-page-contact-container {
    display: none !important;
    width: 100% !important;
    height: auto !important;
    padding: 10px !important;
    margin-top: 10px !important;
    background-color: #ffffff !important;
    border: 1px solid #003366 !important;
    border-radius: 15px !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25) !important;
    grid-template-columns: repeat(5, 1fr) !important;
    grid-auto-rows: auto !important;
    gap: 10px !important;
}

@media (max-width: 768px) {
    .main-page-contact-container {
        display: flex !important;
        flex-direction: column !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
}

.main-page-contact-container-profile,
.main-page-contact-container-form {
    height: 100% !important;
    width: 100% !important;
    max-width: unset !important;
    display: flex !important;
    justify-content: center !important;
}

.main-page-contact-container-profile {
    grid-column: span 1 !important;
}

.main-page-container .main-page-contact-container-profile {
    width: 25% !important;
}

@media (max-width: 768px) {
    .main-page-container .main-page-contact-container-profile {
        width: 100% !important;
    }
}

.main-page-contact-container-form {
    grid-column: span 4 !important;
}

.main-page-container .main-page-contact-container-form {
    width: 50% !important;
}

@media (max-width: 768px) {
    .main-page-container .main-page-contact-container-form {
        width: 100% !important;
    }
}

.main-page-contact-container-key-realty {
    width: 25% !important;
}

@media (max-width: 768px) {
    .main-page-contact-container-key-realty {
        width: 100% !important;
    }
}

.hidden {
    display: none !important;
}

[class*="custom-block-"] {
    width: 100% !important;
}

[class*="custom-block-page-"] {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    text-align: center !important;
    background-color: #ffffff !important;
    border: 1px solid #003366 !important;
    border-radius: 15px !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.25) !important;
}

@media (max-width: 768px) {
    [class*="custom-block-page-"] {
        margin: 0 !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
}

.tabs {
    display: flex !important;
    justify-content: center !important;
	cursor: pointer !important;
	border-radius: 15px !important;
	overflow: hidden !important;
	height: 60px !important;
	border-top: 1px solid #003366 !important;
	border-bottom: 1px solid #003366 !important;
}

@media all and (max-width: 768px) {
	.tabs {
		border-radius: 0 !important;
		box-shadow: none !important;
		height: 40px !important;
		border-right: 1px solid #003366 !important;
		border-left: 1px solid #003366 !important;
	}
}

.tabs > *:not(:last-child) {
    border-right: 1px solid #003366 !important;
}

.tab {
    padding: 10px !important;
    background-color: #A9AFB0 !important;
    cursor: pointer !important;
	display: flex !important;
    justify-content: center !important;
	text-align: center !important;
	width: 100% !important;
	align-items: center !important;
}

@media all and (max-width: 768px) {
	.tab {
		padding: 5px !important;
	}
}

.tab.active {
    background-color: white !important;
	display: flex !important;
    justify-content: center !important;
	text-align: center !important;
	align-items: center !important;
	width: 100% !important;
}

.side-bar-right,
.side-bar-left {
    width: 20% !important;
    overflow: visible !important;
	border-radius: 15px !important;
	margin-top: 10px !important;
	margin-bottom: 10px !important;
	padding: 0 !important;
	position: relative !important;
}

@media all and (max-width: 768px) {
    .side-bar-right,
    .side-bar-left {
        display: none !important;
    }
}

.side-bar-right .sticky-container-parent {
    height: 100% !important;
    width: 100% !important;
    transform: none !important;
    overflow: visible !important;
    border-radius: 15px !important;
	position: relative !important;
}

.side-bar-right .sticky-container {
    width: 100% !important;
    position: sticky !important;
    top: .5vh !important;
    display: flex !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    border-radius: 15px !important;
    overflow: hidden !important;
	height: 99vh !important;
	border: 1px solid #003366 !important;
	background: white !important;
	box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.25) !important;
	justify-content: space-between !important;
}

.side-bar-left .sticky-container-parent {
    height: 100% !important;
    width: 100% !important;
    transform: none !important;
    overflow: visible !important;
    border-radius: 15px !important;
	position: relative !important;
}

.side-bar-left .sticky-container {
    width: 100% !important;
    position: sticky !important;
    top: .5vh !important;
    display: flex !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    border-radius: 15px !important;
    overflow: hidden !important;
	height: 99vh !important;
	border: 1px solid #003366 !important;
	background: white !important;
	box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.25) !important;
	justify-content: space-between !important;
}

iframe {
    overflow: hidden !important;
	border: none !important;
	border-radius: 5px !important;
	width: 100% !important;
}

form > * {
	gap: 0 !important;
}

label {
    display: block !important;
    margin: 0 !important;
}

select,
input {
	margin: 0 !important;
    width: 100% !important;
    padding: 10px !important;
    margin-bottom: 10px !important;
    border: 1px solid #ccc !important;
    border-radius: 5px !important;
    height: 40px !important;
}

textarea {
    display: block !important;
    box-sizing: border-box !important;
    border-width: 1px !important;
    border-style: solid !important;
    border-color: #ccc !important;
    padding: 10px !important;
    white-space: pre-wrap !important;
    border-radius: 5px !important;
    resize: none !important;
    width: 100% !important;
    height: 80px !important;
    box-shadow: none !important;
    transition: none !important;
}

/* Global Styles */
@font-face {
    font-family: 'Source Sans Pro';
    src: url('https://realestateadvisorllc.com/fonts/SourceSansPro-Regular.ttf');
    font-weight: normal;
    font-style: normal;
}

html {
    line-height: 1 !important;
    letter-spacing: normal !important;
    font-family: 'Source Sans Pro', sans-serif !important;
}

body, h1, h2, h3, h4, h5, h6, p, span, a, li, div, button, label {
    font-family: inherit !important;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    margin: 0 !important;
    text-align: center !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    color: #003366 !important;
}

h1, h2 {
    font-size: clamp(12px, 2vw, 24px) !important;
    margin-bottom: 10px !important;
}

h3 {
    font-size: clamp(12px, 2vw, 20px) !important;
}

h4 {
    font-size: clamp(12px, 2vw, 16px) !important;
}

h5 {
    font-size: clamp(10px, 2vw, 12px) !important;
}

h6 {
    font-size: clamp(8px, 2vw, 10px) !important;
}

/* Responsive Typography */
@media (max-width: 768px) {
    h1, h2 {
        font-size: clamp(12px, 5vw, 24px) !important;
    }
    h3 {
        font-size: clamp(12px, 3vw, 20px) !important;
    }
    h4 {
        font-size: clamp(10px, 5vw, 16px) !important;
    }
    h5 {
        font-size: clamp(8px, 5vw, 12px) !important;
    }
    h6 {
        font-size: clamp(6px, 5vw, 10px) !important;
    }
}

/* Labels & Inputs */
label {
    font-size: clamp(12px, 1vw, 24px) !important;
    font-weight: bold !important;
    text-align: left !important;
}

input {
    font-size: clamp(12px, 1vw, 24px) !important;
    text-align: left !important;
}

@media (max-width: 768px) {
    label, input {
        font-size: clamp(12px, 3vw, 24px) !important;
    }
}

p {
	margin: 0 !important;
}

/* Navigation */
header nav a {
    text-transform: uppercase !important;
    color: white !important;
    font-size: clamp(12px, 5vw, 36px) !important;
    font-weight: bold !important;
    text-decoration: none !important;
}

@media all and (max-width: 768px) {
	header nav a {
		font-size: clamp(12px, 3vw, 36px) !important;
	}
}

header nav a:hover {
    text-decoration: underline !important;
}

/* Footer Navigation */
footer nav {
    text-align: right !important;
}

footer nav a {
	text-transform: uppercase !important;
    font-size: clamp(12px, 5vw, 36px) !important;
    font-weight: bold !important;
    color: #003366 !important;
    text-decoration: none !important;
}

@media all and (max-width: 768px) {
	footer nav a {
		font-size: clamp(12px, 3vw, 36px) !important;
	}
}

footer nav a:hover {
    color: white !important;
    text-decoration: underline !important;
}

/* Buttons */
button, .custom-button, a button, input[type="button"], input[type="submit"], input[type="reset"], a.button {
    font-weight: bold !important;
    text-align: center !important;
    color: white !important;
    text-transform: uppercase !important;
    font-size: clamp(12px, 1.5vw, 24px) !important;
}

button:hover, .custom-button:hover, a button:hover, input[type="button"]:hover, input[type="submit"]:hover, input[type="reset"]:hover, a.button:hover {
    text-decoration: underline !important;
}

@media (max-width: 768px) {
    button, .custom-button, a button, input[type="button"], input[type="submit"], input[type="reset"], a.button {
        font-size: clamp(12px, 3vw, 24px) !important;
    }
}

/* Tabs */
.tab, .tab.active {
    color: #003366 !important;
    font-size: clamp(12px, 1vw, 24px) !important;
    font-weight: bold !important;
    text-align: center !important;
    text-transform: uppercase !important;
}

@media (max-width: 768px) {
    .tab, .tab.active {
        font-size: clamp(12px, 3vw, 24px) !important;
    }
}

/* Widgets */
.widget-container li,
.widget-container p {
    margin: 0 0 10px 0 !important;
}

/* Custom Dropdowns */
.custom-dropdown-selected,
.custom-dropdown-item {
    font-size: clamp(12px, 1vw, 24px) !important;
    font-weight: normal !important;
}

@media (max-width: 768px) {
    .custom-dropdown-selected,
    .custom-dropdown-item {
        font-size: clamp(12px, 3vw, 24px) !important;
    }
}

/* Result Styling */
.result {
    font-size: clamp(12px, 1.5vw, 24px) !important;
}

@media (max-width: 768px) {
    .result {
        font-size: clamp(12px, 3vw, 24px) !important;
    }
}

select option {
    font-size: 1px !important;
    padding: 10px !important;
    background-color: #ffffff !important;
    color: #333 !important;
    width: 100% !important;
}

.custom-dropdown {
    width: 100% !important;
    height: 40px !important;
    padding: 10px !important;
    margin: 0 0 10px 0 !important;
    border: 1px solid #ccc !important;
    border-radius: 5px !important;
    font-size: clamp(0px, 1vw, 24px) !important;
    text-align: left !important;
    position: relative !important;
}

@media (max-width: 768px) {
    .custom-dropdown {
        font-size: clamp(0px, 3vw, 24px) !important;
    }
}

.dropdown-selected {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    cursor: pointer !important;
    position: relative !important;
}

.dropdown-options {
    position: absolute !important;
    left: -1px !important;
    width: calc(100% + 2px) !important;
    background: white !important;
    border: 1px solid #ccc !important;
    border-radius: 5px !important;
    display: none !important;
    z-index: 10 !important;
}

.dropdown-option {
    padding: 10px !important;
    text-align: left !important;
    cursor: pointer !important;
    font-size: clamp(0px, 1vw, 24px) !important;
}

@media (max-width: 768px) {
    .dropdown-option {
        font-size: clamp(0px, 3vw, 24px) !important;
    }
}

.dropdown-open {
    display: block !important;
}

.result {
	width: 100% !important;
	margin-top: 10px !important;
	padding: 10px !important;
	background: #f0f0f0 !important;
	border: 1px solid #003366 !important;
	border-radius: 15px !important;
	font-size: clamp(0px, 1.5vw, 24px) !important;
}
	
@media all and (max-width: 768px) {
	.result {
	  font-size: clamp(0px, 3vw, 24px) !important;
	}
}

.custom-button,
a button,
button:not(nav button),
input[type="button"],
input[type="submit"],
input[type="reset"],
a.button {
    padding: 10px !important;
    border: none !important;
    border-radius: 15px !important;
    cursor: pointer !important;
    width: 100% !important;
    height: 40px !important;
    background-color: #003366 !important;
    margin: 0 !important;
    margin-top: 10px !important;
    color: white !important;
    display: flex !important;
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
}

.custom-button:hover,
a button:hover,
button:not(nav button):hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
a.button:hover {
    background-color: #0054e6 !important;
}