/* default
-------------------------------------------------------------------------------*/
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
}									
article, aside, figure, footer, header, hgroup, nav, section {display: block;}
/* Responsive images and other embedded objects
   Note: keeping IMG here will cause problems if you're using foreground images as sprites, like, say for Google Maps custom placemarkers. 
   There has been a report of problems with standard Google maps as well, but we haven't been able to duplicate or diagnose the issue. */
img,
object,
embed {width: 100%; height:auto}
/* force a vertical scrollbar to prevent a jumpy page */
html {overflow-y: scroll;}
/* we use a lot of ULs that aren't bulleted. 
	don't forget to restore the bullets within content. */
ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, 
blockquote:after, 
q:before, 
q:after {content: ''; content: none;}
a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; color:#6BBBAF; text-decoration:none; transition: all .4s; -moz-transition: all .4s; -webkit-transition: all .4s; -o-transition: all .4s; }
a:hover{ color: #A5D6CE; text-decoration:none}
del {text-decoration: line-through;}
abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}
/* tables still need cellspacing="0" in the markup */
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}
h1,h2,h3,h4,h5,h6{ font-weight:400}
hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}
input, select {vertical-align: middle;}
pre {
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}
input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom; *vertical-align: baseline;}
.ie6 input {vertical-align: text-bottom;}
select, input, textarea {font: 99% sans-serif;}
table {font-size: inherit; font: 100%;}
 
/* Accessible focus treatment
	people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active {outline: none;}
small {font-size: 85%;}
strong, th {font-weight: bold;}
td, td img {vertical-align: top;} 
/* Make sure sup and sub don't screw with your line-heights
	gist.github.com/413930 */
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}
/* standardize any monospaced elements */
pre, code, kbd, samp {font-family: monospace, sans-serif;}
/* hand cursor on clickable elements */
.clickable,
label, 
input[type=button], 
input[type=submit], 
button {cursor: pointer;}
/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {margin: 0;}
/* make buttons play nice in IE */
button {width: auto; overflow: visible;}
 
/* scale images in IE7 more attractively */
.ie7 img {-ms-interpolation-mode: bicubic;}
/* prevent BG image flicker upon hover */
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
/* let's clear some floats */
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }  
.clearfix:after { clear: both; }  
.clearfix { zoom: 1; }  
.clear { clear: both; }
.hide { display: none !important; }
.push-right { float: right; }
.push-left { float: left; }
img { display: block; }
.left { float: left; }
.right { float: right; }

