/* --------------TEMPLATE-------------- */

html{
 height:100%;
 min-height:100%;
 }
body{
 min-height:100%;
 }

.layout-boxed .body-innerwrapper {
	width: 90%;
}


@media (min-width: 768px) {
	.container {
		width: 650px;
	}
	.sppb-row-container {
		width: 650px!important;
	}
	.layout-boxed .body-innerwrapper {
	    max-width: 650px;
	}
}
@media (min-width: 992px) {
	.container {
		width: 770px;
	}
	.sppb-row-container {
		width: 770px!important;
	}
	.layout-boxed .body-innerwrapper {
	    max-width: 770px;
	}
}
@media (min-width: 1200px) {
	.container {
		width: 1000px;
	}
	.sppb-row-container {
		width: 1000px!important;
	}
	.layout-boxed .body-innerwrapper {
	    max-width: 1000px;
	}
}

#sp-page-builder .sppb-section-title {
    margin-bottom: 0px;
}

#sp-page-builder .sppb-section-title .sppb-title-heading {
    font-size: 28px;
    line-height: 28px;
}

/* --------------NAGŁÓWEK / LOGO / MENU (Helix Ultimate)-------------- */

#sp-header {
	padding: 15px 15px 0px;
	box-shadow: none;
	min-height: 65px;
}

#sp-header .container-inner {
	display: flex;
	align-items: flex-end;
}

#sp-header .row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	width: 100%;
}

#sp-logo {
	padding: 5px 20px 5px 0;
}

#sp-header #sp-logo .sp-column,
#sp-header #sp-logo .logo,
#sp-header #sp-logo .logo a {
	display: flex;
	align-items: flex-end;
	height: 100%;
}

#sp-header .logo-image {
	height: 45px;
	width: auto;
	max-height: 60px;
	max-width: 249px;
	display: block;
}

/* Desktop (>= 992px): menu tekstowe wypchnięte do prawej krawędzi,
   wyrównane w pionie z logo. justify-content: space-between na .row
   rozpycha #sp-logo i #sp-menu bez rozciągania #sp-menu na 100%. */
@media (min-width: 992px) {

	#sp-header .row {
		flex-wrap: nowrap;
		justify-content: space-between;
	}

	#sp-header #sp-menu .sp-column {
		display: flex;
		align-items: center;
		height: 100%;
	}

	.sp-megamenu-wrapper {
		display: flex;
		align-items: center;
	}

	.sp-megamenu-parent {
		display: flex;
		align-items: center;
		margin: 0;
	}

	.sp-megamenu-parent > li > a,
	.sp-megamenu-parent > li > span {
		display: flex;
		align-items: center;
		height: 100%;
		padding: 0 15px;
		line-height: normal;
		text-transform: uppercase;
		font-weight: 400;
		letter-spacing: 0.5px;
		font-size: 14px;
	}
}

/* Mobile/tablet (< 992px): #sp-logo i #sp-menu nie mogą być na 100%
   szerokości (to narzuca .row>* z Bootstrap/Helix Ultimate) - dzięki
   temu logo i hamburger stoją obok siebie w jednej linii zamiast
   każde na swojej pełnej szerokości, jedno pod drugim.
   flex-wrap:wrap na .row (zdefiniowany wyżej, poza media query) pozwala
   im spaść do drugiej linii dopiero, gdy naprawdę brakuje miejsca. */
@media (max-width: 991px) {

	#sp-header #sp-logo,
	#sp-header #sp-menu {
		width: auto;
		max-width: none;
		flex: 0 0 auto;
	}

	#sp-header #sp-menu {
		display: flex;
		align-items: center;
		margin-left: auto;
	}

	#sp-header #sp-menu .sp-column {
		display: flex;
		align-items: center;
	}

	/* Wyrównanie hamburgera do wysokości logo (domyślnie Helix Ultimate
	   ma tu 60px w template.css) */
	#offcanvas-toggler {
		height: 30px;
		line-height: 30px;
		padding: 0 4px;
	}
}

