/* P03 styles extracted from CHECKPOINT_P09 for the native product catalogue. */

    #cb4-photo-close { display: none; }

    @media (min-width: 992px) {
      body#product, body#product #wrapper {
        background: #06152b !important;
      }

      body#product #wrapper {
        padding-bottom: 26px !important;
        border-bottom: 2px solid #ff690c !important;
      }

      body#product #footer,
      body#product #cb4-product-contact,
      body#product .product-container #block-reassurance,
      body#product .product-container .blockreassurance_product,
      body#product .product-container .block-reassurance,
      body#product .product-container .social-sharing {
        display: none !important;
      }

      body#product #wrapper > .container {
        width: calc(100% - 40px) !important;
        max-width: 1440px !important;
      }

      body#product #content-wrapper {
        width: 100% !important;
        max-width: none !important;
      }

      body#product #main .product-container {
        display: grid !important;
        grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
        gap: 32px;
        align-items: start;
        margin: 0 !important;
      }

      body#product #main .product-container::before,
      body#product #main .product-container::after {
        display: none !important;
      }

      body#product #main .product-container > .col-md-6 {
        float: none !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0;
        padding: 0 !important;
      }

      body#product .product-container #content {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        background: transparent !important;
      }

      body#product .product-container .product-cover {
        background: white !important;
        border-radius: 12px;
        overflow: hidden;
        margin-bottom: 12px !important;
      }

      body#product .product-container .product-cover img {
        display: block !important;
        width: 100% !important;
        height: clamp(320px, 36vw, 490px) !important;
        object-fit: contain !important;
        padding: 20px;
        box-sizing: border-box;
        background: white !important;
      }

      body#product .product-container .product-images img {
        background: white !important;
        border-radius: 6px;
        object-fit: contain;
      }

      body#product .product-container h1 {
        font: 800 clamp(22px, 2vw, 30px)/1.2 Arial, sans-serif !important;
        color: white !important;
        text-transform: none !important;
        margin: 0 0 14px !important;
        overflow-wrap: anywhere;
      }

      body#product .product-container .product-prices {
        margin: 0 0 18px !important;
      }

      body#product .product-container .current-price,
      body#product .product-container .current-price > span {
        color: #ff690c !important;
        font: 800 32px/1.2 Arial, sans-serif !important;
      }

      body#product .product-container .tax-shipping-delivery-label {
        color: #c5d2e1 !important;
        font-size: 12px !important;
        margin-top: 5px;
      }

      body#product .product-information {
        color: #dce6f1 !important;
        font-size: 14px !important;
        line-height: 1.5 !important;
      }

      body#product .product-information > [id^="product-description-short-"] {
        border: 1px solid #294460;
        border-radius: 10px;
        padding: 16px 18px !important;
        margin-bottom: 16px !important;
      }

      body#product .product-information > [id^="product-description-short-"],
      body#product .product-information > [id^="product-description-short-"] * {
        color: #e4edf6 !important;
        background-color: transparent !important;
        font-family: Arial, sans-serif !important;
        font-size: 14px !important;
        line-height: 1.5 !important;
      }

      body#product .product-information > [id^="product-description-short-"] ul {
        margin: 0 !important;
        padding-left: 20px !important;
      }

      body#product .product-information > [id^="product-description-short-"] li {
        margin-bottom: 5px !important;
      }

      body#product .product-information > [id^="product-description-short-"] strong {
        color: white !important;
        font-weight: 700 !important;
      }

      body#product .product-information > .tabs {
        margin-top: 20px !important;
        background: #102640 !important;
        padding: 16px !important;
        border-radius: 10px;
        box-shadow: none !important;
      }

      body#product .product-information > .tabs > .nav-tabs,
      body#product .product-information > .tabs > .tab-content > .tab-pane:not(#description) {
        display: none !important;
      }

      body#product .product-information > .tabs > .tab-content > #description {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
      }

      body#product .product-information > .tabs::before {
        content: "Opis";
        display: block;
        color: #ff690c;
        font: 700 16px/1.3 Arial, sans-serif;
        margin-bottom: 12px;
      }

      body#product .product-information > .tabs > .tab-content {
        padding-top: 0 !important;
      }

      body#product .product-information > .tabs .product-description,
      body#product .product-information > .tabs .product-description * {
        color: #dce6f1 !important;
        background-color: transparent !important;
        font-size: 14px !important;
        line-height: 1.5 !important;
      }

      body#product #product-modal .modal-dialog {
        width: calc(100% - 48px) !important;
        max-width: 1100px !important;
        margin: 24px auto !important;
      }

      body#product #product-modal .modal-content {
        position: relative !important;
        background: #06152b !important;
        border: 1px solid #294460 !important;
        border-radius: 12px !important;
        padding: 0 !important;
      }

      body#product #product-modal .modal-body {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 100px;
        gap: 16px;
        padding: 66px 18px 18px !important;
      }

      body#product #product-modal .modal-body::before,
      body#product #product-modal .modal-body::after,
      body#product #product-modal .image-caption {
        display: none !important;
      }

      body#product #product-modal figure {
        width: 100% !important;
        margin: 0 !important;
        min-width: 0;
      }

      body#product #product-modal .product-cover-modal {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: calc(100vh - 160px) !important;
        max-height: 720px !important;
        object-fit: contain !important;
        background: white !important;
        border-radius: 8px;
      }

      body#product #product-modal #thumbnails {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        position: static !important;
        max-height: calc(100vh - 160px);
        overflow-y: auto;
      }

      body#product #product-modal .product-images {
        margin: 0 !important;
        padding: 0 !important;
      }

      body#product #product-modal .thumb-container {
        display: block !important;
        margin-bottom: 10px !important;
      }

      body#product #product-modal .thumb {
        width: 90px !important;
        height: 90px !important;
        object-fit: contain !important;
        background: white !important;
        border-radius: 5px;
      }

      body#product #product-modal #cb4-photo-close {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 12px;
        right: 18px;
        z-index: 10;
        padding: 10px 16px;
        border: 0;
        border-radius: 7px;
        background: #ff690c;
        color: #06152b;
        font: 700 15px/20px Arial, sans-serif;
        cursor: pointer;
      }

      body#product #product-modal #cb4-photo-close:hover {
        background: #ff893f;
      }

      body#product #product-modal #cb4-photo-close:focus-visible {
        outline: 2px solid white;
        outline-offset: 3px;
      }
    }
  

    @media (min-width: 992px) {
      body#product
      #product-modal .modal-content .modal-body {
        margin: 0 !important;
        width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
      }
    }
  

    #p11-category-header, #p11-category-menu { display: none; }

    @media (min-width: 992px) {
      

      body#product #p11-category-header {
        display:block;
        background:#06152b;
        color:#fff;
        font:15px/1.4 Arial,sans-serif;
      }

      #p11-category-header *, #p11-category-menu * {
        box-sizing:border-box;
      }

      #p11-category-header .cb4-inner {
        width:calc(100% - 32px);
        max-width:1510px;
        margin:auto;
      }

      #p11-category-header a {
        color:inherit;
        text-decoration:none;
      }

      #p11-category-header .cb4-top {
        display:grid;
        grid-template-columns:max-content minmax(0,1fr) 260px;
        gap:26px;
        align-items:center;
        padding:18px 0;
        border-bottom:2px solid #ff690c;
      }

      #p11-category-header .cb4-logo {
        font-size:31px;
        letter-spacing:-1.5px;
        white-space:nowrap;
      }

      #p11-category-header .cb4-logo span,
      #p11-category-header .cb4-address strong span,
      #p11-category-header .cb4-phones span {
        color:#ff690c;
      }

      #p11-category-header .cb4-address { min-width:0; }

      #p11-category-header .cb4-address strong {
        display:block;
        font-size:24px;
        line-height:1.2;
      }

      #p11-category-header .cb4-phones {
        display:flex;
        flex-wrap:wrap;
        gap:5px 18px;
        margin-top:7px;
        font-size:21px;
        font-weight:800;
      }

      #p11-category-header .cb4-phones a { white-space:nowrap; }

      #p11-category-header .cb4-search {
        display:flex;
        align-items:center;
        min-width:0;
        margin:0;
        padding:4px;
        background:#fff;
        border-radius:7px;
      }

      #p11-category-header .cb4-search input {
        width:100%;
        min-width:0;
        padding:10px 7px;
        border:0;
        background:#fff;
        color:#102039;
        font:13px Arial,sans-serif;
      }

      #p11-category-header .cb4-search button {
        flex-shrink:0;
        padding:11px 13px;
        border:0;
        border-radius:6px;
        background:#ff690c;
        color:#fff;
        font-weight:700;
        cursor:pointer;
      }

      #p11-category-header .cb4-benefits {
        display:grid;
        grid-template-columns:205px repeat(4,minmax(0,1fr))
                              minmax(190px,1.2fr);
        align-items:center;
        padding:14px 0;
      }

      #p11-category-header .cb4-map {
        margin-right:14px;
        padding:13px 9px;
        border-radius:9px;
        background:#ff690c;
        text-align:center;
        font-size:16px;
        font-weight:800;
      }

      #p11-category-header .cb4-benefits > div {
        display:flex;
        align-items:center;
        gap:8px;
        min-width:0;
        padding:5px 10px;
        border-left:1px solid #315273;
      }

      #p11-category-header .cb4-benefits b {
        color:#ff690c;
        font-size:27px;
        flex-shrink:0;
      }

      #p11-category-header .cb4-benefits strong {
        display:block;
        color:#fff;
        font-size:15px;
        line-height:1.2;
      }

      #p11-category-header .cb4-benefits small {
        display:block;
        margin-top:4px;
        color:#bfd0e0;
        font-size:11px;
        line-height:1.3;
      }

      body#product #wrapper > .container {
        max-width: 1510px !important;
        width: calc(100% - 32px) !important;
      }

      body#product #content-wrapper {
        display: grid !important;
        grid-template-columns: 250px minmax(0,1fr);
        gap: 20px;
        float: none !important;
        padding: 0 !important;
      }

      body#product #content-wrapper > #main {
        min-width: 0;
        width: 100%;
        grid-column: 2;
        grid-row: 1;
      }

      body#product #p11-category-menu {
        display: flex;
        flex-direction: column;
        gap: 9px;
        grid-column: 1;
        grid-row: 1;
      }

      body#product #p11-category-menu a {
        display: block;
        overflow: hidden;
        border: 1px solid #45617c;
        border-radius: 10px;
        background: white;
        color: #06152b;
      }

      body#product #p11-category-menu img {
        display: block;
        width: 100%;
        height: auto;
      }

      body#product #p11-category-menu a:hover {
        outline: 2px solid #ff690c;
      }

      body#product #main .product-container {
        gap: 22px !important;
        grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
      }

      body#product .product-container h1 {
        font-size: clamp(21px,1.8vw,28px) !important;
      }

      body#product .product-container .product-cover img {
        height: clamp(290px,32vw,440px) !important;
      }

      body#product #p11-category-header a:focus-visible,
      body#product #p11-category-header button:focus-visible,
      body#product #p11-category-menu a:focus-visible {
        outline: 2px solid #ff690c;
        outline-offset: 3px;
      }
    }

    @media (min-width: 992px) and (max-width: 1250px) {
      body#product #content-wrapper {
        grid-template-columns: 200px minmax(0,1fr);
        gap: 16px;
      }

      #p11-category-header .cb4-top {
        grid-template-columns: max-content minmax(0, 1fr);
        gap: 14px 24px;
      }
      #p11-category-header .cb4-search { grid-column: 1 / -1; }
      #p11-category-header .cb4-benefits {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        row-gap: 10px;
      }
    }
  

      body#product #p11-hours { display: none; }
      @media (min-width: 992px) {
        body#product .product-container .tax-shipping-delivery-label,
        body#product .product-information > [id^="product-description-short-"] {
          display: none !important;
        }
        /* P03 korekta 03: punkt obok tekstu i zawijanie pod tekstem. */
        body#product #description .product-description ul,
        body#product #description .product-description ol {
          list-style-position: outside !important;
          padding-left: 1.4em !important;
          margin: 0 0 1em !important;
        }
        body#product #description .product-description ul {
          list-style-type: disc !important;
        }
        body#product #description .product-description li {
          display: list-item !important;
          list-style-position: outside !important;
          white-space: normal !important;
          margin: 0 0 0.5em !important;
        }
        body#product #description .product-description li > p:first-child {
          display: inline !important;
          margin: 0 !important;
        }
        /* P03 korekta 02: większy produkt, bez lupy i dolnej miniatury. */
        body#product .product-container .product-cover {
          overflow: hidden !important;
          background: #fff !important;
          pointer-events: none !important;
          cursor: default !important;
        }
        body#product .product-container .product-cover img {
          display: block !important;
          width: 100% !important;
          height: auto !important;
          max-height: none !important;
          padding: 0 !important;
          object-fit: contain !important;
          transform-origin: center !important;
          transform: scale(var(--cb4-p03-image-scale, 1))
            translate(var(--cb4-p03-image-x, 0%), var(--cb4-p03-image-y, 0%)) !important;
          opacity: 1 !important;
          filter: none !important;
          cursor: default !important;
        }
        body#product .product-container .product-cover .layer,
        body#product .product-container .product-cover::before,
        body#product .product-container .product-cover::after,
        body#product .product-container .images-container .js-qv-mask,
        body#product .product-container .images-container .product-images,
        body#product .product-container .images-container .scroll-box-arrows {
          display: none !important;
        }
        body#product #p11-category-header .cb4-top {
          display: grid !important;
          grid-template-columns: max-content minmax(max-content, 1fr) max-content minmax(160px, 240px) !important;
          grid-template-rows: auto !important;
          column-gap: 20px !important;
          align-items: center;
          overflow-x: auto;
        }
        body#product #p11-category-header .cb4-logo {
          grid-column: 1 !important;
          grid-row: 1 !important;
        }
        body#product #p11-category-header .cb4-address {
          grid-column: 2 !important;
          grid-row: 1 !important;
        }
        body#product #p11-hours {
          grid-column: 3 !important;
          grid-row: 1 !important;
          display: flex;
          flex-direction: column;
          justify-content: center;
          padding: 0 16px;
          border-left: 1px solid #315273;
          border-right: 1px solid #315273;
          color: #fff;
          font: 14px/1.5 Arial, sans-serif;
          white-space: nowrap;
        }
        body#product #p11-hours > strong {
          color: #ff690c;
          font-size: 14px;
          margin-bottom: 3px;
        }
        body#product #p11-category-header .cb4-search {
          grid-column: 4 !important;
          grid-row: 1 !important;
          width: 100%;
          min-width: 0;
          max-width: 240px !important;
          justify-self: end;
        }
      }
    
@media(min-width:992px){
 body#product .p11-product-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;}
 body#product .p11-product-grid>#p11-category-menu{grid-column:1;grid-row:1;align-self:start;}
 body#product .p11-product-grid>#content-wrapper{display:block!important;grid-column:2;grid-row:1;min-width:0;}
 body#product #content-wrapper>#main{display:block;width:100%;}
}
