@charset "utf-8";

/* css reset
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
body {
	line-height: 1;
}
h1, h2, h3, h4, h5, h6 {
	clear: both;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
blockquote {
	quotes: none;
}
blockquote:before, blockquote:after {
	content: none;
}
del {
	text-decoration: line-through;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}
a img {
	border: none;
}

a {
	text-decoration:none;
}

.btn{cursor: pointer;}
/* --------------------- general markup ----------------------------*/
body {
	font-family:Arial, Helvetica, sans-serif;
	background-color:#fbfbfb;
}
h1 {
	color:#FFF;
	font-size:22px;
	font-weight:bold;
	padding:5px 0 0 10px;
}
h2 {
	font-style:italic;
	font-size:12px;
	color:#FFF;
	padding-left:10px;
}
h3 {
	font-weight:bold;
	font-size:22px;
	padding:0 0 5px 0;
}
.hidden {
	visibility:hidden;
}
.underline {
	border-bottom:dotted 1px #1847a7;
}
.underline:hover{
	color:#1847a7;
	border-bottom:solid 1px #1847a7;
}

/*---------------------- gallery header ----------------------------*/

.header {
	height:52px;
	width:100%;
	clear:both;
	background-color:#000;
}
.customlogo {
	position:absolute;
	right:5px;
	top: 0;
	height:52px;
	display:table-cell;
	vertical-align:middle;
	overflow:hidden;
}
.customlogo img{
	height: 45px;
}
/*---------------------- body --------------------------------------*/

.bodyarea {
	position:relative;
	margin:10px auto;
	width:1024px;
}
div.buttoncontainer {
	position:relative;
	display:block;
	width:100%;
	text-align:center;
	clear:both;
	margin:10px 0 10px 0;
	padding:10px 0;
	height:30px;
}

div.container-right {
	position:absolute;
	right:0;
	top:10px;
	text-align:right;
}

.copyright {
	border-top: solid 1px #CCC;
	margin:10px auto 0 auto;
	clear:both;

}
.copyright td {
	padding:5px 0 0 0;
	font-size:11px;
	text-align:center;
	color:#999;
	line-height:14px;
}

/*--------------------- gallery elements (#1 page) ---------------------------*/

.gallery-desc {
	width:800px;
	margin:0 auto 20px auto;
	clear:both;
	position:relative;
	text-align:center;
	font-size:12px;
}
.thumbbox-wrapper {
	width:910px;
	margin:0 auto;

}
.thumbbox {
	position:relative;
	float:left;
	width:166px;
	height:149px;
	background:url(img/thumbbox.png) left top no-repeat;
	padding:17px 0 0 0;
	margin:0 2px 4px 2px;
}
.thumbbox .filename {
	position:absolute;
	text-align:center;
	font-size:10px;
	color:#afafaf;
	width:130px;
	height:15px;
	left:17px;
	top:2px;
	overflow:hidden;
}
.thumbCheckbox {
	position:absolute;
	width:24px;
	height:24px;
	right:5px;
	bottom:5px;
	background:url(img/checkbox.png) left top no-repeat;
	cursor: pointer;
}
.thumbCheckboxChecked {
  background:url(img/checkbox-checked.png) left top no-repeat;
}

.thumbbox {
	display:inline-block;
	margin:6px;
}
.thumbboxChecked{
  background:url(img/thumbbox-checked.png) left top no-repeat;
}
.checkedbox{
	background:url(img/thumbbox-checked.png) left top no-repeat;
}

.thumbbox .checkbox {
	position:absolute;
	width:24px;
	height:24px;
	right:5px;
	bottom:5px;
}

.thumbbox .thumbnailimage {
	display:table-cell;
	width:162px;
	height:128px;
	vertical-align:middle;
	text-align:center;
}
.thumbbox .imagewrapper {
	border:solid 1px #9d9d9d;
	background:#FFF;
	padding:2px;
	display:inline-block;
}

.thumbboxOver {
	background:url(img/thumbbox-over.png) left top no-repeat;
}
/*--------------------- picture details selection box (#2 page) ---------------*/

.separator {
	width:100%;
	clear:both;
	height:1px;
}

