/*
 * OFQD V254 — Accueil uniquement
 * Uniformisation Premium des icônes et renforcement du Q orange officiel.
 * Aucun impact sur Pexels, Unsplash, cache, anti-doublons ou données.
 */
body.ofqd-home-page{
  --home-navy:#071B55;
  --home-blue:#1E3A8A;
  --home-blue-live:#2563EB;
  --home-sky:#7DB8FF;
  --home-orange:#FF8A00;
  --home-red:#FF3D3D;
  --home-line:rgba(30,58,138,.12);
  --home-shadow:0 10px 28px rgba(7,27,85,.10);
  --home-shadow-hover:0 16px 34px rgba(7,27,85,.15);
}

/* Q orange : signature visuelle officielle sur l'accueil. */
body.ofqd-home-page .ofqd-q-orange,
body.ofqd-home-page .ofqd-hero-v24-title em,
body.ofqd-home-page .ofqd-hero-v24-title .q-orange{
  color:var(--home-orange)!important;
  font-style:normal!important;
  font-weight:800!important;
  text-shadow:0 3px 14px rgba(255,138,0,.20)!important;
}
body.ofqd-home-page .ofqd-hero-v24-title .question,
body.ofqd-home-page .ofqd-hero-v24-title .ofqd-question-mark{
  color:var(--home-red)!important;
}
body.ofqd-home-page .ofqd-v22-name em{
  color:var(--home-orange)!important;
  text-shadow:0 2px 10px rgba(255,138,0,.25)!important;
}

/* Tous les pictogrammes de l'accueil utilisent la même géométrie. */
body.ofqd-home-page .ofqd-cat-icon svg,
body.ofqd-home-page .ofqd-envie-card__icon svg,
body.ofqd-home-page .ofqd-discovery-card__icon svg,
body.ofqd-home-page .ofqd-smart-discovery-icon svg,
body.ofqd-home-page .ofqd-home-pro-controls svg,
body.ofqd-home-page .ofqd-favorite-btn svg,
body.ofqd-home-page .ofqd-map-toolbar svg,
body.ofqd-home-page .ofqd-v11p2 svg{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke;
}

/* Catégories du hero : icônes plus nettes, alignement constant. */
body.ofqd-home-page .ofqd-cat-v24{
  min-height:54px!important;
  border:1px solid var(--home-line)!important;
  border-radius:14px!important;
  box-shadow:0 5px 16px rgba(7,27,85,.07)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
body.ofqd-home-page .ofqd-cat-v24:hover,
body.ofqd-home-page .ofqd-cat-v24:focus-visible{
  transform:translateY(-2px)!important;
  border-color:rgba(37,99,235,.28)!important;
  box-shadow:var(--home-shadow)!important;
}
body.ofqd-home-page .ofqd-cat-icon{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:11px!important;
  display:grid!important;
  place-items:center!important;
}
body.ofqd-home-page .ofqd-cat-icon svg{width:19px!important;height:19px!important}

/* Blocs "À découvrir" et envies : même famille d'icônes et même rythme. */
body.ofqd-home-page .ofqd-envie-card,
body.ofqd-home-page .ofqd-discovery-card,
body.ofqd-home-page .ofqd-smart-discovery-card{
  border:1px solid var(--home-line)!important;
  border-radius:14px!important;
  box-shadow:0 5px 16px rgba(7,27,85,.065)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
body.ofqd-home-page .ofqd-envie-card:hover,
body.ofqd-home-page .ofqd-discovery-card:hover,
body.ofqd-home-page .ofqd-smart-discovery-card:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(37,99,235,.24)!important;
  box-shadow:var(--home-shadow)!important;
}
body.ofqd-home-page .ofqd-envie-card__icon,
body.ofqd-home-page .ofqd-discovery-card__icon,
body.ofqd-home-page .ofqd-smart-discovery-icon{
  border-radius:11px!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)!important;
}
body.ofqd-home-page .ofqd-envie-card__arrow{
  width:28px!important;height:28px!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;
  color:var(--home-blue-live)!important;background:#fff!important;
  border:1px solid rgba(37,99,235,.16)!important;
}

