/**
 * Pied de page marketing custom — css_footer_custom = 99.
 * Réseaux : @import (pages sans main custom — tokens via root dans socials-unified).
 */
@import url("socials-unified.css");

#footer.arkt-footer {
  position: relative;
  color: var(--arkt-text);
  overflow: hidden;
  border-top: var(--arkt-page-border-width) solid var(--arkt-page-border-color);
  text-align: left;
}

#footer.arkt-footer .arkt-footer__arcs {
  position: absolute;
  inset: auto var(--arkt-footer-arcs-inset-h, 10%) var(--arkt-footer-arcs-inset-v, -40%) var(--arkt-footer-arcs-inset-h, 10%);
  height: 80%;
  border: var(--arkt-page-border-width) solid var(--arkt-page-border-color);
  border-radius: 50%;
  pointer-events: none;
  opacity: var(--arkt-opacity-footer-arcs);
}

#footer.arkt-footer .arkt-footer__inner {
  position: relative;
  z-index: 1;
  padding-top: 3rem;
  padding-bottom: 2rem;
  text-align: left;
}

/* Le utilitaire .full-width centre avec margin auto ; ici on calle le bloc à gauche */
#footer.arkt-footer .arkt-footer__inner.full-width {
  margin-left: 0;
  margin-right: auto;
}

#footer.arkt-footer .arkt-footer__grid {
  align-items: start;
  justify-items: start;
}

#footer.arkt-footer .arkt-footer__brand {
  display: flex;
  flex-direction: column;
  gap: var(--arkt-space-footer-brand-gap);
}

#footer.arkt-footer .arkt-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  text-decoration: none;
  color: var(--arkt-color-white);
  font-weight: var(--arkt-type-h1-weight);
  font-size: var(--arkt-type-footer-brand-size);
  font-family: var(--arkt-font-family-sans);
}

#footer.arkt-footer .arkt-brand__mark {
  flex-shrink: 0;
}

#footer.arkt-footer .arkt-brand__logo {
  height: 26px;
  display: block;
  object-fit: contain;
}

#footer.arkt-footer .arkt-footer__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--arkt-space-header-actions-gap);
}

/* Boutons hors pastilles auth (taille pied) ; pastilles = même gabarit que le header */
#footer.arkt-footer .arkt-footer__actions .arkt-btn:not(.arkt-header__pill) {
  font-size: 0.82rem;
  padding: 0.5rem 1.05rem;
}

#footer.arkt-footer .arkt-footer__actions .arkt-header__pill.arkt-btn {
  padding: 0.55rem 1.15rem;
  font-size: 0.9rem;
}

#footer.arkt-footer .arkt-footer__links {
  list-style: none;
  margin: 0;
  padding: 0;
}

#footer.arkt-footer .arkt-footer__links li {
  margin-bottom: var(--arkt-space-footer-links-mb);
}

#footer.arkt-footer .arkt-footer__links a {
  color: var(--arkt-rgba-white-65);
  text-decoration: none;
  font-size: 0.8rem;
}

#footer.arkt-footer .arkt-footer__links a:hover {
  color: var(--arkt-color-white);
}

#portfolio_page #footer.arkt-footer .arkt-footer__social {
  margin-top: 0.75rem;
}

/*
 * Liste ul.social-medias (structure/socials.php) : voir socials-unified.css
 */

/* Bloc légal intégré au footer custom (id distinct du footer#legal global dans structure/footer.php) */
#footer.arkt-footer #arkt-footer-legal.arkt-footer__legal {
  margin-top: 2.5rem;
  padding-top: 1.25rem;
  border-top: var(--arkt-page-border-width) solid var(--arkt-page-border-color);
}

/* Évite le doublon : structure/footer.php inclut toujours un second footer#legal après le footer custom */
#footer.arkt-footer:has(nav.arkt-footer__legal) + footer#legal {
  display: none !important;
}

#footer.arkt-footer .arkt-footer__legal-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 0.35rem 1.25rem;
  text-align: left;
}

#footer.arkt-footer .arkt-footer__legal-list li {
  margin: 0;
}

#footer.arkt-footer .arkt-footer__legal-list a {
  color: var(--arkt-rgba-white-55);
  text-decoration: none;
  font-size: 0.65rem;
  transition: color 0.2s ease;
}

#footer.arkt-footer .arkt-footer__legal-list a:hover {
  color: var(--arkt-color-white);
}

/* « Quitter le mode plein écran » (structure/admin/footer.php : #visitor_mode + .arkt-promo-btn) */
#visitor_mode,
#visitor_mode.arkt-visitor-mode {
  position: fixed;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  bottom: max(1rem, env(safe-area-inset-bottom, 0px));
  width: min(calc(100vw - 2rem), 22rem);
  max-width: 100%;
  margin: 0;
  padding: 0 1rem;
  box-sizing: border-box;
  text-align: center;
  z-index: 9500 !important;
  pointer-events: none;
  font-family: var(--arkt-font-family-sans, inherit);
}

#visitor_mode .arkt-promo-btn,
#visitor_mode.arkt-visitor-mode .arkt-visitor-mode__toggle {
  pointer-events: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  width: 100%;
  margin: 0;
  padding: 0.65rem 1.15rem;
  border-radius: var(--arkt-radius-pill, 999px);
  font-weight: var(--arkt-btn-font-weight);
  font-size: 0.875rem;
  line-height: 1.2;
  text-decoration: none;
  box-sizing: border-box;
  color: var(--arkt-btn-cta-text);
  background: var(--arkt-btn-cta-bg);
  border: var(--arkt-btn-cta-border);
  box-shadow: var(--arkt-btn-cta-shadow);
  backdrop-filter: var(--arkt-hub-glass-blur);
  -webkit-backdrop-filter: var(--arkt-hub-glass-blur);
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

