/* UX97 — checkout-only layout. No global selectors outside .shop-checkout-page. */
.shop-checkout-page {
  background: #f3eee6;
  padding-top: 0 !important;
}
.shop-checkout-page .site-header,
.shop-checkout-page .footer,
.shop-checkout-page .site-footer {
  display: none !important;
}
.shop-checkout-simple-header {
  position: sticky;
  z-index: 80;
  top: 0;
  border-bottom: 1px solid #dcd4ca;
  background: rgba(9,9,9,.97);
  color: #fff;
  backdrop-filter: blur(18px);
}
.shop-checkout-simple-header__inner {
  width: min(1240px, calc(100% - 32px));
  min-height: 68px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.shop-checkout-simple-header a,
.shop-checkout-simple-header span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: inherit;
  text-decoration: none;
  font-size: .84rem;
  font-weight: 760;
}
.shop-checkout-simple-header svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.shop-checkout-page .shop-checkout { padding: 46px 0 64px; }
.shop-checkout-page .shop-checkout-head {
  max-width: 850px;
  margin-bottom: 26px;
}
.shop-checkout-page .shop-checkout-head h1 {
  max-width: 780px;
  margin: 10px 0 14px;
  font-size: clamp(3rem, 6.4vw, 5.8rem);
  line-height: .92;
  letter-spacing: -.065em;
}
.shop-checkout-page .shop-checkout-head > p:last-of-type {
  max-width: 720px;
  color: #5e5851;
  font-size: 1rem;
  line-height: 1.55;
}
.shop-checkout-page .shop-unified-benefit {
  max-width: 760px;
  padding: 15px 18px;
  border-radius: 16px;
}
.shop-checkout-page .shop-checkout-grid {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 390px);
  gap: 18px;
  align-items: start;
}
.shop-checkout-page .shop-summary {
  position: sticky;
  top: 86px;
}
.shop-checkout-page .shop-checkout-card,
.shop-checkout-page .shop-summary-inner {
  border-radius: 24px;
  box-shadow: 0 18px 46px rgba(26,21,16,.06);
}
.shop-checkout-page .shop-checkout-step {
  margin-top: 8px;
}
.shop-checkout-page .shop-checkout-step > span {
  background: #111;
  color: #fff;
}
.shop-checkout-page .shop-terms-stack {
  display: grid;
  gap: 9px;
  margin-top: 18px;
}
.shop-checkout-page .shop-terms-choice {
  margin: 0;
  padding: 13px 14px;
  border: 1px solid #ded7ce;
  border-radius: 15px;
  background: #faf8f4;
  text-transform: none !important;
  letter-spacing: normal !important;
}
.shop-checkout-page .shop-terms-choice span {
  font-size: .76rem;
  line-height: 1.5;
}
.shop-checkout-page .shop-pay-button {
  min-height: 58px;
  margin-top: 14px;
  border-radius: 999px;
  font-size: .96rem;
}
.shop-checkout-page .shop-payment-methods {
  display: grid;
  gap: 8px;
  margin-top: 11px;
}
.shop-checkout-page .shop-payment-methods__row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
}
.shop-checkout-page .shop-payment-method {
  min-height: 43px;
  display: grid;
  place-items: center;
  padding: 7px 8px;
  border: 1px solid #e1dad1;
  border-radius: 12px;
  background: #fbfaf8;
  color: #222;
  font-size: .7rem;
  font-weight: 780;
  line-height: 1;
  opacity: .86;
}
.shop-checkout-page .shop-payment-method--blik b {
  position: relative;
  display: inline-flex;
  padding: 5px 8px 4px;
  border-radius: 6px;
  background: #151515;
  color: #fff;
  font-size: 1rem;
  letter-spacing: -.06em;
  text-transform: lowercase;
}
.shop-checkout-page .shop-payment-method--blik b::after {
  content: '';
  position: absolute;
  top: 4px;
  left: 13px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ff5752;
}
.shop-checkout-page .shop-payment-methods > small {
  color: #777067;
  font-size: .7rem;
  line-height: 1.45;
  text-align: center;
}
.shop-checkout-page .shop-payment-note {
  margin-top: 9px !important;
  padding-top: 10px !important;
}
.shop-checkout-page .shop-coupon-row {
  grid-template-columns: 1fr;
}
.shop-checkout-page [data-shop-discount-apply][hidden] { display: none !important; }
.shop-checkout-page [data-shop-discount-message] {
  min-height: 1.2em;
  margin-top: 6px;
  font-size: .72rem;
}
@media (max-width: 900px) {
  .shop-checkout-page .shop-checkout-grid { grid-template-columns: 1fr; }
  .shop-checkout-page .shop-summary { position: static; order: -1; }
  .shop-checkout-page .shop-summary-inner { padding: 18px; }
}
@media (max-width: 620px) {
  .shop-checkout-simple-header__inner {
    width: min(100% - 24px, 1240px);
    min-height: 58px;
  }
  .shop-checkout-simple-header a,
  .shop-checkout-simple-header span { font-size: .74rem; }
  .shop-checkout-page .shop-checkout { padding: 28px 0 36px; }
  .shop-checkout-page .shop-checkout-head { margin-bottom: 18px; }
  .shop-checkout-page .shop-checkout-head h1 {
    margin-top: 8px;
    font-size: clamp(2.7rem, 15vw, 4rem);
  }
  .shop-checkout-page .shop-checkout-head > p:last-of-type { font-size: .88rem; }
  .shop-checkout-page .shop-unified-benefit {
    display: grid;
    gap: 4px;
    padding: 13px 14px;
  }
  .shop-checkout-page .shop-checkout-card,
  .shop-checkout-page .shop-summary-inner { border-radius: 20px; }
  .shop-checkout-page .shop-payment-methods__row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .shop-checkout-page .shop-payment-method { min-height: 40px; }
}

