/* ==========================================================
   ebmnt1 — Footer (columns + 3D "created by" signature)
   ========================================================== */
:root {
  --ebmnt1-footer-background-color: var(--ebmnt1-color-secondary-darker);
  --ebmnt1-footer-text-color: var(--ebmnt1-color-helper-white-faded);
  --ebmnt1-footer-text-font-size: clamp(0.92rem, 0.88rem + 0.2vw, 1rem);
  --ebmnt1-footer-title-color: var(--ebmnt1-color-helper-white);
  --ebmnt1-footer-title-font-size: clamp(1.15rem, 1.05rem + 0.5vw, 1.4rem);
  --ebmnt1-footer-title-line-color: var(--ebmnt1-color-primary);
  --ebmnt1-footer-link-color: var(--ebmnt1-color-helper-white-faded);
  --ebmnt1-footer-link-hover-color: var(--ebmnt1-color-primary-light);
  --ebmnt1-footer-link-icon-color: var(--ebmnt1-color-primary);
  --ebmnt1-footer-logo-icon-color: var(--ebmnt1-color-primary);
  --ebmnt1-footer-logo-title-color: var(--ebmnt1-color-helper-white);
  --ebmnt1-footer-logo-title-font-size: clamp(1.5rem, 1.3rem + 0.8vw, 1.9rem);
  --ebmnt1-footer-social-border-color: var(--ebmnt1-color-helper-white-soft);
  --ebmnt1-footer-social-icon-color: var(--ebmnt1-color-helper-white);
  --ebmnt1-footer-social-hover-background-color: var(--ebmnt1-color-primary);
  --ebmnt1-footer-divider-color: var(--ebmnt1-color-helper-white-soft);
  --ebmnt1-footer-columns: 1;
  --ebmnt1-footer-gap: 2.25rem;

  /* signature */
  --ebmnt1-signature-label-color: var(--ebmnt1-color-helper-white-faded);
  --ebmnt1-signature-label-font-size: clamp(0.8rem, 0.75rem + 0.2vw, 0.9rem);
  --ebmnt1-signature-name-color: var(--ebmnt1-color-primary-light);
  --ebmnt1-signature-name-font-size: clamp(1.25rem, 1.1rem + 0.8vw, 1.7rem);
  --ebmnt1-signature-depth-color: var(--ebmnt1-color-primary);
  --ebmnt1-signature-deep-color: var(--ebmnt1-color-secondary-dark);
  --ebmnt1-signature-glow-color: var(--ebmnt1-color-primary-faded);
  --ebmnt1-signature-icon-color: var(--ebmnt1-color-primary-light);
  --ebmnt1-signature-stroke-color: var(--ebmnt1-color-primary);
  --ebmnt1-signature-rotate-x: 10deg;
  --ebmnt1-signature-rotate-y: -12deg;
}

.ebmnt1-footer {
  width: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--ebmnt1-footer-background-color);
  color: var(--ebmnt1-footer-text-color);
  font-size: var(--ebmnt1-footer-text-font-size);
}

.ebmnt1-footer__inner {
  width: var(--ebmnt1-container-width);
  max-width: var(--ebmnt1-container-max-width);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  padding-block: 3.5rem 0;
}

.ebmnt1-footer__columns {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ebmnt1-footer-gap);
}

.ebmnt1-footer__column {
  flex: 0 0 calc((100% - (var(--ebmnt1-footer-columns) - 1) * var(--ebmnt1-footer-gap)) / var(--ebmnt1-footer-columns));
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}

.ebmnt1-footer__logo {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.ebmnt1-footer__logo-icon {
  font-size: 2rem;
  color: var(--ebmnt1-footer-logo-icon-color);
}

.ebmnt1-footer__logo-title {
  font-size: var(--ebmnt1-footer-logo-title-font-size);
  font-weight: 700;
  color: var(--ebmnt1-footer-logo-title-color);
}

.ebmnt1-footer__text {
  line-height: 1.9;
}

.ebmnt1-footer__title {
  position: relative;
  padding-bottom: 0.75rem;
  font-size: var(--ebmnt1-footer-title-font-size);
  font-weight: 600;
  color: var(--ebmnt1-footer-title-color);
}

.ebmnt1-footer__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  inset-inline-start: 0;
  width: 3rem;
  height: 2px;
  background-color: var(--ebmnt1-footer-title-line-color);
}

