/**
 *
 *	USED IN PUBLIC FORMS OF RePa
 * 
 */

/**
 * resets
 */

*{margin:0px; padding:0px; box-sizing: border-box; font-family: Overpass, Helvetica, sans-serif;}
.clear{clear:both;}
.clearleft{clear:left;}
.clearright{clear:right;}
.margin20{margin-top:20px;}
h1{
	font-weight: 400;
	font-size:24px;
	/* margin:30px 0px 5px; */
}
h2{
	font-weight: 400;
	font-size:20px;
}
body{
	background-color:#F2F2F2;
	background: linear-gradient(#f1f3f7, #f2f3f7); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
	width: 100%;
	height: 100vh;
}

input[type='text'],
input[type='email']{
	width:100%;
}
input:focus {
    outline-width: 0;
}
label,
form label{
	display: block;
	margin-top:15px;
	margin-bottom:5px;
	position: relative;
	font-size: 13px;
}

form#customer_info_edit_form label{
	margin-top:0px;
}

section#form_contents > form > h2:before,
.icon-cancel-circled,
#error_container.visible::before,
html.loading::after,
div.product_image_cols > div.example_images:before,
label::before{
	display: none;

	font-family: "repa_icon";
	font-style: normal;
	font-weight: normal;
	speak: none;

	text-decoration: inherit;
	width: 1em;
	margin-right: .2em;
	text-align: center;
	/* opacity: .8; */
	
	/* For safety - reset parent styles, that can break glyph codes*/
	font-variant: normal;
	text-transform: none;
	
	/* fix buttons height, for twitter bootstrap */
	line-height: 1em;
	
	/* Animation center compensation - margins should be symmetric */
	/* remove if not needed */
	margin-left: .2em;
	
	/* you can be more comfortable with increased icons size */
	/* font-size: 120%; */
	
	/* Font smoothing. That was taken from TWBS */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
form#fb_form label[for='target_id']::before{ content: '\e813';} /* home */
form#fb_form label[for='first_name']::before{ content: '\e840';} /* first_name */
form#fb_form label[for='feedback']::before{ content: '\e817';} /* feedback */
form#fb_form label[for='contact_me']::before{ content: '\f0e0';} /* contact_me */


/* Styled checkbox */
.styled_checkbox {
	position: relative;
}

.styled_checkbox > input {
	/*display: none;*/
	position: absolute;
	background-color: transparent;
	opacity: 0;
	width: 25px;
	height: 25px; /*ie*/
	padding: 0;
	margin: 0;
	pointer-events: none;
	/*font-size: 0;*/
}
.styled_checkbox > label {
    margin-top:0px;

}
.styled_checkbox > input + label {
    display: inline-block;
    /*width: 15px;*/
    /*height: 15px;*/
    padding: 0;
    cursor: pointer;

    line-height: 20px;
}
.styled_checkbox label > span {
    /*padding-left: 22px;*/

    /*test*/
    /*display: inline-block;
    line-height: 1.4;
    position: relative;
    top: -4px;*/
}
.styled_checkbox > input + label > span:before {
	display: inline-block;
	position: relative;
	top: 4px;
	/*pointer-events: none;*/
	color:#383838;

	content: "\f096";
	font-family: repa_icon;
	font-size: 2em;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    
	width: 1.1em;
	text-align: left;
}
.styled_checkbox > input:checked + label > span:before {
	content: "\e831";
}
.styled_checkbox > input + label:hover > span:before {
	-webkit-filter: brightness(125%);
	filter: brightness(125%);
}

.styled_checkbox.box {
	background-color: #fff;
	border: 1px solid #aaa;
	width: 22px;
	box-sizing: border-box;

	text-align: center;
}
.styled_checkbox.only_on_as_check > input + label > span:before,
.styled_checkbox.only_on_as_cross > input + label > span:before {
	content: "\e809";
	font-size: 1.25em;

	width: auto;
	text-align: left;
	color: #fff;
}
.styled_checkbox.only_on_as_check > input:checked + label > span:before {
	content: "\e806";
	color: #00BD0B;
}
.styled_checkbox.only_on_as_cross > input:checked + label > span:before {
	content: "\e809";
	color: #BD0B0B;
}


.styled_checkbox.styled_checkbox_reverse.only_on_as_cross > input + label > span:before {
	content: "\e809";
	color: #BD0B0B;
}
.styled_checkbox.styled_checkbox_reverse.only_on_as_cross > input:checked + label > span:before {
	content: "\e809";
	color: #fff;
}


.select_holder{
	position: relative;
	/* max-width: 540px; */
	float: none;
	width: 100%;
}
select.unselected{
	color: #949494;
}

select.unselected option{
	color:#000;
}


.select_holder select{
	width:100%;
	max-width: none;
	font-size: 16px;
}
.infopallo{
	color: #77D3DE;
	font-size:26px;
	display: inline-block;
	position: absolute;
	right:0;
	cursor: pointer;
}
#file_upload_wrapper .infopallo{
	float:left;
	position: static;
}
span.req:after{
	color:red;
	content: ' *';
}
form#fb_form label[for=email]:after,
form#fb_form label[for=phone]:after{
	color:red;
	content: ' **';
}
span.required{
	color:red;

}
strong{
	font-weight: 700;
	font-family: Helvetica, sans-serif;
}

