/*
Theme Name: lukaszmendocha
Author: emedia Łukasz Widz
Author URI: https://emedia.pl

*/

* { border: none; margin: 0px; padding: 0px;  }

:root {
  --black: #000;
  --white: #fff;
  --grey: #EFEFEF;
  --greyDark: #202020;
  --greyLight: #3F4643;
  --green: #0E7F2D;
  --greenVLight: #EFF4F0;
  --greenLight: #c7ddcd;
  --greenDark: #106C2D;
  --greenVDark: #153627;
}

body {
	background: var(--grey);
	width: 100%;
	max-width: 100%;
	height: 100%;
	min-height: 100vh;
	font-family: "DM Sans", sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: var(--greyLight);
	overflow-x: hidden;
	position: relative;
}

	body.overflow {
		overflow: hidden;
	}
	
	
.wp-block-buttons {
	gap: 15px;
}

.button a,
a.wp-block-button__link,
button.wp-block-button__link {
	display: inline-block;
	background: var(--green);
	outline: 2px solid var(--green);
	border: 0;
	color: var(--white);
	border-radius: 16px;
	padding: 13px 35px;
	box-sizing: border-box;
	font-size: 16px;
	outline-offset: -2px;
	font-weight: 600;
	transition: all 0.3s ease;
}
	.button a:hover,
	a.wp-block-button__link:hover,
	button.wp-block-button__link:hover {
		background: var(--greenDark);
		outline: 2px solid var(--greenDark);
		color: var(--white);
		transition: all 0.3s ease;
	}
	
        
.is-style-outline-light a.wp-block-button__link,
.is-style-outline-light button.wp-block-button__link {
    background-color: transparent;
    color: var(--white);
    outline: 2px solid var(--green);
}

.is-style-outline-light a.wp-block-button__link:hover,
.is-style-outline-light button.wp-block-button__link:hover {
    color: var(--greenDark);
	background-color: var(--greenLight);
    outline: 2px solid var(--greenDark);
	
}

.is-style-outline-dark a.wp-block-button__link,
.is-style-outline-dark button.wp-block-button__link {
    background-color: transparent;
    color: var(--green);
    outline: 2px solid var(--green);
}

.is-style-outline-dark a.wp-block-button__link:hover,
.is-style-outline-dark button.wp-block-button__link:hover {
    color: var(--green);
    background-color: var(--greenLight);
    outline: 2px solid var(--greenDark);
}

.hide-on-desktop {
	display: none !important;
}

.hide-on-mobile {
	
}
	
input:focus,
button:focus,
textarea:focus {
	outline: 0;
}	

.is-style-fit,
.fit {
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
	padding: 0 3%;
	box-sizing: border-box;
}

.is-style-fit-1300,
.fit-1300 {
	width: 100%;
	max-width: 1320px;
	margin: 0 auto;
	padding: 0 3%;
	box-sizing: border-box;
}

/* Slider zdjęć (blok) */
.lm-image-slider .swiper {
    width: 100%;
}
.lm-image-slider .swiper-slide img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 8px;
}
.lm-image-slider .swiper-button-prev,
.lm-image-slider .swiper-button-next {
    color: var(--greenDark);
}

a {
	color: var(--greyLight);
	text-decoration: none;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
	
	cursor: pointer;
}

	a:hover {
		color: var(--green);
		text-decoration: none;
		
		transition: all .2s ease;
		-webkit-transition: all .2s ease;
		cursor: pointer;
	}


h1 {
	color: var(--greyDark);
	font-family: "Manuale", serif;
	font-weight: 400;
	font-size: clamp(45px, 5vw, 60px);
	line-height: 1.2;
}

h2 {
	color: var(--greyDark);
	font-family: "Manuale", serif;
	font-size: clamp(32px, 4.5vw, 48px);
	font-weight: 400;
	line-height: 1.2;
}

h3 {
	color: var(--greyDark);
	font-family: "Manuale", serif;
	font-size: clamp(22px, 3.5vw, 28px);
	font-weight: 400;
	line-height: 1.1;
}

h1 strong,
h2 strong,
h3 strong {
	font-weight: 600;
}

sup {
	color: var(--green);
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 2px
}

.icoTel {
	position: relative;
	display: inline-flex;
	gap: 8px;
	align-items: center;
	line-height: 1;
}

	.icoTel:before {
		content: "";
		display: inline-block;
		width: 20px;
		height: 20px;
		
		background: url(../graf/icoTel.svg);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: 50% 50%;
	}

.icoAdres {
	position: relative;
	display: inline-flex;
	gap: 8px;
	align-items: center;
	line-height: 1;
}

	.icoAdres:before {
		content: "";
		display: inline-block;
		width: 20px;
		height: 20px;
		
		background: url(../graf/icoGps.svg);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: 50% 50%;
	}

.icoMail {
	position: relative;
	display: inline-flex;
	gap: 8px;
	align-items: center;
	line-height: 1;
}

	.icoMail:before {
		content: "";
		display: inline-block;
		width: 20px;
		height: 20px;
		
		background: url(../graf/icoMail.svg);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: 50% 50%;
	}

