@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/anton-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}
@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/anton-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+1E00-1E9F,U+2020,U+20A0-20AB,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/archivo-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/archivo-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+1E00-1E9F,U+2020,U+20A0-20AB,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'PG Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/robotomono-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}

/* ============ NIVEAU 1 : LA PALETTE DE MARQUE ============ */
:root{
  --pap:#FFF8EE; --pap2:#FDEFD9; --ink:#16264A; --ink2:#45557A; --mut:#8B8794;
  --yel:#FFC72C; --yels:#FFF3D4; --cor:#F0523C; --fra:#E8447F; --lav:#8C7BF0;
  --men:#2FC5A4; --cie:#4FA8E8; --line:#EAE6E0; --r:10px;
}
/* Niveau 2, la couleur du TYPE, posee en inline sur .pg : --t et --tsoft */

.pg{font-family:'Archivo',system-ui,sans-serif;color:var(--ink);font-size:14px;line-height:1.5;
  max-width:1080px;margin:0 auto;padding:0 4px 40px;}
.pg *{box-sizing:border-box}
.pg h1,.pg h2{font-family:'Anton',Impact,system-ui;font-weight:400;letter-spacing:0;line-height:.98;margin:0}

/* ============ SCENE DE SCAN ============ */
.pg-stage{position:relative;border:1px solid var(--line);border-radius:16px;overflow:hidden;
  background:radial-gradient(circle at 50% 44%,var(--tsoft) 0%,var(--pap) 68%);
  min-height:min(62vh,460px);display:flex;align-items:center;justify-content:center;padding:34px 20px;}
.pg-stage__wm{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);
  font-family:'Anton',Impact;font-size:clamp(150px,30vw,300px);line-height:.8;color:transparent;
  -webkit-text-stroke:2px rgba(22,38,74,.09);pointer-events:none;}
.pg-stage__glow{position:absolute;left:50%;top:46%;width:min(62%,420px);aspect-ratio:1;transform:translate(-50%,-50%);
  border-radius:999px;background:radial-gradient(circle,var(--t) 0%,rgba(255,248,238,0) 68%);opacity:.34;
  animation:pgpulse 4s ease-in-out infinite;}
@keyframes pgpulse{0%,100%{opacity:.28;transform:translate(-50%,-50%) scale(1)}50%{opacity:.42;transform:translate(-50%,-50%) scale(1.06)}}
/* Le z-index posait ici un contexte d empilement, et un mix-blend-mode ne se
   melange QUE dans son contexte parent : la photo n avait donc aucun fond avec
   quoi se fondre et son carre blanc restait visible sur le creme. On descend
   l empilement sur l image elle-meme. */
.pg-stage__img{position:static}
.pg-stage__img img{display:block;position:relative;z-index:2;max-height:min(46vh,360px);
  width:auto;height:auto;mix-blend-mode:multiply;}
.pg-brk{position:absolute;width:30px;height:30px;border:2.5px solid var(--t);opacity:0;z-index:3;
  animation:pgbrk .5s ease-out forwards;}
.pg-brk--1{left:14px;top:14px;border-right:0;border-bottom:0}
.pg-brk--2{right:14px;top:14px;border-left:0;border-bottom:0;animation-delay:.08s}
.pg-brk--3{left:14px;bottom:14px;border-right:0;border-top:0;animation-delay:.16s}
.pg-brk--4{right:14px;bottom:14px;border-left:0;border-top:0;animation-delay:.24s}
@keyframes pgbrk{from{opacity:0;transform:scale(1.6)}to{opacity:.8;transform:scale(1)}}
.pg-scan{position:absolute;left:0;right:0;height:2px;top:0;background:var(--t);box-shadow:0 0 16px var(--t);
  opacity:0;z-index:4;}
.pg-stage.is-scan .pg-scan{animation:pgscan 1.3s cubic-bezier(.4,0,.4,1) .25s}
@keyframes pgscan{0%{opacity:0;top:0}10%{opacity:.95}90%{opacity:.95}100%{opacity:0;top:100%}}
.pg-fx{position:absolute;inset:0;z-index:1;pointer-events:none}
.pg-fx i{position:absolute;display:block;width:9px;height:9px;border-radius:999px;background:var(--t);
  opacity:0;filter:blur(.4px);animation:pgfx 3.2s ease-in infinite}
.pg-fx i:nth-child(1){left:18%;top:70%;animation-delay:0s}
.pg-fx i:nth-child(2){left:31%;top:56%;animation-delay:.4s}
.pg-fx i:nth-child(3){left:45%;top:78%;animation-delay:.8s}
.pg-fx i:nth-child(4){left:57%;top:50%;animation-delay:1.2s}
.pg-fx i:nth-child(5){left:68%;top:72%;animation-delay:1.6s}
.pg-fx i:nth-child(6){left:78%;top:58%;animation-delay:2s}
.pg-fx i:nth-child(7){left:26%;top:42%;animation-delay:2.4s}
.pg-fx i:nth-child(8){left:85%;top:44%;animation-delay:2.8s}
@keyframes pgfx{0%{opacity:0;transform:translateY(0) scale(.6)}20%{opacity:.7}100%{opacity:0;transform:translateY(-110px) scale(.2)}}
.pg-stage__no{position:absolute;left:20px;bottom:18px;z-index:5;display:flex;align-items:baseline;gap:8px;}
.pg-stage__no small{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.14em;color:var(--mut)}
.pg-stage__no b{font-family:'Anton',Impact;font-size:34px;line-height:.85;color:var(--ink)}
.pg-stage__no em{font-family:'PG Mono',monospace;font-style:normal;font-size:10px;letter-spacing:.14em;color:var(--mut)}
.pg-stage__stamp{position:absolute;right:20px;bottom:20px;z-index:5;border:1.5px solid var(--t);color:var(--t);
  border-radius:7px;font-weight:700;font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  padding:7px 12px;transform:rotate(-5deg);}
.pg-stage__sale{position:absolute;left:20px;top:18px;z-index:5;background:var(--cor);color:#fff;font-weight:700;
  font-size:12px;letter-spacing:.04em;padding:6px 11px;border-radius:7px;transform:rotate(-4deg);
  box-shadow:0 2px 0 rgba(22,38,74,.2)}

/* ============ IDENTITE ============ */
.pg-head{padding:22px 4px 0}
.pg-head__row{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}
.pg-h1{font-size:clamp(38px,6.2vw,68px);color:var(--ink)}
.pg-h1 span{display:block;font-size:.34em;color:var(--mut);letter-spacing:.02em}
.pg-chips{display:flex;gap:6px;margin-left:auto;padding-top:8px}
.pg-chip{background:var(--ts);color:var(--ink);border:1px solid var(--t);border-radius:999px;
  font-family:'Archivo';font-weight:700;font-size:11px;letter-spacing:.04em;padding:6px 13px}
.pg-lede{color:var(--ink2);font-size:15px;max-width:56ch;margin:12px 0 0;
  border-left:3px solid var(--yel);padding-left:13px}
.pg-region{display:inline-flex;align-items:center;gap:7px;margin-top:12px;
  font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.14em;color:var(--mut)}
.pg-region i{width:8px;height:8px;border-radius:999px;background:var(--t);display:block}

