/*
Theme Name: Farano
Theme URI: https://faranoagency.ir
Author: Farano Digital Agency
Author URI: https://faranoagency.ir
Description: Lightweight, minimal and clean RTL WordPress theme.
Version: 3.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: farano
Tags: rtl, minimal, lightweight, blog, business
*/

/* ─── Font ───────────────────────────────────────────── */
@font-face {
  font-family: 'IRANSansXV';
  src: url('FONT/IRANSansXV.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* ─── Variables ──────────────────────────────────────── */
:root {
  --primary:       #4F46E5;
  --primary-light: #6366F1;
  --primary-soft:  #EEF0FF;
  --text-dark:     #1A1D29;
  --text-gray:     #6B7280;
  --bg-light:      #F8F9FC;
  --border:        #EAEBF3;
  --white:         #ffffff;
  --radius-sm:     8px;
  --radius-md:     16px;
  --radius-lg:     22px;
  --radius-xl:     30px;
  --radius-full:   50px;
  --shadow-sm:     0 4px 20px rgba(0,0,0,.04);
  --shadow-md:     0 10px 30px rgba(79,70,229,.28);
  --shadow-lg:     0 10px 40px rgba(0,0,0,.10);
  --transition:    .2s ease;
  --font:          'IRANSansXV', system-ui, sans-serif;
  --max-w:         1280px;
  --content-w:     820px;
}

/* ─── Reset ─────────────────────────────────────────── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

html { scroll-behavior:smooth; overflow-x:hidden; }

body {
  font-family: var(--font);
  font-variation-settings: 'wght' 400;
  background: var(--white);
  color: var(--text-dark);
  line-height: 1.9;
  direction: rtl;
  overflow-x: hidden;
}

img  { display:block; max-width:100%; height:auto; }
a    { text-decoration:none; color:inherit; transition:color var(--transition); }
ul   { list-style:none; }
h1,h2,h3,h4,h5,h6 { font-variation-settings:'wght' 700; line-height:1.4; }

/* ─── Utility ────────────────────────────────────────── */
.screen-reader-text {
  position:absolute; width:1px; height:1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap;
}

.farano-skip-link {
  position:absolute; top:-100%; right:1rem;
  padding:.6rem 1.2rem; background:var(--primary);
  color:var(--white); border-radius:0 0 var(--radius-sm) var(--radius-sm);
  font-size:.9rem; z-index:9999; transition:top .15s;
}
.farano-skip-link:focus { top:0; color:var(--white); }

/* ─── Layout ─────────────────────────────────────────── */
.container {
  max-width: var(--max-w);
  margin: 0 auto;
  padding: 0 24px;
  width: 100%;
}

section { padding:56px 0; overflow:hidden; }

/* Blog layout with sidebar */
.farano-layout {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 36px;
  align-items: start;
  padding: 56px 0;
}

.farano-layout--full {
  grid-template-columns: 1fr;
  max-width: var(--content-w);
  margin-inline: auto;
}

/* ─── Header ─────────────────────────────────────────── */
.farano-header {
  position: sticky; top:0; z-index:999;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--border);
  width:100%; overflow:hidden;
}

.nav-wrap {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 24px;
  padding: 16px 24px;
  max-width: var(--max-w);
  margin: 0 auto;
}

.logo-box img { height:38px; }

.main-nav { min-width:0; overflow:hidden; width:100%; }
.main-nav ul {
  display:flex; justify-content:center; gap:34px;
  overflow-x:auto; white-space:nowrap; scrollbar-width:none;
}
.main-nav ul::-webkit-scrollbar { display:none; }
.main-nav a {
  font-size:15px; font-variation-settings:'wght' 500;
  color:var(--text-dark); transition:color var(--transition);
}
.main-nav a:hover,
.main-nav .current-menu-item > a,
.main-nav .current_page_item > a { color:var(--primary); }

.phone-box {
  display:flex; align-items:center;
  border:1px solid var(--border); border-radius:var(--radius-md);
  padding:10px 20px; white-space:nowrap;
}
.phone-box span {
  font-size:14.5px; font-variation-settings:'wght' 600;
  color:var(--primary); direction:ltr;
}

/* ─── Hero ───────────────────────────────────────────── */
.hero {
  position:relative; overflow:hidden;
  padding:120px 0 80px; text-align:center;
  background:linear-gradient(180deg,#FAFBFF 0%,var(--white) 100%);
}
.hero-bg { position:absolute; inset:0; z-index:0; overflow:hidden; }
.blob {
  position:absolute; border-radius:50%;
  filter:blur(70px); opacity:.45;
}
.blob1 {
  width:clamp(280px,60vw,550px); height:clamp(280px,60vw,550px);
  background:radial-gradient(circle,#4F46E5,#818CF8);
  top:-20%; right:-15%; animation:moveBlob1 16s ease-in-out infinite;
}
.blob2 {
  width:clamp(240px,55vw,480px); height:clamp(240px,55vw,480px);
  background:radial-gradient(circle,#38BDF8,#4F46E5);
  bottom:-25%; left:-18%; animation:moveBlob2 19s ease-in-out infinite;
}
.blob3 {
  width:clamp(180px,40vw,380px); height:clamp(180px,40vw,380px);
  background:radial-gradient(circle,#F472B6,#818CF8);
  top:25%; left:40%; animation:moveBlob3 22s ease-in-out infinite;
}
.blob4 {
  width:clamp(140px,32vw,300px); height:clamp(140px,32vw,300px);
  background:radial-gradient(circle,#34D399,#4F46E5);
  top:8%; left:5%; animation:moveBlob4 25s ease-in-out infinite;
}
@keyframes moveBlob1 { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(-40px,60px) scale(1.15)} }
@keyframes moveBlob2 { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(50px,-40px) scale(1.1)} }
@keyframes moveBlob3 { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(-30px,-40px) scale(1.2)} }
@keyframes moveBlob4 { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(35px,30px) scale(0.9)} }

.hero-content { position:relative; z-index:1; animation:fadeUp .9s ease both; }
.hero h1 { font-size:clamp(28px,5vw,56px); margin-bottom:20px; color:var(--text-dark); }
.hero h1 span { color:var(--primary); }
.hero-desc { font-size:16.5px; color:var(--text-gray); max-width:620px; margin:0 auto 32px; }
.hero-btns { display:flex; align-items:center; justify-content:center; gap:16px; flex-wrap:wrap; }

/* ─── Buttons ────────────────────────────────────────── */
.btn-primary {
  display:inline-flex; align-items:center; gap:8px;
  padding:16px 44px; background:var(--primary); color:var(--white);
  font-variation-settings:'wght' 700; border-radius:var(--radius-full);
  font-size:16px; font-family:var(--font); border:none; cursor:pointer;
  box-shadow:var(--shadow-md); transition:background var(--transition),box-shadow var(--transition);
}
.btn-primary:hover { background:var(--primary-light); color:var(--white); }

.btn-outline {
  display:inline-flex; align-items:center; gap:8px;
  padding:15px 40px; border:2px solid var(--primary);
  color:var(--primary); border-radius:var(--radius-full);
  font-variation-settings:'wght' 600; font-family:var(--font);
  font-size:16px; transition:background var(--transition),color var(--transition);
}
.btn-outline:hover { background:var(--primary); color:var(--white); }

/* ─── Badge / Section Title ──────────────────────────── */
.badge {
  display:inline-block; font-size:13px; font-variation-settings:'wght' 700;
  color:var(--primary); background:var(--primary-soft);
  padding:6px 18px; border-radius:var(--radius-xl);
}

.section-title { text-align:center; margin-bottom:44px; }
.section-title .badge { margin-bottom:14px; }
.section-title h2 { font-size:clamp(24px,3.5vw,36px); color:var(--text-dark); margin-bottom:12px; }
.section-title h2 span { color:var(--primary); }
.section-title p { color:var(--text-gray); font-size:15px; max-width:560px; margin:0 auto; }

/* ─── Dot Separator ──────────────────────────────────── */
.sep {
  display:inline-block; width:3px; height:3px;
  background:var(--border); border-radius:50%;
  vertical-align:middle; margin:0 8px;
}

/* ─── SVG Arrow (inline, reusable) ──────────────────── */
/* استفاده از کلاس .icon-arrow در PHP */

/* ─── Read More Link ─────────────────────────────────── */
.read-more {
  display:inline-flex; align-items:center; gap:6px;
  font-size:14px; font-variation-settings:'wght' 600;
  color:var(--primary); transition:gap var(--transition);
}
.read-more:hover { gap:10px; }
.read-more svg { flex-shrink:0; transition:transform var(--transition); }
.read-more:hover svg { transform:translateX(-3px); }

/* ─── Services ───────────────────────────────────────── */
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.service-card {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-lg); padding:34px 28px;
  box-shadow:var(--shadow-sm);
  transition:box-shadow var(--transition),transform var(--transition);
}
.service-card:hover { box-shadow:0 8px 32px rgba(79,70,229,.1); transform:translateY(-3px); }
.service-icon {
  width:56px; height:56px; background:var(--primary-soft);
  border-radius:var(--radius-md);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:20px;
}
.service-icon img { width:26px; height:26px; }
.service-card h3 { font-size:18px; color:var(--text-dark); margin-bottom:12px; }
.service-card p  { color:var(--text-gray); font-size:14px; margin-bottom:14px; }
.service-tags { display:flex; flex-wrap:wrap; gap:8px; }
.service-tags span {
  font-size:12px; color:var(--primary); background:var(--primary-soft);
  padding:5px 12px; border-radius:20px; font-variation-settings:'wght' 500;
}

/* ─── Brands ─────────────────────────────────────────── */
.brands-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:18px; }
.brand-box {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-md); padding:20px 14px;
  display:flex; align-items:center; justify-content:center;
  min-height:80px; transition:box-shadow var(--transition);
}
.brand-box:hover { box-shadow:0 4px 16px rgba(79,70,229,.08); }
.brand-box img { height:32px; max-width:100%; }