/* Wąskie ekrany: zamiast zmniejszać logo, zerujemy padding-right
   na #sp-logo, żeby zrobić więcej miejsca dla hamburgera; nagłówek
   nieco wyższy, żeby logo nie było ciasne */
@media (max-width: 400px) {

	#sp-header {
		/* min-height: 90px; */
	}

	#sp-logo {
		padding-right: 0;
	}
}

/* Bardzo wąskie ekrany: dopiero tutaj zmniejszamy samo logo */
@media (max-width: 368px) {

	#sp-header .logo-image {
		height: 32px;
	}
}

/* --------------KOLOR / TYPOGRAFIA-------------- */

h1, h2, h3, h4, a {
	color: #1C7181;
}

.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a {
	color: #1C7181;
	font-weight: bold;
}

.sp-megamenu-parent > li:hover > a {
	color: #1C7181;
}

#sp-header a:hover, #sp-promote a:hover, #sp-main-body a:hover {
	color: #1C7181;
}

#sp-contact a:hover {
	color: #fff;
	text-decoration: underline;
}

#sp-top-bar {
    background: #fff;
}

#sp-header, #sp-promote, #sp-main-body {
    background: rgba(255,255,255,0.85);
}

.sppb-carousel-indicators li {
	border: 1px solid #999;
}

.sppb-carousel-indicators .active {
	background-color: #999;
}

/* --------------STOPKA / KONTAKT / MAPA (Helix Ultimate)-------------- */
/* Nadpisanie płaskiego tła ustawionego w panelu Template Options */

#sp-map, #sp-contact, #sp-footer {
	color: #fff;
	background-image: url(/images/deski_2.jpg);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-attachment: fixed;
	background-size: cover;
	max-width: 100%;
	max-height: 100%;
	width: auto;
}

#sp-contact {
	padding: 0 !important;
}

#sp-footer {
    background: #1c7181;
	text-align: center;
}

#sp-map {
	padding: 0 !important;
}

#sp-map .container {
    padding: 0px;
    margin: 0;
    width: 100%!important;
}

#sp-bottom1 {
	border-right: solid 1px;
    margin-top: 45px;
    margin-bottom: 10px;
    padding-bottom: 35px;
	min-height: 250px;
}

@media (max-width: 767px) {
	#sp-bottom1 {
		border-right: 0;
		margin-bottom: 10px;
		padding-bottom: 0px;
	}
	#sp-bottom2 {
		margin-top: 25px;
	}
}

#sp-bottom2 {
    margin-top: 45px;
    padding-bottom: 30px;
	padding-left: 85px;
	padding-right: 50px;
}

/* Pola formularza - obramowanie widoczne na ciemnym tle (usunięcie białych ramek) */
#sp-bottom2 input, #sp-bottom2 textarea {
    background-color: rgba(255, 255, 255, 0);
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 0;
    color: #fff;
    width: 100%;
}

#sp-bottom2 textarea#message {
    width: 100%;
}

#sp-bottom2 .sp-module .sp-module-title {
	font-family: "Open Sans", sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.3;
    margin-bottom: 15px;
	color: #fff;
}

#sp-contact .container {
	background: rgba(28, 113, 129, 0.75);
	width: auto;
}

.scrollup, .sp-scroll-up {
	right: 10px;
}

@media (min-width: 768px) {
	#sp-contact .container {
		padding: 0px 20px;
	}
	#sp-bottom2 {
		padding-left: 50px;
		padding-right: 40px;
	}
}
@media (min-width: 992px) {
	#sp-contact .container {
		padding: 0px 50px;
	}
	#sp-bottom2 {
		padding-left: 85px;
		padding-right: 30px;
	}
	.scrollup, .sp-scroll-up {
		right: 50px;
	}
}
@media (min-width: 1200px) {
	#sp-contact .container {
		padding: 0px 120px;
	}
	#sp-bottom2 {
		padding-left: 85px;
		padding-right: 20px;
	}
	.scrollup, .sp-scroll-up {
		right: 50px;
	}
}

/* jw_sig galeria bez podpisow */
.fancybox-title {
    display: none;
}

