/* =========================================================
   ô BÔ LINGE — Boutique, fiche produit, panier latéral, header
   Complément de main.css — reprend les variables existantes.
   ========================================================= */

/* ---------- Header : outils & recherche ---------- */
.ob-header__tools button.ob-tool{background:none;border:0;cursor:pointer;color:inherit;padding:0;}
.ob-tool--cart{position:relative;}
.ob-cart-count{position:absolute;top:-6px;right:-8px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;
  background:var(--ob-brass);color:#fff;font:600 11px/18px var(--ff-body);text-align:center;}
.ob-tool--hide-sm{display:inline-flex;}
@media(max-width:640px){.ob-tool--hide-sm{display:none;}}

.ob-search-layer{position:absolute;left:0;right:0;top:100%;background:var(--ob-ivory);border-top:1px solid var(--ob-line);
  box-shadow:var(--shadow-md);padding:1.6rem 0 2rem;opacity:0;visibility:hidden;transform:translateY(-8px);
  transition:all .28s var(--ease);z-index:60;}
.ob-search-layer.is-open{opacity:1;visibility:visible;transform:none;}
.ob-search-form{display:flex;align-items:center;gap:.9rem;border-bottom:1px solid var(--ob-line-2);padding-bottom:.9rem;}
.ob-search-form input[type=search]{flex:1;border:0;background:none;font:400 1.35rem/1.3 var(--ff-display);color:var(--ob-ink);outline:none;}
.ob-search-form input[type=search]::placeholder{color:var(--ob-muted);}
.ob-search-close{background:none;border:0;font-size:1.8rem;line-height:1;color:var(--ob-muted);cursor:pointer;}
.ob-search-suggest{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;}
.ob-search-suggest span{font:600 .72rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ob-muted);}
.ob-search-suggest a{font-size:.86rem;padding:.35rem .8rem;border:1px solid var(--ob-line);border-radius:100px;color:var(--ob-body);}
.ob-search-suggest a:hover{border-color:var(--ob-brass);color:var(--ob-brass);}
.ob-search-list{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.5rem;}
.ob-search-list a{display:flex;gap:.8rem;align-items:center;padding:.5rem;border-radius:var(--radius);}
.ob-search-list a:hover{background:var(--ob-cream);}
.ob-search-thumb img{width:54px;height:54px;object-fit:cover;border-radius:var(--radius);}
.ob-search-txt strong{display:block;font:500 .92rem/1.3 var(--ff-body);color:var(--ob-ink);}
.ob-search-txt span{font-size:.85rem;color:var(--ob-brass);}
.ob-search-all{display:inline-block;margin-top:.9rem;font-weight:600;color:var(--ob-brass);border-bottom:1px solid currentColor;}
.ob-search-none{margin-top:1rem;color:var(--ob-muted);}

/* ---------- Méga-menu ---------- */
.ob-nav-desktop li.ob-has-mega{position:static;}
.ob-mega{display:grid !important;grid-template-columns:repeat(4,1fr);gap:1.4rem;padding:1.8rem 2rem 2rem !important;
  left:0 !important;right:0;width:100%;max-width:none;}
.ob-mega .ob-mega__link{display:block;text-align:left;padding:0 !important;}
.ob-mega__thumb{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius);background:var(--ob-cream-2);margin-bottom:.6rem;}
.ob-mega__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease);}
.ob-mega__link:hover .ob-mega__thumb img{transform:scale(1.06);}
.ob-mega__label{display:flex;align-items:baseline;gap:.4rem;font:500 .95rem/1.3 var(--ff-body);color:var(--ob-ink);}
.ob-mega__count{font-size:.75rem;color:var(--ob-muted);}
.ob-mega__all{grid-column:1/-1;border-top:1px solid var(--ob-line);padding-top:.9rem;margin-top:.4rem;}
.ob-mega__all a{font:600 .82rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--ob-brass);}
@media(max-width:1100px){.ob-mega{grid-template-columns:repeat(3,1fr);}}

/* ---------- Boutique : mise en page ---------- */
/* ---------- Boutique : hero éditorial ---------- */
.ob-shop-hero{position:relative;background:var(--ob-cream);overflow:hidden;padding:clamp(2rem,4vw,3.6rem) 0 clamp(1.6rem,3vw,2.6rem);}
.ob-shop-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 130% at 100% 0%,var(--ob-cream-2),transparent 58%);pointer-events:none;}
.ob-shop-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,4vw,4rem);align-items:center;}
.ob-shop-hero__grid.is-single-col{grid-template-columns:1fr;}
.ob-shop-hero__text{max-width:60ch;}
.ob-shop-hero .ob-breadcrumb{margin-bottom:.7rem;}
.ob-shop-hero__spark{color:var(--ob-brass);display:inline-flex;width:1.05em;height:1.05em;}
.ob-shop-hero__spark svg{width:100%;height:100%;}
.ob-shop-hero__title{font:400 var(--fs-h1)/1.02 var(--ff-display);color:var(--ob-ink);margin:.35rem 0 0;letter-spacing:-.01em;}
.ob-shop-hero__rule{display:block;width:66px;height:2px;background:linear-gradient(90deg,var(--ob-brass),var(--ob-gold));border-radius:2px;margin:1.05rem 0;}
.ob-shop-hero__desc{max-width:52ch;color:var(--ob-body);font-size:1.02rem;line-height:1.62;}
.ob-shop-hero__desc p{margin:0 0 .5rem;}
.ob-shop-hero__links{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.4rem;}
.ob-shop-hero__link{display:inline-flex;align-items:center;padding:.5rem .95rem;border:1px solid var(--ob-line-2);border-radius:100px;background:var(--ob-ivory);font:500 .84rem/1 var(--ff-body);color:var(--ob-ink);letter-spacing:.01em;transition:border-color .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease),transform .25s var(--ease);}
.ob-shop-hero__link:hover{border-color:var(--ob-brass);color:var(--ob-brass);box-shadow:var(--shadow-sm);transform:translateY(-1px);}
.ob-shop-hero__media{position:relative;}
.ob-shop-hero__collage{position:relative;width:100%;aspect-ratio:1/.8;}
.ob-shop-hero__ph{position:absolute;border-radius:var(--radius-lg);overflow:hidden;background:var(--ob-cream-2);box-shadow:var(--shadow-md);}
.ob-shop-hero__ph img{width:100%;height:100%;object-fit:cover;display:block;}
.ob-shop-hero__ph--back{inset:0 22% 16% 0;}
.ob-shop-hero__ph--front{width:50%;aspect-ratio:3/4;right:0;bottom:0;border:6px solid var(--ob-ivory);box-shadow:var(--shadow-lg);}
.ob-shop-hero__collage::before{content:"";position:absolute;left:-14px;top:-14px;width:78px;height:78px;border-top:2px solid var(--ob-brass);border-left:2px solid var(--ob-brass);opacity:.55;z-index:2;pointer-events:none;}
.ob-shop-hero__single{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);aspect-ratio:4/3;background:var(--ob-cream-2);}
.ob-shop-hero__single img{width:100%;height:100%;object-fit:cover;display:block;}
@media(max-width:900px){
.ob-shop-hero__grid{grid-template-columns:1fr;gap:1.6rem;}
.ob-shop-hero__media{max-width:460px;}
.ob-shop-hero__collage{aspect-ratio:16/10;}
.ob-shop-hero__ph--front{width:46%;}
}
@media(max-width:600px){
.ob-shop-hero{padding:1.7rem 0 1.3rem;}
.ob-shop-hero__grid{grid-template-columns:1fr;}
.ob-shop-hero__media{display:none;}
.ob-shop-hero__links{display:none;}
.ob-shop-hero__desc{max-width:none;}
}
.ob-shop__layout{display:grid;grid-template-columns:284px 1fr;gap:2.6rem;align-items:start;}
@media(max-width:1024px){.ob-shop__layout{grid-template-columns:1fr;}}

.ob-shop__bar{display:flex;align-items:center;gap:1rem;padding-bottom:1.1rem;margin-bottom:1.6rem;border-bottom:1px solid var(--ob-line);}
.ob-shop__count{color:var(--ob-muted);font-size:.9rem;}
.ob-shop__sort{margin-left:auto;}
.ob-shop__sort select{border:1px solid var(--ob-line);background:var(--ob-ivory);padding:.55rem 2rem .55rem .9rem;border-radius:var(--radius);
  font:400 .88rem var(--ff-body);color:var(--ob-body);cursor:pointer;appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%235A5A57'><path d='M12 15 6 9h12z'/></svg>");
  background-repeat:no-repeat;background-position:right .7rem center;}
.ob-shop__filtbtn{display:none;align-items:center;gap:.45rem;}
.ob-shop__filtcount{background:var(--ob-brass);color:#fff;border-radius:100px;padding:0 .45rem;font-size:.72rem;font-weight:600;}
@media(max-width:1024px){.ob-shop__filtbtn{display:inline-flex;}}

/* ---------- Filtres ---------- */
.ob-filters{background:var(--ob-ivory);border:1px solid var(--ob-line);border-radius:var(--radius-lg);padding:1.3rem;position:sticky;top:calc(var(--header-h) + 14px);}
.ob-filters__head{display:flex;align-items:center;gap:.6rem;padding-bottom:.9rem;margin-bottom:.5rem;border-bottom:1px solid var(--ob-line);}
.ob-filters__head h2{display:flex;align-items:center;gap:.45rem;font:600 .78rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ob-ink);margin:0;}
.ob-filters__clear{margin-left:auto;background:none;border:0;font-size:.8rem;color:var(--ob-muted);cursor:pointer;text-decoration:underline;}
.ob-filters__clear:hover{color:var(--ob-terracotta);}
.ob-filters__close{display:none;background:none;border:0;font-size:1.6rem;line-height:1;color:var(--ob-muted);cursor:pointer;}

.ob-chips{display:flex;flex-wrap:wrap;gap:.4rem;}
.ob-chips:not(:empty){padding:.6rem 0 .2rem;}
.ob-chip{display:inline-flex;align-items:center;gap:.35rem;background:var(--ob-cream-2);border-radius:100px;padding:.28rem .6rem;font-size:.78rem;color:var(--ob-ink);}
.ob-chip button{background:none;border:0;cursor:pointer;font-size:1rem;line-height:1;color:var(--ob-muted);padding:0;}
.ob-chip button:hover{color:var(--ob-terracotta);}

.ob-fgroup{border-bottom:1px solid var(--ob-line);}
.ob-fgroup:last-child{border-bottom:0;}
.ob-fgroup>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;
  padding:.85rem 0;font:500 .92rem/1 var(--ff-body);color:var(--ob-ink);}
.ob-fgroup>summary::-webkit-details-marker{display:none;}
.ob-fgroup__arrow{width:9px;height:9px;border-right:1.5px solid var(--ob-muted);border-bottom:1.5px solid var(--ob-muted);
  transform:rotate(45deg);transition:transform .25s var(--ease);margin-bottom:3px;}
.ob-fgroup[open] .ob-fgroup__arrow{transform:rotate(-135deg);margin-bottom:-3px;}
.ob-fgroup__body{padding-bottom:1rem;}
[data-fscroll]{max-height:236px;overflow-y:auto;padding-right:.35rem;}
[data-fscroll]::-webkit-scrollbar{width:5px;}
[data-fscroll]::-webkit-scrollbar-thumb{background:var(--ob-line-2);border-radius:3px;}
.ob-fsearch{width:100%;border:1px solid var(--ob-line);border-radius:var(--radius);padding:.45rem .65rem;font-size:.84rem;margin-bottom:.6rem;}
.ob-fsearch:focus{outline:none;border-color:var(--ob-brass);}

.ob-check{display:flex;align-items:center;gap:.55rem;cursor:pointer;padding:.28rem 0;}
.ob-check input{position:absolute;opacity:0;width:0;height:0;}
.ob-check__box{flex:0 0 16px;width:16px;height:16px;border:1.5px solid var(--ob-line-2);border-radius:3px;position:relative;transition:all .2s var(--ease);}
.ob-check input:checked + .ob-check__box{background:var(--ob-brass);border-color:var(--ob-brass);}
.ob-check input:checked + .ob-check__box::after{content:"";position:absolute;left:5px;top:1px;width:4px;height:9px;
  border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}
.ob-check input:focus-visible + .ob-check__box{box-shadow:0 0 0 3px rgba(184,155,70,.25);}
.ob-check__label{flex:1;display:flex;justify-content:space-between;gap:.5rem;font-size:.88rem;color:var(--ob-body);}
.ob-check__label em{font-style:normal;color:var(--ob-muted);font-size:.78rem;}
.ob-check--sm .ob-check__label{font-size:.83rem;}
.ob-fcat__kids{padding-left:1.35rem;margin:.1rem 0 .5rem;border-left:1px solid var(--ob-line);}

.ob-swatches{display:flex;flex-wrap:wrap;gap:.45rem;}
.ob-swatch{cursor:pointer;position:relative;}
.ob-swatch input{position:absolute;opacity:0;width:0;height:0;}
.ob-swatch__dot{display:block;width:26px;height:26px;border-radius:50%;background:var(--c);
  border:1px solid rgba(0,0,0,.14);transition:all .2s var(--ease);}
.ob-swatch input:checked + .ob-swatch__dot{box-shadow:0 0 0 2px var(--ob-ivory),0 0 0 4px var(--ob-brass);}
.ob-swatch__name{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);white-space:nowrap;
  background:var(--ob-ink);color:#fff;font-size:.7rem;padding:.2rem .45rem;border-radius:3px;opacity:0;pointer-events:none;transition:opacity .18s;z-index:5;}
.ob-swatch:hover .ob-swatch__name{opacity:1;}

.ob-fchips{display:flex;flex-wrap:wrap;gap:.35rem;}
.ob-fchip{cursor:pointer;}
.ob-fchip input{position:absolute;opacity:0;width:0;height:0;}
.ob-fchip span{display:block;border:1px solid var(--ob-line-2);border-radius:var(--radius);padding:.3rem .55rem;font-size:.78rem;color:var(--ob-body);transition:all .18s var(--ease);}
.ob-fchip input:checked + span{background:var(--ob-brass);border-color:var(--ob-brass);color:#fff;}

.ob-range{position:relative;height:26px;margin:.4rem 0 .2rem;}
.ob-range__track{position:absolute;top:11px;left:0;right:0;height:3px;background:var(--ob-line-2);border-radius:2px;}
.ob-range__fill{position:absolute;height:100%;background:var(--ob-brass);border-radius:2px;}
.ob-range input[type=range]{position:absolute;top:0;left:0;width:100%;height:26px;margin:0;background:none;pointer-events:none;appearance:none;}
.ob-range input[type=range]::-webkit-slider-thumb{pointer-events:auto;appearance:none;width:16px;height:16px;border-radius:50%;
  background:var(--ob-ivory);border:2px solid var(--ob-brass);cursor:pointer;box-shadow:var(--shadow-sm);}
.ob-range input[type=range]::-moz-range-thumb{pointer-events:auto;width:16px;height:16px;border-radius:50%;
  background:var(--ob-ivory);border:2px solid var(--ob-brass);cursor:pointer;}
.ob-range__vals{display:flex;justify-content:space-between;font-size:.83rem;color:var(--ob-body);}

.ob-filters-overlay{display:none;}
@media(max-width:1024px){
  .ob-shop__aside{position:fixed;inset:0 auto 0 0;width:min(340px,88vw);z-index:130;transform:translateX(-102%);
    transition:transform .34s var(--ease);overflow-y:auto;background:var(--ob-ivory);}
  .ob-shop__aside.is-open{transform:none;}
  .ob-filters{border:0;border-radius:0;position:static;min-height:100%;}
  .ob-filters__close{display:block;}
  .ob-filters-overlay{display:block;position:fixed;inset:0;background:rgba(30,30,28,.42);opacity:0;visibility:hidden;
    transition:all .3s var(--ease);z-index:129;}
  .ob-filters-overlay.is-open{opacity:1;visibility:visible;}
}

/* ---------- Grille & cartes produit ---------- */
.ob-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:1.6rem 1.3rem;}
.ob-card{position:relative;}
.ob-card__media{position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius);background:var(--ob-cream-2);}
.ob-card__img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),opacity .4s var(--ease);}
.ob-card__img--hover{position:absolute;inset:0;opacity:0;}
.ob-card:hover .ob-card__img--hover{opacity:1;}
.ob-card:hover .ob-card__img{transform:scale(1.04);}
.ob-card__badges{position:absolute;top:.7rem;left:.7rem;display:flex;flex-direction:column;gap:.35rem;z-index:2;}
.ob-badge{display:inline-block;font:600 .68rem/1 var(--ff-eyebrow);letter-spacing:.1em;text-transform:uppercase;
  padding:.35rem .5rem;border-radius:2px;background:var(--ob-ink);color:#fff;}
.ob-badge--sale{background:var(--ob-terracotta);}
.ob-badge--new{background:var(--ob-brass);}
.ob-badge--out{background:var(--ob-muted);}
.ob-badge--low{background:var(--ob-ink);}
.ob-badge--low::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--ob-terracotta);margin-right:.35rem;vertical-align:middle;}
.ob-card__quick{position:absolute;left:.7rem;right:.7rem;bottom:.7rem;opacity:0;transform:translateY(8px);
  transition:all .28s var(--ease);z-index:2;}
.ob-card:hover .ob-card__quick{opacity:1;transform:none;}
.ob-card__add{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;padding:.65rem;
  background:var(--ob-ivory);color:var(--ob-ink);border-radius:var(--radius);font:600 .78rem/1 var(--ff-eyebrow);
  letter-spacing:.08em;text-transform:uppercase;box-shadow:var(--shadow-sm);transition:all .2s var(--ease);}
.ob-card__add:hover{background:var(--ob-brass);color:#fff;}
.ob-card__add.loading{opacity:.6;pointer-events:none;}
.ob-card__add.added::after{content:"✓";margin-left:.3rem;}
.ob-card__body{padding-top:.75rem;}
.ob-card__cat{display:block;font:600 .66rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ob-muted);margin-bottom:.3rem;}
.ob-card__title{font:400 1.02rem/1.3 var(--ff-display);margin:0 0 .35rem;}
.ob-card__title a{color:var(--ob-ink);}
.ob-card__title a:hover{color:var(--ob-brass);}
.ob-card__colors{display:flex;align-items:center;gap:.25rem;margin-bottom:.35rem;}
.ob-card__color{width:12px;height:12px;border-radius:50%;background:var(--c);border:1px solid rgba(0,0,0,.12);}
.ob-card__more{font-size:.72rem;color:var(--ob-muted);}
.ob-card__price{font:500 .98rem/1 var(--ff-body);color:var(--ob-ink);}
.ob-card__price del{color:var(--ob-muted);font-weight:400;margin-right:.35rem;}
.ob-card__price ins{text-decoration:none;color:var(--ob-terracotta);}

.ob-empty{text-align:center;padding:4rem 1rem;color:var(--ob-muted);}
.ob-empty p{margin-bottom:1rem;}

/* Pagination */
.ob-pagination{margin-top:2.6rem;}
.ob-pagination ul{list-style:none;display:flex;justify-content:center;gap:.35rem;padding:0;margin:0;}
.ob-pagination a,.ob-pagination span{display:flex;align-items:center;justify-content:center;min-width:38px;height:38px;
  border:1px solid var(--ob-line);border-radius:var(--radius);font-size:.88rem;color:var(--ob-body);}
.ob-pagination a:hover{border-color:var(--ob-brass);color:var(--ob-brass);}
.ob-pagination .current{background:var(--ob-ink);border-color:var(--ob-ink);color:#fff;}

/* Chargement */
.ob-shop__main{position:relative;}
.ob-shop__loader,.ob-sc__loader{position:absolute;inset:0;background:rgba(250,247,243,.72);display:none;
  align-items:flex-start;justify-content:center;padding-top:5rem;z-index:8;backdrop-filter:blur(1px);}
.ob-shop__loader.is-on,.ob-sc__loader.is-on{display:flex;}
.ob-shop__loader span,.ob-sc__loader span{width:30px;height:30px;border:2px solid var(--ob-line-2);
  border-top-color:var(--ob-brass);border-radius:50%;animation:ob-spin .7s linear infinite;}
@keyframes ob-spin{to{transform:rotate(360deg);}}
.ob-shop__results{transition:opacity .2s var(--ease);}
.ob-shop__results.is-loading{opacity:.45;}

/* ---------- Fiche produit ---------- */
.ob-single__crumb{padding-block:1.4rem .4rem;}
.ob-single__top{display:grid;grid-template-columns:1.15fr 1fr;gap:3rem;align-items:start;padding-bottom:3rem;}
@media(max-width:900px){.ob-single__top{grid-template-columns:1fr;gap:1.8rem;}}

.ob-gallery__stage{position:relative;aspect-ratio:4/5;border-radius:var(--radius-lg);overflow:hidden;background:var(--ob-cream-2);}
.ob-gallery__stage .ob-badge{position:absolute;top:1rem;left:1rem;z-index:3;}
.ob-gallery__slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .45s var(--ease);}
.ob-gallery__slide.is-active{opacity:1;}
.ob-gallery__slide img{width:100%;height:100%;object-fit:cover;}
.ob-gallery__nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;
  background:rgba(255,255,255,.9);border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;
  box-shadow:var(--shadow-sm);z-index:3;transition:background .2s;}
.ob-gallery__nav:hover{background:#fff;}
.ob-gallery__nav--prev{left:.8rem;transform:translateY(-50%) rotate(180deg);}
.ob-gallery__nav--next{right:.8rem;}
.ob-gallery__thumbs{display:flex;gap:.5rem;margin-top:.7rem;overflow-x:auto;padding-bottom:.3rem;}
.ob-gallery__thumb{flex:0 0 76px;height:94px;border:1px solid var(--ob-line);border-radius:var(--radius);overflow:hidden;
  background:none;cursor:pointer;padding:0;transition:border-color .2s var(--ease);}
.ob-gallery__thumb img{width:100%;height:100%;object-fit:cover;}
.ob-gallery__thumb.is-active{border-color:var(--ob-brass);}

.ob-buy__cat{display:inline-block;font:600 .68rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ob-brass);margin-bottom:.6rem;}
.ob-buy__title{font:400 clamp(1.8rem,1.2rem + 1.8vw,2.7rem)/1.12 var(--ff-display);color:var(--ob-ink);margin:0 0 .4rem;}
.ob-buy__sku{display:block;font-size:.78rem;color:var(--ob-muted);margin-bottom:.8rem;}
.ob-buy__price{font:500 1.5rem/1 var(--ff-body);color:var(--ob-ink);margin-bottom:1rem;}
.ob-buy__price del{color:var(--ob-muted);font-size:1.05rem;margin-right:.5rem;}
.ob-buy__price ins{text-decoration:none;color:var(--ob-terracotta);}
.ob-buy__excerpt{color:var(--ob-body);line-height:1.65;margin-bottom:1.3rem;}
.ob-buy__form{padding:1.3rem 0;border-top:1px solid var(--ob-line);border-bottom:1px solid var(--ob-line);}
.ob-buy__reassure{list-style:none;padding:1.2rem 0 0;margin:0;display:grid;gap:.65rem;}
.ob-buy__reassure li{display:flex;align-items:center;gap:.6rem;font-size:.89rem;color:var(--ob-body);}
.ob-buy__reassure svg{flex:0 0 auto;color:var(--ob-brass);}

