/* DRAXX — ajustements WordPress / Elementor / WooCommerce (la maquette reste dans style.css) */

/* Conteneurs Elementor neutres autour des sections de la maquette */
.dx-wrap.e-con,.dx-wrap{padding:0!important;gap:0!important;--padding-top:0;--padding-bottom:0;--padding-left:0;--padding-right:0;--gap:0;max-width:none!important}
.dx-wrap>.elementor-widget,.dx-wrap .elementor-widget-html,.dx-wrap .elementor-widget-container{width:100%;max-width:none;margin:0}
.elementor-widget-html .elementor-widget-container>section{margin:0}

/* Header sticky : c'est l'emplacement Elementor qui colle, plus le header interne */
.elementor-location-header{position:sticky;top:0;z-index:100}
.admin-bar .elementor-location-header{top:32px}
@media (max-width:782px){.admin-bar .elementor-location-header{top:46px}}
.elementor-location-header .site-header{position:relative;display:block;padding:0;max-width:none}

/* Elementor impose .elementor img{max-width:100%} : la raquette 5★ (avec housse) doit pouvoir déborder de la colonne */
.elementor .hero__racket{max-width:none}

/* Messages formulaires */
.dx-msg{margin:12px 0 0;font-weight:600;color:var(--text)}
.news-form__legal:not([hidden]){display:block}

/* Notices WooCommerce sur la fiche produit */
.dx-notices:empty{display:none}
.dx-notices{max-width:calc(var(--wrap) + var(--gut)*2);margin:24px auto 0;padding:0 var(--gut)}

/* Zone d'achat */
.dx-buy{display:contents}
.dx-buy .buy__cta[disabled]{opacity:.5;cursor:not-allowed}