/* --------------SEKCJE STRONY GŁÓWNEJ-------------- */

.frontpage_carousel {
	padding: 0 0 25px 0 !important;
}

.frontpage_carousel .sppb-row-container {
	width: 100% !important;
	padding: 0;
}

.sppb-carousel-indicators {
    bottom: -40px;
}

.frontpage_title {
	padding-top: 5px !important;
	padding-bottom: 25px !important;
}

.frontpage_promote {
	padding-top: 15px !important;
	padding-bottom: 25px !important;
	text-align: center !important;
}

.frontpage_promote .sppb-addon-module {
	margin-left: auto !important;
    margin-right: auto !important;
    width: 91%;
}

/* FavPromote — własna siatka flex, niezależna od Bootstrap */
.favpromote-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}

.favpromote-box {
    display: flex;
    flex-direction: column;
    flex: 1 1 250px;
    max-width: 300px;
    width: auto;
}

.favpromote-box img {
    width: 100%;
    height: auto;
}

@media (min-width: 768px) {
	.frontpage_txt_1 .sppb-row-container, .frontpage_txt_2 .sppb-row-container, .frontpage_txt_3 .sppb-row-container, .frontpage_testimonials .sppb-row-container {
		padding: 0 50px;
	}
}
@media (min-width: 1200px) {
	.frontpage_txt_1 .sppb-row-container, .frontpage_txt_2 .sppb-row-container, .frontpage_txt_3 .sppb-row-container, .frontpage_testimonials .sppb-row-container {
		padding: 0 150px;
	}
}

.frontpage_txt_1 {
	text-align: center;
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}

.frontpage_txt_2 {
	padding-top: 0px !important;
	padding-bottom: 25px !important;
}

.frontpage_testimonials {
	text-align: center;
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}

.sppb-testimonial-pro .sppb-testimonial-message {
    font-size: 14px;
    line-height: 24px;
}

.frontpage_gallery {
    background-color: #3a3837;
	text-align: center;
    padding: 50px 15px !important;
}

.frontpage_gallery ul.sigFreeClassic li.sigFreeThumb a.sigFreeLink:hover img.sigFreeImg {
    opacity: 0.9;
}

.frontpage_gallery ul.sigFreeClassic {
	max-width: 320px;
}

@media (min-width: 726px) {
	.frontpage_gallery ul.sigFreeClassic {
		max-width: 320px;
	}
	.frontpage_gallery {
		padding: 50px 0px !important;
	}
}

@media (min-width: 767px) {
	.frontpage_gallery ul.sigFreeClassic {
		max-width: 640px;
	}
}

@media (min-width: 1200px) {
	.frontpage_gallery ul.sigFreeClassic {
		max-width: 960px;
	}
	.frontpage_gallery {
		padding: 50px 15px !important;
	}
}

ul.sigFreeClassic li.sigFreeThumb {
    background: transparent !important;
    margin: 4px;
    border: 1px solid #999;
}

ul.sigFreeClassic li.sigFreeThumb a.sigFreeLink {
    background: transparent !important;
}

.frontpage_map {
	padding: 0 !important;
	background-color: #3a3837;
}

.frontpage_map .sppb-row-container {
	width: 100% !important;
	padding: 1px;
}

/* --------------CENNIK-------------- */

.cennik_txt {
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}

@media (min-width: 768px) {
	.cennik_txt .sppb-row-container {
		padding: 0 100px;
	}
}

/* --------------POKOJE-------------- */

.pokoje_txt {
	padding-top: 25px !important;
	padding-bottom: 5px !important;
}

.pokoje_txt .sppb-row-container {
	padding: 0 100px;
}

.pokoje_gallery {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
	text-align: center;
}

.pokoje_gallery .sppb-addon-content {
	padding: 0px 0px 0px 40px;
    margin: 0 50px;
}

.pokoje_gallery_2 .sppb-addon-content {
    margin: 0!important;
}

.pokoje_gallery ul.sigFreeClassic li.sigFreeThumb {
    padding: 4px;
    margin: 5px;
    width: 160px;
    height: 110px;
}

