.avis-section{padding:76px 24px 74px;background:linear-gradient(180deg,#f7f9fc 0%,#fff 100%);color:#09182f}.avis-container{max-width:1180px;margin:auto}.avis-heading{text-align:center;max-width:860px;margin:0 auto 28px}.avis-kicker{font-size:12px!important;letter-spacing:.15em;font-weight:800;color:#627084!important;margin:0 0 12px!important}.avis-heading h2{font-size:clamp(25px,3vw,36px);font-weight:800;letter-spacing:-.035em;color:#031326;margin:0 0 14px}.avis-heading>p:last-child{font-size:16px;line-height:1.65;color:#526075}.avis-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:3px 2px 10px}.avis-track::-webkit-scrollbar{display:none}.avis-card{flex:0 0 calc((100% - 36px)/3);scroll-snap-align:start;min-width:0;border:1px solid #dce2ea;border-radius:17px;background:#fff;padding:25px;box-shadow:0 12px 30px rgba(3,19,38,.045)}.avis-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.avis-avatar{display:flex;align-items:center;justify-content:center;background:#f0f3f7;border-radius:100%;width:39px;height:39px;font-size:20px;color:#4d5b70}.avis-quote{font-size:29px;line-height:1;color:#c59a45}.avis-card h3{font-size:17px;font-weight:800;color:#031326;margin:0 0 7px}.avis-city{font-size:13px!important;color:#677589!important;margin:0 0 8px!important}.avis-course{font-size:13px!important;color:#0b2b4b!important;font-weight:700;min-height:20px;margin:0 0 16px!important}.avis-message{border-top:1px solid #e4e8ef;padding-top:16px;font-size:14px!important;color:#35455a!important;line-height:1.7!important;white-space:normal;overflow-wrap:anywhere}.avis-origin{font-size:11px!important;color:#788396!important;margin-top:16px!important}.avis-controls{display:flex;justify-content:center;gap:10px;margin:13px 0 0}.avis-arrow{width:38px;height:38px;border:1px solid #d7dfe9;border-radius:50%;background:#fff;color:#0b355d;cursor:pointer;font-size:18px}.avis-arrow:hover{background:#0b355d;color:#fff}.avis-cta{text-align:center;margin:32px auto 0}.avis-cta h3{font-size:19px;color:#09182f;font-weight:700;margin:0 0 8px}.avis-cta p{font-size:15px;color:#657388;margin:0 0 19px}.avis-button{display:inline-flex;align-items:center;gap:12px;background:#103b66;color:white!important;padding:15px 25px;border-radius:10px;font-size:15px;font-weight:700;transition:.2s}.avis-button:hover{background:#092849;transform:translateY(-2px)}.avis-form-main{max-width:750px;margin:0 auto;padding:135px 24px 75px}.avis-form-panel{background:#fff;border:1px solid #dde4ee;border-radius:18px;padding:34px;box-shadow:0 14px 55px rgba(3,19,38,.07)}.avis-form-panel h1{font-size:clamp(26px,3vw,34px);margin:0 0 14px;color:#031326}.avis-form-panel .intro{color:#526075;line-height:1.7;margin:0 0 24px}.avis-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.avis-field{margin-bottom:19px}.avis-field label{display:block;font-size:13px;font-weight:750;color:#12253f;margin-bottom:8px}.avis-field input,.avis-field textarea{width:100%;border:1px solid #cdd7e4;border-radius:9px;padding:13px 14px;background:#fff;color:#09182f;font:inherit;font-size:14px}.avis-field textarea{min-height:160px;resize:vertical}.avis-field input:focus,.avis-field textarea:focus{outline:2px solid #b4d2f6;border-color:#103b66}.avis-check{display:flex;gap:10px;align-items:flex-start;margin:12px 0 20px;line-height:1.6;font-size:13px;color:#43536a}.avis-check input{margin-top:4px}.avis-hint{padding:15px;background:#f4f7fb;border-radius:10px;color:#526075;font-size:13px;line-height:1.6;margin-bottom:20px}.avis-alert{padding:15px;border-radius:10px;margin:0 0 20px;background:#eef8f0;color:#185b33}.avis-alert.error{background:#fff0f0;color:#912b2b}.avis-admin-main{max-width:1100px;margin:0 auto;padding:130px 22px 70px}.avis-admin-main h1{font-size:30px;color:#071d34;margin-bottom:15px}.avis-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0 26px}.avis-admin-stat{padding:19px;background:#f5f7fa;border-radius:12px}.avis-admin-stat strong{display:block;font-size:28px;color:#103b66}.avis-admin-card{border:1px solid #dce3eb;border-radius:13px;padding:20px;margin:15px 0;background:#fff}.avis-admin-card h3{margin:0 0 7px}.avis-admin-card p{margin:7px 0;line-height:1.65}.avis-admin-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.avis-admin-actions button,.avis-admin-actions a{border:1px solid #b7c6d8;padding:9px 13px;border-radius:8px;background:#fff;color:#123b62;font-weight:700;cursor:pointer}.avis-admin-actions .publish{background:#0c6d46;color:white}.avis-admin-actions .danger{color:#9c2e2e}.avis-tabs{display:flex;gap:15px;flex-wrap:wrap;margin:20px 0}.avis-tabs a{font-weight:700;color:#0d416d}.avis-origin-tag{font-size:12px;color:#708097}.avis-admin-add{border:1px solid #dce3eb;border-radius:13px;padding:24px;background:#f8fafc;margin:28px 0}.avis-admin-add h2{font-size:20px;margin-bottom:16px}@media(max-width:800px){.avis-card{flex-basis:calc((100% - 18px)/2)}}@media(max-width:600px){.avis-section{padding:55px 18px}.avis-card{flex-basis:90%}.avis-heading h2{font-size:25px}.avis-form-grid,.avis-admin-grid{grid-template-columns:1fr}.avis-form-main{padding:115px 14px 50px}.avis-form-panel{padding:22px}.avis-cta h3{font-size:17px}}@media(prefers-reduced-motion:reduce){.avis-button{transition:none}}


/* CORRECTIF V3 : dissocier visuellement temoignages et partenaires. */
body .avis-section {
  position: relative;
  isolation: isolate;
  padding: 88px 24px 84px;
  background: #eaf1f8;
  border-top: 5px solid #c69a46;
  border-bottom: 1px solid #d4dfeb;
  color: #09182f;
}
body .avis-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0; right: 0; top: 0; height: 175px;
  background: linear-gradient(180deg, #dce8f4 0%, rgba(220,232,244,0) 100%);
  pointer-events: none;
}
.avis-section .avis-container { max-width: 1140px; }
.avis-section .avis-heading { margin-bottom: 36px; }
.avis-section .avis-heading h2 { font-size: clamp(28px,3.2vw,39px); }
.avis-section .avis-kicker { color: #9a702f!important; }
.avis-section .avis-carousel { max-width: 1140px; margin: 0 auto; }
.avis-section .avis-track { padding: 8px 5px 21px; gap: 22px; }
.avis-section .avis-card {
  box-sizing: border-box;
  flex: 0 0 calc((100% - 44px)/3);
  min-width: 0;
  min-height: 245px;
  padding: 26px;
  border: 1px solid #d4dfeb;
  border-top: 4px solid #c59a45;
  border-radius: 15px;
  box-shadow: 0 14px 35px rgba(8,38,69,.075);
}
/* Une carte ne doit jamais rester collee au bord gauche. */
.avis-section .avis-track--few { justify-content: center; }
.avis-section .avis-track--few .avis-card { flex: 0 1 365px; width: min(100%,365px); }
.avis-section .avis-cta {
  max-width: 680px;
  margin: 38px auto 0;
  padding-top: 30px;
  border-top: 1px solid #cbd8e6;
}
.avis-section .avis-cta h3 { font-size: 20px; }
.avis-section .avis-button { box-shadow: 0 8px 19px rgba(16,59,102,.17); }
/* La section des entreprises retrouve un debut visible, independant des avis. */
body .partners { background: #fff; padding-top: 74px; border-top: 0; }
@media(max-width: 800px) {
 .avis-section .avis-card { flex-basis: calc((100% - 22px)/2); }
 .avis-section .avis-track--few .avis-card { flex-basis: min(365px,calc((100% - 22px)/2)); }
}
@media(max-width: 600px) {
 body .avis-section { padding: 58px 18px 62px; }
 .avis-section .avis-heading { margin-bottom: 24px; }
 .avis-section .avis-track { justify-content: flex-start; }
 .avis-section .avis-card { flex: 0 0 89%; min-height: 0; }
 .avis-section .avis-track--few { justify-content: center; }
 .avis-section .avis-track--few .avis-card { flex: 0 0 100%; width: 100%; }
 .avis-section .avis-cta { margin-top: 20px; padding-top: 24px; }
 body .partners { padding-top: 55px; }
}

/* V4 : version compacte de la section temoignages (accueil uniquement). */
body .avis-section { padding: 42px 24px 43px; }
body .avis-section::before { height: 105px; }
.avis-section .avis-heading { max-width: 1100px; margin-bottom: 18px; }
.avis-section .avis-kicker { margin-bottom: 5px!important; }
.avis-section .avis-heading h2 { font-size: clamp(27px, 3vw, 36px); margin-bottom: 7px; line-height: 1.18; }
.avis-section .avis-heading > p:last-child { font-size: 15px; line-height: 1.45; margin: 0; }
.avis-section .avis-track { padding: 4px 5px 9px; gap: 18px; }
.avis-section .avis-card { flex-basis: calc((100% - 36px)/3); min-height: 0; padding: 17px 20px 19px; }
.avis-section .avis-card-top { margin-bottom: 8px; }
.avis-section .avis-avatar { width: 34px; height: 34px; }
.avis-section .avis-card h3 { margin-bottom: 4px; }
.avis-section .avis-city { margin-bottom: 5px!important; }
.avis-section .avis-course { min-height: 0; margin-bottom: 9px!important; }
.avis-section .avis-message { padding-top: 11px; line-height: 1.5!important; }
.avis-section .avis-origin { margin-top: 9px!important; }
.avis-section .avis-cta { margin: 16px auto 0; padding-top: 16px; }
.avis-section .avis-cta h3 { margin-bottom: 4px; font-size: 19px; }
.avis-section .avis-cta p { margin-bottom: 11px; }
.avis-section .avis-button { padding: 12px 22px; }
body .partners { padding-top: 46px; }
@media (min-width: 950px) {
 .avis-section .avis-heading > p:last-child { white-space: nowrap; }
}
@media (max-width: 800px) {
 .avis-section .avis-card { flex-basis: calc((100% - 18px)/2); }
}
@media (max-width: 600px) {
 body .avis-section { padding: 34px 17px 38px; }
 .avis-section .avis-heading { margin-bottom: 14px; }
 .avis-section .avis-heading h2 { font-size: 25px; }
 .avis-section .avis-heading > p:last-child { font-size: 14px; white-space: normal; }
 .avis-section .avis-card { flex: 0 0 89%; min-height: 0; }
 .avis-section .avis-track--few .avis-card { flex: 0 0 100%; width: 100%; }
 .avis-section .avis-cta { margin-top: 13px; padding-top: 15px; }
 .avis-section .avis-cta h3 { font-size: 17px; }
 body .partners { padding-top: 40px; }
}
