
:root{
  --td-navy:#10225f;
  --td-purple:#6536d7;
  --td-pink:#ed3b7b;
  --td-line:#e8eaf2;
  --td-text:#101828;
  --td-muted:#667085;
}

.td-shell{
  font-family:Inter,Arial,sans-serif;
  color:var(--td-text);
  max-width:1840px;
  margin:16px auto;
  padding:0 14px;
  box-sizing:border-box;
}

.td-header,
.td-trustbar{
  background:#fff;
  border:1px solid var(--td-line);
  border-radius:20px;
  box-shadow:0 12px 36px rgba(16,34,95,.08);
}

.td-header{
  position:relative;
  overflow:visible;
}

.td-header__main{
  min-height:118px;
  display:flex;
  align-items:center;
  gap:16px;
  padding:14px 20px;
}

.td-brand--trouvix{
  display:flex;
  flex:0 0 285px;
  align-items:center;
}

.td-brand--trouvix img{
  display:block;
  width:100%;
  height:auto;
  max-height:96px;
  object-fit:contain;
}

.td-nav{
  flex:1;
  min-width:0;
}

.td-menu,
.td-mobile-menu{
  list-style:none;
  margin:0;
  padding:0;
}

.td-menu{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  flex-wrap:nowrap;
  white-space:nowrap;
}

.td-menu>li{
  position:relative;
}

.td-menu a{
  display:block;
  text-decoration:none;
  color:var(--td-navy);
  font-weight:750;
  font-size:14px;
  line-height:1.15;
  padding:12px 10px;
  border-radius:11px;
}

.td-menu a:hover,
.td-menu .current-menu-item>a{
  background:#f1edff;
  color:var(--td-purple);
}

.td-menu .sub-menu{
  display:none;
  position:absolute;
  top:100%;
  left:0;
  z-index:99;
  list-style:none;
  margin:0;
  padding:8px;
  min-width:220px;
  background:#fff;
  border:1px solid var(--td-line);
  border-radius:14px;
  box-shadow:0 16px 40px rgba(16,24,40,.12);
}

.td-menu li:hover>.sub-menu{
  display:block;
}

.td-header__actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
  margin-left:auto;
}

.td-vixia{
  display:flex;
  width:210px;
  height:78px;
  padding-left:16px;
  border-left:1px solid var(--td-line);
  align-items:center;
}

.td-vixia img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.td-icon-button{
  position:relative;
  width:46px;
  height:46px;
  border:1px solid var(--td-line);
  border-radius:14px;
  display:grid;
  place-items:center;
  text-decoration:none;
  background:#fff;
  font-size:20px;
}

.td-icon-button b{
  position:absolute;
  right:-5px;
  top:-7px;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  background:var(--td-pink);
  color:#fff;
  font-size:11px;
  display:grid;
  place-items:center;
}

.td-account{
  min-height:48px;
  padding:0 16px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--td-purple),#7950e8);
  color:#fff!important;
  text-decoration:none;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(101,54,215,.22);
  box-sizing:border-box;
}

.td-menu-toggle{
  display:none;
  width:46px;
  height:46px;
  border:1px solid var(--td-line);
  border-radius:14px;
  background:#fff;
  padding:11px;
}

.td-menu-toggle__line{
  display:block;
  height:2px;
  background:var(--td-navy);
  margin:5px 0;
  border-radius:2px;
  transition:transform .22s ease,opacity .18s ease;
}

.td-mobile-backdrop{
  position:fixed;
  inset:0;
  z-index:9997;
  background:rgba(16,34,95,.32);
  backdrop-filter:blur(2px);
  opacity:0;
  transition:opacity .22s ease;
}

.td-mobile-backdrop.is-open{opacity:1}

.td-mobile-panel{
  position:absolute;
  left:14px;
  right:14px;
  top:calc(100% + 8px);
  z-index:9998;
  background:#fff;
  border:1px solid var(--td-line);
  border-radius:18px;
  box-shadow:0 24px 60px rgba(16,24,40,.18);
  padding:10px 20px 20px;
  transform:translateY(-8px);
  opacity:0;
  transition:transform .22s ease,opacity .22s ease;
}

.td-mobile-panel.is-open{
  transform:translateY(0);
  opacity:1;
}

.td-mobile-menu li{
  border-bottom:1px solid #f0f1f5;
}

.td-mobile-menu a{
  display:block;
  padding:15px 4px;
  color:var(--td-navy);
  font-weight:750;
  text-decoration:none;
}

.td-mobile-menu .sub-menu{
  list-style:none;
  display:block;
  margin:0 0 8px;
  padding:4px 10px 8px 18px;
  background:#faf8ff;
  border-radius:12px;
}

.td-mobile-menu .sub-menu a{
  padding:10px 4px;
  font-size:14px;
  color:#344054;
}

.td-mobile-vixia{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:18px;
  padding:12px;
  border:1px solid #e2d8ff;
  background:#faf8ff;
  border-radius:16px;
  text-decoration:none;
  color:var(--td-navy);
}

.td-mobile-vixia img{
  width:118px;
  height:72px;
  object-fit:contain;
}

.td-mobile-vixia span{
  display:flex;
  flex-direction:column;
}

.td-mobile-vixia strong{
  color:var(--td-pink);
  font-size:17px;
}

.td-mobile-vixia small{
  margin-top:3px;
  color:var(--td-muted);
}

/* Correction ferme du bouton mobile */
.td-mobile-panel a.td-account--mobile{
  display:flex!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  min-height:58px!important;
  height:58px!important;
  margin:16px 0 0!important;
  padding:0 20px!important;
  box-sizing:border-box!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-size:17px!important;
  line-height:1!important;
  border-radius:15px!important;
  flex:none!important;
}

.td-mobile-panel a.td-account--mobile::before{
  content:"♙";
  display:inline-block;
  margin-right:9px;
  font-size:19px;
  line-height:1;
}