/* ---------- WooCommerce (panier, commande, compte) ---------- */
.dx-woo{padding:48px 0 96px}
.dx-woo .woocommerce{color:var(--text);font-family:var(--f-text)}
.dx-woo a{color:var(--text)}
.dx-woo a:hover{color:var(--red)}
.dx-woo h2,.dx-woo h3{font-family:var(--f-display);font-style:italic;font-weight:800;text-transform:uppercase;letter-spacing:.01em;color:#fff}
.woocommerce table.shop_table{border:1px solid var(--line-2);border-radius:0;background:var(--surface);color:var(--text);border-collapse:collapse}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-top:1px solid var(--line);padding:16px;color:var(--text)}
.woocommerce table.shop_table th{font:700 12px/1 var(--f-data);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.woocommerce table.cart img{width:84px;background:var(--surface-2)}
.woocommerce .quantity .qty{background:var(--bg-2);color:#fff;border:1px solid var(--line-2);height:44px;width:72px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,
.woocommerce .select2-container .select2-selection--single,.woocommerce-cart .coupon .input-text,.dx-woo input[type=text],.dx-woo input[type=email],.dx-woo input[type=tel],.dx-woo input[type=password]{
  background:var(--bg-2)!important;color:#fff!important;border:1px solid var(--line-2)!important;border-radius:0;min-height:48px;padding:10px 14px}
.woocommerce .select2-container .select2-selection--single .select2-selection__rendered{color:#fff;line-height:26px}
.select2-dropdown{background:var(--surface);color:#fff;border-color:var(--line-2)}
.woocommerce form .form-row label{color:var(--muted);font-size:14px}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce-page #payment #place_order{
  background:var(--red);color:#fff;border-radius:0;font:800 italic 15px/1 var(--f-display);text-transform:uppercase;letter-spacing:.04em;padding:18px 26px;border:0}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover{background:#c41522;color:#fff}
.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled]{background:var(--surface-2);color:var(--muted);padding:18px 26px}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout-review-order,.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{background:var(--surface);border:1px solid var(--line-2)!important;border-radius:0;padding:24px}
.woocommerce-checkout #payment{background:var(--surface);border-radius:0}
.woocommerce-checkout #payment div.payment_box{background:var(--surface-2);color:var(--text)}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--surface-2)}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--line)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{background:var(--surface);color:var(--text);border-top-color:var(--red);border-radius:0}
.woocommerce-message::before,.woocommerce-info::before{color:var(--red)}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--line-2)}
.woocommerce-MyAccount-navigation li a{display:block;padding:14px 18px;border-bottom:1px solid var(--line);font:700 13px/1 var(--f-data);letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--surface);color:#fff;box-shadow:inset 3px 0 0 var(--red)}
.woocommerce span.onsale{background:var(--red);border-radius:0}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:17px;padding:22px}

/* ---------- Conseils (articles, archive) ---------- */
.dx-post__hero{padding:64px 0 56px;background:radial-gradient(70% 90% at 80% 20%,#1B1F25 0%,var(--bg) 60%);border-bottom:1px solid var(--line)}
.dx-post__hero .eyebrow{margin-top:34px}
.dx-post__hero .eyebrow a{color:inherit}
.dx-post__title{margin-top:18px;max-width:1080px;font:800 italic clamp(44px,6.4vw,104px)/.9 var(--f-display);letter-spacing:-.05em;text-transform:uppercase;padding-right:.1em}
.dx-post__lead{margin-top:26px;max-width:720px}
.dx-post__meta{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:30px;font:700 12px/1 var(--f-data);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.dx-post__cover{margin-top:-1px}
.dx-post__cover img{display:block;width:100%;max-height:560px;object-fit:cover;border:1px solid var(--line)}
.dx-post__body{padding:80px 0 60px}
.dx-post__grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:80px;align-items:start}
.dx-post__aside{position:sticky;top:140px;display:grid;gap:16px}
.dx-aside-card{padding:26px;border:1px solid var(--line-2);background:var(--bg-2)}
.dx-aside-card--red{border-color:rgba(229,32,46,.5);box-shadow:inset 3px 0 0 var(--red)}
.dx-aside-card p{font-size:15px;color:#B8BDC5;margin-bottom:16px}
.dx-aside-card__t{font:800 italic 22px/1.05 var(--f-display)!important;text-transform:uppercase;color:#fff!important;letter-spacing:-.02em}
.dx-prose{max-width:740px;font-size:18px;line-height:1.75;color:#C9CDD3}
.dx-prose>*+*{margin-top:1.1em}
.dx-prose h2{margin-top:2.2em;font:800 italic clamp(28px,3vw,40px)/1 var(--f-display);letter-spacing:-.035em;text-transform:uppercase;color:#fff}
.dx-prose h3{margin-top:1.8em;font:700 18px/1.3 var(--f-data);letter-spacing:.12em;text-transform:uppercase;color:#fff}
.dx-prose strong{color:#fff}
.dx-prose a{color:#fff;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:4px}
.dx-prose ul,.dx-prose ol{padding-left:1.3em}
.dx-prose li+li{margin-top:.45em}
.dx-prose ul li::marker{color:var(--red)}
.dx-prose ol li::marker{color:var(--red);font-weight:700}
.dx-prose blockquote{border-left:3px solid var(--red);padding:6px 0 6px 22px;color:#fff;font-style:italic}
.dx-prose table{width:100%;border-collapse:collapse;font-size:15px}
.dx-prose th,.dx-prose td{border:1px solid var(--line-2);padding:10px 12px;text-align:left}
.dx-prose th{font:700 12px/1.2 var(--f-data);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:var(--bg-2)}
.dx-prose .is-style-dx-membres{padding:28px;border:1px solid rgba(229,32,46,.45);background:rgba(229,32,46,.05)}
.dx-prose .is-style-dx-membres::before{content:"Contenu membres";display:block;margin-bottom:14px;font:700 11px/1 var(--f-data);letter-spacing:.2em;text-transform:uppercase;color:var(--red)}
.dx-locked{display:flex;gap:18px;padding:28px;border:1px solid rgba(229,32,46,.45);background:linear-gradient(135deg,rgba(229,32,46,.1),transparent 60%),var(--bg-2)}
.dx-locked>.i{width:30px;height:30px;flex:none;color:var(--red)}
.dx-locked__t{font:800 italic 24px/1.05 var(--f-display);text-transform:uppercase;color:#fff;letter-spacing:-.02em}
.dx-locked p+p{margin-top:10px;font-size:16px}
.dx-locked__cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:18px!important}
.dx-post__more{padding:100px 0;border-top:1px solid var(--line)}
.dx-archive__cats{margin-top:34px}
.dx-archive__cats a.chip span{display:inline-block}
.dx-archive__cats a.chip.is-on span{background:#fff;color:var(--ink);border-color:#fff}
.dx-archive .mq-tips{padding-top:70px}
.dx-empty{color:var(--muted);font-size:16px}
.dx-pagination{margin-top:48px}
.dx-pagination .nav-links{display:flex;gap:8px}
.dx-pagination .page-numbers{display:grid;place-items:center;min-width:44px;height:44px;border:1px solid var(--line-2);font:700 14px/1 var(--f-data);color:var(--text)}
.dx-pagination .page-numbers.current{background:#fff;color:var(--ink)}
@media (max-width:1100px){.dx-post__grid{grid-template-columns:1fr;gap:40px}.dx-post__aside{position:static}}
@media (max-width:720px){.dx-post__hero{padding:40px 0}.dx-prose{font-size:17px}.dx-locked{flex-direction:column}}

/* ---------- Espace club (Mon compte) ---------- */
.dx-club{display:grid;gap:18px}
.dx-club .eyebrow{margin-bottom:10px}
.dx-club__head .h3{color:#fff}
.dx-club__card{padding:28px;border:1px solid var(--line-2);background:var(--bg-2)}
.dx-club__card p+p,.dx-club__card p+form,.dx-club__card p+ul{margin-top:12px}
.dx-club__k{font:700 12px/1 var(--f-data);letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-bottom:12px}
.dx-club__t{font:800 italic 26px/1.05 var(--f-display);text-transform:uppercase;letter-spacing:-.02em}
.dx-club__t a{color:#fff}
.dx-club__code{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;box-shadow:inset 3px 0 0 var(--red)}
.dx-club__coupon{font:700 34px/1 var(--f-data);letter-spacing:.14em;color:#fff;margin:6px 0 10px}
.dx-club__early{padding-left:1.2em}
.dx-club__tips .grid-3{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.dx-club .mq-form{margin-top:18px;display:grid;gap:16px}
.dx-ugc-form__row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dx-club__prefs{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}
.dx-club__prefs .dx-club__k{flex-basis:100%;margin:0}
.dx-club__inline{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.dx-club__leave{background:none;border:0;color:var(--muted);text-decoration:underline;cursor:pointer;font-size:14px}
.dx-club-cta{margin:18px 0;padding:18px 20px;border:1px solid var(--line-2);background:var(--bg-2)}
@media (max-width:720px){.dx-ugc-form__row{grid-template-columns:1fr}.dx-club__coupon{font-size:26px}}
/* Défi / page */
.dx-club__done{display:flex;align-items:center;gap:10px;margin-top:14px;color:#fff;font-weight:600}
.dx-club__done .i{width:20px;height:20px;color:#2BD576}
.dx-club__code--photo{box-shadow:inset 3px 0 0 #fff}
.mq-note a{color:#fff;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
/* Notes Amazon.fr (inc/ratings.php) */
.dx-amz{color:inherit;text-decoration:none}
a.dx-amz:hover{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
.rating .dx-amz{display:inline-flex;gap:6px;align-items:center}
.dx-amz-panel__big{display:flex;align-items:center;gap:14px;font:800 italic 56px/1 var(--f-display);color:#fff}
.dx-amz-panel__big span:last-child{font-size:24px;color:var(--muted)}
.dx-amz-panel .lead{margin-top:14px}
.dx-amz-panel .link-arrow{margin-top:10px}