/* ─── About (Dark) ───────────────────────────────────── */
.about-section {
  position:relative; overflow:hidden;
  background:linear-gradient(135deg,#14172A 0%,#262B5C 45%,#4F46E5 100%);
}
.about-glow1 {
  position:absolute; width:420px; height:420px;
  background:radial-gradient(circle,rgba(99,102,241,.5),transparent 70%);
  border-radius:50%; top:-140px; right:-100px; filter:blur(10px);
}
.about-glow2 {
  position:absolute; width:360px; height:360px;
  background:radial-gradient(circle,rgba(56,189,248,.35),transparent 70%);
  border-radius:50%; bottom:-160px; left:-100px; filter:blur(10px);
}
.about-wrap {
  position:relative; z-index:1;
  display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center;
}
.about-text .badge { color:#C7D2FE; background:rgba(255,255,255,.1); margin-bottom:16px; }
.about-text h2 { font-size:clamp(24px,3.5vw,34px); color:var(--white); margin-bottom:18px; }
.about-text h2 span { color:#A5B4FC; }
.about-text p { color:rgba(255,255,255,.75); margin-bottom:16px; font-size:15px; }
.about-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:8px; }
.stat-box {
  background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.15);
  border-radius:18px; padding:22px 18px; text-align:center;
}
.stat-box h3 { font-size:28px; color:var(--white); margin-bottom:6px; }
.stat-box p  { font-size:13px; color:rgba(255,255,255,.65); }
.about-values { display:flex; flex-direction:column; gap:16px; }
.value-item {
  display:flex; align-items:flex-start; gap:14px;
  background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.15);
  border-radius:var(--radius-md); padding:18px 20px;
}
.value-bullet {
  width:12px; height:12px; min-width:12px; border-radius:50%;
  background:#A5B4FC; box-shadow:0 0 0 4px rgba(165,180,252,.2); margin-top:7px;
}
.value-item h4 { font-size:15px; color:var(--white); margin-bottom:4px; }
.value-item p  { font-size:13px; color:rgba(255,255,255,.65); margin:0; }

