*
{
	box-sizing: border-box;
}
body
{
	font-family: Montserrat;
	font-size: 20px;
	background-color: #f0f0f0;
	margin: 0;
	padding: 0;
	overflow-y: scroll;
}

h1
{
	text-transform: uppercase;
	padding: 0px 20px;
	font-size: 50px;
	margin-top: 60px;
}
h2
{
	text-transform: uppercase;
	margin-top: 0;
	font-size: 25px;
}
h3
{
	text-transform: uppercase;
	margin-top: 0;
	font-size: 25px;
	text-align: left;
	padding-left: 30px;
}

p
{
	text-align: center;
	margin-bottom: 0px;
	max-width: 90%;
	margin: 20px auto;
}

ul
{
	text-align: left;
	margin: 30px 50px;
}
li
{
	margin-bottom: 20px;
}

.justifytext
{
	text-align: justify;
	line-height: 1.5em;
}

a, a:visited
{
	color: #000099;
	text-decoration: none;
}
a:hover
{
	text-decoration: underline;
}

span
{
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}


/*** MENU ***/
#menu
{
	position: fixed;
	top: 0;
	left: 0;
	width: 300px;
	text-transform: uppercase;
	background-color: #ffffff;
	height: 100%;
	z-index:11;
	border-right: 1px solid #aaaaaa;
	overflow-y: auto;
}
#menu span
{
	display: block;
	padding: 20px;
	border-bottom: 1px solid #aaaaaa;
	background-color: #f7f7f7;
	transition: border 0.3s;
	border-left: 0px solid #aaaaaa;
	cursor: pointer;
}
#menu span:hover
{
	border-left: 20px solid #ff5555;
}
.menuheader
{
	background-color: #555555 !important;
	color: #ffffff;
}
.menuheader:hover
{
	border-left: 0 !important;
}
#menucategories
{
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.7s ease-in-out;
}
.menusmallbutton
{
	display: block;
	padding: 15px 50px !important;
	font-size: 18px;
	border-bottom: 1px solid #aaaaaa;
	text-transform: lowercase;
	background-color: #ffffff !important;
}
#menu a
{
	text-decoration: none;
	color: #000000;
}
#menu img
{
	width: 100%;
	padding: 30px;
	border-bottom: 1px solid #aaaaaa;
	display: block;
}

#basket
{
	position: fixed;
	top: 0;
	right: 0;
	width: 300px;
	background-color: #ffffff;
	height: 100%;
	border-left: 1px solid #aaaaaa;
	z-index: 10;
	overflow-y: auto;
}
#basket h2
{
	padding: 21px 20px 22px 20px;
	margin-bottom: 0;
}
#basket p
{
	text-align: left;
	padding-left: 20px;
}
.baskettable
{
	width: 100%;
	padding: 15px 10px;
	position: relative;
}
.baskettable tr td:nth-of-type(2)
{
	text-align: right;
}
.baskettable tr:nth-of-type(2) td:nth-of-type(2)
{
	color: #ff0000;
}
#basket table
{
	background-color: #e3e3e3;
}
#basket table:nth-of-type(2n+1)
{
	background-color: #ededed;
}
#basketfixed
{
	position: fixed;
	bottom: 0;
	right: 0;
	width: 100%;
	max-width: 299px;
}
#baskettot
{
	background-color: #cccccc !important;
	padding: 5px 20px 5px 12px;
}
#baskettot tr td:last-of-type
{
	color: #ff0000;
}
.basketbutton
{
	width: 299px;
	background-color: #5555ff;
	color: #ffffff;
	text-transform: uppercase;
	display: block;
	text-align: center;
	padding: 15px;
	font-size: 25px;
}
.basketbutton:hover
{
	background-color: #3333ff;
	text-decoration: none !important;
}
#basketfixed a:hover
{
	text-decoration: none;
}
.basketspace
{
	height: 100px;
}
.sidecartdelete
{
	position: absolute;
	right: 12px;
	top: 13px;
	float: right;
	display: block;
	width: 80px;
	text-align: center;
	background-color: #ffffff;
	color: #000000;
	font-size: 17px;
	border: 1px solid #cccccc;
	padding: 5px;
	cursor: pointer;
	border-radius: 10px;
    box-shadow: -2px -2px 10px 0px #cccccc inset;
}
.sidecartinput
{
	padding: 1px;
	width: 80px;
	text-align: center;
	padding-right: 5px;
}
#toolbar
{
	width: 100%;
	position: fixed;
	top: 0;
	background-color: #ffffff;
	padding-left: 300px;
	padding-right: 300px;
	z-index: 10;
	border-bottom: 1px solid #aaaaaa;
}
#toolbar span
{
	text-transform: uppercase;
	padding: 18px;
	display: inline-block;
	font-size: 30px;
	background-color: #dddddd;
	color: #000000;
	cursor: pointer;
}
#toolbar span:hover
{
	background-color: #cccccc;
}
#toolbar button
{
	height: 100%;
	display: inline-block;
	background-color: #dddddd;
	color: #000000;
	padding: 12px;
}
#toolbar button:hover
{
	background-color: #cccccc !important;
}
#toolbar form
{
	float: right;
	margin-top: 12px;
	margin-right: 10px;
	display: block;
}
#toolbar input
{
	width: 250px;
}

