.marginedLine{
	margin-left: 10vmin;
	margin-right: 10vmin;
	position: relative;
	padding-bottom: 1px;
	/* height: 2vh; */
	/* padding-bottom: 1vh; */
}

.discountResponse{
	position: absolute;
	bottom: 0px;
	right: 0px;
	color: #555;
	font-size: 1.5vh;
	margin-bottom: 0.2vh;
	font-style: italic;
}

.loader {
		position: absolute;
    top: 0px;
    right: 0px;
		margin-left: 10vmin;
		width: 2vh;
		aspect-ratio: 1;
		display:grid;
		-webkit-mask: conic-gradient(from 15deg,#0000,#000);
		animation: l26 1s infinite steps(12);
	}
	.loader,
	.loader:before,
	.loader:after{
		background:radial-gradient(closest-side at 50% 12.5%,#f03355 96%,#0000) 50% 0/5% 80% repeat-y,radial-gradient(closest-side at 12.5% 50%,
		 #f03355 96%,#0000) 0 50%/80% 5% repeat-x;
	}
	.loader:before,
	.loader:after {
	content: "";
	grid-area: 1/1;
	transform: rotate(30deg);
	}
	.loader:after {
	transform: rotate(60deg);
	}

	@keyframes l26 {
	100% {transform:rotate(1turn)}
	}


@font-face {
	font-family: ibm;
	src: url(fonts/IBMPlexMono-Medium.ttf);
	}

@font-face {
	font-family: ibm;
	src: url(fonts/IBMPlexMono-SemiBold.ttf);
	font-weight: 600;
	}

@font-face {
	font-family: ibm;
	src: url(fonts/IBMPlexMono-Regular.ttf);
	font-weight: 400;
	}

@font-face {
	font-family: ibm;
	src: url(fonts/IBMPlexMono-Bold.ttf);
	font-weight: bold;
	}

@font-face {
	font-family: ibm;
	src: url(fonts/IBMPlexMono-Light.ttf);
	font-weight: 300;
	}

.redText{
	color: #ff0d00;
}

input {
  width: 100%;
  margin-bottom: 3vh;
  border: 0;
  border-bottom: 1px solid #111;
  outline: 0;
  color: #111;
  font-family: ibm;
  font-size: 2vh;
  /*  padding: 7px 0;*/
  background: transparent;
  transition: border-color 0.2s;
  /*  margin: 10%;*/
}


a{
		text-decoration: underline;
		color: #232323;
	}

a:hover {
  color: #f00;
}


html {
	scroll-behavior: smooth;
}

body {
	/*	background-color: #CBCBCB;*/
	background-color: #cacaca;
	color: #000;
	font-family: ibm;
	position: relative;
	text-decoration: none;
	font-size: 2vh;
	font-weight: 400;
	margin: 0;
	padding: 0;
	-ms-overflow-style: none;
	scrollbar-width: none;
	}

body::-webkit-scrollbar { 
	display: none;  /* Safari and Chrome */
}


button {
  align-items: normal;
  background-color: rgba(0,0,0,0);
  border-color: rgb(0, 0, 238);
  border-style: none;
  box-sizing: content-box;
 	color: #000;
  cursor: pointer;
  display: inline;
  font: inherit;
  height: auto;
  padding: 0;
  perspective-origin: 0 0;
  text-align: start;
  text-decoration: underline;
  transform-origin: 0 0;
  width: auto;
  -moz-appearance: none;
  -webkit-logical-height: 1em; /* Chrome ignores auto, so we have to use this hack to set the correct height  */
  -webkit-logical-width: auto; /* Chrome ignores auto, but here for completeness */
}

/* Mozilla uses a pseudo-element to show focus on buttons, */
/* but anchors are highlighted via the focus pseudo-class. */

@supports (-moz-appearance:none) { /* Mozilla-only */
  button::-moz-focus-inner { /* reset any predefined properties */ 
    border: none;
    padding: 0;
  }
  button:focus { /* add outline to focus pseudo-class */
    outline-style: dotted;
    outline-width: 1px;
  }
}





option {
	color: #000;
	background-color: transparent;
}




/*==========DOT============*/

#dotParent{
	margin: 1.25em;
	display: flex;
	flex-direction:column;
	position: fixed;
	right: 0px;
	top: 0px;
	align-content: flex-end;
	z-index: 10;
	pointer-events: none; 

}

.redDot {
	height: 2em;
	width: 2em;
	margin: 0px;
	padding: 0px;
	background-color: #f00;
	border-radius: 50%;
	display: inline-block;
	cursor:pointer;
	pointer-events: auto; 
	vertical-align: bottom;

}

.topMenu{
	margin-right: 1.3vw;
	text-decoration: none;
}

.footerLink{
	color: #8a8a8a;
	margin-right: 2vw;
	font-size: 0.8em;
}



.blackDot {
	height: 6vmax;
	width: 6vmax;
	margin: 1vmax;
	padding: 0px;
	background-color: #000;
	border-radius: 50%;
	display: inline-block;
	cursor:pointer;
	pointer-events: auto; 

}



/*===========END DOT============*/

.checkoutBtn {
	margin-top: 0.5vh;
	margin-left: 0px;
	margin-bottom: 0vh;
	color: #ddd;
	border: 2px solid #f00;
	width: 20vh;
	height: 6vh;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	font-size: 1.4em;
	background-color: #ff1000;
}
.checkoutBtn:hover {
  background-color: #ff1000; 
  border: 2px solid #ff1000;
  color: white;
}

.buyButton {
	margin: 2vh;
	color: #f00;
	border: 2px solid #f00;
	width: 15vh;
	height: 6vh;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	font-size: 1.4em;
}
.buyButton:hover {
  background-color: #ff1000; 
  border: 2px solid #ff1000;
  color: white;
}

.tryButton {margin: 2vh;color: #222;border: 2px solid #222;width: 15vh;height: 6vh;text-align: center;text-decoration: none;display: inline-block;font-size: 1.4em;}
.tryButton:hover {
  background-color: #333; 
  border: 2px solid #333;
  color: white;
}


.horizontalBlock{
	position: relative;
	width: 100%;
	padding: 0px;
	display: block;
	overflow: auto;
}

.fullScreenBlock{
	position: relative;
	width: 100%;
	height: 100vh;
	padding: 0px;
	z-index: 10;
	display: block;
	overflow: hidden;
}

	.fullScreenBlock img {

		width: 100.1vw;
		height: 100.1vh;
		object-fit: cover;
		z-index: 10;
	}

	

	.fullScreenBlock .respItem{
		position: absolute;
		top: 0px;
		z-index: 20;
	}

.rightBlock{
	position: relative;
	text-align: right;
	z-index: 40;
	display: block;
	margin-right: 10vmin;

}

.leftBlock{
	position: relative;
	text-align: left;
	z-index: 40;
	display: block;
	margin-left: 10vmin;
/*	v2*/
	margin-right: 10vmin;
	padding-right: 0px;
}


.respItem{
	
	padding: 0px;
	margin:0px;
	z-index: 40;
	display: block;

}
	h1 {
		font-weight: 600;
		font-size: 2em;
		padding-right: 9.8vmin;
		margin-left: 9.8vmin;
		line-height: 1.2em;
	}

	h2 {
		font-weight: 600;
		font-size: 1.5em;
		/*padding-right: 9.8vmin;
		margin-left: 9.8vmin;*/
	}
	h3 {
		font-weight: 600;
		font-size: 1.3em;
		/*padding-right: 9.8vmin;
		margin-left: 9.8vmin;*/
	}

	p {
		line-height: 2.5vh;
		margin-left: 10vmin;
		margin-right: 10vmin;
		margin-block-start: 0px;
		margin-block-end: 1.5vmin;
		text-decoration: none;

/*		line-height: normal;*/
	}







.menuItem {

	pointer-events: none; 
	margin:0px;
	padding: 0px;
	text-align: right;
	color: #000;
	font-family: ibm;
	font-size: 3vh;
}



.link{
	padding: 0px;
	border: none;
	border-radius: 0px;
	margin: 0px;
	color: #000;
	font-family: ibm;
	text-decoration: none;
	pointer-events: auto; 
}

.link:hover{
	color: #000;
}



.p1{
	font-weight: 600;
	font-size: 2.5vh;
}

.p0{
	font-weight: 300;
	font-size: 1vh;
}

/*tutorials gallary*/
.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30%, 1fr));
  grid-gap: 20px;
}



