/* A small patisserie menu: clear prices, compact rows, full-width actions. */
[hidden] { display: none !important; }
.desktop-nav a.is-active { color: #9a6848; text-decoration: underline; text-underline-offset: 6px; }
#witryna .product-track, #kalendarz .calendar-products, #sklep .product-track { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); grid-auto-flow: row; grid-auto-columns: auto; gap: 12px; overflow: visible; padding: 0; margin: 0; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-card { display: grid; grid-template-columns: 98px minmax(0,1fr); grid-template-rows: minmax(48px,auto) auto auto; align-content: start; column-gap: 12px; row-gap: 0; padding: 10px; border: 1px solid #dfcdbd; border-radius: 13px; background: #fffdf9; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-image-wrap { grid-column: 1; grid-row: 1 / 3; width: 98px; height: 98px; min-height: 0; aspect-ratio: 1; border-radius: 8px; align-self: start; background: #f4eade; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-image-wrap > img { padding: 0; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-info { display: contents; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-category { display: none; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-info h3 { grid-column: 2; grid-row: 1; display: block; overflow: visible; min-height: 0; margin: 2px 0 6px; font-size: 23px; line-height: 1.08; letter-spacing: -.02em; align-self: center; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-info h3 > button { min-height: 44px; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-price { grid-column: 2; grid-row: 2; min-height: 0; margin: 0 0 5px; gap: 1px 5px; align-content: start; align-self: start; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-price strong { font-size: 15px; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-price .product-price-unit { font-size: 10px; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-price del { font-size: 10px; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-badges { left: 5px; top: 5px; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-badge { font-size: 8px; padding: 3px 5px; }
:is(#witryna,#kalendarz,#sklep,#sezon) .product-purchase { grid-column: 1/-1; display: grid; grid-template-columns: 124px minmax(0,1fr); gap: 0 8px; margin: 0; padding-top: 10px; }
.card-quantity-row { margin: 0; display: block; }
.card-quantity-row > span { display: none; }
.card-stepper { width: 100%; justify-content: space-between; border-radius: 7px; }
.card-stepper button { width: 34px; height: 42px; flex-shrink: 0; }
.card-stepper output { min-width: 46px; font-size: 11px; }
:is(#witryna,#kalendarz,#sklep,#sezon) .card-add { display: flex; flex-direction: column; justify-content: center; flex-wrap: nowrap; gap: 1px; min-height: 44px; padding: 5px 6px; border-radius: 7px; }
:is(#witryna,#kalendarz,#sklep,#sezon) .card-add-label, :is(#witryna,#kalendarz,#sklep,#sezon) .card-add > strong { font-size: 11px; line-height: 1.3; }
.card-add-label .icon { width: 13px; height: 13px; }
.card-cart-state { grid-column: 1/-1; min-height: 21px; padding: 4px 1px 0; font-size: 10px; }
.card-limit { grid-column: 1/-1; }
.card-stepper button:disabled { opacity: .4; }
:is(#witryna,#kalendarz,#sklep,#sezon) .inquiry-purchase { min-height: 75px; grid-template-columns: 1fr; align-content: start; gap: 5px; }
.inquiry-purchase > p { font-size: 10px; color: #80644f; }
:is(#witryna,#kalendarz,#sklep,#sezon) .inquiry-purchase .card-add { flex-direction: row; justify-content: space-between; font-size: 12px; padding-inline: 12px; background: #efe1d3; border-color: #dcc1aa; color: #5c3924; }
.showcase-expand-row { flex-wrap: wrap; }
.showcase-expand-row > .text-button { font-size: 12px; min-height: 44px; }
.showcase-expand-row > span { margin-left: auto; }
.store-breadcrumb { display: flex; gap: 10px; padding: 22px 0 16px; font-size: 11px; color: #82644e; }
.store-breadcrumb a { text-decoration: underline; text-underline-offset: 3px; }
#sklep { padding: 26px; margin-bottom: 28px; border: 1px solid #dcc8b6; border-top: 4px solid #755138; border-radius: 20px; background: #fffaf4; scroll-margin-top: 15px; }
.store-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 22px; border-bottom: 1px solid #e4d4c6; }
.store-heading h1 { font-family: var(--serif); font-size: 47px; line-height: 1.05; font-weight: 500; letter-spacing: -.025em; }
.store-heading h1 em { color: #946747; font-weight: 400; }
.store-heading p:not(.section-label) { margin-top: 8px; color: #82634e; font-size: 13px; }
.store-heading .button { font-size: 11px; border-radius: 24px; white-space: nowrap; }
.store-toolbar { display: flex; gap: 18px; padding-top: 22px; align-items: end; scroll-margin-top: 92px; }
.store-toolbar label { display: grid; gap: 7px; font-size: 11px; color: #775e4c; }
.store-search { flex: 1; }
.store-sort { width: 210px; }
.store-toolbar input, .store-toolbar select { width: 100%; min-height: 44px; border: 1px solid #d9c6b5; border-radius: 9px; padding: 10px 13px; background: #fffdfa; color: #533522; font: 12px var(--sans); }
.store-filters { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 15px; }
.store-filters .filter-chip { min-height: 42px; font-size: 11px; padding: 8px 13px; background: #fffdf9; }
.store-filters .filter-chip.is-active { background: #5a3824; color: #fff7ed; border-color: #5a3824; }
.store-filters .filter-chip > span { margin-left: 7px; opacity: .65; font-size: 10px; }
.store-results { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 22px 0 12px; font-size: 11px; }
.store-results > span { font-size: 10px; color: #876a55; }
.store-pagination { display: flex; justify-content: center; align-items: center; gap: 20px; padding-top: 24px; font-size: 12px; }
.store-pagination .button { min-height: 44px; padding: 9px 16px; border-radius: 24px; font-size: 11px; }
.store-pagination button:disabled { opacity: .38; cursor: default; }
#store-empty { text-align: center; padding: 35px 15px; background: #f4e9de; border-radius: 12px; }
#store-empty h2 { font-size: 30px; margin-bottom: 10px; }
#store-empty p { font-size: 12px; margin-bottom: 16px; }
.store-contact { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; padding: 24px; margin-top: 30px; border: 1px solid #e0cbb6; border-radius: 13px; background: #eee0d0; }
.store-contact > div { flex: 1; min-width: 210px; }
.store-contact h2 { font-size: 29px; }
.store-contact p { max-width: 430px; margin-top: 7px; font-size: 12px; color: #7e604a; }
.store-contact > .button, .store-contact > .text-button { font-size: 11px; }
.store-snapshot { font-size: 10px; color: #846a55; margin-top: 16px; }
.info-dialog { overflow-y: auto; }
.checkout-intro { font-size: 13px; line-height: 1.6; margin-top: 14px; color: #7c604c; }
.checkout-items { list-style: none; padding: 0; margin: 20px 0 0; max-height: 220px; overflow-y: auto; }
.checkout-items li { display: flex; justify-content: space-between; gap: 12px; padding: 11px 0; border-bottom: 1px solid #e3d5c8; }
.checkout-items li > div { min-width: 0; }
.checkout-items strong { font-size: 12px; font-weight: 500; display: block; }
.checkout-items span { display: block; font-size: 10px; color: #7c634f; margin-top: 4px; }
.checkout-items b { flex-shrink: 0; font-size: 12px; font-weight: 500; }
.checkout-total { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 15px 0; border-bottom: 1px solid #dbc5b3; font-size: 12px; }
.checkout-total strong { font-size: 21px; }
.checkout-form { display: grid; gap: 16px; margin-top: 20px; }
.checkout-form label { display: grid; gap: 7px; min-width: 0; font-size: 12px; color: #6f513d; }
.checkout-form input, .checkout-form textarea, .message-preview { width: 100%; min-width: 0; max-width: 100%; border: 1px solid #d7c3b2; background: #fffdf8; color: #563624; border-radius: 8px; padding: 12px; font: 14px/1.5 var(--sans); }
.checkout-form input { min-height: 46px; }
.checkout-form textarea { resize: vertical; }
.checkout-form .button { width: 100%; margin: 0; }
.checkout-form .text-button { justify-self: center; font-size: 11px; min-height: 44px; }
.form-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.info-content .checkout-fineprint { font-size: 11px; color: #866955; line-height: 1.6; margin: 0; }
.message-status { display: flex; align-items: start; gap: 10px; padding: 13px; margin: 18px 0; border-radius: 10px; background: #f1e3d2; }
.message-status .icon { flex-shrink: 0; width: 20px; height: 20px; margin-top: 2px; }
.message-status p { font-size: 12px; line-height: 1.6; margin: 0; }
.message-label { display: block; font-size: 11px; color: #80624d; margin-bottom: 7px; }
.message-preview { font-size: 12px; line-height: 1.6; resize: vertical; min-height: 180px; }
.checkout-actions { display: flex; gap: 10px; margin: 18px 0 8px; }
.info-content .checkout-actions .button { margin: 0; flex: 1; padding-inline: 10px; font-size: 12px; }
.button-whatsapp { background: #356749; border: 1px solid #356749; color: #fffaf3; }
#edit-order-message { min-height: 44px; margin-bottom: 8px; font-size: 12px; }
.custom-product { display: flex; gap: 15px; align-items: center; margin-top: 20px; padding: 12px; background: #f3e7da; border-radius: 10px; }
.custom-product img { width: 70px; height: 75px; object-fit: contain; border-radius: 7px; }
.custom-product strong { font: 25px/1.1 var(--serif); }
.custom-product p { margin-top: 6px; font-size: 11px; }
@media (max-width:1100px) {
  #witryna .product-track, #kalendarz .calendar-products, #sklep .product-track { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:899px) {
  .store-heading { align-items: start; }
  .store-heading .button { white-space: normal; max-width: 190px; }
  .card-stepper button { width: 42px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-purchase { grid-template-columns: 136px minmax(0,1fr); }
  .info-content { padding: 30px 22px 24px; }
  .checkout-form input, .checkout-form textarea { font-size: 16px; }
}
@media (max-width:600px) {
  #witryna .product-track, #kalendarz .calendar-products, #sklep .product-track { grid-template-columns: 1fr; gap: 10px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-card { grid-template-columns: 92px minmax(0,1fr); column-gap: 11px; padding: 9px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-image-wrap { width: 92px; height: 92px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-info h3 { font-size: 23px; margin-top: 1px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-price strong { font-size: 15px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-purchase { grid-template-columns: 136px minmax(0,1fr); }
  :is(#witryna,#kalendarz,#sklep,#sezon) .inquiry-purchase { grid-template-columns: 1fr; }
  .card-add-label .icon { display: none; }
  .showcase-expand-row { gap: 8px; }
  .showcase-expand-row > span { margin-left: 0; order: 2; }
  .showcase-expand-row > .text-button { width: 100%; justify-content: center; }
  #sklep { padding: 18px 12px; border-radius: 15px; }
  .store-breadcrumb { padding-block: 15px; }
  .store-heading { display: block; padding-bottom: 17px; }
  .store-heading h1 { font-size: 39px; }
  .store-heading p:not(.section-label) { font-size: 12px; }
  .store-heading .section-label { font-size: 8px; }
  .store-heading .button { max-width: none; margin-top: 15px; min-height: 44px; }
  .store-toolbar { display: grid; grid-template-columns: 1fr; gap: 12px; padding-top: 17px; }
  .store-sort { width: 100%; grid-template-columns: auto 1fr; align-items: center; }
  .store-sort select { font-size: 12px; }
  .store-search input { font-size: 16px; }
  .store-filters { gap: 6px; }
  .store-filters .filter-chip { min-height: 44px; padding-inline: 10px; font-size: 10px; }
  .store-results { align-items: start; margin-top: 18px; }
  .store-results > span { max-width: 170px; text-align: right; font-size: 9px; }
  .store-contact { padding: 18px; gap: 12px; }
  .store-contact h2 { font-size: 27px; }
  .store-contact > div { min-width: 0; flex-basis: 100%; }
  .store-pagination { gap: 12px; font-size: 10px; }
  .store-pagination .button { padding-inline: 12px; }
  .form-columns { grid-template-columns: 1fr; }
  .checkout-actions { flex-direction: column; }
  .checkout-items { max-height: 190px; }
  .info-content h2 { font-size: 36px; }
}
@media (max-width:359px) {
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-card { grid-template-columns: 78px minmax(0,1fr); gap: 0 9px; padding: 8px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-image-wrap { width: 78px; height: 90px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-info h3 { font-size: 21px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .product-purchase { grid-template-columns: 126px minmax(0,1fr); gap: 0 6px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .inquiry-purchase { grid-template-columns: 1fr; gap: 5px; }
  .card-stepper button { width: 38px; }
  .card-stepper output { min-width: 42px; font-size: 10px; }
  :is(#witryna,#kalendarz,#sklep,#sezon) .card-add-label { font-size: 10px; }
  .store-heading h1 { font-size: 34px; }
}
