/* ==========================================================================
   قالب «کلاسیک» — لایه‌ی ارتقاء
   --------------------------------------------------------------------------
   کلاسیک تا امروز یعنی «قالب خامِ Creek»: تایپوگرافی ۱۴px، کارت‌های تخت،
   دکمه‌های کوتاه و هیچ امضای بصری. این فایل خودِ Creek را دست نمی‌زند (که
   بازتولیدپذیر بماند) و فقط رویش یک لایه‌ی مدرن می‌گذارد:
     • مقیاس تایپوگرافیِ سیّال با پایه‌ی ۱۶px به‌جای ۱۴px
     • امضای طراحی: «خط‌کشِ دوتایی» — یک قطعه‌ی ضخیمِ رنگ برند کنار یک خط مو
     • بافتِ گرافیکی سبک (شبکه‌ی نقطه‌ای + هاله‌ی رنگ برند) به‌جای بخش‌های تختِ خالی
     • کارت و دکمه و فرم با مقیاس شعاع/سایه‌ی مشترکِ _foundation.css
   همه‌ی رنگ‌ها از --pub-primary / --pub-dark مشتق می‌شوند، پس تغییر رنگ در پنل
   واقعاً کلِ قالب را عوض می‌کند. با خواص منطقی نوشته شده تا RTL و LTR یکی باشند.
   ========================================================================== */

