/* =====================================================
   AudioSpace CRO storefront layer
   Presentation only – data/import/profile generators untouched.
   ===================================================== */

/* ---------- Product cards: faster scanning ---------- */
ul.products li.product .product-caption,
.wc-block-grid__products li.product .product-caption {
	padding-top: 12px;
}

ul.products li.product .woocommerce-loop-product__title,
ul.products li.product h2,
ul.products li.product h3,
.wc-block-grid__products li.product .woocommerce-loop-product__title {
	display: -webkit-box;
	min-height: 44px;
	margin-bottom: 6px;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	font-size: 15px;
	line-height: 1.42;
}

ul.products li.product .woocommerce-loop-product__author,
.wc-block-grid__products li.product .woocommerce-loop-product__author {
	min-height: 16px;
	margin-bottom: 8px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

ul.products li.product .price,
.wc-block-grid__products li.product .price {
	font-size: 18px;
	line-height: 1.3;
}

ul.products li.product .product-image,
.wc-block-grid__products li.product .product-image {
	border-radius: 12px;
}

/* Keep card actions reachable on touch devices instead of relying on hover. */
@media (max-width: 991px) {
	.product-transition .group-action {
		right: 7px;
		bottom: 7px;
		opacity: 1;
		visibility: visible;
	}
	.product-transition .group-action .shop-action.vertical .woosq-btn {
		display: none;
	}
	.product-transition .group-action .shop-action .woosw-btn,
	.product-transition .group-action .shop-action a[class*="product_type_"] {
		width: 36px;
		height: 36px;
	}
}

/* ---------- Homepage rhythm ---------- */
.aai-cro-home .elementor-widget-divider .elementor-divider__text,
.aai-cro-home .elementor-widget-heading h2,
.aai-cro-home .elementor-widget-heading .elementor-heading-title {
	letter-spacing: -.02em;
}

.aai-cro-home .elementor-widget-bookory-products ul.products {
	margin-bottom: 0;
}

/* ---------- Catalog / filters ---------- */
.aai-cro-catalog .aai-filter-bar {
	margin-bottom: 22px;
	padding: 14px 16px;
	border-color: rgba(0,0,0,.07);
	border-radius: 12px;
	background: #fafafa;
}

.aai-cro-catalog .aai-filter-pill.active {
	background: var(--primary, #F65D4E);
	border-color: var(--primary, #F65D4E);
}

/* ---------- Single product purchase panel ---------- */
.aai-cro-product div.product .summary .price {
	margin-bottom: 14px;
}

.aai-cro-product div.product .summary form.cart {
	margin-top: 14px;
	margin-bottom: 0;
}

.aai-cro-product div.product .summary .single_add_to_cart_button {
	min-height: 52px;
	padding: 14px 28px;
	border-radius: 999px;
	font-weight: 700;
}

.aai-cro-product .aai-product-meta-albatros,
.aai-cro-product .asbp-linked-meta {
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid rgba(0,0,0,.07);
	color: #555;
	font-size: 13px;
	line-height: 1.7;
}

.aai-cro-product .woocommerce-tabs {
	margin-top: 26px;
}

.aai-cro-product .woocommerce-tabs .tabs {
	margin-bottom: 18px;
}

/* If legacy Bookory output leaks an empty count-review wrapper, collapse it. */
ul.products li.product .count-review:empty,
ul.products li.product .star-rating:empty {
	display: none !important;
}

@media (max-width: 767px) {
	ul.products li.product .woocommerce-loop-product__title,
	ul.products li.product h2,
	ul.products li.product h3 {
		min-height: 39px;
		font-size: 14px;
		line-height: 1.4;
	}
	ul.products li.product .price {
		font-size: 16px;
	}
	.aai-cro-product div.product .summary .single_add_to_cart_button {
		width: 100%;
	}
}

/* =====================================================
   CRO v2 – homepage polish after real-device preview
   ===================================================== */

/* Preview pages carrying the CRO marker should look like the real front page. */
.aai-cro-home .breadcrumb-wrap {
	display: none !important;
}

/* Slightly stronger hierarchy without making cards oversized. */
.aai-cro-home .elementor-widget-bookory-products ul.products li.product .woocommerce-loop-product__title,
.aai-cro-home .elementor-widget-bookory-products ul.products li.product h2,
.aai-cro-home .elementor-widget-bookory-products ul.products li.product h3 {
	font-size: 15.5px;
	line-height: 1.38;
}

.aai-cro-home .elementor-widget-bookory-products ul.products li.product .woocommerce-loop-product__author {
	font-size: 12.5px;
	color: #777;
}

/* Format chooser: make the two paths self-explanatory even on light artwork. */
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat-link {
	overflow: hidden;
	border-radius: 16px;
}

.aai-cro-home .elementor-widget-bookory-product-categories .category-product-img {
	position: relative;
	border-radius: 16px;
}

.aai-cro-home .elementor-widget-bookory-product-categories .category-product-img::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0) 38%, rgba(0,0,0,.62) 100%);
	pointer-events: none;
}

.aai-cro-home .elementor-widget-bookory-product-categories .product-cat-caption {
	z-index: 2;
	padding: 22px 24px;
}

.aai-cro-home .elementor-widget-bookory-product-categories .cat-title {
	color: #fff !important;
	font-size: clamp(20px, 2vw, 28px);
	font-weight: 750;
	line-height: 1.15;
	text-shadow: 0 1px 7px rgba(0,0,0,.28);
}

.aai-cro-home .elementor-widget-bookory-product-categories .cat-title::after {
	content: "Prejsť na ponuku  →";
	display: block;
	margin-top: 8px;
	font-size: 12px;
	font-weight: 650;
	letter-spacing: 0;
	opacity: .92;
}

/* Keep promotional side banner useful but subordinate to products. */
.aai-cro-home .elementor-widget-bookory-banner .elementor-widget-container,
.aai-cro-home .elementor-widget-bookory-banner .banner-wrapper {
	min-height: 0;
}

/* More compact section rhythm after viewing the full desktop page. */
.aai-cro-home .elementor-section {
	--aai-cro-section-gap: 0;
}

@media (max-width: 767px) {
	.aai-cro-home .elementor-widget-bookory-product-categories .product-cat-caption {
		padding: 18px;
	}

	.aai-cro-home .elementor-widget-bookory-product-categories .cat-title {
		font-size: 21px;
	}
}

/* =====================================================
   CRO v3 – digital product-detail hierarchy
   ===================================================== */

/* With the detail sidebar removed, keep the buying area comfortably readable. */
.aai-cro-digital-product .content-area,
.aai-cro-digital-product .site-main {
	width: 100%;
	max-width: none;
}

/* Keep the main CTA as the unmistakable primary action, but use a darker
   brand-coral for reliable white-text contrast. */
.aai-cro-digital-product div.product .summary .single_add_to_cart_button {
	min-width: 260px;
	min-height: 54px;
	padding: 15px 30px;
	border-color: #D44336;
	background: #D44336;
	color: #fff;
	font-size: 15px;
	font-weight: 750;
	box-shadow: 0 6px 16px rgba(212,67,54,.14);
}

.aai-cro-digital-product div.product .summary .single_add_to_cart_button:hover,
.aai-cro-digital-product div.product .summary .single_add_to_cart_button:focus {
	border-color: #C83F33;
	background: #C83F33;
	color: #fff;
}

/* The availability chip is a digital-service message, not warehouse stock. */
.aai-cro-digital-product .inventory_status.aai-digital-availability {
	background: #eef8ea;
	color: #4b8f46;
}

/* Keep secondary wishlist/compare actions visually quieter than purchase. */
.aai-cro-digital-product div.product .summary.entry-summary .woosw-btn,
.aai-cro-digital-product div.product .summary.entry-summary .woosc-btn {
	color: #777;
}

/* Related products can now use the full content width. */
.aai-cro-digital-product .related.products ul.products {
	margin-top: 16px;
}

@media (max-width: 767px) {
	.aai-cro-digital-product div.product .summary .single_add_to_cart_button {
		width: 100%;
		min-width: 0;
		min-height: 56px;
	}
}

/* =====================================================
   CRO v4 – professional digital product detail
   Scope: Albatros e-books / audiobooks only.
   ===================================================== */

/* Remove the large shared white panel that previously stretched to the height
   of the longer right-hand column. Gallery and buying summary become two clean,
   independent areas with natural content height. */
@media (min-width: 992px) {
	.aai-cro-digital-product div.product .content-single-wrapper {
		display: grid !important;
		grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
		align-items: start;
		column-gap: clamp(38px, 4vw, 64px);
		row-gap: 0;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}

	.aai-cro-digital-product div.product .woocommerce-product-gallery,
	.aai-cro-digital-product div.product .images {
		grid-column: 1;
		float: none !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		align-self: start;
	}

	.aai-cro-digital-product div.product .summary.entry-summary {
		grid-column: 2;
		float: none !important;
		width: 100% !important;
		max-width: 660px;
		margin: 0 !important;
		padding: 2px 0 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}
}

/* The cover itself gets one calm, premium frame – no giant blank card below. */
.aai-cro-digital-product div.product .woocommerce-product-gallery {
	padding: clamp(18px, 2.2vw, 28px) !important;
	border: 1px solid #ecebea !important;
	border-radius: 18px !important;
	background: #fff !important;
	box-shadow: 0 10px 32px rgba(28, 28, 28, .045);
	height: fit-content;
}

.aai-cro-digital-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
.aai-cro-digital-product div.product .woocommerce-product-gallery .flex-viewport {
	height: auto !important;
	min-height: 0 !important;
}

.aai-cro-digital-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image,
.aai-cro-digital-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image a {
	display: block;
	height: auto !important;
	min-height: 0 !important;
}

.aai-cro-digital-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img {
	display: block;
	width: 100% !important;
	height: auto !important;
	margin: 0 auto;
	object-fit: contain;
}

/* Cleaner buying hierarchy. */
.aai-cro-digital-product div.product .summary .product_title {
	margin-bottom: 12px;
	font-size: clamp(30px, 3vw, 46px);
	line-height: 1.08;
	letter-spacing: -.025em;
}

.aai-cro-digital-product div.product .summary .price {
	margin: 16px 0 18px;
	font-size: clamp(27px, 2.3vw, 36px);
	line-height: 1.1;
}

.aai-cro-digital-product div.product .summary .woocommerce-product-details__short-description,
.aai-cro-digital-product div.product .summary .aai-product-summary {
	max-width: 62ch;
	color: #4d4d4d;
	font-size: 16px;
	line-height: 1.65;
}

/* The format chip is useful but should not look like a second CTA. */
.aai-cro-digital-product .aai-single-format-chip {
	margin: 2px 0 10px;
	padding: 7px 11px;
	border-color: #e7e5e3;
	background: #f8f8f7;
	color: #262626;
	font-size: 12px;
	font-weight: 700;
}

/* Digital availability replaces warehouse-language stock and reads as a quiet
   service benefit. */
.aai-cro-digital-product .inventory_status.aai-digital-availability {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 6px 10px;
	border-radius: 7px;
	background: #eef7eb !important;
	color: #498243 !important;
	font-size: 11px;
	font-weight: 750;
	letter-spacing: .02em;
	text-transform: uppercase;
}

/* Keep sample visually connected to the purchase flow, but secondary to Buy. */
.aai-cro-digital-product .summary .aai-purchase-samples {
	margin: 18px 0 18px;
	padding: 16px 18px !important;
	border: 1px solid #eee8e5 !important;
	border-radius: 14px !important;
	background: #fffaf8 !important;
	box-shadow: none !important;
}

.aai-cro-digital-product .summary .aai-purchase-samples .aai-samples-title {
	margin-bottom: 10px;
	font-size: 14px;
	font-weight: 750;
}

/* Purchase row: one strong red action; wishlist is deliberately quiet. */
.aai-cro-digital-product div.product form.cart {
	display: flex;
	align-items: center;
	gap: 14px 18px;
	margin: 20px 0 0;
	padding: 22px 0;
	border-top: 1px solid #ecebea;
	border-bottom: 1px solid #ecebea;
}

