/* AC Client : cadres publicitaires intégrés aux couleurs du comparateur.
   Les captures servent uniquement au PLACEMENT des espaces.
   Les encarts non vendus restent neutres : aucun faux sponsor. */
.ac-sponsored-slot{margin:0;min-width:0;max-width:none}
.ac-sponsored-slot[hidden]{display:none!important}
/* Cadre d'attente élégant : blanc, vert AC discret, aucun panneau noir ou vert plein. */
.ac-sponsored-empty{
 position:relative;width:100%;height:100%;min-height:inherit;
 display:flex;align-items:center;justify-content:center;overflow:hidden;
 background:linear-gradient(145deg,#ffffff 8%,#f5faf6 100%);
 border:1px solid #c8e2d0;border-radius:14px;
 box-shadow:0 9px 24px rgba(18,61,43,.05);
 color:var(--dark,#123d2b)
}
.ac-sponsored-empty::after{content:"";position:absolute;inset:8px;border:1px dashed #c4dfcb;border-radius:10px;pointer-events:none}
.ac-sponsored-empty-tag{
 position:absolute;top:16px;left:17px;z-index:1;
 font-size:10px;font-weight:800;letter-spacing:1.3px;
 color:var(--green,#127343);opacity:.82
}
.ac-sponsored-empty-center{
 display:flex;align-items:center;justify-content:center;flex-direction:column;
 gap:9px;padding:28px 18px;z-index:1;text-align:center
}
.ac-sponsored-empty-ornament{
 width:43px;height:43px;display:grid;place-items:center;
 color:#238453;background:#e9f7ee;border:1px solid #d2e8d8;
 border-radius:13px;font-size:22px
}
.ac-sponsored-empty-title{
 color:#476b55;font-size:14px;line-height:1.35;font-weight:650
}
.ac-sponsored-slot--banner .ac-sponsored-empty-center{flex-direction:row;gap:12px;padding:12px 20px}
.ac-sponsored-slot--banner .ac-sponsored-empty-ornament{width:28px;height:28px;font-size:15px;border-radius:9px}
.ac-sponsored-slot--banner .ac-sponsored-empty-title{font-size:13px}
.ac-sponsored-slot--banner .ac-sponsored-empty-tag{top:7px;left:13px;font-size:8px}
.ac-sponsored-slot--right .ac-sponsored-empty-center,
.ac-ad-home-impact .ac-sponsored-empty-center,
.ac-ad-products-impact .ac-sponsored-empty-center{gap:5px}
.ac-sponsored-slot--right .ac-sponsored-empty-ornament,
.ac-ad-home-impact .ac-sponsored-empty-ornament{width:32px;height:32px;font-size:17px;border-radius:10px}
.ac-sponsored-slot--right .ac-sponsored-empty-title,
.ac-ad-home-impact .ac-sponsored-empty-title{font-size:12px}
.ac-sponsored-slot--right .ac-sponsored-empty-tag,
.ac-ad-home-impact .ac-sponsored-empty-tag{top:12px;left:13px;font-size:9px}

.ac-sponsored-card{display:grid;grid-template-columns:minmax(160px,42%) minmax(0,1fr);align-items:stretch;background:linear-gradient(115deg,#eff9f2,#fff);border:1px solid #c8e4d3;border-radius:13px;box-shadow:0 8px 20px #1746320e;overflow:hidden;min-height:155px;max-width:100%}
.ac-sponsored-gallery{position:relative;min-width:0;min-height:155px;background:#ecf4ef}
.ac-sponsored-screen{height:100%;min-height:155px;display:grid;place-items:center}
.ac-sponsored-media{display:block;width:100%;height:100%;max-height:310px;min-height:140px;object-fit:contain;background:#eef6f0}
.ac-sponsored-controls{position:absolute;bottom:8px;left:0;right:0;display:flex;gap:8px;justify-content:center;align-items:center;pointer-events:none}
.ac-sponsored-controls button{background:#fff;color:#174c30;border:1px solid #c7e5ce;padding:4px 12px;border-radius:99px;cursor:pointer;pointer-events:auto;font-size:20px}
.ac-sponsored-counter{border-radius:99px;background:#fff;color:#174c30;padding:5px 12px;font-size:11px;font-weight:800}
.ac-sponsored-content{padding:15px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;overflow-wrap:anywhere}
.ac-sponsored-label{display:inline-flex;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:900;border:1px solid #a0d4b5;background:#e1f5e8;padding:4px 10px;border-radius:99px;color:#116f3b}
.ac-sponsored-company{display:block;margin:9px 0 0;font-size:12px;color:#447155}
.ac-sponsored-title{display:block;margin:7px 0;font-size:20px;line-height:1.25;color:#123d2b;font-weight:800}
.ac-sponsored-description{display:block;color:#52695b;font-size:12px;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}
.ac-sponsored-cta{display:inline-block;font-weight:800;color:#087b49;margin-top:13px;text-decoration:underline;font-size:12px}
.ac-sponsored-disclaimer{font-size:10px;color:#6c7d70;padding:5px 3px;margin:0}

/* ACCUEIL : Prestige / Impact à gauche, Découverte en dessous,
   placée en débordement sous la zone claire comme sur la capture. */
#accueil.hero{overflow:visible;position:relative}
.ac-home-sponsored-layout{display:grid;grid-template-columns:clamp(245px,18vw,320px) minmax(0,1fr);column-gap:15px;max-width:1900px;margin:0 auto;min-width:0}
.ac-home-sponsor-stack{height:600px;position:relative;padding:12px 0 0 6px;min-width:0;align-self:start}
.ac-home-primary{min-width:0}
.ac-home-primary>.layout{max-width:1210px;margin:0;padding-left:8px;padding-right:20px}
.ac-home-primary .hero-grid{min-height:600px;gap:34px}
.ac-home-sponsor-stack .ac-ad-home-prestige{height:430px}
.ac-home-sponsor-stack .ac-ad-home-impact{height:155px}
.ac-home-sponsor-stack .ac-ad-home-decouverte{position:absolute;left:15px;right:5px;top:616px;height:126px;z-index:4}

/* PRODUITS : Prestige puis Impact à gauche, catalogue intact à droite. */
.ac-products-page.section{max-width:none;width:100%;padding:68px 16px 80px 6px}
.ac-products-sponsored-layout{display:grid;grid-template-columns:clamp(235px,18vw,310px) minmax(0,1fr);gap:13px;align-items:start}
.ac-products-sponsor-stack{min-width:0;padding-top:38px}
.ac-products-main{max-width:1120px;min-width:0}
.ac-products-sponsor-stack .ac-ad-products-prestige{height:338px}
.ac-products-sponsor-stack .ac-ad-products-impact{height:205px}

/* BOUTIQUES : Prestige horizontal en haut et Découverte flottante en bas à droite. */
.ac-shops-page.section{position:relative;max-width:1210px;padding:12px 48px 80px 50px}
.ac-shops-page .ac-ad-shops-prestige{height:70px;margin-bottom:5px}
.ac-shops-page .ac-ad-shops-decouverte{position:absolute;right:-265px;top:608px;width:292px;height:125px;z-index:2}
.ac-shops-page .ac-ad-shops-prestige .ac-sponsored-card{min-height:70px;max-height:220px}
.ac-shops-page .ac-ad-shops-prestige .ac-sponsored-gallery,.ac-shops-page .ac-ad-shops-prestige .ac-sponsored-screen{min-height:70px}
.ac-shops-page .ac-ad-shops-prestige .ac-sponsored-media{min-height:70px;max-height:210px}

/* Pour les publicités réellement publiées, empilement photo/vidéo puis texte dans les encarts étroits. */
.ac-sponsored-slot--side .ac-sponsored-card,.ac-sponsored-slot--right .ac-sponsored-card{height:100%;display:flex;flex-direction:column;min-height:0}
.ac-sponsored-slot--side .ac-sponsored-gallery,.ac-sponsored-slot--right .ac-sponsored-gallery{flex:1 1 50%;min-height:0;overflow:hidden}
.ac-sponsored-slot--side .ac-sponsored-screen,.ac-sponsored-slot--right .ac-sponsored-screen{height:100%;min-height:0}
.ac-sponsored-slot--side .ac-sponsored-media,.ac-sponsored-slot--right .ac-sponsored-media{height:100%;min-height:0;max-height:none;object-fit:contain}
.ac-sponsored-slot--side .ac-sponsored-content,.ac-sponsored-slot--right .ac-sponsored-content{flex:0 0 auto;padding:9px 12px;max-height:53%;overflow:auto}
.ac-sponsored-slot--side .ac-sponsored-title,.ac-sponsored-slot--right .ac-sponsored-title{font-size:15px}
.ac-sponsored-slot--side .ac-sponsored-description,.ac-sponsored-slot--right .ac-sponsored-description{font-size:11px}
.ac-sponsored-slot--side .ac-sponsored-disclaimer,.ac-sponsored-slot--right .ac-sponsored-disclaimer{font-size:9px}
.ac-sponsored-slot--right .ac-sponsored-content{max-height:70%}
.ac-sponsored-slot--right .ac-sponsored-gallery{flex:1 1 40%}

/* Tablettes : aucun encart ne doit masquer les résultats ou déborder de l’écran. */
@media(max-width:1769px){
 .ac-shops-page .ac-ad-shops-decouverte{position:relative;top:auto;right:auto;margin:16px 0 0 auto;width:min(100%,292px);height:125px}
}
@media(max-width:1050px){
 .ac-home-sponsored-layout,.ac-products-sponsored-layout{display:flex;flex-direction:column;gap:12px}
 .ac-home-sponsor-stack,.ac-products-sponsor-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;width:100%;height:auto;padding:12px 14px 0}
 .ac-home-sponsor-stack .ac-sponsored-slot,.ac-products-sponsor-stack .ac-sponsored-slot{height:150px;position:static;left:auto;right:auto;top:auto}
 .ac-home-sponsor-stack .ac-ad-home-decouverte{margin:0}
 .ac-products-sponsor-stack{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:0}
 .ac-home-primary{width:100%}
 .ac-home-primary>.layout{max-width:1210px;margin:0 auto;padding-left:22px;padding-right:22px}
 .ac-home-primary .hero-grid{min-height:510px}
 .ac-products-page.section{padding:35px 20px 65px}
 .ac-products-main{max-width:none;width:100%}
 .ac-shops-page.section{padding-left:24px;padding-right:24px}
 .ac-shops-page .ac-ad-shops-decouverte{position:static;margin:20px 0 0 auto}
 .ac-sponsored-slot--side .ac-sponsored-card{height:100%}
}
@media(max-width:650px){
 .ac-home-sponsor-stack{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 12px 0}
 .ac-home-sponsor-stack .ac-ad-home-decouverte{grid-column:1/-1}
 .ac-home-sponsor-stack .ac-sponsored-slot,.ac-products-sponsor-stack .ac-sponsored-slot{height:112px}
 .ac-home-sponsor-stack .ac-ad-home-decouverte{height:100px}
 .ac-products-sponsor-stack{padding:0;gap:8px}
 .ac-home-primary .hero-grid{min-height:0}
 .ac-home-primary>.layout{padding-left:17px;padding-right:17px}
 .ac-products-page.section{padding:24px 15px 55px}
 .ac-shops-page.section{padding:12px 15px 65px}
 .ac-shops-page .ac-ad-shops-prestige{height:68px}
 .ac-shops-page .ac-ad-shops-decouverte{width:100%;height:115px}
 .ac-sponsored-card{grid-template-columns:1fr}
 .ac-sponsored-content{padding:13px}
 .ac-sponsored-title{font-size:16px}
 .ac-sponsored-slot--side .ac-sponsored-label,.ac-sponsored-slot--side .ac-sponsored-company,.ac-sponsored-slot--side .ac-sponsored-description{display:none}
 .ac-sponsored-slot--side .ac-sponsored-cta{font-size:10px;margin-top:4px}
}