.checkboxit_wrapper > .form_field_wrap{
	display: inline-block;
	margin: 20px 15px 0px 0px;
} 

button[type='submit'],
input[type='submit'].button{
	width:auto;
	outline:0px;
	border:0px;
	height:40px;
	line-height: 41px;
	/*font-size:17px;*/
	font-weight: 400;
	margin:20px 0px 0px;
	padding: 0px 35px;
	cursor: pointer;
	-webkit-appearance: none;
	margin-bottom:30px;
}
@media(max-width:600px){
	button[type='submit'],
	button[type='button'],
	input[type='submit'].button{
        width:100%;
        padding:7px 0px;
        height:auto;
        border-radius:10px;
 }
 section.customer-info div#edit_save_buttons button[type='submit'] + button.grey {
 	margin-top: 20px;
 }
}


#error_container{
	display: none;
}
#error_container.visible{
	display: block;
	color:#cc0000;
	background-color: #ffe8e8;
	padding:15px 15px 15px 45px;
	font-size:14px;
	margin-top:10px;
	margin-bottom:50px;
	position: relative;
	clear:both;
	position: sticky;
    top: 0;
    z-index: 1;
}
#error_container.visible::before{
	content: '\e80a';
	color:#cc0000;
	display: block;
	font-size:18px;
	position: absolute;
	left:10px;
}
a#continue_shopping{
	text-decoration: none;
	padding:20px 15px;
	background-color:#EAEAEA;
	display: inline-block;
	margin:20px 0px;
	color:black;
	font-size:18px;
}
button#print_fb_button{
	outline:0px;
	border:0px;
	margin-bottom:15px;
	font-size:13px;
	cursor: pointer;
}

input#captcha{
	margin-left:20px;
	width:150px;
}
.notvalid{
	/* border:1px solid #cc0000 !important; */
}
#upload_limit_text{
	color:red;
	font-size:13px;
	margin-bottom:10px;
	display: none;
}
#upload_limit_text.visible{
	display: block;
}
#upload_inputs_holder{
	clear: both;
	padding-top:0px;
}
#upload_inputs_holder input{
	display: block;
	float:none;
}
input.files {
	margin-bottom:5px;
}
/** 
 * Wrappers
 */

div#form_wrapper{
	background-color:white;
	border: 2px solid #E1E1E1;
	position: relative;
	max-width: 650px;
	margin: -2px auto 40px;
}
div#form_wrapper:not(.kirjaudu) {
	padding:0px 10px 40px;
}
div#form_wrapper.kirjaudu section {
	padding:0px 20px 0px;
}
@media(min-width:600px){
	div#form_wrapper{
	    padding:0px 20px 40px;
	}
	div#form_wrapper.kirjaudu {
		padding: 0px;
		border-bottom-right-radius: 8px;
		border-bottom-left-radius: 8px;
	}
	div#form_wrapper.kirjaudu section {
		padding:0px 20px 0px;
	}
}

div#form_wrapper.kirjaudu #footer_copyright {
	border-bottom-right-radius: inherit;
	border-bottom-left-radius: inherit;
}

div#form_wrapper.reclamation_confirm,
div#form_wrapper.reclamation{
	max-width:1000px;
}
div#form_wrapper.messaging {
	max-width: 650px;
}
html.loading div#form_wrapper{
	filter:blur(.1em);
}
#form_wrapper{
	padding-top:30px;
	padding-left:0px;
}
#form_wrapper{
	padding-top:5px;
}
#form_wrapper p{
	font-size: 14px;
	line-height: 22px;
}


