/*
Theme Name: Keyholders Pro
Template: hello-elementor
Version: 1.0
*/

:root {
    --color-fischer-red: #ba0c2f;
    --color-tibetan-red: #6A1A33;
    --color-white: #ffffff;
    --color-black: #000000;
    --color-charcoal: #222020;
    --color-gold: #8C6100;
    --color-marshmallow: #F4EFE7;
    --color-status-diamond: #6a1a33;
    --color-status-platinum: #545454;
    --color-status-gold: #8c6100;
    --color-status-silver: #5F6368;
    --color-off-white: #F9F7F4;
}

.keyholder-bg-diamond{
    background-color: var(--color-status-diamond);
}

.keyholder-bg-platinum{
    background-color: var(--color-status-platinum);
}

.keyholder-bg-gold{
    background-color: var(--color-status-gold);
}

.keyholder-bg-silver{
    background-color: var(--color-status-silver);
}

.keyholder-bg-none{
    display: none !important;
}

.keyholder-color-diamond{
    color: var(--color-status-diamond);
}

.keyholder-color-platinum{
    color: var(--color-status-platinum);
}

.keyholder-color-gold{
    color: var(--color-status-gold);
}   

.keyholder-color-silver{
    color: var(--color-status-silver);
}

.color-fischer-red{
    color: var(--color-fischer-red);
}

a.color-fischer-red,
a.color-fischer-red span.caret{
    transition: all 0.3s ease;
}

a.color-fischer-red:hover,
a.color-fischer-red:focus,
a.color-fischer-red:active{
    color: var(--color-tibetan-red);
}

a.color-fischer-red:hover span.caret,
a.color-fischer-red:focus span.caret,
a.color-fischer-red:active span.caret{
    border-left-color: var(--color-tibetan-red);
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6{
    font-family: 'StixTwoText', serif;
}

body p,
body span,
body a,
body li,
body button{
    font-family: 'Proxima Nova', sans-serif;
}

.no-margin-bottom {
    margin-bottom: 0;
    display: block;
}

.margin-bottom-med{
    margin-bottom: 16px;
    display: block;
}

.text-center{ text-align: center; } 
.text-color-black{ color: var(--color-black); }
.brand-link{
    color: var(--color-tibetan-red);
    font-weight: bold;
    transition: all 0.3s ease;
}
.brand-link:hover {
    color: var(--color-gold);
}
.block-width{
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}
button[name="keyholders_realtor_register_submit"],
button.brand-btn{
    background-color: var(--color-marshmallow);
    color: var(--color-tibetan-red);
    border-radius: 36px;
    margin: 0 auto;
    display: block;
    border: none;
    transition: all 0.3s ease;
}

button[name="keyholders_realtor_register_submit"]:hover,
button.brand-btn:not(:disabled):hover,
button[name="keyholders_realtor_register_submit"]:focus,
button.brand-btn:not(:disabled):focus,
button[name="keyholders_realtor_register_submit"]:active,
button.brand-btn:not(:disabled):active{
    background-color: var(--color-tibetan-red);
    border: none;
    color: var(--color-marshmallow);
}

button.brand-btn:disabled{
    background-color: var(--color-marshmallow);
    color: var(--color-tibetan-red);
    border-radius: 36px;
    margin: 0 auto;
    display: block;
    border: none;
    opacity: 0.5;
    cursor: not-allowed;
    transition: none;
}

.keyholders-set-password h2,
.keyholders-login h2 {
    color: var(--color-tibetan-red); 
    text-align: center;
    font-size: 1.25rem;
}

ul.keyholders-password-checklist {
    list-style: none;
    padding: 0;
    margin: 0 0 0 16px;
}

.kp-rule {
    color: #888;
    margin: 0 0 6px;
}

.kp-rule::before {
    content: "✕"; 
    position: inline-block;
    margin-right: 8px;
    color: #c0392b;
    font-weight: bold;
}

.kp-rule.is-valid {
    color: #1a7f37;
    font-weight: 600;
}

.kp-rule.is-valid::before {
    content: "✓";
    color: #1a7f37;
}

#kp-submit:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}


.kd-hero h1 {
    margin: 0;
    color: var(--color-white);
}

.kd-kicker {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 0;
    color: #88877D;
}
.kd-card,
.kd-mini-card {
    background: var(--color-white);
    border-radius: 10px;
    padding: 20px;
}

.kd-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 120px;
    margin-top: 64px;
}

.kd-mini-card h3 {
    margin: 8px 0 0;
    font-size: 1.8rem;
}

.page-id-115 header,
.page-id-115 footer{
    display: none !important;
}