/*
Theme Name: childcodex
Description: Motyw potomny Jupiter X dla serwisantkomputerowy.pl. Tresc i layout pozostaja w Elementorze i Jupiter X.
Template: jupiterx
Version: 1.0.2
Text Domain: childcodex
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
﻿/* Codex: place mobile call widget below the active header, aligned with its right controls. */

/* Header 5jezyki: compact language chooser in the phone-only upper row. */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20001 {
    position: relative;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle {
    text-align: left;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle-button {
    min-width: 82px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10647 .elementor-element-a5b20003 .toggle-button-custom i {
    display: none;
  }
  .elementor-10647 .elementor-element-a5b20003 .toggle-button-custom::before {
    content: "🌐  PL  ▾";
    color: #111;
    font: 600 13px/18px Inter, sans-serif;
    white-space: nowrap;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile {
    left: 0;
    right: auto;
    width: 180px;
    z-index: 10020;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile .raven-container {
    padding: 0;
  }
}

/* Show the language label itself as the phone dropdown trigger (not a second hamburger). */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle,
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile {
    display: none !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main {
    display: block !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > .raven-adnav-menu {
    display: flex;
    margin: 0;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > .raven-adnav-menu > li > a {
    min-height: 32px;
    padding: 5px 8px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main ul.submenu {
    left: 0 !important;
    right: auto !important;
    min-width: 180px !important;
    z-index: 10020;
  }
}

/* Specificity override for Raven's later-loaded responsive visibility rules. */
@media (max-width: 767px) {
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 .raven-adnav-menu-toggle,
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 nav.raven-adnav-menu-mobile {
    display: none !important;
  }
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 nav.raven-adnav-menu-main.raven-adnav-menu-horizontal {
    display: block !important;
  }
}

/* Use local flag assets so the chooser does not depend on the external emoji CDN. */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20003 img.emoji {
    display: none !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > ul > li > a .link-label::before {
    content: "🌐";
    margin-right: 5px;
  }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu .link-label::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 14px;
    margin-right: 7px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    vertical-align: -2px;
  }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(1) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Poland_normative.svg.png"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(2) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Ukraine.svg.webp"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(3) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_the_United_Kingdom_1-2.svg.webp"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(4) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Russia.svg.webp"); }
}

/* Keep Raven's phone menu panel above its page overlay. */
@media (max-width: 767px) {
  html body .elementor-10647 .elementor-element.elementor-element-a5b20004 .raven-adnav-menu-mobile {
    z-index: 10050 !important;
    background: #fff;
  }
}

/* Mega menu "Nasze usługi" (szablon 10627) — kolor po najechaniu zgodny z pozostałymi
   rozwijanymi menu nagłówka (#0057B7). Widget nagłówka nie ma natywnego ustawienia hover. */
.elementor-element-6ee43498 .elementor-heading-title a {
  transition: color .15s ease;
}
.elementor-element-6ee43498 .elementor-heading-title a:hover,
.elementor-element-6ee43498 .elementor-heading-title a:focus {
  color: #0057B7;
}

/* MENU-SEPARATORY — cienkie kreski miedzy pozycjami menu glownego oraz
   podkreslenie strony, na ktorej klient aktualnie jest.
   Raven nie ma tych opcji natywnie. Dotyczy wylacznie menu poziomego,
   wiec wersja mobilna (rozwijana pionowo) pozostaje bez zmian. */
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item + li.menu-item {
  border-left: 1px solid #D8E6F2;
}
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.raven-menu-item.active-link,
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.is-current-page {
  box-shadow: inset 0 -3px 0 0 #0057B7;
}/*
Theme Name: childcodex
Description: Motyw potomny Jupiter X dla serwisantkomputerowy.pl. Tresc i layout pozostaja w Elementorze i Jupiter X.
Template: jupiterx
Version: 1.0.2
Text Domain: childcodex
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
﻿/* Codex: place mobile call widget below the active header, aligned with its right controls. */

/* Header 5jezyki: compact language chooser in the phone-only upper row. */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20001 {
    position: relative;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle {
    text-align: left;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle-button {
    min-width: 82px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10647 .elementor-element-a5b20003 .toggle-button-custom i {
    display: none;
  }
  .elementor-10647 .elementor-element-a5b20003 .toggle-button-custom::before {
    content: "🌐  PL  ▾";
    color: #111;
    font: 600 13px/18px Inter, sans-serif;
    white-space: nowrap;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile {
    left: 0;
    right: auto;
    width: 180px;
    z-index: 10020;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile .raven-container {
    padding: 0;
  }
}

/* Show the language label itself as the phone dropdown trigger (not a second hamburger). */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle,
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile {
    display: none !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main {
    display: block !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > .raven-adnav-menu {
    display: flex;
    margin: 0;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > .raven-adnav-menu > li > a {
    min-height: 32px;
    padding: 5px 8px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main ul.submenu {
    left: 0 !important;
    right: auto !important;
    min-width: 180px !important;
    z-index: 10020;
  }
}

/* Specificity override for Raven's later-loaded responsive visibility rules. */
@media (max-width: 767px) {
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 .raven-adnav-menu-toggle,
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 nav.raven-adnav-menu-mobile {
    display: none !important;
  }
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 nav.raven-adnav-menu-main.raven-adnav-menu-horizontal {
    display: block !important;
  }
}

/* Use local flag assets so the chooser does not depend on the external emoji CDN. */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20003 img.emoji {
    display: none !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > ul > li > a .link-label::before {
    content: "🌐";
    margin-right: 5px;
  }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu .link-label::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 14px;
    margin-right: 7px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    vertical-align: -2px;
  }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(1) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Poland_normative.svg.png"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(2) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Ukraine.svg.webp"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(3) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_the_United_Kingdom_1-2.svg.webp"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(4) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Russia.svg.webp"); }
}

/* Keep Raven's phone menu panel above its page overlay. */
@media (max-width: 767px) {
  html body .elementor-10647 .elementor-element.elementor-element-a5b20004 .raven-adnav-menu-mobile {
    z-index: 10050 !important;
    background: #fff;
  }
}

/* Mega menu "Nasze usługi" (szablon 10627) — kolor po najechaniu zgodny z pozostałymi
   rozwijanymi menu nagłówka (#0057B7). Widget nagłówka nie ma natywnego ustawienia hover. */
.elementor-element-6ee43498 .elementor-heading-title a {
  transition: color .15s ease;
}
.elementor-element-6ee43498 .elementor-heading-title a:hover,
.elementor-element-6ee43498 .elementor-heading-title a:focus {
  color: #0057B7;
}

/* MENU-SEPARATORY — cienkie kreski miedzy pozycjami menu glownego oraz
   podkreslenie strony, na ktorej klient aktualnie jest.
   Raven nie ma tych opcji natywnie. Dotyczy wylacznie menu poziomego,
   wiec wersja mobilna (rozwijana pionowo) pozostaje bez zmian. */
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item + li.menu-item {
  border-left: 1px solid #D8E6F2;
}
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.raven-menu-item.active-link,
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.is-current-page {
  position: relative;
}
/* Kreska rysowana pseudoelementem, a nie cieniem wewnetrznym - dzieki temu
   mozna ja odsunac od tekstu bez zmiany wysokosci pozycji menu. */
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.raven-menu-item.active-link::after,
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.is-current-page::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -7px;
  height: 3px;
  border-radius: 2px;
  background: #0057B7;
}

/*
Theme Name: childcodex
Description: Motyw potomny Jupiter X dla serwisantkomputerowy.pl. Tresc i layout pozostaja w Elementorze i Jupiter X.
Template: jupiterx
Version: 1.0.2
Text Domain: childcodex
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
﻿/* Codex: place mobile call widget below the active header, aligned with its right controls. */

/* Header 5jezyki: compact language chooser in the phone-only upper row. */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20001 {
    position: relative;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle {
    text-align: left;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle-button {
    min-width: 82px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10647 .elementor-element-a5b20003 .toggle-button-custom i {
    display: none;
  }
  .elementor-10647 .elementor-element-a5b20003 .toggle-button-custom::before {
    content: "🌐  PL  ▾";
    color: #111;
    font: 600 13px/18px Inter, sans-serif;
    white-space: nowrap;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile {
    left: 0;
    right: auto;
    width: 180px;
    z-index: 10020;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile .raven-container {
    padding: 0;
  }
}

/* Show the language label itself as the phone dropdown trigger (not a second hamburger). */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle,
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile {
    display: none !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main {
    display: block !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > .raven-adnav-menu {
    display: flex;
    margin: 0;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > .raven-adnav-menu > li > a {
    min-height: 32px;
    padding: 5px 8px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main ul.submenu {
    left: 0 !important;
    right: auto !important;
    min-width: 180px !important;
    z-index: 10020;
  }
}

/* Specificity override for Raven's later-loaded responsive visibility rules. */
@media (max-width: 767px) {
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 .raven-adnav-menu-toggle,
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 nav.raven-adnav-menu-mobile {
    display: none !important;
  }
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 nav.raven-adnav-menu-main.raven-adnav-menu-horizontal {
    display: block !important;
  }
}

/* Use local flag assets so the chooser does not depend on the external emoji CDN. */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20003 img.emoji {
    display: none !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > ul > li > a .link-label::before {
    content: "🌐";
    margin-right: 5px;
  }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu .link-label::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 14px;
    margin-right: 7px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    vertical-align: -2px;
  }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(1) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Poland_normative.svg.png"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(2) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Ukraine.svg.webp"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(3) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_the_United_Kingdom_1-2.svg.webp"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(4) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Russia.svg.webp"); }
}

/* Keep Raven's phone menu panel above its page overlay. */
@media (max-width: 767px) {
  html body .elementor-10647 .elementor-element.elementor-element-a5b20004 .raven-adnav-menu-mobile {
    z-index: 10050 !important;
    background: #fff;
  }
}

/* Mega menu "Nasze usługi" (szablon 10627) — kolor po najechaniu zgodny z pozostałymi
   rozwijanymi menu nagłówka (#0057B7). Widget nagłówka nie ma natywnego ustawienia hover. */
.elementor-element-6ee43498 .elementor-heading-title a {
  transition: color .15s ease;
}
.elementor-element-6ee43498 .elementor-heading-title a:hover,
.elementor-element-6ee43498 .elementor-heading-title a:focus {
  color: #0057B7;
}

/* MENU-SEPARATORY — cienkie kreski miedzy pozycjami menu glownego oraz
   podkreslenie strony, na ktorej klient aktualnie jest.
   Raven nie ma tych opcji natywnie. Dotyczy wylacznie menu poziomego,
   wiec wersja mobilna (rozwijana pionowo) pozostaje bez zmian. */
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item + li.menu-item {
  border-left: 1px solid #D8E6F2;
}
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.raven-menu-item.active-link,
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.is-current-page {
  box-shadow: inset 0 -3px 0 0 #0057B7;
}/*
Theme Name: childcodex
Description: Motyw potomny Jupiter X dla serwisantkomputerowy.pl. Tresc i layout pozostaja w Elementorze i Jupiter X.
Template: jupiterx
Version: 1.0.2
Text Domain: childcodex
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
﻿/* Codex: place mobile call widget below the active header, aligned with its right controls. */

/* Header 5jezyki: compact language chooser in the phone-only upper row. */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20001 {
    position: relative;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle {
    text-align: left;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle-button {
    min-width: 82px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10647 .elementor-element-a5b20003 .toggle-button-custom i {
    display: none;
  }
  .elementor-10647 .elementor-element-a5b20003 .toggle-button-custom::before {
    content: "🌐  PL  ▾";
    color: #111;
    font: 600 13px/18px Inter, sans-serif;
    white-space: nowrap;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile {
    left: 0;
    right: auto;
    width: 180px;
    z-index: 10020;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile .raven-container {
    padding: 0;
  }
}

/* Show the language label itself as the phone dropdown trigger (not a second hamburger). */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-toggle,
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-mobile {
    display: none !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main {
    display: block !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > .raven-adnav-menu {
    display: flex;
    margin: 0;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > .raven-adnav-menu > li > a {
    min-height: 32px;
    padding: 5px 8px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main ul.submenu {
    left: 0 !important;
    right: auto !important;
    min-width: 180px !important;
    z-index: 10020;
  }
}

/* Specificity override for Raven's later-loaded responsive visibility rules. */
@media (max-width: 767px) {
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 .raven-adnav-menu-toggle,
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 nav.raven-adnav-menu-mobile {
    display: none !important;
  }
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 nav.raven-adnav-menu-main.raven-adnav-menu-horizontal {
    display: block !important;
  }
}

/* Use local flag assets so the chooser does not depend on the external emoji CDN. */
@media (max-width: 767px) {
  .elementor-10647 .elementor-element-a5b20003 img.emoji {
    display: none !important;
  }
  .elementor-10647 .elementor-element-a5b20003 .raven-adnav-menu-main > ul > li > a .link-label::before {
    content: "🌐";
    margin-right: 5px;
  }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu .link-label::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 14px;
    margin-right: 7px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    vertical-align: -2px;
  }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(1) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Poland_normative.svg.png"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(2) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Ukraine.svg.webp"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(3) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_the_United_Kingdom_1-2.svg.webp"); }
  .elementor-10647 .elementor-element-a5b20003 ul.submenu > li:nth-child(4) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Russia.svg.webp"); }
}

/* Keep Raven's phone menu panel above its page overlay. */
@media (max-width: 767px) {
  html body .elementor-10647 .elementor-element.elementor-element-a5b20004 .raven-adnav-menu-mobile {
    z-index: 10050 !important;
    background: #fff;
  }
}

/* Mega menu "Nasze usługi" (szablon 10627) — kolor po najechaniu zgodny z pozostałymi
   rozwijanymi menu nagłówka (#0057B7). Widget nagłówka nie ma natywnego ustawienia hover. */
.elementor-element-6ee43498 .elementor-heading-title a {
  transition: color .15s ease;
}
.elementor-element-6ee43498 .elementor-heading-title a:hover,
.elementor-element-6ee43498 .elementor-heading-title a:focus {
  color: #0057B7;
}

/* MENU-SEPARATORY — cienkie kreski miedzy pozycjami menu glownego oraz
   podkreslenie strony, na ktorej klient aktualnie jest.
   Raven nie ma tych opcji natywnie. Dotyczy wylacznie menu poziomego,
   wiec wersja mobilna (rozwijana pionowo) pozostaje bez zmian. */
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item + li.menu-item {
  border-left: 1px solid #D8E6F2;
}
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.raven-menu-item.active-link,
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.is-current-page {
  position: relative;
}
/* Kreska rysowana pseudoelementem, a nie cieniem wewnetrznym - dzieki temu
   mozna ja odsunac od tekstu bez zmiany wysokosci pozycji menu. */
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.raven-menu-item.active-link::after,
nav.raven-adnav-menu-horizontal > ul.raven-adnav-menu > li.menu-item > a.is-current-page::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -7px;
  height: 3px;
  border-radius: 2px;
  background: #0057B7;
}

/* TELEFON-NAGLOWEK — numer ma zostac w jednej linii i nie lamac sie
   przy weszszych ekranach; ikona wyrownana do tekstu. */
.elementor-widget-heading .elementor-heading-title a[href^="tel:"],
.elementor-widget-heading .elementor-heading-title[class] a[href^="tel:"] {
  white-space: nowrap;
}
.elementor-widget-heading a[href^="tel:"] i {
  font-size: 0.9em;
  vertical-align: baseline;
}

/* LANG-DROPDOWN-LEFT (2026-09-25) — naglowek 5jezyki, telefon: lista jezykow
   rozwija sie w lewo (prawa krawedz panelu = prawa krawedz przycisku PL),
   zeby nie wychodzila poza prawa krawedz ekranu. */
@media (max-width: 767px) {
  html body .elementor-10647 .elementor-element.elementor-element-a5b20003 .raven-adnav-menu-main ul.submenu {
    left: auto !important;
    right: 0 !important;
  }
}

/* LANG-CHIP-UKR-RUS-ENG (2026-09-25) — kopia stylu przelacznika jezyka z 5jezyki (PL, 10647)
   dla wersji UKR 10792, RUS 10822, ENG 10826; lista rozwija sie w lewo. */
/* Header 5jezyki UA: compact language chooser in the phone-only upper row. */
@media (max-width: 767px) {
  .elementor-10792 .elementor-element-a5b20001 {
    position: relative;
  }
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-toggle {
    text-align: left;
  }
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-toggle-button {
    min-width: 82px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10792 .elementor-element-3153ecd4 .toggle-button-custom i {
    display: none;
  }
  .elementor-10792 .elementor-element-3153ecd4 .toggle-button-custom::before {
    content: "🌐  UA  ▾";
    color: #111;
    font: 600 13px/18px Inter, sans-serif;
    white-space: nowrap;
  }
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-mobile {
    left: 0;
    right: auto;
    width: 180px;
    z-index: 10020;
  }
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-mobile .raven-container {
    padding: 0;
  }
}

/* Show the language label itself as the phone dropdown trigger (not a second hamburger). */
@media (max-width: 767px) {
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-toggle,
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-mobile {
    display: none !important;
  }
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-main {
    display: block !important;
  }
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-main > .raven-adnav-menu {
    display: flex;
    margin: 0;
  }
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-main > .raven-adnav-menu > li > a {
    min-height: 32px;
    padding: 5px 8px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-main ul.submenu {
    left: 0 !important;
    right: auto !important;
    min-width: 180px !important;
    z-index: 10020;
  }
}

/* Specificity override for Raven's later-loaded responsive visibility rules. */
@media (max-width: 767px) {
  html body .elementor-10792 .elementor-element.elementor-element-3153ecd4 .raven-adnav-menu-toggle,
  html body .elementor-10792 .elementor-element.elementor-element-3153ecd4 nav.raven-adnav-menu-mobile {
    display: none !important;
  }
  html body .elementor-10792 .elementor-element.elementor-element-3153ecd4 nav.raven-adnav-menu-main.raven-adnav-menu-horizontal {
    display: block !important;
  }
}

/* Use local flag assets so the chooser does not depend on the external emoji CDN. */
@media (max-width: 767px) {
  .elementor-10792 .elementor-element-3153ecd4 img.emoji {
    display: none !important;
  }
  .elementor-10792 .elementor-element-3153ecd4 .raven-adnav-menu-main > ul > li > a .link-label::before {
    content: "🌐";
    margin-right: 5px;
  }
  .elementor-10792 .elementor-element-3153ecd4 ul.submenu .link-label::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 14px;
    margin-right: 7px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    vertical-align: -2px;
  }
  .elementor-10792 .elementor-element-3153ecd4 ul.submenu > li:nth-child(1) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Poland_normative.svg.png"); }
  .elementor-10792 .elementor-element-3153ecd4 ul.submenu > li:nth-child(2) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Ukraine.svg.webp"); }
  .elementor-10792 .elementor-element-3153ecd4 ul.submenu > li:nth-child(3) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_the_United_Kingdom_1-2.svg.webp"); }
  .elementor-10792 .elementor-element-3153ecd4 ul.submenu > li:nth-child(4) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Russia.svg.webp"); }
}

/* Keep Raven's phone menu panel above its page overlay. */
@media (max-width: 767px) {
  html body .elementor-10792 .elementor-element.elementor-element-a5b20004 .raven-adnav-menu-mobile {
    z-index: 10050 !important;
    background: #fff;
  }
}

@media (max-width: 767px) {
  html body .elementor-10792 .elementor-element.elementor-element-3153ecd4 .raven-adnav-menu-main ul.submenu {
    left: auto !important;
    right: 0 !important;
  }
}
/* Header 5jezyki RU: compact language chooser in the phone-only upper row. */
@media (max-width: 767px) {
  .elementor-10822 .elementor-element-a5b20001 {
    position: relative;
  }
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-toggle {
    text-align: left;
  }
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-toggle-button {
    min-width: 82px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10822 .elementor-element-317397a6 .toggle-button-custom i {
    display: none;
  }
  .elementor-10822 .elementor-element-317397a6 .toggle-button-custom::before {
    content: "🌐  RU  ▾";
    color: #111;
    font: 600 13px/18px Inter, sans-serif;
    white-space: nowrap;
  }
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-mobile {
    left: 0;
    right: auto;
    width: 180px;
    z-index: 10020;
  }
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-mobile .raven-container {
    padding: 0;
  }
}

/* Show the language label itself as the phone dropdown trigger (not a second hamburger). */
@media (max-width: 767px) {
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-toggle,
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-mobile {
    display: none !important;
  }
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-main {
    display: block !important;
  }
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-main > .raven-adnav-menu {
    display: flex;
    margin: 0;
  }
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-main > .raven-adnav-menu > li > a {
    min-height: 32px;
    padding: 5px 8px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-main ul.submenu {
    left: 0 !important;
    right: auto !important;
    min-width: 180px !important;
    z-index: 10020;
  }
}

/* Specificity override for Raven's later-loaded responsive visibility rules. */
@media (max-width: 767px) {
  html body .elementor-10822 .elementor-element.elementor-element-317397a6 .raven-adnav-menu-toggle,
  html body .elementor-10822 .elementor-element.elementor-element-317397a6 nav.raven-adnav-menu-mobile {
    display: none !important;
  }
  html body .elementor-10822 .elementor-element.elementor-element-317397a6 nav.raven-adnav-menu-main.raven-adnav-menu-horizontal {
    display: block !important;
  }
}

/* Use local flag assets so the chooser does not depend on the external emoji CDN. */
@media (max-width: 767px) {
  .elementor-10822 .elementor-element-317397a6 img.emoji {
    display: none !important;
  }
  .elementor-10822 .elementor-element-317397a6 .raven-adnav-menu-main > ul > li > a .link-label::before {
    content: "🌐";
    margin-right: 5px;
  }
  .elementor-10822 .elementor-element-317397a6 ul.submenu .link-label::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 14px;
    margin-right: 7px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    vertical-align: -2px;
  }
  .elementor-10822 .elementor-element-317397a6 ul.submenu > li:nth-child(1) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Poland_normative.svg.png"); }
  .elementor-10822 .elementor-element-317397a6 ul.submenu > li:nth-child(2) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Ukraine.svg.webp"); }
  .elementor-10822 .elementor-element-317397a6 ul.submenu > li:nth-child(3) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_the_United_Kingdom_1-2.svg.webp"); }
  .elementor-10822 .elementor-element-317397a6 ul.submenu > li:nth-child(4) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Russia.svg.webp"); }
}

/* Keep Raven's phone menu panel above its page overlay. */
@media (max-width: 767px) {
  html body .elementor-10822 .elementor-element.elementor-element-a5b20004 .raven-adnav-menu-mobile {
    z-index: 10050 !important;
    background: #fff;
  }
}

@media (max-width: 767px) {
  html body .elementor-10822 .elementor-element.elementor-element-317397a6 .raven-adnav-menu-main ul.submenu {
    left: auto !important;
    right: 0 !important;
  }
}
/* Header 5jezyki EN: compact language chooser in the phone-only upper row. */
@media (max-width: 767px) {
  .elementor-10826 .elementor-element-a5b20001 {
    position: relative;
  }
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-toggle {
    text-align: left;
  }
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-toggle-button {
    min-width: 82px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10826 .elementor-element-7c9aa89a .toggle-button-custom i {
    display: none;
  }
  .elementor-10826 .elementor-element-7c9aa89a .toggle-button-custom::before {
    content: "🌐  EN  ▾";
    color: #111;
    font: 600 13px/18px Inter, sans-serif;
    white-space: nowrap;
  }
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-mobile {
    left: 0;
    right: auto;
    width: 180px;
    z-index: 10020;
  }
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-mobile .raven-container {
    padding: 0;
  }
}

/* Show the language label itself as the phone dropdown trigger (not a second hamburger). */
@media (max-width: 767px) {
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-toggle,
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-mobile {
    display: none !important;
  }
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-main {
    display: block !important;
  }
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-main > .raven-adnav-menu {
    display: flex;
    margin: 0;
  }
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-main > .raven-adnav-menu > li > a {
    min-height: 32px;
    padding: 5px 8px;
    border-radius: 7px;
    background: #f3f7fc;
  }
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-main ul.submenu {
    left: 0 !important;
    right: auto !important;
    min-width: 180px !important;
    z-index: 10020;
  }
}

/* Specificity override for Raven's later-loaded responsive visibility rules. */
@media (max-width: 767px) {
  html body .elementor-10826 .elementor-element.elementor-element-7c9aa89a .raven-adnav-menu-toggle,
  html body .elementor-10826 .elementor-element.elementor-element-7c9aa89a nav.raven-adnav-menu-mobile {
    display: none !important;
  }
  html body .elementor-10826 .elementor-element.elementor-element-7c9aa89a nav.raven-adnav-menu-main.raven-adnav-menu-horizontal {
    display: block !important;
  }
}

/* Use local flag assets so the chooser does not depend on the external emoji CDN. */
@media (max-width: 767px) {
  .elementor-10826 .elementor-element-7c9aa89a img.emoji {
    display: none !important;
  }
  .elementor-10826 .elementor-element-7c9aa89a .raven-adnav-menu-main > ul > li > a .link-label::before {
    content: "🌐";
    margin-right: 5px;
  }
  .elementor-10826 .elementor-element-7c9aa89a ul.submenu .link-label::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 14px;
    margin-right: 7px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    vertical-align: -2px;
  }
  .elementor-10826 .elementor-element-7c9aa89a ul.submenu > li:nth-child(1) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Poland_normative.svg.png"); }
  .elementor-10826 .elementor-element-7c9aa89a ul.submenu > li:nth-child(2) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Ukraine.svg.webp"); }
  .elementor-10826 .elementor-element-7c9aa89a ul.submenu > li:nth-child(3) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_the_United_Kingdom_1-2.svg.webp"); }
  .elementor-10826 .elementor-element-7c9aa89a ul.submenu > li:nth-child(4) .link-label::before { background-image: url("/wp-content/uploads/2026/04/Flag_of_Russia.svg.webp"); }
}

/* Keep Raven's phone menu panel above its page overlay. */
@media (max-width: 767px) {
  html body .elementor-10826 .elementor-element.elementor-element-a5b20004 .raven-adnav-menu-mobile {
    z-index: 10050 !important;
    background: #fff;
  }
}

@media (max-width: 767px) {
  html body .elementor-10826 .elementor-element.elementor-element-7c9aa89a .raven-adnav-menu-main ul.submenu {
    left: auto !important;
    right: 0 !important;
  }
}

/* LANG-CHIP-LABELS (2026-09-25) — w UKR/RUS/ENG przycisk pokazuje kod biezacego jezyka,
   a nie tekst pozycji menu ("PL"), ktora jest wspolna dla wszystkich wersji. */
@media (max-width: 767px) {
  html body .elementor-10792 .elementor-element.elementor-element-3153ecd4 .raven-adnav-menu-main > ul > li > a .link-label { font-size: 0 !important; }
  html body .elementor-10792 .elementor-element.elementor-element-3153ecd4 .raven-adnav-menu-main > ul > li > a .link-label::before { font-size: 13px; }
  html body .elementor-10792 .elementor-element.elementor-element-3153ecd4 .raven-adnav-menu-main > ul > li > a .link-label::after { content: "UA"; font: 600 13px/18px Inter, sans-serif; color: #111; }
  html body .elementor-10822 .elementor-element.elementor-element-317397a6 .raven-adnav-menu-main > ul > li > a .link-label { font-size: 0 !important; }
  html body .elementor-10822 .elementor-element.elementor-element-317397a6 .raven-adnav-menu-main > ul > li > a .link-label::before { font-size: 13px; }
  html body .elementor-10822 .elementor-element.elementor-element-317397a6 .raven-adnav-menu-main > ul > li > a .link-label::after { content: "RU"; font: 600 13px/18px Inter, sans-serif; color: #111; }
  html body .elementor-10826 .elementor-element.elementor-element-7c9aa89a .raven-adnav-menu-main > ul > li > a .link-label { font-size: 0 !important; }
  html body .elementor-10826 .elementor-element.elementor-element-7c9aa89a .raven-adnav-menu-main > ul > li > a .link-label::before { font-size: 13px; }
  html body .elementor-10826 .elementor-element.elementor-element-7c9aa89a .raven-adnav-menu-main > ul > li > a .link-label::after { content: "EN"; font: 600 13px/18px Inter, sans-serif; color: #111; }
}

/* BTN-NARROW-CYR (2026-09-25) — UKR/RUS: na najwezszych telefonach (<=380px) dwa przyciski
   z dluzszymi slowami cyrylica ("СУПЕР ЭКСПРЕСС", "Удалённая помощь") stykaly sie. */
@media (max-width: 380px) {
  html body .elementor-10792 .elementor-element.elementor-element-6c071c1d .elementor-button,
  html body .elementor-10792 .elementor-element.elementor-element-38f69eb4 .elementor-button,
  html body .elementor-10822 .elementor-element.elementor-element-4e5573dd .elementor-button,
  html body .elementor-10822 .elementor-element.elementor-element-59f3f2ae .elementor-button {
    font-size: 9px;
    padding-left: 2px;
    padding-right: 2px;
  }
}

/* ==========================================================================
   Stopka — szablon Elementora "Stopka" (ID 10740). Dodane 2026-09-26.
   Reszta zmian (siatka, odstepy, tla, etykiety) siedzi w _elementor_data;
   tutaj tylko to, czego Elementor nie potrafi ustawic dla tresci HTML.
   ========================================================================== */

/* Linki dziedziczyly domyslny niebieski motywu — na granacie #12203A
   kontrast byl ponizej progu WCAG AA. */
.elementor-10740 .elementor-widget-text-editor a,
.elementor-10740 .elementor-widget-accordion a {
  color: #C7D2E4;
  text-decoration: none;
  transition: color .15s ease;
}
.elementor-10740 .elementor-widget-text-editor a:hover,
.elementor-10740 .elementor-widget-text-editor a:focus-visible,
.elementor-10740 .elementor-widget-accordion a:hover,
.elementor-10740 .elementor-widget-accordion a:focus-visible {
  color: #FFFFFF;
}

/* Jasny pasek CTA nad stopka ma wlasne, ciemne tlo. */
.elementor-10740 .elementor-element-2e9415f a {
  color: #1E2A3D;
}

/* Strzalki listy: wczesniej znak "›" byl wpisany w tresc kazdej pozycji. */
.elementor-10740 .fx-li > a {
  position: relative;
  display: inline-block;
  padding-left: 13px;
}
.elementor-10740 .fx-li > a::before {
  content: "\203A";
  position: absolute;
  left: 0;
  top: 0;
  color: #4C6088;
  transition: color .15s ease, transform .15s ease;
}
.elementor-10740 .fx-li > a:hover::before,
.elementor-10740 .fx-li > a:focus-visible::before {
  color: #6EA8FF;
  transform: translateX(2px);
}

/* Telefon jako glowny punkt kontaktu, nie wtopiony w akapit z adresem. */
.elementor-10740 .elementor-widget-text-editor a.fx-tel {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.2;
  color: #FFFFFF;
  letter-spacing: .2px;
}
.elementor-10740 .elementor-widget-text-editor a.fx-tel:hover,
.elementor-10740 .elementor-widget-text-editor a.fx-tel:focus-visible {
  color: #6EA8FF;
}

/* Kolumny nie moga sie rozpychac ponad przydzielona szerokosc — bez min-width:0
   element flex nie zejdzie ponizej szerokosci swojej najdluzszej tresci. */
.elementor-10740 .elementor-element-68de2de > .e-con,
.elementor-10740 .elementor-element-68de2de > .elementor-element {
  min-width: 0;
}

/* Mapka dojazdu (kolumna 2). */
.elementor-10740 .elementor-widget-google_maps .elementor-custom-embed {
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .10);
  line-height: 0;
}
.elementor-10740 .elementor-widget-google_maps iframe {
  filter: grayscale(.35) contrast(.95);
}

/* Dzielnice: siatka grup zamiast `column-count`, ktory rozrywal grupe tak, ze
   kolumna potrafila zaczynac sie od osiedli bez naglowka nad nimi. */
/* 5 kolumn: pierwsza to naglowek sekcji, kolejne cztery to grupy osiedli.
   Naglowek jako komorka siatki nie zajmuje wlasnego rzedu, wiec caly dolny blok
   jest nizszy - a tekst miesci sie w pionie kolumny obok najdluzszej listy. */
.elementor-10740 .fx-districts {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px 28px;
}
.elementor-10740 .fx-districts .fx-group > h4:first-child {
  margin-top: 0;
}
.elementor-10740 .fx-districts-title p {
  margin: 0;
  color: #8FA3C4;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
}
@media (max-width: 1024px) {
  .elementor-10740 .fx-districts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .elementor-10740 .fx-districts { grid-template-columns: 1fr; }
}

/* Bloki maja teraz wspolne tlo, wiec rozdziela je linia, a nie zmiana koloru. */
.elementor-10740 .elementor-element-6620735 {
  border-top: 1px solid rgba(255, 255, 255, .08);
}

/* Pasek prawny: dwie kolumny do krawedzi, na telefonie jedna pod druga. */
.elementor-10740 .elementor-element-eec15b3 {
  align-items: center;
}
@media (max-width: 767px) {
  .elementor-10740 .elementor-element-eec15b3 {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }
  .elementor-10740 .elementor-element-e8bcea6,
  .elementor-10740 .elementor-element-85fddfa,
  .elementor-10740 .elementor-element-18b5c59 {
    width: 100%;
  }
}

/* Strony dzielnicowe – ciekawostki (klasa cie-img w widgetach Obraz): figura z podpisem ma szerokość kolumny,
   żeby pionowe zdjęcia wypełniały kafel jak poziome. Do usunięcia razem z klasą cie-img. */
.cie-img figure.wp-caption,
.cie-img figure.wp-caption > a {
  display: block;
  width: 100%;
}
