/* PASS10G — hiérarchie finale du tunnel.
 * Portée volontairement limitée au checkout : aucune règle de shell/sidebar/home.
 * Ordre visuel : Réception -> Transport -> CGV -> Paiement -> Coordonnées CB.
 */

.pps-checkout .pps-checkout-step-inline{
  margin-top:18px!important;
}
.pps-checkout .pps-checkout-step-head{
  margin:0 0 12px!important;
  padding:16px 18px!important;
  border:1px solid #cfe0f5!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,#eef6ff 0%,#e6f0ff 100%)!important;
  box-shadow:none!important;
}
.pps-checkout .pps-checkout-step-head h3{
  margin:0 0 3px!important;
  font-size:22px!important;
  line-height:1.15!important;
  color:#183b66!important;
}
.pps-checkout .pps-checkout-step-head p{
  margin:0!important;
  font-size:13px!important;
  line-height:1.4!important;
  color:#5d7592!important;
}
.pps-checkout .pps-checkout-layout,
.pps-checkout .pps-checkout-form-panel,
.pps-checkout .pps-checkout-center-panel,
.pps-checkout .pps-checkout-center-flow{
  min-height:0!important;
  height:auto!important;
  width:100%!important;
  max-width:none!important;
  overflow:visible!important;
}
.pps-checkout .pps-checkout-form-panel{
  padding:14px!important;
  border-radius:16px!important;
}
.pps-checkout .pps-checkout-center-flow{
  display:grid!important;
  gap:10px!important;
}

