/* ostoskori */
div.cartGroup {
  padding:10px 0px 3px 0px;
  
}

.cartItem {
  margin:15px 0px 20px 0px;
  padding:15px 0px 0px 0px;
  font-weight : normal; 
  border-top:1px solid #CCCCCC;
  display: flex;
  flex-flow: row wrap;
}

.cartTextColumn {
   padding:0px 0px 0px 0px;
   width:60%;
   font-size:18px;
}

.cartTextColumn  h3 {
  margin-top:15px;
}

.cartTextColumn  input {
  padding:8px 8px 9px;
  border-radius:2px;
  font-size:18px;
  margin:0 5px;
}

.cartTextColumn  input[type="number"] {
  max-width:70px;
}

.cartPicColumn {
  align-self: flex-start;
  width:30%;
  margin-top:20px;
  margin-right:10%;
  margin-bottom:20px;
  -webkit-box-shadow:#CCCCCC 13px 12px; 
  background-color:#ffffff;
  border:20px solid #FFFFFF;
  box-shadow:#CCCCCC 3px 0 10px;
  text-align:left;
}
.cartPicColumn img {
  min-width:100%;
}
#cartMenu {
  padding:0;
  /**border-left:1px dotted #CCCCCC;**/
  margin-bottom:35px;
  text-align:right;
}

#cartMenu a{
  display:inline-block;
  padding:7px 12px; 
  margin:0px 5px 0px 0px;
  border:1px solid #cccccc;
  background:#dddddd;
  color:#ffffff;
  font-weight:bold;
  border-radius:3px;
}

#cartMenu a.highlight{
  background:#EC6605;
}

#cartMenu a.tilaa{
  background:#cC4605;
}

#cartMenu a.highlight:hover {
  background:#dC5605;
}

#viewCart {
  padding:0px 20px 20px 35px;
  border-left:1px dotted #CCCCCC;
}

#viewCart  table td{
  padding:5px;
}

#viewCart input.submit {
  padding:3px 6px;
}

#orderForm {
  padding-left:35px;
  border-left:1px dotted #CCCCCC;
}


#orderForm  form input {
  padding:8px 8px;
  margin-bottom:4px;
  background:#f3f3f3;
  border:1px solid #cccccc;
  border-radius:2px;
  font-size:16px;
}

#orderForm form#orderform {
  display: flex;
  flex-flow: row wrap;
}

#orderForm .orderformColumn {
  /*float:left;*/
  box-sizing: border-box;
  width:50%;
  padding:1% 10% 1% 0;
}

#orderForm form .orderformColumn input {
  width:100%;
}

.objectAdded {
  margin-top:20px;
  padding:20px;
  text-align:center;
  border:1px solid #cccccc;
  font-size:16px;
  background:#e5eff8;
}

/* puuttuvat tiedot */
#orderform input.error {
  border:1px solid #cc0000; 
  background:#eeeeee;
}

#orderform textarea.error {
  border:1px solid #cc0000; 
  background:#eeeeee;
}

#orderform checkbox.error {
  border:1px solid #cc0000; 
  background:#eeeeee;
}

#orderform radio.error {
  border:1px solid #cc0000; 
  background:#eeeeee;
}

#orderform label.error{
  float:none;
 color: #cc0000; 
 display:none;
  padding:0.3em 0em 1.6em 0em;
 /**float:right;**/
}
/* puuttuvat tiedot */

/* ostoskori */
.cart-wrapper {
  padding-left: 35px;
    border-left: 1px dotted #CCCCCC;
}
.cartTable th {
  padding:5px 10px;
  background:#f5f5f5;
}

.cartTable td {
  padding:5px;
}

.box {
  width:47%;
  float:left;
  /*padding:30px;*/
  margin:20px 25px 0px 0px;
  min-height:500px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
}

.toimitus {
  margin-right:0px;
  float:right;
}

.box h2 {
  margin:0.9em 0em;
  border-bottom: 2px solid #000;
  padding: 0.7em 0em;
}

.box-right {
  float:right;
  margin-right:0px;
}

.box-wide {
  width:100%;
  margin:20px 0px 0px 0px;
  float:none;
  min-height:150px;
}

.box-50 {
  width:48%;
  margin:20px 2% 0px 0px;
  float:left;
  min-height:250px;
}

