@font-face {
font-family: "HelveticaThin";
src: url('../resource/font/HelveticaThin.otf');
}
@font-face {
font-family: "HelveticaUltraThin";
src: url('../resource/font/HelveticaUltraThin.otf');
}
main{
	min-height: 84vh;
}
h1,h2,h3,h4{
	font-family: "HelveticaUltraThin";
	color: #000;
}
img {
	opacity: 1;
	transition: opacity 0.3s;
}
img[data-src] {
	opacity: 0;
}
@-moz-keyframes spin { 
  100% { -moz-transform: rotate(90deg); } 
}
@-webkit-keyframes spin { 
  100% { -webkit-transform: rotate(90deg); } 
}
@keyframes spin { 
  100% { -webkit-transform: rotate(90deg); transform:rotate(90deg); } 
}

.close_button{
	cursor: pointer;
}
.close_button:hover {
	-webkit-animation:spin 150ms linear;
    -moz-animation:spin 150ms linear;
    animation:spin 150ms linear;
}
.filter-nav {
	width: 100%;
	margin: 0;
    padding: 0;
	list-style: none;
}
.filter-nav li{
	font-size: 10pt;
	color: #000;
	content: "-";
	padding-left: 1em;
}
.nav-c{
	z-index: 999;
	position: -webkit-sticky;
	position: sticky;
	top:0px;
	font-size: 10pt;
	font-weight: bold;
	color: #68635f;
}
.sticky-footer{
	background-color: #000;
	margin-top: 20px;
	color: #fff;
	font-size: 8pt;
	text-align: right;
	vertical-align: middle;
	height: 60px;
	padding: 10px;
}

@media (max-width: 540px) {
	.katalog-header{
		height: 140px;
		background-color: #fff;
		position: relative;
	}
	.katalog-header .logo{
		height: 100%;
		padding: 5px;
		width: 30%;
		float:left;
		display: flex;
		justify-content: center;
		flex-direction: column;
	}
	.katalog-header img{
		height: auto;
		width: 100%;
	}
	.katalog-header .title{
		font-family: "HelveticaUltraThin";
		color: #000;
		font-size: 25pt;
		padding: 10px;
		float: right;
		height: 100%;
		width: 70%;
		z-index: 999;

		display: flex;
		justify-content: center;
		flex-direction: column;
	}
}
@media (min-width: 541px) and (max-width: 2000px) {
	.katalog-header{
		height: 140px;
		background-color: #fff;
		position: relative;
	}
	.katalog-header .logo{
		height: 100%;
		padding: 5px;
		width: 20%;
		float:left;
	}
	.katalog-header img{
		height: 100%;
		width: auto;
		margin-left: 30px;
	}
	.katalog-header .title{
		font-family: "HelveticaUltraThin";
		color: #000;
		font-size: 40pt;
		text-align: right;
		padding: 10px 40px 10px 10px;
		float: right;
		height: 100%;
		width: 80%;
		z-index: 999;

		display: flex;
		justify-content: center;
		flex-direction: column;
	}
}



.kategori-divider{
	height: 45px;
}
@media (max-width: 540px) {
	.kategori-b{
		font-family: "HelveticaUltraThin";
		color: #000;
		font-size: 25pt;
		width: 100%;
		text-align: center;
		padding: 20px 0 20px 0;
	}
	.kategori-w{
		font-family: "HelveticaUltraThin";
		color: #fff;
		font-size: 25pt;
		width: 100%;
		text-align: center;
		padding: 20px 0 20px 0;
	}
}
@media (min-width: 541px) and (max-width: 2000px) {
	.kategori-b{
		font-family: "HelveticaUltraThin";
		color: #000;
		font-size: 50pt;
		width: 100%;
		text-align: center;
		padding: 20px 0 20px 0;
	}
	.kategori-w{
		font-family: "HelveticaUltraThin";
		color: #fff;
		font-size: 50pt;
		width: 100%;
		text-align: center;
		padding: 20px 0 20px 0;
	}
}
.contact-form{
	text-align: center;
	background-image: url('../resource/img/contact-bg.jpg');
	background-size: cover;
	height: 100vh;
	color:#fff;
}
@media (max-width: 540px) {
	.contact-form .info-contact{
		text-align: center;
		border-style: dashed;
		border-width: 0px 0px 2px 0px;
		border-color: #fff;
		margin-bottom: 10px;
	}
	.contact-form .formnya{
		text-align: center;
	}
}
@media (min-width: 541px) and (max-width: 2000px) {
	.contact-form .info-contact{
		text-align: right;
		border-style: dashed;
		border-width: 0px 2px 0px 0px;
		border-color: #fff;
	}
	.contact-form .formnya{
		text-align: left;
	}
}
.contact-form form, input, textarea, button{
	color: #fff;
	background-color: transparent;
	width: 100%;
	border-color: #fff;
	border-width: 1px;
	padding: 5px;
	margin-bottom: 10px;
}

