/* ==========================================================================
   09-footer.css  --  newsletter band, footer columns, legal strip
   ========================================================================== */

.scs-newsletter {
    background: var(--scs-accent-soft);
    padding-block: var(--scs-10);
}
.scs-newsletter__inner {
    display: grid;
    gap: var(--scs-5);
    align-items: center;
}
@media (min-width: 900px) {
    .scs-newsletter__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 460px); gap: var(--scs-10); }
}
.scs-newsletter__title { font-size: var(--scs-fs-lg); margin: 0 0 var(--scs-2); }
.scs-newsletter__text { font-size: var(--scs-fs-sm); color: var(--scs-ink-2); margin: 0; }
.scs-newsletter__form { display: flex; gap: var(--scs-2); }
.scs-newsletter__form .scs-input { flex: 1 1 auto; }

.scs-footer {
    background: var(--scs-inverse);
    color: var(--scs-inverse-ink);
    padding-block: var(--scs-12) var(--scs-6);
}
.scs-footer a { color: var(--scs-inverse-ink); opacity: .82; font-size: var(--scs-fs-sm); }
.scs-footer a:hover { opacity: 1; color: #fff; }

.scs-footer__cols {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--scs-8) var(--scs-6);
}
@media (min-width: 900px) {
    .scs-footer__cols { grid-template-columns: 1.4fr repeat(3, minmax(0, 1fr)); }
}

.scs-footer__brand { font-size: var(--scs-fs-md); font-weight: var(--scs-fw-bold); color: #fff; margin-bottom: var(--scs-3); }
.scs-footer__blurb { font-size: var(--scs-fs-sm); opacity: .78; max-width: 34ch; margin: 0 0 var(--scs-4); }

.scs-footer__title {
    font-size: var(--scs-fs-xs);
    font-weight: var(--scs-fw-bold);
    text-transform: uppercase;
    letter-spacing: .09em;
    color: #fff;
    margin: 0 0 var(--scs-4);
}
.scs-footer__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--scs-2); }

.scs-footer__social { display: flex; gap: var(--scs-2); margin-top: var(--scs-4); }
.scs-footer__social a {
    width: 36px; height: 36px;
    display: grid; place-items: center;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 50%;
    opacity: .8;
}
.scs-footer__social a:hover { opacity: 1; border-color: rgba(255,255,255,.5); background: rgba(255,255,255,.06); }

.scs-footer__bottom {
    margin-top: var(--scs-10);
    padding-top: var(--scs-5);
    border-top: 1px solid rgba(255,255,255,.12);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--scs-4);
    font-size: var(--scs-fs-xs);
    opacity: .72;
}
.scs-footer__legal { display: flex; flex-wrap: wrap; gap: var(--scs-4); }

/* Offline payment strip -- deliberately generic; no processor branding, because
   this build is never connected to a live gateway. */
.scs-payments { display: flex; gap: var(--scs-2); flex-wrap: wrap; }
.scs-payments span {
    padding: var(--scs-1) var(--scs-2);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--scs-radius-sm);
    font-size: 10px;
    letter-spacing: .04em;
    text-transform: uppercase;
}

/* Age-gate / compliance strip -- adult retail context. */
.scs-footer__compliance {
    margin-top: var(--scs-4);
    font-size: var(--scs-fs-xs);
    opacity: .6;
    max-width: 78ch;
}
