/* Keep the desktop contact bar and main menu together while scrolling. */
@media (min-width: 1025px) {
	body:not(.wp-admin) .whb-header.whb-default_header {
		position: sticky;
		top: calc(var(--wd-admin-bar-h, 0px) + 10px);
		z-index: 390;
		width: 96%;
		margin: 10px auto;
	}

	body:not(.wp-admin) .whb-header.whb-default_header,
	body:not(.wp-admin) .whb-default_header .whb-main-header {
		background: transparent !important;
		box-shadow: none;
	}

	body:not(.wp-admin) .whb-default_header .whb-row.whb-general-header {
		background: #fff !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
		border-color: #fff;
	}

	body:not(.wp-admin) .whb-default_header .whb-general-header::before,
	body:not(.wp-admin) .whb-default_header .whb-general-header::after,
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-general-header-inner,
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-flex-row {
		background: transparent !important;
	}

	body:not(.wp-admin) .whb-default_header .whb-main-header {
		border-radius: 18px;
		box-shadow: 0 12px 32px rgba(0, 0, 0, .16);
	}

	body:not(.wp-admin) .whb-default_header .whb-general-header {
		border-radius: 0 0 18px 18px;
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, .35);
	}

	body:not(.wp-admin) .whb-default_header .whb-top-bar {
		margin-bottom: 0;
		border-radius: 18px 18px 0 0;
		background: linear-gradient(110deg, #e87508, #f49716) !important;
		border-bottom: 0;
	}
}

/* Soft white edge and yellow outer glow at half the original opacity. */
body:not(.wp-admin) .whb-default_header .wd-logo img {
	filter: drop-shadow(0 0 2px rgba(255, 255, 255, .475))
		drop-shadow(0 0 6px rgba(255, 255, 255, .4))
		drop-shadow(0 0 14px rgba(255, 210, 0, .275));
}

