/* A.B.I.I.F. — barre d'onglets mobile (page d'accueil, Chants, Photos, Don). Visible sous 1180 px, quand le menu horizontal disparaît. */
.tabbar,.more-sheet,.more-veil{display:none}
/* image d'accueil pleine largeur sur tous les écrans : ni marge ni coins arrondis */
.hero-sticky{padding:0!important}
.poster{border-radius:0!important;box-shadow:none!important}
@media (max-width:1180px){
  /* barre flottante façon cartouche : décollée des bords et du bas de l'écran */
  :root{--tab-h:62px;--tab-gap:12px;--tab-space:calc(var(--tab-h) + var(--tab-gap) + env(safe-area-inset-bottom,0px))}
  body{padding-bottom:calc(var(--tab-space) + 12px)}
  /* « Nous rejoindre » reste dans l'en-tête, à droite (Aidez-nous est déjà dans la barre du bas) */
  .nav-actions{display:flex}
  .nav-actions .btn-red{display:none}
  .nav-actions .btn-blue-line{padding:.45rem .7rem;font-size:.85rem}
  .tabbar{position:fixed;left:var(--tab-gap);right:var(--tab-gap);bottom:calc(var(--tab-gap) + env(safe-area-inset-bottom,0px));z-index:55;display:grid;grid-template-columns:repeat(5,1fr);height:var(--tab-h);max-width:560px;margin:0 auto;padding:0 6px;border-radius:999px;background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(18px) saturate(1.6);backdrop-filter:blur(18px) saturate(1.6);border:1px solid rgba(255,255,255,.7);box-shadow:0 8px 28px rgba(5,20,45,.18),0 1px 0 rgba(24,85,160,.08)}
  .tabbar a,.tabbar button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;border:0;background:none;padding:0;color:#50627E;text-decoration:none;font-family:"Barlow Semi Condensed","Arial Narrow",system-ui,sans-serif;font-weight:600;font-size:.8rem;line-height:1;letter-spacing:.01em;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .tabbar svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .tabbar [aria-current],.tabbar [aria-expanded="true"]{color:#12437D}
  .tabbar a,.tabbar button{z-index:0}
  .tabbar [aria-current]::before,.tabbar [aria-expanded="true"]::before{content:"";position:absolute;inset:6px 2px;z-index:-1;border-radius:999px;background:rgba(24,85,160,.11)}
  .tabbar .tab-don[aria-current]::before{background:rgba(230,66,57,.12)}
  .tabbar .tab-don{color:#D3342B}
  .tabbar .tab-don[aria-current] svg{fill:#D3342B}
  /* version resserrée pendant le défilement vers le bas : icônes seules, cartouche plus petite */
  .tabbar{transition:height .28s ease,max-width .28s ease,bottom .28s ease}
  .tabbar span{transition:opacity .18s ease,max-height .28s ease;max-height:1.2em;overflow:hidden}
  .tabbar.compact{height:48px;max-width:300px}
  .tabbar.compact span{opacity:0;max-height:0}
  .tabbar.compact a,.tabbar.compact button{gap:0}
  .tabbar.compact svg{width:22px;height:22px}
  .tabbar.compact [aria-current]::before{inset:5px 4px}
  .more-veil{position:fixed;inset:0;z-index:53;background:rgba(7,23,46,.45)}
  .more-sheet{position:fixed;left:var(--tab-gap);right:var(--tab-gap);bottom:calc(var(--tab-space) + 10px);z-index:54;max-width:560px;margin:0 auto;max-height:calc(100svh - var(--tab-space) - 100px);overflow-y:auto;background:#fff;border-radius:22px;box-shadow:0 -18px 40px rgba(5,20,45,.2);padding:.6rem clamp(1.25rem,5vw,2.5rem) 1.2rem;animation:sheetIn .2s ease}
  .more-veil:not([hidden]),.more-sheet:not([hidden]){display:block}
  .more-sheet ul{list-style:none;margin:0;padding:0}
  .more-sheet li{border-bottom:1px solid rgba(24,85,160,.14)}
  .more-sheet li a{display:flex;align-items:center;justify-content:space-between;padding:.95rem .2rem;font-family:"Barlow Semi Condensed","Arial Narrow",system-ui,sans-serif;font-weight:600;font-size:1.3rem;line-height:1.2;color:#12437D;text-decoration:none}
  .more-sheet li a::after{content:"";width:9px;height:9px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg);opacity:.45}
  .more-sheet li a:hover{color:#D3342B}
  .more-sheet .btn{display:flex;justify-content:center;width:100%;margin-top:1.1rem;padding:.85rem 1rem;font-size:1.05rem}
  body.more-open{overflow:hidden}
  /* éléments fixés en bas : ils se placent au-dessus de la barre */
  .player{bottom:calc(var(--tab-space) + 8px)!important;padding-bottom:.7rem!important}
  .hero-sticky{height:calc(100svh - var(--nav-h) - env(safe-area-inset-top,0px) - var(--tab-space))!important}
}
@keyframes sheetIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.more-sheet{animation:none}.tabbar,.tabbar span{transition:none}}

/* citations balisées <q> (RGAA 9.4) : les guillemets français sont déjà dans le texte */
q.cit{quotes:none}

/* listes de liens (RGAA 9.3) : sémantique de liste, mise en page inchangée */
nav ul.nl,nav ul.nl>li{display:contents}
nav ul.nl{list-style:none;margin:0;padding:0}
/* barre mobile : fond opaque (contraste) et onglet actif signalé autrement que par la couleur (RGAA 3.1, 3.2) */
.tabbar{background:rgba(255,255,255,.97)}.tabbar [aria-current]::before{background:rgba(24,85,160,.16);box-shadow:inset 0 0 0 1.5px #12437D}.tabbar .tab-don[aria-current]::before{box-shadow:inset 0 0 0 1.5px #D3342B}.tabbar [aria-current] span{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* RGAA 10.7 : l'élément qui a le focus n'est pas caché sous la barre mobile */
@media (max-width:1180px){html{scroll-padding-bottom:calc(var(--tab-space, 96px) + 1rem)}}
/* onglet actif : la pastille entoure l'icône seule, sans toucher au libellé (« Pèlerinages », « Aidez-nous » sont plus larges que la colonne) */
@media (max-width:1180px){
  .tabbar:not(.compact) [aria-current]::before,.tabbar:not(.compact) [aria-expanded="true"]::before{inset:auto;top:7px;left:50%;width:58px;height:30px;transform:translateX(-50%)}
}
