/**
 * Styles supporting assets/dayta-fx.js, plus the header and logo corrections.
 * Kept out of style.css so the effect layer can be reasoned about on its own.
 */

/* ------------------------------------------------------------------ header */

/*
 * The logo image is a 514×609 portrait file and the header widget has no size
 * control, so unconstrained it rendered at 150×178 and pushed the header to
 * 809px tall. Constraining the height fixes both the oversized logo and the
 * gap above the menu.
 */
.site-header .elementor-widget-ld_header_image img,
header .elementor-widget-ld_header_image img,
.lqd-head-sec .elementor-widget-ld_header_image img,
/* The mobile bar draws its logo through .navbar-brand, not the Elementor
   widget, so it kept rendering at full size and made a 222px-tall header. */
.lqd-mobile-sec .navbar-brand img,
.lqd-mobile-sec .logo-default img,
.navbar-brand-inner img {
	max-height: 46px;
	width: auto;
	height: auto;
}

@media (max-width: 767px) {
	.site-header .elementor-widget-ld_header_image img,
	header .elementor-widget-ld_header_image img,
	.lqd-mobile-sec .navbar-brand img,
	.lqd-mobile-sec .logo-default img,
	.navbar-brand-inner img {
		max-height: 38px;
	}
}

/* The footer mark is decorative and sits above small print. */
.main-footer .elementor-widget-ld_fancy_image img,
footer .elementor-widget-ld_fancy_image img {
	max-height: 54px;
	width: auto;
}

/* -------------------------------------------------------------------- zoom */

.dayta-zoom-host {
	position: relative;
	overflow: hidden;
	/* The photograph now lives on the layer, not the section. */
	background-image: none !important;
	perspective: 900px;
}

.dayta-zoom-layer {
	position: absolute;
	inset: -2%;
	z-index: 0;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	will-change: transform;
	pointer-events: none;
}

/* Keep the overlay and the content above the moving layer. */
.dayta-zoom-host > .elementor-background-overlay { z-index: 1; }
.dayta-zoom-host > .elementor-container,
.dayta-zoom-host > .elementor-column-gap-default { position: relative; z-index: 2; }

/* ------------------------------------------------------------------ lights */

.dayta-lights-host { position: relative; overflow: hidden; }

.dayta-lights-canvas {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	/* Sits over the darkening overlay so the colour actually reads. At 0.85
	   under the overlay it was invisible against the photograph. */
	mix-blend-mode: screen;
	opacity: 1;
}

.dayta-lights-host > .elementor-background-overlay { z-index: 0; }
.dayta-lights-host > .elementor-container { position: relative; z-index: 2; }

/* --------------------------------------------------------- frames crossfade */

/*
 * By default the outgoing frame slides its photograph away vertically and the
 * next one slides in behind it. The client wants the opposite reading: the old
 * photograph stays where it is, acting as the background, while the new one
 * arrives over the top and the old one fades out underneath.
 *
 * GSAP writes the slide-away transform inline every frame, so neutralising it
 * needs `!important` — that is the one place inline styles lose.
 */
.dayta-af-crossfade .lqd-af-slide { transition: opacity 0.85s ease; }

.dayta-af-crossfade .lqd-af-slide.lqd-af-slide--current { z-index: 2; }

/*
 * The outgoing frame keeps its `--current` class until the widget's timeline
 * ends, so it matches the rule above as well; without `!important` and the
 * doubled class the fade never wins.
 */
.dayta-af-crossfade .lqd-af-slide.lqd-af-slide--movin-out {
	z-index: 1 !important;
	opacity: 0 !important;
}

.dayta-af-crossfade .lqd-af-slide.lqd-af-slide--movin-out .lqd-af-slide__img,
.dayta-af-crossfade .lqd-af-slide.lqd-af-slide--movin-out .lqd-af-slide__img__inner {
	transform: none !important;
}

/* A slow drift on the outgoing photo keeps the change from feeling like a cut. */
.dayta-af-crossfade .lqd-af-slide.lqd-af-slide--movin-out .lqd-af-slide__img figure {
	transform: scale(1.06) !important;
	transition: transform 0.85s ease;
}

/* The arriving photograph comes up over it rather than out from under it. */
.dayta-af-crossfade .lqd-af--navigating .lqd-af-slide--current .lqd-af-slide__img,
.dayta-af-crossfade.lqd-af--navigating .lqd-af-slide--current .lqd-af-slide__img {
	transform: none !important;
}

/* ------------------------------------------------------- horizontal scroll */

.dayta-hscroll { overflow: hidden; padding: 0 !important; }

/* Until the script has measured the panels the row must not be a wide strip
   sitting in the page — without this the section renders four screens wide on
   first paint and the layout jumps when the pin takes over. */
.dayta-hscroll:not(.dayta-hscroll-ready) .elementor-inner-section > .elementor-container {
	overflow: hidden;
}

.dayta-hscroll .elementor-container,
.dayta-hscroll .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
	padding: 0;
}

.dayta-hscroll-track {
	display: flex !important;
	flex-wrap: nowrap !important;
	width: max-content !important;
	max-width: none !important;
	align-items: stretch;
	will-change: transform;
}

/*
 * The panel is one screen wide — but NOT `100vw`, which counts the scrollbar
 * and so overhangs the content box by its width, pushing the whole document
 * sideways. The script measures the section and writes the real number here.
 */
.dayta-hscroll-panel {
	flex: 0 0 var(--dayta-panel-w, 100%);
	width: var(--dayta-panel-w, 100%) !important;
	max-width: none !important;
	min-height: 100vh;
	position: relative;
	display: flex;
	overflow: hidden;
}

/*
 * `!important` because Elementor writes the column's own padding from the
 * panel with an id-scoped selector that outranks anything written here — the
 * inset silently computed to 0 and the headline sat against the screen edge.
 */
.dayta-hscroll-panel > .elementor-widget-wrap,
.dayta-hscroll-panel > .elementor-element-populated {
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 0 9vw 12vh !important;
}