.icoFb {
	position: relative;
	display: inline-block;
	line-height: 1;

	width: 20px;
	height: 20px;
	
	background: url(../graf/icoFb.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	transition: all 0.3s ease;
}

.icoYt {
	position: relative;
	display: inline-block;
	line-height: 1;

	width: 20px;
	height: 20px;
	
	background: url(../graf/icoYt.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	transition: all 0.3s ease;
}

.icoLinked {
	position: relative;
	display: inline-block;
	line-height: 1;

	width: 20px;
	height: 20px;
	
	background: url(../graf/icoLinked.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	transition: all 0.3s ease;
}

.icoFb:hover,
.icoYt:hover,
.icoLinked:hover {
	filter: brightness(0) saturate(100%) invert(3%) sepia(1%) saturate(118%) hue-rotate(314deg) brightness(93%) contrast(79%);
	transition: all 0.3s ease;
}	

#pageKontakt .icoFb:hover,
#pageKontakt .icoYt:hover,
#pageKontakt .icoLinked:hover {
	filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(88deg) brightness(104%) contrast(105%);
	transition: all 0.3s ease;
}	

	

#container {
	min-height: 100vh;
	padding-top: 135px;
}

#content {
	min-height: 300px;
}

	#content p {
		padding: 8px 0;
	}
	
#content.error404 {
	padding-bottom: 250px;
	text-align: center;
}

header {
	position: fixed;
	z-index: 99;
	top: 0;
	left: 0;
	width: 100%;
	
	background: #fff;
	font-size: 14px;
	box-shadow: 0px 10px 10px 0px #2020200A;
	transition: all 0.3s ease;
}

	header .headerTop {
		background: var(--grey);
	}

		header .headerTop .headerTopInner  {
			display: flex;
			align-items: center;
		}
		
			header .headerTop .headerTopInner .headerQuote {
				padding: 10px 0;
			}
			
				header .headerTop .headerTopInner .headerQuote em {
					font-family: "Manuale", serif;
				}
				
		
			header .headerTop .headerTopInner .headerContact {
				align-self: stretch;
				padding: 5px 15px;
				margin-left: auto;
				background: #fff;
				
				display: flex;
				gap: 20px;
				align-items: center;
			}
				
				header .headerTop .headerTopInner .headerContact .headerSocial {					
					display: flex;
					align-items: center;
					gap: 10px;
					padding-left: 20px;
					border-left: 1px solid var(--green);
				}
				
header .headerBottom {
	background: #fff;
	padding: 15px 0;
}
	
		header .headerBottom .headerBottomInner  {
			display: flex;
			align-items: center;
			gap: 20px;
		}
		
			header .headerBottom .headerBottomInner #logo {
				
			}
		
			header .headerBottom .headerBottomInner #menu {
				margin-left: auto;
			}
			
				header .headerBottom .headerBottomInner #menu ul {
					list-style: none;
					display: flex;
					gap: 35px;
					align-items: center;
				}
			
					header .headerBottom .headerBottomInner #menu ul li:not(.button) a {
						position: relative;
						display: inline-block;
						padding-bottom: 3px;
						color: var(--greyDark);
						font-size: 16px;
					}
				
						header .headerBottom .headerBottomInner #menu ul li:not(.button) a:after {
							content: "";
							display: block;
							width: 0%;
							height: 2px;
							background: var(--green);
						
							position: absolute;
							bottom: 0;
							left: 0;
							transition: all 0.3s ease;
						}
						

						header .headerBottom .headerBottomInner #menu ul li.current-menu-item a:after,
						header .headerBottom .headerBottomInner #menu ul li.current-menu-parent a:after,
						header .headerBottom .headerBottomInner #menu ul li.current-menu-ancestor a:after {
							width: 100%;
						}
						
											
						
						
header.fixed {
	top: -40px;
	transition: all 0.3s ease;
}




#hero {
	background-image: url(../graf/bgHero.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	
	color: #fff;
	padding: 80px 0 150px 0;
}

	#hero .wp-block-columns {
		gap: 10%;
	}
		
		#hero .wp-block-column:first-child {
			flex-basis: 60%;
		}
		
		#hero .wp-block-column:last-child {
			flex-basis: 40%;
		}
		
	
	
	#hero .header {
		font-family: "Manuale", serif;
		font-weight: 400;
		font-size: clamp(45px, 5vw, 60px);
		line-height: 1.2;
	
		color: #fff;
		margin-bottom: 40px;
	}

		#hero .header strong {
			display: block;
		}
	
	#hero .podpis {
		font-size: 16px;
		line-height: 1.8;
		padding: 0;
		color: #fff;
	}
	
		#hero .podpis strong {
			font-family: "Manuale", serif;
			font-size: 25px;
		}
			
	#hero .wp-block-buttons {
		margin-top: 40px;
		gap: 15px;
	}
	
	#hero figure {
		border-radius: 50%;
		overflow: hidden;
		display: block;
		aspect-ratio: 1 / 1;
	}
	
#heroBoxes {
	position: relative;
	transform: translateY(-50%);
}

	#heroBoxes .wp-block-columns {
		background: #fbfbfb;
		padding: 25px 0px;
		box-sizing: border-box;
		gap: 0;
		border-radius: 4px;
	}
	
		#heroBoxes .wp-block-column {
			position: relative;
			padding: 0 30px;
		}
	
		#heroBoxes .wp-block-column:nth-child(2):before {
			content: "";
			display: block;
			width: 1px;
			height: 65px;
			background: #BCC3C0;
			
			position: absolute;
			left: 0;
			top: 50%;
			transform: translateY(-50%);
		}
	
		#heroBoxes .wp-block-column:nth-child(2):after {
			content: "";
			display: block;
			width: 1px;
			height: 65px;
			background: #BCC3C0;
			
			position: absolute;
			right: 0;
			top: 50%;
			transform: translateY(-50%);
		}
		