.help { position: absolute; top: -40px; left: 10px; display: none; border: 1px solid #000; padding: 0; background: #FFF; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }
.help .help-inner { position: relative; display: block; background: #FFF; border: 1px solid #CCC; font-size: 14px; font-weight: 400; color: #C00; text-transform: uppercase; padding: 2px 6px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; overflow: hidden; }
.help:after, .help:before {
	top: 100%;
	left: 12%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	margin-top: -1px;
}

.help:after {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #ffffff;
	border-width: 10px;
	margin-left: -10px;
}
.help:before {
	border-color: rgba(0, 0, 0, 0);
	border-top-color: #000;
	border-width: 11px;
	margin-left: -11px;
}

.help.reverse { top: 55px; left: -20px; right: auto; }
.help.reverse:after, .help.reverse:before { bottom: 100%; left: 12%; top: auto; margin-bottom: -1px; }
.help.reverse:after { border-bottom-color: #ffffff; border-top: none; }
.help.reverse:before { border-bottom-color: #000; border-top: none; }


/*** site styles ***/

BODY { font-family: "futura-pt", sans-serif; font-weight: 300; font-size: 16px; color: #000; background: #bed6d9 url(../images/background.png) center center; }
BODY.home { background: #00536b; }
BODY.build { background-position: left top; }

.site { position: relative; display: block; width: 100%; padding: 61px 0 0; overflow: hidden; }
.build .site { padding-bottom: 131px; }

#header-wrapper { position: fixed; top: 0; left: 0; display: block; width: 100%; padding: 0 20px; border-bottom: 1px solid #000; background: #00536b url(../images/bg-snowflakes-left.png) left top no-repeat; box-sizing: border-box; -moz-box-sizing: border-box; z-index: 99999; }
#header { position: relative; display: block; width: 100%; height: 60px; z-index: 10; }

#header .logo { position: relative; display: block; height: 39px; margin: 0; padding: 14px 0 0; float: left; transition: all .4s; -moz-transition: all .4s; -webkit-transition: all .4s; -o-transition: all .4s; z-index: 10; }
#header .logo a { display: inline-block; height: 100%; }
#header .logo img { position: relative; display: block; width: auto; height: 100%; margin: 0 auto; transition: all .4s; -moz-transition: all .4s; -webkit-transition: all .4s; -o-transition: all .4s; }
#header .logo h2 { text-indent: -9999px; overflow: hidden; font-size: 1px; border: none; line-height: 1; height: auto; margin: 0; padding: 0; }

#header .main-menu { position: relative; }
#header .menu { float: right; padding: 15px 0 0; }
#header .menu ul { margin: 0; padding: 0; }
#header .menu li { position: relative; margin: 0; padding: 0 0 0 30px; float: left; color: #FFF; font-size: 22px; text-transform: lowercase; }
#header .menu li:first-child { padding-left: 0; }
#header .menu li.sep { padding-left: 25px; }
#header .menu a { display: block; color: #FFF; }
#header .menu a.save { font-weight: 500; }
#header .menu a:hover, #header .menu a.active { color: #5a949f; }
#header .menu li.share ul { float: right; padding-top: 5px; }
#header .menu li.share li { padding-left: 10px; }

#header-wrapper .snowflake { position: absolute; top: 0; right: 0; display: block; width: 46px; height: 42px; background: url(../images/bg-snowflakes-right.png) no-repeat; z-index: 1; }

.card-title { position: relative; display: block; width: 100%; text-align: center; padding: 5px 10px; box-sizing: border-box; -moz-box-sizing: border-box; z-index: 999; background: #00536b; color: #00536b; transition: all .4s; -moz-transition: all .4s; -webkit-transition: all .4s; -o-transition: all .4s; }
.card-title.show { color: #333; background: #FFF; -webkit-box-shadow: 0 3px 5px -3px rgba(0,0,0,0.75); -moz-box-shadow: 0 3px 5px -3px rgba(0,0,0,0.75); box-shadow: 0 3px 5px -3px rgba(0,0,0,0.75); }
.card-title h1 { font-size: 22px; margin: 0; padding: 0; line-height: 1; font-weight: 300; cursor: default; }


.card-wrapper { position: relative; display: block; width: 100%; background: #00536b; }
.content-wrapper { position: relative; display: block; width: 100%; max-width: 1200px; margin: 0 auto; box-sizing: border-box; -moz-box-sizing: border-box; }
.content-wrapper.card { width: 1400px; max-width: none; opacity: 0; }
.thumbnail .content-wrapper.card { opacity: 1; }
.card .content-wrapper.card { padding-bottom: 160px; }
.card .content-wrapper.card.show { padding-bottom: 0; }
.content-wrapper .title { position: absolute; bottom: 70px; left: 0; display: block; width: 100%; opacity: 0; z-index: 9999; }
.content { position: relative; display: block; width: 100%; padding: 20px 20px 50px; background: #FFF; overflow: hidden; box-sizing: border-box; -moz-box-sizing: border-box; }
.home .content { background: #00536b; color: #FFF; font-size: 26px; text-align: center; padding-top: 50px; font-family: "sofia-pro", sans-serif; font-weight: 200; }
.content-wrapper.card .content { padding: 0; }

.content .background { position: relative; display: block; width: 100%; height: 900px; z-index: 1; background: #5c949e; background: -moz-linear-gradient(top, #5c949e 0%, #d9e9e8 100%); background: -webkit-linear-gradient(top, #5c949e 0%,#d9e9e8 100%); background: linear-gradient(to bottom, #5c949e 0%,#d9e9e8 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5c949e', endColorstr='#d9e9e8',GradientType=0 ); }
.content .background .background-1 { position: absolute; bottom: 0; left: 0; display: block; width: 100%; height: 242px; z-index: 2; background: #fff; }
.content .background .background-2 { position: absolute; top: 50%; left: 0; display: block; width: 100%; height: 454px; margin: -227px 0 0; z-index: 3; text-align: center; }
.content .background .background-2 img { width: auto; height: 100%; margin: 0 auto; }
.content .background .background-2 span { display: none; }
.content .trash-can { position: absolute; top: 5px; right: 10px; display: block; width: 30px; z-index: 5; opacity: 0; }
.content .trash-can .over { position: absolute; bottom: 0; left: 0; display: none; }

.content .cover-elements { position: absolute; top: 0; left: 0; display: block; width: 100%; z-index: 9997; }
.content .cover { position: absolute; top: 0; left: 0; display: block; width: 100%; z-index: 9998; }
.content .play { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; z-index: 9999; text-align: center; }
.content .play a { position: relative; top: 50%; display: inline-block; color: #FFF; font-size: 100px; margin-top: -50px; }
.content .play a:hover { color: #000; }

.object { position: absolute; display: block; min-width: 10px; min-height: 10px; z-index: 999; transition: box-shadow .4s, opacity .4s; -moz-transition: box-shadow .4s, opacity .4s; -webkit-transition: box-shadow .4s, opacity .4s; -o-transition: box-shadow .4s, opacity .4s; overflow: hidden; }
.build .object { cursor: pointer; /*padding: 1px;*/ box-sizing: border-box; -moz-box-sizing: border-box; }
.build .object:hover { padding: 0; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; overflow: visible; }
.build .object.resized:hover { background: #10CFEA; }

.build .object .object-inner { position: relative; display: block; }
.build .object .object-inner:hover { border: 1px dashed #000; -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.7); -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.7); box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.7); }

.build .object.box-resize { overflow: hidden; }
.build .object.box-resize:hover { border: 1px dashed #000; -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.7); -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.7); box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.7); }
.build .object.box-resize .object-inner { position: static; }
.build .object.box-resize .object-inner:hover { border: none; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; }

.object.trash img { opacity: .5; }
.object img { width: auto; height: auto; z-index: 5; }
.thumbnail .object img { width: 100%; height: 100%; }

.object .resize { position: absolute; display: none; width: 8px; height: 8px; background: #FFF; border: 1px solid #000; opacity: 0; cursor: pointer; transition: opacity .4s; -moz-transition: opacity .4s; -webkit-transition: opacity .4s; -o-transition: opacity .4s; z-index: 10; }
.object .resize.n { top: -1px; left: 50%; margin-left: -4px; }
.object .resize.ne { top: -1px; right: -1px; }
.object .resize.e { top: 50%; right: -1px; margin-top: -4px; }
.object .resize.se { bottom: -1px; right: -1px; }
.object .resize.s { bottom: -1px; left: 50%; margin-left: -4px; }
.object .resize.sw { bottom: -1px; left: -1px; }
.object .resize.w { top: 50%; left: -1px; margin-top: -4px; }
.object .resize.nw { top: -1px; left: -1px; }
.object:hover .resize { display: block; opacity: .6; }
.object .resize:hover { opacity: 1; }

.object .rotate, .object .reflect { position: absolute; top: 50%; left: 50%; display: none; width: 20px; height: 20px; font-size: 20px; background: #FFF; border: 1px solid #000; opacity: 0; padding: 2px; margin: -11px 0 0 -11px; cursor: pointer; transition: opacity .4s; -moz-transition: opacity .4s; -webkit-transition: opacity .4s; -o-transition: opacity .4s; z-index: 10; }
.object.box-reflect .reflect { background: #FFF url(../images/reflect.svg) center center no-repeat; background-size: 80%; auto; }
.object.box-rotate:hover .rotate, .object.box-reflect:hover .reflect { display: block; opacity: .6; }
.object.box-rotate .rotate:hover, .object.box-reflect .reflect:hover { opacity: 1; }

.object.move:hover .resize, .object.box-rotate:hover .resize, .object.box-reflect:hover .resize { display: none; opacity: 0; }

.content-full { width: 1400px; opacity: 1; }
.content-full .object img { width: 100%; height: 100%; }

.card .content-wrapper .content .background .background-1, .card .content-wrapper .content .background .background-2, .card .content-wrapper .object-list, .card .content-wrapper .content .cover-elements { opacity: 0; }
.card.thumbnail .content-wrapper .content .background .background-1, .card.thumbnail .content-wrapper .content .background .background-2, .card.thumbnail .content-wrapper .object-list { opacity: 1; }


.content h1 { font-size: 30px; margin: 0 0 20px; font-weight: 500; }
.home .content h1 { max-width: 400px; margin: 0 auto 40px; }
.home .content h1 span { display: none; }
.content p { margin: 0 0 20px; padding: 0; }
.home .content p { margin-bottom: 30px; line-height: 1.2; }
.home .content strong { font-weight: 400; }

.content .enter { position: relative; display: block; max-width: 200px; margin: 0 auto; padding: 20px 0; }
.content .enter a { position: relative; display: block; }
.content .enter a span { position: absolute; top: 0; left: 0; display: block; width: 100%; opacity: 0; transition: opacity .4s; -moz-transition: opacity .4s; -webkit-transition: opacity .4s; -o-transition: opacity .4s; }
.content .enter a:hover span { opacity: 1; }

.content .gallery-wrapper { position: relative; display: block; margin: 0 0 0 -20px; }
.content .gallery-wrapper .card { position: relative; display: block; width: 25%; float: left; margin: 0 0 20px; padding: 0 0 0 20px; box-sizing: border-box; -moz-box-sizing: border-box; }
.content .gallery-wrapper .card a { display: block; border: 1px solid #eaeaea; padding: 10px 10px 17px; background: #FFF; color: #000; font-size: 18px; line-height: 1.1; -webkit-box-shadow: 3px 3px 5px -3px rgba(0,0,0,0.75); -moz-box-shadow: 3px 3px 5px -3px rgba(0,0,0,0.75); box-shadow: 3px 3px 5px -3px rgba(0,0,0,0.75); }
.content .gallery-wrapper .card a .img { display: block; margin: 0 0 10px; border-left: 1px solid #999; border-top: 1px solid #999; border-right: 1px solid #eaeaea; border-bottom: 1px solid #eaeaea; overflow: hidden; }
.content .gallery-wrapper .card a img { position: relative; left: 50%; margin: 0 0 0 -171px; height: 220px; width: auto; }
.content .gallery-wrapper .card a .name { display: block; padding: 0 5px; height: 38px; overflow: hidden; }
.content .gallery-wrapper .card a:hover { background: #f8f8f8; color: #000; }


.object-details-wrapper { position: fixed; top: 80px; right: 0; display: block; width: 145px; background: #fff; border: 1px solid #dfdedf; z-index: 999; }
.mobile .object-details-wrapper { display: none; }
.object-details-wrapper h3 a { display: block; color: #fff; font-weight: 100; background: #00536b; padding: 2px 10px; font-size: 18px; text-transform: uppercase; }
.object-details-wrapper h3 a span { padding-right: 5px; }
.object-details-wrapper h3 a:hover { color: #fff; background: #5e969f; }

.object-details { position: relative; display: none; }
.object-details .object-detail-section { position: relative; display: block; }
.object-details .object-detail-section h4 { display: block; padding: 2px 10px; font-size: 18px; background: #bed6d9; color: #00536b; }
.object-details .object-detail-section h4 span { font-size: 12px; }
.object-details .object-detail-section .object-detail-section-content { position: relative; display: block; padding: 10px 0; }
.object-details .object-detail-section .object-detail-section-content.buttons { text-align: center; }
.object-details .object-detail-section .object-detail-section-content.layers { padding: 0; }
.object-details .object-detail-section .object-detail-section-content table { width: 100%; }
.object-details .object-detail-section .object-detail-section-content table th, .object-details .object-detail-section .object-detail-section-content table td { width: 50%; padding: 4px 10px; text-align: left; font-weight: 400; font-size: 18px; color: #00536b; line-height: 1; vertical-align: middle; }
.object-details .object-detail-section .object-detail-section-content table th { width: 15%; }
.object-details .object-detail-section .object-detail-section-content table th.small-title { font-size: 12px; }
.object-details .object-detail-section .object-detail-section-content table td { padding-left: 0; }
.object-details .object-detail-section .object-detail-section-content input[type="text"] { width: 44px; text-align: right; font-size: 16px; color: #00536b; line-height: 1; border: 1px solid #dadada; }
.object-details .object-detail-section .object-detail-section-content input[type="button"] { width: 60%; font-size: 18px; line-height: 1; text-align: center; color: #fff; background: #00536b; text-transform: uppercase; font-weight: 400; padding: 9px 10px 6px; margin: 0 auto 10px; border: none; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; transition: all .4s; -moz-transition: all .4s; -webkit-transition: all .4s; -o-transition: all .4s; }
.object-details .object-detail-section .object-detail-section-content input[type="button"]:hover { color: #fff; background: #5e969f; }

.object-details .object-detail-section .object-detail-section-content ul.object-layers { margin: 0; padding: 0; max-height: 300px; overflow: auto; }
.object-details .object-detail-section .object-detail-section-content ul.object-layers li { position: relative; margin: 0; padding: 10px; border-top: 1px solid #00536b; }
.object-details .object-detail-section .object-detail-section-content ul.object-layers li.selected { background: #afafaf; }
.object-details .object-detail-section .object-detail-section-content ul.object-layers li.ui-state-highlight { height: 40px; background: #eaeaea; }
.object-details .object-detail-section .object-detail-section-content ul.object-layers li span.object-layer-image { display: block; width: 40px; height: 40px; padding: 5px; border: 1px solid #eaeaea; background: #f6f6f6; float: left; box-sizing: border-box; -moz-box-sizing: border-box; overflow: hidden; }
.object-details .object-detail-section .object-detail-section-content ul.object-layers li span.object-layer-name { display: block; padding: 5px 50px 0 10px; font-size: 12px; font-weight: 400; color: #00536b; float: left; box-sizing: border-box; -moz-box-sizing: border-box; }

.object-details .object-detail-section .object-detail-section-content ul.object-layers li span.object-layer-buttons { position: absolute; top: 9px; right: 0; display: block; width: 40px; height: 40px; text-align: center; border-left: 1px solid #ccc; }
.object-details .object-detail-section .object-detail-section-content ul.object-layers li span.object-layer-buttons span { display: block; width: 100%; font-size: 18px; color: #00536b; padding: 0 0 1px; cursor: pointer; transition: color .4s; -moz-transition: color .4s; -webkit-transition: color .4s; -o-transition: color .4s; box-sizing: border-box; -moz-box-sizing: border-box; }
.object-details .object-detail-section .object-detail-section-content ul.object-layers li span.object-layer-buttons span.disabled { color: #cfcfcf; cursor: default; }
.object-details .object-detail-section .object-detail-section-content ul.object-layers li span.object-layer-buttons span:hover { color: #000; }
.object-details .object-detail-section .object-detail-section-content ul.object-layers li span.object-layer-buttons span.disabled:hover { color: #cfcfcf; }


#footer-wrapper { position: relative; top: 0; left: 0; display: block; width: 100%; padding: 0 20px; box-sizing: border-box; -moz-box-sizing: border-box; }
#footer { position: relative; display: block; width: 100%; padding: 10px 0; text-align: center; font-size: 12px; color: #666; line-height: 1; }
#footer a { color: #666; }
.home #footer, .home #footer a { color: #fff; }
#footer a:hover { color: #000; }


.sticker-wrapper { position: fixed; bottom: 0; left: 0; display: block; width: 100%; opacity: 0; box-sizing: border-box; -moz-box-sizing: border-box; z-index: 99999; border-top: 1px solid #ccc; -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3); box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3); }
.sticker-wrapper .sticker-button { position: relative; display: block; }
.sticker-wrapper .sticker-button a { display: none; padding: 0 20px; line-height: 50px; font-size: 14px; color: #FFF; background: #06F; }
.sticker-wrapper .sticker-button a:hover { color: #FFF; background: #000; }

.sticker-wrapper .stickers-wrap { position: relative; display: block; background: rgb(183,222,237);
background: -moz-linear-gradient(top, rgba(183,222,237,.5) 0%, rgba(113,206,239,.5) 50%, rgba(33,180,226,.5) 51%, rgba(183,222,237,.5) 100%);
background: -webkit-linear-gradient(top, rgba(183,222,237,.5) 0%,rgba(113,206,239,.5) 50%,rgba(33,180,226,.5) 51%,rgba(183,222,237,.5) 100%);
background: linear-gradient(to bottom, rgba(183,222,237,.5) 0%,rgba(113,206,239,.5) 50%,rgba(33,180,226,.5) 51%,rgba(183,222,237,.5) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b7deed', endColorstr='#b7deed',GradientType=0 ); border-top: 1px solid #eaeaea; }
.sticker-wrapper .stickers { position: relative; display: block; width: 100%; height: 131px; overflow: scroll; box-sizing: border-box; -moz-box-sizing: border-box; }
.sticker-wrapper .stickers .stickers-inner { position: relative; display: inline-block; padding: 0 0 0 10px; white-space: nowrap; }
.sticker-wrapper .stickers ul { margin: 0; padding: 10px 0 15px; }
.sticker-wrapper .stickers li { position: relative; display: inline-block; margin: 0 10px; padding: 0; overflow: hidden; opacity: .75; cursor: pointer; background-position: center bottom; background-repeat: no-repeat; background-size: 100% auto; list-style-type: none; transition: opacity .4s; -moz-transition: opacity .4s; -webkit-transition: opacity .4s; -o-transition: opacity .4s; box-sizing: border-box; -moz-box-sizing: border-box; }
.sticker-wrapper .stickers li span { display: none; }
.sticker-wrapper .stickers li.sticker-1 { margin-left: 0; }
.sticker-wrapper .stickers li:hover { opacity: 1; }

.sticker-wrapper .stickers li img { width: 100%; max-width: 150px; }

.sticker-wrapper .sticker-left, .sticker-wrapper .sticker-right { position: absolute; top: 50%; left: 10px; display: none; margin: -30px 0 0; }
.sticker-wrapper .sticker-right { left: auto; right: 10px; }
.sticker-wrapper .sticker-left a, .sticker-wrapper .sticker-right a { display: block; font-size: 60px; line-height: 1; color: #000; }
.sticker-wrapper .sticker-left a:hover, .sticker-wrapper .sticker-right a:hover { color: #00536b; }
.sticker-wrapper .sticker-left a.disabled, .sticker-wrapper .sticker-right a.disabled, .sticker-wrapper .sticker-left a.disabled:hover, .sticker-wrapper .sticker-right a.disabled:hover { opacity: .25; }

.mobile .sticker-wrapper .stickers { width: 86%; margin: 0 auto; }
.mobile .sticker-wrapper .sticker-left, .mobile .sticker-wrapper .sticker-right { display: block; }


.form-wrapper { position: fixed; top: 0; left: 0; display: none; width: 100%; padding: 20px 20px 10px; background: #FFF; opacity: 0; box-sizing: border-box; -moz-box-sizing: border-box; z-index: 999999; border-bottom: 1px solid #000; -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.7); -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.7); box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.7); overflow: auto; z-index: 9999999999999; }
.mobile .form-wrapper { height: 100%; }
.form-wrapper a.btn-close { position: absolute; top: 20px; right: 20px; display: block; color: #000; font-size: 16px; font-weight: bold; line-height: 1; }
.form-wrapper a.btn-close:hover { color: #C00; }
.form-wrapper .form { position: relative; display: block; width: 100%; max-width: 600px; margin: 0 auto; }
.form-wrapper .form h2 { font-size: 24px; font-weight: bold; margin: 0 0 20px; padding: 0; }
.form-wrapper .form h3 { font-size: 20px; font-weight: bold; margin: 0 0 15px; padding: 0; }
.form-wrapper .form p { position: relative; margin: 0 0 20px; padding: 0; }
.form-wrapper .form label { display: inline-block; width: 22%; color: #666; font-size: 18px; padding: 0 20px 0 0; box-sizing: border-box; -moz-box-sizing: border-box; }
.form-wrapper .form label.error { position: absolute; right: 0; font-weight: bold; font-size: 14px; color: #C00; width: auto; padding: 0 10px 0 0; z-index: 9999999999999; }
.form-wrapper .form .field { display: block; width: 78%; padding: 6px 10px 4px; border: 1px solid #000; background: #FFF; float: right; box-sizing: border-box; -moz-box-sizing: border-box; }
.form-wrapper .form .field input[type="text"], .form-wrapper .form .field input[type="email"] { position: relative; width: 100%; border: none; padding: 0; line-height: 1.2; font-size: 15px; color: #000; outline: none; z-index: 9999999999999; }
.form-wrapper .form .field input[type="checkbox"] { vertical-align: middle; } 
.form-wrapper .form .field.checkbox { border: none; padding: 0; font-size: 15px; }
.form-wrapper .form .field.checkbox span { display: inline-block; margin: 0 0 0 10px; }
.form-wrapper .form input[type="submit"] { padding: 6px 10px 4px; border: 1px solid #000; background: #FFF; line-height: 1.2; font-size: 15px; color: #000; transition: all .4s; -moz-transition: all .4s; -webkit-transition: all .4s; -o-transition: all .4s; }
.form-wrapper .form input[type="submit"]:hover { background: #000; color: #fff; }
.form-wrapper .form img.ajax-loader { display: inline-block; width: auto; vertical-align: middle; margin: 0 0 0 20px; opacity: 0; }
.form-wrapper .form .response-output { position: relative; display: none; font-size: 18px; font-weight: bold; margin: 0 0 10px 22%; }
.form-wrapper .form .response-output.error { color: #C00; }



/* https://codepen.io/NickyCDK/pen/AIonk */
.snow:after { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; content: ''; background-image: url('../images/s1.png'), url('../images/s2.png'), url('../images/s3.png'); -webkit-animation: snow 9s linear infinite; -moz-animation: snow 9s linear infinite; -ms-animation: snow 9s linear infinite; animation: snow 9s linear infinite; z-index: 9990; }
@keyframes snow {
  0% {background-position: 0px 0px, 0px 0px, 0px 0px;}
  50% {background-position: 50px 500px, 100px 400px, 50px 150px;}
  100% {background-position: 0 1000px, 0 800px, 0 300px;}
}
@-moz-keyframes snow {
  0% {background-position: 0px 0px, 0px 0px, 0px 0px;}
  50% {background-position: 50px 500px, 100px 400px, 50px 150px;}
  100% {background-position: 0 1000px, 0 800px, 0 300px;}
}
@-webkit-keyframes snow {
  0% {background-position: 0px 0px, 0px 0px, 0px 0px;}
  50% {background-position: 50px 500px, 100px 400px, 50px 150px;}
  100% {background-position: 0 1000px, 0 800px, 0 300px;}
}
@-ms-keyframes snow {
  0% {background-position: 0px 0px, 0px 0px, 0px 0px;}
  50% {background-position: 50px 500px, 100px 400px, 50px 150px;}
  100% {background-position: 0 1000px, 0 800px, 0 300px;}
}	





.loading { position: fixed; top: 0; left: 0; display: block; width: 100%; height: 100%; z-index: 999999999; }
.loading .loading-inner { position: absolute; top: 50%; left: 50%; display: block; margin: -20px 0 0 -20px; font-size: 40px; color: #fff; }

.ui-loader { display: none; }

@viewport { width: auto; }



@media only screen and (max-width: 1024px) {
	
	.content .gallery-wrapper .card a img { height: 180px; margin-left: -141px; }
	.mobile .sticker-wrapper .stickers { width: 82%; }
	
}

@media only screen and (max-width: 900px) {
	
	.content .gallery-wrapper .card { width: 33.3333%; }
	.content .gallery-wrapper .card a img { height: 200px; margin-left: -151px; }
	
}

@media only screen and (max-width: 768px) {
	
	.build .site { padding-bottom: 111px; }
	
	.home .content { font-size: 24px; }
	.home .content h1 { max-width: 300px; }
	.content .enter { max-width: 150px; }
	
	.content .trash-can { width: 24px; }
	.sticker-wrapper .stickers { height: 111px; }
	.sticker-wrapper .stickers li img { max-width: 120px; }
	
	.content .gallery-wrapper .card a img { height: 180px; margin-left: -141px; }
	.mobile .sticker-wrapper .stickers { width: 78%; }
	
}

@media only screen and (max-width: 640px) {
	
	.site { padding-top: 57px; }
	.build .site { padding-bottom: 100px; }
	
	#header { height: 56px; }
	#header .logo { height: 35px; padding-top: 10px; }
	#header .menu { padding-top: 13px; }
	#header .menu li { font-size: 20px; padding-left: 20px; }
	#header .menu li.sep { padding-left: 20px; }
	
	.home .content { font-size: 20px; padding-top: 30px; }
	.home .content h1 { max-width: 260px; margin-bottom: 30px; }
	.home .content p { margin-bottom: 20px; }
	.content .enter { max-width: 130px; }
	
	.sticker-wrapper .stickers { height: 100px; }
	.sticker-wrapper .stickers li img { max-width: 100px; }
	.content .gallery-wrapper .card a { font-size: 16px; }
	.content .gallery-wrapper .card a img { height: 150px; margin-left: -115px; }
	.mobile .sticker-wrapper .stickers { width: 72%; }
	
	.content .play a { font-size: 60px; margin-top: -30px; }
	.card .content-wrapper.card { padding-bottom: 110px; }
	.card-title h1 { font-size: 18px; }
	
}

@media only screen and (max-width: 480px) {
	
	.build .site { padding-bottom: 80px; }
	
	.home .content { font-size: 18px; text-align: left; }
	.home .content h1 { max-width: 200px; }
	
	#header .menu li.share, #header .menu li.sep { display: none; }
	
	.content .trash-can { width: 20px; }
	.sticker-wrapper .stickers { height: 80px; }
	.sticker-wrapper .stickers li img { max-width: 90px; }
	
	.sticker-wrapper .sticker-left, .sticker-wrapper .sticker-right { margin-top: -25px; }
	.sticker-wrapper .sticker-left a, .sticker-wrapper .sticker-right a { font-size: 50px; }
	.mobile .sticker-wrapper .stickers { width: 68%; }
	
	.content .gallery-wrapper .card { width: 50%; }
	
	.card .content-wrapper.card { padding-bottom: 60px; }
	.content-wrapper .title { bottom: 30px; }
	
	.form-wrapper .form h2 { font-size: 20px; }
	.form-wrapper .form h3 { font-size: 18px; }
	.form-wrapper .form label { width: 30%; font-size: 17px; }
	.form-wrapper .form .field { width: 70%; }
	.form-wrapper .form .field input[type="checkbox"] { vertical-align: top; margin-top: 4px; }
	.form-wrapper .form .field input[type="text"], .form-wrapper .form .field input[type="email"] { font-size: 13px; }
	.form-wrapper .form .field.checkbox span { width: 200px; }
	
}

@media only screen and (max-width: 400px) {
	
	.home .content h1 { max-width: 160px; }
	
	.content .gallery-wrapper .card { width: 100%; }
	.content .gallery-wrapper .card a img { height: 200px; margin-left: -151px; }
	
	.mobile .sticker-wrapper .stickers { width: 56%; }
	
	.form-wrapper .form .field.checkbox span { width: 140px; }
	.form-wrapper .form label { width: 40%; }
	.form-wrapper .form .field { width: 60%; }
	
}