@charset "UTF-8";
/*
* CATALOG CSS
*/

.fancybox-overlay {
	z-index: 99999 !important;
}

body .wrapper {
	max-width: 1400px;
	width: 100%;
	padding: 120px;
	height: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: flex-start;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 40px;
	overflow: scroll;
}
@media (max-width: 720px) {
	body .wrapper {
		padding: 40px 24px 40px 24px;
		font-size: 14px;
	}
}

body .title {
	float: unset;
	width: 100%;
	display: block;
	height: fit-content;
}

/*
* CATALOG PAGE BANNER/HEADER
*/
/* BANNER/HEADER CONTAINER */
.catalog-banner {
	background-image: url("../images/alt-images/catalog-banner.jpg");
	width: 100%;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	align-content: center;
	background-position: center;
	padding-top: 115px;
	text-align: center;
}

/* BANNER/HEADER IMAGE OR LOGO */
.catalog-banner .content-container img {
	max-width: 300px;
	width: 100%;
	margin-bottom: 32px;
	height: auto;
}

/* BANNER/HEADER TITLE */
h1.page-title {
	font-size: 42px;
	font-weight: 800;
	color: #ffffff;
	margin: 0px;
	padding-bottom: 48px;
}

/* BANNER/HEADER DESCRIPTION */
.catalog-description {
	max-width: 1000px;
	width: 100%;
	color: white;
	font-size: 16px;
	line-height: 1.4;
	margin-bottom: 32px;
}

/* 
* CATALOG TAB INTERFACE
*/

/* TABS CONTAINER */
.catalog-tabs {
	max-width: unset;
	width: 100%;
	padding: unset;
	margin: unset;
	display: flex;
	flex-direction: row;
	gap: 16px 32px;
	flex-wrap: wrap;
	justify-content: center;
}
@media screen and (max-width: 1020px) {
	/* TABS */
	.catalog-tabs {
		font-size: 14px;
		line-height: 15px;
	}
}

/* TABS LINKS */
.catalog-tabs a {
	float: none;
	width: 100%;
	border-radius: 100px;
	border: solid 1px #6caedf;
	padding: 8px 24px;
	width: auto;
	color: white;
	text-decoration: none;
}
@media all and (max-width: 750px) {
	/* TABS */
	.catalog-tabs a {
		width: 100%;
	}
}

.catalog-tabs a:hover {
	background: rgba(108, 174, 223, 0.33);
}

.catalog-tabs a span {
	margin: 0;
}

.catalog-tabs a span {
	padding: unset;
	border: unset;
}

.catalog-tabs a.active span {
	background: unset;
}

.catalog-tabs a.active {
	background: #6caedf;
}

/* POSSIBLY NOT NEEDED
@media all and (max-width: 750px) {
	.catalog-banner ul {
		display: block;
		position: relative;
		z-index: 2;
		height: auto;
		margin: 0;
		padding: 20px 5px;
	}

	.catalog-banner li {
		display: none;
	}
}
*/

/*
* CATALOG/PRODUCT GRID
*/
.catalog {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
	box-sizing: border-box;
	position: relative;
	z-index: 500;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 0 40px;
}

.catalog .fancybox img {
	width: 100%;
	height: auto;
	aspect-ratio: 10/6;
	object-fit: cover;
	object-position: center;
}

.catalog a {
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	box-sizing: border-box;
	border: #ffffff 1px solid;
	line-height: 0;
}

.catalog a div:hover {
	opacity: 0.5;
}

.catalog a span {
	display: block;
	position: absolute;
	z-index: 2;
	bottom: 0;
	margin: 8px;
	padding: 8px 16px;
	color: #fff;
	font-size: 15px;
	line-height: 15px;
	background: url(../links/btn/view.png) 8px center no-repeat rgba(0, 0, 0, 0.75);
	background-size: 0;
	border-radius: 50px;
}

.catalog a:hover span {
	padding-left: 40px;
	background-size: 25px;
}












/* 
* NEW SWATCHES
*/
.swatch-catalog {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: 80px 16px;
	box-sizing: border-box;
}

body .wrapper .swatch-grid,
body .wrapper .swatch {
	grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
}

.swatch-grid,
.swatch {
	max-width: 1400px;
	width: 100%;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
}

.swatch-grid div,
.swatch div {
	position: relative;
	overflow: hidden;
	border: 1px solid #ffffff;
	line-height: 0;
}

.swatch-grid img,
.swatch img {
	width: 100%;
	aspect-ratio: 1/1;
}

.swatch-grid span,
.swatch span {
	position: absolute;
	display: block;
	overflow: hidden;
	width: 100%;
	padding: 16px 12px;
	box-sizing: border-box;
	background: rgb(0 0 0 / 50%);
	bottom: 0;
	transform: translateY(120px);
	transition: 0.3s ease;
	max-height: 100%;
	color: white;
	text-align: center;
	font-size: 12px;
	line-height: 1.2;
	text-transform: uppercase;
}

.swatch-grid div:hover span,
.swatch div:hover span {
	transform: translateY(0px);
}

/* SWATCHES */
.swatch-title {
	position: relative;
	padding: 30px 0 10px;
	font-size: 12px;
}

.swatch-title span {
	color: #6caedf;
	font-size: 18px;
}


/**
* V2
**/

body.catalog-page {
  display: flex;
  background: rgba(0, 0, 0, 0.85);
  flex-direction: column;
  align-content: center;
  justify-content: center;
  align-items: center;
}

section.catalog-wrapper {
    box-sizing: border-box;
  max-width: 1200px;
  width: 100%;
  padding: 16px;
}

h2.catalog-title {
  width: 100%;
  color: #6caedf;
  font-size: 30px;
  font-weight: 400;
  margin: 0px 0px 24px 0px;
}

.catalog-detail-wrapper {
  display: flex;
  align-items: flex-start;
  flex-direction: row;
  gap: 8%;
}
@media only screen and (max-width: 920px) {
    .catalog-detail-wrapper {
        flex-direction: column;
        align-items: center;
        gap: 24px;
    }
}

.catalog-gallery img {
  width: 100%;
}

.gallery-caption {
  position: absolute;
  bottom: 0;
  padding: 8px 16px;
  background: rgb(0 0 0 / 50%);
  width: 100%;
  box-sizing: border-box;
}

.catalog-info,
.catalog-gallery {
  width: 50%;
  position: relative;
}
@media only screen and (max-width: 920px) {
    .catalog-info,
    .catalog-gallery {
        width: 100%;
    }
    
    .catalog-gallery{
        max-width: 600px;
    }
}

.catalog-info table {
  width: 100%;
  text-align: left;
  color: black;
  border-spacing: 0px;
}

.catalog-info th {
  background: rgba(255, 255, 255, .5);
}

.catalog-info tr {
  background: rgba(255, 255, 255, .75);
}

.catalog-info th,
.catalog-info td {
  padding: 8px 16px;
  border-bottom: black 1px solid;
  width: 50%;
}

.catalog-info .swatch-grid {
    margin-bottom: 16px;
}

.catalog-info .swatch-title {
  padding: 0px 0px 8px 0px;
}