/* Formulaire WooCommerce dans la fiche */
.ob-buy__form table.variations{width:100%;border:0;margin-bottom:1rem;}
.ob-buy__form table.variations th,.ob-buy__form table.variations td{border:0;padding:.35rem 0;display:block;text-align:left;}
.ob-buy__form table.variations th{font:600 .72rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--ob-muted);}
.ob-buy__form select{width:100%;border:1px solid var(--ob-line-2);border-radius:var(--radius);padding:.65rem .8rem;
  font:400 .92rem var(--ff-body);background:var(--ob-ivory);}
.ob-buy__form .quantity{display:inline-flex;margin-right:.7rem;vertical-align:middle;}
.ob-buy__form .quantity input{width:70px;border:1px solid var(--ob-line-2);border-radius:var(--radius);padding:.72rem .5rem;text-align:center;}
.ob-buy__form .single_add_to_cart_button{background:var(--ob-brass);color:#fff;border:0;border-radius:var(--radius);
  padding:.85rem 2rem;font:600 .82rem/1 var(--ff-eyebrow);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;
  transition:background .2s var(--ease);}
.ob-buy__form .single_add_to_cart_button:hover{background:var(--ob-brass-dark);}
.ob-buy__form .single_add_to_cart_button.loading{opacity:.6;pointer-events:none;}
.ob-buy__form .stock.out-of-stock{color:var(--ob-terracotta);font-weight:500;}
.ob-buy__form .reset_variations{font-size:.8rem;color:var(--ob-muted);}

/* Onglets */
.ob-tabs{border-top:1px solid var(--ob-line);padding-top:2rem;padding-bottom:3rem;}
.ob-tabs__nav{display:flex;gap:1.6rem;border-bottom:1px solid var(--ob-line);margin-bottom:1.5rem;flex-wrap:wrap;}
.ob-tabs__nav button{background:none;border:0;padding:0 0 .9rem;cursor:pointer;position:relative;
  font:600 .78rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--ob-muted);}
.ob-tabs__nav button.is-active{color:var(--ob-ink);}
.ob-tabs__nav button.is-active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--ob-brass);}
.ob-tabs__panel{display:none;max-width:78ch;color:var(--ob-body);line-height:1.75;}
.ob-tabs__panel.is-active{display:block;}
.ob-specs{width:100%;border-collapse:collapse;}
.ob-specs th,.ob-specs td{text-align:left;padding:.7rem 0;border-bottom:1px solid var(--ob-line);font-size:.92rem;}
.ob-specs th{width:34%;font-weight:500;color:var(--ob-ink);}

/* ---------- Panier latéral ---------- */
.ob-sc-overlay{position:fixed;inset:0;background:rgba(30,30,28,.44);opacity:0;visibility:hidden;
  transition:all .32s var(--ease);z-index:190;}
.ob-sc-overlay.is-open{opacity:1;visibility:visible;}
.ob-sc{position:fixed;top:0;right:0;bottom:0;width:min(430px,100vw);background:var(--ob-ivory);z-index:200;
  display:flex;flex-direction:column;transform:translateX(102%);transition:transform .36s var(--ease);box-shadow:var(--shadow-lg);}
.ob-sc.is-open{transform:none;}
.ob-sc__head{display:flex;align-items:center;gap:.6rem;padding:1.2rem 1.4rem;border-bottom:1px solid var(--ob-line);}
.ob-sc__head h2{display:flex;align-items:center;gap:.5rem;margin:0;font:600 .82rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ob-ink);}
.ob-sc__count{background:var(--ob-brass);color:#fff;border-radius:100px;min-width:20px;padding:0 .4rem;font-size:.72rem;line-height:20px;text-align:center;}
.ob-sc__close{margin-left:auto;background:none;border:0;font-size:1.9rem;line-height:1;color:var(--ob-muted);cursor:pointer;}
.ob-sc__close:hover{color:var(--ob-ink);}
.ob-sc__body{flex:1;overflow-y:auto;display:flex;flex-direction:column;}
.ob-sc__ship{padding:1rem 1.4rem;background:var(--ob-cream);}
.ob-sc__ship p{margin:0 0 .5rem;font-size:.85rem;color:var(--ob-body);}
.ob-sc__ship p.is-ok{color:var(--ob-brass);font-weight:500;display:flex;align-items:center;gap:.35rem;}
.ob-sc__bar{height:4px;background:var(--ob-line-2);border-radius:2px;overflow:hidden;}
.ob-sc__bar span{display:block;height:100%;background:var(--ob-brass);border-radius:2px;transition:width .5s var(--ease);}
.ob-sc__list{list-style:none;margin:0;padding:0;flex:1;}
.ob-sc__item{display:flex;gap:.85rem;padding:1rem 1.4rem;border-bottom:1px solid var(--ob-line);position:relative;}
.ob-sc__thumb img{width:74px;height:92px;object-fit:cover;border-radius:var(--radius);}
.ob-sc__info{flex:1;min-width:0;}
.ob-sc__name{display:block;font:400 .95rem/1.35 var(--ff-display);color:var(--ob-ink);padding-right:1.2rem;}
.ob-sc__name:hover{color:var(--ob-brass);}
.ob-sc__meta{display:block;font-size:.76rem;color:var(--ob-muted);margin-top:.15rem;}
.ob-sc__meta p{margin:0;}
.ob-sc__row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.55rem;}
.ob-sc__price{font-size:.92rem;font-weight:500;color:var(--ob-ink);}
.ob-sc__remove{position:absolute;top:.9rem;right:1.1rem;background:none;border:0;font-size:1.25rem;line-height:1;color:var(--ob-muted);cursor:pointer;}
.ob-sc__remove:hover{color:var(--ob-terracotta);}
.ob-qty{display:inline-flex;align-items:center;border:1px solid var(--ob-line-2);border-radius:var(--radius);overflow:hidden;}
.ob-qty__btn{width:26px;height:28px;background:none;border:0;cursor:pointer;color:var(--ob-body);font-size:.95rem;}
.ob-qty__btn:hover{background:var(--ob-cream);color:var(--ob-brass);}
.ob-qty__input{width:34px;height:28px;border:0;border-left:1px solid var(--ob-line-2);border-right:1px solid var(--ob-line-2);
  text-align:center;font-size:.85rem;-moz-appearance:textfield;}
.ob-qty__input::-webkit-outer-spin-button,.ob-qty__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.ob-sc__foot{border-top:1px solid var(--ob-line);padding:1.2rem 1.4rem;background:var(--ob-ivory);}
.ob-sc__total{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.3rem;}
.ob-sc__total span{font:600 .76rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--ob-muted);}
.ob-sc__total strong{font:500 1.25rem/1 var(--ff-body);color:var(--ob-ink);}
.ob-sc__note{font-size:.76rem;color:var(--ob-muted);margin:0 0 .9rem;}
.ob-sc__checkout{width:100%;text-align:center;justify-content:center;}
.ob-sc__view{display:block;text-align:center;margin-top:.6rem;font-size:.84rem;color:var(--ob-body);text-decoration:underline;}
.ob-sc__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;padding:3rem 1.4rem;color:var(--ob-muted);text-align:center;}
.ob-sc__empty svg{color:var(--ob-line-2);}

/* Notification */
.ob-toast{position:fixed;left:50%;bottom:2rem;transform:translate(-50%,120%);background:var(--ob-ink);color:#fff;
  padding:.85rem 1.3rem;border-radius:var(--radius);font-size:.88rem;z-index:260;transition:transform .4s var(--ease);
  box-shadow:var(--shadow-md);max-width:90vw;}
.ob-toast.is-on{transform:translate(-50%,0);}
.ob-toast.is-error{background:var(--ob-terracotta);}

/* Panneau mobile : entête et pied */
.ob-mobile-panel__head{display:flex;align-items:center;margin-bottom:1rem;}
.ob-mobile-panel__foot{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--ob-line);}
.ob-mobile-panel__foot .ob-btn{width:100%;text-align:center;justify-content:center;}
/* =========================================================
   Pages de contenu — PROS, partenaires, boutiques, légal
   ========================================================= */
.ob-entry .ob-lead{font:400 clamp(1.05rem,.95rem + .5vw,1.28rem)/1.6 var(--ff-body);color:var(--ob-body);max-width:70ch;}
.ob-h2-center{text-align:center;font:400 var(--fs-h2)/1.15 var(--ff-display);color:var(--ob-ink);margin:3.2rem 0 1.8rem;}

/* Offres PRO */
.ob-offers{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;margin:2.2rem 0 1rem;}
.ob-offer{position:relative;border:1px solid var(--ob-line);border-radius:var(--radius-lg);padding:2rem 1.7rem 1.7rem;background:var(--ob-ivory);}
.ob-offer--pro{background:var(--ob-charcoal);border-color:var(--ob-charcoal);}
.ob-offer--pro h2,.ob-offer--pro p{color:#fff;}
.ob-offer--pro .ob-offer__tag{color:var(--ob-gold);}
.ob-offer--pro .ob-ticks li{color:rgba(255,255,255,.86);}
.ob-offer--pro .ob-ticks li::before{background:var(--ob-gold);}
.ob-offer__num{position:absolute;top:-14px;left:1.7rem;width:30px;height:30px;border-radius:50%;background:var(--ob-brass);
  color:#fff;display:flex;align-items:center;justify-content:center;font:600 .88rem var(--ff-body);}
.ob-offer h2{font:400 var(--fs-h3)/1.2 var(--ff-display);margin:.2rem 0 .4rem;color:var(--ob-ink);}
.ob-offer__tag{font:600 .74rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--ob-brass);margin-bottom:.9rem;}
.ob-offer__tag em{font-style:normal;opacity:.75;}
.ob-ticks{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.6rem;}
.ob-ticks li{position:relative;padding-left:1.6rem;font-size:.93rem;line-height:1.55;color:var(--ob-body);}
.ob-ticks li::before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;border-radius:50%;background:var(--ob-brass);}

/* Bénéfices */
.ob-benefits{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.3rem;}
.ob-benefit{padding:1.5rem;background:var(--ob-cream);border-radius:var(--radius-lg);}
.ob-benefit h3{font:500 1.05rem/1.3 var(--ff-body);color:var(--ob-ink);margin:0 0 .5rem;}
.ob-benefit p{font-size:.92rem;line-height:1.6;color:var(--ob-body);margin:0;}

/* Comparatif */
.ob-compare{margin:3.4rem 0;}
.ob-compare h2{text-align:center;font:400 var(--fs-h2)/1.15 var(--ff-display);margin-bottom:1.8rem;}
.ob-compare__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1.3rem;}
.ob-compare__col{border-radius:var(--radius-lg);padding:1.7rem;}
.ob-compare__col h3{font:500 1.1rem/1.3 var(--ff-body);margin:0 0 1rem;}
.ob-compare__col ul{list-style:none;padding:0;margin:0;display:grid;gap:.65rem;}
.ob-compare__col li{position:relative;padding-left:1.7rem;font-size:.93rem;line-height:1.5;}
.ob-compare__col--ko{background:#F7F2F0;border:1px solid #EBDAD4;}
.ob-compare__col--ko li::before{content:"×";position:absolute;left:0;top:-.1em;color:var(--ob-terracotta);font-size:1.2rem;font-weight:600;}
.ob-compare__col--ok{background:#F2F6F1;border:1px solid #D9E5D6;}
.ob-compare__col--ok li::before{content:"✓";position:absolute;left:0;top:-.05em;color:#4F7942;font-weight:600;}

/* Étapes */
.ob-steps{list-style:none;padding:0;margin:0 0 3rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.6rem;counter-reset:none;}
.ob-steps li{position:relative;padding-top:1.6rem;border-top:2px solid var(--ob-line);}
.ob-steps__n{position:absolute;top:-.85rem;left:0;background:var(--ob-cream);padding-right:.6rem;
  font:600 .8rem/1 var(--ff-eyebrow);letter-spacing:.14em;color:var(--ob-brass);}
.ob-body .ob-steps__n{background:var(--ob-ivory);}
.ob-steps h3{font:500 1.05rem/1.3 var(--ff-body);margin:0 0 .4rem;color:var(--ob-ink);}
.ob-steps p{font-size:.92rem;line-height:1.6;color:var(--ob-body);margin:0;}

/* Tarification */
.ob-pricing{background:var(--ob-cream);border-radius:var(--radius-lg);padding:2.4rem 1.8rem;margin:0 0 2.6rem;}
.ob-pricing h2{text-align:center;font:400 var(--fs-h3)/1.2 var(--ff-display);margin:0 0 1.6rem;}
.ob-pricing__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.3rem;}
.ob-pricing__card{background:var(--ob-ivory);border-radius:var(--radius);padding:1.6rem;text-align:center;}
.ob-pricing__card h3{font:600 .76rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ob-muted);margin:0 0 .8rem;}
.ob-pricing__val{font:400 2.4rem/1 var(--ff-display);color:var(--ob-brass);margin:0 0 .6rem;}
.ob-pricing__card p{font-size:.9rem;line-height:1.5;color:var(--ob-body);margin:0;}
.ob-pricing__card em{font-style:normal;color:var(--ob-muted);font-size:.84rem;}
.ob-quote{margin:1.8rem auto 0;max-width:60ch;text-align:center;border:0;padding:0;
  font:400 1.15rem/1.5 var(--ff-display);color:var(--ob-ink);font-style:italic;}

/* Conditions */
.ob-conditions{border-left:3px solid var(--ob-brass);padding:.2rem 0 .2rem 1.4rem;margin:0 0 2.6rem;}
.ob-conditions h3{font:600 .78rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ob-ink);margin:0 0 .7rem;}
.ob-conditions p{font-size:.92rem;line-height:1.65;color:var(--ob-body);}
.ob-conditions__legal{font-size:.82rem;color:var(--ob-muted);font-style:italic;}

/* Bandeau d'appel à l'action */
.ob-cta-band{text-align:center;background:var(--ob-charcoal);color:#fff;border-radius:var(--radius-lg);padding:2.8rem 1.6rem;margin:3rem 0 1rem;}
.ob-cta-band h2{font:400 var(--fs-h3)/1.2 var(--ff-display);color:#fff;margin:0 0 .6rem;}
.ob-cta-band p{color:rgba(255,255,255,.82);margin:0 0 1.2rem;}
.ob-cta-band .ob-btn{margin:.3rem;}
.ob-cta-band .ob-btn--ghost{border-color:rgba(255,255,255,.4);color:#fff;}
.ob-cta-band .ob-btn--ghost:hover{background:rgba(255,255,255,.1);}

/* Partenaires */
.ob-partners{display:grid;gap:1.8rem;margin:2rem 0;}
.ob-partner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:2rem;align-items:center;}
.ob-partner:nth-child(even){direction:rtl;}
.ob-partner:nth-child(even)>*{direction:ltr;}
.ob-partner__media{aspect-ratio:4/3;border-radius:var(--radius-lg);overflow:hidden;background:var(--ob-cream-2);}
.ob-partner__media{line-height:0;font-size:0;}
.ob-partner__media img{display:block;margin:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.ob-partner:hover .ob-partner__media img{transform:scale(1.04);}
.ob-partner__body h2{font:400 var(--fs-h3)/1.2 var(--ff-display);color:var(--ob-ink);margin:.3rem 0 .7rem;}
.ob-partner__body p{font-size:.96rem;line-height:1.7;color:var(--ob-body);margin:0;}
@media(max-width:760px){.ob-partner{grid-template-columns:1fr;gap:1rem;}.ob-partner:nth-child(even){direction:ltr;}}

/* Boutiques */
.ob-stores{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:2rem;margin:2rem 0;}
.ob-store-card{border:1px solid var(--ob-line);border-radius:var(--radius-lg);overflow:hidden;background:var(--ob-ivory);}
.ob-store-card__head{padding:1.7rem 1.6rem .4rem;}
.ob-store-card__head h2{font:400 var(--fs-h3)/1.2 var(--ff-display);color:var(--ob-ink);margin:.3rem 0 .6rem;}
.ob-store-card__head p{font-size:.94rem;line-height:1.6;color:var(--ob-body);margin:0;}
.ob-store-card__info{margin:1.2rem 0 0;padding:0 1.6rem;display:grid;gap:.9rem;}
.ob-store-card__info>div{display:grid;grid-template-columns:100px 1fr;gap:.8rem;align-items:start;}
.ob-store-card__info dt{font:600 .7rem/1.4 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--ob-muted);}
.ob-store-card__info dd{margin:0;font-size:.91rem;line-height:1.55;color:var(--ob-body);}
.ob-store-card__info dd em{font-style:normal;color:var(--ob-muted);}
.ob-store-card__info a{color:var(--ob-brass);}
.ob-store-card__note{margin:1.2rem 1.6rem;padding:.8rem 1rem;background:var(--ob-cream);border-radius:var(--radius);
  font-size:.88rem;font-style:italic;color:var(--ob-body);}
.ob-store-card__map{line-height:0;}
.ob-store-card__map iframe{display:block;filter:grayscale(.35);transition:filter .4s var(--ease);}
.ob-store-card__map:hover iframe{filter:none;}
@media(max-width:520px){.ob-store-card__info>div{grid-template-columns:1fr;gap:.15rem;}}

/* Pages légales : lisibilité */
.ob-entry h2{font:400 var(--fs-h3)/1.25 var(--ff-display);color:var(--ob-ink);margin:2.4rem 0 .8rem;}
.ob-entry h3{font:500 1.08rem/1.35 var(--ff-body);color:var(--ob-ink);margin:1.8rem 0 .6rem;}
.ob-entry p,.ob-entry li{line-height:1.75;color:var(--ob-body);}
.ob-entry ul,.ob-entry ol{padding-left:1.3rem;margin-bottom:1.2rem;}
.ob-entry li{margin-bottom:.4rem;}
.ob-entry a{color:var(--ob-brass);text-decoration:underline;text-underline-offset:2px;}
.ob-entry table{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.9rem;}
.ob-entry th,.ob-entry td{border:1px solid var(--ob-line);padding:.6rem .7rem;text-align:left;vertical-align:top;}
.ob-entry th{background:var(--ob-cream);font-weight:500;}
.ob-pros-intro,.ob-partners-intro,.ob-stores-intro{margin-bottom:1.6rem;}
/* =========================================================
   CORRECTIFS — header, lisibilité, mosaïque
   ========================================================= */

/* --- Header : plus de repli sur plusieurs lignes --- */
.ob-header__inner{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:1.2rem;}
.ob-nav-desktop>ul{flex-wrap:nowrap;gap:clamp(.7rem,1.25vw,1.6rem);}
.ob-nav-desktop>ul>li>a{white-space:nowrap;font-size:clamp(.7rem,.62rem + .2vw,.8rem);letter-spacing:.08em;}
.ob-nav-desktop .sub-menu a{white-space:normal;}
.ob-header__brand{justify-self:center;flex:0 0 auto;}
.ob-brand img,.ob-header__brand img{max-height:52px;width:auto;display:block;}
.ob-header__tools{gap:clamp(.7rem,1vw,1.15rem);}

/* Sous 1280px, la barre passe en mode compact : logo à gauche, burger */
@media(max-width:1150px){
  .ob-header__inner{grid-template-columns:auto 1fr auto;}
  .ob-nav-desktop{display:none;}
  .ob-burger{display:flex;justify-self:start;}
  .ob-header__brand{justify-self:center;}
}
@media(min-width:1151px){.ob-burger{display:none;}}

/* --- Méga-menu : ne pas dépasser la fenêtre --- */
.ob-mega{max-height:min(70vh,620px);overflow-y:auto;}

/* --- Page PROS : lisibilité sur fonds sombres --- */
/* La règle générique .ob-offer h2 écrasait la variante sombre : on repasse devant. */
.ob-offer.ob-offer--pro h2{color:#fff;}
.ob-offer.ob-offer--pro p{color:rgba(255,255,255,.86);}
.ob-offer.ob-offer--pro .ob-offer__tag{color:var(--ob-gold);}
.ob-offer.ob-offer--pro .ob-ticks li{color:rgba(255,255,255,.88);}
.ob-offer.ob-offer--pro .ob-offer__num{background:var(--ob-gold);color:var(--ob-ink);}

.ob-cta-band h2,.ob-cta-band p,.ob-cta-band a{color:#fff;}
.ob-cta-band p{color:rgba(255,255,255,.85);}
.ob-cta-band .ob-btn--brass{background:var(--ob-brass);color:#fff;border-color:var(--ob-brass);}
.ob-cta-band .ob-btn--brass:hover{background:var(--ob-brass-dark);border-color:var(--ob-brass-dark);}

/* --- Montants du modèle tarifaire --- */
.ob-pricing__card .ob-pricing__val{font-family:var(--ff-display);font-size:clamp(2.2rem,1.6rem + 1.6vw,3rem);
  line-height:1;color:var(--ob-brass);margin:0 0 .6rem;font-weight:600;}
.ob-pricing__card h3{color:var(--ob-muted);}

/* --- Étapes : le numéro ne doit pas se fondre --- */
.ob-steps__n{background:transparent;color:var(--ob-brass);font-weight:600;}
.ob-steps li{padding-top:1.9rem;}

/* --- Mosaïque d'accueil : pas de tuile sans visuel --- */
.ob-cat:not(:has(img)){display:none;}
/* =========================================================
   Méga-menu en icônes (remplace la version illustrée)
   ========================================================= */
.ob-mega{grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;padding:1.4rem 1.6rem 1.2rem !important;max-height:none;overflow:visible;}
.ob-mega .ob-mega__link{display:flex;align-items:center;gap:.85rem;padding:.7rem .8rem !important;border-radius:var(--radius);
  transition:background .2s var(--ease);}
.ob-mega .ob-mega__link:hover{background:var(--ob-cream);}
.ob-mega__ico{flex:0 0 46px;width:46px;height:46px;display:flex;align-items:center;justify-content:center;
  border-radius:50%;background:var(--ob-cream-2);color:var(--ob-brass);
  transition:background .25s var(--ease),color .25s var(--ease),transform .25s var(--ease);}
.ob-mega__link:hover .ob-mega__ico{background:var(--ob-brass);color:#fff;transform:translateY(-2px);}
.ob-mega__label{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;
  font:500 .93rem/1.25 var(--ff-body);color:var(--ob-ink);}
.ob-mega__count{font-size:.74rem;color:var(--ob-muted);}
.ob-mega__link:hover .ob-mega__label{color:var(--ob-brass);}
.ob-mega__all{grid-column:1/-1;border-top:1px solid var(--ob-line);padding-top:.9rem;margin-top:.5rem;text-align:center;}
@media(max-width:1400px){.ob-mega{grid-template-columns:repeat(3,minmax(0,1fr));}}

/* L'icône reste nette dans le panneau mobile */
.ob-nav-mobile .ob-mega__ico{flex-basis:34px;width:34px;height:34px;}
.ob-nav-mobile .ob-mega__ico svg{width:22px;height:22px;}
/* =========================================================
   CORRECTIFS DE CONFLIT — fiche produit, grille, images
   ========================================================= */

/* 1. Le thème transforme tout div.product en grille 2 colonnes :
      notre gabarit sur mesure gère sa propre mise en page. */
.single-product div.product.ob-single{display:block !important;grid-template-columns:none !important;gap:0 !important;}
.ob-single__top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2rem,4vw,3.5rem);align-items:start;padding-bottom:3rem;}
@media(max-width:900px){.ob-single__top{grid-template-columns:1fr;}}

/* 2. Grille produits : notre pas prime sur les 4 colonnes fixes du thème */
.woocommerce ul.products.ob-grid,
ul.products.ob-grid{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(250px,1fr)) !important;
  gap:2rem 1.4rem !important;margin:0 !important;padding:0;list-style:none;}
@media(max-width:520px){.woocommerce ul.products.ob-grid,ul.products.ob-grid{grid-template-columns:repeat(2,1fr) !important;gap:1.3rem .8rem !important;}}

/* 3. Les images doivent remplir leur cadre : on neutralise margin + height:auto */
.ob-card .ob-card__media{position:relative;aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius-lg);
  background:var(--ob-cream-2);margin:0 !important;display:block;}
.woocommerce ul.products li.product.ob-card a img,
.ob-card .ob-card__media img,
.ob-card img.ob-card__img{width:100% !important;height:100% !important;object-fit:cover !important;
  margin:0 !important;border-radius:0 !important;display:block;max-width:none;}
.ob-card__link{display:block;width:100%;height:100%;}
.ob-card__body{padding-top:.85rem;}

/* 4. Galerie de la fiche : le cadre ne doit pas se déformer */
.ob-gallery__stage{position:relative;aspect-ratio:4/5;border-radius:var(--radius-lg);overflow:hidden;background:var(--ob-cream-2);}
.ob-gallery__stage img{width:100% !important;height:100% !important;object-fit:cover !important;margin:0 !important;border-radius:0 !important;}
.ob-gallery__thumb img{width:100% !important;height:100% !important;object-fit:cover !important;margin:0 !important;border-radius:0 !important;}

/* =========================================================
   HEADER FLOTTANT
   ========================================================= */
.ob-header--float{position:sticky;top:0;z-index:120;background:rgba(255,255,255,.86);
  backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid transparent;transition:background .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);}
.ob-header--float.is-stuck{background:rgba(255,255,255,.94);box-shadow:0 6px 28px rgba(30,30,28,.08);border-bottom-color:var(--ob-line);}
.ob-header--float .ob-header__inner{min-height:76px;transition:min-height .3s var(--ease);}
.ob-header--float.is-stuck .ob-header__inner{min-height:64px;}

/* Marque à gauche, navigation centrée, outils à droite */
.ob-header__inner{grid-template-columns:auto minmax(0,1fr) auto;gap:1.4rem;align-items:center;}
.ob-header__brand{justify-self:start;}
.ob-header__nav{justify-self:center;}
.ob-header__tools{justify-self:end;}
.ob-nav-desktop>ul{justify-content:center;}

/* Logo : dimension maîtrisée, jamais déformé */
.ob-brand{display:inline-flex;align-items:center;gap:.6rem;line-height:0;}
.ob-brand img,.ob-header__brand img,.custom-logo{height:auto !important;max-height:56px !important;width:auto !important;
  max-width:170px !important;object-fit:contain;display:block;transition:max-height .3s var(--ease);}
.ob-header--float.is-stuck .ob-brand img,
.ob-header--float.is-stuck .custom-logo{max-height:46px !important;}

@media(max-width:1150px){
  .ob-header__inner{grid-template-columns:auto 1fr auto;}
  .ob-header__brand{justify-self:center;}
}
/* =========================================================
   SLIDER MEILLEURES VENTES
   ========================================================= */
.ob-rev{position:relative;width:100%;height:clamp(460px,68vh,720px);overflow:hidden;background:var(--ob-charcoal);}
.ob-rev__track{position:absolute;inset:0;}
.ob-rev__slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .9s var(--ease),visibility .9s;}
.ob-rev__slide.is-active{opacity:1;visibility:visible;}