.picdetails {
	width:506px;
	margin:1px;
	position:relative;
	float:left;
	font-size:12px;
}
.picdetails .topedge {
	top: 0;
	left: 0;
	width:506px;
	height:1px;
}
.picdetails .bottomedge {
	position:relative;
	bottom:0;
	left:0;
	width:506px;
	height:3px;
}
.picdetails .wrapper {
	background:url(img/picdetailbox-bgloop.png) repeat-y;
	display:inline-block;
	position:relative;
	width:506px;
	min-height:149px;
	padding:0;
	margin:0;
}
.picdetails .del {
	position:absolute;
	left:1px;
	top:1px;
	z-index:400;
}

.picdetails .tumbpos {
	position:absolute;
	left:6px;
	top:6px;
	z-index:200;
}
.picdetails .thumbnailimage {
	display:table-cell;
	width:130px;
	height:130px;
	vertical-align:middle;
	text-align:center;
}

.picdetails .imagewrapper {
	border:solid 1px #9d9d9d;
	background:#FFF;
	padding:2px;
	display:inline-block;
}
.picdetails .content-table {
	margin:4px 1px 19px 143px;
	width:357px;
	display:table;
}
.picdetails .selector {
	width:232px;
	font-size:12px;
	padding:3px 2px 3px 0;
	border:solid 1px #dbdbdb;
	margin:0 0 2px 0;
	top:-1px;
	float:left;
}
.picdetails .input-quantity {
	border:solid 1px #dbdbdb;
	width:25px;
	padding:3px 0 3px 0;
	text-align:center;
	font-size:12px;
	float:left;
}
.picdetails .input-quantity-add {
	border:solid 1px #dbdbdb;
	width:25px;
	height:17px;
	padding:3px 0 3px 0;
	margin:0 0 0 4px;
	text-align:center;
	font-size:12px;
	float:left;
}
.picdetails .disabled { /*quantity formfield disabled state */
	border:solid 1px #CCC!important;
	color:#CCC!important;
	background-color:#F8F8F8!important;
	cursor:default!important;
}
.picdetails .quantity-label {
	float:left;
	display:block;
	margin:6px 0 0 2px;
}
.picdetails .disabledtext {
	color:#CCC;
}
.picdetails .rowOver {
	background-color:#d9ecf8;
	padding:2px;
}

.picdetails .rowOver .input-quantity {
	border:solid 1px #1847a7;
	}
.picdetails .rowOver .input-quantity-add {
	border:solid 1px #1847a7;
	}
.picdetails .rowOver .selector {
	border:solid 1px #1847a7;
	}

.picdetails .rowNormal td {
	padding:2px;
	display:table-cell;
	vertical-align:middle;
}
.picdetails .topborder {
	padding-left:3px!important;
	background:url(img/picdetailbox-rowborder.png) left top repeat-x;
}
.picdetails .usercommentarea {
	position:absolute;
	display:inline-block;
	width:504px;
	height:19px;
	bottom:4px;
	left: 0;
	background:url(img/usercommentarea-closed.png) left top no-repeat;
}
.picdetails .usercommentareaOver {
	background:url(img/usercommentarea-expanded.png) left top no-repeat;
}

.picdetails .expanded {
	position: absolute;
	display: block;
	width: 504px;
	height: 109px;
	bottom: 0;
	left: 0;
	z-index: 300;
	background:url(img/usercommentarea-expanded.png) left top no-repeat;
}
.picdetails .usercomments-desc {
	font-size:10px;
	position:absolute;
	left:10px;
	top:18px;
}
.picdetails .usercomments-text {
	position:absolute;
	left:10px;
	top:30px;
	border:solid 1px #8b9aaf;
	height:64px;
	width:400px;
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
	padding:3px;
}

.picdetails .usercomments-link {
	margin:0 7px 0 0;
	position:absolute;
	right:2px;
	top:3px;
	z-index:100;
	height:12px;
	background:url(img/usercomment.png) left top no-repeat;
}

.picdetails .commentEntered {
	background:url(img/usercomment-active.png) left top no-repeat!important;
}