/* ============ FICHE TECHNIQUE + BARRES ============ */
.pg-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:34px;padding:24px 4px 0}
@media(max-width:760px){.pg-cols{grid-template-columns:1fr;gap:22px}}
.pg-sheet div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}
.pg-sheet div:first-child{border-top:1px solid var(--line)}
.pg-sheet span:first-child{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--mut)}
.pg-sheet span:last-child{font-weight:600}
.pg-bar{margin-bottom:14px}
.pg-bar__t{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.pg-bar__t b{font-size:13px;font-weight:700}
.pg-bar__t em{font-style:normal;font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.1em;color:var(--mut)}
.pg-bar__tr{display:block;height:8px;background:var(--pap2);border:1px solid var(--line);border-radius:999px;overflow:hidden}
.pg-bar__tr i{display:block;height:100%;background:var(--t);border-radius:999px}
.pg-bars__n{font-size:11px;color:var(--mut);margin:0}

/* ============ ACHAT ============ */
.pg-buy{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:26px 4px 0}
.pg-price{font-family:'Anton',Impact;font-size:40px;line-height:.85;color:var(--ink)}
.pg-price del{font-family:'Archivo';font-size:15px;font-weight:500;color:var(--mut);opacity:1;margin-left:8px}
.pg-price ins{text-decoration:none;color:var(--cor)}
.pg form.cart{display:flex;gap:10px;align-items:stretch;margin:0}
.pg .quantity input{height:54px;width:88px;text-align:center;font-weight:700;font-family:'Archivo';
  border:1px solid var(--line);border-radius:999px;background:#fff}
.pg .single_add_to_cart_button{background:var(--cor)!important;color:#fff!important;border:0!important;
  border-radius:999px!important;font-weight:700!important;font-size:15px!important;height:54px;padding:0 34px!important;
  box-shadow:0 3px 0 #C63A26;cursor:pointer}
.pg .single_add_to_cart_button:active{transform:translateY(2px);box-shadow:0 1px 0 #C63A26}
.pg-ship{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:18px 4px 0;padding:13px 16px;
  background:var(--yels);border-radius:var(--r);font-size:12px;font-weight:600;color:#6B4E00}
.pg-ship__pg{flex:1;min-width:110px;height:6px;background:rgba(107,78,0,.14);border-radius:999px}
.pg-ship__pg i{display:block;height:6px;width:50%;background:#E0A100;border-radius:999px}

/* ============ ACTES ============ */
.pg-act{padding:40px 4px 0}
.pg-act__k{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--mut);margin:0 0 6px}
.pg-act__h{font-size:clamp(24px,3.4vw,34px);color:var(--ink);margin-bottom:16px}

/* Scene de taille */
.pg-scene{position:relative;height:280px;background:var(--pap);border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden}
.pg-scene__grid{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px);
  background-size:100% 28px;opacity:.6}
.pg-scene__ground{position:absolute;left:0;right:0;bottom:40px;height:1px;background:#D9D5CE}
.pg-scene__hl{position:absolute;left:38px;bottom:214px;font-family:'PG Mono',monospace;font-size:10px;
  letter-spacing:.1em;color:var(--mut)}
.pg-scene__human{position:absolute;left:38px;bottom:41px;width:44px;height:170px;color:#D5D1CA}
.pg-scene__toy{position:absolute;left:130px;bottom:41px;display:block;transform-origin:bottom left}
.pg-scene__toy img{display:block;height:calc(var(--h) * 1px);width:auto;mix-blend-mode:multiply}
.pg-scene__rule{position:absolute;left:116px;bottom:41px;width:1px;background:var(--t);
  height:calc(var(--h,35) * 1px)}
.pg-scene__rule b{position:absolute;left:-52px;top:-8px;font-family:'Anton',Impact;font-size:15px;color:var(--t)}
.pg-scene__foot{position:absolute;left:0;right:0;bottom:10px;display:flex;gap:7px;justify-content:center}
.pg-scene__foot span{font-size:9px;font-weight:600;background:#fff;border:1px solid var(--line);
  border-radius:999px;padding:4px 9px;color:var(--ink2)}

/* Autres tailles */
.pg-sizes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.pg-size{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--line);
  border-radius:var(--r);padding:14px 12px;text-align:center;transition:transform .15s,border-color .15s}
.pg-size:hover{transform:translateY(-3px);border-color:var(--t)}
.pg-size__im{display:block;height:78px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.pg-size__im img{max-height:78px;width:auto;mix-blend-mode:multiply}
.pg-size b{display:block;font-family:'Anton',Impact;font-size:17px;line-height:1}
.pg-size span{font-size:12px;font-weight:600;color:var(--ink2)}

/* Rail de region */
.pg-rail{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.pg-rail__i{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;transition:transform .15s,border-color .15s}
.pg-rail__i:hover{transform:translateY(-3px);border-color:var(--t)}
.pg-rail__m{position:relative;display:flex;align-items:center;justify-content:center;height:110px;
  background:var(--tsoft)}
.pg-rail__m img{max-height:92px;width:auto;mix-blend-mode:multiply}
.pg-rail__m em{position:absolute;top:7px;left:9px;font-style:normal;font-family:'PG Mono',monospace;
  font-size:9px;letter-spacing:.09em;color:var(--mut)}
.pg-rail__i b{display:block;font-family:'Anton',Impact;font-size:15px;padding:9px 10px 0;line-height:1}
.pg-rail__i>span{display:block;font-size:12px;font-weight:600;color:var(--ink2);padding:2px 10px 11px}

@media(prefers-reduced-motion:reduce){
  .pg-stage__glow,.pg-fx i,.pg-brk,.pg-scan{animation:none!important}
  .pg-brk{opacity:.7}
}

/* ============ ON MASQUE LE CHROME DE BLOCKSY ============ */
header#header,.ct-header,footer#footer,.ct-footer{display:none!important}
body{background:var(--pap);font-family:'Archivo',system-ui,sans-serif;color:var(--ink2)}
#main-container,.site-main,main{padding-top:0!important}

/* ============ BARRE D ANNONCE ============ */
.pg-ann{background:var(--ink);color:#F5EFE6;text-align:center;padding:9px 14px;
  font-size:12px;font-weight:600;letter-spacing:.01em}
.pg-ann b{color:var(--yel)}
@media(max-width:640px){.pg-ann{font-size:10.5px}.pg-ann__o{display:none}}

/* ============ EN-TETE ============ */
.pg-hd{background:var(--pap);border-bottom:1px solid var(--line);box-shadow:inset 0 -3px 0 var(--yel);
  position:sticky;top:0;z-index:90}
.pg-hd__in{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:18px;padding:10px 16px}
.pg-hd__logo{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}
.pg-hd__logo img{max-height:44px;width:auto;height:auto}
.pg-hd__logo span{font-family:'Anton',Impact;font-size:19px;color:var(--ink)}
.pg-hd__nav{display:flex;gap:16px;flex:1;flex-wrap:wrap;justify-content:center}
.pg-hd__nav a{position:relative;font-weight:600;font-size:13.5px;color:var(--ink);text-decoration:none;padding:6px 0}
.pg-hd__nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:2px;background:var(--yel);
  transition:left .18s,right .18s}
.pg-hd__nav a:hover::after{left:0;right:0}
.pg-hd__cart{display:inline-flex;align-items:center;gap:7px;background:var(--yel);color:var(--ink);
  border-radius:999px;padding:9px 15px;font-weight:700;font-size:12.5px;text-decoration:none;
  box-shadow:0 2px 0 #D9A312;flex:0 0 auto}
.pg-hd__cart b{background:var(--cor);color:#fff;border-radius:999px;font-size:10px;padding:2px 7px}
@media(max-width:860px){
  .pg-hd__in{flex-wrap:wrap;gap:10px 12px;padding:9px 12px}
  .pg-hd__logo{order:1}.pg-hd__cart{order:2;margin-left:auto}
  .pg-hd__nav{order:3;flex:0 0 100%;justify-content:flex-start;flex-wrap:nowrap;gap:14px;
    overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
    margin:0 -12px;padding:0 12px 2px}
  .pg-hd__nav::-webkit-scrollbar{display:none}
  .pg-hd__nav a{white-space:nowrap;font-size:12.5px;padding:4px 0}
  .pg-hd__logo img{max-height:34px}
}

/* ============ PIED DE PAGE ============ */
.pg-ft{background:var(--ink);color:#C9C3D6;margin-top:50px}
.pg-ft__in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(188px,1fr));
  gap:30px;padding:38px 16px 26px}
.pg-ft__c h3{font-family:'Anton',Impact;font-weight:400;font-size:16px;color:#FFF3DC;margin:0 0 12px;letter-spacing:.02em}
.pg-ft__c p{font-size:13px;line-height:1.6;margin:0;max-width:36ch}
.pg-ft__c a{display:block;color:var(--yel);text-decoration:none;font-size:13px;padding:3px 0}
.pg-ft__c a:hover{color:#fff;text-decoration:underline}
.pg-ft__b{border-top:1px solid rgba(255,255,255,.10);text-align:center;padding:14px;
  font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.12em;color:#8E86A3}

/* ============ GRILLE ET CARTE PRODUIT ============ */
.woocommerce ul.products,ul.products{display:grid!important;gap:16px!important;margin:0 0 34px!important;
  padding:0!important;list-style:none}
@media(min-width:1100px){ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(min-width:700px) and (max-width:1099px){ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:699px){ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}}
li.pg-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;
  flex-direction:column;margin:0!important;width:auto!important;float:none!important;
  box-shadow:0 1px 2px rgba(22,38,74,.05);transition:transform .16s,box-shadow .16s,border-color .16s}
li.pg-card:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(22,38,74,.12);border-color:var(--t)}
.pg-card__media{position:relative;display:flex;align-items:center;justify-content:center;
  background:#fff;padding:14px;aspect-ratio:1/1;overflow:hidden}
.pg-card__halo{position:absolute;width:76%;aspect-ratio:1;border-radius:999px;background:var(--t);
  opacity:.16;transition:opacity .2s,transform .3s}
li.pg-card:hover .pg-card__halo{opacity:.26;transform:scale(1.06)}
.pg-card__img{position:relative;z-index:1;max-height:100%;width:auto!important;height:auto;
  mix-blend-mode:multiply;transition:transform .3s}
li.pg-card:hover .pg-card__img{transform:scale(1.05)}
.pg-card__no{position:absolute;top:9px;left:11px;z-index:2;font-family:'PG Mono',monospace;
  font-size:9.5px;letter-spacing:.09em;color:var(--mut)}
.pg-card__sale{position:absolute;top:8px;right:9px;z-index:2;background:var(--cor);color:#fff;font-weight:700;
  font-size:10.5px;padding:4px 8px;border-radius:6px;transform:rotate(-4deg);box-shadow:0 2px 0 rgba(22,38,74,.2)}
.pg-card__size{position:absolute;bottom:9px;left:11px;z-index:2;background:var(--pap);border:1px solid var(--line);
  border-radius:999px;font-size:10px;font-weight:700;color:var(--ink2);padding:3px 8px}
.pg-card__body{padding:12px 13px 13px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:7px;flex:1}
.pg-card__title{font-family:'Anton',Impact!important;font-weight:400!important;font-size:17px!important;
  line-height:1!important;margin:0!important}
.pg-card__title a{color:var(--ink)!important;text-decoration:none}
li.pg-card:hover .pg-card__title a{color:var(--cor)!important}
.pg-card__meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-family:'PG Mono',monospace;
  font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.pg-card__dot{width:7px;height:7px;border-radius:999px;background:var(--t);display:inline-block}
.pg-card__type{font-family:'Archivo';font-size:8.5px;font-weight:700;color:#fff;background:var(--t);
  border-radius:999px;padding:2px 7px}
.pg-card__foot{display:flex;align-items:center;gap:8px;margin-top:auto}
.pg-card__price{font-family:'Anton',Impact;font-size:18px;color:var(--ink);line-height:1}
.pg-card__price del{font-family:'Archivo';font-size:11px;font-weight:500;color:var(--mut);opacity:1;margin-left:5px}
.pg-card__price ins{text-decoration:none;color:var(--cor)}
.pg-card__add{margin-left:auto;width:36px;height:36px;border-radius:999px;background:var(--ink);
  color:#fff!important;font-weight:700;font-size:19px;line-height:34px;text-align:center;
  text-decoration:none!important;box-shadow:0 2px 0 rgba(22,38,74,.35);transition:background .15s,transform .12s}
.pg-card__add:hover{background:var(--cor);transform:translateY(-2px)}
.pg-card .added_to_cart{display:none!important}

/* ============ EN-TETE DE CATEGORIE ============ */
.woocommerce-result-count,.woocommerce-ordering select{font-family:'PG Mono',monospace;font-size:10.5px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.woocommerce-ordering select{border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:#fff}
.woocommerce-pagination ul{border:0!important;display:flex;gap:7px;justify-content:center}
.woocommerce-pagination a,.woocommerce-pagination span{border:1px solid var(--line)!important;border-radius:999px!important;
  min-width:38px;height:38px;line-height:36px!important;text-align:center;font-weight:700;background:#fff}
.woocommerce-pagination .current{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important}

/* le contenu Woo respire dans notre largeur */
.woocommerce .site-main,.woocommerce-page .site-main,.woocommerce main,.woocommerce-page main{
  max-width:1180px;margin:0 auto;padding:0 16px}

/* ============ EN-TETE DE CATEGORIE (le natif sort vide, on le masque) ============ */
.woocommerce-products-header{display:none!important}
.hero-section,.entry-header.ct-container-narrow{display:none!important}
.pg-cat{position:relative;max-width:1180px;margin:22px auto 20px;overflow:hidden;
  background:linear-gradient(180deg,var(--pap2),var(--pap));border:1px solid var(--line);
  border-radius:16px;padding:30px 26px 26px}
.pg-cat__halo{position:absolute;right:-40px;top:-60px;width:260px;height:260px;border-radius:999px;
  background:radial-gradient(circle,var(--t),rgba(255,248,238,0) 70%);opacity:.28}
.pg-cat__k{position:relative;font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--mut);margin:0 0 8px}
.pg-cat__h{position:relative;font-family:'Anton',Impact;font-weight:400;line-height:.96;
  font-size:clamp(34px,5.4vw,56px);color:var(--ink);margin:0}
.pg-cat__d{position:relative;color:var(--ink2);font-size:14px;max-width:72ch;margin-top:12px}

/* ============ LIGNEE D EVOLUTION ============ */
.pg-line{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap}
.pg-line__ar{align-self:center;width:20px;height:2px;background:var(--line);position:relative;flex:0 0 auto}
.pg-line__ar::after{content:"";position:absolute;right:-1px;top:-3px;border-left:7px solid var(--line);
  border-top:4px solid transparent;border-bottom:4px solid transparent}
.pg-line__s{flex:1 1 160px;min-width:150px;display:block;text-decoration:none;color:inherit;background:#fff;
  border:1px solid var(--line);border-radius:12px;padding:12px 11px 13px;text-align:center;position:relative;
  transition:transform .15s,border-color .15s}
.pg-line__s:hover{transform:translateY(-3px);border-color:var(--t)}
.pg-line__s.is-cur{background:color-mix(in srgb,var(--t) 12%,#fff);border-color:var(--t)}
.pg-line__m{display:flex;align-items:center;justify-content:center;height:86px;margin-bottom:8px}
.pg-line__m img{max-height:86px;width:auto;mix-blend-mode:multiply}
.pg-line__s b{display:block;font-family:'Anton',Impact;font-size:16px;line-height:1}
.pg-line__p{display:block;font-size:12px;font-weight:600;color:var(--ink2);margin-top:3px}
.pg-line__s em{position:absolute;top:8px;left:10px;font-style:normal;font-family:'PG Mono',monospace;
  font-size:9px;letter-spacing:.08em;color:var(--mut)}
.pg-line__s--miss{background:repeating-linear-gradient(135deg,var(--pap) 0 7px,#fff 7px 14px);
  border-style:dashed;border-color:#C9C4BC}
.pg-line__s--miss b,.pg-line__s--miss .pg-line__p{color:var(--mut)}
.pg-line__s--miss .pg-line__m{border:1.5px dashed #D5D0C8;border-radius:10px}

/* ============ EVENTAIL (Eevee) ============ */
.pg-fan{position:relative;height:430px;background:var(--pap);border:1px solid var(--line);border-radius:14px}
.pg-fan__ring{position:absolute;left:50%;top:50%;width:1px;height:1px}
.pg-fan__it{position:absolute;left:0;top:0;width:104px;margin:-34px 0 0 -52px;
  transform:rotate(var(--a)) translateY(-158px) rotate(calc(-1 * var(--a)))}
.pg-fan__it a,.pg-fan__it>span{display:block;text-decoration:none;color:inherit;background:#fff;
  border:1px solid var(--line);border-radius:11px;padding:8px 6px 9px;text-align:center;
  box-shadow:0 1px 3px rgba(22,38,74,.07);transition:transform .15s,border-color .15s}
.pg-fan__it a:hover{transform:translateY(-3px);border-color:var(--t)}
.pg-fan__d{display:block;height:5px;border-radius:999px;background:var(--t);margin:0 0 6px}
.pg-fan__it b{display:block;font-family:'Anton',Impact;font-size:12px;line-height:1}
.pg-fan__it em{font-style:normal;font-family:'PG Mono',monospace;font-size:9px;color:var(--mut)}
.pg-fan__it.has a{border-color:var(--t)}
.pg-fan__it.is-cur a{background:color-mix(in srgb,var(--t) 14%,#fff);border-color:var(--t)}
.pg-fan__it.miss>span{background:var(--pap);border-style:dashed;opacity:.9}
.pg-fan__it.miss b{color:var(--mut)}
.pg-fan__core{position:absolute;left:50%;top:50%;width:140px;height:140px;margin:-70px 0 0 -70px;
  border-radius:999px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;
  align-items:center;justify-content:center;box-shadow:0 3px 14px rgba(22,38,74,.09)}
.pg-fan__core img{max-height:54px;width:auto;mix-blend-mode:multiply}
.pg-fan__core b{font-family:'Anton',Impact;font-size:16px;line-height:1;margin-top:4px}
.pg-fan__core em{font-style:normal;font-family:'PG Mono',monospace;font-size:9px;color:var(--mut)}
@media(max-width:700px){
  .pg-fan{height:auto;padding:14px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
  .pg-fan__ring{position:static;width:auto;height:auto;display:contents}
  .pg-fan__it{position:static;width:auto;margin:0;transform:none}
  .pg-fan__core{position:static;width:auto;height:auto;border-radius:12px;margin:0;grid-column:1/-1;padding:14px}
}

/* =========================================================================
   LES 18 AMBIANCES PAR TYPE
   Un seul composant : huit particules toujours identiques dans le DOM, dont
   les positions et les delais sont deja poses plus haut. C est l attribut
   data-type de la scene qui decide de leur forme et de leur mouvement.
   Transform et opacity uniquement. Tout est coupe en reduced-motion, et
   l animation ne tourne pas quand la scene est hors ecran (classe is-idle).
   ========================================================================= */

.pg-stage.is-idle .pg-fx i,
.pg-cat.is-idle .pg-fx i{animation-play-state:paused}

/* les trois types qui tombent partent du haut de la scene */
[data-type="gras"] .pg-fx i,[data-type="is"] .pg-fx i,[data-type="sten"] .pg-fx i{top:2%}
[data-type="gras"] .pg-fx i:nth-child(2n),[data-type="is"] .pg-fx i:nth-child(2n),[data-type="sten"] .pg-fx i:nth-child(2n){top:-6%}
[data-type="gras"] .pg-fx i:nth-child(3n),[data-type="is"] .pg-fx i:nth-child(3n),[data-type="sten"] .pg-fx i:nth-child(3n){top:11%}

/* --- ELD : braises qui montent en scintillant --- */
[data-type="eld"] .pg-fx i{background:radial-gradient(circle,#FFD98A,var(--t));animation:pg-ember 2.6s ease-in infinite}
@keyframes pg-ember{0%{opacity:0;transform:translate(0,0) scale(.6)}18%{opacity:.95}
  60%{transform:translate(7px,-70px) scale(.5)}100%{opacity:0;transform:translate(-4px,-125px) scale(.25)}}

/* --- VATTEN : bulles cerclees --- */
[data-type="vatten"] .pg-fx i{width:14px;height:14px;background:rgba(111,183,232,.16);
  border:2px solid var(--t);filter:none;animation:pg-bub 3.4s ease-in-out infinite}
@keyframes pg-bub{0%{opacity:0;transform:translateY(12px) scale(.5)}20%{opacity:.85}
  100%{opacity:0;transform:translateY(-130px) scale(1.15)}}

/* --- EL : eclairs par intermittence --- */
[data-type="el"] .pg-fx i{width:3px;height:26px;border-radius:0;background:var(--t);
  box-shadow:0 0 10px var(--t);filter:none;transform-origin:top;animation:pg-bolt 2.2s steps(1) infinite}
@keyframes pg-bolt{0%,84%{opacity:0}86%{opacity:1;transform:scaleY(1) skewX(-14deg)}
  90%{opacity:0}92%{opacity:1;transform:scaleY(.7) skewX(10deg)}95%,100%{opacity:0}}

/* --- GRAS : feuilles qui descendent en tournant --- */
[data-type="gras"] .pg-fx i{width:15px;height:9px;border-radius:99px 3px 99px 3px;filter:none;
  animation:pg-leaf 5.2s linear infinite}
@keyframes pg-leaf{0%{opacity:0;transform:translate(0,-16px) rotate(0)}12%{opacity:.9}
  100%{opacity:0;transform:translate(34px,330px) rotate(330deg)}}

/* --- IS : flocons lents --- */
[data-type="is"] .pg-fx i{width:8px;height:8px;border-radius:2px;background:#EAF7FC;
  box-shadow:0 0 7px var(--t);filter:none;animation:pg-snow 6s linear infinite}
@keyframes pg-snow{0%{opacity:0;transform:translate(0,-16px) rotate(0)}14%{opacity:.95}
  100%{opacity:0;transform:translate(-26px,340px) rotate(240deg)}}

/* --- STEN : eclats anguleux --- */
[data-type="sten"] .pg-fx i{width:11px;height:9px;border-radius:2px;filter:none;
  clip-path:polygon(20% 0,100% 25%,80% 100%,0 70%);animation:pg-rock 4.6s linear infinite}
@keyframes pg-rock{0%{opacity:0;transform:translate(0,-14px) rotate(0)}15%{opacity:.85}
  100%{opacity:0;transform:translate(16px,330px) rotate(200deg)}}

/* --- PSYKISK : aurores qui se deforment --- */
[data-type="psykisk"] .pg-fx i{width:88px;height:88px;background:radial-gradient(circle,var(--t),transparent 70%);
  filter:blur(6px);animation:pg-aur 7s ease-in-out infinite}
@keyframes pg-aur{0%,100%{opacity:.18;transform:translate(0,0) scale(1)}
  50%{opacity:.45;transform:translate(22px,-18px) scale(1.35)}}

/* --- FE : etincelles a quatre branches --- */
[data-type="fe"] .pg-fx i{width:13px;height:13px;border-radius:0;filter:none;
  clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);
  animation:pg-spark 2.9s ease-in-out infinite}
@keyframes pg-spark{0%,100%{opacity:0;transform:scale(.3) rotate(0)}45%{opacity:1;transform:scale(1) rotate(80deg)}}

/* --- MORK : volutes d ombre --- */
[data-type="mork"] .pg-fx i{width:62px;height:22px;border-radius:999px;background:var(--t);
  filter:blur(8px);animation:pg-wisp 6.4s ease-in-out infinite}
@keyframes pg-wisp{0%{opacity:0;transform:translateX(-28px)}40%{opacity:.55}
  100%{opacity:0;transform:translateX(52px)}}

/* --- SPOKE : apparitions fantomes --- */
[data-type="spoke"] .pg-fx i{width:26px;height:32px;border-radius:50% 50% 42% 42%;background:var(--t);
  filter:blur(3px);animation:pg-ghost 5s ease-in-out infinite}
@keyframes pg-ghost{0%,100%{opacity:0;transform:translateY(0) scale(.9)}
  30%{opacity:.45}60%{opacity:.2;transform:translateY(-40px) scale(1.1)}}

/* --- FLYGANDE : traits de vent --- */
[data-type="flygande"] .pg-fx i{width:34px;height:3px;border-radius:999px;filter:none;
  animation:pg-wind 3.6s ease-in-out infinite}
@keyframes pg-wind{0%{opacity:0;transform:translateX(-40px) scaleX(.4)}
  25%{opacity:.7}100%{opacity:0;transform:translateX(120px) scaleX(1.2)}}

/* --- MARK : poussiere qui monte du sol --- */
[data-type="mark"] .pg-fx i{width:11px;height:11px;filter:blur(2px);animation:pg-dust 4.2s ease-out infinite}
@keyframes pg-dust{0%{opacity:0;transform:translateY(28px) scale(.4)}25%{opacity:.55}
  100%{opacity:0;transform:translateY(-50px) scale(1.3)}}

/* --- INSEKT : petits points en zigzag --- */
[data-type="insekt"] .pg-fx i{width:7px;height:7px;filter:none;animation:pg-bug 3.1s ease-in-out infinite}
@keyframes pg-bug{0%{opacity:0;transform:translate(0,0)}20%{opacity:.85}
  40%{transform:translate(22px,-24px)}60%{transform:translate(-14px,-46px)}
  80%{transform:translate(18px,-70px)}100%{opacity:0;transform:translate(0,-96px)}}

/* --- GIFT : bulles qui ondulent --- */
[data-type="gift"] .pg-fx i{width:13px;height:13px;background:rgba(181,139,214,.32);
  border:2px solid var(--t);filter:none;animation:pg-poison 4.4s ease-in-out infinite}
@keyframes pg-poison{0%{opacity:0;transform:translate(0,14px) scale(.5)}20%{opacity:.8}
  50%{transform:translate(14px,-46px) scale(1)}100%{opacity:0;transform:translate(-8px,-112px) scale(1.2)}}

/* --- KAMP : impacts nets --- */
[data-type="kamp"] .pg-fx i{width:20px;height:4px;border-radius:999px;filter:none;
  animation:pg-hit 2.4s ease-out infinite}
@keyframes pg-hit{0%,100%{opacity:0;transform:scaleX(.2)}12%{opacity:.9;transform:scaleX(1.3)}30%{opacity:0}}

/* --- STAL : reflets metalliques --- */
[data-type="stal"] .pg-fx i{width:22px;height:2px;border-radius:999px;background:#E8EEF4;
  box-shadow:0 0 8px var(--t);filter:none;animation:pg-glint 3.8s ease-in-out infinite}
@keyframes pg-glint{0%,100%{opacity:0;transform:rotate(-30deg) scaleX(.3)}
  20%{opacity:.9;transform:rotate(-30deg) scaleX(1)}40%{opacity:0}}

/* --- DRAKE : trainees d energie --- */
[data-type="drake"] .pg-fx i{width:44px;height:5px;border-radius:999px;filter:blur(1.5px);
  animation:pg-drake 4.8s ease-in-out infinite}
@keyframes pg-drake{0%{opacity:0;transform:translate(-30px,20px) rotate(-18deg) scaleX(.4)}
  25%{opacity:.65}100%{opacity:0;transform:translate(110px,-60px) rotate(-18deg) scaleX(1.3)}}

/* --- NORMAL : poussiere douce --- */
[data-type="normal"] .pg-fx i{width:8px;height:8px;filter:blur(1px);animation:pg-mote 5.4s ease-in-out infinite}
@keyframes pg-mote{0%{opacity:0;transform:translate(0,0)}30%{opacity:.45}
  100%{opacity:0;transform:translate(18px,-80px)}}

/* =========================================================================
   ACCUEIL
   Meme grammaire que la fiche : bande sombre pour les moments forts, papier
   pour la lecture, jaune pour l action. Une seule couleur de type circule
   dans le hero, celle du produit vedette.
   ========================================================================= */

.pg-home{overflow-x:clip}
.pg-btn{display:inline-block;border-radius:999px;font-weight:800;font-size:14px;padding:14px 26px;
  text-decoration:none!important;transition:transform .13s,box-shadow .13s,background .15s;line-height:1}
.pg-btn:hover{transform:translateY(-2px)}
.pg-btn--y{background:var(--yel);color:var(--ink)!important;box-shadow:0 3px 0 #D9A312}
.pg-btn--y:hover{box-shadow:0 5px 0 #D9A312}
.pg-btn--d{background:var(--ink);color:#fff!important;box-shadow:0 3px 0 rgba(22,38,74,.35)}
.pg-btn--g{background:transparent;color:#F5EFE6!important;border:2px solid rgba(245,239,230,.32);padding:12px 24px}
.pg-btn--g:hover{border-color:var(--yel);color:var(--yel)!important}

/* ------------------------------- HERO ---------------------------------- */
.pg-hero{position:relative;background:var(--ink);color:#F5EFE6;overflow:hidden;isolation:isolate}
.pg-hero__grid{position:absolute;inset:0;opacity:.16;pointer-events:none;
  background-image:linear-gradient(rgba(245,239,230,.16) 1px,transparent 1px),
    linear-gradient(90deg,rgba(245,239,230,.16) 1px,transparent 1px);background-size:46px 46px}
.pg-hero__glow{position:absolute;right:-6%;top:-22%;width:640px;height:640px;border-radius:999px;
  background:radial-gradient(circle,var(--t),transparent 66%);opacity:.34;filter:blur(14px);pointer-events:none}
.pg-hero__in{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:56px 16px 60px;
  display:grid;grid-template-columns:1.06fr .94fr;gap:40px;align-items:center}
.pg-hero__k{font-family:'PG Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--yel);margin:0 0 16px;display:inline-block;padding:6px 12px;border:1px solid rgba(242,209,76,.42);border-radius:5px}
.pg-hero__h{font-family:'Anton',Impact,sans-serif;font-weight:400;line-height:.9;letter-spacing:.005em;
  font-size:clamp(42px,7vw,80px);margin:0 0 18px;color:#FFF6E6;text-transform:uppercase}
.pg-hero__h span{color:var(--yel)}
.pg-hero__p{font-size:16px;line-height:1.62;color:#CFC8DC;max-width:46ch;margin:0 0 26px}
.pg-hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 30px}
.pg-hero__tr{list-style:none;margin:0;padding:0;display:flex;gap:28px;flex-wrap:wrap;
  border-top:1px solid rgba(245,239,230,.14);padding-top:20px}
.pg-hero__tr b{display:block;font-family:'Anton',Impact;font-weight:400;font-size:21px;color:var(--yel);line-height:1}
.pg-hero__tr span{font-family:'PG Mono',monospace;font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:#9990AE}

.pg-hero__art{position:relative;display:flex;align-items:center;justify-content:center;
  min-height:390px;text-decoration:none}
.pg-hero__halo{position:absolute;width:78%;aspect-ratio:1;border-radius:999px;background:var(--t);
  opacity:.2;filter:blur(2px);transition:transform .35s,opacity .35s}
.pg-hero__art:hover .pg-hero__halo{transform:scale(1.07);opacity:.3}
.pg-hero__img{position:relative;z-index:2;max-height:390px;width:auto!important;height:auto;
  filter:drop-shadow(0 22px 34px rgba(0,0,0,.42));transition:transform .35s}
.pg-hero__art:hover .pg-hero__img{transform:translateY(-6px)}
.pg-hero__plate{position:absolute;z-index:3;left:2%;top:8%;background:rgba(20,17,34,.72);
  border:1px solid rgba(245,239,230,.2);border-radius:9px;padding:9px 13px;text-align:center;backdrop-filter:blur(3px)}
.pg-hero__plate small{display:block;font-family:'PG Mono',monospace;font-size:8.5px;letter-spacing:.16em;color:#9990AE}
.pg-hero__plate b{display:block;font-family:'Anton',Impact;font-weight:400;font-size:26px;color:var(--yel);line-height:1}
.pg-hero__plate em{display:block;font-family:'PG Mono',monospace;font-style:normal;font-size:8.5px;
  letter-spacing:.16em;color:#CFC8DC;margin-top:2px}
.pg-hero__nom{position:absolute;z-index:3;right:2%;bottom:6%;font-family:'Anton',Impact;font-size:19px;
  color:#FFF6E6;background:rgba(20,17,34,.7);border-radius:8px;padding:7px 13px;letter-spacing:.02em}
.pg-hero__art .pg-brk{position:absolute;width:26px;height:26px;border:2px solid var(--t);opacity:.6}
.pg-hero__art .pg-brk--0{left:0;top:6%;border-right:0;border-bottom:0}
.pg-hero__art .pg-brk--1{right:0;top:6%;border-left:0;border-bottom:0}
.pg-hero__art .pg-brk--2{left:0;bottom:0;border-right:0;border-top:0}
.pg-hero__art .pg-brk--3{right:0;bottom:0;border-left:0;border-top:0}

@media(max-width:900px){
  .pg-hero__in{grid-template-columns:1fr;gap:26px;padding:34px 16px 40px}
  .pg-hero__art{order:-1;min-height:270px}
  .pg-hero__img{max-height:262px}
  .pg-hero__p{margin-bottom:20px}
  .pg-hero__tr{gap:18px}
}

/* ----------------------------- BANDEAU --------------------------------- */
.pg-mq{background:var(--yel);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);
  overflow:hidden;padding:10px 0}
.pg-mq__t{display:flex;align-items:center;gap:18px;width:max-content;animation:pg-mq 34s linear infinite}
.pg-mq__t span{font-family:'Anton',Impact;font-weight:400;font-size:15px;color:var(--ink);
  text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
.pg-mq__t i{width:7px;height:7px;border-radius:999px;background:var(--ink);flex:0 0 auto;opacity:.55}
@keyframes pg-mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.pg-mq__t{animation:none}}

/* ----------------------------- SECTIONS -------------------------------- */
.pg-sec{background:var(--pap);padding:52px 0}
.pg-sec--alt{background:var(--pap2)}
.pg-sec__in{max-width:1180px;margin:0 auto;padding:0 16px}
.pg-sec__k{font-family:'PG Mono',monospace;font-size:10.5px;letter-spacing:.17em;text-transform:uppercase;
  color:var(--mut);margin:0 0 6px}
.pg-sec__h{font-family:'Anton',Impact,sans-serif;font-weight:400;font-size:clamp(26px,4vw,40px);
  color:var(--ink);margin:0 0 26px;line-height:1;text-transform:uppercase;letter-spacing:.01em}
.pg-sec__more{text-align:center;margin:6px 0 0}

/* ---------------------------- VARFOR OSS ------------------------------- */
.pg-why{background:var(--ink);color:#F5EFE6;padding:52px 0}
.pg-why__in{max-width:1180px;margin:0 auto;padding:0 16px}
.pg-why .pg-sec__k{color:var(--yel)}
.pg-why .pg-sec__h{color:#FFF6E6}
.pg-why__g{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.pg-why__c{background:rgba(245,239,230,.055);border:1px solid rgba(245,239,230,.13);border-radius:13px;padding:20px 18px}
.pg-why__c span{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.16em;color:var(--yel)}
.pg-why__c b{display:block;font-family:'Anton',Impact;font-weight:400;font-size:19px;color:#FFF6E6;
  margin:8px 0 7px;line-height:1.1}
.pg-why__c p{margin:0;font-size:13.5px;line-height:1.6;color:#C4BCD4}

/* ------------------------------ PROSE ---------------------------------- */
.pg-prose{max-width:820px}
.pg-prose h2{font-family:'Anton',Impact,sans-serif!important;font-weight:400!important;
  font-size:26px!important;color:var(--ink)!important;margin:26px 0 12px!important;line-height:1.1;
  text-transform:none;letter-spacing:0}
.pg-prose h3{font-family:'Archivo',sans-serif;font-weight:800;font-size:17px;color:var(--ink);margin:20px 0 8px}
.pg-prose p,.pg-prose li{font-size:15px;line-height:1.72;color:var(--ink2)}
.pg-prose a{color:var(--cor);font-weight:600}
.pg-prose img{max-width:100%;height:auto;border-radius:13px}
.pg-prose ul{padding-left:20px}
.pg-sec__dot{display:inline-block;width:8px;height:8px;border-radius:999px;background:var(--t);
  vertical-align:middle;margin-right:4px}

/* ------------------------------ MASCOTTE ------------------------------- */
.pg-masc{display:inline-block;line-height:0}
.pg-masc img{display:block;height:auto;max-width:100%}

/* pied de page : elle salue depuis la premiere colonne */
.pg-ft__c--masc{display:flex;align-items:flex-end;gap:14px}
.pg-ft__sign{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.13em;
  text-transform:uppercase;color:#8E86A3;padding-bottom:6px}
.pg-ft__sign b{display:block;font-family:'Anton',Impact;font-weight:400;font-size:17px;
  letter-spacing:.02em;color:var(--yel);margin-bottom:2px}

/* l operateur du scanner, sur la fiche produit */
.pg-scanop{display:flex;align-items:center;gap:10px;margin:14px 0 0}
.pg-scanop__t{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--mut)}
.pg-scanop__t b{display:block;font-family:'Archivo';font-size:12.5px;font-weight:700;
  letter-spacing:0;text-transform:none;color:var(--ink2)}

/* etats vides : rien trouve, panier vide, 404 */
.pg-vide{max-width:600px;margin:0 auto;padding:44px 16px 60px;text-align:center}
.pg-vide__h{font-family:'Anton',Impact,sans-serif;font-weight:400;font-size:clamp(28px,5vw,44px);
  color:var(--ink);margin:16px 0 8px;line-height:1;text-transform:uppercase}
.pg-vide__p{font-size:15px;line-height:1.65;color:var(--ink2);margin:0 auto 22px;max-width:44ch}
.pg-vide__code{font-family:'PG Mono',monospace;font-size:11px;letter-spacing:.18em;color:var(--mut)}
.pg-vide .pg-masc{margin:0 auto}
.pg-vide__reg{margin-top:34px;text-align:left}

/* =========================================================================
   PANIER ET CAISSE
   Le panier est en blocs Gutenberg, la caisse en shortcode classique : deux
   balisages differents pour un meme moment. On leur donne la meme grammaire
   que le reste du site plutot que deux allures.
   ========================================================================= */

body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main,
body.woocommerce-cart main,
body.woocommerce-checkout main{max-width:1180px;margin:0 auto;padding:26px 16px 60px}

body.woocommerce-cart .entry-title,
body.woocommerce-checkout .entry-title,
body.woocommerce-cart .page-title,
body.woocommerce-checkout .page-title{font-family:'Anton',Impact,sans-serif!important;font-weight:400!important;
  font-size:clamp(30px,5vw,46px)!important;color:var(--ink)!important;line-height:1;margin:0 0 22px!important;
  text-transform:uppercase;letter-spacing:.01em}

/* le rappel de frais de port, en tete du panier */
.pg-frakt{display:flex;align-items:center;gap:12px;background:var(--pap2);border:1px solid var(--line);
  border-left:5px solid var(--yel);border-radius:12px;padding:13px 16px;margin:0 0 22px}
.pg-frakt b{font-family:'Anton',Impact;font-weight:400;font-size:17px;color:var(--ink);letter-spacing:.01em}
.pg-frakt span{font-size:13.5px;color:var(--ink2);line-height:1.5}

/* ------------------------------ LE PANIER ------------------------------ */
.wc-block-cart__totals-title,
.wc-block-cart-items__header{font-family:'PG Mono',monospace!important;font-size:10.5px!important;
  letter-spacing:.15em!important;text-transform:uppercase!important;color:var(--mut)!important}
.wc-block-cart-items{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.wc-block-cart-items__row{border-bottom:1px solid var(--line);padding:14px 16px!important;margin:0!important}
.wc-block-cart-items__row:last-child{border-bottom:0}
.wc-block-cart-item__image img{border-radius:10px;background:var(--pap2)}
.wc-block-components-product-name{font-family:'Anton',Impact,sans-serif!important;font-weight:400!important;
  font-size:18px!important;color:var(--ink)!important;text-decoration:none!important;line-height:1.05}
.wc-block-components-product-name:hover{color:var(--cor)!important}
.wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-product-price{
  font-family:'Anton',Impact;font-size:19px;color:var(--ink)}
.wc-block-components-product-badge{background:var(--cor)!important;color:#fff!important;border:0!important;
  border-radius:6px!important;font-weight:700!important;font-size:10.5px!important}
.wc-block-cart-item__remove-link{font-size:11.5px!important;color:var(--mut)!important;text-decoration:underline}
.wc-block-cart-item__remove-link:hover{color:var(--cor)!important}
.wc-block-cart__sidebar .wc-block-components-sidebar,
.wc-block-cart__sidebar{background:var(--pap2);border:1px solid var(--line);border-radius:14px;padding:6px 18px 18px}
.wc-block-components-totals-item__label{font-weight:600;color:var(--ink2)}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-family:'Anton',Impact;font-size:24px;color:var(--ink)}
.wc-block-cart__submit-button,
.wc-block-components-button:not(.is-link){background:var(--yel)!important;color:var(--ink)!important;
  border:0!important;border-radius:999px!important;font-weight:800!important;font-size:15px!important;
  box-shadow:0 3px 0 #D9A312!important;transition:transform .13s,box-shadow .13s}
.wc-block-cart__submit-button:hover,
.wc-block-components-button:not(.is-link):hover{transform:translateY(-2px);box-shadow:0 5px 0 #D9A312!important}
.wc-block-cart__empty-cart{text-align:center}
.wc-block-cart__empty-cart__title{font-family:'Anton',Impact,sans-serif!important;font-weight:400!important;
  font-size:clamp(24px,4vw,36px)!important;color:var(--ink)!important;text-transform:uppercase}

/* ------------------------------ LA CAISSE ------------------------------ */
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading{font-family:'Anton',Impact,sans-serif!important;font-weight:400!important;
  font-size:21px!important;color:var(--ink)!important;text-transform:uppercase;letter-spacing:.01em;
  margin:0 0 14px!important;padding-bottom:10px;border-bottom:1px solid var(--line)}
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2{background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:20px 20px 8px;margin-bottom:16px}
.woocommerce-checkout .form-row{margin:0 0 14px;padding:0}
.woocommerce-checkout label{font-size:12.5px;font-weight:700;color:var(--ink2);margin-bottom:5px;display:block}
.woocommerce-checkout .required{color:var(--cor);text-decoration:none}
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout .select2-selection,
.woocommerce-checkout select{width:100%;border:1px solid var(--line)!important;border-radius:10px!important;
  padding:11px 13px!important;font-size:14.5px;font-family:'Archivo',sans-serif;background:#fff;
  color:var(--ink);transition:border-color .15s,box-shadow .15s;height:auto!important}
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus{outline:0;border-color:var(--fra)!important;
  box-shadow:0 0 0 3px rgba(232,68,127,.16)!important}
.woocommerce-checkout #order_review{background:var(--pap2);border:1px solid var(--line);border-radius:14px;padding:20px}
.woocommerce-checkout .shop_table{border:0!important;width:100%}
.woocommerce-checkout .shop_table th,
.woocommerce-checkout .shop_table td{border:0!important;border-bottom:1px solid var(--line)!important;
  padding:11px 0!important;font-size:14px}
.woocommerce-checkout .shop_table thead th{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--mut)}
.woocommerce-checkout .shop_table .order-total td,
.woocommerce-checkout .shop_table .order-total th{border-bottom:0!important;font-family:'Anton',Impact;font-size:20px;color:var(--ink)}
.woocommerce-checkout #payment{background:#fff;border:1px solid var(--line);border-radius:12px;margin-top:16px;padding:6px}
.woocommerce-checkout #payment ul.payment_methods{border:0!important;padding:10px!important;margin:0!important}
.woocommerce-checkout #payment div.form-row{padding:10px}
.woocommerce-checkout #place_order{width:100%;background:var(--yel)!important;color:var(--ink)!important;
  border:0!important;border-radius:999px!important;font-weight:800!important;font-size:16px!important;
  padding:15px 24px!important;box-shadow:0 3px 0 #D9A312;transition:transform .13s,box-shadow .13s}
.woocommerce-checkout #place_order:hover{transform:translateY(-2px);box-shadow:0 5px 0 #D9A312}
.woocommerce-checkout .woocommerce-privacy-policy-text p,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{font-size:12.5px;color:var(--ink2);line-height:1.6}

@media(min-width:900px){
  .woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr;gap:0}
  .woocommerce-checkout form.checkout{display:grid;grid-template-columns:1.25fr .95fr;gap:26px;align-items:start}
  .woocommerce-checkout form.checkout .col2-set{grid-column:1}
  .woocommerce-checkout form.checkout #order_review_heading,
  .woocommerce-checkout form.checkout #order_review{grid-column:2}
  .woocommerce-checkout form.checkout #order_review{position:sticky;top:88px}
}

/* messages Woo, aux couleurs de la maison */
.woocommerce-message,.woocommerce-info,.woocommerce-error,
.wc-block-components-notice-banner{border-radius:12px!important;border:1px solid var(--line)!important;
  background:var(--pap2)!important;color:var(--ink2)!important;font-size:14px}
.woocommerce-message{border-left:5px solid var(--men)!important}
.woocommerce-info{border-left:5px solid var(--cie)!important}
.woocommerce-error{border-left:5px solid var(--cor)!important}

/* =========================================================================
   ON REPREND LA PALETTE DU THEME PARENT
   Blocksy peint tout ce qu on n a pas ecrit soi-meme avec sa palette d usine :
   bleu #2872fa pour les liens et les boutons, gris-bleu froid #FAFBFC pour le
   fond de page, texte #3A4F66, bordures #e1e8ed, et aucune police. Resultat,
   le site n avait notre identite QUE sur les blocs redessines a la main.
   On remappe ses variables sur la palette de marque : une seule declaration,
   et tout ce que le parent rend suit la direction artistique.
   ========================================================================= */

:root:root:root{
  --theme-palette-color-1:#F0523C;   /* action, liens          (corail)  */
  --theme-palette-color-2:#D63E29;   /* survol                           */
  --theme-palette-color-3:#45557A;   /* texte courant          (encre 2) */
  --theme-palette-color-4:#16264A;   /* titres                 (encre)   */
  --theme-palette-color-5:#EAE6E0;   /* filets                 (ligne)   */
  --theme-palette-color-6:#FDEFD9;   /* fonds secondaires      (papier2) */
  --theme-palette-color-7:#FFF8EE;   /* fond de page           (papier)  */
  --theme-palette-color-8:#FFFFFF;

  --theme-text-color:#45557A;
  --theme-headings-color:#16264A;
  --theme-link-initial-color:#F0523C;
  --theme-link-hover-color:#D63E29;
  --theme-border-color:#EAE6E0;
  --theme-button-background-initial-color:#FFC72C;
  --theme-button-background-hover-color:#F0523C;
  --theme-button-text-initial-color:#16264A;
  --theme-button-text-hover-color:#FFFFFF;
  --theme-font-family:'Archivo',system-ui,-apple-system,sans-serif;
  --theme-normal-container-max-width:1180px;
  --theme-content-width:1180px;
}

/* Le fond de page est pose par le parent DEUX fois : sur body via sa palette, et
   surtout par type de page via [data-prefix="product"], un selecteur d attribut
   qui bat un simple body. On le rejoint en specificite. */
body,body[data-prefix]{background:var(--pap)}

/* les titres du parent prennent notre display */
.entry-title,.page-title,
h1,h2,h3{font-family:'Anton',Impact,sans-serif;font-weight:400;color:var(--ink)}
h4,h5,h6{font-family:'Archivo',system-ui,sans-serif;font-weight:800;color:var(--ink)}

/* boutons du parent et de WooCommerce : meme sticker que les notres */
.button:not(.pg-btn):not(.wc-block-components-button),
button.button,input[type=submit].button,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  background:var(--yel)!important;color:var(--ink)!important;border:0!important;
  border-radius:999px!important;font-weight:800!important;font-family:'Archivo',sans-serif!important;
  box-shadow:0 3px 0 #D9A312;transition:transform .13s,box-shadow .13s}
.button:not(.pg-btn):not(.wc-block-components-button):hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{
  transform:translateY(-2px);box-shadow:0 5px 0 #D9A312}

/* =========================================================================
   CE QUI MANQUAIT DE LA DIRECTION ARTISTIQUE
   Trois points de la DA n avaient jamais ete rendus : le bandeau defilant en
   bleu nuit a texte jaune (il etait jaune a texte encre), la bande chaude
   jaune vers corail dans la rotation des fonds, et les motifs CSS (trame de
   points, reticules) qui donnent la texture « fiche technique ».
   ========================================================================= */

/* ---------- le bandeau defilant reprend les couleurs prevues ------------ */
.pg-mq{background:var(--ink);border-top:0;border-bottom:0;padding:11px 0;position:relative}
.pg-mq::before,.pg-mq::after{content:"";position:absolute;top:0;bottom:0;width:70px;z-index:2;pointer-events:none}
.pg-mq::before{left:0;background:linear-gradient(90deg,var(--ink),transparent)}
.pg-mq::after{right:0;background:linear-gradient(270deg,var(--ink),transparent)}
.pg-mq__t span{color:var(--yel)}
.pg-mq__t i{background:var(--cor);opacity:1}

/* ---------------- la trame de points, signature « dex » ---------------- */
.pg-trame{position:relative}
.pg-trame::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(var(--line) 1.5px,transparent 1.5px);background-size:18px 18px}
.pg-trame > *{position:relative;z-index:1}

/* ------------- la bande chaude, jaune vers corail ---------------------- */
.pg-sec--chaud{background:linear-gradient(135deg,#FFD873 0%,var(--yel) 42%,var(--cor) 100%);
  color:var(--ink);position:relative;overflow:hidden}
.pg-sec--chaud::after{content:"";position:absolute;right:-90px;bottom:-120px;width:360px;height:360px;
  border-radius:999px;background:rgba(255,255,255,.22)}
.pg-sec--chaud .pg-sec__k{color:rgba(22,38,74,.72)}
.pg-sec--chaud .pg-sec__h{color:var(--ink)}
.pg-sec--chaud .pg-why__c{background:rgba(255,255,255,.5);border-color:rgba(22,38,74,.14)}
.pg-sec--chaud .pg-why__c span{color:var(--cor)}
.pg-sec--chaud .pg-why__c b{color:var(--ink)}
.pg-sec--chaud .pg-why__c p{color:#4A3B2A}

/* ============ L EN-TETE DE COLLECTION, TRAITEMENT DEX SCAN ============= */
.pg-cat{position:relative;max-width:1180px;margin:22px auto 22px;overflow:hidden;
  background:radial-gradient(circle at 78% 18%,var(--tsoft,var(--pap2)) 0%,var(--pap) 62%);
  border:1px solid var(--line);border-radius:18px;padding:34px 30px 30px;isolation:isolate}
.pg-cat::before{content:"";position:absolute;inset:0;z-index:0;opacity:.45;pointer-events:none;
  background-image:radial-gradient(var(--line) 1.5px,transparent 1.5px);background-size:20px 20px}
.pg-cat__halo{position:absolute;right:-40px;top:-70px;width:300px;height:300px;border-radius:999px;
  background:radial-gradient(circle,var(--t),rgba(255,248,238,0) 70%);opacity:.34;z-index:0}

/* reticules d angle, comme sur la scene de la fiche */
.pg-cat__brk{position:absolute;width:26px;height:26px;border:2.5px solid var(--t);opacity:.55;z-index:1}
.pg-cat__brk--1{left:14px;top:14px;border-right:0;border-bottom:0}
.pg-cat__brk--2{right:14px;top:14px;border-left:0;border-bottom:0}
.pg-cat__brk--3{left:14px;bottom:14px;border-right:0;border-top:0}
.pg-cat__brk--4{right:14px;bottom:14px;border-left:0;border-top:0}

/* les particules du type dominant, comme sur la fiche */
.pg-cat .pg-fx{position:absolute;inset:0;z-index:0;pointer-events:none}
.pg-cat .pg-fx i{position:absolute;display:block}

.pg-cat__k{position:relative;z-index:2;display:inline-flex;align-items:center;gap:7px;
  font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.15em;text-transform:uppercase;
  color:var(--mut);margin:0 0 10px;background:rgba(255,255,255,.7);border:1px solid var(--line);
  border-radius:999px;padding:5px 11px}
.pg-cat__k b{color:var(--ink)}
.pg-cat__pt{width:8px;height:8px;border-radius:999px;background:var(--t);display:inline-block}
.pg-cat__h{position:relative;z-index:2;font-family:'Anton',Impact;font-weight:400;line-height:.94;
  font-size:clamp(36px,6vw,64px);color:var(--ink);margin:0;text-transform:uppercase;letter-spacing:.01em}
.pg-cat__d{position:relative;z-index:2;color:var(--ink2);font-size:14.5px;line-height:1.62;
  max-width:66ch;margin-top:14px}
.pg-cat__types{position:relative;z-index:2;display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}
.pg-cat__type{font-size:11px;font-weight:800;color:#fff;background:var(--tc);border-radius:999px;
  padding:5px 12px;box-shadow:0 2px 0 rgba(22,38,74,.16)}
@media(max-width:640px){.pg-cat{padding:26px 20px 24px;border-radius:14px}}

/* -------- la carte produit prend l ambiance de son type au survol ------- */
li.pg-card{isolation:isolate}
li.pg-card::before{content:"";position:absolute;inset:0;z-index:0;opacity:0;pointer-events:none;
  background:radial-gradient(circle at 50% 34%,var(--t),transparent 62%);transition:opacity .25s}
li.pg-card:hover::before{opacity:.10}

/* ---------------- le deroulant du menu principal ----------------------- */
.pg-hd__drop{position:relative;display:inline-flex}
.pg-hd__drop > a i{font-style:normal;font-size:10px;opacity:.6}
.pg-hd__sub{position:absolute;left:50%;top:100%;transform:translateX(-50%) translateY(6px);
  min-width:172px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px;
  box-shadow:0 14px 30px rgba(22,38,74,.14);display:flex;flex-direction:column;gap:2px;
  opacity:0;visibility:hidden;transition:opacity .15s,transform .15s;z-index:40}
.pg-hd__drop:hover .pg-hd__sub,.pg-hd__drop:focus-within .pg-hd__sub{
  opacity:1;visibility:visible;transform:translateX(-50%) translateY(2px)}
.pg-hd__sub a{padding:7px 11px!important;border-radius:8px;font-size:13px!important;white-space:nowrap;
  color:var(--ink)!important}
.pg-hd__sub a::after{display:none}
.pg-hd__sub a:hover{background:var(--pap2);color:var(--cor)!important}
@media(max-width:860px){
  .pg-hd__drop{display:inline-flex}
  .pg-hd__sub{display:none}
}

/* =========================================================================
   LES ACTES QUI MANQUAIENT
   Bande pleine largeur a la couleur du type, FAQ, barre d achat collante,
   jauge de lecture, et les animations au defilement de la scene de scan.
   ========================================================================= */

/* ---------------------- jauge de lecture ------------------------------- */
.pg-gauge{position:fixed;left:0;top:0;height:3px;width:100%;z-index:120;background:transparent;pointer-events:none}
.pg-gauge b{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--yel),var(--cor));
  transition:width .1s linear}

/* ------------------- ACTE : LA BANDE DU TYPE --------------------------- */
.pg-typ{position:relative;margin:44px calc(50% - 50vw) 0;padding:52px 0 56px;overflow:hidden;
  background:linear-gradient(160deg,var(--t) 0%,color-mix(in srgb,var(--t) 62%,var(--ink)) 100%);
  isolation:isolate}
.pg-typ__in{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:0 16px;text-align:center}
.pg-typ__k{font-family:'PG Mono',monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(255,255,255,.72);margin:0 0 6px}
.pg-typ__h{font-family:'Anton',Impact,sans-serif;font-weight:400;font-size:clamp(46px,10vw,110px);
  line-height:.88;color:#fff;margin:0;text-transform:uppercase;letter-spacing:.02em;
  text-shadow:0 6px 0 rgba(22,38,74,.18)}
.pg-typ__sub{font-family:'PG Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.8);margin:10px 0 0}
.pg-typ__rail{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:30px}
.pg-typ__i{width:132px;background:rgba(255,255,255,.92);border-radius:14px;padding:10px 10px 12px;
  text-decoration:none;display:block;transition:transform .16s,box-shadow .16s}
.pg-typ__i:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(22,38,74,.24)}
.pg-typ__m{display:flex;align-items:center;justify-content:center;height:92px;margin-bottom:7px}
.pg-typ__m img{max-height:92px;width:auto!important;height:auto;mix-blend-mode:multiply}
.pg-typ__i b{display:block;font-family:'Anton',Impact;font-weight:400;font-size:14.5px;color:var(--ink);
  line-height:1.05;text-align:center}
.pg-typ__i em{display:block;font-family:'PG Mono',monospace;font-style:normal;font-size:9px;
  letter-spacing:.1em;color:var(--mut);text-align:center;margin-top:3px}
.pg-typ .pg-fx{position:absolute;inset:0;z-index:1;pointer-events:none}
.pg-typ .pg-fx i{position:absolute;display:block}
.pg-typ.is-idle .pg-fx i{animation-play-state:paused}
@media(max-width:640px){.pg-typ{padding:38px 0 42px}.pg-typ__i{width:calc(50% - 6px)}}

/* ---------------------------- LA FAQ ----------------------------------- */
.pg-faq__l{max-width:760px;margin:0 auto}
.pg-faq__i{border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:9px;overflow:hidden}
.pg-faq__i summary{cursor:pointer;list-style:none;padding:15px 46px 15px 17px;position:relative;
  font-weight:700;font-size:15px;color:var(--ink)}
.pg-faq__i summary::-webkit-details-marker{display:none}
.pg-faq__i summary::after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);
  font-family:'Anton',Impact;font-size:22px;color:var(--cor);line-height:1}
.pg-faq__i[open] summary::after{content:"–"}
.pg-faq__i[open] summary{border-bottom:1px solid var(--line)}
.pg-faq__i p{margin:0;padding:14px 17px 16px;font-size:14.5px;line-height:1.65;color:var(--ink2)}

/* --------------------- BARRE D ACHAT COLLANTE -------------------------- */
.pg-bar{position:fixed;left:0;right:0;bottom:0;z-index:110;background:rgba(255,248,238,.97);
  border-top:1px solid var(--line);box-shadow:0 -6px 22px rgba(22,38,74,.10);
  transform:translateY(110%);transition:transform .22s ease;padding:9px 14px}
.pg-bar.is-on{transform:translateY(0)}
.pg-bar__in{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:12px}
.pg-bar__m{width:44px;height:44px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  background:var(--pap2);border-radius:10px;overflow:hidden}
.pg-bar__m img{max-width:100%;height:auto;mix-blend-mode:multiply}
.pg-bar__t{flex:1;min-width:0}
.pg-bar__t b{display:block;font-family:'Anton',Impact;font-weight:400;font-size:15px;color:var(--ink);
  line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pg-bar__t span{font-family:'PG Mono',monospace;font-size:9.5px;letter-spacing:.1em;color:var(--mut);
  text-transform:uppercase}
.pg-bar__p{font-family:'Anton',Impact;font-size:19px;color:var(--ink);flex:0 0 auto}
.pg-bar__p del{font-family:'Archivo';font-size:11px;font-weight:500;color:var(--mut);margin-right:5px}
.pg-bar__p ins{text-decoration:none;color:var(--cor)}
.pg-bar__b{flex:0 0 auto;background:var(--yel);color:var(--ink);border:0;border-radius:999px;
  font-weight:800;font-size:14px;padding:12px 20px;cursor:pointer;box-shadow:0 3px 0 #D9A312;
  font-family:'Archivo',sans-serif}
.pg-bar__b:hover{transform:translateY(-2px)}
@media(max-width:560px){.pg-bar__t span,.pg-bar__p del{display:none}.pg-bar__b{padding:12px 15px}}

/* -------- la scene de scan s anime : numero et fiche technique ---------- */
.pg-stage__no b{font-variant-numeric:tabular-nums}
.pg-sheet > div{opacity:0;transform:translateY(6px)}
html:not(.sd-anim) .pg-sheet > div,
.pg-cols.is-in .pg-sheet > div{opacity:1;transform:none;transition:opacity .4s ease,transform .4s ease}
.pg-cols.is-in .pg-sheet > div:nth-child(1){transition-delay:.05s}
.pg-cols.is-in .pg-sheet > div:nth-child(2){transition-delay:.13s}
.pg-cols.is-in .pg-sheet > div:nth-child(3){transition-delay:.21s}
.pg-cols.is-in .pg-sheet > div:nth-child(4){transition-delay:.29s}
.pg-cols.is-in .pg-sheet > div:nth-child(5){transition-delay:.37s}
.pg-cols.is-in .pg-sheet > div:nth-child(6){transition-delay:.45s}
@media(prefers-reduced-motion:reduce){.pg-sheet > div{opacity:1!important;transform:none!important}}


/* =========================================================================
   LES TROIS ACTES PILOTES PAR LE DEFILEMENT
   Une seule variable, --p, ecrite par le script sur chaque section marquee
   data-scrub, de 0 a 1 pendant que la section traverse la fenetre. Tout ce qui
   suit n est que du transform et de l opacite : le CLS reste a zero.
   ========================================================================= */

/* -------- ACTE : LA HAUTEUR, la peluche grandit a sa vraie echelle ------ */
/* elle part a 34 % et atteint son echelle reelle a mi-parcours de la section */
.pg-scene__toy{transform:scale(calc(.34 + .66 * min(1, var(--p,1) / .55)));
  will-change:transform}
.pg-scene__rule,.pg-scene__hl{opacity:calc(min(1, max(0, (var(--p,1) - .3) / .25)))}
@media(prefers-reduced-motion:reduce){
  .pg-scene__toy{transform:none}
  .pg-scene__rule,.pg-scene__hl{opacity:1}
  .pg-mat__vue img{transform:none;filter:none}
}

/* ---- ACTE : LE REGISTRE, le rail avance quand on descend la page ------- */
.pg-rail--scrub{overflow:hidden}
.pg-rail--scrub .pg-rail__t{display:flex;gap:12px;flex-wrap:nowrap;width:max-content;
  will-change:transform;transform:translateX(calc(var(--dx,0px) * var(--p,0) * -1))}
.pg-rail--scrub .pg-rail__t > *{flex:0 0 auto;width:168px}
@media(max-width:640px){.pg-rail--scrub .pg-rail__t > *{width:132px}}
@media(prefers-reduced-motion:reduce){.pg-rail--scrub .pg-rail__t{transform:none}}


/* =========================================================================
   LA GRILLE DES REGIONS, VERSION VITRINE
   Chaque region montre sa meilleure vente sur un aplat a la couleur de son
   type dominant. La carte est haute, la peluche deborde vers le haut, le nom
   est en Anton par-dessus l aplat : on reconnait la boutique au premier coup
   d oeil, au lieu d une liste de boutons.
   ========================================================================= */

.pg-reg{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(214px,1fr))}

.pg-reg__c{position:relative;display:block;text-decoration:none;border-radius:18px;overflow:hidden;
  background:#fff;border:1px solid var(--line);padding:0;
  box-shadow:0 1px 2px rgba(22,38,74,.05);
  transition:transform .18s,box-shadow .18s,border-color .18s}
.pg-reg__c:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(22,38,74,.16);border-color:var(--t)}

/* l aplat de couleur, ou vit la peluche */
.pg-reg__sc{position:relative;height:172px;display:flex;align-items:flex-end;justify-content:center;
  background:linear-gradient(170deg,var(--tsoft) 0%,#fff 100%);overflow:hidden}
.pg-reg__d{position:absolute;left:50%;bottom:-52px;transform:translateX(-50%);
  width:186px;height:186px;border-radius:999px;background:var(--t);opacity:.22;
  transition:transform .3s,opacity .3s}
.pg-reg__c:hover .pg-reg__d{transform:translateX(-50%) scale(1.12);opacity:.3}
.pg-reg__img{position:relative;z-index:2;max-height:150px;width:auto!important;height:auto;
  margin-bottom:-6px;mix-blend-mode:multiply;
  transition:transform .3s}
.pg-reg__c:hover .pg-reg__img{transform:translateY(-6px) scale(1.05)}

/* les reticules d angle, la signature du reste du site */
.pg-reg__b{position:absolute;width:15px;height:15px;border:2px solid var(--t);opacity:.5;z-index:3}
.pg-reg__b--1{left:10px;top:10px;border-right:0;border-bottom:0}
.pg-reg__b--2{right:10px;top:10px;border-left:0;border-bottom:0}

/* le pied de carte */
.pg-reg__t{padding:13px 15px 15px;border-top:1px solid var(--line);
  display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.pg-reg__t b{font-family:'Anton',Impact,sans-serif;font-weight:400;font-size:23px;color:var(--ink);
  line-height:1;text-transform:uppercase;letter-spacing:.01em}
.pg-reg__c:hover .pg-reg__t b{color:var(--cor)}
.pg-reg__t em{font-family:'PG Mono',monospace;font-style:normal;font-size:9.5px;letter-spacing:.11em;
  text-transform:uppercase;color:var(--mut);white-space:nowrap}

/* la region sans image ne casse pas la rangee : le rond prend toute la place */
.pg-reg__c--vide .pg-reg__sc{height:120px}
.pg-reg__c--vide .pg-reg__d{bottom:-70px;width:210px;height:210px}

/* la carte « tout le catalogue », plus large et sur fond nuit */
.pg-reg__c--tout{grid-column:span 2;background:var(--ink);border-color:var(--ink)}
.pg-reg__c--tout .pg-reg__sc{background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,0))}
.pg-reg__c--tout .pg-reg__t{border-top-color:rgba(245,239,230,.16)}
.pg-reg__c--tout .pg-reg__t b{color:#FFF6E6}
.pg-reg__c--tout:hover .pg-reg__t b{color:var(--yel)}
.pg-reg__c--tout .pg-reg__t em{color:#9990AE}

@media(max-width:700px){
  .pg-reg{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
  .pg-reg__sc{height:128px}
  .pg-reg__img{max-height:112px}
  .pg-reg__t b{font-size:18px}
  .pg-reg__c--tout{grid-column:span 2}
}


/* =========================================================================
   L EN-TETE DE COLLECTION : LA MOITIE DROITE SE REMPLIT
   Elle etait vide, juste un halo et une trame. Elle accueille maintenant les
   meilleures ventes de la region, en grappe, chacune sur son halo de type.
   Rien a produire : ce sont les vraies fiches du catalogue.
   ========================================================================= */

.pg-cat{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:26px;align-items:center;
  padding:34px 30px 30px}
.pg-cat__txt{position:relative;z-index:2;min-width:0}

/* la grappe */
.pg-cat__gr{position:relative;z-index:2;height:250px;min-width:0}
.pg-cat__p{position:absolute;display:block;text-decoration:none;
  transition:transform .28s cubic-bezier(.2,.8,.3,1)}
.pg-cat__p img{display:block;width:auto!important;height:auto;max-width:none;
  mix-blend-mode:multiply;transition:filter .28s}
.pg-cat__p::before{content:"";position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);
  width:112%;aspect-ratio:1;border-radius:999px;background:var(--pt);opacity:.20;z-index:-1;
  transition:opacity .28s,transform .28s}
.pg-cat__p:hover{transform:translateY(-9px) scale(1.04) rotate(0deg)!important;z-index:9}
.pg-cat__p:hover::before{opacity:.34;transform:translate(-50%,-50%) scale(1.1)}

/* quatre places tenues a la main : une grappe reguliere ne raconte rien */
.pg-cat__p--1{left:6%;  top:16%; transform:rotate(-6deg)}
.pg-cat__p--1 img{height:190px}
.pg-cat__p--2{left:38%; top:0;   transform:rotate(4deg)}
.pg-cat__p--2 img{height:224px}
.pg-cat__p--3{left:66%; top:26%; transform:rotate(-3deg)}
.pg-cat__p--3 img{height:158px}
.pg-cat__p--4{left:22%; top:52%; transform:rotate(7deg)}
.pg-cat__p--4 img{height:126px}

/* la pastille de numero, discrete, qui rappelle le dex */
.pg-cat__nr{position:absolute;left:0;bottom:2px;font-family:'PG Mono',monospace;font-size:9px;
  letter-spacing:.1em;color:var(--mut);background:rgba(255,255,255,.86);border:1px solid var(--line);
  border-radius:999px;padding:2px 7px;opacity:0;transition:opacity .2s}
.pg-cat__p:hover .pg-cat__nr{opacity:1}

@media(max-width:980px){
  .pg-cat{grid-template-columns:1fr;gap:6px}
  .pg-cat__gr{height:190px;order:2;margin-top:6px}
  .pg-cat__p--1 img{height:140px}
  .pg-cat__p--2 img{height:166px}
  .pg-cat__p--3 img{height:118px}
  .pg-cat__p--4 img{height:96px}
}
@media(max-width:560px){
  .pg-cat__gr{height:158px}
  .pg-cat__p--1{left:2%}
  .pg-cat__p--3{left:62%}
  .pg-cat__p--4{display:none}
  .pg-cat__p--1 img{height:118px}
  .pg-cat__p--2 img{height:140px}
  .pg-cat__p--3 img{height:100px}
}

/* ------- le texte de collection, en entier, sous la grille ------------- */
.pg-cat__tk{font-family:'PG Mono',monospace;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--mut);margin:16px 0 7px}
.pg-cat__types{margin-top:0}
.pg-cat__d p{margin:0 0 10px}
.pg-cat__d p:last-child{margin-bottom:0}
/* borne visuelle : le texte entier reste dans le document, on n en montre que
   les premieres lignes, la suite se lit dans le bloc depliable sous la grille */
.pg-cat__d--court{position:relative;display:-webkit-box;-webkit-box-orient:vertical;
  -webkit-line-clamp:5;overflow:hidden}
.pg-cat__d--court::after{content:"";position:absolute;left:0;right:0;bottom:0;height:26px;
  background:linear-gradient(transparent,var(--pap));pointer-events:none}
.pg-cat__more{display:inline-block;margin-top:9px;font-weight:700;font-size:13.5px;
  color:var(--cor);text-decoration:none;border-bottom:2px solid var(--cor);padding-bottom:1px}
.pg-cat__more::after{content:" \2193"}
.pg-cat__more:hover{color:var(--ink);border-color:var(--ink)}

.pg-seo{max-width:1180px;margin:8px auto 34px;padding:0 16px}
.pg-seo__d{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.pg-seo__d summary{cursor:pointer;list-style:none;padding:15px 46px 15px 18px;position:relative;
  font-weight:700;font-size:15px;color:var(--ink)}
.pg-seo__d summary::-webkit-details-marker{display:none}
.pg-seo__d summary::after{content:"+";position:absolute;right:17px;top:50%;transform:translateY(-50%);
  font-family:'Anton',Impact;font-size:23px;color:var(--cor);line-height:1}
.pg-seo__d[open] summary{border-bottom:1px solid var(--line)}
.pg-seo__d[open] summary::after{content:"\2013"}
.pg-seo__c{padding:16px 18px 20px;max-width:76ch}
.pg-seo__c p{font-size:14.5px;line-height:1.68;color:var(--ink2);margin:0 0 12px}
.pg-seo__c h2,.pg-seo__c h3{font-family:'Anton',Impact,sans-serif;font-weight:400;color:var(--ink);
  font-size:20px;margin:20px 0 8px;line-height:1.15;text-transform:none}
.pg-seo__c ul{padding-left:20px}
.pg-seo__c li{font-size:14.5px;line-height:1.6;color:var(--ink2)}
.pg-seo__c a{color:var(--cor);font-weight:600}


/* =========================================================================
   ACTE « MATERIAL », VERSION FICHE ECLATEE
   La premiere version zoomait la photo a 340 % avec un flou pilote par le
   defilement : moche, et couteux a animer sur une image de cette taille.
   Ici la peluche reste nette et flotte au centre, les caracteristiques
   viennent se poser autour d elle, reliees par un trait. Tout est en CSS,
   declenche une seule fois a l entree en vue : rien n est calcule au scroll.
   ========================================================================= */

.pg-mat{position:relative;margin:44px calc(50% - 50vw) 0;padding:52px 0 58px;overflow:hidden;
  background:var(--ink);isolation:isolate}
.pg-mat::before{content:"";position:absolute;inset:0;opacity:.16;pointer-events:none;
  background-image:radial-gradient(rgba(245,239,230,.5) 1px,transparent 1px);background-size:22px 22px}

.pg-mat__in{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:0 16px;text-align:center}
.pg-mat__k{font-family:'PG Mono',monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--yel);margin:0 0 6px}
.pg-mat__h{font-family:'Anton',Impact,sans-serif;font-weight:400;font-size:clamp(28px,5vw,52px);
  color:#FFF6E6;margin:0 0 8px;line-height:.98;text-transform:uppercase;letter-spacing:.01em}

/* ------------------------------- la scene ------------------------------ */
.pg-mat__sc{position:relative;height:440px;max-width:900px;margin:0 auto}

.pg-mat__halo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:330px;height:330px;border-radius:999px;background:var(--t);opacity:.30;filter:blur(28px);
  animation:pg-mat-pulse 5.5s ease-in-out infinite}
@keyframes pg-mat-pulse{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.26}
  50%{transform:translate(-50%,-50%) scale(1.12);opacity:.38}}

/* l anneau du scanner, en pointilles, qui tourne lentement */
.pg-mat__ring{position:absolute;left:50%;top:50%;width:376px;height:376px;margin:-188px 0 0 -188px;
  border:2px dashed rgba(245,239,230,.22);border-radius:999px;animation:pg-mat-spin 26s linear infinite}
.pg-mat__ring--2{width:452px;height:452px;margin:-226px 0 0 -226px;border-style:dotted;
  border-color:rgba(245,239,230,.13);animation-duration:38s;animation-direction:reverse}
@keyframes pg-mat-spin{to{transform:rotate(360deg)}}

.pg-mat__img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;
  max-height:300px;width:auto!important;height:auto;
  filter:drop-shadow(0 20px 30px rgba(0,0,0,.45));animation:pg-mat-float 6s ease-in-out infinite}
@keyframes pg-mat-float{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 12px))}}

/* ------------------------- les caracteristiques ------------------------ */
.pg-mat__f{position:absolute;z-index:4;background:rgba(245,239,230,.07);
  border:1px solid rgba(245,239,230,.18);border-radius:12px;padding:10px 14px;text-align:left;
  backdrop-filter:blur(3px);min-width:132px;max-width:186px;
  opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .5s ease}
.pg-mat.is-in .pg-mat__f{opacity:1;transform:none}
.pg-mat__f span{display:block;font-family:'PG Mono',monospace;font-size:9px;letter-spacing:.14em;
  text-transform:uppercase;color:#9990AE;margin-bottom:3px}
.pg-mat__f b{display:block;font-family:'Anton',Impact,sans-serif;font-weight:400;font-size:18px;
  color:var(--yel);line-height:1.14;letter-spacing:.01em}

/* le trait qui relie chaque carte a la peluche */
.pg-mat__f::after{content:"";position:absolute;top:50%;width:56px;height:1px;
  background:linear-gradient(90deg,rgba(245,239,230,.34),transparent);
  transform-origin:left center;transform:scaleX(0);transition:transform .5s ease .1s}
.pg-mat.is-in .pg-mat__f::after{transform:scaleX(1)}

.pg-mat__f--1{left:2%;   top:16%}
.pg-mat__f--2{right:2%;  top:16%;text-align:right}
.pg-mat__f--3{left:2%;   bottom:16%}
.pg-mat__f--4{right:2%;  bottom:16%;text-align:right}
.pg-mat__f--1::after,.pg-mat__f--3::after{left:100%}
.pg-mat__f--2::after,.pg-mat__f--4::after{right:100%;
  background:linear-gradient(270deg,rgba(245,239,230,.34),transparent);transform-origin:right center}
.pg-mat.is-in .pg-mat__f--1{transition-delay:.05s}
.pg-mat.is-in .pg-mat__f--2{transition-delay:.16s}
.pg-mat.is-in .pg-mat__f--3{transition-delay:.27s}
.pg-mat.is-in .pg-mat__f--4{transition-delay:.38s}

@media(max-width:860px){
  .pg-mat{padding:38px 0 42px}
  .pg-mat__sc{height:auto;display:flex;flex-direction:column;align-items:center;gap:18px}
  .pg-mat__halo{width:220px;height:220px;top:150px}
  .pg-mat__ring,.pg-mat__ring--2{display:none}
  .pg-mat__img{position:relative;left:auto;top:auto;transform:none;max-height:230px;
    animation:pg-mat-float-m 6s ease-in-out infinite}
  @keyframes pg-mat-float-m{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
  .pg-mat__grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;width:100%;max-width:420px}
  .pg-mat__f{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    text-align:left!important;min-width:0}
  .pg-mat__f::after{display:none}
}
@media(prefers-reduced-motion:reduce){
  .pg-mat__halo,.pg-mat__ring,.pg-mat__img{animation:none}
  .pg-mat__f{opacity:1;transform:none}
  .pg-mat__f::after{transform:scaleX(1)}
}

/* ---- guides : cartes du bloc accueil et de l index « Guider » ---- */
.pg-guides{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pg-guide{display:flex;flex-direction:column;gap:8px;background:#fff;border-radius:14px;padding:14px;
  box-shadow:0 1px 4px rgba(40,30,60,.08);text-decoration:none;color:inherit;transition:transform .15s ease}
.pg-guide:hover{transform:translateY(-3px)}
.pg-guide__m img{width:100%;height:190px;object-fit:cover;border-radius:10px;display:block}
.pg-guide b{font-size:1.02rem;line-height:1.3}
.pg-guide__d{font-size:.82rem;opacity:.65}
.pg-guide__x{font-size:.9rem;opacity:.85;line-height:1.45}
.pg-guides__all{margin-top:18px;text-align:center}
.pg-bloglist .pg-guides{grid-template-columns:repeat(2,1fr)}
.pg-blogimg{max-width:100%;height:auto;border-radius:12px}
@media(max-width:820px){.pg-guides,.pg-bloglist .pg-guides{grid-template-columns:1fr}}

/* ================================================================
   REVUE UX 2026-07-25 : surcharges (les blocs d origine restent au-dessus)
   ================================================================ */

/* -- 1. Les photos a fond blanc sur fonds fonces deviennent des cartes assumees -- */
.pg-hero__img{background:#fff;padding:16px;border-radius:22px;
  box-shadow:0 22px 44px rgba(10,16,38,.45);transform:rotate(-2deg)}
.pg-hero__art:hover .pg-hero__img{transform:rotate(-2deg) translateY(-6px)}
.pg-mat__img{background:#fff;padding:12px;border-radius:18px;box-shadow:0 14px 30px rgba(10,16,38,.35)}

/* -- 2. Grappe de l en-tete categorie : le z-index isolait le mix-blend-mode
      (lecon Squishy) et les photos ressortaient en carres blancs -- */
.pg-cat__gr{z-index:auto}

/* -- 3. Scene de taille : echelle x2.2, la peluche de 35 cm faisait 35 px
      (1 px = 1 cm, honnete mais illisible : la plupart des produits etaient
      des points). L echelle reste vraie, tout est multiplie pareil. -- */
.pg-scene{height:460px}
.pg-scene__human{width:92px;height:374px}
.pg-scene__hl{bottom:408px}
.pg-scene__toy img{height:calc(var(--h) * 2.2px)}
.pg-scene__rule{height:calc(var(--h,35) * 2.2px)}
/* Le transform de l animation sur le SPAN isolait le mix-blend-mode de l image
   (piege documente) : la peluche ressortait en carre blanc. La transformation
   passe sur l image elle-meme, le blend garde acces au fond de la scene. */
.pg-scene__toy{transform:none;will-change:auto}
.pg-scene__toy img{transform-origin:bottom left;will-change:transform;
  transform:scale(calc(.34 + .66 * min(1, var(--p,1) / .55)))}
@media(prefers-reduced-motion:reduce){.pg-scene__toy img{transform:none}}
/* La silhouette elargie chevauchait le repere : on decale peluche et regle. */
.pg-scene__rule{left:150px}
.pg-scene__rule b{left:-44px}
.pg-scene__toy{left:164px}
@media(max-width:820px){
  .pg-scene{height:330px}
  .pg-scene__human{width:64px;height:255px}
  .pg-scene__hl{bottom:290px}
  .pg-scene__toy img{height:calc(var(--h) * 1.5px)}
  .pg-scene__rule{height:calc(var(--h,35) * 1.5px)}
}

/* -- 4. Bande de type fiche : teinte douce au lieu de l aplat sature -- */
.pg-typ{background:linear-gradient(160deg,var(--ts,#F1EAFD) 0%,#FFFDF8 120%);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pg-typ__k{color:var(--ink2)}
.pg-typ__h{color:var(--t);text-shadow:0 3px 0 rgba(22,38,74,.10)}
.pg-typ__sub{color:var(--ink2)}
.pg-typ__i{border:1px solid var(--line);box-shadow:0 2px 8px rgba(22,38,74,.06)}

/* -- 5. Bande chaude de l accueil : meme logique, on garde la chaleur sans crier -- */
.pg-sec--chaud{background:linear-gradient(135deg,#FFF3D6 0%,#FFE7A8 100%)}
.pg-sec--chaud::after{opacity:.35}

/* -- 6. Badges promo et prix : un seul rouge a l ecran, celui du bouton -- */
.pg-stage__sale,.pg-card__sale{background:var(--yel);color:var(--ink);box-shadow:0 2px 0 rgba(22,38,74,.18)}
.pg-price ins{color:var(--ink)}

/* -- 7. « Gjort for samlare » passe en clair, la bande navy pesait -- */
.pg-why{background:var(--pap,#FBF7EF);color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pg-why .pg-sec__h{color:var(--ink)}
.pg-why__c{background:#fff;border:1px solid var(--line)}
.pg-why__c span{color:var(--cor)}
.pg-why__c b{color:var(--ink)}
.pg-why__c p{color:var(--ink2)}

/* -- 8. Mascotte dans les cartes region speciales -- */
.pg-reg__masc{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);z-index:2}
.pg-reg__masc img{display:block}
.pg-reg__c--guide .pg-reg__d{opacity:.5}

/* -- 9. Description longue de la fiche -- */
.pg-desc__c{max-width:820px}
.pg-desc__c h2{font-size:clamp(19px,2.4vw,24px);margin:26px 0 10px}
.pg-desc__c p{line-height:1.7}

/* -- 10. Mobile : le titre avant l image dans le hero -- */
@media(max-width:820px){
  .pg-hero__art{order:2;min-height:0;margin-top:6px}
  .pg-hero__img{max-height:210px}
}

/* -- 11. Mobile : navigation sur deux lignes au lieu du defilement coupe -- */
@media(max-width:820px){
  .pg-hd__nav{flex-wrap:wrap;overflow:visible;justify-content:center;row-gap:2px}
  .pg-hd__nav a{font-size:12px}
  .pg-hd__sub{position:static;transform:none;opacity:1;visibility:hidden;display:none;
    flex-direction:row;flex-wrap:wrap;justify-content:center;gap:4px;min-width:0;
    border:0;box-shadow:none;background:transparent;padding:4px 0 2px}
  .pg-hd__drop.is-open .pg-hd__sub{display:flex;visibility:visible}
  .pg-hd__drop{flex-wrap:wrap;justify-content:center}
  .pg-hd__sub a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 10px!important}
}

/* -- 12. Mobile : la description de categorie ne repousse plus la grille -- */
@media(max-width:820px){
  .pg-cat__d.is-clamp{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .pg-cat__d.is-clamp::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;
    background:linear-gradient(transparent,var(--tsoft,#F1EAFD))}
  .pg-cat__more--auto{display:inline-block;margin-top:6px;font-weight:700;color:var(--ink);cursor:pointer}
}

/* -- 13. FAQ de l accueil : les styles vivaient dans un <style> casse du contenu -- */
.faq-accordion{max-width:820px;margin:0 auto}
.faq-accordion h2{text-align:center;margin-bottom:22px}
.faq-accordion details{border:1px solid var(--line);border-radius:12px;background:#fff;
  padding:14px 18px;margin-bottom:10px}
.faq-accordion summary{font-weight:700;cursor:pointer;font-size:15px;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--ink)}
.faq-accordion summary::-webkit-details-marker{display:none}
.faq-accordion summary::after{content:'+';font-family:'Anton',Impact;font-size:20px;color:var(--cor);flex:0 0 auto}
.faq-accordion details[open] summary::after{content:'\2212'}
.faq-accordion .faq-content{padding-top:10px;line-height:1.65;color:var(--ink2);font-size:14px}
.faq-accordion a{color:var(--cor)}

/* ================================================================
   DETOURAGE + DEUX COLONNES + PRIX (suite revue UX, meme soir)
   ================================================================ */

/* Prix des cartes en navy : le seul rouge de l ecran reste le bouton */
.pg-card__price ins{color:var(--ink)}

/* Haut de fiche en deux colonnes desktop */
@media(min-width:1024px){
  .pg-top{display:grid;grid-template-columns:1.08fr .92fr;gap:30px;align-items:start;margin-bottom:8px}
  .pg-top .pg-stage{margin-bottom:0}
  .pg-top__side{display:flex;flex-direction:column}
  .pg-top__side .pg-head{padding-top:4px}
}

/* Images detourees : plus de carte blanche, une vraie peluche qui flotte.
   PAS de drop-shadow sur les grandes images alpha : mesure Lighthouse, il
   coutait 3,7 s de Render Delay sur l element LCP en mobile bride. L ombre
   est une ellipse au sol en degrade, cout de rendu nul. */
img.pg-cut,.pg-hero__img--cut,.pg-mat__img--cut{background:none!important;padding:0!important;
  box-shadow:none!important;mix-blend-mode:normal}
.pg-hero__img--cut{border-radius:0;max-height:400px;width:auto!important;
  transform:none;transition:none;position:relative;z-index:2}
.pg-hero__art:hover .pg-hero__img--cut{transform:translateY(-6px)}
.pg-hero__art::after{content:"";position:absolute;left:50%;bottom:5%;transform:translateX(-50%);
  width:60%;height:26px;background:radial-gradient(ellipse at center,rgba(4,8,22,.55),transparent 70%);
  z-index:1;pointer-events:none}
.pg-mat__img--cut{border-radius:0;max-height:300px;width:auto}
.pg-stage__img img.pg-cut{max-height:430px;width:auto!important;height:auto;
  position:relative;z-index:2}
.pg-stage__img{position:relative}
.pg-stage__img::after{content:"";position:absolute;left:50%;bottom:2%;transform:translateX(-50%);
  width:52%;height:20px;background:radial-gradient(ellipse at center,rgba(60,50,90,.30),transparent 70%);
  z-index:1;pointer-events:none}
.pg-cat__p img.pg-cut{filter:none}
@media(max-width:820px){
  .pg-hero__img--cut{max-height:230px}
  .pg-stage__img img.pg-cut{max-height:300px}
}

/* ================================================================
   AJUSTEMENTS JULIEN 2026-07-25 soir : best-sellers x5, hero nyhet,
   burger mobile, cartes regions en cartes geographiques
   ================================================================ */

/* Best-sellers : 5 par ligne en desktop */
@media(min-width:1100px){ul.products.pg-grid--5{grid-template-columns:repeat(5,minmax(0,1fr))!important}}

/* Badge nouveaute du hero */
.pg-hero__new{position:absolute;top:8%;right:4%;z-index:4;background:var(--cor);color:#fff;
  font-family:'Anton',Impact;font-size:14px;letter-spacing:.06em;text-transform:uppercase;
  padding:7px 14px;border-radius:999px;transform:rotate(6deg);box-shadow:0 3px 0 rgba(0,0,0,.25)}

/* Menu mobile v2 : burger + panneau. Le wrap sur deux lignes restait charge,
   verdict Julien. Desktop inchange. */
.pg-burger{display:none}
@media(max-width:860px){
  .pg-burger{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:5px;
    width:44px;height:44px;padding:11px 10px;background:#fff;border:1px solid var(--line);
    border-radius:12px;cursor:pointer;order:3;flex:0 0 auto}
  .pg-burger i{display:block;height:2.5px;background:var(--ink);border-radius:2px;
    transition:transform .2s,opacity .2s}
  .pg-hd.is-nav-open .pg-burger i:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  .pg-hd.is-nav-open .pg-burger i:nth-child(2){opacity:0}
  .pg-hd.is-nav-open .pg-burger i:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
  .pg-hd__cart{order:2;margin-left:auto}
  .pg-hd__nav{display:none}
  .pg-hd.is-nav-open .pg-hd__nav{display:flex;order:4;flex:0 0 100%;flex-direction:column;
    align-items:stretch;gap:0;overflow:visible;margin:0;padding:6px 0 12px}
  .pg-hd.is-nav-open .pg-hd__nav > a,
  .pg-hd.is-nav-open .pg-hd__drop > a{display:block;font-size:16px;padding:13px 8px;
    border-bottom:1px solid var(--line);white-space:normal}
  .pg-hd.is-nav-open .pg-hd__drop{display:block}
  .pg-hd.is-nav-open .pg-hd__sub{display:flex;position:static;transform:none;opacity:1;visibility:visible;
    flex-direction:row;flex-wrap:wrap;gap:8px;background:transparent;border:0;box-shadow:none;
    min-width:0;padding:12px 8px 4px}
  .pg-hd.is-nav-open .pg-hd__sub a{background:#fff;border:1px solid var(--line);border-radius:999px;
    padding:9px 15px!important;font-size:14px!important;border-bottom:1px solid var(--line)}
}

/* Cartes regions : la silhouette geographique remplace la peluche */
.pg-reg__map{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%) rotate(-3deg);
  max-width:74%;max-height:70%;z-index:2;filter:drop-shadow(0 8px 10px rgba(22,20,40,.22))}
.pg-reg__c:hover .pg-reg__map{transform:translate(-50%,-52%) rotate(0deg) scale(1.05);
  transition:transform .25s}

/* Footer v2 : la colonne mascotte seule creait un grand vide a gauche.
   La marque porte le texte et la signature de Brasa ; les 9 regions passent
   sur deux mini-colonnes pour ne plus etirer le pied de page. */
.pg-ft__in{grid-template-columns:1.35fr 1fr .8fr 1fr;gap:34px;align-items:start}
.pg-ft__c--brand p{margin-bottom:16px}
.pg-ft__masc{display:flex;align-items:center;gap:12px;margin-top:6px}
.pg-ft__masc .pg-masc img{display:block}
.pg-ft__sign{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.13em;color:#8E86A3}
.pg-ft__sign b{display:block;font-family:'Anton',Impact;font-weight:400;font-size:16px;color:var(--yel);letter-spacing:.04em}
.pg-ft__2col{column-count:2;column-gap:22px}
.pg-ft__2col a{break-inside:avoid}
@media(max-width:900px){
  .pg-ft__in{grid-template-columns:repeat(2,1fr);gap:26px 20px}
  .pg-ft__c--brand{grid-column:1 / -1}
  .pg-ft__2col{column-count:2}
}
@media(max-width:480px){
  .pg-ft__in{grid-template-columns:1fr}
}

/* La carte « Hela katalogen » repasse en simple colonne : 10 tuiles font
   2 rangees de 5 pleines, Paldea n est plus orpheline. */
.pg-reg__c--tout{grid-column:auto}
.pg-reg__c--tout .pg-reg__sc{height:172px}
@media(max-width:700px){
  .pg-reg__c--tout .pg-reg__sc{height:128px}
}

/* En-tete de categorie v2 : la carte de region (ou la mascotte) remplace la
   grappe de peluches, et deux chips Pokedex remplacent les types dominants. */
.pg-cat__vis{position:relative;z-index:2;min-width:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:16px;padding:8px 0}
.pg-cat__mapimg{max-width:86%;max-height:250px;width:auto;height:auto;
  filter:drop-shadow(0 14px 16px rgba(22,20,40,.18));transform:rotate(-2deg)}
.pg-cat__mascwrap{display:block}
.pg-cat__chips{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.pg-cat__chip{background:#fff;border:1px solid var(--line);border-radius:12px;padding:7px 14px;
  font-family:'Anton',Impact;font-size:15px;color:var(--ink);letter-spacing:.03em;
  box-shadow:0 2px 0 rgba(22,38,74,.08);display:flex;flex-direction:column;align-items:center;gap:1px}
.pg-cat__chip small{font-family:'PG Mono',monospace;font-size:8.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--mut)}
@media(max-width:820px){
  .pg-cat__mapimg{max-height:170px}
  .pg-cat__vis{padding:2px 0 4px}
}

/* En-tete v3 des rayons sans carte : le best-seller seul, detoure, sur son
   halo, plaque Nr et nom. La mascotte n avait rien a faire la (Julien). */
.pg-cat__star{position:relative;display:flex;align-items:center;justify-content:center;
  min-height:250px;width:100%;text-decoration:none}
.pg-cat__starhalo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:240px;height:240px;border-radius:999px;background:var(--pt,#8C7BF0);opacity:.16}
.pg-cat__starhalo::after{content:"";position:absolute;inset:-18px;border:1.5px dashed var(--pt,#8C7BF0);
  border-radius:999px;opacity:.5}
.pg-cat__starimg{position:relative;z-index:2;max-height:240px;width:auto!important;height:auto}
.pg-cat__star::after{content:"";position:absolute;left:50%;bottom:8px;transform:translateX(-50%);
  width:46%;height:16px;background:radial-gradient(ellipse at center,rgba(22,20,40,.28),transparent 70%);z-index:1}
.pg-cat__star:hover .pg-cat__starimg{transform:translateY(-5px);transition:transform .2s}
.pg-cat__starplate{position:absolute;left:6%;top:8%;z-index:3;background:var(--ink);color:#fff;
  border-radius:10px;padding:6px 11px;display:flex;flex-direction:column;align-items:center;line-height:1}
.pg-cat__starplate small{font-family:'PG Mono',monospace;font-size:8px;letter-spacing:.18em;color:#9990AE}
.pg-cat__starplate b{font-family:'Anton',Impact;font-weight:400;font-size:19px;color:var(--yel)}
.pg-cat__starnom{position:absolute;right:4%;bottom:12%;z-index:3;background:var(--ink);color:#FFF6E6;
  font-family:'Anton',Impact;font-size:14px;letter-spacing:.03em;padding:6px 12px;border-radius:9px}
@media(max-width:820px){
  .pg-cat__star{min-height:190px}
  .pg-cat__starimg{max-height:180px}
  .pg-cat__starhalo{width:180px;height:180px}
}

/* ================================================================
   En-tete de categorie : la couche d animation (demande Julien).
   Transform et opacity uniquement : zero CLS, zero cout de layout.
   ================================================================ */
.pg-cat__d--court{-webkit-line-clamp:9}

/* le visuel flotte, son ombre au sol respire a contretemps */
@keyframes pg-cat-float{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(-2deg) translateY(-9px)}}
.pg-cat__mapimg{animation:pg-cat-float 6s ease-in-out infinite}
@keyframes pg-cat-float2{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.pg-cat__starimg{animation:pg-cat-float2 5.2s ease-in-out infinite}
.pg-cat__star:hover .pg-cat__starimg{animation-play-state:paused}

/* l anneau pointille tourne lentement, le halo respire */
@keyframes pg-cat-spin{to{transform:rotate(360deg)}}
.pg-cat__starhalo::after{animation:pg-cat-spin 28s linear infinite}
@keyframes pg-cat-breathe{0%,100%{opacity:.16}50%{opacity:.26}}
.pg-cat__starhalo{animation:pg-cat-breathe 5.2s ease-in-out infinite}
@keyframes pg-cat-halo{0%,100%{opacity:.28}50%{opacity:.44}}
.pg-cat__halo{animation:pg-cat-halo 6.5s ease-in-out infinite}

/* un balayage de scan traverse le visuel, comme sur la fiche */
.pg-cat__vis::before{content:"";position:absolute;left:4%;right:4%;top:6%;height:2px;z-index:4;
  background:linear-gradient(90deg,transparent,var(--t),transparent);opacity:0;
  animation:pg-cat-scan 7.5s ease-in-out infinite;pointer-events:none}
@keyframes pg-cat-scan{0%,54%{opacity:0;top:6%}58%{opacity:.8}90%{opacity:.8;top:90%}96%,100%{opacity:0;top:92%}}

/* chips et plaques : entree en cascade au chargement */
@keyframes pg-cat-pop{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.pg-cat__chip{animation:pg-cat-pop .5s .2s ease-out backwards}
.pg-cat__chip + .pg-cat__chip{animation-delay:.38s}
.pg-cat__starplate,.pg-cat__starnom{animation:pg-cat-pop .5s .5s ease-out backwards}
.pg-cat__starnom{animation-delay:.65s}

/* le point du kicker bat comme un signal */
@keyframes pg-cat-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}
.pg-cat__pt{animation:pg-cat-dot 2.4s ease-in-out infinite}

/* les particules du bloc sont un peu plus presentes ici */
.pg-cat .pg-fx i{animation-duration:2.8s}

@media(prefers-reduced-motion:reduce){
  .pg-cat__mapimg,.pg-cat__starimg,.pg-cat__starhalo,.pg-cat__starhalo::after,
  .pg-cat__halo,.pg-cat__vis::before,.pg-cat__chip,.pg-cat__starplate,
  .pg-cat__starnom,.pg-cat__pt{animation:none}
}

/* ================================================================
   AMBIANCES PAR TYPE, INTENSITE x2 (demande Julien) : 14 particules
   par scene au lieu de 8, pics d opacite plus francs, eclairs plus
   nerveux. Toujours transform + opacity, toujours reduced-motion.
   ================================================================ */
.pg-fx i:nth-child(9){left:12%;top:36%;animation-delay:.6s}
.pg-fx i:nth-child(10){left:38%;top:64%;animation-delay:1s}
.pg-fx i:nth-child(11){left:52%;top:40%;animation-delay:1.4s}
.pg-fx i:nth-child(12){left:63%;top:82%;animation-delay:1.8s}
.pg-fx i:nth-child(13){left:74%;top:38%;animation-delay:2.2s}
.pg-fx i:nth-child(14){left:91%;top:66%;animation-delay:2.6s}
[data-type="gras"] .pg-fx i:nth-child(n+9),[data-type="is"] .pg-fx i:nth-child(n+9),
[data-type="sten"] .pg-fx i:nth-child(n+9){top:-3%}

/* particules par defaut : plus visibles, plus de course */
@keyframes pgfx{0%{opacity:0;transform:translateY(0) scale(.65)}18%{opacity:.85}
  100%{opacity:0;transform:translateY(-135px) scale(.2)}}

/* desynchronisation : trois vitesses qui ne retombent jamais ensemble */
.pg-fx i:nth-child(2n){animation-duration:3.9s}
.pg-fx i:nth-child(3n){animation-duration:2.6s}
.pg-fx i:nth-child(5n){animation-duration:4.6s}

/* EL : deux fois plus d eclairs, plus grands, halo plus fort */
[data-type="el"] .pg-fx i{height:34px;box-shadow:0 0 16px var(--t),0 0 4px #fff;
  animation-duration:1.8s}
[data-type="el"] .pg-fx i:nth-child(2n){animation-duration:2.4s;height:22px}
[data-type="el"] .pg-fx i:nth-child(3n){animation-duration:2.9s}

/* ELD : braises plus vives */
[data-type="eld"] .pg-fx i{box-shadow:0 0 10px rgba(255,170,80,.65)}
[data-type="eld"] .pg-fx i:nth-child(2n){animation-duration:2.1s}
[data-type="eld"] .pg-fx i:nth-child(3n){animation-duration:3.2s}

/* VATTEN : bulles de trois tailles */
[data-type="vatten"] .pg-fx i:nth-child(2n){width:9px;height:9px;animation-duration:2.7s}
[data-type="vatten"] .pg-fx i:nth-child(3n){width:18px;height:18px;animation-duration:4.2s}

/* GRAS : feuilles de deux gabarits */
[data-type="gras"] .pg-fx i:nth-child(2n){width:11px;height:7px;animation-duration:4.2s}
[data-type="gras"] .pg-fx i:nth-child(3n){animation-duration:6.4s}

/* PSYKISK et SPOKE : presences plus marquees */
[data-type="psykisk"] .pg-fx i:nth-child(2n){width:56px;height:56px}
[data-type="spoke"] .pg-fx i:nth-child(2n){animation-duration:5.4s}

/* Le raccourci animation: des blocs de type REINITIALISAIT les delais :
   toutes les particules bougeaient en même temps, une fraction de seconde,
   puis rien. L echelle de delais est re-affirmee ici, apres tous les blocs,
   avec une specificite superieure : chaque type retrouve sa pluie continue. */
[data-type] .pg-fx i:nth-child(1){animation-delay:0s}
[data-type] .pg-fx i:nth-child(2){animation-delay:.35s}
[data-type] .pg-fx i:nth-child(3){animation-delay:.7s}
[data-type] .pg-fx i:nth-child(4){animation-delay:1.05s}
[data-type] .pg-fx i:nth-child(5){animation-delay:1.4s}
[data-type] .pg-fx i:nth-child(6){animation-delay:1.75s}
[data-type] .pg-fx i:nth-child(7){animation-delay:2.1s}
[data-type] .pg-fx i:nth-child(8){animation-delay:2.45s}
[data-type] .pg-fx i:nth-child(9){animation-delay:2.8s}
[data-type] .pg-fx i:nth-child(10){animation-delay:3.15s}
[data-type] .pg-fx i:nth-child(11){animation-delay:3.5s}
[data-type] .pg-fx i:nth-child(12){animation-delay:3.85s}
[data-type] .pg-fx i:nth-child(13){animation-delay:4.2s}
[data-type] .pg-fx i:nth-child(14){animation-delay:4.55s}

/* L eclair : double flash, fenetre visible trois fois plus longue */
@keyframes pg-bolt{0%,68%{opacity:0}71%{opacity:1;transform:scaleY(1) skewX(-14deg)}
  78%{opacity:.25}81%{opacity:1;transform:scaleY(.72) skewX(10deg)}
  90%{opacity:.85;transform:scaleY(.9) skewX(-6deg)}100%{opacity:0}}

/* EL, deuxieme passe : la barre jaune 3px etait invisible sur le fond creme
   du rayon Pikachu. Vraie forme d eclair, or profond, lueur, bien visible. */
[data-type="el"] .pg-fx i{width:16px;height:30px;border-radius:0;
  background:linear-gradient(160deg,#FFE97A 20%,#E8A800 80%);
  clip-path:polygon(58% 0,10% 56%,42% 56%,22% 100%,90% 38%,55% 38%,82% 0);
  box-shadow:none;filter:drop-shadow(0 0 7px rgba(242,180,20,.85))}
[data-type="el"] .pg-fx i:nth-child(2n){width:11px;height:21px}


/* ================================================================
   PANIER DRAWER + RECHERCHE + NOTICES + CAISSE (pattern Squishy)
   ================================================================ */

/* -- bouton recherche du header -- */
.pg-hd__searchbtn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;
  background:#fff;border:1px solid var(--line);border-radius:999px;color:var(--ink);cursor:pointer;
  flex:0 0 auto;transition:border-color .15s,transform .15s}
.pg-hd__searchbtn:hover{border-color:var(--yel);transform:translateY(-1px)}
@media(max-width:860px){.pg-hd__searchbtn{order:2;width:44px;height:44px;border-radius:12px}
  .pg-hd__cart{order:2;margin-left:auto}}

/* -- panneau recherche -- */
.pg-search{position:sticky;top:64px;z-index:89;background:var(--pap);border-bottom:1px solid var(--line);
  box-shadow:0 14px 30px rgba(22,38,74,.10)}
.pg-search__form{max-width:760px;margin:0 auto;display:flex;gap:10px;padding:14px 16px;align-items:center}
.pg-search__form input[type=search]{flex:1;height:48px;border:1px solid var(--line);border-radius:999px;
  padding:0 20px;font-size:15px;font-family:'Archivo';background:#fff;outline:none}
.pg-search__form input[type=search]:focus{border-color:var(--yel);box-shadow:0 0 0 3px rgba(242,209,76,.25)}
.pg-search__go{height:48px;padding:0 22px;border:0;border-radius:999px;background:var(--yel);color:var(--ink);
  font-weight:700;font-size:14px;cursor:pointer;box-shadow:0 2px 0 #D9A312}
.pg-search__close{width:40px;height:40px;border:1px solid var(--line);border-radius:999px;background:#fff;
  font-size:20px;line-height:1;cursor:pointer;color:var(--ink2)}
.pg-search__sugg{max-width:760px;margin:0 auto;padding:0 16px 14px}
.pg-search__item{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:12px;
  text-decoration:none;color:inherit}
.pg-search__item:hover{background:#fff}
.pg-search__img{flex:0 0 46px;height:46px;display:flex;align-items:center;justify-content:center}
.pg-search__img img{max-width:46px;max-height:46px;mix-blend-mode:multiply}
.pg-search__name{flex:1;font-weight:600;font-size:14.5px;color:var(--ink)}
.pg-search__name em{font-family:'PG Mono',monospace;font-style:normal;font-size:10px;color:var(--mut);margin-left:6px}
.pg-search__price{font-family:'Anton',Impact;font-size:15px;color:var(--ink)}

/* -- notices Woo enfin visibles, aux couleurs du site -- */
.pg-notices{max-width:1180px;margin:14px auto 0;padding:0 16px}
.pg-notices .woocommerce-message,.pg-notices .woocommerce-info,.pg-notices .woocommerce-error li,
.woocommerce-cart .woocommerce-message,.woocommerce-cart .woocommerce-info{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);
  border-left:5px solid #6FBF73;border-radius:12px;padding:13px 16px;margin:0 0 10px;list-style:none;
  font-size:14px;color:var(--ink);box-shadow:0 2px 8px rgba(22,38,74,.06)}
.pg-notices .woocommerce-error li{border-left-color:var(--cor)}
.pg-notices .woocommerce-error{list-style:none;margin:0;padding:0}
.pg-notices .woocommerce-message .button,.woocommerce-cart .woocommerce-message .button{
  order:2;margin-left:auto;background:var(--yel);color:var(--ink);border-radius:999px;padding:8px 16px;
  font-weight:700;font-size:13px;text-decoration:none;border:0}

/* -- drawer varukorg -- */
.pg-dw{position:fixed;inset:0;z-index:120}
.pg-dw__overlay{position:absolute;inset:0;background:rgba(12,18,40,.5);opacity:0;transition:opacity .3s}
.pg-dw.is-open .pg-dw__overlay{opacity:1}
.pg-dw__panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,94vw);background:var(--pap);
  display:flex;flex-direction:column;box-shadow:-18px 0 46px rgba(10,16,38,.3);
  transform:translateX(102%);transition:transform .32s cubic-bezier(.2,.8,.3,1)}
.pg-dw.is-open .pg-dw__panel{transform:none}
.pg-dw__top{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;
  border-bottom:1px solid var(--line);background:#fff}
.pg-dw__title{font-family:'Anton',Impact;font-size:19px;color:var(--ink);letter-spacing:.02em}
.pg-dw__close{width:38px;height:38px;border:1px solid var(--line);border-radius:999px;background:#fff;
  font-size:20px;line-height:1;cursor:pointer;color:var(--ink2)}
.pg-dw__inner{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:16px 18px}
.pg-dw__ship{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:14px}
.pg-dw__ship.is-done{border-color:#6FBF73}
.pg-dw__shiptxt{margin:0 0 8px;font-size:13.5px;color:var(--ink2)}
.pg-dw__shiptxt b{color:var(--ink)}
.pg-dw__track{display:block;height:8px;background:var(--pap2,#F1EAE0);border-radius:999px;overflow:hidden}
.pg-dw__track i{display:block;height:100%;background:linear-gradient(90deg,var(--yel),#E0A100);
  border-radius:999px;transition:width .4s ease}
.pg-dw__ship.is-done .pg-dw__track i{background:#6FBF73}
.pg-dw__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:14px;text-align:center;color:var(--ink2)}
.pg-dw__items{list-style:none;margin:0;padding:0}
.pg-dw__item{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);
  border-radius:12px;padding:10px;margin-bottom:10px}
.pg-dw__thumb{flex:0 0 56px}
.pg-dw__thumb img{width:56px;height:56px;object-fit:contain;mix-blend-mode:multiply}
.pg-dw__meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pg-dw__name{font-weight:700;font-size:14px;color:var(--ink);text-decoration:none}
.pg-dw__name:hover{text-decoration:underline}
.pg-dw__qp{font-size:12.5px;color:var(--ink2)}
.pg-dw__qp .woocommerce-Price-amount{font-weight:600}
.pg-dw__rm{flex:0 0 auto;width:30px;height:30px;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--line);border-radius:999px;color:var(--mut);text-decoration:none;font-size:16px}
.pg-dw__rm:hover{border-color:var(--cor);color:var(--cor)}
.pg-dw__foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.pg-dw__sub{display:flex;justify-content:space-between;align-items:center;font-size:14px;
  color:var(--ink2);margin-bottom:12px}
.pg-dw__sub b{font-family:'Anton',Impact;font-size:20px;color:var(--ink)}
.pg-dw__go{display:block;text-align:center;background:var(--cor);color:#fff;border-radius:999px;
  padding:14px;font-weight:700;font-size:15px;text-decoration:none;box-shadow:0 3px 0 #C63A26}
.pg-dw__go:active{transform:translateY(2px);box-shadow:0 1px 0 #C63A26}
.pg-dw__view{display:block;text-align:center;margin-top:10px;font-size:13px;color:var(--ink2)}
.pg-dw__trust{margin:12px 0 0;text-align:center;font-family:'PG Mono',monospace;font-size:9.5px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}

/* -- page panier habillee -- */
.woocommerce-cart .woocommerce{max-width:1180px;margin:0 auto;padding:0 16px}
.woocommerce-cart table.cart{border:0;width:100%}
.woocommerce-cart table.cart th{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--mut);border-bottom:1px solid var(--line);padding:10px 8px;text-align:left}
.woocommerce-cart table.cart td{padding:14px 8px;border-bottom:1px solid var(--line);vertical-align:middle}
.woocommerce-cart table.cart img{width:74px;height:74px;object-fit:contain;mix-blend-mode:multiply;border-radius:10px}
.woocommerce-cart table.cart .product-name a{font-weight:700;color:var(--ink);text-decoration:none;font-size:15px}
.woocommerce-cart table.cart .product-remove a{display:flex;align-items:center;justify-content:center;
  width:32px;height:32px;border:1px solid var(--line);border-radius:999px;color:var(--mut)!important;
  text-decoration:none;font-size:18px;background:#fff}
.woocommerce-cart table.cart .product-remove a:hover{border-color:var(--cor);color:var(--cor)!important;background:#fff}
.woocommerce-cart table.cart input.qty{height:42px;width:70px;text-align:center;border:1px solid var(--line);
  border-radius:999px;background:#fff;font-weight:700}
.woocommerce-cart table.cart td.actions{padding-top:18px}
.woocommerce-cart table.cart td.actions .coupon input.input-text{height:44px;border:1px solid var(--line);
  border-radius:999px;padding:0 16px;background:#fff;margin-right:8px}
.woocommerce-cart .button,.woocommerce-cart button.button{background:var(--ink);color:#fff;border:0;
  border-radius:999px;padding:12px 22px;font-weight:700;cursor:pointer}
.woocommerce-cart .cart_totals{width:100%;background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:20px 22px;box-shadow:0 2px 10px rgba(22,38,74,.06)}
.woocommerce-cart .cart_totals h2{font-family:'Anton',Impact;font-weight:400;font-size:20px;margin:0 0 12px;color:var(--ink)}
.woocommerce-cart .cart_totals table{width:100%}
.woocommerce-cart .cart_totals th{text-align:left;font-size:13.5px;color:var(--ink2);padding:8px 0}
.woocommerce-cart .cart_totals td{text-align:right;padding:8px 0;font-weight:600;color:var(--ink)}
.woocommerce-cart .cart_totals .order-total td{font-family:'Anton',Impact;font-size:19px}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{display:block;width:100%;text-align:center;
  background:var(--cor)!important;color:#fff!important;border-radius:999px!important;padding:15px!important;
  font-weight:700!important;font-size:16px!important;box-shadow:0 3px 0 #C63A26;margin-top:8px}
@media(min-width:900px){
  .woocommerce-cart .woocommerce{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;align-items:start}
  .woocommerce-cart .woocommerce-cart-form{grid-column:1}
  .woocommerce-cart .cart-collaterals{grid-column:2;position:sticky;top:84px}
  .woocommerce-cart .pg-frakt,.woocommerce-cart .woocommerce-notices-wrapper{grid-column:1 / -1}
}
@media(max-width:640px){
  .woocommerce-cart table.cart thead{display:none}
  .woocommerce-cart table.cart td{display:block;text-align:right;border:0;padding:6px 8px}
  .woocommerce-cart table.cart tr{display:block;background:#fff;border:1px solid var(--line);
    border-radius:14px;margin-bottom:12px;padding:10px}
  .woocommerce-cart table.cart td.product-thumbnail{float:left}
}

/* -- caisse habillee -- */
.woocommerce-checkout .woocommerce{max-width:1180px;margin:0 auto;padding:0 16px}
.woocommerce-checkout form.checkout{display:grid;gap:28px}
@media(min-width:1000px){
  .woocommerce-checkout form.checkout{grid-template-columns:1.4fr 1fr;align-items:start}
  .woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{grid-column:2}
  .woocommerce-checkout #customer_details{grid-column:1;grid-row:1 / span 3}
  .woocommerce-checkout #order_review{position:sticky;top:84px}
}
.woocommerce-checkout #customer_details h3,.woocommerce-checkout #order_review_heading{
  font-family:'Anton',Impact;font-weight:400;font-size:20px;color:var(--ink);margin:0 0 14px}
.woocommerce-checkout .woocommerce-billing-fields,.woocommerce-checkout .woocommerce-additional-fields{
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;margin-bottom:20px;
  box-shadow:0 2px 10px rgba(22,38,74,.06)}
.woocommerce-checkout .form-row label{font-size:13px;font-weight:600;color:var(--ink2);margin-bottom:4px;display:block}
.woocommerce-checkout .form-row input.input-text,.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select{width:100%;height:46px;border:1px solid var(--line);border-radius:12px;
  padding:0 14px;background:#FFFDF8;font-family:'Archivo';font-size:14.5px}
.woocommerce-checkout .form-row textarea{height:90px;padding:12px 14px}
.woocommerce-checkout .form-row input.input-text:focus,.woocommerce-checkout .form-row select:focus{
  outline:none;border-color:var(--yel);box-shadow:0 0 0 3px rgba(242,209,76,.22)}
.woocommerce-checkout #order_review{background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:20px 22px;box-shadow:0 2px 10px rgba(22,38,74,.06)}
.woocommerce-checkout table.shop_table{width:100%;border:0}
.woocommerce-checkout table.shop_table th{text-align:left;font-size:13.5px;color:var(--ink2);padding:8px 0}
.woocommerce-checkout table.shop_table td{text-align:right;padding:8px 0;font-size:14px;color:var(--ink)}
.woocommerce-checkout table.shop_table .order-total td{font-family:'Anton',Impact;font-size:19px}
.woocommerce-checkout #payment{background:transparent;border-top:1px solid var(--line);margin-top:10px;padding-top:12px}
.woocommerce-checkout #payment .wc_payment_method label{font-weight:700;color:var(--ink)}
.woocommerce-checkout #place_order{display:block;width:100%;background:var(--cor)!important;color:#fff!important;
  border:0!important;border-radius:999px!important;padding:15px!important;font-weight:700!important;
  font-size:16px!important;box-shadow:0 3px 0 #C63A26;cursor:pointer}
.woocommerce-checkout #place_order:active{transform:translateY(2px);box-shadow:0 1px 0 #C63A26}
.pg-ko__trust{margin:12px 0 0;text-align:center;font-family:'PG Mono',monospace;font-size:9.5px;
  letter-spacing:.09em;text-transform:uppercase;color:var(--mut);line-height:1.8}

/* steppers du drawer + code promo caisse */
.pg-dw__row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}
.pg-dw__qty{display:inline-flex;align-items:center;gap:2px;background:var(--pap,#FBF7EF);
  border:1px solid var(--line);border-radius:999px;padding:2px}
.pg-dw__qbtn{width:26px;height:26px;border:0;border-radius:999px;background:#fff;color:var(--ink);
  font-size:15px;line-height:1;cursor:pointer;box-shadow:0 1px 2px rgba(22,38,74,.10)}
.pg-dw__qbtn:hover{background:var(--yel)}
.pg-dw__qbtn:disabled{opacity:.45;cursor:wait}
.pg-dw__qty b{min-width:22px;text-align:center;font-size:13.5px}
.pg-ko__coupon{margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.pg-ko__coupontoggle{background:none;border:0;padding:0;color:var(--ink2);font-size:13.5px;
  text-decoration:underline;cursor:pointer;font-family:'Archivo'}
.pg-ko__coupontoggle:hover{color:var(--ink)}
.pg-ko__couponform{display:flex;gap:8px;margin-top:10px}
.pg-ko__couponform input{flex:1;height:42px;border:1px solid var(--line);border-radius:999px;
  padding:0 14px;background:#FFFDF8;font-family:'Archivo';font-size:14px;text-transform:uppercase}
.pg-ko__couponform input:focus{outline:none;border-color:var(--yel);box-shadow:0 0 0 3px rgba(242,209,76,.22)}
.pg-ko__couponapply{height:42px;padding:0 18px;border:0;border-radius:999px;background:var(--ink);
  color:#fff;font-weight:700;font-size:13px;cursor:pointer}
.pg-ko__couponapply:disabled{opacity:.5;cursor:wait}
.pg-ko__couponmsg{margin:8px 0 0;font-size:12.5px;color:var(--cor)}
.pg-ko__couponmsg.is-ok{color:#3E8E4B}

/* ==================================================================
   PAGES LEGALES + CONTACT (2026-07-26)
   Gabarits page-pg-legal.php et page-pg-kontakt.php. Le hero reutilise
   .pg-cat, on ne style ici que le corps et la colonne laterale.
   ================================================================== */
.pg-lg__grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:38px;align-items:start}
@media(max-width:860px){.pg-lg__grid{grid-template-columns:1fr;gap:24px}}
.pg-lg__side{position:sticky;top:86px;display:flex;flex-direction:column;gap:16px}
@media(max-width:860px){.pg-lg__side{position:static;order:2}}
.pg-lg__lbl{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.15em;text-transform:uppercase;
  color:var(--mut);margin:0 0 10px}
.pg-lg__toc{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.pg-lg__toc ol{list-style:none;margin:0;padding:0;counter-reset:pglg}
.pg-lg__toc li{counter-increment:pglg;border-top:1px solid var(--line)}
.pg-lg__toc li:first-child{border-top:0}
.pg-lg__toc a{display:flex;gap:9px;align-items:baseline;padding:7px 0;font-size:12.5px;font-weight:600;
  color:var(--ink2);text-decoration:none}
.pg-lg__toc a::before{content:counter(pglg,decimal-leading-zero);font-family:'PG Mono',monospace;
  font-size:10px;color:var(--cie)}
.pg-lg__toc a:hover{color:var(--ink)}
.pg-lg__help{background:var(--yels);border-radius:14px;padding:16px 18px}
.pg-lg__help b{font-size:14px;color:var(--ink)}
.pg-lg__help p{font-size:12.5px;color:#6B4E00;margin:6px 0 12px}
.pg-lg__help .pg-btn{font-size:12.5px;padding:10px 18px}
.pg-lg__body{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px 34px 36px;max-width:780px}
@media(max-width:860px){.pg-lg__body{padding:22px 18px 26px}}
.pg-lg__body>p:first-child{font-size:15.5px;line-height:1.6;color:var(--ink2);
  border-left:3px solid var(--yel);padding-left:14px}
.pg-lg__body h2{font-family:'Anton',Impact;font-weight:400;font-size:21px;color:var(--ink);
  margin:34px 0 12px;padding-top:8px;scroll-margin-top:90px;letter-spacing:.01em;line-height:1.15}
.pg-lg__body h2::after{content:"";display:block;width:44px;height:3px;border-radius:3px;
  background:var(--yel);margin-top:8px}
.pg-lg__body p,.pg-lg__body li{font-size:14px;line-height:1.65;color:var(--ink2)}
.pg-lg__body strong{color:var(--ink)}
.pg-lg__body ul,.pg-lg__body ol{padding-left:20px;margin:10px 0}
.pg-lg__body li{margin:6px 0}
.pg-lg__body a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--yel);
  text-decoration-thickness:2px;text-underline-offset:2px}
.pg-lg__links{margin-top:34px}
.pg-lg__links div{display:flex;gap:8px;flex-wrap:wrap}
.pg-lg__links a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 16px;
  font-size:12.5px;font-weight:700;color:var(--ink2);text-decoration:none}
.pg-lg__links a:hover{border-color:var(--yel);color:var(--ink)}

/* --- la page contact --- */
.pg-kt__grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:30px;align-items:start}
@media(max-width:920px){.pg-kt__grid{grid-template-columns:1fr}}
.pg-kt__form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 30px 30px}
@media(max-width:640px){.pg-kt__form{padding:20px 16px 24px}}
.pg-kt__side{display:flex;flex-direction:column;gap:14px}
.pg-kt__card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px}
.pg-kt__card--id{background:var(--pap2)}
.pg-kt__card p{font-size:13px;line-height:1.55;color:var(--ink2);margin:0}
.pg-kt__mail{font-weight:800;font-size:14.5px;color:var(--ink);text-decoration:underline;
  text-decoration-color:var(--yel);text-decoration-thickness:2px;word-break:break-all}
.pg-kt__note{font-size:11.5px!important;color:var(--mut)!important;margin-top:6px!important}
.pg-kt__quick{list-style:none;margin:0;padding:0}
.pg-kt__quick li{border-top:1px solid var(--line)}
.pg-kt__quick li:first-child{border-top:0}
.pg-kt__quick a{display:block;padding:10px 0;text-decoration:none}
.pg-kt__quick b{display:block;font-size:13px;color:var(--ink)}
.pg-kt__quick span{display:block;font-size:11.5px;color:var(--mut);margin-top:2px}
.pg-kt__quick a:hover b{color:var(--cor)}

/* le formulaire CF7 aux couleurs du site */
.pg-kt .wpcf7 label{display:block;font-weight:700;font-size:12.5px;color:var(--ink);margin:0 0 14px}
.pg-kt .wpcf7 input[type=text],.pg-kt .wpcf7 input[type=email],.pg-kt .wpcf7 select,.pg-kt .wpcf7 textarea{
  display:block;width:100%;margin-top:6px;background:var(--pap);border:1px solid var(--line);border-radius:10px;
  padding:12px 14px;font-family:'Archivo',sans-serif;font-size:14px;color:var(--ink)}
.pg-kt .wpcf7 input:focus,.pg-kt .wpcf7 select:focus,.pg-kt .wpcf7 textarea:focus{
  outline:2px solid var(--yel);outline-offset:0;border-color:var(--yel);background:#fff}
.pg-kt .wpcf7 textarea{min-height:150px;resize:vertical}
.pg-kt .wpcf7 select{height:47px;line-height:1.2;-webkit-appearance:none;appearance:none;padding-right:40px;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2316264A' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center}
.pg-kt .wpcf7 input[type=submit]{background:var(--cor);color:#fff;border:0;border-radius:999px;font-weight:800;
  font-size:14.5px;padding:14px 30px;box-shadow:0 3px 0 #C63A26;cursor:pointer}
.pg-kt .wpcf7 input[type=submit]:active{transform:translateY(2px);box-shadow:0 1px 0 #C63A26}
.pg-kt .wpcf7-not-valid-tip{font-size:11.5px;color:var(--cor);margin-top:4px}
.pg-kt .wpcf7 form .wpcf7-response-output{margin:16px 0 0;padding:12px 16px;border-radius:10px;
  border:1px solid var(--line);font-size:13px}
.pg-kt .wpcf7 form.sent .wpcf7-response-output{border-color:var(--men);background:#E8FAF4;color:#0E6B54}
.pg-kt .wpcf7 form.invalid .wpcf7-response-output,.pg-kt .wpcf7 form.failed .wpcf7-response-output{
  border-color:var(--cor);background:#FDEDEA;color:#8C2B1D}

/* ==================================================================
   FICHE PRODUIT V2 "DROP" (2026-07-26)
   Reference : landing sombre immersive partagee par Julien. Zone sombre
   navy (hero, marquee, analys, dexdata) puis retour au creme. Que des
   transforms et opacites, pas de filtre sur les grandes images (le
   drop-shadow avait coute 3,7 s de LCP, lecon retenue).
   ================================================================== */
body.single-product{overflow-x:clip}
.pgx-full{width:100vw;margin-left:calc(50% - 50vw)}
.pgx-k{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(245,239,230,.62);margin:0 0 14px}
.pgx-k i{display:inline-block;width:22px;height:2px;background:var(--t);vertical-align:middle;
  margin-right:10px;border-radius:2px}

/* ------------------------------ HERO ------------------------------ */
/* Blocksy pose 60px de padding-top sur son conteneur : la zone sombre
   doit toucher le header, on le retire sur les fiches. */
body.single-product .ct-container-full{padding-top:0}
.pgx-hero{position:relative;overflow:hidden;background:linear-gradient(175deg,#0D1830 0%,#111F3E 58%,#0D1830 100%);
  color:#F5EFE6}
.pgx-hero__wm{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);z-index:0;
  font-family:'Anton',Impact;font-size:clamp(110px,20vw,300px);line-height:.8;white-space:nowrap;
  color:transparent;-webkit-text-stroke:2px rgba(245,239,230,.06);pointer-events:none;user-select:none}
.pgx-hero__grid{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:44px 20px 66px;
  display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:26px;align-items:center;
  min-height:calc(100svh - 96px)}
.pgx-hero__txt{max-width:520px}
.pgx-hero__h{font-family:'Anton',Impact;font-weight:400;font-size:clamp(44px,6.6vw,84px);
  line-height:.94;color:#F5EFE6;margin:0}
.pgx-hero__h span{display:block;font-size:.3em;font-family:'PG Mono',monospace;letter-spacing:.12em;
  text-transform:uppercase;color:rgba(245,239,230,.55);margin-top:10px}
.pgx-hero__chips{margin:16px 0 0;padding:0}
.pgx-hero__lede{font-size:15px;line-height:1.6;color:rgba(245,239,230,.78);max-width:46ch;
  border-left:3px solid var(--yel);padding-left:13px;margin:16px 0 0}
.pgx-hero__lede p{margin:0;color:inherit;font-size:inherit}
.pgx-hero__lede ul{list-style:none;margin:0;padding:0}
.pgx-hero__lede li{margin:5px 0;font-size:14px;padding-left:16px;position:relative}
.pgx-hero__lede li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;
  border-radius:999px;background:var(--t)}
.pgx-hero__lede li strong,.pgx-hero__lede li b{color:#F5EFE6}
.pgx-hero__buy{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap;margin-top:26px}
.pgx-hero__buy .pg-price{color:#F5EFE6}
.pgx-hero__buy .pg-price del{color:rgba(245,239,230,.45)}
.pgx-hero__buy .pg-price ins{color:#FF7A5F}
.pgx-hero__buy .quantity input{border-color:transparent}
.pgx-hero__buy .single_add_to_cart_button{box-shadow:0 3px 0 #C63A26,0 0 34px rgba(240,82,60,.35)}
.pgx-hero__ship{font-size:12px;font-weight:600;color:#F5D98C;margin:14px 0 0}
.pgx-hero__ship b{color:#FFC72C}

/* la scene de scan devient un plateau nu sur le fond sombre */
.pgx-hero__vis{position:relative}
.pgx-hero .pg-stage{background:transparent;border:0;border-radius:0;overflow:visible;
  min-height:min(60vh,540px);padding:20px 56px}
.pgx-hero .pg-stage__glow{opacity:.5;width:min(70%,480px)}
.pgx-hero .pg-stage__img img.pg-cut{max-height:min(54vh,500px)}
.pgx-hero .pg-stage__img img:not(.pg-cut){background:#fff;border-radius:16px;padding:10px;
  mix-blend-mode:normal;max-height:min(48vh,430px);width:auto}
.pgx-hero .pg-stage__img::after{background:radial-gradient(ellipse at center,rgba(0,0,0,.55),transparent 70%)}
.pgx-hero .pg-fx i{box-shadow:0 0 14px var(--t)}
.pgx-hero .pg-stage__no small,.pgx-hero .pg-stage__no em{color:rgba(245,239,230,.5)}
.pgx-hero .pg-stage__no b{color:#F5EFE6}
.pgx-hero .pg-brk{opacity:.9}

/* pastilles de tailles, facon selecteur de la reference */
.pgx-hero__sizes{position:absolute;right:-6px;top:50%;transform:translateY(-50%);z-index:3;
  display:flex;flex-direction:column;align-items:center;gap:9px}
.pgx-hero__sizlbl,.pgx-hero__sizcm{font-family:'PG Mono',monospace;font-size:9px;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(245,239,230,.5)}
.pgx-siz{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;
  border:1.5px solid rgba(245,239,230,.25);color:rgba(245,239,230,.8);font-family:'PG Mono',monospace;
  font-size:12.5px;font-weight:500;text-decoration:none;transition:border-color .2s,color .2s,transform .2s}
a.pgx-siz:hover{border-color:#FFC72C;color:#FFC72C;transform:scale(1.08)}
.pgx-siz.is-on{border-color:var(--t);color:#F5EFE6;box-shadow:0 0 0 3px rgba(245,239,230,.08),0 0 22px var(--t)}
@media(max-width:1100px){
  .pgx-hero__sizes{position:static;transform:none;flex-direction:row;justify-content:center;margin-top:4px}
}

/* l invitation a descendre */
.pgx-hero__cue{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);z-index:2;
  display:flex;flex-direction:column;align-items:center;gap:7px;text-decoration:none;
  font-family:'PG Mono',monospace;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(245,239,230,.55)}
.pgx-hero__cue i{width:2px;height:18px;border-radius:2px;overflow:hidden;position:relative;
  background:rgba(245,239,230,.15)}
.pgx-hero__cue i::after{content:"";position:absolute;left:0;top:-8px;width:2px;height:8px;
  background:var(--yel);animation:pgxcue 1.6s ease-in-out infinite}
@keyframes pgxcue{0%{top:-8px}70%,100%{top:20px}}
.pgx-hero__cue:hover{color:#FFC72C}

@media(max-width:1023px){
  .pgx-hero__grid{grid-template-columns:1fr;gap:6px;min-height:0;padding:18px 16px 56px}
  .pgx-hero__vis{order:-1}
  .pgx-hero .pg-stage{min-height:0;padding:12px 10px 26px}
  .pgx-hero .pg-stage__img img.pg-cut{max-height:37vh}
  .pgx-hero__wm{font-size:clamp(90px,26vw,160px);top:22%}
  .pgx-hero__h{font-size:clamp(38px,11vw,54px)}
  .pgx-hero__cue{display:none}
}

/* ---------------------------- MARQUEE ----------------------------- */
.pgx-mq{background:#0B1530;border-top:1px solid rgba(245,239,230,.08);
  border-bottom:1px solid rgba(245,239,230,.08);overflow:hidden;padding:13px 0}
.pgx-mq__t{display:flex;gap:36px;width:max-content;white-space:nowrap;
  animation:pgxmq 30s linear infinite}
.pgx-mq__t span{font-family:'PG Mono',monospace;font-size:10.5px;letter-spacing:.18em;
  text-transform:uppercase;color:rgba(245,239,230,.6)}
.pgx-mq__t span i{display:inline-block;width:6px;height:6px;border-radius:999px;background:var(--t);
  margin-right:12px;vertical-align:middle}
@keyframes pgxmq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ------------------- ANALYS, scrollytelling epingle ---------------- */
.pgx-scan{background:linear-gradient(180deg,#0D1830 0%,#101F40 100%);color:#F5EFE6}
.pgx-scan__grid{max-width:1180px;margin:0 auto;padding:30px 20px;
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:30px}
.pgx-scan__stick{position:sticky;top:84px;align-self:start;
  height:calc(100svh - 104px);display:flex;flex-direction:column;padding-top:10px}
.pgx-scan__vis{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:0}
.pgx-scan__halo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(68%,420px);
  aspect-ratio:1;border-radius:999px;background:radial-gradient(circle,var(--t) 0%,rgba(13,24,48,0) 68%);
  opacity:.3}
.pgx-scan__ring{position:absolute;left:50%;top:50%;width:min(76%,470px);aspect-ratio:1;border-radius:999px;
  border:1.5px dashed rgba(245,239,230,.16);translate:-50% -50%;animation:pgxspin 70s linear infinite}
.pgx-scan__ring--2{width:min(92%,560px);border-color:rgba(245,239,230,.09);animation-duration:110s;
  animation-direction:reverse}
@keyframes pgxspin{to{rotate:360deg}}
.pgx-scan__img{position:relative;z-index:2;max-height:52vh;width:auto;
  transition:transform .7s cubic-bezier(.3,0,.2,1)}
.pgx-scan__img--cut{background:none;padding:0}
img.pgx-scan__img:not(.pgx-scan__img--cut){background:#fff;border-radius:16px;padding:10px}
.pgx-scan[data-step="2"] .pgx-scan__img{transform:scale(1.1) translateY(-3%)}
.pgx-scan[data-step="3"] .pgx-scan__img{transform:scale(1.04) rotate(-3deg)}

/* le callout : une plaque mono reliee par un trait, une par etape */
.pgx-co{position:absolute;z-index:3;font-family:'PG Mono',monospace;font-size:11.5px;letter-spacing:.08em;
  color:#F5EFE6;background:rgba(13,24,48,.85);border:1.5px solid var(--t);border-radius:8px;
  padding:8px 13px;opacity:0;transform:translateY(8px);transition:opacity .45s,transform .45s;
  pointer-events:none}
.pgx-co::after{content:"";position:absolute;top:50%;width:54px;height:1.5px;
  background:linear-gradient(90deg,var(--t),transparent)}
.pgx-co[data-for="1"]{left:2%;top:14%}
.pgx-co[data-for="1"]::after{left:100%}
.pgx-co[data-for="2"]{right:1%;top:46%}
.pgx-co[data-for="2"]::after{right:100%;background:linear-gradient(270deg,var(--t),transparent)}
.pgx-co[data-for="3"]{left:4%;bottom:10%}
.pgx-co[data-for="3"]::after{left:100%}
.pgx-scan[data-step="1"] .pgx-co[data-for="1"],
.pgx-scan[data-step="2"] .pgx-co[data-for="2"],
.pgx-scan[data-step="3"] .pgx-co[data-for="3"]{opacity:1;transform:none}

.pgx-scan__steps{padding:16vh 0 14vh}
.pgx-step{min-height:64vh;display:flex;flex-direction:column;justify-content:center;
  opacity:.28;transition:opacity .45s,transform .45s;transform:translateY(6px);max-width:400px}
.pgx-step.is-on{opacity:1;transform:none}
.pgx-step em{font-style:normal;font-family:'PG Mono',monospace;font-size:11px;letter-spacing:.2em;
  color:var(--t);margin-bottom:10px}
.pgx-step b{font-family:'Anton',Impact;font-weight:400;font-size:clamp(28px,3.6vw,44px);
  line-height:1;color:#F5EFE6;text-transform:uppercase;letter-spacing:.01em}
.pgx-step p{font-size:14.5px;line-height:1.65;color:rgba(245,239,230,.72);margin:14px 0 0}

@media(max-width:1023px){
  .pgx-scan__grid{grid-template-columns:1fr;gap:0;padding:22px 16px}
  .pgx-scan__stick{position:sticky;top:64px;height:46vh;z-index:2;
    background:linear-gradient(180deg,#0D1830 86%,rgba(13,24,48,0))}
  .pgx-scan__img{max-height:34vh}
  .pgx-co{font-size:10.5px;padding:6px 10px}
  .pgx-scan__steps{padding:6vh 0 8vh}
  .pgx-step{min-height:56vh;max-width:none}
}

/* --------------------------- DEXDATA ------------------------------ */
.pgx-dex{background:#0D1830;color:#F5EFE6;padding:56px 0 64px}
.pgx-dex__in{max-width:900px;margin:0 auto;padding:0 20px}
.pgx-dex__t div{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:baseline;gap:16px;
  padding:17px 0;border-bottom:1px solid rgba(245,239,230,.1)}
.pgx-dex__t div:first-child{border-top:1px solid rgba(245,239,230,.1)}
.pgx-dex__t span{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(245,239,230,.5)}
.pgx-dex__t b{font-family:'Anton',Impact;font-weight:400;font-size:clamp(22px,3.2vw,40px);
  line-height:1;color:#F5EFE6;letter-spacing:.01em}
.pgx-dex__accent{color:var(--t);text-shadow:0 0 26px var(--t)}
.pgx-dex__t b.pgx-dex__small{font-family:'Archivo',sans-serif;font-size:15px;font-weight:600;
  line-height:1.5;color:rgba(245,239,230,.85)}
.pgx-dex__bars{margin-top:34px}
/* jauges de mesure : .pgx-mb, car .pg-bar est deja la vieille barre fixe */
.pgx-mb{margin-bottom:14px}
.pgx-mb__t{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.pgx-mb__t b{font-size:13px;font-weight:700;color:#F5EFE6}
.pgx-mb__t em{font-style:normal;font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.1em;
  color:rgba(245,239,230,.5)}
.pgx-mb__tr{display:block;height:8px;background:rgba(245,239,230,.08);border-radius:999px;overflow:hidden}
.pgx-mb__tr i{display:block;height:100%;background:var(--t);border-radius:999px;box-shadow:0 0 12px var(--t)}
.pgx-mb__n{font-size:11px;color:rgba(245,239,230,.5);margin:0}
@media(max-width:640px){.pgx-dex__t div{grid-template-columns:104px minmax(0,1fr)}}

/* --------------- 03 STORLEK : la comparaison a l echelle ----------- */
/* --s = pixels par cm ; l humain fait 170cm, la peluche --h cm.
   Tout est ancre au sol, la peluche est le detoure (aucune marge). */
.pgx-size{background:#0D1830;color:#F5EFE6;padding:8px 0 66px;--s:2.2}
@media(max-width:640px){.pgx-size{--s:1.5}}
.pgx-size__in{max-width:900px;margin:0 auto;padding:0 20px}
.pgx-size__h{font-family:'Anton',Impact;font-weight:400;font-size:clamp(26px,4vw,44px);
  color:#F5EFE6;margin:0 0 34px;line-height:1}
.pgx-size__scene{position:relative;height:calc(190 * var(--s) * 1px);
  background:repeating-linear-gradient(to top,rgba(245,239,230,.045) 0 1px,transparent 1px calc(25 * var(--s) * 1px))}
.pgx-size__tick{position:absolute;left:0;right:0;bottom:calc(var(--cm) * var(--s) * 1px);
  border-top:1px dashed rgba(245,239,230,.14);pointer-events:none}
.pgx-size__tick em{position:absolute;right:0;top:-16px;font-style:normal;font-family:'PG Mono',monospace;
  font-size:10px;letter-spacing:.12em;color:rgba(245,239,230,.4)}
.pgx-size__ground{position:absolute;left:0;right:0;bottom:0;height:1.5px;background:rgba(245,239,230,.3)}
.pgx-size__stage{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;
  gap:clamp(30px,6vw,64px)}
.pgx-size__human{display:block;width:calc(44 * var(--s) * 1px);height:calc(170 * var(--s) * 1px);
  color:rgba(245,239,230,.16);flex:none}
.pgx-size__toy{position:relative;display:block;flex:none}
.pgx-size__toy img{display:block;height:calc(var(--h) * var(--s) * 1px);width:auto;max-width:none}
.pgx-size__cut{background:none;padding:0}
.pgx-size__toy img:not(.pgx-size__cut){mix-blend-mode:screen}
.pgx-size__toy::before{content:"";position:absolute;left:-16px;top:0;bottom:0;width:1.5px;
  background:var(--t);box-shadow:0 0 10px var(--t)}
.pgx-size__lbl{position:absolute;left:-16px;top:-26px;transform:translateX(-50%);
  font-family:'Anton',Impact;font-weight:400;font-size:17px;color:var(--t);
  text-shadow:0 0 18px var(--t);white-space:nowrap}
.pgx-size__leg{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.pgx-size__leg span{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.1em;
  text-transform:uppercase;color:rgba(245,239,230,.6);border:1px solid rgba(245,239,230,.16);
  border-radius:999px;padding:7px 13px}

/* ---------- UTVECKLINGSLINJE : chapitre sombre, rail unifie ---------- */
.pgx-evo{position:relative;overflow:hidden;margin-top:44px;padding:52px 0 56px;
  background:#0D1830;color:#F5EFE6}
.pgx-size+.pgx-evo,.pgx-evo+.pgx-typ{margin-top:0}
.pgx-evo__in{max-width:1180px;margin:0 auto;padding:0 16px;text-align:center}
.pgx-evo__h{font-family:'Anton',Impact;font-weight:400;font-size:clamp(30px,4.6vw,54px);
  line-height:1;color:#F5EFE6;margin:0}
.pgx-evo__rail{display:flex;gap:12px;margin-top:30px;overflow-x:auto;padding:4px 16px 14px;
  align-items:stretch;scrollbar-width:none;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.pgx-evo__rail:not(.is-scroll){justify-content:center}
.pgx-evo__rail::-webkit-scrollbar{display:none}
.pgx-evo__ar{align-self:center;flex:0 0 22px;height:2px;background:rgba(245,239,230,.25);position:relative}
.pgx-evo__ar::after{content:"";position:absolute;right:-1px;top:-4px;border-left:7px solid rgba(245,239,230,.25);
  border-top:5px solid transparent;border-bottom:5px solid transparent}
.pgx-evo__i{flex:0 0 152px;display:flex;flex-direction:column;background:rgba(245,239,230,.05);
  border:1px solid rgba(245,239,230,.12);border-radius:14px;padding:12px 10px 13px;
  text-decoration:none;transition:transform .2s,border-color .2s,background .2s}
a.pgx-evo__i:hover{transform:translateY(-4px);border-color:var(--t);background:rgba(245,239,230,.08)}
.pgx-evo__i.is-cur{border-color:var(--t);box-shadow:0 0 0 3px rgba(245,239,230,.08),0 0 24px var(--t)}
.pgx-evo__i--miss{border-style:dashed;opacity:.6}
.pgx-evo__m{display:flex;align-items:flex-end;justify-content:center;height:104px;margin-bottom:9px;
  position:relative}
.pgx-evo__m::after{content:"";position:absolute;left:50%;bottom:-2px;transform:translateX(-50%);
  width:64%;height:10px;background:radial-gradient(ellipse at center,rgba(0,0,0,.5),transparent 70%)}
.pgx-evo__m img{max-height:104px;width:auto!important;height:auto;position:relative;z-index:1}
.pgx-evo__cut{background:none;padding:0}
.pgx-evo__m img:not(.pgx-evo__cut){background:#fff;border-radius:10px;padding:4px;mix-blend-mode:normal}
.pgx-evo__m--tom{align-items:center}
.pgx-evo__m--tom::before{content:"?";font-family:'PG Mono',monospace;font-size:34px;
  color:rgba(245,239,230,.22)}
.pgx-evo__i b{display:block;font-family:'Anton',Impact;font-weight:400;font-size:14.5px;color:#F5EFE6;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pgx-evo__i em{display:block;font-family:'PG Mono',monospace;font-style:normal;font-size:9px;
  letter-spacing:.14em;color:rgba(245,239,230,.5);margin-top:3px;text-transform:uppercase}
.pgx-evo__p{display:block;font-size:12.5px;font-weight:700;color:#F5D98C;margin-top:5px}
.pgx-evo__p del{color:rgba(245,239,230,.4);font-weight:500;margin-right:4px}
.pgx-evo__p ins{text-decoration:none;color:#F5D98C}
.pgx-evo__badge{display:inline-block;align-self:center;font-family:'PG Mono',monospace;font-size:9px;
  letter-spacing:.14em;text-transform:uppercase;color:rgba(245,239,230,.65);
  border:1px solid rgba(245,239,230,.2);border-radius:999px;padding:3px 9px;margin-top:6px}
@media(max-width:640px){
  .pgx-evo{padding:38px 0 44px;margin-top:34px}
  .pgx-evo__i{flex:0 0 136px}
}

/* --------------- 04 TYP : le chapitre sombre du type --------------- */
.pgx-typ{position:relative;overflow:hidden;margin-top:44px;padding:58px 0 62px;
  background:#0D1830;color:#F5EFE6}
/* sans evolutions ni autres tailles, Typ suit directement Storlek :
   pas de liseré creme orphelin entre deux chapitres sombres */
.pgx-size+.pgx-typ{margin-top:0}
.pgx-typ::before{content:"";position:absolute;left:50%;top:-12%;transform:translateX(-50%);
  width:min(72%,760px);aspect-ratio:1.6;border-radius:999px;
  background:radial-gradient(ellipse,var(--t) 0%,rgba(13,24,48,0) 68%);opacity:.22;pointer-events:none}
.pgx-typ .pg-fx{position:absolute;inset:0;z-index:1;pointer-events:none}
.pgx-typ .pg-fx i{position:absolute;display:block}
.pgx-typ.is-idle .pg-fx i{animation-play-state:paused}
.pgx-typ__in{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:0 16px;text-align:center}
.pgx-typ__k{margin-bottom:18px}
.pgx-typ__k i{margin-right:0;margin-left:0}
.pgx-typ__h{font-family:'Anton',Impact,sans-serif;font-weight:400;text-transform:uppercase;
  font-size:clamp(54px,11vw,128px);line-height:.9;margin:0;color:var(--t);
  text-shadow:0 0 70px var(--t),0 3px 0 rgba(0,0,0,.35)}
.pgx-typ__sub{font-family:'PG Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(245,239,230,.55);margin:14px 0 0}
.pgx-typ__rail{display:flex;gap:12px;margin-top:34px;overflow-x:auto;padding:4px 16px 14px;
  scroll-snap-type:x proximity;scrollbar-width:none;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.pgx-typ__rail:not(.is-scroll){justify-content:center}
.pgx-typ__rail::-webkit-scrollbar{display:none}
.pgx-typ__i{flex:0 0 148px;scroll-snap-align:center;background:rgba(245,239,230,.05);
  border:1px solid rgba(245,239,230,.12);border-radius:14px;padding:12px 10px 13px;
  text-decoration:none;transition:transform .2s,border-color .2s,background .2s}
.pgx-typ__i:hover{transform:translateY(-4px);border-color:var(--t);background:rgba(245,239,230,.08)}
.pgx-typ__m{display:flex;align-items:flex-end;justify-content:center;height:104px;margin-bottom:9px;
  position:relative}
.pgx-typ__m::after{content:"";position:absolute;left:50%;bottom:-2px;transform:translateX(-50%);
  width:64%;height:10px;background:radial-gradient(ellipse at center,rgba(0,0,0,.5),transparent 70%)}
.pgx-typ__m img{max-height:104px;width:auto!important;height:auto;position:relative;z-index:1}
.pgx-typ__cut{background:none;padding:0}
.pgx-typ__m img:not(.pgx-typ__cut){background:#fff;border-radius:10px;padding:4px;mix-blend-mode:normal}
.pgx-typ__i b{display:block;font-family:'Anton',Impact;font-weight:400;font-size:14.5px;color:#F5EFE6;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pgx-typ__i em{display:block;font-family:'PG Mono',monospace;font-style:normal;font-size:9px;
  letter-spacing:.14em;color:rgba(245,239,230,.5);margin-top:3px}
@media(max-width:640px){
  .pgx-typ{padding:42px 0 46px;margin-top:34px}
  .pgx-typ__i{flex:0 0 132px}
}

/* -------- BESKRIVNING + FRAGOR : mise en page magazine creme -------- */
.pgx-two{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:44px;align-items:start}
.pgx-two__side{position:sticky;top:96px}
.pgx-two__side .pg-act__h{margin-bottom:10px}
.pgx-two__no{display:inline-block;font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--mut);border:1px solid var(--line);border-radius:999px;padding:5px 11px}
.pgx-desc__c{max-width:66ch}
.pgx-desc__c>p:first-child{font-size:17px;line-height:1.7;color:var(--ink)}
.pgx-desc__c p{line-height:1.75}
.pgx-desc__c h2,.pgx-desc__c h3{font-family:'Anton',Impact;font-weight:400;color:var(--ink);
  line-height:1.05;margin:1.6em 0 .5em}
.pgx-desc__c h2{font-size:24px}
.pgx-desc__c h3{font-size:19px}
.pgx-desc__c ul{padding-left:0;list-style:none}
.pgx-desc__c ul li{position:relative;padding-left:18px;margin:6px 0}
.pgx-desc__c ul li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;
  border-radius:999px;background:var(--t,#FFC72C)}
/* le depliant : fini la fleche noire orpheline, un vrai bouton */
.pgx-desc__c details{border-top:1px dashed var(--line);margin-top:22px;padding-top:4px}
.pgx-desc__c details summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:9px;
  font-family:'PG Mono',monospace!important;font-size:11px!important;letter-spacing:.14em;
  text-transform:uppercase;font-weight:700!important;color:var(--ink);background:var(--yel);
  border-radius:999px;padding:11px 18px!important;margin:14px 0 6px!important;
  transition:transform .15s;user-select:none}
.pgx-desc__c details summary::-webkit-details-marker{display:none}
.pgx-desc__c details summary::after{content:"+";font-size:14px;line-height:1}
.pgx-desc__c details[open] summary::after{content:"\2212"}
.pgx-desc__c details summary:hover{transform:translateY(-2px)}
.pgx-faq__l{max-width:none}
.pgx-faq__l{counter-reset:pgxfaq}
.pgx-faq__l .pg-faq__i summary{position:relative;padding-left:44px}
.pgx-faq__l .pg-faq__i summary::before{counter-increment:pgxfaq;content:counter(pgxfaq,decimal-leading-zero);
  position:absolute;left:16px;top:50%;transform:translateY(-50%);font-family:'PG Mono',monospace;
  font-size:10px;letter-spacing:.1em;color:var(--mut)}
@media(max-width:900px){
  .pgx-two{grid-template-columns:1fr;gap:10px}
  .pgx-two__side{position:static}
}

/* ------------ BANNIERE REGION : une seule invitation, la carte ------------ */
.pgx-reg{margin-top:48px;background:linear-gradient(115deg,#0D1830 34%,#152648 100%);overflow:hidden}
.pgx-reg__in{max-width:1180px;margin:0 auto;padding:34px 20px;display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:22px;align-items:center;
  text-decoration:none;min-height:250px}
.pgx-reg__h{font-family:'Anton',Impact;font-weight:400;font-size:clamp(30px,4.6vw,54px);
  line-height:1;color:#F5EFE6;margin:0}
.pgx-reg__sub{font-family:'PG Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(245,239,230,.55);margin:12px 0 0}
.pgx-reg__cta{display:inline-flex;align-items:center;gap:10px;margin-top:22px;background:var(--yel);
  color:var(--ink);font-weight:800;font-size:14px;border-radius:999px;padding:14px 24px;
  box-shadow:0 3px 0 rgba(22,38,74,.35);transition:transform .15s}
.pgx-reg__cta::after{content:"\203A";font-size:18px;line-height:1;transform:translateY(-1px)}
.pgx-reg__in:hover .pgx-reg__cta{transform:translateY(-2px)}
.pgx-reg__map{position:relative;display:flex;align-items:center;justify-content:center;min-height:180px}
.pgx-reg__map::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:80%;aspect-ratio:1.4;border-radius:999px;
  background:radial-gradient(ellipse,rgba(245,239,230,.1),transparent 70%)}
.pgx-reg__map img{position:relative;max-height:230px;width:auto;max-width:100%;
  transition:transform .35s cubic-bezier(.3,0,.2,1)}
.pgx-reg__in:hover .pgx-reg__map img{transform:scale(1.045)}
@media(max-width:820px){
  .pgx-reg__in{grid-template-columns:1fr;padding:28px 18px;text-align:center;min-height:0}
  .pgx-reg__map{order:-1;min-height:0}
  .pgx-reg__map img{max-height:150px}
}

/* -------------------- BARRE D ACHAT MOBILE ------------------------ */
.pgx-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:70;display:none;align-items:center;
  justify-content:space-between;gap:12px;background:#fff;border-radius:999px;
  box-shadow:0 12px 34px rgba(22,38,74,.28);padding:8px 8px 8px 18px;
  transform:translateY(150%);opacity:0;transition:transform .35s,opacity .35s}
.pgx-bar.is-on{transform:none;opacity:1}
.pgx-bar__t{display:flex;flex-direction:column;min-width:0}
.pgx-bar__t b{font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pgx-bar__t>span{font-size:12px;color:var(--ink2)}
.pgx-bar__t .woocommerce-Price-amount{font-weight:700}
.pgx-bar__b{flex:none;background:var(--cor)!important;color:#fff!important;border:0!important;
  border-radius:999px!important;font-weight:800!important;font-size:13px!important;
  padding:13px 20px!important;box-shadow:0 3px 0 #C63A26;text-decoration:none!important}
@media(max-width:820px){.pgx-bar{display:flex}}

/* --------- DERNIERS DETAILS (retours Julien 2026-07-26) ----------- */
/* 1. Le vide en bas de fiche : 40px (.pg) + 60px (Blocksy) de padding
   cumulaient une bande creme creuse entre la banniere region et le footer. */
body.single-product .pg{padding-bottom:0}
body.single-product .ct-container-full{padding-bottom:0}
body.single-product .pg-ft{margin-top:0} /* la banniere region assure deja l air */
.pgx-reg{margin-bottom:0;border-bottom:1px solid rgba(245,239,230,.12)}

/* 2. Fleches des rails horizontaux (injectees par pg.js quand ca deborde) */
.pgx-typ__in,.pgx-evo__in{position:relative}
.pgx-rarr{position:absolute;bottom:104px;z-index:4;width:42px;height:42px;border-radius:999px;
  border:1.5px solid rgba(245,239,230,.3);background:rgba(13,24,48,.85);color:#F5EFE6;
  cursor:pointer;font-size:0;transition:border-color .2s,transform .2s}
.pgx-rarr::before{font-size:20px;line-height:40px;display:block}
.pgx-rarr--prev{left:-6px}.pgx-rarr--prev::before{content:"\2039"}
.pgx-rarr--next{right:-6px}.pgx-rarr--next::before{content:"\203A"}
.pgx-rarr:hover:not(:disabled){border-color:var(--t);transform:scale(1.08)}
.pgx-rarr:disabled{opacity:.25;cursor:default}
@media(max-width:640px){.pgx-rarr{display:none}} /* au doigt, le rail se balaie */

/* 3. Barre d outils du rayon : compteur + tri en pilules */
.pgx-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
  margin:4px 0 20px}
.pgx-tools__n{font-family:'PG Mono',monospace;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--mut)}
.pgx-tools__sort{display:flex;gap:7px;flex-wrap:wrap}
.pgx-tools__p{font-family:'PG Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;
  text-decoration:none;color:var(--ink2);border:1.5px solid var(--line);border-radius:999px;
  padding:8px 14px;transition:border-color .15s,color .15s,background .15s}
.pgx-tools__p:hover{border-color:var(--ink);color:var(--ink)}
.pgx-tools__p.is-on{background:var(--ink);border-color:var(--ink);color:#FFF8EE}
.woocommerce-ordering,.woocommerce-result-count{display:none!important}

/* 4. Texte SEO du rayon : la carte blanche depliante devient le magazine */
.pgx-seo{margin-top:14px;margin-bottom:46px}
.pg-seo__d2{border:0;background:none}
.pg-seo__d2>div{margin-top:6px}

/* --------- VIGNETTES GALERIE dans le hero de fiche ----------------- */
.pgx-thumbs{display:flex;gap:9px;justify-content:center;margin-top:2px;position:relative;z-index:3}
.pgx-th{width:56px;height:56px;border-radius:12px;border:1.5px solid rgba(245,239,230,.22);
  background:rgba(245,239,230,.06);padding:5px;cursor:pointer;display:flex;align-items:center;
  justify-content:center;transition:border-color .2s,transform .2s}
.pgx-th img{max-width:100%;max-height:100%;width:auto!important;height:auto;border-radius:7px;
  mix-blend-mode:normal;background:#fff}
.pgx-th img.pg-cut,.pgx-th img.pgx-cutg{background:none}
.pgx-th:hover{border-color:rgba(245,239,230,.55);transform:translateY(-2px)}
.pgx-th.is-on{border-color:var(--t);box-shadow:0 0 14px var(--t)}
/* la scene en mode photo : fond blanc arrondi, plus de detoure */
.pgx-stage--photo .pg-stage__img img{background:#fff;border-radius:16px;padding:10px;
  mix-blend-mode:normal;max-height:min(50vh,460px);width:auto}
.pgx-stage--photo .pg-stage__img::after{display:none}
.pgx-stage--photo .pg-stage__no,.pgx-stage--photo .pg-stage__stamp,
.pgx-stage--photo .pg-fx,.pgx-stage--photo .pg-brk{opacity:.18}
@media(max-width:820px){.pgx-th{width:48px;height:48px}}

/* --------- TILT "CARTE POKEMON" sur les cards produit -------------
   Souris uniquement (pointer:fine), coupe en mouvement reduit.
   Le JS pose --rx/--ry (inclinaison) et --mx/--my (position du reflet). */
@media (hover:hover) and (pointer:fine){
  li.pg-card{position:relative}
  li.pg-card.is-tilt{transform:perspective(760px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))
    translateY(-4px) scale(1.02);transition:transform .12s ease-out,box-shadow .25s;
    box-shadow:0 18px 34px rgba(22,38,74,.18);border-color:var(--t);z-index:5}
  /* le reflet holo : un eclat blanc au curseur + une trainee de la couleur
     du type en travers, facon foil */
  li.pg-card::after{content:"";position:absolute;inset:0;z-index:6;border-radius:inherit;
    pointer-events:none;opacity:0;transition:opacity .25s;
    background:
      radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.65) 0%,rgba(255,255,255,0) 42%),
      linear-gradient(115deg,transparent 32%,var(--t) 48%,transparent 62%);
    background-position:0 0,calc((var(--mx,50%) - 50%) * 1.6) 0;
    background-size:100% 100%,220% 100%}
  li.pg-card.is-tilt::after{opacity:.32}
}
@media (prefers-reduced-motion:reduce){
  li.pg-card.is-tilt{transform:none}
  li.pg-card.is-tilt::after{opacity:0}
}

/* --------- DECOR DU HERO HOME : image d ambiance + lucioles -------- */
/* Recette Squishy : paysage plein cadre (genere sans personnage), voile
   de lisibilite a gauche, lucioles animees par-dessus. */
.pg-hero{position:relative;overflow:hidden}
.pg-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.pg-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(11,19,40,.88) 0%,rgba(11,19,40,.5) 36%,rgba(11,19,40,0) 58%)}
.pg-hero__grid{display:none} /* la trame parasitait la peinture */
.pg-hero__in{position:relative;z-index:2}
.pg-hero__lucio{position:absolute;inset:0;z-index:1;pointer-events:none}
.pg-hero__lucio i{position:absolute;width:7px;height:7px;border-radius:999px;
  background:#F5DA6B;box-shadow:0 0 12px 3px rgba(245,218,107,.55);opacity:0;
  animation:pgLucio 9s ease-in-out infinite}
.pg-hero__lucio i:nth-child(1){left:8%;bottom:16%;animation-delay:0s}
.pg-hero__lucio i:nth-child(2){left:22%;bottom:8%;animation-delay:-2.5s;animation-duration:11s}
.pg-hero__lucio i:nth-child(3){left:36%;bottom:20%;animation-delay:-5s}
.pg-hero__lucio i:nth-child(4){left:47%;bottom:10%;animation-delay:-7s;animation-duration:12s}
.pg-hero__lucio i:nth-child(5){left:60%;bottom:24%;animation-delay:-1.4s;animation-duration:10s}
.pg-hero__lucio i:nth-child(6){left:74%;bottom:12%;animation-delay:-4s}
.pg-hero__lucio i:nth-child(7){left:86%;bottom:22%;animation-delay:-6.4s;animation-duration:13s}
.pg-hero__lucio i:nth-child(8){left:93%;bottom:9%;animation-delay:-8.2s}
@keyframes pgLucio{
  0%{transform:translate(0,0) scale(.7);opacity:0}
  12%{opacity:.9}
  50%{transform:translate(14px,-46px) scale(1);opacity:.55}
  80%{opacity:.75}
  100%{transform:translate(-8px,-92px) scale(.6);opacity:0}
}
.pg-hero.is-idle .pg-hero__lucio i{animation-play-state:paused}
@media(max-width:820px){
  .pg-hero__lucio i:nth-child(2n){display:none} /* moitie moins au tactile */
}
.pg-sc__moln{animation:pgscMoln 120s linear infinite}
.pg-sc__moln--1{animation-delay:-30s}
.pg-sc__moln--2{animation-duration:160s;animation-delay:-90s}
.pg-sc__moln--3{animation-duration:95s;animation-delay:-60s}
@keyframes pgscMoln{from{transform:translateX(-160px)}to{transform:translateX(1760px)}}
.pg-sc__flag{transform-box:fill-box;transform-origin:left center;
  animation:pgscFlag 3.2s ease-in-out infinite alternate}
@keyframes pgscFlag{to{transform:rotate(8deg) scaleY(.92)}}
.pg-sc__tuva{transform-box:fill-box;transform-origin:50% 100%;
  animation:pgscGras 3.8s ease-in-out infinite alternate}
.pg-sc__tuva:nth-of-type(2n){animation-duration:4.4s;animation-delay:-1.3s}
.pg-sc__tuva:nth-of-type(3n){animation-duration:3.3s;animation-delay:-2.1s}
.pg-sc__tuva:nth-of-type(5n){animation-delay:-0.7s}
@keyframes pgscGras{from{transform:rotate(-2.4deg)}to{transform:rotate(2.8deg)}}
.pg-sc__star{animation:pgscStar 3.4s ease-in-out infinite alternate}
.pg-sc__star:nth-of-type(2n){animation-delay:-1.1s;animation-duration:2.7s}
.pg-sc__star:nth-of-type(3n){animation-delay:-2s;animation-duration:4.1s}
.pg-sc__star:nth-of-type(4n){animation-delay:-.6s}
@keyframes pgscStar{from{opacity:.15}to{opacity:.85}}
.pg-hero.is-idle .pg-hero__scen *{animation-play-state:paused}
@media(max-width:820px){.pg-hero__scen{height:42%}}
@media(prefers-reduced-motion:reduce){.pg-hero__scen *{animation:none!important}}

/* --------- BANDEAU KAKOR (Consent Mode v2) ------------------------- */
.pg-ck{position:fixed;left:12px;right:12px;bottom:12px;z-index:120;display:flex;
  justify-content:center;pointer-events:none}
.pg-ck[hidden]{display:none}
.pg-ck__c{pointer-events:auto;max-width:540px;background:#16264A;color:#F5EFE6;
  border:1px solid rgba(245,239,230,.14);border-radius:16px;padding:18px 20px;
  box-shadow:0 18px 44px rgba(4,8,22,.45)}
.pg-ck__c b{font-family:'Anton',Impact;font-weight:400;font-size:17px;letter-spacing:.02em}
.pg-ck__c p{font-size:13px;line-height:1.55;color:rgba(245,239,230,.78);margin:8px 0 14px}
.pg-ck__c p a{color:#FFC72C;text-decoration:underline}
.pg-ck__b{display:flex;gap:10px;flex-wrap:wrap}
.pg-ck__ok{background:var(--yel);color:var(--ink);border:0;border-radius:999px;
  font-weight:800;font-size:13.5px;padding:12px 20px;cursor:pointer;
  box-shadow:0 3px 0 rgba(22,38,74,.35)}
.pg-ck__ok:hover{transform:translateY(-1px)}
.pg-ck__no{background:none;color:#F5EFE6;border:1.5px solid rgba(245,239,230,.35);
  border-radius:999px;font-weight:700;font-size:13.5px;padding:12px 20px;cursor:pointer}
.pg-ck__no:hover{border-color:#F5EFE6}
.pg-ft__cookie{background:none;border:0;padding:0;cursor:pointer;text-align:left;
  font:inherit;color:inherit;text-decoration:underline;text-underline-offset:2px}

/* ------------------------ MOUVEMENT REDUIT ------------------------ */
@media(prefers-reduced-motion:reduce){
  .pgx-mq__t,.pgx-scan__ring,.pgx-hero__cue i::after{animation:none!important}
  .pgx-scan__img,.pgx-step,.pgx-co{transition:none!important}
}
