@font-face {
    font-family: 'Gill';
    src: url('fonts/GillSans.otf');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'Gill Bold';
    src: url('fonts/GillSans-Bold.otf');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Gill';
    src: url('fonts/GillSans-Italic.otf');
    font-weight: bold;
    font-style: italic;
}
@font-face {
    font-family: 'Gill Bold';
    src: url('fonts/GillSans-BoldItalic.otf');
    font-weight: normal;
    font-style: italic;
}
@font-face {
    font-family: 'Gill';
    src: url('fonts/GillSans-Light.otf');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Gill';
    src: url('fonts/GillSans-LightItalic.otf');
    font-weight: normal;
    font-style: italic;
}

:root {
	--bgc00: rgb(225, 231, 234);
	--bgc0: rgb(211, 219, 223);
	--bgc1: rgb(144, 164, 175);
	--bgc2: rgb(80,100,111);
	--bgc2a: rgba(80,100,111,0.15);
	--bgc3: rgb(32, 40, 44);
	--text: rgb(140,198,63);
}

* {
	font-family: Gill, sans-serif;
}

strong, b b {
	font-family: 'Gill Bold';
	font-weight: normal;
}

body {
	margin: 0px;
	background-color: var(--bgc2); 
}

/* CONTAINER ELEMENTS */

div.content {
	width: calc(100% - 210px);
	margin: 40px 20px 12px 190px;
	padding-bottom: 12px;
}

div.headwrapper {
	width: 100%; 
	margin: 0; 
	height: 70px; 
	position: relative; 
	top:0;
	z-index: 9999;
}

div.logocontainer {
	width: 129px; 
	padding: 20px; 
	float: left; 
	height: 70px;
	position: absolute;
	z-index: 1;
}

div.menupadscontainer {
	width: calc(100% - 159px);
	background-color: rgb(51,78,99); 
	height: 100%; 
	padding-left: 159px;
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	position: absolute;
}

div.textcontainer {
	width: 36%; 
	position: fixed; 
	left: 0; 
	top: 145px; 
	bottom: 0;
	padding: 0 0 0 60px; 
	box-sizing: border-box;
	overflow-y: auto;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none;  /* IE 10+ */
}
.disable-scrollbars::-webkit-scrollbar {
    width: 0px;
    background: transparent; /* Chrome/Safari/Webkit */
}

div.thumbcontainer {
	padding: 79px 60px 0 10px; 
	width: 60%; 
	box-sizing: border-box; 
	position: fixed; 
	top: 70px; 
	left: 40%; 
	bottom: 0; 
	overflow-y: auto; 
	display: flex; 
	flex-flow: row wrap; 
	justify-content: space-between; 
	align-items: center; 
	align-content: flex-start;
	scrollbar-width: thin; /* Firefox */
	-ms-overflow-style: thin;  /* IE 10+ */
}
.thumbscontainer::-webkit-scrollbar {
    width: 6px;
    background: transparent; /* Chrome/Safari/Webkit */
}

div.captcontainer {
	width: 40%;
	padding: 0 3px 0 0; 
	box-sizing: border-box;
	text-align: right;
	position: fixed;
	top: 4.0vw;
	bottom: 0;
	left: 0;
	overflow-x: visible;
	overflow-y: auto;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none;  /* IE 10+ */
}

div.bigimage {
	padding: 0 5% 80px 0; 
	width: 55%;
	box-sizing: border-box; 
	text-align: left;
	position: fixed;
	top: 4.32vw;
	bottom: 0;
	right: 0;
}

div.captcontainer p {
	margin: 0 0 0 20px;
}

div.captcontainer div.description, div.captcontainer div.sizebox {
	min-height: 8.06vw;
	margin-top: 1.44vw;
}

div.captcontainer div.notes {
	min-height: 5.376vw;
	margin-top: 1.44vw;
}

div.bigimage img {
	max-height: 100%;
	max-width: 100%;
	position: relative;
}

/* TEXT ELEMENTS*/

p {
	font-size: 1.2vw;
	padding: 0 0 0 0;
	margin: 1.44vw 0 0 0;
	line-height: 120%;
	color: var(--text)
}

p.first, p:first-child, img.edimg + p {
	margin-top: 0;
}

p a {
	color: var(--bgc0);
	text-decoration: none;
}