#visitor_mode .arkt-promo-btn:hover,
#visitor_mode.arkt-visitor-mode .arkt-visitor-mode__toggle:hover {
  background: var(--arkt-btn-cta-bg-hover);
  border: var(--arkt-btn-cta-border);
  box-shadow: var(--arkt-btn-cta-shadow-hover);
  transform: translateY(-2px);
  filter: none;
}

/* Liens .arkt-btn--light hors #portfolio_page : garder le contraste */
#visitor_mode a.arkt-btn--light,
#visitor_mode.arkt-visitor-mode a.arkt-btn--light,
#visitor_mode a.arkt-btn--light:link,
#visitor_mode a.arkt-btn--light:visited,
#visitor_mode a.arkt-btn--light:hover,
#visitor_mode a.arkt-btn--light:active {
  color: var(--arkt-text-on-light) !important;
}

@media screen and (max-width: 600px) {
  #visitor_mode,
  #visitor_mode.arkt-visitor-mode {
    width: min(92vw, 22rem);
  }

  #visitor_mode .arkt-promo-btn,
  #visitor_mode.arkt-visitor-mode .arkt-visitor-mode__toggle {
    width: 100%;
    justify-content: center;
  }
}

/* Espace bas de page pour ne pas masquer le dernier contenu sous le bouton fixe */
body:has(#visitor_mode) #portfolio_page,
body:has(#visitor_mode.arkt-visitor-mode) #portfolio_page {
  padding-bottom: 5.5rem;
}

/* Connecté (visitor = 0) : entrée « Mode visiteur » dans la barre d’aperçu */
body.portfolio-editor #arktefakt-visualiser #arktefakt-editor-bar .arkt-visitor-mode__entry {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.45rem 0.85rem;
  border-radius: var(--arkt-radius-pill);
  border: 1px solid var(--arkt-rgba-border-white-22);
  background: var(--arkt-rgba-white-06);
  color: var(--arkt-color-white) !important;
  text-decoration: none;
  font-weight: var(--arkt-btn-font-weight);
  font-size: 0.8125rem;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease;
}

body.portfolio-editor #arktefakt-visualiser #arktefakt-editor-bar .arkt-visitor-mode__entry:hover {
  border-color: var(--arkt-rgba-border-white-45);
  background: var(--arkt-rgba-white-10);
}

body.portfolio-editor #arktefakt-visualiser #arktefakt-editor-bar .arkt-visitor-mode__entry svg {
  flex-shrink: 0;
}

@media (prefers-reduced-motion: reduce) {
  #footer.arkt-footer .arkt-footer__legal-list a {
    transition: none;
  }
}

@media screen and (max-width: 650px) {
  #footer.arkt-footer .arkt-footer__actions {
    justify-content: flex-start;
  }
}

/*
 * assets/portfolios/css/core/fonts.css : `p, span, a, .arkt-btn { font-size: 1em !important }`
 * écrase les tailles sans !important — on réapplique avec #portfolio_page + !important.
 */
#portfolio_page #footer.arkt-footer a.arkt-brand,
#portfolio_page #footer.arkt-footer a.arkt-brand > span:not([aria-hidden="true"]) {
  font-size: var(--arkt-type-footer-brand-size) !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
}

#portfolio_page #footer.arkt-footer .arkt-footer__col h3 {
  margin: 0 0 1rem;
  font-size: 0.82rem !important;
  line-height: 1.35 !important;
  font-weight: var(--arkt-type-h3-weight);
  color: var(--arkt-text);
  text-align: left;
}

#portfolio_page #footer.arkt-footer .arkt-footer__links a {
  font-size: 0.75rem !important;
  line-height: 1.45 !important;
}

#portfolio_page #footer.arkt-footer .arkt-footer__legal-list a {
  font-size: 0.62rem !important;
  line-height: 1.45 !important;
}

#portfolio_page #footer.arkt-footer .arkt-footer__actions .arkt-btn:not(.arkt-header__pill) {
  font-size: 0.78rem !important;
  line-height: 1.25 !important;
  padding: 0.45rem 0.95rem !important;
  letter-spacing: normal !important;
}

#portfolio_page #footer.arkt-footer .arkt-footer__actions .arkt-header__pill.arkt-btn {
  font-size: 0.9rem !important;
  line-height: 1.25 !important;
  padding: 0.55rem 1.15rem !important;
  letter-spacing: normal !important;
}

/* Mode éditeur : hub + fonts.css chargés après — même règles, spécificité accrue. */
body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer a.arkt-brand,
body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer a.arkt-brand > span:not([aria-hidden="true"]) {
  font-size: var(--arkt-type-footer-brand-size) !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__col h3 {
  margin: 0 0 1rem !important;
  font-size: 0.82rem !important;
  line-height: 1.35 !important;
  font-weight: var(--arkt-type-h3-weight) !important;
  color: var(--arkt-text) !important;
  text-align: left !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__links a {
  font-size: 0.75rem !important;
  line-height: 1.45 !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__legal-list a {
  font-size: 0.62rem !important;
  line-height: 1.45 !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__actions .arkt-btn:not(.arkt-header__pill) {
  font-size: 0.78rem !important;
  line-height: 1.25 !important;
  padding: 0.45rem 0.95rem !important;
  letter-spacing: normal !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__actions .arkt-header__pill.arkt-btn {
  font-size: 0.9rem !important;
  line-height: 1.25 !important;
  padding: 0.55rem 1.15rem !important;
  letter-spacing: normal !important;
}

