.elementor-140 .elementor-element.elementor-element-bdd28de{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-140 .elementor-element.elementor-element-bdd28de:not(.elementor-motion-effects-element-type-background), .elementor-140 .elementor-element.elementor-element-bdd28de > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-140 .elementor-element.elementor-element-632f4f2 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-140 .elementor-element.elementor-element-02f13cb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-6c3916c *//* --- Base Footer Styling --- */
.advanced-footer {
    background-color: #000000; 
    color: #f0f0f0; 
    padding: 40px 20px 0; 
    font-family: Arial, sans-serif; 
    width: 100%;
    box-sizing: border-box;
}

/* --- Content Layout (Flexbox) --- */
.footer-content {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between; 
    flex-wrap: wrap; 
    padding-bottom: 30px;
    border-bottom: 1px solid #333; 
}

.footer-section {
    padding: 10px 20px;
    margin-bottom: 20px;
    min-width: 250px; 
    flex-grow: 1; 
}

/* --- Typography - Using Playfair Display --- */
.footer-heading, .brand-info .brand-tagline {
    font-family: 'Playfair Display', serif;
    color: #A0C800; /* Brand green */
    margin-bottom: 15px;
}

.footer-heading {
    font-size: 1.5em;
    font-weight: 700;
}

/* --- Brand Section Styling --- */
.brand-info {
    text-align: center;
    min-width: 100%; 
}

.footer-logo {
    width: 100px; 
    height: auto;
    margin-bottom: 10px;
    border-radius: 50%; 
    border: 2px solid #333; 
}

.brand-tagline {
    font-size: 1.1em;
    font-style: italic;
    color: #f0f0f0;
    margin-top: -10px;
}

/* --- Contact Info Styling (UPDATED SPACING) --- */
.contact-info .address {
    /* The address is a link, but we'll target it by its class for spacing */
    margin-bottom: 15px; /* Added margin below address */
}

.contact-info .phone-email {
    margin-top: 15px; /* Added margin above phone/email group */
}

.contact-link {
    display: block; 
    text-decoration: none;
    color: #f0f0f0;
    margin-top: 5px;
    transition: color 0.3s;
    line-height: 1.6; 
}

.contact-link.address {
    line-height: 1.4; /* Slightly tighter line height for the multi-line address */
}

.contact-link:hover {
    color: #A0C800; /* Brand green hover effect */
}

/* --- Navigation Links Styling --- */
.legal-nav .nav-links {
    list-style: none;
    padding: 0;
}

.legal-nav .nav-links li a {
    text-decoration: none;
    color: #b0b0b0;
    line-height: 2;
    transition: color 0.3s;
}

.legal-nav .nav-links li a:hover {
    color: #fff;
    text-decoration: underline;
}

/* --- Social Media Styling --- */
.social-links {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 10px; 
}

.social-icon {
    display: inline-flex; 
    align-items: center;
    justify-content: center;
    width: 40px; 
    height: 40px; 
    color: #fff;
    font-size: 1.2em; 
    border: 1px solid #444;
    border-radius: 50%;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s;
}

.social-icon:hover {
    background-color: #A0C800; 
    color: #000000; 
    border-color: #A0C800;
}

/* --- Copyright Bar --- */
.copyright-bar {
    text-align: center;
    padding: 15px 0;
}

.copyright-text {
    font-size: 0.85em;
    color: #888;
    margin: 0;
}

/* --- Mobile Responsiveness --- */
@media (max-width: 768px) {
    .footer-content {
        flex-direction: column;
        align-items: center; 
        text-align: center;
    }

    .footer-section {
        min-width: 100%; 
        border-bottom: 1px dashed #333; 
    }

    .footer-section:last-child {
        border-bottom: none;
    }

    .legal-nav .nav-links {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0 15px; 
    }

    .legal-nav .nav-links li {
        margin: 5px 0;
    }
}/* End custom CSS */