.pdi-venue-story{width:100%;position:relative;z-index:3;background:transparent}
.pdi-venue-story picture,.pdi-venue-story img{display:block;width:100%;height:auto}
.pdi-venue-story img{aspect-ratio:2560/2880;object-fit:contain}
@media(max-width:767px){.pdi-venue-story img{aspect-ratio:1/3}}

/* ------------------------------------------------------------------ annonces
   Bannieres et popups du restaurateur. Les couleurs, la police et l'arrondi
   arrivent en variables posees par site-extras.js (--pdi-ann-*) : le meme
   habillage sert a l'apercu du logiciel, qui lit les memes valeurs. */
.pdi-ann-stack{position:relative;z-index:10001;display:grid;font:500 15px/1.4 var(--pdi-ann-font,system-ui,sans-serif)}
.pdi-ann-stack:empty{display:none}
.pdi-ann-stack--bottom{position:fixed;left:0;right:0;bottom:0}
.pdi-ann-banner{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 16px;
  background:var(--pdi-ann-bg,#181713);color:var(--pdi-ann-fg,#fff);padding:11px 46px;text-align:center;text-decoration:none;
  border-bottom:1px solid #ffffff26;font-family:var(--pdi-ann-font,system-ui,sans-serif);overflow-wrap:anywhere}
.pdi-ann-stack--bottom .pdi-ann-banner{border-bottom:0;border-top:1px solid #ffffff26}
a.pdi-ann-banner:hover{filter:brightness(1.12)}
.pdi-ann-banner-text{font-weight:500}

.pdi-ann-popup,.pdi-ann-float{box-sizing:border-box;border:0;padding:24px;background:var(--pdi-ann-bg,#fff);color:var(--pdi-ann-fg,#191919);
  border-radius:var(--pdi-ann-radius,18px);font:400 16px/1.5 var(--pdi-ann-font,system-ui,sans-serif)}
.pdi-ann-popup{width:min(540px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;z-index:2147483646}
.pdi-ann-popup::backdrop{background:#0009}
.pdi-ann-popup.pdi-ann-pos-full{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.pdi-ann-pos-full>*{max-width:560px;width:100%}

.pdi-ann-float{position:fixed;z-index:2147483645;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;
  box-shadow:0 18px 50px #0000002e}
.pdi-ann-pos-bottom-right{right:12px;bottom:12px}
.pdi-ann-pos-bottom-left{left:12px;bottom:12px}
.pdi-ann-pos-top-right{right:12px;top:12px}
.pdi-ann-pos-top-left{left:12px;top:12px}
.pdi-ann-float.pdi-ann-pos-bottom-bar{left:0;right:0;bottom:0;width:100%;max-width:100%;border-radius:0;padding:16px 46px;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 20px;text-align:center}
.pdi-ann-pos-bottom-bar .pdi-ann-btn{width:auto;min-width:180px}
.pdi-ann-pos-bottom-bar img{max-width:90px;margin:0}

.pdi-ann-title{font:600 22px/1.3 var(--pdi-ann-font-titre,system-ui,sans-serif)!important;color:inherit;margin:16px 0 0;overflow-wrap:anywhere}
.pdi-ann-text{margin:12px 0 0;color:inherit;overflow-wrap:anywhere;white-space:pre-line}
.pdi-ann-popup img,.pdi-ann-float img{display:block;width:100%;height:auto;margin-top:4px;border-radius:calc(var(--pdi-ann-radius,18px) - 8px)}
.pdi-ann-label{display:block;margin-top:16px;font-size:14px}
.pdi-ann-popup input,.pdi-ann-float input{box-sizing:border-box;display:block;width:100%;padding:12px;border:1px solid #00000038;border-radius:8px;margin:8px 0 0;font:inherit;background:#fff;color:#191919}
.pdi-ann-btn{display:block;box-sizing:border-box;width:100%;margin-top:16px;border:0;border-radius:calc(var(--pdi-ann-radius,18px) - 8px);
  padding:12px 18px;background:var(--pdi-ann-btn-bg,#191919);color:var(--pdi-ann-btn-fg,#fff);text-align:center;text-decoration:none;
  font:600 15px/1.3 var(--pdi-ann-font,system-ui,sans-serif);cursor:pointer}
.pdi-ann-btn--mince{width:auto;margin:0;padding:7px 16px;border-radius:999px;font-size:14px}
.pdi-ann-btn:hover{filter:brightness(1.15)}
.pdi-ann-close{position:absolute;top:6px;right:8px;background:transparent;color:inherit;border:0;font:26px/1 system-ui;cursor:pointer;padding:4px 10px;opacity:.65}
.pdi-ann-close:hover{opacity:1}

/* Les effets d'entree : UNE animation, sept variantes, chacune ne posant que
   son point de depart (--pdi-dx/--pdi-dy/--pdi-sc). */
/* Pas de `both` sur ces animations : le remplissage arriere garderait
   l'opacite 0 tant que la ligne de temps n'a pas demarre — et elle ne demarre
   pas dans un onglet d'arriere-plan (vu au banc, 16/09 : encart invisible). */
@keyframes pdi-ann-in{from{opacity:0;transform:translate(var(--pdi-dx,0),var(--pdi-dy,0)) scale(var(--pdi-sc,1))}to{opacity:1;transform:none}}
@keyframes pdi-ann-bounce{0%{opacity:0;transform:scale(.8)}55%{opacity:1;transform:scale(1.06)}75%{transform:scale(.97)}100%{transform:none}}
.pdi-ann-e-fade,.pdi-ann-e-slide-right,.pdi-ann-e-slide-left,.pdi-ann-e-slide-up,.pdi-ann-e-slide-down,.pdi-ann-e-zoom{animation:pdi-ann-in .42s cubic-bezier(.22,.9,.28,1)}
.pdi-ann-e-bounce{animation:pdi-ann-bounce .6s cubic-bezier(.22,.9,.28,1)}
.pdi-ann-e-slide-right{--pdi-dx:48px}
.pdi-ann-e-slide-left{--pdi-dx:-48px}
.pdi-ann-e-slide-up{--pdi-dy:48px}
.pdi-ann-e-slide-down{--pdi-dy:-48px}
.pdi-ann-e-zoom{--pdi-sc:.88}
.pdi-ann-float.pdi-ann-e-slide-right{--pdi-dx:120%}
.pdi-ann-float.pdi-ann-e-slide-left{--pdi-dx:-120%}
.pdi-ann-float.pdi-ann-e-slide-up{--pdi-dy:120%}
.pdi-ann-float.pdi-ann-e-slide-down{--pdi-dy:-120%}
@media(prefers-reduced-motion:reduce){.pdi-ann-e-fade,.pdi-ann-e-slide-right,.pdi-ann-e-slide-left,.pdi-ann-e-slide-up,.pdi-ann-e-slide-down,.pdi-ann-e-zoom,.pdi-ann-e-bounce{animation-duration:.01ms}}
@media(max-width:520px){
  .pdi-ann-float{left:8px;right:8px;width:auto;max-width:none}
  .pdi-ann-banner,.pdi-ann-float.pdi-ann-pos-bottom-bar{padding-left:40px;padding-right:40px}
}
