.pua-static-top,
.pua-static-top * {
	box-sizing: border-box;
}

.pua-static-top {
	font-family: Manrope, Jost, Arial, sans-serif;
	color: #17313f;
}

.pua-static-top--inner {
	height: 82px;
}

.pua-static-wrap {
	width: min(1340px, calc(100% - 64px));
	margin-inline: auto;
}

.pua-static-hero {
	position: relative;
	isolation: isolate;
	display: flex;
	min-height: clamp(780px, 88vh, 930px);
	flex-direction: column;
	overflow: hidden;
	background-color: #dceaf2;
	background-image: var(--pua-hero-image);
	background-position: 50% 85%;
	background-repeat: no-repeat;
	background-size: cover;
}

.pua-static-hero::before {
	content: '';
	position: absolute;
	z-index: -1;
	inset: 0;
	width: auto;
	height: auto;
	border: 0;
	border-radius: 0;
	background:
		linear-gradient(180deg, transparent 56%, rgb(2 35 55 / 10%) 76%, rgb(2 35 55 / 32%) 100%);
	box-shadow: none;
}

.pua-static-header {
	position: fixed;
	z-index: 1000;
	top: 0;
	right: 0;
	left: 0;
	border: 0;
	border-bottom: 0;
	background: linear-gradient(180deg, rgb(255 250 242 / 80%) 0%, rgb(255 250 242 / 50%) 56%, transparent 100%);
	box-shadow: none;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	transition:
		background-color 240ms ease,
		box-shadow 240ms ease,
		border-color 240ms ease,
		-webkit-backdrop-filter 240ms ease;
}

.pua-static-header.is-scrolled {
	border-bottom-color: rgb(7 71 114 / 10%);
	background: linear-gradient(100deg, rgb(255 250 242 / 97%) 0%, rgb(239 247 250 / 97%) 58%, rgb(224 240 247 / 97%) 100%);
	box-shadow: 0 12px 32px rgb(4 48 75 / 14%);
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}

body.admin-bar .pua-static-header {
	top: 32px;
}

.pua-static-header__inner {
	position: relative;
	display: grid;
	min-height: 112px;
	align-items: center;
	grid-template-columns: 235px 1fr;
	gap: 38px;
	transition: min-height 240ms ease;
}

.pua-static-header.is-scrolled .pua-static-header__inner {
	min-height: 82px;
}

.pua-static-header--inner .pua-static-header__inner {
	min-height: 82px;
}

.pua-static-logo {
	display: block;
	width: 220px;
	line-height: 0;
	transition: width 240ms ease;
}

.pua-static-header.is-scrolled .pua-static-logo {
	width: 174px;
}

.pua-static-header--inner .pua-static-logo {
	width: 174px;
}

.pua-static-logo img {
	display: block;
	width: 100%;
	height: auto;
}

.pua-static-menu-toggle {
	display: none;
	width: 48px;
	height: 48px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 5px;
	padding: 0;
	border: 1px solid rgb(7 71 114 / 14%);
	border-radius: 10px;
	background: rgb(255 255 255 / 72%);
	color: #074772;
	cursor: pointer;
	box-shadow: 0 10px 24px rgb(7 71 114 / 10%);
}

.pua-static-menu-toggle span {
	display: block;
	width: 22px;
	height: 2px;
	border-radius: 2px;
	background: currentcolor;
	transform-origin: center;
	transition: transform 180ms ease, opacity 180ms ease;
}

.pua-static-header.is-menu-open .pua-static-menu-toggle span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.pua-static-header.is-menu-open .pua-static-menu-toggle span:nth-child(2) {
	opacity: 0;
}

.pua-static-header.is-menu-open .pua-static-menu-toggle span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

.pua-static-nav {
	--pua-nav-indicator-left: 0px;
	--pua-nav-indicator-width: 0px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(24px, 2.4vw, 42px);
}