/* ─── Contact ────────────────────────────────────────── */
.contact-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:18px; }
.contact-item {
  display:flex; flex-direction:column; align-items:center; text-align:center;
  gap:14px; background:var(--bg-light); border:1px solid var(--border);
  border-radius:18px; padding:28px 16px;
  transition:box-shadow var(--transition),transform var(--transition);
}
.contact-item:hover { box-shadow:0 8px 24px rgba(79,70,229,.1); transform:translateY(-3px); }
.contact-item .icon-box {
  width:54px; height:54px; background:var(--primary-soft);
  border-radius:var(--radius-md);
  display:flex; align-items:center; justify-content:center;
}
.contact-item .icon-box img { width:24px; height:24px; }
.contact-item h4 { font-size:14.5px; color:var(--text-dark); }
.contact-item p  { font-size:13px; color:var(--text-gray); direction:ltr; }

/* ─── Blog Entry ─────────────────────────────────────── */
.farano-entry {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-lg); overflow:hidden;
  margin-bottom:24px; box-shadow:var(--shadow-sm);
  transition:box-shadow var(--transition),transform var(--transition);
}
.farano-entry:hover { box-shadow:0 8px 32px rgba(79,70,229,.1); transform:translateY(-2px); }

.farano-entry__thumb { overflow:hidden; }
.farano-entry__thumb img {
  width:100%; aspect-ratio:16/9; object-fit:cover;
  transition:transform .4s ease;
}
.farano-entry:hover .farano-entry__thumb img { transform:scale(1.02); }

.farano-entry__body { padding:28px; }

.farano-entry__cats {
  display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px;
}
.farano-entry__cats a {
  font-size:12px; color:var(--primary); background:var(--primary-soft);
  padding:4px 12px; border-radius:20px; font-variation-settings:'wght' 600;
}

