/* Krotrans – zamienniki Ultimate Addons. Reguły przeniesione z ultimate.min.css (3.16.7) tylko dla używanych elementów. */

/* Globalna reguła z ultimate.min.css, na której opiera się układ wierszy motywu (np. baner z margin-top:-140px). */
.vc_row,
.wpb_row,
.wpb_column { position: relative; }

/* Tła wierszy (bg_type="image", bg_override="full") – na całą szerokość okna, pod treścią wiersza. */
/* Własne tło wiersza (np. #baner w motywie potomnym) jest wyłączane – tak jak robił to skrypt Ultimate Addons. */
.krt-row-has-bg { position: relative; background-image: none !important; }
.krt-row-has-bg > .krt-row-bg { position: absolute; top: 0; bottom: 0; left: 50%; width: 100vw; margin-left: -50vw; background-position: center center; background-repeat: no-repeat; background-size: cover; z-index: 0; pointer-events: none; }
.krt-row-has-bg > :not(.krt-row-bg) { position: relative; z-index: 1; }

/* ultimate_heading */
.uvc-heading { text-align: center; }
/* W treści nagłówki mają el_class="page-title", a The7 15 daje .page-title display:flex (pasek tytułu strony),
   co blokuje łączenie marginesów z obrazkiem pod nagłówkiem. */
.uvc-heading.page-title { display: block; grid-area: auto; }
.uvc-heading .uvc-main-heading h1,
.uvc-heading .uvc-main-heading h2,
.uvc-heading .uvc-main-heading h3,
.uvc-heading .uvc-main-heading h4,
.uvc-heading .uvc-main-heading h5,
.uvc-heading .uvc-main-heading h6 { margin: 0; padding: 0; line-height: normal; }

/* ult_content_box */
.ult-content-box-container,
.ult-content-box-container * { box-sizing: border-box; }
.ult-content-box-container .ult-content-box-anchor,
.ult-content-box-container .ult-content-box-anchor:hover,
.ult-content-box-container .ult-content-box-anchor:focus { text-decoration: none; line-height: inherit; outline: 0; }
.ult-content-box:after { content: ''; display: block; clear: both; }

/* ult_animation_block */
.krt-js .ult-animate-viewport { opacity: 0; transition: opacity .9s linear; }
.krt-js .ult-animate-viewport.krt-visible { opacity: 1; }
.animated { animation-duration: 1s; animation-fill-mode: both; }
.bounce { animation-name: bounce; }
@keyframes bounce {
	0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
	40% { transform: translateY(-30px); }
	60% { transform: translateY(-15px); }
}
@media (prefers-reduced-motion: reduce) {
	.krt-js .ult-animate-viewport { opacity: 1; transition: none; }
	.animated { animation: none !important; }
}

/* icon_counter (flip box, horizontal_flip_left) */
.flip-box-wrap { display: block; position: relative; perspective: 1000px; text-align: center; margin-bottom: 35px; }
.flip-box-wrap,
.flip-box-wrap * { box-sizing: border-box; }
.flip-box-wrap .flip-box { position: relative; cursor: pointer; width: 100%; height: 100%; transition: 750ms; transform-style: preserve-3d; }
.flip-box-wrap .ifb-flip-box { position: relative; display: block; height: 100%; transform-style: preserve-3d; }
.flip-box-wrap .ifb-front,
.flip-box-wrap .ifb-back { display: block; width: 100%; height: 100%; padding: 0; margin-bottom: 0; backface-visibility: hidden; -webkit-backface-visibility: hidden; transition: 750ms; transform-style: preserve-3d; }
.flip-box-wrap .ifb-front { z-index: 9; }
.flip-box-wrap .ifb-front * { backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.flip-box-wrap .ifb-back { position: absolute; top: 0; bottom: 0; z-index: -1; }
.flip-box-wrap .flip-box h3 { margin: 15px 0 12px; line-height: 1.3em; font-size: 16px; display: block; }
.flip-box-wrap p { margin-bottom: 15px; font-size: 14px; line-height: 1.65em; }
.flip-box-wrap .ifb-back p { max-height: 100%; overflow: visible; display: block; }
.flip-box-wrap .ifb-back p:last-child { margin-bottom: 0; }
.ifb-flip-box-section { display: block; position: relative; padding: 15px; top: 0; }
.ifb-flip-box-section.ifb-flip-box-section-vertical-middle { top: 50%; transform: translateY(-50%); backface-visibility: hidden; -webkit-backface-visibility: hidden; }

.flip-box-wrap .horizontal_flip_left .ifb-front { transform: rotateY(0); }
.flip-box-wrap .horizontal_flip_left .ifb-back { transform: rotateY(-180deg); }
.flip-box-wrap .horizontal_flip_left .ifb-flip-box:hover .ifb-front,
.flip-box-wrap .horizontal_flip_left .ifb-hover .ifb-front { transform: rotateY(180deg); }
.flip-box-wrap .horizontal_flip_left .ifb-flip-box:hover .ifb-back,
.flip-box-wrap .horizontal_flip_left .ifb-hover .ifb-back { transform: rotateY(0); }