#quote {
	font-size: 16px;
	padding: 30px 0 90px 0;
}		

	#quote em {
		position: relative;
		display: inline-block;
		font-family: "Manuale", serif;
		font-size: 40px;		
	}
	
		#quote em:before {
			content: "";
			
			display: block;
			width: 22px;
			height: 17px;
			
			position: absolute;
			left: -30px;
			bottom: 5px;

			background-image: url(../graf/icoQuote.svg);
			background-size: cover;
			background-repeat: no-repeat;
			background-position: 50% 50%;
		}
	
		#quote em:after {
			content: "";
			
			display: block;
			width: 22px;
			height: 17px;
			
			position: absolute;
			right: -30px;
			top: 5px;
			
			transform: rotate(180deg);

			background-image: url(../graf/icoQuote.svg);
			background-size: cover;
			background-repeat: no-repeat;
			background-position: 50% 50%;
		}
		
#uslugi {
	
}		

	#uslugi > .wp-block-group {
		background: #fff;
		padding: 50px;
		box-sizing: border-box;
	}
	
	#uslugi .wp-block-buttons {
		margin-top: 30px;
	}
	
	#uslugi .kategorie-uslug-grid {
		margin-top: 30px;
		display: grid; 
		grid-auto-columns: 1fr; 
		grid-template-columns: 1fr 1fr; 
		gap: 10px 30px; 
	}
		
		#uslugi .kategorie-uslug-grid a {
			position: relative;
			display: block;
			padding: 35px 30px;
			margin: 0 0 10px 0;
		}
		
			#uslugi .kategorie-uslug-grid a:nth-child(1):after,
			#uslugi .kategorie-uslug-grid a:nth-child(2):after {
				content: "";
				width: 100%;
				height: 1px;
				background: #BCC3C0;
				display: block;
				
				position: absolute;
				bottom:-10px;
				left: 0;
			}
			
			#uslugi .kategorie-uslug-grid a .kategoria-uslug-inner {
				display: flex;
				align-items: center;
				gap: 25px;
			}
			
				#uslugi .kategorie-uslug-grid a .kategoria-uslug-inner .kategoria-uslug-icon {
					display: block;
					width: 30px;
					height: 30px;
				}
			
					#uslugi .kategorie-uslug-grid a .kategoria-uslug-inner .kategoria-uslug-icon img {
						display: block;
						width: 100%;
						height: 100%;
						object-fit: contain;
						object-position: 50% 50%;
					}
			
				#uslugi .kategorie-uslug-grid a .kategoria-uslug-inner .kategoria-uslug-name {
					font-family: "Manuale", serif;
					font-size: 25px;
					font-weight: 500;
					
					width: 100%;
					display: flex;
					justify-content: space-between;
					align-items: center;
				}
				
					#uslugi .kategorie-uslug-grid a .kategoria-uslug-inner .kategoria-uslug-name:after {
						content: "";
						display: block;
						width: 8px;
						height: 14px;
						margin-right: 10px;

						background-image: url(../graf/icoArrow.svg);
						background-size: contain;
						background-repeat: no-repeat;
						background-position: 50% 50%;
						transition: all 0.2s ease;
					}
				
					#uslugi .kategorie-uslug-grid a:hover .kategoria-uslug-inner .kategoria-uslug-name:after {
						margin-right: 0;
						transition: all 0.2s ease;
					}
						
		#uslugi .kategorie-uslug-grid a:hover {
			background: var(--greenVLight);
		}
		
.mediaTextBox {
	grid-template-columns: 50px auto !important;
	gap: 25px;
}

	.mediaTextBox .wp-block-media-text__media {
		align-self: flex-start;
		width: 100%;
		height: 50px;
	}
	
		.mediaTextBox .wp-block-media-text__media img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: contain;
			object-position: 50% 50%;
		}
	
	.mediaTextBox .wp-block-media-text__content {
		align-self: flex-start;
		padding: 0;
	}
		
		.mediaTextBox .wp-block-media-text__content p {
			padding: 0 !important;
		}
		
		.mediaTextBox .wp-block-media-text__content strong {
			font-family: "Manuale", serif;
			font-size: 20px;
			font-weight: 600;
		}
		
.blockColumns {
	padding: 80px 0;
}

	.blockColumns .wp-block-columns {
		gap: 80px;
	}
	
	.blockColumns sup {
		display: block;
	}
	
	.blockColumns h2 {
		margin-bottom: 10px;
	}		
	
	.blockColumns .wp-block-buttons {
		margin-top: 50px;
	}		

	
#kimJestem {
	background: #fbfbfb;
}
	
	#kimJestem .wp-block-media-text:not(:first-child) {
		margin: 35px 0;
		padding: 35px 0 0 0;
		
		border-top: 1px solid #BCC3C0;
	}
		
		
#doradztwoFinansowe {
	background: #fbfbfb;
	padding-bottom: 300px;
	padding-top: 0;
}
			
	#doradztwoFinansowe h2 {
		padding-top: 80px;
		margin-bottom: 10px;
		border-top: 1px solid #BCC3C0;
	}
		
#banerKontakt {
	position: relative;
	z-index: 1;
	border-radius: 4px;
	background: var(--greenVDark);
	margin-top: -180px;
	overflow: hidden;
}

	#banerKontakt .wp-block-columns {
		padding: 60px 0 60px 30px;
	}
	
	#banerKontakt .wp-block-column:first-child {
		box-sizing: border-box;
		color: #fff;
		min-width: 550px;
		z-index: 1;
	}
		
	#banerKontakt .wp-block-column sup {
		color: #fff;
	}
		
	#banerKontakt .wp-block-column h2 {
		color: #fff;
	}
	
	#banerKontakt .wp-block-column figure {
		position: absolute;
		z-index: -1;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
	}

		#banerKontakt .wp-block-column figure img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: 50% 50%;
		}

