﻿/* Copyright 2023 BosscoGames.com */
html{
	font-size: 16px; /*default size for normal text, is 16px=1em */
	/* see @media, font-size: calc([minimum size] + ([maximum size] - [minimum size]) * ((100vw - [minimum viewport width]) / ([maximum viewport width] - [minimum viewport width])));*/
	/*  default line height is 20% larger than the font size, line-height: 1.2em;*/
	font-family: "Trebuchet MS", Arial, Helvetica, sans-serif; 
	color: #a0abab;
}
body {background-color: #212c2c;} /* 15% dark green w3 color picker */
a {text-decoration:none; color: white;}
a:hover {background-color:#d64e0e;} /* 45% light orange w3 color picker */
h1, h2, h3, h4, h5, h6 {color: #e0e0e0;} /* default font-weight: bold; */
h1{text-align: center}  
h2{font-size:1.375em;}  
i{margin:5px;}
img {max-width: 100%; height: auto;}
 hr {
	border: 0;
    height: 1px;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(241, 103, 39, 1), rgba(0, 0, 0, 0)); /* 55% light orange w3 color picker */
 }

#footer { 
	background-color:#2c3a3a; /* 20% dark green w3 color picker */
	padding: 20px;
	margin: 10px;
	text-align: center;
	min-height: 30px;
	display:flex;
	flex: 0 0 auto;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
#footer p {margin: 10px; display: inline-block;}
#footer span {margin: 5px;}

@media print{ .no-print, .no-print * { display: none !important;}}

/* TOP NAVIGATION: w3 Responsive Top Navigation */
.topnav {
	margin-top: 25px;
	margin-bottom: 25px;
	margin-right:25px;
	position: static;
	width: 100%;
	display: block; /*inline-block: Inline elements automatically take the size of the content it contains.*/
}
.topnav a, .nav a{
	font-size: 18px;	
	display: inline-block; /*whole link area clickable,not just the text and it allows us to specify padding and margins */
	padding: 5px 10px;
	/* text-decoration:none;  */
	/* color: white; 	 */
}
#logo, #logo img{ 
	/* display:inline-block; not need because of topnav a*/
	vertical-align: middle;/*not impact because of float or block*/
	padding: 0px 1px;
	height:30px;
}
.topnav .icon {display: none;}
.nav {
	display:inline-block;/*inline-block*/
	float: right;
}
.nav a:hover, .dropdown-btn:hover,.dropdown-content a:hover{
	background-color:#d64e0e; /*45% light orange w3 color picker*/
}

.dropdown {/* The dropdown container like <div> to create the dropdown menu and add the dropdown links inside it */
	display: inline-block;/* horizontal orientation line up nicely, float: left;overflow: hidden;  */
}
.dropdown-btn {/* Dropdown button, Use any element to open the dropdown menu, <button>, <a> or <p> element.*/
  border: none;
  outline: none;
  color: white;
  font-size: 18px;
  padding: 5px 10px;
  background-color: inherit;
  font-family: inherit; /* Important for vertical align on mobile phones */
  margin: 0; /* Important for vertical align on mobile phones */
}
.dropdown-content { /* Dropdown content, hidden by default */
  display: none;
  position: absolute;
  background-color: #2c3a3a; /* 20% dark green w3 color picker */
  /* color: white; */
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  z-index: 1;
}
.dropdown-content a { /* Links inside the dropdown */
  float: none;
  padding: 5px 10px;
  text-decoration: none;
  display: block;
  text-align: left;
}
.dropdown:hover .dropdown-content { /* Show the dropdown menu on hover */
	display: block;
}

.go-top{
  color:#f16727;
  border: 2px solid #212c2c;
  width: 30px;
  height: 30px;
  line-height: 30px! important;/*override fa class line-height=1 */
  text-align: center;
  display: inline-block;
  font-size:1.5em;
}

/* Cookies */
#cookies { /* comply with the EU Cookie Law: This website is using cookies. */
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 15px;
  background: #2c3a3a; /* 20% dark green w3 color picker */
  z-index: 100;
  border-top: 1px solid #f16727; /* 55% light orange w3 color picker */ 
  }   