#mainpart
{
	padding-left: 300px;
	padding-right: 300px;
	padding-top: 70px;
	padding-bottom: 100px;
	display: block;
	position: relative;
	text-align: center;
}

.prodcatbutton
{
	width: 300px;
	height: 180px;
	margin: 20px;
	background-color: #aaaaaa;
	font-size: 35px;
	text-align: center;
	text-transform: uppercase;
	display: inline-block;
	background-size: cover;
	position: relative;
	/*border-radius: 50px;
	transform: skew(-7deg);*/
}
.greycatbutton
{
	padding: 70px 0 70px 0;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.5);
	display: block;
	color: #ffffff;
	text-shadow: 0px 0px 10px #000000;
	transition: background 0.3s, color 0.3s, text-shadow 0.3s;
	//border-radius: 50px;
}
.greycatbutton:hover
{
	background-color: rgba(255,255,255,0.7);
	color: #000000;
	text-shadow: 0px 0px 10px #ffffff;
}

#greybackground
{
	background-color: rgba(0,0,0,0.6);
	position: fixed;
	display: none;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	z-index: 70;
}
#login
{
	width: 500px;
	position: fixed;
	top: 50%;
	left:50%;
	margin-left: -250px;
	margin-top: -300px;
	background-color: #ffffff;
	display: none;
	padding: 50px;
	z-index: 100;
	padding-bottom: 30px;
}
#login form
{
	display: block;
}
#login input
{
	display: block;
	width: 100%;
}
#login button
{
	width: 100%;
	padding: 15px;
	text-transform: uppercase;
	font-size: 25px;
	margin-top: 30px;
	background-color: #5555ff;
	color: #ffffff;
	border-radius: 0;
	box-shadow: none;
}
#login a
{
	font-weight: bold;
}
#login h1
{
	text-align: center;
	margin: 0;
}
.loginerrorbox
{
	background-color: #ff5555;
	border: 3px solid #ff8888;
	padding: 15px;
	margin-top: 30px;
	margin-bottom: 30px;
	color: #ffffff;
}
.closebutton
{
	border-radius: 100%;
	background-color: #ff5555;
	color: #ffffff;
	position: absolute;
	top: -30px;
	right: -30px;
	text-align: center;
	width: 80px;
	height: 80px;
	font-size: 55px;
	font-weight: 300;
	padding-top: 2px;
	cursor: pointer;
}
label
{
	margin-top: 30px;
	//background-color: #999999;
	width: 100%;
	display: block;
	padding: 5px 3px;
	//color: #ffffff;
	text-align: left;
}
input
{
	padding: 15px;
	padding: 10px;
	font-family: inherit;
	font-size: inherit;
	border: 1px solid #aaaaaa;
	border-radius: 10px;
    box-shadow: -2px -2px 10px 0px #dddddd inset;
	outline: none;
}
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button
{  
   opacity: 1;
}
button
{
	padding: 10px;
	font-family: inherit;
	font-size: inherit;
	/*border: 0;
	background-color: #ffffff;
	border-radius: 10px;
    box-shadow: -2px -2px 10px 0px #cccccc inset;
	border: 1px solid #aaaaaa;*/
	
	border: 0;
    background-color: #ff5555;
    /* border-radius: 10px; */
    /* box-shadow: -2px -2px 10px 0px #cccccc inset; */
    /* border: 1px solid #aaaaaa; */
    color: #ffffff;
    text-transform: uppercase;
	cursor: pointer;
}
.deletebutton
{
	background-color: #ffffff;
	color: #000000;
	border: 1px solid #aaaaaa;
}
.deletebutton:hover
{
	background-color: #f7f7f7 !important;
}
hr
{
	color: #aaaaaa;
	background-color: #aaaaaa;
	border: 0;
	height: 1px;
}

/*** SÖKSIDA ***/
#cattabs
{
	margin: 0;
	text-align: center;
	background-color: #ff5555;
}
#cattabs span
{
	text-transform: uppercase;
	padding: 15px;
	font-size: 17px;
	display: inline-block;
	margin: 0;
}
#cattabs span:hover, #cattabs .activeavd
{
	background-color: #ff2222;
}
#cattabs a
{
	color: #ffffff;
}

