@font-face {
	font-family: 'Marcellus';
	src: url('../fonts/Marcellus-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/* WCAG 2.4.7: restore a consistent, high-contrast keyboard focus indicator. */
body.woocommerce-cart .iws-cart-quantity-control:focus-visible,
body.woocommerce-cart .iws-cart-line__quantity .quantity input:focus-visible,
.woocommerce-account .iws-account-sidebar a:focus-visible,
.woocommerce-account .iws-account-card:focus-visible,
.woocommerce-account .iws-account-dashboard__profile:focus-visible,
.iws-auth-tabs [role="tab"]:focus-visible,
.iws-auth-page .woocommerce button.button:focus-visible,
.iws-auth-page .woocommerce .button:focus-visible,
.iws-success-dialog__action:focus-visible {
	outline:2px solid var(--grndtide-accent);
	outline-offset:3px;
}

/* Cascading catalog filter: one active taxonomy panel at a time keeps the
 * product archive compact while native checkboxes retain keyboard support. */
.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) {
	padding:0 !important;
	overflow:hidden !important;
	border:1px solid #e1e0dc !important;
	border-radius:12px !important;
	background:#fff !important;
	box-shadow:0 12px 30px rgba(24,24,22,.08);
}
.grndtide-shop .grndtide-cascading-filter {
	display:flex !important;
	width:100%;
	height:460px;
	min-height:0;
	flex-direction:column;
	background:#fff;
}
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading {
	display:flex !important;
	min-height:66px;
	flex:0 0 66px;
	align-items:center;
	justify-content:space-between;
	margin:0 !important;
	padding:0 24px !important;
	border-bottom:1px solid #ecebe7;
	background:#fff;
	color:#171715;
	font:700 16px/1 Arial,Helvetica,sans-serif;
}
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading > div { display:flex; align-items:center; gap:12px; }
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading a {
	display:block;
	min-height:0;
	padding:0;
	border:0;
	background:transparent;
	color:#85837d;
	font:400 12px/1 Arial,Helvetica,sans-serif;
	white-space:nowrap;
}
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading a:hover,
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading a:focus-visible { color:#171715; text-decoration:underline; outline:none; }
.grndtide-shop .grndtide-cascading-filter__body { display:grid; min-height:0; flex:1 1 auto; grid-template-columns:38% 62%; overflow:hidden; }
.grndtide-shop .grndtide-cascading-filter__categories {
	overflow-y:auto;
	border-right:1px solid #e6e5e1;
	background:#fafafa;
	scrollbar-width:thin;
}
.grndtide-shop .grndtide-cascading-filter__categories button {
	display:flex;
	width:100%;
	min-height:53px;
	align-items:center;
	justify-content:space-between;
	padding:0 18px;
	border:0;
	border-left:3px solid transparent;
	background:transparent;
	color:#565752;
	font:400 13px/1.2 Arial,Helvetica,sans-serif;
	text-align:left;
	cursor:pointer;
}
.grndtide-shop .grndtide-cascading-filter__categories button span { color:#b4b3ae; font-size:21px; font-weight:400; }
.grndtide-shop .grndtide-cascading-filter__categories button:hover { background:#f2f1ed; color:#171715; }
.grndtide-shop .grndtide-cascading-filter__categories button.is-active {
	border-left-color:#222;
	background:#fff;
	color:#161614;
	font-weight:700;
}
.grndtide-shop .grndtide-cascading-filter__categories button.is-active span { color:#171715; }
.grndtide-shop .grndtide-cascading-filter__categories button:focus-visible { position:relative; z-index:1; outline:2px solid #242422; outline-offset:-2px; }
.grndtide-shop .grndtide-cascading-filter__panels { min-width:0; overflow:hidden; background:#fff; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-group {
	display:block !important;
	height:100%;
	min-height:0;
	margin:0;
	padding:12px 18px !important;
	overflow-y:auto;
	border:0 !important;
	background:#fff;
	scrollbar-width:thin;
}
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-group[hidden] { display:none !important; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice {
	display:flex !important;
	min-height:48px;
	align-items:center;
	gap:10px;
	padding:0 !important;
	border:0;
	border-bottom:1px dashed #ecebe7;
	background:transparent;
	color:#555650;
	font:400 13px/1.25 Arial,Helvetica,sans-serif;
}
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice:last-child { border-bottom:0; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice:hover { color:#171715; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice input {
	position:static !important;
	width:16px;
	height:16px;
	flex:0 0 16px;
	margin:0;
	padding:0;
	opacity:1 !important;
	pointer-events:auto !important;
	accent-color:#1d1d1a;
}
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice span { display:flex !important; min-width:0; flex:1; justify-content:space-between; gap:10px; white-space:normal !important; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice i { flex:0 0 auto; color:#999993; font-size:11px; }
.grndtide-shop .grndtide-cascading-filter__actions {
	display:grid;
	min-height:88px;
	flex:0 0 88px;
	grid-template-columns:1fr 1fr;
	gap:12px;
	padding:18px 24px;
	border-top:1px solid #ecebe7;
	background:#fafafa;
}
.grndtide-shop .grndtide-cascading-filter__actions button {
	min-height:48px;
	padding:0 12px;
	border:1px solid #d6d5d0;
	border-radius:6px;
	background:#fff;
	color:#62635e;
	font:700 12px/1 Arial,Helvetica,sans-serif;
	cursor:pointer;
}
.grndtide-shop .grndtide-cascading-filter__actions .grndtide-filter-apply {
	display:block;
	width:auto;
	margin:0;
	border-color:#343432;
	background:#343432;
	color:#fff;
}
.grndtide-shop .grndtide-cascading-filter__actions button:hover { border-color:#242422; color:#242422; }
.grndtide-shop .grndtide-cascading-filter__actions .grndtide-filter-apply:hover,
.grndtide-shop .grndtide-cascading-filter__actions .grndtide-filter-apply:focus-visible { background:#171715; color:#fff; }
.grndtide-shop .grndtide-cascading-filter__actions button:focus-visible { outline:2px solid #242422; outline-offset:2px; }

@media (min-width:761px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) { width:400px !important; transform:translateX(-100px) !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-layout { grid-template-columns:400px minmax(0,1fr) !important; }
}

@media (max-width:760px) {
	.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter) { width:min(calc(100% - 24px),400px) !important; max-height:none !important; padding:0 !important; }
	.grndtide-shop .grndtide-cascading-filter { height:min(556px,calc(100dvh - 32px)); }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { min-height:62px; flex-basis:62px; padding:0 18px !important; }
	.grndtide-shop .grndtide-cascading-filter__categories button { min-height:50px; padding:0 14px; font-size:12px; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-group { padding:9px 14px !important; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice { min-height:45px; font-size:12px; }
	.grndtide-shop .grndtide-cascading-filter__actions { min-height:76px; flex-basis:76px; padding:14px 18px; }
}

/* Final card sizing guard. Kept at EOF because the legacy archive rules are
 * intentionally very specific and otherwise reset this component's layout. */
@media (min-width:761px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter { display:flex !important; height:556px !important; min-height:556px !important; max-height:556px !important; flex-direction:column !important; overflow:hidden !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading { display:flex !important; position:static !important; box-sizing:border-box !important; width:100% !important; height:66px !important; min-height:66px !important; margin:0 !important; flex:0 0 66px !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body { display:grid !important; flex:1 1 auto !important; min-height:0 !important; overflow:hidden !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions { display:grid !important; align-self:stretch !important; box-sizing:border-box !important; width:100% !important; height:88px !important; min-height:88px !important; flex:0 0 88px !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter__actions > button,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter__actions > button,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter__actions > button,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter__actions > button { display:flex !important; grid-column:auto !important; align-items:center; justify-content:center; width:100% !important; min-width:0 !important; margin:0 !important; }
}

/* Final archive override: the legacy product archive stylesheet also writes
 * .grndtide-filter-form { display:block !important }. Keep this at EOF so the
 * cascading component owns its fixed header, scrollable body and footer. */
@media (min-width:761px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) { height:558px !important; max-height:558px !important; overflow:hidden !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter { display:flex !important; height:556px !important; min-height:556px !important; max-height:556px !important; flex-direction:column !important; overflow:hidden !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading { display:flex !important; position:static !important; box-sizing:border-box !important; width:100% !important; height:66px !important; min-height:66px !important; margin:0 !important; flex:0 0 66px !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body { display:grid !important; flex:1 1 auto !important; min-height:0 !important; overflow:hidden !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions { display:grid !important; box-sizing:border-box !important; height:88px !important; min-height:88px !important; flex:0 0 88px !important; }
}

/* Cascade layout must win over the archive's legacy accordion and two-column
 * option rules. The form owns the full card height; only each inner column
 * scrolls, so the footer remains fixed in view. */
.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-cascading-filter {
	display:flex !important;
	min-height:0 !important;
}
.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-cascading-filter__body {
	flex:1 1 auto !important;
	min-height:0 !important;
}
.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-cascading-filter__panels {
	display:block !important;
	min-height:0 !important;
}
.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-filter-group--choices {
	display:flex !important;
	flex-direction:column !important;
	height:100% !important;
	min-height:0 !important;
	grid-template-columns:none !important;
}
.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-filter-group--choices .grndtide-filter-choice {
	flex:0 0 auto !important;
	width:100% !important;
}
.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-cascading-filter__actions {
	box-sizing:border-box !important;
}
@media (max-width:760px) {
	.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter) .grndtide-cascading-filter__actions {
	min-height:76px !important;
	height:76px !important;
	flex:0 0 76px !important;
	}
}

body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-filter-group--choices,
body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-filter-group--choices,
body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-filter-group--choices,
body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) .grndtide-filter-group--choices {
	display:flex !important;
	flex-direction:column !important;
	grid-template-columns:none !important;
}

body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading {
	margin:0 !important;
	width:100% !important;
	padding:0 24px !important;
}
@media (max-width:760px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading {
	padding:0 18px !important;
	}
}

/* Keep the cascading filter as a three-region card. These selectors match the
 * archive overrides above, which otherwise reset the form to a block flow and
 * push the action buttons below the visible card. */
@media (min-width:761px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) {
	height:558px !important;
	max-height:558px !important;
	overflow:hidden !important;
	}
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter {
	display:flex !important;
	height:556px !important;
	min-height:556px !important;
	max-height:556px !important;
	flex-direction:column !important;
	overflow:hidden !important;
	}
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading {
	display:flex !important;
	position:static !important;
	box-sizing:border-box !important;
	width:100% !important;
	height:66px !important;
	min-height:66px !important;
	flex:0 0 66px !important;
	}
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter__body,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter__body,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter__body,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter__body {
	display:grid !important;
	flex:1 1 auto !important;
	min-height:0 !important;
	overflow:hidden !important;
	}
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter__actions,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter__actions,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter__actions,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter__actions {
	display:grid !important;
	box-sizing:border-box !important;
	height:88px !important;
	min-height:88px !important;
	flex:0 0 88px !important;
	}
}

:root { --grndtide-ink:#1d1d1d; --grndtide-paper:#f7f7f5; --grndtide-line:#bfc0bd; --grndtide-silver:#d5d7d4; --grndtide-accent:#c7ff3e; --grndtide-max:1440px; }

/* Transparent native scrollbars: keep scrolling behavior intact while
   letting the page surface remain visually uninterrupted. */
html {
	scrollbar-width: thin;
	scrollbar-color: rgba(29, 33, 29, .34) transparent;
}

*:not(.iws-image-lightbox) {
	scrollbar-width: thin;
	scrollbar-color: rgba(29, 33, 29, .34) transparent;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
*:not(.iws-image-lightbox)::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}

html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track,
*:not(.iws-image-lightbox)::-webkit-scrollbar-track {
	background: transparent;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
*:not(.iws-image-lightbox)::-webkit-scrollbar-thumb {
	min-height: 34px;
	border: 2px solid transparent;
	border-radius: 999px;
	background: rgba(29, 33, 29, .30);
	background-clip: padding-box;
}

html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover,
*:not(.iws-image-lightbox)::-webkit-scrollbar-thumb:hover {
	background: rgba(29, 33, 29, .56);
	background-clip: padding-box;
}

@media (max-width: 760px) {
	html {
		scrollbar-width: auto;
		scrollbar-color: auto;
	}
	*:not(.iws-image-lightbox) {
		scrollbar-width: auto;
		scrollbar-color: auto;
	}
	html::-webkit-scrollbar,
	body::-webkit-scrollbar,
	*:not(.iws-image-lightbox)::-webkit-scrollbar {
		width: auto;
		height: auto;
	}
}

body.iws-image-lightbox-open { overflow:hidden; }
.grndtide-product-media .iws-demo-visual--photo { cursor:zoom-in; }
.grndtide-product-media .iws-demo-visual--photo:focus-visible { outline:3px solid var(--grndtide-accent); outline-offset:-3px; }
.iws-image-lightbox { position:fixed; z-index:100; inset:0; display:grid; grid-template-columns:minmax(42px,1fr) minmax(0,5fr) minmax(42px,1fr); grid-template-rows:1fr auto; align-items:center; padding:30px; background:rgba(12,12,12,.96); }
.iws-image-lightbox[hidden] { display:none; }
.iws-image-lightbox__image { grid-column:2; width:auto; max-width:100%; height:auto; max-height:calc(100vh - 60px); margin:auto; object-fit:contain; }
.iws-image-lightbox button { display:grid; width:42px; height:42px; place-items:center; padding:0; border:1px solid rgba(255,255,255,.7); background:transparent; color:#fff; font-size:24px; line-height:1; cursor:pointer; }
.iws-image-lightbox button:hover,.iws-image-lightbox button:focus-visible { border-color:var(--grndtide-accent); color:var(--grndtide-accent); outline:none; }
.iws-image-lightbox__previous { grid-column:1; justify-self:center; }
.iws-image-lightbox__next { grid-column:3; justify-self:center; }
.iws-image-lightbox__close { position:absolute; top:22px; right:22px; z-index:1; font-size:23px !important; }
.iws-image-lightbox__count { grid-column:2; margin:14px 0 0; color:#fff; font-size:12px; font-weight:700; text-align:center; }
@media (max-width:760px) { .iws-image-lightbox { grid-template-columns:42px minmax(0,1fr) 42px; padding:18px 10px; }.iws-image-lightbox__image { max-height:calc(100vh - 90px); }.iws-image-lightbox__close { top:13px; right:13px; }.iws-image-lightbox button { width:38px; height:38px; } }
/* Keep the product purchase panel available while its media is being reviewed. */
@media (min-width:761px) {
	.grndtide-product-page { padding:0 24px 64px; }
	.grndtide-product-primary { display:grid; grid-template-columns:minmax(0,2fr) minmax(340px,1fr); align-items:start; grid-column:1 / -1; }
	.grndtide-product-media .grndtide-product-gallery { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
	.grndtide-product-primary .grndtide-product-summary { position:sticky; top:70px; align-self:start; max-height:calc(100vh - 70px); overflow-y:auto; }
	.grndtide-product-layout { display:grid; grid-template-columns:1fr; }
}

/* Ensure the reference header wins over legacy header rules above. */
.iws-header { position:relative; min-height:64px; border-bottom:1px solid #dededb; background:#fff; color:#242422; }
.iws-header-inner { width:min(calc(100% - 52px),1440px); min-height:64px; grid-template-columns:minmax(160px,1fr) auto minmax(230px,1fr); gap:28px; }
.iws-brand { justify-self:start; }
.iws-brand-wordmark { display:block; font-family:'Marcellus',serif; font-size:27px; font-weight:400; letter-spacing:6px; line-height:1; }
.iws-navigation { justify-self:center; }
.iws-primary-nav { gap:29px; }
.iws-primary-nav > a,.iws-shop-menu-link { min-height:30px; color:#30302d; font-size:10px; font-weight:700; letter-spacing:1px; line-height:30px; text-transform:uppercase; white-space:nowrap; }
.iws-shop-menu-trigger { display:none; }
.iws-nav-dropdown .iws-shop-menu-trigger { display:inline-flex !important; min-height:30px !important; padding:0 !important; color:#30302d; font-size:10px !important; font-weight:700; letter-spacing:1px; line-height:30px; text-transform:uppercase; white-space:nowrap; }
.iws-nav-dropdown .iws-shop-menu-icon { width:10px; height:10px; margin-left:5px; color:inherit; font-size:14px; }
.iws-direct-nav-link { transition:color .18s ease; }
.iws-direct-nav-link:hover,.iws-direct-nav-link:focus-visible,.iws-shop-menu-link:hover,.iws-shop-menu-link:focus-visible { color:#777; }
.iws-header-actions { gap:20px; min-height:30px; align-items:center; color:#343431; font-size:10px; }
.iws-header-action { padding:2px; color:inherit; }
.iws-action-icon { width:19px; height:19px; stroke-width:1.65; }
.iws-search-link .iws-action-icon,.iws-account-link .iws-action-icon,.iws-cart-link .iws-action-icon { color:inherit; }
.iws-cart-count { min-width:15px; height:15px; margin-left:-6px; border-radius:50%; background:transparent; color:inherit; font-size:9px; font-weight:700; }
.iws-shop-menu-panel,.iws-header .iws-account-menu-panel { top:calc(100% + 17px); }
@media (max-width:900px) and (min-width:761px) { .iws-header-inner { gap:16px; }.iws-primary-nav { gap:16px; }.iws-header-actions { gap:12px; } }
@media (max-width:760px) { .iws-header-inner { width:calc(100% - 28px); min-height:60px; grid-template-columns:1fr auto; gap:12px; }.iws-brand-wordmark { font-size:22px; letter-spacing:4px; }.iws-navigation { grid-column:1/-1; width:100%; overflow-x:auto; border-top:1px solid #eee; }.iws-primary-nav { gap:24px; min-width:max-content; padding:7px 0 10px; }.iws-primary-nav > a,.iws-shop-menu-link { min-height:24px; font-size:9px; line-height:24px; }.iws-header-actions { grid-area:1/2; gap:12px; }.iws-action-icon { width:18px; height:18px; } }

/* Header cart preview. */
.iws-cart-menu { position:relative; }
.iws-cart-link { border:0; background:transparent; color:inherit; font:inherit; cursor:pointer; }
.iws-header-actions { align-items:center; min-height:38px; }
.iws-header-action,.iws-account-menu,.iws-cart-menu { min-height:32px; }
.iws-account-menu,.iws-cart-menu { display:flex; align-items:center; }
.iws-account-link,.iws-cart-link { display:inline-flex; align-items:center; min-height:32px; padding:0; }
.iws-account-link { gap:8px; }
.iws-cart-link { gap:6px; }
.iws-mini-cart-panel { position:absolute; top:calc(100% + 14px); right:0; z-index:40; width:min(380px, calc(100vw - 28px)); padding:18px; border:1px solid var(--grndtide-line); background:#fff; box-shadow:0 18px 42px rgba(25,26,24,.16); text-transform:none; }
.iws-mini-cart-content { color:var(--grndtide-ink); font-size:13px; font-weight:400; }
.iws-mini-cart-heading { display:flex; align-items:center; justify-content:space-between; padding-bottom:13px; border-bottom:1px solid var(--grndtide-line); font-size:14px; text-transform:uppercase; }
.iws-mini-cart-close { width:28px; height:28px; margin:-7px -7px -7px 0; border:0; background:transparent; color:inherit; font-size:24px; line-height:1; cursor:pointer; }
.iws-mini-cart-items { max-height:310px; margin:0; padding:0; overflow-y:auto; list-style:none; }
.iws-mini-cart-item { display:grid; grid-template-columns:80px 1fr; gap:12px; padding:14px 0; border-bottom:1px solid var(--grndtide-line); }
.iws-mini-cart-image { display:block; width:80px; height:80px; background:#f4f4f1; }.iws-mini-cart-image img { display:block; width:100%; height:100%; object-fit:cover; }
.iws-mini-cart-product { display:block; color:inherit; font-weight:700; line-height:1.35; }.iws-mini-cart-quantity,.iws-mini-cart-price { display:block; margin-top:5px; color:#656963; font-size:12px; }.iws-mini-cart-price { color:var(--grndtide-ink); font-weight:700; }
.iws-mini-cart-total { display:flex; justify-content:space-between; padding:15px 0; font-size:14px; }.iws-mini-cart-actions { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.iws-mini-cart-actions a,.iws-mini-cart-continue { display:flex; min-height:42px; align-items:center; justify-content:center; border:1px solid var(--grndtide-ink); color:var(--grndtide-ink); font-size:11px; font-weight:700; letter-spacing:0; text-transform:uppercase; }.iws-mini-cart-checkout { background:var(--grndtide-ink); color:#fff !important; }.iws-mini-cart-empty { margin:20px 0 14px; color:#656963; }.iws-mini-cart-continue { width:100%; }
.iws-mini-cart-actions a:hover,.iws-mini-cart-actions a:focus-visible,.iws-mini-cart-continue:hover,.iws-mini-cart-continue:focus-visible { background:var(--grndtide-accent); border-color:var(--grndtide-accent); color:var(--grndtide-ink) !important; }
@media (max-width:760px) { .iws-mini-cart-panel { position:fixed; top:70px; right:14px; } .iws-mini-cart-items { max-height:min(48vh, 310px); } }

/* Local component foundation: quiet Radix/Material-inspired controls for
   the editorial crystal storefront. Bootstrap is loaded locally as a reset;
   these tokens keep every public form and action in the GROUND & TIDE voice. */
:root {
	--iws-control-ink:#273430;
	--iws-control-muted:#657067;
	--iws-control-line:#c9cec5;
	--iws-control-line-strong:#8c958b;
	--iws-control-paper:#fff;
	--iws-control-wash:#f2f4ef;
	--iws-control-focus:#d4aa70;
	--iws-control-radius:3px;
}

body.iws-site button,
body.iws-site input[type='submit'],
body.iws-site input[type='button'],
body.iws-site input[type='reset'],
body.iws-site a.button,
body.iws-site .woocommerce a.button,
body.iws-site .woocommerce button.button,
body.iws-site .woocommerce input.button,
body.iws-site .wc-block-components-button {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	vertical-align:middle;
	min-height:44px;
	padding:0 18px;
	border:1px solid var(--iws-control-ink);
	border-radius:var(--iws-control-radius);
	background:var(--iws-control-ink);
	color:#fff;
	font:700 11px/1.2 Arial,Helvetica,sans-serif;
	letter-spacing:.7px;
	text-transform:uppercase;
	transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
	cursor:pointer;
}

body.iws-site button:hover,
body.iws-site button:focus-visible,
body.iws-site input[type='submit']:hover,
body.iws-site input[type='submit']:focus-visible,
body.iws-site input[type='button']:hover,
body.iws-site input[type='button']:focus-visible,
body.iws-site input[type='reset']:hover,
body.iws-site input[type='reset']:focus-visible,
body.iws-site a.button:hover,
body.iws-site a.button:focus-visible,
body.iws-site .woocommerce a.button:hover,
body.iws-site .woocommerce a.button:focus-visible,
body.iws-site .woocommerce button.button:hover,
body.iws-site .woocommerce button.button:focus-visible,
body.iws-site .woocommerce input.button:hover,
body.iws-site .woocommerce input.button:focus-visible,
body.iws-site .wc-block-components-button:hover,
body.iws-site .wc-block-components-button:focus-visible {
	border-color:var(--iws-control-focus);
	background:var(--iws-control-focus);
	color:var(--iws-control-ink);
	box-shadow:0 0 0 3px rgba(212,170,112,.18);
	outline:0;
}

body.iws-site button:disabled,
body.iws-site input:disabled,
body.iws-site select:disabled,
body.iws-site textarea:disabled,
body.iws-site .button.disabled,
body.iws-site .button:disabled {
	opacity:.52;
	cursor:not-allowed;
}

body.iws-site input:not([type='checkbox']):not([type='radio']):not([type='submit']):not([type='button']):not([type='reset']),
body.iws-site select,
body.iws-site textarea,
body.iws-site .wc-block-components-text-input input,
body.iws-site .wc-block-components-combobox .components-combobox-control__input,
body.iws-site .wc-block-components-select .wc-block-components-select__select {
	box-sizing:border-box;
	width:100%;
	min-height:48px;
	padding:12px 13px;
	border:1px solid var(--iws-control-line);
	border-radius:var(--iws-control-radius);
	background:var(--iws-control-paper);
	color:var(--iws-control-ink);
	font:15px/1.35 Arial,Helvetica,sans-serif;
	transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}

body.iws-site textarea { min-height:120px; resize:vertical; }
body.iws-site select { padding-right:38px; cursor:pointer; }
body.iws-site input::placeholder,body.iws-site textarea::placeholder { color:#8a9289; opacity:1; }
body.iws-site input:not([type='checkbox']):not([type='radio']):focus,
body.iws-site select:focus,
body.iws-site textarea:focus,
body.iws-site .wc-block-components-text-input input:focus,
body.iws-site .wc-block-components-combobox .components-combobox-control__input:focus,
body.iws-site .wc-block-components-select .wc-block-components-select__select:focus {
	border-color:var(--iws-control-ink);
	box-shadow:0 0 0 3px rgba(212,170,112,.2);
	outline:0;
}

body.iws-site input[type='checkbox'],body.iws-site input[type='radio'] {
	width:18px;
	height:18px;
	margin-right:8px;
	accent-color:var(--iws-control-ink);
	vertical-align:-4px;
}

body.iws-site label,
body.iws-site .wc-block-components-text-input label,
body.iws-site .wc-block-components-combobox label,
body.iws-site .wc-block-components-select label {
	color:var(--iws-control-ink);
	font-size:11px;
	font-weight:700;
	letter-spacing:.4px;
	line-height:1.3;
}

body.iws-site .woocommerce form .form-row { margin-bottom:18px; padding:0; }
body.iws-site .woocommerce form .form-row label { display:block; margin-bottom:8px; }
body.iws-site .woocommerce form .form-row .required { color:#9a5b4e; }
body.iws-site .woocommerce-message,
body.iws-site .woocommerce-info,
body.iws-site .woocommerce-error,
body.iws-site .wc-block-components-notice-banner {
	border:1px solid var(--iws-control-line);
	border-left:3px solid var(--iws-control-ink);
	border-radius:var(--iws-control-radius);
	background:var(--iws-control-wash);
	color:var(--iws-control-ink);
	box-shadow:none;
}
body.iws-site .woocommerce-error { border-color:#c68d82; border-left-color:#9a5b4e; background:#fff7f4; color:#713b33; }

/* Shared secondary action: quiet outline buttons for cart, account and forms. */
body.iws-site .iws-mini-cart-actions a:first-child,
body.iws-site .woocommerce .button.alt,
body.iws-site .iws-buy-now,
body.iws-site .iws-secondary-action,
body.iws-site .wc-block-components-button:not(.contained) {
	border-color:var(--iws-control-line-strong);
	background:transparent;
	color:var(--iws-control-ink) !important;
}
body.iws-site .iws-mini-cart-actions a:first-child:hover,
body.iws-site .woocommerce .button.alt:hover,
body.iws-site .iws-buy-now:hover,
body.iws-site .iws-secondary-action:hover,
body.iws-site .wc-block-components-button:not(.contained):hover {
	border-color:var(--iws-control-focus);
	background:var(--iws-control-focus);
}

/* Product controls retain their compact grid role while sharing the same
   focus, hover and disabled language as checkout controls. */
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option,
body.iws-site .grndtide-product-summary .iws-variation-option {
	border-radius:var(--iws-control-radius) !important;
	transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease !important;
}
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option:focus-visible,
body.iws-site .grndtide-product-summary .iws-variation-option:focus-visible {
	box-shadow:0 0 0 3px rgba(212,170,112,.22) !important;
}
body.iws-site .woocommerce ul.products li.product .iws-quick-add {
	border-radius:var(--iws-control-radius) !important;
	box-shadow:none !important;
}

@media (max-width:760px) {
	body.iws-site button,
	body.iws-site input[type='submit'],
	body.iws-site input[type='button'],
	body.iws-site input[type='reset'],
	body.iws-site a.button,
	body.iws-site .woocommerce a.button,
	body.iws-site .woocommerce button.button,
	body.iws-site .woocommerce input.button,
	body.iws-site .wc-block-components-button { min-height:46px; padding:0 15px; }
	body.iws-site input:not([type='checkbox']):not([type='radio']):not([type='submit']):not([type='button']):not([type='reset']),
	body.iws-site select,
	body.iws-site textarea { min-height:50px; }
}

/* Account overview uses the full desktop canvas; the generic page cap makes it
   look like a small widget at high resolutions. */
@media (min-width:1100px) {
	body.woocommerce-account .iws-main { width:100%; max-width:none; padding:58px 0 110px; }
	body.woocommerce-account .iws-page { width:min(1500px,calc(100vw - 96px)); max-width:none; }
	body.woocommerce-account.logged-in .woocommerce { grid-template-columns:294px minmax(0,1fr); gap:28px; }
	body.woocommerce-account.logged-in .woocommerce > .woocommerce-MyAccount-navigation { width:294px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero { min-height:414px; grid-template-columns:minmax(0,1fr) 43%; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-copy { padding:66px 72px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero h2 { max-width:570px; font-size:62px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__grid { grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr); gap:28px; margin-top:28px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-orders,body.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions { min-height:372px; padding:40px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-section-heading h3,body.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions h3 { font-size:36px; }
body.woocommerce-account .iws-account-dashboard--visual .iws-account-card { min-height:103px; padding:20px; }
}

/* Cart recommendations now use the same WooCommerce product-card component as every other shelf. */
.iws-cart-recommendations__grid.products { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; margin:0; padding:0; list-style:none; }
.iws-cart-recommendations__grid.products li.product { min-width:0; }
@media (max-width:760px) { .iws-cart-recommendations__grid.products { grid-auto-columns:calc((100% - 22px) / 3); grid-auto-flow:column; grid-template-columns:none; gap:11px; overflow-x:auto; padding-bottom:4px; scrollbar-width:none; }.iws-cart-recommendations__grid.products::-webkit-scrollbar { display:none; } }

/* Fixed SKU controls keep product cards aligned; long SKU labels reveal themselves on hover. */
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option { display:block !important; width:88px !important; min-width:88px !important; max-width:88px !important; height:30px !important; min-height:30px !important; padding:0 !important; overflow:hidden !important; text-align:left; white-space:nowrap; }
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option > span { display:inline-block; min-width:max-content; padding:0 9px; line-height:28px; white-space:nowrap; }
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option:hover > span,body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option:focus-visible > span { animation:iws-sku-label-scroll 3.2s ease-in-out infinite alternate; }
@keyframes iws-sku-label-scroll { from { transform:translateX(0); } to { transform:translateX(calc(-100% + 88px)); } }
@media (max-width:760px) { body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option { width:75px !important; min-width:75px !important; max-width:75px !important; height:28px !important; min-height:28px !important; } body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option > span { padding:0 7px; line-height:26px; } @keyframes iws-sku-label-scroll { to { transform:translateX(calc(-100% + 75px)); } } }

/* Give every card a stable purchase row so SKU controls and cart buttons share one baseline. */
body.iws-site .woocommerce ul.products li.product { display:flex !important; min-width:0; flex-direction:column; }
body.iws-site .woocommerce ul.products li.product > .woocommerce-LoopProduct-link { display:flex; min-width:0; flex:1 0 auto; flex-direction:column; }
body.iws-site .woocommerce ul.products li.product .woocommerce-loop-product__title { min-height:3.45em !important; }
body.iws-site .woocommerce ul.products li.product .price { min-height:20px !important; }
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-options { box-sizing:border-box; min-height:54px !important; margin-top:auto; align-items:flex-end; }
body.iws-site .woocommerce ul.products li.product .iws-quick-add { bottom:12px !important; }
@media (max-width:760px) { body.iws-site .woocommerce ul.products li.product .woocommerce-loop-product__title { min-height:3.35em !important; } body.iws-site .woocommerce ul.products li.product .iws-loop-sku-options { min-height:47px !important; } body.iws-site .woocommerce ul.products li.product .iws-quick-add { bottom:9px !important; } }

/* Shared product-card purchase controls across homepage, catalog, and related-product loops. */
.woocommerce ul.products li.product { position:relative; }
.woocommerce ul.products li.product .iws-loop-sku-options { display:flex !important; min-height:42px !important; align-items:flex-start; padding:12px 64px 0 14px !important; }
.woocommerce ul.products li.product .iws-loop-sku-option { display:inline-flex !important; width:auto !important; max-width:100%; min-height:30px !important; align-items:center; padding:5px 10px !important; border:1px solid #a9aaa6; border-radius:0; background:#fff; color:#20201d; font:700 10px/1 Arial,Helvetica,sans-serif; white-space:nowrap; }
.woocommerce ul.products li.product .iws-quick-add { position:absolute !important; z-index:7; right:14px !important; bottom:14px !important; display:grid !important; width:42px !important; min-width:42px !important; height:42px !important; min-height:42px !important; place-items:center; padding:0 !important; border:1px solid #1d1d1a !important; border-radius:50% !important; background:#1d1d1a !important; color:#fff !important; box-shadow:0 5px 12px rgba(0,0,0,.18) !important; }
.woocommerce ul.products li.product .iws-variable-quick-add[hidden] { display:none !important; }
.woocommerce ul.products li.product .iws-quick-add:hover,.woocommerce ul.products li.product .iws-quick-add:focus-visible { border-color:#4f544c !important; background:#4f544c !important; color:#fff !important; transform:translateY(-2px); outline:none; }
.stones-products .iws-loop-swatches { display:flex !important; }
.stones-products .iws-quick-add { width:42px !important; min-width:42px !important; height:42px !important; min-height:42px !important; border:1px solid #1d1d1a !important; background:#1d1d1a !important; color:#fff !important; box-shadow:0 5px 12px rgba(0,0,0,.18) !important; }
.grndtide-catalog-results .iws-product-facts,.grndtide-catalog-results .iws-loop-swatches,.grndtide-catalog-results .iws-quick-add,.grndtide-catalog-results .button { display:flex !important; }
.grndtide-catalog-results .iws-product-facts { display:block !important; }
.grndtide-catalog-results .iws-quick-add { display:grid !important; }
.grndtide-catalog-results > .products li.product::after { display:none; }
@media (max-width:760px) { .woocommerce ul.products li.product .iws-loop-sku-options { min-height:39px !important; padding:9px 52px 0 10px !important; }.woocommerce ul.products li.product .iws-loop-sku-option { min-height:28px !important; padding:4px 8px !important; font-size:9px; }.woocommerce ul.products li.product .iws-quick-add { right:10px !important; bottom:10px !important; width:36px !important; min-width:36px !important; height:36px !important; min-height:36px !important; } }
.stones-home .stones-products .iws-loop-swatches,.stones-home .stones-products .iws-quick-add { display:flex !important; }

/* Variable-product choices open as a compact card-centred floating panel. */
.woocommerce ul.products li.product .iws-loop-sku-options { position:absolute !important; z-index:20; top:50%; left:50%; display:none !important; width:calc(100% - 20px) !important; min-height:0 !important; max-height:min(230px,55%); align-content:center; align-items:center; justify-content:center; gap:6px; overflow:auto; padding:12px !important; border:1px solid #27302b; background:#fff; box-shadow:0 12px 28px rgba(18,22,19,.28); transform:translate(-50%,-50%); }
.woocommerce ul.products li.product .iws-loop-sku-options[hidden] { display:none !important; }
.woocommerce ul.products li.product .iws-loop-sku-options.is-open { display:flex !important; }
.woocommerce ul.products li.product .iws-loop-sku-option { flex:0 0 auto; width:auto !important; min-width:0 !important; max-width:100%; }
.woocommerce ul.products li.product .iws-loop-sku-options::before { position:absolute; top:0; right:0; left:0; height:3px; background:var(--grndtide-accent,#c7ff3e); content:''; }

/* Cart action floats across the card footer and reveals on card interaction. */
.woocommerce ul.products li.product .iws-quick-add { right:12px !important; bottom:12px !important; width:calc(100% - 24px) !important; min-width:0 !important; height:50px !important; min-height:50px !important; border-radius:0 !important; opacity:0; pointer-events:none; transform:translateY(8px); transition:opacity .2s ease,transform .2s ease,background-color .2s ease; }
.woocommerce ul.products li.product:hover .iws-quick-add,.woocommerce ul.products li.product:focus-within .iws-quick-add { opacity:1; pointer-events:auto; transform:translateY(0); }
.woocommerce ul.products li.product .iws-quick-add svg { width:20px; height:20px; }
@media (max-width:760px) {
	.woocommerce ul.products li.product .iws-quick-add { right:9px !important; bottom:9px !important; width:calc(100% - 18px) !important; height:44px !important; min-height:44px !important; opacity:1; pointer-events:auto; transform:none; }
}
.stones-home .stones-products .iws-quick-add { display:grid !important; }
.grndtide-shop .grndtide-catalog-results .iws-loop-swatches { display:flex !important; }
.grndtide-shop .grndtide-catalog-results .iws-quick-add { display:grid !important; }

/* Final desktop homepage shelf override. */
@media (min-width:761px) {
	.stones-home .stones-products > .woocommerce > ul.products { grid-template-columns:repeat(6,minmax(0,1fr)) !important; }
	.stones-home .stones-products > .woocommerce { width:min(100%,1800px) !important; }
	.stones-home .stones-products .stones-section__heading { width:min(100%,1800px) !important; }
}

/* Site-wide header contract: every public template shares this exact treatment. */
body .iws-header {
	position:sticky !important;
	top:0;
	z-index:100;
	min-height:64px;
	border:0;
	border-bottom:1px solid #dededb;
	background:#fff;
	color:#171717;
	box-shadow:none;
}
body .iws-header .iws-header-inner {
	width:min(calc(100% - 52px),1440px);
	min-height:64px;
	display:grid;
	grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr);
	align-items:center;
	gap:28px;
}
body .iws-header .iws-brand { justify-self:start; transform:translateX(-247px); }
body .iws-header .iws-brand a { display:flex; align-items:center; gap:8px; }
body .iws-header .iws-brand img { width:25px; height:28px; object-fit:contain; filter:none; }
body .iws-header .iws-brand-wordmark { display:block; color:#171717; font-family:'Marcellus',serif; font-size:30px !important; font-weight:700 !important; letter-spacing:3px; line-height:1; }
body .iws-header .iws-navigation { justify-self:center; }
body .iws-header .iws-primary-nav { display:flex; align-items:center; gap:29px; }
body .iws-header .iws-primary-nav > a,
body .iws-header .iws-shop-menu-link,
body .iws-header .iws-nav-dropdown .iws-shop-menu-trigger {
	min-height:30px !important;
	color:#171717 !important;
	font-size:14px !important;
	font-weight:600 !important;
	letter-spacing:.7px;
	line-height:30px;
	text-shadow:none;
}
body .iws-header .iws-header-actions { display:flex; justify-self:end; align-items:center; gap:20px; min-height:30px; color:#171717 !important; font-weight:800; }
body .iws-header .iws-header-action,
body .iws-header .iws-search-link,
body .iws-header .iws-account-link,
body .iws-header .iws-cart-link { color:#171717 !important; }
body .iws-header .iws-action-icon { width:23px !important; height:23px !important; color:currentColor !important; stroke-width:2; }
body .iws-header .iws-cart-count { color:currentColor; }

/* The home hero is the only transparent variant. */
body .iws-header.iws-header--overlay { margin-bottom:-64px; border-color:transparent; background:transparent; color:#fff; }
body .iws-header.iws-header--overlay .iws-brand img { filter:grayscale(1) brightness(0) invert(1); }
body .iws-header.iws-header--overlay .iws-brand-wordmark,
body .iws-header.iws-header--overlay .iws-primary-nav > a,
body .iws-header.iws-header--overlay .iws-shop-menu-link,
body .iws-header.iws-header--overlay .iws-nav-dropdown .iws-shop-menu-trigger,
body .iws-header.iws-header--overlay .iws-header-actions,
body .iws-header.iws-header--overlay .iws-header-action,
body .iws-header.iws-header--overlay .iws-search-link,
body .iws-header.iws-header--overlay .iws-account-link,
body .iws-header.iws-header--overlay .iws-cart-link { color:#fff !important; text-shadow:0 1px 4px rgba(0,0,0,.5); }
body .iws-header.iws-header--overlay.iws-header--scrolled { border-bottom-color:#dededb; background:#fff; color:#171717; box-shadow:0 2px 14px rgba(0,0,0,.06); }
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-brand img { filter:none; }
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-brand-wordmark,
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-primary-nav > a,
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-shop-menu-link,
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-nav-dropdown .iws-shop-menu-trigger,
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-header-actions,
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-header-action,
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-search-link,
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-account-link,
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-cart-link { color:#171717 !important; text-shadow:none; }

@media (max-width:760px) {
	body .iws-header .iws-header-inner { width:calc(100% - 28px); min-height:60px; grid-template-columns:1fr auto; gap:12px; }
	body .iws-header .iws-brand-wordmark { font-size:25px !important; letter-spacing:2px; }
	body .iws-header .iws-brand img { width:23px; height:26px; }
	body .iws-header .iws-brand { transform:translateX(-11px); }
	body .iws-header .iws-navigation { grid-column:1/-1; width:100%; overflow-x:auto; border-top:1px solid #eee; }
	body .iws-header .iws-primary-nav { gap:24px; min-width:max-content; padding:7px 0 10px; }
	body .iws-header .iws-primary-nav > a,
	body .iws-header .iws-shop-menu-link,
	body .iws-header .iws-nav-dropdown .iws-shop-menu-trigger { min-height:24px !important; font-size:11px !important; line-height:24px; }
	body .iws-header .iws-header-actions { grid-area:1/2; gap:12px; }
	body .iws-header .iws-action-icon { width:20px !important; height:20px !important; }
	body .iws-header.iws-header--overlay { margin-bottom:-95px; }
	body .iws-header.iws-header--overlay .iws-navigation { border-top-color:rgba(255,255,255,.25); }
	body .iws-header.iws-header--overlay.iws-header--scrolled .iws-navigation { border-top-color:#eee; }
}

/* Homepage grid must be declared after the global WooCommerce shelf rules. */
@media (min-width:761px) {
	.stones-home .stones-products > .woocommerce > ul.products { grid-template-columns:repeat(6,minmax(0,1fr)) !important; }
}

/* Two SKU chips always share the left purchase column before wrapping. */
@media (min-width:761px) {
	body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-loop-sku-options { --iws-sku-chip-width:calc((100% - 6px) / 2); }
	body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-loop-sku-option { box-sizing:border-box; width:var(--iws-sku-chip-width) !important; min-width:var(--iws-sku-chip-width) !important; max-width:var(--iws-sku-chip-width) !important; flex:0 0 var(--iws-sku-chip-width); }
	@keyframes iws-sku-label-scroll { to { transform:translateX(calc(-100% + var(--iws-sku-chip-width))); } }
}

/* Wider SKU chips with a lit-edge hover state. */
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option { width:106px !important; min-width:106px !important; max-width:106px !important; }
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option:hover,body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option:focus-visible { border-color:#a9aaa6 !important; background:#e3e4e0 !important; box-shadow:none; color:#1b1d19 !important; outline:none; }
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option.is-selected { border-color:#1d1d1a !important; background:#1d1d1a !important; box-shadow:none; color:#fff !important; }
@keyframes iws-sku-label-scroll { to { transform:translateX(calc(-100% + 106px)); } }
@media (max-width:760px) { body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option { width:90px !important; min-width:90px !important; max-width:90px !important; } @keyframes iws-sku-label-scroll { to { transform:translateX(calc(-100% + 90px)); } } }

/* SKU labels stay within the chip; long values truncate instead of scrolling. */
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option > span { width:100%; max-width:100%; overflow:hidden; text-overflow:ellipsis; }
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option:hover > span,body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option:focus-visible > span { animation:none; transform:none; }
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option > .iws-sku-label--overflowing { width:max-content; max-width:none; overflow:visible; text-overflow:clip; }
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option:hover > .iws-sku-label--overflowing,body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option:focus-visible > .iws-sku-label--overflowing { animation:iws-sku-label-scroll 3.2s ease-in-out infinite alternate; }

@media (min-width:761px) {
	body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-loop-sku-options { --iws-sku-chip-width:calc((100% - 6px) / 2); }
	body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-loop-sku-option { box-sizing:border-box; width:var(--iws-sku-chip-width) !important; min-width:var(--iws-sku-chip-width) !important; max-width:var(--iws-sku-chip-width) !important; flex:0 0 var(--iws-sku-chip-width); }
	@keyframes iws-sku-label-scroll { to { transform:translateX(calc(-100% + var(--iws-sku-chip-width))); } }
}

/* Product-card purchase footer: independent SKU and cart columns, centred as a single unit. */
body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls { display:grid; grid-template-columns:minmax(0,1fr) 66px; gap:0; min-height:66px; margin-top:auto; }
body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-loop-sku-options { display:none !important; min-width:0; min-height:0 !important; align-content:center; align-items:center; flex-wrap:wrap; gap:6px; margin:0; padding:10px 12px !important; }
body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-loop-sku-options.is-open { display:flex !important; }
body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-quick-add { position:static !important; display:grid !important; width:42px !important; min-width:42px !important; height:42px !important; min-height:42px !important; align-self:center; justify-self:center; margin:0 !important; transform:none !important; }
body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-quick-add:hover,body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-quick-add:focus-visible { transform:translateY(-2px) !important; }
body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-variable-quick-add[hidden] { display:none !important; }
@media (max-width:760px) { body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls { grid-template-columns:minmax(0,1fr) 56px; min-height:56px; } body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-loop-sku-options { padding:8px 9px !important; } body.iws-site .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-quick-add { width:36px !important; min-width:36px !important; height:36px !important; min-height:36px !important; } }

/* JS measures the SKU row(s) and vertically centres the cart control beside them. */
body.iws-site .woocommerce ul.products li.product .iws-quick-add--sku-aligned { top:var(--iws-sku-midpoint) !important; bottom:auto !important; transform:translateY(-50%); }
body.iws-site .woocommerce ul.products li.product .iws-quick-add--sku-aligned:hover,body.iws-site .woocommerce ul.products li.product .iws-quick-add--sku-aligned:focus-visible { transform:translateY(calc(-50% - 2px)); }

/* Centre short SKU labels inside their fixed-width controls. */
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option { text-align:center; }
body.iws-site .woocommerce ul.products li.product .iws-loop-sku-option > span { box-sizing:border-box; min-width:100%; padding:0 9px; text-align:center; }

/* Final header contrast and scale pass. */
.iws-header .iws-brand-wordmark { font-size:37px !important; font-weight:700 !important; letter-spacing:3px; }
.iws-header .iws-primary-nav > a,.iws-header .iws-shop-menu-link,.iws-header .iws-nav-dropdown .iws-shop-menu-trigger { font-size:18px !important; font-weight:800 !important; letter-spacing:.7px; }
.iws-header .iws-header-actions { font-weight:800; }
.iws-header .iws-action-icon { width:24px !important; height:24px !important; stroke-width:2; }
.iws-header.iws-header--overlay .iws-brand-wordmark,.iws-header.iws-header--overlay .iws-primary-nav > a,.iws-header.iws-header--overlay .iws-shop-menu-link,.iws-header.iws-header--overlay .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header.iws-header--overlay .iws-header-actions { color:#fff !important; text-shadow:0 1px 4px rgba(0,0,0,.45); }
.iws-header.iws-header--overlay .iws-action-icon { color:#fff; }
.iws-header.iws-header--overlay.iws-header--scrolled .iws-brand-wordmark,.iws-header.iws-header--overlay.iws-header--scrolled .iws-primary-nav > a,.iws-header.iws-header--overlay.iws-header--scrolled .iws-shop-menu-link,.iws-header.iws-header--overlay.iws-header--scrolled .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header.iws-header--overlay.iws-header--scrolled .iws-header-actions { color:#171717 !important; text-shadow:none; }

.iws-header.iws-header--overlay.iws-header--scrolled .iws-action-icon { color:#171717; }
@media (max-width:760px) { .iws-header .iws-brand-wordmark { font-size:31px !important; }.iws-header .iws-primary-nav > a,.iws-header .iws-shop-menu-link,.iws-header .iws-nav-dropdown .iws-shop-menu-trigger { font-size:13px !important; }.iws-header .iws-action-icon { width:21px !important; height:21px !important; } }

/* Final homepage overlay pass: no hairline, no shadow, readable black controls. */
.iws-header.iws-header--overlay { border:0 !important; box-shadow:none !important; outline:0 !important; background:transparent !important; color:#171717 !important; }
.iws-header.iws-header--overlay .iws-navigation { border:0 !important; }
.iws-header.iws-header--overlay .iws-brand img { filter:none !important; }
.iws-header.iws-header--overlay .iws-brand-wordmark,.iws-header.iws-header--overlay .iws-primary-nav > a,.iws-header.iws-header--overlay .iws-shop-menu-link,.iws-header.iws-header--overlay .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header.iws-header--overlay .iws-header-actions { color:#171717 !important; text-shadow:0 1px 3px rgba(255,255,255,.9); }
.iws-header.iws-header--overlay.iws-header--scrolled { border-bottom:1px solid #dededb !important; box-shadow:0 2px 14px rgba(0,0,0,.06) !important; background:#fff !important; }
.iws-header.iws-header--overlay.iws-header--scrolled .iws-brand-wordmark,.iws-header.iws-header--overlay.iws-header--scrolled .iws-primary-nav > a,.iws-header.iws-header--overlay.iws-header--scrolled .iws-shop-menu-link,.iws-header.iws-header--overlay.iws-header--scrolled .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header.iws-header--overlay.iws-header--scrolled .iws-header-actions { color:#171717 !important; text-shadow:none; }

/* Final homepage overlay pass: no hairline, no shadow, readable black controls. */
.iws-header.iws-header--overlay { border:0 !important; box-shadow:none !important; outline:0 !important; background:transparent !important; color:#171717 !important; }
.iws-header.iws-header--overlay .iws-navigation { border:0 !important; }
.iws-header.iws-header--overlay .iws-brand img { filter:none !important; }
.iws-header.iws-header--overlay .iws-brand-wordmark,.iws-header.iws-header--overlay .iws-primary-nav > a,.iws-header.iws-header--overlay .iws-shop-menu-link,.iws-header.iws-header--overlay .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header.iws-header--overlay .iws-header-actions { color:#171717 !important; text-shadow:0 1px 3px rgba(255,255,255,.9); }
.iws-header.iws-header--overlay.iws-header--scrolled { border-bottom:1px solid #dededb !important; box-shadow:0 2px 14px rgba(0,0,0,.06) !important; background:#fff !important; }
.iws-header.iws-header--overlay.iws-header--scrolled .iws-brand-wordmark,.iws-header.iws-header--overlay.iws-header--scrolled .iws-primary-nav > a,.iws-header.iws-header--overlay.iws-header--scrolled .iws-shop-menu-link,.iws-header.iws-header--overlay.iws-header--scrolled .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header.iws-header--overlay.iws-header--scrolled .iws-header-actions { color:#171717 !important; text-shadow:none; }

/* Final homepage-specific sizing overrides: this stylesheet has legacy card rules later in the file. */
@media (min-width:761px) {
	.stones-products .iws-demo-visual { min-height:0 !important; height:auto !important; aspect-ratio:1.46 !important; }
	.stones-products .iws-demo-visual img { width:100%; height:100% !important; aspect-ratio:auto !important; object-fit:cover; }
}

/* Keep the homepage shelves at six cards per desktop row despite later global WooCommerce grid rules. */
@media (min-width:761px) {
	.stones-home .stones-products > .woocommerce > ul.products { grid-template-columns:repeat(6,minmax(0,1fr)) !important; }
}

/* Homepage product shelves: twelve centered square cards in a 6 x 2 desktop grid. */
.stones-products { padding-right:clamp(24px,2vw,42px); padding-left:clamp(24px,2vw,42px); }
.stones-products .stones-section__heading { width:min(100%,1800px); margin-right:auto; margin-left:auto; }
.stones-products > .woocommerce { display:block !important; width:min(100%,1800px); margin-right:auto !important; margin-left:auto !important; }
.stones-products .products { width:100%; margin-right:auto !important; margin-left:auto !important; grid-template-columns:repeat(6,minmax(0,1fr)) !important; grid-auto-rows:auto; align-items:start; justify-items:stretch; gap:24px 20px !important; }
.stones-products .products li.product { min-width:0; width:auto !important; }
.stones-products .iws-demo-visual { aspect-ratio:1 / 1 !important; }
.stones-products .iws-demo-visual img { aspect-ratio:1 / 1 !important; object-fit:cover; }
.stones-products--new { border-top:1px solid var(--stone-line); }
.stones-products--hot { border-top:1px solid var(--stone-line); }
@media (max-width:760px) {
	.stones-products { padding-right:16px; padding-left:16px; }
	.stones-products .stones-section__heading { width:100%; }
	.stones-products > .woocommerce { width:100%; }
	.stones-products .products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:15px 9px !important; }
	.stones-products .products li.product:nth-child(n+3) { display:block !important; }
	.stones-products .iws-demo-visual { aspect-ratio:1 / 1 !important; }
	.stones-products .woocommerce-loop-product__title { min-height:2.35em; }
}

/* Final GROUND & TIDE header rules must follow the legacy theme bundle. */
.iws-header { position:relative; min-height:64px; border-bottom:1px solid #dededb; background:#fff; color:#242422; }
.iws-header-inner { width:min(calc(100% - 52px),1440px); min-height:64px; grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr); gap:28px; }
.iws-brand { justify-self:start; }.iws-brand a { display:flex; align-items:center; gap:8px; }.iws-brand img { width:25px; height:28px; object-fit:contain; }.iws-brand-wordmark { display:block; font-family:'Marcellus',serif; font-size:25px; font-weight:400; letter-spacing:3px; line-height:1; }
.iws-navigation { justify-self:center; }.iws-primary-nav { gap:29px; }
.iws-primary-nav > a,.iws-shop-menu-link,.iws-nav-dropdown .iws-shop-menu-trigger { min-height:30px !important; color:#30302d; font-size:9px !important; font-weight:700; letter-spacing:.8px; line-height:30px; text-transform:uppercase; white-space:nowrap; }
.iws-shop-menu-trigger { display:none; }.iws-nav-dropdown .iws-shop-menu-trigger { display:inline-flex !important; padding:0 !important; border:0; background:transparent; cursor:pointer; }.iws-nav-dropdown .iws-shop-menu-icon { width:10px; height:10px; margin-left:5px; color:inherit; font-size:14px; }
.iws-header-actions { gap:20px; min-height:30px; align-items:center; color:#343431; font-size:10px; }.iws-header-action { padding:2px; color:inherit; }.iws-action-icon { width:19px; height:19px; stroke-width:1.65; }.iws-search-link .iws-action-icon,.iws-account-link .iws-action-icon,.iws-cart-link .iws-action-icon { color:inherit; }.iws-cart-count { min-width:15px; height:15px; margin-left:-6px; border-radius:50%; background:transparent; color:inherit; font-size:9px; font-weight:700; }
.iws-shop-menu-panel,.iws-header .iws-account-menu-panel { top:calc(100% + 17px); }
.iws-header--overlay { position:sticky; top:0; z-index:20; margin-bottom:-64px; border-bottom-color:transparent; background:transparent; color:#fff; transition:background-color .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease; }
.iws-header--overlay .iws-brand img { filter:grayscale(1) brightness(0) invert(1); }.iws-header--overlay .iws-primary-nav > a,.iws-header--overlay .iws-shop-menu-link,.iws-header--overlay .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header--overlay .iws-header-actions { color:#fff; }.iws-header--overlay .iws-shop-menu-icon { color:currentColor; }.iws-header--overlay.iws-header--scrolled { border-bottom-color:#dededb; background:#fff; color:#242422; box-shadow:0 2px 14px rgba(0,0,0,.06); }.iws-header--overlay.iws-header--scrolled .iws-brand img { filter:none; }.iws-header--overlay.iws-header--scrolled .iws-primary-nav > a,.iws-header--overlay.iws-header--scrolled .iws-shop-menu-link,.iws-header--overlay.iws-header--scrolled .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header--overlay.iws-header--scrolled .iws-header-actions { color:#30302d; }
@media (max-width:900px) and (min-width:761px) { .iws-header-inner { gap:16px; }.iws-primary-nav { gap:16px; }.iws-header-actions { gap:12px; } }
@media (max-width:760px) { .iws-header-inner { width:calc(100% - 28px); min-height:60px; grid-template-columns:1fr auto; gap:12px; }.iws-brand img { width:23px; height:26px; }.iws-brand-wordmark { font-size:21px; letter-spacing:2px; }.iws-navigation { grid-column:1/-1; width:100%; overflow-x:auto; border-top:1px solid #eee; }.iws-primary-nav { gap:24px; min-width:max-content; padding:7px 0 10px; }.iws-primary-nav > a,.iws-shop-menu-link,.iws-nav-dropdown .iws-shop-menu-trigger { min-height:24px !important; font-size:9px !important; line-height:24px; }.iws-header-actions { grid-area:1/2; gap:12px; }.iws-action-icon { width:18px; height:18px; }.iws-header--overlay { margin-bottom:-95px; }.iws-header--overlay .iws-navigation { border-top-color:rgba(255,255,255,.25); }.iws-header--overlay.iws-header--scrolled .iws-navigation { border-top-color:#eee; } }

/* GROUND & TIDE reference header: a quiet, editorial single-line navigation. */
.iws-header { position:relative; min-height:64px; border-bottom:1px solid #dededb; background:#fff; color:#242422; }
.iws-header-inner { width:min(calc(100% - 52px),1440px); min-height:64px; grid-template-columns:minmax(160px,1fr) auto minmax(230px,1fr); gap:28px; }
.iws-brand { justify-self:start; }
.iws-brand a { display:block; }
.iws-brand-wordmark { display:block; font-family:'Marcellus',serif; font-size:27px; font-weight:400; letter-spacing:6px; line-height:1; }
.iws-navigation { justify-self:center; }
.iws-primary-nav { gap:29px; }
.iws-primary-nav > a,.iws-shop-menu-link { min-height:30px; color:#30302d; font-size:10px; font-weight:700; letter-spacing:1px; line-height:30px; text-transform:uppercase; white-space:nowrap; }
/* Logged-in account pages do not need the generic WordPress page heading. */
.woocommerce-account.logged-in .iws-page-header { display:none; }
.woocommerce-account.logged-in .iws-page:has(.iws-account-dashboard--visual) { padding-top:44px; }
.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar .is-active a { position:relative; background:#dff05d; color:#101510; box-shadow:inset 5px 0 0 #fff,0 7px 18px rgba(0,0,0,.22); font-weight:800; }
.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar .is-active a::after { position:absolute; top:50%; right:-10px; width:20px; height:20px; background:#dff05d; content:""; transform:translateY(-50%) rotate(45deg); }
.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar .is-active a > * { position:relative; z-index:1; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar .is-active .iws-account-sidebar__icon,.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar .is-active .iws-account-sidebar__arrow { color:#101510; }
@media (min-width:1200px) { .woocommerce-account .iws-page:has(.iws-account-dashboard--visual) { width:min(calc(100% - 96px),1500px); padding-top:62px; padding-bottom:110px; }.woocommerce-account.logged-in .woocommerce:has(.iws-account-dashboard--visual) { grid-template-columns:285px minmax(0,1fr); gap:26px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero { min-height:390px; grid-template-columns:minmax(0,1fr) 42%; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-copy { padding:62px 68px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero h2 { max-width:540px; font-size:58px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-note { max-width:430px; margin:26px 0; font-size:15px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-mark { right:34px; bottom:-52px; font-size:240px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__grid { gap:26px; margin-top:26px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders,.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions { min-height:355px; padding:38px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-section-heading h3,.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions h3 { font-size:34px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-order { margin-top:36px; padding-top:24px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty { min-height:208px; grid-template-columns:44% 1fr; gap:28px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty-image { min-height:208px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty h4 { font-size:28px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-card { min-height:96px; padding:17px; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar__intro { min-height:168px; padding:30px 27px; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar a { min-height:61px; padding:0 22px; } }
/* Final homepage overlay pass: no hairline, no shadow, readable black controls. */
.iws-header.iws-header--overlay { border:0 !important; box-shadow:none !important; outline:0 !important; background:transparent !important; color:#171717 !important; }
.iws-header.iws-header--overlay .iws-brand img { filter:none !important; }
.iws-header.iws-header--overlay .iws-brand-wordmark,.iws-header.iws-header--overlay .iws-primary-nav > a,.iws-header.iws-header--overlay .iws-shop-menu-link,.iws-header.iws-header--overlay .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header.iws-header--overlay .iws-header-actions { color:#171717 !important; text-shadow:0 1px 3px rgba(255,255,255,.9); }
.iws-header.iws-header--overlay.iws-header--scrolled { border-bottom:1px solid #dededb !important; box-shadow:0 2px 14px rgba(0,0,0,.06) !important; background:#fff !important; }
.iws-header.iws-header--overlay.iws-header--scrolled .iws-brand-wordmark,.iws-header.iws-header--overlay.iws-header--scrolled .iws-primary-nav > a,.iws-header.iws-header--overlay.iws-header--scrolled .iws-shop-menu-link,.iws-header.iws-header--overlay.iws-header--scrolled .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header.iws-header--overlay.iws-header--scrolled .iws-header-actions { color:#171717 !important; text-shadow:none; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--grndtide-paper); color:var(--grndtide-ink); font-family:'Marcellus',serif; font-size:14px; line-height:1.45; } a { color:inherit; text-decoration:none; } img { display:block; max-width:100%; height:auto; } h1,h2,h3,p { margin:0; } .iws-container { width:min(calc(100% - 48px),var(--grndtide-max)); margin:0 auto; }
.iws-announcement { min-height:36px; display:flex; align-items:center; justify-content:center; padding:6px 24px; background:var(--grndtide-ink); color:#fff; font-size:11px; font-weight:700; text-align:center; text-transform:uppercase; }.iws-header { position:sticky; top:0; z-index:20; background:#fff; border-bottom:1px solid var(--grndtide-line); }.iws-header-inner { min-height:58px; display:grid; grid-template-columns:1fr auto 1fr; gap:16px; align-items:center; }.iws-brand { justify-self:center; }.iws-brand a { display:flex; align-items:center; gap:6px; font-family:'Marcellus',serif; font-size:20px; font-weight:700; }.iws-brand img { width:30px; height:40px; object-fit:contain; }.iws-navigation .menu { display:flex; align-items:center; gap:25px; padding:0; margin:0; list-style:none; font-size:12px; font-weight:800; }.iws-navigation .menu li:nth-child(-n+2) a::after { content:'+'; margin-left:7px; color:#777; font-weight:400; }.iws-header-actions { display:flex; justify-content:flex-end; gap:15px; font-size:11px; font-weight:700; text-transform:uppercase; }.iws-cart-link { display:flex; gap:5px; align-items:center; }.iws-cart-count { display:inline-grid; min-width:17px; height:17px; place-items:center; border-radius:50%; background:var(--grndtide-accent); font-size:10px; }
.grndtide-campaign { position:relative; min-height:620px; overflow:hidden; background:#0d1113; color:#fff; }.grndtide-campaign-copy { position:relative; z-index:2; width:min(48%,680px); padding:150px clamp(32px,8vw,130px) 80px; }.grndtide-campaign-copy > p,.grndtide-campaign-copy > span { display:block; margin-bottom:18px; font-size:11px; font-weight:700; letter-spacing:1px; }.grndtide-campaign-copy h1 { margin-bottom:28px; font-size:clamp(50px,5.8vw,86px); line-height:.84; letter-spacing:0; }.grndtide-underlined-link { display:inline-block; padding-bottom:4px; border-bottom:1px solid #fff; font-size:12px; font-weight:800; }.grndtide-campaign-visual { position:absolute; inset:0 0 0 45%; overflow:hidden; background:#20272b; }.grndtide-campaign-visual::before { content:''; position:absolute; inset:8% 15% 8% 9%; border:1px solid #748087; background:#111517; }.grndtide-campaign-visual::after { content:''; position:absolute; top:20%; right:13%; width:39%; aspect-ratio:1; border:9px solid #d9dcda; border-radius:50%; box-shadow:0 0 0 22px #3b4246,0 0 0 23px #9ca3a4; }.grndtide-campaign-visual i { position:absolute; z-index:2; top:16%; left:25%; width:29%; height:70%; border:5px solid #a9afb0; border-radius:48% 48% 8% 8%; transform:rotate(15deg); }.grndtide-campaign-visual span { position:absolute; z-index:3; bottom:16%; left:18%; width:42%; height:15%; border:5px solid #e0e3df; border-radius:50%; transform:rotate(-14deg); }.grndtide-campaign-visual b { position:absolute; z-index:3; top:23%; left:43%; width:12%; aspect-ratio:1; border:4px solid var(--grndtide-accent); border-radius:50%; }
.grndtide-marquee { overflow:hidden; border-bottom:1px solid var(--grndtide-line); background:#fff; white-space:nowrap; }.grndtide-marquee-track { display:flex; width:max-content; min-height:45px; animation:grndtide-scroll 28s linear infinite; will-change:transform; }.grndtide-marquee-set { display:flex; flex:none; align-items:center; gap:30px; padding-right:30px; }.grndtide-marquee span { font-size:21px; font-weight:800; letter-spacing:.4px; }.grndtide-marquee b { padding:5px 12px; border:1px solid var(--grndtide-ink); border-radius:20px; font-size:11px; font-weight:800; } @keyframes grndtide-scroll { to { transform:translateX(-50%); } }
.grndtide-category-grid { display:grid; grid-template-columns:repeat(4,1fr); }.grndtide-category { position:relative; min-height:360px; overflow:hidden; display:flex; align-items:flex-end; padding:25px; color:#fff; background:#2a2d2c; }.grndtide-category::before,.grndtide-category::after { content:''; position:absolute; }.grndtide-category span { position:relative; z-index:2; font-size:clamp(23px,2.5vw,37px); font-weight:800; line-height:.93; }.grndtide-category--ear { background:#737a79; }.grndtide-category--ear::before { top:12%; left:24%; width:42%; height:72%; border:13px solid #e0e2df; border-radius:50% 46% 45% 49%; transform:rotate(20deg); }.grndtide-category--ear::after { top:37%; left:42%; width:26%; height:26%; border:6px solid var(--grndtide-accent); border-radius:50%; }.grndtide-category--clicker { background:#b5aaa2; }.grndtide-category--clicker::before { width:62%; height:62%; border:14px solid #1f2220; border-bottom-color:transparent; border-radius:50%; top:17%; left:19%; }.grndtide-category--clicker::after { width:17%; height:17%; border:5px solid #f6f6f2; border-radius:50%; top:47%; left:42%; }.grndtide-category--nose { background:#4a4d50; }.grndtide-category--nose::before { width:60%; height:60%; border:16px solid #e4e5e1; border-radius:50%; top:17%; left:21%; }.grndtide-category--nose::after { width:20%; height:20%; border:5px solid var(--grndtide-accent); border-radius:50%; top:38%; left:40%; }.grndtide-category--body { background:#8b8075; }.grndtide-category--body::before { width:20%; height:70%; border:9px solid #e4e5e1; border-radius:40px; top:14%; left:41%; }.grndtide-category--body::after { width:25%; aspect-ratio:1; border:7px solid var(--grndtide-accent); border-radius:50%; bottom:18%; left:39%; }
.grndtide-word-strip { display:flex; align-items:center; justify-content:space-around; min-height:62px; overflow:hidden; background:#fff; border-bottom:1px solid var(--grndtide-line); color:#111; }.grndtide-word-strip span { font-family:'Marcellus',serif; font-size:clamp(24px,3.5vw,47px); font-weight:700; white-space:nowrap; }.grndtide-product-section { padding:54px 0 70px; background:#fff; }.grndtide-section-header { display:flex; justify-content:space-between; align-items:center; padding:0 24px 20px; }.grndtide-section-header h2 { font-size:clamp(25px,3vw,40px); letter-spacing:0; }.grndtide-section-header a { min-width:120px; padding:9px 18px; border:1px solid var(--grndtide-line); font-size:11px; font-weight:800; text-align:center; }.grndtide-product-section .products { display:grid; grid-template-columns:repeat(5,1fr); padding:0; margin:0; list-style:none; border-top:1px solid var(--grndtide-line); border-left:1px solid var(--grndtide-line); }.grndtide-product-section .products::before,.grndtide-product-section .products::after { display:none; }.grndtide-product-section .products li.product { width:auto; float:none; min-width:0; margin:0; padding:0 0 15px; border-right:1px solid var(--grndtide-line); border-bottom:1px solid var(--grndtide-line); }.grndtide-product-section .products li.product a.woocommerce-LoopProduct-link { display:block; }.iws-demo-visual { position:relative; aspect-ratio:1/.96; overflow:hidden; display:grid; place-items:center; background:#f3f3f1; }.iws-demo-visual::before,.iws-demo-visual span,.iws-demo-visual i { content:''; position:absolute; display:block; }.iws-demo-visual::before { width:46%; aspect-ratio:1; border:8px solid #a3a8a6; border-radius:50%; }.iws-demo-visual span { width:14%; aspect-ratio:1; border:5px solid var(--grndtide-accent); border-radius:50%; }.iws-demo-visual i { width:12%; height:45%; border:6px solid #727877; border-radius:20px; transform:rotate(36deg); }.iws-demo-visual--arc::before { border-radius:45% 45% 5% 5%; transform:rotate(22deg); }.iws-demo-visual--ring::before,.iws-demo-visual--orbit::before { width:58%; border-color:#424847; }.iws-demo-visual--bar::before,.iws-demo-visual--static::before { width:14%; height:68%; aspect-ratio:auto; border-radius:18px; }.iws-demo-visual--core::before { border-color:#b6b9b7; }.iws-demo-visual--signal::before { width:23%; height:58%; aspect-ratio:auto; border-radius:50px; transform:rotate(22deg); }.iws-demo-visual--phase::before { width:18%; height:65%; aspect-ratio:auto; border-radius:6px; transform:rotate(-15deg); }.iws-demo-visual--vanta { background:#323638; }.iws-demo-visual--vanta::before { border-color:#f5f4ef; }.iws-demo-visual--vanta i { border-color:var(--grndtide-accent); }.grndtide-product-section .woocommerce-loop-product__title { min-height:42px; padding:0 9px; margin:10px 0 4px !important; color:var(--grndtide-ink); font-size:13px !important; font-weight:800; line-height:1.12; text-transform:uppercase; }.grndtide-product-section .price { display:block; padding:0 9px; color:#202020 !important; font-size:12px !important; font-weight:700; }.grndtide-product-section .button { display:none !important; }.grndtide-product-section .iws-product-facts { margin:8px 9px 0; }.grndtide-product-section .iws-product-facts span { padding:0; border:0; color:#666; font-size:10px; text-transform:uppercase; }
.grndtide-feature-pair { display:grid; grid-template-columns:1fr 1fr; }.grndtide-feature { min-height:450px; position:relative; display:flex; align-items:flex-end; padding:50px; overflow:hidden; color:#fff; background:#1d2323; }.grndtide-feature::before,.grndtide-feature::after { content:''; position:absolute; border:1px solid rgba(255,255,255,.55); }.grndtide-feature--ear::before { top:10%; left:15%; width:52%; height:75%; border-width:12px; border-radius:50% 50% 45% 45%; transform:rotate(21deg); }.grndtide-feature--ear::after { right:16%; top:23%; width:22%; aspect-ratio:1; border-width:7px; border-radius:50%; }.grndtide-feature--fit { background:#575c5b; }.grndtide-feature--fit::before { top:9%; right:16%; width:58%; aspect-ratio:1; border-width:12px; border-radius:50%; }.grndtide-feature--fit::after { top:29%; right:35%; width:15%; aspect-ratio:1; border:8px solid var(--grndtide-accent); border-radius:50%; }.grndtide-feature > div { position:relative; z-index:1; }.grndtide-feature h2 { margin-bottom:8px; font-size:clamp(36px,4.5vw,63px); line-height:.88; }.grndtide-feature p { max-width:270px; margin-bottom:22px; }.grndtide-feature span { padding-bottom:4px; border-bottom:1px solid #fff; font-size:12px; font-weight:800; }
.grndtide-product-section--new { background:#f1f1ef; }.grndtide-guidance-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--grndtide-line); background:#fff; }.grndtide-guidance-grid > div { min-height:210px; padding:28px; border-right:1px solid var(--grndtide-line); }.grndtide-guidance-grid p { margin-bottom:40px; color:#777; font-size:11px; font-weight:800; }.grndtide-guidance-grid h2 { margin-bottom:8px; font-size:29px; }.grndtide-guidance-grid span { color:#555; font-size:12px; }
.iws-main { width:min(calc(100% - 48px),var(--grndtide-max)); min-height:55vh; margin:0 auto; padding:65px 0 95px; }.iws-page { max-width:800px; }.iws-page-header { margin-bottom:26px; }.iws-page h1 { font-size:46px; }.iws-page-content > * { margin:0 0 18px; }.iws-footer { background:var(--grndtide-ink); color:#fff; }.iws-footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:60px; padding:65px 0; }.iws-footer-brand { display:flex; align-items:center; gap:8px; margin-bottom:18px; font-family:'Marcellus',serif; font-size:27px; font-weight:700; }.iws-footer-brand img { width:42px; height:52px; object-fit:contain; filter:grayscale(1) brightness(4); }.iws-footer-note { max-width:310px; color:#c9cbc8; }.iws-footer-label { margin-bottom:14px; font-size:12px; font-weight:800; }.iws-footer .menu { margin:0; padding:0; list-style:none; }.iws-footer .menu li { margin:9px 0; }.iws-footer-bottom { display:flex; justify-content:space-between; gap:20px; padding:18px 0; color:#b8bbb8; font-size:11px; }.woocommerce .products { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; padding:0; }.woocommerce ul.products::before,.woocommerce ul.products::after { display:none; }.woocommerce ul.products li.product { width:auto; float:none; margin:0; }.woocommerce ul.products li.product .woocommerce-loop-product__title { color:var(--grndtide-ink); }.woocommerce a.button,.woocommerce button.button,.woocommerce input.button { border-radius:0; background:var(--grndtide-ink); color:#fff; }.iws-specifications dl > div { display:grid; grid-template-columns:180px 1fr; gap:16px; padding:12px 0; border-bottom:1px solid var(--grndtide-line); }.iws-specifications dd { margin:0; }
.grndtide-campaign { min-height:690px; }
.grndtide-product-section .products li.product { width:auto !important; margin:0 !important; }
.grndtide-shop { background:#fff; }.grndtide-shop-header { padding:45px 3.4vw 20px; border-bottom:1px solid var(--grndtide-line); }.grndtide-shop-header > p { margin-bottom:12px; font-size:11px; font-weight:800; letter-spacing:.6px; }.grndtide-shop-header h1 { font-size:clamp(54px,7vw,106px); line-height:.88; }.grndtide-shop-categories { display:flex; gap:28px; margin-top:42px; overflow:auto; white-space:nowrap; font-family:'Marcellus',serif; font-size:clamp(18px,2.1vw,31px); }.grndtide-shop-categories a { padding-bottom:15px; }.grndtide-shop-categories a:hover { color:#777; }.grndtide-shop-tools { min-height:60px; display:flex; justify-content:space-between; gap:20px; align-items:center; padding:10px 3.4vw; border-bottom:1px solid var(--grndtide-line); font-size:11px; font-weight:800; }.grndtide-shop-tools span { display:flex; align-items:center; gap:22px; }.grndtide-shop-tools button { padding:0; border:0; background:none; color:inherit; font:inherit; cursor:pointer; }.grndtide-shop > .products { display:grid; grid-template-columns:repeat(4,1fr); padding:0; margin:0; list-style:none; border-left:1px solid var(--grndtide-line); }.grndtide-shop > .products::before,.grndtide-shop > .products::after { display:none; }.grndtide-shop > .products li.product { position:relative; width:auto !important; float:none; margin:0 !important; padding:0 0 16px; border-right:1px solid var(--grndtide-line); border-bottom:1px solid var(--grndtide-line); }.grndtide-shop .iws-demo-visual { aspect-ratio:1/.98; }.grndtide-product-label { position:absolute; z-index:4; top:12px; left:12px; font-size:10px; font-weight:800; }.grndtide-shop .woocommerce-loop-product__title { min-height:42px; padding:0 12px; margin:12px 0 4px !important; font-size:14px !important; font-weight:800; line-height:1.05; text-transform:uppercase; }.grndtide-shop .price { display:block; padding:0 12px; color:#222 !important; font-size:12px !important; font-weight:700; }.grndtide-shop .iws-product-facts { margin:9px 12px 0; }.grndtide-shop .iws-product-facts span { padding:0; border:0; color:#666; font-size:10px; text-transform:uppercase; }.grndtide-shop .button { display:none !important; }
.single-product .iws-main { width:100%; max-width:none; padding:0; }.single-product div.product { display:grid; grid-template-columns:minmax(0,2fr) minmax(330px,1fr); gap:0; margin:0 !important; }.single-product div.product .grndtide-product-gallery { display:grid; grid-template-columns:1fr 1fr; }.single-product .grndtide-product-gallery .iws-demo-visual { min-height:clamp(430px,48vw,740px); border-right:1px solid var(--grndtide-line); border-bottom:1px solid var(--grndtide-line); }.single-product .grndtide-product-gallery-alt { background:#e6e8e5; }.single-product div.product .summary { width:auto; float:none; padding:clamp(34px,5vw,82px) clamp(28px,4vw,70px); margin:0; border-left:1px solid var(--grndtide-line); }.single-product .product_title { max-width:500px; margin-bottom:16px !important; font-size:clamp(38px,4.3vw,66px) !important; line-height:.9; text-transform:uppercase; }.single-product .price { margin:22px 0 !important; color:var(--grndtide-ink) !important; font-size:17px !important; font-weight:800; }.single-product .woocommerce-product-details__short-description { margin:20px 0; padding:16px; background:#f0f1ef; font-size:13px; }.single-product form.cart { padding:22px 0; border-top:1px solid var(--grndtide-line); }.single-product form.cart .quantity input { min-height:47px; }.single-product form.cart .button { width:100%; min-height:49px; padding:0 16px; background:var(--grndtide-ink); color:#fff; font-weight:800; text-transform:uppercase; }.single-product .product_meta { padding-top:18px; border-top:1px solid var(--grndtide-line); font-size:11px; text-transform:uppercase; }.single-product .woocommerce-tabs { grid-column:1 / -1; margin:0; padding:0 8vw 70px; border-top:1px solid var(--grndtide-line); }.single-product .woocommerce-tabs ul.tabs { display:flex; gap:34px; padding:22px 0 0; margin:0 0 25px; border-bottom:1px solid var(--grndtide-line); }.single-product .woocommerce-tabs ul.tabs::before,.single-product .woocommerce-tabs ul.tabs::after { display:none; }.single-product .woocommerce-tabs ul.tabs li { margin:0; padding:0 0 12px; border:0; border-radius:0; background:none; }.single-product .woocommerce-tabs ul.tabs li::before,.single-product .woocommerce-tabs ul.tabs li::after { display:none; }.single-product .woocommerce-tabs ul.tabs li a { font-size:12px; font-weight:800; }.single-product .woocommerce-tabs .panel { margin:0; font-size:14px; }.single-product .related { grid-column:1 / -1; padding:55px 3.4vw; border-top:1px solid var(--grndtide-line); }.single-product .related > h2 { margin-bottom:24px; font-size:30px; }.single-product .related .products { grid-template-columns:repeat(4,1fr); }
.grndtide-search { max-width:1000px; }.grndtide-search > p { margin-bottom:12px; font-size:11px; font-weight:800; }.grndtide-search h1 { margin-bottom:32px; font-size:clamp(38px,5vw,70px); line-height:.95; text-transform:uppercase; }.grndtide-search-form { display:flex; margin-bottom:45px; border-bottom:1px solid var(--grndtide-ink); }.grndtide-search-form input { flex:1; min-width:0; padding:14px 0; border:0; background:transparent; font:inherit; outline:0; }.grndtide-search-form button { border:0; background:transparent; font-size:11px; font-weight:800; }.grndtide-search-results { border-top:1px solid var(--grndtide-line); }.grndtide-search-results article { padding:20px 0; border-bottom:1px solid var(--grndtide-line); }.grndtide-search-results h2 { margin-bottom:5px; font-size:22px; text-transform:uppercase; }.grndtide-search-results p { color:#666; }
a,button,.grndtide-category,.grndtide-feature,.grndtide-shop > .products li.product,.grndtide-product-section .products li.product { transition:color .18s ease,background-color .18s ease,opacity .18s ease,transform .24s ease,filter .24s ease; }.grndtide-category:hover::before,.grndtide-feature:hover::before { transform:scale(1.04) rotate(18deg); }.grndtide-category:hover,.grndtide-feature:hover { filter:brightness(1.07); }.grndtide-product-section .products li.product:hover .iws-demo-visual,.grndtide-shop > .products li.product:hover .iws-demo-visual { transform:scale(1.025); }.iws-demo-visual { transition:transform .28s ease; }
@media (max-width:1024px) { .iws-navigation .menu { gap:14px; }.iws-header-actions { gap:10px; }.grndtide-campaign { min-height:560px; }.grndtide-campaign-copy { width:54%; padding-left:6vw; }.grndtide-campaign-visual { left:48%; }.grndtide-category { min-height:290px; }.grndtide-product-section .products { grid-template-columns:repeat(3,1fr); }.grndtide-guidance-grid { grid-template-columns:repeat(2,1fr); }.grndtide-guidance-grid > div:nth-child(2) { border-right:0; } }
@media (max-width:760px) { .iws-container { width:calc(100% - 28px); }.iws-header-inner { grid-template-columns:1fr auto; min-height:58px; }.iws-brand { grid-area:1/1; justify-self:start; }.iws-header-actions { grid-area:1/2; }.iws-account-link,.iws-search-link { display:none; }.iws-navigation { grid-column:1/-1; padding:0 0 13px; overflow:auto; }.iws-navigation .menu { gap:21px; white-space:nowrap; }.iws-navigation .menu li:nth-child(-n+2) a::after { display:none; }.grndtide-campaign { min-height:675px; display:flex; align-items:flex-end; }.grndtide-campaign-copy { width:100%; padding:55px 22px 285px; }.grndtide-campaign-copy h1 { font-size:61px; }.grndtide-campaign-visual { inset:auto 0 0; height:290px; }.grndtide-campaign-visual::before { inset:10% 25% 8% 18%; }.grndtide-campaign-visual::after { width:33%; top:18%; right:19%; }.grndtide-campaign-visual i { width:25%; height:65%; left:31%; top:16%; }.grndtide-campaign-visual span { left:25%; }.grndtide-marquee-track { min-height:42px; }.grndtide-marquee span { font-size:16px; }.grndtide-category-grid { grid-template-columns:repeat(2,1fr); }.grndtide-category { min-height:230px; padding:17px; }.grndtide-word-strip { justify-content:flex-start; gap:25px; padding:0 18px; overflow:auto; }.grndtide-word-strip span { font-size:28px; }.grndtide-product-section { padding:42px 0; }.grndtide-section-header { padding:0 14px 16px; }.grndtide-section-header a { min-width:auto; padding:7px 11px; }.grndtide-product-section .products { grid-template-columns:repeat(2,1fr); }.grndtide-feature-pair { grid-template-columns:1fr; }.grndtide-feature { min-height:340px; padding:30px; }.grndtide-guidance-grid > div { min-height:170px; padding:20px; }.iws-main { width:calc(100% - 28px); padding:45px 0 70px; }.iws-footer-grid { grid-template-columns:1fr; gap:32px; padding:48px 0; }.iws-footer-bottom { flex-direction:column; } }
@media (max-width:390px) { .iws-brand a { font-size:17px; }.iws-brand img { width:27px; height:36px; }.grndtide-campaign-copy h1 { font-size:53px; }.grndtide-category { min-height:200px; }.grndtide-category span { font-size:21px; }.grndtide-product-section .woocommerce-loop-product__title { min-height:40px; font-size:12px !important; }.grndtide-guidance-grid { grid-template-columns:1fr; }.grndtide-guidance-grid > div { border-right:0; border-bottom:1px solid var(--grndtide-line); } .iws-specifications dl > div { grid-template-columns:1fr; gap:4px; } }
.grndtide-product-page { background:#fff; }.grndtide-product-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(340px,1fr); }.grndtide-product-media .grndtide-product-gallery { display:grid; grid-template-columns:1fr 1fr; }.grndtide-product-media .iws-demo-visual { min-height:clamp(480px,50vw,760px); border-right:1px solid var(--grndtide-line); border-bottom:1px solid var(--grndtide-line); }.grndtide-product-summary { min-width:0; padding:clamp(38px,5vw,75px) clamp(28px,4vw,64px); border-bottom:1px solid var(--grndtide-line); }.grndtide-breadcrumb { margin-bottom:25px; color:#666; font-size:11px; font-weight:800; text-transform:uppercase; }.grndtide-product-summary h1 { margin-bottom:22px; font-size:clamp(37px,4.3vw,65px); line-height:.86; text-transform:uppercase; }.grndtide-product-summary .price { display:block; margin-bottom:20px; font-size:17px; font-weight:800; }.grndtide-preview-note { margin:18px 0; padding:14px; background:#f0f1ef; font-size:11px; font-weight:700; text-transform:uppercase; }.grndtide-product-summary .woocommerce-product-details__short-description { margin-bottom:22px; font-size:13px; }.grndtide-product-options { padding:19px 0; border-top:1px solid var(--grndtide-line); }.grndtide-product-options p { margin-bottom:10px; font-size:11px; font-weight:800; }.grndtide-product-options span { display:inline-flex; min-width:56px; justify-content:center; margin-right:5px; padding:7px; border:1px solid var(--grndtide-ink); font-size:10px; font-weight:800; }.grndtide-product-summary form.cart { padding:20px 0; border-top:1px solid var(--grndtide-line); }.grndtide-product-summary form.cart .quantity input { min-height:48px; }.grndtide-product-summary form.cart .button { min-height:48px; width:calc(100% - 90px); background:var(--grndtide-ink); color:#fff; font-weight:800; text-transform:uppercase; }.grndtide-product-summary .product_meta { padding-top:15px; border-top:1px solid var(--grndtide-line); font-size:10px; text-transform:uppercase; }.grndtide-product-details { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--grndtide-line); border-bottom:1px solid var(--grndtide-line); }.grndtide-product-details > button { min-height:72px; display:flex; justify-content:space-between; align-items:center; padding:0 24px; border:0; border-right:1px solid var(--grndtide-line); background:#fff; font-size:12px; font-weight:800; text-align:left; }.grndtide-product-details .woocommerce-tabs { grid-column:1/-1; padding:0 8vw 55px; }.grndtide-product-details .woocommerce-tabs ul.tabs { display:flex; gap:28px; padding:24px 0 12px; margin:0 0 24px; border-bottom:1px solid var(--grndtide-line); }.grndtide-product-details .woocommerce-tabs ul.tabs::before,.grndtide-product-details .woocommerce-tabs ul.tabs::after { display:none; }.grndtide-product-details .woocommerce-tabs ul.tabs li { margin:0; padding:0; border:0; border-radius:0; background:none; }.grndtide-product-details .woocommerce-tabs ul.tabs li::before,.grndtide-product-details .woocommerce-tabs ul.tabs li::after { display:none; }.grndtide-product-details .woocommerce-tabs ul.tabs li a { font-size:11px; font-weight:800; }.grndtide-product-details .woocommerce-tabs .panel { margin:0; font-size:14px; }.grndtide-related { padding:55px 3.4vw; }.grndtide-related > header { display:flex; justify-content:space-between; align-items:center; margin-bottom:22px; }.grndtide-related > header h2 { font-size:30px; }.grndtide-related > header a { padding:8px 16px; border:1px solid var(--grndtide-line); font-size:11px; font-weight:800; }.grndtide-related .products { display:grid; grid-template-columns:repeat(4,1fr); gap:0; padding:0; margin:0; list-style:none; border-left:1px solid var(--grndtide-line); border-top:1px solid var(--grndtide-line); }.grndtide-related .products::before,.grndtide-related .products::after { display:none; }.grndtide-related .products li.product { position:relative; width:auto !important; float:none; margin:0 !important; padding-bottom:14px; border-right:1px solid var(--grndtide-line); border-bottom:1px solid var(--grndtide-line); }.grndtide-related .woocommerce-loop-product__title { min-height:35px; padding:0 10px; margin:10px 0 4px !important; font-size:12px !important; font-weight:800; text-transform:uppercase; }.grndtide-related .price { display:block; padding:0 10px; color:#222 !important; font-size:11px !important; }.grndtide-related .button { display:none !important; }.grndtide-related .iws-product-facts { margin:8px 10px 0; }.grndtide-related .iws-product-facts span { padding:0; border:0; color:#777; font-size:10px; }
@media (max-width:760px) { .grndtide-shop-header { padding:32px 14px 14px; }.grndtide-shop-header h1 { font-size:54px; }.grndtide-shop-categories { gap:19px; margin-top:26px; font-size:20px; }.grndtide-shop-tools { align-items:flex-start; flex-direction:column; gap:10px; padding:14px; }.grndtide-shop-tools span { gap:12px; flex-wrap:wrap; }.grndtide-shop > .products { grid-template-columns:repeat(2,1fr); }.grndtide-product-layout { grid-template-columns:1fr; }.grndtide-product-media .iws-demo-visual { min-height:290px; }.grndtide-product-summary { padding:35px 20px; }.grndtide-product-summary h1 { font-size:43px; }.grndtide-product-details { grid-template-columns:1fr; }.grndtide-product-details > button { border-right:0; border-bottom:1px solid var(--grndtide-line); }.grndtide-product-details .woocommerce-tabs { padding:0 20px 40px; }.grndtide-related { padding:42px 14px; }.grndtide-related .products { grid-template-columns:repeat(2,1fr); }.grndtide-related > header h2 { font-size:24px; } }
.iws-size-guide-image { max-width:720px; margin:0 0 28px; }.iws-size-guide-image img { display:block; width:100%; height:auto; }.iws-size-guide-image figcaption { margin-top:8px; color:#666; font-size:11px; font-weight:800; text-transform:uppercase; }
.iws-footer-links { margin:0; padding:0; list-style:none; }.iws-footer-links li { margin:9px 0; }.grndtide-editorial { display:grid; grid-template-columns:29% 71%; min-height:480px; border-top:1px solid var(--grndtide-line); background:#fff; }.grndtide-editorial-copy { padding:46px 32px; }.grndtide-editorial-copy p { margin-bottom:25px; font-size:11px; font-weight:800; }.grndtide-editorial-copy h2 { margin-bottom:18px; font-size:clamp(38px,4.7vw,67px); line-height:.86; }.grndtide-editorial-copy span { max-width:240px; display:block; color:#555; }.grndtide-editorial-grid { display:grid; grid-template-columns:repeat(5,1fr); grid-template-rows:1fr 1fr; gap:2px; background:#fff; }.grndtide-editorial-grid i { display:block; background:#262d2e; }.grndtide-editorial-grid i:nth-child(2n) { background:#8b8f8b; }.grndtide-editorial-grid i:nth-child(3n) { background:#c4beb6; }.grndtide-editorial-grid i:nth-child(1)::before { content:''; display:block; width:54%; height:70%; margin:15% auto; border:8px solid #e8eae6; border-radius:50%; }.grndtide-editorial-grid i:nth-child(2)::before { content:''; display:block; width:26%; height:70%; margin:16% auto; border:7px solid var(--grndtide-accent); border-radius:50px; transform:rotate(32deg); }.grndtide-editorial-grid i:nth-child(3)::before { content:''; display:block; width:58%; aspect-ratio:1; margin:24% auto; border:8px solid #1d1d1d; border-radius:50%; }.grndtide-editorial-grid i:nth-child(4)::before { content:''; display:block; width:65%; height:25%; margin:35% auto; border:8px solid #e8eae6; border-radius:50%; }.grndtide-editorial-grid i:nth-child(5)::before { content:''; display:block; width:24%; height:70%; margin:14% auto; border:7px solid #1d1d1d; border-radius:50px; }.grndtide-editorial-grid i:nth-child(6) { grid-column:span 2; }.grndtide-editorial-grid i:nth-child(6)::before { content:''; display:block; width:64%; height:64%; margin:8% auto; border:8px solid #e8eae6; border-radius:50% 45% 50% 45%; transform:rotate(25deg); }.grndtide-newsletter { display:flex; justify-content:space-between; gap:80px; padding:75px 8vw; background:#202020; color:#fff; }.grndtide-newsletter p { margin-bottom:12px; font-size:11px; font-weight:800; }.grndtide-newsletter h2 { font-family:'Marcellus',serif; font-size:clamp(34px,4.3vw,60px); line-height:.87; }.grndtide-newsletter-form { align-self:center; width:min(100%,440px); display:grid; grid-template-columns:1fr auto; border-bottom:1px solid #a6aaa4; }.grndtide-newsletter-form input { min-width:0; padding:14px 0; border:0; outline:0; background:transparent; color:#fff; font:inherit; }.grndtide-newsletter-form button { padding:0 0 0 25px; border:0; background:transparent; color:#fff; font-size:11px; font-weight:800; }.grndtide-form-status { grid-column:1/-1; min-height:20px; padding-top:10px; color:var(--grndtide-accent); font-size:11px; }
.woocommerce-cart-form,.cart-collaterals,form.woocommerce-checkout { max-width:1180px; margin:0 auto; }.woocommerce-cart-form { padding:45px 0; }.woocommerce-cart-form table.cart { border:1px solid var(--grndtide-line); border-radius:0; }.woocommerce-cart-form table.cart td,.woocommerce-cart-form table.cart th { border-top:1px solid var(--grndtide-line); }.cart-collaterals { padding-bottom:65px; }.cart-collaterals .cart_totals { float:none; width:min(100%,420px); margin-left:auto; }.woocommerce-checkout form.woocommerce-checkout { padding:45px 0 70px; }.woocommerce-checkout form.woocommerce-checkout h3 { margin:20px 0; font-size:25px; text-transform:uppercase; }.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea { min-height:44px; border:1px solid var(--grndtide-line); border-radius:0; }.woocommerce-checkout-review-order { padding:22px; border:1px solid var(--grndtide-line); }.woocommerce #payment { border-radius:0; background:#f0f1ef; }.woocommerce #payment #place_order { border-radius:0; background:var(--grndtide-ink); color:#fff; }
@media (max-width:760px) { .grndtide-editorial { grid-template-columns:1fr; }.grndtide-editorial-copy { padding:38px 20px; }.grndtide-editorial-grid { min-height:390px; }.grndtide-newsletter { align-items:flex-start; flex-direction:column; gap:35px; padding:55px 20px; }.grndtide-newsletter-form { width:100%; }.woocommerce-cart-form,.cart-collaterals,form.woocommerce-checkout { width:calc(100% - 28px); }.woocommerce-cart-form { overflow:auto; } }

/* Cart: a fixed desktop workspace keeps order details available while items scroll. */
html:has(body.woocommerce-cart) { background:var(--grndtide-ink); }
body.woocommerce-cart { display:flex; min-height:100vh; flex-direction:column; overflow-x:hidden; margin:0; padding-bottom:0; background:#f3f4f0; }
body.woocommerce-cart .iws-footer { display:block; flex:none; margin-top:auto; }
.iws-cart-page { min-height:0; padding:clamp(18px,2.3vw,34px); background:#f3f4f0; }
.iws-cart-page__heading { display:flex; align-items:center; gap:13px; max-width:1260px; height:74px; margin:0 auto 16px; }.iws-cart-page__heading-icon { display:grid; width:48px; height:48px; place-items:center; border-radius:50%; background:var(--grndtide-accent); }.iws-cart-page__heading-icon svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }.iws-cart-page__eyebrow,.iws-cart-products__label { margin:0 0 3px; color:#697063; font-size:10px; font-weight:800; letter-spacing:.8px; text-transform:uppercase; }.iws-cart-page__heading h1 { margin:0; font-family:'Marcellus',serif; font-size:31px; line-height:1; }.iws-cart-page__count { margin:0 0 0 auto; padding:7px 11px; border:1px solid #c9cec5; color:#596054; font-size:11px; font-weight:800; text-transform:uppercase; }
.iws-cart-workspace { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr); gap:16px; max-width:1260px; height:min(680px,calc(100vh - 150px)); min-height:420px; margin:0 auto !important; padding:0 !important; }.iws-cart-products,.iws-cart-summary { min-height:0; border:1px solid #d7dbd3; background:#fff; box-shadow:0 10px 25px rgba(20,25,19,.05); }.iws-cart-products { display:grid; grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden; }.iws-cart-products__toolbar,.iws-cart-products__footer { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:17px 20px; border-bottom:1px solid #e0e3dc; }.iws-cart-products__toolbar h2 { margin:0; font-family:'Marcellus',serif; font-size:23px; font-weight:700; }.iws-cart-batch-actions { display:flex; align-items:center; gap:13px; }.iws-cart-select-all { display:inline-flex; gap:7px; align-items:center; color:#4f564c; font-size:11px; font-weight:700; cursor:pointer; }.iws-cart-select-all input,.iws-cart-line__select input { width:15px; height:15px; accent-color:#202520; }.iws-cart-batch-remove { display:inline-flex; gap:7px; align-items:center; min-height:33px; padding:0 10px; border:1px solid #bc5146; background:#fff; color:#a23f37; font:inherit; font-size:10px; font-weight:800; text-transform:uppercase; cursor:pointer; }.iws-cart-batch-remove:disabled { border-color:#d8dbd5; color:#9a9e98; cursor:not-allowed; }.iws-cart-batch-remove span { display:grid; min-width:16px; height:16px; place-items:center; border-radius:50%; background:currentColor; color:#fff; font-size:9px; }
.iws-cart-products__scroll { min-height:0; overflow-y:auto; overscroll-behavior:contain; }.iws-cart-lines { padding:0 20px; }.iws-cart-line { display:grid; grid-template-columns:20px 84px minmax(0,1fr) auto; gap:15px; align-items:center; min-height:130px; border-bottom:1px solid #e2e4df; }.iws-cart-line__select { align-self:start; padding-top:18px; cursor:pointer; }.iws-cart-line__image { width:84px; height:94px; overflow:hidden; background:#eef0ec; }.iws-cart-line__image a,.iws-cart-line__image img { display:block; width:100%; height:100%; }.iws-cart-line__image img { object-fit:cover; }.iws-cart-line__type { margin:0 0 5px; color:#7a8176; font-size:9px; font-weight:800; letter-spacing:.7px; text-transform:uppercase; }.iws-cart-line h3 { margin:0; font-size:14px; line-height:1.25; text-transform:uppercase; }.iws-cart-line h3 a { color:inherit; }.iws-cart-line__meta { margin:6px 0; color:#6b7168; font-size:10px; }.iws-cart-line__meta dl { margin:0; }.iws-cart-line__meta dt,.iws-cart-line__meta dd { display:inline; margin:0; }.iws-cart-line__meta dt::after { content:': '; }.iws-cart-line__quantity .quantity { display:inline-grid; grid-template-columns:31px 42px 31px; height:32px; overflow:hidden; border:1px solid #bcc3b8; background:#f8f9f6; }.iws-cart-quantity-control { display:grid; place-items:center; width:31px; height:30px; padding:0; border:0; background:transparent; color:#4e564d; font-size:17px; line-height:1; cursor:pointer; }.iws-cart-quantity-control:hover,.iws-cart-quantity-control:focus-visible { background:var(--grndtide-accent); color:#1c211c; outline:none; }.iws-cart-quantity-control:disabled { color:#b7bcb5; cursor:not-allowed; }.iws-cart-line__quantity .quantity input { width:42px; min-height:30px; padding:0; border:0; border-right:1px solid #d6dad3; border-left:1px solid #d6dad3; border-radius:0; outline:0; background:#fff; color:#1c211c; font-size:11px; font-weight:800; text-align:center; appearance:textfield; -moz-appearance:textfield; }.iws-cart-line__quantity .quantity input::-webkit-inner-spin-button,.iws-cart-line__quantity .quantity input::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }.iws-cart-line__price { display:grid; justify-items:end; gap:6px; min-width:108px; }.iws-cart-line__price span { color:#777d74; font-size:9px; font-weight:800; text-transform:uppercase; }.iws-cart-line__price strong { color:#161a16; font-size:16px; font-weight:800; }.iws-cart-line__remove { color:#7f3029; font-size:10px; font-weight:800; text-transform:uppercase; }.iws-cart-products__footer { min-height:58px; justify-content:flex-start; border-top:1px solid #e0e3dc; border-bottom:0; }.iws-cart-products__footer a { padding-bottom:3px; border-bottom:1px solid currentColor; font-size:10px; font-weight:800; text-transform:uppercase; }
.iws-cart-summary { align-self:start; padding:22px; }.iws-cart-summary .cart_totals { width:100% !important; float:none !important; }.iws-cart-summary .cart_totals > h2 { margin:0 0 18px; font-family:'Marcellus',serif; font-size:24px; }.iws-cart-summary .shop_table { margin:0 0 20px; border:0; }.iws-cart-summary .shop_table th,.iws-cart-summary .shop_table td { padding:12px 0; border-top:1px solid #e0e3dc; font-size:12px; }.iws-cart-summary .shop_table th { font-weight:700; }.iws-cart-summary .shop_table td { color:#161a16; font-size:15px; font-weight:800; text-align:right; }.iws-cart-summary .order-total th,.iws-cart-summary .order-total td { padding-top:16px; font-size:15px; }.iws-cart-summary .order-total td strong,.iws-cart-summary .order-total td bdi { font-size:20px; }.iws-cart-summary .wc-proceed-to-checkout { padding:0; }.iws-cart-summary .wc-proceed-to-checkout a.checkout-button { min-height:47px; margin:0; padding:15px; border-radius:0; background:#1c211c; font-size:11px; text-transform:uppercase; }.iws-cart-coupon { margin-bottom:22px; padding-bottom:20px; border-bottom:1px solid #dfe2dc; }.iws-cart-coupon label { display:block; margin-bottom:8px; font-size:10px; font-weight:800; text-transform:uppercase; }.iws-cart-coupon > div { display:grid; grid-template-columns:minmax(0,1fr) auto; }.iws-cart-coupon input { min-width:0; height:38px; padding:0 10px; border:1px solid #cbd0c7; border-right:0; font:inherit; font-size:11px; }.iws-cart-coupon button { padding:0 12px; border:1px solid #1c211c; background:#1c211c; color:#fff; font-size:10px; font-weight:800; text-transform:uppercase; }
@media (max-width:900px) { body.woocommerce-cart { overflow:auto; } body.woocommerce-cart .iws-footer { display:block; } .iws-cart-page { height:auto; min-height:0; padding:28px 14px 48px; overflow:visible; }.iws-cart-workspace { grid-template-columns:1fr; height:auto; }.iws-cart-products { min-height:480px; }.iws-cart-summary { padding:20px; } }
@media (max-width:600px) { .iws-cart-page__heading { height:auto; margin-bottom:14px; }.iws-cart-page__heading-icon { width:40px; height:40px; }.iws-cart-page__heading h1 { font-size:27px; }.iws-cart-page__count { font-size:9px; }.iws-cart-products__toolbar { align-items:flex-start; flex-direction:column; padding:15px; }.iws-cart-batch-actions { width:100%; justify-content:space-between; }.iws-cart-lines { padding:0 14px; }.iws-cart-line { grid-template-columns:18px 66px minmax(0,1fr); gap:10px; min-height:122px; }.iws-cart-line__image { width:66px; height:78px; }.iws-cart-line__price { grid-column:3; grid-row:2; display:flex; justify-content:flex-start; gap:8px; padding-bottom:13px; }.iws-cart-line__price span { display:none; }.iws-cart-line__details { padding-top:12px; }.iws-cart-line h3 { font-size:12px; }.iws-cart-products__footer { padding:14px; }.iws-cart-products { min-height:500px; } }
.grndtide-product-layout,.grndtide-product-media,.grndtide-product-media .grndtide-product-gallery,.grndtide-product-media .iws-demo-visual { min-width:0; }.grndtide-product-media .grndtide-product-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); }

/* Cart reference layout */
body.woocommerce-cart { background:#fff; color:#252724; }
body.woocommerce-cart .iws-main { padding:0; }
.iws-cart-page { max-width:1440px; margin:0 auto; padding:0 40px 54px; background:#fff; }
.iws-cart-hero { display:flex; align-items:flex-end; min-height:164px; margin:0 -40px 22px; padding:30px 52px 24px; background:linear-gradient(90deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.56) 45%, rgba(255,255,255,.2) 100%), url('../images/catalog-helix-desktop.webp') center 45% / cover no-repeat; }
.iws-cart-hero__inner h1,.iws-cart-recommendations h2,.iws-cart-summary h2 { margin:0; font-family:'Marcellus',serif; font-weight:400; letter-spacing:0; }
.iws-cart-hero__inner h1 { font-size:clamp(38px,4.4vw,62px); font-style:italic; line-height:.95; }
.iws-cart-hero__inner p { margin:13px 0 0; font-size:10px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; }
.iws-cart-workspace { display:grid; grid-template-columns:minmax(0,1fr) 314px; gap:30px; width:100%; max-width:none; height:auto; min-height:0; margin:0 !important; padding:0 !important; }
.iws-cart-products,.iws-cart-summary { min-height:0; border:0; background:transparent; box-shadow:none; }.iws-cart-products { height:920px; }
.iws-cart-products__heading { display:grid; grid-template-columns:116px minmax(0,1fr) 92px 120px 86px 28px; gap:16px; padding:0 0 14px; border-bottom:1px solid #e6e6e1; color:#676b65; font-size:11px; font-weight:800; letter-spacing:.7px; text-transform:uppercase; }
.iws-cart-products__heading span:first-of-type { grid-column:1 / 3; }.iws-cart-products__heading span:nth-of-type(2) { grid-column:3; }.iws-cart-products__heading span:nth-of-type(3) { grid-column:4; }.iws-cart-products__heading span:nth-of-type(4) { grid-column:5; }
.iws-cart-lines { min-height:0; padding:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }.iws-cart-lines::-webkit-scrollbar { width:8px; }.iws-cart-lines::-webkit-scrollbar-thumb { border:2px solid transparent; border-radius:999px; background:rgba(29,33,29,.28); background-clip:padding-box; }.iws-cart-line { display:grid; grid-template-columns:116px minmax(0,1fr) 92px 120px 86px 28px; gap:16px; align-items:center; min-height:142px; border-bottom:1px solid #e6e6e1; }
.iws-cart-line__image { width:116px; height:110px; overflow:hidden; background:#f4f4f1; }.iws-cart-line__image a,.iws-cart-line__image img { display:block; width:100%; height:100%; }.iws-cart-line__image img { object-fit:cover; }
.iws-cart-line__details { align-self:center; }.iws-cart-line h3 { margin:0; font-family:'Marcellus',serif; font-size:18px; font-weight:400; letter-spacing:0; line-height:1.2; text-transform:none; }.iws-cart-line h3 a { color:inherit; }
.iws-cart-line__meta { margin:8px 0 0; color:#777a75; font-size:12px; line-height:1.5; }.iws-cart-line__meta dl { margin:0; }.iws-cart-line__meta dt,.iws-cart-line__meta dd { display:inline; margin:0; }.iws-cart-line__meta dt { display:none; }.iws-cart-line__meta dd:not(:last-child)::after { content:' | '; }
.iws-cart-line__price,.iws-cart-line__total { color:#2d302c; font-size:14px; font-weight:700; white-space:nowrap; }.iws-cart-line__price { display:block; min-width:0; justify-items:initial; }.iws-cart-line__price ins { text-decoration:none; }
.iws-cart-line__quantity .quantity { display:inline-grid; grid-template-columns:31px 44px 31px; height:40px; overflow:hidden; border:1px solid #d9dcd7; background:#fff; }.iws-cart-quantity-control { display:grid; width:31px; height:38px; place-items:center; padding:0; border:0; background:#fff; color:#4f524e; font-size:19px; line-height:1; cursor:pointer; }.iws-cart-quantity-control:hover,.iws-cart-quantity-control:focus-visible { background:#f0f0eb; color:#1c1e1b; outline:0; }.iws-cart-quantity-control:disabled { color:#c9cbc6; cursor:not-allowed; }.iws-cart-line__quantity .quantity input { width:44px; min-height:38px; padding:0; border:solid #e1e2de; border-width:0 1px; border-radius:0; background:#fff; color:#252724; font-size:14px; font-weight:700; text-align:center; appearance:textfield; -moz-appearance:textfield; }.iws-cart-line__quantity .quantity input::-webkit-inner-spin-button,.iws-cart-line__quantity .quantity input::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }
.iws-cart-line__remove { display:grid; width:24px; height:24px; place-items:center; color:#676a66; }.iws-cart-line__remove svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }
.iws-cart-is-updating { position:relative; opacity:.62; pointer-events:none; transition:opacity .15s ease; }
.iws-cart-is-updating::after { content:''; position:absolute; inset:0; z-index:5; background:rgba(255,255,255,.28); }
.iws-cart-is-updating::before { content:''; position:absolute; top:50%; left:50%; z-index:6; width:14px; height:14px; margin:-7px 0 0 -7px; border:2px solid #c7cbc4; border-top-color:#30342f; border-radius:50%; animation:iws-cart-spin .7s linear infinite; }
@keyframes iws-cart-spin { to { transform:rotate(360deg); } }
.iws-cart-continue { display:inline-block; margin-top:22px; padding-bottom:3px; border-bottom:1px solid currentColor; color:#383b37; font-family:'Marcellus',serif; font-size:12px; }.iws-cart-continue::before { content:'<-'; margin-right:10px; font-family:'Marcellus',serif; }
.iws-cart-summary { min-height:400px; padding:30px 25px 32px; background:#f7f7f5; }.iws-cart-note { display:none; }.iws-cart-summary h2 { margin-bottom:30px; font-size:30px; font-style:italic; }.iws-cart-summary__row,.iws-cart-summary__total { display:flex; justify-content:space-between; gap:12px; padding:15px 0; color:#3c3f3a; font-size:14px; }.iws-cart-summary__row > :last-child { text-align:right; }.iws-cart-summary__total { margin-top:20px; padding:25px 0 22px; border-top:1px solid #dedfdc; font-family:'Marcellus',serif; font-size:28px; }.iws-cart-summary__total strong { font-weight:400; }.iws-cart-summary .checkout-button { display:flex; width:100%; min-height:56px; align-items:center; justify-content:center; gap:15px; margin:0; padding:14px; border-radius:0; background:#1e211f; color:#fff; font-size:13px; font-weight:800; letter-spacing:1.8px; text-transform:uppercase; }.iws-cart-summary .checkout-button:hover,.iws-cart-summary .checkout-button:focus-visible { background:#343833; color:#fff; }
.iws-cart-recommendations { margin-top:52px; padding-top:27px; border-top:1px solid #e5e5e1; }.iws-cart-recommendations header { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:18px; }.iws-cart-recommendations h2 { font-size:31px; font-style:italic; }.iws-cart-recommendations header > a { color:inherit; font-size:9px; font-weight:800; letter-spacing:.8px; text-transform:uppercase; }.iws-cart-recommendations header > a span { margin-left:8px; font-size:16px; vertical-align:-1px; }.iws-cart-recommendations__grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; }.iws-cart-recommendation__image { display:block; aspect-ratio:1.2; overflow:hidden; background:#f4f4f1; }.iws-cart-recommendation__image img { display:block; width:100%; height:100%; object-fit:cover; }.iws-cart-recommendation h3 { margin:8px 0 4px; font-family:'Marcellus',serif; font-size:13px; font-weight:400; line-height:1.2; }.iws-cart-recommendation h3 a { color:inherit; }.iws-cart-recommendation p { margin:0; font-size:11px; font-weight:700; }
@media (max-width:760px) { body.woocommerce-cart { background:#fff; } .iws-cart-page { padding:18px 23px 36px; } .iws-cart-hero { min-height:0; margin:0 0 20px; padding:0; background:none; }.iws-cart-hero__inner { display:flex; width:100%; align-items:baseline; justify-content:space-between; gap:12px; }.iws-cart-hero__inner h1 { font-size:34px; font-style:normal; }.iws-cart-hero__inner p { margin:0; padding-bottom:3px; border-bottom:1px solid currentColor; font-family:'Marcellus',serif; font-size:14px; font-weight:400; letter-spacing:0; text-transform:none; }.iws-cart-workspace { display:flex; flex-direction:column; gap:0; }.iws-cart-products__heading { display:none; }.iws-cart-line { grid-template-columns:149px minmax(0,1fr) 25px; grid-template-rows:auto auto; gap:0 17px; min-height:155px; padding:12px 0; }.iws-cart-line__image { grid-row:1 / 3; width:149px; height:129px; }.iws-cart-line__details { align-self:end; padding-bottom:8px; }.iws-cart-line h3 { font-size:21px; }.iws-cart-line__meta { margin-top:5px; font-family:'Marcellus',serif; font-size:14px; font-weight:600; }.iws-cart-line__price { grid-column:2; grid-row:2; align-self:end; padding-bottom:3px; font-family:'Marcellus',serif; font-size:21px; font-weight:400; }.iws-cart-line__quantity { grid-column:2; grid-row:2; justify-self:end; align-self:end; }.iws-cart-line__quantity .quantity { height:43px; grid-template-columns:39px 42px 39px; }.iws-cart-quantity-control { width:39px; height:41px; }.iws-cart-line__quantity .quantity input { min-height:41px; }.iws-cart-line__total { display:none; }.iws-cart-line__remove { grid-column:3; grid-row:1; align-self:start; justify-self:end; }.iws-cart-line__remove svg { width:21px; height:21px; }.iws-cart-continue { position:absolute; top:29px; right:23px; margin:0; font-family:'Marcellus',serif; font-size:14px; }.iws-cart-continue::before { display:none; }.iws-cart-summary { order:2; margin-top:17px; padding:0; background:transparent; }.iws-cart-note { display:flex; justify-content:space-between; padding:19px 0; border-top:1px solid #e6e6e1; border-bottom:1px solid #e6e6e1; font-size:15px; }.iws-cart-summary h2 { display:none; }.iws-cart-summary__row { padding:14px 0 0; font-size:16px; }.iws-cart-summary__total { margin-top:15px; padding:16px 0; border-top:1px solid #e6e6e1; font-size:29px; }.iws-cart-summary .checkout-button { min-height:59px; font-size:15px; letter-spacing:2.8px; }.iws-cart-recommendations { margin-top:28px; padding-top:0; border:0; }.iws-cart-recommendations header { margin-bottom:10px; }.iws-cart-recommendations h2 { font-size:23px; font-style:normal; }.iws-cart-recommendations header > a { display:none; }.iws-cart-recommendations__grid { grid-auto-columns:calc((100% - 22px) / 3); grid-auto-flow:column; grid-template-columns:none; gap:11px; overflow-x:auto; padding-bottom:4px; scrollbar-width:none; }.iws-cart-recommendations__grid::-webkit-scrollbar { display:none; }.iws-cart-recommendation h3 { margin-top:6px; font-size:13px; }.iws-cart-recommendation p { font-size:13px; } }
@media (max-width:390px) { .iws-cart-page { padding-right:18px; padding-left:18px; }.iws-cart-continue { right:18px; }.iws-cart-line { grid-template-columns:130px minmax(0,1fr) 23px; gap:0 12px; }.iws-cart-line__image { width:130px; height:119px; }.iws-cart-line h3 { font-size:18px; }.iws-cart-line__meta { font-size:13px; }.iws-cart-line__price { font-size:19px; }.iws-cart-line__quantity .quantity { transform:scale(.9); transform-origin:right bottom; } }
@media (max-width:760px) { .iws-cart-page { position:relative; } }
@media (max-width:760px) { .iws-cart-summary { min-height:0; } }
@media (max-width:760px) { .iws-cart-products { height:auto; }.iws-cart-lines { overflow:visible; scrollbar-gutter:auto; } }
.iws-cart-summary .checkout-button { display:flex !important; align-items:center !important; justify-content:center !important; text-align:center; line-height:1 !important; }

/* Responsive layout contract.
 * A number of legacy presentation passes above intentionally tune the wide
 * desktop canvas. Keep those values from leaking into narrow viewports and
 * make every layout child shrink inside its parent before the page can scroll.
 */
*, *::before, *::after { box-sizing:border-box; }
html, body { width:100%; max-width:100%; }
body { overflow-x:clip; }
img, video, canvas, iframe { max-width:100%; }
.iws-container, .iws-main, .iws-page, .iws-footer-grid { min-width:0; }

/* The header is shared by every public template. Never offset the brand out
 * of the grid; the desktop logo remains aligned by the grid itself. */
body .iws-header .iws-brand { transform:none !important; min-width:0; }
body .iws-header .iws-header-inner { width:min(calc(100% - 48px), 1440px); grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr); }
body .iws-header .iws-brand-wordmark { font-size:clamp(24px,2.2vw,30px) !important; letter-spacing:clamp(1px,.25vw,3px); white-space:nowrap; }
body .iws-header .iws-primary-nav > a,
body .iws-header .iws-shop-menu-link,
body .iws-header .iws-nav-dropdown .iws-shop-menu-trigger { font-size:clamp(10px,1vw,14px) !important; }

@media (max-width:1100px) and (min-width:761px) {
	body .iws-header .iws-header-inner { width:calc(100% - 32px); grid-template-columns:minmax(145px,1fr) auto minmax(120px,1fr); gap:16px; }
	body .iws-header .iws-primary-nav { gap:15px; }
	body .iws-header .iws-header-actions { gap:12px; }
}

@media (max-width:760px) {
	html, body { overflow-x:clip; }
	body .iws-header { min-height:60px; }
	body .iws-header .iws-header-inner {
		width:calc(100% - 28px);
		min-height:60px;
		grid-template-columns:minmax(0,1fr) auto;
		gap:8px;
	}
	body .iws-header .iws-brand { min-width:0; }
	body .iws-header .iws-brand-wordmark { max-width:100%; overflow:hidden; font-size:clamp(19px,6vw,25px) !important; letter-spacing:1px; text-overflow:ellipsis; }
	body .iws-header .iws-brand img { width:21px; height:24px; flex:0 0 auto; }
	body .iws-header .iws-header-actions { gap:9px; min-width:0; }
	body .iws-header .iws-action-icon { width:19px !important; height:19px !important; }
	body .iws-header .iws-navigation { grid-column:1/-1; width:100%; max-width:100%; overflow-x:auto; overflow-y:hidden; }
	body .iws-header .iws-primary-nav { width:max-content; min-width:100%; gap:20px; padding:6px 0 9px; }
	body .iws-header .iws-primary-nav > a,
	body .iws-header .iws-shop-menu-link,
	body .iws-header .iws-nav-dropdown .iws-shop-menu-trigger { min-height:24px !important; font-size:10px !important; line-height:24px; }
	body .iws-header.iws-header--overlay { margin-bottom:-95px; }

	.stones-home, .grndtide-shop, .grndtide-product-page, .iws-main { width:100%; max-width:100%; min-width:0; }
	.stones-hero__copy { width:min(82%, 360px); padding-left:24px; }
	.stones-section { padding-right:16px; padding-left:16px; }
	.stones-collections__track, .stones-products .products, .stones-journal, .stones-story { min-width:0; }
	.stones-collection { width:calc((100vw - 47px) / 3); max-width:calc((100vw - 47px) / 3); }
	.stones-products .products { width:100%; }
	.stones-products .products li.product { min-width:0; }
	.stones-products .iws-loop-purchase-controls { min-width:0; }
	.stones-products .iws-loop-sku-option { max-width:100% !important; }

	.grndtide-shop-header { padding-right:16px; padding-left:16px; }
	.grndtide-shop-header h1 { max-width:100%; font-size:clamp(40px,13vw,54px); overflow-wrap:anywhere; }
	.grndtide-shop-tools { padding-right:16px; padding-left:16px; }
	.grndtide-shop > .products, .grndtide-related .products { width:100%; min-width:0; grid-template-columns:repeat(2,minmax(0,1fr)); }
	.grndtide-product-summary, .grndtide-product-media { min-width:0; }
	.grndtide-product-summary h1, .single-product .product_title { font-size:clamp(34px,11vw,43px) !important; overflow-wrap:anywhere; }
	.grndtide-product-summary form.cart .button { min-width:0; }

	.iws-footer-grid { width:calc(100% - 28px); grid-template-columns:1fr; gap:28px; }
	.iws-footer-bottom { width:calc(100% - 28px); }
	.iws-page h1 { max-width:100%; font-size:clamp(34px,10vw,46px); overflow-wrap:anywhere; }
	.iws-page-content, .iws-page-content > * { max-width:100%; overflow-wrap:anywhere; }
	.iws-specifications dl > div { grid-template-columns:minmax(0,1fr); gap:4px; }
	.woocommerce-cart-form, .cart-collaterals, form.woocommerce-checkout { width:calc(100% - 28px); max-width:none; }
	.iws-cart-page { width:100%; max-width:100%; }
}

@media (max-width:420px) {
	body .iws-header .iws-header-inner { width:calc(100% - 20px); }
	body .iws-header .iws-brand-wordmark { font-size:19px !important; }
	body .iws-header .iws-primary-nav { gap:16px; }
	.stones-hero__copy { padding-left:18px; }
	.stones-products { padding-right:12px; padding-left:12px; }
	.grndtide-product-summary { padding-right:16px; padding-left:16px; }
	.iws-cart-page { padding-right:16px; padding-left:16px; }
}

/* Header shop menu */
.iws-shop-menu { position:relative; display:inline-flex; align-items:center; }.iws-shop-menu-link { display:inline-flex; align-items:center; min-height:42px; color:var(--grndtide-ink); font:inherit; font-size:13px; font-weight:800; text-transform:uppercase; }.iws-shop-menu-trigger { display:inline-flex; align-items:center; min-height:42px; padding:0 0 0 7px; border:0; background:transparent; color:var(--grndtide-ink); font:inherit; cursor:pointer; }.iws-shop-menu-icon { display:inline-grid; width:15px; height:15px; place-items:center; color:#777; font-size:16px; font-weight:400; line-height:1; transition:transform .2s ease; }.iws-shop-menu-trigger[aria-expanded="true"] .iws-shop-menu-icon { transform:rotate(45deg); }.iws-shop-menu-panel { position:absolute; z-index:30; top:100%; left:-18px; width:min(420px,calc(100vw - 28px)); padding:17px 18px 19px; border:1px solid var(--grndtide-ink); background:#fff; box-shadow:6px 6px 0 rgba(29,29,29,.12); }.iws-shop-menu-panel[hidden] { display:none; }.iws-shop-menu:hover .iws-shop-menu-panel[hidden] { display:block; }.iws-shop-menu-heading { display:flex; justify-content:space-between; align-items:center; gap:18px; padding-bottom:13px; border-bottom:1px solid var(--grndtide-line); font-size:11px; font-weight:800; text-transform:uppercase; }.iws-shop-menu-heading a { padding-bottom:2px; border-bottom:1px solid var(--grndtide-ink); }.iws-shop-menu-panel ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 22px; padding:7px 0 0; margin:0; list-style:none; }.iws-shop-menu-panel li { min-width:0; border-bottom:1px solid #e2e3e0; }.iws-shop-menu-panel li a { display:block; padding:10px 0 8px; font-family:'Marcellus',serif; font-size:16px; line-height:1.15; }.iws-shop-menu-panel li a:hover,.iws-shop-menu-panel li a:focus-visible { color:#596a30; }.iws-shop-menu-link:focus-visible,.iws-shop-menu-trigger:focus-visible,.iws-shop-menu-panel a:focus-visible { outline:2px solid var(--grndtide-ink); outline-offset:3px; }
@media (max-width:760px) { .iws-navigation { position:relative; }.iws-shop-menu-link,.iws-shop-menu-trigger { min-height:32px; font-size:12px; }.iws-shop-menu:hover .iws-shop-menu-panel[hidden] { display:none; }.iws-shop-menu-panel { top:100%; left:0; width:min(360px,calc(100vw - 28px)); }.iws-shop-menu-panel ul { grid-template-columns:1fr 1fr; }.iws-shop-menu-panel li a { font-size:15px; } }

/* Homepage header begins over the campaign and settles into a solid bar on scroll. */
.iws-header--overlay { margin-bottom:-70px; border-bottom:0; background:transparent; color:#fff; transition:background-color .42s ease,color .42s ease,border-color .42s ease,box-shadow .42s ease; }.iws-header--overlay .iws-brand img { filter:grayscale(1) brightness(0) invert(1); transition:filter .42s ease; }.iws-header--overlay .iws-cart-count { color:var(--grndtide-ink); }.iws-header--overlay .iws-shop-menu-trigger { color:#fff; transition:color .42s ease; }.iws-header--overlay .iws-shop-menu-icon { color:#e7e7e5; }.iws-header--overlay .iws-navigation .menu li:nth-child(-n+2) a::after { color:#e7e7e5; }.iws-header--overlay.iws-header--scrolled { border-bottom:1px solid var(--grndtide-line); background:#fff; color:var(--grndtide-ink); box-shadow:0 2px 14px rgba(0,0,0,.06); }.iws-header--overlay.iws-header--scrolled .iws-brand img { filter:none; }.iws-header--overlay.iws-header--scrolled .iws-shop-menu-trigger { color:var(--grndtide-ink); }.iws-header--overlay.iws-header--scrolled .iws-shop-menu-icon { color:#777; }.iws-header--overlay .iws-shop-menu-panel { color:var(--grndtide-ink); }.iws-header--overlay .iws-shop-menu-panel a { color:var(--grndtide-ink); }
@media (max-width:760px) { .iws-header--overlay { margin-bottom:-103px; }.iws-header--overlay.iws-header--scrolled { box-shadow:0 2px 12px rgba(0,0,0,.08); } }

/* Desktop campaign fills the first screen without relying on a fixed pixel height. */
@media (min-width:761px) { .grndtide-campaign { min-height:90vh; min-height:90svh; height:90vh; height:90svh; } }

/* Keep the Shop link readable while the homepage header overlays the hero. */
.iws-header--overlay .iws-shop-menu-link { color:#fff; transition:color .42s ease; }
.iws-header--overlay.iws-header--scrolled .iws-shop-menu-link { color:var(--grndtide-ink); }

/* Keep short-content pages flush with the viewport: no body background below the footer. */
body.iws-site:not(.iws-auth-body) { display:flex; min-height:100vh; min-height:100svh; flex-direction:column; }
body.iws-site:not(.iws-auth-body) > .iws-main { flex:1 0 auto; }
body.iws-site:not(.iws-auth-body) > .iws-footer { flex:0 0 auto; margin-top:auto; }

/* Natural-stone storefront homepage. Kept scoped so existing global navigation and footer remain intact. */
.stones-home { --stone-ink:#171713; --stone-muted:#5d5c54; --stone-line:#d9d7cf; --stone-paper:#fbfaf7; background:var(--stone-paper); color:var(--stone-ink); font-family:'Marcellus',serif; }
.stones-home h2,.stones-home h3 { font-family:'Marcellus',serif; font-weight:400; letter-spacing:0; }
.stones-home a { color:inherit; text-decoration:none; }.stones-home img { display:block; width:100%; }
.stones-hero { position:relative; min-height:clamp(590px,53vw,790px); overflow:hidden; background:#c6c7c1; }.stones-hero > img { position:absolute; inset:0; height:100%; object-fit:cover; object-position:center; filter:saturate(.74) brightness(1.16); }.stones-hero__shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,255,255,.93) 0%,rgba(255,255,255,.72) 29%,rgba(255,255,255,.06) 61%); }.stones-hero__copy { position:relative; z-index:1; width:min(480px,50%); padding:clamp(166px,17vw,245px) 0 0 clamp(32px,6.5vw,104px); }.stones-hero__copy p,.stones-hero__copy > span,.stones-story__copy > p { margin:0; font-size:9px; font-weight:700; letter-spacing:1.7px; line-height:1.5; text-transform:uppercase; }.stones-hero__copy h2 { margin:16px 0 18px; font-size:clamp(48px,5vw,78px); line-height:.83; }.stones-hero__copy > span { display:block; color:#595851; font-size:8px; }.stones-hero__copy a { display:inline-flex; min-width:220px; justify-content:space-between; align-items:center; margin-top:26px; padding:14px 18px; background:#171713; color:#fff; font-size:10px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; }.stones-hero__copy b,.stones-section__heading b,.stones-story__copy b { font-size:17px; font-weight:400; line-height:0; }
.stones-section { padding:23px clamp(18px,3.3vw,64px) 29px; }.stones-section__heading { display:flex; align-items:center; justify-content:space-between; gap:22px; margin-bottom:13px; }.stones-section__heading h2 { margin:0; font-family:'Marcellus',serif; font-size:10px; font-weight:700; letter-spacing:1.4px; text-transform:uppercase; }.stones-section__heading a { display:inline-flex; gap:10px; align-items:center; font-size:9px; font-weight:700; letter-spacing:1px; text-transform:uppercase; }
.stones-collections { border-bottom:1px solid var(--stone-line); }.stones-collections__track { display:grid; grid-template-columns:repeat(6,1fr); gap:5px; }.stones-collection { position:relative; min-width:0; height:184px; overflow:hidden; background:#383833; color:#fff; }.stones-collection::after { position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,.06) 75%); content:""; }.stones-collection img { height:100%; object-fit:cover; filter:saturate(.78); transition:transform .35s ease; }.stones-collection:hover img { transform:scale(1.05); }.stones-collection span { position:absolute; z-index:1; right:12px; bottom:10px; left:12px; }.stones-collection strong,.stones-collection small { display:block; }.stones-collection strong { font-family:'Marcellus',serif; font-size:18px; font-weight:400; }.stones-collection small { margin-top:4px; font-size:8px; }
.stones-story { display:grid; grid-template-columns:55% 45%; min-height:360px; background:#e7e3da; }.stones-story__image { overflow:hidden; }.stones-story__image img { height:100%; object-fit:cover; object-position:center; filter:saturate(.7) sepia(.08); }.stones-story__copy { display:grid; grid-template-columns:34% 1fr; gap:20px; align-items:center; padding:38px clamp(24px,5vw,78px) 38px 29px; background:#e7e3da; }.stones-story__copy > p { align-self:stretch; padding-top:3px; font-size:8px; }.stones-story__copy h2 { margin:0 0 14px; font-size:clamp(24px,2.3vw,38px); line-height:.93; }.stones-story__copy span { display:block; max-width:260px; color:#55544e; font-size:11px; line-height:1.45; }.stones-story__copy a { display:inline-flex; gap:16px; align-items:center; margin-top:20px; padding-bottom:5px; border-bottom:1px solid #4b4a44; font-size:9px; font-weight:700; letter-spacing:1.1px; text-transform:uppercase; }
.stones-products { background:#fff; }.stones-products .products { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:12px !important; margin:0 !important; }.stones-products .products li.product { position:relative; overflow:hidden; width:auto !important; margin:0 !important; padding:0 0 18px !important; border:0 !important; background:#fff !important; box-shadow:none !important; }.stones-products .iws-demo-visual { overflow:hidden; background:#f1f0ed; }.stones-products .iws-demo-visual img { aspect-ratio:1.22; object-fit:cover; }.stones-products .woocommerce-loop-product__title { min-height:0; margin:12px 0 5px !important; padding:0 !important; font-family:'Marcellus',serif; font-size:12px !important; font-weight:400; line-height:1.2; }.stones-products .price { padding:0 !important; color:#34342f !important; font-size:11px !important; }.stones-products .iws-product-facts,.stones-products .iws-loop-swatches { display:none !important; }.stones-products .iws-quick-add { position:absolute !important; right:10px !important; bottom:12px !important; width:25px !important; min-width:25px !important; height:25px !important; min-height:25px !important; border:1px solid #33332f !important; border-radius:50% !important; background:#fff !important; color:#262621 !important; box-shadow:none !important; }
.stones-meaning { padding-bottom:36px; border-top:1px solid var(--stone-line); }.stones-meaning__list { display:grid; grid-template-columns:repeat(6,1fr); gap:17px; }.stones-meaning__list a { min-width:0; text-align:center; font-family:'Marcellus',serif; font-size:11px; }.stones-meaning__list img { width:76px; max-width:100%; aspect-ratio:1; margin:0 auto 8px; border-radius:50%; object-fit:cover; filter:saturate(.72); }
.stones-journal { display:grid; grid-template-columns:52% 48%; border-top:1px solid var(--stone-line); background:#fff; }.stones-journal__feature { position:relative; min-height:310px; overflow:hidden; background:#44443f; color:#fff; }.stones-journal__feature > img { height:100%; object-fit:cover; filter:brightness(.6) saturate(.55); }.stones-journal__feature > div { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; padding:30px 48px; }.stones-journal__feature h2 { margin:0 0 18px; font-size:clamp(28px,3vw,45px); line-height:.88; }.stones-journal__feature a { display:grid; width:48px; height:48px; place-items:center; border:1px solid #fff; border-radius:50%; color:#fff; font-size:15px; }.stones-journal__feature span { margin-top:16px; font-size:8px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; }.stones-journal__posts { padding:23px clamp(18px,3.4vw,62px); }.stones-journal__cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.stones-journal__cards img { aspect-ratio:1.6; margin-bottom:9px; object-fit:cover; filter:saturate(.7); }.stones-journal__cards strong,.stones-journal__cards small { display:block; }.stones-journal__cards strong { font-family:'Marcellus',serif; font-size:13px; font-weight:400; line-height:1.05; }.stones-journal__cards small { margin-top:7px; color:#77756c; font-size:8px; letter-spacing:.6px; text-transform:uppercase; }
@media (max-width:760px) { .stones-hero { min-height:415px; }.stones-hero > img { object-position:39% center; }.stones-hero__shade { background:linear-gradient(90deg,rgba(255,255,255,.84),rgba(255,255,255,.22) 80%); }.stones-hero__copy { width:75%; padding:145px 0 0 24px; }.stones-hero__copy p { font-size:8px; }.stones-hero__copy h2 { margin:8px 0 12px; font-size:34px; }.stones-hero__copy > span { font-size:7px; line-height:1.5; }.stones-hero__copy a { min-width:141px; margin-top:17px; padding:10px 12px; font-size:8px; }.stones-section { padding:16px 16px 19px; }.stones-section__heading { margin-bottom:10px; }.stones-section__heading h2 { font-size:9px; }.stones-section__heading a { font-size:8px; }.stones-collections__track { display:flex; gap:5px; overflow-x:auto; padding-bottom:2px; scrollbar-width:none; }.stones-collections__track::-webkit-scrollbar { display:none; }.stones-collection { width:calc((100vw - 47px) / 3); height:108px; flex:0 0 auto; }.stones-collection:nth-child(n+5) { display:none; }.stones-collection span { right:7px; bottom:7px; left:7px; }.stones-collection strong { font-size:13px; }.stones-collection small { overflow:hidden; font-size:6px; text-overflow:ellipsis; white-space:nowrap; }.stones-story { grid-template-columns:1fr; min-height:0; }.stones-story__image { height:145px; grid-row:1; }.stones-story__image img { object-position:center 27%; }.stones-story__copy { grid-template-columns:1fr; gap:0; padding:19px 24px 15px; }.stones-story__copy > p { display:none; }.stones-story__copy h2 { margin-bottom:8px; font-size:24px; }.stones-story__copy span { font-size:10px; }.stones-story__copy a { margin-top:14px; font-size:8px; }.stones-products .products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px !important; }.stones-products .products li.product:nth-child(n+3) { display:none; }.stones-products .woocommerce-loop-product__title { margin-top:8px !important; font-size:11px !important; }.stones-products .price { font-size:10px !important; }.stones-products .iws-quick-add { right:7px !important; bottom:8px !important; }.stones-meaning__list { grid-template-columns:repeat(5,1fr); gap:9px; }.stones-meaning__list a:nth-child(n+6) { display:none; }.stones-meaning__list img { width:42px; margin-bottom:5px; }.stones-meaning__list a { font-size:9px; }.stones-journal { grid-template-columns:1fr; }.stones-journal__feature { min-height:0; height:122px; }.stones-journal__feature > div { padding:17px 20px; }.stones-journal__feature h2 { margin:0; font-size:23px; }.stones-journal__feature a,.stones-journal__feature span { display:none; }.stones-journal__posts { padding:16px; }.stones-journal__cards { grid-template-columns:1fr 1fr; gap:9px; }.stones-journal__cards img { aspect-ratio:1.7; }.stones-journal__cards strong { font-size:11px; }.stones-journal__cards small { font-size:7px; } }

/* Stable editorial ratios prevent original image dimensions from expanding homepage bands. */
@media (min-width:761px) { .stones-hero { min-height:clamp(470px,44vw,640px); }.stones-hero__copy { padding-top:clamp(138px,13vw,196px); }.stones-collections__track { height:clamp(250px,25vw,360px); }.stones-collection { height:100%; }.stones-story { height:clamp(300px,30vw,430px); min-height:0; }.stones-story__image,.stones-story__copy { min-height:0; }.stones-story__image img { height:100%; }.stones-products { padding-top:18px; padding-bottom:22px; }.stones-products .iws-demo-visual { min-height:0 !important; height:auto !important; aspect-ratio:1.46; }.stones-products .iws-demo-visual img { width:100%; height:100% !important; aspect-ratio:auto; object-fit:cover; }.stones-products .products li.product { min-height:0 !important; padding-bottom:13px !important; }.stones-products .woocommerce-loop-product__title { margin-top:8px !important; }.stones-journal { height:clamp(300px,31vw,445px); }.stones-journal__feature,.stones-journal__posts { min-height:0; height:100%; }.stones-journal__feature > img { height:100%; }.stones-journal__posts { box-sizing:border-box; }.stones-journal__cards img { aspect-ratio:1.6; } }

/* Editorial footer: a light, quiet counterpart to the high-contrast storefront. */
.iws-footer--editorial { position:relative; overflow:hidden; background:#d9d8d1; color:#272824; }.iws-footer--editorial::before { position:absolute; inset:0; opacity:.38; background-image:url('../images/demo/hero-crystal-stream.webp'); background-position:center; background-size:cover; content:""; mix-blend-mode:soft-light; }.iws-footer--editorial > * { position:relative; }.iws-footer-editorial__top { display:grid; grid-template-columns:minmax(175px,.45fr) minmax(580px,1.55fr); gap:clamp(40px,7vw,128px); align-items:start; min-height:250px; padding-top:56px; padding-bottom:39px; }.iws-footer-editorial__brand { padding-top:31px; }.iws-footer--editorial .iws-footer-brand { width:max-content; align-items:center; gap:10px; margin:0 0 17px; color:#272824; font-family:'Marcellus',serif; font-size:34px; font-weight:400; letter-spacing:0; }.iws-footer--editorial .iws-footer-brand img { width:42px; height:50px; filter:none; }.iws-footer-editorial__brand > p,.iws-footer-editorial__link-group > p,.iws-footer-editorial__bottom { font-size:11px; font-weight:800; letter-spacing:.9px; line-height:1.65; text-transform:uppercase; }.iws-footer-editorial__connect { display:grid; gap:25px; }.iws-footer-editorial__resource-nav { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.35fr); gap:28px; }.iws-footer-editorial__link-group > p { margin:0 0 10px; }.iws-footer-editorial__link-group ul,.iws-footer-editorial__socials,.iws-footer-editorial__bottom ul { padding:0; margin:0; list-style:none; }.iws-footer-editorial__link-group ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 16px; }.iws-footer-editorial__link-group a { display:inline-block; color:#343530; font-size:11px; line-height:1.3; }.iws-footer-editorial__link-group a:hover,.iws-footer-editorial__link-group a:focus-visible,.iws-footer-editorial__bottom a:hover,.iws-footer-editorial__bottom a:focus-visible { color:#66733d; outline:0; }.iws-footer-editorial__socials { display:flex; flex-wrap:wrap; gap:22px; align-items:center; }.iws-footer-editorial__socials a { display:grid; width:23px; height:23px; place-items:center; border:1px solid currentColor; border-radius:50%; color:#272824; font-family:'Marcellus',serif; font-size:8px; font-weight:800; letter-spacing:0; }.iws-footer-editorial__socials a:hover,.iws-footer-editorial__socials a:focus-visible { background:#272824; color:#f3f2ed; outline:0; }.iws-footer-editorial__bottom { display:flex; justify-content:space-between; gap:28px; align-items:center; min-height:84px; border-top:1px solid rgba(39,40,36,.35); color:#393a35; }.iws-footer-editorial__bottom nav ul { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px 31px; align-items:center; }.iws-footer--editorial .iws-cookie-preferences { padding:2px 0; border:0; background:transparent; color:inherit; font:inherit; cursor:pointer; letter-spacing:inherit; text-transform:inherit; }.iws-footer--editorial .iws-cookie-preferences:hover,.iws-footer--editorial .iws-cookie-preferences:focus-visible { color:#66733d; outline:0; }
@media (max-width:760px) { .iws-footer-editorial__top { grid-template-columns:1fr; gap:36px; min-height:0; padding-top:48px; padding-bottom:36px; }.iws-footer-editorial__brand { padding-top:0; }.iws-footer-editorial__connect { gap:26px; }.iws-footer-editorial__resource-nav { grid-template-columns:1fr; gap:26px; }.iws-footer-editorial__link-group ul { gap:8px 18px; }.iws-footer-editorial__bottom { display:block; min-height:0; padding:23px 0 27px; }.iws-footer-editorial__bottom nav ul { justify-content:flex-start; gap:8px 22px; margin-top:14px; }.iws-footer-editorial__bottom,.iws-footer-editorial__brand > p,.iws-footer-editorial__link-group > p { font-size:10px; } }

/* Classified site navigation */
.iws-primary-nav { display:flex; align-items:center; gap:25px; }.iws-footer-grid { grid-template-columns:1.45fr repeat(4,minmax(0,1fr)); gap:34px; }.iws-footer-links a { color:#e5e6e3; transition:color .18s ease; }.iws-footer-links a:hover,.iws-footer-links a:focus-visible { color:var(--grndtide-accent); }.iws-page-content h2 { margin:42px 0 12px; font-size:24px; line-height:1.05; text-transform:uppercase; }.iws-page-content h3 { margin:28px 0 9px; font-size:16px; text-transform:uppercase; }.iws-page-content ul,.iws-page-content ol { margin:0 0 22px; padding-left:20px; }.iws-page-content li { margin:8px 0; }.iws-page-content strong { font-weight:800; }.iws-page-content a { text-decoration:underline; text-underline-offset:3px; }.iws-page-content .iws-page-note { padding:16px 18px; border-left:3px solid var(--grndtide-accent); background:#eceeeb; font-size:13px; }

/* Shared policy and support pages. The site header and footer remain outside this frame. */
.iws-policy-page { background:#fbfaf8; color:#292825; }.iws-policy-shell { display:grid; grid-template-columns:245px minmax(0,1fr); width:min(100%,1440px); min-height:760px; margin:0 auto; border-right:1px solid #e2e0dc; }.iws-policy-nav { padding:34px 24px 44px 48px; border-left:1px solid #e2e0dc; border-right:1px solid #e2e0dc; }.iws-policy-nav > p,.iws-policy-crumb { margin:0; color:#73716b; font-size:9px; font-weight:700; letter-spacing:1.35px; line-height:1.3; text-transform:uppercase; }.iws-policy-nav ul { padding:12px 0 0; margin:0; list-style:none; }.iws-policy-nav li { position:relative; }.iws-policy-nav a { display:block; padding:7px 14px 7px 19px; color:#484641; font-family:'Marcellus',serif; font-size:14px; line-height:1.2; }.iws-policy-nav li.is-current a { background:#f0efed; color:#252420; }.iws-policy-nav li.is-current::before { position:absolute; top:0; bottom:0; left:0; width:2px; background:#3d3b37; content:''; }.iws-policy-nav__motto { display:block; width:164px; margin-top:51px; padding-top:24px; border-top:1px solid #e2e0dc; color:#696761; font-size:8px; font-weight:700; letter-spacing:1.2px; line-height:1.52; text-transform:uppercase; }.iws-policy-article { min-width:0; padding:30px clamp(36px,5vw,76px) 70px; }.iws-policy-crumb span { padding:0 7px; }.iws-policy-header { margin:17px 0 11px; }.iws-policy-header h1 { margin:0; font-family:'Marcellus',serif; font-size:clamp(43px,4.5vw,63px); font-weight:400; letter-spacing:0; line-height:.95; }.iws-policy-content { max-width:920px; color:#52504b; font-family:'Marcellus',serif; font-size:13px; line-height:1.32; }.iws-policy-content > p:first-child { max-width:780px; margin:0 0 22px; color:#4d4b47; font-size:18px; line-height:1.25; }.iws-policy-content > p:first-child + p { margin-top:-13px; margin-bottom:23px; color:#77746d; font-family:'Marcellus',serif; font-size:9px; font-weight:700; letter-spacing:1px; text-transform:uppercase; }.iws-policy-content .iws-policy-section { display:block; padding:12px 0 11px; border-top:1px solid #e6e4e0; }.iws-policy-content .iws-policy-section:last-child { border-bottom:1px solid #e6e4e0; }.iws-policy-section > summary { display:grid; grid-template-columns:64px minmax(0,1fr); cursor:default; list-style:none; }.iws-policy-section > summary::-webkit-details-marker { display:none; }.iws-policy-section__number { grid-column:1; color:#77746e; font:700 10px/1.2 Arial,Helvetica,sans-serif; letter-spacing:.4px; }.iws-policy-section > summary h2 { grid-column:2; margin:0 !important; color:#3d3b37; font-family:'Marcellus',serif; font-size:23px !important; font-weight:400; line-height:1.05; text-transform:none; }.iws-policy-section > :not(summary) { min-width:0; margin-left:64px; }.iws-policy-section p { margin-top:6px; }.iws-policy-section ul,.iws-policy-section ol { margin:8px 0 0 64px; }.iws-policy-mobile-hero { display:none; }
.iws-policy-nav > nav { margin-top:12px; }.iws-policy-nav__group + .iws-policy-nav__group { margin-top:15px; padding-top:14px; border-top:1px solid #e2e0dc; }.iws-policy-nav__group h2 { margin:0; color:#77746d; font:700 8px/1.3 Arial,Helvetica,sans-serif; letter-spacing:1.05px; text-transform:uppercase; }.iws-policy-nav__group ul { padding-top:5px; }.iws-policy-nav__group a { padding-top:5px; padding-bottom:5px; font-size:13px; }

@media (max-width:760px) { .iws-policy-page { padding:0 0 44px; background:#eeece8; }.iws-policy-mobile-hero { position:relative; display:block; min-height:194px; overflow:hidden; background:#4f5c5d url('../images/hero-banner-mobile.webp') center/cover no-repeat; color:#fff; }.iws-policy-mobile-hero::after { position:absolute; inset:0; background:linear-gradient(90deg,rgba(18,27,27,.54),rgba(18,27,27,.05) 68%); content:''; }.iws-policy-mobile-hero span { position:absolute; z-index:1; top:55px; left:33px; font-size:10px; font-weight:700; letter-spacing:2.8px; line-height:2.25; text-transform:uppercase; }.iws-policy-shell { display:block; width:100%; min-height:0; border:0; }.iws-policy-nav { display:none; }.iws-policy-article { margin-top:0; padding:27px 33px 4px; background:#fbfaf8; }.iws-policy-crumb { display:none; }.iws-policy-header { margin:0 0 18px; }.iws-policy-header h1 { font-size:43px; line-height:1; }.iws-policy-content { font-size:13px; line-height:1.45; }.iws-policy-content > p:first-child { margin:0 0 14px; font-family:'Marcellus',serif; font-size:18px; line-height:1.42; }.iws-policy-content > p:first-child + p { margin:0 0 23px; font-size:13px; font-weight:400; letter-spacing:0; line-height:1.4; text-transform:none; }.iws-policy-content .iws-policy-section { position:relative; display:block; padding:0; border-top:1px solid #e1dfdb; }.iws-policy-content .iws-policy-section:last-child { border-bottom:1px solid #e1dfdb; }.iws-policy-section > summary { position:relative; display:grid; grid-template-columns:39px minmax(0,1fr) 20px; min-height:56px; align-items:center; padding:0; cursor:pointer; }.iws-policy-section > summary::after { grid-column:3; width:9px; height:9px; border-right:2px solid #3f3d39; border-bottom:2px solid #3f3d39; content:''; transform:rotate(45deg) translateY(-3px); transition:transform .18s ease; }.iws-policy-section[open] > summary::after { transform:rotate(225deg) translate(-3px,-1px); }.iws-policy-section__number { grid-column:1; font-family:'Marcellus',serif; font-size:18px; font-weight:400; }.iws-policy-section > summary h2 { grid-column:2; margin:0 !important; font-size:21px !important; line-height:1.08; }.iws-policy-section > :not(summary) { margin:0 0 17px; padding-left:39px; }.iws-policy-section ul,.iws-policy-section ol { padding-left:57px; }.iws-policy-section p { margin-top:0; } }
@media (min-width:761px) and (max-width:1100px) { .iws-footer-grid { grid-template-columns:1.5fr 1fr 1fr; gap:36px; }.iws-footer-grid > div:first-child { grid-row:span 2; }.iws-primary-nav { gap:17px; }.iws-shop-menu-trigger { font-size:12px; } }
@media (max-width:760px) { .iws-primary-nav { gap:20px; }.iws-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.iws-footer-grid > div:first-child { grid-column:1/-1; }.iws-footer-links { font-size:13px; } }

/* Header action icons add quick visual recognition without removing labels. */
.iws-header-action { display:inline-flex; align-items:center; gap:6px; padding:5px 0; transition:color .18s ease,transform .18s ease; }.iws-action-icon { width:16px; height:16px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; }.iws-search-link .iws-action-icon { color:#ef7065; }.iws-account-link .iws-action-icon { color:#4ca5c6; }.iws-cart-link .iws-action-icon { color:#8cad19; }.iws-header-action:hover,.iws-header-action:focus-visible { transform:translateY(-1px); }.iws-search-link:hover,.iws-search-link:focus-visible { color:#d64e44; }.iws-account-link:hover,.iws-account-link:focus-visible { color:#237a99; }.iws-cart-link:hover,.iws-cart-link:focus-visible { color:#66820e; }.iws-header-action:focus-visible { outline:2px solid currentColor; outline-offset:4px; }.iws-cart-count { transition:transform .18s ease,background-color .18s ease; }.iws-cart-link:hover .iws-cart-count { transform:scale(1.12); background:#e5ff76; }
@media (max-width:760px) { .iws-header-action { gap:0; }.iws-header-action > span:not(.iws-cart-count) { display:none; }.iws-action-icon { width:19px; height:19px; }.iws-cart-count { margin-left:-4px; } }

/* Frame only the content between placement shortcuts and the closing slogan panel. */
.grndtide-home > .grndtide-product-section,.grndtide-home > .grndtide-editorial { margin-right:clamp(6px,1.1vw,22px); margin-left:clamp(6px,1.1vw,22px); }
@media (min-width:761px) { .iws-header-inner { min-height:70px; }.iws-brand a { font-size:24px; }.iws-brand img { width:34px; height:48px; }.iws-navigation .menu { gap:30px; font-size:13px; }.iws-header-actions { gap:19px; font-size:12px; }.grndtide-marquee-track { min-height:52px; }.grndtide-marquee span { font-size:24px; }.grndtide-category { min-height:400px; padding:30px; }.grndtide-product-section { padding:66px 0 82px; }.grndtide-section-header { padding:0 3.4vw 26px; }.grndtide-section-header h2 { font-size:44px; }.grndtide-product-section .products { grid-template-columns:repeat(5,minmax(0,1fr)); }.grndtide-product-section .woocommerce-loop-product__title { min-height:48px; padding:0 12px; margin-top:13px !important; font-size:14px !important; }.grndtide-product-section .price { padding:0 12px; font-size:13px !important; }.grndtide-product-section .iws-product-facts { margin:10px 12px 0; }.grndtide-feature { min-height:510px; padding:60px; }.grndtide-guidance-grid > div { min-height:240px; padding:34px; }.grndtide-editorial { min-height:550px; }.grndtide-newsletter { padding:95px 8vw; } }
@media (min-width:1500px) { .grndtide-campaign { min-height:750px; }.grndtide-campaign-copy { padding-top:170px; padding-bottom:100px; }.grndtide-campaign-copy h1 { font-size:96px; }.grndtide-category { min-height:440px; }.grndtide-feature { min-height:570px; } }

/* Local editorial photography replaces the earlier geometric preview artwork. */
.grndtide-campaign-visual { background:#171717; }
.grndtide-campaign-visual::before { display:none; }
.grndtide-campaign-visual::after { display:none; }
.grndtide-campaign-visual > picture,.grndtide-campaign-visual > picture > img { display:block; width:100%; height:100%; }
.grndtide-campaign-visual > picture > img { object-fit:cover; object-position:center; filter:none; }
.grndtide-campaign { min-height:clamp(580px,50vw,780px); }
.grndtide-campaign-copy { position:absolute; z-index:2; left:clamp(32px,8vw,130px); bottom:clamp(34px,6vw,80px); width:auto; padding:0; }
.grndtide-campaign-visual { inset:0; }
.grndtide-hero-button { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; min-width:242px; min-height:74px; padding:0 26px 0 34px; border:1px solid #b44a4a; background:#0d1113; color:#fff; font-size:20px; font-weight:500; letter-spacing:6px; line-height:1; text-transform:uppercase; transition:border-color .2s ease,background-color .2s ease,color .2s ease,transform .2s ease; }
.grndtide-hero-button span { margin:0; color:#b44a4a; font-size:28px; line-height:1; letter-spacing:0; }
.grndtide-hero-button:hover,.grndtide-hero-button:focus-visible { border-color:#fff; background:#fff; color:#0d1113; transform:translateY(-2px); }
.grndtide-hero-button:focus-visible { outline:2px solid var(--grndtide-accent); outline-offset:4px; }
.grndtide-category > img,.grndtide-feature > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(1.05) brightness(.66); transition:transform .5s ease,filter .3s ease; }
.grndtide-category::before,.grndtide-category::after,.grndtide-feature::before,.grndtide-feature::after { display:none; }
.grndtide-category::after,.grndtide-feature::after { display:block; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,.04) 70%); }
.grndtide-category--ear::after,.grndtide-category--nose::after { inset:0; width:auto; height:auto; border:0; border-radius:0; transform:none; background:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,.04) 70%); }
.grndtide-category:hover > img,.grndtide-feature:hover > img { transform:scale(1.04); filter:grayscale(.2) contrast(1.05) brightness(.74); }
.iws-demo-visual--photo { display:block; background:#e5e5e1; }

/* Final responsive overrides. Keep this block last so all legacy desktop
 * styling above remains predictable while narrow viewports stay contained. */
*, *::before, *::after { box-sizing:border-box; }
html, body { width:100%; max-width:100%; }
body { overflow-x:clip; }
img, video, canvas, iframe { max-width:100%; }
body .iws-header .iws-brand { transform:none !important; min-width:0; }
body .iws-header .iws-header-inner { width:min(calc(100% - 48px),1440px); grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr); }
body .iws-header .iws-brand-wordmark { font-size:clamp(24px,2.2vw,30px) !important; letter-spacing:clamp(1px,.25vw,3px); white-space:nowrap; }
body .iws-header .iws-primary-nav > a,
body .iws-header .iws-shop-menu-link,
body .iws-header .iws-nav-dropdown .iws-shop-menu-trigger { font-size:clamp(10px,1vw,14px) !important; }
@media (max-width:1100px) and (min-width:761px) {
	body .iws-header .iws-header-inner { width:calc(100% - 32px); grid-template-columns:minmax(145px,1fr) auto minmax(120px,1fr); gap:16px; }
	body .iws-header .iws-primary-nav { gap:15px; }
}
@media (max-width:760px) {
	html, body { overflow-x:clip; }
	body .iws-header .iws-header-inner { width:calc(100% - 28px); min-height:60px; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
	body .iws-header .iws-brand { min-width:0; }
	body .iws-header .iws-brand-wordmark { max-width:100%; overflow:hidden; font-size:clamp(19px,6vw,25px) !important; letter-spacing:1px; text-overflow:ellipsis; }
	body .iws-header .iws-brand img { width:21px; height:24px; flex:0 0 auto; }
	body .iws-header .iws-header-actions { gap:9px; min-width:0; }
	body .iws-header .iws-action-icon { width:19px !important; height:19px !important; }
	body .iws-header .iws-navigation { grid-column:1/-1; width:100%; max-width:100%; overflow-x:auto; overflow-y:hidden; }
	body .iws-header .iws-primary-nav { width:max-content; min-width:100%; gap:20px; padding:6px 0 9px; }
	body .iws-header .iws-primary-nav > a,
	body .iws-header .iws-shop-menu-link,
	body .iws-header .iws-nav-dropdown .iws-shop-menu-trigger { min-height:24px !important; font-size:10px !important; line-height:24px; }
	body .iws-header.iws-header--overlay { margin-bottom:-95px; }
	.stones-home, .grndtide-shop, .grndtide-product-page, .iws-main { width:100%; max-width:100%; min-width:0; }
	.stones-hero__copy { width:min(82%,360px); padding-left:24px; }
	.stones-section { padding-right:16px; padding-left:16px; }
	.stones-collection { width:calc((100vw - 47px) / 3); max-width:calc((100vw - 47px) / 3); }
	.stones-products .products, .grndtide-shop > .products, .grndtide-related .products { width:100%; min-width:0; grid-template-columns:repeat(2,minmax(0,1fr)); }
	.stones-products .products li.product { min-width:0; }
	.grndtide-shop-header { padding-right:16px; padding-left:16px; }
	.grndtide-shop-header h1 { max-width:100%; font-size:clamp(40px,13vw,54px); overflow-wrap:anywhere; }
	.grndtide-shop-tools { padding-right:16px; padding-left:16px; }
	.grndtide-product-summary, .grndtide-product-media { min-width:0; }
	.grndtide-product-summary h1, .single-product .product_title { font-size:clamp(34px,11vw,43px) !important; overflow-wrap:anywhere; }
	.iws-footer-grid { width:calc(100% - 28px); grid-template-columns:1fr; gap:28px; }
	.iws-footer-bottom { width:calc(100% - 28px); }
	.iws-page h1 { max-width:100%; font-size:clamp(34px,10vw,46px); overflow-wrap:anywhere; }
	.iws-page-content, .iws-page-content > * { max-width:100%; overflow-wrap:anywhere; }
	.iws-specifications dl > div { grid-template-columns:minmax(0,1fr); gap:4px; }
	.woocommerce-cart-form, .cart-collaterals, form.woocommerce-checkout { width:calc(100% - 28px); max-width:none; }
	.iws-cart-page { width:100%; max-width:100%; }
}
@media (max-width:420px) {
	body .iws-header .iws-header-inner { width:calc(100% - 20px); }
	body .iws-header .iws-brand-wordmark { font-size:19px !important; }
	body .iws-header .iws-primary-nav { gap:16px; }
	.stones-hero__copy { padding-left:18px; }
	.stones-products { padding-right:12px; padding-left:12px; }
	.grndtide-product-summary { padding-right:16px; padding-left:16px; }
	.iws-cart-page { padding-right:16px; padding-left:16px; }
}
.iws-demo-visual--photo::before,.iws-demo-visual--photo > span,.iws-demo-visual--photo > i { display:none; }
.iws-demo-visual--photo > img { width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .42s ease; }
.grndtide-product-section .products li.product:hover .iws-demo-visual--photo > img,.grndtide-shop > .products li.product:hover .iws-demo-visual--photo > img,.grndtide-related li.product:hover .iws-demo-visual--photo > img { transform:scale(1.045); }
.single-product .grndtide-product-gallery .iws-demo-visual--photo > img,.grndtide-product-media .iws-demo-visual--photo > img { min-height:100%; }
.single-product .grndtide-product-gallery .grndtide-product-gallery-alt > img,.grndtide-product-media .grndtide-product-gallery-alt > img { object-position:68% center; }
.grndtide-editorial-grid { overflow:hidden; }
.grndtide-editorial-grid img { width:100%; height:100%; min-height:0; object-fit:cover; filter:grayscale(1) contrast(1.08); transition:transform .35s ease,filter .35s ease; }
.grndtide-editorial-grid img:nth-child(6) { grid-column:span 2; }
.grndtide-editorial-grid:hover img { filter:grayscale(.35) contrast(1.04); }
.grndtide-editorial-grid img:hover { transform:scale(1.04); filter:grayscale(0) contrast(1); }
@media (max-width:760px) { .grndtide-campaign { min-height:465px; height:465px; display:block; }.grndtide-campaign-copy { z-index:4; top:70%; bottom:auto; left:6%; padding:0; }.grndtide-campaign-visual { inset:0; height:auto; }.grndtide-campaign-visual > picture > img { object-position:center; }.grndtide-campaign-copy .grndtide-hero-button { opacity:0; }.grndtide-hero-button { min-width:218px; min-height:62px; padding:0 20px 0 26px; font-size:16px; letter-spacing:5px; }.grndtide-hero-button span { font-size:23px; }.grndtide-category > img { object-position:center; }.grndtide-feature > img { object-position:center 30%; } }

/* Product page: one focal image and one fully legible purchase panel. */
.grndtide-product-layout { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.grndtide-product-media .grndtide-product-gallery { grid-template-columns:minmax(0,1fr); height:100%; }

.grndtide-product-media .iws-demo-visual { min-height:clamp(520px,62vw,860px); }
.grndtide-product-summary { display:flex; min-width:0; flex-direction:column; justify-content:flex-start; overflow-wrap:anywhere; }
.grndtide-product-summary form.cart { display:grid; grid-template-columns:72px minmax(0,1fr); gap:10px; align-items:center; }
.grndtide-product-summary form.cart .quantity { float:none; margin:0; }
.grndtide-product-summary form.cart .button { float:none; width:100%; margin:0; }

@media (max-width:760px) {
	.grndtide-product-layout { grid-template-columns:minmax(0,1fr); }
	.grndtide-product-media { min-width:0; }
	.grndtide-product-media .grndtide-product-gallery { grid-template-columns:minmax(0,1fr); }
	.grndtide-product-media .iws-demo-visual { min-height:440px; }
	.grndtide-product-summary { display:block; }
	.grndtide-product-summary form.cart { grid-template-columns:64px minmax(0,1fr); }
}

/* Catalog SKU swatches show the current sellable SKU and switch real variants. */
.iws-loop-swatches { display:flex; gap:7px; padding:10px 12px 0; }
.grndtide-product-section .iws-loop-swatches { padding:10px 12px 0; }
.iws-loop-swatch { width:27px; height:27px; padding:0; border:1px solid #c7c8c5; border-radius:0; background:linear-gradient(135deg,#f7f7f5 0 48%,#d5d7d4 49% 100%); cursor:pointer; }
.iws-loop-swatch--silver,.iws-loop-swatch--steel { background:linear-gradient(135deg,#f7f7f5 0 48%,#d5d7d4 49% 100%); }
.iws-loop-swatch--gold { background:linear-gradient(135deg,#faf8ec 0 48%,#e6d58b 49% 100%); }
.iws-loop-swatch--black { background:linear-gradient(135deg,#60615f 0 48%,#1d1d1d 49% 100%); }
.iws-loop-swatch.is-selected,.iws-loop-swatch:hover,.iws-loop-swatch:focus-visible { outline:2px solid var(--grndtide-ink); outline-offset:2px; }
.iws-loop-sku-options { min-height:30px !important; padding-right:62px !important; overflow:visible !important; }
.iws-loop-sku-option { width:auto !important; max-width:100%; height:22px !important; min-height:22px; padding:0 6px !important; overflow:hidden; background:#fff; color:var(--grndtide-ink); font:700 9px/1 Arial,Helvetica,sans-serif; text-overflow:ellipsis; white-space:nowrap; }
.iws-sku-options--required { animation:iws-sku-options-required .34s ease-in-out 2; }
.iws-product-badges { position:absolute; z-index:10; top:10px; right:10px; display:flex; flex-direction:column; align-items:flex-end; gap:6px; pointer-events:none; }
.iws-product-badge { display:inline-flex; min-width:48px; min-height:28px; align-items:center; justify-content:center; gap:4px; padding:0 7px; border:1px solid #191a18; border-radius:0; background:#fff; color:#191a18; box-shadow:0 2px 7px rgba(0,0,0,.16); font:800 9px/1 Arial,Helvetica,sans-serif; letter-spacing:.35px; }
.iws-product-badge::before { width:13px; height:13px; flex:0 0 13px; background:center/contain no-repeat url('../images/icons/creation.svg'); content:''; }
.iws-product-badge--hot { border-color:#ff5a36; background:#ff5a36; color:#fff; }
.iws-product-badge--hot::before { background-image:url('../images/icons/fire.svg'); filter:brightness(0) invert(1); }
@keyframes iws-sku-options-required { 50% { transform:translateX(4px); } }

/* Keep catalog-card purchase information aligned even when names or facts wrap. */
.grndtide-shop > .products li.product,.grndtide-product-section .products li.product { display:flex; min-width:0; flex-direction:column; }
.grndtide-shop > .products li.product > .woocommerce-LoopProduct-link,.grndtide-product-section .products li.product > .woocommerce-LoopProduct-link { display:flex; min-width:0; flex:1 0 auto; flex-direction:column; }
.grndtide-shop .woocommerce-loop-product__title,.grndtide-product-section .woocommerce-loop-product__title { min-height:2.35em; }
.grndtide-shop .iws-product-facts,.grndtide-product-section .iws-product-facts { min-height:16px; }
.grndtide-shop .iws-loop-swatches,.grndtide-product-section .iws-loop-swatches { min-height:37px; align-items:flex-start; }

/* Catalog: a contained browsing layout with working taxonomy filters. */
.grndtide-shop { padding:0 32px 84px; }
.grndtide-shop-inner { width:min(100%,1680px); margin:0 auto; }
.grndtide-shop-header { padding:54px 0 34px; border-bottom:1px solid var(--grndtide-line); }
.grndtide-catalog-layout { display:grid; grid-template-columns:224px minmax(0,1fr); gap:36px; padding-top:28px; }
.grndtide-catalog-filters { align-self:start; position:sticky; top:96px; padding-right:28px; border-right:1px solid var(--grndtide-line); }
.grndtide-filter-heading { display:flex; justify-content:space-between; align-items:center; padding-bottom:16px; border-bottom:1px solid var(--grndtide-ink); font-size:11px; font-weight:800; letter-spacing:.3px; }
.grndtide-filter-heading a { color:#6a6c68; font-size:10px; text-decoration:underline; text-underline-offset:3px; }
.grndtide-filter-group { padding:19px 0; border-bottom:1px solid var(--grndtide-line); }
.grndtide-filter-group h2 { margin:0 0 11px; font-size:11px; font-weight:800; letter-spacing:.25px; }
.grndtide-filter-group a { display:flex; justify-content:space-between; gap:12px; padding:5px 0; color:#5e615e; font-size:12px; line-height:1.25; }
.grndtide-filter-group a:hover,.grndtide-filter-group a:focus-visible,.grndtide-filter-group a.is-active { color:var(--grndtide-ink); font-weight:800; }
.grndtide-filter-group a.is-active::before { content:'+'; position:absolute; margin-left:-13px; }
.grndtide-filter-group a span { color:#8c8e8b; font-size:10px; }
.grndtide-catalog-results { min-width:0; }
.grndtide-catalog-results .grndtide-shop-tools { min-height:39px; justify-content:space-between; padding:0 0 14px; border-bottom:1px solid var(--grndtide-line); }
.grndtide-catalog-results .woocommerce-result-count { margin:0; color:#4f524f; font-size:11px; font-weight:800; }
.grndtide-catalog-results .woocommerce-ordering { margin:0; }
.grndtide-catalog-results .woocommerce-ordering select { min-height:31px; padding:0 26px 0 0; border:0; border-bottom:1px solid var(--grndtide-ink); border-radius:0; background-color:#fff; color:var(--grndtide-ink); font:800 11px/1 Arial,Helvetica,sans-serif; text-transform:uppercase; }
.grndtide-catalog-results > .products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; margin:20px 0 0; list-style:none; border-top:1px solid var(--grndtide-line); border-left:1px solid var(--grndtide-line); }
.grndtide-catalog-results > .products::before,.grndtide-catalog-results > .products::after { display:none; }
.grndtide-catalog-results > .products li.product { position:relative; display:flex; min-width:0; width:auto !important; float:none; flex-direction:column; margin:0 !important; padding:0 0 16px; border-right:1px solid var(--grndtide-line); border-bottom:1px solid var(--grndtide-line); }
.grndtide-catalog-results > .products li.product > .woocommerce-LoopProduct-link { display:flex; min-width:0; flex:1 0 auto; flex-direction:column; }
.grndtide-catalog-results .iws-demo-visual { aspect-ratio:1/.98; }
.grndtide-catalog-results .woocommerce-loop-product__title { min-height:2.35em; padding:0 12px; margin:12px 0 4px !important; font-size:14px !important; font-weight:800; line-height:1.05; text-transform:uppercase; }
.grndtide-catalog-results .price { display:block; padding:0 12px; color:#222 !important; font-size:12px !important; font-weight:700; }
.grndtide-catalog-results .iws-product-facts { min-height:16px; margin:9px 12px 0; }
.grndtide-catalog-results .iws-product-facts span { padding:0; border:0; color:#666; font-size:10px; text-transform:uppercase; }
.grndtide-catalog-results .iws-loop-swatches { min-height:37px; }
.grndtide-catalog-results .button { display:none !important; }
.grndtide-catalog-results .woocommerce-pagination { margin:36px 0 0; text-align:center; }
.grndtide-catalog-results .woocommerce-pagination ul.page-numbers { display:inline-flex; flex-wrap:wrap; gap:7px; padding:0; border:0; }
.grndtide-catalog-results .woocommerce-pagination ul.page-numbers li { float:none; border:0; }
.grndtide-catalog-results .woocommerce-pagination ul.page-numbers li .page-numbers { display:grid; width:36px; height:36px; place-items:center; padding:0; border:1px solid var(--grndtide-line); background:#fff; color:var(--grndtide-ink); font-size:11px; font-weight:800; }
.grndtide-catalog-results .woocommerce-pagination ul.page-numbers li .page-numbers.current,.grndtide-catalog-results .woocommerce-pagination ul.page-numbers li a.page-numbers:hover,.grndtide-catalog-results .woocommerce-pagination ul.page-numbers li a.page-numbers:focus-visible { border-color:var(--grndtide-ink); background:var(--grndtide-ink); color:#fff; }
@media (max-width:1000px) { .grndtide-catalog-layout { grid-template-columns:190px minmax(0,1fr); gap:24px; }.grndtide-catalog-filters { padding-right:20px; }.grndtide-catalog-results > .products { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) { .grndtide-shop { padding:0 14px 58px; }.grndtide-shop-header { padding:32px 0 24px; }.grndtide-catalog-layout { display:block; padding-top:20px; }.grndtide-catalog-filters { position:static; display:grid; grid-template-columns:repeat(3,minmax(145px,1fr)); gap:0 16px; overflow-x:auto; margin-bottom:26px; padding:0 0 1px; border-right:0; border-bottom:1px solid var(--grndtide-line); }.grndtide-filter-heading { grid-column:1/-1; }.grndtide-filter-group { min-width:145px; border-bottom:0; }.grndtide-catalog-results .grndtide-shop-tools { align-items:center; flex-direction:row; gap:12px; padding-bottom:12px; }.grndtide-catalog-results .woocommerce-ordering select { max-width:158px; font-size:10px; }.grndtide-catalog-results > .products { margin-top:14px; }.grndtide-catalog-results .woocommerce-loop-product__title { padding:0 9px; font-size:12px !important; }.grndtide-catalog-results .price { padding:0 9px; }.grndtide-catalog-results .iws-product-facts { margin-right:9px; margin-left:9px; } }

/* Product cards: image swap on hover, compact SKU choices, and softer framing. */
.grndtide-product-section .products,.grndtide-catalog-results > .products { gap:18px; border:0; background:transparent; }
.grndtide-product-section .products li.product,.grndtide-catalog-results > .products li.product { overflow:hidden; padding:0 0 14px; border:1px solid #e1e3df; border-radius:4px; background:#fff; box-shadow:0 2px 10px rgba(20,23,21,.035); }
.grndtide-product-section .products li.product:hover,.grndtide-catalog-results > .products li.product:hover { border-color:#c5c8c3; box-shadow:0 8px 22px rgba(20,23,21,.09); transform:translateY(-2px); }
.grndtide-product-section .iws-demo-visual,.grndtide-catalog-results .iws-demo-visual { overflow:hidden; background:#eceeeb; }
.iws-demo-visual--photo .iws-loop-main-image,.iws-demo-visual--photo .iws-loop-worn-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:opacity .28s ease,transform .36s ease; }
.iws-demo-visual--photo .iws-loop-main-image { z-index:1; object-position:center; }
.iws-demo-visual--photo .iws-loop-worn-image { z-index:2; opacity:0; object-position:76% center; transform:scale(1.015); }
.grndtide-product-section .iws-demo-visual:hover .iws-loop-main-image,.grndtide-catalog-results .iws-demo-visual:hover .iws-loop-main-image { opacity:0; transform:scale(1); }
.grndtide-product-section .iws-demo-visual:hover .iws-loop-worn-image,.grndtide-catalog-results .iws-demo-visual:hover .iws-loop-worn-image { opacity:1; transform:scale(1); }
.grndtide-product-section .iws-demo-visual:hover,.grndtide-catalog-results .iws-demo-visual:hover { transform:none; }
.woocommerce ul.products li.product .iws-demo-visual { position:relative; display:block; width:100%; aspect-ratio:1/1; overflow:hidden; background:#eceeeb; }
.woocommerce ul.products li.product .iws-demo-visual--photo .iws-loop-main-image,.woocommerce ul.products li.product .iws-demo-visual--photo .iws-loop-worn-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.woocommerce ul.products li.product .iws-demo-visual--photo .iws-loop-main-image { z-index:1; opacity:1; }
.woocommerce ul.products li.product .iws-demo-visual--photo .iws-loop-worn-image { z-index:2; opacity:0; }
.woocommerce ul.products li.product .iws-demo-visual--photo:hover .iws-loop-main-image { opacity:0; }
.woocommerce ul.products li.product .iws-demo-visual--photo:hover .iws-loop-worn-image { opacity:1; }
.grndtide-product-section .woocommerce-loop-product__title,.grndtide-catalog-results .woocommerce-loop-product__title { min-height:2.25em; padding:0 14px; margin:14px 0 6px !important; font-size:13px !important; line-height:1.12; letter-spacing:0; }
.grndtide-product-section .price,.grndtide-catalog-results .price { min-height:18px; padding:0 14px; font-size:12px !important; line-height:1.3; }
.grndtide-product-section .iws-product-facts,.grndtide-catalog-results .iws-product-facts { min-height:15px; margin:6px 14px 0; line-height:1.2; }
.grndtide-product-section .iws-loop-swatches,.grndtide-catalog-results .iws-loop-swatches { min-height:26px; gap:5px; padding:9px 14px 0; }
.iws-loop-swatch { width:18px; height:18px; border-color:#bfc2bd; }
.iws-loop-swatch.is-selected,.iws-loop-swatch:hover,.iws-loop-swatch:focus-visible { outline-width:1px; outline-offset:2px; }
@media (max-width:760px) { .grndtide-product-section .products,.grndtide-catalog-results > .products { gap:10px; }.grndtide-product-section .products li.product,.grndtide-catalog-results > .products li.product { padding-bottom:11px; }.grndtide-product-section .woocommerce-loop-product__title,.grndtide-catalog-results .woocommerce-loop-product__title { min-height:2.35em; padding:0 10px; margin-top:10px !important; font-size:12px !important; }.grndtide-product-section .price,.grndtide-catalog-results .price { padding:0 10px; font-size:11px !important; }.grndtide-product-section .iws-product-facts,.grndtide-catalog-results .iws-product-facts { margin:5px 10px 0; }.grndtide-product-section .iws-loop-swatches,.grndtide-catalog-results .iws-loop-swatches { padding:8px 10px 0; } }

/* Keep product information comfortably inside each card on every catalog view. */
.grndtide-product-section .products li.product,.grndtide-catalog-results > .products li.product { padding-bottom:22px; }
.grndtide-product-section .woocommerce-loop-product__title,.grndtide-catalog-results .woocommerce-loop-product__title { padding-right:18px; padding-left:18px; margin-top:17px !important; margin-bottom:8px !important; }
.grndtide-product-section .price,.grndtide-catalog-results .price { padding-right:18px; padding-left:18px; }

/* Quick add uses an icon-led cart action on home and catalog product cards. */
.grndtide-product-section .products li.product,.grndtide-catalog-results > .products li.product { position:relative; }
.grndtide-product-section .products li.product .iws-quick-add,.grndtide-catalog-results > .products li.product .iws-quick-add,.grndtide-shop > .products li.product .iws-quick-add,.grndtide-related .products li.product .iws-quick-add { position:absolute; z-index:5; right:14px; bottom:14px; display:grid !important; width:42px; min-width:42px; height:42px; min-height:42px; padding:0; border:1px solid var(--grndtide-ink); border-radius:50%; background:var(--grndtide-ink); color:#fff; box-shadow:0 5px 12px rgba(15,18,15,.2); place-items:center; text-decoration:none; transition:background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease; }
.iws-quick-add svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.iws-variable-quick-add[hidden] { display:none !important; }
.grndtide-product-section .products li.product .iws-quick-add:hover,.grndtide-product-section .products li.product .iws-quick-add:focus-visible,.grndtide-catalog-results > .products li.product .iws-quick-add:hover,.grndtide-catalog-results > .products li.product .iws-quick-add:focus-visible,.grndtide-shop > .products li.product .iws-quick-add:hover,.grndtide-shop > .products li.product .iws-quick-add:focus-visible,.grndtide-related .products li.product .iws-quick-add:hover,.grndtide-related .products li.product .iws-quick-add:focus-visible { border-color:var(--grndtide-accent); background:var(--grndtide-accent); color:var(--grndtide-ink); box-shadow:0 8px 18px rgba(15,18,15,.24); transform:translateY(-3px) scale(1.04); }
.iws-quick-add.is-loading { color:transparent; pointer-events:none; }.iws-quick-add.is-loading svg { display:none; }.iws-quick-add.added { border-color:#789812; background:var(--grndtide-accent); color:var(--grndtide-ink); }.iws-quick-add.added svg { display:none; }.iws-quick-add.added::after { content:'✓'; font:800 18px/1 Arial,Helvetica,sans-serif; }
.iws-variable-quick-add[aria-disabled="true"] { border-color:#a5a8a2; color:#777; cursor:not-allowed; }
.iws-quick-add-success-icon { display:none; }
.iws-quick-add.added::after { display:none; }
.iws-quick-add.added .iws-quick-add-success-icon { position:absolute; top:50%; left:50%; display:block; width:22px; height:22px; margin:0; transform:translate(-50%,-50%); }
.grndtide-product-section .products li.product .added_to_cart,.grndtide-catalog-results > .products li.product .added_to_cart { display:none !important; }
@media (max-width:760px) { .grndtide-product-section .products li.product .iws-quick-add,.grndtide-catalog-results > .products li.product .iws-quick-add,.grndtide-shop > .products li.product .iws-quick-add,.grndtide-related .products li.product .iws-quick-add { right:10px; bottom:10px; width:36px; min-width:36px; height:36px; min-height:36px; }.iws-quick-add svg { width:18px; height:18px; } }

/* Editorial pause between product rails. */
.grndtide-interlude { margin:10px clamp(6px,1.1vw,22px) 0; overflow:hidden; background:#151615; color:#fff; }
.grndtide-interlude__link { position:relative; display:grid; min-height:360px; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); isolation:isolate; }
.grndtide-interlude__copy { z-index:2; display:flex; min-width:0; flex-direction:column; justify-content:center; padding:clamp(42px,5vw,78px); }
.grndtide-interlude__eyebrow { margin:0 0 21px; color:#c7ff3e; font-size:10px; font-weight:800; letter-spacing:1.1px; line-height:1; }
.grndtide-interlude h2 { max-width:670px; margin:0; font-family:'Marcellus',serif; font-size:clamp(37px,4.2vw,68px); font-weight:700; letter-spacing:0; line-height:.88; }
.grndtide-interlude__text { max-width:335px; margin:25px 0 29px; color:#c5c8c3; font-size:13px; line-height:1.5; }
.grndtide-interlude__action { display:inline-flex; width:max-content; max-width:100%; align-items:center; gap:24px; padding-bottom:8px; border-bottom:1px solid #a8aca5; font-size:11px; font-weight:800; letter-spacing:.55px; line-height:1; transition:border-color .25s ease,color .25s ease,gap .25s ease; }
.grndtide-interlude__action b { color:var(--grndtide-accent); font-size:19px; font-weight:400; line-height:0; }
.grndtide-interlude__image { position:relative; min-width:0; overflow:hidden; background:#282a28; }
.grndtide-interlude__image::before { position:absolute; z-index:1; top:0; right:0; bottom:0; left:0; border-left:1px solid rgba(255,255,255,.22); content:''; pointer-events:none; }
.grndtide-interlude__image::after { position:absolute; z-index:2; top:0; bottom:0; left:0; width:1px; background:var(--grndtide-accent); content:''; animation:grndtide-interlude-scan 4.8s ease-in-out infinite; }
.grndtide-interlude__image img { width:100%; height:100%; min-height:360px; object-fit:cover; object-position:center; filter:grayscale(1) contrast(1.1) brightness(.78); transform:scale(1.025); transition:filter .6s ease,transform 1.1s cubic-bezier(.2,.7,.2,1); }
.grndtide-interlude__index { position:absolute; z-index:3; right:21px; bottom:18px; color:#fff; font-size:9px; font-weight:800; letter-spacing:1px; mix-blend-mode:difference; }
.grndtide-interlude__link:hover .grndtide-interlude__image img,.grndtide-interlude__link:focus-visible .grndtide-interlude__image img { filter:grayscale(.2) contrast(1.03) brightness(.88); transform:scale(1.08); }
.grndtide-interlude__link:hover .grndtide-interlude__action,.grndtide-interlude__link:focus-visible .grndtide-interlude__action { gap:34px; border-bottom-color:var(--grndtide-accent); color:var(--grndtide-accent); }
.grndtide-interlude__link:focus-visible { outline:2px solid var(--grndtide-accent); outline-offset:-4px; }
@keyframes grndtide-interlude-scan { 0%,100% { transform:translateX(0); opacity:.18; } 50% { transform:translateX(42vw); opacity:.85; } }
@media (max-width:760px) { .grndtide-interlude { margin-top:6px; }.grndtide-interlude__link { min-height:520px; grid-template-columns:1fr; grid-template-rows:1fr 205px; }.grndtide-interlude__copy { padding:40px 25px 30px; }.grndtide-interlude h2 { font-size:clamp(36px,11vw,50px); }.grndtide-interlude__text { max-width:290px; margin:20px 0 26px; }.grndtide-interlude__image { grid-row:2; }.grndtide-interlude__image img { min-height:205px; object-position:center 38%; }.grndtide-interlude__image::before { border-top:1px solid rgba(255,255,255,.22); border-left:0; }.grndtide-interlude__index { right:15px; bottom:12px; } }
@media (prefers-reduced-motion:reduce) { .grndtide-interlude__image::after { animation:none; }.grndtide-interlude__image img { transition:none; }.grndtide-interlude__link:hover .grndtide-interlude__image img { transform:scale(1.025); } }

/* Compact piercing-placement carousel. */
.grndtide-interlude { margin-top:6px; }
.grndtide-interlude__layout { display:grid; min-height:288px; grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr); }
.grndtide-interlude__copy { padding:clamp(32px,3.8vw,58px); }
.grndtide-interlude__eyebrow { margin-bottom:15px; }
.grndtide-interlude h2 { font-size:clamp(34px,3.6vw,56px); }
.grndtide-interlude__text { margin:17px 0 21px; }
.grndtide-interlude__image { min-height:288px; }
.grndtide-interlude__slides { position:absolute; inset:0; }
.grndtide-interlude__slide { position:absolute; inset:0; display:block; opacity:0; pointer-events:none; transition:opacity .55s ease; }
.grndtide-interlude__slide.is-active { z-index:1; opacity:1; pointer-events:auto; }
.grndtide-interlude__slide img { width:100%; height:100%; min-height:0; object-fit:cover; object-position:center; filter:grayscale(1) contrast(1.08) brightness(.8); transform:scale(1.025); transition:filter .5s ease,transform 4.5s ease; }
.grndtide-interlude__slide.is-active img { transform:scale(1.08); }
.grndtide-interlude__slide:hover img,.grndtide-interlude__slide:focus-visible img { filter:grayscale(.2) contrast(1.02) brightness(.9); }
.grndtide-interlude__slide span { position:absolute; z-index:3; bottom:18px; left:20px; max-width:calc(100% - 40px); color:#fff; font-size:10px; font-weight:800; letter-spacing:.45px; line-height:1.15; text-transform:uppercase; }
.grndtide-interlude__controls { position:absolute; z-index:4; right:17px; bottom:14px; display:flex; gap:6px; }
.grndtide-interlude__control { display:grid; width:30px; height:30px; padding:0; border:1px solid rgba(255,255,255,.78); border-radius:0; background:rgba(20,21,20,.68); color:#fff; cursor:pointer; place-items:center; font:18px/1 Arial,Helvetica,sans-serif; transition:background-color .2s ease,color .2s ease,border-color .2s ease; }
.grndtide-interlude__control:hover,.grndtide-interlude__control:focus-visible { border-color:var(--grndtide-accent); background:var(--grndtide-accent); color:var(--grndtide-ink); outline:none; }
@media (max-width:760px) { .grndtide-interlude__layout { min-height:420px; grid-template-columns:1fr; grid-template-rows:215px 205px; }.grndtide-interlude__copy { padding:31px 25px 25px; }.grndtide-interlude h2 { font-size:clamp(34px,10vw,46px); }.grndtide-interlude__text { margin:14px 0 17px; }.grndtide-interlude__image { min-height:205px; grid-row:2; }.grndtide-interlude__slide span { bottom:13px; left:15px; max-width:calc(100% - 30px); }.grndtide-interlude__controls { right:12px; bottom:10px; }.grndtide-interlude__control { width:28px; height:28px; } }
@media (prefers-reduced-motion:reduce) { .grndtide-interlude__slide,.grndtide-interlude__slide img { transition:none; }.grndtide-interlude__slide.is-active img { transform:scale(1.025); } }

/* Keep the newest-products heading independent from the dark interlude above it. */
.grndtide-product-section--released .grndtide-section-header h2 { display:block; color:var(--grndtide-ink) !important; opacity:1 !important; visibility:visible !important; font-weight:800; line-height:1.08; transform:none !important; }
.grndtide-released-header { display:flex; min-height:100px; align-items:flex-end; justify-content:space-between; gap:24px; padding:0 clamp(24px,3.4vw,68px) 25px; background:#fff; color:#171817; }
.grndtide-released-header > div,.grndtide-released-heading { display:block !important; min-width:0; visibility:visible !important; opacity:1 !important; }
.grndtide-released-header span { display:block; margin:0 0 9px; color:#62655f; font-size:10px; font-weight:800; letter-spacing:1px; line-height:1; }
.grndtide-released-header h2 { display:block !important; position:relative !important; z-index:1; margin:0 !important; color:#171817 !important; font-size:clamp(30px,3.2vw,47px) !important; font-weight:800 !important; letter-spacing:0 !important; line-height:1 !important; opacity:1 !important; text-indent:0 !important; transform:none !important; visibility:visible !important; }
.grndtide-released-header a { display:inline-flex; min-width:120px; min-height:37px; align-items:center; justify-content:center; gap:15px; padding:0 14px; border:1px solid var(--grndtide-line); background:#fff; color:#171817; font-size:11px; font-weight:800; line-height:1; text-align:center; }
.grndtide-released-header a b { color:#789812; font-size:17px; font-weight:400; }
.grndtide-released-header a:hover,.grndtide-released-header a:focus-visible { border-color:#171817; background:#171817; color:#fff; outline:none; }
@media (max-width:760px) { .grndtide-released-header { min-height:90px; padding:0 14px 17px; }.grndtide-released-header span { margin-bottom:7px; font-size:9px; }.grndtide-released-header h2 { font-size:29px !important; }.grndtide-released-header a { min-width:auto; min-height:34px; padding:0 11px; font-size:10px; } }

/* Quick add confirms in the control, then the selected product follows a single curved route to Cart. */
.iws-cart-flyer { position:fixed; z-index:1000; display:grid; top:0; left:0; width:48px; height:48px; overflow:hidden; border:2px solid #fff; border-radius:50%; background:var(--grndtide-ink); box-shadow:0 8px 22px rgba(15,18,15,.24); color:#fff; pointer-events:none; place-items:center; will-change:transform,opacity; }
.iws-cart-flyer img { display:block; width:100%; height:100%; object-fit:cover; }.iws-cart-flyer svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }.iws-cart-arrival { position:fixed; z-index:1001; display:grid; width:40px; height:40px; margin:-20px 0 0 -20px; border-radius:50%; background:var(--grndtide-accent); box-shadow:0 0 0 0 rgba(229,255,118,.72); color:var(--grndtide-ink); pointer-events:none; place-items:center; animation:iws-cart-arrival .54s cubic-bezier(.18,.9,.25,1) both; }.iws-cart-arrival svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2.5; }
.iws-cart-link.iws-cart-bump { animation:iws-cart-bump .32s ease-out both; }
.iws-cart-link.iws-cart-bump .iws-cart-count { animation:iws-cart-count-bump .4s cubic-bezier(.2,.85,.35,1.35) both; }
@keyframes iws-cart-bump { 50% { transform:scale(1.14); } }
@keyframes iws-cart-count-bump { 50% { background:#e5ff76; transform:scale(1.34); } }
@keyframes iws-cart-arrival { 0% { box-shadow:0 0 0 0 rgba(229,255,118,.8); opacity:0; transform:scale(.2) rotate(-20deg); } 42% { opacity:1; transform:scale(1.13) rotate(0); } 100% { box-shadow:0 0 0 24px rgba(229,255,118,0); opacity:0; transform:scale(.84); } }
@media (prefers-reduced-motion:reduce) { .iws-cart-flyer,.iws-cart-link.iws-cart-bump,.iws-cart-link.iws-cart-bump .iws-cart-count { animation:none; } }
.grndtide-product-section .iws-product-facts,.grndtide-catalog-results .iws-product-facts { margin:8px 18px 0; }
.grndtide-product-section .iws-loop-swatches,.grndtide-catalog-results .iws-loop-swatches { padding:12px 18px 0; }
@media (max-width:760px) { .grndtide-product-section .products li.product,.grndtide-catalog-results > .products li.product { padding-bottom:16px; }.grndtide-product-section .woocommerce-loop-product__title,.grndtide-catalog-results .woocommerce-loop-product__title { padding-right:13px; padding-left:13px; margin-top:13px !important; margin-bottom:7px !important; }.grndtide-product-section .price,.grndtide-catalog-results .price { padding-right:13px; padding-left:13px; }.grndtide-product-section .iws-product-facts,.grndtide-catalog-results .iws-product-facts { margin:7px 13px 0; }.grndtide-product-section .iws-loop-swatches,.grndtide-catalog-results .iws-loop-swatches { padding:10px 13px 0; } }

/* Customer account: WooCommerce owns authentication; the theme owns presentation. */
.woocommerce-account .iws-page { width:min(calc(100% - 48px),1120px); padding-top:52px; padding-bottom:84px; }
.woocommerce-account .iws-page-header { margin-bottom:32px; padding-bottom:17px; border-bottom:1px solid var(--grndtide-ink); }
.woocommerce-account .iws-page-header h1 { font-size:28px; line-height:1; text-transform:uppercase; }
.woocommerce-account .woocommerce-notices-wrapper > * { margin:0 0 20px; border-top:0; border-right:0; border-bottom:0; border-left:3px solid var(--grndtide-ink); border-radius:0; background:#eceeeb; color:var(--grndtide-ink); box-shadow:none; }
.woocommerce-account .woocommerce-message { border-left-color:#6b9e0b; }
.woocommerce-account .woocommerce-error { border-left-color:#b44a4a; }
.woocommerce-account .woocommerce-form-login,.woocommerce-account .woocommerce-form-register,.woocommerce-account .woocommerce-EditAccountForm,.woocommerce-account .woocommerce-address-fields,.woocommerce-account .woocommerce-MyAccount-content form { margin:0; padding:28px; border:1px solid var(--grndtide-line); border-radius:0; background:#fff; }
.woocommerce-account .u-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.woocommerce-account .u-column1,.woocommerce-account .u-column2 { float:none; width:auto; }
.woocommerce-account .u-column1 > h2,.woocommerce-account .u-column2 > h2 { margin:0 0 13px; font-size:17px; line-height:1.1; text-transform:uppercase; }
.woocommerce-account .woocommerce form .form-row { padding:0; margin:0 0 16px; }
.woocommerce-account .woocommerce form .form-row label { display:block; margin-bottom:7px; font-size:11px; font-weight:800; text-transform:uppercase; }
.woocommerce-account .woocommerce form .form-row .required { color:#b44a4a; }
.woocommerce-account .woocommerce form .input-text,.woocommerce-account .woocommerce form input[type="password"],.woocommerce-account .woocommerce form input[type="email"] { min-height:46px; border:1px solid var(--grndtide-line); border-radius:0; background:#fff; color:var(--grndtide-ink); font:14px/1.2 Arial,Helvetica,sans-serif; }
.woocommerce-account .woocommerce form .input-text:focus,.woocommerce-account .woocommerce form input[type="password"]:focus,.woocommerce-account .woocommerce form input[type="email"]:focus { border-color:var(--grndtide-ink); outline:2px solid var(--grndtide-accent); outline-offset:1px; }
.woocommerce-account .woocommerce button.button,.woocommerce-account .woocommerce a.button,.woocommerce-account .woocommerce .button { min-height:44px; padding:0 18px; border:1px solid var(--grndtide-ink); border-radius:0; background:var(--grndtide-ink); color:#fff; font-size:11px; font-weight:800; line-height:42px; text-transform:uppercase; }
.woocommerce-account .woocommerce button.button:hover,.woocommerce-account .woocommerce button.button:focus-visible,.woocommerce-account .woocommerce a.button:hover,.woocommerce-account .woocommerce a.button:focus-visible { background:var(--grndtide-accent); color:var(--grndtide-ink); }
.woocommerce-account .woocommerce-LostPassword a,.woocommerce-account .woocommerce-privacy-policy-text a,.woocommerce-account .iws-account-consent a { text-decoration:underline; text-underline-offset:3px; }
.woocommerce-account .woocommerce-form-login__rememberme { display:flex !important; align-items:center; gap:8px; min-height:44px; margin:0 !important; font-size:12px !important; font-weight:400 !important; text-transform:none !important; }
.woocommerce-account .woocommerce-form-login__rememberme input,.woocommerce-account .iws-account-consent input { width:16px; height:16px; margin:0; accent-color:var(--grndtide-ink); }
.woocommerce-account .iws-account-consent label { display:flex !important; align-items:flex-start; gap:9px; font-size:12px !important; font-weight:400 !important; line-height:1.45; text-transform:none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation { float:none; width:auto; margin:0 0 26px; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { display:flex; flex-wrap:wrap; gap:0; padding:0; margin:0; list-style:none; border-top:1px solid var(--grndtide-line); border-left:1px solid var(--grndtide-line); }
.woocommerce-account .woocommerce-MyAccount-navigation li { flex:1 1 140px; margin:0; border-right:1px solid var(--grndtide-line); border-bottom:1px solid var(--grndtide-line); }
.woocommerce-account .woocommerce-MyAccount-navigation a { display:block; min-height:44px; padding:14px 15px; background:#fff; font-size:11px; font-weight:800; line-height:1.1; text-transform:uppercase; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,.woocommerce-account .woocommerce-MyAccount-navigation a:hover,.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible { background:var(--grndtide-ink); color:#fff; }
.woocommerce-account .woocommerce-MyAccount-content { float:none; width:auto; }
.woocommerce-account .woocommerce-MyAccount-content > p { margin-bottom:16px; }
.woocommerce-account .woocommerce-MyAccount-navigation { display:block; }
.woocommerce-account.logged-in .woocommerce { display:grid; grid-template-columns:238px minmax(0,1fr); gap:24px; align-items:start; }
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper { grid-column:1 / -1; }
.woocommerce-account.logged-in .woocommerce > .woocommerce-MyAccount-navigation { grid-column:1; grid-row:2; width:auto; margin:0; }
.woocommerce-account.logged-in .woocommerce > .woocommerce-MyAccount-content { grid-column:2; grid-row:2; width:auto; }
.woocommerce-account .iws-account-sidebar { align-self:start; padding:0; border:1px solid var(--grndtide-line); background:#fff; }
.woocommerce-account .iws-account-sidebar__intro { padding:24px 23px 20px; border-bottom:1px solid var(--grndtide-line); background:#191a18; color:#fff; }
.woocommerce-account .iws-account-sidebar__eyebrow { margin:0 0 12px; color:#bfc4bd; font-size:10px; font-weight:800; letter-spacing:1px; }
.woocommerce-account .iws-account-sidebar__title { margin:0; font-family:'Marcellus',serif; font-size:23px; line-height:1.1; }
.woocommerce-account .iws-account-sidebar ul { display:block; border:0; }
.woocommerce-account .iws-account-sidebar li { display:block; border:0; border-bottom:1px solid var(--grndtide-line); }
.woocommerce-account .iws-account-sidebar li:last-child { border-bottom:0; }
.woocommerce-account .iws-account-sidebar a { display:flex; min-height:48px; align-items:center; justify-content:space-between; padding:0 18px; background:#fff; color:var(--grndtide-ink); font-size:11px; letter-spacing:.25px; text-transform:uppercase; }
.woocommerce-account .iws-account-sidebar a:hover,.woocommerce-account .iws-account-sidebar a:focus-visible,.woocommerce-account .iws-account-sidebar .is-active a { background:#eef0ec; color:var(--grndtide-ink); outline:none; }
.woocommerce-account .iws-account-sidebar .is-active a { border-left:3px solid var(--grndtide-ink); padding-left:15px; font-weight:800; }
.iws-account-sidebar__arrow { color:#777c75; font-size:16px; }
.woocommerce-account .iws-account-dashboard { min-height:390px; padding:30px; border:1px solid var(--grndtide-line); background:#fff; }
.iws-account-kicker { margin:0 0 12px; color:#777c75; font-size:10px; font-weight:800; letter-spacing:1px; }
.iws-account-dashboard__welcome h2 { max-width:580px; margin:0; color:var(--grndtide-ink); font-family:'Marcellus',serif; font-size:30px; font-weight:normal; line-height:1.12; }
.iws-account-dashboard__welcome > p:last-child { margin:13px 0 28px; color:#626760; font-size:13px; line-height:1.5; }
.iws-account-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.iws-account-card { position:relative; display:flex; min-height:142px; flex-direction:column; padding:17px; border:1px solid var(--grndtide-line); background:#f7f8f5; color:var(--grndtide-ink); transition:background .2s ease,border-color .2s ease; }
.iws-account-card:hover,.iws-account-card:focus-visible { border-color:var(--grndtide-ink); background:#ecefe9; outline:none; }
.iws-account-card__number { margin-bottom:auto; color:#878c85; font-size:10px; font-weight:800; letter-spacing:1px; }
.iws-account-card strong { margin-bottom:5px; font-size:13px; text-transform:uppercase; }
.iws-account-card span:not(.iws-account-card__number) { color:#696e67; font-size:11px; line-height:1.35; }
.iws-account-card b { position:absolute; right:15px; bottom:15px; font-size:17px; font-weight:400; }
.iws-account-dashboard__signout { margin:26px 0 0; color:#747970; font-size:12px; }
.iws-account-dashboard__signout a { color:var(--grndtide-ink); text-decoration:underline; text-underline-offset:3px; }
.woocommerce-account .iws-address-overview__intro { margin:0 0 25px; color:#626760; font-size:13px; line-height:1.5; }
.woocommerce-account .iws-address-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.woocommerce-account .iws-address-card { overflow:hidden; border:1px solid var(--grndtide-line); background:#fff; }
.woocommerce-account .iws-address-card__header { position:relative; padding:22px 22px 20px; border-bottom:1px solid var(--grndtide-line); background:#f4f6f2; }
.iws-address-card__eyebrow { margin:0 0 10px; color:#777c75; font-size:10px; font-weight:800; letter-spacing:1px; text-transform:uppercase; }
.woocommerce-account .iws-address-card h2 { margin:0; color:var(--grndtide-ink); font-family:'Marcellus',serif; font-size:21px; font-weight:normal; line-height:1.15; }
.iws-address-card__edit { display:inline-flex; align-items:center; gap:9px; margin-top:16px; color:var(--grndtide-ink); font-size:11px; font-weight:800; letter-spacing:.3px; text-decoration:underline; text-underline-offset:3px; text-transform:uppercase; }
.iws-address-card__edit { padding:0; border:0; background:transparent; cursor:pointer; font-family:'Marcellus',serif; }
.iws-address-card__edit span { font-size:16px; font-weight:400; text-decoration:none; }
.woocommerce-account .iws-address-card__body { min-height:105px; padding:21px 22px; }
.woocommerce-account .iws-address-card address { color:#5d615b; font-size:13px; font-style:normal; line-height:1.6; }
.iws-address-modal[hidden] { display:none; }
.iws-address-modal { position:fixed; z-index:900; inset:0; display:grid; padding:20px; place-items:center; }
.iws-address-modal__backdrop { position:absolute; inset:0; background:rgba(18,21,18,.58); }
.iws-address-modal__panel { position:relative; width:min(100%,640px); max-height:min(90vh,760px); overflow:auto; border:1px solid #c9ccc6; border-radius:6px; background:#fff; box-shadow:0 20px 52px rgba(0,0,0,.24); }
.iws-address-modal__header { display:flex; align-items:flex-start; justify-content:space-between; padding:24px 28px 20px; border-bottom:1px solid var(--grndtide-line); background:#f4f6f2; }
.iws-address-modal__header h2 { margin:0; color:var(--grndtide-ink); font-family:'Marcellus',serif; font-size:24px; font-weight:normal; }
.iws-address-modal__close { width:32px; height:32px; padding:0; border:1px solid var(--grndtide-line); border-radius:50%; background:#fff; color:var(--grndtide-ink); font:24px/27px Arial,sans-serif; cursor:pointer; }
.iws-address-modal__form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; padding:24px 28px 28px; }
.iws-address-modal__form .form-row { grid-column:span 1; margin:0 0 15px; }
.iws-address-modal__form .form-row-wide { grid-column:1 / -1; }
.iws-address-modal__form .iws-address-modal__actions { grid-column:1 / -1; margin:8px 0 0; }
.iws-address-modal__actions .button { width:100%; min-height:46px; }
body.iws-address-modal-open { overflow:hidden; }
@media (max-width:760px) { .woocommerce-account .iws-address-grid { grid-template-columns:1fr; }.iws-address-modal__header { padding:21px 20px 17px; }.iws-address-modal__form { grid-template-columns:1fr; padding:21px 20px 24px; }.iws-address-modal__form .form-row { grid-column:1; }.iws-address-modal__form .form-row-wide { grid-column:1; } }
@media (min-width:761px) { .woocommerce-account .woocommerce-MyAccount-content { min-width:0; }.woocommerce-account .woocommerce-MyAccount-navigation + .woocommerce-MyAccount-content { display:block; } }
@media (max-width:760px) { .woocommerce-account .iws-account-dashboard { padding:22px 18px; }.iws-account-dashboard__welcome h2 { font-size:25px; }.iws-account-cards { grid-template-columns:1fr; }.iws-account-card { min-height:116px; } }
.woocommerce-account .woocommerce-orders-table,.woocommerce-account .woocommerce-MyAccount-content table { width:100%; border-collapse:collapse; background:#fff; }
.woocommerce-account .woocommerce-orders-table th,.woocommerce-account .woocommerce-orders-table td,.woocommerce-account .woocommerce-MyAccount-content table th,.woocommerce-account .woocommerce-MyAccount-content table td { padding:13px; border:1px solid var(--grndtide-line); text-align:left; }
@media (max-width:760px) { .woocommerce-account .iws-page { width:min(calc(100% - 28px),1120px); padding-top:32px; padding-bottom:58px; }.woocommerce-account.logged-in .woocommerce { display:block; }.woocommerce-account.logged-in .woocommerce > .woocommerce-MyAccount-navigation,.woocommerce-account.logged-in .woocommerce > .woocommerce-MyAccount-content { width:auto; margin-bottom:20px; }.woocommerce-account .u-columns { grid-template-columns:minmax(0,1fr); gap:28px; }.woocommerce-account .woocommerce-form-login,.woocommerce-account .woocommerce-form-register,.woocommerce-account .woocommerce-EditAccountForm,.woocommerce-account .woocommerce-address-fields,.woocommerce-account .woocommerce-MyAccount-content form { padding:20px; }.woocommerce-account .woocommerce-MyAccount-navigation li { flex-basis:50%; }.woocommerce-account .woocommerce-orders-table,.woocommerce-account .woocommerce-MyAccount-content table { display:block; overflow-x:auto; white-space:nowrap; } }

/* Immersive customer-account dashboard. Product photography builds a branded
   destination around the self-service tools rather than a generic settings page. */
.woocommerce-account .iws-page:has(.iws-account-dashboard) { width:min(calc(100% - 48px),1280px); }.woocommerce-account.logged-in .woocommerce:has(.iws-account-dashboard) { grid-template-columns:254px minmax(0,1fr); gap:18px; }.woocommerce-account .iws-account-sidebar { overflow:hidden; border:0; background:#101310; box-shadow:0 12px 30px rgba(10,15,11,.08); }.woocommerce-account .iws-account-sidebar__intro { display:flex; gap:13px; align-items:center; min-height:138px; padding:23px 21px; border:0; background:#101310; }.iws-account-sidebar__orb { display:grid; width:39px; height:39px; flex:0 0 auto; place-items:center; border-radius:50%; background:#dff05d; color:#141814; font-family:'Marcellus',serif; font-size:20px; font-weight:700; }.woocommerce-account .iws-account-sidebar__eyebrow { margin:0 0 5px; color:#a6afa3; font-size:9px; letter-spacing:1.3px; }.woocommerce-account .iws-account-sidebar__title { font-family:'Marcellus',serif; font-size:21px; }.woocommerce-account .iws-account-sidebar ul { padding:11px 0; background:#101310; }.woocommerce-account .iws-account-sidebar li { border:0; }.woocommerce-account .iws-account-sidebar li:last-child { margin-top:10px; padding-top:10px; border-top:1px solid #30352e; }.woocommerce-account .iws-account-sidebar a { gap:12px; min-height:51px; padding:0 17px; background:transparent; color:#e9eee5; font-size:11px; letter-spacing:.55px; }.woocommerce-account .iws-account-sidebar__icon { display:grid; width:22px; height:22px; place-items:center; color:#a6afa3; }.woocommerce-account .iws-account-sidebar__icon svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.65; }.woocommerce-account .iws-account-sidebar a > span:nth-child(2) { flex:1; }.woocommerce-account .iws-account-sidebar__arrow { color:#7c8578; font-size:16px; transition:transform .2s ease; }.woocommerce-account .iws-account-sidebar a:hover,.woocommerce-account .iws-account-sidebar a:focus-visible,.woocommerce-account .iws-account-sidebar .is-active a { border:0; background:#252b23; color:#fff; outline:none; }.woocommerce-account .iws-account-sidebar a:hover .iws-account-sidebar__arrow,.woocommerce-account .iws-account-sidebar a:focus-visible .iws-account-sidebar__arrow,.woocommerce-account .iws-account-sidebar .is-active .iws-account-sidebar__arrow { transform:translateX(3px); color:#dff05d; }.woocommerce-account .iws-account-sidebar .is-active a { padding-left:17px; box-shadow:inset 3px 0 0 #dff05d; }.woocommerce-account .iws-account-sidebar .is-active .iws-account-sidebar__icon { color:#dff05d; }
.woocommerce-account .iws-account-dashboard { overflow:hidden; padding:0; border:0; background:transparent; }.iws-account-dashboard__hero { position:relative; display:grid; min-height:278px; grid-template-columns:minmax(0,1fr) 36%; overflow:hidden; padding:0; background:#111611; color:#fff; box-shadow:0 12px 30px rgba(10,15,11,.1); isolation:isolate; }.iws-account-dashboard__hero-image { position:absolute; z-index:-1; inset:0 0 0 44%; background-position:center; background-size:cover; filter:saturate(.84) contrast(1.05); animation:iws-account-image-drift 16s ease-in-out infinite alternate; }.iws-account-dashboard__hero-image::after { position:absolute; inset:0; background:linear-gradient(90deg,#111611 0%,#111611 12%,rgba(17,22,17,.93) 37%,rgba(17,22,17,.18) 100%); content:""; }.iws-account-dashboard__hero-copy { align-self:center; padding:42px 48px; }.iws-account-dashboard__hero .iws-account-kicker { margin-bottom:15px; color:#dff05d; }.iws-account-dashboard__identity { gap:16px; align-items:center; }.iws-account-dashboard__avatar { width:52px; height:52px; border:1px solid rgba(255,255,255,.28); background:transparent; color:#dff05d; font-family:'Marcellus',serif; font-size:21px; }.iws-account-dashboard__hero h2 { max-width:440px; margin:0; color:#fff; font-family:'Marcellus',serif; font-size:clamp(30px,3.1vw,45px); font-weight:normal; line-height:.9; letter-spacing:0; }.iws-account-dashboard__hero-note { max-width:370px; margin:20px 0; color:#c7ccc4; font-size:13px; line-height:1.55; }.iws-account-dashboard__profile { display:inline-flex; gap:17px; align-items:center; padding:10px 0; border-bottom:1px solid #dff05d; color:#fff; font-size:10px; font-weight:800; letter-spacing:.55px; text-transform:uppercase; transition:color .2s ease,gap .2s ease; }.iws-account-dashboard__profile:hover,.iws-account-dashboard__profile:focus-visible { gap:23px; color:#dff05d; outline:none; }.iws-account-dashboard__hero-mark { position:absolute; right:22px; bottom:-38px; color:rgba(223,240,93,.22); font-family:'Marcellus',serif; font-size:180px; font-weight:700; line-height:1; }.iws-account-dashboard__grid { grid-template-columns:minmax(0,1.24fr) minmax(255px,.76fr); gap:18px; margin-top:18px; }.iws-account-orders,.iws-account-quick-actions { min-height:288px; padding:29px; border:0; background:#fff; box-shadow:0 12px 30px rgba(10,15,11,.06); }.iws-account-section-heading h3,.iws-account-quick-actions h3 { font-size:28px; }.iws-account-section-heading > a { font-size:10px; letter-spacing:.5px; }.iws-account-order { grid-template-columns:45px minmax(0,1fr) auto 16px; gap:15px; margin-top:28px; padding:18px 0 0; border:0; border-top:1px solid #daddd7; background:transparent; }.iws-account-order:hover,.iws-account-order:focus-visible { border-color:#141814; background:transparent; }.iws-account-order__icon,.iws-account-orders__empty-icon { display:grid; width:38px; height:38px; place-items:center; border-radius:50%; background:#dff05d; color:#151a14; }.iws-account-order__icon svg,.iws-account-orders__empty-icon svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }.iws-account-order__number { font-size:13px; }.iws-account-order strong { font-size:12px; }.iws-account-order__status { border-radius:20px; padding:6px 9px; }.iws-account-orders__empty { display:grid; grid-template-columns:42% 1fr; gap:22px; align-items:center; min-height:173px; margin-top:22px; padding:0; border:0; }.iws-account-orders__empty-image { align-self:stretch; min-height:174px; background-position:center; background-size:cover; }.iws-account-orders__empty > div:last-child { padding-right:10px; }.iws-account-orders__empty h4 { margin:13px 0 7px; font-family:'Marcellus',serif; font-size:22px; font-weight:normal; line-height:1; }.iws-account-orders__empty p { margin:0 0 15px; font-size:12px; line-height:1.45; }.iws-account-orders__empty a { font-size:10px; letter-spacing:.5px; }.iws-account-quick-actions { background:#ecf0e7; }.iws-account-quick-actions > h3 { margin-bottom:22px; }.iws-account-cards { display:grid; grid-template-columns:1fr; gap:10px; }.iws-account-card { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; min-height:72px; padding:12px; border:1px solid #cdd3c9; background:rgba(255,255,255,.65); }.iws-account-card:hover,.iws-account-card:focus-visible { border-color:#141814; background:#fff; transform:translateX(3px); }.iws-account-card__icon { display:grid; width:30px; height:30px; place-items:center; margin:0; color:#1b2219; }.iws-account-card__icon svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.55; }.iws-account-card strong,.iws-account-card small { display:block; }.iws-account-card strong { margin:0 0 3px; font-size:11px; }.iws-account-card small { color:#6b7268; font-size:10px; }.iws-account-card b { position:static; font-size:18px; }.iws-account-dashboard__footer { display:flex; justify-content:space-between; padding:18px 2px 0; color:#737b70; font-size:10px; letter-spacing:.4px; text-transform:uppercase; }.iws-account-dashboard__footer a { color:#4c544b; font-weight:800; }.iws-account-dashboard__footer a span { margin-left:7px; font-size:14px; }.iws-account-dashboard__hero,.iws-account-orders,.iws-account-quick-actions { animation:iws-account-rise .55s both; }.iws-account-orders { animation-delay:.1s; }.iws-account-quick-actions { animation-delay:.18s; }@keyframes iws-account-rise { from { opacity:0; transform:translateY(15px); } to { opacity:1; transform:translateY(0); } }@keyframes iws-account-image-drift { from { transform:scale(1); } to { transform:scale(1.07); } }
@media (max-width:900px) { .woocommerce-account.logged-in .woocommerce:has(.iws-account-dashboard) { grid-template-columns:205px minmax(0,1fr); }.iws-account-dashboard__hero-copy { padding:34px 31px; }.iws-account-dashboard__hero-image { inset:0 0 0 36%; }.iws-account-dashboard__hero { grid-template-columns:1fr 30%; } }
@media (max-width:760px) { .woocommerce-account .iws-page:has(.iws-account-dashboard) { width:calc(100% - 28px); }.woocommerce-account .iws-account-sidebar { margin-bottom:12px; }.woocommerce-account .iws-account-sidebar__intro { min-height:auto; padding:19px; }.woocommerce-account .iws-account-sidebar ul { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; padding:1px; background:#30352e; }.woocommerce-account .iws-account-sidebar li,.woocommerce-account .iws-account-sidebar li:last-child { margin:0; padding:0; border:0; }.woocommerce-account .iws-account-sidebar a { min-height:70px; flex-direction:column; justify-content:center; gap:4px; padding:7px 3px; background:#101310; font-size:9px; text-align:center; }.woocommerce-account .iws-account-sidebar a > span:nth-child(2) { flex:initial; }.woocommerce-account .iws-account-sidebar__arrow { display:none; }.woocommerce-account .iws-account-sidebar .is-active a { padding-left:3px; box-shadow:inset 0 -3px 0 #dff05d; }.iws-account-dashboard__hero { display:block; min-height:425px; }.iws-account-dashboard__hero-image { inset:0; opacity:.48; }.iws-account-dashboard__hero-image::after { background:linear-gradient(0deg,#111611 0%,rgba(17,22,17,.96) 23%,rgba(17,22,17,.12) 100%); }.iws-account-dashboard__hero-copy { position:absolute; right:0; bottom:0; left:0; padding:27px 22px; }.iws-account-dashboard__hero h2 { font-size:36px; }.iws-account-dashboard__hero-note { font-size:12px; }.iws-account-dashboard__hero-mark { right:10px; bottom:-21px; font-size:125px; }.iws-account-dashboard__grid { grid-template-columns:1fr; gap:12px; margin-top:12px; }.iws-account-orders,.iws-account-quick-actions { min-height:0; padding:21px 18px; }.iws-account-section-heading h3,.iws-account-quick-actions h3 { font-size:25px; }.iws-account-orders__empty { grid-template-columns:94px 1fr; gap:15px; min-height:160px; }.iws-account-orders__empty-image { min-height:160px; }.iws-account-orders__empty h4 { font-size:20px; }.iws-account-order { grid-template-columns:38px minmax(0,1fr) 15px; }.iws-account-order div:nth-child(2) { grid-column:2; grid-row:2; }.iws-account-order__arrow { grid-column:3; grid-row:1 / span 2; }.iws-account-dashboard__footer { padding-bottom:3px; } }@media (prefers-reduced-motion:reduce) { .iws-account-dashboard__hero,.iws-account-orders,.iws-account-quick-actions,.iws-account-dashboard__hero-image { animation:none; }.iws-account-card,.iws-account-sidebar__arrow,.iws-account-dashboard__profile { transition:none; } }

/* Account dashboard and header shortcuts. The current task is apparent before
   the supporting account controls, so customers can resume order work quickly. */
.iws-account-menu { position:relative; }.iws-account-link { border:0; background:transparent; color:inherit; cursor:pointer; font:inherit; text-transform:uppercase; }.iws-account-link__name { max-width:112px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.iws-account-avatar,.iws-account-dashboard__avatar { display:grid; flex:0 0 auto; width:28px; height:28px; place-items:center; border-radius:50%; background:#dff05d; color:var(--grndtide-ink); font-size:11px; font-weight:800; }.iws-account-caret { color:#6f746d; font-size:12px; transform:rotate(0); transition:transform .18s ease; }.iws-account-link[aria-expanded="true"] .iws-account-caret { transform:rotate(180deg); }.iws-account-menu-panel { position:absolute; z-index:80; top:calc(100% + 16px); right:-12px; width:290px; overflow:hidden; border:1px solid var(--grndtide-line); background:#fff; color:var(--grndtide-ink); box-shadow:0 18px 38px rgba(16,20,17,.17); text-transform:none; }.iws-account-menu-panel__heading { display:flex; gap:12px; align-items:center; padding:19px; border-bottom:1px solid var(--grndtide-line); background:#f3f5f0; }.iws-account-menu-panel__heading .iws-account-avatar { width:38px; height:38px; font-size:14px; }.iws-account-menu-panel__heading strong,.iws-account-menu-panel__heading a { display:block; }.iws-account-menu-panel__heading strong { margin-bottom:3px; font-size:13px; }.iws-account-menu-panel__heading a { color:#636962; font-size:11px; text-decoration:underline; text-underline-offset:3px; }.iws-account-menu-panel nav { padding:8px 0; }.iws-account-menu-panel nav a,.iws-account-menu-panel__signout { display:flex; align-items:center; gap:12px; min-height:44px; padding:0 19px; font-size:12px; font-weight:700; }.iws-account-menu-panel nav a:hover,.iws-account-menu-panel nav a:focus-visible { background:#edf0e9; outline:none; }.iws-account-menu-panel nav a span { width:18px; color:#7c827b; font-size:10px; font-weight:800; }.iws-account-menu-panel__signout { justify-content:space-between; border-top:1px solid var(--grndtide-line); color:#5f655e; font-size:11px; text-transform:uppercase; }.iws-account-menu-panel__signout:hover,.iws-account-menu-panel__signout:focus-visible { color:var(--grndtide-ink); background:#f3f5f0; outline:none; }
.woocommerce-account .iws-account-dashboard { min-height:0; padding:0; border:0; background:transparent; }.iws-account-dashboard__hero { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:30px; background:#191a18; color:#fff; }.iws-account-dashboard__identity { display:flex; align-items:center; gap:16px; }.iws-account-dashboard__avatar { width:54px; height:54px; font-size:20px; }.iws-account-dashboard__hero .iws-account-kicker { color:#bac0b7; }.iws-account-dashboard__hero h2 { color:#fff; }.iws-account-dashboard__profile { flex:0 0 auto; padding:11px 0; border-bottom:1px solid #dff05d; color:#fff; font-size:11px; font-weight:800; text-transform:uppercase; }.iws-account-dashboard__profile span { margin-left:9px; font-size:16px; }.iws-account-dashboard__grid { display:grid; grid-template-columns:minmax(0,1.23fr) minmax(250px,.77fr); gap:14px; margin-top:14px; }.iws-account-orders,.iws-account-quick-actions { min-height:230px; padding:25px; border:1px solid var(--grndtide-line); background:#fff; }.iws-account-section-heading { display:flex; align-items:start; justify-content:space-between; gap:16px; }.iws-account-section-heading .iws-account-kicker,.iws-account-quick-actions .iws-account-kicker { margin-bottom:8px; }.iws-account-section-heading h3,.iws-account-quick-actions h3 { margin:0; font-family:'Marcellus',serif; font-size:24px; font-weight:normal; line-height:1.1; }.iws-account-section-heading > a { padding-top:3px; color:var(--grndtide-ink); font-size:11px; font-weight:800; text-decoration:underline; text-underline-offset:3px; text-transform:uppercase; }.iws-account-section-heading > a span { margin-left:6px; font-size:15px; text-decoration:none; }.iws-account-order { display:grid; grid-template-columns:1fr auto 18px; align-items:center; gap:20px; margin-top:26px; padding:18px; border:1px solid var(--grndtide-line); background:#f6f7f3; color:var(--grndtide-ink); transition:border-color .2s ease,background .2s ease; }.iws-account-order:hover,.iws-account-order:focus-visible { border-color:var(--grndtide-ink); background:#edf0e9; outline:none; }.iws-account-order div { display:grid; gap:7px; }.iws-account-order div:nth-child(2) { justify-items:end; }.iws-account-order strong { font-size:12px; }.iws-account-order__number { color:#626860; font-size:12px; font-weight:800; }.iws-account-order__status { padding:4px 7px; background:#dff05d; color:#33382f; font-size:9px; font-weight:800; letter-spacing:.35px; text-transform:uppercase; }.iws-account-order__status--cancelled,.iws-account-order__status--failed,.iws-account-order__status--refunded { background:#f2d3ce; }.iws-account-order__arrow { font-size:18px; }.iws-account-orders__empty { margin-top:25px; padding:22px 0 0; border-top:1px solid var(--grndtide-line); }.iws-account-orders__empty p { margin:0 0 15px; color:#646a63; font-size:13px; }.iws-account-orders__empty a { color:var(--grndtide-ink); font-size:11px; font-weight:800; text-decoration:underline; text-underline-offset:3px; text-transform:uppercase; }.iws-account-quick-actions { background:#edf0e9; }.iws-account-quick-actions > h3 { margin-bottom:19px; }.iws-account-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.iws-account-card { min-height:123px; padding:15px; background:#fff; }.iws-account-card__icon { margin-bottom:auto; color:#6f756e; font-size:10px; font-weight:800; letter-spacing:.5px; }.iws-account-card strong { font-size:11px; }.iws-account-dashboard__signout { margin:19px 0 0; }
@media (max-width:900px) { .iws-account-dashboard__grid { grid-template-columns:1fr; }.iws-account-orders,.iws-account-quick-actions { min-height:0; } }
@media (max-width:760px) { .iws-account-link__name,.iws-account-caret { display:none; }.iws-account-avatar { width:28px; height:28px; }.iws-account-menu-panel { position:fixed; top:72px; right:14px; width:min(310px,calc(100vw - 28px)); }.iws-account-dashboard__hero { align-items:flex-start; flex-direction:column; padding:23px 19px; }.iws-account-dashboard__identity { align-items:flex-start; }.iws-account-dashboard__hero h2 { font-size:25px; }.iws-account-dashboard__profile { margin-left:70px; }.iws-account-orders,.iws-account-quick-actions { padding:20px 17px; }.iws-account-section-heading h3,.iws-account-quick-actions h3 { font-size:22px; }.iws-account-order { grid-template-columns:1fr 16px; gap:12px; }.iws-account-order div:nth-child(2) { grid-column:1; grid-row:2; justify-items:start; grid-auto-flow:column; justify-content:start; align-items:center; gap:12px; }.iws-account-order__arrow { grid-column:2; grid-row:1 / span 2; }.iws-account-dashboard__grid { gap:10px; margin-top:10px; } }

/* Product catalog banner supplied for the collection header. */
.grndtide-shop-header { overflow:hidden; padding:0; }
.grndtide-shop-header { background:#080908; }

/* Final account-dashboard cascade: this sits after the legacy account rules. */
.woocommerce-account .iws-account-dashboard--visual { overflow:hidden; padding:0; border:0; background:transparent; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero { position:relative; display:grid; min-height:278px; grid-template-columns:minmax(0,1fr) 36%; overflow:hidden; padding:0; background:#111611; color:#fff; box-shadow:0 12px 30px rgba(10,15,11,.1); isolation:isolate; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-image { position:absolute; z-index:-1; inset:0 0 0 44%; background-position:center; background-size:cover; filter:saturate(.84) contrast(1.05); animation:iws-account-image-drift 16s ease-in-out infinite alternate; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-image::after { position:absolute; inset:0; background:linear-gradient(90deg,#111611 0%,#111611 12%,rgba(17,22,17,.93) 37%,rgba(17,22,17,.18) 100%); content:""; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-copy { align-self:center; padding:42px 48px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero .iws-account-kicker { margin-bottom:15px; color:#dff05d; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__identity { display:flex; gap:16px; align-items:center; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__avatar { width:52px; height:52px; border:1px solid rgba(255,255,255,.28); background:transparent; color:#dff05d; font-family:'Marcellus',serif; font-size:21px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero h2 { max-width:440px; margin:0; color:#fff; font-family:'Marcellus',serif; font-size:clamp(30px,3.1vw,45px); font-weight:normal; line-height:.9; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-note { max-width:370px; margin:20px 0; color:#c7ccc4; font-size:13px; line-height:1.55; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__profile { display:inline-flex; gap:17px; align-items:center; margin:0; padding:10px 0; border-bottom:1px solid #dff05d; color:#fff; font-size:10px; font-weight:800; letter-spacing:.55px; text-transform:uppercase; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-mark { position:absolute; right:22px; bottom:-38px; color:rgba(223,240,93,.22); font-family:'Marcellus',serif; font-size:180px; font-weight:700; line-height:1; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__grid { display:grid; grid-template-columns:minmax(0,1.24fr) minmax(255px,.76fr); gap:18px; margin-top:18px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders,.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions { min-height:288px; padding:29px; border:0; background:#fff; box-shadow:0 12px 30px rgba(10,15,11,.06); }.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions { background:#ecf0e7; }.woocommerce-account .iws-account-dashboard--visual .iws-account-section-heading h3,.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions h3 { font-size:28px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-order { grid-template-columns:45px minmax(0,1fr) auto 16px; gap:15px; margin-top:28px; padding:18px 0 0; border:0; border-top:1px solid #daddd7; background:transparent; }.woocommerce-account .iws-account-dashboard--visual .iws-account-order:hover,.woocommerce-account .iws-account-dashboard--visual .iws-account-order:focus-visible { border-color:#141814; background:transparent; }.woocommerce-account .iws-account-dashboard--visual .iws-account-order__icon,.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty-icon { display:grid; width:38px; height:38px; place-items:center; border-radius:50%; background:#dff05d; color:#151a14; }.woocommerce-account .iws-account-dashboard--visual .iws-account-order__icon svg,.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty-icon svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty { display:grid; grid-template-columns:42% 1fr; gap:22px; align-items:center; min-height:173px; margin-top:22px; padding:0; border:0; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty-image { align-self:stretch; min-height:174px; background-position:center; background-size:cover; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty > div:last-child { padding-right:10px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty h4 { margin:13px 0 7px; font-family:'Marcellus',serif; font-size:22px; font-weight:normal; line-height:1; }.woocommerce-account .iws-account-dashboard--visual .iws-account-cards { display:grid; grid-template-columns:1fr; gap:10px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-card { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; min-height:72px; padding:12px; border:1px solid #cdd3c9; background:rgba(255,255,255,.65); }.woocommerce-account .iws-account-dashboard--visual .iws-account-card:hover,.woocommerce-account .iws-account-dashboard--visual .iws-account-card:focus-visible { border-color:#141814; background:#fff; transform:translateX(3px); }.woocommerce-account .iws-account-dashboard--visual .iws-account-card__icon { display:grid; width:30px; height:30px; place-items:center; margin:0; color:#1b2219; }.woocommerce-account .iws-account-dashboard--visual .iws-account-card__icon svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.55; }.woocommerce-account .iws-account-dashboard--visual .iws-account-card strong,.woocommerce-account .iws-account-dashboard--visual .iws-account-card small { display:block; }.woocommerce-account .iws-account-dashboard--visual .iws-account-card small { color:#6b7268; font-size:10px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-card b { position:static; font-size:18px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__footer { display:flex; justify-content:space-between; padding:18px 2px 0; color:#737b70; font-size:10px; letter-spacing:.4px; text-transform:uppercase; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__footer a { color:#4c544b; font-weight:800; }
.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar { overflow:hidden; border:0; background:#101310; box-shadow:0 12px 30px rgba(10,15,11,.08); }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar__intro { display:flex; gap:13px; align-items:center; min-height:138px; padding:23px 21px; border:0; background:#101310; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar ul { padding:11px 0; background:#101310; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar li { border:0; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar li:last-child { margin-top:10px; padding-top:10px; border-top:1px solid #30352e; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar a { gap:12px; min-height:51px; padding:0 17px; background:transparent; color:#e9eee5; font-size:11px; letter-spacing:.55px; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar a:hover,.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar a:focus-visible,.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar .is-active a { border:0; background:#252b23; color:#fff; outline:none; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar .is-active a { padding-left:17px; box-shadow:inset 3px 0 0 #dff05d; }
@media (max-width:760px) { .woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero { display:block; min-height:425px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-image { inset:0; opacity:.48; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-image::after { background:linear-gradient(0deg,#111611 0%,rgba(17,22,17,.96) 23%,rgba(17,22,17,.12) 100%); }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-copy { position:absolute; right:0; bottom:0; left:0; padding:27px 22px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero h2 { font-size:36px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__grid { grid-template-columns:1fr; gap:12px; margin-top:12px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders,.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions { min-height:0; padding:21px 18px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty { grid-template-columns:94px 1fr; gap:15px; min-height:160px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-orders__empty-image { min-height:160px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-order { grid-template-columns:38px minmax(0,1fr) 15px; }.woocommerce-account .iws-account-dashboard--visual .iws-account-order div:nth-child(2) { grid-column:2; grid-row:2; }.woocommerce-account .iws-account-dashboard--visual .iws-account-order__arrow { grid-column:3; grid-row:1 / span 2; } }
.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar__orb { display:grid; width:39px; height:39px; flex:0 0 auto; place-items:center; border-radius:50%; background:#dff05d; color:#141814; font-family:'Marcellus',serif; font-size:20px; font-weight:700; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar__eyebrow { margin:0 0 5px; color:#a6afa3; font-size:9px; letter-spacing:1.3px; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar__title { margin:0; color:#fff; font-family:'Marcellus',serif; font-size:21px; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar a { justify-content:initial; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar__icon { display:grid; width:22px; height:22px; place-items:center; color:#a6afa3; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar__icon svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.65; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar a > span:nth-child(2) { flex:1; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar__arrow { color:#7c8578; font-size:16px; transition:transform .2s ease; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar a:hover .iws-account-sidebar__arrow,.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar .is-active .iws-account-sidebar__arrow { transform:translateX(3px); color:#dff05d; }.woocommerce-account .woocommerce:has(.iws-account-dashboard--visual) .iws-account-sidebar .is-active .iws-account-sidebar__icon { color:#dff05d; }
.grndtide-shop-header > picture { display:block; }
.grndtide-shop-header > picture > img { display:block; width:100%; height:300px; object-fit:contain; object-position:center; }

@media (max-width:760px) {
	.grndtide-shop-header > picture > img { height:260px; object-position:center; }
}

/* Product detail desktop layout: keep the purchase panel visually separate from the gallery. */
@media (min-width:761px) {
	.grndtide-product-page { padding:24px 24px 64px; background:#f5f5f3; }
	.grndtide-product-layout { display:grid; grid-template-columns:1fr; }
	.grndtide-product-primary { display:grid; width:100%; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(16px,1.6vw,28px); align-items:start; margin:0 auto; }
	.grndtide-product-media { padding:clamp(50px,4vw,76px); border:1px solid #dededb; background:#fff; }
	.grndtide-product-media .grndtide-product-gallery { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; grid-auto-flow:row dense; grid-auto-rows:4px; gap:4px; height:auto; overflow:hidden; }
	.grndtide-product-media .grndtide-product-gallery .iws-demo-visual { display:block; aspect-ratio:var(--iws-image-ratio,4 / 5); height:auto; min-height:0; border:0; background:#f2f2f0; overflow:hidden; }
	.grndtide-product-media .grndtide-product-gallery .iws-demo-visual.iws-gallery-item--wide { grid-column:span 2; }
	.grndtide-product-media .grndtide-product-gallery .iws-demo-visual > img { display:block; width:100%; height:100%; min-height:0; object-fit:contain !important; object-position:center; }
	.grndtide-product-primary .grndtide-product-summary { position:sticky; top:94px; align-self:start; max-height:calc(100vh - 118px); overflow-y:auto; padding:clamp(44px,5vw,82px) clamp(34px,4vw,70px); background:#fff; border:1px solid #dededb; box-shadow:0 8px 24px rgba(0,0,0,.035); scrollbar-width:none; }
	.grndtide-product-primary .grndtide-product-summary::-webkit-scrollbar { width:0; height:0; background:transparent; }
	.grndtide-product-summary h1 { font-size:clamp(38px,4.3vw,66px); line-height:.9; }
}
@media (min-width:1100px) { .grndtide-product-primary,.grndtide-product-reviews { width:90%; justify-self:center; } }

/* Keep native WooCommerce variation controls orderly inside the purchase panel. */
.grndtide-product-summary { overflow-wrap:anywhere; }
.grndtide-product-summary h1 { max-width:100%; overflow-wrap:anywhere; word-break:normal; }
/* A variable-product form is a vertical purchase flow, not the simple-product two-column cart. */
.grndtide-product-summary form.variations_form { display:block !important; margin:0; padding:20px 0 0; border-top:1px solid var(--grndtide-line); }
.grndtide-product-summary .variations { width:100%; margin:0; border:0; border-spacing:0; }
.grndtide-product-summary .variations tr { display:block; margin:0 0 18px; }
.grndtide-product-summary .variations th,.grndtide-product-summary .variations td { display:block; width:100%; padding:0; border:0; text-align:left; }
.grndtide-product-summary .variations th { margin-bottom:8px; }
.grndtide-product-summary .variations label { display:block; color:var(--grndtide-ink); font-size:11px; font-weight:800; line-height:1.2; text-transform:uppercase; }
.grndtide-product-summary .variations select { display:block; width:100%; min-height:44px; padding:0 36px 0 12px; border:1px solid var(--grndtide-ink); border-radius:0; background:#fff; color:var(--grndtide-ink); font:700 12px/1 Arial,Helvetica,sans-serif; }
.grndtide-product-summary .variations .iws-variation-native { position:absolute; width:1px !important; height:1px; min-height:0; padding:0; border:0; clip-path:inset(50%); opacity:0; pointer-events:none; }
.grndtide-product-summary .iws-variation-options { display:flex; flex-wrap:wrap; gap:7px; }
.grndtide-product-summary .iws-variation-option { min-height:30px; padding:0 11px; border:1px solid var(--grndtide-ink); border-radius:0; background:#fff; color:var(--grndtide-ink); cursor:pointer; font:800 11px/1 Arial,Helvetica,sans-serif; text-transform:uppercase; }
.grndtide-product-summary .iws-variation-option.is-selected,.grndtide-product-summary .iws-variation-option:hover,.grndtide-product-summary .iws-variation-option:focus-visible { background:var(--grndtide-ink); color:#fff; outline:none; }
.grndtide-product-summary .reset_variations { display:none !important; }
.grndtide-product-summary .single_variation_wrap { padding-top:2px; }
.grndtide-product-summary .woocommerce-variation { min-height:18px; margin:0 0 14px; }
.grndtide-product-summary .woocommerce-variation-price { margin:0 0 10px; font-size:15px; font-weight:800; }
.grndtide-product-summary .woocommerce-variation-availability { margin:0; color:#4d514c; font-size:12px; }
.grndtide-product-summary .stock { margin:0; font-size:12px; }
.grndtide-product-summary .single_variation_wrap .woocommerce-variation-add-to-cart { display:grid; grid-template-columns:72px minmax(0,1fr); gap:10px; align-items:center; padding-top:16px; border-top:1px solid var(--grndtide-line); }
.grndtide-product-summary .single_variation_wrap .quantity { float:none; width:auto; margin:0; }
.grndtide-product-summary .single_variation_wrap .quantity input { width:72px; min-height:49px; padding:0 8px; border:1px solid var(--grndtide-ink); border-radius:0; text-align:center; }
.grndtide-product-summary .single_variation_wrap .single_add_to_cart_button { float:none; width:100%; min-height:49px; margin:0; padding:0 16px; border:1px solid var(--grndtide-ink); border-radius:0; background:var(--grndtide-ink); color:#fff; font-size:12px; font-weight:800; text-transform:uppercase; }
.grndtide-product-summary .grndtide-product-details { display:block; margin-top:20px; border-top:1px solid var(--grndtide-line); }
.grndtide-product-summary .grndtide-detail-panel { border-bottom:1px solid var(--grndtide-line); }
.grndtide-product-summary .grndtide-detail-panel > summary { display:flex; min-height:58px; align-items:center; justify-content:space-between; gap:16px; padding:0; color:var(--grndtide-ink); cursor:pointer; font-size:11px; font-weight:800; list-style:none; text-transform:uppercase; }
.grndtide-product-summary .grndtide-detail-panel > summary::-webkit-details-marker { display:none; }
.grndtide-product-summary .grndtide-detail-panel > summary span { font-size:16px; font-weight:400; line-height:1; transition:transform .18s ease; }
.grndtide-product-summary .grndtide-detail-panel[open] > summary span { transform:rotate(45deg); }
.grndtide-product-summary .grndtide-detail-panel__content { padding:0 0 18px; font-size:12px; line-height:1.55; }
.grndtide-product-summary .grndtide-detail-panel__content > p { margin:0; }
.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs { margin:0; padding:0; border:0; }
.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs ul.tabs { display:flex; gap:16px; padding:0 0 13px; margin:0 0 16px; border-bottom:1px solid var(--grndtide-line); }
.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs ul.tabs::before,.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs ul.tabs::after { display:none; }
.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs ul.tabs li { margin:0; padding:0; border:0; border-radius:0; background:none; }
.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs ul.tabs li::before,.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs ul.tabs li::after { display:none; }
.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs ul.tabs li a { font-size:10px; font-weight:800; text-transform:uppercase; }
.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs .panel { margin:0; font-size:12px; }
.grndtide-product-summary .grndtide-detail-panel .woocommerce-tabs .panel h2 { margin:0 0 12px; font-size:15px; }
.grndtide-product-summary .grndtide-detail-panel .shop_attributes { width:100%; margin:0; border:0; border-collapse:collapse; font-size:11px; }
.grndtide-product-summary .grndtide-detail-panel .shop_attributes th,.grndtide-product-summary .grndtide-detail-panel .shop_attributes td { padding:9px 0; border:0; border-bottom:1px solid #e3e3e0; text-align:left; }
.grndtide-product-summary .grndtide-detail-panel .shop_attributes th { width:38%; color:var(--grndtide-ink); font-weight:800; text-transform:uppercase; }
.grndtide-product-summary .grndtide-detail-panel .shop_attributes td p { margin:0; }
.grndtide-product-reviews { grid-column:1 / -1; padding:clamp(32px,4vw,64px); margin-top:clamp(28px,4vw,64px); border:1px solid #dededb; background:#fff; }
.grndtide-product-reviews > header { padding-bottom:20px; margin-bottom:24px; border-bottom:1px solid var(--grndtide-line); }
.grndtide-product-reviews > header h2 { margin:0; font-size:18px; line-height:1; text-transform:uppercase; }
.grndtide-product-reviews .woocommerce-tabs { margin:0; padding:0; border:0; }
.grndtide-product-reviews .woocommerce-tabs ul.tabs { display:none; }
.grndtide-product-reviews .woocommerce-tabs .panel { display:block !important; margin:0; padding:0; }
.grndtide-product-reviews #reviews { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(28px,5vw,80px); }
.grndtide-product-reviews #comments { min-width:0; padding-right:clamp(28px,5vw,80px); border-right:1px solid var(--grndtide-line); }
.grndtide-product-reviews #review_form_wrapper { min-width:0; }
.grndtide-product-reviews .woocommerce-Reviews-title { margin:0 0 14px; font-size:15px; text-transform:uppercase; }
.grndtide-product-reviews .woocommerce-noreviews { margin:0; color:#555; font-size:13px; }
.grndtide-product-reviews .comment-reply-title { display:block; margin-bottom:16px; font-size:14px; font-weight:800; line-height:1.35; }
.grndtide-product-reviews .comment-form { display:grid; grid-template-columns:1fr 1fr; gap:14px 18px; margin:0; }
.grndtide-product-reviews .comment-form > p { margin:0; }
.grndtide-product-reviews .comment-form-comment,.grndtide-product-reviews .comment-form-rating,.grndtide-product-reviews .comment-form-cookies-consent,.grndtide-product-reviews .form-submit { grid-column:1 / -1; }
.grndtide-product-reviews .comment-form label { display:block; margin-bottom:7px; font-size:11px; font-weight:800; text-transform:uppercase; }
.grndtide-product-reviews .comment-form input:not([type='checkbox']),.grndtide-product-reviews .comment-form textarea,.grndtide-product-reviews .comment-form select { width:100%; border:1px solid var(--grndtide-line); border-radius:0; background:#fff; font:inherit; }
.grndtide-product-reviews .comment-form input:not([type='checkbox']),.grndtide-product-reviews .comment-form select { min-height:42px; padding:0 10px; }
.grndtide-product-reviews .comment-form textarea { min-height:120px; padding:10px; resize:vertical; }
.grndtide-product-reviews .comment-form .submit { min-height:46px; padding:0 24px; border:1px solid var(--grndtide-ink); border-radius:0; background:var(--grndtide-ink); color:#fff; font-size:11px; font-weight:800; text-transform:uppercase; cursor:pointer; }
@media (max-width:760px) { .grndtide-product-reviews { padding:28px 20px; margin-top:28px; border-right:0; border-left:0; }.grndtide-product-reviews #reviews { grid-template-columns:1fr; gap:28px; }.grndtide-product-reviews #comments { padding:0 0 28px; border-right:0; border-bottom:1px solid var(--grndtide-line); }.grndtide-product-reviews .comment-form { grid-template-columns:1fr; } }
@media (min-width:761px) { .grndtide-product-summary h1 { font-size:clamp(28px,2.5vw,38px) !important; line-height:1.02; } }
@media (max-width:760px) { .grndtide-product-summary .single_variation_wrap .woocommerce-variation-add-to-cart { grid-template-columns:64px minmax(0,1fr); }.grndtide-product-summary .single_variation_wrap .quantity input { width:64px; } }

/* Mobile product media uses one swipeable frame instead of a long image stack. */
.iws-mobile-gallery-controls { display:none; }
@media (max-width:760px) {
	.grndtide-product-media { position:relative; }
	.grndtide-product-media .grndtide-product-gallery { display:flex !important; grid-template-columns:none !important; gap:0; overflow-x:auto; overscroll-behavior-x:contain; scroll-behavior:smooth; scroll-snap-type:x mandatory; scrollbar-width:none; }
	.grndtide-product-media .grndtide-product-gallery::-webkit-scrollbar { display:none; }
	.grndtide-product-media .grndtide-product-gallery .iws-demo-visual { flex:0 0 100%; width:100%; min-height:0; height:auto; aspect-ratio:4 / 5; scroll-snap-align:start; scroll-snap-stop:always; }
	.iws-mobile-gallery-controls { position:absolute; z-index:3; right:14px; bottom:14px; left:14px; display:grid; grid-template-columns:42px 1fr 42px; align-items:center; gap:10px; pointer-events:none; }
	.iws-mobile-gallery-controls button { pointer-events:auto; }
	.iws-mobile-gallery__previous,.iws-mobile-gallery__next { width:42px; height:42px; padding:0; border:1px solid rgba(255,255,255,.88); border-radius:50%; background:rgba(29,29,29,.78); color:#fff; font-size:22px; line-height:1; cursor:pointer; }
	.iws-mobile-gallery__dots { display:flex; justify-content:center; gap:7px; }
	.iws-mobile-gallery__dots button { width:7px; height:7px; padding:0; border:0; border-radius:50%; background:rgba(29,29,29,.35); cursor:pointer; }
	.iws-mobile-gallery__dots button.is-active { width:20px; border-radius:4px; background:var(--grndtide-ink); }
}

/* Product detail reference layout. Header and footer deliberately remain untouched. */
.single-product .grndtide-product-page { padding:28px clamp(18px,4vw,64px) 70px; background:#fff; }
.single-product .grndtide-product-primary { width:min(100%,1440px); grid-template-columns:minmax(0,1.28fr) minmax(360px,.88fr); gap:clamp(28px,4.5vw,76px); }
.single-product .grndtide-product-media { padding:0; border:0; background:transparent; }
.single-product .grndtide-product-media .grndtide-product-gallery { display:grid !important; grid-template-columns:114px 114px minmax(0,1fr) !important; grid-auto-flow:row; grid-auto-rows:min-content; gap:10px; height:auto; overflow:visible; }
.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual { grid-column:auto; width:114px; min-height:0; aspect-ratio:1; border:1px solid transparent; background:transparent; cursor:pointer; }
.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual.is-active:not(:first-child) { border-color:#222; }
.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual:first-child { grid-column:3; grid-row:1 / span 20; width:auto; height:clamp(500px,54vw,700px); aspect-ratio:auto; border:0; background:transparent; cursor:zoom-in; }
.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual > img { width:100%; height:100%; min-height:0; object-fit:cover !important; object-position:center; }
.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual:first-child > img { object-fit:contain !important; }
.single-product .grndtide-product-primary .grndtide-product-summary { position:static; align-self:start; max-height:none; padding:0; border:0; box-shadow:none; background:transparent; overflow:visible; }
.single-product .grndtide-breadcrumb { margin:0 0 16px; color:#777; font-size:10px; font-weight:500; text-transform:none; }
.grndtide-product-heading { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.grndtide-product-kicker { margin:0 0 7px; color:#898984; font-size:9px; font-weight:800; letter-spacing:1.4px; }
.single-product .grndtide-product-summary h1 { margin:0 0 7px; font-family:'Marcellus',serif; font-size:clamp(30px,3vw,48px) !important; font-weight:400; line-height:1.02; letter-spacing:0; text-transform:none; }
.grndtide-product-heading .star-rating { float:none; margin:0; font-size:12px; }
.grndtide-product-heading .woocommerce-review-link { margin-left:7px; color:#666; font-size:11px; }
.grndtide-product-heading__actions { display:flex; align-items:center; gap:16px; padding-top:23px; }
.single-product .grndtide-product-heading .price { margin:0 !important; color:#171717 !important; font-size:18px !important; font-weight:800; white-space:nowrap; }
.grndtide-wishlist-button { width:31px; height:31px; padding:0; border:0; background:transparent; color:#242424; cursor:pointer; font:30px/1 Arial,sans-serif; }
.grndtide-wishlist-button:hover,.grndtide-wishlist-button:focus-visible { color:#9b5757; outline:none; }
.single-product .grndtide-product-summary .woocommerce-product-details__short-description { margin:18px 0 16px; padding:0; background:transparent; color:#4b4b48; font-size:13px; line-height:1.5; }
.single-product .grndtide-product-options { padding:0 0 17px; border:0; }
.single-product .grndtide-product-options p { margin:0 0 8px; color:#292927; font-size:10px; font-weight:800; }
.grndtide-meaning-tags { display:flex; flex-wrap:wrap; gap:7px; }
.grndtide-meaning-tags span { display:inline-flex; min-height:28px; align-items:center; padding:0 10px; border:1px solid #d8d8d4; border-radius:3px; color:#4c4c49; font-size:10px; }
.single-product .grndtide-product-summary form.cart,.single-product .grndtide-product-summary form.variations_form { display:flex !important; flex-wrap:wrap; gap:9px; padding:16px 0 6px; margin:0; border-top:1px solid #dddcd8; }
.single-product .grndtide-product-summary form.variations_form { display:block !important; }
.single-product .grndtide-product-summary form.cart .quantity { display:flex; width:100%; height:36px; align-items:center; }
.single-product .grndtide-product-summary form.cart .quantity input { width:54px; min-height:36px; border:1px solid #d5d5d1; border-right:0; border-left:0; border-radius:0; font-size:12px; }
.iws-product-quantity-control { width:36px; height:36px; padding:0; border:1px solid #d5d5d1; border-radius:3px 0 0 3px; background:#fff; color:#333; cursor:pointer; font-size:17px; line-height:1; }
.iws-product-quantity-control:last-child { border-radius:0 3px 3px 0; }
.iws-product-quantity-control:hover,.iws-product-quantity-control:focus-visible { background:#f1f1ee; outline:none; }
.single-product .grndtide-product-summary form.cart .button,.single-product .grndtide-product-summary .single_variation_wrap .single_add_to_cart_button { width:100%; min-height:44px; border:1px solid #202020; border-radius:2px; background:#202020; color:#fff; font-size:11px; font-weight:700; letter-spacing:2px; }
.single-product .grndtide-product-summary .single_variation_wrap .woocommerce-variation-add-to-cart { display:flex; flex-wrap:wrap; gap:9px; padding-top:8px; border-top:0; }
.grndtide-buy-now { display:flex; width:100%; min-height:44px; align-items:center; justify-content:center; margin:0 0 14px; border:1px solid #a8a8a5; border-radius:2px; color:#222; font-size:11px; font-weight:700; letter-spacing:2px; }
.grndtide-buy-now:hover,.grndtide-buy-now:focus-visible { border-color:#222; background:#f6f6f3; outline:none; }
.single-product .grndtide-product-summary .grndtide-product-details { margin-top:0; border-top:1px solid #dddcd8; }
.single-product .grndtide-product-summary .grndtide-detail-panel > summary { min-height:45px; font-size:11px; font-weight:500; text-transform:none; }
.single-product .grndtide-product-summary .grndtide-detail-panel__content { color:#555; font-size:12px; }
.single-product .grndtide-product-reviews { width:min(100%,1440px); padding:42px 0; margin:34px auto 0; border-width:1px 0; }
.single-product .grndtide-related { width:min(100%,1440px); padding:42px 0 0; margin:0 auto; }
.single-product .grndtide-related > header { margin-bottom:16px; }
.single-product .grndtide-related > header h2 { font-family:'Marcellus',serif; font-size:24px; font-weight:400; text-transform:none; }
.single-product .grndtide-related > header a { padding:0; border:0; font-size:10px; }
.single-product .grndtide-related .products { grid-template-columns:repeat(5,1fr); gap:12px; border:0; }
.single-product .grndtide-related .products li.product { overflow:hidden; padding-bottom:9px; border:0; background:#fff; }
.single-product .grndtide-related .iws-demo-visual { aspect-ratio:1/.78; background:#f4f3f1; }
.single-product .grndtide-related .woocommerce-loop-product__title { min-height:0; padding:0; margin:8px 0 2px !important; font-family:'Marcellus',serif; font-size:12px !important; font-weight:400; text-transform:none; }
.single-product .grndtide-related .price { padding:0; font-size:11px !important; font-weight:700; }
.single-product .grndtide-related { overflow:hidden; }
.single-product .grndtide-related .products { display:flex; width:max-content; gap:12px; animation:grndtide-related-marquee 70s linear infinite; will-change:transform; }
.single-product .grndtide-related .products:hover,.single-product .grndtide-related .products:focus-within { animation-play-state:paused; }
.single-product .grndtide-related .products li.product { width:clamp(180px,16vw,235px) !important; flex:0 0 clamp(180px,16vw,235px); }
@keyframes grndtide-related-marquee { to { transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce) { .single-product .grndtide-related .products { animation:none; width:auto; overflow-x:auto; } }

/* Cart recommendations reuse the product-page marquee interaction. */
.iws-cart-recommendations { overflow:hidden; }
.iws-cart-recommendations__grid.products { display:flex; width:max-content; gap:18px; animation:grndtide-related-marquee 70s linear infinite; will-change:transform; }
.iws-cart-recommendations__grid.products:hover,.iws-cart-recommendations__grid.products:focus-within { animation-play-state:paused; }
.iws-cart-recommendations__grid.products li.product { width:clamp(180px,16vw,235px) !important; flex:0 0 clamp(180px,16vw,235px); }
@media (prefers-reduced-motion:reduce) { .iws-cart-recommendations__grid.products { width:auto; overflow-x:auto; animation:none; } }

/* Product information sits below the purchase area and above reviews. */
.single-product .grndtide-product-layout > .grndtide-product-details { grid-column:1 / -1; display:grid; grid-template-columns:1fr; width:min(100%,1440px); margin:0 auto; border-top:1px solid #cfcfcb; border-bottom:1px solid #cfcfcb; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel { min-width:0; border-right:0; border-bottom:1px solid #cfcfcb; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel:last-child { border-bottom:0; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary { display:flex; min-height:56px; align-items:center; justify-content:space-between; padding:0 18px; color:#262624; cursor:pointer; font-size:11px; font-weight:600; list-style:none; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary::-webkit-details-marker { display:none; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary span { font-size:16px; font-weight:400; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content { padding:0 18px 18px; color:#555; font-size:12px; line-height:1.55; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs { margin:0; padding:0; border:0; }

/* Review writing is an on-demand dialog; the native WooCommerce form stays intact. */
.iws-review-launch { display:inline-grid; width:24px; min-width:24px; height:24px; min-height:24px; margin-left:9px; padding:0; place-items:center; border:1px solid #222; border-radius:50%; background:#fff; color:#222; cursor:pointer; vertical-align:middle; font:16px/1 Arial,sans-serif; }
.iws-review-launch span { display:block; transform:rotate(-18deg); }
.iws-review-launch:hover,.iws-review-launch:focus-visible { background:#222; color:#fff; outline:none; }
.iws-review-modal-open { overflow:hidden; }
.iws-review-modal { position:fixed; z-index:110; inset:0; display:grid; place-items:center; padding:24px; background:rgba(20,20,19,.6); }
.iws-review-modal[hidden] { display:none; }
.iws-review-modal__panel { position:relative; width:min(100%,660px); max-height:calc(100vh - 48px); overflow:auto; padding:38px; border:1px solid #d8d8d4; background:#fff; box-shadow:0 20px 60px rgba(0,0,0,.25); }
.iws-review-modal__panel > h2 { margin:0 42px 25px 0; font-size:20px; line-height:1; }
.iws-review-modal__close { position:absolute; top:18px; right:18px; width:30px; height:30px; padding:0; border:0; background:transparent; color:#222; cursor:pointer; font:24px/1 Arial,sans-serif; }
.iws-review-modal #review_form_wrapper { min-width:0; }
.iws-review-modal .comment-reply-title { display:block; margin-bottom:16px; font-size:14px; font-weight:800; line-height:1.35; }
.iws-review-modal .comment-form { display:grid; grid-template-columns:1fr 1fr; gap:14px 18px; margin:0; }
.iws-review-modal .comment-form > p { margin:0; }
.iws-review-modal .comment-form-comment,.iws-review-modal .comment-form-rating,.iws-review-modal .comment-form-cookies-consent,.iws-review-modal .form-submit { grid-column:1 / -1; }
.iws-review-modal .comment-form label { display:block; margin-bottom:7px; font-size:11px; font-weight:800; text-transform:uppercase; }
.iws-review-modal .comment-form input:not([type='checkbox']),.iws-review-modal .comment-form textarea,.iws-review-modal .comment-form select { width:100%; border:1px solid var(--grndtide-line); border-radius:0; background:#fff; font:inherit; }
.iws-review-modal .comment-form input:not([type='checkbox']),.iws-review-modal .comment-form select { min-height:42px; padding:0 10px; }
.iws-review-modal .comment-form textarea { min-height:130px; padding:10px; resize:vertical; }
.iws-review-modal .comment-form .submit { min-height:46px; padding:0 24px; border:1px solid var(--grndtide-ink); border-radius:0; background:var(--grndtide-ink); color:#fff; font-size:11px; font-weight:800; text-transform:uppercase; cursor:pointer; }

@media (max-width:760px) {
	.single-product .grndtide-product-page { padding:8px 9px 36px; }
	.single-product .grndtide-product-primary { display:block; width:100%; }
	.single-product .grndtide-product-media .grndtide-product-gallery { display:flex !important; gap:0; overflow-x:auto; scroll-snap-type:x mandatory; }
	.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual,.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual:first-child { flex:0 0 100%; width:100%; height:auto; min-height:0; aspect-ratio:1.55 / 1; border:0; scroll-snap-align:start; }
	.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual > img { object-fit:cover !important; }
	.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual:first-child > img { object-fit:contain !important; }
	.single-product .grndtide-product-primary .grndtide-product-summary { position:static; padding:16px 8px 0; }
	.single-product .grndtide-breadcrumb,.grndtide-product-kicker { display:none; }
	.single-product .grndtide-product-summary h1 { font-size:23px !important; }
	.grndtide-product-heading__actions { gap:10px; padding-top:2px; }
	.single-product .grndtide-product-heading .price { font-size:16px !important; }
	.grndtide-wishlist-button { position:absolute; z-index:4; top:16px; right:17px; width:38px; height:38px; border-radius:50%; background:#fff; font-size:29px; box-shadow:0 1px 5px rgba(0,0,0,.12); }
	.single-product .grndtide-product-summary .woocommerce-product-details__short-description { margin:10px 0 12px; font-size:12px; }
	.single-product .grndtide-product-options { padding-bottom:12px; }
	.single-product .grndtide-product-summary form.cart,.single-product .grndtide-product-summary form.variations_form { padding-top:12px; }
	.single-product .grndtide-product-summary .grndtide-detail-panel > summary { min-height:41px; }
	.single-product .grndtide-product-reviews { display:none; }
	.iws-review-modal { padding:14px; }
	.iws-review-modal__panel { max-height:calc(100vh - 28px); padding:30px 20px 22px; }
	.iws-review-modal .comment-form { grid-template-columns:1fr; }
	.single-product .grndtide-product-layout > .grndtide-product-details { display:block; width:100%; margin-top:18px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel { border-right:0; border-bottom:1px solid #cfcfcb; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel:last-child { border-bottom:0; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary { min-height:46px; padding:0 8px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content { padding:0 8px 14px; }
	.single-product .grndtide-related { padding:24px 8px 0; }
	.single-product .grndtide-related > header h2 { font-size:18px; }
	.single-product .grndtide-related .products { display:flex; gap:10px; }
	.single-product .grndtide-related .products li.product,.single-product .grndtide-related .products li.product:nth-child(n+4) { display:block; width:132px !important; flex-basis:132px; }
	.single-product .grndtide-related .woocommerce-loop-product__title { font-size:10px !important; }
	.single-product .grndtide-related .price { font-size:10px !important; }
	.iws-cart-recommendations__grid.products { display:flex; gap:11px; overflow:visible; padding-bottom:4px; }
	.iws-cart-recommendations__grid.products li.product { width:132px !important; flex-basis:132px; }
	.iws-mobile-gallery-controls { position:static; display:block; width:100%; margin:7px 0 0; pointer-events:auto; }
	.iws-mobile-gallery__previous,.iws-mobile-gallery__next,.iws-mobile-gallery__dots button:not(.is-active) { display:none; }
	.iws-mobile-gallery__dots { display:flex; justify-content:flex-start; gap:7px; overflow-x:auto; padding:0 2px; }
	.iws-mobile-gallery__dots button,.iws-mobile-gallery__dots button:not(.is-active) { display:block; width:64px; min-width:64px; height:51px; padding:0; border:1px solid transparent; border-radius:3px; background-color:#f3f2ef; background-position:center; background-repeat:no-repeat; background-size:cover; opacity:1; }
	.iws-mobile-gallery__dots button.is-active { width:64px; min-width:64px; height:51px; border:1px solid #222; border-radius:3px; background-color:#f3f2ef; }
	.iws-mobile-gallery__dots button.is-active::after { content:none; }
}

/* Anonymous customer authentication uses a deliberately quiet page frame. */
body.iws-auth-body { min-width:320px; background:#1a1d18; }
.iws-auth-page { position:relative; display:flex; min-height:100svh; flex-direction:column; align-items:center; padding:34px 24px 64px; background:linear-gradient(145deg,#121411 0%,#2d3529 52%,#666a45 100%); isolation:isolate; }
.iws-auth-page::before { position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.2),transparent 58%); content:""; }
.iws-auth-brand { display:inline-flex; align-items:center; gap:8px; margin-bottom:auto; color:#fff; font-family:'Marcellus',serif; font-size:27px; font-weight:700; line-height:1; text-shadow:0 1px 10px rgba(0,0,0,.35); }
.iws-auth-brand img { width:33px; height:44px; object-fit:contain; filter:brightness(0) invert(1); }
.iws-auth-brand:focus-visible { outline:2px solid #fff; outline-offset:6px; }
.iws-auth-content { width:min(100%,440px); margin:76px auto auto; }
.iws-auth-shell { overflow:hidden; border:1px solid #c9ccc6; border-radius:6px; background:#fff; box-shadow:0 18px 44px rgba(29,29,29,.1); }
.iws-auth-heading { padding:32px 32px 25px; border-bottom:1px solid #dde0db; background:#f8f9f6; }
.iws-auth-kicker { margin:0 0 11px; color:#5e625c; font-size:10px; font-weight:800; letter-spacing:.9px; line-height:1; text-transform:uppercase; }
.iws-auth-heading h1 { margin:0; color:var(--grndtide-ink); font-size:29px; font-weight:800; letter-spacing:0; line-height:1.04; text-transform:uppercase; }
.iws-auth-heading > p:last-child { margin:12px 0 0; color:#5d615b; font-size:13px; line-height:1.5; }
.iws-auth-tabs { display:grid; grid-template-columns:1fr 1fr; border-bottom:1px solid #dde0db; background:#fff; }
.iws-auth-tabs [role="tab"] { display:grid; min-height:52px; padding:0 12px; border:0; border-bottom:2px solid transparent; background:transparent; color:#656963; place-items:center; font:800 11px/1 Arial,Helvetica,sans-serif; letter-spacing:.25px; text-transform:uppercase; }
.iws-auth-tabs [role="tab"][aria-selected="true"] { border-bottom-color:var(--grndtide-ink); color:var(--grndtide-ink); }
.iws-auth-tabs [role="tab"]:hover,.iws-auth-tabs [role="tab"]:focus-visible { color:var(--grndtide-ink); background:#f2f4ef; outline:none; }
.iws-auth-panel,.iws-auth-utility { padding:29px 32px 32px; }
.iws-auth-panel[hidden] { display:none; }
.iws-auth-page .woocommerce-form-login,.iws-auth-page .woocommerce-form-register { margin:0; padding:0; border:0; border-radius:0; background:transparent; }
.iws-auth-page .woocommerce-notices-wrapper > * { margin:0 0 17px; padding:14px 16px; border:0; border-left:3px solid var(--grndtide-ink); border-radius:0; background:#fff; color:var(--grndtide-ink); box-shadow:0 5px 16px rgba(29,29,29,.06); font-size:13px; }
.iws-auth-page .woocommerce-notices-wrapper .woocommerce-error { padding:17px 18px; border:1px solid #b44a4a; border-left:4px solid #b44a4a; background:#fff5f5; color:#762d2d; font-size:14px; font-weight:700; line-height:1.45; box-shadow:none; }
.iws-auth-page .woocommerce form .form-row { padding:0; margin:0 0 18px; }
.iws-auth-page .woocommerce form .form-row label { display:block; margin:0 0 8px; color:var(--grndtide-ink); font-size:11px; font-weight:800; letter-spacing:.25px; line-height:1.3; text-transform:uppercase; }
.iws-auth-page .woocommerce form .form-row .required { margin-left:3px; color:#b44a4a; }
.iws-auth-page .woocommerce form .input-text,.iws-auth-page .woocommerce form input[type="password"],.iws-auth-page .woocommerce form input[type="email"] { width:100%; min-height:48px; padding:0 13px; border:1px solid #bfc3bd; border-radius:3px; background:#fff; color:var(--grndtide-ink); font:14px/1.2 Arial,Helvetica,sans-serif; }
.iws-auth-page .woocommerce form .input-text:hover,.iws-auth-page .woocommerce form input[type="password"]:hover,.iws-auth-page .woocommerce form input[type="email"]:hover { border-color:#838780; }
.iws-auth-page .woocommerce form .input-text:focus,.iws-auth-page .woocommerce form input[type="password"]:focus,.iws-auth-page .woocommerce form input[type="email"]:focus { border-color:var(--grndtide-ink); outline:2px solid var(--grndtide-accent); outline-offset:1px; }
.iws-auth-actions { display:flex !important; clear:both; width:100% !important; flex-direction:column; align-items:stretch; gap:17px; margin-top:4px !important; }
.iws-auth-page .woocommerce-form-login__rememberme,.iws-auth-page .iws-account-consent label { display:flex !important; align-items:flex-start; gap:8px; margin:0 !important; color:#4f534d; font-size:12px !important; font-weight:400 !important; line-height:1.35; text-transform:none !important; }
.iws-auth-page .woocommerce-form-login__rememberme { align-items:center; }
.iws-auth-actions .woocommerce-form-login__rememberme { align-self:flex-start; }
.iws-auth-page .woocommerce-form-login__rememberme input,.iws-auth-page .iws-account-consent input { width:16px; height:16px; margin:0; accent-color:var(--grndtide-ink); }
.iws-auth-page .woocommerce button.button,.iws-auth-page .woocommerce .button { min-height:47px; padding:0 21px; border:1px solid var(--grndtide-ink); border-radius:3px; background:var(--grndtide-ink); color:#fff; font-size:11px; font-weight:800; letter-spacing:.35px; line-height:45px; text-transform:uppercase; }
.iws-auth-actions .button { float:none !important; width:100%; }
.iws-auth-page .woocommerce button.button:hover,.iws-auth-page .woocommerce button.button:focus-visible,.iws-auth-page .woocommerce .button:hover,.iws-auth-page .woocommerce .button:focus-visible { border-color:var(--grndtide-ink); background:var(--grndtide-accent); color:var(--grndtide-ink); outline:none; }
.iws-auth-page .woocommerce-LostPassword { margin:20px 0 0; }
.iws-auth-page .woocommerce-LostPassword a,.iws-auth-page .iws-account-consent a,.iws-auth-page .woocommerce-privacy-policy-text a { color:var(--grndtide-ink); text-decoration:underline; text-decoration-color:#969b93; text-underline-offset:3px; }
.iws-auth-page .iws-auth-form-note { margin:-2px 0 20px; color:#5d615b; font-size:13px; line-height:1.45; }
.iws-auth-page .iws-account-consent { margin:3px 0 22px !important; }
.iws-auth-page .iws-account-consent span { flex:1; }
.iws-auth-page .iws-account-consent.has-error { padding:10px; border:1px solid #b44a4a; border-radius:3px; background:#fff8f8; }
.iws-auth-page .iws-account-consent.has-error label { margin:0; }
.iws-auth-page .iws-register-status { margin:-7px 0 0; color:#5d615b; font-size:12px; font-weight:700; line-height:1.4; }
.iws-auth-page .woocommerce-privacy-policy-text { margin:0 0 20px; color:#5d615b; font-size:12px; line-height:1.45; }
.iws-auth-page .woocommerce-ResetPassword { margin:0; }
.iws-auth-page .woocommerce-ResetPassword > p:first-child { margin:0 0 21px; color:#5d615b; font-size:13px; line-height:1.5; }
.iws-auth-page .woocommerce-ResetPassword .form-row:last-child { margin-bottom:0; }
.iws-auth-page .woocommerce-ResetPassword .button { width:100%; }
.iws-auth-page .iws-password-form { display:block; }
.iws-auth-page .iws-password-form__intro { margin:0 0 23px; color:#565b54; font-size:13px; line-height:1.5; }
.iws-auth-page .iws-password-form .form-row-wide { float:none; width:100%; }
.iws-auth-page .iws-password-form .form-row { margin-bottom:18px; }
.iws-auth-page .iws-password-form .password-input { display:block; width:100%; }
.iws-auth-page .iws-password-form .woocommerce-password-strength { box-sizing:border-box; display:block; clear:both; width:100%; margin:8px 0 0; padding:10px 12px; border:0; border-left:3px solid #8d3535; background:#f3f4f1; color:#30332f; font-size:12px; font-weight:700; line-height:1.35; text-align:left; }
.iws-auth-page .iws-password-form .woocommerce-password-strength.good { border-left-color:#6b7c64; }
.iws-auth-page .iws-password-form .woocommerce-password-strength.strong { border-left-color:#415b48; }
.iws-auth-page .iws-password-form .woocommerce-password-hint { display:block; margin:8px 0 18px; color:#5d615b; font-size:12px; line-height:1.45; }
.iws-auth-page .iws-password-form__help { display:block; margin:0 0 18px; color:#5d615b; font-size:12px; line-height:1.45; }
.iws-auth-page .iws-password-form__submit { margin:25px 0 0 !important; }
.iws-auth-page .iws-password-form__submit .button { width:100%; }
.iws-password-confirmation { padding:4px 0; }
.iws-password-confirmation__eyebrow { margin:0 0 10px; color:#8d3535; font-size:10px; font-weight:800; letter-spacing:.9px; text-transform:uppercase; }
.iws-password-confirmation h2 { margin:0 0 13px; color:var(--grndtide-ink); font-size:22px; line-height:1.08; text-transform:uppercase; }
.iws-password-confirmation p:last-child { margin:0; color:#565b54; font-size:13px; line-height:1.5; }
@media (max-width:520px) { .iws-auth-page { padding:25px 16px 42px; background:linear-gradient(165deg,#111310 0%,#2a3227 58%,#5e6343 100%); }.iws-auth-brand { font-size:24px; }.iws-auth-content { margin-top:54px; }.iws-auth-heading { padding:27px 23px 22px; }.iws-auth-heading h1 { font-size:25px; }.iws-auth-panel,.iws-auth-utility { padding:24px 23px 26px; }.iws-auth-actions { grid-template-columns:1fr; gap:15px; }.iws-auth-actions .button { width:100%; }.iws-auth-page .woocommerce-form-login__rememberme { min-height:16px; } }

/* Crystal strand authentication direction: an editorial split canvas that
   keeps the account form quiet while giving the brand a tactile first frame. */
body.iws-auth-body { background:#eeeae2; }
body.iws-auth-body > .iws-header { display:block; }
body.iws-auth-body > .iws-footer { display:block; }
.iws-auth-page { display:grid; grid-template-columns:minmax(360px,45%) minmax(0,1fr); min-height:100svh; align-items:stretch; padding:0; background:#eeeae2; }
.iws-auth-visual { position:relative; display:flex; min-height:100svh; overflow:hidden; isolation:isolate; color:#fff; }
.iws-auth-visual__image,.iws-auth-visual__wash { position:absolute; inset:0; }
.iws-auth-visual__image { z-index:-3; background:#26312c url('../images/demo/hero-crystal-stream.webp') center/cover no-repeat; filter:saturate(.72) contrast(1.05); }
.iws-auth-visual__wash { z-index:-2; background:linear-gradient(150deg,rgba(12,25,24,.82) 0%,rgba(25,42,39,.36) 48%,rgba(212,184,139,.18) 100%); }
.iws-auth-visual__copy { align-self:flex-end; max-width:430px; padding:0 54px 68px; }
.iws-auth-visual__eyebrow { margin:0 0 22px; color:#e6dac7; font:700 10px/1 Arial,sans-serif; letter-spacing:2.1px; }
.iws-auth-visual h1 { margin:0; color:#fff; font:400 clamp(42px,5vw,74px)/.96 Georgia,'Times New Roman',serif; letter-spacing:-1px; }
.iws-auth-visual h1 em { color:#e6c78f; font-style:italic; }
.iws-auth-visual__copy > p:last-child { max-width:270px; margin:22px 0 0; color:rgba(255,255,255,.78); font-size:13px; line-height:1.55; }
.iws-auth-content { z-index:1; display:flex; width:auto; min-width:0; margin:0; padding:clamp(42px,7vw,96px) clamp(28px,7vw,112px); align-items:flex-start; justify-content:center; background:#eeeae2; }
.iws-auth-shell { width:min(100%,760px); max-width:760px; border:0; border-radius:0; background:transparent; box-shadow:none; }
.iws-auth-page .woocommerce-form-login,.iws-auth-page .woocommerce-form-register { display:flex; width:100% !important; max-width:760px !important; margin:0; padding:0 !important; border:0 !important; border-radius:0; background:transparent; box-shadow:none; flex-direction:column; }
.iws-auth-heading { padding:0 0 29px; border:0; background:transparent; }
.iws-auth-kicker { margin-bottom:17px; color:#8b755b; letter-spacing:2px; }
.iws-auth-heading h1 { max-width:760px; color:#273430; font:400 clamp(42px,4.1vw,64px)/.98 Georgia,'Times New Roman',serif; letter-spacing:-.4px; text-transform:none; }
.iws-auth-heading > p:last-child { max-width:320px; margin-top:16px; color:#69706a; font-size:13px; }
.iws-auth-tabs { width:max-content; display:flex; gap:28px; margin-bottom:29px; border-bottom:1px solid #d1c9bc; background:transparent; }
.iws-auth-tabs [role="tab"] { min-height:39px; padding:0 0 11px; color:#8c918b; font-size:10px; letter-spacing:1.5px; }
.iws-auth-tabs [role="tab"][aria-selected="true"] { border-bottom-color:#293c38; color:#293c38; }
.iws-auth-tabs [role="tab"]:hover,.iws-auth-tabs [role="tab"]:focus-visible { background:transparent; color:#293c38; }
.iws-auth-panel,.iws-auth-utility { padding:0; }
.iws-auth-panel { min-height:350px; }
.iws-auth-panel > form { min-height:350px; display:flex; flex-direction:column; }
.iws-auth-panel .iws-auth-actions { margin-top:auto !important; }
.iws-auth-panel .woocommerce-LostPassword { margin-top:18px; }
.iws-auth-panel .woocommerce-form-register > .woocommerce-form-row:last-of-type { margin-top:auto; }
.iws-auth-page .woocommerce-form-register__submit { width:100%; }
.iws-auth-page .woocommerce form .form-row { margin-bottom:20px; }
.iws-auth-page .woocommerce form .form-row label { color:#4d5c56; font-size:10px; letter-spacing:1.1px; }
.iws-auth-page .woocommerce form .input-text,.iws-auth-page .woocommerce form input[type="password"],.iws-auth-page .woocommerce form input[type="email"] { min-height:52px; padding:0 0 0 2px; border:0; border-bottom:1px solid #aaa99f; border-radius:0; background:transparent; font-size:15px; }
.iws-auth-page .woocommerce form .input-text:focus,.iws-auth-page .woocommerce form input[type="password"]:focus,.iws-auth-page .woocommerce form input[type="email"]:focus { border-color:#314d45; outline:0; box-shadow:0 1px 0 #314d45; }
.iws-auth-actions { gap:16px; margin-top:10px !important; }
.iws-auth-page .woocommerce button.button,.iws-auth-page .woocommerce .button { min-height:52px; border:1px solid #293c38; border-radius:0; background:#293c38; font-size:10px; letter-spacing:1.4px; line-height:50px; }
.iws-auth-page .woocommerce button.button:hover,.iws-auth-page .woocommerce button.button:focus-visible,.iws-auth-page .woocommerce .button:hover,.iws-auth-page .woocommerce .button:focus-visible { border-color:#d4aa70; background:#d4aa70; color:#273430; }
.iws-auth-page .woocommerce-LostPassword { margin:18px 0 0; font-size:12px; }
.iws-auth-page .woocommerce-LostPassword a,.iws-auth-page .iws-account-consent a,.iws-auth-page .woocommerce-privacy-policy-text a { color:#53635c; }
@media (max-width:760px) {
	.iws-auth-page { display:block; min-height:100svh; }
	.iws-auth-visual { min-height:290px; }
	.iws-auth-visual__copy { padding:0 24px 32px; }
	.iws-auth-visual__eyebrow { margin-bottom:13px; font-size:9px; }
	.iws-auth-visual h1 { font-size:42px; }
	.iws-auth-visual__copy > p:last-child { display:none; }
	.iws-auth-content { padding:42px 24px 58px; }
	.iws-auth-panel,.iws-auth-panel > form { min-height:350px; }
	.iws-auth-panel .iws-auth-actions,.iws-auth-panel .woocommerce-form-register > .woocommerce-form-row:last-of-type { margin-top:10px !important; }
	.iws-auth-heading h1 { font-size:38px; }
}

/* Quick sign-in follows the common ecommerce pattern: a focused drawer for
   returning customers, with registration and recovery kept on full pages. */
.iws-quick-auth[hidden] { display:none !important; }
.iws-quick-auth { position:fixed !important; z-index:9999; inset:0 !important; display:grid !important; place-items:center !important; width:100vw; height:100vh; }
.iws-quick-auth__backdrop { position:absolute; inset:0; background:rgba(18,27,25,.62); backdrop-filter:blur(3px); }
.iws-quick-auth__panel { position:relative !important; inset:auto !important; display:grid; width:min(920px,calc(100% - 56px)); max-height:calc(100vh - 72px); grid-template-columns:minmax(280px,.83fr) minmax(420px,1.17fr); overflow-y:auto; background:#f1eee7; box-shadow:0 30px 90px rgba(12,20,18,.42); }
.iws-quick-auth__close { position:absolute; z-index:2; top:20px; right:20px; display:grid; width:38px; height:38px; padding:0; border:1px solid rgba(39,52,48,.32); background:rgba(241,238,231,.88); color:#293c38; place-items:center; font-size:25px; line-height:1; cursor:pointer; }
.iws-quick-auth__visual { position:relative; display:flex; min-height:535px; padding:34px; align-items:flex-end; overflow:hidden; color:#fff; background:#24322e url('../images/demo/hero-crystal-stream.webp') center/cover no-repeat; isolation:isolate; }
.iws-quick-auth__visual::before { position:absolute; z-index:-1; inset:0; background:linear-gradient(180deg,rgba(10,22,21,.12) 18%,rgba(10,22,21,.76) 100%); content:""; }
.iws-quick-auth__visual p { margin:0 0 15px; color:#e8cf9d; font:700 9px/1 Arial,Helvetica,sans-serif; letter-spacing:2px; }
.iws-quick-auth__visual strong { display:block; font:400 42px/.96 Georgia,'Times New Roman',serif; }
.iws-quick-auth__visual em { color:#e8cf9d; font-style:italic; }
.iws-quick-auth__content { display:flex; min-width:0; min-height:535px; padding:70px 68px 42px; flex-direction:column; }
.iws-quick-auth__panel h2 { margin:0; color:#273430; font:400 48px/.98 Georgia,'Times New Roman',serif; }
.iws-quick-auth__intro { max-width:330px; margin:16px 0 35px; color:#69706a; font-size:13px; line-height:1.5; }
.iws-quick-auth__form { display:flex; max-width:390px; flex-direction:column; }
.iws-quick-auth__form label { margin:0 0 8px; color:#4d5c56; font-size:10px; font-weight:800; letter-spacing:1.1px; text-transform:uppercase; }
.iws-quick-auth__form input[type="email"],.iws-quick-auth__form input[type="password"] { min-height:50px; margin:0 0 20px; padding:0 2px; border:0; border-bottom:1px solid #aaa99f; border-radius:0; background:transparent; color:#273430; font-size:15px; }
.iws-quick-auth__form input:focus { border-color:#314d45; outline:0; box-shadow:0 1px 0 #314d45; }
.iws-quick-auth__form .button { min-height:52px; margin-top:9px; border:1px solid #293c38; border-radius:0; background:#293c38; color:#fff; font-size:10px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; cursor:pointer; }
.iws-quick-auth__form .button:hover,.iws-quick-auth__form .button:focus-visible { border-color:#d4aa70; background:#d4aa70; color:#273430; }
.iws-quick-auth__forgot,.iws-quick-auth__register { color:#53635c; font-size:12px; }
.iws-quick-auth__forgot { margin-top:19px; }
.iws-quick-auth__register { margin-top:auto; padding-top:30px; }
.iws-quick-auth__register a { color:#293c38; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
body.iws-quick-auth-open { overflow:hidden; }
@media (max-width:520px) {
	.iws-quick-auth__panel { display:block; width:calc(100% - 28px); max-height:calc(100vh - 28px); }
	.iws-quick-auth__visual { min-height:175px; padding:23px; }
	.iws-quick-auth__visual strong { font-size:31px; }
	.iws-quick-auth__content { min-height:0; padding:38px 25px 30px; }
	.iws-quick-auth__panel h2 { font-size:38px; }
}

/* Account pages stay airy on desktop but become compact, single-column panels on phones. */
@media (max-width:760px) {
	.woocommerce-account .iws-page { width:100%; padding:28px 14px 52px; }
	.woocommerce-account .iws-page-header { margin:0 12px 22px; padding-bottom:14px; }
	.woocommerce-account .iws-page-header h1 { font-size:30px; line-height:1.05; }
	.woocommerce-account.logged-in .woocommerce > .woocommerce-MyAccount-navigation,
	.woocommerce-account.logged-in .woocommerce > .woocommerce-MyAccount-content { margin-bottom:18px; }
	.woocommerce-account .iws-account-sidebar { border-color:#c9ccc6; }
	.woocommerce-account .iws-account-sidebar__intro { padding:18px 20px 16px; }
	.woocommerce-account .iws-account-sidebar__eyebrow { margin-bottom:8px; font-size:9px; }
	.woocommerce-account .iws-account-sidebar__title { font-size:21px; }
	.woocommerce-account .iws-account-sidebar a { min-height:44px; padding:0 16px; font-size:10px; }
	.woocommerce-account .iws-account-sidebar .is-active a { padding-left:13px; }
	.woocommerce-account .iws-address-overview__intro { margin:0 0 16px; font-size:12px; line-height:1.55; }
	.woocommerce-account .iws-address-grid { gap:12px; }
	.woocommerce-account .iws-address-card__header { padding:18px 20px 16px; }
	.woocommerce-account .iws-address-card h2 { font-size:22px; }
	.woocommerce-account .iws-address-card__body { min-height:92px; padding:17px 20px; }
}

@media (max-width:420px) {
	.woocommerce-account .iws-page { padding-right:10px; padding-left:10px; }
	.woocommerce-account .iws-page-header { margin-right:8px; margin-left:8px; }
	.woocommerce-account .iws-page-header h1 { font-size:27px; }
	.woocommerce-account .iws-account-sidebar__intro { padding-right:16px; padding-left:16px; }
	.woocommerce-account .iws-account-sidebar a { padding-right:13px; padding-left:13px; }
	.woocommerce-account .iws-account-sidebar .is-active a { padding-left:10px; }
	.woocommerce-account .iws-address-card__header { padding-right:16px; padding-left:16px; }
	.woocommerce-account .iws-address-card__body { padding-right:16px; padding-left:16px; }
}

/* Buttons acknowledge a submitted request immediately, including AJAX cart actions. */
button.is-loading,a.button.is-loading { position:relative; pointer-events:none; color:transparent !important; cursor:wait; }
button.is-loading > .crystal-heart-loader-sm,a.button.is-loading > .crystal-heart-loader-sm { position:absolute; top:50%; left:50%; display:inline-block; transform:translate(-50%,-50%); }
input[type="submit"].is-loading { cursor:wait; }
button.is-loading:disabled,[type="submit"].is-loading:disabled { opacity:1; }

/* Site-wide navigation feedback for links and non-AJAX form requests. */
.iws-page-loader { position:fixed; z-index:2000; inset:0; display:flex; width:100vw; height:100vh; background:rgba(247,247,245,.72); pointer-events:none; align-items:center; justify-content:center; }
body.iws-page-loading { cursor:wait; }

/* Crystal-heart loader supplied for the storefront: nine beads form a heart
 * and pulse in sequence. Fixed coordinates preserve the intended 70px shape. */
.crystal-heart-loader,.crystal-heart-loader-sm { position:relative; display:inline-block; flex:none; }
.crystal-heart-loader { --chb-size:70px; --chb-bead:9px; --chb-duration:2s; width:var(--chb-size); height:var(--chb-size); }
.crystal-heart-loader > span,.crystal-heart-loader-sm > span { position:absolute; border-radius:50%; background:radial-gradient(circle at 32% 28%,#fff 0%,#dce6ff 20%,#a8bdf5 55%,#6a7fc9 100%); box-shadow:0 0 10px rgba(160,190,255,.85),0 0 3px rgba(255,255,255,.9),inset -2px -2px 4px rgba(40,60,130,.5); animation:chbPulse var(--chb-duration,2s) ease-in-out infinite; transform-origin:center; will-change:transform,opacity,box-shadow; }
.crystal-heart-loader > span { width:var(--chb-bead); height:var(--chb-bead); }
.crystal-heart-loader > span:nth-child(2),.crystal-heart-loader > span:nth-child(4),.crystal-heart-loader > span:nth-child(6),.crystal-heart-loader > span:nth-child(8) { background:radial-gradient(circle at 32% 28%,#fff 0%,#ffe0f0 20%,#e0a8d8 55%,#a06fa8 100%); box-shadow:0 0 10px rgba(240,170,230,.8),0 0 3px #fff,inset -2px -2px 4px rgba(100,40,90,.4); }
.crystal-heart-loader > span:nth-child(1) { top:22px;left:29px;animation-delay:0s; }.crystal-heart-loader > span:nth-child(2) { top:14px;left:39px;animation-delay:.15s; }.crystal-heart-loader > span:nth-child(3) { top:24px;left:19px;animation-delay:.3s; }.crystal-heart-loader > span:nth-child(4) { top:24px;left:49px;animation-delay:.1s; }.crystal-heart-loader > span:nth-child(5) { top:36px;left:14px;animation-delay:.45s; }.crystal-heart-loader > span:nth-child(6) { top:36px;left:53px;animation-delay:.3s; }.crystal-heart-loader > span:nth-child(7) { top:48px;left:22px;animation-delay:.6s; }.crystal-heart-loader > span:nth-child(8) { top:48px;left:45px;animation-delay:.5s; }.crystal-heart-loader > span:nth-child(9) { top:58px;left:32px;animation-delay:.75s; }
.crystal-heart-loader-sm { width:24px; height:24px; --chb-duration:1.4s; }
.crystal-heart-loader-sm > span { width:4px; height:4px; box-shadow:0 0 4px rgba(160,190,255,.85),0 0 1px #fff,inset -1px -1px 2px rgba(40,60,130,.5); }
.crystal-heart-loader-sm > span:nth-child(1) { top:7.5px;left:10px;animation-delay:0s; }.crystal-heart-loader-sm > span:nth-child(2) { top:4.5px;left:13.5px;animation-delay:.15s; }.crystal-heart-loader-sm > span:nth-child(3) { top:8px;left:6.5px;animation-delay:.3s; }.crystal-heart-loader-sm > span:nth-child(4) { top:8px;left:16.5px;animation-delay:.1s; }.crystal-heart-loader-sm > span:nth-child(5) { top:12.5px;left:4.5px;animation-delay:.45s; }.crystal-heart-loader-sm > span:nth-child(6) { top:12.5px;left:18.5px;animation-delay:.3s; }.crystal-heart-loader-sm > span:nth-child(7) { top:16.5px;left:7.5px;animation-delay:.6s; }.crystal-heart-loader-sm > span:nth-child(8) { top:16.5px;left:15.5px;animation-delay:.5s; }.crystal-heart-loader-sm > span:nth-child(9) { top:20px;left:11.5px;animation-delay:.75s; }
@keyframes chbPulse { 0%,100% { opacity:.5;transform:scale(.9); } 50% { opacity:1;transform:scale(1.2);box-shadow:0 0 20px rgba(160,190,255,.85),0 0 6px #fff,inset -2px -2px 4px rgba(40,60,130,.5); } }
@media (prefers-reduced-motion:reduce) { .crystal-heart-loader > span,.crystal-heart-loader-sm > span { animation:none; } }

/* Registration success is intentionally impossible to miss, while retaining a quiet account page. */
.iws-auth-page--registration-success .woocommerce-message { display:none; }
.iws-success-dialog { position:fixed; z-index:1000; inset:0; display:grid; padding:24px; background:rgba(18,21,18,.56); place-items:center; }
.iws-success-dialog__panel { width:min(100%,410px); padding:34px 32px 31px; border:1px solid #c9ccc6; border-radius:6px; background:#fff; box-shadow:0 20px 52px rgba(0,0,0,.24); text-align:center; }
.iws-success-dialog__eyebrow { margin:0 0 12px; color:#5e625c; font-size:10px; font-weight:800; letter-spacing:.9px; line-height:1; text-transform:uppercase; }
.iws-success-dialog__panel h1 { margin:0; color:var(--grndtide-ink); font-size:27px; font-weight:800; line-height:1.05; text-transform:uppercase; }
.iws-success-dialog__panel > p:not(.iws-success-dialog__eyebrow) { margin:15px 0 25px; color:#565b54; font-size:14px; line-height:1.5; }
.iws-success-dialog__action { display:block; min-height:47px; padding:0 21px; border:1px solid var(--grndtide-ink); border-radius:3px; background:var(--grndtide-ink); color:#fff; font-size:11px; font-weight:800; letter-spacing:.35px; line-height:45px; text-transform:uppercase; }
.iws-success-dialog__action:hover,.iws-success-dialog__action:focus-visible { background:var(--grndtide-accent); color:var(--grndtide-ink); outline:none; }
.iws-success-dialog--error .iws-success-dialog__panel { border-color:#b44a4a; }
.iws-success-dialog--error .iws-success-dialog__eyebrow { color:#8f3535; }
.iws-registration-error-modal-open .woocommerce-notices-wrapper .woocommerce-error { display:none; }
@media (max-width:520px) { .iws-success-dialog { padding:16px; }.iws-success-dialog__panel { padding:29px 24px 25px; }.iws-success-dialog__panel h1 { font-size:24px; } }

/* Final catalog card guardrails: every WooCommerce product grid gets the same safe content gutter. */
.woocommerce ul.products li.product { box-sizing:border-box; overflow:hidden; padding-bottom:28px !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height:2.35em; padding-right:18px !important; padding-left:18px !important; margin-top:18px !important; margin-bottom:8px !important; overflow-wrap:anywhere; }
.woocommerce ul.products li.product .price { min-height:18px; padding-right:18px !important; padding-left:18px !important; }
.woocommerce ul.products li.product .iws-product-facts { min-height:15px; margin:8px 18px 0 !important; }
.woocommerce ul.products li.product .iws-loop-swatches { display:flex; max-width:100%; min-height:30px; flex-wrap:wrap; gap:5px; padding:12px 18px 0 !important; overflow:hidden; }
.woocommerce ul.products li.product .iws-loop-swatch { width:18px; height:18px; flex:0 0 18px; }
.woocommerce ul.products li.product .iws-loop-sku-options { min-height:42px !important; padding:12px 62px 0 18px !important; overflow:visible !important; }
.woocommerce ul.products li.product .iws-loop-sku-option { display:inline-flex; width:auto !important; max-width:100%; min-height:28px; height:auto !important; flex:0 0 auto !important; align-items:center; padding:5px 9px !important; overflow:visible; border-color:#8d918a; background:#fff; color:var(--grndtide-ink); font:700 10px/1.2 Arial,Helvetica,sans-serif; text-align:left; white-space:normal; }
.woocommerce ul.products li.product .iws-loop-sku-option:hover,.woocommerce ul.products li.product .iws-loop-sku-option:focus-visible,.woocommerce ul.products li.product .iws-loop-sku-option.is-selected { border-color:var(--grndtide-ink); background:var(--grndtide-ink); color:#fff; outline:none; }
@media (max-width:760px) { .woocommerce ul.products li.product .iws-loop-sku-options { min-height:40px !important; padding:10px 56px 0 14px !important; }.woocommerce ul.products li.product .iws-loop-sku-option { min-height:27px; padding:5px 8px !important; font-size:9px; } }
@media (min-width:1200px) { .grndtide-catalog-results > .products { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (max-width:760px) { .woocommerce ul.products li.product { padding-bottom:23px !important; }.woocommerce ul.products li.product .woocommerce-loop-product__title { padding-right:14px !important; padding-left:14px !important; margin-top:14px !important; margin-bottom:7px !important; }.woocommerce ul.products li.product .price { padding-right:14px !important; padding-left:14px !important; }.woocommerce ul.products li.product .iws-product-facts { margin:7px 14px 0 !important; }.woocommerce ul.products li.product .iws-loop-swatches { padding:10px 14px 0 !important; } }

/* Mobile catalog filters open as an intentional bottom sheet instead of pushing products down. */
.grndtide-mobile-filter-trigger,.grndtide-mobile-filter-backdrop,.grndtide-filter-close { display:none; }
.grndtide-filter-choice { display:flex; align-items:center; gap:9px; padding:6px 0; color:#5e615e; font-size:12px; line-height:1.25; cursor:pointer; }
.grndtide-filter-choice input { width:15px; height:15px; margin:0; accent-color:var(--grndtide-ink); }
.grndtide-filter-choice span { display:flex; flex:1; justify-content:space-between; gap:12px; }
.grndtide-filter-choice i { color:#8c8e8b; font-size:10px; font-style:normal; }
.grndtide-filter-group--search > label { display:block; margin-bottom:10px; color:var(--grndtide-ink); font-size:11px; font-weight:800; letter-spacing:.25px; }
.grndtide-filter-keyword { width:100%; min-height:42px; padding:0 12px; border:1px solid #bfc3bd; border-radius:3px; background:#fff; color:var(--grndtide-ink); font:12px/1.2 Arial,Helvetica,sans-serif; outline:0; }
.grndtide-filter-keyword:focus { border-color:var(--grndtide-ink); box-shadow:0 0 0 2px rgba(29,29,29,.12); }
.grndtide-filter-keyword::placeholder { color:#858984; }
.grndtide-filter-apply { width:100%; min-height:46px; margin:22px 0 3px; border:1px solid var(--grndtide-ink); border-radius:3px; background:var(--grndtide-ink); color:#fff; font:800 11px/1 Arial,Helvetica,sans-serif; letter-spacing:.45px; }
@media (max-width:760px) {
	.grndtide-catalog-layout { padding-top:20px; }
	.grndtide-catalog-filters { position:fixed; z-index:60; top:50%; right:auto; bottom:auto; left:50%; display:block; width:min(calc(100% - 32px),460px); max-height:min(74vh,680px); margin:0; padding:0 20px 24px; overflow-y:auto; border:0; border-radius:8px; background:#fff; box-shadow:0 16px 48px rgba(0,0,0,.24); opacity:0; pointer-events:none; transform:translate(-50%,calc(-50% + 20px)); transition:opacity .2s ease,transform .26s ease; visibility:hidden; }
	.grndtide-catalog-filters.is-open { opacity:1; pointer-events:auto; transform:translate(-50%,-50%); visibility:visible; }
	.grndtide-filter-heading { position:sticky; top:0; z-index:1; margin:0 -20px; padding:18px 20px 15px; background:#fff; }
	.grndtide-filter-heading > div { display:flex; align-items:center; gap:16px; }
	.grndtide-filter-close { display:grid; width:30px; height:30px; padding:0; border:1px solid var(--grndtide-line); border-radius:50%; background:#fff; color:var(--grndtide-ink); place-items:center; font:24px/1 Arial,sans-serif; }
	.grndtide-filter-group { min-width:0; padding:19px 0; border-bottom:1px solid var(--grndtide-line); }
	.grndtide-filter-apply { position:sticky; bottom:0; margin:18px 0 0; }
	.grndtide-mobile-filter-trigger { position:fixed; z-index:40; right:18px; bottom:calc(18px + env(safe-area-inset-bottom)); display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:0 16px; border:1px solid var(--grndtide-ink); border-radius:3px; background:var(--grndtide-ink); color:#fff; box-shadow:0 5px 18px rgba(0,0,0,.18); font:800 11px/1 Arial,Helvetica,sans-serif; letter-spacing:.45px; }
	.grndtide-mobile-filter-trigger span { font-size:18px; line-height:1; }
	.grndtide-filter-count { display:grid; min-width:18px; height:18px; padding:0 4px; border-radius:9px; background:var(--grndtide-accent); color:var(--grndtide-ink); place-items:center; font:800 10px/1 Arial,Helvetica,sans-serif; }
	.grndtide-filter-count[hidden] { display:none; }
	.grndtide-mobile-filter-backdrop { position:fixed; z-index:50; inset:0; display:block; background:rgba(16,18,17,.48); }
	.grndtide-mobile-filter-backdrop[hidden] { display:none; }
	.grndtide-filters-open { overflow:hidden; }
	.grndtide-filters-open .grndtide-mobile-filter-trigger { opacity:0; pointer-events:none; }
}

/* Mobile navigation menus must not be clipped by the horizontal nav container. */
@media (max-width:760px) {
	.iws-header { position:relative; z-index:100; overflow:visible; isolation:isolate; }
	.iws-navigation { z-index:101; overflow:visible; }
	.iws-shop-menu { z-index:102; }
	.iws-shop-menu-panel { z-index:103; overflow:visible; border-color:var(--grndtide-ink); background:#fff !important; color:var(--grndtide-ink) !important; opacity:1 !important; box-shadow:0 10px 24px rgba(0,0,0,.16); }
	.iws-shop-menu-panel a,.iws-shop-menu-panel span { color:var(--grndtide-ink) !important; }
}

/* Cookie choices keep optional analytics separate from store-essential cookies. */
.grndtide-newsletter-action { align-self:center; padding:14px 20px; border:1px solid #fff; color:#fff; font-size:11px; font-weight:800; letter-spacing:.5px; }
.grndtide-newsletter-action:hover,.grndtide-newsletter-action:focus-visible { border-color:var(--grndtide-accent); color:var(--grndtide-accent); outline:none; }
.iws-cookie-preferences { margin-top:14px; padding:0; border:0; background:none; color:#fff; cursor:pointer; font:inherit; font-size:11px; text-decoration:underline; }
.iws-cookie-banner { position:fixed; z-index:1000; right:20px; bottom:20px; width:min(calc(100% - 40px),520px); padding:18px; border:1px solid #4e514e; background:#1d1e1d; color:#fff; box-shadow:0 16px 44px rgba(0,0,0,.28); }
.iws-cookie-banner p { margin:0 0 14px; font-size:13px; line-height:1.45; }.iws-cookie-banner > div,.iws-cookie-dialog__panel > div { display:flex; flex-wrap:wrap; gap:9px; }
.iws-cookie-button { min-height:38px; padding:0 13px; border:1px solid var(--grndtide-accent); background:var(--grndtide-accent); color:var(--grndtide-ink); cursor:pointer; font:800 11px/1 Arial,Helvetica,sans-serif; letter-spacing:.25px; }
.iws-cookie-button--secondary { border-color:#c7cac4; background:transparent; color:#fff; }
.iws-cookie-dialog { position:fixed; z-index:1001; inset:0; display:grid; padding:20px; background:rgba(0,0,0,.58); place-items:center; }
.iws-cookie-dialog[hidden],.iws-cookie-banner[hidden] { display:none; }.iws-cookie-dialog__panel { width:min(100%,500px); padding:28px; background:#202120; color:#fff; box-shadow:0 18px 48px rgba(0,0,0,.3); }.iws-cookie-dialog__panel h2 { margin:0 0 12px; font-size:25px; }.iws-cookie-dialog__panel p { margin:0 0 20px; color:#e2e4df; }
@media (max-width:760px) { .grndtide-newsletter-action { align-self:flex-start; }.iws-cookie-banner { right:12px; bottom:12px; width:calc(100% - 24px); } }

/* Shop archive: editorial product browsing with a compact mobile control row. */
.grndtide-mobile-catalog-tools { display:none; }
.post-type-archive-product .grndtide-shop,.tax-product_cat .grndtide-shop,.tax-grndtide_collection .grndtide-shop,.tax-grndtide_stone .grndtide-shop,.tax-grndtide_bead_size .grndtide-shop { max-width:none; padding:0 3.9vw 72px; }
.post-type-archive-product .grndtide-shop-inner,.tax-product_cat .grndtide-shop-inner,.tax-grndtide_collection .grndtide-shop-inner,.tax-grndtide_stone .grndtide-shop-inner { width:100%; max-width:none; }
.grndtide-shop-header { height:clamp(240px,25vw,360px); padding:0; overflow:hidden; border:0; background:#eeece8; }
.grndtide-shop-header picture,.grndtide-shop-header img { display:block; width:100%; height:100%; }
.grndtide-shop-header img { object-fit:cover; object-position:center; }
.grndtide-catalog-layout { display:block; padding-top:0; }
.grndtide-catalog-filters { position:static; width:100%; margin:0; padding:19px 0 18px; border:0; border-bottom:1px solid #e4e3df; }
.grndtide-filter-form { display:grid; grid-template-columns:repeat(4,minmax(130px,1fr)) minmax(155px,1fr); gap:18px; align-items:end; }
.grndtide-filter-heading { display:none; }
.grndtide-filter-group { min-width:0; padding:0; border:0; }
.grndtide-filter-group--search { display:none; }
.grndtide-filter-group h2 { margin:0 0 6px; color:#6a6a67; font-size:9px; letter-spacing:.75px; }
.grndtide-filter-group a,.grndtide-filter-choice { min-height:37px; padding:0 12px; border:1px solid #d7d6d2; background:#fff; color:#2d2d2b; font-family:'Marcellus',serif; font-size:13px; line-height:35px; }
.grndtide-filter-group a { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.grndtide-filter-choice { display:none; }
.grndtide-filter-group:nth-of-type(3) .grndtide-filter-choice:first-of-type,.grndtide-filter-group:nth-of-type(4) .grndtide-filter-choice:first-of-type { display:block; }
.grndtide-filter-group:nth-of-type(3) .grndtide-filter-choice input,.grndtide-filter-group:nth-of-type(4) .grndtide-filter-choice input { position:absolute; opacity:0; pointer-events:none; }
.grndtide-filter-group:nth-of-type(3) .grndtide-filter-choice span,.grndtide-filter-group:nth-of-type(4) .grndtide-filter-choice span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.grndtide-filter-group:nth-of-type(3) .grndtide-filter-choice span::after,.grndtide-filter-group:nth-of-type(4) .grndtide-filter-choice span::after,.grndtide-filter-group a::after { float:right; margin-left:8px; content:'⌄'; font-family:'Marcellus',serif; }
.grndtide-filter-apply { grid-column:5; min-height:37px; margin:0; border-color:#31312f; border-radius:0; background:#31312f; font-size:10px; }
.grndtide-catalog-results .grndtide-shop-tools { min-height:58px; padding:0; border-bottom:1px solid #e4e3df; }
.grndtide-catalog-results .woocommerce-result-count { order:2; color:#85837f; font-size:9px; letter-spacing:.65px; }
.grndtide-catalog-results .woocommerce-ordering { order:1; }
.grndtide-catalog-results .woocommerce-ordering select { min-width:140px; min-height:36px; padding:0 30px 0 12px; border:1px solid #d7d6d2; background-position:right 10px center; font-family:'Marcellus',serif; font-size:13px; font-weight:400; letter-spacing:0; text-transform:none; }
.grndtide-catalog-results > .products { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:16px 0 0; border:0; }
.grndtide-catalog-results > .products li.product { overflow:visible; padding:0 0 7px; border:0; border-radius:0; background:transparent; box-shadow:none; }
.grndtide-catalog-results > .products li.product:hover { border:0; box-shadow:none; transform:none; }
.grndtide-catalog-results .iws-demo-visual { aspect-ratio:1/1; background:#f0efec; }
.grndtide-catalog-results .woocommerce-loop-product__title { min-height:0; padding:0 42px 0 2px !important; margin:10px 0 4px !important; font-family:'Marcellus',serif; font-size:16px !important; font-weight:400; line-height:1.1; text-transform:none; }
.grndtide-catalog-results .price { padding:0 2px !important; color:#222 !important; font-family:'Marcellus',serif; font-size:13px !important; font-weight:700; }
.grndtide-catalog-results .iws-product-facts,.grndtide-catalog-results .iws-loop-swatches,.grndtide-catalog-results .iws-quick-add,.grndtide-catalog-results .button { display:none !important; }
.grndtide-catalog-results > .products li.product::after { position:absolute; right:3px; bottom:10px; width:21px; height:21px; color:#111; content:'♡'; font:26px/21px Arial,sans-serif; pointer-events:none; }

@media (max-width:760px) {
	.post-type-archive-product .grndtide-shop,.tax-product_cat .grndtide-shop,.tax-grndtide_collection .grndtide-shop,.tax-grndtide_stone .grndtide-shop { padding:0 6px 46px; }
	.grndtide-shop-header { height:78px; margin:0 -6px; }
	.grndtide-shop-header img { object-position:center 43%; }
	.grndtide-mobile-catalog-tools { display:flex; gap:8px; padding:12px 0 10px; overflow-x:auto; scrollbar-width:none; }
	.grndtide-mobile-catalog-tools::-webkit-scrollbar { display:none; }
	.grndtide-mobile-catalog-tools button { display:inline-flex; min-height:42px; flex:0 0 auto; align-items:center; gap:8px; padding:0 13px; border:1px solid #dfdedb; border-radius:22px; background:#fff; color:#171717; font:13px/1 Arial,Helvetica,sans-serif; white-space:nowrap; }
	.grndtide-mobile-catalog-tools .grndtide-catalog-tool-icon { font-size:18px; transform:rotate(180deg); }
	.grndtide-mobile-catalog-tools .grndtide-catalog-sort-icon { font-size:20px; line-height:1; }
	.grndtide-catalog-filters { display:none; }
	.grndtide-catalog-results .grndtide-shop-tools { display:none; }
	.grndtide-catalog-results > .products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 18px; margin:6px 0 0; }
	.grndtide-catalog-results > .products li.product { padding-bottom:0 !important; }
	.grndtide-catalog-results .iws-demo-visual { aspect-ratio:1/1; }
	.grndtide-catalog-results .woocommerce-loop-product__title { min-height:0; padding:0 27px 0 1px !important; margin:8px 0 3px !important; font-size:14px !important; line-height:1.12; }
	.grndtide-catalog-results .price { padding:0 1px !important; font-size:13px !important; }
	.grndtide-catalog-results > .products li.product::after { right:2px; bottom:1px; width:18px; height:18px; font-size:23px; line-height:18px; }
	.grndtide-mobile-filter-trigger { display:none !important; }
	.grndtide-catalog-filters.is-open { position:fixed; z-index:110; top:50%; right:auto; bottom:auto; left:50%; display:block; width:min(calc(100% - 28px),440px); max-height:74vh; margin:0; padding:0 18px 20px; border:0; border-radius:4px; transform:translate(-50%,-50%); }
	.grndtide-catalog-filters.is-open .grndtide-filter-form { display:block; }
	.grndtide-catalog-filters.is-open .grndtide-filter-heading { display:flex; }
	.grndtide-catalog-filters.is-open .grndtide-filter-group { display:block; padding:18px 0; border-bottom:1px solid var(--grndtide-line); }
	.grndtide-catalog-filters.is-open .grndtide-filter-group h2 { display:block; }
	.grndtide-catalog-filters.is-open .grndtide-filter-group a,.grndtide-catalog-filters.is-open .grndtide-filter-choice { display:flex; min-height:0; padding:6px 0; border:0; background:transparent; font-family:'Marcellus',serif; font-size:12px; line-height:1.25; }
	.grndtide-catalog-filters.is-open .grndtide-filter-group a::after,.grndtide-catalog-filters.is-open .grndtide-filter-choice span::after { display:none; }
	.grndtide-catalog-filters.is-open .grndtide-filter-choice input { position:static; opacity:1; pointer-events:auto; }
	.grndtide-catalog-filters.is-open .grndtide-filter-choice span { display:flex; white-space:normal; }
	.grndtide-catalog-filters.is-open .grndtide-filter-apply { display:block; width:100%; margin:18px 0 0; }
}

/* Desktop catalog layout: full-bleed hero, persistent left filters, product grid on the right. */
@media (min-width:761px) {
	.post-type-archive-product .grndtide-shop,.tax-product_cat .grndtide-shop,.tax-grndtide_collection .grndtide-shop,.tax-grndtide_stone .grndtide-shop { padding-right:3.9vw; padding-left:3.9vw; }
	.post-type-archive-product .grndtide-shop-header,.tax-product_cat .grndtide-shop-header,.tax-grndtide_collection .grndtide-shop-header,.tax-grndtide_stone .grndtide-shop-header { width:calc(100% + 7.8vw); height:clamp(265px,26vw,430px); margin-left:-3.9vw; }
	.post-type-archive-product .grndtide-shop-header img,.tax-product_cat .grndtide-shop-header img,.tax-grndtide_collection .grndtide-shop-header img,.tax-grndtide_stone .grndtide-shop-header img { object-fit:cover; object-position:center; }
	.grndtide-catalog-layout { display:grid; grid-template-columns:224px minmax(0,1fr); gap:36px; padding-top:27px; }
	.grndtide-catalog-filters { display:block; position:sticky; top:86px; width:auto; margin:0; padding:0 27px 0 0; border-right:1px solid #dfdedb; }
	.grndtide-filter-form { display:block; }
	.grndtide-filter-heading { display:flex; }
	.grndtide-filter-group { display:block; min-width:0; padding:19px 0; border-bottom:1px solid #e4e3df; }
	.grndtide-filter-group--search { display:block; }
	.grndtide-filter-group h2 { display:block; margin:0 0 11px; }
	.grndtide-filter-group a { display:flex; min-height:0; padding:5px 0; border:0; background:transparent; font-family:'Marcellus',serif; font-size:12px; line-height:1.25; }
	.grndtide-filter-choice { display:flex; min-height:0; padding:6px 0; border:0; background:transparent; font-family:'Marcellus',serif; font-size:12px; line-height:1.25; }
	.grndtide-filter-choice input { position:static; opacity:1; pointer-events:auto; }
	.grndtide-filter-choice span { display:flex; }
	.grndtide-filter-group a::after,.grndtide-filter-choice span::after { display:none; }
	.grndtide-filter-apply { display:block; margin:22px 0 3px; }
	.grndtide-catalog-results > .products { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

/* Final desktop sizing pass: keep the catalog focused and compact. */
@media (min-width:761px) {
	.post-type-archive-product .grndtide-shop-header,.tax-product_cat .grndtide-shop-header,.tax-grndtide_collection .grndtide-shop-header,.tax-grndtide_stone .grndtide-shop-header { height:clamp(170px,13vw,245px); }
	.post-type-archive-product .grndtide-shop-header picture,.tax-product_cat .grndtide-shop-header picture,.tax-grndtide_collection .grndtide-shop-header picture,.tax-grndtide_stone .grndtide-shop-header picture { display:block; width:100%; height:100%; }
	.post-type-archive-product .grndtide-shop-header img,.tax-product_cat .grndtide-shop-header img,.tax-grndtide_collection .grndtide-shop-header img,.tax-grndtide_stone .grndtide-shop-header img { width:100%; height:100%; object-fit:cover; }
	.grndtide-catalog-layout { grid-template-columns:190px minmax(0,1fr); width:60%; max-width:1120px; min-width:760px; margin:0 auto; gap:24px; }
	.grndtide-catalog-filters { position:fixed; top:clamp(190px,calc(13vw + 20px),265px); left:20%; width:166px; max-height:calc(100vh - 285px); padding-right:18px; overflow-y:auto; scrollbar-width:thin; }
	.grndtide-catalog-results > .products { gap:10px; margin-top:12px; }
	.grndtide-catalog-results > .products li.product { padding-bottom:4px; }
	.grndtide-catalog-results .woocommerce-loop-product__title { padding-right:28px !important; font-size:13px !important; }
	.grndtide-catalog-results .price { font-size:11px !important; }
	.grndtide-catalog-results > .products li.product::after { right:1px; bottom:6px; transform:scale(.86); transform-origin:right bottom; }
}
@media (min-width:761px) and (max-width:1100px) {
	.grndtide-catalog-layout { width:calc(100% - 40px); min-width:0; }
	.grndtide-catalog-filters { left:20px; }
}

/* Keep filter choices scannable at the wider sidebar/panel size. Each label
 * remains a native checkbox target, so the two-column layout does not change
 * keyboard or screen-reader interaction (WCAG 2.1 keyboard and reflow). */
@media (min-width:761px) {
	.grndtide-catalog-layout { grid-template-columns:280px minmax(0,1fr); }
	.grndtide-catalog-filters { width:260px; }
	.grndtide-filter-group--choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; }
	.grndtide-filter-group--choices h2 { grid-column:1 / -1; }
	.grndtide-filter-group--choices .grndtide-filter-choice { min-width:0; }
}

@media (max-width:760px) {
	.grndtide-catalog-filters.is-open { width:min(calc(100% - 20px),520px); }
	.grndtide-catalog-filters.is-open .grndtide-filter-group--choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; }
	.grndtide-catalog-filters.is-open .grndtide-filter-group--choices h2 { grid-column:1 / -1; }
	.grndtide-catalog-filters.is-open .grndtide-filter-group--choices .grndtide-filter-choice { min-width:0; }
}

/* Catalog fallback geometry: protect the product grid from WooCommerce float defaults. */
@media (min-width:761px) {
	body.archive.post-type-archive-product .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-catalog-layout,
	body.tax-grndtide_collection .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-catalog-layout { display:grid !important; grid-template-columns:260px minmax(0,1fr) !important; width:min(92vw,1480px); min-width:0; margin:0 auto; column-gap:34px; }
	body.archive.post-type-archive-product .grndtide-catalog-filters,
	body.tax-product_cat .grndtide-catalog-filters,
	body.tax-grndtide_collection .grndtide-catalog-filters,
	body.tax-grndtide_stone .grndtide-catalog-filters { position:fixed; left:max(24px,calc((100vw - min(92vw,1480px))/2)); width:230px; box-sizing:border-box; }
	body.archive.post-type-archive-product .grndtide-catalog-results,
	body.tax-product_cat .grndtide-catalog-results,
	body.tax-grndtide_collection .grndtide-catalog-results,
	body.tax-grndtide_stone .grndtide-catalog-results { min-width:0 !important; width:100% !important; }
	body.archive.post-type-archive-product .grndtide-catalog-results > ul.products,
	body.tax-product_cat .grndtide-catalog-results > ul.products,
	body.tax-grndtide_collection .grndtide-catalog-results > ul.products,
	body.tax-grndtide_stone .grndtide-catalog-results > ul.products { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; width:100% !important; min-width:0 !important; gap:18px !important; margin:18px 0 0 !important; }
	body.archive.post-type-archive-product .grndtide-catalog-results > ul.products > li.product,
	body.tax-product_cat .grndtide-catalog-results > ul.products > li.product,
	body.tax-grndtide_collection .grndtide-catalog-results > ul.products > li.product,
	body.tax-grndtide_stone .grndtide-catalog-results > ul.products > li.product { display:flex !important; width:auto !important; min-width:0 !important; float:none !important; margin:0 !important; }
	body.archive.post-type-archive-product .grndtide-catalog-results .iws-demo-visual,
	body.tax-product_cat .grndtide-catalog-results .iws-demo-visual,
	body.tax-grndtide_collection .grndtide-catalog-results .iws-demo-visual,
	body.tax-grndtide_stone .grndtide-catalog-results .iws-demo-visual { width:100% !important; aspect-ratio:1/1 !important; }
}

/* Keep the fixed sidebar out of the product column's sizing calculation. */
@media (min-width:1101px) {
	body.archive.post-type-archive-product .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-catalog-layout,
	body.tax-grndtide_collection .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-catalog-layout { grid-template-columns:260px minmax(920px,1fr) !important; width:min(1440px,calc(100vw - 80px)) !important; }
	body.archive.post-type-archive-product .grndtide-catalog-filters,
	body.tax-product_cat .grndtide-catalog-filters,
	body.tax-grndtide_collection .grndtide-catalog-filters,
	body.tax-grndtide_stone .grndtide-catalog-filters { grid-column:1; grid-row:1; width:240px; }
	body.archive.post-type-archive-product .grndtide-catalog-results,
	body.tax-product_cat .grndtide-catalog-results,
	body.tax-grndtide_collection .grndtide-catalog-results,
	body.tax-grndtide_stone .grndtide-catalog-results { grid-column:2; grid-row:1; }
	body.archive.post-type-archive-product .grndtide-catalog-results > ul.products,
	body.tax-product_cat .grndtide-catalog-results > ul.products,
	body.tax-grndtide_collection .grndtide-catalog-results > ul.products,
	body.tax-grndtide_stone .grndtide-catalog-results > ul.products { grid-template-columns:repeat(4,minmax(180px,1fr)) !important; }
	body.archive.post-type-archive-product .grndtide-catalog-filters,
	body.tax-product_cat .grndtide-catalog-filters,
	body.tax-grndtide_collection .grndtide-catalog-filters,
	body.tax-grndtide_stone .grndtide-catalog-filters { position:sticky !important; top:24px !important; left:auto !important; align-self:start; max-height:calc(100vh - 48px); }
}

/* Checkout stays in the storefront frame instead of looking like the default WooCommerce screen. */
.woocommerce-checkout { display:flex; min-height:100vh; flex-direction:column; background:#f3f4f0; }
.woocommerce-checkout .iws-footer { flex:none; margin-top:auto; }
.iws-checkout-main { padding:clamp(22px,3vw,42px) 0 48px; background:#f3f4f0; }
.iws-checkout-frame { max-width:1260px; }
.iws-checkout-intro { display:flex; align-items:center; gap:13px; min-height:74px; margin-bottom:16px; padding:0; }
.iws-checkout-intro__icon { display:grid; width:48px; height:48px; flex:0 0 auto; place-items:center; border-radius:50%; background:var(--grndtide-accent); }.iws-checkout-intro__icon svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.iws-checkout-intro p { margin:0 0 3px; color:#697063; font-size:10px; font-weight:800; letter-spacing:.8px; text-transform:uppercase; }
.iws-checkout-intro h1 { margin:0; font-family:'Marcellus',serif; font-size:31px; line-height:1; }
.iws-checkout-intro a { margin-left:auto; padding:8px 11px; border:1px solid #c9cec5; color:#596054; font-size:10px; font-weight:800; text-transform:uppercase; }
.iws-checkout-content { padding-top:0; }
.iws-checkout-content > .wp-block-woocommerce-checkout { max-width:none; margin:0; padding-top:0; }
.iws-checkout-content .wc-block-checkout { font-size:14px; }
.iws-checkout-content .wc-block-components-sidebar-layout { display:grid !important; grid-template-columns:minmax(0,1.55fr) minmax(330px,.8fr); align-items:stretch; gap:16px; margin:0; }
.iws-checkout-content .wc-block-components-sidebar-layout .wc-block-components-main { width:auto !important; min-width:0; padding:0; }
.iws-checkout-content .wc-block-components-sidebar { width:auto !important; min-width:0; min-height:0; padding:0; overflow:hidden; }
.iws-checkout-content .wc-block-components-checkout-step { margin:0 0 20px; padding:24px; border:1px solid var(--grndtide-line); border-radius:0; background:#fff; }
.iws-checkout-content .wc-block-components-checkout-step__title { font-size:20px; font-weight:800; text-transform:uppercase; }
.iws-checkout-content .wc-block-components-checkout-step__description { color:#656963; }
.iws-checkout-content .wc-block-components-text-input input,.iws-checkout-content .wc-block-components-combobox .wc-block-components-combobox-control input,.iws-checkout-content .wc-block-components-combobox .components-combobox-control__input,.iws-checkout-content .wc-block-components-select .wc-block-components-select__select { min-height:48px; border-color:#8e918c; border-radius:0; background:#fff; }
.iws-checkout-content .wc-block-components-text-input label,.iws-checkout-content .wc-block-components-combobox label,.iws-checkout-content .wc-block-components-select label { color:#4f524e; font-size:12px; font-weight:700; }
.iws-checkout-content .wc-block-components-sidebar > .wp-block-woocommerce-checkout-order-summary-block { min-height:0; border:1px solid #d7dbd3; background:#fff; box-shadow:0 10px 25px rgba(20,25,19,.05); }
.iws-checkout-content .wc-block-components-order-summary { min-height:0; overflow:hidden; border:0; }
.iws-checkout-content .wc-block-components-order-summary .wc-block-components-panel__button { padding:22px; font-size:15px; font-weight:800; text-transform:uppercase; }
.iws-checkout-content .wc-block-components-order-summary .wc-block-components-panel__content { padding:0 22px 22px; }
.iws-checkout-content .wp-block-woocommerce-checkout-order-summary-cart-items-block { max-height:270px; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#969b93 transparent; }
.iws-checkout-content .wp-block-woocommerce-checkout-order-summary-cart-items-block::-webkit-scrollbar { width:6px; }
.iws-checkout-content .wp-block-woocommerce-checkout-order-summary-cart-items-block::-webkit-scrollbar-thumb { background:#969b93; border-radius:6px; }
.iws-checkout-content .wc-block-components-totals-wrapper { padding:0 22px 22px; }
.iws-checkout-content .wc-block-components-totals-item { padding:14px 0; border-color:var(--grndtide-line); }.iws-checkout-content .wc-block-components-totals-item__value { color:#161a16; font-size:15px; font-weight:800; }.iws-checkout-content .wc-block-components-totals-footer-item { margin:0 -22px; padding:20px 22px; border-top:1px solid var(--grndtide-ink); background:#fff; font-size:18px; }.iws-checkout-content .wc-block-components-totals-footer-item .wc-block-formatted-money-amount { color:#161a16; font-size:21px; font-weight:800; }
.iws-checkout-content .wc-block-components-checkout-place-order-button { min-height:52px; border-radius:0; background:var(--grndtide-ink); color:#fff; font-size:12px; font-weight:800; letter-spacing:0; text-transform:uppercase; }
.iws-checkout-content .wc-block-components-checkout-place-order-button:hover,.iws-checkout-content .wc-block-components-checkout-place-order-button:focus-visible { background:#41433f; }
.iws-checkout-content .wc-block-components-notice-banner { border-radius:0; }
.iws-checkout-content .wc-block-components-checkbox__input[type=checkbox] { border-radius:0; }
@media (max-width:760px) {
	.iws-checkout-main { padding:42px 0 62px; }
	.iws-checkout-intro { padding-bottom:22px; }
	.iws-checkout-intro h1 { font-size:38px; }
	.iws-checkout-content { padding-top:22px; }
	.iws-checkout-content .wc-block-components-sidebar-layout { display:flex !important; flex-direction:column; }
	.iws-checkout-content .wc-block-components-sidebar-layout .wc-block-components-main,.iws-checkout-content .wc-block-components-sidebar { width:100%; padding:0; }
	.iws-checkout-content .wc-block-components-sidebar { order:-1; margin-bottom:20px; }
	.iws-checkout-content .wc-block-components-checkout-step { padding:18px; }
	.iws-checkout-content .wc-block-components-order-summary .wc-block-components-panel__button { padding:18px; }
	.iws-checkout-content .wc-block-components-order-summary .wc-block-components-panel__content { padding:0 18px 18px; }
	.iws-checkout-content .wp-block-woocommerce-checkout-order-summary-cart-items-block { max-height:none; overflow:visible; }
	.iws-checkout-content .wc-block-components-totals-wrapper { padding:0 18px 18px; }
	.iws-checkout-content .wc-block-components-totals-footer-item { margin:0 -18px; padding:18px; }
}

/* Header cart preview. */
.iws-cart-menu { position:relative; }
.iws-cart-link { border:0; background:transparent; color:inherit; font:inherit; cursor:pointer; }
.iws-mini-cart-panel { position:absolute; top:calc(100% + 14px); right:0; z-index:40; width:min(380px, calc(100vw - 28px)); padding:18px; border:1px solid var(--grndtide-line); background:#fff; box-shadow:0 18px 42px rgba(25,26,24,.16); text-transform:none; }
.iws-mini-cart-content { color:var(--grndtide-ink); font-size:13px; font-weight:400; }
.iws-mini-cart-heading { display:flex; align-items:center; justify-content:space-between; padding-bottom:13px; border-bottom:1px solid var(--grndtide-line); font-size:14px; text-transform:uppercase; }
.iws-mini-cart-close { width:28px; height:28px; margin:-7px -7px -7px 0; border:0; background:transparent; color:inherit; font-size:24px; line-height:1; cursor:pointer; }
.iws-mini-cart-items { max-height:310px; margin:0; padding:0; overflow-y:auto; list-style:none; }
.iws-mini-cart-item { display:grid; grid-template-columns:80px 1fr; gap:12px; padding:14px 0; border-bottom:1px solid var(--grndtide-line); }
.iws-mini-cart-image { display:block; width:80px; height:80px; background:#f4f4f1; }
.iws-mini-cart-image img { display:block; width:100%; height:100%; object-fit:cover; }
.iws-mini-cart-product { display:block; color:inherit; font-weight:700; line-height:1.35; }
.iws-mini-cart-quantity,.iws-mini-cart-price { display:block; margin-top:5px; color:var(--grndtide-muted); font-size:12px; }
.iws-mini-cart-price { color:var(--grndtide-ink); font-weight:700; }
.iws-mini-cart-total { display:flex; justify-content:space-between; padding:15px 0; font-size:14px; }
.iws-mini-cart-actions { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.iws-mini-cart-actions a,.iws-mini-cart-continue { display:flex; min-height:42px; align-items:center; justify-content:center; border:1px solid var(--grndtide-ink); color:var(--grndtide-ink); font-size:11px; font-weight:700; letter-spacing:0; text-transform:uppercase; }
.iws-mini-cart-checkout { background:var(--grndtide-ink); color:#fff !important; }
.iws-mini-cart-empty { margin:20px 0 14px; color:var(--grndtide-muted); }
.iws-mini-cart-continue { width:100%; }
.iws-mini-cart-actions a:hover,.iws-mini-cart-actions a:focus-visible,.iws-mini-cart-continue:hover,.iws-mini-cart-continue:focus-visible { background:var(--grndtide-accent); border-color:var(--grndtide-accent); color:var(--grndtide-ink) !important; }
@media (max-width:760px) { .iws-mini-cart-panel { position:fixed; top:70px; right:14px; } .iws-mini-cart-items { max-height:min(48vh, 310px); } }

/* Final shop archive desktop layout: wide filters and large product cards. */
@media (min-width:761px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop { width:100% !important; max-width:none !important; padding-right:0 !important; padding-left:0 !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-shop-inner { width:100% !important; max-width:none !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-layout { width:70% !important; max-width:none !important; margin:28px auto 0 !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-layout { grid-template-columns:240px minmax(0,1fr) !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters { display:block !important; position:sticky !important; top:88px !important; grid-column:1 !important; grid-row:1 !important; width:240px !important; min-height:0; overflow-x:hidden !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-heading { position:static !important; top:auto !important; z-index:auto !important; margin:0 !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-shop-tools { position:sticky !important; top:64px; z-index:15; margin:0 !important; padding:12px 0 !important; background:#fff; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form { display:block !important; width:100% !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-heading,
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group,
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-apply { display:block !important; grid-column:auto !important; width:100% !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-results { grid-column:2 !important; grid-row:1 !important; min-width:0 !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
	.grndtide-shop .grndtide-catalog-layout { display:grid !important; grid-template-columns:480px minmax(0,1fr) !important; width:min(1780px,calc(100vw - 80px)) !important; min-width:0 !important; gap:40px !important; margin:28px auto 0 !important; padding:0 !important; align-items:start; }
	.grndtide-shop .grndtide-catalog-filters { position:sticky !important; top:24px !important; left:auto !important; grid-column:1; grid-row:1; width:480px !important; max-height:calc(100vh - 48px); margin:0 !important; padding:0 24px 20px 0 !important; overflow-y:auto; border-right:1px solid #dfdedb !important; box-sizing:border-box; }
	.grndtide-shop .grndtide-filter-form { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:0 22px; }
	.grndtide-shop .grndtide-filter-heading,.grndtide-shop .grndtide-filter-group--search,.grndtide-shop .grndtide-filter-group:nth-of-type(2),.grndtide-shop .grndtide-filter-apply { grid-column:1 / -1; }
	.grndtide-shop .grndtide-filter-group:nth-of-type(3) { grid-column:1; }
	.grndtide-shop .grndtide-filter-group:nth-of-type(4) { grid-column:2; }
	.grndtide-shop .grndtide-filter-group { padding-top:18px !important; padding-bottom:18px !important; }
	.grndtide-shop .grndtide-catalog-results { grid-column:2; grid-row:1; width:100% !important; min-width:0 !important; }
	.grndtide-shop .grndtide-catalog-results > ul.products { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; width:100% !important; gap:28px !important; }
	.grndtide-shop .grndtide-catalog-results .woocommerce-loop-product__title { padding-right:36px !important; font-size:18px !important; }
	.grndtide-shop .grndtide-catalog-results .price { font-size:15px !important; }
}
@media (min-width:761px) and (max-width:1280px) {
	.grndtide-shop .grndtide-catalog-layout { grid-template-columns:380px minmax(0,1fr) !important; width:calc(100% - 48px) !important; gap:28px !important; }
	.grndtide-shop .grndtide-catalog-filters { width:380px !important; }
}

/* Mobile catalog filters: floating trigger with a focused filter dialog. */
@media (max-width:760px) {
	.grndtide-mobile-catalog-tools { display:none !important; }
	.grndtide-mobile-filter-trigger { position:fixed !important; z-index:120 !important; right:16px !important; bottom:calc(16px + env(safe-area-inset-bottom)) !important; display:inline-flex !important; min-height:44px; align-items:center; gap:9px; padding:0 17px !important; border:0 !important; border-radius:3px 0 0 3px !important; background:#242422 !important; color:#fff !important; box-shadow:0 7px 20px rgba(0,0,0,.22); font:800 12px/1 Arial,Helvetica,sans-serif !important; letter-spacing:.3px; }
	.grndtide-mobile-filter-trigger span { font-size:19px; line-height:1; }
	.grndtide-catalog-filters.is-open { position:fixed !important; z-index:130 !important; top:50% !important; right:auto !important; bottom:auto !important; left:50% !important; display:block !important; width:min(calc(100% - 24px),420px) !important; max-height:calc(100vh - 32px) !important; margin:0 !important; padding:0 20px 20px !important; overflow-y:auto !important; border:0 !important; border-radius:0 !important; background:#fff !important; box-shadow:0 18px 50px rgba(0,0,0,.28); opacity:1 !important; pointer-events:auto !important; transform:translate(-50%,-50%) !important; visibility:visible !important; }
	.grndtide-catalog-filters.is-open .grndtide-filter-form { display:block !important; }
	.grndtide-catalog-filters.is-open .grndtide-filter-heading { position:sticky !important; top:0 !important; z-index:2; display:flex !important; min-height:61px; margin:0 -20px !important; padding:0 20px !important; border-bottom:1px solid #babbb8; background:#fff; align-items:center; }
	.grndtide-catalog-filters.is-open .grndtide-filter-close { display:grid !important; width:31px; height:31px; border-radius:50%; place-items:center; }
	.grndtide-catalog-filters.is-open .grndtide-filter-group { display:block !important; padding:20px 0 !important; border-bottom:1px solid #c8c9c6 !important; }
	.grndtide-catalog-filters.is-open .grndtide-filter-choice { display:flex !important; min-height:27px; padding:4px 0 !important; }
	.grndtide-catalog-filters.is-open .grndtide-filter-apply { position:sticky !important; bottom:0 !important; z-index:2; display:block !important; min-height:47px; margin:18px 0 0 !important; border-radius:2px !important; }
	.grndtide-mobile-filter-backdrop { position:fixed !important; z-index:125 !important; inset:0; background:rgba(18,18,17,.46) !important; }
}

/* Checkbox facets replace the retired single-value dropdown presentation. */
@media (min-width:761px) {
	body.archive.post-type-archive-product .grndtide-shop .grndtide-catalog-filters .grndtide-filter-group .grndtide-filter-choice {
	display:flex !important;
	min-height:27px !important;
	padding:4px 0 !important;
	border:0 !important;
	background:transparent !important;
	color:#5e615e !important;
	font-family:'Marcellus',serif !important;
	font-size:12px !important;
	line-height:1.25 !important;
}
	body.archive.post-type-archive-product .grndtide-shop .grndtide-catalog-filters .grndtide-filter-choice input {
	position:static !important;
	opacity:1 !important;
	pointer-events:auto !important;
	width:15px !important;
	height:15px !important;
	margin:0 !important;
}
	body.archive.post-type-archive-product .grndtide-shop .grndtide-catalog-filters .grndtide-filter-choice span {
	display:flex !important;
	justify-content:space-between !important;
	gap:12px !important;
	white-space:normal !important;
}
	body.archive.post-type-archive-product .grndtide-shop .grndtide-catalog-filters .grndtide-filter-choice span::after {
	display:none !important;
}
}

/* Home hero: 20% shorter while keeping the editorial copy balanced. */
@media (min-width:761px) {
	.stones-home .stones-hero { min-height:clamp(414px,38.72vw,563px); }
	.stones-home .stones-hero__copy { padding-top:clamp(110px,10.4vw,157px); }
	.stones-home .stones-hero__shade { background:linear-gradient(20deg,rgb(241 214 214 / 68%) 0%,rgba(255,255,255,.38) 25%,rgba(255,255,255,0) 45%); }
}

@media (max-width:760px) {
	.stones-home .stones-hero { min-height:365px; }
	.stones-home .stones-hero__copy { padding-top:116px; }
}

/* Journal: restore a comfortable editorial height on desktop. */
@media (min-width:761px) {
	.stones-home .stones-journal { height:clamp(420px,35vw,560px); }
	.stones-home .stones-journal__feature,.stones-home .stones-journal__posts { height:100%; }
}

/* Journal feature: match the full 1120:720 bracelet image ratio. */
@media (min-width:761px) {
	.stones-home .stones-journal { height:33.43vw; min-height:0; }
	.stones-home .stones-journal__feature > img { width:100%; height:100%; object-fit:cover; }
	.stones-home .stones-journal__posts { display:grid; grid-template-rows:auto minmax(0,1fr); background:#e1e3d8; }
	.stones-home .stones-journal__cards { position:relative; display:block; min-height:0; height:100%; }
	.stones-home .stones-journal__cards > a { position:absolute; display:block; width:48%; overflow:hidden; color:#fff; }
	.stones-home .stones-journal__cards > a:first-child { top:0; left:0; }
	.stones-home .stones-journal__cards > a:last-child { right:0; bottom:0; }
	.stones-home .stones-journal__cards > a::after { position:absolute; z-index:1; inset:0; background:linear-gradient(135deg,rgba(0,0,0,.62),rgba(0,0,0,0) 60%); content:""; }
	.stones-home .stones-journal__cards > a:last-child::after { background:linear-gradient(315deg,rgba(0,0,0,.62),rgba(0,0,0,0) 60%); }
	.stones-home .stones-journal__cards img { width:100%; height:auto; margin:0; filter:none; }
	.stones-home .stones-journal__cards strong,.stones-home .stones-journal__cards small { position:absolute; z-index:2; display:block; color:#fff; text-shadow:0 1px 4px rgba(0,0,0,.5); }
	.stones-home .stones-journal__cards strong { top:20px; left:20px; font-size:26px; line-height:1.05; }
	.stones-home .stones-journal__cards small { top:82px; left:20px; margin:0; color:#fff; font-size:16px; }
	.stones-home .stones-journal__cards > a:last-child strong { top:auto; right:20px; bottom:49px; left:auto; text-align:right; }
	.stones-home .stones-journal__cards > a:last-child small { top:auto; right:20px; bottom:20px; left:auto; text-align:right; }
}

/* Match the story band to the intrinsic aspect ratio of its new image. */
@media (min-width:761px) {
	.stones-home .stones-story { height:21.13vw; min-height:0; }
	.stones-home .stones-story__image img { width:100%; object-fit:cover; }
}

/* Give the story copy its own photographic panel with high-contrast type. */
.stones-home .stones-story__copy { background:linear-gradient(rgba(25,17,10,.42),rgba(25,17,10,.42)),url('../images/demo/story-hand-stones.webp') center / cover no-repeat; color:#fff; }
.stones-home .stones-story__copy > p,.stones-home .stones-story__copy h2,.stones-home .stones-story__copy span,.stones-home .stones-story__copy a { color:#fff !important; }
.stones-home .stones-story__copy h2 { font-weight:600; }
.stones-home .stones-story__copy > p,.stones-home .stones-story__copy span,.stones-home .stones-story__copy a { font-weight:600; }
.stones-home .stones-story__copy a { border-bottom-color:rgba(255,255,255,.82); }

/* Home collections: compact portrait cards with consistent image fill. */
@media (min-width:761px) {
	.stones-home .stones-collections__track { height:auto !important; gap:1.25px; align-items:start; }
	.stones-home .stones-collection { width:92.4%; height:auto !important; aspect-ratio:.804; justify-self:center; }
}

@media (max-width:760px) {
	.stones-home .stones-collections__track { gap:1.25px; }
	.stones-home .stones-collection { width:calc((100vw - 47px) * .308); height:auto !important; flex:0 0 calc((100vw - 47px) * .308); aspect-ratio:.804; }
}

.stones-home .stones-collection img { width:100%; height:100%; object-fit:cover; }
.stones-home .stones-collection span { right:14px; bottom:14px; left:14px; color:#fff !important; text-shadow:0 1px 5px rgba(0,0,0,.72); }
.stones-home .stones-collection strong { color:#fff !important; font-size:24px; line-height:1; }
.stones-home .stones-collection small { margin-top:6px; color:#fff !important; font-size:10px; line-height:1.2; }
@media (max-width:760px) {
	.stones-home .stones-collection span { right:8px; bottom:9px; left:8px; }
	.stones-home .stones-collection strong { font-size:16px; }
	.stones-home .stones-collection small { margin-top:4px; font-size:7px; }
}

/* Keep loop-card cart feedback inside the circular action. */
body.iws-site .woocommerce ul.products li.product .added_to_cart { display:none !important; }
body.iws-site .woocommerce ul.products li.product .iws-quick-add.added > svg:not(.iws-quick-add-success-icon) { display:none !important; }
body.iws-site .woocommerce ul.products li.product .iws-quick-add.added > .iws-quick-add-success-icon { display:none !important; }
body.iws-site .woocommerce ul.products li.product .iws-quick-add.added::after { position:absolute; top:50%; left:50%; display:block !important; color:#fff !important; content:'✓' !important; font:700 22px/1 Arial,Helvetica,sans-serif !important; transform:translate(-50%,-50%); }

/* Final desktop account canvas overrides: must follow legacy theme bundles. */

/* Final GROUND & TIDE header rules must follow the legacy theme bundle. */
.iws-header .iws-brand-wordmark { font-size:30px !important; font-weight:700 !important; letter-spacing:3px; }
.iws-header .iws-primary-nav > a,.iws-header .iws-shop-menu-link,.iws-header .iws-nav-dropdown .iws-shop-menu-trigger { font-size:14px !important; font-weight:800 !important; letter-spacing:.7px; }
.iws-header .iws-header-actions { font-weight:800; }.iws-header .iws-action-icon { width:23px !important; height:23px !important; stroke-width:2; }
.iws-header { position:relative; min-height:64px; border-bottom:1px solid #dededb; background:#fff; color:#242422; }
.iws-header-inner { width:min(calc(100% - 52px),1440px); min-height:64px; grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr); gap:28px; }
.iws-brand { justify-self:start; }.iws-brand a { display:flex; align-items:center; gap:8px; }.iws-brand img { width:25px; height:28px; object-fit:contain; }.iws-brand-wordmark { display:block; font-family:'Marcellus',serif; font-size:25px; font-weight:400; letter-spacing:3px; line-height:1; }
.iws-navigation { justify-self:center; }.iws-primary-nav { gap:29px; }
.iws-primary-nav > a,.iws-shop-menu-link,.iws-nav-dropdown .iws-shop-menu-trigger { min-height:30px !important; color:#30302d; font-size:12px !important; font-weight:700; letter-spacing:.7px; line-height:30px; text-transform:uppercase; white-space:nowrap; }
.iws-shop-menu-trigger { display:none; }.iws-nav-dropdown .iws-shop-menu-trigger { display:inline-flex !important; padding:0 !important; border:0; background:transparent; cursor:pointer; }.iws-nav-dropdown .iws-shop-menu-icon { width:10px; height:10px; margin-left:5px; color:inherit; font-size:14px; }
.iws-header-actions { gap:20px; min-height:30px; align-items:center; color:#343431; font-size:10px; }.iws-header-action { padding:2px; color:inherit; }.iws-action-icon { width:19px; height:19px; stroke-width:1.65; }.iws-search-link .iws-action-icon,.iws-account-link .iws-action-icon,.iws-cart-link .iws-action-icon { color:inherit; }.iws-cart-count { min-width:15px; height:15px; margin-left:-6px; border-radius:50%; background:transparent; color:inherit; font-size:9px; font-weight:700; }
.iws-shop-menu-panel,.iws-header .iws-account-menu-panel { top:calc(100% + 17px); }
.iws-header--overlay { position:sticky; top:0; z-index:20; margin-bottom:-64px; border:0 !important; background:transparent !important; color:#fff; box-shadow:none !important; outline:0 !important; transition:background-color .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease; }
.iws-header--overlay .iws-brand img { filter:grayscale(1) brightness(0) invert(1); }.iws-header--overlay .iws-navigation { border:0 !important; }.iws-header--overlay .iws-primary-nav > a,.iws-header--overlay .iws-shop-menu-link,.iws-header--overlay .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header--overlay .iws-header-actions { color:#fff; text-shadow:0 1px 4px rgba(0,0,0,.5); }.iws-header--overlay .iws-shop-menu-icon { color:currentColor; }.iws-header--overlay.iws-header--scrolled { border-bottom:1px solid #dededb !important; background:#fff !important; color:#242422; box-shadow:0 2px 14px rgba(0,0,0,.06); }.iws-header--overlay.iws-header--scrolled .iws-brand img { filter:none; }.iws-header--overlay.iws-header--scrolled .iws-primary-nav > a,.iws-header--overlay.iws-header--scrolled .iws-shop-menu-link,.iws-header--overlay.iws-header--scrolled .iws-nav-dropdown .iws-shop-menu-trigger,.iws-header--overlay.iws-header--scrolled .iws-header-actions { color:#171717; text-shadow:none; }
@media (max-width:900px) and (min-width:761px) { .iws-header-inner { gap:16px; }.iws-primary-nav { gap:16px; }.iws-header-actions { gap:12px; } }
@media (max-width:760px) { .iws-header-inner { width:calc(100% - 28px); min-height:60px; grid-template-columns:1fr auto; gap:12px; }.iws-brand img { width:23px; height:26px; }.iws-header .iws-brand-wordmark { font-size:25px !important; letter-spacing:2px; }.iws-navigation { grid-column:1/-1; width:100%; overflow-x:auto; border-top:1px solid #eee; }.iws-primary-nav { gap:24px; min-width:max-content; padding:7px 0 10px; }.iws-header .iws-primary-nav > a,.iws-header .iws-shop-menu-link,.iws-header .iws-nav-dropdown .iws-shop-menu-trigger { min-height:24px !important; font-size:11px !important; line-height:24px; }.iws-header-actions { grid-area:1/2; gap:12px; }.iws-header .iws-action-icon { width:20px !important; height:20px !important; }.iws-header--overlay { margin-bottom:-95px; }.iws-header--overlay .iws-navigation { border-top-color:rgba(255,255,255,.25); }.iws-header--overlay.iws-header--scrolled .iws-navigation { border-top-color:#eee; } }
@media (min-width:1100px) {
	body.woocommerce-account .iws-main { width:100%; max-width:none; padding:58px 0 110px; }
	body.woocommerce-account .iws-page { width:min(1500px,calc(100vw - 96px)); max-width:none; }
	body.woocommerce-account.logged-in .woocommerce:has(.iws-account-dashboard--visual) { grid-template-columns:294px minmax(0,1fr); gap:28px; }
	body.woocommerce-account.logged-in .woocommerce:has(.iws-account-dashboard--visual) > .woocommerce-MyAccount-navigation { width:294px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero { min-height:414px; grid-template-columns:minmax(0,1fr) 43%; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-copy { padding:66px 72px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero h2 { max-width:570px; font-size:62px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__grid { grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr); gap:28px; margin-top:28px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-orders,body.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions { min-height:372px; padding:40px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-section-heading h3,body.woocommerce-account .iws-account-dashboard--visual .iws-account-quick-actions h3 { font-size:36px; }
	body.woocommerce-account .iws-account-dashboard--visual .iws-account-card { min-height:103px; padding:20px; }
}

/* Final GROUND & TIDE wordmark dimensions. */
.iws-brand a,.iws-footer-brand { gap:9px; }
.iws-brand-wordmark,.iws-footer-brand span { font-family:'Marcellus',serif; font-size:15px; font-weight:400; letter-spacing:1.2px; line-height:1; white-space:nowrap; }
@media (min-width:761px) { .iws-header-inner { grid-template-columns:minmax(230px,1fr) auto minmax(230px,1fr); }.iws-brand-wordmark { font-size:17px; letter-spacing:1.4px; } }
@media (max-width:760px) { .iws-brand img { width:25px; height:25px; }.iws-brand-wordmark { font-size:12px !important; letter-spacing:.8px !important; } }

/* Use the full desktop header canvas so the brand sits at the requested left offset. */
@media (min-width:761px) {
	.iws-header-inner { width:calc(100% - clamp(52px,9.25vw,236px)); max-width:none; }
}

/* Separate the homepage editorial content from the footer. */
body.home .iws-footer { margin-top:32px; }
@media (max-width:760px) { body.home .iws-footer { margin-top:20px; } }

/* Guides and Support share Shop's text-only navigation treatment. */
.iws-nav-dropdown .iws-shop-menu-trigger.iws-shop-menu-link { margin:0; border:0; background:transparent; color:inherit; font:inherit; text-transform:inherit; cursor:pointer; }
.iws-nav-dropdown .iws-shop-menu-trigger.iws-shop-menu-link:hover,
.iws-nav-dropdown .iws-shop-menu-trigger.iws-shop-menu-link:focus-visible { color:#777; }

/* Primary header navigation uses an editorial all-caps rhythm. */
body .iws-header .iws-primary-nav > a,
body .iws-header .iws-shop-menu-link,
body .iws-header .iws-nav-dropdown .iws-shop-menu-trigger { letter-spacing:1.4px !important; text-transform:uppercase !important; }

/* Keep the dropdown inside the trigger's hover boundary: no dead gap. */
body .iws-header .iws-shop-menu-panel { top:100% !important; }

/* Give the three desktop header menus balanced, generous hover targets. */
@media (min-width:761px) {
	body .iws-header .iws-primary-nav { gap:9px; }
	body .iws-header .iws-primary-nav > .iws-shop-menu { width:112px; min-height:44px; justify-content:center; }
	body .iws-header .iws-primary-nav > .iws-shop-menu > .iws-shop-menu-link { display:inline-flex; width:100%; min-height:44px !important; justify-content:center; }
	body .iws-header .iws-navigation { transform:none; }
	body .iws-header .iws-header-actions { transform:translateX(320px); }
}

/* Final logo treatment: larger mark, monochrome over the transparent hero header. */
body .iws-header .iws-brand img { width:42px !important; height:42px !important; object-fit:contain; }
body .iws-header.iws-header--overlay .iws-brand img { filter:grayscale(1) brightness(0) invert(1) !important; }
body .iws-header.iws-header--overlay.iws-header--scrolled .iws-brand img { filter:none !important; }
@media (max-width:760px) {
	body .iws-header .iws-brand img { width:34px !important; height:34px !important; }
}

/* Mobile header: keep the nav and its panels inside the visible canvas. */
@media (max-width:760px) {
	body .iws-header .iws-navigation { overflow:visible; }
	body .iws-header .iws-primary-nav { min-width:0; width:100%; gap:8px; overflow:visible; justify-content:space-between; }
	body .iws-header .iws-primary-nav > .iws-shop-menu { flex:1 1 0; min-width:0; }
	body .iws-header .iws-primary-nav > .iws-shop-menu > .iws-shop-menu-link { width:100%; }
	body .iws-header .iws-shop-menu-panel { width:calc(100vw - 36px); max-width:calc(100vw - 36px); z-index:200; }
	body .iws-header .iws-primary-nav > .iws-shop-menu:nth-child(1) .iws-shop-menu-panel { left:0 !important; right:auto; transform:none; }
	body .iws-header .iws-primary-nav > .iws-shop-menu:nth-child(2) .iws-shop-menu-panel { left:50% !important; right:auto; transform:translateX(-50%); }
	body .iws-header .iws-primary-nav > .iws-shop-menu:nth-child(3) .iws-shop-menu-panel { left:auto !important; right:0; transform:none; }
}

/* Lightweight crystal motion layer: CSS-only, image-based, and safe to disable. */
.stones-home .stones-hero { isolation:isolate; overflow:hidden; }
.stones-home .stones-hero > img { transform:scale(1.015); animation:stones-hero-drift 16s ease-in-out infinite alternate; }
.stones-home .stones-hero::after { position:absolute; z-index:1; inset:0; background:linear-gradient(112deg,transparent 38%,rgba(255,255,255,.18) 49%,transparent 60%); content:""; pointer-events:none; transform:translateX(-100%); animation:stones-light-sweep 12s ease-in-out 1.5s infinite; }
.stones-home .stones-hero__copy { position:relative; z-index:2; animation:stones-copy-rise .8s cubic-bezier(.2,.75,.25,1) both; }
.stones-home .stones-collection,.stones-home .stones-products li.product,.stones-home .stones-journal__cards > a { transition:transform .4s ease,box-shadow .4s ease; }
.stones-home .stones-collection { overflow:hidden; }
.stones-home .stones-collection::after,.stones-home .stones-products li.product .iws-demo-visual::after,.stones-home .stones-journal__cards > a::before { position:absolute; z-index:2; inset:-45% -80%; background:linear-gradient(110deg,transparent 43%,rgba(255,255,255,.45) 50%,transparent 57%); content:""; pointer-events:none; transform:translateX(-58%) rotate(7deg); transition:transform .9s ease; }
.stones-home .stones-collection:hover,.stones-home .stones-products li.product:hover,.stones-home .stones-journal__cards > a:hover { transform:translateY(-5px); }
.stones-home .stones-collection:hover::after,.stones-home .stones-products li.product:hover .iws-demo-visual::after,.stones-home .stones-journal__cards > a:hover::before { transform:translateX(58%) rotate(7deg); }
.stones-home .stones-products li.product .iws-demo-visual { overflow:hidden; }
.stones-home .stones-products li.product .iws-demo-visual img { transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .65s ease; }
.stones-home .stones-products li.product:hover .iws-demo-visual img { transform:scale(1.045); filter:saturate(1.06) contrast(1.02); }
.stones-home .stones-story__image,.stones-home .stones-journal__feature { overflow:hidden; }
.stones-home .stones-story__image img,.stones-home .stones-journal__feature img { transition:transform 1.2s cubic-bezier(.2,.7,.2,1); }
.stones-home .stones-story:hover .stones-story__image img,.stones-home .stones-journal:hover .stones-journal__feature img { transform:scale(1.035); }
.stones-home .stones-collections__track { scroll-behavior:smooth; }
.stones-home.iws-motion-enabled .stones-section,.stones-home.iws-motion-enabled .stones-story,.stones-home.iws-motion-enabled .stones-journal { opacity:0; transform:translateY(20px); transition:opacity .7s ease,transform .7s ease; }
.stones-home.iws-motion-enabled .stones-section.iws-motion-visible,.stones-home.iws-motion-enabled .stones-story.iws-motion-visible,.stones-home.iws-motion-enabled .stones-journal.iws-motion-visible { opacity:1; transform:none; }
/* Product shelves must never start hidden: their native lazy images load as they enter view. */
.stones-home.iws-motion-enabled .stones-products { opacity:1; transform:none; }
@keyframes stones-hero-drift { 0% { transform:scale(1.015) translate3d(-.4%,0,0); } 100% { transform:scale(1.045) translate3d(.4%,-.5%,0); } }
@keyframes stones-light-sweep { 0%,35% { transform:translateX(-100%); } 58%,100% { transform:translateX(100%); } }
@keyframes stones-copy-rise { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:none; } }
@media (max-width:760px) { .stones-home .stones-hero > img { animation-duration:19s; }.stones-home .stones-hero::after { animation-duration:15s; }.stones-home .stones-collections__track { scroll-snap-type:x proximity; }.stones-home .stones-collection { scroll-snap-align:start; } }
@media (prefers-reduced-motion:reduce) { .stones-home .stones-hero > img,.stones-home .stones-hero::after,.stones-home .stones-hero__copy { animation:none; }.stones-home.iws-motion-enabled .stones-section,.stones-home.iws-motion-enabled .stones-story,.stones-home.iws-motion-enabled .stones-journal { opacity:1; transform:none; transition:none; } }

/* Trending now: two lightweight, offset product rails instead of a dense grid. */
.stones-products--hot .stones-marquee { display:grid; gap:14px; width:100%; overflow:hidden; }
.stones-products--hot .stones-marquee__lane { width:100%; overflow:hidden; contain:layout paint; }
.stones-products--hot .stones-marquee__track { display:flex; width:max-content; min-width:100%; will-change:transform; animation:stones-marquee-left 72s linear infinite; }
.stones-products--hot .stones-marquee__lane--reverse .stones-marquee__track { animation-name:stones-marquee-right; animation-duration:82s; }
.stones-products--hot .stones-marquee__track > .products { display:flex !important; flex:0 0 auto; width:auto !important; min-width:0; grid-template-columns:none !important; gap:14px !important; margin:0 !important; padding:0 !important; }
.stones-products--hot .stones-marquee__track > .products::before,.stones-products--hot .stones-marquee__track > .products::after { display:none !important; }
.stones-products--hot .stones-marquee__track > .products > li.product { display:block !important; flex:0 0 clamp(190px,20vw,270px); width:clamp(190px,20vw,270px) !important; min-width:clamp(190px,20vw,270px); margin:0 !important; padding:0 0 13px !important; }
.stones-products--hot .stones-marquee__track > .products > li.product .iws-demo-visual { aspect-ratio:1 / 1 !important; }
.stones-products--hot .stones-marquee__track > .products > li.product .iws-demo-visual img { object-fit:contain; object-position:center; background:#fff; }
.stones-products--hot .stones-marquee__track > .products > li.product .woocommerce-loop-product__title { min-height:2.35em; margin-top:9px !important; padding:0 2px !important; }
.stones-products--hot .stones-marquee__track > .products > li.product .price { padding:0 2px !important; }
.stones-products--hot .stones-marquee__track:hover,.stones-products--hot .stones-marquee__track:focus-within { animation-play-state:paused; }
/* Keep the heading inset while the trending product rails touch both viewport edges. */
.stones-products--hot .stones-marquee { margin-right:calc(-1 * clamp(24px, 2vw, 42px)); margin-left:calc(-1 * clamp(24px, 2vw, 42px)); width:calc(100% + clamp(48px, 4vw, 84px)); }
@keyframes stones-marquee-left { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@keyframes stones-marquee-right { from { transform:translateX(-50%); } to { transform:translateX(0); } }
@media (max-width:760px) {
	.stones-products--hot .stones-marquee { gap:9px; margin-right:-16px; margin-left:-16px; width:calc(100% + 32px); }
	.stones-products--hot .stones-marquee__track { animation-duration:58s; }
	.stones-products--hot .stones-marquee__lane--reverse .stones-marquee__track { animation-duration:64s; }
	.stones-products--hot .stones-marquee__track > .products { gap:9px !important; }
	.stones-products--hot .stones-marquee__track > .products > li.product { flex-basis:145px; width:145px !important; min-width:145px; padding-bottom:9px !important; }
}
@media (prefers-reduced-motion:reduce) {
	.stones-products--hot .stones-marquee__track,.stones-products--hot .stones-marquee__lane--reverse .stones-marquee__track { animation:none; overflow-x:auto; width:100%; padding-bottom:4px; }
	.stones-products--hot .stones-marquee__track > .products { width:max-content !important; }
}

/* Match New arrivals cards to the six-column Trending now card geometry. */
@media (min-width:761px) {
	.stones-products--hot .stones-marquee__track > .products > li.product { flex-basis:clamp(170px,calc((100vw - 184px) / 6),320px); width:clamp(170px,calc((100vw - 184px) / 6),320px) !important; min-width:clamp(170px,calc((100vw - 184px) / 6),320px); }
	.stones-products--hot .stones-marquee__track > .products > li.product .iws-demo-visual { aspect-ratio:1.46 !important; }
}
@media (max-width:760px) {
	.stones-products--hot .stones-marquee__track > .products > li.product { flex-basis:calc((100vw - 41px) / 2); width:calc((100vw - 41px) / 2) !important; min-width:calc((100vw - 41px) / 2); }
	.stones-products--hot .stones-marquee__track > .products > li.product .iws-demo-visual { aspect-ratio:1 / 1 !important; }
}

/* WooCommerce wraps each shortcode list in .woocommerce; size that wrapper too. */
.stones-products--hot .stones-marquee__track > .woocommerce { display:block !important; flex:0 0 auto; width:max-content !important; min-width:0 !important; }
.stones-products--hot .stones-marquee__track > .woocommerce > .products { display:flex !important; flex:0 0 auto; width:max-content !important; min-width:0 !important; grid-template-columns:none !important; gap:14px !important; margin:0 !important; padding:0 !important; }
.stones-products--hot .stones-marquee__track > .woocommerce > .products::before,.stones-products--hot .stones-marquee__track > .woocommerce > .products::after { display:none !important; }
.stones-products--hot .stones-marquee__track > .woocommerce > .products > li.product .iws-demo-visual img { object-fit:contain; object-position:center; background:#fff; }
@media (min-width:761px) {
	.stones-products--hot .stones-marquee__track > .woocommerce > .products > li.product { flex:0 0 clamp(170px,calc((100vw - 184px) / 6),320px); width:clamp(170px,calc((100vw - 184px) / 6),320px) !important; min-width:clamp(170px,calc((100vw - 184px) / 6),320px); }
	.stones-products--hot .stones-marquee__track > .woocommerce > .products > li.product .iws-demo-visual { aspect-ratio:1.46 !important; }
	.stones-products--hot .stones-marquee__track > .woocommerce > .products > li.product .iws-demo-visual img { object-fit:contain; object-position:center; background:#fff; }
}
@media (max-width:760px) {
	.stones-products--hot .stones-marquee__track > .woocommerce > .products { gap:9px !important; }
	.stones-products--hot .stones-marquee__track > .woocommerce > .products > li.product { flex:0 0 calc((100vw - 41px) / 2); width:calc((100vw - 41px) / 2) !important; min-width:calc((100vw - 41px) / 2); }
.stones-products--hot .stones-marquee__track > .woocommerce > .products > li.product .iws-demo-visual { aspect-ratio:1 / 1 !important; }
}

/* Final control pass: this block intentionally comes last so WooCommerce's
   late template rules cannot bring back the browser-default treatment. */
body.iws-site .woocommerce a.button,
body.iws-site .woocommerce button.button,
body.iws-site .woocommerce input.button,
body.iws-site .wc-block-components-button,
body.iws-site input[type='submit'],
body.iws-site input[type='button'],
body.iws-site input[type='reset'] {
	min-height:44px !important;
	border:1px solid var(--iws-control-ink) !important;
	border-radius:3px !important;
	background:var(--iws-control-ink) !important;
	color:#fff !important;
	box-shadow:none !important;
	font-weight:700 !important;
	letter-spacing:.7px;
	text-transform:uppercase;
}
body.iws-site .woocommerce a.button:hover,
body.iws-site .woocommerce a.button:focus-visible,
body.iws-site .woocommerce button.button:hover,
body.iws-site .woocommerce button.button:focus-visible,
body.iws-site .woocommerce input.button:hover,
body.iws-site .woocommerce input.button:focus-visible,
body.iws-site .wc-block-components-button:hover,
body.iws-site .wc-block-components-button:focus-visible,
body.iws-site input[type='submit']:hover,
body.iws-site input[type='submit']:focus-visible,
body.iws-site input[type='button']:hover,
body.iws-site input[type='button']:focus-visible,
body.iws-site input[type='reset']:hover,
body.iws-site input[type='reset']:focus-visible {
	border-color:var(--iws-control-focus) !important;
	background:var(--iws-control-focus) !important;
	color:var(--iws-control-ink) !important;
	box-shadow:0 0 0 3px rgba(212,170,112,.18) !important;
}
body.iws-site .woocommerce form .form-row input.input-text,
body.iws-site .woocommerce form .form-row select,
body.iws-site .woocommerce form .form-row textarea,
body.iws-site .wc-block-components-text-input input,
body.iws-site .wc-block-components-combobox .components-combobox-control__input,
body.iws-site .wc-block-components-select .wc-block-components-select__select {
	min-height:48px !important;
	border:1px solid var(--iws-control-line) !important;
	border-radius:3px !important;
	background:#fff !important;
	color:var(--iws-control-ink) !important;
	box-shadow:none !important;
}
body.iws-site .woocommerce form .form-row input.input-text:focus,
body.iws-site .woocommerce form .form-row select:focus,
body.iws-site .woocommerce form .form-row textarea:focus,
body.iws-site .wc-block-components-text-input input:focus,
body.iws-site .wc-block-components-combobox .components-combobox-control__input:focus,
body.iws-site .wc-block-components-select .wc-block-components-select__select:focus {
	border-color:var(--iws-control-ink) !important;
	box-shadow:0 0 0 3px rgba(212,170,112,.2) !important;
	outline:0;
}
body.iws-site .woocommerce-message,
body.iws-site .woocommerce-info,
body.iws-site .woocommerce-error,
body.iws-site .wc-block-components-notice-banner {
	border-radius:3px !important;
	box-shadow:none !important;
}
body.iws-site .iws-mini-cart-actions a,
body.iws-site .iws-mini-cart-continue { border-radius:3px !important; }
body.iws-site .woocommerce ul.products li.product .iws-quick-add { border-radius:3px !important; }

/* Header utility actions are icon controls, not filled buttons. */
body.iws-site .iws-header .iws-header-action,
body.iws-site .iws-header .iws-search-link,
body.iws-site .iws-header .iws-account-link,
body.iws-site .iws-header .iws-cart-link {
	min-height:32px !important;
	padding:4px !important;
	border:0 !important;
	border-radius:0 !important;
	background:transparent !important;
	box-shadow:none !important;
	color:inherit !important;
	text-transform:none;
}
body.iws-site .iws-header .iws-header-action:hover,
body.iws-site .iws-header .iws-header-action:focus-visible,
body.iws-site .iws-header .iws-search-link:hover,
body.iws-site .iws-header .iws-search-link:focus-visible,
body.iws-site .iws-header .iws-account-link:hover,
body.iws-site .iws-header .iws-account-link:focus-visible,
body.iws-site .iws-header .iws-cart-link:hover,
body.iws-site .iws-header .iws-cart-link:focus-visible {
	border:0 !important;
	background:transparent !important;
	box-shadow:none !important;
	color:inherit !important;
	transform:translateY(-1px);
	outline:2px solid currentColor;
	outline-offset:4px;
}
body.iws-site .iws-header .iws-cart-count { background:transparent !important; }

/* Quick sign-in close control: a true square with a centered glyph. */
body.iws-site .iws-quick-auth__panel .iws-quick-auth__close {
	position:absolute !important;
	top:18px !important;
	right:20px !important;
	display:grid !important;
	width:44px !important;
	height:44px !important;
	min-width:44px !important;
	min-height:44px !important;
	margin:0 !important;
	padding:0 !important;
	place-items:center !important;
	border:0 !important;
	border-radius:2px !important;
	background:#293c38 !important;
	color:#fff !important;
	font:700 20px/1 Arial,Helvetica,sans-serif !important;
	letter-spacing:0 !important;
	text-transform:none !important;
	transform:none !important;
	box-shadow:none !important;
}
body.iws-site .iws-quick-auth__panel .iws-quick-auth__close:hover,
body.iws-site .iws-quick-auth__panel .iws-quick-auth__close:focus-visible {
	border:0 !important;
	background:#d4aa70 !important;
	color:#273430 !important;
	box-shadow:0 0 0 3px rgba(212,170,112,.2) !important;
	outline:0 !important;
	transform:none !important;
}

/* Small icon controls must never inherit the 44px text-button contract. */
body.iws-site .iws-mini-cart-close,
body.iws-site .iws-cart-quantity-control,
body.iws-site .iws-product-quantity-control,
body.iws-site .iws-address-modal__close,
body.iws-site .iws-review-modal__close,
body.iws-site .iws-review-launch,
body.iws-site .iws-image-lightbox button,
body.iws-site .iws-mobile-gallery__previous,
body.iws-site .iws-mobile-gallery__next,
body.iws-site .iws-mobile-gallery__dots button {
	min-width:0 !important;
	min-height:0 !important;
	padding:0 !important;
	letter-spacing:0 !important;
	text-transform:none !important;
}

/* Cart increment/decrement: fixed cells, centered signs, no clipped labels. */
body.iws-site .iws-cart-line__quantity .quantity {
	display:inline-grid !important;
	grid-template-columns:31px 44px 31px !important;
	height:40px !important;
	overflow:hidden;
}
body.iws-site .iws-cart-line__quantity .iws-cart-quantity-control {
	display:grid !important;
	width:31px !important;
	height:38px !important;
	place-items:center !important;
	border:0 !important;
	border-radius:0 !important;
	background:#fff !important;
	color:#4f524e !important;
	font:400 19px/1 Arial,Helvetica,sans-serif !important;
	box-shadow:none !important;
	transform:none !important;
}
body.iws-site .iws-cart-line__quantity .iws-cart-quantity-control:hover,
body.iws-site .iws-cart-line__quantity .iws-cart-quantity-control:focus-visible {
	border:0 !important;
	background:#f0f0eb !important;
	color:#1c1e1b !important;
	box-shadow:inset 0 0 0 1px #d9dcd7 !important;
	outline:0 !important;
	transform:none !important;
}
body.iws-site .iws-cart-line__quantity .quantity input.qty {
	width:44px !important;
	height:38px !important;
	min-height:38px !important;
	padding:0 !important;
	border:solid #e1e2de !important;
	border-width:0 1px !important;
	border-radius:0 !important;
	background:#fff !important;
	font-size:14px !important;
	line-height:38px !important;
	text-align:center !important;
	box-shadow:none !important;
}

/* Product-page quantity uses the same centered icon language at its smaller size. */
body.iws-site .grndtide-product-summary .iws-product-quantity-control {
	display:grid !important;
	width:36px !important;
	height:36px !important;
	place-items:center !important;
	padding:0 !important;
	border:1px solid #d5d5d1 !important;
	background:#fff !important;
	color:#333 !important;
	font:400 17px/1 Arial,Helvetica,sans-serif !important;
	box-shadow:none !important;
}
body.iws-site .grndtide-product-summary .iws-product-quantity-control:hover,
body.iws-site .grndtide-product-summary .iws-product-quantity-control:focus-visible {
	background:#f1f1ee !important;
	box-shadow:inset 0 0 0 1px #d5d5d1 !important;
	color:#1c1e1b !important;
	outline:0 !important;
}

/* Gallery controls remain compact, even though they are real buttons. */
body.iws-site .iws-image-lightbox button {
	display:grid !important;
	width:42px !important;
	height:42px !important;
	place-items:center !important;
	border:1px solid rgba(255,255,255,.7) !important;
	border-radius:0 !important;
	background:transparent !important;
	color:#fff !important;
	font:400 24px/1 Arial,Helvetica,sans-serif !important;
	box-shadow:none !important;
}
body.iws-site .iws-image-lightbox button:hover,
body.iws-site .iws-image-lightbox button:focus-visible {
	border-color:var(--grndtide-accent) !important;
	background:transparent !important;
	color:var(--grndtide-accent) !important;
	box-shadow:0 0 0 3px rgba(199,255,62,.18) !important;
	outline:0 !important;
}
body.iws-site .iws-header .iws-shop-menu-trigger {
	min-height:30px !important;
	padding:0 !important;
	border:0 !important;
	border-radius:0 !important;
	background:transparent !important;
	color:inherit !important;
	letter-spacing:inherit;
	text-transform:uppercase;
	box-shadow:none !important;
}

@media (max-width:760px) {
	body.iws-site .iws-cart-line__quantity .quantity { grid-template-columns:39px 42px 39px !important; height:43px !important; }
	body.iws-site .iws-cart-line__quantity .iws-cart-quantity-control { width:39px !important; height:41px !important; }
	body.iws-site .iws-cart-line__quantity .quantity input.qty { width:42px !important; height:41px !important; min-height:41px !important; line-height:41px !important; }
	body.iws-site .iws-image-lightbox button { width:38px !important; height:38px !important; }
}

/* Cart checkout text must remain visible over the dark action surface. */
body.iws-site .iws-cart-summary .checkout-button,
body.iws-site .iws-cart-summary .checkout-button span {
	display:inline-flex !important;
	align-items:center !important;
	justify-content:center !important;
	visibility:visible !important;
	opacity:1 !important;
	color:#fff !important;
	font-family:Arial,Helvetica,sans-serif !important;
	font-size:13px !important;
	font-weight:800 !important;
	line-height:1 !important;
	text-indent:0 !important;
	text-transform:uppercase;
}
body.iws-site .iws-cart-summary .checkout-button {
	background:#1e211f !important;
	text-decoration:none !important;
}
body.iws-site .iws-cart-summary .checkout-button:hover,
body.iws-site .iws-cart-summary .checkout-button:focus-visible {
	background:#343833 !important;
	color:#fff !important;
}

/* Keep the CTA label visible even when a WooCommerce button style hides the
   anchor text node. The arrow remains the existing accessible span. */
body.iws-site .iws-cart-summary .checkout-button {
	font-size:0 !important;
}
body.iws-site .iws-cart-summary .checkout-button::before {
	content:'Checkout';
	display:inline-block;
	color:#fff !important;
	font:800 13px/1 Arial,Helvetica,sans-serif !important;
	letter-spacing:1.8px;
	text-transform:uppercase;
}
body.iws-site .iws-cart-summary .checkout-button > span {
	display:inline-flex !important;
	color:#fff !important;
	font-size:13px !important;
}

/* Full-site tablet and phone containment pass. These rules intentionally sit
 * last: older templates contain several desktop-only minimum widths. */
*, *::before, *::after { box-sizing:border-box; }
html, body { width:100%; max-width:100%; }
body { overflow-x:clip; }
img, video, canvas, iframe { max-width:100%; }
table { max-width:100%; }

@media (max-width:1100px) {
	.iws-container, .iws-main, .iws-page, .iws-policy-shell, .iws-cart-page { max-width:100%; min-width:0; }
	.iws-main { width:calc(100% - 32px); padding-top:42px; padding-bottom:64px; }
	.iws-page { width:100%; }
	body .iws-header .iws-header-inner { width:calc(100% - 32px); grid-template-columns:minmax(145px,1fr) auto minmax(120px,1fr); gap:16px; }
	body .iws-header .iws-brand { transform:none !important; min-width:0; }
	body .iws-header .iws-brand-wordmark { font-size:clamp(22px,3vw,29px) !important; letter-spacing:1px; }
	body .iws-header .iws-primary-nav { gap:15px; }
	body .iws-header .iws-primary-nav > a,
	body .iws-header .iws-shop-menu-link,
	body .iws-header .iws-nav-dropdown .iws-shop-menu-trigger { font-size:11px !important; }
	body .iws-header .iws-header-actions { gap:12px; }
	.grndtide-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.grndtide-product-section .products, .grndtide-shop > .products, .grndtide-related .products { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.grndtide-product-primary, .single-product .grndtide-product-primary { grid-template-columns:minmax(0,1fr) minmax(280px,.8fr); gap:18px; width:100%; }
	.single-product .grndtide-product-media .grndtide-product-gallery { grid-template-columns:82px 82px minmax(0,1fr) !important; gap:7px; }
	.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual { width:82px; }
	.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual:first-child { height:clamp(390px,52vw,580px); }
	.grndtide-product-summary, .grndtide-product-reviews { min-width:0; }
	.grndtide-newsletter { gap:36px; padding-right:5vw; padding-left:5vw; }
	.iws-footer-grid { grid-template-columns:1.4fr repeat(3,minmax(0,1fr)); gap:24px; }
	.iws-policy-shell { grid-template-columns:205px minmax(0,1fr); }
	.iws-policy-nav { padding-left:24px; }
	.iws-cart-page { padding-right:24px; padding-left:24px; }
}

@media (max-width:900px) {
	.iws-main { width:calc(100% - 28px); }
	.grndtide-product-primary, .single-product .grndtide-product-primary { display:block; width:100%; }
	.grndtide-product-media { width:100%; }
	.grndtide-product-primary .grndtide-product-summary, .single-product .grndtide-product-primary .grndtide-product-summary { position:static; width:100%; max-height:none; margin-top:20px; padding:28px 24px; }
	.single-product .grndtide-product-media .grndtide-product-gallery { grid-template-columns:72px 72px minmax(0,1fr) !important; }
	.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual { width:72px; }
	.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual:first-child { height:clamp(340px,58vw,520px); }
	.grndtide-product-reviews #reviews { grid-template-columns:1fr; gap:28px; }
	.grndtide-product-reviews #comments { padding-right:0; padding-bottom:28px; border-right:0; border-bottom:1px solid var(--grndtide-line); }
	.woocommerce-account.logged-in .woocommerce { grid-template-columns:1fr; gap:18px; }
	.woocommerce-account.logged-in .woocommerce > .woocommerce-MyAccount-navigation { width:100%; }
	.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero { grid-template-columns:1fr; min-height:340px; }
	.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__hero-image { inset:0; opacity:.45; }
	.woocommerce-account .iws-account-dashboard--visual .iws-account-dashboard__grid { grid-template-columns:1fr; }
	.iws-cart-workspace { grid-template-columns:1fr; height:auto; min-height:0; }
	.iws-cart-products { height:auto; min-height:480px; }
	.iws-cart-summary { margin-top:18px; }
	form.woocommerce-checkout { width:100%; max-width:none; }
	.woocommerce-checkout form.woocommerce-checkout { display:block; }
	.woocommerce-checkout #customer_details, .woocommerce-checkout .col2-set { width:100%; }
	.iws-policy-shell { display:block; width:100%; border:0; }
	.iws-policy-nav { display:none; }
	.iws-policy-article { width:100%; padding-right:28px; padding-left:28px; }
	.iws-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
}

@media (max-width:760px) {
	html, body { overflow-x:clip; }
	.iws-main { width:100%; padding:32px 14px 54px; }
	.iws-page { width:100%; }
	body .iws-header .iws-header-inner { width:calc(100% - 20px); min-height:60px; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
	body .iws-header .iws-brand-wordmark { max-width:100%; overflow:hidden; font-size:clamp(18px,6vw,24px) !important; text-overflow:ellipsis; }
	body .iws-header .iws-brand img { width:20px; height:24px; }
	body .iws-header .iws-navigation { grid-column:1/-1; width:100%; max-width:100%; overflow-x:auto; overflow-y:hidden; }
	body .iws-header .iws-primary-nav { width:max-content; min-width:100%; gap:17px; padding:6px 0 9px; }
	body .iws-header .iws-primary-nav > a,
	body .iws-header .iws-shop-menu-link,
	body .iws-header .iws-nav-dropdown .iws-shop-menu-trigger { min-height:24px !important; font-size:10px !important; line-height:24px; }
	body .iws-header .iws-header-actions { gap:8px; }
	body .iws-header .iws-action-icon { width:18px !important; height:18px !important; }
	body .iws-header.iws-header--overlay { margin-bottom:-95px; }
	.grndtide-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.grndtide-category { min-height:210px; padding:16px; }
	.grndtide-product-section .products, .grndtide-shop > .products, .grndtide-related .products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
	.grndtide-section-header, .grndtide-related > header { gap:12px; padding-right:14px; padding-left:14px; }
	.grndtide-section-header h2, .grndtide-related > header h2 { min-width:0; font-size:clamp(21px,7vw,30px); }
	.grndtide-section-header a, .grndtide-related > header a { flex:0 0 auto; }
	.grndtide-product-primary .grndtide-product-summary, .single-product .grndtide-product-primary .grndtide-product-summary { margin-top:0; padding:22px 16px; }
	.single-product .grndtide-product-page { padding-right:0; padding-left:0; }
	.single-product .grndtide-product-media .grndtide-product-gallery { display:flex !important; width:100%; max-width:100%; overflow-x:auto; gap:0; }
	.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual,
	.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual:first-child { flex:0 0 100%; width:100%; height:auto; min-height:0; aspect-ratio:1.2 / 1; }
	.single-product .grndtide-product-heading { gap:10px; }
	.single-product .grndtide-product-heading__actions { flex:0 0 auto; }
	.grndtide-product-reviews { display:none; }
	.grndtide-product-details, .single-product .grndtide-product-layout > .grndtide-product-details { width:100%; grid-template-columns:1fr; }
	.grndtide-product-details > button { min-width:0; border-right:0; border-bottom:1px solid var(--grndtide-line); }
	.grndtide-shop-header { padding:28px 14px 14px; }
	.grndtide-shop-header h1 { font-size:clamp(38px,12vw,54px); overflow-wrap:anywhere; }
	.grndtide-shop-tools { padding:12px 14px; }
	.grndtide-shop-categories { max-width:100%; overflow-x:auto; }
	.woocommerce ul.products li.product .iws-loop-purchase-controls { grid-template-columns:minmax(0,1fr) 52px; }
	.woocommerce ul.products li.product .iws-loop-purchase-controls .iws-loop-sku-options { padding-right:6px !important; padding-left:6px !important; }
	.iws-cart-page { padding:16px 14px 36px; }
	.iws-cart-hero { margin-right:0; margin-left:0; }
	.iws-cart-line { min-width:0; }
	.iws-cart-line h3, .iws-cart-line__meta { overflow-wrap:anywhere; }
	.iws-cart-recommendations__grid.products { max-width:100%; overflow-x:auto; animation:none; }
	.iws-cart-recommendations__grid.products li.product { flex-basis:132px; width:132px !important; min-width:132px; }
	.woocommerce-cart-form { width:100%; max-width:100%; overflow-x:auto; }
	.woocommerce-cart-form table.cart { min-width:620px; }
	.woocommerce-checkout form.woocommerce-checkout { width:100%; padding:28px 0 50px; }
	.woocommerce-checkout-review-order { padding:14px; }
	.iws-policy-article { padding:24px 20px 4px; }
	.iws-policy-header h1 { font-size:clamp(34px,11vw,43px); overflow-wrap:anywhere; }
	.iws-footer-grid { width:calc(100% - 28px); grid-template-columns:1fr; gap:26px; }
	.iws-footer-bottom { width:calc(100% - 28px); flex-direction:column; align-items:flex-start; }
	.iws-footer-editorial__top { grid-template-columns:1fr; }
	.iws-footer-editorial__resource-nav { grid-template-columns:1fr; }
	.iws-mini-cart-panel, .iws-account-menu-panel { right:10px; width:min(360px,calc(100vw - 20px)); max-width:calc(100vw - 20px); }
	.iws-quick-auth__panel { width:calc(100vw - 28px); max-width:calc(100vw - 28px); }
	.iws-image-lightbox { grid-template-columns:38px minmax(0,1fr) 38px; padding-right:8px; padding-left:8px; }
}

@media (max-width:380px) {
	.iws-main { padding-right:10px; padding-left:10px; }
	body .iws-header .iws-brand-wordmark { font-size:18px !important; }
	.grndtide-category { min-height:180px; padding:12px; }
	.grndtide-product-section .products, .grndtide-shop > .products, .grndtide-related .products { gap:6px; }
	.iws-cart-page { padding-right:10px; padding-left:10px; }
	.iws-cart-line { grid-template-columns:118px minmax(0,1fr) 22px; gap:0 10px; }
	.iws-cart-line__image { width:118px; }
}

/* Tablet product-card correction. Desktop catalog fallback rules must not
 * impose a 760px canvas or four narrow columns on a tablet. */
@media (min-width:761px) and (max-width:1100px) {
	.stones-home .stones-products .products,
	.stones-home .stones-products > .woocommerce > ul.products { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:18px 14px !important; width:100% !important; min-width:0 !important; }
	.stones-home .stones-products .products li.product { min-width:0 !important; width:auto !important; }
	.stones-home .stones-products .woocommerce-loop-product__title { min-height:3.2em !important; max-height:3.2em; overflow:hidden; font-size:12px !important; line-height:1.18; }
	.stones-home .stones-products .price { font-size:11px !important; }
	.stones-home .stones-products .iws-loop-purchase-controls { grid-template-columns:minmax(0,1fr) 52px !important; min-height:56px !important; }
	.stones-home .stones-products .iws-loop-sku-options { gap:4px !important; padding:8px 6px !important; }
	.stones-home .stones-products .iws-loop-sku-option { width:calc((100% - 4px) / 2) !important; min-width:0 !important; max-width:100% !important; font-size:9px !important; }
	.stones-home .stones-products .iws-loop-purchase-controls .iws-quick-add { width:36px !important; min-width:36px !important; height:36px !important; min-height:36px !important; }

	body.archive.post-type-archive-product .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-catalog-layout,
	body.tax-grndtide_collection .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-catalog-layout { display:grid !important; grid-template-columns:190px minmax(0,1fr) !important; width:calc(100% - 32px) !important; min-width:0 !important; margin:0 auto !important; column-gap:22px !important; }
	body.archive.post-type-archive-product .grndtide-catalog-filters,
	body.tax-product_cat .grndtide-catalog-filters,
	body.tax-grndtide_collection .grndtide-catalog-filters,
	body.tax-grndtide_stone .grndtide-catalog-filters { position:sticky !important; top:82px !important; left:auto !important; width:auto !important; max-height:calc(100vh - 110px) !important; padding-right:16px !important; overflow-y:auto !important; }
	body.archive.post-type-archive-product .grndtide-catalog-results > ul.products,
	body.tax-product_cat .grndtide-catalog-results > ul.products,
	body.tax-grndtide_collection .grndtide-catalog-results > ul.products,
	body.tax-grndtide_stone .grndtide-catalog-results > ul.products { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:14px !important; width:100% !important; min-width:0 !important; }
	body.archive.post-type-archive-product .grndtide-catalog-results .woocommerce-loop-product__title,
	body.tax-product_cat .grndtide-catalog-results .woocommerce-loop-product__title,
	body.tax-grndtide_collection .grndtide-catalog-results .woocommerce-loop-product__title,
	body.tax-grndtide_stone .grndtide-catalog-results .woocommerce-loop-product__title { min-height:3.35em !important; max-height:3.35em; overflow:hidden; padding:0 10px !important; margin:10px 0 5px !important; font-size:12px !important; line-height:1.16; overflow-wrap:normal; word-break:normal; }
	body.archive.post-type-archive-product .grndtide-catalog-results .price,
	body.tax-product_cat .grndtide-catalog-results .price,
	body.tax-grndtide_collection .grndtide-catalog-results .price,
	body.tax-grndtide_stone .grndtide-catalog-results .price { padding:0 10px !important; font-size:11px !important; }
	.grndtide-catalog-results .iws-loop-sku-options { gap:4px !important; padding:7px 5px !important; }
	.grndtide-catalog-results .iws-loop-sku-option { width:calc((100% - 4px) / 2) !important; min-width:0 !important; max-width:100% !important; font-size:8px !important; }
	.grndtide-catalog-results > .products li.product .iws-loop-purchase-controls { grid-template-columns:minmax(0,1fr) 48px !important; min-height:52px !important; }
	.grndtide-catalog-results .iws-loop-purchase-controls .iws-quick-add { width:34px !important; min-width:34px !important; height:34px !important; min-height:34px !important; }
}

@media (min-width:761px) and (max-width:900px) {
	body.archive.post-type-archive-product .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-catalog-layout,
	body.tax-grndtide_collection .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-catalog-layout { grid-template-columns:176px minmax(0,1fr) !important; column-gap:18px !important; }
	body.archive.post-type-archive-product .grndtide-catalog-results > ul.products,
	body.tax-product_cat .grndtide-catalog-results > ul.products,
	body.tax-grndtide_collection .grndtide-catalog-results > ul.products,
	body.tax-grndtide_stone .grndtide-catalog-results > ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:16px !important; }
	.stones-home .stones-products .products,
	.stones-home .stones-products > .woocommerce > ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:16px 12px !important; }
}

@media (max-width:760px) {
	.stones-home .stones-products .products,
	.stones-home .stones-products > .woocommerce > ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
	.grndtide-catalog-results .woocommerce-loop-product__title { overflow-wrap:normal; word-break:normal; }
}

/* Tablet catalog uses the same floating filter sheet as phone. Keeping the
 * filter out of the grid gives product cards their full readable width. */
@media (min-width:761px) and (max-width:1100px) {
	.post-type-archive-product .grndtide-shop,
	.tax-product_cat .grndtide-shop,
	.tax-grndtide_collection .grndtide-shop,
	.tax-grndtide_stone .grndtide-shop { padding:0 16px 64px !important; }
	.post-type-archive-product .grndtide-shop-header,
	.tax-product_cat .grndtide-shop-header,
	.tax-grndtide_collection .grndtide-shop-header,
	.tax-grndtide_stone .grndtide-shop-header { width:calc(100% + 32px) !important; height:clamp(150px,22vw,230px) !important; margin-left:-16px !important; }
	.grndtide-mobile-catalog-tools { display:flex; gap:9px; padding:14px 0 12px; overflow-x:auto; scrollbar-width:none; }
	.grndtide-mobile-catalog-tools::-webkit-scrollbar { display:none; }
	.grndtide-mobile-catalog-tools button { display:inline-flex; min-height:42px; flex:0 0 auto; align-items:center; gap:8px; padding:0 14px; border:1px solid #d7d6d2; border-radius:22px; background:#fff; color:#171717; font:13px/1 Arial,Helvetica,sans-serif; white-space:nowrap; }
	.grndtide-mobile-catalog-tools .grndtide-catalog-tool-icon { font-size:18px; transform:rotate(180deg); }
	.grndtide-mobile-catalog-tools .grndtide-catalog-sort-icon { font-size:20px; line-height:1; }
	.grndtide-catalog-layout { display:block !important; width:100% !important; min-width:0 !important; padding-top:0 !important; }
	.grndtide-catalog-results { width:100% !important; min-width:0 !important; }
	.grndtide-catalog-results .grndtide-shop-tools { min-height:58px; }
	.grndtide-catalog-results > .products { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:16px !important; margin-top:16px !important; width:100% !important; }
	.grndtide-catalog-results > .products li.product { min-width:0 !important; width:auto !important; }
	.grndtide-catalog-results .woocommerce-loop-product__title { min-height:3.2em !important; max-height:3.2em; overflow:hidden; padding:0 10px !important; margin:10px 0 4px !important; font-size:13px !important; line-height:1.16; overflow-wrap:normal; word-break:normal; }
	.grndtide-catalog-results .price { padding:0 10px !important; font-size:11px !important; }

	.grndtide-catalog-filters { position:fixed !important; z-index:130 !important; top:50% !important; right:auto !important; bottom:auto !important; left:50% !important; display:block !important; width:min(calc(100% - 48px),560px) !important; max-height:min(82vh,720px) !important; margin:0 !important; padding:0 24px 24px !important; overflow-y:auto !important; border:0 !important; border-radius:6px !important; background:#fff !important; box-shadow:0 18px 55px rgba(0,0,0,.28) !important; opacity:0; pointer-events:none; transform:translate(-50%,calc(-50% + 18px)); visibility:hidden; transition:opacity .2s ease,transform .25s ease,visibility .2s ease; }
	.grndtide-catalog-filters.is-open { opacity:1; pointer-events:auto; transform:translate(-50%,-50%); visibility:visible; }
	.grndtide-catalog-filters .grndtide-filter-form { display:block !important; }
	.grndtide-catalog-filters .grndtide-filter-heading { position:sticky; top:0; z-index:2; display:flex !important; min-height:64px; margin:0 -24px !important; padding:0 24px !important; align-items:center; border-bottom:1px solid #d8d8d4; background:#fff; }
	.grndtide-catalog-filters .grndtide-filter-heading > div { display:flex; gap:16px; align-items:center; }
	.grndtide-catalog-filters .grndtide-filter-close { display:grid !important; width:32px; height:32px; padding:0; place-items:center; border:1px solid #c9cbc6; border-radius:50%; background:#fff; color:#222; font:24px/1 Arial,sans-serif; }
	.grndtide-catalog-filters .grndtide-filter-group { display:block !important; min-width:0; padding:20px 0 !important; border-bottom:1px solid #deded9 !important; }
	.grndtide-catalog-filters .grndtide-filter-group--search { display:block !important; }
	.grndtide-catalog-filters .grndtide-filter-choice { display:flex !important; min-height:30px; padding:5px 0 !important; }
	.grndtide-catalog-filters .grndtide-filter-choice input { position:static !important; opacity:1 !important; pointer-events:auto !important; }
	.grndtide-catalog-filters .grndtide-filter-choice span { display:flex !important; white-space:normal !important; }
	.grndtide-catalog-filters .grndtide-filter-group a { display:flex; min-height:0; padding:6px 0; border:0; background:transparent; font-family:'Marcellus',serif; line-height:1.25; }
	.grndtide-catalog-filters .grndtide-filter-group a::after,
	.grndtide-catalog-filters .grndtide-filter-choice span::after { display:none; }
	.grndtide-catalog-filters .grndtide-filter-apply { position:sticky; bottom:0; z-index:2; display:block !important; width:100%; min-height:48px; margin:20px 0 0 !important; }
	.grndtide-mobile-filter-trigger { position:fixed !important; z-index:120 !important; right:18px !important; bottom:calc(18px + env(safe-area-inset-bottom)) !important; display:inline-flex !important; min-height:46px; align-items:center; gap:8px; padding:0 16px; border:0; border-radius:3px; background:#242422; color:#fff; box-shadow:0 7px 20px rgba(0,0,0,.22); font:800 11px/1 Arial,Helvetica,sans-serif; letter-spacing:.45px; }
	.grndtide-mobile-filter-trigger span { font-size:18px; line-height:1; }
	.grndtide-filter-count { display:grid; min-width:18px; height:18px; padding:0 4px; border-radius:9px; background:var(--grndtide-accent); color:var(--grndtide-ink); place-items:center; font:800 10px/1 Arial,Helvetica,sans-serif; }
	.grndtide-filter-count[hidden] { display:none; }
	.grndtide-mobile-filter-backdrop { position:fixed !important; z-index:125 !important; inset:0; display:block; background:rgba(18,18,17,.46); }
	.grndtide-mobile-filter-backdrop[hidden] { display:none; }
	.grndtide-filters-open { overflow:hidden; }
	.grndtide-filters-open .grndtide-mobile-filter-trigger { opacity:0; pointer-events:none; }
}

@media (min-width:761px) and (max-width:900px) {
	.grndtide-catalog-results > .products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:18px !important; }
}

/* Responsive header guardrails: keep the action controls visible at every width. */
@media (min-width:761px) and (max-width:1200px) {
	body .iws-header .iws-header-actions { transform:none !important; }
}
@media (max-width:760px) {
	body .iws-header .iws-header-inner { width:calc(100% - 20px); min-height:60px; grid-template-columns:minmax(0,1fr) auto; gap:6px; }
	body .iws-header .iws-brand { min-width:0; transform:none !important; }
	body .iws-header .iws-brand a { min-width:0; max-width:100%; gap:5px; }
	body .iws-header .iws-brand img { width:25px !important; height:25px !important; flex:0 0 auto; }
	body .iws-header .iws-brand-wordmark { max-width:100%; overflow:hidden; font-size:clamp(17px,6vw,23px) !important; letter-spacing:.8px !important; text-overflow:ellipsis; white-space:nowrap; }
	body .iws-header .iws-header-actions { display:flex !important; grid-area:1/2; min-width:0; gap:7px; transform:none !important; }
	body .iws-header .iws-header-action { flex:0 0 auto; }
	body .iws-header .iws-action-icon { width:19px !important; height:19px !important; }
	body .iws-header .iws-navigation { grid-column:1/-1; width:100%; max-width:100%; overflow:visible; }
	body .iws-header .iws-primary-nav { width:100%; min-width:0; gap:6px; padding:6px 0 9px; overflow:visible; }
	body .iws-header .iws-primary-nav > .iws-shop-menu { flex:1 1 0; min-width:0; }
	body .iws-header .iws-primary-nav > .iws-shop-menu > .iws-shop-menu-link { width:100%; min-height:26px !important; font-size:10px !important; }
}
@media (max-width:380px) {
	body .iws-header .iws-brand-wordmark { font-size:16px !important; }
	body .iws-header .iws-brand img { width:22px !important; height:22px !important; }
	body .iws-header .iws-header-actions { gap:5px; }
	body .iws-header .iws-action-icon { width:18px !important; height:18px !important; }
}

/* Some tablets report a 1200px-ish CSS viewport. Apply the floating catalog
 * treatment through that range so the physical tablet width cannot expose the
 * desktop 480px sidebar geometry. */
@media (min-width:761px) and (max-width:1280px) {
	.grndtide-shop .grndtide-catalog-layout { display:block !important; width:100% !important; min-width:0 !important; max-width:none !important; margin:0 !important; padding:0 !important; }
	.grndtide-shop .grndtide-catalog-results { display:block !important; width:100% !important; min-width:0 !important; margin:0 !important; }
	.grndtide-shop .grndtide-catalog-results > ul.products { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; width:100% !important; min-width:0 !important; gap:18px !important; margin:16px 0 0 !important; }
	.grndtide-shop .grndtide-catalog-results > ul.products > li.product { display:flex !important; width:auto !important; min-width:0 !important; margin:0 !important; float:none !important; }
	.grndtide-shop .grndtide-mobile-catalog-tools { position:static !important; display:flex !important; width:100% !important; min-height:0 !important; margin:0 !important; padding:14px 0 12px !important; }
	.grndtide-shop .grndtide-catalog-filters { position:fixed !important; z-index:130 !important; top:50% !important; right:auto !important; bottom:auto !important; left:50% !important; display:block !important; width:min(calc(100% - 48px),560px) !important; max-height:82vh !important; margin:0 !important; padding:0 24px 24px !important; overflow-y:auto !important; border:0 !important; border-radius:6px !important; background:#fff !important; box-shadow:0 18px 55px rgba(0,0,0,.28) !important; opacity:0; pointer-events:none; transform:translate(-50%,calc(-50% + 18px)); visibility:hidden; }
	.grndtide-shop .grndtide-catalog-filters.is-open { opacity:1; pointer-events:auto; transform:translate(-50%,-50%); visibility:visible; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-form { display:block !important; width:100% !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-heading { position:sticky !important; top:0 !important; z-index:2; display:flex !important; min-height:64px; margin:0 -24px !important; padding:0 24px !important; align-items:center; border-bottom:1px solid #d8d8d4; background:#fff; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-heading > div { display:flex; gap:16px; align-items:center; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-close { display:grid !important; width:32px; height:32px; padding:0; place-items:center; border:1px solid #c9cbc6; border-radius:50%; background:#fff; color:#222; font:24px/1 Arial,sans-serif; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-group { display:block !important; padding:20px 0 !important; border-bottom:1px solid #deded9 !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-choice { display:flex !important; min-height:30px; padding:5px 0 !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-choice input { position:static !important; opacity:1 !important; pointer-events:auto !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-choice span { display:flex !important; white-space:normal !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-apply { position:sticky !important; bottom:0 !important; z-index:2; display:block !important; width:100% !important; min-height:48px; margin:20px 0 0 !important; }
	.grndtide-shop .grndtide-mobile-filter-trigger { position:fixed !important; z-index:120 !important; right:18px !important; bottom:18px !important; display:inline-flex !important; min-height:46px; align-items:center; gap:8px; padding:0 16px; border:0; border-radius:3px; background:#242422; color:#fff; box-shadow:0 7px 20px rgba(0,0,0,.22); font:800 11px/1 Arial,Helvetica,sans-serif; }
	.grndtide-shop .grndtide-mobile-filter-backdrop { position:fixed !important; z-index:125 !important; inset:0; display:block; background:rgba(18,18,17,.46); }
	.grndtide-shop .grndtide-mobile-filter-backdrop[hidden] { display:none !important; }
	.grndtide-shop .grndtide-filters-open { overflow:hidden; }

	/* The former desktop filter selector includes body.archive and two shop
	 * classes, so it otherwise wins over the tablet dialog rule and leaves the
	 * tall filter aside in normal flow as an empty white block. */
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-catalog-filters,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters {
		position:fixed !important;
		display:none !important;
		top:50% !important;
		right:auto !important;
		bottom:auto !important;
		left:50% !important;
		width:min(calc(100% - 48px),560px) !important;
		height:auto !important;
		min-height:0 !important;
		margin:0 !important;
		transform:translate(-50%,calc(-50% + 18px)) !important;
	}
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open {
		display:block !important;
		transform:translate(-50%,-50%) !important;
	}
}

@media (min-width:761px) and (max-width:900px) {
	.grndtide-shop .grndtide-catalog-results > ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}

/* Restore the online product-detail media contract. The live template uses
 * direct gallery items: two thumbnail columns followed by the hero image. */
@media (min-width:761px) {
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery {
		display:grid !important;
		grid-template-columns:114px 114px minmax(0,1fr) !important;
		grid-auto-flow:row;
		grid-auto-rows:min-content;
		gap:10px;
		height:auto;
		overflow:visible;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery > .iws-demo-visual {
		grid-column:auto;
		grid-row:auto;
		width:114px;
		height:114px;
		min-height:0;
		aspect-ratio:1;
		border:1px solid transparent;
		background:transparent;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery > .iws-demo-visual:first-child {
		grid-column:3;
		grid-row:1 / span 20;
		width:auto;
		height:clamp(500px,54vw,700px);
		aspect-ratio:auto;
		border:0;
		cursor:zoom-in;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery > .iws-demo-visual > img {
		display:block;
		width:100%;
		height:100%;
		min-height:0;
		object-fit:cover !important;
		object-position:center;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery > .iws-demo-visual:first-child > img { object-fit:contain !important; }
}

/* Global rounded-pill feedback surface. WooCommerce notices and client-side
 * status messages are promoted here by main.js, so every alert has one visual
 * language and one predictable live region (WCAG 4.1.3). */
.pill-toast-root { position:fixed; top:24px; left:50%; z-index:99999; display:flex; width:min(calc(100vw - 32px),520px); flex-direction:column; align-items:center; gap:10px; pointer-events:none; transform:translateX(-50%); }
.pill-toast { pointer-events:auto; display:flex; width:max-content; max-width:100%; min-height:42px; align-items:center; gap:10px; padding:10px 22px; border-radius:50px; background:linear-gradient(135deg,#667eea,#764ba2); color:#fff; font-size:14px; line-height:1.4; font-weight:500; box-shadow:0 8px 24px rgba(102,126,234,.45); backdrop-filter:blur(10px); animation:pillToastIn .35s cubic-bezier(.21,1.02,.73,1); }
.pill-toast.out { animation:pillToastOut .3s ease forwards; }
.pill-toast .pill-icon { display:flex; width:18px; height:18px; flex:0 0 18px; align-items:center; justify-content:center; color:#fff; font-size:14px; font-weight:800; }
.pill-toast .pill-text { min-width:0; flex:1 1 auto; overflow-wrap:anywhere; }
.pill-toast .pill-action { flex:0 0 auto; color:#fff; font-size:12px; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.pill-toast .pill-action:hover,.pill-toast .pill-action:focus-visible { color:#fff; text-decoration-thickness:2px; }
.pill-toast .pill-close { width:24px; height:24px; flex:0 0 24px; padding:0 2px; border:0; border-radius:50%; background:transparent; color:rgba(255,255,255,.72); font-size:18px; line-height:1; cursor:pointer; }
.pill-toast .pill-close:hover,.pill-toast .pill-close:focus-visible { color:#fff; background:rgba(255,255,255,.16); outline:2px solid rgba(255,255,255,.85); outline-offset:2px; }
@keyframes pillToastIn { from { opacity:0; transform:translateY(-16px) scale(.95); } to { opacity:1; transform:translateY(0) scale(1); } }
@keyframes pillToastOut { to { opacity:0; transform:translateY(-12px) scale(.95); } }
@media (max-width:760px) { .pill-toast-root { top:14px; width:calc(100vw - 28px); }.pill-toast { padding:10px 16px; font-size:13px; } }
@media (prefers-reduced-motion:reduce) { .pill-toast,.pill-toast.out { animation:none; } }


/* Variable-product purchase area: price and stock on the left, quantity on
 * the right, with the primary and secondary actions stacked underneath. */
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap {
	position:relative !important;
	width:100% !important;
	max-width:100% !important;
	padding-top:0 !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation {
	display:block !important;
	min-height:86px !important;
	margin:0 !important;
	padding:0 150px 12px 0 !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation .woocommerce-variation-price {
	display:block !important;
	margin:0 0 20px !important;
	color:#171717 !important;
	font-size:18px !important;
	font-weight:800 !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation .woocommerce-variation-availability { display:block !important; margin:0 !important; }
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation .stock {
	margin:0 !important;
	color:#686d66 !important;
	font-size:12px !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button {
	position:static !important;
	display:grid !important;
	grid-template-columns:minmax(0,1fr) !important;
	gap:9px !important;
	width:100% !important;
	padding:0 !important;
	margin:0 !important;
	border:0 !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button .quantity {
	position:absolute !important;
	top:8px !important;
	right:2px !important;
	z-index:2 !important;
	display:grid !important;
	grid-template-columns:31px 44px 31px !important;
	width:108px !important;
	min-width:108px !important;
	max-width:108px !important;
	height:40px !important;
	margin:0 !important;
	border:1px solid #d9dcd7 !important;
	border-radius:0 !important;
	background:#fff !important;
	overflow:hidden !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button .quantity input.qty {
	width:44px !important;
	min-width:44px !important;
	max-width:44px !important;
	height:38px !important;
	min-height:38px !important;
	padding:0 !important;
	border:solid #e1e2de !important;
	border-width:0 1px !important;
	border-radius:0 !important;
	font-size:13px !important;
	line-height:38px !important;
	text-align:center !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button .iws-product-quantity-control {
	width:31px !important;
	min-width:31px !important;
	height:38px !important;
	min-height:38px !important;
	padding:0 !important;
	border:0 !important;
	border-radius:0 !important;
	background:#fff !important;
	color:#4f524e !important;
	font:400 17px/1 Arial,Helvetica,sans-serif !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .single_add_to_cart_button {
	grid-column:1 !important;
	grid-row:auto !important;
	width:100% !important;
	min-width:0 !important;
	height:44px !important;
	min-height:44px !important;
	margin:0 !important;
	border:1px solid #202020 !important;
	border-radius:2px !important;
	background:#202020 !important;
	color:#fff !important;
	font-size:11px !important;
	font-weight:700 !important;
	letter-spacing:2px !important;
	text-transform:uppercase !important;
}
body.iws-site.single-product .grndtide-product-summary .grndtide-buy-now {
	min-height:44px !important;
	margin:0 0 14px !important;
	border-color:#bfc2bc !important;
	border-radius:2px !important;
	background:#fff !important;
	color:#2b2d2a !important;
}
@media (max-width:760px) {
	body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation { padding-right:124px !important; }
	body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button .quantity { right:0 !important; }
}

/* Background photography is assigned by the viewport observer below. */
.iws-cart-hero { background-image:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.56) 45%,rgba(255,255,255,.2) 100%),var(--iws-lazy-bg-image,none); }
.iws-footer--editorial::before { background-image:var(--iws-lazy-bg-image,none); }
.iws-policy-mobile-hero { background-image:var(--iws-lazy-bg-image,none); }
.iws-auth-visual__image,.iws-quick-auth__visual { background-image:var(--iws-lazy-bg-image,none); }
.stones-home .stones-story__copy { background-image:linear-gradient(rgba(25,17,10,.42),rgba(25,17,10,.42)),var(--iws-lazy-bg-image,none); }
.iws-account-dashboard__hero-image,.iws-account-orders__empty-image { background-image:var(--iws-lazy-bg-image,none) !important; }

/* Unified public notification surface. WooCommerce's default notice chrome
   is intentionally replaced so catalog, cart, checkout and account feedback
   share the same compact UI language. */
body.iws-site .woocommerce-notices-wrapper {
	display:grid;
	gap:0;
	margin:0 0 18px;
}
body.iws-site .woocommerce-notices-wrapper > .woocommerce-message,
body.iws-site .woocommerce-notices-wrapper > .woocommerce-info,
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error,
body.iws-site .woocommerce-no-products-found > .woocommerce-info,
body.iws-site .wc-block-components-notice-banner {
	position:relative;
	display:flex;
	width:100%;
	min-height:38px;
	box-sizing:border-box;
	align-items:center;
	gap:12px;
	margin:0;
	padding:8px 0 8px 34px;
	border:0 !important;
	border-bottom:1px solid var(--iws-control-line) !important;
	border-radius:0 !important;
	background:transparent !important;
	color:var(--iws-control-ink) !important;
	box-shadow:none !important;
	font-size:13px;
	font-weight:500;
	line-height:1.45;
}
body.iws-site .woocommerce-notices-wrapper > .woocommerce-message::before,
body.iws-site .woocommerce-notices-wrapper > .woocommerce-info::before,
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error::before,
body.iws-site .woocommerce-no-products-found > .woocommerce-info::before,
body.iws-site .wc-block-components-notice-banner::before {
	position:absolute;
	top:50%;
	left:0;
	display:grid;
	width:20px;
	height:20px;
	place-items:center;
	border:1px solid currentColor;
	border-radius:50%;
	font-size:12px;
	font-weight:800;
	line-height:1;
	transform:translateY(-50%);
}
body.iws-site .woocommerce-notices-wrapper > .woocommerce-message::before { content:'+'; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-info::before { content:'i'; font-family:Georgia,serif; font-size:14px; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error::before { content:'!'; }
body.iws-site .woocommerce-no-products-found > .woocommerce-info::before { content:'i'; font-family:Georgia,serif; font-size:14px; }

body.iws-site .woocommerce-notices-wrapper > .woocommerce-message { border-left-color:#6b9e0b !important; color:#385d18 !important; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-info { border-left-color:var(--iws-control-focus) !important; color:var(--iws-control-ink) !important; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error { border-color:#d7aaa1 !important; border-left-color:#9a5b4e !important; background:#fff9f7 !important; color:#713b33 !important; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-message { border-bottom-color:#b8cf8f !important; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-info { border-bottom-color:#d9c69a !important; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error { border-bottom-color:#d7aaa1 !important; background:transparent !important; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error ul,
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error li { margin:0; padding:0; list-style:none; }
body.iws-site .woocommerce-notices-wrapper a:not(.button),
body.iws-site .wc-block-components-notice-banner a { color:inherit; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
body.iws-site .woocommerce-notices-wrapper .button,
body.iws-site .wc-block-components-notice-banner .wc-block-components-button { margin-left:auto; flex:0 0 auto; }
body.iws-site .wc-block-components-notice-banner { align-items:flex-start; }
body.iws-site .wc-block-components-notice-banner > svg,
body.iws-site .wc-block-components-notice-banner > .wc-block-components-notice-banner__content::before { display:none !important; }
body.iws-site .wc-block-components-notice-banner__content { display:block; margin:0 !important; }
body.iws-site .wc-block-components-notice-banner.is-error { border-color:transparent !important; border-bottom-color:#d7aaa1 !important; border-left-color:transparent !important; background:transparent !important; color:#713b33 !important; }
body.iws-site .wc-block-components-notice-banner.is-success { border-color:transparent !important; border-bottom-color:#b8cf8f !important; border-left-color:transparent !important; background:transparent !important; color:#385d18 !important; }
body.iws-site .wc-block-components-notice-banner.is-info { border-color:transparent !important; border-bottom-color:#d9c69a !important; border-left-color:transparent !important; background:transparent !important; }
body.iws-site .wc-block-components-notice-banner.is-error::before { content:'!'; }
body.iws-site .wc-block-components-notice-banner.is-success::before { content:'+'; }
body.iws-site .wc-block-components-notice-banner.is-info::before { content:'i'; font-family:Georgia,serif; font-size:14px; }
@media (max-width:760px) {
	body.iws-site .woocommerce-notices-wrapper { margin-bottom:18px; }
	body.iws-site .woocommerce-notices-wrapper > .woocommerce-message,
	body.iws-site .woocommerce-notices-wrapper > .woocommerce-info,
	body.iws-site .woocommerce-notices-wrapper > .woocommerce-error,
	body.iws-site .woocommerce-no-products-found > .woocommerce-info,
	body.iws-site .wc-block-components-notice-banner { align-items:flex-start; padding:10px 0 10px 32px; font-size:12px; }
	body.iws-site .woocommerce-notices-wrapper .button,
	body.iws-site .wc-block-components-notice-banner .wc-block-components-button { margin-left:0; }
}

/* Final notice reset: WooCommerce and page-specific rules can otherwise
   restore the old full-width bordered alert after the shared notice block. */
body.iws-site .woocommerce-notices-wrapper > .woocommerce-message,
body.iws-site .woocommerce-notices-wrapper > .woocommerce-info,
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error,
body.iws-site .woocommerce-notices-wrapper > ul.woocommerce-error,
body.iws-site .woocommerce-notices-wrapper .woocommerce-message,
body.iws-site .woocommerce-notices-wrapper .woocommerce-info,
body.iws-site .woocommerce-notices-wrapper .woocommerce-error,
body.iws-site .woocommerce-no-products-found > .woocommerce-info,
body.iws-site .wc-block-components-notice-banner {
	width:100% !important;
	min-height:38px !important;
	margin:0 !important;
	padding:8px 0 8px 34px !important;
	border:0 !important;
	border-bottom:1px solid var(--iws-control-line) !important;
	border-radius:0 !important;
	outline:0 !important;
	background:transparent !important;
	box-shadow:none !important;
}
body.iws-site .woocommerce-notices-wrapper > .woocommerce-message { border-bottom-color:#b8cf8f !important; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-info { border-bottom-color:#d9c69a !important; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error { border-bottom-color:#d7aaa1 !important; }
body.iws-site .woocommerce-notices-wrapper > .woocommerce-message::before,
body.iws-site .woocommerce-notices-wrapper > .woocommerce-info::before,
body.iws-site .woocommerce-notices-wrapper > .woocommerce-error::before,
body.iws-site .woocommerce-no-products-found > .woocommerce-info::before,
body.iws-site .wc-block-components-notice-banner::before { left:0 !important; }
@media (max-width:760px) {
	body.iws-site .woocommerce-notices-wrapper > .woocommerce-message,
	body.iws-site .woocommerce-notices-wrapper > .woocommerce-info,
	body.iws-site .woocommerce-notices-wrapper > .woocommerce-error,
	body.iws-site .woocommerce-no-products-found > .woocommerce-info,
	body.iws-site .wc-block-components-notice-banner { padding:10px 0 10px 32px !important; }
}

/* Override the high-specificity archive rules that kept results in column 2. */
@media (min-width:761px) and (max-width:1280px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-layout { display:block !important; grid-template-columns:none !important; grid-column:auto !important; width:100% !important; max-width:none !important; min-width:0 !important; margin:0 !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-results,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-results,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-catalog-results,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-results { display:block !important; grid-column:auto !important; grid-row:auto !important; width:100% !important; max-width:none !important; min-width:0 !important; margin:0 !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; grid-column:auto !important; width:100% !important; max-width:none !important; min-width:0 !important; margin:16px 0 0 !important; gap:18px !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products > li.product,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products > li.product,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products > li.product,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products > li.product { grid-column:auto !important; width:auto !important; min-width:0 !important; }
}
@media (min-width:761px) and (max-width:900px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-results > ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}

/* Final tablet catalog contract: one floating filter control, full-width
 * product results. This deliberately overrides every earlier desktop catalog
 * experiment that introduced a sidebar or a secondary toolbar. */
@media (min-width:761px) and (max-width:1280px) {
	.post-type-archive-product .grndtide-shop,
	.tax-product_cat .grndtide-shop,
	.tax-grndtide_collection .grndtide-shop,
	.tax-grndtide_stone .grndtide-shop,
	.grndtide-shop .grndtide-shop-inner { width:100% !important; max-width:none !important; padding-right:16px !important; padding-left:16px !important; }
	/* Keep the archive header from becoming a large empty spacer on tablet
	 * viewports (especially when the hero image is still loading). */
	.grndtide-shop .grndtide-shop-header { height:clamp(150px,22vw,245px) !important; margin:0 -16px !important; }
	.grndtide-shop .grndtide-shop-header picture,
	.grndtide-shop .grndtide-shop-header picture > img { display:block !important; width:100% !important; height:100% !important; }
	.grndtide-shop .grndtide-mobile-catalog-tools { display:none !important; }
	.grndtide-shop .grndtide-catalog-layout { display:block !important; width:100% !important; max-width:none !important; min-width:0 !important; margin:0 !important; padding:0 !important; }
	.grndtide-shop .grndtide-catalog-results { display:block !important; width:100% !important; max-width:none !important; min-width:0 !important; margin:0 !important; padding-inline:clamp(16px,3vw,36px) !important; box-sizing:border-box !important; }
	.grndtide-shop .grndtide-catalog-results .grndtide-shop-tools { display:flex !important; width:100% !important; min-height:58px; margin:0 !important; padding:12px 0 !important; box-sizing:border-box !important; }
	.grndtide-shop .grndtide-catalog-results > ul.products { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; width:100% !important; max-width:none !important; min-width:0 !important; gap:18px !important; margin:16px 0 0 !important; }
	.grndtide-shop .grndtide-catalog-results > ul.products > li.product { display:flex !important; width:auto !important; min-width:0 !important; margin:0 !important; float:none !important; }
	.grndtide-shop .grndtide-catalog-filters { position:fixed !important; z-index:130 !important; top:50% !important; right:auto !important; bottom:auto !important; left:50% !important; display:none !important; width:min(calc(100% - 48px),560px) !important; max-height:82vh !important; margin:0 !important; padding:0 24px 24px !important; overflow-y:auto !important; border:0 !important; border-radius:6px !important; background:#fff !important; box-shadow:0 18px 55px rgba(0,0,0,.28) !important; transform:translate(-50%,calc(-50% + 18px)); }
	.grndtide-shop .grndtide-catalog-filters.is-open { display:block !important; transform:translate(-50%,-50%) !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-form { display:block !important; width:100% !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-heading { position:sticky !important; top:0 !important; z-index:2; display:flex !important; min-height:64px; margin:0 -24px !important; padding:0 24px !important; align-items:center; border-bottom:1px solid #d8d8d4; background:#fff; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-heading > div { display:flex; gap:16px; align-items:center; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-close { display:grid !important; width:32px; height:32px; padding:0; place-items:center; border:1px solid #c9cbc6; border-radius:50%; background:#fff; color:#222; font:24px/1 Arial,sans-serif; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-group { display:block !important; padding:20px 0 !important; border-bottom:1px solid #deded9 !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-choice { display:flex !important; min-height:30px; padding:5px 0 !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-choice input { position:static !important; opacity:1 !important; pointer-events:auto !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-choice span { display:flex !important; white-space:normal !important; }
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-apply { position:sticky !important; bottom:0 !important; z-index:2; display:block !important; width:100% !important; min-height:48px; margin:20px 0 0 !important; }
	.grndtide-shop .grndtide-mobile-filter-trigger { position:fixed !important; z-index:140 !important; right:18px !important; bottom:18px !important; display:inline-flex !important; align-items:center; gap:8px; min-height:46px; padding:0 16px !important; border:0 !important; border-radius:3px !important; background:#242422 !important; color:#fff !important; box-shadow:0 7px 20px rgba(0,0,0,.22); font:800 11px/1 Arial,Helvetica,sans-serif !important; }
	.grndtide-shop .grndtide-mobile-filter-backdrop { position:fixed !important; z-index:125 !important; inset:0; display:block; background:rgba(18,18,17,.46); }
	.grndtide-shop .grndtide-mobile-filter-backdrop[hidden] { display:none !important; }
	.grndtide-shop .grndtide-filters-open { overflow:hidden; }
}

@media (min-width:761px) and (max-width:900px) {
	.grndtide-shop .grndtide-catalog-results > ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}

/* The floating filter trigger is a touch-device control. Viewport width alone
 * can classify a narrowed desktop browser as a tablet, so keep the trigger
 * hidden when the primary input is a mouse or trackpad. */
@media (hover:hover) and (pointer:fine) {
	.grndtide-shop .grndtide-mobile-filter-trigger,
	.grndtide-shop .grndtide-filter-close { display:none !important; }
}

/* Final filter layout override: keep long option lists readable in two
 * columns while preserving native checkbox controls and their focus order. */
@media (max-width:760px) {
	.grndtide-shop .grndtide-catalog-filters.is-open {
		width:min(calc(100% - 20px),560px) !important;
		padding-right:20px !important;
		padding-left:20px !important;
	}
	.grndtide-shop .grndtide-catalog-filters.is-open .grndtide-filter-group--choices {
		display:grid !important;
		grid-template-columns:repeat(2,minmax(0,1fr)) !important;
		column-gap:18px;
	}
	.grndtide-shop .grndtide-catalog-filters.is-open .grndtide-filter-group--choices h2 { grid-column:1 / -1; }
}

@media (min-width:1281px) {
	.grndtide-shop .grndtide-filter-group--choices {
		display:grid !important;
		grid-template-columns:repeat(2,minmax(0,1fr)) !important;
		column-gap:18px;
	}
	.grndtide-shop .grndtide-filter-group--choices h2 { grid-column:1 / -1; }
}

/* The archive's final sidebar rules use a more specific block declaration.
 * Match that scope so every product-list filter view keeps the two columns. */
.grndtide-shop .grndtide-catalog-filters .grndtide-filter-group--choices {
	display:grid !important;
	grid-template-columns:repeat(2,minmax(0,1fr)) !important;
	column-gap:24px !important;
}
.grndtide-shop .grndtide-catalog-filters .grndtide-filter-group--choices h2 {
	grid-column:1 / -1 !important;
}

/* Keep this structural fallback for installs where an older cached archive
 * template has not yet received the helper class. Any group containing
 * checkbox choices is still a two-column group. */
.grndtide-shop .grndtide-catalog-filters .grndtide-filter-group:has(.grndtide-filter-choice) {
	display:grid !important;
	grid-template-columns:repeat(2,minmax(0,1fr)) !important;
	column-gap:24px !important;
}
.grndtide-shop .grndtide-catalog-filters .grndtide-filter-group:has(.grndtide-filter-choice) h2 {
	grid-column:1 / -1 !important;
}

/* Beat the archive fallback selector that targets every direct filter group
 * with display:block !important. This is the rule used by the live /shop/
 * archive at desktop widths. */
body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices,
body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices,
body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices,
body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices,
body.tax-grndtide_bead_size .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices {
	display:grid !important;
	grid-template-columns:repeat(2,minmax(0,1fr)) !important;
	column-gap:24px !important;
}
body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices > h2,
body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices > h2,
body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices > h2,
body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices > h2,
body.tax-grndtide_bead_size .grndtide-shop.grndtide-shop .grndtide-filter-form > .grndtide-filter-group--choices > h2 {
	grid-column:1 / -1 !important;
}

/* Give the two-column choice groups enough intrinsic width for their labels.
 * The sidebar may grow toward the left; the results column stays separate. */
@media (min-width:761px) {
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-group--choices .grndtide-filter-choice span {
		white-space:nowrap !important;
	}
	.grndtide-shop .grndtide-catalog-filters .grndtide-filter-group--choices .grndtide-filter-choice {
		min-width:0 !important;
	}
	.grndtide-shop .grndtide-catalog-filters {
		width:420px !important;
	}
}
@media (min-width:1281px) {
	.grndtide-shop .grndtide-catalog-layout {
		grid-template-columns:420px minmax(0,1fr) !important;
	}
	.grndtide-shop .grndtide-catalog-filters {
		transform:translateX(-120px);
	}
}

@media (min-width:1281px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_bead_size .grndtide-shop.grndtide-shop .grndtide-catalog-layout {
		grid-template-columns:420px minmax(0,1fr) !important;
	}
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-catalog-filters,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters,
	body.tax-grndtide_bead_size .grndtide-shop.grndtide-shop .grndtide-catalog-filters {
		width:420px !important;
		transform:translateX(-120px) !important;
	}
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-choice span,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-choice span,
	body.tax-grndtide_collection .grndtide-shop.grndtide-shop .grndtide-filter-choice span,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-choice span,
	body.tax-grndtide_bead_size .grndtide-shop.grndtide-shop .grndtide-filter-choice span {
		white-space:nowrap !important;
	}
}

/* Homepage New arrivals only: full-width quick-add bar. This final,
 * fully-qualified rule must beat the shared 42px product-card control. */
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-loop-purchase-controls {
	display:block !important;
	min-height:50px !important;
	padding:0 !important;
	box-sizing:border-box;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-quick-add {
	position:relative !important;
	right:auto !important;
	bottom:auto !important;
	display:grid !important;
	box-sizing:border-box;
	width:100% !important;
	min-width:100% !important;
	max-width:none !important;
	height:50px !important;
	min-height:50px !important;
	margin:0 !important;
	border-radius:0 !important;
	place-items:center;
	opacity:0 !important;
	pointer-events:none !important;
	transform:translateY(8px) !important;
	transition:opacity .2s ease,transform .2s ease,background-color .2s ease !important;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product:hover .iws-loop-purchase-controls .iws-quick-add,
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product:focus-within .iws-loop-purchase-controls .iws-quick-add {
	opacity:1 !important;
	pointer-events:auto !important;
	transform:none !important;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-quick-add:hover,
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-quick-add:focus-visible {
	transform:translateY(-2px) !important;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-quick-add__label {
	display:none;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-quick-add > svg:not(.iws-quick-add-success-icon) {
	display:block;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-variable-quick-add {
	border-color:#1d1d1a !important;
	background:#1d1d1a !important;
	color:#fff !important;
	cursor:pointer;
}
.iws-quick-add-cart-proxy { display:none !important; }
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-quick-add.added .iws-quick-add__label {
	display:none;
}
.iws-quick-add-modal[hidden] { display:none !important; }
.iws-quick-add-modal { position:fixed; z-index:1000; inset:0; display:grid; padding:24px; place-items:center; }
.iws-quick-add-modal__backdrop { position:absolute; inset:0; background:rgba(14,16,14,.72); backdrop-filter:blur(9px); }
.iws-quick-add-modal__panel { position:relative; display:grid; width:min(1060px,calc(100vw - 48px)); max-height:calc(100dvh - 48px); grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr); overflow:hidden; border:1px solid rgba(255,255,255,.24); border-radius:3px; background:#fbfaf7; box-shadow:0 30px 90px rgba(0,0,0,.38); }
.iws-quick-add-modal__close { position:absolute; z-index:4; top:18px; right:18px; display:grid; width:38px; height:38px; padding:0; place-items:center; border:1px solid #d8d6cf; border-radius:50%; background:rgba(251,250,247,.94); color:#242521; font:400 24px/1 Arial,Helvetica,sans-serif; cursor:pointer; transition:background-color .18s ease,transform .18s ease; }
.iws-quick-add-modal__close:hover,.iws-quick-add-modal__close:focus-visible { background:#ebe9e2; outline:2px solid #242521; outline-offset:2px; transform:rotate(4deg); }
.iws-quick-add-modal__media { display:flex; min-width:0; min-height:610px; flex-direction:column; overflow:hidden; padding:22px 22px 0; background:#eeece5; }
.iws-quick-add-modal__stage { position:relative; min-height:0; flex:1 1 auto; overflow:hidden; background:#e6e3dc; }
.iws-quick-add-modal .iws-quick-add-modal__zoom { display:block; width:100% !important; height:100% !important; min-height:0 !important; padding:0 !important; overflow:hidden; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; color:#242521 !important; }
.iws-quick-add-modal__zoom img { display:block; width:100%; height:100%; object-fit:contain; transition:transform .35s ease; }
.iws-quick-add-modal__previous,.iws-quick-add-modal__next { position:absolute; z-index:2; top:50%; display:grid; width:40px; height:40px; padding:0; place-items:center; border:1px solid rgba(35,37,33,.22); border-radius:50%; background:rgba(251,250,247,.9); color:#242521; font:18px/1 Arial,Helvetica,sans-serif; cursor:pointer; transform:translateY(-50%); transition:background-color .18s ease,color .18s ease; }
.iws-quick-add-modal__previous { left:14px; }
.iws-quick-add-modal__next { right:14px; }
.iws-quick-add-modal__previous:hover,.iws-quick-add-modal__previous:focus-visible,.iws-quick-add-modal__next:hover,.iws-quick-add-modal__next:focus-visible { background:#242521; color:#fff; outline:2px solid #fff; outline-offset:2px; }
.iws-quick-add-modal__thumbnails { display:flex; min-height:86px; flex:0 0 auto; gap:9px; overflow-x:auto; padding:13px 0 14px; background:#eeece5; scrollbar-width:thin; }
.iws-quick-add-modal .iws-quick-add-modal__thumbnail { box-sizing:border-box; width:60px !important; min-width:60px !important; height:60px !important; min-height:60px !important; padding:3px !important; overflow:hidden; border:1px solid transparent !important; border-radius:1px !important; background:transparent !important; box-shadow:none !important; opacity:.62; transition:border-color .18s ease,opacity .18s ease; }
.iws-quick-add-modal .iws-quick-add-modal__thumbnail img { display:block; width:100%; height:100%; object-fit:cover; }
.iws-quick-add-modal .iws-quick-add-modal__thumbnail:hover { opacity:1; }
.iws-quick-add-modal .iws-quick-add-modal__thumbnail.is-selected { border-color:#242521 !important; opacity:1; }
.iws-quick-add-modal .iws-quick-add-modal__thumbnail:focus-visible { outline:2px solid #242521; outline-offset:1px; opacity:1; }
.iws-quick-add-modal__content { display:flex; min-width:0; flex-direction:column; overflow:auto; padding:58px 48px 40px; background:#fbfaf7; }
.iws-quick-add-modal__eyebrow { margin:0 0 15px; color:#74766f; font:700 9px/1 Arial,Helvetica,sans-serif; letter-spacing:1.8px; text-transform:uppercase; }
.iws-quick-add-modal__content h2 { max-width:390px; margin:0 38px 15px 0; color:#20211e; font-family:'Marcellus',serif; font-size:clamp(22px,2vw,29px); font-weight:400; line-height:1.25; text-wrap:balance; }
.iws-quick-add-modal__price { margin-bottom:0; color:#20211e; font-size:16px; }
.iws-quick-add-modal__price .screen-reader-text { position:absolute !important; }
.iws-quick-add-modal__rule { width:42px; height:1px; margin:27px 0 25px; background:#aeb78c; }
.iws-quick-add-modal__options { display:grid; gap:22px; }
.iws-quick-add-modal__group { min-width:0; margin:0; padding:0; border:0; }
.iws-quick-add-modal__group legend { display:block; width:100%; margin:0 0 10px; padding:0; color:#4e504a; font:700 9px/1 Arial,Helvetica,sans-serif; letter-spacing:1.1px; text-transform:uppercase; }
.iws-quick-add-modal__choices { display:flex; flex-wrap:wrap; gap:8px; }
.iws-quick-add-modal .iws-quick-add-modal__option { min-height:43px !important; padding:9px 13px !important; border:1px solid #c8c7c0 !important; border-radius:1px !important; background:#fbfaf7 !important; color:#252621 !important; box-shadow:none !important; font:700 10px/1.25 Arial,Helvetica,sans-serif !important; letter-spacing:0 !important; text-transform:none !important; cursor:pointer; transition:border-color .16s ease,background-color .16s ease,color .16s ease; }
.iws-quick-add-modal .iws-quick-add-modal__option:hover,.iws-quick-add-modal .iws-quick-add-modal__option:focus-visible { border-color:#555750 !important; background:#efeee8 !important; color:#252621 !important; box-shadow:none !important; outline:2px solid transparent; }
.iws-quick-add-modal .iws-quick-add-modal__option:focus-visible { outline-color:#242521; outline-offset:2px; }
.iws-quick-add-modal .iws-quick-add-modal__option.is-selected { border-color:#242521 !important; background:#242521 !important; color:#fff !important; }
.iws-quick-add-modal__purchase-row { display:flex; min-height:54px; align-items:end; justify-content:space-between; gap:18px; margin:22px 0 13px; }
.iws-quick-add-modal__quantity { flex:0 0 auto; }
.iws-quick-add-modal__quantity > label { display:block; margin:0 0 8px; color:#4e504a; font:700 9px/1 Arial,Helvetica,sans-serif; letter-spacing:1.1px; text-transform:uppercase; }
.iws-quick-add-modal__stepper { display:grid; width:126px; height:42px; grid-template-columns:42px 42px 42px; overflow:hidden; border:1px solid #c8c7c0; background:#fbfaf7; }
.iws-quick-add-modal .iws-quick-add-modal__stepper button { width:42px !important; min-width:42px !important; height:40px !important; min-height:40px !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; color:#252621 !important; box-shadow:none !important; font:400 18px/1 Arial,Helvetica,sans-serif !important; cursor:pointer; }
.iws-quick-add-modal .iws-quick-add-modal__stepper button:hover { background:#ebe9e2 !important; }
.iws-quick-add-modal .iws-quick-add-modal__stepper button:focus-visible { background:#ebe9e2 !important; outline:2px solid #242521 !important; outline-offset:-3px; }
.iws-quick-add-modal .iws-quick-add-modal__stepper button:disabled { color:#aaa9a2 !important; cursor:not-allowed; }
.iws-quick-add-modal__stepper input { box-sizing:border-box; width:42px; min-width:0; height:40px; padding:0; border:0; border-right:1px solid #deddd7; border-left:1px solid #deddd7; border-radius:0; background:#fff; color:#252621; font:700 14px/1 Arial,Helvetica,sans-serif; text-align:center; appearance:textfield; }
.iws-quick-add-modal__stepper input::-webkit-inner-spin-button,.iws-quick-add-modal__stepper input::-webkit-outer-spin-button { margin:0; appearance:none; }
.iws-quick-add-modal__stepper input:focus-visible { position:relative; outline:2px solid #242521; outline-offset:-2px; }
.iws-quick-add-modal__hint { flex:1 1 auto; min-height:18px; margin:0 0 4px; color:#73756e; font-size:11px; line-height:1.4; text-align:right; }
.iws-quick-add-modal .iws-quick-add-modal__add { width:100%; min-height:54px !important; border:1px solid #1d1d1a !important; border-radius:1px !important; background:#1d1d1a !important; color:#fff !important; box-shadow:none !important; font:800 10px/1 Arial,Helvetica,sans-serif !important; letter-spacing:1.5px; cursor:pointer; transition:background-color .18s ease,transform .18s ease; }
.iws-quick-add-modal .iws-quick-add-modal__add:hover,.iws-quick-add-modal .iws-quick-add-modal__add:focus-visible { background:#3b3d37 !important; outline:2px solid #242521; outline-offset:2px; transform:translateY(-1px); }
.iws-quick-add-modal .iws-quick-add-modal__add:disabled { border-color:#c8cac4 !important; background:#e5e6e2 !important; color:#898b84 !important; cursor:not-allowed; }
.iws-quick-add-modal__add.is-loading { opacity:.78; }
.iws-quick-add-modal__details { align-self:center; margin-top:20px; color:#4b4d46; font:700 9px/1 Arial,Helvetica,sans-serif; letter-spacing:1.2px; text-decoration:none; }
.iws-quick-add-modal__details:hover,.iws-quick-add-modal__details:focus-visible { text-decoration:underline; text-underline-offset:4px; }
body.iws-quick-add-modal-open,body.iws-quick-add-viewer-open { overflow:hidden; }
.iws-quick-add-viewer[hidden] { display:none !important; }
.iws-quick-add-viewer { position:fixed; z-index:1100; inset:0; display:grid; padding:26px; place-items:center; }
.iws-quick-add-viewer__backdrop { position:absolute; inset:0; background:rgba(10,11,10,.95); backdrop-filter:blur(8px); }
.iws-quick-add-viewer__frame { position:relative; display:grid; width:100%; height:100%; grid-template-columns:64px minmax(0,1fr) 64px; grid-template-rows:minmax(0,1fr) auto; align-items:center; }
.iws-quick-add-viewer__image { grid-column:2; grid-row:1; width:auto; max-width:100%; height:auto; max-height:calc(100dvh - 92px); margin:auto; object-fit:contain; filter:drop-shadow(0 18px 38px rgba(0,0,0,.28)); }
.iws-quick-add-viewer__close,.iws-quick-add-viewer__previous,.iws-quick-add-viewer__next { display:grid; width:44px; height:44px; padding:0; place-items:center; border:1px solid rgba(255,255,255,.55); border-radius:50%; background:rgba(20,21,19,.5); color:#fff; font:22px/1 Arial,Helvetica,sans-serif; cursor:pointer; }
.iws-quick-add-viewer__close:hover,.iws-quick-add-viewer__close:focus-visible,.iws-quick-add-viewer__previous:hover,.iws-quick-add-viewer__previous:focus-visible,.iws-quick-add-viewer__next:hover,.iws-quick-add-viewer__next:focus-visible { border-color:#fff; background:#fff; color:#1d1d1a; outline:2px solid #fff; outline-offset:3px; }
.iws-quick-add-viewer__close { position:absolute; z-index:2; top:0; right:0; }
.iws-quick-add-viewer__previous { grid-column:1; grid-row:1; justify-self:start; }
.iws-quick-add-viewer__next { grid-column:3; grid-row:1; justify-self:end; }
.iws-quick-add-viewer__count { grid-column:2; grid-row:2; margin:12px 0 0; color:#fff; font:700 10px/1 Arial,Helvetica,sans-serif; letter-spacing:1.2px; text-align:center; }
@media (min-width:761px) and (max-width:1020px) {
	.iws-quick-add-modal { padding:16px; }
	.iws-quick-add-modal__panel {
		width:min(920px,calc(100vw - 32px));
		grid-template-columns:minmax(0,1fr) minmax(320px,.92fr);
		max-height:calc(100dvh - 32px);
	}
	.iws-quick-add-modal__media { min-height:480px; padding:16px 16px 0; }
	.iws-quick-add-modal__content { padding:42px 30px 30px; }
	.iws-quick-add-modal__content h2 { margin-right:28px; font-size:clamp(21px,2.6vw,27px); }
	.iws-quick-add-modal__purchase-row { gap:12px; }
	.iws-quick-add-modal__hint { max-width:132px; }
}
@media (max-width:760px) {
	body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-loop-purchase-controls {
		min-height:44px !important;
		padding:0 !important;
	}
	body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-loop-purchase-controls .iws-quick-add {
		height:44px !important;
		min-height:44px !important;
		opacity:1 !important;
		pointer-events:auto !important;
		transform:none !important;
	}
	.iws-quick-add-modal { align-items:end; padding:0; }
	.iws-quick-add-modal__panel { width:100%; max-height:94dvh; grid-template-columns:1fr; overflow:auto; border-right:0; border-bottom:0; border-left:0; border-radius:12px 12px 0 0; }
	.iws-quick-add-modal__media { min-height:0; height:325px; padding:14px 14px 0; }
	.iws-quick-add-modal__thumbnails { min-height:66px; padding:9px 0; }
	.iws-quick-add-modal .iws-quick-add-modal__thumbnail { width:48px !important; min-width:48px !important; height:48px !important; min-height:48px !important; }
	.iws-quick-add-modal__previous,.iws-quick-add-modal__next { width:36px; height:36px; }
	.iws-quick-add-modal__content { overflow:visible; padding:28px 20px calc(24px + env(safe-area-inset-bottom)); }
	.iws-quick-add-modal__content h2 { margin-right:38px; font-size:20px; }
	.iws-quick-add-modal__rule { margin:20px 0; }
	.iws-quick-add-modal__options { gap:18px; }
	.iws-quick-add-modal__option { min-height:40px; }
	.iws-quick-add-modal__purchase-row { align-items:end; margin-top:20px; }
	.iws-quick-add-modal__hint { max-width:130px; }
	.iws-quick-add-modal__close { top:12px; right:12px; }
	.iws-quick-add-viewer { padding:14px 8px; }
	.iws-quick-add-viewer__frame { grid-template-columns:44px minmax(0,1fr) 44px; }
	.iws-quick-add-viewer__image { max-height:calc(100dvh - 82px); }
	.iws-quick-add-viewer__close,.iws-quick-add-viewer__previous,.iws-quick-add-viewer__next { width:38px; height:38px; }
}
@media (prefers-reduced-motion:reduce) {
	.iws-quick-add-modal__zoom img,.iws-quick-add-modal__close,.iws-quick-add-modal .iws-quick-add-modal__add { transition:none; }
}

/* Product information: editorial accordion using the site's ink, paper and
 * accent palette. Native details/summary behavior remains intact. */
.single-product .grndtide-product-layout > .grndtide-product-details {
	--iws-detail-muted:#676b63;
	width:min(calc(100% - 48px),1440px);
	margin:clamp(24px,3.4vw,48px) auto 0;
	padding:0;
	border:0;
	border-top:1px solid #d5d7d0;
	background:#fff;
	box-shadow:none;
}
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel { border:0; background:#fff; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel + .grndtide-detail-panel { margin-top:0; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary {
	position:relative;
	display:flex;
	min-height:72px;
	align-items:center;
	justify-content:space-between;
	gap:24px;
	padding:12px 6px;
	border:0;
	border-bottom:1px solid #d5d7d0;
	background:#fff;
	color:var(--grndtide-ink);
	cursor:pointer;
	list-style:none;
	transition:border-color .18s ease,background-color .18s ease,color .18s ease;
}
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary::-webkit-details-marker { display:none; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary::before { position:absolute; top:20px; bottom:20px; left:0; width:2px; background:var(--grndtide-accent); content:''; opacity:0; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary:hover { background:#fafbf8; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary:focus-visible { outline:3px solid var(--grndtide-accent); outline-offset:2px; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel[open] > summary { background:#fff; color:var(--grndtide-ink); }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel[open] > summary::before { opacity:1; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__heading { display:flex; min-width:0; align-items:center; gap:18px; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__heading > span:last-child { display:grid; gap:5px; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__number {
	display:grid;
	width:28px;
	height:auto;
	flex:0 0 28px;
	border:0;
	border-radius:0;
	place-items:center;
	color:#858980;
	font:400 12px/1 'Marcellus',serif;
	letter-spacing:.7px;
}
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel[open] .grndtide-detail-panel__number { border:0; background:transparent; color:#586334; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__heading strong { font:800 11px/1.15 Arial,Helvetica,sans-serif; letter-spacing:.85px; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__heading small { color:var(--iws-detail-muted); font:400 13px/1.3 'Marcellus',serif; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel[open] .grndtide-detail-panel__heading small { color:var(--iws-detail-muted); }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__toggle { position:relative; display:block; width:28px; height:28px; flex:0 0 28px; border:1px solid #c5c8c0; border-radius:50%; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__toggle::before,
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__toggle::after { position:absolute; top:50%; left:50%; width:12px; height:1px; background:currentColor; content:''; transform:translate(-50%,-50%); }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__toggle::after { transform:translate(-50%,-50%) rotate(90deg); }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel[open] .grndtide-detail-panel__toggle { border-color:#8d9188; color:#586334; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel[open] .grndtide-detail-panel__toggle::after { transform:translate(-50%,-50%) rotate(0); }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content {
	padding:clamp(22px,2.6vw,34px) clamp(34px,4vw,62px) clamp(30px,3.4vw,44px);
	border:0;
	border-bottom:1px solid #d5d7d0;
	background:#fff;
	color:#454940;
	font-size:13px;
	line-height:1.7;
}
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs { margin:0; padding:0; border:0; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs {
	display:flex;
	flex-wrap:wrap;
	gap:24px;
	padding:0;
	margin:0 0 24px;
	border-bottom:1px solid #dcddd8;
	border:0;
	list-style:none;
}
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs::before,
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs::after { display:none; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs li { margin:0; padding:0; border:0; border-radius:0; background:none; list-style:none; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs li::before,
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs li::after { display:none; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs li a {
	display:inline-flex;
	min-height:34px;
	align-items:center;
	padding:0 0 9px;
	border:0;
	border-bottom:2px solid transparent;
	background:transparent;
	color:#555a51;
	font:800 9px/1 Arial,Helvetica,sans-serif;
	letter-spacing:.55px;
	text-transform:uppercase;
}
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs li.active a,
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs li a:hover,
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs li a:focus-visible { border-bottom-color:#596437; background:transparent; color:var(--grndtide-ink); }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs li a:focus-visible { outline:3px solid var(--grndtide-accent); outline-offset:2px; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs .panel { margin:0; font-size:13px; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs .panel > h2:first-child { margin:0 0 14px; padding:0; border:0; color:var(--grndtide-ink); font:400 clamp(22px,2vw,28px)/1.1 'Marcellus',serif; }
.single-product .grndtide-product-layout > .grndtide-product-details .shop_attributes { width:100%; margin:0; border:0; border-collapse:collapse; font-size:12px; }
.single-product .grndtide-product-layout > .grndtide-product-details .shop_attributes :is(th,td) { padding:10px 0; border:0; border-bottom:1px solid #e0e2db; text-align:left; vertical-align:top; }
.single-product .grndtide-product-layout > .grndtide-product-details .shop_attributes th { width:42%; padding-right:14px; color:var(--grndtide-ink); font:800 9px/1.4 Arial,Helvetica,sans-serif; letter-spacing:.5px; text-transform:uppercase; }
.single-product .grndtide-product-layout > .grndtide-product-details .shop_attributes td p { margin:0; padding:0; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content--support { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:clamp(22px,3vw,34px) clamp(24px,4vw,48px); }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content--support p { max-width:720px; margin:0; font-family:'Marcellus',serif; font-size:clamp(15px,1.5vw,19px); line-height:1.45; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content--support a { display:inline-flex; min-height:44px; flex:0 0 auto; align-items:center; gap:20px; padding:0 18px; border:1px solid var(--grndtide-ink); background:var(--grndtide-ink); color:#fff; font:800 10px/1 Arial,Helvetica,sans-serif; letter-spacing:.7px; }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content--support a:hover,
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content--support a:focus-visible { border-color:var(--grndtide-accent); background:var(--grndtide-accent); color:var(--grndtide-ink); }
.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content--support a:focus-visible { outline:2px solid var(--grndtide-ink); outline-offset:3px; }
@media (max-width:760px) {
	.single-product .grndtide-product-layout > .grndtide-product-details { width:calc(100% - 28px); margin-top:22px; padding:0; box-shadow:none; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary { min-height:68px; gap:12px; padding:10px 4px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__heading { gap:11px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__number { width:24px; height:auto; flex-basis:24px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__heading small { font-size:11px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__toggle { width:28px; height:28px; flex-basis:28px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content { padding:20px 6px 28px 28px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel .woocommerce-tabs ul.tabs { gap:16px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content--support { align-items:flex-start; flex-direction:column; gap:20px; }
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel__content--support a { width:100%; justify-content:space-between; }
}
@media (forced-colors:active) {
	.single-product .grndtide-product-layout > .grndtide-product-details .grndtide-detail-panel > summary:focus-visible { outline-color:Highlight; }
}

/* Product page refinement: one calm commerce system for media, purchase,
   product information, reviews and recommendations. */
body.iws-site.single-product .grndtide-product-page {
	padding:clamp(24px,3.2vw,48px) clamp(16px,4.3vw,72px) clamp(64px,8vw,112px);
	background:#fff;
}
body.iws-site.single-product .grndtide-product-layout { display:block; }
body.iws-site.single-product .grndtide-product-primary {
	display:grid;
	grid-template-columns:minmax(0,1.08fr) minmax(380px,.82fr);
	gap:clamp(44px,6vw,96px);
	width:min(100%,1380px);
	margin:0 auto;
	align-items:start;
}
body.iws-site.single-product .grndtide-product-media { min-width:0; }
body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery {
	/* Keep the media rail beside the hero; the rail owns its own overflow. */
	display:grid !important;
	grid-template-columns:clamp(150px,16vw,210px) minmax(0,1fr) !important;
	grid-template-rows:minmax(0,1fr);
	gap:14px;
	height:clamp(520px,53vw,720px);
	overflow:visible;
}
body.iws-site.single-product .grndtide-product-gallery__stage {
	position:relative;
	display:grid;
	grid-column:2;
	grid-row:1;
	min-width:0;
	height:100%;
	min-height:0;
	place-items:center;
	overflow:hidden;
	background:transparent;
}
body.iws-site.single-product .grndtide-product-gallery__stage::after {
	display:none;
}
body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__stage .iws-demo-visual {
	width:100%;
	height:100%;
	min-height:0;
	aspect-ratio:auto;
	border:0;
	background:transparent;
}
body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__stage .iws-demo-visual > img {
	width:100%;
	height:100%;
	object-fit:contain !important;
	object-position:center;
}
body.iws-site.single-product .grndtide-product-gallery__thumbnails {
	display:grid;
	grid-column:1;
	grid-row:1;
	grid-template-columns:repeat(2,minmax(0,1fr));
	grid-auto-rows:auto;
	align-content:start;
	align-items:start;
	min-width:0;
	gap:9px;
	height:100%;
	max-height:100%;
	min-height:0;
	overflow-x:hidden;
	overflow-y:auto;
	overscroll-behavior:contain;
	padding:0 5px 0 0;
	scrollbar-color:#96998f transparent;
	scrollbar-width:thin;
}
body.iws-site.single-product .grndtide-product-gallery__thumbnails::-webkit-scrollbar { width:6px; }
body.iws-site.single-product .grndtide-product-gallery__thumbnails::-webkit-scrollbar-thumb { background:#96998f; border-radius:6px; }
body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__thumbnails .iws-demo-visual {
	display:block;
	box-sizing:border-box;
	width:100%;
	height:clamp(68px,7vw,92px);
	min-height:0;
	aspect-ratio:1;
	border:1px solid transparent;
	background:transparent;
	opacity:.72;
	transition:border-color .18s ease,opacity .18s ease;
}
body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__thumbnails .iws-demo-visual:is(:hover,:focus-visible,.is-active) {
	border-color:#6d7168;
	opacity:1;
}
body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__thumbnails .iws-demo-visual > img {
	display:block;
	width:100%;
	height:100%;
	object-fit:cover !important;
}
body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual[role='button']:focus-visible {
	outline:2px solid var(--grndtide-accent);
	outline-offset:2px;
}
body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery .iws-demo-visual[role='button'] {
	cursor:pointer;
}
body.iws-site.single-product .grndtide-product-primary .grndtide-product-summary {
	position:sticky;
	top:96px;
	display:flex;
	min-width:0;
	max-height:none;
	padding:clamp(4px,1vw,14px) 0 0;
	border:0;
	background:transparent;
	box-shadow:none;
	overflow:visible;
}
body.iws-site.single-product .grndtide-breadcrumb {
	margin:0 0 22px;
	color:#71746c;
	font:700 9px/1.4 Arial,Helvetica,sans-serif;
	letter-spacing:.55px;
	text-transform:uppercase;
}
body.iws-site.single-product .grndtide-breadcrumb a:hover { color:#1d1d1d; }
body.iws-site.single-product .grndtide-product-heading { display:block; }
body.iws-site.single-product .grndtide-product-kicker {
	margin:0 0 10px;
	color:#6b6f65;
	font:800 9px/1 Arial,Helvetica,sans-serif;
	letter-spacing:1.55px;
	text-transform:uppercase;
}
body.iws-site.single-product .grndtide-product-summary h1 {
	max-width:660px;
	margin:0;
	font-family:'Marcellus',serif;
	font-size:clamp(36px,3.35vw,54px) !important;
	font-weight:400;
	line-height:1.02;
	letter-spacing:-.025em;
	text-wrap:balance;
}
body.iws-site.single-product .grndtide-product-heading .star-rating { margin-top:14px; }
body.iws-site.single-product .grndtide-product-heading__actions {
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:20px 0 0;
}
body.iws-site.single-product .grndtide-product-heading .price {
	margin:0 !important;
	color:#20211f !important;
	font-size:20px !important;
	font-weight:700;
	letter-spacing:-.02em;
}
body.iws-site.single-product .grndtide-product-summary .woocommerce-product-details__short-description {
	max-width:640px;
	margin:20px 0 0;
	padding:20px 0 22px;
	border-top:1px solid #dedfd9;
	border-bottom:1px solid #dedfd9;
	background:transparent;
	color:#55594f;
	font-size:13px;
	line-height:1.65;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form {
	display:block !important;
	padding:22px 0 0;
	border:0;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form table.variations { display:block; margin:0; }
body.iws-site.single-product .grndtide-product-summary form.variations_form table.variations tbody { display:grid; gap:22px; }
body.iws-site.single-product .grndtide-product-summary form.variations_form table.variations tr { display:grid; gap:10px; }
body.iws-site.single-product .grndtide-product-summary form.variations_form table.variations :is(th,td) { display:block; width:100%; padding:0; }
body.iws-site.single-product .grndtide-product-summary form.variations_form table.variations th label {
	color:#3a3c37;
	font:800 10px/1 Arial,Helvetica,sans-serif;
	letter-spacing:.65px;
	text-transform:uppercase;
}
body.iws-site.single-product .grndtide-product-summary .iws-variation-options { gap:8px; }
body.iws-site.single-product .grndtide-product-summary .iws-variation-option {
	min-height:40px;
	padding:0 15px;
	border:1px solid #cfd2ca;
	border-radius:0;
	background:#fff;
	color:#33362f;
	font:800 10px/1 Arial,Helvetica,sans-serif;
}
body.iws-site.single-product .grndtide-product-summary .iws-variation-option:is(:hover,:focus-visible) { border-color:#73776e; background:#f7f7f3; }
body.iws-site.single-product .grndtide-product-summary .iws-variation-option.is-selected {
	border-color:#232421;
	background:#232421;
	color:#fff;
	box-shadow:inset 0 -3px 0 var(--grndtide-accent);
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap {
	margin-top:24px;
	padding-top:20px !important;
	border-top:1px solid #dedfd9;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation {
	display:flex !important;
	min-height:42px !important;
	align-items:flex-start;
	justify-content:space-between;
	gap:20px;
	padding:0 0 16px !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation .woocommerce-variation-price { margin:0 !important; }
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation .stock { padding-top:4px; }
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button {
	position:relative !important;
	display:grid !important;
	grid-template-columns:116px minmax(0,1fr) !important;
	gap:10px !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button .quantity {
	position:static !important;
	display:grid !important;
	grid-template-columns:34px 46px 34px !important;
	width:116px !important;
	min-width:116px !important;
	height:50px !important;
	border-color:#cfd2ca !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button .quantity input.qty,
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button .iws-product-quantity-control { height:48px !important; min-height:48px !important; }
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .single_add_to_cart_button {
	grid-column:2 !important;
	min-height:50px !important;
	height:50px !important;
	border-radius:0 !important;
	background:#20211f !important;
	font-size:11px !important;
	letter-spacing:1.6px !important;
}
body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .single_add_to_cart_button:hover { background:#353830 !important; }
body.iws-site.single-product .grndtide-product-summary .grndtide-buy-now {
	min-height:50px !important;
	margin:10px 0 0 !important;
	border:1px solid #8d9188 !important;
	border-radius:0 !important;
	background:#fff !important;
	color:#282a26 !important;
	letter-spacing:1.45px;
}
body.iws-site.single-product .grndtide-product-summary .grndtide-buy-now:hover { border-color:#232421 !important; background:#f5f6f1 !important; }
body.iws-site.single-product .grndtide-purchase-support {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:0;
	margin-top:18px;
	border-top:1px solid #dedfd9;
	border-bottom:1px solid #dedfd9;
}
body.iws-site.single-product .grndtide-purchase-support a {
	display:flex;
	min-height:58px;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding:0 12px;
	border-right:1px solid #dedfd9;
	color:#55594f;
	font:700 9px/1.35 Arial,Helvetica,sans-serif;
	letter-spacing:.35px;
	text-transform:uppercase;
}
body.iws-site.single-product .grndtide-purchase-support a:first-child { padding-left:0; }
body.iws-site.single-product .grndtide-purchase-support a:last-child { padding-right:0; border-right:0; }
body.iws-site.single-product .grndtide-purchase-support a:hover { color:#1d1d1d; }
body.iws-site.single-product .grndtide-product-layout > .grndtide-product-details {
	width:min(100%,1380px);
	margin:clamp(68px,8vw,112px) auto 0;
}
body.iws-site.single-product .grndtide-product-reviews {
	display:block;
	width:min(100%,1380px);
	padding:clamp(46px,6vw,76px) 0;
	margin:clamp(54px,7vw,94px) auto 0;
	border:solid #dedfd9;
	border-width:1px 0;
}
body.iws-site.single-product .grndtide-product-reviews > header {
	display:flex;
	align-items:end;
	justify-content:space-between;
	gap:24px;
	padding:0 0 24px;
	margin:0 0 30px;
	border-bottom:1px solid #dedfd9;
}
body.iws-site.single-product .grndtide-product-reviews > header p {
	margin:0 0 9px;
	color:#70746a;
	font:800 9px/1 Arial,Helvetica,sans-serif;
	letter-spacing:1.2px;
}
body.iws-site.single-product .grndtide-product-reviews > header h2 {
	margin:0;
	font:400 clamp(28px,3vw,42px)/1 'Marcellus',serif;
	text-transform:none;
}
body.iws-site.single-product .iws-review-launch {
	display:inline-flex;
	width:auto;
	min-width:0;
	height:42px;
	margin:0 0 2px 24px;
	padding:0 15px;
	align-items:center;
	gap:8px;
	border:1px solid #73776e;
	border-radius:0;
	font:800 9px/1 Arial,Helvetica,sans-serif;
	letter-spacing:.6px;
	vertical-align:middle;
}
body.iws-site.single-product .iws-review-launch span:first-child { font-size:13px; }
body.iws-site.single-product .grndtide-product-reviews #reviews { gap:clamp(32px,6vw,90px); }
body.iws-site.single-product .grndtide-related {
	width:min(100%,1380px);
	padding:clamp(54px,7vw,92px) 0 0;
	margin:0 auto;
	overflow:visible;
}
body.iws-site.single-product .grndtide-related > header { margin-bottom:26px; }
body.iws-site.single-product .grndtide-related > header h2 { font:400 clamp(28px,3vw,42px)/1 'Marcellus',serif; }
body.iws-site.single-product .grndtide-related > header a { padding-bottom:5px; border-bottom:1px solid #8b8f85; }
body.iws-site.single-product .grndtide-related .products {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:clamp(12px,1.6vw,24px);
	width:auto;
	overflow:visible;
	animation:none;
	transform:none;
}
body.iws-site.single-product .grndtide-related .products li.product,
body.iws-site.single-product .grndtide-related .products li.product:nth-child(n+5) { display:none; }
body.iws-site.single-product .grndtide-related .products li.product:nth-child(-n+4) { display:block; width:auto !important; min-width:0; }
body.iws-site.single-product :is(.iws-variation-option,.single_add_to_cart_button,.grndtide-buy-now,.grndtide-purchase-support a,.iws-review-launch):focus-visible {
	outline:3px solid var(--grndtide-accent) !important;
	outline-offset:2px;
}

@media (max-width:1080px) {
	body.iws-site.single-product .grndtide-product-primary { grid-template-columns:minmax(0,1fr) minmax(340px,.92fr); gap:38px; }
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery { height:500px; }
	body.iws-site.single-product .grndtide-product-gallery__stage,
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__stage .iws-demo-visual { min-height:500px; }
	body.iws-site.single-product .grndtide-product-summary h1 { font-size:clamp(31px,4vw,43px) !important; }
}

@media (max-width:820px) {
	body.iws-site.single-product .grndtide-product-page { padding:20px 18px 72px; }
	body.iws-site.single-product .grndtide-product-primary { display:block; }
	body.iws-site.single-product .grndtide-product-primary .grndtide-product-summary { position:static; margin-top:36px; padding:0; }
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery { height:clamp(460px,74vw,640px); }
	body.iws-site.single-product .grndtide-product-gallery__stage,
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__stage .iws-demo-visual { min-height:clamp(460px,74vw,640px); }
	body.iws-site.single-product .grndtide-product-summary h1 { max-width:700px; font-size:clamp(35px,6vw,52px) !important; }
	body.iws-site.single-product .grndtide-product-layout > .grndtide-product-details { margin-top:72px; }
}

@media (max-width:760px) {
	body.iws-site.single-product .grndtide-product-page { padding:0 0 58px; }
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery {
		display:flex !important;
		height:auto;
		gap:0;
		overflow-x:auto;
		scroll-snap-type:x mandatory;
		scrollbar-width:none;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery::-webkit-scrollbar { display:none; }
	body.iws-site.single-product .grndtide-product-gallery__stage,
	body.iws-site.single-product .grndtide-product-gallery__thumbnails { display:contents; }
	body.iws-site.single-product .grndtide-product-gallery__stage::after { display:none; }
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery :is(.grndtide-product-gallery__stage,.grndtide-product-gallery__thumbnails) .iws-demo-visual {
		flex:0 0 100%;
		width:100%;
		height:auto;
		min-height:0;
		aspect-ratio:4 / 5;
		border:0;
		opacity:1;
		scroll-snap-align:start;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery :is(.grndtide-product-gallery__stage,.grndtide-product-gallery__thumbnails) .iws-demo-visual > img { object-fit:contain !important; }
	body.iws-site.single-product .grndtide-product-primary .grndtide-product-summary { margin-top:0; padding:28px 18px 0; }
	body.iws-site.single-product .grndtide-breadcrumb { margin-bottom:20px; }
	body.iws-site.single-product .grndtide-product-summary h1 { font-size:clamp(31px,9vw,42px) !important; }
	body.iws-site.single-product .grndtide-product-heading__actions { padding-top:16px; }
	body.iws-site.single-product .grndtide-product-summary .woocommerce-product-details__short-description { margin-top:17px; padding:17px 0 19px; }
	body.iws-site.single-product .grndtide-product-summary form.variations_form { padding-top:20px; }
	body.iws-site.single-product .grndtide-product-summary .iws-variation-option { min-height:44px; padding:0 14px; }
	body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button { grid-template-columns:108px minmax(0,1fr) !important; }
	body.iws-site.single-product .grndtide-product-summary form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart.variations_button .quantity { width:108px !important; min-width:108px !important; grid-template-columns:31px 44px 31px !important; }
	body.iws-site.single-product .grndtide-purchase-support { grid-template-columns:1fr; }
	body.iws-site.single-product .grndtide-purchase-support a { min-height:48px; padding:0; border-right:0; border-bottom:1px solid #e3e4df; }
	body.iws-site.single-product .grndtide-purchase-support a:last-child { border-bottom:0; }
	body.iws-site.single-product .grndtide-product-layout > .grndtide-product-details { width:calc(100% - 36px); margin-top:58px; }
	body.iws-site.single-product .grndtide-product-reviews { display:block !important; width:calc(100% - 36px); padding:44px 0; margin-top:58px; }
	body.iws-site.single-product .grndtide-product-reviews > header { display:block; }
	body.iws-site.single-product .grndtide-product-reviews > header h2 { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:28px; }
	body.iws-site.single-product .iws-review-launch { flex:0 0 auto; margin-left:12px; }
	body.iws-site.single-product .iws-review-launch span:last-child { display:none; }
	body.iws-site.single-product .grndtide-product-reviews #reviews { grid-template-columns:1fr; gap:28px; }
	body.iws-site.single-product .grndtide-product-reviews #comments { padding:0; border:0; }
	body.iws-site.single-product .grndtide-related { width:100%; padding:58px 18px 0; overflow:hidden; }
	body.iws-site.single-product .grndtide-related .products {
	display:flex;
		gap:12px;
		width:100%;
		overflow-x:auto;
		padding-bottom:10px;
		scroll-snap-type:x proximity;
	}
	body.iws-site.single-product .grndtide-related .products li.product,
	body.iws-site.single-product .grndtide-related .products li.product:nth-child(n+5) { display:block; width:min(68vw,240px) !important; flex:0 0 min(68vw,240px); scroll-snap-align:start; }
}

@media (prefers-reduced-motion:reduce) {
	body.iws-site.single-product .grndtide-product-gallery__thumbnails { scroll-behavior:auto; }
}

/* Quick Add controls sit above the global button skin. Keep them quiet and
 * circular so the product image remains the visual focus (WCAG 2.4.7). */
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close {
	display:grid !important;
	width:42px !important;
	min-width:42px !important;
	height:42px !important;
	min-height:42px !important;
	padding:0 !important;
	border:1px solid rgba(36,37,33,.2) !important;
	border-radius:50% !important;
	background:rgba(251,250,247,.96) !important;
	color:#242521 !important;
	box-shadow:0 8px 20px rgba(20,23,20,.12) !important;
	font-size:0 !important;
	line-height:1 !important;
	transform:none !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close::before {
	content:'×';
	font:400 19px/1 Arial,Helvetica,sans-serif;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close:focus-visible {
	border-color:#242521 !important;
	background:#fff !important;
	box-shadow:0 0 0 3px rgba(174,183,140,.36),0 8px 20px rgba(20,23,20,.14) !important;
	color:#242521 !important;
	transform:none !important;
	outline:0 !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next {
	display:grid !important;
	width:46px !important;
	min-width:46px !important;
	height:46px !important;
	min-height:46px !important;
	padding:0 !important;
	place-items:center !important;
	border:1px solid rgba(36,37,33,.16) !important;
	border-radius:50% !important;
	background:rgba(251,250,247,.94) !important;
	color:#242521 !important;
	box-shadow:0 8px 18px rgba(16,20,17,.16) !important;
	font:400 18px/1 Arial,Helvetica,sans-serif !important;
	transform:translateY(-50%) !important;
	outline:0 !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous { left:16px !important; }
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next { right:16px !important; }
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous:focus-visible,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next:focus-visible {
	border-color:#242521 !important;
	background:#242521 !important;
	color:#fff !important;
	box-shadow:0 0 0 3px rgba(174,183,140,.42),0 8px 18px rgba(16,20,17,.2) !important;
	outline:0 !important;
	transform:translateY(-50%) !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__option:focus-visible {
	border-color:#242521 !important;
	box-shadow:inset 0 0 0 2px #fff !important;
	outline:2px solid #aeb78c !important;
	outline-offset:2px !important;
}
@media (max-width:760px) {
	body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close { width:40px !important; min-width:40px !important; height:40px !important; min-height:40px !important; }
	body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous,
	body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next { width:40px !important; min-width:40px !important; height:40px !important; min-height:40px !important; }
}

/* New arrivals card hierarchy: product names are the primary scan target;
 * prices remain compact but visibly distinct from the card metadata. */
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce-loop-product__title {
	box-sizing:border-box;
	display:-webkit-box;
	width:100%;
	min-height:3.8em !important;
	margin:14px 0 5px !important;
	padding:0 2px !important;
	overflow:hidden;
	color:#242521 !important;
	font-family:'Marcellus',Georgia,serif !important;
	font-size:clamp(14px,1.15vw,17px) !important;
	font-weight:400 !important;
	letter-spacing:0 !important;
	line-height:1.28 !important;
	text-align:left;
	text-transform:none !important;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:3;
}
body.iws-site .stones-home .stones-products.stones-products--new .price {
	display:block;
	min-height:22px !important;
	margin:0 !important;
	padding:0 2px !important;
	color:#30332e !important;
	font-family:Arial,Helvetica,sans-serif !important;
	font-size:13px !important;
	font-weight:700 !important;
	letter-spacing:.15px;
	line-height:1.4 !important;
	text-align:left;
}
body.iws-site .stones-home .stones-products.stones-products--new .price del {
	margin-right:5px;
	color:#858a82 !important;
	font-size:.9em;
	font-weight:400;
}
body.iws-site .stones-home .stones-products.stones-products--new .price ins {
	color:#30332e !important;
	font-weight:700;
	text-decoration:none;
}
@media (max-width:760px) {
	body.iws-site .stones-home .stones-products.stones-products--new .woocommerce-loop-product__title {
		min-height:3.75em !important;
		margin-top:11px !important;
		font-size:13px !important;
		line-height:1.26 !important;
	}
	body.iws-site .stones-home .stones-products.stones-products--new .price { font-size:12px !important; }
}

/* The quick-add action is a direct child of the image frame. Its absolute
 * positioning and clipping therefore cannot affect the title or price below. */
body.iws-site .woocommerce ul.products li.product .iws-demo-visual {
	position:relative !important;
	overflow:hidden !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-media-link {
	position:absolute !important;
	z-index:1;
	inset:0 !important;
	display:block !important;
	width:100% !important;
	height:100% !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-media-link > .iws-loop-main-image,
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-media-link > .iws-loop-worn-image {
	top:0 !important;
	right:0 !important;
	bottom:auto !important;
	left:0 !important;
	width:100% !important;
	height:100% !important;
	margin:0 !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls {
	position:absolute !important;
	z-index:8 !important;
	right:0 !important;
	bottom:0 !important;
	left:0 !important;
	display:block !important;
	width:100% !important;
	min-height:45px !important;
	margin:0 !important;
	padding:0 !important;
	transform:translateY(100%) !important;
	opacity:0 !important;
	visibility:hidden !important;
	pointer-events:none !important;
	transition:all .3s ease !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual:hover > .iws-loop-purchase-controls,
body.iws-site .woocommerce ul.products li.product .iws-demo-visual:focus-within > .iws-loop-purchase-controls {
	transform:translateY(0) !important;
	opacity:1 !important;
	visibility:visible !important;
	pointer-events:auto !important;
}
/* Restored keyboard focus must not leave the purchase tray painted after the
 * modal closes. Mouse hover can still reveal it immediately. */
body.iws-site .woocommerce ul.products li.product .iws-demo-visual.iws-quick-add-just-closed:focus-within:not(:hover) > .iws-loop-purchase-controls {
	transform:translateY(100%) !important;
	opacity:0 !important;
	visibility:hidden !important;
	pointer-events:none !important;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add:hover {
	border:0 !important;
	outline:0 !important;
	box-shadow:0 -7px 16px rgba(20,22,19,.1) !important;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add:focus-visible {
	border:0 !important;
	outline:2px solid #ffffff !important;
	outline-offset:-2px !important;
	box-shadow:0 -7px 16px rgba(20,22,19,.1) !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-loop-sku-options {
	display:none !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add {
	position:static !important;
	display:flex !important;
	box-sizing:border-box !important;
	width:100% !important;
	min-width:100% !important;
	height:45px !important;
	min-height:45px !important;
	align-items:center !important;
	justify-content:center !important;
	margin:0 !important;
	padding:0 16px !important;
	border:0 !important;
	border-radius:0 !important;
	background:#ffffff !important;
	color:#111111 !important;
	box-shadow:0 -7px 16px rgba(20,22,19,.1) !important;
	font:800 10px/1 Arial,Helvetica,sans-serif !important;
	letter-spacing:1.15px !important;
	text-decoration:none !important;
	text-transform:uppercase !important;
	transform:none !important;
	opacity:1 !important;
	pointer-events:auto !important;
	transition:all .3s ease !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add > svg {
	display:none !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add .iws-quick-add__label {
	display:inline !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add:hover,
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add:focus-visible {
	background:#f9f9f9 !important;
	color:#111111 !important;
	box-shadow:0 -7px 16px rgba(20,22,19,.12) !important;
	outline:2px solid #161714 !important;
	outline-offset:-3px !important;
}
/* Homepage variable-product controls use a more specific legacy selector.
 * Keep this final override equally scoped so the required white/black action
 * is preserved across every product type. */
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add {
	position:static !important;
	display:flex !important;
	box-sizing:border-box !important;
	width:100% !important;
	min-width:100% !important;
	max-width:none !important;
	height:45px !important;
	min-height:45px !important;
	align-items:center !important;
	justify-content:center !important;
	margin:0 !important;
	padding:0 16px !important;
	border:0 !important;
	border-radius:0 !important;
	background:#ffffff !important;
	color:#111111 !important;
	box-shadow:0 -7px 16px rgba(20,22,19,.1) !important;
	font:800 10px/1 Arial,Helvetica,sans-serif !important;
	letter-spacing:1.15px !important;
	text-decoration:none !important;
	text-transform:uppercase !important;
	transform:none !important;
	opacity:1 !important;
	pointer-events:auto !important;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add:hover,
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add:focus-visible {
	background:#f9f9f9 !important;
	color:#111111 !important;
	/* The tray already owns the reveal animation. Moving the button itself
	 * exposes the image beneath it as a visible horizontal strip. */
	transform:none !important;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add > svg {
	display:none !important;
}
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add .iws-quick-add__label {
	position:static !important;
	display:inline !important;
	width:auto !important;
	height:auto !important;
	min-width:0 !important;
	min-height:0 !important;
	aspect-ratio:auto !important;
	flex:0 0 auto !important;
	margin:0 !important;
	padding:0 !important;
	border:0 !important;
	border-radius:0 !important;
	background:transparent !important;
	color:inherit !important;
	font:inherit !important;
	letter-spacing:inherit !important;
	line-height:inherit !important;
	transform:none !important;
}
/* The legacy New Arrivals rule reserved a 50px control tray while the action
 * itself is 45px tall, exposing a 5px strip of the image below the button. */
body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls {
	height:45px !important;
	min-height:45px !important;
}

/* Quick-view visual theme: the product data and interaction contract stay
 * unchanged; this layer only applies the dark, gold-accented presentation
 * from the approved reference. */
body.iws-site .iws-quick-add-modal {
	--iws-qv-ink:#f5efe8;
	--iws-qv-muted:#8a7a6a;
	--iws-qv-gold:#c9a96e;
	--iws-qv-gold-hover:#d9bc85;
	--iws-qv-panel:#151312;
	--iws-qv-media:#1f1c1a;
	--iws-qv-stage:#2a2623;
	--iws-qv-line:#3a3430;
	background:rgba(21,19,18,.58) !important;
	backdrop-filter:blur(10px);
}
body.iws-site .iws-quick-add-modal__backdrop {
	background:rgba(21,19,18,.58) !important;
}
body.iws-site .iws-quick-add-modal__panel {
	width:min(1124px,calc(100vw - 48px)) !important;
	/* Keep the full confirmation path—including View full details—inside the
	 * dialog rather than clipping it below the add button. */
	height:min(760px,calc(100dvh - 32px));
	max-height:calc(100dvh - 32px) !important;
	grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr) !important;
	overflow:hidden;
	border:1px solid var(--iws-qv-line) !important;
	border-radius:6px !important;
	background:var(--iws-qv-panel) !important;
	box-shadow:0 28px 80px rgba(0,0,0,.52) !important;
}
body.iws-site .iws-quick-add-modal__media {
	min-height:0 !important;
	padding:24px 24px 0 !important;
	background:var(--iws-qv-media) !important;
}
body.iws-site .iws-quick-add-modal__stage {
	background:var(--iws-qv-stage) !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__zoom img {
		transition:transform .35s ease;
}
body.iws-site .iws-quick-add-modal__thumbnails {
	min-height:98px !important;
	gap:10px !important;
	padding:18px 0 18px !important;
	background:var(--iws-qv-media) !important;
	scrollbar-color:#5d554e transparent;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__thumbnail {
	width:70px !important;
	min-width:70px !important;
	height:70px !important;
	min-height:70px !important;
	padding:0 !important;
	border:2px solid transparent !important;
	border-radius:4px !important;
	background:#332e2a !important;
	opacity:.72;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__thumbnail.is-selected {
	border-color:var(--iws-qv-gold) !important;
	opacity:1;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__thumbnail:focus-visible {
	outline:2px solid var(--iws-qv-gold) !important;
	outline-offset:2px;
}
body.iws-site .iws-quick-add-modal__content {
	min-width:0;
	padding:48px 40px 36px !important;
	background:var(--iws-qv-panel) !important;
	color:var(--iws-qv-ink);
}
body.iws-site .iws-quick-add-modal__eyebrow {
	margin-bottom:22px !important;
	color:var(--iws-qv-muted) !important;
	font-size:10px !important;
	letter-spacing:2px !important;
}
body.iws-site .iws-quick-add-modal__content h2 {
	max-width:none !important;
	margin:0 42px 18px 0 !important;
	color:var(--iws-qv-ink) !important;
	font-size:clamp(24px,2.15vw,31px) !important;
	line-height:1.16 !important;
}
body.iws-site .iws-quick-add-modal__price {
	margin:0 !important;
	color:var(--iws-qv-gold) !important;
	font-size:20px !important;
	font-weight:500 !important;
}
body.iws-site .iws-quick-add-modal__rule {
	width:50px !important;
	height:1px !important;
	margin:28px 0 30px !important;
	background:var(--iws-qv-line) !important;
}
body.iws-site .iws-quick-add-modal__options {
	gap:25px !important;
}
body.iws-site .iws-quick-add-modal__group legend,
body.iws-site .iws-quick-add-modal__quantity > label {
	margin-bottom:12px !important;
	color:var(--iws-qv-muted) !important;
	font-size:10px !important;
	letter-spacing:1.3px !important;
}
body.iws-site .iws-quick-add-modal__choices {
	gap:9px !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__option {
	min-height:46px !important;
	padding:10px 16px !important;
	border:1px solid var(--iws-qv-line) !important;
	border-radius:3px !important;
	background:var(--iws-qv-media) !important;
	color:#d6c9bc !important;
	font-size:12px !important;
	font-weight:500 !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__option:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__option:focus-visible {
	border-color:var(--iws-qv-gold) !important;
	background:#2b2623 !important;
	color:var(--iws-qv-ink) !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__option.is-selected {
	border-color:var(--iws-qv-gold) !important;
	background:var(--iws-qv-gold) !important;
	color:var(--iws-qv-panel) !important;
}
body.iws-site .iws-quick-add-modal__purchase-row {
	min-height:54px !important;
	margin:28px 0 18px !important;
	gap:18px !important;
}
body.iws-site .iws-quick-add-modal__stepper {
	width:153px !important;
	height:50px !important;
	grid-template-columns:51px 51px 51px !important;
	border:1px solid var(--iws-qv-line) !important;
	background:var(--iws-qv-media) !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__stepper button {
	width:51px !important;
	min-width:51px !important;
	height:48px !important;
	min-height:48px !important;
	background:transparent !important;
	color:var(--iws-qv-ink) !important;
	font-size:19px !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__stepper button:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__stepper button:focus-visible {
	background:#332e2a !important;
}
body.iws-site .iws-quick-add-modal__stepper input {
	width:51px !important;
	height:48px !important;
	border-right:1px solid var(--iws-qv-line) !important;
	border-left:1px solid var(--iws-qv-line) !important;
	background:#191716 !important;
	color:var(--iws-qv-ink) !important;
	font-size:16px !important;
}
body.iws-site .iws-quick-add-modal__hint {
	margin-bottom:5px !important;
	color:#6e6258 !important;
	font-size:12px !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add {
	min-height:64px !important;
	border:1px solid var(--iws-qv-gold) !important;
	border-radius:3px !important;
	background:var(--iws-qv-gold) !important;
	color:var(--iws-qv-panel) !important;
	font-size:12px !important;
	letter-spacing:1.2px !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add:focus-visible {
	background:var(--iws-qv-gold-hover) !important;
	color:var(--iws-qv-panel) !important;
	outline:2px solid var(--iws-qv-gold) !important;
	outline-offset:3px;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add:disabled {
	border-color:#665742 !important;
	background:#665742 !important;
	color:#2c241b !important;
	opacity:.9;
}
body.iws-site .iws-quick-add-modal__details {
	margin-top:23px !important;
	color:var(--iws-qv-muted) !important;
	font-size:10px !important;
	letter-spacing:1.2px !important;
}
body.iws-site .iws-quick-add-modal__details:hover,
body.iws-site .iws-quick-add-modal__details:focus-visible {
	color:var(--iws-qv-ink) !important;
}
/* Short laptop windows retain the full right-side purchase flow without
 * forcing the customer to discover an internal scrollbar. */
@media (min-width:761px) and (max-height:780px) {
	body.iws-site .iws-quick-add-modal { padding:16px !important; }
	body.iws-site .iws-quick-add-modal__panel {
		height:calc(100dvh - 32px) !important;
		max-height:calc(100dvh - 32px) !important;
	}
	body.iws-site .iws-quick-add-modal__media { padding:16px 16px 0 !important; }
	body.iws-site .iws-quick-add-modal__thumbnails {
		min-height:82px !important;
		padding:10px 0 12px !important;
	}
	body.iws-site .iws-quick-add-modal__content { padding:32px 34px 22px !important; }
	body.iws-site .iws-quick-add-modal__eyebrow { margin-bottom:14px !important; }
	body.iws-site .iws-quick-add-modal__content h2 {
		margin-bottom:10px !important;
		font-size:clamp(23px,2.05vw,28px) !important;
	}
	body.iws-site .iws-quick-add-modal__rule { margin:18px 0 20px !important; }
	body.iws-site .iws-quick-add-modal__options { gap:16px !important; }
	body.iws-site .iws-quick-add-modal__purchase-row { margin:18px 0 12px !important; }
	body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add { min-height:56px !important; }
	body.iws-site .iws-quick-add-modal__details { margin-top:14px !important; }
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close {
	top:20px !important;
	right:20px !important;
	width:44px !important;
	min-width:44px !important;
	height:44px !important;
	min-height:44px !important;
	border:1px solid var(--iws-qv-line) !important;
	background:var(--iws-qv-media) !important;
	color:var(--iws-qv-gold) !important;
	box-shadow:none !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close:focus-visible {
	border-color:var(--iws-qv-gold) !important;
	background:var(--iws-qv-gold) !important;
	color:var(--iws-qv-panel) !important;
	box-shadow:none !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next {
	width:48px !important;
	min-width:48px !important;
	height:48px !important;
	min-height:48px !important;
	border:0 !important;
	background:#fff !important;
	color:#3c3732 !important;
	box-shadow:0 7px 18px rgba(0,0,0,.18) !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous { left:18px !important; }
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next { right:18px !important; }
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous:focus-visible,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next:focus-visible {
	background:var(--iws-qv-gold) !important;
	color:var(--iws-qv-panel) !important;
	box-shadow:0 0 0 3px rgba(201,169,110,.34),0 7px 18px rgba(0,0,0,.18) !important;
}
@media (max-width:1020px) and (min-width:761px) {
	body.iws-site .iws-quick-add-modal__panel {
	grid-template-columns:minmax(0,1fr) minmax(340px,.92fr) !important;
	}
	body.iws-site .iws-quick-add-modal__content { padding:38px 28px 30px !important; }
}
@media (max-width:760px) {
	body.iws-site .iws-quick-add-modal {
	align-items:end !important;
	padding:0 !important;
	}
	body.iws-site .iws-quick-add-modal__panel {
	width:100% !important;
	height:auto !important;
	max-height:94dvh !important;
	grid-template-columns:1fr !important;
	border-right:0 !important;
	border-bottom:0 !important;
	border-left:0 !important;
	border-radius:14px 14px 0 0 !important;
	}
	body.iws-site .iws-quick-add-modal__media {
	gap:0;
	padding:14px 14px 0 !important;
	}
	body.iws-site .iws-quick-add-modal__stage { height:300px; }
	body.iws-site .iws-quick-add-modal__thumbnails {
	min-height:78px !important;
	padding:12px 0 10px !important;
	}
	body.iws-site .iws-quick-add-modal .iws-quick-add-modal__thumbnail {
	width:54px !important;
	min-width:54px !important;
	height:54px !important;
	min-height:54px !important;
	}
	body.iws-site .iws-quick-add-modal__content {
	max-height:calc(94dvh - 392px);
	padding:28px 20px calc(24px + env(safe-area-inset-bottom)) !important;
	}
	body.iws-site .iws-quick-add-modal__eyebrow { margin-bottom:16px !important; }
	body.iws-site .iws-quick-add-modal__content h2 { margin-right:40px !important; font-size:22px !important; }
	body.iws-site .iws-quick-add-modal__price { font-size:18px !important; }
	body.iws-site .iws-quick-add-modal__purchase-row { margin-top:22px !important; }
	body.iws-site .iws-quick-add-modal__close { top:14px !important; right:14px !important; }
}
@media (prefers-reduced-motion:reduce) {
	body.iws-site .iws-quick-add-modal__zoom img,
	body.iws-site .iws-quick-add-modal__close,
	body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add { transition:none !important; }
}

/* Quick-view finish: restrained crystal light, gold edge and tactile controls.
 * These are decorative enhancements only; the existing gallery and purchase
 * controls remain the source of truth for content and interaction. */
body.iws-site .iws-quick-add-modal__panel {
	position:relative !important;
	width:min(1128px,calc(100vw - 48px)) !important;
	grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
	border-color:rgba(201,169,110,.42) !important;
	box-shadow:0 28px 80px rgba(0,0,0,.56),0 0 0 1px rgba(201,169,110,.12),0 0 42px rgba(201,169,110,.08) !important;
}
body.iws-site .iws-quick-add-modal__panel::before {
	position:absolute;
	z-index:0;
	inset:0;
	padding:1px;
	border-radius:inherit;
	background:linear-gradient(135deg,rgba(240,211,151,.76),rgba(201,169,110,.08) 36%,rgba(201,169,110,.1) 65%,rgba(240,211,151,.58));
	content:'';
	pointer-events:none;
	-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
	-webkit-mask-composite:xor;
	mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
	mask-composite:exclude;
}
body.iws-site .iws-quick-add-modal__panel > .iws-quick-add-modal__media,
body.iws-site .iws-quick-add-modal__panel > .iws-quick-add-modal__content { position:relative; z-index:1; }
body.iws-site .iws-quick-add-modal__stage {
	position:relative !important;
	isolation:isolate;
	box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),inset 0 -34px 80px rgba(0,0,0,.16) !important;
}
body.iws-site .iws-quick-add-modal__stage::after {
	position:absolute;
	z-index:3;
	inset:-55% -65%;
	background:linear-gradient(115deg,transparent 30%,rgba(255,245,220,.08) 45%,rgba(255,255,255,.3) 50%,rgba(255,245,220,.08) 55%,transparent 70%);
	content:'';
	pointer-events:none;
	transform:translateX(-62%) rotate(25deg);
	animation:iws-quick-view-sweep 4.5s ease-in-out infinite;
}
body.iws-site .iws-quick-add-modal__zoom {
	position:relative !important;
	isolation:isolate;
}
body.iws-site .iws-quick-add-modal__zoom::before,
body.iws-site .iws-quick-add-modal__zoom::after {
	position:absolute;
	z-index:2;
	content:'';
	pointer-events:none;
}
body.iws-site .iws-quick-add-modal__zoom::before {
	top:19%;
	right:23%;
	width:11px;
	height:11px;
	border-radius:50%;
	background:radial-gradient(circle,#fff 0,#ffe9b8 30%,rgba(201,169,110,0) 72%);
	box-shadow:-92px 122px 0 2px rgba(255,233,184,.7),72px 174px 0 -1px rgba(255,255,255,.65),-128px -38px 0 -2px rgba(255,233,184,.58);
	animation:iws-quick-view-sparkle 2.9s ease-in-out infinite;
}
body.iws-site .iws-quick-add-modal__zoom::after {
	top:35%;
	left:21%;
	width:42px;
	height:42px;
	background:linear-gradient(90deg,transparent 45%,rgba(255,255,255,.82) 50%,transparent 55%),linear-gradient(0deg,transparent 45%,rgba(255,255,255,.82) 50%,transparent 55%);
	filter:drop-shadow(0 0 5px rgba(255,221,154,.75));
	transform:rotate(15deg) scale(.42);
	animation:iws-quick-view-flare 3.4s 1.1s ease-in-out infinite;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close {
	transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .35s ease !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__close:focus-visible {
	transform:rotate(90deg) !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next {
	border:1px solid var(--iws-qv-line) !important;
	background:rgba(31,28,26,.94) !important;
	color:var(--iws-qv-gold) !important;
	box-shadow:0 8px 18px rgba(0,0,0,.22) !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__previous:focus-visible,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next:hover,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__next:focus-visible {
	background:var(--iws-qv-gold) !important;
	color:var(--iws-qv-panel) !important;
}
body.iws-site .iws-quick-add-modal__content h2 {
	font-size:clamp(24px,1.9vw,28px) !important;
	line-height:1.2 !important;
}
body.iws-site .iws-quick-add-modal__stepper {
	border-color:var(--iws-qv-line) !important;
}
body.iws-site .iws-quick-add-modal__stepper input {
	border-top:0 !important;
	border-bottom:0 !important;
	border-right:1px solid var(--iws-qv-line) !important;
	border-left:1px solid var(--iws-qv-line) !important;
	background:var(--iws-qv-panel) !important;
}
@media (min-width:761px) {
	/* Reserve enough vertical room for the complete purchase stack, including
	 * the details link, while keeping a small viewport-safe breathing space. */
	body.iws-site .iws-quick-add-modal__panel {
		height:min(760px,calc(100dvh - 32px)) !important;
		max-height:calc(100dvh - 32px) !important;
	}
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add {
	position:relative;
	overflow:hidden;
	box-shadow:0 7px 22px rgba(201,169,110,.18) !important;
	transition:background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease !important;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add::after {
	position:absolute;
	top:0;
	left:-120%;
	width:70%;
	height:100%;
	background:linear-gradient(105deg,transparent,rgba(255,255,255,.34),transparent);
	content:'';
	transform:skewX(-18deg);
	transition:left .55s ease;
	pointer-events:none;
}
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add:hover::after,
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add:focus-visible::after { left:145%; }
body.iws-site .iws-quick-add-modal .iws-quick-add-modal__thumbnail.is-selected {
	box-shadow:0 0 0 1px rgba(201,169,110,.32),0 0 16px rgba(201,169,110,.25) !important;
}
@keyframes iws-quick-view-sweep {
	0%,18% { transform:translateX(-62%) rotate(25deg); }
	72%,100% { transform:translateX(62%) rotate(25deg); }
}
@keyframes iws-quick-view-sparkle {
	0%,100% { opacity:0; transform:scale(.4); }
	45% { opacity:1; transform:scale(1); }
	68% { opacity:.15; transform:scale(.55); }
}
@keyframes iws-quick-view-flare {
	0%,100% { opacity:0; transform:rotate(15deg) scale(.3); }
	42% { opacity:1; transform:rotate(15deg) scale(1); }
	72% { opacity:0; transform:rotate(15deg) scale(.55); }
}
@media (max-width:760px) {
	body.iws-site .iws-quick-add-modal__panel {
	grid-template-columns:1fr !important;
	height:auto !important;
	max-height:94dvh !important;
	}
	body.iws-site .iws-quick-add-modal__stage { min-height:340px !important; height:340px !important; }
	body.iws-site .iws-quick-add-modal__content { max-height:calc(94dvh - 432px) !important; }
}
@media (prefers-reduced-motion:reduce) {
	body.iws-site .iws-quick-add-modal__stage::after,
	body.iws-site .iws-quick-add-modal__zoom::before,
	body.iws-site .iws-quick-add-modal__zoom::after,
	body.iws-site .iws-quick-add-modal .iws-quick-add-modal__add::after { animation:none !important; transition:none !important; }
}

/* Unified product-card system: every WooCommerce product grid uses the same
 * New Arrivals media frame, title hierarchy and bottom quick-add bar. Page
 * sections may still choose their own grid columns and gaps. */
body.iws-site .woocommerce ul.products li.product .iws-demo-visual {
	position:relative !important;
	width:100% !important;
	aspect-ratio:1 / 1 !important;
	overflow:hidden !important;
	background:#eceeeb !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-media-link {
	position:absolute !important;
	inset:0 !important;
	display:block !important;
	width:100% !important;
	height:100% !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls {
	position:absolute !important;
	z-index:8 !important;
	right:0 !important;
	bottom:0 !important;
	left:0 !important;
	display:block !important;
	width:100% !important;
	height:45px !important;
	min-height:45px !important;
	margin:0 !important;
	padding:0 !important;
	transform:translateY(100%) !important;
	visibility:hidden !important;
	top:auto !important;
	transition:all .3s ease !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual:hover > .iws-loop-purchase-controls,
body.iws-site .woocommerce ul.products li.product .iws-demo-visual:focus-within > .iws-loop-purchase-controls {
	transform:translateY(0) !important;
	visibility:visible !important;
	top:auto !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add {
	position:static !important;
	display:flex !important;
	box-sizing:border-box !important;
	width:100% !important;
	min-width:100% !important;
	max-width:none !important;
	height:45px !important;
	min-height:45px !important;
	align-items:center !important;
	justify-content:center !important;
	margin:0 !important;
	padding:0 16px !important;
	border:0 !important;
	border-radius:0 !important;
	background:#fff !important;
	color:#111 !important;
	box-shadow:0 -7px 16px rgba(20,22,19,.1) !important;
	font:800 10px/1 Arial,Helvetica,sans-serif !important;
	letter-spacing:1.15px !important;
	text-transform:uppercase !important;
	transform:none !important;
	opacity:1 !important;
	visibility:visible !important;
	transition:all .3s ease !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add > svg {
	display:none !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add .iws-quick-add__label {
	position:static !important;
	display:inline !important;
	width:auto !important;
	height:auto !important;
	min-width:0 !important;
	min-height:0 !important;
	aspect-ratio:auto !important;
	flex:0 0 auto !important;
	margin:0 !important;
	padding:0 !important;
	border:0 !important;
	border-radius:0 !important;
	background:transparent !important;
	color:inherit !important;
	font:inherit !important;
	letter-spacing:inherit !important;
	line-height:inherit !important;
	transform:none !important;
}
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add:hover,
body.iws-site .woocommerce ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add:focus-visible {
	background:#f9f9f9 !important;
	color:#111 !important;
	border:0 !important;
	outline:0 !important;
	box-shadow:0 -7px 16px rgba(20,22,19,.1) !important;
}
body.iws-site .woocommerce ul.products li.product .woocommerce-loop-product__title {
	box-sizing:border-box;
	display:-webkit-box;
	width:100%;
	min-height:3.8em !important;
	max-height:3.8em !important;
	margin:14px 0 5px !important;
	padding:0 2px !important;
	overflow:hidden;
	color:#242521 !important;
	font-family:'Marcellus',Georgia,serif !important;
	font-size:clamp(13px,1.15vw,17px) !important;
	font-weight:400 !important;
	line-height:1.28 !important;
	text-align:left;
	text-transform:none !important;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:3;
}
body.iws-site .woocommerce ul.products li.product > .price,
body.iws-site .woocommerce ul.products li.product .price {
	display:block;
	min-height:22px !important;
	margin:0 !important;
	padding:0 2px !important;
	color:#30332e !important;
	font-family:Arial,Helvetica,sans-serif !important;
	font-size:13px !important;
	font-weight:700 !important;
	line-height:1.4 !important;
	text-align:left;
}
/* The Trending carousel previously shipped with a separate compact card skin.
 * Keep its track behavior, but force the card itself onto the shared system. */
body.iws-site .stones-products--hot .stones-marquee__track > .products > li.product .iws-demo-visual,
body.iws-site .stones-products--hot .stones-marquee__track > .woocommerce > .products > li.product .iws-demo-visual {
	aspect-ratio:1 / 1 !important;
}
body.iws-site .stones-products--hot .stones-marquee__track > .products > li.product .iws-demo-visual img,
body.iws-site .stones-products--hot .stones-marquee__track > .woocommerce > .products > li.product .iws-demo-visual img {
	object-fit:cover !important;
	object-position:center !important;
	background:transparent !important;
}
@media (max-width:760px) {
	body.iws-site .woocommerce ul.products li.product .woocommerce-loop-product__title {
	min-height:3.75em !important;
	max-height:3.75em !important;
	margin-top:11px !important;
	font-size:13px !important;
	line-height:1.26 !important;
	}
	body.iws-site .woocommerce ul.products li.product .price { font-size:12px !important; }
}

/* Some archive templates render `ul.products` without a `.woocommerce`
 * wrapper. Apply the same card contract directly to that shared structure. */
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual {
	position:relative !important;
	width:100% !important;
	aspect-ratio:1 / 1 !important;
	overflow:hidden !important;
	background:#eceeeb !important;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual > .iws-loop-media-link {
	position:absolute !important;
	inset:0 !important;
	display:block !important;
	width:100% !important;
	height:100% !important;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls {
	position:absolute !important;
	z-index:8 !important;
	right:0 !important;
	bottom:0 !important;
	left:0 !important;
	display:block !important;
	width:100% !important;
	height:45px !important;
	min-height:45px !important;
	margin:0 !important;
	padding:0 !important;
	transform:translateY(100%) !important;
	opacity:0 !important;
	visibility:hidden !important;
	pointer-events:none !important;
	transition:all .3s ease !important;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual:hover > .iws-loop-purchase-controls,
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual:focus-within > .iws-loop-purchase-controls {
	transform:translateY(0) !important;
	opacity:1 !important;
	visibility:visible !important;
	pointer-events:auto !important;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-loop-sku-options {
	display:none !important;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add {
	position:static !important;
	display:flex !important;
	box-sizing:border-box !important;
	width:100% !important;
	min-width:100% !important;
	max-width:none !important;
	height:45px !important;
	min-height:45px !important;
	align-items:center !important;
	justify-content:center !important;
	margin:0 !important;
	padding:0 16px !important;
	border:0 !important;
	border-radius:0 !important;
	background:#fff !important;
	color:#111 !important;
	box-shadow:0 -7px 16px rgba(20,22,19,.1) !important;
	font:800 10px/1 Arial,Helvetica,sans-serif !important;
	letter-spacing:1.15px !important;
	text-transform:uppercase !important;
	transform:none !important;
	opacity:1 !important;
	visibility:visible !important;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add > svg {
	display:none !important;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add .iws-quick-add__label {
	position:static !important;
	display:inline !important;
	width:auto !important;
	height:auto !important;
	min-width:0 !important;
	min-height:0 !important;
	aspect-ratio:auto !important;
	flex:0 0 auto !important;
	margin:0 !important;
	padding:0 !important;
	border:0 !important;
	border-radius:0 !important;
	background:transparent !important;
	color:inherit !important;
	font:inherit !important;
	letter-spacing:inherit !important;
	line-height:inherit !important;
	transform:none !important;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls .iws-quick-add:hover {
	background:#f9f9f9 !important;
	border:0 !important;
	outline:0 !important;
}
/* Restoring keyboard focus after closing the chooser must not leave a bar
 * pinned over the product image. */
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual.iws-quick-add-just-closed:focus-within:not(:hover) > .iws-loop-purchase-controls {
	transform:translateY(100%) !important;
	opacity:0 !important;
	visibility:hidden !important;
	pointer-events:none !important;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .woocommerce-loop-product__title {
	box-sizing:border-box;
	display:-webkit-box;
	width:100%;
	min-height:3.8em !important;
	max-height:3.8em !important;
	margin:14px 0 5px !important;
	padding:0 2px !important;
	overflow:hidden;
	color:#242521 !important;
	font-family:'Marcellus',Georgia,serif !important;
	font-size:clamp(13px,1.15vw,17px) !important;
	font-weight:400 !important;
	line-height:1.28 !important;
	text-align:left;
	text-transform:none !important;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:3;
}
body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .price {
	display:block;
	min-height:22px !important;
	margin:0 !important;
	padding:0 2px !important;
	color:#30332e !important;
	font-family:Arial,Helvetica,sans-serif !important;
	font-size:13px !important;
	font-weight:700 !important;
	line-height:1.4 !important;
	text-align:left;
}
@media (max-width:760px) {
	body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .iws-demo-visual > .iws-loop-purchase-controls {
		transform:translateY(0) !important;
		opacity:1 !important;
		visibility:visible !important;
		pointer-events:auto !important;
	}
	/* New Arrivals keeps its touch-visible action inside the image frame.
	 * Remove the legacy title offset so no blank band appears below it. */
	body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .iws-loop-details-link {
		margin:0 !important;
		padding:0 !important;
	}
	body.iws-site .stones-home .stones-products.stones-products--new .woocommerce ul.products li.product .woocommerce-loop-product__title {
		margin-top:0 !important;
	}
	body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .woocommerce-loop-product__title {
		min-height:3.75em !important;
		max-height:3.75em !important;
		margin-top:11px !important;
		font-size:13px !important;
		line-height:1.26 !important;
	}
	body.iws-site :is(.stones-products,.grndtide-catalog-results,.grndtide-product-section,.grndtide-related,.related,.grndtide-shop,.iws-cart-recommendations) ul.products li.product .price { font-size:12px !important; }
}

/* Product-detail gallery: keep the two thumbnail tracks flush while reserving
 * a separate third column for the hero image. */
@media (min-width:761px) {
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery {
		display:grid !important;
		grid-template-columns:240px minmax(320px,1fr) !important;
		grid-template-rows:minmax(0,1fr);
		gap:10px;
		height:clamp(500px,54vw,700px);
		overflow:visible;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__stage {
		display:grid;
		grid-column:2;
		grid-row:1;
		min-width:0;
		height:100%;
		min-height:0;
		place-items:center;
		overflow:hidden;
		background:transparent;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__stage > .iws-demo-visual {
		width:100%;
		height:100%;
		min-height:0;
		aspect-ratio:auto;
		border:0;
		background:transparent;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__stage > .iws-demo-visual > img {
		display:block;
		width:100%;
		height:100%;
		object-fit:contain !important;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__thumbnails {
		display:grid;
		grid-column:1;
		grid-row:1;
		/* Keep exactly two square thumbnail tracks; never let an inherited
		 * gallery rule create a third track or make the first item span both. */
		grid-template-columns:repeat(2,110px) !important;
		grid-auto-columns:110px;
		grid-auto-flow:row !important;
		grid-auto-rows:110px;
		column-gap:10px;
		row-gap:10px;
		align-content:start;
		min-width:0;
		width:240px;
		box-sizing:border-box;
		height:100%;
		min-height:0;
		padding-right:7px;
		overflow-x:hidden;
		overflow-y:auto;
		overscroll-behavior:contain;
		scrollbar-width:thin;
		scrollbar-color:#96998f transparent;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__thumbnails > .iws-demo-visual {
		display:block;
		grid-column:auto !important;
		grid-row:auto !important;
		min-width:0 !important;
		max-width:110px !important;
		width:110px !important;
		height:110px !important;
		max-height:110px !important;
		min-height:0;
		aspect-ratio:1;
		border:0;
		background:transparent;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__thumbnails > .iws-demo-visual > img {
		display:block;
		width:100%;
		height:100%;
		object-fit:cover !important;
	}
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__thumbnails::-webkit-scrollbar { width:6px; }
	body.iws-site.single-product .grndtide-product-media .grndtide-product-gallery__thumbnails::-webkit-scrollbar-thumb { background:#96998f; border-radius:6px; }
	body.iws-site.single-product .grndtide-product-summary :is(h1,h3) {
		max-width:660px;
		margin:0;
		font-family:'Marcellus',serif;
		font-size:clamp(18px,1.675vw,27px) !important;
		font-weight:400;
		line-height:1.02;
		letter-spacing:-.025em;
		text-wrap:balance;
	}
}

/* Final cascade filter layout: this stays last to override prior archive
 * experiments that force filter groups into a vertical sidebar. */
.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) { padding:0 !important; overflow:hidden !important; border:1px solid #e1e0dc !important; border-radius:12px !important; background:#fff !important; box-shadow:0 12px 30px rgba(24,24,22,.08); }
.grndtide-shop .grndtide-cascading-filter { display:flex !important; width:100%; height:460px; min-height:0; flex-direction:column; background:#fff; }
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { display:flex !important; min-height:66px; flex:0 0 66px; align-items:center; justify-content:space-between; margin:0 !important; padding:0 24px !important; border-bottom:1px solid #ecebe7; background:#fff; color:#171715; font:700 16px/1 Arial,Helvetica,sans-serif; }
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading > div { display:flex; align-items:center; gap:12px; }
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading a { display:block; min-height:0; padding:0; border:0; background:transparent; color:#85837d; font:400 12px/1 Arial,Helvetica,sans-serif; white-space:nowrap; }
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading a:hover,.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading a:focus-visible { color:#171715; text-decoration:underline; outline:none; }
.grndtide-shop .grndtide-cascading-filter__body { display:grid !important; min-height:0; flex:1 1 auto; grid-template-columns:38% 62%; overflow:hidden; }
.grndtide-shop .grndtide-cascading-filter__categories { overflow-y:auto; border-right:1px solid #e6e5e1; background:#fafafa; scrollbar-width:thin; }
.grndtide-shop .grndtide-cascading-filter__categories button { display:flex; width:100%; min-height:53px; align-items:center; justify-content:space-between; padding:0 18px; border:0; border-left:3px solid transparent; background:transparent; color:#565752; font:400 13px/1.2 Arial,Helvetica,sans-serif; text-align:left; cursor:pointer; }
.grndtide-shop .grndtide-cascading-filter__categories button span { color:#b4b3ae; font-size:21px; font-weight:400; }
.grndtide-shop .grndtide-cascading-filter__categories button:hover { background:#f2f1ed; color:#171715; }
.grndtide-shop .grndtide-cascading-filter__categories button.is-active { border-left-color:#222; background:#fff; color:#161614; font-weight:700; }
.grndtide-shop .grndtide-cascading-filter__categories button.is-active span { color:#171715; }
.grndtide-shop .grndtide-cascading-filter__categories button:focus-visible { position:relative; z-index:1; outline:2px solid #242422; outline-offset:-2px; }
.grndtide-shop .grndtide-cascading-filter__panels { min-width:0; overflow:hidden; background:#fff; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-group { display:block !important; height:100%; min-height:0; margin:0; padding:12px 18px !important; overflow-y:auto; border:0 !important; background:#fff; scrollbar-width:thin; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-group[hidden] { display:none !important; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice { display:flex !important; min-height:48px; align-items:center; gap:10px; padding:0 !important; border:0; border-bottom:1px dashed #ecebe7; background:transparent; color:#555650; font:400 13px/1.25 Arial,Helvetica,sans-serif; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice:last-child { border-bottom:0; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice:hover { color:#171715; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice input { position:static !important; width:16px; height:16px; flex:0 0 16px; margin:0; padding:0; opacity:1 !important; pointer-events:auto !important; accent-color:#1d1d1a; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice span { display:flex !important; min-width:0; flex:1; justify-content:space-between; gap:10px; white-space:normal !important; }
.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice i { flex:0 0 auto; color:#999993; font-size:11px; }
.grndtide-shop .grndtide-cascading-filter__actions { display:grid !important; min-height:88px; flex:0 0 88px; grid-template-columns:1fr 1fr; gap:12px; padding:18px 24px; border-top:1px solid #ecebe7; background:#fafafa; }
.grndtide-shop .grndtide-cascading-filter__actions button { min-height:48px; padding:0 12px; border:1px solid #d6d5d0; border-radius:6px; background:#fff; color:#62635e; font:700 12px/1 Arial,Helvetica,sans-serif; cursor:pointer; }
.grndtide-shop .grndtide-cascading-filter__actions .grndtide-filter-apply { display:block; width:auto; min-height:48px; margin:0; border-color:#343432; background:#343432; color:#fff; }
.grndtide-shop .grndtide-cascading-filter__actions button:hover { border-color:#242422; color:#242422; }
.grndtide-shop .grndtide-cascading-filter__actions .grndtide-filter-apply:hover,.grndtide-shop .grndtide-cascading-filter__actions .grndtide-filter-apply:focus-visible { background:#171715; color:#fff; }
.grndtide-shop .grndtide-cascading-filter__actions button:focus-visible { outline:2px solid #242422; outline-offset:2px; }
@media (min-width:761px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) { width:400px !important; transform:translateX(-100px) !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-layout,body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-layout,body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-layout,body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-layout { grid-template-columns:400px minmax(0,1fr) !important; }
}
@media (max-width:760px) {
	.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter) { width:min(calc(100% - 24px),400px) !important; max-height:none !important; padding:0 !important; }
	.grndtide-shop .grndtide-cascading-filter { height:min(556px,calc(100dvh - 32px)); }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { min-height:62px; flex-basis:62px; padding:0 18px !important; }
	.grndtide-shop .grndtide-cascading-filter__categories button { min-height:50px; padding:0 14px; font-size:12px; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-group { padding:9px 14px !important; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice { min-height:45px; font-size:12px; }
	.grndtide-shop .grndtide-cascading-filter__actions { min-height:76px; flex-basis:76px; padding:14px 18px; }
}

/* End-of-file cascade guard for the archive-specific legacy rules. */
@media (min-width:761px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter { display:flex !important; height:556px !important; min-height:556px !important; max-height:556px !important; flex-direction:column !important; overflow:hidden !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading { display:flex !important; position:static !important; box-sizing:border-box !important; width:100% !important; height:66px !important; min-height:66px !important; margin:0 !important; flex:0 0 66px !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__body { display:grid !important; flex:1 1 auto !important; min-height:0 !important; overflow:hidden !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions { display:grid !important; align-self:stretch !important; box-sizing:border-box !important; width:100% !important; height:88px !important; min-height:88px !important; flex:0 0 88px !important; }
}

/* The archive's legacy display rules use !important, so explicitly preserve
 * the native hidden state of inactive tab panels. */
.grndtide-shop .grndtide-cascading-filter .grndtide-cascading-filter__panels > .grndtide-filter-group[hidden] { display:none !important; }

body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-group--choices[hidden],
body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-group--choices[hidden],
body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-group--choices[hidden],
body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-group--choices[hidden] { display:none !important; }

/* Responsive cascade filter: desktop and tablet stay in the catalog flow;
 * phones use the existing mobile trigger/backdrop as a bottom drawer. */
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search {
	display:block !important;
	box-sizing:border-box;
	flex:0 0 56px;
	padding:8px 18px;
	border-bottom:1px solid #ecebe7;
	background:#fff;
}
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search input {
	display:block;
	box-sizing:border-box;
	width:100%;
	height:40px;
	padding:0 13px;
	border:1px solid #d7d6d1;
	border-radius:6px;
	background:#fff;
	color:#33332f;
	font:400 13px/40px Arial,Helvetica,sans-serif;
}
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search input::placeholder { color:#8b8b84; opacity:1; }
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search input:focus-visible { outline:2px solid #242422; outline-offset:1px; }

@media (min-width:1024px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) { width:320px !important; height:322px !important; max-height:322px !important; transform:none !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-layout { grid-template-columns:320px minmax(0,1fr) !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter { height:320px !important; min-height:320px !important; max-height:320px !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { flex-basis:50px !important; height:50px !important; min-height:50px !important; padding:0 18px !important; font-size:14px; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading > div { gap:8px; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search { flex-basis:56px; }
	.grndtide-shop .grndtide-cascading-filter__body { grid-template-columns:42% 58%; }
	.grndtide-shop .grndtide-cascading-filter__categories button { min-height:44px; padding:0 12px; font-size:12px; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice { min-height:38px; font-size:12px; }
	.grndtide-shop .grndtide-cascading-filter__actions { height:74px !important; min-height:74px !important; flex:0 0 74px !important; padding:12px 18px; }
}

/* Category links from the header use the same full desktop canvas as the
 * main shop archive. The older taxonomy rule capped this layout at 1120px,
 * which squeezed the product cards after navigating from Shop. */
@media (min-width:1024px) {
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-layout {
		width:76% !important;
		max-width:none !important;
		min-width:0 !important;
		margin:28px auto 0 !important;
	}
}

@media (min-width:768px) and (max-width:1023px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) { width:280px !important; height:282px !important; max-height:282px !important; transform:none !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-layout { grid-template-columns:280px minmax(0,1fr) !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter { height:280px !important; min-height:280px !important; max-height:280px !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { flex-basis:46px !important; height:46px !important; min-height:46px !important; padding:0 14px !important; font-size:13px; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search { flex-basis:52px; padding:6px 14px; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search input { height:40px; }
	.grndtide-shop .grndtide-cascading-filter__body { grid-template-columns:42% 58%; }
	.grndtide-shop .grndtide-cascading-filter__categories button { min-height:44px; padding:0 10px; font-size:11px; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice { min-height:38px; font-size:11px; }
	.grndtide-shop .grndtide-cascading-filter__actions { height:60px !important; min-height:60px !important; flex:0 0 60px !important; padding:8px 14px; }
}

@media (max-width:767px) {
	.grndtide-shop .grndtide-mobile-filter-trigger { position:fixed !important; z-index:140 !important; right:18px !important; bottom:18px !important; display:inline-flex !important; align-items:center; gap:8px; min-height:46px; padding:0 16px !important; border:0 !important; border-radius:4px !important; background:#242422 !important; color:#fff !important; box-shadow:0 7px 20px rgba(0,0,0,.22); font:800 11px/1 Arial,Helvetica,sans-serif !important; }
	.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter) {
		top:auto !important;
		right:0 !important;
		bottom:0 !important;
		left:0 !important;
		width:100vw !important;
		max-width:none !important;
		height:min(92dvh,680px) !important;
		max-height:min(92dvh,680px) !important;
		border-radius:16px 16px 0 0 !important;
		transform:translateY(0) !important;
		box-shadow:0 -12px 36px rgba(24,24,22,.18) !important;
	}
	.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter) .grndtide-filter-form.grndtide-cascading-filter {
		display:flex !important;
		height:100% !important;
		min-height:0 !important;
		max-height:none !important;
		flex-direction:column !important;
		overflow:hidden !important;
	}
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { flex:0 0 58px !important; height:58px !important; min-height:58px !important; padding:0 18px !important; font-size:16px; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search { flex:0 0 58px; height:58px; padding:8px 18px; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search,
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search input { width:100% !important; max-width:none !important; box-sizing:border-box !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search input { height:42px; font-size:13px; }
	.grndtide-shop .grndtide-cascading-filter__body { display:flex !important; width:100% !important; max-width:100% !important; min-width:0 !important; flex:1 1 auto !important; min-height:0 !important; flex-direction:column !important; overflow:hidden !important; }
	.grndtide-shop .grndtide-cascading-filter__categories { display:flex !important; flex:0 0 58px; width:100%; min-height:58px; overflow-x:auto !important; overflow-y:hidden !important; border-right:0; border-bottom:1px solid #e6e5e1; white-space:nowrap; scrollbar-width:none; }
	.grndtide-shop .grndtide-cascading-filter__categories::-webkit-scrollbar { display:none; }
	.grndtide-shop .grndtide-cascading-filter__categories button { flex:0 0 auto; width:auto; min-width:108px; min-height:58px; padding:0 16px; border-left:0; border-bottom:3px solid transparent; font-size:13px; white-space:nowrap; }
	.grndtide-shop .grndtide-cascading-filter__categories button.is-active { border-bottom-color:#222; }
	.grndtide-shop .grndtide-cascading-filter__categories button span { margin-left:8px; font-size:18px; }
	.grndtide-shop .grndtide-cascading-filter__panels { flex:1 1 auto; min-height:0; overflow:hidden; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-group { height:100% !important; padding:0 18px !important; overflow-y:auto; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice { min-height:56px; gap:12px; font-size:14px; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice input { width:18px; height:18px; flex-basis:18px; }
	.grndtide-shop .grndtide-cascading-filter__actions { width:100% !important; margin:0 !important; flex:0 0 auto !important; height:auto !important; min-height:86px !important; padding:14px 18px max(15px, env(safe-area-inset-bottom)) !important; }
	.grndtide-shop .grndtide-mobile-filter-backdrop:not([hidden]) { display:block !important; position:fixed !important; z-index:125 !important; inset:0 !important; background:rgba(18,18,17,.46) !important; }
	body.grndtide-filters-open { overflow:hidden !important; }
}

/* Final control normalization: icon-only controls keep a true square hit
 * area, so global text-button padding cannot turn them into ovals. */
body.iws-site .grndtide-filter-close,
body.iws-site .iws-quick-auth__close,
body.iws-site .iws-address-modal__close,
body.iws-site .iws-review-modal__close,
body.iws-site .iws-quick-add-modal__close,
body.iws-site .iws-quick-add-viewer__close,
body.iws-site .iws-image-lightbox__close {
	display:grid !important;
	box-sizing:border-box !important;
	width:40px !important;
	min-width:40px !important;
	height:40px !important;
	min-height:40px !important;
	margin:0 !important;
	padding:0 !important;
	place-items:center !important;
	line-height:1 !important;
	letter-spacing:0 !important;
	text-transform:none !important;
}
body.iws-site .grndtide-filter-close,
body.iws-site .iws-address-modal__close,
body.iws-site .iws-quick-add-modal__close,
body.iws-site .iws-quick-add-viewer__close,
body.iws-site .iws-image-lightbox__close {
	border-radius:50% !important;
}
body.iws-site .iws-review-modal__close,
body.iws-site .iws-quick-auth__close {
	border-radius:4px !important;
}

/* Desktop filters are always visible in the catalog flow, so the drawer-only
 * close control must not occupy the heading on large screens. */
@media (min-width:1024px) {
	body.archive.post-type-archive-product .grndtide-shop .grndtide-filter-close,
	body.tax-product_cat .grndtide-shop .grndtide-filter-close,
	body.tax-grndtide_stone .grndtide-shop .grndtide-filter-close,
	body.tax-grndtide_other_material .grndtide-shop .grndtide-filter-close {
		display:none !important;
	}
}

/* The shop hero image is intentionally omitted on phones. Its legacy fixed
 * image height was larger than the clipped header, leaving a blank band above
 * the product grid. */
@media (max-width:767px) {
	body.archive.post-type-archive-product .grndtide-shop-header,
	body.tax-product_cat .grndtide-shop-header,
	body.tax-grndtide_stone .grndtide-shop-header,
	body.tax-grndtide_other_material .grndtide-shop-header {
		display:none !important;
		height:0 !important;
		min-height:0 !important;
		padding:0 !important;
		margin:0 !important;
		border:0 !important;
	}
	body.archive.post-type-archive-product .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-catalog-layout,
	body.tax-grndtide_other_material .grndtide-catalog-layout {
		padding-top:0 !important;
	}
}

/* The legacy form aligns flex children to the end, which leaves the
 * category/option body floating in the middle of the card. Stretch it to the
 * frame so tabs sit on the left border and the options receive the remainder. */
.grndtide-shop .grndtide-cascading-filter__body {
	align-self:stretch !important;
	width:100% !important;
}
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search {
	align-self:stretch !important;
	width:100% !important;
	display:flex !important;
	align-items:center;
	gap:0;
	box-sizing:border-box;
}
.grndtide-shop .grndtide-filter-search input {
	flex:1 1 auto !important;
	min-width:0 !important;
	width:100% !important;
}
.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search input {
	flex:1 1 auto !important;
	min-width:0 !important;
	width:100% !important;
	border-radius:6px !important;
}
@media (min-width:768px) {
	.grndtide-shop .grndtide-cascading-filter__body {
		grid-template-columns:minmax(150px,34%) minmax(0,1fr) !important;
	}
}

@media (min-width:768px) and (max-width:1023px) {
	.grndtide-shop .grndtide-mobile-filter-trigger { display:none !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) { display:block !important; position:sticky !important; top:24px !important; left:auto !important; width:280px !important; height:282px !important; max-height:282px !important; padding:0 !important; opacity:1 !important; visibility:visible !important; pointer-events:auto !important; transform:none !important; }
	.grndtide-shop .grndtide-catalog-layout { display:grid !important; grid-template-columns:280px minmax(0,1fr) !important; gap:24px !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { height:46px !important; min-height:46px !important; flex:0 0 46px !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search { height:52px !important; min-height:52px !important; flex:0 0 52px !important; box-sizing:border-box !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-cascading-filter__actions { height:60px !important; min-height:60px !important; flex:0 0 60px !important; padding:8px 14px !important; box-sizing:border-box !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { height:46px !important; min-height:46px !important; flex:0 0 46px !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-cascading-filter__actions,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-cascading-filter__actions,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-cascading-filter__actions,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-cascading-filter .grndtide-cascading-filter__actions { height:60px !important; min-height:60px !important; flex:0 0 60px !important; padding:8px 14px !important; box-sizing:border-box !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-filter-heading { height:46px !important; min-height:46px !important; flex:0 0 46px !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter > .grndtide-cascading-filter__actions { height:60px !important; min-height:60px !important; flex:0 0 60px !important; padding:8px 14px !important; }
}

/* Final responsive sizing pass. Desktop scales with the viewport; tablet and
 * phone share the drawer interaction so the filter never competes with the
 * product grid for cramped horizontal space. */
@media (min-width:1024px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-layout,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-layout { grid-template-columns:clamp(320px,24vw,460px) minmax(0,1fr) !important; gap:clamp(24px,3vw,52px) !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) { width:100% !important; height:clamp(420px,58vh,680px) !important; max-height:none !important; transform:none !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter { height:100% !important; min-height:0 !important; max-height:none !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { flex:0 0 clamp(54px,7vh,72px) !important; height:clamp(54px,7vh,72px) !important; min-height:clamp(54px,7vh,72px) !important; font-size:clamp(14px,1.1vw,17px); }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search { flex:0 0 clamp(56px,8vh,72px) !important; height:clamp(56px,8vh,72px) !important; padding:clamp(8px,1vw,14px) clamp(14px,1.6vw,24px); }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search input { height:100%; font-size:clamp(12px,1vw,14px); }
	.grndtide-shop .grndtide-cascading-filter__body { grid-template-columns:minmax(130px,38%) minmax(0,62%); }
	.grndtide-shop .grndtide-cascading-filter__categories button { min-height:clamp(44px,6vh,58px); font-size:clamp(12px,1vw,14px); }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice { min-height:clamp(42px,5.5vh,56px); font-size:clamp(12px,1vw,14px); }
	.grndtide-shop .grndtide-cascading-filter__actions { flex:0 0 clamp(76px,10vh,104px) !important; min-height:clamp(76px,10vh,104px) !important; height:clamp(76px,10vh,104px) !important; padding:clamp(12px,1.3vw,20px) clamp(14px,1.6vw,24px); }
}

@media (min-width:768px) and (max-width:1023px) {
	.grndtide-shop .grndtide-mobile-filter-trigger { position:fixed !important; z-index:140 !important; right:20px !important; bottom:20px !important; display:inline-flex !important; align-items:center; min-height:48px; padding:0 18px !important; border:0 !important; border-radius:4px !important; background:#242422 !important; color:#fff !important; font:800 12px/1 Arial,Helvetica,sans-serif !important; box-shadow:0 8px 22px rgba(0,0,0,.22); }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters:has(.grndtide-cascading-filter) { position:fixed !important; z-index:130 !important; inset:auto 16px 16px !important; display:none !important; width:auto !important; height:min(82dvh,620px) !important; max-height:none !important; padding:0 !important; border-radius:16px !important; opacity:1 !important; visibility:visible !important; transform:none !important; overflow:hidden !important; box-shadow:0 18px 50px rgba(0,0,0,.28) !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter) { display:block !important; }
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter,
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-filter-form.grndtide-cascading-filter { height:100% !important; min-height:0 !important; max-height:none !important; }
	.grndtide-shop .grndtide-cascading-filter { height:100% !important; min-height:0 !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { flex-basis:58px !important; height:58px !important; min-height:58px !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search { flex-basis:60px !important; height:60px !important; }
	.grndtide-shop .grndtide-cascading-filter__actions { flex-basis:78px !important; min-height:78px !important; height:78px !important; }
}

@media (max-width:767px) {
	.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter) { inset:auto 0 0 !important; width:100vw !important; height:min(88dvh,700px) !important; max-height:calc(100dvh - 12px) !important; border-radius:16px 16px 0 0 !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-heading { flex-basis:58px !important; height:58px !important; min-height:58px !important; }
	.grndtide-shop .grndtide-cascading-filter .grndtide-filter-search { flex-basis:60px !important; height:60px !important; }
	.grndtide-shop .grndtide-cascading-filter__categories { flex-basis:58px !important; min-height:58px !important; height:58px !important; }
	.grndtide-shop .grndtide-cascading-filter__panels { min-height:0 !important; }
	.grndtide-shop .grndtide-cascading-filter__panels .grndtide-filter-choice { min-height:54px !important; padding:0 0 !important; }
	.grndtide-shop .grndtide-cascading-filter__actions { min-height:88px !important; padding:14px 18px max(15px,env(safe-area-inset-bottom)) !important; }
}

/* Match the reference modal proportions on touch layouts. Keep the drawer
 * content scrollable, but give the panel a readable max width and breathing
 * room around it instead of stretching edge to edge. */
@media (min-width:768px) and (max-width:1023px) {
	body.archive.post-type-archive-product .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter),
	body.tax-product_cat .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter),
	body.tax-grndtide_stone .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter),
	body.tax-grndtide_other_material .grndtide-shop.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter) {
		inset:auto auto 16px 50% !important;
		width:min(calc(100vw - 32px),560px) !important;
		height:min(82dvh,620px) !important;
		border-radius:16px !important;
		transform:translateX(-50%) !important;
	}
	.grndtide-shop .grndtide-catalog-filters.is-open .grndtide-cascading-filter__actions {
		display:grid !important;
		grid-template-columns:repeat(2,minmax(0,1fr)) !important;
		grid-template-rows:minmax(48px,1fr) !important;
		gap:12px !important;
		align-items:center !important;
	}
	.grndtide-shop .grndtide-catalog-filters.is-open .grndtide-cascading-filter__actions button {
		width:100% !important;
		min-width:0 !important;
		margin:0 !important;
		grid-column:auto !important;
		grid-row:1 !important;
	}
}

@media (max-width:767px) {
	.grndtide-shop .grndtide-catalog-filters.is-open:has(.grndtide-cascading-filter) {
		inset:auto auto 16px 50% !important;
		width:min(calc(100vw - 32px),400px) !important;
		height:min(88dvh,700px) !important;
		max-height:calc(100dvh - 32px) !important;
		border-radius:16px !important;
		transform:translateX(-50%) !important;
	}
	.grndtide-shop .grndtide-cascading-filter__actions {
		display:grid !important;
		grid-template-columns:repeat(2,minmax(0,1fr)) !important;
		grid-template-rows:minmax(48px,1fr) !important;
		gap:12px !important;
		align-items:center !important;
	}
	.grndtide-shop .grndtide-catalog-filters.is-open .grndtide-cascading-filter__actions button {
		width:100% !important;
		min-width:0 !important;
		margin:0 !important;
		grid-column:auto !important;
		grid-row:1 !important;
	}
}
