/* Footer: CTA band, footer columns, floating WhatsApp button */
/* ---------- Footer CTA + footer ---------- */
.cta-band { background: var(--oak); color: #fff; position: relative; overflow: hidden; }
.cta-band::after { content: ""; position: absolute; inset: 0; background: url("../../swatches/herringbone-3.svg") center / 520px; opacity: .14; mix-blend-mode: multiply; pointer-events: none; }
.cta-band__in { position: relative; z-index: 1; display: flex; justify-content: space-between; align-items: center; gap: 32px; padding-block: 56px; flex-wrap: wrap; }
.cta-band__title { font-size: clamp(26px, 3vw, 38px); font-variation-settings: "wdth" 114; letter-spacing: -.02em; max-width: 20ch; margin-bottom: 12px; }
.cta-band p { max-width: 52ch; color: #FBF1E4; }
.cta-band__actions { display: flex; gap: 12px; flex-wrap: wrap; }

.site-footer { background: var(--ink); color: #B9C6C1; font-size: 15.5px; }
.site-footer__grid { display: grid; grid-template-columns: 1.4fr repeat(4, 1fr) 1.2fr; gap: 32px; padding-block: 64px 40px; }
.site-footer__brand p { margin-top: 18px; max-width: 34ch; }
.site-footer .brand { color: #fff; }
.site-footer__head { color: #fff; font-weight: 650; margin-bottom: 14px; }
.site-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.site-footer a { text-decoration: none; }
.site-footer a:hover { color: #fff; }
.socials { display: flex !important; flex-wrap: wrap; gap: 8px 16px !important; margin-top: 18px !important; }
.socials a { border-bottom: 1px solid rgba(255, 255, 255, .3); }
.site-footer__base { display: flex; justify-content: space-between; gap: 16px; padding-block: 22px; border-top: 1px solid rgba(255, 255, 255, .12); font-size: 14px; flex-wrap: wrap; }
@media (max-width: 960px) { .site-footer__grid { grid-template-columns: 1fr 1fr; } .site-footer__brand { grid-column: 1 / -1; } }

.wa-float { position: fixed; right: 18px; bottom: 18px; z-index: 60; display: flex; align-items: center; gap: 8px; background: var(--wa); color: #fff; text-decoration: none; padding: 12px 18px 12px 14px; border-radius: 999px; font-weight: 650; box-shadow: 0 12px 28px -10px rgba(0, 0, 0, .45); }
.wa-float:hover { background: var(--wa-deep); color: #fff; }
@media (max-width: 560px) { .wa-float span { display: none; } .wa-float { padding: 14px; } }

