/* damavand-sf-design */
/*
 * Damavand Storefront 0.2.0 (T62) — site design: dark premium industrial theme, RTL.
 * Palette (Founder mockup): #0B0B0D bg · #1F2226 surfaces · #2E3238 borders · #C89B6B bronze · #E8E8EA text.
 * Loaded only when damavand_sf_design_enabled(); everything is scoped to body.dmv-design.
 */

/* ---------- Fonts: Vazirmatn (SIL OFL 1.1, Farsi-digits build), bundled — no CDN ---------- */
@font-face { font-family: "Vazirmatn FD"; src: url("https://damavandsteel.com/wp-content/plugins/damavand-storefront/assets/css/../fonts/Vazirmatn-FD-Regular.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Vazirmatn FD"; src: url("https://damavandsteel.com/wp-content/plugins/damavand-storefront/assets/css/../fonts/Vazirmatn-FD-Medium.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "Vazirmatn FD"; src: url("https://damavandsteel.com/wp-content/plugins/damavand-storefront/assets/css/../fonts/Vazirmatn-FD-Bold.woff2") format("woff2"); font-weight: 600 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Vazirmatn FD"; src: url("https://damavandsteel.com/wp-content/plugins/damavand-storefront/assets/css/../fonts/Vazirmatn-FD-ExtraBold.woff2") format("woff2"); font-weight: 800 900; font-style: normal; font-display: swap; }

/* ---------- Tokens ---------- */
body.dmv-design {
	--dmv-bg: #0B0B0D;
	--dmv-bg-2: #121417;
	--dmv-surface: #1F2226;
	--dmv-surface-2: #181A1E;
	--dmv-border: #2E3238;
	--dmv-border-2: #3A3F46;
	--dmv-accent: #C89B6B;
	--dmv-accent-hover: #D9B48C;
	--dmv-accent-ink: #0B0B0D;
	--dmv-text: #E8E8EA;
	--dmv-muted: #A9AEB5;
	--dmv-white: #FFFFFF;
	--dmv-radius: 8px;
	--dmv-radius-sm: 6px;
	--dmv-font: "Vazirmatn FD", "Vazirmatn", Tahoma, "Segoe UI", system-ui, sans-serif;
	--dmv-container: 1280px;
	--dmv-gutter: 16px;
	--dmv-header-h: 64px;

	/* Blocksy variables → dark palette (cart, checkout, account, legal pages keep Blocksy's layout). */
	--theme-palette-color-1: #C89B6B;
	--theme-palette-color-2: #D9B48C;
	--theme-palette-color-3: #E8E8EA;
	--theme-palette-color-4: #FFFFFF;
	--theme-palette-color-5: #2E3238;
	--theme-palette-color-6: #181A1E;
	--theme-palette-color-7: #0B0B0D;
	--theme-palette-color-8: #1F2226;
	--theme-text-color: #E8E8EA;
	--theme-headings-color: #FFFFFF;
	--theme-link-initial-color: #C89B6B;
	--theme-link-hover-color: #D9B48C;
	--theme-border-color: #2E3238;
	--theme-button-background-initial-color: #C89B6B;
	--theme-button-background-hover-color: #D9B48C;
	--theme-button-text-initial-color: #0B0B0D;
	--theme-button-text-hover-color: #0B0B0D;
	--theme-form-field-border-initial-color: #3A3F46;
	--theme-form-field-border-focus-color: #C89B6B;
	--theme-form-text-initial-color: #E8E8EA;
	--theme-form-text-focus-color: #FFFFFF;
	--theme-form-selection-field-initial-color: #3A3F46;
	--theme-form-selection-field-active-color: #C89B6B;
	--theme-selection-background-color: #C89B6B;
	--theme-selection-text-color: #0B0B0D;
	--theme-font-family: var(--dmv-font);
	--theme-font-stack-default: var(--dmv-font);

	background: var(--dmv-bg);
	color: var(--dmv-text);
	font-family: var(--dmv-font);
	font-size: 16px;
	line-height: 1.8;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
@media (min-width: 768px) { body.dmv-design { --dmv-gutter: 24px; --dmv-header-h: 76px; } }

body.dmv-design,
body.dmv-design h1, body.dmv-design h2, body.dmv-design h3, body.dmv-design h4, body.dmv-design h5, body.dmv-design h6,
body.dmv-design button, body.dmv-design input, body.dmv-design select, body.dmv-design textarea,
body.dmv-design .button, body.dmv-design [class*="ct-"], body.dmv-design .woocommerce,
body.dmv-design .wp-block-button__link { font-family: var(--dmv-font); }
body.dmv-design h1, body.dmv-design h2, body.dmv-design h3, body.dmv-design h4 { color: var(--dmv-white); line-height: 1.4; letter-spacing: 0; }
body.dmv-design #main-container, body.dmv-design main#main, body.dmv-design .site-main { background: var(--dmv-bg); }
body.dmv-design a { color: var(--dmv-accent); text-underline-offset: 3px; }
body.dmv-design a:hover { color: var(--dmv-accent-hover); }
body.dmv-design ::selection { background: var(--dmv-accent); color: var(--dmv-accent-ink); }
body.dmv-design :focus-visible { outline: 2px solid var(--dmv-accent); outline-offset: 2px; border-radius: 4px; }
body.dmv-design img { max-width: 100%; height: auto; }
body.dmv-design .dmv-pic { display: block; }
body.dmv-design .dmv-pic img { display: block; width: 100%; height: auto; }
.dmv-visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.dmv-container { width: 100%; max-width: var(--dmv-container); margin-inline: auto; padding-inline: var(--dmv-gutter); box-sizing: border-box; }
body.dmv-design .dmv-page { overflow-x: clip; }
.dmv-muted { color: var(--dmv-muted); }
.dmv-mt { margin-top: 40px; }
.dmv-mb { margin-bottom: 32px; }
.dmv-rounded img { border-radius: var(--dmv-radius); }

/* ---------- Buttons ---------- */
body.dmv-design .dmv-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 48px; padding: 10px 22px; border-radius: var(--dmv-radius-sm);
	font-weight: 700; font-size: 15px; line-height: 1.4; text-decoration: none; cursor: pointer;
	border: 1px solid transparent; transition: background-color .18s, color .18s, border-color .18s, transform .18s;
	white-space: nowrap; box-sizing: border-box;
}
body.dmv-design .dmv-btn--primary { background: var(--dmv-accent); color: var(--dmv-accent-ink); border-color: var(--dmv-accent); }
body.dmv-design .dmv-btn--primary:hover { background: var(--dmv-accent-hover); border-color: var(--dmv-accent-hover); color: var(--dmv-accent-ink); }
body.dmv-design .dmv-btn--ghost { background: transparent; color: var(--dmv-text); border-color: rgba(232, 232, 234, .55); }
body.dmv-design .dmv-btn--ghost:hover { border-color: var(--dmv-text); background: rgba(232, 232, 234, .08); color: var(--dmv-white); }
body.dmv-design .dmv-btn--outline { background: transparent; color: var(--dmv-accent); border-color: var(--dmv-accent); }
body.dmv-design .dmv-btn--outline:hover { background: var(--dmv-accent); color: var(--dmv-accent-ink); }
body.dmv-design .dmv-btn--lg { min-height: 54px; padding: 12px 28px; font-size: 16px; }
body.dmv-design .dmv-btn--sm { min-height: 44px; padding: 8px 16px; font-size: 14px; }
body.dmv-design .dmv-btn--block { display: flex; width: 100%; }
body.dmv-design .dmv-btn .dmv-ico { flex: none; }
.dmv-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.dmv-actions--center { justify-content: center; }
body.dmv-design .dmv-link-arrow { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-weight: 700; text-decoration: none; }
.dmv-icon-btn {
	display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px;
	border-radius: var(--dmv-radius-sm); background: transparent; border: 1px solid transparent; color: var(--dmv-text) !important;
	cursor: pointer; padding: 0; text-decoration: none;
}
.dmv-icon-btn:hover { border-color: var(--dmv-border-2); background: rgba(255, 255, 255, .04); }
.dmv-eyebrow { margin: 0 0 10px; color: var(--dmv-accent); font-size: 14px; font-weight: 700; letter-spacing: 0; }
.dmv-eyebrow a { text-decoration: none; }
.dmv-tag { display: inline-flex; align-items: center; padding: 2px 10px; border-radius: 999px; border: 1px solid var(--dmv-border-2); color: var(--dmv-text); font-size: 13px; margin: 2px; background: var(--dmv-surface-2); }

/* ---------- Header ---------- */
body.dmv-design #header { position: sticky; top: 0; z-index: 900; background: transparent; }
body.dmv-design.admin-bar #header { top: 32px; }
@media (max-width: 782px) { body.dmv-design.admin-bar #header { top: 0; } }
.dmv-skip { position: absolute; inset-inline-start: 8px; top: -60px; z-index: 1000; background: var(--dmv-accent); color: var(--dmv-accent-ink) !important; padding: 10px 16px; border-radius: 6px; font-weight: 700; }
.dmv-skip:focus { top: 8px; }
.dmv-header { position: relative; background: rgba(11, 11, 13, .94); border-bottom: 1px solid var(--dmv-border); backdrop-filter: saturate(140%) blur(10px); -webkit-backdrop-filter: saturate(140%) blur(10px); }
.dmv-header__bar { display: flex; align-items: center; gap: 24px; min-height: var(--dmv-header-h); }
.dmv-header__logo { display: inline-flex; align-items: center; flex: none; min-height: 44px; }
body.dmv-design .dmv-header__logo img { width: 66px; height: 46px; max-width: none; display: block; }
@media (min-width: 768px) { body.dmv-design .dmv-header__logo img { width: 78px; height: 54px; } }
.dmv-nav { flex: 1 1 auto; display: none; }
.dmv-nav__list { display: flex; align-items: center; gap: 4px; list-style: none; margin: 0; padding: 0; }
.dmv-nav__item { margin: 0; }
body.dmv-design .dmv-nav__link {
	display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 8px 14px; border-radius: var(--dmv-radius-sm);
	color: var(--dmv-text); text-decoration: none; font-weight: 600; font-size: 15px; position: relative;
}
body.dmv-design .dmv-nav__link:hover, body.dmv-design .dmv-nav__item:focus-within > .dmv-nav__link { color: var(--dmv-white); background: rgba(255, 255, 255, .05); }
body.dmv-design .dmv-nav__item.is-current > .dmv-nav__link { color: var(--dmv-accent); }
body.dmv-design .dmv-nav__item.is-current > .dmv-nav__link::after { content: ""; position: absolute; inset-inline: 14px; bottom: 4px; height: 2px; background: var(--dmv-accent); border-radius: 2px; }
.dmv-nav__item--products .dmv-ico { transition: transform .2s; }
.dmv-nav__item--products:hover .dmv-ico, .dmv-nav__item--products.is-open .dmv-ico { transform: rotate(180deg); }
.dmv-header__tools { display: flex; align-items: center; gap: 8px; margin-inline-start: auto; }
.dmv-header__cta { display: none !important; }
.dmv-header__burger { display: inline-flex; }
@media (min-width: 1100px) {
	.dmv-nav { display: block; }
	.dmv-header__cta { display: inline-flex !important; }
	.dmv-header__burger { display: none; }
}
@media (min-width: 560px) and (max-width: 1099px) { .dmv-header__cta { display: inline-flex !important; min-height: 44px; padding: 8px 16px; } }

/* Mega menu */
.dmv-mega {
	position: absolute; inset-inline: 0; top: 100%; background: var(--dmv-bg-2); border-bottom: 1px solid var(--dmv-border);
	box-shadow: 0 24px 48px rgba(0, 0, 0, .55); opacity: 0; visibility: hidden; transform: translateY(-6px);
	transition: opacity .18s, transform .18s, visibility 0s linear .18s; max-height: calc(100vh - var(--dmv-header-h) - 16px); overflow-y: auto;
}
.dmv-nav__item--products:hover > .dmv-mega,
.dmv-nav__item--products:focus-within > .dmv-mega,
.dmv-nav__item--products.is-open > .dmv-mega { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.dmv-mega__inner { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 28px; padding-block: 28px 32px; }
.dmv-mega__col--wide { grid-column: span 2; }
.dmv-mega__col--wide .dmv-mega__list { columns: 2; column-gap: 24px; }
body.dmv-design .dmv-mega__cat { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--dmv-white); font-weight: 800; font-size: 16px; text-decoration: none; padding-bottom: 10px; margin-bottom: 8px; border-bottom: 1px solid var(--dmv-border); min-height: 36px; }
body.dmv-design .dmv-mega__cat:hover { color: var(--dmv-accent); }
.dmv-mega__count { display: inline-flex; align-items: center; justify-content: center; min-width: 26px; height: 22px; padding: 0 6px; border-radius: 999px; background: var(--dmv-surface); color: var(--dmv-accent); font-size: 12px; font-weight: 700; }
.dmv-mega__list { list-style: none; margin: 0; padding: 0; }
.dmv-mega__list li { break-inside: avoid; margin: 0; }
body.dmv-design .dmv-mega__list a { display: block; padding: 6px 0; color: var(--dmv-muted); text-decoration: none; font-size: 14.5px; line-height: 1.6; }
body.dmv-design .dmv-mega__list a:hover, body.dmv-design .dmv-mega__list a:focus-visible { color: var(--dmv-accent); }
.dmv-mega__promo { background: linear-gradient(160deg, var(--dmv-surface), var(--dmv-surface-2)); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); padding: 20px; align-self: start; }
.dmv-mega__promo-title { margin: 0 0 6px; font-weight: 800; color: var(--dmv-white); }
.dmv-mega__promo-text { margin: 0 0 16px; color: var(--dmv-muted); font-size: 14px; }

/* Search panel */
.dmv-search { border-top: 1px solid var(--dmv-border); background: var(--dmv-bg-2); padding-block: 14px; }
.dmv-search[hidden] { display: none; }
.dmv-search__form { display: flex; gap: 10px; align-items: stretch; }
.dmv-search__form--inline { max-width: 640px; margin: 0 0 28px; }
.dmv-404 .dmv-search__form--inline { margin-inline: auto; }
body.dmv-design .dmv-search__form input[type="search"] { flex: 1 1 auto; min-width: 0; }

/* Forms (site-wide, dark) */
body.dmv-design input[type="text"], body.dmv-design input[type="search"], body.dmv-design input[type="tel"], body.dmv-design input[type="email"],
body.dmv-design input[type="number"], body.dmv-design input[type="password"], body.dmv-design textarea, body.dmv-design select {
	background: var(--dmv-bg-2); color: var(--dmv-text); border: 1px solid var(--dmv-border-2); border-radius: var(--dmv-radius-sm);
	min-height: 48px; padding: 10px 14px; font-size: 16px; box-sizing: border-box; width: 100%; max-width: 100%;
}
body.dmv-design textarea { min-height: 96px; }
body.dmv-design input:focus, body.dmv-design textarea:focus, body.dmv-design select:focus { border-color: var(--dmv-accent); outline: 2px solid rgba(200, 155, 107, .35); outline-offset: 0; }
body.dmv-design ::placeholder { color: #7D838B; opacity: 1; }
body.dmv-design label { color: var(--dmv-text); }
body.dmv-design button[type="submit"]:not(.dmv-icon-btn):not(.dv-selector__option), body.dmv-design .button, body.dmv-design input[type="submit"] {
	background: var(--dmv-accent); color: var(--dmv-accent-ink); border: 1px solid var(--dmv-accent); border-radius: var(--dmv-radius-sm);
	min-height: 48px; padding: 10px 22px; font-weight: 700; font-size: 15px; cursor: pointer;
}
body.dmv-design button[type="submit"]:not(.dmv-icon-btn):not(.dv-selector__option):hover, body.dmv-design .button:hover { background: var(--dmv-accent-hover); }

/* ---------- Off-canvas (mobile) ---------- */
.dmv-oc { position: fixed; inset: 0; z-index: 1000; visibility: hidden; pointer-events: none; }
.dmv-oc.is-open, .dmv-oc:target { visibility: visible; pointer-events: auto; }
.dmv-oc__backdrop { position: absolute; inset: 0; background: rgba(0, 0, 0, .6); opacity: 0; transition: opacity .2s; }
.dmv-oc.is-open .dmv-oc__backdrop, .dmv-oc:target .dmv-oc__backdrop { opacity: 1; }
.dmv-oc__panel {
	position: absolute; top: 0; bottom: 0; inset-inline-start: 0; width: min(92vw, 400px); background: var(--dmv-bg-2);
	border-inline-end: 1px solid var(--dmv-border); padding: 12px 16px 28px; overflow-y: auto; box-sizing: border-box;
	transform: translateX(100%); transition: transform .24s ease; display: flex; flex-direction: column; gap: 14px;
}
.dmv-oc.is-open .dmv-oc__panel, .dmv-oc:target .dmv-oc__panel { transform: none; }
.dmv-oc__head { display: flex; align-items: center; justify-content: space-between; min-height: 56px; }
body.dmv-design .dmv-oc__head img { height: 42px; width: 61px; }
.dmv-oc__search { display: flex; gap: 8px; }
.dmv-oc__search input { flex: 1; min-width: 0; }
.dmv-oc__search .dmv-icon-btn { width: 48px; height: 48px; border-color: var(--dmv-border-2); }
.dmv-oc__list, .dmv-oc__cats, .dmv-oc__fams { list-style: none; margin: 0; padding: 0; }
.dmv-oc__list > li { border-bottom: 1px solid var(--dmv-border); }
body.dmv-design .dmv-oc__link, .dmv-oc__acc-toggle { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 52px; color: var(--dmv-text); text-decoration: none; font-weight: 700; font-size: 16px; cursor: pointer; list-style: none; }
.dmv-oc__acc-toggle::-webkit-details-marker { display: none; }
.dmv-oc__acc-toggle .dmv-ico { transition: transform .2s; margin-inline-start: auto; }
details[open] > .dmv-oc__acc-toggle > .dmv-ico { transform: rotate(180deg); }
.dmv-oc__acc-toggle--cat { font-weight: 600; font-size: 15px; min-height: 48px; color: var(--dmv-text); }
.dmv-oc__acc-toggle--cat .dmv-mega__count { margin-inline-start: 4px; }
.dmv-oc__cats { padding-inline-start: 10px; border-inline-start: 2px solid var(--dmv-border); margin-bottom: 12px; }
.dmv-oc__fams { padding-inline-start: 12px; margin-bottom: 8px; }
body.dmv-design .dmv-oc__fams a, body.dmv-design .dmv-oc__all { display: flex; align-items: center; min-height: 44px; color: var(--dmv-muted); text-decoration: none; font-size: 15px; }
body.dmv-design .dmv-oc__all { color: var(--dmv-accent); font-weight: 700; }
body.dmv-design .dmv-oc__phone { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--dmv-text); text-decoration: none; font-weight: 700; }
body.dmv-oc-open { overflow: hidden; }

/* ---------- Footer ---------- */
body.dmv-design #footer { background: #070708; }
.dmv-footer { background: #070708; border-top: 1px solid var(--dmv-border); color: var(--dmv-muted); }
.dmv-footer__grid { display: grid; grid-template-columns: 1fr; gap: 32px; padding-block: 48px 32px; }
@media (min-width: 640px) { .dmv-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .dmv-footer__grid { grid-template-columns: 1.6fr repeat(4, minmax(0, 1fr)); } }
body.dmv-design .dmv-footer__brand img { height: 72px; width: 104px; margin-bottom: 14px; }
.dmv-footer__brand p { margin: 0; max-width: 34ch; font-size: 14.5px; }
body.dmv-design .dmv-footer__title { font-size: 16px; margin: 0 0 12px; color: var(--dmv-white); font-weight: 800; }
.dmv-footer ul { list-style: none; margin: 0; padding: 0; }
body.dmv-design .dmv-footer li a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--dmv-muted); text-decoration: none; font-size: 15px; }
body.dmv-design .dmv-footer li a:hover { color: var(--dmv-accent); }
body.dmv-design .dmv-footer__phone { color: var(--dmv-text) !important; font-weight: 700; }
.dmv-footer__bottom { border-top: 1px solid var(--dmv-border); padding-block: 18px; font-size: 14px; }
.dmv-footer__bottom p { margin: 0; text-align: center; }
@media (max-width: 767px) { body.dmv-design .dmv-footer li a { min-height: 44px; } }

/* ---------- Sections ---------- */
.dmv-section { padding-block: 56px; }
@media (min-width: 900px) { .dmv-section { padding-block: 80px; } }
.dmv-section--surface { background: linear-gradient(180deg, var(--dmv-bg-2), var(--dmv-bg)); border-block: 1px solid var(--dmv-border); }
.dmv-section__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 28px; flex-wrap: wrap; }
body.dmv-design .dmv-section__title { margin: 0; font-size: clamp(24px, 3.2vw, 34px); font-weight: 800; }
.dmv-note { background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-inline-start: 3px solid var(--dmv-accent); border-radius: var(--dmv-radius-sm); padding: 14px 18px; color: var(--dmv-text); margin: 0 0 28px; }

/* Hero */
.dmv-hero { position: relative; min-height: min(78vh, 720px); display: flex; align-items: center; isolation: isolate; overflow: hidden; }
.dmv-hero__media { position: absolute; inset: 0; z-index: -2; }
.dmv-hero__media .dmv-pic, .dmv-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: 30% 50%; }
.dmv-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(270deg, rgba(11, 11, 13, .94) 0%, rgba(11, 11, 13, .78) 38%, rgba(11, 11, 13, .25) 75%, rgba(11, 11, 13, .1) 100%), linear-gradient(0deg, rgba(11, 11, 13, 1) 0%, rgba(11, 11, 13, 0) 30%); }
.dmv-hero__content { padding-block: 72px; }
.dmv-hero__content > * { max-width: 640px; }
body.dmv-design .dmv-hero__title { font-size: clamp(34px, 5.6vw, 64px); font-weight: 900; line-height: 1.25; margin: 0 0 18px; color: var(--dmv-white); }
.dmv-hero__lead { font-size: clamp(16px, 1.6vw, 19px); color: #D5D7DB; margin: 0; }
@media (max-width: 767px) {
	.dmv-hero { min-height: 0; align-items: flex-end; }
	.dmv-hero__media { position: relative; z-index: 0; height: 260px; }
	.dmv-hero { flex-direction: column; align-items: stretch; }
	.dmv-hero::after { bottom: auto; height: 260px; background: linear-gradient(0deg, rgba(11, 11, 13, 1) 0%, rgba(11, 11, 13, .1) 60%); z-index: 0; }
	.dmv-hero__content { position: relative; z-index: 1; padding-block: 0 40px; margin-top: -40px; }
	.dmv-hero .dmv-actions .dmv-btn { flex: 1 1 100%; }
}

/* Features */
.dmv-features { padding-block: 40px; border-bottom: 1px solid var(--dmv-border); }
.dmv-features__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 599px) { .dmv-feature { padding: 14px; text-align: center; } .dmv-feature__icon { width: 46px; height: 46px; margin-inline: auto; } body.dmv-design .dmv-feature__title { font-size: 15px; margin: 0; } .dmv-feature__text { display: none; } }
@media (min-width: 600px) { .dmv-features__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .dmv-features__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.dmv-feature { background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); padding: 22px; }
.dmv-feature__icon { display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; border-radius: 10px; color: var(--dmv-accent); background: rgba(200, 155, 107, .1); border: 1px solid rgba(200, 155, 107, .3); margin-bottom: 12px; }
body.dmv-design .dmv-feature__title { font-size: 17px; margin: 0 0 6px; font-weight: 800; }
.dmv-feature__text { margin: 0; color: var(--dmv-muted); font-size: 14.5px; line-height: 1.8; }