#footer {
	padding-top: 80px;
		gap: 0;
}
	
	#footer .wp-block-column {
		box-sizing: border-box;
		flex-basis: 25%;
		padding: 20px 5% 5% 5%;
		border-bottom: 1px solid #ddd;
	}
	
	#footer .wp-block-column:nth-child(1) {
		padding: 20px 5% 5% 0;
		border-right: 1px solid #ddd;
	}
	
	#footer .wp-block-column:nth-child(4) {
		flex-basis: 30%;
		min-width: 360px;
		padding: 20px 0 5% 5%;
	}

	#footer .wp-block-column:nth-child(4) {
		display: flex;
		flex-direction: column;
		gap: 25px;
	}
	
	#footer .wp-block-column {
		padding-bottom: 50px;
		border-bottom: 1px solid #ddd;
	}
	
	#footer em {
		font-style: normal;
		font-family: "Manuale", serif;
		font-size: 25px;
		font-weight: 600;
	}
	
	#footer .wp-block-site-logo a {
		display: block;
		margin-bottom: 15px;
	}
		
		#footer .wp-block-site-logo a img {
			display: block;
			width: 80px;
			height: auto;
		}
		
	#footer a.icoSocial {
		width: 22px;
		height: 22px;
		margin: 10px 5px 0 0;
	}
	
	#footer ul {
		list-style: none;
	}
		
		#footer ul li {
			padding: 20px 0 0 0;
		}
		
.footerBottom {
	padding: 20px 0 20px 0;
	
	display: flex;
	align-items: center;
	font-size: 14px;
	justify-content: space-between;
	
}


#breadcrumbs {
	padding: 30px 0 25px 0;
	position: relative;
	z-index: 1;
}

	#breadcrumbs a {
		color: var(--greyLight);
	}

	#breadcrumbs a:hover {
		color: var(--green);
	}
	
	#breadcrumbs span.breadcrumb_last  {
		color: var(--greyDark);
		font-weight: 600;
	}

.bgKontakt #breadcrumbs,
.topBg #breadcrumbs {
	color: #fff;
}
	
	.bgKontakt #breadcrumbs a,
	.topBg #breadcrumbs a {
		color: #fff;
	}
	
	.bgKontakt #breadcrumbs a:hover,
	.topBg #breadcrumbs a:hover {
		color: var(--green);
	}
	
	.bgKontakt #breadcrumbs span.breadcrumb_last,
	.topBg #breadcrumbs span.breadcrumb_last  {
		color: #fff;
		font-weight: 600;
	}

#content.topBg {
	position: relative;
	z-index: 1;
	padding-bottom: 250px;
	background-color: #fbfbfb;
}

#content.bhWhite {
	background-color: #fbfbfb;
}

#content.bgGrey {
	background-color: #EFEFEF
}

#content.bgGrey {
	background-color: var(--grey);
}

	#content.topBg:before {
		content: "";
		display: block;
		width: 100%;
		height: 500px;
		position: absolute;
		z-index: -1;
		left: 0;
		top: 0;
		background-image: url(../graf/bgHero.jpg);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: 50% 50%
	}

	#content.topBg:after {
		content: "";
		display: block;
		width: 100%;
		height: 50%;
		position: absolute;
		z-index: -2;
		left: 0;
		top: 0;
		background-color: var(--grey);
	}
	
#content .contentTxt {
	padding-bottom: 250px;
}	

	#content .contentTxt h2,
	#content .contentTxt h3 {
		padding: 20px 0 5px 0;
	}	
	
	#content .contentTxt ul {
		padding: 5px 0 5px 20px;
	}
		
		#content .contentTxt ul li {
			padding: 2px 0;
		}

#introOmnie {

}

	#introOmnie .wp-block-columns {
		background: #fbfbfb;
		border-radius: 4px;
		padding: 50px 5%;
		gap: 80px;
		justify-content: space-between;
	}
	
		#introOmnie .wp-block-column:first-child {
			flex-grow: 0;
			flex-basis: 50%;
		}
		
		#introOmnie .wp-block-column:last-child {
			flex-grow: 0;
			flex-basis: 30%;
			min-width: 450px;
		}
		
		#introOmnie .wp-block-columns p {
			padding: 8px 0;
		}
		
		#introOmnie .wp-block-columns h1 {
			margin-bottom: 20px;
		}
		
		#introOmnie .wp-block-buttons {
			margin-top: 50px;
		}		
	
		#introOmnie .wp-block-columns figure {
			position: relative;
			z-index: 1;
			display: block;
			width: 430px;
			height: 430px;
		}
		
			#introOmnie .wp-block-columns figure:before {
				content: "";
				display:block;
				width: 50%;
				height: 50%;
				aspect-ratio: 1 / 1;
				position: absolute;
				z-index: -1;
				left: 65%;
				top: 35%;
				transform: translate(-50%, -50%);
				background: var(--green);
				border-radius: 50%;
				filter: blur(55px);
			}
			
			#introOmnie .wp-block-columns figure img {
				display: block;
				width: 100%;
				height: 100%;
				border-radius: 50%;
				object-fit: cover;
				object-position: 50% 50%;
			}
			

			
#oMnieDetails {
	background-color: var(--grey);
}
	
	#oMnieDetails .wp-block-media-text:not(:first-child) {
		margin: 35px 0;
		padding: 35px 0 0 0;
		
		border-top: 1px solid #BCC3C0;
	}

