 /* make all the widths the full final width */
* {box-sizing: border-box;}

body {
    margin:0;
    background-image: url("budapest_highquality_0.5opacity.jpg");
    background-position: bottom left;
    background-size:cover;
    background-attachment: fixed;
}

@media screen and (max-width: 600px){
    body { background-image: none;}
}

p{text-align: left;}


/* goes to any nav_item element that is a descendant from navbar */  
.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position:relative;
}
.nav_item { 
    margin: 10px;
    padding: 5px;
    text-align: center;
    font-size: 18px;
    width:200px;
}
a {
    color:black;
    text-decoration: none;
}
@media screen and (max-width: 600px){
    .navbar{flex-direction: column;}
}

@media screen and (min-width: 600px){
    .show_small{display:none;}
}

@media screen and (max-width: 600px){
    .show_big{display:none;}
}

.login_row {
    display: flex;
    justify-content: center;
    align-items: center;
    position:relative;
    top:60px;
}
.login_item { 
    width: 250px;
    height: 350px;
    margin: 10px;
    text-align: center;
    font-size: 15px;
    border-radius: 5px;
}

@media screen and (max-width: 600px){
    .login_row{flex-direction: column;top:0px;}
}


.city_item{
    position: absolute;
    top: 100px;
    left: 50%;
    transform: translate(-50%);
    width: 500px;
    margin: auto;
    text-align: center;
    font-size: 20px;
    z-index:1;
}
@media screen and (max-width: 600px){
    .city_item{position: static;transform:none;width:250px}
}


.side_row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position:relative;
}
.side_item { 
    width: 400px;
    min-height: 400px;
    text-align: center;
    font-size: 15px;
    border-radius: 5px;
}
@media screen and (max-width: 600px){
    .side_row{flex-direction: column;top:80px;}
    .side_item{width:300px;min-height:350px;}
}

.footer_row{
    display:flex;
    justify-content: center;
    align-items: center;
    position:absolute;
    bottom:0;
    width:100%;
}
.footer_item{
    padding:10px;
    text-align: center;
    font-size:20px;
}
@media screen and (max-width: 600px){
    .footer_row{flex-direction:column; position:relative; top:200px;}
}

.errMsg{
    color:red;
}

.errBorder{
    border:2px solid red;
}

.the_box{
    background-position: center;
    background-size: cover;
    display:none;
    visibility: hidden;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-direction: column;
    height: 400px;
    width: 600px;
    border-radius: 5px;
    left:50%;
    transform:translate(-50%);
    top:150px;
    position:absolute;
    font-size:50px;
    animation-name: OPAC;
    animation-timing-function: cubic-bezier(1,0,1,0);
    animation-duration: 4s;
    opacity:0;
    z-index:2;
}
  
@keyframes OPAC {
    from {opacity: 1;visibility: visible;}
    to {opacity: 0;visibility: hidden;}
}

@media screen and (max-width: 600px){
    .the_box{width:325px}
}

table{
    margin:auto;
}

.give_up_item{
    position: relative;
    top: 300px;
    left: 50%;
    transform: translate(-50%);
    text-align: center;
    font-size: 50px;
    z-index:1;
}

@media screen and (max-width: 600px){
    .give_up_item{top:auto;}
}
    
@media screen and (max-width: 600px){
    .city_item{position: static;transform:none;width:250px}
}

.small{
    font-size:20px;
}