/* Barre de recherche : loupe officielle, bouton rond et focus propre. */
body.ofqd-home-page .ofqd-hero-v24-search{
  border:1px solid rgba(30,58,138,.13)!important;
  box-shadow:0 12px 32px rgba(7,27,85,.12)!important;
}
body.ofqd-home-page .ofqd-hero-v24-submit{
  width:44px!important;height:44px!important;min-width:44px!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,var(--home-blue-live),#0877FF)!important;
  box-shadow:0 9px 20px rgba(37,99,235,.28)!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
body.ofqd-home-page .ofqd-hero-v24-submit:hover{transform:translateY(-1px) scale(1.03)!important;box-shadow:0 12px 24px rgba(37,99,235,.36)!important}
body.ofqd-home-page .ofqd-hero-v24-submit svg{fill:none!important;stroke:#fff!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important}

/* Favoris et flèches de la colonne Pros : mêmes contours et même taille. */
body.ofqd-home-page .ofqd-favorite-btn,
body.ofqd-home-page .ofqd-home-pro-controls button{
  border-radius:50%!important;
  border:1px solid rgba(30,58,138,.14)!important;
  background:#fff!important;
  color:var(--home-navy)!important;
  box-shadow:0 4px 12px rgba(7,27,85,.08)!important;
  transition:transform .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
body.ofqd-home-page .ofqd-favorite-btn:hover,
body.ofqd-home-page .ofqd-home-pro-controls button:hover{
  transform:translateY(-1px)!important;
  color:var(--home-blue-live)!important;
  border-color:rgba(37,99,235,.28)!important;
  box-shadow:0 7px 16px rgba(7,27,85,.12)!important;
}
body.ofqd-home-page .ofqd-favorite-btn.is-active,
body.ofqd-home-page .ofqd-favorite-btn[aria-pressed="true"]{color:var(--home-red)!important}

/* Les cartes restent compactes, avec une finition plus cohérente. */
body.ofqd-home-page .ofqd-event-card-v31{
  border:1px solid rgba(30,58,138,.10)!important;
  box-shadow:0 6px 17px rgba(7,27,85,.085)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
body.ofqd-home-page .ofqd-event-card-v31:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(37,99,235,.22)!important;
  box-shadow:var(--home-shadow-hover)!important;
}

/* Carte des sorties : icônes et contrôles alignés sur la charte. */
body.ofqd-home-page .ofqd-map-toolbar button,
body.ofqd-home-page .ofqd-map-toolbar a,
body.ofqd-home-page .ofqd-map-filter-scroll button{
  border-radius:999px!important;
  border:1px solid rgba(30,58,138,.13)!important;
  font-weight:700!important;
}
body.ofqd-home-page .leaflet-control-zoom a{
  color:var(--home-blue)!important;
  font-weight:700!important;
}

@media(max-width:860px){
  body.ofqd-home-page .ofqd-cat-v24{min-height:48px!important;border-radius:12px!important}
  body.ofqd-home-page .ofqd-cat-icon{width:30px!important;height:30px!important;min-width:30px!important}
  body.ofqd-home-page .ofqd-cat-icon svg{width:17px!important;height:17px!important}
  body.ofqd-home-page .ofqd-hero-v24-submit{width:40px!important;height:40px!important;min-width:40px!important}
}

@media(prefers-reduced-motion:reduce){
  body.ofqd-home-page .ofqd-cat-v24,
  body.ofqd-home-page .ofqd-envie-card,
  body.ofqd-home-page .ofqd-discovery-card,
  body.ofqd-home-page .ofqd-event-card-v31,
  body.ofqd-home-page .ofqd-favorite-btn{transition:none!important}
}

/* OFQD V255 — Finition Premium de l'accueil uniquement. */
body.ofqd-home-page .ofqd-home-main{
  padding-bottom:28px!important;
}

/* Hiérarchie des titres et liens d'action. */
body.ofqd-home-page .ofqd-envies__heading,
body.ofqd-home-page .ofqd-dynamic-title,
body.ofqd-home-page .ofqd-v11p2-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:12px!important;
}
body.ofqd-home-page .ofqd-envies-title,
body.ofqd-home-page .ofqd-dynamic-title-text,
body.ofqd-home-page .ofqd-v11p2-head h2{
  color:var(--home-navy)!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
}
body.ofqd-home-page .ofqd-envies__all,
body.ofqd-home-page .ofqd-all-events-link,
body.ofqd-home-page .ofqd-v11-link,
body.ofqd-home-page .ofqd-home-pro-all{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:34px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  color:var(--home-blue-live)!important;
  background:rgba(37,99,235,.07)!important;
  border:1px solid rgba(37,99,235,.13)!important;
  font-weight:750!important;
  text-decoration:none!important;
  transition:background .18s ease,transform .18s ease,border-color .18s ease!important;
}
body.ofqd-home-page .ofqd-envies__all:hover,
body.ofqd-home-page .ofqd-all-events-link:hover,
body.ofqd-home-page .ofqd-v11-link:hover,
body.ofqd-home-page .ofqd-home-pro-all:hover{
  transform:translateY(-1px)!important;
  background:rgba(37,99,235,.12)!important;
  border-color:rgba(37,99,235,.24)!important;
}

/* Colonne Artisans & Commerçants : plus nette, sans changer son fonctionnement. */
body.ofqd-home-page .ofqd-home-pro-layout{
  gap:14px!important;
  align-items:stretch!important;
}
body.ofqd-home-page .ofqd-home-pro-rail{
  border:1px solid rgba(30,58,138,.11)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 9px 24px rgba(7,27,85,.09)!important;
  overflow:hidden!important;
}
body.ofqd-home-page .ofqd-home-pro-head{
  min-height:48px!important;
  padding:10px 12px!important;
  border-bottom:1px solid rgba(30,58,138,.09)!important;
  background:linear-gradient(180deg,#fff,rgba(247,250,255,.95))!important;
}
body.ofqd-home-page .ofqd-home-pro-progress{
  height:3px!important;
  border-radius:999px!important;
  background:rgba(37,99,235,.12)!important;
  overflow:hidden!important;
}
body.ofqd-home-page .ofqd-home-pro-progress::before{
  background:linear-gradient(90deg,var(--home-blue-live),var(--home-orange))!important;
}

/* Cartes d'événements : lecture plus nette, sans augmenter leur hauteur. */
body.ofqd-home-page .ofqd-event-card-v31{
  overflow:hidden!important;
  background:#fff!important;
}
body.ofqd-home-page .ofqd-event-card-media{
  position:relative!important;
  background:#eef3fb!important;
}
body.ofqd-home-page .ofqd-event-card-media img{
  transition:transform .28s ease,filter .28s ease!important;
}
body.ofqd-home-page .ofqd-event-card-v31:hover .ofqd-event-card-media img{
  transform:scale(1.035)!important;
  filter:saturate(1.04) contrast(1.02)!important;
}
body.ofqd-home-page .ofqd-event-card-body{
  padding:8px 9px 7px!important;
}
body.ofqd-home-page .ofqd-event-card-body h3,
body.ofqd-home-page .ofqd-event-card-body .title{
  color:var(--home-navy)!important;
  font-weight:750!important;
  letter-spacing:-.012em!important;
}
body.ofqd-home-page .ofqd-event-date-line,
body.ofqd-home-page .ofqd-event-place-line,
body.ofqd-home-page .ofqd-event-footer-line{
  color:#53627d!important;
}
body.ofqd-home-page .ofqd-photo-disclaimer{
  right:5px!important;
  bottom:5px!important;
  padding:3px 6px!important;
  border-radius:999px!important;
  background:rgba(3,13,42,.78)!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:700!important;
  backdrop-filter:blur(4px)!important;
}

/* Carte des sorties : meilleure intégration et contrôles cohérents. */
body.ofqd-home-page .ofqd-v11-map-card{
  border:1px solid rgba(30,58,138,.11)!important;
  border-radius:18px!important;
  box-shadow:0 12px 30px rgba(7,27,85,.10)!important;
  overflow:hidden!important;
}
body.ofqd-home-page .ofqd-v11p2-head{
  padding:18px 20px!important;
  background:linear-gradient(135deg,var(--home-navy),#123d91)!important;
  color:#fff!important;
}
body.ofqd-home-page .ofqd-v11p2-head h2,
body.ofqd-home-page .ofqd-v11p2-head p{
  color:#fff!important;
}
body.ofqd-home-page .ofqd-home-commune-search input{
  border:1px solid rgba(30,58,138,.14)!important;
  border-radius:12px!important;
  min-height:44px!important;
  box-shadow:inset 0 1px 2px rgba(7,27,85,.04)!important;
}
body.ofqd-home-page .ofqd-home-commune-search button{
  border-radius:12px!important;
  min-height:44px!important;
  padding:0 18px!important;
  font-weight:800!important;
  box-shadow:0 8px 18px rgba(37,99,235,.24)!important;
}
body.ofqd-home-page .ofqd-v11-kpis{
  border:1px solid rgba(30,58,138,.10)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 10px 24px rgba(7,27,85,.10)!important;
}

@media(max-width:860px){
  body.ofqd-home-page .ofqd-envies__heading,
  body.ofqd-home-page .ofqd-dynamic-title,
  body.ofqd-home-page .ofqd-v11p2-head{align-items:flex-start!important}
  body.ofqd-home-page .ofqd-envies__all,
  body.ofqd-home-page .ofqd-all-events-link,
  body.ofqd-home-page .ofqd-v11-link,
  body.ofqd-home-page .ofqd-home-pro-all{min-height:30px!important;padding:0 9px!important;font-size:12px!important}
  body.ofqd-home-page .ofqd-home-pro-layout{gap:10px!important}
  body.ofqd-home-page .ofqd-v11p2-head{padding:15px!important}
}