.aai-cro-digital-product div.product form.cart .single_add_to_cart_button {
	min-width: 285px;
	min-height: 56px;
	padding: 15px 30px;
	border: 1px solid #e85245 !important;
	border-radius: 999px !important;
	background: #e85245 !important;
	color: #fff !important;
	font-size: 16px;
	font-weight: 750;
	letter-spacing: -.01em;
	box-shadow: 0 7px 18px rgba(232, 82, 69, .16);
	transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.aai-cro-digital-product div.product form.cart .single_add_to_cart_button:hover,
.aai-cro-digital-product div.product form.cart .single_add_to_cart_button:focus-visible {
	background: #d9473b !important;
	border-color: #d9473b !important;
	transform: translateY(-1px);
	box-shadow: 0 9px 22px rgba(217, 71, 59, .20);
}

.aai-cro-digital-product div.product form.cart .woosw-btn,
.aai-cro-digital-product div.product form.cart .woosc-btn {
	margin: 0 !important;
	color: #777 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
}

.aai-cro-digital-product div.product form.cart .woosw-btn:hover,
.aai-cro-digital-product div.product form.cart .woosc-btn:hover {
	color: #272727 !important;
}

/* Stronger reassurance: one coherent strip, not three floating notes. */
.aai-cro-digital-product .aai-purchase-assurances {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px !important;
	margin: 13px 0 22px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	font-size: 12px !important;
}

.aai-cro-digital-product .aai-purchase-assurances .aai-assurance {
	justify-content: flex-start !important;
	gap: 8px !important;
	min-height: 46px;
	padding: 9px 10px !important;
	border: 1px solid #ecebea !important;
	border-radius: 10px;
	background: #f8f8f7;
	color: #2e2e2e;
	text-align: left !important;
}

.aai-cro-digital-product .aai-purchase-assurances .aai-assurance + .aai-assurance {
	border-left: 1px solid #ecebea !important;
}

.aai-cro-digital-product .aai-purchase-assurances .aai-assurance i {
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	background: #fff;
	border: 1px solid rgba(232, 82, 69, .16);
	color: #e85245;
	font-size: 11px;
}

.aai-cro-digital-product .aai-purchase-assurances .aai-assurance strong {
	color: #2e2e2e;
	font-size: 11.5px;
	font-weight: 700;
	line-height: 1.25;
}

/* Product facts: reduce the raw-import feel. The format itself is already
   visible above, so do not repeat it in the technical meta block. */
.aai-cro-digital-product .aai-product-meta-albatros {
	margin-top: 18px !important;
	padding-top: 18px !important;
	border-top: 1px solid #ecebea !important;
	color: #555 !important;
	font-size: 13px !important;
	line-height: 1.8 !important;
}

.aai-cro-digital-product .aai-product-meta-albatros .aai-type {
	display: none !important;
}

.aai-cro-digital-product .aai-product-meta-albatros strong {
	color: #2c2c2c;
	font-weight: 700;
}

/* Full-width lower content once the distracting detail sidebar is gone. */
.aai-cro-digital-product #primary.content-area,
.aai-cro-digital-product .content-area,
.aai-cro-digital-product .site-main {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.aai-cro-digital-product .related.products {
	clear: both;
	margin-top: 34px;
}

.aai-cro-digital-product .related.products > h2 {
	margin-bottom: 20px;
	font-size: clamp(22px, 2vw, 30px);
}

/* Tablet/mobile: natural stack, no blank image column, thumb-friendly CTA. */
@media (max-width: 991px) {
	.aai-cro-digital-product div.product .content-single-wrapper {
		display: block !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
	}

	.aai-cro-digital-product div.product .woocommerce-product-gallery,
	.aai-cro-digital-product div.product .summary.entry-summary {
		float: none !important;
		width: 100% !important;
		max-width: none !important;
	}

	.aai-cro-digital-product div.product .summary.entry-summary {
		margin-top: 28px !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
	}
}

@media (max-width: 767px) {
	.aai-cro-digital-product div.product .woocommerce-product-gallery {
		padding: 14px !important;
		border-radius: 14px !important;
	}

	.aai-cro-digital-product div.product .summary .product_title {
		font-size: clamp(27px, 8vw, 36px);
	}

	.aai-cro-digital-product div.product form.cart {
		align-items: stretch;
		flex-direction: column;
		gap: 12px;
	}

	.aai-cro-digital-product div.product form.cart .single_add_to_cart_button {
		width: 100%;
		min-width: 0;
		min-height: 56px;
	}

	.aai-cro-digital-product .aai-purchase-assurances {
		grid-template-columns: 1fr !important;
		gap: 7px !important;
	}

	.aai-cro-digital-product .aai-purchase-assurances .aai-assurance,
	.aai-cro-digital-product .aai-purchase-assurances .aai-assurance + .aai-assurance {
		border: 1px solid #ecebea !important;
	}
}

/* =====================================================
   CRO v2.3.2 – catalogue cards + cart / mini-cart polish
   ===================================================== */

/* ---------- Product grids: calm, consistent, book-first ---------- */
.aai-cro-catalog ul.products {
	margin-left: -10px;
	margin-right: -10px;
}

.aai-cro-catalog ul.products li.product {
	padding-left: 10px;
	padding-right: 10px;
	margin-bottom: 38px;
	border-right: 0;
}

.aai-cro-catalog ul.products li.product:before {
	display: none;
}

.aai-cro-catalog ul.products li.product .product-block,
.elementor-widget-bookory-products ul.products li.product .product-block {
	height: 100%;
}

.aai-cro-catalog ul.products li.product .product-transition,
.elementor-widget-bookory-products ul.products li.product .product-transition {
	position: relative;
	padding: 10px;
	border: 1px solid rgba(0,0,0,.055);
	border-radius: 14px;
	background: #fafafa;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

@media (hover:hover) {
	.aai-cro-catalog ul.products li.product .product-block:hover .product-transition,
	.elementor-widget-bookory-products ul.products li.product .product-block:hover .product-transition {
		transform: translateY(-2px);
		border-color: rgba(0,0,0,.08);
		box-shadow: 0 10px 28px rgba(0,0,0,.07);
	}
}

.aai-cro-catalog ul.products li.product .product-image,
.elementor-widget-bookory-products ul.products li.product .product-image {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 0.72;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border-radius: 9px;
	background: #fff;
}

.aai-cro-catalog ul.products li.product .product-image img,
.elementor-widget-bookory-products ul.products li.product .product-image img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: contain;
	object-position: center;
}

/* When Bookory outputs the secondary hover image, keep both layers identical. */
.aai-cro-catalog ul.products li.product .product-img-wrap,
.elementor-widget-bookory-products ul.products li.product .product-img-wrap,
.aai-cro-catalog ul.products li.product .product-img-wrap .inner,
.elementor-widget-bookory-products ul.products li.product .product-img-wrap .inner {
	height: 100%;
}

.aai-cro-catalog ul.products li.product .product-caption,
.elementor-widget-bookory-products ul.products li.product .product-caption {
	padding-top: 12px;
}

.aai-cro-catalog ul.products li.product .woocommerce-loop-product__title,
.elementor-widget-bookory-products ul.products li.product .woocommerce-loop-product__title {
	min-height: 43px;
	margin: 0 0 5px;
	font-size: 14.5px;
	font-weight: 650;
	line-height: 1.45;
	-webkit-line-clamp: 2;
}

.aai-cro-catalog ul.products li.product .woocommerce-loop-product__author,
.elementor-widget-bookory-products ul.products li.product .woocommerce-loop-product__author,
.aai-cro-catalog ul.products li.product .product-brand,
.elementor-widget-bookory-products ul.products li.product .product-brand {
	min-height: 18px;
	margin: 0 0 7px;
	font-size: 11.5px;
	line-height: 1.45;
	color: #777;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.aai-cro-catalog ul.products li.product .price,
.elementor-widget-bookory-products ul.products li.product .price {
	margin-top: 3px;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
}

/* Keep the format pill compact even on narrow cover thumbnails. */
ul.products li.product .aai-product-type-badge,
.elementor-widget-bookory-products .aai-product-type-badge {
	max-width: calc(100% - 14px);
	padding: 4px 7px;
	gap: 4px;
	font-size: 9.5px;
	line-height: 1.15;
	white-space: nowrap;
	box-shadow: 0 2px 7px rgba(0,0,0,.10);
}

ul.products li.product .aai-product-type-badge__icon,
.elementor-widget-bookory-products .aai-product-type-badge__icon {
	font-size: 10px;
}

/* Fewer competing actions: keep wishlist + purchase, visually mute quick-view. */
.aai-cro-catalog .product-transition .group-action .woosq-btn,
.elementor-widget-bookory-products .product-transition .group-action .woosq-btn {
	display: none !important;
}

.aai-cro-catalog .product-transition .group-action .shop-action .woosw-btn,
.aai-cro-catalog .product-transition .group-action .shop-action a[class*="product_type_"],
.elementor-widget-bookory-products .product-transition .group-action .shop-action .woosw-btn,
.elementor-widget-bookory-products .product-transition .group-action .shop-action a[class*="product_type_"] {
	width: 38px;
	height: 38px;
	border: 1px solid rgba(0,0,0,.06);
	box-shadow: 0 3px 12px rgba(0,0,0,.08);
}

/* ---------- Side mini-cart ---------- */
.site-header-cart-side {
	background: #fff;
}

.site-header-cart-side .cart-side-heading {
	padding: 18px 20px;
	border-bottom-color: #ececec;
}

.site-header-cart-side .cart-side-title {
	font-size: 20px;
	font-weight: 700;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item {
	min-height: 112px;
	padding: 16px 36px 16px 16px;
	border-bottom: 1px solid #eeeeee;
	background: #fff;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item:hover {
	background: #fcfcfc;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item > a:not(.remove) {
	display: block;
	min-height: 80px;
	margin: 0;
	padding-right: 0;
	font-size: 13px;
	font-weight: 650;
	line-height: 1.38;
	color: #282828;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item img {
	float: left;
	width: 56px;
	height: 78px;
	max-width: 56px;
	margin: 0 12px 4px 0;
	border-radius: 6px;
	background: #fafafa;
	object-fit: contain;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item .quantity {
	display: block;
	margin-top: 5px;
	font-size: 12px;
	font-weight: 600;
	color: #777;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item .quantity .amount {
	color: var(--primary, #F65D4E);
	font-weight: 700;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item a.remove {
	top: 18px;
	right: 12px;
	width: 26px;
	height: 26px;
	margin: 0;
	transform: none;
	border-radius: 50%;
	font-size: 18px;
	line-height: 24px;
	text-align: center;
	color: #777;
	background: #f6f6f6;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item a.remove:hover {
	color: #fff;
	background: var(--primary, #F65D4E);
}

.site-header-cart-side .aai-cart-format-badge {
	display: inline-flex !important;
	width: auto !important;
	max-width: calc(100% - 72px) !important;
	margin: 6px 0 0 !important;
	padding: 3px 7px !important;
	font-size: 9px !important;
	line-height: 1.1 !important;
	white-space: nowrap !important;
}

.site-header-cart-side .widget_shopping_cart p.total {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	margin: 0;
	border-top: 1px solid #ececec;
	border-bottom: 0;
	background: #fff;
}

.site-header-cart-side .widget_shopping_cart p.total strong,
.site-header-cart-side .widget_shopping_cart p.total .amount {
	font-size: 18px;
	font-weight: 750;
	color: #282828;
}

.site-header-cart-side .widget_shopping_cart .buttons {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	padding: 0 20px 20px;
	margin: 0;
	background: #fff;
}

.site-header-cart-side .widget_shopping_cart .buttons a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid #e4e4e4;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 750;
	letter-spacing: .01em;
	text-transform: none;
	background: #fff;
	color: #282828;
}

.site-header-cart-side .widget_shopping_cart .buttons a.checkout {
	border-color: var(--primary, #F65D4E);
	background: var(--primary, #F65D4E);
	color: #fff;
}

/* ---------- Full cart ---------- */
.woocommerce-cart .woocommerce-cart-form table.shop_table {
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid #ececec;
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
}

.woocommerce-cart .woocommerce-cart-form table.shop_table thead th {
	padding-top: 14px;
	padding-bottom: 14px;
	background: #fafafa;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .02em;
	text-transform: uppercase;
	color: #777;
}

.woocommerce-cart table.cart .cart_item {
	border-bottom: 1px solid #eeeeee;
}

.woocommerce-cart table.cart .cart_item:last-of-type {
	border-bottom: 0;
}

.woocommerce-cart table.cart td {
	padding-top: 18px;
	padding-bottom: 18px;
}

.woocommerce-cart table.cart td.product-thumbnail img {
	width: 70px;
	height: 96px;
	max-width: 70px;
	border-radius: 7px;
	background: #fafafa;
	object-fit: contain;
}

.woocommerce-cart table.cart td.product-name a {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	color: #282828;
}

.woocommerce-cart table.cart .aai-cart-format-badge {
	display: inline-flex !important;
	width: auto !important;
	max-width: 100% !important;
	margin: 7px 0 0 !important;
	padding: 3px 7px !important;
	font-size: 9.5px !important;
	white-space: nowrap !important;
}

.woocommerce-cart table.cart td.product-price .amount,
.woocommerce-cart table.cart td.product-subtotal .amount {
	font-size: 15px;
	font-weight: 700;
	color: #282828;
}

.woocommerce-cart table.cart td.product-remove a.remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #f6f6f6;
	color: #777;
}

.woocommerce-cart table.cart td.product-remove a.remove:hover {
	background: var(--primary, #F65D4E);
	color: #fff;
}

.woocommerce-cart .cart_totals {
	padding: 26px 28px 30px;
	border-color: #ececec;
	border-radius: 14px;
	box-shadow: 0 10px 30px rgba(0,0,0,.035);
}

.woocommerce-cart .cart_totals > h2 {
	font-size: 24px;
	font-weight: 750;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	min-height: 52px;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 750;
}

@media (max-width: 1199px) and (min-width: 768px) {
	.aai-cro-catalog ul.products.columns-5 li.product {
		flex: 0 0 25%;
		max-width: 25%;
	}
}

@media (max-width: 767px) {
	.aai-cro-catalog ul.products,
	.elementor-widget-bookory-products ul.products {
		margin-left: -7px;
		margin-right: -7px;
	}

	.aai-cro-catalog ul.products li.product,
	.elementor-widget-bookory-products ul.products li.product {
		padding-left: 7px;
		padding-right: 7px;
		margin-bottom: 28px;
	}

	.aai-cro-catalog ul.products.columns-5 li.product,
	.aai-cro-catalog ul.products.columns-4 li.product,
	.elementor-widget-bookory-products ul.products li.product {
		flex: 0 0 50%;
		max-width: 50%;
	}

	.aai-cro-catalog ul.products li.product .product-transition,
	.elementor-widget-bookory-products ul.products li.product .product-transition {
		padding: 7px;
		border-radius: 11px;
	}

	.aai-cro-catalog ul.products li.product .woocommerce-loop-product__title,
	.elementor-widget-bookory-products ul.products li.product .woocommerce-loop-product__title {
		min-height: 39px;
		font-size: 13px;
		line-height: 1.45;
	}

	.aai-cro-catalog ul.products li.product .price,
	.elementor-widget-bookory-products ul.products li.product .price {
		font-size: 15px;
	}

	/* Don't cover a small mobile cover with action bubbles. */
	.aai-cro-catalog .product-transition .group-action,
	.elementor-widget-bookory-products .product-transition .group-action {
		display: none !important;
	}

	.site-header-cart-side {
		width: min(92vw, 370px);
		transform: translate3d(min(92vw, 370px), 0, 0);
	}

	.site-header-cart-side .widget_shopping_cart .buttons {
		grid-template-columns: 1fr;
	}

	.woocommerce-cart table.cart .cart_item {
		padding-left: 104px;
	}

	.woocommerce-cart table.cart td.product-thumbnail {
		left: 8px;
		top: 16px;
	}

	.woocommerce-cart table.cart td.product-thumbnail img {
		width: 72px;
		height: 98px;
		max-width: 72px;
	}

	.woocommerce-cart table.cart td.product-name {
		padding-top: 16px;
		padding-right: 38px;
	}

	.woocommerce-cart table.cart td.product-name a {
		font-size: 14px;
	}
}


/* =====================================================
   CRO v2.3.3 – catalogue header + high-conversion checkout
   ===================================================== */

/* Category/shop page title: preserve orientation, remove oversized dead space. */
.aai-cro-catalog .breadcrumb-wrap .elementor-section,
.aai-cro-checkout .breadcrumb-wrap .elementor-section,
.aai-cro-cart .breadcrumb-wrap .elementor-section {
	min-height: 112px !important;
	padding-top: 22px !important;
	padding-bottom: 22px !important;
}

.aai-cro-catalog .breadcrumb-wrap .elementor-heading-title,
.aai-cro-checkout .breadcrumb-wrap .elementor-heading-title,
.aai-cro-cart .breadcrumb-wrap .elementor-heading-title {
	font-size: clamp(34px, 4vw, 46px) !important;
	line-height: 1.08 !important;
	letter-spacing: -.025em !important;
}

/* Catalog toolbar should feel like a utility row, not another content block. */
.aai-cro-catalog .bookory-sorting {
	margin-bottom: 22px;
}

.aai-cro-catalog .bookory-sorting select,
.aai-cro-catalog .bookory-products-per-page select {
	min-height: 40px;
	border-color: #e8e6e4;
	border-radius: 9px;
	background: #fff;
}

/* ---------- Checkout: focused two-column purchase flow ---------- */
.aai-cro-checkout .site-content,
.aai-cro-checkout .content-area,
.aai-cro-checkout .hentry {
	background: #fff;
}

@media (min-width: 992px) {
	.aai-cro-checkout form.checkout.woocommerce-checkout {
		display: grid;
		grid-template-columns: minmax(0, 1.45fr) minmax(340px, .82fr);
		align-items: start;
		gap: clamp(42px, 5vw, 72px);
	}

	.aai-cro-checkout form.checkout #customer_details,
	.aai-cro-checkout form.checkout #order_review {
		float: none !important;
		width: auto !important;
		margin: 0 !important;
	}

	.aai-cro-checkout form.checkout #customer_details {
		grid-column: 1;
	}

	.aai-cro-checkout form.checkout #order_review {
		grid-column: 2;
		position: sticky;
		top: 112px;
	}

	.aai-cro-checkout #customer_details.col2-set .col-1,
	.aai-cro-checkout #customer_details.col2-set .col-2 {
		float: none !important;
		width: 100% !important;
		margin: 0 0 24px !important;
	}
}

.aai-cro-checkout form.checkout h3,
.aai-cro-checkout #order_review #order_review_heading {
	margin: 0 0 18px;
	font-size: 21px;
	font-weight: 750;
	line-height: 1.25;
	letter-spacing: -.015em;
	color: #202020;
}

.aai-cro-checkout .woocommerce-billing-fields,
.aai-cro-checkout .woocommerce-shipping-fields,
.aai-cro-checkout #payment {
	margin-bottom: 28px;
}

.aai-cro-checkout .form-row {
	margin-bottom: 15px;
}

.aai-cro-checkout .form-row label {
	margin-bottom: 6px;
	font-size: 12px;
	font-weight: 650;
	color: #555;
}

.aai-cro-checkout .input-text,
.aai-cro-checkout input[type="text"],
.aai-cro-checkout input[type="email"],
.aai-cro-checkout input[type="tel"],
.aai-cro-checkout input[type="password"],
.aai-cro-checkout select,
.aai-cro-checkout .select2-container .select2-selection--single {
	min-height: 48px;
	border: 1px solid #dedcda;
	border-radius: 10px;
	background: #fff;
	box-shadow: none;
}

.aai-cro-checkout .input-text:focus,
.aai-cro-checkout input:focus,
.aai-cro-checkout select:focus {
	border-color: #bdb9b6;
	box-shadow: 0 0 0 3px rgba(232,82,69,.08);
	outline: none;
}

/* Payment box: remove the legacy heavy frame while keeping Stripe fields intact. */
.aai-cro-checkout #payment {
	padding: 18px;
	border: 1px solid #ece9e7;
	border-radius: 14px;
	background: #fbfbfa;
}

.aai-cro-checkout #payment .payment_methods {
	margin: 0;
	padding: 0;
}

.aai-cro-checkout #payment .payment_methods > li {
	padding: 0;
	border-color: #ece9e7;
}

.aai-cro-checkout #payment .payment_box {
	margin: 8px 0 0;
	padding: 14px;
	border: 1px solid #ece9e7;
	border-radius: 11px;
	background: #fff;
}

/* Order summary as a premium compact card. */
.aai-cro-checkout #order_review {
	padding: 24px 24px 26px !important;
	border: 1px solid #e8e6e4 !important;
	border-radius: 16px !important;
	background: #fff !important;
	box-shadow: 0 14px 40px rgba(30, 30, 30, .055);
}

.aai-cro-checkout #order_review table td,
.aai-cro-checkout #order_review table th {
	padding: 12px 0;
	border-color: #eeeeec;
}

.aai-cro-checkout #order_review table td.product-name {
	padding-right: 14px;
	font-size: 12px;
	line-height: 1.4;
	color: #333;
}

.aai-cro-checkout #order_review table .product-name img {
	width: 42px;
	height: 58px;
	max-width: 42px;
	margin-right: 10px;
	border-radius: 5px;
	object-fit: contain;
	background: #fafafa;
}

.aai-cro-checkout #order_review .aai-cart-format-badge {
	display: inline-flex !important;
	width: auto !important;
	max-width: 100% !important;
	margin: 5px 0 0 !important;
	padding: 3px 6px !important;
	font-size: 8.5px !important;
	line-height: 1.1 !important;
	white-space: nowrap !important;
}

.aai-cro-checkout #order_review .order-total th,
.aai-cro-checkout #order_review .order-total td {
	padding-top: 16px;
	font-size: 15px;
}

.aai-cro-checkout #order_review .order-total .amount {
	font-size: 23px !important;
	font-weight: 780 !important;
	color: #202020 !important;
}

/* One unmistakable conversion action. */
.aai-cro-checkout #place_order,
.aai-cro-checkout button#place_order {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 54px;
	margin-top: 14px;
	padding: 14px 22px;
	border: 1px solid #e85245;
	border-radius: 999px;
	background: #e85245;
	color: #fff;
	font-size: 15px;
	font-weight: 760;
	letter-spacing: -.01em;
	box-shadow: 0 7px 18px rgba(232,82,69,.16);
}

.aai-cro-checkout #place_order:hover,
.aai-cro-checkout #place_order:focus-visible {
	border-color: #d9473b;
	background: #d9473b;
	color: #fff;
}

.aai-cro-checkout .woocommerce-terms-and-conditions-wrapper {
	margin-top: 12px;
	font-size: 11.5px;
	line-height: 1.5;
	color: #666;
}

.aai-checkout-confidence {
	display: grid;
	gap: 7px;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid #ece9e7;
	font-size: 11px;
	line-height: 1.35;
	color: #595959;
}

.aai-checkout-confidence span {
	display: flex;
	align-items: center;
	gap: 7px;
}

.aai-checkout-confidence i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 19px;
	width: 19px;
	height: 19px;
	border-radius: 50%;
	background: #fff3f1;
	color: #e85245;
	font-style: normal;
	font-size: 10px;
	font-weight: 800;
}

.aai-checkout-confidence strong {
	color: #333;
	font-weight: 700;
}

/* Checkout has one job. Keep tertiary navigation visually quieter. */
.aai-cro-checkout .woocommerce-form-coupon-toggle,
.aai-cro-checkout .woocommerce-info {
	font-size: 12px;
}

@media (max-width: 991px) {
	.aai-cro-checkout .breadcrumb-wrap .elementor-section,
	.aai-cro-cart .breadcrumb-wrap .elementor-section,
	.aai-cro-catalog .breadcrumb-wrap .elementor-section {
		min-height: 92px !important;
		padding-top: 18px !important;
		padding-bottom: 18px !important;
	}

	.aai-cro-checkout form.checkout.woocommerce-checkout {
		display: block;
	}

	.aai-cro-checkout #order_review {
		position: static;
		margin-top: 30px !important;
	}
}

@media (max-width: 767px) {
	.aai-cro-checkout #order_review {
		padding: 18px 16px 20px !important;
		border-radius: 13px !important;
	}

	.aai-cro-checkout form.checkout h3,
	.aai-cro-checkout #order_review #order_review_heading {
		font-size: 19px;
	}

	.aai-cro-checkout #place_order {
		min-height: 56px;
	}
}


/* =====================================================
   CRO v2.3.5 HOTFIX – safe compact breadcrumb + mini-cart
   Important: CSS only. Does NOT replace Bookory/HFE render hooks.
   ===================================================== */

/* Mini-cart format label: dedicated compact line under the product title. */
.site-header-cart-side .widget_shopping_cart .mini_cart_item > a:not(.remove) {
	display: block;
	min-width: 0;
}

.site-header-cart-side .widget_shopping_cart .aai-cart-format-badge,
.woocommerce-mini-cart .aai-cart-format-badge {
	display: flex !important;
	align-items: center !important;
	gap: 3px !important;
	width: max-content !important;
	max-width: 100% !important;
	margin: 5px 0 0 !important;
	padding: 2px 6px !important;
	border-radius: 999px !important;
	font-size: 8.5px !important;
	line-height: 1.15 !important;
	white-space: nowrap !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

/* Keep Bookory's original breadcrumb renderer and only restyle it.
   This avoids touching header/footer hooks and makes rollback trivial. */
.aai-cro-catalog .breadcrumb-wrap,
.aai-cro-cart .breadcrumb-wrap,
.aai-cro-checkout .breadcrumb-wrap {
	background: #fff !important;
	border-bottom: 1px solid #efeeec;
}

.aai-cro-catalog .breadcrumb-wrap .elementor-section,
.aai-cro-cart .breadcrumb-wrap .elementor-section,
.aai-cro-checkout .breadcrumb-wrap .elementor-section {
	min-height: 76px !important;
	padding-top: 14px !important;
	padding-bottom: 14px !important;
	background: #fff !important;
	background-image: none !important;
}

.aai-cro-catalog .breadcrumb-wrap .elementor-section > .elementor-background-overlay,
.aai-cro-cart .breadcrumb-wrap .elementor-section > .elementor-background-overlay,
.aai-cro-checkout .breadcrumb-wrap .elementor-section > .elementor-background-overlay {
	display: none !important;
}

.aai-cro-catalog .breadcrumb-wrap .elementor-container,
.aai-cro-cart .breadcrumb-wrap .elementor-container,
.aai-cro-checkout .breadcrumb-wrap .elementor-container,
.aai-cro-catalog .breadcrumb-wrap .elementor-column,
.aai-cro-cart .breadcrumb-wrap .elementor-column,
.aai-cro-checkout .breadcrumb-wrap .elementor-column,
.aai-cro-catalog .breadcrumb-wrap .elementor-widget-wrap,
.aai-cro-cart .breadcrumb-wrap .elementor-widget-wrap,
.aai-cro-checkout .breadcrumb-wrap .elementor-widget-wrap {
	background: transparent !important;
}

.aai-cro-catalog .breadcrumb-wrap .elementor-heading-title,
.aai-cro-cart .breadcrumb-wrap .elementor-heading-title,
.aai-cro-checkout .breadcrumb-wrap .elementor-heading-title {
	font-size: clamp(30px, 3vw, 38px) !important;
	line-height: 1.1 !important;
	margin: 0 !important;
}

.aai-cro-catalog .breadcrumb-wrap .woocommerce-breadcrumb,
.aai-cro-cart .breadcrumb-wrap .woocommerce-breadcrumb,
.aai-cro-checkout .breadcrumb-wrap .woocommerce-breadcrumb {
	font-size: 10px !important;
	line-height: 1.35 !important;
}

/* Reduce dead space between compact breadcrumb and commercial content. */
.aai-cro-catalog #content.site-content,
.aai-cro-cart #content.site-content,
.aai-cro-checkout #content.site-content {
	padding-top: clamp(24px, 2.4vw, 34px) !important;
}