/* Center the desktop logo between the two halves of the existing menu. */
@media (min-width: 1025px) {
	body:not(.wp-admin) .whb-default_header .whb-general-header {
		--gift4u-logo-width: clamp(123.2px, 10.08vw, 179.2px);
		--gift4u-menu-height: clamp(42px, 3vw, 54px);
		position: relative;
		margin-top: 0;
		margin-bottom: 14px;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header > .container {
		width: 100%;
		max-width: none;
		padding-inline: 20px;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header-inner {
		height: var(--gift4u-menu-height);
		max-height: var(--gift4u-menu-height);
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-col-left {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		margin: 0;
		z-index: 2;
		height: auto;
		max-height: none;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .site-logo {
		margin: 0;
		padding: 0;
		max-height: none;
		line-height: 0;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-col-left .wd-main-logo {
		display: block;
		max-height: none;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-col-left .wd-logo img {
		display: block;
		padding: 0;
		width: var(--gift4u-logo-width);
		max-width: var(--gift4u-logo-width) !important;
		height: auto;
		max-height: none;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-col-center {
		padding-inline: 300px;
		min-width: 0;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .wd-nav-main {
		display: grid;
		grid-template-columns: .55fr 1.45fr 1fr calc(var(--gift4u-logo-width) + 36px) repeat(3, 1fr);
		gap: 0 !important;
		align-items: center;
	}
	body:not(.wp-admin) .whb-default_header .wd-nav-main > li {
		justify-self: center;
		min-width: 0;
	}
	body:not(.wp-admin) .whb-default_header .wd-nav-main > li > a {
		white-space: nowrap;
	}
	body:not(.wp-admin) .whb-default_header .wd-nav-main > li:nth-child(4) {
		grid-column: 5;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-col-right {
		position: absolute;
		left: 18px;
		top: 50%;
		transform: translateY(-50%);
		margin: 0;
	}
}
@media (min-width: 1025px) and (max-width: 1600px) {
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-col-center {
		padding-inline: 135px;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-col-right {
		gap: 0;
	}
	body:not(.wp-admin) .whb-default_header .wd-header-main-nav .item-level-0 > a,
	body:not(.wp-admin) .whb-default_header .wd-header-main-nav .item-level-0 > a .nav-link-text {
		font-size: 12px !important;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-col-right .wd-tools-text {
		display: none;
	}
	body:not(.wp-admin) .whb-default_header .whb-general-header .whb-col-right .wd-tools-element > a {
		padding-inline: 5px;
	}
	body:not(.wp-admin) .whb-default_header .wd-header-my-account > a::before {
		content: "";
		width: 18px;
		height: 18px;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23222' stroke-width='1.8'%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3Cpath d='M4 22v-3a8 8 0 0 1 16 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
	}
}

@media (min-width: 1025px) and (max-width: 1200px) {
	body:not(.wp-admin) .whb-default_header .whb-general-header .wd-nav-main {
		grid-template-columns: .4fr 1.65fr .95fr calc(var(--gift4u-logo-width) + 16px) repeat(3, 1fr);
	}
	body:not(.wp-admin) .whb-default_header .wd-header-main-nav .item-level-0 > a,
	body:not(.wp-admin) .whb-default_header .wd-header-main-nav .item-level-0 > a .nav-link-text {
		font-size: 11.5px !important;
	}
}

body:not(.wp-admin) {
	--wd-text-color: #fff;
	--wd-title-color: #fff;
	--wd-link-color: #fff;
	--wd-link-color-hover: #fff;
	color: #fff;
}

body:not(.wp-admin) :is(
	h1, h2, h3, h4, h5, h6,
	p, a, span, div, strong, b, em, i, small,
	li, dt, dd, blockquote, figcaption,
	td, th, label, legend, button, summary,
	.elementor-heading-title, .elementor-button-text
) {
	color: #fff !important;
}

body:not(.wp-admin) .whb-header .wd-dropdown-menu {
	--wd-text-color: #000;
	--wd-title-color: #000;
	--wd-link-color: #000;
	--wd-link-color-hover: #000;
	background-color: #fff !important;
	color: #000 !important;
}

body:not(.wp-admin) .whb-header .wd-dropdown-menu * {
	color: #000 !important;
}

/* Keep main-menu labels and tool icons readable on the white header. */
body:not(.wp-admin) .whb-default_header .whb-general-header {
	--wd-text-color: #222;
	--wd-title-color: #222;
	--wd-link-color: #222;
	--wd-link-color-hover: #b85f08;
}

body:not(.wp-admin) .whb-default_header .whb-general-header .wd-tools-element > a,
body:not(.wp-admin) .whb-default_header .whb-general-header .wd-tools-element > a *,
body:not(.wp-admin) .whb-default_header .whb-general-header .wd-nav-main > li > a,
body:not(.wp-admin) .whb-default_header .whb-general-header .wd-nav-main > li > a * {
	color: #222 !important;
}

body:not(.wp-admin) .whb-default_header .whb-general-header .wd-tools-element > a:hover,
body:not(.wp-admin) .whb-default_header .whb-general-header .wd-tools-element > a:hover *,
body:not(.wp-admin) .whb-default_header .whb-general-header .wd-nav-main > li > a:hover,
body:not(.wp-admin) .whb-default_header .whb-general-header .wd-nav-main > li > a:hover * {
	color: #b85f08 !important;
}

body:not(.wp-admin) .whb-default_header .whb-general-header .wd-tools-element > a .wd-tools-count,
body:not(.wp-admin) .whb-default_header .whb-general-header .wd-tools-element > a .wd-tools-count * {
	background-color: #b85f08;
	color: #fff !important;
}

/* Homepage product categories: image-led cards for the first Elementor row. */
.elementor-1041 .elementor-element.elementor-element-5097379 {
	display: grid !important;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 7px !important;
	align-items: stretch !important;
	padding: 9px !important;
	background: #000 !important;
	border-radius: 0 0 28px 28px;
	overflow: hidden;
}

/* The "new" badge is no longer needed on the bag-with-handle card. */
.elementor-1041 .elementor-element.elementor-element-4cf494b .elementor-ribbon {
	display: none !important;
}

.elementor-1041 .elementor-element.elementor-element-5097379 > .e-con {
	width: auto !important;
	min-width: 0 !important;
	min-height: 0 !important;
	padding-inline: 5px;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-widget-call-to-action,
.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-widget-container,
.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta {
	height: 100%;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-widget-container {
	border-radius: 22px !important;
	box-shadow: 0 12px 26px rgba(0, 0, 0, .28) !important;
	transform: translateY(0);
	transition: transform .35s ease, box-shadow .35s ease;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-widget-container:hover {
	transform: translateY(-8px);
	box-shadow: 0 20px 34px rgba(0, 0, 0, .42) !important;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta {
	position: relative;
	min-height: 432px;
	overflow: hidden;
	border: 1px solid #de7916;
	border-radius: 22px;
	background: #20232a;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta__bg-wrapper {
	position: absolute;
	inset: 0;
	min-height: 0 !important;
	height: 100%;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta__bg {
	transition: transform .7s cubic-bezier(.2, .7, .2, 1), filter .7s ease;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta:hover .elementor-cta__bg {
	transform: scale(1.08);
	filter: saturate(1.12);
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta__bg-overlay {
	background: linear-gradient(180deg, rgba(255, 255, 255, .014) 30%, rgba(255, 255, 255, .616) 100%) bottom / 100% 90% no-repeat !important;
	mix-blend-mode: normal !important;
	opacity: 0 !important;
	transition: opacity .25s ease;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta:hover .elementor-cta__bg-overlay {
	opacity: 1 !important;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta__content {
	position: absolute;
	inset: auto 0 0;
	z-index: 2;
	min-height: 0 !important;
	padding: 58px 16px 18px !important;
	background: linear-gradient(180deg, transparent 0%, rgba(255, 255, 255, .546) 62%) bottom / 100% 90% no-repeat !important;
	text-align: center;
	opacity: 0;
	transition: opacity .25s ease;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta:hover .elementor-cta__content {
	opacity: 1;
}

@media (min-width: 1025px) {
	.elementor-1041 .elementor-element.elementor-element-5097379 {
		/* Offset the template's 40px top padding and 14px header spacing. */
		margin-top: -84px;
	}
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta__title {
	margin: 0 !important;
	color: #de7916 !important;
	font-size: clamp(16px, 1.35vw, 22px) !important;
	font-weight: 800 !important;
	line-height: 1.55 !important;
	text-shadow: none;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-ribbon {
	top: 14px;
	right: 14px;
	left: auto;
	z-index: 3;
	transform: none !important;
}

.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-ribbon-inner {
	margin: 0 !important;
	padding: 5px 12px !important;
	border-radius: 999px;
	background: #e07a2d !important;
	color: #fff !important;
	font-size: 12px;
	font-weight: 700;
	transform: none !important;
}

@media (max-width: 1024px) {
	.elementor-1041 .elementor-element.elementor-element-5097379 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.elementor-1041 .elementor-element.elementor-element-5097379 {
		grid-template-columns: minmax(0, 1fr);
		gap: 5px !important;
		padding: 5px !important;
	}

	.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta {
		min-height: 306px;
	}

	.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta__content {
		padding: 46px 10px 12px !important;
	}

	.elementor-1041 .elementor-element.elementor-element-5097379 .elementor-cta__title {
		font-size: 15px !important;
	}
}
