/* PupVibes 8.9.51 — livraison / paiement panels + responsive card shell */

body#checkout #checkout-delivery-step,
body#checkout #checkout-payment-step{
  border:0!important;
  background:transparent!important;
  overflow:visible!important;
}

body#checkout #checkout-delivery-step .step__title,
body#checkout #checkout-payment-step .step__title{
  padding:0 0 14px!important;
}

body#checkout #checkout-delivery-step .step__title .page-title-section,
body#checkout #checkout-payment-step .step__title .page-title-section{
  font-size:22px!important;
}

body#checkout #checkout-delivery-step .step__content,
body#checkout #checkout-payment-step .step__content{
  padding:0!important;
}

body#checkout .pv-step-stack{
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
}

body#checkout .pv-step-panel,
body#checkout .pv-step-info-card{
  border:1px solid rgba(36,22,8,.18)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:none!important;
}

body#checkout .pv-step-info-card{
  padding:18px 20px!important;
}

body#checkout .pv-step-info-card__header{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:10px!important;
}

body#checkout .pv-step-info-card__title{
  margin:0!important;
  color:#cb6203!important;
  font:500 15px/1.2 'DM Sans',sans-serif!important;
}

body#checkout .pv-step-info-card__edit{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#cb6203!important;
  font:500 13px/1.2 'DM Sans',sans-serif!important;
  text-decoration:underline!important;
  box-shadow:none!important;
}

body#checkout .pv-step-info-card__lines{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}

body#checkout .pv-step-info-card__line{
  margin:0!important;
  color:#6e675f!important;
  font:400 12px/1.45 'DM Sans',sans-serif!important;
}

body#checkout .pv-step-info-card__line strong{
  color:#241608!important;
  font-weight:500!important;
}

body#checkout .pv-step-panel{
  padding:22px 24px!important;
}

body#checkout .pv-step-panel .delivery-options__container,
body#checkout .pv-step-panel #delivery-options__hook,
body#checkout .pv-step-panel .delivery-options__display-after-carrier,
body#checkout .pv-step-panel .delivery-options__extra-carrier{
  margin:0!important;
}

body#checkout .pv-step-panel .delivery-options__list,
body#checkout .pv-step-panel .payment-options__list{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}

body#checkout .pv-step-panel .delivery-option__item,
body#checkout .pv-step-panel .payment-option{
  border:1px solid rgba(36,22,8,.14)!important;
  border-radius:12px!important;
  background:#fff!important;
  overflow:hidden!important;
}

body#checkout .pv-step-panel .delivery-option__item:has(input:checked),
body#checkout .pv-step-panel .payment-option:has(input:checked){
  border-color:#fc8501!important;
  box-shadow:0 0 0 2px rgba(252,133,1,.08)!important;
}

body#checkout .pv-step-panel .delivery-option__label,
body#checkout .pv-step-panel .payment-option__label{
  display:grid!important;
  align-items:center!important;
  gap:14px!important;
}

body#checkout .pv-step-panel .delivery-option__label{
  grid-template-columns:minmax(0,1fr) auto!important;
  padding:16px!important;
}

body#checkout .pv-step-panel .delivery-option__left{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}

body#checkout .pv-step-panel .delivery-option__carrier{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}

body#checkout .pv-step-panel .delivery-option__carrier-name,
body#checkout .pv-step-panel .payment-option__label{
  color:#241608!important;
  font:500 15px/1.3 'DM Sans',sans-serif!important;
}

body#checkout .pv-step-panel .delivery-option__content,
body#checkout .pv-step-panel .delivery-option__price{
  color:#6e675f!important;
  font:400 14px/1.35 'DM Sans',sans-serif!important;
}

body#checkout .pv-step-panel .delivery-option__price{
  color:#241608!important;
  font-weight:500!important;
  white-space:nowrap!important;
}

body#checkout .pv-step-panel .delivery-option__extra{
  padding:0 16px 16px!important;
}

body#checkout .pv-step-panel .order-options{
  margin-top:18px!important;
}

body#checkout .pv-step-panel .payment-option{
  padding:14px 16px!important;
}

body#checkout .pv-step-panel .payment-option__form-check{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  margin:0!important;
}

body#checkout .pv-step-panel .payment-option__additional-information,
body#checkout .pv-step-panel .js-payment-option-form{
  margin-top:14px!important;
}

body#checkout .pv-step-panel .payment-option__additional-information{
  padding-top:14px!important;
  border-top:1px solid rgba(36,22,8,.12)!important;
}

body#checkout .pv-step-panel .buttons-wrapper{
  margin-top:18px!important;
}

body#checkout .pv-step-panel .buttons-wrapper--split{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}

body#checkout .pv-step-panel .btn-outline-primary{
  border:1px solid rgba(36,22,8,.18)!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#241608!important;
}

body#checkout .pv-step-panel .btn-primary{
  border:0!important;
  border-radius:8px!important;
  background:#fc8501!important;
  color:#241608!important;
}

body#checkout .pv-step-panel .payment-options__updated,
body#checkout .pv-step-panel .payment-options__free{
  margin:0 0 12px!important;
}

body#checkout .pv-step-panel .js-alert-payment-conditions{
  margin-top:14px!important;
}

@media (max-width: 991.98px){
  body#checkout .pv-step-panel,
  body#checkout .pv-step-info-card{
    border-radius:14px!important;
  }
}

@media (max-width: 640px){
  body#checkout .pv-step-info-card,
  body#checkout .pv-step-panel{
    padding:16px!important;
  }

  body#checkout .pv-step-info-card__header,
  body#checkout .pv-step-panel .buttons-wrapper--split{
    flex-direction:column!important;
    align-items:flex-start!important;
  }

  body#checkout .pv-step-info-card__edit,
  body#checkout .pv-step-panel .buttons-wrapper .btn,
  body#checkout .pv-step-panel #payment-confirmation,
  body#checkout .pv-step-panel #payment-confirmation .btn{
    width:100%!important;
  }

  body#checkout .pv-step-panel .delivery-option__label{
    grid-template-columns:1fr!important;
  }

  body#checkout .pv-step-panel .delivery-option__price{
    margin-top:6px!important;
  }
}