#certyfikaty {
	background: #fbfbfb;
}

	#certyfikaty .swiper  {
		position: relative;
		margin-top: 50px;
		z-index: 1;
	}

		#certyfikaty .swiper:before {
			content: "";
			display: block;
			width: 10%;
			height: 100%;
			position: absolute;
			z-index: 10;
			left: 0;
			top: 0;
			background: linear-gradient(90deg, rgba(251, 251, 251, 0) 0%, #FBFBFB 45.09%);
			transform: scale(-1);
		}
		
		#certyfikaty .swiper:after {
			content: "";
			display: block;
			width: 10%;
			height: 100%;
			position: absolute;
			z-index: 10;
			right: 0;
			top: 0;
			background: linear-gradient(90deg, rgba(251, 251, 251, 0) 0%, #FBFBFB 45.09%);
		}
		
		
			#certyfikaty .swiper a {
				display: block;
				overflow: hidden;
			}
			
				#certyfikaty .swiper a img {
					transform: scale(1);
					transition: all 0.3s ease;
				}
				
				#certyfikaty .swiper a:hover img {
					transform: scale(1.05);
					transition: all 0.3s ease;
				}
		
	#certyfikaty .swiper-button-prev,
	#certyfikaty .swiper-button-next {
		z-index: 999;
	}
		
		#certyfikaty .swiper-button-prev:after,
		#certyfikaty .swiper-button-next:after {
			font-size: 22px;
			font-weight: bold;
		}
		
#uslugiPage {
	
}

	#uslugiPage .uslugiPageInner {
		background: #fbfbfb;
		border-radius: 4px;
		padding: 50px 5%;
	}
	
	#uslugiPage .uslugiPageInner .wp-block-column:first-child {
		flex-basis: 80%;
	}

	#uslugiPage .uslugiPageInner .wp-block-column:last-child {
		flex-basis: 20%;
		min-width: 170px;
	}

	#uslugiPage .kategorie-uslug-grid {
		display: flex;
		gap: 50px;
		background: var(--grey);
		padding: 15px 20px;
		box-sizing: border-box;
		margin: 20px auto;
		border-radius: 4px;
	}
	
		#uslugiPage .kategorie-uslug-header {
			font-weight: 600;
		}
		
		#uslugiPage .kategorie-uslug-grid a {
			position: relative;
			display: block;
			color: inherit;
		}
			
			#uslugiPage .kategorie-uslug-grid a:after {
				content: "";
				display: block;
				width: 0%;
				height: 2px;
				background: var(--green);
			
				position: absolute;
				bottom: 0;
				left: 0;
				transition: all 0.3s ease;
			}
			
			#uslugiPage .kategorie-uslug-grid a.active:after,
			#uslugiPage .kategorie-uslug-grid a:hover:after {
				width: 100%;
				transition: all 0.3s ease;
			}
			
		#uslugiPage .uslugi-grid {
			display: grid; 
			grid-auto-columns: 1fr; 
			grid-template-columns: 1fr 1fr; 
			gap: 10px 50px; 
		}
				
			#uslugiPage .uslugi-grid a {
				position: relative;
				display: flex;
				gap: 0 30px;
				align-items: center;
				justify-content: flex-start;
				
				font-size: 16px;
				font-weight: 500;
				margin: 0 0 10px 0;
				
				padding: 20px 15px;
				box-sizing: border-box;
			}
			
			#uslugiPage .uslugi-grid a:after {
				content: "";
				width: 100%;
				height: 1px;
				background: #BCC3C0;
				display: block;
				position: absolute;
				bottom: -10px;
				left: 0;
			}
			
				#uslugiPage .uslugi-grid a .usluga-thumb {
					flex-basis: 20px;
					height: 20px;
					
					display: flex;
					align-items: center;
				}
			
				#uslugiPage .uslugi-grid a .usluga-title {
					flex-grow: 1;
					text-align: left;
					white-space: unset;
					
					display: flex;
					align-items: center;
					justify-content: space-between;
				}
				
				#uslugiPage .uslugi-grid a .usluga-title:after {
					content: "";
					display: block;
					width: 6px;
					height: 12px;
					margin-right: 10px;
					background-image: url(../graf/icoArrow.svg);
					background-size: contain;
					background-repeat: no-repeat;
					background-position: 50% 50%;
					transition: all 0.2s ease;
				}
				
				#uslugiPage .uslugi-grid a:hover .usluga-title:after {
					margin-right: 0;
					transition: all 0.2s ease;
				}
				
				
			#uslugiPage .uslugi-grid a:hover {
				background: var(--greenVLight);
			}
			
