/* Stopka w układzie szablonu: CTA, 5 kolumn, pasek dolny i duży znak marki */
.ft { position: relative; overflow: hidden; background: #0b1713; color: #ffffff; font-family: 'Inter', 'Inter Fallback', Arial, sans-serif; }
.ft-wrap { max-width: 1200px; margin: 0 auto; padding: 96px 20px 0; }

.ft-cta { display: flex; justify-content: space-between; align-items: flex-start; gap: 40px; padding-bottom: 72px; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.ft-eyebrow { margin: 0; font-size: 11px; font-weight: 600; letter-spacing: 1px; color: #8fd3ae; }
.ft-title { margin: 16px 0 0; max-width: 560px; font-size: 44px; line-height: 48px; font-weight: 500; letter-spacing: -1.8px; color: #ffffff; }
.ft-cta-r { max-width: 380px; padding-top: 4px; }
.ft-cta-r p { margin: 0; font-size: 15px; line-height: 23px; color: #a9b8b1; }
.ft-btn { margin-top: 24px; display: inline-flex; align-items: center; gap: 10px; padding: 11px 20px; border-radius: 999px; background: #ffffff; color: #101c19; font-size: 14px; font-weight: 500; text-decoration: none; transition: background .25s, color .25s; }
.ft-btn svg { width: 14px; height: 14px; transition: transform .3s; }
.ft-btn:hover { background: #a8e6c0; }
.ft-btn:hover svg { transform: translateX(3px); }

.ft-cols { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 24px; padding: 48px 0; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.ft-cols nav { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.ft-h { margin: 0 0 4px; font-size: 11px; letter-spacing: .5px; color: #7d8a85; }
.ft-cols a, .ft-cols span { font-size: 14px; color: #e6ece9; text-decoration: none; transition: color .2s; }
.ft-cols span { color: #a9b8b1; }
.ft-cols a:hover { color: #8fd3ae; }
.ft-cols a:focus-visible, .ft-btn:focus-visible { outline: 2px solid #8fd3ae; outline-offset: 3px; border-radius: 4px; }

.ft-bottom { display: grid; grid-template-columns: 1fr auto 1fr; gap: 16px; align-items: center; padding: 32px 0; font-size: 12px; color: #7d8a85; }
.ft-bottom p { margin: 0; }
.ft-bottom p:first-child { color: #c9d4cc; }
.ft-bottom p:last-child { text-align: right; }

.ft-brand { display: flex; align-items: flex-start; gap: 2.4vw; padding: 2vw 4vw 0; height: 10.5vw; overflow: hidden; pointer-events: none; user-select: none; }
.ft-mark { flex: none; width: 13vw; height: 13vw; color: #c6f0b8; }
.ft-mark svg { width: 100%; height: 100%; display: block; }
.ft-word { font-size: 9.6vw; line-height: .9; font-weight: 500; letter-spacing: -.045em; color: #eef6f1; white-space: nowrap; transform: translateY(1vw); }

@media (max-width: 900px) {
    .ft-cta { flex-direction: column; gap: 24px; }
    .ft-title { font-size: 34px; line-height: 38px; letter-spacing: -1.2px; }
    .ft-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 36px; }
    .ft-bottom { grid-template-columns: minmax(0, 1fr); gap: 8px; }
    .ft-bottom p:last-child { text-align: left; }
}

@media (max-width: 560px) {
    .ft-wrap { padding: 64px 16px 0; }
    .ft-cta { padding-bottom: 48px; }
    .ft-title { font-size: 28px; line-height: 32px; }
    .ft-brand { height: 12vw; }
}
.ft-cols a, .ft-cols span { overflow-wrap: anywhere; }
.ft-btns { display: flex; flex-wrap: wrap; gap: 10px; }
.ft-btn-ghost { background: transparent; color: #ffffff; border: 1px solid rgba(255, 255, 255, .3); }
.ft-btn-ghost:hover { background: rgba(255, 255, 255, .1); color: #ffffff; }