.picdetails .usercomments-link a {
	font-size:10px;
	color:#1847a7;
	border-bottom:dotted 1px #1847a7;
	margin:0 0 0 15px;
}
.picdetails .usercomments-link a:hover {
	border-bottom:solid 1px #1847a7;
}
/*--------------------- order details (#3 page) --------------------*/
.boxrow {
	display:table;
	margin:0 auto;
}
.smallbox {
	width:429px;
	position:relative;
	float:left;
	margin:5px;
	font-size:12px;
}
.smallbox .top {
	width:429px;
	height:1px;
	}
.smallbox .wrapper {
	background:url(img/orderdetails_smallboxloop.png) left top repeat-y;
	display:inline-block;
	width:429px;
	min-height:177px;
	}
.smallbox .bottom {
	width:429px;
	height:3px;
}
.smallbox .content-table, .largebox .content-table  {
	text-align:left;
	margin:5px auto 5px auto;
}
.smallbox .content-table td {
	padding:0 0 2px 0;
	position:relative;
}
.smallbox .textfield, .largebox .textfield, .selectfield {
	border: solid 1px #b3bece;
	width:340px;
	padding:5px;
	margin:0 0 7px 0;
}
.selectfield{
	width: 352px;
	}
.smallbox .bonustextfield {
	border: solid 1px #b3bece;
	padding:5px;
	margin:1px 0;
	float:left;
	width:140px;
}
textarea{
	resize: none;
}
.smallbox .textfield:hover, .smallbox .textfield:focus, .smallbox .bonustextfield:hover, .smallbox .bonustextfield:focus, .largebox .textarea:hover, .largebox .textarea:focus {
	border: solid 1px #1847a7;
}
.your-order {
	width:400px;
}
.your-order td {
	padding:5px 0 2px 0!important;
}
.your-order .botBorder {
	border-bottom:2px solid #d6def1;
}
.your-order .topBorder {
	border-top:2px solid #d6def1;
}
.bonuscoupon {
	width:400px;
	margin:10px auto 5px auto;
	background:#d5ddf1;
	border: solid 1px #b3bece;
}
.bonuscoupon td {
	padding:10px 10px 7px 10px;
	display:table-cell;
	vertical-align:middle;
}

.largebox {
	width:868px;
	position:relative;
	float:left;
	margin:5px;
	font-size:12px;
}
.largebox .top {
	width:868px;
	height:1px;
	}
.largebox .wrapper {
	background:url(img/orderdetails_largeboxloop.png) left top repeat-y;
	display:inline-block;
	width:868px;
	min-height:50px;
	padding:10px;
	}
.largebox .bottom {
	width:868px;
	height:3px;
}
.largebox .textarea {
	border: solid 1px #b3bece;
	width:500px;
	height:60px;
	padding:5px;
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
	margin:5px 0;
}
.largebox label {
	cursor:pointer;
}

.login-error{
	max-width: 300px;
	padding: 15px;
	background-color:#ffeaea;
	border:solid 1px #bd0000!important;
	position:relative;
	width: 50%;
	margin: 0 auto;
}

.validationError {
	background-color:#ffeaea;
	border:solid 1px #bd0000!important;
}
.validationErrorSign {
	position:relative;
	float:right;
	text-align:right;
	display: none;
}
.validationErrorSign .text {
	position:absolute;
	background-color:#bd0000;
	color:#FFF;
	font-size:10px;
	display:block;
	white-space:nowrap;
	right: 0;
	top:-11px;
	padding:1px 5px 1px 5px;
}
.loginErrorSign {
	right:10px;
	top:2px;
	margin:0;
	padding:0;
	display: block;
}

.expandableLink {
	background:url(img/expand.png) left top no-repeat;
	padding:0 0 0 15px;
}
.expandableLink:hover {
	background:url(img/expand-over.png) left top no-repeat;
	padding:0 0 0 15px;
}
.collapsableLink {
	background:url(img/collapse.png) left top no-repeat;
}
.collapsableLink:hover {
	background:url(img/collapse-over.png) left top no-repeat;
}
/*--------------------- buttons ------------------------------------*/
.smallgreen a { /*all buttons */
	outline:none;
	color:#FFF;
	font-weight:bold;
	text-transform:uppercase;
	display:table-cell;
	vertical-align:middle;
	text-align:center;
}
.smallgreen a img { /*all buttons */
	margin: -1px 10px 0 -10px;
	vertical-align:middle;
}

