:root{ --ffr-accent:#022c65; --ffr-accent-dark:#011f47; --ffr-text:#121212; --ffr-font-head:'Poppins',sans-serif; }

/* Masquer titre "Accueil" */
.home .entry-header, .page .page-title{ display:none !important; }

/* Bande STADEFRANCE */
.ffr-stadeband{ display:flex; justify-content:space-around; align-items:center; gap:2.5rem; border-top:1px solid rgba(18,18,18,.08); border-bottom:1px solid rgba(18,18,18,.08); padding:.35rem 0; overflow:hidden; }
.ffr-stadeband span{ font-family:var(--ffr-font-head); font-weight:800; font-style:italic; letter-spacing:.04em; color:#9cc7e8; font-size:.95rem; white-space:nowrap; }
@media (max-width:749px){ .ffr-stadeband span:nth-child(2),.ffr-stadeband span:nth-child(3){display:none;} .ffr-stadeband{justify-content:center;} }

/* PRIX DYNAMIQUE au-dessus des catégories */
.single-product .entry-summary > p.price,
.single-product .product .summary > .price,
.woocommerce-variation-price{ display:none !important; }
.ffr-dyn-price{ font-family:var(--ffr-font-head); font-size:2.6rem; font-weight:700; color:var(--ffr-accent); margin:.2rem 0 1.4rem; line-height:1; }
.ffr-dyn-price .price,.ffr-dyn-price .amount{ font-size:inherit; color:inherit; font-weight:700; }
.ffr-dyn-price del{ display:none; }

/* PASTILLES CAT */
.woocommerce ul.variable-items-wrapper li.variable-item{
  border:2px solid var(--ffr-text) !important; border-radius:40px !important; background:transparent !important; box-shadow:none !important; min-width:4.2rem; min-height:3.2rem; margin:.3rem .5rem .3rem 0; padding:0;
}
.woocommerce ul.variable-items-wrapper li.variable-item .variable-item-span{
  font-family:var(--ffr-font-head); font-weight:700; color:var(--ffr-text); text-transform:uppercase; letter-spacing:.04em; padding:.6em 1.6em; line-height:1.2; background:transparent !important;
}
/* Sélectionnée = noir plein, texte blanc */
.woocommerce ul.variable-items-wrapper li.variable-item.selected{ background:#121212 !important; border-color:#121212 !important; }
.woocommerce ul.variable-items-wrapper li.variable-item.selected .variable-item-span,
.woocommerce ul.variable-items-wrapper li.variable-item.selected span{ color:#fff !important; background:transparent !important; }
/* En rupture (le plugin ajoute .disabled / .blur quand réglé sur Blur/Cross) */
.woocommerce ul.variable-items-wrapper li.variable-item.disabled,
.woocommerce ul.variable-items-wrapper li.variable-item.wvs-blur,
.woocommerce ul.variable-items-wrapper li.variable-item.blur{
  opacity:1 !important; filter:none !important;
  border-color:rgba(18,18,18,.2) !important;
  background:repeating-linear-gradient(45deg,#f7f7f7,#f7f7f7 6px,#efefef 6px,#efefef 12px) !important;
  pointer-events:none !important; cursor:not-allowed !important;
}
.woocommerce ul.variable-items-wrapper li.variable-item.disabled .variable-item-span,
.woocommerce ul.variable-items-wrapper li.variable-item.wvs-blur .variable-item-span,
.woocommerce ul.variable-items-wrapper li.variable-item.blur .variable-item-span{
  color:rgba(18,18,18,.35) !important; text-decoration:line-through !important;
}
/* Titre CATÉGORIES + cacher "Effacer" */
.woocommerce div.product form.cart .variations .label label{ font-family:var(--ffr-font-head); font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--ffr-text); }
.woocommerce .reset_variations{ display:none !important; }

/* Nettoyage fiche produit */
.single-product .stock,.single-product .product_meta{ display:none !important; }

/* Bouton Ajouter au panier */
.single-product .single_add_to_cart_button{ width:100% !important; font-family:var(--ffr-font-head); font-weight:700; text-transform:uppercase; letter-spacing:.06em; background:var(--ffr-accent) !important; border-radius:4px !important; font-size:1.15rem; }
.single-product .single_add_to_cart_button:hover{ background:var(--ffr-accent-dark) !important; }

/* Badges paiement */
.ffr-pay{ display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.2rem; }
.ffr-pay svg{ height:30px; width:auto; }

/* IMAGE PRODUIT pleine largeur */
.single-product div.product .woocommerce-product-gallery{ width:100% !important; margin:0 !important; padding:0 !important; }
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image{ margin:0 !important; }
.single-product .woocommerce-product-gallery img{ width:100% !important; height:auto !important; border-radius:0 !important; display:block; }
@media (max-width:999px){ .single-product .woocommerce-product-gallery{ margin-left:-20px !important; margin-right:-20px !important; width:calc(100% + 40px) !important; } }

/* Forcer l'affichage de la description */
.single-product .woocommerce-Tabs-panel--description,
.single-product #tab-description,
.single-product .wc-tab,
.single-product .woocommerce-tabs{ display:block !important; }

/* DESCRIPTION PRODUIT (accordéons soignés) */
.ffr-pdp{ --accent:#022c65; font-family:var(--ffr-font-head); color:#121212; max-width:820px; margin:0 auto; }
.ffr-pdp img{ max-width:100%; height:auto; display:block; }
.ffr-acc{ border-bottom:1px solid rgba(18,18,18,.1); }
.ffr-acc:first-of-type{ border-top:1px solid rgba(18,18,18,.1); }
.ffr-acc summary{ list-style:none; cursor:pointer; position:relative; font-family:var(--ffr-font-head); font-weight:600; font-size:1.1rem; color:#121212; padding:1.3rem 3rem 1.3rem 0; transition:color .2s; }
.ffr-acc summary:hover{ color:var(--accent); }
.ffr-acc summary::-webkit-details-marker{ display:none; }
.ffr-acc summary::after{ content:"+"; position:absolute; right:0; top:50%; transform:translateY(-50%); width:28px; height:28px; border:1.5px solid var(--accent); border-radius:50%; color:var(--accent); font-size:1.2rem; line-height:26px; text-align:center; transition:all .25s; }
.ffr-acc[open] summary::after{ content:"–"; background:var(--accent); color:#fff; }
.ffr-acc__body{ padding:0 0 1.5rem; line-height:1.7; color:rgba(18,18,18,.75); }
.ffr-pdp__title{ font-family:var(--ffr-font-head); text-transform:uppercase; text-align:center; letter-spacing:.05em; margin:3rem 0 1.5rem; font-weight:700; font-size:1.6rem; }
.ffr-pdp__img{ margin:1.5rem 0; }
.ffr-pdp__img img{ margin:0 auto; border-radius:10px; }

/* ===================== PANIER LATÉRAL ===================== */
.xoo-wsc-container .xoo-wsc-header,
.xoo-wsc-modal .xoo-wsc-header{ background:#fff !important; border-bottom:1px solid rgba(18,18,18,.08); }
.xoo-wsc-cart-title{ font-family:var(--ffr-font-head) !important; font-weight:700 !important; color:#121212 !important; }
.xoo-wsc-body::before{ content:"Vos billets sont réservés — finalisez vite votre commande."; display:block; background:#022c65; color:#fff; text-align:center; font-family:var(--ffr-font-head); font-weight:600; font-size:.85rem; padding:.9em 1em; line-height:1.4; }
.xoo-wsc-ptitle, .xoo-wsc-ptitle a{ font-family:var(--ffr-font-head) !important; font-weight:700 !important; text-transform:uppercase; color:#121212 !important; }
.xoo-wsc-qty, .xoo-wsc-qtyt{ display:none !important; }
.xoo-wsc-price .woocommerce-Price-amount,
.xoo-wsc-price bdi{ color:#022c65 !important; font-weight:700 !important; }
.xoo-wsc-subtotal, .xoo-wsc-subtotal .xoo-wsc-st-text{ color:#022c65 !important; font-weight:700 !important; }
.xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn-viewcart,
.xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn-shopping,
.xoo-wsc-continue-shopping{ display:none !important; }
.xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn-checkout,
.xoo-wsc-footer a.button{ width:100% !important; background:#022c65 !important; color:#fff !important; border-radius:4px !important; font-family:var(--ffr-font-head) !important; font-weight:700 !important; text-transform:uppercase !important; letter-spacing:.06em !important; }
.xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn-checkout:hover{ background:#011f47 !important; }
.xoo-wsc-cart-trigger{ background:#022c65 !important; }