/* --------------------------------------------------------------------------
   CookieYes — Webfy liquid-glass skin
   Keeps CookieYes consent logic intact and only changes presentation.
   -------------------------------------------------------------------------- */

.cky-consent-container,
.cky-preference-center,
.cky-btn-revisit-wrapper {
	font-family: var(--font-sans, "Manrope", "Avenir Next", "Segoe UI", Arial, sans-serif) !important;
}

.cky-consent-container {
	left: clamp(0.8rem, 2vw, 1.5rem) !important;
	bottom: clamp(0.8rem, 2vw, 1.5rem) !important;
	width: min(31rem, calc(100vw - 2rem)) !important;
	max-width: none !important;
	padding: 0 !important;
}

.cky-consent-bar {
	padding: clamp(1.25rem, 2.4vw, 1.75rem) !important;
	overflow: hidden !important;
	border: 1px solid rgba(255, 255, 255, 0.92) !important;
	border-radius: 1.75rem !important;
	background:
		radial-gradient(circle at 92% 4%, rgba(242, 41, 91, 0.09), transparent 31%),
		linear-gradient(145deg, rgba(255, 255, 255, 0.93), rgba(244, 241, 250, 0.88)) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.98),
		0 28px 80px rgba(49, 39, 83, 0.2) !important;
	backdrop-filter: blur(30px) saturate(160%) !important;
}

