/* ============================================================
   HECHES COUVERTURE — CORRECTIONS V5
   Contrastes + carte illustrée interactive locale (sans tuiles externes)
   Chargé après toutes les autres feuilles pour fiabiliser l'affichage.
   ============================================================ */
:root{
  --hc-red:#8B0D18;
  --hc-red-deep:#650A12;
  --hc-gold:#D4AF37;
  --hc-gold-deep:#B8860B;
  --hc-white:#FFFFFF;
  --hc-cream:#FFF9E8;
  --hc-red-soft:rgba(101,10,18,.08);
  --hc-gold-soft:rgba(212,175,55,.16);
  --hc-gold-line:rgba(184,134,11,.48);
}

/* 1) Bloc "Définir les travaux utiles" : jamais de blanc sur blanc */
body.heches-site .photo-story-v4 .seo-rich-panel{
  background:var(--hc-white)!important;
  color:var(--hc-red-deep)!important;
  border:2px solid var(--hc-gold)!important;
  border-left:9px solid var(--hc-red)!important;
  box-shadow:0 28px 65px rgba(101,10,18,.14)!important;
}
body.heches-site .photo-story-v4 .seo-rich-panel h2,
body.heches-site .photo-story-v4 .seo-rich-panel h3,
body.heches-site .photo-story-v4 .seo-rich-panel h4,
body.heches-site .photo-story-v4 .seo-rich-panel p,
body.heches-site .photo-story-v4 .seo-rich-panel li{
  color:var(--hc-red-deep)!important;
}
body.heches-site .photo-story-v4 .seo-rich-panel h4{color:var(--hc-red)!important}
body.heches-site .photo-story-v4 .seo-rich-panel .icon-list li{
  background:var(--hc-cream)!important;
  border:1px solid rgba(212,175,55,.42)!important;
  border-radius:12px!important;
  padding:10px 12px!important;
  margin:8px 0!important;
}
body.heches-site .photo-story-v4 .seo-rich-panel .icon-list i{color:var(--hc-gold-deep)!important}
body.heches-site .photo-story-v4 .seo-rich-panel .theme-btn-heches{
  background:var(--hc-red-deep)!important;color:var(--hc-white)!important;border-color:var(--hc-red-deep)!important
}
body.heches-site .photo-story-v4 .seo-rich-panel .theme-btn-heches:hover{
  background:var(--hc-gold)!important;color:var(--hc-red-deep)!important;border-color:var(--hc-gold)!important
}

/* 2) Les 4 liens/boutons du bloc projet : contraste fort partout */
body.heches-site .project-path-v4 .feature-card a{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:42px!important;margin-top:10px!important;padding:10px 15px!important;
  border:2px solid var(--hc-red-deep)!important;border-radius:999px!important;
  background:var(--hc-red-deep)!important;color:var(--hc-white)!important;
  font-weight:900!important;text-decoration:none!important;line-height:1.2!important;
  box-shadow:0 8px 20px rgba(101,10,18,.16)!important;
  transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease!important;
}
body.heches-site .project-path-v4 .feature-card a:after{
  content:"\f061";font-family:FontAwesome;margin-left:8px;color:var(--hc-gold)!important;font-size:12px
}
body.heches-site .project-path-v4 .feature-card a:hover,
body.heches-site .project-path-v4 .feature-card a:focus{
  background:var(--hc-gold)!important;color:var(--hc-red-deep)!important;border-color:var(--hc-gold)!important;
  transform:translateY(-2px)!important
}
body.heches-site .project-path-v4 .feature-card a:hover:after,
body.heches-site .project-path-v4 .feature-card a:focus:after{color:var(--hc-red-deep)!important}

