/* =========================================================
   شهرداری سلماس - تم مدرن اداری/شهری (نسخه بازطراحی‌شده)
   ========================================================= */
:root{
  --primary: #0e8f63;        /* سبز مدرن شهری */
  --primary-dark: #0a6b4a;
  --primary-light: #13ab79;
  --primary-50: #e8f7f1;
  --ink: #10201a;
  --text-dark: #1c2b25;
  --text-muted: #64766e;
  --gold: #d4a53c;
  --gold-dark: #b2842a;
  --maroon: #c22e46;
  --surface: #ffffff;
  --surface-alt: #f6f8f7;
  --border-soft: #e6ebe8;
  --radius: 1rem;
  --radius-lg: 1.35rem;
  --radius-sm: .6rem;
  --shadow-soft: 0 1px 2px rgba(16,40,30,.05), 0 6px 18px rgba(16,40,30,.06);
  --shadow-strong: 0 14px 34px rgba(16,40,30,.14);
  --transition: .25s cubic-bezier(.4,0,.2,1);
}

*{ box-sizing:border-box; }
body{
  font-family: 'Vazirmatn', Tahoma, sans-serif;
  background: var(--surface-alt);
  color: var(--text-dark);
  direction: rtl;
  -webkit-font-smoothing:antialiased;
}

a{ text-decoration:none; transition: color var(--transition); }
.text-primary-custom{ color: var(--primary) !important; }
.bg-primary-custom{ background-color: var(--primary) !important; }

.section-title{
  position:relative;
  font-weight:800;
  font-size:1.5rem;
  letter-spacing:-.01em;
  margin-bottom:1.75rem;
  color: var(--ink);
}
.section-title::before{
  content:'';
  display:block;
  width:46px; height:5px; border-radius:3px;
  background: linear-gradient(90deg, var(--primary), var(--gold));
  margin-bottom:.65rem;
}
.section-title small{
  display:block;
  font-weight:400;
  font-size:.86rem;
  color: var(--text-muted);
  margin-top:.3rem;
}
.section-head-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  margin-bottom:.5rem;
  gap:1rem;
}
.more-link{
  font-size:.85rem;
  font-weight:700;
  color: var(--primary);
  white-space:nowrap;
  display:inline-flex; align-items:center; gap:.3rem;
  transition: gap var(--transition), color var(--transition);
}
.more-link:hover{ color: var(--gold-dark); gap:.55rem; }