@media (max-width: 767px) {
	.aai-cro-catalog .breadcrumb-wrap .elementor-section,
	.aai-cro-cart .breadcrumb-wrap .elementor-section,
	.aai-cro-checkout .breadcrumb-wrap .elementor-section {
		min-height: 64px !important;
		padding-top: 11px !important;
		padding-bottom: 11px !important;
	}

	.aai-cro-catalog .breadcrumb-wrap .elementor-heading-title,
	.aai-cro-cart .breadcrumb-wrap .elementor-heading-title,
	.aai-cro-checkout .breadcrumb-wrap .elementor-heading-title {
		font-size: 28px !important;
	}
}


/* =====================================================
   CRO v2.3.6 – compact Elementor archive title on desktop
   Safe targeted override for template 3100 only.
   Removes Elementor's forced 200px container height without
   touching header/footer rendering or other Elementor sections.
   ===================================================== */
@media (min-width: 1025px) {
	.elementor-3100 .elementor-element.elementor-element-1ece023 > .elementor-container {
		min-height: 0 !important;
		height: auto !important;
	}
}

/* =====================================================
   CRO v2.3.7 – catalogue brand polish
   Safe CSS-only refinement. No template/render hooks.
   ===================================================== */

.aai-cro-catalog {
	--aai-cro-coral: var(--primary, #F65D4E);
	--aai-cro-warm-bg: #fff8f5;
	--aai-cro-warm-panel: #fbfaf8;
	--aai-cro-warm-border: #eee8e3;
	--aai-cro-text: #282828;
	--aai-cro-muted: #77736f;
}

/* Compact category title stays fast, but gains a subtle AudioSpace identity. */
.aai-cro-catalog .breadcrumb-wrap {
	background: linear-gradient(90deg, #fff7f3 0%, #fffbf8 100%) !important;
	border-top: 1px solid #f8efea;
	border-bottom: 1px solid #f1e7e2;
}

.aai-cro-catalog .breadcrumb-wrap .elementor-section {
	background: transparent !important;
	background-image: none !important;
}

.aai-cro-catalog .breadcrumb-wrap .elementor-heading-title {
	position: relative;
	padding-left: 16px;
	color: var(--aai-cro-text) !important;
	font-weight: 700 !important;
	letter-spacing: -.025em !important;
}

.aai-cro-catalog .breadcrumb-wrap .elementor-heading-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: .12em;
	bottom: .12em;
	width: 3px;
	border-radius: 999px;
	background: var(--aai-cro-coral);
}

.aai-cro-catalog .breadcrumb-wrap .woocommerce-breadcrumb {
	color: #9a9692 !important;
}

.aai-cro-catalog .breadcrumb-wrap .woocommerce-breadcrumb a:hover {
	color: var(--aai-cro-coral) !important;
}

/* Sidebar: separate discovery/filtering from the white product canvas without visual noise. */
.aai-cro-catalog #secondary.widget-area .widget {
	background: var(--aai-cro-warm-panel);
	border: 1px solid var(--aai-cro-warm-border);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(54, 42, 34, .025);
}

.aai-cro-catalog #secondary.widget-area .widget .widget-title,
.aai-cro-catalog #secondary.widget-area .widget-title {
	color: var(--aai-cro-text);
	font-weight: 700;
}

.aai-cro-catalog #secondary.widget-area .widget a:not(.button) {
	transition: color .16s ease;
}

.aai-cro-catalog #secondary.widget-area .widget a:not(.button):hover,
.aai-cro-catalog #secondary.widget-area .widget li.current-cat > a,
.aai-cro-catalog #secondary.widget-area .widget li.chosen > a {
	color: var(--aai-cro-coral);
}

/* Toolbar reads as one utility control instead of floating text on a white field. */
.aai-cro-catalog .bookory-sorting {
	min-height: 50px;
	margin-bottom: 24px;
	padding: 7px 9px 7px 12px;
	border: 1px solid var(--aai-cro-warm-border);
	border-radius: 12px;
	background: var(--aai-cro-warm-panel);
}

.aai-cro-catalog .bookory-sorting .woocommerce-ordering,
.aai-cro-catalog .bookory-products-per-page {
	color: var(--aai-cro-muted);
}

.aai-cro-catalog .bookory-sorting .woocommerce-ordering select,
.aai-cro-catalog .bookory-products-per-page select:not([size]):not([multiple]) {
	min-height: 34px;
	padding-top: 4px;
	padding-bottom: 4px;
	border: 1px solid #ebe5e0;
	border-radius: 8px;
	background-color: #fff;
	color: var(--aai-cro-text);
	box-shadow: 0 1px 2px rgba(45, 35, 28, .025);
}

.aai-cro-catalog .bookory-products-per-page:after {
	background-color: #e4ddd8;
}

/* Keep covers as the main source of colour; use brand only for commerce cues. */
.aai-cro-catalog ul.products li.product .price,
.aai-cro-catalog ul.products li.product .price .amount {
	color: var(--aai-cro-coral);
}

.aai-cro-catalog ul.products li.product .product-transition {
	background: #fbfaf9;
	border-color: #f0ece9;
}

@media (hover:hover) {
	.aai-cro-catalog ul.products li.product .product-block:hover .product-transition {
		border-color: #eadfd9;
		box-shadow: 0 12px 30px rgba(52, 39, 31, .075);
	}

	.aai-cro-catalog ul.products li.product .product-block:hover .woocommerce-loop-product__title {
		color: var(--aai-cro-coral);
	}
}

/* Slightly warmer, clearer focus treatment for catalogue controls. */
.aai-cro-catalog select:focus-visible,
.aai-cro-catalog input[type="search"]:focus-visible,
.aai-cro-catalog input[type="text"]:focus-visible {
	outline: 2px solid rgba(246, 93, 78, .22);
	outline-offset: 2px;
	border-color: rgba(246, 93, 78, .45) !important;
}

@media (max-width: 767px) {
	.aai-cro-catalog .breadcrumb-wrap .elementor-heading-title {
		padding-left: 12px;
	}

	.aai-cro-catalog .bookory-sorting {
		padding: 7px 8px;
		border-radius: 10px;
	}
}


/* =====================================================
   CRO v2.3.8 – mini-cart + cart + checkout polish
   CSS-only storefront refinement. No checkout/cart hooks or markup changes.
   ===================================================== */

.aai-cro-cart,
.aai-cro-checkout {
    --aai-cro-coral: var(--primary, #F65D4E);
    --aai-cro-warm-bg: #fff8f5;
    --aai-cro-warm-panel: #fbfaf8;
    --aai-cro-warm-border: #eee8e3;
    --aai-cro-text: #282828;
    --aai-cro-muted: #77736f;
}

/* Keep cart / checkout page headers compact but visually related to catalogue. */
.aai-cro-cart .breadcrumb-wrap,
.aai-cro-checkout .breadcrumb-wrap {
    background: linear-gradient(90deg, #fff7f3 0%, #fffbf8 100%) !important;
    border-top: 1px solid #f8efea;
    border-bottom: 1px solid #f1e7e2;
}

.aai-cro-cart .breadcrumb-wrap .elementor-section,
.aai-cro-checkout .breadcrumb-wrap .elementor-section {
    min-height: 0 !important;
    padding-top: 18px !important;
    padding-bottom: 18px !important;
    background: transparent !important;
    background-image: none !important;
}

.aai-cro-cart .breadcrumb-wrap .elementor-heading-title,
.aai-cro-checkout .breadcrumb-wrap .elementor-heading-title {
    position: relative;
    padding-left: 16px;
    font-size: clamp(30px, 3vw, 38px) !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
    color: var(--aai-cro-text) !important;
}

.aai-cro-cart .breadcrumb-wrap .elementor-heading-title::before,
.aai-cro-checkout .breadcrumb-wrap .elementor-heading-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: .12em;
    bottom: .12em;
    width: 3px;
    border-radius: 999px;
    background: var(--aai-cro-coral);
}

/* ---------- Side mini-cart ---------- */
.site-header-cart-side {
    width: min(420px, 92vw);
    max-width: 92vw;
    background: #fff;
}

.site-header-cart-side .cart-side-heading {
    padding: 20px 22px 16px;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item {
    min-height: 120px;
    padding: 16px 42px 16px 18px;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item > a:not(.remove) {
    min-height: 88px;
    font-size: 13.5px;
    font-weight: 700;
    line-height: 1.35;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item img {
    width: 62px;
    height: 86px;
    max-width: 62px;
    margin-right: 14px;
    border-radius: 7px;
    object-fit: contain;
}

/* Format belongs under the title. In the narrow drawer text is clearer than emoji + text. */
.site-header-cart-side .widget_shopping_cart .aai-cart-format-badge,
.woocommerce-mini-cart .aai-cart-format-badge {
    display: flex !important;
    clear: none !important;
    width: max-content !important;
    max-width: calc(100% - 76px) !important;
    margin: 6px 0 0 76px !important;
    padding: 3px 7px !important;
    border: 1px solid #e8e5e2 !important;
    border-radius: 999px !important;
    background: #faf9f8 !important;
    color: #57534f !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.site-header-cart-side .aai-cart-format-badge > span,
.woocommerce-mini-cart .aai-cart-format-badge > span {
    display: none !important;
}

.site-header-cart-side .widget_shopping_cart .mini_cart_item .quantity {
    margin-top: 7px;
    padding-left: 76px;
    font-size: 12px;
}

.site-header-cart-side .widget_shopping_cart p.total {
    padding: 17px 22px;
    background: var(--aai-cro-warm-panel, #fbfaf8);
}

.site-header-cart-side .widget_shopping_cart .buttons {
    gap: 10px;
    padding: 12px 22px 22px;
    background: var(--aai-cro-warm-panel, #fbfaf8);
}

.site-header-cart-side .widget_shopping_cart .buttons a {
    min-height: 50px;
    border-radius: 12px;
    font-size: 12px;
}

.site-header-cart-side .widget_shopping_cart .buttons a.checkout {
    box-shadow: 0 7px 18px rgba(246, 93, 78, .18);
}

/* ---------- Full cart ---------- */
.aai-cro-cart .woocommerce-cart-form table.shop_table,
.aai-cro-cart .cart_totals {
    border-color: var(--aai-cro-warm-border);
    box-shadow: 0 8px 28px rgba(52, 39, 31, .035);
}

.aai-cro-cart .woocommerce-cart-form table.shop_table thead th {
    background: var(--aai-cro-warm-panel);
}

.aai-cro-cart table.cart .aai-cart-format-badge {
    margin-left: 0 !important;
    background: #faf9f8 !important;
    border-color: #e9e5e1 !important;
}

.aai-cro-cart table.cart .aai-cart-format-badge > span {
    display: none !important;
}

.aai-cro-cart .cart_totals {
    background: #fff;
}

.aai-cro-cart .wc-proceed-to-checkout a.checkout-button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 54px;
    border-radius: 12px;
    background: var(--aai-cro-coral) !important;
    box-shadow: 0 8px 20px rgba(246, 93, 78, .18);
}

/* ---------- Checkout ---------- */
.aai-cro-checkout form.checkout.woocommerce-checkout {
    margin-top: 4px;
}

.aai-cro-checkout .woocommerce-billing-fields,
.aai-cro-checkout .woocommerce-shipping-fields,
.aai-cro-checkout #payment,
.aai-cro-checkout #order_review {
    border-color: var(--aai-cro-warm-border) !important;
}

.aai-cro-checkout #payment {
    background: var(--aai-cro-warm-panel);
}

.aai-cro-checkout #payment .payment_box {
    border-color: #ece6e1;
}

.aai-cro-checkout #order_review {
    border-radius: 16px !important;
    box-shadow: 0 14px 38px rgba(49, 37, 30, .055);
}

.aai-cro-checkout #order_review .aai-cart-format-badge {
    display: inline-flex !important;
    width: max-content !important;
    margin: 5px 0 0 !important;
    padding: 2px 6px !important;
    border-color: #e9e5e1 !important;
    background: #faf9f8 !important;
    color: #57534f !important;
    font-size: 8.5px !important;
    white-space: nowrap !important;
}

.aai-cro-checkout #order_review .aai-cart-format-badge > span {
    display: none !important;
}

/* Bookory can place the submit action in the left checkout column. Make it visually unmistakable. */
.aai-cro-checkout form.checkout #place_order,
.aai-cro-checkout form.checkout button#place_order,
.aai-cro-checkout .woocommerce-checkout-payment #place_order {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    max-width: none !important;
    min-height: 56px !important;
    margin: 18px 0 0 !important;
    padding: 14px 24px !important;
    border-radius: 12px !important;
    background: var(--aai-cro-coral) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 750 !important;
    letter-spacing: .005em;
    box-shadow: 0 9px 22px rgba(246, 93, 78, .20) !important;
}

.aai-cro-checkout form.checkout #place_order:hover,
.aai-cro-checkout form.checkout #place_order:focus-visible {
    filter: brightness(.94);
    transform: translateY(-1px);
}

.aai-cro-checkout .aai-checkout-confidence {
    margin-top: 12px;
    padding: 12px 14px;
    border: 1px solid #eee8e3;
    border-radius: 12px;
    background: #fffaf7;
    color: #5d5753;
    font-size: 11px;
}

.aai-cro-checkout .aai-checkout-confidence span {
    min-width: 0;
}

.aai-cro-checkout .aai-checkout-confidence i {
    background: #fff;
    border: 1px solid #f3d8d2;
}

@media (min-width: 992px) {
    .aai-cro-checkout form.checkout.woocommerce-checkout {
        grid-template-columns: minmax(0, 1.35fr) minmax(350px, .78fr);
        gap: clamp(44px, 5vw, 72px);
    }
}

@media (max-width: 767px) {
    .aai-cro-cart .breadcrumb-wrap .elementor-section,
    .aai-cro-checkout .breadcrumb-wrap .elementor-section {
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }

    .aai-cro-cart .breadcrumb-wrap .elementor-heading-title,
    .aai-cro-checkout .breadcrumb-wrap .elementor-heading-title {
        padding-left: 12px;
        font-size: 28px !important;
    }

    .site-header-cart-side .widget_shopping_cart .mini_cart_item {
        padding-left: 14px;
        padding-right: 38px;
    }

    .site-header-cart-side .widget_shopping_cart .mini_cart_item img {
        width: 56px;
        height: 78px;
        max-width: 56px;
        margin-right: 12px;
    }

    .site-header-cart-side .widget_shopping_cart .aai-cart-format-badge,
    .woocommerce-mini-cart .aai-cart-format-badge,
    .site-header-cart-side .widget_shopping_cart .mini_cart_item .quantity {
        margin-left: 68px !important;
        padding-left: 0;
    }

    .site-header-cart-side .widget_shopping_cart .buttons {
        grid-template-columns: 1fr;
    }

    .aai-cro-checkout .aai-checkout-confidence {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
    }
}

/* =====================================================
   CRO v2.4.0 – Premium catalogue experience
   Visual layer + progressive-enhancement dropdowns only.
   No WooCommerce data/query/template contracts changed.
   ===================================================== */

.aai-cro-catalog {
    --aai-premium-coral: var(--primary, #F65D4E);
    --aai-premium-ink: #242321;
    --aai-premium-muted: #77736f;
    --aai-premium-canvas: #ffffff;
    --aai-premium-panel: #fbf9f7;
    --aai-premium-border: #eee9e5;
    --aai-premium-hover: #fff2ed;
    --aai-premium-shadow: 0 16px 44px rgba(47, 37, 30, .075);
}

/* ----- Mini-cart: completely outside the viewport while closed ----- */
.site-header-cart-side {
    right: 0 !important;
    transform: translate3d(100%, 0, 0) !important;
    visibility: hidden;
    pointer-events: none;
    box-shadow: none;
    transition: transform .28s cubic-bezier(.22,.61,.36,1), visibility 0s linear .28s !important;
    will-change: transform;
}

.site-header-cart-side.active {
    transform: translate3d(0, 0, 0) !important;
    visibility: visible;
    pointer-events: auto;
    box-shadow: -18px 0 55px rgba(31, 25, 21, .14);
    transition: transform .28s cubic-bezier(.22,.61,.36,1), visibility 0s linear 0s !important;
}

/* ----- Filter rail: one premium panel, not boxes inside boxes ----- */
@media (min-width: 992px) {
    .aai-cro-catalog #secondary.widget-area {
        padding: 8px 18px 18px !important;
        border: 1px solid var(--aai-premium-border);
        border-radius: 20px;
        background: linear-gradient(180deg, #fcfaf8 0%, #faf8f6 100%);
        box-shadow: 0 10px 34px rgba(47, 37, 30, .035);
    }

    .aai-cro-catalog #secondary.widget-area .widget {
        margin: 0 !important;
        padding: 18px 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .aai-cro-catalog #secondary.widget-area .widget + .widget {
        border-top: 1px solid var(--aai-premium-border) !important;
    }
}

.aai-cro-catalog #secondary.widget-area .widget-title,
.aai-cro-catalog #secondary.widget-area .widget .widget-title {
    margin: 0 0 11px !important;
    padding: 0 4px 10px !important;
    border-bottom: 0 !important;
    font-size: 14px !important;
    font-weight: 750 !important;
    letter-spacing: -.01em;
    color: var(--aai-premium-ink) !important;
}

/* Flat, touch-friendly filter rows. */
.aai-cro-catalog #secondary .widget_product_categories ul > li,
.aai-cro-catalog #secondary .widget_layered_nav ul > li,
.aai-cro-catalog #secondary .woocommerce-widget-layered-nav-list > li {
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(110, 96, 87, .07);
}

.aai-cro-catalog #secondary .widget_product_categories ul > li:last-child,
.aai-cro-catalog #secondary .widget_layered_nav ul > li:last-child,
.aai-cro-catalog #secondary .woocommerce-widget-layered-nav-list > li:last-child {
    border-bottom: 0;
}

.aai-cro-catalog #secondary .widget_product_categories ul > li > a,
.aai-cro-catalog #secondary .widget_layered_nav ul > li > a,
.aai-cro-catalog #secondary .woocommerce-widget-layered-nav-list > li > a {
    display: block;
    min-height: 37px;
    margin: 2px 0 !important;
    padding: 9px 34px 9px 8px !important;
    border-radius: 10px;
    color: #514d49 !important;
    font-size: 12px;
    line-height: 1.45;
    transition: background-color .16s ease, color .16s ease, transform .16s ease;
}

.aai-cro-catalog #secondary .widget_layered_nav ul > li > a,
.aai-cro-catalog #secondary .woocommerce-widget-layered-nav-list > li > a {
    padding-right: 48px !important;
}

.aai-cro-catalog #secondary .widget_product_categories ul > li:hover > a,
.aai-cro-catalog #secondary .widget_layered_nav ul > li:hover > a,
.aai-cro-catalog #secondary .woocommerce-widget-layered-nav-list > li:hover > a {
    background: rgba(255,255,255,.78);
    color: var(--aai-premium-ink) !important;
}

.aai-cro-catalog #secondary .widget_product_categories li.current-cat > a,
.aai-cro-catalog #secondary .widget_layered_nav li.chosen > a,
.aai-cro-catalog #secondary .woocommerce-widget-layered-nav-list li.chosen > a {
    background: var(--aai-premium-hover) !important;
    color: var(--aai-premium-coral) !important;
    font-weight: 700;
}

