
/* BASICS */
*{margin:0; padding:0; border:0; outline:none; -webkit-text-size-adjust: none;}
html, input, textarea, button {font-family:Arial, sans-serif;}
a{text-decoration:none; color:inherit;}
a img {border:none;}


.epuzzle{margin:20px auto; width:940px; position:relative;}

.epuzzle .intro{width:340px; height:150px; padding-left:70px; padding-bottom:60px; position:relative; list-style:none;}
.epuzzle .intro:before{content:''; background:url(../../media/icon/flags.png?t=20250919) no-repeat 0 0; position:absolute; left:0; top:0; width:60px; height:30px;}
.epuzzle .intro li{display:none;}
.epuzzle .intro li:first-child{display:block;}
.epuzzle .intro h2{font-size:14px; /*height:40px;*/ line-height:1.5; margin-bottom: 1em;}
.epuzzle .intro li:last-child h2{color:#961734;}
.epuzzle .intro p, .epuzzle .intro strong{font-size:12px; padding-bottom:5px; line-height:18px;}

.epuzzle > .congratulation{font-size:24px; opacity:0; color:#fff600; background:url(../../media/icon/smile.png) no-repeat 50% 0; display:block; width:470px; text-align:center; padding-top:130px; position:absolute; left:0; top:120px; transition:all 1s; -webkit-transition:all 1s;}
.epuzzle > .congratulation.on{opacity:1; z-index:1;}
.epuzzle > .congratulation span{font-size:14px; display:block; cursor:pointer; text-align:center; width:130px; margin:0 auto; background:#fff600; color:#184298; border-radius:3px; padding:7px 0; margin-top:10px; transition:all 0.3s; -webkit-transition:all 0.3s;}
.epuzzle > .congratulation span:hover{background:#184298; color:#fff600;}


.epuzzle .info{list-style:none; display:block; opacity:0; position:absolute; background:#ececec; top:430px; width:938px; height:200px; border:#ccc 1px solid; transition:all 0.3s ease 0.3s; -webkit-transition:all 0.3s ease 0.3s;}
.epuzzle .info.on{opacity:1; transition:all 0.3s; -webkit-transition:all 0.3s;}
.epuzzle .info > li{padding:15px; position:absolute; top:0; left:0; font-size:12px; opacity:0; transition:all 0.3s; -webkit-transition:all 0.3s;}
.epuzzle .info > li.on{opacity:1;}
.epuzzle .info > li:before{content:''; background:url(../../media/icon/flags.png?t=20250919) no-repeat 0 0; background-position:inherit; color:#fff; width:60px; height:30px; position:absolute; top:-1px; left:-1px;}
.epuzzle .info > li:first-child{display:block;}
.epuzzle .info > li h3{font-size:14px; line-height:20px; padding-bottom:5px; padding-left:100px;}

.epuzzle .info > li ul{list-style:none; font-size:0;}
.epuzzle .info > li ul li{display:inline-block; width:50%; font-size:12px; line-height:17px; height:17px; vertical-align:top; padding-bottom:5px;}
.epuzzle .info > li ul li span{display:inline-block; width:320px; vertical-align:top;}
.epuzzle .info > li ul li span:first-child{width:100px; color:#666;}


.epuzzle .field{position:relative; list-style:none; height:420px; width:inherit; background:url(../../media/image/puzzle_bg.svg) no-repeat 0 0; margin:10px 0; overflow:hidden;}
.epuzzle .field li{background:url(../../media/icon/states_europe.svg) no-repeat 0 0; position:absolute; cursor:pointer; display:block; transition:all 0.3s; -webkit-transition:all 0.3s;}
.epuzzle .field li.on{transition:none; -webkit-transition:none; z-index:1;}
.epuzzle .field li.off{cursor:auto;}

.epuzzle > p{font-size:12px; padding:15px 0 20px 140px; line-height:20px; color:#666; background:url(../../media/icon/bpb.svg) no-repeat 0 0;}

.epuzzle .footer {margin-top: 60px;}
.epuzzle .footer a {text-decoration: underline;}
.epuzzle .footer > div {margin-bottom: 20px;}
.epuzzle .footer h2 {font-size: 14px; line-height: 1.5; margin-bottom: 1em;}
.epuzzle .footer p, .epuzzle .footer li {font-size: 12px; padding-bottom: 5px;}
.epuzzle .references > ul {list-style-type: none}