#sp-header {
	height: 80px;
	padding-top: 10px;
}
/* title header effect end */
header.header-sticky .logo img {
	transform: scale(0.8);
	transition: transform 0.3s ease-in-out;
}
/* articles */
/* header */
.sp-page-title {
	background: linear-gradient(
		45deg,
		rgba(0, 122, 204, 0.95) 46%,
		white 46%,
		white calc(46% + 6px),
		rgba(238, 238, 238, 0.7) calc(46% + 4px)
	);
}
/* date */

.published,
.sppb-meta-date {
	font-size: 28px;
	font-weight: bold;
	color: #fff;
	--r: 0.8em;
	position: absolute;
	left: 20px;
	top: calc(-1 * var(--r));
	border-inline: 0.5em solid #0000;
	padding: 0.5em 0.2em calc(var(--r) + 0.2em);
	clip-path: polygon(
		0 0,
		100% 0,
		100% 100%,
		calc(100% - 0.5em) calc(100% - var(--r)),
		50% 100%,
		0.5em calc(100% - var(--r)),
		0 100%
	);
	background: radial-gradient(50% 0.2em at top, #000a, #0000) border-box, #0d81cf padding-box;
	width: fit-content;
	white-space: nowrap;
	z-index: 999;
}
.article-info > span + span::before {
	display: inline-block;
	padding-right: 0px;
	padding-left: 0px;
	content: '';
}

.sppb-article-meta .sppb-meta-date-unmodified {
	color: #fff !important;
}
/* image effect */
/* Shine */
.article-intro-image,
.flash {
	position: relative;
	display: inline-block; /* Ensure the ::before pseudo-element has a size */
}

.article-intro-image::before,
.flash::before {
	position: absolute;
	top: 0;
	left: -75%;
	z-index: 2;
	display: block;
	content: '';
	width: 50%;
	height: 100%;
	background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
	-webkit-transform: skewX(-25deg);
	transform: skewX(-25deg);
}

.article-intro-image:hover::before,
.flash:hover::before {
	-webkit-animation: shine 0.75s;
	animation: shine 0.75s;
}

@-webkit-keyframes shine {
	100% {
		left: 125%;
	}
}

@keyframes shine {
	100% {
		left: 125%;
	}
}

/* image blog effect hoome */
.sppb-addon-article-layout-content {
	position: relative;
	display: inline-block; /* Ensure the wrapper does not extend beyond the image */
	overflow: hidden; /* Hide overflow to keep the effect within the bounds */
}

.sppb-addon-article-layout-content img {
	display: block;
}

.sppb-addon-article-layout-content::before {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	display: block;
	content: '';
	width: 0;
	height: 0;
	background: rgba(255, 255, 255, 0.2);
	border-radius: 100%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	opacity: 0;
	pointer-events: none; /* Ensure the effect does not interfere with link clicks */
}

.sppb-addon-article-layout-content:hover::before {
	-webkit-animation: circle 0.75s;
	animation: circle 0.75s;
}

@-webkit-keyframes circle {
	0% {
		opacity: 1;
	}
	40% {
		opacity: 1;
	}
	100% {
		width: 200%;
		height: 200%;
		opacity: 0;
	}
}

@keyframes circle {
	0% {
		opacity: 1;
	}
	40% {
		opacity: 1;
	}
	100% {
		width: 200%;
		height: 200%;
		opacity: 0;
	}
}

/* slider */
/* Styl podstawowy dla klas animacja minaturek na slider + js */
.sp-dot-0,
.sp-dot-1,
.sp-dot-2,
.sp-dot-3,
.sp-dot-4,
.sp-dot-5 {
	display: inline-block;
	width: 100px;
	height: 100px;
	margin: 5px;
	border-radius: 50%;
	position: relative;
	background-color: #000;
}

.sp-dot-0::before,
.sp-dot-1::before,
.sp-dot-2::before,
.sp-dot-3::before,
.sp-dot-4::before,
.sp-dot-5::before {
	content: '';
	position: absolute;
	top: -5px;
	left: -5px;
	right: -5px;
	bottom: -5px;
	border: 2px dashed transparent;
	border-radius: 50%;
	pointer-events: none;
	transition: border-color 0.5s, transform 0.5s;
}

.sp-dot-0:hover::before,
.sp-dot-1:hover::before,
.sp-dot-2:hover::before,
.sp-dot-3:hover::before,
.sp-dot-4:hover::before,
.sp-dot-5:hover::before {
	border-color: white;
	animation: rotate-border 2s linear infinite, move-border 0.5s forwards;
}

.sp-dot-0.active::before,
.sp-dot-1.active::before,
.sp-dot-2.active::before,
.sp-dot-3.active::before,
.sp-dot-4.active::before,
.sp-dot-5.active::before {
	border-color: white;
	animation: rotate-border 2s linear infinite, move-border 0.5s forwards;
}

.sp-dot-0.hide-border::before,
.sp-dot-1.hide-border::before,
.sp-dot-2.hide-border::before,
.sp-dot-3.hide-border::before,
.sp-dot-4.hide-border::before,
.sp-dot-5.hide-border::before {
	border-color: transparent;
	animation: none;
}

@keyframes rotate-border {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@keyframes move-border {
	0% {
		top: -5px;
		left: -5px;
		right: -5px;
		bottom: -5px;
	}
	100% {
		top: -8px;
		left: -8px;
		right: -8px;
		bottom: -8px;
	}
}

/* informacje slider */
#sppb-addon-1716548898982 .sp-slider-content-align-left {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-end;
	padding-right: 50px;
}
/* button orange */

.sppb-sp-slider-button {
	background-color: #00adeea6;
	border: none;
	color: #ffffff;
	cursor: pointer;
	display: inline-block;
	font-family: 'BenchNine', Arial, sans-serif;

	font-size: 15px;
	line-height: 0.7em;
	margin: 10.5px 18px;
	outline: none;
	padding: 10px 10px;
	position: relative;
	text-transform: uppercase;
	font-weight: 700;
}

.sppb-sp-slider-button:before,
.sppb-sp-slider-button:after {
	border-color: transparent;
	-webkit-transition: all 0.25s;
	transition: all 0.25s;
	border-style: solid;
	border-width: 0;
	content: '';
	height: 16.8px;
	position: absolute;
	width: 16.8px;
}

.sppb-sp-slider-button:before {
	border-color: #fff;
	border-left-width: 1.4px;
	border-top-width: 1.4px;
	left: -3.5px;
	top: -3.5px;
}

.sppb-sp-slider-button:after {
	border-bottom-width: 1.4px;
	border-color: #fff;
	border-right-width: 1.4px;
	bottom: -3.5px;
	right: -3.5px;
}

.sppb-sp-slider-button:hover,
.sppb-sp-slider-button.hover {
	background-color: #00adee;
}

.sppb-sp-slider-button:hover:before,
.sppb-sp-slider-button.hover:before,
.sppb-sp-slider-button:hover:after,
.sppb-sp-slider-button.hover:after {
	height: 100%;
	width: 100%;
}
/* slide content */
/*animation bottom border */
.slide-title {
	position: relative;
	display: inline-block;
	padding-bottom: 5px;
}

.slide-title::after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 0;
	height: 2px;
	background-color: currentColor;
	animation: underline-animation 2s forwards;
	animation-delay: 2s;
}