/* Category expand controls become compact circular affordances. */
.aai-cro-catalog #secondary .widget_product_categories li > i.icon-plus,
.aai-cro-catalog #secondary .widget_product_categories li > i.icon-minus {
    top: 6px !important;
    right: 3px !important;
    width: 26px !important;
    height: 26px !important;
    border-radius: 50%;
    background: rgba(255,255,255,.88);
    color: #8b837e;
    line-height: 26px !important;
    text-align: center;
    transition: background-color .16s ease, color .16s ease, transform .16s ease;
}

.aai-cro-catalog #secondary .widget_product_categories li > i.icon-plus:hover,
.aai-cro-catalog #secondary .widget_product_categories li > i.icon-minus:hover {
    background: #fff;
    color: var(--aai-premium-coral);
    transform: scale(1.04);
}

.aai-cro-catalog #secondary .woocommerce-widget-layered-nav-list .count {
    position: absolute;
    top: 10px;
    right: 8px;
    padding: 2px 6px;
    border-radius: 999px;
    background: rgba(255,255,255,.72);
    color: #9b938e;
    font-size: 9px;
    line-height: 1.4;
}

.aai-cro-catalog #secondary input[type="search"],
.aai-cro-catalog #secondary input[type="text"] {
    height: 38px;
    padding: 8px 14px !important;
    border: 1px solid #e9e3df !important;
    border-radius: 999px !important;
    background: #fff !important;
    font-size: 11px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}

/* ----- Toolbar: airy utility row instead of a large input panel ----- */
.aai-cro-catalog .bookory-sorting {
    position: relative;
    min-height: 48px;
    margin-bottom: 26px;
    padding: 4px 0 13px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--aai-premium-border) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible;
    gap: 10px;
}

.aai-cro-catalog .gridlist-toggle {
    margin-left: 0;
    padding: 3px;
    border-radius: 10px;
    background: #f5f2f0;
}

.aai-cro-catalog .gridlist-toggle a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 8px;
    color: #aaa29d;
}

.aai-cro-catalog .gridlist-toggle a.active,
.aai-cro-catalog .gridlist-toggle a:hover {
    background: #fff;
    color: var(--aai-premium-ink);
    box-shadow: 0 2px 8px rgba(44,35,29,.06);
}

/* Keep the original selects functional but visually out of the way once enhanced. */
.aai-cro-catalog .woocommerce-ordering.aai-select-enhanced > select.orderby,
.aai-cro-catalog .bookory-products-per-page.aai-select-enhanced > select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.aai-cro-catalog .woocommerce-ordering.aai-select-enhanced,
.aai-cro-catalog .bookory-products-per-page.aai-select-enhanced {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit;
}

.aai-cro-catalog .bookory-products-per-page.aai-select-enhanced::after {
    display: none !important;
}

.aai-catalog-select {
    position: relative;
    z-index: 8;
}

.aai-catalog-select__button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 8px 12px 8px 13px;
    border: 1px solid #e8e2de;
    border-radius: 11px;
    background: #fff;
    color: var(--aai-premium-ink);
    font-family: inherit;
    font-size: 11px;
    font-weight: 650;
    line-height: 1.2;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(43,34,28,.035);
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.aai-catalog-select__button:hover,
.aai-catalog-select.is-open .aai-catalog-select__button {
    border-color: #dfd5cf;
    box-shadow: 0 7px 20px rgba(43,34,28,.07);
}

.aai-catalog-select__button:focus-visible {
    outline: 3px solid rgba(246,93,78,.16);
    outline-offset: 2px;
    border-color: rgba(246,93,78,.5);
}

.aai-catalog-select__prefix {
    color: #98918c;
    font-weight: 550;
}

.aai-catalog-select__value {
    color: var(--aai-premium-ink);
    white-space: nowrap;
}

.aai-catalog-select__chevron {
    position: relative;
    width: 9px;
    height: 9px;
    margin-left: 2px;
    flex: 0 0 9px;
}

.aai-catalog-select__chevron::before {
    content: "";
    position: absolute;
    left: 1px;
    top: 1px;
    width: 6px;
    height: 6px;
    border-right: 1.5px solid #88817c;
    border-bottom: 1.5px solid #88817c;
    transform: rotate(45deg);
    transition: transform .18s ease, top .18s ease;
}

.aai-catalog-select.is-open .aai-catalog-select__chevron::before {
    top: 4px;
    transform: rotate(225deg);
}

.aai-catalog-select__menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 9999;
    min-width: 230px;
    padding: 7px;
    border: 1px solid #e8e1dc;
    border-radius: 14px;
    background: rgba(255,255,255,.985);
    box-shadow: 0 18px 48px rgba(45,35,28,.14);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-4px) scale(.985);
    transform-origin: top right;
    transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s;
}

.aai-catalog-select.is-open .aai-catalog-select__menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
    transition: opacity .16s ease, transform .16s ease, visibility 0s linear 0s;
}

.aai-catalog-select__option {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 38px;
    padding: 9px 34px 9px 11px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #4f4a46;
    font-family: inherit;
    font-size: 11.5px;
    font-weight: 550;
    text-align: left;
    cursor: pointer;
    transition: background-color .14s ease, color .14s ease;
}

.aai-catalog-select__option:hover,
.aai-catalog-select__option:focus-visible {
    outline: 0;
    background: #faf6f3;
    color: var(--aai-premium-ink);
}

.aai-catalog-select__option[aria-selected="true"] {
    background: var(--aai-premium-hover);
    color: var(--aai-premium-coral);
    font-weight: 700;
}

.aai-catalog-select__option[aria-selected="true"]::after {
    content: "✓";
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
    font-weight: 800;
}

.aai-catalog-select--per-page .aai-catalog-select__menu {
    min-width: 130px;
}

/* ----- Product canvas: editorial covers, not generic card boxes ----- */
.aai-cro-catalog ul.products li.product .product-transition {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

.aai-cro-catalog ul.products li.product .product-image {
    padding: 10px !important;
    border: 1px solid #f0ece8;
    border-radius: 16px !important;
    background: linear-gradient(145deg, #faf8f6 0%, #f6f3f1 100%) !important;
    box-shadow: 0 7px 22px rgba(45,35,28,.045);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.aai-cro-catalog ul.products li.product .product-image img {
    width: 100% !important;
    height: 100% !important;
    border-radius: 5px;
    object-fit: contain !important;
}

.aai-cro-catalog ul.products li.product .product-caption {
    padding: 12px 2px 0 !important;
}

@media (hover:hover) {
    .aai-cro-catalog ul.products li.product .product-block:hover .product-image {
        transform: translateY(-4px);
        border-color: #e7ddd7;
        box-shadow: 0 16px 36px rgba(45,35,28,.105);
    }

    .aai-cro-catalog ul.products li.product .product-block:hover .woocommerce-loop-product__title {
        color: var(--aai-premium-coral);
    }
}

/* Format label becomes a subtle glass-like media badge. */
.aai-cro-catalog ul.products li.product .aai-product-type-badge {
    padding: 4px 7px !important;
    border: 1px solid rgba(40,40,40,.07) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.94) !important;
    color: #3c3936 !important;
    box-shadow: 0 3px 11px rgba(34,27,23,.09) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

/* Make pagination feel intentional rather than inherited. */
.aai-cro-catalog .woocommerce-pagination ul.page-numbers {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.aai-cro-catalog .woocommerce-pagination ul.page-numbers li a,
.aai-cro-catalog .woocommerce-pagination ul.page-numbers li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 9px;
    border-radius: 10px;
    transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
}

.aai-cro-catalog .woocommerce-pagination ul.page-numbers li span.current {
    background: var(--aai-premium-coral);
    color: #fff;
    box-shadow: 0 6px 14px rgba(246,93,78,.18);
}

.aai-cro-catalog .woocommerce-pagination ul.page-numbers li a:hover {
    background: #f7f3f0;
    color: var(--aai-premium-ink);
}

@media (max-width: 991px) {
    .aai-cro-catalog .bookory-sorting {
        gap: 7px;
    }

    .aai-catalog-select__prefix {
        display: none;
    }

    .aai-catalog-select__button {
        min-height: 36px;
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media (max-width: 767px) {
    .aai-cro-catalog .bookory-sorting {
        padding-bottom: 10px !important;
    }

    .aai-catalog-select__menu {
        right: 0;
        min-width: min(250px, 82vw);
    }

    .aai-cro-catalog ul.products li.product .product-image {
        padding: 7px !important;
        border-radius: 13px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-header-cart-side,
    .aai-catalog-select__menu,
    .aai-catalog-select__button,
    .aai-catalog-select__chevron::before,
    .aai-cro-catalog ul.products li.product .product-image {
        transition: none !important;
    }
}

/* =====================================================
   CRO v2.4.1 – premium catalogue refinement
   Visual-only refinement over 2.4.0. Keeps native WooCommerce
   selects, queries and Bookory rendering as the source of truth.
   ===================================================== */

/* Archive title: retain the branded band, but avoid oversized editorial hero treatment. */
@media (min-width: 1025px) {
    .aai-cro-catalog .breadcrumb-wrap .elementor-heading-title {
        font-size: clamp(44px, 3.2vw, 56px) !important;
        line-height: 1.04 !important;
        letter-spacing: -.035em !important;
    }
}

/* Real AudioSpace smart-sidebar markup: one calm card per discovery section,
   with flat rows inside instead of cards inside cards. */
@media (min-width: 992px) {
    .aai-cro-catalog #secondary .aai-smart-sidebar-widget,
    .aai-cro-catalog .widget-area .aai-smart-sidebar-widget {
        margin: 0 0 14px !important;
        padding: 18px 18px 16px !important;
        border: 1px solid #eee8e3 !important;
        border-radius: 18px !important;
        background: #fcfaf8 !important;
        box-shadow: 0 10px 30px rgba(44,35,29,.035) !important;
        overflow: hidden;
    }

    .aai-cro-catalog #secondary.widget-area {
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }
}

.aai-cro-catalog .aai-smart-sidebar-widget .widget-title {
    margin: 0 0 10px !important;
    padding: 0 2px 12px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(104,88,78,.10) !important;
    color: #242321 !important;
    font-size: 15px !important;
    font-weight: 760 !important;
    letter-spacing: -.015em !important;
}

.aai-cro-catalog .aai-genre-group {
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(104,88,78,.075) !important;
    border-radius: 0 !important;
    background: transparent !important;
    overflow: visible !important;
}

.aai-cro-catalog .aai-genre-group:last-of-type {
    border-bottom: 0 !important;
}

.aai-cro-catalog .aai-genre-group-title {
    min-height: 42px !important;
    padding: 10px 2px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #4b4744 !important;
    font-size: 12.5px !important;
    font-weight: 620 !important;
    line-height: 1.35 !important;
    transition: color .15s ease !important;
}

.aai-cro-catalog .aai-genre-group-title:hover,
.aai-cro-catalog .aai-genre-group.open > .aai-genre-group-title {
    background: transparent !important;
    color: var(--aai-premium-coral) !important;
}

.aai-cro-catalog .aai-genre-group-title .aai-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 24px !important;
    height: 24px !important;
    margin-left: 10px;
    border: 1px solid #e8e1dc;
    border-radius: 50%;
    background: rgba(255,255,255,.9) !important;
    color: #8f8782 !important;
    font-size: 12px !important;
    line-height: 1 !important;
}

.aai-cro-catalog .aai-genre-group.open .aai-toggle {
    color: var(--aai-premium-coral) !important;
    border-color: rgba(246,93,78,.22) !important;
    background: #fff7f4 !important;
}

.aai-cro-catalog .aai-genre-list {
    padding: 1px 0 9px 8px !important;
}

.aai-cro-catalog .aai-genre-list li a,
.aai-cro-catalog .aai-author-top-list li a {
    min-height: 32px !important;
    margin: 0 !important;
    padding: 7px 4px 7px 8px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #625d59 !important;
    font-size: 11.5px !important;
    line-height: 1.35 !important;
}

.aai-cro-catalog .aai-genre-list li a:hover,
.aai-cro-catalog .aai-author-top-list li a:hover {
    background: #fff4ef !important;
    color: #2d2926 !important;
}

.aai-cro-catalog .aai-genre-list li.active a,
.aai-cro-catalog .aai-author-top-list li.active a {
    background: #fff0ea !important;
    color: var(--aai-premium-coral) !important;
    font-weight: 700 !important;
}

.aai-cro-catalog .aai-genre-list li a span,
.aai-cro-catalog .aai-author-top-list li a span {
    color: #aaa29d !important;
    font-size: 10px !important;
}

.aai-cro-catalog .aai-author-top-list {
    margin-bottom: 10px !important;
}

.aai-cro-catalog .aai-autocomplete-wrap {
    margin-top: 12px !important;
}

.aai-cro-catalog .aai-autocomplete-wrap input {
    height: 40px !important;
    padding: 8px 13px !important;
    border: 1px solid #e9e2dd !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #3b3835 !important;
    font-size: 11px !important;
    box-shadow: 0 2px 8px rgba(44,35,29,.025) !important;
}

.aai-cro-catalog .aai-autocomplete-wrap input:focus {
    border-color: rgba(246,93,78,.42) !important;
    box-shadow: 0 0 0 3px rgba(246,93,78,.10) !important;
}

/* Toolbar: compact desktop controls, visually secondary to products. */
.aai-cro-catalog .bookory-sorting {
    min-height: 46px !important;
    margin-bottom: 24px !important;
    padding: 3px 0 11px !important;
    align-items: center !important;
}

/* Bookory prints its own "Show" label; the enhanced control already contains it. */
.aai-cro-catalog .bookory-products-per-page.aai-select-enhanced > .per-page-title {
    display: none !important;
}

/* Override global Bookory button styles: these are select triggers, not CTAs. */
.aai-cro-catalog button.aai-catalog-select__button,
.aai-cro-catalog .aai-catalog-select__button {
    min-height: 40px !important;
    padding: 9px 13px !important;
    border: 1px solid #e5dfda !important;
    border-radius: 12px !important;
    background: #fff !important;
    background-image: none !important;
    color: #252321 !important;
    box-shadow: 0 3px 10px rgba(43,34,28,.035) !important;
    font-size: 12px !important;
    font-weight: 620 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    transform: none !important;
}

.aai-cro-catalog button.aai-catalog-select__button:hover,
.aai-cro-catalog button.aai-catalog-select__button:focus,
.aai-cro-catalog .aai-catalog-select.is-open button.aai-catalog-select__button {
    border-color: #d9cfc9 !important;
    background: #fff !important;
    color: #252321 !important;
    box-shadow: 0 8px 22px rgba(43,34,28,.075) !important;
    transform: none !important;
}

.aai-cro-catalog .aai-catalog-select__prefix {
    color: #9a928d !important;
    font-size: 11px !important;
    font-weight: 520 !important;
}

.aai-cro-catalog .aai-catalog-select__value {
    color: #252321 !important;
    font-weight: 680 !important;
}

.aai-cro-catalog .aai-catalog-select__chevron::before {
    border-color: #837b76 !important;
}

/* Desktop dropdown: floating white menu, not a stack of CTA buttons. */
.aai-cro-catalog .aai-catalog-select__menu {
    min-width: 240px !important;
    padding: 7px !important;
    border: 1px solid #e8e0db !important;
    border-radius: 14px !important;
    background: #fff !important;
    background-image: none !important;
    box-shadow: 0 20px 55px rgba(38,30,25,.15) !important;
}

.aai-cro-catalog .aai-catalog-select--per-page .aai-catalog-select__menu {
    min-width: 150px !important;
}

.aai-cro-catalog button.aai-catalog-select__option,
.aai-cro-catalog .aai-catalog-select__option {
    min-height: 39px !important;
    padding: 9px 34px 9px 11px !important;
    border: 0 !important;
    border-radius: 9px !important;
    background: transparent !important;
    background-image: none !important;
    color: #514c48 !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 560 !important;
    line-height: 1.3 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    transform: none !important;
}

.aai-cro-catalog button.aai-catalog-select__option:hover,
.aai-cro-catalog button.aai-catalog-select__option:focus-visible {
    background: #faf6f3 !important;
    color: #242321 !important;
    box-shadow: none !important;
    transform: none !important;
}

.aai-cro-catalog button.aai-catalog-select__option[aria-selected="true"] {
    background: #fff0ea !important;
    color: var(--aai-premium-coral) !important;
    font-weight: 720 !important;
}

.aai-cro-catalog button.aai-catalog-select__option[aria-selected="true"]::after {
    color: var(--aai-premium-coral) !important;
}

/* Give products a touch more breathing room without reducing catalogue density. */
@media (min-width: 992px) {
    .aai-cro-catalog ul.products {
        row-gap: 30px !important;
    }
}

@media (max-width: 767px) {
    .aai-cro-catalog .breadcrumb-wrap .elementor-heading-title {
        font-size: 36px !important;
    }

    .aai-cro-catalog .aai-smart-sidebar-widget {
        border-radius: 14px !important;
    }

    .aai-cro-catalog button.aai-catalog-select__button {
        min-height: 38px !important;
        padding: 8px 10px !important;
    }
}

/* =====================================================
   CRO v2.4.2 – premium cart + checkout refinement
   Final visual pass over cart / checkout only.
   No WooCommerce templates, totals, payment or order logic changed.
   ===================================================== */

.aai-cro-cart,
.aai-cro-checkout {
    --aai-commerce-coral: #f65d4e;
    --aai-commerce-coral-dark: #e74f43;
    --aai-commerce-ink: #272421;
    --aai-commerce-muted: #77716c;
    --aai-commerce-soft: #fbf8f6;
    --aai-commerce-soft-2: #fff5f1;
    --aai-commerce-border: #ebe5e0;
    --aai-commerce-shadow: 0 16px 44px rgba(45, 35, 28, .065);
}

/* ---------- Cart: replace the unfinished table feeling with a calm purchase card ---------- */
.aai-cro-cart .woocommerce-cart-form {
    border: 1px solid var(--aai-commerce-border) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: var(--aai-commerce-shadow) !important;
    overflow: hidden !important;
}

.aai-cro-cart .woocommerce-cart-form table.shop_table {
    width: 100%;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: #fff !important;
}

.aai-cro-cart .woocommerce-cart-form table.shop_table thead {
    background: var(--aai-commerce-soft) !important;
}

.aai-cro-cart .woocommerce-cart-form table.shop_table thead th {
    padding-top: 13px !important;
    padding-bottom: 13px !important;
    border: 0 !important;
    color: #8b837d !important;
    font-size: 10.5px !important;
    font-weight: 750 !important;
    letter-spacing: .075em !important;
    text-transform: uppercase !important;
}

.aai-cro-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item {
    background: #fff;
    transition: background-color .16s ease;
}

@media (hover:hover) {
    .aai-cro-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item:hover {
        background: #fffaf7;
    }
}

.aai-cro-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item td {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
    border-top: 1px solid #f0ece9 !important;
    border-bottom: 0 !important;
    vertical-align: middle !important;
}

.aai-cro-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item:first-child td {
    border-top: 0 !important;
}

.aai-cro-cart table.cart td.product-thumbnail {
    width: 88px !important;
}

.aai-cro-cart table.cart td.product-thumbnail img {
    width: 66px !important;
    height: 90px !important;
    max-width: 66px !important;
    padding: 3px;
    border: 1px solid #eee9e5;
    border-radius: 8px !important;
    background: #faf8f6;
    object-fit: contain !important;
    box-shadow: 0 5px 14px rgba(43, 34, 28, .055);
}

.aai-cro-cart table.cart td.product-name {
    padding-right: 24px !important;
}

.aai-cro-cart table.cart td.product-name > a {
    display: inline-block;
    margin-bottom: 5px;
    color: var(--aai-commerce-ink) !important;
    font-size: 14px !important;
    font-weight: 750 !important;
    line-height: 1.35 !important;
    letter-spacing: -.01em;
}

.aai-cro-cart table.cart td.product-name > a:hover {
    color: var(--aai-commerce-coral) !important;
}

/* Bookory / WooCommerce may print short product text below the title. Keep it useful, not dominant. */
.aai-cro-cart table.cart td.product-name p,
.aai-cro-cart table.cart td.product-name .product-short-description,
.aai-cro-cart table.cart td.product-name small {
    display: -webkit-box;
    max-width: 520px;
    margin: 3px 0 0 !important;
    overflow: hidden;
    color: #87807b !important;
    font-size: 10.5px !important;
    line-height: 1.5 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.aai-cro-cart table.cart td.product-price,
.aai-cro-cart table.cart td.product-subtotal {
    color: var(--aai-commerce-ink) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    white-space: nowrap;
}

.aai-cro-cart table.cart td.product-price .amount,
.aai-cro-cart table.cart td.product-subtotal .amount {
    color: var(--aai-commerce-ink) !important;
    font-size: inherit !important;
}

.aai-cro-cart table.cart td.product-remove a.remove {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 32px !important;
    height: 32px !important;
    border: 1px solid #eee8e4 !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: #9a928d !important;
    line-height: 1 !important;
    transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}

.aai-cro-cart table.cart td.product-remove a.remove:hover {
    border-color: #f2c7c2 !important;
    background: #fff3f1 !important;
    color: var(--aai-commerce-coral) !important;
}

.aai-cro-cart table.cart td.actions {
    padding: 16px 18px !important;
    border-top: 1px solid #f0ece9 !important;
    background: #fcfaf8 !important;
}

.aai-cro-cart table.cart td.actions .coupon input.input-text {
    min-height: 44px;
    padding: 10px 13px;
    border: 1px solid #e7e0db;
    border-radius: 10px;
    background: #fff;
}

.aai-cro-cart table.cart td.actions .coupon .button,
.aai-cro-cart table.cart td.actions > .button {
    min-height: 44px;
    border-radius: 10px !important;
}

/* Cart summary becomes a deliberate conversion card. */
.aai-cro-cart .cart_totals {
    padding: 24px 24px 22px !important;
    border: 1px solid var(--aai-commerce-border) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: var(--aai-commerce-shadow) !important;
}

.aai-cro-cart .cart_totals > h2 {
    margin: 0 0 14px !important;
    color: var(--aai-commerce-ink) !important;
    font-size: 18px !important;
    font-weight: 780 !important;
    letter-spacing: -.02em;
}

.aai-cro-cart .cart_totals table.shop_table {
    margin: 0 0 16px !important;
    border: 0 !important;
}

.aai-cro-cart .cart_totals table.shop_table th,
.aai-cro-cart .cart_totals table.shop_table td {
    padding: 12px 0 !important;
    border-color: #eee9e5 !important;
    font-size: 12px !important;
}

.aai-cro-cart .cart_totals table.shop_table th {
    color: #706a65 !important;
    font-weight: 650 !important;
}

.aai-cro-cart .cart_totals .order-total th,
.aai-cro-cart .cart_totals .order-total td {
    padding-top: 16px !important;
}

.aai-cro-cart .cart_totals .order-total .amount {
    color: var(--aai-commerce-ink) !important;
    font-size: 24px !important;
    font-weight: 800 !important;
}

.aai-cro-cart .wc-proceed-to-checkout {
    margin: 4px 0 0 !important;
}

.aai-cro-cart .wc-proceed-to-checkout a.checkout-button,
.aai-cro-cart a.checkout-button.button,
.aai-cro-cart .cart_totals .checkout-button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 13px 18px !important;
    border: 1px solid var(--aai-commerce-coral) !important;
    border-radius: 12px !important;
    background: var(--aai-commerce-coral) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 780 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    box-shadow: 0 9px 20px rgba(246, 93, 78, .18) !important;
    transition: background-color .16s ease, border-color .16s ease, transform .16s ease, box-shadow .16s ease !important;
}

/* Explicitly defeat Bookory's black-hover/red-text rule. */
.aai-cro-cart .wc-proceed-to-checkout a.checkout-button:hover,
.aai-cro-cart .wc-proceed-to-checkout a.checkout-button:focus-visible,
.aai-cro-cart a.checkout-button.button:hover,
.aai-cro-cart .cart_totals .checkout-button:hover {
    border-color: var(--aai-commerce-coral-dark) !important;
    background: var(--aai-commerce-coral-dark) !important;
    color: #fff !important;
    box-shadow: 0 12px 24px rgba(231, 79, 67, .22) !important;
    transform: translateY(-1px);
}

/* ---------- Checkout: make each decision area feel intentionally designed ---------- */
.aai-cro-checkout form.checkout.woocommerce-checkout {
    color: var(--aai-commerce-ink);
}

@media (min-width: 992px) {
    .aai-cro-checkout form.checkout.woocommerce-checkout {
        grid-template-columns: minmax(0, 1.3fr) minmax(320px, .72fr) !important;
        gap: clamp(34px, 4vw, 56px) !important;
    }

    .aai-cro-checkout form.checkout #order_review {
        top: 104px !important;
    }
}

.aai-cro-checkout form.checkout h3,
.aai-cro-checkout #order_review #order_review_heading {
    margin-bottom: 13px !important;
    color: var(--aai-commerce-ink) !important;
    font-size: 18px !important;
    font-weight: 780 !important;
    letter-spacing: -.018em !important;
}

.aai-cro-checkout .woocommerce-billing-fields,
.aai-cro-checkout .woocommerce-shipping-fields {
    margin: 0 0 22px !important;
}

.aai-cro-checkout .form-row {
    margin-bottom: 14px !important;
}

.aai-cro-checkout .form-row label:not(.checkbox):not(.woocommerce-form__label-for-checkbox) {
    display: block;
    margin: 0 0 6px !important;
    color: #625c57 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.35;
}

.aai-cro-checkout .input-text,
.aai-cro-checkout input[type="text"],
.aai-cro-checkout input[type="email"],
.aai-cro-checkout input[type="tel"],
.aai-cro-checkout input[type="password"],
.aai-cro-checkout textarea,
.aai-cro-checkout select,
.aai-cro-checkout .select2-container .select2-selection--single {
    min-height: 46px !important;
    padding: 10px 12px !important;
    border: 1px solid #e3ddd8 !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: var(--aai-commerce-ink) !important;
    box-shadow: 0 1px 2px rgba(44, 35, 29, .018) !important;
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.aai-cro-checkout textarea {
    min-height: 100px !important;
    resize: vertical;
}

.aai-cro-checkout .input-text:focus,
.aai-cro-checkout input[type="text"]:focus,
.aai-cro-checkout input[type="email"]:focus,
.aai-cro-checkout input[type="tel"]:focus,
.aai-cro-checkout input[type="password"]:focus,
.aai-cro-checkout textarea:focus,
.aai-cro-checkout select:focus {
    border-color: rgba(246, 93, 78, .58) !important;
    box-shadow: 0 0 0 4px rgba(246, 93, 78, .085) !important;
    outline: none !important;
}

/* Saved billing / account-address rows and similar lightweight WooCommerce panels. */
.aai-cro-checkout .woocommerce-billing-fields__field-wrapper,
.aai-cro-checkout .woocommerce-shipping-fields__field-wrapper {
    border-radius: 14px;
}

/* Payment is one clean card; Stripe's own fields stay fully functional. */
.aai-cro-checkout #payment {
    margin: 4px 0 20px !important;
    padding: 18px !important;
    border: 1px solid var(--aai-commerce-border) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(45, 35, 28, .035) !important;
}

.aai-cro-checkout #payment .payment_methods > li {
    padding: 0 !important;
    border: 0 !important;
}

.aai-cro-checkout #payment .payment_box {
    margin: 10px 0 0 !important;
    padding: 15px !important;
    border: 1px solid #ece6e1 !important;
    border-radius: 13px !important;
    background: var(--aai-commerce-soft) !important;
}