#form_wrapper.messaging section div.data-set > div > :where(h2:last-of-type, p:last-of-type),
#form_wrapper.messaging section div.content > :where(h2:last-of-type, p:last-of-type) {
	margin: 0;
}
@media screen and (min-width: 600px) {
	#form_wrapper.messaging p.status {
		text-align: right;
	}
}
#form_wrapper.messaging section {
	border: none;
	box-shadow: none;
	border-radius: 0;
	border-bottom: 1px solid #f0f0f0;
	padding-bottom: 20px;
}
#form_wrapper.messaging section div.data-set > div {
	padding-left: 0;
	padding-right: 0;
	margin: 0;
}
#form_wrapper.messaging h2 {
	font-size: 22px;
}
#form_wrapper.messaging h3 {
	font-size: 18px;
	margin-bottom: 10px;
}
#form_wrapper.messaging div.toggle_content :where(p, ul) {
	margin-bottom: 25px;
}
#form_wrapper.messaging h2.toggle {
	cursor: pointer;
	display: block;
	padding: 0;
	user-select: none;
}
#form_wrapper.messaging h2.toggle::after {
	content: '\e908';
	font-family: rehti-feedback-icomoon;
	float: right;
}
#form_wrapper.messaging h2.toggle.open::after {
	content: '\e907';
}
#form_wrapper.messaging div.toggle_content {
	display: none;
	padding: 40px 0 0 0;
}
#form_wrapper.messaging h2.toggle.open + div.toggle_content {
	display: block;
}
#form_wrapper.messaging div.toggle_content p.solution:has(+ p.solution) {
	margin-bottom: 0;
}
div#form_wrapper.messaging section.messages div.content::-webkit-scrollbar {
  	display: none;
}
div#form_wrapper.messaging section.messages div.content {
  	-ms-overflow-style: none;
  	scrollbar-width: none;
  	max-height: 515px;
  	overflow-y: auto;
  	overscroll-behavior: contain;
  	margin-bottom: 35px;
}
@media screen and (max-width: 500px) {
	div#form_wrapper.messaging section.messages div.content {
		max-height: 50dvh;
	}
}
@media (hover: none) {
	div#form_wrapper.messaging section.messages div.content {
		overscroll-behavior: auto;
	}
}
div#form_wrapper.messaging section.messages div.content:empty {
	display: none;
}
@media screen and (max-width: 500px) {
	div#form_wrapper.messaging section.messages div.content div.message_container:not(.mine) {
		margin-left: 20px;
	}
	div#form_wrapper.messaging section.messages div.content div.message_container.mine {
		margin-right: 20px;
	}
}
div#form_wrapper.messaging section.messages textarea[name="comment"] {
	margin-bottom: 25px;
	padding: 10px;
}
div#form_wrapper.messaging section.messages h2 {
	margin-bottom: 20px;
}
div#form_wrapper.messaging section.messages #file_upload_container {
	margin: 0 0 30px 0;
}
div#form_wrapper.messaging section.messages #upload_button_area {
	margin: 0;
}
div#form_wrapper.messaging section.customer-info div.form_field_wrap label {
	display: none;
}
div#form_wrapper.messaging section.customer-info h3 {
	margin-bottom: 0;
}
div#form_wrapper.messaging section.customer-info div.form_field_wrap input {
	margin-top: 0;	
	margin-bottom: 20px;
}
div#form_wrapper.messaging section.customer-info button#toggle_editable {
	float: none;
}


#form_wrapper #feedback_thanks > p,
#form_wrapper #reclamation_thanks > p{
	margin: 10px 0px 20px;
}
#form_wrapper strong.feedback_code{
	font-size:14px;
	padding: 15px 30px;
	background-color: #eee;
	display: inline-block;
	margin-bottom:10px;
	font-weight: 700;
	font-family: Helvetica, sans-serif;
}
#header_text_container{margin: 20px 0px 0px;text-align: center;}
#explanations{
	margin:15px 0px 20px;
	padding: 10px 20px 10px 0px;
	float: left;
}
#explanations label{
	text-align: left;
}
#explanations p{
	font-size: 14px;
	margin-bottom: 5px;
}
.contact_me_cb{
	background-repeat: no-repeat;
}

/*
#file_upload_wrapper{
	margin:10px 0px 20px;
}
#file_upload_wrapper .preview_img_wrapper{
	position: relative;
	margin:10px 5px;
	display: inline-block;
}
#file_upload_wrapper .upload_preview_img{
	height:60px;
	padding:5px;
}
#file_upload_wrapper .preview_img_wrapper .remove_image_button_wrapper{
	position: absolute;
	top:-5px;
	right:0;
	cursor: pointer;
}
/* Ruksi */
/* Ruksin taustaväri */
/*
#file_upload_wrapper .preview_img_wrapper .remove_image_button_wrapper i{
	color:#fff;
}
#file_upload_wrapper .preview_img_wrapper .remove_image_button_wrapper i.remove_from_preview{	
	color:#D5D7D6;
}
#file_upload_wrapper .preview_img_wrapper .remove_image_button_wrapper:hover i.remove_from_preview{	
	color:#dbdbdb;
}
*/




/** 
 * ------------------------------------------
 */


.enhalua label[for='contact_me']::before{
	display: none;
}
#contact_not_required{
	max-height:0px;
	overflow: hidden;
	transition: max-height 0.4s, opacity 0.4s;
	opacity:0;
	max-width: 300px;
}
@media(min-width:700px){
	#contact_not_required{
	    float:left;
	    width: 50%;
	}
}
#contact_not_required.visible{
	max-height: 200px;
	opacity:1;
	max-width: 50%;
}
@media(max-width:768px){

    #contact_not_required.visible{
    	
	    max-width: 400px;
    }
}
#preview_photos{
	margin-top:10px;
	margin-bottom:20px;
}
/* Tooltip */
/*.tooltip_hover, .tooltip_hover_noimg { cursor: help; }*/

#info_tooltip_block {
	/*display: none;*/
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	min-height: 20px;
	max-width: 250px;
	z-index: 9000;
	pointer-events: none;
	box-shadow: 0px 0px 4px rgba(0,0,0,.25);

	transition: transform .3s ease-out, opacity .3s ease-out;
}
#info_tooltip_block.tooltip_appear_top, #info_tooltip_block.tooltip_appear_bottom, #info_tooltip_block.tooltip_appear_left, #info_tooltip_block.tooltip_appear_right {
	opacity: 1;
}
#info_tooltip_block.tooltip_appear_top {
	transform: translate(0, -5px);
}
#info_tooltip_block.tooltip_appear_bottom {
	transform: translate(0, 5px);
}
#info_tooltip_block.tooltip_appear_left {
	transform: translate(-5px, 0);
}
#info_tooltip_block.tooltip_appear_right {
	transform: translate(5px, 0);
}