.ob-rev__media{position:absolute;inset:0;overflow:hidden;}
.ob-rev__media img{width:100%;height:100%;object-fit:cover;object-position:center;
  transform:scale(1.08);transition:transform 7.5s linear;}
.ob-rev__slide.is-active .ob-rev__media img{transform:scale(1);}

/* Voile de lisibilité : dégradé latéral + assombrissement global */
.ob-rev__veil{position:absolute;inset:0;
  background:
    linear-gradient(90deg, rgba(20,20,19,.86) 0%, rgba(20,20,19,.66) 38%, rgba(20,20,19,.18) 68%, rgba(20,20,19,.05) 100%),
    linear-gradient(180deg, rgba(20,20,19,.30) 0%, rgba(20,20,19,0) 35%, rgba(20,20,19,.35) 100%);}
@media(max-width:760px){
  .ob-rev__veil{background:linear-gradient(180deg, rgba(20,20,19,.35) 0%, rgba(20,20,19,.72) 55%, rgba(20,20,19,.88) 100%);}
}

.ob-rev__content{position:absolute;inset:0;display:flex;align-items:center;z-index:2;}
.ob-rev__inner{max-width:min(560px,60%);color:#fff;}
@media(max-width:760px){.ob-rev__inner{max-width:100%;text-align:center;margin-top:auto;padding-bottom:3.5rem;}
  .ob-rev__content{align-items:flex-end;}}

.ob-rev__eyebrow{display:inline-flex;align-items:center;gap:.6rem;font:600 .72rem/1 var(--ff-eyebrow);
  letter-spacing:.18em;text-transform:uppercase;color:var(--ob-gold);margin-bottom:1rem;
  opacity:0;transform:translateY(14px);}
.ob-rev__eyebrow em{font-style:normal;color:rgba(255,255,255,.62);letter-spacing:.08em;
  padding-left:.6rem;border-left:1px solid rgba(255,255,255,.28);}
.ob-rev__title{font:400 clamp(2rem,1.3rem + 2.6vw,3.6rem)/1.08 var(--ff-display);color:#fff;margin:0 0 .5rem;
  text-shadow:0 2px 24px rgba(0,0,0,.35);opacity:0;transform:translateY(20px);}
.ob-rev__cat{font:500 .82rem/1 var(--ff-body);letter-spacing:.06em;color:rgba(255,255,255,.7);margin:0 0 1rem;
  opacity:0;transform:translateY(20px);}
.ob-rev__price{font:500 1.35rem/1 var(--ff-body);color:#fff;margin:0 0 1.8rem;
  opacity:0;transform:translateY(20px);}
.ob-rev__price del{color:rgba(255,255,255,.5);font-size:1rem;margin-right:.4rem;}
.ob-rev__price ins{text-decoration:none;color:var(--ob-gold);}
.ob-rev__price .woocommerce-Price-amount{white-space:nowrap;}
.ob-rev__cta{display:flex;gap:.7rem;flex-wrap:wrap;opacity:0;transform:translateY(20px);}
@media(max-width:760px){.ob-rev__cta{justify-content:center;}}
.ob-rev__cta .ob-btn--light{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.45);color:#fff;
  backdrop-filter:blur(6px);}
.ob-rev__cta .ob-btn--light:hover{background:rgba(255,255,255,.22);}

/* Entrée en cascade */
.ob-rev__slide.is-active .ob-rev__eyebrow{animation:ob-rev-in .7s var(--ease) .15s forwards;}
.ob-rev__slide.is-active .ob-rev__title{animation:ob-rev-in .8s var(--ease) .26s forwards;}
.ob-rev__slide.is-active .ob-rev__cat{animation:ob-rev-in .8s var(--ease) .36s forwards;}
.ob-rev__slide.is-active .ob-rev__price{animation:ob-rev-in .8s var(--ease) .44s forwards;}
.ob-rev__slide.is-active .ob-rev__cta{animation:ob-rev-in .8s var(--ease) .54s forwards;}
@keyframes ob-rev-in{to{opacity:1;transform:none;}}

/* Navigation */
.ob-rev__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:46px;height:46px;border-radius:50%;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);
  transition:background .25s var(--ease),transform .25s var(--ease);}
.ob-rev__nav:hover{background:rgba(255,255,255,.28);}
.ob-rev__nav--prev{left:clamp(.8rem,2vw,2rem);transform:translateY(-50%) rotate(180deg);}
.ob-rev__nav--next{right:clamp(.8rem,2vw,2rem);}
@media(max-width:760px){.ob-rev__nav{display:none;}}

.ob-rev__dots{position:absolute;left:0;right:0;bottom:1.6rem;z-index:4;display:flex;justify-content:center;gap:.5rem;}
.ob-rev__dot{width:46px;height:20px;background:none;border:0;cursor:pointer;padding:8px 0;}
.ob-rev__dotbar{display:block;height:3px;border-radius:2px;background:rgba(255,255,255,.32);position:relative;overflow:hidden;}
.ob-rev__dotbar::after{content:"";position:absolute;inset:0;width:0;background:var(--ob-gold);}
.ob-rev__dot.is-active .ob-rev__dotbar::after{animation:ob-rev-bar 7s linear forwards;}
@keyframes ob-rev-bar{to{width:100%;}}
.ob-rev.is-paused .ob-rev__dot.is-active .ob-rev__dotbar::after{animation-play-state:paused;}

@media(prefers-reduced-motion:reduce){
  .ob-rev__media img{transition:none;transform:none;}
  .ob-rev__slide.is-active *{animation:none !important;opacity:1 !important;transform:none !important;}
}

/* =========================================================
   FILTRES : sous-catégories repliées
   ========================================================= */
.ob-fcat__toggle{display:flex;align-items:center;gap:.35rem;background:none;border:0;cursor:pointer;
  padding:.15rem 0 .35rem 1.9rem;font:400 .78rem/1 var(--ff-body);color:var(--ob-muted);}
.ob-fcat__toggle:hover{color:var(--ob-brass);}
.ob-fcat__chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);transition:transform .22s var(--ease);margin-bottom:2px;}
.ob-fcat.is-open .ob-fcat__chevron{transform:rotate(-135deg);margin-bottom:-2px;}
.ob-fcat__kids{display:none;padding-left:1.35rem;margin:.1rem 0 .5rem;border-left:1px solid var(--ob-line);}
.ob-fcat.is-open .ob-fcat__kids{display:block;}
/* Mosaïque d'univers : recadrage systématique, jamais de déformation */
.ob-cat{position:relative;overflow:hidden;border-radius:var(--radius-lg);}
.ob-cat img,.ob-cat picture img{width:100% !important;height:100% !important;object-fit:cover !important;
  object-position:center !important;margin:0 !important;display:block;border-radius:0 !important;}
.ob-cat__label{position:absolute;left:1.1rem;bottom:1rem;z-index:2;}
/* =========================================================
   PAGES ÉDITORIALES PLEINE LARGEUR
   ========================================================= */
.ob-phero{position:relative;min-height:clamp(320px,46vh,480px);display:flex;align-items:flex-end;
  background:var(--ob-cream);overflow:hidden;}
