/* One catalogue disclosure, for desktop, tablet and touch. No raster assets. */
[data-asa-products-group], .asa-elementor-front.asa-products-is-collapsed { overflow-anchor: none; }
@media screen {
	[data-asa-products-group] .product-card[hidden],
	.asa-elementor-front .elementor-column[data-asa-product-extra][hidden],
	.asa-elementor-front [data-asa-products-row][hidden] { display: none !important; }
	/* An expanded embed inside a collapsed legacy page owns its own state. */
	.asa-products-is-collapsed .product-card[data-asa-product-extra]:not([hidden]) { display: flex !important; }
	.asa-products-is-collapsed .product-card.asa-product-row[data-asa-product-extra]:not([hidden]) { display: grid !important; }
	.asa-elementor-front.asa-products-is-collapsed .elementor-column[data-asa-product-extra]:not([hidden]) { display: flex !important; }
	.asa-elementor-front.asa-products-is-collapsed .asa-products-extra-row:not([hidden]) { display: block !important; }
	.asa-products .products-toggle-wrap,
	.asa-products .asa-products-toggle,
	.asa-products-disclosure,
	.asa-products-disclosure .asa-products-toggle,
	.asa-products-disclosure .elementor-button { display: flex !important; }
	.asa-products .products-toggle-wrap[hidden],
	.asa-products-disclosure[hidden] { display: none !important; }
}
.products-toggle-wrap, .asa-products-disclosure {
	position: relative; align-items: center; justify-content: center; isolation: isolate;
	gap: 16px; margin-block: clamp(30px, 4vw, 48px) 0; min-width: 0;
}
.products-toggle-wrap::before, .products-toggle-wrap::after {
	content: ''; flex: 1 1 90px; max-width: 180px; height: 1px;
	background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--primary, #5b85b3) 24%, transparent));
}
.products-toggle-wrap::after { transform: rotate(180deg); }
.asa-products .asa-products-toggle,
.asa-products-disclosure .elementor-button {
	--disclosure-ink: var(--navy, #102b54);
	position: relative; display: inline-flex; flex: 0 1 auto; align-items: center; justify-content: center;
	gap: 13px; min-height: 62px; min-width: min(100%, 300px); max-width: 100%;
	padding: 10px 20px 10px 12px; border: 1px solid color-mix(in srgb, var(--primary, #5b85b3) 32%, white);
	border-radius: 999px; color: var(--disclosure-ink); text-align: center; font: inherit; font-weight: 800;
	background: linear-gradient(130deg, rgba(255,255,255,.94), color-mix(in srgb, var(--primary, #5b85b3) 10%, white));
	box-shadow: 0 12px 28px color-mix(in srgb, var(--primary, #5b85b3) 12%, transparent), inset 0 1px 0 white;
	text-decoration: none; cursor: pointer; -webkit-tap-highlight-color: transparent;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}
.asa-products .asa-products-toggle::before, .asa-products-disclosure .elementor-button::before { display: none; }
.products-toggle-label, .asa-products-disclosure .elementor-button-text { min-width: 0; overflow-wrap: anywhere; line-height: 1.7; }
.asa-products-disclosure .elementor-button-content-wrapper { display: contents; }
.products-toggle-count {
	display: inline-grid; place-items: center; flex: 0 0 auto; min-width: 28px; min-height: 28px; padding: 0 6px;
	border-radius: 999px; font-size: .8rem; font-weight: 750; line-height: 1;
	color: color-mix(in srgb, var(--primary, #5b85b3) 65%, var(--navy, #102b54));
	background: color-mix(in srgb, var(--primary, #5b85b3) 12%, transparent);
}
.products-toggle-count[hidden] { display: none !important; }
.products-toggle-orbit {
	display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%;
	font-size: 25px; font-weight: 400; line-height: 1; color: white;
	background: linear-gradient(140deg, var(--navy, #102b54), var(--primary, #5b85b3));
	box-shadow: inset 0 1px 0 #ffffff48, 0 4px 10px #1537591f; transition: transform .32s ease;
}
.asa-products-disclosure .asa-products-toggle[aria-expanded="true"] .products-toggle-orbit,
.asa-products-disclosure .elementor-button[aria-expanded="true"] .products-toggle-orbit { transform: rotate(45deg); }
.asa-products .asa-products-toggle:hover, .asa-products-disclosure .elementor-button:hover {
	color: var(--disclosure-ink); transform: translateY(-2px);
	border-color: color-mix(in srgb, var(--primary, #5b85b3) 58%, white);
	box-shadow: 0 16px 32px color-mix(in srgb, var(--primary, #5b85b3) 18%, transparent), inset 0 1px 0 white;
}
.asa-products .asa-products-toggle:hover .products-toggle-icon { transform: none; }
.asa-products .asa-products-toggle:active, .asa-products-disclosure .elementor-button:active { transform: translateY(0); }
.asa-products .asa-products-toggle:focus-visible, .asa-products-disclosure .elementor-button:focus-visible {
	outline: 3px solid var(--primary, #5b85b3); outline-offset: 5px;
}
@media (max-width: 600px) {
	.products-toggle-wrap { gap: 9px; }
	.products-toggle-wrap::before, .products-toggle-wrap::after { flex-basis: 12px; }
	.asa-products .asa-products-toggle, .asa-products-disclosure .elementor-button { width: auto; min-width: 0; font-size: .94rem; padding-inline-start: 17px; }
}
@media (prefers-reduced-motion: reduce) {
	.asa-products .asa-products-toggle, .asa-products-disclosure .elementor-button, .products-toggle-orbit { transition: none; transform: none; }
}
.asa-motion-disabled .asa-products-toggle, .asa-motion-disabled .products-toggle-orbit { transition: none; }
@media print {
	.asa-products-is-collapsed [data-asa-product-extra],
	.asa-products-is-collapsed .asa-products-extra-row,
	.asa-products-is-collapsed [data-asa-products-row],
	.asa-products-is-collapsed .elementor-column[data-asa-product-extra] { display: block !important; }
	.asa-products-is-collapsed .product-card[data-asa-product-extra] { display: flex !important; }
	.asa-products-is-collapsed .product-card.asa-product-row[data-asa-product-extra] { display: grid !important; }
	.products-toggle-wrap, .asa-products-disclosure, .asa-products-toggle { display: none !important; }
}
