/* ArCADiasoft: responsive additions, desktop layout stays in the original styles. */
.responsive-header, .responsive-nav-toggle, #responsive-category-toggle { display: none; }
.responsive-table-scroll { display: contents; }

@media screen and (max-width: 1230px) {
  /* Stack each embedded film and its description instead of squeezing columns. */
  .td_text table:has(> tbody > tr > td > iframe[src*="youtube.com/embed/"]) { width: 100% !important; table-layout: fixed; }
  .td_text table:has(> tbody > tr > td > iframe[src*="youtube.com/embed/"]) > tbody,
  .td_text table:has(> tbody > tr > td > iframe[src*="youtube.com/embed/"]) > tbody > tr,
  .td_text table:has(> tbody > tr > td > iframe[src*="youtube.com/embed/"]) > tbody > tr > td { display: block; width: 100% !important; }
  .td_text table:has(> tbody > tr > td > iframe[src*="youtube.com/embed/"]) > tbody > tr.border_bottom:not(:has(iframe)) { display: none; }
  .td_text tr.border_bottom:has(> td > iframe[src*="youtube.com/embed/"]) > td { padding: 10px 0; border-bottom: 0; }
  .td_text tr.border_bottom:has(> td > iframe[src*="youtube.com/embed/"]) > td:last-child { padding-bottom: 22px; border-bottom: 1px solid #ddd; }
  .td_text iframe[src*="youtube.com/embed/"] { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; }
  /* Support downloads retain their original links and file information. */
  .td_text table.news_cp:has(> tbody > tr > td > .listaPlikow) > tbody,
  .td_text table.news_cp:has(> tbody > tr > td > .listaPlikow) > tbody > tr,
  .td_text table.news_cp:has(> tbody > tr > td > .listaPlikow) > tbody > tr > td { display: block; width: 100% !important; }
  .td_text .listaPlikow, .td_text .listaPlikow .nazwaKategorii, .td_text .listaPlikow .nazwaGrupy,
  .td_text .listaPlikow .wpis, .td_text .listaPlikow .linia_oddzielajaca { width: 100%; max-width: 100%; }
  .td_text .listaPlikow .wpis { display: grid; grid-template-columns: minmax(0, 1fr) 64px; gap: 12px; }
  .td_text .listaPlikow .wpis .wpisOpis { grid-column: 1; grid-row: 1; min-width: 0; width: auto; padding: 0; }
  .td_text .listaPlikow .wpis .wpisPrzyciski { grid-column: 2; grid-row: 1; float: none; width: auto; padding: 0; text-align: right; }
  .td_text .listaPlikow .wpis > div[style*="clear"] { display: none; }
  /* Program support tiles are a layout table, not a data table. */
  .td_text table.txt2:has(a[title^="Zobacz wsparcie"]) { width: 100% !important; table-layout: fixed; }
  .td_text table.txt2:has(a[title^="Zobacz wsparcie"]) td > div { width: 100% !important; float: none !important; }
  .td_text div:has(> div > a[title^="Zobacz wsparcie"]) { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(210px, 100%), 1fr)); gap: 18px; }
  .td_text div:has(> a[title^="Zobacz wsparcie"]) { width: auto !important; height: auto !important; margin: 0 !important; padding: 10px !important; float: none !important; }
  .td_text a[title^="Zobacz wsparcie"] { display: block; line-height: 1.5; overflow-wrap: anywhere; }
  .td_text a[title^="Zobacz wsparcie"] img { display: block; margin: 0 auto 8px; }
  .td_text table:has(.programSetupTable), .td_text .programSetupTable, .td_text .programSetupInclude { width: 100% !important; table-layout: fixed; }
  .td_text .responsive-arcadia-catalog-table { width: 100% !important; table-layout: fixed; }
  .responsive-arcadia-catalog-card { width: 100% !important; float: none !important; }
  .responsive-arcadia-catalog-card::after { content: ''; display: block; clear: both; }
  .responsive-arcadia-catalog-table td > div { max-width: 100%; clear: both; }
}
@media screen and (max-width: 800px) {
  /* Stack labels above fields without replacing or submitting the form. */
  #sp_formularz .sp_row { clear: both; padding: 8px 0; }
  #sp_formularz .sp_row .sp_label { float: none; width: 100%; text-align: left; padding: 0 0 4px; }
  #sp_formularz .sp_row .sp_field { margin-left: 0; }
  #sp_formularz .sp_field input[type=text], #sp_formularz .sp_field select { width: 100%; }
  #sp_formularz .sp_left, #sp_formularz #emailUczelniaInfo > div { margin-left: 0 !important; margin-right: 0 !important; }
  #sp_formularz .sp_left, #sp_formularz .sp_center, #sp_formularz .sp_field_join { line-height: 1.6; }
  .responsive-arcadia-catalog > tbody, .responsive-arcadia-catalog > tbody > tr, .responsive-arcadia-catalog > tbody > tr > td { display: block; width: 100% !important; }
  .responsive-arcadia-catalog-card > img { float: none; display: block; margin: 0 auto 12px; }
  .responsive-arcadia-catalog-card > h2, .responsive-arcadia-catalog-card > div { margin-left: 0 !important; }
  .responsive-arcadia-catalog-table td { overflow-wrap: anywhere; }
  .responsive-arcadia-catalog-table td > div { float: none !important; width: auto !important; padding-top: 12px !important; }
  .responsive-arcadia-catalog-table td > a > img[align=right] { float: none; display: block; margin: 12px auto; }
}

