body{
	font-family: 'Lato', sans-serif;
	margin: 0px;
	padding: 0px;
	display: grid;
	grid-template-areas: 	"banner"
							"nav"
							"reg"
							"foo";
}
.col-3{
	width: 25%;
}

.col-6{
	width: 50%;
}

.col-12{
	width: 100%;
}

.error{
	font-weight: 700;
	color:red;
	margin-top:10px;
	display: none;
	font-size:15px;
}

.selected{
	background: #232362;
	color:white;
}

.selected td{
	color:white;
}

.selected .button-group button{
	color:#182871;
}

/* TOP */

#nav{
	grid-area: nav;
	text-align: center;
}
#nav img{
}

.container {
	width: 1070px;
    margin: 10px auto;
	box-shadow: 0 1rem 3rem rgba(0,0,0,.175)!important;
}

/* LOGO */

.baner-container{
	position: absolute;
    top: 0;
    left: 50%;
	width: 640px;
	height: 100%;
    margin-left: -320px;
    background: red;
}
.baner-logo{
	position: absolute;
	top:0;
	left:0;
	width: 400px !important;
}

#banner
{
	grid-area: banner;
	text-align:center;
}

#banner img{
	width: 1070px;
	margin: 0 auto 0 auto;
}

/* REGISTER */

#register-section{
	grid-area: reg;
}
#register-section .top-container{
	width: 1070px;
	margin: 30px auto;
}
#register-section .top-container h1{
	padding:20px 0;
	background: #b9ded7;
	font-size: 42px;
	letter-spacing: 4px;
	color: black;
	font-family: "VolvoNovum-Regular" !important;
	text-transform: uppercase;
	text-align: center;
}

#register-section .top-container > div{
	display: flex;
	align-items: flex-start;
	justify-content: space-around;
}

#register-section .top-container > div div h2{
	font-size: 30px;
	color: #ffffff;
	font-family: "Neris";
	font-weight: 600;
	background-color: #182871;
	padding:20px 25px;
}
#register-section .top-container > div div p{
	font-size: 18px;
	color: #182871;
	font-family: "Lato";
	text-align: center;
}

/* FORM */

.wrap-registration{
	width: 670px;
	margin: 0 auto;
}
/* .wrap-registration h2{
	padding-left:10px;
	margin:100px 0;
	font-size: 30px;
    color: #182871;
	font-family: "Lato";
	font-weight: 400;
	text-align: center;
	text-transform: uppercase;
} */

#register-section .form-container{
	width: 670px;
	margin: 70px auto;
}
h2{
	font-size: 18px;
    color: #000000;
    font-family: "Lato";
    font-weight: 400;
    display: inline-block;
    margin: 18px 0;
    font-weight: 700;
    border-bottom: 4px solid #b9ded7;

}
#register-section .form-container h3{
	padding-left:10px;
	padding-bottom: 5px;
	margin:0;
	margin-top:30px;
	font-size: 18px;
	color: #000000;
	font-family: "Lato";
	font-weight: 400;
}
.form{
	padding:10px;
	box-sizing: border-box;
}

.form-section{
	display: flex;
	flex-wrap: wrap;
}

/* Checkbox */
.checkbox-group2
{
	display: flex;
    flex-direction: column;
}
.checkbox-group2 label{
	position: relative;
	margin-bottom: 12px;
	padding-left:35px;
	margin-right:35px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	font-size:16px;
	color:#000000;
	font-weight: 700;
	text-align: left;
}
.checkbox-group2 label input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.checkbox-group2 label .checkbox {
	position: absolute;
	top: -2px;
	left: 0;
	height: 25px;
	width: 25px;
	border: 1px solid #484848;
}
.checkbox:after {
	content: "";
	position: absolute;
	display: none;
}
.checkbox-group2 label input:checked ~ .checkbox:after {
	display: block;
}
.checkbox-group2 label .checkbox:after {
	left: 5px;
	top: 5px;
	width: 15px;
	height: 15px;
	background: #000000;
	border-width: 0 3px 3px 0;
}

/* RADIO */

.radio-group{
	margin:20px 10px;
}

.radio-group label{
	position: relative;
	margin-bottom: 12px;
	padding-left:35px;
	margin-right:35px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	font-size:16px;
	color:#000000;
	font-weight: 700;
	text-align: left;
}
.radio-group label input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.radio-group label .checkbox {
	position: absolute;
	top: -2px;
	left: 0;
	height: 25px;
	width: 25px;
	border: 1px solid #484848;
}
.checkbox:after {
	content: "";
	position: absolute;
	display: none;
}
.radio-group label input:checked ~ .checkbox:after {
	display: block;
}
.radio-group label .checkbox:after {
	left: 5px;
	top: 5px;
	width: 15px;
	height: 15px;
	background: #484848;
	border-width: 0 3px 3px 0;
}