#searchsettings
{
	background-color: #dddddd;
	padding: 10px;
	text-align: left;
}

.galleryprod
{
	display: inline-block;
	width: 300px;
	margin: 30px;
	background-color: #ffffff;
}
.galleryprod a:hover
{
	text-decoration: none;
}
.gallerypic
{
	width: 100%;
	height: 180px;
	background-size: cover;
	background-position: center center;
	position: relative;
}
.gallerypic span
{
	position: absolute;
	bottom: 0;
	right: 0;
	padding: 5px;
	background-color: #aaaaaa;
	font-size: 14px;
	color: #ffffff;
	text-transform: uppercase;
}
.galleryfav
{
	background-color: #dddddd;
	padding: 5px;
	display: block;
	text-transform: uppercase;
	font-size: 15px;
	cursor: pointer;
}
.galleryfav:hover
{
	background-color: #aaaaaa !important;
}
.gallerydesc
{
	padding: 20px;
	text-align: center;
}
.galleryname
{
	text-align: center;
	padding: 15px;
	background-color: #888888;
	color: #ffffff;
}
.galleryamount
{
	background-color: #dddddd;
	display: inline-block;
	width: 50%;
	padding: 5px;
	//height: 50px;
}
.galleryinput
{
	width: 50%;
	padding: 4px;
	text-align: center;
}
.gallerybutton
{
	display: inline-block;
	width: 50%;
	background-color: #ff5555 !important;
	color: #ffffff;
	padding: 10px;
	text-transform: uppercase;
	cursor: pointer;
	//height: 50px;
}
.gallerybutton:hover, .prodinfobutton:hover, button:hover
{
	background-color: #ff3333 !important;
}
.gallerybuttonbuy
{
	background-color: #cccccc;
}
.gallerybutton:hover
{
	background-color: #aaaaaa;
}

/**** PRODUKTSIDA ****/
.prodfav
{
	display: inline-block;
	padding: 20px;
	background-color: #dddddd;
	text-transform: uppercase;
	font-size: 20px;
	cursor: pointer;
	width: 260px;
}
.prodinfobild
{
	width: 90%;
	margin: 75px auto 0 auto;
	display: block;
}
.prodinfotable
{
	text-align: left;
	width: 90%;
	margin: 0 auto;
}
.prodinfotable td
{
	padding: 20px;
	background-color: #f7f7f7;
}
.prodinfotable tr td:first-of-type
{
	background-color: #555555;
	color: #ffffff;
	text-transform: uppercase;
	text-align: right;
}
.prodinfobutton
{
	background-color: #ff5555;
	padding: 10px;
	color: #ffffff;
	cursor: pointer;
	float: right;
	text-transform: uppercase;
}
.prodinfoinput
{
	width: 80px;
}
#addToLista
{
	position: absolute;
	left: 50%;
	display: none;
}

#addToListaButton, #addToLista span
{
	background-color: #dddddd;
	padding: 20px;
	display: inline-block;
	width: 260px;
	margin: 0px auto;
	text-transform: uppercase;
	cursor: pointer;
}
#addToLista span:nth-of-type(2n+1)
{
	background-color: #e7e7e7;
}
#addToLista a span
{
	color: #000000 !important;
	text-decoration: none;
}
#addToLista span:hover
{
	background-color: #ff9999;
}
#addToListaButton
{
	margin-top: 20px;
}
#addToListaButton:hover, .prodfav:hover
{
	background-color: #d5d5d5;
}

/*** FORMS ***/
select
{
	font-family: inherit;
	font-size: inherit;
	border: 1px solid #aaaaaa;
	padding: 10px;
	width: 250px;
	background-color: #ffffff;
	border-radius: 10px;
    box-shadow: -2px -2px 10px 0px #cccccc inset;
}

form
{
	display: inline-block;
}

/*** POPUP ***/
#amountbox
{
	background-color: #ffffff;
	padding: 30px;
	display: none;
	position: fixed;
	left: 50%;
	width: 300px;
	margin-left: -150px;
	z-index: 100;
	top: 50%;
	margin-top: -125px;
	text-align: center;
}
#amountbox input
{
	width: 50px;
	text-align: center;
	margin-bottom: 20px;
}
#amountbox button
{
	background-color: #cccccc;
}

/**** KASSA ****/
.kassabuttons
{
	clear: both;
}
.kassabutton
{
	display: inline-block;
	padding: 20px 40px;
	font-size: 25px;
	margin-top: 30px;
	text-transform: uppercase;
	background-color: #5555ff;
	cursor: pointer;
	color: #ffffff;
	border-radius: 0;
	box-shadow: none;
}
.kassabutton:hover
{
	background-color: #3333ff !important;
}
.kassabuttoninactive
{
	color: #888888;
	background-color: #bbbbbb;
	cursor: default;
}
.kassabuttoninactive:hover
{
	background-color: #bbbbbb;
}
.kassaform label,.kassaform input
{
	max-width: 350px;
	width: 100%;
	display: block;
	margin: 0 auto;
}