/* ================= نوار بالای سایت (باریک و مینیمال) ================= */
.topbar{
  background: var(--surface);
  color: var(--text-muted);
  font-size:.8rem;
  padding:.5rem 0;
  border-bottom: 1px solid var(--border-soft);
}
.topbar a{ color: var(--text-muted); }
.topbar a:hover{ color: var(--primary); }
.topbar .sep{ opacity:.4; margin:0 .6rem; }
.topbar .social-icons a{
  display:inline-flex; align-items:center; justify-content:center;
  width:28px; height:28px; border-radius:50%;
  background: var(--primary-50); color: var(--primary);
  margin-inline-start:.35rem;
}
.topbar .social-icons a:hover{ background: var(--primary); color:#fff; }

/* ================= هدر اصلی چسبان (لوگو + هدایت‌بار یکپارچه) ================= */
.main-header{
  background: #ffffff;
  padding: .65rem 0;
  border-bottom: 1px solid var(--border-soft);
  position: sticky; top:0; z-index:1030;
  transition: box-shadow var(--transition);
}
.main-header.scrolled{ box-shadow: 0 4px 20px rgba(16,40,30,.08); }

.brand-block{ display:flex; align-items:center; gap:.75rem; }
.brand-logo{ width:50px; height:50px; flex-shrink:0; }
.brand-title{ font-weight:800; font-size:1.08rem; color: var(--ink); line-height:1.4; letter-spacing:-.01em; }
.brand-subtitle{ font-size:.74rem; color: var(--text-muted); }

.slogan-pill{
  display:inline-flex; align-items:center; gap:.4rem;
  background: linear-gradient(90deg, var(--primary-50), #fff);
  border: 1px solid var(--primary-50);
  color: var(--primary-dark);
  border-radius: 2rem;
  padding:.4rem .9rem;
  font-weight:700;
  font-size:.78rem;
  white-space:nowrap;
}
.slogan-pill i{ color: var(--gold); }

.leader-mini{
  display:flex; align-items:center; gap:.5rem;
}
.leader-mini img{
  width:38px; height:38px; object-fit:cover; border-radius:50%;
  border: 2px solid var(--gold);
}
.leader-mini .cap{ font-size:.68rem; color: var(--text-muted); line-height:1.3; }

/* ================= هدایت‌بار (منوی اصلی) ================= */
.site-navbar .nav-link{
  color: var(--text-dark) !important;
  font-weight:600;
  font-size:.9rem;
  padding: .5rem .1rem !important;
  margin: 0 .65rem;
  position:relative;
}
.site-navbar .nav-link::after{
  content:''; position:absolute; right:0; left:0; bottom:-2px; height:2px;
  background: var(--primary); border-radius:2px;
  transform: scaleX(0); transition: transform var(--transition);
}
.site-navbar .nav-link:hover, .site-navbar .nav-link.active{ color: var(--primary) !important; }
.site-navbar .nav-link:hover::after, .site-navbar .nav-link.active::after{ transform: scaleX(1); }
.site-navbar .dropdown-menu{
  border:0; border-radius: var(--radius-sm);
  box-shadow: var(--shadow-strong);
  padding:.5rem;
  margin-top:.5rem;
}
.site-navbar .dropdown-item{ font-size:.86rem; padding:.6rem .9rem; border-radius:.5rem; }
.site-navbar .dropdown-item:hover{ background: var(--primary-50); color: var(--primary-dark); }
.btn-nav-cta{
  background: var(--primary); color:#fff; border-radius:2rem; padding:.5rem 1.15rem;
  font-weight:700; font-size:.85rem; display:inline-flex; align-items:center; gap:.4rem;
  box-shadow: var(--shadow-soft);
}
.btn-nav-cta:hover{ background: var(--primary-dark); color:#fff; }

/* ================= Hero / Slider ================= */
.hero-slider{ position:relative; }
.hero-slider .carousel-item{ height: 520px; background-size:cover; background-position:center; }
.hero-slider .carousel-item::after{
  content:''; position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(10,30,22,.15) 0%, rgba(10,30,22,.55) 65%, rgba(10,30,22,.85) 100%);
}
.hero-caption{
  position:absolute; bottom:0; right:0; left:0; z-index:2;
  padding: 3rem 3rem 5.5rem; color:#fff;
}
.hero-caption .eyebrow{
  display:inline-flex; align-items:center; gap:.4rem;
  background: rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.25);
  backdrop-filter: blur(6px);
  border-radius:2rem; padding:.35rem .9rem; font-size:.76rem; font-weight:700;
  margin-bottom:1rem;
}
.hero-caption h2{ font-weight:800; font-size:2.4rem; letter-spacing:-.02em; text-shadow:0 4px 20px rgba(0,0,0,.35); max-width:720px; }
.hero-caption p{ font-size:1.05rem; opacity:.92; max-width:600px; }
.hero-slider .carousel-control-prev, .hero-slider .carousel-control-next{ width:6%; opacity:0; transition:opacity var(--transition); }
.hero-slider:hover .carousel-control-prev, .hero-slider:hover .carousel-control-next{ opacity:.8; }
.hero-slider .carousel-indicators{ margin-bottom:6.5rem; }
.hero-slider .carousel-indicators [data-bs-target]{
  width:8px; height:8px; border-radius:50%; background: #fff; opacity:.5; border:0;
}
.hero-slider .carousel-indicators .active{ opacity:1; background: var(--gold); width:22px; border-radius:4px; }
@media (max-width: 767px){
  .hero-slider .carousel-item{ height: 380px; }
  .hero-caption{ padding:1.5rem 1.25rem 4.5rem; }
  .hero-caption h2{ font-size:1.4rem; }
}

/* ================= نوار دسترسی سریع شناور (روی هیرو) ================= */
.quick-access-float{
  position:relative; z-index:5; margin-top:-3.75rem;
}
.quick-access-card{
  background:#fff; border-radius: var(--radius-lg);
  box-shadow: var(--shadow-strong);
  padding:1.1rem 1.25rem;
  display:flex; flex-wrap:wrap; gap:.5rem; justify-content:space-between;
}
.quick-access-item{
  flex:1 1 140px; text-align:center; padding:.75rem .5rem; border-radius: var(--radius-sm);
  color: var(--text-dark); transition: background var(--transition), transform var(--transition);
}
.quick-access-item:hover{ background: var(--primary-50); transform: translateY(-3px); }
.quick-access-item .ic{
  width:46px; height:46px; margin:0 auto .5rem; border-radius:50%;
  background: linear-gradient(135deg, var(--primary-50), #fff);
  display:flex; align-items:center; justify-content:center;
  color: var(--primary); font-size:1.25rem;
}
.quick-access-item .lbl{ font-size:.78rem; font-weight:700; }

/* ================= بنرها ================= */
.banner-strip img{ border-radius: var(--radius); box-shadow: var(--shadow-soft); width:100%; transition: transform var(--transition), box-shadow var(--transition); }
.banner-strip a:hover img{ transform: translateY(-4px); box-shadow: var(--shadow-strong); }

/* ================= Cards عمومی ================= */
.classic-card{
  background:#fff; border:1px solid var(--border-soft); border-radius: var(--radius);
  overflow:hidden; transition: box-shadow var(--transition), transform var(--transition);
  box-shadow: var(--shadow-soft);
}
.classic-card:hover{ box-shadow: var(--shadow-strong); transform: translateY(-4px); }
.classic-card .card-img{ height:180px; object-fit:cover; width:100%; }
.classic-card .card-body{ padding:1.15rem; }
.classic-card .card-title{ font-weight:700; font-size:1rem; line-height:1.6; }
.classic-card .meta{ font-size:.76rem; color: var(--text-muted); display:flex; gap:.75rem; flex-wrap:wrap; margin-bottom:.4rem; }
.classic-card .meta i{ margin-inline-end:.25rem; }
.badge-category{ background: var(--primary-50); color: var(--primary-dark); border:0; font-weight:700; border-radius:.5rem; padding:.35rem .6rem; }

/* ================= اخبار/اطلاعیه لیست ================= */
.list-row{
  display:flex; gap:1.1rem; padding:1.1rem; border:1px solid var(--border-soft); border-radius: var(--radius);
  background:#fff; margin-bottom:1rem; transition: box-shadow var(--transition), transform var(--transition), border-color var(--transition);
}
.list-row:hover{ box-shadow: var(--shadow-strong); border-color: transparent; transform: translateX(-3px); }
.list-row .thumb{ width:130px; height:95px; object-fit:cover; border-radius: var(--radius-sm); flex-shrink:0; }
.list-row .date-badge{
  background: var(--primary-50); color: var(--primary-dark); border-radius: var(--radius-sm); text-align:center;
  padding:.5rem .6rem; min-width:58px; height:fit-content; font-size:.76rem; font-weight:800;
}

/* ================= مزایده‌ها ================= */
.tender-card{
  border: 1px solid var(--border-soft);
  border-radius: var(--radius); background:#fff; padding:1.25rem 1.4rem; margin-bottom:1rem;
  box-shadow: var(--shadow-soft); transition: box-shadow var(--transition), transform var(--transition);
  position:relative; overflow:hidden;
}
.tender-card::before{
  content:''; position:absolute; inset-inline-start:0; top:0; bottom:0; width:5px; background: var(--maroon);
}
.tender-card:hover{ box-shadow: var(--shadow-strong); transform: translateY(-3px); }
.tender-card.status-closed::before{ background:#9aa5a0; }
.tender-card.status-awarded::before{ background: var(--gold-dark); }
.tender-status-badge.active{ background: rgba(194,46,70,.1); color: var(--maroon); }
.tender-status-badge.closed{ background:#eef1ef; color:#5b665f; }
.tender-status-badge.awarded{ background: rgba(178,132,42,.12); color: var(--gold-dark); }
.tender-status-badge{ font-size:.72rem; padding:.35rem .7rem; border-radius:1rem; font-weight:800; }

/* ================= لینک‌های سریع/سازمان‌ها ================= */
.org-link-card{
  text-align:center; background:#fff; border:1px solid var(--border-soft); border-radius: var(--radius);
  padding:1.4rem .9rem; height:100%; transition: all var(--transition); display:block; color: var(--text-dark);
}
.org-link-card:hover{ border-color:transparent; box-shadow: var(--shadow-strong); transform: translateY(-5px); color: var(--primary-dark); }
.org-link-card img{ width:56px; height:56px; object-fit:contain; margin-bottom:.7rem; }
.org-link-card .name{ font-weight:700; font-size:.88rem; }
.org-link-card .desc{ font-size:.74rem; color: var(--text-muted); margin-top:.3rem; }

/* ================= گالری ================= */
.gallery-item{ position:relative; border-radius: var(--radius); overflow:hidden; box-shadow: var(--shadow-soft); cursor:pointer; }
.gallery-item img{ width:100%; height:230px; object-fit:cover; transition: transform .45s ease; }
.gallery-item:hover img{ transform: scale(1.08); }
.gallery-caption{
  position:absolute; inset-inline:0; bottom:0; padding:1rem 1.1rem;
  background: linear-gradient(0deg, rgba(10,30,22,.92), transparent 80%);
  color:#fff;
}
.gallery-caption .g-title{ font-weight:700; font-size:.92rem; }
.gallery-caption .g-date{ font-size:.73rem; opacity:.85; }
.gallery-filter .btn{ border-radius:2rem; font-size:.8rem; }

/* ================= درباره ما / چارت سازمانی ================= */
.orgchart-tree{ display:flex; flex-direction:column; align-items:center; gap:2rem; padding:2rem 0; overflow-x:auto; }
.orgchart-node{
  background:#fff; border:1px solid var(--border-soft); border-radius: var(--radius);
  padding:.85rem 1.35rem; text-align:center; min-width:170px; box-shadow: var(--shadow-soft);
}
.orgchart-node.root{ background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color:#fff; border-color: transparent; box-shadow: var(--shadow-strong); }
.orgchart-node .role{ font-weight:700; font-size:.88rem; }
.orgchart-node .person{ font-size:.75rem; color: var(--text-muted); }
.orgchart-node.root .person{ color:#dcf3e9; }
.orgchart-children{ display:flex; gap:1.5rem; flex-wrap:wrap; justify-content:center; position:relative; }
.orgchart-children::before{
  content:''; position:absolute; top:-1rem; right:10%; left:10%; height:2px; background: var(--border-soft);
}

/* ================= فوتر ================= */
.site-footer{ background: linear-gradient(180deg, #0d2b20, #0a2119); color:#c9d9d1; }
.site-footer h6{ color:#fff; font-weight:800; margin-bottom:1.1rem; font-size:.95rem; }
.site-footer a{ color:#a9c2b7; font-size:.87rem; }
.site-footer a:hover{ color: var(--gold); }
.site-footer .footer-links li{ margin-bottom:.6rem; }
.site-footer hr{ border-color: rgba(255,255,255,.08); }
.footer-bottom{ background:#071b14; font-size:.8rem; padding:1rem 0; color:#7c9689; }
.footer-social a{
  display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px;
  border-radius:50%; background: rgba(255,255,255,.06); margin-inline-end:.4rem;
}
.footer-social a:hover{ background: var(--gold); color:#0a2119; }

/* ================= دکمه‌ها ================= */
.btn-primary-custom{ background: var(--primary); border-color: var(--primary); color:#fff; font-weight:700; border-radius:.65rem; }
.btn-primary-custom:hover{ background: var(--primary-dark); border-color: var(--primary-dark); color:#fff; }
.btn-gold{ background: linear-gradient(135deg, var(--gold), var(--gold-dark)); border:0; color:#3a2b06; font-weight:700; border-radius:.65rem; }
.btn-gold:hover{ filter:brightness(1.06); color:#3a2b06; }

.breadcrumb-classic{ background: var(--surface-alt); border-bottom:1px solid var(--border-soft); padding:.8rem 0; font-size:.85rem; }

.back-to-top{
  position:fixed; bottom:1.5rem; left:1.5rem; z-index:1040;
  width:46px; height:46px; border-radius:50%; background: var(--primary);
  color:#fff; display:flex; align-items:center; justify-content:center;
  box-shadow: var(--shadow-strong); opacity:0; visibility:hidden; transition: all var(--transition);
}
.back-to-top.show{ opacity:1; visibility:visible; }
.back-to-top:hover{ background: var(--gold-dark); color:#fff; transform: translateY(-3px); }

.page-header-band{
  background: linear-gradient(120deg, var(--primary-dark), var(--primary));
  color:#fff; padding:2.75rem 0; margin-bottom:2.25rem; position:relative; overflow:hidden;
}
.page-header-band::after{
  content:''; position:absolute; inset-inline-end:-60px; top:-60px; width:220px; height:220px;
  border-radius:50%; background: rgba(255,255,255,.08);
}
.page-header-band h1{ font-weight:800; font-size:1.75rem; margin:0; letter-spacing:-.01em; }
.page-header-band .path{ font-size:.82rem; opacity:.85; margin-top:.35rem; }

/* دسترسی‌پذیری */
.a11y-toggle{ cursor:pointer; }
body.font-lg{ font-size:1.12rem; }