.item {
  background: grey;
  display: flex;
  justify-content: center;
  aspect-ratio: 16 / 9;
}


.problemsGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(40%, 1fr));
  grid-gap: 0px;
  
}

.problemItem {
/*  background: grey;*/
/*  display: flex;*/
  justify-content: left;
/*  aspect-ratio: 16 / 9;*/x
  /*border-style: solid;
  border-width: 1px;
  border-color: #555;*/
}

.problemItem p{
	margin-left: 0em;
}

.problemItem h2{
	margin-left: 0em;
	margin-block-start: 0.5em;
	margin-block-end: 0.5em;
}

.hidden {
    display:none;
}

@media only screen and (orientation: landscape){

	/*.respItem{
		width: 70vw;
	}*/
	.rightBlock{
		margin-right: 10vmin;

	}

	.mobile{
		visibility: hidden;
		display: none;
	}
	.desktop{
		visibility: visible;
		display: block;
	}

	.grid {
  grid-template-columns: repeat(auto-fit, minmax(30%, 1fr));
	}

	.imgS2{
	height: 40vh;
	vertical-align: middle;
}

}


@media only screen and (orientation: portrait){

	.respItem{
		width: 100%;
	}

	.rightBlock{
		margin-right: 5vmin;

	}

	.mobile{
		visibility: visible;
		display: block;
	}
	.desktop{
		visibility: hidden;
		display: none;
	}

	.grid {
  grid-template-columns: repeat(auto-fit, minmax(30%, 100%));
	}
	
		.problemsGrid {
  grid-template-columns: repeat(auto-fit, minmax(30%, 100%));  
	}

	.imgS2{
	vertical-align: middle;
	max-width: 98%;
	}

}

.imgS{
	height: 16vh;
	vertical-align: middle;
/*	transform: translateY(8vh);*/
}


.imgS1{
	height: 16vh;
	vertical-align: middle;
/*	transform: translateY(8vh);*/
}

/*.imgS2{
	height: 40vh;
	vertical-align: middle;
	max-width: 98%;
	width: auto;
}*/