.farano-entry__title {
  font-size:clamp(17px,2.2vw,22px); color:var(--text-dark); margin-bottom:12px;
}
.farano-entry__title a { color:inherit; }
.farano-entry__title a:hover { color:var(--primary); }

.farano-entry__meta {
  display:flex; flex-wrap:wrap; align-items:center;
  gap:6px; font-size:13px; color:var(--text-gray);
  margin-bottom:14px; font-variation-settings:'wght' 400;
}
.farano-entry__meta a { color:var(--text-gray); }
.farano-entry__meta a:hover { color:var(--primary); }

.farano-entry__excerpt { font-size:14.5px; color:var(--text-gray); line-height:1.8; margin-bottom:20px; }

.farano-entry__footer {
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:10px;
  padding-top:18px; border-top:1px solid var(--border);
}
.farano-entry__tags { display:flex; flex-wrap:wrap; gap:6px; }
.farano-entry__tags a {
  font-size:12px; color:var(--text-gray); background:var(--bg-light);
  padding:3px 10px; border-radius:20px; border:1px solid var(--border);
}
.farano-entry__tags a:hover { color:var(--primary); border-color:var(--primary); }

/* ─── Single Post ────────────────────────────────────── */
.single-header {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-lg); padding:36px 36px 0; margin-bottom:0;
  overflow:hidden;
}
.single-header__inner { margin-bottom:28px; }
.single-header__thumb {
  border-radius:var(--radius-md); overflow:hidden; margin-top:28px;
}
.single-header__thumb img { width:100%; aspect-ratio:16/9; object-fit:cover; }

.single-content {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-lg); padding:36px; margin-top:24px;
  font-size:15.5px; line-height:2; color:var(--text-dark);
}
.single-content h2,
.single-content h3 { margin:2rem 0 1rem; color:var(--text-dark); }
.single-content p  { margin-bottom:1.25rem; }
.single-content ul,
.single-content ol { padding-right:1.5rem; margin-bottom:1.25rem; }
.single-content li { margin-bottom:.4rem; }
.single-content blockquote {
  border-right:3px solid var(--primary); border-left:none;
  padding:14px 20px; margin:1.5rem 0;
  background:var(--bg-light); border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  color:var(--text-gray); font-style:italic;
}
.single-content code {
  font-family:ui-monospace,monospace; font-size:.875em;
  background:var(--bg-light); padding:.15em .4em; border-radius:4px;
}
.single-content pre {
  background:var(--bg-light); border:1px solid var(--border);
  border-radius:var(--radius-sm); padding:20px;
  overflow-x:auto; font-family:ui-monospace,monospace;
  font-size:.875rem; direction:ltr; text-align:left;
}
.single-content img { border-radius:var(--radius-sm); margin:1rem auto; }
.single-content a { color:var(--primary); }
.single-content a:hover { color:var(--primary-light); }

/* Post Nav */
.post-nav {
  display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:24px;
}
.post-nav a {
  display:flex; flex-direction:column; gap:6px;
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-lg); padding:20px 24px;
  transition:box-shadow var(--transition),border-color var(--transition);
}
.post-nav a:hover { box-shadow:var(--shadow-sm); border-color:var(--primary); }
.post-nav__label { font-size:12px; color:var(--text-gray); font-variation-settings:'wght' 600; }
.post-nav__title { font-size:14px; color:var(--text-dark); font-variation-settings:'wght' 600; }
.post-nav__prev { text-align:right; }
.post-nav__next { text-align:left; }

/* ─── Archive: Category Carousel ─────────────────────── */
.cat-carousel-wrap {
  margin-bottom:44px;
}
.cat-carousel-title {
  font-size:15px; font-variation-settings:'wght' 700;
  color:var(--text-gray); margin-bottom:16px;
  display:flex; align-items:center; gap:10px;
}
.cat-carousel-title::after {
  content:''; flex:1; height:1px; background:var(--border);
}

.cat-carousel {
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:14px;
}

/* Carousel mode (JS adds .has-overflow) */
.cat-carousel.has-overflow {
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  gap:14px;
  padding-bottom:4px;
}
.cat-carousel.has-overflow::-webkit-scrollbar { display:none; }

.cat-card {
  flex-shrink:0;
  display:flex; flex-direction:column; align-items:center;
  gap:10px; cursor:pointer;
  transition:transform var(--transition);
}
.cat-card:hover { transform:translateY(-3px); }

.cat-card__img {
  width:100%;
  aspect-ratio:1/1;
  border-radius:var(--radius-md);
  overflow:hidden;
  border:2px solid var(--border);
  background:var(--bg-light);
  transition:border-color var(--transition);
}
.cat-card:hover .cat-card__img { border-color:var(--primary); }