.item-detail{
	font-size: 12pt;
	width: 100%;
}
.item-detail .header{
	background-color: #1f245c;
	color: #fff;
	font-weight: bold;
}
@media (max-width: 540px) {
	.item-detail .deskripsi{
		font-size: 12pt;
		white-space: pre-line;
		margin-top: 20px;
	}
}
@media (min-width: 541px) and (max-width: 2000px) {
	.item-detail .deskripsi{
		font-size: 12pt;
		white-space: pre-line;
		margin-top: 50px;
	}
}

.item-detail .img-primary{
	max-height: 400px;
	max-width: 400px;
}
.item-detail .img-primary-view{
	max-height: 400px;
	max-width: 100%;
	object-fit: contain;
	padding: 10px;
}
.item-detail .img-other{
	height: 100px;
	padding: 10px;
}
.item-detail img{	
	margin-right: 10px;
	margin-left: : 10px;
}

.variant-option{
	position: absolute;
	top: 10px;
	right: 10px;
}
.variant-option ul{
	list-style-type: none;
    margin: 0;
    padding: 0;
    text-align: center;
}
.variant-option li{
	height: 40px;
}
.variant-option img{
	transition: all .3s;
    -moz-transition: all .3s;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    -ms-transition: all .3s;
	width: 25px;
	height: 25px;
	margin: 5px 0 5px 0;
}
.variant-option img:hover{
	transform: scale(1.5);
	max-width: 37.5;
	max-height: 37.5;
	margin: 5px 0 5px 0;
}
.variant-option .active{
	transform: scale(1.5);
	margin: 5px 0 5px 0;
}

.card2 {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  /*border: 1px solid rgba(0, 0, 0, 0.125);*/
  /*border-radius: 0.25rem;*/
}

.card2 > hr {
  margin-right: 0;
  margin-left: 0;
}

.card2 > .list-group:first-child .list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.card2 > .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.card2-body {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 2px 10px 2px 10px;
  background-color: #1f245c;
  color: #fff;
}

.card2-title {
  margin-bottom: 0.75rem;
}

.card2-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card2-text:last-child {
  margin-bottom: 0;
}

.card2-link:hover {
  text-decoration: none;
}

.card2-link + .card2-link {
  margin-left: 1.25rem;
}

.card2-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card2-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card2-header + .list-group .list-group-item:first-child {
  border-top: 0;
}

.card2-footer {
  padding: 0.75rem 1.25rem;
}

.card2-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card2-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card2-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card2-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}

.card2-img {
  width: 100%;
  border-radius: calc(0.25rem - 1px);
}
.card2-img-top{
	background-color: #ddd;
	height: auto;
	max-height: 300px;
	position: relative;
}
@media (max-width: 540px) {
	.card2-img-top .subcategory{
	  width: 100%;
	  padding-top: 36%;
	}
}
@media (min-width: 541px) and (max-width: 2000px) {
	.card2-img-top .subcategory{
	  width: 100%;
	  padding-top: 250px;
	}
}
.card2-img-top .item{
  width: 100%;
  padding-top: 100%;
  background-color: #ddd;
  position: relative;
}
.card2-img-top img{
  object-fit: cover;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.card2-img-bottom {
  width: 100%;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.noestlye:hover{
	background-color: black;
}

.img-thumbnail{
	width: 100%;
	height: auto;
}
.img-option{
	height: 80px;
	width: 80px;
	object-fit: contain;
}
.img-option-active{
	border:1px solid #fd7e14;
}
.kategori-banner{
	margin-bottom: 10px;
	position: relative;
}
.kategori-banner .bg{
	position: relative;
	width: 100%;
	padding-top: 33.33%; /* 1:1 Aspect Ratio */
}

@media (max-width: 540px) {
	.kategori-banner .logo{
		position: absolute;
		max-height: 180px;
		max-width: 180px;
		top: -55px;
		left: -45px;
	}
	.kategori-banner .label{
		font-family: "HelveticaUltraThin";
		text-shadow: 2px 2px 30px #000;
		font-size: 35pt;
		color: #fff;
		position: absolute;
		bottom: -6px;
		right: 12px;
	}
}
@media (min-width: 541px) and (max-width: 2000px) {
	.kategori-banner .logo{
		position: absolute;
		max-height: 300px;
		max-width: 300px;
		top: -88px;
		left: -60px;
	}
	.kategori-banner .label{
		font-family: "HelveticaUltraThin";
		text-shadow: 2px 2px 30px #000;
		font-size: 130pt;
		color: #fff;
		position: absolute;
		bottom: -6px;
		right: 12px;
	}
}