.ebmnt1-footer__list {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}

.ebmnt1-footer__link {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  color: var(--ebmnt1-footer-link-color);
  transition: color 0.3s ease, transform 0.3s ease;
}

.ebmnt1-footer__link:hover {
  color: var(--ebmnt1-footer-link-hover-color);
  transform: translateX(-0.4rem);
}

.ebmnt1-footer__link-icon {
  color: var(--ebmnt1-footer-link-icon-color);
}

.ebmnt1-footer__social {
  display: flex;
  gap: 0.6rem;
}

.ebmnt1-footer__social-link {
  width: 2.6rem;
  height: 2.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--ebmnt1-footer-social-icon-color);
  border: 1px solid var(--ebmnt1-footer-social-border-color);
  border-radius: 50%;
  transition: background-color 0.3s ease, transform 0.3s ease;
}

.ebmnt1-footer__social-link:hover {
  background-color: var(--ebmnt1-footer-social-hover-background-color);
  transform: translateY(-0.3rem);
}

/* ---------- bottom bar ---------- */
.ebmnt1-footer__bottom {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-block: 1.5rem 5.5rem;
  border-top: 1px solid var(--ebmnt1-footer-divider-color);
  text-align: center;
}

/* ---------- 3D signature ---------- */
.ebmnt1-signature {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.3rem;
}

.ebmnt1-signature__label {
  font-size: var(--ebmnt1-signature-label-font-size);
  color: var(--ebmnt1-signature-label-color);
  letter-spacing: 0.08em;
}

.ebmnt1-signature__stage {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.4rem 0.8rem 0.9rem;
  perspective: 40rem;
}

.ebmnt1-signature__icon {
  color: var(--ebmnt1-signature-icon-color);
  font-size: 1.3em;
  transform: rotate(-20deg);
  transition: transform 0.5s ease;
}

.ebmnt1-signature__name {
  display: inline-block;
  font-size: var(--ebmnt1-signature-name-font-size);
  font-weight: 700;
  font-style: italic;
  color: var(--ebmnt1-signature-name-color);
  transform: rotateX(var(--ebmnt1-signature-rotate-x)) rotateY(var(--ebmnt1-signature-rotate-y)) skewX(-6deg);
  transform-style: preserve-3d;
  text-shadow:
    1px 1px 0 var(--ebmnt1-signature-depth-color),
    2px 2px 0 var(--ebmnt1-signature-depth-color),
    3px 3px 0 var(--ebmnt1-signature-depth-color),
    4px 4px 0 var(--ebmnt1-signature-depth-color),
    5px 5px 0 var(--ebmnt1-signature-deep-color),
    6px 6px 0 var(--ebmnt1-signature-deep-color),
    10px 12px 14px var(--ebmnt1-signature-glow-color);
  transition: transform 0.2s ease-out, text-shadow 0.3s ease;
}

.ebmnt1-signature__stroke {
  position: absolute;
  inset-inline: 0.8rem;
  bottom: 0.15rem;
  height: 3px;
  background-color: var(--ebmnt1-signature-stroke-color);
  border-radius: 50%;
  transform: scaleX(0.25) rotate(-2deg);
  transform-origin: right center;
  transition: transform 0.6s ease;
}

.ebmnt1-signature:hover .ebmnt1-signature__stroke {
  transform: scaleX(1) rotate(-2deg);
}

.ebmnt1-signature:hover .ebmnt1-signature__icon {
  transform: rotate(10deg) translateY(-0.2rem);
}

@media (min-width: 425px) {
  :root { --ebmnt1-footer-gap: 2.5rem; }
}

@media (min-width: 768px) {
  :root { --ebmnt1-footer-columns: 2; }

  .ebmnt1-footer__bottom {
    flex-direction: row;
    padding-block: 1.5rem;
    text-align: start;
  }
}

@media (min-width: 1024px) {
  :root { --ebmnt1-footer-columns: 4; --ebmnt1-footer-gap: 2rem; }
}
