@font-face {
    font-family: 'fontello';
    src: url('/fonts/fontello.eot?v=3');
    src: url('/fonts/fontello.eot?v=3#iefix') format('embedded-opentype'),
         url('/fonts/fontello.woff2?v=3') format('woff2'),
         url('/fonts/fontello.woff?v=3') format('woff'),
         url('/fonts/fontello.ttf?v=3') format('truetype'),
         url('/fonts/fontello.svg?v=3#fontello') format('svg');
    font-weight: normal;
    font-style: normal;
}
@keyframes slide{
    0% {left: -100%}
    100% {left: 0}
}
@keyframes slideback{
    0% {left: 0}
    100% {left: -100%}
}
a{
    color: #6e6f74;
}
.alert{
    position: absolute;
    margin: 0 10%;
    width: 80%;
    top: calc(50% - 150px);
    box-sizing: border-box;
    background-color: #dfdfdf;
    padding: 10px;
    box-shadow: 1px 3px 16px #a9a9a9;
    border-radius: 5px;
}
.alert .buttonarea .btn{
    background-color: #3f9d0f;
}
.alert .text{
    font-size: 16px;
}
.alert .title{
    background-color: #555555;
    padding: 10px;
    margin: -10px -10px 10px;
    color: #fff;
    font-weight: bold;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    font-size: 18px;
    text-align: center;
}
.alert.ko .btn{
    background-color: #751c1c;
    color: #fff;
}
.avatar{
    padding: 20px;
    color: #FFF;
    font-size: 24px;
    text-align: center;
}
.avatar .icons{margin-right: 10px;}
b{color: #55402c}
#black{
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 999;
    background-color: #ffffffc2;
    display: none;
}
#black.show{
    display: block;
}
.bold{font-weight: bold}
.btn{
	display: inline-block;
    padding: 10px 20px;
    background-color: #258900;
    margin: 20px 10px 10px 10px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 100%;
    color: #ffffff;
    font-weight: bold;
}
.btn.red{
    background-color: #cd0000;
}
.buttonarea{
    text-align: center;
    margin: 10px;
}
.buttonarea .btn{
    padding: 10px 10px 12px;
    background-color: #6e6f74;
    display: inline-block;
    border-radius: 10px;
    min-width: 198px;
    text-align: center;
    cursor: pointer;
    margin: 5px;
    color: #eee;
    text-transform: uppercase;
    font-weight: normal;
    font-size: 20px;
}
.buttonarea .btn.disabled{
    opacity: 40%;
}
.buttonarea .btn.green{
    background-color: #68a34f;
}
.cell{
    display: table-cell;
    vertical-align: middle;
}
.center{text-align: center}
.city{
    text-align: center;
    font-size: 140%;
    background-color: #babf9d;
    margin: 20px;
}
.city a{
    display: block;
    padding: 10px;
    text-decoration: none;
    color: #0a532b;
}
.citybtn {
    margin: 15px 0;
}
.citybtn a{
    display: inline-block;
    padding: 4px 10px 6px;
    background-color: #bed990;
    text-decoration: none;
    border-radius: 8px;
    min-width: 140px;
    color: #111;
}
.citymap iframe{
    width: 100%;
    height: 450px;
    border-radius: 20px;
    border: none!important;
    outline: none!important;
}
.content{
    flex: 1;
}
.gm-style iframe + div{
    border: none!important;
    outline: none!important;
}
.copyright{
    text-align: center;
    font-size: 14px;
    color: #3b3b3b;
    padding: 18px 0;
    font-weight: bold;
    background-color: #ebdbb9;
    border-top: 1px solid #d2c0a2;
}
.copyright img{
    width: 70%;
}
.copyright .txtcopyright{
    font-size: 11px;
    font-weight: normal;
    margin-bottom: 12px;
}
.description{
    font-size: 20px;
    line-height: 30px;
    text-align: center;
    padding: 10px;
    background-color: #e7c69091;
    margin: 0 8px 20px 8px;
    border-radius: 4px;
}
.error{
    padding: 10px;
    font-size: 12px;
    font-weight: bold;
    color: #c30000;
    margin-bottom: 5px;
}
.feedbacksent{
    padding: 6px;
    font-size: 14px;
    margin-bottom: 20px;
}
.forminput{
    padding: 10px;
}
.forminput input{
    width: 96%;
    box-sizing: border-box;
    padding: 10px 15px;
    font-size: 16px;
    outline: none;
    margin: 10px;
    border-radius: 8px;
    border: 1px solid #cfcfcf;
    font-family: "Barlow Semi Condensed", sans-serif;
}
.forminput input::placeholder{
    color: #dddddd;
}
.forminput input[type=checkbox]{
    width: 20px;
    height: 30px;
    display: inline-block;
    position: relative;
    top: 10px;
}
.forminput input[type=submit]{
    background-color: #6e6f74;
    text-transform: uppercase;
    color: #ffffff;
    font-size: 22px;
    border: 0;
    cursor: pointer;
    width: 70%;
}
.forminput select{
    width: 98%;
    box-sizing: border-box;
    padding: 10px 15px;
    font-size: 16px;
    outline: none;
    margin: 10px;
    border-radius: 8px;
    border: 1px solid #cfcfcf;
}
h1, h3{
    text-align: center;
    font-size: 28px;
    color: #5e442a;
    padding: 4px;
    margin: 12px 8px;
    font-weight: normal;
    border: none;
    text-transform: uppercase;
    background-color: #d2c0a2;
    border-radius: 3px;
}
h2{
    text-align: center;
    font-size: 20px;
    color: #9d581b;
    border-bottom: 1px solid;
    padding: 10px;
    margin: 0 0 20px 0;
}
#header{
    width: 100%;
    height: 56px;
    background-color: #6e6f74;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    min-width: 350px;
}
#header .cityname{
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    width: 160px;
    text-align: center;
    height: 56px;
    color: #fff;
    line-height: 54px;
    font-size: 24px;
}
#header .logo{
    background-image: url(/img/logoh2.png);
    height: 56px;
    width: 300px;
    background-size: contain;
    display: block;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    position: absolute;
    background-repeat: no-repeat;
}
#header .logocontainer{
    height: 56px;
    width: 100%;
}
#header.city .logo{
    right: auto;
    margin-left: 5px;
}
#header #menubtn{
    font-family: 'fontello', serif;
    display: inline-block;
    position: absolute;
    top: 14px;
    right: 20px;
    color: #b3b3b3;
    font-weight: bold;
    font-size: 24px;
    padding: 2px 4px;
    cursor: pointer;
}
.hide{display: none!important}
html,body{
	margin:0;
	padding:0;
	width:100%;
	height:100%;
    background-color: #ebdbb9;
    font-family: "Barlow Semi Condensed", sans-serif;
	font-size: 16px;
    -webkit-user-select: none;      
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color:  rgba(255, 255, 255, 0); 
    min-width: 350px;
    display: flex;
    flex-direction: column;
}
.icons{
    font-family: 'fontello';
}
.langs{
    text-align: center;
    margin: 20px;
}
.langs a{
    padding: 3px 10px 5px;
    background: #e3d1ac;
    border-radius: 10px;
    text-decoration: none;
    color: #575757;
    margin: 5px;
}
.langs a.sel{
    background: #abaa6d;
    color: #fff;
}
.line{
    color: #007EC6;
    border-bottom: 1px solid;
    padding: 10px;
}
#menu{
    background-color: #818181;
    width: 100%;
    height: calc(100% - 56px);
    padding: 10px;
    box-sizing: border-box;
    position: fixed;
    top: 56px;
    left: -100%;
    z-index: 999;
}
#menu.opened{
    animation: slide 200ms forwards;
}
#menu.closed{
    animation: slideback 200ms forwards;
}
#menu ul{
    list-style-type: none;
    margin: 0;
    padding: 0;
    border-top: 1px solid #adadad7a;
}
#menu ul li{
    border-bottom: 1px solid #adadad7a;
}
#menu ul li a{
    color: #d3d3d3;
    text-decoration: none;
    display: block;
    padding: 20px;
    text-align: center;
    font-size: 20px;
}
.mission .missions .index{
    margin: 20px 0;
}
.missions{
    margin: 8px;
}
.missions .c2{
    text-align: center;
    width: 24px;
}
.missions .c2 .icons{
    color: #2590b9;
    line-height: 18px;
    display: inline-block;
    margin: 0;
    font-size: 18px;
}
.missions .c3{
    padding-left: 6px;
}
.missions .icons{
    margin-right: 10px;
    color: #635f48;
    margin-left: 4px;
    font-size: 22px;
}
.missions .index{
    font-size: 12px;
    padding: 5px;
    margin-bottom: 20px;
    background-color: #cfb18c;
    border-radius: 4px;
    display: table;
    width: 100%;
    box-sizing: border-box;
    color: #3b3b3b;
}
.missions .index .ball{
    width: 10px;
    height: 10px;
    background-color: #cd0000;
    display: inline-block;
    margin-right: 3px;
    margin-left: 15px;
    border-radius: 6px;
}
.missions .index .ball.green{background-color: #05ab07}
.missions .index .ball.yellow{background-color: #ffb900}
.missions .index .indexarea{
    display: table-cell;
    vertical-align: middle;
}
.missions .mission{
    background-color: #f5f0e0;
    border-radius: 10px;
    color: #303030;
    font-size: 14px;
    margin-bottom: 12px;
    position: relative;
    padding: 10px 56px 10px 10px;
}
.missions .mission.done{
    opacity: 0.2;
}
.missions .mission.theme1{
    background-color: #bdc900;
    color: #ffffff;
}
.missions .mission.theme1 .icons{color: #e8f14f}
.missions .mission.theme1 .gobtn{color: #7d8313}
.missions .mission.theme1 .points{color: #fff}
.missions .mission.theme2{
    background-color: #33b7e9;
    color: #fff;
}
.missions .mission.theme2 .icons{color: #a3e5ff}
.missions .mission.theme2 .gobtn{color: #087093}
.missions .mission.theme2 .points{color: #fff}
.missions .mission.theme3{
    background-color: #f26530;
    color: #fff;
}
.missions .mission.theme3 .icons{color: #ffb092}
.missions .mission.theme3 .gobtn{color: #a53207}
.missions .mission.theme3 .points{color: #fff}
.missions .mission.disabled{
    opacity: 0.4;
    pointer-events: none;
}
.missions .mission.theme4{
    background-color: #d53c85;
    color: #fff;
}
.missions .mission.theme4 .icons{color: #df78aa}
.missions .mission.theme4 .gobtn{color: #9b074e}
.missions .mission.theme4 .points{color: #fff}
.missions .mission .gobtn{
    position: absolute;
    width: 50px;
    display: inline-block;
    right: 0;
    top: 0;
    bottom: 0;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    text-align: center;
    line-height: 38px;
    font-size: 36px;
    color: #bfc5c7;
    cursor: pointer;
}
.missions .mission .idm{
    padding: 6px 6px;
    font-size: 14px;
    background-color: #cd0000;
    border-radius: 25px;
    color: #fff;
    font-weight: bold;
    margin-right: 10px;
    display: inline-block;
    min-width: 18px;
    text-align: center;
}
.missions .mission .idm.ok{
    background-color: #05ab07;
}
.missions .mission .idm.wait{
    background-color: #ffb900;
}
.missions .mission .points{
    margin-left: 5px;
    font-size: 12px;
    font-weight: bold;
    color: #2590b9;
}
.mt10{margin-top: 10px;}
.nounderl{
    text-decoration: none;
}
.page{
    padding: 56px 0 10px 0;
}
.page.city h1{
    text-align: center;
    font-size: 38px;
    color: #6c2b0d;
    border-bottom: none;
    padding: 0 18px;
    margin: 0 0 20px 0;
    font-weight: normal;
    text-transform: uppercase;
}
.page.city h2{
    text-align: center;
    font-size: 20px;
    color: #3b3b3b;
    border-bottom: none;
    padding: 10px;
    margin: 0;
    font-weight: normal;
}
.page .city{
    padding: 4px;
}
.page.main h2{
    text-align: center;
    font-size: 20px;
    color: #3b3b3b;
    padding: 2px;
    margin: 0 0 15px 0;
    font-weight: normal;
    border: none;
}
.page.main .logo{
    margin-top: 50px;
}
.page.main .logo img{
    width: 56%;
}
.page.mission h2{
    border: none;
    font-weight: normal;
    padding: 0 10px;
    font-size: 18px;
}
.page.mission h3{
    font-size: 24px;
    margin-bottom: 4px;
}
.page.mission .sticker img{
    max-width: 180px;
}
.page.passport .pages{
    margin-top: 10px;
}
.page.passport .passpage{
    width: 100%;
    aspect-ratio: 896 / 1155;
    background-image: url(/img/passport/passport.jpg);
    height: auto;
    background-size: contain;
    background-repeat: no-repeat;
    border-top: 1px solid #644e38;
    border-bottom: 1px solid #644e38;
    padding-top: 5%;
    padding-left: 7%;
    box-sizing: border-box;
}
.page.passport .stamp{
    margin: 2.4% 2.8% 0;
    width: 39%;
    display: inline-block;
}
.page.passport .stamp img{width: 100%}
.page.scanqr .buttons, .page.takephoto .buttons{
    text-align: center;
}
.page.route img.logo{
    width: 100%;
    box-shadow: 4px 4px 4px #cdbd8e;
    margin-bottom: 2px;
}
.page.sticker h1{
    border: none;
    text-transform: uppercase;
    margin: 20px 10px 0;
    font-size: 24px;
}
.page.sticker h2{
    border: none;
    font-weight: normal;
    background-color: #feffe3;
    border-radius: 9px;
}
.page.sticker h2.ok{
    background-color: #e4ffb6;
}
.page.sticker h3{font-size: 20px;}

.page.takephoto #phototaked{
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}
.page.takephoto #takephotopreview{
    width: 80%;
}
.page .details{
    font-size: 14px;
    padding: 10px;
}
.page .details .ptrewards, .stickersowned{
    text-align: center;
    font-size: 22px;
    text-transform: uppercase;
}
.pcdevice{
    padding: 120px 10px;
    text-align: center;
    font-size: 20px;
}
.quiz{
    margin-bottom: 20px;
}
.quiz .answer{
    padding: 10px 30px;
}
.quiz .answer .c1{
    display: table-cell;
    padding: 5px 10px;
    vertical-align: top;
    max-width: 22px;
}
.quiz .answer .c2{
    display: table-cell;
    vertical-align: top;
}
.quiz .answer label{
    font-size: 20px;
    vertical-align: middle;
    color: #2f2f2f;
}
.quiz .question{
    padding: 10px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    color: #444;
    line-height: 26px;
}
.routes{
    margin: 20px 0;
}
.routes .route{
    width: 100%;
    margin-bottom: 10px;
    box-shadow: 4px 4px 4px #cdbd8e;
}
.sticker img{width: 100%;}
.sticker.locked img{
    opacity: 0.2;
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    filter: grayscale(100%);
}
.stickers{
    text-align: center;
}
.submitarea{
    margin: 20px 0;
    text-align: center;
}
.submitarea .backbutton{
    padding: 12px 20px;
    background-color: #a6c138;
    display: inline-block;
    color: #fff;
    border-radius: 8px;
    cursor: pointer;
}
.submitarea .submit{
    padding: 12px 20px;
    background-color: #38c146;
    display: inline-block;
    color: #fff;
    border-radius: 8px;
    cursor: pointer;
}
.submitarea .submit.disabled{
    background-color: #d7d7d7;
}
.success{
    background-color: #d7c7a5;
    font-size: 23px;
    font-weight: bold;
    color: #088500;
    text-align: center;
    padding: 10px;
    border-radius: 10px;
    min-height: 32px;
    text-transform: uppercase;
    margin: 20px 20px 30px;
}
.success .icons{color: #077000}
.tac{text-align: center}
.textcontent{
    padding: 10px;
    font-size: 18px;
    line-height: 24px;
    text-align: justify;
}
.theme{
    text-align: center;
    margin: 15px 0 0;
}
.theme .icontheme img{
    max-width: 70px;
}
.theme .themetxt{
    text-transform: uppercase;
    font-size: 20px;
}
textarea.feedback{
    width: 96%;
    margin: 0 2%;
    height: 200px;
    box-sizing: border-box;
    border: 1px solid #007ec6;
    padding: 6px;
    font-size: 16px;
}
.waiting{
    background-color: #fb8e0d;
    font-size: 14px;
    font-weight: bold;
    color: #47220b;
    text-align: center;
    padding: 10px;
    border-radius: 4px;
    min-height: 32px;
}
.waiting .ic