/* Category tiles */
.dmv-cat-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }
@media (min-width: 560px) { .dmv-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .dmv-cat-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
body.dmv-design .dmv-cat-tile { display: flex; flex-direction: column; background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); overflow: hidden; text-decoration: none; color: var(--dmv-text); transition: border-color .2s, transform .2s; }
body.dmv-design .dmv-cat-tile:hover { border-color: var(--dmv-accent); transform: translateY(-3px); color: var(--dmv-text); }
.dmv-cat-tile__media { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #111; }
.dmv-cat-tile__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.dmv-cat-tile:hover .dmv-cat-tile__media img { transform: scale(1.04); }
.dmv-cat-tile__body { display: flex; flex-direction: column; gap: 6px; padding: 18px 18px 20px; flex: 1; }
.dmv-cat-tile__name { font-weight: 800; font-size: 18px; color: var(--dmv-white); }
.dmv-cat-tile__text { color: var(--dmv-muted); font-size: 14px; line-height: 1.8; }
.dmv-cat-tile__meta { margin-top: auto; padding-top: 8px; display: flex; align-items: center; justify-content: space-between; color: var(--dmv-accent); font-weight: 700; font-size: 14px; }
.dmv-cat-grid--compact .dmv-cat-tile__body { padding: 12px 14px; }

/* Split (about) */
.dmv-split { display: grid; grid-template-columns: 1fr; gap: 32px; align-items: center; }
@media (min-width: 900px) { .dmv-split { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px; } }
.dmv-split__media img { border-radius: var(--dmv-radius); border: 1px solid var(--dmv-border); }
.dmv-split__body p { color: #CFD2D6; }
.dmv-prose { color: #CFD2D6; font-size: 16.5px; }
body.dmv-design .dmv-prose h2 { font-size: 24px; margin: 28px 0 10px; }
body.dmv-design .dmv-prose h2:first-child { margin-top: 0; }
.dmv-steps { margin: 0 0 20px; padding-inline-start: 22px; color: #CFD2D6; }
.dmv-steps li { margin-bottom: 8px; }
.dmv-steps li::marker { color: var(--dmv-accent); font-weight: 800; }

/* CTA banner */
.dmv-cta { position: relative; isolation: isolate; overflow: hidden; padding-block: 72px; border-top: 1px solid var(--dmv-border); }
.dmv-cta--compact { padding-block: 48px; }
.dmv-cta__media { position: absolute; inset: 0; z-index: -2; }
.dmv-cta__media .dmv-pic, .dmv-cta__media img { width: 100%; height: 100%; object-fit: cover; }
.dmv-cta::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(270deg, rgba(11, 11, 13, .92) 0%, rgba(11, 11, 13, .7) 55%, rgba(11, 11, 13, .35) 100%); }
body.dmv-design .dmv-cta__title { font-size: clamp(24px, 3.6vw, 38px); font-weight: 900; margin: 0 0 10px; }
.dmv-cta__content p { color: #D5D7DB; max-width: 560px; margin: 0; }
.dmv-cta__content .dmv-actions { margin-top: 22px; }

/* Inner page hero */
.dmv-phero { position: relative; isolation: isolate; overflow: hidden; padding-block: 40px 44px; border-bottom: 1px solid var(--dmv-border); min-height: 220px; display: flex; align-items: flex-end; }
@media (min-width: 900px) { .dmv-phero { padding-block: 56px; min-height: 300px; } }
.dmv-phero__media { position: absolute; inset: 0; z-index: -2; }
.dmv-phero__media .dmv-pic, .dmv-phero__media img { width: 100%; height: 100%; object-fit: cover; }
.dmv-phero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(270deg, rgba(11, 11, 13, .95) 0%, rgba(11, 11, 13, .8) 50%, rgba(11, 11, 13, .55) 100%), linear-gradient(0deg, rgba(11, 11, 13, .9), rgba(11, 11, 13, 0) 60%); }
body.dmv-design .dmv-phero__title { font-size: clamp(28px, 4.4vw, 46px); font-weight: 900; margin: 0 0 8px; }
.dmv-phero__lead { margin: 0; color: #D5D7DB; max-width: 680px; }
.dmv-phero__row { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.dmv-phero__thumb { flex: none; width: 200px; display: none; }
.dmv-phero__thumb img { border-radius: var(--dmv-radius); border: 1px solid var(--dmv-border-2); aspect-ratio: 1; object-fit: cover; }
@media (min-width: 900px) { .dmv-phero__thumb { display: block; } }

/* Breadcrumb */
body.dmv-design .dmv-bc { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 0 0 14px; font-size: 14px; color: var(--dmv-muted); }
body.dmv-design .dmv-bc a { color: var(--dmv-muted); text-decoration: none; display: inline-flex; min-height: 44px; min-width: 44px; align-items: center; }
body.dmv-design .dmv-bc a:hover { color: var(--dmv-accent); }
.dmv-bc__sep { opacity: .5; }

/* Chips */
.dmv-chips { list-style: none; margin: 16px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.dmv-chips--center { justify-content: center; margin-bottom: 8px; }
body.dmv-design .dmv-chips a { display: inline-flex; align-items: center; min-height: 44px; padding: 6px 16px; border-radius: 999px; border: 1px solid var(--dmv-border-2); background: var(--dmv-surface-2); color: var(--dmv-text); text-decoration: none; font-weight: 600; font-size: 14.5px; }
body.dmv-design .dmv-chips a:hover, body.dmv-design .dmv-chips a.is-current { border-color: var(--dmv-accent); color: var(--dmv-accent); }
body.dmv-design .dmv-chips a.is-current { background: rgba(200, 155, 107, .12); }
.dmv-archive__chips { padding-block: 20px 0; }
.dmv-archive__chips .dmv-chips { margin: 0; flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; scrollbar-width: thin; }
.dmv-archive__chips .dmv-chips li { flex: none; }

/* Gallery */
.dmv-gallery { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; gap: 18px; }
@media (min-width: 600px) { .dmv-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .dmv-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.dmv-gallery figure { margin: 0; background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); overflow: hidden; }
.dmv-gallery img { aspect-ratio: 4 / 3; object-fit: cover; }
.dmv-gallery figcaption { padding: 12px 14px; font-size: 14px; color: var(--dmv-muted); display: flex; align-items: center; gap: 8px; }
.dmv-gallery .dmv-tag { border-color: var(--dmv-accent); color: var(--dmv-accent); }

/* Contact / tracking */
.dmv-contact { display: grid; grid-template-columns: 1fr; gap: 32px; }
@media (min-width: 900px) { .dmv-contact { grid-template-columns: 1fr 1.2fr; } }
.dmv-contact__cards { display: grid; gap: 14px; align-content: start; }
body.dmv-design .dmv-card-link { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 16px; align-items: center; padding: 18px; background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); text-decoration: none; color: var(--dmv-text); }
body.dmv-design .dmv-card-link:hover { border-color: var(--dmv-accent); color: var(--dmv-text); }
.dmv-card-link .dmv-feature__icon { grid-row: span 2; margin: 0; }
.dmv-card-link__label { color: var(--dmv-muted); font-size: 14px; }
.dmv-card-link__value { font-weight: 800; font-size: 19px; color: var(--dmv-white); text-align: start; }
.dmv-two { display: grid; grid-template-columns: 1fr; gap: 24px; }
@media (min-width: 900px) { .dmv-two { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.dmv-panel { background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); padding: 24px; scroll-margin-top: 100px; }
body.dmv-design .dmv-panel__title { font-size: 22px; margin: 0 0 14px; font-weight: 800; }
.damavand-track-inquiry-form p { margin: 0 0 14px; }
.damavand-track-result { margin-top: 16px; padding: 16px; border: 1px solid var(--dmv-border-2); border-radius: var(--dmv-radius-sm); background: var(--dmv-bg-2); }
body.dmv-design .damavand-error { color: #FFB4A8; }
body.dmv-design .damavand-success { color: #A8E0B4; }

/* 404 / empty */
.dmv-404__inner { text-align: center; max-width: 760px; }
.dmv-404__code { font-size: clamp(72px, 14vw, 140px); font-weight: 900; line-height: 1; margin: 0 0 8px; color: transparent; -webkit-text-stroke: 2px var(--dmv-accent); }
.dmv-empty { padding-block: 24px 40px; }

/* ---------- WooCommerce: archive grid & cards ---------- */
.dmv-archive .dv-shop { padding-block: 24px 64px; }
.dmv-archive__toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; color: var(--dmv-muted); }
.dmv-archive__toolbar .woocommerce-result-count, .dmv-archive__toolbar .woocommerce-ordering { margin: 0; float: none; }
.dmv-archive__toolbar select { min-width: 220px; }
.dmv-archive__desc { margin-bottom: 20px; }
body.dmv-design ul.dv-product-grid.products, body.dmv-design ul.products.dv-product-grid {
	display: grid !important; grid-template-columns: 1fr; gap: 16px; list-style: none; margin: 0 0 24px; padding: 0;
}
body.dmv-design ul.dv-product-grid.products::before, body.dmv-design ul.dv-product-grid.products::after { display: none !important; }
@media (min-width: 560px) { body.dmv-design ul.dv-product-grid.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 900px) { body.dmv-design ul.dv-product-grid.products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }
@media (min-width: 1200px) { body.dmv-design ul.dv-product-grid.products { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
body.dmv-design ul.products li.product.dv-card, body.dmv-design .dv-card {
	width: auto !important; float: none !important; margin: 0 !important; padding: 0; display: flex; flex-direction: column;
	background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); overflow: hidden;
	box-shadow: none; transition: border-color .2s, transform .2s; position: relative; text-align: start;
}
body.dmv-design .dv-card:hover { border-color: var(--dmv-accent); transform: translateY(-2px); box-shadow: none; }
body.dmv-design .dv-card__media-link { display: block; position: relative; text-decoration: none; }
body.dmv-design .dv-card__media { display: block; aspect-ratio: 1; background: #111214; overflow: hidden; }
body.dmv-design .dv-card__media img { width: 100%; height: 100%; object-fit: cover; margin: 0 !important; display: block; }
body.dmv-design .dv-card .dv-badge { position: absolute; top: 12px; inset-inline-start: 12px; }
body.dmv-design .dv-card__body { display: flex; flex-direction: column; gap: 8px; padding: 16px; flex: 1; }
body.dmv-design .dv-card__title { font-size: 17px !important; font-weight: 800; margin: 0 !important; padding: 0 !important; line-height: 1.5; }
body.dmv-design .dv-card__title a { display: block; color: var(--dmv-white); text-decoration: none; }
body.dmv-design .dv-card__title a:hover { color: var(--dmv-accent); }
body.dmv-design .dv-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
body.dmv-design .dv-card__price { margin: 0; font-size: 14.5px; }
body.dmv-design .dv-card__price .price { color: var(--dmv-text); font-weight: 700; }
body.dmv-design .dv-card__cta { margin-top: auto; position: relative; z-index: 2; }
body.dmv-design .dv-price-inquiry { color: var(--dmv-accent); font-weight: 700; background: none; padding: 0; border: 0; font-size: inherit; }
body.dmv-design .dv-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 8px 18px; border-radius: var(--dmv-radius-sm); font-weight: 700; text-decoration: none; font-size: 15px; box-sizing: border-box; }
body.dmv-design .dv-btn--outline { background: transparent; border: 1px solid var(--dmv-accent); color: var(--dmv-accent); }
body.dmv-design .dv-btn--outline:hover, body.dmv-design .dv-btn--outline:focus-visible { background: var(--dmv-accent); color: var(--dmv-accent-ink); }
body.dmv-design .dv-btn--primary, body.dmv-design .dv-variant__form .single_add_to_cart_button { background: var(--dmv-accent); color: var(--dmv-accent-ink); border: 1px solid var(--dmv-accent); }
body.dmv-design .dv-badge { display: inline-flex; align-items: center; min-height: 28px; padding: 3px 12px; border-radius: 999px; font-size: 13px; font-weight: 700; line-height: 1.4; background: rgba(11, 11, 13, .85); color: var(--dmv-accent); border: 1px solid rgba(200, 155, 107, .6); }
body.dmv-design .dv-badge--available { color: #A8E0B4; border-color: rgba(168, 224, 180, .5); }
body.dmv-design .dv-badge--temp_unavailable { color: #FFB4A8; border-color: rgba(255, 180, 168, .5); }
body.dmv-design .woocommerce-pagination ul.page-numbers, body.dmv-design .dmv-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; border: 0; justify-content: center; }
body.dmv-design .woocommerce-pagination ul.page-numbers li { border: 0; }
body.dmv-design .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 12px; border-radius: var(--dmv-radius-sm); background: var(--dmv-surface); border: 1px solid var(--dmv-border); color: var(--dmv-text); text-decoration: none; }
body.dmv-design .page-numbers.current, body.dmv-design .page-numbers:hover { background: var(--dmv-accent); color: var(--dmv-accent-ink); border-color: var(--dmv-accent); }
body.dmv-design .woocommerce-info, body.dmv-design .woocommerce-message, body.dmv-design .woocommerce-error { background: var(--dmv-surface); color: var(--dmv-text); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius-sm); }

/* ---------- WooCommerce: single product ---------- */
.dmv-single { padding-block: 24px 64px; }
.dmv-single .dmv-bc { margin-bottom: 20px; }
body.dmv-design .dmv-product { display: block !important; max-width: none; margin: 0; padding: 0; }
body.dmv-design .dmv-product > * { width: auto; max-width: 100%; float: none; }
.dmv-product__top { display: grid; grid-template-columns: 1fr; gap: 24px; align-items: start; }
@media (min-width: 900px) { .dmv-product__top { grid-template-columns: minmax(280px, 420px) 1fr; gap: 40px; } }
body.dmv-design .dmv-product__media .dv-product-media { margin: 0; background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); overflow: hidden; aspect-ratio: 1; max-width: 100%; }
body.dmv-design .dmv-product__media img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 899px) { body.dmv-design .dmv-product__media .dv-product-media { aspect-ratio: 16 / 10; } body.dmv-design .dmv-product__media img.dmv-ph { object-fit: contain; } }
body.dmv-design .dmv-product__info { width: auto !important; float: none !important; margin: 0 !important; padding: 0; }
body.dmv-design .dmv-product__info .dv-product__title { font-size: clamp(28px, 4vw, 42px); font-weight: 900; margin: 0 0 12px; color: var(--dmv-white); }
.dmv-product__badges { margin-bottom: 16px; }
.dmv-product__price { font-size: 20px; margin-bottom: 14px; }
.dmv-product__axes { color: var(--dmv-muted); margin: 0 0 6px; display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.dmv-product__excerpt { color: #CFD2D6; }
.dmv-product__selector { margin-top: 36px; background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: calc(var(--dmv-radius) + 2px); padding: 20px; scroll-margin-top: 96px; }
@media (min-width: 900px) { .dmv-product__selector { padding: 32px; } }
.dmv-product__selector-head { margin-bottom: 18px; }
.dmv-product__selector-head p { margin: 6px 0 0; }
body.dmv-design #dv-selector { scroll-margin-top: 96px; }
body.dmv-design .dv-selector { margin: 0; }
body.dmv-design .dv-selector__summary { background: transparent; border: 0; padding: 0; margin: 0 0 16px; color: var(--dmv-text); }
body.dmv-design .dv-selector__summary--ambiguous, body.dmv-design .dv-selector__summary--invalid { background: var(--dmv-bg-2); border: 1px solid var(--dmv-border-2); border-radius: var(--dmv-radius-sm); padding: 14px; }
body.dmv-design .dv-selector__count { color: var(--dmv-muted); margin: 0; font-size: 15px; }
body.dmv-design .dv-selector__chips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 10px; }
body.dmv-design .dv-selector__chip { display: inline-flex; align-items: center; min-height: 34px; padding: 4px 12px; border-radius: 999px; background: rgba(200, 155, 107, .12); border: 1px solid rgba(200, 155, 107, .5); color: var(--dmv-text); font-size: 14px; }
body.dmv-design .dv-selector__change { display: inline-flex; align-items: center; min-height: 44px; padding: 0 8px; font-weight: 700; }
body.dmv-design .dv-selector__fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
body.dmv-design .dv-selector__fieldset legend { font-weight: 800; color: var(--dmv-white); font-size: 18px; margin-bottom: 12px; padding: 0; }
body.dmv-design .dv-selector__options { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 10px; }
body.dmv-design .dv-selector__option {
	min-height: 48px; padding: 8px 12px; border-radius: var(--dmv-radius-sm); background: var(--dmv-bg-2); color: var(--dmv-text);
	border: 1px solid var(--dmv-border-2); font-weight: 700; font-size: 15px; cursor: pointer; width: 100%; line-height: 1.4;
	transition: border-color .15s, background-color .15s, color .15s;
}
body.dmv-design .dv-selector__option:hover, body.dmv-design .dv-selector__option:focus-visible { border-color: var(--dmv-accent); color: var(--dmv-accent); background: rgba(200, 155, 107, .08); }
body.dmv-design .dv-selector__ambiguous-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
body.dmv-design .dv-selector__option--ambiguous { text-align: start; }
body.dmv-design .dv-selector__body.is-loading { opacity: .55; }
body.dmv-design .dv-variant-list { list-style: none; margin: 0; padding: 0; }
body.dmv-design .dv-variant {
	display: grid; grid-template-columns: 1fr; gap: 16px 32px; padding: 20px; margin: 0;
	background: var(--dmv-bg-2); border: 1px solid var(--dmv-accent); border-radius: var(--dmv-radius);
}
@media (min-width: 900px) {
	body.dmv-design .dv-variant { grid-template-columns: minmax(0, 1fr) minmax(320px, 420px); grid-template-areas: "head cta" "attrs cta" "terms cta" "price cta" "reason cta" ". cta"; grid-template-rows: repeat(5, auto) 1fr; align-items: start; }
	body.dmv-design .dv-variant__head { grid-area: head; }
	body.dmv-design .dv-variant__attrs { grid-area: attrs; }
	body.dmv-design .dv-variant__terms { grid-area: terms; }
	body.dmv-design .dv-variant__price { grid-area: price; }
	body.dmv-design .dv-variant__reason { grid-area: reason; }
	body.dmv-design .dv-variant__cta { grid-area: cta; grid-row: 1 / span 6; }
}
body.dmv-design .dv-variant__head { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; border: 0; padding: 0; margin: 0; }
body.dmv-design .dv-variant__name { font-size: 20px; font-weight: 800; color: var(--dmv-white); }
body.dmv-design .dv-variant__attrs, body.dmv-design .dv-variant__terms, body.dmv-design .dv-variant__reason { color: var(--dmv-muted); margin: 0; }
body.dmv-design .dv-variant__price { margin: 0; font-size: 17px; }
body.dmv-design .dv-variant__reference { color: var(--dmv-muted); font-size: 14px; margin: 6px 0 0; }
body.dmv-design .dv-variant__cta { margin: 0; }
body.dmv-design .damavand-inquiry-form { background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); padding: 18px; margin: 0; }
body.dmv-design .damavand-inquiry-form p { margin: 0 0 12px; }
body.dmv-design .damavand-inquiry-form label { display: block; font-weight: 600; font-size: 14.5px; }
body.dmv-design .damavand-inquiry-form input, body.dmv-design .damavand-inquiry-form textarea { margin-top: 6px; }
body.dmv-design .damavand-inquiry-form button[type="submit"] { width: 100%; min-height: 50px; font-size: 16px; }
body.dmv-design .damavand-inquiry-form::before { content: "فرم استعلام همین کالا"; display: block; font-weight: 800; color: var(--dmv-white); margin-bottom: 12px; font-size: 17px; }

/* «مشخصات» (attribute table, collapsed) */
.dmv-specs { margin-top: 24px; background: var(--dmv-surface); border: 1px solid var(--dmv-border); border-radius: var(--dmv-radius); }
.dmv-specs__toggle { display: flex; align-items: center; gap: 8px; min-height: 56px; padding: 0 20px; cursor: pointer; font-weight: 800; color: var(--dmv-white); font-size: 18px; list-style: none; }
.dmv-specs__toggle::-webkit-details-marker { display: none; }
.dmv-specs__toggle::after { content: "+"; margin-inline-start: auto; font-size: 24px; color: var(--dmv-accent); }
.dmv-specs[open] .dmv-specs__toggle::after { content: "−"; }
.dmv-specs__toggle .dmv-muted { font-weight: 400; font-size: 14px; }
.dmv-specs__body { padding: 0 20px 20px; overflow-x: auto; }
body.dmv-design .woocommerce-product-attributes { width: 100%; border-collapse: collapse; border: 0; margin: 0; }
body.dmv-design .woocommerce-product-attributes th, body.dmv-design .woocommerce-product-attributes td { border: 0; border-bottom: 1px solid var(--dmv-border); padding: 12px 8px; text-align: start; vertical-align: top; background: transparent !important; color: var(--dmv-text); font-style: normal; }
body.dmv-design .woocommerce-product-attributes th { width: 140px; color: var(--dmv-muted); font-weight: 700; }
body.dmv-design .woocommerce-product-attributes td p { margin: 0; line-height: 2; }

/* Tabs & related */
body.dmv-design .woocommerce-tabs { margin-top: 32px; }
body.dmv-design .woocommerce-tabs ul.tabs { border-color: var(--dmv-border); }
body.dmv-design .woocommerce-tabs ul.tabs li a { color: var(--dmv-text); min-height: 44px; }
body.dmv-design .woocommerce-tabs ul.tabs li.active a { color: var(--dmv-accent); }
body.dmv-design .woocommerce-Tabs-panel { color: #CFD2D6; }
body.dmv-design section.related, body.dmv-design section.upsells { margin-top: 48px; }
body.dmv-design section.related > h2, body.dmv-design section.upsells > h2 { font-size: clamp(22px, 2.8vw, 30px); font-weight: 800; margin: 0 0 20px; }
body.dmv-design section.related ul.products { display: grid !important; grid-template-columns: 1fr; gap: 16px; margin: 0; padding: 0; list-style: none; }
body.dmv-design section.related ul.products::before, body.dmv-design section.related ul.products::after { display: none !important; }
@media (min-width: 560px) { body.dmv-design section.related ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { body.dmv-design section.related ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
body.dmv-design .onsale, body.dmv-design .out-of-stock-badge { display: none !important; }

/* Blocksy-rendered pages (cart, checkout, legal…) on the dark theme */
body.dmv-design .entry-content, body.dmv-design .ct-container, body.dmv-design .ct-container-full { color: var(--dmv-text); }
body.dmv-design .hero-section { background: transparent; }
body.dmv-design table { color: var(--dmv-text); border-color: var(--dmv-border); }

@media (prefers-reduced-motion: reduce) {
	body.dmv-design *, body.dmv-design *::before, body.dmv-design *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* damavand-sf-layout */
/*
 * Damavand Storefront 0.3.0 — Elementor layout + components (header, footer, home sections,
 * sliders, brand marquee, licences, floating contact) and the refined button system.
 * RTL-first: logical properties only; sliders and the marquee move right → left.
 * Elementor's own style controls override these rules (they use more specific selectors).
 */

/* ===================================================================== *
 * Buttons — thinner, quieter, pill-shaped (Founder 2026-10-06: «ظریف‌تر و زیباتر»)
 * ===================================================================== */
body.dmv-design { --theme-button-border-radius: 999px; --theme-button-font-weight: 500; --dmv-gold-grad: linear-gradient(135deg, #DDB88C 0%, #C89B6B 55%, #B5865A 100%); }
body.dmv-design .dmv-btn {
	min-height: 44px; padding: 8px 22px; border-radius: 999px; font-weight: 500; font-size: 14.5px; letter-spacing: 0;
	border-width: 1px; gap: 8px; box-shadow: none;
}
body.dmv-design .dmv-btn--lg { min-height: 50px; padding: 10px 28px; font-size: 15.5px; }
body.dmv-design .dmv-btn--sm { min-height: 40px; padding: 6px 16px; font-size: 13.5px; }
body.dmv-design .dmv-btn--primary { background: #C89B6B var(--dmv-gold-grad); border-color: transparent; color: #0B0B0D; }
body.dmv-design .dmv-btn--primary:hover { background: #C89B6B var(--dmv-gold-grad); filter: brightness(1.07); color: #0B0B0D; }
body.dmv-design .dmv-btn--outline, body.dmv-design .dmv-btn--ghost { background: transparent; border-color: rgba(200, 155, 107, .55); color: #E8E8EA; }
body.dmv-design .dmv-btn--outline:hover, body.dmv-design .dmv-btn--ghost:hover { background: rgba(200, 155, 107, .12); border-color: #C89B6B; color: #FFFFFF; }
body.dmv-design .dmv-btn .dmv-ico { width: 17px; height: 17px; }
/* WooCommerce / Blocksy buttons (cart, checkout, account, selector). */
body.dmv-design .button, body.dmv-design button.button, body.dmv-design .wp-element-button, body.dmv-design .ct-button,
body.dmv-design .single_add_to_cart_button, body.dmv-design .checkout-button {
	border-radius: 999px !important; font-weight: 500 !important; letter-spacing: 0;
}
/* Elementor «دکمه» widget with the dmv-ebtn class. */
body.dmv-design .dmv-ebtn .elementor-button {
	display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 9px 24px; border-radius: 999px;
	background: transparent; border: 1px solid rgba(200, 155, 107, .55); color: #E8E8EA; font-family: var(--dmv-font);
	font-size: 14.5px; font-weight: 500; line-height: 1.5; transition: background-color .2s, border-color .2s, color .2s, filter .2s;
}
body.dmv-design .dmv-ebtn .elementor-button:hover, body.dmv-design .dmv-ebtn .elementor-button:focus-visible { background: rgba(200, 155, 107, .12); border-color: #C89B6B; color: #FFFFFF; }
body.dmv-design .dmv-ebtn--primary .elementor-button { background: #C89B6B var(--dmv-gold-grad); border-color: transparent; color: #0B0B0D; }
body.dmv-design .dmv-ebtn--primary .elementor-button:hover { background: #C89B6B var(--dmv-gold-grad); filter: brightness(1.07); color: #0B0B0D; }
body.dmv-design .dmv-ebtn .elementor-button-icon svg { width: 16px; height: 16px; fill: currentColor; }
body.dmv-design .dmv-ebtn .elementor-button-content-wrapper { gap: 8px; }

/* ===================================================================== *
 * Elementor shell inside Blocksy
 * ===================================================================== */
body.dmv-design .dmv-ehdr, body.dmv-design .dmv-eftr { font-family: var(--dmv-font); }
body.dmv-design .dmv-ehdr .elementor, body.dmv-design .dmv-eftr .elementor { width: 100%; }
body.dmv-design .dmv-ehdr .e-con, body.dmv-design .dmv-eftr .e-con { --container-max-width: 1280px; }
body.dmv-design .elementor-widget-heading .elementor-heading-title { font-family: var(--dmv-font); }
body.dmv-layout #header { background: transparent; }

/* ===================================================================== *
 * Header
 * ===================================================================== */
.dmv-ehdr { position: relative; background: rgba(11, 11, 13, .97); border-bottom: 1px solid rgba(46, 50, 56, .7); transition: background-color .25s, box-shadow .25s; }
body.dmv-layout #header { position: sticky; top: 0; z-index: 900; }
body.dmv-layout.admin-bar #header { top: 32px; }
@media (max-width: 782px) { body.dmv-layout.admin-bar #header { top: 0; } }
/* Home: the hero image runs under a transparent header. */
body.dmv-hdr-over #header { position: absolute; inset-inline: 0; top: 0; }
body.dmv-hdr-over.admin-bar #header { top: 0; }
body.dmv-hdr-over.admin-bar.dmv-scrolled #header { top: 32px; }
@media (max-width: 782px) { body.dmv-hdr-over.admin-bar.dmv-scrolled #header { top: 46px; } }
@media (max-width: 600px) { body.dmv-hdr-over.admin-bar.dmv-scrolled #header { top: 0; } }
body.dmv-layout .dmv-skip { position: fixed; top: 8px; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
body.dmv-layout .dmv-skip:focus { width: auto; height: auto; padding: 10px 16px; clip-path: none; }
body.dmv-hdr-over .dmv-ehdr { background: linear-gradient(to bottom, rgba(11, 11, 13, .78) 0%, rgba(11, 11, 13, .35) 70%, rgba(11, 11, 13, 0) 100%) no-repeat; border-bottom-width: 0; }
body.dmv-hdr-over.dmv-scrolled #header { position: fixed; animation: dmv-hdr-in .28s ease-out; }
body.dmv-hdr-over.dmv-scrolled .dmv-ehdr, body.dmv-layout.dmv-scrolled .dmv-ehdr { background: rgba(11, 11, 13, .96); border-bottom-color: rgba(46, 50, 56, .9); box-shadow: 0 8px 24px rgba(0, 0, 0, .35); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
@keyframes dmv-hdr-in { from { transform: translateY(-100%); } to { transform: none; } }
@media (prefers-reduced-motion: reduce) { body.dmv-hdr-over.dmv-scrolled #header { animation: none; } }
body.dmv-layout.dmv-scrolled .dmv-hdr__row1 { --padding-top: 8px; --padding-bottom: 4px; }
body.dmv-design.dmv-layout.dmv-scrolled .dmv-logo img { max-width: 104px; }
.dmv-hdr__row2 > .e-con-inner, .dmv-hdr__row2:not(:has(> .e-con-inner)) { position: relative; }
.dmv-hdr .dmv-hdr__search { flex: 1 1 auto !important; max-width: 680px; }
.dmv-hdr .dmv-hdr__tools { margin-inline-start: auto; }
.dmv-logo { line-height: 0; }
.dmv-logo a { display: inline-block; }
body.dmv-design .dmv-logo img { display: block; height: auto; max-width: 100%; transition: max-width .2s; }

/* Search */
.dmv-hsearch { position: relative; width: 100%; }
.dmv-hsearch__form { position: relative; margin: 0; }
body.dmv-design .dmv-hsearch .dmv-hsearch__input {
	width: 100%; height: 46px; margin: 0; padding-block: 0; padding-inline: 46px 18px; border-radius: 999px;
	background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .14); color: #FFFFFF;
	font-family: var(--dmv-font); font-size: 14.5px; transition: border-color .2s, background-color .2s; box-shadow: none;
}
body.dmv-design .dmv-hsearch .dmv-hsearch__input::placeholder { color: #A9AEB5; opacity: 1; }
body.dmv-design .dmv-hsearch .dmv-hsearch__input:focus { outline: none; border-color: #C89B6B; background: rgba(11, 11, 13, .88); }
.dmv-hsearch__input::-webkit-search-cancel-button { -webkit-appearance: none; }
.dmv-hsearch__icon { position: absolute; inset-inline-start: 16px; top: 50%; transform: translateY(-50%); color: #A9AEB5; display: flex; pointer-events: none; z-index: 2; }
.dmv-hsearch__panel {
	position: absolute; top: calc(100% + 8px); inset-inline: 0; z-index: 1001; padding: 10px; max-height: min(70vh, 520px); overflow: auto;
	background: #15171A; border: 1px solid #2E3238; border-radius: 16px; box-shadow: 0 24px 48px rgba(0, 0, 0, .5);
}
.dmv-hsearch__label { margin: 6px 10px; font-size: 12.5px; color: #A9AEB5; }
.dmv-hsearch__cats { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0 6px 8px; padding: 0; }
body.dmv-design .dmv-hsearch__cats a { display: inline-flex; padding: 4px 14px; border-radius: 999px; border: 1px solid rgba(200, 155, 107, .45); color: #E8E8EA; text-decoration: none; font-size: 13.5px; }
body.dmv-design .dmv-hsearch__cats a:hover { border-color: #C89B6B; color: #FFFFFF; }
.dmv-hsearch__items { list-style: none; margin: 0; padding: 0; }
body.dmv-design .dmv-hsearch__items a { display: flex; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 10px; color: #E8E8EA; text-decoration: none; }
body.dmv-design .dmv-hsearch__items a:hover, body.dmv-design .dmv-hsearch__items a:focus-visible { background: rgba(255, 255, 255, .05); }
body.dmv-design .dmv-hsearch__items img { width: 44px; height: 44px; border-radius: 8px; object-fit: cover; background: #0B0B0D; flex: none; }
.dmv-hsearch__items span { display: flex; flex-direction: column; line-height: 1.5; }
.dmv-hsearch__items strong { font-weight: 600; font-size: 14.5px; }
.dmv-hsearch__items small { color: #A9AEB5; font-size: 12.5px; }
.dmv-hsearch__empty { margin: 10px; color: #A9AEB5; }
body.dmv-design .dmv-hsearch__all { display: block; margin-top: 6px; padding: 10px; border-top: 1px solid #2E3238; text-align: center; font-size: 13.5px; color: #C89B6B; text-decoration: none; }

/* Account button */
body.dmv-design .dmv-account-btn {
	display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 18px; border-radius: 999px; white-space: nowrap;
	border: 1px solid rgba(255, 255, 255, .18); color: #E8E8EA; text-decoration: none; font-size: 14px; font-weight: 500;
	transition: border-color .2s, background-color .2s;
}
body.dmv-design .dmv-account-btn:hover { border-color: #C89B6B; background: rgba(200, 155, 107, .1); color: #FFFFFF; }

/* Header links */
.dmv-navlinks ul { display: flex; align-items: center; gap: 4px; list-style: none; margin: 0; padding: 0; }
body.dmv-design .dmv-navlinks a { display: inline-flex; align-items: center; height: 44px; padding: 0 14px; color: #D7D9DD; text-decoration: none; font-size: 14.5px; font-weight: 500; position: relative; white-space: nowrap; }
body.dmv-design .dmv-navlinks a::after { content: ""; position: absolute; inset-inline: 14px; bottom: 8px; height: 1px; background: #C89B6B; transform: scaleX(0); transform-origin: right; transition: transform .25s; }
body.dmv-design .dmv-navlinks a:hover, body.dmv-design .dmv-navlinks a[aria-current] { color: #FFFFFF; }
body.dmv-design .dmv-navlinks a:hover::after, body.dmv-design .dmv-navlinks a[aria-current]::after { transform: scaleX(1); }

/* Tools: language, cart, account, burger */
.dmv-tools { display: flex; align-items: center; gap: 6px; }
.dmv-lang { display: inline-flex; align-items: center; height: 34px; padding: 3px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .16); margin-inline-end: 6px; }
body.dmv-design .dmv-lang a { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; height: 26px; padding: 0 8px; border-radius: 999px; color: #A9AEB5; text-decoration: none; font-size: 12.5px; font-weight: 600; }
body.dmv-design .dmv-lang a.is-current { background: rgba(200, 155, 107, .18); color: #FFFFFF; }
body.dmv-design .dmv-tools__btn { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 999px; color: #E8E8EA; text-decoration: none; transition: background-color .2s, color .2s; }
body.dmv-design .dmv-tools__btn:hover { background: rgba(255, 255, 255, .07); color: #FFFFFF; }
.dmv-tools__badge { position: absolute; top: 4px; inset-inline-end: 2px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: #C89B6B; color: #0B0B0D; font-size: 11px; font-weight: 700; line-height: 18px; text-align: center; }
.dmv-tools__burger { display: none !important; }
@media (max-width: 999px) { .dmv-tools__burger { display: inline-flex !important; } }

/* «دسته‌بندی محصولات» */
.dmv-catmenu, body.dmv-design .elementor-widget-dmv-catmenu { position: static !important; }
body.dmv-design .dmv-catmenu__btn {
	display: inline-flex; align-items: center; gap: 10px; height: 42px; padding: 0 16px; margin: 0; border-radius: 999px;
	background: rgba(200, 155, 107, .12); border: 1px solid rgba(200, 155, 107, .4); color: #FFFFFF; font-family: var(--dmv-font);
	font-size: 14.5px; font-weight: 600; cursor: pointer; transition: background-color .2s, border-color .2s;
}
body.dmv-design .dmv-catmenu__btn .dmv-ico { color: #C89B6B; }
body.dmv-design .dmv-catmenu__btn .dmv-ico--chevron { transition: transform .2s; }
.dmv-catmenu.is-open .dmv-catmenu__btn { background: rgba(200, 155, 107, .22); border-color: #C89B6B; }
.dmv-catmenu.is-open .dmv-catmenu__btn .dmv-ico--chevron { transform: rotate(180deg); }
.dmv-catmenu__panel {
	position: absolute; top: calc(100% + 6px); inset-inline: 16px; z-index: 1000; display: grid; grid-template-columns: 270px minmax(0, 1fr);
	min-height: 360px; max-height: min(72vh, 620px); overflow: hidden; background: #131518; border: 1px solid #2E3238; border-radius: 18px;
	box-shadow: 0 30px 60px rgba(0, 0, 0, .55); opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .18s, transform .18s, visibility .18s;
}
.dmv-catmenu.is-open .dmv-catmenu__panel { opacity: 1; visibility: visible; transform: none; }
.dmv-catmenu__cats { list-style: none; margin: 0; padding: 10px; background: #0F1113; border-inline-end: 1px solid #2E3238; overflow: auto; }
body.dmv-design .dmv-catmenu__cat a { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 6px 12px; border-radius: 12px; color: #D7D9DD; text-decoration: none; font-size: 14.5px; font-weight: 500; }
.dmv-catmenu__ico { display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; color: #C89B6B; flex: none; }
.dmv-catmenu__name { flex: 1; }
.dmv-catmenu__cat .dmv-ico--chevron-l { color: #6C727A; transition: transform .2s, color .2s; }
body.dmv-design .dmv-catmenu__cat.is-active a { background: rgba(200, 155, 107, .1); color: #FFFFFF; }
.dmv-catmenu__cat.is-active .dmv-ico--chevron-l { color: #C89B6B; transform: translateX(-3px); }
.dmv-catmenu__body { position: relative; padding: 22px 26px 56px; overflow: auto; }
.dmv-catmenu__pane { display: none; }
.dmv-catmenu__pane.is-active { display: block; animation: dmv-fade .2s ease-out; }
@keyframes dmv-fade { from { opacity: 0; } to { opacity: 1; } }
body.dmv-design .dmv-catmenu__all { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 16px; color: #C89B6B; text-decoration: none; font-size: 13.5px; font-weight: 600; }
.dmv-catmenu__cols { columns: 3 190px; column-gap: 28px; }
.dmv-catmenu__group { break-inside: avoid; margin-bottom: 14px; }
.dmv-catmenu__cols--2 { columns: 2 220px; max-width: 640px; }
body.dmv-design .dmv-catmenu__sub { display: block; padding: 4px 0; color: #FFFFFF; text-decoration: none; font-weight: 600; font-size: 14.5px; border-inline-start: 2px solid #C89B6B; padding-inline-start: 10px; }
body.dmv-design .dmv-catmenu__sub:hover { color: #C89B6B; }
.dmv-catmenu__fams { list-style: none; margin: 4px 0 0; padding: 0 12px 0 0; }
body.dmv-design .dmv-catmenu__fams a { display: block; padding: 4px 0; color: #A9AEB5; text-decoration: none; font-size: 13.5px; }
body.dmv-design .dmv-catmenu__fams a:hover { color: #FFFFFF; }
body.dmv-design .dmv-catmenu__shop { position: absolute; bottom: 14px; inset-inline-end: 22px; font-size: 13.5px; color: #A9AEB5; text-decoration: none; }
body.dmv-design .dmv-catmenu__shop:hover { color: #C89B6B; }

/* Tablet: the text links move into the menu (burger); the category button stays. */
body.dmv-design .dmv-catmenu__btn span { white-space: nowrap; }
@media (max-width: 999px) {
	.dmv-hdr .dmv-hdr__links { display: none !important; }
	.dmv-hdr__tools .dmv-tools__burger { display: inline-flex !important; }
}
/* Mobile header: logo · cart/menu, search on its own row. */
@media (max-width: 689px) {
	.dmv-hdr__row1 > .e-con-inner, .dmv-hdr__row1 { flex-wrap: wrap !important; row-gap: 10px !important; }
	.dmv-hdr .dmv-hdr__search { order: 3; flex: 1 1 100% !important; max-width: none; }
	.dmv-hdr .dmv-hdr__tools-m { margin-inline-start: auto; }
	body.dmv-design .dmv-hsearch .dmv-hsearch__input { height: 42px; }
	body.dmv-layout.dmv-scrolled .dmv-hdr .dmv-hdr__search { display: none; }
}
/* Off-canvas (0.3.0 additions) */
.dmv-oc__cat-ico { display: inline-flex; width: 26px; color: #C89B6B; margin-inline-end: 8px; }
.dmv-oc__acc-toggle--cat { justify-content: flex-start !important; }
.dmv-oc__acc-toggle--sub { font-weight: 500 !important; font-size: 14.5px !important; min-height: 44px !important; color: #D7D9DD !important; }
.dmv-oc__fams--l3 { padding-inline-start: 12px !important; border-inline-start: 1px solid #2E3238; }
.dmv-oc__panel { display: flex; flex-direction: column; gap: 14px; }

/* ===================================================================== *
 * Home — hero
 * ===================================================================== */
.dmv-hero2 { position: relative; }
body.dmv-design .dmv-hero2__title .elementor-heading-title {
	margin: 0; color: #FFFFFF; font-size: clamp(34px, 4.6vw, 66px); font-weight: 300; line-height: 1.45; letter-spacing: 0;
	text-shadow: 0 2px 24px rgba(0, 0, 0, .35);
}
body.dmv-design .dmv-hero2__title .elementor-heading-title span { font-weight: 800; }
body.dmv-design .dmv-hero2__sub .elementor-heading-title {
	display: inline-flex; align-items: center; gap: 14px; margin: 0; color: #E8E8EA; font-size: clamp(15px, 1.4vw, 18px); font-weight: 400;
}
body.dmv-design .dmv-hero2__sub .elementor-heading-title::before { content: ""; width: 56px; height: 1px; background: #C89B6B; flex: none; }
@media (prefers-reduced-motion: no-preference) {
	.dmv-hero2__title, .dmv-hero2__sub { animation: dmv-rise .9s cubic-bezier(.2, .7, .2, 1) both; }
	.dmv-hero2__sub { animation-delay: .15s; }
}
@keyframes dmv-rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }

/* ===================================================================== *
 * Home — bands, slider shell
 * ===================================================================== */
.dmv-band:empty, .dmv-band:not(:has(.dmv-slider, .dmv-cattiles, .dmv-brands, .dmv-posts, .dmv-consult, .dmv-empty-note)) { display: none; }
.dmv-slider__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
body.dmv-design .dmv-slider__title, body.dmv-design .dmv-brands__title {
	position: relative; margin: 0; padding-bottom: 10px; color: #FFFFFF; font-size: clamp(20px, 2vw, 26px); font-weight: 700; line-height: 1.4;
}
body.dmv-design .dmv-slider__title::after, body.dmv-design .dmv-brands__title::after { content: ""; position: absolute; inset-inline-start: 0; bottom: 0; width: 44px; height: 2px; border-radius: 2px; background: #C89B6B; }
.dmv-slider__nav { display: flex; align-items: center; gap: 8px; }
body.dmv-design .dmv-slider__more { margin-inline-end: 8px; font-size: 14px; font-weight: 500; color: #C89B6B; text-decoration: none; }
body.dmv-design .dmv-slider__more:hover { color: #FFFFFF; }
body.dmv-design .dmv-slider__arrow {
	display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; margin: 0; border-radius: 999px;
	background: transparent; border: 1px solid rgba(255, 255, 255, .18); color: #E8E8EA; cursor: pointer; transition: border-color .2s, color .2s, opacity .2s;
}
body.dmv-design .dmv-slider__arrow:hover:not(:disabled) { border-color: #C89B6B; color: #C89B6B; }
body.dmv-design .dmv-slider__arrow:disabled { opacity: .3; cursor: default; }
.dmv-slider.is-static .dmv-slider__arrow { display: none; }
.dmv-slider__track {
	display: flex; gap: 18px; margin: 0; padding: 4px 2px 10px; list-style: none; overflow-x: auto; overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.dmv-slider__track::-webkit-scrollbar { display: none; }
.dmv-slider__track > li { flex: 0 0 auto; scroll-snap-align: start; margin: 0 !important; }
.dmv-slider__track:focus-visible { outline: 2px solid #C89B6B; outline-offset: 4px; border-radius: 12px; }

/* Category cards */
.dmv-catcard { width: 132px; }
body.dmv-design .dmv-catcard a { display: flex; flex-direction: column; align-items: center; gap: 12px; text-decoration: none; color: #D7D9DD; text-align: center; }
.dmv-catcard__ico {
	display: flex; align-items: center; justify-content: center; width: 108px; height: 108px; border-radius: 50%; color: #C89B6B; overflow: hidden;
	background: radial-gradient(circle at 30% 25%, #24272C 0%, #17191C 70%); border: 1px solid #2E3238; transition: border-color .25s, transform .25s, color .25s, box-shadow .25s;
}
.dmv-slider--square .dmv-catcard__ico { border-radius: 22px; }
body.dmv-design .dmv-catcard__ico .dmv-cat-img { width: 100%; height: 100%; object-fit: cover; }
.dmv-catcard__name { font-size: 14px; font-weight: 500; line-height: 1.6; min-height: 2em; }
body.dmv-design .dmv-catcard a:hover .dmv-catcard__ico, body.dmv-design .dmv-catcard a:focus-visible .dmv-catcard__ico { border-color: #C89B6B; color: #E2BE93; transform: translateY(-3px); box-shadow: 0 10px 26px rgba(200, 155, 107, .14); }
body.dmv-design .dmv-catcard a:hover { color: #FFFFFF; }
@media (max-width: 689px) {
	.dmv-slider__arrow { display: none !important; }
	body.dmv-design .dmv-slider__title, body.dmv-design .dmv-slider__more { white-space: nowrap; }
}
@media (max-width: 689px) { .dmv-catcard { width: 104px; } .dmv-catcard__ico { width: 86px; height: 86px; } .dmv-catcard__ico svg { width: 38px; height: 38px; } .dmv-catcard__name { font-size: 13px; } }

/* Product carousel */
.dmv-slider--products .dmv-slider__track > li.dv-card { width: 248px; }
@media (max-width: 689px) { .dmv-slider--products .dmv-slider__track > li.dv-card { width: 72vw; max-width: 270px; } }

/* Brand marquee (continuous, right → left, pause on hover) */
.dmv-brands__title { margin-bottom: 26px !important; }
.dmv-marquee {
	position: relative; overflow: hidden; padding: 6px 0; direction: ltr;
	-webkit-mask-image: linear-gradient(to right, transparent 0, #000 9%, #000 91%, transparent 100%); mask-image: linear-gradient(to right, transparent 0, #000 9%, #000 91%, transparent 100%);
}
.dmv-marquee__track { display: flex; align-items: center; width: max-content; margin: 0; padding: 0; list-style: none; animation: dmv-marquee var(--dmv-marquee-duration, 40s) linear infinite; }
.dmv-marquee:hover .dmv-marquee__track, .dmv-marquee:focus-within .dmv-marquee__track { animation-play-state: paused; }
@keyframes dmv-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.dmv-brand { position: relative; flex: none; display: flex; align-items: center; justify-content: center; height: 76px; padding: 0 34px; margin: 0 !important; }
body.dmv-design .dmv-brand img { display: block; height: 46px; width: auto; max-width: 170px; object-fit: contain; transition: opacity .25s; }
.dmv-brand__mono { opacity: .62; }
.dmv-brand__color { position: absolute; inset: 0; opacity: 0; pointer-events: none; transition: opacity .25s; }
@media (hover: hover) {
	.dmv-brand__color { background: var(--dmv-brand-c) center / auto 46px no-repeat; }
	.dmv-brand:hover .dmv-brand__mono { opacity: 0; }
	.dmv-brand:hover .dmv-brand__color { opacity: 1; }
}
@media (max-width: 689px) { .dmv-brand { padding: 0 22px; height: 64px; } body.dmv-design .dmv-brand img { height: 38px; max-width: 130px; } .dmv-brand__color { background-size: auto 38px !important; } }
@media (prefers-reduced-motion: reduce) {
	.dmv-marquee { overflow-x: auto; -webkit-mask-image: none; mask-image: none; }
	.dmv-marquee__track { animation: none; }
	.dmv-marquee__track > [aria-hidden="true"] { display: none; }
}

/* Magazine */
.dmv-posts__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin: 0; padding: 0; list-style: none; }
@media (max-width: 999px) { .dmv-posts__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 689px) { .dmv-posts__grid { grid-template-columns: 1fr; } }
body.dmv-design .dmv-post a { display: flex; flex-direction: column; height: 100%; overflow: hidden; border-radius: 16px; background: #15171A; border: 1px solid #2E3238; color: #E8E8EA; text-decoration: none; transition: border-color .2s, transform .2s; }
body.dmv-design .dmv-post a:hover { border-color: #C89B6B; transform: translateY(-2px); }
.dmv-post__media { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #0F1113; }
body.dmv-design .dmv-post__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.dmv-post__body { display: flex; flex-direction: column; gap: 6px; padding: 16px 18px 20px; }
.dmv-post__date { font-size: 12.5px; color: #A9AEB5; }
.dmv-post__title { font-size: 16.5px; font-weight: 700; color: #FFFFFF; line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 3.2em; } /* R23-B2 (N7) */
.dmv-post__excerpt { font-size: 14px; color: #A9AEB5; line-height: 1.8; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.dmv-post__media picture { display: block; width: 100%; height: 100%; }
@media (max-width: 689px) { .dmv-posts__grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 14px; padding-bottom: 6px; } .dmv-posts__grid > .dmv-post { flex: 0 0 82%; scroll-snap-align: start; } }

/* Consultation */
.dmv-consult {
	position: relative; overflow: hidden; border-radius: 22px; border: 1px solid rgba(200, 155, 107, .28);
	background: radial-gradient(120% 140% at 100% 0%, rgba(200, 155, 107, .16) 0%, rgba(200, 155, 107, 0) 52%), linear-gradient(180deg, #17191C 0%, #121417 100%);
}
.dmv-consult__text { flex: 1 1 420px !important; }
body.dmv-design .dmv-consult__title .elementor-heading-title { margin: 0; color: #FFFFFF; font-size: clamp(20px, 2.2vw, 28px); font-weight: 700; line-height: 1.6; }
body.dmv-design .dmv-consult__lead, body.dmv-design .dmv-consult__lead p { margin: 0; color: #B9BDC3; font-size: 15.5px; line-height: 1.9; }
.dmv-consult__btns { flex: 0 1 auto !important; width: auto !important; }
@media (max-width: 689px) { .dmv-consult__btns .elementor-widget-button, .dmv-consult__btns .elementor-button { width: 100%; justify-content: center; } }

/* Editor-only empty notice */
.dmv-empty-note { padding: 18px 20px; border: 1px dashed #3A3F46; border-radius: 12px; color: #A9AEB5; font-size: 14px; }

/* ===================================================================== *
 * Footer
 * ===================================================================== */
.dmv-eftr { color: #C9CCD1; }
.dmv-ftr { border-top: 1px solid #1F2226; }
.dmv-ftr__brand { flex: 0 1 330px !important; }
.dmv-ftr__cols { flex: 1 1 520px !important; }
.dmv-ftr__cols > .dmv-ftr__col { flex: 1 1 150px !important; width: auto !important; }
.dmv-ftr__slogan { flex: 0 1 260px !important; text-align: start; }
body.dmv-design .dmv-ftr__title .elementor-heading-title { position: relative; margin: 0; padding-bottom: 12px; color: #FFFFFF; font-size: 16px; font-weight: 700; }
body.dmv-design .dmv-ftr__title .elementor-heading-title::after { content: ""; position: absolute; inset-inline-start: 0; bottom: 0; width: 34px; height: 2px; border-radius: 2px; background: #C89B6B; }
body.dmv-design .dmv-ftr .elementor-icon-list-items { margin: 0; padding: 0; }
body.dmv-design .dmv-ftr .elementor-icon-list-item, body.dmv-design .dmv-ftr .elementor-icon-list-item > a { font-size: 14px; line-height: 1.9; color: #B9BDC3; }
body.dmv-design .dmv-ftr__links .elementor-icon-list-item:not(:last-child) { padding-bottom: 6px; }
body.dmv-design .dmv-ftr .elementor-icon-list-item > a { text-decoration: none; transition: color .2s; }
body.dmv-design .dmv-ftr .elementor-icon-list-item > a:hover { color: #C89B6B; }
body.dmv-design .dmv-ftr__links .elementor-icon-list-icon { display: none; }
body.dmv-design .dmv-ftr__contact .elementor-icon-list-item { align-items: flex-start; padding-bottom: 8px; }
body.dmv-design .dmv-ftr__contact .elementor-icon-list-icon { width: 30px; color: #C89B6B; padding-top: 6px; }
body.dmv-design .dmv-ftr__contact .elementor-icon-list-icon svg { width: 15px; height: 15px; fill: #C89B6B; }
body.dmv-design .dmv-ftr__contact .elementor-icon-list-icon i { color: #C89B6B; font-size: 15px; }
body.dmv-design .dmv-ftr__contact .elementor-icon-list-text { color: #D7D9DD; padding-inline-start: 4px; }
body.dmv-design .dmv-ftr__social .elementor-social-icons-wrapper { display: flex; gap: 10px; justify-content: flex-start; }
body.dmv-design .dmv-ftr__social .elementor-social-icon { width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 0; background: transparent; border: 1px solid rgba(255, 255, 255, .2); border-radius: 50%; transition: border-color .2s, background-color .2s; }
body.dmv-design .dmv-ftr__social .elementor-social-icon svg { width: 16px; height: 16px; fill: #E8E8EA; }
body.dmv-design .dmv-ftr__social .elementor-social-icon i { color: #E8E8EA; font-size: 16px; }
body.dmv-design .dmv-ftr__social .elementor-social-icon:hover { border-color: #C89B6B; background: rgba(200, 155, 107, .14); }
body.dmv-design .dmv-slogan .elementor-heading-title { margin: 0; color: #FFFFFF; font-size: 27px; font-weight: 300; line-height: 1.7; }
body.dmv-design .dmv-slogan__en .elementor-heading-title { margin: 0; color: #8E949B; font-size: 12.5px; font-weight: 500; letter-spacing: .38em; direction: ltr; text-align: end; }
html[dir="rtl"] body.dmv-design .dmv-slogan__en .elementor-heading-title { text-align: right; }
body.dmv-design .dmv-slogan__sub .elementor-heading-title { position: relative; margin: 6px 0 0; padding-top: 14px; color: #B9BDC3; font-size: 14.5px; font-weight: 400; line-height: 1.9; }
body.dmv-design .dmv-slogan__sub .elementor-heading-title::before { content: ""; position: absolute; inset-inline-start: 0; top: 0; width: 44px; height: 2px; background: #C89B6B; border-radius: 2px; }
.dmv-ftr__bar { border-top: 1px solid rgba(255, 255, 255, .08); }
body.dmv-design .dmv-ftr__legal .elementor-icon-list-item > a, body.dmv-design .dmv-ftr__legal .elementor-icon-list-item { font-size: 13px; color: #8E949B; }
body.dmv-design .dmv-ftr__copy, body.dmv-design .dmv-ftr__copy p { margin: 0; font-size: 13px; color: #8E949B; }
body.dmv-design .dmv-ftr__copy strong { color: #D7D9DD; font-weight: 600; }
@media (max-width: 1279px) { .dmv-ftr__slogan { flex: 1 1 100% !important; } }
@media (max-width: 999px) {
	.dmv-ftr__brand { flex: 1 1 100% !important; }
}
@media (max-width: 689px) {
	.dmv-ftr__cols > .dmv-ftr__col { flex: 1 1 40% !important; }
	.dmv-ftr__bar > .e-con-inner, .dmv-ftr__bar { justify-content: center !important; text-align: center; }
	body.dmv-design .dmv-ftr__legal .elementor-icon-list-items { justify-content: center; }
}

/* Licence badges — circles */
.dmv-licenses { display: flex; align-items: center; gap: 12px; margin: 0; padding: 0; list-style: none; flex-wrap: wrap; }
.dmv-license a, .dmv-license > img { display: block; }
body.dmv-design .dmv-license img {
	width: 64px; height: 64px; padding: 7px; border-radius: 50%; background: #FFFFFF; object-fit: contain; box-sizing: border-box;
	border: 2px solid rgba(200, 155, 107, .5); transition: transform .2s, border-color .2s;
}
.dmv-license a:hover img { transform: scale(1.06); border-color: #C89B6B; }
.dmv-licenses.is-preview { padding: 6px 10px; border: 1px dashed rgba(200, 155, 107, .5); border-radius: 14px; }
.dmv-licenses__note { font-size: 11.5px; color: #C89B6B; max-width: 150px; line-height: 1.6; }

/* ===================================================================== *
 * Floating contact
 * ===================================================================== */
.dmv-float { position: fixed; bottom: 22px; inset-inline-end: 22px; z-index: 950; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.dmv-float__btn {
	position: relative; display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; padding: 0; margin: 0; border: 0;
	border-radius: 50%; background: #C89B6B var(--dmv-gold-grad); color: #0B0B0D; cursor: pointer; box-shadow: 0 10px 28px rgba(0, 0, 0, .45);
	transition: transform .2s, filter .2s;
}
.dmv-float__btn:hover { transform: scale(1.05); filter: brightness(1.06); }
.dmv-float__btn::before { content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 1px solid rgba(200, 155, 107, .45); animation: dmv-pulse 2.6s ease-out infinite; }
@keyframes dmv-pulse { 0% { transform: scale(.92); opacity: .9; } 100% { transform: scale(1.25); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .dmv-float__btn::before { animation: none; display: none; } }
.dmv-float__close { display: none; }
.dmv-float.is-open .dmv-float__open { display: none; }
.dmv-float.is-open .dmv-float__close { display: inline-flex; }
.dmv-float.is-open .dmv-float__btn::before { display: none; }
.dmv-float__menu { display: flex; flex-direction: column; gap: 8px; padding: 10px; border-radius: 18px; background: #15171A; border: 1px solid #2E3238; box-shadow: 0 20px 44px rgba(0, 0, 0, .5); }
.dmv-float__menu[hidden] { display: none; }
body.dmv-design .dmv-float__item { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 6px 14px; border-radius: 12px; color: #E8E8EA; text-decoration: none; font-size: 14.5px; white-space: nowrap; }
body.dmv-design .dmv-float__item:hover { background: rgba(200, 155, 107, .12); color: #FFFFFF; }
body.dmv-design .dmv-float__item .dmv-ico { color: #C89B6B; }
.dmv-float__num { color: #A9AEB5; font-size: 13px; }
body.dmv-oc-open .dmv-float { display: none; }

/* ===================================================================== *
 * English page (Elementor canvas, left-to-right)
 * ===================================================================== */
body.dmv-lang-en { direction: ltr; text-align: left; }
body.dmv-lang-en .dmv-en { direction: ltr; text-align: left; }
body.dmv-design .dmv-en__title .elementor-heading-title { color: #FFFFFF; font-size: clamp(30px, 4vw, 46px); font-weight: 700; margin: 0; }
body.dmv-design .dmv-en .elementor-widget-heading h2.elementor-heading-title { color: #FFFFFF; font-size: 22px; margin: 10px 0 0; }
body.dmv-design .dmv-en p, body.dmv-design .dmv-en li { color: #C9CCD1; font-size: 16px; line-height: 1.8; }
body.dmv-design .dmv-en .dmv-en__lead { color: #E2BE93; font-size: 19px; font-weight: 300; }
body.dmv-design .dmv-en__top { border-bottom: 1px solid #2E3238; }
body.dmv-lang-en .dmv-float { inset-inline-end: 22px; }
/* Latin digits on the English page (the bundled Vazirmatn FD maps 0-9 to Persian digits). */
body.dmv-design.dmv-lang-en { --dmv-font: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; --theme-font-family: var(--dmv-font); }

/* Fix (found in the 0.3.0 review): the single-product availability badge was absolutely positioned
   against the page and surfaced in the top-left corner under the header; it belongs under the title. */
body.dmv-design .dmv-product__badges .dv-badge { position: static; inset: auto; }

/* ===================================================================== *
 * 0.3.1 — Founder review 2026-10-07
 * ===================================================================== */

/* Typography: every Elementor text uses the bundled Vazirmatn (the kit's Roboto is never loaded). */
body.dmv-design {
	--e-global-typography-primary-font-family: "Vazirmatn FD";
	--e-global-typography-secondary-font-family: "Vazirmatn FD";
	--e-global-typography-text-font-family: "Vazirmatn FD";
	--e-global-typography-accent-font-family: "Vazirmatn FD";
	--e-global-typography-text-font-weight: 400;
}
body.dmv-design .elementor-widget-text-editor, body.dmv-design .elementor-widget-text-editor p,
body.dmv-design .elementor-icon-list-text, body.dmv-design .elementor-button, body.dmv-design .elementor-heading-title,
body.dmv-design .dmv-ehdr, body.dmv-design .dmv-eftr, body.dmv-design .elementor input, body.dmv-design .elementor button {
	font-family: var(--dmv-font); letter-spacing: 0; word-spacing: normal;
}
body.dmv-design .elementor-widget-text-editor p { line-height: 1.95; margin: 0 0 .6em; }
body.dmv-design .elementor-widget-text-editor p:last-child { margin-bottom: 0; }

/* Header row 1: logo · centred, moderate search · login — the logo keeps its own room. */
.dmv-hdr .dmv-hdr__logo { flex: 0 0 auto !important; }
.dmv-hdr .dmv-hdr__account { flex: 0 0 auto !important; }
@media (min-width: 690px) {
	.dmv-hdr .dmv-hdr__search { flex: 0 1 540px !important; max-width: 540px; margin-inline: auto; }
}
body.dmv-design .dmv-hsearch .dmv-hsearch__input { height: 42px; font-size: 14px; background: rgba(11, 11, 13, .55); border-color: rgba(255, 255, 255, .16); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.dmv-hdr__row1 { min-height: 76px; }
.dmv-hdr .dmv-logo img { min-width: 96px; }

/* Readability over photos: frosted dark glass behind text. */
body.dmv-design .dmv-hero2__sub .elementor-heading-title { color: #E2E3E6; }
.dmv-ftr__slogan {
	padding: 22px 24px !important; border-radius: 18px;
	background: rgba(11, 11, 13, .55); border: 1px solid rgba(255, 255, 255, .08);
	-webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
	.dmv-ftr__slogan { background: rgba(11, 11, 13, .78); }
}

/* Social / messengers (footer). */
.dmv-social { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
body.dmv-design .dmv-social__a {
	display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, .2); color: #E8E8EA; text-decoration: none; transition: border-color .2s, background-color .2s, color .2s;
}
body.dmv-design .dmv-social__a:hover { border-color: #C89B6B; background: rgba(200, 155, 107, .14); color: #FFFFFF; }
body.dmv-design .dmv-social__a--bale, body.dmv-design .dmv-social__a--rubika, body.dmv-design .dmv-social__a--eitaa { border-color: rgba(200, 155, 107, .5); color: #E2BE93; }

/* «به‌زودی» groups in the category menu. */
.dmv-catmenu__group--soon .dmv-catmenu__sub { color: #8E949B !important; border-inline-start-color: #3A3F46 !important; cursor: default; }
.dmv-catmenu__sub em, .dmv-oc__soon em { font-style: normal; font-size: 11.5px; padding: 1px 8px; margin-inline-start: 6px; border-radius: 999px; border: 1px solid #3A3F46; color: #A9AEB5; }
.dmv-oc__soon { display: flex; align-items: center; min-height: 44px; color: #8E949B; }

/* 0.3.1.1 — official eNamad seal in the same round badge style */
body.dmv-design .dmv-license--seal a { display: flex; align-items: center; justify-content: center; width: 72px; height: 72px; border-radius: 50%; background: #fff; border: 1px solid rgba(255,255,255,.18); overflow: hidden; transition: transform .2s ease, border-color .2s ease; }
body.dmv-design .dmv-license--seal img { width: 60px !important; height: 60px !important; max-width: none; object-fit: contain; border: 0 !important; border-radius: 0 !important; background: none !important; padding: 0 !important; }
body.dmv-design .dmv-license--seal a:hover { transform: scale(1.06); border-color: #C89B6B; }

/* ===================================================================== *
 * 0.3.2 — Founder review 2026-10-07 (round 2)
 * ===================================================================== */

/* A20 — hero slogan: no card again, smaller and tighter; legibility from the photo's own shade. */
body.dmv-design .dmv-hero2__title .elementor-heading-title {
	font-size: clamp(28px, 3.3vw, 48px); line-height: 1.5; font-weight: 300;
	text-shadow: 0 2px 18px rgba(0, 0, 0, .55), 0 0 2px rgba(0, 0, 0, .35);
}
body.dmv-design .dmv-hero2__sub .elementor-heading-title { font-size: clamp(14px, 1.15vw, 16px); color: #E8E8EA; text-shadow: 0 1px 10px rgba(0, 0, 0, .6); }
.dmv-hero2 .dmv-hero2__title, .dmv-hero2 .dmv-hero2__sub { max-width: 560px; }

/* A21 — header row 2 over the photo: dark frosted pills behind the links and behind language/cart. */
body.dmv-design .dmv-hdr .dmv-navlinks ul,
body.dmv-design .dmv-hdr__tools .dmv-tools {
	padding: 4px 6px; border-radius: 999px;
	background: rgba(11, 11, 13, .58); border: 1px solid rgba(255, 255, 255, .09);
	-webkit-backdrop-filter: blur(10px) saturate(1.1); backdrop-filter: blur(10px) saturate(1.1);
}
body.dmv-design .dmv-hdr .dmv-navlinks a { height: 38px; color: #ECEDEF; }
body.dmv-design .dmv-hdr__tools .dmv-lang { margin-inline-end: 2px; border-color: rgba(255, 255, 255, .12); }
body.dmv-design .dmv-hdr__tools .dmv-tools__btn { width: 38px; height: 38px; }
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
	body.dmv-design .dmv-hdr .dmv-navlinks ul, body.dmv-design .dmv-hdr__tools .dmv-tools { background: rgba(11, 11, 13, .82); }
}

/* A22 — footer photo: drawn once here (never tiled), fitted per screen size. */
body.dmv-design .dmv-ftr { position: relative; isolation: isolate; background-image: none !important; background-color: #0B0B0D !important; }
body.dmv-design .dmv-ftr::before { display: none !important; }
body.dmv-design .dmv-ftr::after {
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background:
		linear-gradient(270deg, rgba(11, 11, 13, .97) 0%, rgba(11, 11, 13, .9) 42%, rgba(11, 11, 13, .5) 100%),
		url("https://damavandsteel.com/wp-content/plugins/damavand-storefront/assets/css/../img/site/footer-bg.webp") left center / cover no-repeat;
}
body.dmv-design .dmv-ftr > .e-con-inner, body.dmv-design .dmv-ftr > .e-con { position: relative; z-index: 1; }
@media (max-width: 1024px) {
	body.dmv-design .dmv-ftr::after {
		background:
			linear-gradient(180deg, #0B0B0D 0%, rgba(11, 11, 13, .94) 50%, rgba(11, 11, 13, .62) 100%),
			url("https://damavandsteel.com/wp-content/plugins/damavand-storefront/assets/css/../img/site/footer-bg-1000.webp") center bottom / 100% auto no-repeat,
			#0B0B0D;
	}
}

/* Footer live category links (same look as the other footer lists). */
.dmv-catlinks { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 2px; }
body.dmv-design .dmv-catlinks a { font-size: 14px; line-height: 1.9; color: #B9BDC3; text-decoration: none; transition: color .2s; }
body.dmv-design .dmv-catlinks a:hover { color: #C89B6B; }

/* P1 — category pages grouped like the menu. */
.dmv-agroup { margin: 0 0 44px; }
.dmv-agroup__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 18px; padding-bottom: 12px; border-bottom: 1px solid #1F2226; }
body.dmv-design .dmv-agroup__title { margin: 0; font-size: clamp(18px, 1.6vw, 22px); font-weight: 700; color: #F4F4F5; position: relative; padding-inline-start: 14px; }
body.dmv-design .dmv-agroup__title::before { content: ""; position: absolute; inset-inline-start: 0; top: 18%; bottom: 18%; width: 3px; border-radius: 3px; background: #C89B6B; }
body.dmv-design .dmv-agroup__title a { color: inherit; text-decoration: none; }
body.dmv-design .dmv-agroup__title a:hover { color: #E2BE93; }
.dmv-agroup__count { font-size: 13px; color: #8E949B; white-space: nowrap; }
.dmv-agroup__soon { font-size: 12px; padding: 2px 10px; border-radius: 999px; border: 1px solid #3A3F46; color: #A9AEB5; }
.dmv-agroup--soon { margin-bottom: 28px; }
.dmv-agroup--soon .dmv-agroup__title { color: #A9AEB5 !important; }
body.dmv-design .dmv-agroup__note { margin: 0; padding: 14px 18px; border-radius: 14px; border: 1px dashed #2A2E33; color: #A9AEB5; font-size: 14px; }
body.dmv-design .dmv-agroup__note a { color: #E2BE93; }

/* A23/A24 — one floating contact, bottom-right, three choices. */
.dmv-float { left: auto !important; right: 22px !important; direction: ltr; align-items: flex-end; }
.dmv-float__menu { direction: rtl; }
body.dmv-design .dmv-float__txt small[dir="ltr"] { text-align: right; }
.dmv-float__menu { width: min(330px, calc(100vw - 32px)); padding: 12px; border-radius: 20px; background: rgba(21, 23, 26, .96); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); transform-origin: bottom right; animation: dmv-pop .18s ease-out; }
@keyframes dmv-pop { from { opacity: 0; transform: translateY(6px) scale(.98); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .dmv-float__menu { animation: none; } }
.dmv-float__pane { display: flex; flex-direction: column; gap: 6px; }
.dmv-float__pane[hidden] { display: none; }
body.dmv-design .dmv-float__head { margin: 2px 6px 6px; font-size: 13px; color: #A9AEB5; }
body.dmv-design .dmv-float__item { width: 100%; min-height: 60px; padding: 8px 10px; gap: 12px; border: 0; background: transparent; text-align: start; cursor: pointer; font: inherit; white-space: normal; }
.dmv-float__ico { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 12px; background: rgba(200, 155, 107, .12); color: #E2BE93; }
.dmv-float__txt { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1; }
body.dmv-design .dmv-float__txt strong { font-size: 14.5px; font-weight: 700; color: #F4F4F5; }
body.dmv-design .dmv-float__txt small { font-size: 12px; color: #9AA0A6; }
.dmv-float__chev { color: #8E949B; display: inline-flex; }
body.dmv-design .dmv-float__back { display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; min-height: 40px; padding: 0 8px; border: 0; background: none; color: #E2BE93; font: inherit; font-weight: 700; font-size: 14px; cursor: pointer; }
.dmv-float__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
body.dmv-design .dmv-float__net { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; min-height: 78px; border-radius: 14px; border: 1px solid #2A2E33; color: #E8E8EA; text-decoration: none; font-size: 12.5px; transition: border-color .2s, background-color .2s; }
body.dmv-design .dmv-float__net .dmv-ico { width: 24px; height: 24px; color: #C89B6B; }
body.dmv-design .dmv-float__net:hover { border-color: #C89B6B; background: rgba(200, 155, 107, .1); }
body.dmv-design .dmv-float__net--bale, body.dmv-design .dmv-float__net--rubika, body.dmv-design .dmv-float__net--eitaa { border-color: rgba(200, 155, 107, .4); }
@media (max-width: 600px) { .dmv-float { right: 14px !important; bottom: 14px; } }

/* ===================================================================== *
 * C3 — sign-in / sign-up (OTP form of «Login with phone number»)
 * ===================================================================== */
body.dmv-auth .hero-section, body.dmv-auth .entry-header { display: none !important; }
body.dmv-auth #main .ct-container-full, body.dmv-auth #main > .ct-container { padding-top: 0 !important; }
body.dmv-auth .entry-content { max-width: 1180px !important; margin: 0 auto !important; padding: clamp(24px, 4vw, 56px) 16px clamp(40px, 6vw, 80px) !important; }
body.dmv-auth .entry-content > .woocommerce {
	position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); min-height: 620px;
	border-radius: 28px; overflow: hidden; border: 1px solid #23262B; background: #0F1012;
	box-shadow: 0 30px 80px rgba(0, 0, 0, .45);
}
/* Photo panel (grid item drawn by the stylesheet). */
body.dmv-auth .entry-content > .woocommerce::before {
	content: ""; grid-column: 2; grid-row: 1 / span 3; min-height: 100%;
	background: linear-gradient(90deg, rgba(15, 16, 18, .55) 0%, rgba(15, 16, 18, 0) 38%), var(--dmv-auth-img) center 62% / cover no-repeat;
}
body.dmv-auth .entry-content > .woocommerce > .woocommerce-notices-wrapper { grid-column: 1; grid-row: 1; padding: 0 clamp(20px, 3vw, 44px); }
body.dmv-auth .lwp_forms_login { grid-column: 1; grid-row: 2; align-self: center; padding: clamp(28px, 4vw, 56px) clamp(20px, 3.4vw, 52px); }
body.dmv-auth .lwp_forms_login > form, body.dmv-auth form.ajax-auth {
	position: relative !important; inset: auto !important; transform: none !important; margin: 0 auto !important;
	width: 100% !important; max-width: 400px !important; padding: 0 !important;
	background: transparent !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important;
	color: #E8E8EA; text-align: start; direction: rtl; font-family: var(--dmv-font);
}
body.dmv-auth form.ajax-auth .lh1 {
	margin: 0 0 6px !important; padding: 0 !important; text-align: start !important; color: #FFFFFF !important;
	font-size: clamp(24px, 2.4vw, 30px) !important; font-weight: 800 !important; line-height: 1.5 !important; font-family: var(--dmv-font) !important;
}
body.dmv-auth form.ajax-auth .lh1::after {
	content: "با شماره موبایل وارد شوید؛ اگر حساب ندارید، همین‌جا ساخته می‌شود."; display: block; margin-top: 6px;
	font-size: 14px; font-weight: 400; color: #A9AEB5; line-height: 1.9;
}
body.dmv-auth #lwp_activate .lh1::after, body.dmv-auth #lwp_enter_password .lh1::after, body.dmv-auth #lwp_login_email .lh1::after { content: none; }
body.dmv-auth form.ajax-auth .status { min-height: 0; margin: 8px 0 !important; font-size: 13.5px; color: #E2BE93 !important; text-align: start !important; }
body.dmv-auth form.ajax-auth .lwp_labels, body.dmv-auth form.ajax-auth label {
	display: block; margin: 18px 0 8px !important; color: #C9CCD1 !important; font-size: 13.5px !important; font-weight: 600 !important; text-align: start !important; float: none !important; opacity: 1 !important;
}
body.dmv-auth form.ajax-auth input[type="tel"], body.dmv-auth form.ajax-auth input[type="text"], body.dmv-auth form.ajax-auth input[type="email"],
body.dmv-auth form.ajax-auth input[type="password"], body.dmv-auth form.ajax-auth input[type="number"] {
	width: 100% !important; height: 54px !important; margin: 0 !important; padding: 0 16px !important; border-radius: 14px !important;
	border: 1px solid #2E3238 !important; background: #15171A !important; color: #FFFFFF !important;
	font-size: 17px !important; letter-spacing: .5px; box-shadow: none !important; direction: ltr; text-align: left;
	font-family: var(--dmv-font) !important; transition: border-color .2s, box-shadow .2s;
}
body.dmv-auth form.ajax-auth input:focus { outline: none !important; border-color: #C89B6B !important; box-shadow: 0 0 0 3px rgba(200, 155, 107, .2) !important; }
body.dmv-auth form.ajax-auth input::placeholder { color: #6B7178 !important; }
body.dmv-auth .iti { width: 100%; direction: ltr; }
body.dmv-auth .iti__selected-flag, body.dmv-auth .iti__country-container { border-radius: 14px 0 0 14px; }
body.dmv-auth .iti__country-list { background: #15171A; color: #E8E8EA; border-color: #2E3238; }
body.dmv-auth form.ajax-auth .accept_terms_and_conditions {
	display: flex !important; align-items: flex-start; gap: 10px; margin: 16px 0 6px !important; padding: 0 !important; text-align: start !important;
	direction: rtl; font-size: 12.5px !important; color: #9AA0A6 !important; line-height: 1.9;
}
body.dmv-auth form.ajax-auth .accept_terms_and_conditions input { flex: none; width: 18px !important; height: 18px !important; margin: 4px 0 0 !important; accent-color: #C89B6B; }
body.dmv-auth form.ajax-auth .accept_terms_and_conditions a { color: #E2BE93 !important; }
body.dmv-auth form.ajax-auth .submit_button, body.dmv-auth form.ajax-auth button[type="submit"] {
	display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 54px !important;
	margin: 16px 0 0 !important; padding: 0 16px !important; border: 0 !important; border-radius: 14px !important;
	background: linear-gradient(135deg, #D7AE7F 0%, #C89B6B 55%, #B5875A 100%) !important; color: #141414 !important;
	font-family: var(--dmv-font) !important; font-size: 16px !important; font-weight: 800 !important; cursor: pointer;
	box-shadow: 0 10px 26px rgba(200, 155, 107, .25) !important; transition: filter .2s, transform .2s;
}
body.dmv-auth form.ajax-auth .submit_button:hover { filter: brightness(1.06); transform: translateY(-1px); }
body.dmv-auth form.ajax-auth .submit_button.secondaryccolor, body.dmv-auth form.ajax-auth .submit_button.lwp_didnt_r_c,
body.dmv-auth form.ajax-auth .auth_with_email, body.dmv-auth form.ajax-auth .auth_with_phoneNumber {
	margin-top: 10px !important; height: 48px !important; background: transparent !important; color: #E8E8EA !important;
	border: 1px solid #34383F !important; box-shadow: none !important; font-weight: 600 !important; font-size: 14.5px !important;
}
body.dmv-auth form.ajax-auth .submit_button.secondaryccolor:hover, body.dmv-auth form.ajax-auth .auth_with_email:hover { border-color: #C89B6B !important; color: #FFFFFF !important; }
body.dmv-auth form.ajax-auth .lwp_disable { opacity: .55; cursor: not-allowed; }
body.dmv-auth form.ajax-auth .lwp_timer, body.dmv-auth form.ajax-auth .lwp_top_activation, body.dmv-auth form.ajax-auth .lwp_bottom_activation { color: #A9AEB5 !important; font-size: 13px !important; text-align: start !important; }
body.dmv-auth form.ajax-auth .lwp_line { border-color: #23262B !important; background: #23262B !important; height: 1px; margin: 18px 0 !important; }
body.dmv-auth form.ajax-auth .lwp_change_pn, body.dmv-auth form.ajax-auth .lwp_change_el, body.dmv-auth form.ajax-auth a.forgot_password { color: #E2BE93 !important; font-size: 13.5px !important; }
body.dmv-auth form.ajax-auth a.close { display: none !important; }
body.dmv-auth form.ajax-auth .lwp_scode, body.dmv-auth form.ajax-auth #lwp_scode { text-align: center !important; font-size: 24px !important; letter-spacing: 10px !important; }
/* Phones and small tablets: photo banner above the form. */
@media (max-width: 860px) {
	body.dmv-auth .entry-content > .woocommerce { grid-template-columns: 1fr; min-height: 0; border-radius: 22px; }
	body.dmv-auth .entry-content > .woocommerce::before {
		grid-column: 1; grid-row: 1; min-height: 200px; height: 34vw; max-height: 260px;
		background: linear-gradient(180deg, rgba(15, 16, 18, 0) 40%, #0F1012 100%), var(--dmv-auth-img-s) center 58% / cover no-repeat;
	}
	body.dmv-auth .entry-content > .woocommerce > .woocommerce-notices-wrapper { grid-row: 2; }
	body.dmv-auth .lwp_forms_login { grid-row: 3; padding: 8px 20px 30px; }
}
/* Signed-in account area: keep the page title clear of the sticky header. */
body.dmv-account:not(.dmv-auth) .hero-section { padding-top: clamp(28px, 4vw, 48px); }

/* ===================================================================== *
 * P2–P5 — product page & selector (second generation)
 * ===================================================================== */
/* P2: description on the right, photo on the left. */
@media (min-width: 900px) {
	body.dmv-design .dmv-product__top { grid-template-columns: minmax(0, 1fr) minmax(320px, 500px); gap: 48px; align-items: center; }
	body.dmv-design .dmv-product__info { order: -1; }
}
body.dmv-design .dmv-product__media .dv-product-media { border-radius: 24px; box-shadow: 0 24px 60px rgba(0, 0, 0, .35); }
body.dmv-design .dmv-product__info .dv-product__title { font-size: clamp(26px, 3.2vw, 40px); font-weight: 800; line-height: 1.5; }
body.dmv-design .dmv-product__info .dmv-eyebrow a { color: #C89B6B; text-decoration: none; }
body.dmv-design .dmv-product__excerpt { color: #B9BDC3; line-height: 2; font-size: 15px; max-width: 62ch; }
body.dmv-design .dmv-product__axes { color: #8E949B; font-size: 13.5px; }
body.dmv-design .dmv-product__badges .dv-badge--available { background: rgba(52, 199, 123, .14); color: #6FE0A4; border: 1px solid rgba(52, 199, 123, .45); }

/* Selector card. */
body.dmv-design .dmv-product__selector { padding: 0; overflow: hidden; border-radius: 24px; border-color: #23262B; background: #111214; }
body.dmv-design .dmv-product__selector-head { padding: 26px 28px 0; margin: 0; }
body.dmv-design .dmv-product__selector-head .dmv-section__title { font-size: 22px; margin: 0; }
body.dmv-design .dmv-product__selector-head p { font-size: 14px; color: #9AA0A6; }
body.dmv-design .dmv-product__selector .dv-selector__body { padding: 18px 28px 28px; transition: opacity .15s; }
@media (max-width: 600px) {
	body.dmv-design .dmv-product__selector-head { padding: 20px 16px 0; }
	body.dmv-design .dmv-product__selector .dv-selector__body { padding: 14px 14px 20px; }
}
.dmv-sel { display: flex; flex-direction: column; gap: 18px; }

/* Bar: count · «فقط کالاهای موجود» · reset. */
.dmv-sel__bar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; padding: 10px 14px; border-radius: 14px; background: #16181B; border: 1px solid #23262B; }
.dmv-sel__count { font-size: 14px; color: #D7D9DD; font-weight: 600; margin-inline-end: auto; }
.dmv-sel__only { margin: 0; }
body.dmv-design .dmv-switch { display: inline-flex !important; align-items: center; gap: 10px; min-height: 36px !important; padding: 0 4px !important; border: 0 !important; background: none !important; color: #C9CCD1 !important; font-size: 13.5px !important; font-weight: 600; cursor: pointer; width: auto !important; }
.dmv-switch__knob { position: relative; width: 38px; height: 22px; border-radius: 999px; background: #2A2E33; transition: background .2s; flex: none; }
.dmv-switch__knob::after { content: ""; position: absolute; top: 3px; right: 3px; width: 16px; height: 16px; border-radius: 50%; background: #8E949B; transition: transform .2s, background .2s; }
.dmv-switch.is-on .dmv-switch__knob { background: rgba(52, 199, 123, .35); }
.dmv-switch.is-on .dmv-switch__knob::after { transform: translateX(-16px); background: #34C77B; }
body.dmv-design .dmv-sel__reset { font-size: 13.5px; color: #E2BE93; text-decoration: none; }

/* Quick buy. */
.dmv-quick { border-radius: 18px; padding: 16px; background: linear-gradient(180deg, rgba(52, 199, 123, .08), rgba(52, 199, 123, .02)); border: 1px solid rgba(52, 199, 123, .28); }
.dmv-quick__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; margin-bottom: 12px; }
body.dmv-design .dmv-quick__title { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 16.5px; font-weight: 800; color: #EAFBF1; }
body.dmv-design .dmv-quick__sub { margin: 0; font-size: 13px; color: #9FD6B8; }
.dmv-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #34C77B; box-shadow: 0 0 0 3px rgba(52, 199, 123, .2); flex: none; }
.dmv-quick__list { list-style: none; margin: 0; padding: 0 0 4px; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(230px, 1fr); gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
@media (min-width: 1100px) { .dmv-quick__list { grid-auto-flow: row; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: visible; } }
.dmv-qcard { scroll-snap-align: start; display: flex; flex-direction: column; gap: 10px; padding: 14px; border-radius: 14px; background: #121416; border: 1px solid #262A2F; transition: border-color .2s, transform .2s; }
.dmv-qcard:hover { border-color: rgba(52, 199, 123, .55); transform: translateY(-2px); }
.dmv-qcard.is-featured { border-color: rgba(200, 155, 107, .55); }
.dmv-qcard__top { display: flex; flex-wrap: wrap; gap: 6px; }
.dmv-qbadge { display: inline-flex; align-items: center; height: 24px; padding: 0 10px; border-radius: 999px; font-size: 12px; font-weight: 700; }
.dmv-qbadge--available { background: rgba(52, 199, 123, .16); color: #6FE0A4; }
.dmv-qbadge--fast_supply { background: rgba(240, 160, 60, .16); color: #F2B266; }
.dmv-qbadge--hot { background: rgba(200, 155, 107, .18); color: #E2BE93; }
body.dmv-design .dmv-qcard__spec { margin: 0; display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: 13.5px; color: #E8E8EA; line-height: 1.8; }
body.dmv-design .dmv-qcard__spec em { font-style: normal; color: #8E949B; font-size: 12px; margin-inline-end: 3px; }
body.dmv-design .dmv-qcard__price { font-size: 15.5px; font-weight: 800; color: #FFFFFF; }
body.dmv-design .dmv-qcard__price del { color: #7D838A; font-weight: 400; font-size: 13px; margin-inline-end: 6px; }
body.dmv-design .dmv-qcard__price ins { text-decoration: none; color: #6FE0A4; }
.dmv-qcard__cta { display: flex; gap: 8px; margin-top: auto; }
.dmv-qcard__cta form { margin: 0; flex: 1; display: flex; }
.dmv-qcard__cta form:only-child { flex: 1; }
body.dmv-design .dmv-btn--sm { min-height: 40px !important; height: 40px; padding: 0 12px !important; font-size: 13.5px !important; border-radius: 12px !important; width: 100%; justify-content: center; }
body.dmv-design .dmv-qcard__buy .dmv-btn--primary { background: linear-gradient(135deg, #D7AE7F, #C89B6B 55%, #B5875A) !important; color: #141414 !important; border: 0 !important; font-weight: 800; }
body.dmv-design .dmv-qcard .dv-selector__option.dmv-btn--ghost { min-height: 40px; background: transparent; border: 1px solid #34383F; color: #E8E8EA; font-weight: 600; }

/* Steps. */
.dmv-steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; border: 1px solid #23262B; border-radius: 18px; overflow: hidden; }
.dmv-step { padding: 14px 16px; border-top: 1px solid #1E2124; background: #121416; transition: background .2s; }
.dmv-step:first-child { border-top: 0; }
.dmv-step.is-active { background: #16181B; box-shadow: inset 3px 0 0 #C89B6B; }
.dmv-step.is-locked { opacity: .5; }
.dmv-step__head { display: flex; align-items: center; gap: 12px; min-height: 36px; }
.dmv-step__n { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; border: 1px solid #34383F; color: #A9AEB5; font-size: 13px; font-weight: 700; }
.dmv-step.is-active .dmv-step__n { border-color: #C89B6B; color: #141414; background: #C89B6B; }
.dmv-step.is-done .dmv-step__n { border-color: rgba(52, 199, 123, .5); color: #6FE0A4; background: rgba(52, 199, 123, .12); }
body.dmv-design .dmv-step__label { font-size: 15px; font-weight: 700; color: #F4F4F5; min-width: 70px; }
body.dmv-design .dmv-step__label small { font-weight: 400; color: #8E949B; font-size: 12px; }
.dmv-step__value { display: inline-flex; align-items: center; height: 30px; padding: 0 12px; border-radius: 999px; background: rgba(200, 155, 107, .12); border: 1px solid rgba(200, 155, 107, .45); color: #FFFFFF; font-weight: 700; font-size: 14px; }
.dmv-step__edit { margin: 0 0 0 0; margin-inline-start: auto; }
body.dmv-design .dmv-linkbtn { min-height: 32px !important; padding: 0 6px !important; border: 0 !important; background: none !important; color: #E2BE93 !important; font-size: 13.5px !important; font-weight: 600; width: auto !important; cursor: pointer; }
body.dmv-design .dmv-linkbtn:hover { color: #FFFFFF !important; }
.dmv-step__wait { margin-inline-start: auto; font-size: 12.5px; color: #6B7178; }
.dmv-step__body { margin: 12px 0 2px; padding-inline-start: 40px; }
@media (max-width: 600px) { .dmv-step__body { padding-inline-start: 0; } }
.dmv-chips2 { border: 0; margin: 0; padding: 0; min-width: 0; display: flex; flex-wrap: wrap; gap: 8px; }
body.dmv-design .dmv-chip2 {
	position: relative; display: inline-flex !important; align-items: center; justify-content: center; min-width: 64px; min-height: 42px !important; width: auto !important;
	padding: 0 16px !important; border-radius: 12px !important; border: 1px solid #2E3238 !important; background: #1A1C1F !important;
	color: #E8E8EA !important; font-size: 14.5px !important; font-weight: 600; cursor: pointer; transition: border-color .15s, background-color .15s, color .15s, transform .15s;
}
body.dmv-design .dmv-chip2:hover, body.dmv-design .dmv-chip2:focus-visible { border-color: #C89B6B !important; color: #FFFFFF !important; background: rgba(200, 155, 107, .1) !important; transform: translateY(-1px); }
body.dmv-design .dmv-chip2.has-ready::after { content: ""; position: absolute; top: 6px; inset-inline-end: 6px; width: 7px; height: 7px; border-radius: 50%; background: #34C77B; box-shadow: 0 0 0 2px #1A1C1F; }
body.dmv-design .dmv-chip2.has-ready { border-color: rgba(52, 199, 123, .45) !important; }
body.dmv-design .dmv-chips2__legend { display: inline-flex; align-items: center; gap: 8px; margin: 10px 0 0; font-size: 12.5px; color: #8E949B; }

/* P5: compact result card. */
.dmv-sel__result { border-radius: 18px; border: 1px solid #2A2E33; background: #141618; padding: 18px; }
body.dmv-design .dmv-sel__result .dv-selector__summary { margin-bottom: 12px; }
body.dmv-design .dmv-sel__result .dv-selector__chips { display: none; }
body.dmv-design .dmv-sel__result .dv-variant { padding: 0; border: 0; background: none; gap: 10px 28px; }
body.dmv-design .dmv-sel__result .dv-variant__name { font-size: 17px; line-height: 1.8; }
body.dmv-design .dmv-sel__result .dv-variant__attrs { font-size: 13.5px; line-height: 1.9; }
body.dmv-design .dmv-sel__result .dv-variant__price { font-size: 20px; font-weight: 800; color: #FFFFFF; }
body.dmv-design .dmv-sel__result .dv-variant__cta { background: #101113; border: 1px solid #23262B; border-radius: 16px; padding: 16px; }
body.dmv-design .dmv-sel__result .dv-variant__form { display: flex; gap: 10px; align-items: stretch; }
body.dmv-design .dmv-sel__result .dv-variant__qty { width: 84px; height: 48px; border-radius: 12px; background: #15171A; border: 1px solid #2E3238; color: #fff; text-align: center; }
body.dmv-design .dmv-sel__result .dv-variant__form .single_add_to_cart_button { flex: 1; height: 48px; border-radius: 12px; font-weight: 800; }
/* Inquiry form inside the result: tight, two columns on wide screens. */
body.dmv-design .dmv-sel__result .dv-variant__cta form:not(.dv-variant__form) { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0; }
body.dmv-design .dmv-sel__result .dv-variant__cta form:not(.dv-variant__form) > * { margin: 0 !important; }
body.dmv-design .dmv-sel__result .dv-variant__cta form:not(.dv-variant__form) p { grid-column: span 1; }
body.dmv-design .dmv-sel__result .dv-variant__cta form:not(.dv-variant__form) textarea,
body.dmv-design .dmv-sel__result .dv-variant__cta form:not(.dv-variant__form) [type="submit"],
body.dmv-design .dmv-sel__result .dv-variant__cta form:not(.dv-variant__form) h3,
body.dmv-design .dmv-sel__result .dv-variant__cta form:not(.dv-variant__form) .dv-inquiry__title { grid-column: 1 / -1; }
body.dmv-design .dmv-sel__result .dv-variant__cta input:not([type="hidden"]):not([type="checkbox"]), body.dmv-design .dmv-sel__result .dv-variant__cta textarea, body.dmv-design .dmv-sel__result .dv-variant__cta select {
	width: 100%; min-height: 46px; border-radius: 12px; background: #15171A; border: 1px solid #2E3238; color: #fff; padding: 0 12px; font-size: 14.5px;
}
body.dmv-design .dmv-sel__result .dv-variant__cta textarea { min-height: 76px; padding: 10px 12px; }
body.dmv-design .dmv-sel__result .dv-variant__cta label { font-size: 13px; color: #A9AEB5; margin-bottom: 4px; display: block; }
@media (max-width: 600px) { body.dmv-design .dmv-sel__result .dv-variant__cta form:not(.dv-variant__form) { grid-template-columns: 1fr; } }
body.dmv-design .dmv-sel__result .dv-variant__form { flex-direction: row !important; flex-wrap: nowrap !important; }
body.dmv-design .dmv-sel__result .dv-variant__form .dv-variant__qty { flex: 0 0 84px !important; width: 84px !important; margin: 0 !important; }

/* ===================================================================== *
 * 0.3.3 — Founder review round 3 (header pill, ready options, sign-in)
 * ===================================================================== */

/* H1 — «دسته‌بندی محصولات» wears the same dark glass as its neighbours (links, language/cart). */
body.dmv-design .dmv-hdr .dmv-catmenu__btn {
	height: 48px; padding: 0 18px; gap: 10px;
	background: rgba(11, 11, 13, .58); border: 1px solid rgba(255, 255, 255, .09); color: #ECEDEF;
	-webkit-backdrop-filter: blur(10px) saturate(1.1); backdrop-filter: blur(10px) saturate(1.1);
	transition: background-color .2s, border-color .2s, color .2s;
}
body.dmv-design .dmv-hdr .dmv-catmenu__btn .dmv-ico--chevron { color: #A9AEB5; }
body.dmv-design .dmv-hdr .dmv-catmenu__btn:hover { background: rgba(28, 30, 34, .72); border-color: rgba(255, 255, 255, .18); color: #FFFFFF; }
body.dmv-design .dmv-hdr .dmv-catmenu__btn:focus-visible { outline: 2px solid rgba(200, 155, 107, .7); outline-offset: 2px; }
body.dmv-design .dmv-hdr .dmv-catmenu.is-open .dmv-catmenu__btn { background: rgba(28, 30, 34, .78); border-color: rgba(200, 155, 107, .5); color: #FFFFFF; }
body.dmv-design .dmv-hdr .dmv-catmenu.is-open .dmv-catmenu__btn .dmv-ico--chevron { color: #C89B6B; }
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
	body.dmv-design .dmv-hdr .dmv-catmenu__btn { background: rgba(11, 11, 13, .82); }
}

/* H5 — options that lead to a ready item (in stock + priced, or «تأمین سریع»): green glass + «موجود» tag. */
body.dmv-design .dmv-sel__legend { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 20px; margin: 0 0 -4px; padding: 0 4px; font-size: 12.5px; color: #A9AEB5; }
.dmv-sel__key { display: inline-flex; align-items: center; gap: 8px; }
.dmv-sel__key i { display: inline-block; width: 20px; height: 13px; border-radius: 5px; border: 1px solid #3A3F46; background: #1A1C1F; }
.dmv-sel__key--ready { color: #A7DDBF; }
.dmv-sel__key--ready i { background: linear-gradient(180deg, rgba(52, 199, 123, .26), rgba(52, 199, 123, .1)); border-color: rgba(52, 199, 123, .65); }
.dmv-chips2:has(.has-ready) { row-gap: 16px; padding-top: 7px; }
body.dmv-design .dmv-chip2.has-ready {
	background: linear-gradient(180deg, rgba(52, 199, 123, .17) 0%, rgba(52, 199, 123, .07) 100%) !important;
	border-color: rgba(52, 199, 123, .55) !important; color: #EFFBF4 !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), 0 6px 16px rgba(52, 199, 123, .06);
}
body.dmv-design .dmv-chip2.has-ready::after { content: none; }
body.dmv-design .dmv-chip2.has-ready:hover, body.dmv-design .dmv-chip2.has-ready:focus-visible {
	background: linear-gradient(180deg, rgba(52, 199, 123, .26) 0%, rgba(52, 199, 123, .12) 100%) !important; border-color: #34C77B !important; color: #FFFFFF !important;
}
.dmv-chip2__tag {
	position: absolute; top: -8px; inset-inline-end: 8px; display: inline-flex; align-items: center; gap: 3px; height: 16px; padding: 0 7px;
	border-radius: 999px; background: #0E2419; border: 1px solid rgba(52, 199, 123, .6); color: #7BE6AD;
	font-size: 10px; font-weight: 700; line-height: 1; letter-spacing: 0; white-space: nowrap; pointer-events: none;
}
.dmv-chip2__tag::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: #34C77B; }
@media (prefers-reduced-motion: reduce) { body.dmv-design .dmv-chip2 { transition: none; } }

/* C5/C9 — sign-in steps: gold primary («ثبت», «فعال‌سازی», «ورود»), quiet ghost secondaries, tidy code step. */
body.dmv-auth form.ajax-auth .submit_button.secondaryccolor, body.dmv-auth form.ajax-auth .submit_button.lwp_didnt_r_c,
body.dmv-auth form.ajax-auth .submit_button.forgot_password, body.dmv-auth form.ajax-auth .auth_with_email, body.dmv-auth form.ajax-auth .auth_with_phoneNumber {
	margin-top: 10px !important; height: 46px !important; background: transparent !important; color: #E8E8EA !important;
	border: 1px solid rgba(200, 155, 107, .42) !important; box-shadow: none !important; font-weight: 600 !important; font-size: 14.5px !important;
	transition: background-color .2s, border-color .2s, color .2s, opacity .2s !important; transform: none !important; filter: none !important;
}
body.dmv-auth form.ajax-auth .submit_button.secondaryccolor:hover, body.dmv-auth form.ajax-auth .submit_button.lwp_didnt_r_c:hover,
body.dmv-auth form.ajax-auth .submit_button.forgot_password:hover, body.dmv-auth form.ajax-auth .auth_with_email:hover, body.dmv-auth form.ajax-auth .auth_with_phoneNumber:hover {
	background: rgba(200, 155, 107, .1) !important; border-color: #C89B6B !important; color: #FFFFFF !important;
}
body.dmv-auth form.ajax-auth .submit_button.lwp_didnt_r_c.lwp_disable { opacity: 1; color: #7D838A !important; border-color: #2A2E33 !important; background: rgba(255, 255, 255, .02) !important; }
body.dmv-auth form.ajax-auth .submit_button:focus-visible { outline: 2px solid rgba(200, 155, 107, .7) !important; outline-offset: 2px; }
body.dmv-auth form.ajax-auth .auth_secCode, body.dmv-auth form.ajax-auth .auth_phoneNumber, body.dmv-auth form.ajax-auth .login_with_pass { margin-top: 18px !important; }
/* Code step: title · status · code · note · activate · resend (+ countdown) · change number. */
body.dmv-auth #lwp_activate.dmv-otp .lwp_top_activation { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
body.dmv-auth #lwp_activate .lh1::after { content: "کد تأیید را وارد کنید تا وارد حساب خود شوید."; display: block; margin-top: 6px; font-size: 14px; font-weight: 400; color: #A9AEB5; line-height: 1.9; }
body.dmv-auth #lwp_activate .lwp_scode_parent .lwp_labels { margin-top: 20px !important; }
body.dmv-auth form.ajax-auth #lwp_scode { height: 58px !important; font-size: 26px !important; font-weight: 700; letter-spacing: 12px !important; text-indent: 12px; background: rgba(21, 23, 26, .9) !important; }
body.dmv-auth form.ajax-auth .dmv-otp-hint {
	display: flex !important; align-items: flex-start; gap: 9px; margin: 12px 2px 0 !important; padding: 0 !important;
	background: none; border: 0; color: #B9BDC3 !important; font-size: 13.5px !important; line-height: 1.9 !important; text-align: start !important;
}
body.dmv-auth .dmv-otp-hint::before { content: ""; flex: none; width: 7px; height: 7px; margin-top: 9px; border-radius: 50%; background: #34C77B; box-shadow: 0 0 0 3px rgba(52, 199, 123, .18); }
body.dmv-auth form.ajax-auth .dmv-otp-hint.is-voice { color: #E9D3B6 !important; }
body.dmv-auth .dmv-otp-hint.is-voice::before { background: #C89B6B; box-shadow: 0 0 0 3px rgba(200, 155, 107, .2); }
body.dmv-auth form.ajax-auth .dmv-otp-timer { margin: 8px 0 0 !important; text-align: center; font-size: 12.5px; color: #8E949B; font-variant-numeric: tabular-nums; }
body.dmv-auth .dmv-otp-timer[hidden] { display: none !important; }
body.dmv-auth form.ajax-auth .lwp_line { width: 100% !important; margin: 22px 0 14px !important; border: 0 !important; }
body.dmv-auth form.ajax-auth .lwp_bottom_activation { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0 !important; text-align: center !important; }
body.dmv-auth form.ajax-auth .lwp_bottom_activation[style*="none"] { display: none !important; }
body.dmv-auth form.ajax-auth .lwp_bottom_activation a[style*="none"] { display: none !important; }
body.dmv-auth form.ajax-auth .lwp_change_pn, body.dmv-auth form.ajax-auth .lwp_change_el, body.dmv-auth form.ajax-auth a.forgot_password {
	display: inline-flex !important; align-items: center; justify-content: center; min-height: 38px; padding: 0 16px; border-radius: 999px;
	border: 1px solid transparent; color: #E2BE93 !important; font-size: 13.5px !important; font-weight: 600; text-decoration: none !important;
	transition: border-color .2s, background-color .2s, color .2s;
}
body.dmv-auth form.ajax-auth .lwp_change_pn:hover, body.dmv-auth form.ajax-auth .lwp_change_el:hover, body.dmv-auth form.ajax-auth a.forgot_password:hover {
	border-color: rgba(200, 155, 107, .4); background: rgba(200, 155, 107, .08); color: #FFFFFF !important;
}
@media (max-width: 860px) {
	body.dmv-auth form.ajax-auth #lwp_scode { height: 54px !important; font-size: 22px !important; letter-spacing: 9px !important; }
	body.dmv-auth form.ajax-auth .dmv-otp-hint { font-size: 13px !important; }
}

/* C8 — «نام و نام خانوادگی» card at the top of the account dashboard (until a first name is saved). */
body.dmv-design .dmv-namecard {
	position: relative; margin: 0 0 26px; padding: 20px 22px; border-radius: 20px; overflow: hidden;
	background: linear-gradient(135deg, rgba(200, 155, 107, .09) 0%, rgba(21, 23, 26, .72) 45%), rgba(17, 18, 20, .8);
	border: 1px solid rgba(200, 155, 107, .28); box-shadow: 0 18px 40px rgba(0, 0, 0, .3);
	-webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
}
.dmv-namecard__head { margin-bottom: 14px; }
body.dmv-design .dmv-namecard__title { margin: 0; font-size: 17px; font-weight: 800; color: #FFFFFF; line-height: 1.6; }
body.dmv-design .dmv-namecard__sub { margin: 2px 0 0; font-size: 13.5px; color: #A9AEB5; line-height: 1.9; }
.dmv-namecard__form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; gap: 12px; align-items: end; margin: 0; }
body.dmv-design .dmv-namecard__field { margin: 0; display: flex; flex-direction: column; gap: 6px; }
body.dmv-design .dmv-namecard__field label { font-size: 13px; font-weight: 600; color: #C9CCD1; margin: 0; }
body.dmv-design .dmv-namecard__field input {
	width: 100%; height: 48px; margin: 0; padding: 0 14px; border-radius: 12px; border: 1px solid #2E3238; background: #15171A; color: #FFFFFF;
	font-family: var(--dmv-font); font-size: 15px; box-shadow: none; transition: border-color .2s, box-shadow .2s;
}
body.dmv-design .dmv-namecard__field input:focus { outline: none; border-color: #C89B6B; box-shadow: 0 0 0 3px rgba(200, 155, 107, .2); }
body.dmv-design .dmv-namecard__save { min-height: 48px; height: 48px; padding: 0 28px; border-radius: 12px; font-weight: 800; }
@media (max-width: 640px) {
	.dmv-namecard__form { grid-template-columns: 1fr; }
	body.dmv-design .dmv-namecard__save { width: 100%; justify-content: center; }
	body.dmv-design .dmv-namecard { padding: 18px 16px; }
}

/* damavand-sf-minicart */
/*
 * Damavand Storefront R12-A (0.3.4) — compact selector, quantity stepper, side cart drawer.
 * Founder CK1–CK7. Loaded after elementor-layout.css / woocommerce.css; works down to 360px.
 */

/* ===================================================================== *
 * Quantity stepper (CK3) — product card, «آماده ارسال» cards, drawer lines
 * ===================================================================== */
.dmv-qty { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
body.dmv-design .dmv-qty__label { margin: 0; font-size: 12.5px; font-weight: 600; color: #A9AEB5; line-height: 1.6; }
.dmv-qty__ctl { display: inline-flex; align-items: stretch; height: 44px; border-radius: 12px; border: 1px solid #2E3238; background: #15171A; overflow: hidden; width: max-content; }
.dmv-qty__ctl:focus-within { border-color: #C89B6B; box-shadow: 0 0 0 3px rgba(200, 155, 107, .18); }
body.dmv-design .dmv-qty .dmv-qty__btn {
	flex: none; width: 40px; min-height: 0 !important; height: auto; padding: 0 !important; margin: 0; border: 0 !important; border-radius: 0 !important;
	background: transparent !important; color: #E8E8EA !important; font-size: 20px !important; font-weight: 600; line-height: 1; cursor: pointer; box-shadow: none !important;
	transition: background-color .15s, color .15s;
}
body.dmv-design .dmv-qty .dmv-qty__btn:hover { background: rgba(200, 155, 107, .12) !important; color: #FFFFFF !important; }
body.dmv-design .dmv-qty input.dmv-qty__input {
	width: 56px !important; min-width: 0; min-height: 0 !important; height: auto !important; flex: 0 0 56px !important; margin: 0 !important; padding: 0 4px !important;
	border: 0 !important; border-inline: 1px solid #23262B !important; border-radius: 0 !important; outline: none !important; box-shadow: none !important;
	background: transparent !important; color: #FFFFFF !important; text-align: center; font-size: 16px !important; font-weight: 700; font-variant-numeric: tabular-nums;
}
.dmv-qty__total { font-size: 13px; color: #A9AEB5; }
.dmv-qty__total b { color: #FFFFFF; font-weight: 800; font-size: 15px; }
.dmv-qty__total .woocommerce-Price-currencySymbol { font-size: 12px; font-weight: 600; color: #C9CCD1; }
.dmv-qty__min { font-size: 12px; color: #8E949B; }
.dmv-qty--compact .dmv-qty__ctl { height: 36px; border-radius: 10px; }
body.dmv-design .dmv-qty--compact .dmv-qty__btn { width: 32px; font-size: 18px !important; }
body.dmv-design .dmv-qty--compact input.dmv-qty__input { width: 42px !important; flex-basis: 42px !important; font-size: 15px !important; }

/* ===================================================================== *
 * Selector: compact & conceptual (CK6, CK7)
 * ===================================================================== */
body.dmv-design .dmv-product__selector-head { padding: 20px 22px 0; }
body.dmv-design .dmv-product__selector-head .dmv-section__title { font-size: 19px; }
body.dmv-design .dmv-product__selector-head p { font-size: 13px; line-height: 1.9; margin: 4px 0 0; }
body.dmv-design .dmv-product__selector .dv-selector__body { padding: 14px 22px 22px; }
body.dmv-design .dmv-product__selector .dv-selector__body.is-loading { opacity: .55; pointer-events: none; }
.dmv-sel { gap: 12px; }

/* Bar. */
.dmv-sel__bar { padding: 4px 6px 4px 10px; gap: 6px 12px; border-radius: 12px; }
body.dmv-design .dmv-sel__count { font-size: 13px; }
body.dmv-design .dmv-sel .dmv-switch { min-height: 32px !important; font-size: 12.5px !important; gap: 8px; }
.dmv-sel .dmv-switch__knob { width: 32px; height: 18px; }
.dmv-sel .dmv-switch__knob::after { width: 12px; height: 12px; }
.dmv-sel .dmv-switch.is-on .dmv-switch__knob::after { transform: translateX(-14px); }
body.dmv-design .dmv-sel__reset { font-size: 12.5px; }

/* Steps: chosen ones become one-line chips, only the current step is open, later ones wait as small pills. */
.dmv-sel .dmv-steps { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 6px; border: 0; border-radius: 0; overflow: visible; }
.dmv-sel .dmv-step { padding: 0; border: 0; background: none; box-shadow: none; }
.dmv-sel .dmv-step.is-done, .dmv-sel .dmv-step.is-locked { flex: 0 1 auto; min-width: 0; }
.dmv-sel .dmv-step.is-active { flex: 1 1 100%; order: 0; padding: 10px 12px 12px; border-radius: 14px; background: #16181B; border: 1px solid #2A2E33; box-shadow: inset -3px 0 0 #C89B6B; }
.dmv-sel .dmv-step.is-locked { opacity: 1; }
.dmv-sel .dmv-step__head { min-height: 0; gap: 8px; }
.dmv-sel .dmv-step.is-done .dmv-step__head {
	height: 34px; padding: 0 4px 0 10px; padding-inline: 10px 4px; border-radius: 999px; gap: 6px;
	background: rgba(200, 155, 107, .08); border: 1px solid rgba(200, 155, 107, .32);
}
.dmv-sel .dmv-step.is-done .dmv-step__n { width: 18px; height: 18px; font-size: 10px; border: 0; background: rgba(52, 199, 123, .18); }
body.dmv-design .dmv-sel .dmv-step.is-done .dmv-step__label { min-width: 0; font-size: 12px; font-weight: 500; color: #9AA0A6; }
body.dmv-design .dmv-sel .dmv-step.is-done .dmv-step__label small { display: none; }
.dmv-sel .dmv-step.is-done .dmv-step__value { height: auto; padding: 0; border: 0; background: none; font-size: 13.5px; font-weight: 800; color: #FFFFFF; white-space: nowrap; max-width: 14em; overflow: hidden; text-overflow: ellipsis; }
.dmv-sel .dmv-step.is-done .dmv-step__edit { margin: 0; }
body.dmv-design .dmv-sel .dmv-step.is-done .dmv-linkbtn { min-height: 26px !important; height: 26px; padding: 0 9px !important; border-radius: 999px !important; font-size: 11.5px !important; background: rgba(255, 255, 255, .05) !important; color: #E2BE93 !important; }
body.dmv-design .dmv-sel .dmv-step.is-done .dmv-linkbtn:hover { background: rgba(200, 155, 107, .16) !important; color: #FFFFFF !important; }
.dmv-sel .dmv-step.is-locked .dmv-step__head { height: 30px; padding: 0 10px; border-radius: 999px; border: 1px dashed #2E3238; gap: 6px; }
.dmv-sel .dmv-step.is-locked .dmv-step__n { width: 16px; height: 16px; border: 0; font-size: 11px; color: #6B7178; }
body.dmv-design .dmv-sel .dmv-step.is-locked .dmv-step__label { min-width: 0; font-size: 12px; font-weight: 500; color: #6B7178; }
body.dmv-design .dmv-sel .dmv-step.is-locked .dmv-step__label small { display: none; }
.dmv-sel .dmv-step.is-active .dmv-step__n { width: 22px; height: 22px; font-size: 12px; }
body.dmv-design .dmv-sel .dmv-step.is-active .dmv-step__label { font-size: 14px; }
.dmv-sel .dmv-step__body { margin: 10px 0 0; padding-inline-start: 0; }

/* Options: smaller, tighter. */
.dmv-sel .dmv-chips2 { gap: 6px; }
.dmv-sel .dmv-chips2:has(.has-ready) { row-gap: 13px; padding-top: 7px; }
body.dmv-design .dmv-sel .dmv-chip2 { min-width: 48px; min-height: 36px !important; padding: 0 12px !important; border-radius: 10px !important; font-size: 13.5px !important; }
body.dmv-design .dmv-sel .dmv-chip2:hover, body.dmv-design .dmv-sel .dmv-chip2:focus-visible { transform: none; }
.dmv-sel .dmv-chip2__tag { top: -7px; height: 14px; padding: 0 5px; font-size: 9.5px; inset-inline-end: 6px; }
body.dmv-design .dmv-sel__legend { font-size: 11.5px; gap: 4px 14px; margin: 0; }
.dmv-sel__legend .dmv-sel__key i { width: 16px; height: 11px; }

/* «آماده ارسال» strip (CK1, CK5). */
.dmv-sel .dmv-quick { padding: 12px; border-radius: 16px; }
.dmv-sel .dmv-quick__head { margin-bottom: 10px; gap: 2px 12px; }
body.dmv-design .dmv-sel .dmv-quick__title { font-size: 15px; }
body.dmv-design .dmv-sel .dmv-quick__sub { font-size: 12px; }
.dmv-sel .dmv-quick__list { grid-auto-columns: minmax(222px, 1fr); gap: 8px; }
.dmv-sel .dmv-qcard { gap: 8px; padding: 12px; border-radius: 13px; }
.dmv-sel .dmv-qcard:hover { transform: none; }
body.dmv-design .dmv-qcard__name {
	margin: 0; font-size: 12.5px; font-weight: 700; line-height: 1.75; color: #F1F2F3;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.dmv-sel .dmv-qbadge { height: 21px; padding: 0 8px; font-size: 11px; }
body.dmv-design .dmv-sel .dmv-qcard__spec { font-size: 12.5px; line-height: 1.7; gap: 2px 10px; }
body.dmv-design .dmv-sel .dmv-qcard__price { font-size: 14.5px; }
.dmv-sel .dmv-qcard__cta { flex-direction: column; gap: 6px; }
.dmv-sel .dmv-qcard__cta form { flex: none; }
.dmv-sel .dmv-qcard__buy { display: flex !important; flex-wrap: wrap; align-items: flex-end; gap: 6px; }
/* label on its own line, then [− 1 +][افزودن به سبد] side by side. */
.dmv-sel .dmv-qcard__buy .dmv-qty { display: contents; }
body.dmv-design .dmv-sel .dmv-qcard__buy .dmv-qty__label { flex: 1 1 100%; font-size: 11px; line-height: 1.4; }
.dmv-sel .dmv-qcard__buy .dmv-qty__ctl { flex: none; }
body.dmv-design .dmv-sel .dmv-qcard__buy .dmv-qty__btn { width: 28px; }
body.dmv-design .dmv-sel .dmv-qcard__buy input.dmv-qty__input { width: 36px !important; flex-basis: 36px !important; }
.dmv-sel .dmv-qcard__buy .dmv-qty__min { order: 3; flex: 1 1 100%; font-size: 11px; }
body.dmv-design .dmv-sel .dmv-qcard__buy .dmv-btn--sm { flex: 1 1 0; min-width: 0; width: auto; min-height: 36px !important; height: 36px; padding: 0 8px !important; font-size: 12.5px !important; border-radius: 10px !important; white-space: nowrap; }
body.dmv-design .dmv-sel .dmv-qcard .dv-selector__option.dmv-btn--ghost { min-height: 32px !important; height: 32px; font-size: 12.5px !important; border-radius: 10px !important; border-color: #2A2E33; }

/* Resolved item: compact card (the chosen values are already in the chips above). */
.dmv-sel .dmv-sel__result { padding: 14px; border-radius: 16px; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-selector__summary { margin-bottom: 6px; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-variant { gap: 8px 22px; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-variant__name { font-size: 15px; line-height: 1.8; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-variant__attrs { display: none; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-variant__price { font-size: 18px; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-variant__cta { padding: 12px; border-radius: 14px; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-variant__form { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; align-items: flex-end; gap: 10px 12px; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-variant__form .dmv-qty { flex: 1 1 150px; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-variant__form .dmv-qty input.dv-variant__qty { flex: 0 0 56px !important; width: 56px !important; height: auto !important; }
body.dmv-design .dmv-sel .dmv-sel__result .dv-variant__form .single_add_to_cart_button { flex: 1 1 170px; height: 44px; min-height: 44px; border-radius: 12px; }
.dmv-sel .dmv-sel__result .dmv-qty { display: grid; grid-template-columns: auto 1fr; grid-template-areas: "label label" "ctl total" "min min"; align-items: center; column-gap: 12px; row-gap: 5px; }
.dmv-sel .dmv-sel__result .dmv-qty__label { grid-area: label; }
.dmv-sel .dmv-sel__result .dmv-qty__ctl { grid-area: ctl; }
.dmv-sel .dmv-sel__result .dmv-qty__total { grid-area: total; }
.dmv-sel .dmv-sel__result .dmv-qty__min { grid-area: min; }

@media (max-width: 600px) {
	body.dmv-design .dmv-product__selector-head { padding: 16px 14px 0; }
	body.dmv-design .dmv-product__selector .dv-selector__body { padding: 12px 10px 16px; }
	.dmv-sel .dmv-step.is-active { padding: 10px 10px 12px; }
	body.dmv-design .dmv-sel .dmv-chip2 { min-width: 44px; padding: 0 10px !important; }
	.dmv-sel .dmv-quick { padding: 10px; }
	.dmv-sel .dmv-quick__list { grid-auto-columns: minmax(222px, 80%); }
	.dmv-sel .dmv-step.is-done .dmv-step__value { max-width: 9em; }
}

/* Inline add-to-cart error (form stays where it is). */
body.dmv-design .dmv-mc-inline-err { flex: 1 1 100%; margin: 4px 0 0; font-size: 12.5px; line-height: 1.8; color: #FF9A8F; }
form[data-dmv-ajax-cart].is-busy [type="submit"] { opacity: .65; cursor: progress; }

/* ===================================================================== *
 * Side cart drawer (CK4) — RTL, slides in from the left, dark glass
 * ===================================================================== */
html.dmv-mc-open, html.dmv-mc-open body { overflow: hidden; }
.dmv-mc[hidden] { display: none !important; }
.dmv-mc { position: fixed; inset: 0; z-index: 100050; direction: rtl; font-family: var(--dmv-font, inherit); }
.dmv-mc__backdrop { position: absolute; inset: 0; background: rgba(5, 6, 7, .55); opacity: 0; transition: opacity .25s ease; }
.dmv-mc__panel {
	position: absolute; top: 0; bottom: 0; left: 0; width: min(410px, calc(100vw - 28px)); display: flex; flex-direction: column; outline: none;
	background: linear-gradient(180deg, rgba(200, 155, 107, .06), rgba(18, 19, 22, 0) 140px), rgba(18, 19, 22, .9);
	-webkit-backdrop-filter: blur(16px) saturate(1.15); backdrop-filter: blur(16px) saturate(1.15);
	border-right: 1px solid rgba(255, 255, 255, .09); box-shadow: 24px 0 60px rgba(0, 0, 0, .45);
	transform: translateX(-104%); transition: transform .26s cubic-bezier(.2, .8, .2, 1); color: #E8E8EA;
}
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) { .dmv-mc__panel { background: #131417; } }
.dmv-mc.is-open .dmv-mc__backdrop { opacity: 1; }
.dmv-mc.is-open .dmv-mc__panel { transform: none; }
@media (prefers-reduced-motion: reduce) { .dmv-mc__panel, .dmv-mc__backdrop { transition: none; } }
.dmv-mc__body { display: flex; flex-direction: column; min-height: 0; height: 100%; }
.dmv-mc__head { flex: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px 12px; border-bottom: 1px solid rgba(255, 255, 255, .07); }
.dmv-mc .dmv-mc__title { margin: 0; font-size: 16px; font-weight: 800; color: #FFFFFF; line-height: 1.5; }
.dmv-mc__count { font-size: 13px; font-weight: 600; color: #A9AEB5; }
.dmv-mc .dmv-mc__close {
	flex: none; width: 36px; height: 36px; min-height: 0; padding: 0; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .12);
	background: rgba(255, 255, 255, .04); color: #E8E8EA; font-size: 22px; line-height: 1; cursor: pointer;
}
.dmv-mc .dmv-mc__close:hover { background: rgba(255, 255, 255, .1); color: #FFFFFF; }
.dmv-mc__ok { flex: none; margin: 10px 16px 0; padding: 8px 12px; border-radius: 12px; background: rgba(52, 199, 123, .12); border: 1px solid rgba(52, 199, 123, .35); color: #9BEBC0; font-size: 13.5px; font-weight: 700; }
.dmv-mc__err { flex: none; margin: 10px 16px 0; padding: 8px 12px; border-radius: 12px; background: rgba(255, 99, 82, .1); border: 1px solid rgba(255, 99, 82, .35); color: #FFB2A8; font-size: 13px; line-height: 1.8; }
.dmv-mc__loading { margin: 40px auto; width: 28px; height: 28px; border-radius: 50%; border: 3px solid rgba(255, 255, 255, .12); border-top-color: #C89B6B; animation: dmv-mc-spin .8s linear infinite; }
@keyframes dmv-mc-spin { to { transform: rotate(360deg); } }
.dmv-mc__empty { padding: 30px 16px; text-align: center; color: #A9AEB5; }
.dmv-mc__empty p { margin: 0 0 14px; }

.dmv-mc__lines { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; list-style: none; margin: 0; padding: 6px 16px; }
.dmv-mc__line { padding: 12px 0; border-bottom: 1px solid rgba(255, 255, 255, .06); transition: opacity .2s; }
.dmv-mc__line:last-child { border-bottom: 0; }
.dmv-mc__line.is-new .dmv-mc__name::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-inline-end: 7px; border-radius: 50%; background: #34C77B; vertical-align: middle; }
.dmv-mc__line.is-busy { opacity: .5; pointer-events: none; }
.dmv-mc__info { display: flex; flex-direction: column; gap: 2px; margin-bottom: 8px; }
.dmv-mc a.dmv-mc__name, .dmv-mc .dmv-mc__name { color: #FFFFFF; font-size: 14px; font-weight: 700; line-height: 1.7; text-decoration: none; }
.dmv-mc a.dmv-mc__name:hover { color: #E2BE93; }
.dmv-mc__specs { font-size: 12.5px; color: #9AA0A6; line-height: 1.7; }
.dmv-mc__row { display: flex; align-items: center; gap: 8px; }
.dmv-mc__unit { font-size: 12px; color: #8E949B; }
.dmv-mc__total { margin-inline-start: auto; font-size: 14px; font-weight: 800; color: #FFFFFF; white-space: nowrap; }
.dmv-mc .dmv-mc__rm { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; min-height: 0; padding: 0; border: 0; border-radius: 10px; background: transparent; color: #8E949B; cursor: pointer; }
.dmv-mc .dmv-mc__rm:hover { background: rgba(255, 99, 82, .12); color: #FF9A8F; }

.dmv-mc__foot { flex: none; padding: 12px 16px 16px; border-top: 1px solid rgba(255, 255, 255, .08); background: rgba(12, 13, 15, .55); }
.dmv-mc__sub { display: flex; justify-content: space-between; align-items: baseline; margin: 0 0 12px; font-size: 14px; color: #C9CCD1; }
.dmv-mc__sub b { font-size: 17px; font-weight: 800; color: #FFFFFF; }
.dmv-mc__acts { display: flex; flex-direction: column; gap: 8px; }
.dmv-mc .dmv-mc__btn {
	display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 14px; border-radius: 12px;
	font-size: 14px; font-weight: 700; text-decoration: none; text-align: center; cursor: pointer; line-height: 1.5; box-sizing: border-box; width: 100%;
}
.dmv-mc .dmv-mc__btn--ghost { background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .13); color: #ECEDEF; }
.dmv-mc .dmv-mc__btn--ghost:hover { border-color: rgba(200, 155, 107, .55); background: rgba(200, 155, 107, .08); color: #FFFFFF; }
.dmv-mc .dmv-mc__btn--primary { min-height: 48px; background: linear-gradient(135deg, #D7AE7F, #C89B6B 55%, #B5875A); border: 0; color: #141414; font-weight: 800; font-size: 15px; }
.dmv-mc .dmv-mc__btn--primary:hover { filter: brightness(1.06); color: #141414; }
.dmv-mc__fit summary { list-style: none; }
.dmv-mc__fit summary::-webkit-details-marker { display: none; }
.dmv-mc__fit summary small { font-size: 12px; color: #C89B6B; font-weight: 700; }
.dmv-mc__fitlist { list-style: none; margin: 8px 0 2px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.dmv-mc__fitlist a { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; border-radius: 999px; background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .1); color: #E8E8EA; font-size: 12.5px; text-decoration: none; }
.dmv-mc__fitlist a:hover { border-color: #C89B6B; color: #FFFFFF; }
.dmv-mc__fitlist .is-all a { color: #E2BE93; border-style: dashed; }
.dmv-mc a.dmv-mc__cartlink { align-self: center; font-size: 12.5px; color: #A9AEB5; text-decoration: none; padding: 2px 6px; }
.dmv-mc a.dmv-mc__cartlink:hover { color: #E2BE93; }
.dmv-mc :focus-visible { outline: 2px solid rgba(200, 155, 107, .75); outline-offset: 2px; }
@media (max-width: 420px) {
	.dmv-mc__panel { width: calc(100vw - 20px); }
	.dmv-mc__head, .dmv-mc__lines, .dmv-mc__foot { padding-inline: 12px; }
}

/* ===================================================================== *
 * R16-H (E3): price + live total ABOVE «افزودن به سبد» — resolved item and «آماده ارسال» cards.
 * ===================================================================== */
/* Resolved item, wide screens: the price heads the buy column (it used to sit in the info column,
   level with or below the button). */
@media (min-width: 900px) {
	body.dmv-design .dv-variant { grid-template-areas: "head price" "attrs cta" "terms cta" "reason cta" ". cta"; grid-template-rows: auto auto auto auto 1fr; }
	body.dmv-design .dv-variant__price { grid-area: price; align-self: end; }
	body.dmv-design .dv-variant__cta { grid-area: cta; grid-row: 2 / span 4; }
}
/* Buy form: [quantity + جمع] on one row, the button on its own full row underneath. */
body.dmv-design .dv-variant__form { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; align-items: flex-end; gap: 10px 12px; }
body.dmv-design .dv-variant__form .dmv-qty { flex: 1 1 100% !important; }
body.dmv-design .dv-variant__form .single_add_to_cart_button { flex: 1 1 100% !important; width: 100%; order: 9; }
.dv-variant__form .dmv-qty:not(.dmv-qty--compact) { display: grid; grid-template-columns: auto 1fr; grid-template-areas: "label label" "ctl total" "min min"; align-items: center; column-gap: 14px; row-gap: 5px; }
.dv-variant__form .dmv-qty__label { grid-area: label; }
.dv-variant__form .dmv-qty__ctl { grid-area: ctl; }
.dv-variant__form .dmv-qty__total { grid-area: total; justify-self: end; text-align: end; display: flex; flex-direction: column; align-items: flex-end; line-height: 1.5; }
.dv-variant__form .dmv-qty__min { grid-area: min; }
body.dmv-design .dv-variant__form .dmv-qty__total b { font-size: 18px; color: #FFFFFF; }

/* «آماده ارسال» cards: label / [− 1 +][جمع] / [افزودن به سبد] full width. */
.dmv-qcard__buy .dmv-qty__total { order: 2; flex: 1 1 auto; min-width: 0; text-align: end; font-size: 11.5px; line-height: 1.45; display: flex; flex-direction: column; align-items: flex-end; justify-content: center; align-self: center; }
body.dmv-design .dmv-qcard__buy .dmv-qty__total b { font-size: 13.5px; white-space: nowrap; }
.dmv-qcard__buy .dmv-qty__ctl { order: 1; }
body.dmv-design .dmv-sel .dmv-qcard__buy .dmv-btn--sm, body.dmv-design .dmv-qcard__buy .dmv-btn--sm { order: 4; flex: 1 1 100% !important; width: 100%; }

/* damavand-sf-r22-content */
/*
 * R22-D — trust note, R22 content pages (legal, academy, agency), partner form, projects captions.
 * Dark theme tokens from tokens.css / design.css (fallbacks for pages without them).
 */

/* Trust note ---------------------------------------------------------------- */
.dmv-trust { margin: 16px 0; font-size: 14px; line-height: 1.8; }
.dmv-trust__box { background: var(--dmv-surface, #16171a); border: 1px solid var(--dmv-border, #2a2c31); border-radius: var(--dmv-radius-sm, 10px); }
.dmv-trust__sum { cursor: pointer; list-style: none; padding: 10px 14px; font-weight: 700; color: var(--dmv-white, #fff); display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.dmv-trust__sum::-webkit-details-marker { display: none; }
.dmv-trust__sum::after { content: ""; width: 8px; height: 8px; border-inline-end: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s; margin-inline-start: 4px; }
.dmv-trust__box[open] .dmv-trust__sum::after { transform: rotate(-135deg); }
.dmv-trust__list { list-style: none; margin: 0; padding: 0 14px 12px; display: grid; gap: 8px; }
.dmv-trust__row { display: flex; align-items: flex-start; gap: 10px; color: var(--dmv-text, #d5d7db); margin: 0; }
.dmv-trust__ico { flex: none; color: var(--dmv-accent, #c9a45c); margin-top: 2px; }
.dmv-trust__txt strong { color: var(--dmv-white, #fff); margin-inline-end: 4px; }
.dmv-trust__link { color: var(--dmv-accent, #c9a45c); text-decoration: underline; text-underline-offset: 3px; }

/* R22 content pages ---------------------------------------------------------- */
.dmv-r22 { padding-block: 32px 56px; }
.dmv-r22__wrap { max-width: 820px; margin-inline: auto; }
.dmv-r22 .dmv-prose { line-height: 2; }
.dmv-r22 .dmv-prose h2 { font-size: 21px; margin: 32px 0 10px; color: var(--dmv-white, #fff); }
.dmv-r22 .dmv-prose h3 { font-size: 17px; margin: 22px 0 8px; color: var(--dmv-white, #fff); }
.dmv-r22 .dmv-prose p { margin: 0 0 12px; }
.dmv-r22 .dmv-prose ul, .dmv-r22 .dmv-prose ol { margin: 0 0 14px; padding-inline-start: 22px; }
.dmv-r22 .dmv-prose li { margin-bottom: 6px; }
.dmv-r22 .dmv-prose li::marker { color: var(--dmv-accent, #c9a45c); }
.dmv-r22 .dmv-prose a { color: var(--dmv-accent, #c9a45c); text-decoration: underline; text-underline-offset: 3px; }
.dmv-r22 .dmv-prose .wp-block-table { margin: 0 0 16px; overflow-x: auto; }
.dmv-r22 .dmv-prose table { width: 100%; border-collapse: collapse; margin: 0; font-size: 14.5px; }
.dmv-r22 .dmv-prose th, .dmv-r22 .dmv-prose td { border: 1px solid var(--dmv-border, #2a2c31); padding: 8px 10px; text-align: start; vertical-align: top; }
.dmv-r22 .dmv-prose th { background: var(--dmv-surface-2, #1d1f23); color: var(--dmv-white, #fff); }
.dmv-r22 .dmv-prose .dmv-r22-updated, .dmv-r22-updated { margin-top: 28px; padding-top: 12px; border-top: 1px solid var(--dmv-border, #2a2c31); color: var(--dmv-muted, #9a9ea6); font-size: 13.5px; }
.dmv-r22 .dmv-prose .dmv-r22-box { background: var(--dmv-surface, #16171a); border: 1px solid var(--dmv-border, #2a2c31); border-inline-start: 3px solid var(--dmv-accent, #c9a45c); border-radius: var(--dmv-radius-sm, 10px); padding: 12px 16px; margin: 0 0 18px; }
.dmv-r22 .dmv-prose .dmv-r22-toc { background: var(--dmv-surface, #16171a); border: 1px solid var(--dmv-border, #2a2c31); border-radius: var(--dmv-radius-sm, 10px); padding: 12px 16px 6px; margin: 0 0 24px; }
.dmv-r22__meta { color: var(--dmv-muted, #9a9ea6); font-size: 14px; margin: 0 0 18px; }
.dmv-r22__back { margin-top: 28px; }

/* Academy list --------------------------------------------------------------- */
.dmv-academy { list-style: none; margin: 8px 0 24px; padding: 0 !important; display: grid; grid-template-columns: 1fr; gap: 14px; }
@media (min-width: 700px) { .dmv-academy { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.dmv-academy__item { margin: 0 !important; }
.dmv-r22 .dmv-prose .dmv-academy { margin: 8px 0 32px; }
.dmv-academy__card { box-sizing: border-box; display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 16px 18px; background: var(--dmv-surface, #16171a); border: 1px solid var(--dmv-border, #2a2c31); border-radius: var(--dmv-radius, 14px); text-decoration: none !important; transition: border-color .2s; }
.dmv-academy__card:hover, .dmv-academy__card:focus-visible { border-color: var(--dmv-accent, #c9a45c); }
.dmv-academy__title { color: var(--dmv-white, #fff); font-weight: 800; font-size: 17px; line-height: 1.7; }
.dmv-academy__excerpt { color: var(--dmv-text, #d5d7db); font-size: 14px; line-height: 1.9; }
.dmv-academy__more { color: var(--dmv-accent, #c9a45c); font-weight: 700; font-size: 14px; margin-top: auto; }
.dmv-academy-empty { color: var(--dmv-muted, #9a9ea6); }

/* Partner form --------------------------------------------------------------- */
.dmv-pform { position: relative; background: var(--dmv-surface, #16171a); border: 1px solid var(--dmv-border, #2a2c31); border-radius: var(--dmv-radius, 14px); padding: 18px; margin: 8px 0 24px; }
.dmv-pform__title { margin: 0 0 4px !important; font-size: 19px !important; }
.dmv-pform__lead { margin: 0 0 14px !important; color: var(--dmv-muted, #9a9ea6); font-size: 14px; }
.dmv-pform__grid { display: grid; grid-template-columns: 1fr; gap: 12px; }
@media (min-width: 700px) { .dmv-pform__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .dmv-pform__f--wide { grid-column: 1 / -1; } }
.dmv-pform__f { display: flex; flex-direction: column; gap: 6px; }
.dmv-pform__f label { font-weight: 700; color: var(--dmv-white, #fff); font-size: 14px; }
.dmv-pform__f .dmv-req { color: var(--dmv-accent, #c9a45c); }
.dmv-pform input[type="text"], .dmv-pform input[type="tel"], .dmv-pform select, .dmv-pform textarea { width: 100%; box-sizing: border-box; min-height: 46px; padding: 10px 12px; font: inherit; font-size: 16px; color: var(--dmv-white, #fff); background: var(--dmv-bg, #0b0b0d); border: 1px solid var(--dmv-border-2, #3a3d44); border-radius: var(--dmv-radius-sm, 10px); }
.dmv-pform textarea { min-height: 110px; resize: vertical; }
.dmv-pform input:focus, .dmv-pform select:focus, .dmv-pform textarea:focus { outline: 2px solid var(--dmv-accent, #c9a45c); outline-offset: 1px; }
.dmv-pform__hp { position: absolute !important; top: 0; inset-inline-start: 0; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.dmv-pform__actions { margin-top: 14px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.dmv-pform__submit { min-height: 46px; padding-inline: 24px; }
.dmv-pform__note { color: var(--dmv-muted, #9a9ea6); font-size: 13px; }
.dmv-pform__msg { border-radius: var(--dmv-radius-sm, 10px); padding: 12px 14px; margin: 0 0 14px; }
.dmv-pform__msg--ok { background: rgba(46, 160, 67, .12); border: 1px solid rgba(46, 160, 67, .55); color: #b7f0c2; }
.dmv-pform__msg--err { background: rgba(214, 69, 65, .12); border: 1px solid rgba(214, 69, 65, .55); color: #ffc9c6; }
.dmv-pform__msg ul { margin: 0; padding-inline-start: 18px; }

/* Projects / applications --------------------------------------------------- */
.dmv-apps .dmv-gallery__item { display: flex; }
.dmv-apps figure { display: flex; flex-direction: column; width: 100%; }
.dmv-apps__cap { flex: 1; display: flex; flex-direction: column; align-items: flex-start !important; gap: 6px !important; }
.dmv-apps__name { color: var(--dmv-white, #fff); font-weight: 800; font-size: 15.5px; }
.dmv-apps__desc { color: var(--dmv-text, #d5d7db); font-size: 14px; line-height: 1.9; margin: 0; }
.dmv-apps__links { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; padding-top: 2px; }
.dmv-apps__links a { font-size: 13px; padding: 3px 10px; border-radius: 999px; border: 1px solid var(--dmv-border-2, #3a3d44); color: var(--dmv-accent, #c9a45c); text-decoration: none; }
.dmv-apps__links a:hover { border-color: var(--dmv-accent, #c9a45c); }

/* About page: the two purchase paths --------------------------------------- */
.dmv-about-paths { margin: 0 0 16px; padding-inline-start: 22px; color: #CFD2D6; line-height: 1.9; }
.dmv-about-paths li { margin-bottom: 8px; }
.dmv-about-paths li::marker { color: var(--dmv-accent, #c9a45c); }

/* damavand-sf-quote */
/* R20-R — quote / inquiry lines: cart + mini cart sections, badges, account. RTL. */
.dmv-cart-sec th,
.dmv-mc__sec {
	font-weight: 700;
	font-size: var(--dv-font-size-sm, 0.875rem);
	text-align: right;
	padding: 0.6em 0.75em;
	background: #f4f6f8;
	color: #1f2a37;
	border-inline-start: 3px solid #1d4f7a;
}
.dmv-cart-sec--quote th,
.dmv-mc__sec--quote {
	background: #fff6e5;
	border-inline-start-color: #c27c00;
}
.dmv-mc__sec {
	list-style: none;
	margin: 0.5em 0 0.25em;
	border-radius: 4px;
}
.dmv-cart-sec-note td,
.dmv-mc__quote-note {
	font-size: var(--dv-font-size-xs, 0.75rem);
	color: #5b6470;
	line-height: 1.7;
}
.dmv-mc__quote-note {
	margin: 0.25em 0 0.75em;
}
.dmv-quote-price {
	color: #8a5a00;
	font-weight: 600;
	white-space: nowrap;
}
.dmv-quote-badge {
	display: inline-block;
	padding: 0.1em 0.55em;
	border-radius: 999px;
	font-size: var(--dv-font-size-xs, 0.75rem);
	background: #fff1d6;
	color: #7a4b00;
	vertical-align: middle;
}
.dv-variant__quote-hint {
	display: block;
	margin-top: 0.35em;
	color: #5b6470;
	font-size: var(--dv-font-size-xs, 0.75rem);
}
.dmv-quote-box-front .dmv-quote-pay {
	margin-inline-start: 0.5em;
}

/* damavand-sf-r14-polish */
/*
 * Damavand Storefront 0.3.5 (R14-E) — Founder review polish. Loaded after design.css,
 * elementor-layout.css, checkout-flow.css and payments.css on every dark-design front page
 * (inc/r14-polish.php). CSS only: no Elementor data in the database needs to change.
 *
 *   D1  compact product cards in the home carousels
 *   D4  notice icon in its own RTL gutter; empty notices hidden
 *   D5  dark form controls that never fall back to the browser's light defaults
 *   D6  header logo in a fixed box, same metrics on every page and when sticky
 *   D8  consistent space above «حساب کاربری من»
 */

/* ===================================================================== *
 * D1 — product carousel («پرفروش‌ترین محصولات», «فروش ویژه و تخفیف‌دار»)
 * design.css sets `.dv-card { width: auto !important }` (for the shop grid). In the carousel that let
 * the 800px placeholder picture size each card (~600px wide). Fixed column count per breakpoint:
 * 5 (≥1200px) · 4 (≥1000px) · 3 (≥690px) · 2 (phones); 220–260px wide on desktop.
 * ===================================================================== */
body.dmv-design .dmv-slider--products { --dmv-r14-gap: 16px; --dmv-r14-cols: 5; }
@media (max-width: 1199px) { body.dmv-design .dmv-slider--products { --dmv-r14-cols: 4; } }
@media (max-width: 999px) { body.dmv-design .dmv-slider--products { --dmv-r14-cols: 3; } }
@media (max-width: 689px) { body.dmv-design .dmv-slider--products { --dmv-r14-gap: 12px; --dmv-r14-cols: 2; } }

body.dmv-design .dmv-slider--products { width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; }
body.dmv-design .dmv-slider--products .dmv-slider__track { gap: var(--dmv-r14-gap); width: 100%; min-width: 0; box-sizing: border-box; }
body.dmv-design .dmv-slider--products .dmv-slider__track > li.dv-card {
	flex: 0 0 auto;
	width: calc((100% - (var(--dmv-r14-cols) - 1) * var(--dmv-r14-gap)) / var(--dmv-r14-cols)) !important;
	max-width: 260px !important; min-width: 0;
	border-radius: 14px;
}
/* Square image area, at most 200px tall; the picture is contained, never cropped or stretched. */
body.dmv-design .dmv-slider--products .dv-card__media {
	display: flex; align-items: center; justify-content: center;
	aspect-ratio: 1 / 1; max-height: 200px; width: 100%; padding: 10px; box-sizing: border-box;
	background: #111214; overflow: hidden;
}
body.dmv-design .dmv-slider--products .dv-card__media picture,
body.dmv-design .dmv-slider--products .dv-card__media .dmv-pic { display: flex; width: 100%; height: 100%; }
body.dmv-design .dmv-slider--products .dv-card__media img {
	width: 100% !important; height: 100% !important; max-width: 100%; max-height: 100%; object-fit: contain !important;
}
/* Small status badge (e.g. «موجود در برخی مشخصات»), never wider than the card. */
body.dmv-design .dmv-slider--products .dv-card .dv-badge {
	top: 8px; inset-inline-start: 8px; inset-inline-end: auto; width: auto; max-width: calc(100% - 16px);
	min-height: 22px; padding: 1px 8px; font-size: 11px; font-weight: 700; line-height: 1.7;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: inline-block;
}
body.dmv-design .dmv-slider--products .dv-card__body { gap: 6px; padding: 10px 12px 12px; }
/* Name: two lines at most. */
body.dmv-design .dmv-slider--products .dv-card__title { font-size: 14px !important; font-weight: 700; line-height: 1.6; }
body.dmv-design .dmv-slider--products .dv-card__title a {
	display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden;
	min-height: 3.2em; word-break: break-word;
}
body.dmv-design .dmv-slider--products .dv-card__price { font-size: 13px; line-height: 1.7; margin: 0; padding: 0; }
body.dmv-design .dmv-slider--products .dv-card__from { color: var(--dmv-text, #E8E8EA); font-weight: 700; }
body.dmv-design .dmv-slider--products .dv-card__from .amount { color: var(--dmv-white, #FFFFFF); }
body.dmv-design .dmv-slider--products .dv-price-inquiry { font-size: 12.5px; }
/* The whole card is the link (title ::after overlay); the button is dropped to keep the card compact. */
body.dmv-design .dmv-slider--products .dv-card__cta { display: none !important; }
@media (max-width: 689px) {
	body.dmv-design .dmv-slider--products .dv-card__media { padding: 8px; }
	body.dmv-design .dmv-slider--products .dv-card__title { font-size: 13px !important; }
}

/* ===================================================================== *
 * D4 — WooCommerce notices: icon in its own gutter at the start (right in RTL)
 * Blocksy draws the icon at inset-inline-start 20px but its phone padding is a physical
 * `padding-left: 46px`, and payments.css (thank-you) reset the padding to 14px 18px — both put the
 * bell over the first letters («مت» of «متشکریم»).
 * ===================================================================== */
body.dmv-design :is(.woocommerce-info, .woocommerce-message, .woocommerce-error, .woocommerce-thankyou-order-received) {
	position: relative;
	padding-block: 14px !important;
	padding-inline-start: 52px !important;
	padding-inline-end: 18px !important;
	min-height: 54px; box-sizing: border-box; line-height: 1.8; text-align: start;
}
body.dmv-design :is(.woocommerce-info, .woocommerce-message, .woocommerce-error, .woocommerce-thankyou-order-received)::before {
	position: absolute; top: 18px !important; inset-inline-start: 18px !important; inset-inline-end: auto !important;
	margin: 0 !important;
	width: 18px; height: 18px; font-size: 18px; line-height: 18px; --theme-icon-size: 18px;
}
@media (max-width: 479.98px) {
	body.dmv-design :is(.woocommerce-info, .woocommerce-message, .woocommerce-error, .woocommerce-thankyou-order-received) {
		padding-block: 12px !important; padding-inline-start: 44px !important; padding-inline-end: 14px !important; font-size: 14px;
	}
	body.dmv-design :is(.woocommerce-info, .woocommerce-message, .woocommerce-error, .woocommerce-thankyou-order-received)::before {
		top: 16px !important; inset-inline-start: 14px !important; width: 16px; height: 16px; font-size: 16px; line-height: 16px; --theme-icon-size: 16px;
	}
}
/* Error lists: the bullets live inside the same gutter rule. */
body.dmv-design ul.woocommerce-error { list-style: none; margin-inline: 0; }
body.dmv-design ul.woocommerce-error li { margin: 0; padding: 0; }
/* Safety net (the server no longer prints them — inc/r14-polish.php): never show an empty box. */
body.dmv-design :is(.woocommerce-info, .woocommerce-message, .woocommerce-error):empty,
body.dmv-design .woocommerce-notices-wrapper:empty,
body.dmv-design .dmv-pay__notices:empty { display: none !important; }

/* ===================================================================== *
 * D5 — form controls (Windows Chrome/Edge render native parts light unless told otherwise)
 * Contrast on #121417: text #E8E8EA ≈ 15.6:1, placeholder #8E949B ≈ 6.0:1, border #646A73 ≈ 3.4:1 (AA non-text).
 * `:not(.dmv-r14-x)` lifts the base rule to design.css's weight so it wins by load order; component fields with
 * their own, more specific look (header search, LWP sign-in) keep it.
 * ===================================================================== */
:root:has(body.dmv-design) { color-scheme: dark; }
body.dmv-design {
	color-scheme: dark;
	--dmv-field-bg: #121417;
	--dmv-field-bg-focus: #16191D;
	--dmv-field-text: #E8E8EA;
	--dmv-field-border: #646A73;
	--dmv-field-placeholder: #8E949B;
	--theme-form-field-background-initial-color: var(--dmv-field-bg);
	--theme-form-field-background-focus-color: var(--dmv-field-bg-focus);
	--theme-form-field-border-initial-color: var(--dmv-field-border);
	--theme-form-text-initial-color: var(--dmv-field-text);
	--theme-form-text-focus-color: #FFFFFF;
}
body.dmv-design :is(
	input:where(:not([type]), [type="text"], [type="search"], [type="tel"], [type="email"], [type="number"], [type="password"], [type="url"], [type="date"], [type="datetime-local"], [type="month"], [type="week"], [type="time"]),
	select, textarea
):not(.dmv-r14-x) {
	background-color: var(--dmv-field-bg);
	color: var(--dmv-field-text);
	border-color: var(--dmv-field-border);
	border-style: solid;
	color-scheme: dark;
	-webkit-text-fill-color: currentColor;
	caret-color: #C89B6B;
}
body.dmv-design :is(
	input:where(:not([type]), [type="text"], [type="search"], [type="tel"], [type="email"], [type="number"], [type="password"], [type="url"], [type="date"], [type="datetime-local"], [type="month"], [type="week"], [type="time"]),
	select, textarea
):not(.dmv-r14-x):focus {
	background-color: var(--dmv-field-bg-focus);
	color: #FFFFFF;
	border-color: #C89B6B;
}
body.dmv-design :is(input, select, textarea):disabled,
body.dmv-design :is(input, textarea)[readonly] {
	background-color: #1A1D21; color: #A9AEB5; -webkit-text-fill-color: #A9AEB5; border-color: #33373D; opacity: 1; cursor: not-allowed;
}
body.dmv-design :is(input, textarea)::placeholder { color: var(--dmv-field-placeholder); -webkit-text-fill-color: var(--dmv-field-placeholder); opacity: 1; }
/* The drop-down list of a <select> is drawn by the OS on Windows: give every option its own colours. */
body.dmv-design select option,
body.dmv-design select optgroup { background-color: #1A1D21; color: #E8E8EA; }
body.dmv-design select option:checked { background-color: #3A2F22; color: #FFFFFF; }
body.dmv-design select option:disabled { color: #7D838B; }
body.dmv-design select optgroup { font-weight: 700; color: #C89B6B; }
/* R14 integration: design.css / payments.css use the `background` shorthand and Blocksy sets `appearance: none`, so the
   «ثبت واریز» selects (روش، حساب، روز / ماه / سال) had no drop-down arrow and read as text fields. Chevron at the end. */
body.dmv-design .dmv-pay select:not([multiple]):not([size]) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23A9AEB5' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-size: 12px 8px; background-position: left 12px center;
	padding-inline-end: 32px; appearance: none; -webkit-appearance: none;
}
body.dmv-design .dmv-pay select:not([multiple]):not([size]):dir(ltr) { background-position: right 12px center; }
/* Autofill: Chrome paints its own light background — cover it with an inset shadow. */
body.dmv-design :is(input, textarea, select):-webkit-autofill,
body.dmv-design :is(input, textarea, select):-webkit-autofill:hover,
body.dmv-design :is(input, textarea, select):-webkit-autofill:focus {
	-webkit-text-fill-color: #E8E8EA !important;
	caret-color: #C89B6B;
	-webkit-box-shadow: 0 0 0 1000px var(--dmv-field-bg) inset !important;
	box-shadow: 0 0 0 1000px var(--dmv-field-bg) inset !important;
	transition: background-color 600000s 0s, color 600000s 0s;
}
body.dmv-design :is(input, textarea, select):autofill {
	box-shadow: 0 0 0 1000px var(--dmv-field-bg) inset !important;
	-webkit-text-fill-color: #E8E8EA !important;
}
/* File input («تصویر یا PDF رسید»): dark field + gold-outline button that matches the site buttons. */
body.dmv-design input[type="file"] {
	width: 100%; max-width: 100%; box-sizing: border-box; padding: 6px; min-height: 48px;
	background-color: var(--dmv-field-bg); color: #C9CCD1; border: 1px dashed var(--dmv-field-border); border-radius: 12px;
	font: inherit; font-size: 13.5px; color-scheme: dark; cursor: pointer;
}
body.dmv-design input[type="file"]:focus-visible { outline: 2px solid rgba(200, 155, 107, .6); outline-offset: 2px; border-color: #C89B6B; }
body.dmv-design input[type="file"]::file-selector-button {
	margin-inline-end: 12px; padding: 8px 16px; min-height: 34px; border-radius: 999px; cursor: pointer;
	background: rgba(200, 155, 107, .14); color: #F1E3D2; border: 1px solid rgba(200, 155, 107, .6);
	font: inherit; font-size: 13.5px; font-weight: 700; transition: background-color .2s, color .2s;
}
body.dmv-design input[type="file"]:hover::file-selector-button { background: #C89B6B; color: #0B0B0D; }
body.dmv-design input[type="file"]::-webkit-file-upload-button {
	margin-inline-end: 12px; padding: 8px 16px; border-radius: 999px; cursor: pointer;
	background: rgba(200, 155, 107, .14); color: #F1E3D2; border: 1px solid rgba(200, 155, 107, .6); font: inherit; font-weight: 700;
}
/* Checkboxes / radios keep the native control but in the brand colour. */
body.dmv-design :is(input[type="checkbox"], input[type="radio"]) { accent-color: #C89B6B; color-scheme: dark; }
/* Select2 / selectWoo (country & state fields on checkout and my-account). */
body.dmv-design .select2-container--default .select2-selection--single,
body.dmv-design .select2-container--default .select2-selection--multiple { background-color: var(--dmv-field-bg); border-color: var(--dmv-field-border); }
body.dmv-design .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--dmv-field-text); }
body.dmv-design .select2-dropdown { background-color: #1A1D21; color: #E8E8EA; border-color: var(--dmv-field-border); }
body.dmv-design .select2-container--default .select2-search--dropdown .select2-search__field { background-color: var(--dmv-field-bg); color: var(--dmv-field-text); border-color: var(--dmv-field-border); }
body.dmv-design .select2-container--default .select2-results__option--highlighted[aria-selected],
body.dmv-design .select2-container--default .select2-results__option--highlighted[data-selected] { background-color: #3A2F22; color: #FFFFFF; }
body.dmv-design .select2-container--default .select2-results__option[aria-selected="true"],
body.dmv-design .select2-container--default .select2-results__option[data-selected="true"] { background-color: #23262B; color: #FFFFFF; }
/* LWP phone field country list (intl-tel-input). */
body.dmv-design .iti__country-list { background-color: #1A1D21; color: #E8E8EA; border-color: var(--dmv-field-border); }
body.dmv-design .iti__country.iti__highlight { background-color: #3A2F22; }
body.dmv-design .iti__dial-code { color: #A9AEB5; }
/* R14 integration: the sign-in / checkout phone field forces `padding: 0 16px !important` (elementor-layout.css,
   checkout-flow.css), which also beat intl-tel-input's own left padding — the flag (60px) covered the first digits
   of the placeholder and of the typed number. Keep the text clear of the flag box. */
body.dmv-design form.ajax-auth .iti input:not([type="hidden"]) { padding-left: 72px !important; }
/* Windows high-contrast / forced colours: let the system colours win. */
@media (forced-colors: active) {
	body.dmv-design :is(input, select, textarea, option) { forced-color-adjust: auto; }
}

/* ===================================================================== *
 * D6 — header logo
 * Choice: the logo sits in a fixed box ALIGNED TO THE TOP ROW (logo · search · account), vertically
 * centred in it; the menu row runs full width under it. Spanning both rows would squeeze the menu row
 * between 1000–1280px. Same box on every page and in the sticky/scrolled state (no shrink):
 *   ≥1000px: 72px tall (104px wide) · 690–999px: 56px · phones: 40px.
 * Row 1 has a fixed height, so the logo's position never depends on the page or the scroll state.
 * ===================================================================== */
body.dmv-design { --dmv-r14-logo-h: 72px; --dmv-r14-row1-h: 88px; }
@media (max-width: 999px) { body.dmv-design { --dmv-r14-logo-h: 56px; --dmv-r14-row1-h: 72px; } }
@media (max-width: 689px) { body.dmv-design { --dmv-r14-logo-h: 40px; --dmv-r14-row1-h: 56px; } }

/* R14 integration: Blocksy's `.ct-elementor-default-template .e-con > .e-con-inner { width: var(--theme-container-width) }`
   (≈90%) reached the header on every non-Elementor page (product, cart, checkout, account) but not on the home page, so
   the logo sat 25px (desktop) / 7px (phone) further in there. The header rows always use Elementor's own box. */
body.dmv-design .dmv-hdr .e-con > .e-con-inner { width: 100%; }
body.dmv-design .dmv-hdr .dmv-hdr__row1.e-con,
body.dmv-design.dmv-layout.dmv-scrolled .dmv-hdr .dmv-hdr__row1.e-con {
	--padding-top: 8px; --padding-bottom: 8px; --min-height: var(--dmv-r14-row1-h);
	min-height: var(--dmv-r14-row1-h);
}
body.dmv-design .dmv-hdr .dmv-hdr__row1 > .e-con-inner,
body.dmv-design .dmv-hdr .dmv-hdr__row1:not(:has(> .e-con-inner)) { align-items: center !important; min-height: calc(var(--dmv-r14-row1-h) - 16px); }
body.dmv-design .dmv-hdr .dmv-hdr__logo {
	flex: 0 0 auto !important; align-self: center !important; display: flex; align-items: center;
	height: var(--dmv-r14-logo-h); margin: 0 !important; padding: 0 !important;
}
body.dmv-design .dmv-hdr .dmv-hdr__logo > .elementor-widget-container { display: flex; align-items: center; height: 100%; margin: 0; padding: 0; }
body.dmv-design .dmv-hdr .dmv-logo,
body.dmv-design .dmv-hdr .dmv-logo a { display: flex; align-items: center; height: var(--dmv-r14-logo-h); line-height: 0; }
body.dmv-design .dmv-hdr .dmv-logo img,
body.dmv-design.dmv-layout.dmv-scrolled .dmv-hdr .dmv-logo img {
	display: block; height: var(--dmv-r14-logo-h) !important; width: auto !important;
	min-width: 0 !important; max-width: none !important; aspect-ratio: 2760 / 1914; object-fit: contain; transition: none;
}
/* Row 2 (category button · links · language/cart): fixed height too. */
@media (min-width: 690px) {
	body.dmv-design .dmv-hdr .dmv-hdr__row2.e-con { --padding-top: 0px; --padding-bottom: 10px; }
	body.dmv-design .dmv-hdr .dmv-hdr__row2 > .e-con-inner,
	body.dmv-design .dmv-hdr .dmv-hdr__row2:not(:has(> .e-con-inner)) { align-items: center !important; min-height: 48px; }
}
/* Phones: logo at the start (right), cart/menu at the end, search on its own line below. */
@media (max-width: 689px) {
	body.dmv-design .dmv-hdr .dmv-hdr__row1 > .e-con-inner,
	body.dmv-design .dmv-hdr .dmv-hdr__row1:not(:has(> .e-con-inner)) { min-height: 0; }
	body.dmv-design .dmv-hdr .dmv-hdr__logo { order: 1; }
	body.dmv-design .dmv-hdr .dmv-hdr__tools-m { order: 2; margin-inline-start: auto; align-self: center !important; }
}

/* ===================================================================== *
 * D8 — signed-in account pages: one fixed space above «حساب کاربری من» on every tab
 * ===================================================================== */
body.dmv-design.dmv-account:not(.dmv-auth) #main > [data-vertical-spacing] { padding-top: 32px; }
body.dmv-design.dmv-account:not(.dmv-auth) .hero-section { padding-top: 0 !important; margin-top: 0 !important; --margin-bottom: 24px; margin-bottom: 24px; }
body.dmv-design.dmv-account:not(.dmv-auth) .hero-section .page-title { margin: 0; }
body.dmv-design.dmv-account:not(.dmv-auth) .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
@media (max-width: 689px) {
	body.dmv-design.dmv-account:not(.dmv-auth) #main > [data-vertical-spacing] { padding-top: 20px; }
	body.dmv-design.dmv-account:not(.dmv-auth) .hero-section { --margin-bottom: 16px; margin-bottom: 16px; }
}

/* damavand-sf-r16-spec */
/**
 * Damavand Storefront 0.3.7 (R16-K, E1) — the size stands out in item spec lines
 * («آماده ارسال» cards, quick-buy page, mini cart, cart/checkout meta, buy-again cards, selector chips).
 * Markup: <b class="dmv-spec-size"> from inc/r16-spec-size.php.
 */
.dmv-spec-size {
	font-weight: 900;
	font-size: 1.14em;
	line-height: 1;
	color: inherit;
	letter-spacing: 0;
	font-variant-numeric: tabular-nums;
}
/* Cart / checkout item meta (WooCommerce wraps the display value in <p>). */
.variation .dmv-spec-size,
dl.variation dd .dmv-spec-size { font-weight: 900; }
/* Selector: the chosen size chip is already bold; a touch larger keeps it first to the eye. */
.dmv-step__value .dmv-spec-size { font-size: 1.1em; }

/* damavand-sf-r18-account */
/*
 * R18-N (storefront 0.3.9) — account entry: round icon after the cart (header tools, mobile +
 * desktop) and the button at the top of the off-canvas menu. Same dark/gold glass language as the
 * header tools (elementor-layout.css A21) and the account page.
 * Guest: thin gold ring. Signed in: gold icon + small gold dot. The dot is absolutely positioned
 * and always in the markup, so switching state never moves anything.
 */

/* Header icon */
body.dmv-design .dmv-tools .dmv-acct,
body.dmv-design .dmv-header__tools .dmv-acct {
	box-sizing: border-box; flex: none;
	border: 1px solid rgba(200, 155, 107, .42); color: #E8E8EA;
}
body.dmv-design .dmv-tools .dmv-acct:hover,
body.dmv-design .dmv-header__tools .dmv-acct:hover { border-color: #C89B6B; background: rgba(200, 155, 107, .12); color: #FFFFFF; }
body.dmv-design .dmv-tools .dmv-acct.is-in,
body.dmv-design .dmv-header__tools .dmv-acct.is-in { color: #C89B6B; border-color: rgba(200, 155, 107, .7); }
body.dmv-design .dmv-header__tools .dmv-acct { width: 44px; height: 44px; }

/* Desktop row 2 draws its tools at 38px: keep a 44px touch target without changing the layout. */
body.dmv-design .dmv-hdr__tools .dmv-acct::before {
	content: ""; position: absolute; inset: -3px; border-radius: 999px;
}

/* Signed-in dot */
.dmv-acct__dot {
	position: absolute; top: 6px; inset-inline-end: 6px; width: 9px; height: 9px; border-radius: 50%;
	background: #C89B6B; box-shadow: 0 0 0 2px #0B0B0D; pointer-events: none;
	opacity: 0; transform: scale(.4); transition: opacity .2s, transform .2s;
}
.dmv-acct.is-in .dmv-acct__dot { opacity: 1; transform: none; }
body.dmv-design .dmv-hdr__tools .dmv-acct__dot { top: 4px; inset-inline-end: 4px; }
.dmv-account-btn .dmv-acct__dot { display: none; }

/* Off-canvas: account first, as a button */
body.dmv-design .dmv-oc__acct {
	display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 6px 14px;
	border-radius: 16px; border: 1px solid rgba(200, 155, 107, .45);
	background: rgba(200, 155, 107, .1); color: #FFFFFF; text-decoration: none;
	font-size: 16px; font-weight: 700; line-height: 1.4;
	transition: background-color .2s, border-color .2s;
}
body.dmv-design .dmv-oc__acct:hover,
body.dmv-design .dmv-oc__acct:focus-visible { background: rgba(200, 155, 107, .18); border-color: #C89B6B; color: #FFFFFF; }
.dmv-oc__acct-ico {
	position: relative; display: inline-flex; flex: none; align-items: center; justify-content: center;
	width: 38px; height: 38px; border-radius: 50%; background: rgba(200, 155, 107, .16); color: #C89B6B;
}
.dmv-oc__acct-ico .dmv-acct__dot { top: 1px; inset-inline-end: 1px; }
.dmv-oc__acct .dmv-acct__label { flex: 1; }

@media (prefers-reduced-motion: reduce) {
	.dmv-acct__dot { transition: none; }
}

/* damavand-sf-product-images */
/**
 * Damavand Storefront 0.3.6 (R15) — product photos on a light tile, colour dots.
 *
 * The bundled photos have a soft light-grey background (≈ #DEDDDC); every product photo sits on a
 * tile of that colour, rounded 14px, contained (never cropped), with a little padding, so it reads
 * as one consistent object on the dark site. The branded placeholder sits on a neutral dark tile.
 * Every tile is a fixed-ratio box (no layout shift while the photo loads).
 *
 * @package Damavand_Storefront
 */

:root {
	--dmv-tile-bg: #DEDDDC;
	--dmv-tile-radius: 14px;
	--dmv-tile-ph: #17181B;
}

/* ------------------------------------------------------------------ tile */
.dmv-tile {
	background: var(--dmv-tile-bg) !important;
	border-radius: var(--dmv-tile-radius);
	overflow: hidden;
	box-sizing: border-box;
}
.dmv-tile img,
.dmv-tile picture,
.dmv-tile .dmv-pic {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: 100%;
	object-fit: contain !important;
	margin: 0 !important;
	border-radius: 0;
	box-shadow: none;
	background: transparent;
}
.dmv-tile picture img, .dmv-tile .dmv-pic img { width: 100% !important; height: 100% !important; }
.dmv-tile.dmv-tile--ph {
	background: var(--dmv-tile-ph) !important;
	border: 1px solid #26282C;
}
.dmv-tile.dmv-tile--ph img { opacity: .9; }

/* Small square thumbnails (cart lines, orders, cards). */
.dmv-thumb {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 64px;
	aspect-ratio: 1 / 1;
	padding: 3px;
	border-radius: 10px;
	vertical-align: middle;
}
.dmv-thumb.dmv-thumb--sm { width: 44px; border-radius: 8px; padding: 2px; margin-inline-end: 10px; }
.dmv-oname { vertical-align: middle; }

/* ------------------------------------------------------------- catalog cards */
body.dmv-design .dv-card__media.dmv-tile,
.dv-card__media.dmv-tile {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	width: auto;
	margin: 8px 8px 0;
	padding: 8px;
}
body.dmv-design .dmv-slider--products .dv-card__media.dmv-tile {
	width: auto;
	max-height: 200px;
	margin: 8px 8px 0;
	padding: 8px;
}
@media (max-width: 689px) {
	body.dmv-design .dmv-slider--products .dv-card__media.dmv-tile,
	body.dmv-design .dv-card__media.dmv-tile { margin: 6px 6px 0; padding: 6px; }
}

/* ------------------------------------------------------------ product page */
body.dmv-design .dmv-product__media .dv-product-media.dmv-tile,
.dv-product-media.dmv-tile {
	display: grid;
	place-items: center;
	padding: 14px;
	border: 0;
	border-radius: var(--dmv-tile-radius);
	box-shadow: 0 18px 44px rgba(0, 0, 0, .3);
}
body.dmv-design .dmv-product__media .dv-product-media.dmv-tile--ph { border: 1px solid #26282C; }
.dv-product-media.dmv-tile > img,
.dv-product-media.dmv-tile > picture {
	grid-area: 1 / 1;
	transition: opacity .28s ease;
}
.dv-product-media.dmv-tile > .dmv-swap { opacity: 0; }
.dv-product-media.dmv-tile > .dmv-swap.is-in { opacity: 1; }
.dv-product-media.dmv-tile > .dmv-swap.is-out { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
	.dv-product-media.dmv-tile > img, .dv-product-media.dmv-tile > picture { transition: none; }
}

/* ----------------------------------------------- «آماده ارسال» cards (selector) */
.dmv-qcard.has-thumb { position: relative; }
.dmv-qcard.has-thumb .dmv-qcard__name,
.dmv-qcard.has-thumb .dmv-qcard__top { padding-inline-end: 72px; }
.dmv-qcard.has-thumb .dmv-qcard__top { min-height: 24px; }
.dmv-qcard .dmv-qcard__thumb {
	position: absolute;
	top: 12px;
	inset-inline-end: 12px;
	width: 60px;
}

/* ---------------------------------------------------- «خرید فوری» page cards */
.dmv-qb__item .dmv-qb__thumb,
.dmv-ba__item .dmv-ba__thumb {
	display: flex;
	width: 100%;
	aspect-ratio: 16 / 10;
	padding: 6px;
	margin-bottom: 6px;
	border-radius: 12px;
}

/* ------------------------------------------------------------- mini cart */
.dmv-mc__line.has-thumb {
	display: grid;
	grid-template-columns: 60px minmax(0, 1fr);
	column-gap: 12px;
	align-items: start;
}
.dmv-mc__line.has-thumb > .dmv-mc__thumb { grid-row: 1 / span 2; width: 60px; }
.dmv-mc__line.has-thumb > .dmv-mc__info,
.dmv-mc__line.has-thumb > .dmv-mc__row { grid-column: 2; min-width: 0; }
.dmv-mc__color { font-size: 12.5px; color: #D5D7DB; }

/* ------------------------------------------------------- cart / checkout */
.woocommerce-cart-form .product-thumbnail .dmv-thumb { width: 72px; }
.woocommerce-cart-form .product-thumbnail a { display: inline-block; text-decoration: none; }
/* Phones: the cart's compact rows hide the thumbnail column; the colour photo then sits in the name cell. */
.dmv-thumb.dmv-cart-mthumb { display: none; }
@media (max-width: 768px) {
	body.dmv-cart .woocommerce-cart-form .product-name .dmv-thumb.dmv-cart-mthumb { display: flex; width: 64px; margin: 2px 0 8px; }
}
.woocommerce-checkout-review-order-table .product-name { vertical-align: middle; }
.dmv-ck-sum__color { display: block; margin-top: 2px; font-weight: 500; }

/* ------------------------------------------------------------ colour dot */
.dmv-cdot {
	display: inline-block;
	margin: 0 !important;
	flex: none;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	vertical-align: -1px;
	box-sizing: border-box;
}
.dmv-clabel { display: inline-flex; align-items: center; gap: 0; white-space: nowrap; }
.dmv-clabel .dmv-cdot, .dmv-chip2 .dmv-cdot, .dmv-step__value .dmv-cdot { margin-inline-end: 6px !important; }
dd .dmv-clabel p, .variation .dmv-clabel p { display: inline; margin: 0; }
.dmv-chip2 .dmv-cdot, .dmv-step__value .dmv-cdot { width: 13px; height: 13px; }

/* damavand-sf-r22-chrome */
/*
 * Damavand Storefront R22-B (0.3.13) — mobile-first chrome + home. Loaded after
 * elementor-layout.css and r14-polish.css (inc/r22-chrome.php). Render-side only: no Elementor
 * data in the database needs to change. RTL-first, logical properties.
 *
 *   B1 bottom nav · B2 floating support · B3 header (phone compact, tablet one row)
 *   B4 off-canvas · B5 home hero / category tiles · B6 footer
 */

body.dmv-design { --dmv-bnav-h: 60px; }

/* ===================================================================== *
 * B1 — bottom navigation (phones ≤ 768px)
 * ===================================================================== */
.dmv-bnav { display: none; }
@media (max-width: 768px) {
	.dmv-bnav {
		display: block; position: fixed; inset-inline: 0; bottom: 0; z-index: 940;
		padding-bottom: env(safe-area-inset-bottom, 0px);
		background: rgba(15, 16, 18, .97); border-top: 1px solid #2A2E33; box-shadow: 0 -8px 24px rgba(0, 0, 0, .35);
		-webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
		font-family: var(--dmv-font, inherit);
	}
	.dmv-bnav__list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); height: var(--dmv-bnav-h); margin: 0; padding: 0; list-style: none; }
	.dmv-bnav__list > li { margin: 0; padding: 0; min-width: 0; }
	body.dmv-design .dmv-bnav__item {
		position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px;
		height: 100%; padding: 0 2px; color: #A9AEB5; text-decoration: none; font-size: 11.5px; font-weight: 500; line-height: 1.3;
		white-space: nowrap; -webkit-tap-highlight-color: transparent; transition: color .15s;
	}
	body.dmv-design .dmv-bnav__item:hover, body.dmv-design .dmv-bnav__item:focus-visible { color: #FFFFFF; }
	body.dmv-design .dmv-bnav__item[aria-current] { color: #E2BE93; }
	body.dmv-design .dmv-bnav__item[aria-current]::before {
		content: ""; position: absolute; top: 0; inset-inline: 30%; height: 2px; border-radius: 0 0 2px 2px; background: #C89B6B;
	}
	.dmv-bnav__ico { width: 22px; height: 22px; flex: none; }
	.dmv-bnav__icowrap { position: relative; display: inline-flex; }
	.dmv-bnav__badge {
		position: absolute; top: -6px; inset-inline-end: -11px; min-width: 17px; height: 17px; padding: 0 4px; box-sizing: border-box;
		border-radius: 999px; background: #C89B6B; color: #0B0B0D; font-size: 10.5px; font-weight: 700; line-height: 17px; text-align: center;
	}
	.dmv-bnav__badge[hidden] { display: none; }
	/* Content is never covered: room for the bar (the product page's buy bar reserves its own). */
	body.dmv-has-bnav:not(.dmv-has-buybar) { padding-bottom: calc(var(--dmv-bnav-h) + env(safe-area-inset-bottom, 0px)); }
	/* Not with the product buy bar (A), on checkout, with the keyboard up or the menu open. */
	body.dmv-has-buybar .dmv-bnav, body.woocommerce-checkout .dmv-bnav,
	body.dmv-kb-open .dmv-bnav, body.dmv-oc-open .dmv-bnav, html.dmv-mc-open .dmv-bnav { display: none; }
}
@media print { .dmv-bnav { display: none !important; } }

/* ===================================================================== *
 * B2 — floating support button
 * Phones: 44px, at the left edge (the end of RTL lines), above the bottom nav / buy bar.
 * Desktop: unchanged (bottom-right); WooCommerce's RTL cart totals sit on the left.
 * ===================================================================== */
@media (max-width: 768px) {
	body.dmv-design .dmv-float {
		left: 10px !important; right: auto !important; bottom: calc(14px + env(safe-area-inset-bottom, 0px));
		align-items: flex-start;
	}
	body.dmv-design.dmv-has-bnav:not(.dmv-has-buybar) .dmv-float { bottom: calc(var(--dmv-bnav-h) + 12px + env(safe-area-inset-bottom, 0px)); }
	body.dmv-design.dmv-has-buybar .dmv-float { bottom: calc(var(--dmv-buybar-h, 76px) + 12px + env(safe-area-inset-bottom, 0px)); }
	body.dmv-design .dmv-float__btn { width: 44px; height: 44px; box-shadow: 0 6px 16px rgba(0, 0, 0, .45); }
	body.dmv-design .dmv-float__btn .dmv-ico { width: 20px; height: 20px; }
	body.dmv-design .dmv-float__btn::before { display: none; }
	body.dmv-design .dmv-float:not(.is-open) .dmv-float__btn { opacity: .92; }
	body.dmv-kb-open .dmv-float { display: none; }
}

/* Any width: while the button would sit on a button, the totals or text (r22-chrome.js), it steps aside. */
body.dmv-design .dmv-float { transition: opacity .2s ease, transform .2s ease, visibility 0s linear 0s; }
body.dmv-float-tuck .dmv-float:not(.is-open):not(:focus-within) { opacity: 0; transform: translateY(10px) scale(.9); pointer-events: none; }
@media (prefers-reduced-motion: reduce) { body.dmv-design .dmv-float { transition: none; } }

/* Desktop cart / checkout: from 1350px the button sits in the page gutter (content is ≤ 1280px);
   narrower, it shrinks to the very edge so it does not sit on the totals / order summary. */
@media (min-width: 769px) and (max-width: 1349px) {
	body.dmv-design.woocommerce-cart .dmv-float, body.dmv-design.woocommerce-checkout .dmv-float { right: 8px !important; bottom: 12px; }
	body.dmv-design.woocommerce-cart .dmv-float__btn, body.dmv-design.woocommerce-checkout .dmv-float__btn { width: 44px; height: 44px; }
	body.dmv-design.woocommerce-cart .dmv-float__btn::before, body.dmv-design.woocommerce-checkout .dmv-float__btn::before { display: none; }
}

/* ===================================================================== *
 * B3 — header
 * ===================================================================== */
/* The search's visually hidden label/submit sat past the end edge in RTL and widened phone pages
   by ≈30px (sideways scroll). Pin them inside the (relative) search box. */
body.dmv-design .dmv-hsearch .dmv-visually-hidden { top: 0; inset-inline-start: 0; }

/* Search icon (header tools): only on phones, only once the search row has folded away. */
.dmv-tools__search { display: none !important; }
body.dmv-design button.dmv-tools__search { padding: 0; margin: 0; border: 0; background: transparent; cursor: pointer; font: inherit; }
@media (max-width: 767px) {
	/* Compact rows (logo 40px, search 40px). */
	body.dmv-design .dmv-hdr .dmv-hdr__row1 > .e-con-inner,
	body.dmv-design .dmv-hdr .dmv-hdr__row1:not(:has(> .e-con-inner)) { flex-wrap: wrap !important; row-gap: 6px !important; }
	body.dmv-design .dmv-hdr .dmv-hdr__row1.e-con { --padding-top: 6px; --padding-bottom: 8px; }
	body.dmv-design .dmv-hdr .dmv-hdr__search { order: 3; flex: 1 1 100% !important; max-width: none; }
	body.dmv-design .dmv-hdr .dmv-hsearch .dmv-hsearch__input { height: 40px; font-size: 14px; }
	body.dmv-design .dmv-hdr__tools-m .dmv-tools__btn { width: 40px; height: 40px; }
	/* Scrolled: one 52px row; the search returns from its icon. */
	body.dmv-layout.dmv-scrolled .dmv-hdr .dmv-hdr__search { display: none; }
	body.dmv-layout.dmv-scrolled.dmv-hsearch-open .dmv-hdr .dmv-hdr__search { display: block !important; }
	body.dmv-design.dmv-layout.dmv-scrolled { --dmv-r14-row1-h: 52px; --dmv-r14-logo-h: 36px; }
	body.dmv-layout.dmv-scrolled .dmv-hdr .dmv-hdr__row1.e-con { --padding-top: 6px; --padding-bottom: 6px; }
	body.dmv-layout.dmv-scrolled .dmv-tools__search { display: inline-flex !important; }
	body.dmv-layout.dmv-scrolled.dmv-hsearch-open .dmv-tools__search { color: #E2BE93; }
}

/* Tablets 768–1100px: ONE row — logo · search · cart / account / menu. The category button, text
   links and language move into the menu (they were a crowded second row with duplicated controls). */
@media (min-width: 768px) and (max-width: 1100px) {
	body.dmv-design .dmv-hdr .dmv-hdr__row2 { display: none !important; }
	body.dmv-design .dmv-hdr .dmv-hdr__account { display: none !important; }
	body.dmv-design .dmv-hdr .dmv-hdr__tools-m,
	body.dmv-design .dmv-hdr .dmv-hdr__tools-m.elementor-hidden-tablet,
	body.dmv-design .dmv-hdr .dmv-hdr__tools-m.elementor-hidden-desktop { display: block !important; order: 3; margin-inline-start: 0; }
	body.dmv-design .dmv-hdr .dmv-hdr__tools-m .dmv-tools__burger { display: inline-flex !important; }
	body.dmv-design .dmv-hdr .dmv-hdr__search { flex: 1 1 auto !important; max-width: 560px; margin-inline: auto; }
	body.dmv-design .dmv-hdr .dmv-hdr__row1 > .e-con-inner,
	body.dmv-design .dmv-hdr .dmv-hdr__row1:not(:has(> .e-con-inner)) { flex-wrap: nowrap !important; }
}

/* ===================================================================== *
 * B4 — off-canvas: «خرید فوری» / «استعلام قیمت» first
 * ===================================================================== */
.dmv-oc__top { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
body.dmv-design .dmv-oc__top .dmv-btn { min-height: 48px; padding-inline: 10px; font-size: 15px; font-weight: 700; justify-content: center; }
.dmv-oc__group > .dmv-oc__acc-toggle { color: #FFFFFF; }

/* ===================================================================== *
 * B5 — home: hero (Elementor .dmv-hero2 and the 0.2.0 fallback .dmv-hero)
 * ===================================================================== */
.dmv-hero-ctas { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
body.dmv-design .dmv-hero-ctas .dmv-btn { min-height: 48px; font-weight: 700; }
body.dmv-design .dmv-hero-ctas .dmv-btn--ghost {
	background: rgba(11, 11, 13, .5); border-color: rgba(226, 190, 147, .7); color: #FFFFFF;
	-webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
/* The buttons live in the subtitle widget, which shrinks to its text: let it take the row. */
body.dmv-design .dmv-hero2 .dmv-hero2__sub { align-self: stretch; width: 100%; }
/* Tablets: about 60% of the screen (was a full screen). */
@media (min-width: 768px) and (max-width: 1024px) {
	body.dmv-design .dmv-hero2.e-con, body.dmv-design .dmv-hero2 { --min-height: 62vh !important; min-height: 62vh !important; --padding-top: 120px !important; --padding-bottom: 48px !important; }
}
/* Desktop: the account pill (row 1) already links to the account — no second account icon in row 2. */
@media (min-width: 1101px) {
	body.dmv-design .dmv-hdr .dmv-hdr__tools .dmv-tools__account { display: none !important; }
}
/* Readability: a darker, even shade behind the text. */
.dmv-hero2 { isolation: isolate; }
.dmv-hero2::after {
	content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background: linear-gradient(270deg, rgba(11, 11, 13, .72) 0%, rgba(11, 11, 13, .38) 45%, rgba(11, 11, 13, 0) 75%);
}
.dmv-hero2 > .e-con-inner, .dmv-hero2 > .elementor-element { position: relative; z-index: 2; }
body.dmv-design .dmv-hero2__title .elementor-heading-title { color: #FFFFFF; text-shadow: 0 2px 16px rgba(0, 0, 0, .7); }
body.dmv-design .dmv-hero2__sub .elementor-heading-title { color: #F2F2F4; text-shadow: 0 1px 8px rgba(0, 0, 0, .8); }
@media (max-width: 767px) {
	/* ≈ half a screen (was 88vh): the categories show on the first screen. */
	body.dmv-design .dmv-hero2.e-con, body.dmv-design .dmv-hero2 {
		--min-height: min(52vh, 460px) !important; min-height: min(52vh, 460px) !important;
		--padding-top: 112px !important; --padding-bottom: 26px !important; --justify-content: flex-end !important; --gap: 10px !important;
		justify-content: flex-end !important;
	}
	.dmv-hero2::after { background: linear-gradient(0deg, rgba(11, 11, 13, .95) 0%, rgba(11, 11, 13, .62) 45%, rgba(11, 11, 13, .18) 100%); }
	body.dmv-design .dmv-hero2__title .elementor-heading-title { font-size: 27px; line-height: 1.5; }
	body.dmv-design .dmv-hero2__sub .elementor-heading-title { font-size: 14px; }
	body.dmv-design .dmv-hero2__sub .elementor-heading-title::before { width: 32px; }
	.dmv-hero-ctas { margin-top: 14px; width: 100%; max-width: 100%; }
}
@media (max-width: 374px) {
	body.dmv-design .dmv-hero-ctas .dmv-btn { font-size: 13px; padding-inline: 6px; }
}
@media (max-width: 767px) {
	body.dmv-design .dmv-hero-ctas .dmv-btn { flex: 1 1 0; min-width: 0; min-height: 46px; padding-inline: 8px; font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.dmv-hero2__title, .dmv-hero2__sub { animation: none !important; }
	/* 0.2.0 fallback hero. */
	.dmv-hero--r22 .dmv-hero__media { height: 200px; }
	.dmv-hero--r22::after { height: 200px; }
	.dmv-hero--r22 .dmv-hero__lead { font-size: 15px; }
}

/* ===================================================================== *
 * B5 — home: category photo tiles (2 columns on phones, 4 on desktop)
 * ===================================================================== */
.dmv-cattiles__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
@media (max-width: 1023px) and (min-width: 768px) { .dmv-cattiles__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 768px) {
	.dmv-cattiles__grid--n1 { grid-template-columns: minmax(0, 1fr); }
	.dmv-cattiles__grid--n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.dmv-cattiles__grid--n2 .dmv-cattile a, .dmv-cattiles__grid--n1 .dmv-cattile a { aspect-ratio: 21 / 9; }
	.dmv-cattiles__grid--n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.dmv-cattiles__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.dmv-cattile:last-child:nth-child(odd) { grid-column: 1 / -1; }
	.dmv-cattile:last-child:nth-child(odd) a { aspect-ratio: 2 / 1; }
}
.dmv-cattile { margin: 0; min-width: 0; }
body.dmv-design .dmv-cattile a {
	position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 3; border-radius: 16px; isolation: isolate;
	background: #15171A; border: 1px solid #2E3238; color: #FFFFFF; text-decoration: none; transition: border-color .2s, transform .2s;
}
@media (max-width: 767px) { body.dmv-design .dmv-cattile a { aspect-ratio: 1 / 1; border-radius: 14px; } }
.dmv-cattile__media { position: absolute; inset: 0; z-index: 0; display: block; }
body.dmv-design .dmv-cattile__media .dmv-pic,
body.dmv-design .dmv-cattile__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
body.dmv-design .dmv-cattile a::after {
	content: ""; position: absolute; inset: 0; z-index: 1;
	background: linear-gradient(0deg, rgba(11, 11, 13, .9) 0%, rgba(11, 11, 13, .45) 38%, rgba(11, 11, 13, 0) 70%);
}
.dmv-cattile__name {
	position: absolute; inset-inline: 0; bottom: 0; z-index: 2; padding: 10px 12px;
	font-size: 15px; font-weight: 700; line-height: 1.55; text-shadow: 0 1px 6px rgba(0, 0, 0, .6);
}
@media (max-width: 767px) { .dmv-cattile__name { font-size: 14px; padding: 8px 10px; } }
body.dmv-design .dmv-cattile a:hover, body.dmv-design .dmv-cattile a:focus-visible { border-color: #C89B6B; }
body.dmv-design .dmv-cattile a:hover img { transform: scale(1.04); }
@media (prefers-reduced-motion: reduce) { body.dmv-design .dmv-cattile a:hover img { transform: none; } }

/* Home bands: tighter on phones. */
@media (max-width: 767px) {
	body.dmv-design .dmv-band.e-con { --padding-top: 32px; }
	body.dmv-design .dmv-band--first.e-con { --padding-top: 24px; }
}

/* ===================================================================== *
 * B6 — footer
 * ===================================================================== */
/* The hero slogan («زیبایی ماندگار…») is not repeated in the footer. */
body.dmv-design .dmv-ftr__slogan { display: none !important; }
body.dmv-design .dmv-ftr__legal .dmv-legal { display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 0; padding: 0; list-style: none; }
body.dmv-design .dmv-ftr__legal .dmv-legal .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; }
body.dmv-design .dmv-ftr__legal .dmv-legal .elementor-icon-list-item::after { display: none !important; }
body.dmv-design .dmv-ftr__legal .dmv-legal a { color: #A9AEB5; text-decoration: none; font-size: 13px; line-height: 2; }
body.dmv-design .dmv-ftr__legal .dmv-legal a:hover { color: #E2BE93; }
@media (max-width: 767px) {
	body.dmv-design .dmv-ftr__main.e-con { --padding-top: 40px; --padding-bottom: 24px; --gap: 28px; }
	body.dmv-design .dmv-ftr__legal .dmv-legal { justify-content: center; }
}
/* 0.2.0 footer. */
.dmv-footer__legal { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 18px; margin: 0 0 8px; padding: 0; list-style: none; }
body.dmv-design .dmv-footer__legal a { color: #A9AEB5; text-decoration: none; font-size: 13px; }
body.dmv-design .dmv-footer__legal a:hover { color: #E2BE93; }

/* N46 (R23-D): a single-widget home band lays out as a block. In Elementor's flex column the
   category-tile widget got a flex base size shorter than its own grid on phones, so the next band
   (featured products) slid over the last row of tiles. */
body.dmv-design .dmv-band > .e-con-inner:has(> .elementor-element:only-child) { display: block; }

/* N50 (R23-D): «نصب اپ دماوند» — mobile menu and footer. */
body.dmv-design .dmv-appbtn { display: flex; align-items: center; gap: 12px; color: #FFFFFF; text-decoration: none; }
body.dmv-design .dmv-appbtn[hidden] { display: none !important; }
body.dmv-design .dmv-appbtn img { flex: none; border-radius: 10px; }
.dmv-appbtn__txt { display: flex; flex-direction: column; line-height: 1.45; }
.dmv-appbtn__txt small { color: #A9AEB5; font-size: 12.5px; font-weight: 400; }
body.dmv-design .dmv-appbtn--oc { min-height: 56px; margin-top: 10px; padding: 8px 14px; border-radius: 16px; border: 1px solid #2E3238; background: #181A1E; font-size: 15.5px; }
body.dmv-design .dmv-appbtn--oc:hover, body.dmv-design .dmv-appbtn--oc:focus-visible { border-color: #C89B6B; color: #FFFFFF; }
body.dmv-design .dmv-appbtn--ftr { display: flex; width: fit-content; max-width: 100%; margin: 0 0 14px; padding: 7px 16px 7px 10px; border-radius: 22px; border: 1px solid rgba(200, 155, 107, .5); background: rgba(200, 155, 107, .08); font-size: 14px; }
body.dmv-design .dmv-appbtn--ftr:hover, body.dmv-design .dmv-appbtn--ftr:focus-visible { background: rgba(200, 155, 107, .18); color: #FFFFFF; }
@media (max-width: 767px) { body.dmv-design .dmv-appbtn--ftr { margin-inline: auto; } }
@media (display-mode: standalone) { body.dmv-design .dmv-appbtn { display: none !important; } }

/* damavand-r23 */
/* Damavand Storefront R23-A — small layout fixes. */

/* N24: nothing on the cart / checkout pages hides under the fixed bottom bar(s). */
@media (max-width: 768px) {
	body.woocommerce-cart .woocommerce,
	body.woocommerce-checkout .woocommerce {
		padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px));
	}
	body.woocommerce-cart .coupon,
	body.woocommerce-cart .actions {
		scroll-margin-bottom: 120px;
	}
}

/* E22: the order button while it is being sent. */
#place_order.is-sending {
	opacity: .7;
	cursor: progress;
	pointer-events: none;
}

/* N19: support line on the 404 page. */
.dmv-404__help { text-align: center; margin-top: 18px; color: var(--dmv-muted, #a9a6a0); font-size: 14.5px; line-height: 2; }
.dmv-404__help a { color: var(--dmv-accent, #c9a36b); text-decoration: none; white-space: nowrap; }

