/* ============================================================
   FOOTER + NEWSLETTER
   ============================================================ */

/* Newsletter */
.newsletter-section {
    background: linear-gradient(135deg, rgba(168,85,247,.12) 0%, rgba(56,189,248,.08) 100%),
                var(--cr-deep);
    border-top: 1px solid var(--cr-border);
    border-bottom: 1px solid var(--cr-border);
    padding: 4rem 0;
}
.newsletter-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: center;
}
.newsletter-title {
    font-size: clamp(24px, 3vw, 40px);
    margin: .5rem 0 .5rem;
}
.newsletter-form__group {
    display: flex;
    gap: .5rem;
}
.newsletter-form__input {
    flex: 1;
    background: var(--cr-card);
    border: 1px solid var(--cr-border);
    border-radius: var(--cr-radius);
    color: var(--cr-text);
    font-family: var(--cr-font-body);
    font-size: 15px;
    padding: .75rem 1.25rem;
    outline: none;
    transition: border-color .2s;
}
.newsletter-form__input:focus { border-color: var(--cr-purple); }
.newsletter-form__input::placeholder { color: var(--cr-muted); }
.newsletter-form__btn { flex-shrink: 0; }
.newsletter-form__note { font-size: 12px; color: var(--cr-muted); margin-top: .75rem; }
.newsletter-form__success { font-size: 14px; color: var(--cr-teal); margin-top: .5rem; }

/* Footer */
.site-footer {
    background: var(--cr-black);
    border-top: 1px solid var(--cr-border);
}
.site-footer__top { padding: 4rem 0 3rem; }
.footer-grid {
    display: grid;
    grid-template-columns: 280px repeat(3, 1fr);
    gap: 3rem;
}
.footer-col--brand {}
.footer-logo { display: inline-block; text-decoration: none; margin-bottom: 1rem; }
.footer-logo__text {
    font-family: var(--cr-font-display);
    font-size: 28px;
    letter-spacing: .08em;
    color: #fff;
}
.footer-logo__text span {
    background: linear-gradient(135deg, var(--cr-purple), var(--cr-pink));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.footer-tagline {
    font-size: 15px;
    color: var(--cr-dim);
    margin-bottom: 1rem;
    font-weight: 300;
}
.footer-address {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    font-size: 13px;
    color: var(--cr-muted);
    margin-bottom: .5rem;
}
.footer-address a { color: var(--cr-muted); text-decoration: none; transition: color .2s; }
.footer-address a:hover { color: var(--cr-purple); }
.footer-address svg { flex-shrink: 0; margin-top: 2px; color: var(--cr-purple); }

.footer-social { display: flex; gap: .75rem; margin-top: 1.25rem; }
.footer-social__link {
    width: 36px; height: 36px;
    background: var(--cr-card);
    border: 1px solid var(--cr-border);
    border-radius: var(--cr-radius);
    display: flex; align-items: center; justify-content: center;
    color: var(--cr-muted);
    text-decoration: none;
    transition: all .2s;
}
.footer-social__link:hover {
    border-color: var(--cr-purple);
    color: var(--cr-purple);
    background: rgba(168,85,247,.08);
}

.footer-col__title {
    font-family: var(--cr-font-heading);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--cr-purple);
    margin-bottom: 1.25rem;
}
.footer-nav { list-style: none; padding: 0; margin: 0; }
.footer-nav li { margin-bottom: .4rem; }
.footer-nav li a {
    font-size: 14px;
    color: var(--cr-muted);
    text-decoration: none;
    transition: color .2s, padding-left .15s;
    display: block;
}
.footer-nav li a:hover { color: var(--cr-text); padding-left: .25rem; }

/* Footer Bottom */
.site-footer__bottom {
    border-top: 1px solid var(--cr-border);
    padding: 1.25rem 0;
}
.footer-bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .75rem;
}
.footer-copyright, .footer-credit {
    font-size: 13px;
    color: var(--cr-muted);
    margin: 0;
}
.footer-credit a { color: var(--cr-muted); text-decoration: none; transition: color .2s; }
.footer-credit a:hover { color: var(--cr-purple); }

/* Neon Divider */
.neon-divider {
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, var(--cr-purple) 30%, var(--cr-pink) 70%, transparent 100%);
    border: none;
    margin: 0;
}

/* Page Content Styles */
.page-content { padding-top: 3rem; }
.page-content .entry-content { color: var(--cr-dim); line-height: 1.8; }
.page-content .entry-content h2,h3,h4 { color: #fff; margin: 2rem 0 .75rem; }
.page-content .entry-content a { color: var(--cr-purple); }

/* Widget Styles */
.widget { margin-bottom: 2rem; }
.widget-title {
    font-family: var(--cr-font-heading);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--cr-purple);
    margin-bottom: 1rem;
    padding-bottom: .5rem;
    border-bottom: 1px solid var(--cr-border);
}
.widget ul { list-style: none; padding: 0; }
.widget ul li {
    padding: .35rem 0;
    border-bottom: 1px solid rgba(30,30,53,.6);
    font-size: 14px;
    color: var(--cr-muted);
}
.widget ul li:last-child { border-bottom: none; }
.widget ul li a { color: var(--cr-dim); text-decoration: none; transition: color .2s; }
.widget ul li a:hover { color: var(--cr-purple); }

/* Responsive */
@media (max-width: 1024px) {
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
    .newsletter-inner { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
    .footer-grid { grid-template-columns: 1fr; gap: 1.5rem; }
    .footer-bottom-inner { flex-direction: column; text-align: center; }
    .newsletter-form__group { flex-direction: column; }
    .newsletter-form__btn { width: 100%; justify-content: center; }
}