.ob-phero.has-media{background:var(--ob-charcoal);}
.ob-phero__media{position:absolute;inset:0;}
.ob-phero__media img{width:100%;height:100%;object-fit:cover;object-position:center;}
.ob-phero__veil{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,20,19,.42) 0%,rgba(20,20,19,.18) 40%,rgba(20,20,19,.78) 100%);}
.ob-phero__content{position:relative;z-index:2;width:100%;padding:3rem 0 2.6rem;}
.ob-phero.has-media .ob-phero__content{color:#fff;}
.ob-phero.has-media .ob-breadcrumb,
.ob-phero.has-media .ob-breadcrumb a{color:rgba(255,255,255,.78);}
.ob-phero.has-media .ob-breadcrumb a:hover{color:#fff;}
.ob-phero .ob-eyebrow{display:block;margin:.9rem 0 .5rem;color:var(--ob-gold);}
.ob-phero:not(.has-media) .ob-eyebrow{color:var(--ob-brass);}
.ob-phero__title{font-family:var(--ff-display);font-weight:400;font-size:clamp(2.2rem,1.5rem + 2.8vw,4rem);line-height:1.05;margin:0;color:var(--ob-ink);text-shadow:none;}
.ob-phero.has-media .ob-phero__title{color:#fff;text-shadow:0 2px 26px rgba(0,0,0,.32);}
.ob-phero__lead{max-width:56ch;margin:.9rem 0 0;font-size:1.05rem;line-height:1.6;color:var(--ob-body);}
.ob-phero.has-media .ob-phero__lead{color:rgba(255,255,255,.85);}

/* Contenu : chaque bloc gère sa propre largeur */
.ob-pfull{padding:0 0 4rem;}
.ob-entry--full{max-width:none;}
.ob-entry--full > *{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter);}

/* Les blocs qui doivent respirer en pleine largeur */
.ob-entry--full > .ob-offers,
.ob-entry--full > .ob-benefits,
.ob-entry--full > .ob-partners,
.ob-entry--full > .ob-stores,
.ob-entry--full > .ob-steps,
.ob-entry--full > .ob-compare{max-width:var(--wrap-wide);}

/* Blocs à fond plein : ils sortent de la grille et prennent toute la largeur */
.ob-entry--full > .ob-cta-band,
.ob-entry--full > .ob-pricing{max-width:none;width:100vw;margin-left:50%;transform:translateX(-50%);
  border-radius:0;padding-inline:var(--gutter);}
.ob-entry--full > .ob-cta-band{margin-block:4rem 0;padding-block:4.5rem;}
.ob-entry--full > .ob-pricing{margin-block:3rem;padding-block:4rem;}
.ob-entry--full > .ob-pricing > *,
.ob-entry--full > .ob-cta-band > *{max-width:var(--wrap);margin-inline:auto;}

/* Rythme vertical */
.ob-entry--full > * + *{margin-top:2.2rem;}
.ob-entry--full > .ob-h2-center{margin-top:4rem;}
.ob-pros-intro,.ob-partners-intro,.ob-stores-intro{padding-top:3.2rem;}
.ob-entry--full .ob-lead{font-size:clamp(1.08rem,1rem + .5vw,1.35rem);line-height:1.6;color:var(--ob-body);max-width:64ch;}

/* Grilles plus généreuses en pleine largeur */
.ob-entry--full .ob-benefits{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;}
.ob-entry--full .ob-stores{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:2.4rem;}
.ob-entry--full .ob-steps{gap:2rem;}

/* Page Contact : mise en avant des coordonnées */
.page-contact .ob-store-card{border:0;background:var(--ob-cream);}
.page-contact .ob-store-card__head h2{font-size:var(--fs-h3);}

@media(max-width:760px){
  .ob-phero{min-height:280px;}
  .ob-phero__content{padding:2.2rem 0 2rem;}
  .ob-entry--full > .ob-cta-band{padding-block:3rem;}
}
/* =========================================================
   LE COIN DES PROS — deux offres en onglets
   ========================================================= */
.ob-pro{--pro-ink:#0E0E0D;}

/* Bandeau + onglets */
.ob-pro__intro{background:var(--pro-ink);color:#fff;padding:3.4rem 0 0;text-align:center;}
.ob-pro__intro .ob-breadcrumb,.ob-pro__intro .ob-breadcrumb a{color:rgba(255,255,255,.5);justify-content:center;}
.ob-pro__intro .ob-breadcrumb a:hover{color:#fff;}
.ob-pro__intro h1{font:400 clamp(1.9rem,1.2rem + 2.6vw,3.4rem)/1.12 var(--ff-display);color:#fff;margin:1.2rem 0 .7rem;}
.ob-pro__intro h1 em{font-style:italic;color:var(--ob-gold);}
.ob-pro__sub{max-width:52ch;margin:0 auto 2.4rem;color:rgba(255,255,255,.62);font-size:1rem;}

.ob-pro__tabs{display:flex;justify-content:center;align-items:stretch;gap:0;max-width:var(--wrap);
  margin-inline:auto;padding-inline:var(--gutter);}
.ob-pro__tab{flex:1;max-width:420px;background:none;border:0;border-bottom:3px solid transparent;
  padding:1.4rem 1rem 1.2rem;cursor:pointer;text-align:center;transition:border-color .3s var(--ease);
  display:flex;flex-direction:column;align-items:center;gap:.3rem;font-family:var(--ff-body);}
.ob-pro__tabsep{width:1px;background:rgba(255,255,255,.12);margin:1.2rem 0;}
.ob-pro__tabnum{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;
  font:600 .88rem/1 var(--ff-display);background:rgba(214,172,94,.16);color:var(--ob-gold);
  border:1.5px solid rgba(214,172,94,.5);transition:all .3s var(--ease);}
.ob-pro__tabtitle{font-size:clamp(.86rem,.8rem + .3vw,1rem);font-weight:600;color:rgba(255,255,255,.58);
  line-height:1.3;transition:color .3s var(--ease);}
.ob-pro__tabsub{font-size:.78rem;color:rgba(255,255,255,.34);transition:color .3s var(--ease);}
.ob-pro__tabtag{display:inline-block;font:600 .62rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;
  padding:.25rem .5rem;border-radius:2px;margin-top:.35rem;background:rgba(214,172,94,.14);color:rgba(214,172,94,.62);
  transition:all .3s var(--ease);}
.ob-pro__tab.is-active{border-bottom-color:var(--ob-gold);}
.ob-pro__tab.is-active .ob-pro__tabnum{background:var(--ob-gold);color:var(--pro-ink);border-color:var(--ob-gold);}
.ob-pro__tab.is-active .ob-pro__tabtitle{color:#fff;}
.ob-pro__tab.is-active .ob-pro__tabsub{color:rgba(255,255,255,.68);}
.ob-pro__tab.is-active .ob-pro__tabtag{background:rgba(214,172,94,.22);color:var(--ob-gold);}
.ob-pro__tab:focus-visible{outline:2px solid var(--ob-gold);outline-offset:-2px;}
@media(max-width:620px){
  .ob-pro__tabs{flex-direction:column;gap:.4rem;}
  .ob-pro__tabsep{display:none;}
  .ob-pro__tab{max-width:none;border-bottom:0;border-left:3px solid transparent;align-items:flex-start;text-align:left;}
  .ob-pro__tab.is-active{border-left-color:var(--ob-gold);background:rgba(255,255,255,.04);}
}

.ob-pro__panel{display:none;}
.ob-pro__panel.is-active{display:block;animation:ob-pro-fade .45s var(--ease);}
@keyframes ob-pro-fade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}

/* Volet 1 */
.ob-pro__lead{text-align:center;max-width:62ch;padding-top:3.4rem;}
.ob-pro__lead h2{font:400 clamp(1.5rem,1.1rem + 1.6vw,2.3rem)/1.2 var(--ff-display);color:var(--ob-ink);margin:0 0 .8rem;}
.ob-pro__lead p{color:var(--ob-body);line-height:1.65;margin:0;}
.ob-pro__pills{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:1.8rem auto 2.4rem;}
.ob-pill{display:inline-flex;align-items:center;gap:.4rem;background:var(--ob-cream);border:1px solid rgba(184,155,70,.28);
  border-radius:100px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;color:var(--ob-ink);white-space:nowrap;}
.ob-pill b{color:var(--ob-brass-dark);font-weight:700;}

/* Carrousel */
.ob-carousel{position:relative;padding-bottom:1rem;}
.ob-carousel__bar{height:2px;background:rgba(0,0,0,.07);border-radius:2px;overflow:hidden;
  max-width:var(--wrap);margin:0 auto 1.2rem;}
.ob-carousel__bar span{display:block;height:100%;width:0;background:var(--ob-brass);border-radius:2px;}
.ob-carousel__track{display:flex;gap:1.4rem;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:.4rem calc(50vw - var(--wrap)/2 + var(--gutter));scrollbar-width:none;cursor:grab;
  -webkit-overflow-scrolling:touch;}
@media(max-width:1340px){.ob-carousel__track{padding-inline:var(--gutter);}}
.ob-carousel__track::-webkit-scrollbar{display:none;}
.ob-carousel__track.is-dragging{cursor:grabbing;scroll-snap-type:none;}
.ob-carousel__card{flex:0 0 268px;scroll-snap-align:start;background:var(--ob-cream);border-radius:var(--radius-lg);
  overflow:hidden;border:1px solid var(--ob-line);transition:box-shadow .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease);}
@media(min-width:768px){.ob-carousel__card{flex-basis:300px;}}
.ob-carousel__card.is-current{border-color:rgba(184,155,70,.42);box-shadow:0 10px 34px rgba(184,155,70,.16);}
@media(hover:hover){.ob-carousel__card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}}
.ob-carousel__media{background:#fff;}
.ob-carousel__media img{width:100%;aspect-ratio:1/1;object-fit:contain;display:block;padding:1.2rem;}
.ob-carousel__body{padding:1.1rem 1.2rem 1.4rem;}
.ob-carousel__body h3{font:500 1.02rem/1.3 var(--ff-body);color:var(--ob-ink);margin:0 0 .45rem;}
.ob-carousel__body p{font-size:.89rem;line-height:1.55;color:var(--ob-body);margin:0;}
.ob-carousel__controls{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin-top:1.4rem;}
.ob-carousel__btn{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--ob-brass);background:none;
  color:var(--ob-brass);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s var(--ease);}
.ob-carousel__btn:hover{background:var(--ob-brass);color:#fff;}
.ob-carousel__btn:active{transform:scale(.93);}
.ob-carousel__btn[data-carousel-prev]{transform:rotate(180deg);}
.ob-carousel__btn[data-carousel-prev]:active{transform:rotate(180deg) scale(.93);}
.ob-carousel__dots{display:flex;gap:.45rem;align-items:center;}
.ob-carousel__dot{width:8px;height:8px;border-radius:50%;background:rgba(0,0,0,.16);border:0;cursor:pointer;padding:0;
  transition:all .25s var(--ease);}
.ob-carousel__dot.is-active{background:var(--ob-brass);width:24px;border-radius:4px;}

.ob-pro__cta{text-align:center;padding:2.6rem 0 4rem;}
.ob-pro__ctahint{max-width:56ch;margin:0 auto 1.2rem;color:var(--ob-body);font-size:.95rem;}
.ob-pro__ctabtns{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;}

/* Volet 2 — hero */
.ob-pro__hero{position:relative;min-height:68vh;display:flex;align-items:center;padding:4.5rem 0;color:#fff;
  background-image:linear-gradient(180deg,rgba(10,10,9,.62) 0%,rgba(10,10,9,.84) 100%),var(--fond,none);
  background-size:cover;background-position:center;background-color:var(--pro-ink);}
.ob-pro__eyebrow{display:inline-block;font:600 .7rem/1 var(--ff-eyebrow);letter-spacing:.2em;text-transform:uppercase;
  color:var(--ob-gold);margin-bottom:1rem;}
.ob-pro__hero h2{font:400 clamp(1.9rem,1.2rem + 3vw,3.8rem)/1.06 var(--ff-display);color:#fff;margin:0 0 1.1rem;}
.ob-pro__hero h2 em{font-style:italic;color:var(--ob-gold);}
.ob-pro__hero p{max-width:58ch;font-size:1.02rem;line-height:1.65;color:rgba(255,255,255,.85);margin:0 0 2rem;}
.ob-pro__herobtns{display:flex;gap:.6rem;flex-wrap:wrap;}
.ob-pro__herobtns .ob-btn--light{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.42);color:#fff;
  backdrop-filter:blur(6px);}
.ob-pro__herobtns .ob-btn--light:hover{background:rgba(255,255,255,.2);}
.ob-pro__stats{margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.18);
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.4rem;}
.ob-pro__stats b{display:block;font:600 clamp(1.7rem,1.2rem + 1.6vw,2.4rem)/1 var(--ff-display);color:var(--ob-gold);margin-bottom:.25rem;}
.ob-pro__stats span{font-size:.88rem;color:rgba(255,255,255,.75);}

.ob-pro__rc{background:rgba(184,155,70,.09);border-top:1px solid rgba(184,155,70,.22);
  border-bottom:1px solid rgba(184,155,70,.22);padding:1.1rem 0;}
.ob-pro__rc p{margin:0;font-size:.87rem;line-height:1.6;color:var(--ob-body);}
.ob-pro__rc strong{color:var(--ob-brass-dark);}

.ob-pro__h2{text-align:center;font:400 clamp(1.6rem,1.15rem + 1.8vw,2.6rem)/1.18 var(--ff-display);margin:0 0 2rem;}

.ob-pro__compare{padding:4rem 0;background:var(--ob-cream);}
.ob-pro__comparegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.4rem;}
.ob-pro__card{background:#fff;border-radius:var(--radius-lg);padding:1.8rem;box-shadow:var(--shadow-sm);}
.ob-pro__card--ko{border-top:3px solid var(--ob-terracotta);}
.ob-pro__card--ok{border-top:3px solid var(--ob-brass);}
.ob-pro__card h3{font:500 1.15rem/1.3 var(--ff-body);color:var(--ob-ink);margin:0 0 1rem;}
.ob-pro__card ul{list-style:none;padding:0;margin:0;}
.ob-pro__card li{position:relative;padding:.7rem 0 .7rem 1.8rem;font-size:.94rem;line-height:1.45;
  border-bottom:1px solid var(--ob-line);color:var(--ob-body);}
.ob-pro__card li:last-child{border-bottom:0;}
.ob-pro__card--ko li::before{content:"×";position:absolute;left:.2rem;top:.62rem;color:var(--ob-terracotta);font-size:1.15rem;font-weight:600;}
.ob-pro__card--ok li::before{content:"✓";position:absolute;left:.2rem;top:.7rem;color:var(--ob-brass);font-weight:600;}

.ob-pro__process{background:var(--pro-ink);padding:4.5rem 0;}
.ob-pro__process .ob-pro__h2{color:#fff;}
.ob-pro__steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;}
.ob-pro__steps li{display:flex;flex-direction:column;gap:.6rem;}
.ob-pro__steps span{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--ob-gold);color:var(--ob-gold);
  display:flex;align-items:center;justify-content:center;font:600 .82rem/1 var(--ff-body);}
.ob-pro__steps h3{font:500 1.08rem/1.3 var(--ff-body);color:#fff;margin:0;}
.ob-pro__steps p{font-size:.9rem;line-height:1.6;color:rgba(255,255,255,.75);margin:0;}

.ob-pro__pricing{padding:4.5rem 0;}
.ob-pro__pricegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.4rem;}
.ob-pro__price{background:var(--ob-cream);border:1px solid var(--ob-line);border-radius:var(--radius-lg);
  padding:2.2rem 1.6rem;text-align:center;}
.ob-pro__price h3{font:600 .74rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ob-muted);margin:0 0 1rem;}
.ob-pro__val{font:600 clamp(2.4rem,1.8rem + 2vw,3.4rem)/1 var(--ff-display);color:var(--ob-brass-dark);margin:0 0 .8rem;}
.ob-pro__price p{font-size:.94rem;line-height:1.5;color:var(--ob-body);margin:0;}
.ob-pro__price small{font-size:.83rem;color:var(--ob-muted);}
.ob-pro__quote{margin:2rem auto 0;max-width:60ch;text-align:center;border:0;padding:1.4rem 1.6rem;
  background:var(--ob-brass);color:#fff;border-radius:var(--radius);
  font:400 1.05rem/1.5 var(--ff-display);font-style:italic;}
.ob-pro__legal{text-align:center;margin-top:1rem;font-size:.82rem;color:var(--ob-muted);font-style:italic;}

@media(prefers-reduced-motion:reduce){
  .ob-pro__panel.is-active{animation:none;}
  .ob-carousel__bar span{transition:none !important;}
}

/* =========================================================
   MÉGA-MENU : texte de présentation
   ========================================================= */
.ob-mega__label{gap:.15rem;}
.ob-mega__name{font:500 .95rem/1.25 var(--ff-body);color:var(--ob-ink);}
.ob-mega__desc{font-size:.79rem;line-height:1.4;color:var(--ob-body);}
.ob-mega__count{font-size:.72rem;color:var(--ob-muted);margin-top:.1rem;}
.ob-mega .ob-mega__link{align-items:flex-start;gap:.9rem;}
.ob-mega__ico{margin-top:.15rem;}
.ob-mega__foot{grid-column:1/-1;border-top:1px solid var(--ob-line);margin-top:.8rem;padding-top:1.1rem;
  display:flex;align-items:center;justify-content:space-between;gap:1.4rem 2rem;flex-wrap:wrap;}
.ob-mega__pitch{flex:1 1 300px;min-width:0;max-width:44%;}
.ob-mega__pitch strong{display:block;font:400 1.05rem/1.3 var(--ff-display);color:var(--ob-ink);margin-bottom:.25rem;}
.ob-mega__pitch span{display:block;font-size:.82rem;line-height:1.5;color:var(--ob-body);}
.ob-mega__links{display:flex;align-items:center;gap:1rem;flex-wrap:nowrap;flex:none;}
.ob-mega__cta{display:inline-flex;align-items:center;gap:.4rem;font:600 .76rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:#fff !important;
  background:var(--ob-brass);padding:.85rem 1.25rem;border-radius:100px;transition:background .2s var(--ease);white-space:nowrap;}
.ob-mega__cta:hover{background:var(--ob-brass-dark);}
.ob-mega__side{font-size:.84rem;color:var(--ob-body);border-bottom:1px solid var(--ob-line-2);padding-bottom:2px;white-space:nowrap;transition:color .2s var(--ease),border-color .2s var(--ease);}
.ob-mega__side:hover{color:var(--ob-brass);border-color:var(--ob-brass);}
@media(max-width:900px){.ob-mega__foot{flex-direction:column;align-items:flex-start;}}
/* =========================================================
   Le slider tient désormais le rôle de hero
   ========================================================= */
.home .ob-rev{height:clamp(540px,84vh,880px);margin-top:calc(var(--header-h) * -1);}
.home .ob-rev__content{padding-top:var(--header-h);}
.home .ob-rev__title{font-size:clamp(2.3rem,1.5rem + 3.2vw,4.4rem);}
.home .ob-rev__inner{max-width:min(620px,62%);}
@media(max-width:760px){
  .home .ob-rev{height:clamp(480px,76vh,680px);margin-top:0;}
  .home .ob-rev__content{padding-top:0;}
  .home .ob-rev__inner{max-width:100%;}
}

/* L'en-tête se pose sur le visuel tant qu'on n'a pas défilé */
.home .ob-header--float:not(.is-stuck){background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;
  border-bottom-color:transparent;}
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop > ul > li > a,
.home .ob-header--float:not(.is-stuck) .ob-tool{color:#fff;}
.home .ob-header--float:not(.is-stuck) .ob-burger span{background:#fff;}

.home .ob-header--float:not(.is-stuck) .ob-nav-desktop>ul>li>a::after{background:var(--ob-gold);}

/* Le bandeau garanties se cale juste sous le hero */
.home .ob-usp{border-top:0;margin-top:0;}
/* =========================================================
   HEADER : îlot flottant au défilement
   ========================================================= */

/* Le logo garde ses couleurs : son disque blanc suffit à le détacher. */
.home .ob-header--float:not(.is-stuck) .ob-brand img,
.home .ob-header--float:not(.is-stuck) .custom-logo{filter:none;
  filter:drop-shadow(0 2px 10px rgba(0,0,0,.28));}

/* Au repos : la barre reste pleine largeur. */
.ob-header--float{padding-block:0;transition:padding .32s var(--ease),background .3s var(--ease),
  box-shadow .3s var(--ease),border-color .3s var(--ease);}
.ob-header--float > .ob-wrap{transition:max-width .32s var(--ease),background .32s var(--ease),
  border-radius .32s var(--ease),box-shadow .32s var(--ease),border-color .32s var(--ease),padding .32s var(--ease);
  border:1px solid transparent;}

/* Au défilement : l'en-tête se détache en îlot centré. */
.ob-header--float.is-stuck{background:transparent !important;backdrop-filter:none;-webkit-backdrop-filter:none;
  box-shadow:none;border-bottom-color:transparent;padding-block:12px;}
.ob-header--float.is-stuck > .ob-wrap{
  max-width:min(1360px, calc(100% - 2 * var(--gutter)));
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(16px);
  -webkit-backdrop-filter:saturate(180%) blur(16px);
  border-color:rgba(231,224,214,.9);
  border-radius:100px;
  box-shadow:0 10px 38px rgba(30,30,28,.13);
  padding-inline:clamp(1.2rem,2.2vw,2rem);
}
.ob-header--float.is-stuck .ob-header__inner{min-height:60px;}

/* La surcouche de recherche suit l'îlot. */
.ob-header--float.is-stuck .ob-search-layer{top:calc(100% - 6px);border-radius:var(--radius-lg);
  max-width:min(1360px, calc(100% - 2 * var(--gutter)));margin-inline:auto;left:0;right:0;
  border:1px solid var(--ob-line);box-shadow:0 14px 44px rgba(30,30,28,.14);}

/* Le méga-menu reste aligné sur l'îlot. */
.ob-header--float.is-stuck .ob-mega{border-radius:var(--radius-lg);}

@media(max-width:1150px){
  .ob-header--float.is-stuck{padding-block:8px;}
  .ob-header--float.is-stuck > .ob-wrap{border-radius:var(--radius-lg);padding-inline:1rem;}
}
/* =========================================================
   CORRECTIFS — notification, sous-menus sur fond transparent
   ========================================================= */

/* 1. La bulle de notification se masquait par translation :
      vide, sa hauteur était trop faible pour sortir de l'écran. */
.ob-toast{opacity:0;visibility:hidden;pointer-events:none;
  transform:translate(-50%,16px) !important;
  transition:opacity .3s var(--ease),transform .35s var(--ease),visibility .35s;}
.ob-toast.is-on{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0) !important;}
.ob-toast:empty{display:none;}

/* 2. Les sous-menus gardent leur texte sombre, même quand
      l'en-tête est transparent au-dessus du hero. */
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .sub-menu a,
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .sub-menu .ob-mega__name,
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__link{color:var(--ob-ink) !important;}
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__desc{color:var(--ob-body) !important;}
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__count{color:var(--ob-muted) !important;}
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__pitch strong{color:var(--ob-ink) !important;}
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__pitch span,
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__side{color:var(--ob-body) !important;}
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__cta{color:#fff !important;}
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .sub-menu a:hover,
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__link:hover .ob-mega__name{color:var(--ob-brass) !important;}
/* Le panneau reste opaque, quel que soit l'état de l'en-tête. */
.ob-nav-desktop .sub-menu{background:var(--ob-ivory);}

/* 3. Aucun débordement horizontal : 100vw inclut la barre de défilement. */
.ob-entry--full > .ob-cta-band,
.ob-entry--full > .ob-pricing{width:auto;max-width:none;margin-left:0;transform:none;
  padding-inline:max(var(--gutter), calc((100% - var(--wrap)) / 2));}
/* =========================================================
   Débordement horizontal SANS casser position:sticky
   ---------------------------------------------------------
   overflow-x:hidden sur html/body crée un conteneur de
   défilement : l'en-tête sticky s'y accroche au lieu de la
   fenêtre et cesse de coller. « clip » borne le débordement
   sans créer ce conteneur.
   ========================================================= */
body{overflow-x:hidden;overflow-x:clip;}

/* Filet de sécurité pour les navigateurs sans support de « clip » :
   on borne les blocs susceptibles de déborder plutôt que la page. */
@supports not (overflow-x: clip) {
  .ob-rev,.ob-phero,.ob-pro__hero,.ob-carousel{max-width:100%;overflow-x:hidden;}
}

/* L'en-tête doit rester collant en toutes circonstances. */
.ob-header--float{position:-webkit-sticky;position:sticky;top:0;z-index:120;}
/* =========================================================
   MÉGA-MENU : aligné sur la largeur de l'îlot d'en-tête
   ---------------------------------------------------------
   Le panneau est positionné par rapport à l'en-tête (sticky).
   On lui donne la même largeur que l'îlot et on le centre par
   marges automatiques — pas de transform, qui entrerait en
   conflit avec l'animation d'ouverture du sous-menu.
   ========================================================= */
.ob-nav-desktop .ob-mega{
  left:0 !important;
  right:0 !important;
  width:min(1360px, calc(100% - 2 * var(--gutter)));
  max-width:none;
  margin-inline:auto;
  border-radius:var(--radius-lg);
  box-shadow:0 16px 46px rgba(30,30,28,.15);
  border:1px solid var(--ob-line);
  padding:1.5rem 1.8rem 1.3rem !important;
}

/* Quatre univers par ligne dans cette largeur, trois en dessous. */
.ob-nav-desktop .ob-mega{grid-template-columns:repeat(4,minmax(0,1fr));}
@media(max-width:1240px){.ob-nav-desktop .ob-mega{grid-template-columns:repeat(3,minmax(0,1fr));}}

/* Au défilement, le panneau se cale juste sous l'îlot. */
.ob-header--float.is-stuck .ob-nav-desktop .ob-mega{top:calc(100% - 8px);}
/* =========================================================
   FICHE PRODUIT — version vivante
   ========================================================= */
.ob-single__top{align-items:start;}

/* --- Galerie : drapeaux, compteur --- */
.ob-gallery__flags{position:absolute;top:1rem;left:1rem;z-index:4;display:flex;flex-direction:column;gap:.4rem;align-items:flex-start;}
.ob-flag{display:inline-block;font:600 .68rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;
  padding:.45rem .7rem;border-radius:100px;color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.14);}
.ob-flag--sale{background:var(--ob-terracotta);}
.ob-flag--new{background:var(--ob-brass);}
.ob-flag--out{background:var(--ob-muted);}
.ob-gallery__counter{position:absolute;right:1rem;bottom:1rem;z-index:4;
  background:rgba(30,30,28,.62);color:#fff;backdrop-filter:blur(6px);
  font:500 .78rem/1 var(--ff-body);padding:.4rem .7rem;border-radius:100px;}
.ob-gallery__counter b{color:var(--ob-gold);font-weight:600;}
.ob-gallery__thumb{position:relative;}
.ob-gallery__thumb.is-active::after{content:"";position:absolute;inset:0;border:2px solid var(--ob-brass);
  border-radius:var(--radius);pointer-events:none;}

/* --- Colonne d'achat : encadrée, plus présente --- */
.ob-buy{background:var(--ob-ivory);border:1px solid var(--ob-line);border-radius:var(--radius-lg);
  padding:1.8rem;box-shadow:0 8px 34px rgba(30,30,28,.06);position:sticky;top:calc(var(--header-h) + 20px);}
@media(max-width:900px){.ob-buy{position:static;padding:1.4rem;}}
.ob-buy__head{padding-bottom:1rem;border-bottom:1px solid var(--ob-line);margin-bottom:1rem;}
.ob-buy__cat{display:inline-block;font:600 .66rem/1 var(--ff-eyebrow);letter-spacing:.16em;text-transform:uppercase;
  color:var(--ob-brass);background:rgba(184,155,70,.1);padding:.35rem .65rem;border-radius:100px;margin-bottom:.7rem;}
.ob-buy__cat:hover{background:var(--ob-brass);color:#fff;}
.ob-buy__title{font:400 clamp(1.6rem,1.1rem + 1.6vw,2.4rem)/1.14 var(--ff-display);color:var(--ob-ink);margin:0 0 .35rem;}
.ob-buy__sku{display:block;font-size:.76rem;color:var(--ob-muted);letter-spacing:.04em;}
.ob-buy__marque{display:block;margin-top:.3rem;font:600 .66rem/1 var(--ff-eyebrow);letter-spacing:.13em;text-transform:uppercase;color:var(--ob-brass-dark);}

/* --- Ligne de pastilles --- */
.ob-chipsline{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.1rem;}
.ob-chip2{display:inline-flex;align-items:center;gap:.32rem;font:500 .78rem/1 var(--ff-body);
  padding:.42rem .72rem;border-radius:100px;background:var(--ob-cream-2);color:var(--ob-body);white-space:nowrap;}
.ob-chip2 svg{width:14px;height:14px;flex:0 0 auto;}
.ob-chip2--ok{background:rgba(79,121,66,.1);color:#3F6435;}
.ob-chip2--ok svg{color:#4F7942;}
.ob-chip2--ko{background:rgba(225,98,61,.11);color:var(--ob-terracotta-d);}
.ob-chip2--brass{background:rgba(184,155,70,.12);color:var(--ob-brass-dark);}
.ob-chip2--brass svg{color:var(--ob-brass);}

/* --- Prix --- */
.ob-buy__price{font:500 1.7rem/1 var(--ff-body);color:var(--ob-ink);margin-bottom:1.2rem;}
.ob-buy__price del{color:var(--ob-muted);font-size:1.05rem;margin-right:.5rem;font-weight:400;}
.ob-buy__price ins{text-decoration:none;color:var(--ob-terracotta);}
.ob-buy__price .woocommerce-Price-amount{white-space:nowrap;}

/* --- Aperçu des coloris --- */
.ob-buy__swatches{padding:1rem 0;border-top:1px solid var(--ob-line);}
.ob-buy__swlabel{display:block;font:600 .68rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ob-muted);margin-bottom:.6rem;}
.ob-buy__swrow{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;}
.ob-buy__sw{width:24px;height:24px;border-radius:50%;background:var(--c);border:1px solid rgba(0,0,0,.14);
  box-shadow:inset 0 0 0 2px #fff;transition:transform .2s var(--ease);}
.ob-buy__sw:hover{transform:scale(1.14);}
.ob-buy__swmore{font-size:.76rem;color:var(--ob-muted);padding-left:.2rem;}

.ob-buy__excerpt{color:var(--ob-body);line-height:1.65;font-size:.95rem;padding:1rem 0;border-top:1px solid var(--ob-line);}
.ob-buy__form{padding:1.2rem 0;border-top:1px solid var(--ob-line);}

/* --- Réassurance en grille --- */
.ob-buy__reassure{list-style:none;padding:1.2rem 0 0;margin:0;border-top:1px solid var(--ob-line);
  display:grid;grid-template-columns:1fr 1fr;gap:.9rem;}
@media(max-width:520px){.ob-buy__reassure{grid-template-columns:1fr;}}
.ob-buy__reassure li{display:flex;align-items:flex-start;gap:.6rem;}
.ob-buy__reassure svg{flex:0 0 auto;color:var(--ob-brass);margin-top:2px;}
.ob-buy__reassure span{display:flex;flex-direction:column;font-size:.8rem;line-height:1.35;color:var(--ob-muted);}
.ob-buy__reassure strong{font-size:.86rem;font-weight:600;color:var(--ob-ink);}

/* --- Onglets --- */
.ob-tabs__nav button{padding-bottom:.85rem;}
.ob-care{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;}
.ob-care li{display:flex;align-items:flex-start;gap:.7rem;background:var(--ob-cream);border-radius:var(--radius);
  padding:.9rem 1rem;font-size:.9rem;line-height:1.5;color:var(--ob-body);}
.ob-care svg{flex:0 0 auto;color:var(--ob-brass);margin-top:2px;}
.ob-care__note{margin-top:1rem;font-size:.82rem;color:var(--ob-muted);font-style:italic;}

/* --- Bandeau boutiques --- */
.ob-single__stores{background:var(--ob-charcoal);padding:3rem 0;margin-top:1rem;}
.ob-single__storesinner{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;}
.ob-single__stores .ob-eyebrow{color:var(--ob-gold);}
.ob-single__stores h2{font:400 clamp(1.4rem,1.1rem + 1.2vw,2rem)/1.2 var(--ff-display);color:#fff;margin:.4rem 0 .5rem;}
.ob-single__stores p{color:rgba(255,255,255,.76);margin:0;max-width:56ch;font-size:.95rem;}
.ob-single__storesbtn{display:flex;gap:.6rem;flex-wrap:wrap;}
.ob-single__storesbtn .ob-btn--ghost{border-color:rgba(255,255,255,.42);color:#fff;}
.ob-single__storesbtn .ob-btn--ghost:hover{background:rgba(255,255,255,.12);}

/* --- Formulaire WooCommerce : allure sur mesure --- */
.ob-buy__form table.variations{width:100%;border:0;margin:0 0 1rem;}
.ob-buy__form table.variations tr{display:block;margin-bottom:.9rem;}
.ob-buy__form table.variations th,.ob-buy__form table.variations td{border:0;padding:0;display:block;text-align:left;}
.ob-buy__form table.variations th{font:600 .68rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ob-muted);margin-bottom:.4rem;}
.ob-buy__form select{width:100%;border:1px solid var(--ob-line-2);border-radius:var(--radius);padding:.75rem .9rem;
  font:400 .93rem var(--ff-body);background-color:var(--ob-ivory);color:var(--ob-ink);appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%235A5A57'><path d='M12 15 6 9h12z'/></svg>");
  background-repeat:no-repeat;background-position:right .8rem center;}
.ob-buy__form select:focus{outline:none;border-color:var(--ob-brass);box-shadow:0 0 0 3px rgba(184,155,70,.16);}
.ob-buy__form .woocommerce-variation-price{margin:.6rem 0 1rem;font:500 1.35rem/1 var(--ff-body);color:var(--ob-ink);}
.ob-buy__form .woocommerce-variation-availability{margin-bottom:.8rem;}
.ob-buy__form .stock.in-stock{color:#4F7942;font-size:.86rem;font-weight:500;}
.ob-buy__form .stock.out-of-stock{color:var(--ob-terracotta);font-size:.86rem;font-weight:500;}
.ob-buy__form .reset_variations{display:inline-block;font-size:.78rem;color:var(--ob-muted);margin-bottom:.6rem;}
.ob-buy__form .quantity{display:inline-flex;margin-right:.6rem;vertical-align:middle;}
.ob-buy__form .quantity input{width:74px;border:1px solid var(--ob-line-2);border-radius:var(--radius);
  padding:.85rem .5rem;text-align:center;font:500 .95rem var(--ff-body);}
.ob-buy__form .single_add_to_cart_button{flex:1;min-width:200px;background:var(--ob-ink);color:#fff;border:0;
  border-radius:var(--radius);padding:.95rem 2rem;font:600 .8rem/1 var(--ff-eyebrow);letter-spacing:.12em;
  text-transform:uppercase;cursor:pointer;transition:background .25s var(--ease),transform .12s var(--ease);}
.ob-buy__form .single_add_to_cart_button:hover{background:var(--ob-brass);}
.ob-buy__form .single_add_to_cart_button:active{transform:scale(.985);}
.ob-buy__form .single_add_to_cart_button.loading{opacity:.6;pointer-events:none;}
.ob-buy__form form.cart{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin:0;}
.ob-buy__form .ob-ship-hint{display:none;}
/* =========================================================
   CARROUSEL DE PRODUITS (promos, nouveautés)
   ========================================================= */
.ob-pcar{padding:3.6rem 0;}
.ob-pcar--cream{background:var(--ob-cream);}
.ob-pcar--dark{background:var(--ob-charcoal);}
.ob-pcar--dark .ob-pcar__title,.ob-pcar--dark .ob-pcard__body h3 a{color:#fff;}
.ob-pcar--dark .ob-eyebrow{color:var(--ob-gold);}

.ob-pcar__head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.4rem;
  margin-bottom:1.8rem;flex-wrap:wrap;}
.ob-pcar__title{font:400 clamp(1.5rem,1.1rem + 1.6vw,2.4rem)/1.15 var(--ff-display);color:var(--ob-ink);margin:.35rem 0 0;}
.ob-pcar__tools{display:flex;align-items:center;gap:1.2rem;}
.ob-pcar__all{font:600 .76rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--ob-brass);
  border-bottom:1px solid currentColor;padding-bottom:2px;}
.ob-pcar__all:hover{color:var(--ob-brass-dark);}
.ob-pcar__nav{display:flex;gap:.4rem;}
.ob-pcar__btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--ob-line-2);background:var(--ob-ivory);
  color:var(--ob-ink);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s var(--ease);}
.ob-pcar__btn:hover{background:var(--ob-brass);border-color:var(--ob-brass);color:#fff;}
.ob-pcar__btn[disabled]{opacity:.35;cursor:default;}
.ob-pcar__btn[data-pcar-prev]{transform:rotate(180deg);}

.ob-pcar__track{display:flex;gap:1.3rem;overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:none;padding:.3rem .2rem 1rem;-webkit-overflow-scrolling:touch;}
.ob-pcar__track::-webkit-scrollbar{display:none;}
.ob-pcard{flex:0 0 clamp(200px,22vw,262px);scroll-snap-align:start;}
.ob-pcard__media{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;border-radius:var(--radius-lg);
  background:var(--ob-cream-2);}
.ob-pcard__img{width:100% !important;height:100% !important;object-fit:cover !important;margin:0 !important;
  border-radius:0 !important;transition:transform .8s var(--ease),opacity .4s var(--ease);}
.ob-pcard__img--hover{position:absolute;inset:0;opacity:0;}
.ob-pcard:hover .ob-pcard__img--hover{opacity:1;}
.ob-pcard:hover .ob-pcard__img{transform:scale(1.05);}
.ob-pcard__pct{position:absolute;top:.7rem;left:.7rem;z-index:2;background:var(--ob-terracotta);color:#fff;
  font:700 .8rem/1 var(--ff-body);padding:.45rem .6rem;border-radius:100px;box-shadow:0 4px 14px rgba(0,0,0,.16);}
.ob-pcard__pct--new{background:var(--ob-brass);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;}
.ob-pcard__out{position:absolute;inset:auto 0 0 0;background:rgba(30,30,28,.72);color:#fff;text-align:center;
  font:600 .68rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;padding:.5rem;}
.ob-pcard__body{padding-top:.7rem;}
.ob-pcard__body h3{font:400 .98rem/1.3 var(--ff-display);margin:0 0 .3rem;}
.ob-pcard__body h3 a{color:var(--ob-ink);}
.ob-pcard__body h3 a:hover{color:var(--ob-brass);}
.ob-pcard__price{font:500 .94rem/1 var(--ff-body);color:var(--ob-ink);}
.ob-pcard__price del{color:var(--ob-muted);font-weight:400;margin-right:.35rem;font-size:.85rem;}
.ob-pcard__price ins{text-decoration:none;color:var(--ob-terracotta);font-weight:600;}

.ob-pcar__dots{display:flex;justify-content:center;gap:.4rem;margin-top:.6rem;}
.ob-pcar__dot{width:7px;height:7px;border-radius:50%;background:var(--ob-line-2);border:0;padding:0;cursor:pointer;
  transition:all .25s var(--ease);}
.ob-pcar__dot.is-active{background:var(--ob-brass);width:22px;border-radius:4px;}
@media(max-width:640px){.ob-pcar__nav{display:none;}}
/* =========================================================
   JOURNAL — archive et article
   ========================================================= */
.ob-jhero{background:var(--ob-cream);padding:3rem 0 2.4rem;}
.ob-jhero__title{font:400 clamp(2rem,1.4rem + 2.4vw,3.4rem)/1.1 var(--ff-display);color:var(--ob-ink);margin:.5rem 0 .6rem;}
.ob-jhero__desc{max-width:60ch;color:var(--ob-body);font-size:1.02rem;margin:0;}
.ob-jfilters{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.6rem;}
.ob-jchip{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .9rem;border-radius:100px;
  border:1px solid var(--ob-line-2);background:var(--ob-ivory);font-size:.85rem;color:var(--ob-body);
  transition:all .2s var(--ease);}
.ob-jchip em{font-style:normal;font-size:.74rem;color:var(--ob-muted);}
.ob-jchip:hover{border-color:var(--ob-brass);color:var(--ob-brass);}
.ob-jchip.is-active{background:var(--ob-ink);border-color:var(--ob-ink);color:#fff;}
.ob-jchip.is-active em{color:rgba(255,255,255,.6);}

.ob-journal{padding:3rem 0 4rem;}

/* Article à la une */
.ob-jfeat{display:grid;grid-template-columns:1.25fr 1fr;gap:2.4rem;align-items:center;margin-bottom:3.4rem;}
@media(max-width:900px){.ob-jfeat{grid-template-columns:1fr;gap:1.2rem;}}
.ob-jfeat__media{display:block;aspect-ratio:4/3;border-radius:var(--radius-lg);overflow:hidden;background:var(--ob-cream-2);}
.ob-jfeat__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.ob-jfeat:hover .ob-jfeat__media img{transform:scale(1.04);}
.ob-jfeat__tag{display:inline-block;font:600 .66rem/1 var(--ff-eyebrow);letter-spacing:.16em;text-transform:uppercase;
  background:var(--ob-brass);color:#fff;padding:.35rem .7rem;border-radius:100px;margin-bottom:.8rem;}
.ob-jfeat__body h2{font:400 clamp(1.5rem,1.1rem + 1.8vw,2.4rem)/1.16 var(--ff-display);margin:.5rem 0 .7rem;}
.ob-jfeat__body h2 a{color:var(--ob-ink);}
.ob-jfeat__body h2 a:hover{color:var(--ob-brass);}
.ob-jfeat__body p{color:var(--ob-body);line-height:1.65;margin:0 0 .9rem;}
.ob-jfeat .ob-btn{margin-top:.6rem;}

.ob-jcat{display:inline-block;font:600 .66rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ob-brass);background:rgba(184,155,70,.12);padding:.32rem .62rem;border-radius:100px;}
.ob-jcat:hover{background:var(--ob-brass);color:#fff;}

.ob-jmeta{display:flex;align-items:center;gap:.8rem;font-size:.8rem;color:var(--ob-muted);margin-top:.5rem;}
.ob-jmeta span::before{content:"·";margin-right:.8rem;}

/* Grille d'articles */
.ob-jgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2.2rem 1.6rem;}
.ob-jcard__media{display:block;aspect-ratio:3/2;border-radius:var(--radius-lg);overflow:hidden;background:var(--ob-cream-2);
  display:flex;align-items:center;justify-content:center;}
.ob-jcard__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.ob-jcard:hover .ob-jcard__media img{transform:scale(1.05);}
.ob-jcard__ph{color:var(--ob-line-2);}
.ob-jcard__body{padding-top:.85rem;}
.ob-jcard__title{font:400 1.18rem/1.3 var(--ff-display);margin:.5rem 0 .4rem;}
.ob-jcard__title a{color:var(--ob-ink);}
.ob-jcard__title a:hover{color:var(--ob-brass);}
.ob-jcard__ex{font-size:.9rem;line-height:1.6;color:var(--ob-body);margin:0;}

/* Article */
.ob-post__hero{position:relative;padding:3rem 0 2.4rem;background:var(--ob-cream);}
.ob-post__hero.has-media{min-height:clamp(340px,52vh,520px);display:flex;align-items:flex-end;background:var(--ob-charcoal);padding:0;}
.ob-post__media{position:absolute;inset:0;}
.ob-post__media img{width:100%;height:100%;object-fit:cover;}
.ob-post__veil{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,20,19,.34) 0%,rgba(20,20,19,.1) 38%,rgba(20,20,19,.82) 100%);}
.ob-post__heroinner{position:relative;z-index:2;width:100%;padding:2.6rem 0;}
.ob-post__hero.has-media .ob-post__title{color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.34);}
.ob-post__hero.has-media .ob-breadcrumb,.ob-post__hero.has-media .ob-breadcrumb a{color:rgba(255,255,255,.76);}
.ob-post__hero.has-media .ob-jmeta{color:rgba(255,255,255,.72);}
.ob-post__hero.has-media .ob-jcat{background:rgba(255,255,255,.16);color:#fff;}
.ob-post__title{font:400 clamp(1.9rem,1.3rem + 2.4vw,3.2rem)/1.12 var(--ff-display);color:var(--ob-ink);margin:.7rem 0 0;max-width:22ch;}
.ob-post__meta{margin-top:.9rem;}

.ob-post__body{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:3rem;padding:3rem 0 3.5rem;align-items:start;}
@media(max-width:900px){.ob-post__body{grid-template-columns:1fr;gap:1.8rem;}}
.ob-post__content{max-width:72ch;}
.ob-post__content p{font-size:1.04rem;line-height:1.8;color:var(--ob-body);margin-bottom:1.3rem;}
.ob-post__content > p:first-of-type{font-size:1.18rem;line-height:1.7;color:var(--ob-ink);}
.ob-post__content h2{font:400 clamp(1.5rem,1.2rem + 1.2vw,2rem)/1.2 var(--ff-display);color:var(--ob-ink);margin:2.6rem 0 .9rem;}
.ob-post__content h3{font:500 1.15rem/1.35 var(--ff-body);color:var(--ob-ink);margin:2rem 0 .7rem;}
.ob-post__content img{max-width:100%;height:auto;border-radius:var(--radius-lg);margin:1.6rem 0;display:block;}
.ob-post__content ul,.ob-post__content ol{margin:0 0 1.4rem 1.2rem;}
.ob-post__content li{margin-bottom:.5rem;line-height:1.7;color:var(--ob-body);}
.ob-post__content blockquote{border-left:3px solid var(--ob-brass);margin:2rem 0;padding:.4rem 0 .4rem 1.4rem;
  font:400 1.2rem/1.6 var(--ff-display);font-style:italic;color:var(--ob-ink);}
.ob-post__content a{color:var(--ob-brass);text-decoration:underline;text-underline-offset:2px;}
.ob-post__content iframe{max-width:100%;border-radius:var(--radius-lg);margin:1.6rem 0;}

.ob-post__aside{position:sticky;top:calc(var(--header-h) + 20px);display:grid;gap:1.4rem;}
@media(max-width:900px){.ob-post__aside{position:static;}}
.ob-post__share{display:flex;align-items:center;gap:.6rem;padding-bottom:1.2rem;border-bottom:1px solid var(--ob-line);}
.ob-post__share span{font:600 .68rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ob-muted);}
.ob-post__share a{width:34px;height:34px;border-radius:50%;border:1px solid var(--ob-line-2);display:flex;
  align-items:center;justify-content:center;color:var(--ob-body);transition:all .2s var(--ease);}
.ob-post__share a:hover{background:var(--ob-brass);border-color:var(--ob-brass);color:#fff;}
.ob-post__cta{background:var(--ob-cream);border-radius:var(--radius-lg);padding:1.4rem;}
.ob-post__cta h3{font:400 1.15rem/1.3 var(--ff-display);color:var(--ob-ink);margin:0 0 .5rem;}
.ob-post__cta p{font-size:.88rem;line-height:1.55;color:var(--ob-body);margin:0 0 1rem;}
.ob-post__cta .ob-btn{width:100%;text-align:center;justify-content:center;}
/* =========================================================
   MÉGA-MENU : deux cartes mises en avant
   ========================================================= */
.ob-mega__cards{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:.9rem;
  margin-top:.9rem;padding-top:1.1rem;border-top:1px solid var(--ob-line);}
@media(max-width:760px){.ob-mega__cards{grid-template-columns:1fr;}}

.ob-mcard{position:relative;display:flex;flex-direction:column;gap:.28rem;padding:1.15rem 1.3rem;
  border-radius:var(--radius-lg);overflow:hidden;isolation:isolate;
  transition:transform .28s var(--ease),box-shadow .28s var(--ease);}
.ob-mcard::after{content:"";position:absolute;inset:0;z-index:-1;transition:opacity .3s var(--ease);}
.ob-mcard:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(30,30,28,.16);}

/* Promotions : terracotta, plus chaud et plus urgent. */
.ob-mcard--promo{background:linear-gradient(135deg,var(--ob-terracotta) 0%,var(--ob-terracotta-d) 100%);}
/* Nouveautés : encre profonde et liseré laiton. */
.ob-mcard--neuf{background:linear-gradient(135deg,var(--ob-charcoal) 0%,var(--ob-ink) 100%);
  box-shadow:inset 0 0 0 1px rgba(217,187,94,.34);}

/* Motif discret pour éviter l'aplat. */
.ob-mcard::before{content:"";position:absolute;right:-38px;top:-38px;width:150px;height:150px;border-radius:50%;
  background:rgba(255,255,255,.09);z-index:-1;}

.ob-mcard__tag{font:600 .62rem/1 var(--ff-eyebrow);letter-spacing:.18em;text-transform:uppercase;
  color:rgba(255,255,255,.72);}
.ob-mcard--neuf .ob-mcard__tag{color:var(--ob-gold);}
.ob-mcard__title{font:400 1.22rem/1.2 var(--ff-display);color:#fff !important;}
.ob-mcard__sub{font-size:.82rem;line-height:1.45;color:rgba(255,255,255,.8);max-width:34ch;}
.ob-mcard__go{margin-top:.5rem;font:600 .7rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;
  color:#fff;display:inline-flex;align-items:center;gap:.4rem;}
.ob-mcard--neuf .ob-mcard__go{color:var(--ob-gold);}
.ob-mcard__go em{font-style:normal;transition:transform .25s var(--ease);}
.ob-mcard:hover .ob-mcard__go em{transform:translateX(4px);}

/* On neutralise les règles génériques de lien de sous-menu. */

.ob-nav-desktop .ob-mega__cards a:hover{background:none;}
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mcard__title{color:#fff !important;}
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mcard__sub{color:rgba(255,255,255,.8) !important;}
/* =========================================================
   CORRECTIFS — cartes du méga-menu, largeur page PROS
   ========================================================= */

/* 1. Les cartes conservent leur dégradé : on ne neutralise
      que la couleur du texte, jamais le fond. */
.ob-nav-desktop .ob-mega__cards a.ob-mcard,
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__cards a.ob-mcard{
  padding:1.15rem 1.3rem !important;color:#fff !important;}
.ob-nav-desktop .ob-mega__cards a.ob-mcard--promo,
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop a.ob-mcard--promo{
  background:linear-gradient(135deg,var(--ob-terracotta) 0%,var(--ob-terracotta-d) 100%) !important;}
.ob-nav-desktop .ob-mega__cards a.ob-mcard--neuf,
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop a.ob-mcard--neuf{
  background:linear-gradient(135deg,var(--ob-charcoal) 0%,var(--ob-ink) 100%) !important;}
.ob-nav-desktop .ob-mega__cards a.ob-mcard:hover{background-image:none;}
.ob-nav-desktop .ob-mcard__title,
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mcard__title{color:#fff !important;}
.ob-nav-desktop .ob-mcard__sub,
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mcard__sub{color:rgba(255,255,255,.82) !important;}
.ob-nav-desktop .ob-mcard--promo .ob-mcard__tag{color:rgba(255,255,255,.78) !important;}
.ob-nav-desktop .ob-mcard--neuf .ob-mcard__tag,
.ob-nav-desktop .ob-mcard--neuf .ob-mcard__go{color:var(--ob-gold) !important;}
.ob-nav-desktop .ob-mcard--promo .ob-mcard__go{color:#fff !important;}

/* 2. Page PROS : le contenu doit rester dans la grille du site. */
.ob-pro .ob-wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter);}
.ob-pro__hero .ob-wrap,.ob-pro__compare .ob-wrap,
.ob-pro__process .ob-wrap,.ob-pro__pricing .ob-wrap{max-width:var(--wrap);}

/* Le carrousel déborde volontairement, mais reste centré sur la grille. */
.ob-carousel__track{padding-inline:max(var(--gutter), calc((100vw - var(--wrap)) / 2)) !important;}
.ob-carousel__card{flex-basis:clamp(230px,24vw,290px);}

/* Les blocs de contenu ne dépassent plus la largeur de lecture. */
.ob-pro__lead,.ob-pro__pills{max-width:var(--wrap);margin-inline:auto;}
.ob-pro__benefits,.ob-pro__comparegrid,.ob-pro__steps,.ob-pro__pricegrid{max-width:var(--wrap);margin-inline:auto;}
/* =========================================================
   GRILLES DE PARTENAIRES
   ========================================================= */
.ob-plog__intro{text-align:center;color:var(--ob-body);max-width:60ch;margin:-.8rem auto 2rem;}

.ob-ploggrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.4rem;}
.ob-plog{display:flex;flex-direction:column;border:1px solid var(--ob-line);border-radius:var(--radius-lg);
  overflow:hidden;background:var(--ob-ivory);transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);}
.ob-plog:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(30,30,28,.12);border-color:var(--ob-line-2);}
.ob-plog__media{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--ob-cream-2);}
.ob-plog__media{line-height:0;font-size:0;}
.ob-plog__media img{display:block;margin:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);}
.ob-plog:hover .ob-plog__media img{transform:scale(1.06);}
.ob-plog__media--vide{background:linear-gradient(135deg,var(--ob-cream) 0%,var(--ob-cream-2) 100%);}

/* Les logos ne doivent pas être recadrés. */
.ob-plog__media--logo{aspect-ratio:16/10;background:#fff;display:flex;align-items:center;justify-content:center;padding:1.2rem;}
.ob-plog__media--logo img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;}
.ob-plog--pro:hover .ob-plog__media--logo img{transform:scale(1.04);}

.ob-plog__body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.3rem;flex:1;}
.ob-plog__tag{font:600 .62rem/1 var(--ff-eyebrow);letter-spacing:.16em;text-transform:uppercase;color:var(--ob-muted);}
.ob-plog__nom{font:400 1.06rem/1.3 var(--ff-display);color:var(--ob-ink);}
.ob-plog:hover .ob-plog__nom{color:var(--ob-brass);}
.ob-plog__go{margin-top:auto;padding-top:.6rem;font:600 .68rem/1 var(--ff-eyebrow);letter-spacing:.14em;
  text-transform:uppercase;color:var(--ob-brass);display:inline-flex;align-items:center;gap:.35rem;}
.ob-plog__go em{font-style:normal;transition:transform .25s var(--ease);}
.ob-plog:hover .ob-plog__go em{transform:translateX(4px);}

@media(max-width:520px){.ob-ploggrid{grid-template-columns:repeat(2,1fr);gap:.9rem;}
  .ob-plog__body{padding:.8rem .8rem 1rem;}.ob-plog__nom{font-size:.95rem;}}
/* =========================================================
   SLIDER : navigation regroupée en bas à droite
   ---------------------------------------------------------
   Centrées sur les bords, les flèches recouvraient le titre
   du produit, aligné à gauche.
   ========================================================= */
.ob-rev__nav{top:auto;bottom:2.4rem;transform:none;left:auto;
  width:44px;height:44px;border-radius:50%;}
.ob-rev__nav--prev{right:calc(clamp(1rem,3vw,3rem) + 54px);left:auto;transform:rotate(180deg);}
.ob-rev__nav--next{right:clamp(1rem,3vw,3rem);}
.ob-rev__nav:hover{transform:none;background:rgba(255,255,255,.3);}
.ob-rev__nav--prev:hover{transform:rotate(180deg);}

/* Les puces se décalent à gauche pour ne pas croiser les flèches. */
.ob-rev__dots{justify-content:flex-start;left:auto;right:auto;bottom:2.9rem;
  padding-inline:max(var(--gutter), calc((100% - var(--wrap-wide)) / 2 + var(--gutter)));}

@media(max-width:900px){
  .ob-rev__dots{justify-content:center;padding-inline:var(--gutter);bottom:1.6rem;}
  .ob-rev__nav{bottom:1.2rem;}
}
@media(max-width:760px){
  .ob-rev__nav{display:none;}
  .ob-rev__dots{bottom:1.4rem;}
}
/* Titre centré des pages éditoriales : la règle générique .ob-entry h2
   arrivait après et reprenait l'alignement hérité. */
.ob-entry .ob-h2-center,
.ob-entry--full .ob-h2-center,
h2.ob-h2-center{text-align:center !important;}
.ob-entry .ob-plog__intro{text-align:center;}

/* Cartes partenaires de hauteur homogène */
.ob-ploggrid{align-items:stretch;}
.ob-plog{height:100%;}
/* =========================================================
   CORRECTIFS — cartes du méga-menu, hero des pages partenaires
   ========================================================= */

/* 1. La règle .ob-nav .sub-menu a { display:block } écrasait le flex :
      les libellés se retrouvaient collés en ligne. */
.ob-nav-desktop .ob-mega__cards a.ob-mcard,
.ob-nav .sub-menu a.ob-mcard{display:flex !important;flex-direction:column;gap:.35rem;align-items:flex-start;}
.ob-mcard__tag,.ob-mcard__title,.ob-mcard__sub,.ob-mcard__go{display:block;width:100%;}
.ob-mcard__title{margin:.1rem 0 .15rem;}
.ob-mcard__sub{margin-bottom:.35rem;}
.ob-mcard__go{display:inline-flex !important;width:auto;}

/* 2. Hero des pages éditoriales : aplat de couleur, sans photo. */
.page-template-page-full .ob-phero{background:var(--ob-cream);min-height:0;padding:0;}
.page-template-page-full .ob-phero.has-media{background:var(--ob-cream);}
.page-template-page-full .ob-phero__media{display:none;}
.page-template-page-full .ob-phero__content{padding:3.4rem 0 2.8rem;}
.page-template-page-full .ob-phero__title,
.page-template-page-full .ob-phero.has-media .ob-phero__title{color:var(--ob-ink);text-shadow:none;}
.page-template-page-full .ob-phero__lead,
.page-template-page-full .ob-phero.has-media .ob-phero__lead{color:var(--ob-body);}
.page-template-page-full .ob-phero .ob-eyebrow{color:var(--ob-brass);}
.page-template-page-full .ob-phero .ob-breadcrumb,
.page-template-page-full .ob-phero .ob-breadcrumb a{color:var(--ob-muted);}
.page-template-page-full .ob-phero .ob-breadcrumb a:hover{color:var(--ob-brass);}
/* Un filet laiton pour marquer la séparation sans image. */
.page-template-page-full .ob-phero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,var(--ob-brass) 0%,rgba(184,155,70,.15) 100%);}
/* =========================================================
   ESPACE CLIENT
   ========================================================= */
