.elementor-150 .elementor-element.elementor-element-fa200010{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--flex-wrap:nowrap;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#E8E4F2;--border-color:#E8E4F2;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:10px;--padding-bottom:10px;--padding-left:24px;--padding-right:24px;}.elementor-150 .elementor-element.elementor-element-fa200010:not(.elementor-motion-effects-element-type-background), .elementor-150 .elementor-element.elementor-element-fa200010 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-150 .elementor-element.elementor-element-fa200021 img{width:83px;}.elementor-150 .elementor-element.elementor-element-fa200040{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-150 .elementor-element.elementor-element-fa200040.e-con{--flex-grow:1;--flex-shrink:1;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-150 .elementor-element.elementor-element-fa200022 .elementor-heading-title{font-size:15px;font-weight:800;line-height:1.3em;color:var( --e-global-color-primary );}.elementor-150 .elementor-element.elementor-element-fa200030{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:6px 6px;--row-gap:6px;--column-gap:6px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-150 .elementor-element.elementor-element-fa200030.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-150 .elementor-element.elementor-element-178976ca .elementor-menu-toggle{margin:0 auto;}.elementor-150 .elementor-element.elementor-element-fa200032{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-150 .elementor-element.elementor-element-fa200033{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 10px;}.elementor-150 .elementor-element.elementor-element-fa200033 .elementor-icon-wrapper{text-align:center;}.elementor-150 .elementor-element.elementor-element-fa200033.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-150 .elementor-element.elementor-element-fa200033.elementor-view-framed .elementor-icon, .elementor-150 .elementor-element.elementor-element-fa200033.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-150 .elementor-element.elementor-element-fa200033.elementor-view-framed .elementor-icon, .elementor-150 .elementor-element.elementor-element-fa200033.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-150 .elementor-element.elementor-element-fa200033 .elementor-icon{font-size:14px;}.elementor-150 .elementor-element.elementor-element-fa200033 .elementor-icon svg{height:14px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-150 .elementor-element.elementor-element-fa200040{--width:auto;}.elementor-150 .elementor-element.elementor-element-fa200030{--width:auto;}}@media(max-width:1024px) and (min-width:768px){.elementor-150 .elementor-element.elementor-element-fa200010{--width:100%;}}@media(max-width:1024px){.elementor-150 .elementor-element.elementor-element-fa200010{--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}}@media(max-width:767px){.elementor-150 .elementor-element.elementor-element-fa200010{--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:10px;--padding-bottom:10px;--padding-left:16px;--padding-right:16px;}.elementor-150 .elementor-element.elementor-element-fa200021 img{width:75px;}.elementor-150 .elementor-element.elementor-element-fa200040{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:6px 6px;--row-gap:6px;--column-gap:6px;}.elementor-150 .elementor-element.elementor-element-fa200022 .elementor-heading-title{font-size:13px;}.elementor-150 .elementor-element.elementor-element-fa200030{--gap:8px 8px;--row-gap:8px;--column-gap:8px;}}/* Start custom CSS for image, class: .elementor-element-fa200021 *//* Godło nie może się zwężać przy ciasnym pasku — inaczej traci proporcje. */
.elementor-150 .elementor-element.elementor-element-fa200021, .elementor-150 .elementor-element.elementor-element-fa200021 img { flex-shrink: 0; }
.elementor-150 .elementor-element.elementor-element-fa200021 img { height: auto; }/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-178976ca *//*
 * Widget Menu ma własny arkusz, który wchodzi po motywie, dlatego selektory
 * schodzą tu do konkretnego odnośnika. Typografia i stany menu żyją w tym
 * miejscu, bo panel Styl widgetu nie obsługuje wszystkich tych przypadków.
 */
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu .elementor-item {
	font-family: var(--e-global-typography-text-font-family, 'Nunito'), sans-serif;
	font-weight: 600;
	color: var(--e-global-color-text, #161b2b);
}

/*
 * Sześć pozycji najwyższego poziomu musi zmieścić się w jednym wierszu obok
 * godła, nazwy szkoły i przycisku.
 */
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-nav-menu {
	flex-wrap: nowrap;
}

.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item {
	font-size: 0.875rem;
	padding: 12px 9px;
	white-space: nowrap;
}

/*
 * Elementor daje widgetowi pełną szerokość kontenera. W pasku nagłówka musi
 * mieć szerokość własnej listy, inaczej nawigacja nie potrafi zażądać miejsca,
 * którego naprawdę potrzebuje.
 */
.elementor-150 .elementor-element.elementor-element-178976ca {
	width: auto;
}

/* Stany i wskaźnik pozycji — arkusz widgetu narzuca tu własne kolory. */
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item:hover,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item:focus,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item.elementor-item-active,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item.highlighted {
	color: var(--e-global-color-primary, #4e308c);
}

.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-item::before,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-item::after {
	background-color: var(--e-global-color-primary, #4e308c);
}

/* Panel podmenu powtarza wygląd karty, żeby menu nie odstawało od reszty. */
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown {
	background-color: #ffffff;
	border-radius: 16px;
	box-shadow: 0 12px 32px rgba(22, 27, 43, 0.1);
	overflow: hidden;
}

/*
 * Bez tego selektora podmenu dziedziczy typografię akcentową zestawu stylów
 * i wyświetla się odręcznym Caveatem. Ma być identyczna z menu głównym.
 */
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a {
	font-family: var(--e-global-typography-text-font-family, 'Nunito'), sans-serif;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--e-global-color-text, #161b2b);
}

.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a:hover,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a:focus,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a.elementor-item-active,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a.highlighted {
	background-color: var(--e-global-color-liliowy, #f5f4fe);
	color: var(--e-global-color-primary, #4e308c);
}

.elementor-150 .elementor-element.elementor-element-178976ca .elementor-menu-toggle {
	color: var(--e-global-color-primary, #4e308c);
	background-color: transparent;
}

/*
 * Poniżej 1024 px menu zwija się do hamburgera. Panel brałby szerokość po
 * wąskim widgecie i pozycje łamałyby się po kilka znaków, dlatego zakotwiczamy
 * go w pasku nagłówka i rozciągamy na całą jego szerokość.
 */
@media (max-width: 1024px) {
	.elementor-150 .elementor-element.elementor-element-178976ca { position: static; }

	.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown.elementor-nav-menu__container {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		width: auto;
		margin-top: 0;
		z-index: 100;
		border-radius: 0 0 16px 16px;
	}
}

/*
 * Na telefonie w pasku zostaje sam hamburger, więc dosuwamy go do prawej
 * krawędzi widgetu, żeby stał przy przycisku, a nie pośrodku pustego pola.
 */
@media (max-width: 767px) {
	.elementor-150 .elementor-element.elementor-element-178976ca { gap: 0; }
	.elementor-150 .elementor-element.elementor-element-178976ca .elementor-menu-toggle { margin-inline: auto 0; }
}
/*
 * Odnośniki wychodzące poza serwis (mają target="_blank") odróżniają się
 * od stron witryny stałym tłem. Dotyczy podmenu na szerokim ekranie i panelu
 * po zwinięciu menu do hamburgera.
 */
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-item[target="_blank"],
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-item[target="_blank"]:hover,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-item[target="_blank"]:focus,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-item[target="_blank"].elementor-item-active,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-item[target="_blank"].highlighted,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a[target="_blank"],
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a[target="_blank"]:hover,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a[target="_blank"]:focus,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a[target="_blank"].elementor-item-active,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--dropdown a[target="_blank"].highlighted {
	background-color: #4e308c;
	color: #ffffff;
}

.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-item[target="_blank"]::before,
.elementor-150 .elementor-element.elementor-element-178976ca .elementor-nav-menu--main .elementor-item[target="_blank"]::after {
	background-color: #ffffff;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-fa200032 */.elementor-150 .elementor-element.elementor-element-fa200032 {
	width: auto;
	flex-shrink: 0;
}

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz { position: relative; }

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__pasek {
	display: inline-flex;
	align-items: stretch;
	background-color: #fcf286;
	border-radius: 999px;
	color: #4e308c;
}

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__pasek:hover,
.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__pasek:focus-within {
	background-color: #fbee60;
}

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__link {
	display: flex;
	align-items: center;
	padding: 10px 4px 10px 20px;
	font-family: Nunito, sans-serif;
	font-weight: 700;
	font-size: 15px;
	line-height: 1.2;
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
}

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__rozwin {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0 14px 0 6px;
	border: 0;
	background: transparent;
	color: inherit;
	cursor: pointer;
	border-radius: 0 999px 999px 0;
}

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__rozwin svg { display: block; transition: transform 0.15s ease; }
.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__rozwin[aria-expanded="true"] svg { transform: rotate(180deg); }

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__link:focus-visible,
.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__rozwin:focus-visible {
	outline: 2px solid #4e308c;
	outline-offset: 3px;
	border-radius: 999px;
}

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__lista {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	z-index: 200;
	display: flex;
	flex-direction: column;
	min-width: 17rem;
	max-width: min(22rem, calc(100vw - 2rem));
	margin: 0;
	padding: 8px;
	list-style: none;
	background-color: #ffffff;
	border-radius: 16px;
	box-shadow: 0 12px 32px rgba(22, 27, 43, 0.1);
}

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__lista[hidden] { display: none; }

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__lista a {
	display: block;
	padding: 10px 12px;
	border-radius: 10px;
	font-family: Nunito, sans-serif;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.35;
	color: #161b2b;
	text-decoration: none;
}

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__lista a:hover,
.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__lista a:focus,
.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__lista a[aria-current="page"] {
	background-color: #f5f4fe;
	color: #4e308c;
}

@media (max-width: 767px) {
	.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__link {
		font-size: 13px;
		padding: 8px 2px 8px 14px;
	}
	.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz__rozwin { padding: 0 12px 0 4px; }
}

.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz:hover::after,
.elementor-150 .elementor-element.elementor-element-fa200032 .dolacz:focus-within::after {
	content: "";
	position: absolute;
	z-index: 199;
	top: 100%;
	right: 0;
	width: max(100%, 17rem);
	height: 10px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fa200030 *//*
 * Rozwijane menu ma sięgać krawędzi paska nagłówka, dlatego ten kontener nie
 * może być dla niego punktem zaczepienia.
 */
@media (max-width: 1024px) {
	.elementor-150 .elementor-element.elementor-element-fa200030 { position: static; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fa200040 *//*
 * Rozwijane menu ma sięgać krawędzi paska nagłówka, dlatego ten kontener nie
 * może być dla niego punktem zaczepienia.
 */
@media (max-width: 1024px) {
	.elementor-150 .elementor-element.elementor-element-fa200040 { position: static; }
}/* End custom CSS */