.cat-carousel.has-overflow .cat-card { width:120px; }
.cat-carousel.has-overflow .cat-card__img { width:120px; }

.cat-card__img img {
  width:100%; height:100%; object-fit:cover;
  transition:transform .4s ease;
}
.cat-card:hover .cat-card__img img { transform:scale(1.05); }

.cat-card__img--placeholder {
  display:flex; align-items:center; justify-content:center;
  width:100%; height:100%; background:var(--primary-soft);
}
.cat-card__img--placeholder svg { width:32px; height:32px; color:var(--primary); }

.cat-card__name {
  font-size:13px; font-variation-settings:'wght' 600;
  color:var(--text-dark); text-align:center;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  max-width:100%;
}
.cat-card__count {
  font-size:11px; color:var(--text-gray);
  background:var(--bg-light); border:1px solid var(--border);
  padding:2px 8px; border-radius:20px;
}

/* Active category */
.cat-card.is-active .cat-card__img { border-color:var(--primary); }
.cat-card.is-active .cat-card__name { color:var(--primary); }

/* ─── Archive Header ─────────────────────────────────── */
.archive-header {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-lg); padding:28px 32px;
  margin-bottom:32px;
  display:flex; align-items:center; gap:20px; flex-wrap:wrap;
}
.archive-header__icon {
  width:52px; height:52px; background:var(--primary-soft);
  border-radius:var(--radius-md);
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.archive-header__icon svg { width:24px; height:24px; color:var(--primary); }
.archive-header__label { font-size:12px; color:var(--text-gray); font-variation-settings:'wght' 600; margin-bottom:4px; }
.archive-header h1 { font-size:clamp(20px,2.5vw,28px); color:var(--text-dark); margin-bottom:4px; }
.archive-header p  { font-size:14px; color:var(--text-gray); }

/* ─── Sidebar ────────────────────────────────────────── */
.farano-sidebar { display:flex; flex-direction:column; gap:24px; }

.sidebar-widget {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-lg); overflow:hidden;
}
.sidebar-widget__head {
  padding:18px 22px; border-bottom:1px solid var(--border);
  display:flex; align-items:center; gap:10px;
}
.sidebar-widget__head-icon {
  width:32px; height:32px; background:var(--primary-soft);
  border-radius:var(--radius-sm);
  display:flex; align-items:center; justify-content:center;
}
.sidebar-widget__head-icon svg { width:16px; height:16px; color:var(--primary); }
.sidebar-widget__title {
  font-size:14px; font-variation-settings:'wght' 700; color:var(--text-dark);
}
.sidebar-widget__body { padding:18px 22px; }

/* Search widget */
.sidebar-search { display:flex; gap:8px; }
.sidebar-search input {
  flex:1; padding:10px 14px; border:1px solid var(--border);
  border-radius:var(--radius-sm); font-family:var(--font);
  font-size:14px; background:var(--bg-light); direction:rtl;
  transition:border-color var(--transition);
}
.sidebar-search input:focus {
  outline:none; border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(79,70,229,.1);
}
.sidebar-search button {
  width:40px; height:40px; background:var(--primary); color:var(--white);
  border:none; border-radius:var(--radius-sm); cursor:pointer;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
  transition:background var(--transition);
}
.sidebar-search button:hover { background:var(--primary-light); }
.sidebar-search button svg { width:16px; height:16px; }

/* Recent posts widget */
.sidebar-posts { display:flex; flex-direction:column; gap:0; }
.sidebar-post {
  display:flex; gap:12px; align-items:center;
  padding:12px 0; border-bottom:1px solid var(--border);
}
.sidebar-post:last-child { border-bottom:none; padding-bottom:0; }
.sidebar-post__thumb {
  width:56px; height:56px; border-radius:var(--radius-sm);
  overflow:hidden; flex-shrink:0; background:var(--bg-light);
}
.sidebar-post__thumb img { width:100%; height:100%; object-fit:cover; }
.sidebar-post__info { flex:1; min-width:0; }
.sidebar-post__title {
  font-size:13px; font-variation-settings:'wght' 600;
  color:var(--text-dark); line-height:1.5; margin-bottom:4px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden;
}
.sidebar-post__title:hover { color:var(--primary); }
.sidebar-post__date { font-size:11px; color:var(--text-gray); }

