/* ==============================================
   NEWSLETTER BAND + FOOTER — footer-newsletter.css
   Loads site-wide (footer.php renders on every page).
   ============================================== */

/* ---------- Newsletter band ---------- */
#tx-newsletter-band {
    background: linear-gradient(90deg, var(--color-navy, #00406B) 0%, var(--color-primary, #015285) 100%);
    padding: 34px 0;
}

#tx-newsletter-band h3 {
    color:       #fff;
    font-family: 'Oswald', sans-serif;
    font-size:   1.3rem;
    font-weight: 700;
    margin-bottom: 4px;
}

#tx-newsletter-band p {
    color: rgba(255, 255, 255, 0.75);
    font-size: 0.9rem;
    margin: 0;
}

.tx-newsletter-form {
    display: flex;
    gap: 0;
    max-width: 480px;
    margin-left: auto;
}

.tx-newsletter-form input[type="email"] {
    flex: 1 1 auto;
    border: none;
    border-radius: 6px 0 0 6px;
    padding: 13px 16px;
    font-size: 0.9rem;
    color: #333;
}

.tx-newsletter-form input[type="email"]:focus {
    outline: 2px solid var(--color-yellow, #f5a623);
    outline-offset: -2px;
}

.tx-newsletter-form button {
    display:         inline-flex;
    align-items:     center;
    gap:             8px;
    background:      var(--color-yellow, #f5a623);
    color:           var(--color-navy, #00406B);
    border:          none;
    border-radius:   0 6px 6px 0;
    padding:         0 22px;
    font-family:     'Oswald', sans-serif;
    font-weight:     700;
    font-size:       0.85rem;
    text-transform:  uppercase;
    cursor:          pointer;
    transition:      background 0.2s ease;
}

.tx-newsletter-form button:hover { background: #ffb733; }

@media (max-width: 767px) {
    .tx-newsletter-form { margin: 12px 0 0; max-width: 100%; }
}

/* ---------- Footer top row (logo + tagline + social) ---------- */
.tx-footer-top { border-bottom: 1px solid rgba(255, 255, 255, 0.1); }

.tx-footer-logo {
    display:         inline-flex;
    align-items:     center;
    text-decoration: none;
}

.tx-footer-logo img { max-height: 42px; width: auto; }

.tx-footer-logo span {
    font-family: 'Oswald', sans-serif;
    font-size:   1.3rem;
    font-weight: 700;
    color:       #fff;
}

.tx-footer-tagline {
    color:      rgba(255, 255, 255, 0.65);
    font-size:  0.85rem;
    max-width:  460px;
    margin:     10px 0 0;
}

/* ---------- Footer 4-column row ---------- */
#footerContent h3 {
    color:         #fff;
    font-family:   'Oswald', sans-serif;
    font-size:     1rem;
    font-weight:   700;
    margin-bottom: 16px;
}

#footerContent .footer-nav {
    margin: 0;
    padding: 0;
    list-style: none;
}

#footerContent .footer-nav li { margin-bottom: 10px; }

#footerContent .footer-nav a {
    color:           rgba(255, 255, 255, 0.7);
    text-decoration: none;
    font-size:       0.85rem;
    transition:      color 0.2s ease, padding-left 0.2s ease;
}

#footerContent .footer-nav a:hover {
    color:        #fff;
    padding-left: 3px;
}

#footerContent address p {
    color:      rgba(255, 255, 255, 0.7);
    font-size:  0.85rem;
    margin-bottom: 10px;
    display:    flex;
    align-items: flex-start;
    gap:        8px;
}

#footerContent address a {
    color:           rgba(255, 255, 255, 0.7);
    text-decoration: none;
}

#footerContent address a:hover { color: #fff; }

#footerContent .footer-social a {
    display:          inline-flex;
    align-items:      center;
    justify-content:  center;
    width:            34px;
    height:           34px;
    border-radius:    50%;
    background:       rgba(255, 255, 255, 0.1);
    color:            #fff;
    margin-right:     8px;
    text-decoration:  none;
    transition:       background 0.2s ease;
}

#footerContent .footer-social a:hover { background: var(--color-primary, #015285); }

@media (max-width: 575px) {
    #tx-newsletter-band .row { text-align: center; }
    .tx-newsletter-form { margin: 12px auto 0; }
}