@media screen and (max-width: 1230px) {
  body { min-width: 0; margin: 0; }
  #div_strona, #div_strona *, #div_strona *::before, #div_strona *::after { box-sizing: border-box; }
  #div_strona, #div_strona .responsive-page-wrap { width: 100% !important; max-width: 100%; margin: 0 !important; background: #fff; }
  #sliderwrapperbackground, #ikonySpolecznosciowe, #ikonySpolecznoscioweButton { display: none !important; }
  .responsive-page-table, .responsive-page-table > tbody, .responsive-page-table > tbody > tr, .responsive-page-table > tbody > tr > td { display: block; width: 100% !important; max-width: 100%; height: auto; }
  .responsive-page-table > tbody > tr.responsive-empty-row { display: none; }
  .responsive-page-table .tresc_tr { background: #fff !important; }

  /* Mobile controls are additional links/buttons; original navigation is retained. */
  .responsive-header { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 18px; min-height: 66px; border-bottom: 1px solid #ddd; background: #fafafa; }
  .responsive-logo { display: flex; align-items: center; min-height: 40px; }
  .responsive-logo img { width: 115px; height: auto; }
  .responsive-header-actions { display: flex; gap: 8px; align-items: center; }
  .responsive-header button, .responsive-header .responsive-cart { font: 600 14px Cambay, Arial, sans-serif; min-height: 42px; border: 1px solid #d8d8d8; border-radius: 3px; padding: 9px 12px; background: #fff; color: #222; cursor: pointer; text-decoration: none; }
  #responsive-menu-toggle::before { content: '\2630'; margin-right: 6px; }
  #responsive-menu-toggle[aria-expanded=true] { color: #fff; background: #333333; border-color: #333333; }
  #div_strona button:focus-visible, #div_strona a:focus-visible, #div_strona input:focus-visible, #slidernav div:focus-visible, .responsive-table-scroll:focus-visible { outline: 3px solid #285ca8 !important; outline-offset: 2px; }

  #menu_mini_top_pasek_bottom { height: auto !important; min-height: 0 !important; padding: 10px 18px !important; display: flex; flex-direction: column; background: #eee; }
  #menu_mini_top_pasek_bottom .menu_top_pasek { width: 100% !important; height: auto !important; margin: 8px 0 0; padding: 0; float: none; }
  #menu_mini_top_pasek_bottom .menu_top_pasek > div:first-child { display: none; }
  #twojeZakupy, #twojeZakupy > a, #twojeZakupy > div, #twojeZakupy > a > div { width: 100% !important; height: auto !important; float: none !important; min-height: 22px; }
  #twojeZakupy > div, #twojeZakupy > a > div { padding-left: 84px !important; background-position: left 3px; line-height: 1.5; }
  .divSearchbox { width: 100% !important; height: auto !important; float: none !important; margin: 0 !important; position: relative !important; }
  .divSearchbox > div:first-child:not(.resultbox) { display: none; }
  #searchform { margin: 0; width: 100%; }
  #searchform .searchbox { width: 100% !important; height: 42px !important; margin: 0 !important; padding: 0 !important; position: relative; display: flex; align-items: center; border: 1px solid #ccc; background: #fff; }
  #searchform .searchfield { flex: 1; width: 100% !important; min-width: 0; height: 40px !important; padding: 8px 12px !important; font: 16px Cambay, Arial, sans-serif !important; color: #333; background: transparent; border: 0; }
  #searchform .search { order: 2; flex: 0 0 42px; width: 42px !important; height: 40px !important; background: #f7f7f7 !important; border: 0; }
  #searchform .search::before { content: '\2315'; font: 30px Arial, sans-serif; color: #555; }
  #searchform .loader { flex: 0 0 30px; width: 30px !important; height: 30px; background-position: center; }
  .divSearchbox .resultbox { width: 100% !important; max-width: 100%; right: 0; top: 44px; max-height: 60vh; overflow: auto; }
  .divSearchbox .resultbox-header, .divSearchbox .resultbox-h-b { height: auto; min-height: 30px; }
  .divSearchbox .search-results ul.results-list li { height: auto; min-height: 55px; }

  #menu { width: 100% !important; position: relative !important; z-index: 30 !important; }
  #menu .sf-menu { float: none; width: 100% !important; height: auto !important; margin: 0; padding: 4px 18px 12px; background: #fafafa; }
  #div_strona[data-responsive-ready] #menu .sf-menu { display: none; }
  #div_strona[data-responsive-ready] #menu .sf-menu.responsive-open { display: block; }
  #menu .sf-menu > li { float: none !important; width: 100% !important; height: auto !important; margin: 0 !important; position: static !important; border-bottom: 1px solid #dedede; }
  #div_strona[data-responsive-ready] #menu .sf-menu > li:first-child, #menu .responsive-desktop-label { display: none; }
  #menu .responsive-nav-toggle { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 48px; padding: 12px 4px; border: 0; background: none; text-align: left; font: 600 15px Cambay, Arial, sans-serif; color: #333; cursor: pointer; }
  #menu .responsive-nav-toggle::after, #responsive-category-toggle::after { content: '\2304'; margin-left: 12px; }
  #menu .responsive-nav-toggle[aria-expanded=true]::after, #responsive-category-toggle[aria-expanded=true]::after { content: '\2303'; }
  #menu .sf-menu > li > a { display: block; padding: 12px 4px; }
  #menu .sf-menu ul { position: static !important; top: auto !important; left: auto !important; width: 100% !important; float: none; margin: 0 !important; padding: 0 0 12px !important; background: #fff !important; opacity: 1 !important; visibility: visible !important; }
  #div_strona[data-responsive-ready] #menu .sf-menu > li > ul { display: none !important; }
  #div_strona[data-responsive-ready] #menu .sf-menu > li.responsive-open > ul { display: block !important; }
  #menu .sf-menu ul li { float: none; position: static; height: auto !important; margin: 0 !important; width: 100% !important; white-space: normal; }
  #menu .sf-menu ul a { white-space: normal; line-height: 1.45; padding: 10px 12px !important; min-height: 40px; }

  /* Keep the existing slider's animation, links and thumbnail targets. */
  #sliderwrapper { height: auto !important; display: flex; flex-direction: column; overflow: hidden; }
  #sliderwrapper .sliderpanel { order: 0; width: 100%; position: relative; }
  #sliderwrapper .sliderpanel > img { display: block; width: 100%; height: auto; }
  #sliderwrapper .panelcontent, #sliderwrapper .panelcontent-small { width: 100%; height: 100%; top: 0; left: 0; }
  #sliderwrapper .panelcontent > a, #sliderwrapper .panelcontent-small > a { display: block; width: 100%; height: 100%; }
  #sliderwrapper .panelcontent img, #sliderwrapper .panelcontent-small img { width: 100%; height: auto; max-width: 100%; }
  #sliderwrapper #slidernav { position: static; display: flex; order: 1; gap: 8px; justify-content: center; padding: 8px 12px; background: #f5f5f5; width: 100%; margin: 0; }
  #sliderwrapper #slidernav > div { float: none; margin: 0; height: auto; flex: 0 1 111px; min-width: 0; border: 2px solid transparent; }
  #sliderwrapper #slidernav .selected { border-color: #777777; }
  #sliderwrapper #slidernav img { display: block; width: 100%; height: auto; }
  #koszykInfoPokaz { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; padding: 14px 18px !important; width: 100% !important; }
  #koszykInfoPokaz td { display: block !important; width: auto !important; padding: 0 !important; height: auto !important; }
  #koszykInfoPokaz img { width: 100% !important; height: auto !important; display: block; }
  #koszykInfoPokaz td a { display: block; width: 100%; }
  table:has(> #koszykInfoPokaz), table:has(> tbody > #koszykInfoPokaz) { width: 100% !important; height: auto !important; margin: 0 !important; }

  .td_menu { padding: 0 !important; background: #fff !important; }
  #responsive-category-toggle { display: flex; justify-content: space-between; align-items: center; border: 1px solid #d6d6d6; background: #f2f2f2; width: calc(100% - 36px); margin: 12px 18px 4px; min-height: 48px; padding: 12px 14px; font: 600 16px Cambay, Arial, sans-serif; color: #333; cursor: pointer; }
  #responsive-category-toggle[aria-expanded=true] { border-color: #777777; color: #333333; }
  #responsive-category-panel { display: none; padding: 10px 18px 18px; max-width: 100%; background: #fafafa; }
  #responsive-category-panel.responsive-open { display: block; }
  #responsive-category-panel > div { max-width: 100% !important; width: 100% !important; margin-left: 0 !important; float: none !important; }
  #responsive-category-panel img { max-width: 100%; height: auto; }
  #responsive-category-panel a { overflow-wrap: anywhere; }
  #responsive-category-panel a { display: inline-block; max-width: 100%; padding-top: 6px; padding-bottom: 6px; line-height: 1.5; }
  #responsive-category-panel .table_menu_lewe { width: 100% !important; max-width: 100%; table-layout: fixed; margin-left: 0 !important; }
  #responsive-category-panel .menu_lewe_linki { width: auto !important; padding-left: 4px; padding-right: 0; }
  #responsive-category-panel .menu_programy, #responsive-category-panel .menu_programy > div { width: 100% !important; max-width: 100%; }
  #responsive-category-panel .menu_programy { overflow-x: auto; }
  #responsive-category-panel .menu_programy a { display: block; white-space: nowrap; overflow-wrap: normal; font-size: clamp(12.5px, 3.7vw, 14px); min-height: 36px; }

  #div_strona .td_text { padding: 16px 18px !important; background: #fff !important; max-width: 100%; min-width: 0; overflow-wrap: break-word; }
  .td_text > table, .td_text > div > table, .td_text table.news, .td_text table.news_profile, .td_text table.news_cp, #trescSrodek { width: 100% !important; max-width: 100%; table-layout: fixed; }
  .td_text > div { max-width: 100%; width: auto !important; }
  .td_text div[style*="width:"] { max-width: 100%; }
  .td_text .infoPrzypomnijIDklienta { max-width: 100%; }
  #InfoBoxPromo > div { width: 100% !important; height: auto !important; padding: 10px !important; line-height: 1.5 !important; }
  .td_text img, .td_text video, .td_text iframe, .td_text input[type=image] { max-width: 100%; }
  .td_text img, .td_text video { height: auto; }
  .td_text img[hspace] { margin-left: 0; margin-right: 0; }
  .td_text video { width: 100%; display: block; }
  .td_text .container { width: 100% !important; max-width: 100%; height: auto !important; }
  .td_text .menu_mini { float: none !important; white-space: normal; line-height: 1.5; }
  .td_text .menu_mini_ukrywaj_druk { height: auto !important; }
  .td_text h1, .td_text h2, .td_text h3 { max-width: 100%; overflow-wrap: break-word; }
  table.news { height: auto !important; margin: 0 0 22px !important; border-bottom: 1px solid #e4e4e4; padding-bottom: 18px; }
  table.news .tresc { vertical-align: top; }
  table.news .tresc .miniaturka { width: 25%; max-width: 210px; height: auto; float: left; padding-right: 15px; }
  table.news .tresc .opis_newsa_miniaturka { width: 75% !important; float: left; height: auto !important; padding: 0 !important; }
  table.news .tresc .opis_newsa_bez_miniturki { width: 100% !important; float: none; height: auto !important; }
  table.news .naglowek, table.news .naglowek h2 { width: auto !important; float: none; height: auto; }
  table.news .tresc_k { height: auto !important; overflow: visible !important; line-height: 1.55; }
  table.news .link { height: auto !important; padding: 10px 0 !important; }

  /* Product lists keep all prices and links from PHP. */
  .lista_produkty { height: auto !important; padding: 18px 0 !important; }
  .responsive-product-list > tbody > tr:has(> td.txt14) { display: none; }
  .lista_cena_netto::before { content: 'Netto: '; font-size: 14px; font-weight: normal; }
  .lista_cena_brutto::after { content: ' brutto'; font-size: 14px; font-weight: normal; }
  .lista_produkty::after { content: ''; display: block; clear: both; }
  .lista_numerowanie { display: none; }
  .lista_miniaturki { width: 26%; height: auto; min-height: 120px; overflow: visible; padding: 0 12px 12px 0; }
  .lista_miniaturki a { width: 100%; height: auto; margin: 0; }
  .lista_miniaturki img { width: 100%; max-width: 210px; height: auto; margin: 0 !important; }
  .lista_opis_programu { width: 54%; height: auto; overflow: visible; padding: 0 16px 10px 0; }
  .lista_opis_programu a { width: auto; height: auto; line-height: 1.5; }
  .lista_cena_rabat { float: right; width: 20%; height: auto; }
  .lista_cena_brutto, .lista_cena_netto, .lista_cena { float: none; width: 100%; white-space: normal; }
  .lista_rabat { float: none; width: 100%; }
  .lista_obrazek_nowosc { clear: right; }
  .lista_obrazek_nowosc img { width: 150px; height: 24px; object-fit: contain; }
  #div_sklep_koszyk_ajax { max-width: 100%; margin-left: auto !important; margin-right: auto !important; }
  .gallery_div, .gallery_div .galeria, .gallery_div .miniatury, #reseller-mapa, #arcadia-mapa { max-width: 100% !important; }
  .gallery_div .galeria { width: 100% !important; height: auto !important; }
  .gallery_div .duzy { max-width: 100%; height: auto; }
  .responsive-table-scroll { display: block; width: 100%; max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; }
  .responsive-table-scroll > table { max-width: none; }

  /* Existing form fields and hidden states remain intact. */
  .td_text form, .td_text form table, .td_text table:has(form) { max-width: 100% !important; width: 100% !important; }
  .td_text input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=image]), .td_text select, .td_text textarea { max-width: 100%; box-sizing: border-box; font-size: 16px; min-height: 36px; }
  #przyciskiKoszyk { height: auto; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }
  #przyciskiKoszyk > div { float: none !important; position: static !important; margin: 0 !important; max-width: 100%; }
  .pasekPusty { max-width: 100%; overflow-x: auto; }
  .overlay, .simple_overlay, .zamawiamDemo, .polecam_strone, .informacjaSklep, .bony_promocja_pytanie { box-sizing: border-box; max-width: calc(100vw - 24px) !important; max-height: calc(100vh - 32px); overflow: auto; left: 12px !important; margin-left: 0 !important; }
  .overlay table, .simple_overlay table { max-width: 100%; width: 100% !important; }
  .overlay input, .simple_overlay input { max-width: 100%; box-sizing: border-box; }

  .responsive-footer, .responsive-footer > tbody, .responsive-footer > tbody > tr, .responsive-footer > tbody > tr > td { display: block; width: 100% !important; height: auto !important; }
  .responsive-footer { margin: 0 !important; padding: 20px 18px 72px !important; background: #f2f2f2; border-top: 1px solid #ddd; }
  .responsive-footer td > div { padding-left: 0 !important; width: auto !important; float: none !important; height: auto !important; max-width: 100%; margin-top: 10px !important; }
  #stopka_linki table, #stopka_linki tbody, #stopka_linki tr, #stopka_linki td { display: block; width: 100% !important; }
  #stopka_linki .blok { margin: 20px 0; padding: 0 !important; border: 0; }
  #stopka_linki .linki, #stopka_linki .linki ul li { height: auto; overflow: visible; line-height: 1.65; }
  #stopka_linki .tytul, #stopka_linki .blok > div { padding-left: 0 !important; }
  .responsive-footer .tr_ikony_stopka { background: none; }
  .responsive-footer img { max-width: 100%; height: auto; }
  .responsive-footer .linia_1, .responsive-footer .linia_2 { line-height: 1.8; white-space: normal; }
  /* Cookiebot/Usercentrics is the only cookie notice in the mobile layout. */
  #cookies-info { display: none !important; }
}

@media screen and (max-width: 600px) {
  .td_text .blokMultimedia { float: none; width: 100%; max-width: 270px; margin: 0 auto 18px; }
  .td_text .blokMultimedia h3 { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 55px; height: auto; margin: 0; }
  /* Keep the two original YouTube widgets aligned and separated on phones. */
  .td_text .news_cp:has(.blokMultimedia) div:has(> .g-ytsubscribe),
  .td_text .news_cp:has(.blokMultimedia) div:has(> [id^="___ytsubscribe_"]) {
    float: none !important; width: 220px !important; max-width: 100%;
    max-height: none !important; min-height: 48px; padding: 0 !important;
    margin: 16px auto !important; text-align: left !important;
  }
  .td_text .programSetupTable > tbody > tr > td, .td_text .programSetupInclude > tbody > tr > td { display: block; width: 100% !important; }
  .td_text .programSetupInclude .two > br:first-child { display: none; }
  .td_text .programSetupTable .btn { max-width: 100%; overflow-wrap: anywhere; }
  .responsive-header { padding: 10px 14px; gap: 6px; }
  .responsive-header button, .responsive-header .responsive-cart { padding: 9px 10px; }
  #menu_mini_top_pasek_bottom { padding: 9px 14px !important; }
  #koszykInfoPokaz { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 12px 14px !important; }
  #responsive-category-toggle { width: calc(100% - 28px); margin: 10px 14px 4px; }
  #responsive-category-panel { padding: 10px 14px 16px; }
  #div_strona .td_text { padding: 16px 14px !important; }
  table.news .tresc .miniaturka { width: 100%; max-width: none; float: none; padding: 0; margin: 0 0 12px; display: block; height: auto; }
  table.news .tresc .miniaturka a { display: block; }
  table.news .tresc .miniaturka img { width: 100%; height: auto; object-fit: contain; max-width: 100%; }
  table.news .tresc .opis_newsa_miniaturka { width: 100% !important; float: none; }
  table.news .naglowek a, table.news .naglowek h2 { font-size: 20px; line-height: 1.35; }
  table.news .link a { padding: 8px 0; display: inline-block; }
  .lista_miniaturki { width: 100%; min-height: 0; float: none; padding: 0 0 12px; }
  .lista_miniaturki img { width: 100%; max-width: 280px; display: block; margin: auto !important; }
  .lista_opis_programu { width: 100%; float: none; padding: 0 0 12px; }
  .lista_opis_programu h4 { font-size: 19px; line-height: 1.4; }
  .lista_cena_rabat { float: none; width: 100%; }
  .lista_cena, .lista_cena_brutto, .lista_cena_netto { text-align: left; }
  .lista_obrazek_nowosc { display: block; min-height: 24px; }
  .responsive-product-summary, .responsive-product-summary > td { display: block; width: 100% !important; height: auto !important; }
  .responsive-product-summary table, #trescSrodek:has(#formTestKodRabat) table { width: 100% !important; max-width: 100%; table-layout: fixed; }
  #trescSrodek:has(#formTestKodRabat) td > div[style*="margin: 20px 60px"] { margin: 16px 8px !important; }
  #formPodajDane td.label, #formPodajDane td.input { display: block; width: 100% !important; text-align: left; }
  #formPodajDane td.label { padding-top: 12px; }
  #formPodajDane td.input input[type=text], #formPodajDane td.input select { width: 100%; }
  .responsive-footer { padding: 18px 14px 30px !important; }
}

/* ArCADiasoft footer after removing the external shop, 2026-10-08. */
#arcadia-footer { box-sizing: border-box; padding: 24px 20px !important; border-top: 1px solid #d5d5d5; background: #f2f2f2; }
#arcadia-footer > tbody > tr > td > div { padding-left: 0 !important; }
#arcadia-footer #stopka_linki > table { width: 100%; }
#arcadia-footer #stopka_linki .arcadia-footer-partners { width: 175px !important; padding-right: 24px; }
#arcadia-footer .arcadia-footer-partners img { max-width: 134px; height: auto; }
#arcadia-footer #stopka_linki .arcadia-footer-resources { width: auto !important; }
#arcadia-footer #stopka_linki .blok { border: 0; margin: 0; padding: 0; }
#arcadia-footer #stopka_linki .blok > div { padding-left: 0 !important; }
#arcadia-footer #stopka_linki .tytul { margin-bottom: 8px; }
#arcadia-footer .arcadia-footer-resources a.linki_stopka { display: inline-block; padding: 3px 0; line-height: 1.55; }
#arcadia-footer .arcadia-footer-awards { padding: 18px 0 !important; }
#arcadia-footer .tr_ikony_stopka { background: none; }
#arcadia-footer .tr_ikony_stopka > td { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; height: auto !important; padding: 20px 0; border-top: 1px solid #d5d5d5; }
#arcadia-footer .arcadia-footer-brand { width: 180px !important; float: none !important; }
#arcadia-footer .arcadia-footer-brand img { margin: 0 !important; max-width: 170px; height: auto; }
#arcadia-footer .arcadia-footer-navigation { flex: 1 1 360px; width: auto !important; float: none !important; margin: 0 !important; }
#arcadia-footer .arcadia-footer-navigation a { display: inline-block; padding: 4px 0; line-height: 1.65; }
#arcadia-footer .arcadia-footer-social { width: auto !important; float: none !important; padding: 0 !important; margin: 0 !important; }

#arcadia-footer .arcadia-footer-legal { border-top: 1px solid #ddd; padding-top: 14px; }
#arcadia-footer .arcadia-footer-legal a { display: inline-block; padding: 5px 0; }
@media screen and (max-width: 1230px) {
  #arcadia-footer #stopka_linki .arcadia-footer-partners { width: 100% !important; padding: 0 0 18px; }
  #arcadia-footer .arcadia-footer-partners > div { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
  #arcadia-footer .arcadia-footer-partners > div > div:empty { display: none; }
  #arcadia-footer .arcadia-footer-partners img { max-width: 100px; }
  #arcadia-footer #stopka_linki .arcadia-footer-resources { width: 100% !important; }
  #arcadia-footer .arcadia-footer-awards table { display: table !important; width: auto !important; max-width: 100%; }
  #arcadia-footer .arcadia-footer-awards tbody { display: table-row-group !important; }
  #arcadia-footer .arcadia-footer-awards tr { display: flex !important; flex-wrap: wrap; gap: 8px; }
  #arcadia-footer .arcadia-footer-awards td { display: block !important; width: auto !important; padding: 0 !important; }
  #arcadia-footer .arcadia-footer-awards td img { max-width: 90px; }
  #arcadia-footer .arcadia-footer-legal > div { text-align: left !important; }
}
@media screen and (max-width: 600px) {
  #arcadia-footer { padding: 20px 16px 36px !important; }
  #arcadia-footer .tr_ikony_stopka > td { display: block; }
  #arcadia-footer .arcadia-footer-brand, #arcadia-footer .arcadia-footer-navigation, #arcadia-footer .arcadia-footer-social { margin: 0 0 16px !important; }
  #arcadia-footer .arcadia-footer-navigation a, #arcadia-footer .arcadia-footer-legal a { padding: 7px 0; }
}

@media screen and (max-width: 1230px) {
#arcadia-footer .arcadia-footer-awards table, #arcadia-footer .arcadia-footer-awards td { height: auto !important; }
#arcadia-footer .arcadia-footer-awards .toolpipNagrody > div[data-geo] { width: clamp(54px, 18vw, 70px) !important; height: clamp(65px, 21.42vw, 84px) !important; margin: 0 !important; background-size: contain !important; background-repeat: no-repeat !important; }
}

/* Three home-page tiles: retain desktop layout, center the mobile stack. */
@media screen and (max-width: 1230px) {
#div_strona .td_text .arcadia-home-tiles { display: flex; flex-direction: column; align-items: center; gap: 12px; width: 100%; box-sizing: border-box; }
#div_strona .td_text .arcadia-home-tiles > a { display: block; float: none !important; width: 240px; max-width: 100%; margin: 0 auto !important; }
#div_strona .td_text .arcadia-home-tiles > a > img { display: block; max-width: 100%; height: auto; margin: 0 !important; }
}

/* Mobile reading: separate illustrations from text; keep article links intact. */
@media screen and (max-width: 800px) {
  #div_strona .arcadia-program-description img[align="left"],
  #div_strona .arcadia-program-description img[align="right"],
  #div_strona .arcadia-news-detail img[align="left"],
  #div_strona .arcadia-news-detail img[align="right"] {
    display: block; float: none !important; clear: both;
    max-width: 100% !important; height: auto !important;
    margin: 12px auto 18px !important; box-sizing: border-box;
  }
  #div_strona .arcadia-news-detail div.link4,
  #div_strona .arcadia-program-description div.link4 {
    width: auto !important; max-width: 100%; float: none !important;
    margin: 18px 0 !important; padding: 12px 0 !important;
    text-align: left !important; box-sizing: border-box;
  }
  #div_strona .arcadia-news-detail div.link4 > a,
  #div_strona .arcadia-program-description div.link4 > a {
    display: block; width: auto !important; min-height: 45px;
    text-align: left !important; line-height: 1.65;
  }
  #div_strona .arcadia-news-detail div.link4 > a > img,
  #div_strona .arcadia-program-description div.link4 > a > img {
    width: 36px; height: auto; float: right !important;
    padding: 0 !important; margin: 4px 0 8px 14px !important;
  }
}

/* Comparison table controls and a persistent feature column on phones. */
.responsive-comparison-controls { display: none; }
@media screen and (max-width: 800px) {
  #div_strona .responsive-comparison-controls { display: flex; align-items: center; gap: 8px; padding: 10px 0; }
  #div_strona .responsive-comparison-controls span { flex: 1; font-size: 14px; }
  #div_strona .responsive-comparison-controls button { width: 44px; min-height: 44px; border: 1px solid #aaa; background: #fff; color: #333; font-size: 24px; cursor: pointer; }
  #div_strona .responsive-comparison-controls button:disabled { opacity: .35; cursor: default; }
  #div_strona .responsive-comparison { display: block; width: 100%; max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
  #div_strona .responsive-comparison > table.tg { min-width: 860px; width: 100% !important; table-layout: fixed; }
  #div_strona .responsive-comparison > table.tg col { width: 116px !important; }
  #div_strona .responsive-comparison > table.tg col:first-child { width: 164px !important; }
  #div_strona .responsive-comparison > table.tg td,
  #div_strona .responsive-comparison > table.tg th { white-space: normal; overflow-wrap: normal; }
  #div_strona .responsive-comparison > table.tg tr > :first-child { position: sticky; left: 0; z-index: 1; box-shadow: 1px 0 #40505d; }
  #div_strona .responsive-comparison > table.tg tr > td:first-child { background: #eef0f0; }
  #div_strona .responsive-comparison > table.tg tr > th:first-child { background: #858585; color: #fff; z-index: 2; }
}


/* Administrator review: language links, module pages and compact mobile footer. */
#menu_mini_top_pasek_bottom { position: relative; }
.arcadia-language-links { position: absolute; right: 158px; top: 0; height: 44px; display: flex; align-items: center; gap: 8px; }
.arcadia-language-links a { display: flex; align-items: center; justify-content: center; min-width: 32px; min-height: 36px; }
.arcadia-language-links img { width: 25px; height: auto; }
.arcadia-footer-youtube-row { display: none; }
@media screen and (max-width: 1230px) {
  .arcadia-language-links { position: static; height: auto; min-height: 32px; justify-content: flex-end; order: 0; gap: 12px; }
  #menu_mini_top_pasek_bottom .divSearchbox { order: 1; }
  #menu_mini_top_pasek_bottom .menu_top_pasek { order: 2; }
  #arcadia-footer .arcadia-footer-resources > .blok,
  #arcadia-footer #stopka_linki .arcadia-footer-shop { display: none !important; }
  #arcadia-footer .arcadia-footer-partners > div { justify-content: center; }
  #arcadia-footer .arcadia-footer-awards { display: flex; justify-content: center; }
  #arcadia-footer .arcadia-footer-youtube-row { display: table-row; }
  #arcadia-footer .arcadia-footer-youtube-row > td { padding-top: 20px; text-align: center; }
  #arcadia-footer .arcadia-footer-youtube-row .arcadia-footer-social { text-align: center !important; }
  #responsive-category-panel .podmenu_programy { display: none !important; }
  .td_text .arcadia-module-page { width: 100% !important; table-layout: fixed; }
  .arcadia-module-page > tbody > tr > td { box-sizing: border-box; }
  .arcadia-module-page .arcadia-module-tabs { text-align: left; line-height: 1.8; padding-top: 12px; padding-bottom: 12px; }
  .arcadia-module-tabs a { display: inline-block; padding: 6px 2px; }
  .arcadia-module-page .arcadia-program-description { width: 100%; }
  .arcadia-module-page .arcadia-program-description img { max-width: 100%; height: auto; }
}

/* Language flags beside the ArCADiasoft logo on mobile, 2026-10-10. */
@media screen and (max-width: 1230px) {
  .responsive-header { flex-wrap: wrap; padding: 12px; gap: 8px; }
  .responsive-header-brand { display: flex; align-items: center; gap: 8px; }
  .responsive-header .arcadia-language-links { position: static; order: initial; min-height: 36px; height: auto; gap: 0; justify-content: flex-start; }
  .responsive-header-actions { margin-left: auto; }
}
@media screen and (max-width: 600px) {
  .responsive-header .responsive-logo img { width: 98px; }
}

/* Mobile module navigation and legacy Windows compatibility badges. */
.arcadia-module-nav { display: none; }
@media screen and (max-width: 1230px) {
  .arcadia-module-nav { display: block; margin: 12px 18px 4px; }
  #arcadia-module-toggle { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #d6d6d6; background: #f2f2f2; color: #333; text-align: left; font: 600 16px Cambay, Arial, sans-serif; cursor: pointer; }
  #arcadia-module-toggle::after { content: '\2304'; flex-shrink: 0; }
  #arcadia-module-toggle[aria-expanded=true] { border-color: #777777; color: #333333; }
  #arcadia-module-toggle[aria-expanded=true]::after { content: '\2303'; }
  .arcadia-module-links { display: none; border: 1px solid #d6d6d6; border-top: 0; background: #fff; }
  .arcadia-module-links.responsive-open { display: block; }
  .arcadia-module-links a { display: block; box-sizing: border-box; min-height: 48px; padding: 12px 14px; border-bottom: 1px solid #e7e7e7; color: #333333; text-decoration: none; font: 16px/1.5 Cambay, Arial, sans-serif; overflow-wrap: anywhere; }
  .arcadia-module-links a:last-child { border-bottom: 0; }
  .arcadia-module-links a[aria-current=page] { background: #eeeeee; border-left: 4px solid #777777; padding-left: 10px; font-weight: 700; }
  .arcadia-module-links a:hover { background: #eeeeee; }
  #arcadia-module-toggle:focus-visible, .arcadia-module-links a:focus-visible { outline: 2px solid #777777; outline-offset: 2px; }
  .td_text .arcadia-windows-badge, .td_text img[src*="/ms_logo/"] { display: none !important; }
}
@media screen and (max-width: 600px) {
  .arcadia-module-nav { margin: 10px 14px 4px; }
}

/* Compact program actions and partner logos on mobile. */
@media screen and (max-width: 1230px) {
  #arcadia-footer .arcadia-footer-partners a[href*="arcadiapress.pl"] { display: none !important; }
  .td_text p:has(> a > img[src*="pr_belka_sklep"]):has(> a > img[src*="pr_belka_ulotka"]) { display: flex; justify-content: flex-end; align-items: center; gap: 12px; }
  .td_text td:has(> div > a > img[src*="pr_belka_sklep"]):has(> div > a > img[src*="pr_belka_ulotka"]) > div { display: inline-block; vertical-align: middle; margin: 0 0 0 12px; }
  .td_text td:has(> div > a > img[src*="pr_belka_sklep"]):has(> div > a > img[src*="pr_belka_ulotka"]) > div:first-child { margin-left: 0; }
  .td_text a:has(> img[src*="pr_belka_sklep"]), .td_text a:has(> img[src*="pr_belka_ulotka"]) { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; vertical-align: middle; }
  .td_text img[src*="pr_belka_sklep"], .td_text img[src*="pr_belka_ulotka"] { display: block; margin: 0 !important; }
}

/* Mobile offer text on the left, arrows on the right; balanced footer columns. */
@media screen and (max-width: 1230px) {
  .td_text .arcadia-offer-link { display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; line-height: 1.5; }
  .arcadia-offer-link .arcadia-offer-text { order: 0; flex: 1; min-width: 0; }
  .arcadia-offer-text br { display: none; }
  .arcadia-offer-text b::after { content: ' '; white-space: pre; }
  .td_text .arcadia-offer-link > img { order: 1; flex: 0 0 32px; float: none !important; width: 32px !important; height: 32px !important; margin: 0 !important; object-fit: contain; }
  #arcadia-footer #stopka_linki > table > tbody > tr { display: grid; grid-template-columns: clamp(76px, 25vw, 100px) minmax(0, 292px); justify-content: space-between; align-items: start; column-gap: 8px; }
  #arcadia-footer #stopka_linki .arcadia-footer-partners { width: 100% !important; padding: 0; min-width: 0; }
  #arcadia-footer .arcadia-footer-partners > div { display: flex; flex-direction: column; flex-wrap: nowrap; gap: 10px; align-items: flex-start; margin: 0 !important; }
  #arcadia-footer .arcadia-footer-partners > div > div:not(:has(a)),
  #arcadia-footer .arcadia-footer-partners > div > div:has(a[href*="arcadiapress.pl"]) { display: none; }
  #arcadia-footer .arcadia-footer-partners > div > div { width: 100%; }
  #arcadia-footer .arcadia-footer-partners img { display: block; width: 100%; margin: 0; }
  #arcadia-footer #stopka_linki .arcadia-footer-resources { width: 100% !important; min-width: 0; }
  #arcadia-footer .arcadia-footer-awards { margin: 0 !important; padding: 0 !important; }
  #arcadia-footer .arcadia-footer-awards table, #arcadia-footer .arcadia-footer-awards tbody { display: block !important; width: 100% !important; }
  #arcadia-footer .arcadia-footer-awards tr { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; }
  #arcadia-footer .arcadia-footer-awards td { width: 100% !important; min-width: 0; }
  #arcadia-footer .arcadia-footer-awards .toolpipNagrody > div[data-geo] { width: 100% !important; max-width: 70px; height: auto !important; aspect-ratio: 100 / 119; }
}

/* Bring the mobile partner-and-award row closer to the footer separator. */
@media screen and (max-width: 1230px) {
  #arcadia-footer { padding-top: 12px !important; }
  #arcadia-footer > tbody > tr:first-child > td > div { padding-top: 0 !important; margin-top: 0 !important; }
}

/* Compact mobile footer: retain navigation without the brand logo or award divider. */
@media screen and (max-width: 1230px) {
  #arcadia-footer { padding-bottom: 16px !important; }
  #arcadia-footer .arcadia-footer-brand { display: none !important; }
  #arcadia-footer .tr_ikony_stopka > td { display: block; border-top: 0; padding: 8px 0 4px; }
  #arcadia-footer .arcadia-footer-navigation { margin: 0 !important; }
  #arcadia-footer .arcadia-footer-navigation .linia_1,
  #arcadia-footer .arcadia-footer-navigation .linia_2,
  #arcadia-footer .arcadia-footer-legal .linia_2 { line-height: 1.5; }
  #arcadia-footer .arcadia-footer-navigation a,
  #arcadia-footer .arcadia-footer-legal a { padding: 3px 0; line-height: 1.5; }
  #arcadia-footer .arcadia-footer-facebook { margin: 0 !important; line-height: 0; font-size: 0; }
  #arcadia-footer .arcadia-footer-legal { padding-top: 8px; }
  #arcadia-footer .arcadia-footer-legal > div { margin-top: 0 !important; margin-bottom: 4px !important; line-height: 1.5; }
  #arcadia-footer .arcadia-footer-youtube-row > td { padding: 8px 0 0 !important; }
  #arcadia-footer .arcadia-footer-youtube-row .arcadia-footer-social { margin: 0 !important; line-height: 1; }
}

/* Stack the TERMOCAD description and awards on mobile; omit the opening award badge. */
@media screen and (max-width: 1230px) {
  .arcadia-program-description p:has(> a > img[src$="/terazPolska.png"]) { display: none !important; }
  .arcadia-program-description table:has(img[src$="/news_teraz_pol-dyplom.png"]) { display: block; width: 100% !important; border-spacing: 0; }
  .arcadia-program-description table:has(img[src$="/news_teraz_pol-dyplom.png"]) > tbody,
  .arcadia-program-description table:has(img[src$="/news_teraz_pol-dyplom.png"]) > tbody > tr,
  .arcadia-program-description table:has(img[src$="/news_teraz_pol-dyplom.png"]) > tbody > tr > td { display: block; width: 100% !important; }
  .arcadia-program-description table:has(img[src$="/news_teraz_pol-dyplom.png"]) > tbody > tr > td { padding: 0; }
  .arcadia-program-description table:has(img[src$="/news_teraz_pol-dyplom.png"]) > tbody > tr > td + td { margin-top: 20px; padding-top: 16px; border-top: 1px solid #e4e4e4; }
  .arcadia-program-description table:has(img[src$="/news_teraz_pol-dyplom.png"]) > tbody > tr > td:last-child .txt2 { text-align: left !important; }
  .arcadia-program-description table:has(img[src$="/news_teraz_pol-dyplom.png"]) > tbody > tr > td:last-child img { display: block; max-width: 100%; height: auto; margin: 12px auto !important; }
}

/* Keep wrapped download labels inside one rectangular button on phones. */
@media screen and (max-width: 600px) {
  .td_text a.btn.btn-info[href*="pobierz.intersoft.pl/demo/"] {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-height: 48px;
    padding: 12px 16px;
    font-size: 16px;
    line-height: 1.4;
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}

/* Give the download prompt and product name separate, balanced mobile lines. */
@media screen and (max-width: 600px) {
  .td_text a.btn.btn-info.arcadia-download-label {
    flex-direction: column;
    gap: 4px;
    padding: 12px 14px;
  }
  .arcadia-download-label .arcadia-download-lead { font-size: 14px; text-wrap: balance; }
  .arcadia-download-label .arcadia-download-product { white-space: nowrap; font-size: 16px; }
}
@media screen and (max-width: 360px) {
  .arcadia-download-label .arcadia-download-lead { font-size: 13px; }
}

/* Readable public search detail views and explicit module links. */
.arcadia-search-detail { max-width: 850px; padding: 16px 20px 24px; }
.arcadia-search-detail .arcadia-search-kind { color: #777; font-size: 13px; margin: 0 0 8px; }
.arcadia-search-detail-text { margin: 18px 0; line-height: 1.7; overflow-wrap: anywhere; }
.arcadia-search-file { display: inline-block; padding: 10px 16px; background: #5e8b02; color: #fff !important; }
.arcadia-konstruktor-module-link { text-decoration: underline; text-underline-offset: 2px; }
@media screen and (max-width: 600px) {
  .arcadia-search-detail { padding: 12px 6px 20px; }
  .arcadia-search-detail h1 { font-size: 24px; line-height: 1.3; }
}

/* Three horizontal home-page shortcuts on phones. */
.arcadia-home-tile-label, .arcadia-home-tile-arrow { display: none; }
@media screen and (max-width: 600px) {
  #div_strona .td_text .arcadia-home-tiles { align-items: stretch; gap: 10px; padding: 10px 0 20px !important; }
  #div_strona .td_text .arcadia-home-tiles > a { display: flex; align-items: center; gap: 14px; box-sizing: border-box; width: 100%; min-height: 102px; padding: 10px; border: 1px solid #d7d7d7; border-left: 3px solid #ff6b00; background: #fff; color: #333; text-decoration: none; text-align: left; font: 600 16px/1.45 Cambay, Arial, sans-serif; }
  #div_strona .td_text .arcadia-home-tiles > a > img { flex: 0 0 86px; width: 86px !important; height: 80px !important; max-width: none; object-fit: cover; object-position: center top; margin: 0 !important; }
  #div_strona .arcadia-home-tiles .arcadia-home-tile-label { display: block; flex: 1; min-width: 0; }
  #div_strona .arcadia-home-tiles .arcadia-home-tile-arrow { display: block; flex: 0 0 22px; color: #ff6b00; font: 24px/1 Arial, sans-serif; text-align: center; }
  #div_strona .td_text .arcadia-home-tiles > a:hover { background: #fafafa; }
  #div_strona .td_text .arcadia-home-tiles > a:focus-visible { outline: 2px solid #777777; outline-offset: 2px; }
}
@media screen and (max-width: 360px) {
  #div_strona .td_text .arcadia-home-tiles > a { gap: 10px; }
}

/* Align the two partner logos within the exact height of the award row. */
@media screen and (max-width: 1230px) {
  #arcadia-footer #stopka_linki .arcadia-footer-partners { position: relative; align-self: stretch; min-height: 0; }
  #arcadia-footer .arcadia-footer-partners > div { position: absolute; inset: 0; display: grid; grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 2px; align-items: stretch; }
  #arcadia-footer .arcadia-footer-partners > div > div { min-height: 0; }
  #arcadia-footer .arcadia-footer-partners > div > div > a { display: block; width: 100%; height: 100%; }
  #arcadia-footer .arcadia-footer-partners img { width: 100%; height: 100%; max-height: 100%; object-fit: contain; object-position: left top; }
  #arcadia-footer .arcadia-footer-partners a[href*="intellicad.org"] img { object-position: left bottom; }
}

/* Cart values and controls remain the original server-rendered nodes. */
@media screen and (max-width: 1230px) {
  .responsive-cart-content #trescSrodek, .responsive-cart-table { width: 100% !important; max-width: 100%; table-layout: fixed; }
  .responsive-cart-host { min-width: 0; max-width: 100%; }
  #ajaxListaProgramy > div, .responsive-cart-host > div:not(.responsive-table-scroll) { width: auto !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; overflow-wrap: anywhere; }
  .responsive-cart-host > div ul { padding-left: 24px; }
  .responsive-cart-table input[type=image], .responsive-cart-table img { max-width: 100%; height: auto; }
}

@media screen and (max-width: 800px) {
  .responsive-cart-table, .responsive-cart-table > tbody { display: block; width: 100% !important; }
  .responsive-cart-table > tbody > tr, .responsive-cart-table > tr { display: block; height: auto !important; width: 100%; }
  .responsive-cart-table > tbody > tr > td, .responsive-cart-table > tr > td { display: block; width: auto !important; min-width: 0; max-width: 100%; padding: 0; white-space: normal; overflow-wrap: anywhere; }
  .responsive-cart-table .responsive-cart-head, .responsive-cart-table .responsive-cart-spacer, .responsive-cart-table .responsive-cart-empty { display: none; }
  .responsive-cart-table tr.responsive-cart-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0 10px; margin: 12px 0 18px; padding: 14px; border: 1px solid #d7d7d7; background: #fff; }
  .responsive-cart-item > td.responsive-cart-number { grid-column: 1; grid-row: 1; align-self: center; color: #636363; font-size: 12px; text-align: left; }
  .responsive-cart-number::before { content: 'Pozycja '; }
  .responsive-cart-item > td.responsive-cart-name { grid-column: 1 / -1; grid-row: 2; padding: 4px 0 16px; font-size: 18px; font-weight: bold; line-height: 1.45; text-align: left; }
  .responsive-cart-item > td.responsive-cart-remove { grid-column: 2; grid-row: 1; min-height: 0; text-align: right; }
  .responsive-cart-remove a { display: inline-flex; min-width: 36px; min-height: 36px; justify-content: center; align-items: center; border: 1px solid #ddd; }
  .responsive-cart-remove img { width: 14px; height: 14px; }
  .responsive-cart-table tr > td.responsive-cart-price { display: flex; grid-column: 1 / -1; justify-content: space-between; align-items: baseline; gap: 8px; padding: 8px 0; border-top: 1px solid #e8e8e8; font-size: 14px; line-height: 1.5; text-align: right; }
  .responsive-cart-price::before { content: attr(data-cart-label); color: #555; font-weight: normal; text-align: left; flex: 1 1 55%; min-width: 0; }
  .responsive-cart-value { display: block; flex: 0 1 auto; min-width: 0; max-width: 65%; overflow-wrap: anywhere; text-align: right; }
  .responsive-cart-value > span[onclick] { display: inline-flex; min-width: 32px; min-height: 32px; align-items: center; justify-content: center; }
  .responsive-cart-table tr > td.responsive-cart-gross { font-size: 16px; font-weight: bold; }
  .responsive-cart-table tr.responsive-cart-subtotal { padding: 12px 14px; margin: 0 0 14px; background: #f3f3f3 !important; }
  .responsive-cart-table tr.responsive-cart-total { padding: 14px; margin: 0 0 14px; border: 1px solid #cfd6bf; background: #f2f5ec !important; }
  .responsive-cart-table tr > td.responsive-cart-summary-title { padding: 0 0 10px; text-align: left; font-size: 15px; font-weight: bold; line-height: 1.5; }
  .responsive-cart-table tr.responsive-cart-actions { display: flex; flex-direction: column; gap: 10px; padding: 8px 0 14px; }
  .responsive-cart-table .responsive-cart-actions > td { width: 100% !important; text-align: center; }
  .responsive-cart-actions p { margin: 0; }
  .responsive-cart-actions form { margin: 0; }
  .responsive-cart-actions img, .responsive-cart-actions input[type=image] { width: auto; max-width: 100%; height: auto; vertical-align: middle; }
  .responsive-cart-actions #loaderDodaje:empty { height: 0 !important; }
  .responsive-cart-table tr.responsive-cart-message > td { padding: 0; }
}

/* First cart step: two actions in one row and promotion flush with the content. */
@media screen and (max-width:600px) {
 #ajaxListaProgramy .responsive-cart-table tr.responsive-cart-actions { flex-direction:row; align-items:flex-start; gap:10px; }
 #ajaxListaProgramy .responsive-cart-actions > td { flex:1 1 0; min-width:0; width:calc((100% - 10px) / 2) !important; }
 #ajaxListaProgramy .responsive-cart-actions a { display:inline-flex; align-items:center; min-height:44px; max-width:100%; }
 #ajaxListaProgramy .responsive-cart-actions img, #ajaxListaProgramy .responsive-cart-actions input[type=image] { width:200px; max-width:100%; height:auto; vertical-align:middle; }
 #ajaxListaProgramy .responsive-cart-actions input[type=image] { min-height:44px; object-fit:contain; }
 .responsive-cart-content #ajaxListaProgramy > div > div[style*='width:780px'] { width:auto !important; max-width:100%; margin-left:0 !important; margin-right:0 !important; text-align:left; }
 #ajaxListaProgramy a:has(> img[src$='/ico_opis_dd.jpg']) { display:flex; align-items:center; gap:10px; line-height:1.5; text-align:left; }
 #ajaxListaProgramy a > img[src$='/ico_opis_dd.jpg'] { display:block; flex:0 0 24px; width:24px; height:24px; max-width:none; margin:0; padding:0; object-fit:none; object-position:0 -14px; }
}

/* Checkout templates: keep original fields, hidden rows and submit controls. */
@media (max-width: 1230px) {
  .responsive-checkout-form table, .responsive-checkout-summary { width: 100% !important; max-width: 100%; table-layout: fixed; }
  .responsive-checkout-form td, .responsive-checkout-summary td { min-width: 0; overflow-wrap: anywhere; white-space: normal; }
  .responsive-checkout-form h1 { font-size: 22px; line-height: 1.5; padding: 8px; }
  .responsive-checkout-form h2 { font-size: 20px; line-height: 1.45; }
  .responsive-checkout-form .responsive-delivery-table { margin: 12px 0 20px !important; float: none; }
  #przyciskiKoszyk { height: auto !important; min-height: 0; }
  #przyciskiKoszyk input[type=image], #przyciskiKoszyk img { max-width: 100%; height: auto; }
}
@media (max-width: 800px) {
  .responsive-checkout-form .responsive-delivery-table, .responsive-delivery-table > tbody { display: block; }
  .responsive-delivery-table > tr, .responsive-delivery-table > tbody > tr { display: block; height: auto; }
  .responsive-delivery-table > tr > td, .responsive-delivery-table > tbody > tr > td { display: block; width: auto !important; max-width: 100%; }
  .responsive-delivery-table .tlo_tab_gora_ico > td { height: auto !important; min-height: 62px; padding: 70px 0 8px; background-position: left top; }
  .responsive-delivery-table tr.responsive-delivery-option { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 0 8px; margin: 8px 0 12px; padding: 10px; border: 1px solid #d7d7d7; background: #fff; }
  .responsive-delivery-option > td.responsive-delivery-indent { display: none; }
  .responsive-delivery-option > td.responsive-delivery-choice { grid-column: 1; grid-row: 1 / 3; align-self: center; padding: 0; }
  .responsive-delivery-choice input[type=radio] { width: 22px; height: 22px; margin: 11px; accent-color: #6d8e00; cursor: pointer; }
  .responsive-delivery-choice input:disabled { cursor: default; }
  .responsive-delivery-option > td.responsive-delivery-description { grid-column: 2; grid-row: 1; padding: 0 0 6px; text-align: left; line-height: 1.5; }
  .responsive-delivery-option > td.responsive-delivery-price { grid-column: 2; grid-row: 2; padding: 0; text-align: left; font-weight: bold; line-height: 1.5; }
  .responsive-checkout-summary, .responsive-checkout-summary > tbody { display: block; }
  .responsive-checkout-summary > tr, .responsive-checkout-summary > tbody > tr { display: block; height: auto; }
  .responsive-checkout-summary > tr > td, .responsive-checkout-summary > tbody > tr > td { display: block; width: auto !important; height: auto; padding: 10px; }
  .responsive-checkout-summary .responsive-checkout-detail { padding: 8px 0; border-bottom: 1px solid #e8e8e8; }
  .responsive-checkout-summary tr.responsive-checkout-detail > td { text-align: left; padding: 2px 0; }
  .responsive-checkout-summary .responsive-checkout-detail > td:first-child { color: #555; }
  #przyciskiKoszyk { flex-direction: column; align-items: stretch; gap: 12px; margin: 20px 0; }
  #przyciskiKoszyk > div { width: 100% !important; text-align: center; }
  #przyciskiKoszyk form { margin: 0; }
}
@media (max-width: 600px) {
  #formPodajDane table { table-layout: fixed; }
  #formPodajDane > table, #formPodajDane > table > tbody { display: block; }
  #formPodajDane > table > tr, #formPodajDane > table > tbody > tr { display: block; height: auto; }
  #formPodajDane > table > tr > td, #formPodajDane > table > tbody > tr > td { display: block; width: auto !important; height: auto; }
  #formPodajDane td.label { font-weight: bold; padding: 12px 0 3px; }
  #formPodajDane td.input { padding: 0 0 8px; }
  #formPodajDane input[type=text] { padding: 8px; min-height: 42px; }
  #formPodajDane input[type=radio], #formPodajDane input[type=checkbox] { width: 20px; height: 20px; margin: 10px 8px 10px 0; vertical-align: middle; }
  #formPodajDane td > div { margin-left: 0 !important; }
  #formPodajDane .podpowiedzBlad { max-width: 100%; }
}

/* Customer step: its later colspan must not halve the form's parent cell. */
@media screen and (max-width:600px) {
 #trescSrodek:has(#formPodajDane),
 #trescSrodek:has(#formPodajDane) > tbody,
 #trescSrodek:has(#formPodajDane) > tbody > tr,
 #trescSrodek:has(#formPodajDane) > tbody > tr > td { display:block; width:100% !important; max-width:100%; min-width:0; height:auto; box-sizing:border-box; }
 #formPodajDane { display:block; width:100%; max-width:100%; min-width:0; margin:0; }
 #formPodajDane > table, #formPodajDane > table > tbody,
 #formPodajDane > table > tbody > tr,
 #formPodajDane > table > tbody > tr > td { width:100% !important; max-width:100%; min-width:0; box-sizing:border-box; }
 #formPodajDane h1, #formPodajDane h2 { margin:0; padding:12px; text-align:left; line-height:1.4; }
 #formPodajDane h1 { font-size:22px; }
 #formPodajDane h2 { font-size:20px; }
 #formPodajDane td.label { padding:14px 0 5px; text-align:left; }
 #formPodajDane td.input { padding:0 0 10px; line-height:1.6; }
 #formPodajDane td.input input[type=text] { display:block; width:100%; max-width:100%; min-width:0; height:44px; min-height:44px; margin:0; padding:8px 10px; box-sizing:border-box; font:400 16px/1.5 Cambay,Arial,sans-serif; }
 #formPodajDane td:has(> input[name=dane]), #formPodajDane td:has(#wyrazam_zgode) { padding:20px 0 14px; text-align:left; line-height:1.5; }
 #formPodajDane .podpowiedzBlad { position:static; width:auto; max-width:100%; margin:0 0 6px; line-height:1.5; box-sizing:border-box; }
 #trescSrodek:has(#formPodajDane) #przyciskiKoszyk { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:10px; margin:16px 0 0; }
 #trescSrodek:has(#formPodajDane) #przyciskiKoszyk > div { min-width:0; width:100% !important; }
 #trescSrodek:has(#formPodajDane) #przyciskiKoszyk .lista_dane { grid-column:1; grid-row:1; }
 #trescSrodek:has(#formPodajDane) #przyciskiKoszyk .dalej { grid-column:2; grid-row:1; }
 #trescSrodek:has(#formPodajDane) #przyciskiKoszyk .przerwij_dane { grid-column:1 / -1; grid-row:2; }
 #trescSrodek:has(#formPodajDane) #przyciskiKoszyk input[type=image],
 #trescSrodek:has(#formPodajDane) #przyciskiKoszyk img { width:200px; max-width:100%; height:auto; min-height:44px; object-fit:contain; }
}

/* All checkout steps: prevent outer seven-column spans from squeezing content. */
@media screen and (max-width:600px) {
 .responsive-cart-content #trescSrodek,
 .responsive-cart-content #trescSrodek > tbody,
 .responsive-cart-content #trescSrodek > tbody > tr,
 .responsive-cart-content #trescSrodek > tbody > tr > td { display:block; width:100% !important; max-width:100%; min-width:0; height:auto; box-sizing:border-box; }
 #trescSrodek #przyciskiKoszyk { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:10px; margin:16px 0; }
 #trescSrodek #przyciskiKoszyk > div { width:100% !important; min-width:0; }
 #trescSrodek #przyciskiKoszyk .wstecz, #trescSrodek #przyciskiKoszyk .wstecz_1, #trescSrodek #przyciskiKoszyk .lista_dane { grid-column:1; grid-row:1; }
 #trescSrodek #przyciskiKoszyk .dalej, #trescSrodek #przyciskiKoszyk .wyslij { grid-column:2; grid-row:1; }
 #trescSrodek #przyciskiKoszyk .przerwij, #trescSrodek #przyciskiKoszyk .przerwij_1, #trescSrodek #przyciskiKoszyk .przerwij_dane { grid-column:1 / -1; grid-row:2; }
 #trescSrodek #przyciskiKoszyk input[type=image], #trescSrodek #przyciskiKoszyk img { width:200px; max-width:100%; height:auto; min-height:44px; object-fit:contain; }
 #trescSrodek #przyciskiKoszyk:has(input[name=krokPolitykaPrywatnosci]) .dalej { grid-column:1; grid-row:1; }
 #trescSrodek #przyciskiKoszyk:has(input[name=krokPolitykaPrywatnosci]) .przerwij { grid-column:2; grid-row:1; }
 #trescSrodek #przyciskiKoszyk:has(input[name=krokPolitykaPrywatnosci]) .wstecz { grid-column:1 / -1; grid-row:2; }
}

/* Stable first layout: these classes and controls are in the server HTML. */
#sliderwrapper { height:381px !important; isolation:isolate; }
#sliderwrapper .sliderpanel { position:absolute !important; inset:0; width:100%; height:100%; }
#sliderwrapper .sliderpanel > img { display:block; width:100%; height:100%; object-fit:contain; }
#sliderwrapper .panelcontent, #sliderwrapper .panelcontent-small { position:absolute; inset:0; width:100%; height:100%; }
#sliderwrapper .panelcontent a, #sliderwrapper .panelcontent-small a { display:block; width:100%; height:100%; }
#sliderwrapper .panelcontent img, #sliderwrapper .panelcontent-small img { width:100%; height:100%; }
#slidernav > div { cursor:pointer; }
#slidernav > div:focus-visible { outline:3px solid #666666; outline-offset:3px; }
.intersoft-product-summary > td:first-child img[itemprop=image] { width:520px; max-width:100%; height:auto; aspect-ratio:var(--product-ratio, 520 / 350); object-fit:contain; }
@media screen and (max-width:1230px) {
  #div_strona > div.responsive-page-wrap { width:100% !important; }
  #menu .sf-menu:not(.responsive-open) { display:none; }
  #responsive-category-panel:not(.responsive-open) { display:none; }


  #div_strona #menu_mini_top_pasek_bottom .menu_top_pasek { display:block !important; }
  #div_strona #twojeZakupy { font-size:13px; line-height:24px; min-height:24px; }
  #sliderwrapper { display:block !important; height:auto !important; aspect-ratio:1207 / 381; margin-bottom:58px; overflow:visible !important; }
  #sliderwrapper #slidernav { position:absolute !important; top:100%; bottom:auto !important; right:0 !important; height:58px; padding:6px 8px; gap:6px; align-items:center; }
  #sliderwrapper #slidernav > div { flex:0 1 80px; max-width:112px; height:auto !important; }
  #sliderwrapper #slidernav img { aspect-ratio:112 / 60; object-fit:contain; }
  .responsive-product-list .lista_produkty { width:100% !important; }
  .intersoft-product-summary > td { min-width:0; }
  #div_sklep_koszyk_ajax { width:100% !important; max-width:100%; }
  .intersoft-product-summary #div_sklep_koszyk_ajax div { max-width:100%; }
}
@media screen and (max-width:800px) {
  .intersoft-product-summary, .intersoft-product-summary > td { display:block; width:100% !important; }
  .intersoft-product-summary > td > span { float:none !important; }
  .intersoft-product-summary table { width:100% !important; max-width:100%; table-layout:fixed; }
  .intersoft-product-summary > td > div { padding:12px 0 !important; }
  #div_sklep_koszyk_ajax div[style*="width:"] { width:auto !important; }
  #trescSrodek td > div { max-width:100%; }
  #koszykInfoPokaz { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Reserve intrinsic image sizes and keep inline legacy paragraphs in bounds. */
#menu .sf-menu > li:first-child img { width:150px; height:auto; aspect-ratio:150 / 29; }
#koszykInfoPokaz img { aspect-ratio:240 / 75; object-fit:contain; }
.responsive-logo img { width:115px; height:auto; aspect-ratio:115 / 22; }
@media(max-width:1230px){
 .td_text p { max-width:100%; box-sizing:border-box; }
 .responsive-header, #cookies-info { font-family:Arial,sans-serif !important; }
 #cookies-info { line-height:20px !important; }
}

#sliderwrapper #slidernav .thumb-button { width:112px; height:60px; }
@media(min-width:1231px){
 #koszykInfoPokaz { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:1207px; }
 #koszykInfoPokaz > td { min-width:0; width:auto !important; }
}
@media(max-width:1230px){#sliderwrapper #slidernav .thumb-button { width:100%;height:auto; }}
.td_menu img[src="/gfx/menulewe-rabat50pr_250.jpg"] { width:250px; height:auto; aspect-ratio:251 / 161; }
.td_menu img[src="/gfx/mlewe_asystentai.jpg"] { width:250px; height:100px; }

/* A block row inside a two-column table otherwise receives half its width. */
@media(max-width:800px){
 #trescSrodek:has(.intersoft-product-summary),
 #trescSrodek:has(.intersoft-product-summary)>tbody,
 #trescSrodek:has(.intersoft-product-summary)>tbody>tr,
 #trescSrodek:has(.intersoft-product-summary)>tbody>tr>td { display:block; width:100% !important; max-width:100%; height:auto !important; box-sizing:border-box; }
 .intersoft-product-summary > td { display:block; width:100% !important; }
 .intersoft-product-summary #div_sklep_koszyk_ajax { width:250px !important; max-width:100%; margin-left:auto !important; margin-right:auto !important; }
 .intersoft-product-summary > td:last-child > table > tbody > tr > td > div { max-width:100%; }
}

/* Match the existing ArCADiasoft category control, with space reserved on load. */
@media(max-width:1230px){#responsive-category-toggle { font:600 16px Cambay,Arial,sans-serif; min-height:52px; }}

/* Reviewed INTERsoft header, catalogue, editorial flow and complete footer. */
@media(max-width:1230px){
 .responsive-header { flex-wrap:nowrap; padding:12px 14px; gap:8px; }
 .responsive-header-brand { min-width:0; flex:1 1 auto; }
 .responsive-header .responsive-logo img { width:160px; max-width:100%; height:auto; aspect-ratio:115/22; }
 .responsive-logo { min-width:0; }
 .responsive-header-actions { flex:0 0 auto; display:grid; grid-template-columns:repeat(2,68px); gap:8px; }
 .responsive-header .responsive-cart,.responsive-header button { width:68px; height:42px; min-height:42px; padding:0; border-radius:0; box-sizing:border-box; display:flex; align-items:center; justify-content:center; font:600 14px Arial,sans-serif; }
 #responsive-category-panel .intersoft-category-table,
 #responsive-category-panel .intersoft-category-table > tbody { display:flex; flex-direction:column; width:100% !important; }
 #responsive-category-panel .intersoft-category-table > tbody > tr { display:block; width:100%; }
 #responsive-category-panel .intersoft-category-table > tbody > tr > td { display:block; width:100%; box-sizing:border-box; }
 #responsive-category-panel .intersoft-category-heading { order:0; }
 #responsive-category-panel .intersoft-category-programs { order:1; }
 #responsive-category-panel .intersoft-category-extra { order:2; }
 #responsive-category-panel .intersoft-category-empty { display:none !important; }
 #responsive-category-panel .intersoft-category-programs .menu_lewe_linki { padding:0 0 0 4px; }
 #responsive-category-panel .intersoft-category-programs .menu_lewe_linki > img,
 #responsive-category-panel .intersoft-category-programs .menu_lewe_linki > br { display:none; }
 #responsive-category-panel a.intersoft-category-link { display:block; position:relative; min-height:36px; padding:6px 4px 6px 12px; box-sizing:border-box; font:400 14px/24px Cambay,Arial,sans-serif; white-space:normal; overflow-wrap:normal; color:#252525; }
 #responsive-category-panel a.intersoft-category-link::before { content:''; position:absolute; left:0; top:16px; width:5px; height:5px; background:#da545f; }
 #responsive-category-panel .intersoft-category-extra td > div { margin:14px 0 !important; text-align:center; }
 #responsive-category-panel .intersoft-category-extra img { display:block; max-width:100%; height:auto; margin:12px auto !important; }
 #responsive-category-panel .intersoft-category-heading td > a { box-sizing:border-box; width:100%; min-height:50px; height:auto; padding-right:10px; }
}
@media(max-width:360px){
 .responsive-header .responsive-logo img { width:140px; }
 .responsive-header-actions { grid-template-columns:repeat(2,62px); gap:6px; }
 .responsive-header .responsive-cart,.responsive-header button { width:62px; }
}
@media(max-width:800px){
 .td_text img.intersoft-content-illustration,
 .td_text p > img[align], .td_text ul > img[align], .td_text ol > img[align] {
  float:none !important; display:block; clear:both; max-width:100% !important; height:auto !important;
  margin:16px auto !important; padding:0 !important; box-sizing:border-box;
 }
 .td_text .intersoft-illustration-wrap { float:none !important; display:block; width:auto !important; max-width:100%; margin:16px 0 !important; }
 .td_text ul.wypunktowanie,.td_text ol { padding-left:24px; margin-left:0; margin-right:0; box-sizing:border-box; }
 .td_text ul.wypunktowanie > li { clear:both; line-height:1.65; margin:0 0 10px; }
}
@media screen and (max-width:1230px){
#intersoft-footer { width:100%; table-layout:fixed; margin:24px auto 0 !important; padding:24px !important; border-top:1px solid #d6d6d6; background:#f5f5f5; color:#333333; box-sizing:border-box; }
#intersoft-footer > tbody > tr > td { height:auto !important; }
#intersoft-footer > tbody > tr:first-child > td > div { padding:0 !important; margin:0 !important; }
#intersoft-footer #stopka_linki > table,#intersoft-footer #stopka_linki > table > tbody { display:block; width:100%; }
#intersoft-footer #stopka_linki > table > tbody > tr { display:grid; grid-template-columns:150px minmax(0,1fr) minmax(0,1fr); gap:28px; width:100%; }
#intersoft-footer #stopka_linki > table > tbody > tr > td { display:block; width:auto !important; min-width:0; padding:0; }
#intersoft-footer #stopka_linki .blok { border:0; padding:0 !important; margin:0; }
#intersoft-footer #stopka_linki .blok > div { padding:0 !important; margin:0 !important; }
#intersoft-footer #stopka_linki .tytul { font:700 14px/1.5 Arial,sans-serif; margin-bottom:10px !important; letter-spacing:.02em; }
#intersoft-footer #stopka_linki .linki,#intersoft-footer #stopka_linki .linki_stopka { font:400 14px/1.65 Arial,sans-serif; overflow:visible; }
#intersoft-footer #stopka_linki .linki_stopka a,#intersoft-footer #stopka_linki .linki a { font:400 14px/1.65 Arial,sans-serif; padding:5px 0; display:block; color:#333333; text-decoration:none; }
#intersoft-footer #stopka_linki .linki_stopka > br,#intersoft-footer #stopka_linki .linki_stopka > img,#intersoft-footer #stopka_linki a > img[src*="arrow_2"] { display:none; }
#intersoft-footer #stopka_linki .linki ul { padding:0; margin:0; }
#intersoft-footer #stopka_linki .linki ul li { height:auto; line-height:1.65; overflow:visible; }
#intersoft-footer .intersoft-footer-partners > div { display:flex; flex-direction:column; gap:16px; }
#intersoft-footer .intersoft-footer-partners > div > div { margin:0 !important; padding:0 !important; }
#intersoft-footer .intersoft-footer-partners > div > div:not(:has(a)) { display:none; }
#intersoft-footer .intersoft-footer-partners a { display:block; }
#intersoft-footer .intersoft-footer-partners img { display:block; max-width:135px; width:100%; height:auto; margin:0; }
#intersoft-footer .tr_ikony_stopka > td { display:grid; grid-template-columns:200px minmax(0,1fr) 160px; gap:24px; align-items:center; padding:24px 0 16px; border-top:1px solid #d6d6d6; }
#intersoft-footer .tr_ikony_stopka { background:none; }
#intersoft-footer .tr_ikony_stopka > td > div { width:auto !important; float:none !important; height:auto !important; margin:0 !important; padding:0 !important; }
#intersoft-footer .intersoft-footer-brand img { display:block; width:180px; max-width:100%; height:auto; margin:0 !important; }
#intersoft-footer .intersoft-footer-nav .linia_1,#intersoft-footer .intersoft-footer-nav .linia_2,#intersoft-footer .intersoft-footer-legal .linia_2 { font-size:0; line-height:1; display:flex; flex-wrap:wrap; gap:4px 16px; }
#intersoft-footer .intersoft-footer-nav a,#intersoft-footer .intersoft-footer-legal a { font:400 14px/1.5 Arial,sans-serif; padding:5px 0; color:#333333; }
#intersoft-footer .intersoft-footer-social { text-align:right; }
#intersoft-footer .intersoft-footer-legal > td { padding:16px 0 0; border-top:1px solid #d6d6d6; }
#intersoft-footer .intersoft-footer-legal > td > div { width:auto !important; float:none !important; padding:0 !important; margin:0 0 8px !important; font:400 12px/1.6 Arial,sans-serif; }
#intersoft-footer .intersoft-footer-legal > td > div:last-child { text-align:left !important; }
}
@media(max-width:1230px){
 @media screen and (max-width:1230px){
#intersoft-footer,#intersoft-footer > tbody,#intersoft-footer > tbody > tr,#intersoft-footer > tbody > tr > td { display:block; width:100% !important; box-sizing:border-box; }
 #intersoft-footer { padding:24px 18px !important; }
 #intersoft-footer #stopka_linki > table > tbody > tr { grid-template-columns:120px minmax(0,1fr) minmax(0,1fr); gap:24px; }
 #intersoft-footer .tr_ikony_stopka { margin-top:24px; }
 #intersoft-footer .tr_ikony_stopka > td { display:grid; grid-template-columns:160px minmax(0,1fr); }
 #intersoft-footer .intersoft-footer-social { grid-column:2; text-align:left !important; }
}
@media(max-width:600px){
 #intersoft-footer { padding:24px 14px !important; }
 #intersoft-footer #stopka_linki > table > tbody > tr { grid-template-columns:minmax(0,1fr); gap:24px; }
 #intersoft-footer .intersoft-footer-partners > div { flex-direction:row; align-items:center; gap:20px; flex-wrap:wrap; }
 #intersoft-footer .intersoft-footer-partners > div > div { flex:1 1 80px; max-width:115px; }
 #intersoft-footer .intersoft-footer-partners img { max-width:115px; }
 #intersoft-footer #stopka_linki .intersoft-footer-categories div.linki_stopka { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; }
 #intersoft-footer #stopka_linki .intersoft-footer-categories .linki_stopka a { padding:6px 0; }
 #intersoft-footer .tr_ikony_stopka > td { grid-template-columns:minmax(0,1fr); gap:16px; }
 #intersoft-footer .intersoft-footer-social { grid-column:auto; }
 #intersoft-footer .intersoft-footer-brand img { width:160px; }
}

/* Review fixes: table colspan must not halve the footer's lower sections. */
#intersoft-footer,#intersoft-footer > tbody,#intersoft-footer > tbody > tr,#intersoft-footer > tbody > tr > td { display:block; width:100% !important; box-sizing:border-box; }
#intersoft-footer .tr_ikony_stopka > td { display:grid; }
}
@media(max-width:1230px){
 #responsive-category-panel .intersoft-category-heading > td { height:auto !important; }
 .responsive-header .responsive-logo img { aspect-ratio:6/1; }
}

@media(max-width:800px){
 .td_text p,.td_text li { line-height:1.65; }
 .td_text ul:not([class]),.td_text ol { padding-left:24px; margin-left:0; margin-right:0; }
 .td_text ul:not([class]) > li { margin-bottom:10px; }
}
@media screen and (max-width:1230px){
#intersoft-footer .intersoft-footer-social > :not(.intersoft-social-link) { display:none; }
#intersoft-footer .intersoft-footer-social { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
#intersoft-footer a.intersoft-social-link { display:inline-flex; align-items:center; justify-content:center; padding:8px 12px; border:1px solid #cccccc; font:600 13px/1.4 Arial,sans-serif; color:#333333; background:#fff; text-decoration:none; }

}
/* One-pixel legacy separators are rules, not square content illustrations. */
.td_text img[src$="/tlo_box.jpg"],.td_text img[height="1"] { height:1px !important; min-height:0 !important; aspect-ratio:auto !important; object-fit:fill; }
@media(max-width:1230px){
 .td_text a.btn.btn-info { display:inline-block; width:auto; max-width:100%; height:auto !important; min-height:44px; box-sizing:border-box; padding:12px 16px; white-space:normal; font-size:16px; line-height:1.45; text-align:center; vertical-align:middle; }
}

@media(max-width:600px){
 .lista_produkty .lista_cena_rabat { display:flex; justify-content:space-between; align-items:flex-start; width:100%; gap:12px; margin:8px 0 0; }
 .lista_produkty .lista_cena_brutto { flex:1 1 auto; width:auto; text-align:left; }
 .lista_produkty .lista_cena_netto { width:auto; text-align:left; }
 .lista_produkty .lista_rabat { flex:0 0 44px; width:44px; margin:0; }
 .lista_produkty .lista_obrazek_nowosc { clear:both; display:flex; justify-content:flex-start; padding:8px 0; }
 .lista_produkty .lista_obrazek_nowosc img { float:none; margin:0; }
 .td_text tr:has(.lista_produkty) + tr > td > div[style*="-20px"] { margin:0 0 24px !important; text-align:left; font-size:13px; line-height:1.5; }
}

/* Shop module accordions use the same controls and spacing as ArCADiasoft. */
.intersoft-group-controls { display:none; }
@media(max-width:1230px){
 #responsive-category-panel .intersoft-program-group > .intersoft-category-direct { display:none !important; }
 .intersoft-group-controls { display:block; }
 .intersoft-group-toggle { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:48px; padding:12px 14px; border:1px solid #d6d6d6; background:#f2f2f2; color:#333; text-align:left; font:600 16px/1.4 Cambay,Arial,sans-serif; cursor:pointer; border-radius:0; }
 .intersoft-group-toggle::after { content:'\2304'; flex-shrink:0; }
 .intersoft-group-toggle[aria-expanded=true] { border-color:#777777; color:#333333; }
 .intersoft-group-toggle[aria-expanded=true]::after { content:'\2303'; }
 .intersoft-program-group { margin:0 0 6px; }
 #responsive-category-panel .intersoft-group-panel:not(.responsive-open),.intersoft-group-panel:not(.responsive-open) { display:none; }
 #responsive-category-panel .intersoft-group-panel.responsive-open,.intersoft-group-panel.responsive-open { display:block; }
 #responsive-category-panel .intersoft-group-panel a,.intersoft-group-panel a { display:block; width:100%; min-height:48px; padding:12px 14px; border-bottom:1px solid #e7e7e7; font:16px/1.5 Cambay,Arial,sans-serif; color:#333333; white-space:normal; overflow-wrap:break-word; }
 .intersoft-group-panel > a:first-child { background:#eeeeee; border-left:4px solid #777777; padding-left:10px !important; font-weight:700 !important; }
 .intersoft-group-status { margin:0; padding:12px 14px; font:14px/1.5 Arial,sans-serif; color:#555; }
 .intersoft-group-status:empty { display:none; }
 .intersoft-group-toggle:focus-visible { outline:2px solid #777777; outline-offset:2px; }
 .intersoft-current-modules { margin:10px 14px 4px; }
}

.intersoft-program-group { display:contents; }
@media(max-width:1230px){.intersoft-program-group { display:block; }}

@media(max-width:1230px){
 #responsive-category-panel .intersoft-group-controls,#responsive-category-panel .intersoft-group-panel,#responsive-category-panel .intersoft-group-items { width:100%; margin:0 !important; padding:0 !important; box-sizing:border-box; }
}

@media(max-width:1230px){
 #responsive-menu-toggle[aria-expanded=true],#responsive-category-toggle[aria-expanded=true],#arcadia-module-toggle[aria-expanded=true],.intersoft-group-toggle[aria-expanded=true] { color:#333; background:#e8e8e8; border-color:#999; }
 .responsive-header button:focus-visible,.responsive-header a:focus-visible,#responsive-category-toggle:focus-visible { outline:2px solid #666; outline-offset:2px; }
}

/* Fixed-position chevrons: opening a panel changes only their rotation. */
@media(max-width:1230px){
 #responsive-category-toggle,#arcadia-module-toggle,.intersoft-group-toggle,#menu .responsive-nav-toggle { position:relative; padding-right:42px !important; }
 #responsive-category-toggle::after,#arcadia-module-toggle::after,.intersoft-group-toggle::after,#menu .responsive-nav-toggle::after {
  content:'' !important; display:block; position:absolute; right:18px; top:50%; left:auto; bottom:auto;
  width:16px; height:16px; min-width:0; min-height:0; margin:0 !important; padding:0;
  border:0; background:center/16px 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6L8 10L12 6' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  box-sizing:border-box; transform:translateY(-50%) rotate(0deg); transform-origin:50% 50%; transition:none; pointer-events:none;
 }
 #responsive-category-toggle[aria-expanded=true]::after,#arcadia-module-toggle[aria-expanded=true]::after,.intersoft-group-toggle[aria-expanded=true]::after,#menu .responsive-nav-toggle[aria-expanded=true]::after { transform:translateY(-50%) rotate(180deg); }
}

@media(max-width:1230px){
 #responsive-category-panel .intersoft-group-panel a { margin:0 !important; }
}
@media(min-width:601px) and (max-width:1230px){.intersoft-current-modules { margin:12px 18px 4px; }}

/* Align the five mobile thumbnails with the promotional tiles below. */
@media screen and (max-width:600px){
 #sliderwrapper { margin-bottom:max(58px, calc(10.714286vw + 6.428572px)); }
 #sliderwrapper #slidernav { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:6px; padding:6px 14px; height:max(58px, calc(10.714286vw + 6.428572px)); }
 #sliderwrapper #slidernav > div { width:auto; max-width:none; min-width:0; border:0; }
 #sliderwrapper #slidernav > div.selected { outline:2px solid #777; outline-offset:-2px; }
}

/* Mobile footer follows ArCADiasoft: partner stack, navigation, legal. */
@media screen and (max-width:1230px){
 #intersoft-footer { padding:12px 16px 16px !important; background:#f2f2f2; }
 #intersoft-footer #stopka_linki > table > tbody > tr { grid-template-columns:100px; justify-content:start; align-items:start; gap:0; }
 #intersoft-footer .intersoft-footer-partners > div > div:has(a[href*="arcadiapress.pl"]),
 #intersoft-footer .intersoft-footer-brand,
 #intersoft-footer .intersoft-footer-social { display:none !important; }
 #intersoft-footer #stopka_linki .intersoft-footer-partners { position:relative; min-width:0; }
 #intersoft-footer .intersoft-footer-partners > div { position:static; display:flex; flex-direction:column; flex-wrap:nowrap; gap:2px; align-items:start; }
 #intersoft-footer .intersoft-footer-partners > div > div { flex:none; width:100%; max-width:none; min-height:0; }
 #intersoft-footer .intersoft-footer-partners a { width:100%; height:auto; }
 #intersoft-footer .intersoft-footer-partners img { width:100%; height:auto; max-width:100%; object-fit:contain; }
 #intersoft-footer .intersoft-footer-partners a[href*="intellicad.org"] img { object-position:left bottom; }
 #intersoft-footer .tr_ikony_stopka { margin-top:0; }
 #intersoft-footer .tr_ikony_stopka > td { display:block; border:0; padding:8px 0 4px; }
 #intersoft-footer .intersoft-footer-nav .linia_1,
 #intersoft-footer .intersoft-footer-nav .linia_2,
 #intersoft-footer .intersoft-footer-legal .linia_2 { display:block; font:12px/1.5 Cambay,Arial,sans-serif; }
 #intersoft-footer .intersoft-footer-nav .linia_1 { font-size:16px; }
 #intersoft-footer .intersoft-footer-nav a,
 #intersoft-footer .intersoft-footer-legal a { display:inline-block; padding:3px 0; font:inherit; line-height:1.5; color:#222; }
 #intersoft-footer .intersoft-footer-legal > td { padding:8px 0 0; }
 #intersoft-footer .intersoft-footer-legal > td > div { margin:0 0 4px !important; font:12px/1.5 Cambay,Arial,sans-serif; }
}

/* Readable mobile footer lists, collapsed until requested. */
#intersoft-footer .intersoft-footer-toggle { display:none; }
@media screen and (max-width:1230px){
 #intersoft-footer #stopka_linki > table > tbody > tr { grid-template-columns:minmax(0,1fr); gap:10px; }
 #intersoft-footer #stopka_linki .intersoft-footer-partners { width:100px !important; margin-bottom:6px; }
 #intersoft-footer #stopka_linki .intersoft-footer-categories,
 #intersoft-footer #stopka_linki .intersoft-footer-recommended { display:block; }
 #intersoft-footer .intersoft-footer-heading-label { display:none; }
 #intersoft-footer #stopka_linki .tytul { margin:0 !important; }
 #intersoft-footer .intersoft-footer-toggle { display:block; position:relative; width:100%; box-sizing:border-box; min-height:50px; border:1px solid #ccc; border-radius:0; margin:0; padding:12px 44px 12px 14px; text-align:left; font:600 15px/1.5 Arial,sans-serif; color:#333; background:#eee; cursor:pointer; }
 #intersoft-footer .intersoft-footer-toggle[aria-expanded=true] { background:#e8e8e8; }
 #intersoft-footer .intersoft-footer-toggle::after { content:''; position:absolute; right:18px; top:50%; width:16px; height:16px; background:center/16px 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6L8 10L12 6' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); transform:translateY(-50%); transform-origin:center; pointer-events:none; }
 #intersoft-footer .intersoft-footer-toggle[aria-expanded=true]::after { transform:translateY(-50%) rotate(180deg); }
 #intersoft-footer .intersoft-footer-toggle:focus-visible { outline:2px solid #666 !important; outline-offset:2px; }
 #intersoft-footer #stopka_linki .blok > .intersoft-footer-panel { padding:0 14px !important; border:1px solid #ccc; border-top:0; background:#fff; }
 #intersoft-footer .intersoft-footer-panel[aria-hidden=true] { display:none; }
 #intersoft-footer #stopka_linki .intersoft-footer-categories div.linki_stopka,
 #intersoft-footer #stopka_linki .intersoft-footer-panel .linki_stopka { display:block; }
 #intersoft-footer #stopka_linki .intersoft-footer-panel a { display:flex; align-items:center; box-sizing:border-box; min-height:44px; margin:0; padding:10px 0; font:14px/1.5 Arial,sans-serif; overflow-wrap:anywhere; border-bottom:1px solid #eee; }
 #intersoft-footer #stopka_linki .intersoft-footer-panel a:last-of-type { border-bottom:0; }
 #intersoft-footer .tr_ikony_stopka { margin-top:10px; }
}

/* Lighter mobile footer, using the site's existing Cambay typeface. */
@media screen and (max-width:1230px){
 #intersoft-footer #stopka_linki > table > tbody > tr { row-gap:4px; }
 #intersoft-footer #stopka_linki .intersoft-footer-partners { margin-bottom:12px; }
 #intersoft-footer .intersoft-footer-toggle { padding:12px 44px 10px 0; border:0; border-bottom:1px solid #d5d5d5; background:transparent; font:700 16px/1.5 Cambay,Arial,sans-serif; letter-spacing:0; }
 #intersoft-footer .intersoft-footer-toggle[aria-expanded=true] { background:transparent; }
 #intersoft-footer #stopka_linki .blok > .intersoft-footer-panel { padding:0 !important; border:0; background:transparent; }
 #intersoft-footer #stopka_linki .intersoft-footer-panel a { padding:10px 0 8px; font:400 15px/1.6 Cambay,Arial,sans-serif; color:#333; border-color:#e0e0e0; }
}

@media screen and (max-width:1230px){
 #intersoft-footer .intersoft-footer-product-description { display:none !important; }
 #intersoft-footer .intersoft-footer-product-card { height:auto !important; margin:0 !important; overflow:visible !important; }
 #intersoft-footer #stopka_linki .intersoft-footer-product-card > a { display:block; height:auto !important; padding:12px 0; border-bottom:1px solid #ddd; }
 #intersoft-footer #stopka_linki .intersoft-footer-product-card:last-child > a { border-bottom:0; }
 #intersoft-footer .intersoft-footer-product-content { display:grid; grid-template-columns:88px minmax(0,1fr); align-items:center; gap:12px; font:400 15px/1.5 Cambay,Arial,sans-serif; }
 #intersoft-footer .intersoft-footer-product-content > img { display:block; float:none !important; width:88px !important; height:58px !important; margin:0 !important; object-fit:contain; }
 #intersoft-footer .intersoft-footer-product-content > h4 { font:700 15px/1.5 Cambay,Arial,sans-serif !important; margin:0 !important; padding:0; color:#333; }
}

/* Keep mobile social links on the copyright line, flush to the right. */
#intersoft-footer .intersoft-footer-copyright-social { display:none; }
@media screen and (max-width:1230px){
 #intersoft-footer .intersoft-footer-copyright { display:flex; align-items:center; justify-content:space-between; gap:8px; }
 #intersoft-footer .intersoft-footer-copyright-label { white-space:nowrap; }
 #intersoft-footer .intersoft-footer-copyright-social { display:flex; align-items:center; flex:none; gap:6px; margin-left:auto; }
 #intersoft-footer .intersoft-footer-copyright-social a.intersoft-social-link { display:inline-flex; min-height:32px; padding:4px 4px; margin:0; font:400 12px/1.5 Cambay,Arial,sans-serif; white-space:nowrap; }
}

/* Use the space beside the partner logos for the four audience links. */
#intersoft-footer #stopka_linki .intersoft-footer-audience { display:none; }
@media screen and (max-width:1230px){
 #intersoft-footer #stopka_linki > table > tbody > tr { grid-template-columns:100px minmax(0,1fr); column-gap:24px; }
 #intersoft-footer #stopka_linki .intersoft-footer-partners { grid-column:1; grid-row:1; align-self:center; margin-bottom:0; }
 #intersoft-footer #stopka_linki .intersoft-footer-audience { display:block; grid-column:2; grid-row:1; align-self:stretch; padding:0; }
 #intersoft-footer .intersoft-footer-audience nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:repeat(2,minmax(0,1fr)); height:100%; column-gap:0; row-gap:2px; }
 #intersoft-footer .intersoft-footer-audience a { position:relative; display:flex; align-items:center; justify-content:flex-start; min-height:0; padding:0 7px; font:400 14px/1.5 Cambay,Arial,sans-serif; color:#222; text-decoration:none; text-align:left; }
 #intersoft-footer .intersoft-footer-audience a::before { content:""; position:absolute; left:0; top:50%; width:1px; height:16px; background:#777; transform:translateY(-50%); }
 #intersoft-footer .intersoft-footer-audience a:hover { text-decoration:underline; }
 #intersoft-footer #stopka_linki .intersoft-footer-categories { grid-column:1 / -1; grid-row:2; margin-top:12px; }
 #intersoft-footer #stopka_linki .intersoft-footer-recommended { grid-column:1 / -1; grid-row:3; }
 #intersoft-footer .intersoft-footer-nav .linia_1 { display:none; }
}

@media screen and (max-width:600px){
 #intersoft-footer #stopka_linki > table > tbody > tr { grid-template-columns:76px minmax(0,1fr); column-gap:12px; }
 #intersoft-footer #stopka_linki .intersoft-footer-partners { width:76px !important; }
}
@media screen and (max-width:360px){
 #intersoft-footer #stopka_linki > table > tbody > tr { grid-template-columns:64px minmax(0,1fr); column-gap:8px; }
 #intersoft-footer #stopka_linki .intersoft-footer-partners { width:64px !important; }
 #intersoft-footer .intersoft-footer-audience nav { grid-template-columns:1.05fr .95fr; }
 #intersoft-footer .intersoft-footer-audience a { font-size:13px; padding-left:4px; padding-right:4px; }
}

@media screen and (max-width:1230px){
 #intersoft-footer .intersoft-footer-partners > div { margin:0 !important; }
}

/* Keep the left-aligned link pairs together at the footer's right edge. */
@media screen and (max-width:1230px){
 #intersoft-footer .intersoft-footer-audience nav { grid-template-columns:repeat(2,max-content); justify-content:end; column-gap:14px; }
 #intersoft-footer .intersoft-footer-audience a { padding-right:0; white-space:nowrap; }
}
@media screen and (max-width:360px){
 #intersoft-footer .intersoft-footer-audience nav { column-gap:8px; }
}

/* Compact, clearly separated catalogue offers on phones. */
@media screen and (max-width:600px){
 .responsive-product-list, .responsive-product-list > tbody, .responsive-product-list > tbody > tr { display:block; width:100% !important; }
 .responsive-product-list > tbody > tr > td { display:block; width:100% !important; box-sizing:border-box; }
 .responsive-product-list .lista_produkty { display:grid; grid-template-columns:96px minmax(0,1fr); align-items:start; gap:12px; padding:20px 0 10px !important; }
 .responsive-product-list .lista_produkty::after { display:none; }
 .responsive-product-list .lista_miniaturki { grid-column:1; grid-row:1; float:none; width:96px; min-height:0; height:auto; padding:0; align-self:center; }
 .responsive-product-list .lista_miniaturki img { display:block; width:96px; max-width:100%; height:auto; margin:0 !important; object-fit:contain; }
 .responsive-product-list .lista_opis_programu,
 .responsive-product-list .lista_opis_programu > a.sklep_tytul { display:contents; }
 .responsive-product-list .lista_opis_programu h4 { grid-column:2; grid-row:1; align-self:center; padding:0; margin:0; font:700 17px/1.35 Cambay,Arial,sans-serif; color:#333; }
 .responsive-product-list .opis_mini { grid-column:1 / -1; grid-row:2; font:400 14px/1.55 Cambay,Arial,sans-serif; color:#444; }
 .responsive-product-list .lista_produkty .lista_cena_rabat { grid-column:1 / -1; grid-row:3; width:100%; margin:0; padding-top:10px; border-top:1px solid #eee; align-items:center; }
 .responsive-product-list .lista_cena_netto { font:700 19px/1.4 Cambay,Arial,sans-serif; }
 .responsive-product-list .lista_cena_brutto { font:400 14px/1.6 Cambay,Arial,sans-serif; }
 .responsive-product-list .lista_rabat img { display:block; margin:0 !important; }
 .responsive-product-list .lista_produkty .lista_obrazek_nowosc { grid-column:1 / -1; grid-row:4; padding:0; min-height:0; }
 .responsive-product-list .lista_obrazek_nowosc:empty { display:none; }
 .responsive-product-list .responsive-product-row { border-bottom:1px solid #d6d6d6; margin-bottom:12px; }
 .responsive-product-list .responsive-product-row:has(+ tr > td > div[style*="-20px"]) { border-bottom:0; margin-bottom:0; }
 .responsive-product-list .responsive-product-row + tr:has(> td > div[style*="-20px"]) { margin:0 0 12px; padding:0 0 16px; border-bottom:1px solid #d6d6d6; }
 .td_text .responsive-product-list .responsive-product-row + tr > td > div[style*="-20px"] { margin:0 !important; font:400 13px/1.5 Cambay,Arial,sans-serif; text-align:left; }
}
@media screen and (max-width:360px){
 .responsive-product-list .lista_produkty { grid-template-columns:80px minmax(0,1fr); gap:10px; }
 .responsive-product-list .lista_miniaturki,.responsive-product-list .lista_miniaturki img { width:80px; }
 .responsive-product-list .lista_opis_programu h4 { font-size:16px; }
}

@media screen and (max-width:600px){
 .responsive-product-list .lista_opis_programu > a:focus-visible h4 { outline:2px solid #666; outline-offset:3px; }
}

/* Large product previews, with title and release/promotion strip above. */
@media screen and (max-width:600px){
 .responsive-product-list .lista_produkty { grid-template-columns:minmax(0,1fr) auto; }
 .responsive-product-list .lista_opis_programu h4 { grid-column:1; grid-row:1; align-self:start; }
 .responsive-product-list .lista_produkty .lista_obrazek_nowosc { grid-column:2; grid-row:1; align-self:start; justify-self:end; width:150px; }
 .responsive-product-list .lista_miniaturki { grid-column:1 / -1; grid-row:2; width:100%; justify-self:center; }
 .responsive-product-list .lista_miniaturki img { width:280px; max-width:100%; height:auto; margin:0 auto !important; }
 .responsive-product-list .opis_mini { grid-row:3; }
 .responsive-product-list .lista_produkty .lista_cena_rabat { grid-row:4; display:flex; justify-content:flex-end; gap:14px; }
 .responsive-product-list .lista_produkty .lista_cena_brutto { flex:0 0 auto; width:auto; text-align:right; }
 .responsive-product-list .lista_produkty .lista_cena_netto { text-align:right; }
 .responsive-product-list .lista_rabat { order:-1; }
 .responsive-product-list .lista_obrazek_nowosc:has(img[src$="/brak.jpg"]) { display:none; }
 .responsive-product-list .lista_produkty:has(.lista_obrazek_nowosc img[src$="/brak.jpg"]) h4 { grid-column:1 / -1; }
}
@media screen and (max-width:360px){
 .responsive-product-list .lista_produkty .lista_obrazek_nowosc { width:128px; }
 .responsive-product-list .lista_obrazek_nowosc img { width:128px; height:auto; }
}

/* Keep the preview and description beside each other below the heading. */
@media screen and (max-width:600px){
 .responsive-product-list .lista_produkty { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .responsive-product-list .lista_miniaturki { grid-column:1; grid-row:2; align-self:start; justify-self:start; }
 .responsive-product-list .lista_miniaturki img { margin:0 !important; }
 .responsive-product-list .opis_mini { grid-column:2; grid-row:2; }
 .responsive-product-list .lista_produkty .lista_cena_rabat { grid-row:3; }
 .responsive-product-list .lista_produkty .lista_cena_netto { min-width:max-content; }
}

/* Mobile category heading and discount hierarchy. */
@media screen and (max-width:600px){
 .responsive-product-list td:has(> .lista_tytul_grupy) { text-align:left; height:auto; background:none; padding:16px 0 8px; }
 .responsive-product-list .lista_tytul_grupy { display:block; float:none; width:100%; box-sizing:border-box; margin:0; padding:10px 12px; border-left:3px solid #f58220; background:#f3f3f3; color:#222; text-align:left; font:700 22px/1.35 Cambay,Arial,sans-serif; text-decoration:none; }
 .responsive-product-list .lista_produkty .lista_cena_rabat { flex-direction:column; align-items:flex-end; gap:4px; }
 .responsive-product-list .lista_produkty .lista_rabat { flex:0 0 auto; }
 .responsive-product-list .lista_rabat:not(:has(img)) { display:none; }
}
@media screen and (max-width:600px), screen and (hover:none) and (pointer:coarse){
 #popupContainer { display:none !important; }
 .lista_miniaturki img { cursor:default !important; }
}

@media screen and (max-width:600px){
 .responsive-product-list .lista_obrazek_nowosc img { display:block; margin:0; }
}

/* Mobile offers: preview and prices together, full database description below. */
@media screen and (max-width:600px){
 .responsive-product-list .lista_produkty .lista_cena_rabat { grid-column:2; grid-row:2; align-self:center; padding:0; border:0; min-width:0; gap:4px; }
 .responsive-product-list .lista_produkty .lista_cena_netto { min-width:0; font-size:18px; white-space:nowrap; }
 .responsive-product-list .lista_produkty .lista_cena_netto::before { font-size:12px; }
 .responsive-product-list .lista_produkty .lista_cena_brutto { font-size:13px; white-space:nowrap; }
 .responsive-product-list .opis_mini { grid-column:1 / -1; grid-row:3; display:block; max-height:none; overflow:visible; -webkit-line-clamp:unset; }
}
@media screen and (max-width:360px){
 .responsive-product-list .lista_produkty .lista_cena_netto { font-size:16px; }
 .responsive-product-list .lista_produkty .lista_cena_brutto { font-size:12px; }
}

/* Title spans the offer; release strip and prices align with the preview edges. */
@media screen and (max-width:600px){
 .responsive-product-list .lista_produkty { grid-template-columns:minmax(0,1fr) 150px; }
 .responsive-product-list .lista_opis_programu h4 { grid-column:1 / -1; grid-row:1; }
 .responsive-product-list .lista_produkty > div:has(> .lista_obrazek_nowosc) { display:contents; }
 .responsive-product-list .lista_produkty .lista_obrazek_nowosc { grid-column:2; grid-row:2; align-self:start; }
 .responsive-product-list .lista_obrazek_nowosc img { margin:0 !important; }
 .responsive-product-list .lista_produkty .lista_cena_rabat { align-self:end; gap:3px; }
 .responsive-product-list .lista_produkty .lista_cena_netto { line-height:1.25; margin:0; }
 .responsive-product-list .lista_produkty .lista_cena_brutto { line-height:1.3; padding:0; }
 .responsive-product-list .lista_produkty .lista_cena_brutto::after { font-size:inherit; line-height:inherit; }
 .responsive-product-list .lista_produkty .lista_rabat { width:auto; }
 .responsive-product-list .lista_rabat img { width:auto; height:26px; }
}
@media screen and (max-width:380px){
 .responsive-product-list .lista_produkty { grid-template-columns:minmax(0,1fr) 128px; }
 .responsive-product-list .lista_produkty .lista_obrazek_nowosc { width:128px; }
 .responsive-product-list .lista_obrazek_nowosc img { width:128px; height:auto; }
 .responsive-product-list .lista_produkty .lista_cena_netto { font-size:16px; }
 .responsive-product-list .lista_produkty .lista_cena_brutto { font-size:12px; }
 .responsive-product-list .lista_produkty .lista_cena_rabat { gap:2px; }
 .responsive-product-list .lista_rabat img { height:19px; }
}

/* Mobile product page heading, platform icons and purchase alignment. */
@media screen and (max-width:600px){
 #trescSrodek .intersoft-product-heading { display:flow-root !important; height:auto !important; padding:8px 0; }
 #trescSrodek .intersoft-product-heading h1 { float:none !important; width:auto; margin:0 !important; font:700 16px/1.35 Cambay,Arial,sans-serif !important; text-align:left; overflow-wrap:normal; }
 #trescSrodek .intersoft-product-status { float:right !important; margin:0 0 0 10px; }
 #trescSrodek .intersoft-product-status img { display:block; width:112px; height:auto; margin:0; }
 .intersoft-product-summary img[src$="/32bit50x40.png"],
 .intersoft-product-summary img[src$="/64bit50x40.png"],
 .intersoft-product-summary .intersoft-only-platform-icons { display:none !important; }
 .intersoft-product-summary #div_sklep_koszyk_ajax { margin-left:auto !important; margin-right:0 !important; }
}
@media screen and (max-width:360px){
 #trescSrodek .intersoft-product-heading h1 { font-size:14px !important; }
 #trescSrodek .intersoft-product-status img { width:100px; }
}

@media screen and (max-width:409px){
 #trescSrodek .intersoft-product-heading-long h1 { font-size:14px !important; }
 #trescSrodek .intersoft-product-heading-long .intersoft-product-status img { width:100px; }
}

/* Keep the long library heading on two lines on narrow phones. */
@media screen and (max-width:360px){
 #trescSrodek .intersoft-product-heading-long h1 { font-size:12px !important; }
 #trescSrodek .intersoft-product-heading-long .intersoft-product-status { margin-left:8px; }
 #trescSrodek .intersoft-product-heading-long .intersoft-product-status img { width:80px; }
}

.intersoft-related-description { display:inline; }

/* Related offers share the mobile catalogue order: title, image/price, description. */
@media screen and (max-width:600px){
 #trescSrodek .intersoft-related-product { display:grid; grid-template-columns:minmax(0,1fr) 150px; gap:10px 12px; padding:20px 0 !important; border-bottom:1px solid #ddd; }
 #trescSrodek .intersoft-related-image,
 #trescSrodek .intersoft-related-product > a,
 #trescSrodek .intersoft-related-copy,
 #trescSrodek .intersoft-related-copy h2 { display:contents; }
 #trescSrodek .intersoft-related-image > a { grid-column:1; grid-row:2; align-self:start; }
 #trescSrodek .intersoft-related-image img { display:block; float:none !important; width:100%; height:auto; padding:0 !important; margin:0 !important; }
 #trescSrodek .intersoft-related-title { grid-column:1 / -1; grid-row:1; font:700 17px/1.35 Cambay,Arial,sans-serif; color:#333; }
 #trescSrodek .intersoft-related-status { grid-column:2; grid-row:2; align-self:start; justify-self:end; float:none; width:auto; max-width:100%; height:26px; margin:0 !important; }
 #trescSrodek .intersoft-related-status[src$='_brak.png'],
 #trescSrodek .intersoft-related-status[src$='/rbrak.png'],
 #trescSrodek .intersoft-related-status[src$='/rbrak.jpg'] { display:none; }
 #trescSrodek .intersoft-related-price { grid-column:2; grid-row:2; align-self:end; justify-self:end; float:none !important; margin:34px 0 0 !important; text-align:right; font:700 18px/1.35 Cambay,Arial,sans-serif !important; white-space:nowrap; }
 #trescSrodek .intersoft-related-price > span { display:block; font:400 12px/1.5 Cambay,Arial,sans-serif !important; }
 #trescSrodek .intersoft-related-description { display:block; grid-column:1 / -1; grid-row:3; font:400 14px/1.55 Cambay,Arial,sans-serif; color:#444; }
 #trescSrodek .intersoft-related-copy > br { display:none; }
}
@media screen and (max-width:380px){
 #trescSrodek .intersoft-related-product { grid-template-columns:minmax(0,1fr) 128px; gap:10px; }
 #trescSrodek .intersoft-related-price { font-size:16px !important; }
 #trescSrodek .intersoft-related-status { height:19px; }
}

/* Compact product compatibility and lowest-price note on phones. */
@media screen and (max-width:600px){
 .intersoft-product-summary span:has(> a[href="/cad/index.php?a=autocad"]) { display:none !important; }
 .intersoft-product-summary .intersoft-lowest-price-note { font-size:min(12px, calc((100vw - 36px) / 33)) !important; line-height:1.4; white-space:nowrap; }
}

/* Even phone spacing from category controls through the product heading. */
@media screen and (max-width:600px){
 .td_text .menu_mini_ukrywaj_druk,
 .td_text tr:has(> .menu_mini_ukrywaj_druk) { display:none !important; }
 .tresc_tr:has(#InfoBoxPromo) #responsive-category-toggle { margin-bottom:0; }
 #div_strona .td_text:has(#InfoBoxPromo) { margin-top:0 !important; padding-top:10px !important; }
 #InfoBoxPromo { margin:0 0 10px !important; }
 #InfoBoxPromo > div { margin:0 !important; }
 #trescSrodek .intersoft-product-heading { padding:0 0 10px; }
}

/* Separate the product from the promo and bring utility icons closer to its image. */
@media screen and (max-width:600px){
 .td_text:has(.intersoft-product-summary) #InfoBoxPromo { margin-bottom:24px !important; }
 .intersoft-product-summary > td:first-child > span:has(> img[itemprop=image]),
 .intersoft-product-summary > td:first-child img[itemprop=image] { display:block; }
 .intersoft-product-summary > td:first-child > div:not(:has(*)) { padding:0 !important; }
}

/* Phone screenshot galleries: full-width pairs with no orphan thumbnail. */
@media screen and (max-width:600px){
 .gallery_div .miniatury { width:100%; margin:10px 0 0 !important; }
 .gallery_div .miniatury > ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:100%; margin:0 !important; padding:0 !important; list-style:none; }
 .gallery_div .miniatury > ul > li { display:block; float:none; min-width:0; margin:0 !important; padding:0 !important; }
 .gallery_div .miniatury > ul > li:last-child:nth-child(odd) { display:none; }
 .gallery_div .miniatury > ul > li > a { display:block; }
 .gallery_div .miniatury > ul > li > a > img { display:block; width:100% !important; height:auto !important; aspect-ratio:855 / 510; object-fit:contain; margin:0 !important; padding:0 !important; }
}

/* Product thumbnails that open a product use the link cursor. */
.lista_miniaturki .intersoft-product-thumbnail-link,
.lista_miniaturki .intersoft-product-thumbnail-link img { cursor:pointer !important; }

/* Download landing page: image and heading together, full-width copy below. */
@media screen and (max-width:600px){
 .td_text .intersoft-download-banner { display:none !important; }
 .td_text table:has(.intersoft-download-card) { width:100% !important; table-layout:fixed; }
 .td_text .intersoft-download-card { display:flow-root; width:100%; box-sizing:border-box; padding:18px 0; border-bottom:1px solid #ddd; }
 .td_text .intersoft-download-card:last-child { min-width:0; }
 .td_text .intersoft-download-image { display:block; float:left; width:42%; max-width:160px; margin:0 12px 12px 0; padding:0; }
 .td_text .intersoft-download-image > br { display:none; }
 .td_text .intersoft-download-image img { display:block; width:100%; max-width:100%; height:auto; float:none !important; margin:0 !important; }
 .td_text .intersoft-download-copy { margin:0 !important; }
 .td_text .intersoft-download-copy > a { display:block; }
 .td_text .intersoft-download-copy h3 { position:relative; top:-4px; margin:0 0 0 calc(min(42%, 160px) + 12px); font:700 18px/1.35 Cambay,Arial,sans-serif; overflow-wrap:break-word; }
 .td_text .intersoft-download-description { display:block; clear:both; padding-top:8px; font:400 16px/1.5 Cambay,Arial,sans-serif; }
 .td_text .intersoft-download-action { clear:both; margin:8px 0 0 !important; }
 .td_text .intersoft-download-action a { display:inline-block; box-sizing:border-box; min-height:44px; padding:10px 0; font:400 16px/1.5 Cambay,Arial,sans-serif; }
}

/* Keep each mobile heading in the image's top grid row, including after resize. */
.intersoft-download-card > a:has(> .intersoft-download-heading) { display:none; }
@media screen and (max-width:600px){
 .td_text .intersoft-download-card { display:grid; grid-template-columns:minmax(0,42%) minmax(0,1fr); gap:12px; align-items:start; }
 .td_text .intersoft-download-card .intersoft-download-image { grid-column:1; grid-row:1; float:none !important; width:100% !important; max-width:160px; margin:0 !important; }
 .td_text .intersoft-download-card > a:has(> .intersoft-download-heading) { display:block; grid-column:2; grid-row:1; min-width:0; padding:0; }
 .td_text .intersoft-download-heading h3 { position:relative; top:-5px; margin:0; font:700 18px/1.35 Cambay,Arial,sans-serif; overflow-wrap:break-word; }
 .td_text .intersoft-download-copy { grid-column:1 / -1; grid-row:2; min-width:0; }
 .td_text .intersoft-download-copy h3 { display:none; }
 .td_text .intersoft-download-description { padding-top:0; }
 .td_text .intersoft-download-action { grid-column:1 / -1; grid-row:3; margin:0 !important; }
}

/* Align the visible capital letters, removing space above the font's cap line. */
@supports (text-box-trim:trim-start) and (text-box-edge:cap alphabetic){
 @media screen and (max-width:600px){
  .td_text .intersoft-download-heading h3 { top:0; text-box-trim:trim-start; text-box-edge:cap alphabetic; }
 }
}

/* Centre menu arrow icons beside their labels, without the blue button outline. */
@media screen and (max-width:1230px){
 #responsive-category-panel .menu_lewe_belka_b { width:100%; height:auto !important; background:none; }
 #responsive-category-panel .menu_lewe_belka_b > a { display:flex; align-items:center; gap:10px; box-sizing:border-box; width:100%; min-height:50px; height:auto; padding:12px 6px; border-bottom:1px dotted #999; }
 #responsive-category-panel .menu_lewe_belka_b > a::before { content:''; display:block; flex:0 0 9px; width:9px; height:9px; transform:translateY(-1px); background:center/9px 9px no-repeat url('/gfx/themes/punkt_niebieski.jpg'); }
 #div_strona #responsive-category-toggle:focus,
 #div_strona #responsive-category-toggle:focus-visible { outline:none !important; box-shadow:none !important; }
 #div_strona #responsive-category-toggle:focus-visible { background:#e2e2e2; }
}

/* Drivers and add-ons: readable mobile entries with actions below the description. */
@media screen and (max-width:600px){
 .td_text .intersoft-addons-banner { display:none !important; }
 .td_text .intersoft-addons-page,
 .td_text .intersoft-addons-page > tbody,
 .td_text .intersoft-addons-page > tbody > tr,
 .td_text .intersoft-addons-page > tbody > tr > td { display:block; width:100% !important; max-width:100%; box-sizing:border-box; }
 .td_text .intersoft-addons-page { table-layout:fixed; }
 .td_text .intersoft-addons-page > tbody > tr > td { padding:6px 0; }
 .td_text .intersoft-addons-page h1 { margin:12px 0; }
 .td_text .intersoft-addons-page .txt { font:400 16px/1.5 Cambay,Arial,sans-serif; overflow-wrap:anywhere; }
 .td_text .intersoft-addons-list { display:block; width:100%; text-align:left; }
 .td_text .intersoft-addons-list > tbody:not(.intersoft-addon) { display:none; }
 .td_text .intersoft-addons-list > .intersoft-addon { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; padding:18px 0; border-bottom:1px solid #ddd; }
 .td_text .intersoft-addon > tr { display:none; }
 .td_text .intersoft-addon > .intersoft-addon-title-row,
 .td_text .intersoft-addon > .intersoft-addon-details-row { display:contents; }
 .td_text .intersoft-addon td { display:block; width:100%; min-width:0; padding:0; text-align:left; }
 .td_text .intersoft-addon-title { grid-column:1; grid-row:1; }
 .td_text .intersoft-addon-description { grid-column:1; grid-row:2; }
 .td_text .intersoft-addon-download { grid-column:1; grid-row:3; }
 .td_text .intersoft-addon-producer { grid-column:1; grid-row:4; }
 .td_text .intersoft-addon-producer:not(:has(a)) { display:none; }
 .td_text .intersoft-addon .nazwaAktu { padding:0; font:400 16px/1.5 Cambay,Arial,sans-serif; overflow-wrap:anywhere; }
 .td_text .intersoft-addon .nazwaAktu b { display:inline-block; margin-bottom:4px; font:700 18px/1.35 Cambay,Arial,sans-serif; }
 .td_text .intersoft-addon .opisAktu { padding:0; }
 .td_text .intersoft-addon .intersoft-addon-title .opisAktu:empty { display:none; }
 .td_text .intersoft-addon .linia_oddzielajaca { display:none; }
 .td_text .intersoft-addon .pobierzAktu,
 .td_text .intersoft-addon .linkiAktu { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:8px; padding:0; }
 .td_text .intersoft-addon .pobierzAktu > br { display:none; }
 .td_text .intersoft-addon .pobierzAktu a,
 .td_text .intersoft-addon .linkiAktu a { display:flex; align-items:center; justify-content:center; min-height:44px; max-width:100%; padding:0; box-sizing:border-box; }
 .td_text .intersoft-addon .pobierzAktu img,
 .td_text .intersoft-addon .linkiAktu img { display:block; max-width:100%; height:auto; margin:0; }
}

.intersoft-addon-action-label { display:none; }
@media screen and (max-width:600px){
 .td_text .intersoft-addon .pobierzAktu a,
 .td_text .intersoft-addon .linkiAktu a { gap:8px; padding:8px 12px; border:1px solid #ccc; background:#f7f7f7; font:600 15px/1.4 Cambay,Arial,sans-serif; text-decoration:none; }
 .td_text .intersoft-addon-action-label { display:block; min-width:0; text-align:left; }
 .td_text .intersoft-addon .pobierzAktu img,
 .td_text .intersoft-addon .linkiAktu img { flex:0 0 28px; width:28px; height:28px; object-fit:contain; }
}

/* Even add-on text spacing; keep all icon buttons in one row below the copy. */
@media screen and (max-width:600px){
 .td_text .intersoft-addons-list > .intersoft-addon { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:6px 8px; }
 .td_text .intersoft-addon .intersoft-addon-title { order:1; flex:0 0 100%; }
 .td_text .intersoft-addon .intersoft-addon-description { order:2; flex:0 0 100%; }
 .td_text .intersoft-addon .nazwaAktu,
 .td_text .intersoft-addon .opisAktu,
 .td_text .intersoft-addon .opisAktu .txt { margin:0; padding:0; font:400 16px/1.4 Cambay,Arial,sans-serif; }
 .td_text .intersoft-addon .nazwaAktu b { display:block; margin:0 0 6px; line-height:1.3; }
 .td_text .intersoft-addon .nazwaAktu > br,
 .td_text .intersoft-addon-title > .opisAktu { display:none; }
 .td_text .intersoft-addon .intersoft-addon-download,
 .td_text .intersoft-addon .intersoft-addon-producer,
 .td_text .intersoft-addon .pobierzAktu,
 .td_text .intersoft-addon .linkiAktu { display:contents; }
 .td_text .intersoft-addon .pobierzAktu > a { order:3; }
 .td_text .intersoft-addon .linkiAktu > a { order:4; }
 .td_text .intersoft-addon .pobierzAktu > a,
 .td_text .intersoft-addon .linkiAktu > a { flex:0 0 44px; width:44px; height:44px; min-height:44px; padding:6px; margin:4px 0 0; }
 .td_text .intersoft-addon .intersoft-addon-action-label { display:none; }
}

/* A single-price product does not reserve mobile rows for previous prices and discounts. */
@media screen and (max-width:600px){
 .intersoft-product-summary .intersoft-empty-price-row { display:none !important; }
}

/* Keep optional product materials and the review prompt on larger screens. */
.intersoft-product-review-form, .intersoft-product-materials { display:contents; }
@media screen and (max-width:600px){
 .intersoft-product-review-form, .intersoft-product-materials { display:none !important; }
}

/* Omit the FinancesOnline award graphic from product descriptions on phones. */
@media screen and (max-width:600px){
 .td_text .opis_sklep_produkt a:has(> img[src$='/finances_2018award.png']),
 .td_text .opis_sklep_produkt img[src$='/finances_2018award.png'] { display:none !important; }
}

/* Mobile purchase card: original prices and cart handler, clearer presentation. */
.intersoft-mobile-reference, .intersoft-mobile-discount, .intersoft-mobile-current-price,
.intersoft-mobile-buy, .intersoft-mobile-license, .intersoft-mobile-partner { display:none; }
@media screen and (max-width:600px){
 .intersoft-product-summary .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:0 10px; width:100% !important; max-width:100%; padding:10px 0; box-sizing:border-box; border:0; background:#fff; text-align:right; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) > tbody,
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) > tbody > tr,
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) > tbody > tr > td,
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) #div_sklep_koszyk_ajax,
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-license-content { display:contents; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-empty-price-row,
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) #div_sklep_koszyk_ajax > .txt,
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) #div_sklep_koszyk_ajax > [itemprop=offers],
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-reference-legacy,
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-discount-row img,
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-license-content > img,
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-partner-legacy { display:none !important; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-mobile-license { display:block; grid-column:1; grid-row:1; align-self:center; text-align:left; font:700 16px/1.35 Cambay,Arial,sans-serif; color:#555; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-mobile-discount { display:flex; grid-column:2; grid-row:1; align-items:baseline; justify-content:flex-end; gap:5px; color:#658900; font:700 14px/1.2 Cambay,Arial,sans-serif; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-mobile-discount strong { font-size:32px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-mobile-current-price { display:block; grid-column:1 / -1; grid-row:2; margin-top:0; text-align:right; }
 .intersoft-purchase-card .intersoft-mobile-current-net { color:#d00000; font:400 15px/1.25 Cambay,Arial,sans-serif; white-space:nowrap; }
 .intersoft-purchase-card .intersoft-mobile-current-net strong { font-size:30px; font-weight:700; }
 .intersoft-purchase-card .intersoft-mobile-current-gross { margin-top:4px; color:#222; font:400 16px/1.3 Cambay,Arial,sans-serif; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-mobile-reference { display:flex; grid-column:1 / -1; grid-row:3; min-width:0; margin-top:8px; justify-content:flex-end; align-items:baseline; gap:6px; white-space:nowrap; text-align:right; font:400 clamp(10px,2.65vw,12px)/1.45 Cambay,Arial,sans-serif; }
 .intersoft-purchase-card .intersoft-mobile-reference-label { white-space:nowrap; color:#555; }
 .intersoft-purchase-card .intersoft-mobile-reference-values { display:flex; justify-content:flex-end; gap:6px; margin-top:0; white-space:nowrap; }
 .intersoft-purchase-card .intersoft-mobile-reference-net { color:#d00000; font-weight:600; }
 .intersoft-purchase-card .intersoft-mobile-reference-values strong { color:#222; font-weight:700; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-mobile-buy { display:block; grid-column:1 / -1; grid-row:4; width:100%; margin-top:10px; min-height:44px; padding:10px 8px; border:0; border-radius:0; background:#658900; color:#fff; font:700 16px/1.3 Cambay,Arial,sans-serif; text-align:center; cursor:pointer; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) #loaderDodaje { grid-column:1 / -1; grid-row:4; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-license-switch-row { display:block; grid-column:1 / -1; grid-row:5; margin-top:8px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-license-switch-row > td { display:block; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-license-switch-row div { margin:0 !important; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-license-switch-row img { display:block; max-width:100%; margin-left:auto; }
 .intersoft-purchase-card .intersoft-purchase-tools .intersoft-partner-icon { display:block; width:100%; height:40px; background:url('/gfx/themes/ico/partner2018.jpg') no-repeat -3px center / auto 36px; clip-path:inset(3px 0); }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools { display:block; grid-column:1 / -1; grid-row:8; margin-top:8px; border-top:1px solid #ddd; padding-top:6px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools > td { display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:center; gap:0; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools td > div { float:none !important; width:auto !important; margin:0 !important; padding:0 !important; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a { display:flex; align-items:center; justify-content:center; flex:0 0 auto; width:40px; height:44px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a img { display:block; width:40px; max-width:none; height:40px; object-fit:contain; }
 /* Trim built-in white margins so the visible symbols have equal 12px gaps. */
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a:has(> img[src*='gfx/themes/ico']) { position:relative; width:calc(var(--intersoft-symbol-width,28px) + 12px); overflow:hidden; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a > img[src*='gfx/themes/ico'] { position:absolute; top:2px; left:calc(6px - var(--intersoft-symbol-left,6px)); }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a:has(> img[src$='ico_drukuj_d.jpg']) { --intersoft-symbol-left:12px; --intersoft-symbol-width:18px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a:has(> img[src$='ico_demo_d.jpg']) { --intersoft-symbol-left:11px; --intersoft-symbol-width:19px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a:has(> img[src$='ico_prezentacja_d.jpg']) { --intersoft-symbol-left:6px; --intersoft-symbol-width:27px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a:has(> img[src$='ico_pdf_d.jpg']) { --intersoft-symbol-left:13px; --intersoft-symbol-width:19px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a:has(> img[src$='ico_klucz.png']) { --intersoft-symbol-left:10px; --intersoft-symbol-width:21px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a:has(> img[src$='ico_paragraf.png']) { --intersoft-symbol-left:15px; --intersoft-symbol-width:10px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a:has(> img[src$='ico_arcadia_d.jpg']) { --intersoft-symbol-left:13px; --intersoft-symbol-width:16px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a:has(> img[src$='ico_blog_d.jpg']) { --intersoft-symbol-left:5px; --intersoft-symbol-width:32px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-purchase-tools a.intersoft-mobile-partner { margin-left:auto; }
}
@media screen and (max-width:360px){
 .intersoft-product-summary .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) { padding:10px 0; column-gap:6px; }
 .intersoft-purchase-card .intersoft-mobile-current-net strong { font-size:28px; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-mobile-license { font-size:15px; }
}

/* Full database descriptions share the same markup on every screen. */
.intersoft-product-details-full { display:contents; }

/* Hide the decorative Polecamy label on phone product pages. */
@media screen and (max-width:600px){
 .opis_sklep_produkt_td p:has(> img[src$='widok_kup_polecamy.png']) { display:none !important; }
}

/* Upgrade targets start on their own phone line; long names may still wrap. */
@media screen and (max-width:600px){
 .opis_sklep_produkt .intersoft-upgrade-module { display:block; max-width:100%; }
}

/* Related-offer discounts sit directly above the price on phones. */
@media screen and (max-width:600px){
 #trescSrodek .intersoft-related-product { row-gap:4px; grid-template-rows:auto 1fr auto auto; }
 #trescSrodek .intersoft-related-title { margin-bottom:6px; }
 #trescSrodek .intersoft-related-image > a { grid-row:2 / 4; }
 #trescSrodek .intersoft-related-status { align-self:end; }
 #trescSrodek .intersoft-related-status[src*='rrabat_']:not([src$='_brak.png']) { height:26px; width:auto; }
 #trescSrodek .intersoft-related-price { grid-row:3; margin:0 !important; }
 #trescSrodek .intersoft-related-description { grid-row:4; margin-top:6px; }
}

/* Emphasize the discount information link below the phone warning. */
@media screen and (max-width:600px){
 .opis_sklep_produkt_td a[href="cad/index.php?a=kod-rabat"] { display:block; font-weight:700; text-align:right; }
}

/* Contact: actionable data first on phones; original desktop rows retained. */
.intersoft-contact-mobile { display:none; }
@media screen and (max-width:600px) {
 .td_text table.intersoft-contact { display:block; width:100% !important; }
 .intersoft-contact > tbody { display:flex; flex-direction:column; width:100%; }
 .intersoft-contact > tbody > tr { display:block; width:100%; height:auto; }
 .intersoft-contact > tbody > tr > td { display:block; width:100%; height:auto; padding:0; }
 .intersoft-contact > tbody > .intersoft-contact-desktop { display:none; }
 .intersoft-contact-mobile { order:0; }
 .intersoft-contact-mobile td { font:400 16px/1.5 Cambay,Arial,sans-serif; text-align:left; }
 .intersoft-contact-mobile h1 { margin:8px 0 18px; font:700 24px/1.3 Cambay,Arial,sans-serif; }
 .intersoft-contact-section { padding:0 0 20px; margin:0 0 20px; border-bottom:1px solid #ddd; }
 .intersoft-contact-mobile h2 { margin:0 0 8px; font:700 20px/1.35 Cambay,Arial,sans-serif; }
 .intersoft-contact-mobile p { margin:0 0 10px; text-align:left; }
 .intersoft-contact-mobile a { overflow-wrap:anywhere; }
 .intersoft-contact-phone, .intersoft-contact-email, .intersoft-contact-link {
   display:block; width:fit-content; max-width:100%; min-height:44px; padding:9px 0;
   font-weight:700; text-decoration:underline; text-underline-offset:3px;
 }
 .intersoft-contact-mobile .intersoft-contact-phone { font-size:20px; padding:7px 0; }
 .intersoft-contact-mobile .intersoft-contact-fax { font-size:14px; color:#555; margin:0 0 8px; }
 .intersoft-contact-directions { display:block; margin:12px 0 0; padding:12px; min-height:44px; border:1px solid #777; text-align:center; font-weight:700; }
 .intersoft-contact-office img { display:block; width:100%; height:auto; }
 .intersoft-contact-socials { display:flex; flex-wrap:wrap; gap:12px; }
 .intersoft-contact-socials a { display:flex; align-items:center; justify-content:center; width:44px; height:44px; }
 .intersoft-contact-socials img { width:44px; max-height:44px; object-fit:contain; margin:0; }
 .intersoft-contact > tbody > .intersoft-contact-location-map,
 .intersoft-contact > tbody > .intersoft-contact-resellers-heading,
 .intersoft-contact > tbody > .intersoft-contact-resellers-map { display:none; }
}

@media screen and (max-width:600px) {
 .intersoft-contact-mobile .intersoft-contact-portrait { display:block; width:240px; max-width:100%; height:auto; margin:12px 0; }
 /* Contact footer must also fit when legacy scripts are blocked by consent. */
 #div_strona:has(.intersoft-contact) > table:has(#stopka_linki) { table-layout:fixed; width:100% !important; }
 #div_strona:has(.intersoft-contact) > table:has(#stopka_linki) > tbody > tr > td > div { width:auto !important; max-width:100%; height:auto !important; float:none !important; padding-left:14px !important; padding-right:14px !important; }
 #div_strona:has(.intersoft-contact) > table:has(#stopka_linki) img { max-width:100%; height:auto; }
}

@media screen and (max-width:600px) {
 .intersoft-contact-mobile .intersoft-contact-intro,
 .intersoft-contact-intro h1, .intersoft-contact-intro h2,
 .intersoft-contact-mobile .intersoft-contact-intro p { text-align:center; }
 .intersoft-contact-intro .intersoft-contact-address { font-size:clamp(13px,4vw,16px); white-space:nowrap; }
 .intersoft-contact-numbers, .intersoft-contact-emails { display:flex; justify-content:center; align-items:center; gap:12px; }
 .intersoft-contact-mobile .intersoft-contact-intro .intersoft-contact-phone,
 .intersoft-contact-mobile .intersoft-contact-intro .intersoft-contact-fax {
   font:400 clamp(13px,4vw,16px)/1.5 Cambay,Arial,sans-serif; color:inherit;
   width:auto; margin:0; padding:9px 0; min-height:44px; white-space:nowrap;
 }
 .intersoft-contact-mobile .intersoft-contact-intro .intersoft-contact-email {
   font:700 clamp(13px,4vw,16px)/1.5 Cambay,Arial,sans-serif; width:auto; white-space:nowrap;
 }
 .intersoft-contact-intro .intersoft-contact-directions { margin-top:12px; }
}

@media screen and (max-width:600px) {
 .intersoft-contact-mobile .intersoft-contact-section:has(> .intersoft-contact-portrait),
 .intersoft-contact-mobile .intersoft-contact-section:has(> .intersoft-contact-portrait) h2 { text-align:center; }
 .intersoft-contact-mobile .intersoft-contact-section:has(> .intersoft-contact-portrait) > img,
 .intersoft-contact-mobile .intersoft-contact-section:has(> .intersoft-contact-portrait) > a { margin-left:auto; margin-right:auto; }
}

@media screen and (max-width:600px) {
 .intersoft-contact-mobile .intersoft-contact-section:has(> .intersoft-contact-portrait) p,
 .intersoft-contact-mobile .intersoft-contact-office,
 .intersoft-contact-mobile .intersoft-contact-office h2,
 .intersoft-contact-mobile .intersoft-contact-office p { text-align:center; }
}

/* Careers: use the complete mobile width and keep every job requirement. */
.intersoft-careers-jump, .intersoft-careers-email-mobile { display:none; }
@media screen and (max-width:600px) {
 .td_text table.intersoft-careers,
 .intersoft-careers > tbody,
 .intersoft-careers > tbody > tr,
 .intersoft-careers > tbody > tr > td { display:block; width:100% !important; height:auto !important; }
 .intersoft-careers > tbody > tr > td { padding:0; }
 .intersoft-careers > tbody > tr > td > img { display:block; width:100%; height:auto; margin:0 0 18px; }
 .intersoft-careers > tbody > tr > td > h2 { margin:0 0 16px; text-align:center; font:700 24px/1.3 Cambay,Arial,sans-serif; }
 .intersoft-careers .intersoft-careers-content { font:400 16px/1.5 Cambay,Arial,sans-serif; text-align:left; }
 .intersoft-careers-content p { margin:16px 0 8px; text-align:left; }
 .intersoft-careers-content > p:first-child { margin-top:0; }
 .intersoft-careers-content ul { padding:0 0 0 22px; margin:0 0 18px; }
 .intersoft-careers-content li { padding:0; margin:0 0 8px; font:inherit; text-align:left; overflow-wrap:anywhere; }
 .intersoft-careers-content .intersoft-careers-job-title { margin:20px 0 16px !important; font:700 20px/1.35 Cambay,Arial,sans-serif !important; text-align:left !important; scroll-margin-top:20px; }
 .intersoft-careers-content > br { display:none; }
 .intersoft-careers-content hr { margin:24px 0; border:0; border-top:1px solid #ccc; height:0; }
 .intersoft-careers-jump { display:grid; gap:8px; margin:16px 0 24px; }
 .intersoft-careers-jump a { display:flex; align-items:center; min-height:44px; padding:10px 12px; border:1px solid #ccc; font-weight:700; text-decoration:none; }
 .intersoft-careers-content .intersoft-careers-email-desktop { display:none; }
 .intersoft-careers-content .intersoft-careers-email-mobile { display:inline-block; min-height:44px; padding:10px 0; font-weight:700; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
 #div_strona:has(.intersoft-careers) > table:has(#stopka_linki) { table-layout:fixed; width:100% !important; }
 #div_strona:has(.intersoft-careers) > table:has(#stopka_linki) > tbody > tr > td > div { width:auto !important; max-width:100%; height:auto !important; float:none !important; padding-left:14px !important; padding-right:14px !important; }
 #div_strona:has(.intersoft-careers) > table:has(#stopka_linki) img { max-width:100%; height:auto; }
}

@media screen and (max-width:600px) {
 .intersoft-careers > tbody > tr:has(img[src='gfx/ttop_praca.jpg']) { display:none; }
}

/* Mission page layout on phones; content is shared with desktop. */
@media screen and (max-width:600px) {
 .intersoft-mission > tbody > tr:has(> td > img) { display:none; }
 .intersoft-mission > tbody > tr > td > h2 { margin:8px 0 20px; text-align:center; font:700 24px/1.3 Cambay,Arial,sans-serif; }
 #div_strona:has(.intersoft-mission) > table:has(#stopka_linki) { table-layout:fixed; width:100% !important; }
 #div_strona:has(.intersoft-mission) > table:has(#stopka_linki) > tbody > tr > td > div { width:auto !important; max-width:100%; height:auto !important; float:none !important; padding-left:14px !important; padding-right:14px !important; }
 #div_strona:has(.intersoft-mission) > table:has(#stopka_linki) img { max-width:100%; height:auto; }
}

/* Sales contacts and newsletter: let content wrap within the phone width. */
@media screen and (max-width:600px) {
 .td_text table.news_cp:has(.pracownik_handlowy_div) > tbody > tr:has(> td > img[src='gfx/ttop_dzialhandlowy.jpg']),
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']) > tbody > tr:has(> td > img[src='gfx/ttop_dzialhandlowy.jpg']) { display:none; }
 .td_text .pracownik_handlowy_div { display:grid; grid-template-columns:104px minmax(0,1fr); align-items:start; gap:16px; width:100% !important; min-height:0; height:auto; margin:20px 0; padding:0 0 20px; background:none; border-bottom:1px solid #ddd; }
 .td_text .pracownik_handlowy_div > img.img_zdjecie { display:block; float:none; width:104px; max-width:100%; height:auto; margin:0 !important; }
 .td_text .pracownik_handlowy_div > div { width:auto !important; min-width:0; height:auto; overflow:visible; }
 .td_text .pracownik_handlowy_div p { margin:0 0 12px; padding:0 !important; font:400 16px/1.5 Cambay,Arial,sans-serif; white-space:normal; overflow-wrap:anywhere; }
 .td_text .pracownik_handlowy_div p:last-child { margin-bottom:0; }
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']),
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']) > tbody,
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']) > tbody > tr,
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']) > tbody > tr > td { display:block; width:100% !important; height:auto !important; min-width:0; }
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']) > tbody > tr > td { padding:0; }
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']) h1 { font:700 24px/1.3 Cambay,Arial,sans-serif; margin:8px 0 20px; text-align:center; }
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']) h2 { font:700 20px/1.35 Cambay,Arial,sans-serif; margin:0 0 12px; }
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']) p { margin:0 0 16px; text-align:left; }
 .td_text table.news_cp:has(form[action='index.php?dzial-handlowy=informator']) td { font:400 16px/1.5 Cambay,Arial,sans-serif; }
 .td_text form[action='index.php?dzial-handlowy=informator'],
 .td_text form[action='index.php?dzial-handlowy=informator'] table,
 .td_text form[action='index.php?dzial-handlowy=informator'] tbody,
 .td_text form[action='index.php?dzial-handlowy=informator'] tr,
 .td_text form[action='index.php?dzial-handlowy=informator'] td { display:block; width:100% !important; max-width:100%; min-width:0; height:auto; }
 .td_text form[action='index.php?dzial-handlowy=informator'] .label { text-align:left; padding:0 0 5px; }
 .td_text form[action='index.php?dzial-handlowy=informator'] .input { padding:0 0 16px; }
 .td_text form[action='index.php?dzial-handlowy=informator'] input[type='text'],
 .td_text form[action='index.php?dzial-handlowy=informator'] input[type='email'] { width:100% !important; max-width:100%; min-height:44px !important; height:44px !important; padding:8px 10px; font:400 16px/1.5 Cambay,Arial,sans-serif !important; box-sizing:border-box; }
 .td_text form[action='index.php?dzial-handlowy=informator'] td:not(.label):not(.input) { padding:0; overflow-wrap:anywhere; }
 .td_text form[action='index.php?dzial-handlowy=informator'] input[type='checkbox'] { width:20px; height:20px; margin:4px 8px 8px 0; vertical-align:middle; }
 .td_text form[action='index.php?dzial-handlowy=informator'] ul { padding-left:22px; margin:0 0 18px; }
 .td_text form[action='index.php?dzial-handlowy=informator'] li { margin:0 0 10px; line-height:1.5; }
 .td_text form[action='index.php?dzial-handlowy=informator'] input[type='image'] { display:block; width:160px; min-height:44px; height:44px; margin:12px auto 0; padding:0; background:none; object-fit:contain; box-sizing:border-box; }
 #div_strona:has(.pracownik_handlowy_div,form[action='index.php?dzial-handlowy=informator']) > table:has(#stopka_linki) { table-layout:fixed; width:100% !important; }
 #div_strona:has(.pracownik_handlowy_div,form[action='index.php?dzial-handlowy=informator']) > table:has(#stopka_linki) > tbody > tr > td > div { width:auto !important; max-width:100%; height:auto !important; float:none !important; padding-left:14px !important; padding-right:14px !important; }
 #div_strona:has(.pracownik_handlowy_div,form[action='index.php?dzial-handlowy=informator']) > table:has(#stopka_linki) img { max-width:100%; height:auto; }
}

/* Awards page: omit the opening banner and the trailing certification block on phones. */
@media screen and (max-width:600px) {
 .td_text tr:has(> td > img[src='gfx/ttop_nagrody.jpg']),
 .td_text tr:has(> td > a#certyfikaty),
 .td_text tr:has(> td > a#certyfikaty) ~ tr { display:none; }
}

/* Annual-license promotion: readable cards while preserving all offer conditions. */
@media screen and (max-width:600px) {
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) > tbody > tr:has(> td > img[src='gfx/ttop_licencja-roczna.jpg']) { display:none; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']), .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) > tbody, .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) > tbody > tr, .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) > tbody > tr > td,
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) table, .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) table > tbody, .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) table > tbody > tr, .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) table > tbody > tr > td { display:block; width:100% !important; height:auto !important; min-width:0; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) h1 { margin:8px 0 18px; font:700 24px/1.3 Cambay,Arial,sans-serif; text-transform:none !important; text-align:center; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) p { font:400 16px/1.5 Cambay,Arial,sans-serif; text-align:left; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_produkty { display:flex !important; flex-direction:column; align-items:stretch; gap:14px; padding:22px 0 !important; margin:0; border-bottom:1px solid #ddd; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_produkty > div { float:none !important; width:100% !important; min-width:0; height:auto; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_produkty .lista_miniaturki { flex:none; min-height:0; padding:0; width:210px !important; max-width:100%; margin:0 auto; overflow:visible; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_miniaturki img { display:block; width:100%; height:auto; margin:0 !important; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_produkty a.sklep_tytul { display:block; float:none !important; width:100% !important; height:auto !important; margin:0; padding:0; white-space:normal; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .sklep_tytul h4 { margin:0 0 10px; font:700 19px/1.35 Cambay,Arial,sans-serif; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .sklep_tytul > div { width:100% !important; font:400 16px/1.5 Cambay,Arial,sans-serif; white-space:normal; overflow-wrap:anywhere; text-align:left; }
 #div_strona:has(img[src='gfx/ttop_licencja-roczna.jpg']) > table:has(#stopka_linki) { table-layout:fixed; width:100% !important; }
 #div_strona:has(img[src='gfx/ttop_licencja-roczna.jpg']) > table:has(#stopka_linki) > tbody > tr > td > div { width:auto !important; max-width:100%; height:auto !important; float:none !important; padding-left:14px !important; padding-right:14px !important; }
 #div_strona:has(img[src='gfx/ttop_licencja-roczna.jpg']) > table:has(#stopka_linki) img { max-width:100%; height:auto; }
}

@media screen and (max-width:600px) {
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) div:has(> img[src='/cad/gfx/grudzien2019_in.jpg']) { display:none; }
}

/* Annual title suffix moves to its own line only on phones. */
@media screen and (max-width:600px) {
 .intersoft-annual-title-separator { display:none; }
 .intersoft-annual-title-suffix { display:block; }
}

/* Annual cards: image left, title aligned with its top, description below. */
.intersoft-annual-image-link { display:contents !important; }
@media screen and (max-width:600px) {
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_produkty { display:grid !important; grid-template-columns:minmax(0,38%) minmax(0,1fr); gap:12px; align-items:start; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_produkty > div:not(.lista_miniaturki),
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_produkty a.sklep_tytul { display:contents; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_produkty .lista_miniaturki { display:block; grid-column:1; grid-row:1; width:100% !important; margin:0; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .lista_miniaturki .intersoft-annual-image-link { display:block !important; width:100%; height:auto; margin:0; padding:0; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .sklep_tytul h4 { grid-column:2; grid-row:1; align-self:start; margin:0; position:relative; top:-2px; }
 .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .sklep_tytul > div { grid-column:1 / -1; grid-row:2; }
}
@supports (text-box-trim:trim-start) and (text-box-edge:cap alphabetic) {
 @media screen and (max-width:600px) {
  .td_text table.news_cp:has(img[src='gfx/ttop_licencja-roczna.jpg']) .sklep_tytul h4 { top:2px; text-box-trim:trim-start; text-box-edge:cap alphabetic; }
 }
}

.intersoft-annual-image-link, .intersoft-annual-image-link > img { cursor:pointer !important; }

/* Program categories: consistent phone cards with title beside image. */
.intersoft-category-image-link { display:contents; cursor:pointer; }
.intersoft-category-image-link img { cursor:pointer !important; }
@media screen and (max-width:600px){
 .td_text .intersoft-program-category-page, .td_text .intersoft-program-category-page table { width:100% !important; max-width:100%; }
 .td_text .intersoft-program-category-page tr.intersoft-category-banner { display:none; }
 .td_text .intersoft-program-category-page h1 { margin:0 0 14px; font:700 22px/1.3 Cambay,Arial,sans-serif; text-transform:none !important; }
 .td_text .intersoft-program-category-page p { font:400 16px/1.5 Cambay,Arial,sans-serif; }
 .td_text .intersoft-program-category-page p:empty { display:none; }
 .td_text .intersoft-program-category-page .lista_produkty { display:grid !important; grid-template-columns:minmax(0,38%) minmax(0,1fr) !important; gap:12px; align-items:start; padding:18px 0 !important; border-bottom:1px solid #ddd; }
 .td_text .intersoft-program-category-page .lista_produkty > div:not(.lista_miniaturki),
 .td_text .intersoft-program-category-page .lista_produkty a.sklep_tytul { display:contents; }
 .td_text .intersoft-program-category-page .lista_miniaturki { display:block; grid-column:1; grid-row:1; width:100% !important; min-height:0; height:auto; align-self:start; margin:0; padding:0; float:none; }
 .td_text .intersoft-program-category-page .intersoft-category-image-link { display:block; width:100%; }
 .td_text .intersoft-program-category-page .lista_miniaturki img { display:block; width:100%; max-width:100%; height:auto; margin:0 !important; }
 .td_text .intersoft-program-category-page .sklep_tytul h4 { grid-column:2; grid-row:1; align-self:start; min-width:0; margin:0; font:700 18px/1.35 Cambay,Arial,sans-serif; position:relative; top:-2px; overflow-wrap:break-word; }
 .td_text .intersoft-program-category-page .sklep_tytul > div { grid-column:1 / -1; grid-row:2; min-width:0; font:400 16px/1.5 Cambay,Arial,sans-serif; color:#333; }
}
@supports (text-box-trim:trim-start) and (text-box-edge:cap alphabetic){
 @media screen and (max-width:600px){
  .td_text .intersoft-program-category-page .sklep_tytul h4 { top:2px; text-box-trim:trim-start; text-box-edge:cap alphabetic; }
 }
}

/* Keep the original footer within the phone width when its enhancement script is blocked. */
@media screen and (max-width:600px){
 #div_strona table:has(#stopka_linki):not(#intersoft-footer) { table-layout:fixed; width:100% !important; }
 #div_strona table:has(#stopka_linki):not(#intersoft-footer) > tbody > tr > td > div { width:auto !important; max-width:100%; height:auto !important; float:none !important; padding-left:14px !important; padding-right:14px !important; }
 #div_strona table:has(#stopka_linki):not(#intersoft-footer) img { max-width:100%; height:auto; }
}



/* Shared recommendations: phone image left, title at its top, description below. */
@media screen and (max-width:600px) {
 #trescSrodek .intersoft-related-product { grid-template-columns:minmax(0,38%) minmax(0,1fr); grid-template-rows:auto auto auto auto; gap:6px 12px; align-items:start; padding:18px 0 !important; }
 #trescSrodek .intersoft-related-image > a { grid-column:1; grid-row:1 / 4; align-self:start; }
 #trescSrodek .intersoft-related-image img { cursor:pointer !important; }
 #trescSrodek .intersoft-related-title { grid-column:2; grid-row:1; min-width:0; margin:0; font:700 18px/1.35 Cambay,Arial,sans-serif; overflow-wrap:break-word; position:relative; top:-2px; }
 #trescSrodek .intersoft-related-status { grid-column:2; grid-row:2; align-self:start; justify-self:end; }
 #trescSrodek .intersoft-related-price { grid-column:2; grid-row:3; align-self:start; justify-self:end; margin:0 !important; }
 #trescSrodek .intersoft-related-description { grid-column:1 / -1; grid-row:4; min-width:0; margin:6px 0 0; font-size:16px; line-height:1.5; }
 .intersoft-purchase-card:has(#div_sklep_koszyk_ajax) .intersoft-mobile-reference { gap:3px; font-size:clamp(10.5px,3.1vw,15px); }
 .intersoft-purchase-card .intersoft-mobile-reference-values { gap:3px; }
}
@supports (text-box-trim:trim-start) and (text-box-edge:cap alphabetic) {
 @media screen and (max-width:600px) {
  #trescSrodek .intersoft-related-title { top:2px; text-box-trim:trim-start; text-box-edge:cap alphabetic; }
 }
}

/* Product screenshot viewer: visible navigation on phones and desktops. */
.intersoft-product-gallery-details.pp_details .pp_description { display:none !important; }
div.intersoft-product-gallery-details.pp_details { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; }
.intersoft-product-gallery-details.pp_details .pp_nav { float:none; margin:0; align-items:center; gap:6px; }
.intersoft-product-gallery-details.pp_details .pp_nav:has(> a) { display:flex; }
.intersoft-product-gallery-details.pp_details .pp_nav a { display:flex; flex:none; align-items:center; justify-content:center; float:none; width:40px; height:40px; margin:0; padding:0; background:#fff; border:1px solid #999; color:#222; font:400 30px/1 Arial,sans-serif; text-indent:0; text-decoration:none; box-sizing:border-box; }
.intersoft-product-gallery-details.pp_details .pp_nav a.disabled { opacity:.35; cursor:default; }
.intersoft-product-gallery-details.pp_details .currentTextHolder { float:none; min-width:38px; margin:0; padding:0; font:400 14px/1.3 Cambay,Arial,sans-serif; text-align:center; white-space:nowrap; }
.intersoft-product-gallery-details.pp_details a.pp_close { display:flex; flex:none; align-items:center; justify-content:center; float:none; width:40px; height:40px; margin:0; padding:0; background:#fff; border:1px solid #999; color:#222; font:400 28px/1 Arial,sans-serif; text-indent:0; text-decoration:none; box-sizing:border-box; }
.intersoft-product-gallery-details.pp_details a:focus-visible { outline:2px solid #698900; outline-offset:2px; }

.pp_pic_holder.intersoft-product-gallery-viewer .ppt { height:0 !important; margin:0 !important; padding:0 !important; overflow:hidden; }
.intersoft-product-gallery-details.pp_details::after { display:none; }
.intersoft-product-gallery-details.pp_details .pp_nav { order:1; }
.intersoft-product-gallery-details.pp_details a.pp_close { order:2; margin-left:auto; }

/* Quiet image arrows and a rectangular background for the screenshot viewer. */
.pp_pic_holder.intersoft-product-gallery-viewer { background:transparent; border-radius:0; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_top,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_bottom,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_top > div,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_bottom > div,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_content,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_content_container > .pp_left,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_content_container > .pp_left > .pp_right { background:none !important; border-radius:0; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_fade { position:relative; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_hoverContainer { left:0; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_next,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_previous { position:relative; background:none !important; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_next::after,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_previous::after { content:""; position:absolute; top:50%; width:17px; height:17px; border:0 solid rgba(255,255,255,.7); filter:drop-shadow(0 1px 1px rgba(0,0,0,.35)); transform:translateY(-50%) rotate(45deg); }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_next::after { right:14px; border-top-width:2px; border-right-width:2px; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_previous::after { left:14px; border-bottom-width:2px; border-left-width:2px; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_next:hover::after,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_previous:hover::after { border-color:rgba(255,255,255,.95); }
.intersoft-product-gallery-details.pp_details { min-height:40px; position:relative; justify-content:center; }
.intersoft-product-gallery-details.pp_details .pp_nav { margin:0 auto; }
.intersoft-product-gallery-details.pp_details .pp_nav a { display:none !important; }
.intersoft-product-gallery-details.pp_details a.pp_close { position:absolute; right:0; top:0; background:none; border:0; color:#333; }

/* Transparent surroundings for product screenshots. */
div.pp_overlay.intersoft-product-gallery-backdrop { background:transparent; }
.pp_pic_holder.intersoft-product-gallery-viewer .intersoft-product-gallery-details.pp_details .currentTextHolder { color:#333; }

/* Image-only viewer: the transparent surrounding layer closes it on click. */
.pp_pic_holder.intersoft-product-gallery-viewer { pointer-events:none; }
.pp_pic_holder.intersoft-product-gallery-viewer #fullResImage,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_hoverContainer { pointer-events:auto; }
.intersoft-product-gallery-details.pp_details { display:none !important; height:0; min-height:0; margin:0 !important; padding:0; }

/* Swipe the in-page gallery on phones; keep the desktop image viewer. */
.intersoft-inline-gallery { display:none; }
@media screen and (max-width:600px), screen and (hover:none) and (pointer:coarse) {
 .gallery_div.intersoft-inline-ready .galeria > .duzy_link { display:none !important; }
 .gallery_div .intersoft-inline-gallery { display:block; position:relative; width:100%; }
 .gallery_div .intersoft-inline-track { display:flex; width:100%; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
 .gallery_div .intersoft-inline-track::-webkit-scrollbar { display:none; }
 .gallery_div .intersoft-inline-slide { display:block; flex:0 0 100%; width:100%; min-width:0; scroll-snap-align:start; }
 .gallery_div .intersoft-inline-slide img { display:block; width:100%; height:auto; aspect-ratio:855 / 510; object-fit:contain; margin:0; padding:0; user-select:none; -webkit-user-drag:none; }
 .gallery_div .intersoft-inline-arrow { position:absolute; top:50%; transform:translateY(-50%); z-index:2; width:48px; height:64px; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; cursor:pointer; }
 .gallery_div .intersoft-inline-previous { left:0; }
 .gallery_div .intersoft-inline-next { right:0; }
 .gallery_div .intersoft-inline-arrow::after { content:""; display:block; position:absolute; top:50%; width:17px; height:17px; border:0 solid rgba(255,255,255,.75); filter:drop-shadow(0 1px 1px rgba(0,0,0,.4)); transform:translateY(-50%) rotate(45deg); }
 .gallery_div .intersoft-inline-previous::after { left:14px; border-bottom-width:2px; border-left-width:2px; }
 .gallery_div .intersoft-inline-next::after { right:14px; border-top-width:2px; border-right-width:2px; }
 .gallery_div .intersoft-inline-arrow:disabled { visibility:hidden; }
 .gallery_div .intersoft-inline-arrow:focus-visible { outline:2px solid #698900; outline-offset:-2px; }
}
/* Desktop viewer arrows stay outside differently sized screenshots. */
.pp_pic_holder.intersoft-product-gallery-viewer .pp_next,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_previous { position:fixed; top:50%; transform:translateY(-50%); width:48px; height:80px; float:none; z-index:2100; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_previous { left:32px; right:auto; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_next { right:32px; left:auto; }
.pp_pic_holder.intersoft-product-gallery-viewer .pp_next::after,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_previous::after,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_next:hover::after,
.pp_pic_holder.intersoft-product-gallery-viewer .pp_previous:hover::after { border-color:rgba(45,45,45,.8); filter:drop-shadow(0 1px 1px rgba(255,255,255,.85)); }

/* Optional postal-city helper; the original address inputs stay editable. */
.intersoft-postal-help { margin:6px 0 2px; color:#555; font:400 13px/1.5 Cambay,Arial,sans-serif; }
.intersoft-postal-help[hidden], .intersoft-postal-help [hidden] { display:none !important; }
#formPodajDane .intersoft-postal-choices { display:block; width:100%; max-width:100%; min-height:44px; margin:6px 0; padding:8px; box-sizing:border-box; font:400 16px/1.4 Cambay,Arial,sans-serif; }
.intersoft-postal-use { margin-left:6px; padding:4px 0; border:0; background:none; color:#4d7000; font:inherit; text-decoration:underline; cursor:pointer; }
.intersoft-postal-credit { display:block; margin-top:3px; font-size:11px; color:#666; }
.intersoft-postal-credit a { color:inherit; }

/* The red cart opens the basket independently of the catalogue link. */
#menu_mini_top_pasek_bottom .intersoft-header-cart { display:flex; align-items:center; gap:10px; width:360px; float:left; }
.intersoft-header-cart-button { display:inline-flex; align-items:center; justify-content:center; flex:0 0 75px; min-height:28px; }
/* Align the bitmap lettering with the adjacent text, retaining the tap area. */
.intersoft-header-cart-button img { display:block; width:75px; height:auto; transform:translateY(-3px); }
#menu_mini_top_pasek_bottom .intersoft-header-cart #twojeZakupy { display:block; flex:1 1 auto; min-width:0; min-height:0; width:auto !important; height:auto !important; float:none !important; }
#menu_mini_top_pasek_bottom .intersoft-header-cart #twojeZakupy > a,
#menu_mini_top_pasek_bottom .intersoft-header-cart #twojeZakupy > div,
#menu_mini_top_pasek_bottom .intersoft-header-cart #twojeZakupy > a > div { display:block; width:auto !important; height:auto !important; min-height:0; padding:0 !important; background-image:none !important; font-size:12px !important; line-height:1.5; }
.intersoft-header-cart #twojeZakupy b { display:inline-block; font-size:12px !important; }
.intersoft-header-cart #twojeZakupy b + b { padding-left:0 !important; margin-left:6px; }
@media screen and (max-width:1230px) {
  #menu_mini_top_pasek_bottom .intersoft-header-cart { width:100%; float:none; min-height:44px; }
  #menu_mini_top_pasek_bottom .menu_top_pasek:has(.intersoft-header-cart) { margin-top:8px; }
  .intersoft-header-cart-button { min-height:44px; }
  #menu_mini_top_pasek_bottom .intersoft-header-cart #twojeZakupy { line-height:1.5; }
}

/* Phone cart: right-aligned group and a small optical lift for its status. */
@media screen and (max-width:600px) {
  #menu_mini_top_pasek_bottom .intersoft-header-cart { justify-content:flex-end; }
  #menu_mini_top_pasek_bottom .intersoft-header-cart #twojeZakupy { flex:0 1 auto; transform:translateY(-1px); }
}

/* Phone customer form: an aligned consent block and balanced navigation. */
@media screen and (max-width:600px) {
  #formPodajDane td:has(#wyrazam_zgode) { padding:20px 0 4px; }
  #formPodajDane div:has(> #wyrazam_zgode) { display:grid; grid-template-columns:20px minmax(0,1fr); gap:6px 12px; margin:0 !important; padding:16px 14px; border:1px solid #dfe3d8; background:#f7f8f5; text-align:left; }
  #formPodajDane div > #wyrazam_zgode { grid-column:1; grid-row:1; align-self:start; width:20px; height:20px; margin:2px 0 0; accent-color:#698900; }
  #formPodajDane div:has(> #wyrazam_zgode) > b { grid-column:2; grid-row:1; font:400 15px/1.5 Cambay,Arial,sans-serif; color:#333; }
  #formPodajDane div:has(> #wyrazam_zgode) > br { display:none; }
  #formPodajDane div:has(> #wyrazam_zgode) > a { grid-column:2; grid-row:2; justify-self:start; padding:2px 0; font:400 14px/1.5 Cambay,Arial,sans-serif; color:#4d7000; text-decoration:underline; text-underline-offset:2px; }
  #formPodajDane div > #wyrazam_zgode_error { grid-column:2; grid-row:3; color:#b32720; }
  #trescSrodek:has(#formPodajDane) #przyciskiKoszyk { gap:12px; margin:20px 0 8px; align-items:center; }
  #trescSrodek:has(#formPodajDane) #przyciskiKoszyk .lista_dane,
  #trescSrodek:has(#formPodajDane) #przyciskiKoszyk .dalej { display:flex; align-items:center; }
  #trescSrodek:has(#formPodajDane) #przyciskiKoszyk .lista_dane { justify-content:flex-start; }
  #trescSrodek:has(#formPodajDane) #przyciskiKoszyk .dalej { justify-content:flex-end; }
  #trescSrodek:has(#formPodajDane) #przyciskiKoszyk .przerwij_dane { padding-top:4px; }
}

/* Lightweight media retain the existing slider and video dimensions. */
.intersoft-slider-picture { display:block; width:100%; height:100%; }
.intersoft-slider-picture > img { display:block; width:100%; height:100%; object-fit:contain; }
.intersoft-lazy-video { position:relative; }
.intersoft-lazy-video > video { display:block; max-width:100%; height:auto; aspect-ratio:855 / 448; background:#fff; }
.intersoft-video-play { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; gap:10px; min-height:48px; padding:12px 18px; border:1px solid rgba(255,255,255,.8); border-radius:3px; background:rgba(40,40,40,.9); color:#fff; font:600 16px/1.3 Arial,sans-serif; cursor:pointer; white-space:nowrap; }
.intersoft-video-play[hidden] { display:none; }
.intersoft-video-play:focus-visible { outline:3px solid #698900; outline-offset:3px; }

/* Desktop uses the original footer and its native social widgets. */
@media screen and (min-width:1231px){
 #intersoft-footer a.intersoft-social-link { display:none; }
}

/* Existing language links beside the INTERsoft logo on small screens. */
.intersoft-language-links { display:none; }
@media screen and (max-width:1230px){
 .responsive-header:has(.intersoft-language-links) { flex-wrap:wrap; }
 .responsive-header-brand:has(.intersoft-language-links) { flex:1 1 auto; min-width:176px; gap:8px; }
 .responsive-header .intersoft-language-links { display:flex; align-items:center; flex:none; gap:0; height:36px; }
 .responsive-header .intersoft-language-links a { display:flex; align-items:center; justify-content:center; flex:none; width:32px; height:36px; }
 .responsive-header .intersoft-language-links img { display:block; width:25px; height:auto; }
 #menu .sf-menu > li.flaga_menu { display:none; }
}
@media screen and (max-width:600px){
 .responsive-header-brand:has(.intersoft-language-links) .responsive-logo img { width:clamp(104px,calc(100vw - 254px),160px); }
}
@media screen and (max-width:360px){
 .responsive-header-brand:has(.intersoft-language-links) .responsive-logo img { width:140px; }
}

/* Match the visible title cap height to the thumbnail top in desktop category offers. */
@media screen and (min-width:1231px){
 .td_text .lista_produkty:has(.intersoft-category-image-link) > div:not(.lista_miniaturki) { position:relative; top:6px; }
 .td_text .lista_produkty:has(.intersoft-annual-image-link) > div:not(.lista_miniaturki) { position:relative; top:1px; }
}

/* Lightweight chat launcher: load the full vendor widget only when opened. */
.intersoft-chat-launcher { position:fixed; z-index:99999; right:20px; bottom:20px; display:flex; align-items:center; justify-content:center; width:58px; height:58px; padding:12px; border:0; border-radius:50%; background:#00a65a; color:#fff; box-shadow:0 3px 12px rgba(0,0,0,.25); cursor:pointer; }
.intersoft-chat-launcher:hover { background:#008d4c; }
.intersoft-chat-launcher:focus-visible { outline:3px solid #1b3b70; outline-offset:3px; }
.intersoft-chat-launcher.is-loading svg { opacity:.4; }
.intersoft-chat-launcher.is-loading::after { content:''; position:absolute; inset:7px; border:2px solid transparent; border-top-color:#fff; border-radius:50%; animation:intersoft-chat-loading 1s linear infinite; }
@keyframes intersoft-chat-loading { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) { .intersoft-chat-launcher.is-loading::after { animation:none; border-color:rgba(255,255,255,.5); } }
@media screen and (max-width:600px) { .intersoft-chat-launcher { right:14px; bottom:14px; width:54px; height:54px; } }
@media print { .intersoft-chat-launcher { display:none; } }

/* Conference BIM: full text fits the phone; desktop keeps its original layout. */
@media screen and (max-width:600px) {
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) > tbody > tr:has(> td > img[src='gfx/ttop_prezentacje.jpg']) { display:none; }
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']), .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) > tbody, .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) > tbody > tr, .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) > tbody > tr > td,
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) table, .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) table > tbody, .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) table > tbody > tr, .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) table > tbody > tr > td { display:block; width:100% !important; max-width:100%; min-width:0; height:auto !important; }
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) > tbody > tr > td, .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) table > tbody > tr > td { padding-left:0; padding-right:0; }
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) div[style*='width:'] { width:100% !important; max-width:100%; float:none !important; margin-left:0 !important; margin-right:0 !important; }
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) p, .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) li, .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) .warsztat_info { white-space:normal; overflow-wrap:anywhere; text-align:left; }
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) p { margin:0 0 16px; }
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) ul { padding-left:24px; margin:0 0 20px; }
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) li { margin:0 0 12px; }
 .td_text table.news_cp:has(a[href*='drukowanie_tresci.php?wsparcie=konferencja-bim']) .warsztat_info { margin:20px 0 0; }
}

/* Keep every sidebar banner; two above the phone toggle, five below the links. */
#intersoft-sidebar-lead-banners { display:none; }
@media screen and (max-width:600px) {
 #intersoft-sidebar-lead-banners { display:grid; grid-template-columns:minmax(0,1fr); justify-items:center; gap:16px; padding:14px; box-sizing:border-box; }
 #intersoft-sidebar-lead-banners > div { width:100%; max-width:500px; margin:0 !important; }
 #intersoft-sidebar-lead-banners .intersoft-sidebar-banner-link { display:block; width:100%; max-width:500px; margin:0; padding:0; line-height:0; }
 #intersoft-sidebar-lead-banners img { display:block; width:100%; max-width:500px; height:auto; margin:0 !important; }
 #responsive-category-panel .intersoft-sidebar-lead-row { display:none !important; }
 #responsive-category-panel .intersoft-sidebar-banner-row:not(.intersoft-sidebar-lead-row) { margin:16px 0 0 !important; height:auto !important; }
 #responsive-category-panel .intersoft-category-table > tbody > tr.intersoft-sidebar-banner-row > td { display:grid; justify-items:center; gap:16px; height:auto !important; padding:0 !important; }
 #responsive-category-panel .intersoft-sidebar-banner-row td > div { margin:0 !important; padding:0 !important; width:100%; height:auto; text-align:center; }
 #responsive-category-panel .intersoft-sidebar-banner-row .intersoft-sidebar-banner-link { display:block; width:100%; max-width:500px; margin:0 auto; padding:0; line-height:0; }
 #responsive-category-panel .intersoft-sidebar-banner-row img { display:block; width:100%; max-width:500px; height:auto; margin:0 !important; }
}

#intersoft-sidebar-lead-banners:empty { display:none; }

@media screen and (max-width:600px) {
 #intersoft-sidebar-lead-banners > div:has(img[src$='/menulewe-rabat50pr_250.jpg']),
 #responsive-category-panel .intersoft-sidebar-banner-row:has(img[src$='/menulewe-rabat50pr_250.jpg']) { display:none !important; }
}

/* Mobile phone link clears the header and search; chat occupies the other corner. */
@media screen and (max-width:600px) {
 body div.telefon { position:fixed; top:auto !important; bottom:calc(14px + env(safe-area-inset-bottom,0px)); left:14px !important; right:auto; width:54px; height:54px; z-index:99998; }
 body div.telefon > a { display:flex; align-items:center; justify-content:center; width:54px; height:54px; padding:0; }
 body div.telefon img { display:block; width:54px; height:54px; margin:0; object-fit:contain; }
}

/* Active discount status and ID entry remain readable within the phone width. */
@media screen and (max-width:600px) {
 #responsive-category-panel .intersoft-category-table > tbody > tr:has(div[style*='kod_klienta_podany_menu_lewe.jpg']) { margin:16px 0 0 !important; }
 #responsive-category-panel tr:has(> td > div[style*='kod_klienta_podany_menu_lewe.jpg']) > td { padding:0 !important; }
 #responsive-category-panel div[style*='kod_klienta_podany_menu_lewe.jpg'] { display:grid; grid-template-columns:60px minmax(0,1fr); align-items:center; gap:12px; width:100% !important; max-width:500px; box-sizing:border-box; height:auto !important; margin:0 auto !important; padding:0 12px 12px !important; background-image:none !important; text-align:left; }
 #responsive-category-panel div[style*='kod_klienta_podany_menu_lewe.jpg']::before { content:'SYSTEM RABATOWY'; grid-column:1 / -1; margin:0 -12px; padding:6px 10px; background:#18335f; color:#fff; font:700 14px/1.4 Cambay,Arial,sans-serif; text-align:left; }
 #responsive-category-panel div[style*='kod_klienta_podany_menu_lewe.jpg'] > div { float:none !important; width:auto !important; min-width:0; margin:0 !important; padding:0 !important; }
 #responsive-category-panel div[style*='kod_klienta_podany_menu_lewe.jpg'] > div[style*='clear'] { display:none; }
 #responsive-category-panel div[style*='kod_klienta_podany_menu_lewe.jpg'] > div > img { display:block; max-width:100%; height:auto; margin:0; }
 #responsive-category-panel div[style*='kod_klienta_podany_menu_lewe.jpg'] > div[style*='float:right'] { font:400 16px/1.5 Cambay,Arial,sans-serif; overflow-wrap:anywhere; }
 #responsive-category-panel div[style*='kod_klienta_podany_menu_lewe.jpg'] > div[style*='float:right'] img { max-width:100%; height:auto; }
 #responsive-category-panel div[style*='kod_klienta_podany_menu_lewe.jpg'] a { display:flex; justify-content:center; align-items:center; gap:6px; min-height:44px; padding:8px 0; box-sizing:border-box; }
 #responsive-category-panel div[style*='kod_klienta_podany_menu_lewe.jpg'] a img { width:10px; height:10px; margin:0; }
 #trescSrodek:has(#formTestKodRabat), #trescSrodek:has(#formTestKodRabat) > tbody, #trescSrodek:has(#formTestKodRabat) > tbody > tr, #trescSrodek:has(#formTestKodRabat) > tbody > tr > td,
 #trescSrodek:has(#formTestKodRabat) table:not(.simple_overlay table), #trescSrodek:has(#formTestKodRabat) tbody:not(.simple_overlay tbody), #trescSrodek:has(#formTestKodRabat) tr:not(.simple_overlay tr),
 #trescSrodek:has(#formTestKodRabat) td:not(.simple_overlay td):not([style*='display:none']):not([style*='display: none']) { display:block; width:100% !important; max-width:100%; min-width:0; height:auto !important; box-sizing:border-box; }
 #trescSrodek:has(#formTestKodRabat) td:not(.simple_overlay td) { padding-left:0; padding-right:0; line-height:1.5; }
 #trescSrodek:has(#formTestKodRabat) td:has(> #infoKodRabatLoader:empty) { display:none !important; }
 #trescSrodek:has(#formTestKodRabat) div[style*='60px'] { width:100%; margin:16px 0 !important; text-align:left; font:400 16px/1.5 Cambay,Arial,sans-serif; }
 #trescSrodek:has(#formTestKodRabat) h2 { margin:16px 0; font:700 20px/1.35 Cambay,Arial,sans-serif; }
 #trescSrodek:has(#formTestKodRabat) #formTestKodRabat { width:100%; margin:0; }
 #trescSrodek:has(#formTestKodRabat) #formTestKodRabat #kod_rabat { display:block; width:100% !important; max-width:320px; height:44px !important; margin:8px auto 12px; padding:8px; box-sizing:border-box; font-size:16px !important; }
 #trescSrodek:has(#formTestKodRabat) #formTestKodRabat input[type='image'] { display:block; max-width:100%; min-height:44px; height:44px; width:205px; object-fit:contain; margin:0 auto 12px; }
 #trescSrodek:has(#formTestKodRabat) .infoPrzypomnijIDklienta { width:100% !important; max-width:100%; height:auto !important; min-height:44px; padding:10px 10px 10px 32px; margin:16px 0 !important; box-sizing:border-box; white-space:normal; line-height:1.5; text-align:left; }
 #trescSrodek:has(#formTestKodRabat) .pokaz_form_kod_rabatowy { height:auto !important; min-height:44px; }
 #trescSrodek:has(#formTestKodRabat) hr { margin:16px 0; }
}

/* Leave room below phone footer links for the fixed chat and call buttons. */
@media screen and (max-width:600px) {
 body { padding-bottom:calc(60px + env(safe-area-inset-bottom,0px)); }
}