/* Categories widget */
.sidebar-cats { display:flex; flex-direction:column; gap:0; }
.sidebar-cat {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 0; border-bottom:1px solid var(--border);
  font-size:14px; color:var(--text-dark);
  transition:color var(--transition);
}
.sidebar-cat:last-child { border-bottom:none; }
.sidebar-cat:hover { color:var(--primary); }
.sidebar-cat__count {
  font-size:12px; color:var(--text-gray); background:var(--bg-light);
  border:1px solid var(--border); padding:2px 8px; border-radius:20px;
}

/* Tags widget */
.sidebar-tags { display:flex; flex-wrap:wrap; gap:8px; }
.sidebar-tags a {
  font-size:12px; color:var(--text-gray); background:var(--bg-light);
  border:1px solid var(--border); padding:5px 12px; border-radius:20px;
  transition:color var(--transition),border-color var(--transition),background var(--transition);
}
.sidebar-tags a:hover {
  color:var(--primary); border-color:var(--primary); background:var(--primary-soft);
}

/* ─── Search Page ────────────────────────────────────── */
.search-header {
  background:linear-gradient(135deg,var(--primary-soft) 0%,var(--white) 100%);
  border:1px solid var(--border); border-radius:var(--radius-lg);
  padding:40px 36px; margin-bottom:32px; text-align:center;
}
.search-header h1 { font-size:clamp(20px,3vw,30px); margin-bottom:8px; }
.search-header h1 span { color:var(--primary); }
.search-header p { color:var(--text-gray); margin-bottom:24px; }

.search-form-wrap {
  max-width:560px; margin:0 auto;
  display:flex; gap:10px;
}
.search-form-wrap input {
  flex:1; padding:14px 18px; border:1px solid var(--border);
  border-radius:var(--radius-sm); font-family:var(--font);
  font-size:15px; background:var(--white); direction:rtl;
  transition:border-color var(--transition);
}
.search-form-wrap input:focus {
  outline:none; border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(79,70,229,.1);
}
.search-form-wrap button {
  padding:14px 28px; background:var(--primary); color:var(--white);
  border:none; border-radius:var(--radius-sm); font-family:var(--font);
  font-size:14px; font-variation-settings:'wght' 600;
  cursor:pointer; transition:background var(--transition);
  display:flex; align-items:center; gap:8px;
}
.search-form-wrap button:hover { background:var(--primary-light); }
.search-form-wrap button svg { width:16px; height:16px; }

/* ─── Comments ───────────────────────────────────────── */
.farano-comments {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-lg); overflow:hidden;
  margin-top:24px;
}

.comments-head {
  padding:24px 32px; border-bottom:1px solid var(--border);
  display:flex; align-items:center; gap:12px;
}
.comments-head-icon {
  width:40px; height:40px; background:var(--primary-soft);
  border-radius:var(--radius-sm);
  display:flex; align-items:center; justify-content:center;
}
.comments-head-icon svg { width:18px; height:18px; color:var(--primary); }
.comments-head h2 { font-size:17px; color:var(--text-dark); }
.comments-head .comments-count {
  margin-right:auto; font-size:13px; color:var(--text-gray);
  background:var(--bg-light); border:1px solid var(--border);
  padding:3px 12px; border-radius:var(--radius-full);
}

/* Comment List */
.comment-list-wrap { padding:0 32px; }
.comment-list { list-style:none; }

.farano-comment {
  padding:24px 0;
  border-bottom:1px solid var(--border);
}
.farano-comment:last-child { border-bottom:none; }

.comment-inner { display:flex; gap:14px; }

.comment-avatar {
  flex-shrink:0; width:44px; height:44px;
  border-radius:50%; overflow:hidden;
  border:2px solid var(--primary-soft);
  background:var(--bg-light);
  display:flex; align-items:center; justify-content:center;
}
.comment-avatar img { width:100%; height:100%; object-fit:cover; }
.comment-avatar-fallback {
  width:100%; height:100%; display:flex; align-items:center; justify-content:center;
  background:var(--primary-soft); border-radius:50%;
  font-size:18px; font-variation-settings:'wght' 700; color:var(--primary);
}

.comment-body { flex:1; min-width:0; }

.comment-meta-row {
  display:flex; align-items:center; flex-wrap:wrap; gap:8px;
  margin-bottom:10px;
}
.comment-author-name {
  font-size:14px; font-variation-settings:'wght' 700; color:var(--text-dark);
}
.comment-author-phone {
  font-size:12px; color:var(--text-gray); direction:ltr;
}
.comment-date {
  font-size:12px; color:var(--text-gray); margin-right:auto;
}
.comment-moderation {
  font-size:12px; color:#F59E0B; background:#FFFBEB;
  border:1px solid #FDE68A; padding:2px 10px; border-radius:20px;
}