@keyframes underline-animation {
	0% {
		width: 0;
		left: 50%;
	}
	50% {
		width: 100%;
		left: 0;
	}
	100% {
		width: 100%;
		left: 0;
	}
}

/* slide arrow */
#sppb-addon-1716548898982 .sp-slider .sp-nav-control .nav-control {
	margin-left: -140px;
}

/* Extra small devices (phones, less than 576px) */
@media (max-width: 575.98px) {
	#sppb-addon-1716548898982 .sp-slider .sp-nav-control .nav-control {
		margin-left: -140px;
	}
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) and (max-width: 767.98px) {
	#sppb-addon-1716548898982 .sp-slider .sp-nav-control .nav-control {
		margin-left: -140px;
	}
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 991.98px) {
	#sppb-addon-1716548898982 .sp-slider .sp-nav-control .nav-control {
		margin-left: -140px;
	}
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199.98px) {
	#sppb-addon-1716548898982 .sp-slider .sp-nav-control .nav-control {
		margin-left: -140px;
	}
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
	#sppb-addon-1716548898982 .sp-slider .sp-nav-control .nav-control {
		margin-left: -40px;
	}
}

.next-control,
.prev-control {
	background-color: #c47135;
	border: none;
	color: #ffffff;
	cursor: pointer;
	display: inline-block;
	font-family: 'BenchNine', Arial, sans-serif;

	font-size: 22px;
	line-height: 1em;
	margin: 15px 40px;
	margin-left: 20px; /* Left margin of 20px */
	outline: none;
	padding: 12px 40px 10px;
	position: relative;
	text-transform: uppercase;
	font-weight: 700;
}

