/* Raclette&Co V2 — styles des blocs dynamiques */
:root{--rco-red:#B2381F;--rco-red-d:#8F2A15;--rco-dark:#2A1A12;--rco-cream:#FBF6EF;--rco-cream2:#F4EADD;--rco-text:#3B2A21;--rco-muted:#7A6659;--rco-line:#E9DCCB;--rco-gold:#E3A34B}

/* --- Black Friday : blocs visibles uniquement pendant l'opération --- */
body:not(.rco-bf-on) .rco-bf-only{display:none!important}
body.elementor-editor-active .rco-bf-only{display:flex!important;outline:2px dashed var(--rco-gold);outline-offset:-2px}
.rco-bf-band a{color:var(--rco-gold)!important}
.rco-badge{display:inline-flex;align-items:center;gap:0;border-radius:4px;overflow:hidden;font:600 12px/1 'DM Sans',sans-serif;background:var(--rco-red);color:#fff;padding:7px 10px}
.woocommerce span.onsale.rco-badge,.woocommerce ul.products li.product .onsale.rco-badge,.woocommerce-page ul.products li.product .onsale.rco-badge{min-height:0;min-width:0;line-height:1;padding:7px 10px;border-radius:4px;top:12px;left:12px;right:auto;margin:0;background:var(--rco-red)}
.rco-badge-bf{padding:0!important;background:var(--rco-dark)!important}
.rco-badge-bf b{padding:7px 10px;font-weight:600}
.rco-badge-bf i{font-style:normal;background:var(--rco-red);padding:7px 10px}
.rco-badge-inline{margin-bottom:2px}

/* --- Compte à rebours --- */
.rco-countdown{display:flex;flex-direction:column;align-items:center;gap:8px;font-family:'DM Sans',sans-serif;color:var(--rco-cream)}
.rco-cd-label{font-size:13px;letter-spacing:1px;text-transform:uppercase;opacity:.8}
.rco-cd-units{display:flex;gap:8px}
.rco-cd-u{display:flex;flex-direction:column;align-items:center;min-width:56px;padding:8px 6px;border-radius:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15)}
.rco-cd-u b{font:600 24px/1 'Lora',serif}.rco-cd-u small{font-size:11px;opacity:.75;margin-top:4px}
.rco-cd-inline{flex-direction:row;gap:10px}.rco-cd-inline .rco-cd-label{display:none}
.rco-cd-inline .rco-cd-u{flex-direction:row;min-width:0;padding:3px 7px;gap:2px;align-items:baseline}
.rco-cd-inline .rco-cd-u b{font:600 14px/1 'DM Sans',sans-serif}.rco-cd-inline .rco-cd-u small{margin:0}

/* --- Grilles produits [products] dans les blocs V2 --- */
.rco-products-v2 ul.products{display:grid!important;grid-template-columns:repeat(var(--rco-cols,4),minmax(0,1fr));gap:20px;margin:0!important}
.rco-products-v2 ul.products::before,.rco-products-v2 ul.products::after{display:none!important}
.rco-products-v2 ul.products.columns-1{--rco-cols:1}.rco-products-v2 ul.products.columns-2{--rco-cols:2}.rco-products-v2 ul.products.columns-3{--rco-cols:3}.rco-products-v2 ul.products.columns-4{--rco-cols:4}
.rco-products-v2 ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:#fff;border:1px solid var(--rco-line);border-radius:14px;padding:12px 12px 16px;display:flex;flex-direction:column;position:relative;transition:transform .25s,box-shadow .25s}
.rco-products-v2 ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(82,45,24,.09)}
.rco-products-v2 li.product img{border-radius:10px;margin:0 0 12px!important;aspect-ratio:4/3;object-fit:cover;width:100%}
.rco-products-v2 .woocommerce-loop-product__title{font:500 19px/1.25 'Lora',serif!important;color:var(--rco-dark);padding:0!important;margin:0 0 6px!important}
.rco-products-v2 .price{color:var(--rco-red)!important;font:700 19px 'DM Sans',sans-serif!important;margin:4px 0 12px!important}
.rco-products-v2 .price del{color:var(--rco-muted)!important;font-weight:400;font-size:14px;opacity:1}.rco-products-v2 .price ins{text-decoration:none}
.rco-products-v2 .star-rating{color:var(--rco-gold);font-size:13px;margin-bottom:6px!important}
.rco-products-v2 a.button{margin-top:auto!important;background:var(--rco-red)!important;color:#fff!important;border-radius:8px!important;text-align:center;padding:12px 14px!important;font-weight:600}
.rco-products-v2 a.button:hover{background:var(--rco-red-d)!important}
.rco-products-v2 a.added_to_cart{display:block;text-align:center;margin-top:8px;color:var(--rco-red)}
.rco-compact ul.products li.product{padding:10px}.rco-compact .woocommerce-loop-product__title{font-size:16px!important}.rco-compact a.button{padding:9px 10px!important;font-size:14px}
.rco-on-dark ul.products li.product{border-color:transparent}
@media(max-width:1024px){.rco-products-v2 ul.products{--rco-cols:2!important}}
@media(max-width:767px){
 .rco-products-v2 ul.products{display:flex!important;overflow-x:auto!important;flex-wrap:nowrap!important;scroll-snap-type:x mandatory;gap:14px;padding-bottom:8px}
 .rco-products-v2 ul.products li.product{flex:0 0 72%;scroll-snap-align:start}
 .rco-products-v2 ul.products.columns-1 li.product{flex-basis:100%}
}

/* --- « Vous êtes plutôt… ? » : défilement horizontal sur mobile --- */
@media(max-width:767px){
 .rco-situations{display:flex!important;overflow-x:auto!important;flex-wrap:nowrap!important;scroll-snap-type:x mandatory;padding-bottom:6px}
 .rco-situations>.rco-situation{flex:0 0 62%!important;scroll-snap-align:start}
 .rco-ugc{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
.rco-card,.rco-situation{transition:transform .25s,box-shadow .25s}
.rco-card:hover,.rco-situation:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(82,45,24,.10)}
.rco-ugc img{aspect-ratio:1/1;object-fit:cover;width:100%;transition:opacity .2s}.rco-ugc a:hover img{opacity:.85}

/* --- Titres des blocs dynamiques --- */
.rco-block-title{font:500 28px/1.15 'Lora',serif;color:var(--rco-dark);margin:0 0 4px}
.rco-block-sub{color:var(--rco-muted);margin:0 0 16px;font-size:15px}
.rco-block-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.rco-block-head a,.rco-link{color:var(--rco-red);font-weight:600;font-size:14px;text-decoration:none}
.rco-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--rco-red);color:#fff!important;border:0;border-radius:8px;padding:13px 22px;font:600 15px 'DM Sans',sans-serif;text-decoration:none;cursor:pointer}
.rco-btn:hover{background:var(--rco-red-d)}
.rco-eyebrow{color:var(--rco-red);font:700 12px 'DM Sans',sans-serif;letter-spacing:2px;text-transform:uppercase}
.rco-save{display:inline-block;background:#FCEBDD;color:var(--rco-red);border-radius:6px;padding:5px 10px;font:600 13px 'DM Sans',sans-serif}
.rco-admin-note{background:#FFF7E0;border:1px dashed #E3A34B;padding:12px 16px;border-radius:8px}

/* --- Upsell --- */
.rco-upsell{background:var(--rco-cream);border:1px solid var(--rco-line);border-radius:18px;padding:24px;height:100%;box-sizing:border-box;display:flex;flex-direction:column}
.rco-up-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}
.rco-up-card{background:#fff;border:1px solid var(--rco-line);border-radius:14px;padding:14px;position:relative}
.rco-up-card.is-up{border:2px solid var(--rco-red)}
.rco-up-tag{position:absolute;top:-11px;right:12px;background:var(--rco-red);color:#fff;border-radius:4px;padding:4px 8px;font:600 11px 'DM Sans',sans-serif}
.rco-up-tag.is-muted{background:var(--rco-muted)}
.rco-up-img img{width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:8px}
.rco-up-name{font:500 17px 'Lora',serif;color:var(--rco-dark);margin:8px 0 2px}
.rco-up-price{color:var(--rco-red);font-weight:700}.rco-up-price del{color:var(--rco-muted);font-weight:400;font-size:13px}
.rco-up-card ul{list-style:none;margin:8px 0 0;padding:0;font-size:13px;color:var(--rco-text)}
.rco-up-card li{padding-left:18px;position:relative;margin:3px 0}.rco-up-card li::before{content:'✓';position:absolute;left:0;color:#3E7A3A}
.rco-upsell .rco-btn{margin-top:auto;align-self:center}

/* --- Pack --- */
.rco-pack{display:grid;grid-template-columns:1fr 1.1fr;gap:36px;align-items:center;background:#fff;border-radius:20px;padding:28px;border:1px solid var(--rco-line)}
.rco-pack-img img{width:100%;border-radius:14px}
.rco-pack-title{font:500 34px/1.1 'Lora',serif;color:var(--rco-dark);margin:6px 0 10px}
.rco-pack-price{font:700 26px 'DM Sans',sans-serif;color:var(--rco-red);margin-bottom:8px}
.rco-pack-desc{color:var(--rco-text);margin:12px 0}
.rco-pack-list{margin:0 0 20px;padding:0;list-style:none}
.rco-pack-list li{padding:8px 0 8px 26px;border-bottom:1px solid var(--rco-line);position:relative}
.rco-pack-list li::before{content:'✓';position:absolute;left:2px;color:var(--rco-red);font-weight:700}
.rco-pack-list a{color:var(--rco-dark);text-decoration:none}
.rco-pack-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
@media(max-width:767px){.rco-pack{grid-template-columns:1fr;padding:18px;gap:18px}.rco-pack-title{font-size:26px}.rco-pack-actions .rco-btn{width:100%}}

/* --- Avis --- */
.rco-reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rco-review{background:#fff;border:1px solid var(--rco-line);border-radius:14px;padding:18px}
.rco-review-head{display:flex;gap:12px;align-items:center;margin-bottom:8px}
.rco-avatar{width:40px;height:40px;border-radius:50%;background:var(--rco-cream2);color:var(--rco-red);display:grid;place-items:center;font-weight:700;flex:none}
.rco-verified{font-size:11px;color:#3E7A3A;background:#E8F2E3;border-radius:4px;padding:2px 6px}
.rco-stars{color:var(--rco-gold);letter-spacing:1px}.rco-stars span{color:var(--rco-line)}
.rco-review p{margin:6px 0;color:var(--rco-text);font-size:15px}.rco-review small{color:var(--rco-muted)}
.rco-reviews-note{font-size:12px;color:var(--rco-muted);margin-top:10px}
.rco-reviews-empty{background:#fff;border:1px dashed var(--rco-line);border-radius:14px;padding:22px;text-align:center;color:var(--rco-muted)}
@media(max-width:1024px){.rco-reviews{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.rco-reviews{grid-template-columns:1fr}}

/* --- Réassurance fiche produit --- */
.rco-reassure{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border-top:1px solid var(--rco-line);padding-top:14px}
.rco-ra{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:var(--rco-muted);line-height:1.3}
.rco-ra b{display:block;color:var(--rco-dark);font-size:12.5px}
.rco-ra svg{width:22px;height:22px;flex:none;fill:none;stroke:var(--rco-dark);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:767px){.rco-reassure{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* --- Barre d'achat mobile --- */
.rco-sticky{display:none}
@media(max-width:767px){
 .rco-sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:999;gap:10px;align-items:center;background:#fff;border-top:1px solid var(--rco-line);box-shadow:0 -8px 24px rgba(42,26,18,.08);padding:10px 14px calc(10px + env(safe-area-inset-bottom));transform:translateY(110%);transition:transform .25s}
 .rco-sticky.is-visible{transform:none}
 .rco-sticky-img img{width:48px;height:48px;object-fit:cover;border-radius:8px}
 .rco-sticky-info{flex:1;min-width:0;font-size:13px}.rco-sticky-info b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--rco-dark)}
 .rco-sticky-info .price,.rco-sticky-info span{color:var(--rco-red);font-weight:700}.rco-sticky-info del{color:var(--rco-muted);font-weight:400}
 .rco-sticky-btn{padding:12px 18px}
}
/* accroche publicitaire des landing pages */
.rco-hook .elementor-heading-title::before{content:'';display:inline-block;width:28px;height:2px;background:currentColor;vertical-align:middle;margin-right:10px}
