/* ===================== Global fix: block horizontal scroll ===================== */
html, body { overflow-x: hidden; }

/* ====================== Brand Tokens ====================== */
:root{
  --primary:#01202c;         /* سرمه‌ای صنعتی */
  --secondary:#008dd2;       /* آبی برند */
  --safety:#008dd2;          /* زرد ایمنی */
  --text:#cfd8dc;            /* متن روی تیره */
  --muted:#a0a0a0;           /* متن فرعی */
  --white:#fff;
  --pad:16px; --gap:24px;
  --fs:clamp(14px,1.2vw,15px); --lh:1.85;
}

/* ====================== Base ====================== */
#artistun-footer.afo{
  direction:rtl;
  font-family:Shabnam,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:var(--primary); color:var(--text);
  font-size:var(--fs); line-height:var(--lh);
}
#artistun-footer a{
  color:var(--text);
  text-decoration:none;
  transition:color .2s,background-size .2s;
}
#artistun-footer a:hover{ color:#fff; }

/* ====================== Top Social Strip (Yellow) ====================== */
.afo-util{ background: var(--safety); }
.afo-util .afo-util-list{
  width:100%;
  margin:0;
  padding:14px var(--pad);
  display:flex; gap:12px; align-items:center; justify-content:flex-end;
}
.afo-ico{
  width:40px; height:40px;
  border:none; border-radius:50%;
  display:inline-grid; place-items:center;
  background:rgba(0,0,0,.15);
  transition:transform .15s ease, background-color .2s ease;
}
.afo-ico:hover{ background:rgba(0,0,0,.25); transform:translateY(-2px); }
.afo-ico svg{ width:20px; height:20px; fill:#fff; display:block; }

/* ====================== Main Columns ====================== */
.afo-main{
  width:100%;
  padding:28px var(--pad) 6px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--gap);
}
.afo-col{ min-width:0; text-align:right; }

/* ====================== Headings (no hover effect) ====================== */
.afo-head{
  width:100%; text-align:right;
  cursor:default;
  font-family:Shabnam,sans-serif; font-weight:800; font-size:clamp(16px,1.6vw,18px);
  color:#e6eef2; background:transparent; border:0; padding:6px 0 18px; position:relative;
  outline:none;
}
/* خط زرد ثابت زیر تیتر (بدون هاور) */
.afo-head::after{
  content:""; position:absolute; right:0; bottom:4px; height:2px; width:88%;
  background:var(--safety);
}
/* حذف هر نوع تغییر رنگ/هاور/فوکوس برای تیتر */
.afo-head:hover::after, .afo-head:focus-visible::after{ background:var(--safety); }
.afo-head:focus-visible{ outline:none; }

/* ====================== Items (links underline on hover) ====================== */
.afo-panel{ margin:10px 0 0; padding:0; list-style:none; display:block !important; }
.afo-panel li{ margin:10px 0; }
.afo-item{
  display:inline-block; padding:2px 0; position:relative;
  background:linear-gradient(var(--safety),var(--safety)) right bottom/0 2px no-repeat;
}
.afo-item:hover{ background-size:100% 2px; }

/* ====================== Contact & Addresses ====================== */
.afo-addresses{
  width:100%;
  margin:10px 0 0;
  padding:10px var(--pad) 24px;
  text-align:center;
  border-top:1px solid rgba(255,255,255,.18);
  border-bottom:1px solid rgba(255,255,255,.18);
}
.afo-addresses h4{ margin:10px 0 8px; font-weight:800; color:#29a7c9; font-size:clamp(15px,1.3vw,16px); }
.afo-phones{ display:grid; gap:6px; }
.afo-phones a{ color:#fff; font-weight:900; font-size:clamp(16px,2vw,19px); }
.afo-phones a:hover{ color:#fff; text-decoration:underline; text-underline-offset:3px; }

.afo-addrs-grid{
  display:grid; gap:16px; justify-items:center;
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding-top:8px;
}
.addr-card{ max-width:96%; }
.addr-card h5{ margin:6px 0 6px; font-weight:800; color:#fff; }
.addr-card p{ margin:4px 0; font-size:clamp(13px,1.05vw,14px); line-height:1.6; }
.addr-card .muted{ color:var(--muted); }

/* ====================== Subfooter ====================== */
.afo-sub{ background:#06212b; border-top:1px solid rgba(255,255,255,.14); margin-top:12px; }
.afo-sub-wrap{ width:100%; padding:14px var(--pad); display:grid; gap:8px; justify-items:center; text-align:center; }
.afo-sub small strong{ color:#fff; }

/* Back to top */
#afo-backtotop.afo-top{
  position:fixed; right:16px; bottom:20px;
  border:1px solid rgba(255,255,255,.25); background:var(--secondary);
  color:#fff; border-radius:10px; padding:8px 12px; cursor:pointer;
  transition:opacity .2s, transform .2s; z-index:20;
}
#afo-backtotop.is-hidden{ opacity:0; transform:translateY(8px); pointer-events:none; }
#afo-backtotop:hover{ background:#0fa3e0; }

/* ====================== Responsive ====================== */
@media (max-width:1199.98px){
  .afo-main{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:991.98px){
  .afo-main{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .afo-addrs-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767.98px){
  .afo-main{ grid-template-columns:1fr; }
  .afo-panel{ display:block !important; } /* آیتم‌ها در موبایل همیشه باز */
  .afo-head{ cursor:default; }            /* تیتر کلیک‌پذیر نیست */
  .afo-addrs-grid{ grid-template-columns:1fr; gap:14px; } /* هر کارت آدرس یک ردیف کامل */
  .addr-card p{ display:block; } /* هر پاراگراف یک خط جدا */
}

/* Reduced motion / Print */
@media (prefers-reduced-motion:reduce){ *{transition:none!important;animation:none!important} }
@media print{ #artistun-footer{background:#fff;color:#000}.afo-util,.afo-sub,#afo-backtotop{display:none!important} }
