/* tp-a11y.css - TELEPILOTE SAS - 06/10/2026
   Contrastes WCAG AA, liens distinguables, zones tactiles, debordements mobiles.
   Charge par templateHook.php (addCustomTag) : NE PAS faire passer par l optimiseur T3,
   qui supprime les espaces dans les selecteurs [style*="..."]. */
/* 06/10 soir : surcharges de couleurs et soulignement force retires (retour aux couleurs d origine, demande Vincent) */
/* zones tactiles >= 24 px */
#t3-footer li > a { display: inline-block; min-height: 24px; padding: 4px 0; }
.item-page .tags a.label { display: inline-block; min-height: 24px; padding: 5px 8px; margin: 2px 0; line-height: 14px; }
/* images deformees par des attributs width/height */
img[src*="rdv.png"], img[src*="magasin-dji-professionnel.png"] { height: auto !important; }
@media (max-width: 600px) {
  .tp-fd-block div[style*="flex: 0 0 auto"] { flex: 1 1 100% !important; max-width: 100% !important; }
  .tp-fd-block img { max-width: 100% !important; height: auto !important; }
  .item-page .tags a.label { white-space: normal !important; max-width: 100%; box-sizing: border-box; }
}

/* MOBILE-HEADER 06/10/2026 : en-tete compact sur une ligne (logo + Appeler + menu), menu pleine largeur. Ordinateur inchange. */
@media (max-width: 767px) {
  .t3-wrapper { position: relative; }
  #t3-header { height: 64px; padding: 0 !important; overflow: visible; }
  #t3-header > .container, #t3-header .row { padding: 0 !important; margin: 0 !important; }
  #t3-header .logo { height: 64px; padding: 0 12px !important; display: flex; align-items: center; }
  #t3-header .logo-image { margin: 0 !important; padding: 0 !important; }
  #t3-header .logo-img-sm { height: 40px !important; width: auto !important; max-width: none !important; }
  #t3-header .site-slogan, #t3-header .logo-image a > span { display: none !important; }
  #t3-header .row > div:not(.logo) { position: absolute; top: 0; right: 62px; height: 64px; width: auto !important; padding: 0 !important; display: flex; align-items: center; z-index: 1001; }
  #t3-header .head-search { margin: 0 !important; padding: 0 !important; width: auto !important; }
  #t3-header .head-search .custom { margin: 0 !important; }
  .tp-head-id { font-size: 0 !important; line-height: 1 !important; margin: 0 !important; }
  .tp-head-line, .tp-head-br { display: none !important; }
  a.tp-head-tel { display: inline-flex; align-items: center; height: 40px; padding: 0 14px; border-radius: 20px; background: #ff6600; color: #fff !important; text-decoration: none !important; font-size: 0 !important; }
  a.tp-head-tel::before { content: "\260E\00A0 Appeler"; font-size: 14px; font-weight: 700; letter-spacing: .2px; }
  #t3-mainnav { position: absolute !important; top: 0; left: 0; right: 0; background: transparent !important; border: 0 !important; min-height: 0 !important; margin: 0 !important; z-index: 1000; pointer-events: none; }
  #t3-mainnav > .container { padding: 0 !important; }
  #t3-mainnav .navbar-header { height: 64px; margin: 0 !important; display: flex; justify-content: flex-end; align-items: center; padding-right: 10px; }
  #t3-mainnav .navbar-toggle { pointer-events: auto; float: none; margin: 0 !important; width: 44px; height: 44px; padding: 0; background: transparent !important; border: 2px solid rgba(255,255,255,.75) !important; border-radius: 8px; }
  #t3-mainnav .navbar-toggle .fa { color: #fff !important; font-size: 18px; }
  #t3-mainnav .t3-navbar-collapse { pointer-events: auto; background: #0c426f; margin: 0 !important; border-top: 1px solid rgba(255,255,255,.2); max-height: 75vh; overflow-y: auto; box-shadow: 0 8px 18px rgba(0,0,0,.25); }
}

/* HERO-ACCUEIL v2 06/10/2026 soir : introduction claire aux couleurs du site, video du campus a cote du titre (lecture au clic, rien en fond) */
.tp-hero { display: grid; grid-template-columns: 1.05fr .95fr; gap: 28px; align-items: center; margin: 0 0 22px; padding: 28px;
  background: #f5f7fa; border: 1px solid #e3e8ef; border-radius: 12px; color: #0a2540; }
.tp-hero__inner { min-width: 0; }
.tp-hero__eyebrow { display: inline-block; margin: 0 0 14px !important; padding: 5px 12px; border-radius: 999px; background: #fff; border: 1px solid #d6dee8;
  font-size: 12.5px !important; font-weight: 700; color: #1b6699 !important; }
.tp-hero h1.tp-hero__title { color: #0a2540 !important; font-size: clamp(26px, 3.2vw, 38px) !important; line-height: 1.15 !important; font-weight: 800 !important;
  margin: 0 0 12px !important; text-align: left !important; font-family: 'Exo 2', Arial, sans-serif !important; }
.tp-hero__lead { color: #33475b !important; font-size: 16px !important; line-height: 1.55 !important; margin: 0 0 18px !important; }
.tp-hero__cta { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 12px; }
.tp-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px; border-radius: 8px; font-weight: 700;
  font-size: 16px; text-decoration: none !important; }
.tp-btn--primary { background: #ff6600; color: #fff !important; }
.tp-btn--primary:hover, .tp-btn--primary:focus { background: #e65c00; }
.tp-btn--ghost { background: #fff; color: #1b6699 !important; border: 2px solid #1b6699; }
.tp-hero__playicon { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: #e6eef6; color: #1b6699; font-size: 12px; text-decoration: none; }
.tp-hero a.tp-hero__dl { display: flex; align-items: center; gap: 8px; width: fit-content; margin: 0 0 14px; color: #1b6699 !important; font-weight: 600; text-decoration: underline !important; }
.tp-hero__proof { list-style: none !important; margin: 0 !important; padding: 12px 0 0 !important; border-top: 1px solid #d6dee8;
  display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: 14px; color: #33475b; }
.tp-hero__proof li { margin: 0 !important; padding: 0 !important; list-style: none !important; background: none !important; }
.tp-hero__proof li::before { content: none !important; }
.tp-hero__proof strong { color: #0a2540; }
.tp-hero a.tp-hero__prooflink { color: #1b6699 !important; text-decoration: underline !important; text-underline-offset: 3px; }
.tp-hero #tp-video-hero { margin: 0 !important; max-width: none !important; }
.tp-projects { margin: 0 0 26px; }
.tp-projects h2.tp-projects__title { font-size: 22px !important; color: #0a2540 !important; margin: 0 0 12px !important; text-align: left !important; }
.tp-projects__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.tp-card { display: flex; flex-direction: column; gap: 6px; padding: 16px; border-radius: 10px; background: #fff; border: 1px solid #e3e8ef; min-height: 120px;
  text-decoration: none !important; color: #0a2540 !important; }
.tp-card:hover, .tp-card:focus { border-color: #1b6699; }
.tp-card__kicker { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; color: #ff6600; }
.tp-card__title { font-size: 16px; line-height: 1.3; color: #0a2540; }
.tp-card__go { margin-top: auto; font-size: 14px; font-weight: 600; color: #1b6699; }
@media (max-width: 991px) { .tp-projects__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) {
  .tp-hero { grid-template-columns: 1fr; gap: 18px; padding: 18px 16px; border-radius: 0; margin: 0 -10px 18px; }
  .tp-hero #tp-video-hero { order: -1; }
  .tp-btn { flex: 1 1 100%; }
  .tp-card { min-height: 110px; padding: 14px; }
}
html.home .t3-slideshow { display: none !important; }
html.home #t3-department > .container { padding-top: 22px; }
@media (max-width: 767px) { html.home #t3-department > .container { padding-top: 0 !important; } }