/* RADIO TYPE*/

.radio-type-group{
	margin:20px 10px;
}

.radio-type-group label{
	position: relative;
	display: block;
	margin-bottom: 25px;
	padding-left:35px;
	margin-right:35px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	font-size:16px;
	color:#000000;
	text-align: left;
}
.radio-type-group label input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.radio-type-group label .checkbox {
	position: absolute;
	top: -2px;
	left: 0;
	height: 25px;
	width: 25px;
	border: 1px solid #484848;
}
.checkbox:after {
	content: "";
	position: absolute;
	display: none;
}
.radio-type-group label input:checked ~ .checkbox:after {
	display: block;
}
.radio-type-group label .checkbox:after {
	left: 5px;
	top: 5px;
	width: 15px;
	height: 15px;
	background: #484848;
	border-width: 0 3px 3px 0;
}

/* TABLE */
.table-group{
	margin:50px 10px;
}
table tr td{
	width:33.33%
}
table{
	width:100%;
	border-collapse:separate; 
	border-spacing: 0 10px;
}
table thead tr td{
	font-size: 18px;
	color: #000000;
	font-family: "Lato";
	font-weight: 400;
	padding-left:20px;
}
table tbody tr td{
	font-size: 18px;
	color: #000000;
	font-family: "Lato";
	font-weight: 400;
	padding-left:20px;
	border-top: 1px solid black;
	border-bottom: 1px solid black;
}
table tbody tr > td:first-child{
	border-left: 1px solid black;
}
table tbody tr > td:last-child{
	border-right: 1px solid black;
}

/* Checkbox */

.checkbox-group{
	margin:20px 20px;
}

.checkbox-group label{
	display: block;
	position: relative;
	margin-bottom: 25px;
	padding-left:35px;
	margin-right:35px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	text-align: left;
	font-size: 18px;
	color: #000000;
	font-family: "Lato";
	font-weight: 400;
}
.checkbox-group label input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.checkbox-group label .checkbox {
	position: absolute;
	top: -2px;
	left: 0;
	height: 25px;
	width: 25px;
	border: 1px solid #484848;
}
.checkbox:after {
	content: "";
	position: absolute;
	display: none;
}
.checkbox-group label input:checked ~ .checkbox:after {
	display: block;
}
.checkbox-group label .checkbox:after {
	left: 5px;
	top: 5px;
	width: 15px;
	height: 15px;
	background: #484848;
	border-width: 0 3px 3px 0;
}

/* BUTTON */

button:focus{
	outline: none;
}

.button-group{
	display: flex;
	justify-content:flex-end;
	margin:10px;
	box-sizing: border-box;
}
.button-group button{
	cursor: pointer;
	padding: 15px 20px;
	border-radius: 25px;
	background-color: #182871;
	border:0;
	font-size: 18px;
	color: #fefefe;
	font-family: "Lato";
	font-weight: 400;
	text-align: center;
	color:white;
}

.send-button button{
	width: 314px;
	height: 56px;
	border-radius: 28px;
	background-color: #b9ded7;
	margin-top: 30px;
	color: #000000;
}
.send-button a{
	border-radius: 28px;
    background-color: #b9ded7;
    margin-top: 30px;
    color: white;
    padding: 17px 74px;
    font-size: 18px;
    text-decoration: none;
	color: #000000;
}
.button-group .disabled-button{
	cursor:not-allowed;
	color: #fefefe;
	background-color: #cccccc;
}

/* INPUT */

input[type="text"], textarea{
	background: none;
	border:1px solid #939393;
	padding:17px 26px;
	width: 100%;
	box-sizing: border-box;
	font-size: 18px;
	color: #000000;
	font-family: "Lato";
	font-weight: 400;
}
input[type="text"]:focus{
	outline: none;
}

input[type="number"]{
	background: none;
	border:1px solid black;
	padding:17px 26px;
	width: 100%;
	box-sizing: border-box;
	font-size: 18px;
	color: #000000;
	font-family: "Lato";
	font-weight: 400;
}
input[type="number"]:focus{
	outline: none;
}

/* SELECT */

select{
	height: 60px;
	background: none;
	border:1px solid black;
	padding:17px 26px;
	width: 100%;
	box-sizing: border-box;
	font-size: 18px;
	color: #000000;
	font-family: "Lato";
	font-weight: 400;
}
select:focus{
	outline: none;
}

