
/* ===== V241.225 bundled from assets/css/ofqd-modern-v10.css ===== */
:root{
  --ofqd-blue:#071b55;
  --ofqd-red:#e60012;
  --ofqd-shadow:0 14px 38px rgba(4,20,62,.16);
  --ofqd-page:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ofqd-blue);background:#fff}
.ofqd-container,.ofqd-section{max-width:var(--ofqd-page);margin-inline:auto}
.ofqd-section{padding:clamp(16px,1.25vw,22px) clamp(18px,2vw,28px)}

/* Header propre : un seul logo visible */
.ofqd-topbar-v1{background:#fff;box-shadow:0 1px 0 rgba(7,27,85,.08);position:sticky;top:0;z-index:100}
.ofqd-nav-wrap{height:clamp(58px,3.8vw,70px);display:flex;align-items:center;gap:clamp(14px,1.45vw,28px);padding-inline:clamp(18px,2vw,28px)}
.ofqd-brand{display:flex;align-items:center;text-decoration:none;color:var(--ofqd-blue);min-width:clamp(132px,9vw,170px)}
.ofqd-brand img{height:clamp(36px,2.35vw,46px);display:block}
.ofqd-brand span{display:none !important}
.ofqd-main-nav{display:flex;align-items:center;gap:clamp(12px,1.25vw,24px);flex:1;justify-content:center;white-space:nowrap}
.ofqd-main-nav a{position:relative;color:var(--ofqd-blue);text-decoration:none;font-weight:900;font-size:clamp(12px,.73vw,14px)}
.ofqd-main-nav a.active{color:#005eff}
.ofqd-main-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:calc(clamp(58px,3.8vw,70px) / -2 + 6px);height:4px;border-radius:4px;background:#005eff}
.ofqd-top-actions{display:flex;align-items:center;gap:clamp(6px,.6vw,10px)}
.ofqd-fav-link{font-weight:900;color:var(--ofqd-blue);text-decoration:none;font-size:clamp(11px,.68vw,13px);white-space:nowrap}
.ofqd-btn{border:0;border-radius:999px;font-weight:900;font-size:clamp(11px,.68vw,13px);text-decoration:none;padding:clamp(9px,.72vw,11px) clamp(13px,1vw,18px);cursor:pointer;white-space:nowrap}
.ofqd-btn.ghost{background:#fff;border:1px solid rgba(7,27,85,.12);color:var(--ofqd-blue);box-shadow:0 8px 20px rgba(4,20,62,.08)}
.ofqd-btn.primary{background:var(--ofqd-blue);color:#fff}

/* HERO V8 : aucune déformation.
   Important : l'image garde son ratio naturel. On ne force plus height:100% ni object-fit:fill.
*/
.ofqd-home-main{background:#fff}
.ofqd-hero-modern{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  overflow:hidden;
  line-height:0;
  background:#eef5fb;
}
.ofqd-hero-modern img{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
}

/* Sections */
.ofqd-univers-v1{padding-top:clamp(12px,.9vw,18px)}
.ofqd-univers-v1 h2,.ofqd-premium-v1 h2{color:var(--ofqd-blue);font-size:clamp(22px,1.45vw,25px);margin:0 0 16px;font-weight:950}
.ofqd-univers-v1 h2 span,.ofqd-premium-v1 h2 span{color:var(--ofqd-red)}
.ofqd-univers-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:clamp(12px,1.1vw,18px);margin-bottom:22px}
.univers-card{position:relative;height:clamp(118px,6.9vw,132px);border-radius:14px;color:#fff;padding:clamp(12px,.85vw,15px);box-shadow:0 12px 26px rgba(0,0,0,.18);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;transition:.2s transform;text-decoration:none;cursor:pointer}
.univers-card:hover{transform:translateY(-4px)}
.univers-card .u-icon{font-size:clamp(28px,1.7vw,32px);margin-bottom:auto}
.univers-card h3{margin:0;font-size:clamp(13px,.78vw,15px);color:#fff}
.univers-card p{margin:3px 0 0;font-size:clamp(10px,.62vw,12px);font-weight:800;color:#fff}
.univers-card i{position:absolute;right:9px;bottom:9px;width:22px;height:22px;border-radius:50%;background:#fff;color:var(--ofqd-blue);font-style:normal;text-align:center;line-height:22px;font-weight:900}
.sport{background:linear-gradient(135deg,#70a70b,#0b4d00)}.culture{background:linear-gradient(135deg,#bd28ff,#3b087d)}.nature{background:linear-gradient(135deg,#4fc7ff,#00806f)}.events{background:linear-gradient(135deg,#ff3232,#930000)}.assoc{background:linear-gradient(135deg,#009cdf,#003f7d)}.famille{background:linear-gradient(135deg,#ff9d16,#c85500)}.around{background:linear-gradient(135deg,#52c0ff,#0047d6)}.discover{background:linear-gradient(135deg,#f63d9d,#870051)}
.section-title-row{display:flex;justify-content:space-between;align-items:center;gap:18px}.section-title-row a{color:#005eff;font-weight:900;text-decoration:none;font-size:13px}
.ofqd-premium-row{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(16px,1.15vw,22px)}
.premium-v1-card{background:#fff;border-radius:13px;overflow:hidden;box-shadow:0 10px 26px rgba(4,20,62,.14);position:relative}.premium-v1-photo{height:86px;background-size:cover;background-position:center;position:relative}.premium-v1-photo span{position:absolute;top:8px;left:8px;background:#ff8a00;color:white;font-size:10px;font-weight:950;padding:4px 7px;border-radius:6px}.premium-v1-body{padding:10px 12px 16px}.premium-v1-body h3{margin:0 0 5px;color:var(--ofqd-blue);font-size:14px}.premium-v1-body p{margin:0;color:var(--ofqd-blue);font-size:12px;font-weight:650;line-height:1.35}.premium-v1-body button{position:absolute;right:12px;bottom:10px;border:0;background:#fff;color:var(--ofqd-red);font-size:21px;cursor:pointer}
.ofqd-footer-v1{margin-top:30px;padding:28px;background:var(--ofqd-blue);color:#fff}.ofqd-footer-grid{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 28px}.ofqd-footer-grid b{font-size:24px}.ofqd-footer-grid small{display:block}.ofqd-footer-grid p{font-weight:700}

/* Ajustements fluides */
@media (min-width:1900px){.ofqd-section{max-width:1180px}}
@media (min-width:1366px) and (max-width:1599px){.ofqd-section{max-width:1120px}}
@media (max-width:1200px){.ofqd-main-nav{gap:12px}.ofqd-univers-grid{grid-template-columns:repeat(4,1fr)}.ofqd-premium-row{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){
  .ofqd-nav-wrap{height:auto;min-height:66px;flex-wrap:wrap;padding:12px 18px}.ofqd-main-nav{order:3;flex-basis:100%;overflow-x:auto;justify-content:flex-start;padding-bottom:8px}.ofqd-main-nav a.active:after{display:none}.ofqd-top-actions{margin-left:auto}.ofqd-hero-modern img{width:auto;height:280px;max-width:none;transform:translateX(-28%)}.ofqd-univers-grid{grid-template-columns:repeat(2,1fr);gap:12px}.ofqd-premium-row{grid-template-columns:1fr}.ofqd-section{padding:18px}.ofqd-footer-grid{display:block}
}
@media (max-width:620px){.ofqd-hero-modern img{height:240px;transform:translateX(-35%)}.ofqd-top-actions{gap:6px}.ofqd-fav-link{display:none}.ofqd-btn{padding:9px 12px}.univers-card{height:116px}}


/* V9 ajustements demandés Fabrice : logo plus visible */
.ofqd-brand{min-width:clamp(132px,9vw,170px)}
.ofqd-brand img{height:clamp(36px,2.35vw,46px)}


/* =========================================================
   OFQD V10 FINAL - Hero validé Fabrice
   - Plage de Deauville + enfants + marché fermier
   - Plus de case boussole
   - Bulle Rodyn compacte sans cœur
   - Logo OFQD plus visible
   - Image non déformée : pas de flou latéral, pas d'écrasement
   ========================================================= */
.ofqd-brand{min-width:clamp(170px,11vw,230px)!important;}
.ofqd-brand img{height:clamp(48px,3.4vw,66px)!important;width:auto!important;}
.ofqd-topbar-v1{background:#fff;}
.ofqd-nav-wrap{height:clamp(66px,4.8vw,88px)!important;}
.ofqd-main-nav a.active:after{bottom:calc(clamp(66px,4.8vw,88px) / -2 + 7px)!important;}

.ofqd-hero-modern{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  overflow:hidden;
  background:#fff;
  line-height:0;
}
.ofqd-hero-modern img{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  object-fit:contain;
}
.ofqd-univers-v1{padding-top:clamp(12px,1vw,18px)!important;}

@media (min-width:1900px){
  .ofqd-section{max-width:1180px!important;}
}
@media (max-width:900px){
  .ofqd-brand{min-width:132px!important;}
  .ofqd-brand img{height:42px!important;}
  .ofqd-nav-wrap{height:auto!important;}
  .ofqd-hero-modern img{width:auto;height:clamp(260px,58vw,390px);max-width:none;transform:translateX(-31%);}
}
@media (max-width:620px){
  .ofqd-hero-modern img{height:250px;transform:translateX(-38%);}
}

/* =========================================================
   OFQD V1.0.2 - base test ok conservée + maquette validée
   But : garder les proportions qui bougent naturellement.
   Ne pas forcer la hauteur du hero sur PC/TV.
   ========================================================= */
:root{
  --ofqd-blue:#071b55;
  --ofqd-red:#e60012;
  --ofqd-purple:#4d22ff;
  --ofqd-page-fluid:clamp(980px, 68vw, 1320px);
  --ofqd-nav-font-fluid:clamp(13px, calc(.46vw + .30vh), 20px);
  --ofqd-logo-fluid:clamp(48px, calc(2vw + .65vh), 76px);
}
.ofqd-container,.ofqd-section{max-width:var(--ofqd-page-fluid)!important;}
.ofqd-topbar-v1{position:sticky;top:0;z-index:1000;background:#fff!important;}
.ofqd-nav-wrap{height:clamp(66px, calc(3.2vw + 1vh), 96px)!important;min-height:clamp(66px, calc(3.2vw + 1vh), 96px)!important;}
.ofqd-brand{min-width:clamp(165px, 10vw, 255px)!important;}
.ofqd-brand img{height:var(--ofqd-logo-fluid)!important;width:auto!important;}
.ofqd-main-nav{gap:clamp(13px,1.18vw,30px)!important;}
.ofqd-main-nav a{font-size:var(--ofqd-nav-font-fluid)!important;font-weight:950!important;}
.ofqd-fav-link,.ofqd-btn{font-size:clamp(11px, calc(.36vw + .22vh), 16px)!important;}

/* IMPORTANT : proportion naturelle = pas de height fixe */
.ofqd-hero-modern,.ofqd-hero-v102{
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
  line-height:0!important;
  background:#fff!important;
}
.ofqd-hero-modern img,.ofqd-hero-v102 img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
}

.ofqd-premium-v1{padding-top:clamp(18px, calc(1.2vw + .6vh), 36px)!important;padding-bottom:clamp(22px,2vw,44px)!important;}
.ofqd-premium-v1 h2{font-size:clamp(25px, calc(1vw + .55vh), 40px)!important;}
.ofqd-premium-row{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:clamp(16px,1.35vw,30px)!important;}
.premium-v1-photo{height:clamp(96px, calc(4.2vw + 1.2vh), 170px)!important;}
.premium-v1-body h3{font-size:clamp(15px, calc(.48vw + .25vh), 21px)!important;}
.premium-v1-body p{font-size:clamp(12px, calc(.34vw + .20vh), 16px)!important;}

@media (min-width:1900px){
  :root{--ofqd-page-fluid:clamp(1120px, 64vw, 1460px);}
}
@media (min-width:2500px), (min-height:1350px){
  :root{--ofqd-page-fluid:clamp(1280px, 60vw, 1680px);--ofqd-nav-font-fluid:clamp(18px,.78vw,26px);--ofqd-logo-fluid:clamp(70px,2.8vw,106px);}
}
@media (max-width:1200px){
  :root{--ofqd-page-fluid:94vw;}
  .ofqd-main-nav{overflow-x:auto!important;justify-content:flex-start!important;scrollbar-width:none;}
  .ofqd-main-nav::-webkit-scrollbar{display:none;}
  .ofqd-premium-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media (max-width:900px){
  :root{--ofqd-logo-fluid:42px;--ofqd-nav-font-fluid:14px;}
  .ofqd-nav-wrap{height:auto!important;min-height:68px!important;flex-wrap:wrap!important;padding:10px 16px!important;}
  .ofqd-brand{min-width:132px!important;}
  .ofqd-main-nav{order:3;flex-basis:100%;gap:18px!important;padding-bottom:8px;}
  .ofqd-main-nav a.active:after{display:none!important;}
  .ofqd-hero-modern img,.ofqd-hero-v102 img{width:auto!important;height:clamp(280px,58vw,390px)!important;max-width:none!important;transform:translateX(-30%)!important;}
  .ofqd-premium-row{display:flex!important;overflow-x:auto!important;gap:14px!important;scroll-snap-type:x mandatory;}
  .premium-v1-card{min-width:min(78vw,330px)!important;scroll-snap-align:start;}
}
@media (max-width:620px){
  .ofqd-hero-modern img,.ofqd-hero-v102 img{height:260px!important;transform:translateX(-38%)!important;}
  .ofqd-fav-link{display:none!important;}
  .ofqd-btn.ghost{display:none!important;}
}


/* =========================================================
   OFQD V1.0.3 - Header plus lisible
   Objectif : menu Accueil / onglets plus visibles sur 37" / 42".
   Hero, Rodyn et barre de recherche : inchangés.
   ========================================================= */
:root{
  --ofqd-nav-font-fluid:clamp(15px, calc(.55vw + .52vh), 23px);
  --ofqd-logo-fluid:clamp(54px, calc(2.1vw + .80vh), 92px);
  --ofqd-header-fluid:clamp(74px, calc(3.4vw + 1.25vh), 118px);
  --ofqd-nav-gap-fluid:clamp(16px, 1.45vw, 38px);
  --ofqd-action-font-fluid:clamp(13px, calc(.42vw + .28vh), 18px);
}
.ofqd-nav-wrap{
  height:var(--ofqd-header-fluid)!important;
  min-height:var(--ofqd-header-fluid)!important;
  gap:clamp(16px,1.7vw,42px)!important;
}
.ofqd-brand{min-width:clamp(188px, 11vw, 300px)!important;}
.ofqd-brand img{height:var(--ofqd-logo-fluid)!important;width:auto!important;}
.ofqd-main-nav{gap:var(--ofqd-nav-gap-fluid)!important;}
.ofqd-main-nav a{
  font-size:var(--ofqd-nav-font-fluid)!important;
  line-height:1!important;
  letter-spacing:-.01em!important;
}
.ofqd-main-nav a.active:after{
  bottom:calc(var(--ofqd-header-fluid) / -2 + 8px)!important;
  height:4px!important;
}
.ofqd-fav-link,
.ofqd-btn{font-size:var(--ofqd-action-font-fluid)!important;}
.ofqd-btn{padding:clamp(10px,.85vw,15px) clamp(15px,1.2vw,24px)!important;}

@media (min-width:1600px){
  :root{
    --ofqd-nav-font-fluid:clamp(16px, calc(.58vw + .50vh), 24px);
    --ofqd-logo-fluid:clamp(60px, calc(2.15vw + .85vh), 96px);
  }
}
@media (min-width:2200px){
  :root{
    --ofqd-nav-font-fluid:clamp(19px, .82vw, 28px);
    --ofqd-logo-fluid:clamp(78px, 3vw, 118px);
    --ofqd-header-fluid:clamp(96px, 4vw, 138px);
    --ofqd-nav-gap-fluid:clamp(24px,1.55vw,48px);
  }
}
@media (max-width:1200px){
  :root{
    --ofqd-nav-font-fluid:clamp(14px, 1.7vw, 19px);
    --ofqd-logo-fluid:clamp(44px, 5vw, 60px);
  }
  .ofqd-brand{min-width:clamp(150px,22vw,210px)!important;}
}
@media (max-width:900px){
  :root{
    --ofqd-nav-font-fluid:clamp(16px, 4.2vw, 23px);
    --ofqd-logo-fluid:clamp(46px, 10vw, 62px);
  }
  .ofqd-main-nav a{font-weight:950!important;}
}
@media (max-width:620px){
  :root{--ofqd-nav-font-fluid:clamp(17px, 5.5vw, 24px);}
  .ofqd-brand{min-width:150px!important;}
}

/* =========================================================
   OFQD V1.0.4 - Hero Premium validé
   - Enfants déplacés sur le sable avec ballon
   - Queue de Rodyn visible et dépassante dans la composition
   - Barre de recherche visuellement plus fine dans l'image V1.0.4
   - Footer : logo officiel OFQD clair
   ========================================================= */
.ofqd-hero-v104{
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  overflow:hidden!important;
  line-height:0!important;
  background:#fff!important;
}
.ofqd-hero-v104 img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
}
.ofqd-footer-brand{display:flex;align-items:center;min-width:clamp(180px,14vw,320px)}
.ofqd-footer-brand img{height:clamp(56px,4vw,86px);width:auto;display:block;filter:drop-shadow(0 8px 18px rgba(0,0,0,.18))}
.ofqd-footer-grid{padding-top:clamp(8px,.8vw,16px)!important;padding-bottom:clamp(8px,.8vw,16px)!important;}
@media (max-width:900px){
  .ofqd-hero-v104 img{width:auto!important;height:clamp(280px,58vw,390px)!important;max-width:none!important;transform:translateX(-30%)!important;}
  .ofqd-footer-brand{justify-content:center;margin-bottom:12px}.ofqd-footer-brand img{height:58px;}
}
@media (max-width:620px){
  .ofqd-hero-v104 img{height:260px!important;transform:translateX(-38%)!important;}
}


/* =========================================================
   OFQD V1.0 OFFICIELLE - Logos validés + footer Maryne
   Base : test VALIDE 040726_15h25
   ========================================================= */
.ofqd-brand{min-width:clamp(180px,12vw,260px)!important;}
.ofqd-brand img[src*="logo-ofqd-officiel-horizontal"]{
  height:clamp(42px,2.9vw,64px)!important;
  width:auto!important;
  object-fit:contain!important;
}
.ofqd-footer-officiel{background:#071b55!important;color:#fff!important;}
.ofqd-footer-officiel .ofqd-footer-grid{
  min-height:clamp(78px,5.3vw,118px)!important;
  display:grid!important;
  grid-template-columns:minmax(180px,260px) 1fr minmax(210px,280px)!important;
  align-items:center!important;
  gap:clamp(18px,2vw,34px)!important;
}
.ofqd-footer-officiel .ofqd-footer-brand{min-width:0!important;justify-content:flex-start!important;}
.ofqd-footer-officiel .ofqd-footer-brand img{
  height:clamp(48px,3.5vw,78px)!important;
  width:auto!important;
  filter:none!important;
}
.ofqd-maryne-line{
  margin:0!important;
  text-align:center!important;
  color:#fff!important;
  font-weight:700!important;
  line-height:1.35!important;
  font-size:clamp(14px,.9vw,19px)!important;
}
.ofqd-maryne-line em{
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-style:normal!important;
  color:#ffc857!important;
  font-size:clamp(20px,1.45vw,30px)!important;
  white-space:nowrap!important;
}
.ofqd-maryne-line span{color:#ff3d3d!important;font-size:1.2em!important;background:none!important;}
.ofqd-footer-officiel .ofqd-footer-grid > span{
  text-align:right!important;
  font-size:clamp(12px,.78vw,15px)!important;
}
@media (max-width:900px){
  .ofqd-footer-officiel .ofqd-footer-grid{display:flex!important;flex-direction:column!important;text-align:center!important;gap:10px!important;padding-block:18px!important;}
  .ofqd-footer-officiel .ofqd-footer-brand{justify-content:center!important;}
  .ofqd-footer-officiel .ofqd-footer-brand img{height:58px!important;}
  .ofqd-footer-officiel .ofqd-footer-grid > span{text-align:center!important;}
  .ofqd-maryne-line em{white-space:normal!important;}
}

/* =========================================================
   OFQD V1.0 OFFICIELLE FINAL
   - Hero validé avec queue de Rodyn enroulée dans l'image
   - Barre de recherche plus basse dans l'image
   - Aucun overlay de queue : plus de problème de taille géante
   - Mobile/iPad : mêmes règles de recadrage que la base validée
   ========================================================= */
.ofqd-hero-v1-officielle{
  position:relative!important;
  width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  overflow:hidden!important;
  line-height:0!important;
  background:#fff!important;
}
.ofqd-hero-v1-officielle img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
}
.ofqd-rodyn-tail,
.rodyn-tail,
.tail-overlay,
.ofqd-tail-overlay{
  display:none!important;
}
@media (max-width:900px){
  .ofqd-hero-v1-officielle img{
    width:auto!important;
    height:clamp(280px,58vw,390px)!important;
    max-width:none!important;
    transform:translateX(-30%)!important;
  }
}
@media (max-width:620px){
  .ofqd-hero-v1-officielle img{
    height:260px!important;
    transform:translateX(-38%)!important;
  }
}


/* =========================================================
   OFQD V1.0 OFFICIELLE TERMINÉE
   Hero final figé : une seule image, une seule queue intégrée.
   Plus aucun overlay de queue, barre de recherche déjà intégrée et plus basse.
   ========================================================= */
html,body{overflow-x:hidden!important;}
.ofqd-hero-v1-officielle{
  position:relative!important;
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  overflow:hidden!important;
  line-height:0!important;
  background:#fff!important;
}
.ofqd-hero-v1-officielle img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
}
.ofqd-rodyn-tail,.rodyn-tail,.tail-overlay,.ofqd-tail-overlay,
img[src*="tail"], img[src*="queue"]{display:none!important;}
@media (max-width:900px){
  .ofqd-hero-v1-officielle img{
    width:auto!important;
    height:clamp(280px,58vw,390px)!important;
    max-width:none!important;
    transform:translateX(-30%)!important;
  }
}
@media (max-width:620px){
  .ofqd-hero-v1-officielle img{
    height:260px!important;
    transform:translateX(-38%)!important;
  }
}


/* =========================================================
   OFQD V1.0 OFFICIELLE - CLÔTURE DEFINITIVE HERO
   - Panneau supprimé dans l'image
   - Une seule queue naturelle, intégrée
   - Barre de recherche basse et plus fine
   - Aucun overlay CSS
   ========================================================= */
html, body{max-width:100%!important;overflow-x:hidden!important;}
.ofqd-hero-v1-officielle{max-width:100vw!important;overflow:hidden!important;}
.ofqd-hero-v1-officielle img{width:100%!important;height:auto!important;display:block!important;}
.ofqd-rodyn-tail,.rodyn-tail,.tail-overlay,.ofqd-tail-overlay,img[src*="tail"],img[src*="queue"]{display:none!important;}


/* =========================================================
   OFQD V1.1 MOBILE PREMIUM - Maryne
   Objectif : corriger le mobile sans toucher au Hero PC.
   PC >= 901px : inchangé.
   Mobile <= 900px : header dédié, Hero mobile dédié, cartes lisibles.
   ========================================================= */
.ofqd-mobile-menu-toggle,
.ofqd-hero-mobile-v11{display:none!important;}

@media (max-width:900px){
  html,body{max-width:100%!important;overflow-x:hidden!important;background:#fff!important;}

  /* Header mobile : hamburger + logo officiel + connexion */
  .ofqd-topbar-v1{background:#fff!important;box-shadow:0 8px 22px rgba(7,27,85,.08)!important;position:relative!important;z-index:50!important;}
  .ofqd-nav-wrap{
    height:auto!important;min-height:98px!important;display:grid!important;
    grid-template-columns:48px 1fr auto!important;grid-template-areas:"burger logo action" "nav nav nav"!important;
    align-items:center!important;gap:8px 12px!important;padding:14px 18px 10px!important;
  }
  .ofqd-mobile-menu-toggle{
    display:flex!important;grid-area:burger!important;width:44px!important;height:44px!important;border:0!important;background:#fff!important;
    color:#071b55!important;font-size:34px!important;font-weight:900!important;align-items:center!important;justify-content:center!important;
    line-height:1!important;cursor:pointer!important;
  }
  .ofqd-brand{grid-area:logo!important;min-width:0!important;display:flex!important;justify-content:flex-start!important;align-items:center!important;}
  .ofqd-brand img[src*="logo-ofqd-officiel-horizontal"]{height:56px!important;width:auto!important;max-width:190px!important;object-fit:contain!important;}
  .ofqd-brand span{display:none!important;}
  .ofqd-top-actions{grid-area:action!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;}
  .ofqd-fav-link,.ofqd-btn.ghost{display:none!important;}
  .ofqd-btn.primary{font-size:17px!important;border-radius:24px!important;padding:14px 21px!important;background:#071b55!important;box-shadow:0 10px 24px rgba(7,27,85,.18)!important;}

  /* Menu mobile : caché par défaut, ouvert par hamburger */
  .ofqd-main-nav{
    grid-area:nav!important;display:none!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;
    padding:8px 0 0!important;overflow:visible!important;background:#fff!important;border-top:1px solid #eef1f6!important;
  }
  body.ofqd-mobile-menu-open .ofqd-main-nav{display:flex!important;}
  .ofqd-main-nav a{
    display:block!important;padding:14px 6px!important;border-bottom:1px solid #eef1f6!important;
    font-size:20px!important;font-weight:950!important;color:#071b55!important;text-decoration:none!important;
  }
  .ofqd-main-nav a.active{color:#0069ff!important;}
  .ofqd-main-nav a.active:after{display:none!important;}

  /* On garde le Hero PC intact, mais on ne l'affiche pas sur mobile */
  .ofqd-hero-v1-officielle{display:none!important;}
  .ofqd-hero-mobile-v11{
    display:block!important;position:relative!important;overflow:hidden!important;background:#fff!important;margin:0!important;padding:0 0 18px!important;
  }
  .ofqd-mobile-hero-bg{
    position:relative!important;height:430px!important;background-image:linear-gradient(90deg,rgba(255,255,255,.28),rgba(255,255,255,.02)),url('../img/hero-mobile-rodyn-bg.jpg?v=10110')!important;
    background-size:cover!important;background-position:58% center!important;
  }
  .ofqd-mobile-hero-panel{
    position:absolute!important;left:18px!important;right:18px!important;top:28px!important;z-index:2!important;
    background:rgba(255,255,255,.80)!important;backdrop-filter:blur(7px)!important;border:1px solid rgba(255,255,255,.70)!important;
    border-radius:22px!important;padding:18px 18px 16px!important;box-shadow:0 16px 34px rgba(7,27,85,.14)!important;
  }
  .ofqd-mobile-kicker{margin:0!important;color:#071b55!important;font-size:clamp(30px,9vw,42px)!important;font-weight:950!important;line-height:.98!important;letter-spacing:-.04em!important;}
  .ofqd-mobile-hero-panel h1{margin:2px 0 8px!important;color:#071b55!important;font-size:clamp(32px,9.6vw,46px)!important;font-weight:950!important;line-height:.98!important;letter-spacing:-.045em!important;}
  .ofqd-mobile-hero-panel h1 span{color:#5a20ff!important;}
  .ofqd-mobile-subtitle{margin:0!important;color:#071b55!important;font-size:15px!important;line-height:1.25!important;font-weight:800!important;max-width:88%!important;}
  .ofqd-mobile-search{position:absolute!important;left:18px!important;right:18px!important;bottom:-150px!important;display:grid!important;gap:12px!important;z-index:4!important;}
  .ofqd-mobile-search-field{height:58px!important;border-radius:18px!important;background:#fff!important;display:flex!important;align-items:center!important;gap:12px!important;padding:0 16px!important;box-shadow:0 12px 30px rgba(7,27,85,.16)!important;border:1px solid #edf0f6!important;}
  .ofqd-mobile-search-field span{font-size:28px!important;color:#071b55!important;line-height:1!important;}
  .ofqd-mobile-search-field input{border:0!important;outline:0!important;width:100%!important;font-size:15px!important;font-weight:600!important;color:#071b55!important;background:transparent!important;}
  .ofqd-mobile-around{height:58px!important;border:0!important;border-radius:18px!important;background:#0069ff!important;color:#fff!important;font-size:20px!important;font-weight:950!important;box-shadow:0 16px 32px rgba(0,105,255,.26)!important;}
  .ofqd-mobile-univers{
    position:relative!important;margin:-4px 16px 24px!important;background:#fff!important;border-radius:22px!important;padding:14px 10px!important;
    display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important;box-shadow:0 16px 38px rgba(7,27,85,.13)!important;z-index:3!important;
  }
  .ofqd-mobile-univers a{display:flex!important;flex-direction:column!important;align-items:center!important;gap:7px!important;text-decoration:none!important;color:#071b55!important;font-size:24px!important;font-weight:900!important;}
  .ofqd-mobile-univers a span{font-size:12px!important;line-height:1!important;}

  /* Événements mobile : plus propre, pas de titres géants qui débordent */
  .ofqd-home-main{padding-top:0!important;}
  .ofqd-section{width:100%!important;max-width:100%!important;margin:0!important;padding:20px 18px 28px!important;box-sizing:border-box!important;}
  .section-title-row{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:12px!important;margin-bottom:16px!important;}
  .ofqd-premium-v1 h2{font-size:clamp(28px,8.4vw,38px)!important;line-height:1.03!important;margin:0!important;letter-spacing:-.035em!important;}
  .section-title-row a{font-size:16px!important;font-weight:950!important;white-space:nowrap!important;color:#0069ff!important;}
  .ofqd-premium-row{display:flex!important;overflow-x:auto!important;gap:16px!important;padding:0 2px 12px!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;}
  .ofqd-premium-row::-webkit-scrollbar{display:none!important;}
  .premium-v1-card{min-width:86vw!important;max-width:86vw!important;border-radius:20px!important;overflow:hidden!important;scroll-snap-align:start!important;box-shadow:0 16px 34px rgba(7,27,85,.16)!important;}
  .premium-v1-photo{height:220px!important;border-radius:0!important;}
  .premium-v1-photo span{top:14px!important;left:14px!important;border-radius:12px!important;font-size:16px!important;padding:9px 14px!important;}
  .premium-v1-body{padding:18px 22px 24px!important;min-height:120px!important;}
  .premium-v1-body h3{font-size:28px!important;line-height:1.05!important;margin:0 0 10px!important;}
  .premium-v1-body p{font-size:18px!important;line-height:1.35!important;}
  .premium-v1-body button{right:22px!important;bottom:22px!important;font-size:38px!important;}

  /* Footer mobile plus propre */
  .ofqd-footer-officiel .ofqd-footer-grid{display:flex!important;flex-direction:column!important;gap:14px!important;text-align:center!important;padding:28px 18px!important;}
  .ofqd-footer-officiel .ofqd-footer-brand{justify-content:center!important;}
  .ofqd-footer-officiel .ofqd-footer-brand img{height:58px!important;max-width:240px!important;object-fit:contain!important;}
  .ofqd-maryne-line{font-size:18px!important;line-height:1.35!important;}
  .ofqd-maryne-line em{font-size:26px!important;white-space:normal!important;}
}

@media (max-width:420px){
  .ofqd-nav-wrap{grid-template-columns:42px 1fr auto!important;padding-inline:14px!important;}
  .ofqd-brand img[src*="logo-ofqd-officiel-horizontal"]{height:48px!important;max-width:160px!important;}
  .ofqd-btn.primary{font-size:15px!important;padding:13px 16px!important;}
  .ofqd-mobile-hero-bg{height:408px!important;background-position:61% center!important;}
  .ofqd-mobile-hero-panel{left:14px!important;right:14px!important;top:22px!important;padding:16px!important;}
  .ofqd-mobile-search{left:14px!important;right:14px!important;bottom:-145px!important;}
  .ofqd-mobile-univers{margin-inline:12px!important;grid-template-columns:repeat(3,1fr)!important;}
}


/* =========================================================
   OFQD V1.1 MOBILE PREMIUM - Correction finale mobile
   - PC non touché
   - Rodyn visible : titre en 3 lignes sur panneau gauche
   - Icônes modernes SVG/CSS, plus d'emojis enfantins
   ========================================================= */
@media (max-width:900px){
  .ofqd-hero-mobile-v11{padding:0 0 18px!important;}
  .ofqd-mobile-hero-bg{
    height:560px!important;
    background-size:cover!important;
    background-position:62% center!important;
  }
  .ofqd-mobile-hero-bg:after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,0) 48%,rgba(0,0,0,.04));
    pointer-events:none;
  }
  .ofqd-mobile-hero-panel{
    left:18px!important;right:auto!important;top:42px!important;width:min(54vw,260px)!important;
    padding:18px 18px 16px!important;border-radius:22px!important;
    background:rgba(255,255,255,.84)!important;backdrop-filter:blur(7px)!important;
  }
  .ofqd-mobile-kicker{font-size:clamp(28px,8vw,38px)!important;line-height:.96!important;}
  .ofqd-mobile-hero-panel h1{font-size:clamp(30px,8.6vw,42px)!important;line-height:.96!important;margin:4px 0 10px!important;}
  .ofqd-mobile-hero-panel h1 .line{display:block!important;color:#071b55!important;}
  .ofqd-mobile-hero-panel h1 .accent{color:#ff6a00!important;}
  .ofqd-mobile-subtitle{font-size:clamp(13px,3.4vw,15px)!important;line-height:1.22!important;max-width:100%!important;}

  .ofqd-mobile-search{position:absolute!important;left:18px!important;right:18px!important;bottom:92px!important;display:grid!important;gap:12px!important;z-index:5!important;}
  .ofqd-mobile-search-field{height:60px!important;border-radius:18px!important;padding:0 16px!important;}
  .ofqd-mobile-search-field .search-ico{width:28px!important;height:28px!important;min-width:28px!important;display:block!important;border:3px solid #071b55!important;border-radius:50%!important;position:relative!important;opacity:.95;}
  .ofqd-mobile-search-field .search-ico:after{content:"";position:absolute;width:12px;height:3px;background:#071b55;right:-9px;bottom:-3px;transform:rotate(45deg);border-radius:3px;}
  .ofqd-mobile-search-field input{font-size:15px!important;}
  .ofqd-mobile-around{height:60px!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;}
  .pin-ico{width:28px!important;height:28px!important;display:inline-block!important;position:relative!important;border:3px solid #fff!important;border-radius:50% 50% 50% 0!important;transform:rotate(-45deg);}
  .pin-ico:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;left:7px;top:7px;}

  .ofqd-mobile-univers{margin:-60px 16px 24px!important;padding:22px 10px!important;border-radius:24px!important;}
  .ofqd-mobile-univers a{font-size:0!important;gap:10px!important;}
  .ofqd-mobile-univers a i{width:44px;height:44px;display:block;background-repeat:no-repeat;background-position:center;background-size:44px 44px;}
  .ofqd-mobile-univers a span{font-size:14px!important;font-weight:950!important;color:#071b55!important;}
  .ofqd-mobile-univers .u-event i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23071B55' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='12' y='14' width='40' height='40' rx='6'/%3E%3Cpath d='M20 10v10M44 10v10M12 26h40'/%3E%3Cpath stroke='%23ff6a00' d='M22 36h.1M32 36h.1M42 36h.1M22 46h.1M32 46h.1M42 46h.1'/%3E%3C/svg%3E")}
  .ofqd-mobile-univers .u-ads i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23071B55' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 38h8l22 10V16L22 26h-8z'/%3E%3Cpath stroke='%23ff6a00' d='M44 24h8M44 32h12M44 40h8M22 38l4 12'/%3E%3C/svg%3E")}
  .ofqd-mobile-univers .u-sports i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23071B55' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='40' cy='12' r='5'/%3E%3Cpath d='M30 24l10-6 8 8M38 30l-8 10M40 30l8 18M28 42H14'/%3E%3Cpath stroke='%23ff6a00' d='M12 52h20M38 52h14'/%3E%3C/svg%3E")}
  .ofqd-mobile-univers .u-culture i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23071B55' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 18c10 4 18 4 28 0v22c0 10-8 16-14 16s-14-6-14-16z'/%3E%3Cpath stroke='%23ff6a00' d='M32 18c6 3 12 3 18 0v18c0 8-6 14-12 16M22 32h.1M34 32h.1M22 44c4 3 8 3 12 0'/%3E%3C/svg%3E")}
  .ofqd-mobile-univers .u-family i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23071B55' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='22' cy='20' r='7'/%3E%3Ccircle cx='44' cy='22' r='6'/%3E%3Cpath d='M10 54v-8c0-8 6-14 12-14s12 6 12 14v8M36 54v-7c0-6 4-11 9-11s9 5 9 11v7'/%3E%3Cpath stroke='%23ff6a00' d='M28 38c4 6 8 6 12 0'/%3E%3C/svg%3E")}
  .ofqd-mobile-univers .u-gallery i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23071B55' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='10' y='14' width='44' height='38' rx='5'/%3E%3Ccircle cx='24' cy='26' r='4'/%3E%3Cpath d='M14 46l12-12 8 8 6-6 10 10'/%3E%3Cpath stroke='%23ff6a00' d='M44 20h6'/%3E%3C/svg%3E")}
}
@media (max-width:420px){
  .ofqd-mobile-hero-bg{height:540px!important;background-position:64% center!important;}
  .ofqd-mobile-hero-panel{left:14px!important;top:34px!important;width:54vw!important;max-width:218px!important;padding:15px!important;}
  .ofqd-mobile-search{left:14px!important;right:14px!important;bottom:86px!important;}
  .ofqd-mobile-univers{margin:-54px 12px 24px!important;}
}


/* =========================================================
   OFQD V1.1 MOBILE PREMIUM - Icônes Partager + Mode nuit
   PC inchangé. Ajout uniquement dans le module mobile.
   ========================================================= */
@media (max-width:900px){
  .ofqd-mobile-univers{
    grid-template-columns:repeat(4,1fr)!important;
    gap:14px 8px!important;
    padding:22px 8px!important;
  }
  .ofqd-mobile-univers a,
  .ofqd-mobile-univers button{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:78px!important;
    text-decoration:none!important;
    color:#071b55!important;
    border:0!important;
    background:transparent!important;
    font-family:inherit!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .ofqd-mobile-univers a:active,
  .ofqd-mobile-univers button:active{transform:scale(.96)!important;}
  .ofqd-mobile-univers a i,
  .ofqd-mobile-univers button i{
    width:42px!important;
    height:42px!important;
    display:block!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-size:42px 42px!important;
  }
  .ofqd-mobile-univers a span,
  .ofqd-mobile-univers button span{
    font-size:11.5px!important;
    font-weight:950!important;
    color:#071b55!important;
    line-height:1.05!important;
    white-space:nowrap!important;
  }
  .ofqd-mobile-univers .u-share i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23071B55' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='46' cy='16' r='8'/%3E%3Ccircle cx='18' cy='32' r='8'/%3E%3Ccircle cx='46' cy='48' r='8'/%3E%3Cpath d='M25 28l14-8M25 36l14 8'/%3E%3Cpath stroke='%23ff6a00' d='M46 8v4M46 52v4'/%3E%3C/svg%3E")!important;}
  .ofqd-mobile-univers .u-night i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23071B55' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M44 46c-14 5-28-5-28-20 0-8 5-16 12-19-2 12 7 23 20 22-1 8-4 14-4 17z'/%3E%3Cpath stroke='%23ffc857' d='M46 12l2 5 5 2-5 2-2 5-2-5-5-2 5-2z'/%3E%3C/svg%3E")!important;}

  body.ofqd-night{background:#061a53!important;color:#fff!important;}
  body.ofqd-night .ofqd-topbar-v1{background:#061a53!important;box-shadow:0 8px 28px rgba(0,0,0,.28)!important;}
  body.ofqd-night .ofqd-main-nav{background:#071b55!important;}
  body.ofqd-night .ofqd-main-nav a{color:#fff!important;}
  body.ofqd-night .ofqd-hero-mobile-v11{background:#061a53!important;}
  body.ofqd-night .ofqd-mobile-hero-bg:after{background:linear-gradient(180deg,rgba(3,12,37,.16),rgba(3,12,37,.56))!important;}
  body.ofqd-night .ofqd-mobile-hero-panel{background:rgba(8,27,85,.74)!important;backdrop-filter:blur(12px)!important;}
  body.ofqd-night .ofqd-mobile-kicker,
  body.ofqd-night .ofqd-mobile-hero-panel h1 .line,
  body.ofqd-night .ofqd-mobile-subtitle{color:#fff!important;}
  body.ofqd-night .ofqd-mobile-hero-panel h1 .accent{color:#ffc857!important;}
  body.ofqd-night .ofqd-mobile-univers,
  body.ofqd-night .premium-v1-card{background:#0b2365!important;color:#fff!important;box-shadow:0 18px 42px rgba(0,0,0,.34)!important;}
  body.ofqd-night .ofqd-mobile-univers a span,
  body.ofqd-night .ofqd-mobile-univers button span,
  body.ofqd-night .premium-v1-body h3,
  body.ofqd-night .premium-v1-body p,
  body.ofqd-night .ofqd-premium-v1 h2{color:#fff!important;}
  body.ofqd-night .ofqd-premium-v1{background:#061a53!important;}
}
@media (max-width:380px){
  .ofqd-mobile-univers{grid-template-columns:repeat(4,1fr)!important;gap:12px 4px!important;}
  .ofqd-mobile-univers a i,.ofqd-mobile-univers button i{width:38px!important;height:38px!important;background-size:38px 38px!important;}
  .ofqd-mobile-univers a span,.ofqd-mobile-univers button span{font-size:10.5px!important;}
}


/* =========================================================
   OFQD V1.1 FIX - Partager + Nuit PC/Mobile
   Corrige le chevauchement de la grille mobile et active les boutons.
   ========================================================= */
.ofqd-share-desktop{display:inline-flex!important;align-items:center!important;gap:6px!important;}
.ofqd-night-desktop{display:inline-flex!important;align-items:center!important;}
body.ofqd-night{background:#061a53!important;color:#fff!important;}
body.ofqd-night .ofqd-topbar-v1{background:#061a53!important;box-shadow:0 10px 30px rgba(0,0,0,.32)!important;}
body.ofqd-night .ofqd-main-nav a,
body.ofqd-night .ofqd-fav-link{color:#fff!important;}
body.ofqd-night .ofqd-btn.ghost{background:#102b73!important;color:#fff!important;border-color:rgba(255,255,255,.20)!important;}
body.ofqd-night .ofqd-premium-v1{background:#061a53!important;}
body.ofqd-night .ofqd-premium-v1 h2,
body.ofqd-night .premium-v1-body h3,
body.ofqd-night .premium-v1-body p{color:#fff!important;}
body.ofqd-night .premium-v1-card{background:#0b2365!important;color:#fff!important;box-shadow:0 18px 42px rgba(0,0,0,.34)!important;}

@media (max-width:900px){
  .ofqd-top-actions .ofqd-fav-link,
  .ofqd-top-actions .ofqd-share-desktop,
  .ofqd-top-actions .ofqd-night-desktop{display:none!important;}

  .ofqd-hero-mobile-v11{padding-bottom:26px!important;}
  .ofqd-mobile-search{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:calc(100% - 32px)!important;
    margin:-72px auto 18px!important;
    z-index:7!important;
  }
  .ofqd-mobile-search-field{height:64px!important;border-radius:22px!important;}
  .ofqd-mobile-around{height:60px!important;border-radius:20px!important;margin-top:12px!important;}

  .ofqd-mobile-univers{
    position:relative!important;
    z-index:5!important;
    margin:18px 16px 28px!important;
    padding:20px 8px!important;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    gap:12px 6px!important;
    clear:both!important;
  }
  .ofqd-mobile-univers a,
  .ofqd-mobile-univers button{min-height:76px!important;}
  .ofqd-mobile-univers a span,
  .ofqd-mobile-univers button span{font-size:10.8px!important;}

  .section-title-row{padding-inline:22px!important;align-items:flex-end!important;}
  .section-title-row h2{font-size:clamp(30px,9vw,44px)!important;line-height:1.02!important;}

  body.ofqd-night .ofqd-hero-mobile-v11{background:#061a53!important;}
  body.ofqd-night .ofqd-mobile-hero-bg:after{background:linear-gradient(180deg,rgba(3,12,37,.10),rgba(3,12,37,.58))!important;}
  body.ofqd-night .ofqd-mobile-hero-panel{background:rgba(8,27,85,.76)!important;backdrop-filter:blur(12px)!important;}
  body.ofqd-night .ofqd-mobile-kicker,
  body.ofqd-night .ofqd-mobile-hero-panel h1 .line,
  body.ofqd-night .ofqd-mobile-subtitle{color:#fff!important;}
  body.ofqd-night .ofqd-mobile-hero-panel h1 .accent{color:#ffc857!important;}
  body.ofqd-night .ofqd-mobile-search-field{background:#0b2365!important;border-color:rgba(255,255,255,.16)!important;}
  body.ofqd-night .ofqd-mobile-search-field input{color:#fff!important;}
  body.ofqd-night .ofqd-mobile-search-field input::placeholder{color:#cdd8ff!important;}
  body.ofqd-night .ofqd-mobile-univers{background:#0b2365!important;box-shadow:0 18px 42px rgba(0,0,0,.35)!important;}
  body.ofqd-night .ofqd-mobile-univers a span,
  body.ofqd-night .ofqd-mobile-univers button span{color:#fff!important;}
}


/* =========================================================
   OFQD V1.1.2 - Correctif final mobile + nuit PC/mobile
   - Corrige les vignettes cachées sous la recherche mobile
   - Force le mode nuit sur PC et mobile
   - Garde le Hero PC intact
   ========================================================= */
html.ofqd-night, body.ofqd-night{background:#061a53!important;color:#fff!important;}
html.ofqd-night .ofqd-topbar-v1, body.ofqd-night .ofqd-topbar-v1{background:#061a53!important;box-shadow:0 10px 30px rgba(0,0,0,.35)!important;}
html.ofqd-night .ofqd-main-nav a, body.ofqd-night .ofqd-main-nav a,
html.ofqd-night .ofqd-fav-link, body.ofqd-night .ofqd-fav-link{color:#fff!important;}
html.ofqd-night .ofqd-btn.ghost, body.ofqd-night .ofqd-btn.ghost{background:#102b73!important;color:#fff!important;border-color:rgba(255,255,255,.22)!important;}
html.ofqd-night .ofqd-premium-v1, body.ofqd-night .ofqd-premium-v1{background:#061a53!important;}
html.ofqd-night .ofqd-premium-v1 h2, body.ofqd-night .ofqd-premium-v1 h2,
html.ofqd-night .premium-v1-body h3, body.ofqd-night .premium-v1-body h3,
html.ofqd-night .premium-v1-body p, body.ofqd-night .premium-v1-body p{color:#fff!important;}
html.ofqd-night .premium-v1-card, body.ofqd-night .premium-v1-card{background:#0b2365!important;color:#fff!important;box-shadow:0 18px 42px rgba(0,0,0,.35)!important;}
html.ofqd-night .ofqd-footer-officiel, body.ofqd-night .ofqd-footer-officiel{background:#03113b!important;}

@media (max-width:900px){
  /* Header mobile propre */
  .ofqd-top-actions .ofqd-fav-link,
  .ofqd-top-actions .ofqd-share-desktop,
  .ofqd-top-actions .ofqd-night-desktop{display:none!important;}

  /* Le Hero mobile reste dédié, mais la zone recherche ne doit plus recouvrir les icônes */
  .ofqd-hero-mobile-v11{
    display:block!important;
    position:relative!important;
    padding-bottom:0!important;
    background:#fff!important;
    overflow:visible!important;
  }
  .ofqd-mobile-hero-bg{
    height:clamp(520px,142vw,620px)!important;
    background-position:64% center!important;
  }
  .ofqd-mobile-hero-panel{
    z-index:3!important;
  }
  .ofqd-mobile-search{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:calc(100% - 32px)!important;
    margin:-78px auto 34px!important;
    display:grid!important;
    gap:12px!important;
    z-index:8!important;
  }
  .ofqd-mobile-search-field{
    height:64px!important;
    border-radius:22px!important;
    box-shadow:0 12px 28px rgba(7,27,85,.14)!important;
  }
  .ofqd-mobile-around{
    height:60px!important;
    border-radius:20px!important;
    margin:0!important;
  }

  .ofqd-mobile-univers{
    position:relative!important;
    z-index:2!important;
    margin:0 16px 30px!important;
    padding:22px 8px!important;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    gap:14px 6px!important;
    clear:both!important;
    background:#fff!important;
    border-radius:26px!important;
    box-shadow:0 18px 42px rgba(7,27,85,.14)!important;
    transform:none!important;
  }
  .ofqd-mobile-univers a,
  .ofqd-mobile-univers button{
    min-height:78px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    background:transparent!important;
    border:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  .ofqd-mobile-univers a i,
  .ofqd-mobile-univers button i{
    width:40px!important;
    height:40px!important;
    background-size:40px 40px!important;
    display:block!important;
    flex:0 0 40px!important;
  }
  .ofqd-mobile-univers a span,
  .ofqd-mobile-univers button span{
    display:block!important;
    font-size:10.8px!important;
    line-height:1.05!important;
    font-weight:950!important;
    color:#071b55!important;
    white-space:nowrap!important;
  }

  html.ofqd-night .ofqd-hero-mobile-v11, body.ofqd-night .ofqd-hero-mobile-v11{background:#061a53!important;}
  html.ofqd-night .ofqd-mobile-hero-bg:after, body.ofqd-night .ofqd-mobile-hero-bg:after{background:linear-gradient(180deg,rgba(3,12,37,.10),rgba(3,12,37,.58))!important;}
  html.ofqd-night .ofqd-mobile-hero-panel, body.ofqd-night .ofqd-mobile-hero-panel{background:rgba(8,27,85,.78)!important;backdrop-filter:blur(12px)!important;}
  html.ofqd-night .ofqd-mobile-kicker, body.ofqd-night .ofqd-mobile-kicker,
  html.ofqd-night .ofqd-mobile-hero-panel h1 .line, body.ofqd-night .ofqd-mobile-hero-panel h1 .line,
  html.ofqd-night .ofqd-mobile-subtitle, body.ofqd-night .ofqd-mobile-subtitle{color:#fff!important;}
  html.ofqd-night .ofqd-mobile-hero-panel h1 .accent, body.ofqd-night .ofqd-mobile-hero-panel h1 .accent{color:#ffc857!important;}
  html.ofqd-night .ofqd-mobile-search-field, body.ofqd-night .ofqd-mobile-search-field{background:#0b2365!important;border-color:rgba(255,255,255,.18)!important;}
  html.ofqd-night .ofqd-mobile-search-field input, body.ofqd-night .ofqd-mobile-search-field input{color:#fff!important;}
  html.ofqd-night .ofqd-mobile-search-field input::placeholder, body.ofqd-night .ofqd-mobile-search-field input::placeholder{color:#cdd8ff!important;}
  html.ofqd-night .ofqd-mobile-univers, body.ofqd-night .ofqd-mobile-univers{background:#0b2365!important;box-shadow:0 18px 42px rgba(0,0,0,.35)!important;}
  html.ofqd-night .ofqd-mobile-univers a span, body.ofqd-night .ofqd-mobile-univers a span,
  html.ofqd-night .ofqd-mobile-univers button span, body.ofqd-night .ofqd-mobile-univers button span{color:#fff!important;}
}

@media (max-width:380px){
  .ofqd-mobile-univers{margin-inline:12px!important;gap:12px 4px!important;}
  .ofqd-mobile-univers a span,.ofqd-mobile-univers button span{font-size:10px!important;}
}

/* =========================================================
   OFQD V1.1.3 - Correctif icônes mobile en mode nuit
   Les traits bleu/noir deviennent blancs pour rester lisibles.
   PC et Hero non touchés.
   ========================================================= */
@media (max-width:900px){
  html.ofqd-night .ofqd-mobile-univers a i,
  html.ofqd-night .ofqd-mobile-univers button i,
  body.ofqd-night .ofqd-mobile-univers a i,
  body.ofqd-night .ofqd-mobile-univers button i{
    background-color:rgba(255,255,255,.10)!important;
    border-radius:16px!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.12), 0 8px 18px rgba(0,0,0,.18)!important;
  }

  html.ofqd-night .ofqd-mobile-univers .u-event i,
  body.ofqd-night .ofqd-mobile-univers .u-event i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='12' y='14' width='40' height='40' rx='6'/%3E%3Cpath d='M20 10v10M44 10v10M12 26h40'/%3E%3Cpath stroke='%23ffc857' d='M22 36h.1M32 36h.1M42 36h.1M22 46h.1M32 46h.1M42 46h.1'/%3E%3C/svg%3E")!important;}
  html.ofqd-night .ofqd-mobile-univers .u-ads i,
  body.ofqd-night .ofqd-mobile-univers .u-ads i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 38h8l22 10V16L22 26h-8z'/%3E%3Cpath stroke='%23ffc857' d='M44 24h8M44 32h12M44 40h8M22 38l4 12'/%3E%3C/svg%3E")!important;}
  html.ofqd-night .ofqd-mobile-univers .u-sports i,
  body.ofqd-night .ofqd-mobile-univers .u-sports i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='40' cy='12' r='5'/%3E%3Cpath d='M30 24l10-6 8 8M38 30l-8 10M40 30l8 18M28 42H14'/%3E%3Cpath stroke='%23ffc857' d='M12 52h20M38 52h14'/%3E%3C/svg%3E")!important;}
  html.ofqd-night .ofqd-mobile-univers .u-culture i,
  body.ofqd-night .ofqd-mobile-univers .u-culture i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 18c10 4 18 4 28 0v22c0 10-8 16-14 16s-14-6-14-16z'/%3E%3Cpath stroke='%23ffc857' d='M32 18c6 3 12 3 18 0v18c0 8-6 14-12 16M22 32h.1M34 32h.1M22 44c4 3 8 3 12 0'/%3E%3C/svg%3E")!important;}
  html.ofqd-night .ofqd-mobile-univers .u-family i,
  body.ofqd-night .ofqd-mobile-univers .u-family i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='22' cy='20' r='7'/%3E%3Ccircle cx='44' cy='22' r='6'/%3E%3Cpath d='M10 54v-8c0-8 6-14 12-14s12 6 12 14v8M36 54v-7c0-6 4-11 9-11s9 5 9 11v7'/%3E%3Cpath stroke='%23ffc857' d='M28 38c4 6 8 6 12 0'/%3E%3C/svg%3E")!important;}
  html.ofqd-night .ofqd-mobile-univers .u-gallery i,
  body.ofqd-night .ofqd-mobile-univers .u-gallery i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='10' y='14' width='44' height='38' rx='5'/%3E%3Ccircle cx='24' cy='26' r='4'/%3E%3Cpath d='M14 46l12-12 8 8 6-6 10 10'/%3E%3Cpath stroke='%23ffc857' d='M44 20h6'/%3E%3C/svg%3E")!important;}
  html.ofqd-night .ofqd-mobile-univers .u-share i,
  body.ofqd-night .ofqd-mobile-univers .u-share i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='46' cy='16' r='8'/%3E%3Ccircle cx='18' cy='32' r='8'/%3E%3Ccircle cx='46' cy='48' r='8'/%3E%3Cpath d='M25 28l14-8M25 36l14 8'/%3E%3Cpath stroke='%23ffc857' d='M46 8v4M46 52v4'/%3E%3C/svg%3E")!important;}
  html.ofqd-night .ofqd-mobile-univers .u-night i,
  body.ofqd-night .ofqd-mobile-univers .u-night i{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ffffff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M44 46c-14 5-28-5-28-20 0-8 5-16 12-19-2 12 7 23 20 22-1 8-4 14-4 17z'/%3E%3Cpath stroke='%23ffc857' d='M46 12l2 5 5 2-5 2-2 5-2-5-5-2 5-2z'/%3E%3C/svg%3E")!important;}
}


/* =========================================================
   OFQD V1.1.4 - Partage officiel + icônes installation + nuit lisible
   ========================================================= */
@media (max-width:900px){
  html.ofqd-night .ofqd-mobile-univers,
  body.ofqd-night .ofqd-mobile-univers{
    background:rgba(5,20,66,.94)!important;
    box-shadow:0 20px 44px rgba(0,0,0,.46), inset 0 0 0 1px rgba(255,255,255,.12)!important;
  }
  html.ofqd-night .ofqd-mobile-univers a,
  html.ofqd-night .ofqd-mobile-univers button,
  body.ofqd-night .ofqd-mobile-univers a,
  body.ofqd-night .ofqd-mobile-univers button{
    background:rgba(255,255,255,.075)!important;
    border-radius:18px!important;
    padding:10px 4px 9px!important;
  }
  html.ofqd-night .ofqd-mobile-univers a i,
  html.ofqd-night .ofqd-mobile-univers button i,
  body.ofqd-night .ofqd-mobile-univers a i,
  body.ofqd-night .ofqd-mobile-univers button i{
    background-color:transparent!important;
    filter:brightness(0) invert(1) drop-shadow(0 2px 5px rgba(0,0,0,.40))!important;
    opacity:1!important;
    box-shadow:none!important;
  }
  html.ofqd-night .ofqd-mobile-univers a span,
  html.ofqd-night .ofqd-mobile-univers button span,
  body.ofqd-night .ofqd-mobile-univers a span,
  body.ofqd-night .ofqd-mobile-univers button span{
    color:#ffffff!important;
    text-shadow:0 2px 6px rgba(0,0,0,.40)!important;
  }
  html.ofqd-night .ofqd-mobile-univers .u-night i,
  body.ofqd-night .ofqd-mobile-univers .u-night i{
    filter:none!important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ffc857' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 42c8 9 23 5 27-7-12 4-25-6-22-21-12 5-15 20-5 28z'/%3E%3Cpath d='M48 12l2 5 5 2-5 2-2 5-2-5-5-2 5-2z' fill='%23ffc857'/%3E%3C/svg%3E")!important;
    background-color:rgba(255,200,87,.12)!important;
    border-radius:16px!important;
  }
  html.ofqd-night .ofqd-mobile-search-field .search-ico,
  body.ofqd-night .ofqd-mobile-search-field .search-ico{
    filter:brightness(0) invert(1)!important;
    opacity:.95!important;
  }
}

/* =========================================================
   OFQD V1.1.5 - Polish final header mobile + partage robuste
   PC hero non touché.
   ========================================================= */
@media (max-width: 900px){
  .ofqd-topbar-v1{
    background:#fff!important;
    height:auto!important;
    padding:18px 0!important;
    overflow:hidden!important;
  }
  body.ofqd-night .ofqd-topbar-v1,
  html.ofqd-night .ofqd-topbar-v1{
    background:#061a53!important;
  }
  .ofqd-topbar-v1 .ofqd-container,
  .ofqd-nav-wrap{
    width:100%!important;
    max-width:100%!important;
    padding:0 18px!important;
    display:grid!important;
    grid-template-columns:42px minmax(126px,1fr) auto!important;
    align-items:center!important;
    gap:12px!important;
  }
  .ofqd-mobile-menu-toggle{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    height:42px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    color:#071b55!important;
    box-shadow:none!important;
    border-radius:0!important;
    font-size:34px!important;
    line-height:1!important;
    font-weight:900!important;
  }
  body.ofqd-night .ofqd-mobile-menu-toggle,
  html.ofqd-night .ofqd-mobile-menu-toggle{color:#fff!important;}
  .ofqd-brand{
    min-width:0!important;
    width:auto!important;
    justify-content:flex-start!important;
    overflow:hidden!important;
  }
  .ofqd-brand img{
    display:block!important;
    height:clamp(42px,11vw,58px)!important;
    max-width:clamp(142px,36vw,190px)!important;
    width:auto!important;
    object-fit:contain!important;
    background:transparent!important;
    padding:0!important;
    box-shadow:none!important;
    border-radius:0!important;
  }
  .ofqd-brand span{display:none!important;}
  .ofqd-top-actions{
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    min-width:0!important;
    gap:0!important;
  }
  .ofqd-top-actions .ofqd-fav-link,
  .ofqd-top-actions .ofqd-share-desktop,
  .ofqd-top-actions .ofqd-night-desktop{display:none!important;}
  .ofqd-top-actions .ofqd-btn.primary{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:44px!important;
    min-width:106px!important;
    max-width:126px!important;
    padding:0 16px!important;
    border-radius:22px!important;
    font-size:15px!important;
    font-weight:800!important;
    white-space:nowrap!important;
  }
  .ofqd-main-nav{
    display:none!important;
    position:absolute!important;
    left:16px!important;
    right:16px!important;
    top:82px!important;
    z-index:2000!important;
    background:#fff!important;
    border-radius:22px!important;
    padding:14px!important;
    box-shadow:0 24px 60px rgba(7,27,85,.22)!important;
  }
  body.ofqd-mobile-menu-open .ofqd-main-nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;}
  body.ofqd-mobile-menu-open .ofqd-main-nav a{
    padding:12px!important;
    border-radius:14px!important;
    background:#f5f8ff!important;
    text-align:center!important;
  }
  body.ofqd-night.ofqd-mobile-menu-open .ofqd-main-nav,
  html.ofqd-night body.ofqd-mobile-menu-open .ofqd-main-nav{background:#071b55!important;}
  body.ofqd-night.ofqd-mobile-menu-open .ofqd-main-nav a,
  html.ofqd-night body.ofqd-mobile-menu-open .ofqd-main-nav a{background:#102b73!important;color:#fff!important;}

  /* Icônes mode nuit : contraste renforcé, fond individuel lisible */
  html.ofqd-night .ofqd-mobile-univers a,
  html.ofqd-night .ofqd-mobile-univers button,
  body.ofqd-night .ofqd-mobile-univers a,
  body.ofqd-night .ofqd-mobile-univers button{
    background:rgba(255,255,255,.08)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:18px!important;
  }
  html.ofqd-night .ofqd-mobile-univers a i,
  html.ofqd-night .ofqd-mobile-univers button i,
  body.ofqd-night .ofqd-mobile-univers a i,
  body.ofqd-night .ofqd-mobile-univers button i{
    filter:drop-shadow(0 0 10px rgba(255,255,255,.20))!important;
    opacity:1!important;
  }
  html.ofqd-night .ofqd-mobile-univers a span,
  html.ofqd-night .ofqd-mobile-univers button span,
  body.ofqd-night .ofqd-mobile-univers a span,
  body.ofqd-night .ofqd-mobile-univers button span{
    color:#fff!important;
    text-shadow:0 2px 10px rgba(0,0,0,.35)!important;
  }
}

/* Fenêtre de partage robuste PC/mobile */
.ofqd-share-modal{
  position:fixed!important;
  inset:0!important;
  z-index:9999!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px!important;
  background:rgba(3,12,37,.55)!important;
  backdrop-filter:blur(8px)!important;
}
.ofqd-share-modal.is-open{display:flex!important;}
.ofqd-share-box{
  width:min(420px,92vw)!important;
  background:#fff!important;
  color:#071b55!important;
  border-radius:24px!important;
  padding:22px!important;
  box-shadow:0 30px 80px rgba(0,0,0,.28)!important;
}
.ofqd-share-box h3{margin:0 0 8px!important;font-size:22px!important;color:#071b55!important;}
.ofqd-share-box p{margin:0 0 16px!important;color:#4b5570!important;font-weight:700!important;}
.ofqd-share-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;}
.ofqd-share-grid a,.ofqd-share-grid button{
  border:0!important;border-radius:16px!important;padding:13px 10px!important;background:#f1f5ff!important;color:#071b55!important;font-weight:900!important;text-align:center!important;text-decoration:none!important;cursor:pointer!important;
}
.ofqd-share-copy{grid-column:1/-1!important;background:#0b73ff!important;color:#fff!important;}
.ofqd-share-close{margin-top:12px!important;width:100%!important;background:#071b55!important;color:#fff!important;border:0!important;border-radius:16px!important;padding:13px!important;font-weight:900!important;cursor:pointer!important;}
body.ofqd-night .ofqd-share-box, html.ofqd-night .ofqd-share-box{background:#0b2365!important;color:#fff!important;}
body.ofqd-night .ofqd-share-box h3, html.ofqd-night .ofqd-share-box h3{color:#fff!important;}
body.ofqd-night .ofqd-share-box p, html.ofqd-night .ofqd-share-box p{color:#cdd8ff!important;}
body.ofqd-night .ofqd-share-grid a,body.ofqd-night .ofqd-share-grid button, html.ofqd-night .ofqd-share-grid a, html.ofqd-night .ofqd-share-grid button{background:#102b73!important;color:#fff!important;}


/* =========================================================
   OFQD V1.1.6 - Header mobile validé modèle du milieu
   - Coins arrondis
   - Logo officiel sans carré blanc dur
   - Fond blanc dégressif vers bleu
   - Partage : www.onfaitquoidemain.fr
   - PC Hero non touché
   ========================================================= */
@media (max-width:900px){
  .ofqd-topbar-v1{
    position:relative!important;
    background:linear-gradient(180deg,#071b55 0%,#06184a 100%)!important;
    padding:14px 12px 18px!important;
    min-height:86px!important;
    border-radius:0 0 26px 26px!important;
    box-shadow:0 16px 36px rgba(2,10,35,.28)!important;
    overflow:hidden!important;
  }
  .ofqd-topbar-v1::before{
    content:""!important;
    position:absolute!important;
    inset:8px 12px auto 12px!important;
    height:64px!important;
    border-radius:24px!important;
    background:linear-gradient(90deg,rgba(255,255,255,.20) 0%,rgba(255,255,255,.12) 44%,rgba(255,255,255,.04) 78%,rgba(255,255,255,0) 100%)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22)!important;
    pointer-events:none!important;
  }
  .ofqd-topbar-v1 .ofqd-container,
  .ofqd-nav-wrap{
    position:relative!important;
    z-index:2!important;
    display:grid!important;
    grid-template-columns:44px minmax(128px,1fr) auto!important;
    gap:12px!important;
    align-items:center!important;
    width:100%!important;
    max-width:100%!important;
    padding:0 10px!important;
    min-height:64px!important;
  }
  .ofqd-mobile-menu-toggle{
    width:44px!important;
    height:44px!important;
    border-radius:15px!important;
    border:1px solid rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:30px!important;
    line-height:1!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;
  }
  .ofqd-brand{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-width:0!important;
    height:54px!important;
    overflow:visible!important;
  }
  .ofqd-brand::before{
    content:""!important;
    position:absolute!important;
    left:-8px!important;
    top:4px!important;
    bottom:4px!important;
    width:min(220px,48vw)!important;
    border-radius:18px!important;
    background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.82) 52%,rgba(255,255,255,.38) 82%,rgba(255,255,255,0) 100%)!important;
    box-shadow:0 12px 26px rgba(0,0,0,.10)!important;
    pointer-events:none!important;
  }
  .ofqd-brand img{
    position:relative!important;
    z-index:2!important;
    height:46px!important;
    max-width:min(205px,46vw)!important;
    width:auto!important;
    object-fit:contain!important;
    background:transparent!important;
    padding:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .ofqd-brand span{display:none!important;}
  .ofqd-top-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;min-width:0!important;}
  .ofqd-top-actions .ofqd-btn.primary{
    height:42px!important;min-width:100px!important;max-width:118px!important;padding:0 16px!important;border-radius:22px!important;
    background:linear-gradient(180deg,#123a9f,#071b55)!important;color:#fff!important;
    box-shadow:0 10px 24px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.18)!important;
    font-size:14px!important;font-weight:900!important;
  }
  html.ofqd-night .ofqd-topbar-v1, body.ofqd-night .ofqd-topbar-v1{background:linear-gradient(180deg,#071b55 0%,#041238 100%)!important;}
  @media (max-width:390px){
    .ofqd-topbar-v1 .ofqd-container,.ofqd-nav-wrap{grid-template-columns:40px minmax(116px,1fr) auto!important;gap:8px!important;padding:0 6px!important;}
    .ofqd-mobile-menu-toggle{width:40px!important;height:40px!important;font-size:28px!important;}
    .ofqd-brand img{height:42px!important;max-width:min(188px,45vw)!important;}
    .ofqd-brand::before{width:min(198px,47vw)!important;}
    .ofqd-top-actions .ofqd-btn.primary{min-width:92px!important;max-width:108px!important;font-size:13px!important;padding:0 12px!important;}
  }
}
.ofqd-share-box p strong{color:#0b73ff!important;font-weight:900!important;}
body.ofqd-night .ofqd-share-box p strong, html.ofqd-night .ofqd-share-box p strong{color:#ffc857!important;}


/* =========================================================
   OFQD V1.1.7 - Header final jour/nuit + partage racine
   - Header mobile modèle du milieu : arrondi, dégradé, logo intégré
   - Logo lisible en mode nuit sur PC et mobile
   - Partage robuste sur www.onfaitquoidemain.fr
   ========================================================= */
.ofqd-brand img[src*="logo-ofqd-officiel-horizontal"]{
  background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 58%,rgba(255,255,255,.18) 100%)!important;
  border-radius:18px!important;
  padding:7px 12px!important;
  box-shadow:0 10px 28px rgba(7,27,85,.10)!important;
}
html.ofqd-night .ofqd-brand img[src*="logo-ofqd-officiel-horizontal"],
body.ofqd-night .ofqd-brand img[src*="logo-ofqd-officiel-horizontal"]{
  background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.90) 62%,rgba(255,255,255,.10) 100%)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.25)!important;
}
@media (max-width:900px){
  .ofqd-topbar-v1{
    background:linear-gradient(180deg,#ffffff 0%,#f9fbff 100%)!important;
    padding:18px 0 22px!important;
    border-bottom-left-radius:22px!important;
    border-bottom-right-radius:22px!important;
    box-shadow:0 14px 30px rgba(7,27,85,.10)!important;
    overflow:visible!important;
  }
  html.ofqd-night .ofqd-topbar-v1,
  body.ofqd-night .ofqd-topbar-v1{
    background:linear-gradient(180deg,#071b55 0%,#09246c 100%)!important;
    border-bottom-left-radius:22px!important;
    border-bottom-right-radius:22px!important;
    box-shadow:0 18px 42px rgba(0,0,0,.36)!important;
  }
  .ofqd-nav-wrap{
    grid-template-columns:44px minmax(132px,1fr) auto!important;
    gap:14px!important;
    padding:0 18px!important;
  }
  .ofqd-mobile-menu-toggle{
    width:44px!important;
    height:44px!important;
    border-radius:16px!important;
    background:rgba(7,27,85,.06)!important;
    color:#071b55!important;
    font-size:32px!important;
  }
  html.ofqd-night .ofqd-mobile-menu-toggle,
  body.ofqd-night .ofqd-mobile-menu-toggle{
    background:rgba(255,255,255,.10)!important;
    color:#ffffff!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.10)!important;
  }
  .ofqd-brand{justify-content:flex-start!important;overflow:visible!important;}
  .ofqd-brand img[src*="logo-ofqd-officiel-horizontal"]{
    height:48px!important;
    max-width:180px!important;
    padding:6px 10px!important;
    border-radius:18px!important;
    background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 60%,rgba(255,255,255,.14) 100%)!important;
    box-shadow:0 10px 26px rgba(7,27,85,.10)!important;
  }
  .ofqd-top-actions .ofqd-btn.primary{
    height:44px!important;
    min-width:100px!important;
    max-width:118px!important;
    padding:0 14px!important;
    border-radius:22px!important;
    font-size:15px!important;
    background:linear-gradient(180deg,#071b55,#09246c)!important;
  }
  html.ofqd-night .ofqd-top-actions .ofqd-btn.primary,
  body.ofqd-night .ofqd-top-actions .ofqd-btn.primary{
    background:rgba(255,255,255,.10)!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 10px 26px rgba(0,0,0,.28)!important;
  }
  body.ofqd-mobile-menu-open .ofqd-main-nav{
    top:88px!important;
  }
}
/* Modal partage : lien officiel affiché */
.ofqd-share-box p strong{color:#0b73ff!important;}
html.ofqd-night .ofqd-share-box p strong,
body.ofqd-night .ofqd-share-box p strong{color:#9bd2ff!important;}


/* =========================================================
   OFQD V1.1.8 - Correction fond PC + finition mobile
   - Corrige les bandes blanches sur les côtés en mode nuit PC
   - Conserve le Hero PC
   - Sécurise les espacements mobile jour/nuit
   ========================================================= */
html,body{overflow-x:hidden!important;}
.ofqd-home-main{width:100%!important;}
body.ofqd-night .ofqd-home-main,
html.ofqd-night .ofqd-home-main{
  background:#061a53!important;
}
body.ofqd-night .ofqd-premium-v1,
html.ofqd-night .ofqd-premium-v1{
  background:transparent!important;
}
@media (min-width:901px){
  body.ofqd-night .ofqd-home-main,
  html.ofqd-night .ofqd-home-main{
    box-shadow:0 0 0 100vmax #061a53!important;
    clip-path:inset(0 -100vmax)!important;
  }
  body.ofqd-night .ofqd-premium-v1,
  html.ofqd-night .ofqd-premium-v1{
    background:#061a53!important;
  }
}
@media (max-width:900px){
  .ofqd-hero-mobile-v11{overflow:hidden!important;}
  .ofqd-mobile-search{margin-bottom:22px!important;}
  .ofqd-mobile-univers{position:relative!important;z-index:5!important;margin-top:18px!important;}
  body.ofqd-night .ofqd-home-main,
  html.ofqd-night .ofqd-home-main,
  body.ofqd-night .ofqd-section,
  html.ofqd-night .ofqd-section{
    background:#061a53!important;
  }
}

/* =========================================================
   OFQD V1.1.9 - FIX FINAL HEADER MOBILE JOUR/NUIT
   Objectif : trois elements separes (menu / logo / connexion)
   - supprime la grande capsule qui deborde derriere le logo
   - logo plus compact et lisible
   - bouton connexion non coupe
   - header jour et nuit propre
   - ne touche pas au Hero PC
   ========================================================= */
@media (max-width:900px){
  .ofqd-topbar-v1{
    background:linear-gradient(180deg,#ffffff 0%,#f7faff 100%)!important;
    padding:14px 0 16px!important;
    min-height:76px!important;
    border-bottom-left-radius:22px!important;
    border-bottom-right-radius:22px!important;
    box-shadow:0 12px 28px rgba(7,27,85,.10)!important;
    overflow:visible!important;
  }
  html.ofqd-night .ofqd-topbar-v1,
  body.ofqd-night .ofqd-topbar-v1{
    background:linear-gradient(180deg,#071b55 0%,#09246c 100%)!important;
    box-shadow:0 16px 38px rgba(0,0,0,.34)!important;
  }
  .ofqd-topbar-v1 .ofqd-container,
  .ofqd-nav-wrap{
    width:100%!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:48px minmax(118px,1fr) auto!important;
    align-items:center!important;
    gap:12px!important;
    padding:0 16px!important;
    min-height:48px!important;
  }
  .ofqd-mobile-menu-toggle{
    width:46px!important;
    height:46px!important;
    border-radius:17px!important;
    border:1px solid rgba(7,27,85,.14)!important;
    background:rgba(255,255,255,.72)!important;
    color:#071b55!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:30px!important;
    line-height:1!important;
    box-shadow:0 8px 18px rgba(7,27,85,.08)!important;
  }
  html.ofqd-night .ofqd-mobile-menu-toggle,
  body.ofqd-night .ofqd-mobile-menu-toggle{
    background:rgba(255,255,255,.12)!important;
    border-color:rgba(255,255,255,.20)!important;
    color:#ffffff!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 10px 24px rgba(0,0,0,.24)!important;
  }
  .ofqd-brand{
    min-width:0!important;
    height:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
    background:none!important;
    box-shadow:none!important;
    padding:0!important;
  }
  .ofqd-brand::before,
  .ofqd-brand::after{
    content:none!important;
    display:none!important;
  }
  .ofqd-brand img[src*="logo-ofqd-officiel-horizontal"],
  .ofqd-brand img{
    height:42px!important;
    width:auto!important;
    max-width:min(176px,42vw)!important;
    object-fit:contain!important;
    background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.94) 72%,rgba(255,255,255,.22) 100%)!important;
    border-radius:16px!important;
    padding:5px 9px!important;
    box-shadow:0 8px 20px rgba(7,27,85,.10)!important;
    filter:none!important;
  }
  html.ofqd-night .ofqd-brand img[src*="logo-ofqd-officiel-horizontal"],
  body.ofqd-night .ofqd-brand img[src*="logo-ofqd-officiel-horizontal"],
  html.ofqd-night .ofqd-brand img,
  body.ofqd-night .ofqd-brand img{
    background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.88) 72%,rgba(255,255,255,.16) 100%)!important;
    box-shadow:0 10px 24px rgba(0,0,0,.22)!important;
  }
  .ofqd-brand span{display:none!important;}
  .ofqd-top-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    min-width:0!important;
    gap:0!important;
  }
  .ofqd-top-actions .ofqd-fav-link,
  .ofqd-top-actions .ofqd-share-desktop,
  .ofqd-top-actions .ofqd-night-desktop{
    display:none!important;
  }
  .ofqd-top-actions .ofqd-btn.primary{
    height:44px!important;
    min-width:102px!important;
    max-width:112px!important;
    padding:0 14px!important;
    border-radius:24px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:linear-gradient(180deg,#123a9f 0%,#071b55 100%)!important;
    color:#fff!important;
    box-shadow:0 10px 24px rgba(7,27,85,.18)!important;
    font-size:14px!important;
    font-weight:950!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
  html.ofqd-night .ofqd-top-actions .ofqd-btn.primary,
  body.ofqd-night .ofqd-top-actions .ofqd-btn.primary{
    background:rgba(255,255,255,.12)!important;
    border:1px solid rgba(255,255,255,.18)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 10px 24px rgba(0,0,0,.28)!important;
  }
  body.ofqd-mobile-menu-open .ofqd-main-nav{
    top:76px!important;
  }
}
@media (max-width:390px){
  .ofqd-topbar-v1 .ofqd-container,
  .ofqd-nav-wrap{
    grid-template-columns:44px minmax(112px,1fr) auto!important;
    gap:9px!important;
    padding:0 12px!important;
  }
  .ofqd-mobile-menu-toggle{width:42px!important;height:42px!important;font-size:28px!important;}
  .ofqd-brand img[src*="logo-ofqd-officiel-horizontal"],
  .ofqd-brand img{height:38px!important;max-width:min(160px,40vw)!important;padding:4px 8px!important;}
  .ofqd-top-actions .ofqd-btn.primary{height:42px!important;min-width:94px!important;max-width:102px!important;font-size:13px!important;padding:0 10px!important;}
}


/* =========================================================
   OFQD V69.1 - Correctif liens barre + recherche Hero cliquable
   - La barre visuelle du hero PC devient un vrai formulaire
   - Le hero mobile envoie vers /events.php
   - Le bouton Autour de moi prépare la recherche locale
   ========================================================= */
.ofqd-hero-v1-officielle{position:relative!important;}
.ofqd-hero-click-search{
  position:absolute!important;
  left:28.2%!important;
  bottom:4.45%!important;
  width:43.5%!important;
  height:9.3%!important;
  z-index:6!important;
  display:grid!important;
  grid-template-columns:1fr 23% 9.4%!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.ofqd-hero-click-field{display:flex!important;align-items:center!important;height:100%!important;min-width:0!important;margin:0!important;padding:0 0 0 9%!important;background:transparent!important;}
.ofqd-hero-click-field input{width:100%!important;height:100%!important;border:0!important;outline:0!important;background:transparent!important;color:#071b55!important;font-size:clamp(11px,.9vw,16px)!important;font-weight:700!important;}
.ofqd-hero-click-field input::placeholder{color:#6c7485!important;opacity:1!important;}
.ofqd-hero-search-icon{display:none!important;}
.ofqd-hero-location,.ofqd-hero-submit{height:100%!important;border:0!important;margin:0!important;cursor:pointer!important;background:transparent!important;}
.ofqd-hero-location{font-size:clamp(10px,.85vw,15px)!important;font-weight:950!important;color:#071b55!important;text-align:left!important;padding-left:18%!important;white-space:nowrap!important;}
.ofqd-hero-submit{font-size:0!important;color:transparent!important;}
@media (max-width:900px){.ofqd-hero-click-search{display:none!important;}}
@media (min-width:901px){.ofqd-mobile-search{display:none!important;}}


/* =========================================================
   OFQD V51 - Footer Premium Compact PC
   Objectif : footer moins massif, signature Maryne conservée.
   ========================================================= */
.ofqd-footer-premium-compact{
  margin-top:24px!important;
  padding:20px 0 14px!important;
  background:#071b55!important;
  color:#fff!important;
  border-top:1px solid rgba(255,255,255,.18)!important;
}
.ofqd-footer-premium-compact .ofqd-footer-mainline{
  display:grid!important;
  grid-template-columns:220px minmax(360px,1fr) 220px!important;
  align-items:center!important;
  gap:28px!important;
  min-height:68px!important;
  padding:0 28px!important;
}
.ofqd-footer-premium-compact .ofqd-footer-brand{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.ofqd-footer-premium-compact .ofqd-footer-brand img{
  height:52px!important;
  width:auto!important;
  max-width:185px!important;
  object-fit:contain!important;
  filter:none!important;
}
.ofqd-footer-premium-compact .ofqd-maryne-line{
  margin:0!important;
  text-align:center!important;
  color:#fff!important;
  line-height:1.18!important;
  font-weight:800!important;
}
.ofqd-footer-premium-compact .ofqd-maryne-intro{
  display:block!important;
  font-size:14px!important;
  color:#fff!important;
  margin-bottom:2px!important;
}
.ofqd-footer-premium-compact .ofqd-maryne-line em{
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-style:normal!important;
  color:#ffc857!important;
  font-size:26px!important;
  line-height:1!important;
  white-space:nowrap!important;
  letter-spacing:.2px!important;
}
.ofqd-footer-premium-compact .ofqd-maryne-heart{
  color:#ff3d3d!important;
  font-size:22px!important;
  background:none!important;
  vertical-align:middle!important;
}
.ofqd-footer-premium-compact .ofqd-footer-copy{
  text-align:right!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
.ofqd-footer-premium-compact .ofqd-legal-footer-links{
  margin-top:14px!important;
  padding:0 28px!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:0!important;
  color:rgba(255,255,255,.82)!important;
}
.ofqd-footer-premium-compact .ofqd-legal-footer-links a{
  color:rgba(255,255,255,.86)!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1.3!important;
  padding:0 10px!important;
  border-right:1px solid rgba(255,255,255,.28)!important;
}
.ofqd-footer-premium-compact .ofqd-legal-footer-links a:last-child{border-right:0!important;}
.ofqd-footer-premium-compact .ofqd-legal-footer-links a:hover{color:#ffc857!important;}

/* Rodyn flottant plus discret sur PC, sans toucher au comportement */
@media (min-width:901px){
  html body .rodyn-launcher{
    min-height:58px!important;
    padding:7px 16px 7px 7px!important;
    gap:10px!important;
    right:18px!important;
    bottom:18px!important;
    box-shadow:0 14px 34px rgba(7,27,85,.28)!important;
  }
  html body .rodyn-launcher-avatar{
    width:48px!important;
    height:48px!important;
  }
  html body .rodyn-launcher-text strong{font-size:17px!important;line-height:1!important;}
  html body .rodyn-launcher-text small{font-size:11px!important;line-height:1.05!important;}
  html body .rodyn-launcher-arrow{font-size:28px!important;}
}

@media (max-width:900px){
  .ofqd-footer-premium-compact{padding:20px 0!important;}
  .ofqd-footer-premium-compact .ofqd-footer-mainline{
    display:flex!important;
    flex-direction:column!important;
    text-align:center!important;
    gap:10px!important;
    padding:0 18px!important;
  }
  .ofqd-footer-premium-compact .ofqd-footer-brand{justify-content:center!important;}
  .ofqd-footer-premium-compact .ofqd-footer-brand img{height:48px!important;max-width:170px!important;}
  .ofqd-footer-premium-compact .ofqd-footer-copy{text-align:center!important;font-size:12px!important;}
  .ofqd-footer-premium-compact .ofqd-maryne-line em{white-space:normal!important;font-size:22px!important;}
  .ofqd-footer-premium-compact .ofqd-legal-footer-links{gap:8px!important;padding:0 18px!important;}
  .ofqd-footer-premium-compact .ofqd-legal-footer-links a{border-right:0!important;padding:3px 6px!important;}
}

/* ===== V241.225 bundled from assets/css/rodyn-ia.css ===== */
/* =====================================================
   OFQD - Rodyn V2 propre
   Design officiel : Rodyn, sans cercle blanc CSS, sans Rodyn IA
   ===================================================== */
:root {
  --rodyn-blue: #0b5fa5;
  --rodyn-blue-2: #1684d8;
  --rodyn-deep: #071b55;
  --rodyn-yellow: #ffd34d;
  --rodyn-ink: #12203b;
  --rodyn-muted: #667085;
  --rodyn-border: rgba(7, 27, 85, 0.14);
  --rodyn-soft: #f4f9ff;
  --rodyn-shadow: 0 24px 80px rgba(7, 27, 85, 0.24);
}

.rodyn-launcher,
.rodyn-panel,
.rodyn-panel * { box-sizing: border-box; }

.rodyn-launcher {
  position: fixed;
  right: max(18px, env(safe-area-inset-right));
  bottom: max(18px, env(safe-area-inset-bottom));
  z-index: 9998;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 58px;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 999px;
  padding: 8px 16px 8px 8px;
  color: #fff;
  background: linear-gradient(135deg, var(--rodyn-deep), var(--rodyn-blue), var(--rodyn-blue-2));
  box-shadow: 0 14px 36px rgba(7, 27, 85, 0.28);
  cursor: pointer;
  font-family: inherit;
  font-weight: 850;
  letter-spacing: -0.01em;
  transform: translateZ(0);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.rodyn-launcher:hover { transform: translateY(-2px); filter: brightness(1.04); }
.rodyn-launcher:active { transform: translateY(0); }
.rodyn-launcher.is-open { opacity: .94; }

.rodyn-avatar {
  display: inline-grid;
  place-items: center;
  overflow: hidden;
  flex: 0 0 auto;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
  border: 0;
}

.rodyn-avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center 28%;
  transform: scale(1.22);
  transform-origin: center center;
}

.rodyn-header-avatar {
  width: 62px;
  height: 62px;
  border-radius: 20px;
}

.rodyn-header-avatar img {
  transform: scale(1.28);
  object-position: center 25%;
}

.rodyn-launcher-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
}

.rodyn-launcher-avatar img {
  transform: scale(1.35);
  object-position: center 22%;
}

.rodyn-avatar-fallback { font-size: 25px; line-height: 1; }

.rodyn-launcher-text { display: grid; text-align: left; line-height: 1.05; }
.rodyn-launcher-text strong { font-size: 16px; }
.rodyn-launcher-text small { opacity: .9; font-size: 11px; font-weight: 750; }
.rodyn-launcher-arrow { margin-left: 4px; font-size: 30px; line-height: 1; opacity: .95; }

.rodyn-panel {
  position: fixed;
  right: max(18px, env(safe-area-inset-right));
  bottom: calc(max(18px, env(safe-area-inset-bottom)) + 76px);
  z-index: 9999;
  width: min(410px, calc(100vw - 28px));
  height: min(650px, calc(100vh - 112px));
  display: grid;
  grid-template-rows: auto auto auto 1fr auto;
  overflow: hidden;
  border-radius: 28px;
  background: rgba(255, 255, 255, .98);
  border: 1px solid rgba(255,255,255,.72);
  box-shadow: var(--rodyn-shadow);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  opacity: 0;
  transform: translateY(18px) scale(.96);
  pointer-events: none;
  transition: opacity .22s ease, transform .22s ease;
  font-family: inherit;
}

.rodyn-panel.is-open {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

.rodyn-header {
  position: relative;
  padding: 15px 15px 14px;
  color: #fff;
  background:
    radial-gradient(circle at 16% 8%, rgba(255,211,77,.22), transparent 32%),
    linear-gradient(135deg, var(--rodyn-deep), var(--rodyn-blue), var(--rodyn-blue-2));
}

.rodyn-title {
  display: flex;
  align-items: center;
  gap: 13px;
  padding-right: 44px;
}

.rodyn-title strong { display: block; font-size: 20px; letter-spacing: -0.03em; }

.rodyn-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 5px;
  font-size: 12px;
  font-style: normal;
  font-weight: 780;
  opacity: .95;
}

.rodyn-status-dot { width: 8px; height: 8px; border-radius: 50%; background: #75f0a1; box-shadow: 0 0 0 3px rgba(117,240,161,.18); }

.rodyn-close {
  position: absolute;
  top: 14px;
  right: 14px;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 50%;
  background: rgba(255,255,255,.16);
  color: #fff;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}

.rodyn-tools {
  display: flex;
  gap: 8px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--rodyn-border);
  background: rgba(255,255,255,.98);
  overflow-x: auto;
}

.rodyn-tool {
  border: 1px solid var(--rodyn-border);
  background: #fff;
  color: var(--rodyn-deep);
  border-radius: 999px;
  padding: 7px 11px;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
  cursor: pointer;
}


.rodyn-understood {
  display: grid;
  gap: 7px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--rodyn-border);
  background: linear-gradient(180deg, #fff, #f8fbff);
}
.rodyn-understood[hidden] { display: none; }
.rodyn-understood strong {
  color: var(--rodyn-deep);
  font-size: 12px;
  letter-spacing: .01em;
}
.rodyn-chips {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding-bottom: 1px;
}
.rodyn-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid rgba(11,95,165,.18);
  background: #eef7ff;
  color: var(--rodyn-deep);
  border-radius: 999px;
  padding: 6px 9px;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
}
.rodyn-chip b {
  color: var(--rodyn-muted);
  font-size: 14px;
  line-height: 1;
}

.rodyn-body {
  position: relative;
  padding: 16px;
  overflow-y: auto;
  background:
    linear-gradient(180deg, rgba(244,249,255,.96), rgba(255,255,255,.98)),
    radial-gradient(circle at 10% 18%, rgba(255,211,77,.12), transparent 24%);
  scrollbar-width: thin;
}

.rodyn-row { display: flex; gap: 8px; margin: 0 0 12px; align-items: flex-end; }
.rodyn-row.user { justify-content: flex-end; }

.rodyn-message {
  max-width: 86%;
  padding: 12px 14px;
  border-radius: 18px;
  line-height: 1.42;
  font-size: 14px;
  white-space: pre-line;
  animation: rodynMessageIn .18s ease both;
}

.rodyn-row.bot .rodyn-message {
  color: var(--rodyn-ink);
  background: #fff;
  border: 1px solid var(--rodyn-border);
  border-bottom-left-radius: 7px;
  box-shadow: 0 10px 24px rgba(7,27,85,.05);
}

.rodyn-row.user .rodyn-message {
  color: #fff;
  background: linear-gradient(135deg, var(--rodyn-blue), var(--rodyn-blue-2));
  border-bottom-right-radius: 7px;
  box-shadow: 0 8px 18px rgba(31, 121, 189, .18);
}

.rodyn-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin: 10px 0 14px 0;
}

.rodyn-choice {
  min-height: 46px;
  border: 1px solid var(--rodyn-border);
  background: rgba(255,255,255,.96);
  color: var(--rodyn-ink);
  border-radius: 16px;
  padding: 10px 12px;
  text-align: left;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  box-shadow: 0 8px 18px rgba(7, 27, 85, .05);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.rodyn-choice:hover { transform: translateY(-1px); border-color: rgba(31, 121, 189, .45); background: #fff; }

.rodyn-cards { display: grid; gap: 9px; margin: 10px 0 14px 0; }
.rodyn-card,
.rodyn-result {
  border: 1px solid var(--rodyn-border);
  border-radius: 18px;
  padding: 12px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(7, 27, 85, .06);
}
.rodyn-card strong,
.rodyn-result strong { display: block; color: var(--rodyn-deep); margin-bottom: 4px; font-size: 14px; }
.rodyn-card small,
.rodyn-result small { display: block; color: var(--rodyn-muted); line-height: 1.35; }

.rodyn-result-btn {
  margin-top: 10px;
  width: 100%;
  border: 0;
  border-radius: 999px;
  padding: 10px 12px;
  color: #fff;
  background: linear-gradient(135deg, var(--rodyn-blue), var(--rodyn-blue-2));
  font: inherit;
  font-weight: 850;
  cursor: pointer;
}

.rodyn-next-note {
  display: block;
  margin-top: 10px;
  color: var(--rodyn-muted);
  font-size: 12px;
  line-height: 1.35;
}

.rodyn-thinking { display: inline-flex; align-items: center; gap: 8px; color: var(--rodyn-muted); font-size: 13px; }
.rodyn-thinking strong { color: var(--rodyn-deep); font-size: 13px; }
.rodyn-paws { display: inline-flex; gap: 3px; }
.rodyn-paws span { animation: rodynPaw .9s ease-in-out infinite; }
.rodyn-paws span:nth-child(2) { animation-delay: .15s; }
.rodyn-paws span:nth-child(3) { animation-delay: .3s; }

.rodyn-footer {
  display: flex;
  gap: 10px;
  padding: 12px;
  border-top: 1px solid var(--rodyn-border);
  background: rgba(255,255,255,.98);
}

.rodyn-input {
  flex: 1;
  min-width: 0;
  border: 1px solid var(--rodyn-border);
  border-radius: 999px;
  padding: 13px 15px;
  outline: none;
  font: inherit;
  background: #fff;
}
.rodyn-input:focus { border-color: rgba(31,121,189,.62); box-shadow: 0 0 0 4px rgba(31,121,189,.12); }

.rodyn-send {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  border: 0;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(135deg, var(--rodyn-deep), var(--rodyn-blue-2));
  font-size: 22px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(7, 27, 85, .22);
}

@keyframes rodynMessageIn {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes rodynPaw {
  0%, 100% { transform: translateY(0); opacity: .35; }
  50% { transform: translateY(-3px); opacity: 1; }
}

@media (max-width: 560px) {
  .rodyn-panel {
    right: 10px;
    left: 10px;
    bottom: 86px;
    width: auto;
    height: min(650px, calc(100vh - 104px));
    border-radius: 24px;
  }
  .rodyn-launcher {
    right: 12px;
    bottom: 12px;
  }
  .rodyn-actions { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 390px) {
  .rodyn-actions { grid-template-columns: 1fr; }
  .rodyn-title strong { font-size: 18px; }
  .rodyn-header-avatar { width: 56px; height: 56px; }
}

/* =====================================================
   OFQD - Correctif V3002
   Rodyn reste visible quand on réduit la fenêtre
   ===================================================== */
.rodyn-launcher{
  position:fixed!important;
  right:clamp(10px,2vw,18px)!important;
  bottom:clamp(10px,2vh,18px)!important;
  z-index:2147483000!important;
  visibility:visible!important;
  opacity:1!important;
  max-width:calc(100vw - 20px)!important;
  white-space:nowrap!important;
}
.rodyn-panel{
  position:fixed!important;
  right:clamp(10px,2vw,18px)!important;
  bottom:calc(clamp(10px,2vh,18px) + 76px)!important;
  z-index:2147483001!important;
  max-width:calc(100vw - 20px)!important;
  max-height:calc(100vh - 96px)!important;
}
@media (max-width: 700px), (max-height: 620px){
  .rodyn-launcher{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    min-height:58px!important;
    padding:5px!important;
    border-radius:999px!important;
    gap:0!important;
    overflow:hidden!important;
  }
  .rodyn-launcher-text,
  .rodyn-launcher-arrow{
    display:none!important;
  }
  .rodyn-launcher-avatar{
    width:48px!important;
    height:48px!important;
  }
  .rodyn-panel{
    left:10px!important;
    right:10px!important;
    bottom:78px!important;
    width:auto!important;
    height:min(620px, calc(100vh - 92px))!important;
    border-radius:22px!important;
  }
}
@media (max-width: 360px){
  .rodyn-launcher{
    right:8px!important;
    bottom:8px!important;
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    min-height:54px!important;
  }
  .rodyn-launcher-avatar{
    width:44px!important;
    height:44px!important;
  }
  .rodyn-panel{
    left:6px!important;
    right:6px!important;
    bottom:68px!important;
    max-height:calc(100vh - 78px)!important;
  }
}


/* =====================================================
   OFQD - Correctif V3003 FINAL
   Rodyn toujours visible en fenêtre réduite / page test
   ===================================================== */
html body .rodyn-launcher{
  display:inline-flex!important;
  position:fixed!important;
  left:auto!important;
  right:12px!important;
  top:auto!important;
  bottom:12px!important;
  z-index:2147483646!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  transform:none!important;
  max-width:calc(100vw - 24px)!important;
}
html body .rodyn-panel{
  position:fixed!important;
  left:auto!important;
  right:12px!important;
  top:auto!important;
  bottom:82px!important;
  z-index:2147483647!important;
  max-width:calc(100vw - 24px)!important;
  max-height:calc(100vh - 94px)!important;
}
@media (max-width: 980px), (max-height: 760px){
  html body .rodyn-launcher{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    min-height:56px!important;
    padding:4px!important;
    border-radius:999px!important;
    overflow:hidden!important;
  }
  html body .rodyn-launcher-text,
  html body .rodyn-launcher-arrow{display:none!important;}
  html body .rodyn-launcher-avatar{width:48px!important;height:48px!important;}
}
@media (max-width: 520px){
  html body .rodyn-panel{left:8px!important;right:8px!important;width:auto!important;bottom:74px!important;}
}


/* =====================================================
   OFQD - Rodyn V2 Premium 400x600 validé
   Fenêtre plus confortable sur ordinateur, pleine largeur sur mobile
   ===================================================== */
html body .rodyn-panel{
  width:400px!important;
  height:600px!important;
  max-width:calc(100vw - 24px)!important;
  max-height:calc(100vh - 94px)!important;
  border-radius:18px!important;
  grid-template-rows:auto auto auto 1fr auto!important;
}
html body .rodyn-header{
  padding:16px 16px 15px!important;
}
html body .rodyn-title strong{
  font-size:21px!important;
}
html body .rodyn-status{
  font-size:12px!important;
}
html body .rodyn-tools{
  display:grid!important;
  grid-template-columns:1fr 1fr 1fr!important;
  gap:8px!important;
  padding:12px!important;
  overflow:visible!important;
}
html body .rodyn-tool{
  min-height:36px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px 10px!important;
}
html body .rodyn-body{
  padding:16px!important;
}
html body .rodyn-message{
  font-size:14px!important;
  line-height:1.45!important;
}
html body .rodyn-actions{
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
}
html body .rodyn-choice{
  min-height:48px!important;
  border-radius:16px!important;
}
html body .rodyn-footer{
  padding:13px!important;
}
html body .rodyn-input{
  min-height:48px!important;
  border-radius:18px!important;
}
html body .rodyn-send{
  width:48px!important;
  height:48px!important;
  flex-basis:48px!important;
}
@media (min-width:981px) and (min-height:761px){
  html body .rodyn-launcher{
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:58px!important;
    padding:8px 16px 8px 8px!important;
    overflow:visible!important;
  }
  html body .rodyn-launcher-text,
  html body .rodyn-launcher-arrow{display:grid!important;}
}
@media (max-width:700px){
  html body .rodyn-panel{
    left:8px!important;
    right:8px!important;
    width:auto!important;
    height:calc(100vh - 90px)!important;
    max-height:calc(100vh - 90px)!important;
    bottom:74px!important;
    border-radius:20px!important;
  }
  html body .rodyn-tools{grid-template-columns:1fr 1fr!important;}
}

/* =====================================================
   OFQD - Rodyn V3 Senior / Grand écran
   Fenêtre très lisible + bouton bas droite agrandi
   ===================================================== */
html body .rodyn-panel{
  width:clamp(520px, 34vw, 680px)!important;
  height:clamp(720px, 82vh, 860px)!important;
  right:24px!important;
  bottom:104px!important;
  border-radius:30px!important;
  box-shadow:0 34px 110px rgba(7,27,85,.34)!important;
  border:1px solid rgba(255,255,255,.86)!important;
  grid-template-rows:auto auto auto 1fr auto!important;
}
html body .rodyn-header{
  padding:22px 24px 20px!important;
}
html body .rodyn-header-avatar{
  width:86px!important;
  height:86px!important;
  border-radius:24px!important;
}
html body .rodyn-title{gap:18px!important;padding-right:92px!important;}
html body .rodyn-title strong{font-size:30px!important;line-height:1!important;}
html body .rodyn-status{font-size:17px!important;line-height:1.25!important;margin-top:8px!important;}
html body .rodyn-status-dot{width:11px!important;height:11px!important;}
html body .rodyn-close{
  width:54px!important;height:54px!important;top:22px!important;right:22px!important;
  font-size:34px!important;border-width:2px!important;
}
html body .rodyn-tools{
  display:grid!important;
  grid-template-columns:1fr 1fr 1fr!important;
  gap:14px!important;
  padding:18px 22px!important;
}
html body .rodyn-tool{
  min-height:48px!important;
  font-size:17px!important;
  border-radius:999px!important;
  padding:10px 14px!important;
}
html body .rodyn-understood{padding:14px 22px!important;}
html body .rodyn-body{
  padding:22px!important;
  font-size:18px!important;
}
html body .rodyn-row{margin-bottom:18px!important;}
html body .rodyn-message{
  font-size:19px!important;
  line-height:1.55!important;
  padding:20px 22px!important;
  border-radius:24px!important;
  max-width:92%!important;
}
html body .rodyn-actions{
  grid-template-columns:1fr 1fr!important;
  gap:16px!important;
  margin:18px 0 22px!important;
}
html body .rodyn-choice{
  min-height:66px!important;
  border-radius:20px!important;
  padding:16px 20px!important;
  font-size:18px!important;
  box-shadow:0 12px 28px rgba(7,27,85,.08)!important;
}
html body .rodyn-footer{
  padding:20px 22px!important;
  gap:16px!important;
}
html body .rodyn-input{
  min-height:66px!important;
  font-size:18px!important;
  border-radius:24px!important;
  padding:18px 22px!important;
}
html body .rodyn-send{
  width:66px!important;
  height:66px!important;
  flex-basis:66px!important;
  font-size:30px!important;
}
html body .rodyn-launcher{
  right:24px!important;
  bottom:24px!important;
  min-height:76px!important;
  padding:10px 22px 10px 10px!important;
  gap:14px!important;
  border-radius:999px!important;
  box-shadow:0 20px 52px rgba(7,27,85,.34)!important;
}
html body .rodyn-launcher-avatar{
  width:64px!important;
  height:64px!important;
}
html body .rodyn-launcher-text{display:grid!important;}
html body .rodyn-launcher-text strong{font-size:22px!important;}
html body .rodyn-launcher-text small{font-size:14px!important;}
html body .rodyn-launcher-arrow{display:block!important;font-size:38px!important;}

@media (min-width:1900px){
  html body .rodyn-panel{width:620px!important;height:min(860px, calc(100vh - 130px))!important;}
}
@media (min-width:2500px){
  html body .rodyn-panel{width:680px!important;height:min(900px, calc(100vh - 140px))!important;}
}
@media (max-width:1500px){
  html body .rodyn-panel{width:500px!important;height:min(720px, calc(100vh - 110px))!important;}
  html body .rodyn-message{font-size:17px!important;}
  html body .rodyn-choice{font-size:16px!important;min-height:58px!important;}
}
@media (max-width:980px), (max-height:760px){
  html body .rodyn-panel{
    left:12px!important;right:12px!important;width:auto!important;
    height:calc(100vh - 104px)!important;bottom:84px!important;border-radius:24px!important;
  }
  html body .rodyn-launcher{
    width:auto!important;height:66px!important;min-width:66px!important;min-height:66px!important;
    padding:8px 16px 8px 8px!important;overflow:visible!important;
  }
  html body .rodyn-launcher-avatar{width:54px!important;height:54px!important;}
  html body .rodyn-launcher-text{display:grid!important;}
  html body .rodyn-launcher-arrow{display:block!important;}
  html body .rodyn-tools{grid-template-columns:1fr 1fr!important;}
}
@media (max-width:560px){
  html body .rodyn-panel{left:8px!important;right:8px!important;bottom:78px!important;height:calc(100vh - 92px)!important;}
  html body .rodyn-header{padding:16px!important;}
  html body .rodyn-header-avatar{width:64px!important;height:64px!important;}
  html body .rodyn-title strong{font-size:23px!important;}
  html body .rodyn-status{font-size:13px!important;}
  html body .rodyn-message{font-size:16px!important;padding:15px!important;}
  html body .rodyn-choice{font-size:15px!important;min-height:52px!important;}
  html body .rodyn-input{font-size:16px!important;min-height:54px!important;}
  html body .rodyn-send{width:54px!important;height:54px!important;flex-basis:54px!important;}
  html body .rodyn-launcher-text, html body .rodyn-launcher-arrow{display:none!important;}
  html body .rodyn-launcher{width:66px!important;height:66px!important;padding:6px!important;}
}


/* =====================================================
   OFQD - Rodyn V4 Intention : cartes lisibles
   ===================================================== */
html body .rodyn-smart-card strong{font-size:20px!important;}
html body .rodyn-smart-card small{font-size:17px!important;line-height:1.5!important;}

/* =====================================================
   OFQD - Rodyn V5.2 Engine : réponse commune naturelle
   ===================================================== */
html body .rodyn-action-cards{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  margin:14px 0 18px!important;
}
html body .rodyn-action-card{
  border:1px solid rgba(7,27,85,.14)!important;
  background:#fff!important;
  border-radius:18px!important;
  padding:14px 14px!important;
  text-align:left!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  cursor:pointer!important;
  box-shadow:0 10px 24px rgba(7,27,85,.07)!important;
  font-family:inherit!important;
  color:#071b55!important;
}
html body .rodyn-action-card:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(31,121,189,.45)!important;
}
html body .rodyn-action-icon{
  font-size:26px!important;
  width:34px!important;
  flex:0 0 34px!important;
  text-align:center!important;
}
html body .rodyn-action-text strong{
  display:block!important;
  font-size:17px!important;
  line-height:1.15!important;
  font-weight:900!important;
}
html body .rodyn-action-text small{
  display:block!important;
  margin-top:4px!important;
  font-size:13px!important;
  line-height:1.25!important;
  color:#5b6684!important;
  font-weight:650!important;
}
@media (max-width:560px){
  html body .rodyn-action-cards{grid-template-columns:1fr!important;gap:10px!important;}
  html body .rodyn-action-card{padding:12px!important;min-height:62px!important;}
  html body .rodyn-action-text strong{font-size:16px!important;}
  html body .rodyn-action-text small{font-size:12px!important;}
}


/* =====================================================
   OFQD - Rodyn V8 Guide conversationnel
   Moins de badges techniques, plus de cartes naturelles
   ===================================================== */
html body .rodyn-understood{
  display:none!important;
}
html body .rodyn-action-card{
  min-height:76px!important;
}
html body .rodyn-result-btn{
  font-size:17px!important;
  min-height:48px!important;
}
html body .rodyn-smart-card{
  border-left:6px solid var(--rodyn-blue-2)!important;
}
html body .rodyn-message{
  white-space:pre-line!important;
}
@media (max-width:560px){
  html body .rodyn-understood{display:none!important;}
  html body .rodyn-action-card{min-height:58px!important;}
  html body .rodyn-result-btn{font-size:15px!important;min-height:42px!important;}
}


/* OFQD V10.1 - Assistant pro / sécurité */
.rodyn-pro-draft small { display: block; margin-top: 6px; }
.rodyn-draft-text {
  margin: 10px 0;
  padding: 10px 12px;
  border-radius: 16px;
  background: rgba(11, 95, 165, .06);
  border: 1px solid rgba(11, 95, 165, .12);
  color: var(--rodyn-ink);
  font-size: 13px;
  line-height: 1.45;
  white-space: pre-line;
}
.rodyn-tool[data-tool="back"] { background: #f7fbff; }


/* V65 - Correction Rodyn : suppression des barres horizontales internes */
.rodyn-panel,
.rodyn-body,
.rodyn-tools,
.rodyn-understood,
.rodyn-chips,
.rodyn-actions{
  max-width:100%!important;
  box-sizing:border-box!important;
}
.rodyn-panel{overflow:hidden!important;}
.rodyn-body{overflow-x:hidden!important;}
.rodyn-tools{
  overflow-x:hidden!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  padding:10px 14px!important;
}
.rodyn-tool{
  flex:0 1 auto!important;
  max-width:100%!important;
  white-space:nowrap!important;
}
.rodyn-chips{
  overflow-x:hidden!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
}
.rodyn-chip{
  min-width:0!important;
  max-width:100%!important;
  width:auto!important;
  height:auto!important;
  aspect-ratio:auto!important;
  border-radius:999px!important;
  padding:8px 11px!important;
  white-space:normal!important;
  text-align:left!important;
  line-height:1.2!important;
}
.rodyn-chip span{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media (max-width:640px){
  .rodyn-panel{left:10px!important;right:10px!important;width:auto!important;max-width:none!important;}
  .rodyn-tools{display:grid!important;grid-template-columns:1fr 1fr!important;}
  .rodyn-tool{width:100%!important;text-align:center!important;}
}

/* =====================================================
   OFQD V67 - Rodyn sans barres noires
   Les zones horizontales restent utilisables sans afficher
   les scrollbars natives du navigateur.
   ===================================================== */
html body .rodyn-tools,
html body .rodyn-chips,
html body .rodyn-panel,
html body .rodyn-body,
html body .rodyn-understood{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
html body .rodyn-tools::-webkit-scrollbar,
html body .rodyn-chips::-webkit-scrollbar,
html body .rodyn-panel::-webkit-scrollbar,
html body .rodyn-body::-webkit-scrollbar,
html body .rodyn-understood::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
html body .rodyn-tools{
  overflow-x:hidden!important;
  overflow-y:hidden!important;
}
html body .rodyn-chips{
  overflow-x:hidden!important;
  overflow-y:hidden!important;
  flex-wrap:nowrap!important;
}
html body .rodyn-chip{
  flex:0 0 auto!important;
}
html body .rodyn-body{
  overflow-x:hidden!important;
}
html body .rodyn-panel{
  overflow:hidden!important;
}
@media (max-width:700px){
  html body .rodyn-tools{
    grid-template-columns:1fr 1fr!important;
  }
}

/* =====================================================
   OFQD V68 - Rodyn suppression définitive des barres
   Cible les scrollbars natives Chrome/Edge sur toutes les
   zones internes et remplace les lignes horizontales par
   un retour à la ligne propre des boutons.
   ===================================================== */
html body .rodyn-panel,
html body .rodyn-panel *,
html body .rodyn-v11-suggestions,
html body .rodyn-v11-suggestions *{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
html body .rodyn-panel::-webkit-scrollbar,
html body .rodyn-panel *::-webkit-scrollbar,
html body .rodyn-v11-suggestions::-webkit-scrollbar,
html body .rodyn-v11-suggestions *::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
  background:transparent!important;
}
html body .rodyn-panel::-webkit-scrollbar-thumb,
html body .rodyn-panel *::-webkit-scrollbar-thumb{
  background:transparent!important;
}

/* Ligne d’outils : plus de scrollbar visible */
html body .rodyn-tools{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  padding:14px 18px!important;
}
html body .rodyn-tool{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}

/* Suggestions V11 : plus de bande noire/grise */
html body .rodyn-v11-suggestions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  padding:10px 18px!important;
  border-bottom:1px solid rgba(7,27,85,.10)!important;
}
html body .rodyn-v11-suggestions button,
html body .rodyn-v11-suggestions .rodyn-chip,
html body .rodyn-v11-suggestions > *{
  flex:0 0 auto!important;
  max-width:100%!important;
}

/* Zone "compris" / chips : retour propre, aucune barre */
html body .rodyn-understood{
  overflow-x:hidden!important;
  overflow-y:visible!important;
}
html body .rodyn-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  gap:8px!important;
}
html body .rodyn-chip{
  flex:0 0 auto!important;
  max-width:100%!important;
  white-space:nowrap!important;
}

/* Sécurité globale Rodyn */
html body .rodyn-panel{
  overflow:hidden!important;
}
html body .rodyn-body{
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
@media (max-width:700px){
  html body .rodyn-tools,
  html body .rodyn-v11-suggestions{
    flex-wrap:wrap!important;
    gap:8px!important;
  }
  html body .rodyn-tool{
    flex:1 1 calc(50% - 8px)!important;
    text-align:center!important;
  }
}

/* =====================================================
   OFQD V69 - Rodyn carousel moderne
   Une seule ligne, flèches rondes, aucune barre noire.
   ===================================================== */
html body .rodyn-panel{
  grid-template-rows:auto auto auto auto 1fr auto!important;
}
html body .rodyn-body{
  min-height:0!important;
}
html body .rodyn-carousel-wrap{
  position:relative!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 42px!important;
  align-items:center!important;
  gap:8px!important;
  padding:10px 12px!important;
  background:rgba(255,255,255,.98)!important;
  border-bottom:1px solid rgba(7,27,85,.10)!important;
  overflow:hidden!important;
}
html body .rodyn-carousel-suggestions{
  padding-top:8px!important;
  padding-bottom:8px!important;
  background:linear-gradient(180deg,#fff,#f8fbff)!important;
}
html body .rodyn-carousel-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-behavior:smooth!important;
  scroll-snap-type:x mandatory!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
html body .rodyn-carousel-track::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
  background:transparent!important;
}
html body .rodyn-carousel-track > *{
  flex:0 0 auto!important;
  scroll-snap-align:start!important;
}
html body .rodyn-carousel-arrow{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  border:1px solid rgba(7,27,85,.12)!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(135deg,#ffffff,#eef6ff)!important;
  color:#071b55!important;
  font-family:inherit!important;
  font-size:30px!important;
  line-height:1!important;
  font-weight:900!important;
  cursor:pointer!important;
  box-shadow:0 8px 20px rgba(7,27,85,.10)!important;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease!important;
}
html body .rodyn-carousel-arrow:hover:not(:disabled){
  transform:translateY(-1px)!important;
  box-shadow:0 12px 26px rgba(7,27,85,.16)!important;
}
html body .rodyn-carousel-arrow:disabled{
  opacity:.28!important;
  cursor:default!important;
  box-shadow:none!important;
}
html body .rodyn-tool,
html body .rodyn-v11-suggestions button{
  white-space:nowrap!important;
  min-width:max-content!important;
}
html body .rodyn-tools,
html body .rodyn-v11-suggestions{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  flex-wrap:nowrap!important;
}
@media (max-width:700px){
  html body .rodyn-carousel-wrap{
    grid-template-columns:36px minmax(0,1fr) 36px!important;
    gap:6px!important;
    padding:8px!important;
  }
  html body .rodyn-carousel-arrow{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    font-size:26px!important;
  }
  html body .rodyn-tool,
  html body .rodyn-v11-suggestions button{
    font-size:14px!important;
    min-height:40px!important;
  }
}

/* =====================================================
   OFQD FIX MOBILE RODYN - PC inchangé
   - Supprime le bottom-sheet mobile bloqué
   - Rodyn fermé au chargement
   - Ouverture uniquement par le bouton rond
   ===================================================== */
@media (max-width:900px){
  html body .rodyn-launcher{
    position:fixed!important;
    right:18px!important;
    bottom:18px!important;
    left:auto!important;
    top:auto!important;
    width:64px!important;
    height:64px!important;
    min-width:64px!important;
    min-height:64px!important;
    padding:5px!important;
    border-radius:999px!important;
    z-index:2147483001!important;
  }
  html body .rodyn-launcher-text,
  html body .rodyn-launcher-arrow{display:none!important;}
  html body .rodyn-launcher-avatar{width:54px!important;height:54px!important;}

  html body .rodyn-panel{
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    bottom:92px!important;
    top:auto!important;
    width:auto!important;
    max-width:none!important;
    height:min(80dvh, 620px)!important;
    max-height:min(80dvh, 620px)!important;
    min-height:0!important;
    border-radius:26px!important;
    display:grid!important;
    grid-template-rows:auto auto auto 1fr auto!important;
    overflow:hidden!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(18px) scale(.96)!important;
    transition:opacity .18s ease, transform .18s ease, visibility .18s ease!important;
    background:rgba(255,255,255,.98)!important;
    z-index:2147483647!important;
  }
  html body .rodyn-panel.is-open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
  }
  html body .rodyn-panel:before{display:none!important;content:none!important;}
  html body .rodyn-header{
    padding:14px 52px 12px 14px!important;
    border-bottom:1px solid rgba(7,27,85,.10)!important;
  }
  html body .rodyn-header-avatar{width:48px!important;height:48px!important;}
  html body .rodyn-title strong{font-size:1.35rem!important;}
  html body .rodyn-status{font-size:.82rem!important;}
  html body .rodyn-close{
    top:12px!important;
    right:12px!important;
    width:38px!important;
    height:38px!important;
  }
  html body .rodyn-body{
    min-height:0!important;
    overflow-y:auto!important;
  }
  html body .rodyn-footer{
    padding:10px!important;
  }
  html body .rodyn-carousel-arrow{
    position:static!important;
    background:linear-gradient(135deg,#ffffff,#eef6ff)!important;
    color:#071b55!important;
    border:1px solid rgba(7,27,85,.12)!important;
    box-shadow:0 8px 18px rgba(7,27,85,.10)!important;
  }
}


/* =====================================================
   OFQD V17.3.7 — flèches Rodyn propres et uniques
   - remplace les glyphes typographiques parfois doublés
   - conserve une seule flèche centrée dans chaque bouton
   - empêche tout rognage horizontal
   ===================================================== */
html body .rodyn-carousel-wrap{
  overflow:visible!important;
}
html body .rodyn-carousel-track{
  min-width:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
html body .rodyn-carousel-arrow{
  position:relative!important;
  overflow:hidden!important;
  padding:0!important;
  font-size:0!important;
  line-height:0!important;
  flex:0 0 auto!important;
}
html body .rodyn-carousel-arrow svg{
  display:block!important;
  width:19px!important;
  height:19px!important;
  margin:auto!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.5!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  pointer-events:none!important;
}
@media (max-width:700px){
  html body .rodyn-carousel-wrap{
    overflow:hidden!important;
  }
  html body .rodyn-carousel-arrow svg{
    width:17px!important;
    height:17px!important;
  }
}

/* ===== V241.225 bundled from assets/css/rodyn-v11-pack1.css ===== */
/* OFQD V11 Pack 1 - compléments Rodyn */
.rodyn-v11-suggestions {
  display: flex;
  gap: 8px;
  padding: 8px 12px;
  overflow-x: auto;
  border-bottom: 1px solid rgba(7,27,85,.12);
  background: #f8fbff;
}
.rodyn-v11-suggestions button,
.rodyn-v11-run,
.rodyn-v11-actions button {
  border: 1px solid rgba(11,95,165,.18);
  border-radius: 999px;
  background: #fff;
  color: #071b55;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  padding: 7px 10px;
  cursor: pointer;
  white-space: nowrap;
}
.rodyn-v11-run {
  margin: 6px 8px 8px;
  background: linear-gradient(135deg, #071b55, #0b5fa5, #1684d8);
  color: #fff;
  border-color: transparent;
  box-shadow: 0 8px 20px rgba(7,27,85,.18);
}
.rodyn-v11-run:disabled { opacity: .68; cursor: wait; }
.rodyn-v11-message { padding: 8px 12px; }
.rodyn-v11-card {
  border: 1px solid rgba(11,95,165,.16);
  border-radius: 18px;
  padding: 12px;
  background: linear-gradient(180deg, #fff, #f5faff);
  box-shadow: 0 10px 24px rgba(7,27,85,.08);
  color: #12203b;
}
.rodyn-v11-card strong { color: #071b55; }
.rodyn-v11-card p { margin: 7px 0; line-height: 1.35; }
.rodyn-v11-meta,
.rodyn-v11-chips,
.rodyn-v11-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.rodyn-v11-meta span,
.rodyn-v11-chips em {
  display: inline-flex;
  border-radius: 999px;
  padding: 5px 8px;
  background: rgba(11,95,165,.08);
  font-size: 11px;
  font-style: normal;
}
.rodyn-v11-error { border-color: rgba(190,18,60,.25); background: #fff7f7; }