.box input, .box textarea{
  background:#fcfcfc;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  width:100%;
  padding:8px;
  border:1px solid #eaeaec;
  border-radius:3px;
  box-shadow: 2px 2px 2px #ededed inset;
  margin-bottom:5px;
  font-family:'Montserrat'; 
}

.box .cartTable input {
  width:40px;
  padding:4px;
}

.box .cartTable input[type="checkbox"] {
  width:auto;
  padding:4px;
}

input[type="submit"], input[type="reset"] {
  background:#121319 !important;
  border:1px solid #121319 !important;
  font-size: 1.0em !important;
  padding:0.8em 1.3em !important;
  color:#ffffff;
  font-weight:700;
  text-transform:uppercase;
}

input.btn-order {
 background:#36ae6d;
 border:1px solid #36ae6d;
}

tr.yhteenveto td {
  border-top:1px solid #eaeaec;
}

tr.summa td {
  background:#f5f5f5;
  border-top:1px solid #f5f5f5;
}

tr.orderLine td {
  border-top:1px dashed #eaeaec;
}

tr.orderLine td select.product-option {
  padding:0.3em 0.4em;
  margin:0.5em 0em 0.2em;
  width:100%;
  font-size:0.9em;
}

tr.orderLine td .product-check-option {
  font-size:0.9em;
}

.cartTable tr:nth-child(2) td  {
  border-top:none;
}

.promoCode {
  margin:3% 0%;
  padding:1% 2%;
  border:1px solid #eee;
}

.promoCode input{
  width:auto;
}

.promoCode .submit{
  padding:0.5em 0.8em;
  font-size:0.9em;
  box-shadow:none;
}

.promoLine {
  background:#CAEED5;
}

.promoLine .delPromo{
  font-size:1.3em;
  font-weight:bold;
  padding:0 0.4em;
  color:#cc0000;
}

.promoError {
  border:1px solid #eee;
  background:#CAEED5;
  margin:3% 0%;
  padding:1% 2%;
}

.toimitusehdot, .cart-buttons {
  width:100%;
}

/*toimitustavat */

.toimitustapa {
  margin-bottom:1.5em;
  width:100%;
}

.toimitustapa .toimitustapa-hide {
  display:none;
}  

.toimitustapa .toimitustapa-show {
  display:block;
}

.toimitustapa .toimitustapa-header {
  background-color:#fff;
  border:1px solid #ccc;
  padding:0.9em;
  font-size:16px;
  font-weight:700;  
}

.toimitustapa .toimitustapa-header .toimitustapa-price {
  float:right;
}

.toimitustapa .toimitustapa-content {
  padding:0.6em 2.6em 0.6em 2.6em;
  border-left:1px solid #ccc;
  border-right:1px solid #ccc;
}

.toimitustapa .toimitustapa-content#toimitustapa-content-noutopiste {
  border-bottom:1px solid #ccc;
}

.toimitustapa .toimitustapa-content .toimitustapa-noutopisteet {
  border:1px solid #ccc;
  margin-top:0.8em;
  margin-bottom:2.0em;
  background-color:#fff;
}

.toimitustapa .toimitustapa-content .toimitustapa-noutopisteet ul {
  margin-top:0;
  margin-bottom:0;
}

.toimitustapa .toimitustapa-content .toimitustapa-noutopisteet ul li {
  padding:0.8em 1.3em;
  border-bottom:1px solid #ccc;
}

.toimitustapa .toimitustapa-content .toimitustapa-noutopisteet ul li strong {
  font-size:14px;
}

.toimitustapa .toimitustapa-content .toimitustapa-noutopisteet ul li:hover {
  cursor: pointer;
  z-index:9999;
  outline:3px solid #0d4d8e;
}

.toimitustapa .toimitustapa-content .toimitustapa-noutopisteet ul li.error:hover {
  cursor: default;
  outline:none;
}

.toimitustapa .toimitustapa-content .toimitustapa-noutopisteet ul li.selected {
  cursor: pointer;
  z-index:9999;
  outline:3px solid #d85c25;
}

.toimitustapa .toimitustapa-selected {
  background-color:#f9f9f9;
}
/* maksutapavalinta */

.maksutapa {
  
				   
	width:100%;
}