.next-control:before,
.next-control:after,
.prev-control:before,
.prev-control:after {
	border-color: transparent;
	-webkit-transition: all 0.25s;
	transition: all 0.25s;
	border-style: solid;
	border-width: 0;
	content: '';
	height: 24px;
	position: absolute;
	width: 24px;
}

.next-control:before,
.prev-control:before {
	border-color: #ffffff;
	border-left-width: 2px;
	border-top-width: 2px;
	left: -5px;
	top: -5px;
}

.next-control:after,
.prev-control:after {
	border-bottom-width: 2px;
	border-color: #ffffff;
	border-right-width: 2px;
	bottom: -5px;
	right: -5px;
}

.next-control:hover,
.next-control.hover,
.prev-control:hover,
.prev-control.hover {
	background-color: #fff;
}

.next-control:hover:before,
.next-control.hover:before,
.next-control:hover:after,
.next-control.hover:after,
.prev-control:hover:before,
.prev-control.hover:before,
.prev-control:hover:after,
.prev-control.hover:after {
	height: 100%;
	width: 100%;
}

/* menu */
.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li.active:hover > a {
	color: #ff6c07;
	font-weight: bold;
}
.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
	background: #ffffff;
	border-bottom: 3px solid #f4560a;
}
/* Styles for sp-megamenu-parent links */
a.sp-megamenu-parent > li {
	position: relative;
	text-decoration: none;
	border-bottom: 2px solid rgb(191, 219, 255);
}

/* Before pseudo-element for sp-megamenu-parent list items */
.sp-megamenu-parent > li::before {
	content: '';
	position: absolute;
	bottom: -2px; /* Adjust to align with the border */
	left: 0;
	right: 0;
	height: 2px;
	background-color: rgb(191, 219, 255);
	transform: scaleX(0);
	transition: transform 0.4s ease-in-out, background-color 0.4s ease-in-out;
}

/* Hover effect for sp-megamenu-parent list items */
.sp-megamenu-parent > li:hover::before {
	transform: scaleX(1);
	background-color: #1e5eb7;
}

/* Apply the same styles to submenu items */
.sp-megamenu-parent li ul li {
	position: relative;
	text-decoration: none;
	border-bottom: 2px solid rgb(191, 219, 255);
}

/* Container to hold text of submenu items */
.sp-megamenu-parent li ul li > a {
	display: inline-block;
	transition: transform 0.3s ease-in-out;
	position: relative; /* Ensure the pseudo-element is positioned relative to the link */
}

/* Before pseudo-element for submenu items */
.sp-megamenu-parent li ul li::before {
	content: '';
	position: absolute;
	bottom: -2px; /* Adjust to align with the border */
	left: 0;
	right: 0;
	height: 2px;
	background-color: rgb(191, 219, 255);
	transform: scaleX(0);
	transition: transform 0.4s ease-in-out, background-color 0.4s ease-in-out;
}

/* Hover effect for submenu items */
.sp-megamenu-parent li ul li:hover::before {
	transform: scaleX(1);
	background-color: #1e5eb7;
}

/* Text shift effect for submenu items */
.sp-megamenu-parent li ul li:hover > a {
	transform: translateX(10px); /* Adjust the value as needed */
}

/* Pulsing orange dot effect */
.sp-megamenu-parent li ul li:hover > a::before {
	content: '';
	position: absolute;
	left: -15px; /* Position the dot to the left of the text */
	top: 50%;
	transform: translateY(-50%);
	width: 6px;
	height: 6px;
	background-color: #1e5eb7;
	border-radius: 50%;
	animation: pulse 1s infinite;
}

/* Keyframes for the pulsing animation */
@keyframes pulse {
	0% {
		transform: scale(1) translateY(-50%);
	}
	50% {
		transform: scale(1.5) translateY(-50%);
	}
	100% {
		transform: scale(1) translateY(-50%);
	}
}

/* ABOUTS */
.arrow ul {
	list-style-type: none;
	padding: 0;
}

.arrow li {
	position: relative;
	padding-left: 30px;
	margin-bottom: 10px;
}

.arrow li:before {
	content: '➤';
	position: absolute;
	left: 0;
	color: #f15a29;
}
/* scroll up drop/kropla*/

