/* RBK/BKB V3.9.2 — corrections web et mobile ciblées */

body.menu-open{overflow:hidden!important;touch-action:none}

@media(max-width:900px){
  /* Menu mobile réellement opaque et lisible */
  /* Le panneau est ancré au bas de l'en-tête, pas au bas du document. */
  .mobile-nav{
    position:absolute!important;
    inset:auto 0 auto 0!important;
    top:100%!important;
    bottom:auto!important;
    width:100%!important;
    height:calc(100dvh - 72px - env(safe-area-inset-top,0px))!important;
    max-height:calc(100dvh - 72px - env(safe-area-inset-top,0px))!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    background:#fffaf2!important;
    color:#1e1422!important;
    z-index:999!important;
    opacity:1!important;
    backdrop-filter:none!important;
  }
  .mobile-nav.open{display:block!important;padding:18px 22px calc(100px + env(safe-area-inset-bottom,0px))!important}
  /* Typographie unique pour TOUS les liens du menu ouvert.
     Les liens secondaires n'utilisent plus la police sans serif en gras. */
  .mobile-nav-primary,.mobile-nav-secondary{grid-template-columns:1fr!important;gap:0!important}
  .mobile-nav .mobile-nav-primary a,
  .mobile-nav .mobile-nav-secondary a{
    display:flex!important;
    align-items:center!important;
    min-height:58px!important;
    padding:14px 4px!important;
    margin:0!important;
    font-family:var(--serif)!important;
    font-size:clamp(23px,6.4vw,29px)!important;
    font-weight:500!important;
    font-style:normal!important;
    line-height:1.23!important;
    letter-spacing:0!important;
    text-transform:none!important;
    color:#211326!important;
    border-bottom:1px solid var(--line)!important;
  }
  .mobile-nav-secondary{margin-top:6px!important}
  .site-header.menu-active{z-index:1000!important;background:#fffaf2!important}
  .menu-btn[aria-expanded="true"] span:first-child{transform:translateY(5px) rotate(45deg)}
  .menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
  .menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-5px) rotate(-45deg)}
  .menu-btn span{transition:transform .2s ease,opacity .2s ease}

  /* Messages : vraie composition mobile, sans crop du texte ni du visage */
  .message-featured,.message-tile{
    min-height:0!important;height:auto!important;aspect-ratio:auto!important;
    display:flex!important;flex-direction:column!important;background:#211329!important;
  }
  .message-featured>img,.message-tile>img{
    position:relative!important;inset:auto!important;width:100%!important;height:auto!important;
    aspect-ratio:16/9!important;object-fit:contain!important;object-position:center!important;
    background:#120c16!important;transform:none!important;
  }
  .message-featured .message-shade,.message-tile .message-shade{display:none!important}
  .message-featured-copy,.message-tile>div{
    position:relative!important;inset:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
    padding:22px 20px 24px!important;max-width:none!important;background:#211329!important;
  }
  .message-featured-copy h3,.message-tile h3{
    display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;
    overflow:hidden!important;font-size:clamp(25px,7vw,36px)!important;line-height:1.05!important;
  }
  .message-featured-copy p{font-size:14px!important}
  .message-play{
    top:20px!important;right:20px!important;left:auto!important;transform:none!important;
    width:56px!important;height:56px!important;
  }
  .message-tile .message-play{top:18px!important;right:18px!important;transform:none!important}
  .message-featured:hover .message-play,.message-tile:hover .message-play{transform:scale(1.05)!important}
  .message-duration{top:calc((100vw - 34px) * .5625 - 42px)!important;right:16px!important;bottom:auto!important}

  /* Église en ligne compacte */
  .online-preview{min-height:440px!important}
  .online-copy{padding:54px 24px 38px!important}
  .online-copy h2{font-size:clamp(36px,10vw,46px)!important;line-height:1!important}
  .online-copy p{font-size:15px!important;line-height:1.5!important}
  .online-copy .action-row{display:grid!important;gap:10px!important}
  .online-copy .btn{width:100%!important}

  /* Reflet : aucun grand décor vide avant l'action */
  .reflection-preview{display:block!important;padding:34px 24px!important;background:#f5ecde!important}
  /* Reflet : l'aigle EEMA (photo réelle) au-dessus du texte, hauteur maîtrisée, œil et bec visibles — 17/10/2026 */
  .reflection-preview .reflection-art{display:block!important;height:clamp(180px,54vw,360px)!important;margin:-34px -24px 4px!important;overflow:hidden!important}
  .reflection-preview .reflection-art img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 65%!important}
  .reflection-preview{margin-left:auto!important;margin-right:auto!important}
  .reflection-preview .reflection-art+div{padding-bottom:6px!important}
  .reflection-hero-v392{min-height:0!important;background:linear-gradient(135deg,#21122d,#5c3047)!important}
  .reflection-hero-v392>img,.reflection-hero-v392 .hero-shade{display:none!important}
  .reflection-hero-v392 .sub-hero-copy{position:relative!important;inset:auto!important;padding:112px 5vw 46px!important}
  .reflection-hero-v392 h1{font-size:clamp(36px,10vw,48px)!important}
  .reflection-page-v39{padding-top:40px!important}

  /* Agenda : rail compact, lieu visible */
  .weekly-home .section-head{margin-bottom:14px!important}
  .weekly-home .section-head>a{margin-top:8px!important}
  .weekly-home .schedule-grid{display:flex!important;overflow-x:auto!important;gap:13px!important;scroll-snap-type:x mandatory!important;padding-bottom:10px!important}
  .weekly-home .schedule-card{flex:0 0 min(82vw,330px)!important;min-height:210px!important;padding:20px!important;scroll-snap-align:start!important}
  .schedule-place{font-size:12px!important;line-height:1.45!important;color:#665b67!important;margin-top:10px!important}

  /* À propos et filiation */
  .reverend-preview h2{font-size:clamp(34px,9vw,44px)!important;line-height:1.02!important}
  .spiritual-heritage{grid-template-columns:1fr!important;padding:34px 24px!important}
  .heritage-photo{order:-1!important}
  .heritage-photo img{width:100%!important;aspect-ratio:16/10!important;object-fit:cover!important;object-position:center 18%!important;border-radius:22px!important}

  /* Presse : jamais de bloc invisible */
  .press-home .press-grid,.press-grid[data-press-grid]{min-height:0!important}
  .press-card{opacity:1!important;transform:none!important;visibility:visible!important}
}

@media(min-width:901px){
  .weekly-home .schedule-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .weekly-home .schedule-card{min-height:210px!important}
  .spiritual-heritage{grid-template-columns:1.1fr .9fr!important}
  .heritage-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 18%;border-radius:28px}
}

@media(max-width:430px){
  .mobile-nav.open{padding-inline:18px!important}
  .message-featured-copy,.message-tile>div{padding-inline:18px!important}
}

@media(prefers-reduced-motion:reduce){
  .mobile-nav,.menu-btn span,.message-play{transition:none!important}
}