.pua-static-nav::after {
	content: '';
	position: absolute;
	right: auto;
	bottom: 8px;
	left: var(--pua-nav-indicator-left);
	width: var(--pua-nav-indicator-width);
	height: 2px;
	border-radius: 2px;
	background: linear-gradient(90deg, #c49255 0%, #5c9abf 100%);
	box-shadow: 0 3px 10px rgb(7 71 114 / 18%);
	transition:
		left 320ms cubic-bezier(0.22, 1, 0.36, 1),
		width 320ms cubic-bezier(0.22, 1, 0.36, 1),
		opacity 180ms ease;
}

.pua-static-nav > a:not(.pua-static-button) {
	position: relative;
	padding: 18px 0;
	color: #074772;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	opacity: 1;
	transition:
		color 180ms ease,
		opacity 180ms ease,
		transform 180ms ease;
}

.pua-static-nav > a:not(.pua-static-button)::after {
	display: none;
}

.pua-static-nav > a.is-active,
.pua-static-nav > a:not(.pua-static-button):hover,
.pua-static-nav > a:not(.pua-static-button):focus-visible {
	color: #053d63;
	opacity: 1;
	transform: translateY(-1px);
}

.pua-static-button {
	display: inline-flex;
	min-height: 50px;
	align-items: center;
	justify-content: center;
	gap: 13px;
	padding: 13px 24px;
	border: 0;
	border-radius: 7px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	box-shadow: none;
}

.pua-static-button svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

.pua-static-hero__inner {
	position: relative;
	z-index: 2;
	display: flex;
	min-height: 0;
	flex: 1;
	align-items: flex-start;
	padding-top: clamp(215px, 24vh, 250px);
	padding-bottom: 245px;
}

.pua-static-hero__copy {
	position: relative;
	z-index: 2;
	width: min(760px, 62%);
	max-width: none;
	padding: 24px 28px 26px;
	border-radius: 18px;
	isolation: isolate;
	color: #092f49;
}

.pua-static-hero__copy::before {
	content: '';
	position: absolute;
	z-index: -1;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(90deg, rgb(250 248 242 / 54%) 0%, rgb(250 248 242 / 48%) 78%, rgb(250 248 242 / 5%) 100%);
	-webkit-mask-image: radial-gradient(ellipse 40% 60% at top right, rgb(0 0 0 / 8%) 0%, #000 78%);
	mask-image: radial-gradient(ellipse 40% 60% at top right, rgb(0 0 0 / 8%) 0%, #000 78%);
}

.pua-static-hero h1 {
	margin: 0;
	color: #092f49;
	font-family: Marcellus, Georgia, serif;
	font-size: clamp(34px, 3vw, 44px);
	font-weight: 500;
	line-height: 1.12;
	letter-spacing: -0.4px;
	text-shadow: none;
}

.pua-static-lead {
	max-width: 600px;
	margin: 12px 0 0;
	color: #17313f;
	font-size: clamp(18px, 1.35vw, 20px);
	font-weight: 600;
	line-height: 1.5;
	text-shadow: none;
}

.pua-static-button--hero {
	min-width: 208px;
	min-height: 54px;
	margin-top: 24px;
	border: 1px solid #074772;
	border-radius: 12px;
	background: #074772;
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.02em;
	transition: background-color 180ms ease, border-color 180ms ease;
}

.pua-static-button--hero:hover,
.pua-static-button--hero:focus-visible {
	border-color: #135b87;
	background: #135b87;
	color: #fff;
	text-decoration: none;
	box-shadow: none;
	transform: none;
}

.pua-static-button--hero span {
	color: #e7c28c;
	font-size: 22px;
	font-weight: 400;
	line-height: 0;
}

.pua-static-features {
	position: absolute;
	z-index: 4;
	right: 0;
	bottom: 42px;
	left: 0;
	display: grid;
	width: min(1200px, calc(100% - 64px));
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.pua-static-feature {
	position: relative;
	display: grid;
	min-height: 108px;
	align-items: center;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 14px;
	padding: 16px 20px;
	border: 1px solid rgb(255 255 255 / 90%);
	border-radius: 18px;
	background: linear-gradient(125deg, rgb(255 249 233 / 97%) 0%, rgb(242 251 255 / 96%) 50%, rgb(213 239 251 / 95%) 100%);
	box-shadow: 0 12px 30px -18px rgb(7 71 114 / 30%);
	-webkit-backdrop-filter: blur(18px) saturate(115%);
	backdrop-filter: blur(18px) saturate(115%);
	opacity: 1;
	animation: pua-static-feature-fade-in 720ms ease both;
	animation-delay: 150ms;
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

.pua-static-feature::before {
	content: '';
	position: absolute;
	inset: 5px;
	border: 1px solid rgb(92 154 191 / 40%);
	border-radius: 13px;
	pointer-events: none;
}

.pua-static-feature:nth-child(2) {
	animation-delay: 280ms;
}

.pua-static-feature:nth-child(3) {
	animation-delay: 410ms;
}

.pua-static-feature:hover {
	border-color: #9bc9df;
	box-shadow: 0 14px 34px -18px rgb(7 71 114 / 42%);
}

@keyframes pua-static-feature-fade-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pua-static-feature {
		opacity: 1;
		animation: none;
		transition: none;
	}
}

.pua-static-feature__icon {
	display: grid;
	width: 48px;
	height: 48px;
	box-sizing: border-box;
	place-items: center;
	border: 1px solid rgb(255 255 255 / 65%);
	border-radius: 14px;
}

.pua-static-feature__icon svg {
	width: 28px;
	height: 28px;
	fill: none;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2.2;
}

.pua-static-feature__icon--sand {
	background: linear-gradient(135deg, #ffedc7, #ffe1a1);
	color: #9a6328;
}

.pua-static-feature__icon--green {
	background: linear-gradient(135deg, #e0f4db, #c3e8c9);
	color: #347b57;
}

.pua-static-feature__icon--blue {
	background: linear-gradient(135deg, #d9f2ff, #bce5f8);
	color: #075781;
}

.pua-static-feature strong {
	display: block;
	margin-bottom: 4px;
	color: #074772;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.2;
}

.pua-static-feature p {
	margin: 0;
	color: #254e65;
	font-size: 14px;
	line-height: 1.45;
}

#o-miejscu,
#domki,
#galeria,
#kontakt {
	scroll-margin-top: 104px;
}

@media (max-width: 1120px) {
	.pua-static-header__inner {
		grid-template-columns: 210px 1fr;
		gap: 22px;
	}

	.pua-static-nav {
		gap: 22px;
	}

	.pua-static-nav > a:not(.pua-static-button) {
		font-size: 14px;
	}

	.pua-static-feature {
		grid-template-columns: 48px minmax(0, 1fr);
		gap: 12px;
		padding: 16px;
	}

	.pua-static-feature__icon {
		width: 48px;
		height: 48px;
	}
}

@media (max-width: 900px) {
	.pua-static-wrap {
		width: min(100% - 40px, 1340px);
	}

	.pua-static-header__inner {
		grid-template-columns: 200px auto;
		justify-content: space-between;
	}

	.pua-static-menu-toggle {
		display: flex;
		justify-self: end;
	}

	.pua-static-nav {
		position: absolute;
		top: calc(100% - 2px);
		right: 0;
		display: flex;
		visibility: hidden;
		width: min(360px, calc(100vw - 40px));
		align-items: stretch;
		flex-direction: column;
		gap: 2px;
		padding: 14px;
		border: 1px solid rgb(7 71 114 / 10%);
		border-radius: 14px;
		background: rgb(255 250 242 / 98%);
		box-shadow: 0 24px 46px rgb(4 48 75 / 20%);
		opacity: 0;
		pointer-events: none;
		transform: translateY(-10px);
		transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
	}

	.pua-static-header.is-menu-open .pua-static-nav {
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
		transform: translateY(0);
	}

	.pua-static-nav::after {
		display: none;
	}

	.pua-static-nav > a:not(.pua-static-button) {
		width: 100%;
		padding: 13px 16px;
		border-radius: 8px;
		color: #074772;
		font-size: 15px;
		font-weight: 700;
		opacity: 1;
	}

	.pua-static-nav > a.is-active,
	.pua-static-nav > a:not(.pua-static-button):hover,
	.pua-static-nav > a:not(.pua-static-button):focus-visible {
		background: rgb(92 154 191 / 12%);
		transform: none;
	}

	.pua-static-hero::before {
		background:
			linear-gradient(180deg, transparent 48%, rgb(2 35 55 / 18%) 78%, rgb(2 35 55 / 38%) 100%);
	}

	.pua-static-hero__copy {
		width: min(620px, 82%);
	}

	.pua-static-features {
		width: min(100% - 40px, 1200px);
		gap: 14px;
	}

	.pua-static-feature {
		min-height: 128px;
		grid-template-columns: 1fr;
		align-content: center;
		gap: 8px;
	}

	.pua-static-feature__icon {
		width: 42px;
		height: 42px;
		border-radius: 12px;
	}

	.pua-static-feature__icon svg {
		width: 26px;
		height: 26px;
	}
}

@media (max-width: 700px) {
	.pua-static-top--inner {
		height: 68px;
	}

	.pua-static-header:not(.is-scrolled) {
		background: linear-gradient(180deg, rgb(255 250 242 / 88%) 0%, rgb(255 250 242 / 64%) 58%, transparent 100%);
	}

	.pua-static-wrap {
		width: min(100% - 30px, 1340px);
	}

	.pua-static-hero {
		min-height: auto;
		background-image: url('hero-projekt3-mobile.webp');
		background-position: center;
	}

	.pua-static-hero::before {
		background:
			linear-gradient(180deg, transparent 48%, rgb(3 45 69 / 12%) 76%, rgb(3 45 69 / 35%) 100%);
	}

	.pua-static-header__inner {
		min-height: 82px;
		grid-template-columns: 1fr auto;
		gap: 12px;
	}

	.pua-static-nav {
		width: calc(100vw - 30px);
	}

	.pua-static-logo {
		width: 150px;
	}

	.pua-static-header.is-scrolled .pua-static-logo {
		width: 132px;
	}

	.pua-static-header.is-scrolled .pua-static-header__inner {
		min-height: 68px;
	}

	.pua-static-header--inner .pua-static-header__inner {
		min-height: 68px;
	}

	.pua-static-hero__inner {
		min-height: 510px;
		padding: 165px 0 65px;
	}

	.pua-static-hero__copy {
		width: 100%;
		padding: 22px 20px 24px;
	}

	.pua-static-hero h1 {
		font-size: clamp(30px, 8vw, 36px);
		line-height: 1.12;
	}

	.pua-static-lead {
		max-width: 330px;
		font-size: 16px;
		line-height: 1.45;
	}

	.pua-static-button--hero {
		min-width: 184px;
		margin-top: 22px;
	}

	.pua-static-features {
		position: relative;
		bottom: auto;
		display: grid;
		width: min(100% - 30px, 1200px);
		padding-bottom: 24px;
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.pua-static-feature {
		min-height: 80px;
		grid-template-columns: 40px minmax(0, 1fr);
		gap: 12px;
		padding: 12px 16px;
		border-radius: 14px;
	}

	.pua-static-feature::before {
		border-radius: 9px;
	}

	.pua-static-feature__icon {
		width: 40px;
		height: 40px;
		border-radius: 12px;
	}

	.pua-static-feature strong {
		font-size: 16px;
	}

	.pua-static-feature p {
		font-size: 14px;
	}
}

@media (max-width: 782px) {
	body.admin-bar .pua-static-header {
		top: 46px;
	}
}
