/* =========================================================================
   یاقوتی — استایل اصلی قالب
   سازمان‌دهی: دکمه‌ها/نشان‌ها → چیدمان پایه → هدر → ناوبری → دراپ‌داون‌ها →
   هیرو → نوار اعتماد → دسته‌بندی → راهکارها → محصولات → مقایسه → خدمات →
   محاسبه‌گر → پروژه‌ها → مجله → سوالات متداول → نظرات → بنر → فوتر →
   موبایل → toast → صفحه فروشگاه → صفحه محصول → مقاله → مودال → ۴۰۴ → ریسپانسیو
   ========================================================================= */

/* ---------- دکمه‌ها ---------- */
.yg-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  border:none; border-radius:var(--yg-radius-md); cursor:pointer;
  font-family:var(--yg-font); font-weight:700; font-size:13.5px;
  padding:12px 22px; text-decoration:none; white-space:nowrap;
  transition:transform .15s ease, box-shadow .15s ease, background-color .15s ease, opacity .15s ease;
  line-height:1.4;
}
.yg-btn:hover{ transform:translateY(-1px); }
.yg-btn:active{ transform:translateY(0); }
.yg-btn--accent{ background:var(--yg-accent); color:var(--yg-on-accent); box-shadow:0 10px 24px rgba(var(--yg-accent-rgb),0.28); }
.yg-btn--primary{ background:var(--yg-primary); color:#fff; }
.yg-btn--primary:hover{ background:#0f4ecb; }
.yg-btn--dark{ background:var(--yg-primary-dark); color:#fff; }
.yg-btn--tint{ background:var(--yg-tint-blue); color:var(--yg-primary); }
.yg-btn--outline{ background:#fff; border:1.5px solid var(--yg-border); color:var(--yg-text); }
.yg-btn--ghost{ background:rgba(255,255,255,.08); border:1.5px solid rgba(255,255,255,.4); color:#fff; }
.yg-btn--ghost:hover{ background:rgba(255,255,255,.16); }
.yg-btn--ghost-outline{ background:transparent; border:1.5px solid rgba(255,255,255,.4); color:#fff; }
.yg-btn--lg{ padding:15px 30px; font-size:15px; }
.yg-btn--sm{ padding:9px 14px; font-size:12.5px; }
.yg-btn--block{ display:flex; width:100%; }
.yg-btn[disabled]{ opacity:.55; cursor:not-allowed; transform:none; }

/* ---------- نشان‌ها (بج) ---------- */
.yg-badge{
  display:inline-block; white-space:nowrap; color:#fff; font-size:11.5px; font-weight:700;
  padding:5px 12px; border-radius:var(--yg-radius-pill);
}
.yg-badge--corner{ position:absolute; top:10px; inset-inline-start:10px; font-size:11px; padding:4px 10px; }
.badge-blue{ background:var(--yg-primary); }
.badge-gold{ background:var(--yg-gold); }
.badge-teal{ background:var(--yg-teal); }
.badge-green{ background:var(--yg-success); }
.yg-badge--blue{ background:var(--yg-tint-blue); color:var(--yg-primary); }
.yg-tag{ font-size:11px; font-weight:700; color:var(--yg-primary); background:var(--yg-tint-blue); padding:4px 10px; border-radius:var(--yg-radius-pill); white-space:nowrap; }
.yg-muted{ color:var(--yg-text-muted); font-size:12px; }

/* ---------- الگوی جایگزین تصویر ---------- */
.yg-pattern{ background-repeat:repeat; display:flex; align-items:center; justify-content:center; }
.yg-pattern-1{ background-image:repeating-linear-gradient(135deg, var(--yg-pattern-1a) 0, var(--yg-pattern-1a) 10px, var(--yg-pattern-1b) 10px, var(--yg-pattern-1b) 20px); }
.yg-pattern-2{ background-image:repeating-linear-gradient(135deg, var(--yg-pattern-2a) 0, var(--yg-pattern-2a) 10px, var(--yg-pattern-2b) 10px, var(--yg-pattern-2b) 20px); }
.yg-pattern-3{ background-image:repeating-linear-gradient(135deg, var(--yg-pattern-3a) 0, var(--yg-pattern-3a) 10px, var(--yg-pattern-3b) 10px, var(--yg-pattern-3b) 20px); }
.yg-pattern img{ display:none; }

/* ---------- چیدمان پایه ---------- */
.yg-section{ max-width:var(--yg-container); margin:0 auto; padding:50px 20px; }
.yg-section--white{ background:var(--yg-surface); max-width:none; padding-left:0; padding-right:0; }
.yg-section--white > *{ max-width:var(--yg-container); margin-left:auto; margin-right:auto; padding-left:20px; padding-right:20px; }
.yg-section--narrow{ max-width:var(--yg-container-narrow); }
.yg-section__head{ display:flex; justify-content:space-between; align-items:flex-end; gap:12px; margin-bottom:22px; flex-wrap:wrap; }
.yg-section__head--center{ flex-direction:column; text-align:center; align-items:center; margin-bottom:32px; }
.yg-section__head--dark .yg-section__title{ color:#fff; }
.yg-section__head--dark .yg-section__sub{ color:#9FB6DE; }
.yg-section__title{ font-size:clamp(20px,2.2vw,28px); font-weight:800; margin:0 0 6px; color:var(--yg-primary-dark); }
.yg-section__title--center{ text-align:center; margin:0 0 30px; }
.yg-section__title-inline{ font-weight:800; font-size:18px; margin-bottom:18px; color:var(--yg-primary-dark); }
.yg-section__sub{ color:var(--yg-text-muted); font-size:14px; margin:0; }
.yg-link-more{ color:var(--yg-primary); font-weight:700; font-size:13.5px; text-decoration:none; white-space:nowrap; display:inline-flex; align-items:center; gap:4px; }
.yg-link-more:hover{ text-decoration:underline; }
.yg-icon{ display:inline-block; vertical-align:middle; flex-shrink:0; }

/* ---------- نوار اعلان ---------- */
.yg-announcement{ position:relative; background:linear-gradient(90deg,var(--yg-primary-dark),var(--yg-primary)); color:#fff; padding:9px 48px; }
.yg-announcement__inner{ max-width:var(--yg-container); margin:0 auto; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:10px 28px; font-size:13px; font-weight:500; }
.yg-announcement__divider{ opacity:.4; }
.yg-announcement__close{ position:absolute; inset-inline-end:16px; top:50%; transform:translateY(-50%); background:transparent; border:none; color:#fff; opacity:.75; cursor:pointer; padding:4px; line-height:1; }
.yg-announcement__close:hover{ opacity:1; }

/* ---------- هدر ---------- */
.yg-header{ position:sticky; top:0; z-index:60; background:var(--yg-surface); box-shadow:0 1px 0 rgba(19,34,56,.07); }
.yg-header__row{ max-width:var(--yg-container); margin:0 auto; padding:14px 20px; display:flex; align-items:center; gap:20px; flex-wrap:wrap; }

.yg-brand{ display:flex; align-items:center; gap:10px; text-decoration:none; flex-shrink:0; color:inherit; }
.yg-brand__logo{ width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; flex-shrink:0; overflow:hidden; }
.yg-brand__logo--placeholder{ border:1.5px dashed var(--yg-primary); color:var(--yg-primary); background:var(--yg-bg); font-weight:800; font-size:17px; }
/* wordpress the_custom_logo() outputs <a class="custom-logo-link"><img .../></a> — هر دو لایه باید
   صراحتاً به‌اندازه باکس محدود شوند، وگرنه لوگوهای بزرگ (با هر ابعاد آپلودی) هدر را به‌هم می‌ریزند،
   به‌خصوص در حالت چسبان موبایل. */
.yg-brand__logo--image{ line-height:0; }
.yg-brand__logo--image a{ display:flex; align-items:center; justify-content:center; width:100%; height:100%; }
.yg-brand__logo--image img{ display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; }
.yg-brand__logo--sm{ width:38px; height:38px; border-radius:10px; font-size:14px; }
.yg-brand__text{ display:flex; flex-direction:column; }
.yg-brand__title{ font-weight:800; font-size:17px; color:var(--yg-primary-dark); line-height:1.3; }
.yg-brand__subtitle{ font-size:11px; color:var(--yg-text-muted); }

.yg-search{ position:relative; flex:1 1 320px; min-width:200px; }
.yg-search__box{ display:flex; align-items:center; background:var(--yg-bg); border-radius:12px; border:1.5px solid var(--yg-border); padding:0 14px; height:46px; }
.yg-search__icon{ color:var(--yg-text-muted); flex-shrink:0; }
.yg-search__box input{ flex:1; border:none; background:transparent; outline:none; font-family:var(--yg-font); font-size:14px; padding:0 10px; color:var(--yg-text); min-width:0; }
.yg-search__overlay{ position:fixed; inset:0; z-index:60; background:transparent; }
.yg-search__panel{ position:absolute; top:52px; right:0; left:0; background:#fff; border-radius:14px; box-shadow:var(--yg-shadow-lg); border:1px solid var(--yg-border-light); z-index:61; overflow:hidden; max-height:360px; overflow-y:auto; }
.yg-search__item{ display:flex; align-items:center; gap:10px; padding:10px 16px; cursor:pointer; border-bottom:1px solid var(--yg-bg); text-decoration:none; color:inherit; }
.yg-search__item:hover{ background:var(--yg-bg); }
.yg-search__item img{ width:34px; height:34px; border-radius:8px; object-fit:cover; flex-shrink:0; background:var(--yg-pattern-1a); }
.yg-search__item-name{ font-size:13.5px; color:var(--yg-text); flex:1; }
.yg-search__item-price{ font-size:12.5px; color:var(--yg-primary); font-weight:600; white-space:nowrap; }
.yg-search__empty{ padding:16px; text-align:center; font-size:13px; color:var(--yg-text-muted); }

.yg-header__actions{ display:flex; align-items:center; gap:6px; flex-shrink:0; margin-inline-start:auto; }
.yg-icon-btn{ position:relative; width:42px; height:42px; border-radius:11px; border:none; background:var(--yg-bg); color:var(--yg-text); display:flex; align-items:center; justify-content:center; cursor:pointer; flex-shrink:0; }
.yg-icon-btn:hover{ background:var(--yg-border-light); }
.yg-icon-btn--accent{ background:var(--yg-primary); color:#fff; }
.yg-icon-btn--accent:hover{ background:#0f4ecb; }
.yg-badge-count{ position:absolute; top:-4px; inset-inline-start:-4px; background:var(--yg-gold); color:#fff; font-size:10px; font-weight:700; border-radius:50%; width:18px; height:18px; line-height:18px; text-align:center; padding:0; overflow:hidden; box-sizing:border-box; }
.yg-badge-count--tab{ top:-2px; inset-inline-start:auto; inset-inline-end:16px; font-size:8px; width:14px; height:14px; line-height:14px; }

.yg-header__consult{ display:flex; align-items:center; gap:8px; height:42px; padding:0 16px; }
.yg-header__burger{ display:none; }

/* ---------- دراپ‌داون‌ها (حساب/علاقه‌مندی/سبد) ---------- */
.yg-dropdown{ position:relative; }
.yg-dropdown__panel{
  position:absolute; top:50px; inset-inline-end:0; background:#fff; border-radius:14px;
  box-shadow:var(--yg-shadow-lg); border:1px solid var(--yg-border-light); z-index:62;
  padding:16px; opacity:0; visibility:hidden; transform:translateY(6px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.yg-dropdown.is-open .yg-dropdown__panel{ opacity:1; visibility:visible; transform:translateY(0); }
.yg-dropdown__panel--account{ width:230px; text-align:center; }
.yg-dropdown__panel--wishlist,.yg-dropdown__panel--cart{ width:290px; max-height:380px; overflow-y:auto; }
.yg-dropdown__title{ font-weight:700; font-size:13.5px; margin-bottom:10px; }
.yg-dropdown__hello{ font-size:13.5px; margin-bottom:12px; }
.yg-dropdown__logout{ display:block; margin-top:10px; font-size:12px; color:var(--yg-text-muted); text-decoration:none; }
.yg-dropdown__logout:hover{ color:var(--yg-text); }
.yg-panel-empty{ text-align:center; color:var(--yg-text-muted); font-size:13px; padding:14px 0; }

.yg-wishlist-mini-item,.yg-mini-cart-item{ display:flex; justify-content:space-between; align-items:center; gap:8px; padding:8px 0; border-bottom:1px solid var(--yg-bg); font-size:13px; }
.yg-mini-cart-item__qty{ color:var(--yg-text-muted); }
.yg-mini-cart-item__price,.yg-wishlist-mini-item__price{ color:var(--yg-primary); font-weight:600; white-space:nowrap; }
.yg-mini-cart-total{ display:flex; justify-content:space-between; padding:12px 0 14px; font-weight:700; font-size:13.5px; }
.yg-mini-cart-total .woocommerce-Price-amount{ color:var(--yg-primary-dark); }

/* ---------- ناوبری ---------- */
.yg-nav--desktop{ border-top:1px solid var(--yg-border-lighter); }
.yg-nav-links{ max-width:var(--yg-container); margin:0 auto; padding:0 20px; display:flex; gap:26px; justify-content:center; font-size:14px; font-weight:600; flex-wrap:wrap; }
.yg-nav-links a{ padding:12px 0; text-decoration:none; color:var(--yg-text); display:inline-block; position:relative; }
.yg-nav-links a:hover,.yg-nav-links .current-menu-item > a{ color:var(--yg-primary); }
.yg-mobile-menu{ border-top:1px solid var(--yg-border-lighter); }
.yg-nav-links--mobile{ flex-direction:column; padding:10px 20px 18px; justify-content:flex-start; }
.yg-nav-links--mobile a{ padding:12px 4px; border-bottom:1px solid var(--yg-bg); font-size:14.5px; }
.yg-nav-links--fallback{ display:flex; }

.yg-reading-progress{ height:3px; background:var(--yg-border-light); }
.yg-reading-progress__bar{ height:100%; width:0; background:linear-gradient(90deg,var(--yg-primary),var(--yg-teal)); transition:width .1s linear; }

.skip-link.screen-reader-text{ position:absolute; right:10px; top:-60px; background:var(--yg-primary-dark); color:#fff; padding:10px 18px; border-radius:0 0 10px 10px; z-index:9999; }
.skip-link.screen-reader-text:focus{ top:0; }

/* ---------- هیرو ---------- */
.yg-hero{ position:relative; background:linear-gradient(135deg,var(--yg-primary-dark) 0%,var(--yg-primary-mid) 45%,var(--yg-teal) 120%); overflow:hidden; }
.yg-hero__grid-bg{
  position:absolute; inset:0; opacity:.15;
  background-image:
    repeating-linear-gradient(90deg, rgba(255,255,255,.5) 0px, rgba(255,255,255,.5) 1px, transparent 1px, transparent 64px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.5) 0px, rgba(255,255,255,.5) 1px, transparent 1px, transparent 64px);
}
.yg-hero__inner{ position:relative; max-width:var(--yg-container); margin:0 auto; padding:clamp(40px,7vw,88px) 20px; display:flex; flex-wrap:wrap; align-items:center; gap:48px; }
.yg-hero__content{ flex:1 1 420px; color:#fff; }
.yg-eyebrow{ display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.22); border-radius:var(--yg-radius-pill); padding:6px 14px; font-size:12.5px; margin-bottom:20px; color:#B9D3FF; }
.yg-hero__heading{ font-size:clamp(30px,4.2vw,52px); font-weight:800; line-height:1.35; margin:0 0 18px; }
.yg-hero__sub{ font-size:clamp(15px,1.4vw,18px); color:#CBD9F2; max-width:520px; margin:0 0 32px; font-weight:400; }
.yg-hero__actions{ display:flex; flex-wrap:wrap; gap:14px; }

.yg-hero__side{ flex:1 1 380px; min-width:280px; }
.yg-hero__side-card{ position:relative; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.18); border-radius:24px; padding:28px; backdrop-filter:blur(8px); }
.yg-hero__side-line{ position:absolute; right:50%; top:40px; bottom:40px; width:2px; background:repeating-linear-gradient(180deg, rgba(61,139,255,.5) 0 6px, transparent 6px 12px); }
.yg-hero__side-dot{ position:absolute; right:calc(50% - 5px); top:40px; width:12px; height:12px; border-radius:50%; background:var(--yg-teal-bright); box-shadow:0 0 14px 4px rgba(0,229,208,.7); animation:yg-signal-flow 2.6s ease-in-out infinite; }
@keyframes yg-signal-flow{ 0%{ transform:translateY(0); opacity:0; } 15%{ opacity:1; } 85%{ opacity:1; } 100%{ transform:translateY(216px); opacity:0; } }
.yg-hero__mini-list{ display:flex; flex-direction:column; gap:18px; }
.yg-hero__mini-card{ display:flex; align-items:center; justify-content:space-between; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:14px; padding:16px 18px; }
.yg-hero__mini-title{ color:#fff; font-weight:700; font-size:14px; }
.yg-hero__mini-sub{ color:#9FB6DE; font-size:12px; margin-top:2px; }
.yg-hero__mini-icon{ width:38px; height:38px; border-radius:10px; background:rgba(61,139,255,.18); display:flex; align-items:center; justify-content:center; color:#7CB3FF; flex-shrink:0; }

/* ---------- نوار اعتماد ---------- */
.yg-trustbar-section{ padding-top:34px; padding-bottom:0; }
.yg-trustbar{ display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:14px; }
.yg-trustbar__item{ background:var(--yg-surface); border-radius:var(--yg-radius-lg); padding:20px; display:flex; align-items:center; gap:12px; box-shadow:var(--yg-shadow-sm); }
.yg-trustbar__icon{ width:42px; height:42px; border-radius:11px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.yg-trustbar__title{ font-weight:700; font-size:13.5px; }
.yg-trustbar__sub{ font-size:12px; color:var(--yg-text-muted); margin-top:2px; }

/* ---------- دسته‌بندی‌ها ---------- */
.yg-cat-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:16px; }
.yg-cat-card{ display:block; cursor:pointer; background:var(--yg-surface); border-radius:var(--yg-radius-xl); overflow:hidden; box-shadow:var(--yg-shadow-sm); transition:transform .25s ease, box-shadow .25s ease; text-decoration:none; color:inherit; }
.yg-cat-card:hover{ transform:translateY(-5px); box-shadow:0 16px 32px rgba(7,26,61,.11); }
.yg-cat-card__img{ height:120px; }
.yg-cat-card__img img{ width:100%; height:100%; object-fit:cover; }
.yg-cat-card__body{ padding:16px; }
.yg-cat-card__name{ font-weight:700; font-size:14.5px; margin-bottom:4px; }
.yg-cat-card__desc{ font-size:12px; color:var(--yg-text-muted); margin-bottom:10px; min-height:32px; }
.yg-cat-card__foot{ display:flex; justify-content:space-between; align-items:center; }
.yg-cat-card__count{ font-size:11.5px; color:var(--yg-teal); font-weight:600; }
.yg-cat-card__link{ font-size:12px; color:var(--yg-primary); font-weight:700; display:inline-flex; align-items:center; gap:3px; }

/* ---------- راهکارها ---------- */
.yg-solutions-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:20px; max-width:var(--yg-container); margin:0 auto; padding:0 20px; }
.yg-solution-card{ background:var(--yg-bg); border-radius:var(--yg-radius-xl); padding:26px; border:1px solid var(--yg-border-light); }
.yg-solution-card__img{ height:130px; border-radius:14px; margin-bottom:18px; overflow:hidden; }
.yg-solution-card__img img{ width:100%; height:100%; object-fit:cover; display:block; }
.yg-solution-card__title{ font-weight:800; font-size:16.5px; margin-bottom:10px; color:var(--yg-primary-dark); }
.yg-solution-card__line{ font-size:13px; color:var(--yg-text-muted); margin-bottom:6px; }
.yg-solution-card__line:nth-of-type(2){ margin-bottom:16px; }
.yg-solution-card__line b{ color:var(--yg-text); }
.yg-solution-card__details{ margin-top:16px; padding-top:16px; border-top:1px solid var(--yg-border); display:grid; grid-template-columns:repeat(auto-fit,minmax(110px,1fr)); gap:10px; }
.yg-solution-card__details span{ font-size:11px; color:var(--yg-text-muted); display:block; }
.yg-solution-card__details b{ font-weight:700; font-size:13.5px; }

/* ---------- کارت و شبکه محصول ---------- */
.yg-product-grid{ max-width:var(--yg-container); margin:0 auto; padding:0 20px; display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:18px; }
.yg-product-card{ position:relative; background:var(--yg-surface); border-radius:var(--yg-radius-lg); overflow:hidden; box-shadow:var(--yg-shadow-sm); transition:transform .22s ease, box-shadow .22s ease; display:flex; flex-direction:column; }
.yg-product-card:hover{ transform:translateY(-4px); box-shadow:var(--yg-shadow-md); }
.yg-product-card__img{ position:relative; display:block; height:170px; text-decoration:none; }
.yg-product-card__img img{ width:100%; height:100%; object-fit:cover; }
.yg-wishlist-btn{ position:absolute; top:10px; inset-inline-end:10px; width:32px; height:32px; border-radius:50%; background:rgba(255,255,255,.92); border:none; display:flex; align-items:center; justify-content:center; cursor:pointer; color:var(--yg-text-muted); box-shadow:0 2px 8px rgba(7,26,61,.14); z-index:2; }
.yg-wishlist-btn .is-filled{ display:none; color:#ef4c6b; }
.yg-wishlist-btn.is-active .is-outline{ display:none; }
.yg-wishlist-btn.is-active .is-filled{ display:block; }
.yg-wishlist-btn--outline{ position:static; width:46px; height:46px; border-radius:12px; border:1.5px solid var(--yg-border); background:#fff; box-shadow:none; flex-shrink:0; }

.yg-product-card__body{ padding:14px 15px 16px; display:flex; flex-direction:column; gap:6px; flex:1; }
.yg-product-card__rating{ display:flex; align-items:center; gap:4px; color:var(--yg-gold); font-size:12px; }
.yg-product-card__rating .is-num{ color:var(--yg-text); font-weight:700; }
.yg-product-card__rating .is-count{ color:var(--yg-text-muted); }
.yg-product-card__title{ font-weight:700; font-size:13.5px; color:var(--yg-text); text-decoration:none; line-height:1.5; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.9em; }
.yg-product-card__desc{ font-size:12px; color:var(--yg-text-muted); display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; overflow:hidden; }
.yg-product-card__stock{ font-size:11px; font-weight:600; }
.yg-product-card__stock.is-in{ color:var(--yg-success); }
.yg-product-card__stock.is-low{ color:var(--yg-gold); }
.yg-product-card__stock.is-out{ color:var(--yg-text-muted); }
.yg-product-card__price{ display:flex; align-items:baseline; gap:6px; flex-wrap:wrap; font-weight:800; font-size:15px; color:var(--yg-primary-dark); margin-top:2px; }
.yg-product-card__price .woocommerce-Price-amount{ font-weight:800; }
.yg-product-card__price .is-old{ font-size:12px; font-weight:500; color:var(--yg-text-muted); text-decoration:line-through; }
.yg-product-card__price .is-old .woocommerce-Price-amount{ font-weight:500; }
.yg-product-card__price .is-discount{ font-size:11px; font-weight:700; color:#fff; background:var(--yg-gold); padding:2px 7px; border-radius:6px; }

.yg-product-card__cart-row{ display:flex; align-items:center; gap:8px; margin-top:8px; }
.yg-qty-stepper{ display:flex; align-items:center; border:1.5px solid var(--yg-border); border-radius:var(--yg-radius-md); overflow:hidden; flex-shrink:0; }
.yg-qty-stepper button{ width:28px; height:36px; border:none; background:var(--yg-bg); color:var(--yg-text); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.yg-qty-stepper button:hover{ background:var(--yg-border-light); }
.yg-qty-stepper span{ width:26px; text-align:center; font-size:13px; font-weight:700; }
.yg-product-card__cart-row .yg-btn{ flex:1; padding:10px 8px; font-size:12.5px; }
.yg-product-card__cart-row .added_to_cart{ display:none; }
.yg-compare-btn{ background:transparent; border:none; color:var(--yg-text-muted); font-size:11.5px; cursor:pointer; padding:2px 0; text-align:start; text-decoration:underline; text-underline-offset:2px; }
.yg-compare-btn:hover,.yg-compare-btn.is-active{ color:var(--yg-primary); }

/* ---------- مقایسه سریع ---------- */
.yg-compare-section{ background:var(--yg-primary-dark); padding-top:56px; padding-bottom:56px; }
.yg-compare-table-wrap{ max-width:var(--yg-container); margin:0 auto; padding:0 20px; overflow-x:auto; }
.yg-compare-table{ width:100%; border-collapse:separate; border-spacing:0; background:#fff; border-radius:var(--yg-radius-lg); overflow:hidden; min-width:720px; }
.yg-compare-table th{ background:#0E3A82; color:#fff; font-size:12.5px; font-weight:700; padding:14px 16px; text-align:start; }
.yg-compare-table td{ padding:14px 16px; font-size:13px; border-bottom:1px solid var(--yg-border-light); color:var(--yg-text); }
.yg-compare-table tr:last-child td{ border-bottom:none; }
.yg-compare-table td.is-strong{ font-weight:700; }
.yg-compare-table td.is-price{ color:var(--yg-primary); font-weight:700; white-space:nowrap; }

/* ---------- خدمات و مراحل کار ---------- */
.yg-services-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:12px; max-width:var(--yg-container); margin:0 auto 40px; padding:0 20px; }
.yg-service-card{ background:var(--yg-surface); border:1px solid var(--yg-border-light); border-radius:14px; padding:16px; display:flex; align-items:center; gap:10px; }
.yg-service-card__icon{ width:36px; height:36px; border-radius:10px; background:var(--yg-tint-blue); color:var(--yg-primary); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.yg-service-card__title{ font-size:13px; font-weight:600; }

.yg-process-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:18px; max-width:var(--yg-container); margin:0 auto; padding:0 20px; position:relative; }
.yg-process-step{ position:relative; text-align:center; padding:20px 14px; }
.yg-process-step__num{ width:46px; height:46px; border-radius:50%; background:var(--yg-primary); color:#fff; font-weight:800; font-size:17px; display:flex; align-items:center; justify-content:center; margin:0 auto 14px; }
.yg-process-step__title{ font-weight:700; font-size:14px; margin-bottom:6px; }
.yg-process-step__desc{ font-size:12px; color:var(--yg-text-muted); }

/* ---------- محاسبه‌گر تجهیزات ---------- */
.yg-calculator__box{ max-width:760px; margin:0 auto; background:var(--yg-bg); border-radius:var(--yg-radius-xl); padding:clamp(20px,3vw,36px); border:1px solid var(--yg-border-light); }
.yg-calculator__fields{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:18px; margin-bottom:22px; }
.yg-field{ display:flex; flex-direction:column; gap:8px; font-size:13px; font-weight:600; color:var(--yg-text); }
.yg-field select,.yg-field input[type="number"]{ height:44px; border-radius:10px; border:1.5px solid var(--yg-border); padding:0 12px; font-family:var(--yg-font); font-size:13.5px; background:#fff; }
.yg-field input[type="range"]{ accent-color:var(--yg-primary); }
.yg-field b{ color:var(--yg-primary); }
.yg-toggle-pair{ display:flex; gap:8px; }
.yg-toggle-btn{ flex:1; padding:10px; border-radius:10px; border:1.5px solid var(--yg-border); background:#fff; cursor:pointer; font-family:var(--yg-font); font-size:13px; font-weight:600; color:var(--yg-text-muted); }
.yg-toggle-btn.is-active{ background:var(--yg-primary); border-color:var(--yg-primary); color:#fff; }

.yg-calculator__result{ margin-top:24px; padding-top:24px; border-top:1.5px dashed var(--yg-border); }
.yg-calculator__result-title{ font-weight:800; font-size:15px; margin-bottom:14px; color:var(--yg-primary-dark); }
.yg-calculator__result-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; margin-bottom:18px; }
.yg-calculator__result-grid > div{ background:#fff; border-radius:12px; padding:12px 14px; }
.yg-calculator__result-grid span{ display:block; font-size:11px; color:var(--yg-text-muted); margin-bottom:4px; }
.yg-calculator__result-grid b{ font-size:13.5px; }
.yg-calculator__cost{ display:flex; justify-content:space-between; align-items:center; gap:14px; background:var(--yg-primary-dark); border-radius:14px; padding:16px 20px; flex-wrap:wrap; }
.yg-calculator__cost span{ display:block; font-size:11.5px; color:#9FB6DE; margin-bottom:4px; }
.yg-calculator__cost b{ color:#fff; font-size:17px; font-weight:800; }

/* ---------- نمونه پروژه‌ها ---------- */
.yg-projects-grid{ max-width:var(--yg-container); margin:0 auto; padding:0 20px; display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:18px; }
.yg-project-card{ background:var(--yg-surface); border-radius:var(--yg-radius-lg); overflow:hidden; box-shadow:var(--yg-shadow-sm); }
.yg-project-card__img{ height:150px; }
.yg-project-card__img img{ width:100%; height:100%; object-fit:cover; }
.yg-project-card__body{ padding:16px; }
.yg-project-card__row{ display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
.yg-project-card__title{ font-weight:700; font-size:14.5px; margin-bottom:8px; }
.yg-project-card__meta{ font-size:12px; color:var(--yg-text-muted); margin-bottom:3px; }

/* ---------- مجله آموزشی ---------- */
.yg-blog-grid{ max-width:var(--yg-container); margin:0 auto; padding:0 20px; display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:20px; }
.yg-blog-card{ display:block; background:var(--yg-surface); border-radius:var(--yg-radius-lg); overflow:hidden; box-shadow:var(--yg-shadow-sm); text-decoration:none; color:inherit; transition:transform .22s ease, box-shadow .22s ease; }
.yg-blog-card:hover{ transform:translateY(-4px); box-shadow:var(--yg-shadow-md); }
.yg-blog-card__img{ height:150px; }
.yg-blog-card__img img{ width:100%; height:100%; object-fit:cover; }
.yg-blog-card__body{ padding:16px; }
.yg-blog-card__cat{ display:inline-block; font-size:11px; font-weight:700; color:var(--yg-teal); background:var(--yg-tint-cyan); padding:3px 10px; border-radius:var(--yg-radius-pill); margin-bottom:10px; }
.yg-blog-card__title{ font-weight:700; font-size:14.5px; line-height:1.6; margin-bottom:8px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.yg-blog-card__excerpt{ font-size:12.5px; color:var(--yg-text-muted); margin-bottom:12px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.yg-blog-card__meta{ display:flex; justify-content:space-between; font-size:11px; color:var(--yg-text-muted); border-top:1px solid var(--yg-border-light); padding-top:10px; }
.yg-blog-card--sm .yg-blog-card__img{ height:120px; }

/* ---------- سوالات متداول ---------- */
.yg-faq-list{ max-width:var(--yg-container-narrow); margin:0 auto; padding:0 20px; display:flex; flex-direction:column; gap:10px; }
.yg-faq-item{ background:var(--yg-surface); border:1px solid var(--yg-border-light); border-radius:14px; overflow:hidden; }
.yg-faq-item__q{ width:100%; display:flex; justify-content:space-between; align-items:center; gap:12px; background:transparent; border:none; padding:16px 18px; font-family:var(--yg-font); font-size:14px; font-weight:600; text-align:start; cursor:pointer; color:var(--yg-text); }
.yg-faq-item__icon{ flex-shrink:0; width:26px; height:26px; border-radius:50%; background:var(--yg-tint-blue); color:var(--yg-primary); display:flex; align-items:center; justify-content:center; transition:transform .2s ease; }
.yg-faq-item.is-open .yg-faq-item__icon{ transform:rotate(180deg); }
.yg-faq-item__a{ padding:0 18px 18px; font-size:13.5px; color:var(--yg-text-muted); line-height:1.9; }

/* ---------- نظرات مشتریان ---------- */
.yg-testimonials-section{ background:var(--yg-bg); }
.yg-testimonials{ max-width:640px; margin:0 auto; padding:0 20px; text-align:center; }
.yg-testimonial-card{ background:var(--yg-surface); border-radius:var(--yg-radius-xl); padding:clamp(24px,4vw,44px) clamp(20px,4vw,40px); box-shadow:var(--yg-shadow-sm); min-height:190px; }
.yg-testimonial-card__stars{ color:var(--yg-gold); display:flex; justify-content:center; gap:2px; margin-bottom:16px; }
.yg-testimonial-card__text{ font-size:15px; line-height:2; color:var(--yg-text); margin-bottom:20px; }
.yg-testimonial-card__name{ font-weight:700; font-size:14px; }
.yg-testimonial-card__role{ font-size:12px; color:var(--yg-text-muted); margin-top:2px; }
.yg-testimonials__nav{ display:flex; align-items:center; justify-content:center; gap:16px; margin-top:20px; }
.yg-testimonials__nav button{ width:34px; height:34px; border-radius:50%; border:1.5px solid var(--yg-border); background:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; color:var(--yg-text); }
.yg-testimonials__nav button:hover{ background:var(--yg-tint-blue); border-color:var(--yg-primary); color:var(--yg-primary); }
.yg-testimonials__dots{ display:flex; gap:6px; }
.yg-testimonials__dots span{ width:7px; height:7px; border-radius:50%; background:var(--yg-border); display:inline-block; cursor:pointer; }
.yg-testimonials__dots span.is-active{ background:var(--yg-primary); width:20px; border-radius:4px; }

/* ---------- بنر درخواست مشاوره ---------- */
.yg-cta{ background:linear-gradient(120deg,var(--yg-primary-dark),var(--yg-primary-mid) 80%); padding:clamp(40px,6vw,70px) 20px; text-align:center; }
.yg-cta__inner{ max-width:680px; margin:0 auto; }
.yg-cta h2{ color:#fff; font-size:clamp(20px,3vw,30px); font-weight:800; margin:0 0 12px; }
.yg-cta p{ color:#CBD9F2; font-size:14.5px; margin:0 0 28px; line-height:1.9; }
.yg-cta__actions{ display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }

/* ---------- فوتر ---------- */
.yg-footer{ background:var(--yg-footer-bg); color:var(--yg-footer-text); padding-top:50px; }
.yg-footer__inner{ max-width:var(--yg-container); margin:0 auto; padding:0 20px; }
.yg-footer__grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr 1.3fr; gap:28px; padding-bottom:36px; border-bottom:1px solid rgba(255,255,255,.09); }
.yg-footer__brand{ display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.yg-footer__brand-name{ font-weight:800; font-size:15.5px; color:#fff; }
.yg-footer__desc{ font-size:12.5px; line-height:2; color:var(--yg-footer-text-dim); margin:0 0 16px; }
.yg-footer__social{ display:flex; gap:8px; }
.yg-footer__social a{ width:32px; height:32px; border-radius:9px; background:rgba(255,255,255,.08); color:#fff; display:flex; align-items:center; justify-content:center; }
.yg-footer__social a:hover{ background:var(--yg-primary); }
.yg-footer__title{ color:#fff; font-weight:700; font-size:13.5px; margin-bottom:16px; }
.yg-footer__links{ display:flex; flex-direction:column; gap:11px; font-size:12.5px; }
.yg-footer__links a,.yg-footer__links span{ color:var(--yg-footer-text-dim); text-decoration:none; }
.yg-footer__links a:hover{ color:#fff; }
.yg-footer__newsletter{ display:flex; gap:0; border-radius:10px; overflow:hidden; border:1px solid rgba(255,255,255,.16); }
.yg-footer__newsletter input{ flex:1; min-width:0; border:none; background:rgba(255,255,255,.06); color:#fff; padding:0 12px; height:42px; font-family:var(--yg-font); font-size:12.5px; }
.yg-footer__newsletter input::placeholder{ color:#7C8CAE; }
.yg-footer__newsletter button{ background:var(--yg-accent); color:#fff; border:none; padding:0 16px; font-family:var(--yg-font); font-weight:700; font-size:12.5px; cursor:pointer; }
.yg-footer__newsletter-hint{ font-size:11px; color:var(--yg-footer-text-dim); margin-top:8px; }
.yg-footer__bottom{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; padding:20px 0; font-size:12px; color:var(--yg-footer-text-dim); }
.yg-footer__legal{ display:flex; gap:18px; }
.yg-footer__legal a{ color:var(--yg-footer-text-dim); text-decoration:none; }
.yg-footer__legal a:hover{ color:#fff; }

/* ---------- نوار پایین موبایل ---------- */
.yg-mobile-tabbar{ display:none; }

/* ---------- Toast ---------- */
.yg-toast{ position:fixed; bottom:20px; left:50%; transform:translateX(-50%) translateY(20px); background:var(--yg-primary-dark); color:#fff; padding:13px 22px; border-radius:var(--yg-radius-pill); font-size:13.5px; font-weight:600; box-shadow:var(--yg-shadow-xl); z-index:200; display:flex; align-items:center; gap:8px; opacity:0; transition:opacity .25s ease, transform .25s ease; pointer-events:none; max-width:90vw; }
.yg-toast.is-visible{ opacity:1; transform:translateX(-50%) translateY(0); }
.yg-toast.is-error{ background:#a12020; }

/* ---------- سربرگ صفحه (بردکرامب + عنوان) ---------- */
.yg-page-head{ background:var(--yg-surface); border-bottom:1px solid var(--yg-border-light); padding:18px 0 26px; }
.yg-page-head--slim{ padding:14px 0; }
.yg-page-head__inner{ max-width:var(--yg-container); margin:0 auto; padding:0 20px; }
.yg-page-head--narrow .yg-page-head__inner{ max-width:var(--yg-container-narrow); }
.yg-breadcrumb{ display:flex; align-items:center; gap:8px; font-size:12.5px; color:var(--yg-text-muted); flex-wrap:wrap; margin-bottom:14px; }
.yg-breadcrumb a{ color:var(--yg-text-muted); text-decoration:none; }
.yg-breadcrumb a:hover{ color:var(--yg-primary); }
.yg-breadcrumb .is-current{ color:var(--yg-text); font-weight:600; }
.yg-breadcrumb__sep{ opacity:.5; }
.yg-page-head__row{ display:flex; justify-content:space-between; align-items:flex-end; gap:14px; flex-wrap:wrap; }
.yg-page-head__title{ font-size:clamp(19px,2.4vw,26px); font-weight:800; margin:0 0 6px; color:var(--yg-primary-dark); }
.yg-page-head__count{ font-size:12.5px; color:var(--yg-text-muted); margin:0; }
.yg-select{ height:42px; border-radius:10px; border:1.5px solid var(--yg-border); background:#fff; padding:0 12px; font-family:var(--yg-font); font-size:13px; color:var(--yg-text); }

/* ---------- چیدمان فروشگاه + فیلترها ---------- */
.yg-shop-layout{ max-width:var(--yg-container); margin:0 auto; padding:28px 20px 60px; display:grid; grid-template-columns:250px 1fr; gap:26px; align-items:start; }
.yg-filters{ background:var(--yg-surface); border:1px solid var(--yg-border-light); border-radius:var(--yg-radius-lg); padding:18px; position:sticky; top:calc(var(--yg-header-h) + 84px); max-height:calc(100vh - 120px); overflow-y:auto; }
.yg-filters__head{ display:flex; justify-content:space-between; align-items:center; font-weight:700; font-size:14px; margin-bottom:14px; padding-bottom:12px; border-bottom:1px solid var(--yg-border-light); }
.yg-filters__head button{ background:transparent; border:none; color:var(--yg-primary); font-family:var(--yg-font); font-size:12px; cursor:pointer; font-weight:600; }
.yg-filter-group{ padding:14px 0; border-bottom:1px solid var(--yg-border-light); }
.yg-filter-group:last-child{ border-bottom:none; padding-bottom:0; }
.yg-filter-group__title{ font-weight:700; font-size:13px; margin-bottom:10px; }
.yg-checkbox{ display:flex; align-items:center; gap:8px; font-size:12.8px; color:var(--yg-text); padding:5px 0; cursor:pointer; }
.yg-checkbox input{ accent-color:var(--yg-primary); width:15px; height:15px; }
.yg-price-range{ display:flex; align-items:center; gap:8px; }
.yg-price-range input{ width:0; flex:1; height:36px; border-radius:8px; border:1.5px solid var(--yg-border); padding:0 8px; font-family:var(--yg-font); font-size:12px; }
.yg-price-range span{ font-size:11px; color:var(--yg-text-muted); }
.yg-rating-pills{ display:flex; gap:6px; flex-wrap:wrap; }
.yg-rating-pills button{ border:1.5px solid var(--yg-border); background:#fff; border-radius:var(--yg-radius-pill); padding:6px 12px; font-size:12px; font-family:var(--yg-font); cursor:pointer; color:var(--yg-text); }
.yg-rating-pills button.is-active{ background:var(--yg-gold); border-color:var(--yg-gold); color:#fff; }

.yg-shop-results .yg-product-grid{ max-width:none; padding:0; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); }
.yg-pagination{ display:flex; justify-content:center; gap:6px; margin-top:34px; }
.yg-pagination .page-numbers{ min-width:38px; height:38px; padding:0 10px; border-radius:10px; display:flex; align-items:center; justify-content:center; text-decoration:none; color:var(--yg-text); font-size:13px; font-weight:600; background:var(--yg-surface); border:1px solid var(--yg-border-light); }
.yg-pagination .page-numbers.current{ background:var(--yg-primary); color:#fff; border-color:var(--yg-primary); }
.yg-pagination .page-numbers:hover:not(.current){ background:var(--yg-tint-blue); }

.yg-empty-state{ text-align:center; padding:70px 20px; }
.yg-empty-state__icon{ width:64px; height:64px; border-radius:50%; background:var(--yg-tint-blue); color:var(--yg-primary); display:flex; align-items:center; justify-content:center; margin:0 auto 18px; }
.yg-empty-state__title{ font-weight:700; font-size:16px; margin-bottom:6px; }
.yg-empty-state__text{ font-size:13px; color:var(--yg-text-muted); margin-bottom:18px; }

/* ---------- صفحه محصول ---------- */
.yg-product-main{ max-width:var(--yg-container); margin:0 auto; padding:30px 20px 10px; display:grid; grid-template-columns:minmax(0,460px) 1fr; gap:44px; }

.yg-product-gallery .woocommerce-product-gallery{ position:relative; }
.yg-product-gallery .woocommerce-product-gallery__wrapper{ border-radius:var(--yg-radius-xl); overflow:hidden; background:var(--yg-tint-blue); }
.yg-product-gallery img{ width:100%; height:auto; object-fit:cover; aspect-ratio:1/1; }
.yg-product-gallery .flex-control-thumbs{ display:flex; gap:10px; margin:12px 0 0; padding:0; list-style:none; }
.yg-product-gallery .flex-control-thumbs li{ width:76px; height:76px; border-radius:10px; overflow:hidden; cursor:pointer; border:2px solid transparent; }
.yg-product-gallery .flex-control-thumbs li img{ aspect-ratio:1/1; opacity:.75; }
.yg-product-gallery .flex-control-thumbs li.flex-active-slide{ border-color:var(--yg-primary); }
.yg-product-gallery .flex-control-thumbs li.flex-active-slide img{ opacity:1; }
.woocommerce-product-gallery__trigger{ position:absolute; top:14px; inset-inline-end:14px; background:#fff; border-radius:50%; width:36px; height:36px; z-index:5; }

.yg-product-info{ display:flex; flex-direction:column; gap:4px; }
.yg-product-info .yg-badge{ align-self:flex-start; margin-bottom:8px; }
.yg-product-info__title{ font-size:clamp(20px,2.4vw,27px); font-weight:800; margin:0 0 12px; color:var(--yg-primary-dark); line-height:1.5; }
.yg-product-info__meta{ display:flex; align-items:center; gap:6px; font-size:13px; color:var(--yg-text-muted); margin-bottom:16px; flex-wrap:wrap; }
.yg-product-info__meta .yg-stars{ color:var(--yg-gold); display:inline-flex; }
.yg-product-info__meta .is-strong{ color:var(--yg-text); font-weight:700; }
.yg-product-info__desc{ font-size:14px; color:var(--yg-text-muted); line-height:2; margin:0 0 18px; }
.yg-product-info__price{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; font-size:26px; font-weight:800; color:var(--yg-primary-dark); margin-bottom:6px; }
.yg-product-info__price .is-old{ font-size:14px; font-weight:500; color:var(--yg-text-muted); text-decoration:line-through; }
.yg-product-info__price .is-discount{ font-size:12.5px; font-weight:700; color:#fff; background:var(--yg-gold); padding:3px 10px; border-radius:8px; }
.yg-product-info__stock{ font-size:13px; font-weight:600; margin-bottom:20px; }
.yg-product-info__stock.is-in{ color:var(--yg-success); }
.yg-product-info__stock.is-low{ color:var(--yg-gold); }
.yg-product-info__stock.is-out{ color:var(--yg-text-muted); }

.yg-product-info__actions{ display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:20px 0; border-top:1px solid var(--yg-border-light); border-bottom:1px solid var(--yg-border-light); margin-bottom:20px; }
.yg-product-info__actions form.cart{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:0; }
.yg-product-info__actions .quantity{ display:flex; align-items:center; border:1.5px solid var(--yg-border); border-radius:var(--yg-radius-md); overflow:hidden; }
.yg-product-info__actions .quantity .qty{ width:44px; height:46px; text-align:center; border:none; font-family:var(--yg-font); font-size:14px; font-weight:700; -moz-appearance:textfield; }
.yg-product-info__actions .quantity .qty::-webkit-outer-spin-button,.yg-product-info__actions .quantity .qty::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.yg-product-info__actions .yg-qty-btn{ width:34px; height:46px; border:none; background:var(--yg-bg); cursor:pointer; display:flex; align-items:center; justify-content:center; color:var(--yg-text); }
.yg-product-info__actions .yg-qty-btn:hover{ background:var(--yg-border-light); }
.yg-product-info__actions .single_add_to_cart_button{ background:var(--yg-primary); color:#fff; border:none; border-radius:var(--yg-radius-md); padding:13px 30px; font-family:var(--yg-font); font-weight:700; font-size:14px; cursor:pointer; }
.yg-product-info__actions .single_add_to_cart_button:hover{ background:#0f4ecb; }
.yg-product-info__actions .single_add_to_cart_button.disabled{ opacity:.5; pointer-events:none; }
.yg-product-info__side-actions{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }

.yg-product-info__mini-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.yg-product-info__mini-grid > div{ background:var(--yg-bg); border-radius:12px; padding:12px 14px; text-align:center; }
.yg-product-info__mini-grid span{ display:block; font-size:11px; color:var(--yg-text-muted); margin-bottom:4px; }
.yg-product-info__mini-grid b{ font-size:13px; }

/* ---------- تب‌های محصول ---------- */
.yg-product-tabs-section{ max-width:var(--yg-container); margin:20px auto 0; padding:0 20px; }
.woocommerce-tabs{ margin-top:20px; }
.woocommerce-tabs ul.tabs{ display:flex; flex-wrap:wrap; gap:6px; list-style:none; margin:0 0 24px; padding:0; border-bottom:1.5px solid var(--yg-border-light); }
.woocommerce-tabs ul.tabs li{ margin:0; }
.woocommerce-tabs ul.tabs li a{ display:block; padding:12px 18px; text-decoration:none; color:var(--yg-text-muted); font-weight:700; font-size:13.5px; border-bottom:2.5px solid transparent; margin-bottom:-1.5px; }
.woocommerce-tabs ul.tabs li.active a{ color:var(--yg-primary); border-color:var(--yg-primary); }
.woocommerce-tabs .panel{ max-width:820px; font-size:14px; line-height:2; color:var(--yg-text-body); }
.woocommerce-tabs table.shop_attributes{ width:100%; border-collapse:collapse; }
.woocommerce-tabs table.shop_attributes tr:nth-child(odd) th, .woocommerce-tabs table.shop_attributes tr:nth-child(odd) td{ background:var(--yg-bg); }
.woocommerce-tabs table.shop_attributes th{ width:220px; text-align:start; padding:12px 16px; font-weight:700; font-size:13px; color:var(--yg-text); }
.woocommerce-tabs table.shop_attributes td{ padding:12px 16px; font-size:13px; color:var(--yg-text-muted); }
.woocommerce-tabs table.shop_attributes p{ margin:0; }
#reviews .comment-form-rating,#reviews .comment-form-comment,#reviews .comment-form-author,#reviews .comment-form-email{ margin-bottom:14px; }
#reviews textarea, #reviews input[type="text"], #reviews input[type="email"]{ width:100%; max-width:420px; border:1.5px solid var(--yg-border); border-radius:10px; padding:10px 12px; font-family:var(--yg-font); }
#reviews #submit{ background:var(--yg-primary); color:#fff; border:none; border-radius:10px; padding:11px 22px; font-family:var(--yg-font); font-weight:700; cursor:pointer; }
#reviews .star-rating{ color:var(--yg-gold); }

.yg-install-steps{ display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:16px; }
.yg-install-step{ text-align:center; background:var(--yg-bg); border-radius:14px; padding:20px 14px; }
.yg-install-step__num{ width:36px; height:36px; border-radius:50%; background:var(--yg-primary); color:#fff; font-weight:800; display:flex; align-items:center; justify-content:center; margin:0 auto 10px; }
.yg-install-step__title{ font-weight:700; font-size:13.5px; margin-bottom:5px; }
.yg-install-step__desc{ font-size:12px; color:var(--yg-text-muted); }

.yg-qa-list{ display:flex; flex-direction:column; gap:10px; }
.yg-qa-item{ border:1px solid var(--yg-border-light); border-radius:12px; overflow:hidden; }
.yg-qa-item__q{ width:100%; display:flex; justify-content:space-between; gap:10px; background:var(--yg-bg); border:none; padding:14px 16px; font-family:var(--yg-font); font-weight:600; font-size:13.5px; cursor:pointer; text-align:start; color:var(--yg-text); }
.yg-qa-item__icon{ flex-shrink:0; color:var(--yg-primary); transition:transform .2s ease; }
.yg-qa-item.is-open .yg-qa-item__icon{ transform:rotate(180deg); }
.yg-qa-item__a{ padding:0 16px 16px; font-size:13px; color:var(--yg-text-muted); }

.yg-mini-products{ margin-top:36px; }
.yg-mini-products__title{ font-weight:800; font-size:15px; margin-bottom:14px; color:var(--yg-primary-dark); }
.yg-mini-products__grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:14px; margin-bottom:30px; }
.yg-mini-card{ display:flex; gap:10px; align-items:center; background:var(--yg-surface); border:1px solid var(--yg-border-light); border-radius:12px; padding:10px; text-decoration:none; color:inherit; }
.yg-mini-card:hover{ border-color:var(--yg-primary); }
.yg-mini-card__img{ width:52px; height:52px; border-radius:8px; flex-shrink:0; }
.yg-mini-card__img img{ width:100%; height:100%; object-fit:cover; border-radius:8px; }
.yg-mini-card__name{ font-size:12px; font-weight:600; line-height:1.5; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.yg-mini-card__price{ font-size:12px; font-weight:700; color:var(--yg-primary); margin-top:3px; }

.yg-related-section{ max-width:var(--yg-container); margin:0 auto; padding:10px 20px 50px; }

/* ---------- نوار خرید چسبان ---------- */
.yg-sticky-buy{ position:fixed; bottom:0; inset-inline:0; background:#fff; box-shadow:0 -6px 24px rgba(7,26,61,.12); z-index:55; transform:translateY(100%); transition:transform .25s ease; }
.yg-sticky-buy.is-visible{ transform:translateY(0); }
.yg-sticky-buy__inner{ max-width:var(--yg-container); margin:0 auto; padding:12px 20px; display:flex; justify-content:space-between; align-items:center; gap:14px; }
.yg-sticky-buy__info{ display:flex; align-items:center; gap:10px; min-width:0; }
.yg-sticky-buy__thumb{ width:42px; height:42px; border-radius:8px; overflow:hidden; background:var(--yg-tint-blue); flex-shrink:0; }
.yg-sticky-buy__thumb img{ width:100%; height:100%; object-fit:cover; }
.yg-sticky-buy__name{ font-size:12.5px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:220px; }
.yg-sticky-buy__price{ font-size:13px; font-weight:700; color:var(--yg-primary); }

/* ---------- مقاله ---------- */
.yg-article{ max-width:var(--yg-container-narrow); margin:0 auto; padding:34px 20px 10px; }
.yg-article__title{ font-size:clamp(23px,3.4vw,34px); font-weight:800; line-height:1.5; margin:14px 0 16px; color:var(--yg-primary-dark); }
.yg-article__meta{ display:flex; gap:10px; align-items:center; color:var(--yg-text-muted); font-size:13px; margin-bottom:26px; }
.yg-article__cover{ height:min(52vw,360px); border-radius:var(--yg-radius-xl); margin-bottom:30px; overflow:hidden; }
.yg-article__cover img{ width:100%; height:100%; object-fit:cover; }
.yg-article__content{ font-size:15.5px; line-height:2.15; color:var(--yg-text-body); }
.yg-article__content h2{ font-size:20px; font-weight:800; margin:34px 0 14px; color:var(--yg-primary-dark); }
.yg-article__content h3{ font-size:17px; font-weight:700; margin:26px 0 12px; }
.yg-article__content p{ margin:0 0 18px; }
.yg-article__content ul,.yg-article__content ol{ margin:0 0 18px; padding-inline-start:22px; }
.yg-article__content li{ margin-bottom:8px; }
.yg-article__content img{ border-radius:14px; margin:20px 0; }
.yg-article__content a{ color:var(--yg-primary); text-decoration:underline; text-underline-offset:3px; }
.yg-article__content blockquote{ border-inline-start:3px solid var(--yg-primary); background:var(--yg-bg); padding:16px 20px; border-radius:0 12px 12px 0; margin:20px 0; color:var(--yg-text); font-size:14.5px; }
.yg-article__author{ display:flex; align-items:center; gap:14px; margin-top:40px; padding-top:26px; border-top:1px solid var(--yg-border-light); }
.yg-article__author-avatar img{ width:52px; height:52px; border-radius:50%; }
.yg-article__author-name{ font-weight:700; font-size:14px; margin-bottom:3px; }
.yg-article__author-bio{ font-size:12.5px; color:var(--yg-text-muted); }

.yg-article-cta{ background:var(--yg-tint-blue); padding:40px 20px; margin:20px 0 0; }
.yg-article-cta__inner{ max-width:var(--yg-container-narrow); margin:0 auto; text-align:center; }
.yg-article-cta__inner h2{ font-size:20px; font-weight:800; margin:0 0 8px; color:var(--yg-primary-dark); }
.yg-article-cta__inner p{ font-size:13.5px; color:var(--yg-text-muted); margin:0 0 20px; }

/* ---------- مودال درخواست مشاوره ---------- */
.yg-modal{ position:fixed; inset:0; z-index:300; display:flex; align-items:center; justify-content:center; padding:20px; }
.yg-modal[hidden]{ display:none; }
.yg-modal__backdrop{ position:absolute; inset:0; background:rgba(7,26,61,.55); backdrop-filter:blur(2px); }
.yg-modal__box{ position:relative; background:#fff; border-radius:var(--yg-radius-xl); padding:30px; width:100%; max-width:420px; box-shadow:var(--yg-shadow-xl); }
.yg-modal__box h3{ margin:0 0 8px; font-size:18px; font-weight:800; color:var(--yg-primary-dark); }
.yg-modal__box > p{ font-size:13px; color:var(--yg-text-muted); margin:0 0 20px; }
.yg-modal__close{ position:absolute; top:16px; inset-inline-end:16px; width:32px; height:32px; border-radius:50%; border:none; background:var(--yg-bg); color:var(--yg-text); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.yg-modal__box form label{ display:block; font-size:12.5px; font-weight:600; margin-bottom:14px; color:var(--yg-text); }
.yg-modal__box form label span{ color:#c0392b; }
.yg-modal__box form input,.yg-modal__box form textarea{ display:block; width:100%; margin-top:6px; border:1.5px solid var(--yg-border); border-radius:10px; padding:11px 12px; font-family:var(--yg-font); font-size:13.5px; resize:vertical; }
.yg-modal__box form button{ margin-top:6px; }

/* ---------- ۴۰۴ ---------- */
.yg-not-found{ max-width:520px; margin:0 auto; padding:90px 20px; text-align:center; }
.yg-not-found__mark{ width:84px; height:84px; border-radius:50%; background:var(--yg-tint-blue); color:var(--yg-primary); font-size:36px; font-weight:800; display:flex; align-items:center; justify-content:center; margin:0 auto 22px; }
.yg-not-found h1{ font-size:22px; font-weight:800; margin:0 0 8px; color:var(--yg-primary-dark); }
.yg-not-found p{ color:var(--yg-text-muted); font-size:14px; margin:0 0 26px; }
.yg-not-found__actions{ display:flex; gap:12px; justify-content:center; margin-bottom:30px; flex-wrap:wrap; }
.yg-not-found__search{ display:flex; align-items:center; gap:8px; background:var(--yg-bg); border:1.5px solid var(--yg-border); border-radius:12px; padding:0 14px; height:48px; max-width:360px; margin:0 auto; }
.yg-not-found__search input{ flex:1; border:none; background:transparent; font-family:var(--yg-font); font-size:13.5px; outline:none; }

/* ---------- صفحه ثابت عمومی ---------- */
.yg-static-page{ font-size:15px; line-height:2.1; color:var(--yg-text-body); }
.yg-static-page h2{ font-size:19px; font-weight:800; margin:28px 0 12px; color:var(--yg-primary-dark); }
.yg-static-page p{ margin:0 0 16px; }

/* ---------- فرم جستجوی پیش‌فرض وردپرس ---------- */
.yg-search-form{ display:flex; align-items:center; gap:8px; background:var(--yg-bg); border:1.5px solid var(--yg-border); border-radius:12px; padding:0 12px; height:46px; }
.yg-search-form input{ flex:1; border:none; background:transparent; font-family:var(--yg-font); outline:none; font-size:13.5px; }
.yg-search-form button{ background:var(--yg-primary); color:#fff; border:none; border-radius:8px; padding:8px 14px; font-family:var(--yg-font); font-weight:600; font-size:12.5px; cursor:pointer; }

/* هماهنگی با نوار ادمین وردپرس */
.admin-bar .yg-header{ top:32px; }
@media (max-width:782px){ .admin-bar .yg-header{ top:46px; } }

/* =========================================================================
   ریسپانسیو
   ========================================================================= */
@media (max-width:1024px){
  .yg-shop-layout{ grid-template-columns:220px 1fr; gap:18px; }
  .yg-product-main{ grid-template-columns:1fr; gap:30px; }
  .yg-footer__grid{ grid-template-columns:1fr 1fr 1fr; }
}

@media (max-width:960px){
  .yg-nav--desktop{ display:none; }
  .yg-header__burger{ display:flex; }
  .yg-header__consult{ display:none; }
  .yg-mobile-menu[data-open]{ display:block; }
  .yg-mobile-menu:not([data-open]){ display:none; }

  .yg-mobile-tabbar{
    display:flex; position:fixed; bottom:0; inset-inline:0; z-index:70;
    background:#fff; box-shadow:0 -2px 14px rgba(7,26,61,.08);
    padding:6px 4px calc(6px + env(safe-area-inset-bottom));
  }
  .yg-mobile-tabbar a,.yg-mobile-tabbar button{
    position:relative; flex:1; display:flex; flex-direction:column; align-items:center; gap:3px;
    background:transparent; border:none; color:var(--yg-text-muted); text-decoration:none;
    font-family:var(--yg-font); font-size:10.5px; padding:6px 2px; cursor:pointer;
  }
  .yg-mobile-tabbar a.is-active{ color:var(--yg-primary); }
  body{ padding-bottom:64px; }
  .yg-sticky-buy{ bottom:58px; }

  .yg-shop-layout{ grid-template-columns:1fr; }
  .yg-filters{ position:static; max-height:none; }
}

@media (max-width:820px){
  .yg-hero__inner{ flex-direction:column; }
  .yg-hero__content,.yg-hero__side{ flex:1 1 auto; width:100%; }
  .yg-footer__grid{ grid-template-columns:1fr 1fr; }
}

@media (max-width:640px){
  .yg-header__row{ padding:10px 14px; gap:10px; }
  .yg-brand__subtitle{ display:none; }
  .yg-search{ order:3; flex-basis:100%; }
  .yg-section{ padding:36px 16px; }
  .yg-section--white > *{ padding-left:16px; padding-right:16px; }
  .yg-page-head__inner,.yg-shop-layout,.yg-product-main,.yg-product-tabs-section,.yg-related-section,.yg-article,.yg-cat-grid,.yg-product-grid,.yg-projects-grid,.yg-blog-grid,.yg-faq-list{ padding-left:16px; padding-right:16px; }
  .yg-compare-table-wrap{ padding-left:16px; padding-right:16px; }
  .yg-dropdown__panel{ position:fixed; top:auto; bottom:0; left:0; right:0; border-radius:20px 20px 0 0; max-height:70vh; }
  .yg-dropdown__panel--account{ width:auto; }
  .yg-footer__grid{ grid-template-columns:1fr 1fr; gap:26px 16px; }
  .yg-footer__col:first-child{ grid-column:1 / -1; }
  .yg-product-info__mini-grid{ grid-template-columns:1fr; }
  .yg-product-info__actions{ flex-direction:column; align-items:stretch; }
  .yg-product-info__actions form.cart{ justify-content:space-between; }
  .yg-calculator__fields{ grid-template-columns:1fr; }
  .yg-not-found{ padding:60px 16px; }
}

@media (max-width:480px){
  .yg-footer__grid{ grid-template-columns:1fr; }
  .yg-footer__col:first-child{ grid-column:auto; }
  .yg-hero__heading{ font-size:26px; }
  .yg-cta__actions{ flex-direction:column; align-items:stretch; }
  .yg-cta__actions .yg-btn{ width:100%; }
}

/* کاهش انیمیشن برای کاربرانی که آن را در سیستم‌عامل غیرفعال کرده‌اند، در style.css نیز پوشش داده شده؛ اینجا موارد اختصاصی این فایل. */
@media (prefers-reduced-motion:reduce){
  .yg-hero__side-dot{ animation:none; }
}
