
/* -- Tueur global de blanc fondu (styles inline) -- */
[style*="rgba(255,255,255"]{color:#FFFFFF !important;}
/* -- Sections sombres genériques -- */
.on-dark p,.on-dark li,.on-dark .lede{color:#FFFFFF !important;}
.on-dark .eyebrow{color:#FF6700 !important;}
.card-dark h3{color:#FFFFFF !important;}
.card-dark p{color:#FFFFFF !important;}
.card-dark .value-num{color:#FF6700 !important;}
/* -- Carrousel home + heros de pages -- */
.hc-slide .lede,.page-hero .lede,.hero-checks span,.hero-side h2{color:#FFFFFF !important;}
.hc-slide h1 em,.hc-slide .kg-hl,.hero-brands,.page-hero .kg-hl{color:#FF6700 !important;}
.reassure-bar .r-sub{color:#FFFFFF !important;}
/* -- Page Karguo GO -- */
.kg-go-topbar span,.kg-go-topbar em,.kg-go-hero .lede,.kg-go-checks,
.kg-go-calcband p,.kg-go-calcright h2,.kg-go-lbl,.kg-go-result span{color:#FFFFFF !important;}
.kg-go-hero h1{color:#FFFFFF !important;}
.kg-go-hero h1 em{color:#FF6700 !important;font-style:normal;}
.kg-go-calcleft strong,.kg-go-calcleft p b,.kg-go-result b{color:#FF6700 !important;}
/* -- Page Forfaits -- */
.kg-ff-hero h1{color:#FFFFFF !important;}
.kg-ff-hero h1 em,.kg-ff-eyebrow{color:#FF6700 !important;}
.kg-ff-sub,.kg-ff-quiz .kg-q{color:#FFFFFF !important;}
.kg-ff-final h2,.kg-ff-final p{color:#FFFFFF !important;}
/* -- Tableau compare : 1re colonne collante -- */
.kg-compare th:first-child,.kg-compare td:first-child{position:sticky;left:0;background:#FFFFFF;z-index:2;box-shadow:2px 0 4px rgba(0,0,0,.06);}
/* -- Prix forfaits : alignement ligne de base -- */
.kg-tier-prix{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;}
.kg-tier-prix strong{white-space:nowrap;}
.kg-tier-prix span{line-height:1.3;flex:1 1 10rem;min-width:0;}
@media (max-width:768px){
  /* CTA bande finale centres */
  .kg-ff-final{text-align:center;}
  .kg-ff-final .btn-row{justify-content:center;}
  /* Lisibilite heros sombres */
  .kg-go-hero-photo{opacity:.28;}
  .kg-go-hero h1{text-shadow:0 2px 10px rgba(0,0,0,.65);}
  .kg-go-hero .lede,.kg-go-checks{text-shadow:0 1px 6px rgba(0,0,0,.7);}
}
@media (max-width:899px){
  /* Boutons cartes boutique : affichage propre en 2 colonnes */
  .prod-body .kg-card-cta{font-size:.72rem;padding:.6rem .4rem;letter-spacing:.03em;white-space:normal;line-height:1.15;}
  .prod-details{font-size:.8rem;}
}
/* -- kg-cards-uniform : cartes boutique hauteur uniforme + CTA alignes -- */
.prod-grid{align-items:stretch !important;}
.prod-card{display:flex !important;flex-direction:column !important;height:100% !important;box-sizing:border-box !important;}
.prod-card > a img{height:180px !important;width:100% !important;object-fit:contain !important;display:block;}
.prod-card .prod-body{display:flex !important;flex-direction:column !important;flex:1 1 auto !important;}
.prod-body .prod-priceline{margin-top:auto !important;}
@media (max-width:899px){
  .prod-card > a img{height:126px !important;}
}
/* -- kg-shop-polish-v1 : grille boutique mobile compacte & premium (FR+EN) -- */
@media (max-width:899px){
  .shop-layout .prod-grid{gap:.6rem !important;}
  .prod-card{border-radius:12px !important;border:1px solid rgba(15,15,15,.06) !important;box-shadow:0 1px 4px rgba(15,15,15,.05) !important;}
  .prod-card > a img{height:104px !important;padding:.35rem !important;box-sizing:border-box !important;}
  .prod-card .prod-body{padding:.55rem .6rem .7rem !important;}
  .prod-body .prod-cat{font-size:.56rem !important;letter-spacing:.05em !important;opacity:.62 !important;line-height:1.3 !important;display:-webkit-box !important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 .15rem !important;}
  .prod-body h3{font-size:.85rem !important;line-height:1.28 !important;margin:0 !important;display:-webkit-box !important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.56em;}
  .prod-body h3 a{color:#14161A !important;}
  .prod-body .prod-priceline{display:flex !important;align-items:baseline !important;gap:.45rem !important;margin:.3rem 0 .45rem !important;}
  .prod-body .prod-price{font-size:.95rem !important;font-weight:700 !important;}
  .prod-body .prod-stock{font-size:.58rem !important;letter-spacing:.06em !important;}
  .prod-body .kg-card-cta{min-height:34px !important;padding:.4rem .5rem !important;font-size:.62rem !important;line-height:1.15 !important;border-radius:8px !important;display:flex !important;align-items:center !important;justify-content:center !important;white-space:normal !important;}
  .prod-body .prod-details{font-size:.7rem !important;opacity:.72 !important;margin-top:.4rem !important;text-underline-offset:2px;}
  .shop-toolbar{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:.6rem !important;margin:.3rem 0 .8rem !important;}
  .shop-sort{display:flex !important;align-items:center !important;gap:.4rem !important;}
  .shop-sort select{padding:.4rem 1.5rem .4rem .6rem !important;font-size:.8rem !important;border-radius:8px !important;}
  .shop-count{font-size:.66rem !important;letter-spacing:.08em !important;opacity:.6 !important;}
  .side-block{padding:.8rem .85rem !important;}
  .side-block input[type=range]{height:4px !important;}
  .price-row{display:flex !important;justify-content:space-between !important;align-items:center !important;font-size:.72rem !important;margin-top:.25rem !important;}
  .mobile-call{padding:.5rem .9rem !important;font-size:.8rem !important;line-height:1.2 !important;box-shadow:0 -3px 12px rgba(0,0,0,.14) !important;}
  .shop-stickybar--callonly{padding:.3rem .7rem !important;}
  .ssb-call{font-size:.8rem !important;padding:.45rem .8rem !important;}
  #main{padding-bottom:calc(58px + env(safe-area-inset-bottom)) !important;}
}
/* -- kg-shop-polish-v2 : raffinement round 2 (cartes, barre appel, bande noire) -- */
@media (max-width:899px){
  .prod-card > a img{height:96px !important;padding:.3rem !important;}
  .prod-card .prod-body{padding:.5rem .55rem .6rem !important;}
  .prod-body .prod-cat{margin-bottom:.1rem !important;}
  .prod-body h3{font-size:.83rem !important;}
  .prod-body .prod-priceline{margin:.25rem 0 .4rem !important;}
  .prod-body .prod-price{font-size:1rem !important;}
  .prod-body .kg-card-cta{min-height:32px !important;padding:.35rem .45rem !important;}
  .prod-body .prod-details{margin-top:.3rem !important;font-size:.68rem !important;}
  .shop-layout .prod-grid{gap:.55rem !important;}
  /* barre appel plus fine */
  .mobile-call{padding:.42rem .8rem !important;font-size:.75rem !important;}
  .mobile-call svg{width:14px !important;height:14px !important;}
  #main{padding-bottom:calc(58px + env(safe-area-inset-bottom)) !important;}
  /* compteur discret */
  .shop-count{font-size:.62rem !important;opacity:.55 !important;margin:.15rem 0 .35rem !important;}
  /* tri aligné */
  .shop-toolbar{margin:.2rem 0 .7rem !important;}
  .shop-sort select{padding:.35rem 1.4rem .35rem .55rem !important;font-size:.78rem !important;}
  /* bande noire reassurance raffinee */
  .reassure-bar{gap:0 !important;}
  .reassure-bar .reassure-item{padding:.55rem .45rem !important;border-color:rgba(255,255,255,.1) !important;}
  .reassure-bar .r-key{font-size:.58rem !important;letter-spacing:.09em !important;margin-bottom:.12rem !important;}
  .reassure-bar .r-sub{font-size:.78rem !important;line-height:1.25 !important;}
}
/* -- kg-quote-cards-v1 : variante produits Sur demande + CTA uniformes -- */
@media (max-width:899px){
  .prod-body .kg-card-cta{min-height:40px !important;}
  a.kg-card-cta[href*="soumission"],a.kg-card-cta[href*="request-for-quote"],a.kg-card-cta[href*="request-a-quote"]{font-size:.56rem !important;line-height:1.25 !important;letter-spacing:.03em !important;padding:.3rem .5rem !important;text-align:center !important;}
  .prod-price.is-quote{font-size:.85rem !important;font-weight:600 !important;color:#3F4450 !important;letter-spacing:.01em !important;}
}
@media (min-width:900px){
  .prod-body .kg-card-cta{min-height:42px;display:flex;align-items:center;justify-content:center;white-space:normal;box-sizing:border-box;}
  a.kg-card-cta[href*="soumission"],a.kg-card-cta[href*="request-for-quote"],a.kg-card-cta[href*="request-a-quote"]{font-size:.68rem;line-height:1.2;letter-spacing:.03em;}
}
/* -- kg-cta2-v1 : barre sticky double [Appeler][Soumission], plus fine -- */
@media (max-width:899px){
  .mobile-cta2{position:fixed;left:0;right:0;bottom:0;z-index:1050;display:flex;box-shadow:0 -3px 12px rgba(0,0,0,.16);}
  .mobile-cta2 .mobile-call{position:static !important;flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom)) !important;font-size:.72rem !important;box-shadow:none !important;}
  .mobile-cta2 .mobile-quote{flex:1;display:flex;align-items:center;justify-content:center;background:#14161A;color:#FFF;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom));}
  body.kg-pbar-on .mobile-cta2{display:none !important;}
}
@media (min-width:900px){ .mobile-cta2 .mobile-quote{display:none;} .mobile-cta2{display:contents;} }
/* -- kg-p2-uifix2 : la boutique affichait 2 blocs Categories sur desktop.
   Le bloc du bas (.side-cats-drawer) sert au tiroir de filtres MOBILE (deplace par JS),
   donc on le cache uniquement sur grand ecran au lieu de le supprimer. -- */
@media (min-width:900px){ .shop-side .side-cats-drawer{display:none !important;} }
/* -- kg-p2-uifix : lisibilite du selecteur de format + badge caisse -- */
.p-format strong,.p-format.is-active strong{color:#14161A !important;}
.p-format span,.p-format.is-active span{color:#4A4F58 !important;}
.p-format.is-active{background:#FFF0E6 !important;border-color:var(--karguo-orange) !important;}
.p-casebadge{color:#FFFFFF !important;background:var(--karguo-orange) !important;font-weight:800;}
/* ===== kg-home-v3 : refonte homepage B2B (12 juil 2026) =====
   Portee : uniquement les sections de la home. Contenu inchange, seule la mise en page bouge. */

/* -- Trust bar : fond noir, liseree orange, 4 items, scroll horizontal sur mobile -- */
.reassure-bar.hero-stats{background:#050505;border-top:3px solid #FF5A00;border-bottom:1px solid rgba(255,255,255,.08);}
.reassure-bar.hero-stats .container{display:flex;gap:0;align-items:stretch;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.reassure-bar.hero-stats .container::-webkit-scrollbar{display:none;}
.reassure-bar.hero-stats .reassure-item{flex:1 1 0;min-width:170px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:.85rem 1rem;text-align:center;border-right:1px solid rgba(255,255,255,.08);text-decoration:none;}
.reassure-bar.hero-stats .reassure-item:last-child{border-right:none;}
.reassure-bar.hero-stats .r-key{color:#FF5A00;font-family:var(--font-ui,inherit);font-weight:800;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;}
.reassure-bar.hero-stats .r-sub{color:#FFF;font-size:.9rem;white-space:nowrap;}
.reassure-bar.hero-stats a.reassure-item:hover .r-sub{color:#FF5A00;}

/* -- Categories : grille 4 col / 2 mobile, hauteurs egales, zoom leger, bordure orange au survol -- */
.pcat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;align-items:stretch;}
.pcat{display:flex;flex-direction:column;height:100%;background:#FFF;border:1px solid rgba(0,0,0,.10);border-radius:14px;overflow:hidden;text-decoration:none;transition:border-color .15s ease, transform .15s ease, box-shadow .15s ease;}
.pcat:hover{border-color:#FF5A00;transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.08);}
.pcat img{width:100%;height:160px;object-fit:cover;display:block;transition:transform .25s ease;}
.pcat:hover img{transform:scale(1.04);}
.pcat-body{display:flex;flex-direction:column;gap:.2rem;padding:.85rem .9rem 1rem;flex:1 1 auto;}
.pcat-body h3{margin:0;font-size:1rem;line-height:1.25;color:#050505;}
.kg-cat-count{margin:0;color:#FF5A00;font-weight:800;font-size:.82rem;}
@media (max-width:1024px){ .pcat-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .pcat img{height:120px;} .pcat-body h3{font-size:.92rem;} }
/* -- kg-home-v4 : cartes produits de la home (contenu inchange, alignement corrige) -- */
.kg-home-best{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;align-items:stretch;}
.kg-home-best .prod-card{display:flex;flex-direction:column;height:100%;background:#FFF;border:1px solid rgba(0,0,0,.10);border-radius:14px;overflow:hidden;transition:border-color .15s ease, transform .15s ease, box-shadow .15s ease;}
.kg-home-best .prod-card:hover{border-color:#FF5A00;transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.08);}
.kg-home-best .prod-card > img,
.kg-home-best .prod-card .lazyload{width:100%;height:190px;object-fit:contain;background:#FFF;padding:.6rem;display:block;}
.kg-home-best .prod-body{display:flex;flex-direction:column;flex:1 1 auto;gap:.4rem;padding:.85rem .9rem 1rem;}
.kg-home-best .prod-cat{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#4B5563;font-weight:700;margin:0;}
.kg-home-best .prod-body h3,
.kg-home-best .prod-title{margin:0;font-size:.95rem;line-height:1.3;color:#050505;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;}
.kg-home-best .prod-priceline{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;margin:0;}
.kg-home-best .prod-price{font-family:var(--font-heading,inherit);font-weight:800;font-size:1.25rem;color:#050505;}
.kg-home-best .kg-card-cta{margin-top:auto;width:100%;min-height:44px;display:inline-flex;align-items:center;justify-content:center;background:#FF5A00;color:#050505;font-weight:800;border:none;border-radius:999px;text-decoration:none;transition:background .15s ease;}
.kg-home-best .kg-card-cta:hover{background:#E64A00;}
.kg-home-best .prod-details{margin-top:.5rem;text-align:center;font-size:.82rem;}
@media (max-width:1024px){ .kg-home-best{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .kg-home-best{gap:.7rem;} .kg-home-best .prod-card > img,.kg-home-best .prod-card .lazyload{height:140px;} .kg-home-best .prod-price{font-size:1.1rem;} }

/* Pas de debordement horizontal sur mobile */
@media (max-width:560px){ .section, .section-tight{overflow-x:hidden;} }
/* -- kg-home-v5 : bande "Vous ne trouvez pas ce que vous cherchez" -- */
.kg-nf{background:#050505;}
.kg-nf-in{display:grid;grid-template-columns:1.1fr 1fr;gap:1.4rem 2rem;align-items:center;}
.kg-nf-txt h2{margin:0 0 .35rem;color:#FFF;}
.kg-nf-txt p{margin:0;color:#9CA3AF;font-size:.95rem;line-height:1.6;max-width:46ch;}
.kg-nf-form{display:flex;gap:.6rem;flex-wrap:wrap;}
.kg-nf-form input{flex:1 1 240px;min-height:48px;border:1px solid rgba(255,255,255,.18);background:#111418;color:#FFF;border-radius:999px;padding:.7rem 1.1rem;font-size:.95rem;}
.kg-nf-form input::placeholder{color:#6B7280;}
.kg-nf-form input:focus{outline:2px solid #FF5A00;outline-offset:1px;}
.kg-nf-form .btn{min-height:48px;background:#FF5A00;color:#050505;border:none;border-radius:999px;padding:.7rem 1.5rem;font-weight:800;cursor:pointer;white-space:nowrap;transition:background .15s ease;}
.kg-nf-form .btn:hover{background:#E64A00;}
.kg-nf-links{grid-column:1 / -1;display:flex;gap:.6rem;align-items:center;font-size:.9rem;color:#6B7280;}
.kg-nf-links a{color:#FF5A00;text-decoration:none;font-weight:700;}
.kg-nf-links a:hover{text-decoration:underline;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
@media (max-width:900px){ .kg-nf-in{grid-template-columns:1fr;} }
/* -- kg-go2 : section Karguo GO noire avec camion (modele 12 juil) -- */
.kg-go2-sec{position:relative;overflow:hidden;background:#050505;}
.kg-go2-sec .kg-truck-lane{position:absolute;left:0;right:0;bottom:0;top:auto;height:220px;z-index:0;pointer-events:none;}
.kg-go2-sec .kg-truck{display:block;fill:#FF5A00;opacity:.12;width:min(620px,65vw);}
.kg-go2-sec .container{position:relative;z-index:1;}
.kg-go2{display:grid;grid-template-columns:1.15fr .85fr;gap:2rem;align-items:center;}
.kg-go2-eyebrow{display:inline-flex;align-items:center;gap:.4rem;font-weight:800;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#9CA3AF;margin-bottom:.6rem;}
.kg-go2-eyebrow b{color:#FF5A00;}
.kg-go2-txt h2{margin:0 0 .6rem;color:#FFF;line-height:1.15;}
.kg-go2-txt h2 span{color:#FF5A00;}
.kg-go2-txt > p{margin:0 0 1rem;color:#9CA3AF;font-size:1rem;line-height:1.6;max-width:52ch;}
.kg-go2-checks{list-style:none;margin:0 0 1.3rem;padding:0;display:flex;flex-direction:column;gap:.55rem;}
.kg-go2-checks li{position:relative;padding-left:1.7rem;color:#D1D5DB;font-size:.95rem;line-height:1.5;}
.kg-go2-checks li:before{content:"";position:absolute;left:0;top:.35rem;width:1.1rem;height:1.1rem;border-radius:50%;background:#FF5A00;}
.kg-go2-checks li:after{content:"";position:absolute;left:.36rem;top:.58rem;width:.26rem;height:.52rem;border:solid #050505;border-width:0 2px 2px 0;transform:rotate(45deg);}
.kg-go2-checks b{color:#FFF;}
.kg-go2-sec .btn-row{display:flex;gap:.7rem;flex-wrap:wrap;}
.kg-go2-sec .btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.75rem 1.5rem;font-weight:800;text-decoration:none;}
.kg-go2-sec .btn-primary{background:#FF5A00;color:#050505;border:none;}
.kg-go2-sec .btn-primary:hover{background:#E64A00;}
.kg-go2-sec .btn-outline-light{background:transparent;color:#FFF;border:2px solid rgba(255,255,255,.35);}
.kg-go2-sec .btn-outline-light:hover{border-color:#FF5A00;color:#FF5A00;}
.kg-go2-card{background:#0F1216;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:1.1rem 1.2rem 1.2rem;}
.kg-go2-cardhead{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding-bottom:.7rem;margin-bottom:.7rem;border-bottom:1px solid rgba(255,255,255,.1);}
.kg-go2-cardhead span:first-child{color:#FFF;font-weight:800;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;}
.kg-go2-badge{background:#FF5A00;color:#050505;font-weight:900;font-size:.7rem;padding:.2rem .55rem;border-radius:999px;}
.kg-go2-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;}
.kg-go2-lines li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 0;border-bottom:1px dashed rgba(255,255,255,.08);font-size:.9rem;color:#D1D5DB;}
.kg-go2-lines li:last-child{border-bottom:none;}
.kg-go2-lines b{color:#FFF;white-space:nowrap;}
.kg-go2-total{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.7rem;padding:.7rem .85rem;background:rgba(255,90,0,.12);border:1px solid rgba(255,90,0,.35);border-radius:12px;}
.kg-go2-total span{color:#FFF;font-size:.85rem;font-weight:700;}
.kg-go2-total b{color:#FF5A00;font-size:1.15rem;font-weight:900;white-space:nowrap;}
.kg-go2-note{margin:.6rem 0 0;color:#6B7280;font-size:.78rem;line-height:1.5;}
@media (max-width:900px){ .kg-go2{grid-template-columns:1fr;gap:1.4rem;} .kg-go2-sec .kg-truck{width:min(420px,80vw);} }
@media (max-width:560px){ .kg-go2-sec .btn{width:100%;} }
/* -- kg-home-v6 : 3 tuiles de parcours, la 3e (Karguo GO) en noir -- */
.kg-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:stretch;}
.kg-path{display:flex;flex-direction:column;height:100%;gap:.4rem;background:#FFF;border:1px solid rgba(0,0,0,.12);border-left:3px solid #FF5A00;border-radius:14px;padding:1.1rem 1.2rem;text-decoration:none;transition:transform .15s ease, box-shadow .15s ease;}
.kg-path:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.08);}
.kg-path strong{color:#050505;font-size:1.05rem;}
.kg-path span{color:#4B5563;font-size:.9rem;line-height:1.55;flex:1 1 auto;}
.kg-path em{margin-top:.5rem;font-style:normal;font-weight:800;color:#FF5A00;font-size:.85rem;}
.kg-paths .kg-path:last-child{background:#050505;border-color:rgba(255,255,255,.14);border-left-color:#FF5A00;}
.kg-paths .kg-path:last-child strong{color:#FFF;}
.kg-paths .kg-path:last-child span{color:#9CA3AF;}
.kg-paths .kg-path:last-child em{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-height:44px;background:#FF5A00;color:#050505;padding:.55rem 1.1rem;border-radius:999px;margin-top:.7rem;}
.kg-paths .kg-path:last-child:hover em{background:#E64A00;}
@media (max-width:900px){ .kg-paths{grid-template-columns:1fr;} }
/* -- kg-home-v2 : camion orange derriere Karguo GO (deplace depuis Pourquoi Karguo) -- */
.section[data-screen-label="Karguo GO"]{position:relative;overflow:hidden;}
.section[data-screen-label="Karguo GO"] .kg-truck-lane{position:absolute;left:0;right:0;bottom:0;top:auto;height:200px;z-index:0;pointer-events:none;}
.section[data-screen-label="Karguo GO"] .kg-truck{display:block;fill:#FF5A00;opacity:.10;width:min(560px,60vw);}
.section[data-screen-label="Karguo GO"] .container{position:relative;z-index:1;}
@media (prefers-reduced-motion: reduce){
  .kg-truck{animation:none !important;transform:none !important;}
}
/* -- kg-p2-vp : paliers de prix volume sur la fiche produit -- */
.kg-vp{margin:.7rem 0 0;padding:.7rem .85rem;border:1px dashed rgba(255,103,0,.45);border-radius:12px;background:#FFF8F3;}
.kg-vp-lbl{display:block;font-family:var(--font-ui);font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#14161A;margin-bottom:.4rem;}
.kg-vp-tiers{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem;}
.kg-vp-tiers li{background:#FFF;border:1px solid rgba(15,15,15,.1);border-radius:999px;padding:.3rem .7rem;font-size:.85rem;color:#14161A;white-space:nowrap;}
.kg-vp-tiers strong{color:#C24E00;font-weight:800;}
.kg-vp-note{display:block;margin-top:.45rem;font-size:.78rem;color:#4A4F58;}
@media (max-width:899px){ .kg-vp{padding:.6rem .7rem;} .kg-vp-tiers li{font-size:.8rem;} }
/* -- kg-p2-avis : section avis clients sur la fiche produit -- */
.kg-reviews{margin-top:.6rem;}
.kg-reviews #reviews{max-width:100%;}
.kg-reviews .commentlist{list-style:none;padding:0;margin:0 0 1.2rem;}
.kg-reviews .commentlist li{background:#FFF;border:1px solid rgba(15,15,15,.09);border-radius:12px;padding:1rem 1.1rem;margin-bottom:.6rem;}
.kg-reviews .comment-form{background:#FFF;border:1px solid rgba(15,15,15,.09);border-radius:14px;padding:1.1rem;}
.kg-reviews .comment-form label{display:block;font-family:var(--font-ui);font-weight:600;font-size:.85rem;margin-bottom:.25rem;}
.kg-reviews .comment-form input[type=text],.kg-reviews .comment-form input[type=email],.kg-reviews .comment-form textarea{width:100%;border:1px solid rgba(15,15,15,.15);border-radius:10px;padding:.6rem .75rem;font-size:.9rem;margin-bottom:.7rem;}
.kg-reviews .comment-form .submit{background:var(--karguo-orange);color:#14161A;border:none;border-radius:999px;padding:.7rem 1.4rem;font-family:var(--font-ui);font-weight:700;cursor:pointer;min-height:44px;}
.kg-reviews .stars a{color:var(--karguo-orange);text-decoration:none;font-size:1.1rem;}
.kg-reviews .woocommerce-noreviews{color:#4A4F58;font-size:.9rem;}
.kg-reviews .star-rating{color:var(--karguo-orange);}
@media (max-width:899px){ .kg-reviews .comment-form{padding:.85rem;} }
/* -- kg-p1-go : comparatif + exemples -- */
.kg-go-cmp{border:1px solid rgba(15,15,15,.1);border-radius:14px;overflow:hidden;background:#FFF;}
.kg-cmp-h,.kg-cmp-r{display:grid;grid-template-columns:1.1fr 1.4fr 1.4fr;}
.kg-cmp-h{background:#F6F4EF;font-family:var(--font-ui);font-weight:700;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;}
.kg-cmp-h span,.kg-cmp-r span{padding:.7rem .85rem;font-size:.88rem;line-height:1.4;}
.kg-cmp-r{border-top:1px solid rgba(15,15,15,.07);}
.kg-cmp-lbl{font-family:var(--font-ui);font-weight:700;font-size:.82rem;color:#4A4F58;}
.kg-cmp-go{background:rgba(255,103,0,.07);font-weight:600;}
.kg-cmp-h .kg-cmp-go{color:var(--karguo-orange-dark,#B84700);}
.kg-go-ex{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;}
.kg-go-exc{background:#FFF;border:1px solid rgba(15,15,15,.09);border-radius:14px;padding:1.05rem 1.1rem;display:flex;flex-direction:column;gap:.4rem;}
.kg-go-exc strong{font-family:var(--font-ui);font-size:.98rem;}
.kg-go-exc p{font-size:.86rem;color:#4A4F58;line-height:1.5;margin:0;}
.kg-go-exc em{font-style:normal;font-family:var(--font-ui);font-weight:700;font-size:.82rem;color:var(--karguo-orange-dark,#B84700);margin-top:auto;}
@media (max-width:899px){
  .kg-go-ex{grid-template-columns:1fr;gap:.6rem;}
  .kg-cmp-h,.kg-cmp-r{grid-template-columns:1fr 1.2fr 1.2fr;}
  .kg-cmp-h span,.kg-cmp-r span{padding:.55rem .55rem;font-size:.76rem;}
  .kg-cmp-lbl{font-size:.72rem;}
}
/* -- kg-p1-home : 3 chemins + comment ca marche + pour qui -- */
.kg-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:0.8rem;}
.kg-path{display:flex;flex-direction:column;gap:0.35rem;background:#FFF;border:1px solid rgba(15,15,15,.08);border-radius:14px;padding:1.1rem 1.15rem;text-decoration:none;color:#14161A;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;}
.kg-path:hover{transform:translateY(-3px);border-color:var(--karguo-orange);box-shadow:0 14px 28px -16px rgba(15,14,12,.25);}
.kg-path strong{font-family:var(--font-ui);font-size:1.02rem;font-weight:700;}
.kg-path span{font-size:.85rem;color:#4A4F58;line-height:1.45;}
.kg-path em{font-style:normal;font-family:var(--font-ui);font-weight:700;font-size:.8rem;color:var(--karguo-orange-dark,#B84700);margin-top:.2rem;}
.kg-how{display:grid;grid-template-columns:repeat(4,1fr);gap:0.9rem;margin-top:1rem;}
.kg-forwho{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:1.3rem;}
.kg-forwho-lbl{font-family:var(--font-ui);font-weight:700;font-size:.78rem;letter-spacing:.07em;text-transform:uppercase;color:#4A4F58;margin-right:.2rem;}
.kg-forwho a{display:inline-block;background:#FFF;border:1px solid rgba(15,15,15,.1);border-radius:999px;padding:.35rem .8rem;font-family:var(--font-ui);font-weight:600;font-size:.8rem;color:#14161A;text-decoration:none;}
.kg-forwho a:hover{border-color:var(--karguo-orange);color:var(--karguo-orange-dark,#B84700);}
@media (max-width:899px){
  .kg-paths{grid-template-columns:1fr;gap:.55rem;}
  .kg-path{padding:.85rem .9rem;}
  .kg-how{grid-template-columns:1fr 1fr;gap:.6rem;}
  .kg-how .qstep h3{font-size:.9rem;}
  .kg-how .qstep p{font-size:.78rem;}
}
/* -- kg-p0-audit (11 juil 2026) : la barre sticky ne masque plus aucun bouton -- */
@media (max-width:899px){
  body{padding-bottom:0 !important;}
  #main,.site-content,.shop-layout{padding-bottom:calc(58px + env(safe-area-inset-bottom)) !important;}
  .mobile-cta2{min-height:46px;}
  .mobile-cta2 .mobile-call,.mobile-cta2 .mobile-quote{min-height:46px;line-height:1.15;}
}
/* -- kg-truck-fix : taille + visibilite + centrage au scroll (12 juil) -- */
.kg-go2-sec{position:relative;overflow:hidden;}
.kg-go2-sec .kg-truck-lane{position:absolute!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;height:170px!important;z-index:0!important;pointer-events:none!important;overflow:hidden;}
.kg-go2-sec .kg-truck{position:absolute!important;left:0!important;bottom:0!important;display:block!important;width:min(520px,58vw)!important;max-width:520px!important;height:auto!important;fill:#FF5A00!important;opacity:.16!important;will-change:transform;}
@media (max-width:900px){ .kg-go2-sec .kg-truck-lane{height:120px!important;} .kg-go2-sec .kg-truck{width:min(340px,70vw)!important;opacity:.14!important;} }
@media (prefers-reduced-motion: reduce){ .kg-go2-sec .kg-truck{transform:translateX(35%)!important;} }
/* -- kg-truck-drop : le camion chevauche la frontiere GO / Pourquoi Karguo (12 juil) -- */
/* La section ne coupe plus : c est le couloir du camion qui coupe (pas de scroll horizontal). */
.kg-go2-sec{overflow:visible!important;position:relative!important;z-index:2!important;}
.kg-go2-sec .kg-truck-lane{position:absolute!important;left:0!important;right:0!important;top:auto!important;bottom:-100px!important;height:170px!important;overflow:hidden!important;z-index:0!important;pointer-events:none!important;}
.kg-go2-sec .container{position:relative!important;z-index:1!important;}
@media (max-width:900px){ .kg-go2-sec .kg-truck-lane{bottom:-60px!important;height:120px!important;} }
/* -- kg-empty : etat vide de la boutique = recuperation de lead -- */
.shop-empty{padding:2rem 1.4rem;border:1px dashed rgba(0,0,0,.18);border-radius:16px;background:#F4F1EA;text-align:center;}
.kg-empty-h{margin:0 0 .4rem;font-weight:800;font-size:1.05rem;color:#050505;}
.kg-empty-p{margin:0 auto 1rem;max-width:52ch;color:#4B5563;font-size:.95rem;line-height:1.6;}
.kg-empty-cta{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;}
.kg-empty-cta .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.65rem 1.4rem;font-weight:800;text-decoration:none;}
.kg-empty-cta .btn-primary{background:#FF5A00;color:#050505;border:none;}
.kg-empty-cta .btn-primary:hover{background:#E64A00;}
.kg-empty-cta .btn-outline{background:transparent;color:#050505;border:2px solid rgba(0,0,0,.2);}
.kg-empty-cta .btn-outline:hover{border-color:#FF5A00;color:#FF5A00;}
/* ===== kg-mobile-v1 : optimisation mobile globale (12 juil 2026) ===== */
@media (max-width:600px){
  /* 1. Aucun mot ne se coupe en plein milieu (bug "CHOISISSE Z VOS PRODUITS") */
  h1,h2,h3,h4,p,li,span,a,strong,em,td,th,label,button{overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;}
  /* 2. Comment ca fonctionne : 1 colonne, le texte respire */
  .kg-how{grid-template-columns:1fr!important;gap:.6rem!important;}
  .kg-how .qstep{display:flex!important;align-items:flex-start!important;gap:.75rem!important;}
  .kg-how .qstep > div{flex:1 1 auto!important;min-width:0!important;}
  .kg-how .qstep-num{flex:0 0 auto!important;}
  .kg-how .qstep h3{font-size:.95rem!important;line-height:1.25!important;}
  .kg-how .qstep p{font-size:.85rem!important;line-height:1.5!important;}
  /* 3. Boutons : pleine largeur, 48px, texte centre et non coupe */
  .btn,.btn-primary,.btn-outline-light,.kg-card-cta,.kg-nf-form .btn{min-height:48px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;line-height:1.2!important;}
  .kg-go2-sec .btn,.kg-nf-form .btn{width:100%!important;}
  /* 4. Bande "Vous ne trouvez pas" : champ + bouton empiles, liens lisibles */
  .kg-nf-in{grid-template-columns:1fr!important;gap:1rem!important;}
  .kg-nf-form{flex-direction:column!important;gap:.6rem!important;}
  .kg-nf-form input{width:100%!important;flex:1 1 auto!important;min-height:48px!important;}
  .kg-nf-links{flex-wrap:wrap!important;gap:.4rem .8rem!important;}
  .kg-nf-links a{white-space:nowrap!important;}
  /* 5. Aucun debordement horizontal */
  html,body{overflow-x:hidden!important;max-width:100%!important;}
  img,svg,table{max-width:100%!important;}
}
/* ===== kg-mobile-v2 : ajustements fins mobile (12 juil 2026) ===== */
@media (max-width:600px){
  /* Le telephone ne se coupe plus en 2 lignes dans les barres de reassurance */
  .reassure-bar .r-sub,.reassure-bar .r-key{white-space:nowrap!important;}
  .reassure-bar .r-sub{font-size:.82rem!important;}
  .reassure-bar .r-key{font-size:.68rem!important;}
  .reassure-bar .reassure-item{min-width:150px!important;padding:.7rem .8rem!important;}
  /* Rien ne colle aux bords de l ecran */
  .container{padding-left:16px!important;padding-right:16px!important;}
  /* CTA des cartes produits : pleine largeur, texte centre */
  .prod-card .kg-card-cta,.prod-card .btn{width:100%!important;min-height:48px!important;text-align:center!important;}
  /* Tableaux (comparatif Karguo GO) : defilement au lieu de deborder */
  .kg-go-cmp,.kg-vp-tiers{max-width:100%!important;}
  .kg-go-cmp{display:block!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}
  /* Paliers de prix volume : les pastilles passent a la ligne */
  .kg-vp-tiers{flex-wrap:wrap!important;}
  .kg-vp-tiers li{white-space:nowrap!important;}
  /* Titres : jamais tronques ni colles */
  h1{font-size:1.65rem!important;line-height:1.15!important;}
  h2{font-size:1.4rem!important;line-height:1.2!important;}
  /* Carte du panier mensuel GO : lignes lisibles */
  .kg-go2-lines li{font-size:.88rem!important;gap:.6rem!important;}
  .kg-go2-total{flex-wrap:nowrap!important;}
  .kg-go2-total b{font-size:1rem!important;}
}
/* ===== kg-mobile-v3 : barre de reassurance en carres 2 par 2 sur mobile (12 juil) ===== */
@media (max-width:700px){
  /* Fini le defilement horizontal qui coupait les items : une vraie grille */
  .reassure-bar .container{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;overflow:visible!important;padding-left:0!important;padding-right:0!important;}
  .reassure-bar .reassure-item{min-width:0!important;width:auto!important;flex:none!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:3px!important;padding:.75rem .5rem!important;border-right:1px solid rgba(255,255,255,.12)!important;border-bottom:1px solid rgba(255,255,255,.12)!important;}
  /* pas de bordure a droite sur la colonne de droite */
  .reassure-bar .reassure-item:nth-child(2n){border-right:none!important;}
  /* si nombre impair (boutique = 3 items), le dernier prend toute la largeur */
  .reassure-bar .reassure-item:last-child:nth-child(odd){grid-column:1 / -1!important;border-right:none!important;}
  /* pas de bordure sous la derniere rangee */
  .reassure-bar .reassure-item:last-child,.reassure-bar .reassure-item:nth-last-child(2):nth-child(2n+1){border-bottom:none!important;}
  .reassure-bar .r-key{font-size:.66rem!important;letter-spacing:.05em!important;white-space:nowrap!important;}
  .reassure-bar .r-sub{font-size:.84rem!important;white-space:nowrap!important;}
}
@media (max-width:360px){
  .reassure-bar .r-sub{font-size:.76rem!important;}
  .reassure-bar .r-key{font-size:.6rem!important;}
}
/* ===== kg-mobile-v4 : les puces du carrousel repassent AU-DESSUS de la grille 2x2 ===== */
@media (max-width:700px){
  /* Hauteur deterministe de la barre : 2 rangees x 52px = 104px */
  .reassure-bar .reassure-item{min-height:52px!important;box-sizing:border-box!important;}
  /* Les puces + fleches remontent au-dessus de la barre (104px + marge) */
  .hc-ui{inset:auto 0 120px 0!important;}
  .hc-ui .container{justify-content:center!important;padding-left:16px!important;padding-right:16px!important;}
  /* Puces plus compactes */
  .hc-dots{gap:.4rem!important;justify-content:center!important;}
  .hc-dot{width:20px!important;height:4px!important;}
  .hc-dot.is-active{width:34px!important;}
  .hc-arrows{display:none!important;}
}
@media (max-width:360px){
  .reassure-bar .reassure-item{min-height:48px!important;}
  .hc-ui{inset:auto 0 112px 0!important;}
}
/* ===== kg-hcui-fix : les puces du carrousel vivent DANS la photo (12 juil) =====
   .hc-ui est maintenant le dernier enfant de .hc-track (grille des diapos).
   On le pose dans la meme cellule que les diapos, colle en bas -> il est TOUJOURS
   au-dessus de la ligne orange, peu importe la hauteur de la barre de reassurance. */
.hero-carousel .hc-track{position:relative;}
.hero-carousel .hc-ui{position:relative!important;inset:auto!important;grid-area:1 / 1!important;align-self:end!important;z-index:3!important;pointer-events:none;padding-bottom:1.4rem!important;}
.hero-carousel .hc-ui .container{display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.hero-carousel .hc-dots,.hero-carousel .hc-arrows{pointer-events:auto;}
@media (max-width:700px){
  .hero-carousel .hc-ui{padding-bottom:1rem!important;}
  .hero-carousel .hc-ui .container{justify-content:center!important;}
  .hero-carousel .hc-arrows{display:none!important;}
}
/* ===== kg-mobile-v5 : plus d air entre les puces et les carres (12 juil) ===== */
@media (max-width:700px){
  /* Les puces remontent un peu plus haut dans la photo */
  .hero-carousel .hc-ui{padding-bottom:2rem!important;}
  /* Les carres descendent : plus de marge interne en haut de la barre */
  .reassure-bar.hero-stats{padding-top:10px!important;padding-bottom:4px!important;}
  .reassure-bar .reassure-item{padding-top:.85rem!important;padding-bottom:.85rem!important;min-height:58px!important;}
}

/* ===== kg-blog-tabs : alignement page blogue (15 juil) — .tabs-head/.cat-chips n avaient AUCUNE regle de layout, les chips collaient les cartes ===== */
.tabs-head{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.25rem;margin-bottom:var(--space-md,2rem);}
.tabs-head h2{margin:0;}
.tabs-spacer{flex:1 1 auto;}
.cat-chips{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;}
.cat-chip{cursor:pointer;white-space:nowrap;line-height:1;}
.tabs-head + .grid-3, .tabs-head + .grid-4{margin-top:var(--space-sm,1.25rem);}
@media(max-width:700px){
  .tabs-head{flex-direction:column;align-items:flex-start;gap:.9rem;}
  .tabs-spacer{display:none;}
  .cat-chips{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:4px;}
  .cat-chip{flex:0 0 auto;}
}

/* ===== kg-blog-hero : photo de fond animee (Ken Burns) sur le hero du blogue, comme les autres bannieres (15 juil) ===== */
.page-hero.has-hero-img{position:relative;}
.page-hero .hero-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0.34;z-index:0;pointer-events:none;}
.page-hero.kg-hero-shopimg .hero-bg-img{object-position:center 20%;}
@media (prefers-reduced-motion:no-preference){.page-hero .hero-bg-img{animation:kgKenburns 16s ease-in-out infinite alternate;will-change:transform;}}
.page-hero.has-hero-img::before{z-index:0;}
.page-hero.has-hero-img > .container{position:relative;z-index:1;}

/* ===== kg-hero-accent : mot cle du titre en orange fonce sur le hero blogue (15 juil) ===== */
.page-hero h1 .kg-accent{color:var(--karguo-orange) !important;font-style:normal;}

/* ===== kg-about-hero : texte contenu a gauche, ne passe pas sous la photo (15 juil) ===== */
.kg-about-hero h1{max-width:560px;}
.kg-about-hero .lede{max-width:700px;text-align:left;}
@media (max-width:900px){.kg-about-hero h1,.kg-about-hero .lede{max-width:100%;}}

/* ===== kg-no-pattern : retirer le motif de lignes diagonales (::before) sur les heros AVEC photo (15 juil) ===== */
.page-hero.has-hero-img::before,.page-hero.kg-hero-shopimg::before{display:none !important;}


/* ===== kg-soum-bright : hero soumission un peu moins sombre (photo lisible) ===== */\nbody.page-id-11615 .page-hero .hero-bg-img,body.page-id-789 .page-hero .hero-bg-img{opacity:0.5;object-position:center 30%;animation-name:kgKenburnsSoft;}
@keyframes kgKenburnsSoft{from{transform:scale(1);}to{transform:scale(1.06);}}\n/* ===== kg-mform (8 sept 2026) : formulaires WooCommerce en UNE colonne sur mobile.
   Cause : woocommerce-layout.css impose width:47% + float aux .form-row-first/.form-row-last,
   et woocommerce-smallscreen.css ne corrige ca que pour lost_reset_password. Avec les marges
   imbriquees (page + carte + carte de section + formulaire), les champs prenom/nom tombaient
   a ~82px sur un ecran de 390px. ===== */
@media (max-width:768px){
  .woocommerce form .form-row-first,.woocommerce form .form-row-last,
  .woocommerce-page form .form-row-first,.woocommerce-page form .form-row-last,
  .woocommerce form .form-row-wide,.woocommerce-page form .form-row-wide{
    width:100%!important;float:none!important;clear:both!important;margin-right:0!important;margin-left:0!important;
  }
  .woocommerce form .form-row,.woocommerce-page form .form-row{min-width:0;}
  .woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,
  .woocommerce-page form .form-row input.input-text,.woocommerce-page form .form-row textarea,.woocommerce-page form .form-row select,
  .woocommerce-account form input[type=text],.woocommerce-account form input[type=email],
  .woocommerce-account form input[type=tel],.woocommerce-account form input[type=password],
  .woocommerce-account form select,.woocommerce-account form textarea{
    width:100%!important;min-width:0!important;box-sizing:border-box!important;min-height:48px;
  }
  .select2-container,.woocommerce-account .select2-container{width:100%!important;}
  .woocommerce-account .woocommerce-MyAccount-content,.kg-account-layout>.kg2-content{min-width:0;}
  .kg-account-layout .kg2-card{padding:14px 12px!important;}
  .kg-account-layout .kg2-form{padding:14px 12px!important;}
  .kg2-card .kg2-card{padding:12px 10px!important;}
}
/* kg-go-lockup 12 sept 2026 */.kg-go-lockup{display:inline-block;width:auto!important;max-width:240px!important;height:auto!important;vertical-align:middle}.kg-go2-eyebrow .kg-go-lockup{max-width:225px!important;margin-right:.45rem}.kg-path .kg-go-lockup{display:block;max-width:160px!important;margin:0 0 .55rem}.kg-fam-head h2 .kg-go-lockup,.pkg-family-head h2 .kg-go-lockup{max-width:225px!important;margin-right:.35rem;vertical-align:-.12em}.kg-go-logo .kg-go-lockup{display:block;max-width:255px!important}@media(max-width:700px){.kg-go-lockup{max-width:175px!important}.kg-go2-eyebrow .kg-go-lockup{max-width:170px!important}.kg-fam-head h2 .kg-go-lockup,.pkg-family-head h2 .kg-go-lockup{max-width:185px!important}.kg-go-logo .kg-go-lockup{max-width:205px!important}.kg-path .kg-go-lockup{max-width:135px!important}}