#cookies.hide {display: none; }
#cookies a {
   text-decoration: underline; 
	/* color: white; */
}
#cookiesClose {
    float: right;
    display: inline-block;
    cursor: pointer;
    margin: -10px 0 0 0;
    font-weight: bold;
}
#cookiesClose:hover {
    background-color:#d64e0e;
}
 a#cookiesOK {
    text-decoration:none;
	background-color: #ffe41a;
    color: #000;
    display: inline-block;
    border-radius: 5px;
    padding: 0 20px;
    cursor: pointer;
    float: right;
    margin: 0 10px 0 10px;
}
 a#cookiesOK:hover {
    background-color: #ccb400;
}

/* CLASSES */
@keyframes slideInFromLeft {
    0% {transform: translateX(-100%);}
    100% {transform: translateX(0);}
}
@keyframes slideInFromRight {
    0% {transform: translateX(100%);}
    100% {transform: translateX(0);}
}
@keyframes fadeIn {
  from {opacity: 0;}
  to {opacity:1 ;}
}
@keyframes fadeOut {
  from {opacity: 1;}
  to {opacity:0 ;}
}
.anim-left{animation: 1s ease-out 0s 1 slideInFromLeft;} /* duration 1sec,type,delay 0s, repeat 1time,func */
.anim-right{animation: 1s ease-out 0s 1 slideInFromRight;} /* duration 1sec,type,delay 0s, repeat 1time,func */
.anim-fadeIn{animation: fadeIn 3s;}
.anim-fadeOut{animation: fadeOut 3s;}