.payment-selection-container {
	max-width:100%;
	padding:20px 30px;
	background-color:#f9f9f9;
	border: 1px solid #ccc;
}
.payment-selection-container h3 {
	margin-bottom:10px;
}
.payment-selection-container h3 img {
	margin-top:0px;
	margin-right:15px;
	margin-left:5px;
	vertical-align: middle;
}

.payment-selection-container input {
	visibility:hidden;
	position:absolute;
	z-index:-1;
				 
}

.payment-selection-container .payment-group-container {
	display:flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	margin:5px 0 25px 0;
}

.payment-selection-container .payment-group-container label {
	position:relative;
	display:block;
	height:70px;
	background-color:#fff;
	border: 1px solid #eee;
	box-shadow: 2px 2px 2px #ddd;
	padding:5px;
	margin:5px;
}
.payment-selection-container .payment-group-container label img {
	margin-top:10px;
}
.payment-selection-container .payment-group-container label.selected {
	outline: 3px solid #d85c25;
}
.payment-group-container label:hover {
	background-color:#f9f9f9;
	border: 1px solid #ddd;
	box-shadow: 2px 2px 2px #ccc;
}
/* maksutapavalinta */

/* valittu maksutapa */
.payment-container-selected {
	min-height:300px;
}
.payment-container-selected #orderForm span {
	font-size:22px;
	font-weight:700;
}
/* valittu maksutapa */
/* maksutapalistaus */
.payment-container {
	max-width:75%;
	padding:30px 30px 20px;
	margin-left:25%;
	background-color:#f3f3f3;
}
.payment-container h2 {
	margin-bottom:10px;
}
.payment-container h2 img {
	margin-top:0px;
	margin-right:15px;
	margin-left:5px;
	vertical-align: middle;
}

.payment-container .payment-group-container {
	display:flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	margin:5px 0 25px 0;
}
.payment-container .payment-group-container form {
	margin:5px;
}
.payment-container .payment-group-container form button {
	height:100%;
	background-color:#fff;
	border: 1px solid #eee;
	box-shadow: 2px 2px 2px #ddd;
	padding:10px;
}
.payment-container .payment-group-container form button:hover {
	background-color:#f9f9f9;
	border: 1px solid #ddd;
	box-shadow: 2px 2px 2px #ccc;
}
/* maksutapalistaus */					  

@media only screen and (max-width: 960px) {
  
  .cartTextColumn {
     width:100%;
  }

  .cartTextColumn  h3 {
    margin-top:15px;
  }

  .cartTextColumn  input {
    padding:8px 8px 9px;
    border-radius:2px;
    font-size:18px;
    margin:0 4px;
  }

  .cartTextColumn  input[type="number"] {
    max-width:60px;
  }

  .cartPicColumn {
    width:80%;
    margin-top:20px;
    margin-right:10%;
    margin-bottom:20px;
  }
  
  table.cartTable td {
    display: table-cell !important;
  }
  table.cartTable td.mobileHide, table.cartTable th.mobileHide {
    display:none !important;
  }
  
  .cart-wrapper, #orderForm {
    padding-left: 0;
    border-left: none;
  }
  
  .cart-wrapper {
    margin-bottom:5%;
  }
  
  .cart-wrapper input[type="submit"], input[type="reset"] {
    margin-top:0.6em;
    padding: 0.3em 1.0em;
  }
  
  #orderForm  form input {
    padding:8px 16px;
    font-size:18px;
    max-width:100%;
  }
  
  #orderForm .orderformColumn {
    box-sizing: border-box;
    width: 100%;
    padding: 1% 0 1% 0;
    margin-bottom:5%;
  }
  
  .toimitustapa .toimitustapa-content {
    padding: 0.6em 1.0em 0.6em 1.0em;
  }
  
  .box-50 {
    width: 100%;
    margin: 20px 0 0px 0px;
    float: none;
    min-height: 50px;
  }
  
  input[type="submit"], input[type="reset"] {
    margin-bottom: 10px;
  }
  
}

@media only screen and (max-width: 767px) {
	
	.payment-selection-container {
		padding:15px 15px;
	}
	.payment-selection-container .payment-group-container label {
		width:46% !important;
		height:85px;
	}
	.payment-selection-container .payment-group-container label img {
		height:100% !important;
		width:auto !important;
		/*margin-left:-13px;*/
		margin-top:0px;
	}
}