/**
 * Elementor template 1086 — «Комплексні пакети святкувань»
 * Scoped to .elementor-1086 only.
 */

.elementor-1086 {
	--offer_bg_top: #141820;
	--offer_bg_bottom: #0d0f12;
	--offer_accent: #18c061;
	--offer_accent_soft: rgba(24, 192, 97, 0.35);
	--offer_blue: #39a8ff;
	--offer_blue_soft: rgba(57, 168, 255, 0.22);
	--offer_text: #e8eaef;
	--offer_muted: rgba(232, 234, 239, 0.55);
	--offer_border: rgba(57, 168, 255, 0.28);
	--offer_card_bg: rgba(255, 255, 255, 0.06);
	/* Pill shape (як на кнопці «Замовити зараз»): повне скруглення */
	--offer_radius_pill: 9999px;
	/* Основна карточка — помітно скруглена */
	--offer_radius_card: 22px;
	/* Колонки цін, смуга «додатковий учасник» — менше за карточку/вкладки */
	--offer_radius_inner: 10px;

	box-sizing: border-box;
	background: linear-gradient(180deg, var(--offer_bg_top) 0%, var(--offer_bg_bottom) 100%);
	padding: 2.5rem 1rem 3.5rem;
	color: var(--offer_text);
}

.elementor-1086 *,
.elementor-1086 *::before,
.elementor-1086 *::after {
	box-sizing: inherit;
}

/* Title row */
.elementor-1086 #title_offer {
	text-align: center;
	margin: 0 auto 1.75rem;
	max-width: 36rem;
}

.elementor-1086 #title_offer .elementor-heading-title {
	margin: 0;
	font-size: clamp(1.35rem, 3.5vw, 1.85rem);
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--offer_text);
}

/* Body container */
.elementor-1086 .offer_body {
	width: 100%;
	max-width: 560px;
	margin: 0 auto;
}

.elementor-1086 .offer_body .e-con-inner {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 1rem;
}

/* Tabs menu */
.elementor-1086 .offer_body .e-tabs-menu-base {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.5rem 0.45rem;
	width: 100%;
	padding: 0;
	margin: 0 0 0.25rem;
	background: transparent;
	border: none;
}

.elementor-1086 .offer_body .e-tab-base {
	appearance: none;
	cursor: pointer;
	flex: 1 1 auto;
	min-width: min(100%, 140px);
	max-width: 100%;
	margin: 0;
	padding: 0.65rem 0.75rem;
	border: 1px solid var(--offer_border);
	background: rgba(0, 0, 0, 0.35);
	color: var(--offer_text);
	font-family: inherit;
	font-size: clamp(0.62rem, 1.45vw, 0.72rem);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-align: center;
	border-radius: var(--offer_radius_pill);
	transition:
		background 0.2s ease,
		border-color 0.2s ease,
		box-shadow 0.2s ease,
		color 0.2s ease;
}

/* Hover: Elementor часто дає світлий фон + білий текст — перебиваємо контраст */
.elementor-1086 .offer_body .e-tab-base:hover:not(.e--selected) {
	background: rgba(57, 168, 255, 0.2) !important;
	border-color: rgba(57, 168, 255, 0.65) !important;
	color: #fff !important;
	box-shadow: 0 0 20px rgba(57, 168, 255, 0.18);
}

.elementor-1086 .offer_body .e-tab-base:hover:not(.e--selected) .e-paragraph-base {
	color: #fff !important;
}

.elementor-1086 .offer_body .e-tab-base:focus:not(.e--selected),
.elementor-1086 .offer_body .e-tab-base:focus-visible:not(.e--selected) {
	background: rgba(57, 168, 255, 0.2) !important;
	border-color: rgba(57, 168, 255, 0.65) !important;
	color: #fff !important;
	box-shadow: 0 0 20px rgba(57, 168, 255, 0.18);
	outline: none;
}

.elementor-1086 .offer_body .e-tab-base:focus:not(.e--selected) .e-paragraph-base,
.elementor-1086 .offer_body .e-tab-base:focus-visible:not(.e--selected) .e-paragraph-base {
	color: #fff !important;
}