.woocommerce-account .woocommerce{max-width:var(--wrap-wide);margin-inline:auto;padding:2.6rem var(--gutter) 4rem;}
.woocommerce-account .woocommerce-MyAccount-navigation{width:270px;float:none;}
.woocommerce-account .woocommerce-MyAccount-content{width:auto;float:none;}
@media(min-width:900px){
  .woocommerce-account .woocommerce{display:grid;grid-template-columns:270px minmax(0,1fr);gap:2.4rem;align-items:start;}
}

/* --- Navigation --- */
.ob-acc__nav{background:var(--ob-ivory);border:1px solid var(--ob-line);border-radius:var(--radius-lg);
  overflow:hidden;position:sticky;top:calc(var(--header-h) + 20px);}
@media(max-width:900px){.ob-acc__nav{position:static;margin-bottom:1.6rem;}}
.ob-acc__id{display:flex;align-items:center;gap:.8rem;padding:1.2rem 1.2rem 1.1rem;border-bottom:1px solid var(--ob-line);
  background:var(--ob-cream);}
.ob-acc__avatar{flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:var(--ob-brass);color:#fff;
  display:flex;align-items:center;justify-content:center;font:600 1.05rem/1 var(--ff-display);}
.ob-acc__idtxt{display:flex;flex-direction:column;gap:.15rem;min-width:0;}
.ob-acc__idtxt strong{font:500 .96rem/1.2 var(--ff-body);color:var(--ob-ink);overflow:hidden;text-overflow:ellipsis;}
.ob-acc__badge{display:inline-block;font:600 .6rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;
  background:var(--ob-brass);color:#fff;padding:.25rem .5rem;border-radius:100px;width:fit-content;}
.ob-acc__since{font-size:.74rem;color:var(--ob-muted);}

.ob-acc__nav ul{list-style:none;margin:0;padding:.5rem;}
.ob-acc__nav li{margin:0;}
.ob-acc__nav li a{display:flex;align-items:center;gap:.65rem;padding:.7rem .75rem;border-radius:var(--radius);
  font-size:.92rem;color:var(--ob-body);transition:all .2s var(--ease);}
.ob-acc__nav li a svg{flex:0 0 auto;color:var(--ob-muted);transition:color .2s var(--ease);}
.ob-acc__nav li a:hover{background:var(--ob-cream);color:var(--ob-ink);}
.ob-acc__nav li a:hover svg{color:var(--ob-brass);}
.ob-acc__nav li.is-active > a,
.ob-acc__nav li.woocommerce-MyAccount-navigation-link--dashboard.is-active > a{background:var(--ob-ink);color:#fff;}
.ob-acc__nav li.is-active > a svg{color:var(--ob-gold);}
.ob-acc__help{padding:1.1rem 1.2rem 1.3rem;border-top:1px solid var(--ob-line);background:var(--ob-cream);}
.ob-acc__help p{font-size:.82rem;color:var(--ob-body);margin:.35rem 0 .5rem;line-height:1.45;}
.ob-acc__help a{display:block;font:500 .92rem/1.6 var(--ff-body);color:var(--ob-brass);}

/* --- Tableau de bord --- */
.ob-acc__hello h2{font:400 clamp(1.5rem,1.2rem + 1.2vw,2.1rem)/1.15 var(--ff-display);color:var(--ob-ink);margin:0 0 .3rem;}
.ob-acc__hello p{color:var(--ob-body);margin:0 0 1.6rem;}

.ob-acc__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.6rem;}
.ob-acc__stat{background:var(--ob-cream);border-radius:var(--radius-lg);padding:1.2rem 1.3rem;}
.ob-acc__stat b{display:block;font:500 1.6rem/1 var(--ff-body);color:var(--ob-ink);margin-bottom:.3rem;}
.ob-acc__stat b .woocommerce-Price-amount{font-size:inherit;}
.ob-acc__stat span{font-size:.82rem;color:var(--ob-muted);}

.ob-acc__pro{background:linear-gradient(135deg,var(--ob-charcoal) 0%,var(--ob-ink) 100%);color:#fff;
  border-radius:var(--radius-lg);padding:1.5rem 1.6rem;margin-bottom:1.6rem;
  box-shadow:inset 0 0 0 1px rgba(217,187,94,.3);}
.ob-acc__pro .ob-eyebrow{color:var(--ob-gold);}
.ob-acc__pro h3{font:400 1.3rem/1.2 var(--ff-display);color:#fff;margin:.4rem 0 .8rem;}
.ob-acc__pro ul{list-style:none;padding:0;margin:0 0 1.1rem;display:grid;gap:.4rem;}
.ob-acc__pro li{position:relative;padding-left:1.3rem;font-size:.9rem;color:rgba(255,255,255,.86);}
.ob-acc__pro li::before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--ob-gold);}
.ob-acc__pro .ob-btn--ghost{border-color:rgba(255,255,255,.4);color:#fff;}
.ob-acc__pro .ob-btn--ghost:hover{background:rgba(255,255,255,.12);}

.ob-acc__block{background:var(--ob-ivory);border:1px solid var(--ob-line);border-radius:var(--radius-lg);
  padding:1.4rem 1.5rem;margin-bottom:1.6rem;}
.ob-acc__block header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.1rem;}
.ob-acc__block h3{font:400 1.22rem/1.2 var(--ff-display);color:var(--ob-ink);margin:0;}
.ob-acc__block header a{font:600 .72rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--ob-brass);}

