/* 4NextSport shop — pixel-matched to approved design (E02) */
:root{--fnx-ink:#0A2423;--fnx-pine2:#123A33;--fnx-mint:#2FCFB0;--fnx-mintd:#1FA98E;--fnx-msoft:#DFF7F1;--fnx-navy:#1D2B3F;--fnx-slate:#5C6B68;--fnx-line:#E4E9E7;--fnx-paper:#F4F6F5}

.fnxshop-wrap{max-width:1240px;margin:0 auto;padding:0 24px}
body:not(.error404) .fnxshop-hero{background:linear-gradient(115deg,var(--fnx-ink),var(--fnx-pine2));color:#fff;padding:38px 0 42px;margin-bottom:34px}
.fnxshop-crumb{font-size:13px;color:rgba(255,255,255,.55);margin-bottom:10px}
.fnxshop-crumb a{color:inherit;text-decoration:none}
.fnxshop-crumb a:hover{color:var(--fnx-mint)}
.fnxshop-crumb b{color:var(--fnx-mint);font-weight:600}
.fnxshop-hero h1{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(28px,3vw,40px);color:#fff;margin:0;line-height:1.1}
.fnxshop-hero p{margin:10px 0 0;font-family:'Outfit',sans-serif;font-weight:300;font-size:15.5px;color:rgba(255,255,255,.75);max-width:60ch}

.fnxshop-layout{display:grid;grid-template-columns:264px 1fr;gap:34px;align-items:start;font-family:'Outfit',sans-serif;color:var(--fnx-ink);padding-bottom:70px}

/* ---- universe chips ---- */
.fnxshop-uchips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.fnxshop-uchips a{border:1.5px solid var(--fnx-line);border-radius:999px;padding:10px 20px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;color:var(--fnx-ink);text-decoration:none;background:#fff;transition:border-color .15s}
.fnxshop-uchips a:hover{border-color:var(--fnx-ink);color:var(--fnx-ink)}
.fnxshop-uchips a.on{background:var(--fnx-ink);border-color:var(--fnx-ink);color:#fff}

/* ---- filters ---- */
.fnxshop-filters{background:#fff;border:1px solid var(--fnx-line);border-radius:16px;padding:22px;position:sticky;top:96px}
.fnxshop-fhead{display:none;justify-content:space-between;align-items:center;margin-bottom:6px}
.fnxshop-fhead b{font-family:'Space Grotesk',sans-serif;font-size:16px}
.fnxshop-fclose{background:none;border:none;font-size:26px;cursor:pointer;line-height:1;color:var(--fnx-ink)}
.fnxshop-ftitle{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:16px;margin:0 0 4px}
.fnxshop-fnote{font-size:12px;color:var(--fnx-slate);background:var(--fnx-paper);border-radius:8px;padding:8px 11px;margin:10px 0 4px;line-height:1.5}
.fnxshop-fgroup{padding:15px 0 6px;border-top:1px solid var(--fnx-line);margin-top:12px}
.fnxshop-fgroup:first-of-type{border-top:none;margin-top:2px}
.fnxshop-fgroup>b{display:block;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fnx-slate);margin-bottom:7px}
.fnxshop-fopt{display:flex;align-items:center;gap:10px;padding:4.5px 0;font-size:14px;color:var(--fnx-slate);text-decoration:none}
.fnxshop-fopt:hover{color:var(--fnx-ink)}
.fnxshop-fopt .cb{width:16px;height:16px;border:1.5px solid #B9C4C1;border-radius:4px;flex-shrink:0;display:grid;place-items:center;background:#fff}
.fnxshop-fopt.on{color:var(--fnx-ink);font-weight:500}
.fnxshop-fopt.on .cb{background:var(--fnx-mintd);border-color:var(--fnx-mintd)}
.fnxshop-fopt.on .cb::after{content:"";width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.fnxshop-fopt i.cnt{font-style:normal;margin-left:auto;font-size:12px;color:#ABB8B5}
.fnxshop-up{color:var(--fnx-mintd)!important;font-weight:600}
.fnxshop-price{display:flex;align-items:center;gap:8px;margin-top:4px}
.fnxshop-price input{flex:1;min-width:0;width:auto;border:1.5px solid var(--fnx-line);border-radius:10px;padding:8px 10px;font-family:inherit;font-size:13px;color:var(--fnx-ink)}
.fnxshop-price input:focus{outline:none;border-color:var(--fnx-mintd)}
.fnxshop-price span{color:var(--fnx-slate)}
.fnxshop-price button{border:none;background:var(--fnx-ink);color:#fff;border-radius:10px;padding:9px 13px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:12px;cursor:pointer}
.fnxshop-resetbtn{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:16px;background:transparent;border:1.5px solid var(--fnx-line);border-radius:10px;padding:11px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;color:var(--fnx-slate);text-decoration:none}
.fnxshop-resetbtn:hover{border-color:var(--fnx-ink);color:var(--fnx-ink)}
.fnxshop-ffoot{display:none}

/* ---- toolbar ---- */
.fnxshop-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.fnxshop-res{font-size:14px;color:var(--fnx-slate)}
.fnxshop-res b{color:var(--fnx-ink);font-family:'Space Grotesk',sans-serif;font-weight:700}
.fnxshop-res .woocommerce-result-count{display:inline!important;margin:0!important;padding:0!important;font-size:inherit!important;color:inherit!important;float:none!important;visibility:visible!important}
.fnxshop-fbtn{display:none;align-items:center;gap:9px;border:1.5px solid var(--fnx-line);background:#fff;border-radius:999px;padding:10px 18px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;cursor:pointer;color:var(--fnx-ink)}
.fnxshop-fbtn svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2}
.fnxshop-sorts{display:flex;gap:10px;align-items:center;margin-left:auto;font-size:14px;color:var(--fnx-slate)}
.fnxshop-sorts select,.fnxshop-sorts .woocommerce-ordering select{border:1.5px solid var(--fnx-line);border-radius:10px;padding:9px 30px 9px 12px;font-family:'Outfit',sans-serif;font-size:14px;background:#fff;cursor:pointer;color:var(--fnx-ink)}
.fnxshop-sorts .woocommerce-ordering{margin:0}

/* ---- grid & cards ---- */
ul.products,.woocommerce ul.products,ul.products[class*="columns-"],.wd-products,.fnxshop-main .products{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:20px!important;margin:0!important;padding:0!important;list-style:none;width:100%!important}
.fnxshop-main .products>*{width:100%!important;max-width:none!important;flex:none!important}
ul.products::before,ul.products::after{display:none}
li.fnxcard{width:100%!important;margin:0!important;background:#fff;border:1px solid var(--fnx-line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;float:none!important}
li.fnxcard:hover{transform:translateY(-4px);box-shadow:0 14px 36px rgba(10,36,35,.1)}
.fnxcard-ph{position:relative;display:grid;place-items:center;height:190px;background:linear-gradient(160deg,#F2F6F5,#E9F0EE);text-decoration:none}
.fnxcard-ph img{max-width:72%!important;max-height:72%;width:auto!important;height:auto;object-fit:contain;margin:0!important}
.fnxcard-tag{position:absolute;top:12px;left:12px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:6px;background:var(--fnx-msoft);color:var(--fnx-mintd)}
.fnxcard-tag-competition,.fnxcard-tag-compétition{background:var(--fnx-ink);color:var(--fnx-mint)}
.fnxcard-tag-devis{left:auto;right:12px;background:var(--fnx-navy);color:#fff;display:flex;gap:6px;align-items:center}
.fnxcard-tag-devis i{width:6px;height:6px;border-radius:50%;background:var(--fnx-mint)}
.fnxcard-tag-promo{top:auto;bottom:12px;background:#FBE9E7;color:#C0392B}
.fnxcard-phwrap{position:relative}
.fnx-wish-toggle{cursor:pointer;display:grid;place-items:center;background:#fff;border:1px solid var(--fnx-line)}
.fnx-wish-toggle svg{width:17px;height:17px;stroke:var(--fnx-slate);fill:none;stroke-width:1.8;transition:stroke .15s,fill .15s}
.fnx-wish-toggle:hover svg{stroke:#C0392B}
.fnx-wish-toggle.on svg{stroke:#C0392B;fill:#C0392B}
.fnx-wish-toggle.busy{opacity:.5;pointer-events:none}
.fnx-wish-card{position:absolute;bottom:12px;right:12px;width:34px;height:34px;border-radius:50%;z-index:3}
.fnxcard-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:4px;flex:1}
.fnxcard-brand{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--fnx-slate)}
.fnxcard-body h3{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:16px;line-height:1.35;margin:0}
.fnxcard-body h3 a{color:inherit;text-decoration:none}
.fnxcard-body h3 a:hover{color:var(--fnx-mintd)}
.fnxcard-price,.fnxcard-price .amount,.fnxcard-price .woocommerce-Price-amount,.fnxcard-price bdi{font-family:'Space Grotesk',sans-serif!important;font-weight:700!important;font-size:19px;color:var(--fnx-ink)!important}
.fnxcard-price{margin-top:8px}
.fnxcard-price ins .amount,.fnxcard-price ins bdi{color:var(--fnx-ink)!important}
.fnxcard-price del .amount,.fnxcard-price del bdi{color:var(--fnx-slate)!important;font-weight:400!important;font-size:14px!important}
.fnxcard-price small{font-weight:500;font-size:12.5px;color:var(--fnx-slate);font-family:'Outfit',sans-serif}
.fnxcard-price del{color:var(--fnx-slate);font-weight:400;font-size:14px}
.fnxcard-price ins{text-decoration:none}
.fnxcard-devis{display:flex;align-items:center;gap:8px;font-weight:500;font-size:14.5px;margin-top:8px;color:var(--fnx-ink)}
.fnxcard-devis i{width:8px;height:8px;border-radius:50%;background:var(--fnx-mint)}
.fnxcard-btn{margin-top:auto;padding-top:14px}
.fnxcard-btn .button,.fnxcard-btn .fnxqb-add{display:flex!important;justify-content:center;width:100%;background:var(--fnx-ink)!important;color:#fff!important;border:none!important;border-radius:10px!important;padding:12px!important;font-family:'Space Grotesk',sans-serif!important;font-weight:600!important;font-size:14px!important;text-align:center;text-decoration:none;cursor:pointer;line-height:1.2;gap:8px}
.fnxcard-btn .button:hover{background:var(--fnx-pine2)!important}
.fnxcard-btn .fnxqb-add{background:#fff!important;color:var(--fnx-navy)!important;border:1.5px solid var(--fnx-navy)!important}
.fnxcard-btn .fnxqb-add:hover{background:var(--fnx-navy)!important;color:#fff!important}
.fnxcard-btn .added_to_cart{display:block;text-align:center;margin-top:8px;font-size:12.5px;color:var(--fnx-mintd);text-decoration:none;font-weight:600}

/* ---- pagination ---- */
.fnxshop-pageinfo{text-align:center;font-size:13px;color:var(--fnx-slate);margin-top:34px}
.woocommerce-pagination{text-align:center;margin-top:12px}
.woocommerce-pagination ul,.woocommerce-pagination ul.page-numbers{display:inline-flex!important;flex-direction:row!important;flex-wrap:wrap;justify-content:center;gap:8px;border:none!important;margin:0!important;padding:0!important;width:auto!important}
.woocommerce-pagination li{display:inline-flex!important;border:none!important;float:none!important;list-style:none!important;margin:0!important;width:auto!important}
.woocommerce-pagination .page-numbers{display:grid;place-items:center;width:40px;height:40px;border:1.5px solid var(--fnx-line)!important;border-radius:10px!important;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;color:var(--fnx-ink)!important;text-decoration:none;padding:0!important;line-height:1!important;background:#fff!important}
.woocommerce-pagination .page-numbers.current{background:var(--fnx-ink)!important;border-color:var(--fnx-ink)!important;color:#fff!important}
.woocommerce-pagination a.page-numbers:hover{border-color:var(--fnx-ink)!important}

/* ---- empty state ---- */
.fnxshop-none{text-align:center;border:1.5px dashed var(--fnx-line);border-radius:16px;padding:60px 20px;color:var(--fnx-slate)}
.fnxshop-none b{display:block;font-family:'Space Grotesk',sans-serif;font-size:17px;color:var(--fnx-ink);margin-bottom:6px}
.fnxshop-none span{display:block;margin-bottom:18px}
.fnxshop-reset2{display:inline-block;background:var(--fnx-mint);color:var(--fnx-ink);border-radius:10px;padding:12px 22px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;text-decoration:none}

/* ---- responsive ---- */
@media(max-width:1080px){
  .fnxshop-layout{grid-template-columns:1fr}
  .fnxshop-fbtn{display:inline-flex}
  .fnxshop-filters{position:fixed;inset:0 18% 0 0;z-index:99999;border-radius:0;overflow-y:auto;transform:translateX(-103%);transition:transform .25s;box-shadow:20px 0 60px rgba(10,36,35,.25)}
  body.fnx-fopen .fnxshop-filters{transform:none}
  .fnxshop-fhead{display:flex}
  .fnxshop-scrim{position:fixed;inset:0;background:rgba(10,36,35,.5);z-index:99998;opacity:0;pointer-events:none;transition:opacity .25s}
  body.fnx-fopen .fnxshop-scrim{opacity:1;pointer-events:auto}
  .fnxshop-resetbtn{display:none}
  .fnxshop-ffoot{display:flex;gap:10px;position:sticky;bottom:0;background:#fff;border-top:1px solid var(--fnx-line);padding:14px 0 4px;margin-top:16px}
  .fnxshop-reset{flex:1;display:grid;place-items:center;border:1.5px solid var(--fnx-line);border-radius:10px;padding:13px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;color:var(--fnx-ink);text-decoration:none}
  .fnxshop-apply{flex:1.4;border:none;background:var(--fnx-mint);color:var(--fnx-ink);border-radius:10px;padding:13px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;cursor:pointer}
}
@media(max-width:640px){
  ul.products,.woocommerce ul.products,.fnxshop-main .products{grid-template-columns:repeat(2,1fr)!important;gap:12px!important}
  .fnxcard-ph{height:140px}
  .fnxcard-body{padding:12px}
  .fnxcard-body h3{font-size:13.5px;min-height:36px}
  .fnxcard-price{font-size:15px}
  .fnxcard-btn .button,.fnxcard-btn .fnxqb-add{padding:10px 8px!important;font-size:11.5px!important}
  .fnxcard-tag{font-size:9px;padding:4px 8px;top:8px;left:8px}
  .fnxcard-tag-devis{left:auto;right:8px}
  .fnxcard-wish{width:30px;height:30px;right:8px;bottom:8px}
  .fnxshop-hero{padding:30px 0 34px;margin-bottom:22px}
  .fnxshop-uchips a{padding:8px 14px;font-size:12.5px}
}

/* ---- wishlist page ([woodmart_wishlist]) ---- */
.wd-wishlist-content ul.products{margin-top:10px!important}
.wd-wishlist-content .wd-wishlist-remove,.wd-wishlist-content .wd-remove-btn a{color:var(--fnx-slate)!important}
.wd-wishlist-content .wd-wishlist-remove:hover{color:#C0392B!important}
.wd-empty-wishlist{text-align:center;border:1.5px dashed var(--fnx-line);border-radius:16px;padding:60px 20px;font-family:'Outfit',sans-serif;color:var(--fnx-slate)}
.wd-empty-wishlist .wd-empty-page-text,.wd-empty-wishlist>*:first-child{font-family:'Space Grotesk',sans-serif;font-weight:700;color:var(--fnx-ink)}
.wd-empty-wishlist a.button{background:var(--fnx-mint)!important;color:var(--fnx-ink)!important;border-radius:10px!important;font-family:'Space Grotesk',sans-serif!important;font-weight:600!important;border:none!important}
