/* Shared site footer (kb-style). Loaded via components/footer.php */
.kb-footer { background: #0C1425; color: #A8B3C7; }
/* Self-contained container: checkout/search pages don't define .main-container */
.kb-footer .main-container { width: 100%; padding-left: 15px; padding-right: 15px; margin-left: auto; margin-right: auto; box-sizing: border-box; }
@media (min-width: 1200px) {
    .kb-footer .main-container { max-width: 1400px; padding-left: 30px; padding-right: 30px; }
}
@media (min-width: 1600px) {
    .kb-footer .main-container { max-width: 1600px; padding-left: 50px; padding-right: 50px; }
}
.kb-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.2fr 1.1fr; gap: 36px; padding: 54px 0 42px; }
.kb-brand { color: #fff; font-size: 19px; font-weight: 700; margin-bottom: 14px; letter-spacing: .3px; }
.kb-brand span { color: #FFD814; }
.kb-desc { font-size: 13px; line-height: 1.85; color: #8B98AD; margin: 0 0 22px; max-width: 300px; }
.kb-social { display: flex; gap: 10px; }
.kb-social a { width: 34px; height: 34px; border-radius: 50%; background: #1C2740; display: flex; align-items: center; justify-content: center; color: #CBD5E1; font-size: 14px; text-decoration: none; transition: background .2s ease, color .2s ease; }
.kb-social a:hover { background: #D32F2F; color: #fff; }
.kb-h { color: #fff; font-size: 13px; font-weight: 700; letter-spacing: 1.2px; margin-bottom: 18px; }
.kb-link { display: block; color: #8B98AD; font-size: 13.5px; text-decoration: none; padding: 5px 0; transition: color .2s ease; }
.kb-link::before { content: '\203A'; color: #FFD814; margin-right: 9px; font-size: 14px; }
.kb-link:hover { color: #fff; }
.kb-contact { display: flex; gap: 10px; align-items: flex-start; font-size: 13.5px; color: #8B98AD; padding: 5px 0; line-height: 1.5; }
.kb-contact i { color: #FFD814; width: 16px; margin-top: 3px; font-size: 14px; text-align: center; flex-shrink: 0; }
.kb-contact a { color: #8B98AD; text-decoration: none; }
.kb-contact a:hover { color: #fff; }
.kb-sub-text { font-size: 13px; color: #8B98AD; margin-bottom: 14px; line-height: 1.6; }
.kb-input { width: 100%; background: #fff; border: none; border-radius: 6px; padding: 11px 14px; font-size: 13px; margin-bottom: 10px; outline: none; color: #0F172A; box-sizing: border-box; }
.kb-input::placeholder { color: #9CA3AF; }
.kb-btn { width: 100%; background: #D32F2F; border: none; color: #fff; font-weight: 700; letter-spacing: .6px; font-size: 13px; padding: 11px; border-radius: 6px; cursor: pointer; transition: background .2s ease; }
.kb-btn:hover { background: #B71C1C; }
.kb-sub-msg { font-size: 12.5px; margin-top: 8px; display: none; }
.kb-sub-msg.ok { display: block; color: #FFD814; }
.kb-sub-msg.err { display: block; color: #F87171; }
.kb-bottom { border-top: 1px solid rgba(255,255,255,.08); }
.kb-bottom-wide { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 15px 28px; }
.kb-copy { font-size: 12.5px; color: #7C8AA0; margin: 0; }
.kb-copy .kb-name { color: #fff; font-weight: 600; }
.kb-copy a { color: #fff; font-weight: 600; text-decoration: none; }
.kb-copy a:hover { text-decoration: underline; }
.kb-copy a .kb-x { color: #3B82F6; }
.kb-pays { display: flex; gap: 8px; align-items: center; margin-left: auto; }
.kb-pay { background: #fff; border-radius: 6px; height: 34px; min-width: 60px; padding: 4px 12px; display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; }
.kb-pay img { max-height: 22px; max-width: 48px; width: auto; height: auto; display: block; object-fit: contain; }
.kb-pay.kb-bk img, .kb-pay.kb-ng img { max-height: 27px; max-width: 62px; }
.kb-pay.kb-bk, .kb-pay.kb-ng { min-width: 70px; }
@media (max-width: 992px) {
    .kb-grid { grid-template-columns: 1fr 1fr; gap: 30px; padding: 44px 0 34px; }
    .kb-desc { max-width: 100%; }
}
@media (max-width: 576px) {
    .kb-grid { grid-template-columns: 1fr; gap: 28px; }
    .kb-bottom-wide { justify-content: center; text-align: center; padding: 15px; }
    .kb-pays { margin-left: 0; }
}
