
/* ===== V241.225 bundled from assets/css/ofqd-mobile-stabilisation-v24124.css ===== */
/* On Fait Quoi Demain — V241.24 REPRISE
   Stabilisation d'affichage mobile uniquement.
   Aucun JavaScript, aucun effet sur PC > 760px. */
@media (max-width:760px){
  :root{
    --ofqd-v24124-header:60px;
    --ofqd-v24124-bottom:66px;
    --ofqd-v24124-gutter:10px;
  }

  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body{
    padding-bottom:calc(var(--ofqd-v24124-bottom) + env(safe-area-inset-bottom,0px))!important;
  }
  img,svg,video,canvas{max-width:100%!important}

  /* Header : tous les éléments restent dans les 100% de largeur. */
  html body .ofqd-header-v22{
    height:calc(var(--ofqd-v24124-header) + env(safe-area-inset-top,0px))!important;
    min-height:calc(var(--ofqd-v24124-header) + env(safe-area-inset-top,0px))!important;
    padding-top:env(safe-area-inset-top,0px)!important;
    overflow:visible!important;
  }
  html body .ofqd-header-v22 .ofqd-nav-wrap{
    width:100%!important;
    max-width:100%!important;
    height:var(--ofqd-v24124-header)!important;
    min-height:var(--ofqd-v24124-header)!important;
    padding:0 var(--ofqd-v24124-gutter)!important;
    gap:6px!important;
    flex-wrap:nowrap!important;
  }
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle{
    display:grid!important;
    place-items:center!important;
    flex:0 0 40px!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    padding:0!important;
    margin:0!important;
  }
  html body .ofqd-header-v22 .ofqd-brand{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:112px!important;
    margin:0!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{
    font-size:28px!important;
    line-height:.82!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-wordmark small{
    font-size:7px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .ofqd-header-v22 .ofqd-top-actions{
    flex:0 0 auto!important;
    min-width:0!important;
    height:100%!important;
    margin:0 0 0 auto!important;
    gap:3px!important;
  }
  html body .ofqd-header-v22 .ofqd-action-icon,
  html body .ofqd-header-v22 .ofqd-account-summary{
    flex:0 0 38px!important;
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0!important;
    margin:0!important;
  }
  html body .ofqd-header-v22 .ofqd-action-icon > span{display:none!important}
  html body .ofqd-header-v22 .ofqd-action-icon svg,
  html body .ofqd-header-v22 .ofqd-account-summary > svg{
    width:20px!important;
    height:20px!important;
  }
  html body .ofqd-header-v22 .ofqd-fav-link,
  html body .ofqd-header-v22 .ofqd-share-desktop{display:none!important}
  html body .ofqd-header-v22 .ofqd-login-link{
    flex:0 0 auto!important;
    min-width:0!important;
    height:38px!important;
    padding:0 8px!important;
    margin:0!important;
    font-size:9.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  /* Menu hamburger : jamais coupé, jamais plus large que l'écran. */
  html body .ofqd-header-v22 .ofqd-main-nav{
    position:fixed!important;
    top:calc(var(--ofqd-v24124-header) + env(safe-area-inset-top,0px))!important;
    left:8px!important;
    right:8px!important;
    bottom:calc(var(--ofqd-v24124-bottom) + env(safe-area-inset-bottom,0px) + 8px)!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-content:start!important;
    gap:7px!important;
    padding:10px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    border-radius:18px!important;
  }
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-main-nav{display:grid!important}
  html body .ofqd-header-v22 .ofqd-main-nav .ofqd-nav-item{
    width:100%!important;
    min-width:0!important;
    height:62px!important;
    min-height:62px!important;
    padding:7px 5px!important;
    margin:0!important;
    font-size:11px!important;
    line-height:1.05!important;
    white-space:normal!important;
    text-align:center!important;
  }
  html body .ofqd-header-v22 .ofqd-main-nav .ofqd-nav-deposit-link{
    grid-column:1/-1!important;
    height:52px!important;
    min-height:52px!important;
    flex-direction:row!important;
  }

  /* Largeurs de page : aucun contenu ne doit dépasser l'écran. */
  html body .ofqd-container,
  html body .container,
  html body .page-container,
  html body .content-container,
  html body .ofqd-page-shell{
    max-width:100%!important;
    min-width:0!important;
  }
  html body main,
  html body section,
  html body article,
  html body aside{
    min-width:0!important;
    max-width:100%!important;
  }

  /* Barre basse : 5 commandes identiques et centrées. */
  html body .ofqd-mobile-bottom-nav{
    display:grid!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    height:calc(var(--ofqd-v24124-bottom) + env(safe-area-inset-bottom,0px))!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:stretch!important;
    padding:4px 4px env(safe-area-inset-bottom,0px)!important;
    overflow:visible!important;
  }
  html body .ofqd-mobile-bottom-nav > a,
  html body .ofqd-mobile-bottom-nav > button{
    width:100%!important;
    min-width:0!important;
    min-height:58px!important;
    padding:4px 1px!important;
    margin:0!important;
    gap:2px!important;
    font-size:9.5px!important;
    line-height:1!important;
    text-align:center!important;
  }
  html body .ofqd-mobile-bottom-nav svg{
    width:20px!important;
    height:20px!important;
  }
  html body .ofqd-mobile-bottom-nav [data-mobile-nav="add"] span{
    width:32px!important;
    height:32px!important;
    margin-top:-11px!important;
  }

  /* Installation PWA : toujours au-dessus de la barre basse. */
  html body .ofqd-install-banner{
    left:8px!important;
    right:8px!important;
    width:auto!important;
    max-width:none!important;
    bottom:calc(var(--ofqd-v24124-bottom) + env(safe-area-inset-bottom,0px) + 8px)!important;
  }

  /* Fiche publique : boutons et cartes ne débordent jamais. */
  html body .ofqd-public-ad-shell,
  html body .ofqd-public-ad-hero,
  html body .ofqd-public-ad-grid,
  html body .ofqd-public-bottom-row-v24119{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body .ofqd-public-actions,
  html body .ofqd-public-contact-actions{
    max-width:100%!important;
  }
  html body .ofqd-public-bottom-row-v24119{
    grid-template-columns:1fr!important;
  }
}

@media (max-width:360px){
  html body .ofqd-header-v22 .ofqd-brand{max-width:92px!important}
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{font-size:25px!important}
  html body .ofqd-header-v22 .ofqd-login-link{padding:0 6px!important;font-size:9px!important}
  html body .ofqd-mobile-bottom-nav > a,
  html body .ofqd-mobile-bottom-nav > button{font-size:8.5px!important}
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-fix-v24125.css ===== */
/* On Fait Quoi Demain — V241.25 REPRISE
   Correctif d'affichage mobile final, base V241.24.
   Portée stricte <= 760px : PC inchangé. */
@media (max-width:760px){
  :root{
    --ofqd-v24125-header:64px;
    --ofqd-v24125-bottom:68px;
    --ofqd-v24125-gap:8px;
  }

  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body{
    padding-bottom:calc(var(--ofqd-v24125-bottom) + 16px + env(safe-area-inset-bottom,0px))!important;
  }

  /* ===== HEADER MOBILE UNIQUE ===== */
  html body .ofqd-header-v22,
  html body .ofqd-topbar-v1.ofqd-header-v22{
    position:sticky!important;
    top:0!important;
    z-index:2147483000!important;
    width:100%!important;
    height:calc(var(--ofqd-v24125-header) + env(safe-area-inset-top,0px))!important;
    min-height:calc(var(--ofqd-v24125-header) + env(safe-area-inset-top,0px))!important;
    padding:env(safe-area-inset-top,0px) 0 0!important;
    margin:0!important;
    border-radius:0 0 18px 18px!important;
    overflow:visible!important;
    background:#071b55!important;
    box-shadow:0 6px 20px rgba(4,18,55,.20)!important;
  }
  html body .ofqd-header-v22::before,
  html body .ofqd-header-v22::after{
    pointer-events:none!important;
  }
  html body .ofqd-header-v22 .ofqd-nav-wrap{
    position:relative!important;
    z-index:3!important;
    width:100%!important;
    max-width:100%!important;
    height:var(--ofqd-v24125-header)!important;
    min-height:var(--ofqd-v24125-header)!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:8px!important;
    padding:0 10px!important;
    margin:0!important;
  }

  /* Hamburger : jamais blanc/vide, même lorsque le menu est ouvert. */
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle,
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-mobile-menu-toggle{
    display:grid!important;
    place-items:center!important;
    position:relative!important;
    z-index:2147483450!important;
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    margin:0!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.09)!important;
    color:#fff!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
    opacity:1!important;
    visibility:visible!important;
  }
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle svg,
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-mobile-menu-toggle svg{
    display:block!important;
    width:24px!important;
    height:24px!important;
    max-width:24px!important;
    max-height:24px!important;
    opacity:1!important;
    visibility:visible!important;
    fill:none!important;
    stroke:#fff!important;
    stroke-width:2.2!important;
    stroke-linecap:round!important;
  }

  html body .ofqd-header-v22 .ofqd-brand{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-width:0!important;
    width:auto!important;
    max-width:168px!important;
    height:46px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }
  html body .ofqd-header-v22 .ofqd-brand::before{display:none!important;content:none!important}
  html body .ofqd-header-v22 .ofqd-brand .ofqd-v22-wordmark{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-name{display:flex!important;align-items:baseline!important}
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{
    display:inline!important;
    font-size:30px!important;
    line-height:.82!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-wordmark small{
    display:block!important;
    font-size:8px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
  }

  html body .ofqd-header-v22 .ofqd-top-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:auto!important;
    min-width:0!important;
    height:44px!important;
    gap:6px!important;
    margin:0!important;
  }
  html body .ofqd-header-v22 .ofqd-fav-link,
  html body .ofqd-header-v22 .ofqd-messaging-link,
  html body .ofqd-header-v22 .ofqd-share-desktop{
    display:none!important;
  }
  html body .ofqd-header-v22 .ofqd-night-desktop{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    border-radius:13px!important;
  }
  html body .ofqd-header-v22 .ofqd-night-desktop > span{display:none!important}
  html body .ofqd-header-v22 .ofqd-night-desktop svg{width:21px!important;height:21px!important}
  html body .ofqd-header-v22 .ofqd-login-link{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    min-width:0!important;
    height:42px!important;
    padding:0 11px!important;
    margin:0!important;
    border-radius:13px!important;
    font-size:11px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  /* Le menu principal est réellement absent lorsqu'il est fermé : plus de barre fantôme. */
  html body:not(.ofqd-mobile-menu-open) .ofqd-header-v22 .ofqd-main-nav{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-main-nav{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    z-index:2147483400!important;
    top:calc(var(--ofqd-v24125-header) + env(safe-area-inset-top,0px) + 8px)!important;
    left:8px!important;
    right:8px!important;
    bottom:calc(var(--ofqd-v24125-bottom) + env(safe-area-inset-bottom,0px) + 12px)!important;
    width:auto!important;
    height:auto!important;
    max-height:none!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-content:start!important;
    gap:8px!important;
    padding:10px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:18px!important;
    background:rgba(5,27,78,.99)!important;
    box-shadow:0 24px 70px rgba(0,0,0,.38)!important;
  }
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-main-nav .ofqd-nav-item{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    height:62px!important;
    min-height:62px!important;
    padding:7px 5px!important;
    border-radius:14px!important;
    color:#fff!important;
    text-align:center!important;
  }
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-main-nav .ofqd-nav-deposit-link{
    grid-column:1/-1!important;
    height:50px!important;
    min-height:50px!important;
    flex-direction:row!important;
  }

  /* ===== BARRE BASSE : PROFIL TOUJOURS VISIBLE ===== */
  html body .ofqd-mobile-bottom-nav{
    display:grid!important;
    position:fixed!important;
    z-index:2147483200!important;
    left:7px!important;
    right:7px!important;
    bottom:max(7px,env(safe-area-inset-bottom,0px))!important;
    width:auto!important;
    height:64px!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:stretch!important;
    gap:0!important;
    padding:4px!important;
    border-radius:22px!important;
    overflow:hidden!important;
    background:rgba(5,25,72,.985)!important;
    box-shadow:0 10px 34px rgba(5,20,60,.28)!important;
  }
  html body .ofqd-mobile-bottom-nav > a,
  html body .ofqd-mobile-bottom-nav > button{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    height:56px!important;
    min-height:56px!important;
    padding:3px 1px!important;
    gap:2px!important;
    border-radius:17px!important;
    overflow:hidden!important;
    font-size:9.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .ofqd-mobile-bottom-nav > a > span,
  html body .ofqd-mobile-bottom-nav > button > span{
    display:grid!important;
    place-items:center!important;
    width:26px!important;
    height:26px!important;
    min-width:26px!important;
    min-height:26px!important;
    margin:0!important;
  }
  html body .ofqd-mobile-bottom-nav [data-mobile-nav="add"] > span{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    margin:-9px 0 0!important;
  }
  html body .ofqd-mobile-bottom-nav svg{
    display:block!important;
    width:21px!important;
    height:21px!important;
  }
  html body .ofqd-mobile-bottom-nav [data-mobile-nav="profile"]{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
  }

  /* Rodyn flotte AU-DESSUS de la navigation, jamais dans la case Profil. */
  html body .rodyn-launcher{
    position:fixed!important;
    z-index:2147483100!important;
    right:12px!important;
    left:auto!important;
    top:auto!important;
    bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;
    width:50px!important;
    min-width:50px!important;
    height:50px!important;
    min-height:50px!important;
    padding:3px!important;
    border-radius:999px!important;
  }
  html body .rodyn-launcher-avatar{
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
  }
  html body .rodyn-launcher-text,
  html body .rodyn-launcher-arrow{display:none!important}
  html body .rodyn-panel{
    left:8px!important;
    right:8px!important;
    bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;
    max-width:none!important;
    height:min(72dvh,590px)!important;
    max-height:min(72dvh,590px)!important;
  }

  /* ===== PARTAGE : AUCUNE SUPERPOSITION RODYN / NAV ===== */
  html body.ofqd-share-open{
    overflow:hidden!important;
    touch-action:none!important;
  }
  html body.ofqd-share-open .rodyn-launcher,
  html body.ofqd-share-open .rodyn-panel,
  html body.ofqd-share-open .ofqd-mobile-bottom-nav{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  html body .ofqd-share-modal{
    position:fixed!important;
    inset:0!important;
    z-index:2147483646!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:calc(env(safe-area-inset-top,0px) + 10px) 10px calc(env(safe-area-inset-bottom,0px) + 10px)!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    border-radius:0!important;
    background:rgba(3,14,45,.66)!important;
  }
  html body .ofqd-share-modal .ofqd-share-box{
    width:min(100%,440px)!important;
    max-width:440px!important;
    max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 20px)!important;
    margin:0!important;
    padding:16px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    border-radius:20px!important;
  }
  html body .ofqd-share-modal .ofqd-share-box h3{
    margin:0 0 5px!important;
    font-size:22px!important;
    line-height:1.08!important;
  }
  html body .ofqd-share-modal .ofqd-share-box p{
    margin:0 0 12px!important;
    font-size:14px!important;
    line-height:1.25!important;
  }
  html body .ofqd-share-modal .ofqd-share-message{
    min-height:82px!important;
    max-height:105px!important;
    font-size:14px!important;
  }
  html body .ofqd-share-modal .ofqd-share-qr img{
    width:132px!important;
    height:132px!important;
  }
  html body .ofqd-share-modal .ofqd-share-grid{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }
  html body .ofqd-share-modal .ofqd-share-grid a,
  html body .ofqd-share-modal .ofqd-share-grid button{
    min-height:40px!important;
    padding:8px!important;
    font-size:11.5px!important;
  }

  /* ===== ÉVÉNEMENTS : SUPPRESSION DE LA BARRE BLANCHE VIDE ===== */
  html body .ofqd-events-premium-v264 .ofqd-mobile-featured-v76{
    display:none!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  html body .ofqd-events-premium-v264 .ofqd-v279-commandbar{
    margin-bottom:8px!important;
  }
  html body .ofqd-events-premium-v264 .ofqd-v70-periods{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:6px!important;
    width:100%!important;
    overflow-x:auto!important;
    padding:2px 0 4px!important;
    scrollbar-width:none!important;
  }
  html body .ofqd-events-premium-v264 .ofqd-v70-periods::-webkit-scrollbar{display:none!important}
  html body .ofqd-events-premium-v264 .ofqd-v70-periods a{
    flex:0 0 auto!important;
    min-height:32px!important;
    padding:6px 9px!important;
    border:1px solid #cbdcf2!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#17366e!important;
    font-size:12px!important;
    font-weight:850!important;
    line-height:1!important;
    text-decoration:none!important;
    white-space:nowrap!important;
  }
  html body .ofqd-events-premium-v264 .ofqd-v70-periods a.is-active{
    border-color:#0878e8!important;
    background:#0878e8!important;
    color:#fff!important;
  }

  /* Sécurité générale : aucun composant de page ne crée un débordement latéral. */
  html body main,
  html body main > *,
  html body section,
  html body article,
  html body aside,
  html body form{
    min-width:0!important;
    max-width:100%!important;
  }
}

@media (max-width:370px){
  html body .ofqd-header-v22 .ofqd-nav-wrap{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    gap:5px!important;
    padding:0 7px!important;
  }
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle{
    width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{font-size:27px!important}
  html body .ofqd-header-v22 .ofqd-login-link{padding:0 8px!important;font-size:10px!important}
  html body .ofqd-mobile-bottom-nav > a,
  html body .ofqd-mobile-bottom-nav > button{font-size:8.7px!important}
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-fix-v24126.css ===== */
/* On Fait Quoi Demain — V241.26 REPRISE
   Mobile : suppression définitive du menu fantôme sous le header.
   Portée stricte <= 760 px. PC inchangé. */
@media (max-width:760px){
  /*
   * L'état visuel du menu dépend désormais de l'attribut ARIA du hamburger.
   * Cela neutralise les anciennes feuilles qui pouvaient réafficher .ofqd-main-nav
   * à cause d'une classe body/html résiduelle.
   */
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle[aria-expanded="false"] ~ .ofqd-main-nav{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    position:fixed!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    max-width:0!important;
    max-height:0!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    transform:none!important;
    animation:none!important;
  }

  /* Ouverture volontaire uniquement lorsque le bouton annonce réellement true. */
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle[aria-expanded="true"] ~ .ofqd-main-nav{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    z-index:2147483400!important;
    top:calc(64px + env(safe-area-inset-top,0px) + 8px)!important;
    left:8px!important;
    right:8px!important;
    bottom:calc(68px + env(safe-area-inset-bottom,0px) + 12px)!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    max-width:none!important;
    max-height:none!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-content:start!important;
    gap:8px!important;
    margin:0!important;
    padding:10px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:18px!important;
    background:rgba(5,27,78,.99)!important;
    box-shadow:0 24px 70px rgba(0,0,0,.38)!important;
    transform:none!important;
  }

  /* Le hero commence immédiatement sous le header, sans ancienne bande réservée. */
  html body .ofqd-hero-clean-v24{
    margin-top:0!important;
    padding-top:0!important;
  }
  html body .ofqd-hero-clean-v24 .ofqd-hero-v24-inner{
    margin-top:0!important;
  }

  /* Recherche : aucune translation négative ne peut remonter sur le titre. */
  html body .ofqd-hero-clean-v24 .ofqd-hero-v24-search{
    top:auto!important;
    bottom:auto!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    margin-top:0!important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-menu-v24127.css ===== */
/* On Fait Quoi Demain — V241.27 REPRISE
   Menu mobile réellement visible : le panneau ouvert est porté directement par <body>.
   Portée stricte <= 760px. PC inchangé. */
@media (max-width:760px){
  body.ofqd-mobile-menu-v24127-open{
    overflow:hidden!important;
  }

  body > .ofqd-mobile-menu-backdrop-v24127{
    display:none!important;
    position:fixed!important;
    inset:0!important;
    z-index:2147483450!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:rgba(3,15,48,.48)!important;
    backdrop-filter:blur(2px)!important;
    -webkit-backdrop-filter:blur(2px)!important;
  }
  body.ofqd-mobile-menu-v24127-open > .ofqd-mobile-menu-backdrop-v24127{
    display:block!important;
  }

  /* Le panneau est volontairement enfant direct de body pendant l'ouverture.
     Il n'est donc plus limité/coupé par le header ou son conteneur. */
  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    z-index:2147483600!important;
    top:var(--ofqd-mobile-menu-top-v24127,72px)!important;
    left:10px!important;
    right:10px!important;
    bottom:auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - var(--ofqd-mobile-menu-top-v24127,72px) - 86px)!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-content:start!important;
    gap:8px!important;
    margin:0!important;
    padding:10px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:18px!important;
    background:#071b55!important;
    box-shadow:0 22px 60px rgba(0,0,0,.38)!important;
    transform:none!important;
    animation:none!important;
    isolation:isolate!important;
  }

  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-nav-item{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    width:100%!important;
    min-width:0!important;
    height:64px!important;
    min-height:64px!important;
    margin:0!important;
    padding:7px 6px!important;
    border:1px solid rgba(255,255,255,.13)!important;
    border-radius:13px!important;
    background:rgba(255,255,255,.075)!important;
    color:#fff!important;
    text-decoration:none!important;
    text-align:center!important;
    white-space:normal!important;
    box-shadow:none!important;
  }
  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-nav-item.active{
    background:rgba(30,126,255,.28)!important;
    border-color:rgba(92,164,255,.65)!important;
  }
  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-nav-item::after{
    display:none!important;
    content:none!important;
  }
  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-nav-item svg,
  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-modern-nav-icon{
    display:block!important;
    flex:0 0 auto!important;
    width:23px!important;
    height:23px!important;
    max-width:23px!important;
    max-height:23px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.9!important;
    opacity:1!important;
  }
  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-nav-item span{
    display:block!important;
    max-width:100%!important;
    margin:0!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:850!important;
    line-height:1.08!important;
    text-decoration:none!important;
    overflow:visible!important;
  }
  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-nav-deposit-link{
    grid-column:1/-1!important;
    flex-direction:row!important;
    height:52px!important;
    min-height:52px!important;
    background:linear-gradient(135deg,#0b78ff,#0060df)!important;
    border-color:rgba(255,255,255,.22)!important;
  }

  /* Le header reste au-dessus du voile pour que le hamburger serve aussi à fermer. */
  body.ofqd-mobile-menu-v24127-open .ofqd-header-v22{
    z-index:2147483700!important;
  }
  body.ofqd-mobile-menu-v24127-open .ofqd-header-v22 .ofqd-mobile-menu-toggle{
    background:rgba(255,255,255,.16)!important;
    border-color:rgba(255,255,255,.34)!important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-header-compact-v24128.css ===== */
/* On Fait Quoi Demain — V241.28 REPRISE
   Header mobile compact uniquement. PC inchangé (>760px).
   Chargé après V241.27 pour neutraliser les anciennes hauteurs concurrentes. */
@media (max-width:760px){
  :root{
    --ofqd-v24128-header:56px;
  }

  html body .ofqd-header-v22,
  html body .ofqd-topbar-v1.ofqd-header-v22{
    height:calc(var(--ofqd-v24128-header) + env(safe-area-inset-top,0px))!important;
    min-height:calc(var(--ofqd-v24128-header) + env(safe-area-inset-top,0px))!important;
    padding:env(safe-area-inset-top,0px) 0 0!important;
    border-radius:0 0 15px 15px!important;
  }

  html body .ofqd-header-v22 .ofqd-nav-wrap{
    height:var(--ofqd-v24128-header)!important;
    min-height:var(--ofqd-v24128-header)!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:7px!important;
    padding:0 9px!important;
  }

  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle,
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-mobile-menu-toggle,
  html body.ofqd-mobile-menu-v24127-open .ofqd-header-v22 .ofqd-mobile-menu-toggle{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    border-radius:12px!important;
    margin:0!important;
  }
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle svg,
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-mobile-menu-toggle svg,
  html body.ofqd-mobile-menu-v24127-open .ofqd-header-v22 .ofqd-mobile-menu-toggle svg{
    width:22px!important;
    height:22px!important;
    max-width:22px!important;
    max-height:22px!important;
  }

  html body .ofqd-header-v22 .ofqd-brand{
    height:40px!important;
    max-width:150px!important;
    align-self:center!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{
    font-size:27px!important;
    line-height:.82!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-wordmark small{
    font-size:7.2px!important;
    line-height:1!important;
  }

  html body .ofqd-header-v22 .ofqd-top-actions{
    height:40px!important;
    min-height:40px!important;
    gap:5px!important;
    align-self:center!important;
  }
  html body .ofqd-header-v22 .ofqd-night-desktop{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    border-radius:12px!important;
  }
  html body .ofqd-header-v22 .ofqd-night-desktop svg{
    width:19px!important;
    height:19px!important;
  }
  html body .ofqd-header-v22 .ofqd-login-link{
    height:38px!important;
    min-height:38px!important;
    padding:0 10px!important;
    border-radius:12px!important;
    font-size:10.5px!important;
  }

  /* L'ancien espace réservé au header ne doit pas survivre dans les composants mobiles. */
  html body .ofqd-mobile-header-spacer,
  html body .ofqd-header-spacer{
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
  }
}

@media (max-width:370px){
  :root{--ofqd-v24128-header:54px}
  html body .ofqd-header-v22 .ofqd-nav-wrap{
    grid-template-columns:40px minmax(0,1fr) auto!important;
    gap:5px!important;
    padding:0 7px!important;
  }
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle,
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-mobile-menu-toggle,
  html body.ofqd-mobile-menu-v24127-open .ofqd-header-v22 .ofqd-mobile-menu-toggle{
    width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{font-size:25px!important}
  html body .ofqd-header-v22 .ofqd-login-link{height:36px!important;min-height:36px!important;padding:0 8px!important;font-size:10px!important}
  html body .ofqd-header-v22 .ofqd-night-desktop{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important}
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-header-visible-v24129.css ===== */
/* On Fait Quoi Demain — V241.29 REPRISE
   Header mobile visible et compact.
   Corrige le tassement vertical de V241.28 sans toucher au PC ni au panneau V241.27. */
@media (max-width:760px){
  :root{ --ofqd-v24129-header:60px; }

  html body .ofqd-header-v22,
  html body .ofqd-topbar-v1.ofqd-header-v22{
    box-sizing:border-box!important;
    position:sticky!important;
    top:0!important;
    width:100%!important;
    height:calc(var(--ofqd-v24129-header) + env(safe-area-inset-top,0px))!important;
    min-height:calc(var(--ofqd-v24129-header) + env(safe-area-inset-top,0px))!important;
    padding:env(safe-area-inset-top,0px) 0 0!important;
    margin:0!important;
    overflow:visible!important;
    border-radius:0 0 16px 16px!important;
  }

  html body .ofqd-header-v22 .ofqd-nav-wrap{
    box-sizing:border-box!important;
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    transform:none!important;
    width:100%!important;
    max-width:100%!important;
    height:var(--ofqd-v24129-header)!important;
    min-height:var(--ofqd-v24129-header)!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    grid-template-areas:none!important;
    align-items:center!important;
    align-content:center!important;
    gap:7px!important;
    padding:0 10px!important;
    margin:0!important;
    overflow:visible!important;
  }

  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle,
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-mobile-menu-toggle,
  html body.ofqd-mobile-menu-v24127-open .ofqd-header-v22 .ofqd-mobile-menu-toggle{
    box-sizing:border-box!important;
    align-self:center!important;
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    border-radius:12px!important;
  }
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle svg{
    width:22px!important;
    height:22px!important;
  }

  html body .ofqd-header-v22 .ofqd-brand{
    box-sizing:border-box!important;
    align-self:center!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:auto!important;
    min-width:0!important;
    max-width:142px!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    transform:none!important;
  }
  html body .ofqd-header-v22 .ofqd-brand .ofqd-v22-wordmark{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    width:auto!important;
    max-width:100%!important;
    height:auto!important;
    overflow:visible!important;
    transform:none!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-name{
    display:flex!important;
    align-items:baseline!important;
    line-height:1!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{
    font-size:28px!important;
    line-height:.86!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-wordmark small{
    display:block!important;
    margin-top:3px!important;
    font-size:7.2px!important;
    line-height:1!important;
  }

  html body .ofqd-header-v22 .ofqd-top-actions{
    box-sizing:border-box!important;
    align-self:center!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:auto!important;
    min-width:0!important;
    height:40px!important;
    min-height:40px!important;
    gap:5px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    overflow:visible!important;
  }
  html body .ofqd-header-v22 .ofqd-night-desktop{
    align-self:center!important;
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    border-radius:12px!important;
  }
  html body .ofqd-header-v22 .ofqd-login-link{
    box-sizing:border-box!important;
    align-self:center!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0 10px!important;
    transform:none!important;
    border-radius:12px!important;
    font-size:10.5px!important;
    line-height:1!important;
  }
}

@media (max-width:370px){
  :root{ --ofqd-v24129-header:58px; }
  html body .ofqd-header-v22 .ofqd-nav-wrap{
    grid-template-columns:40px minmax(0,1fr) auto!important;
    gap:5px!important;
    padding:0 7px!important;
  }
  html body .ofqd-header-v22 .ofqd-brand{max-width:128px!important;}
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{font-size:26px!important;}
  html body .ofqd-header-v22 .ofqd-login-link{padding:0 8px!important;font-size:10px!important;}
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-header-reset-v24130.css ===== */
/* On Fait Quoi Demain — V241.30 REPRISE
   Restauration géométrique du header mobile stable.
   Annule uniquement les conflits V241.28/V241.29. PC inchangé. */
@media (max-width:760px){
  :root{ --ofqd-v24130-header:64px; }

  html body .ofqd-header-v22,
  html body .ofqd-topbar-v1.ofqd-header-v22{
    box-sizing:border-box!important;
    position:sticky!important;
    top:0!important;
    width:100%!important;
    height:calc(var(--ofqd-v24130-header) + env(safe-area-inset-top,0px))!important;
    min-height:calc(var(--ofqd-v24130-header) + env(safe-area-inset-top,0px))!important;
    margin:0!important;
    padding:env(safe-area-inset-top,0px) 0 0!important;
    overflow:visible!important;
    border-radius:0 0 18px 18px!important;
    background:#071b55!important;
  }

  /* On neutralise complètement les anciennes grilles/flex concurrentes. */
  html body .ofqd-header-v22 .ofqd-nav-wrap{
    box-sizing:border-box!important;
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:var(--ofqd-v24130-header)!important;
    min-height:var(--ofqd-v24130-header)!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    overflow:visible!important;
  }

  /* Hamburger : position fixe dans le header, jamais masqué. */
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle,
  html body.ofqd-mobile-menu-open .ofqd-header-v22 .ofqd-mobile-menu-toggle,
  html body.ofqd-mobile-menu-v24127-open .ofqd-header-v22 .ofqd-mobile-menu-toggle{
    box-sizing:border-box!important;
    display:grid!important;
    place-items:center!important;
    position:absolute!important;
    top:10px!important;
    left:10px!important;
    right:auto!important;
    bottom:auto!important;
    inset:auto auto auto auto!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    border-radius:14px!important;
    z-index:20!important;
  }
  html body .ofqd-header-v22 .ofqd-mobile-menu-toggle svg{
    display:block!important;
    width:24px!important;
    height:24px!important;
    max-width:24px!important;
    max-height:24px!important;
    margin:0!important;
    transform:none!important;
  }

  /* Logo : ancré après le hamburger, jamais recentré par une ancienne règle. */
  html body .ofqd-header-v22 .ofqd-brand{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    position:absolute!important;
    top:8px!important;
    left:64px!important;
    right:auto!important;
    bottom:auto!important;
    width:136px!important;
    min-width:0!important;
    max-width:136px!important;
    height:48px!important;
    min-height:48px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    overflow:visible!important;
    float:none!important;
    z-index:10!important;
  }
  html body .ofqd-header-v22 .ofqd-brand::before,
  html body .ofqd-header-v22 .ofqd-brand::after{
    display:none!important;
    content:none!important;
  }
  html body .ofqd-header-v22 .ofqd-brand .ofqd-v22-wordmark{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    width:auto!important;
    max-width:136px!important;
    height:auto!important;
    margin:0!important;
    transform:none!important;
    overflow:visible!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-name{
    display:flex!important;
    align-items:baseline!important;
    line-height:1!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{
    display:inline!important;
    font-size:29px!important;
    line-height:.84!important;
    letter-spacing:-1.7px!important;
  }
  html body .ofqd-header-v22 .ofqd-v22-wordmark small{
    display:block!important;
    margin-top:3px!important;
    font-size:7.4px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  /* Actions : ancrées à droite, aucune possibilité de chevaucher le logo. */
  html body .ofqd-header-v22 .ofqd-top-actions{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    position:absolute!important;
    top:10px!important;
    right:10px!important;
    left:auto!important;
    bottom:auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
    gap:6px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    float:none!important;
    z-index:15!important;
  }
  html body .ofqd-header-v22 .ofqd-fav-link,
  html body .ofqd-header-v22 .ofqd-messaging-link,
  html body .ofqd-header-v22 .ofqd-share-desktop{
    display:none!important;
  }
  html body .ofqd-header-v22 .ofqd-night-desktop{
    box-sizing:border-box!important;
    display:grid!important;
    place-items:center!important;
    position:static!important;
    inset:auto!important;
    flex:0 0 42px!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    border-radius:13px!important;
  }
  html body .ofqd-header-v22 .ofqd-night-desktop > span{display:none!important;}
  html body .ofqd-header-v22 .ofqd-night-desktop svg{
    width:21px!important;
    height:21px!important;
    margin:0!important;
  }
  html body .ofqd-header-v22 .ofqd-login-link{
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    position:static!important;
    inset:auto!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    padding:0 11px!important;
    transform:none!important;
    border-radius:13px!important;
    font-size:11px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}

@media (max-width:390px){
  html body .ofqd-header-v22 .ofqd-brand{
    left:60px!important;
    width:122px!important;
    max-width:122px!important;
  }
  html body .ofqd-header-v22 .ofqd-brand .ofqd-v22-wordmark{max-width:122px!important;}
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{font-size:27px!important;}
  html body .ofqd-header-v22 .ofqd-v22-wordmark small{font-size:7px!important;}
  html body .ofqd-header-v22 .ofqd-top-actions{right:7px!important;gap:4px!important;}
  html body .ofqd-header-v22 .ofqd-night-desktop{
    flex-basis:40px!important;width:40px!important;min-width:40px!important;max-width:40px!important;
    height:40px!important;min-height:40px!important;max-height:40px!important;
  }
  html body .ofqd-header-v22 .ofqd-login-link{
    height:40px!important;min-height:40px!important;padding:0 9px!important;font-size:10px!important;
  }
}

@media (max-width:350px){
  html body .ofqd-header-v22 .ofqd-brand{
    left:58px!important;
    width:108px!important;
    max-width:108px!important;
  }
  html body .ofqd-header-v22 .ofqd-brand .ofqd-v22-wordmark{max-width:108px!important;}
  html body .ofqd-header-v22 .ofqd-v22-name b,
  html body .ofqd-header-v22 .ofqd-v22-name em{font-size:25px!important;}
  html body .ofqd-header-v22 .ofqd-v22-wordmark small{display:none!important;}
  html body .ofqd-header-v22 .ofqd-login-link{padding:0 7px!important;font-size:9.5px!important;}
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-pro-rail-v24131.css ===== */
/* On Fait Quoi Demain — V241.31 REPRISE
   Mobile : restaure l'affichage du carrousel Artisans & Commerçants.
   Le JS V144 ne pose plus .is-active ; les anciennes règles mobiles
   laissaient donc les cartes à opacity:0. Correctif uniquement responsive. */

@media (max-width: 760px) {
  body.ofqd-home-page #ofqdHomeProRail {
    height: auto !important;
    min-height: 0 !important;
    padding: 11px !important;
    overflow: hidden !important;
  }

  body.ofqd-home-page #ofqdHomeProRail .ofqd-home-pro-head {
    margin-bottom: 8px !important;
  }

  body.ofqd-home-page #ofqdHomeProStage,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-track,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-card,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-loading,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-empty {
    height: 148px !important;
    min-height: 148px !important;
    max-height: 148px !important;
  }

  body.ofqd-home-page #ofqdHomeProStage {
    position: relative !important;
    display: block !important;
    overflow: hidden !important;
    border-radius: 14px !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-track {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    opacity: 1 !important;
    transform: none !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-card {
    position: absolute !important;
    inset: 0 !important;
    display: grid !important;
    grid-template-columns: 40% minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    border-radius: 14px !important;
    overflow: hidden !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-media {
    width: 100% !important;
    height: 148px !important;
    min-height: 148px !important;
    border-radius: 14px 0 0 14px !important;
    overflow: hidden !important;
    background: #e8eef8 !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-media > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-body {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: 100% !important;
    height: 148px !important;
    min-height: 0 !important;
    padding: 9px 38px 9px 10px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-badge {
    position: static !important;
    align-self: flex-start !important;
    margin: 0 0 3px !important;
    padding: 3px 7px !important;
    font-size: 9px !important;
    line-height: 1 !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-business {
    display: block !important;
    width: 100% !important;
    margin: 0 0 3px !important;
    font-size: 11px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-body h4 {
    margin: 0 0 5px !important;
    font-size: 12px !important;
    line-height: 1.12 !important;
    -webkit-line-clamp: 2 !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-meta {
    margin: 0 !important;
    font-size: 10px !important;
    line-height: 1 !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-favorite {
    position: absolute !important;
    right: 8px !important;
    bottom: 8px !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.ofqd-home-page #ofqdHomeProRail .ofqd-home-pro-progress {
    margin-top: 7px !important;
  }

  body.ofqd-home-page #ofqdHomeProRail .ofqd-home-pro-all {
    margin-top: 7px !important;
  }
}

@media (max-width: 380px) {
  body.ofqd-home-page #ofqdHomeProStage,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-track,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-card,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-loading,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-empty,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-media,
  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-body {
    height: 136px !important;
    min-height: 136px !important;
    max-height: 136px !important;
  }

  body.ofqd-home-page #ofqdHomeProStage .ofqd-home-pro-card {
    grid-template-columns: 38% minmax(0, 1fr) !important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-discoveries-compact-v24139.css ===== */
/* On Fait Quoi Demain — V241.39 REPRISE
   Accueil mobile : compacter les 4 raccourcis découverte.
   Mobile uniquement. Aucun changement PC ni contenu/liens. */
@media (max-width: 860px) {
  body.ofqd-home-page .ofqd-envies.ofqd-discoveries {
    margin: 6px 10px 8px !important;
    padding: 7px !important;
    border-radius: 16px !important;
  }

  body.ofqd-home-page .ofqd-discoveries__grid {
    gap: 5px !important;
  }

  body.ofqd-home-page .ofqd-envie-card.ofqd-discovery-card {
    min-height: 58px !important;
    padding: 6px 7px 6px 10px !important;
    grid-template-columns: 34px minmax(0, 1fr) 28px !important;
    border-radius: 13px !important;
  }

  body.ofqd-home-page .ofqd-discovery-card::before {
    width: 3px !important;
  }

  body.ofqd-home-page .ofqd-envie-card__icon.ofqd-discovery-card__icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 9px !important;
  }

  body.ofqd-home-page .ofqd-discovery-card__icon svg {
    width: 18px !important;
    height: 18px !important;
  }

  body.ofqd-home-page .ofqd-discovery-card__content {
    padding-left: 7px !important;
  }

  body.ofqd-home-page .ofqd-discovery-card__content strong {
    font-size: 13px !important;
    line-height: 1.08 !important;
  }

  body.ofqd-home-page .ofqd-discovery-card__content small {
    display: none !important;
  }

  body.ofqd-home-page .ofqd-discovery-card__meta {
    margin-top: 2px !important;
    font-size: 10px !important;
    line-height: 1.05 !important;
  }

  body.ofqd-home-page .ofqd-discovery-card .ofqd-envie-card__arrow {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    font-size: 18px !important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-events-heading-compact-v24142.css ===== */
/* OFQD V241.42 — Accueil mobile : retour en-tête Événements sur une ligne.
   Bouton raccourci « Toutes les annonces ». Portée mobile uniquement. */
@media (max-width:700px){
  body.ofqd-home-page .ofqd-section.ofqd-dynamic-events-v31{
    padding-top:8px!important;
    padding-bottom:9px!important;
  }

  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-dynamic-title{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "title all"
      "pills pills"!important;
    align-items:center!important;
    gap:6px 7px!important;
    margin:0 0 5px!important;
    min-height:0!important;
  }

  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-dynamic-title-text{
    grid-area:title!important;
    min-width:0!important;
  }

  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-dynamic-title-text h2{
    margin:0!important;
    color:#071b55!important;
    -webkit-text-fill-color:#071b55!important;
    opacity:1!important;
    text-shadow:none!important;
    font-size:21px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:-.025em!important;
    white-space:nowrap!important;
  }

  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-all-events-link{
    grid-area:all!important;
    justify-self:end!important;
    align-self:center!important;
    min-height:28px!important;
    height:28px!important;
    padding:0 9px!important;
    margin:0!important;
    border-radius:999px!important;
    font-size:10.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-event-pills-v24{
    grid-area:pills!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-width:0!important;
    gap:6px!important;
    margin:0!important;
    padding:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-event-pills-v24::-webkit-scrollbar{
    display:none!important;
  }
  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-event-pills-v24 a{
    flex:0 0 auto!important;
    min-height:30px!important;
    height:30px!important;
    padding:0 10px!important;
    margin:0!important;
    border-radius:999px!important;
    font-size:11px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}

@media (max-width:380px){
  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-dynamic-title-text h2{
    font-size:19px!important;
  }
  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-all-events-link{
    padding:0 7px!important;
    font-size:9.5px!important;
  }
  body.ofqd-home-page .ofqd-dynamic-events-v31 .ofqd-event-pills-v24 a{
    padding:0 9px!important;
    font-size:10.5px!important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-public-blocks-no-explainers-v24143.css ===== */
/* ON FAIT QUOI DEMAIN — V241.43
   Règle UX : les blocs publics vont droit à l'essentiel.
   On masque uniquement les petites phrases d'explication sous les titres.
   Les données utiles (dates, lieux, distances, compteurs, statuts, formulaires) restent visibles.
*/

/* Accueil : sous-titres de sections / blocs */
body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11p2-head > p,
body.ofqd-home-page #ofqdHomeProRail .ofqd-home-pro-head > div > p,
body.ofqd-home-page .ofqd-smart-discovery-head > div > p {
  display: none !important;
}

/* Pages publiques : introduction redondante sous le titre principal de bloc */
body:not(.ofqd-admin-page) .ofqd-territory-head > div > p,
body:not(.ofqd-admin-page) .ofqd-v269-hero-copy > p,
body:not(.ofqd-admin-page) .ofqd-map-heading-copy > p,
body:not(.ofqd-admin-page) .ofqd-unified-hero-copy > p:not(.ofqd-eyebrow),
body:not(.ofqd-admin-page) .ofqd-project-group-head-v268 > div > p,
body:not(.ofqd-admin-page) .ofqd-projects-lead-v268,
body:not(.ofqd-admin-page) .ofqd-commune-hero-copy > .ofqd-commune-intro,
body:not(.ofqd-admin-page) .commune-lead {
  display: none !important;
}

/* Le retrait du texte doit aussi réellement réduire la hauteur. */
body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11p2-head {
  min-height: 0 !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}
body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11p2-head h2 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body.ofqd-home-page #ofqdHomeProRail .ofqd-home-pro-head,
body.ofqd-home-page .ofqd-smart-discovery-head {
  margin-bottom: 7px !important;
}
body:not(.ofqd-admin-page) .ofqd-territory-head,
body:not(.ofqd-admin-page) .ofqd-map-page-head,
body:not(.ofqd-admin-page) .ofqd-project-group-head-v268 {
  min-height: 0 !important;
}

@media (max-width: 680px) {
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11p2-head {
    padding: 10px 14px !important;
  }
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11p2-head h2 {
    line-height: 1.08 !important;
  }
  body:not(.ofqd-admin-page) .ofqd-territory-head,
  body:not(.ofqd-admin-page) .ofqd-map-page-head,
  body:not(.ofqd-admin-page) .ofqd-project-group-head-v268 {
    margin-bottom: 9px !important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-no-orange-lines-v24144.css ===== */
/* OFQD V241.44 — suppression durable des petits traits orange décoratifs.
   Cette feuille est volontairement chargée EN DERNIER.
   Elle ne modifie ni le Q orange, ni les boutons/badges orange, ni les couleurs fonctionnelles. */

/* Hero accueil : ancien petit tiret décoratif. */
body .ofqd-hero-v24-dash{
  display:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
}

/* Accueil : trait sous « La carte des sorties ». */
html body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11p2-head h2::after{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  background:none!important;
}

/* Grande page Carte : trait décoratif de l’en-tête. */
html body .ofqd-map-premium-v266 .ofqd-map-page-head::after{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  background:none!important;
}

/* Navigation historique : ne pas remettre un soulignement orange sous l’onglet actif. */
html body .ofqd-header-v22 .ofqd-nav-item.active::after{
  content:none!important;
  display:none!important;
  height:0!important;
  background:none!important;
}

/* Authentification : ancien mini-trait du kicker. */
html body .ofqd-auth-premium .ofqd-auth-kicker::before{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  background:none!important;
}

/* Footer accueil : pas de ligne orange supérieure décorative. */
html body.ofqd-home-page .ofqd-footer-home-v263{
  border-top:0!important;
}

/* ===== V241.225 bundled from assets/css/ofqd-home-live-mobile-compact-v24145.css ===== */
/* ==========================================================
   ON FAIT QUOI DEMAIN — V241.45 REPRISE
   Accueil mobile : panneau « en direct » réellement compact.
   - 6 compteurs utiles en grille 3 x 2.
   - suppression sur mobile du KPI de zone/rayon redondant.
   - rayon et statut conservés.
   - aucun impact desktop.
   ========================================================== */

@media (max-width:700px){
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-dashboard{
    padding:10px!important;
    border-radius:16px!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-dashboard h3{
    margin:0 0 8px!important;
    gap:8px!important;
    font-size:15px!important;
    line-height:1.1!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-dashboard h3::before{
    width:26px!important;
    height:26px!important;
    flex-basis:26px!important;
    border-radius:8px!important;
    background-size:13px 13px,auto!important;
    box-shadow:none!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
    margin:0 0 8px!important;
  }

  /* Le nombre de kilomètres est déjà visible dans le sélecteur Rayon. */
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > .ofqd-kpi-zone{
    display:none!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > span:not(.ofqd-kpi-zone),
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-dashboard.is-france-view .ofqd-v11-kpis > span:not(.ofqd-kpi-zone),
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > [data-kpi-filter="sport"]{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:2px!important;
    min-width:0!important;
    min-height:54px!important;
    padding:6px 7px!important;
    padding-right:7px!important;
    border-radius:11px!important;
    box-shadow:none!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > span:not(.ofqd-kpi-zone) > b,
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > [data-kpi-filter="sport"] [data-kpi="sports"]{
    width:auto!important;
    margin:0!important;
    padding:0!important;
    font-size:20px!important;
    line-height:1!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > span:not(.ofqd-kpi-zone) > small,
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > [data-kpi-filter="sport"] small{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:9px!important;
    line-height:1.05!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis .ofqd-kpi-clickable.is-active::after{
    right:6px!important;
    top:7px!important;
    transform:none!important;
    font-size:15px!important;
    line-height:1!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-radius-control{
    min-height:40px!important;
    margin:0!important;
    padding:6px 8px!important;
    border-radius:11px!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-radius-control select{
    min-height:30px!important;
    padding-top:3px!important;
    padding-bottom:3px!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-geo-status{
    min-height:0!important;
    margin:5px 1px 0!important;
    font-size:9px!important;
    line-height:1.15!important;
  }
}

@media (max-width:369px){
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-home-live-mobile-2cols-v24146.css ===== */
/* ==========================================================
   ON FAIT QUOI DEMAIN — V241.46 REPRISE
   Accueil mobile : « En direct » en 2 colonnes.
   - 6 compteurs utiles = 3 lignes x 2 colonnes.
   - suppression robuste de la tuile rayon « 100 » redondante.
   - libellés complets et lisibles.
   - aucun impact desktop.
   ========================================================== */

@media (max-width:700px){
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }

  /* Le rayon est déjà affiché par le sélecteur juste dessous. */
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > .ofqd-kpi-zone,
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > [data-kpi-action="france"]{
    display:none!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > span:not(.ofqd-kpi-zone):not([data-kpi-action="france"]),
  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-dashboard.is-france-view .ofqd-v11-kpis > span:not(.ofqd-kpi-zone):not([data-kpi-action="france"]){
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    min-width:0!important;
    min-height:52px!important;
    padding:7px 10px!important;
    border-radius:11px!important;
    box-shadow:none!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > span:not(.ofqd-kpi-zone):not([data-kpi-action="france"]) > b{
    flex:0 0 auto!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    font-size:20px!important;
    line-height:1!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis > span:not(.ofqd-kpi-zone):not([data-kpi-action="france"]) > small{
    display:block!important;
    flex:1 1 auto!important;
    min-width:0!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:normal!important;
    font-size:10.5px!important;
    line-height:1.1!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis .ofqd-kpi-clickable.is-active{
    padding-right:27px!important;
  }

  body.ofqd-home-page #ofqd-v11-pack2 .ofqd-v11-kpis .ofqd-kpi-clickable.is-active::after{
    right:8px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-brand-home-v24149.css ===== */
/* OFQD V241.49 REPRISE — logo = retour accueil fiable PC + mobile */
.ofqd-topbar-v1 .ofqd-brand {
  position: relative;
  z-index: 1200;
  pointer-events: auto !important;
  touch-action: manipulation;
  cursor: pointer;
}

/* Tout le visuel appartient au lien : aucun enfant ne doit intercepter le toucher. */
.ofqd-topbar-v1 .ofqd-brand > * {
  pointer-events: none !important;
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-favorites-access-v24150.css ===== */
/* On Fait Quoi Demain — V241.50 REPRISE
   Rétablit un accès Favoris sur mobile sans modifier la barre basse validée.
   La modale Favoris existante reste inchangée. */

/* L'entrée supplémentaire n'encombre jamais la navigation PC. */
.ofqd-nav-mobile-favorites{
  display:none!important;
}

@media (max-width:760px){
  /* Le menu hamburger V241.27 comporte maintenant une vraie entrée Favoris. */
  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-nav-mobile-favorites{
    display:flex!important;
    position:relative!important;
  }

  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-nav-mobile-favorites .ofqd-favorites-count{
    display:grid!important;
    place-items:center!important;
    position:absolute!important;
    top:5px!important;
    right:8px!important;
    width:auto!important;
    min-width:18px!important;
    height:18px!important;
    margin:0!important;
    padding:0 5px!important;
    border:2px solid #071b55!important;
    border-radius:999px!important;
    background:#ff3859!important;
    color:#fff!important;
    font-size:10px!important;
    font-weight:900!important;
    line-height:1!important;
    box-sizing:border-box!important;
  }

  html body > nav.ofqd-main-nav.ofqd-mobile-menu-panel-v24127 .ofqd-nav-mobile-favorites .ofqd-favorites-count[hidden]{
    display:none!important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-favorites-stable-v24151.css ===== */
/* On Fait Quoi Demain — V241.51 REPRISE
   Favoris mobile : modale stable + annonce centrée.
   Ne modifie ni le stockage ni la logique individuelle des favoris. */

@media (max-width:760px){
  /* La fenêtre est une vraie modale centrée, pas une feuille collée en bas. */
  html body .ofqd-favorites-panel{
    display:grid!important;
    place-items:center!important;
    align-items:center!important;
    justify-items:center!important;
    padding:12px!important;
    z-index:2147483646!important;
    box-sizing:border-box!important;
  }

  html body .ofqd-favorites-dialog{
    width:min(430px,calc(100vw - 24px))!important;
    max-width:430px!important;
    max-height:calc(100dvh - 110px)!important;
    margin:auto!important;
    border-radius:20px!important;
    overflow:hidden!important;
  }

  html body .ofqd-favorites-head{
    padding:13px 14px!important;
  }
  html body .ofqd-favorites-head h2{
    font-size:20px!important;
  }

  /* Chaque annonce occupe une largeur régulière et reste centrée dans la fenêtre. */
  html body .ofqd-favorites-list{
    width:100%!important;
    padding:10px!important;
    box-sizing:border-box!important;
  }
  html body .ofqd-favorites-item{
    width:100%!important;
    max-width:390px!important;
    grid-template-columns:68px minmax(0,1fr) 36px!important;
    gap:9px!important;
    margin:0 auto 8px!important;
    padding:8px!important;
    box-sizing:border-box!important;
  }
  html body .ofqd-favorites-media{
    width:68px!important;
    height:54px!important;
  }
  html body .ofqd-favorites-info{
    width:100%!important;
    min-width:0!important;
    text-align:left!important;
  }
  html body .ofqd-favorites-info strong{
    font-size:13px!important;
  }

  /* Pendant Favoris, la barre basse ne doit pas passer devant la modale. */
  html.ofqd-favorites-open body .ofqd-mobile-bottom-nav{
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-global-search-v241206.css ===== */
/* On Fait Quoi Demain — V241.206
   Recherche publique visible sur les pages qui n'ont pas déjà leur moteur dédié.
   Aucun changement de la Carte, des Événements, Communes, Professionnels ou Associations. */
.ofqd-global-search-strip-v241206{
  position:relative;
  z-index:40;
  width:100%;
  padding:7px 0;
  background:#f5f8fd;
  border-bottom:1px solid rgba(7,27,85,.08);
}
.ofqd-global-search-strip-v241206 .ofqd-container{
  width:min(1180px,calc(100% - 28px));
  margin:0 auto;
}
.ofqd-global-searchbar{
  display:grid;
  grid-template-columns:22px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  width:min(760px,100%);
  min-height:42px;
  margin:0 auto;
  padding:4px 5px 4px 12px;
  border:1px solid #d7e1ef;
  border-radius:14px;
  background:#fff;
  box-shadow:0 4px 14px rgba(7,27,85,.06);
}
.ofqd-global-search-icon{
  width:19px;
  height:19px;
  fill:none;
  stroke:#47709f;
  stroke-width:2;
  stroke-linecap:round;
}
.ofqd-global-searchbar input[type="search"]{
  width:100%;
  min-width:0;
  height:32px;
  padding:0 4px;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:#13294d;
  font:650 14px/1.2 Arial,Helvetica,sans-serif;
  box-shadow:none!important;
}
.ofqd-global-searchbar input[type="search"]::placeholder{color:#75859b;opacity:1}
.ofqd-global-searchbar button{
  min-height:32px;
  padding:0 13px;
  border:0;
  border-radius:10px;
  background:#0b70de;
  color:#fff;
  font:800 12px/1 Arial,Helvetica,sans-serif;
  cursor:pointer;
  white-space:nowrap;
}
.ofqd-global-searchbar button:hover,.ofqd-global-searchbar button:focus-visible{background:#075fc1}
html.ofqd-night .ofqd-global-search-strip-v241206,
html[data-theme="dark"] .ofqd-global-search-strip-v241206{background:#091d49;border-bottom-color:rgba(255,255,255,.08)}
html.ofqd-night .ofqd-global-searchbar,
html[data-theme="dark"] .ofqd-global-searchbar{background:#0e285f;border-color:rgba(255,255,255,.14);box-shadow:none}
html.ofqd-night .ofqd-global-searchbar input[type="search"],
html[data-theme="dark"] .ofqd-global-searchbar input[type="search"]{color:#fff}
html.ofqd-night .ofqd-global-searchbar input[type="search"]::placeholder,
html[data-theme="dark"] .ofqd-global-searchbar input[type="search"]::placeholder{color:#bdc9dc}
html.ofqd-night .ofqd-global-search-icon,
html[data-theme="dark"] .ofqd-global-search-icon{stroke:#b7cdf2}
@media(max-width:760px){
  .ofqd-global-search-strip-v241206{padding:6px 0}
  .ofqd-global-search-strip-v241206 .ofqd-container{width:calc(100% - 16px)}
  .ofqd-global-searchbar{grid-template-columns:20px minmax(0,1fr) 38px;gap:5px;min-height:40px;padding:3px 4px 3px 10px;border-radius:13px}
  .ofqd-global-searchbar input[type="search"]{height:32px;font-size:14px}
  .ofqd-global-searchbar button{width:38px;height:32px;min-height:32px;padding:0;font-size:0;border-radius:9px}
  .ofqd-global-searchbar button::before{content:'→';font-size:18px;line-height:1;font-weight:900}
}

/* ===== V241.225 bundled from assets/css/ofqd-mobile-header-night-v241158.css ===== */
/* OFQD V241.158 — Header mobile sans doublon Déposer + mode nocturne */
@media (max-width:760px){
  /*
   * Le dépôt est déjà accessible en permanence dans la barre de navigation basse.
   * On retire donc le doublon du header mobile. Le PC reste inchangé.
   */
  html body .ofqd-header-v22 .ofqd-top-actions > .ofqd-top-deposit-link{
    display:none!important;
  }

  /* La connexion directe reste masquée sur mobile : Profil et Déposer gèrent ce parcours. */
  html body .ofqd-header-v22 .ofqd-top-actions > .ofqd-login-link:not(.ofqd-top-deposit-link){
    display:none!important;
  }

  /* Le bouton nocturne reste visible et devient l'unique action du header. */
  html body .ofqd-header-v22 .ofqd-night-desktop{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    flex:0 0 42px!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
  }

  html body .ofqd-header-v22 .ofqd-top-actions{
    gap:6px!important;
  }

  /* État Nuit : bouton lisible, sans halo clair parasite. */
  html.ofqd-night body .ofqd-header-v22 .ofqd-night-desktop,
  html[data-theme="dark"] body .ofqd-header-v22 .ofqd-night-desktop{
    background:#f7f8fb!important;
    border-color:rgba(255,255,255,.36)!important;
    color:#071b55!important;
    box-shadow:0 5px 14px rgba(0,0,0,.20)!important;
  }

  html.ofqd-night body .ofqd-header-v22,
  html[data-theme="dark"] body .ofqd-header-v22{
    background:linear-gradient(135deg,#06163f 0%,#0b2a65 100%)!important;
  }

  /* Barre mobile inférieure cohérente avec le thème. */
  html.ofqd-night body .ofqd-mobile-bottom-nav,
  html[data-theme="dark"] body .ofqd-mobile-bottom-nav{
    background:#061a4f!important;
    border-color:rgba(255,255,255,.12)!important;
    box-shadow:0 -8px 24px rgba(0,0,0,.30)!important;
  }
}

@media (max-width:390px){
  html body .ofqd-header-v22 .ofqd-night-desktop{
    flex-basis:40px!important;
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
  }
}

/* ===== V241.225 bundled from assets/css/ofqd-language-selector-v241177.css ===== */
/* OFQD V241.176 — sélecteur de langue compact dans le header, après Nocturne. */
.ofqd-header-v22 .ofqd-language-menu{
  position:relative!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
}
.ofqd-header-v22 .ofqd-language-toggle{
  appearance:none!important;
  -webkit-appearance:none!important;
  list-style:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  min-width:52px!important;
  height:58px!important;
  padding:5px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:rgba(255,255,255,.92)!important;
  cursor:pointer!important;
  user-select:none!important;
  font:inherit!important;
  line-height:1!important;
}
.ofqd-header-v22 .ofqd-language-toggle::-webkit-details-marker{display:none!important}
.ofqd-header-v22 .ofqd-language-toggle::marker{display:none!important;content:""!important}
.ofqd-header-v22 .ofqd-language-toggle:hover,
.ofqd-header-v22 .ofqd-language-toggle:focus-visible,
.ofqd-header-v22 .ofqd-language-menu[open] .ofqd-language-toggle{
  background:rgba(255,255,255,.09)!important;
  color:#fff!important;
  outline:none!important;
}
.ofqd-header-v22 .ofqd-language-toggle svg{
  width:20px!important;
  height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  flex:none!important;
}
.ofqd-header-v22 .ofqd-language-toggle strong{
  display:block!important;
  margin:0!important;
  color:inherit!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.4px!important;
}
.ofqd-header-v22 .ofqd-language-dropdown{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  right:0!important;
  z-index:13000!important;
  width:218px!important;
  padding:6px!important;
  border:1px solid rgba(7,27,85,.12)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(3,18,55,.22)!important;
  color:#071b55!important;
}
.ofqd-header-v22 .ofqd-language-dropdown button{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  min-height:38px!important;
  display:grid!important;
  grid-template-columns:28px 1fr 28px!important;
  align-items:center!important;
  gap:7px!important;
  padding:6px 8px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#071b55!important;
  text-align:left!important;
  font:inherit!important;
  font-size:13px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
.ofqd-header-v22 .ofqd-language-dropdown button:hover,
.ofqd-header-v22 .ofqd-language-dropdown button:focus-visible{
  background:#edf4ff!important;
  outline:none!important;
}
.ofqd-header-v22 .ofqd-language-dropdown button[aria-checked="true"]{
  background:#e5efff!important;
  color:#075ecb!important;
}
.ofqd-header-v22 .ofqd-language-dropdown button[aria-checked="true"]::after{
  content:"✓";
  grid-column:3;
  grid-row:1;
  justify-self:end;
  font-weight:950;
}
.ofqd-header-v22 .ofqd-language-dropdown .ofqd-language-flag{
  font-size:18px!important;
  line-height:1!important;
}
.ofqd-header-v22 .ofqd-language-dropdown small{
  grid-column:3;
  grid-row:1;
  justify-self:end;
  font-size:10px!important;
  font-weight:900!important;
  opacity:.56!important;
}
.ofqd-header-v22 .ofqd-language-dropdown button[aria-checked="true"] small{display:none!important}

html.ofqd-night .ofqd-header-v22 .ofqd-language-dropdown,
html[data-theme="dark"] .ofqd-header-v22 .ofqd-language-dropdown{
  background:#0b2256!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#fff!important;
  box-shadow:0 16px 38px rgba(0,0,0,.42)!important;
}
html.ofqd-night .ofqd-header-v22 .ofqd-language-dropdown button,
html[data-theme="dark"] .ofqd-header-v22 .ofqd-language-dropdown button{color:#fff!important}
html.ofqd-night .ofqd-header-v22 .ofqd-language-dropdown button:hover,
html.ofqd-night .ofqd-header-v22 .ofqd-language-dropdown button:focus-visible,
html[data-theme="dark"] .ofqd-header-v22 .ofqd-language-dropdown button:hover,
html[data-theme="dark"] .ofqd-header-v22 .ofqd-language-dropdown button:focus-visible{background:rgba(255,255,255,.10)!important}
html.ofqd-night .ofqd-header-v22 .ofqd-language-dropdown button[aria-checked="true"],
html[data-theme="dark"] .ofqd-header-v22 .ofqd-language-dropdown button[aria-checked="true"]{background:rgba(55,133,255,.22)!important;color:#fff!important}

@media (max-width:1550px){
  .ofqd-header-v22 .ofqd-language-toggle{min-width:44px!important}
}

@media (max-width:760px){
  /* Le mobile garde Nocturne puis Langue, sans remettre Connexion/Déposer dans le header. */
  html body .ofqd-header-v22 .ofqd-language-menu{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    flex:0 0 48px!important;
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
  }
  html body .ofqd-header-v22 .ofqd-language-toggle{
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    padding:3px 4px!important;
    border:1px solid rgba(255,255,255,.17)!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.07)!important;
    flex-direction:row!important;
    gap:3px!important;
  }
  html body .ofqd-header-v22 .ofqd-language-toggle svg{
    width:16px!important;
    height:16px!important;
  }
  html body .ofqd-header-v22 .ofqd-language-toggle strong{
    font-size:10px!important;
  }
  html body .ofqd-header-v22 .ofqd-language-dropdown{
    position:fixed!important;
    top:72px!important;
    right:10px!important;
    width:min(230px,calc(100vw - 20px))!important;
    max-height:calc(100dvh - 92px)!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
  }
  html.ofqd-night body .ofqd-header-v22 .ofqd-language-toggle,
  html[data-theme="dark"] body .ofqd-header-v22 .ofqd-language-toggle{
    background:rgba(255,255,255,.08)!important;
    border-color:rgba(255,255,255,.22)!important;
    color:#fff!important;
  }
}

@media (max-width:390px){
  html body .ofqd-header-v22 .ofqd-language-menu{
    flex-basis:45px!important;
    width:45px!important;
    min-width:45px!important;
    max-width:45px!important;
  }
  html body .ofqd-header-v22 .ofqd-language-toggle{
    width:45px!important;
    min-width:45px!important;
    max-width:45px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
  }
}


/* V241.176 — drapeaux graphiques intégrés : rendu couleur identique PC / mobile. */
.ofqd-header-v22 .ofqd-language-dropdown .ofqd-language-flag{
  display:block!important;
  width:26px!important;
  height:18px!important;
  border-radius:2px!important;
  border:1px solid rgba(7,27,85,.15)!important;
  box-shadow:0 1px 2px rgba(0,0,0,.10)!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%!important;
  font-size:0!important;
  line-height:0!important;
  overflow:hidden!important;
}
.ofqd-header-v22 .ofqd-language-dropdown button[data-ofqd-lang="fr"] .ofqd-language-flag{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMCAyMCI+PHBhdGggZmlsbD0iIzAwMjM5NSIgZD0iTTAgMGgxMHYyMEgweiIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xMCAwaDEwdjIwSDEweiIvPjxwYXRoIGZpbGw9IiNFRDI5MzkiIGQ9Ik0yMCAwaDEwdjIwSDIweiIvPjwvc3ZnPg==")!important}
.ofqd-header-v22 .ofqd-language-dropdown button[data-ofqd-lang="en"] .ofqd-language-flag{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2MCA0MCI+PHBhdGggZmlsbD0iIzAxMjE2OSIgZD0iTTAgMGg2MHY0MEgweiIvPjxwYXRoIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSI4IiBkPSJNMCAwbDYwIDQwTTYwIDBMMCA0MCIvPjxwYXRoIHN0cm9rZT0iI0M4MTAyRSIgc3Ryb2tlLXdpZHRoPSI0IiBkPSJNMCAwbDYwIDQwTTYwIDBMMCA0MCIvPjxwYXRoIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIxMyIgZD0iTTMwIDB2NDBNMCAyMGg2MCIvPjxwYXRoIHN0cm9rZT0iI0M4MTAyRSIgc3Ryb2tlLXdpZHRoPSI3IiBkPSJNMzAgMHY0ME0wIDIwaDYwIi8+PC9zdmc+")!important}
.ofqd-header-v22 .ofqd-language-dropdown button[data-ofqd-lang="de"] .ofqd-language-flag{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMCAyMCI+PHBhdGggZmlsbD0iIzAwMCIgZD0iTTAgMGgzMHY2LjY2N0gweiIvPjxwYXRoIGZpbGw9IiNERDAwMDAiIGQ9Ik0wIDYuNjY3aDMwdjYuNjY2SDB6Ii8+PHBhdGggZmlsbD0iI0ZGQ0UwMCIgZD0iTTAgMTMuMzMzaDMwVjIwSDB6Ii8+PC9zdmc+")!important}
.ofqd-header-v22 .ofqd-language-dropdown button[data-ofqd-lang="nl"] .ofqd-language-flag{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMCAyMCI+PHBhdGggZmlsbD0iI0FFMUMyOCIgZD0iTTAgMGgzMHY2LjY2N0gweiIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0wIDYuNjY3aDMwdjYuNjY2SDB6Ii8+PHBhdGggZmlsbD0iIzIxNDY4QiIgZD0iTTAgMTMuMzMzaDMwVjIwSDB6Ii8+PC9zdmc+")!important}
.ofqd-header-v22 .ofqd-language-dropdown button[data-ofqd-lang="es"] .ofqd-language-flag{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMCAyMCI+PHBhdGggZmlsbD0iI0FBMTUxQiIgZD0iTTAgMGgzMHY1SDB6TTAgMTVoMzB2NUgweiIvPjxwYXRoIGZpbGw9IiNGMUJGMDAiIGQ9Ik0wIDVoMzB2MTBIMHoiLz48L3N2Zz4=")!important}
.ofqd-header-v22 .ofqd-language-dropdown button[data-ofqd-lang="it"] .ofqd-language-flag{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMCAyMCI+PHBhdGggZmlsbD0iIzAwOTI0NiIgZD0iTTAgMGgxMHYyMEgweiIvPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xMCAwaDEwdjIwSDEweiIvPjxwYXRoIGZpbGw9IiNDRTJCMzciIGQ9Ik0yMCAwaDEwdjIwSDIweiIvPjwvc3ZnPg==")!important}
.ofqd-header-v22 .ofqd-language-dropdown button[data-ofqd-lang="pt"] .ofqd-language-flag{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMCAyMCI+PHBhdGggZmlsbD0iIzA0NkEzOCIgZD0iTTAgMGgxMnYyMEgweiIvPjxwYXRoIGZpbGw9IiNEQTI5MUMiIGQ9Ik0xMiAwaDE4djIwSDEyeiIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTAiIHI9IjQiIGZpbGw9IiNGRkNDMDAiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjEwIiByPSIyLjUiIGZpbGw9IiNmZmYiLz48cGF0aCBmaWxsPSIjREEyOTFDIiBkPSJNMTAuMyA4LjNoMy40djMuNGgtMy40eiIvPjwvc3ZnPg==")!important}

@media (max-width:760px){
  html body .ofqd-header-v22 .ofqd-language-dropdown .ofqd-language-flag{
    width:30px!important;
    height:20px!important;
  }
}


/* V241.177 — langue arabe : repère graphique neutre (pas de drapeau national imposé). */
.ofqd-header-v22 .ofqd-language-dropdown button[data-ofqd-lang="ar"] .ofqd-language-flag{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#0b8f58!important;
  background-image:none!important;
  color:#fff!important;
  font-family:Arial,"Noto Sans Arabic",sans-serif!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
}
.ofqd-header-v22 .ofqd-language-dropdown button[data-ofqd-lang="ar"] > span:nth-child(2){
  direction:rtl!important;
  text-align:right!important;
}