#info_tooltip_block #info_tooltip_inner {
	position: relative;
	padding: 6px;

	/*border: 1px solid #aeaeae;*/
	border-radius: 1px;
	/*background-color: #959595;*/
	background-color: #fff;

}

#info_tooltip_block #info_tooltip_content {
	padding: 3px;
	font-size: 14px;
	color: #000;
}

#info_tooltip_block #info_tooltip_arrow {
	position: absolute;
	left: 50%;
	bottom: -8px; /* - width/2 */
	height: 16px;
	width: 16px;
	margin-left: -8px; /* - width/2 */
	transform: rotate(45deg);

	background: #eaeaea;
}
#info_tooltip_block .tooltip_arrow_bottom {
	bottom: auto !important;
	top: -8px !important;
}
#info_tooltip_block .tooltip_arrow_right {
	bottom: calc(50% - 8px) !important;
	left: 0 !important;
}
#info_tooltip_block .tooltip_arrow_left {
	bottom: calc(50% - 8px) !important;
	left: auto !important;
	right: -8px !important;
}
#info_tooltip_block img {
	max-width: 100px;
	max-height: 100px;
}

.info_text {
	text-decoration: underline;
	cursor: help;
}
.info_text:hover { text-decoration: none; }


/**
 * ELEMS
 */
#captcha_wrapper{
	text-align: left;
}

#form_wrapper p.tuotetiedot_huomio{
	padding:10px;
	max-width: 510px;
	font-size: 14px;
	margin:10px 0px;
}



/**
 * LAYOUT
 */
header#form_header{
	display:flex;
	flex-direction:column;
	padding: 20px 0px;
}
header#form_header #logo, header#form_header #logo svg{
	align-self: center;
	height: 100px;
}

header#form_header #logo svg#tremedia_pa_logo {
	height: 80px;
}
header#form_header #header_text_container h1{
	margin-bottom: 5px;
}

section#form_contents > form > h2{
	margin-top:30px;
	position: relative;
}

div#form_wrapper.kirjaudu #footer_copyright {
	width: 100%;
	margin-top: 30px;
	background: rgb(245, 245, 245);
	height: 58px;
}

div#form_wrapper.kirjaudu {
	margin-top: 0;
	border-top-width: 0;
}

@media screen and (min-width: 900px) {
	div#form_wrapper:not(.kirjaudu) {
		margin-bottom: 40px;
	}
	div#form_wrapper.kirjaudu {
		margin: 0 auto;
		max-height: 720px;
		max-width: 480px;
		border-radius: 8px;
		border-top-right-radius: 0;
		border-top-left-radius: 0;
	}

	div#form_wrapper.kirjaudu #footer_copyright {
		border-bottom-right-radius: 8px;
		border-bottom-left-radius: 8px;
	}

	div#form_wrapper.kirjaudu #messages.has_messages {
		position: fixed;
		bottom: 3px;
	}
}

@media screen and (min-height: 750px) and (min-width: 900px) {
	div#form_wrapper.kirjaudu {
		max-height: 720px;
		max-width: 480px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		margin: 0;
		border-radius: 8px;
		border-top-width: 2px;
	}
}

section#form_contents.kirjaudu h1,
section#form_contents.kirjaudu h3,
section#form_contents.kirjaudu p {
	color: rgb(77,77,77);
	width: 95%;
	margin: 10px auto;
}

section#form_contents.kirjaudu p {
	width: 85%;
}

div#form_wrapper.kirjaudu #footer_copyright {
	color: rgb(77,77,77);
}

section#form_contents.kirjaudu h1,
section#form_contents.kirjaudu h3 {
	text-align: center;
	line-height: 2em;
	font-weight: normal;
}

section#form_contents.kirjaudu h3 {
	font-size: 16px;
	margin: 15px auto;
}

section#form_contents.kirjaudu p {
	text-align: center;
	line-height: 1.7em;
	font-weight: normal;
}

section#form_contents.kirjaudu form {
	margin: 20px auto 0;
}

@media screen and (max-width: 680px) {
	section#form_contents.kirjaudu h1,
	section#form_contents.kirjaudu h3,
	section#form_contents.kirjaudu p {
		width: 90%;
	}

	div#form_wrapper.kirjaudu {
		max-width: unset;
		width: 100%;
		border-left: none;
		border-right: none;
		border-radius: 0;
	}
}

section#form_contents.kirjaudu label {
	text-align: initial;
	font-weight: normal;
}

section#form_contents.kirjaudu form input[type=submit] {
	margin-top: 35px;
	margin-left: auto;
	margin-right: auto;
	width: 250px;
	display: block;
	padding: 6px 0;
	box-sizing: initial;
}

form#fb_form input:not(type="file"),
form#re_form input:not(type="file"){
	width: 100%;
	max-width: none;
}
form#fb_form input[type="file"]{
	max-width:100%;
}
form#re_form > .customer_info_fields > .email_fields_holder label:first-child{
	margin-top: 0px;
}
form#re_form > .customer_info_fields > .email_fields_holder{
	margin: 20px 0px;
	padding: 0px 15px 15px;
} 
@media(min-width:680px){
	form#re_form > .customer_info_fields > .email_fields_holder{
        margin:0;
	}	
}
form#re_form > .customer_info_fields > .email_fields_holder .static_explanations p{
	margin-top:20px;
	font-size:14px;
}

