/* "Месец на намаленията": reduced prices, popup, landing and terms pages. Brand turquoise #00877a. */

.alphalife-bf-price { white-space: normal; }
/* Each price stays whole and moves to its own line when the card is narrow. */
.alphalife-bf-price del,
.alphalife-bf-price ins { display: inline-block; white-space: nowrap; }
.alphalife-bf-price del {
	margin-right: .35em;
	font-size: .85em;
	font-weight: 400;
	opacity: 1;
	text-decoration-thickness: 1px;
}
.alphalife-bf-price del,
.alphalife-bf-price del * { color: #8a8a8a; font-weight: 400; }
.alphalife-bf-price ins,
.alphalife-bf-price ins * { color: #00877a; font-weight: 600; text-decoration: none; background: none; }

.alphalife-bf-popup {
	width: min(440px, calc(100vw - 32px));
	max-height: calc(100dvh - 32px);
	padding: 0;
	border: 0;
	border-radius: 8px;
	overflow: auto;
	background: #111;
	color: #fff;
	box-shadow: 0 18px 60px rgba(0, 0, 0, .45);
}
.alphalife-bf-popup::backdrop { background: rgba(0, 0, 0, .6); }
dialog.alphalife-bf-popup .alphalife-bf-close {
	position: absolute;
	inset: 8px 8px auto auto;
	z-index: 1;
	width: 40px;
	height: 40px;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(0, 0, 0, .6);
	box-shadow: none;
	color: #fff;
	font-size: 24px;
	line-height: 40px;
	text-align: center;
	cursor: pointer;
}
.alphalife-bf-visual {
	height: min(250px, 30dvh);
	background-color: #1c1c1c;
	background-position: center 16%;
	background-repeat: no-repeat;
	background-size: cover;
}
.alphalife-bf-body { padding: 20px 24px 24px; text-align: center; }
.alphalife-bf-body p { margin: 0 0 10px; color: inherit; }
.alphalife-bf-title { font-size: 24px; line-height: 1.2; font-weight: 600; color: #4fc4b8 !important; }
.alphalife-bf-lead { font-size: 16px; }
.alphalife-bf-code {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
}
.alphalife-bf-code code {
	padding: 6px 14px;
	border-radius: 3px;
	background: linear-gradient(135deg, #c9a24b, #e5c878);
	color: #111;
	font-family: inherit;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: .04em;
}
dialog.alphalife-bf-popup .alphalife-bf-copy {
	min-height: 36px;
	padding: 6px 12px;
	border: 1px solid #fff;
	border-radius: 3px;
	background: transparent;
	color: #fff;
	font-size: 13px;
	text-transform: none;
	cursor: pointer;
}
dialog.alphalife-bf-popup .alphalife-bf-copy:hover { background: #fff; color: #111; }
.alphalife-bf-auto { font-size: 14px; }
.alphalife-bf-note { font-size: 12px; line-height: 1.45; color: #c8c8c8 !important; }
.alphalife-bf-note a { display: block; margin-top: 6px; color: #4fc4b8; font-size: 13px; text-decoration: underline; }
dialog.alphalife-bf-popup .alphalife-bf-action,
dialog.alphalife-bf-popup .alphalife-bf-action:hover {
	display: inline-block;
	margin-top: 6px;
	padding: 12px 26px;
	border: 0;
	border-radius: 4px;
	background: #00877a;
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	text-transform: none;
	cursor: pointer;
}

.alphalife-bf-offer-note {
	margin: 0 0 16px;
	padding: 10px 14px;
	border-left: 3px solid #00877a;
	background: #f2f9f8;
	font-size: 14px;
	line-height: 1.45;
}
.alphalife-bf-offer-note a { color: #00877a; text-decoration: underline; }

/* Landing page. */
.alphalife-bf-landing { max-width: 1100px; margin: 0 auto; }
.alphalife-bf-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.alphalife-bf-landing h2 { margin: 0 0 18px; font-family: "Playfair Display", Georgia, serif; font-size: 30px; font-weight: 600; line-height: 1.2; color: #111; }
.alphalife-bf-button,
.alphalife-bf-button:hover {
	display: inline-block;
	margin-top: 12px;
	padding: 12px 22px;
	border-radius: 5px;
	background: #93d1bd;
	color: #000;
	font-size: 14px;
	font-weight: 800;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
}

/* The three offers: conditions on the left, a card with the image and the price on the right. */
.alphalife-bf-rows { margin: 0 0 56px; }
.alphalife-bf-row {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: 32px;
	align-items: center;
	padding: 32px 0;
}
.alphalife-bf-row + .alphalife-bf-row { border-top: 1px solid rgba(147, 209, 189, .45); }
/* Chessboard: each row mirrors the one before, so the image changes sides. */
@media (width > 768px) {
	.alphalife-bf-row:nth-child(odd) .alphalife-bf-row-visual { order: 2; }
	.alphalife-bf-row:nth-child(even) { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
	.alphalife-bf-row:nth-child(even) .alphalife-bf-row-text { order: 2; }
}
#alphalife-bf-products { scroll-margin-top: 110px; }
.alphalife-bf-row-conditions,
.alphalife-bf-row-panel { border: 1px solid rgba(147, 209, 189, .45); border-radius: 10px; background: #fff; }
.alphalife-bf-row-conditions { padding: 20px 24px; }
.alphalife-bf-row-conditions h3,
.alphalife-bf-row-info h3 { margin: 0; font-family: "Playfair Display", Georgia, serif; font-size: 22px; font-weight: 600; line-height: 1.2; color: #111; }
.alphalife-bf-row-info h3 a { color: inherit; text-decoration: none; }
.alphalife-bf-row-conditions ul { margin: 14px 0 0; padding: 0; list-style: none; }
.alphalife-bf-row-conditions li {
	margin: 0 0 10px;
	padding-left: 30px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='10' fill='%2393d1bd'/%3E%3Cpath d='M5.5 10.5l3 3 6-6.5' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E") no-repeat 0 2px / 20px 20px;
	color: #333;
	font-size: 15px;
	line-height: 1.5;
}
.alphalife-bf-row-conditions li:last-child { margin-bottom: 0; }
.alphalife-bf-row-panel { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: center; padding: 16px; }
.alphalife-bf-row-visual { position: relative; display: block; }
.alphalife-bf-row-visual img { display: block; width: 100%; height: auto; border-radius: 6px; }
.alphalife-bf-row-badge {
	position: absolute;
	top: -6px;
	right: -6px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 76px;
	height: 76px;
	border-radius: 50%;
	background: linear-gradient(135deg, #c9a24b, #e5c878);
	color: #111;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.1;
	text-transform: uppercase;
}
.alphalife-bf-row-badge b { font-size: 22px; font-weight: 800; }
.alphalife-bf-row-code { display: flex; align-items: center; justify-content: center; aspect-ratio: 1; border-radius: 6px; background: #000; }
.alphalife-bf-row-code code { padding: 8px 18px; border-radius: 3px; background: linear-gradient(135deg, #c9a24b, #e5c878); color: #111; font-family: inherit; font-size: 26px; font-weight: 700; letter-spacing: .04em; }
.alphalife-bf-row-info p { margin: 0 0 8px; color: #333; font-size: 15px; line-height: 1.5; }
.alphalife-bf-row-tag { display: inline-block; padding: 2px 10px; border-radius: 3px; background: linear-gradient(135deg, #c9a24b, #e5c878); color: #111; font-family: Inter, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 700; letter-spacing: .04em; vertical-align: 2px; }
.alphalife-bf-row-info .alphalife-bf-row-sub { font-weight: 600; }
.alphalife-bf-row-info .alphalife-bf-row-price { margin: 12px 0 4px; font-size: 22px; font-weight: 700; line-height: 1.25; }
.alphalife-bf-row-info .alphalife-bf-row-out { margin-top: 12px; font-weight: 700; }
.alphalife-bf-row-price .alphalife-bf-price { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: 8px; }
.alphalife-bf-row-price del { font-size: 18px; font-weight: 400; }
.alphalife-bf-row-price ins { text-decoration: none; }
.alphalife-bf-row-info .alphalife-bf-button { width: 100%; box-sizing: border-box; }
.alphalife-bf-terms ul { margin: 0 0 12px; padding-left: 20px; }
.alphalife-bf-terms li { margin-bottom: 6px; }
.alphalife-bf-terms a { color: #00877a; text-decoration: underline; }

@media (width <= 768px) {
	.alphalife-bf-rows { margin-bottom: 40px; }
	.alphalife-bf-row { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 24px 0; }
	.alphalife-bf-row-panel { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.alphalife-bf-landing h2 { font-size: 26px; }
}

/* New header, on the landing page. */
.alphalife-bf-banner { display: block; margin: 0 0 40px; }
.alphalife-bf-banner img { display: block; width: 100%; height: auto; border-radius: 6px; }
.alphalife-bf-banner--text {
	padding: 56px 24px;
	border-radius: 6px;
	background: #000;
	text-align: center;
}
.alphalife-bf-banner--text span { display: block; color: #4fc4b8; font-size: 44px; line-height: 1.15; font-weight: 600; }
.alphalife-bf-banner--text small { display: block; margin-top: 12px; color: #fff; font-size: 16px; }

.alphalife-bf-landing { max-width: 1320px; }
.alphalife-bf-landing .alphalife-bf-store { margin: 0 0 48px; padding: 14px 20px; border: 1px solid rgba(147, 209, 189, .45); border-radius: 10px; color: #111; font-size: 16px; font-weight: 600; line-height: 1.45; text-align: center; }
.alphalife-bf-section { margin-bottom: 48px; }
.alphalife-bf-section > h2 { text-align: center; }

/* Homepage section, under the slider. */
.alphalife-bf-terms-link { margin: 16px 0 0; }
.alphalife-bf-terms-link a { color: #00877a; text-decoration: underline; }

@media (width <= 768px) {
	.alphalife-bf-banner { margin-bottom: 24px; }
	.alphalife-bf-banner--text { padding: 36px 16px; }
	.alphalife-bf-banner--text span { font-size: 32px; }
}

/* WordPress adds an empty paragraph after each block, and in a grid it would take a cell. */
.alphalife-bf-landing p:empty { display: none; }
.alphalife-bf-landing > h2 { text-align: center; }
.alphalife-bf-cards { max-width: 820px; margin-left: auto; margin-right: auto; }

/* Shop cards clip the price to one line (the theme swaps it with the rating on hover), so both prices stay together. */
.alphalife-bf-price { white-space: nowrap; }
.alphalife-bf-typed del { margin-right: 8px; color: #777; font-size: .75em; font-weight: 400; }
.alphalife-bf-typed ins { color: #00877a; text-decoration: none; }
.alphalife-bf-nowrap { white-space: nowrap; }

/* The coupon plugin's box in the cart offers a code that cannot be combined with ALPHA20. */
.wt_coupon_wrapper, .wt_sc_single_coupon { display: none !important; }

.alphalife-bf-landing a.alphalife-bf-button,
.alphalife-bf-landing a.alphalife-bf-button:hover { color: #000; text-decoration: none; }

@media (769px <= width <= 1024px) {
	.alphalife-bf-row-badge { width: 58px; height: 58px; font-size: 9px; }
	.alphalife-bf-row-badge b { font-size: 17px; }
}
