/* Experts Romands — consolidation autonome 3.5.0 */
:root{
  --er350-navy:#08253d;
  --er350-blue:#0d4f7d;
  --er350-blue-2:#18769b;
  --er350-cyan:#2a9ab7;
  --er350-gold:#e8c66c;
  --er350-ink:#10283b;
  --er350-muted:#66798a;
  --er350-line:#dce7ee;
  --er350-paper:#f5f8fa;
  --er350-shadow:0 20px 48px rgba(8,37,61,.12);
}

/* Bleu intérieur plus nuancé. */
body:not(.er-home-page) #masthead .ast-primary-header-bar,
body:not(.er-home-page) #ast-desktop-header .ast-primary-header-bar,
body:not(.er-home-page) #ast-mobile-header .ast-primary-header-bar{
  border:0!important;
  background:linear-gradient(118deg,#08253d 0%,#0c4f7c 55%,#147c9e 100%)!important;
  box-shadow:0 10px 28px rgba(5,31,51,.18)!important;
}
body:not(.er-home-page) #masthead .main-header-menu>.menu-item>.menu-link,
body:not(.er-home-page) #masthead .ast-button-wrap .menu-toggle,
body:not(.er-home-page) #masthead .ast-mobile-menu-trigger-minimal{color:#fff!important}
body:not(.er-home-page) #masthead .site-logo-img img,
body:not(.er-home-page) #masthead .custom-logo-link img{filter:brightness(0) invert(1)!important}

/* Accueil : le hero englobe réellement le menu. */
body.er-home-page,
body.er-home-page #page,
body.er-home-page .site,
body.er-home-page #content,
body.er-home-page .site-content,
body.er-home-page #primary,
body.er-home-page #main,
body.er-home-page article.page,
body.er-home-page .entry-content{
  margin-top:0!important;
  padding-top:0!important;
}
body.er-home-page #masthead,
body.er-home-page header#masthead{
  position:absolute!important;
  inset:0 0 auto 0!important;
  z-index:9999!important;
  background:transparent!important;
}
body.er-home-page .er-home-premium,
body.er-home-page .er-home-hero{
  margin-top:0!important;
  transform:none!important;
}
body.er-home-page .site-content>.ast-container{padding-top:0!important}

/* Hero intérieur : pleine largeur, y compris sur mobile. */
.er-category-hero,
.er-location-hero,
.er-blog-hero{
  width:100vw!important;
  max-width:none!important;
  margin-right:calc(50% - 50vw)!important;
  margin-left:calc(50% - 50vw)!important;
  overflow:hidden!important;
}
@media(max-width:767px){
  .er-category-hero,
  .er-location-hero,
  .er-blog-hero{
    min-height:390px!important;
    padding:48px 0!important;
    border-radius:0!important;
  }
  .er-category-hero__layout,
  .er-location-hero__layout{width:100%!important;padding-inline:20px!important}
  .er-category-hero__panel,
  .er-location-hero__panel{display:none!important}
}

