/* ==========================================================================
   Oasis Dry Fruits: site components (child theme)
   1. Product description typography + spacing (all product pages)
   2. Header search (one field, one icon)
   3. Top-bar announcement ticker
   Visual only. No heading tags, text or content are changed.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Product description / tab content
   Ecomus prints tab content inside .woocommerce-tabs-content, which the old
   "Heading Size Fix" rules (aimed at .woocommerce-Tabs-panel) never reached,
   so description H2/H3/H4 fell back to the theme scale (68px / 52px / 42px)
   with margins of 0.83em-1.33em of that size. This restores a reading scale.
   Both class names are covered so it also works if the tab layout changes.
   -------------------------------------------------------------------------- */

.single-product div.product .woocommerce-tabs-content,
.single-product div.product .woocommerce-Tabs-panel {
	--odf-pc-h2: 22px;
	--odf-pc-h3: 18px;
	--odf-pc-h4: 16px;
	--odf-pc-body: 15px;
	font-size: var(--odf-pc-body);
	line-height: 1.65;
	color: var(--odf-text, #29231F);
}

.single-product div.product .woocommerce-tabs--dropdown .woocommerce-tabs-content {
	padding: 24px 28px;
	margin-top: 12px;
	border-color: var(--odf-border, #E7E1D9);
	border-radius: 12px;
}

/* Readable line length for text; tables keep full width */
.single-product div.product .woocommerce-tabs-content > :is(p, ul, ol, h1, h2, h3, h4, h5, h6, blockquote),
.single-product div.product .woocommerce-Tabs-panel > :is(p, ul, ol, h1, h2, h3, h4, h5, h6, blockquote) {
	max-width: 860px;
}

/* Note: the first H2 in the description tab is WooCommerce's generic
   "Description" title. Ecomus hides it on purpose (it repeats the tab title)
   and that is left as is. */

/* Headings: tags untouched, size and spacing only */
.single-product div.product .woocommerce-tabs-content :is(h1, h2),
.single-product div.product .woocommerce-Tabs-panel :is(h1, h2) {
	margin: 28px 0 10px;
	font-size: var(--odf-pc-h2);
	font-weight: 700;
	line-height: 1.3;
	color: var(--odf-brown, #3C2315);
	letter-spacing: 0;
	text-transform: none;
}

.single-product div.product .woocommerce-tabs-content h3,
.single-product div.product .woocommerce-Tabs-panel h3 {
	margin: 22px 0 8px;
	font-size: var(--odf-pc-h3);
	font-weight: 700;
	line-height: 1.35;
	color: var(--odf-brown, #3C2315);
	letter-spacing: 0;
}

.single-product div.product .woocommerce-tabs-content :is(h4, h5, h6),
.single-product div.product .woocommerce-Tabs-panel :is(h4, h5, h6) {
	margin: 16px 0 6px;
	font-size: var(--odf-pc-h4);
	font-weight: 600;
	line-height: 1.4;
	color: var(--odf-text, #29231F);
	letter-spacing: 0;
}

.single-product div.product .woocommerce-tabs-content > :first-child,
.single-product div.product .woocommerce-Tabs-panel > :first-child,
.single-product div.product .woocommerce-tabs-content > h2:first-child + *,
.single-product div.product .woocommerce-Tabs-panel > h2:first-child + * {
	margin-top: 0;
}

/* Paragraphs and lists */
.single-product div.product .woocommerce-tabs-content p,
.single-product div.product .woocommerce-Tabs-panel p {
	margin: 0 0 12px;
}

.single-product div.product .woocommerce-tabs-content :is(ul, ol),
.single-product div.product .woocommerce-Tabs-panel :is(ul, ol) {
	margin: 0 0 16px;
	padding-left: 22px;
}

.single-product div.product .woocommerce-tabs-content li,
.single-product div.product .woocommerce-Tabs-panel li {
	margin: 0 0 6px;
	padding: 0;
}

.single-product div.product .woocommerce-tabs-content li::marker,
.single-product div.product .woocommerce-Tabs-panel li::marker {
	color: var(--odf-brown, #3C2315);
	font-weight: 600;
}

/* FAQ pattern used across the catalogue: <ol><li><h4>Question</h4><p>Answer */
.single-product div.product .woocommerce-tabs-content li > :is(h3, h4, h5),
.single-product div.product .woocommerce-Tabs-panel li > :is(h3, h4, h5) {
	margin: 0 0 4px;
	font-size: 15.5px;
}

.single-product div.product .woocommerce-tabs-content li > p,
.single-product div.product .woocommerce-Tabs-panel li > p {
	margin: 0;
}

.single-product div.product .woocommerce-tabs-content ol > li,
.single-product div.product .woocommerce-Tabs-panel ol > li {
	margin-bottom: 14px;
}

/* Empty paragraphs left by the editor */
.single-product div.product .woocommerce-tabs-content p:empty,
.single-product div.product .woocommerce-Tabs-panel p:empty {
	display: none;
}

.single-product div.product .woocommerce-tabs-content > :last-child,
.single-product div.product .woocommerce-Tabs-panel > :last-child {
	margin-bottom: 0;
}

/* Spec / nutrition tables */
.single-product div.product .woocommerce-tabs-content table,
.single-product div.product .woocommerce-Tabs-panel table {
	width: 100%;
	margin: 8px 0 20px;
	border-collapse: collapse;
	font-size: 14px;
	line-height: 1.45;
}

.single-product div.product .woocommerce-tabs-content :is(th, td),
.single-product div.product .woocommerce-Tabs-panel :is(th, td) {
	padding: 8px 10px;
	border: 1px solid var(--odf-border, #E7E1D9);
	text-align: left;
	vertical-align: top;
}

.single-product div.product .woocommerce-tabs-content :is(thead td, thead th, th),
.single-product div.product .woocommerce-Tabs-panel :is(thead td, thead th, th) {
	background: var(--odf-ivory, #F8F5EF);
	font-weight: 600;
	color: var(--odf-brown, #3C2315);
}

/* Tab / accordion titles */
.single-product div.product .woocommerce-tabs--dropdown .woocommerce-tabs-title {
	font-size: 18px;
	color: var(--odf-brown, #3C2315);
}

@media (max-width: 1024px) {
	.single-product div.product .woocommerce-tabs-content,
	.single-product div.product .woocommerce-Tabs-panel {
		--odf-pc-h2: 20px;
		--odf-pc-h3: 17px;
	}
}

@media (max-width: 767px) {
	.single-product div.product .woocommerce-tabs-content,
	.single-product div.product .woocommerce-Tabs-panel {
		--odf-pc-h2: 19px;
		--odf-pc-h3: 16.5px;
		--odf-pc-h4: 15.5px;
		--odf-pc-body: 14.5px;
	}

	.single-product div.product .woocommerce-tabs--dropdown .woocommerce-tabs-content {
		padding: 16px;
	}

	.single-product div.product .woocommerce-tabs-content :is(h1, h2),
	.single-product div.product .woocommerce-Tabs-panel :is(h1, h2) {
		margin-top: 22px;
	}

	.single-product div.product .woocommerce-tabs-content h3,
	.single-product div.product .woocommerce-Tabs-panel h3 {
		margin-top: 18px;
	}

	/* Wide tables scroll inside their own box instead of pushing the page */
	.single-product div.product .woocommerce-tabs-content table,
	.single-product div.product .woocommerce-Tabs-panel table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		font-size: 13px;
	}

	.single-product div.product .woocommerce-tabs--dropdown .woocommerce-tabs-title {
		font-size: 16px;
	}
}

/* --------------------------------------------------------------------------
   2. Header search: one field, icon inside it
   The Ecomus form drew a bordered field plus a separate filled button box.
   Now the button is a transparent icon inside the single field.
   -------------------------------------------------------------------------- */

.em-instant-search__form.header-search__form,
.search-modal .em-instant-search__form {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0;
	background: var(--odf-white, #fff);
	border: 1.5px solid var(--odf-border, #E7E1D9);
	border-radius: 10px;
	box-shadow: none;
	transition: border-color .2s ease, box-shadow .2s ease;
}

.em-instant-search__form.header-search__form:focus-within,
.search-modal .em-instant-search__form:focus-within {
	border-color: var(--odf-brown, #3C2315);
	box-shadow: 0 0 0 3px rgba(60, 35, 21, .10);
}

.em-instant-search__form .em-instant-search__field {
	flex: 1 1 auto;
	min-width: 0;
	height: 42px;
	margin: 0;
	padding: 0 8px 0 16px;
	background: transparent;
	border: 0 !important;
	box-shadow: none !important;
	outline: none;
	font-size: 15px;
	color: var(--odf-text, #29231F);
}

.em-instant-search__form .em-instant-search__field::placeholder {
	color: var(--odf-muted, #6B625B);
	opacity: 1;
}

.em-instant-search__form .header-search__button,
.em-instant-search__form button[type="submit"] {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 42px;
	min-width: 44px;
	margin: 0;
	padding: 0;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 10px 10px 0;
	box-shadow: none !important;
	color: var(--odf-brown, #3C2315) !important;
	--em-button-bg-color: transparent;
	--em-button-bg-color-hover: transparent;
	--em-button-border-color: transparent;
	--em-button-border-color-hover: transparent;
	--em-button-color: var(--odf-brown, #3C2315);
	--em-button-color-hover: var(--odf-green-dk, #2F7D36);
}

.em-instant-search__form .header-search__button:hover,
.em-instant-search__form button[type="submit"]:hover {
	color: var(--odf-green-dk, #2F7D36) !important;
}

.em-instant-search__form .header-search__button .ecomus-svg-icon {
	font-size: 18px;
}

/* "Clear" (x) only appears while there is a query, sitting left of the icon */
.em-instant-search__form .close-search-modal__results {
	position: static;
	flex: 0 0 auto;
	margin: 0 2px 0 0;
	border: 0;
	background: transparent;
	--em-button-border-color: transparent;
	--em-button-bg-color: transparent;
}

.em-instant-search__form:not(.searched):not(.searching) .close-search-modal__results {
	display: none;
}

/* --------------------------------------------------------------------------
   3. Top-bar announcement ticker (right to left, continuous)
   Markup comes from inc/topbar-ticker.php. Pure CSS: the track holds two
   identical groups and slides left by exactly one group, so the loop is
   seamless. Pauses on hover. Static, single message for reduced motion.
   -------------------------------------------------------------------------- */

.topbar .topbar-center-items {
	flex: 1 1 100%;
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
}

.topbar .topbar-center-items > .topbar-custom-text {
	flex: 1 1 100%;
	min-width: 0;
	max-width: 100%;
	margin: 0;
	overflow: hidden;
	/* White comes from the theme's top-bar colour token (Customizer: #ffffff) */
	color: var(--em-color__dark, #ffffff);
}

.topbar .odf-marquee,
.topbar .odf-marquee__item {
	color: #ffffff;
}

.odf-marquee {
	display: block;
	width: 100%;
	overflow: hidden;
	white-space: nowrap;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
}

.odf-marquee__track {
	display: inline-flex;
	flex-wrap: nowrap;
	will-change: transform;
	animation: odf-marquee 60s linear infinite;
}

.odf-marquee:hover .odf-marquee__track {
	animation-play-state: paused;
}

.odf-marquee__group {
	display: inline-flex;
	flex: 0 0 auto;
	flex-wrap: nowrap;
}

.odf-marquee__item {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	padding: 0 28px;
	white-space: nowrap;
}

.odf-marquee__item::after {
	content: "";
	display: inline-block;
	width: 5px;
	height: 5px;
	margin-left: 56px;
	border-radius: 50%;
	background: currentColor;
	opacity: .55;
}

@keyframes odf-marquee {
	from { transform: translate3d(0, 0, 0); }
	to   { transform: translate3d(-50%, 0, 0); }
}

@media (max-width: 767px) {
	.odf-marquee__track {
		animation-duration: 45s;
	}

	.odf-marquee__item {
		padding: 0 18px;
	}

	.odf-marquee__item::after {
		margin-left: 36px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.odf-marquee {
		-webkit-mask-image: none;
		mask-image: none;
		text-align: center;
	}

	.odf-marquee__track {
		animation: none;
	}

	.odf-marquee__item[aria-hidden],
	.odf-marquee__group[aria-hidden] {
		display: none;
	}

	.odf-marquee__item::after {
		display: none;
	}
}

/* --------------------------------------------------------------------------
   4. Homepage H1 band above the hero slider (Elementor widget 505db8b)
   Mockup: centred, brown, 30px desktop / 26px tablet / 21px phone.
   Flexible width (was fixed at 683px) with balanced line breaks.
   -------------------------------------------------------------------------- */
.elementor-6069 .elementor-element.elementor-element-505db8b {
	width: 100%;
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;
}

.elementor-6069 .elementor-element-505db8b .elementor-heading-title {
	text-wrap: balance;
	letter-spacing: -0.01em;
}

@media (max-width: 767px) {
	.elementor-6069 .elementor-element.elementor-element-505db8b {
		max-width: 340px;
	}
}

/* --------------------------------------------------------------------------
   5. Product page buy row: quantity | Add to cart | wishlist
   Ecomus lays these out with flex + max-width maths that squeezed the button
   into a 3-line block on phones. A grid gives the button all remaining width.
   Duplicate wishlist/compare links from the YITH plugins are hidden here
   (WCBoost provides the same actions); plugins themselves are untouched.
   -------------------------------------------------------------------------- */
.single-product div.product .summary .ecomus-product-atc-group {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: end;
	gap: 10px;
	flex-wrap: nowrap;
}

.single-product div.product .summary .ecomus-product-atc-group .em-product-quantity {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
}

.single-product div.product .summary .ecomus-product-atc-group .quantity__label {
	margin: 0;
	font-size: 13px;
	line-height: 1.2;
	color: var(--odf-muted, #6B625B);
}

.single-product div.product .summary .ecomus-product-atc-group .quantity {
	--em-quantity-height: 52px;
	width: 128px;
	min-width: 0;
	height: 52px;
	margin: 0;
}

.single-product div.product .summary .ecomus-product-atc-group .single_add_to_cart_button {
	width: 100%;
	max-width: none !important;
	height: 52px;
	min-height: 52px;
	margin: 0;
	padding: 0 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
	font-size: 16px;
	line-height: 1;
}

.single-product div.product .summary .ecomus-product-atc-group .single_add_to_cart_button .text {
	white-space: nowrap;
}

.single-product div.product .summary .ecomus-product-atc-group .product-featured-icons--single-product {
	display: flex;
	gap: 10px;
	margin: 0;
}

.single-product div.product .summary .ecomus-product-atc-group .product-featured-icons--single-product .em-button-icon {
	width: 52px;
	height: 52px;
	min-width: 52px;
	margin: 0;
}

/* Duplicates from YITH Wishlist / YITH Compare */
.single-product div.product .summary .yith-wcwl-add-to-wishlist,
.single-product div.product .summary a.compare:not(.wcboost-products-compare-button),
.single-product div.product .summary .yith-woocompare-open {
	display: none !important;
}

@media (max-width: 767px) {
	.single-product div.product .summary .ecomus-product-atc-group {
		gap: 8px;
	}

	.single-product div.product .summary .ecomus-product-atc-group .quantity {
		width: 108px;
	}

	.single-product div.product .summary .ecomus-product-atc-group .single_add_to_cart_button {
		padding: 0 12px;
		font-size: 15px;
	}

	/* Phones: keep only the wishlist heart beside the button */
	.single-product div.product .summary .ecomus-product-atc-group .product-featured-icons--single-product .wcboost-products-compare-button {
		display: none !important;
	}
}

/* 5b. Quantity box: minus | number | plus always fit (variable products have an empty max attr that widened the input and pushed + out) */
.single-product div.product .summary .ecomus-product-atc-group .quantity{display:grid !important;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;padding:0}
.single-product div.product .summary .ecomus-product-atc-group .quantity .ecomus-qty-button{position:static;display:flex;align-items:center;justify-content:center;width:36px;height:100%;margin:0;cursor:pointer}
.single-product div.product .summary .ecomus-product-atc-group .quantity .qty{width:100% !important;min-width:0;max-width:none;padding:0;margin:0;text-align:center;-moz-appearance:textfield}
.single-product div.product .summary .ecomus-product-atc-group .quantity .qty::-webkit-outer-spin-button,.single-product div.product .summary .ecomus-product-atc-group .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* 6. About page: mission section. On phones the section stacks and Ecomus' dual-image widget has no intrinsic height (its grid rows are relative), so the images overlapped the text. Give it a fixed ratio. */
@media (max-width:767px){.elementor-208 .elementor-element.elementor-element-994dc05{aspect-ratio:10/9;width:100%}}

/* 7. Cart: "Update cart" button. Ecomus styles it as a subtle text link (0 padding, 18px tall) while older CSS gives it a brown fill, so the text was clipped. Make it a proper secondary (outline) button. */
.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]{display:inline-flex !important;align-items:center;justify-content:center;height:45px;min-height:45px;padding:0 22px !important;line-height:1.2 !important;white-space:nowrap;overflow:visible;border:1px solid var(--odf-brown,#3C2315) !important;border-radius:8px;background:transparent !important;color:var(--odf-brown,#3C2315) !important;font-size:14px;font-weight:600;text-decoration:none !important}
.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]:not(:disabled):hover{background:var(--odf-brown,#3C2315) !important;color:#fff !important}
.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]:disabled,.woocommerce-cart .woocommerce-cart-form button[name="update_cart"][aria-disabled="true"]{opacity:.45;cursor:not-allowed}
.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]::before,.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]::after{display:none !important}
/* mobile width and spacing for Update cart now live in odf-checkout.css (cart actions row) */
/* 8. Homepage "Roasted Snacks" section (3b2f9b7) only.
   960px and wider: intro card on the left, products on the right, all cards the same height.
   Below 960px: intro card on top, products below. */
.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-5b32e71{min-width:0 !important;max-width:100% !important}
.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 ul.products{align-items:stretch !important}
.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 ul.products > li.product{height:auto !important;display:flex !important;margin-bottom:0 !important}
.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 li.product > .product-inner{display:flex;flex-direction:column;width:100%;height:100%}
.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 li.product .product-summary{display:flex;flex-direction:column;flex:1 1 auto}
.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 li.product .product-summary .odf-card-btn,.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 li.product .product-summary > .button{margin-top:auto !important}
@media (min-width:960px){
	.elementor-6069 .elementor-element.elementor-element-3b2f9b7 > .e-con-inner{display:grid !important;grid-template-columns:320px minmax(0,1fr);column-gap:28px;align-items:stretch}
	.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-5b32e71{grid-column:2;grid-row:1;width:auto !important;overflow:hidden;align-self:stretch}
	.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-515539e{grid-column:1;grid-row:1;width:auto !important;max-width:none !important;min-height:0 !important;height:auto !important;align-self:stretch}
	.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 .swiper-pagination{display:none !important}
	.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 .swiper,.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 .ecomus-flash-sale-carousel__inner{height:100%}
	.elementor-6069 .elementor-element-3b2f9b7 .elementor-element-5b32e71 ul.products{height:100%}
}
@media (min-width:960px) and (max-width:1199px){
	.elementor-6069 .elementor-element.elementor-element-3b2f9b7 > .e-con-inner{grid-template-columns:280px minmax(0,1fr);column-gap:20px}
	.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-515539e{padding:24px !important}
}
@media (max-width:959px){
	.elementor-6069 .elementor-element.elementor-element-3b2f9b7 > .e-con-inner{display:flex !important;flex-direction:column !important}
	.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-515539e{width:100% !important;min-height:260px !important;order:0}
	.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-5b32e71{width:100% !important;order:1;overflow:hidden}
}
@media (max-width:767px){
	.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-515539e{min-height:300px !important}
}
/* Snacks intro card: show the snacks photo instead of a flat brown fill; a soft dark gradient keeps the white text readable. */
.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-515539e{background-color:transparent !important;background-size:cover !important;background-position:center center !important}
.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-515539e::before{background:linear-gradient(180deg,rgba(28,16,8,.35) 0%,rgba(28,16,8,.62) 40%,rgba(28,16,8,.88) 100%) !important;opacity:1 !important;border-radius:inherit}
/* Tablet: wide card, darker on the left where the text sits. */
@media (min-width:768px) and (max-width:959px){.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-515539e::before{background:linear-gradient(90deg,rgba(28,16,8,.88) 0%,rgba(28,16,8,.7) 55%,rgba(28,16,8,.25) 100%) !important}}
/* Snacks card photo: portrait crop for the side card (960px+), wide photo for the full-width card below 960px. */
@media (min-width:960px){.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-515539e{background-image:url('https://oasisdryfruits.com/wp-content/uploads/2026/10/oasis-snacks-banner-desktop.jpg') !important;background-position:center center !important}}
@media (max-width:959px){.elementor-6069 .elementor-element.elementor-element-3b2f9b7 .elementor-element.elementor-element-515539e{background-image:url('https://oasisdryfruits.com/wp-content/uploads/2026/10/oasis-snacks-banner-wide.jpg') !important;background-position:center center !important}}

/* 9. Homepage "Gift Hampers" section (same design as the Snacks card, section 8) (036d7cc) only.
   960px and wider: intro card on the left, products on the right, all cards the same height.
   Below 960px: intro card on top, products below. */
.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-11cde39{min-width:0 !important;max-width:100% !important}
.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 ul.products{align-items:stretch !important}
.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 ul.products > li.product{height:auto !important;display:flex !important;margin-bottom:0 !important}
.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 li.product > .product-inner{display:flex;flex-direction:column;width:100%;height:100%}
.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 li.product .product-summary{display:flex;flex-direction:column;flex:1 1 auto}
.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 li.product .product-summary .odf-card-btn,.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 li.product .product-summary > .button{margin-top:auto !important}
@media (min-width:960px){
	.elementor-6069 .elementor-element.elementor-element-036d7cc > .e-con-inner{display:grid !important;grid-template-columns:320px minmax(0,1fr);column-gap:28px;align-items:stretch}
	.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-11cde39{grid-column:2;grid-row:1;width:auto !important;overflow:hidden;align-self:stretch}
	.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3{grid-column:1;grid-row:1;width:auto !important;max-width:none !important;min-height:0 !important;height:auto !important;align-self:stretch}
	.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 .swiper-pagination{display:none !important}
	.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 .swiper,.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 .ecomus-flash-sale-carousel__inner{height:100%}
	.elementor-6069 .elementor-element-036d7cc .elementor-element-11cde39 ul.products{height:100%}
}
@media (min-width:960px) and (max-width:1199px){
	.elementor-6069 .elementor-element.elementor-element-036d7cc > .e-con-inner{grid-template-columns:280px minmax(0,1fr);column-gap:20px}
	.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3{padding:24px !important}
}
@media (max-width:959px){
	.elementor-6069 .elementor-element.elementor-element-036d7cc > .e-con-inner{display:flex !important;flex-direction:column !important}
	.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3{width:100% !important;min-height:260px !important;order:0}
	.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-11cde39{width:100% !important;order:1;overflow:hidden}
}
@media (max-width:767px){
	.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3{min-height:300px !important}
}
/* Gifting intro card: show the gift hamper photo instead of a flat brown fill; a soft dark gradient keeps the white text readable. */
.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3{background-color:transparent !important;background-size:cover !important;background-position:center center !important}
.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3::before{background:linear-gradient(180deg,rgba(28,16,8,.35) 0%,rgba(28,16,8,.62) 40%,rgba(28,16,8,.88) 100%) !important;opacity:1 !important;border-radius:inherit}
/* Tablet: wide card, darker on the left where the text sits. */
@media (min-width:768px) and (max-width:959px){.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3::before{background:linear-gradient(90deg,rgba(28,16,8,.88) 0%,rgba(28,16,8,.7) 55%,rgba(28,16,8,.25) 100%) !important}}
/* Gift card photo: portrait crop for the side card (960px+), wide photo for the full-width card below 960px. */
@media (min-width:960px){.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3{background-image:url('https://oasisdryfruits.com/wp-content/uploads/2026/10/oasis-gift-banner-desktop.jpg') !important;background-position:center center !important}}
@media (max-width:959px){.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3{background-image:url('https://oasisdryfruits.com/wp-content/uploads/2026/10/Oasis-Gift-box-card.jpeg') !important;background-position:center center !important}}
/* Gift photo is lighter than the snacks photo: ease the top of the fade so the hamper shows, keep the bottom dark for the white text. */
.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3::before{background:linear-gradient(180deg,rgba(28,16,8,.12) 0%,rgba(28,16,8,.5) 42%,rgba(28,16,8,.88) 100%) !important}
@media (min-width:768px) and (max-width:959px){.elementor-6069 .elementor-element.elementor-element-036d7cc .elementor-element.elementor-element-2059ea3::before{background:linear-gradient(90deg,rgba(28,16,8,.88) 0%,rgba(28,16,8,.7) 55%,rgba(28,16,8,.15) 100%) !important}}

/* 10. Homepage "Visit our stores" section (d1111be) only. Visual only: no text, links or order changed.
   Desktop: photo left spanning both rows, store cards stacked right. Pin badge, address, full "Get directions" button pinned to the card bottom. */
.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664{grid-template-rows:none !important;grid-auto-rows:auto !important;align-items:stretch}
.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-39783a0{position:relative;overflow:hidden;border-radius:16px;min-height:0}
.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-39783a0 img{display:block;width:100% !important;height:100% !important;max-height:none !important;object-fit:cover;border-radius:16px}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957){position:relative;padding:22px 22px 22px 84px !important;gap:6px !important;border-color:#E7E1D9 !important;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957):hover{border-color:#CBB9A6 !important;box-shadow:0 10px 28px -14px rgba(60,35,21,.28);transform:translateY(-2px)}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957)::before{content:"";position:absolute;left:22px;top:22px;width:44px;height:44px;border-radius:12px;background:#EAF4EA url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F7D36' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") center/22px no-repeat}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-heading-title{font-size:18px !important;line-height:1.3 !important}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-widget-text-editor,:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-widget-text-editor p{color:#6B625B !important;font-size:14px !important;line-height:1.6 !important;margin:0 !important}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-widget-button{margin-top:auto !important;padding-top:12px}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-button{display:inline-flex !important;align-items:center;gap:8px;min-height:42px;padding:0 18px !important;border:1.5px solid #3C2315 !important;border-radius:999px !important;background:transparent !important;color:#3C2315 !important;font-weight:600 !important;transition:background-color .2s ease,color .2s ease}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-button::after{content:"";width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .2s ease}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-button:hover,:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-button:focus-visible{background:#3C2315 !important;color:#fff !important}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-button:hover::after{transform:translateX(3px)}
:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-button:focus-visible{outline:2px solid #2F7D36;outline-offset:3px}
@media (min-width:960px){
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) !important;grid-template-rows:1fr 1fr !important;gap:20px !important}
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-39783a0{grid-column:1;grid-row:1 / span 2;min-height:360px}
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-39783a0 img{position:absolute;inset:0}
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee{grid-column:2;grid-row:1}
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957{grid-column:2;grid-row:2}
}
@media (min-width:768px) and (max-width:959px){
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-39783a0{grid-column:1 / -1;aspect-ratio:5 / 2}
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-39783a0 img{position:absolute;inset:0}
}
@media (max-width:767px){
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664{gap:14px !important}
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-39783a0{aspect-ratio:16 / 10}
	.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-39783a0 img{position:absolute;inset:0}
	:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957){padding:18px 18px 18px 74px !important}
	:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957)::before{left:18px;top:18px;width:42px;height:42px}
	:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-heading-title{font-size:17px !important}
	:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-widget-button{align-self:stretch}
	:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-button{width:100%;justify-content:center;min-height:46px}
	:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957):hover{transform:none}
}
@media (prefers-reduced-motion:reduce){ :is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957),:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-button,:is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957) .elementor-button::after{transition:none} :is(.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-0dc1eee,.elementor-6069 .elementor-element.elementor-element-d1111be .elementor-element.elementor-element-f645664 > .elementor-element-faf0957):hover{transform:none} }