.smallgreen { /*all buttons */
	display:inline-block;
}
.smallgreen a { /*small buttons only*/
	padding:0 13px 0 20px;
	min-width:20px;
	height:28px;
	font-size:11px;
}

.smallgreen { /*small buttons only*/
	padding:0 6px 0 0;
}

.smallgreen { background:url(img/btn_green-small-end.png) right top no-repeat; }
.smallgreenOver { background:url(img/btn_green-small-end-over.png) right top no-repeat!important; }
.smallgreen a {background:url(img/btn_green-small-start.png) left no-repeat;}
.smallgreenOver a {background:url(img/btn_green-small-start-over.png) left no-repeat!important;}

.nextbutton {
	position:absolute;
	right:20px;
	top:0;
}

.comment-ok-button {
	position:absolute;
	left:435px;
	top:50px;
}

.nextbutton .sumtip, .nextError {
	position:absolute;
	top:30px;
	left:0;
	width:172px;
	height:43px;
	background:url(img/bubble.png) left top no-repeat;
	font-size:12px;
	padding:21px 0;
	text-align:center;
}

.nextError{
	color: red;
}

.prevbutton {
	font-size:12px;
	position:absolute;
	display:inline-block;
	left:30px;
	top:8px;
}

.tinyadd a{
	padding:0 10px 0 16px!important;
}
.tinyadd {
	margin:0 0 2px 0;
}
.minwidth172 a {
		min-width:132px;
}

div.deleteBtn{
	background:url(img/picdetailbox-del-passive.png) left top no-repeat;
	width: 21px; height: 21px;
	cursor: pointer;
	display: block;
	float: right;
}
div.deleteBtnOver{
	background:url(img/picdetailbox-del.png) left top no-repeat;
	}

/*--------------------- roadmap ------------------------------------*/

.roadmap_box {
	font-size:12px;
	width:600px;
	height:100px;
	margin:0 auto;
	position:relative;
	display:block;
}
.tinyarrow {
	position:absolute;
	top:27px;
	z-index:100;
	width: 17px;
	height: 14px;
	background: url(img/tinyarrow.png) left top no-repeat;
}

.roadmap-cell {
	margin:0 4px 0 4px;
	width:190px;
	height:25px;
	float:left;
	text-align:center;
}
.roadmap_box .nr1 a, .roadmap_box .nr2 a, .roadmap_box .nr3 a {
	display:inline-block;
	padding:6px 0 7px 30px;
	color:#758baf;
}
.roadmap_box .nr1 a:hover, .roadmap_box .nr2 a:hover, .roadmap_box .nr3 a:hover {

}

.roadmap_box .nr1 a {
	background:url(img/roadmap_nr1-passive.png) left top no-repeat;
}
.roadmap_box .nr2 a {
	background:url(img/roadmap_nr2-passive.png) left top no-repeat;
}
.roadmap_box .nr3 a {
	background:url(img/roadmap_nr3-passive.png) left top no-repeat;
}

.legend-container {

	width:100%;
	position:absolute;
	top:40px;
}
div.lefttop {
	position:absolute;
	left:0;
	top:0;
	background:url(img/lefttop.png) left top no-repeat;
	width: 6px; height: 6px;
}
div.righttop {
	position:absolute;
	right:0;
	top:0;
	background:url(img/righttop.png) left top no-repeat;
  width: 6px; height: 6px;
}
div.rightbottom {
	position:absolute;
	right:0;
	bottom:0;
	background:url(img/rightbottom.png) left top no-repeat;
  width: 6px; height: 6px;
}
div.leftbottom {
	position:absolute;
	left:0;
	bottom:0;
	background:url(img/leftbottom.png) left top no-repeat;
  width: 6px; height: 6px;
}
.legend {
	border:solid 1px #cecece;
	background-color:#eaf0ff;
	text-align:center;
	padding:10px;
}

