/* ============================================================
   ORICLO – Footer
   ============================================================ */

#footer {
  --oriclo-beige:   #e8ddd0;
  --oriclo-stone:   #c8b9a8;
  --oriclo-dark:    #3a2e27;
  --oriclo-darker:  #261e19;
  --oriclo-gold:    #c4955a;
  --oriclo-muted:   #9e8e82;

  background: var(--oriclo-dark) !important;
  color: var(--oriclo-beige) !important;
  font-family: 'Lato', sans-serif !important;
  border-top: 3px solid var(--oriclo-gold) !important;
}

#footer .sr-only {
  position: absolute !important;
  width: 1px !important; height: 1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
}

/* ---- Hlavní padding ---- */
#footer .footer-rows {
  padding-top: 56px !important;
  padding-bottom: 40px !important;
}

/* ---- Sloupce: zrušit Shoptet float layout, použít flexbox ---- */
#footer .row.custom-footer {
  display: flex !important;
  flex-wrap: wrap !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  gap: 0 !important;
}

#footer .row.custom-footer > [class*="col-"] {
  float: none !important;
  width: 25% !important;
  flex: 0 0 25% !important;
  max-width: 25% !important;
  padding: 0 28px 36px !important;
  box-sizing: border-box !important;
}

/* ---- Nadpisy ---- */
#footer .pageElement__heading {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: var(--oriclo-gold) !important;
  margin: 0 0 18px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(196,149,90,0.3) !important;
  white-space: normal !important;
}

/* ---- Navigační seznam ---- */
#footer .custom-footer__articles ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#footer .custom-footer__articles ul li {
  margin-bottom: 12px !important;
  padding: 0 !important;
}

#footer .custom-footer__articles ul li a {
  color: rgba(232,221,208,0.8) !important;
  text-decoration: none !important;
  font-size: 12px !important;
  font-weight: 300 !important;
  line-height: 1.4 !important;
  transition: color 0.2s, padding-left 0.18s !important;
  display: inline-block !important;
}

#footer .custom-footer__articles ul li a:hover {
  color: var(--oriclo-gold) !important;
  padding-left: 5px !important;
}

/* ---- Kontaktní box ---- */
#footer .contact-box {
  display: block !important;
}

#footer .contact-box img {
  width: 58px !important;
  height: 58px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 2px solid var(--oriclo-gold) !important;
  margin: 0 0 14px 0 !important;
  display: block !important;
  position: static !important;
}

#footer .contact-box ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#footer .contact-box ul li {
  font-size: 0.92rem !important;
  font-weight: 300 !important;
  color: rgba(232,221,208,0.8) !important;
  line-height: 1.5 !important;
  margin-bottom: 8px !important;
  padding: 0 !important;
}

#footer .contact-box a {
  color: rgba(232,221,208,0.8) !important;
  text-decoration: none !important;
  font-size: 12px !important;
}

#footer .contact-box a:hover {
  color: var(--oriclo-gold) !important;
}

/* ---- Sociální ikony ---- */
#footer li.social-icon-list {
  display: inline-block !important;
  margin: 6px 8px 0 0 !important;
  padding: 0 !important;
  float: none !important;
  width: auto !important;
}

#footer .social-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(200,185,168,0.35) !important;
  background-size: 16px 16px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  overflow: hidden !important;
  transition: border-color 0.2s, background-color 0.2s !important;
}

#footer .social-icon:hover {
  border-color: var(--oriclo-gold) !important;
  background-color: rgba(196,149,90,0.15) !important;
}

/* ---- Facebook widget ---- */
#footer #fb-widget-wrap {
  border-radius: 8px !important;
  overflow: hidden !important;
  max-width: 220px !important;
}

/* ---- Spodní lišta ---- */
#footer .footer-bottom-full-width {
  background: var(--oriclo-darker) !important;
  border-top: 1px solid rgba(200,185,168,0.1) !important;
}

#footer .footer-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 14px 24px !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

#footer .copyright {
  font-size: 0.8rem !important;
  font-weight: 300 !important;
  color: var(--oriclo-muted) !important;
  letter-spacing: 0.03em !important;
}

#footer .copyright strong {
  color: var(--oriclo-stone) !important;
  font-weight: 700 !important;
}

#footer #signature {
  display: inline-flex !important;
  visibility: visible !important;
  align-items: center !important;
  gap: 5px !important;
  opacity: 0.3 !important;
  transition: opacity 0.2s !important;
}

#footer #signature:hover {
  opacity: 0.6 !important;
}

#footer #signature img {
  filter: brightness(0) invert(1) !important;
}

#footer #signature .title {
  font-size: 0.73rem !important;
  color: var(--oriclo-muted) !important;
  text-decoration: none !important;
}

/* ---- Tablet (max 991px) ---- */
@media (max-width: 991px) {
  #footer .row.custom-footer > [class*="col-"] {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
    padding: 0 20px 28px !important;
  }
}

/* ---- Mobil (max 600px) ---- */
@media (max-width: 600px) {
  #footer .footer-rows {
    padding-top: 36px !important;
    padding-bottom: 16px !important;
  }

  #footer .row.custom-footer > [class*="col-"] {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding: 0 20px 24px !important;
  }

  #footer .footer-bottom {
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 12px 20px !important;
  }
}