form#re_form > .solution_fields{
	padding-top:10px;
	position:relative;
}
form#re_form > .solution_fields .col_1_3{
	margin-bottom:20px;
}
form#re_form > .solution_fields .col_1_3:last-child{
	margin-bottom: 0px;
}
form#re_form > .solution_fields .col_1_3 p{
	padding-bottom:5px;
    font-size: 14px;
}
/*form#re_form > .solution_fields .col_1_3.discount_col > .form_field_wrap{*/
form#re_form > .solution_fields .col_1_3.discount_col > .form_field_wrap:nth-child(2){
	float:left;
}
form#re_form > .solution_fields .col_1_3.discount_col > label.eur{
	float: left;
	margin-top:0px;
	line-height: 30px;
}
form#re_form input#solution_fail_discount_amount{
	width:50px;
	float: left;
	height:30px;
	margin:0px 5px 0px 20px;
}

form#re_form textarea#solution_other{
	height:100px;
	min-height:100px;
}

form#re_form > .reclamation_image_fields{
	padding-top:5px;
}
form#re_form > .reclamation_image_fields .product_image_cols {
	margin-top:20px;
}
form#re_form > .reclamation_image_fields .product_image_cols {
	width:100%;
	vertical-align: top;
}

form#re_form > .reclamation_image_fields .product_image_cols p{
	font-size:14px;
	margin-top:20px;
}
div#re_confirm_explanation{
	padding:10px 20px ;
}
section.re_confirm_section > form > div.confirm_cols{
	width:25%;
	float: left;
}
section.re_confirm_section > form > div.confirm_cols:nth-child(3){
	width:50%;
}

div.product_image_cols > div.example_images{
	height:200px;
	cursor: pointer;
	position: relative;
	outline: 1px solid #E1E1E1;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
div.product_image_cols > div.example_images > div.progress_bar{
	width: 100%;
	height: 6px;
	position: absolute;
	bottom: -13px;
	pointer-events: none;
	/*background: linear-gradient(90deg, rgb(68 222 68) 43%, rgba(255,255,255,0) 43%);*/
}
div.product_image_cols > div.example_images:not(.preview_loading):not(.has_image) > div.progress_bar{
	display:none;
}

div.product_image_cols > div.example_images > i.fa-spin3{
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	color: #545454;
	line-height: 200px;
	width: 100%;
	font-size: 52px;
	text-align: center;
	display: none;
}
div.product_image_cols > div.example_images.preview_loading > i.fa-spin3{
	display: block;
}
div.product_image_cols > div.example_images > i.fa-spin3:after{
	content:'';
	width:100%;
	position: absolute;
	top:0;
	left:0;
	height: 100%;
	background: rgba(0,0,0,.3);
	z-index: 10;
}
div.product_image_cols > div.example_images > i.fa-spin3:before{
	-moz-animation: spin 2s infinite linear;
	-o-animation: spin 2s infinite linear;
	-webkit-animation: spin 2s infinite linear;
	animation: spin 2s infinite linear;
	z-index: 100;
}
div.product_image_cols > div.example_images > i.fa-cancel{
	color:#fff;
	position:absolute;
	right:10px;
	top:10px;
	font-size:20px;
	display:none;
}
div.product_image_cols > div.example_images.preview_loading + input,
div.product_image_cols > div.example_images.has_image + input{
	visibility:hidden;
}
div.product_image_cols > div.example_images.has_image > i.fa-cancel{
	display:none;
}
div.product_image_cols > div.example_images.has_image:hover > i.fa-cancel{
    display:block;
}
div.product_image_cols > div.example_images:not(.has_image):hover{
	opacity: 0.9;
}
div.product_image_cols > div.example_images:after,
div.product_image_cols > div.example_images:before{
	content: '\f0ee';
	opacity: 0;
	display: block;
	font-size: 25px;
	top: 0;
	position: absolute;
	height: 200px;
	line-height: 200px;
	width: 100%;
	text-align: center;
	background: rgba(0,0,0,0.7);
	left: 0;
	margin: 0;
	color: #fff;
	transition: opacity 0.3s;
}
div.product_image_cols > div.example_images.preloading:after,
div.product_image_cols > div.example_images.preloading:before{
	display: none;
}
div.product_image_cols > div.example_images.preloading{
	pointer-events: none;
}
div.product_image_cols > div.has_image.example_images:before{
    content:'\e82f';
}
div.product_image_cols > div.example_images:after{
	background-color:transparent;
	content:'Valitse kuva';
	top: 0px;
	line-height: 250px;
	font-size: 15px;
}
div.product_image_cols > div.example_images.has_image:after{
	content:'Vaihda kuva';
}

div.product_image_cols > div.example_images:not(.preview_loading):hover:before{
	opacity:1;
	pointer-events: none;
}
div.product_image_cols > div.example_images:not(.preview_loading):hover:after{
	opacity:1;
	pointer-events: none;
}

div.product_image_cols > div.example_image_1.default_ones{
	background-image: url('../reklamaatio/img/rehti-feedback-kuva-1.png');
}
div.product_image_cols > div.example_image_2.default_ones{
	background-image: url('../reklamaatio/img/rehti-feedback-kuva-2.png')
}
div.product_image_cols > div.example_image_3.default_ones{
	background-image: url('../reklamaatio/img/rehti-feedback-kuva-3.png')
}
section.re_confirm_section > form > div.col_2_3.review_cols,
section.re_confirm_section > form > div.col_1_3.review_cols {
	margin:10px 0px 0px;
}
section.re_confirm_section > form > div.col_2_3.review_cols p,
section.re_confirm_section > form > div.col_1_3.review_cols p {
	margin:10px 0px;
	padding-right: 10px;
	word-wrap: break-word;
}
section.re_confirm_section > form > div.col_2_3.review_cols p span,
section.re_confirm_section > form > div.col_1_3.review_cols p span{
	font-weight: 700;
}
section.re_confirm_section > form > p.solution{
	margin:10px 0px;
}
section.re_confirm_section > form > h2.image_details{
	padding-bottom:20px;
}
section.re_confirm_section > form > #submit_buttons_wrapper > input[type=submit]#main_submit_btn{
	margin-left:0px;
}	
form#customer_info_edit_form > div.data-set-wrap-3 > div {
	margin-bottom: 5px;
}