.aai-cro-checkout #payment .wc-stripe-elements-field,
.aai-cro-checkout #payment .stripe-card-group,
.aai-cro-checkout #payment .wc-payment-form input[type="text"] {
    min-height: 44px !important;
    border-radius: 9px !important;
}

/* Fix cramped save-address / save-payment / order-note / terms checkbox rows. */
.aai-cro-checkout .woocommerce-form__label-for-checkbox,
.aai-cro-checkout label.checkbox,
.aai-cro-checkout #payment label[for*="save"],
.aai-cro-checkout #payment .woocommerce-SavedPaymentMethods-saveNew label,
.aai-cro-checkout .wc-stripe-save-source label,
.aai-cro-checkout .woocommerce-terms-and-conditions-wrapper label {
    display: inline-flex !important;
    align-items: flex-start !important;
    gap: 9px !important;
    margin: 0 !important;
    color: #65605b !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    cursor: pointer;
}

.aai-cro-checkout input[type="checkbox"] {
    width: 17px !important;
    min-width: 17px !important;
    height: 17px !important;
    margin: 1px 8px 0 0 !important;
    accent-color: var(--aai-commerce-coral);
    vertical-align: top !important;
}

.aai-cro-checkout .form-row:has(> input[type="checkbox"]),
.aai-cro-checkout #payment li:has(input[type="checkbox"]),
.aai-cro-checkout .woocommerce-SavedPaymentMethods-saveNew {
    display: flex !important;
    align-items: flex-start !important;
    gap: 0 !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

.aai-cro-checkout .form-row:has(> input[type="checkbox"]) > label,
.aai-cro-checkout #payment li:has(input[type="checkbox"]) > label,
.aai-cro-checkout .woocommerce-SavedPaymentMethods-saveNew > label {
    margin-top: 0 !important;
}

/* Order review: clearer hierarchy without making it visually heavy. */
.aai-cro-checkout #order_review {
    padding: 20px 20px 22px !important;
    border: 1px solid var(--aai-commerce-border) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: var(--aai-commerce-shadow) !important;
}

.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table {
    margin: 0 !important;
    border: 0 !important;
}

.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table th,
.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table td {
    padding-top: 11px !important;
    padding-bottom: 11px !important;
    border-color: #eee9e5 !important;
}

.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table td.product-name {
    padding-right: 14px !important;
    color: #4c4743 !important;
    font-size: 10.5px !important;
    line-height: 1.45 !important;
}

.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table .cart-subtotal th,
.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table .cart-subtotal td {
    color: #6f6863 !important;
    font-size: 11px !important;
}

.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table .order-total {
    background: var(--aai-commerce-soft-2);
}

.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table .order-total th,
.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table .order-total td {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    color: var(--aai-commerce-ink) !important;
    font-size: 14px !important;
    font-weight: 750 !important;
}

.aai-cro-checkout #order_review .woocommerce-checkout-review-order-table .order-total .amount {
    color: var(--aai-commerce-ink) !important;
    font-size: 21px !important;
    font-weight: 820 !important;
}

/* Place order: robust selectors for Bookory + WooCommerce + Stripe variations. */
.aai-cro-checkout #place_order,
.aai-cro-checkout button#place_order,
.aai-cro-checkout button[name="woocommerce_checkout_place_order"],
.aai-cro-checkout .woocommerce-checkout-payment .place-order .button,
.aai-cro-checkout #payment .place-order .button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 54px !important;
    margin: 14px 0 0 !important;
    padding: 13px 20px !important;
    border: 1px solid var(--aai-commerce-coral) !important;
    border-radius: 12px !important;
    background: var(--aai-commerce-coral) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 780 !important;
    line-height: 1.25 !important;
    box-shadow: 0 9px 20px rgba(246, 93, 78, .18) !important;
    transition: background-color .16s ease, border-color .16s ease, transform .16s ease !important;
}

.aai-cro-checkout #place_order:hover,
.aai-cro-checkout button[name="woocommerce_checkout_place_order"]:hover,
.aai-cro-checkout .woocommerce-checkout-payment .place-order .button:hover,
.aai-cro-checkout #payment .place-order .button:hover {
    border-color: var(--aai-commerce-coral-dark) !important;
    background: var(--aai-commerce-coral-dark) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.aai-cro-checkout .woocommerce-terms-and-conditions-wrapper,
.aai-cro-checkout .woocommerce-privacy-policy-text {
    margin-top: 12px !important;
    color: #7b746f !important;
    font-size: 10.5px !important;
    line-height: 1.55 !important;
}

/* Tertiary navigation should look like navigation, not compete with the order action. */
.aai-cro-checkout a[href*="kosik"],
.aai-cro-checkout .return-to-cart,
.aai-cro-checkout .back-to-cart {
    color: #6e6863 !important;
    font-weight: 600;
}

.aai-cro-checkout a[href*="kosik"]:hover,
.aai-cro-checkout .return-to-cart:hover,
.aai-cro-checkout .back-to-cart:hover {
    color: var(--aai-commerce-coral) !important;
}

@media (max-width: 767px) {
    .aai-cro-cart .woocommerce-cart-form {
        border-radius: 14px !important;
    }

    .aai-cro-cart table.cart td.product-thumbnail img {
        width: 58px !important;
        height: 80px !important;
        max-width: 58px !important;
    }

    .aai-cro-cart .cart_totals,
    .aai-cro-checkout #order_review,
    .aai-cro-checkout #payment {
        border-radius: 14px !important;
    }

    .aai-cro-checkout #order_review {
        padding: 17px 15px 18px !important;
    }
}

/* =====================================================
   CRO v2.4.3 – robust cart / checkout targeting
   Uses native WooCommerce body classes so the presentation works even when
   custom helper body classes are absent or page caching changes hook timing.
   Presentation only; no cart, totals, Stripe or order logic is changed.
   ===================================================== */

body.woocommerce-cart,
body.woocommerce-checkout {
    --aai-commerce-coral: #f65d4e;
    --aai-commerce-coral-dark: #e74f43;
    --aai-commerce-ink: #272421;
    --aai-commerce-muted: #77716c;
    --aai-commerce-soft: #fbf8f6;
    --aai-commerce-soft-2: #fff5f1;
    --aai-commerce-border: #ebe5e0;
    --aai-commerce-shadow: 0 16px 44px rgba(45,35,28,.065);
}

/* ---------- CART: make the actual Bookory table look intentional ---------- */
body.woocommerce-cart .woocommerce-cart-form {
    margin: 0 !important;
    border: 1px solid var(--aai-commerce-border) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: var(--aai-commerce-shadow) !important;
    overflow: hidden !important;
}

body.woocommerce-cart .woocommerce-cart-form > table.shop_table,
body.woocommerce-cart table.shop_table.shop_table_responsive.cart {
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
}

body.woocommerce-cart table.cart thead,
body.woocommerce-cart .woocommerce-cart-form table.shop_table thead {
    background: #fbf8f6 !important;
}

body.woocommerce-cart table.cart thead th,
body.woocommerce-cart .woocommerce-cart-form table.shop_table thead th {
    padding: 14px 16px !important;
    border: 0 !important;
    border-bottom: 1px solid #eee8e3 !important;
    color: #8a827c !important;
    font-size: 10.5px !important;
    font-weight: 760 !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    background: transparent !important;
}

body.woocommerce-cart table.cart tbody tr.cart_item {
    background: #fff !important;
    transition: background-color .16s ease !important;
}

body.woocommerce-cart table.cart tbody tr.cart_item:hover {
    background: #fffaf7 !important;
}

body.woocommerce-cart table.cart tbody tr.cart_item > td {
    padding: 18px 16px !important;
    border: 0 !important;
    border-bottom: 1px solid #f0ebe7 !important;
    vertical-align: middle !important;
    background: transparent !important;
}

body.woocommerce-cart table.cart tbody tr.cart_item:last-child > td {
    border-bottom: 0 !important;
}

body.woocommerce-cart table.cart td.product-thumbnail {
    width: 92px !important;
    padding-right: 6px !important;
}

body.woocommerce-cart table.cart td.product-thumbnail img {
    display: block !important;
    width: 68px !important;
    height: 94px !important;
    max-width: 68px !important;
    margin: 0 !important;
    padding: 3px !important;
    border: 1px solid #eee8e3 !important;
    border-radius: 9px !important;
    background: #faf8f6 !important;
    object-fit: contain !important;
    box-shadow: 0 6px 16px rgba(43,34,28,.055) !important;
}

body.woocommerce-cart table.cart td.product-name {
    padding-left: 10px !important;
    padding-right: 22px !important;
}

body.woocommerce-cart table.cart td.product-name > a {
    display: inline-block !important;
    margin: 0 0 5px !important;
    color: var(--aai-commerce-ink) !important;
    font-size: 14px !important;
    font-weight: 760 !important;
    line-height: 1.35 !important;
    letter-spacing: -.01em !important;
}

body.woocommerce-cart table.cart td.product-name > a:hover {
    color: var(--aai-commerce-coral) !important;
}

body.woocommerce-cart table.cart td.product-name p,
body.woocommerce-cart table.cart td.product-name small,
body.woocommerce-cart table.cart td.product-name .product-short-description {
    display: -webkit-box !important;
    max-width: 530px !important;
    margin: 3px 0 0 !important;
    overflow: hidden !important;
    color: #817a75 !important;
    font-size: 10.5px !important;
    line-height: 1.5 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

body.woocommerce-cart table.cart td.product-price,
body.woocommerce-cart table.cart td.product-subtotal,
body.woocommerce-cart table.cart td.product-price .amount,
body.woocommerce-cart table.cart td.product-subtotal .amount {
    color: var(--aai-commerce-ink) !important;
    font-size: 13px !important;
    font-weight: 760 !important;
    white-space: nowrap !important;
}

body.woocommerce-cart table.cart td.product-remove a.remove {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    border: 1px solid #eee8e3 !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: #8c847e !important;
    font-size: 18px !important;
    line-height: 1 !important;
}

body.woocommerce-cart table.cart td.product-remove a.remove:hover {
    border-color: #f3c5c0 !important;
    background: #fff2ef !important;
    color: var(--aai-commerce-coral) !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals,
body.woocommerce-cart .cart_totals {
    padding: 24px !important;
    border: 1px solid var(--aai-commerce-border) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: var(--aai-commerce-shadow) !important;
}

body.woocommerce-cart .cart_totals > h2 {
    margin: 0 0 14px !important;
    color: var(--aai-commerce-ink) !important;
    font-size: 18px !important;
    font-weight: 780 !important;
    letter-spacing: -.02em !important;
}

body.woocommerce-cart .cart_totals table.shop_table {
    margin: 0 0 16px !important;
    border: 0 !important;
    background: transparent !important;
}

body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td {
    padding: 12px 0 !important;
    border-color: #eee9e5 !important;
    color: #6f6964 !important;
    font-size: 12px !important;
}

body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-cart .cart_totals .order-total td {
    padding-top: 16px !important;
    color: var(--aai-commerce-ink) !important;
    font-weight: 760 !important;
}

body.woocommerce-cart .cart_totals .order-total .amount {
    color: var(--aai-commerce-ink) !important;
    font-size: 24px !important;
    font-weight: 820 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .cart_totals a.checkout-button,
body.woocommerce-cart a.checkout-button.button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 13px 18px !important;
    border: 1px solid var(--aai-commerce-coral) !important;
    border-radius: 12px !important;
    background: var(--aai-commerce-coral) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 780 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    box-shadow: 0 9px 20px rgba(246,93,78,.18) !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus-visible,
body.woocommerce-cart .cart_totals a.checkout-button:hover,
body.woocommerce-cart a.checkout-button.button:hover {
    border-color: var(--aai-commerce-coral-dark) !important;
    background: var(--aai-commerce-coral-dark) !important;
    color: #fff !important;
    text-decoration: none !important;
}

/* ---------- CHECKOUT: visible spacing and better grouping ---------- */
body.woocommerce-checkout form.checkout.woocommerce-checkout {
    color: var(--aai-commerce-ink) !important;
}

@media (min-width: 992px) {
    body.woocommerce-checkout form.checkout.woocommerce-checkout {
        display: grid !important;
        grid-template-columns: minmax(0, 1.35fr) minmax(330px, .72fr) !important;
        align-items: start !important;
        gap: clamp(36px, 4vw, 56px) !important;
    }

    body.woocommerce-checkout form.checkout #customer_details,
    body.woocommerce-checkout form.checkout #order_review {
        float: none !important;
        width: auto !important;
        margin: 0 !important;
    }

    body.woocommerce-checkout form.checkout #order_review {
        position: sticky !important;
        top: 104px !important;
    }

    body.woocommerce-checkout #customer_details.col2-set .col-1,
    body.woocommerce-checkout #customer_details.col2-set .col-2 {
        float: none !important;
        width: 100% !important;
        margin: 0 0 22px !important;
    }
}

