.banner_full {
	position: relative;
	overflow: hidden;
}

.mobile {
	display: none;
}

.banner_full .container {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.banner_full img {
	width: 100%;
	height: 100vh;
	object-fit: cover;
}

.banner_full video {
	width: 100%;
	height: 100vh;
	object-fit: cover;
}

.banner_full .container .half h2 {
	color: #FFFEFE;
	font-family: Inter;
	font-size: 64px;
	font-style: normal;
	font-weight: 400;
	line-height: 95%; /* 60.8px */
	letter-spacing: -1.28px;
	margin: 0 auto 24px 0;
}

.banner_full .container .half h2 * {
	color: #FFFEFE;
	font-family: Inter;
	font-size: 64px;
	font-style: normal;
	font-weight: 400;
	line-height: 95%; /* 60.8px */
	letter-spacing: -1.28px;
}


.banner_full .container .half h2 i {
	font-style: italic;
}

.banner_full .container .half h2 b,
.banner_full .container .half h2 strong {
	font-weight: 600;
}

.banner_full .container .half p {
	color: #FFFEFE;
	max-width: 625px;
	font-family: Inter;
	font-size: 20px;
	font-style: normal;
	font-weight: 300;
	line-height: 110%; /* 22px */
	letter-spacing: -0.4px;
	margin: 40px auto 0 0;
}

.banner_full .container .half ul,
.banner_full .container .half ol {
	max-width: 472px;
}

.banner_full .container .half ul li,
.banner_full .container .half ol li {
	font-family: Inter;
	font-size: 20px;
	font-style: normal;
	font-weight: 300;
	line-height: 110%; /* 22px */
	letter-spacing: -0.4px;
	color: #fff;
}

.banner_full .container .half a.btn_arrow {
	display: inline-block;
	margin: 40px auto 0 auto;
	color: #fffff;
	font-family: Inter;
	padding: 16px 36px;
	border-radius: 30px;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 120%; /* 19.2px */
	text-transform: uppercase;
	transition: 300ms;
}

.banner_full .img svg {
	position: absolute;
	bottom: 0;
	left: -50%;
}

.banner_full .img svg.mobile {
	display: none;
}

.banner_full .container .half {
	justify-content: start;
}

.banner_full .container .img-left + .half {
	justify-content: end;
}

@media only screen and (max-width: 996px) {
	.banner_full {
		position: relative;
	}

	.banner_full .container .half.text {
		padding-bottom: 50px;
	}

	.banner_full .container .half {
		width: 100%;
		min-height: auto;
		order: 2;
	}

	.mobile.bg {
		position: absolute;
		display: block;
		z-index: 0;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.banner_full .container .half ul,
	.banner_full .container .half ol  {
		padding-left: 15px;
	}

	.banner_full .container .half ul li,
	.banner_full .container .half ol li {
		margin-bottom: 10px;
	}

	.banner_full .container .img-left,
	.banner_full .container .img-right {
		margin: 0 -15px 0 -15px;
		width: calc(100% + 30px);
		padding: 0;
		order: 1;
	}

	.banner_full .container {
		width: auto;
		min-height: auto;
		width: 100% !important;
	}

	.banner_full .container .half.text {
		padding-bottom: 0 !important;
	}

	.banner_full .container .half h2,
	.banner_full .container .half h2 * {
		font-size: 44px;
		line-height: 100%;
		letter-spacing: 0;
	}

	.banner_full .container .half a {
		max-width: 100%;
	}

	.banner_full .container .img-left img,
	.banner_full .container .img-right img {
        position: relative;
        max-width: calc(100% + 30px);
        width: calc(100% + 30px);
        max-height: 100%;
        height: 540px;
        object-fit: cover;
	}

	.banner_full .container .img-left video,
	.banner_full .container .img-right video {
        position: relative;
        max-width: calc(100% + 30px);
        width: calc(100% + 30px);
        max-height: 100%;
        height: 540px;
        object-fit: cover;
	}

	.banner_full img {
		height: 85vh;
	}

	.banner_full .container {
		top: 45%;
	}

	body .banner_full .half a.btn_arrow:hover,
	body .banner_full .half a.btn_arrow {
		border: none !important;
	}

	.banner_full .container .half p,
	.banner_full .container .half p * {
		font-size: 16px;
		font-style: normal;
		font-weight: 300;
		line-height: 115%; /* 18.4px */
		letter-spacing: -0.32px;
	}

	.banner_full .container .half p {
		margin-top: 20px;
		width: 100%;
	}

	.banner_full .container .half p a {
		margin-top: 20px;
	}

	.banner_full .container .half h2 {
		letter-spacing: 0;
	}

	.banner_full .img svg {
		display: none;
	}

.banner_full .img svg.mobile {
	display: block;
	right: 0;
    width: 100%;
    height: auto;
}
}

/* === VERY SMALL (opcjonalny tweak) === */
@media (max-width: 400px) {
  .banner_full .container .half h2,
  .banner_full .container .half h2 * {
    font-size: 28px; /* było 32px w Twoim media – trochę ciaśniej na XS */
  }
}