.comment-text {
  font-size:14.5px; line-height:1.85; color:var(--text-dark);
  margin-bottom:12px;
}
.comment-text p { margin-bottom:.5rem; }
.comment-text p:last-child { margin-bottom:0; }

.comment-reply-btn {
  display:inline-flex; align-items:center; gap:6px;
  font-size:13px; font-variation-settings:'wght' 600;
  color:var(--text-gray); background:var(--bg-light);
  border:1px solid var(--border); border-radius:var(--radius-full);
  padding:5px 14px; cursor:pointer; transition:all var(--transition);
  font-family:var(--font);
}
.comment-reply-btn:hover { color:var(--primary); border-color:var(--primary); background:var(--primary-soft); }
.comment-reply-btn svg { width:13px; height:13px; }

/* Nested comments */
.children {
  list-style:none; padding-right:58px; margin-top:0;
}
.children .farano-comment { padding:16px 0; }
.children .farano-comment:first-child {
  border-top:1px dashed var(--border); margin-top:0;
}
.children .comment-avatar { width:36px; height:36px; }
.children .comment-author-name { font-size:13px; }

/* Comment Form */
.comment-form-wrap {
  padding:28px 32px;
  border-top:1px solid var(--border);
  background:var(--bg-light);
}

.comment-form-head { margin-bottom:24px; }
.comment-form-head h3 {
  font-size:17px; color:var(--text-dark); margin-bottom:4px;
}
.comment-form-head p { font-size:13px; color:var(--text-gray); }

.cancel-reply-link {
  font-size:13px; color:var(--text-gray); margin-right:10px;
}
.cancel-reply-link:hover { color:var(--primary); }

.comment-form-grid {
  display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px;
}

.form-group { display:flex; flex-direction:column; gap:6px; }
.form-group label {
  font-size:13px; font-variation-settings:'wght' 600; color:var(--text-dark);
  display:flex; align-items:center; gap:4px;
}
.form-group label .required { color:#EF4444; font-size:16px; line-height:1; }

.form-control {
  width:100%; padding:11px 14px; border:1px solid var(--border);
  border-radius:var(--radius-sm); font-family:var(--font);
  font-size:14px; color:var(--text-dark); background:var(--white);
  direction:rtl; transition:border-color var(--transition),box-shadow var(--transition);
}
.form-control:focus {
  outline:none; border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(79,70,229,.1);
}
.form-control::placeholder { color:var(--text-gray); font-size:13px; }

textarea.form-control { min-height:130px; resize:vertical; }

.form-group-full { grid-column:1/-1; }

.comment-submit-row {
  display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-top:6px;
}
.comment-submit-row .btn-primary { padding:12px 36px; font-size:15px; }
.comment-privacy {
  font-size:12px; color:var(--text-gray); display:flex; align-items:center; gap:6px;
}
.comment-privacy svg { width:14px; height:14px; color:var(--text-gray); }

/* ─── Pagination ─────────────────────────────────────── */
.farano-pagination { margin-top:12px; text-align:center; }
.farano-pagination .nav-links {
  display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:8px;
}
.farano-pagination .page-numbers {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:40px; height:40px; padding:0 12px;
  border:1px solid var(--border); border-radius:var(--radius-sm);
  font-size:14px; color:var(--text-gray); background:var(--white);
  transition:all var(--transition);
}
.farano-pagination .page-numbers:hover { border-color:var(--primary); color:var(--primary); }
.farano-pagination .page-numbers.current {
  background:var(--primary); border-color:var(--primary); color:var(--white);
}

/* ─── No Results ─────────────────────────────────────── */
.no-results {
  text-align:center; padding:60px 24px;
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--radius-lg);
}
.no-results svg { width:48px; height:48px; color:var(--border); margin:0 auto 16px; }
.no-results h2 { font-size:18px; color:var(--text-dark); margin-bottom:8px; }
.no-results p  { color:var(--text-gray); font-size:14px; }

/* ─── 404 ────────────────────────────────────────────── */
.farano-404 { text-align:center; padding:80px 24px; }
.farano-404__code {
  font-size:clamp(80px,20vw,150px); font-variation-settings:'wght' 800;
  line-height:1; color:var(--border); margin-bottom:20px;
}
.farano-404 h1 { font-size:clamp(22px,3vw,32px); color:var(--text-dark); margin-bottom:12px; }
.farano-404 p  { color:var(--text-gray); font-size:15px; max-width:480px; margin:0 auto 32px; }

