/*
Theme Name:     Toyup Child Theme
Template:       toyup
Theme URI:      http://radiustheme.com/demo/wordpress/themes/toyup
Author:         RadiusTheme
Author URI:     http://radiustheme.com
Description:    Toyup is an Responsive Toy Store WooCommerce WordPress Theme.
Version:        1.0
Text Domain:    toyup
Tags: 			theme-options, featured-images, post-formats, one-column, two-columns, right-sidebar, custom-background, custom-header, editor-style, sticky-post, threaded-comments, translation-ready
License:   	  	Envato split License
License URI:  	https://themeforest.net/licenses/terms/regular
*/

/* Header — hide phone support, center search */
.header-style-4 .phone-wrap {
	display: none !important;
}

.header-style-4 #header-middlebar .menu-full-wrap {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	position: relative !important;
	column-gap: 24px !important;
}

.header-style-4 #header-middlebar .site-branding {
	flex: 0 0 auto !important;
	z-index: 2;
}

.header-style-4 #header-middlebar .header-icon-area {
	flex: 0 0 auto !important;
	margin-left: auto !important;
	z-index: 2;
}

.header-style-4 #header-middlebar .search-box-wrap-2 {
	position: absolute !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	flex-grow: 0 !important;
	width: min(640px, calc(100% - 360px)) !important;
	max-width: 640px !important;
	z-index: 1;
}

@media (max-width: 991px) {
	.header-style-4 #header-middlebar .search-box-wrap-2 {
		position: static !important;
		left: auto !important;
		transform: none !important;
		width: 100% !important;
		max-width: none !important;
		flex: 1 1 auto !important;
	}
}

/* Cart page — hide all coupon fields (ShopBuilder template 3388) */
.elementor-3388 .elementor-element.elementor-element-b247d6e,
.elementor-3388 .elementor-element.elementor-element-6639c44 .woocommerce-cart-form .coupon {
	display: none !important;
}

