@charset "UTF-8";
/* CSS Document */

:root {
	--color-001: rgb(0,0,0);
	--color-001_85: rgb(0,0,0,1);
	--color-002: rgb(255,255,255);
	--color-002_75: rgba(255,255,255,.75);
	--color-002_25: rgba(255,255,255,.25);
	--color-003: rgb(150,150,150);
	--color-004: rgba(235,0,0,.7);
	
	--color-100: rgb(0, 100, 200);
}

html, body {
	background-color: var(--color-001);
	color: var(--color-002);
	font-family: "Open Sans", sans-serif;
	font-optical-sizing: auto;
	min-height: 1vh;
}

body {
	_min-height: 100vh;
}

h1, h2, h3, h4, h5 {
	font-family: "Montserrat", sans-serif;
	font-weight: 900;
}

p {
	font-size: 1rem;
}

header h1 {
	font-weight: 700;
	font-size: 4rem;
}

header h1 > strong {
	font-weight: 900;
	_color: var(--color-100);
}

header h1>.h1_2 {
	position: relative;
	z-index: 0;
	text-decoration: underline
}

header h2 {
	font-weight: 500;
	font-size: 1.25rem;
	line-height: 160%;
}

@media (max-width: 768px) {
	header h1 {
		font-size: 2.2rem;
	}
	
	header h2 {
		font-size: 1.25rem;
		line-height: 140%;
		font-weight: 700;
	}
	
	header p {
		line-height: 160%;
	}
}


.hero {
	
	_min-height: 100vh;	
	_display: flex;
	_align-items: center;
	
	position: relative;
	display: flex;
    flex-direction: column;
    _flex-wrap: wrap;
	
    align-items: center;
    justify-content: center;
    
	min-height: 100vh;
	min-height: 100svh;
	min-height: 100dvh;
	
    box-sizing: border-box;
    padding: 50px 0;
}

.hero-video {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;

	width: 100%;
	height: 100%;
	object-fit: cover;

	z-index: 0;
	pointer-events: none;
}

.hero-video-mobile {
 	display: none;
}


/* przyciemnienie (jak Twój gradient) */
.hero-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.5);
	z-index: 1;
}

/* treść nad wideo */
.hero-content {
	position: relative;
	z-index: 2;
	width: 100%;
}

@media (max-width: 768px) {
	.hero {
		justify-content: flex-start;
	}
	
	.hero-video-desktop {
		display: none;
	}

	.hero-video-mobile {
		display: block;
	}
}

.hero-buttons {
	box-sizing: border-box;
}

.hero-buttons a.hero-button {
	padding: 15px 50px;
	margin: 5px 10px;
	background-color: var(--color-100);
	color: var(--color-02);
	border-radius: 50px;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1rem;
	
	transform: scale(1);
	transition: transform 0.3s ease;
	position: relative;
	z-index: 10; 
}

.hero-buttons a.hero-button:hover {
	transform: scale(1.1);
}

.hero-img {
	position: relative;
	border-radius: 1rem;
	overflow: hidden;
	height: 350px;
}

.hero-img > img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(1);
	transition: transform 0.6s ease;
}

.hero-img:hover > img {
	transform: translate(-50%, -50%) scale(1.2);
}

footer {
	position: relative;
}

footer h5 {
	font-weight: 500; 
}

footer p,
footer a,
footer ul li {
	font-size: .8rem;
	margin: 0;
	text-decoration: none;
	color: inherit;
}

footer a:hover {
	text-decoration: underline;
}

footer ul,
footer ul li {
	list-style: none;
	margin: 0;
	padding: 0;
}


/* bootstrap */
nav {
	_border-bottom: 1px solid var(--color-002_25);
	padding: 1rem 0 !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px); 
}
.bg-body-tertiary {
	background-color: var(--colo-001) !important;
}