/* Trail des Buis — V81 : première vague d'amélioration graphique. */
:root{--tdb-violet:#a600ef;--tdb-ink:#10132a;--tdb-stroke:1.8;--tdb-motion:cubic-bezier(.22,1,.36,1)}
/* Consistent crisp vector icon geometry */
.tdb-icon-v81{width:clamp(36px,3.45vw,52px)!important;height:48px!important;flex-shrink:0;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;filter:none!important;shape-rendering:geometricPrecision}
/* Fine SVG iconography on functional pages: consistent cap and joins */
.page-courses .stat svg,.page-info .card svg,.page-info .fact svg,.page-contact .contact-line svg,.page-results .stat svg,.page-results .strip-item svg,.page-results .result-button svg{
 stroke-linecap:round;stroke-linejoin:round;shape-rendering:geometricPrecision;
}
/* High-end card finish without altering the original page layout */
.course-card,.page-info .card,.page-contact .contact-card,.page-contact .form-card{
 -webkit-font-smoothing:antialiased;
}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
 .course-card,.page-info .card,.page-contact .contact-card,.page-contact .form-card{
  transition:transform .32s var(--tdb-motion),box-shadow .32s var(--tdb-motion),border-color .32s var(--tdb-motion);
 }
 .course-card:hover,.page-info .card:hover{transform:translateY(-3px);box-shadow:0 15px 38px rgba(27,13,71,.13)}
}
/* Consistent visible focus for keyboard users */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{
 outline:2px solid #8e24f5;outline-offset:3px;
}
/* Avoid overly heavy animations for users requesting reduced motion */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media(max-width:800px){.tdb-icon-v81{width:37px!important;height:39px!important}}
@media(max-width:440px){.tdb-icon-v81{width:33px!important;height:35px!important}}