form#customer_info_edit_form .modify_area_public{
	min-height:20px;
}
form#customer_info_edit_form #toggle_editable{
	margin: 20px 0px;
	width: auto;
	padding: 0px 25px;
	float: left;
}
form#new_comment_form input[type="submit"]{
	float:right;
	margin-top: 10px;
}

section:not(.form_view){
	border:1px solid #dbdbdb;
	border-radius: 10px;
}
section:not(.form_view) div.title{
	border-top-right-radius: 10px;
	border-top-left-radius: 10px;
}

@media (min-width:550px){
	.etunimi_holder,
	.sukunimi_holder{
		width:50%;
		float: left;
	}
	.etunimi_holder{
		padding-right: 20px;
	}

	form#re_form .col_1_2,
	form#re_form .col_1_3,
	form#re_form .col_2_3{
		float: left;
	}
	form#re_form .customer_info_fields .col_1_2{
		width:50%;
	}
	form#re_form .customer_info_fields .col_1_2 .col_1_3{
		width: calc(40%);
	}
	form#re_form .customer_info_fields .col_1_2 .col_2_3{
		width: calc(60%);
		/*padding-left: 10px;*/
	}
	form#re_form .customer_info_fields .col_1_2:nth-child(odd){
		padding-right: 20px;
	}
	form#re_form .customer_info_fields .col_2_3:nth-child(odd){
		padding-right: 20px;
	}
	form#re_form > .solution_fields .col_1_3{
		width:50%;
	}
	form#re_form > .reclamation_image_fields .product_image_cols {
		width:calc(50% - 10px);
		vertical-align: top;
	}
	form#re_form > .reclamation_image_fields .product_image_cols p{
		height:50px;
	}
	form#re_form > .reclamation_image_fields .product_image_cols.product_image_middle_col{
		margin-left:10px;
	}
	form#re_form > div#confirm_reclamation_top_btn_wrapper{
		text-align: right;
		float:right;
	}

	form#customer_info_edit_form > div.data-set-wrap-3 > div > p{
		width:50%;
		display: inline-block;
	}
}
@media (min-width:600px){
	form#re_form .product_info_fields > .col_2_3 > .col_1_3,
	form#re_form .product_info_fields > .col_2_3 > .col_2_3{
		width:50%;
	}
	form#re_form .product_info_fields > .col_2_3 > .col_2_3{
		padding-right: 20px;
	}

}
@media (min-width:680px){
	section#form_contents.thanks{
		padding-top:20px;
	}
	section#form_contents.thanks h2{
		margin-bottom:15px;
	}

	.etunimi_holder,
	.sukunimi_holder{
		max-width:330px;
	}

	section#form_contents:not(.re_form){
		/* padding-left:50px; */
	}
	section#form_contents.thanks{
		padding-left:20px;
		padding-top:50px;
	}
	div#form_wrapper {
		padding:0px 30px 50px;
	}
	div#form_wrapper.kirjaudu {
		padding:0px;
	}
	div#form_wrapper.kirjaudu section, div#form_wrapper:not(.kirjaudu) {
		padding:0px 30px 0px;
	}
	form label{
		display: block;
		margin-top:15px;
		margin-bottom:5px;
		position: relative;
	}
	label::before{
		display: none;
		position: absolute;
		left:-50px;
		font-size:24px;
		top:2px;
	}
	header#form_header{
		position: relative;
		margin-bottom: 20px;
		flex-direction: row;
		box-sizing: content-box;
		align-items: center;
		text-align: left;
		padding: 25px 0px;
		border-bottom: 1px solid #dbdbdb;
	}
    header#form_header #logo{
    	height: auto;
    }
    header#form_header #header_text_container{
    	padding-left: 40px;
    	text-align: left;
    	margin: 0px auto 0px;
    	height: auto;
    }
    div#form_wrapper.messaging #header_text_container {
    	padding-left: 50px;
    }
    div#form_wrapper.kirjaudu header#form_header {
    	padding: 0;
    	border: none;
    	margin-bottom: 0;

    }

    div#form_wrapper.kirjaudu header#form_header div#logo {
    	width: 200px;
	    display: block;
	    margin: 40px auto 10px;
    }

    div#form_wrapper.kirjaudu header#form_header div#logo svg {
    	height: auto;
    }

    div#form_wrapper.feedback  header#form_header div#logo svg,
    div#form_wrapper.reclamation  header#form_header div#logo svg {
    	height: 80px;
    }

	a#continue_shopping{
		padding:25px 25px;
		font-size:24px;
	}
	button#print_fb_button{
		float:right;
		outline:0px;
		border:0px;
		margin-bottom:15px;
		font-size:16px;
	}

	form#re_form .col_1_3{
		width:calc(100% / 3);
	}
	form#re_form .col_2_3{
		width:calc(100% / 3 * 2);
	}
}
@media (min-width:750px){
	.floatleft{float:left;}
	.floatright,#explanations{float:right;}
	#captcha_wrapper{
		float:right;
	}
	#explanations{
		text-align: right;
	}
	form button[type='submit'],
	form input[type='submit'].button{
		max-width: 300px;

	}

	form input[type='submit'][name='btn_modify'] {
		max-width: 200px;
	}
	form > div#submit_buttons_wrapper{
		padding-top:20px;
	}
	.checkboxit_wrapper .floatleft.enhalua{
		margin-left:20px;
	}

	section#form_contents > form > h2:before{
		display: block;
		position: absolute;
		left:-40px;
		font-size:20px;
	}
	section#form_contents > form > h2.personal_details:before{
		content:'\f2bd';
	}
	section#form_contents > form > h2.product_details:before{
		content:'\e84b';
	}
	section#form_contents > form > h2.image_details:before{
		content:'\e849';
	}
	section#form_contents.re_form{
		padding-left:50px;
	}
	form#re_form > .reclamation_image_fields .product_image_cols {
		width:calc(100% / 3 - 10px);
		vertical-align: top;
	}
	form#re_form > .reclamation_image_fields .product_image_cols.product_image_middle_col {
		margin:20px 15px;
	}
}
@media (min-width:900px){
	form#re_form > .solution_fields .col_1_3{
		width:calc(100% / 3);
	}

	form#customer_info_edit_form > div.data-set-wrap-3 > div > p{
		width:calc(100% / 3);
		
	}
}

