/* Keep the photo caption crisp and fully inside its frame at every size. */
.hero-photo{position:relative;overflow:hidden}
.hero-photo-caption{position:absolute;z-index:1;left:24px;right:24px;bottom:12px;display:flex;align-items:center;justify-content:center;gap:14px;color:#fff;font:14px/1.2 Arial,sans-serif;text-shadow:0 1px 4px #000,0 0 10px #000;pointer-events:none}
.hero-photo-caption span{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.hero-photo-caption svg{width:28px;height:28px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 3px #000)}
.hero-photo-caption .caption-arrow{font-size:20px}
@media(min-width:901px){
 .home-compact[data-home-density] .hero-photo>.crop{top:auto;bottom:0;transform:none}
}
@media(min-width:901px) and (max-height:750px){
 .home-compact[data-home-density] .hero-photo{background:#35271f}
 .home-compact[data-home-density] .hero-photo::before{content:"";position:absolute;inset:-16px;background:url('/assets/accueil-photo-qr-anodos-v5.webp') 100% 22%/179% auto no-repeat;filter:blur(14px);opacity:.65}
 .home-compact[data-home-density] .hero-photo>.crop{top:0;bottom:auto;left:50%;width:auto;height:100%;max-width:100%;transform:translateX(-50%)}
 .hero-photo-caption{bottom:5px;font-size:10px;gap:8px}
 .hero-photo-caption svg{width:20px;height:20px}
}
@media(max-width:1100px){.hero-photo-caption{gap:8px;left:12px;right:12px;font-size:12px}.hero-photo-caption span{gap:5px}.hero-photo-caption svg{width:23px;height:23px}}
@media(max-width:480px){.hero-photo-caption{bottom:9px;left:7px;right:7px;gap:5px;font-size:10px}.hero-photo-caption span{gap:4px}.hero-photo-caption svg{width:20px;height:20px}.hero-photo-caption .caption-arrow{font-size:15px}}