body.woocommerce-checkout form.checkout h3,
body.woocommerce-checkout #order_review_heading {
    margin: 0 0 14px !important;
    color: var(--aai-commerce-ink) !important;
    font-size: 18px !important;
    font-weight: 780 !important;
    line-height: 1.25 !important;
    letter-spacing: -.018em !important;
}

/* Direct field targeting fixes the cramped email label/value area. */
body.woocommerce-checkout .form-row,
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #billing_phone_field {
    display: block !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
}

body.woocommerce-checkout .form-row > label:not(.checkbox):not(.woocommerce-form__label-for-checkbox),
body.woocommerce-checkout #billing_email_field > label,
body.woocommerce-checkout #billing_phone_field > label,
body.woocommerce-checkout .woocommerce-billing-fields label:not(.checkbox),
body.woocommerce-checkout .woocommerce-shipping-fields label:not(.checkbox) {
    display: block !important;
    position: static !important;
    float: none !important;
    width: auto !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    color: #5f5955 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    transform: none !important;
}

body.woocommerce-checkout .woocommerce-input-wrapper {
    display: block !important;
    width: 100% !important;
}

body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row input[type="email"],
body.woocommerce-checkout .form-row input[type="text"],
body.woocommerce-checkout .form-row input[type="tel"],
body.woocommerce-checkout .form-row input[type="password"],
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .select2-container .select2-selection--single {
    display: block !important;
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 11px 13px !important;
    border: 1px solid #e2dcd7 !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: var(--aai-commerce-ink) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    box-shadow: 0 1px 2px rgba(44,35,29,.02) !important;
}

body.woocommerce-checkout .form-row input.input-text:focus,
body.woocommerce-checkout .form-row input[type="email"]:focus,
body.woocommerce-checkout .form-row input[type="text"]:focus,
body.woocommerce-checkout .form-row input[type="tel"]:focus,
body.woocommerce-checkout .form-row textarea:focus,
body.woocommerce-checkout .form-row select:focus {
    border-color: rgba(246,93,78,.56) !important;
    outline: none !important;
    box-shadow: 0 0 0 4px rgba(246,93,78,.085) !important;
}

/* Separate checkout sections so the page reads as a sequence of decisions. */
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields {
    margin: 0 0 20px !important;
    padding: 20px !important;
    border: 1px solid var(--aai-commerce-border) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(45,35,28,.03) !important;
}

body.woocommerce-checkout #payment {
    margin: 0 0 20px !important;
    padding: 18px !important;
    border: 1px solid var(--aai-commerce-border) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(45,35,28,.035) !important;
}

body.woocommerce-checkout #payment .payment_box {
    margin: 10px 0 0 !important;
    padding: 15px !important;
    border: 1px solid #ece6e1 !important;
    border-radius: 13px !important;
    background: var(--aai-commerce-soft) !important;
}

/* Checkbox rows: never let the text stick to the control. */
body.woocommerce-checkout .woocommerce-form__label-for-checkbox,
body.woocommerce-checkout label.checkbox,
body.woocommerce-checkout #payment label[for*="save"],
body.woocommerce-checkout .woocommerce-SavedPaymentMethods-saveNew label,
body.woocommerce-checkout .wc-stripe-save-source label,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {
    display: inline-flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #625d58 !important;
    font-size: 11px !important;
    font-weight: 520 !important;
    line-height: 1.5 !important;
}

body.woocommerce-checkout input[type="checkbox"] {
    flex: 0 0 17px !important;
    width: 17px !important;
    min-width: 17px !important;
    height: 17px !important;
    margin: 1px 0 0 !important;
    accent-color: var(--aai-commerce-coral) !important;
}

body.woocommerce-checkout .woocommerce-SavedPaymentMethods-saveNew,
body.woocommerce-checkout .wc-stripe-save-source,
body.woocommerce-checkout .form-row.create-account,
body.woocommerce-checkout .woocommerce-account-fields,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

body.woocommerce-checkout #order_review {
    padding: 20px 20px 22px !important;
    border: 1px solid var(--aai-commerce-border) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: var(--aai-commerce-shadow) !important;
}

body.woocommerce-checkout #order_review table {
    margin: 0 !important;
    border: 0 !important;
}

body.woocommerce-checkout #order_review table th,
body.woocommerce-checkout #order_review table td {
    padding: 11px 0 !important;
    border-color: #eee9e5 !important;
}

body.woocommerce-checkout #order_review .order-total {
    background: var(--aai-commerce-soft-2) !important;
}

body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    color: var(--aai-commerce-ink) !important;
    font-weight: 780 !important;
}

body.woocommerce-checkout #order_review .order-total .amount {
    color: var(--aai-commerce-ink) !important;
    font-size: 21px !important;
    font-weight: 820 !important;
}

body.woocommerce-checkout #place_order,
body.woocommerce-checkout button#place_order,
body.woocommerce-checkout button[name="woocommerce_checkout_place_order"],
body.woocommerce-checkout #payment .place-order .button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 14px 0 0 !important;
    padding: 13px 20px !important;
    border: 1px solid var(--aai-commerce-coral) !important;
    border-radius: 12px !important;
    background: var(--aai-commerce-coral) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 780 !important;
    box-shadow: 0 9px 20px rgba(246,93,78,.18) !important;
}

body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout button#place_order:hover,
body.woocommerce-checkout button[name="woocommerce_checkout_place_order"]:hover,
body.woocommerce-checkout #payment .place-order .button:hover {
    border-color: var(--aai-commerce-coral-dark) !important;
    background: var(--aai-commerce-coral-dark) !important;
    color: #fff !important;
}

@media (max-width: 767px) {
    body.woocommerce-cart .woocommerce-cart-form,
    body.woocommerce-cart .cart_totals,
    body.woocommerce-checkout .woocommerce-billing-fields,
    body.woocommerce-checkout .woocommerce-shipping-fields,
    body.woocommerce-checkout .woocommerce-additional-fields,
    body.woocommerce-checkout #payment,
    body.woocommerce-checkout #order_review {
        border-radius: 14px !important;
    }

    body.woocommerce-checkout .woocommerce-billing-fields,
    body.woocommerce-checkout .woocommerce-shipping-fields,
    body.woocommerce-checkout .woocommerce-additional-fields,
    body.woocommerce-checkout #payment {
        padding: 16px !important;
    }
}

/* =====================================================
   CRO 2.5.0 – premium conversion-first homepage
   Scoped only to Elementor pages carrying aai-cro-home-marker.
   ===================================================== */
.aai-cro-home {
  --as-coral:#f65d4e;
  --as-ink:#181818;
  --as-soft:#fff8f5;
  --as-line:rgba(24,24,24,.08);
}
.aai-cro-home .site-content,
.aai-cro-home #content { background:#fff; }

/* Hero should lead into products quickly, not feel like a landing-page wall. */
.aai-cro-home .elementor-210 > .elementor-top-section:first-child { margin-bottom:24px !important; }

/* Trust strip: one elegant row, not three separate promo boxes. */
.aai-cro-home .elementor-210 > .elementor-top-section:nth-child(2) > .elementor-container {
  max-width:1320px;
  border:1px solid var(--as-line);
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 30px rgba(34,25,20,.04);
  overflow:hidden;
}
.aai-cro-home .elementor-210 > .elementor-top-section:nth-child(2) .elementor-column:not(:last-child) {
  border-right:1px solid var(--as-line);
}
.aai-cro-home .elementor-210 > .elementor-top-section:nth-child(2) .elementor-widget-container { padding:15px 20px; }

/* Section headings: editorial, compact, clearly shoppable. */
.aai-cro-home .elementor-widget-divider .elementor-divider__text {
  font-size:clamp(24px,2.1vw,34px) !important;
  font-weight:750 !important;
  color:var(--as-ink) !important;
}
.aai-cro-home .elementor-widget-button .elementor-button {
  border-radius:999px;
  padding:11px 18px;
  font-weight:650;
}
.aai-cro-home .elementor-widget-button .elementor-button {
  background:#fff8f5;
  color:#d94a3e;
  border:1px solid rgba(246,93,78,.16);
}
.aai-cro-home .elementor-widget-button .elementor-button:hover {
  background:var(--as-coral);
  color:#fff;
}

/* Product rails: covers are the visual color; chrome stays quiet. */
.aai-cro-home .elementor-widget-bookory-products ul.products li.product {
  padding:0 6px 12px;
}
.aai-cro-home .elementor-widget-bookory-products li.product .product-image,
.aai-cro-home .elementor-widget-bookory-products li.product .product-transition {
  border-radius:14px;
  background:#faf9f8;
  box-shadow:0 1px 0 rgba(0,0,0,.04),0 8px 24px rgba(28,20,16,.045);
  transition:transform .2s ease, box-shadow .2s ease;
}
.aai-cro-home .elementor-widget-bookory-products li.product:hover .product-image,
.aai-cro-home .elementor-widget-bookory-products li.product:hover .product-transition {
  transform:translateY(-3px);
  box-shadow:0 12px 28px rgba(28,20,16,.09);
}
.aai-cro-home .elementor-widget-bookory-products li.product .price {
  color:var(--as-coral) !important;
  font-weight:750;
}

/* Two main format paths get the visual 'wow', not every section. */
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat-link {
  min-height:260px;
  box-shadow:0 12px 34px rgba(28,20,16,.08);
  transition:transform .22s ease, box-shadow .22s ease;
}
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat-link:hover {
  transform:translateY(-4px);
  box-shadow:0 18px 42px rgba(28,20,16,.14);
}

/* Author/discovery area gets a warm editorial surface. */
.aai-cro-home .elementor-210 > .elementor-top-section:nth-child(8) {
  padding-top:34px !important;
  padding-bottom:34px !important;
  background:linear-gradient(180deg,#fffaf7 0%,#fff 100%);
}

/* Blog is secondary: keep it compact and clearly below shopping content. */
.aai-cro-home .elementor-210 > .elementor-top-section:nth-last-child(-n+2) { margin-bottom:36px !important; }

@media (max-width: 767px) {
  .aai-cro-home .elementor-210 > .elementor-top-section:nth-child(2) > .elementor-container { border-radius:12px; }
  .aai-cro-home .elementor-210 > .elementor-top-section:nth-child(2) .elementor-column:not(:last-child) {
    border-right:0;
    border-bottom:1px solid var(--as-line);
  }
  .aai-cro-home .elementor-widget-divider .elementor-divider__text { font-size:24px !important; }
  .aai-cro-home .elementor-widget-bookory-product-categories .product-cat-link { min-height:210px; }
}


/* ---------------------------------------------------------
   CRO 2.5.1 – homepage tidy-up + clearer format chooser
   Fixes: scattered spacing, low text contrast, poor format-card imagery.
---------------------------------------------------------- */
.aai-cro-home .elementor-210 > .elementor-top-section{margin-bottom:26px !important;}
.aai-cro-home .elementor-210 > .elementor-top-section > .elementor-container{align-items:stretch;}
.aai-cro-home .elementor-widget-bookory-product-categories .row{row-gap:22px;}

/* Format chooser cards: use branded illustrative surfaces instead of weak stock photos. */
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat{
  position:relative;
}
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat-link{
  border-radius:22px;
  overflow:hidden;
  min-height:280px;
  background:#1f1f1f;
}
.aai-cro-home .elementor-widget-bookory-product-categories .category-product-img{
  position:absolute;
  inset:0;
  min-height:280px;
  border-radius:22px;
}
.aai-cro-home .elementor-widget-bookory-product-categories .category-product-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0;
}
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat-caption{
  position:absolute;
  inset:0;
  z-index:3;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  padding:28px;
}
.aai-cro-home .elementor-widget-bookory-product-categories .cat-title{
  max-width:78%;
  color:#fff !important;
  font-size:clamp(28px,2.3vw,38px);
  line-height:1.05;
  letter-spacing:-0.03em;
  text-shadow:none;
}
.aai-cro-home .elementor-widget-bookory-product-categories .cat-title span{display:block;}
.aai-cro-home .elementor-widget-bookory-product-categories .cat-title::after{
  content:"Pozrieť ponuku →";
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:14px;
  padding:10px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  backdrop-filter:blur(6px);
  color:#fff;
  font-size:14px;
  font-weight:700;
  opacity:1;
}

