.row.wide {
	max-width:1240px;
}

/* Flex */
.flex-container { display:flex; }
.row-wrap { flex-flow: row wrap; }
.flow-column { flex-flow: column; }
.row-reverse { flex-direction: row-reverse; }
.space-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.justify-right { justify-content: right; }
.align-center { align-items: center; }
.align-left { text-align: left; }
.align-flex-end { align-items: flex-end; }
.flex-grow-1 { flex-grow:1; }
.flex-shrink-0 { flex-shrink:0; }
.order-1 { order:1; }
.order-2 { order:2; }
.flex-basis-75 { flex-basis:75%; }
.flex-basis-65 { flex-basis:65%; }
.flex-basis-60 { flex-basis:60%; }
.flex-basis-50 { flex-basis:50%; }
.flex-basis-45 { flex-basis:45%; }
.flex-basis-40 { flex-basis:40%; }
.flex-basis-33 { flex-basis:33.333333%; }
.column-gap-20 { column-gap:20px; }
.column-gap-40 { column-gap:40px; }
.column-gap-45 { column-gap:45px; }
.column-gap-60 { column-gap:60px; }
.column-gap-80 { column-gap:80px; }
.gap-10 { gap:10px; }
.gap-20 { gap:20px; }
.gap-30 { gap:30px; }
.gap-40 { gap:40px; }
.gap-50 { gap:50px; }
.gap-60 { gap:60px; }
.gap-70 { gap:70px; }
.gap-80 { gap:80px; }
.gap-90 { gap:90px; }
.gap-100 { gap:100px; }
.flex-1 { flex:1; }


/* Utility */
.side-margin-auto { margin-left:auto; margin-right:auto; }

.ctct-form-embed.form_0 .ctct-form-defaults {
    background-color: transparent !important;
}

/* Parallax Effect */
.parallax-container {
    overflow: hidden;
    position: relative;
}

.parallax-image {
    transform: translateY(0);
    transition: transform 0.1s ease-out;
    will-change: transform;
}

@media(max-width:959px) {
/*	.hide-max-959 { display:none !important; }*/
	.flex-clear-959 { display:block; }
}


header #nav>.menu>li {
    margin-right: 10px;
}

header #nav>.menu>li>a {
    padding: 0.7rem 0.5rem;
}

/* Header & Top Nav */

.top-header {
	position:fixed;
	width:100%;
	z-index:100;
	transition:transform 0.28s ease;
	transform: translateY(0);
}

.top-header.is-fixed {
	position:fixed;
}

.top-header.is-scrolled {
	transform: translateY(calc(-1 * var(--header-height)));
}

.top-header.is-hidden-up {
	transform: translateY(calc(-1 * var(--header-height)));
}

.header-spacer { 
	height: calc(var(--header-height) - 1px);
}

@media(max-width:1023px) {
	.top-header.is-scrolled {
		transform: translateY(calc(-1 * var(--header-height)));
	}
	
	.top-header.is-hidden-up {
		transform: translateY(calc(-1 * var(--header-height)));
	}
	
	/* .header-spacer { 
		height: calc(var(--header-height) - 1px);
	} */
}

@media(max-width:1023px) {
	header .search {
		position:relative;
	}

	.header-row > .column {
		padding-left: 0;
		padding-right: 0;
	}
}

.high-jewelry-catalog aside .subNav a.subActive {
    font-weight:600;
	color: #132f60;
}

.errors, .error {
    color: #d30000;
    font-weight: 700;
    font-size: .75rem;
}

.errors {
	text-align: center;
}

.errors ul {
	margin:0;
}

.errors li {
	list-style:none;
}

sub {
    bottom: -0.25em;
}

h1 sub, h2 sub {
    bottom: -0.6em;
}

header #nav>.menu a {
	text-transform:uppercase;
}

#footer2 {
	background: var(--color-blue);
}

#footer2 .links-column {
	text-align:left;
}

#footer2 .column-title {
	color:#babab9;
	font-size:16px;
	font-family:  "Open Sans", sans-serif;
	font-weight:700;
	text-align:left;
}

#footer2 .links-column ul {
	margin:10px 0 40px;
}

#footer2 .links-column ul li {
	list-style:none;
	line-height:1.8;
}

#footer2 .links-column ul li a {
	font-size:14px;
	color:#babab9;
	text-decoration:none;
	transition: color 0.15s ease;
}

#footer2 p {
	color:#babab9;
}

#footer2 .links-column ul li a.tiktok {
	font-size:12px;
}

#footer2 .links-column ul li a:hover {
	color:#fff;
}

#footer2 .copyright {
	text-align:left;
}

#footer2 .menu.footer-social {
	margin-top:15px;
	margin-bottom:30px;
}

#footer2 .menu.footer-social > li {
	display:inline-block;
	margin-right:5px;
	margin-bottom:10px;
}

#footer2 .menu.footer-social > li:last-child {
	margin-right:0;
}

#footer2 .menu > li > a {
    display: block;
    padding: 0;
    line-height: 1;
}

@media(min-width:640px) {
	#footer2 .styled-select {
		float:right;
	}
}

@media(max-width:639px) {
	#footer2 .styled-select {
		margin-top:20px;
	}
}

.page-buttons {
	display:flex;
	gap:10px;
}

