/* ═══ TABLE RONDE — MOBILE-FIRST ═══ */

/* Trustpilot announce bar */
.tp-announce{background:#fff;padding:8px 12px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:600;color:var(--charcoal);border-bottom:1px solid var(--border)}
.tp-announce .tp-a-label{text-transform:uppercase;letter-spacing:.05em;color:var(--charcoal)}
.tp-a-stars{display:inline-flex;gap:2px}
.tp-a-star{width:20px;height:20px;background:#00b67a;display:inline-flex;align-items:center;justify-content:center;border-radius:2px}
.tp-a-star svg{width:12px;height:12px;fill:#fff}
.tp-a-score{color:var(--text-muted)}
@media(min-width:768px){.tp-announce{font-size:13px}.tp-a-star{width:22px;height:22px}}

/* Hero video */
.hero-vid{position:relative;width:100%;height:50vh;min-height:280px;overflow:hidden;background:#111}
.hero-vid video{width:100%;height:100%;object-fit:cover;opacity:.6}
.hero-vid-ov{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.5))}
.hero-vid-ov h1{color:#fff;font-size:24px;font-weight:700;margin:0 0 6px;line-height:1.12}
.hero-vid-ov .hsub{color:rgba(255,255,255,.85);font-size:13px;margin-bottom:14px;max-width:340px}
.hero-btn{background:var(--accent);color:#fff;border:none;padding:13px 28px;font-size:14px;font-weight:700;border-radius:var(--r);transition:var(--tr)}
.hero-badges{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap;justify-content:center}
.hero-badges span{color:rgba(255,255,255,.75);font-size:11px}
@media(min-width:768px){.hero-vid{height:60vh}.hero-vid-ov h1{font-size:42px}.hero-vid-ov .hsub{font-size:17px;max-width:none}.hero-btn{font-size:16px;padding:16px 38px}}

/* Destock bar */
.destock-bar{background:var(--accent);color:#fff;text-align:center;padding:8px 12px;font-size:12px;font-weight:600;line-height:1.4}
.destock-bar .dcb{background:rgba(0,0,0,.2);padding:1px 6px;border-radius:3px;font-variant-numeric:tabular-nums;font-weight:700;display:inline-block}

/* Finition swatches — BIGGER */
.finition{margin:14px 0 4px}
.finition-label{font-size:13px;font-weight:600;color:var(--text);margin-bottom:8px}
.finition-label span{color:var(--text-muted);font-weight:400}
.finition-opts{display:flex;gap:14px}
.finition-opt{display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer}
.finition-swatch{width:60px;height:60px;border-radius:50%;border:1px solid transparent;transition:var(--tr);overflow:hidden;box-shadow:0 2px 6px rgba(0,0,0,.12)}
.finition-opt.active .finition-swatch{border-color:transparent;box-shadow:0 0 0 1px #fff,0 0 0 3px #1a1a1a}
.finition-swatch img{width:100%;height:100%;object-fit:cover}
.finition-name{font-size:11px;color:var(--text-muted);text-align:center;white-space:nowrap;line-height:1.2}
.finition-opt.active .finition-name{color:var(--text);font-weight:600}

/* Cross-sell */
.xsell{margin-top:16px;padding-top:16px;border-top:1px dashed var(--border)}
.xsell-title{font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:10px}
.xsell-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(min-width:480px){.xsell-grid{grid-template-columns:1fr 1fr 1fr 1fr}}
.xsell-card{border:1px solid var(--border);border-radius:var(--rl);padding:10px;text-align:center;background:var(--white);transition:var(--tr)}
.xsell-card:hover{border-color:var(--accent)}
.xsell-img{width:100%;aspect-ratio:1/1;border-radius:var(--r);overflow:hidden;margin-bottom:6px}
.xsell-img img{width:100%;height:100%;object-fit:cover}
.xsell-name{font-size:11px;font-weight:600;color:var(--charcoal);line-height:1.2}
.xsell-prices{margin:3px 0 6px}
.xsell-now{font-size:15px;font-weight:800;color:var(--accent);display:block}
.xsell-was{font-size:11px;color:var(--text-light);text-decoration:line-through}
.xsell-qty{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:6px}
.xsell-add{width:100%;padding:7px;font-size:11px;font-weight:600;background:var(--charcoal);color:#fff;border:none;border-radius:6px;transition:var(--tr)}
.xsell-add:hover{background:var(--accent)}

/* 9:16 Video Carousel */
.vid-carousel{padding:40px 0;background:var(--white);overflow:hidden}
.vid-carousel .sw{max-width:1200px;margin:0 auto;padding:0 16px}
.vid-scroll{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:0 0 12px;scrollbar-width:none}
.vid-scroll::-webkit-scrollbar{display:none}
.vid-scroll-item{flex:0 0 160px;scroll-snap-align:start;border-radius:var(--rxl);overflow:hidden;aspect-ratio:9/16;background:#000;position:relative}
@media(min-width:768px){.vid-scroll-item{flex:0 0 200px}}
.vid-scroll-item video{width:100%;height:100%;object-fit:cover}
.vid-scroll-item .vid-play-btn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.2);transition:var(--tr);cursor:pointer}
.vid-scroll-item .vid-play-btn svg{width:44px;height:44px;fill:rgba(255,255,255,.9);filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}
.vid-scroll-item.playing .vid-play-btn{opacity:0;pointer-events:none}

/* Image grids */
.img-show{padding:40px 0;background:var(--white);overflow:hidden}
.img-show .sw{max-width:1200px;margin:0 auto;padding:0 16px}
.igrid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
@media(min-width:768px){.igrid{grid-template-columns:repeat(3,1fr);gap:10px}}
.igrid-item{border-radius:var(--rl);overflow:hidden;aspect-ratio:4/3}
.igrid-item img{width:100%;height:100%;object-fit:cover}
.gstrip{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:6px}
@media(min-width:768px){.gstrip{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}}

/* Video feature */
.vid-feat{padding:40px 16px;background:var(--bg-soft)}
.vid-feat .sw{max-width:900px;margin:0 auto;text-align:center}
.vid-feat video{width:100%;border-radius:var(--rxl);box-shadow:var(--shadow)}

/* Dimensions */
.dim-sec{padding:40px 16px;background:var(--white)}
.dim-sec .sw{max-width:1000px;margin:0 auto}
.dim-g{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:600px){.dim-g{grid-template-columns:1fr 1fr}}
.dim-g img{width:100%;border-radius:var(--rl)}

/* Trustpilot carousel */
.tp-sec{padding:40px 0;background:var(--bg-soft);overflow:hidden}
.tp-sec .sw{max-width:1200px;margin:0 auto;padding:0 16px}
/* Carousel scroll */
.tp-scroll{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 0 16px;scrollbar-width:none}
.tp-scroll::-webkit-scrollbar{display:none}

/* CTA final */
.cta-final{background:var(--charcoal);padding:40px 16px;text-align:center;color:#fff}
.cta-final h2{font-size:20px;font-weight:700;margin:0 0 8px;line-height:1.2}
@media(min-width:768px){.cta-final h2{font-size:30px}}
.cta-final p{color:rgba(255,255,255,.6);font-size:13px;margin-bottom:16px}
.cta-final-btn{display:inline-block;padding:14px 36px;background:var(--accent);color:#fff;border:none;border-radius:var(--r);font-size:15px;font-weight:700;cursor:pointer;transition:var(--tr)}

/* Sticky mobile ATC */
.mob-sticky{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));background:var(--white);box-shadow:0 -2px 12px rgba(0,0,0,.1);border-top:1px solid var(--border);align-items:center;gap:8px}
@media(min-width:960px){.mob-sticky{display:none}}
.mob-sticky-info{flex:1;min-width:0}
.mob-sticky .ms-price{font-size:17px;font-weight:800;color:var(--accent)}
.mob-sticky .ms-was{font-size:11px;color:var(--text-light);text-decoration:line-through;margin-left:3px}
.mob-sticky .ms-name{font-size:10px;color:var(--text-muted);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mob-sticky-btn{padding:12px 18px;background:var(--accent);color:#fff;border:none;border-radius:var(--r);font-size:13px;font-weight:700;white-space:nowrap}

/* Shimmer & pulse */
.btn-atc{position:relative;overflow:hidden}
.btn-atc::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:shim 3s infinite}
@keyframes shim{100%{left:100%}}
.bundle-card-badge{animation:bpulse 2s ease infinite}
@keyframes bpulse{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
html,body{overflow-x:hidden;max-width:100vw}
body{padding-bottom:60px}
@media(min-width:960px){body{padding-bottom:0}}
/* Desktop hamburger — same layout as mobile everywhere */
.desktop-nav{display:none!important}
.hamburger-btn{display:flex!important}

/* Header layout */
.header-inner{display:flex;align-items:center;justify-content:space-between!important;padding:0 16px!important}
.header-left{display:flex;align-items:center;gap:14px;flex:1}
.header-right{display:flex;align-items:center;gap:12px}
.site-header .logo{margin:0!important;font-size:20px!important;position:static!important;transform:none!important;left:auto!important;right:auto!important;text-align:left!important}
.hamburger-btn{margin:0!important;padding:8px 0!important}
.cart-icon-btn{background:none!important;border:none!important;box-shadow:none!important;padding:4px!important;position:relative;cursor:pointer;color:var(--charcoal)}
.cart-count-badge{position:absolute;top:-4px;right:-6px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}

/* Language selector */
.lang-sel{display:flex;align-items:center;gap:5px;cursor:pointer;position:relative;font-size:13px;font-weight:600;color:var(--charcoal);padding:5px 10px;border:1px solid var(--border);border-radius:20px;user-select:none}
.lang-flag-ico{width:18px;height:13px;border-radius:2px;flex-shrink:0}
.lang-code{font-size:12px;letter-spacing:.5px}
.lang-arrow{width:12px;height:12px;transition:transform .2s}
.lang-sel.open .lang-arrow{transform:rotate(180deg)}
.lang-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.12);min-width:160px;z-index:200;overflow:hidden}
.lang-sel.open .lang-dropdown{display:block}
.lang-opt{display:flex;align-items:center;gap:10px;padding:11px 16px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}
.lang-opt:hover{background:var(--bg-soft)}
.lang-opt.active{font-weight:700;color:var(--accent)}
.lang-opt .lang-flag-ico{width:20px;height:15px}

/* Gallery swipe */
.gallery-main-img{touch-action:pan-y;user-select:none;-webkit-user-select:none;overflow:hidden}
.gallery-main-img img{width:100%;height:100%;object-fit:cover;display:block}
.gallery-thumbs{display:flex;gap:6px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:8px 14px;box-sizing:border-box}
.gallery-thumbs::-webkit-scrollbar{display:none}
.gallery-thumbs .thumb{scroll-snap-align:start;flex:0 0 calc(20% - 5px);aspect-ratio:1/1;border-radius:6px;overflow:hidden;border:2px solid transparent;cursor:pointer;box-sizing:border-box}
.gallery-thumbs .thumb.active{border-color:#1a1a1a!important}
.gallery-thumbs .thumb img{width:100%;height:100%;object-fit:cover;display:block}
@media(min-width:960px){.gallery-thumbs{margin:8px 0}.gallery-thumbs .thumb{flex:0 0 calc((100% - 24px) / 5)}}

/* Bundle cards */
.bcard{position:relative;display:flex;align-items:center;gap:14px;padding:14px;border:2px solid var(--border);border-radius:12px;cursor:pointer;transition:all .2s;margin-bottom:8px;background:#fff}
.bcard.selected{border-color:var(--charcoal);box-shadow:0 2px 8px rgba(0,0,0,.08)}
.bcard-badge{position:absolute;top:-1px;left:-1px;right:-1px;background:var(--accent);color:#fff;text-align:center;font-size:10px;font-weight:700;padding:4px 0;border-radius:10px 10px 0 0;letter-spacing:.5px}
.bcard-radio{flex-shrink:0;width:22px;height:22px;border:2px solid #ccc;border-radius:50%;display:flex;align-items:center;justify-content:center}
.bcard.selected .bcard-radio{border-color:var(--charcoal)}
.bcard.selected .bcard-radio .bcard-circle{width:12px;height:12px;background:var(--charcoal);border-radius:50%}
.bcard-img{width:100px;flex-shrink:0;border-radius:8px;overflow:hidden}
.bcard-img img{width:100%;height:auto;display:block}
.bcard-info{flex:1;min-width:0}
.bcard-name{font-size:14px;font-weight:700;color:var(--charcoal)}
.bcard-prices{display:flex;align-items:baseline;gap:6px;margin-top:2px}
.bcard-price{font-size:16px;font-weight:800;color:#e53e3e}
.bcard-was{font-size:12px;color:var(--text-light);text-decoration:line-through}
.bcard-save{font-size:11px;font-weight:600;color:#16a34a;margin-top:2px;background:#dcfce7;display:inline-block;padding:2px 8px;border-radius:4px}
.bcard-content{font-size:12px;color:var(--charcoal);margin-top:3px;font-weight:500}
.bcard:has(.bcard-badge){padding-top:28px}

/* Fix gallery thumbs pushing parent wider */
.product-wrap{overflow:hidden}
.gallery{min-width:0;max-width:100%}
.product-info{min-width:0;max-width:100%;overflow:hidden}
.gallery-thumbs{max-width:100%}
.xsell-grid{max-width:100%}
#collection{max-width:100%;overflow:hidden}

/* Trustpilot bar */
.trustpilot-bar{background:#fff;padding:14px 20px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:nowrap;white-space:nowrap;border-bottom:1px solid var(--border)}
.trustpilot-bar__label{color:#000;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px}
.trustpilot-bar__stars{display:inline-flex;gap:3px;flex-shrink:0}
.trustpilot-bar__star{width:26px;height:26px;background:#00b67a;display:inline-flex;align-items:center;justify-content:center}
.trustpilot-bar__star svg{width:14px;height:14px;fill:#fff}
.trustpilot-bar__rating{color:#000;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px}
@media(max-width:600px){.trustpilot-bar{padding:8px 8px;gap:6px}.trustpilot-bar__label{font-size:9px;letter-spacing:.8px}.trustpilot-bar__rating{font-size:9px;letter-spacing:.8px}.trustpilot-bar__star{width:16px;height:16px}.trustpilot-bar__star svg{width:9px;height:9px}}

/* Review avatars */
.review-container{display:flex;align-items:center;font-size:14px;width:fit-content;margin-top:-5px;margin-bottom:14px}
.avatars{display:flex;align-items:center;margin-right:3px}
.avatars img{height:22px;width:auto}
.review-text-av{font-weight:400;white-space:nowrap;color:#1C1C1C}
.review-text-av .highlight{font-weight:700;color:#1C1C1C}

/* Rental countdown */
.rental-countdown-bar{width:100%;box-sizing:border-box;background:#fff3d2;border-radius:7px;padding:11px 14px;display:flex;align-items:center;justify-content:center;gap:4px;text-align:center;line-height:1.2;margin-top:-3px;margin-bottom:-2px}
.rental-countdown-text{color:#111;font-size:15px;font-weight:600}
.rental-countdown-timer{color:#111;font-size:15px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
@media(max-width:480px){.rental-countdown-bar{padding:11px 8px;gap:3px}.rental-countdown-text,.rental-countdown-timer{font-size:13px}}

/* Rotating announce bar */
.announce-bar{position:relative;overflow:hidden;height:42px}
.announce-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .5s ease;font-size:13px;white-space:nowrap;gap:6px;font-weight:600;color:#fff}
.announce-slide.active{opacity:1}
.ab-stars{display:inline-flex;gap:3px;vertical-align:middle;position:relative;top:-0.7px}
.ab-star{width:16px;height:16px;background:#00b67a;display:inline-flex;align-items:center;justify-content:center}
.ab-star svg{width:9px;height:9px;fill:#fff}
@media(max-width:600px){.announce-bar{height:38px}.announce-slide{font-size:11px}.ab-star{width:14px;height:14px}.ab-star svg{width:8px;height:8px}}


/* Pack content inside selected bundle */
.bundle-card .pack-detail{display:none;padding:14px;border-top:1px solid var(--border);background:var(--bg-soft);border-radius:0 0 12px 12px}
.pack-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bundle-card.selected .pack-detail{display:block}
.pack-detail-label{font-size:12px;font-weight:700;color:var(--charcoal);margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}
.pack-detail-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;background:#fff;border-radius:8px;text-align:center}

.pack-detail-item img{width:56px;height:56px;object-fit:cover;border-radius:6px}
.pack-detail-item-info{flex:1}
.pack-detail-item-name{font-size:13px;font-weight:600;color:var(--charcoal)}
.pack-detail-item-prices{display:flex;gap:4px;align-items:baseline;justify-content:center}
.pack-detail-item-price{font-size:13px;font-weight:600;color:var(--accent)}
.pack-detail-item-was{font-size:11px;color:var(--text-light);text-decoration:line-through}

/* Dimensions accordion */
.dim-accordion{margin:16px 0 0;border:1px solid var(--border);border-radius:12px;padding:16px 18px;background:#fafafa;box-sizing:border-box}
.dim-accordion-title{font-size:12px;font-weight:700;color:var(--charcoal);text-transform:uppercase;letter-spacing:.5px;margin:0 0 6px}
.dim-item{border-bottom:1px solid var(--border)}
.dim-item:last-child{border-bottom:none}
.dim-item-header{display:flex;align-items:center;justify-content:space-between;padding:12px 0;cursor:pointer;user-select:none}
.dim-item-header:hover{color:#2db8bc}
.dim-item-name{font-size:14px;font-weight:600;color:var(--charcoal)}
.dim-item-toggle{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:300;color:var(--text-muted);transition:all .2s;flex-shrink:0}
.dim-item.open .dim-item-toggle{transform:rotate(45deg);border-color:#2db8bc;color:#2db8bc}
.dim-item-body{display:none;padding:0 0 14px 0;font-size:12.5px;color:var(--text-muted);line-height:1.7}
.dim-item.open .dim-item-body{display:block}
.dim-item-body strong{color:var(--charcoal);font-weight:600}
.dim-item-body .dim-note{font-size:11px;color:#2db8bc;font-weight:600;margin-top:4px}
.dim-item-body img{width:100%;max-width:320px;border-radius:8px;margin:8px 0}

/* Performance: skip rendering off-screen sections */
.section-features,.vid-carousel,.tp-sec,.img-show,.dim-sec,.section-comparison,.vid-feat,.section-process,.section-faq,.cta-final{content-visibility:auto;contain-intrinsic-size:auto 500px}
.bundles-label{padding-top:8px!important}

/* Trust block */
.trust-block{border:1px solid var(--border);border-radius:12px;padding:16px 18px;margin-top:24px;background:#fafafa}
.trust-block-item{display:flex;align-items:center;gap:10px;padding:5px 0}
.trust-ico{width:18px;height:18px;flex-shrink:0}
.trust-main{font-size:13px;font-weight:500;color:var(--charcoal)}
.trust-main strong{font-weight:700}
.trust-pay-info{font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:8px}
.trust-pay-icons{display:flex;flex-wrap:wrap;gap:6px}
.swatch{width:42px!important;height:42px!important}
.swatch.active{box-shadow:0 0 0 1.5px #fff,0 0 0 3px #1a1a1a!important}
.swatch-label,.fin-name{font-size:10px!important}

/* Mobile product tweaks */
@media(max-width:767px){
  .product-info{padding:14px 14px 0!important}
  .product-title{font-size:20px!important}
  .price-now{font-size:22px!important}

  .reasur-strip{gap:8px!important}
  .reasur-item{gap:8px!important}
  .reasur-icon{font-size:18px!important;width:32px!important;height:32px!important}
  .reasur-title{font-size:12px!important}
  .reasur-sub{font-size:10px!important}
  .pay-row{padding:10px 0!important}
  .pay-chip{font-size:9px!important;padding:3px 6px!important}
  .s-title{font-size:20px!important}
  .s-sub{font-size:13px!important}
  .section-features,.section-comparison,.section-process,.section-faq{padding:32px 14px!important}
}

.ico{width:20px;height:20px;display:inline-block;vertical-align:middle;flex-shrink:0}
.ico-sm{width:16px;height:16px;display:inline-block;vertical-align:middle}
.feat-icon-wrap .ico{width:28px;height:28px}
.reasur-icon .ico{width:22px;height:22px}
@media(min-width:768px){.tp-stars-img{height:26px}}

/* ── Overrides swatch/thumb actifs ── */
body .swatches .swatch.active,body .product-info .swatch.active,.swatch.active{border-color:#1a1a1a!important;box-shadow:0 0 0 1.5px #fff,0 0 0 3px #1a1a1a!important}
body .gallery-thumbs .thumb.active{border-color:#1a1a1a!important}

/* ── Layout commun injecté par layout.js ── */
#site-top{min-height:98px}
@media(min-width:601px){#site-top{min-height:102px}}
.mobile-nav-group{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-light);padding:8px 20px 4px;margin:0}
.mobile-nav-group--sep{padding-top:12px;border-top:1px solid var(--border)}
.site-header .logo{display:flex;align-items:center}
.logo-img,.logo-img-sm{width:auto;max-width:180px;object-fit:contain}

/* ── Sélecteur de quantité (pages produit simples) ── */
.prod-qty{display:flex;align-items:center;gap:14px;margin:18px 0 14px}
.prod-qty-label{font-size:13px;font-weight:600;color:var(--text)}
.prod-qty-box{display:flex;align-items:center;gap:4px;border:1px solid var(--border);border-radius:var(--r);padding:4px 6px}
.prod-qty-box .qty-v{min-width:28px;text-align:center;font-weight:700;font-size:15px;font-variant-numeric:tabular-nums}

/* ══════════ PAGE COLLECTION ══════════ */
.coll-hero{padding:34px 16px 22px;text-align:center;background:var(--bg-soft);border-bottom:1px solid var(--border)}
.coll-hero .s-title{margin:4px 0 6px}
.coll-wrap{max-width:1200px;margin:0 auto;padding:28px 14px 40px}
.coll-group-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:26px 0 12px;display:flex;align-items:center;gap:10px}
.coll-group-title::after{content:'';flex:1;height:1px;background:var(--border)}
.coll-group-title:first-child{margin-top:0}
.coll-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(min-width:700px){.coll-grid{grid-template-columns:repeat(3,1fr);gap:16px}}
.coll-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--rl);overflow:hidden;background:var(--white);transition:var(--tr);position:relative}
.coll-card:hover{border-color:var(--accent);box-shadow:var(--shadow)}
.coll-img{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--bg-soft)}
.coll-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.coll-card:hover .coll-img img{transform:scale(1.04)}
.coll-badge{position:absolute;top:8px;left:8px;background:var(--accent);color:#fff;font-size:11px;font-weight:800;padding:3px 8px;border-radius:20px;letter-spacing:.02em}
.coll-body{padding:10px 12px 12px;display:flex;flex-direction:column;flex:1}
.coll-name{font-size:14px;font-weight:700;color:var(--charcoal);line-height:1.25;margin:0 0 2px}
.coll-sub{font-size:11px;color:var(--text-muted);line-height:1.35;margin-bottom:6px}
.coll-prices{display:flex;align-items:baseline;gap:6px;margin-top:auto}
.coll-now{font-size:17px;font-weight:800;color:#e53e3e}
.coll-was{font-size:12px;color:var(--text-light);text-decoration:line-through}
.coll-cta{display:block;margin-top:9px;padding:9px;text-align:center;font-size:12px;font-weight:700;background:var(--charcoal);color:#fff;border-radius:var(--r);transition:var(--tr)}
.coll-card:hover .coll-cta{background:var(--accent)}
@media(min-width:700px){.coll-name{font-size:15px}.coll-now{font-size:19px}.coll-cta{font-size:13px;padding:11px}}

/* ══════════ PAGE TV — blocs spécifiques ══════════ */
/* Cadeau offert */
.gift{display:flex;align-items:center;gap:12px;border:1px dashed #2db8bc;background:#f0fbfb;border-radius:var(--rl);padding:10px 12px;margin:14px 0}
.gift-img{width:54px;height:54px;flex-shrink:0;border-radius:8px;overflow:hidden;background:#fff}
.gift-img img{width:100%;height:100%;object-fit:cover}
.gift-info{flex:1;min-width:0}
.gift-name{font-size:13px;font-weight:700;color:var(--charcoal)}
.gift-sub{font-size:11px;color:var(--text-muted);line-height:1.35}
.gift-prices{text-align:right;flex-shrink:0}
.gift-was{display:block;font-size:12px;color:var(--text-light);text-decoration:line-through}
.gift-free{display:block;font-size:13px;font-weight:800;color:#16a34a}

/* Points clés sous le prix */
.usp{list-style:none;margin:14px 0 4px;padding:0}
.usp li{display:flex;gap:9px;align-items:flex-start;padding:5px 0;font-size:13px;color:var(--text);line-height:1.45}
.usp li svg{width:17px;height:17px;flex-shrink:0;margin-top:2px;stroke:#2db8bc}
.usp li strong{font-weight:700;color:var(--charcoal)}

/* Bandeau de réassurance */
.reassure{background:var(--charcoal);color:#fff;padding:18px 16px;text-align:center}
.reassure-row{max-width:1000px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 28px}
.reassure-item{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.75)}
.reassure-item strong{color:#fff}

/* Section éditoriale */
.edito{padding:44px 16px;background:var(--bg-soft)}
.edito .sw{max-width:720px;margin:0 auto;text-align:center}
.edito h2{font-size:22px;font-weight:700;line-height:1.25;color:var(--charcoal);margin-bottom:14px}
@media(min-width:768px){.edito h2{font-size:30px}}
.edito p{font-size:14.5px;color:var(--text-muted);line-height:1.7;margin-bottom:12px}

/* Garantie dans le bloc confiance */
.trust-badge-3y{display:inline-block;background:#2db8bc;color:#fff;font-size:11px;font-weight:800;padding:3px 9px;border-radius:20px;margin-left:6px}
/* 6 couleurs : les pastilles passent à la ligne au lieu de déborder */
.finition-opts{flex-wrap:wrap;gap:12px 14px}
/* Un bandeau d'offre vide ne s'affiche pas */
.bcard-badge:empty{display:none}
.bcard:has(.bcard-badge:empty){padding-top:14px}

/* ══════════ AVIS — widget façon Trustpilot ══════════ */
.tp-sec{background:#f4f5f7}
.tp-hd{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-bottom:18px;text-align:left}
.tp-brand{display:inline-flex;align-items:center;gap:5px}
.tp-brand-ico{width:21px;height:21px;fill:#191919;flex-shrink:0}
.tp-brand-nom{font-size:18px;font-weight:700;color:#191919;letter-spacing:-.02em}
.tp-note{font-size:17px;font-weight:800;color:#191919;font-variant-numeric:tabular-nums}
.tp-stars{display:inline-flex;gap:3px}
.tp-sq{width:24px;height:24px;background:#00b67a;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.tp-sq svg{width:15px;height:15px;fill:#fff}
.tp-sq.part{background:linear-gradient(90deg,#00b67a 70%,#dcdce6 70%)}
.tp-base{font-size:11.5px;font-weight:600;letter-spacing:.06em;color:#6b6b6b;text-transform:uppercase}
@media(max-width:600px){.tp-brand-nom{font-size:16px}.tp-sq{width:21px;height:21px}.tp-sq svg{width:13px;height:13px}.tp-base{font-size:10px;flex-basis:100%}}

.tp-scroll{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 0 16px;scrollbar-width:none}
.tp-scroll::-webkit-scrollbar{display:none}
.tp-card{flex:0 0 300px;scroll-snap-align:start;background:#fff;border-radius:4px;padding:20px;
  display:flex;flex-direction:column;box-shadow:0 1px 2px rgba(25,25,25,.06)}
@media(min-width:768px){.tp-card{flex:0 0 340px}}
.tp-rtop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}
.tp-rstars{display:inline-flex;gap:2px}
.tp-rstars .tp-sq{width:21px;height:21px}
.tp-rstars .tp-sq svg{width:13px;height:13px}
.tp-rdate{font-size:12px;color:#6b6b6b;white-space:nowrap}
.tp-rtitle{font-family:Georgia,'Times New Roman',serif;font-size:18px;font-weight:700;color:#191919;
  line-height:1.3;margin-bottom:9px}
.tp-rbody{font-size:14px;color:#4a4a4a;line-height:1.6;margin-bottom:16px;flex:1}
.tp-rfoot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:13px;border-top:1px solid #ededed}
.tp-rname{font-size:13px;font-weight:700;color:#191919}
.tp-rpays{font-size:11px;font-weight:600;color:#6b6b6b;background:#f4f5f7;padding:2px 7px;border-radius:3px}
.tp-rverif{font-size:11.5px;font-weight:600;color:#00b67a;margin-left:auto;white-space:nowrap}
