/* Footer boutique — compact + aligné sur les variables de thème (--brand-*, --ink, --surface) */

body[class*="tk-shop-group-"] {
  --tk-footer-bg: var(--surface, #ffffff);
  --tk-footer-text: var(--ink, var(--cn-navy, #0f172a));
  --tk-footer-muted: var(--muted, var(--cn-muted, #64748b));
  --tk-footer-border: color-mix(in srgb, var(--tk-footer-text) 12%, transparent);
  --tk-footer-accent: var(--brand-600, var(--cn-blue, #1d4ed8));
  --tk-footer-accent-mid: var(--brand-500, #3b82f6);
  --tk-footer-accent-light: var(--brand-400, #38bdf8);
  --tk-footer-accent-soft: var(--brand-50, #eff6ff);
  --tk-footer-cta-dark: var(--brand-800, var(--cn-navy, #0a1628));
  --tk-footer-cta-light-bg: var(--surface, #ffffff);
  --tk-footer-cta-light-text: var(--tk-footer-text);
  --tk-footer-glow-a: color-mix(in srgb, var(--brand-500) 8%, transparent);
  --tk-footer-glow-b: color-mix(in srgb, var(--brand-600) 6%, transparent);
  --tk-footer-gradient: linear-gradient(
    90deg,
    var(--brand-600, var(--cn-blue)),
    var(--brand-500, #3b82f6),
    var(--brand-400, #38bdf8)
  );
}

body.tk-shop-group-groupec {
  --tk-footer-bg: #222831;
  --tk-footer-text: #ffffff;
  --tk-footer-muted: #dbdbdb;
  --tk-footer-border: rgba(255, 255, 255, 0.12);
  --tk-footer-accent: #ffbe33;
  --tk-footer-accent-mid: #ffc94d;
  --tk-footer-accent-light: #ffd56a;
  --tk-footer-accent-soft: rgba(255, 190, 51, 0.12);
  --tk-footer-cta-dark: #1a1f27;
  --tk-footer-cta-light-bg: rgba(255, 255, 255, 0.08);
  --tk-footer-cta-light-text: #ffffff;
  --tk-footer-glow-a: rgba(255, 190, 51, 0.08);
  --tk-footer-glow-b: rgba(255, 190, 51, 0.05);
  --tk-footer-gradient: linear-gradient(90deg, #ffbe33, #ffc94d, #e69c00);
}

.tk-site-footer--shop {
  background: var(--tk-footer-bg);
  color: var(--tk-footer-text);
  padding: 1.35rem 0 0.85rem;
  border-top: 1px solid var(--tk-footer-border);
  font-family: "Sora", "Plus Jakarta Sans", system-ui, sans-serif;
}

body.tk-shop-group-groupec .tk-site-footer--shop {
  font-family: "Open Sans", system-ui, sans-serif;
}

.tk-site-footer--shop .tk-site-footer__gradient-bar {
  height: 3px;
  background: var(--tk-footer-gradient);
  opacity: 0.55;
}

.tk-site-footer--shop .tk-site-footer__glow {
  width: 18rem;
  height: 18rem;
  filter: blur(80px);
}

.tk-site-footer--shop .tk-site-footer__glow--tr {
  background: var(--tk-footer-glow-a);
}

.tk-site-footer--shop .tk-site-footer__glow--bl {
  background: var(--tk-footer-glow-b);
}

.tk-site-footer--shop .tk-site-footer__grid {
  gap: 1.15rem;
  margin-bottom: 1.15rem;
}

.tk-site-footer--shop .tk-site-footer__brand {
  margin-bottom: 0.65rem;
}

.tk-site-footer--shop .tk-site-footer__brand-logo,
.tk-site-footer--shop .tk-site-footer__brand-icon {
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.85rem;
}

.tk-site-footer--shop .tk-site-footer__brand-logo {
  object-fit: contain;
  object-position: center;
  background: #fff;
  padding: 0.125rem;
}

.tk-site-footer--shop .tk-site-footer__brand-icon {
  background: linear-gradient(135deg, var(--tk-footer-accent), var(--tk-footer-cta-dark));
  box-shadow: 0 6px 16px color-mix(in srgb, var(--tk-footer-accent) 35%, transparent);
  font-size: 1.05rem;
}

.tk-site-footer--shop .tk-site-footer__brand-name {
  font-family: "Syne", "Outfit", system-ui, sans-serif;
  font-size: 1.1rem;
  color: var(--tk-footer-text);
}

body.tk-shop-group-groupec .tk-site-footer--shop .tk-site-footer__brand-name {
  font-family: "Dancing Script", cursive;
  font-size: 1.45rem;
  font-weight: 700;
}

.tk-site-footer--shop .tk-site-footer__brand-tag {
  color: var(--tk-footer-accent);
  font-size: 0.58rem;
  letter-spacing: 0.16em;
}

.tk-site-footer--shop .tk-site-footer__desc {
  color: var(--tk-footer-muted);
  font-size: 0.8125rem;
  line-height: 1.4;
  margin: 0 0 0.75rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.tk-site-footer--shop .tk-site-footer__social-btn {
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.65rem;
  background: var(--tk-footer-accent-soft);
  border: 1px solid var(--tk-footer-border);
  color: var(--tk-footer-muted);
}

.tk-site-footer--shop .tk-site-footer__social-btn:hover {
  background: var(--tk-footer-accent);
  border-color: var(--tk-footer-accent);
  color: #fff;
}

.tk-site-footer--shop .tk-site-footer__heading {
  font-family: "Syne", "Outfit", system-ui, sans-serif;
  font-size: 0.92rem;
  color: var(--tk-footer-text);
  margin: 0 0 0.65rem;
}

body.tk-shop-group-groupec .tk-site-footer--shop .tk-site-footer__heading {
  font-family: "Open Sans", system-ui, sans-serif;
  font-weight: 700;
}

.tk-site-footer--shop .tk-site-footer__heading-line--primary {
  background: var(--tk-footer-accent);
}

.tk-site-footer--shop .tk-site-footer__heading-line--blue {
  background: var(--tk-footer-accent-mid);
}

.tk-site-footer--shop .tk-site-footer__heading-line--sky {
  background: var(--tk-footer-accent-light);
}

.tk-site-footer--shop .tk-site-footer__links {
  gap: 0.35rem;
}

.tk-site-footer--shop .tk-site-footer__links a {
  color: var(--tk-footer-muted);
  font-size: 0.78rem;
}

.tk-site-footer--shop .tk-site-footer__links a:hover {
  color: var(--tk-footer-accent);
}

.tk-site-footer--shop .tk-site-footer__cta-btn {
  padding: 0.45rem 0.85rem;
  min-width: 9rem;
  border-radius: 0.65rem;
}

.tk-site-footer--shop .tk-site-footer__cta-btn--dark {
  background: var(--tk-footer-cta-dark);
  border: 1px solid color-mix(in srgb, var(--tk-footer-accent) 35%, transparent);
  color: #fff;
}

.tk-site-footer--shop .tk-site-footer__cta-btn--dark:hover {
  background: color-mix(in srgb, var(--tk-footer-cta-dark) 85%, var(--tk-footer-accent));
}

.tk-site-footer--shop .tk-site-footer__cta-btn--light {
  background: var(--tk-footer-cta-light-bg);
  border: 1px solid var(--tk-footer-border);
  color: var(--tk-footer-cta-light-text);
}

.tk-site-footer--shop .tk-site-footer__cta-btn--light:hover {
  background: color-mix(in srgb, var(--tk-footer-accent-soft) 65%, var(--tk-footer-cta-light-bg));
}

.tk-site-footer--shop .tk-site-footer__contact-row {
  gap: 0.85rem;
  padding: 0.85rem 0;
  border-top-color: var(--tk-footer-border);
  border-bottom-color: var(--tk-footer-border);
  margin-top: 0.25rem;
}

.tk-site-footer--shop .tk-site-footer__contact-icon {
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.75rem;
}

.tk-site-footer--shop .tk-site-footer__contact-icon--primary {
  background: var(--tk-footer-accent-soft);
  border: 1px solid color-mix(in srgb, var(--tk-footer-accent) 22%, transparent);
  color: var(--tk-footer-accent);
}

.tk-site-footer--shop .tk-site-footer__contact-icon--blue {
  background: color-mix(in srgb, var(--tk-footer-accent-mid) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--tk-footer-accent-mid) 22%, transparent);
  color: var(--tk-footer-accent-mid);
}

.tk-site-footer--shop .tk-site-footer__contact-icon--sky {
  background: color-mix(in srgb, var(--tk-footer-accent-light) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--tk-footer-accent-light) 22%, transparent);
  color: var(--tk-footer-accent-light);
}

.tk-site-footer--shop .tk-site-footer__contact-item:hover .tk-site-footer__contact-icon--primary,
.tk-site-footer--shop .tk-site-footer__contact-item:hover .tk-site-footer__contact-icon--blue,
.tk-site-footer--shop .tk-site-footer__contact-item:hover .tk-site-footer__contact-icon--sky {
  background: var(--tk-footer-accent);
  border-color: var(--tk-footer-accent);
  color: #fff;
}

.tk-site-footer--shop .tk-site-footer__contact-label {
  color: color-mix(in srgb, var(--tk-footer-muted) 85%, transparent);
}

.tk-site-footer--shop .tk-site-footer__contact-value {
  color: var(--tk-footer-text);
  font-size: 0.8125rem;
}

.tk-site-footer--shop .tk-site-footer__contact-value a:hover {
  color: var(--tk-footer-accent);
}

.tk-site-footer--shop .tk-site-footer__bottom {
  padding-top: 0.65rem;
}

.tk-site-footer--shop .tk-site-footer__copyright {
  color: var(--tk-footer-muted);
  font-size: 0.78rem;
}

.tk-site-footer--shop .tk-site-footer__copyright strong {
  color: var(--tk-footer-text);
}

.tk-site-footer--shop .tk-site-footer__copyright a {
  color: var(--tk-footer-accent);
}

.tk-site-footer--shop .tk-site-footer__bottom-links a {
  color: var(--tk-footer-muted);
  font-size: 0.58rem;
}

.tk-site-footer--shop .tk-site-footer__bottom-links a:hover {
  color: var(--tk-footer-accent);
}

.tk-shop-shell > .tk-site-footer--shop {
  margin-top: auto;
}

@media (min-width: 1024px) {
  .tk-site-footer--shop .tk-site-footer__grid {
    gap: 1.35rem;
  }
}