@media (min-width:1000px) {
	h1{
		font-size: 24px;
	}
	a#continue_shopping{
		padding:25px 40px;
		font-size:30px;
	}
}



/* ASIAKASKIRJAUTUMINEN*/

section.kirjaudu {
	padding-top: 10px !important;
	margin-bottom: 25px;
}

@media (min-width:680px){
	section.kirjaudu {
		/* margin-left: 62px; */
	}
}

section.kirjaudu input[type='text'] {
	max-width: 100%;
	width: 100%;
}

section.kirjaudu input.button {
	max-width: 100%;
	width: 100%;
	margin-top: 25px;
}

section.kirjaudu .kirjaudu-info-content {
	color: #7F7F7F;
	font-size: 14px;
	margin-top: 5px;
}

section.kirjaudu #error_container.visible {
	margin-top: 10px;
	margin-bottom: 10px;
}

section.kirjaudu .login_field {
	margin: 0 auto;
}
@media (min-width:750px) {

	section.kirjaudu .login_field {
		width: 100%;
	}
}

@media (min-width:900px) {
	section.kirjaudu .login_field {
		width: 85%;
	}
	
	section.kirjaudu .kirjaudu-info-content {
		float: right;
	}
	
	section.kirjaudu .kirjaudu-info-content  p {
		margin-top: 30px;
		line-height: 16px;
	}
	
	
}

section.kirjaudu input.button {
	max-width: 250px;
	font-size: 18px;
	border-radius: 30px;
}

select.notvalid,
input.notvalid,
textarea.notvalid{
	border:1px solid #cc0000;
	background: #ffe4e4;
}
.clearboth {
	clear: both;
}
div#form_alertbox {
	border:1px solid #cc0000;
	background: #ffe4e4;
	padding: 4px;
	box-sizing: border-box;
	border-radius: 4px; 
	margin: 8px 0;
	max-width: calc(100% - 50px);
}
div#form_alertbox p {
	display: flex;
	align-self: center;
}
#error_container p.notvalid {
	color: #cc0000;
}
select{
	max-width: 500px;
	width:calc(100% - 40px);
}
form textarea{
	min-height:160px;
	height:160px;
	line-height: normal; 
	resize: none;
	line-height: normal;
	width: 100%;
}

#new_comment_form_third_party #submit_client_comment{
	margin:20px 0px;
	float:right;
}