/* UX98 pickup */
.shop-checkout-page .shop-pickup-panel{display:grid;gap:8px;padding:20px;border:1px solid #d8cdbf;background:#fbf7f1}
.shop-checkout-page .shop-pickup-panel[hidden]{display:none!important}
.shop-checkout-page .shop-pickup-panel .shop-pickup-kicker{font-size:.65rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase;color:#806c58}
.shop-checkout-page .shop-pickup-panel>strong{font-size:1.05rem}
.shop-checkout-page .shop-pickup-panel>p{margin:0;color:#676057;font-size:.83rem;line-height:1.55}
.shop-checkout-page .shop-pickup-panel>a{width:max-content;color:#111;font-size:.8rem;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.shop-checkout-page .shop-pickup-map{overflow:hidden;margin-top:4px;border:1px solid #ddd3c6;border-radius:15px;background:#eee8df;aspect-ratio:16/7}
.shop-checkout-page .shop-pickup-map iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:620px){.shop-checkout-page .shop-pickup-map{aspect-ratio:4/3}}

/* UX100 — własny header checkoutu od samej góry i płatności jak w rezerwacji. */
.shop-checkout-page{padding-top:0!important}
.shop-checkout-page .shop-checkout-header{top:0;position:sticky}
.shop-checkout-page .shop-checkout-payment-badges{opacity:.78;margin:10px 0 2px}
.shop-checkout-page .shop-checkout-payment-badges .booking-payment-badge{background:rgba(248,245,240,.72);border-color:#e3d9cd;box-shadow:none}

/* UX104 final checkout simplification. */
.shop-checkout-page .shop-checkout{padding:34px 0 56px}
.shop-checkout-page .shop-checkout-head{max-width:820px;margin-bottom:20px}
.shop-checkout-page .shop-checkout-head h1{margin:7px 0 10px;font-size:clamp(2.8rem,5.2vw,4.8rem);line-height:.94}
.shop-checkout-page .shop-checkout-head>p:last-of-type{font-size:.93rem}
.shop-checkout-page .shop-unified-benefit{
  display:inline-grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:4px 12px;
  align-items:center;
  max-width:720px;
  margin-top:14px;
  padding:11px 14px;
  border-radius:14px;
}
.shop-checkout-page .shop-unified-benefit span{color:#796b5d;font-size:.66rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.shop-checkout-page .shop-unified-benefit strong{font-size:.82rem;line-height:1.4;white-space:normal}
.shop-checkout-page .shop-checkout-step{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:5px 12px;
  align-items:start;
  margin:2px 0 17px;
  padding:0;
}
.shop-checkout-page .shop-checkout-step>span{
  grid-row:1/3;
  display:grid;
  place-items:center;
  width:34px;
  height:28px;
  margin:1px 0 0;
  border:1px solid #d5ccc0;
  border-radius:999px;
  background:#f5f0e9;
  color:#75685b;
  font-size:.62rem;
  font-weight:850;
  letter-spacing:.08em;
}
.shop-checkout-page .shop-checkout-step h2{grid-column:2;font-size:1.38rem!important;margin:0!important}
.shop-checkout-page .shop-checkout-step p{grid-column:2;margin:2px 0 0;font-size:.78rem}
.shop-checkout-page .shop-shipping-options{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px!important;
  margin-bottom:13px!important;
}
.shop-checkout-page .shop-shipping-choice{
  min-height:92px;
  padding:14px!important;
  border-radius:16px!important;
  background:#fbfaf7!important;
}
.shop-checkout-page .shop-shipping-choice.is-selected{
  border-color:#8e7661!important;
  background:#f5efe7!important;
  box-shadow:0 0 0 1px #8e7661 inset!important;
}
.shop-checkout-page .shop-shipping-choice strong{font-size:.85rem}
.shop-checkout-page .shop-shipping-choice small{font-size:.68rem;line-height:1.35}
.shop-checkout-page .shop-shipping-panel{
  margin-top:0!important;
  padding:17px;
  border:1px solid #ded6cb;
  border-radius:17px;
  background:#f8f5f0;
}
.shop-checkout-page .inpost-search-primary{display:grid;gap:13px}
.shop-checkout-page .inpost-fallback-head strong,.shop-checkout-page .shop-panel-intro strong{display:block;font-size:.88rem}
.shop-checkout-page .inpost-fallback-head span,.shop-checkout-page .shop-panel-intro span{display:block;margin-top:4px;color:#776f66;font-size:.73rem;line-height:1.45}
.shop-checkout-page .inpost-search-primary .field{margin:0}
.shop-checkout-page .inpost-manual{margin-top:0!important;padding-top:4px}
.shop-checkout-page .inpost-manual summary{color:#625b53;text-decoration:underline;text-underline-offset:4px}
.shop-checkout-page .inpost-map-disclosure{
  margin-top:12px!important;
  border:1px solid #ddd4ca;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}
.shop-checkout-page .inpost-map-disclosure>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:13px 15px;
  list-style:none;
}
.shop-checkout-page .inpost-map-disclosure>summary::-webkit-details-marker{display:none}
.shop-checkout-page .inpost-map-disclosure>summary span{color:#797168;font-size:.72rem;font-weight:600}
.shop-checkout-page .inpost-map-disclosure>summary strong{font-size:.78rem;text-decoration:underline;text-underline-offset:4px}
.shop-checkout-page .inpost-map-disclosure[open]>summary{border-bottom:1px solid #e2dad0}
.shop-checkout-page .inpost-map-disclosure .inpost-geowidget-wrap{border:0;border-radius:0}
.shop-checkout-page .inpost-selected{margin:0 0 12px}
.shop-checkout-page .shop-panel-intro{margin-bottom:13px}
.shop-checkout-page .shop-pickup-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:5px}
.shop-checkout-page .shop-pickup-actions>a{color:#111;font-size:.78rem;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.shop-checkout-page .shop-pickup-map-disclosure{margin:0!important}
.shop-checkout-page .shop-pickup-map-disclosure>summary{color:#625b53;text-decoration:underline;text-underline-offset:4px}
.shop-checkout-page .shop-pickup-map-disclosure .shop-pickup-map{margin-top:12px;min-width:min(520px,70vw)}
.shop-checkout-page .shop-gift-option{margin-top:12px;border-radius:14px!important;background:#fff!important}
.shop-checkout-page .shop-order-note{
  margin-top:0;
  border:1px solid #ded7ce;
  border-radius:15px;
  background:#faf8f4;
  overflow:hidden;
}
.shop-checkout-page .shop-order-note>summary{padding:14px 16px;cursor:pointer;list-style:none;font-size:.78rem;font-weight:780}
.shop-checkout-page .shop-order-note>summary::-webkit-details-marker{display:none}
.shop-checkout-page .shop-order-note>summary small{color:#817970;font-weight:550}
.shop-checkout-page .shop-order-note[open]>summary{border-bottom:1px solid #e2dad1}
.shop-checkout-page .shop-order-note .field{padding:15px;margin:0}
.shop-checkout-page .shop-terms-stack:empty{display:none}
.shop-checkout-page .shop-terms-choice{padding:12px 13px}
.shop-checkout-page .shop-pay-button{margin-top:4px}
.shop-checkout-page .shop-order-legal-note{
  max-width:680px;
  margin:10px auto 0;
  color:#746d64;
  font-size:.7rem;
  line-height:1.5;
  text-align:center;
}
.shop-checkout-page .shop-order-legal-note a{color:#4f4942;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){
  .shop-checkout-page .shop-shipping-options{grid-template-columns:1fr}
  .shop-checkout-page .shop-shipping-choice{min-height:0}
}
@media(max-width:620px){
  .shop-checkout-page .shop-checkout{padding:24px 0 34px}
  .shop-checkout-page .shop-checkout-head h1{font-size:clamp(2.6rem,13vw,3.65rem)}
  .shop-checkout-page .shop-unified-benefit{display:grid;grid-template-columns:1fr;width:100%;gap:3px;margin-top:12px}
  .shop-checkout-page .shop-checkout-step{grid-template-columns:30px minmax(0,1fr);gap:4px 10px}
  .shop-checkout-page .shop-checkout-step>span{width:30px;height:25px}
  .shop-checkout-page .shop-checkout-step h2{font-size:1.27rem!important}
  .shop-checkout-page .shop-shipping-panel{padding:14px}
  .shop-checkout-page .shop-pickup-map-disclosure .shop-pickup-map{min-width:0;width:100%}
}
