/* Signal Zero — feuille de style unique. Piste G (Affiche + Catalogue). Lot 1 : base, en-tête, pied de page. */
@font-face{font-family:Anton;src:url(../fonts/anton.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:Mohave;src:url(../fonts/mohave-var.woff2) format("woff2");font-weight:400 700;font-display:swap}

:root{
  --bg:#0a0a0a;--fg:#f3f1ea;--mute:#a8a59c;--line:#3a3a3a;--y:#f7ea11;
  --disp:Anton,"Arial Narrow",Impact,sans-serif;
  --body:Mohave,"Arial Narrow",system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font:500 1.2rem/1.45 var(--body)}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3,p,ul,figure{margin:0}
ul{padding:0;list-style:none}
::selection{background:var(--y);color:#000}
:focus-visible{outline:3px solid var(--y);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0}
.skip:focus{left:1rem;top:1rem;z-index:9;background:var(--y);color:#000;padding:.5rem 1rem}
.wrap{width:min(100% - 2rem,80rem);margin-inline:auto}

/* en-tête */
.mast{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.6rem;padding-block:.8rem;border-bottom:4px solid var(--fg)}
.mast .logo{display:block;width:3.6rem}
.mast .logo img{filter:invert(1);width:100%}
.mast .tag{font:700 .95rem/1.2 var(--disp);letter-spacing:.12em;text-transform:uppercase}
.mast nav{margin-inline:auto 0}
.mast .menu{display:flex;flex-wrap:wrap;gap:.1rem 1.4rem}
.mast nav a,.mast .cart{font:400 1.15rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;display:inline-block;padding:.55rem 0;border-bottom:3px solid transparent}
.mast nav a:hover,.mast nav a[aria-current]{border-color:var(--y)}
.mast .cart{border:2px solid var(--fg);padding:.5rem .8rem}
.mast .cart:hover{background:var(--y);color:#000;border-color:var(--y)}

/* contenu de repli */
.entry{padding-block:clamp(2.4rem,5vw,3.8rem) 1rem}
.entry h1{font:400 clamp(2.6rem,9vw,6rem)/.9 var(--disp);text-transform:uppercase;margin-bottom:1.6rem}
.entry p,.entry li{max-width:46rem}
.entry p+p{margin-top:1rem}

/* pied de page jaune, commun à toutes les pages */
.sfoot{background:var(--y);color:#000;margin-top:clamp(5rem,10vw,8rem)}
.sfoot .in{padding-block:clamp(3.2rem,6vw,4.6rem) clamp(2.4rem,4vw,3rem);display:grid;gap:clamp(2.4rem,5vw,3.6rem);width:min(100% - 3rem,76rem)}
.sfoot .sig{font:400 clamp(3.2rem,12vw,9rem)/.82 var(--disp);text-transform:uppercase;letter-spacing:-.005em}
.sfoot .grid3{display:grid;gap:2.4rem 3rem}
.sfoot h2{font:700 .85rem/1.2 var(--body);letter-spacing:.16em;text-transform:uppercase;margin-bottom:1rem}
.sfoot ul{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem}
.sfoot .menu{flex-direction:column;gap:.5rem}
.sfoot nav a{font:400 1.5rem/1.1 var(--disp);letter-spacing:.03em;text-transform:uppercase;text-decoration:none;border-bottom:3px solid transparent}
.sfoot nav a:hover{border-color:#000}
.sfoot .pay ul{gap:.9rem 1.3rem;align-items:center}
.sfoot .pay img{height:1.55rem;width:auto;max-width:5.6rem}
.sfoot .soc ul{gap:.7rem}
.sfoot .soc a{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:2px solid #000;border-radius:50%}
.sfoot .soc img{width:1.05rem;height:1.05rem}
.sfoot .soc a:hover{background:#000}
.sfoot .soc a:hover img{filter:invert(1)}
.sfoot .legal{font:600 1rem/1.5 var(--body);text-transform:uppercase;letter-spacing:.06em;border-top:3px solid #000;padding-top:1.4rem}
.sfoot .legal p,.sfoot .legal nav,.sfoot .legal ul,.sfoot .legal li{display:inline}
.sfoot .legal li::before{content:" · ";white-space:pre}
.sfoot .legal a{font:inherit;letter-spacing:inherit;text-transform:inherit;text-decoration:none;border-bottom:2px solid transparent}
.sfoot .legal a:hover{border-color:#000}
.sfoot :focus-visible{outline-color:#000}
@media (min-width:56rem){.sfoot .grid3{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr)}}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ===== lot 2 : accueil ===== */
.btn{display:inline-block;background:#000;color:var(--y);font:400 1.3rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;padding:1.05rem 1.6rem;border:3px solid #000;border-radius:0;cursor:pointer}
.btn:hover{background:transparent;color:#000}

/* l'affiche : le titre remplit la largeur, la taille vient de --s (en cqw) */
.poster{container-type:inline-size;padding-block:clamp(2.4rem,5vw,3.8rem) 1rem}
.poster h1{font:400 1em/1 var(--disp);text-transform:uppercase}
.poster .l{display:block;font-size:calc(var(--s) * 1cqw);line-height:.8;letter-spacing:-.005em;white-space:nowrap}
.poster .l+.l{margin-top:.02em}
.poster .c{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.2rem 1rem;margin-top:1rem;font:400 clamp(1rem,3.2cqw,2rem)/1.1 var(--disp);letter-spacing:.06em;text-transform:uppercase}
.poster .c span:last-child{color:var(--mute)}

/* bande jaune : le seul aplat de couleur */
.band{background:var(--y);color:#000;margin-top:clamp(2rem,4vw,3.2rem)}
.band .in{display:grid;gap:clamp(2rem,4vw,3.4rem);padding-block:clamp(3.2rem,7vw,6rem);width:min(100% - 3rem,76rem)}
.band figure{max-width:20rem;width:100%;justify-self:center;background:#111;box-shadow:.9rem .9rem 0 #000}
.band figure img{width:100%}
.band .say{display:grid;gap:clamp(1.4rem,2.4vw,2rem);align-content:center}
.band .say>p{font:400 clamp(1.3rem,3vw,2rem)/1.08 var(--disp);text-transform:uppercase;letter-spacing:.02em}
.big{font:400 clamp(2.4rem,5vw,3.4rem)/1 var(--disp);letter-spacing:-.01em}
.row{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem 1.8rem;margin-top:.4rem}
.band .tag{display:inline-flex;align-items:center;font:400 1.3rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;border:3px solid #000;padding:1.05rem 1.6rem}
.band .tag.out{background:#000;color:var(--y)}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:2px solid #000;margin-top:.6rem}
.facts div{padding:.75rem 0;border-bottom:2px solid #000}
.facts dt{font:700 .8rem/1.2 var(--body);letter-spacing:.14em;text-transform:uppercase}
.facts dd{margin:0;font:700 1.25rem/1.2 var(--body)}
@media (min-width:56rem){
  .band .in{grid-template-columns:minmax(0,20rem) minmax(0,1fr);column-gap:clamp(3rem,6vw,5.5rem);align-items:center}
  .band figure{justify-self:start}
  .facts{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:1.2rem}
}

/* collections : catalogue en lignes */
.coll{padding-block:clamp(3.8rem,8vw,6.4rem) 1rem}
.coll>header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.4rem 1.5rem;border-top:4px solid var(--fg);padding-top:.7rem}
.coll h2,.coll .n{font:400 clamp(2.6rem,9vw,6rem)/.85 var(--disp);text-transform:uppercase}
.coll .n{color:transparent;-webkit-text-stroke:2px var(--mute)}
.coll .txt{max-width:none;color:var(--mute);margin-top:.8rem}
.cat{margin-top:2rem}
.cat li{border-bottom:1px solid var(--line)}
.cat a{display:grid;grid-template-columns:3.4rem minmax(0,1fr) auto;grid-template-areas:"t i p" "t a s";gap:.15rem 1rem;align-items:center;text-decoration:none;padding:.8rem .5rem;margin-inline:-.5rem}
.cat img{grid-area:t;width:3.4rem;height:3.4rem;object-fit:cover;background:#111}
.cat .ref{display:none;grid-area:r;font:400 1.3rem/1 var(--disp);letter-spacing:.06em;color:var(--mute)}
.cat .ti{grid-area:i;font:400 1.55rem/1.05 var(--disp);text-transform:uppercase;letter-spacing:.02em}
.cat .au{grid-area:a;color:var(--mute);font-size:1.05rem;line-height:1.2}
.cat .pr{grid-area:p;font:400 1.55rem/1 var(--disp);text-align:right}
.cat .st{grid-area:s;justify-self:end}
.st{display:inline-flex;align-items:center;gap:.5rem;font:700 .85rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--y)}
.st::before{content:"";width:.7rem;height:.7rem;border-radius:50%;background:var(--y)}
.st.out{color:var(--mute)}
.st.out::before{background:none;border:2px solid var(--mute)}
.cat a:hover,.cat a:focus-visible{background:var(--y);color:#000}
.cat a:hover .au,.cat a:hover .ref{color:#222}
.cat a:hover .st{color:#000}
.cat a:hover .st::before{background:#000;border-color:#000}
@media (min-width:48rem){
  .cat a{grid-template-columns:4.6rem 6.5rem minmax(0,1.4fr) minmax(0,1fr) 5rem 8rem;grid-template-areas:"t r i a p s";gap:1.4rem;padding-block:.65rem}
  .cat img{width:4.6rem;height:4.6rem}
  .cat .ref{display:block}
}
.more{display:inline-block;margin-top:1.8rem;font:400 1.2rem/1 var(--disp);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-bottom:3px solid var(--y);padding-bottom:.2rem}
.more:hover{background:var(--y);color:#000}

/* L'éditeur : texte à gauche, lettre d'information à droite */
.edit{padding-block:clamp(3.8rem,8vw,6.4rem) 0}
h2.r{font:400 clamp(2.6rem,9vw,6rem)/.85 var(--disp);text-transform:uppercase;border-top:4px solid var(--fg);padding-top:.7rem}
.edit-grid{display:grid;gap:clamp(2.4rem,5vw,4rem);margin-top:2rem}
.edit-grid .txt p{font:500 1.3rem/1.55 var(--body);max-width:40rem}
.edit-grid .txt p+p{margin-top:1.2rem}
.edit-grid mark{background:var(--y);color:#000;padding:0 .2em}
.news{display:grid;gap:1.1rem;align-content:start;border:4px solid var(--fg);padding:clamp(1.4rem,3vw,2.2rem)}
.news h3{font:400 2.2rem/1 var(--disp);text-transform:uppercase}
.news p{color:var(--mute);font-size:1.05rem}
.news div{display:flex;gap:.6rem;flex-wrap:wrap}
.news input[type=email]{flex:1 1 12rem;font:inherit;background:transparent;color:var(--fg);border:3px solid var(--fg);padding:.85rem 1rem;border-radius:0}
.news input::placeholder{color:var(--mute)}
.news .btn{background:var(--y);color:#000;border-color:var(--y)}
.news .btn:hover{background:transparent;color:var(--y)}
.news .nl-msg{color:var(--fg);border-left:4px solid var(--y);padding-left:.8rem}
.news .nl-msg.err{border-color:#ff7a6b}
.news .hp{position:absolute;left:-999px;height:0;overflow:hidden}
@media (min-width:62rem){.edit-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* ===== lot 3 : pages de collection ===== */
.coll-intro{max-width:none;margin-top:clamp(1.6rem,3vw,2.4rem);display:grid;gap:1.2rem}
.coll-intro p{font:500 1.3rem/1.55 var(--body)}
.coll-intro+.coll,.poster+.wrap>.coll:first-child{padding-top:clamp(2.4rem,5vw,3.6rem)}
.coll>.cat:first-child{margin-top:0;border-top:4px solid var(--fg)}
.coll-nav{margin-top:clamp(3.8rem,8vw,6rem);border-top:4px solid var(--fg);padding-top:1rem}
.coll-nav h2{font:700 .85rem/1.2 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin-bottom:1rem}
.coll-nav ul{display:flex;flex-wrap:wrap;gap:.6rem 1.8rem}
.coll-nav a{font:400 1.8rem/1 var(--disp);text-transform:uppercase;letter-spacing:.03em;text-decoration:none;border-bottom:3px solid var(--y)}
.coll-nav a:hover{background:var(--y);color:#000}
.coll h2 a{text-decoration:none}
.coll h2 a:hover{background:var(--y);color:#000}

/* ===== lot 4 : fiche produit ===== */
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.crumbs{font:600 .95rem/1.3 var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);padding-top:1rem}
.crumbs a{color:var(--mute)}
.pdp-meta{display:grid;gap:clamp(1.4rem,2.4vw,2rem)}
.buy form.cart{display:flex;gap:.6rem;flex-wrap:wrap;align-items:stretch}
.buy .quantity{display:flex}
.buy input.qty{width:4.5rem;font:400 1.3rem/1 var(--disp);text-align:center;background:transparent;color:#000;border:3px solid #000;border-radius:0}
.buy .single_add_to_cart_button{display:inline-block;background:#000;color:var(--y);font:400 1.3rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;padding:1.05rem 1.6rem;border:3px solid #000;border-radius:0;cursor:pointer}
.buy .single_add_to_cart_button:hover{background:transparent;color:#000}
.btn[disabled]{background:transparent;color:#000;border-color:#000;cursor:not-allowed;text-decoration:line-through;text-decoration-thickness:2px}
.note{font:600 1rem/1.4 var(--body)}
.spec2{border-top:2px solid #000}
.spec2 div{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:1rem;padding:.7rem 0;border-bottom:1px solid #000}
.spec2 dt{font:700 .85rem/1.5 var(--body);letter-spacing:.14em;text-transform:uppercase}
.spec2 dd{margin:0;font-weight:700;overflow-wrap:anywhere}
.sheet{padding-block:clamp(3rem,6vw,4.8rem) 1rem}
.book2{display:grid;gap:clamp(2.6rem,5vw,4.2rem)}
@media (min-width:62rem){.book2{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:3rem}}
.sheet h2.r{margin-bottom:1.4rem}
.cols{columns:1;column-gap:2.6rem;column-rule:3px solid var(--fg);text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.cols p{margin-bottom:1rem}
.cols>p:first-child::first-letter{font:400 4.6em/.78 var(--disp);float:left;padding:.04em .1em 0 0;color:var(--y)}
.cols strong{font:400 1.3em/1 var(--disp);text-transform:uppercase;letter-spacing:.03em}
@media (min-width:46rem){.sheet:not(.book2) .cols{columns:2}}
.cred2 div{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}
.cred2 dt{color:var(--mute);font:700 .85rem/1.5 var(--body);letter-spacing:.14em;text-transform:uppercase;padding-top:.2rem}
.cred2 dd{margin:0}
.aut{display:grid;gap:1.4rem;align-items:start}
.aut img{background:#111;filter:grayscale(1) contrast(1.15);max-width:16rem;border:3px solid var(--fg)}
@media (min-width:56rem){.aut:has(img){grid-template-columns:16rem 1fr;gap:2.6rem}}
.pics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.pics li{border:3px solid var(--fg);padding:.4rem;background:#000}
.pics img{width:100%;aspect-ratio:3/2;object-fit:cover;filter:grayscale(1)}
@media (min-width:56rem){.pics{grid-template-columns:repeat(4,minmax(0,1fr))}}
.woocommerce-message,.woocommerce-error,.woocommerce-info{list-style:none;margin:1rem 0 0;padding:.8rem 1rem;border:3px solid var(--y);font:600 1.1rem/1.4 var(--body)}
.woocommerce-message a.button{float:right;margin-left:1rem;background:var(--y);color:#000;padding:.4rem .8rem;text-decoration:none;font:400 1rem/1 var(--disp);text-transform:uppercase}

/* ===== lot 5 : pages éditoriales, articles, formulaires ===== */
.poster .c a{text-decoration:none;border-bottom:3px solid var(--y)}
.poster .c a:hover{background:var(--y);color:#000}
.prose{max-width:50rem;margin-inline:auto;padding-block:clamp(2rem,4vw,3rem) 1rem;font:500 1.3rem/1.6 var(--body)}
.prose>*+*{margin-top:1.3rem}
.prose h2{font:400 clamp(2rem,6vw,3.2rem)/.95 var(--disp);text-transform:uppercase;border-top:4px solid var(--fg);padding-top:.7rem;margin-top:clamp(2.6rem,6vw,4rem)}
.prose h3{font:400 1.8rem/1 var(--disp);text-transform:uppercase;letter-spacing:.02em;margin-top:2rem}
.prose a{text-decoration-color:var(--y);text-underline-offset:.2em;text-decoration-thickness:2px}
.prose a:hover{background:var(--y);color:#000}
.prose strong{font-weight:700}
.prose figure img,.prose>img{width:100%;height:auto;background:#111}
.prose .kicker{font:400 1.1rem/1.3 var(--disp);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.prose .actions{margin-top:1.6rem}
.prose .btn{background:var(--y);color:#000;border-color:var(--y)}
.prose .btn:hover{background:transparent;color:var(--y)}
.prose audio{width:100%}
.prose .pics{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
@media (min-width:56rem){.prose .pics{grid-template-columns:repeat(4,minmax(0,1fr))}}
.prose .pics li{padding:.3rem}
.yt a{display:block;padding:1.6rem;border:3px solid var(--fg);text-align:center;font:400 1.3rem/1 var(--disp);text-transform:uppercase;letter-spacing:.06em;text-decoration:none}
.yt a:hover{background:var(--y);color:#000}
.playlist ol{list-style:none;counter-reset:t;border-top:2px solid var(--line)}
.playlist li{counter-increment:t;display:grid;grid-template-columns:2.4rem minmax(0,1fr) auto;gap:.6rem;padding:.6rem 0;border-bottom:1px solid var(--line);font-size:1.1rem}
.playlist li::before{content:counter(t);color:var(--mute);font-family:var(--disp)}
.playlist .dur{color:var(--mute)}
.glossary div{padding:1rem 0;border-bottom:1px solid var(--line)}
.glossary dt{font:400 1.6rem/1.1 var(--disp);text-transform:uppercase;color:var(--y);margin-bottom:.3rem}
.glossary dd{margin:0}
.sz-form{display:grid;gap:1.1rem}
.sz-form p{margin:0;display:grid;gap:.4rem}
.sz-form label{font:700 .95rem/1.3 var(--body);letter-spacing:.08em;text-transform:uppercase}
.sz-form input,.sz-form textarea{font:inherit;background:transparent;color:var(--fg);border:3px solid var(--fg);border-radius:0;padding:.8rem 1rem;width:100%}
.sz-form .btn{justify-self:start}
.form-msg{border-left:4px solid var(--y);padding-left:.8rem}
.form-msg.err{border-color:#ff7a6b}
.sz-form .hp{position:absolute;left:-999px;height:0;overflow:hidden}

/* ===== lot 6 : panier, commande, Mon compte (WooCommerce natif, classique) ===== */
.prose.wc{max-width:76rem;font-size:1.15rem}
.prose.wc h2{font:400 clamp(1.8rem,4vw,2.4rem)/1 var(--disp);border-top:0;padding-top:0;margin-top:0}
.prose.wc h3{font:400 1.7rem/1 var(--disp);margin-top:0}
.prose.wc a{text-decoration-thickness:2px}
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-error{background:#2a1512}
.woocommerce-error li+li{margin-top:.4rem}

/* boutons */
.wc .button,.wc button.button,.wc input.button,.wc .woocommerce-button,.wc .checkout-button,.wc #place_order{display:inline-block;background:var(--y);color:#000;font:400 1.2rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;padding:1rem 1.5rem;border:3px solid var(--y);border-radius:0;cursor:pointer}
.wc .button:hover,.wc button.button:hover,.wc input.button:hover,.wc .woocommerce-button:hover,.wc #place_order:hover{background:transparent;color:var(--y)}
.wc .button[disabled],.wc button[disabled]{opacity:.45;cursor:not-allowed}
.wc .button.alt,.wc #place_order,.wc .checkout-button{width:100%;text-align:center;font-size:1.5rem;padding:1.2rem}
.wc a.remove{display:grid;place-items:center;width:2rem;height:2rem;border:2px solid var(--mute);color:var(--fg);text-decoration:none;font:400 1.3rem/1 var(--disp);border-radius:0}
.wc a.remove:hover{background:var(--y);color:#000;border-color:var(--y)}

/* champs */
.wc label{display:block;font:700 .9rem/1.3 var(--body);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.35rem}
.wc label.checkbox,.wc .woocommerce-form__label-for-checkbox,.wc .woocommerce-form__label-for-checkbox span{display:flex;align-items:flex-start;gap:.6rem;font:500 1.05rem/1.4 var(--body);letter-spacing:0;text-transform:none}
.wc input[type=text],.wc input[type=email],.wc input[type=tel],.wc input[type=password],.wc input[type=number],.wc input[type=search],.wc textarea,.wc select,.wc .select2-selection{width:100%;font:500 1.15rem/1.3 var(--body);background:transparent;color:var(--fg);border:3px solid var(--fg);border-radius:0;padding:.75rem .9rem;min-height:3.2rem}
.wc select option{background:#111;color:var(--fg)}
.wc input:focus,.wc textarea:focus,.wc select:focus{outline:3px solid var(--y);outline-offset:2px}
.wc input[type=checkbox],.wc input[type=radio]{width:1.2rem;height:1.2rem;min-height:0;accent-color:var(--y);margin-top:.2rem;padding:0}
.wc .form-row{margin:0 0 1.1rem}
.wc .form-row .required{color:var(--y);text-decoration:none}
.wc .select2-container{width:100%!important}
.wc .select2-container--default .select2-selection--single{display:flex;align-items:center;background:transparent;border:3px solid var(--fg);border-radius:0;height:auto}
.wc .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--fg);padding:0;line-height:1.3}
.wc .select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;transform:translateY(-50%)}
.select2-dropdown{background:#111!important;color:var(--fg);border:3px solid var(--fg)!important;border-radius:0!important}
.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted[data-selected]{background:var(--y)!important;color:#000!important}
.select2-search--dropdown .select2-search__field{background:transparent;color:var(--fg);border:2px solid var(--fg)}
.wc .woocommerce-input-wrapper{display:block}
@media (min-width:40rem){.wc .form-row-first,.wc .form-row-last{width:calc(50% - .6rem);float:left}.wc .form-row-first{margin-right:1.2rem}.wc .form-row-last{margin-right:0}.wc .form-row-wide,.wc .form-row-first+.form-row-wide{clear:both}.wc .woocommerce-billing-fields__field-wrapper::after,.wc .woocommerce-shipping-fields__field-wrapper::after{content:"";display:block;clear:both}}

/* tableaux */
.wc table.shop_table{width:100%;border-collapse:collapse;border-top:4px solid var(--fg)}
.wc .shop_table th,.wc .shop_table td{text-align:left;padding:.9rem .6rem;border-bottom:1px solid var(--line);vertical-align:middle}
.wc .shop_table th{font:700 .85rem/1.2 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.wc .shop_table .product-thumbnail img{width:4.6rem;height:4.6rem;object-fit:cover;background:#111}
.wc .shop_table .product-name a{font:400 1.4rem/1.1 var(--disp);text-transform:uppercase;text-decoration:none}
.wc .shop_table .product-name a:hover{background:var(--y);color:#000}
.wc .shop_table .product-price,.wc .shop_table .product-subtotal,.wc .shop_table .product-total,.wc .shop_table .amount{font-family:var(--disp);font-size:1.3rem;font-weight:400}
.wc .shop_table .quantity input.qty{width:5rem;text-align:center;min-height:0;padding:.5rem}
.wc .order-total th,.wc .order-total td{font-size:1.4rem;border-bottom:0}
.wc .order-total .amount{font-size:1.8rem;color:var(--y)}
.wc td.actions{padding-top:1.2rem}
.wc .coupon{display:flex;gap:.6rem;flex-wrap:wrap;align-items:stretch}
.wc .coupon input{flex:1 1 11rem;width:auto}
.wc .coupon label{display:none}
.wc td.actions::after{content:"";display:block;clear:both}
.wc td.actions .coupon{width:100%;flex-wrap:nowrap}
.wc td.actions>button{float:none;display:block;width:100%;margin-top:.8rem}
@media (max-width:47.99rem){
  .wc table.shop_table_responsive thead{display:none}
  .wc table.shop_table_responsive tr{display:block;border-bottom:1px solid var(--line);padding:.8rem 0}
  .wc table.shop_table_responsive td{display:flex;justify-content:space-between;gap:1rem;border:0;padding:.35rem .2rem;text-align:right}
  .wc table.shop_table_responsive td::before{content:attr(data-title);font:700 .8rem/1.4 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);text-align:left}
  .wc table.shop_table_responsive td.product-remove::before,.wc table.shop_table_responsive td.product-thumbnail::before,.wc table.shop_table_responsive td.actions::before{content:none}
  .wc table.shop_table_responsive td.actions{display:block}
  .wc td.actions>button{float:none;width:100%;margin-top:.8rem}
  .wc table.shop_table_responsive tbody th{display:none}
  .wc td.actions .coupon{float:none;width:100%}
}

/* panier : articles puis totaux */
.wc .cart-collaterals{margin-top:2.4rem}
.wc .cart_totals h2{margin-bottom:1rem}
.wc .wc-proceed-to-checkout{margin-top:1.2rem}
.wc .shipping-calculator-form{margin-top:.8rem}
@media (min-width:62rem){
  .woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,24rem);column-gap:3rem;align-items:start}
  .woocommerce-cart .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
  .woocommerce-cart .woocommerce .cart-collaterals{margin-top:0}
  /* les deux colonnes démarrent sur la même barre : le tableau descend de la hauteur du titre « Total panier » (2,4 rem + 1 rem) */
  .woocommerce-cart .woocommerce>.woocommerce-cart-form{margin-top:3.4rem}
}

/* commande : coordonnées à gauche, récapitulatif à droite */
.wc form.checkout{display:grid;gap:2rem}
.wc .col2-set{display:grid;gap:2rem}
.wc .woocommerce-billing-fields h3,.wc .woocommerce-shipping-fields h3,.wc .woocommerce-additional-fields h3,.wc #order_review_heading{margin-bottom:1.2rem}
.wc #order_review{border:4px solid var(--fg);padding:clamp(1.2rem,3vw,2rem)}
.wc #order_review_heading{margin-top:0}
.wc .woocommerce-checkout-payment{margin-top:1.6rem}
.wc ul.payment_methods{border-top:2px solid var(--fg)}
.wc .payment_methods>li{padding:.9rem 0;border-bottom:1px solid var(--line)}
.wc .payment_methods>li>label{display:inline-flex;align-items:center;gap:.6rem;font:400 1.2rem/1.2 var(--disp);letter-spacing:.04em}
.wc .payment_methods img{display:inline-block;max-height:1.6rem;width:auto;margin-left:.4rem}
.wc .payment_box{margin-top:.8rem;padding:1rem;border:2px dashed var(--mute);font-size:1.05rem}
.wc .payment_box p{margin:0 0 .6rem}
.wc .woocommerce-terms-and-conditions-wrapper,.wc .woocommerce-privacy-policy-text{font-size:1rem;color:var(--mute);margin:1rem 0}
.wc .woocommerce-form-coupon-toggle .woocommerce-info,.wc .woocommerce-form-login-toggle .woocommerce-info{margin:0 0 1rem}
.wc .woocommerce-info{border-color:var(--mute)}
.wc form.checkout_coupon,.wc form.woocommerce-form-login{border:3px solid var(--fg);padding:1.2rem;margin-bottom:1.6rem}
.wc .mrwpbutton,.wc .modaal_link{display:inline-block;margin:.6rem 0;background:transparent;color:var(--y);border:3px solid var(--y);font:400 1.1rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;padding:.8rem 1.1rem;text-decoration:none;cursor:pointer}
.wc .mrwpbutton:hover{background:var(--y);color:#000}
@media (min-width:62rem){
  .wc form.checkout{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;column-gap:3rem}
  .wc form.checkout #customer_details{grid-column:1;grid-row:1 / span 3}
  .wc form.checkout #order_review_heading{grid-column:2;grid-row:1;margin-bottom:0}
  .wc form.checkout #order_review{grid-column:2;grid-row:2}
}

/* Mon compte */
.wc .u-columns{display:grid;gap:2.4rem}
@media (min-width:48rem){.wc .u-columns{grid-template-columns:1fr 1fr}}
.wc .u-column1,.wc .u-column2{border:3px solid var(--fg);padding:clamp(1.2rem,3vw,2rem)}
.woocommerce-account .woocommerce{display:grid;gap:2rem;align-items:start}
.woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;border-bottom:4px solid var(--fg);padding-bottom:.8rem}
.woocommerce-MyAccount-navigation a{font:400 1.2rem/1 var(--disp);text-transform:uppercase;letter-spacing:.05em;text-decoration:none;border-bottom:3px solid transparent;padding:.4rem 0}
.woocommerce-MyAccount-navigation .is-active a,.woocommerce-MyAccount-navigation a:hover{border-color:var(--y)}
@media (min-width:62rem){
  .woocommerce-account.logged-in .woocommerce{grid-template-columns:14rem minmax(0,1fr);column-gap:3rem}
  .woocommerce-MyAccount-navigation ul{flex-direction:column;border-bottom:0;border-right:4px solid var(--fg);padding:0 1rem 0 0}
}
.woocommerce-MyAccount-content>p:first-child{font-size:1.3rem}
.woocommerce-MyAccount-content .woocommerce-Addresses{display:grid;gap:1.6rem}
@media (min-width:48rem){.woocommerce-MyAccount-content .woocommerce-Addresses{grid-template-columns:1fr 1fr}}
.woocommerce-MyAccount-content address{font-style:normal;line-height:1.5}
.woocommerce-MyAccount-content .woocommerce-Address-title{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.8rem}
.wc .woocommerce-orders-table .button,.wc .woocommerce-table .button{padding:.6rem .9rem;font-size:1rem;width:auto}
.wc mark{background:var(--y);color:#000;padding:0 .3em}
.wc .woocommerce-order-details,.wc .woocommerce-customer-details{margin-top:2rem}
.wc ul.woocommerce-order-overview{display:grid;gap:.8rem;border:3px solid var(--fg);padding:1.2rem;margin:1.4rem 0}
.wc .woocommerce-thankyou-order-received{font:400 1.8rem/1.2 var(--disp);text-transform:uppercase}

/* ===== lot 7 : popup promo, façade YouTube ===== */
.promo{border:4px solid var(--y);background:var(--bg);color:var(--fg);padding:clamp(1.2rem,3vw,1.8rem);width:min(100% - 2rem,30rem);max-height:calc(100dvh - 2rem);overflow:auto;margin:auto;text-align:center}
.promo::backdrop{background:rgba(0,0,0,.78)}
.promo[open]{display:grid;gap:1.1rem;justify-items:center}
.promo-img{display:block;width:100%}
.promo-img img{width:100%;height:auto;background:#111}
.promo-t{font:400 1.5rem/1.1 var(--disp);text-transform:uppercase;letter-spacing:.03em}
.promo .btn{background:var(--y);color:#000;border-color:var(--y);width:100%;text-align:center}
.promo .btn:hover{background:transparent;color:var(--y)}
.promo-x{position:absolute;top:.4rem;right:.4rem;width:2.6rem;height:2.6rem;display:grid;place-items:center;background:#000;color:var(--fg);border:2px solid var(--fg);font:400 1.8rem/1 var(--disp);cursor:pointer;border-radius:0}
.promo-x:hover{background:var(--y);color:#000;border-color:var(--y)}
@media (prefers-reduced-motion:no-preference){.promo[open]{animation:promo-in .25s ease-out}@keyframes promo-in{from{opacity:0;transform:translateY(.6rem)}}}

.yt.ready{aspect-ratio:16/9;background:#111;border:3px solid var(--fg);position:relative}
.yt.ready iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-play{position:absolute;inset:0;width:100%;display:grid;place-content:center;justify-items:center;gap:.8rem;background:#111 center/cover no-repeat;color:var(--fg);border:0;cursor:pointer;font:400 1.4rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase}
.yt-play:hover{color:var(--y)}
.yt-icon{width:4.4rem;height:4.4rem;border:3px solid currentColor;border-radius:50%;position:relative}
.yt-icon::after{content:"";position:absolute;left:55%;top:50%;transform:translate(-50%,-50%);border:.8rem solid transparent;border-left:1.3rem solid currentColor;border-right:0}
.yt-inline{grid-column:1/-1;aspect-ratio:16/9;margin-top:.6rem;border:3px solid var(--fg);background:#111}
.yt-inline iframe{width:100%;height:100%;border:0}

/* mentions à compléter dans les textes juridiques */
.prose mark{background:var(--y);color:#000;padding:0 .25em}
.prose small{color:var(--mute);font-size:1rem}

/* fiche : le nom de l'auteur, juste sous le titre */
.poster .by{margin-top:clamp(1rem,2.4cqw,1.6rem);font:400 clamp(1.7rem,5.6cqw,3.4rem)/1.05 var(--disp);text-transform:uppercase;letter-spacing:.03em}
.poster .by span{color:var(--mute)}
.poster .by strong{font-weight:400;color:var(--y)}
.poster .by+.c{margin-top:.8rem}

/* Google Pay (bouton injecté par le plugin PayPal) : masqué en plus du filtre du mu-plugin */
#ppc-button-ppcp-googlepay{display:none!important}

/* accueil : l'affiche et la couverture mènent au livre */
.poster h1 a{display:block;color:inherit;text-decoration:none}
.poster h1 a:hover,.poster h1 a:focus-visible{color:var(--y)}
.band figure a{display:block}

/* accents des capitales (Ü, É) : la ligne de l'affiche est serrée, on réserve la place au-dessus et on garde le menu au premier plan */
.poster .l:first-child{padding-top:.16em}
.mast{position:relative;z-index:5;background:var(--bg)}

/* accueil : titre du livre en vedette dans la bande */
.band .bk{font:400 1rem/1 var(--disp);letter-spacing:.12em;text-transform:uppercase}
.band .bt{font:400 clamp(2.2rem,5.4vw,4rem)/.95 var(--disp);text-transform:uppercase}
.band .bt a{color:inherit;text-decoration:none;border-bottom:4px solid transparent}
.band .bt a:hover,.band .bt a:focus-visible{border-color:#000}
.band .pitch{font:400 clamp(1.1rem,2.2vw,1.5rem)/1.2 var(--disp);text-transform:uppercase;letter-spacing:.02em}
.big small{display:block;font:700 .95rem/1.2 var(--body);letter-spacing:.14em;text-transform:uppercase;margin-top:.25rem}
.band .note{font:600 1rem/1.4 var(--body)}
/* miniatures de liste : toujours un carré, mockup centré */
.cat img{aspect-ratio:1;object-fit:cover;object-position:center}

/* accueil : mockup en paysage, plus grand */
.band figure.wide{max-width:min(100%,38rem)}
@media (min-width:56rem){.band .in:has(figure.wide){grid-template-columns:minmax(0,38rem) minmax(0,1fr)}}

/* ===== commande : mise en page renforcée (étapes, adresses sur 2 colonnes, couleurs) ===== */
.woocommerce-checkout form.checkout{counter-reset:step}
@media (min-width:62rem){.woocommerce-checkout form.checkout{grid-template-rows:auto 1fr;align-content:start}}

/* titres de section : pastille jaune numérotée */
.woocommerce-checkout .woocommerce-billing-fields>h3,
.woocommerce-checkout .woocommerce-additional-fields>h3,
.woocommerce-checkout #order_review_heading{display:flex;align-items:center;gap:.8rem}
.woocommerce-checkout .woocommerce-billing-fields>h3::before,
.woocommerce-checkout .woocommerce-additional-fields>h3::before,
.woocommerce-checkout #order_review_heading::before{counter-increment:step;content:counter(step);flex:none;display:grid;place-items:center;width:2.4rem;height:2.4rem;background:var(--y);color:#000;font:400 1.4rem/1 var(--disp)}
.woocommerce-checkout .woocommerce-shipping-fields>h3{padding:.9rem 1rem;border:3px dashed var(--mute)}
.woocommerce-checkout .woocommerce-shipping-fields>h3:has(input:checked){border-style:solid;border-color:var(--y)}

/* champs : grille à 2 colonnes (nom/prénom, adresse/complément, code postal/ville) */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:minmax(0,1fr);gap:0 1.2rem}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row{width:auto;float:none;margin-right:0;clear:none}
@media (min-width:40rem){
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{grid-template-columns:repeat(2,minmax(0,1fr))}
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row{grid-column:1/-1}
  .woocommerce-checkout [id$="_first_name_field"],.woocommerce-checkout [id$="_last_name_field"],
  .woocommerce-checkout [id$="_address_1_field"],.woocommerce-checkout [id$="_address_2_field"],
  .woocommerce-checkout [id$="_postcode_field"],.woocommerce-checkout [id$="_city_field"]{grid-column:auto!important}
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper::after,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::after{display:none}

/* retour visuel : champ valide en jaune, erreur en rouge doux */
.woocommerce-checkout .woocommerce-validated input.input-text,.woocommerce-checkout .woocommerce-validated select{border-color:var(--y)}
.woocommerce-checkout .woocommerce-invalid input.input-text,.woocommerce-checkout .woocommerce-invalid select{border-color:#ff7a6b}

/* messages d'information : liseré jaune */
.woocommerce-checkout .woocommerce-info,.woocommerce-checkout .woocommerce-message{border:0;border-left:.5rem solid var(--y);background:#15150a;padding:1rem 1.2rem}
.woocommerce-checkout .woocommerce-error{border:0;border-left:.5rem solid #ff7a6b;background:#2a1512}
.woocommerce-checkout .woocommerce-info a{color:var(--y)}

/* récapitulatif : bandeau jaune, total en évidence */
.woocommerce-checkout #order_review{border:4px solid var(--fg);border-top:1rem solid var(--y);padding:clamp(1.2rem,3vw,2rem)}
.woocommerce-checkout .wc table.shop_table{border-top:0}
.woocommerce-checkout .shop_table .cart_item .product-name{font-weight:600}
.woocommerce-checkout .shop_table tr.order-total{background:#15150a}
.woocommerce-checkout .shop_table tr.order-total th,.woocommerce-checkout .shop_table tr.order-total td{padding-block:1.1rem}

/* modes de livraison et de paiement : choix sélectionné en jaune */
.woocommerce-checkout ul#shipping_method{display:grid;gap:.5rem}
.woocommerce-checkout ul#shipping_method li,.woocommerce-checkout .wc_payment_method{border:2px solid var(--line);padding:.7rem .9rem}
.woocommerce-checkout ul#shipping_method li:has(input:checked),.woocommerce-checkout .wc_payment_method:has(input[type=radio]:checked){border-color:var(--y);background:#15150a}
.woocommerce-checkout .payment_methods>li{border-bottom:2px solid var(--line)}
.woocommerce-checkout ul.payment_methods{border-top:0;display:grid;gap:.6rem}
.woocommerce-checkout .wc_payment_method>label{color:var(--fg)}
.woocommerce-checkout .wc_payment_method:has(input[type=radio]:checked)>label{color:var(--y)}
.woocommerce-checkout #place_order{margin-top:1rem}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{border-left:.5rem solid var(--y);padding-left:1rem;color:var(--fg)}
.woocommerce-checkout .woocommerce-form__label-for-checkbox span{display:inline}

/* ===== panier flottant : bouton fixe et tiroir latéral ===== */
.sz-float{position:fixed;right:1rem;bottom:1rem;z-index:30;display:flex;align-items:center;gap:.7rem;background:var(--y);color:#000;border:3px solid var(--bg);padding:.7rem 1rem;font:400 1.15rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;box-shadow:0 0 0 3px var(--y)}
.sz-float[hidden]{display:none}
.sz-float .n{display:grid;place-items:center;min-width:1.9rem;height:1.9rem;background:#000;color:var(--y);font-size:1.1rem}
.sz-float:hover,.sz-float:focus-visible{background:#fff;box-shadow:0 0 0 3px #fff}
body:has(.sz-float:not([hidden])) .sfoot .legal{padding-bottom:3.6rem}

.drawer{margin:0 0 0 auto;padding:0;border:0;border-left:4px solid var(--y);background:var(--bg);color:var(--fg);width:min(100%,27rem);height:100dvh;max-height:none;max-width:100%;display:none;flex-direction:column}
.drawer[open]{display:flex}
.drawer::backdrop{background:rgba(0,0,0,.72)}
.drawer>header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;border-bottom:4px solid var(--fg)}
.drawer h2{font:400 1.9rem/1 var(--disp);text-transform:uppercase}
.drawer-x{width:2.6rem;height:2.6rem;display:grid;place-items:center;background:transparent;color:var(--fg);border:2px solid var(--fg);font:400 1.8rem/1 var(--disp);border-radius:0;cursor:pointer}
.drawer-x:hover{background:var(--y);color:#000;border-color:var(--y)}
.sz-drawer-body{flex:1;overflow:auto;padding:0 1.2rem 1.4rem;display:flex;flex-direction:column}
.sz-drawer-body .empty{padding:2rem 0 1rem;color:var(--mute)}
.sz-drawer-body .items{flex:1}
.sz-drawer-body .items li{display:grid;grid-template-columns:4.2rem minmax(0,1fr) auto;gap:.9rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.sz-drawer-body .thumb img{width:4.2rem;height:4.2rem;aspect-ratio:1;object-fit:cover;background:#111}
.sz-drawer-body .name{display:block;font:400 1.2rem/1.1 var(--disp);text-transform:uppercase;letter-spacing:.02em;text-decoration:none}
.sz-drawer-body .name:hover{background:var(--y);color:#000}
.sz-drawer-body .unit{display:block;color:var(--mute);font-size:1rem;margin-top:.15rem}
.sz-drawer-body .qty{display:inline-flex;align-items:stretch;border:2px solid var(--fg);margin-top:.5rem}
.sz-drawer-body .qty button{width:2.2rem;background:transparent;color:var(--fg);border:0;font:400 1.3rem/1 var(--disp);cursor:pointer;border-radius:0}
.sz-drawer-body .qty button:hover:not(:disabled){background:var(--y);color:#000}
.sz-drawer-body .qty button:disabled{opacity:.35;cursor:not-allowed}
.sz-drawer-body .qty span{min-width:2.2rem;display:grid;place-items:center;border-inline:2px solid var(--fg);font:400 1.1rem/1 var(--disp)}
.sz-drawer-body .side{display:grid;align-content:space-between;justify-items:end}
.sz-drawer-body .line{font:400 1.4rem/1 var(--disp);color:var(--y)}
.sz-drawer-body .rm{background:none;border:0;padding:0;color:var(--mute);font:600 .9rem/1 var(--body);letter-spacing:.06em;text-transform:uppercase;text-decoration:underline;cursor:pointer}
.sz-drawer-body .rm:hover{color:var(--y)}
.sz-drawer-body .sum{display:flex;justify-content:space-between;align-items:baseline;border-top:4px solid var(--fg);padding-top:1rem;margin-top:1rem;font:700 .9rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase}
.sz-drawer-body .sum strong{font:400 2rem/1 var(--disp);letter-spacing:0;color:var(--y)}
.sz-drawer-body .hint{color:var(--mute);font-size:1rem;margin:.5rem 0 1rem}
.sz-drawer-body .go{display:grid;gap:.6rem}
.drawer .btn{background:var(--y);color:#000;border-color:var(--y);text-align:center;width:100%}
.drawer .btn:hover{background:transparent;color:var(--y)}
.drawer .btn.ghost{background:transparent;color:var(--fg);border-color:var(--fg)}
.drawer .btn.ghost:hover{background:var(--fg);color:#000}
@media (prefers-reduced-motion:no-preference){
  .drawer[open]{animation:drawer-in .22s ease-out}
  @keyframes drawer-in{from{transform:translateX(100%)}}
}

/* ===== modes d'expédition : cartes à choisir (panier et commande) ===== */
.wc tr.woocommerce-shipping-totals{display:block}
.wc tr.woocommerce-shipping-totals th,.wc tr.woocommerce-shipping-totals td{display:block;width:100%;border-bottom:0}
.wc tr.woocommerce-shipping-totals th{padding-bottom:.4rem}
.wc tr.woocommerce-shipping-totals td{padding-top:0}
.wc ul#shipping_method{display:grid;gap:.6rem;margin:.4rem 0 .8rem;padding:0;list-style:none}
.wc ul#shipping_method li{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:0 .9rem;margin:0;padding:.9rem 1rem;border:2px solid var(--line);background:transparent;cursor:pointer;transition:border-color .12s,background .12s}
.wc ul#shipping_method li:hover{border-color:var(--mute)}
.wc ul#shipping_method li:has(input:checked){border-color:var(--y);background:#15150a}
.wc ul#shipping_method input.shipping_method{appearance:none;-webkit-appearance:none;margin:0;width:1.5rem;height:1.5rem;border:3px solid var(--fg);border-radius:50%;background:transparent;cursor:pointer}
.wc ul#shipping_method input.shipping_method:checked{border-color:var(--y);background:radial-gradient(circle,var(--y) 0 45%,transparent 50%)}
.wc ul#shipping_method input.shipping_method:focus-visible{outline:3px solid var(--y);outline-offset:3px}
.wc ul#shipping_method li>label{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.35rem .8rem;margin:0;font:400 1.15rem/1.15 var(--disp);letter-spacing:.03em;text-transform:uppercase;cursor:pointer}
.wc ul#shipping_method li>label br{display:none}
.wc ul#shipping_method li>label img{grid-column:1/-1;display:block!important;max-width:none!important;width:auto!important;height:2.1rem!important;margin:0 0 .3rem!important;vertical-align:baseline!important;object-fit:contain;object-position:left center}
.wc ul#shipping_method li>label .amount{font:400 1.5rem/1 var(--disp);letter-spacing:0;color:var(--fg);white-space:nowrap}
.wc ul#shipping_method li:has(input:checked)>label .amount{color:var(--y)}
.wc .woocommerce-shipping-destination{margin:0;color:var(--mute);font-size:1rem;line-height:1.4}
.wc .woocommerce-shipping-destination strong{color:var(--fg);font-weight:600}
.wc a.shipping-calculator-button{color:var(--y)}
.wc tr.woocommerce-shipping-totals th,.wc tr.woocommerce-shipping-totals td,.wc tr.woocommerce-shipping-totals td::before{text-align:left}

/* totaux en grille : une cellule de tableau étroite ne limite plus la largeur des cartes d'expédition */
.woocommerce-checkout .woocommerce-checkout-review-order-table,
.woocommerce-checkout .woocommerce-checkout-review-order-table :is(thead,tbody,tfoot){display:block;width:100%}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals{grid-template-columns:minmax(0,1fr)}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr:not(.woocommerce-shipping-totals) :is(th,td):last-child{text-align:right}
@media (min-width:48rem){
  .wc .cart_totals table.shop_table,
  .wc .cart_totals table.shop_table :is(tbody,tfoot){display:block;width:100%}
  .wc .cart_totals table.shop_table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .wc .cart_totals table.shop_table tr.woocommerce-shipping-totals{grid-template-columns:minmax(0,1fr)}
  .wc .cart_totals table.shop_table tr:not(.woocommerce-shipping-totals) :is(th,td):last-child{text-align:right}
}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr{border-bottom:1px solid var(--line)}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr :is(th,td){border-bottom:0}
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total{border-bottom:0}
@media (min-width:48rem){
  .wc .cart_totals table.shop_table tr{border-bottom:1px solid var(--line)}
  .wc .cart_totals table.shop_table tr :is(th,td){border-bottom:0}
  .wc .cart_totals table.shop_table tr.order-total{border-bottom:0}
}

/* Mondial Relay : bloc « Choisir un point de retrait » (la ligne est affichée par le script du plugin, d'où !important) */
.woocommerce-checkout tr.mrwp[style*="display: none"],.woocommerce-checkout tr.mrwp[style*="display:none"]{display:none!important}
.woocommerce-checkout tr.mrwp:not([style*="display: none"]):not([style*="display:none"]){display:grid!important;grid-template-columns:minmax(0,1fr);gap:.7rem;padding:.8rem 0}
.woocommerce-checkout tr.mrwp th,.woocommerce-checkout tr.mrwp td{display:block;padding:0;text-align:left;border:0}
.woocommerce-checkout tr.mrwp th{font:700 .85rem/1.2 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.woocommerce-checkout tr.mrwp th em{display:block;margin-top:.4rem;font:600 1.05rem/1.4 var(--body);font-style:normal;letter-spacing:0;text-transform:none;color:var(--fg)}
.woocommerce-checkout tr.mrwp .modaal_link{display:block;width:100%;margin:0;text-align:center}

/* ===== accueil : passe de mise en page ===== */
/* bande : prix seul sur sa ligne, puis bouton et état de stock côte à côte (plus d'étiquette orpheline) ; la note de livraison reste en retrait */
.band .row .big{flex:0 0 100%}
.band .say>p.note{font:600 1.05rem/1.4 var(--body);text-transform:none;letter-spacing:0;max-width:34rem}
/* écrans étroits et tablettes : logo, accroche et panier sur une ligne, menu dessous, pour que le livre à la une et son bouton soient dans le premier écran */
@media (max-width:61.99rem){
  .mast{gap:.2rem 1rem;padding-block:.6rem}
  .mast .cart{order:2;margin-left:auto}
  .mast nav{order:3;flex:0 0 100%;margin-inline:0}
  .mast .menu{gap:0 1.4rem}
}
@media (max-width:47.99rem){
  .mast .logo{width:3rem}
  .mast .tag{display:none}
  .mast .menu{gap:0 1.1rem}
  .mast nav a{font-size:1.05rem;padding-block:.5rem}
  .poster{padding-top:1.6rem}
  .band{margin-top:1.4rem}
  .band .in{padding-top:2.2rem;gap:1.4rem}
  .cat .ti{font-size:1.4rem}
}

/* accueil : pitch de la maison sous la une, introduction des collections, titres épuisés en retrait */
.lede{max-width:48rem;margin-top:clamp(2.4rem,5vw,3.6rem);font:500 1.3rem/1.55 var(--body)}
.lede mark{background:var(--y);color:#000;padding:0 .2em}
.lede a{font:400 1.05rem/1 var(--disp);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-bottom:3px solid var(--y);margin-left:.4rem;white-space:nowrap}
.lede a:hover{background:var(--y);color:#000}
.coll .txt.intro{max-width:48rem;margin-top:.6rem;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.cat li.out .ti,.cat li.out .pr{color:var(--mute)}
.cat li.out img{opacity:.55;filter:grayscale(1)}
.cat li.out a:hover .ti,.cat li.out a:hover .pr{color:#000}
.cat li.out a:hover img{opacity:1;filter:none}

/* bande à la une : l'état de stock est une information (texte et pastille), pas un second bouton */
.band .tag{border:0;padding:0;font:700 1rem/1 var(--body);letter-spacing:.14em;gap:.55rem}
.band .tag::before{content:"";width:.8rem;height:.8rem;border-radius:50%;background:#000}
.band .tag.out{background:none;color:#000}
.band .tag.out::before{background:none;border:2px solid #000}

/* cibles tactiles de 44 px au moins (menu, panier, « Toute la collection », pied de page) */
.mast nav a,.mast .cart{min-height:2.75rem;display:inline-flex;align-items:center}
.more,.sfoot .legal a{position:relative}
.more::before,.sfoot .legal a::before{content:"";position:absolute;inset:-.7rem -.2rem}
.sfoot nav a{display:inline-block;padding-block:.5rem}
.sfoot .menu{gap:0}
.sfoot .soc a{width:2.75rem;height:2.75rem}

/* ===== fiche produit : achat visible dès le premier écran, couverture plus grande ===== */
.single-product .poster .l{font-size:min(calc(var(--s) * 1cqw),21vh)}
.single-product .poster{padding-block:clamp(1.4rem,3vw,2.4rem) .6rem}
.single-product .band{margin-top:clamp(1.2rem,2.4vw,2rem)}
@media (min-width:62rem){
  .single-product .band .in{grid-template-columns:minmax(0,27rem) minmax(0,1fr);padding-block:clamp(2.4rem,4vw,3.6rem);align-items:start}
  .single-product .band figure{max-width:27rem}
}
@media (max-width:47.99rem){.single-product .band .in{padding-top:1.8rem}.single-product .band figure{max-width:12rem}}

/* ===== finition : respiration entre les deux lignes d'un titre d'affiche (accents, jambages) ===== */
.poster .l+.l{margin-top:.07em}

/* champ caché que Stripe ajoute pour lire nos styles de champ : il ne doit pas élargir la page */
.wc #wc-stripe-hidden-style-input{max-width:1px;left:0}

/* 375 px : colonnes connexion / inscription et code promo du panier sans débordement */
.wc .u-columns>*{min-width:0}
@media (max-width:30rem){.wc .u-column1,.wc .u-column2{padding:1rem}}
@media (max-width:47.99rem){.wc td.actions .coupon{flex-wrap:wrap}.wc .coupon input{flex:1 1 100%}.wc .coupon .button{width:100%}.wc table.shop_table_responsive td>*{min-width:0}.wc .shop_table .product-name a{overflow-wrap:anywhere}}

/* sélecteur de point Mondial Relay (plugin orkidees-mondial-relay) aux couleurs du thème */
.okmr-dialog{--okmr-bg:var(--bg);--okmr-ink:var(--fg);--okmr-line:var(--line);--okmr-accent:var(--y);--okmr-accent-ink:#000;border:3px solid var(--fg);font-family:var(--body)}
.okmr-dialog h2,.okmr-txt strong{font-family:var(--disp);font-weight:400;text-transform:uppercase;letter-spacing:.03em}
.okmr-dialog h2{font-size:1.8rem}
.okmr-dialog .button{background:var(--y);color:#000;font:400 1.05rem/1 var(--disp);letter-spacing:.06em;text-transform:uppercase;padding:.8rem 1.1rem;border:3px solid var(--y);border-radius:0}
.okmr-dialog .button:hover{background:transparent;color:var(--y)}
.okmr-dialog .okmr-pick{background:transparent;color:var(--y)}
.okmr-dialog .okmr-pick:hover,.okmr-item.is-current .okmr-pick{background:var(--y);color:#000}
.okmr-search input{border:3px solid var(--fg);font:500 1.15rem/1.3 var(--body);color:var(--fg)}
.okmr-x{border:3px solid var(--fg)}
.okmr-x:hover{background:var(--y);color:#000;border-color:var(--y)}
.okmr-dialog :focus-visible{outline:3px solid var(--y);outline-offset:2px}
.okmr-picker .okmr-open{padding:.7rem 1rem;font-size:1rem}
.okmr-chosen{font-size:1rem;line-height:1.35}

/* ===== audit mobile du 11/11 : cibles tactiles, mot de passe, panier flottant ===== */
.sz-drawer-body .qty button,.sz-drawer-body .qty span{min-width:2.75rem;min-height:2.75rem}
.sz-drawer-body .rm{position:relative}
.sz-drawer-body .rm::before{content:"";position:absolute;inset:-.9rem -.5rem}
.drawer-x,.promo-x,.wc a.remove{width:2.75rem;height:2.75rem}
.wc .password-input{position:relative;display:block}
.wc .password-input input{padding-right:3.2rem}
.wc .show-password-input{position:absolute;right:.2rem;top:50%;translate:0 -50%;width:2.75rem;height:2.75rem;display:grid;place-items:center;background:none;border:0;padding:0;color:var(--mute);cursor:pointer}
.wc .show-password-input::after{content:"Voir";font:700 .75rem/1 var(--body);letter-spacing:.08em;text-transform:uppercase}
.wc .show-password-input.display-password::after{content:"Masquer"}
.wc .show-password-input:hover,.wc .show-password-input:focus-visible{color:var(--y)}
body.woocommerce-account .sz-float{display:none}
@media (max-width:47.99rem){body:not(.sz-hdr-out) .sz-float{display:none}}
@media (max-width:26rem){.wc .g-recaptcha{transform:scale(.88);transform-origin:0 0;margin-bottom:-.6rem}}