/* Bloc vedettes unique, sans kicker ni description parasite. */
.er-featured{
  width:min(1240px,calc(100% - 40px))!important;
  margin:0 auto!important;
  padding:54px 0 62px!important;
}
.er-category-hero+.er-featured,
.er-location-hero+.er-featured{margin-top:0!important}
.er-featured__head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;margin-bottom:24px!important}
.er-featured__head h2{margin:0!important;color:var(--er350-ink)!important;font-size:clamp(28px,3vw,42px)!important;font-weight:900!important;letter-spacing:-.035em!important}
.er-featured__nav{display:flex!important;gap:8px!important}
.er-featured__nav button{
  display:grid!important;width:44px!important;height:44px!important;place-items:center!important;
  border:1px solid var(--er350-line)!important;border-radius:50%!important;background:#fff!important;
  color:var(--er350-blue)!important;font-size:25px!important;line-height:1!important;box-shadow:0 8px 20px rgba(8,37,61,.08)!important
}
.er-featured__nav button:hover{border-color:var(--er350-blue-2)!important;background:var(--er350-blue-2)!important;color:#fff!important}
.er-featured__track{
  display:flex!important;grid-template-columns:none!important;gap:18px!important;overflow-x:auto!important;overflow-y:hidden!important;
  padding:4px 3px 18px!important;scroll-snap-type:x mandatory!important;scrollbar-width:thin!important;overscroll-behavior-inline:contain!important
}
.er-featured__track>.er-card{flex:0 0 300px!important;min-width:300px!important;scroll-snap-align:start!important}
.er-featured__empty{padding:28px!important;border:1px dashed #b9ccd8!important;border-radius:18px!important;background:var(--er350-paper)!important;color:var(--er350-muted)!important;text-align:center!important}

/* Carte unique. */
.er-card{
  position:relative!important;display:flex!important;min-width:0!important;flex-direction:column!important;
  overflow:hidden!important;border:1px solid var(--er350-line)!important;border-radius:20px!important;background:#fff!important;
  box-shadow:0 14px 34px rgba(8,37,61,.09)!important;transition:transform .22s ease,box-shadow .22s ease!important
}
.er-card:hover{transform:translateY(-4px)!important;box-shadow:var(--er350-shadow)!important}
.er-card__media{
  position:relative!important;display:block!important;min-height:250px!important;overflow:hidden!important;background-color:#dbe8ef!important;
  background-image:linear-gradient(180deg,rgba(5,26,43,.03),rgba(5,26,43,.84)),var(--er-card-image)!important;
  background-position:center!important;background-size:cover!important;text-decoration:none!important
}
.er-card__logo{
  position:absolute!important;top:15px!important;left:15px!important;z-index:3!important;display:grid!important;width:58px!important;height:58px!important;
  place-items:center!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:15px!important;
  background:#fff!important;color:var(--er350-blue)!important;box-shadow:0 9px 25px rgba(0,0,0,.18)!important;font-size:19px!important;font-weight:900!important
}
.er-card__logo img{width:100%!important;height:100%!important;padding:7px!important;object-fit:contain!important}
.er-card__overlay{
  position:absolute!important;right:15px!important;bottom:15px!important;left:15px!important;z-index:2!important;display:block!important;
  min-width:0!important;color:#fff!important
}
.er-card__company{
  display:block!important;max-width:100%!important;margin:0 0 8px!important;overflow:hidden!important;color:#fff!important;
  font-size:14px!important;font-weight:800!important;line-height:1.2!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  text-shadow:0 2px 12px rgba(0,0,0,.5)!important
}
.er-card__meta-row{display:flex!important;min-width:0!important;align-items:center!important;gap:7px!important;flex-wrap:nowrap!important}
.er-card__meta-item{
  display:flex!important;min-width:0!important;max-width:56%!important;align-items:center!important;gap:6px!important;
  padding:7px 9px!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:999px!important;
  background:rgba(6,31,51,.76)!important;backdrop-filter:blur(10px)!important;color:#fff!important;
  font-size:10.5px!important;line-height:1!important;white-space:nowrap!important
}
.er-card__meta-item--place{max-width:44%!important}
.er-card__meta-item svg{flex:0 0 13px!important;width:13px!important;height:13px!important;fill:currentColor!important}
.er-card__meta-item b{display:block!important;min-width:0!important;overflow:hidden!important;font-weight:800!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.er-card__body{display:block!important;padding:12px!important;background:#fff!important}
.er-card__actions{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(88px,.65fr)!important;gap:8px!important}
.er-card__actions>a,.er-card__actions>button{
  display:flex!important;min-height:42px!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:9px 10px!important;
  border:1px solid var(--er350-line)!important;border-radius:11px!important;text-align:center!important;text-decoration:none!important;
  font-size:11px!important;font-weight:850!important;line-height:1.15!important;white-space:nowrap!important
}
.er-card__contact{overflow:hidden!important;background:#a72735!important;color:#fff!important;text-overflow:ellipsis!important}
.er-card__compare{background:#f2f6f8!important;color:var(--er350-blue)!important;cursor:pointer!important}
.er-card__view{grid-column:1/-1!important;background:linear-gradient(115deg,var(--er350-navy),var(--er350-blue-2))!important;color:#fff!important}
.er-card__title,.er-card__excerpt,.er-card__description,.er-card__badges,.er-card__favorite{display:none!important}

/* Même si un ancien fragment Directorist passe encore, aucune ancienne carte ou
   métadonnée ne doit rester visible. */
.er-premium-archive-page .directorist-archive-contents,
.er-premium-archive-page .directorist-archive-grid-view,
.er-premium-archive-page .directorist-search-form,
.er-premium-archive-page .directorist-advanced-filter,
.er-premium-archive-page .directorist-filter-form,
.er-premium-archive-page .directorist-listing-wrapper:not(.er-premium-archive),
.er-premium-archive-page [class*="directorist-favorit"],
.er-premium-archive-page .directorist-mark-as-favorite,
.er-premium-archive-page [class*="directorist-review"],
.er-premium-archive-page [class*="directorist-rating"],
.er-premium-archive-page .directorist-listing-category,
.er-premium-archive-page .directorist-listing-location{display:none!important}

/* Archives premium : compteur réel et 4/3/2/1 colonnes. */
.er-premium-archive{padding:68px 0 88px!important;background:var(--er350-paper)!important}
.er-premium-archive__head{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:28px!important;margin-bottom:30px!important}
.er-premium-archive__eyebrow{margin:0 0 8px!important;color:var(--er350-blue-2)!important;font-size:11px!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.er-premium-archive__head h2{margin:0!important;color:var(--er350-ink)!important;font-size:clamp(32px,4vw,52px)!important;font-weight:900!important;letter-spacing:-.045em!important}
.er-premium-archive__count{flex:0 0 auto!important;padding:10px 14px!important;border:1px solid #cadbe5!important;border-radius:999px!important;background:#fff!important;color:var(--er350-blue)!important;font-size:12px!important}
.er-premium-archive__grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important}
@media(min-width:1480px){.er-premium-archive>.er-wrap{width:min(1420px,calc(100% - 56px))!important}.er-premium-archive__grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:980px){.er-premium-archive__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){
  .er-featured{width:calc(100% - 28px)!important;padding:34px 0 42px!important}
  .er-featured__head{align-items:flex-start!important}.er-featured__head h2{font-size:29px!important}
  .er-featured__track>.er-card{flex-basis:86vw!important;min-width:278px!important}
  .er-premium-archive{padding:46px 0 64px!important}.er-premium-archive>.er-wrap{width:calc(100% - 28px)!important}
  .er-premium-archive__head{align-items:flex-start!important;flex-direction:column!important;margin-bottom:22px!important}
  .er-premium-archive__grid{grid-template-columns:1fr!important;gap:18px!important}
  .er-card__media{min-height:238px!important}
  .er-card__meta-item{font-size:10px!important}
}

.er-premium-pagination{display:flex!important;justify-content:center!important;margin-top:42px!important}
.er-premium-pagination ul{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:0!important;padding:0!important;list-style:none!important}
.er-premium-pagination a,.er-premium-pagination span{display:grid!important;min-width:42px!important;height:42px!important;place-items:center!important;padding:0 11px!important;border:1px solid var(--er350-line)!important;border-radius:10px!important;background:#fff!important;color:var(--er350-blue)!important;text-decoration:none!important;font-weight:800!important}
.er-premium-pagination .current{border-color:var(--er350-blue)!important;background:var(--er350-blue)!important;color:#fff!important}
.er-premium-archive__empty,.er-blog-empty{padding:34px!important;border:1px dashed #bdd0dc!important;border-radius:18px!important;background:#fff!important;text-align:center!important}

/* Blog vraiment structuré. */
body.er-blog-premium #primary,body.er-blog-premium #main,body.er-blog-premium article.page,body.er-blog-premium .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.er-blog-premium .entry-header{display:none!important}
.er-blog-index{padding:72px 0 94px!important;background:var(--er350-paper)!important}
.er-blog-index__head{max-width:790px!important;margin-bottom:38px!important}
.er-blog-index__head h2{margin:0!important;color:var(--er350-ink)!important;font-size:clamp(34px,4vw,56px)!important;font-weight:900!important;line-height:1.03!important;letter-spacing:-.045em!important}
.er-blog-index__head>p:last-child{color:var(--er350-muted)!important;font-size:17px!important;line-height:1.7!important}
.er-blog-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important}
.er-blog-card{display:flex!important;min-width:0!important;flex-direction:column!important;overflow:hidden!important;border:1px solid var(--er350-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:0 14px 34px rgba(8,37,61,.08)!important}
.er-blog-card__image{display:flex!important;min-height:220px!important;align-items:flex-start!important;padding:16px!important;background-image:linear-gradient(180deg,rgba(4,25,42,.06),rgba(4,25,42,.42)),var(--er-blog-image)!important;background-position:center!important;background-size:cover!important;text-decoration:none!important}
.er-blog-card__image span{padding:7px 10px!important;border-radius:999px!important;background:rgba(6,31,51,.76)!important;color:#fff!important;font-size:10px!important;font-weight:850!important;text-transform:uppercase!important;backdrop-filter:blur(8px)!important}
.er-blog-card__body{display:flex!important;flex:1!important;flex-direction:column!important;padding:22px!important}
.er-blog-card__date{margin:0 0 10px!important;color:var(--er350-blue-2)!important;font-size:11px!important;font-weight:800!important;text-transform:uppercase!important}
.er-blog-card h2{margin:0!important;font-size:22px!important;line-height:1.18!important;letter-spacing:-.025em!important}
.er-blog-card h2 a{color:var(--er350-ink)!important;text-decoration:none!important}
.er-blog-card__body>p:not(.er-blog-card__date){color:var(--er350-muted)!important;font-size:14px!important;line-height:1.65!important}
.er-blog-card__link{margin-top:auto!important;color:var(--er350-blue)!important;font-size:13px!important;font-weight:900!important;text-decoration:none!important}
@media(max-width:980px){.er-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.er-blog-index{padding:46px 0 64px!important}.er-blog-grid{grid-template-columns:1fr!important}}

/* Logo de fiche stable, rendu côté serveur. */
.er-single-logo-server{display:grid!important;width:104px!important;height:104px!important;place-items:center!important;overflow:hidden!important;margin:24px 0 18px!important;border:1px solid var(--er350-line)!important;border-radius:20px!important;background:#fff!important;color:var(--er350-blue)!important;box-shadow:var(--er350-shadow)!important;font-size:34px!important;font-weight:900!important}
.er-single-logo-server img{width:100%!important;height:100%!important;padding:10px!important;object-fit:contain!important}
body.single-at_biz_dir [hidden]{display:none!important}

/* ProDigitalSuisse en fin de page. */
.er-global-prodigital{padding:70px 0!important;background:linear-gradient(120deg,#061f35,#0b4d78 58%,#177e9f)!important;color:#fff!important}
.er-global-prodigital__inner{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(220px,.65fr) auto!important;gap:34px!important;align-items:center!important}
.er-global-prodigital h2{max-width:720px!important;margin:0 0 15px!important;color:#fff!important;font-size:clamp(30px,3.4vw,48px)!important;font-weight:900!important;line-height:1.04!important;letter-spacing:-.04em!important}
.er-global-prodigital p{max-width:730px!important;color:rgba(255,255,255,.78)!important;line-height:1.7!important}
.er-global-prodigital .er-kicker{color:#f0d98f!important}
.er-global-prodigital ul{display:grid!important;gap:9px!important;margin:0!important;padding:0!important;list-style:none!important;color:rgba(255,255,255,.88)!important;font-weight:700!important}
.er-global-prodigital li:before{content:"✓";margin-right:8px;color:var(--er350-gold)!important}
.er-global-prodigital a{display:inline-flex!important;min-height:48px!important;align-items:center!important;justify-content:center!important;padding:12px 18px!important;border-radius:12px!important;background:var(--er350-gold)!important;color:var(--er350-navy)!important;text-decoration:none!important;font-weight:900!important;white-space:nowrap!important}
@media(max-width:980px){.er-global-prodigital__inner{grid-template-columns:1fr!important}.er-global-prodigital a{justify-self:start!important}}

/* Date de promotion. */
.er-offers-promo-deadline{display:flex!important;max-width:980px!important;align-items:center!important;gap:15px!important;margin:24px auto 34px!important;padding:16px 18px!important;border:1px solid #e4ca78!important;border-radius:14px!important;background:#fff8dc!important;color:#5c4a13!important;box-shadow:0 10px 28px rgba(95,75,16,.08)!important}
.er-offers-promo-deadline strong{flex:0 0 auto!important;padding:6px 9px!important;border-radius:999px!important;background:#e8c66c!important;color:#1b2e3d!important;font-size:11px!important;text-transform:uppercase!important}
.er-offers-promo-deadline span{font-size:14px!important;font-weight:700!important;line-height:1.45!important}
@media(max-width:620px){.er-offers-promo-deadline{align-items:flex-start!important;flex-direction:column!important;margin-inline:14px!important}}

/* Accordéons plus premium. */
.er-faq-accordion{overflow:hidden!important;border:1px solid var(--er350-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(8,37,61,.06)!important}
.er-faq-accordion+ .er-faq-accordion{margin-top:10px!important}
.er-faq-accordion summary{position:relative!important;padding:19px 54px 19px 20px!important;color:var(--er350-ink)!important;font-weight:850!important;cursor:pointer!important;list-style:none!important}
.er-faq-accordion summary::-webkit-details-marker{display:none!important}
.er-faq-accordion summary:after{content:"+";position:absolute!important;top:50%!important;right:18px!important;display:grid!important;width:28px!important;height:28px!important;place-items:center!important;transform:translateY(-50%)!important;border-radius:50%!important;background:#edf4f7!important;color:var(--er350-blue)!important;font-size:20px!important}
.er-faq-accordion[open]{border-color:#b7d2df!important;box-shadow:0 16px 34px rgba(8,37,61,.1)!important}
.er-faq-accordion[open] summary:after{content:"−";background:var(--er350-blue)!important;color:#fff!important}
.er-faq-accordion__body{padding:0 20px 20px!important;color:var(--er350-muted)!important;line-height:1.7!important}
body.er-blog-premium.blog #main>article,
body.er-blog-premium.blog #main>.ast-pagination,
body.er-blog-premium.blog #main>nav.navigation{display:none!important}
.er-home-featured-section .er-featured{width:100%!important;padding:0!important}
.er-home-featured-section .er-featured__head h2{display:none!important}
.er-home-featured-section .er-featured__head{justify-content:flex-end!important;margin-bottom:16px!important}
.er-archive-faq{max-width:980px!important;margin:80px auto 0!important}
.er-archive-faq>header{max-width:720px!important;margin-bottom:24px!important}
.er-archive-faq>header h2{margin:0!important;color:var(--er350-ink)!important;font-size:clamp(30px,3.4vw,46px)!important;font-weight:900!important;letter-spacing:-.04em!important}
.er-archive-faq__list{display:grid!important;gap:11px!important}