.elementor-1086 .offer_body .e-tab-base.e--selected:hover {
	background: linear-gradient(135deg, #159a52 0%, var(--offer_accent) 55%, #22d978 100%) !important;
	border-color: rgba(255, 255, 255, 0.35) !important;
	color: #fff !important;
	box-shadow:
		0 0 0 1px var(--offer_accent_soft),
		0 10px 32px rgba(24, 192, 97, 0.35);
}

.elementor-1086 .offer_body .e-tab-base.e--selected:hover .e-paragraph-base {
	color: #fff !important;
}

.elementor-1086 .offer_body .e-tab-base.e--selected {
	background: linear-gradient(135deg, #159a52 0%, var(--offer_accent) 55%, #22d978 100%);
	border-color: rgba(255, 255, 255, 0.2);
	color: #fff;
	box-shadow:
		0 0 0 1px var(--offer_accent_soft),
		0 8px 28px rgba(24, 192, 97, 0.28);
}

.elementor-1086 .offer_body .e-tab-base.e--selected .e-paragraph-base {
	color: #fff !important;
}

.elementor-1086 .offer_body .e-tab-base .e-paragraph-base {
	display: block;
	width: 100%;
	color: inherit;
}

/* Tabs content area */
.elementor-1086 .offer_body .e-tabs-content-area-base {
	width: 100%;
}

.elementor-1086 .offer_body .e-tab-content-base {
	width: 100%;
}

/* Card */
.elementor-1086 .offer_cart {
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
	padding: 1.35rem 1.15rem 1.5rem;
	background: var(--offer_card_bg);
	border: 1px solid var(--offer_border);
	border-radius: var(--offer_radius_card);
	box-shadow:
		0 18px 48px rgba(0, 0, 0, 0.35),
		inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.elementor-1086 .offer_cart .offer_text_list {
	margin-bottom: 1.1rem;
}

.elementor-1086 .offer_cart .elementor-icon-list-items {
	list-style: none;
	margin: 0;
	padding: 0;
}

.elementor-1086 .offer_cart .elementor-icon-list-item {
	margin: 0 0 0.65rem;
	padding: 0;
	line-height: 1.45;
	font-size: 0.92rem;
	color: var(--offer_text);
}

.elementor-1086 .offer_cart .elementor-icon-list-item:last-child {
	margin-bottom: 0;
}

.elementor-1086 .offer_cart .elementor-icon-list-text {
	display: inline;
}

.elementor-1086 .offer_cart .emoji {
	width: 1.15em;
	height: 1.15em;
	vertical-align: -0.2em;
	margin-right: 0.15em;
}

/* Price row: flexbox widget */
.elementor-1086 .offer_cart .e-flexbox-base {
	display: flex !important;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 0.75rem;
	align-items: stretch;
	margin-bottom: 1rem;
}

.elementor-1086 .offer_cart .e-flexbox-base > .e-div-block-base {
	flex: 1 1 50%;
	min-width: 0;
	padding: 0.65rem 0.5rem;
	text-align: center;
	background: rgba(0, 0, 0, 0.22);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: var(--offer_radius_inner);
}

.elementor-1086 .offer_cart .offer_text_s .elementor-heading-title {
	margin: 0 0 0.4rem;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--offer_muted);
}

.elementor-1086 .offer_cart .offer_price_old .elementor-heading-title {
	margin: 0 0 0.2rem;
	font-size: 0.85rem;
	font-weight: 500;
	color: var(--offer_muted);
	text-decoration: line-through;
	text-decoration-thickness: 1px;
}

.elementor-1086 .offer_cart .offer_price_new .elementor-heading-title {
	margin: 0 0 0.45rem;
	font-size: clamp(1.15rem, 3.5vw, 1.45rem);
	font-weight: 800;
	line-height: 1.15;
	color: #fff;
	letter-spacing: 0.02em;
}

.elementor-1086 .offer_cart .offer_text .elementor-heading-title {
	margin: 0;
	font-size: 0.72rem;
	line-height: 1.35;
	font-weight: 500;
	color: var(--offer_muted);
}

.elementor-1086 .offer_cart .offer_text .emoji {
	width: 1em;
	height: 1em;
	vertical-align: -0.15em;
}

/* Extra participant strip (widget after flexbox, inside card) */
.elementor-1086 .offer_cart > .offer_text:last-of-type {
	margin-top: 0.25rem;
	margin-bottom: 1rem;
}

.elementor-1086 .offer_cart > .offer_text .elementor-heading-title {
	display: block;
	margin: 0;
	padding: 0.55rem 0.65rem;
	font-size: 0.8rem;
	text-align: center;
	background: var(--offer_blue_soft);
	border: 1px solid rgba(57, 168, 255, 0.35);
	border-radius: var(--offer_radius_inner);
	color: var(--offer_text);
}

/* CTA — layout only */
.elementor-1086 .offer_cart .offer_buttom {
	display: block;
	width: fit-content;
	max-width: 100%;
	margin: 0 auto;
	padding: 0.75rem 1.5rem;
	font-family: inherit;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: center;
	cursor: pointer;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: rgba(255, 26, 0, 0.85);
	color: #fff;
	border-radius: var(--offer_radius_pill);
	min-height: 2.75rem;
	transition: opacity 0.2s ease, filter 0.2s ease;
}

.elementor-1086 .offer_cart .offer_buttom:hover {
	filter: brightness(1.08);
}

.elementor-1086 .offer_cart .offer_buttom:focus-visible {
	outline: 2px solid var(--offer_blue);
	outline-offset: 3px;
}

/* Narrow screens */
@media (max-width: 520px) {
	.elementor-1086 {
		padding: 1.75rem 0.75rem 2.5rem;
	}

	.elementor-1086 .offer_body .e-tab-base {
		flex: 1 1 100%;
		font-size: 0.65rem;
	}

	.elementor-1086 .offer_cart {
		padding: 1.1rem 0.9rem 1.25rem;
	}

	.elementor-1086 .offer_cart .e-flexbox-base {
		flex-direction: column;
		gap: 0.65rem;
	}

	.elementor-1086 .offer_cart .e-flexbox-base > .e-div-block-base {
		flex: 1 1 auto;
	}
}