.td-trustbar{
  margin-top:10px;
  padding:18px 22px;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:14px;
}

.td-trustbar>div{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.td-trustbar>div>span{
  font-size:27px;
  color:var(--td-purple);
  flex:0 0 auto;
}

.td-trustbar p{margin:0;line-height:1.25}
.td-trustbar strong{display:block;color:var(--td-navy);font-size:14px}
.td-trustbar small{display:block;margin-top:4px;color:var(--td-muted);font-size:12px}

.screen-reader-text{
  position:absolute!important;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

#trouvix-design-test-header{
  position:relative;
  z-index:9999;
}

.td-footer-fallback{width:100%}
body.td-mobile-menu-open{overflow:hidden}

@media(max-width:1450px){
  .td-header__main{gap:11px}
  .td-brand--trouvix{flex-basis:235px}
  .td-vixia{width:165px}
  .td-menu a{font-size:13px;padding:11px 7px}
  .td-account{padding:0 13px}
}

@media(max-width:1220px){
  .td-header__main{min-height:94px;padding:13px 16px}
  .td-menu-toggle{display:block;flex:0 0 auto}
  .td-nav--desktop{display:none}
  .td-brand--trouvix{flex:1;max-width:250px}
  .td-brand--trouvix img{max-height:76px}
  .td-vixia{width:130px;height:64px;border:0;padding:0}
  .td-header__main>.td-header__actions>.td-account span:last-child{display:none}
  .td-header__main>.td-header__actions>.td-account{width:48px;padding:0}
  .td-trustbar{grid-template-columns:repeat(3,1fr)}
}

@media(min-width:1221px){
  .td-mobile-panel{display:none!important}
}

@media(max-width:620px){
  .td-shell{padding:0 10px;margin:12px auto}
  .td-header{border-radius:16px}
  .td-header__main{padding:10px;gap:8px}
  .td-menu-toggle{width:42px;height:42px}
  .td-brand--trouvix{max-width:175px}
  .td-brand--trouvix img{max-height:62px}
  .td-vixia{width:65px;height:52px}
  .td-icon-button{width:42px;height:42px}
  .td-header__main>.td-header__actions>.td-account{width:42px;min-height:42px}
  .td-trustbar{display:none}
  .td-mobile-panel{left:8px;right:8px;top:calc(100% + 6px);padding:8px 14px 16px;border-radius:16px}
  .td-mobile-vixia img{width:96px;height:62px}
}

@media(max-width:430px){
  .td-brand--trouvix{max-width:150px}
  .td-vixia{display:none}
  .td-header__actions{gap:6px}
}


/* 1.1.0 — finition graphique générale de l'en-tête */
.td-header{
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.96)),
    linear-gradient(90deg,rgba(101,54,215,.05),rgba(237,59,123,.04));
  border-color:rgba(101,54,215,.12);
  box-shadow:
    0 18px 50px rgba(16,34,95,.10),
    0 2px 8px rgba(16,24,40,.04);
}

.td-brand--trouvix{
  transition:transform .22s ease,filter .22s ease;
}
.td-brand--trouvix:hover{
  transform:translateY(-2px);
  filter:drop-shadow(0 8px 14px rgba(16,34,95,.12));
}

.td-menu>li>a{
  position:relative;
  transition:color .18s ease,background-color .18s ease,transform .18s ease;
}
.td-menu>li>a:hover{
  transform:translateY(-1px);
}
.td-menu>li>a::before{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:5px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--td-purple),var(--td-pink));
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .2s ease;
}
.td-menu>li>a:hover::before,
.td-menu>li.current-menu-item>a::before,
.td-menu>li.current-menu-ancestor>a::before{
  transform:scaleX(1);
}

.td-vixia{
  position:relative;
  border-left-color:rgba(101,54,215,.12);
  transition:transform .22s ease;
}
.td-vixia::after{
  content:"";
  position:absolute;
  inset:8px 0 8px 12px;
  z-index:-1;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(101,54,215,.06),rgba(237,59,123,.06));
  opacity:0;
  transition:opacity .22s ease;
}
.td-vixia:hover{
  transform:translateY(-2px);
}
.td-vixia:hover::after{
  opacity:1;
}

.td-icon-button{
  color:var(--td-navy);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.td-icon-button:hover{
  transform:translateY(-2px);
  border-color:rgba(101,54,215,.26);
  box-shadow:0 10px 24px rgba(16,34,95,.10);
}

.td-account{
  position:relative;
  overflow:hidden;
  transition:transform .18s ease,box-shadow .18s ease;
}
.td-account::after{
  content:"";
  position:absolute;
  top:-80%;
  left:-35%;
  width:32%;
  height:250%;
  transform:rotate(24deg);
  background:rgba(255,255,255,.24);
  transition:left .45s ease;
}
.td-account:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(101,54,215,.30);
}
.td-account:hover::after{
  left:120%;
}

