/* Transport Express — pages internes Uncode v1.1.0.
   Sélecteurs scellés sous body.tehd-inner ; les blocs gardent leurs fonctions. */
.tehd-inner {
  --tehd-accent:#2929ef; --tehd-navy:#080e4f; --tehd-soft:#f2f3ff;
  --tehd-muted:#515a78; --tehd-line:rgba(18,30,93,.11);
  --tehd-shadow:0 24px 55px rgba(12,20,75,.095);
}
.tehd-inner :is(.tehd-inner-hero-row,.tehd-solution-row,.tehd-process-row,.tehd-benefits-row,.tehd-faq-row,.tehd-cta-row,.tehd-media-row) {box-sizing:border-box;}
/* Boutons uniquement dans le contenu, pas dans la navigation ou dans le pied de page. */
.tehd-inner :is(.page-header,.post-content) .vc_row[data-parent="true"] a.btn {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:45px; padding:11px 22px !important; border-radius:11px !important;
  font-weight:700; line-height:1.25; text-align:center;
  transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,color .25s ease !important;
}
.tehd-inner :is(.page-header,.post-content) a.btn:focus-visible,
.tehd-inner .tehd-faq-row .panel-heading a:focus-visible {outline:3px solid var(--tehd-accent); outline-offset:3px;}
@media (hover:hover){
  .tehd-inner :is(.page-header,.post-content) .vc_row[data-parent="true"] a.btn:hover {
    transform:translateY(-2px); box-shadow:0 10px 24px rgba(41,41,239,.16);
  }
}
/* BANDEAU : conserve le texte, la photo, le fil d'Ariane et les liens initiaux. */
.tehd-inner.tehd-inner_hero .te-hero {
  background:radial-gradient(ellipse at 94% 83%, rgba(112,122,255,.16), transparent 49%),
             radial-gradient(ellipse at 9% 6%, rgba(255,255,255,.87), transparent 49%),
             var(--tehd-soft) !important;
}
.tehd-inner.tehd-inner_hero .te-hero > .row-parent {
  background:transparent !important;
  padding-top:clamp(48px,6vw,96px) !important;
  padding-bottom:clamp(53px,6vw,96px) !important;
}
.tehd-inner.tehd-inner_hero .te-hero .breadcrumb,
.tehd-inner.tehd-inner_hero .te-hero .breadcrumb a,
.tehd-inner.tehd-inner_hero .te-hero .uncode-breadcrumb {
  color:var(--tehd-muted) !important; font-size:13px; letter-spacing:.015em;
}
.tehd-inner.tehd-inner_hero .te-hero h1,
.tehd-inner.tehd-inner_hero .te-hero h2:first-child {
  color:var(--tehd-navy) !important; font-size:clamp(35px,3.8vw,56px) !important;
  letter-spacing:-.04em; line-height:1.11 !important; font-weight:780 !important;
  text-wrap:balance;
}
.tehd-inner.tehd-inner_hero .te-hero .uncode_text_column p {
  color:#303953 !important; font-size:clamp(15px,1.15vw,18px) !important;
  line-height:1.7 !important; max-width:640px;
}
.tehd-inner.tehd-inner_hero .te-hero .uncode_text_column strong {color:var(--tehd-navy);}
.tehd-inner.tehd-inner_hero .te-hero a.btn-accent:not(.btn-outline) {
  background:var(--tehd-accent) !important; border-color:var(--tehd-accent) !important;
  color:#fff !important; box-shadow:0 11px 25px rgba(41,41,239,.17);
}
.tehd-inner.tehd-inner_hero .te-hero a.btn-outline {
  background:rgba(255,255,255,.74) !important; border:1px solid rgba(41,41,239,.34) !important;
  color:var(--tehd-accent) !important;
}
.tehd-inner.tehd-inner_hero .te-hero :is(.uncode-single-media-wrapper,.uncode-single-media .t-inside) {
  overflow:hidden; border-radius:22px !important;
}
.tehd-inner.tehd-inner_hero .te-hero .uncode-single-media .t-inside {
  box-shadow:0 27px 57px rgba(14,25,83,.16);
}
.tehd-inner.tehd-inner_hero .te-hero .uncode-single-media img {transition:transform .85s cubic-bezier(.2,.7,.2,1);}
.tehd-inner.tehd-inner_hero .te-hero .tgrb-badge {
  border:1px solid rgba(20,32,91,.07); border-radius:14px;
  box-shadow:0 8px 25px rgba(18,26,83,.09);
}
@media (hover:hover){.tehd-inner.tehd-inner_hero .te-hero .uncode-single-media:hover img {transform:scale(1.035);}}