/* 3) Carte illustrée interactive du 92 — intégrée au site, sans image ni fond externe */
body.heches-site .heches-map-shell{
  background:var(--hc-white)!important;border:2px solid var(--hc-gold)!important;
  box-shadow:0 24px 55px rgba(101,10,18,.16)!important
}
body.heches-site .heches-area-map.heches-drawn-map-v5{
  position:relative!important;height:430px!important;overflow:hidden!important;
  background:
    radial-gradient(circle at 18% 20%,rgba(212,175,55,.18),transparent 31%),
    radial-gradient(circle at 84% 78%,rgba(139,13,24,.08),transparent 34%),
    linear-gradient(145deg,#fffdf7,#fff8e5)!important;
  isolation:isolate!important
}
body.heches-site .hc-map-svg{display:block;width:100%;height:100%;overflow:visible}
body.heches-site .hc-dept-shape{
  fill:rgba(212,175,55,.13);stroke:var(--hc-red-deep);stroke-width:5;
  stroke-linejoin:round;filter:drop-shadow(0 18px 22px rgba(101,10,18,.12))
}
body.heches-site .hc-dept-inner{fill:none;stroke:rgba(184,134,11,.34);stroke-width:1.5;stroke-dasharray:6 7}
body.heches-site .hc-seine-draw{fill:none;stroke:rgba(139,13,24,.18);stroke-width:16;stroke-linecap:round}
body.heches-site .hc-seine-draw-core{fill:none;stroke:rgba(212,175,55,.52);stroke-width:3;stroke-linecap:round;stroke-dasharray:8 8}
body.heches-site .hc-map-route{stroke:rgba(184,134,11,.44);stroke-width:1.7;stroke-dasharray:5 7;animation:hcRouteDash 12s linear infinite}
body.heches-site .hc-map-route.is-near{stroke:rgba(139,13,24,.28)}
body.heches-site .hc-map-watermark{font-size:118px;font-weight:900;fill:rgba(101,10,18,.055);letter-spacing:-6px;pointer-events:none}
body.heches-site .hc-map-caption{font-size:12px;font-weight:900;fill:var(--hc-red-deep);letter-spacing:1.6px;text-transform:uppercase;pointer-events:none}
body.heches-site .hc-map-city{cursor:pointer;outline:none;transform-box:fill-box;transform-origin:center;transition:transform .22s ease}
body.heches-site .hc-map-city:hover,
body.heches-site .hc-map-city:focus,
body.heches-site .hc-map-city.is-active{transform:scale(1.14)}
body.heches-site .hc-city-ring{fill:var(--hc-white);stroke:var(--hc-red-deep);stroke-width:3}
body.heches-site .hc-city-dot{fill:var(--hc-gold);stroke:var(--hc-gold-deep);stroke-width:1}
body.heches-site .hc-map-city.is-main .hc-city-ring{fill:var(--hc-red-deep);stroke:var(--hc-gold);stroke-width:4}
body.heches-site .hc-map-city.is-main .hc-city-dot{fill:var(--hc-gold);stroke:var(--hc-white)}
body.heches-site .hc-map-city.is-active .hc-city-ring{fill:var(--hc-red);stroke:var(--hc-gold)}
body.heches-site .hc-city-pulse{fill:none;stroke:var(--hc-gold);stroke-width:2;opacity:.75;transform-origin:center;animation:hcMapPulse 2.1s ease-out infinite}
body.heches-site .hc-city-label{font-size:10px;font-weight:900;fill:var(--hc-red-deep);paint-order:stroke;stroke:var(--hc-white);stroke-width:4px;stroke-linejoin:round;pointer-events:none}
body.heches-site .hc-city-label.is-main{font-size:11.5px;fill:var(--hc-red);stroke-width:5px}
body.heches-site .hc-map-mini-house .roof{fill:var(--hc-red-deep);stroke:var(--hc-gold);stroke-width:2}
body.heches-site .hc-map-mini-house .wall{fill:var(--hc-white);stroke:var(--hc-red-deep);stroke-width:2}
body.heches-site .hc-map-info{
  position:absolute;left:18px;bottom:18px;z-index:3;max-width:270px;
  background:rgba(255,255,255,.96);border:2px solid var(--hc-gold);border-left:7px solid var(--hc-red);
  border-radius:8px 22px 8px 22px;padding:12px 15px;box-shadow:0 14px 34px rgba(101,10,18,.16);
  pointer-events:none
}
body.heches-site .hc-map-info strong{display:block;color:var(--hc-red-deep)!important;font-size:15px;line-height:1.2;margin-bottom:3px}
body.heches-site .hc-map-info span{display:block;color:var(--hc-red)!important;font-size:11px;font-weight:800;line-height:1.35}
body.heches-site .heches-map-fallback{color:var(--hc-red-deep)!important}
body.heches-site .heches-map-controls{background:var(--hc-white)!important}
body.heches-site .map-city-button{color:var(--hc-red-deep)!important;background:var(--hc-white)!important}
body.heches-site .map-city-button:hover,
body.heches-site .map-city-button.is-active{background:var(--hc-red)!important;color:var(--hc-white)!important}
body.heches-site .map-city-button.is-primary{background:var(--hc-gold)!important;color:var(--hc-red-deep)!important}

/* 4) Bloc devis/partenaires : texte coloré sur fond blanc sur toutes les pages */
body.heches-site .intervention-map-v4 .bottom-partner-card{
  background:var(--hc-white)!important;color:var(--hc-red-deep)!important;
  border:2px solid var(--hc-gold)!important;border-left:8px solid var(--hc-red)!important;
  box-shadow:0 24px 55px rgba(101,10,18,.14)!important
}
body.heches-site .intervention-map-v4 .bottom-partner-card h3{color:var(--hc-red-deep)!important}
body.heches-site .intervention-map-v4 .bottom-partner-card p,
body.heches-site .intervention-map-v4 .bottom-partner-card li,
body.heches-site .intervention-map-v4 .bottom-partner-card .icon-list li{
  color:var(--hc-red-deep)!important
}
body.heches-site .intervention-map-v4 .bottom-partner-card .icon-list li{
  background:var(--hc-cream)!important;border:1px solid rgba(212,175,55,.40)!important;
  border-radius:12px!important;padding:9px 11px!important;margin:7px 0!important
}
body.heches-site .intervention-map-v4 .bottom-partner-card .icon-list i{color:var(--hc-gold-deep)!important}
body.heches-site .intervention-map-v4 .bottom-partner-card .theme-btn-heches{
  background:var(--hc-red-deep)!important;color:var(--hc-white)!important;border-color:var(--hc-red-deep)!important
}
body.heches-site .intervention-map-v4 .bottom-partner-card .theme-btn-heches:hover{
  background:var(--hc-gold)!important;color:var(--hc-red-deep)!important;border-color:var(--hc-gold)!important
}

@keyframes hcRouteDash{to{stroke-dashoffset:-110}}
@keyframes hcMapPulse{0%{transform:scale(.55);opacity:.78}75%,100%{transform:scale(2.05);opacity:0}}

@media(max-width:991px){
  body.heches-site .heches-area-map.heches-drawn-map-v5{height:390px!important}
}
@media(max-width:767px){
  body.heches-site .heches-area-map.heches-drawn-map-v5{height:350px!important}
  body.heches-site .hc-city-label{font-size:8.5px}
  body.heches-site .hc-city-label.is-main{font-size:9.5px}
  body.heches-site .hc-map-info{left:10px;right:10px;bottom:10px;max-width:none;padding:10px 12px}
  body.heches-site .hc-map-watermark{font-size:92px}
}
@media(max-width:480px){
  body.heches-site .heches-area-map.heches-drawn-map-v5{height:320px!important}
  body.heches-site .hc-city-label{display:none}
  body.heches-site .hc-city-label.is-main{display:block}
}
@media(prefers-reduced-motion:reduce){
  body.heches-site .hc-city-pulse,body.heches-site .hc-map-route{animation:none!important}
}