.pokoje_gallery ul.sigFreeClassic li.sigFreeThumb a.sigFreeLink:hover img.sigFreeImg,
.pokoje_gallery ul.sigFreeClassic li.sigFreeThumb a.sigFreeLink img.sigFreeImg {
    width: 150px!important;
    height: 100px!important;
}

.pokoje_gallery ul.sigFreeClassic li.sigFreeThumb a.sigFreeLink {
    width: 150px!important;
    height: 100px!important;
}

#sp-page-builder .pokoje_row .sppb-section-title .sppb-title-heading {
    margin-bottom: 20px;
    font-size: 24px;
    line-height: 1.1;
}

.pokoje_row {
    padding: 25px 0px 25px 0px!important;
}

.pokoje_row_txt {
    padding: 0px 50px 0px 0px !important;
}

.pokoje_row_carousel {
    padding: 25px 0px!important;
}

.pokoje_row_carousel .sppb-addon-container {
   padding: 15px!important;
}

@media (min-width: 726px) {
	.pokoje_row_carousel .sppb-row-container {
	   padding: 0px 25px 50px 25px!important;
	}
}

@media (min-width: 767px) {
	.pokoje_row_carousel .sppb-row-container {
	   padding: 0px 100px 0px 100px!important;
	}
}

#sp-page-builder .pokoje_row_carousel .sppb-section-title .sppb-title-heading {
    margin-bottom: 30px;
    font-size: 24px;
    line-height: 1.1;
}

/* --------------GALERIE-------------- */

.galerie_gallery .sppb-row-container {
	padding: 0 14px;
}

@media (min-width: 555px) {
	.galerie_gallery .sppb-row-container {
		padding: 0 0px;
	}
}

@media (min-width: 677px) {
	.galerie_gallery .sppb-row-container {
		padding: 0 75px;
	}
}

@media (min-width: 726px) {
	.galerie_gallery .sppb-row-container {
		padding: 0 13px;
	}
}

@media (min-width: 767px) {
	.galerie_gallery .sppb-row-container {
		padding: 0 70px;
	}
}

@media (min-width: 992px) {
	.galerie_gallery .sppb-row-container {
		padding: 0 45px;
	}
}

@media (min-width: 1200px) {
	.galerie_gallery .sppb-row-container {
		padding: 0 75px;
	}
}

.galerie_gallery {
	padding-top: 25px !important;
	padding-bottom: 25px !important;
	text-align: center;
}

.galerie_gallery ul.sigFreeClassic li.sigFreeThumb {
    padding: 4px;
    margin: 5px;
    width: 160px;
    height: 110px;
}

.galerie_gallery ul.sigFreeClassic li.sigFreeThumb a.sigFreeLink:hover img.sigFreeImg,
.galerie_gallery ul.sigFreeClassic li.sigFreeThumb a.sigFreeLink img.sigFreeImg {
    width: 150px!important;
    height: 100px!important;
}

.galerie_gallery ul.sigFreeClassic li.sigFreeThumb a.sigFreeLink {
    width: 150px!important;
    height: 100px!important;
}

/* --------------ATRAKCJE-------------- */

.atrakcje_txt {
	padding-top: 25px !important;
	padding-bottom: 0px !important;
}

.atrakcje_txt .sppb-row-container {
	padding: 0 50px;
}

@media (min-width: 768px) {
	.atrakcje_txt .sppb-row-container {
		padding: 0 100px;
	}
}

.atrakcje_gallery {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
	text-align: center;
}

.atrakcje_gallery ul.sigFreeClassic {
	max-width: 320px;
}

@media (min-width: 726px) {
	.atrakcje_gallery ul.sigFreeClassic {
		max-width: 640px;
	}
	.atrakcje_gallery {
		padding: 0px 0px !important;
	}
}

@media (min-width: 1200px) {
	.atrakcje_gallery ul.sigFreeClassic {
		max-width: 960px;
	}
	.atrakcje_gallery {
		padding: 0px 15px !important;
	}
}

/* --------------KONTAKT-------------- */

.kontakt_txt .sppb-row-container {
	padding: 0 100px;
}