/* The oversized word the reference leans on. Persian needs a ceiling Latin
   does not: joined letters at 20vw overrun the panel on a wide screen. */
.dayta-hscroll-panel .elementor-widget-hub_fancy_heading h2,
.dayta-hscroll-panel .elementor-widget-hub_fancy_heading h1 {
	font-size: clamp(38px, 7vw, 104px) !important;
	line-height: 1.1 !important;
	will-change: transform;
}

.dayta-hscroll-count {
	position: absolute;
	top: 14vh;
	inset-inline-start: 8vw;
	font-size: clamp(60px, 12vw, 190px);
	font-weight: 700;
	line-height: 1;
	color: rgba(255, 255, 255, 0.13);
	pointer-events: none;
	user-select: none;
}

/* A phone has no room for a pinned sideways track; the panels simply stack. */
@media (max-width: 767px) {
	.dayta-hscroll-track { display: block !important; width: 100% !important; }
	.dayta-hscroll-panel { width: 100% !important; max-width: 100% !important; min-height: 78vh; }
	.dayta-hscroll-panel > .elementor-widget-wrap { padding: 0 24px 48px; }
	.dayta-hscroll-count { font-size: 64px; top: 8vh; }
}

/* ---------------------------------------------------------------- bento */

/*
 * The bento grid from the reference: a row of cards where two of the four run
 * double width, so the block reads as an arrangement rather than a table.
 * The reference is Tailwind on a React tree; here the cards are ordinary
 * Elementor columns and the grid is declared once, on their container.
 */
/*
 * Scoped to the card row by its own class, not to "any inner section inside
 * the bento" — the cards themselves contain inner sections for their small
 * label/value rows, and a descendant selector turned each of those into a
 * grid too, so the section rendered twelve cards instead of four.
 */
.dayta-bento-grid > .elementor-container {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	align-items: stretch;
}