/* 1 — RÉCEPTION : deux cartes compactes, équilibrées et lisibles. */
.pps-checkout .pps-reception-choice{
  width:100%!important;
  margin:0!important;
  padding:14px!important;
  border:1px solid #d9e9e1!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(18,66,49,.035)!important;
}
.pps-checkout .pps-reception-choice-head{
  margin:0 0 10px!important;
  gap:2px!important;
}
.pps-checkout .pps-reception-choice-kicker{
  font-size:10px!important;
  letter-spacing:.08em!important;
  color:#08734c!important;
}
.pps-checkout .pps-reception-choice h5{
  margin:0!important;
  font-size:14px!important;
  line-height:1.25!important;
  color:#19382e!important;
}
.pps-checkout .pps-reception-options-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
}
.pps-checkout .pps-reception-option{
  position:relative!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:12px!important;
  row-gap:8px!important;
  align-content:start!important;
  min-width:0!important;
  min-height:112px!important;
  height:auto!important;
  margin:0!important;
  padding:13px!important;
  border:1px solid #dbe9e2!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfdfc 100%)!important;
  box-shadow:none!important;
  transform:none!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.pps-checkout .pps-reception-option:hover{
  transform:none!important;
  border-color:#9fd5bc!important;
  box-shadow:0 7px 18px rgba(12,104,68,.07)!important;
}
.pps-checkout .pps-reception-option.is-selected{
  border-color:#28b77b!important;
  background:linear-gradient(145deg,#effcf5 0%,#f8fffb 100%)!important;
  box-shadow:0 0 0 1px rgba(40,183,123,.09),0 7px 18px rgba(12,104,68,.055)!important;
}
.pps-checkout .pps-reception-option>input[type="radio"]{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
}
.pps-checkout .pps-reception-radio{
  position:absolute!important;
  top:11px!important;
  right:11px!important;
  width:16px!important;
  height:16px!important;
  border:1.5px solid #a8bbb3!important;
  border-radius:50%!important;
  background:#fff!important;
}
.pps-checkout .pps-reception-option.is-selected .pps-reception-radio{
  border-color:#07955f!important;
  box-shadow:inset 0 0 0 4px #fff!important;
  background:#07955f!important;
}
.pps-checkout .pps-reception-icon{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:48px!important;
  height:48px!important;
  margin:0!important;
  border-radius:14px!important;
  border:1px solid #d7eee3!important;
  background:#eefaf4!important;
  color:#078957!important;
}
.pps-checkout .pps-reception-icon svg{
  width:29px!important;
  height:29px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.4!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.pps-checkout .pps-reception-option-copy{
  grid-column:2!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding-right:20px!important;
  gap:3px!important;
}
.pps-checkout .pps-reception-option-copy strong{
  font-size:14px!important;
  line-height:1.25!important;
  color:#153c2d!important;
}
.pps-checkout .pps-reception-option-copy small{
  max-width:none!important;
  font-size:10.5px!important;
  line-height:1.35!important;
  color:#637a70!important;
}
.pps-checkout .pps-reception-price-block{
  grid-column:2!important;
  grid-row:2!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  gap:10px!important;
  margin:0!important;
  padding:8px 10px!important;
  border:1px solid #e0ebe6!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.86)!important;
}
.pps-checkout .pps-reception-price-block b{
  flex:0 0 auto!important;
  font-size:15px!important;
  line-height:1!important;
  color:#067747!important;
}
.pps-checkout .pps-reception-price-block small{
  margin:0!important;
  font-size:9.5px!important;
  line-height:1.25!important;
  text-align:right!important;
  color:#566c63!important;
}

/* 2 — TRANSPORT : résolution du tarif dans son propre bloc, avant les CGV. */
.pps-checkout .pps-delivery-transport-panel{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr)!important;
  gap:10px 12px!important;
  width:100%!important;
  margin:10px 0 0!important;
  padding:13px!important;
  border:1px solid #cde8dc!important;
  border-radius:13px!important;
  background:linear-gradient(145deg,#f6fffa 0%,#fbfffd 100%)!important;
  box-shadow:none!important;
}
.pps-checkout .pps-delivery-transport-panel[hidden]{display:none!important;}
.pps-checkout .pps-delivery-transport-panel:has(.pps-transport-wallet-box[hidden]){
  grid-template-columns:minmax(0,1fr)!important;
}
.pps-checkout .pps-delivery-transport-head{
  grid-column:1 / -1!important;
  display:flex!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:6px 10px!important;
  margin:0!important;
  padding:0 1px 3px!important;
}
.pps-checkout .pps-delivery-transport-head>span{
  flex:0 0 auto!important;
  font-size:9px!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  color:#078957!important;
}
.pps-checkout .pps-delivery-transport-head>strong{
  font-size:12px!important;
  line-height:1.3!important;
  color:#1c4435!important;
}
.pps-checkout .pps-reference-postcode-wrap{
  min-width:0!important;
  margin:0!important;
  padding:11px!important;
  border:1px solid #dbe9e2!important;
  border-radius:11px!important;
  background:#fff!important;
}
.pps-checkout .pps-reference-postcode-wrap label{
  margin-bottom:5px!important;
  font-size:10.5px!important;
  color:#1d4637!important;
}
.pps-checkout .pps-reference-postcode-wrap input.pps-reference-postcode{
  width:100%!important;
  min-height:42px!important;
  margin:0!important;
  padding:8px 11px!important;
  border:1px solid #b9dacb!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:none!important;
  font-size:17px!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
  color:#113c2b!important;
}
.pps-checkout .pps-reference-postcode-wrap>small{
  display:block!important;
  margin:5px 0 0!important;
  font-size:9.5px!important;
  line-height:1.35!important;
  color:#6f827a!important;
}
.pps-checkout .pps-reference-wallet-status{
  margin:7px 0 0!important;
  padding:7px 9px!important;
  border-radius:8px!important;
  font-size:9.5px!important;
  line-height:1.35!important;
}
.pps-checkout .pps-transport-wallet-box{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding:11px!important;
  border:1px solid #dbe9e2!important;
  border-radius:11px!important;
  background:#fff!important;
}
.pps-checkout .pps-transport-wallet-box[hidden]{display:none!important;}
.pps-checkout .pps-transport-wallet-kicker{
  display:block!important;
  margin:0 0 7px!important;
  font-size:9px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  color:#08734c!important;
}
.pps-checkout .pps-delivery-transport-panel .pps-wallet-quote-choice{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:58px!important;
  margin:0!important;
  padding:9px 11px!important;
  border:1px solid #13a86a!important;
  border-radius:10px!important;
  background:linear-gradient(145deg,#effcf5,#e9f9f1)!important;
  color:#075b3b!important;
  box-shadow:none!important;
  font:inherit!important;
  text-align:center!important;
  cursor:pointer!important;
}
.pps-checkout .pps-delivery-transport-panel .pps-wallet-quote-choice[hidden]{display:none!important;}
.pps-checkout .pps-delivery-transport-panel .pps-wallet-quote-choice-label{
  font-size:11.5px!important;
  line-height:1.3!important;
  font-weight:900!important;
}
.pps-checkout .pps-delivery-transport-panel .pps-wallet-quote-choice small{
  margin-top:3px!important;
  font-size:9px!important;
  line-height:1.3!important;
  color:#60766c!important;
}

/* 3 — CGV : charnière nette entre transport et paiement. */
.pps-checkout .pps-checkout-terms-zone{
  width:100%!important;
  margin:0!important;
}
.pps-checkout .pps-checkout-terms-line{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-height:44px!important;
  margin:0!important;
  padding:9px 12px!important;
  border:1px solid #d9e7e0!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:none!important;
  font-size:11px!important;
  line-height:1.35!important;
  color:#324e43!important;
  cursor:pointer!important;
}
.pps-checkout .pps-checkout-terms-line:has(input:checked){
  border-color:#83d8af!important;
  background:#f1fcf6!important;
}
.pps-checkout .pps-checkout-terms-line input[type="checkbox"]{
  flex:0 0 auto!important;
  width:17px!important;
  height:17px!important;
  margin:0!important;
  accent-color:#08945e!important;
}
.pps-checkout .pps-checkout-terms-line a{
  font-weight:800!important;
  color:#07784e!important;
}

/* 4 — PAIEMENT : réellement déroulé par les CGV. */
.pps-checkout .pps-checkout-payment-unlocked[hidden]{display:none!important;}
.pps-checkout .pps-checkout-payment-unlocked:not([hidden]){
  display:grid!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:13px!important;
  border:1px solid #dbe8e2!important;
  border-radius:14px!important;
  background:#fbfdfc!important;
  box-shadow:0 6px 18px rgba(18,66,49,.035)!important;
  animation:pps10gPaymentReveal .18s ease-out both;
}
@keyframes pps10gPaymentReveal{
  from{opacity:0;transform:translateY(-4px)}
  to{opacity:1;transform:none}
}
.pps-checkout .pps-payment-section-head{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  margin:0!important;
  padding:0 1px!important;
}
.pps-checkout .pps-payment-section-kicker{
  flex:0 0 auto!important;
  margin-top:2px!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:#eaf8f1!important;
  color:#08734c!important;
  font-size:8.5px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
.pps-checkout .pps-payment-section-head h4{
  margin:0 0 2px!important;
  font-size:15px!important;
  line-height:1.2!important;
  color:#183c2e!important;
}
.pps-checkout .pps-payment-section-head p{
  margin:0!important;
  font-size:10px!important;
  line-height:1.35!important;
  color:#718078!important;
}
.pps-checkout .pps-checkout-payment-choice-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
}
.pps-checkout .pps-checkout-payment-choice-grid .pps-payment-choice-panel{
  width:100%!important;
  min-width:0!important;
  min-height:112px!important;
  height:auto!important;
  margin:0!important;
  padding:12px!important;
  border-radius:12px!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
.pps-checkout .pps-checkout-card-choice-zone{
  grid-column:1!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  border:1px solid #dce6e1!important;
  background:#fff!important;
  box-shadow:none!important;
}
.pps-checkout .pps-checkout-express-zone{
  grid-column:3!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  border:1px solid #cce8da!important;
  background:#f7fdf9!important;
  box-shadow:none!important;
}
.pps-checkout .pps-checkout-express-heading{
  margin:0!important;
}
.pps-checkout .pps-checkout-express-heading>span{
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:900!important;
  color:#174130!important;
}
.pps-checkout .pps-checkout-express-heading>small{
  font-size:9px!important;
  color:#809087!important;
}
.pps-checkout .pps-wallet-data-note{
  min-height:0!important;
  margin:0!important;
  font-size:9.5px!important;
  line-height:1.3!important;
  color:#6d7c75!important;
}
.pps-checkout .pps-checkout-card-choice-zone .pps-card-payment-choice{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  width:100%!important;
  min-height:52px!important;
  margin:auto 0 0!important;
  padding:7px 10px!important;
  border-radius:10px!important;
}
.pps-checkout .pps-card-payment-choice-label{
  font-size:12.5px!important;
  line-height:1.2!important;
}
.pps-checkout .pps-card-payment-choice-logos{
  gap:5px!important;
}
.pps-checkout .pps-card-payment-choice-logo{
  min-width:34px!important;
  min-height:21px!important;
  padding:2px 4px!important;
}
.pps-checkout .pps-card-payment-choice-logo img{
  max-width:32px!important;
  max-height:16px!important;
}
.pps-checkout .pps-checkout-express-zone .pps-stripe-express-bar-checkout{
  width:100%!important;
  margin:auto 0 0!important;
  padding:0!important;
}
.pps-checkout .pps-checkout-express-zone .pps-stripe-express-mount{
  width:100%!important;
  min-height:46px!important;
  border-radius:9px!important;
  overflow:hidden!important;
}
.pps-checkout .pps-payment-choice-separator{
  grid-column:2!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:30px!important;
  min-width:30px!important;
  gap:6px!important;
  color:#9aaba3!important;
  font-size:9px!important;
  font-weight:800!important;
}
.pps-checkout .pps-payment-choice-separator::before,
.pps-checkout .pps-payment-choice-separator::after{
  content:""!important;
  display:block!important;
  width:1px!important;
  min-height:16px!important;
  flex:1 1 auto!important;
  background:#dce6e1!important;
}

/* 5 — COORDONNÉES CB : ouvertes sous les moyens de paiement, sans grand vide. */
.pps-checkout .pps-card-payment-flow{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:13px!important;
  border:1px solid #dce7e2!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.pps-checkout .pps-card-payment-flow[hidden]{display:none!important;}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head{
  margin:0 0 10px!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4{
  font-size:16px!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head p{
  font-size:10px!important;
  line-height:1.35!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields{
  column-gap:10px!important;
  row-gap:10px!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields label{
  font-size:10px!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields input:not([type="checkbox"]),
.pps-checkout .pps-card-payment-flow .pps-delivery-fields input:not([type="checkbox"]){
  min-height:40px!important;
  padding:8px 10px!important;
  border-radius:8px!important;
}

@media(max-width:480px){
  .pps-checkout .pps-checkout-form-panel{padding:10px!important;}
  .pps-checkout .pps-reception-choice{padding:11px!important;}
  .pps-checkout .pps-reception-options-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
  }
  .pps-checkout .pps-reception-option{
    min-height:0!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    padding:11px!important;
  }
  .pps-checkout .pps-reception-icon{
    width:42px!important;
    height:42px!important;
    border-radius:12px!important;
  }
  .pps-checkout .pps-reception-icon svg{width:25px!important;height:25px!important;}
  .pps-checkout .pps-delivery-transport-panel{
    grid-template-columns:minmax(0,1fr)!important;
    padding:10px!important;
    gap:8px!important;
  }
  .pps-checkout .pps-checkout-payment-choice-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
  }
  .pps-checkout .pps-checkout-card-choice-zone{grid-column:1!important;grid-row:1!important;}
  .pps-checkout .pps-payment-choice-separator{
    grid-column:1!important;
    grid-row:2!important;
    flex-direction:row!important;
    width:100%!important;
    min-width:0!important;
    height:18px!important;
  }
  .pps-checkout .pps-payment-choice-separator::before,
  .pps-checkout .pps-payment-choice-separator::after{
    width:auto!important;
    height:1px!important;
    min-height:1px!important;
  }
  .pps-checkout .pps-checkout-express-zone{grid-column:1!important;grid-row:3!important;}
  .pps-checkout .pps-checkout-payment-choice-grid .pps-payment-choice-panel{
    min-height:0!important;
    padding:10px!important;
  }
  .pps-checkout .pps-payment-section-head{
    display:grid!important;
    gap:6px!important;
  }
  .pps-checkout .pps-payment-section-kicker{justify-self:start!important;}
  .pps-checkout .pps-card-payment-flow .pps-customer-fields{
    grid-template-columns:minmax(0,1fr)!important;
  }
}

/* PASS10G — le checkout public est un tunnel mono-colonne : aucune ancienne colonne
   de résumé ne doit réserver 40 % de l'espace et recréer le grand vide à droite. */
.pps-checkout .pps-checkout-step-inline .pps-checkout-layout,
.pps-checkout .pps-checkout-step-inline .pps-checkout-layout-repositioned{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;
  max-width:none!important;
  gap:0!important;
}
.pps-checkout .pps-checkout-step-inline .pps-checkout-form-panel,
.pps-checkout .pps-checkout-step-inline .pps-checkout-center-panel{
  grid-column:1!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}


/* PASS10H — alignement strict des deux choix de réception.
 * Jusqu'à 480px seulement on passe en pile : un navigateur desktop étroit / HiDPI
 * conserve bien Retrait et Livraison côte à côte. */
@media(min-width:481px){
  .pps-checkout .pps-reception-options-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    align-items:stretch!important;
  }
  .pps-checkout .pps-reception-options-grid > .pps-reception-option{
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:100%!important;
    min-height:118px!important;
    margin:0!important;
  }
}

/* Le bloc postal de référence n'est jamais affiché quand un wallet est disponible.
 * Il reste présent dans le DOM pour la logique de devis et comme secours si le wallet
 * est indisponible. Après validation du tarif, le panneau Transport entier est masqué
 * par front.js : aucun récapitulatif 36000 redondant à l'écran. */
.pps-checkout .pps-reference-postcode-wrap[hidden]{display:none!important;}

/* PASS10I — verrou physique final de la grille Réception.
 * Cette feuille est chargée en dernier et possède un nom de fichier unique au build.
 * Aucun ancien fichier CSS ne peut donc décider du nombre de colonnes. */
@media (min-width: 601px) {
  .pps-checkout .pps-reception-options-grid {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    align-items:stretch!important;
    gap:12px!important;
    width:100%!important;
  }
  .pps-checkout .pps-reception-options-grid > .pps-reception-option {
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:100%!important;
    margin:0!important;
  }
}
@media (max-width: 600px) {
  .pps-checkout .pps-reception-options-grid {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:9px!important;
  }
}


/* PASS10O — TYPOGRAPHIE COORDONNÉES = TYPOGRAPHIE DU TUNNEL
 * Les contrôles natifs n'héritent pas toujours de la police du parent. On verrouille
 * ici exactement la même famille et la même échelle que le bloc « moyen de paiement ». */
.pps-checkout .pps-card-payment-flow,
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head,
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4,
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head p,
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-kicker,
.pps-checkout .pps-card-payment-flow .pps-customer-fields label,
.pps-checkout .pps-card-payment-flow .pps-delivery-fields label,
.pps-checkout .pps-card-payment-flow .pps-primary-address-note,
.pps-checkout .pps-card-payment-flow .pps-checkline,
.pps-checkout .pps-card-payment-flow input,
.pps-checkout .pps-card-payment-flow button{
  font-family:inherit!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-kicker{
  display:inline-flex!important;align-items:center!important;
  margin:0 0 4px!important;padding:4px 7px!important;border-radius:999px!important;
  background:#eaf8f1!important;color:#08734c!important;
  font-size:8.5px!important;line-height:1!important;font-weight:900!important;
  letter-spacing:.06em!important;text-transform:uppercase!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4{
  margin:0 0 2px!important;font-size:15px!important;line-height:1.2!important;
  font-weight:500!important;letter-spacing:0!important;color:#183c2e!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head p{
  margin:0!important;font-size:10px!important;line-height:1.35!important;color:#718078!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields label,
.pps-checkout .pps-card-payment-flow .pps-delivery-fields label{
  font-size:10.5px!important;line-height:1.25!important;font-weight:800!important;color:#183c2e!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields input:not([type="checkbox"]),
.pps-checkout .pps-card-payment-flow .pps-delivery-fields input:not([type="checkbox"]){
  font-size:12.5px!important;line-height:1.25!important;font-weight:500!important;color:#183c2e!important;
}
.pps-checkout .pps-card-payment-flow .pps-primary-address-note,
.pps-checkout .pps-card-payment-flow .pps-checkline{
  font-size:10.5px!important;line-height:1.4!important;
}

/* PASS10S — HARMONISATION TYPOGRAPHIQUE DU BLOC COORDONNÉES
 * Objectif : le bloc carte reprend exactement la hiérarchie du bloc Paiement :
 * kicker 8.5 px, titre 15 px, aide 10 px, libellés 10.5 px, saisie 12.5 px.
 * Le correctif reste purement visuel : aucune logique checkout/transport/Stripe. */
.pps-checkout .pps-card-payment-flow,
.pps-checkout .pps-card-payment-flow input,
.pps-checkout .pps-card-payment-flow button,
.pps-checkout .pps-card-payment-flow label,
.pps-checkout .pps-card-payment-flow p,
.pps-checkout .pps-card-payment-flow h4{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  box-sizing:border-box!important;
}

/* Même composition que « Paiement sécurisé / Choisissez votre moyen de paiement ». */
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:start!important;
  gap:10px!important;
  margin:0 0 12px!important;
  padding:0 1px!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-kicker,
.pps-checkout .pps-payment-section-kicker{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:start!important;
  margin:2px 0 0!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:#eaf8f1!important;
  color:#08734c!important;
  font-size:8.5px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-title{
  min-width:0!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4,
.pps-checkout .pps-payment-section-head h4{
  margin:0 0 2px!important;
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:0!important;
  color:#183c2e!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head p,
.pps-checkout .pps-payment-section-head p{
  margin:0!important;
  font-size:10px!important;
  line-height:1.4!important;
  font-weight:400!important;
  letter-spacing:0!important;
  color:#718078!important;
}

/* Champs : densité identique au reste du tunnel, sans effet "formulaire WordPress". */
.pps-checkout .pps-card-payment-flow .pps-customer-fields{
  column-gap:10px!important;
  row-gap:9px!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields label:not(.pps-checkline),
.pps-checkout .pps-card-payment-flow .pps-delivery-fields label:not(.pps-checkline){
  gap:5px!important;
  font-size:10.5px!important;
  line-height:1.25!important;
  font-weight:700!important;
  letter-spacing:0!important;
  color:#183c2e!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields input:not([type="checkbox"]),
.pps-checkout .pps-card-payment-flow .pps-delivery-fields input:not([type="checkbox"]){
  width:100%!important;
  min-height:40px!important;
  padding:8px 10px!important;
  border-radius:8px!important;
  font-size:12.5px!important;
  line-height:1.3!important;
  font-weight:500!important;
  letter-spacing:0!important;
  color:#183c2e!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields input::placeholder,
.pps-checkout .pps-card-payment-flow .pps-delivery-fields input::placeholder{
  font-size:12px!important;
  font-weight:400!important;
  color:#93a19a!important;
}

/* Sous-blocs adresse / consentements : même rythme de 10–11 px. */
.pps-checkout .pps-card-payment-flow .pps-primary-address-note{
  margin:1px 0 0!important;
  font-size:10.5px!important;
  line-height:1.4!important;
  font-weight:400!important;
  color:#52665d!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkline{
  min-height:42px!important;
  margin:1px 0 0!important;
  padding:10px 12px!important;
  gap:9px!important;
  border-radius:10px!important;
  font-size:10.5px!important;
  line-height:1.35!important;
  font-weight:700!important;
  color:#183c2e!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkline input[type="checkbox"]{
  width:16px!important;
  height:16px!important;
  margin:0!important;
  flex:0 0 16px!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields{
  margin-top:1px!important;
  padding:12px!important;
  border-radius:12px!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields>h4{
  margin:0 0 9px!important;
  padding:0 0 7px!important;
  border-bottom:1px solid #e1ebe6!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:800!important;
  color:#183c2e!important;
}

/* Le bouton final reste un CTA, mais sans changer d'échelle typographique. */
.pps-checkout .pps-card-payment-flow .pps-checkout-card-submit-zone{
  margin-top:1px!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-card-submit-zone .pps-validate-order{
  min-height:48px!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:800!important;
}
.pps-checkout .pps-card-payment-flow .pps-card-payment-caption{
  margin:7px 0 0!important;
  font-size:9.5px!important;
  line-height:1.35!important;
  color:#7b8982!important;
}

@media(max-width:640px){
  .pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head{
    grid-template-columns:minmax(0,1fr)!important;
    gap:6px!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-kicker{
    justify-self:start!important;
    margin-top:0!important;
    white-space:normal!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-customer-fields{
    grid-template-columns:minmax(0,1fr)!important;
  }
}


/* PASS10T — FINITION TYPOGRAPHIQUE HOME / COORDONNEES
 * Passe visuelle uniquement : aucune logique panier, transport, CP ou Stripe.
 * But : renforcer légèrement la hiérarchie du bloc coordonnées sans agrandir le tunnel. */
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head{
  gap:11px!important;
  margin-bottom:13px!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-kicker{
  margin-top:2px!important;
  padding:4px 8px!important;
  font-size:8.7px!important;
  letter-spacing:.055em!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4{
  margin:0 0 3px!important;
  font-size:15.75px!important;
  line-height:1.16!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head p{
  font-size:10.25px!important;
  line-height:1.38!important;
  font-weight:450!important;
}

/* Les libellés avaient moins de présence que ceux des autres blocs du tunnel. */
.pps-checkout .pps-card-payment-flow .pps-customer-fields label:not(.pps-checkline),
.pps-checkout .pps-card-payment-flow .pps-delivery-fields label:not(.pps-checkline){
  gap:5px!important;
  font-size:11px!important;
  line-height:1.22!important;
  font-weight:750!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields input:not([type="checkbox"]),
.pps-checkout .pps-card-payment-flow .pps-delivery-fields input:not([type="checkbox"]){
  min-height:40px!important;
  padding:8px 10px!important;
  font-size:12.5px!important;
  line-height:1.28!important;
}
.pps-checkout .pps-card-payment-flow .pps-primary-address-note{
  font-size:10.65px!important;
  line-height:1.42!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkline{
  font-size:10.75px!important;
  line-height:1.35!important;
}

/* Adresse de livraison : sous-titre plus lisible, mais volontairement plus discret
 * que le titre principal « Informations et coordonnées ». */
.pps-checkout .pps-card-payment-flow .pps-delivery-fields{
  padding:12px!important;
  background:#fbfdfc!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields>h4{
  display:flex!important;
  align-items:center!important;
  min-height:30px!important;
  margin:0 0 10px!important;
  padding:6px 9px!important;
  border:1px solid #dcebe4!important;
  border-radius:8px!important;
  background:#f2faf6!important;
  color:#176247!important;
  font-size:11.5px!important;
  line-height:1.2!important;
  font-weight:850!important;
  letter-spacing:.005em!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields>h4::before{
  content:"";
  width:6px!important;
  height:6px!important;
  margin-right:7px!important;
  border-radius:999px!important;
  background:#23b77b!important;
  box-shadow:0 0 0 3px rgba(35,183,123,.10)!important;
  flex:0 0 6px!important;
}

/* CTA : même densité que le tunnel, pas d'effet de titre surdimensionné. */
.pps-checkout .pps-card-payment-flow .pps-checkout-card-submit-zone .pps-validate-order{
  min-height:46px!important;
  font-size:13.5px!important;
  font-weight:850!important;
}

@media(max-width:640px){
  .pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head{
    gap:6px!important;
    margin-bottom:11px!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4{
    font-size:15.5px!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-customer-fields label:not(.pps-checkline),
  .pps-checkout .pps-card-payment-flow .pps-delivery-fields label:not(.pps-checkline){
    font-size:10.8px!important;
  }
}

/* PASS10U — déploiement fiable de l'adresse de livraison différente. */
.pps-checkout .pps-card-payment-flow .pps-delivery-different-control[hidden],
.pps-checkout .pps-card-payment-flow .pps-delivery-fields[hidden]{
  display:none!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-control{
  display:grid!important;
  grid-template-columns:16px minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:10px!important;
  row-gap:2px!important;
  min-height:52px!important;
  padding:9px 10px!important;
  border:1px solid #dbe9e2!important;
  border-radius:11px!important;
  background:#f8fcfa!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-control.is-open{
  border-color:#8fd8b9!important;
  background:#f1fbf6!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-copy{
  display:flex!important;
  min-width:0!important;
  flex-direction:column!important;
  gap:2px!important;
  cursor:pointer!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-title{
  font-size:10.5px!important;
  line-height:1.25!important;
  font-weight:800!important;
  color:#173d30!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-help{
  font-size:9.5px!important;
  line-height:1.35!important;
  font-weight:400!important;
  color:#667970!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-toggle{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  min-width:74px!important;
  min-height:32px!important;
  padding:6px 9px!important;
  border:1px solid #93d9bd!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#08734c!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:800!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-toggle:hover,
.pps-checkout .pps-card-payment-flow .pps-delivery-different-toggle:focus-visible{
  border-color:#079361!important;
  outline:none!important;
  box-shadow:0 0 0 2px rgba(7,147,97,.12)!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-toggle:disabled{
  opacity:.5!important;
  cursor:not-allowed!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-chevron{
  display:inline-block!important;
  font-size:13px!important;
  line-height:1!important;
  transition:transform .16s ease!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-control.is-open .pps-delivery-different-chevron{
  transform:rotate(180deg)!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields{
  border-color:#cfe5da!important;
  background:#fbfefc!important;
}
@media (max-width:640px){
  .pps-checkout .pps-card-payment-flow .pps-delivery-different-control{
    grid-template-columns:16px minmax(0,1fr)!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-delivery-different-toggle{
    grid-column:2!important;
    justify-self:start!important;
    margin-top:5px!important;
  }
}

/* PASS10V — LISIBILITÉ DES COORDONNÉES / ADRESSE DE LIVRAISON
 * Ajustement visuel demandé après contrôle réel desktop : les textes du formulaire
 * étaient trop petits par rapport au reste du tunnel. Aucune logique n'est modifiée. */
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head{
  gap:12px!important;
  margin-bottom:15px!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-kicker{
  padding:5px 9px!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.05em!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4{
  margin:0 0 4px!important;
  font-size:17px!important;
  line-height:1.18!important;
  font-weight:800!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head p{
  font-size:11.25px!important;
  line-height:1.45!important;
  font-weight:450!important;
  color:#61756b!important;
}

/* Libellés et valeurs : taille confortable, sans alourdir le tunnel. */
.pps-checkout .pps-card-payment-flow .pps-customer-fields{
  column-gap:12px!important;
  row-gap:11px!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields label:not(.pps-checkline),
.pps-checkout .pps-card-payment-flow .pps-delivery-fields label:not(.pps-checkline){
  gap:6px!important;
  font-size:12.25px!important;
  line-height:1.25!important;
  font-weight:750!important;
  color:#173d30!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields input:not([type="checkbox"]),
.pps-checkout .pps-card-payment-flow .pps-delivery-fields input:not([type="checkbox"]){
  min-height:43px!important;
  padding:9px 11px!important;
  font-size:14px!important;
  line-height:1.3!important;
  font-weight:500!important;
  color:#173d30!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields input::placeholder,
.pps-checkout .pps-card-payment-flow .pps-delivery-fields input::placeholder{
  font-size:13px!important;
}
.pps-checkout .pps-card-payment-flow .pps-primary-address-note{
  margin-top:2px!important;
  font-size:11.4px!important;
  line-height:1.45!important;
  color:#566a60!important;
}

/* Ligne « autre adresse » : elle reste secondaire mais devient réellement lisible. */
.pps-checkout .pps-card-payment-flow .pps-delivery-different-control{
  grid-template-columns:17px minmax(0,1fr) auto!important;
  column-gap:11px!important;
  min-height:58px!important;
  padding:10px 12px!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-title{
  font-size:12.25px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-help{
  margin-top:1px!important;
  font-size:10.75px!important;
  line-height:1.4!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-toggle{
  min-width:78px!important;
  min-height:34px!important;
  padding:7px 10px!important;
  font-size:11.25px!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-chevron{
  font-size:14px!important;
}

/* Bloc déployé : même échelle que l'adresse principale. */
.pps-checkout .pps-card-payment-flow .pps-delivery-fields{
  padding:14px!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields>h4{
  min-height:34px!important;
  margin-bottom:12px!important;
  padding:7px 10px!important;
  font-size:12.75px!important;
  line-height:1.25!important;
  font-weight:850!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields .pps-grid{
  column-gap:12px!important;
  row-gap:11px!important;
}

/* Consentement newsletter : ne doit plus paraître minuscule sous les champs. */
.pps-checkout .pps-card-payment-flow .pps-checkline{
  min-height:46px!important;
  padding:10px 12px!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkline input[type="checkbox"]{
  width:17px!important;
  height:17px!important;
  flex-basis:17px!important;
}

@media(max-width:640px){
  .pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4{
    font-size:16.5px!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head p{
    font-size:11px!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-customer-fields label:not(.pps-checkline),
  .pps-checkout .pps-card-payment-flow .pps-delivery-fields label:not(.pps-checkline){
    font-size:12px!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-customer-fields input:not([type="checkbox"]),
  .pps-checkout .pps-card-payment-flow .pps-delivery-fields input:not([type="checkbox"]){
    font-size:14px!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-delivery-different-control{
    grid-template-columns:17px minmax(0,1fr)!important;
  }
}


/* PASS10W — FINITION VISUELLE DES LIBELLÉS DU FORMULAIRE
 * Demande de contrôle desktop : renforcer les deux libellés de section repérés
 * et supprimer le bouton Ajouter/Masquer redondant. La case à cocher pilote seule
 * l'ouverture/fermeture du bloc d'adresse secondaire. */
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-kicker{
  padding:6px 10px!important;
  font-size:11.5px!important;
  line-height:1.05!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-control{
  grid-template-columns:17px minmax(0,1fr)!important;
  column-gap:11px!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-different-toggle{
  display:none!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields>h4{
  min-height:38px!important;
  padding:8px 11px!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:850!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields>h4::before{
  width:7px!important;
  height:7px!important;
  flex-basis:7px!important;
  margin-right:8px!important;
}
@media(max-width:640px){
  .pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-kicker{
    font-size:11px!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-delivery-fields>h4{
    font-size:13.5px!important;
  }
}

/* PASS10Y — EMPILAGE DES TITRES COORDONNÉES + HARMONISATION
 * Demande client :
 * - le macaron "Informations et coordonnées" doit être sur sa propre ligne ;
 * - le titre "Vos informations et coordonnées" doit être à la ligne suivante ;
 * - les formulaires doivent commencer ensuite en dessous ;
 * - le titre "Adresse de livraison différente" doit rester présent et avoir
 *   la même échelle visuelle que le titre principal ;
 * - le bouton Ajouter/Masquer reste supprimé, seul le bloc est conservé. */
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:8px!important;
  margin-bottom:18px!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-kicker{
  align-self:flex-start!important;
  margin:0!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-title{
  display:block!important;
  width:100%!important;
  min-width:0!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4,
.pps-checkout .pps-card-payment-flow .pps-delivery-fields > h4{
  display:block!important;
  width:100%!important;
  margin:0 0 6px!important;
  font-size:17px!important;
  line-height:1.18!important;
  font-weight:800!important;
  color:#173d30!important;
}
.pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head p{
  display:block!important;
  width:100%!important;
  max-width:780px!important;
  margin:0!important;
}
.pps-checkout .pps-card-payment-flow .pps-customer-fields{
  margin-top:0!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields{
  margin-top:12px!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields > h4{
  min-height:0!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
}
.pps-checkout .pps-card-payment-flow .pps-delivery-fields > h4::before{
  display:none!important;
  content:none!important;
}
@media(max-width:640px){
  .pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head{
    gap:7px!important;
    margin-bottom:16px!important;
  }
  .pps-checkout .pps-card-payment-flow .pps-checkout-coordinates-head h4,
  .pps-checkout .pps-card-payment-flow .pps-delivery-fields > h4{
    font-size:16px!important;
  }
}

/* PASS10Z — logique Carte/adresse différente dans front-pass10z.js ; présentation PASS10Y conservée. */

/* PASS10AE — total livré explicite dans la tuile Livraison. */
.pps-checkout-step .pps-delivery-included-label{display:block;margin-top:2px;color:#047857;font-size:11px;font-weight:850;line-height:1.15;}
.pps-checkout-step .pps-delivery-included-label[hidden]{display:none!important;}


/* PASS10AJ — récapitulatif final avant paiement : poids/sacs + produit + transport + TTC. */
.pps-client-order-recap{display:grid;gap:12px;padding:18px;border:1px solid rgba(38,91,61,.18);border-radius:18px;background:linear-gradient(180deg,#fff 0%,#f8fbf6 100%);box-shadow:0 12px 30px rgba(31,65,45,.08)}
.pps-client-order-recap>span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#65736a}
.pps-client-order-recap>strong{font-size:clamp(28px,5vw,42px);line-height:1;color:#173b28}
.pps-client-order-recap>em{font-style:normal;font-weight:700;color:#5e6e63}
.pps-client-order-recap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pps-client-order-recap-grid>div{padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #e6ece4;display:grid;gap:3px}
.pps-client-order-recap-grid small{font-size:11px;color:#78827b;text-transform:uppercase;letter-spacing:.05em}
.pps-client-order-recap-grid b{font-size:14px;color:#25382d}
.pps-client-order-recap-prices{display:grid;gap:7px;padding-top:4px}
.pps-client-order-recap-prices>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px dashed #dfe7dc}
.pps-client-order-recap-prices>div.is-total{border-bottom:0;padding-top:10px;font-size:17px;color:#173b28}
@media(max-width:640px){.pps-client-order-recap-grid{grid-template-columns:1fr 1fr}.pps-client-order-recap-grid>div:last-child:nth-child(3){grid-column:1/-1}.pps-client-order-recap>strong{font-size:32px}}


/* PASS10AN — checkout commercial compact.
 * Objectif : réception + CGV + paiement immédiatement sous le sélecteur de sacs,
 * sans grand bandeau ni cartes surdimensionnées. Aucun sélecteur JS n'est modifié. */
.pps-checkout .pps-checkout-step-inline{margin-top:8px!important;}
.pps-checkout .pps-checkout-step-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:0 0 7px!important;padding:9px 12px!important;border:1px solid #dcebe3!important;border-radius:12px!important;background:#f8fcfa!important;box-shadow:none!important;}
.pps-checkout .pps-checkout-step-head h3{margin:0!important;font-size:15px!important;line-height:1.15!important;color:#0b6848!important;font-weight:850!important;}
.pps-checkout .pps-checkout-step-head p{margin:0!important;font-size:10px!important;line-height:1.25!important;color:#6c7f76!important;text-align:right!important;}
.pps-checkout .pps-checkout-form-panel{padding:9px!important;border-radius:14px!important;}
.pps-checkout .pps-checkout-center-flow{gap:7px!important;}
.pps-checkout .pps-reception-choice{padding:9px!important;border-radius:13px!important;box-shadow:none!important;}
.pps-checkout .pps-reception-choice-head{display:flex!important;align-items:center!important;gap:8px!important;margin:0 0 7px!important;}
.pps-checkout .pps-reception-choice-kicker{padding:3px 6px!important;border-radius:999px!important;background:#edf8f2!important;font-size:8px!important;line-height:1!important;white-space:nowrap!important;}
.pps-checkout .pps-reception-choice h5{font-size:12.5px!important;line-height:1.2!important;}
.pps-checkout .pps-reception-options-grid{gap:8px!important;}
.pps-checkout .pps-reception-option{grid-template-columns:38px minmax(0,1fr)!important;column-gap:9px!important;row-gap:5px!important;min-height:86px!important;padding:9px 10px!important;border-radius:11px!important;}
.pps-checkout .pps-reception-radio{top:8px!important;right:8px!important;width:14px!important;height:14px!important;}
.pps-checkout .pps-reception-icon{width:38px!important;height:38px!important;border-radius:10px!important;}
.pps-checkout .pps-reception-icon svg{width:23px!important;height:23px!important;}
.pps-checkout .pps-reception-option-copy strong{font-size:13px!important;line-height:1.15!important;}
.pps-checkout .pps-reception-option-copy small{font-size:9.5px!important;line-height:1.25!important;}
.pps-checkout .pps-reception-price-block{min-height:27px!important;padding:5px 8px!important;border-radius:8px!important;}
.pps-checkout .pps-reception-price-block b{font-size:13px!important;}
.pps-checkout .pps-reception-price-block small{font-size:8.5px!important;line-height:1.15!important;}
.pps-checkout .pps-checkout-terms-line{min-height:36px!important;padding:7px 10px!important;border-radius:9px!important;font-size:10px!important;gap:7px!important;}
.pps-checkout .pps-checkout-terms-line input[type="checkbox"]{width:15px!important;height:15px!important;}
.pps-checkout .pps-checkout-payment-unlocked:not([hidden]){gap:7px!important;padding:9px!important;border-radius:12px!important;box-shadow:none!important;}
.pps-checkout .pps-payment-section-head{align-items:center!important;gap:8px!important;}
.pps-checkout .pps-payment-section-kicker{margin:0!important;padding:3px 6px!important;font-size:8px!important;}
.pps-checkout .pps-payment-section-head h4{margin:0!important;font-size:13px!important;line-height:1.15!important;}
.pps-checkout .pps-payment-section-head p{margin:1px 0 0!important;font-size:9px!important;line-height:1.2!important;}
.pps-checkout .pps-checkout-payment-choice-grid{grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr)!important;gap:7px!important;}
.pps-checkout .pps-checkout-payment-choice-grid .pps-payment-choice-panel{min-height:88px!important;padding:9px!important;border-radius:10px!important;}
.pps-checkout .pps-checkout-card-choice-zone,.pps-checkout .pps-checkout-express-zone{gap:5px!important;}
.pps-checkout .pps-checkout-express-heading>span{font-size:12px!important;}
.pps-checkout .pps-checkout-express-heading>small{font-size:8px!important;}
.pps-checkout .pps-wallet-data-note{font-size:8.5px!important;line-height:1.2!important;}
.pps-checkout .pps-checkout-card-choice-zone .pps-card-payment-choice{min-height:42px!important;padding:5px 8px!important;border-radius:8px!important;gap:3px!important;}
.pps-checkout .pps-card-payment-choice-label{font-size:11.5px!important;}
.pps-checkout .pps-checkout-express-zone .pps-stripe-express-mount{min-height:40px!important;border-radius:8px!important;}
.pps-checkout .pps-payment-choice-separator{width:22px!important;min-width:22px!important;font-size:8px!important;}
.pps-checkout .pps-stripe-express-fallback{margin:4px 0 0!important;font-size:9px!important;line-height:1.25!important;text-align:center!important;}
.pps-checkout .pps-card-payment-flow{padding:10px!important;border-radius:10px!important;}
@media(max-width:600px){.pps-checkout .pps-checkout-step-head{display:block!important;padding:8px 10px!important;}.pps-checkout .pps-checkout-step-head p{margin-top:2px!important;text-align:left!important;}.pps-checkout .pps-reception-option{min-height:0!important;}.pps-checkout .pps-checkout-payment-choice-grid{grid-template-columns:minmax(0,1fr)!important;}.pps-checkout .pps-payment-choice-separator{width:100%!important;min-width:0!important;}}
\n/* PASS10AQ — finition checkout compacte : priorité aux choix, moins de cadres et de hauteur. */\n.pps-checkout .pps-checkout-step-inline{margin-top:5px!important;}\n.pps-checkout .pps-checkout-step-inline .pps-checkout-step-head{display:none!important;}\n.pps-checkout .pps-checkout-form-panel{padding:6px!important;border-radius:12px!important;}\n.pps-checkout .pps-checkout-center-flow{gap:5px!important;}\n.pps-checkout .pps-reception-choice{padding:7px!important;border-radius:11px!important;}\n.pps-checkout .pps-reception-choice-head{margin:0 0 5px!important;gap:6px!important;}\n.pps-checkout .pps-reception-choice-kicker{padding:3px 6px!important;font-size:7.5px!important;}\n.pps-checkout .pps-reception-choice h5{font-size:12px!important;}\n.pps-checkout .pps-reception-options-grid{gap:6px!important;}\n.pps-checkout .pps-reception-option{grid-template-columns:32px minmax(0,1fr)!important;column-gap:8px!important;row-gap:4px!important;min-height:68px!important;padding:7px 9px!important;border-radius:10px!important;}\n.pps-checkout .pps-reception-icon{width:32px!important;height:32px!important;border-radius:9px!important;}\n.pps-checkout .pps-reception-icon svg{width:20px!important;height:20px!important;}\n.pps-checkout .pps-reception-option-copy strong{font-size:12px!important;}\n.pps-checkout .pps-reception-option-copy small{font-size:8.7px!important;line-height:1.2!important;}\n.pps-checkout .pps-reception-price-block{min-height:24px!important;padding:4px 7px!important;border-radius:7px!important;}\n.pps-checkout .pps-reception-price-block b{font-size:12.5px!important;}\n.pps-checkout .pps-reception-price-block small{font-size:8px!important;}\n.pps-checkout .pps-checkout-terms-line{min-height:31px!important;padding:5px 9px!important;font-size:9.5px!important;border-radius:8px!important;}\n.pps-checkout .pps-checkout-payment-unlocked:not([hidden]){padding:7px!important;gap:5px!important;border-radius:10px!important;}\n.pps-checkout .pps-payment-section-head{display:flex!important;align-items:center!important;gap:7px!important;margin:0!important;}\n.pps-checkout .pps-payment-section-kicker{padding:3px 6px!important;font-size:7.5px!important;}\n.pps-checkout .pps-payment-section-head h4{font-size:12px!important;margin:0!important;}\n.pps-checkout .pps-payment-section-head p{font-size:8.3px!important;margin:0!important;}\n.pps-checkout .pps-checkout-payment-choice-grid{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr)!important;gap:5px!important;}\n.pps-checkout .pps-checkout-payment-choice-grid .pps-payment-choice-panel{min-height:72px!important;padding:7px 8px!important;border-radius:9px!important;}\n.pps-checkout .pps-checkout-express-heading>span{font-size:11.5px!important;}\n.pps-checkout .pps-checkout-express-heading>small{font-size:7.5px!important;}\n.pps-checkout .pps-wallet-data-note{margin:1px 0 2px!important;font-size:8px!important;line-height:1.15!important;}\n.pps-checkout .pps-checkout-card-choice-zone .pps-card-payment-choice{min-height:36px!important;padding:4px 7px!important;border-radius:7px!important;}\n.pps-checkout .pps-card-payment-choice-label{font-size:11px!important;}\n.pps-checkout .pps-checkout-express-zone .pps-stripe-express-mount{min-height:36px!important;border-radius:7px!important;}\n.pps-checkout .pps-payment-choice-separator{width:16px!important;min-width:16px!important;font-size:7.5px!important;}\n.pps-checkout .pps-stripe-express-fallback{margin:3px 0 0!important;padding:0!important;font-size:8.2px!important;line-height:1.2!important;text-align:center!important;color:#8a3e36!important;}\n@media(max-width:600px){\n  .pps-checkout .pps-checkout-payment-choice-grid{grid-template-columns:minmax(0,1fr)!important;gap:5px!important;}\n  .pps-checkout .pps-payment-choice-separator{width:100%!important;min-width:0!important;height:10px!important;}\n  .pps-checkout .pps-reception-options-grid{grid-template-columns:minmax(0,1fr)!important;}\n  .pps-checkout .pps-reception-option{min-height:62px!important;}\n}\n
/* PASS10AS — finition compacte réception + paiement. */
.pps-checkout .pps-checkout-step-inline{margin-top:4px!important;}
.pps-checkout .pps-checkout-form-panel{padding:5px!important;}
.pps-checkout .pps-checkout-center-flow{gap:4px!important;}
.pps-checkout .pps-reception-choice{padding:6px!important;}
.pps-checkout .pps-reception-choice-head{margin:0 0 4px!important;}
.pps-checkout .pps-reception-choice h5{font-size:11.5px!important;}
.pps-checkout .pps-reception-option{min-height:60px!important;padding:6px 8px!important;grid-template-columns:29px minmax(0,1fr)!important;column-gap:7px!important;}
.pps-checkout .pps-reception-icon{width:29px!important;height:29px!important;}
.pps-checkout .pps-reception-icon svg{width:18px!important;height:18px!important;}
.pps-checkout .pps-reception-option-copy strong{font-size:11.5px!important;}
.pps-checkout .pps-reception-option-copy small{font-size:8.2px!important;}
.pps-checkout .pps-reception-price-block{min-height:22px!important;padding:3px 6px!important;}
.pps-checkout .pps-reception-price-block b{font-size:12px!important;}
.pps-checkout .pps-reception-price-block small{font-size:7.5px!important;}
.pps-checkout .pps-checkout-terms-line{min-height:27px!important;padding:4px 8px!important;font-size:9px!important;}
.pps-checkout .pps-checkout-payment-unlocked:not([hidden]){padding:6px!important;gap:4px!important;}
.pps-checkout .pps-payment-section-head{gap:6px!important;}
.pps-checkout .pps-payment-section-head h4{font-size:11.5px!important;}
.pps-checkout .pps-payment-section-head p{display:none!important;}
.pps-checkout .pps-checkout-payment-choice-grid{grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr)!important;gap:4px!important;}
.pps-checkout .pps-checkout-payment-choice-grid .pps-payment-choice-panel{min-height:61px!important;padding:6px 7px!important;}
.pps-checkout .pps-checkout-express-heading>span{font-size:11px!important;}
.pps-checkout .pps-checkout-express-heading>small{font-size:7px!important;}
.pps-checkout .pps-wallet-data-note{display:none!important;}
.pps-checkout .pps-checkout-card-choice-zone .pps-card-payment-choice{min-height:34px!important;padding:3px 6px!important;}
.pps-checkout .pps-card-payment-choice-label{font-size:10.5px!important;}
.pps-checkout .pps-checkout-express-zone .pps-stripe-express-mount{min-height:34px!important;}
.pps-checkout .pps-payment-choice-separator{width:12px!important;min-width:12px!important;font-size:7px!important;}
.pps-checkout .pps-stripe-express-fallback{margin:2px 0 0!important;font-size:7.8px!important;line-height:1.15!important;}
@media(max-width:600px){
  .pps-checkout .pps-reception-option{min-height:56px!important;}
  .pps-checkout .pps-checkout-payment-choice-grid{grid-template-columns:minmax(0,1fr)!important;gap:4px!important;}
  .pps-checkout .pps-payment-choice-separator{height:8px!important;width:100%!important;min-width:0!important;}
}

/* PASS10BQ — trace paiement visible et copiable, temporaire pour audit. */
.pps-wallet-path-audit{display:block!important;width:100%;box-sizing:border-box;margin:8px 0 0;padding:8px 10px;border:1px solid currentColor;border-radius:8px;background:#fff;color:#17211d;font-size:11px;line-height:1.35;text-align:left!important;}
.pps-wallet-path-audit>summary{cursor:pointer;font-weight:700;font-size:11px;}
.pps-wallet-path-audit-actions{display:flex;justify-content:flex-end;margin:6px 0;}
.pps-wallet-path-audit-actions button{appearance:none;border:1px solid currentColor;border-radius:6px;background:#fff;color:inherit;padding:4px 8px;font:inherit;font-weight:700;cursor:pointer;}
.pps-wallet-path-audit pre{margin:6px 0 0;padding:8px;max-height:420px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#f6f7f6;border-radius:6px;font:10px/1.42 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#17211d;}

/* PASS30 — bandeau administrable au-dessus du héros régional, sans épis ajoutés. */
.pps-checkout.pps-modern-v2 > .pps-regional-standard-banner {
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin: 0 0 24px;
  padding: 16px 26px;
  border: 1px solid #d3e9df;
  border-radius: 28px;
  background: linear-gradient(180deg, #f4fbf7 0%, #edf8f2 100%);
  color: #005c46;
  text-align: center;
}
.pps-checkout.pps-modern-v2 > .pps-regional-standard-banner > p {
  min-width: 0;
  margin: 0;
  padding: 0;
  color: inherit;
  font-family: inherit;
  font-size: min(var(--pps-standard-title-size, 48px), clamp(22px, 3.2vw, 84px));
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -.025em;
  text-wrap: balance;
  overflow-wrap: anywhere;
}
@media (max-width: 680px) {
  .pps-checkout.pps-modern-v2 > .pps-regional-standard-banner {
    padding: 16px 10px;
    margin-bottom: 18px;
    border-radius: 22px;
  }
  .pps-checkout.pps-modern-v2 > .pps-regional-standard-banner > p {
    font-size: min(var(--pps-standard-title-size, 48px), clamp(20px, 5.6vw, 32px));
    line-height: 1.14;
  }
}