/* GRILLE DE PRESTATIONS : pas de largeur/position forcée sur le moteur CSS Grid d'Uncode. */
.tehd-inner.tehd-inner_cards .tehd-solution-row > .row-parent {
  padding-top:clamp(48px,6vw,80px) !important;
  padding-bottom:clamp(48px,6vw,87px) !important;
}
.tehd-inner.tehd-inner_cards .tehd-solution-row > .row-parent > .row-inner h2,
.tehd-inner.tehd-inner_cards .tehd-solution-row > .row-parent h2:first-child {
  color:var(--tehd-navy) !important; font-size:clamp(29px,2.7vw,41px) !important;
  letter-spacing:-.035em; line-height:1.16 !important; text-wrap:balance;
}
.tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid > .t-inside {
  border:1px solid var(--tehd-line); border-radius:21px !important;
  overflow:hidden; background:var(--tehd-soft); height:100%;
  box-shadow:0 12px 37px rgba(16,26,85,.055);
  transition:transform .33s ease, box-shadow .33s ease, border-color .33s ease;
}
.tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid .t-entry-text,
.tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid .t-entry-text-tc {background:transparent !important;}
.tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid .t-entry-title,
.tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid .t-entry-title a {
  color:var(--tehd-navy) !important; font-size:clamp(19px,1.3vw,22px) !important; line-height:1.28;
}
.tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid .t-entry-excerpt,
.tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid .t-entry-excerpt p {
  color:var(--tehd-muted) !important; font-size:15px !important; line-height:1.65 !important;
}
.tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid a.btn {
  background:#fff !important; border:1px solid rgba(41,41,239,.42) !important;
  color:var(--tehd-accent) !important;
}
.tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid .t-entry-visual img {transition:transform .85s cubic-bezier(.2,.7,.2,1);}
@media (hover:hover){
  .tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid:hover > .t-inside {
    transform:translateY(-5px); box-shadow:var(--tehd-shadow); border-color:rgba(41,41,239,.24);
  }
  .tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid:hover .t-entry-visual img {transform:scale(1.04);}
  .tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid a.btn:hover {background:var(--tehd-accent) !important; color:#fff !important;}
}
/* ÉTAPES : ne pas redéfinir les bulles ni leurs lignes ; le plugin de 4 étapes garde le contrôle. */
.tehd-inner.tehd-inner_process .tehd-process-row > .row-parent {
  padding-top:clamp(26px,4vw,56px) !important;
  padding-bottom:clamp(34px,4vw,64px) !important;
}
.tehd-inner.tehd-inner_process .tehd-process-row .teem-wrap {max-width:100%;}

/* RÉASSURANCE : fond bleu, icônes mises en valeur sans modifier les icônes elles-mêmes. */
.tehd-inner.tehd-inner_benefits .tehd-benefits-row,
.tehd-inner.tehd-inner_benefits .tehd-benefits-row > .row-parent {
  background-color:var(--tehd-navy) !important;
}
.tehd-inner.tehd-inner_benefits .tehd-benefits-row > .row-parent {
  background-image:radial-gradient(ellipse at 50% 0%,rgba(91,108,255,.15),transparent 65%) !important;
  padding-top:clamp(50px,5.5vw,83px) !important; padding-bottom:clamp(45px,5.5vw,78px) !important;
}
.tehd-inner.tehd-inner_benefits .tehd-benefits-row :is(h2,h3,h4,p) {color:#fff !important;}
.tehd-inner.tehd-inner_benefits .tehd-benefits-row > .row-parent h2 {
  font-size:clamp(28px,2.8vw,40px) !important; line-height:1.17 !important; letter-spacing:-.025em;
}
.tehd-inner.tehd-inner_benefits .tehd-benefits-row .icon-box:not(.social-icon) {
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.018));
  border:1px solid rgba(255,255,255,.12); border-radius:19px;
  padding:clamp(17px,2.25vw,30px); height:100%;
  transition:transform .3s ease,background-color .3s ease;
}
.tehd-inner.tehd-inner_benefits .tehd-benefits-row .icon-box:not(.social-icon) .icon-box-icon img {
  max-width:75px; height:auto;
}
.tehd-inner.tehd-inner_benefits .tehd-benefits-row .icon-box:not(.social-icon) p {color:rgba(255,255,255,.83) !important;}
@media (hover:hover){.tehd-inner.tehd-inner_benefits .tehd-benefits-row .icon-box:not(.social-icon):hover {transform:translateY(-4px);background-color:rgba(255,255,255,.07);}}

