html {
    scroll-behavior: smooth;
}

* {
	margin: 0;
	padding: 0;
	font-family: verdana, arial;
	box-sizing: border-box;
	color: #5F5A59; /* podstawowy kolor czcionki */
	}
	
body {
	/*background-color: aqua;*/
	background-color: white;
}

#wrapper {
	max-width: 1100px; /* szerokość ekranu */
	margin: 0 auto;
	background-color: #f4f4f4; /* podstawowy kolor tła */
}

header img {
	width:100%; 
	display: block;
}


nav {
	overflow: hidden;
}

nav a {
	display: block;
	width: 33.33%;
	float: left;
	color: white;
	text-align: center;
	text-decoration: none;
	/*background-color: darkcyan;*/
	background-image: linear-gradient(#558ed5, #1a3b66);
	padding: 15px 30px;
	font-size: 15px;
	/*-webkit-transition: all 0.5s ease;*/
	transition: all 0.5s ease;
	border-top: 1px solid white;
	border-left: 1px solid white;
}

a.menu:hover{
	background-image: linear-gradient(#f87958, #f24411);
	cursor: pointer;
}

nav a.menu_selected {
	background: linear-gradient(to bottom, 
    #d1e0f3 0%,    /* Jasny błękit na górze */
    #fcfdfe 50%,   /* Prawie biały środek */
    #d1e0f3 100%   /* Powrót do błękitu na dole */
	);
	color: #052B54;
}

a.menu_selected:hover{
	background-image: linear-gradient(#f87958, #f24411);
	cursor: pointer;
}

article {
	margin-top:10px;
	margin-bottom:20px;
	padding: 0 20px;
}


article h1 {
	font-weight: normal;
	font-size: 30px;
	font-family: verdana;
	padding: 15px 15px;
	text-align: center;
	clear: right; /* prevent pictures on the right */
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

article h2 {
	font-weight: normal;
	font-size: 30px;
	font-family: verdana;
	padding: 15px 15px;
	text-align: center;
	clear: right; /* prevent pictures on the right */
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

article h3 {
	font-weight: bold;
	font-size: 18px;
	font-family: georgia;
	padding: 15px 15px;
	text-align: left;
	clear: right; /* prevent pictures on the right */
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

article p {
	text-align: justify;
	line-height: 25px;
	font-size: 15px;
	padding: 15px 15px;
}

article p.center {
	text-align: center;
	line-height: 25px;
	font-size: 15px;
	padding: 15px 15px;
}

article p.double_margin {
	text-align: justify;
	line-height: 25px;
	font-size: 15px;
	/* double left/right margin */
	padding: 15px 150px 15px 150px;
}

article ul {
	font-size: 15px;
	padding: 0px 45px;
}

article ol {
	font-size: 15px;
	padding: 0px 45px;
}

article li {
	padding: 5px 0px;
	line-height: 25px;
}

/* second-level ident */
article li ul, 
article li ol {
    padding-left: 20px; /* Zmniejszone wcięcie dla drugiego poziomu */
    padding-right: 0px;
    margin-top: 5px;    /* Opcjonalnie: lekki odstęp od punktu nadrzędnego */
}

article strong {
    font-weight: 700;
	background-color: #E7E7E7; /* #EBE6E2 */
	padding: 0.1em 0.2em;      /* Delikatny odstęp wokół tekstu */
	border-radius: 4px;
}

article a {
    color: blue;
    text-decoration: underline;
    transition: color 0.3s ease; /* Płynna zmiana koloru */
}

article a:hover {
    color: red;
}


img.my {
	margin: 0px 10px 10px 0;
	padding: 10px;
}

/* programy wagowe pl */
.baner_progwag {
    background: linear-gradient(to bottom, #1a3b66, #558ed5);
    
    font-family: "tahoma"; 
    color: white;
    font-size: 50px;
    font-weight: normal;
    text-align: center;
	letter-spacing: 3px;
    
    text-shadow: 6px 6px 6px rgba(0, 0, 0, 0.9);
    
    padding: 20px 10px;
    width: 100%;
    box-sizing: border-box;
}

/* --------------- */
/* blue button "download demo" */
/* --------------- */
.div_button_blue {
	text-align: center;
	margin: 10px 0;
	display: block; /* force separate line */
	width: 100%; /* force separate line */
	clear: both; /* force separate line */
}

.button_blue {
    display: inline-block;
    padding: 15px 30px;
	min-width: 250px;
    color: white;
    text-decoration: none; /* Usuwa domyślne podkreślenie linku */
    border-radius: 3px;
    background: linear-gradient(#558ed5, #1a3b66);
	box-shadow: 0px 5px 5px rgba(0,0,0,0.3);	
}

.button_blue:hover {
    background: linear-gradient(#f87958, #f24411);   
	color: #5F5A59; 
}


/* --------------- */
/* buttons quick scroll - links */
/* --------------- */
.div_button_quick1 {
    text-align: center;
    padding: 15px 0;
}

.button_quick1 {
    display: inline-block;
    margin: 5px 8px;
    padding: 8px 18px;
	font-size: 15px;
    text-decoration: none;
    border: 2px solid #1a3b66;  
    border-radius: 3px;
    transition: all 0.0s ease;
	box-shadow: 0px 5px 5px rgba(0,0,0,0.3);	
	color: #5F5A59;
}

.button_quick1:hover {
    background-color: #558ed5;
    color: white;
	transition: 0.2s ease;
}


/* --------------- */
/* index page picture container (flexbox/grid) */
/* --------------- */
.kafelki-container {
    display: grid;
	justify-items: center;
    /* Dwie kolumny o równej szerokości */
    grid-template-columns: repeat(2, 1fr); 
    gap: 20px; /* Odstęp między kafelkami */
    padding: 20px;
}

.kafelek {
    width: 100%;
    max-width: 500px;
    border: 1px solid #ccc;
    padding: 10px;
    text-align: center;
}


.kafelek img {
    width: 100%;
	max-width: 400px;
    height: 300px; /* Dopasuj wysokość obrazka */
    object-fit: cover;
	box-shadow: 0px 5px 5px rgba(0,0,0,0.3);
}

.kafelek h3 {
	font-size: 15px;
	font-family: verdana, arial;
	text-align: center;
	padding: 15px 0px 0px 0px; /* top margin only */
	border: none;
}

/* --------------- */
/* faq section expand/collapse feature
/* --------------- */
.faq-item {
}

.faq-question {
    width: 100%;
    background: none;
	font-style: italic;
    border: none;
    padding: 10px;
    text-align: left;
	font-size: 15px;
    color: #5F5A59; 
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.faq-question:hover {
    color: #1a3b66;
	background-color: #E7E7E7; /* #EBE6E2 */
	transition: 0.2s ease;	
}


.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
    color: #444;
}

.faq-answer p {
    padding: 10px 30px 10px 30px;
    line-height: 1.6;
}

/* right arrow collapse/expand */
.icon-box {
    width: 8px;
    height: 8px;
    border-right: 2px solid #5F5A59;
    border-bottom: 2px solid #5F5A59;
    transform: rotate(45deg);
    transition: transform 0.3s ease;
}

.faq-question.active .icon-box {
    transform: rotate(225deg); 
}






/* --------------- */
/* top scrolling button in right bottom corner */
/* --------------- */
.back-to-top {
    position: fixed;     /* Przycisk "pływa" nad stroną */
    bottom: 30px;        /* Odstęp od dołu */
    right: 30px;         /* Odstęp od prawej */
    width: 50px;
    height: 50px;
    background: linear-gradient(#558ed5, #1a3b66);
    color: white;
    border-radius: 50%;  /* Idealne koło */
    display: flex;       /* Centrowanie ikony w środku */
    align-items: center;
    justify-content: center;
	padding: 0px 0px 6px 0px; /* lekko podnieś */
    text-decoration: none;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    transition: all 0.3s ease;
    z-index: 1000;       /* Upewnia się, że przycisk jest nad innymi elementami */
    opacity: 0;           /* Przycisk jest całkiem przezroczysty */
    visibility: hidden;
    transition: all 0.4s ease; 
	font-size: 20px;
    font-weight: bold;
    line-height: 50px; /* wyśrodkowanie pionowe dla znaku tekstowego */}

.back-to-top:hover {
    background: linear-gradient(#f87958, #f24411);
    transform: translateY(-5px); /* Lekkie uniesienie przy najechaniu */
}

.back-to-top.show {
    opacity: 1;
    visibility: visible;
}

.div_img_center {
	padding: 20px;
	text-align: center;
	width: 100%; /* force separate line */
	clear: both; /* force separate line */	
}

.div_img_center img {
	max-width: 100%;
	box-shadow: 0px 5px 5px rgba(0,0,0,0.3);
}

.div_img_right {
	padding: 20px;
	float: right; /* text floating on the left */
	clear: right; /* prevent two pictures in one line */
	text-align: center;
}

.div_img_right img {
	max-width: 100%;
	box-shadow: 0px 5px 5px rgba(0,0,0,0.3);
}

  
iframe {
	width:100%;
} 

footer {
	line-height: 30px;
	border-width: 1px;
	border-color: gray;
	border-style: solid;
	text-align: center;
	margin-top: 10px;
	font-size: 12px;
}

@media (max-width:820px) {
		nav a {
			width: 50%;
			font-size: 15px;
		}

		.pictext_container .pictext_pic {
			padding: 5px;
		}
		
		article p.double_margin {
			/* double left/right margin - recuded at low screen resolution */
			padding: 55px;			
		}
		
		.baner_progwag {
			font-size: clamp(30px, 6vw, 50px);
			/*font-size: 45px;*/
		}
		
		article h1 {
			font-size: 25px;
		}

		article h2 {
			font-size: 25px;
		}
		
		.kafelki-container {
			grid-template-columns: 1fr; /* Automatycznie 1 kolumna na wąskich ekranach */
		}		
}

@media (max-width:500px) {
		nav a {
			width: 100%;
			font-size: 15px;
			padding: 10px;
		}
		

		article p.double_margin {
			/* double left/right margin - recuded at low screen resolution */
			padding: 15px;			
		}
		
		.baner_progwag {
			font-size: 30px;
		}
		
		article h1 {
			font-size: 22px;
		}

		article h2 {
			font-size: 22px;
		}
}
