/* Covin 50 ans — bleu du logo, blanc, capitales espacées */
.c50{--c50-navy:#14235e;--c50-navy-900:#0b1746;--c50-navy-500:#3a52a0;--c50-mist:#e8ecf6;--c50-ink-soft:#4b5a8c;--c50-line:rgba(20,35,94,.16);
  --c50-sans:'Jost','Century Gothic','Avenir Next',system-ui,sans-serif;--c50-serif:'Cormorant Garamond',Georgia,serif}
.page-covin50ans{overflow-x:hidden;background:#e8ecf6}
.page-covin50ans #wrapper,.page-covin50ans #content-wrapper,.page-covin50ans #main{background:transparent;padding:0;margin:0;max-width:none}
.page-covin50ans #wrapper>.container,.page-covin50ans #wrapper .container{max-width:none;width:100%;padding:0}
.page-covin50ans .breadcrumb,.page-covin50ans .page-header{display:none}
.page-covin50ans main{max-width:none;margin-top:0;margin-bottom:0;background:transparent;box-shadow:none} /* thème Pure Vigne : cadre de 1200 px */

.c50{position:relative;display:block;width:100vw;margin-left:calc(50% - 50vw);font-family:var(--c50-sans);font-weight:300;color:var(--c50-navy);line-height:1.6;-webkit-font-smoothing:antialiased}
.c50 *{box-sizing:border-box}
.c50 a{color:inherit}
.c50 :focus-visible{outline:2px solid var(--c50-navy-500);outline-offset:3px}

/* ---------- Hero ---------- */
.c50-body{min-width:0}
.c50-hero{background:#fff;text-align:center;padding:clamp(28px,4vw,48px) 16px clamp(20px,3vw,32px)}
.c50-card{width:min(560px,100%);margin:0 auto;text-align:center}
.c50-card img{width:min(300px,64vw);height:auto;margin:0 auto;mix-blend-mode:multiply}
.c50-card h1{font-family:var(--c50-serif);font-weight:400;font-size:clamp(1.7rem,3.6vw,2.6rem);line-height:1.15;margin:14px 0 0;color:var(--c50-navy)}
.c50-card p{margin:12px 0 0;color:var(--c50-ink-soft);font-size:1.02rem}
.c50-card p.c50-hint{font-size:.9rem;font-weight:400}
.c50-card p.c50-hint a{color:var(--c50-navy);text-decoration:underline;text-underline-offset:3px}

.c50-panel{background:var(--c50-band,var(--c50-mist));width:100%;margin:0;padding:clamp(32px,5vw,64px) max(20px,calc((100% - 1160px)/2))}
.c50-panel h2{font-family:var(--c50-serif);font-weight:400;font-size:clamp(1.7rem,3.2vw,2.4rem);line-height:1.15;margin:0;color:var(--c50-ink,var(--c50-navy))}
.c50-panel .c50-sub{margin:8px 0 30px;color:var(--c50-sub,var(--c50-ink-soft))}
.c50-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:20px}
.c50-item{border:1px solid var(--c50-line);background:#fff;display:flex;flex-direction:column;transition:border-color .25s,box-shadow .25s}
.c50-item:hover{border-color:var(--c50-navy-500);box-shadow:0 10px 28px -16px rgba(20,35,94,.45)}
.c50-phw{position:relative}
.c50-phw .wishlist-button,.c50-phw .wishlist-button-add{position:absolute;top:10px;right:10px;z-index:3}
.c50-ph{display:block;aspect-ratio:1/1;background:var(--c50-img,var(--c50-mist))}
.c50-ph img{width:100%;height:100%;object-fit:contain;padding:14px;mix-blend-mode:multiply}
.c50-info{padding:14px 14px 16px;display:flex;flex-direction:column;gap:5px;flex:1}
.c50-brand{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--c50-ink-soft)}
.c50-info h3{font-weight:400;font-size:.92rem;line-height:1.3;margin:0}
.c50-info h3 a{text-decoration:none}
.c50-price{font-family:var(--c50-serif);font-weight:500;font-size:1.3rem;margin-top:auto;padding-top:8px}
.c50-unit{display:block;font-size:.76rem;font-weight:400;color:var(--c50-navy-500);margin-top:-2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.c50-price s{font-size:.95rem;color:var(--c50-ink-soft);margin-right:6px;font-weight:400}
.c50-buy{margin-top:8px}
.c50-btn{display:inline-flex;align-items:center;justify-content:center;font:500 .78rem/1 var(--c50-sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:0 14px;height:46px;border:1px solid var(--c50-navy);background:var(--c50-navy);color:#fff;cursor:pointer;transition:background .25s;width:100%}
.c50-btn:hover{background:var(--c50-navy-900);color:#fff}
.c50-btn[disabled]{opacity:.5;cursor:not-allowed}
/* « Ajouter » devient « − n + » une fois le produit au panier */
.c50-buy .c50-qty{display:none;align-items:center;justify-content:space-between;height:46px;border:1px solid var(--c50-navy);background:#fff}
.c50-buy.is-in .c50-add{display:none}
.c50-buy.is-in .c50-qty{display:flex}
.c50-qty button{flex:0 0 25%;height:100%;background:none;border:0;font:400 1.35rem/1 var(--c50-sans);color:var(--c50-navy);cursor:pointer;transition:background .2s}
.c50-qty button:hover{background:var(--c50-mist)}
.c50-q{flex:1;text-align:center;font:500 1.05rem var(--c50-sans);color:var(--c50-navy)}
.c50-buy.is-busy{opacity:.6;pointer-events:none}
.c50-empty{color:var(--c50-ink-soft)}


/* ---------- Mur de marques (après la bande des dates) : blanc pur, logos PNG ---------- */
.c50-marques{background:#fff;padding:clamp(40px,6vw,80px) 0 clamp(32px,5vw,64px)}
.c50-marques h2{font-family:var(--c50-serif);font-weight:400;font-size:clamp(1.7rem,3.2vw,2.4rem);line-height:1.15;margin:0;text-align:center;color:var(--c50-navy)}
.c50-marques .c50-sub{text-align:center;margin:8px 0 clamp(20px,3vw,36px);color:var(--c50-ink-soft)}
.c50-wall{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:0;width:min(1600px,100%);margin:0 auto;padding:0 clamp(8px,2vw,32px);background:#fff}
.c50-tile{position:relative;display:block;aspect-ratio:196/194;overflow:hidden;background:#fff;text-decoration:none}
.c50-tile img{display:block;width:100%;height:100%;object-fit:contain;background:#fff;transition:transform .35s}
.c50-tile .c50-txt{display:grid;place-items:center;height:100%;padding:8px;text-align:center;font:500 .8rem/1.2 var(--c50-sans);color:var(--c50-navy-500)}
.c50-tile>span.c50-name{position:absolute;left:0;right:0;bottom:0;background:var(--c50-navy);color:#fff;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;text-align:center;padding:9px 6px;opacity:0;visibility:hidden;transform:translateY(100%);transition:transform .25s,opacity .25s,visibility 0s .25s}
.c50-tile:hover img,.c50-tile:focus-visible img{transform:scale(1.06)}
.c50-tile:hover .c50-name,.c50-tile:focus-visible .c50-name{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.c50-tile:focus-visible{outline-offset:-3px}
@media (hover:none){.c50-tile>span.c50-name{display:none}}

.c50-years{background:var(--c50-navy);color:#fff;text-align:center;padding:24px 16px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 56px}
.c50-years b{font-family:var(--c50-serif);font-weight:500;font-size:1.7rem;margin-right:.5em}
.c50-years span{font-size:.85rem;letter-spacing:.16em;text-transform:uppercase;color:#c9d2ee}

.c50-cartbar{position:fixed;left:0;right:0;bottom:0;z-index:1000;background:#fff;border-top:1px solid var(--c50-line);box-shadow:0 -10px 30px -18px rgba(20,35,94,.5);transform:translateY(110%);transition:transform .35s ease;font-family:var(--c50-sans)}
.c50-cartbar.is-on{transform:none}
.c50-cartbar div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 20px;max-width:1160px;margin:0 auto;color:var(--c50-navy)}
.c50-cartbar .c50-btn{flex:0 0 auto;width:auto;padding:0 22px;color:#fff}
.c50-toast{position:fixed;left:50%;bottom:86px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--c50-navy-900);color:#fff;font:400 .9rem var(--c50-sans);padding:11px 20px;transition:.3s;z-index:1001;max-width:90vw;text-align:center}
.c50-toast.is-on{opacity:1;transform:translate(-50%,0)}

/* Tablette / mobile */
@media (max-width:1000px){
  .c50-wall{grid-template-columns:repeat(5,minmax(0,1fr))}
  .c50-tile>span.c50-name{display:none}
}
@media (max-width:560px){
  .c50-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
}
@media (prefers-reduced-motion:reduce){.c50 *{transition:none!important}}

/* Mur de marques en bas des pages du catalogue : la marque affichée est soulignée, les autres restent cliquables */
.c50-solo{margin-top:clamp(24px,4vw,56px);border-top:1px solid rgba(20,35,94,.14)}
.c50-tile.is-current::after{content:"";position:absolute;left:14%;right:14%;bottom:6px;height:3px;background:var(--c50-navy)}
.c50-tile.is-current img{transform:none}
.c50.c50-solo{width:100%;margin-left:0}

.c50-item{border-color:var(--c50-cardline,var(--c50-line))}