.dayta-bento-grid > .elementor-container > .elementor-column {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

/* Cards one and four span two columns; two and three stay square. */
.dayta-bento-grid > .elementor-container > .elementor-column:nth-child(1),
.dayta-bento-grid > .elementor-container > .elementor-column:nth-child(4) {
	grid-column: span 2;
}

.dayta-bento-grid > .elementor-container > .elementor-column > .elementor-element-populated {
	height: 100%;
	display: flex;
	flex-direction: column;
	/*
	 * Elementor's own `.elementor-widget-wrap` is `flex-wrap: wrap`. Turned on
	 * its side by `flex-direction: column` against a card whose height is fixed
	 * by `aspect-ratio`, that wraps the overflow into a SECOND column — and in
	 * RTL the second column lands to the left of the card, which is how the
	 * last stat row ended up outside it.
	 */
	flex-wrap: nowrap;
	justify-content: space-between;
	background: var(--dayta-bento-surface, #F1F3F6);
	border-radius: 14px;
	padding: 26px;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.dayta-bento-grid > .elementor-container > .elementor-column > .elementor-element-populated:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 34px rgba(20, 32, 42, 0.10);
}

/* The square cards want a square, but not at the cost of clipping their own
   text — `height: auto` lets a card that needs more room take it. */
.dayta-bento-grid > .elementor-container > .elementor-column:nth-child(2) > .elementor-element-populated,
.dayta-bento-grid > .elementor-container > .elementor-column:nth-child(3) > .elementor-element-populated {
	aspect-ratio: 1 / 1;
	height: auto;
}

/*
 * The label/value rows inside a card. Their widths are declared here rather
 * than left to Elementor's per-element CSS: every column carries
 * `elementor-col-100`, so if that generated stylesheet is missing for an id
 * the two columns each take the full width, the pair adds up to 200% and the
 * row leaves the card entirely.
 */
.dayta-stat { width: 100%; }

.dayta-stat > .elementor-container {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: baseline;
	gap: 10px;
}

.dayta-stat > .elementor-container > .elementor-column {
	width: auto !important;
	max-width: none !important;
	flex: 0 1 auto;
}

.dayta-stat > .elementor-container > .elementor-column:first-child { flex: 1 1 auto; min-width: 0; }

.dayta-stat > .elementor-container > .elementor-column > .elementor-element-populated {
	padding: 0 !important;
	background: none;
	box-shadow: none;
}

/* Icon at the top, words at the bottom — the whole point of the layout. */
.dayta-bento .elementor-widget-ld_icon_box { margin-bottom: 0 !important; }

.dayta-bento .dayta-bento-foot { margin-top: auto; }

/*
 * On a short screen the bento is what stops its section being one page.
 *
 * The square cards take their height from their WIDTH — `aspect-ratio: 1/1` in
 * a ~1140px three-column grid makes every row 371px, so two rows plus the
 * heading block plus the section padding come to 1206px. On a 1080px-tall
 * display that lands almost exactly on 100vh, which is what it was tuned
 * against; on a 780px laptop it is 155% and the section stops aligning to the
 * viewport the way its neighbours do.
 *
 * So the squares are kept wherever there is room for them, and only a screen
 * too short to hold them switches to height-driven rows. Gated on height, not
 * width, because height is the actual constraint.
 */
@media (min-width: 1025px) and (max-height: 900px) {
	/*
	 * The grid takes whatever the headings leave, and nothing here is told how
	 * much that is.
	 *
	 * Three earlier attempts all subtracted a constant — `100vh - 296px`, then
	 * 268px — and all of them missed, because the number is not a constant: the
	 * intro heading is one line at 1440px wide and three lines at 1180px, so
	 * the chrome moved from 268 to 352 without anything being edited. Measuring
	 * it once and hard-coding the answer only fixes the width it was measured
	 * at.
	 *
	 * So the column becomes a flex column and the grid takes `flex: 1`. The
	 * headings claim their natural height first, whatever the wrapping does,
	 * and the grid receives the remainder.
	 *
	 * A flex chain from the section down was tried here and does NOT work,
	 * which is worth writing down because it looks like it should.
	 *
	 * Every link stretched correctly — section, container, column and the
	 * populated wrapper all reported the same height — but the grid still sized
	 * its rows to 304px. The reason is at the top: the section's height is
	 * auto with `min-height: 100vh`, so flex distributes the space its CONTENT
	 * asks for, and the content is the grid. The grid asks for room, gets it,
	 * and the section grows to match. `1fr` then divides that larger box. The
	 * loop closes on itself and 100vh never enters the arithmetic.
	 *
	 * Sizing from the viewport instead breaks the loop: the rows read 100vh
	 * directly and the section follows them, rather than the other way round.
	 */
	.dayta-bento-grid > .elementor-container {
		/*
		 * The floor is a number rather than `min-content` on purpose.
		 * `min-content` measured these rows at 304px against 182px of actual
		 * copy: in the block axis the browser resolves it with the item at its
		 * minimum WIDTH, so every line of Persian wraps far more than it does
		 * at the real column width, and the floor came out taller than the room
		 * it was meant to fit in. 224px is the tallest card's content plus its
		 * padding, with headroom for one more line. Below that the section
		 * grows past 100vh, which is the right answer — a section that cuts
		 * text off is worse than a section that is tall.
		 *
		 * 268px is the chrome above and below the grid: 80px section padding,
		 * 20px column padding, and the heading block. The 9px is half the row
		 * gap. It is a measured number and it does drift with the wrapping of
		 * the intro heading, so the rule below pins that heading to one line —
		 * without it the constant is wrong at every width but the one it was
		 * taken at.
		 */
		grid-auto-rows: clamp(224px, calc((100vh - 294px) / 2 - 9px), 320px);
	}

	/*
	 * The heading block is the other half of the budget, so its gaps tighten
	 * here. Pinning the intro to one line with `nowrap` + `ellipsis` was tried
	 * and taken back out: it would hold the constant steady, but at a narrower
	 * width it hides the client's own words behind a "…" with nothing to say
	 * it happened. A section that runs 11% long is a smaller problem than copy
	 * that silently disappears.
	 */
	.dayta-bento > .elementor-container > .elementor-column > .elementor-element-populated > .elementor-widget {
		margin-bottom: 6px !important;
	}

	/*
	 * Heading type steps down on a short screen only — the full size is intact
	 * on anything 900px or taller. This is the 84px the section was over by:
	 * the clamp below now assumes 294px of chrome and gets it.
	 */
	.dayta-bento > .elementor-container > .elementor-column > .elementor-element-populated > .elementor-widget h2 {
		font-size: 34px;
		line-height: 1.15;
	}

	.dayta-bento > .elementor-container > .elementor-column > .elementor-element-populated > .elementor-widget p {
		font-size: 16px;
		line-height: 1.6;
	}

	.dayta-bento-grid > .elementor-container > .elementor-column:nth-child(2) > .elementor-element-populated,
	.dayta-bento-grid > .elementor-container > .elementor-column:nth-child(3) > .elementor-element-populated {
		aspect-ratio: auto;
	}

	.dayta-bento-grid > .elementor-container > .elementor-column > .elementor-element-populated {
		padding: 16px 22px;
	}

	/* The heading block above the grid gives back the rest. */
	.dayta-bento > .elementor-container > .elementor-column > .elementor-element-populated > .elementor-widget {
		margin-bottom: 12px !important;
	}
}

@media (max-width: 1024px) {
	.dayta-bento-grid > .elementor-container { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.dayta-bento-grid > .elementor-container > .elementor-column:nth-child(1),
	.dayta-bento-grid > .elementor-container > .elementor-column:nth-child(4) { grid-column: span 2; }
}

@media (max-width: 767px) {
	.dayta-bento-grid > .elementor-container { grid-template-columns: 1fr; }
	.dayta-bento-grid > .elementor-container > .elementor-column:nth-child(n) { grid-column: span 1; }
	.dayta-bento-grid > .elementor-container > .elementor-column > .elementor-element-populated { aspect-ratio: auto; }
}

/* ------------------------------------------------------------------ rotate */

/*
 * Eight small marks in one thin row, each tumbling on its own axis, read as
 * noise. Give them room: real tiles with a card behind them, four to a row on
 * a desktop and two on a phone, so each logo has a surface that can turn.
 */
.dayta-rotate .elementor-widget-ld_fancy_image {
	will-change: transform;
	transform-style: preserve-3d;
	background: #FFFFFF;
	border: 1px solid rgba(28, 28, 30, 0.08);
	border-radius: 14px;
	padding: 26px 18px;
	margin: 10px 0;
	box-shadow: 0 8px 24px rgba(20, 32, 42, 0.06);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 104px;
}

.dayta-rotate .elementor-widget-ld_fancy_image img {
	max-height: 46px;
	width: auto;
}

.dayta-rotate .elementor-inner-section > .elementor-container {
	perspective: 1400px;
	flex-wrap: wrap;
	row-gap: 6px;
}

.dayta-rotate .elementor-inner-section .elementor-column {
	width: 25%;
	padding-inline: 8px;
}

@media (max-width: 1024px) {
	.dayta-rotate .elementor-inner-section .elementor-column { width: 33.333%; }
}

@media (max-width: 767px) {
	.dayta-rotate .elementor-inner-section .elementor-column { width: 50%; }
	.dayta-rotate .elementor-widget-ld_fancy_image { min-height: 84px; padding: 18px 12px; }
}

.dayta-rotate-names {
	width: 100%;
	overflow: hidden;
	margin-top: 26px;
	pointer-events: none;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
	        mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
}

.dayta-rotate-names__inner {
	display: inline-block;
	white-space: nowrap;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.4px;
	/* #5A5A5F on white measures 7:1 — safe at this size. */
	color: #5A5A5F;
	will-change: transform;
}

/* ----------------------------------------------------------- icon side */

/*
 * On a right-to-left page the icon belongs on the RIGHT of the words, which is
 * where the reading starts. `ld_icon_box` in side layout puts it on the left
 * unless told otherwise, so it is corrected once here for every screen rather
 * than per widget.
 */
.rtl .elementor-widget-ld_icon_box .iconbox,
.rtl .elementor-widget-ld_icon_box .lqd-iconbox,
.rtl .elementor-widget-ld_icon_box .iconbox-side,
.rtl .elementor-widget-ld_icon_box [class*="iconbox"][class*="side"] {
	flex-direction: row !important;
	text-align: right;
}

.rtl .elementor-widget-ld_icon_box .iconbox-icon-container,
.rtl .elementor-widget-ld_icon_box .lqd-iconbox-icon,
.rtl .elementor-widget-ld_icon_box [class*="icon-container"] {
	margin-inline-end: 18px;
	margin-inline-start: 0;
	order: -1;
	flex: 0 0 auto;
}

/* An icon whose glyph never loaded still holds its circle open; a box with no
   icon at all should not leave a gap where one would have been. */
.elementor-widget-ld_icon_box [class*="icon-container"]:empty { display: none; }

/* -------------------------------------------------------------- marquee */

.dayta-marquee { overflow: hidden; }

.dayta-marquee .elementor-inner-section > .elementor-container {
	display: flex !important;
	flex-wrap: nowrap !important;
	width: max-content !important;
	max-width: none !important;
	align-items: center;
	will-change: transform;
	/* See the note in marquee(): forcing LTR here is what makes "negative x"
	   reliably mean "travels right to left" on an RTL page. */
	direction: ltr;
}

.dayta-marquee .elementor-inner-section > .elementor-container > .elementor-column {
	width: auto !important;
	max-width: none !important;
	flex: 0 0 auto;
	padding-inline: 30px;
}

.dayta-marquee .elementor-widget-ld_fancy_image img {
	max-height: 52px;
	width: auto;
}

/* The strip fades at both ends rather than being cut off by the section edge. */
.dayta-marquee-ready {
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
	        mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

/* ----------------------------------------------------------------- tone */

/*
 * A section that warms from dark to light as it passes. The script drives one
 * number, `--dayta-tone`, from 0 to 1; everything visible is mixed from it, so
 * the surface and the text move together and never cross in the middle.
 */
/*
 * It is the OVERLAY that warms, not the section. Fading the overlay out
 * instead would uncover the photograph at full strength — brighter, but not
 * lighter, and the text would be sitting on raw picture. The script mixes both
 * colours and writes them here; a plain `var()` substitution is all this needs,
 * and unlike `color-mix()` it tracks every change.
 */
.dayta-tone-ready { --dayta-ink: #FFFFFF; }

.dayta-tone-ready > .elementor-background-overlay { opacity: 1 !important; }

.dayta-tone-ready .ld-fh-element,
.dayta-tone-ready h1, .dayta-tone-ready h2, .dayta-tone-ready h3,
.dayta-tone-ready h4, .dayta-tone-ready h5, .dayta-tone-ready h6, .dayta-tone-ready p {
	color: var(--dayta-ink) !important;
}

/* The button keeps its own fill; only its label follows the surface. */
.dayta-tone-ready .elementor-button.btn-naked { color: var(--dayta-ink) !important; }

/* ------------------------------------------------------ category lists */

/*
 * The catalogue accordion: 58 categories under eight brands. Inside a panel
 * they run as a multi-column list so a brand with a dozen entries stays one
 * glance rather than one scroll.
 */
/* Two columns inside the panel now, not three — the accordion sits in the
   narrower half of a split layout. */
.dayta-cats .dayta-cat-list {
	list-style: none;
	margin: 0;
	padding: 0;
	columns: 2;
	column-gap: 26px;
	text-align: right;
}

.dayta-cats .dayta-cat-list li {
	break-inside: avoid;
	padding: 7px 0;
	border-bottom: 1px solid rgba(28, 28, 30, 0.07);
}

.dayta-cats .dayta-cat-list a {
	color: #3A3A3E;
	font-size: 15px;
	text-decoration: none;
	display: block;
	transition: color 0.18s ease, transform 0.18s ease;
}

.dayta-cats .dayta-cat-list a:hover,
.dayta-cats .dayta-cat-list a:focus-visible {
	/* #8A6200 on #F7F8FA measures 5.2:1 — the bright brand gold does not. */
	color: #8A6200;
	transform: translateX(-4px);
}

.dayta-cats .accordion-title,
.dayta-cats [class*="accordion"] h3 { text-align: right; }

@media (max-width: 1024px) { .dayta-cats .dayta-cat-list { columns: 2; } }
@media (max-width: 767px)  { .dayta-cats .dayta-cat-list { columns: 1; } }

/* --------------------------------------------------------- brand tabs */

/*
 * The client's own `ld_tabs` element (style 13, vertical nav) carrying the
 * eight-brand catalogue.
 *
 * The brand logos that used to sit on each tab edge were REMOVED at the
 * client's request, 2026-08-14. They were painted here as `::before`
 * background images because the widget gives no way to put a PNG on a tab —
 * its icon control is `Controls_Manager::ICONS` (Font Awesome name or SVG
 * only) and the title runs through `wp_kses_data()`, which strips `<img>`
 * silently. Painting them in CSS worked, but it put them outside the Elementor
 * panel, so the client could not change them where they change everything
 * else. That is the reason they are gone, and the reason not to reinstate
 * them the same way: the logos belong in an element with its own controls.
 *
 * What remains here is layout and colour for the nav and the panels only.
 */
/*
 * The nav is a column of eight and the panel beside it is one short list, so
 * the two never match in height. The panel is centred against the column
 * rather than pinned to its top, which is what left ~660px of white under it.
 */
.dayta-brand-tabs .lqd-tabs-content {
	align-self: center;
}

.dayta-brand-tabs .lqd-tabs-nav > li > a {
	display: flex;
	align-items: center;
	padding: 9px 12px;
	border-radius: 10px;
	transition: background-color 0.18s ease;
	/* The name and the count are siblings in this flex box, not nested blocks,
	   so the count reaches its own row by wrapping — see `.lqd-tabs-nav-ext`. */
	flex-wrap: wrap;
	/* Wrapped rows stack from the top instead of sharing out any spare height,
	   which is what kept the eight tabs at different heights. */
	align-content: flex-start;
}

.dayta-brand-tabs .lqd-tabs-nav > li.active > a,
.dayta-brand-tabs .lqd-tabs-nav > li > a:hover {
	background-color: rgba(249, 180, 0, 0.09);
}

.dayta-brand-tabs .lqd-tabs-nav .lqd-tabs-nav-txt {
	font-size: 15px;
	font-weight: 600;
	color: #2C2C2E;
	line-height: 1.4;
	/* Takes the rest of the row so the name stays on one line. Left to share
	   the row with the count it was squeezed to 76px and wrapped to three. */
	flex: 1 1 auto;
	min-width: 0;
}

/*
 * The count goes on its own row under the name. `flex: 1 0 100%` is what
 * breaks the row — the anchor is a flex box and these two spans are siblings
 * inside it, not a nested block.
 *
 * `display: block !important` because the widget shows this only on the ACTIVE
 * tab, which made that one tab 89px tall against 56px for the other seven. The
 * count is on every tab, so every tab is the same height.
 */
.dayta-brand-tabs .lqd-tabs-nav .lqd-tabs-nav-ext {
	display: block !important;
	flex: 1 0 100%;
	margin-top: 1px;
	font-size: 12px;
	font-weight: 400;
	color: #6B6B70;
	opacity: 1;
}

/* The tab panels reuse the catalogue list the accordion already styles. */
.dayta-brand-tabs .dayta-cat-list {
	list-style: none;
	margin: 0;
	padding: 0;
	columns: 2;
	column-gap: 26px;
	text-align: right;
}

.dayta-brand-tabs .dayta-cat-list li {
	break-inside: avoid;
	padding: 7px 0;
	border-bottom: 1px solid rgba(28, 28, 30, 0.07);
}

.dayta-brand-tabs .dayta-cat-list a {
	color: #3A3A3E;
	font-size: 15px;
	text-decoration: none;
	display: block;
	transition: color 0.18s ease, transform 0.18s ease;
}

.dayta-brand-tabs .dayta-cat-list a:hover,
.dayta-brand-tabs .dayta-cat-list a:focus-visible {
	color: #8A6200;
	transform: translateX(-4px);
}

@media (max-width: 1024px) {
	.dayta-brand-tabs .dayta-cat-list { columns: 2; }
}

@media (max-width: 767px) {
	.dayta-brand-tabs .dayta-cat-list { columns: 1; }
}

/* --------------------------------------------------------- brand card */

/*
 * One saved section template per brand, under Templates -> Saved Templates.
 *
 * The section is built entirely from core Elementor widgets — image, heading,
 * text-editor, button, icon-list — so every word, link, colour and size opens
 * in the panel. What lives here is only what the panel has no control for: the
 * category list arranged as a grid of cells instead of a stacked list, and the
 * chrome on those cells. Deliberately nothing about the card frame itself —
 * its background, border, radius and padding are section controls, so the
 * client changes them where they change everything else.
 *
 * Height budget: the card has to fit a phone screen. Header row ~96px, section
 * padding 34px, and two columns of ~40px rows puts the longest catalogue
 * (ROCKER, twelve) around 400px on a 375x667 screen.
 */

.dayta-brand-card__logo img {
	/* The marks are 500x309 and of mixed weight; a height cap is what makes
	   eight different logos sit at the same optical size. */
	max-height: 64px;
	width: auto;
	object-fit: contain;
}

.dayta-cat-grid .elementor-icon-list-items {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

/* The widget's own `space_between` control writes a bottom margin on each
   item. The grid `gap` owns spacing here — it has to, since that control sets
   the vertical value only and a grid needs both — so the margin is cleared. */
.dayta-cat-grid .elementor-icon-list-item {
	margin: 0 !important;
	/* Flex so the cell inside can stretch. Grid stretches the <li>, but the
	   <a> is what carries the border and background, and left to itself it
	   sits at its own height — so next to a name that wraps to two lines its
	   row-mate ends up visibly shorter. */
	display: flex;
}

.dayta-cat-grid .elementor-icon-list-item > a,
.dayta-cat-grid .elementor-icon-list-item > span {
	display: flex;
	align-items: center;
	flex: 1 1 auto;
	/* A floor, not a fixed height: the longer Persian names wrap to two lines
	   and the cell has to grow rather than clip them. */
	min-height: 38px;
	padding: 6px 10px;
	border: 1px solid rgba(28, 28, 30, 0.08);
	border-radius: 9px;
	background-color: #FAFAFA;
	transition: background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.dayta-cat-grid .elementor-icon-list-item > a:hover,
.dayta-cat-grid .elementor-icon-list-item > a:focus-visible {
	background-color: rgba(249, 180, 0, 0.10);
	border-color: rgba(249, 180, 0, 0.45);
	transform: translateY(-1px);
}

.dayta-cat-grid .elementor-icon-list-text {
	line-height: 1.45;
}

/* The chevron must not be squeezed by a name that wraps. */
.dayta-cat-grid .elementor-icon-list-icon {
	flex: 0 0 auto;
}

@media (max-width: 1024px) {
	.dayta-cat-grid .elementor-icon-list-items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.dayta-cat-grid .elementor-icon-list-items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 6px;
	}
	.dayta-cat-grid .elementor-icon-list-item > a,
	.dayta-cat-grid .elementor-icon-list-item > span {
		min-height: 34px;
		padding: 5px 8px;
	}
	.dayta-brand-card__logo img {
		max-height: 46px;
	}
}

/* ----------------------------------------------------------------- stack */

/*
 * A pinned section must cover the viewport for the whole time it is pinned.
 * This one came out 751px tall against a 780px window, and the 29px shortfall
 * at the bottom was a letterbox the NEXT section scrolled up through — the
 * "content moves behind it" report, on every page using this layout.
 *
 * `min-height` rather than `height` so a long panel can still grow.
 */
.dayta-stack {
	min-height: 100vh;
	display: flex;
	align-items: center;
	/* The section paints its own ground; without this the page shows through
	   wherever the content does not reach. */
	background-color: #FFFFFF;
}

.dayta-stack > .elementor-container { width: 100%; }

.dayta-stack-ready .dayta-stack-frame {
	position: relative;
	min-height: 68vh;
}

/*
 * Every shot occupies the same box; only opacity separates them. The first one
 * keeps its place in flow so the frame has a height to be — the rest are lifted
 * out and laid over it.
 */
.dayta-stack-ready .dayta-stack-shot {
	position: absolute;
	inset: 0;
	margin: 0 !important;
	will-change: opacity, transform;
}

.dayta-stack-ready .dayta-stack-shot:first-child { position: relative; }

.dayta-stack-ready .dayta-stack-shot img {
	width: 100%;
	height: 68vh;
	object-fit: cover;
	border-radius: 16px;
}

.dayta-stack-count {
	position: absolute;
	inset-inline-end: 18px;
	bottom: 16px;
	z-index: 3;
	padding: 6px 14px;
	border-radius: 999px;
	background: rgba(20, 24, 30, 0.72);
	color: #FFFFFF;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.5px;
	pointer-events: none;
}

/* The words beside the pictures hold still while the section is pinned. */
.dayta-stack-ready .elementor-inner-section > .elementor-container > .elementor-column:first-child {
	align-self: center;
}

@media (max-width: 767px) {
	/* No pin on a phone, so the shots go back to being a plain list. */
	.dayta-stack-ready .dayta-stack-shot { position: relative !important; margin-bottom: 14px !important; }
	.dayta-stack-ready .dayta-stack-shot img { height: 46vh; }
	.dayta-stack-ready .dayta-stack-frame { min-height: 0; }
	.dayta-stack-count { display: none; }
	/* No pin on a phone, so no viewport to cover. */
	.dayta-stack { min-height: 0; display: block; }
}

/* ------------------------------------------------------------------- flip */

/*
 * Cards that turn over on hover, after the "global experts" row on
 * company.liquid-themes. The two faces are built by the script from widgets the
 * builder tagged, so both stay ordinary Elementor widgets in the panel.
 */
.dayta-flip .elementor-inner-section > .elementor-container {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 20px;
	perspective: 1600px;
}

.dayta-flip .elementor-inner-section > .elementor-container > .elementor-column {
	width: 100% !important;
	max-width: 100% !important;
	outline: none;
}

.dayta-flip-card > .elementor-element-populated {
	padding: 0 !important;
	background: none;
}

.dayta-flip-inner {
	position: relative;
	transform-style: preserve-3d;
	transition: transform 0.7s cubic-bezier(0.2, 0.8, 0.2, 1);
	min-height: 330px;
}

.dayta-flip-card:hover .dayta-flip-inner,
.dayta-flip-card.is-flipped .dayta-flip-inner {
	transform: rotateY(180deg);
}

.dayta-flip-face {
	position: absolute;
	inset: 0;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	border-radius: 16px;
	padding: 26px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	overflow: hidden;
}

/* The front holds the photograph, so it carries no ground of its own. */
.dayta-flip-front {
	background: #14202A;
	border: 1px solid rgba(28, 28, 30, 0.08);
}

/*
 * Every wrapper between the widget and the <img> has to fill, not just the two
 * ends. `ld_fancy_image` nests the image four deep, and one of those wrappers
 * is `display: inline-flex`; making only the img absolute took it out of flow,
 * collapsed that wrapper to 0x0, and since it is also the img's positioned
 * ancestor the photograph rendered at zero size — a card that looked like it
 * had no picture at all.
 */
.dayta-flip-front .elementor-widget-ld_fancy_image {
	position: absolute;
	inset: 0;
	margin: 0 !important;
	z-index: 0;
}

.dayta-flip-front .elementor-widget-ld_fancy_image .elementor-widget-container,
.dayta-flip-front .elementor-widget-ld_fancy_image .lqd-imggrp-single,
.dayta-flip-front .elementor-widget-ld_fancy_image .lqd-imggrp-img-container,
.dayta-flip-front .elementor-widget-ld_fancy_image .lqd-imggrp-img-container > * {
	display: block;
	width: 100%;
	height: 100%;
}

.dayta-flip-front .elementor-widget-ld_fancy_image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	margin: 0 !important;
}

/* A veil, or white type on a light photograph disappears. */
.dayta-flip-front::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(to top, rgba(10, 18, 26, 0.92) 0%, rgba(10, 18, 26, 0.45) 45%, rgba(10, 18, 26, 0.15) 100%);
}

.dayta-flip-front > .elementor-widget:not(.elementor-widget-ld_fancy_image) {
	position: relative;
	z-index: 2;
}

.dayta-flip-back {
	transform: rotateY(180deg);
	background: var(--dayta-flip-back, #14202A);
	justify-content: center;
	text-align: right;
}

/*
 * The back face takes the unit's accent, in the DARK variant of it. The bright
 * brand colours are decoration; white text on the bright gold measures 1.8:1,
 * on the darkened one 5.9:1. One line per unit, added as a unit gets cards.
 */
.dayta-flip-gold  { --dayta-flip-back: #8A6200; }   /* تجهیزات آزمایشگاهی */
.dayta-flip-blue  { --dayta-flip-back: #154778; }   /* عمرانی */
.dayta-flip-teal  { --dayta-flip-back: #0A6B7C; }   /* خدمات آزمایشگاهی */
.dayta-flip-green { --dayta-flip-back: #2F6425; }   /* مشاوره */
.dayta-flip-plum  { --dayta-flip-back: #5A2C7D; }   /* تامین کالا */

.dayta-flip-back .elementor-widget { position: relative; z-index: 2; }

/* Reduced motion gets both faces, stacked, with no rotation at all. */
@media (prefers-reduced-motion: reduce) {
	.dayta-flip-inner { transition: none; }
	.dayta-flip-card:hover .dayta-flip-inner,
	.dayta-flip-card.is-flipped .dayta-flip-inner { transform: none; }
	.dayta-flip-back { position: relative; transform: none; margin-top: 10px; }
	.dayta-flip-face { position: relative; backface-visibility: visible; }
	.dayta-flip-inner { min-height: 0; }
}

/* ---------------------------------------------------------------- magnetic */

.dayta-magnetic { display: inline-block; }
.dayta-magnetic a,
.dayta-magnetic button { will-change: transform; }

/* ----------------------------------------------------------------- curtain */

/*
 * The icon rides inside `.lqd-curtain-item-title-inner`, which is a flex row.
 * On a collapsed spine that reads correctly — icon then title. When the panel
 * opens, the client wants the icon to sit above the heading instead, so the
 * open panel's title switches to a column.
 */
/*
 * The panels were set to align to the bottom of the row. The moment one opens
 * the others change height, and anything shorter than the row leaves a band of
 * the section's own background above it — the 10-20px of white that appeared
 * on clicking. Stretching them leaves no spare room to show through, whichever
 * panel is open.
 */
.lqd-curtain {
	align-items: stretch !important;
	overflow: hidden;
}

.lqd-curtain-item { height: auto !important; }

.lqd-curtain-item-title-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	margin-inline-end: 10px;
}

.lqd-curtain-item-title-icon svg,
.lqd-curtain-item-title-icon i {
	width: 22px;
	height: 22px;
	fill: currentColor;
}

.lqd-curtain-item-active .lqd-curtain-item-title-inner {
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
}

.lqd-curtain-item-active .lqd-curtain-item-title-icon {
	margin-inline-end: 0;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.14);
}

.lqd-curtain-item-active .lqd-curtain-item-title-icon svg,
.lqd-curtain-item-active .lqd-curtain-item-title-icon i {
	width: 26px;
	height: 26px;
}

/* ----------------------------------------------------- animated wave divider */

/*
 * The seam between the hero and the section under it, as a slow-moving wave.
 *
 * Elementor's own shape dividers are static, and they cannot be animated in
 * place: each one is a single SVG sized to exactly the section width, so
 * sliding it sideways drags an empty edge into view. These paths are periodic
 * instead — the curve leaves x=0 and arrives at the far edge at the same
 * height with the same slope — so a tile can repeat and drift forever with no
 * seam. Two layers at different speeds and depths give the parallax; the third
 * is a flat band that hides the joint underneath them.
 *
 * `--dayta-wave-ink` is the colour of the section ABOVE, since the wave is
 * that section spilling down into this one.
 */
.dayta-wave {
	position: relative;
	--dayta-wave-ink: #0E1826;
	--dayta-wave-h: 90px;
}

.dayta-wave > .dayta-wave-layer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: var(--dayta-wave-h);
	pointer-events: none;
	z-index: 2;
	overflow: hidden;
}

.dayta-wave > .dayta-wave-layer > i {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 300%;
	height: 100%;
	background-repeat: repeat-x;
	background-position: 0 0;
	background-size: 33.3333% 100%;
	will-change: transform;
}

/*
 * The tile: one full period of a wave, 1200 wide, filled below the curve.
 * `preserveAspectRatio="none"` lets it stretch to whatever height the section
 * asks for without changing the period.
 */
.dayta-wave > .dayta-wave-layer > i.dayta-wave-back {
	background-image: url( 'data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M0,64 C300,4 300,124 600,64 C900,4 900,124 1200,64 V120 H0 Z" fill="%230E1826" fill-opacity="0.45"/></svg>' );
	animation: dayta-wave-drift 26s linear infinite;
	opacity: 0.9;
}

.dayta-wave > .dayta-wave-layer > i.dayta-wave-front {
	background-image: url( 'data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M0,72 C300,18 300,126 600,72 C900,18 900,126 1200,72 V120 H0 Z" fill="%230E1826"/></svg>' );
	animation: dayta-wave-drift 16s linear infinite reverse;
}

/* The band above the crests, so the seam itself never shows through. */
.dayta-wave > .dayta-wave-layer::before {
	content: '';
	position: absolute;
	top: -1px;
	left: 0;
	width: 100%;
	height: 34%;
	background: var(--dayta-wave-ink);
}

/* One tile of travel per cycle — the period, so the loop is invisible. */
@keyframes dayta-wave-drift {
	from { transform: translateX( 0 ); }
	to   { transform: translateX( -33.3333% ); }
}

/* The section's own content has to clear the wave. */
.dayta-wave > .elementor-container {
	position: relative;
	z-index: 3;
}

@media (max-width: 767px) {
	.dayta-wave { --dayta-wave-h: 54px; }
}

/* ---------------------------------------------------------- animated ground */

/*
 * A slow drifting wash for a section that is otherwise a flat panel.
 *
 * Three soft blobs on long, mutually prime durations, so the pattern does not
 * visibly repeat. Built from radial gradients on one pseudo-element rather
 * than a canvas: it costs nothing, it composites on the GPU, and there is no
 * second thing to keep in step with the scroll. The blobs stay far under the
 * text — the section is read, not looked at — so the tint tops out around 12%.
 *
 * `--dayta-ground` is the accent; each unit sets its own.
 */
.dayta-ground {
	position: relative;
	overflow: hidden;
	--dayta-ground: #12A0B8;
	--dayta-ground-2: #4E9F3D;
}

.dayta-ground::before {
	content: '';
	position: absolute;
	inset: -20%;
	z-index: 0;
	pointer-events: none;
	background-image:
		radial-gradient( circle at 22% 30%, color-mix( in srgb, var(--dayta-ground) 12%, transparent ) 0, transparent 42% ),
		radial-gradient( circle at 78% 22%, color-mix( in srgb, var(--dayta-ground-2) 10%, transparent ) 0, transparent 38% ),
		radial-gradient( circle at 58% 82%, color-mix( in srgb, var(--dayta-ground) 9%, transparent ) 0, transparent 46% );
	animation: dayta-ground-drift 34s ease-in-out infinite alternate;
	will-change: transform;
}

/*
 * Older engines without color-mix() get the same shapes at a fixed tint rather
 * than no shapes at all — the fallback has to come first so a supporting
 * engine overrides it.
 */
@supports not ( background: color-mix( in srgb, red 10%, transparent ) ) {
	.dayta-ground::before {
		background-image:
			radial-gradient( circle at 22% 30%, rgba( 18, 160, 184, 0.12 ) 0, transparent 42% ),
			radial-gradient( circle at 78% 22%, rgba( 78, 159, 61, 0.10 ) 0, transparent 38% ),
			radial-gradient( circle at 58% 82%, rgba( 18, 160, 184, 0.09 ) 0, transparent 46% );
	}
}

@keyframes dayta-ground-drift {
	from { transform: translate3d( 0, 0, 0 ) scale( 1 ); }
	to   { transform: translate3d( -4%, 3%, 0 ) scale( 1.12 ); }
}

/* The section's own content rides above the wash. */
.dayta-ground > .elementor-container {
	position: relative;
	z-index: 1;
}

/* ------------------------------------------------------------------ gauge */

/*
 * A graduated scale creeping past, for the section that lists what the lab
 * measures.
 *
 * Deliberately not `dayta-ground` again — that section is two screens above
 * this one on the same page, and the same drifting blobs twice reads as a
 * background that failed to change rather than a second idea. This one has the
 * character of the subject: a fine tick scale, like the edge of an instrument,
 * with one slow pass of light across it.
 *
 * Two pseudo-elements, no canvas and no script. Gradients composite on the GPU
 * and there is nothing to keep in step with the scroll.
 */
.dayta-gauge {
	position: relative;
	overflow: hidden;
	--dayta-gauge: #12A0B8;
}

/*
 * The scale. Minor ticks every 16px, a major one every 96px, plus a faint
 * horizontal rule every 48px so it reads as ruled paper rather than a fence.
 * It travels one full major division and repeats — the loop is invisible
 * because the pattern at the end is the pattern at the start.
 */
.dayta-gauge::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	/*
	 * Alphas set against the section's own #F7F8FA, not guessed: at the first
	 * values the scale was invisible on screen, and the widest part of this
	 * section is empty by design — the parameter chips settle at the bottom —
	 * so the background is what the middle of it actually shows.
	 */
	background-image:
		repeating-linear-gradient( to right,
			rgba( 18, 160, 184, 0.22 ) 0 1px, transparent 1px 96px ),
		repeating-linear-gradient( to right,
			rgba( 18, 160, 184, 0.10 ) 0 1px, transparent 1px 16px ),
		repeating-linear-gradient( to bottom,
			rgba( 18, 160, 184, 0.07 ) 0 1px, transparent 1px 48px );
	background-size: 96px 34px, 16px 14px, 100% 48px;
	background-position: 0 0, 0 0, 0 0;
	background-repeat: repeat-x, repeat-x, repeat;
	animation: dayta-gauge-slide 26s linear infinite;
	will-change: background-position;
}

/*
 * The pass of light. Wide and weak — at 6% it is felt rather than seen, which
 * is the point: the section is a list to be read, and a bright sweep across a
 * wall of parameter names is a distraction, not decoration.
 */
.dayta-gauge::after {
	content: '';
	position: absolute;
	inset: -10% -40%;
	z-index: 0;
	pointer-events: none;
	background-image: linear-gradient( 100deg,
		transparent 0%,
		rgba( 18, 160, 184, 0.08 ) 45%,
		rgba( 92, 202, 221, 0.13 ) 50%,
		rgba( 18, 160, 184, 0.08 ) 55%,
		transparent 100% );
	animation: dayta-gauge-sweep 19s ease-in-out infinite alternate;
	will-change: transform;
}

@keyframes dayta-gauge-slide {
	from { background-position: 0 0, 0 0, 0 0; }
	to   { background-position: 96px 0, 96px 0, 0 0; }
}

@keyframes dayta-gauge-sweep {
	from { transform: translate3d( -18%, 0, 0 ); }
	to   { transform: translate3d( 18%, 0, 0 ); }
}

.dayta-gauge > .elementor-container {
	position: relative;
	z-index: 1;
}

/* -------------------------------------------------------------- footer reveal */

/*
 * The footer sits still while the page slides up off it.
 *
 * `position: sticky; bottom: 0` rather than `fixed`: a fixed footer leaves the
 * flow, which collapses the page by its own height and then has to be paid
 * back with a margin measured in script and re-measured on every resize.
 * Sticky keeps the footer in flow — the document height never changes — and
 * the browser holds it against the bottom of the viewport for as long as its
 * natural position is below the fold. The content above simply covers it until
 * there is no content left.
 *
 * This needs every section over the footer to be opaque. They are, but `main`
 * carries a background of its own as a backstop: one translucent section would
 * otherwise show the footer through the middle of the page.
 */
.dayta-foot-reveal #footer,
.dayta-foot-reveal .main-footer {
	position: sticky;
	bottom: 0;
	z-index: 0;
}

.dayta-foot-reveal #lqd-site-content {
	position: relative;
	z-index: 1;
	background-color: #FFFFFF;
}

/*
 * Phones scroll with a compositor that treats a sticky footer as a repaint on
 * every frame, and the page above it is already doing parallax work. The
 * footer goes back to being an ordinary block there.
 */
@media (max-width: 767px) {
	.dayta-foot-reveal #footer,
	.dayta-foot-reveal .main-footer {
		position: static;
	}
}

@media (prefers-reduced-motion: reduce) {
	.dayta-zoom-layer,
	.dayta-rotate .elementor-widget-ld_fancy_image { transform: none !important; }
	.dayta-lights-canvas { display: none; }

	/* All of these keep their shape and simply stop moving. */
	.dayta-wave > .dayta-wave-layer > i { animation: none; }
	.dayta-ground::before { animation: none; }
	.dayta-gauge::before,
	.dayta-gauge::after { animation: none; }

	/* The reveal is motion the reader did not ask for; drop it to a plain footer. */
	.dayta-foot-reveal #footer,
	.dayta-foot-reveal .main-footer { position: static; }
}

.wp-admin .redux-sidebar {
	font-family: Vazir !important;
}