#uslugaPage {
	padding-top: 10px;
	padding-bottom: 250px;
}

	#uslugaPage a.back {
		color: var(--green);
		font-weight: 600;
	}
	
	#uslugaPage a.back {
		content: "";
		position: relative;
		display: inline-flex;
		align-items: center;
		gap: 2px;
		color: var(--greenDark);
	}
		
		#uslugaPage a.back:before {
			content: "";
			display: block;
			width: 6px;
			height: 12px;
			margin-right: 10px;
			transform: scale(-1);
					
			background-image: url(../graf/icoArrow.svg);
			background-size: contain;
			background-repeat: no-repeat;
			background-position: 50% 50%;
		}
		
	#uslugaPage .wp-block-columns {
		padding-top: 30px;
		gap: 80px;
	}
	
		#uslugaPage .wp-block-column:first-child {
			flex-basis: 60%;
		}
			
			#uslugaPage h1 {
				font-weight: 700;
				display: flex;
				align-items: center;
				gap: 15px;
				width: 100%;
				margin-bottom: 15px;
			}
				
				#uslugaPage figure {
					display: inline-block;
					width: 30px;
					height: 50px;
				}
				
					#uslugaPage figure img {
						display: block;
						width: 100%;
						height: 100%;
						object-fit: contain;
						object-position: 50% 100%;
					}
	
		#uslugaPage .wp-block-column:last-child {
			flex-basis: 40%;
			padding-left: 80px;
			border-left: 1px solid #BCC3C0;
		}
	
			#uslugaPage .wp-block-column:last-child strong {
				display: block;
				font-family: "Manuale", serif;
				font-weight: bold;
				font-size: 20px;
			}
	
			#uslugaPage .wp-block-column:last-child ul {
				margin-top: 15px;
				list-style: none;
			}
	
				#uslugaPage .wp-block-column:last-child ul li {
					padding: 8px 0 8px 30px;
					
					background-image: url(../graf/icoCheck.svg);
					background-size: 18px 18px;
					background-repeat: no-repeat;
					background-position: 0 11px;
				}
				
.bgKontakt {
	background-image: url(../graf/bgKontakt.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	
	color: #fff;
}

	.bgKontakt h1 {
		color: #fff;
		margin-bottom: 15px;
	}
	
	.bgKontakt .wp-block-columns {
		justify-content: space-between;
		padding-bottom: 50px;
	}
	
		.bgKontakt .wp-block-column:first-child {
			flex-basis: 40%;
			min-width:420px;
			display: flex;
			flex-direction: column;
			gap: 0;
			flex-grow: 0;
			padding-top: 50px;
		}
			
			.bgKontakt .wp-block-column:first-child .icoMail {
				padding: 32px 0 !important;
				border-top: 1px solid #0E7F2D;
				
				font-size: 20px;
				margin-top: 50px;
			}
			
			.bgKontakt .wp-block-column:first-child .icoTel {
				padding: 32px 0 !important;
				border-top: 1px solid #0E7F2D;
				border-bottom: 1px solid #0E7F2D;
				
				font-size: 20px;
				margin-bottom: 60px;
			}
			
			.bgKontakt .wp-block-column:first-child .social {
				display: flex;
				gap: 8px;
				align-items: center;
			}
			
		.bgKontakt .wp-block-column:last-child {
			flex-basis: 40%;
			min-width: 450px;
			flex-grow: 0;
		}
		

form.wpcf7-form {
	position: relative;
	background: #fff;
	padding: 50px 5% 50px 5%;
	border-radius: 4px;
}
		
	form.wpcf7-form h3 {
		font-size: 25px;
		text-align: center;
		font-weight: 600;
	}
		
	form.wpcf7-form label {
		display: block;
		margin: 20px 0;
	}
		
	form.wpcf7-form label strong {
		display: block;
		font-weight: 400;
		padding-bottom: 3px;
		color: var(--greyDark);
	}
	
	form.wpcf7-form label input,
	form.wpcf7-form label textarea {
		font-family: "DM Sans", sans-serif;
		font-size: 16px;
		color: var(--greyDark);
		
		display: block;
		box-sizing: border-box;
		width: 100%;
		padding: 13px;
		border: 1px solid #BCC3C0;
		border-radius: 4px;
	}
		
	form.wpcf7-form label textarea {
		height: 120px;
		resize: none;
	}
		
	form.wpcf7-form label input::placeholder,
	form.wpcf7-form label textarea::placeholder {
		color: #AFAFAF;
	}
	
	form.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
		margin: 0;
	}
	
		form.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label {
			display: grid; 
			grid-auto-columns: 1fr; 
			grid-template-columns: 16px 1fr; 
			gap: 0px 10px; 
			align-items: flex-start;
			font-size: 14px;
			color: var(--greyDark);
			margin: 5px 0;
		}
		
			form.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label input {
				margin-top: 5px;
			}
		
	form.wpcf7-form .submit {
		position: relative;
		margin-top: 25px;
	}
	
		form.wpcf7-form .submit .submit_inner {
			margin: 0 auto;
			text-align: center;
			padding: 0 20px;
			background: #fff;
		}
		

	form.wpcf7-form .wpcf7-response-output {
		position: relative;
		margin: 20px auto 10px auto;
	}

		form.wpcf7-form .wpcf7-response-output {
			position: relative;
			margin: 20px auto 10px auto;
			padding: 10px;
			box-sizing: border-box;
			background: var(--bordowyMiddle2);
			border: 0;
			color: #fff;
			text-align: center;
		}
				
				
#partnerzy {
	padding-bottom: 250px;
}

