/* ── Reset scoped to footer ── */
.biolec-footer *,
.biolec-footer *::before,
.biolec-footer *::after { box-sizing: border-box; margin: 0; padding: 0; }

/* ── Main footer ── */
.biolec-footer {
  background: #162032;
  color: #ffffff;
  font-family: 'Segoe UI', Arial, sans-serif;
}

/* width comes from the shared .blm-container; auto side-margins are restated
   here because the .biolec-footer * reset above zeroes margins (it out-weighs
   .blm-container's margin:0 auto). */
.biolec-footer .footer-container {
  padding: 60px 24px 0;
  margin-inline: auto;
}

.biolec-footer .footer-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 40px;
  padding-bottom: 0;
}

/* ── Brand column ── */
.biolec-footer .brand-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}

.biolec-footer .logo-icon {
  width: 42px;
  height: 42px;
  background: linear-gradient(135deg, #3b8fe8, #1a5fb4);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 15px;
  color: #fff;
  letter-spacing: -0.5px;
  flex-shrink: 0;
}

.biolec-footer .brand-name {
  font-size: 1.25rem;
  font-weight: 700;
  color: #fff;
}

.biolec-footer .footer-logo {
  max-width: 200px;
  height: auto;
  display: block;
  background: transparent;
}

.biolec-footer .brand-address {
  font-size: 0.85rem;
  line-height: 1.65;
  color: #ffffff;
  margin-bottom: 20px;
}

.biolec-footer .brand-contact {
  list-style: none;
  margin-bottom: 18px;
}

.biolec-footer .brand-contact li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.88rem;
  color: #ffffff;
  margin-bottom: 8px;
}

.biolec-footer .brand-contact svg {
  width: 16px;
  height: 16px;
  stroke: #3b8fe8;
  flex-shrink: 0;
}

.biolec-footer .brand-hours {
  font-size: 0.8rem;
  color: #ffffff;
  margin-bottom: 24px;
}

/* Social icons */
.biolec-footer .social-icons {
  display: flex;
  gap: 10px;
}

.biolec-footer .social-icons a {
  width: 36px;
  height: 36px;
  background: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #111;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}

.biolec-footer .social-icons a:hover {
  background: #e2e8f0;
  color: #000;
}

.biolec-footer .social-icons svg {
  width: 16px;
  height: 16px;
}

/* ── Nav columns ── */
.biolec-footer .nav-col h4 {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 20px;
}

.biolec-footer .nav-col ul {
  list-style: none;
}

.biolec-footer .nav-col ul li {
  margin-bottom: 11px;
}

.biolec-footer .nav-col ul li a {
  font-size: 0.875rem;
  color: #ffffff;
  text-decoration: none;
  transition: color 0.2s;
}

.biolec-footer .nav-col ul li a:hover {
  color: #fff;
}

/* ── Bottom bar ── */
.biolec-footer .footer-bottom {
  border-top: 1px solid #1e3048;
  background: #162032;
}

.biolec-footer .footer-bottom-inner {
  padding: 18px 24px 40px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px;
}

.biolec-footer .footer-bottom p {
  font-size: 0.78rem;
  color: #ffffff;
}

/* ── Payments ── */
.biolec-footer .payments {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.biolec-footer .payments > svg { color: #4caf82; flex-shrink: 0; }

.biolec-footer .payments > span {
  font-size: 0.78rem;
  color: #ffffff;
  white-space: nowrap;
}

.biolec-footer .pay-marks {
  display: flex;
  align-items: center;
  gap: 6px;
}

.biolec-footer .pay-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 26px;
  padding: 0 7px;
  border-radius: 4px;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  background: #fff;
  color: #1a2a3a;
}

.biolec-footer .pay-mark.visa {
  background: #1a1f71;
  color: #fff;
  font-style: italic;
  letter-spacing: 0.05em;
}

.biolec-footer .pay-mark.mc {
  background: #252525;
  gap: 0;
  padding: 0 6px;
}

.biolec-footer .mc-c {
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 50%;
}

.biolec-footer .mc-r { background: #eb001b; margin-right: -6px; }
.biolec-footer .mc-y { background: #f79e1b; }

.biolec-footer .pay-mark.gp {
  background: #fff;
  color: #5f6368;
  font-size: 0.72rem;
  font-weight: 500;
  gap: 1px;
}

.biolec-footer .gp-g {
  font-weight: 700;
  background: linear-gradient(180deg,#4285f4 0%,#34a853 40%,#fbbc05 70%,#ea4335 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.biolec-footer .pay-mark.ap {
  background: #000;
  color: #fff;
  gap: 3px;
  font-size: 0.7rem;
}

.biolec-footer .pay-mark.pp {
  background: #fff;
  font-size: 0.72rem;
  gap: 0;
}

.biolec-footer .pp-blue  { color: #003087; font-weight: 800; }
.biolec-footer .pp-light { color: #009cde; font-weight: 800; }

/* ── Responsive ── */
@media (max-width: 900px) {
  .biolec-footer .footer-container { padding: 40px 24px 32px; }
  .biolec-footer .footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
  .biolec-footer .footer-grid { grid-template-columns: 1fr; }
  .biolec-footer .footer-bottom-inner { flex-direction: column; align-items: flex-start; }
}