@media(min-width:640px) {
	.collection .grid-item a {
		display:block;
		position:relative;
		aspect-ratio: 1/1;
	}
	
	.collection .grid-item a img {
		object-fit: contain;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: 25%;
	}

	.talisman-grid .grid-item a img {
		padding: 10%;
	}

	.collection .grid-item.necklaces a img {
		padding: 20%;
	}
	
	.collection .grid-item.pendants a img {
		padding: 20%;
		/* object-fit: cover;
		object-position: center bottom; */
	}

	.collection .grid-item.bracelets.medium-6 a img {
		padding: 20%;
	}
}

@media(min-width:640px) {
	.page-buttons {
		justify-content: flex-end;
	}
	.collection .grid-item a:before {
		content:'';
		display:block;
		padding-top:100%;
	}

	.collection .grid-item a > img {
	    display: block;
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 100%;
	    object-fit: contain;
	}
}

@media(max-width:639px) {
	
	.high-jewelry-catalog.thumbnails .collection {
		margin-left:0;
		margin-right:0;
	}
	
	.collection .grid-item {
		height:auto !important;
		padding-left:20px !important;
		padding-right:20px !important;
		margin-bottom:60px;
		margin-top:60px;
		float:none;
	}

	.collection .grid-item:not(.pendants) img {
		max-width:320px;
	}

	.collection .grid-item h4 {
		margin-top:16px;
	}
}

.ccc-banner .ccc-banner__label-container { display:none !important; }

.ccc-banner .ccc-banner__button {
    display: inline-block;
    text-align: center;
    line-height: 1;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    transition: background-color .25s ease-out,color .25s ease-out;
    vertical-align: middle;
    border: 1px solid transparent;
    border-radius: 0;
    padding: 0.85em 2em;
    margin: 0 0 1rem 0;
    font-size: .9rem;
    background-color: #132f60;
    color: #fff;
	border-radius:0;
	box-shadow:none;
}

.ccc-banner .ccc-banner__button {
    border-color: #132f60;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 700;
    font-size: 1rem;
}

.ccc-banner .ccc-banner__button {
	background-color:#fff !important;
    color: #646464 !important;
    border: #132f60 2px solid;
}

.ccc-banner .ccc-banner__button:hover {
    background-color: #132f60 !important;
    color: #fff !important;
}

.hero-slider .slide-content p sub {
/*	font-size:0.25em;*/
}

/* Remove empty ruleset */

div.ctct-form-embed div.ctct-form-defaults {
	padding: 24px 0 !important;
}

div.ctct-form-embed div.ctct-form-defaults h2.ctct-form-header {
	font-family: Cinzel,serif !important;
	font-weight: 400 !important;
	text-align: left !important;
}

.ctct-form-embed.form_0 .ctct-form-custom .ctct-form-button,
.ctct-form-embed.form_0 .ctct-form-custom .ctct-form-button:hover {
	font-family: "Open Sans", sans-serif !important;
	text-transform:uppercase;
}

.ctct-gdpr-text, .ctct-form-footer { display:none !important; }

.collection-page-header .collection-title {
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.collection-page-header .collection-title h1,
.collection-page-header .collection-title h2 {
	position: static;
    -ms-transform: translateY(0);
    transform: translateY(0);
	color:inherit;
	text-transform: uppercase;
	text-align:left;
	margin:0;
	line-height:1.3;
}

.collection-page-header .collection-title h1 {
	font-size: 1.85714rem;
	color: #333 !important;
}

.collection-page-header .collection-title h2 {
	font-size: 2.28571rem;
	color: #132f60;
	
}

.collection .grid-item h4 {
	color: #333;
	font-size: 16px;
}

.collection-page-header .collection-title h1 sub {
	position:relative;
	right:auto;
	bottom: -0.6em;
}

@media screen and (min-width: 40em) {
	.collection-page-header .collection-title h1 {
		font-size: 2.71429rem;
	}
	
	.collection-page-header .collection-title h2 {
		font-size: 3.28571rem;
	}
}


@media screen and (min-width: 64em) {
	
	.hero-slider #slide1 .slide-content {
		left:0 !important;
	}
	
	.hero-slider #slide3 .slide-content {
/*	    max-width: 410px;
	    top: 170px;
	    left: auto;
	    right: 19%;*/
		top:70px;
	}
}

/* 2023 reskin updates */

/* Colors & Global Vars */
:root {
  --color-blue: #164268;
}

.bg-blue, .bg-blue-500, .bg-blue-600 { background: var(--color-blue); }
.color-blue { color: var(--color-blue); }

.relative { position:relative; }
.screen-height {
	height: 100vh;
/*	height: -moz-available;
	height: -webkit-fill-available;
	height: fill-available;*/
}

img.object-fit-cover {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ratio-height {
    position: relative;
}

.ratio-height:before {
    content: '';
    display: block;
}

@media(max-width:768px) {
	.hide-max-768 { display:none !important; }
}

@media(min-width:769px) {
	.hide-min-769 { display:none !important; }
}

@media(max-width:1024px) {
	.hide-max-1024 { display:none !important; }
}

@media(min-width:1025px) {
	.hide-min-1025 { display:none !important; }
}

.button.gray {
	background-color:#ededed;
	border-color:#ededed;
	color:#005997;
}

.button.gray:hover {
	background-color:#132f60;
	color:#fff;
}

.famous-slider .slick-next {
    right: 5px;
}

header, header #nav>.menu ul.is-dropdown-submenu {
	background:var(--color-blue);
}

header .logo {
	background-image: url(../../images/front/wg-logo-horizontal.png);
	background-size:contain;
	background-position:center center;
}