.cky-title {
	margin: 0 0 0.6rem !important;
	color: var(--color-ink, #17151f) !important;
	font-family: var(--font-display, "Manrope", "Avenir Next", "Segoe UI", Arial, sans-serif) !important;
	font-size: clamp(1.2rem, 2vw, 1.45rem) !important;
	font-weight: 800 !important;
	letter-spacing: -0.045em !important;
	line-height: 1.15 !important;
}

.cky-notice-des,
.cky-notice-des p {
	color: var(--color-ink-soft, #55515f) !important;
	font-size: 0.86rem !important;
	line-height: 1.65 !important;
}

.cky-notice-des p {
	margin: 0 !important;
}

.cky-policy {
	color: var(--color-purple, #564d89) !important;
	font-weight: 750 !important;
	text-decoration-color: rgba(86, 77, 137, 0.4) !important;
	text-decoration-thickness: 0.08em !important;
	text-underline-offset: 0.18em !important;
}

.cky-notice-btn-wrapper,
.cky-prefrence-btn-wrapper {
	display: flex !important;
	margin-top: 1.15rem !important;
	flex-flow: row wrap !important;
	gap: 0.65rem !important;
}

.cky-btn {
	width: auto !important;
	min-height: 3.05rem !important;
	margin: 0 !important;
	padding: 0.72rem 1rem !important;
	flex: 1 1 11.5rem !important;
	border-width: 1px !important;
	border-radius: 999px !important;
	font-size: 0.76rem !important;
	font-weight: 800 !important;
	letter-spacing: -0.01em !important;
	line-height: 1.25 !important;
	text-align: center !important;
	transition:
		transform 220ms cubic-bezier(0.2, 0.8, 0.2, 1),
		box-shadow 220ms ease,
		background-color 220ms ease !important;
}

.cky-btn-accept {
	border-color: rgba(255, 255, 255, 0.72) !important;
	background: linear-gradient(100deg, var(--color-purple, #564d89), #7d4b9c 55%, var(--color-pink, #f2295b)) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.38),
		0 13px 28px rgba(111, 57, 125, 0.24) !important;
	color: #fff !important;
	order: 2;
}

.cky-btn-customize,
.cky-btn-reject,
.cky-btn-preferences {
	border-color: rgba(86, 77, 137, 0.24) !important;
	background: rgba(255, 255, 255, 0.7) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.98),
		0 9px 22px rgba(49, 39, 83, 0.08) !important;
	color: var(--color-purple-deep, #40376e) !important;
}

.cky-btn-reject {
	order: 1;
}

.cky-btn-customize,
.cky-btn-preferences {
	order: 3;
}

@media (hover: hover) {
	.cky-btn:hover,
	.cky-btn-revisit-wrapper:hover {
		transform: translateY(-2px) !important;
	}

	.cky-btn-accept:hover {
		box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.42),
			0 17px 34px rgba(111, 57, 125, 0.31) !important;
	}

	.cky-btn-customize:hover,
	.cky-btn-reject:hover,
	.cky-btn-preferences:hover {
		background: rgba(238, 234, 248, 0.88) !important;
		box-shadow:
			inset 0 1px 0 #fff,
			0 13px 28px rgba(49, 39, 83, 0.12) !important;
	}
}

.cky-btn:focus-visible,
.cky-btn-close:focus-visible,
.cky-btn-revisit:focus-visible,
.cky-accordion-btn:focus-visible,
.cky-switch input:focus-visible {
	outline: 3px solid var(--color-pink, #f2295b) !important;
	outline-offset: 3px !important;
}

/* Preference centre. */
.cky-overlay {
	background: rgba(28, 23, 43, 0.34) !important;
	backdrop-filter: blur(12px) saturate(120%) !important;
}

.cky-preference-center {
	width: min(44rem, calc(100vw - 2rem)) !important;
	max-width: none !important;
	max-height: min(48rem, calc(100dvh - 2rem)) !important;
	overflow: hidden !important;
	border: 1px solid rgba(255, 255, 255, 0.94) !important;
	border-radius: 2rem !important;
	background:
		radial-gradient(circle at 92% 4%, rgba(242, 41, 91, 0.075), transparent 28%),
		linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(244, 241, 250, 0.94)) !important;
	box-shadow:
		inset 0 1px 0 #fff,
		0 38px 110px rgba(30, 23, 52, 0.28) !important;
	backdrop-filter: blur(34px) saturate(160%) !important;
}

.cky-preference-header {
	min-height: 4.5rem !important;
	padding: 1.2rem 1.35rem !important;
	border-bottom: 1px solid rgba(86, 77, 137, 0.1) !important;
	background: transparent !important;
}

.cky-preference-title {
	color: var(--color-ink, #17151f) !important;
	font-size: clamp(1.15rem, 2vw, 1.4rem) !important;
	font-weight: 800 !important;
	letter-spacing: -0.04em !important;
	line-height: 1.2 !important;
}

.cky-btn-close {
	display: grid !important;
	width: 2.75rem !important;
	height: 2.75rem !important;
	padding: 0 !important;
	place-items: center !important;
	border: 1px solid rgba(86, 77, 137, 0.12) !important;
	border-radius: 0.9rem !important;
	background: rgba(255, 255, 255, 0.72) !important;
	box-shadow:
		inset 0 1px 0 #fff,
		0 10px 24px rgba(49, 39, 83, 0.1) !important;
}

.cky-btn-close img {
	width: 0.92rem !important;
	height: 0.92rem !important;
	opacity: 0.72;
}

.cky-preference-body-wrapper {
	background: transparent !important;
}

.cky-preference-content-wrapper {
	padding: 1.25rem 1.35rem 0.55rem !important;
	color: var(--color-ink-soft, #55515f) !important;
	font-size: 0.82rem !important;
	line-height: 1.6 !important;
}

.cky-show-desc-btn,
.cky-accordion-btn {
	color: var(--color-ink, #17151f) !important;
	font-family: var(--font-sans, "Manrope", "Avenir Next", "Segoe UI", Arial, sans-serif) !important;
	font-weight: 800 !important;
}

.cky-horizontal-separator {
	background: rgba(86, 77, 137, 0.1) !important;
}

.cky-accordion {
	margin: 0.7rem 0 !important;
	overflow: hidden !important;
	border: 1px solid rgba(86, 77, 137, 0.1) !important;
	border-radius: 1.2rem !important;
	background: rgba(255, 255, 255, 0.58) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
}

.cky-accordion-item {
	padding: 1rem 1.05rem !important;
	border: 0 !important;
}

.cky-accordion-header-des,
.cky-accordion-header-des p,
.cky-accordion-body {
	color: var(--color-ink-soft, #55515f) !important;
	font-size: 0.76rem !important;
	line-height: 1.55 !important;
}

.cky-always-active {
	color: var(--color-purple, #564d89) !important;
	font-size: 0.68rem !important;
	font-weight: 800 !important;
}

.cky-switch input {
	width: 2.8rem !important;
	height: 1.55rem !important;
	border: 1px solid rgba(86, 77, 137, 0.12) !important;
	border-radius: 999px !important;
	box-shadow: inset 0 1px 3px rgba(49, 39, 83, 0.13) !important;
}

.cky-switch input:checked {
	background: linear-gradient(100deg, var(--color-purple, #564d89), var(--color-pink, #f2295b)) !important;
}

.cky-audit-table {
	border-color: rgba(86, 77, 137, 0.1) !important;
	border-radius: 0.9rem !important;
	background: rgba(238, 234, 248, 0.55) !important;
	color: var(--color-ink-soft, #55515f) !important;
}

.cky-footer-wrapper {
	padding: 0.65rem 1.35rem 0 !important;
	background: rgba(255, 255, 255, 0.78) !important;
}

.cky-footer-shadow {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.96)) !important;
}

.cky-prefrence-btn-wrapper {
	margin: 0 !important;
	padding: 0.45rem 0 1rem !important;
}

.cky-footer-wrapper > [data-cky-tag="detail-powered-by"] {
	padding: 0.6rem 0.1rem 0.7rem !important;
	border-top: 1px solid rgba(86, 77, 137, 0.08) !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: rgba(85, 81, 95, 0.72) !important;
}

/* Reopen preferences button. */
.cky-btn-revisit-wrapper {
	left: clamp(0.8rem, 2vw, 1.5rem) !important;
	bottom: calc(clamp(0.8rem, 2vw, 1.5rem) + env(safe-area-inset-bottom)) !important;
	width: 3.55rem !important;
	height: 3.55rem !important;
	border: 1px solid rgba(255, 255, 255, 0.72) !important;
	border-radius: 1.2rem !important;
	background: linear-gradient(145deg, rgba(86, 77, 137, 0.94), rgba(242, 41, 91, 0.88)) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.35),
		0 15px 36px rgba(73, 43, 105, 0.24) !important;
	transition: transform 220ms cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 220ms ease !important;
	backdrop-filter: blur(18px) saturate(155%) !important;
}

.cky-btn-revisit {
	width: 100% !important;
	height: 100% !important;
	padding: 0 !important;
}

.cky-btn-revisit img {
	width: 1.35rem !important;
	height: 1.35rem !important;
	filter: brightness(0) invert(1);
}

@media (max-width: 640px) {
	.cky-consent-container {
		right: 0.65rem !important;
		bottom: calc(0.65rem + env(safe-area-inset-bottom)) !important;
		left: 0.65rem !important;
		width: auto !important;
	}

	.cky-consent-bar {
		padding: 1.2rem !important;
		border-radius: 1.4rem !important;
	}

	.cky-notice-btn-wrapper,
	.cky-prefrence-btn-wrapper {
		flex-direction: column !important;
	}

	.cky-btn {
		width: 100% !important;
		min-height: 3rem !important;
		flex: 0 0 auto !important;
	}

	.cky-preference-center {
		width: calc(100vw - 1rem) !important;
		max-height: calc(100dvh - 1rem) !important;
		border-radius: 1.45rem !important;
	}

	.cky-preference-header {
		min-height: 4rem !important;
		padding: 0.9rem 1rem !important;
	}

	.cky-preference-content-wrapper {
		padding: 1rem 1rem 0.45rem !important;
	}

	.cky-accordion-item {
		padding: 0.9rem !important;
	}

	.cky-footer-wrapper {
		padding-inline: 1rem !important;
	}

	.cky-btn-revisit-wrapper {
		left: 0.75rem !important;
		width: 3.25rem !important;
		height: 3.25rem !important;
		border-radius: 1.05rem !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.cky-btn,
	.cky-btn-revisit-wrapper {
		transition: none !important;
	}
}