#listaPartnerow {
	gap: 0 30px;
	padding-top: 25px;
	align-items: flex-start;
}


	#listaPartnerow .wp-block-media-text {
		grid-template-columns: 120px auto !important;
		gap: 25px;
		
		border-bottom: 1px solid #BCC3C0;
		padding: 25px 0;
		margin-top: 20px;
	}

	#listaPartnerow .wp-block-media-text:nth-child(1),
	#listaPartnerow .wp-block-media-text:nth-child(2) {
		border-top: 1px solid #BCC3C0;
	}
		
		
		#listaPartnerow .wp-block-media-text__media {
			align-self: flex-start;
			width: 100%;
			height: 100px;
		}
		
			#listaPartnerow .wp-block-media-text__media img {
				display: block;
				width: 100%;
				height: 100%;
				object-fit: contain;
				object-position: 50% 0%;
			}
		
		#listaPartnerow .wp-block-media-text__content {
			align-self: flex-start;
			padding: 0;
		}
			
			#listaPartnerow .wp-block-media-text__content p {
				padding: 0 !important;
			}
			
			#listaPartnerow .wp-block-media-text__content sup {
				display: inline-block;
				padding: 2px 8px;
				font-size: 14px;
				letter-spacing: 1px;
				color: var(--green);
				background: var(--greenLight);
			}
			
			#listaPartnerow .wp-block-media-text__content strong {
				font-family: "Manuale", serif;
				font-size: 25px;
				font-weight: 500;
				
				display: block;
				margin: 20px 0 5px 0;
			}
			
			#listaPartnerow .wp-block-media-text__content .wp-block-buttons {
				margin-top: 30px;
			}
			
			#listaPartnerow .wp-block-media-text__content a.wp-block-button__link {
				background: unset;
				color: var(--green);
				font-weight: 600;	
				border: 0;
				outline: 0;
				padding: 2px 0;
				
				display: flex;
				align-items: center;
				gap: 10px;
			}
			
				#listaPartnerow .wp-block-media-text__content a.wp-block-button__link:after {
					content: "";
					display: block;
					width: 6px;
					height: 12px;
							
					background-image: url(../graf/icoArrow.svg);
					background-size: contain;
					background-repeat: no-repeat;
					background-position: 50% 50%;
					transition: all 0.2s ease;
				}
				
				#listaPartnerow .wp-block-media-text__content a.wp-block-button__link:hover:after {
					margin-left: 5px;
					transition: all 0.2s ease;
				}
				
				
.komentarze-layout {
	display: flex;
	gap: 40px;
	padding-top: 20px;
}
					
	.komentarze-layout .player-col {
		flex-basis: 70%;
		background: #fbfbfb;
		padding: 25px;
		box-sizing: border-box;
		border-radius: 4px;
	}
	
		.komentarze-layout .player-col #currentVideoTitle {
			font-weight: 500;
			font-size: 25px;
			margin-bottom: 10px;
		}

		.komentarze-last-video .plyr,
		.komentarze-layout .plyr {
			display: flex;
			flex-direction: column;
		}
		
		.komentarze-last-video .plyr .plyr__video-wrapper,
		.komentarze-layout .plyr .plyr__video-wrapper {
			order: 1;
			aspect-ratio: 2 / 1.1 !important;
		}
		
		.komentarze-last-video .plyr .plyr__controls,
		.komentarze-layout .plyr .plyr__controls {
			order: 2;
			width: 100%;
			position: relative !important;
			padding: 15px 0 0 0;
			background: #fbfbfb !important;
			
			transform: unset !important;
			opacity: 1 !important;
			color: var(--green);
		}
		
		.komentarze-last-video .plyr .plyr__controls {
			padding: 10px 5px;
		}
		
		
		.komentarze-last-video .plyr--full-ui input[type=range],
		.komentarze-layout .plyr--full-ui input[type=range] {
			color: var(--green) !Important;
		}
		
		.komentarze-last-video .plyr__progress__buffer,
		.komentarze-layout .plyr__progress__buffer {
			background: #ccc !important;
		}
		
		.komentarze-last-video .plyr--video .plyr__control:focus-visible, 
		.komentarze-last-video .plyr--video .plyr__control:hover, 
		.komentarze-last-video .plyr--video .plyr__control[aria-expanded=true],
		.komentarze-layout .plyr--video .plyr__control:focus-visible, 
		.komentarze-layout .plyr--video .plyr__control:hover, 
		.komentarze-layout .plyr--video .plyr__control[aria-expanded=true] {
			background: var(--green) !important;
		}	
		
		.komentarze-last-video .plyr button.plyr__control--overlaid,
		.komentarze-layout .plyr button.plyr__control--overlaid {
			background: var(--green);
		}
		
		
	.komentarze-layout .playlist-col {
		flex-basis: 30%;
		max-width: 30%;
		background: #fbfbfb;
		padding: 25px;
		box-sizing: border-box;
		border-radius: 4px;
		
		display: flex;
		flex-direction: column;
	}
	
		.komentarze-layout .playlist-col .playlist-years {
			overflow: auto;
			width: 100%;
			margin-bottom: 25px;
			display: flex;
			gap: 5px;
			flex-wrap: nowrap;
		}
	
			.komentarze-layout .playlist-col .playlist-years .year-tab {
				color: var(--greyDark);
				padding: 5px 10px;
				background: transparent;
				
				font-size: 16px;
				font-weight: 500;
				border-radius: 4px;
				cursor: pointer;
				transition: all 0.2s ease;
			}
		
			.komentarze-layout .playlist-col .playlist-years .year-tab.active {
				background: var(--greenLight);
				color: var(--green);
				font-weight: bold;
				transition: all 0.2s ease;
			}
		
			.komentarze-layout .playlist-col .playlist-years .year-tab:hover {
				background: var(--greenLight);
				color: var(--green);
				transition: all 0.2s ease;
			}
		
		.komentarze-layout .playlist-col .playlist-year-panels {
			flex-grow: 1;
			overflow: hidden;
			width: 100%;
			height: 100%;
			box-sizing: border-box;
			position: relative; /* dla absolutnego scrollbara */
		}
			
		.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel {
			position: absolute;
			left: 0;
			top: 0;
			box-sizing: border-box;
			padding-right: 8px;
			
			height: 100%;
			width: 100%;
			overflow: auto;
			scrollbar-width: thin;
			scrollbar-color: var(--green) #eaeaea;
			opacity: 0;
			transform: translateX(-100%);
			transition: all 0.2s ease;
		}
		

		/* WebKit (Chrome, Edge, Safari) custom scrollbar dla panelu rocznego */
		.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel::-webkit-scrollbar {
			width: 5px;
			height: 10px;
		}

		.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel::-webkit-scrollbar-track {
			background: #eaeaea;
		}

		.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel::-webkit-scrollbar-thumb {
			background-color: var(--green);
			border-radius: 4px;
			border: 2px solid #eaeaea;
		}

		/* Absolute overlay scrollbar (tor + kciuk) */
		.komentarze-layout .playlist-col .playlist-year-panels .custom-scrollbar {
			position: absolute;
			right: 0px;
			top: 0;
			bottom: 0;
			width: 4px;
			z-index: 5;
			pointer-events: none; /* tor nie łapie zdarzeń */
		}

		.komentarze-layout .playlist-col .playlist-year-panels .custom-scrollbar .track {
			position: absolute;
			right: 0;
			top: 0;
			bottom: 0;
			width: 4px;
			background: rgba(0,0,0,0.06);
			border-radius: 8px;
		}

		.komentarze-layout .playlist-col .playlist-year-panels .custom-scrollbar .thumb {
			position: absolute;
			right: 0;
			top: 0;
			width: 4px;
			background: var(--green);
			border-radius: 4px;
			opacity: 0.2;
			pointer-events: auto; 
			transition: height 0.1s ease, top 0.1s ease, opacity 0.2s ease;
		}

		/* Po najechaniu na sekcję — pełna widoczność kciuka */
		.komentarze-layout .playlist-col .playlist-year-panels:hover .custom-scrollbar .thumb {
			opacity: 1;
		}

		/* Ukryj natywny pasek gdy używamy overlayowego */
		.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel.hide-native-scrollbar {
			scrollbar-width: none; /* Firefox */
		}
		.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel.hide-native-scrollbar::-webkit-scrollbar {
			width: 0;
			height: 0;
		}

		/* Overlayowy custom scrollbar: ukryj natywny scrollbar gdy aktywny tryb custom */
			
			.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel.active {
				opacity: 1;
				transform: translateX(0);
				transition: all 0.2s ease;
			}
		
				.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel li {
					border-top: 1px solid #BCC3C0;
				}
				
				.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel li button {
					display: flex;
					align-items: center;
					justify-content: space-between;
					width: 100%;
					background: transparent;
					margin: 10px 0;
					padding: 22px 15px;
					text-align: left;
					font-size: 16px;
					text-transform: uppercase;
					transition: all 0.2s ease;
				}
				
					.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel li button:after {
						content: "";
						display: block;
						width: 15px;
						height: 15px;						
							
						background-image: url(../graf/icoPlay.svg);
						background-size: contain;
						background-repeat: no-repeat;
						background-position: 50% 50%;
					}
				
				.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel li button:hover {
					background: var(--greenLight);
					color: var(--green);
					transition: all 0.2s ease;
				}
				
				.komentarze-layout .playlist-col .playlist-year-panels .playlist-year-panel li button.active {
					background: var(--greenLight);
					color: var(--green);
					font-weight: 700;
					transition: all 0.2s ease;
				}
				
	.komentarze-last-video {
		
	}
	
		.komentarze-last-video .plyr__video-wrapper {
			aspect-ratio: 2 / 1.1 !important;
		}