h1 {
	font-size: 27px;
	line-height: 36px;
	font-weight: normal ;
	text-align: left;
	margin: 4px 0 0 0;
	color: var(--text);
	letter-spacing: 2px;
}

h2 {
	font-size: 1.6vw;
	line-height: 1.8vw;
	font-weight: normal;
	text-align: left;
	margin: 0px 0 9px 0x;
	color: var(--text);
}


h3 {
	font-size: 2.24vw;
	color: var(--text);
	line-height: 110%;
	font-weight: normal;
	display:block;
	margin: 0;
}

h3 a {
	color: var(--bgc0);
	text-decoration: none;	
}

h4 {
	font-size: 1.64vw;
	color: var(--text);
	line-height: 110%;
	font-weight: normal;
	display:block;
	width: 100%;
	margin: 0;
}

div.textcontainer h3, div.textcontainer h4 {
	text-align: right;
}

h5 {
	color: var(--text);
	font-size: 19px;
	line-height: 24px;
	margin: 0;
	font-weight: bold;
}

p.menu, div.menu {
	font-size: 1.4vw;
	letter-spacing: 1px;
	display: inline-block;
	text-align: left;
	height: 54px;
/*	padding: 20px 7% 0 1%; */
	padding: 20px 0 0 0;
	margin: 0;
	box-sizing: border-box;
}

div.menu {
	padding-top: 25px;
	padding-bottom: 7px;
    cursor: pointer;
	width: 25%;
}

p.menu a, div.menu a {
    text-decoration : none;
    border: none;
}

p.menu a:link, p.menu a:visited, div.menu a:link, div.menu a:visited {
    color : var(--text);
}

p.menu a:hover, p.menu a:active, div.menu a:hover, div.menu a:active {
    color: var(--bgc0);
}

div.indsubmenu {
	padding: 0; 
	position: absolute; 
	top: 54px; 
	left: 0;
	display: block;
	visibility: hidden; 
	width: 0;
	z-index: 1100; 
	box-sizing: border-box;
	clear: left;
}

div.menu:hover div.indsubmenu {
	visibility: visible;
}

p.index {
	display: block;
	width: 163px;
	margin: 0;
	background-color: var(--bgc00); 
}

p.index a {
	display: block;
	text-decoration: none;
	color: black;
	padding: 8px;
	overflow: hidden; 
}

p.index a:hover {
	display: block;
	background-color: var(--bgc0);
	
}

div.textcontainer p {
	text-align: justify;
}

/* OBJECTS */

div.thumbcontainer img {
	margin: 0 10px 20px 10px;
	max-width: 250px;
	max-height: 250px;
}


/* FORM ELEMENTS */
div.basketitem {
	width: 100%;
	padding: 5px 0;
	border-bottom: 1px solid var(--bgc0);
	overflow: hidden;
}

div.basketimage {
	width: 12%;
	overflow: hidden;
	margin: 0 3% 0 0;
	float: left;
}

div.basketimage img {
	max-width: 100%;
	max-height: 100px;
}

p.shtitle {
	float: left;
	width: 50%;
	display: block;
	margin: 0;
}

div.basketimage + p.shtitle {
	width: 35%;
}

p.shup {
	float: left;
	width: 12%;
	display: block;
	margin: 0;
	text-align: right;
}

p.shqt {
	float: left;
	width: 12%;
	display: block;
	margin: 0;
	text-align: right;
}

p.shitot {
	float: left;
	width: 12%;
	display: block;
	margin: 0;
	text-align: right;
}

p.shpost {
	float: left;
	width: 74%;
	font-size: 12px;
	line-height: 18px;
	margin: 0;
}

p.remove {
	float: right;
	font-weight: bold;
	padding: 2px;
	display: block;
	color: var(--bgc2);
	margin: 0 40px 0 6px;
	cursor: pointer;
	background-color: var(--bgc0);
}

form#cart {
	padding-top: 3px;
}



label {
	width: 136px;
	display: inline-block;
	margin: 22px 4px 0 0;
	color: var(--text);
	vertical-align: top;
}