/* Mobile cart page (ShopBuilder template 3388) */
@media (max-width: 767px) {
	.elementor-3388 .elementor-element.elementor-element-b0ba783,
	.elementor-3388 .elementor-element.elementor-element-b369fc3 {
		--width: 100% !important;
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}

	.elementor-3388 .elementor-element.elementor-element-1ebeb6b {
		--padding-top: 24px;
		--padding-bottom: 24px;
	}

	.elementor-3388 .elementor-element.elementor-element-b0ba783,
	.elementor-3388 .elementor-element.elementor-element-b369fc3 {
		--padding-left: 8px;
		--padding-right: 8px;
	}

	.elementor-3388 .elementor-element.elementor-element-6639c44 > .elementor-widget-container,
	.elementor-3388 .elementor-element.elementor-element-b247d6e > .elementor-widget-container,
	.elementor-3388 .elementor-element.elementor-element-e119fce > .elementor-widget-container {
		padding: 16px !important;
	}

	.elementor-3388 .elementor-element.elementor-element-6639c44 .actions-button-wrapper .button[name="update_cart"] {
		width: 100% !important;
		max-width: 100% !important;
	}

	/* Mobile cart — list layout like reference (thumb left, details right) */
	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) table.shop_table.cart {
		display: block !important;
		border: none !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) table.shop_table.cart thead {
		display: none !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) table.shop_table.cart tbody {
		display: block !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) table.shop_table.cart tfoot {
		display: block !important;
		margin-top: 16px !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) table.shop_table.cart tfoot tr {
		display: block !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) table.shop_table.cart tfoot td {
		display: block !important;
		padding: 0 !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item {
		display: grid !important;
		grid-template-columns: 88px minmax(0, 1fr) auto !important;
		grid-template-areas:
			"cart-thumb cart-name cart-name"
			"cart-thumb cart-price cart-price"
			"cart-thumb cart-qty cart-remove" !important;
		column-gap: 14px !important;
		row-gap: 8px !important;
		align-items: start !important;
		padding: 20px 0 !important;
		margin: 0 !important;
		border: none !important;
		border-bottom: 1px solid #e8e8e8 !important;
		border-radius: 0 !important;
		background: transparent !important;
		position: relative !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item:last-of-type {
		border-bottom: none !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td {
		display: block !important;
		padding: 0 !important;
		border: none !important;
		width: auto !important;
		max-width: none !important;
		text-align: left !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td::before {
		display: none !important;
		content: none !important;
	}

	/* ShopBuilder hides thumb without show-image-on-mobile — force visible */
	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-thumbnail,
	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-thumbnail.hide-image-on-mobile {
		display: block !important;
		grid-area: cart-thumb !important;
		grid-row: 1 / span 3 !important;
		align-self: start !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-thumbnail img {
		width: 88px !important;
		height: 88px !important;
		max-width: 88px !important;
		object-fit: cover !important;
		border-radius: 8px !important;
		display: block !important;
		margin: 0 !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-name {
		grid-area: cart-name !important;
		grid-column: 2 / 3 !important;
		justify-self: start !important;
		font-size: 16px !important;
		font-weight: 500 !important;
		line-height: 1.45 !important;
		color: #1a1a1a !important;
		text-align: left !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-name a {
		color: inherit !important;
		text-decoration: none !important;
		pointer-events: none !important;
		cursor: default !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item .product-attributes-wrapper {
		display: none !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-price {
		grid-area: cart-price !important;
		grid-column: 2 / 3 !important;
		justify-self: start !important;
		text-align: left !important;
		font-size: 15px !important;
		font-weight: 400 !important;
		color: #333 !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-quantity {
		grid-area: cart-qty !important;
		grid-column: 2 / 3 !important;
		justify-self: start !important;
		align-self: center !important;
		text-align: left !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-remove {
		display: block !important;
		grid-area: cart-remove !important;
		grid-column: 3 / 4 !important;
		justify-self: start !important;
		align-self: center !important;
		position: static !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		width: auto !important;
		height: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		background: none !important;
		border: none !important;
		border-radius: 0 !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-remove .table-column-wrapper {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: auto !important;
		height: auto !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-remove a.remove {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		position: static !important;
		width: 28px !important;
		height: 28px !important;
		font-size: 17px !important;
		line-height: 1 !important;
		color: #69778a !important;
		text-decoration: none !important;
		background: none !important;
		border: none !important;
		border-radius: 0 !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-remove a.remove:hover {
		color: #c0392b !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-remove a.remove i {
		display: inline-block !important;
		font-size: 17px !important;
		line-height: 1 !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-quantity .table-column-wrapper,
	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-price .table-column-wrapper,
	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-name .table-column-wrapper {
		text-align: left !important;
		justify-content: flex-start !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item .quantity,
	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item .rtsb-quantity-box-group {
		width: 118px !important;
		max-width: 118px !important;
		margin: 0 !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item td.product-subtotal {
		display: none !important;
	}

	/* ShopBuilder sets grid-column:1/3 + text-align:right on mobile — reset */
	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item > td:not(.product-thumbnail):not(.product-remove) {
		grid-column: 2 / 3 !important;
		justify-self: start !important;
		text-align: left !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item > td.product-remove {
		grid-column: 3 / 4 !important;
		justify-self: start !important;
		text-align: left !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item > td.product-thumbnail {
		grid-column: 1 / 2 !important;
	}

	.elementor-3388 .rtsb-cart-table:not(.rtsb-table-horizontal-scroll-on-mobile) .woocommerce-cart-form__cart-item .table-column-wrapper {
		text-align: left !important;
	}

	.elementor-3388 .rtsb-cart-table .actions-button-wrapper {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}
}

/* =========================================================
   Home 01 Banner Test — Elementor video hero + transparent header
   Edit video/text/button in Elementor. Theme only styles header.
   ========================================================= */

body.toyup-video-banner-page .entry-banner {
	display: none !important;
}

body.toyup-video-banner-page #content.site-content {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

/* Transparent header over video */
body.toyup-video-banner-page .site-header,
body.toyup-video-banner-page .header-area {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	z-index: 999 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.toyup-video-banner-page #tophead.header-top-bar,
body.toyup-video-banner-page .header-top-bar,
body.toyup-video-banner-page .header-menu,
body.toyup-video-banner-page .header-menu.header-top,
body.toyup-video-banner-page .header-menu.header-bottom,
body.toyup-video-banner-page .header-style-4 .header-bottom,
body.toyup-video-banner-page .menu-full-wrap,
body.toyup-video-banner-page .menu-full-wrap.header-dark,
body.toyup-video-banner-page.header-style-4 .header-area,
body.toyup-video-banner-page.header-style-4 .header-bottom {
	background: transparent !important;
	box-shadow: none !important;
	border-color: transparent !important;
}

body.toyup-video-banner-page .header-area::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.08) 65%, transparent 100%);
	pointer-events: none;
	z-index: 0;
}

body.toyup-video-banner-page .header-area > *:not(#header-menu) {
	position: relative;
	z-index: 1;
}

body.toyup-video-banner-page #header-menu {
	position: relative;
	z-index: 2;
}

/* Sticky: bottom nav only */
body.toyup-video-banner-page #header-menu.rt-sticky {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	z-index: 10000 !important;
	margin: 0 !important;
	background: #ffffff !important;
	box-shadow: 0 2px 16px rgba(0, 0, 0, 0.1) !important;
}

body.toyup-video-banner-page #header-menu.rt-sticky .menu-full-wrap {
	background: #ffffff !important;
}

body.toyup-video-banner-page.admin-bar #header-menu.rt-sticky {
	top: 32px !important;
}

@media (max-width: 782px) {
	body.toyup-video-banner-page.admin-bar #header-menu.rt-sticky {
		top: 46px !important;
	}
}

body.toyup-video-banner-page #header-menu.rt-sticky .main-navigation nav > ul > li > a,
body.toyup-video-banner-page #header-menu.rt-sticky .header-icon-area a {
	color: inherit !important;
}

body.toyup-video-banner-page .site-header .main-navigation nav > ul > li > a,
body.toyup-video-banner-page .site-header .header-icon-area a,
body.toyup-video-banner-page .site-header .header-icon-area .rt-cart-icon,
body.toyup-video-banner-page .header-top-bar,
body.toyup-video-banner-page .header-top-bar a,
body.toyup-video-banner-page .header-top-bar li,
body.toyup-video-banner-page .header-style-4 .phone-wrap .info-text,
body.toyup-video-banner-page .header-style-4 .phone-wrap .info-text a,
body.toyup-video-banner-page .header-style-4 .phone-wrap .info-text span {
	color: #ffffff !important;
}

body.toyup-video-banner-page .header-style-4 .header-icon-area .item-icon > a,
body.toyup-video-banner-page .header-style-4 .header-icon-area .item-icon .rt-cart-icon {
	border-color: rgba(255, 255, 255, 0.45) !important;
	color: #ffffff !important;
}

body.toyup-video-banner-page .header-style-4 .phone-wrap {
	background-color: rgba(255, 255, 255, 0.12) !important;
	border-color: rgba(255, 255, 255, 0.45) !important;
}

body.toyup-video-banner-page .header-style-4 .header-top .search-box-wrap-2 {
	border-color: rgba(255, 255, 255, 0.4) !important;
	background: rgba(255, 255, 255, 0.12) !important;
}

/* Elementor video hero layout — full-viewport cover */
body.toyup-video-banner-page .toyup-el-video-hero {
	position: relative !important;
	min-height: 100vh !important;
	height: 100vh !important;
	overflow: hidden !important;
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

body.toyup-video-banner-page .toyup-el-video-hero.e-con-boxed > .e-con-inner,
body.toyup-video-banner-page .toyup-el-video-hero > .e-con-inner {
	max-width: none !important;
	width: 100% !important;
	min-height: 100% !important;
	height: 100% !important;
	position: relative !important;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Video sits behind content and fills the hero */
body.toyup-video-banner-page .toyup-el-video-hero > .elementor-widget-video,
body.toyup-video-banner-page .toyup-el-video-hero .elementor-element-a1vidbg0,
body.toyup-video-banner-page .toyup-el-video-bg {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	z-index: 0 !important;
	pointer-events: none !important;
}

body.toyup-video-banner-page .toyup-el-video-hero .elementor-widget-video .elementor-widget-container,
body.toyup-video-banner-page .toyup-el-video-hero .e-hosted-video,
body.toyup-video-banner-page .toyup-el-video-hero .elementor-wrapper {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.toyup-video-banner-page .toyup-el-video-hero .elementor-video,
body.toyup-video-banner-page .toyup-el-video-hero video {
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	width: 100% !important;
	height: 100% !important;
	min-width: 100% !important;
	min-height: 100% !important;
	transform: translate(-50%, -50%) !important;
	object-fit: cover !important;
	max-width: none !important;
}

body.toyup-video-banner-page .toyup-el-video-hero .elementor-custom-embed-image-overlay {
	display: none !important;
}

/* Dark shade over video for readable text */
body.toyup-video-banner-page .toyup-el-video-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(
		90deg,
		rgba(8, 24, 40, 0.72) 0%,
		rgba(8, 24, 40, 0.45) 48%,
		rgba(8, 24, 40, 0.2) 100%
	);
}

/* Pin copy to upper-left — never vertically centered */
body.toyup-video-banner-page .toyup-el-video-content {
	position: absolute !important;
	top: 230px !important; /* ≤1200 / default */
	left: 24px !important;
	right: auto !important;
	bottom: auto !important;
	z-index: 2 !important;
	width: min(560px, calc(100% - 48px)) !important;
	max-width: 560px !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: none !important;
}

body.admin-bar.toyup-video-banner-page .toyup-el-video-content {
	top: 262px !important;
}

/* Wide screens: nudge copy down a bit */
@media (min-width: 1200px) {
	body.toyup-video-banner-page .toyup-el-video-content {
		top: 290px !important;
	}

	body.admin-bar.toyup-video-banner-page .toyup-el-video-content {
		top: 322px !important;
	}
}

@media (min-width: 1440px) {
	body.toyup-video-banner-page .toyup-el-video-content {
		left: max(24px, calc((100% - 1410px) / 2 + 24px)) !important;
	}
}

@media (max-width: 1199px) {
	body.toyup-video-banner-page .toyup-el-video-content {
		top: 180px !important;
	}

	body.admin-bar.toyup-video-banner-page .toyup-el-video-content {
		top: 212px !important;
	}
}

body.toyup-video-banner-page .toyup-el-video-content.e-con-boxed > .e-con-inner,
body.toyup-video-banner-page .toyup-el-video-content > .e-con-inner {
	max-width: 560px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
}

/* Match previous hero copy styles */
body.toyup-video-banner-page .toyup-el-video-content .elementor-element-c3sub001 .elementor-heading-title,
body.toyup-video-banner-page .toyup-el-video-content .elementor-widget-heading:first-child .elementor-heading-title {
	font-size: 14px !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	color: #ffffff !important;
	opacity: 0.92;
	margin: 0 0 12px !important;
}

body.toyup-video-banner-page .toyup-el-video-content .elementor-element-d4title01 .elementor-heading-title {
	font-size: clamp(32px, 5vw, 56px) !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	color: #ffffff !important;
	max-width: 560px !important;
	margin: 0 0 16px !important;
}

body.toyup-video-banner-page .toyup-el-video-content .elementor-widget-text-editor,
body.toyup-video-banner-page .toyup-el-video-content .elementor-widget-text-editor p {
	font-size: 16px !important;
	line-height: 1.6 !important;
	color: rgba(255, 255, 255, 0.88) !important;
	max-width: 480px !important;
	margin: 0 0 28px !important;
}

body.toyup-video-banner-page .toyup-el-video-content .elementor-widget {
	margin: 0 !important;
	padding: 0 !important;
}

body.toyup-video-banner-page .toyup-el-video-content .elementor-button-wrapper {
	margin: 0 !important;
}

body.toyup-video-banner-page .toyup-el-video-content .elementor-button {
	background-color: #0e77a5 !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 50px !important;
	padding: 14px 28px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	box-shadow: none !important;
}

body.toyup-video-banner-page .toyup-el-video-content .elementor-button:hover {
	background-color: #0b6288 !important;
	color: #ffffff !important;
}

@media (max-width: 991px) {
	/* Mobile meanBar is opaque white — keep content clear of it */
	body.toyup-video-banner-page .mean-bar {
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
	}

	body.toyup-video-banner-page .mean-bar .meanmenu-reveal,
	body.toyup-video-banner-page .mean-bar .logo-small a {
		color: #ffffff !important;
	}
}

@media (max-width: 767px) {
	body.toyup-video-banner-page .toyup-el-video-content {
		top: 100px !important;
		left: 20px !important;
		width: min(560px, calc(100% - 40px)) !important;
	}

	body.admin-bar.toyup-video-banner-page .toyup-el-video-content {
		top: 146px !important;
	}

	body.toyup-video-banner-page .toyup-el-video-content .elementor-element-d4title01 .elementor-heading-title {
		font-size: 28px !important;
	}
}

/* =========================================================
   Uniform product card sizes — fixed image box, equal height
   (same as Appearance → Additional CSS / home-01)
   ========================================================= */
.woocommerce ul.products {
	display: flex;
	flex-wrap: wrap;
}

.woocommerce ul.products li.product,
.rtsb-elementor-container .rtsb-product {
	display: flex;
	flex-direction: column;
	height: auto;
}

.woocommerce .rt-product-block,
.rtsb-elementor-container .rtsb-grid-item {
	display: flex;
	flex-direction: column;
	height: 100%;
	width: 100%;
}

/* Fixed square image area */
.woocommerce li.product .rt-product-block .rt-product-thumb,
.rtsb-elementor-container .rtsb-product-img {
	position: relative;
	overflow: hidden;
}

.woocommerce li.product .rt-product-block .rt-product-thumb {
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}

.rtsb-elementor-container .rtsb-product-img figure {
	aspect-ratio: 1 / 1;
	margin: 0;
	overflow: hidden;
	background: var(--toyup-grey-color, #f5f5f5);
}

.rtsb-elementor-container .rtsb-product-img figure a.rtsb-img-link {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}

.woocommerce li.product .rt-product-block .rt-product-thumb > a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.woocommerce li.product .rt-product-block .rt-product-thumb img,
.rtsb-elementor-container .rtsb-product-img img.rtsb-product-image {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain;
	object-position: center;
	padding: 12px;
	box-sizing: border-box;
	margin: 0 !important;
}

.rtsb-elementor-container .rtsb-product-img img.rtsb-img-hover {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
	object-position: center;
	padding: 12px;
	box-sizing: border-box;
}

.woocommerce li.product .rt-product-block:hover .rt-product-thumb img {
	transform: none;
}

/* Align text area across cards */
.woocommerce .rt-product-block .rt-content-area,
.rtsb-elementor-container .rtsb-product-content {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}

.woocommerce .rt-product-block .rt-content-area .rt-title,
.rtsb-elementor-container .rtsb-product-content .product-title,
.rtsb-elementor-container .rtsb-product-content .product-title a {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.4em;
}

.rtsb-elementor-container .rtsb-product-content .product-title {
	margin-top: auto;
}

/* Add to cart on hover — bottom-right of image (slider/grid layout 2) */
.rtsb-toyup-slider-layout2 .rtsb-product .rtsb-action-buttons.bottom-part,
.rtsb-toyup-grid-layout2 .rtsb-product .rtsb-action-buttons.bottom-part {
	left: auto;
	right: 12px;
	width: auto;
	bottom: calc(100% + 12px);
	transform: none !important;
	z-index: 5;
}

.rtsb-toyup-slider-layout2 .rtsb-product:hover .rtsb-action-buttons.bottom-part,
.rtsb-toyup-grid-layout2 .rtsb-product:hover .rtsb-action-buttons.bottom-part {
	transform: none !important;
	opacity: 1;
	visibility: visible;
}

.rtsb-toyup-slider-layout2 .rtsb-product:hover .rtsb-product-content,
.rtsb-toyup-grid-layout2 .rtsb-product:hover .rtsb-product-content {
	transform: none;
}

.rtsb-toyup-slider-layout2 .rtsb-action-buttons.bottom-part .rtsb-buttons-area,
.rtsb-toyup-slider-layout2 .rtsb-action-buttons.bottom-part .rtsb-action-button-list,
.rtsb-toyup-grid-layout2 .rtsb-action-buttons.bottom-part .rtsb-buttons-area,
.rtsb-toyup-grid-layout2 .rtsb-action-buttons.bottom-part .rtsb-action-button-list {
	display: flex;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
}

.rtsb-toyup-slider-layout2 .rtsb-action-buttons.bottom-part .rtsb-add-to-cart-btn.has-text,
.rtsb-toyup-grid-layout2 .rtsb-action-buttons.bottom-part .rtsb-add-to-cart-btn.has-text {
	background-color: var(--toyup-primary-color);
	color: var(--toyup-white-color);
	border-color: transparent;
	border-radius: 50px;
	padding: 0 16px;
	width: auto;
	min-height: 36px;
}

.scroll-wrap i {
	background-color: var(--toyup-primary-color) !important;
}