/* FAQ UNCODE : ne changer ni display, ni height, ni aria-expanded, ni les icônes +/-. */
.tehd-inner.tehd-inner_faq .tehd-faq-row > .row-parent {
  padding-top:clamp(49px,5vw,77px) !important;
  padding-bottom:clamp(30px,4.5vw,62px) !important;
}
.tehd-inner.tehd-inner_faq .tehd-faq-row h2 {
  font-size:clamp(29px,2.8vw,42px) !important; color:var(--tehd-navy) !important;
  letter-spacing:-.028em; line-height:1.2 !important;
}
.tehd-inner.tehd-inner_faq .tehd-faq-row .uncode-accordion .panel {
  border:1px solid var(--tehd-line) !important;
  background:#f9faff !important; border-radius:13px !important;
  margin-bottom:11px; box-shadow:0 4px 16px rgba(17,26,87,.025);
  overflow:hidden;
}
.tehd-inner.tehd-inner_faq .tehd-faq-row .uncode-accordion .panel-heading {
  background:transparent !important; border:0 !important;
}
.tehd-inner.tehd-inner_faq .tehd-faq-row .uncode-accordion .panel-heading a {
  color:var(--tehd-navy) !important; font-weight:700;
}
.tehd-inner.tehd-inner_faq .tehd-faq-row .uncode-accordion .panel-body {background:transparent !important; color:var(--tehd-muted);}
.tehd-inner.tehd-inner_faq .tehd-faq-row .uncode-accordion .panel-body p {color:var(--tehd-muted) !important; line-height:1.65;}

/* CTA : le bloc existant .uncont.has-bg est arrondi, pas de nouveau bouton ni faux formulaire. */
.tehd-inner.tehd-inner_cta .tehd-cta-row > .row-parent {
  padding-top:clamp(15px,3vw,45px) !important;
  padding-bottom:clamp(48px,5vw,80px) !important;
}
.tehd-inner.tehd-inner_cta .tehd-cta-row .uncont.has-bg {
  max-width:100% !important; border:1px solid rgba(41,41,239,.12);
  border-radius:23px !important;
  background:radial-gradient(ellipse at 95% 10%,rgba(110,112,255,.13),transparent 48%),var(--tehd-soft) !important;
  box-shadow:0 17px 43px rgba(17,27,91,.065); overflow:hidden;
}
.tehd-inner.tehd-inner_cta .tehd-cta-row :is(h2,h3,h4) {color:var(--tehd-navy) !important;}
.tehd-inner.tehd-inner_cta .tehd-cta-row .uncont.has-bg a.btn {
  background:var(--tehd-accent) !important; border-color:var(--tehd-accent) !important;
  color:#fff !important; box-shadow:0 10px 23px rgba(41,41,239,.15);
}
/* Pages enfants : rangées éditoriales texte + image ; aucun conteneur du footer n'est ciblé. */
.tehd-inner.tehd-inner_cards .tehd-media-row:not(.tehd-cta-row) .uncode-single-media-wrapper {
  overflow:hidden; border-radius:20px !important;
  box-shadow:0 16px 38px rgba(12,24,85,.085);
}
.tehd-inner.tehd-inner_cards .tehd-media-row:not(.tehd-cta-row) :is(h2,h3) {color:var(--tehd-navy) !important;letter-spacing:-.025em;}