.ob-acc__order{display:grid;grid-template-columns:1fr auto;gap:1rem 1.4rem;align-items:center;}
@media(max-width:640px){.ob-acc__order{grid-template-columns:1fr;}}
.ob-acc__ordermeta{grid-column:1/-1;display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;}
.ob-acc__num{font:500 .95rem/1 var(--ff-body);color:var(--ob-ink);}
.ob-acc__date{font-size:.84rem;color:var(--ob-muted);}
.ob-acc__status{font:600 .64rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;
  padding:.32rem .6rem;border-radius:100px;background:var(--ob-cream-2);color:var(--ob-body);}
.ob-acc__status.is-completed{background:rgba(79,121,66,.14);color:#3F6435;}
.ob-acc__status.is-processing{background:rgba(184,155,70,.16);color:var(--ob-brass-dark);}
.ob-acc__status.is-cancelled,.ob-acc__status.is-failed{background:rgba(225,98,61,.12);color:var(--ob-terracotta-d);}
.ob-acc__thumbs{display:flex;gap:.4rem;align-items:center;}
.ob-acc__thumb img{width:52px;height:64px;object-fit:cover;border-radius:var(--radius);display:block;}
.ob-acc__more{font-size:.8rem;color:var(--ob-muted);}
.ob-acc__ordertotal{display:flex;flex-direction:column;align-items:flex-end;gap:.6rem;}
.ob-acc__ordertotal strong{font:500 1.2rem/1 var(--ff-body);color:var(--ob-ink);}
@media(max-width:640px){.ob-acc__ordertotal{align-items:flex-start;}}

.ob-acc__empty{text-align:center;padding:2.4rem 1.5rem;}
.ob-acc__empty p{color:var(--ob-body);max-width:52ch;margin:.5rem auto 1.2rem;}

.ob-acc__tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.6rem;}
.ob-acc__tile{display:flex;flex-direction:column;gap:.3rem;background:var(--ob-ivory);border:1px solid var(--ob-line);
  border-radius:var(--radius-lg);padding:1.2rem;transition:all .25s var(--ease);}
.ob-acc__tile:hover{border-color:var(--ob-brass);transform:translateY(-2px);box-shadow:var(--shadow-sm);}
.ob-acc__tile svg{color:var(--ob-brass);margin-bottom:.4rem;}
.ob-acc__tile strong{font:500 .98rem/1.2 var(--ff-body);color:var(--ob-ink);}
.ob-acc__tile span{font-size:.82rem;color:var(--ob-muted);line-height:1.4;}

.ob-acc__stores{background:var(--ob-cream);border-radius:var(--radius-lg);padding:1.6rem;
  display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;align-items:center;}
@media(max-width:760px){.ob-acc__stores{grid-template-columns:1fr;}}
.ob-acc__stores h3{font:400 1.28rem/1.2 var(--ff-display);color:var(--ob-ink);margin:.35rem 0 .5rem;}
.ob-acc__stores p{font-size:.9rem;color:var(--ob-body);margin:0;line-height:1.55;}
.ob-acc__storesgrid{display:grid;gap:.9rem;}
.ob-acc__storesgrid > div{background:var(--ob-ivory);border-radius:var(--radius);padding:.85rem 1rem;}
.ob-acc__storesgrid strong{display:block;font:500 .92rem/1.2 var(--ff-body);color:var(--ob-ink);}
.ob-acc__storesgrid span{display:block;font-size:.8rem;color:var(--ob-muted);margin:.15rem 0 .25rem;}
.ob-acc__storesgrid a{font-size:.88rem;color:var(--ob-brass);font-weight:500;}

/* --- Tableaux et formulaires WooCommerce --- */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error{border-top:0;border-left:3px solid var(--ob-brass);background:var(--ob-cream);
  border-radius:var(--radius);padding:1rem 1.2rem;margin-bottom:1.4rem;color:var(--ob-body);}
.woocommerce-account .woocommerce-error{border-left-color:var(--ob-terracotta);}
.woocommerce-account table.shop_table{border:1px solid var(--ob-line);border-radius:var(--radius-lg);border-collapse:separate;
  border-spacing:0;overflow:hidden;}
.woocommerce-account table.shop_table th{background:var(--ob-cream);font:600 .7rem/1 var(--ff-eyebrow);
  letter-spacing:.12em;text-transform:uppercase;color:var(--ob-muted);padding:.9rem 1rem;}
.woocommerce-account table.shop_table td{padding:.9rem 1rem;border-top:1px solid var(--ob-line);font-size:.92rem;}
.woocommerce-account .woocommerce-Button,
.woocommerce-account .button{background:var(--ob-ink);color:#fff;border:0;border-radius:var(--radius);
  padding:.75rem 1.4rem;font:600 .74rem/1 var(--ff-eyebrow);letter-spacing:.1em;text-transform:uppercase;}
.woocommerce-account .button:hover{background:var(--ob-brass);}
.woocommerce-account form .form-row label{font:600 .7rem/1 var(--ff-eyebrow);letter-spacing:.1em;
  text-transform:uppercase;color:var(--ob-muted);margin-bottom:.35rem;display:block;}
.woocommerce-account form .form-row input,
.woocommerce-account form .form-row select,
.woocommerce-account form .form-row textarea{width:100%;border:1px solid var(--ob-line-2);border-radius:var(--radius);
  padding:.72rem .9rem;font:400 .93rem var(--ff-body);background:var(--ob-ivory);}
.woocommerce-account form .form-row input:focus,
.woocommerce-account form .form-row select:focus{outline:none;border-color:var(--ob-brass);
  box-shadow:0 0 0 3px rgba(184,155,70,.16);}
/* =========================================================
   ESPACE CLIENT — mise en page maîtrisée
   ---------------------------------------------------------
   WooCommerce fait flotter la navigation et le contenu.
   On les place dans une grille et on annule les flottements.
   ========================================================= */
.ob-acc{display:block;}
@media(min-width:900px){
  .ob-acc{display:grid;grid-template-columns:272px minmax(0,1fr);gap:2.2rem;align-items:start;}
}
.woocommerce-account .ob-acc .woocommerce-MyAccount-navigation,
.woocommerce-account .ob-acc .woocommerce-MyAccount-content{float:none !important;width:auto !important;margin:0 !important;}
.woocommerce-account .ob-acc .ob-acc__nav{width:100%;}
.ob-acc__main{min-width:0;}

/* Le contenu de la page n'est plus bridé par la largeur de lecture. */
.woocommerce-account .ob-entry{max-width:none;}
.woocommerce-account .ob-entry > .woocommerce{max-width:none;padding:0;margin:0;}
.woocommerce-account main.ob-section{padding-block:2.6rem 4rem;}
.woocommerce-account .ob-wrap{max-width:var(--wrap-wide);}

/* Sur mobile, la navigation passe au-dessus du contenu. */
@media(max-width:899px){
  .ob-acc__nav{margin-bottom:1.6rem;}
  .ob-acc__nav ul{display:grid;grid-template-columns:repeat(2,1fr);gap:.25rem;}
}
/* =========================================================
   MOBILE — refonte
   ========================================================= */

/* --- 1. Débordement horizontal : on borne les coupables --- */
.ob-rev,.ob-pcar,.ob-usp,.ob-cats,.ob-jgrid,.ob-ploggrid,.ob-carousel{max-width:100%;}
.ob-rev__content,.ob-rev__inner{max-width:100%;}
.ob-pcar__track,.ob-carousel__track,.ob-usp__grid{max-width:100vw;}
@media(max-width:900px){
  .ob-carousel__track{padding-inline:var(--gutter) !important;}
  .ob-entry--full > .ob-cta-band,.ob-entry--full > .ob-pricing{width:auto;margin-left:0;transform:none;}
}
img,svg,video,iframe{max-width:100%;}

/* --- 2. En-tête mobile : transparent au-dessus du hero --- */
@media(max-width:1150px){
  .home .ob-header--float:not(.is-stuck){background:transparent !important;backdrop-filter:none;
    -webkit-backdrop-filter:none;border-bottom-color:transparent;box-shadow:none;}
  .home .ob-header--float:not(.is-stuck) .ob-burger span{background:#fff;}
  .home .ob-header--float:not(.is-stuck) .ob-tool{color:#fff;}
  .home .ob-header--float:not(.is-stuck) .ob-cart-count{background:var(--ob-gold);color:var(--ob-ink);}
  /* Le hero remonte sous la barre pour que la transparence ait un sens. */
  .home .ob-rev{margin-top:calc(var(--header-h) * -1);}
  .home .ob-rev__content{padding-top:var(--header-h);}
}

/* --- 3. Bandeau garanties : une ligne qui défile --- */
.ob-usp{overflow:hidden;}
@media(max-width:900px){
  .ob-usp__grid{display:flex !important;gap:0;width:max-content;animation:ob-usp-scroll 26s linear infinite;}
  .ob-usp[data-usp]:hover .ob-usp__grid{animation-play-state:paused;}
  .ob-usp__item{flex:0 0 auto;padding:.9rem 1.6rem;border:0;white-space:nowrap;
    display:flex;align-items:center;gap:.6rem;}
  .ob-usp__item + .ob-usp__item{border-left:1px solid var(--ob-line);}
  .ob-usp__item svg{width:20px;height:20px;flex:0 0 auto;}
  .ob-usp__item strong{font-size:.84rem;}
  .ob-usp__item span span{font-size:.76rem;}
}
@keyframes ob-usp-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media(prefers-reduced-motion:reduce){
  .ob-usp__grid{animation:none !important;overflow-x:auto;}
}
/* Bandeau intégré à la fiche produit */
.ob-usp--inline{margin:0 0 1.2rem;border-block:1px solid var(--ob-line);background:var(--ob-cream);border-radius:var(--radius);}
.ob-usp--inline .ob-usp__item{padding:.75rem 1.2rem;}
@media(min-width:901px){
  .ob-usp--inline{display:none;}
}
@media(max-width:900px){
  .ob-buy__reassure--desktop{display:none;}
}

/* --- 4. Menu mobile : plus de tenue --- */
.ob-mobile-panel{width:min(400px,92vw);padding:1.4rem 1.3rem 2rem;background:var(--ob-ivory);
  display:flex;flex-direction:column;}
.ob-mobile-panel__head{padding-bottom:1rem;border-bottom:1px solid var(--ob-line);margin-bottom:.6rem;}
.ob-mobile-close{margin-left:auto;width:38px;height:38px;border-radius:50%;border:1px solid var(--ob-line);
  background:none;font-size:1.5rem;line-height:1;color:var(--ob-body);cursor:pointer;}
.ob-nav-mobile{flex:1;overflow-y:auto;margin-inline:-.4rem;padding-inline:.4rem;}
.ob-nav-mobile ul{list-style:none;margin:0;padding:0;}
.ob-nav-mobile > ul > li{border-bottom:1px solid var(--ob-line);}
.ob-nav-mobile > ul > li > a{display:flex;align-items:center;justify-content:space-between;
  padding:.95rem .2rem;font:500 .95rem/1.3 var(--ff-body);letter-spacing:.04em;text-transform:uppercase;
  font-size:.82rem;color:var(--ob-ink);}
.ob-nav-mobile > ul > li.menu-item-has-children > a::after{content:"";width:8px;height:8px;
  border-right:1.5px solid var(--ob-muted);border-bottom:1.5px solid var(--ob-muted);
  transform:rotate(45deg);margin-bottom:3px;transition:transform .25s var(--ease);}
.ob-nav-mobile > ul > li.is-open > a::after{transform:rotate(-135deg);margin-bottom:-3px;}
.ob-nav-mobile .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;
  border:0;background:var(--ob-cream);border-radius:var(--radius);padding:.4rem;margin:0 0 .8rem;
  display:none;}
.ob-nav-mobile > ul > li.is-open > .sub-menu{display:block;}
.ob-nav-mobile .sub-menu a{display:flex;align-items:center;gap:.5rem;padding:.62rem .8rem;
  font-size:.88rem;text-transform:none;letter-spacing:0;color:var(--ob-body);border-radius:var(--radius);}
.ob-nav-mobile .sub-menu a:hover{background:var(--ob-ivory);color:var(--ob-brass);}
/* Les univers gardent leur icône dans le panneau mobile */
.ob-nav-mobile .ob-mega{display:block !important;grid-template-columns:none;padding:.4rem !important;
  max-height:none;border:0;box-shadow:none;background:var(--ob-cream);width:auto;margin:0 0 .8rem;}
.ob-nav-mobile .ob-mega__link{padding:.6rem .7rem !important;gap:.7rem;}
.ob-nav-mobile .ob-mega__ico{flex-basis:34px;width:34px;height:34px;}
.ob-nav-mobile .ob-mega__ico svg{width:20px;height:20px;}
.ob-nav-mobile .ob-mega__desc{display:none;}
.ob-nav-mobile .ob-mega__count{font-size:.7rem;}
.ob-nav-mobile .ob-mega__cards{grid-template-columns:1fr;gap:.5rem;margin-top:.5rem;padding-top:.7rem;}
.ob-nav-mobile .ob-mega__foot{display:none;}
.ob-mobile-panel__foot{margin-top:1.2rem;padding-top:1.1rem;border-top:1px solid var(--ob-line);
  display:grid;gap:.5rem;}
.ob-mobile-panel__foot .ob-btn{width:100%;justify-content:center;}

/* --- 5. Recherche plein écran sur mobile --- */
@media(max-width:900px){
  .ob-search-layer{position:fixed;inset:0;top:0;height:100dvh;padding:1.2rem var(--gutter) 2rem;
    border-top:0;border-radius:0;box-shadow:none;background:var(--ob-ivory);overflow-y:auto;
    transform:translateY(-12px);z-index:210;max-width:none;margin:0;}
  .ob-search-layer.is-open{transform:none;}
  .ob-search-form{padding-top:.4rem;}
  .ob-search-form input[type=search]{font-size:1.15rem;}
  .ob-search-close{width:38px;height:38px;border-radius:50%;border:1px solid var(--ob-line);
    display:flex;align-items:center;justify-content:center;font-size:1.4rem;}
  .ob-search-results{margin-top:1rem;}
  .ob-search-list{grid-template-columns:1fr;}
  .ob-search-suggest{margin-top:1.4rem;}
}

/* --- 6. Tuiles catégories : voile et texte centré --- */
@media(max-width:900px){
  .ob-cats{grid-template-columns:repeat(2,1fr) !important;grid-auto-rows:190px !important;gap:.8rem !important;}
  .ob-cat{grid-column:auto !important;grid-row:auto !important;}
  .ob-cat::after{content:"";position:absolute;inset:0;z-index:1;
    background:linear-gradient(180deg,rgba(15,15,14,.12) 0%,rgba(15,15,14,.52) 62%,rgba(15,15,14,.74) 100%);}
  .ob-cat__label{position:absolute;inset:auto 0 0 0;z-index:2;padding:0 .8rem 1rem;text-align:center;
    display:flex;flex-direction:column;align-items:center;gap:.25rem;}
  .ob-cat__label,.ob-cat__label *{color:#fff !important;text-shadow:0 1px 12px rgba(0,0,0,.45);}
  .ob-cat__label > span:first-child,.ob-cat__label strong{font:400 1.02rem/1.2 var(--ff-display);}
}
/* =========================================================
   RÉASSURANCE ET PAGE DE REMERCIEMENT
   ========================================================= */
.ob-trust{margin:2.4rem 0 1rem;padding:1.8rem;background:var(--ob-cream);border-radius:var(--radius-lg);
  display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:2rem;align-items:center;}
@media(max-width:900px){.ob-trust{grid-template-columns:1fr;gap:1.4rem;padding:1.3rem;}}
.ob-trust__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1.2rem;}
.ob-trust__item{display:flex;flex-direction:column;gap:.2rem;}
.ob-trust__item svg{color:var(--ob-brass);margin-bottom:.3rem;}
.ob-trust__item strong{font:500 .92rem/1.25 var(--ff-body);color:var(--ob-ink);}
.ob-trust__item span{font-size:.8rem;line-height:1.45;color:var(--ob-muted);}

.ob-reviews{background:var(--ob-ivory);border-radius:var(--radius-lg);padding:1.3rem;text-align:center;}
.ob-reviews__head{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-bottom:.5rem;}
.ob-reviews__stars{display:inline-flex;gap:.1rem;color:var(--ob-gold);}
.ob-reviews__head strong{font:400 1.05rem/1.2 var(--ff-display);color:var(--ob-ink);}
.ob-reviews p{font-size:.85rem;color:var(--ob-body);margin:0 0 .8rem;}
.ob-reviews__link{font:600 .74rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--ob-brass);}
.ob-reviews__link:hover{color:var(--ob-brass-dark);}