/*step1*/
.step1 .tinyarrow {
	left:70px;
}
.step1 .nr1 a {
	font-weight:bold;
	color:#3f5170;
	cursor:default;
	background:url(img/roadmap_nr1.png) left top no-repeat!important;
}
/*step2*/
.step2 .tinyarrow {
	left:250px;
}
.step2 .nr2 a {
	font-weight:bold;
	color:#3f5170;
	cursor:default;
	background:url(img/roadmap_nr2.png) left top no-repeat!important;
}
/*step3*/
.step3 .tinyarrow {
	left:460px;
}
.step3 .nr3 a {
	font-weight:bold;
	color:#3f5170;
	cursor:default;
	background:url(img/roadmap_nr3.png) left top no-repeat!important;
}

.orderChangeAlert {
	background-color:#C33!important;
	border:solid 1px #900!important;
	display:block;
	position:relative;
	height:10px;
}


/*---------------------- loginscreen -------------------------------*/
.body_container {
	position:absolute;
	width:100%;
	height:100%;
}
.loginbox_container {
	top:50%;
	margin:-114px auto;
	width:455px;
	height:229px;
	background:url(img/loginscreen_bg.png) left top no-repeat;
	position:relative;
}
.loginbox_container .instruction {
	position:absolute;
	width:436px;
	display:block;
	text-align:center;
	left:10px;
	top:80px;
	font-size:14px;
}
.loginbox_container .author {
	position:absolute;
	right:10px;
	bottom:-5px;
}
.loginbox_container .author a {
	font-size:9px;
	color:#CCC;
	border-bottom:dotted 1px #CCC;
}
.loginbox_container .author a:hover {
	color:#F00;
	border-bottom:solid 1px #F00;

}
.loginbox_container .key {
	position:absolute;
	left:85px;
	top:118px;
	height:32px;
	width:288px;
	background:url(img/loginbox_keybg.png) left top no-repeat;
}
.loginbox_container .key img {
	position:absolute;
	right:0;
}
.loginbox_container .loginform {
	width:208px;
	height:25px;
	padding:0 0 0 5px;
	margin:2px 0;
	line-height:25px;
	background:none;
	border:none;
	font-size:14px;
}
.loginerror {
	display:block;
	width:288px;
	padding:6px 0 6px 0;
	border:solid 1px #990000;
	background:#FCC;
	position:absolute;
	left:85px;
	top:25px;
	text-align:center;
	font-size:14px;
}

div.public-img-filename{
  color: gray;
  position: absolute;
  top: 8px;
}
div.public-img-marker{
  position: absolute;
  right: 30px;
  top: 8px;
}
.highslide-caption .thumbCheckbox{
  position: absolute;
  right: 3px;
  top: 3px;
}
img.step3-thumb{
	opacity:0.7;
	filter:alpha(opacity=40);
	height: 26px;
	width: 26px;
	padding: 0 !important;
	margin: 0 !important;
}
img.step3-thumb:hover{
  opacity:1;
  filter:alpha(opacity=100);
}
a.step3-thumb{
  padding: 0 !important;
  margin: 0 !important;
}
/*--------------------------- promo page ------------------------------*/

.promoscreen {
	font-family: 'Roboto',arial,sans-serif;
	background: #e7f5ff url(img/promopage_bg.png) repeat-x left -280px;
}

.loginfield {
	width:170px;
	height:32px;
	line-height:27px;
	padding:0 5px 0 5px;
	margin:2px 5px 0 0;
}

.loginlabel {
	width:170px;
	text-align:left;
	display:block;
	padding:0 0 0 -5px;
	margin:5px auto 0 auto;
	font-size:12px;
	color:#1f72a1;
}

.ok-loginbtn {
	border:solid 1px #CBCBCB;
	background:#E4E4E4;
	width:100px;
	padding:5px;
	margin:5px auto;
	color:#3A3A3A;
	border-radius: 5px;
}

.loginfielderror {
	background:#FFAAAC !important;
}

.smalltext {
	font-size:10px;
}

.bodycontainer {
	position:relative;
	margin:6px auto;
	width:930px;
}

#gSignInWrapper{
	vertical-align: top;
}

.loginscreenwrapper h1 {
	margin:5px;
	color:#1f72a1;
}

.loginscreenbox {
  height: 400px;
  width: 100%;
  margin:10% auto;
	text-align:center;
}

.socialLogin {
	width:250px;
	text-align:right;
	padding:10px;
	color:#fff;
	margin:5px auto;
}