.kassaform input
{
	margin-bottom: 30px;
}
.tabortcol
{
	width: 129px !important;
	text-align: center;
}

#page2, #page3, #page4, #page5
{
	display: none;
}

.halfscreen
{
	width: 50%;
	float: left;
	min-width: 370px;
	margin: 0 auto;
	position: relative;
}

#betalningsform
{
	text-align: left;
	padding: 50px;
}
#betalningsform label
{
	background-color: transparent !important;
	color: #000000 !important;
	width: auto !important;
	display: inline-block;
	margin-bottom: 5px;
	font-size: 25px;
	cursor: pointer;
}
.newradio
{
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 13px;
	padding: 5px;
	background-color: #5555ff;
	border-radius: 100%;
	position: relative;
	cursor: pointer;
}
.newradiochecked
{
	display: inline-block;
	width: 10px;
	height: 10px;
	background-color: #ffffff;
	border-radius: 100%;
	position: absolute;
}
#kontokortsform select, #kontokortsform option
{
	width: 175px;
}
#kontantinfo, #internetbankinfo, #fakturainfo
{
	display: none;
}

#wizard span
{
	display: inline-block;
	width: 25%;
	padding: 30px;
	background-color: #bbbbbb;
	text-transform: uppercase;
	color: #555555;
}
.aktivwizard
{
	background-color: #ff5555 !important;
	color: #ffffff !important;
}

/**** TABLES ****/
table
{
	margin: 0 auto;
}
.listortable
{
	margin: 0 auto;
	width: 90%;
	text-align: left;
}
.listortable tr
{
	background-color: #dddddd;
}
.listortable tr:nth-of-type(2n)
{
	background-color: #e5e5e5;
}
.listortable td
{
	padding: 15px;
}
.listortable tr td:last-of-type
{
	text-align: right;
	width: 357px;
}
.listortable tr td:last-of-type button
{
	font-size: 16px;
}
.listortable img
{
	width: 100%;
	margin-bottom: -7px;
}
.imgtd
{
	width: 150px;
	padding: 0 !important;
}

.finalbaskettable tr:last-of-type,.finalbaskettable tr:first-of-type
{
	background-color: #bbbbbb;
	text-transform: uppercase;
}
.finalbaskettable tr td:nth-of-type(5), .finalprice
{
	text-align: right;
}
.finalbaskettable tr:last-of-type
{
	font-size: 30px;
}
.finalbaskettable tr:last-of-type td
{
	padding: 20px;
}
.basketinput
{
	width: 90px;
	text-align: center;
	padding: 5px;
}

.leveranstable
{
	margin: 20px auto 40px auto;
}
.leveranstable td
{
	border: 1px solid #555555;
	padding: 5px;
	width: 60px;
	background-color: #cccccc;
	position: relative;
}
.leveranstable th
{
	padding: 5px;
}
.available
{
	background-color: #66ee66;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	cursor: pointer;
}
.available:hover
{
	background-color: #77ff77 !important;
}

/**** OTHER ****/
.smallbutton
{
	position: absolute;
	top: 95px;
	right: 370px;
	background-color: #5555ff;
	cursor: pointer;
	color: #ffffff;
	padding: 10px;
	text-transform: uppercase;
	font-size: 16px;
	z-index: 2;
	//border-radius: 10px;
    //box-shadow: -2px -2px 10px 0px #333333 inset;
}
.smallbutton:hover
{
	background-color: #3333ff;
}
.bakatbutton
{
	right: 333px;
}

#valdtid
{
	font-size: 25px;
}
.inputerrorlabel
{
	margin: -30px 30px;
	padding-bottom: 60px;
	color: #dd0000;
	display: block;
}
.successbox
{
	background-color: #66ee66;
	border: 3px solid #33cc33;
	padding: 20px;
	width: 50%;
	margin-bottom: 45px;
}
.rightimg
{
	float: right;
	width: 400px;
	margin: 0 30px 30px 30px;
}
.nodisplay
{
	display: none !important;
}

.inputhint
{
	font-size: 14px;
	margin-top: -22px;
	margin-bottom: 25px;
}

#messageresponse
{
	width: 400px;
	background-color: #66ee66;
	border: 3px solid #33cc33;
	padding: 20px;
	text-align: center;
	position: fixed;
	right: 370px;
	margin-left: -200px;
	bottom: 50px;
	z-index: 80;
	font-size: 18px;
	transition: opacity 2s ease-out;
	display: none;
}