/* ============================================
   PROTEKIP - Footer
   ============================================ */

body footer,
body .footer {
  background: linear-gradient(to bottom, #222222 0%, #141414 100%) !important;
  border-top: 1px solid #2a2a2a !important;
  margin-top: 60px !important;
}

body footer a,
body .footer a {
  color: var(--seif-gray) !important;
}

body footer a:hover,
body .footer a:hover {
  color: var(--seif-red) !important;
}

body footer a,
body .footer a {
  font-size: 1rem !important;
}

body footer h4,
body footer h5,
body .footer h4,
body .footer h5 {
  color: var(--seif-white) !important;
  font-size: 1.15rem !important;
  margin-bottom: 16px;
}

.protekip-footer-row {
  border-bottom: 1px solid var(--seif-border);
  padding-bottom: 16px;
}

.protekip-footer-col {
  padding: 20px 24px;
}

.protekip-footer-title {
  font-family: var(--font-heading) !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: var(--seif-white) !important;
  margin-top: 16px !important;
  margin-bottom: 14px !important;
  padding-left: 10px !important;
  border-left: 3px solid var(--seif-red) !important;
}

.protekip-footer-col .custom-seal-img {
  max-width: 280px;
  height: auto;
}

.protekip-footer-col .footer-logo {
  display: block;
}

.protekip-footer-col .custom-seal-code {
  font-size: 1.4rem;
}

.protekip-footer-contact-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.protekip-footer-contact-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.protekip-footer-contact-list svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  fill: none !important;
  stroke: var(--seif-red);
  margin-top: 3px;
}

.protekip-footer-contact-list svg path,
.protekip-footer-contact-list svg polyline,
.protekip-footer-contact-list svg circle,
.protekip-footer-contact-list svg rect {
  fill: none !important;
}

.protekip-footer-contact-list span {
  font-size: 0.9rem !important;
  color: var(--seif-gray);
  line-height: 1.5;
}

.protekip-footer-contact-list a {
  color: var(--seif-gray) !important;
  text-decoration: none;
}

.protekip-footer-contact-list a:hover {
  color: var(--seif-red) !important;
}

@media (max-width: 768px) {
  .protekip-footer-col {
    padding: 14px 16px;
    border-bottom: 1px solid var(--seif-border);
  }

  .protekip-footer-col:last-child {
    border-bottom: none;
  }

  .protekip-footer-contact-list span {
    font-size: 0.95rem !important;
  }
}

/* Barra legal inferior centrada */
.footer-legal .row {
  justify-content: center !important;
  text-align: center !important;
}

.footer-legal .col-md {
  flex: 0 0 auto !important;
  max-width: 100% !important;
  text-align: center !important;
}

/* Cookie banner — fijo en la parte inferior, nunca empuja contenido */
.js-notification-cookie-banner,
.notification-fixed-bottom {
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: auto !important;
  width: auto !important;
  max-width: 480px !important;
  z-index: 9999 !important;
  margin: 0 !important;
}