/* CF Couverture Sologne — corrections V7
   Requested contrast, header icon, gallery and footer consistency fixes. */
:root{
  --cf-v7-orange:#f37400;
  --cf-v7-dark:#303030;
  --cf-v7-ink:#333333;
  --cf-v7-white:#ffffff;
}

/* HEADER TOP — three icons always readable */
body.cf-v6 .header-v6 .top-pill{
  color:var(--cf-v7-white)!important;
}
body.cf-v6 .header-v6 .top-pill > i{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  margin:0!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:var(--cf-v7-white)!important;
  color:var(--cf-v7-orange)!important;
  box-shadow:none!important;
  transition:background .25s ease,color .25s ease,transform .25s ease!important;
}
body.cf-v6 .header-v6 .top-pill:hover > i,
body.cf-v6 .header-v6 .top-pill:focus > i{
  background:var(--cf-v7-orange)!important;
  color:var(--cf-v7-dark)!important;
  transform:scale(1.04)!important;
}
body.cf-v6 .header-v6 .top-devis{
  background:var(--cf-v7-orange)!important;
  border-color:var(--cf-v7-orange)!important;
  color:var(--cf-v7-dark)!important;
}
body.cf-v6 .header-v6 .top-devis span{
  color:var(--cf-v7-dark)!important;
}
body.cf-v6 .header-v6 .top-devis:hover,
body.cf-v6 .header-v6 .top-devis:focus{
  background:var(--cf-v7-white)!important;
  border-color:var(--cf-v7-orange)!important;
  color:var(--cf-v7-dark)!important;
  box-shadow:none!important;
}
body.cf-v6 .header-v6 .top-devis:hover span,
body.cf-v6 .header-v6 .top-devis:focus span{
  color:var(--cf-v7-dark)!important;
}

/* LOGO — remove the white plaque / shadow requested */
body.cf-v6 .header-middle-v6 .navbar-brand{
  background:transparent!important;
  box-shadow:none!important;
}

/* MAIN CTA IN NAV — dark grey writing */
body.cf-v6 .devis-nav > a,
body.cf-v6 .devis-nav > a:hover,
body.cf-v6 .devis-nav > a:focus,
body.cf-v6 .devis-nav.active > a,
body.cf-v6 .devis-nav.current-menu-item > a{
  color:var(--cf-v7-dark)!important;
  text-shadow:none!important;
}

/* DESKTOP + MOBILE SUBMENUS — white/default, dark grey active/hover + orange text */
body.cf-v6 .modern-nav .sub-menu,
body.cf-v6 .vdo-mobile-panel .sub-menu{
  background:var(--cf-v7-white)!important;
}
body.cf-v6 .modern-nav .sub-menu li > a,
body.cf-v6 .vdo-mobile-panel .sub-menu li > a{
 background: #161616 !important;
  color:var(--cf-v7-dark)!important;
  text-shadow:none!important;
}
body.cf-v6 .modern-nav .sub-menu li > a:hover,
body.cf-v6 .modern-nav .sub-menu li > a:focus,
body.cf-v6 .modern-nav .sub-menu li.current-menu-item > a,
body.cf-v6 .modern-nav .sub-menu li.active > a,
body.cf-v6 .vdo-mobile-panel .sub-menu li > a:hover,
body.cf-v6 .vdo-mobile-panel .sub-menu li > a:focus,
body.cf-v6 .vdo-mobile-panel .sub-menu li.current-menu-item > a,
body.cf-v6 .vdo-mobile-panel .sub-menu li.active > a{
  background:var(--cf-v7-dark)!important;
  color:var(--cf-v7-orange)!important;
  border-color:rgba(255,255,255,.08)!important;
  text-shadow:none!important;
}

/* SERVICES — requested kicker text in dark grey */
body.cf-v6 .service-slide-content > span{
  color:var(--cf-v7-dark)!important;
  text-shadow:none!important;
}

/* GALLERY — uniform landscape cards, real spacing, never overlapping */
body.cf-v6 .cf-gallery-wall{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  gap:24px!important;
  align-items:stretch!important;
  margin-top:38px!important;
}
body.cf-v6 .cf-gallery-card,
body.cf-v6 .cf-gallery-card:nth-child(n){
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  min-width:0!important;
  aspect-ratio:4 / 3!important;
  min-height:0!important;
  margin:0!important;
  border-radius:18px!important;
  transform:none!important;
  box-shadow:0 10px 26px rgba(25,25,25,.11)!important;
}
body.cf-v6 .cf-gallery-card img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center center!important;
}
body.cf-v6 .cf-gallery-card:hover,
body.cf-v6 .cf-gallery-card.is-live{
  transform:translateY(-4px)!important;
  box-shadow:0 18px 38px rgba(25,25,25,.16)!important;
}
body.cf-v6 .cf-gallery-card:hover img,
body.cf-v6 .cf-gallery-card.is-live img{
  transform:scale(1.025)!important;
}

