/* End custom CSS */

.elementor-widget-section .eael-protected-content-message {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-section .protected-content-error-msg {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-html .eael-protected-content-message {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-html .protected-content-error-msg {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-eael-wpforms .eael-protected-content-message {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-eael-wpforms .protected-content-error-msg {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-eael-wpforms .eael-contact-form-description, .elementor-widget-eael-wpforms .wpforms-description {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-weight: var(--e-global-typography-accent-font-weight);
}

.elementor-widget-eael-wpforms .eael-wpforms .wpforms-field label, .elementor-widget-eael-wpforms .eael-wpforms .wpforms-field legend {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-weight: var(--e-global-typography-accent-font-weight);
}

.elementor-widget-eael-wpforms .eael-wpforms .wpforms-field input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .elementor-widget-eael-wpforms .eael-wpforms .wpforms-field textarea, .elementor-widget-eael-wpforms .eael-wpforms .wpforms-field select {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-weight: var(--e-global-typography-accent-font-weight);
}

.elementor-widget-eael-wpforms .eael-wpforms .wpforms-submit-container .wpforms-submit {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-weight: var(--e-global-typography-accent-font-weight);
}

.elementor-48 .elementor-element.elementor-element-a741c23 .eael-wpforms label.wpforms-error {
	display: block !important;
}

.elementor-48 .elementor-element.elementor-element-a741c23 .eael-wpforms .wpforms-field input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .elementor-48 .elementor-element.elementor-element-a741c23 .eael-wpforms .wpforms-field select {
	height: 30px;
}

.elementor-48 .elementor-element.elementor-element-a741c23 .eael-wpforms .wpforms-submit-container .wpforms-submit:hover, .elementor-48 .elementor-element.elementor-element-a741c23 .eael-wpforms .wpforms-container-full .wpforms-submit-container .wpforms-form button[type=submit]:hover {
	background: #065689 !important;
}

.elementor-48 .elementor-element.elementor-element-a741c23 .eael-wpforms input.wpforms-error {
	border-width: 1px;
}

.elementor-48 .elementor-element.elementor-element-a741c23 .eael-wpforms textarea.wpforms-error {
	border-width: 1px;
}

:root {
	--page-title-display: none;
}

/* Start custom CSS for section, class: .elementor-element-a992da8 */

/* Wklej do Własnego CSS całej sekcji HERO, bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-a992da8 {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	--widgets-spacing: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-a992da8 > .elementor-container, .elementor-48 .elementor-element.elementor-element-a992da8 > .e-con-inner {
	width: 100%;
	max-width: none;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-a992da8 > .elementor-container > .elementor-column {
	width: 100%;
}

.elementor-48 .elementor-element.elementor-element-a992da8 > .elementor-container > .elementor-column > .elementor-widget-wrap {
	padding: 0 !important;
}

.elementor-48 .elementor-element.elementor-element-a992da8 .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-a992da8 .elementor-widget-html > .elementor-widget-container {
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
}

#gora.bd-hero {
	--bd-hero-cream: oklch(.966 .014 88);
	--bd-hero-forest: oklch(.31 .055 163);
	--bd-hero-deep: oklch(.24 .045 163);
	--bd-hero-amber: oklch(.652 .117 46);
	--bd-hero-soft: oklch(.79 .075 60);
	--bd-hero-cta: oklch(.49 .13 42);
	--bd-hero-muted: oklch(.47 .022 160);
	--bd-hero-border: oklch(.86 .018 100);
	position: relative;
	isolation: isolate;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: var(--bd-hero-deep);
	color: var(--bd-hero-cream);
	font-family: "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	font-size: 1rem;
	line-height: 1.65;
	font-weight: 400;
	text-align: left;
	-webkit-font-smoothing: antialiased;
}

#gora.bd-hero *, #gora.bd-hero *::before, #gora.bd-hero *::after {
	box-sizing: border-box;
}

#gora.bd-hero [hidden] {
	display: none !important;
}

#gora.bd-hero p, #gora.bd-hero h1 {
	margin: 0;
	padding: 0;
}

#gora.bd-hero a, #gora.bd-hero button {
	font-family: inherit;
	text-transform: none;
	letter-spacing: normal;
	font-style: normal;
	text-decoration: none;
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

#gora.bd-hero a:focus-visible, #gora.bd-hero button:focus-visible {
	outline: 3px solid var(--bd-hero-cream);
	outline-offset: 4px;
}

#gora.bd-hero svg {
	display: block;
	width: 1.125rem;
	height: 1.125rem;
	flex: 0 0 auto;
}

#gora.bd-hero .bd-hero-stage {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: 1fr auto;
	min-height: max(38rem, 78vh);
	min-height: max(38rem, 78svh);
	background: var(--bd-hero-deep);
	isolation: isolate;
}

#gora.bd-hero .bd-hero-slides, #gora.bd-hero .bd-hero-slide, #gora.bd-hero .bd-hero-slide picture, #gora.bd-hero .bd-hero-slide img, #gora.bd-hero .bd-hero-shade {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

#gora.bd-hero .bd-hero-slides {
	z-index: -3;
}

#gora.bd-hero .bd-hero-slide {
	opacity: 0;
	transition: opacity 1.25s ease;
	pointer-events: none;
}

#gora.bd-hero .bd-hero-slide.is-active {
	opacity: 1;
}

#gora.bd-hero .bd-hero-slide picture {
	display: block;
}

#gora.bd-hero .bd-hero-slide img {
	display: block;
	object-fit: cover;
	object-position: 50% 50%;
	max-width: none;
	border: 0;
	border-radius: 0;
}

#gora.bd-hero .bd-hero-slide-garden img {
	object-position: 43% 50%;
}

#gora.bd-hero .bd-hero-slide-tub img {
	object-position: 50% 56%;
}

#gora.bd-hero .bd-hero-shade {
	z-index: -1;
	pointer-events: none;
	background: linear-gradient(90deg, rgba(5, 22, 17, .3), rgba(5, 22, 17, .1) 70%), linear-gradient(0deg, rgba(5, 22, 17, .91) 0%, rgba(5, 22, 17, .58) 52%, rgba(5, 22, 17, .18) 100%);
}

#gora.bd-hero .bd-hero-content {
	grid-row: 1;
	align-self: end;
	position: relative;
	width: 100%;
	min-width: 0;
	max-width: 1240px;
	margin: 0 auto;
	padding: 7rem 1rem 1.5rem;
}

#gora.bd-hero .bd-hero-eyebrow {
	max-width: 100%;
	font-size: .875rem;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--bd-hero-soft);
}

#gora.bd-hero h1 {
	margin-top: 1.25rem;
	max-width: 48rem;
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -.01em;
	color: var(--bd-hero-cream);
	text-transform: none;
	overflow-wrap: break-word;
	text-shadow: 0 2px 18px rgba(0, 0, 0, .14);
}

#gora.bd-hero .bd-hero-lead {
	margin-top: 1.25rem;
	max-width: 36rem;
	color: var(--bd-hero-cream);
	font-size: 1.125rem;
	line-height: 1.65;
}

#gora.bd-hero .bd-hero-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: .75rem;
	margin-top: 2rem;
}

#gora.bd-hero .bd-hero-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5rem;
	min-height: 3rem;
	max-width: 100%;
	padding: .7rem 1.35rem;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: .975rem;
	font-weight: 600;
	line-height: 1.6;
	color: var(--bd-hero-cream);
	text-align: center;
	white-space: normal;
	transition: background-color .2s ease, color .2s ease, transform .2s ease;
}

#gora.bd-hero .bd-hero-button:visited {
	color: var(--bd-hero-cream);
}

#gora.bd-hero .bd-hero-button-primary {
	background: var(--bd-hero-cta);
	box-shadow: 0 16px 38px -24px rgba(0, 0, 0, .7);
}

#gora.bd-hero .bd-hero-button-outline {
	background: rgba(5, 22, 17, .44);
	border-color: rgba(246, 243, 235, .75);
}

#gora.bd-hero .bd-hero-controls-wrap {
	grid-row: 2;
	position: relative;
	display: flex;
	justify-content: flex-end;
	width: 100%;
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 1rem 1.5rem;
	min-width: 0;
}

#gora.bd-hero .bd-hero-controls {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .25rem;
	max-width: 100%;
	padding: .25rem;
	border: 1px solid rgba(246, 243, 235, .38);
	border-radius: 999px;
	background: rgba(5, 22, 17, .82);
	color: var(--bd-hero-cream);
}

#gora.bd-hero .bd-hero-control {
	appearance: none;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	flex: 0 0 auto;
	width: 2.75rem;
	min-width: 44px;
	height: 2.75rem;
	min-height: 44px;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 50%;
	box-shadow: none;
	color: var(--bd-hero-cream);
	font-size: 1rem;
	line-height: 1;
	cursor: pointer;
	transition: background-color .2s ease, transform .2s ease;
}

#gora.bd-hero .bd-hero-control svg {
	width: 1.25rem;
	height: 1.25rem;
}

#gora.bd-hero .bd-hero-control:disabled {
	cursor: default;
	opacity: .55;
}

#gora.bd-hero .bd-hero-control-divider {
	height: 1.125rem;
	width: 1px;
	background: rgba(246, 243, 235, .3);
	margin: 0 .2rem;
}

#gora.bd-hero .bd-hero-counter {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .6rem;
	min-width: 4.5rem;
	padding: 0 .25rem;
	font-size: .875rem;
	line-height: 1.5;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}

#gora.bd-hero .bd-hero-count-rule {
	width: 1rem;
	height: 1px;
	background: rgba(246, 243, 235, .5);
}

#gora.bd-hero .bd-hero-pause-icon {
	display: none;
}

#gora.bd-hero.bd-hero-is-playing .bd-hero-pause-icon {
	display: block;
}

#gora.bd-hero.bd-hero-is-playing .bd-hero-play-icon {
	display: none;
}

#gora.bd-hero .bd-hero-status, #gora.bd-hero .bd-hero-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

#gora.bd-hero .bd-hero-ratings {
	background: var(--bd-hero-cream);
	border-bottom: 1px solid var(--bd-hero-border);
	color: var(--bd-hero-forest);
}

#gora.bd-hero .bd-hero-ratings-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .5rem 1.5rem;
	max-width: 1240px;
	margin: 0 auto;
	padding: 1rem;
}

#gora.bd-hero .bd-hero-ratings-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .25rem 2rem;
	min-width: 0;
}

#gora.bd-hero .bd-hero-ratings a {
	display: inline-flex;
	align-items: center;
	gap: .625rem;
	min-height: 44px;
	max-width: 100%;
	padding: .35rem 0;
	color: var(--bd-hero-forest);
	font-size: 1rem;
	line-height: 1.5;
}

#gora.bd-hero .bd-hero-ratings a:visited {
	color: var(--bd-hero-forest);
}

#gora.bd-hero .bd-hero-ratings a:focus-visible {
	outline-color: var(--bd-hero-cta);
}

#gora.bd-hero .bd-hero-ratings strong {
	font-weight: 600;
}

#gora.bd-hero .bd-hero-star {
	color: var(--bd-hero-amber);
}

#gora.bd-hero .bd-hero-rating-meta {
	color: var(--bd-hero-muted);
}

#gora.bd-hero .bd-hero-external {
	flex: 0 0 auto;
	font-size: 1rem;
}

#gora.bd-hero .bd-hero-rating-date {
	flex: 0 1 auto;
	font-size: .875rem;
	color: var(--bd-hero-muted);
	line-height: 1.5;
}

@media (min-width: 640px) {
	#gora.bd-hero .bd-hero-stage {
		min-height: max(38rem, 86vh);
		min-height: max(38rem, 86svh);
	}
	
	#gora.bd-hero .bd-hero-content {
		padding-inline: 1.5rem;
	}
	
	#gora.bd-hero h1 {
		font-size: 3rem;
	}
	
	#gora.bd-hero .bd-hero-controls-wrap {
		padding: 0 1.5rem 2rem;
	}
	
	#gora.bd-hero .bd-hero-ratings-inner {
		padding: 1.5rem;
	}
}

@media (min-width: 768px) {
	#gora.bd-hero .bd-hero-slide-garden img {
		object-position: 50% 50%;
	}
	
	#gora.bd-hero .bd-hero-shade {
		background: linear-gradient(90deg, rgba(5, 22, 17, .36), rgba(5, 22, 17, .1) 65%, transparent), linear-gradient(0deg, rgba(5, 22, 17, .88), rgba(5, 22, 17, .52) 48%, rgba(5, 22, 17, .16));
	}
}

@media (min-width: 1024px) {
	#gora.bd-hero h1 {
		font-size: 4.1rem;
	}
}

@media (max-width: 479px) {
	#gora.bd-hero .bd-hero-actions {
		flex-direction: column;
		align-items: flex-start;
	}
	
	#gora.bd-hero .bd-hero-controls-wrap {
		justify-content: flex-start;
	}
	
	#gora.bd-hero .bd-hero-ratings-links {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (hover: hover) and (pointer: fine) {
	#gora.bd-hero .bd-hero-button:hover {
		transform: translateY(-2px);
	}
	
	#gora.bd-hero .bd-hero-button-primary:hover {
		background: oklch(.44 .12 42);
	}
	
	#gora.bd-hero .bd-hero-button-outline:hover {
		color: var(--bd-hero-deep);
		background: var(--bd-hero-cream);
	}
	
	#gora.bd-hero .bd-hero-control:not(:disabled):hover {
		background: rgba(246, 243, 235, .14);
	}
	
	#gora.bd-hero .bd-hero-ratings a:hover {
		text-decoration: underline;
		text-underline-offset: .25em;
	}
}

@media (prefers-reduced-motion: reduce) {
	#gora.bd-hero *, #gora.bd-hero *::before, #gora.bd-hero *::after {
		animation: none !important;
		transition: none !important;
	}
	
	#gora.bd-hero .bd-hero-button:hover {
		transform: none !important;
	}
}

@media (forced-colors: active) {
	#gora.bd-hero .bd-hero-content, #gora.bd-hero .bd-hero-controls {
		background: Canvas;
		color: CanvasText;
	}
	
	#gora.bd-hero .bd-hero-button, #gora.bd-hero .bd-hero-control {
		border: 1px solid ButtonText;
	}
}

@media print {
	#gora.bd-hero .bd-hero-slides, #gora.bd-hero .bd-hero-shade, #gora.bd-hero .bd-hero-controls-wrap {
		display: none;
	}
	
	#gora.bd-hero, #gora.bd-hero .bd-hero-stage {
		background: white;
		color: black;
		min-height: 0;
	}
	
	#gora.bd-hero .bd-hero-content {
		padding: 1rem 0;
	}
	
	#gora.bd-hero h1, #gora.bd-hero .bd-hero-lead, #gora.bd-hero .bd-hero-eyebrow {
		color: black;
		text-shadow: none;
	}
}

/* DOPISZ NA SAMYM DOLE istniejącego Własnego CSS sekcji HERO.
   Przywraca pojedynczy gradient z zaakceptowanego demo. Nie zmienia zdjęć. */
#gora.bd-hero .bd-hero-shade {
	background: linear-gradient(to top, oklch(.2 .04 163 / .88) 0%, oklch(.2 .04 163 / .45) 50%, oklch(.2 .04 163 / .2) 100%);
}

@media (min-width:768px) {
	#gora.bd-hero .bd-hero-shade {
		background: linear-gradient(to top, oklch(.2 .04 163 / .82) 0%, oklch(.2 .04 163 / .3) 50%, oklch(.2 .04 163 / .15) 100%);
	}
}

/* Czytelny label „DUSZNIKI-ZDRÓJ · SUDETY” */
#gora.bd-hero .bd-hero-eyebrow {
	display: inline-block;
	max-width: 100%;
	padding: 8px 14px;
	color: #fff;
	background: rgba(9, 42, 31, .88);
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 999px;
	text-shadow: none;
}

/* End custom CSS */

/* Start custom CSS for section, class: .elementor-element-5b448ef */

/* Wklej do Własnego CSS sekcji Elementora, bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-5b448ef {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	--widgets-spacing: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-5b448ef > .elementor-container, .elementor-48 .elementor-element.elementor-element-5b448ef > .e-con-inner {
	width: 100%;
	max-width: none;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-5b448ef > .elementor-container > .elementor-column {
	width: 100%;
}

.elementor-48 .elementor-element.elementor-element-5b448ef > .elementor-container > .elementor-column > .elementor-widget-wrap, .elementor-48 .elementor-element.elementor-element-5b448ef .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-5b448ef .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

#o-miejscu.bd-section {
	--bd-forest: oklch(.31 .055 163);
	--bd-deep: oklch(.24 .045 163);
	--bd-cream: oklch(.966 .014 88);
	--bd-sand: oklch(.925 .019 88);
	--bd-amber: oklch(.652 .117 46);
	--bd-cta: oklch(.49 .13 42);
	--bd-ink: oklch(.245 .03 160);
	--bd-muted: oklch(.47 .022 160);
	--bd-border: oklch(.86 .018 100);
	--bd-card: oklch(.995 .006 88);
	width: 100%;
	margin: 0;
	padding: 80px 0;
	background: var(--bd-cream);
	color: var(--bd-ink);
	font: 400 16px/1.65 "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	scroll-margin-top: 120px;
}

#o-miejscu *, #o-miejscu *::before, #o-miejscu *::after {
	box-sizing: border-box;
}

#o-miejscu [hidden] {
	display: none !important;
}

#o-miejscu .bd-wrap {
	width: 100%;
	max-width: 1240px;
	padding: 0 16px;
	margin: 0 auto;
}

#o-miejscu h2, #o-miejscu h3, #o-miejscu p, #o-miejscu figure, #o-miejscu blockquote {
	margin: 0;
	padding: 0;
	color: inherit;
}

#o-miejscu h2, #o-miejscu h3 {
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
	text-transform: none;
}

#o-miejscu h2 {
	font-size: 36px;
	text-wrap: balance;
}

#o-miejscu h3 {
	font-size: 29px;
}

#o-miejscu .bd-kicker {
	display: block;
	color: var(--bd-cta);
	font-size: 13px;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .17em;
	text-transform: uppercase;
}

#o-miejscu .bd-kicker::after {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: 16px 0 20px;
	background: var(--bd-amber);
}

#o-miejscu .bd-intro {
	max-width: 680px;
	margin-bottom: 40px;
}

#o-miejscu .bd-lead {
	margin-top: 20px;
	font-size: 18px;
	color: var(--bd-muted);
}

#o-miejscu .bd-copy {
	color: var(--bd-muted);
}

#o-miejscu .bd-copy p + p {
	margin-top: 20px;
}

#o-miejscu img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0;
}

#o-miejscu a, #o-miejscu button, #o-miejscu summary {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

#o-miejscu a {
	color: inherit;
}

#o-miejscu button {
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
	box-shadow: none;
}

#o-miejscu a:focus-visible, #o-miejscu button:focus-visible, #o-miejscu summary:focus-visible {
	outline: 3px solid var(--bd-amber);
	outline-offset: 5px;
}

#o-miejscu .bd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 11px 23px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--bd-cta);
	color: var(--bd-cream);
	font: 600 16px/1.5 "Source Sans 3", system-ui, sans-serif;
	text-decoration: none;
	text-align: center;
	transition: background .2s, transform .2s;
}

#o-miejscu .bd-btn:hover {
	background: var(--bd-deep);
	color: var(--bd-cream);
	transform: translateY(-2px);
}

#o-miejscu .bd-btn-outline {
	color: var(--bd-forest);
	background: transparent;
	border-color: var(--bd-border);
}

#o-miejscu .bd-btn-outline:hover {
	background: var(--bd-forest);
	color: var(--bd-cream);
}

#o-miejscu .bd-icon {
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	display: block;
}

#o-miejscu .bd-checklist {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

#o-miejscu .bd-checklist li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

#o-miejscu .bd-checklist .bd-icon {
	color: var(--bd-amber);
	margin-top: 3px;
}

#o-miejscu .bd-photo {
	overflow: hidden;
	border-radius: 6px;
	background: var(--bd-sand);
}

#o-miejscu .bd-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#o-miejscu .bd-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (min-width:640px) {
	#o-miejscu.bd-section {
		padding: 112px 0;
	}
	
	#o-miejscu .bd-wrap {
		padding: 0 24px;
	}
	
	#o-miejscu h2 {
		font-size: 44px;
	}
	
	#o-miejscu .bd-intro {
		margin-bottom: 48px;
	}
}

@media (prefers-reduced-motion:reduce) {
	#o-miejscu *, #o-miejscu *::before, #o-miejscu *::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

#o-miejscu .bd-about-grid {
	display: grid;
	gap: 40px;
	align-items: center;
}

#o-miejscu .bd-intro {
	margin-bottom: 24px;
}

#o-miejscu .bd-photo {
	aspect-ratio: 4/3;
	box-shadow: 0 18px 44px -26px oklch(.28 .05 160 / .55);
}

@media (min-width:1024px) {
	#o-miejscu .bd-about-grid {
		grid-template-columns: 1fr 1fr;
		gap: 64px;
	}
}

/* End custom CSS */

/* Start custom CSS for section, class: .elementor-element-a3bc0ad */

/* Wklej do Własnego CSS sekcji Elementora, bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-a3bc0ad {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	--widgets-spacing: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-a3bc0ad > .elementor-container, .elementor-48 .elementor-element.elementor-element-a3bc0ad > .e-con-inner {
	width: 100%;
	max-width: none;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-a3bc0ad > .elementor-container > .elementor-column {
	width: 100%;
}

.elementor-48 .elementor-element.elementor-element-a3bc0ad > .elementor-container > .elementor-column > .elementor-widget-wrap, .elementor-48 .elementor-element.elementor-element-a3bc0ad .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-a3bc0ad .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

#domki.bd-section {
	--bd-forest: oklch(.31 .055 163);
	--bd-deep: oklch(.24 .045 163);
	--bd-cream: oklch(.966 .014 88);
	--bd-sand: oklch(.925 .019 88);
	--bd-amber: oklch(.652 .117 46);
	--bd-cta: oklch(.49 .13 42);
	--bd-ink: oklch(.245 .03 160);
	--bd-muted: oklch(.47 .022 160);
	--bd-border: oklch(.86 .018 100);
	--bd-card: oklch(.995 .006 88);
	width: 100%;
	margin: 0;
	padding: 80px 0;
	background: var(--bd-cream);
	color: var(--bd-ink);
	font: 400 16px/1.65 "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	scroll-margin-top: 120px;
}

#domki *, #domki *::before, #domki *::after {
	box-sizing: border-box;
}

#domki [hidden] {
	display: none !important;
}

#domki .bd-wrap {
	width: 100%;
	max-width: 1240px;
	padding: 0 16px;
	margin: 0 auto;
}

#domki h2, #domki h3, #domki p, #domki figure, #domki blockquote {
	margin: 0;
	padding: 0;
	color: inherit;
}

#domki h2, #domki h3 {
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
	text-transform: none;
}

#domki h2 {
	font-size: 36px;
	text-wrap: balance;
}

#domki h3 {
	font-size: 29px;
}

#domki .bd-kicker {
	display: block;
	color: var(--bd-cta);
	font-size: 13px;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .17em;
	text-transform: uppercase;
}

#domki .bd-kicker::after {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: 16px 0 20px;
	background: var(--bd-amber);
}

#domki .bd-intro {
	max-width: 680px;
	margin-bottom: 40px;
}

#domki .bd-lead {
	margin-top: 20px;
	font-size: 18px;
	color: var(--bd-muted);
}

#domki .bd-copy {
	color: var(--bd-muted);
}

#domki .bd-copy p + p {
	margin-top: 20px;
}

#domki img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0;
}

#domki a, #domki button, #domki summary {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

#domki a {
	color: inherit;
}

#domki button {
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
	box-shadow: none;
}

#domki a:focus-visible, #domki button:focus-visible, #domki summary:focus-visible {
	outline: 3px solid var(--bd-amber);
	outline-offset: 5px;
}

#domki .bd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 11px 23px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--bd-cta);
	color: var(--bd-cream);
	font: 600 16px/1.5 "Source Sans 3", system-ui, sans-serif;
	text-decoration: none;
	text-align: center;
	transition: background .2s, transform .2s;
}

#domki .bd-btn:hover {
	background: var(--bd-deep);
	color: var(--bd-cream);
	transform: translateY(-2px);
}

#domki .bd-btn-outline {
	color: var(--bd-forest);
	background: transparent;
	border-color: var(--bd-border);
}

#domki .bd-btn-outline:hover {
	background: var(--bd-forest);
	color: var(--bd-cream);
}

#domki .bd-icon {
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	display: block;
}

#domki .bd-checklist {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

#domki .bd-checklist li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

#domki .bd-checklist .bd-icon {
	color: var(--bd-amber);
	margin-top: 3px;
}

#domki .bd-photo {
	overflow: hidden;
	border-radius: 6px;
	background: var(--bd-sand);
}

#domki .bd-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#domki .bd-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (min-width:640px) {
	#domki.bd-section {
		padding: 112px 0;
	}
	
	#domki .bd-wrap {
		padding: 0 24px;
	}
	
	#domki h2 {
		font-size: 44px;
	}
	
	#domki .bd-intro {
		margin-bottom: 48px;
	}
}

@media (prefers-reduced-motion:reduce) {
	#domki *, #domki *::before, #domki *::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

#domki.bd-section {
	background: color-mix(in oklch, var(--bd-sand) 60%, var(--bd-cream));
}

#domki .bd-cabins {
	display: grid;
	gap: 32px;
	align-items: start;
}

#domki .bd-cabin {
	overflow: hidden;
	border: 1px solid var(--bd-border);
	border-radius: 6px;
	background: var(--bd-card);
	box-shadow: 0 18px 44px -30px oklch(.28 .05 160 / .4);
}

#domki .bd-cabin-photo {
	display: block;
	position: relative;
	aspect-ratio: 4/3;
	border-radius: 3px;
}

#domki .bd-cabin-cover {
	border-radius: 0;
}

#domki .bd-cabin-photo img {
	transition: transform .45s ease;
}

#domki .bd-cabin-photo:hover img {
	transform: scale(1.035);
}

#domki .bd-cabin-thumbs {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	padding: 8px 16px 0;
}

#domki .bd-cabin-more {
	margin: 0;
	border: 0;
}

#domki .bd-cabin-more summary {
	padding: 13px 16px;
	min-height: 48px;
	color: var(--bd-forest);
	cursor: pointer;
	font-size: 15px;
	font-weight: 600;
}

#domki .bd-cabin-more summary span {
	font-weight: 400;
	color: var(--bd-muted);
}

#domki .bd-cabin-more .bd-cabin-thumbs {
	padding-top: 0;
	padding-bottom: 8px;
}

#domki .bd-cabin-content {
	padding: 22px 24px 28px;
}

#domki .bd-cabin-content h3 {
	font-size: 34px;
	margin-bottom: 14px;
}

#domki .bd-cabin-cta {
	margin-top: 28px;
}

#domki .bd-checklist {
	font-size: 16px;
}

@media (min-width:1024px) {
	#domki .bd-cabins {
		grid-template-columns: 1fr 1fr;
	}
	
	#domki .bd-cabin-content {
		padding: 24px 32px 32px;
	}
}

@media (max-width:479px) {
	#domki .bd-cabin-content {
		padding: 20px;
	}
	
	#domki .bd-btn {
		width: 100%;
	}
}

#domki .bd-lightbox {
	position: fixed;
	inset: 0;
	width: 100vw;
	max-width: none;
	height: 100vh;
	height: 100dvh;
	max-height: none;
	margin: 0;
	padding: 16px;
	border: 0;
	border-radius: 0;
	background: rgba(6, 22, 17, .98);
	color: #fff;
	overflow: auto;
}

#domki .bd-lightbox:not([open]) {
	display: none;
}

#domki .bd-lightbox[open] {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	gap: 12px;
}

#domki .bd-lightbox::backdrop {
	background: rgba(0, 0, 0, .85);
}

#domki .bd-lb-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

#domki .bd-lb-head p {
	font-size: 15px;
	color: #f7f5ee;
}

#domki .bd-lb-control {
	width: 48px;
	min-height: 48px;
	display: grid;
	place-items: center;
	padding: 8px;
	border: 1px solid #748b80;
	border-radius: 50%;
	background: #19392f;
	color: #fff;
	flex: 0 0 48px;
	font-size: 26px;
	line-height: 1;
}

#domki .bd-lb-control:hover {
	background: #31594a;
	color: #fff;
}

#domki .bd-lb-body {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
	position: relative;
}

#domki .bd-lb-image {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	border-radius: 3px;
}

#domki .bd-lb-foot {
	display: flex;
	gap: 18px;
	align-items: center;
	justify-content: space-between;
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
}

#domki .bd-lb-caption {
	text-align: center;
	font-size: 15px;
	line-height: 1.5;
	color: #f7f5ee;
}

#domki .bd-lb-caption [data-bd-counter] {
	display: block;
	margin-top: 3px;
	opacity: .75;
	font-size: 13px;
}

#domki .bd-lb-error {
	position: absolute;
	inset: 0;
	display: grid;
	align-content: center;
	text-align: center;
	padding: 24px;
	background: #102a21;
}

#domki .bd-lb-error a {
	color: #fff;
	text-decoration: underline;
}

@media (min-width:768px) {
	#domki .bd-lightbox {
		padding: 24px 40px;
		gap: 18px;
	}
}

/* End custom CSS */

/* Start custom CSS for section, class: .elementor-element-12ab2d9 */

/* Wklej do Własnego CSS sekcji Elementora, bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-12ab2d9 {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	--widgets-spacing: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-12ab2d9 > .elementor-container, .elementor-48 .elementor-element.elementor-element-12ab2d9 > .e-con-inner {
	width: 100%;
	max-width: none;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-12ab2d9 > .elementor-container > .elementor-column {
	width: 100%;
}

.elementor-48 .elementor-element.elementor-element-12ab2d9 > .elementor-container > .elementor-column > .elementor-widget-wrap, .elementor-48 .elementor-element.elementor-element-12ab2d9 .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-12ab2d9 .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

#wyposazenie.bd-section {
	--bd-forest: oklch(.31 .055 163);
	--bd-deep: oklch(.24 .045 163);
	--bd-cream: oklch(.966 .014 88);
	--bd-sand: oklch(.925 .019 88);
	--bd-amber: oklch(.652 .117 46);
	--bd-cta: oklch(.49 .13 42);
	--bd-ink: oklch(.245 .03 160);
	--bd-muted: oklch(.47 .022 160);
	--bd-border: oklch(.86 .018 100);
	--bd-card: oklch(.995 .006 88);
	width: 100%;
	margin: 0;
	padding: 80px 0;
	background: var(--bd-cream);
	color: var(--bd-ink);
	font: 400 16px/1.65 "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	scroll-margin-top: 120px;
}

#wyposazenie *, #wyposazenie *::before, #wyposazenie *::after {
	box-sizing: border-box;
}

#wyposazenie [hidden] {
	display: none !important;
}

#wyposazenie .bd-wrap {
	width: 100%;
	max-width: 1240px;
	padding: 0 16px;
	margin: 0 auto;
}

#wyposazenie h2, #wyposazenie h3, #wyposazenie p, #wyposazenie figure, #wyposazenie blockquote {
	margin: 0;
	padding: 0;
	color: inherit;
}

#wyposazenie h2, #wyposazenie h3 {
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
	text-transform: none;
}

#wyposazenie h2 {
	font-size: 36px;
	text-wrap: balance;
}

#wyposazenie h3 {
	font-size: 29px;
}

#wyposazenie .bd-kicker {
	display: block;
	color: var(--bd-cta);
	font-size: 13px;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .17em;
	text-transform: uppercase;
}

#wyposazenie .bd-kicker::after {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: 16px 0 20px;
	background: var(--bd-amber);
}

#wyposazenie .bd-intro {
	max-width: 680px;
	margin-bottom: 40px;
}

#wyposazenie .bd-lead {
	margin-top: 20px;
	font-size: 18px;
	color: var(--bd-muted);
}

#wyposazenie .bd-copy {
	color: var(--bd-muted);
}

#wyposazenie .bd-copy p + p {
	margin-top: 20px;
}

#wyposazenie img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0;
}

#wyposazenie a, #wyposazenie button, #wyposazenie summary {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

#wyposazenie a {
	color: inherit;
}

#wyposazenie button {
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
	box-shadow: none;
}

#wyposazenie a:focus-visible, #wyposazenie button:focus-visible, #wyposazenie summary:focus-visible {
	outline: 3px solid var(--bd-amber);
	outline-offset: 5px;
}

#wyposazenie .bd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 11px 23px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--bd-cta);
	color: var(--bd-cream);
	font: 600 16px/1.5 "Source Sans 3", system-ui, sans-serif;
	text-decoration: none;
	text-align: center;
	transition: background .2s, transform .2s;
}

#wyposazenie .bd-btn:hover {
	background: var(--bd-deep);
	color: var(--bd-cream);
	transform: translateY(-2px);
}

#wyposazenie .bd-btn-outline {
	color: var(--bd-forest);
	background: transparent;
	border-color: var(--bd-border);
}

#wyposazenie .bd-btn-outline:hover {
	background: var(--bd-forest);
	color: var(--bd-cream);
}

#wyposazenie .bd-icon {
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	display: block;
}

#wyposazenie .bd-checklist {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

#wyposazenie .bd-checklist li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

#wyposazenie .bd-checklist .bd-icon {
	color: var(--bd-amber);
	margin-top: 3px;
}

#wyposazenie .bd-photo {
	overflow: hidden;
	border-radius: 6px;
	background: var(--bd-sand);
}

#wyposazenie .bd-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#wyposazenie .bd-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (min-width:640px) {
	#wyposazenie.bd-section {
		padding: 112px 0;
	}
	
	#wyposazenie .bd-wrap {
		padding: 0 24px;
	}
	
	#wyposazenie h2 {
		font-size: 44px;
	}
	
	#wyposazenie .bd-intro {
		margin-bottom: 48px;
	}
}

@media (prefers-reduced-motion:reduce) {
	#wyposazenie *, #wyposazenie *::before, #wyposazenie *::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

#wyposazenie .bd-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 28px;
}

#wyposazenie .bd-tab {
	min-height: 44px;
	padding: 10px 22px;
	border: 1px solid var(--bd-border);
	border-radius: 999px;
	background: transparent;
	color: var(--bd-forest);
	font-weight: 600;
	line-height: 1.4;
}

#wyposazenie .bd-tab:hover {
	background: var(--bd-sand);
	color: var(--bd-forest);
}

#wyposazenie .bd-tab[aria-selected="true"] {
	background: var(--bd-forest);
	color: var(--bd-cream);
	border-color: var(--bd-forest);
}

#wyposazenie .bd-panel {
	padding: 30px;
	border: 1px solid var(--bd-border);
	border-radius: 6px;
	background: var(--bd-card);
}

#wyposazenie .bd-panel + .bd-panel {
	margin-top: 24px;
}

#wyposazenie [data-bd-tabs-ready] .bd-panel {
	margin-top: 0;
}

#wyposazenie [data-bd-tabs-ready] .bd-panel-title {
	display: none;
}

#wyposazenie .bd-panel-title {
	margin-bottom: 24px;
}

@media (max-width:479px) {
	#wyposazenie .bd-panel {
		padding: 22px 18px;
	}
	
	#wyposazenie .bd-tab {
		padding: 10px 16px;
	}
}

#wyposazenie .bd-checklist {
	margin: 0;
	gap: 24px;
}

@media (min-width:640px) {
	#wyposazenie .bd-checklist {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width:1024px) {
	#wyposazenie .bd-checklist {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* End custom CSS */

/* Start custom CSS for section, class: .elementor-element-639ed65 */

/* Wklej do Własnego CSS sekcji Elementora, bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-639ed65 {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	--widgets-spacing: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-639ed65 > .elementor-container, .elementor-48 .elementor-element.elementor-element-639ed65 > .e-con-inner {
	width: 100%;
	max-width: none;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-639ed65 > .elementor-container > .elementor-column {
	width: 100%;
}

.elementor-48 .elementor-element.elementor-element-639ed65 > .elementor-container > .elementor-column > .elementor-widget-wrap, .elementor-48 .elementor-element.elementor-element-639ed65 .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-639ed65 .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

#balia.bd-section {
	--bd-forest: oklch(.31 .055 163);
	--bd-deep: oklch(.24 .045 163);
	--bd-cream: oklch(.966 .014 88);
	--bd-sand: oklch(.925 .019 88);
	--bd-amber: oklch(.652 .117 46);
	--bd-cta: oklch(.49 .13 42);
	--bd-ink: oklch(.245 .03 160);
	--bd-muted: oklch(.47 .022 160);
	--bd-border: oklch(.86 .018 100);
	--bd-card: oklch(.995 .006 88);
	width: 100%;
	margin: 0;
	padding: 80px 0;
	background: var(--bd-cream);
	color: var(--bd-ink);
	font: 400 16px/1.65 "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	scroll-margin-top: 120px;
}

#balia *, #balia *::before, #balia *::after {
	box-sizing: border-box;
}

#balia [hidden] {
	display: none !important;
}

#balia .bd-wrap {
	width: 100%;
	max-width: 1240px;
	padding: 0 16px;
	margin: 0 auto;
}

#balia h2, #balia h3, #balia p, #balia figure, #balia blockquote {
	margin: 0;
	padding: 0;
	color: inherit;
}

#balia h2, #balia h3 {
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
	text-transform: none;
}

#balia h2 {
	font-size: 36px;
	text-wrap: balance;
}

#balia h3 {
	font-size: 29px;
}

#balia .bd-kicker {
	display: block;
	color: var(--bd-cta);
	font-size: 13px;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .17em;
	text-transform: uppercase;
}

#balia .bd-kicker::after {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: 16px 0 20px;
	background: var(--bd-amber);
}

#balia .bd-intro {
	max-width: 680px;
	margin-bottom: 40px;
}

#balia .bd-lead {
	margin-top: 20px;
	font-size: 18px;
	color: var(--bd-muted);
}

#balia .bd-copy {
	color: var(--bd-muted);
}

#balia .bd-copy p + p {
	margin-top: 20px;
}

#balia img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0;
}

#balia a, #balia button, #balia summary {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

#balia a {
	color: inherit;
}

#balia button {
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
	box-shadow: none;
}

#balia a:focus-visible, #balia button:focus-visible, #balia summary:focus-visible {
	outline: 3px solid var(--bd-amber);
	outline-offset: 5px;
}

#balia .bd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 11px 23px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--bd-cta);
	color: var(--bd-cream);
	font: 600 16px/1.5 "Source Sans 3", system-ui, sans-serif;
	text-decoration: none;
	text-align: center;
	transition: background .2s, transform .2s;
}

#balia .bd-btn:hover {
	background: var(--bd-deep);
	color: var(--bd-cream);
	transform: translateY(-2px);
}

#balia .bd-btn-outline {
	color: var(--bd-forest);
	background: transparent;
	border-color: var(--bd-border);
}

#balia .bd-btn-outline:hover {
	background: var(--bd-forest);
	color: var(--bd-cream);
}

#balia .bd-icon {
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	display: block;
}

#balia .bd-checklist {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

#balia .bd-checklist li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

#balia .bd-checklist .bd-icon {
	color: var(--bd-amber);
	margin-top: 3px;
}

#balia .bd-photo {
	overflow: hidden;
	border-radius: 6px;
	background: var(--bd-sand);
}

#balia .bd-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#balia .bd-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (min-width:640px) {
	#balia.bd-section {
		padding: 112px 0;
	}
	
	#balia .bd-wrap {
		padding: 0 24px;
	}
	
	#balia h2 {
		font-size: 44px;
	}
	
	#balia .bd-intro {
		margin-bottom: 48px;
	}
}

@media (prefers-reduced-motion:reduce) {
	#balia *, #balia *::before, #balia *::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

#balia.bd-section {
	background: var(--bd-forest);
	color: var(--bd-cream);
}

#balia .bd-kicker, #balia .bd-checklist .bd-icon {
	color: oklch(.79 .075 60);
}

#balia .bd-lead {
	color: oklch(.966 .014 88 / .82);
}

#balia .bd-intro {
	margin-bottom: 28px;
}

#balia .bd-tub-grid {
	display: grid;
	gap: 40px;
	align-items: center;
}

#balia .bd-tub-photos {
	display: grid;
	gap: 16px;
}

#balia .bd-tub-main {
	aspect-ratio: 4/3;
}

#balia .bd-tub-detail {
	aspect-ratio: 16/9;
}

#balia .bd-tub-cta {
	margin-top: 32px;
}

#balia .bd-btn:hover {
	background: var(--bd-cream);
	color: var(--bd-forest);
}

@media (min-width:1024px) {
	#balia .bd-tub-grid {
		grid-template-columns: 1fr 1fr;
		gap: 64px;
	}
}

/* End custom CSS */

/* Start custom CSS for section, class: .elementor-element-7aa9d6d */

/* Wklej do Własnego CSS sekcji Elementora, bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-7aa9d6d {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	--widgets-spacing: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-7aa9d6d > .elementor-container, .elementor-48 .elementor-element.elementor-element-7aa9d6d > .e-con-inner {
	width: 100%;
	max-width: none;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-7aa9d6d > .elementor-container > .elementor-column {
	width: 100%;
}

.elementor-48 .elementor-element.elementor-element-7aa9d6d > .elementor-container > .elementor-column > .elementor-widget-wrap, .elementor-48 .elementor-element.elementor-element-7aa9d6d .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-7aa9d6d .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

#galeria.bd-section {
	--bd-forest: oklch(.31 .055 163);
	--bd-deep: oklch(.24 .045 163);
	--bd-cream: oklch(.966 .014 88);
	--bd-sand: oklch(.925 .019 88);
	--bd-amber: oklch(.652 .117 46);
	--bd-cta: oklch(.49 .13 42);
	--bd-ink: oklch(.245 .03 160);
	--bd-muted: oklch(.47 .022 160);
	--bd-border: oklch(.86 .018 100);
	--bd-card: oklch(.995 .006 88);
	width: 100%;
	margin: 0;
	padding: 80px 0;
	background: var(--bd-cream);
	color: var(--bd-ink);
	font: 400 16px/1.65 "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	scroll-margin-top: 120px;
}

#galeria *, #galeria *::before, #galeria *::after {
	box-sizing: border-box;
}

#galeria [hidden] {
	display: none !important;
}

#galeria .bd-wrap {
	width: 100%;
	max-width: 1240px;
	padding: 0 16px;
	margin: 0 auto;
}

#galeria h2, #galeria h3, #galeria p, #galeria figure, #galeria blockquote {
	margin: 0;
	padding: 0;
	color: inherit;
}

#galeria h2, #galeria h3 {
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
	text-transform: none;
}

#galeria h2 {
	font-size: 36px;
	text-wrap: balance;
}

#galeria h3 {
	font-size: 29px;
}

#galeria .bd-kicker {
	display: block;
	color: var(--bd-cta);
	font-size: 13px;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .17em;
	text-transform: uppercase;
}

#galeria .bd-kicker::after {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: 16px 0 20px;
	background: var(--bd-amber);
}

#galeria .bd-intro {
	max-width: 680px;
	margin-bottom: 40px;
}

#galeria .bd-lead {
	margin-top: 20px;
	font-size: 18px;
	color: var(--bd-muted);
}

#galeria .bd-copy {
	color: var(--bd-muted);
}

#galeria .bd-copy p + p {
	margin-top: 20px;
}

#galeria img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0;
}

#galeria a, #galeria button, #galeria summary {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

#galeria a {
	color: inherit;
}

#galeria button {
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
	box-shadow: none;
}

#galeria a:focus-visible, #galeria button:focus-visible, #galeria summary:focus-visible {
	outline: 3px solid var(--bd-amber);
	outline-offset: 5px;
}

#galeria .bd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 11px 23px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--bd-cta);
	color: var(--bd-cream);
	font: 600 16px/1.5 "Source Sans 3", system-ui, sans-serif;
	text-decoration: none;
	text-align: center;
	transition: background .2s, transform .2s;
}

#galeria .bd-btn:hover {
	background: var(--bd-deep);
	color: var(--bd-cream);
	transform: translateY(-2px);
}

#galeria .bd-btn-outline {
	color: var(--bd-forest);
	background: transparent;
	border-color: var(--bd-border);
}

#galeria .bd-btn-outline:hover {
	background: var(--bd-forest);
	color: var(--bd-cream);
}

#galeria .bd-icon {
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	display: block;
}

#galeria .bd-checklist {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

#galeria .bd-checklist li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

#galeria .bd-checklist .bd-icon {
	color: var(--bd-amber);
	margin-top: 3px;
}

#galeria .bd-photo {
	overflow: hidden;
	border-radius: 6px;
	background: var(--bd-sand);
}

#galeria .bd-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#galeria .bd-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (min-width:640px) {
	#galeria.bd-section {
		padding: 112px 0;
	}
	
	#galeria .bd-wrap {
		padding: 0 24px;
	}
	
	#galeria h2 {
		font-size: 44px;
	}
	
	#galeria .bd-intro {
		margin-bottom: 48px;
	}
}

@media (prefers-reduced-motion:reduce) {
	#galeria *, #galeria *::before, #galeria *::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

#galeria .bd-filters {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 28px;
}

#galeria .bd-filter {
	padding: 10px 20px;
	min-height: 44px;
	border: 1px solid var(--bd-border);
	border-radius: 999px;
	color: var(--bd-forest);
	background: transparent;
	font-weight: 600;
	line-height: 1.4;
}

#galeria .bd-filter:hover {
	background: var(--bd-sand);
	color: var(--bd-forest);
}

#galeria .bd-filter[aria-pressed="true"] {
	background: var(--bd-forest);
	color: var(--bd-cream);
	border-color: var(--bd-forest);
}

#galeria .bd-gallery-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-auto-flow: dense;
	gap: 10px;
}

#galeria .bd-gallery-photo {
	display: block;
	position: relative;
	aspect-ratio: 4/3;
}

#galeria .bd-gallery-photo img {
	transition: transform .5s ease;
}

#galeria .bd-gallery-photo:hover img {
	transform: scale(1.035);
}

#galeria .bd-photo-zoom {
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: rgba(10, 35, 25, .85);
	color: white;
	font-size: 22px;
	line-height: 1;
	pointer-events: none;
}

#galeria .bd-gallery-bottom {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 18px;
	margin-top: 28px;
}

#galeria .bd-gallery-status {
	color: var(--bd-muted);
	font-size: 15px;
}

@media (min-width:768px) {
	#galeria .bd-gallery-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		grid-auto-rows: 220px;
		gap: 16px;
	}
	
	#galeria .bd-gallery-photo {
		aspect-ratio: auto;
	}
	
	#galeria .bd-gallery-photo.bd-gallery-wide {
		grid-column: span 2;
		grid-row: span 2;
	}
}

#galeria .bd-lightbox {
	position: fixed;
	inset: 0;
	width: 100vw;
	max-width: none;
	height: 100vh;
	height: 100dvh;
	max-height: none;
	margin: 0;
	padding: 16px;
	border: 0;
	border-radius: 0;
	background: rgba(6, 22, 17, .98);
	color: #fff;
	overflow: auto;
}

#galeria .bd-lightbox:not([open]) {
	display: none;
}

#galeria .bd-lightbox[open] {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	gap: 12px;
}

#galeria .bd-lightbox::backdrop {
	background: rgba(0, 0, 0, .85);
}

#galeria .bd-lb-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

#galeria .bd-lb-head p {
	font-size: 15px;
	color: #f7f5ee;
}

#galeria .bd-lb-control {
	width: 48px;
	min-height: 48px;
	display: grid;
	place-items: center;
	padding: 8px;
	border: 1px solid #748b80;
	border-radius: 50%;
	background: #19392f;
	color: #fff;
	flex: 0 0 48px;
	font-size: 26px;
	line-height: 1;
}

#galeria .bd-lb-control:hover {
	background: #31594a;
	color: #fff;
}

#galeria .bd-lb-body {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
	position: relative;
}

#galeria .bd-lb-image {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	border-radius: 3px;
}

#galeria .bd-lb-foot {
	display: flex;
	gap: 18px;
	align-items: center;
	justify-content: space-between;
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
}

#galeria .bd-lb-caption {
	text-align: center;
	font-size: 15px;
	line-height: 1.5;
	color: #f7f5ee;
}

#galeria .bd-lb-caption [data-bd-counter] {
	display: block;
	margin-top: 3px;
	opacity: .75;
	font-size: 13px;
}

#galeria .bd-lb-error {
	position: absolute;
	inset: 0;
	display: grid;
	align-content: center;
	text-align: center;
	padding: 24px;
	background: #102a21;
}

#galeria .bd-lb-error a {
	color: #fff;
	text-decoration: underline;
}

@media (min-width:768px) {
	#galeria .bd-lightbox {
		padding: 24px 40px;
		gap: 18px;
	}
}

/* End custom CSS */

/* Start custom CSS for section, class: .elementor-element-51ac634 */

/* Wklej do Własnego CSS sekcji Elementora, bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-51ac634 {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	--widgets-spacing: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-51ac634 > .elementor-container, .elementor-48 .elementor-element.elementor-element-51ac634 > .e-con-inner {
	width: 100%;
	max-width: none;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-51ac634 > .elementor-container > .elementor-column {
	width: 100%;
}

.elementor-48 .elementor-element.elementor-element-51ac634 > .elementor-container > .elementor-column > .elementor-widget-wrap, .elementor-48 .elementor-element.elementor-element-51ac634 .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-51ac634 .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

#okolica.bd-section {
	--bd-forest: oklch(.31 .055 163);
	--bd-deep: oklch(.24 .045 163);
	--bd-cream: oklch(.966 .014 88);
	--bd-sand: oklch(.925 .019 88);
	--bd-amber: oklch(.652 .117 46);
	--bd-cta: oklch(.49 .13 42);
	--bd-ink: oklch(.245 .03 160);
	--bd-muted: oklch(.47 .022 160);
	--bd-border: oklch(.86 .018 100);
	--bd-card: oklch(.995 .006 88);
	width: 100%;
	margin: 0;
	padding: 80px 0;
	background: var(--bd-cream);
	color: var(--bd-ink);
	font: 400 16px/1.65 "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	scroll-margin-top: 120px;
}

#okolica *, #okolica *::before, #okolica *::after {
	box-sizing: border-box;
}

#okolica [hidden] {
	display: none !important;
}

#okolica .bd-wrap {
	width: 100%;
	max-width: 1240px;
	padding: 0 16px;
	margin: 0 auto;
}

#okolica h2, #okolica h3, #okolica p, #okolica figure, #okolica blockquote {
	margin: 0;
	padding: 0;
	color: inherit;
}

#okolica h2, #okolica h3 {
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
	text-transform: none;
}

#okolica h2 {
	font-size: 36px;
	text-wrap: balance;
}

#okolica h3 {
	font-size: 29px;
}

#okolica .bd-kicker {
	display: block;
	color: var(--bd-cta);
	font-size: 13px;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .17em;
	text-transform: uppercase;
}

#okolica .bd-kicker::after {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: 16px 0 20px;
	background: var(--bd-amber);
}

#okolica .bd-intro {
	max-width: 680px;
	margin-bottom: 40px;
}

#okolica .bd-lead {
	margin-top: 20px;
	font-size: 18px;
	color: var(--bd-muted);
}

#okolica .bd-copy {
	color: var(--bd-muted);
}

#okolica .bd-copy p + p {
	margin-top: 20px;
}

#okolica img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0;
}

#okolica a, #okolica button, #okolica summary {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

#okolica a {
	color: inherit;
}

#okolica button {
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
	box-shadow: none;
}

#okolica a:focus-visible, #okolica button:focus-visible, #okolica summary:focus-visible {
	outline: 3px solid var(--bd-amber);
	outline-offset: 5px;
}

#okolica .bd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 11px 23px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--bd-cta);
	color: var(--bd-cream);
	font: 600 16px/1.5 "Source Sans 3", system-ui, sans-serif;
	text-decoration: none;
	text-align: center;
	transition: background .2s, transform .2s;
}

#okolica .bd-btn:hover {
	background: var(--bd-deep);
	color: var(--bd-cream);
	transform: translateY(-2px);
}

#okolica .bd-btn-outline {
	color: var(--bd-forest);
	background: transparent;
	border-color: var(--bd-border);
}

#okolica .bd-btn-outline:hover {
	background: var(--bd-forest);
	color: var(--bd-cream);
}

#okolica .bd-icon {
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	display: block;
}

#okolica .bd-checklist {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

#okolica .bd-checklist li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

#okolica .bd-checklist .bd-icon {
	color: var(--bd-amber);
	margin-top: 3px;
}

#okolica .bd-photo {
	overflow: hidden;
	border-radius: 6px;
	background: var(--bd-sand);
}

#okolica .bd-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#okolica .bd-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (min-width:640px) {
	#okolica.bd-section {
		padding: 112px 0;
	}
	
	#okolica .bd-wrap {
		padding: 0 24px;
	}
	
	#okolica h2 {
		font-size: 44px;
	}
	
	#okolica .bd-intro {
		margin-bottom: 48px;
	}
}

@media (prefers-reduced-motion:reduce) {
	#okolica *, #okolica *::before, #okolica *::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

#okolica .bd-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 28px;
}

#okolica .bd-tab {
	min-height: 44px;
	padding: 10px 22px;
	border: 1px solid var(--bd-border);
	border-radius: 999px;
	background: transparent;
	color: var(--bd-forest);
	font-weight: 600;
	line-height: 1.4;
}

#okolica .bd-tab:hover {
	background: var(--bd-sand);
	color: var(--bd-forest);
}

#okolica .bd-tab[aria-selected="true"] {
	background: var(--bd-forest);
	color: var(--bd-cream);
	border-color: var(--bd-forest);
}

#okolica .bd-panel {
	padding: 30px;
	border: 1px solid var(--bd-border);
	border-radius: 6px;
	background: var(--bd-card);
}

#okolica .bd-panel + .bd-panel {
	margin-top: 24px;
}

#okolica [data-bd-tabs-ready] .bd-panel {
	margin-top: 0;
}

#okolica [data-bd-tabs-ready] .bd-panel-title {
	display: none;
}

#okolica .bd-panel-title {
	margin-bottom: 24px;
}

@media (max-width:479px) {
	#okolica .bd-panel {
		padding: 22px 18px;
	}
	
	#okolica .bd-tab {
		padding: 10px 16px;
	}
}

#okolica.bd-section {
	background: color-mix(in oklch, var(--bd-sand) 60%, var(--bd-cream));
}

#okolica .bd-area-photo {
	aspect-ratio: 16/9;
	margin-bottom: 32px;
}

#okolica .bd-area-grid {
	display: grid;
	gap: 32px;
}

#okolica .bd-area-grid h3 {
	font-size: 27px;
	margin-bottom: 12px;
}

#okolica .bd-area-grid p {
	color: var(--bd-muted);
}

@media (min-width:768px) {
	#okolica .bd-area-photo {
		aspect-ratio: 21/9;
	}
	
	#okolica .bd-area-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* DOPISZ na końcu obecnego Własnego CSS sekcji OKOLICA.
   Pozostaw cały dotychczasowy CSS tej sekcji bez zmian. */
#okolica .bd-zieleniec-cameras {
	margin-top: 20px;
	max-width: 100%;
	white-space: normal;
}

#okolica .bd-zieleniec-cameras > span {
	flex-shrink: 0;
}

/* End custom CSS */

/* Start custom CSS for section, class: .elementor-element-417bb4d */

/* Wklej do Własnego CSS sekcji Elementora, bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-417bb4d {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	--widgets-spacing: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-417bb4d > .elementor-container, .elementor-48 .elementor-element.elementor-element-417bb4d > .e-con-inner {
	width: 100%;
	max-width: none;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-417bb4d > .elementor-container > .elementor-column {
	width: 100%;
}

.elementor-48 .elementor-element.elementor-element-417bb4d > .elementor-container > .elementor-column > .elementor-widget-wrap, .elementor-48 .elementor-element.elementor-element-417bb4d .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-417bb4d .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

#opinie.bd-section {
	--bd-forest: oklch(.31 .055 163);
	--bd-deep: oklch(.24 .045 163);
	--bd-cream: oklch(.966 .014 88);
	--bd-sand: oklch(.925 .019 88);
	--bd-amber: oklch(.652 .117 46);
	--bd-cta: oklch(.49 .13 42);
	--bd-ink: oklch(.245 .03 160);
	--bd-muted: oklch(.47 .022 160);
	--bd-border: oklch(.86 .018 100);
	--bd-card: oklch(.995 .006 88);
	width: 100%;
	margin: 0;
	padding: 80px 0;
	background: var(--bd-cream);
	color: var(--bd-ink);
	font: 400 16px/1.65 "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	scroll-margin-top: 120px;
}

#opinie *, #opinie *::before, #opinie *::after {
	box-sizing: border-box;
}

#opinie [hidden] {
	display: none !important;
}

#opinie .bd-wrap {
	width: 100%;
	max-width: 1240px;
	padding: 0 16px;
	margin: 0 auto;
}

#opinie h2, #opinie h3, #opinie p, #opinie figure, #opinie blockquote {
	margin: 0;
	padding: 0;
	color: inherit;
}

#opinie h2, #opinie h3 {
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
	text-transform: none;
}

#opinie h2 {
	font-size: 36px;
	text-wrap: balance;
}

#opinie h3 {
	font-size: 29px;
}

#opinie .bd-kicker {
	display: block;
	color: var(--bd-cta);
	font-size: 13px;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .17em;
	text-transform: uppercase;
}

#opinie .bd-kicker::after {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: 16px 0 20px;
	background: var(--bd-amber);
}

#opinie .bd-intro {
	max-width: 680px;
	margin-bottom: 40px;
}

#opinie .bd-lead {
	margin-top: 20px;
	font-size: 18px;
	color: var(--bd-muted);
}

#opinie .bd-copy {
	color: var(--bd-muted);
}

#opinie .bd-copy p + p {
	margin-top: 20px;
}

#opinie img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0;
}

#opinie a, #opinie button, #opinie summary {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

#opinie a {
	color: inherit;
}

#opinie button {
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
	box-shadow: none;
}

#opinie a:focus-visible, #opinie button:focus-visible, #opinie summary:focus-visible {
	outline: 3px solid var(--bd-amber);
	outline-offset: 5px;
}

#opinie .bd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 11px 23px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--bd-cta);
	color: var(--bd-cream);
	font: 600 16px/1.5 "Source Sans 3", system-ui, sans-serif;
	text-decoration: none;
	text-align: center;
	transition: background .2s, transform .2s;
}

#opinie .bd-btn:hover {
	background: var(--bd-deep);
	color: var(--bd-cream);
	transform: translateY(-2px);
}

#opinie .bd-btn-outline {
	color: var(--bd-forest);
	background: transparent;
	border-color: var(--bd-border);
}

#opinie .bd-btn-outline:hover {
	background: var(--bd-forest);
	color: var(--bd-cream);
}

#opinie .bd-icon {
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	display: block;
}

#opinie .bd-checklist {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

#opinie .bd-checklist li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

#opinie .bd-checklist .bd-icon {
	color: var(--bd-amber);
	margin-top: 3px;
}

#opinie .bd-photo {
	overflow: hidden;
	border-radius: 6px;
	background: var(--bd-sand);
}

#opinie .bd-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#opinie .bd-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (min-width:640px) {
	#opinie.bd-section {
		padding: 112px 0;
	}
	
	#opinie .bd-wrap {
		padding: 0 24px;
	}
	
	#opinie h2 {
		font-size: 44px;
	}
	
	#opinie .bd-intro {
		margin-bottom: 48px;
	}
}

@media (prefers-reduced-motion:reduce) {
	#opinie *, #opinie *::before, #opinie *::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

#opinie .bd-reviews {
	display: grid;
	gap: 20px;
}

#opinie .bd-review {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	border: 1px solid var(--bd-border);
	border-radius: 6px;
	background: var(--bd-card);
	padding: 28px;
}

#opinie .bd-stars {
	color: var(--bd-cta);
	letter-spacing: 3px;
	font-size: 18px;
	margin-bottom: 16px;
}

#opinie .bd-review blockquote {
	border: 0;
	font: 400 18px/1.6 "Source Sans 3", system-ui, sans-serif;
	margin-bottom: 24px;
}

#opinie .bd-review figcaption {
	margin-top: auto;
}

#opinie .bd-review-name {
	display: block;
	font-weight: 600;
}

#opinie .bd-review figcaption a {
	display: inline-block;
	min-height: 44px;
	padding: 8px 0;
	color: var(--bd-muted);
	text-decoration: underline;
	text-underline-offset: 3px;
	font-size: 14px;
}

#opinie .bd-review-featured {
	background: var(--bd-forest);
	color: var(--bd-cream);
	padding: 32px;
}

#opinie .bd-review-featured .bd-stars {
	color: oklch(.79 .075 60);
}

#opinie .bd-review-featured blockquote {
	max-width: 870px;
	font: 600 30px/1.25 "Cormorant Garamond", "Times New Roman", serif;
}

#opinie .bd-review-featured figcaption a {
	color: oklch(.966 .014 88 / .8);
}

@media (min-width:768px) {
	#opinie .bd-reviews {
		grid-template-columns: 1fr 1fr;
	}
	
	#opinie .bd-review-featured {
		grid-column: 1/-1;
		padding: 40px;
	}
	
	#opinie .bd-review-featured blockquote {
		font-size: 36px;
	}
}

/* End custom CSS */

/* Start custom CSS for section, class: .elementor-element-8fc4d55 */

/* Wklej do Własnego CSS sekcji Elementora, bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-8fc4d55 {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	--widgets-spacing: 0;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-8fc4d55 > .elementor-container, .elementor-48 .elementor-element.elementor-element-8fc4d55 > .e-con-inner {
	width: 100%;
	max-width: none;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-8fc4d55 > .elementor-container > .elementor-column {
	width: 100%;
}

.elementor-48 .elementor-element.elementor-element-8fc4d55 > .elementor-container > .elementor-column > .elementor-widget-wrap, .elementor-48 .elementor-element.elementor-element-8fc4d55 .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-8fc4d55 .elementor-widget-html > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

#faq.bd-section {
	--bd-forest: oklch(.31 .055 163);
	--bd-deep: oklch(.24 .045 163);
	--bd-cream: oklch(.966 .014 88);
	--bd-sand: oklch(.925 .019 88);
	--bd-amber: oklch(.652 .117 46);
	--bd-cta: oklch(.49 .13 42);
	--bd-ink: oklch(.245 .03 160);
	--bd-muted: oklch(.47 .022 160);
	--bd-border: oklch(.86 .018 100);
	--bd-card: oklch(.995 .006 88);
	width: 100%;
	margin: 0;
	padding: 80px 0;
	background: var(--bd-cream);
	color: var(--bd-ink);
	font: 400 16px/1.65 "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	scroll-margin-top: 120px;
}

#faq *, #faq *::before, #faq *::after {
	box-sizing: border-box;
}

#faq [hidden] {
	display: none !important;
}

#faq .bd-wrap {
	width: 100%;
	max-width: 1240px;
	padding: 0 16px;
	margin: 0 auto;
}

#faq h2, #faq h3, #faq p, #faq figure, #faq blockquote {
	margin: 0;
	padding: 0;
	color: inherit;
}

#faq h2, #faq h3 {
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
	text-transform: none;
}

#faq h2 {
	font-size: 36px;
	text-wrap: balance;
}

#faq h3 {
	font-size: 29px;
}

#faq .bd-kicker {
	display: block;
	color: var(--bd-cta);
	font-size: 13px;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .17em;
	text-transform: uppercase;
}

#faq .bd-kicker::after {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: 16px 0 20px;
	background: var(--bd-amber);
}

#faq .bd-intro {
	max-width: 680px;
	margin-bottom: 40px;
}

#faq .bd-lead {
	margin-top: 20px;
	font-size: 18px;
	color: var(--bd-muted);
}

#faq .bd-copy {
	color: var(--bd-muted);
}

#faq .bd-copy p + p {
	margin-top: 20px;
}

#faq img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0;
}

#faq a, #faq button, #faq summary {
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

#faq a {
	color: inherit;
}

#faq button {
	font: inherit;
	text-transform: none;
	letter-spacing: normal;
	cursor: pointer;
	box-shadow: none;
}

#faq a:focus-visible, #faq button:focus-visible, #faq summary:focus-visible {
	outline: 3px solid var(--bd-amber);
	outline-offset: 5px;
}

#faq .bd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 11px 23px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: var(--bd-cta);
	color: var(--bd-cream);
	font: 600 16px/1.5 "Source Sans 3", system-ui, sans-serif;
	text-decoration: none;
	text-align: center;
	transition: background .2s, transform .2s;
}

#faq .bd-btn:hover {
	background: var(--bd-deep);
	color: var(--bd-cream);
	transform: translateY(-2px);
}

#faq .bd-btn-outline {
	color: var(--bd-forest);
	background: transparent;
	border-color: var(--bd-border);
}

#faq .bd-btn-outline:hover {
	background: var(--bd-forest);
	color: var(--bd-cream);
}

#faq .bd-icon {
	width: 21px;
	height: 21px;
	flex: 0 0 21px;
	display: block;
}

#faq .bd-checklist {
	display: grid;
	gap: 14px;
	padding: 0;
	margin: 24px 0 0;
	list-style: none;
}

#faq .bd-checklist li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

#faq .bd-checklist .bd-icon {
	color: var(--bd-amber);
	margin-top: 3px;
}

#faq .bd-photo {
	overflow: hidden;
	border-radius: 6px;
	background: var(--bd-sand);
}

#faq .bd-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#faq .bd-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@media (min-width:640px) {
	#faq.bd-section {
		padding: 112px 0;
	}
	
	#faq .bd-wrap {
		padding: 0 24px;
	}
	
	#faq h2 {
		font-size: 44px;
	}
	
	#faq .bd-intro {
		margin-bottom: 48px;
	}
}

@media (prefers-reduced-motion:reduce) {
	#faq *, #faq *::before, #faq *::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

#faq.bd-section {
	background: color-mix(in oklch, var(--bd-sand) 60%, var(--bd-cream));
}

#faq .bd-wrap {
	max-width: 816px;
}

#faq .bd-faq-list {
	border-top: 1px solid var(--bd-border);
}

#faq .bd-faq-item {
	margin: 0;
	border: 0;
	border-bottom: 1px solid var(--bd-border);
}

#faq .bd-faq-item summary {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	min-height: 64px;
	padding: 21px 0;
	cursor: pointer;
	font-weight: 600;
	font-size: 18px;
	line-height: 1.45;
	list-style: none;
}

#faq .bd-faq-item summary::-webkit-details-marker {
	display: none;
}

#faq .bd-faq-toggle {
	display: block;
	flex: 0 0 24px;
	text-align: center;
	font-size: 26px;
	font-weight: 400;
	line-height: 1;
	color: var(--bd-forest);
	transition: transform .2s;
}

#faq .bd-faq-item[open] .bd-faq-toggle {
	transform: rotate(45deg);
}

#faq .bd-faq-answer {
	padding: 0 38px 24px 0;
	color: var(--bd-muted);
}

/* End custom CSS */

/* Start custom CSS for section, class: .elementor-element-a102c02 */

/* CAŁA SEKCJA DWUKOLUMNOWA → Zaawansowane → Własny CSS.
   ID sekcji: kontakt. Klasy kolumn: bd-contact-left / bd-contact-right.
   Klasa widgetu WPForms: bd-contact-form. Bez znaczników <style>. */
.elementor-48 .elementor-element.elementor-element-a102c02 {
	--bdc-forest: oklch(.31 .055 163);
	--bdc-deep: oklch(.24 .045 163);
	--bdc-cream: oklch(.966 .014 88);
	--bdc-card: oklch(.995 .006 88);
	--bdc-ink: oklch(.245 .03 160);
	--bdc-muted: oklch(.47 .022 160);
	--bdc-border: oklch(.86 .018 100);
	--bdc-amber: oklch(.652 .117 46);
	--bdc-cta: oklch(.49 .13 42);
	--bdc-error: #a12626;
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 112px 24px !important;
	background: var(--bdc-cream);
	color: var(--bdc-ink);
	font: 400 16px/1.65 "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;
	text-align: left;
	scroll-margin-top: 120px;
	--widgets-spacing: 0;
	--row-gap: 0px;
	--column-gap: 0px;
}

.elementor-48 .elementor-element.elementor-element-a102c02 *, .elementor-48 .elementor-element.elementor-element-a102c02 *::before, .elementor-48 .elementor-element.elementor-element-a102c02 *::after {
	box-sizing: border-box;
}

.elementor-48 .elementor-element.elementor-element-a102c02 > .elementor-container, .elementor-48 .elementor-element.elementor-element-a102c02 > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
	gap: 48px !important;
	align-items: start;
	width: 100% !important;
	max-width: 1192px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 > .elementor-container > .elementor-column, .elementor-48 .elementor-element.elementor-element-a102c02 > .e-con-inner > .e-con {
	min-width: 0;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-left > .elementor-widget-wrap, .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-right > .elementor-widget-wrap {
	padding: 0 !important;
	align-content: flex-start;
	gap: 0;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-left, .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-right {
	min-width: 0;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .elementor-widget-html, .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form {
	width: 100%;
	margin: 0 !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .elementor-widget-html > .elementor-widget-container {
	padding: 0 !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy p, .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy h2 {
	margin: 0;
	padding: 0;
	color: inherit;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-kicker {
	display: block;
	color: var(--bdc-cta);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .17em;
	line-height: 1.5;
	text-transform: uppercase;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-kicker::after {
	content: "";
	display: block;
	width: 56px;
	height: 1px;
	margin: 16px 0 20px;
	background: var(--bdc-amber);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy h2 {
	font: 600 clamp(36px, 3.2vw, 46px)/1.12 "Cormorant Garamond", "Times New Roman", serif;
	letter-spacing: -.01em;
	text-transform: none;
	text-wrap: balance;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy .bd-contact-lead {
	margin-top: 20px;
	color: var(--bdc-muted);
	font-size: 18px;
	max-width: 440px;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-phone-block {
	margin-top: 32px;
	padding: 24px 0;
	border-top: 1px solid var(--bdc-border);
	border-bottom: 1px solid var(--bdc-border);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-small {
	display: block;
	color: var(--bdc-muted);
	font-size: 14px;
	line-height: 1.5;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy a {
	color: var(--bdc-forest);
	text-decoration: none;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy .bd-contact-phone {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	min-height: 52px;
	margin: 4px 0;
	font-size: clamp(28px, 2.6vw, 36px);
	font-weight: 600;
	letter-spacing: -.025em;
	line-height: 1.4;
	transition: color .2s;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-phone svg {
	width: 25px;
	height: 25px;
	flex: 0 0 25px;
	color: var(--bdc-cta);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy .bd-contact-host {
	color: var(--bdc-muted);
	font-size: 15px;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 24px 0 30px;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy .bd-contact-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 46px;
	padding: 10px 20px;
	border: 1px solid var(--bdc-border);
	border-radius: 999px;
	font-weight: 600;
	line-height: 1.5;
	transition: background .2s, color .2s, transform .2s;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy .bd-contact-btn:hover {
	color: var(--bdc-cream);
	background: var(--bdc-forest);
	border-color: var(--bdc-forest);
	transform: translateY(-2px);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-details {
	display: grid;
	gap: 22px;
	margin: 0;
	font: inherit;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-detail {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	min-width: 0;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-detail svg {
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	margin-top: 3px;
	color: var(--bdc-cta);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-detail > div {
	min-width: 0;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-detail a {
	display: inline-block;
	padding: 6px 0;
	min-height: 44px;
	overflow-wrap: anywhere;
	text-decoration: underline;
	text-underline-offset: 4px;
	text-decoration-color: var(--bdc-border);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy .bd-contact-phone:hover, .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-detail a:hover {
	color: var(--bdc-cta);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-map {
	display: block;
	position: relative;
	overflow: hidden;
	margin-top: 28px;
	border: 1px solid var(--bdc-border);
	border-radius: 6px;
	background: var(--bdc-deep);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-map img {
	display: block;
	width: 100%;
	height: 210px;
	object-fit: cover;
	object-position: 50% 60%;
	border: 0;
	border-radius: 0;
	transition: transform .4s;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-map:hover img {
	transform: scale(1.035);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-map-caption {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	align-items: center;
	min-height: 54px;
	padding: 14px 18px;
	background: var(--bdc-forest);
	color: var(--bdc-cream);
	font-weight: 600;
	line-height: 1.5;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-copy .bd-contact-map-note {
	margin-top: 9px;
	color: var(--bdc-muted);
	font-size: 13px;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
}

/* Karta prawdziwego widgetu WPForms, nie ręcznie napisany formularz. */
.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form > .elementor-widget-container {
	padding: 34px !important;
	background: var(--bdc-card) !important;
	border: 1px solid var(--bdc-border);
	border-radius: 8px;
	box-shadow: 0 20px 50px -34px rgba(13, 51, 36, .28);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-container {
	--wpforms-button-background-color: var(--bdc-forest);
	--wpforms-button-text-color: #fff;
	--wpforms-label-color: var(--bdc-ink);
	--wpforms-label-sublabel-color: var(--bdc-muted);
	--wpforms-label-error-color: var(--bdc-error);
	margin: 0 !important;
	padding: 0 !important;
	font-family: inherit;
	color: var(--bdc-ink);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-form {
	margin: 0 !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-title {
	margin: 0 0 10px !important;
	padding: 0 !important;
	color: var(--bdc-ink) !important;
	font: 600 32px/1.15 "Cormorant Garamond", "Times New Roman", serif !important;
	letter-spacing: -.01em;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-description {
	margin: 0 0 24px !important;
	padding: 0 !important;
	color: var(--bdc-muted) !important;
	font-size: 16px !important;
	line-height: 1.6 !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field-container {
	display: flow-root;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field {
	padding: 0 0 20px !important;
	margin: 0;
	clear: both;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field.bd-half {
	float: left;
	clear: none;
	width: calc(50% - 10px);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field.bd-first {
	clear: both;
	margin-right: 20px;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field-label, .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form legend.wpforms-field-label {
	display: block;
	margin: 0 0 8px !important;
	padding: 0;
	color: var(--bdc-ink) !important;
	font: 600 15px/1.5 "Source Sans 3", system-ui, sans-serif !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-required-label {
	color: var(--bdc-error) !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field :is(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="date"],select,textarea) {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	min-height: 48px;
	margin: 0;
	padding: 12px 14px;
	border: 1px solid var(--bdc-border) !important;
	border-radius: 5px !important;
	background: #fff !important;
	color: var(--bdc-ink) !important;
	box-shadow: none !important;
	font: 400 16px/1.4 "Source Sans 3", system-ui, sans-serif !important;
	text-transform: none;
	transition: border-color .2s, box-shadow .2s;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field select {
	padding-right: 30px;
	cursor: pointer;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field textarea {
	min-height: 120px;
	resize: vertical;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field :is(input,textarea)::placeholder {
	color: #6b746e;
	opacity: 1;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field :is(input,select,textarea):focus {
	outline: 2px solid var(--bdc-forest) !important;
	outline-offset: 2px;
	border-color: var(--bdc-forest) !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field :is(input,select,textarea)[aria-invalid="true"], .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field :is(input,select,textarea).wpforms-error {
	border-color: var(--bdc-error) !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field-description, .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field-sublabel {
	margin-top: 6px;
	color: var(--bdc-muted) !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .bd-contact-method ul {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 24px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .bd-contact-method li {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: 44px;
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field :is(input[type="radio"],input[type="checkbox"]) {
	width: 19px !important;
	height: 19px !important;
	min-width: 19px;
	margin: 0 8px 0 0;
	accent-color: var(--bdc-forest);
	flex-shrink: 0;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field-label-inline {
	color: var(--bdc-ink) !important;
	font-size: 16px !important;
	line-height: 1.5 !important;
	cursor: pointer;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field-html p {
	margin: 0;
	color: var(--bdc-muted);
	font-size: 13px;
	line-height: 1.65;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field-html a {
	color: var(--bdc-forest);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-submit-container {
	clear: both;
	padding: 4px 0 0 !important;
	margin: 0 !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form button.wpforms-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 50px !important;
	height: auto !important;
	padding: 13px 24px !important;
	background: var(--bdc-cta) !important;
	color: #fff !important;
	border: 1px solid transparent !important;
	border-radius: 999px !important;
	font: 600 16px/1.5 "Source Sans 3", system-ui, sans-serif !important;
	text-transform: none;
	letter-spacing: 0;
	box-shadow: none !important;
	cursor: pointer;
	transition: background .2s, transform .2s;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form button.wpforms-submit:hover {
	background: var(--bdc-forest) !important;
	transform: translateY(-1px);
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form button.wpforms-submit:disabled {
	opacity: .65;
	cursor: wait;
	transform: none;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form label.wpforms-error, .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form em.wpforms-error, .elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-error-container {
	color: var(--bdc-error) !important;
	font: 400 14px/1.5 "Source Sans 3", system-ui, sans-serif !important;
	margin-top: 6px;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-confirmation-container-full {
	margin: 0 !important;
	padding: 24px !important;
	color: var(--bdc-forest) !important;
	background: #edf4ec !important;
	border: 1px solid #bbd0bc !important;
	border-radius: 6px;
	font: 400 17px/1.65 "Source Sans 3", system-ui, sans-serif !important;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-confirmation-container-full p {
	margin: 0 0 12px;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-confirmation-container-full p:last-child {
	margin-bottom: 0;
}

.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-confirmation-container-full a {
	color: inherit;
	text-decoration: underline;
}

.elementor-48 .elementor-element.elementor-element-a102c02 a:focus-visible, .elementor-48 .elementor-element.elementor-element-a102c02 button:focus-visible, .elementor-48 .elementor-element.elementor-element-a102c02 .wpforms-field-html a:focus-visible {
	outline: 3px solid var(--bdc-amber);
	outline-offset: 5px;
}

/* Zachowujemy natywne ukrywanie pól warunkowych i antyspamowych WPForms.
   Nie ustawiaj display:block!important na wszystkich polach. */
@media (max-width:1023px) {
	.elementor-48 .elementor-element.elementor-element-a102c02 > .elementor-container, .elementor-48 .elementor-element.elementor-element-a102c02 > .e-con-inner {
		grid-template-columns: minmax(0, 1fr);
		gap: 40px !important;
	}
}

@media (max-width:639px) {
	.elementor-48 .elementor-element.elementor-element-a102c02 {
		padding: 80px 16px !important;
	}
	
	.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form > .elementor-widget-container {
		padding: 24px 18px !important;
	}
	
	.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-field.bd-half {
		float: none;
		clear: both;
		width: 100%;
		margin-right: 0;
	}
	
	.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-form .wpforms-title {
		font-size: 29px !important;
	}
	
	.elementor-48 .elementor-element.elementor-element-a102c02 .bd-contact-map img {
		height: 190px;
	}
}

@media (prefers-reduced-motion:reduce) {
	.elementor-48 .elementor-element.elementor-element-a102c02 *, .elementor-48 .elementor-element.elementor-element-a102c02 *::before, .elementor-48 .elementor-element.elementor-element-a102c02 *::after {
		transition: none !important;
		animation: none !important;
	}
}