body.public-theme-classic {
    --cl-ink: var(--pub-ink);
    --cl-body: var(--pub-ink-2);
    --cl-muted: var(--pub-ink-3);
    --cl-accent: var(--pub-accent, var(--pub-primary, #f6d014));
    --cl-on-accent: var(--pub-on-accent, var(--pub-on-primary, #14161a));

    /* مقیاس تایپوگرافیِ سیّال — قالب پایه همه‌چیز را px می‌داد و روی موبایل نمی‌شکست */
    --cl-display: clamp(2rem, 1.35rem + 2.9vw, 3.4rem);
    --cl-h1: clamp(1.75rem, 1.3rem + 2vw, 2.6rem);
    --cl-h2: clamp(1.4rem, 1.15rem + 1.2vw, 2rem);
    --cl-h3: clamp(1.15rem, 1.05rem + 0.45vw, 1.4rem);
    --cl-base: clamp(0.975rem, 0.94rem + 0.16vw, 1.0625rem);
    --cl-small: 0.875rem;

    font-size: var(--cl-base);
    line-height: 2;
    color: var(--cl-body);
    background: var(--pub-canvas);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* ---------- تیترها: مقیاس سیّال، وزنِ مطمئن ---------- */
body.public-theme-classic :is(h1, h2, h3, h4, h5, h6) {
    color: var(--cl-ink);
    letter-spacing: -0.015em;
    line-height: 1.35;
}
/* وزن ۸۰۰ در ایران‌یکان/پینار face ندارد (فقط ۳۰۰/۴۰۰/۵۰۰/۷۰۰)؛ مرورگر گلیف را
   ساختگی ضخیم می‌کرد و تیتر زمخت درمی‌آمد. ۷۰۰ وزنِ واقعیِ موجود است. */
body.public-theme-classic h1 { font-size: var(--cl-h1); font-weight: 700; }
body.public-theme-classic h2 { font-size: var(--cl-h2); font-weight: 700; }
body.public-theme-classic h3 { font-size: var(--cl-h3); font-weight: 700; }
body.public-theme-classic h4 { font-size: 1.0625rem; font-weight: 700; }
body.public-theme-classic :is(h5, h6) { font-size: var(--cl-small); font-weight: 700; }
body.public-theme-classic p { color: var(--cl-body); }
body.public-theme-classic .text-muted { color: var(--cl-muted) !important; }

/* ==========================================================================
   امضای طراحی — «خط‌کشِ دوتایی» زیر تیتر بخش‌ها
   یک قطعه‌ی کوتاه و ضخیمِ رنگ برند، بعد یک خط موی کم‌رنگ که تا انتها ادامه دارد.
   یک الگو، تکرارشونده، همان چیزی که کلاسیک نداشت.
   ========================================================================== */
body.public-theme-classic .heading-decorated {
    position: relative;
    font-size: var(--cl-h2);
    font-weight: 700;
    padding-block-end: 0.85rem;
    margin-block-end: clamp(1.5rem, 3vw, 2.25rem);
    border: 0;
}
body.public-theme-classic .heading-decorated::before {
    content: "";
    position: absolute;
    inset-block-end: 0;
    inset-inline-start: 0;
    inline-size: 100%;
    block-size: 1px;
    background: var(--pub-line);
}
body.public-theme-classic .heading-decorated::after {
    content: "";
    position: absolute;
    inset-block-end: 0;
    inset-inline-start: 0;
    inline-size: 56px;
    block-size: 4px;
    border-radius: var(--pub-r-pill);
    background: var(--cl-accent);
}
/* تیترِ وسط‌چین (بخش‌هایی که text-center دارند) خط‌کش را هم وسط ببرد */
body.public-theme-classic :is(.text-center, .text-lg-center) > .heading-decorated::after,
body.public-theme-classic .text-center .heading-decorated::after {
    inset-inline: 0;
    margin-inline: auto;
}

/* ==========================================================================
   ریتم بخش‌ها + بافتِ گرافیکی
   بخش‌های یک‌درمیانِ قالب پایه فقط «خاکستریِ تخت» بودند. اینجا همان بخش‌ها
   یک شبکه‌ی نقطه‌ای بسیار کم‌رنگ و یک هاله‌ی رنگ برند می‌گیرند — عمق بدون شلوغی.
   ========================================================================== */
body.public-theme-classic :is(.section, .section-md, .section-lg) {
    padding-block: var(--pub-section-y);
}
body.public-theme-classic .container {
    max-inline-size: var(--pub-container);
    padding-inline: var(--pub-gutter);
}
body.public-theme-classic :is(.bg-gray-lighter, .bg-gray-light) {
    position: relative;
    isolation: isolate;
    background-color: var(--pub-canvas);
}
body.public-theme-classic :is(.bg-gray-lighter, .bg-gray-light)::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background-image:
        radial-gradient(circle at 1px 1px,
            color-mix(in srgb, var(--pub-dark, #151515) 9%, transparent) 1px, transparent 0),
        radial-gradient(60% 55% at 100% 0%,
            color-mix(in srgb, var(--pub-primary, #f6d014) 13%, transparent) 0%, transparent 70%);
    background-size: 22px 22px, 100% 100%;
    background-repeat: repeat, no-repeat;
    /* نقطه‌ها فقط باید حس بافت بدهند، نه دیده شوند */
    opacity: .55;
}
body.public-theme-classic .bg-default { background-color: var(--pub-surface); }

/* ==========================================================================
   سربرگ و هیرو — پرده‌ی چندلایه به‌جای پرده‌ی تختِ تیره
   ========================================================================== */
body.public-theme-classic :is(.page-hero, .home-hero) {
    position: relative;
    isolation: isolate;
    background-color: var(--pub-ink);
    background-size: cover;
    background-position: center;
}
body.public-theme-classic :is(.page-hero, .home-hero)::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background:
        radial-gradient(75% 90% at 15% 10%,
            color-mix(in srgb, var(--pub-primary, #f6d014) 26%, transparent) 0%, transparent 60%),
        linear-gradient(180deg,
            color-mix(in srgb, var(--pub-dark, #151515) 62%, transparent) 0%,
            color-mix(in srgb, var(--pub-dark, #151515) 88%, transparent) 100%);
}
/* خطِ رنگ برند در لبه‌ی پایینِ سربرگ — همان امضا، این‌بار در مقیاس صفحه */
body.public-theme-classic :is(.page-hero, .home-hero)::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    inset-block-end: 0;
    z-index: 1;
    block-size: 4px;
    background: linear-gradient(90deg,
        var(--cl-accent) 0%,
        color-mix(in srgb, var(--pub-primary, #f6d014) 35%, transparent) 100%);
}
body.public-theme-classic :is(.page-hero, .home-hero) > *,
body.public-theme-classic :is(.page-hero, .home-hero) .parallax-content { position: relative; z-index: 1; }

/* public-shell.css سربرگ را با min-height ثابتِ ۲۵۰px می‌بندد و padding را صفر می‌کند؛
   به‌جای جنگیدن با آن، همان min-height سخاوتمندتر و سیّال می‌شود. */
body.public-theme-classic .page-hero,
body.public-theme-classic .page-hero .parallax-content,
body.public-theme-classic .page-hero .parallax-header {
    min-block-size: clamp(240px, 34vh, 400px) !important;
}

body.public-theme-classic .page-hero {
    --hero-title: clamp(1.8rem, 1.2rem + 2.5vw, 3.1rem);
    --hero-title-lh: 1.3;
}
body.public-theme-classic .page-hero--long { --hero-title: clamp(1.55rem, 1.1rem + 1.85vw, 2.5rem); --hero-title-lh: 1.45; }
body.public-theme-classic .page-hero--xlong { --hero-title: clamp(1.35rem, 1rem + 1.4vw, 2rem); --hero-title-lh: 1.55; }
/* قهرمانِ صفحه‌ی اصلی هم مقیاسِ خودش را می‌خواهد؛ بدون این، تیتر به --cl-display
   (تا ۳.۴rem ≈ ۵۴px) می‌افتاد و نامِ کسب‌وکار کلِ بنر را می‌گرفت. */
body.public-theme-classic .home-hero {
    --hero-title: clamp(1.9rem, 1.25rem + 2.4vw, 3rem);
    --hero-title-lh: 1.3;
}
body.public-theme-classic :is(.page-hero, .home-hero) :is(h1, h2) {
    font-size: var(--hero-title, var(--cl-display));
    line-height: var(--hero-title-lh, 1.2);
    /* پینار/ایران‌یکان فقط تا وزن ۷۰۰ face دارند؛ ۸۰۰ را مرورگر با کشیدنِ ساختگیِ
       گلیف می‌سازد و همان ضخامتِ زمخت روی تیتر می‌نشست. */
    font-weight: 700;
    letter-spacing: normal;
    color: #fff;
    margin-inline: auto;
    text-wrap: balance;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .38), 0 14px 40px rgba(0, 0, 0, .3);
}
/* خطِ امتیاز عمداً رنگِ برند دارد؛ قاعده‌ی عمومیِ «هر پاراگرافِ داخل هیرو سفید است» نباید آن را بگیرد. */
body.public-theme-classic :is(.page-hero, .home-hero) :is(p, .heading-6):not(.home-hero__note) {
    color: rgba(255, 255, 255, .88);
    /* rem و نه ch: پهنای گلیفِ «0» در این فونت‌ها حدود نصفِ پهنای حروف فارسی است،
       پس 60ch به ~۳۳۰px می‌رُمبید و متن را به سطرهای کوتاه و پرشمار می‌شکست. */
    max-inline-size: 46rem;
    margin-inline: auto;
}
body.public-theme-classic .page-hero .heading-decorated::before,
body.public-theme-classic .page-hero .heading-decorated::after,
body.public-theme-classic .home-hero .heading-decorated::before,
body.public-theme-classic .home-hero .heading-decorated::after { content: none; }

/* ==========================================================================
   ناوبری — چسبانِ شیشه‌ای، آیتم فعال با خطِ رنگ برند
   ========================================================================== */
body.public-theme-classic .rd-navbar {
    background: color-mix(in srgb, #ffffff 88%, transparent);
    -webkit-backdrop-filter: saturate(180%) blur(12px);
    backdrop-filter: saturate(180%) blur(12px);
    box-shadow: 0 1px 0 var(--pub-line), var(--pub-shadow-1);
}
body.public-theme-classic .rd-navbar-nav > li > a {
    position: relative;
    font-weight: 600;
    color: var(--cl-body);
    transition: color var(--pub-fast) var(--pub-ease);
}
body.public-theme-classic .rd-navbar-nav > li > a::after {
    content: "";
    position: absolute;
    inset-inline: 12%;
    inset-block-end: 4px;
    block-size: 3px;
    border-radius: var(--pub-r-pill);
    background: var(--cl-accent);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform var(--pub-base) var(--pub-ease);
}
body.public-theme-classic .rd-navbar-nav > li:is(:hover, .active) > a { color: var(--cl-ink); }
body.public-theme-classic .rd-navbar-nav > li:is(:hover, .active) > a::after { transform: scaleX(1); }

/* ==========================================================================
   کارت‌ها — شعاع، سایه‌ی پله‌ای، بلندشدن هنگام اشاره، بزرگ‌نماییِ آرامِ تصویر
   ========================================================================== */
body.public-theme-classic :is(.public-card, .prod-card, .svc-card, .post-classic, .post-minimal) {
    position: relative;
    background: var(--pub-surface);
    border: 1px solid var(--pub-line);
    border-radius: var(--pub-r-md);
    box-shadow: var(--pub-shadow-1);
    overflow: hidden;
    transition: box-shadow var(--pub-base) var(--pub-ease),
                transform var(--pub-base) var(--pub-ease),
                border-color var(--pub-base) var(--pub-ease);
}
body.public-theme-classic :is(.public-card, .prod-card, .svc-card, .post-classic, .post-minimal):hover {
    border-color: color-mix(in srgb, var(--pub-primary, #f6d014) 45%, var(--pub-line));
    box-shadow: var(--pub-shadow-2);
    transform: translateY(-4px);
}
/* نوارِ رنگ برند که هنگام اشاره از لبه‌ی بالای کارت باز می‌شود */
body.public-theme-classic :is(.public-card, .prod-card, .svc-card, .post-classic)::before {
    content: "";
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
    block-size: 3px;
    background: var(--cl-accent);
    transform: scaleX(0);
    transform-origin: inline-start;
    transition: transform var(--pub-base) var(--pub-ease);
    z-index: 2;
}
body.public-theme-classic :is(.public-card, .prod-card, .svc-card, .post-classic):hover::before { transform: scaleX(1); }

body.public-theme-classic :is(.cover-img, .post-cover, .prod-cover) {
    transition: transform .45s var(--pub-ease);
}
body.public-theme-classic :is(.prod-card, .svc-card, .post-classic, .public-card):hover
    :is(.cover-img, .post-cover, .prod-cover) { transform: scale(1.045); }

body.public-theme-classic :is(.prod-title, .post-classic-title) {
    font-size: var(--cl-h3);
    font-weight: 700;
    line-height: 1.5;
    color: var(--cl-ink);
}
body.public-theme-classic :is(.prod-price, .pd-price) {
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--cl-ink);
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.01em;
}

/* ==========================================================================
   دکمه‌ها — قدِ لمس‌پذیر، شعاع یکدست، رنگ برند با متنِ خودکارِ خوانا
   (قالب پایه روی زردِ برند متنِ سفید می‌گذاشت: کنتراست ۱٫۳:۱ و عملاً ناخوانا)
   ========================================================================== */
body.public-theme-classic :is(.button, .btn) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-block-size: 44px;
    padding-inline: clamp(1.1rem, 2.2vw, 1.75rem);
    border-radius: var(--pub-r-sm);
    border: 1px solid transparent;
    font-weight: 700;
    line-height: 1.25;
    text-transform: none;
    letter-spacing: 0;
    transition: transform var(--pub-fast) var(--pub-ease),
                box-shadow var(--pub-fast) var(--pub-ease),
                background-color var(--pub-fast) var(--pub-ease),
                border-color var(--pub-fast) var(--pub-ease);
}
body.public-theme-classic :is(.button-primary, .btn-primary) {
    background-image: linear-gradient(135deg,
        color-mix(in srgb, var(--pub-primary, #f6d014) 88%, #ffffff) 0%,
        var(--cl-accent) 60%,
        color-mix(in srgb, var(--pub-primary, #f6d014) 88%, var(--pub-dark, #151515)) 100%);
    background-color: var(--cl-accent);
    border-color: color-mix(in srgb, var(--pub-primary, #f6d014) 80%, var(--pub-dark, #151515));
    color: var(--cl-on-accent);
    box-shadow: 0 6px 16px -8px color-mix(in srgb, var(--pub-primary, #f6d014) 85%, transparent);
}
body.public-theme-classic :is(.button-primary, .btn-primary):hover {
    color: var(--cl-on-accent);
    transform: translateY(-1px);
    box-shadow: 0 10px 22px -8px color-mix(in srgb, var(--pub-primary, #f6d014) 90%, transparent);
}
body.public-theme-classic :is(.button-primary, .btn-primary):active { transform: translateY(0); }

body.public-theme-classic :is(.button-default-outline, .button-primary-outline, .btn-outline-primary, .btn-light) {
    background: var(--pub-surface);
    color: var(--cl-ink);
    border-color: var(--pub-line-strong);
    box-shadow: var(--pub-shadow-1);
}
body.public-theme-classic :is(.button-default-outline, .button-primary-outline, .btn-outline-primary, .btn-light):hover {
    border-color: var(--cl-accent);
    color: var(--cl-ink);
    background: var(--pub-accent-tint);
}
/* دکمه‌ی ثانویه‌ی «روی زمینه‌ی تیره» (قهرمان). امضای کلاسیک = لبه‌ی مشخص، پس
   به‌جای شیشه‌ی مات، خطِ سفیدِ پررنگ‌تر. */
body.public-theme-classic .button-ghost {
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .7);
    color: #fff;
    box-shadow: none;
}
body.public-theme-classic .button-ghost:hover,
body.public-theme-classic .button-ghost:focus {
    background: #fff;
    border-color: #fff;
    color: var(--cl-ink);
}
body.public-theme-classic .button-xs { min-block-size: 38px; padding-inline: 1rem; font-size: var(--cl-small); }

/* ==========================================================================
   فرم‌ها
   ========================================================================== */
body.public-theme-classic :is(.form-control, .form-select) {
    min-block-size: 46px;
    border: 1px solid var(--pub-line-strong);
    border-radius: var(--pub-r-sm);
    background: var(--pub-surface);
    color: var(--cl-ink);
    transition: border-color var(--pub-fast) var(--pub-ease), box-shadow var(--pub-fast) var(--pub-ease);
}
body.public-theme-classic :is(.form-control, .form-select):focus {
    border-color: var(--cl-accent);
    box-shadow: 0 0 0 4px var(--pub-accent-ring);
    outline: none;
}
body.public-theme-classic .form-label {
    font-size: var(--cl-small);
    font-weight: 700;
    color: var(--cl-ink);
}

/* ---------- پرسش و پاسخ ---------- */
body.public-theme-classic .home-faq-item {
    background: var(--pub-surface);
    border: 1px solid var(--pub-line);
    border-radius: var(--pub-r-sm);
    box-shadow: var(--pub-shadow-1);
    margin-block-end: .7rem;
    padding-inline: 1.1rem;
    transition: border-color var(--pub-fast) var(--pub-ease), box-shadow var(--pub-fast) var(--pub-ease);
}
body.public-theme-classic .home-faq-item:hover,
body.public-theme-classic .home-faq-item[open] {
    border-color: color-mix(in srgb, var(--pub-primary, #f6d014) 45%, var(--pub-line));
    box-shadow: var(--pub-shadow-2);
}

/* ==========================================================================
   پابرگ — خطِ رنگ برند در لبه‌ی بالا + هاله‌ی ملایم
   ========================================================================== */
body.public-theme-classic :is(.footer-corporate, .bg-gray-darker, .bg-gray-dark) {
    position: relative;
    isolation: isolate;
    background-color: var(--pub-ink);
}
body.public-theme-classic .footer-corporate {
    border-block-start: 4px solid var(--cl-accent);
}
body.public-theme-classic .footer-corporate::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: radial-gradient(70% 100% at 85% 0%,
        color-mix(in srgb, var(--pub-primary, #f6d014) 18%, transparent) 0%, transparent 65%);
}
body.public-theme-classic .site-foot-h { color: var(--pub-on-dark, #fff); }
/* لینک‌ها و متنِ پابرگ و نوارِ بالای هدر: خاکستریِ هاردکدِ #b7b7b7 روی زمینه‌ی تیره
   حدود ۳٫۳:۱ می‌داد (زیر حدِ ۴٫۵:۱). حالا از رنگِ تیره‌ی خودِ سایت مشتق می‌شود. */
body.public-theme-classic :is(.footer-corporate, .rd-navbar-top-panel) :is(a, p, span, li, small) {
    color: var(--pub-on-dark-muted, rgba(255, 255, 255, .78));
}
body.public-theme-classic :is(.footer-corporate, .rd-navbar-top-panel) a:hover { color: var(--pub-on-dark, #fff); }
body.public-theme-classic .site-foot-brand p { color: var(--pub-on-dark-muted, rgba(255, 255, 255, .78)); }
body.public-theme-classic .site-foot-list a { transition: color var(--pub-fast) var(--pub-ease); }

/* ==========================================================================
   واکنش‌گرایی
   ========================================================================== */
@media (max-width: 991.98px) {
    body.public-theme-classic .row.row-60 { row-gap: clamp(20px, 4vw, 34px); }
}
@media (max-width: 575.98px) {
    body.public-theme-classic { line-height: 1.9; }
    body.public-theme-classic .public-card { padding: 18px; }
    body.public-theme-classic .heading-decorated { margin-block-end: 1.25rem; }
    /* روی موبایل هیچ کارتی نباید هم‌زمان بلند شود و بچرخد — حرکت فقط دسکتاپ */
    body.public-theme-classic :is(.public-card, .prod-card, .svc-card, .post-classic):hover {
        transform: none;
    }
}

/* ==========================================================================
   نسخه‌ی انگلیسی (LTR) — همان هویت، روی اجزای .en-*
   --------------------------------------------------------------------------
   چیدمانِ انگلیسی فایل استایل کوچکِ خودش را دارد (english-public.css) و اجزای
   Creek در آن نیست؛ پس امضای قالب (خط‌کشِ دوتایی، هاله‌ی برند، کارتِ بلندشونده)
   اینجا دوباره روی همان اجزا نوشته می‌شود تا فارسی و انگلیسی یک قالب باشند.
   ========================================================================== */
body.public-theme-classic:lang(en) {
    /* لاتین به ارتفاع خطِ فارسی نیاز ندارد */
    line-height: 1.7;
}

/* تیتر بخش — همان خط‌کشِ دوتایی */
body.public-theme-classic .en-section-title h2 {
    position: relative;
    padding-block-end: .7rem;
    font-size: var(--cl-h2);
    font-weight: 800;
    letter-spacing: -0.02em;
}
body.public-theme-classic .en-section-title h2::after {
    content: "";
    position: absolute;
    inset-block-end: 0;
    inset-inline-start: 0;
    inline-size: 56px;
    block-size: 4px;
    border-radius: var(--pub-r-pill);
    background: var(--cl-accent);
}

/* بخش‌های یک‌درمیان: همان بافتِ نقطه‌ای + هاله‌ی برند */
body.public-theme-classic .en-section.soft {
    position: relative;
    isolation: isolate;
    background-color: var(--pub-canvas);
}
body.public-theme-classic .en-section.soft::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background-image:
        radial-gradient(circle at 1px 1px,
            color-mix(in srgb, var(--pub-dark, #151515) 9%, transparent) 1px, transparent 0),
        radial-gradient(60% 55% at 100% 0%,
            color-mix(in srgb, var(--pub-primary, #f6d014) 13%, transparent) 0%, transparent 70%);
    background-size: 22px 22px, 100% 100%;
    background-repeat: repeat, no-repeat;
    opacity: .55;
}

/* سربرگ‌ها — پرده‌ی چندلایه و خطِ رنگ برند */
body.public-theme-classic :is(.en-hero, .en-page-head) { position: relative; isolation: isolate; }
body.public-theme-classic :is(.en-hero, .en-page-head)::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    inset-block-end: 0;
    block-size: 4px;
    background: linear-gradient(90deg,
        var(--cl-accent) 0%,
        color-mix(in srgb, var(--pub-primary, #f6d014) 35%, transparent) 100%);
}
body.public-theme-classic .en-hero {
    background-image:
        radial-gradient(75% 90% at 12% 8%,
            color-mix(in srgb, var(--pub-primary, #f6d014) 24%, transparent) 0%, transparent 60%),
        linear-gradient(120deg,
            color-mix(in srgb, var(--pub-dark, #151515) 82%, transparent),
            color-mix(in srgb, var(--pub-dark, #151515) 48%, transparent)),
        var(--en-hero-image);
}

/* کارت‌ها — همان شعاع/سایه/بلندشدن و نوارِ رنگ برند */
body.public-theme-classic :is(.en-card, .en-content, .en-contact-card, .en-child) {
    position: relative;
    border-radius: var(--pub-r-md);
    border-color: var(--pub-line);
    box-shadow: var(--pub-shadow-1);
    transition: box-shadow var(--pub-base) var(--pub-ease),
                transform var(--pub-base) var(--pub-ease),
                border-color var(--pub-base) var(--pub-ease);
}
body.public-theme-classic :is(.en-card, .en-child):hover {
    border-color: color-mix(in srgb, var(--pub-primary, #f6d014) 45%, var(--pub-line));
    box-shadow: var(--pub-shadow-2);
    transform: translateY(-4px);
}
body.public-theme-classic .en-card { overflow: hidden; }
body.public-theme-classic .en-card::before {
    content: "";
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
    block-size: 3px;
    background: var(--cl-accent);
    transform: scaleX(0);
    transform-origin: inline-start;
    transition: transform var(--pub-base) var(--pub-ease);
    z-index: 2;
}
body.public-theme-classic .en-card:hover::before { transform: scaleX(1); }
body.public-theme-classic .en-card:hover .en-card-image img { transform: scale(1.045); }

/* دکمه — قدِ لمس‌پذیر، گرادیانِ برند، متنِ خودکارِ خوانا */
body.public-theme-classic .en-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-block-size: 44px;
    border-radius: var(--pub-r-sm);
    font-weight: 700;
    color: var(--cl-on-accent);
    background-image: linear-gradient(135deg,
        color-mix(in srgb, var(--pub-primary, #f6d014) 88%, #ffffff) 0%,
        var(--cl-accent) 60%,
        color-mix(in srgb, var(--pub-primary, #f6d014) 88%, var(--pub-dark, #151515)) 100%);
    box-shadow: 0 6px 16px -8px color-mix(in srgb, var(--pub-primary, #f6d014) 85%, transparent);
    transition: transform var(--pub-fast) var(--pub-ease), box-shadow var(--pub-fast) var(--pub-ease);
}
body.public-theme-classic .en-button:hover { transform: translateY(-1px); }
body.public-theme-classic .en-button.outline {
    background-image: none;
    background-color: var(--pub-surface);
    color: var(--cl-ink);
    border-color: var(--pub-line-strong);
    box-shadow: var(--pub-shadow-1);
}
body.public-theme-classic .en-menu .contact { color: var(--cl-on-accent); }
body.public-theme-classic .en-chip { color: var(--cl-ink); }

/* شبکه‌ها: به‌جای ۳ ستونِ ثابت، ستون‌ها با عرضِ موجود تطبیق می‌یابند */
body.public-theme-classic :is(.en-grid, .en-children, .en-gallery) {
    grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
    gap: var(--pub-gap);
}

/* پابرگ — خطِ رنگ برند + هاله */
body.public-theme-classic .en-footer {
    position: relative;
    isolation: isolate;
    border-block-start: 4px solid var(--cl-accent);
}
body.public-theme-classic .en-footer::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: radial-gradient(70% 100% at 85% 0%,
        color-mix(in srgb, var(--pub-primary, #f6d014) 18%, transparent) 0%, transparent 65%);
}

/* ==========================================================================
   فونت قالب کلاسیک: وزیرمتن (فونت پیش‌فرض سامانه — همه‌جا یکدست)
   رنگ‌ها مثل قبل از مدیریت (--pub-primary و ...) تغذیه می‌شوند.
   ========================================================================== */
body.public-theme-classic,
body.public-theme-classic :is(button, input, select, textarea,
    h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6,
    .heading-1, .heading-2, .heading-3, .heading-4, .heading-5, .heading-6,
    .heading-decorated, .heading-6, .lead, .display-1, .display-2,
    .button, .btn, .primary-font, .secondary-font) {
    font-family: "Vazirmatn", Tahoma, Arial, sans-serif !important;
}