.headline, .feature, .shop {  
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch; /* stretch the flex items to fill the container (this is default);center; */
  margin-bottom: 50px;
  /* background-color: DodgerBlue; debug */
}
.feature > div{ /* child def for parent>child */
	display: flex;
	flex-direction: column; /* multi column in 1 row */
	flex: 1 1 0%;     
	width: 240px;
	min-width: 240px;
	max-width: 100%;
	height: auto;
	padding: 20px;
	margin: 10px;
	text-align: left;
	font-size:16px;
	border-top: 1px solid #f16727; /* 55% light orange w3 color picker */
	background-color:#2c3a3a; /* 20% dark green w3 color picker */
	/* background-color: #ddd; debug*/
}
.feature h3,.feature p{margin: 0 0 20px 0;}  
.headline > div{/*child def for parent>child*/
	flex: 40%; /* 0 1 40% of the flex-container, max 2 div in 1 row*/   
	padding: 15px;
	margin: 10px;
	/*text-align: center;*/
	/* background-color: #ddd; debug*/
}
.shop > div{/*child def for parent>child*/
	flex: 40%; /* 0 1 40% of the flex-container, max 2 div in 1 row*/   
	padding: 15px;
	margin: 10px;
	text-align: center;
	/* background-color: #ddd; debug*/
}
.headline-txt{
	padding: 15px;
	margin: 10px;
	border-top: 1px solid #f16727; /* 55% light orange w3 color picker */
	background-color:#2c3a3a; /* 20% dark green w3 color picker */
}
.headline-txt .infoTxt, .feature .infoTxt{
	display: inline-block;
	max-width:fit-content;
	margin: 5px 1px;
	padding: 10px 30px;
	font-weight: bold;
	background-color:#d64e0e;
	color: white;
}
.headline-txt a, .feature a{
	margin: 5px 5px;
	padding: 10px 10px;
	display: inline-block;
}
.headline-txt li a, .feature li a{
	padding: 0;
}
.headline-txt .info, .feature .info {
	border: 1px solid white;	
}
.headline-txt .buy, .feature .buy{
	border: 1px solid white;
	background-color:#f16727; /* 55% light orange w3 color picker */
}	
.headline-txt a.info:hover, .headline-txt a.buy:hover,
.headline-txt li a:hover, .feature li a:hover,
.feature a.info:hover, .feature a.buy:hover {background-color:#d64e0e;} /* 45% light orange w3 color picker */

.txtOverImgContainer {
  position: relative;
  text-align: center;
  color: white;
}
.txtOverImg-centered {/*w3 Position Text Over an Image*/
  position: absolute; /*it is positioned absolutely to the ancestor with position:relative and not the parent, if parent does not have position:relative*/
  top: 20%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}

.imgContainer {/*w3 tabbed image gallery, nm fix with w3 flex container*/
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  cursor: pointer;
}
.imgHolder{
  float: left;
  padding: 3px;
}
img.thumbnail1 {max-width: 100px; height: auto; transition: 0.3s;}
img.thumbnail1:hover {opacity: 0.7;}
img.thumbnail {max-width: 100px; height: auto; border-radius: 5px; border: 2px solid #2c3a3a; transition: 0.3s;}
img.thumbnail:hover {opacity: 0.7;}
img.thumbnail.active {border: 2px solid #d64e0e;}

#expandedImg{width:100%;cursor: pointer;transition: 0.3s;}
#expandedImg:hover {opacity: 0.7;}
.modal_bg {
  display: none; /* Hidden by default, js set block */
  position: fixed; /* Stay in place */
  left: 0;
  top: 0;
  width: 100%; 
  height: 100%;
  opacity: 0.8; /*must be alone for opacity*/  
  background-color: #030303; /* 1% black w3 color picker */
}
.modal {
  display: none;  /* Hidden by default, js set inline-block */
  position: fixed; /* Stay in place */
  z-index: 1;  /* Sit on top */
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: auto; 
  overflow: auto; /* Enable scroll if needed */
  background-color: #161d1d; /* 10% dark green w3 color picker */
  padding: 10px;
  animation: fadeIn;
  animation-duration: 1s;
}
.modal_contentWrap {
  position: relative;
  
}
.modal_content {
  display: block;
  max-width: 90vw;
  max-height: 90vh;
  cursor: pointer;
}
#modal_caption {
  margin: auto;
  display: block;
  /padding: 10px 0;*/
  text-align: center;
  color: #ccc;
  }
.prev,
.next {
  cursor: pointer;/* w3 Lightbox*/
  position: absolute;
  top: 50%;
  width: auto;
  padding: 16px;
  margin-top: -50px;
  color: white;
  font-weight: bold;
  font-size: 20px;
  background-color: rgba(0, 0, 0, 0.8);
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
  -webkit-user-select: none;
}
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* Media queries - CSS for tablets and narrower devices */
@media screen and (max-width: 320px) {/*20em=320px*/
	html { 
	font-size: calc(14px + 8 * ((100vw - 320px) / 960));
	}
	p {line-height: calc(1.2em + 0.6 * ((100vw - 20em) / 60));}/*not good for heading*/
	.feature > div{
		width: auto;
		min-width: auto;
		font-size: 1em;
	}
	h1{font-size:2em;}/*32px*/
	h2{font-size:1.5em;}/*24px*/
}
@media screen and (max-width: 768px){
	.debug, .debug body{background:none!important;}
	
	.txtOverImg-centered{transform: translate(-50%, -10%);}/*keep it inside containter*/
	.nav a, .dropdown {display: none;}
	.topnav a.icon {
		float: right;
		display: block;
	}
	/* The "responsive" class is added to the topnav with JavaScript when the user clicks on the icon.*/
	.topnav.responsive {
		/*display: inline-block; Inline elements automatically take the size of the content it contains.*/
		width:100%; /*take whole view, without it will take min width of inner content*/
		position: relative;
		overflow-x: hidden;
		overflow-y: hidden;
	}
	.nav.responsive {
		width: 100%;
		float: left;
		position: relative;
	}
	.nav.responsive a.icon {
		position: absolute;
		right: 0;
		top: 0;
	}
	.nav.responsive a, .dropdown.responsive {
		float: none;
		display: block; /*vertical orientation*/
		text-align: left;
	}
	.dropdown.responsive .dropdown-content {/* Show the dropdown menu on hover */
		display: none;
		position: relative;
	}
	.dropdown.responsive:hover .dropdown-content {/* Show the dropdown menu on hover */
		display: block;
	}

}

/*@media screen and (min-width: 1280px) {80em=1280px
	html { font-size: 22px;}
	line-height: 1.8em;
}*/