
@font-face {
  font-family: 'Roboto';
  font-weight: 100 900;
  src: url('https://ttmsystem.sk/fonts/Roboto.ttf') format('truetype');
  font-display: swap;
}

* {padding: 0; margin: 0; box-sizing: border-box;}
a {text-decoration: none; color: inherit;}

h1 {font-weight: 900; font-size: 20px;}
h2 {font-weight: 700; font-size: 18px;}
h3 {font-weight: 700; font-size: 15px;}
h4 {padding: 15px 0 10px 0;}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: #f5f5f5;
    font-family: 'Roboto', sans-serif;
	color: #0e3b5a;
	font-size: 14px;
}

main {flex: 1; float: left; width: 100%;}
header {float: left; width: 100%; color: #08274b; background: #fff; box-shadow: 0px 0px 12px 0px #0000001a;}
footer {float: left; width: 100%;}

.container {max-width: 1000px; margin: auto;}
.center    {max-width: max-content; margin: auto;}

.header {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
}

.link-a {display: inline-block; max-width: max-content; font-weight: 500; text-decoration: underline; color: #063fb3;}

.btn {display: block; text-align: center; width: 180px; border-radius: 3px; padding: 10px 15px; margin: 25px auto 0 auto; color: #fff; background: #063fb3;}
.btn:hover {background: #0e3b5a;}

/*** LOGO ***/

.logo * {display: block;}
.logo 	{margin: 25px 10px;}
.logo a 		{max-width: max-content; padding: 5px 15px;}
.logo h1 		{color: #0e3b5a;}
.logo h1 span 	{line-height: 20px; font-size: 13px; font-weight: 500; color: #3d5a7a;}


/*** ARTICLE ***/

article {
	max-width: 728px;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	padding: 25px 10px 0px 10px;
	margin: 0 auto;
}

	article h2 	 	{display: block; padding: 0 15px;}
	article span 	{display: block; line-height: 20px; font-size: 13px; font-weight: 500; color: #3d5a7a;}
	article a 	 	{display: block; line-height: 20px; font-size: 13px; font-weight: 500; color: #3d5a7a;}

	article blockquote {font-family: serif; padding: 15px 15px; margin: 0 auto 25px auto; background: #e4e6e9;}

/*** LINKS ***/

.links {
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
	padding: 15px;
	margin-top: 15px;
	gap: 25px;
}

	.links-tab {width: 315px; display: flex; align-items: center; gap: 10px; border: solid 1px #c0c5cd; padding: 15px;}
	.links-tab img 	{width: 54px; height: 36px; aspect-ratio: 3/2;}
	.links-tab b 	{display: block;}
	.links-tab a 	{max-width: max-content; font-weight: 500; text-decoration: underline; color: #063fb3;}
	
/*** TABS ***/

.tab-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #e4e6e9;
	margin: 0 15px;
	padding: 15px 15px;
}
	.tab-header span 	{display: block; line-height: 20px; font-size: 13px; font-weight: 500; color: #3d5a7a;}
	 button  {width: 100px; cursor: pointer; border: 0; border-radius: 3px; padding: 10px 10px; color: #fff; background: #063fb3;}
	 button:hover {background: #0e3b5a;}

.tab-content {
	display: none;
	background: #e4e6e9;
	margin: 0 15px 0 15px;
	padding: 15px 15px;
}
	.tab-content.is-visible {display: block;}
	.tab-content p {display: block; padding: 15px 0;}
	/*.tab-content a {display: inline-block; max-width: max-content; font-weight: 500; text-decoration: underline; color: #063fb3;}*/
	.tab-content ul {padding: 0 25px; line-height: 20px;}
	
	.tab-ul-big    {list-style: none;}
	.tab-ul-big li {padding: 8px 10px; margin: 5px 0; background: #c0c5cd;}
	hr {height: 2px; border-width: 0; margin: 15px 25px; background-color: #c0c5cd;}
	
/*** WARNING ***/

.warning {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-content: center;
	gap: 15px;
	padding: 0 15px;
	margin: 0 auto;
} .warning h3 {padding: 10px; background: #e4e6e9;}

/*** SOLUTION ***/

.solution {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-content: center;
	gap: 15px;
	padding: 0 15px;
	margin: 0 auto;
} .solution h3 {padding: 10px; background: #e4e6e9;}

	.solution ul {padding: 0 25px; line-height: 20px;}

/*** FOOTER ***/

.copyright {max-width: max-content; padding: 50px 0; margin: 0 auto; text-align: center;}
.copyright b {text-transform: uppercase;}
.copyright p {padding-top: 15px;}

/*** LANGUAGE SWITCHER ***/

.lang {
	position: relative;
	display: flex;
	align-items: center;
	z-index: 100;
	width: 140px;
}

.lang ul {
	position: absolute;
	top: -10px;
	left: 50px;
	list-style-type: none;
	margin: 0;
	padding: 0;
	border: solid 1px #e4e6e9;
	background: #fff;
	overflow: hidden;
}
	
	.lang p {display: block; line-height: 20px; font-size: 13px; font-weight: 500; color: #3d5a7a;}
	
		.lang 		ul li:not(:first-child) {display: none;}
		.lang.open	ul li {display: block;}

		.lang ul li a { display: flex; align-items: center; padding: 10px 10px; text-decoration: none; transition: background-color 0.2s ease;}
		.lang ul li a:hover {background-color: #f8f9fa;}

		.lang ul li img {width: 25px; height: auto; display: block; border-radius: 2px;}
		.lang ul li:first-child {cursor: pointer;}
		.lang a.lang-dropdown::after {content: '▼'; font-size: 10px; color: #6c757d; margin-left: 8px; transition: transform 0.3s ease;}
		.lang.open a.lang-dropdown::after {transform: rotate(180deg);}

/*** FORM ***/

form {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-content: center;
	gap: 15px;
	padding: 50px 15px;
	margin: 0 auto;
}

	fieldset {position: relative; display: block; border: 0; background: #e4e6e9; padding: 45px 15px 10px 15px;}
	legend 	 {position: absolute; display: block; top: 12px; font-weight: 500;}
	fieldset div {display: block; justify-items: center; margin-bottom: 10px;}
	fieldset p 	 {display: block; padding: 15px 0 10px 0; font-weight: 500;}
		
		fieldset label {min-width: 170px; display: inline-block;}
		fieldset input {
			min-width: 250px;
			display: inline-block;
			color: #08274b;
			padding: 8px 12px;
			min-height: 35px;
			border-radius: 3px;
			outline: none;
			border-top: none;
			border-left: none;
			border-right: none;
			border-bottom: solid 3px transparent;
			line-height: 20px;
			box-shadow: 0px 5px 20px -18px;
		}
	
		fieldset input:focus {border-bottom: 3px solid #063fb3;}
		fieldset input:hover {}

	.gdpr {display: flex; flex-wrap: wrap; justify-content: center; align-content: center; align-items: center; gap: 15px;}
	.gdpr a {display: inline-block; font-weight: 500; text-decoration: underline; color: #063fb3;}
	
	.gdpr label {display: block; max-width: 300px;}
	.gdpr input[type="checkbox"] {cursor: pointer; display: block; width: 20px; height: 20px; outline: 0;}
	
/*** SUCCESS ***/

.success {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-content: center;
	align-items: center;
	gap: 15px;
	padding: 50px 15px;
	margin: 0 auto;
}
	
/*** RESPONSIVITY ***/

@media screen and (max-width: 768px) {
	.container{max-width: 768px;}
}

@media screen and (max-width: 715px) {
	article{max-width: 380px;}
	input{width: -webkit-fill-available;}
	labe{min-width: 130px;}
}

@media screen and (max-width: 480px) {
	.container{max-width: 480px;}
	.tab-ul-big {padding: 0 5px !important;}
}
