/* Per-pilot additions, loaded after the original family and domain styles. */
.pilot-notice { padding: 16px 18px; border: 1px solid #d6dbe4; border-left: 4px solid #526078; border-radius: 10px; background: #f5f7fb; color: #263348; font: 400 15px/1.6 system-ui,sans-serif; text-align: left; }
.pilot-disabled-fields { display: none; }
[data-pilot-unavailable] > :not([data-pilot-notice]) { display: none !important; }
[hidden] { display: none !important; }
body.aa img[src*="/photos/"], body.sa img[src*="/photos/"] { filter: blur(12px) !important; -webkit-filter: blur(12px) !important; }
body.aa :focus-visible, body.sa :focus-visible { outline: 3px solid #347ac0; outline-offset: 3px; }
.aa-logo,.sa-logo { min-width: 0; }
.aa-burger,.sa-burger { flex-shrink: 0; min-width: 44px; min-height: 44px; }
.aa-popup__box,.sa-popup__box { max-height: calc(100dvh - 32px); overflow-y: auto; }
@media(max-width:767px) {
  .aa-form input,.aa-form select,.aa-form textarea,.sa-form input,.sa-form select,.sa-form textarea { font-size:16px; }
  .aa-nav a,.sa-nav a { min-height:44px; align-items:center; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* Extend the approved compact detail treatment to navigation, lists and forms. */
body.sa { --sa-police:system-ui,-apple-system,"Segoe UI",sans-serif; --sa-police-titre:var(--sa-police); --sa-fond:#f6f3f5; --sa-bord:#e8dfe4; --sa-rayon:16px; font-family:var(--sa-police); background:var(--sa-fond); }
body.sa .sa-header { padding:0; background:#fff; border-bottom:1px solid var(--sa-bord); }
body.sa .sa-header__in { border:0; border-radius:0; box-shadow:none; background:#fff; min-height:68px; }
body.sa .sa-logo__txt { font-size:18px; font-weight:750; letter-spacing:-.4px; }
body.sa h1 { font-size:clamp(25px,3vw,36px); line-height:1.2; letter-spacing:-.6px; }
body.sa .sa-grille { align-items:stretch; gap:20px; }
body.sa .sa-carte { display:flex; flex-direction:column; grid-column:auto; border:1px solid var(--sa-bord); border-radius:16px; box-shadow:0 4px 18px #32152806; overflow:hidden; }
body.sa .sa-carte__img { width:100%; height:190px; flex:none; }
body.sa .sa-carte__img img { width:100%; height:100%; object-fit:cover; }
body.sa .sa-carte__corps { display:flex; flex-direction:column; flex:1; padding:18px; min-width:0; }
body.sa .sa-carte__titre { font-size:18px; line-height:1.4; font-weight:700; letter-spacing:-.3px; margin:8px 0; }
body.sa .sa-carte__ville { white-space:normal; font-size:13px; line-height:1.45; }
body.sa .sa-carte__pied { margin-top:auto; padding-top:16px; }
body.sa .sa-carte__extrait { font-size:14px; line-height:1.6; }
body.sa .sa-form { border-radius:16px; }
body.sa .sa-form input,body.sa .sa-form select,body.sa .sa-form textarea { border-radius:9px; }
body.sa .sa-footer { border-top:1px solid var(--sa-bord); }
body.sa .sa-btn { text-transform:none; letter-spacing:0; }
body.sa.skin-1 .sa-grille > .sa-carte:nth-child(n) { grid-column:auto; flex-direction:column; align-items:stretch; align-self:stretch; }
body.sa.skin-1 .sa-grille > .sa-carte:nth-child(n) .sa-carte__img { flex:none; width:100%; aspect-ratio:auto; }
@media(min-width:768px) { body.sa .sa-grille { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:767px) {
 body.sa .sa-grille { grid-template-columns:minmax(0,1fr); }
 body.sa .sa-carte__img { height:205px; }
 body.sa .sa-carte__corps { padding:18px; }
 body.sa .sa-logo { max-width:calc(100% - 56px); gap:8px; }
 body.sa .sa-logo__txt { font-size:16px; }
 body.sa .sa-header__in { padding-inline:16px; min-height:62px; gap:10px; }
 body.sa .sa-form__grid { grid-template-columns:minmax(0,1fr); }
 body.sa .sa-form__row--large { grid-column:auto; }
 body.sa .sa-depot__dispo { width:100%; font-size:12px; }
}