/* Animation progressive : uniquement après initialisation JS, jamais au détriment de la lisibilité. */
@media (prefers-reduced-motion:no-preference){
 .tehd-inner.tehd-inner_motion.tehd-js .post-content .vc_row[data-parent="true"].tehd-reveal:not(.tehd-visible) {
   opacity:.01; transform:translateY(18px);
 }
 .tehd-inner.tehd-inner_motion.tehd-js .post-content .vc_row[data-parent="true"].tehd-reveal {
   transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1);
 }
}
@media (max-width:959px){
 .tehd-inner.tehd-inner_hero .te-hero > .row-parent {padding-top:49px !important;padding-bottom:55px !important;}
 .tehd-inner.tehd-inner_benefits .tehd-benefits-row .icon-box:not(.social-icon) {padding:18px;}
}
@media (max-width:600px){
 .tehd-inner.tehd-inner_hero .te-hero > .row-parent {padding:40px 19px 49px !important;}
 .tehd-inner.tehd-inner_hero .te-hero :is(h1,h2:first-child) {font-size:clamp(31px,8vw,43px) !important;}
 .tehd-inner.tehd-inner_hero .te-hero .uncode-single-media .t-inside {border-radius:15px !important;}
 .tehd-inner.tehd-inner_cards .tehd-solution-row > .row-parent {padding:40px 17px !important;}
 .tehd-inner.tehd-inner_cards .tehd-solution-row .tmb-grid > .t-inside {border-radius:16px !important;}
 .tehd-inner.tehd-inner_process .tehd-process-row > .row-parent {padding:24px 15px 35px !important;}
 .tehd-inner.tehd-inner_benefits .tehd-benefits-row > .row-parent {padding:38px 16px !important;}
 .tehd-inner.tehd-inner_faq .tehd-faq-row > .row-parent {padding:42px 17px !important;}
 .tehd-inner.tehd-inner_cta .tehd-cta-row > .row-parent {padding:20px 15px 46px !important;}
 .tehd-inner.tehd-inner_cta .tehd-cta-row .uncont.has-bg {border-radius:17px !important;}
}
@media (prefers-reduced-motion:reduce){
 .tehd-inner .page-header .te-hero *,
 .tehd-inner .post-content .vc_row[data-parent="true"] * {animation-duration:.01ms !important;transition-duration:.01ms !important;}
}


/* =========================================================
   POST / PAGE GRID — shadow glow discrète au survol
   ========================================================= */
@media (hover:hover) and (pointer:fine) {
  .cssgrid-container .tmb > .t-inside {
    position:relative;
    transition: transform .55s cubic-bezier(.22,1,.36,1), box-shadow .8s cubic-bezier(.22,1,.36,1);
    will-change:transform,box-shadow;
  }
  .cssgrid-container .tmb:hover > .t-inside {
    transform:translateY(-2px);
    box-shadow:
      0 8px 24px rgba(38,45,110,.08),
      0 16px 42px rgba(91,83,255,.13),
      0 0 30px rgba(126,113,255,.07);
  }
}
@media (prefers-reduced-motion:reduce) {
  .cssgrid-container .tmb > .t-inside {transition:none!important;}
}

/* v1.4.1 — FAQ : contenu ouvert sur le même fond que la section */
.tehd-inner.tehd-inner_faq .tehd-faq-row .uncode-accordion .panel-collapse,
.tehd-inner.tehd-inner_faq .tehd-faq-row .uncode-accordion .panel-body,
.tehd-inner.tehd-inner_faq .tehd-faq-row .uncode-accordion .panel-body .uncode_text_column,
.tehd-inner.tehd-inner_faq .tehd-faq-row .uncode-accordion .panel-body .uncode_text_column p {
  background: transparent !important;
}