#loading_overlay {
  display: none;
}
html.loading #loading_overlay {
  display: block;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 100;
}
#loading_overlay > div {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 250px;
    background: white;
    margin: 0 auto;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
    -ms-transform: translate(-50%, -50%); /* IE 9 */
    -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
    transform: translate(-50%, -50%);
    border-radius: 10px;
}
#loading_overlay > div:after {
	content:'Odota, käsitellään..';
	font-size: 15px;
}
#loading_overlay > div .progress-circle{
	font-size: 20px;
	margin: 20px auto 30px;
	position: relative;
	padding: 0;
	width: 5em;
	height: 5em;
	background-color: #ddd;
	border-radius: 50%;
	line-height: 5em;
}
#loading_overlay > div .progress-circle span{
	position: absolute;
	line-height: 5em;
	width: 5em;
	text-align: center;
	display: block;
	color: #000000;
	z-index: 2;
	font-weight: 700;
}
#loading_overlay > div .left-half-clipper{
	border-radius: 50%;
	width: 5em;
	height: 5em;
	position: absolute;
	clip: rect(0, 5em, 5em, 2.5em);
}
#loading_overlay > div #progress-circle.over50 .left-half-clipper{
	clip: rect(auto,auto,auto,auto);
}
#loading_overlay > div .first50-bar {
    position: absolute;
    clip: rect(0, 5em, 5em, 2.5em);
    background-color: #53777A;
    border-radius: 50%;
    width: 5em;
    height: 5em;
    display:none;
}
#loading_overlay > div #progress-circle.over50 .first50-bar {
    display:block;
}
#loading_overlay > div .value-bar {
    position: absolute;
    clip: rect(0, 2.5em, 5em, 0);
    width: 5em;
    height: 5em;
    border-radius: 50%;
    border: 0.45em solid #53777A;
    box-sizing: border-box;
    transform: rotate(0deg);
    transition: transform 0.2s;
}

#loading_overlay > div .progress-circle:after {
    border: none;
    position: absolute;
    top: 0.35em;
    left: 0.35em;
    text-align: center;
    display: block;
    border-radius: 50%;
    width: 4.3em;
    height: 4.3em;
    background-color: white;
    content: " ";
}

#loading_overlay #spinner > i:before{
  display: block;
  font-size: 30px;
  width: 70px;
  height: 70px;
  line-height: 70px;
  text-align: center;
  margin: 0;
  box-sizing: border-box;
  -moz-animation: spin 2s infinite linear;
  -o-animation: spin 2s infinite linear;
  -webkit-animation: spin 2s infinite linear;
  animation: spin 2s infinite linear;
}
#loading_overlay #spinner i{
	margin:0px auto;
	display:block;
	width: 70px;
}
#upload_progress {
  position: relative;
  display: block;
  width: 100%;
  height: 20px;
  line-height: 12px;
  margin: 10px 0px 15px;
  z-index: 1;
  background-color: #d8d8d8;
  border-radius: 50px;
}
#upload_progress {
  transition: opacity .5s ease-out;
}
#upload_progress.visible {
  opacity: 1;
}
#upload_progress > #upload_progress_fill {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  overflow: hidden;
  z-index: 2;
  border-radius: 50px;
  background-color: #2FB339;
  background: linear-gradient(to right, #1aa224, #4FE359);
}
#upload_progress > div:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: calc(-20% + -50%);
  height: 100%;
  width: 50%;
  z-index: -1;
  background-color: rgba(255,255,255,.3);

  -ms-transform: skewX(20deg);
  -webkit-transform: skewX(20deg);
  transform: skewX(20deg);

  animation: flash 3s infinite ease-out;
}
@keyframes flash {
  0% { left: calc(-20% + -50%); }
  20% { left: 110%; }
  100% { left: 110%; }
}
#upload_progress > span {
  position: relative;
  display: block;
  z-index: 3;
  text-align: center;
  font-size: 12px;
  color: #000;
  line-height: 20px;
}
@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(359deg);
    -o-transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@-webkit-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(359deg);
    -o-transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@-o-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(359deg);
    -o-transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@-ms-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(359deg);
    -o-transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -moz-transform: rotate(359deg);
    -o-transform: rotate(359deg);
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}


#footer_adm_banner{
	background: #424242;
	position: fixed;
	bottom:0;
	width:100%;
	left:0;
	height:40px;
	color: #fff;
	text-align: center;
}
#footer_adm_banner a{
    line-height:40px;
	color: #fff;
}
#form_wrapper #footer_adm_banner p{
	line-height:30px;
	font-size:12px;
	color: #fff;
}

#footer_copyright {
	text-align: center;
	color: #E1E1E1;
	font-size: 90%;
	padding: 20px 0;
}

/**
 * Message
 */
#messages{
	position: fixed;
	bottom: 0px;
	left: 0;
	max-width: 620px;
	z-index: 10;
	margin-bottom: 0px;
	width: 100%;
}
#messages > div > div{
	border-radius: 0px;
}

#messages > div > div.closeable{
	padding-right: 65px;
}

#messages > div > div.closeable p > span{
	content:'OK';
	position:absolute;
	right: 15px;
	margin-top: -16px;
	background: white;
	padding: 5px 10px;
	color: #000;
	cursor: pointer;
	height: 32px;
	top: 50%;
}
#messages > div > div.closeable p > span:hover{
	background-color:#f3f3f3;
}
@media (min-width: 620px){
	#messages{
		left: 50%;
		transform: translateX(-50%);
	}	
	#messages > div > div{
		border-radius: 5px;
	}
}

@media (min-width: 950px){
	#messages{
		bottom:30px;
	}	
}