form#cart label {
	float: left;
	width: 140px;
	min-width: 100px;
	display: block;
	margin: 19px 0 3px 0;
	padding: 2px 0;
	clear: left;
	font-size: 17px;
	line-height: 17px;
	box-sizing: border-box;
}
input[type="text"], textarea, input[type="number"], input[type="password"] {
	margin: 16px 0 0 0;
	font-size: 17px;
	width: calc(100% - 140px);
	border: 1px solid var(--bgc1);
	box-sizing: border-box;
	padding: 3px 1px;
	background-color: var(--bgc00);
}

input[type="submit"], button {
	font-size: 1.2vw;
	color: var(--text);
	line-height: 120%;
	border-width: 0;
	padding: 7px 0;
	box-shadow: -2px -2px 2px rgba(255, 255, 255, 0.2), 2px 2px 2px rgba(0, 0, 0, 0.3) ;
	margin-top: 20px;
	cursor: pointer;
	background-color: inherit;
	border-radius: 3px;
	
}

input[type="submit"]:hover, button:hover {
	box-shadow: -2px -2px 2px rgba(0, 0, 0, 0.3), 2px 2px 2px rgba(255, 255, 255, 0.2);
}

input[type="file"] {
	margin: 22px 0 0 0;
}

input[type="checkbox"] {
	margin: 0;
	border: 1px solid var(--bgc1);
	box-sizing: border-box;
}

select {
	margin: 16px 0 0 0;
	font-size: 17px;
	width: 300px;
	border: 1px solid var(--bgc1);
	box-sizing: border-box;
	height: 27px;
	padding: 1px;
	background-color: var(--bgc00);
}

textarea {
	height: 120px;
}

textarea.blurb {
	height: 200px;
	width: calc(100% - 140px);
	display: inline-block;
	box-sizing: border-box;
	padding: 2px;
}
span.pos {
	display: inline-block;
    height: 100%;
    vertical-align: middle;
}

div.textcontainer img {
	width: 26%;
	min-width: 150px;
	margin: 1.4vw 0 0 0;
	float: left;
}

div.textcontainer img.img_f_left {
	float: left; 
	margin: 0 10px 0 0; 
	height: 5.42vw; 
	width: auto; 
	min-width: 0; 
	min-height: 73px;
}

div.textcontainer img.img_f_right {
	float: right; 
	margin: 0 0 0 10px; 
	height: 5.42vw; 
	width: auto; 
	min-width: 0; 
	min-height: 73px;
}

@media screen and (min-width: 1670px) {
	p, button {
		font-size: 20px;
	}
	h3 {
		font-size: 37px;
	}
	h4 {
		font-size: 27px;
	}
}

@media screen and (max-width: 1333px) {
	p, button {
		font-size: 16px;
	}
	h3 {
		font-size: 30px;
	}
	h4 {
		font-size: 23px;
	}
	div.headwrapper {
		height: 5.25vw;
	}
	div.logocontainer {
		height: 5.25vw;
		width: 9.677vw;
		padding-top: 1.5vw;
	}
	div.logocontainer img {
		width: 100%;
	}
	div.thumbcontainer {
		top: 5.25vw;
	}
	div.menupadscontainer {
		width: calc(90.323vw - 40px);
		padding-left: calc(9.677vw + 40px);
	}
	div.content {
		margin: 3vw 9px 0 14.2vw;
	}
}

@media screen and (max-width: 850px) {
	p.menu {
		font-size: 13px;
		padding: 1.5vw 4% 0 0;
	}
	div.content {
		margin: 12vw 9px 0 9px;
		width: calc(100% - 18px);
	}
}

@media screen and (max-width: 550px) {
	p.menu#contact {
		display: none;
	}
	
	div.textcontainer {
		width: 40%;
		padding-left: 7px;
	}
	div.thumbcontainer {
		padding-right: 12px;
		box-sizing: border-box;
		display: block;
	}
	div.thumbcontainer img {
		max-width: 100%;
	}
}
@media screen and (max-width: 460px) {
	p.menu {
		width: 100%;
		height: auto;
		padding: 10px 0;
	}
	div.menupadscontainer {
		height: auto;
		display: block;
		position: relative;
	}
	div.headwrapper {
		height: auto;
	}
	div.textcontainer {
		width: 100%;
		padding: 7px;
		position: relative;
		top: 0;
	}
	div.thumbcontainer {
		width: 100%;
		position: relative;
		top: 0;
		left: 0;
		padding: 7px;
		box-sizing: border-box;
	}
	div.thumbcontainer img {
		margin: 0 0 7px 0;
	}
}

