/* فوتر سایت (مشترک همه‌ی صفحه‌ها): روشن، کم‌ارتفاع، تمام‌عرض با فاصله‌ی ۲۵ پیکسل از لبه‌ها */
.sf { position: relative; padding: 0; background: #fff; border-top: 1px solid var(--line); text-align: start; font-size: .93rem; color: var(--muted) }
/* خط نور متحرک روی لبه‌ی بالا */
.sf::before { content: ""; position: absolute; top: -1px; right: 0; left: 0; height: 2px; background: linear-gradient(90deg, transparent, var(--brand), #7fe3d6, var(--brand), transparent); background-size: 200% 100%; animation: sfLine 6s linear infinite }
@keyframes sfLine { to { background-position: -200% 0 } }
.sf-in { width: 100%; padding: 24px 60px 0 }

.sf-grid { display: grid; grid-template-columns: minmax(0, 0.9fr) auto minmax(0, 1.7fr) 255px; gap: 28px; align-items: start }
.sf-brand img { display: block; width: 150px; height: auto; margin-bottom: 10px }
.sf-brand p {line-height: 1.95;max-width: 340px;margin: 0;text-align: justify;margin-top: -12px;}

.sf h3 { display: flex; align-items: center; gap: 10px; color: var(--ink); font-size: .98rem; margin: 0 0 12px }
.sf h3::before { content: ""; width: 16px; height: 3px; border-radius: 3px; background: linear-gradient(90deg, var(--brand), #7fe3d6); margin-inline-end: 2px }
.sf h3 .sf-all { margin-inline-start: auto }

/* site.css روی nav و nav a استایل عمومی (flex، پدینگ، پس‌زمینه‌ی هاور) دارد؛ این‌جا خنثی می‌شود */
.sf nav { display: block; gap: 0; font-size: inherit; font-weight: inherit }
.sf nav a, .sf nav a:hover { padding: 0; border-radius: 0; background: none }
.sf a { color: inherit; transition: color .25s, transform .25s }

.sf-links { display: grid; grid-template-columns: auto auto; gap: 2px 22px; list-style: none; padding: 0; margin: 0 }
.sf-links a { display: inline-block; padding: 3px 0; position: relative; white-space: nowrap }
.sf-links a:hover, .sf-posts a:hover .sf-pt, .sf-all:hover { color: var(--brand-dark) }
.sf-links a:hover { transform: translateX(-5px) }

.sf-posts { list-style: none; padding: 0; margin: 0; display: grid }
.sf-posts li + li { border-top: 1px dashed var(--line) }
.sf-posts li { min-width: 0 }
.sf-posts a { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; padding: 6px 0; transition: transform .25s }
.sf-posts a:hover { transform: translateX(-5px) }
/* عنوان مقاله همیشه در یک خط؛ اگر بلند بود با «…» کوتاه می‌شود */
.sf-pt { flex: 1; min-width: 0; color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .25s }
.sf-posts small { flex: none; font-size: .72rem; color: var(--muted); background: #e3f7f4; border-radius: 99px; padding: 0 10px }
.sf-empty { margin: 0 }
.sf-all { font-size: .82rem; font-weight: 700; color: var(--brand-dark); white-space: nowrap }
.sf-all span { display: inline-block; transition: transform .25s }
.sf-all:hover span { transform: translateX(-4px) }

.sf-contact { text-align: center; line-height: 1.8; margin: 0 0 10px; font-size: .88rem }
.sf-side { justify-self: end; width: 100% }
.sf-trust { display: flex; gap: 12px; align-items: stretch }
.sf-badges { display: flex; gap: 8px }
.sf-badge { width: 76px; height: 74px; border-radius: 16px; border: 1px dashed #bfeae3; background: linear-gradient(180deg, #fff, #effaf8); display: grid; place-items: center; align-content: center; gap: 4px; padding: 6px; text-align: center; transition: .3s var(--ease, ease) }
.sf-badge:hover { transform: translateY(-3px); border-color: var(--brand); box-shadow: 0 10px 22px rgba(14,127,116,.14) }
.sf-badge svg { width: 22px; height: 22px; stroke: var(--brand-dark); fill: none; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round }
.sf-badge span { font-size: .6rem; line-height: 1.4; color: var(--muted) }
.sf-badge img { max-width: 100%; max-height: 100%; display: block }
.sf-social { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; align-content: space-between; flex: 1 }
.sf-social a { display: grid; place-items: center; height: 33px; border-radius: 13px; background: #f1fbf9; border: 1px solid var(--line); color: var(--brand-dark); transition: .3s }
.sf-social svg { width: 17px; height: 17px; stroke: currentColor; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round }
.sf-social a:hover { background: var(--brand); border-color: var(--brand); color: #fff; transform: translateY(-3px) }

.sf-bottom { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 18px; padding: 10px 0 12px; border-top: 1px solid var(--line) }
.sf-bottom .legal { margin: 0; padding: 0; border: 0; font-size: .8rem; line-height: 1.8; color: var(--muted); text-align: center;flex: 1;}
.sf-top { flex: none; width: 38px; height: 38px; border-radius: 12px; border: 1px solid var(--line); background: #f1fbf9; color: var(--brand-dark); display: grid; place-items: center; cursor: pointer; transition: .3s }
.sf-top svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round }
.sf-top:hover { background: var(--brand); border-color: var(--brand); color: #fff; transform: translateY(-3px) }

@media (max-width: 1000px) { .sf-grid { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 26px 30px } .sf-blog { grid-column: 1 / -1; order: 3 } }
@media (max-width: 600px) {
    .sf { margin-top: 56px } .sf-in { padding: 24px 20px 0 }
    .sf-grid { grid-template-columns: minmax(0,1fr); gap: 22px }
    .sf-blog { order: 0 }
}
@media (prefers-reduced-motion: reduce) { .sf::before { animation: none } .sf a, .sf-top, .sf-all span { transition: none } }