.td-trustbar{
  border-color:rgba(101,54,215,.10);
  background:linear-gradient(180deg,#fff,#fbfaff);
}
.td-trustbar>div{
  padding:8px 10px;
  border-radius:12px;
  transition:background-color .18s ease,transform .18s ease;
}
.td-trustbar>div:hover{
  background:#f6f2ff;
  transform:translateY(-1px);
}
.td-trustbar>div>span{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:linear-gradient(135deg,rgba(101,54,215,.10),rgba(237,59,123,.10));
}

@media(max-width:1220px){
  .td-header{
    box-shadow:0 14px 34px rgba(16,34,95,.10);
  }
  .td-menu-toggle{
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
  }
  .td-menu-toggle:hover{
    transform:translateY(-1px);
    border-color:rgba(101,54,215,.28);
    box-shadow:0 8px 18px rgba(16,34,95,.08);
  }
}

@media(max-width:620px){
  .td-header{
    border-radius:18px;
  }
  .td-mobile-panel{
    box-shadow:0 24px 70px rgba(16,34,95,.22);
  }
}


/* 1.1.1 — visibilité du bouton mobile et menu long */
@media(max-width:1220px){
  .td-menu-toggle{
    background:linear-gradient(135deg,var(--td-purple),#7950e8)!important;
    border-color:transparent!important;
    box-shadow:0 10px 24px rgba(101,54,215,.24)!important;
  }

  .td-menu-toggle__line{
    background:#fff!important;
    height:3px!important;
    border-radius:999px!important;
  }

  .td-menu-toggle:hover{
    background:linear-gradient(135deg,#5a2ec8,#6f45df)!important;
    box-shadow:0 12px 28px rgba(101,54,215,.30)!important;
  }

  .td-mobile-panel{
    max-height:calc(100vh - 125px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }

  .td-mobile-panel::-webkit-scrollbar{
    width:8px;
  }

  .td-mobile-panel::-webkit-scrollbar-track{
    background:transparent;
  }

  .td-mobile-panel::-webkit-scrollbar-thumb{
    background:rgba(101,54,215,.28);
    border-radius:999px;
  }
}

@media(max-width:620px){
  .td-mobile-panel{
    max-height:calc(100vh - 105px)!important;
  }
}


/* 1.1.2 — icônes, bouton Menu et animation VixIA */
.td-svg-icon{
  width:22px;
  height:22px;
  display:block;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.td-icon-button .td-svg-icon{
  color:var(--td-navy);
}

.td-account .td-svg-icon{
  color:#fff;
  width:21px;
  height:21px;
}

.td-menu-toggle{
  width:auto!important;
  min-width:92px;
  padding:0 14px!important;
  display:none;
  align-items:center;
  justify-content:center;
  gap:9px;
}

.td-menu-toggle__icon{
  width:22px;
  height:22px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  flex:0 0 auto;
}

.td-menu-toggle__label{
  color:#fff;
  font-size:14px;
  font-weight:800;
  line-height:1;
  letter-spacing:.01em;
}

.td-menu-toggle__line{
  width:22px;
  margin:3px 0!important;
}

.td-vixia img{
  animation:td-vixia-float 3.2s ease-in-out infinite;
  transform-origin:center bottom;
  will-change:transform;
}

.td-vixia:hover img{
  animation-duration:1.8s;
}

@keyframes td-vixia-float{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-4px) rotate(-1deg)}
}

@media (prefers-reduced-motion:reduce){
  .td-vixia img{
    animation:none!important;
  }
}

@media(max-width:1220px){
  .td-menu-toggle{
    display:flex!important;
  }
}

@media(max-width:620px){
  .td-menu-toggle{
    min-width:88px;
    height:42px!important;
    padding:0 12px!important;
  }

  .td-menu-toggle__label{
    font-size:13px;
  }

  .td-menu-toggle__icon{
    width:20px;
  }

  .td-menu-toggle__line{
    width:20px;
  }
}

@media(max-width:430px){
  .td-menu-toggle{
    min-width:78px;
    padding:0 10px!important;
    gap:7px;
  }

  .td-menu-toggle__label{
    font-size:12px;
  }
}

/* Neutralise l'ancienne icône générée devant le bouton mobile */
.td-mobile-panel a.td-account--mobile::before{
  content:none!important;
}


/* 1.1.3 — retour au hamburger classique et icône Mon espace blanche */
.td-menu-toggle{
  width:46px!important;
  min-width:46px!important;
  height:46px!important;
  padding:11px!important;
  display:none!important;
  align-items:initial!important;
  justify-content:initial!important;
  gap:0!important;
}

.td-menu-toggle__label,
.td-menu-toggle__icon{
  display:none!important;
}

.td-menu-toggle__line{
  display:block!important;
  width:100%!important;
  height:3px!important;
  margin:5px 0!important;
  border-radius:999px!important;
  background:#fff!important;
}

.td-account .td-svg-icon,
.td-mobile-panel .td-account--mobile .td-svg-icon{
  color:#fff!important;
  stroke:#fff!important;
}

@media(max-width:1220px){
  .td-menu-toggle{
    display:block!important;
  }
}

@media(max-width:620px){
  .td-menu-toggle{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    padding:10px!important;
  }
}


/* 1.2.0 — activation globale contrôlée */
body.trouvix-design-test-page #trouvix-design-test-header{
  width:100%;
}


/* 1.2.4 — en-tête fixe optionnel */
.td-shell--sticky{
  position:sticky;
  top:0;
  z-index:9996;
  transition:padding .22s ease,margin .22s ease;
}

body.admin-bar .td-shell--sticky{
  top:32px;
}

.td-shell--sticky .td-header,
.td-shell--sticky .td-header__main,
.td-shell--sticky .td-brand--trouvix img,
.td-shell--sticky .td-vixia{
  transition:min-height .22s ease,height .22s ease,max-height .22s ease,padding .22s ease,box-shadow .22s ease;
}

.td-shell--sticky.is-scrolled{
  margin-top:6px;
  margin-bottom:8px;
}

.td-shell--sticky.is-scrolled .td-header{
  box-shadow:0 14px 40px rgba(16,34,95,.16);
}

.td-shell--sticky.is-scrolled .td-header__main{
  min-height:82px;
  padding-top:8px;
  padding-bottom:8px;
}

.td-shell--sticky.is-scrolled .td-brand--trouvix img{
  max-height:68px;
}

.td-shell--sticky.is-scrolled .td-vixia{
  height:58px;
}

.td-shell--sticky.is-scrolled .td-trustbar{
  display:none;
}

@media(max-width:782px){
  body.admin-bar .td-shell--sticky{
    top:46px;
  }
}

@media(max-width:620px){
  .td-shell--sticky{
    position:relative;
    top:auto!important;
  }
  .td-shell--sticky.is-scrolled{
    margin-top:12px;
    margin-bottom:12px;
  }
  .td-shell--sticky.is-scrolled .td-header__main{
    min-height:94px;
    padding:10px;
  }
  .td-shell--sticky.is-scrolled .td-brand--trouvix img{
    max-height:62px;
  }
}


/* 1.2.5 — correction du mode sticky */
#trouvix-design-test-header{
  overflow:visible!important;
}

.td-shell--sticky{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:10px 14px!important;
  z-index:999999!important;
  pointer-events:none;
}

.td-shell--sticky > *{
  pointer-events:auto;
}

body.admin-bar .td-shell--sticky{
  top:32px!important;
}

body.td-has-sticky-header{
  padding-top:190px!important;
}

body.td-has-sticky-header.td-sticky-compact{
  padding-top:108px!important;
}

.td-shell--sticky.is-scrolled{
  margin:0!important;
  padding-top:6px!important;
  padding-bottom:6px!important;
}

@media(max-width:782px){
  body.admin-bar .td-shell--sticky{
    top:46px!important;
  }
}

@media(max-width:620px){
  .td-shell--sticky{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:auto!important;
    max-width:1840px!important;
    margin:12px auto!important;
    padding:0 10px!important;
    pointer-events:auto;
  }

  body.td-has-sticky-header,
  body.td-has-sticky-header.td-sticky-compact{
    padding-top:0!important;
  }
}


/* 1.3.0 — première version du pied de page */
.td-footer{
  margin:42px auto 0;
  padding:34px 28px 18px;
  max-width:1840px;
  box-sizing:border-box;
  background:
    radial-gradient(circle at 90% 10%,rgba(237,59,123,.13),transparent 26%),
    radial-gradient(circle at 10% 0%,rgba(101,54,215,.16),transparent 28%),
    linear-gradient(135deg,#101f57,#172b73 58%,#202f79);
  color:#fff;
  border-radius:26px 26px 0 0;
  box-shadow:0 -8px 30px rgba(16,34,95,.10);
}

.td-footer__inner{
  display:grid;
  grid-template-columns:1.1fr 2fr .9fr;
  gap:38px;
  align-items:start;
}

.td-footer__brand img{
  width:230px;
  max-width:100%;
  height:auto;
  padding:10px 14px;
  border-radius:18px;
  background:#fff;
}

.td-footer__brand p{
  margin:16px 0 0;
  max-width:320px;
  font-size:17px;
  font-weight:700;
  line-height:1.45;
  color:#f4efff;
}

.td-footer__links{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:26px;
}

.td-footer__links h3{
  margin:0 0 14px;
  color:#fff;
  font-size:15px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.td-footer__links a{
  display:block;
  margin:9px 0;
  color:#dce3ff;
  text-decoration:none;
  font-size:14px;
  transition:color .18s ease,transform .18s ease;
}

.td-footer__links a:hover{
  color:#fff;
  transform:translateX(3px);
}

.td-footer__vixia{
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(5px);
}

.td-footer__vixia img{
  width:115px;
  height:76px;
  object-fit:contain;
  animation:td-vixia-float 3.2s ease-in-out infinite;
}

.td-footer__vixia span{
  display:flex;
  flex-direction:column;
}

.td-footer__vixia strong{
  font-size:20px;
}

.td-footer__vixia small{
  margin-top:4px;
  color:#ece7ff;
  line-height:1.3;
}

.td-footer__bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-top:30px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.14);
  color:#cfd8ff;
  font-size:13px;
}

@media(max-width:980px){
  .td-footer__inner{
    grid-template-columns:1fr 1.5fr;
  }
  .td-footer__vixia{
    grid-column:1 / -1;
    max-width:420px;
  }
}

@media(max-width:720px){
  .td-footer{
    margin-top:28px;
    padding:26px 18px 16px;
    border-radius:20px 20px 0 0;
  }
  .td-footer__inner{
    grid-template-columns:1fr;
    gap:28px;
  }
  .td-footer__links{
    grid-template-columns:1fr 1fr;
  }
  .td-footer__vixia{
    grid-column:auto;
  }
  .td-footer__bottom{
    flex-direction:column;
    gap:8px;
  }
}

@media(max-width:480px){
  .td-footer__links{
    grid-template-columns:1fr;
  }
  .td-footer__brand img{
    width:200px;
  }
}


/* 1.3.2 — menu WordPress dans le pied de page */
.td-footer-menu{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:26px;
  list-style:none;
  margin:0;
  padding:0;
}

.td-footer-menu>li{
  margin:0;
  padding:0;
}

.td-footer-menu>li>a{
  display:block;
  margin:0 0 14px;
  color:#fff;
  font-size:15px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.td-footer-menu .sub-menu{
  list-style:none;
  margin:0;
  padding:0;
}

.td-footer-menu .sub-menu a{
  display:block;
  margin:9px 0;
  color:#dce3ff;
  text-decoration:none;
  font-size:14px;
  text-transform:none;
  letter-spacing:0;
  transition:color .18s ease,transform .18s ease;
}

.td-footer-menu .sub-menu a:hover{
  color:#fff;
  transform:translateX(3px);
}

@media(max-width:720px){
  .td-footer-menu{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:480px){
  .td-footer-menu{
    grid-template-columns:1fr;
  }
}


/* 1.3.4 — réseaux sociaux du pied de page */
.td-footer__socials{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.td-footer__socials a{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#fff;
  text-decoration:none;
  font-weight:800;
  font-size:16px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.09);
  transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease;
}

.td-footer__socials a:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.16);
  box-shadow:0 10px 24px rgba(0,0,0,.14);
}

.td-footer__socials a[aria-label="YouTube"] span{
  font-size:14px;
  transform:translateX(1px);
}


/* 1.4.0 — icônes sociales configurables */
.td-footer__socials a svg{
  width:20px;
  height:20px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.td-footer__socials a[aria-label="Facebook"] svg,
.td-footer__socials a[aria-label="Linkedin"] svg{
  fill:currentColor;
  stroke:none;
}

.td-footer__socials a[aria-label="Youtube"] svg path:first-child{
  fill:currentColor;
  stroke:none;
}

.td-footer__socials a[aria-label="Youtube"] svg path:last-child{
  fill:#172b73;
  stroke:none;
}


/* 1.4.1 — réseaux sociaux avec titres */
.td-footer__socials{
  display:grid;
  grid-template-columns:1fr;
  gap:9px;
}

.td-footer__socials a{
  width:auto;
  height:auto;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  padding:8px 12px;
  text-align:left;
  border-radius:12px;
}

.td-footer__social-icon{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:9px;
  background:rgba(255,255,255,.10);
}

.td-footer__social-title{
  min-width:0;
  font-size:13px;
  font-weight:700;
  line-height:1.25;
  color:#fff;
}

.td-footer__socials a svg{
  width:18px;
  height:18px;
}


/* 1.4.2 — contraste renforcé des boutons sociaux */
.td-footer__socials{
  gap:11px;
}

.td-footer__socials a{
  min-height:60px;
  padding:9px 14px;
  gap:13px;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(255,255,255,.09);
  box-shadow:0 8px 18px rgba(0,0,0,.08);
}

.td-footer__socials a:hover{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.34);
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(0,0,0,.16);
}

.td-footer__social-icon{
  width:42px;
  height:42px;
  border-radius:13px;
  background:#fff;
  color:var(--td-navy);
  box-shadow:0 6px 14px rgba(0,0,0,.12);
  transition:background .2s ease,color .2s ease,transform .2s ease;
}

.td-footer__social-title{
  font-size:14px;
  line-height:1.3;
}

.td-footer__socials a svg{
  width:22px;
  height:22px;
}

/* Couleurs officielles approximatives des réseaux */
.td-footer__socials a[data-social-network="facebook"] .td-footer__social-icon{
  color:#1877f2;
}

.td-footer__socials a[data-social-network="instagram"] .td-footer__social-icon{
  color:#d62976;
}

.td-footer__socials a[data-social-network="youtube"] .td-footer__social-icon{
  color:#ff0000;
}

.td-footer__socials a[data-social-network="linkedin"] .td-footer__social-icon{
  color:#0a66c2;
}

.td-footer__socials a[data-social-network="tiktok"] .td-footer__social-icon,
.td-footer__socials a[data-social-network="x"] .td-footer__social-icon{
  color:#111;
}

/* Survol : fond de l'icône coloré, pictogramme blanc */
.td-footer__socials a[data-social-network="facebook"]:hover .td-footer__social-icon{
  background:#1877f2;
  color:#fff;
}

.td-footer__socials a[data-social-network="instagram"]:hover .td-footer__social-icon{
  background:linear-gradient(135deg,#f58529,#dd2a7b 55%,#8134af);
  color:#fff;
}

.td-footer__socials a[data-social-network="youtube"]:hover .td-footer__social-icon{
  background:#ff0000;
  color:#fff;
}

.td-footer__socials a[data-social-network="linkedin"]:hover .td-footer__social-icon{
  background:#0a66c2;
  color:#fff;
}

.td-footer__socials a[data-social-network="tiktok"]:hover .td-footer__social-icon,
.td-footer__socials a[data-social-network="x"]:hover .td-footer__social-icon{
  background:#111;
  color:#fff;
}

.td-footer__socials a:hover .td-footer__social-icon{
  transform:scale(1.04);
}

/* YouTube : triangle visible sur fond blanc et au survol */
.td-footer__socials a[data-social-network="youtube"] .td-footer__social-icon svg path:first-child{
  fill:currentColor;
  stroke:none;
}

.td-footer__socials a[data-social-network="youtube"] .td-footer__social-icon svg path:last-child{
  fill:#fff;
  stroke:none;
}

@media(max-width:720px){
  .td-footer__socials a{
    min-height:56px;
  }

  .td-footer__social-icon{
    width:40px;
    height:40px;
  }
}


/* 1.4.3 — bloc Liens utiles du pied de page */
.td-footer__useful{
  padding:16px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:rgba(255,255,255,.07);
}

.td-footer__useful h3{
  margin:0 0 12px;
  color:#fff;
  font-size:15px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.td-footer__useful-list{
  display:grid;
  gap:8px;
}

.td-footer__useful-list a{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:42px;
  padding:7px 10px;
  color:#fff;
  text-decoration:none;
  border-radius:12px;
  background:rgba(255,255,255,.08);
  transition:transform .18s ease,background-color .18s ease;
}

.td-footer__useful-list a:hover{
  transform:translateX(3px);
  background:rgba(255,255,255,.14);
}

.td-footer__useful-icon{
  width:32px;
  height:32px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#fff;
  color:var(--td-purple);
}

.td-footer__useful-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.td-footer__useful-list a>span:last-child{
  font-size:13px;
  font-weight:700;
  line-height:1.3;
}


/* 1.4.4 — bloc Contact du pied de page */
.td-footer__contact{
  padding:16px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:rgba(255,255,255,.07);
}

.td-footer__contact h3{
  margin:0 0 12px;
  color:#fff;
  font-size:15px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.td-footer__contact a,
.td-footer__contact-line{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:9px 0;
  color:#fff;
  text-decoration:none;
  font-size:13px;
  font-weight:650;
  line-height:1.4;
}

.td-footer__contact a{
  transition:transform .18s ease,color .18s ease;
}

.td-footer__contact a:hover{
  transform:translateX(3px);
  color:#fff;
}

.td-footer__contact-icon{
  width:32px;
  height:32px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#fff;
  color:var(--td-pink);
}

.td-footer__contact-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}


/* 1.4.5 — lisibilité du bloc Contact et nouveaux champs */
.td-footer,
.td-footer h1,
.td-footer h2,
.td-footer h3,
.td-footer h4,
.td-footer p,
.td-footer span,
.td-footer strong,
.td-footer a,
.td-footer__contact,
.td-footer__contact-line,
.td-footer__contact-line span,
.td-footer__contact-line strong{
  color:#fff!important;
}

.td-footer__contact-icon{
  color:#fff!important;
}

.td-footer__contact a:nth-of-type(1) .td-footer__contact-icon{
  background:#2563eb;
}

.td-footer__contact a:nth-of-type(2) .td-footer__contact-icon{
  background:#16a34a;
}

.td-footer__contact-line:not(.td-contact-line--siret):not(.td-contact-line--custom) .td-footer__contact-icon{
  background:#dc2626;
}

.td-contact-line--siret .td-footer__contact-icon{
  background:#f59e0b;
}

.td-contact-line--custom .td-footer__contact-icon{
  background:#facc15;
  color:#5b21b6!important;
}

.td-contact-custom-field{
  margin-top:16px;
  padding:14px;
  border:1px solid #e4e7ec;
  border-radius:14px;
  background:#f9fafb;
}

.td-contact-custom-field p{
  margin:10px 0;
}

.td-footer__contact-line strong{
  font-weight:800;
}

@media(max-width:620px){
  .td-footer__contact a,
  .td-footer__contact-line{
    font-size:14px;
  }
}


/* 1.5.0 — palette globale Trouvix Design */
.td-header,
.td-trustbar{
  border-radius:var(--td-radius,20px);
}

.td-footer{
  border-radius:calc(var(--td-radius,20px) + 6px) calc(var(--td-radius,20px) + 6px) 0 0;
}

.td-footer__contact,
.td-footer__useful,
.td-footer__vixia{
  border-radius:var(--td-radius,20px);
}

.td-account,
.td-icon-button,
.td-menu-toggle,
.td-mobile-panel,
.td-mobile-vixia,
.td-footer__socials a,
.td-footer__useful-list a{
  border-radius:calc(var(--td-radius,20px) * .7);
}


/* 1.5.1 — correction des icônes sociales blanc sur blanc */
.td-footer .td-footer__socials a .td-footer__social-icon{
  background:#fff!important;
}

.td-footer .td-footer__socials a[data-social-network="facebook"] .td-footer__social-icon{
  color:#1877f2!important;
}

.td-footer .td-footer__socials a[data-social-network="instagram"] .td-footer__social-icon{
  color:#d62976!important;
}

.td-footer .td-footer__socials a[data-social-network="youtube"] .td-footer__social-icon{
  color:#ff0000!important;
}

.td-footer .td-footer__socials a[data-social-network="linkedin"] .td-footer__social-icon{
  color:#0a66c2!important;
}

.td-footer .td-footer__socials a[data-social-network="tiktok"] .td-footer__social-icon,
.td-footer .td-footer__socials a[data-social-network="x"] .td-footer__social-icon{
  color:#111!important;
}

.td-footer .td-footer__socials a .td-footer__social-icon svg{
  color:inherit!important;
  stroke:currentColor!important;
}

.td-footer .td-footer__socials a[data-social-network="facebook"] .td-footer__social-icon svg,
.td-footer .td-footer__socials a[data-social-network="linkedin"] .td-footer__social-icon svg{
  fill:currentColor!important;
  stroke:none!important;
}

.td-footer .td-footer__socials a[data-social-network="youtube"] .td-footer__social-icon svg path:first-child{
  fill:currentColor!important;
  stroke:none!important;
}

.td-footer .td-footer__socials a[data-social-network="youtube"] .td-footer__social-icon svg path:last-child{
  fill:#fff!important;
  stroke:none!important;
}

/* Survol : fond coloré et pictogramme blanc */
.td-footer .td-footer__socials a[data-social-network="facebook"]:hover .td-footer__social-icon{
  background:#1877f2!important;
  color:#fff!important;
}

.td-footer .td-footer__socials a[data-social-network="instagram"]:hover .td-footer__social-icon{
  background:linear-gradient(135deg,#f58529,#dd2a7b 55%,#8134af)!important;
  color:#fff!important;
}

.td-footer .td-footer__socials a[data-social-network="youtube"]:hover .td-footer__social-icon{
  background:#ff0000!important;
  color:#fff!important;
}

.td-footer .td-footer__socials a[data-social-network="linkedin"]:hover .td-footer__social-icon{
  background:#0a66c2!important;
  color:#fff!important;
}

.td-footer .td-footer__socials a[data-social-network="tiktok"]:hover .td-footer__social-icon,
.td-footer .td-footer__socials a[data-social-network="x"]:hover .td-footer__social-icon{
  background:#111!important;
  color:#fff!important;
}

/* Les icônes Contact restent gérées séparément */
.td-footer .td-footer__contact .td-footer__contact-icon{
  color:#fff!important;
}


/* 1.5.2 — correction des icônes Liens utiles */
.td-footer .td-footer__useful-list a .td-footer__useful-icon{
  background:#fff!important;
  color:var(--td-purple)!important;
  box-shadow:0 6px 14px rgba(0,0,0,.10);
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.td-footer .td-footer__useful-list a .td-footer__useful-icon svg{
  color:inherit!important;
  stroke:currentColor!important;
  fill:none!important;
}
.td-footer .td-footer__useful-list a[data-useful-icon="star"] .td-footer__useful-icon{color:#eab308!important}
.td-footer .td-footer__useful-list a[data-useful-icon="book"] .td-footer__useful-icon{color:#2563eb!important}
.td-footer .td-footer__useful-list a[data-useful-icon="calendar"] .td-footer__useful-icon{color:#7c3aed!important}
.td-footer .td-footer__useful-list a[data-useful-icon="mail"] .td-footer__useful-icon{color:#0ea5e9!important}
.td-footer .td-footer__useful-list a[data-useful-icon="download"] .td-footer__useful-icon{color:#16a34a!important}
.td-footer .td-footer__useful-list a[data-useful-icon="external"] .td-footer__useful-icon{color:#334155!important}
.td-footer .td-footer__useful-list a[data-useful-icon="gift"] .td-footer__useful-icon{color:#db2777!important}
.td-footer .td-footer__useful-list a[data-useful-icon="users"] .td-footer__useful-icon{color:#0f766e!important}

.td-footer .td-footer__useful-list a:hover .td-footer__useful-icon{
  color:#fff!important;
  transform:scale(1.04);
}
.td-footer .td-footer__useful-list a[data-useful-icon="star"]:hover .td-footer__useful-icon{background:#eab308!important}
.td-footer .td-footer__useful-list a[data-useful-icon="book"]:hover .td-footer__useful-icon{background:#2563eb!important}
.td-footer .td-footer__useful-list a[data-useful-icon="calendar"]:hover .td-footer__useful-icon{background:#7c3aed!important}
.td-footer .td-footer__useful-list a[data-useful-icon="mail"]:hover .td-footer__useful-icon{background:#0ea5e9!important}
.td-footer .td-footer__useful-list a[data-useful-icon="download"]:hover .td-footer__useful-icon{background:#16a34a!important}
.td-footer .td-footer__useful-list a[data-useful-icon="external"]:hover .td-footer__useful-icon{background:#334155!important}
.td-footer .td-footer__useful-list a[data-useful-icon="gift"]:hover .td-footer__useful-icon{background:#db2777!important}
.td-footer .td-footer__useful-list a[data-useful-icon="users"]:hover .td-footer__useful-icon{background:#0f766e!important}

.td-footer .td-footer__social-icon,
.td-footer .td-footer__useful-icon,
.td-footer .td-footer__contact-icon{isolation:isolate}


/* 1.6.0 — bandeau d'information administrable */
.td-trustbar{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.td-trustbar .td-trustitem{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  padding:8px 10px;
  border-radius:12px;
  color:inherit;
  text-decoration:none;
  transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.td-trustbar a.td-trustitem:hover{
  background:#f6f2ff;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(16,34,95,.08);
}
.td-trustitem__icon{
  width:42px;
  height:42px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:linear-gradient(135deg,rgba(101,54,215,.12),rgba(237,59,123,.12));
  color:var(--td-purple);
}
.td-trustitem__icon svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.td-trustitem p{margin:0;line-height:1.25;min-width:0}
.td-trustitem strong{display:block;color:var(--td-navy);font-size:14px}
.td-trustitem small{display:block;margin-top:4px;color:var(--td-muted);font-size:12px}
@media(max-width:1150px){.td-trustbar{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.td-trustbar{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* 1.7.0 — bibliothèque de boutons Trouvix Design */
.td-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  max-width:100%;
  box-sizing:border-box;
  border:2px solid transparent;
  border-radius:calc(var(--td-radius,20px) * .7);
  text-decoration:none!important;
  text-align:center;
  font-weight:800;
  line-height:1.15;
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease;
}

.td-button--small{min-height:38px;padding:0 14px;font-size:13px}
.td-button--medium{min-height:48px;padding:0 19px;font-size:15px}
.td-button--large{min-height:56px;padding:0 24px;font-size:17px}

.td-button--primary{
  color:#fff!important;
  background:linear-gradient(135deg,var(--td-purple),#7950e8);
}

.td-button--secondary{
  color:#fff!important;
  background:linear-gradient(135deg,var(--td-pink),#f05b96);
}

.td-button--outline{
  color:var(--td-purple)!important;
  background:#fff;
  border-color:var(--td-purple);
}

.td-button--success{
  color:#fff!important;
  background:linear-gradient(135deg,var(--td-success,#16a34a),#22c55e);
}

.td-button--shadow{
  box-shadow:0 10px 24px rgba(16,34,95,.16);
}

.td-button--animated:hover{
  transform:translateY(-2px);
  box-shadow:0 15px 30px rgba(16,34,95,.22);
}

.td-button--primary:hover{background:linear-gradient(135deg,#582bc5,var(--td-purple))}
.td-button--secondary:hover{background:linear-gradient(135deg,#d92e6c,var(--td-pink))}
.td-button--outline:hover{color:#fff!important;background:var(--td-purple)}
.td-button--success:hover{background:linear-gradient(135deg,#15803d,var(--td-success,#16a34a))}

.td-button--full{
  display:flex;
  width:100%;
}

.td-button__icon{
  width:21px;
  height:21px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}

.td-button__icon svg{
  width:100%;
  height:100%;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

@media(max-width:620px){
  .td-button--mobile-full{
    display:flex;
    width:100%;
  }
}

@media(prefers-reduced-motion:reduce){
  .td-button{
    transition:none!important;
  }
  .td-button:hover{
    transform:none!important;
  }
}


/* 1.8.0 — bibliothèque de cartes Trouvix Design */
.td-card{
  position:relative;
  box-sizing:border-box;
  padding:24px;
  border-radius:var(--td-radius,20px);
  background:#fff;
  color:var(--td-text);
  overflow:hidden;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}

.td-card--border{
  border:1px solid #e4e7ec;
}

.td-card--shadow{
  box-shadow:0 14px 34px rgba(16,34,95,.09);
}

.td-card--animated:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 44px rgba(16,34,95,.14);
}

.td-card--accent{
  background:linear-gradient(135deg,#faf5ff,#fff1f7);
  border-color:rgba(101,54,215,.18);
}

.td-card--info{
  background:#eff6ff;
  border-color:#bfdbfe;
}

.td-card--success{
  background:#f0fdf4;
  border-color:#bbf7d0;
}

.td-card__icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin-bottom:16px;
  border-radius:14px;
  color:var(--td-purple);
  background:#f4f1ff;
}

.td-card--accent .td-card__icon{
  color:var(--td-pink);
  background:#ffe4ef;
}

.td-card--info .td-card__icon{
  color:#2563eb;
  background:#dbeafe;
}

.td-card--success .td-card__icon{
  color:var(--td-success,#16a34a);
  background:#dcfce7;
}

.td-card__icon svg{
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.td-card__badge{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  margin-bottom:10px;
  border-radius:999px;
  color:var(--td-purple);
  background:#ede9fe;
  font-size:12px;
  font-weight:800;
}

.td-card__title{
  margin:0 0 10px;
  color:var(--td-navy);
  font-size:22px;
  line-height:1.2;
}

.td-card__text{
  margin:0;
  color:#667085;
  line-height:1.6;
}

.td-card__action{
  margin-top:20px;
}

@media(max-width:620px){
  .td-card{
    padding:20px;
  }
}

@media(prefers-reduced-motion:reduce){
  .td-card{
    transition:none!important;
  }
  .td-card:hover{
    transform:none!important;
  }
}


/* 1.9.0 — encarts Trouvix et VixIA */
.td-callout{
  position:relative;
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:24px;
  align-items:center;
  box-sizing:border-box;
  padding:24px;
  overflow:hidden;
  border:1px solid #e4e7ec;
  border-radius:var(--td-radius,20px);
  background:#fff;
  color:var(--td-text);
}

.td-callout--shadow{
  box-shadow:0 16px 38px rgba(16,34,95,.10);
}

.td-callout--advice{
  background:linear-gradient(135deg,#fff,#f8faff);
  border-color:#dbe4ff;
}

.td-callout--accent{
  background:linear-gradient(135deg,#faf5ff,#fff1f7);
  border-color:#ead7ff;
}

.td-callout--info{
  background:#eff6ff;
  border-color:#bfdbfe;
}

.td-callout--success{
  background:#f0fdf4;
  border-color:#bbf7d0;
}

.td-callout__mascot{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
}

.td-callout__mascot img{
  display:block;
  width:100%;
  height:140px;
  object-fit:contain;
  transform-origin:center bottom;
}

.td-callout--image-small{
  grid-template-columns:130px minmax(0,1fr);
}

.td-callout--image-small .td-callout__mascot img{
  height:100px;
}

.td-callout--image-large{
  grid-template-columns:240px minmax(0,1fr);
}

.td-callout--image-large .td-callout__mascot img{
  height:180px;
}

.td-callout--animated .td-callout__mascot img{
  animation:td-callout-float 3.4s ease-in-out infinite;
}

@keyframes td-callout-float{
  0%,100%{transform:translateY(0) rotate(0)}
  50%{transform:translateY(-5px) rotate(-1deg)}
}

.td-callout__label{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 11px;
  margin-bottom:10px;
  border-radius:999px;
  color:var(--td-purple);
  background:#ede9fe;
  font-size:12px;
  font-weight:800;
}

.td-callout--trouvix .td-callout__label{
  color:#3730a3;
  background:#eef2ff;
}

.td-callout--vixia .td-callout__label{
  color:#7e22ce;
  background:#f3e8ff;
}

.td-callout__title{
  margin:0 0 10px;
  color:var(--td-navy);
  font-size:26px;
  line-height:1.2;
}

.td-callout__text{
  margin:0;
  color:#667085;
  font-size:16px;
  line-height:1.65;
}

.td-callout__action{
  margin-top:18px;
}

@media(max-width:720px){
  .td-callout,
  .td-callout--image-small,
  .td-callout--image-large{
    grid-template-columns:1fr;
    gap:14px;
    text-align:center;
  }

  .td-callout__mascot img,
  .td-callout--image-small .td-callout__mascot img,
  .td-callout--image-large .td-callout__mascot img{
    height:120px;
  }

  .td-callout__title{
    font-size:22px;
  }
}

@media(prefers-reduced-motion:reduce){
  .td-callout--animated .td-callout__mascot img{
    animation:none!important;
  }
}

/* Trouvix Design 1.10.0 — diagnostic du cœur */
.td-core-status {
    max-width: 720px;
    padding: 16px 18px;
    border: 1px solid #dcdcde;
    border-radius: 12px;
    background: #fff;
}
.td-core-status p { margin: 0 0 9px; }
.td-core-status p:last-child { margin-bottom: 0; }
.td-core-ok { font-weight: 700; color: #16753c; }
.td-core-warning { font-weight: 700; color: #b32d2e; }

/* Trouvix Design 1.24.0 — composants réutilisables */
.td-badge{display:inline-flex;align-items:center;gap:.38em;padding:.38em .72em;border-radius:999px;font-size:.82rem;font-weight:700;line-height:1.1;vertical-align:middle}
.td-badge__icon{display:inline-flex;width:1em;height:1em}
.td-badge__icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.td-badge--purple{color:#5b21b6;background:#ede9fe}.td-badge--navy{color:#173b63;background:#e6eef7}.td-badge--success{color:#166534;background:#dcfce7}.td-badge--warning{color:#9a3412;background:#ffedd5}.td-badge--pink{color:#9d174d;background:#fce7f3}.td-badge--neutral{color:#344054;background:#f2f4f7}
.td-notice{display:flex;gap:14px;margin:18px 0;padding:17px 18px;border:1px solid transparent;border-left-width:5px;border-radius:var(--td-radius,16px);background:#f5f7fb}
.td-notice__icon{display:flex;flex:0 0 26px;width:26px;height:26px;margin-top:1px}
.td-notice__icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.td-notice__content{min-width:0}.td-notice__title{display:block;margin:0 0 5px;font-size:1rem}.td-notice__text,.td-notice__text p{margin:0}
.td-notice--info{color:#173b63;background:#eef5ff;border-color:#9ec5fe}.td-notice--success{color:#166534;background:#f0fdf4;border-color:#86efac}.td-notice--warning{color:#9a3412;background:#fff7ed;border-color:#fdba74}.td-notice--important{color:#9d174d;background:#fdf2f8;border-color:#f9a8d4}
