/* --------------grid table---------------*/
.grid-table {
    display: inline-grid;
    grid-template-columns: repeat(var(--cols), 1fr);
    gap: 5px;
}
.grid-table.wide {
    width: 100%;
}
.grid-row {
    display: contents;
    gap: 5px;
}

/* --------------иконки---------------*/
.inline-icon {
    width: 32px;
    height: 32px;
    border: 0;
    display: inline-block;
    background-color: #FFFFFF;
    background: center no-repeat;
    background-size: contain;
}

.doc-ct-data {
	background-image: url('../image/doc_data_96.png');
}
.doc-ct-schem {
	background-image: url('../image/doc_schem_96.png');
}
.doc-ct-guide {
	background-image: url('../image/doc_guide_96.png');
}
.doc-ct-cert {
	background-image: url('../image/doc_cert_96.png');
}
.doc-ct-misc {
	background-image: url('../image/doc_misc_96.png');
}

/* product info */
.product-info {
	overflow: hidden;
	margin-bottom: 20px;
}
.product-info > .mobile {
	display: none;
}
.product-info > .pc {
	display: block;
}
.product-info > .left {
	float: left;
	margin-right: 15px;
}
.product-info > .left + .right {
	margin-left: 615px;
}
.product-info .image {
	margin-bottom: 20px;
	text-align: center;
}
.product-info .image img {
    cursor: pointer;
	width: 600px;
	height: 450px;
}
.product-info .image-additional {
	clear: both;
	overflow: hidden;
	width: 600px;
}
.product-info .image-additional img{
	cursor: pointer;
}
.product-info .description {
	margin-bottom: 15px;
	line-height: 20px;
	color: var(--font-color);
}
.product-info .description span {
	/*color: #38B0E3;*/
	color: var(--primary-color);
	text-transform: uppercase;
}
.product-info .rating {
	margin-bottom: 20px;
}
.product-info .rating a{
	text-decoration: none;
	font-size: 16px;
}
.product-info .price-block {
	/*height: 40px;*/
	text-align: left;
	font-size: 26px;
	line-height: 26px;
	padding-top: 0;
	margin-bottom: 15px;
}
.product-info .price-block .stock {
	margin: 10px 0;
	font-weight: normal;
	font-size: 14px;
	line-height: 14px;
}
.product-info .price-block .instock {
    color: #20994d;
	font-weight: 600;
}
.product-info .price-block .outofstock {
    color: #d37b04;
	font-weight: 600;
}
.product-info .cart {
    display: flex;
    gap: 10px;
}


.product-info .option-image {
	margin-top: 10px;
	margin-bottom: 10px;
}
.product-info .option-image input[type=radio] {
	display: block;
	float: left;
    margin: 5px 0 10px 0;
	padding:0;
    -webkit-appearance:none;
       -moz-appearance:none;
            appearance:none;
}
.product-info .option-image label {
    cursor: pointer;
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
    width: 90px;
	height: 68px;
	border: 1px solid #DDD;
}
.product-info .option-image label:hover {
	border: 2px solid var(--primary-color);
}
.product-info .option-image input:checked +label {
	border: 2px solid var(--primary-color);
}
.product-info .flex-table {
    gap: 15px;
}
.product-info .option-row {
}
.product-info .option-row > div {
}
.product-info .option-row:nth-child(-n+3) {
    /*display: flex;*/
}

.product-info .doc-header {
    font-weight: normal;
    font-size: 16px;
    color: var(--primary-color);
	text-transform: uppercase;
    padding-top: 30px;
}
.product-info .doc-table {
    background: #FAFAFA;
    gap: 0;
}
.product-info .product-doc {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 5px 5px;
    border-top: 1px solid var(--border-color);
}
.product-info .product-doc a.doc-href,
.product-info .product-doc a.doc-file {
    font-size: 16px;
	text-transform: uppercase;
}

.product-description,
.product-lessons,
.product-super,
.product-reviews {
	margin-bottom: 20px;
	overflow: hidden;
}
.product-lessons .header,
.product-super .header,
.product-reviews .header{
	color: var(--primary-color);
	font-size: 24px;
	margin: 10px 0 10px 0;
}
.product-lessons .price-block,
.product-super .price-block {
	font-size: 18px;
	line-height: 22px;
	padding-top: 0;
}
.product-reviews .review-author {
	color: #808080;
}
.product-reviews .review-cont {
	border-bottom: 1px solid var(--border-color);
	margin-bottom: 20px;
	padding-bottom: 20px;
}

.product-super .box-product {
	display: flex;
	flex-direction: row;
	gap: 10px;
  	overflow-x: auto;
  	flex-wrap: nowrap;
}
.product-super .tile {
    margin: 0;
    border: 0;
}

/* Lessons loaded from robotclass.ru use the same tile grid as the home page. */
.product-lessons .box-product {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 10px;
}
.product-lessons .box-product .item-cont {
	margin-right: 0;
	margin-bottom: 0;
}
.product-lessons .box-product > .tile.float-left {
	float: none;
	clear: none;
	flex: 0 0 200px;
	width: 200px;
	min-height: 240px;
	height: auto;
	margin: 0;
	padding: 0;
	border: 0;
}

@media (max-width: 767px) {
	.product-lessons, 
    .product-description, 
    .product-super {
		/*padding: 0 10px;*/
	}
	.product-lessons .item-cont, 
    .product-super .item-cont {
		margin-right: 0;
		margin-bottom: 0;
	}
	.product-lessons .box-product > .tile.float-left {
		flex-basis: calc((100% - 10px) / 2);
		width: calc((100% - 10px) / 2);
		min-height: 260px;
		height: 260px;
	}
	.product-lessons .box-product .item-cont {
		float: none;
		width: 100%;
	}
	.product-lessons .box-product .item-img {
		width: 100%;
		height: auto;
		margin-top: 25px;
	}
	.product-lessons .box-product .item-img img {
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	.product-lessons .header, 
    .product-super .header, 
    .product-reviews .header {
		border-bottom: 1px solid var(--border-color);
	}
	.product-lessons .price-block, 
    .product-super .price-block {
		font-size: 26px;
		line-height: 1.625;
	}

	.product-info > .mobile {
		display: block;
	}
	.product-info > .pc {
		display: none;
	}
	.product-info > .left + .right {
		margin-left: 0;
		padding: 0;
	}
	.product-info > .left {
		clear: both;
		margin-right: 0;
	}
	.product-info > .right {
		padding: 0 10px;
	}
	.product-info .image {
		border: 0;
		clear: both;
		padding: 0;
	}
	.product-info .options {
		padding: 0;
	}
}