/*
 * Dali Landing — main stylesheet.
 * Mobile first. Uses logical properties (inline-start / inline-end) so the same CSS
 * works for English (LTR) and Arabic (RTL). Colours come from the Customizer as variables.
 */

:root {
	--dali-ink: #1d1d1f;
	--dali-muted: #6b6b70;
	--dali-line: #e4e2dc;
	--dali-soft: #f5f4f0;
	--dali-bg: #ffffff;
	--dali-cta: #0b7a53;
	--dali-cta-ink: #ffffff;
	--dali-accent: #0b7a53;
	--dali-radius: 12px;
	--dali-font: system-ui, -apple-system, "Segoe UI", Roboto, Tahoma, sans-serif;
	--dali-gutter: 16px;
	--dali-header-h: 60px;
}

/* ---------- Base ---------- */

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
	margin: 0;
	background: var(--dali-bg);
	color: var(--dali-ink);
	font: 16px/1.6 var(--dali-font);
	-webkit-font-smoothing: antialiased;
}

img, video, iframe { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
button { font: inherit; color: inherit; }
p { margin: 0 0 12px; }
h1, h2, h3 { line-height: 1.25; margin: 0 0 14px; font-weight: 800; letter-spacing: -0.01em; }
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3 { letter-spacing: 0; }
[id] { scroll-margin-top: calc(var(--dali-header-h) + 12px); }

.screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.skip-link:focus {
	position: fixed !important; inset-block-start: 8px; inset-inline-start: 8px; z-index: 100;
	width: auto; height: auto; clip: auto; padding: 10px 14px; background: #fff; color: #000; border-radius: 8px;
}
:focus-visible { outline: 3px solid var(--dali-cta); outline-offset: 2px; }

.dali-wrap { width: 100%; max-width: 1200px; margin-inline: auto; padding-inline: var(--dali-gutter); }
.dali-muted { color: var(--dali-muted); }
.dali-small { font-size: 14px; }

/* ---------- Header ---------- */

.dali-topbar {
	background: var(--dali-ink); color: #fff; text-align: center;
	font-size: 13px; line-height: 1.4; padding: 8px var(--dali-gutter);
}
.dali-topbar a { color: #fff; }

.dali-header {
	position: sticky; inset-block-start: 0; z-index: 50;
	background: var(--dali-bg); border-block-end: 1px solid var(--dali-line);
}
.admin-bar .dali-header { inset-block-start: 46px; }
@media (min-width: 783px) { .admin-bar .dali-header { inset-block-start: 32px; } }
@media (max-width: 600px) { .admin-bar .dali-header { inset-block-start: 0; } }

.dali-header__in { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: var(--dali-header-h); }
.dali-logo a { font-weight: 800; font-size: 20px; text-decoration: none; }
.dali-logo img { max-height: 40px; width: auto; }
.dali-nav { display: none; }
.dali-nav ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 28px; }
.dali-nav a { text-decoration: none; font-size: 15px; font-weight: 600; }
.dali-nav a:hover { color: var(--dali-cta); }
.dali-header__end { display: flex; align-items: center; gap: 10px; }
.dali-lang { list-style: none; margin: 0; padding: 0; display: flex; gap: 8px; text-transform: uppercase; font-size: 13px; font-weight: 700; }
.dali-lang a { text-decoration: none; }

.dali-chip {
	display: inline-flex; align-items: center; gap: 6px;
	border: 1.5px solid var(--dali-ink); border-radius: 999px; padding: 6px 14px;
	font-size: 14px; font-weight: 600; background: transparent; cursor: pointer; text-decoration: none; white-space: nowrap;
}
.dali-chip.is-on { background: var(--dali-ink); color: #fff; }
.dali-header .dali-chip.is-on { background: var(--dali-cta); border-color: var(--dali-cta); color: var(--dali-cta-ink); }

/* ---------- Sections ---------- */

.dali-sec { padding-block: 40px; }
.dali-bg--soft { background: var(--dali-soft); }
.dali-bg--dark { background: var(--dali-ink); color: #fff; }
.dali-bg--dark .dali-muted { color: rgba(255, 255, 255, .7); }
.dali-sec--narrow .dali-wrap > * { max-width: 720px; margin-inline: auto; }
.dali-h { font-size: 24px; }
h1.dali-h { font-size: 26px; }
.dali-prose > :last-child { margin-block-end: 0; }
.dali-prose p { margin-block-end: 14px; }

/* Placeholder shown to editors when an image is missing. */
.dali-ph {
	display: grid; place-items: center; width: 100%; aspect-ratio: 1; min-height: 60px;
	border: 1px dashed #c9c6be; border-radius: 10px; color: var(--dali-muted); font-size: 12px; text-align: center;
	background: #efede8 linear-gradient(135deg, transparent 49.6%, #d8d5cd 49.6%, #d8d5cd 50.4%, transparent 50.4%);
}
.dali-ph span { background: #efede8; padding: 2px 6px; border-radius: 4px; }

/* Image slots collapse when no image is set (visitors never see empty boxes). */
.dali-card__img:empty, .dali-vs-card__img:empty, .dali-feature__img:empty { display: none; }
.dali-card:has(> .dali-card__img:empty) { grid-template-columns: 1fr; }
.dali-feature:has(> .dali-feature__img:empty) { grid-template-columns: 1fr !important; }

.dali-notice {
	padding: 14px 16px; border-radius: 10px; background: #fff6d6; color: #6b5000; font-size: 14px; border: 1px solid #f0dd9a;
}

/* ---------- Call to action ---------- */

.dali-cta {
	display: block; width: 100%; border: 0; border-radius: 10px; cursor: pointer;
	background: var(--dali-cta); color: var(--dali-cta-ink); text-align: center; text-decoration: none;
	font-weight: 800; font-size: 17px; line-height: 1.25; padding: 16px 18px;
	box-shadow: 0 6px 18px -8px var(--dali-cta);
	transition: filter .15s ease, transform .1s ease;
}
.dali-cta:hover { filter: brightness(.94); color: var(--dali-cta-ink); }
.dali-cta:active { transform: translateY(1px); }
.dali-cta[disabled] { opacity: .7; cursor: progress; }
.dali-cta__main, .dali-cta__sub { display: block; }
.dali-cta__sub { font-weight: 400; font-size: 13px; opacity: .85; margin-block-start: 3px; }
.dali-cta--inline { margin-block-start: 20px; }

/* ---------- Hero ---------- */

.dali-sec--hero { padding-block-start: 16px; }
.dali-hero { display: grid; gap: 20px; }
.dali-hero__main { border-radius: var(--dali-radius); overflow: hidden; background: var(--dali-soft); aspect-ratio: 1; }
.dali-hero__main img { width: 100%; height: 100%; object-fit: cover; }
.dali-thumbs { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; margin-block-start: 8px; }
.dali-thumb { padding: 0; border: 2px solid transparent; border-radius: 8px; overflow: hidden; cursor: pointer; background: var(--dali-soft); aspect-ratio: 1; }
.dali-thumb img { width: 100%; height: 100%; object-fit: cover; }
.dali-thumb.is-active { border-color: var(--dali-ink); }

.dali-rating { display: inline-flex; gap: 6px; align-items: center; font-size: 14px; text-decoration: none; }
.dali-rating span:last-child { text-decoration: underline; text-underline-offset: 3px; }
.dali-stars { color: #f5a623; letter-spacing: 1px; }
.dali-hero h1.dali-h { margin-block: 8px; }
.dali-hero__sub { margin-block-end: 10px; }
.dali-hero__intro { margin-block-end: 10px; color: var(--dali-muted); }

.dali-checks { list-style: none; margin: 12px 0 18px; padding: 0; display: grid; gap: 6px; }
.dali-checks li { position: relative; padding-inline-start: 28px; }
.dali-checks li::before {
	content: "✓"; position: absolute; inset-inline-start: 0; inset-block-start: 2px;
	width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center;
	background: var(--dali-accent); color: #fff; font-size: 12px; font-weight: 800;
}

/* ---------- Order box (offers + form) ---------- */

.dali-order { display: grid; gap: 12px; }
.dali-order__title { font-weight: 800; margin: 0; }
.dali-offers { display: grid; gap: 12px; }
.dali-offer {
	position: relative; display: grid; grid-template-columns: 22px 1fr auto; gap: 12px; align-items: center;
	border: 2px solid var(--dali-line); border-radius: var(--dali-radius); padding: 14px; cursor: pointer;
	background: var(--dali-bg); color: var(--dali-ink); transition: border-color .15s ease, background-color .15s ease;
}
.dali-offer:hover { border-color: #bdbab2; }
.dali-offer.is-selected { border-color: var(--dali-cta); background: color-mix(in srgb, var(--dali-cta) 6%, var(--dali-bg)); }
.dali-offer input { margin: 0; width: 20px; height: 20px; accent-color: var(--dali-cta); }
.dali-offer__info b { display: block; line-height: 1.3; }
.dali-offer__info small { color: var(--dali-muted); font-size: 13px; }
.dali-offer__price { text-align: end; line-height: 1.25; }
.dali-offer__price s { display: block; color: var(--dali-muted); font-size: 13px; }
.dali-offer__price strong { font-size: 18px; white-space: nowrap; }
.dali-offer__save { display: block; color: var(--dali-accent); font-size: 12px; font-weight: 700; }
.dali-offer__badge {
	position: absolute; inset-block-start: -11px; inset-inline-end: 12px;
	background: var(--dali-ink); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .03em;
	padding: 3px 10px; border-radius: 999px; text-transform: uppercase;
}
.dali-offer.is-selected .dali-offer__badge { background: var(--dali-cta); color: var(--dali-cta-ink); }

.dali-form { display: grid; gap: 10px; margin-block-start: 4px; }
.dali-field input, .dali-field textarea {
	width: 100%; font: inherit; font-size: 16px; color: var(--dali-ink); background: var(--dali-bg);
	padding: 14px; border: 1.5px solid var(--dali-line); border-radius: 10px; transition: border-color .15s ease;
}
.dali-field input:focus, .dali-field textarea:focus { outline: none; border-color: var(--dali-cta); box-shadow: 0 0 0 3px color-mix(in srgb, var(--dali-cta) 20%, transparent); }
.dali-field input[aria-invalid="true"] { border-color: #c62828; }
[dir="rtl"] .dali-field input[type="tel"] { text-align: right; }
.dali-hp { position: absolute !important; inset-inline-start: -9999px; width: 1px; height: 1px; overflow: hidden; }

.dali-summary { display: grid; gap: 4px; padding: 4px 2px; font-size: 15px; }
.dali-summary__row { display: flex; justify-content: space-between; gap: 12px; }
.dali-summary__total strong { font-size: 18px; }

.dali-form__msg { padding: 12px 14px; border-radius: 10px; background: #fdecea; color: #8a1c1c; font-size: 14px; }
.dali-form__msg.is-ok { background: #e7f6ee; color: #0b5e3c; }

.dali-under { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 6px; font-size: 14px; }
.dali-under a { font-weight: 600; }
.dali-soldout { padding: 16px; border-radius: var(--dali-radius); background: var(--dali-soft); font-weight: 700; text-align: center; }

.dali-final .dali-h { text-align: center; }

/* ---------- Proof bar ---------- */

.dali-proofs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; text-align: center; font-size: 13px; line-height: 1.35; }
.dali-proof { display: grid; justify-items: center; gap: 2px; }
.dali-proof__icon {
	width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center; font-size: 24px;
	background: var(--dali-bg); margin-block-end: 6px; overflow: hidden;
}
.dali-proof__icon img { width: 100%; height: 100%; object-fit: cover; }
.dali-bg--white .dali-proof__icon { background: var(--dali-soft); }
.dali-proof b { font-size: 15px; }

/* ---------- Horizontal scrollers (videos, screenshots) ---------- */

.dali-scroller {
	display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory;
	padding-block-end: 8px; margin-inline: calc(var(--dali-gutter) * -1); padding-inline: var(--dali-gutter);
	scrollbar-width: thin;
}
.dali-scroller > * { flex: 0 0 auto; scroll-snap-align: start; }

.dali-video { margin: 0; width: 160px; }
.dali-video__btn {
	position: relative; display: block; width: 100%; aspect-ratio: 9 / 16; padding: 0; border: 0;
	border-radius: var(--dali-radius); overflow: hidden; cursor: pointer; background: #111;
}
.dali-video__btn img, .dali-video__btn .dali-ph { width: 100%; height: 100%; object-fit: cover; aspect-ratio: auto; }
.dali-video__play {
	position: absolute; inset: 50% auto auto 50%; transform: translate(-50%, -50%);
	width: 52px; height: 52px; border-radius: 50%; background: rgba(255, 255, 255, .92); color: #111;
	display: grid; place-items: center; font-size: 18px; padding-inline-start: 4px;
}
.dali-video video, .dali-video iframe { width: 100%; aspect-ratio: 9 / 16; border: 0; border-radius: var(--dali-radius); background: #000; }
.dali-video figcaption { font-size: 13px; color: var(--dali-muted); margin-block-start: 6px; }

/* ---------- Versus ---------- */

.dali-versus { display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: stretch; }
.dali-vs-card {
	position: relative; border: 1px solid var(--dali-line); border-radius: var(--dali-radius);
	padding: 14px 10px; background: var(--dali-soft); color: var(--dali-muted);
}
.dali-vs-card.is-us { border: 2px solid var(--dali-cta); background: var(--dali-bg); color: var(--dali-ink); }
.dali-vs-card__img { margin-block-end: 10px; border-radius: 8px; overflow: hidden; }
.dali-vs-card__img img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.dali-vs-card:not(.is-us) .dali-vs-card__img img { filter: grayscale(1) blur(1px); opacity: .8; }
.dali-vs-card__title { display: block; text-align: center; margin-block-end: 8px; font-size: 14px; }
.dali-vs-card ul { list-style: none; margin: 0; padding: 0; font-size: 12.5px; line-height: 1.35; }
.dali-vs-card li { position: relative; display: flex; align-items: center; min-height: 46px; padding-block: 6px; padding-inline-start: 20px; border-block-start: 1px solid var(--dali-line); }
.dali-vs-card li::before { position: absolute; inset-inline-start: 0; font-weight: 800; }
.dali-vs-card li.is-yes::before { content: "✓"; color: var(--dali-accent); }
.dali-vs-card li.is-no::before { content: "✗"; color: #c62828; }
.dali-badge {
	position: absolute; inset-block-start: -11px; inset-inline-start: 50%; transform: translateX(-50%);
	background: var(--dali-cta); color: var(--dali-cta-ink); font-size: 11px; font-weight: 800;
	padding: 3px 10px; border-radius: 999px; white-space: nowrap;
}
[dir="rtl"] .dali-badge { transform: translateX(50%); }
.dali-vs-mid {
	align-self: center; width: 32px; height: 32px; border-radius: 50%; border: 1.5px solid var(--dali-ink);
	display: grid; place-items: center; font-weight: 800; font-size: 12px; background: var(--dali-bg); color: var(--dali-ink);
}

/* ---------- Ingredients ---------- */

.dali-cards { display: grid; gap: 10px; }
.dali-card {
	display: grid; grid-template-columns: 64px 1fr; gap: 12px; align-items: center;
	border: 1px solid var(--dali-line); border-radius: var(--dali-radius); padding: 10px; background: var(--dali-bg); color: var(--dali-ink);
}
.dali-card__img img, .dali-card__img .dali-ph { width: 64px; height: 64px; object-fit: cover; border-radius: 8px; }
.dali-card b { display: block; }
.dali-card small { color: var(--dali-muted); font-size: 13px; }
.dali-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 16px; }
.dali-chips span { border: 1.5px solid currentColor; border-radius: 999px; padding: 4px 12px; font-size: 13px; font-weight: 600; }

/* ---------- Timeline ---------- */

.dali-timeline { list-style: none; margin: 0 0 16px; padding: 0; padding-inline-start: 22px; border-inline-start: 2px solid var(--dali-ink); margin-inline-start: 8px; }
.dali-timeline li { position: relative; margin-block-end: 18px; }
.dali-timeline li::before {
	content: ""; position: absolute; inset-inline-start: -31px; inset-block-start: 5px;
	width: 14px; height: 14px; border-radius: 50%; background: var(--dali-bg); border: 3px solid var(--dali-cta);
}
.dali-timeline b, .dali-timeline span { display: block; }
.dali-timeline span { color: var(--dali-muted); font-size: 15px; }
.dali-callout {
	background: var(--dali-soft); border: 1px solid var(--dali-line); border-radius: var(--dali-radius);
	padding: 14px; text-align: center; font-weight: 800; margin-block-start: 12px; color: var(--dali-ink);
}

/* ---------- Comparison table ---------- */

.dali-table-wrap { overflow-x: auto; border-radius: var(--dali-radius); border: 1px solid var(--dali-line); background: var(--dali-bg); color: var(--dali-ink); }
.dali-table { border-collapse: collapse; width: 100%; min-width: 440px; font-size: 13px; }
.dali-table th, .dali-table td { padding: 10px 8px; text-align: center; border-block-end: 1px solid var(--dali-line); }
.dali-table tr:last-child th, .dali-table tr:last-child td { border-block-end: 0; }
.dali-table th[scope="row"] { text-align: start; font-weight: 600; }
.dali-table thead th { font-weight: 800; }
.dali-table .is-us { background: color-mix(in srgb, var(--dali-cta) 8%, var(--dali-bg)); font-weight: 800; }
.dali-table span.is-yes { color: var(--dali-accent); font-weight: 800; font-size: 16px; }
.dali-table span.is-no { color: #c62828; font-weight: 800; font-size: 16px; }
.dali-table span.is-mid { color: var(--dali-muted); font-weight: 800; }

/* ---------- Certificates ---------- */

.dali-lab b, .dali-lab small { display: block; }
.dali-certs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-block-start: 12px; }
.dali-cert { margin: 0; text-align: center; font-size: 12px; }
.dali-cert__btn { padding: 0; border: 1px solid var(--dali-line); border-radius: 8px; overflow: hidden; cursor: zoom-in; background: #fff; width: 100%; }
.dali-cert img, .dali-cert .dali-ph { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.dali-cert figcaption { margin-block-start: 6px; color: var(--dali-muted); }

/* ---------- Reviews ---------- */

.dali-score { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: center; margin-block-end: 16px; }
.dali-score__big { text-align: center; }
.dali-score__big b { display: block; font-size: 42px; line-height: 1; font-weight: 800; }
.dali-score__big small { display: block; color: var(--dali-muted); font-size: 13px; }
.dali-score__bars { display: grid; gap: 4px; }
.dali-bar { display: grid; grid-template-columns: 26px 1fr 36px; gap: 8px; align-items: center; font-size: 12px; }
.dali-bar i { height: 7px; background: var(--dali-line); border-radius: 4px; overflow: hidden; }
.dali-bar em { display: block; height: 100%; background: #f5a623; border-radius: 4px; }
.dali-filters { display: flex; gap: 8px; flex-wrap: wrap; margin-block-end: 12px; }
.dali-review-list { display: grid; gap: 12px; }
.dali-review { border: 1px solid var(--dali-line); border-radius: var(--dali-radius); padding: 14px; background: var(--dali-bg); color: var(--dali-ink); }
.dali-review[hidden] { display: none; }
.dali-review__tag { font-size: 11px; font-weight: 800; color: var(--dali-muted); text-transform: uppercase; letter-spacing: .04em; }
.dali-review__head { display: grid; margin: 6px 0; }
.dali-review p:last-of-type { margin-block-end: 0; }
.dali-review__photos { display: flex; gap: 8px; margin-block-start: 10px; }
.dali-review__photos button { padding: 0; border: 0; border-radius: 8px; overflow: hidden; cursor: zoom-in; }
.dali-review__photos img { width: 64px; height: 64px; object-fit: cover; }
.dali-shots-title { margin-block: 20px 8px; }
.dali-shot { width: 140px; padding: 0; border: 1px solid var(--dali-line); border-radius: var(--dali-radius); overflow: hidden; cursor: zoom-in; background: #fff; }
.dali-shot img { width: 100%; aspect-ratio: 9 / 16; object-fit: cover; object-position: top; }

/* ---------- Usage + guarantee ---------- */

.dali-split { display: grid; gap: 24px; }
.dali-usage { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; text-align: center; font-size: 13px; }
.dali-usage__img { margin-block-end: 6px; border-radius: 10px; overflow: hidden; aspect-ratio: 1; background: var(--dali-soft); display: grid; place-items: center; }
.dali-usage__img img, .dali-usage__img .dali-ph { width: 100%; height: 100%; object-fit: cover; }
.dali-usage__num { font-size: 28px; font-weight: 800; color: var(--dali-cta); }
.dali-guarantee {
	display: grid; grid-template-columns: 84px 1fr; gap: 16px; align-items: center;
	border: 2px solid var(--dali-ink); border-radius: var(--dali-radius); padding: 16px; background: var(--dali-bg); color: var(--dali-ink);
}
.dali-seal {
	width: 84px; height: 84px; border-radius: 50%; border: 4px double var(--dali-cta); color: var(--dali-cta);
	display: grid; place-items: center; text-align: center; font-weight: 800; font-size: 11px; line-height: 1.15; padding: 6px; overflow-wrap: anywhere;
}
.dali-refund { margin: 8px 0 0; padding-inline-start: 20px; font-size: 14px; }

/* ---------- FAQ ---------- */

.dali-faq details { border-block-end: 1px solid var(--dali-line); }
.dali-faq summary {
	list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 16px;
	padding: 16px 0; font-weight: 700;
}
.dali-faq summary::-webkit-details-marker { display: none; }
.dali-faq summary::after { content: "+"; font-size: 22px; line-height: 1; font-weight: 400; flex: none; }
.dali-faq details[open] summary::after { content: "–"; }
.dali-faq__a { color: var(--dali-muted); padding-block-end: 16px; }
.dali-faq__a p:last-child { margin: 0; }

/* ---------- Image + text ---------- */

.dali-feature { display: grid; gap: 24px; align-items: center; }
.dali-feature__img { border-radius: var(--dali-radius); overflow: hidden; }
.dali-feature__img img { width: 100%; }

/* ---------- Footer ---------- */

.dali-footer { background: var(--dali-soft); padding-block: 32px 110px; font-size: 14px; margin-block-start: 0; }
.dali-footer__grid { display: grid; gap: 20px; }
.dali-footer a { text-decoration: none; }
.dali-footer a:hover { text-decoration: underline; }
.dali-footer__nav ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.dali-pay { list-style: none; margin: 10px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.dali-pay li { border: 1px solid var(--dali-line); background: var(--dali-bg); border-radius: 6px; padding: 3px 10px; font-size: 12px; font-weight: 700; }
.dali-footer__small { margin-block-start: 20px; font-size: 12px; color: var(--dali-muted); }
.dali-footer__small p { margin-block-end: 4px; }

/* ---------- Sticky mobile bar ---------- */

.dali-sticky {
	position: fixed; inset-inline: 0; inset-block-end: 0; z-index: 60;
	display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: center;
	padding: 10px var(--dali-gutter) calc(10px + env(safe-area-inset-bottom));
	background: var(--dali-bg); border-block-start: 1px solid var(--dali-line); box-shadow: 0 -6px 18px rgba(0, 0, 0, .08);
	transform: translateY(110%); transition: transform .25s ease;
}
.dali-sticky.is-shown { transform: none; }
.dali-sticky__price { line-height: 1.2; }
.dali-sticky__price s { display: block; font-size: 12px; color: var(--dali-muted); }
.dali-sticky__price s:empty { display: none; }
.dali-sticky__price strong { font-size: 17px; white-space: nowrap; }
.dali-sticky .dali-cta { padding: 13px 14px; font-size: 15px; }

/* ---------- WhatsApp button & lightbox ---------- */

.dali-wa {
	position: fixed; inset-inline-end: 16px; inset-block-end: 90px; z-index: 55;
	width: 54px; height: 54px; border-radius: 50%; background: #25d366; color: #fff;
	display: grid; place-items: center; box-shadow: 0 6px 18px rgba(0, 0, 0, .2);
}

.dali-lightbox { border: 0; padding: 0; background: transparent; max-width: 94vw; max-height: 94vh; }
.dali-lightbox::backdrop { background: rgba(0, 0, 0, .85); }
.dali-lightbox img { max-width: 94vw; max-height: 90vh; width: auto; border-radius: 8px; }
.dali-lightbox__close {
	position: fixed; inset-block-start: 12px; inset-inline-end: 12px; width: 44px; height: 44px;
	border-radius: 50%; border: 0; background: #fff; color: #000; font-size: 26px; line-height: 1; cursor: pointer;
}

/* ---------- Regular pages & WooCommerce screens ---------- */

.dali-page { padding-block: 32px 48px; }
.dali-page__head { margin-block-end: 20px; }
.dali-entry { padding-block: 16px; border-block-end: 1px solid var(--dali-line); }
.dali-prose { max-width: 760px; }
.dali-prose img { border-radius: 8px; }
.dali-product .dali-prose { margin-inline: auto; }
.dali-404 { text-align: center; padding-block: 80px; }
.dali-404 .dali-cta { display: inline-block; width: auto; }

.woocommerce .button, .woocommerce button.button, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce #respond input#submit {
	background: var(--dali-cta); color: var(--dali-cta-ink); border-radius: 10px; font-weight: 700;
}
.woocommerce .button:hover, .woocommerce button.button.alt:hover, .woocommerce a.button.alt:hover { background: var(--dali-cta); color: var(--dali-cta-ink); filter: brightness(.94); }
.woocommerce-order { max-width: 760px; margin-inline: auto; }

/* ---------- Beaver Builder: let sections run edge to edge ---------- */

.fl-builder-content .fl-module[class*="fl-module-dali-"] > .fl-module-content,
.fl-builder-content .fl-module[class*="fl-module-dali-"].fl-module-content { margin: 0; }
.fl-builder-content .fl-row:has(.fl-module[class*="fl-module-dali-"]) > .fl-row-content-wrap { padding: 0 !important; }
.fl-builder-content .fl-row:has(.fl-module[class*="fl-module-dali-"]),
.fl-builder-content .fl-row:has(.fl-module[class*="fl-module-dali-"]) .fl-row-content { max-width: none !important; }
.fl-builder-content .fl-row:has(.fl-module[class*="fl-module-dali-"]) .fl-col-content { padding: 0; }

/* ---------- Tablet (≥ 640px) ---------- */

@media (min-width: 640px) {
	:root { --dali-gutter: 32px; }
	.dali-sec { padding-block: 56px; }
	.dali-h { font-size: 28px; }
	h1.dali-h { font-size: 32px; }
	.dali-proofs { font-size: 15px; }
	.dali-proof__icon { width: 60px; height: 60px; font-size: 30px; }
	.dali-cards { grid-template-columns: repeat(2, 1fr); }
	.dali-review-list { grid-template-columns: repeat(2, 1fr); }
	.dali-footer__grid { grid-template-columns: 2fr 1fr; }
	.dali-table { font-size: 14px; }
	.dali-vs-card ul { font-size: 14px; }
	.dali-vs-card li { min-height: 0; }
}

/* ---------- Desktop (≥ 960px) ---------- */

@media (min-width: 960px) {
	:root { --dali-header-h: 68px; }
	.dali-sec { padding-block: 72px; }
	.dali-sec--hero { padding-block: 32px 72px; }
	.dali-h { font-size: 32px; margin-block-end: 24px; }
	h1.dali-h { font-size: 38px; }
	.dali-nav { display: block; }

	.dali-hero { grid-template-columns: 1.1fr 1fr; gap: 56px; align-items: start; }
	.dali-hero__media { position: sticky; inset-block-start: calc(var(--dali-header-h) + 20px); }

	.dali-sec--proofs .dali-proofs, .dali-sec--table .dali-table-wrap, .dali-versus { max-width: 880px; margin-inline: auto; }
	.dali-sec--proofs .dali-h, .dali-sec--table .dali-h, .dali-sec--versus .dali-h,
	.dali-sec--ingredients .dali-h, .dali-sec--videos .dali-h, .dali-sec--certs .dali-h { text-align: center; }
	.dali-sec--table .dali-cta--inline, .dali-sec--timeline .dali-cta--inline { max-width: 460px; margin-inline: auto; }

	.dali-scroller { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); overflow: visible; margin-inline: 0; padding-inline: 0; }
	.dali-video, .dali-shot { width: auto; }
	.dali-shots { max-width: 760px; }

	.dali-versus { gap: 24px; }
	.dali-vs-card { padding: 24px; }
	.dali-vs-card__img img { aspect-ratio: 4 / 3; }
	.dali-vs-card__title { font-size: 18px; }
	.dali-vs-card ul { font-size: 15px; }
	.dali-vs-card li { padding-inline-start: 26px; }
	.dali-vs-mid { width: 48px; height: 48px; font-size: 15px; }

	.dali-cards { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
	.dali-card { grid-template-columns: 1fr; text-align: center; padding: 16px; }
	.dali-card__img img, .dali-card__img .dali-ph { width: 100%; height: auto; aspect-ratio: 1; }
	.dali-sec--ingredients .dali-chips { justify-content: center; }

	.dali-sec--certs .dali-lab { text-align: center; }
	.dali-certs { grid-template-columns: repeat(3, 200px); justify-content: center; gap: 20px; }

	.dali-score { max-width: 540px; }
	.dali-review-list { grid-template-columns: repeat(3, 1fr); gap: 16px; }

	.dali-split { grid-template-columns: 1.4fr 1fr; gap: 48px; align-items: center; }
	.dali-usage { gap: 16px; font-size: 14px; }

	.dali-feature { grid-template-columns: 1fr 1fr; gap: 56px; }
	.dali-feature.is-reversed .dali-feature__img { order: 2; }

	.dali-sec--order .dali-wrap > * { max-width: 560px; }

	.dali-footer { padding-block-end: 32px; }
	.dali-sticky { display: none; }
	.dali-wa { inset-block-end: 24px; }
}
