/**
 * 911MyWeb Footer Styles
 * Bootstrap grid — no Tailwind, no custom max-width hacks.
 *
 * Structure expected in HTML:
 *   <footer class="footer-911-main">
 *     <div class="container">
 *       <div class="row footer-grid"> ... </div>
 *       <div class="footer-badges-row"> ... </div>
 *       <div class="footer-911-bottom"> ... </div>
 *     </div>
 *   </footer>
 *
 * @package 911myweb
 * @version 3.0.0
 */

/* ============================================
   WRAPPER
   ============================================ */
.footer-911-main {
    color: #f1f5f9;
    padding-top: 5rem;
    padding-bottom: 2.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

/* ============================================
   COLUMNS
   ============================================ */
.footer-911-main .footer-column {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.footer-911-main .footer-column:first-child { gap: 2rem; }

.footer-911-main .footer-column p.summary {
    color: #94a3b8;
    font-size: 0.9375rem;
    line-height: 1.8;
    margin: 0;
}

/* ============================================
   LOGO
   ============================================ */
.footer-911-main .footer-logo-wrap {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
.footer-911-main .footer-logo-wrap img {
    height: auto;
    width: auto;
    max-width: 100%;
}

/* ============================================
   HEADING
   ============================================ */
.footer-911-main .footer-heading {
    color: #fff;
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin: 0 0 0.25rem;
    font-family: var(--bs-body-font-family, inherit);
}

/* ============================================
   SHARED LINK BASE
   Both .footer-link and .footer-nav li a share
   the same chevron icon + orange underline hover.
   ============================================ */
.footer-911-main .footer-link,
.footer-911-main .footer-nav li a {
    color: #94a3b8;
    font-size: 0.9375rem;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    position: relative;
    transition: color 0.3s ease;
}

/* Chevron icon — same SVG, same size */
.footer-911-main .footer-link::before,
.footer-911-main .footer-nav li a::before {
    content: "";
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%2394a3b8'%3E%3Cpath d='M540-480 356-664l20-20 204 204-204 204-20-20 184-184Z'/%3E%3C/svg%3E");
    background-size: 22px;
    background-repeat: no-repeat;
    background-position: center;
    transition: background-image 0.3s ease;
}

/* Orange underline — identical on both */
.footer-911-main .footer-link::after,
.footer-911-main .footer-nav li a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 40px;
    width: 0;
    height: 1px;
    background-color: var(--brand-accent, #ff7e16);
    box-shadow: 0 0 10px rgba(255, 140, 0, 0.4);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    border-radius: 4px;
}

/* Hover state */
.footer-911-main .footer-link:hover,
.footer-911-main .footer-nav li a:hover {
    color: #fff;
}
.footer-911-main .footer-link:hover::after,
.footer-911-main .footer-nav li a:hover::after {
    width: calc(100% - 40px);
}

/* ============================================
   NAV LIST
   ============================================ */
.footer-911-main .footer-nav {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* ============================================
   BADGES ROW
   ============================================ */
.footer-911-main .footer-badges-row {
    margin-top: 1rem;
    padding: 1rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}
.footer-911-main .footer-badges-row img {
    height: 50px;
    width: auto;
    opacity: 0.8;
    border-radius: 4px;
    transition: opacity 0.3s ease, transform 0.3s ease;
}
.footer-911-main .footer-badges-row img:hover {
    opacity: 1;
    transform: translateY(-2px) scale(1.05);
}

/* ============================================
   BOTTOM BAR
   ============================================ */
.footer-911-main .footer-911-bottom {
    margin-top: 1.875rem;
    padding-top: 1.875rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 1.25rem;
}
.footer-911-main .footer-911-bottom .legal-text {
    max-width: 800px;
    font-size: 0.875rem;
    line-height: 1.8;
    color: #94a3b8;
}
.footer-911-main .footer-911-bottom .legal-text p { margin: 0; }