@media(max-width:1023px) {
	header .logo {
		width:85%;
		max-width:280px;
		display:flex;
		background-position: center center;
		margin:12px auto;
	}
}

.header-row {
	max-width:none;
}

header #nav>.menu>li>a, header #nav>.menu ul.is-dropdown-submenu a {
	color:#fff;
}

/*.hero-slider .slide .ratio-desktop:before {
	padding-top:54.947%;
}

.hero-slider .slide .ratio-mobile:before {
	padding-top:216.41%;
}*/

.hero-slider .slide img {
	transition:transform 3s ease;
	object-position: center top;
}

@keyframes zoomIn {
	0% {
		transform:scale(1);
	}
	100% {
		transform:scale(1.07);
	}
}

@keyframes zoomOut {
	0% {
		transform:scale(1.07);
	}
	100% {
		transform:scale(1);
	}
}

.hero-slider .slide.zoom-in img {
	animation: zoomIn 4s;
	animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.hero-slider .slide.zoom-out img {
	animation: zoomOut 4s;
	animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

/*.hero-slider .slide:nth-child(even):not(.slick-current) img,
.hero-slider .slide.slick-current:nth-child(odd) img {
	transform:scale(1.1);
}

.hero-slider .slide:nth-child(odd):not(.slick-current) img,
.hero-slider .slide.slick-current:nth-child(even) img {
	transform:scale(1);
}*/


.hero-slider .slick-dots {
	bottom:20px;
}

.hero-slider .slick-dots li button:before {
	content:'';
	display:block;
	background-color:#fff;
	border-radius:999px;
	width:12px;
	height:12px;
	transition:background-color 0.28s ease;
	opacity:1;
}

.hero-slider .slick-dots li.slick-active button:before {
	background-color:var(--color-blue);
}

.hero-slider .screen-height {
	height: calc(100vh - 88px);
}

@media(min-width:1024px) {
	header .logo {
		max-width:600px;
		width:39%;
	}
	
	.hero-slider .screen-height {
		height: calc(100vh - 158px);
	}
}

@media(min-width:1200px) {
	header .logo {
		max-width:754px;
		width:39%;
	}
}

@media screen and (min-width: 64em) {
	header .search {
	    right: 35px;
		top:22px;
        max-width: none;
        /*display: flex;
        align-items: center;*/
	}
}

header .button.ocn, header .button:active.ocn, header .button:focus.ocn {
	top:5px;
	right:0;
	left:auto;
	border:none;
}

header .button .fa-bars {
	font-size:16px;
}

.categories-alternating {
	max-width:1670px;
	margin:60px auto;
	padding:0 40px;
}

.categories-alternating .grid-item {
	margin-bottom:60px;
}

.categories-alternating .grid-item .content a.discover {
	text-decoration:none;
	font-size:30px;
	color:#005a97;
	text-transform:uppercase;
	font-family: "sweet-sans-pro", sans-serif;
	font-weight: 500;
	font-style: normal;
	transition: color 0.28s ease;
}

.categories-alternating .grid-item .content a.discover:hover {
	color:#000;
}

@media(min-width:768px) {
	
	.categories-alternating {
		margin:120px auto;
		padding:0 126px;
	}
	
	.categories-alternating .grid-item {
		margin-bottom:110px;
	}
	
	.categories-alternating .grid-item .image-link {
		flex:0 0 46%;
	}

	.categories-alternating .grid-item .content {
		display:flex;
		align-items:center;
		gap:90px;
	}
	.categories-alternating .grid-item .content h2 {
		font-size:40px;
	}
	.categories-alternating .grid-item .content a.discover {
		font-size:24px;
	}
	.categories-alternating .grid-item:nth-child(even) .content {
		flex-direction:row-reverse;
	}

	.categories-alternating .grid-item:nth-child(even) .content .view,
	.categories-alternating .grid-item:nth-child(even) .content .view * {
		text-align:right;
	}
	
	.categories-alternating .grid-item:nth-child(odd) .content .view, 
	.categories-alternating .grid-item:nth-child(odd) .content .view * {
		text-align:left;
	}
}

@media(min-width:1200px) {
	
/*	.high-jewelry-catalog h1 {
		font-size:72px;
	}*/
/*	.categories-alternating .grid-item .content h2 {
		font-size:40px;
	}
	.categories-alternating .grid-item .content a.discover {
		font-size:24px;
	}*/
	.categories-alternating .grid-item .content {
		gap:150px;
	}
}

@media(max-width:767px) {
	
	.categories-alternating .grid-item .image-link {
		display:block;
		margin-bottom:40px;
	}
	
	.categories-alternating .grid-item {
		margin-bottom:40px;
	}
	
	.categories-alternating .grid-item .content .view {
		text-align:center;
	}
	.categories-alternating .grid-item .content h2 {
		font-size:40px;
	}
	.categories-alternating .grid-item .content a.discover {
		font-size:20px;
	}
}

@media(max-width:640px) {
	.categories-alternating {
		padding:0;
	}
}

@media screen and (min-width: 64em) {
	header .logo {
	    margin-top: 29px;
	    margin-bottom: 18px;
	}
}

.center {
	text-align:center;
}

.overflow-hidden { overflow:hidden; }

.famous-slider .slick-next, .famous-slider .slick-prev {
	width:48px;
}

.prod-form .fancybox-button.fancybox-button--close { display:none !important; }

.color-white, .color-white p { color: #fff; }
.underline { text-decoration:underline; }

header .shop-nav {
	display:flex;
	column-gap:20px;
	display:none !important;
}

header .shop-nav a {
	color: #babab9;
	transition: color 0.15s ease;
	text-decoration:none;
}

header .shop-nav a:hover {
	color:#fff;
}

.prod-grid-image {
	aspect-ratio:1 / 0.56;
	
}

.content p.text-sm {
    font-size: .875rem;
    line-height: 1.25rem;
}

.buy-flex-container {
	column-gap:20px;
}

.content.shop select {
	background-image:none;
	height:39px;
	-webkit-appearance:auto;
	-moz-appearance:auto;
	appearance:auto;
}

.content.shop select:focus {
	border: 1px solid #646464;
	background-color: #fff;
	outline: 0;
	box-shadow: 0 0 5px #cacaca;
	transition: box-shadow .5s, border-color .25s ease-in-out;
}

.content.shop .button {
	border:none;
}

.content.shop button {
	
    display: inline-block;
    text-align: center;
    line-height: 1;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    transition: background-color .25s ease-out, color .25s ease-out;
    vertical-align: middle;
    border: 1px solid transparent;
    border-radius: 0;
    padding: .85em 2em;
/*    margin: 0 0 1rem 0;*/
    font-size: .9rem;
/*    background-color: #132f60;*/
/*    color: #fff;*/
	
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 700;
    font-size: 1rem;
}

.content.shop .hidden {
	display:none !important;
}

.button.bg-gray-500 {
    --tw-bg-opacity: 1;
    background-color: rgba(107, 114, 128, var(--tw-bg-opacity));
}

.buy-flex {
	column-gap:20px;
	align-items: flex-start;
}

.buy-flex input[type="number"] {
	max-width: 70px;
	height: 40px;
}

header .search {
	max-width:none;
}

@media(max-width:1023px) {
	header .shop-nav {
	    justify-content: center;
	}

	header .search {
		display:none;
	}
}

@media(max-width:640px) {
	.content.shop .checkout-nav {
		display:none;
	}
}


  
.tooltip-container {
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translateX(-50%);
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.2s ease, visibility 0.2s ease;
}
  
.header-tooltip {
	/* background: #000; */
	color: #fff;
	padding: 4px 8px;
	border-radius: 4px;
	font-size: 12px;
	white-space: nowrap;
}
  
  /* Create a small triangle pointer */
  /* .header-tooltip:before {
	content: '';
	position: absolute;
	top: -4px;
	left: 50%;
	transform: translateX(-50%);
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-bottom: 4px solid #000;
  } */
  
/* Show tooltip on hover */
.cart-link:hover .tooltip-container,
.account-link:hover .tooltip-container {
	visibility: visible;
	opacity: 1;
}

.cart-link {
	display:inline-flex;
	align-items: center;
    column-gap: 5px;
}

.account-link {
	margin-top: 3px;
	height: 20px;
}

.content.shop .transactions .status-redirect { display:none; }

.content.shop a.small {
	font-size:12px;
}
.content.shop a.color-white:hover {
	color:#fff;
}

/* Product Grid Filters - Graff-inspired styling */
.product-filters {
    margin-bottom: 40px;
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 20px;
}

.filter-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.filter-title {
    font-family: "Cinzel", serif;
    font-size: 1.5rem;
    font-weight: 400;
    color: #333;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.filter-controls {
    display: flex;
    gap: 15px;
    align-items: center;
}

.filter-toggle {
    display: none;
    background: none;
    border: 1px solid #333;
    padding: 8px 16px;
    cursor: pointer;
    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.filter-toggle:hover {
    background-color: #333;
    color: #fff;
}

.filter-toggle.filter-active {
    background-color: #333;
    color: #fff;
}

.filter-toggle-icon {
    margin-left: 8px;
    transition: transform 0.3s ease;
}

.filter-reset {
    background: none;
    border: none;
    color: #666;
    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    text-decoration: underline;
    transition: color 0.3s ease;
}

.filter-reset:hover {
    color: #333;
}

.filter-content {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 30px;
}

/* Disable transitions on load to prevent dropdown flash, then removed by JS */
.product-filters.filter-no-transitions .filter-section .filter-section-title,
.product-filters.filter-no-transitions .filter-section .filter-section-title::after,
.product-filters.filter-no-transitions .filter-section .filter-options,
.product-filters.filter-no-transitions .filter-section .filter-option,
.product-filters.filter-no-transitions .filter-section .filter-checkbox {
    transition: none !important;
}

.filter-section {
    border-bottom: none;
    padding-bottom: 0;
    flex: 0 0 auto;
    width: auto;
    min-width: fit-content;
    position: relative;
}

.sort-section {
    flex: 0 0 auto;
    width: auto;
    /* min-width: 120px; */
    position: relative;
}

.collection {
	border-bottom: none;
}

.pagination {
    border-bottom: 1px solid #b4b4b4;
	padding-bottom: 40px;
}

@media(min-width:1024px) {
	.pagination {
		padding-bottom: 100px;
	}
}

/* Sort section uses same checkbox styles as other filters */

/* Remove border-bottom for horizontal layout */

.filter-section-title {
    display: block;
    font-family: "Open Sans", sans-serif;
    font-weight: 600;
    font-size: 14px;
    color: #333;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
    cursor: pointer;
    position: relative;
    padding-right: 20px;
    transition: color 0.3s ease;
    white-space: nowrap;
}

.filter-section-title:hover {
    color: #164268;
}

.filter-section .filter-section-title::after {
    content: '⌃';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-55%) rotate(180deg);
    font-weight: bold;
    font-size: 16px;
    transition: transform 0.3s ease, color 0.3s ease;
}

.filter-section.open .filter-section-title::after {
    content: '⌃';
    transform: translateY(-45%);
}

/* Collapsed state handled by visibility above */

.filter-options {
    display: flex;
    flex-direction: column;
    gap: 12px;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    padding: 15px;
    min-width: 200px;
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
}

.filter-section.open .filter-options,
.filter-section:not(.collapsed) .filter-options {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.filter-option {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    color: #666;
    transition: color 0.3s ease;
    position: relative;
}

.filter-option:hover {
    color: #333;
}

.filter-checkbox {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 16px;
    height: 16px;
    border: 2px solid #8B7355;
    border-radius: 0;
    background-color: transparent;
    cursor: pointer;
    position: relative;
    margin-right: 8px;
    transition: all 0.3s ease;
	margin: 0;
}

.filter-checkbox:checked {
    background-color: #8B7355;
}

.filter-checkbox:checked::after {
    display: none;
}

.filter-option-text {
    flex: 1;
    line-height: 1.4;
}

.filter-separator {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #ccc;
    font-weight: 300;
    padding: 0 10px;
    height: 20px;
    flex: 0 0 auto;
}

.sort-radio {
	margin: 0;
    margin-right: 10px;
    width: 16px;
    height: 16px;
    cursor: pointer;
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #8B7355;
    border-radius: 0;
    background-color: #fff;
    transition: all 0.3s ease;
}

.sort-radio:checked {
    background-color: #8B7355;
    border-color: #8B7355;
}

.sort-radio:checked::after {
    display: none;
}

.sort-radio:focus {
    outline: 2px solid #8B7355;
    outline-offset: 2px;
}

.sort-radio:hover {
    border-color: #8B7355;
}

/* Desktop horizontal layout */
@media (min-width: 1024px) {
    .filter-content {
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    
    .filter-section {
        flex: 0 0 180px;
    }
    
    .sort-section {
        flex: 0 0 200px;
    }
}

/* Responsive Design - Mobile First */
@media (max-width: 768px) {
    .filter-content {
        flex-direction: column;
        gap: 20px;
    }
    
    .filter-section {
        width: 100%;
    }
    
    .sort-section {
        flex: 1 1 auto;
        width: 100%;
    }
    
    .filter-separator {
        display: none;
    }
    
    .filter-section-title {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-right: 0;
    }
    
    .filter-section-title::after {
        position: static;
        transform: none;
        margin-left: auto;
    }
    
    .filter-options {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        border: none;
        padding: 0;
        min-width: auto;
    }
    
    /* Override for collapsed sections on mobile */
    .filter-section.collapsed .filter-options {
        display: none;
    }
}

/* Desktop layout - force horizontal on larger screens */
@media (min-width: 769px) {
    .filter-content {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        gap: 30px !important;
    }
    
    .filter-section {
        flex: 0 0 180px !important;
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }
    
    .sort-section {
        flex: 0 0 200px !important;
    }
    
    .filter-separator {
        display: flex !important;
    }
}

/* Force horizontal layout on larger screens */
@media (min-width: 1024px) {
    .product-filters .filter-content {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        gap: 30px !important;
    }
    
    .product-filters .filter-section {
        flex: 0 0 180px !important;
        max-width: 180px !important;
        width: 180px !important;
    }
    
    .product-filters .sort-section {
        flex: 0 0 200px !important;
        max-width: 200px !important;
        width: 200px !important;
    }
    
    .product-filters .filter-separator {
        display: flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
    }
}

/* Alternative approach - force horizontal layout */
@media screen and (min-width: 769px) {
    .product-filters .filter-content {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        gap: 30px !important;
    }
    
    .product-filters .filter-section {
        flex: 0 0 auto !important;
        max-width: none !important;
        width: auto !important;
        display: block !important;
    }
    
    .product-filters .sort-section {
        flex: 0 0 auto !important;
        max-width: none !important;
        width: auto !important;
        display: block !important;
    }
}

/* Additional mobile styles */
@media (max-width: 768px) {
    .filter-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
    
    .filter-controls {
        width: 100%;
        justify-content: space-between;
    }
    
    .filter-title {
        font-size: 1.25rem;
    }
}

@media (max-width: 768px) {
    .filter-content {
        display: none;
        padding-top: 20px;
    }
    
    .filter-content.filter-open {
        display: flex;
        flex-direction: column;
    }
    
    .filter-options {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        border: none;
        padding: 0;
        min-width: auto;
        background: transparent;
    }
    
    .filter-section-title {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-right: 0;
    }
    
    .filter-section-title::after {
        position: static;
        transform: none;
        margin-left: auto;
        transition: transform 0.3s ease;
    }
    
    .filter-section.open .filter-section-title::after {
        transform: rotate(180deg);
    }
    
    /* Override for collapsed sections on mobile */
    .filter-section.collapsed .filter-options {
        display: none;
    }
}
    
    .filter-toggle {
        display: flex;
        align-items: center;
    }
    
    .filter-options {
        gap: 10px;
    }
    
    .filter-section {
        padding-bottom: 15px;
    }
    
    .filter-section-title {
        font-size: 13px;
        margin-bottom: 10px;
    }
    
    .filter-option {
        font-size: 13px;
    }
}

@media (min-width: 769px) {
    .filter-content {
        display: grid !important;
    }
}

/* Filter animation and transitions */
.grid-item {
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.grid-item.filtered-out {
    opacity: 0;
    transform: scale(0.95);
    pointer-events: none;
}

/* Enhanced checkbox styling for better accessibility */
.filter-checkbox:focus {
    outline: 2px solid #8B7355;
    outline-offset: 2px;
}

/* Loading state for filters */
.product-filters.loading .filter-checkbox {
    opacity: 0.6;
    pointer-events: none;
}

/* Active filter indicator */
.filter-option.active .filter-option-text {
    color: #164268;
    font-weight: 600;
}

/* Filter section collapse functionality - handled above */

/* Filtered By Section */
.filtered-by-section {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #e5e5e5;
}

.filtered-by-content {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.filtered-by-label {
    font-family: "Open Sans", sans-serif;
    font-weight: 600;
    font-size: 14px;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.active-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    flex: 1;
}

.filter-tag {
    display: inline-flex;
    align-items: center;
    background-color: #333;
    color: #fff;
    padding: 6px 12px;
    border-radius: 20px;
    font-family: "Open Sans", sans-serif;
    font-size: 12px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.filter-tag:hover {
    background-color: #555;
}

.filter-tag-text {
    margin-right: 6px;
}

.filter-tag-remove {
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
}

.reset-all-link {
    background: none;
    border: none;
    color: #666;
    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: underline;
    cursor: pointer;
    transition: color 0.3s ease;
}

.reset-all-link:hover {
    color: #333;
}

/* Enhanced mobile experience */
@media (max-width: 640px) {
    .product-filters {
        margin-bottom: 20px;
        padding-bottom: 15px;
    }
    
    .filter-content {
        gap: 15px;
    }
    
    .filter-section {
        padding-bottom: 10px;
    }
    
    .filter-options {
        gap: 8px;
    }
    
    .filtered-by-content {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    
    .active-filters {
        width: 100%;
    }
    
    .reset-all-link {
        align-self: flex-end;
    }
}

.home-block {
	padding-bottom: 126%;
}

@media screen and (min-width: 40em) {
    .home-block>div {
        bottom:40px;
		top: auto;
    }
}

@media screen and (max-width: 63.9375em) {
    .home-block>div {
        bottom: 30px;
        top: auto;
    }
}

.custom_paging li:before,
	.custom_paging li::marker {
		content: '';
		display: none;
	}

	.custom_paging li {
		list-style: none;
		text-align: center;
		justify-content: center;
		display: flex;
		align-items: center;
		justify-items: center;
		justify-self: center;
		justify-self: center;
	}

	.custom_paging li:not(.slick-active) {
		display: none;
		
	}

.row.find-ashoka {
	margin-left: auto;
	margin-right: auto;
}

/* Margins */
.mt-0  { margin-top:0px !important; }
.mt-1  { margin-top:4px !important; }
.mt-2  { margin-top:8px !important; }
.mt-3  { margin-top:16px !important; }
.mt-4  { margin-top:24px !important; }
.mt-5  { margin-top:32px !important; }
.mt-6  { margin-top:48px !important; }
.mt-7  { margin-top:64px !important; }
.mt-8  { margin-top:80px !important; }
.mt-9  { margin-top:128px !important; }
.mt-10 { margin-top:160px !important; }

.mb-0  { margin-bottom:0px !important; }
.mb-1  { margin-bottom:4px !important; }
.mb-2  { margin-bottom:8px !important; }
.mb-3  { margin-bottom:16px !important; }
.mb-4  { margin-bottom:24px !important; }
.mb-5  { margin-bottom:32px !important; }
.mb-6  { margin-bottom:48px !important; }
.mb-7  { margin-bottom:64px !important; }
.mb-8  { margin-bottom:80px !important; }
.mb-9  { margin-bottom:128px !important; }
.mb-10 { margin-bottom:160px !important; }

.v-margin-0  { margin-top:4px !important; margin-bottom:0px !important; }
.v-margin-1  { margin-top:4px !important; margin-bottom:4px !important; }
.v-margin-2  { margin-top:8px !important; margin-bottom:8px !important; }
.v-margin-3  { margin-top:16px !important; margin-bottom:16px !important; }
.v-margin-4  { margin-top:24px !important; margin-bottom:24px !important; }
.v-margin-5  { margin-top:32px !important; margin-bottom:32px !important; }
.v-margin-6  { margin-top:48px !important; margin-bottom:48px !important; }
.v-margin-7  { margin-top:64px !important; margin-bottom:64px !important; }
.v-margin-8  { margin-top:80px !important; margin-bottom:80px !important; }
.v-margin-9  { margin-top:128px !important; margin-bottom:128px !important; }
.v-margin-10 { margin-top:160px !important; margin-bottom:160px !important; }

/* Padding */
.pt-0  { padding-top:0px !important; }
.pt-1  { padding-top:4px !important; }
.pt-2  { padding-top:8px !important; }
.pt-3  { padding-top:16px !important; }
.pt-4  { padding-top:24px !important; }
.pt-5  { padding-top:32px !important; }
.pt-6  { padding-top:48px !important; }
.pt-7  { padding-top:64px !important; }
.pt-8  { padding-top:80px !important; }
.pt-9  { padding-top:128px !important; }
.pt-10 { padding-top:160px !important; }

.pb-0  { padding-bottom:0px !important; }
.pb-1  { padding-bottom:4px !important; }
.pb-2  { padding-bottom:8px !important; }
.pb-3  { padding-bottom:16px !important; }
.pb-4  { padding-bottom:24px !important; }
.pb-5  { padding-bottom:32px !important; }
.pb-6  { padding-bottom:48px !important; }
.pb-7  { padding-bottom:64px !important; }
.pb-8  { padding-bottom:80px !important; }
.pb-9  { padding-bottom:128px !important; }
.pb-10 { padding-bottom:160px !important; }

.v-pad-0  { padding-top:4px !important; padding-bottom:0px !important; }
.v-pad-1  { padding-top:4px !important; padding-bottom:4px !important; }
.v-pad-2  { padding-top:8px !important; padding-bottom:8px !important; }
.v-pad-3  { padding-top:16px !important; padding-bottom:16px !important; }
.v-pad-4  { padding-top:24px !important; padding-bottom:24px !important; }
.v-pad-5  { padding-top:32px !important; padding-bottom:32px !important; }
.v-pad-6  { padding-top:48px !important; padding-bottom:48px !important; }
.v-pad-7  { padding-top:64px !important; padding-bottom:64px !important; }
.v-pad-8  { padding-top:80px !important; padding-bottom:80px !important; }
.v-pad-9  { padding-top:128px !important; padding-bottom:128px !important; }
.v-pad-10 { padding-top:160px !important; padding-bottom:160px !important; }

@media(min-width:768px) {
    /* Margins */
	.md-mt-0  { margin-top:0px !important; }
	.md-mt-1  { margin-top:4px !important; }
	.md-mt-2  { margin-top:8px !important; }
	.md-mt-3  { margin-top:16px !important; }
	.md-mt-4  { margin-top:24px !important; }
	.md-mt-5  { margin-top:32px !important; }
	.md-mt-6  { margin-top:48px !important; }
	.md-mt-7  { margin-top:64px !important; }
	.md-mt-8  { margin-top:80px !important; }
	.md-mt-9  { margin-top:128px !important; }
	.md-mt-10 { margin-top:160px !important; }

	.md-mb-0  { margin-bottom:0px !important; }
	.md-mb-1  { margin-bottom:4px !important; }
	.md-mb-2  { margin-bottom:8px !important; }
	.md-mb-3  { margin-bottom:16px !important; }
	.md-mb-4  { margin-bottom:24px !important; }
	.md-mb-5  { margin-bottom:32px !important; }
	.md-mb-6  { margin-bottom:48px !important; }
	.md-mb-7  { margin-bottom:64px !important; }
	.md-mb-8  { margin-bottom:80px !important; }
	.md-mb-9  { margin-bottom:128px !important; }
	.md-mb-10 { margin-bottom:160px !important; }

	.md-v-margin-0  { margin-top:4px !important; margin-bottom:0px !important; }
	.md-v-margin-1  { margin-top:4px !important; margin-bottom:4px !important; }
	.md-v-margin-2  { margin-top:8px !important; margin-bottom:8px !important; }
	.md-v-margin-3  { margin-top:16px !important; margin-bottom:16px !important; }
	.md-v-margin-4  { margin-top:24px !important; margin-bottom:24px !important; }
	.md-v-margin-5  { margin-top:32px !important; margin-bottom:32px !important; }
	.md-v-margin-6  { margin-top:48px !important; margin-bottom:48px !important; }
	.md-v-margin-7  { margin-top:64px !important; margin-bottom:64px !important; }
	.md-v-margin-8  { margin-top:80px !important; margin-bottom:80px !important; }
	.md-v-margin-9  { margin-top:128px !important; margin-bottom:128px !important; }
	.md-v-margin-10 { margin-top:160px !important; margin-bottom:160px !important; }

	/* Padding */
	.md-pt-0  { padding-top:0px !important; }
	.md-pt-1  { padding-top:4px !important; }
	.md-pt-2  { padding-top:8px !important; }
	.md-pt-3  { padding-top:16px !important; }
	.md-pt-4  { padding-top:24px !important; }
	.md-pt-5  { padding-top:32px !important; }
	.md-pt-6  { padding-top:48px !important; }
	.md-pt-7  { padding-top:64px !important; }
	.md-pt-8  { padding-top:80px !important; }
	.md-pt-9  { padding-top:128px !important; }
	.md-pt-10 { padding-top:160px !important; }

	.md-pb-0  { padding-bottom:0px !important; }
	.md-pb-1  { padding-bottom:4px !important; }
	.md-pb-2  { padding-bottom:8px !important; }
	.md-pb-3  { padding-bottom:16px !important; }
	.md-pb-4  { padding-bottom:24px !important; }
	.md-pb-5  { padding-bottom:32px !important; }
	.md-pb-6  { padding-bottom:48px !important; }
	.md-pb-7  { padding-bottom:64px !important; }
	.md-pb-8  { padding-bottom:80px !important; }
	.md-pb-9  { padding-bottom:128px !important; }
	.md-pb-10 { padding-bottom:160px !important; }

	.md-v-pad-0  { padding-top:4px !important; padding-bottom:0px !important; }
	.md-v-pad-1  { padding-top:4px !important; padding-bottom:4px !important; }
	.md-v-pad-2  { padding-top:8px !important; padding-bottom:8px !important; }
	.md-v-pad-3  { padding-top:16px !important; padding-bottom:16px !important; }
	.md-v-pad-4  { padding-top:24px !important; padding-bottom:24px !important; }
	.md-v-pad-5  { padding-top:32px !important; padding-bottom:32px !important; }
	.md-v-pad-6  { padding-top:48px !important; padding-bottom:48px !important; }
	.md-v-pad-7  { padding-top:64px !important; padding-bottom:64px !important; }
	.md-v-pad-8  { padding-top:80px !important; padding-bottom:80px !important; }
	.md-v-pad-9  { padding-top:128px !important; padding-bottom:128px !important; }
	.md-v-pad-10 { padding-top:160px !important; padding-bottom:160px !important; }
}

@media(min-width:1025px) {
    /* Margins */
	.lg-mt-0  { margin-top:0px !important; }
	.lg-mt-1  { margin-top:4px !important; }
	.lg-mt-2  { margin-top:8px !important; }
	.lg-mt-3  { margin-top:16px !important; }
	.lg-mt-4  { margin-top:24px !important; }
	.lg-mt-5  { margin-top:32px !important; }
	.lg-mt-6  { margin-top:48px !important; }
	.lg-mt-7  { margin-top:64px !important; }
	.lg-mt-8  { margin-top:80px !important; }
	.lg-mt-8-5  { margin-top:100px !important; }
	.lg-mt-9  { margin-top:128px !important; }
	.lg-mt-10 { margin-top:160px !important; }

	.lg-mb-0  { margin-bottom:0px !important; }
	.lg-mb-1  { margin-bottom:4px !important; }
	.lg-mb-2  { margin-bottom:8px !important; }
	.lg-mb-3  { margin-bottom:16px !important; }
	.lg-mb-4  { margin-bottom:24px !important; }
	.lg-mb-5  { margin-bottom:32px !important; }
	.lg-mb-6  { margin-bottom:48px !important; }
	.lg-mb-7  { margin-bottom:64px !important; }
	.lg-mb-8  { margin-bottom:80px !important; }
	.lg-mb-9  { margin-bottom:128px !important; }
	.lg-mb-10 { margin-bottom:160px !important; }

	.lg-v-margin-0  { margin-top:4px !important; margin-bottom:0px !important; }
	.lg-v-margin-1  { margin-top:4px !important; margin-bottom:4px !important; }
	.lg-v-margin-2  { margin-top:8px !important; margin-bottom:8px !important; }
	.lg-v-margin-3  { margin-top:16px !important; margin-bottom:16px !important; }
	.lg-v-margin-4  { margin-top:24px !important; margin-bottom:24px !important; }
	.lg-v-margin-5  { margin-top:32px !important; margin-bottom:32px !important; }
	.lg-v-margin-6  { margin-top:48px !important; margin-bottom:48px !important; }
	.lg-v-margin-7  { margin-top:64px !important; margin-bottom:64px !important; }
	.lg-v-margin-8  { margin-top:80px !important; margin-bottom:80px !important; }
	.lg-v-margin-9  { margin-top:128px !important; margin-bottom:128px !important; }
	.lg-v-margin-10 { margin-top:160px !important; margin-bottom:160px !important; }

	/* Padding */
	.lg-pt-0  { padding-top:0px !important; }
	.lg-pt-1  { padding-top:4px !important; }
	.lg-pt-2  { padding-top:8px !important; }
	.lg-pt-3  { padding-top:16px !important; }
	.lg-pt-4  { padding-top:24px !important; }
	.lg-pt-5  { padding-top:32px !important; }
	.lg-pt-6  { padding-top:48px !important; }
	.lg-pt-7  { padding-top:64px !important; }
	.lg-pt-8  { padding-top:80px !important; }
	.lg-pt-9  { padding-top:128px !important; }
	.lg-pt-10 { padding-top:160px !important; }

	.lg-pb-0  { padding-bottom:0px !important; }
	.lg-pb-1  { padding-bottom:4px !important; }
	.lg-pb-2  { padding-bottom:8px !important; }
	.lg-pb-3  { padding-bottom:16px !important; }
	.lg-pb-4  { padding-bottom:24px !important; }
	.lg-pb-5  { padding-bottom:32px !important; }
	.lg-pb-6  { padding-bottom:48px !important; }
	.lg-pb-7  { padding-bottom:64px !important; }
	.lg-pb-8  { padding-bottom:80px !important; }
	.lg-pb-9  { padding-bottom:128px !important; }
	.lg-pb-10 { padding-bottom:160px !important; }

	.lg-v-pad-0  { padding-top:4px !important; padding-bottom:0px !important; }
	.lg-v-pad-1  { padding-top:4px !important; padding-bottom:4px !important; }
	.lg-v-pad-2  { padding-top:8px !important; padding-bottom:8px !important; }
	.lg-v-pad-3  { padding-top:16px !important; padding-bottom:16px !important; }
	.lg-v-pad-4  { padding-top:24px !important; padding-bottom:24px !important; }
	.lg-v-pad-5  { padding-top:32px !important; padding-bottom:32px !important; }
	.lg-v-pad-6  { padding-top:48px !important; padding-bottom:48px !important; }
	.lg-v-pad-7  { padding-top:64px !important; padding-bottom:64px !important; }
	.lg-v-pad-8  { padding-top:80px !important; padding-bottom:80px !important; }
	.lg-v-pad-9  { padding-top:128px !important; padding-bottom:128px !important; }
	.lg-v-pad-10 { padding-top:160px !important; padding-bottom:160px !important; }
}

.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: Cinzel, serif;
    font-weight: 400;
    font-style: normal;
    color: inherit;
    text-rendering: optimizeLegibility;
    margin-top: 0;
    margin-bottom: .5rem;
    line-height: 1.4;
}

.block { display: block; }
.width-100 { width: 100%; }
.color-gray-500 { color: #666666; }