.sp-scroll-up {
	display: none;
	background: #1e5eb7;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	position: fixed;
	bottom: 30px;
	right: 50px;
	color: #ffffff;
	text-align: center;
	box-shadow: 0 5px 10px rgba(30, 96, 170, 0.2);
	transition: background 0.3s ease, box-shadow 0.3s ease; /* Dodane płynne przejście */
	z-index: 1000;
}

.sp-scroll-up:before {
	content: '';
	position: absolute;
	top: -81%;
	left: 50%;
	border: 21px solid transparent;
	border-bottom: 31px solid #1e5eb7;
	transform: translateX(-50%);
	transition: border-bottom-color 0.3s ease; /* Dodane płynne przejście */
}

.sp-scroll-up i {
	font-size: 12px;
	position: relative;
	top: 15px;
	color: #ffffff;
}

.sp-scroll-up:hover {
	background: #418fde;
	box-shadow: 0 5px 10px rgba(65, 143, 222, 0.3); /* Dodany efekt cienia */
}

.sp-scroll-up:hover:before {
	border-bottom-color: #418fde;
}

.sp-scroll-up.show {
	display: inline-block;
}

/* test */
.sppb-carousel-extended-item {
	text-align: center;
	background: #f9f9f9;
	border-radius: 0px;
	height: 400px;
	border-bottom: 2px solid #0c4c93;
}
/* map column up animation */
.up {
	transition: transform 0.3s ease-in-out;
}

.up:hover {
	transform: translateY(-50px);
}

/* contact */
/* animation car */

@keyframes shake {
	0% {
		transform: translateY(2px);
	}
	50% {
		transform: translateY(-2px);
	}
	100% {
		transform: translateY(0);
	}
}

.car {
	animation: shake 0.5s ease-in-out infinite;
}
@keyframes pulse {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
    100% {
        opacity: 1;
    }
}

.emergency span{
    animation: pulse 1s infinite;
}



/* animation boorder icons*/
.rot {
  position: relative;
  display: inline-block;
}

.rot::before {
  content: '';
  position: absolute;
  top: calc(50% - 31px);
  left: 50%;
  width: 168px;
  height: 168px;
  border: 2px dotted #0c4c93;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out;
  box-sizing: border-box;
}

.up:hover .rot::before {
  opacity: 1;
  animation: rotate-border1 1s linear infinite;
}

@keyframes rotate-border1 {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
/* vmenu-foter */
.vmenu {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.vmenu li {
    position: relative;
    padding-bottom: 5px;
	text-align: center;
}

.vmenu li::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 1px;
    background: linear-gradient(to right, transparent, #444, transparent);
}


.vmenu li:last-child {
    border-bottom: none;
}

.vmenu a {
    position: relative;
    display: flex;
    align-items: center;
    color: #ddd;
    padding: 5px;
    text-decoration: none;
    transition: background-color 0.3s, color 0.3s, transform 0.3s;
}

.vmenu a i {
    margin-right: 10px;
    transition: transform 0.3s;
}

.vmenu a:hover {
    background-color: #57575717;
    color: #fff;
    transform: translateX(10px);
}

.vmenu a:hover i {
    transform: rotate(20deg);
}

.vmenu a.active {
    background-color: #575757;
    color: #fff;
}

.vmenu a::before {
    content: '';
    position: absolute;
    left: -20px; /* Pozycjonowanie kropki na lewo od linku */
    top: 50%;
    transform: translateY(-50%);
    width: 7px;
    height: 7px;
    background-color: orange;
    border-radius: 50%;
    opacity: 0;
    transition: opacity 0.3s;
}

.vmenu a:hover::before {
    opacity: 1;
    animation: pulse 1s infinite;
}

@keyframes pulse {
    0% {
        transform: translateY(-50%) scale(1);
    }
    50% {
        transform: translateY(-50%) scale(1.2);
    }
    100% {
        transform: translateY(-50%) scale(1);
    }
}
/* footer module header */
.footer-header {
    color: #F15A29;
    margin-bottom: 25px;
    font-size: 20px;
    position: relative;
    padding-bottom: 5px;
    text-align: center; /* Wycentrowanie tekstu */
}

.footer-header::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%; /* Ustawienie pseudo-elementu na środku */
    transform: translateX(-50%); /* Przesunięcie pseudo-elementu w lewo o 50% jego szerokości, aby był wycentrowany */
    width: 100%; /* Możesz dostosować szerokość do swoich potrzeb */
    height: 2px;
    background: linear-gradient(to right, transparent, #F15A29, transparent);
}