/* --- Page de remerciement --- */
.ob-merci__hero{background:var(--ob-charcoal);color:#fff;text-align:center;padding:3.6rem 0 3.2rem;}
.ob-merci__check{display:inline-flex;align-items:center;justify-content:center;width:66px;height:66px;
  border-radius:50%;background:rgba(217,187,94,.16);color:var(--ob-gold);margin-bottom:1.1rem;
  animation:ob-pop .5s var(--ease) both;}
@keyframes ob-pop{from{transform:scale(.7);opacity:0;}to{transform:none;opacity:1;}}
.ob-merci__hero .ob-eyebrow{color:var(--ob-gold);display:block;margin-bottom:.5rem;}
.ob-merci__hero h1{font:400 clamp(2rem,1.4rem + 2.4vw,3.2rem)/1.1 var(--ff-display);color:#fff;margin:0 0 .6rem;}
.ob-merci__hero p{color:rgba(255,255,255,.82);max-width:52ch;margin:0 auto;}

.ob-merci__body{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2.4rem;
  padding:2.8rem 0 1rem;align-items:start;}
@media(max-width:900px){.ob-merci__body{grid-template-columns:1fr;gap:1.6rem;}}
.ob-merci__recap{background:var(--ob-ivory);border:1px solid var(--ob-line);border-radius:var(--radius-lg);padding:1.6rem;}
.ob-merci__meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;
  padding-bottom:1.2rem;margin-bottom:1.2rem;border-bottom:1px solid var(--ob-line);}
.ob-merci__meta span{display:block;font:600 .64rem/1 var(--ff-eyebrow);letter-spacing:.14em;
  text-transform:uppercase;color:var(--ob-muted);margin-bottom:.3rem;}
.ob-merci__meta strong{font:500 .98rem/1.2 var(--ff-body);color:var(--ob-ink);}
.ob-merci__recap h2{font:400 1.2rem/1.2 var(--ff-display);color:var(--ob-ink);margin:0 0 1rem;}
.ob-merci__items{list-style:none;margin:0;padding:0;}
.ob-merci__items li{display:flex;align-items:center;gap:.9rem;padding:.8rem 0;border-bottom:1px solid var(--ob-line);}
.ob-merci__items li:last-child{border-bottom:0;}
.ob-merci__thumb img{width:56px;height:70px;object-fit:cover;border-radius:var(--radius);display:block;}
.ob-merci__desc{flex:1;min-width:0;}
.ob-merci__desc strong{display:block;font:400 .98rem/1.3 var(--ff-display);color:var(--ob-ink);}
.ob-merci__desc span{font-size:.8rem;color:var(--ob-muted);}
.ob-merci__price{font-weight:500;color:var(--ob-ink);white-space:nowrap;}

.ob-merci__aside{display:grid;gap:1.2rem;}
.ob-merci__next,.ob-merci__contact{background:var(--ob-cream);border-radius:var(--radius-lg);padding:1.4rem;}
.ob-merci__next h3,.ob-merci__contact h3{font:400 1.1rem/1.2 var(--ff-display);color:var(--ob-ink);margin:0 0 .9rem;}
.ob-merci__next ol{list-style:none;margin:0;padding:0;counter-reset:etape;display:grid;gap:.9rem;}
.ob-merci__next li{position:relative;padding-left:2rem;counter-increment:etape;}
.ob-merci__next li::before{content:counter(etape);position:absolute;left:0;top:0;width:22px;height:22px;
  border-radius:50%;background:var(--ob-brass);color:#fff;font:600 .72rem/22px var(--ff-body);text-align:center;}
.ob-merci__next strong{display:block;font:500 .92rem/1.2 var(--ff-body);color:var(--ob-ink);}
.ob-merci__next span{font-size:.83rem;line-height:1.45;color:var(--ob-body);}
.ob-merci__contact p{font-size:.85rem;color:var(--ob-body);margin:0 0 .7rem;}
.ob-merci__contact a{display:flex;align-items:baseline;gap:.5rem;font:500 .95rem/1.9 var(--ff-body);color:var(--ob-brass);}
.ob-merci__contact a span{font-size:.75rem;color:var(--ob-muted);font-weight:400;}
.ob-merci__cta{display:grid;gap:.5rem;}
.ob-merci__cta .ob-btn{width:100%;justify-content:center;text-align:center;}

.ob-merci__avis{background:var(--ob-cream);text-align:center;padding:3rem 0;margin-top:2.4rem;}
.ob-merci__avis h2{font:400 clamp(1.4rem,1.1rem + 1.2vw,2rem)/1.2 var(--ff-display);color:var(--ob-ink);margin:.4rem 0 .5rem;}
.ob-merci__avis p{color:var(--ob-body);max-width:50ch;margin:0 auto 1.2rem;}
.ob-merci__avis .ob-btn--light{background:var(--ob-ink);color:#fff;border:0;}
.ob-merci__avis .ob-btn--light:hover{background:var(--ob-brass);}

/* On masque le récapitulatif natif de WooCommerce, remplacé par le nôtre. */
.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-customer-details,
.woocommerce-order ul.woocommerce-order-overview{display:none;}
/* =========================================================
   TUNNEL D'ACHAT — panier et commande
   ========================================================= */

/* --- Fil d'étapes --- */
.ob-steps-bar{list-style:none;display:flex;align-items:center;justify-content:center;gap:0;
  margin:0 0 2.4rem;padding:0;flex-wrap:wrap;}
.ob-steps-bar li{display:flex;align-items:center;gap:.5rem;color:var(--ob-muted);font-size:.84rem;}
.ob-steps-bar li:not(:last-child)::after{content:"";width:clamp(18px,4vw,54px);height:1px;
  background:var(--ob-line-2);margin:0 clamp(.5rem,1.4vw,1rem);}
.ob-steps-bar__dot{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--ob-line-2);
  display:flex;align-items:center;justify-content:center;font:600 .74rem/1 var(--ff-body);
  background:var(--ob-ivory);transition:all .25s var(--ease);}
.ob-steps-bar li.is-current .ob-steps-bar__dot{background:var(--ob-ink);border-color:var(--ob-ink);color:#fff;}
.ob-steps-bar li.is-current{color:var(--ob-ink);font-weight:500;}
.ob-steps-bar li.is-done .ob-steps-bar__dot{background:var(--ob-brass);border-color:var(--ob-brass);color:#fff;}
.ob-steps-bar li.is-done{color:var(--ob-body);}
@media(max-width:620px){
  .ob-steps-bar__lab{display:none;}
  .ob-steps-bar li.is-current .ob-steps-bar__lab{display:inline;}
}

/* --- Grille commune --- */
.ob-cart,.ob-checkout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:2.4rem;align-items:start;}
@media(max-width:960px){.ob-cart,.ob-checkout{grid-template-columns:1fr;gap:1.6rem;}}

/* --- Panier : entête --- */
.ob-cart__head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;
  padding-bottom:1rem;border-bottom:1px solid var(--ob-line);margin-bottom:1.2rem;flex-wrap:wrap;}
.ob-cart__head h2{font:400 1.35rem/1.2 var(--ff-display);color:var(--ob-ink);margin:0;}
.ob-cart__continue{font:600 .72rem/1 var(--ff-eyebrow);letter-spacing:.12em;text-transform:uppercase;
  color:var(--ob-brass);border-bottom:1px solid currentColor;padding-bottom:2px;}

/* --- Jauge de livraison offerte --- */
.ob-cart__ship{background:var(--ob-cream);border-radius:var(--radius-lg);padding:.9rem 1.1rem;margin-bottom:1.4rem;}
.ob-cart__ship p{margin:0 0 .55rem;font-size:.88rem;color:var(--ob-body);}
.ob-cart__ship p.is-ok{color:var(--ob-brass-dark);font-weight:500;display:flex;align-items:center;gap:.4rem;}
.ob-cart__bar{height:4px;background:var(--ob-line-2);border-radius:2px;overflow:hidden;}
.ob-cart__bar span{display:block;height:100%;background:var(--ob-brass);border-radius:2px;transition:width .5s var(--ease);}

/* --- Lignes du panier --- */
.ob-cart__list{list-style:none;margin:0;padding:0;}
.ob-cart__item{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:1.1rem;
  padding:1.2rem 0;border-bottom:1px solid var(--ob-line);align-items:start;}
@media(max-width:560px){
  .ob-cart__item{grid-template-columns:78px minmax(0,1fr);}
  .ob-cart__actions{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;}
}
.ob-cart__thumb{display:block;border-radius:var(--radius);overflow:hidden;background:var(--ob-cream-2);}
.ob-cart__thumb img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;display:block;margin:0 !important;}
.ob-cart__info{min-width:0;display:flex;flex-direction:column;gap:.2rem;}
.ob-cart__cat{font:600 .62rem/1 var(--ff-eyebrow);letter-spacing:.16em;text-transform:uppercase;color:var(--ob-muted);}
.ob-cart__name{font:400 1.05rem/1.3 var(--ff-display);color:var(--ob-ink);}
.ob-cart__name:hover{color:var(--ob-brass);}
.ob-cart__meta{font-size:.8rem;color:var(--ob-body);}
.ob-cart__meta p{margin:0;}
.ob-cart__sku{font-size:.74rem;color:var(--ob-muted);}
.ob-cart__unit{margin-top:.3rem;font-size:.88rem;color:var(--ob-body);}
.ob-cart__unit em{font-style:normal;font-size:.74rem;color:var(--ob-muted);margin-left:.3rem;}
.ob-cart__actions{display:flex;flex-direction:column;align-items:flex-end;gap:.7rem;}
.ob-cart__line{font:500 1.02rem/1 var(--ff-body);color:var(--ob-ink);white-space:nowrap;}
.ob-cart__remove{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;
  border-radius:50%;border:1px solid var(--ob-line);color:var(--ob-muted);transition:all .2s var(--ease);}
.ob-cart__remove:hover{border-color:var(--ob-terracotta);color:var(--ob-terracotta);background:rgba(225,98,61,.06);}
.ob-cart__item .quantity{display:contents;}
.ob-cart__item .ob-qty{display:inline-flex;align-items:center;border:1px solid var(--ob-line-2);
  border-radius:var(--radius);overflow:hidden;background:var(--ob-ivory);}
.ob-cart__item .ob-qty input{width:42px;height:32px;border:0;border-inline:1px solid var(--ob-line-2);
  text-align:center;font-size:.88rem;-moz-appearance:textfield;background:none;}
.ob-cart__item .ob-qty input::-webkit-outer-spin-button,
.ob-cart__item .ob-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}

/* --- Code promo et mise à jour --- */
.ob-cart__tools{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;
  padding-top:1.4rem;flex-wrap:wrap;}
.ob-cart__coupon label{display:block;font:600 .66rem/1 var(--ff-eyebrow);letter-spacing:.14em;
  text-transform:uppercase;color:var(--ob-muted);margin-bottom:.4rem;}
.ob-cart__coupon > div{display:flex;gap:.4rem;}
.ob-cart__coupon input{border:1px solid var(--ob-line-2);border-radius:var(--radius);padding:.65rem .8rem;
  font-size:.9rem;width:170px;background:var(--ob-ivory);}
.ob-cart__coupon input:focus{outline:none;border-color:var(--ob-brass);}
.ob-cart__coupon .button{background:var(--ob-ink) !important;color:#fff !important;border:0 !important;
  border-radius:var(--radius) !important;padding:.68rem 1.1rem !important;font:600 .7rem/1 var(--ff-eyebrow) !important;
  letter-spacing:.1em;text-transform:uppercase;}
.ob-cart__coupon .button:hover{background:var(--ob-brass) !important;}
.ob-cart__update{background:none !important;color:var(--ob-body) !important;border:1px solid var(--ob-line-2) !important;
  border-radius:var(--radius) !important;padding:.68rem 1.1rem !important;font:600 .7rem/1 var(--ff-eyebrow) !important;
  letter-spacing:.1em;text-transform:uppercase;}
.ob-cart__update:hover{border-color:var(--ob-ink) !important;color:var(--ob-ink) !important;}
.ob-cart__update[disabled]{opacity:.4;}

/* --- Récapitulatif --- */
.ob-cart__summary,.ob-checkout__summary{background:var(--ob-ivory);border:1px solid var(--ob-line);
  border-radius:var(--radius-lg);padding:1.5rem;position:sticky;top:calc(var(--header-h) + 20px);}
@media(max-width:960px){.ob-cart__summary,.ob-checkout__summary{position:static;}}
.ob-cart__summary h2,.ob-checkout__summary h2{font:400 1.2rem/1.2 var(--ff-display);color:var(--ob-ink);
  margin:0 0 1rem;padding-bottom:.9rem;border-bottom:1px solid var(--ob-line);}
.ob-cart__summary .shop_table,
.ob-cart__summary table{width:100%;border:0 !important;border-collapse:collapse;}
.ob-cart__summary .shop_table th,
.ob-cart__summary .shop_table td{border:0 !important;padding:.6rem 0 !important;background:none !important;
  font-size:.92rem;text-transform:none !important;letter-spacing:0 !important;}
.ob-cart__summary .shop_table th{color:var(--ob-muted);font-weight:400;}
.ob-cart__summary .shop_table td{text-align:right;color:var(--ob-ink);}
.ob-cart__summary .order-total th,.ob-cart__summary .order-total td{padding-top:.9rem !important;
  border-top:1px solid var(--ob-line) !important;font-size:1.05rem;}
.ob-cart__summary .order-total td{font-weight:600;}
.ob-cart__summary .order-total .woocommerce-Price-amount{font:500 1.3rem/1 var(--ff-body);color:var(--ob-ink);}
.ob-cart__summary .woocommerce-shipping-destination,
.ob-cart__summary .shipping-calculator-button{font-size:.8rem;color:var(--ob-muted);}
.wc-proceed-to-checkout{margin-top:1.1rem;padding:0;}
.wc-proceed-to-checkout .checkout-button{display:flex !important;align-items:center;justify-content:center;
  width:100%;background:var(--ob-ink) !important;color:#fff !important;border:0 !important;
  border-radius:var(--radius) !important;padding:1rem 1.4rem !important;
  font:600 .8rem/1 var(--ff-eyebrow) !important;letter-spacing:.12em;text-transform:uppercase;
  transition:background .25s var(--ease);}
.wc-proceed-to-checkout .checkout-button:hover{background:var(--ob-brass) !important;}

.ob-cart__points{list-style:none;margin:1.2rem 0 0;padding:1.1rem 0 0;border-top:1px solid var(--ob-line);
  display:grid;gap:.55rem;}
.ob-cart__points li{display:flex;align-items:center;gap:.55rem;font-size:.83rem;color:var(--ob-body);}
.ob-cart__points svg{flex:0 0 auto;color:var(--ob-brass);}

/* --- Panier vide --- */
.ob-cart-empty{text-align:center;padding:3.4rem 1.5rem 2.6rem;max-width:52ch;margin-inline:auto;}
.ob-cart-empty__ico{display:inline-flex;align-items:center;justify-content:center;width:84px;height:84px;
  border-radius:50%;background:var(--ob-cream);color:var(--ob-line-2);margin-bottom:1.2rem;}
.ob-cart-empty h2{font:400 clamp(1.5rem,1.2rem + 1.2vw,2.1rem)/1.2 var(--ff-display);color:var(--ob-ink);margin:0 0 .6rem;}
.ob-cart-empty p{color:var(--ob-body);margin:0 0 1.5rem;}
.ob-cart-empty__cta{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;}

/* --- Commande --- */
.ob-checkout__block{background:var(--ob-ivory);border:1px solid var(--ob-line);border-radius:var(--radius-lg);
  padding:1.6rem;margin-bottom:1.4rem;}
.ob-checkout__block > header{display:flex;align-items:center;gap:.7rem;margin-bottom:1.3rem;
  padding-bottom:.9rem;border-bottom:1px solid var(--ob-line);}
.ob-checkout__num{width:28px;height:28px;border-radius:50%;background:var(--ob-ink);color:#fff;
  display:flex;align-items:center;justify-content:center;font:600 .8rem/1 var(--ff-body);flex:0 0 auto;}
.ob-checkout__block h2{font:400 1.22rem/1.2 var(--ff-display);color:var(--ob-ink);margin:0;}

.ob-checkout .col2-set{display:grid;grid-template-columns:1fr;gap:0;width:auto;}
.ob-checkout .col2-set .col-1,.ob-checkout .col2-set .col-2{width:auto;float:none;}
.ob-checkout h3{font:500 .78rem/1 var(--ff-eyebrow);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ob-muted);margin:1.4rem 0 .9rem;}
.ob-checkout .form-row{margin:0 0 .9rem;padding:0;}
.ob-checkout .form-row label{display:block;font:500 .78rem/1.3 var(--ff-body);color:var(--ob-body);margin-bottom:.35rem;}
.ob-checkout .form-row .required{color:var(--ob-terracotta);text-decoration:none;}
.ob-checkout .form-row input[type=text],
.ob-checkout .form-row input[type=email],
.ob-checkout .form-row input[type=tel],
.ob-checkout .form-row input[type=password],
.ob-checkout .form-row textarea,
.ob-checkout .form-row select,
.ob-checkout .select2-container .select2-selection--single{width:100%;border:1px solid var(--ob-line-2);
  border-radius:var(--radius);padding:.78rem .9rem;font:400 .94rem var(--ff-body);background:var(--ob-ivory);
  height:auto;color:var(--ob-ink);}
.ob-checkout .select2-container .select2-selection--single .select2-selection__rendered{padding:0;line-height:1.4;color:var(--ob-ink);}
.ob-checkout .select2-container .select2-selection--single .select2-selection__arrow{top:50%;transform:translateY(-50%);right:.6rem;}
.ob-checkout .form-row input:focus,.ob-checkout .form-row select:focus,.ob-checkout .form-row textarea:focus{
  outline:none;border-color:var(--ob-brass);box-shadow:0 0 0 3px rgba(184,155,70,.15);}
.ob-checkout .form-row-first,.ob-checkout .form-row-last{width:calc(50% - .45rem);float:left;}
.ob-checkout .form-row-last{float:right;}
.ob-checkout .form-row-wide{clear:both;}
@media(max-width:520px){.ob-checkout .form-row-first,.ob-checkout .form-row-last{width:100%;float:none;}}

.ob-checkout__review table.shop_table{border:1px solid var(--ob-line);border-radius:var(--radius);
  border-collapse:separate;border-spacing:0;overflow:hidden;width:100%;}
.ob-checkout__review table.shop_table th{background:var(--ob-cream);font:600 .68rem/1 var(--ff-eyebrow);
  letter-spacing:.12em;text-transform:uppercase;color:var(--ob-muted);padding:.8rem 1rem;text-align:left;}
.ob-checkout__review table.shop_table td{padding:.8rem 1rem;border-top:1px solid var(--ob-line);font-size:.92rem;}
.ob-checkout__review .order-total td{font-weight:600;font-size:1.05rem;}
#payment{background:none;border-radius:0;margin-top:1.2rem;}
#payment ul.payment_methods{border:1px solid var(--ob-line);border-radius:var(--radius);padding:.5rem;
  background:var(--ob-cream);list-style:none;margin:0 0 1rem;}
#payment ul.payment_methods li{padding:.55rem .7rem;border-radius:var(--radius);}
#payment ul.payment_methods li:hover{background:var(--ob-ivory);}
#payment div.payment_box{background:var(--ob-ivory) !important;border-radius:var(--radius);font-size:.87rem;
  color:var(--ob-body);margin:.5rem 0 0;padding:.9rem 1rem;}
#payment div.payment_box::before{display:none !important;}
#payment .place-order{padding:0;margin:0;}
#payment #place_order{width:100%;background:var(--ob-ink) !important;color:#fff !important;border:0 !important;
  border-radius:var(--radius) !important;padding:1.05rem 1.4rem !important;
  font:600 .82rem/1 var(--ff-eyebrow) !important;letter-spacing:.12em;text-transform:uppercase;
  transition:background .25s var(--ease);}
#payment #place_order:hover{background:var(--ob-brass) !important;}
.woocommerce-privacy-policy-text{font-size:.8rem;color:var(--ob-muted);line-height:1.55;}
.woocommerce-terms-and-conditions-wrapper{margin-bottom:1rem;}