/* ─── Floating Bar ───────────────────────────────────── */
.float-bar {
  position:fixed; bottom:20px; left:50%; transform:translateX(-50%);
  z-index:1000; display:flex; gap:10px;
  background:var(--white); border:1px solid var(--border);
  padding:10px; border-radius:var(--radius-full);
  box-shadow:var(--shadow-lg); width:fit-content;
}
.float-bar a {
  width:52px; height:52px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:var(--white); border:1px solid var(--border); flex-shrink:0;
  transition:background var(--transition),border-color var(--transition);
}
.float-bar a:hover { background:var(--primary-soft); border-color:var(--primary); }
.float-bar a img { width:24px; height:24px; }

/* ─── Footer ─────────────────────────────────────────── */
.farano-footer {
  background:var(--bg-light); padding:26px 0 100px;
  border-top:1px solid var(--border); text-align:center;
}
.farano-footer p { color:var(--text-gray); font-size:13.5px; }
.farano-footer a { color:var(--primary); }

/* ─── Animations ─────────────────────────────────────── */
@keyframes fadeUp {
  from { opacity:0; transform:translateY(30px); }
  to   { opacity:1; transform:translateY(0); }
}
.reveal { opacity:0; transform:translateY(28px); transition:opacity .7s ease,transform .7s ease; }
.reveal.active { opacity:1; transform:translateY(0); }

/* ─── Gutenberg ──────────────────────────────────────── */
.wp-block-quote {
  border-right:3px solid var(--primary); border-left:none;
  padding:12px 20px; margin:1.5rem 0;
  background:var(--bg-light);
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  color:var(--text-gray); font-style:italic;
}
.wp-block-code {
  font-family:ui-monospace,monospace; font-size:.875rem;
  background:var(--bg-light); border:1px solid var(--border);
  border-radius:var(--radius-sm); padding:20px; overflow-x:auto;
  direction:ltr; text-align:left;
}
.wp-block-separator { border:none; border-top:1px solid var(--border); margin:2rem 0; }
.aligncenter { margin-inline:auto; display:block; }
.alignright  { float:left;  margin-right:1.5rem; margin-bottom:.75rem; }
.alignleft   { float:right; margin-left:1.5rem;  margin-bottom:.75rem; }

/* ─── Responsive ─────────────────────────────────────── */
@media (max-width:1100px) {
  .farano-layout { grid-template-columns:1fr 260px; }
  .cat-carousel  { grid-template-columns:repeat(5,1fr); }
  .brands-grid   { grid-template-columns:repeat(5,1fr); }
  .contact-grid  { grid-template-columns:repeat(3,1fr); }
}

@media (max-width:900px) {
  section { padding:40px 0; }
  .nav-wrap { grid-template-columns:1fr; justify-items:center; gap:12px; padding:14px; }
  .phone-box { display:none; }
  .main-nav { width:100%; }
  .main-nav ul { justify-content:center; }
  .hero { padding:100px 0 60px; }
  .services-grid { grid-template-columns:1fr 1fr; }
  .about-wrap    { grid-template-columns:1fr; }
  .brands-grid   { grid-template-columns:repeat(4,1fr); }
  .contact-grid  { grid-template-columns:1fr 1fr; }
  .farano-layout { grid-template-columns:1fr; }
  .farano-sidebar { display:none; }/* sidebar hidden on mobile */
  .cat-carousel  { grid-template-columns:repeat(4,1fr); }
  .comment-form-grid { grid-template-columns:1fr; }
  .post-nav      { grid-template-columns:1fr; }
}

@media (max-width:600px) {
  section { padding:32px 0; }
  .section-title { margin-bottom:28px; }
  .services-grid { grid-template-columns:1fr; }
  .about-stats   { grid-template-columns:1fr 1fr; }
  .brands-grid   { grid-template-columns:repeat(3,1fr); }
  .contact-grid  { grid-template-columns:1fr 1fr; }
  .hero  { padding:90px 0 50px; }
  .hero-btns { gap:10px; }
  .btn-primary { padding:12px 26px; font-size:14px; }
  .btn-outline  { padding:11px 24px; font-size:14px; }
  .float-bar { bottom:14px; gap:8px; padding:8px; }
  .float-bar a   { width:46px; height:46px; }
  .cat-carousel  { grid-template-columns:repeat(3,1fr); }
  .single-header { padding:24px 24px 0; }
  .single-content { padding:24px; }
  .comment-list-wrap { padding:0 20px; }
  .comment-form-wrap { padding:24px 20px; }
  .comments-head { padding:20px 24px; }
}

@media (max-width:420px) {
  .contact-grid { grid-template-columns:1fr; }
  .cat-carousel { grid-template-columns:repeat(2,1fr); }
}

/* ─── Print ──────────────────────────────────────────── */
@media print {
  .farano-header,.farano-footer,.float-bar,.farano-sidebar { display:none; }
  body { font-size:12pt; }
}