/* Footer service links — hover orange background + dark text, arrow remains a clean arrow */
body.cf-v6 .footer-v6 .footer-service-list a.cf-footer-link-v6{
  border-radius:9px!important;
  padding:6px 8px!important;
  color:#e7e7e7!important;
}
body.cf-v6 .footer-v6 .footer-service-list a.cf-footer-link-v6:hover,
body.cf-v6 .footer-v6 .footer-service-list a.cf-footer-link-v6:focus{
  background:var(--cf-v7-orange)!important;
  color:var(--cf-v7-dark)!important;
  padding-left:10px!important;
}
body.cf-v6 .footer-v6 .footer-service-list a.cf-footer-link-v6 > i,
body.cf-v6 .footer-v6 .footer-service-list a.cf-footer-link-v6:hover > i,
body.cf-v6 .footer-v6 .footer-service-list a.cf-footer-link-v6:focus > i{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
}

/* Footer contact cards — no disappearing map/phone/mail icons on hover */
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:hover,
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:focus{
  background:var(--cf-v7-orange)!important;
  border-color:var(--cf-v7-orange)!important;
}
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:hover strong,
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:hover em,
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:focus strong,
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:focus em{
  color:var(--cf-v7-dark)!important;
}
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6 > span{
  background:var(--cf-v7-orange)!important;
  color:var(--cf-v7-dark)!important;
  box-shadow:none!important;
}
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6 > span i{
  color:var(--cf-v7-dark)!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:hover > span,
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:focus > span{
  background:var(--cf-v7-white)!important;
  color:var(--cf-v7-orange)!important;
}
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:hover > span i,
body.cf-v6 .footer-v6 .footer-contact-card.cf-footer-link-v6:focus > span i{
  color:var(--cf-v7-orange)!important;
}

/* Other footer links on orange bottom strip keep dark text */
body.cf-v6 .footer-bottom-v6 a.cf-footer-link-v6:hover,
body.cf-v6 .footer-bottom-v6 a.cf-footer-link-v6:focus{
  color:var(--cf-v7-dark)!important;
}

@media (max-width:1199px){
  body.cf-v6 .cf-gallery-wall{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}
}
@media (max-width:767px){
  body.cf-v6 .cf-gallery-wall{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  body.cf-v6 .cf-gallery-card,body.cf-v6 .cf-gallery-card:nth-child(n){aspect-ratio:4 / 3!important}
}
@media (max-width:480px){
  body.cf-v6 .cf-gallery-wall{grid-template-columns:1fr!important;gap:16px!important}
}

/* Final specificity guardrails against legacy !important rules */
body.cf-v6 .header-v6 .header-top-area .top-pill:not(.top-devis){
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.22)!important;
  box-shadow:none!important;
  color:#fff!important;
}
body.cf-v6 .header-v6 .header-top-area .top-pill:not(.top-devis) span{color:#fff!important}
body.cf-v6 .header-v6 .header-top-area .top-pill:not(.top-devis):hover,
body.cf-v6 .header-v6 .header-top-area .top-pill:not(.top-devis):focus{
  background:#fff!important;
  border-color:#fff!important;
  color:var(--cf-v7-dark)!important;
}
body.cf-v6 .header-v6 .header-top-area .top-pill:not(.top-devis):hover span,
body.cf-v6 .header-v6 .header-top-area .top-pill:not(.top-devis):focus span{color:var(--cf-v7-dark)!important}

body.cf-v6 .main-menu.modern-nav nav>ul>li.devis-nav>a,
body.cf-v6 .main-menu.modern-nav nav>ul>li.devis-nav>a:hover,
body.cf-v6 .main-menu.modern-nav nav>ul>li.devis-nav>a:focus,
body.cf-v6 .main-menu.modern-nav nav>ul>li.devis-nav.active>a,
body.cf-v6 .main-menu.modern-nav nav>ul>li.devis-nav.current-menu-item>a,
body.cf-v6 .vdo-mobile-panel>ul>li.devis-nav>a,
body.cf-v6 .vdo-mobile-panel>ul>li.devis-nav>a:hover,
body.cf-v6 .vdo-mobile-panel>ul>li.devis-nav>a:focus,
body.cf-v6 .vdo-mobile-panel>ul>li.devis-nav.active>a,
body.cf-v6 .vdo-mobile-panel>ul>li.devis-nav.current-menu-item>a{
  background:var(--cf-v7-orange)!important;
  color:var(--cf-v7-dark)!important;
  border-color:var(--cf-v7-orange)!important;
  text-shadow:none!important;
}

body.cf-v6 .header-style-two .header-wrapper .header-navigation-area .main-menu.modern-nav nav>ul>li ul.sub-menu li>a{
  background:#fff!important;
  color:var(--cf-v7-dark)!important;
  border-bottom:1px solid rgba(48,48,48,.09)!important;
}
body.cf-v6 .header-style-two .header-wrapper .header-navigation-area .main-menu.modern-nav nav>ul>li ul.sub-menu li>a:hover,
body.cf-v6 .header-style-two .header-wrapper .header-navigation-area .main-menu.modern-nav nav>ul>li ul.sub-menu li>a:focus,
body.cf-v6 .header-style-two .header-wrapper .header-navigation-area .main-menu.modern-nav nav>ul>li ul.sub-menu li.active>a,
body.cf-v6 .header-style-two .header-wrapper .header-navigation-area .main-menu.modern-nav nav>ul>li ul.sub-menu li.current-menu-item>a{
  background:var(--cf-v7-dark)!important;
  color:var(--cf-v7-orange)!important;
}

body.cf-v6 .footer-v6 a.cf-footer-link-v6:hover,
body.cf-v6 .footer-v6 a.cf-footer-link-v6:focus{color:var(--cf-v7-dark)!important}
