.market-page { min-height:100vh; background:#f7f7f2; color:#111214; }
.market-nav { border-top:8px solid var(--yellow); background:#090b0d; color:#fff; }
.market-nav .wrap { min-height:78px; display:flex; align-items:center; gap:26px; }
.market-nav .brand { margin-right:auto; }.market-nav a { font-size:.84rem; font-weight:700; }.market-nav a:hover,.market-nav .nav-current { color:var(--yellow); }
.market-cart-link { display:inline-flex; align-items:center; gap:9px; }.market-cart-link b { min-width:22px; padding:3px 6px; background:var(--yellow); color:#111214; text-align:center; font-size:.7rem; }
.market-hero { padding:112px 0 118px; background:#111214; color:#fff; }.market-hero .eyebrow { color:var(--yellow); }.market-hero h1 { max-width:820px; margin:17px 0 26px; font-size:clamp(3.6rem,7.2vw,7rem); line-height:.88; letter-spacing:-.09em; }.market-hero p { max-width:600px; margin:0 0 34px; color:#d2d3d4; font-size:1.08rem; line-height:1.75; }
.market-packs,.market-catalogue { padding:100px 0; }.market-packs { background:#eceee9; }.market-section-head { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:42px; }.market-section-head .eyebrow { color:#6c5b00; }.market-section-head h2 { margin:12px 0 0; max-width:720px; font-size:clamp(2.4rem,4.6vw,4.8rem); line-height:.95; letter-spacing:-.075em; }.market-section-head p { max-width:355px; margin:0; color:#56595e; line-height:1.7; }
.market-pack-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2px; background:#c4c8c3; }.market-pack { min-height:368px; display:flex; flex-direction:column; padding:30px; background:#121417; color:#fff; }.market-pack:nth-child(2n) { background:#272b2f; }.market-pack > span { color:var(--yellow); font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.market-pack h3 { margin:55px 0 12px; font-size:2rem; letter-spacing:-.06em; }.market-pack p { margin:0; color:#c8cbd0; line-height:1.65; }.market-pack strong { margin:28px 0 14px; color:var(--yellow); font-size:1.2rem; }.market-pack small { margin:0 0 14px; color:#ffcfbf; }.market-pack button { align-self:flex-start; margin-top:auto; border:0; cursor:pointer; }.market-pack button:disabled,.market-product button:disabled { opacity:.45; cursor:not-allowed; }
.market-filters { display:flex; justify-content:space-between; align-items:end; gap:28px; margin-bottom:38px; padding-bottom:23px; border-bottom:1px solid #caccc8; }.market-filters label { display:grid; gap:8px; color:#55585d; font-size:.75rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }.market-filters input { width:min(400px,80vw); border:0; border-bottom:1px solid #8f9292; padding:10px 0; background:transparent; color:#111214; font:inherit; text-transform:none; outline:0; }.market-filters > div { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }.market-filters button { border:1px solid #b8bbb8; padding:8px 11px; background:transparent; color:#111214; font:700 .72rem Inter,Arial,sans-serif; cursor:pointer; }.market-filters button.active,.market-filters button:hover { border-color:#111214; background:#111214; color:#fff; }
.market-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }.market-product { display:flex; flex-direction:column; min-height:410px; padding:18px; background:#fff; border:1px solid #e0e1dc; }.market-product-art,.market-detail-art { display:grid; place-items:center; background:linear-gradient(135deg,#263133,#101416); color:var(--yellow); font-size:.72rem; font-weight:700; letter-spacing:.1em; text-align:center; text-transform:uppercase; }.market-product-art { height:145px; margin-bottom:19px; }.market-product > span { color:#36735a; font-size:.7rem; font-weight:700; }.market-product h3 { margin:12px 0 9px; font-size:1.28rem; letter-spacing:-.045em; }.market-product p { min-height:64px; margin:0; color:#595c60; font-size:.9rem; line-height:1.6; }.market-product strong { margin:16px 0; font-size:1.06rem; }.market-product > div:last-child { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:auto; }.market-product a { font-size:.78rem; font-weight:700; text-decoration:underline; }.market-product button { border:0; padding:10px 12px; background:var(--yellow); color:#111214; font:700 .76rem Inter,Arial,sans-serif; cursor:pointer; }
.market-detail { padding-top:45px; }.market-back { display:inline-block; margin-bottom:38px; color:#575a5f; font-size:.85rem; }.market-detail-grid { display:grid; grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr); align-items:center; gap:clamp(40px,9vw,150px); padding-bottom:100px; }.market-detail-art { min-height:420px; font-size:1rem; }.market-detail h1,.market-cart h1,.market-checkout h1,.market-confirmation h1 { margin:12px 0 18px; font-size:clamp(2.8rem,5vw,5.2rem); line-height:.94; letter-spacing:-.08em; }.market-detail-summary { max-width:560px; color:#56595e; font-size:1.1rem; line-height:1.75; }.market-price { display:block; margin-top:30px; font-size:1.6rem; }.market-stock { color:#287052; font-weight:700; }.market-stock.empty { color:#a6402e; }.market-buy { display:flex; gap:10px; }.market-buy input,.market-cart-lines input { width:72px; border:1px solid #9ea19f; padding:12px; background:#fff; font:inherit; }.market-buy button { border:0; cursor:pointer; }.market-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:#ced1ce; }.market-info-grid article { min-height:180px; padding:30px; background:#f7f7f2; }.market-info-grid h2 { margin:0 0 16px; font-size:1.45rem; letter-spacing:-.05em; }.market-info-grid p { margin:0; color:#56595e; line-height:1.7; }.market-info-grid dl { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0; }.market-info-grid dt { font-weight:700; }.market-info-grid dd { margin:0; color:#56595e; }
.market-cart,.market-checkout,.market-confirmation { min-height:calc(100vh - 78px); padding-top:84px; padding-bottom:110px; }.market-empty { padding:28px 0; color:#5a5d60; }.market-empty a { text-decoration:underline; font-weight:700; }.market-cart-grid,.market-checkout form { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:55px; align-items:start; }.market-cart-lines { border-top:1px solid #c8cbc8; }.market-cart-lines article { display:grid; grid-template-columns:minmax(0,1fr) 80px 140px; gap:18px; align-items:center; padding:24px 0; border-bottom:1px solid #c8cbc8; }.market-cart-lines span { color:#5d775f; font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.market-cart-lines h2 { margin:7px 0; font-size:1.25rem; }.market-cart-lines p { margin:0; color:#5a5d60; font-size:.9rem; }.market-cart-lines strong { text-align:right; }.market-cart aside,.market-checkout aside { display:grid; gap:16px; padding:28px; background:#111214; color:#fff; }.market-cart aside p,.market-checkout aside p { margin:0; color:#cfd1d3; }.market-cart aside strong,.market-checkout aside strong { color:var(--yellow); font-size:1.55rem; }.market-cart aside small,.market-checkout aside small { color:#cfd1d3; line-height:1.6; }.market-cart aside a { text-align:center; }
.market-checkout form > div { display:grid; gap:19px; }.market-checkout label { display:grid; gap:8px; font-size:.8rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }.market-checkout input,.market-checkout select,.market-checkout textarea { width:100%; border:1px solid #aeb0ad; padding:12px; background:#fff; color:#111214; font:400 1rem Inter,Arial,sans-serif; text-transform:none; }.market-checkout textarea { min-height:100px; }.market-checkout button { justify-self:start; border:0; cursor:pointer; }.market-form-error { margin:0; color:#a63c2b; font-weight:700; }.market-confirmation { max-width:820px; }.market-confirmation > p { max-width:650px; color:#56595e; font-size:1.08rem; line-height:1.75; }.market-confirmation .btn { display:inline-block; margin-top:18px; }
@media (max-width:850px) { .market-section-head,.market-filters { align-items:flex-start; flex-direction:column; }.market-filters > div { justify-content:flex-start; }.market-pack-grid,.market-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.market-detail-grid,.market-cart-grid,.market-checkout form { grid-template-columns:1fr; gap:34px; }.market-detail-art { min-height:300px; } }
@media (max-width:560px) { .market-nav .wrap { min-height:65px; gap:14px; }.market-nav a:not(.brand):not(.market-cart-link) { display:none; }.market-hero,.market-packs,.market-catalogue { padding:70px 0; }.market-pack-grid,.market-product-grid,.market-info-grid { grid-template-columns:1fr; }.market-product { min-height:360px; }.market-cart,.market-checkout,.market-confirmation { padding-top:65px; }.market-cart-lines article { grid-template-columns:1fr 70px; }.market-cart-lines strong { grid-column:1 / -1; text-align:left; }.market-detail-grid { padding-bottom:65px; }.market-info-grid article { min-height:auto; }.market-section-head h2 { font-size:2.5rem; } }

/* Interface produit : information visible, achat sans distractions. */
.market-hero-search { width:min(680px,100%); display:flex; align-items:center; gap:13px; margin-top:42px; padding:7px 7px 7px 18px; border:1px solid #62676b; background:#171a1d; }.market-hero-search span { color:var(--yellow); font-size:1.65rem; }.market-hero-search input { min-width:0; flex:1; border:0; outline:0; background:transparent; color:#fff; font:400 1rem Inter,Arial,sans-serif; }.market-hero-search input::placeholder { color:#aeb2b5; }.market-hero-search a { padding:12px 18px; background:var(--yellow); color:#111214; font-size:.76rem; font-weight:800; }
.market-filters { align-items:center; }.market-filters > p { margin:0; color:#62666a; font-size:.86rem; }.market-product-art { overflow:hidden; background:#eef0ec; }.market-product-art img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }.market-product-art span { display:grid; width:100%; height:100%; place-items:center; background:linear-gradient(135deg,#273234,#111517); color:var(--yellow); }
.market-product-view { padding-top:38px; padding-bottom:110px; }.market-product-layout { display:grid; grid-template-columns:minmax(320px,.78fr) minmax(360px,1.05fr) minmax(260px,.56fr); gap:clamp(30px,4vw,68px); align-items:start; }.market-gallery { display:grid; grid-template-columns:68px minmax(0,1fr); gap:14px; }.market-gallery-thumb,.market-gallery-main { display:grid; place-items:center; overflow:hidden; background:#eef0ed; }.market-gallery-thumb { width:68px; height:68px; border:1px solid #181a1c; }.market-gallery-main { min-height:440px; padding:28px; background:#f0f2ef; color:#66706e; font-size:.82rem; font-weight:800; letter-spacing:.09em; text-align:center; text-transform:uppercase; }.market-gallery img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }.market-product-copy h1 { margin:12px 0 16px; font-size:clamp(2.1rem,3vw,3.3rem); line-height:1; letter-spacing:-.07em; }.market-breadcrumb { margin:0; color:#6b706f; font-size:.72rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }.market-breadcrumb span { padding:0 6px; color:#a1a6a3; }.market-detail-summary { margin:0; font-size:1rem; }.market-product-meta { display:flex; flex-wrap:wrap; gap:12px 25px; margin:23px 0 28px; padding:17px 0; border-top:1px solid #d5d8d4; border-bottom:1px solid #d5d8d4; color:#656a68; font-size:.8rem; }.market-product-meta b { margin-left:5px; color:#1f7353; }.market-stock-empty { color:#a94432 !important; }.market-description h2,.market-compatible h2 { margin:0 0 12px; font-size:1.1rem; letter-spacing:-.03em; }.market-description > p { margin:0; color:#565b5a; line-height:1.75; }.market-description dl { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:24px 0 0; border-top:1px solid #d5d8d4; }.market-description dt,.market-description dd { margin:0; padding:10px 0; border-bottom:1px solid #d5d8d4; font-size:.84rem; }.market-description dt { font-weight:700; }.market-description dd { color:#5c615f; text-align:right; }.market-compatible { margin-top:28px; }.market-compatible ul { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }.market-compatible li { padding:8px 10px; border:1px solid #c9cdca; color:#444a48; font-size:.78rem; }
.market-purchase-panel { position:sticky; top:24px; padding:23px; border:1px solid #d3d7d2; background:#fff; }.market-panel-label { color:#717674; font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.market-purchase-panel > strong { display:block; margin:10px 0 8px; font-size:1.7rem; letter-spacing:-.04em; }.market-purchase-panel .market-stock { margin:0 0 22px; font-size:.82rem; }.market-quantity { display:grid; grid-template-columns:40px 1fr 40px; height:44px; margin-bottom:11px; border:1px solid #c5c9c5; }.market-quantity button { border:0; background:#f1f2ef; font-size:1.2rem; cursor:pointer; }.market-quantity button:disabled { color:#aaa; cursor:not-allowed; }.market-quantity span { display:grid; place-items:center; font-weight:700; }.market-add-button,.market-buy-now { width:100%; min-height:47px; display:grid; place-items:center; border:0; background:var(--yellow); color:#111214; font:800 .84rem Inter,Arial,sans-serif; cursor:pointer; }.market-add-button:disabled { opacity:.45; cursor:not-allowed; }.market-buy-now { margin-top:10px; border:1px solid #191b1d; background:#fff; }.market-purchase-notes { display:grid; gap:10px; margin-top:23px; padding-top:18px; border-top:1px solid #dce0dc; }.market-purchase-notes p { margin:0; color:#626765; font-size:.76rem; line-height:1.55; }
@media (max-width:1050px) { .market-product-layout { grid-template-columns:minmax(300px,.9fr) minmax(330px,1.1fr); }.market-purchase-panel { position:static; grid-column:1 / -1; max-width:440px; }.market-purchase-notes { grid-template-columns:1fr 1fr; } }
@media (max-width:680px) { .market-hero-search { margin-top:28px; }.market-product-view { padding-top:25px; padding-bottom:70px; }.market-product-layout { grid-template-columns:1fr; }.market-gallery-main { min-height:320px; }.market-purchase-panel { grid-column:auto; }.market-purchase-notes { grid-template-columns:1fr; }.market-gallery { grid-template-columns:52px minmax(0,1fr); }.market-gallery-thumb { width:52px; height:52px; } }
.market-hero { padding:78px 0 84px; }.market-hero h1 { max-width:650px; margin:13px 0 19px; font-size:clamp(2.6rem,5vw,4.7rem); line-height:.96; letter-spacing:-.075em; }.market-hero p { max-width:570px; margin-bottom:26px; font-size:1rem; }.market-hero-search { margin-top:25px; }.market-gallery-thumbs { display:grid; align-content:start; gap:10px; }.market-gallery-thumb { padding:0; border:1px solid #c7cbc7; cursor:pointer; }.market-gallery-thumb.active { border:2px solid #17191b; }

/* Une vitrine dense et lisible : le produit reste au premier plan. */
.market-hero { padding:70px 0 74px; }.market-hero h1 { max-width:1300px; font-size:clamp(2.2rem,3.5vw,3.55rem); line-height:1.02; letter-spacing:-.065em; }.market-hero p { max-width:900px; }.market-hero-search { width:min(920px,100%); }.market-product-summary,.market-detail-description,.market-cart-copy p { font-size:1rem; line-height:1.62; }.market-section-head h2,.market-cart h1,.market-empty h1 { font-size:clamp(1.85rem,2.9vw,2.9rem); line-height:1.08; }.market-product-copy h1 { font-size:clamp(1.75rem,2.7vw,2.65rem); line-height:1.08; }

.market-trust { display:flex; flex-wrap:wrap; gap:9px 24px; margin:24px 0 0; padding:0; color:#c0c5c2; list-style:none; font-size:.75rem; font-weight:700; }
.market-trust li { display:flex; align-items:center; gap:7px; }.market-trust li::before { width:6px; height:6px; border-radius:50%; background:var(--yellow); content:""; }

/* Marché mobile : disposition d'application, gestes courts et actions visibles. */
@media (max-width:760px) {
  .market-nav .wrap { min-height:64px; }
  .market-nav a:not(.brand):not(.market-cart-link) { display:none; }
  .market-cart-link { margin-left:auto; }
  .market-hero { padding:48px 0 42px; }
  .market-hero h1 { max-width:12ch; margin:10px 0 15px; font-size:clamp(2.15rem,10.2vw,3rem); line-height:1.03; }
  .market-hero p { margin-bottom:22px; font-size:.96rem; line-height:1.58; }
  .market-hero-search { width:100%; margin-top:18px; padding-left:14px; }
  .market-trust { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:20px; font-size:.69rem; }
  .market-trust li:last-child { grid-column:1 / -1; }
  .market-hero-search a { padding:12px 14px; }
  .market-packs,.market-catalogue { padding:58px 0; }
  .market-section-head { display:block; margin-bottom:26px; }
  .market-section-head h2 { max-width:15ch; margin-top:8px; font-size:clamp(1.9rem,8vw,2.55rem); }
  .market-section-head p { max-width:34rem; margin-top:14px; font-size:.94rem; }
  .market-pack-grid { display:flex; gap:12px; overflow-x:auto; margin-right:calc((100vw - 100%) / -2); padding-right:16px; background:transparent; scroll-snap-type:x proximity; }
  .market-pack { flex:0 0 min(82vw,330px); min-height:330px; padding:24px; scroll-snap-align:start; }
  .market-pack h3 { margin-top:42px; font-size:1.65rem; }
  .market-filters { display:block; margin-bottom:24px; padding-bottom:16px; }
  .market-filters > div { justify-content:flex-start; flex-wrap:nowrap; overflow-x:auto; margin-top:16px; padding-bottom:4px; }
  .market-filters button { flex:0 0 auto; min-height:38px; }
  .market-product-grid { gap:10px; }
  .market-product { min-height:0; padding:12px; }
  .market-product-art { height:120px; margin-bottom:13px; }
  .market-product h3 { margin:9px 0 7px; font-size:1rem; line-height:1.18; }
  .market-product p { display:-webkit-box; min-height:0; overflow:hidden; font-size:.8rem; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
  .market-product strong { margin:12px 0; font-size:.93rem; }
  .market-product > div:last-child { gap:8px; }
  .market-product button { padding:9px; font-size:.68rem; }
  .market-product-view { padding-top:20px; padding-bottom:190px; }
  .market-product-layout { gap:24px; }
  .market-gallery-main { min-height:330px; }
  .market-product-copy h1 { font-size:clamp(1.8rem,8.5vw,2.45rem); }
  .market-purchase-panel { position:fixed; z-index:30; right:12px; bottom:80px; left:12px; display:grid; grid-template-columns:1fr auto; gap:3px 16px; padding:15px; box-shadow:0 12px 35px rgba(0,0,0,.2); }
  .market-purchase-panel > strong { grid-column:1; margin:2px 0; font-size:1.35rem; }
  .market-purchase-panel .market-stock { grid-column:1; margin:0; font-size:.72rem; }
  .market-quantity { grid-column:2; grid-row:1 / span 2; width:108px; height:38px; margin:0; grid-template-columns:32px 1fr 32px; }
  .market-add-button { grid-column:1 / -1; min-height:45px; margin-top:7px; }
  .market-buy-now,.market-purchase-notes { display:none; }
  .market-cart,.market-checkout,.market-confirmation { padding-top:42px; padding-bottom:92px; }
  .market-cart-grid,.market-checkout form { gap:28px; }
  .market-cart aside,.market-checkout aside { padding:20px; }
}