/* Audiobooks card */
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c101 .category-product-img{
  background:
    radial-gradient(circle at 84% 22%, rgba(255,255,255,.22) 0, rgba(255,255,255,.22) 11%, rgba(255,255,255,0) 12%),
    radial-gradient(circle at 70% 30%, rgba(255,255,255,.14) 0, rgba(255,255,255,.14) 18%, rgba(255,255,255,0) 19%),
    linear-gradient(135deg, #ff7b55 0%, #ff996a 45%, #f25c45 100%);
}
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c101 .category-product-img::before{
  content:"";
  position:absolute;
  right:38px;
  top:34px;
  width:122px;
  height:122px;
  border:10px solid rgba(255,255,255,.92);
  border-top-color:transparent;
  border-radius:50%;
  box-shadow:-82px 0 0 -44px rgba(255,255,255,.92), 82px 0 0 -44px rgba(255,255,255,.92);
  opacity:.95;
}
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c101 .category-product-img::after{
  content:"Počúvajte doma, v aute aj na cestách";
  position:absolute;
  left:28px;
  top:28px;
  max-width:220px;
  color:rgba(255,255,255,.92);
  font-size:14px;
  line-height:1.4;
  font-weight:600;
  letter-spacing:.01em;
  background:none;
}

/* E-books card */
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c102 .category-product-img{
  background:
    radial-gradient(circle at 80% 24%, rgba(255,255,255,.24) 0, rgba(255,255,255,.24) 12%, rgba(255,255,255,0) 13%),
    linear-gradient(135deg, #705cf6 0%, #8b7fff 45%, #3f7cff 100%);
}
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c102 .category-product-img::before{
  content:"";
  position:absolute;
  right:34px;
  top:30px;
  width:112px;
  height:144px;
  border-radius:16px;
  background:rgba(255,255,255,.92);
  box-shadow:0 14px 32px rgba(0,0,0,.12);
}
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c102 .category-product-img::after{
  content:"Čítajte v mobile, tablete aj čítačke";
  position:absolute;
  left:28px;
  top:28px;
  max-width:220px;
  color:rgba(255,255,255,.92);
  font-size:14px;
  line-height:1.4;
  font-weight:600;
  letter-spacing:.01em;
}
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c102 .category-product-img span,
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c102 .category-product-img::before{
  display:block;
}
/* Draw simple e-reader details */
.aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c102 .product-cat-link::before{
  content:"";
  position:absolute;
  right:54px;
  top:52px;
  width:72px;
  height:92px;
  border-radius:8px;
  z-index:2;
  background:linear-gradient(180deg,#eef3ff 0%,#fff 100%);
  box-shadow:inset 0 0 0 2px rgba(63,124,255,.08);
}

@media (max-width: 1024px){
  .aai-cro-home .elementor-widget-bookory-product-categories .product-cat-link,
  .aai-cro-home .elementor-widget-bookory-product-categories .category-product-img{min-height:240px;}
  .aai-cro-home .elementor-widget-bookory-product-categories .cat-title{font-size:30px;max-width:100%;}
}
@media (max-width: 767px){
  .aai-cro-home .elementor-210 > .elementor-top-section{margin-bottom:22px !important;}
  .aai-cro-home .elementor-widget-bookory-product-categories .product-cat-link,
  .aai-cro-home .elementor-widget-bookory-product-categories .category-product-img{min-height:210px;}
  .aai-cro-home .elementor-widget-bookory-product-categories .product-cat-caption{padding:20px;}
  .aai-cro-home .elementor-widget-bookory-product-categories .cat-title{font-size:24px;}
  .aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c101 .category-product-img::after,
  .aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c102 .category-product-img::after{
    top:18px; left:20px; max-width:180px; font-size:12px;
  }
  .aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c101 .category-product-img::before{
    width:92px;height:92px;right:18px;top:20px;border-width:8px;box-shadow:-66px 0 0 -36px rgba(255,255,255,.92), 66px 0 0 -36px rgba(255,255,255,.92);
  }
  .aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c102 .category-product-img::before{width:82px;height:106px;right:20px;top:20px;}
  .aai-cro-home .elementor-widget-bookory-product-categories .product-cat.elementor-repeater-item-a1f0c102 .product-cat-link::before{width:54px;height:68px;right:34px;top:38px;}
}

/* =====================================================
   CRO 2.5.1 FINAL – polished homepage + deterministic format cards
   ===================================================== */

/* Do not let old generic section rules make the page feel scattered. */
.aai-cro-home .aai-home-section-head,
.aai-cro-home .aai-home-product-row,
.aai-cro-home .aai-home-shelf,
.aai-cro-home .aai-home-editorial-grid,
.aai-cro-home .aai-home-inspire-head,
.aai-cro-home .aai-home-inspire-body,
.aai-cro-home .aai-home-format-section {
  width: 100%;
}

.aai-cro-home .aai-home-section-head .elementor-container,
.aai-cro-home .aai-home-product-row .elementor-container,
.aai-cro-home .aai-home-shelf .elementor-container,
.aai-cro-home .aai-home-editorial-grid .elementor-container,
.aai-cro-home .aai-home-inspire-head .elementor-container,
.aai-cro-home .aai-home-inspire-body .elementor-container,
.aai-cro-home .aai-home-format-section .elementor-container {
  max-width: 1320px;
}

.aai-cro-home .aai-home-section-head .elementor-widget-divider .elementor-divider__text,
.aai-cro-home .aai-home-shelf .elementor-widget-divider .elementor-divider__text,
.aai-cro-home .aai-home-inspire-head .elementor-widget-divider .elementor-divider__text {
  font-size: clamp(25px,2vw,34px) !important;
  line-height: 1.15;
  font-weight: 750;
  letter-spacing: -.035em;
}

.aai-cro-home .aai-home-section-head .elementor-button,
.aai-cro-home .aai-home-shelf .elementor-button,
.aai-cro-home .aai-home-inspire-head .elementor-button,
.aai-cro-home .aai-home-editorial-grid .elementor-button {
  min-height: 42px;
  padding: 11px 18px;
  font-size: 13px;
}

/* Premium two-path format chooser. No stock imagery, text is always visible. */
.aai-cro-home .aai-home-format-section {
  position: relative;
  padding-top: 8px;
}
.aai-cro-home .aai-home-format-section .elementor-widget-divider .elementor-divider__text {
  font-size: clamp(27px,2.2vw,36px) !important;
  font-weight: 760;
  letter-spacing: -.04em;
}
.aai-cro-home .aai-format-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 22px;
  width: 100%;
  margin-top: 20px;
}
.aai-cro-home .aai-format-card {
  position: relative;
  min-height: 300px;
  overflow: hidden;
  border-radius: 26px;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(260px,.75fr);
  align-items: stretch;
  text-decoration: none !important;
  box-shadow: 0 18px 48px rgba(24,24,24,.08);
  isolation: isolate;
  transition: transform .24s ease, box-shadow .24s ease;
}
.aai-cro-home .aai-format-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 26px 64px rgba(24,24,24,.14);
}
.aai-cro-home .aai-format-card--audio {
  background: linear-gradient(135deg,#ff6b56 0%,#ff8d64 56%,#ffb27e 100%);
}
.aai-cro-home .aai-format-card--ebook {
  background: linear-gradient(135deg,#5148d9 0%,#7568f5 52%,#7599ff 100%);
}
.aai-cro-home .aai-format-card::after {
  content:"";
  position:absolute;
  inset:auto -90px -120px auto;
  width:300px;
  height:300px;
  border-radius:50%;
  background:rgba(255,255,255,.10);
  z-index:-1;
}
.aai-cro-home .aai-format-card__copy {
  position: relative;
  z-index: 2;
  padding: 38px 12px 36px 38px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  color:#fff;
}
.aai-cro-home .aai-format-card__eyebrow {
  display:inline-flex;
  margin-bottom:12px;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  font-size:12px;
  font-weight:750;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.aai-cro-home .aai-format-card h3 {
  margin:0 0 12px;
  color:#fff;
  font-size:clamp(34px,3vw,50px);
  line-height:.98;
  font-weight:800;
  letter-spacing:-.055em;
}
.aai-cro-home .aai-format-card p {
  max-width:420px;
  margin:0 0 24px;
  color:rgba(255,255,255,.9);
  font-size:16px;
  line-height:1.55;
}
.aai-cro-home .aai-format-card__cta {
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:0 17px;
  border-radius:999px;
  background:#fff;
  color:#202020;
  font-size:14px;
  font-weight:800;
  box-shadow:0 9px 24px rgba(0,0,0,.08);
}
.aai-cro-home .aai-format-card__visual {
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px 18px 18px 0;
}
.aai-cro-home .aai-format-card__visual svg {
  width:100%;
  max-width:330px;
  height:auto;
  filter:drop-shadow(0 18px 28px rgba(0,0,0,.12));
}

/* Editorial block gets one calm surface so it no longer feels detached. */
.aai-cro-home .aai-home-editorial-grid > .elementor-container {
  padding: 26px;
  border: 1px solid #f1e9e5;
  border-radius: 24px;
  background: #fffaf7;
}

/* Bottom inspiration block: keep one clear baseline and less visual noise. */
.aai-cro-home .aai-home-inspire-body > .elementor-container {
  padding-top: 4px;
}

@media (max-width: 1100px) {
  .aai-cro-home .aai-format-card {
    grid-template-columns: 1.05fr .95fr;
    min-height: 270px;
  }
  .aai-cro-home .aai-format-card__copy { padding:30px 8px 30px 30px; }
  .aai-cro-home .aai-format-card p { font-size:15px; }
}
@media (max-width: 767px) {
  .aai-cro-home .aai-format-grid { grid-template-columns:1fr; gap:16px; }
  .aai-cro-home .aai-format-card {
    min-height: 255px;
    grid-template-columns: 1fr 135px;
    border-radius:22px;
  }
  .aai-cro-home .aai-format-card__copy { padding:26px 0 26px 24px; }
  .aai-cro-home .aai-format-card h3 { font-size:34px; }
  .aai-cro-home .aai-format-card p { font-size:14px; line-height:1.45; margin-bottom:18px; }
  .aai-cro-home .aai-format-card__visual { padding:10px 8px 10px 0; }
  .aai-cro-home .aai-format-card__eyebrow { font-size:10px; }
  .aai-cro-home .aai-home-editorial-grid > .elementor-container { padding:18px; border-radius:20px; }
}

/* =====================================================
   CRO 2.5.2 – static homepage shelves + compact discovery
   Core merchandising rows are static grids (no infinite carousel).
   ===================================================== */

/* Static shelf rhythm: easier to scan than hidden carousel inventory. */
.aai-cro-home .aai-home-new-products .elementor-widget-bookory-products ul.products,
.aai-cro-home .aai-home-audio-bestsellers .elementor-widget-bookory-products ul.products,
.aai-cro-home .aai-home-ebook-bestsellers .elementor-widget-bookory-products ul.products {
  display:grid !important;
  --aai-shelf-col-gap: 14px;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:24px var(--aai-shelf-col-gap) !important;
  margin:0 !important;
}
.aai-cro-home .aai-home-new-products ul.products li.product,
.aai-cro-home .aai-home-audio-bestsellers ul.products li.product,
.aai-cro-home .aai-home-ebook-bestsellers ul.products li.product {
  float:none !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 4px 8px !important;
  border-right:0 !important;
}
/* Theme draws this rule on the item edge. The shelf gap sits entirely
   beside it, so place the rule in the middle of that gap instead. */
.aai-cro-home .aai-home-new-products ul.products li.product::after,
.aai-cro-home .aai-home-audio-bestsellers ul.products li.product::after,
.aai-cro-home .aai-home-ebook-bestsellers ul.products li.product::after,
.aai-cro-home .aai-home-tips-column ul.products li.product::after,
.aai-cro-home .aai-home-inspire-books ul.products li.product::after {
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:1px;
  background:var(--border);
  left:calc(100% + (var(--aai-shelf-col-gap, 14px) / 2));
  transform:translateX(-50%);
  pointer-events:none;
}

/* Discovery block: authors are supportive, books stay compact. */
.aai-cro-home .aai-home-editorial-grid > .elementor-container {
  gap:24px;
  padding:24px !important;
}
.aai-cro-home .aai-home-authors-column {
  border-radius:20px;
  overflow:hidden;
}
.aai-cro-home .aai-home-tips-column .elementor-widget-bookory-products ul.products {
  display:grid !important;
  --aai-shelf-col-gap: 18px;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px var(--aai-shelf-col-gap) !important;
  margin:0 !important;
}
.aai-cro-home .aai-home-tips-column .elementor-widget-bookory-products ul.products li.product {
  float:none !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border-right:0 !important;
}
.aai-cro-home .aai-home-tips-column li.product .product-image,
.aai-cro-home .aai-home-tips-column li.product .product-transition {
  min-height:0 !important;
}
.aai-cro-home .aai-home-tips-column li.product .product-image > img {
  max-height:none !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

/* Inspiration: one editorial card + four genuinely small book cards. */
.aai-cro-home .aai-home-inspire-body > .elementor-container {
  gap:22px;
  align-items:stretch;
}
.aai-cro-home .aai-home-inspire-books .elementor-widget-bookory-products ul.products {
  display:grid !important;
  --aai-shelf-col-gap: 16px;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px var(--aai-shelf-col-gap) !important;
  margin:0 !important;
}
.aai-cro-home .aai-home-inspire-books ul.products li.product {
  float:none !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border-right:0 !important;
}
.aai-cro-home .aai-home-inspire-books li.product .product-image img,
.aai-cro-home .aai-home-inspire-books li.product .product-transition img {
  max-height:175px !important;
  width:100% !important;
  object-fit:contain !important;
}
.aai-cro-home .aai-home-inspire-books li.product .woocommerce-loop-product__title,
.aai-cro-home .aai-home-inspire-books li.product h2,
.aai-cro-home .aai-home-inspire-books li.product h3 {
  font-size:14px !important;
  line-height:1.3 !important;
  min-height:36px;
}
.aai-cro-home .aai-home-inspire-books li.product .woocommerce-loop-product__author {
  font-size:11px !important;
}

/* Homepage covers keep the grey rim. The art fills only the white well inside it. */
.aai-cro-home .aai-home-new-products li.product .product-transition,
.aai-cro-home .aai-home-audio-bestsellers li.product .product-transition,
.aai-cro-home .aai-home-ebook-bestsellers li.product .product-transition,
.aai-cro-home .aai-home-tips-column li.product .product-transition {
  padding:10px !important;
  border:1px solid rgba(0,0,0,.055) !important;
  border-radius:14px !important;
  background:#fafafa !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.aai-cro-home .aai-home-new-products li.product .product-image,
.aai-cro-home .aai-home-audio-bestsellers li.product .product-image,
.aai-cro-home .aai-home-ebook-bestsellers li.product .product-image,
.aai-cro-home .aai-home-tips-column li.product .product-image {
  background:#fff !important;
  border-radius:9px !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
.aai-cro-home .aai-home-new-products li.product .product-image > img,
.aai-cro-home .aai-home-audio-bestsellers li.product .product-image > img,
.aai-cro-home .aai-home-ebook-bestsellers li.product .product-image > img,
.aai-cro-home .aai-home-tips-column li.product .product-image > img {
  max-height:none !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:0 !important;
}
.aai-cro-home .aai-home-new-products li.product:has(.aai-product-type-badge--audiobook) .product-image,
.aai-cro-home .aai-home-audio-bestsellers li.product:has(.aai-product-type-badge--audiobook) .product-image,
.aai-cro-home .aai-home-ebook-bestsellers li.product:has(.aai-product-type-badge--audiobook) .product-image,
.aai-cro-home .aai-home-tips-column li.product:has(.aai-product-type-badge--audiobook) .product-image {
  aspect-ratio:1 !important;
}
.aai-cro-home .aai-home-new-products .woocommerce-overflow,
.aai-cro-home .aai-home-audio-bestsellers .woocommerce-overflow,
.aai-cro-home .aai-home-ebook-bestsellers .woocommerce-overflow,
.aai-cro-home .aai-home-tips-column .woocommerce-overflow {
  overflow:visible !important;
  padding-top:8px;
  margin-top:-8px;
}
.aai-cro-home .aai-home-new-products li.product,
.aai-cro-home .aai-home-audio-bestsellers li.product,
.aai-cro-home .aai-home-ebook-bestsellers li.product,
.aai-cro-home .aai-home-tips-column li.product {
  position:relative;
  z-index:1;
}
.aai-cro-home .aai-home-new-products li.product .product-image,
.aai-cro-home .aai-home-audio-bestsellers li.product .product-image,
.aai-cro-home .aai-home-ebook-bestsellers li.product .product-image,
.aai-cro-home .aai-home-tips-column li.product .product-image,
.aai-cro-home .aai-home-new-products li.product:hover .product-image,
.aai-cro-home .aai-home-audio-bestsellers li.product:hover .product-image,
.aai-cro-home .aai-home-ebook-bestsellers li.product:hover .product-image,
.aai-cro-home .aai-home-tips-column li.product:hover .product-image {
  transform:none !important;
}
@media (hover:hover) {
  .aai-cro-home .aai-home-new-products li.product .product-block:hover .product-transition,
  .aai-cro-home .aai-home-audio-bestsellers li.product .product-block:hover .product-transition,
  .aai-cro-home .aai-home-ebook-bestsellers li.product .product-block:hover .product-transition,
  .aai-cro-home .aai-home-tips-column li.product .product-block:hover .product-transition {
    transform:translateY(-3px) !important;
    box-shadow:0 12px 28px rgba(28,20,16,.09) !important;
  }
  .aai-cro-home .aai-home-new-products li.product:hover,
  .aai-cro-home .aai-home-audio-bestsellers li.product:hover,
  .aai-cro-home .aai-home-ebook-bestsellers li.product:hover,
  .aai-cro-home .aai-home-tips-column li.product:hover {
    z-index:4;
  }
}

.aai-cro-home .aai-home-new-products,
.aai-cro-home .aai-home-audio-bestsellers,
.aai-cro-home .aai-home-ebook-bestsellers { margin-bottom:44px !important; }
.aai-cro-home .aai-home-editorial-grid { margin-bottom:46px !important; }
.aai-cro-home .aai-home-inspire-body { margin-bottom:38px !important; }

@media (max-width:1199px){
  .aai-cro-home .aai-home-new-products .elementor-widget-bookory-products ul.products,
  .aai-cro-home .aai-home-audio-bestsellers .elementor-widget-bookory-products ul.products,
  .aai-cro-home .aai-home-ebook-bestsellers .elementor-widget-bookory-products ul.products {grid-template-columns:repeat(5,minmax(0,1fr));}
  .aai-cro-home .aai-home-tips-column .elementor-widget-bookory-products ul.products {grid-template-columns:repeat(3,minmax(0,1fr));}
  .aai-cro-home .aai-home-inspire-books .elementor-widget-bookory-products ul.products {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:1024px){
  .aai-cro-home .aai-home-new-products .elementor-widget-bookory-products ul.products,
  .aai-cro-home .aai-home-audio-bestsellers .elementor-widget-bookory-products ul.products,
  .aai-cro-home .aai-home-ebook-bestsellers .elementor-widget-bookory-products ul.products {grid-template-columns:repeat(3,minmax(0,1fr));}
  .aai-cro-home .aai-home-tips-column .elementor-widget-bookory-products ul.products,
  .aai-cro-home .aai-home-inspire-books .elementor-widget-bookory-products ul.products {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:767px){
  .aai-cro-home .aai-home-new-products .elementor-widget-bookory-products ul.products,
  .aai-cro-home .aai-home-audio-bestsellers .elementor-widget-bookory-products ul.products,
  .aai-cro-home .aai-home-ebook-bestsellers .elementor-widget-bookory-products ul.products,
  .aai-cro-home .aai-home-tips-column .elementor-widget-bookory-products ul.products,
  .aai-cro-home .aai-home-inspire-books .elementor-widget-bookory-products ul.products {grid-template-columns:repeat(2,minmax(0,1fr)); --aai-shelf-col-gap:10px; gap:18px var(--aai-shelf-col-gap) !important;}
  .aai-cro-home .aai-home-editorial-grid > .elementor-container {padding:16px !important; gap:16px;}
}
/* Drop the divider after the last card in each row. Ranges match the column counts above. */
@media (min-width:1200px){
  .aai-cro-home .aai-home-new-products ul.products li.product:nth-child(6n)::after,
  .aai-cro-home .aai-home-audio-bestsellers ul.products li.product:nth-child(6n)::after,
  .aai-cro-home .aai-home-ebook-bestsellers ul.products li.product:nth-child(6n)::after,
  .aai-cro-home .aai-home-tips-column ul.products li.product:nth-child(4n)::after,
  .aai-cro-home .aai-home-inspire-books ul.products li.product:nth-child(4n)::after {content:none;}
}
@media (min-width:1025px) and (max-width:1199px){
  .aai-cro-home .aai-home-new-products ul.products li.product:nth-child(5n)::after,
  .aai-cro-home .aai-home-audio-bestsellers ul.products li.product:nth-child(5n)::after,
  .aai-cro-home .aai-home-ebook-bestsellers ul.products li.product:nth-child(5n)::after,
  .aai-cro-home .aai-home-tips-column ul.products li.product:nth-child(3n)::after,
  .aai-cro-home .aai-home-inspire-books ul.products li.product:nth-child(3n)::after {content:none;}
}
@media (min-width:768px) and (max-width:1024px){
  .aai-cro-home .aai-home-new-products ul.products li.product:nth-child(3n)::after,
  .aai-cro-home .aai-home-audio-bestsellers ul.products li.product:nth-child(3n)::after,
  .aai-cro-home .aai-home-ebook-bestsellers ul.products li.product:nth-child(3n)::after,
  .aai-cro-home .aai-home-tips-column ul.products li.product:nth-child(2n)::after,
  .aai-cro-home .aai-home-inspire-books ul.products li.product:nth-child(2n)::after {content:none;}
}
@media (max-width:767px){
  .aai-cro-home .aai-home-new-products ul.products li.product:nth-child(2n)::after,
  .aai-cro-home .aai-home-audio-bestsellers ul.products li.product:nth-child(2n)::after,
  .aai-cro-home .aai-home-ebook-bestsellers ul.products li.product:nth-child(2n)::after,
  .aai-cro-home .aai-home-tips-column ul.products li.product:nth-child(2n)::after,
  .aai-cro-home .aai-home-inspire-books ul.products li.product:nth-child(2n)::after {content:none;}
}

/* =====================================================
   CRO 2.5.3 – homepage containment + de-boxing hotfix
   Prevent homepage presentation rules from styling global header/footer.
   ===================================================== */

/* The homepage marker lives on body, so old generic nth-child rules could
   accidentally decorate Elementor header/footer sections. Restore those
   global areas to their own template styling. */
.aai-cro-home header .elementor-top-section,
.aai-cro-home footer .elementor-top-section,
.aai-cro-home .elementor-location-header .elementor-top-section,
.aai-cro-home .elementor-location-footer .elementor-top-section,
.aai-cro-home .hfe-header .elementor-top-section,
.aai-cro-home .hfe-footer .elementor-top-section {
  margin-bottom: 0 !important;
}

.aai-cro-home header .elementor-top-section:nth-child(2) > .elementor-container,
.aai-cro-home footer .elementor-top-section:nth-child(2) > .elementor-container,
.aai-cro-home .elementor-location-header .elementor-top-section:nth-child(2) > .elementor-container,
.aai-cro-home .elementor-location-footer .elementor-top-section:nth-child(2) > .elementor-container,
.aai-cro-home .hfe-header .elementor-top-section:nth-child(2) > .elementor-container,
.aai-cro-home .hfe-footer .elementor-top-section:nth-child(2) > .elementor-container {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.aai-cro-home header .elementor-top-section:nth-child(2) .elementor-column,
.aai-cro-home footer .elementor-top-section:nth-child(2) .elementor-column,
.aai-cro-home .elementor-location-header .elementor-top-section:nth-child(2) .elementor-column,
.aai-cro-home .elementor-location-footer .elementor-top-section:nth-child(2) .elementor-column,
.aai-cro-home .hfe-header .elementor-top-section:nth-child(2) .elementor-column,
.aai-cro-home .hfe-footer .elementor-top-section:nth-child(2) .elementor-column {
  border-right: 0 !important;
}

.aai-cro-home header .elementor-top-section:nth-child(2) .elementor-widget-container,
.aai-cro-home footer .elementor-top-section:nth-child(2) .elementor-widget-container,
.aai-cro-home .elementor-location-header .elementor-top-section:nth-child(2) .elementor-widget-container,
.aai-cro-home .elementor-location-footer .elementor-top-section:nth-child(2) .elementor-widget-container,
.aai-cro-home .hfe-header .elementor-top-section:nth-child(2) .elementor-widget-container,
.aai-cro-home .hfe-footer .elementor-top-section:nth-child(2) .elementor-widget-container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Trust strip = one calm surface only. Remove nested icon-box chrome. */
.aai-cro-home .aai-cro-trust-strip > .elementor-container {
  border: 1px solid rgba(24,24,24,.075) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 7px 24px rgba(34,25,20,.035) !important;
  overflow: hidden !important;
}
.aai-cro-home .aai-cro-trust-strip .elementor-widget-icon-box .elementor-widget-container,
.aai-cro-home .aai-cro-trust-strip .elementor-icon-box-wrapper {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.aai-cro-home .aai-cro-trust-strip .elementor-column:not(:last-child) {
  border-right: 1px solid rgba(24,24,24,.07) !important;
}

/* Discovery section: no box inside another box. Keep only the author card
   as a deliberate soft surface; the section itself remains open/white. */
.aai-cro-home .aai-home-editorial-grid > .elementor-container {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.aai-cro-home .aai-home-authors-column {
  border: 1px solid rgba(246,93,78,.08) !important;
  border-radius: 20px !important;
  background: #fff8f2 !important;
  box-shadow: none !important;
}

/* Inspiration should sit directly on the page canvas, not in an extra shell. */
.aai-cro-home .aai-home-inspire-body > .elementor-container {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

@media (max-width: 767px) {
  .aai-cro-home .aai-cro-trust-strip > .elementor-container {
    border-radius: 14px !important;
  }
  .aai-cro-home .aai-cro-trust-strip .elementor-column:not(:last-child) {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(24,24,24,.07) !important;
  }
}


/* =====================================================
   CRO 2.5.4 – global header/footer + homepage chrome polish
   Scope: presentation only. No WooCommerce/import/generator changes.
   ===================================================== */

/* Remove the legacy top utility bar. It contained the misleading
   "O AudioSpace" -> Contact link and adds unnecessary vertical chrome. */
.elementor-element.elementor-element-164f825f {
  display: none !important;
}

/* Main Elementor header: lower profile and true vertical centering. */
.elementor-element.elementor-element-7b27bb4 {
  min-height: 88px !important;
  height: auto !important;
  margin: 0 !important;
}
.elementor-element.elementor-element-7b27bb4 > .elementor-container {
  min-height: 88px !important;
  align-items: center !important;
}
.elementor-element.elementor-element-7b27bb4 .elementor-column,
.elementor-element.elementor-element-7b27bb4 .elementor-widget-wrap,
.elementor-element.elementor-element-7501e779 > .elementor-container,
.elementor-element.elementor-element-7501e779 .elementor-column,
.elementor-element.elementor-element-7501e779 .elementor-widget-wrap {
  align-items: center !important;
  align-content: center !important;
}
.elementor-element.elementor-element-7b27bb4 .elementor-widget {
  margin-bottom: 0 !important;
}
.elementor-element.elementor-element-6929163a img {
  max-height: 46px !important;
  width: auto !important;
}

/* Homepage begins immediately below the compact header. Bookory's generic
   content margin can otherwise leave ~60px of dead space above the hero. */
body.aai-cro-home #page .site-content,
body.aai-cro-home #content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body.aai-cro-home #content > .col-full {
  padding-top: 0 !important;
}
body.aai-cro-home #content .elementor-top-section:first-child {
  margin-top: 0 !important;
}

/* Search popup: reserve a dedicated close-button zone so the X never
   overlaps the input or search results. */
.site-search-popup .site-search-popup-wrap {
  padding-left: clamp(24px, 4vw, 70px) !important;
  padding-right: clamp(82px, 7vw, 118px) !important;
}
.site-search-popup .site-search-popup-wrap .site-search-popup-close {
  position: absolute !important;
  right: clamp(22px, 3vw, 46px) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 44px !important;
  height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #181818 !important;
  box-shadow: 0 5px 18px rgba(20,20,20,.08) !important;
  z-index: 10 !important;
}
.site-search-popup .site-search-popup-wrap .site-search-popup-close:hover {
  background: #fff4f1 !important;
  color: #f65d4e !important;
}
.site-search-popup .site-search-popup-wrap .site-search,
.site-search-popup .site-search-popup-wrap form {
  min-width: 0 !important;
}
.site-search-popup .site-search-popup-wrap input[type="search"],
.site-search-popup .site-search-popup-wrap input[type="text"] {
  padding-right: 18px !important;
}

/* Trust strip: one quiet warm surface. No double borders, no vertical rules,
   no nested card outlines. */
body.aai-cro-home .aai-cro-trust-strip > .elementor-container {
  border: 0 !important;
  border-radius: 18px !important;
  background: #fff9f6 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
body.aai-cro-home .aai-cro-trust-strip .elementor-column,
body.aai-cro-home .aai-cro-trust-strip .elementor-column:not(:last-child),
body.aai-cro-home .aai-cro-trust-strip .elementor-widget-container,
body.aai-cro-home .aai-cro-trust-strip .elementor-icon-box-wrapper {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
body.aai-cro-home .aai-cro-trust-strip .elementor-widget-container {
  padding: 18px 24px !important;
}

/* Homepage rules must never create spacing between global footer pieces.
   HFE/Elementor may output footer and footer-bar as separate templates; a dark
   wrapper makes any inter-template space visually continuous. */
body.aai-cro-home [data-elementor-type="footer"],
body.aai-cro-home [data-elementor-type="footer"] > .elementor,
body.aai-cro-home [data-elementor-type="footer"] .elementor-section,
body.aai-cro-home [data-elementor-type="footer"] .elementor-top-section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
body.aai-cro-home [data-elementor-type="footer"],
body.aai-cro-home [data-elementor-type="footer"] .elementor-section,
body.aai-cro-home [data-elementor-type="footer"] .elementor-top-section {
  background-color: #282828 !important;
}
/* Also cover HFE wrappers used by some Bookory versions. */
body.aai-cro-home .bookory-footer-builder,
body.aai-cro-home .bookory-footer-builder .site-footer,
body.aai-cro-home footer.site-footer {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  background: #282828 !important;
}

@media (max-width: 991px) {
  .elementor-element.elementor-element-7b27bb4,
  .elementor-element.elementor-element-7b27bb4 > .elementor-container {
    min-height: 74px !important;
  }
  .elementor-element.elementor-element-6929163a img {
    max-height: 40px !important;
  }
  .site-search-popup .site-search-popup-wrap {
    padding-left: 18px !important;
    padding-right: 72px !important;
  }
  .site-search-popup .site-search-popup-wrap .site-search-popup-close {
    right: 16px !important;
    width: 40px !important;
    height: 40px !important;
  }
}

@media (max-width: 767px) {
  body.aai-cro-home .aai-cro-trust-strip > .elementor-container {
    border-radius: 14px !important;
  }
  body.aai-cro-home .aai-cro-trust-strip .elementor-widget-container {
    padding: 14px 16px !important;
  }
}


/* =====================================================
   CRO 2.5.5 – REAL active header/footer + trust strip fix
   Active Bookory HFE templates on production: header 125, footer 329.
   This block intentionally overrides older broad homepage nth-child rules.
   ===================================================== */

/* ---------- ACTIVE HEADER: Elementor 125 ---------- */
/* Remove the legacy utility bar containing the misleading Contact-linked
   "O AudioSpace" item. The email remains available in footer/contact areas. */
.elementor-125 .elementor-element.elementor-element-f87b6fa {
  display: none !important;
}

/* Older homepage rules must never add spacing/chrome to header sections. */
body.aai-cro-home .elementor-125 .elementor-top-section,
body.aai-cro-home .elementor-125 .elementor-section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.aai-cro-home .elementor-125 .elementor-top-section > .elementor-container {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
body.aai-cro-home .elementor-125 .elementor-top-section .elementor-column,
body.aai-cro-home .elementor-125 .elementor-top-section .elementor-widget-container {
  border-right: 0 !important;
  box-shadow: none !important;
}

@media (min-width: 992px) {
  /* Compact premium header. */
  .elementor-125 .elementor-element.elementor-element-9ca9792 {
    min-height: 84px !important;
    height: 84px !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .elementor-125 .elementor-element.elementor-element-9ca9792 > .elementor-container {
    min-height: 84px !important;
    height: 84px !important;
    align-items: center !important;
    align-content: center !important;
  }

  /* JS consolidates the old separate nav row into the main row. Use equal
     outer tracks so navigation is visually centered in the viewport. */
  .elementor-125.aai-header-consolidated .elementor-element-9ca9792 > .elementor-container {
    display: grid !important;
    grid-template-columns: minmax(170px, 1fr) auto minmax(170px, 1fr) !important;
    column-gap: 26px !important;
  }
  .elementor-125.aai-header-consolidated .elementor-element-6cbd2d5 {
    grid-column: 1 !important;
    justify-self: start !important;
    width: auto !important;
    max-width: none !important;
  }
  .elementor-125.aai-header-consolidated .aai-header-nav-slot {
    grid-column: 2 !important;
    justify-self: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
    gap: 6px 12px !important;
  }
  .elementor-125.aai-header-consolidated .elementor-element-e595b4c {
    grid-column: 3 !important;
    justify-self: end !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
  }
  .elementor-125.aai-header-consolidated .elementor-element-e595b4c > .elementor-widget-wrap,
  .elementor-125.aai-header-consolidated .elementor-element-fe34fca > .elementor-container,
  .elementor-125.aai-header-consolidated .elementor-element-ef34409 > .elementor-widget-wrap {
    align-items: center !important;
    align-content: center !important;
  }
  .elementor-125.aai-header-consolidated .aai-header-nav-slot .primary-navigation > ul.menu > li > a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 42px !important;
    padding: 10px 15px !important;
    line-height: 1.15 !important;
  }
  .elementor-125 .elementor-element-c3a2fd1 img,
  .elementor-125 .site-branding img {
    max-height: 40px !important;
    width: auto !important;
  }

  /* The old third nav section is empty after consolidation; it must not leave
     the large white band that appeared between header and hero. */
  .elementor-125.aai-header-consolidated .elementor-element-ae4fcde,
  .elementor-125 .elementor-element-ae4fcde.aai-header-nav-section-empty {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* Page content starts directly after the active header. */
body.aai-cro-home .elementor-125 + #content,
body.aai-cro-home #page > #content,
body.aai-cro-home #content.site-content,
body.aai-cro-home .site-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body.aai-cro-home [data-elementor-type="wp-page"] > .elementor-section:first-child,
body.aai-cro-home [data-elementor-type="wp-page"] > .elementor-top-section:first-child,
body.aai-cro-home .aai-cro-home-marker {
  margin-top: 0 !important;
}

/* ---------- SEARCH POPUP ---------- */
/* Keep the close action in a dedicated grid cell instead of overlaying the
   search input. This overrides the older absolute-position experiment. */
.site-search-popup .site-search-popup-wrap {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 46px !important;
  align-items: center !important;
  gap: 18px !important;
  padding: 8px clamp(24px, 4vw, 70px) !important;
}
.site-search-popup .site-search-popup-wrap .site-search {
  grid-column: 1 !important;
  min-width: 0 !important;
  width: 100% !important;
}
.site-search-popup .site-search-popup-wrap .site-search-popup-close {
  grid-column: 2 !important;
  position: static !important;
  inset: auto !important;
  transform: none !important;
  margin: 0 !important;
  width: 44px !important;
  height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  justify-self: end !important;
  border-radius: 50% !important;
  background: #fff4f1 !important;
  color: #222 !important;
  box-shadow: none !important;
  z-index: 2 !important;
}
.site-search-popup .site-search-popup-wrap .site-search-popup-close:hover {
  background: #f65d4e !important;
  color: #fff !important;
}
.site-search-popup .site-search-popup-wrap input[type="search"],
.site-search-popup .site-search-popup-wrap input[type="text"] {
  box-sizing: border-box !important;
  width: 100% !important;
  padding-right: 16px !important;
}

/* ---------- TRUST STRIP ---------- */
/* No shared background/card around all three promises. Each promise is one
   standalone card; remove the outer shell and every separator line. */
body.aai-cro-home [data-elementor-type="wp-page"] .aai-cro-trust-strip > .elementor-container,
body.aai-cro-home .aai-cro-trust-strip > .elementor-container {
  display: flex !important;
  gap: 14px !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.aai-cro-home .aai-cro-trust-strip .elementor-column,
body.aai-cro-home .aai-cro-trust-strip .elementor-column:not(:last-child) {
  border: 1px solid rgba(24,24,24,.075) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 7px 22px rgba(34,25,20,.035) !important;
  overflow: hidden !important;
}
body.aai-cro-home .aai-cro-trust-strip .elementor-widget-container,
body.aai-cro-home .aai-cro-trust-strip .elementor-icon-box-wrapper {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.aai-cro-home .aai-cro-trust-strip .elementor-widget-container {
  padding: 16px 22px !important;
}

/* ---------- ACTIVE FOOTER: Elementor 329 ---------- */
/* Broad homepage section spacing was creating the white strip between the two
   dark footer rows. Restore the original footer as one continuous surface. */
body.aai-cro-home .elementor-329,
body.aai-cro-home .elementor-329 .elementor-top-section,
body.aai-cro-home .elementor-329 .elementor-section,
body.aai-cro-home [data-elementor-id="329"] {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  background-color: #282828 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.aai-cro-home .elementor-329 .elementor-top-section > .elementor-container,
body.aai-cro-home .elementor-329 .elementor-section > .elementor-container {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
body.aai-cro-home .elementor-329 .elementor-top-section .elementor-column,
body.aai-cro-home .elementor-329 .elementor-top-section .elementor-widget-container {
  border-right: 0 !important;
  box-shadow: none !important;
}
/* Keep only the footer's own intended divider between main footer and copyright. */
body.aai-cro-home .elementor-329 .elementor-element-ec0b2e5 {
  margin-top: 0 !important;
  border-top: 1px solid rgba(255,255,255,.09) !important;
  background: #282828 !important;
}

@media (max-width: 991px) {
  .elementor-125 .elementor-element.elementor-element-9ca9792,
  .elementor-125 .elementor-element.elementor-element-9ca9792 > .elementor-container {
    min-height: 72px !important;
    height: 72px !important;
  }
  .site-search-popup .site-search-popup-wrap {
    grid-template-columns: minmax(0, 1fr) 42px !important;
    gap: 10px !important;
    padding: 8px 16px !important;
  }
  .site-search-popup .site-search-popup-wrap .site-search-popup-close {
    width: 40px !important;
    height: 40px !important;
  }
}

@media (max-width: 767px) {
  body.aai-cro-home .aai-cro-trust-strip > .elementor-container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  body.aai-cro-home .aai-cro-trust-strip .elementor-column {
    border-radius: 14px !important;
  }
}

/* Lucide icons (https://lucide.dev): headphones, book-open. */
#aai-format-v5 .art svg {
  display: none !important;
}
#aai-format-v5 .art {
  border-radius: 50%;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 54%;
}
#aai-format-v5 .audio .art {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f15a49' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 14h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a9 9 0 0 1 18 0v7a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3'/%3E%3C/svg%3E");
}
#aai-format-v5 .ebook .art {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b5ce7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v16'/%3E%3Cpath d='M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z'/%3E%3C/svg%3E");
}

/* Homepage rails have no separators hanging into the next section. */
.aai-cro-home .elementor-210 .elementor-widget-bookory-products ul.products li.product::before {
  display: none;
}

/* Keep homepage CTA dimensions, labels and arrows stationary on hover. */
.aai-cro-home .elementor-210 .elementor-widget-button .elementor-button {
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
  transform: none;
}
.aai-cro-home .elementor-210 .elementor-widget-button .elementor-button:hover {
  transform: none;
}
.aai-cro-home .elementor-210 .elementor-button .elementor-button-icon i::before {
  display: block;
  animation: none !important;
  transform: none;
}
.aai-cro-home #aai-format-v5 .fcard,
.aai-cro-home #aai-format-v5 .fcard:hover,
.aai-cro-home .aai-format-card,
.aai-cro-home .aai-format-card:hover {
  transform: none;
  transition: border-color .2s ease;
  box-shadow: 0 14px 36px rgba(30,20,15,.08);
}
.aai-cro-home #aai-format-v5 .fcard:hover {
  border-color: #fb594f;
}

/* Match the audiobook rail gap below the heading and CTA. */
.aai-cro-home .elementor-210 .elementor-element.elementor-element-7e7293d {
  margin-top: 20px;
}

/* Center the label and arrow without inline baseline space below them. */
.aai-cro-home .elementor-210 .elementor-widget-button .elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 18px;
}
.aai-cro-home .elementor-210 .elementor-button-content-wrapper {
  align-items: center;
  justify-content: center;
}

/* Homepage spacing trial: separate sections, keep headings with their content. */
.aai-cro-home .elementor.elementor-210 {
  --aai-section-space: 64px;
  --aai-heading-space: 24px;
}
.aai-cro-home .elementor.elementor-210 > .elementor-section:is(.aai-home-new-products, .aai-home-format-section, .aai-home-audio-bestsellers, .aai-home-ebook-bestsellers, .aai-home-editorial-grid) {
  margin-bottom: var(--aai-section-space) !important;
}
.aai-cro-home .elementor.elementor-210 > .aai-cro-trust-strip {
  margin-bottom: 40px !important;
}
.aai-cro-home .elementor.elementor-210 > .aai-home-section-head {
  margin-bottom: var(--aai-heading-space) !important;
}
.aai-cro-home .elementor.elementor-210 > .aai-home-format-section {
  padding-top: 0 !important;
}
.aai-cro-home .elementor-210 #aai-format-v5 {
  margin-top: var(--aai-heading-space) !important;
}
.aai-cro-home .elementor.elementor-210 .aai-home-shelf .elementor-widget-bookory-products {
  margin-top: 0 !important;
}
.aai-cro-home .elementor.elementor-210 .aai-home-shelf .elementor-widget-bookory-products > .elementor-widget-container {
  margin-top: var(--aai-heading-space) !important;
}
@media (max-width: 767px) {
  .aai-cro-home .elementor.elementor-210 {
    --aai-section-space: 40px;
  }
  .aai-cro-home .elementor.elementor-210 > .aai-cro-trust-strip {
    margin-bottom: 32px !important;
  }
}

/* Match the ebook hover accent to its book icon. */
.aai-cro-home #aai-format-v5 .fcard.ebook:hover {
  border-color: #6b5ce7;
}
.aai-cro-home #aai-format-v5 .fcard.ebook:hover .cta {
  color: #6b5ce7;
}

/* Compact utility thumbnails do not have room for format labels. */
.aai-download-library .aai-product-type-badge,
.bookory-sticky-add-to-cart .aai-product-type-badge,
.widget_shopping_cart .aai-product-type-badge,
ul.product_list_widget .aai-product-type-badge {
  display: none !important;
}

/* Shared page-title panel, matching the warm account-page treatment. */
body:not(.home):not(.single-product) .breadcrumb-wrap {
  background: #fff7f3 !important;
  padding-block: 0 !important;
  border-bottom: 0 !important;
  margin-bottom: 32px !important;
}
body:not(.home):not(.single-product) .breadcrumb-wrap .elementor-top-section {
  background: #fff7f3 !important;
  background-image: none !important;
  min-height: 0 !important;
  padding-block: 0 !important;
}
body:not(.home):not(.single-product) .breadcrumb-wrap .elementor-top-section > .elementor-background-overlay {
  display: none;
}
body:not(.home):not(.single-product) .breadcrumb-wrap .elementor-container {
  min-height: 0 !important;
}
body:not(.home):not(.single-product) .breadcrumb-wrap .elementor-widget-bookory-woocommerce-breadcrumb > .elementor-widget-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 122px;
  padding-block: 24px;
  box-sizing: border-box;
}
body:not(.home):not(.single-product) .breadcrumb-wrap .bookory-woocommerce-title {
  font-size: clamp(28px, 3.5vw, 42px) !important;
  line-height: 1.2 !important;
  letter-spacing: -.7px;
  text-transform: none !important;
  color: #282320;
  margin: 0 !important;
}
body:not(.home):not(.single-product) .breadcrumb-wrap .woocommerce-breadcrumb {
  font-size: 12px !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}
@media (max-width: 767px) {
  body:not(.home):not(.single-product) .breadcrumb-wrap {
    margin-bottom: 24px !important;
  }
  body:not(.home):not(.single-product) .breadcrumb-wrap .elementor-widget-bookory-woocommerce-breadcrumb > .elementor-widget-container {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    min-height: 0;
  }
}

/* Header dropdowns share the homepage CTA palette. */
.elementor-125 .aai-mega-panel .aai-mega-intro,
.site-header-account .account-dropdown .aai-account-head {
  background: #fff8f5;
}
.elementor-125 .aai-mega-panel .aai-mega-eyebrow,
.site-header-account .account-dropdown .aai-account-eyebrow,
.site-header-account .account-dropdown .aai-account-icon {
  color: #d94a3e;
}
.elementor-125 .aai-mega-panel .aai-mega-all,
.elementor-125 .aai-mega-panel .aai-mega-quick a {
  background: #fff8f5;
  color: #d94a3e;
  border: 1px solid rgba(246,93,78,.16);
}
.elementor-125 .aai-mega-panel .aai-mega-all:hover,
.elementor-125 .aai-mega-panel .aai-mega-all:focus-visible,
.elementor-125 .aai-mega-panel .aai-mega-quick a:hover,
.elementor-125 .aai-mega-panel .aai-mega-quick a:focus-visible {
  background: #f65d4e;
  color: #fff;
}
.elementor-125 .main-navigation .aai-mega-panel .aai-mega-links a:hover,
.elementor-125 .main-navigation .aai-mega-panel .aai-mega-links a:focus-visible,
.site-header-account .account-dropdown .account-links-menu li a:hover,
.site-header-account .account-dropdown .account-links-menu li a:focus-visible,
.site-header-account .account-dropdown .account-dashboard li a:hover,
.site-header-account .account-dropdown .account-dashboard li a:focus-visible {
  background: #fff8f5;
  color: #d94a3e;
}
.site-header-account .account-dropdown .account-dashboard li a:hover .aai-account-icon,
.site-header-account .account-dropdown .account-dashboard li a:focus-visible .aai-account-icon {
  color: #d94a3e;
}