/* Video Chapters */
.video-chapters {
    margin-top: 20px;
    padding: 15px;
    background: #f5f5f5;
    border-radius: 4px;
}

	.chapters-title {
		font-weight: bold;
		margin-bottom: 10px;
		font-size: 1.1em;
		color: #333;
	}
	
	.chapters-list {
		list-style: none;
		padding: 0;
		margin: 0;
	}
	
	.chapters-list li {
		margin-bottom: 5px;
	}
	
	.chapter-link {
		background: none;
		border: none;
		padding: 0;
		margin: 0;
		cursor: pointer;
		text-align: left;
		display: flex;
		align-items: center;
		color: #555;
		font-size: 0.95em;
		transition: color 0.2s;
		width: 100%;
	}
	
	.chapter-link:hover {
		color: var(--green);
	}
	
	.chapter-link .ch-time {
		color: var(--green);
		margin-right: 10px;
		flex-shrink: 0;
		font-weight: 600;
	}
	
	.chapter-link .ch-title {
		line-height: 1.4;
	}


				
				
@media screen and (max-width: 1200px) {
	header .headerBottom .headerBottomInner {
		gap: 5px;
	}
	
	header .headerBottom .headerBottomInner #menu ul {
		gap: 15px;
	}
	
	header .headerBottom .headerBottomInner #menu ul .button a {
		padding: 10px 20px;
	}
	
	#quote {
		padding-top: 0;
	}
	
	#footer .wp-block-column {
		padding-left: 20px;
		padding-right: 20px;
	}
	
	#footer .wp-block-column:nth-child(1) {
		padding-right: 20px;
	}
	
	#footer .wp-block-column:nth-child(4) {
		padding-left: 20px;
	}
	

	#introOmnie .wp-block-column:last-child {
		min-width: 350px;
	}
	
	#introOmnie .wp-block-columns figure {
		width: 330px;
		height: 330px;
	}
	
	#uslugaPage .wp-block-columns {
		gap: 30px;
	}
	
	#uslugaPage .wp-block-column:last-child {
		padding-left: 30px;
	}
}