.selectdiv {
	position: relative;
	float: left;
}
.selectdiv:after {
	content: '\f078';
	font: normal normal normal 17px/1 FontAwesome;
	color: white;
	right: 10px;
	top: 10px;
	padding:20px 10px;
	height: 60px;
	background: red;
	position: absolute;
	pointer-events: none;
	box-sizing: border-box;
}

/* IE11 hide native button (thanks Matt!) */
select::-ms-expand {
	display: none;
}

.selectdiv select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	/* Add some styling */

	display: block;
	width: 100%;
	max-width: 320px;
	height: 50px;
	float: right;
	margin: 5px 0px;
	padding: 0px 24px;
	font-size: 16px;
	line-height: 1.75;
	color: #333;
	background-color: #ffffff;
	background-image: none;
	border: 1px solid #0ebeff;
	-ms-word-break: normal;
	word-break: normal;
}


/* PLACEHOLDER */

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
color: black;
}
::-moz-placeholder { /* Firefox 19+ */
color: black;
}
:-ms-input-placeholder { /* IE 10+ */
color: black;
}
:-moz-placeholder { /* Firefox 18- */
color: black;
}

/* Footer */

#footer{
	grid-area: foo;
	width: 100%;
	height: 195px;
	background-color: #182871;
	padding:40px 100px;
	box-sizing: border-box;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
}
.footer-container{
	display: flex;
	justify-content: space-between;
}
.footer-container .right{
	display: flex;
    align-items: center;
}
.footer-container .right ul{
	display: flex;
	flex-direction:row;
	justify-content: space-around;
	list-style-type: none;
	margin: 0;
	padding: 0;
	color:white;
	font-size:24px;
}
.footer-container .right li{
	margin-left:50px;
}
.footer-container .right li a{
	text-decoration: none;
	color:#fefefe;
}
.footer-container .right li a:hover{
	text-decoration: underline;
}

.debug{
	position: fixed;
	top:40px;
	left:40px;
	width:400px;
	height: 800px;
	background: #00000040;
	padding:20px;
}
.debug h3{
	margin:0;
	padding:0;
	font-weight: 500;
}


.select2{
	width:100% !important;
}
.select2-container--default .select2-search--dropdown .select2-search__field
{
	border: none;
    border-bottom: 1px solid #000;
    padding: 19px 30px;
    outline: none;
    font-size: 1rem;
}
.select2-container--default .select2-selection--single{
	color: rgb(36, 36, 36);
    background: rgba(255,255,255,0.5);
    height: 58px;
    padding: 9px 15px;
	border: 1px solid black;
	border-radius: 0;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{
	padding: 5px 13px;
	color: rgb(36, 36, 36);
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 26px;
    position: absolute;
    top: 16px;
    right: 1px;
    color: black;
    width: 15px;
}

.select2-container--open .select2-dropdown--below
{
	border:1px solid black;
	border-radius: 0;
	top: -58px;
}
.select2-container--default .select2-results__option--highlighted[aria-selected]
{
	background-color: #182871;
}
.select2-results__option
{
	padding: 10px 20px;
    font-size: 1rem;
}
.select2-search--dropdown
{
	padding: 0;
}

.col-lg-6
{
	width: 50%;
	float: left;
	min-height: 200px;
}

.form-section input[type="file"] {
    display: none;
}

.form-section .custom-file-upload {
    display: inline-block;
    padding: 20px;
    height: 26px;
    margin: 20px auto;
    line-height: 28px;
    font-size: 1.7rem;
    font-weight: 700;
    background-color: #68b5a6;
	color: #fff;
    /* font-family: 'Geomanist-Black', sans-serif; */
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
}

.product img {
	max-width: 100%;
}

.product {
	background: #f6f6f6;
    border-radius: 5px;
    padding: 10px;
    margin: 5px;
    box-sizing: border-box;
	font-size: 12px;
}
.product:hover {
	background: #e9e9e9;
	cursor: pointer;
}

.katalog {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	margin: -5px;
}

.product .desc h3 {
	margin: 0 !important;
    padding: 0 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    margin-top: 5px !important;
}

.katalog .active,
.katalog .active h3 {
	background: #68b5a6;
	color: white !important;
}

.dodatkowe-disabled {
	opacity: 0.5;
}

.dodatkowe-disabled .form {
	display: none;
}

.dodatkowe-disabled .product:hover {
	cursor:not-allowed;
}