/* --- Récapitulatif de commande --- */
.ob-checkout__items{list-style:none;margin:0 0 1rem;padding:0;max-height:340px;overflow-y:auto;}
.ob-checkout__items li{display:flex;align-items:center;gap:.8rem;padding:.7rem 0;border-bottom:1px solid var(--ob-line);}
.ob-checkout__items li:last-child{border-bottom:0;}
.ob-checkout__thumb{position:relative;flex:0 0 auto;}
.ob-checkout__thumb img{width:52px;height:64px;object-fit:cover;border-radius:var(--radius);display:block;margin:0 !important;}
.ob-checkout__thumb em{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;border-radius:10px;
  background:var(--ob-ink);color:#fff;font:600 .68rem/20px var(--ff-body);text-align:center;font-style:normal;padding:0 5px;}
.ob-checkout__desc{flex:1;min-width:0;}
.ob-checkout__desc strong{display:block;font:400 .92rem/1.3 var(--ff-display);color:var(--ob-ink);}
.ob-checkout__desc span{font-size:.76rem;color:var(--ob-muted);}
.ob-checkout__desc span p{margin:0;}
.ob-checkout__price{font-size:.9rem;font-weight:500;color:var(--ob-ink);white-space:nowrap;}
.ob-checkout__edit{display:block;text-align:center;font:600 .7rem/1 var(--ff-eyebrow);letter-spacing:.12em;
  text-transform:uppercase;color:var(--ob-brass);padding:.7rem 0;border-top:1px solid var(--ob-line);}

/* --- Messages WooCommerce --- */
.woocommerce-cart .woocommerce-message,.woocommerce-checkout .woocommerce-message,
.woocommerce-cart .woocommerce-info,.woocommerce-checkout .woocommerce-info,
.woocommerce-cart .woocommerce-error,.woocommerce-checkout .woocommerce-error{
  border-top:0;border-left:3px solid var(--ob-brass);background:var(--ob-cream);border-radius:var(--radius);
  padding:.95rem 1.2rem;margin-bottom:1.4rem;color:var(--ob-body);font-size:.9rem;list-style:none;}
.woocommerce-cart .woocommerce-error,.woocommerce-checkout .woocommerce-error{border-left-color:var(--ob-terracotta);}
.woocommerce-message .button,.woocommerce-info .button{background:var(--ob-ink) !important;color:#fff !important;
  border-radius:var(--radius) !important;padding:.5rem 1rem !important;font-size:.72rem !important;}
.woocommerce-form-coupon-toggle{margin-bottom:1.2rem;}

/* --- Conteneur général --- */
.woocommerce-cart .ob-entry,.woocommerce-checkout .ob-entry{max-width:none;}
.woocommerce-cart .ob-wrap,.woocommerce-checkout .ob-wrap{max-width:var(--wrap-wide);}
.woocommerce-cart main.ob-section,.woocommerce-checkout main.ob-section{padding-block:2.6rem 4rem;}
.ob-trust{margin-top:3rem;}

/* ==== FILTRES COMPACTS AU DÉFILEMENT (desktop) ====
   Passé le haut de page, le panneau se resserre et devient défilable :
   il suit le scroll sans occuper toute la colonne. */
@media (min-width: 1000px) {

  .ob-shop__aside { position: sticky; top: calc(var(--header-h) + 14px); }

  .ob-filters {
    transition: padding .3s var(--ease), box-shadow .3s var(--ease),
                background .3s var(--ease), border-color .3s var(--ease);
  }

  .ob-shop__aside.is-compact .ob-filters {
    padding: .5rem .75rem .75rem;
    max-height: calc(100vh - var(--header-h) - 34px);
    overflow-y: auto;
    overscroll-behavior: contain;
    background: rgba(255, 255, 255, .78);
    -webkit-backdrop-filter: saturate(160%) blur(14px);
    backdrop-filter: saturate(160%) blur(14px);
    border-color: rgba(30, 30, 28, .10);
    box-shadow: 0 14px 34px -18px rgba(30, 30, 28, .28);
    scrollbar-width: thin;
  }
  .ob-shop__aside.is-compact .ob-filters::-webkit-scrollbar { width: 6px; }
  .ob-shop__aside.is-compact .ob-filters::-webkit-scrollbar-thumb {
    background: rgba(30, 30, 28, .18); border-radius: 3px;
  }

  /* L'en-tête reste visible en haut du panneau réduit. */
  .ob-shop__aside.is-compact .ob-filters__head {
    position: sticky; top: 0; z-index: 3;
    margin: 0 -.75rem .4rem; padding: .55rem .75rem;
    background: inherit;
    border-bottom: 1px solid var(--ob-line);
  }
  .ob-shop__aside.is-compact .ob-filters__head h2 { font-size: .78rem; letter-spacing: .1em; }
  .ob-shop__aside.is-compact .ob-filters__head svg { width: 15px; height: 15px; }

  /* Densité resserrée : moins d'air, typo légèrement réduite. */
  .ob-shop__aside.is-compact .ob-fgroup > summary {
    padding-block: .5rem;
    font-size: .76rem;
  }
  .ob-shop__aside.is-compact .ob-fgroup__body { padding-block: .25rem .5rem; }
  .ob-shop__aside.is-compact .ob-check { padding-block: .18rem; }
  .ob-shop__aside.is-compact .ob-check__label { font-size: .8rem; }
  .ob-shop__aside.is-compact .ob-chips { margin-bottom: .5rem; }
  .ob-shop__aside.is-compact .ob-fcat__toggle { font-size: .7rem; padding-block: .2rem; }

  /* Les swatches couleur se resserrent aussi. */
  .ob-shop__aside.is-compact .ob-swatch { width: 22px; height: 22px; }
}

/* Le compactage n'a pas de sens quand le panneau est un tiroir mobile. */
@media (max-width: 999px) {
  .ob-shop__aside.is-compact .ob-filters { max-height: none; overflow: visible; }
}

@media (prefers-reduced-motion: reduce) {
  .ob-filters { transition: none; }
}

/* ==== AVANTAGES PROS (grille épurée) ==== */
.ob-proben{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:clamp(.9rem,2vw,1.5rem);
  margin:clamp(1.5rem,3vw,2.6rem) 0 clamp(2rem,4vw,3rem);
}
.ob-proben__card{
  background:#fff;border:1px solid var(--ob-line);
  border-radius:var(--radius-lg);
  padding:clamp(1.5rem,2.4vw,2.1rem);
  display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.ob-proben__card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 34px -18px rgba(30,30,28,.28);
  border-color:rgba(184,155,70,.4);
}
.ob-proben__mark{
  width:56px;height:56px;flex:none;
  display:grid;place-items:center;
  border-radius:50%;
  background:rgba(184,155,70,.10);
  color:var(--ob-brass);
  margin-bottom:.2rem;
}
.ob-proben__mark svg{width:26px;height:26px;}
.ob-proben__mark--pct{
  width:auto;min-width:56px;height:56px;
  padding:0 1rem;border-radius:28px;
  font-family:var(--ff-display);font-weight:400;font-size:1.5rem;
  color:var(--ob-brass);letter-spacing:-.01em;
}
.ob-proben__card h3{
  font-family:var(--ff-display);font-weight:400;
  font-size:1.2rem;line-height:1.25;color:var(--ob-ink);margin:0;
}
.ob-proben__card p{
  font-size:.9rem;line-height:1.7;color:var(--ob-body);margin:0;
}
@media (max-width:900px){ .ob-proben{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .ob-proben{grid-template-columns:1fr;} }

.ob-entry .ob-ploggrid .ob-plog__media img,
.ob-entry .ob-partner__media img{margin:0 !important;}

/* ==== HERO MOBILE : titre compact, carte au-dessus des tirets ==== */
@media (max-width: 760px) {
  .ob-rev__content { align-items: flex-end; }

  /* La carte de verre remonte pour dégager les tirets (à 1.4rem du bas). */
  .ob-rev__inner {
    max-width: 100%;
    text-align: center;
    margin: 0 auto 3.4rem;
    padding: 1.15rem 1.15rem 1.35rem;
  }

  /* Titre produit nettement réduit et borné à 3 lignes. */
  .home .ob-rev__title,
  .ob-rev__title {
    font-size: clamp(1.3rem, 1rem + 2.2vw, 1.85rem);
    line-height: 1.18;
    margin-bottom: .45rem;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .ob-rev__eyebrow { margin-bottom: .6rem; font-size: .66rem; }
  .ob-rev__cat { margin-bottom: .65rem; }
  .ob-rev__price { font-size: 1.12rem; margin-bottom: 1.05rem; }

  /* Les deux boutons tiennent sur la largeur sans déborder. */
  .ob-rev__cta { flex-wrap: wrap; justify-content: center; gap: .55rem; }
  .ob-rev__cta .ob-btn { padding-inline: 1.1rem; }
}

@media (max-width: 400px) {
  .ob-rev__inner { margin-bottom: 3.1rem; }
  .home .ob-rev__title, .ob-rev__title { -webkit-line-clamp: 2; }
}

/* ==== FICHE PRODUIT MOBILE : plus de débordement ==== */
@media (max-width: 999px) {
  /* La colonne de la grille gardait la largeur intrinsèque de l'image :
     on force une colonne unique qui peut rétrécir (min-width:0). */
  .ob-single .ob-single__top {
    display: block;
  }
  .ob-single .ob-gallery,
  .ob-single .ob-buy {
    min-width: 0;
    max-width: 100%;
  }
  .ob-single .ob-gallery__stage,
  .ob-single .ob-gallery__slide,
  .ob-single .ob-gallery img {
    max-width: 100%;
  }
  .ob-single .ob-gallery img { width: 100%; height: auto; }
}

/* ==== PORTABLE / TABLETTE : colonnes + titres ==== */

/* Boutique : plus de colonnes, cartes plus compactes.
   4 colonnes sur portable/tablette large, 3 sur tablette, 2 sur mobile. */
@media (min-width: 1000px) {
  .woocommerce ul.products.ob-grid, ul.products.ob-grid { grid-template-columns: repeat(4, 1fr) !important; gap: 1.6rem 1.1rem !important; }
}
@media (min-width: 760px) and (max-width: 999px) {
  .woocommerce ul.products.ob-grid, ul.products.ob-grid { grid-template-columns: repeat(3, 1fr) !important; gap: 1.4rem 1rem !important; }
}

/* Titres surdimensionnés sur portable/tablette : on abaisse leur plafond. */
@media (min-width: 761px) and (max-width: 1440px) {
  .ob-rev__title,
  .home .ob-rev__title { font-size: clamp(1.9rem, 1.3rem + 2.2vw, 3.1rem); }
  .ob-buy__title { font-size: clamp(1.5rem, 1.15rem + 1.1vw, 2.1rem); }
  .ob-buy__price { font-size: 1.4rem; }
  .ob-shop-hero__title { font-size: var(--fs-h1); }
}
@media (min-width: 761px) and (max-width: 1180px) {
  .ob-rev__title,
  .home .ob-rev__title { font-size: clamp(1.7rem, 1.3rem + 1.8vw, 2.6rem); }
  .ob-buy__title { font-size: clamp(1.4rem, 1.1rem + 1vw, 1.9rem); }
  .ob-buy__price { font-size: 1.3rem; }
}

/* ==== FICHE PRODUIT : image contenue portable/tablette ==== */
@media (max-width: 1440px) {
  /* Colonnes équilibrées : l'image ne prend plus la part du lion. */
  .ob-single .ob-single__top { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  /* Format carré + plafond en hauteur : l'image reste dans l'écran. */
  .ob-single .ob-gallery__stage { aspect-ratio: 1 / 1; max-height: 70vh; }
}
@media (max-width: 999px) {
  .ob-single .ob-single__top { display: block; }
  .ob-single .ob-gallery { max-width: 460px; margin-inline: auto; }
}

/* ==== MÉGA-MENU PORTABLE / TABLETTE ====
   On resserre l'ensemble et on garantit qu'il tient dans la hauteur d'écran. */
@media (min-width: 1000px) and (max-width: 1440px) {
  .ob-nav-desktop .ob-mega {
    padding: 1.2rem 1.4rem 1rem !important;
    gap: .8rem;
    max-height: calc(100vh - 130px);
    overflow-y: auto;
  }
  .ob-nav-desktop .ob-mega .ob-mega__link { padding: .55rem .65rem !important; gap: .7rem; }
  .ob-nav-desktop .ob-mega__cards { margin-top: .7rem; padding-top: .9rem; gap: .7rem; }
  .ob-nav-desktop .ob-mcard { padding: .9rem 1.05rem; }
  .ob-nav-desktop .ob-mega__foot { margin-top: .6rem; padding-top: .9rem; gap: 1rem 1.4rem; }
  .ob-nav-desktop .ob-mega__pitch strong { font-size: 1rem; }
}
/* Tablette / petit portable : 3 colonnes, encore un cran plus compact. */
@media (min-width: 1000px) and (max-width: 1180px) {
  .ob-nav-desktop .ob-mega { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ob-nav-desktop .ob-mega__desc { font-size: .78rem; }
}

/* ==== MÉGA-MENU — barre de bas (refonte) ==== */
@property --ob-ai-angle { syntax:'<angle>'; inherits:false; initial-value:0deg; }

.ob-mega__foot{
  grid-column:1/-1;
  border-top:1px solid var(--ob-line);
  margin-top:.9rem; padding-top:1.2rem;
  display:flex; align-items:center; gap:1.4rem 2.4rem; flex-wrap:wrap;
}
.ob-mega__pitch{ flex:1 1 240px; min-width:0; max-width:400px; }
.ob-mega__pitch strong{ display:block; font-family:var(--ff-display); font-weight:400; font-size:1.08rem; line-height:1.3; color:var(--ob-ink); margin-bottom:.3rem; }
.ob-mega__pitch span{ display:block; font-size:.82rem; line-height:1.55; color:var(--ob-body); }

/* Cluster d'actions, aligné à droite, éléments à hauteur strictement égale. */
.ob-mega__actions{ flex:0 0 auto; margin-left:auto; display:flex; align-items:stretch; gap:.85rem; }
.ob-nav .sub-menu .ob-mega__actions > a{
  min-height:60px;
  display:inline-flex; align-items:center; justify-content:center;
  box-sizing:border-box; white-space:nowrap; text-decoration:none;
  border-radius:14px; transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease);
}

/* 1 — Bouton IA (élément vedette) */
.ob-nav .sub-menu .ob-mega__actions a.ob-mega__ai{
  gap:.72rem; padding:.5rem 1.2rem .5rem .55rem;
  position:relative; isolation:isolate;
  border:1.6px solid transparent;
  background:
    linear-gradient(var(--ob-cream),var(--ob-cream)) padding-box,
    conic-gradient(from var(--ob-ai-angle), var(--ob-brass),var(--ob-gold),var(--ob-terracotta),#7FB4C9,var(--ob-brass)) border-box;
  animation:ob-ai-spin 5s linear infinite;
}
@keyframes ob-ai-spin{ to{ --ob-ai-angle:360deg; } }
.ob-mega__ai::before{
  content:""; position:absolute; inset:-6px; z-index:-1; border-radius:inherit;
  background:radial-gradient(60% 120% at 20% 50%, rgba(184,155,70,.30), transparent 70%),
            radial-gradient(60% 120% at 80% 50%, rgba(225,98,61,.18), transparent 70%);
  filter:blur(11px); opacity:.6; animation:ob-ai-breathe 3.6s ease-in-out infinite;
}
@keyframes ob-ai-breathe{ 0%,100%{opacity:.4;transform:scale(.96);} 50%{opacity:.8;transform:scale(1.05);} }
.ob-mega__ai:hover{ transform:translateY(-2px); box-shadow:0 14px 32px -12px rgba(184,155,70,.5); }
.ob-mega__ai-spark{
  flex:none; width:40px; height:40px; border-radius:50%;
  display:grid; place-items:center; color:#fff;
  background:linear-gradient(135deg,var(--ob-brass),var(--ob-gold));
  box-shadow:0 2px 8px rgba(184,155,70,.45);
}
.ob-mega__ai-spark svg{ width:21px; height:21px; animation:ob-ai-twinkle 2.6s ease-in-out infinite; }
@keyframes ob-ai-twinkle{ 0%,100%{transform:scale(1) rotate(0);opacity:.92;} 45%{transform:scale(1.18) rotate(8deg);opacity:1;} }
.ob-mega__ai-txt{ display:flex; flex-direction:column; align-items:flex-start; line-height:1.22; }
.ob-mega__ai-txt b{
  font-family:var(--ff-body); font-weight:600; font-size:.9rem; letter-spacing:.01em;
  background:linear-gradient(90deg,var(--ob-brass-dark),var(--ob-terracotta-d),var(--ob-brass-dark));
  background-size:200% auto; -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
  animation:ob-ai-shine 4s linear infinite;
}
@keyframes ob-ai-shine{ to{ background-position:200% center; } }
.ob-mega__ai-txt em{ font-style:normal; font-size:.72rem; color:var(--ob-body); margin-top:.1rem; }

/* 2 — Voir tout le catalogue (action primaire solide) */
.ob-nav .sub-menu .ob-mega__actions a.ob-mega__cta{
  gap:.5rem; padding:0 1.5rem;
  font:600 .76rem/1 var(--ff-eyebrow); letter-spacing:.11em; text-transform:uppercase;
  color:#fff !important; background:var(--ob-brass);
}
.ob-mega__cta:hover{ background:var(--ob-brass-dark); }
.ob-mega__cta span{ font-size:1rem; transition:transform .25s var(--ease); }
.ob-mega__cta:hover span{ transform:translateX(3px); }

/* 3 — Espace professionnels (secondaire, contour) */
.ob-nav .sub-menu .ob-mega__actions a.ob-mega__side{
  gap:.45rem; padding:0 1.35rem;
  font:600 .74rem/1 var(--ff-eyebrow); letter-spacing:.08em; text-transform:uppercase;
  color:var(--ob-ink); border:1px solid var(--ob-line-2); background:transparent;
}
.ob-mega__side span{ color:var(--ob-brass); font-size:1rem; transition:transform .25s var(--ease); }
.ob-mega__side:hover{ border-color:var(--ob-brass); color:var(--ob-brass); background:rgba(184,155,70,.05); }
.ob-mega__side:hover span{ transform:translateX(3px); }

/* En-tête transparent (accueil non défilé) : lisibilité préservée. */
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__pitch strong{ color:var(--ob-ink) !important; }
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__cta{ color:#fff !important; }
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop .ob-mega__side{ color:var(--ob-ink) !important; }
.home .ob-header--float:not(.is-stuck) .ob-nav-desktop a.ob-mega__ai{
  background:
    linear-gradient(var(--ob-cream),var(--ob-cream)) padding-box,
    conic-gradient(from var(--ob-ai-angle), var(--ob-brass),var(--ob-gold),var(--ob-terracotta),#7FB4C9,var(--ob-brass)) border-box !important;
}

/* Portable / tablette : le cluster passe sous le pitch, pleine largeur. */
@media (min-width:1000px) and (max-width:1300px){
  .ob-nav-desktop .ob-mega__pitch{ flex:1 1 100%; max-width:100%; }
  .ob-nav-desktop .ob-mega__actions{ margin-left:0; width:100%; justify-content:flex-start; flex-wrap:wrap; }
}

/* Accessibilité : mouvement réduit + repli si @property non géré. */
@media (prefers-reduced-motion: reduce){
  .ob-mega__ai,.ob-mega__ai::before,.ob-mega__ai-spark svg,.ob-mega__ai-txt b{ animation:none; }
  .ob-nav .sub-menu .ob-mega__actions a.ob-mega__ai{ border-color:var(--ob-brass); }
}
@supports not (background: conic-gradient(from 0deg, red, blue) border-box){
  .ob-nav .sub-menu .ob-mega__actions a.ob-mega__ai{ border-color:var(--ob-brass); background:var(--ob-cream); }
}

/* ==== LEVIERS MARKETING ==== */

/* --- Barre livraison offerte --- */
.ob-shipbar{ margin:0 0 1rem; }
.ob-shipbar--cart{ max-width:100%; margin:0 0 1.6rem; padding:1rem 1.2rem; background:var(--ob-cream,#FAF7F3); border:1px solid var(--ob-line,#E7E0D6); border-radius:12px; }
.ob-shipbar--side{ padding:0 0 .2rem; }
.ob-shipbar__txt{
  display:flex; align-items:center; gap:.5rem; justify-content:center;
  font-size:.86rem; color:var(--ob-body,#5A5A57); margin:0 0 .6rem; text-align:center;
}
.ob-shipbar--side .ob-shipbar__txt{ font-size:.8rem; justify-content:flex-start; }
.ob-shipbar__txt svg{ flex:none; color:var(--ob-brass,#B89B46); }
.ob-shipbar__txt strong{ color:var(--ob-ink,#23282D); }
.ob-shipbar__track{ height:7px; border-radius:100px; background:rgba(184,155,70,.16); overflow:hidden; }
.ob-shipbar__track span{
  display:block; height:100%; border-radius:100px;
  background:linear-gradient(90deg, var(--ob-brass,#B89B46), var(--ob-gold,#D9BB5E));
  transition:width .6s var(--ease,ease);
}
.ob-shipbar.is-complete .ob-shipbar__track span{ background:linear-gradient(90deg, #4c8a4f, #7BA07E); }
.ob-shipbar.is-complete .ob-shipbar__txt svg{ color:#4c8a4f; }

/* --- Badge stock faible sur les cartes --- */

/* --- Conseils d'entretien (page merci) --- */
.ob-care{ padding-block:clamp(2.4rem,5vw,4rem); background:var(--ob-cream,#FAF7F3); }
.ob-care__head{ max-width:52ch; margin:0 auto clamp(1.6rem,3vw,2.4rem); }
.ob-care__head h2{ font-family:var(--ff-display); font-weight:400; font-size:var(--fs-h3); color:var(--ob-ink); margin:.3rem 0 .5rem; }
.ob-care__head p{ color:var(--ob-body); font-size:.95rem; }
.ob-care__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(1rem,2.5vw,1.8rem); }
.ob-care__item{ background:#fff; border:1px solid var(--ob-line); border-radius:var(--radius-lg); padding:1.4rem 1.3rem; }
.ob-care__num{ display:block; font-family:var(--ff-display); font-size:1.7rem; color:var(--ob-brass); opacity:.5; margin-bottom:.4rem; }
.ob-care__item h3{ font:500 1rem/1.3 var(--ff-body); color:var(--ob-ink); margin:0 0 .4rem; }
.ob-care__item p{ font-size:.85rem; line-height:1.6; color:var(--ob-body); margin:0; }
@media (max-width:900px){ .ob-care__grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .ob-care__grid{ grid-template-columns:1fr; } }

/* ==== DISPONIBILITÉ PAR VARIATION ==== */
.ob-avail{ margin:0 0 1.2rem; border:1px solid var(--ob-line); border-radius:12px; background:var(--ob-cream); overflow:hidden; }
.ob-avail > summary{
  list-style:none; cursor:pointer; display:flex; align-items:center; gap:.5rem;
  padding:.8rem 1rem; font:600 .74rem/1 var(--ff-eyebrow); letter-spacing:.08em; text-transform:uppercase; color:var(--ob-ink);
}
.ob-avail > summary::-webkit-details-marker{ display:none; }
.ob-avail > summary svg{ color:var(--ob-brass); }
.ob-avail__arrow{ margin-left:auto; width:8px; height:8px; border-right:1.5px solid var(--ob-brass); border-bottom:1.5px solid var(--ob-brass); transform:rotate(45deg); transition:transform .25s var(--ease); }
.ob-avail[open] .ob-avail__arrow{ transform:rotate(-135deg); }
.ob-avail__body{ padding:.2rem 1rem 1rem; }
.ob-avail__row{ display:flex; gap:.8rem; padding:.6rem 0; border-top:1px solid var(--ob-line); align-items:flex-start; }
.ob-avail__row:first-child{ border-top:0; }
.ob-avail__color{ flex:0 0 34%; display:flex; align-items:center; gap:.45rem; font-size:.84rem; color:var(--ob-ink); font-weight:500; }
.ob-avail__dot{ width:16px; height:16px; border-radius:50%; background:var(--c,#ccc); box-shadow:inset 0 0 0 1px rgba(0,0,0,.12); flex:none; }
.ob-avail__sizes{ display:flex; flex-wrap:wrap; gap:.35rem; }
.ob-avail__size{
  font-size:.74rem; padding:.28rem .55rem; border-radius:6px;
  background:#fff; border:1px solid var(--ob-line-2); color:var(--ob-body);
}
.ob-avail--flat{ display:flex; flex-wrap:wrap; align-items:center; gap:.5rem .8rem; padding:.8rem 1rem; }
.ob-avail__label{ display:inline-flex; align-items:center; gap:.4rem; font:600 .74rem/1 var(--ff-eyebrow); letter-spacing:.08em; text-transform:uppercase; color:var(--ob-ink); }
.ob-avail__label svg{ color:var(--ob-brass); }

/* Pastilles couleur cliquables */
.ob-buy__swatches.is-interactive .ob-buy__sw{ cursor:pointer; }
.ob-buy__sw.is-selected{ box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--ob-brass); }

/* Badges de carte : empilement en colonne (annule le position:absolute hérité) */
.ob-card__badges .ob-badge{ position:relative !important; top:auto !important; left:auto !important; z-index:auto; }

/* --- CART-TOTALS-FLOAT-FIX --- */
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals,
.ob-cart__summary .cart_totals{float:none;width:100%;}

/* --- HERO-TITLE-3-4 (client) --- */
@media (min-width:1181px){.home .ob-rev__title,.ob-rev__title{font-size:3.4rem;}}

/* --- CTA-STORES-GHOST-FIX --- */
.ob-single__stores .ob-btn--ghost{color:#fff !important;border-color:rgba(255,255,255,.55) !important;}
.ob-single__stores .ob-btn--ghost:hover{background:rgba(255,255,255,.12) !important;border-color:#fff !important;color:#fff !important;}

/* --- MEGA-CTA-HOVER-FIX --- */
.ob-nav .sub-menu .ob-mega__actions a.ob-mega__cta:hover,
.ob-mega__cta:hover{color:#fff !important;}

/* Hero boutique : visuels cliquables */
.ob-shop-hero__phlink,.ob-shop-hero__ph a{display:block;width:100%;height:100%;}
.ob-shop-hero__ph img{transition:transform .5s var(--ease);}
.ob-shop-hero__ph a:hover img{transform:scale(1.05);}

/* Tableau tailles/coloris : badge promo par variation */
.ob-avail__size.is-promo{border:1px solid var(--ob-terracotta);color:var(--ob-terracotta-d);}
.ob-avail__off{display:inline-block;margin-left:.3em;background:var(--ob-terracotta);color:#fff;font-size:.72em;font-weight:600;letter-spacing:.02em;line-height:1.5;padding:0 .45em;border-radius:100px;vertical-align:.06em;}

/* Pastilles coloris : coloris épuisés grisés */
.ob-buy__sw.is-out{position:relative;opacity:.45;}
.ob-buy__sw.is-out::after{content:"";position:absolute;inset:0;border-radius:50%;background:linear-gradient(45deg,transparent 43%,var(--ob-muted) 43%,var(--ob-muted) 57%,transparent 57%);}
.ob-buy__swout{display:block;margin-top:.35rem;font-size:.78rem;color:var(--ob-muted);}

/* ===== Section Best-sellers mise en avant ===== */
.ob-bestsellers{background:var(--ob-cream-2);border-top:1px solid var(--ob-line);border-bottom:1px solid var(--ob-line);}
.ob-bestsellers .ob-eyebrow--center::before{content:"\2605";margin-right:.55em;color:var(--ob-gold);letter-spacing:0;}
.ob-bestsellers ul.products{counter-reset:obbs;}
.ob-bestsellers li.product{counter-increment:obbs;transition:transform .3s var(--ease);}
.ob-bestsellers li.product:hover{transform:translateY(-4px);}
.ob-bestsellers li.product::before{content:counter(obbs);position:absolute;top:.7rem;left:.7rem;z-index:4;width:2.1rem;height:2.1rem;display:flex;align-items:center;justify-content:center;font:500 1.05rem/1 var(--ff-display);color:var(--ob-brass-dark);background:rgba(255,255,255,.92);border:1.5px solid var(--ob-brass);border-radius:50%;box-shadow:var(--shadow-sm);pointer-events:none;}
.ob-bestsellers .ob-card__badges{left:auto;right:.7rem;align-items:flex-end;}

/* Partenaires : remise offerte */
.ob-plog__perk{display:inline-block;align-self:flex-start;margin-top:.15rem;font:600 .72rem/1.3 var(--ff-body);color:var(--ob-brass-dark);background:rgba(184,155,70,.14);padding:.15rem .55rem;border-radius:100px;}

/* CTA-BAND-GHOST-BLACK-ON-BLACK-FIX : bouton fantôme lisible sur bandeau foncé */
.ob-cta-band a.ob-btn--ghost,.ob-cta-band .ob-btn--ghost,.ob-cta-band a.ob-btn--light,.ob-cta-band .ob-btn--light{color:#fff !important;border-color:rgba(255,255,255,.5) !important;}
.ob-cta-band a.ob-btn--ghost:hover,.ob-cta-band .ob-btn--ghost:hover{background:rgba(255,255,255,.14) !important;border-color:#fff !important;color:#fff !important;}

/* Gamme vendue uniquement en boutique */
.ob-storeonly{border:1px solid var(--ob-brass);background:rgba(184,155,70,.07);border-radius:var(--radius-lg);padding:1.2rem 1.3rem;margin:1rem 0;}
.ob-storeonly strong{display:block;color:var(--ob-brass-dark);font:600 .95rem/1.4 var(--ff-body);margin-bottom:.4rem;}
.ob-storeonly p{margin:0 0 .8rem;color:var(--ob-body);}
.ob-storeonly__btns{display:flex;gap:.6rem;flex-wrap:wrap;margin:0 !important;}
.ob-badge--store{background:var(--ob-brass);color:#fff;}
