
    /* Root variables aligned with the main theme */
    :root {
        --brand-green-dark: #1e4620;
        --brand-green-accent: #2a9d8f;
        --brand-green-mid: #81c784;
        --brand-green-light: #e8f5e9;
        --text-on-dark: #FFFFFF;
        --glow-color: rgba(129, 199, 132, 0.5);
        --animation-duration: 0.4s;
    }

    /* This body style is for demonstration purposes on a standalone page.  
       When integrated, the main page's body style will apply. */
    body {
        background-color: #f0f2f5; /* Changed to a light grey to better showcase the white footer */
    }

    .footer-sleek-terra {
        font-family: 'Manrope', sans-serif;
        background-color: #FFFFFF; 
        color: var(--brand-green-dark); 
        padding: 1.5rem 1.5rem 1.5rem;
        position: relative;
        overflow: hidden;
        text-align: center;
        border-top: 2px solid var(--brand-green-dark); /* ADDED: Top border */
    }
    
    /* REMOVED: Glowing orb effects which are not suitable for a light background */

    .footer-decorative-element {
        position: absolute;
        top: -20%;
        left: -25%;
        width: 50%;
        height: 140%;
        z-index: 0;
        opacity: 0.08; 
        transform: rotate(-20deg);
        pointer-events: none;
    }

    .footer-container {
        max-width: 1200px;
        margin: 0 auto;
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .footer-logo {
        display: inline-flex;
        align-items: center;
        gap: 0.75rem;
        font-family: 'Playfair Display', serif;
        font-size: 2.75rem;
        font-weight: 700;
        color: var(--brand-green-dark); 
        text-decoration: none;
        margin-bottom: 1.25rem;
        transition: text-shadow var(--animation-duration) ease;
    }
    
    .footer-logo:hover {
        text-shadow: 0 0 15px rgba(30, 70, 32, 0.2); 
    }

    .footer-logo i {
        color: var(--brand-green-accent);
    }
    
    .footer-separator {
        width: 100%;
        max-width: 700px;
        border: 0;
        height: 1px;
        background-image: linear-gradient(to right, rgba(30, 70, 32, 0), rgba(30, 70, 32, 0.2), rgba(30, 70, 32, 0));
        margin: 0 auto 1.25rem auto;
    }

    .footer-contact-info {
        width: 100%;
        max-width: 600px;
        margin-bottom: 1.25rem;
    }
    
    .footer-contact-info p, 
    .footer-contact-info strong {
        margin: 0.25rem 0;
        font-size: 1rem;
        line-height: 1.6;
        color: var(--brand-green-dark); 
    }

    .footer-nav {
        margin-bottom: 1.25rem;
        line-height: 1.8;
        white-space: nowrap;
    }

    .footer-nav a {
        color: var(--brand-green-dark); 
        text-decoration: none;
        margin: 0 0.5rem;
        font-weight: 500;
        transition: color var(--animation-duration), transform var(--animation-duration) ease;
        font-size: 1.15rem;
        display: inline-block;
        position: relative; 
        padding-bottom: 5px; 
    }

    /* ADDED: Underline effect */
    .footer-nav a::after {
      content: '';
      position: absolute;
      width: 100%;
      transform: scaleX(0);
      height: 2px;
      bottom: 0;
      left: 0;
      background-color: var(--brand-green-accent);
      transform-origin: center;
      transition: transform 0.3s ease-out;
    }

    .footer-nav a:hover {
        color: var(--brand-green-accent);
        transform: translateY(-2px);
    }

    /* ADDED: Trigger for underline effect on hover */
    .footer-nav a:hover::after {
        transform: scaleX(1);
    }

    .footer-nav .separator {
        color: rgba(30, 70, 32, 0.5); 
    }

    .footer-bottom {
        width: 100%;
        padding-top: 1.25rem;
        border-top: 1px solid rgba(30, 70, 32, 0.15); 
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 1.5rem;
    }

    .footer-socials {
        display: flex;
        gap: 1rem;
    }

    .footer-socials a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 1px solid rgba(30, 70, 32, 0.2); 
        color: var(--brand-green-dark); 
        background-color: transparent;
        transition: all var(--animation-duration) ease;
    }

    .footer-socials a:hover {
        background-color: var(--brand-green-accent);
        border-color: var(--brand-green-accent);
        color: #fff;
        transform: translateY(-3px) scale(1.1);
        box-shadow: 0 8px 15px rgba(42, 157, 143, 0.2);
    }

    .footer-copyright {
        font-size: 0.9rem;
        color: var(--brand-green-dark); 
    }
    
    @media (max-width: 960px) {
        .footer-nav {
            white-space: normal;
        }
    }

    @media (max-width: 768px) {
        .footer-sleek-terra {
            padding: 3rem 1.5rem 1.5rem;
        }
        .footer-logo {
            font-size: 2.25rem;
        }
        .footer-decorative-element {
            left: -50%;
            width: 100%;
        }
    }
  