/*
 * Bimeh 4883 v12.5 - Font & Typography Upgrade
 * SAFE MODE: additive only. No old selector/file removed.
 * هدف: فونت واقعی‌تر، خوانایی بهتر فارسی، تیترهای شیک‌تر، اعداد و شماره تماس تمیزتر.
 */

:root{
  --b4883-font-fa:"Vazirmatn","Yekan Bakh","IRANSansX","IRANSans","Samim","Shabnam",Tahoma,Arial,sans-serif;
  --b4883-font-latin:"Inter","Segoe UI",Roboto,Arial,sans-serif;
  --b4883-type-ink:#10233f;
  --b4883-type-text:#334155;
  --b4883-type-muted:#607086;
  --b4883-reading-line:2.02;
  --b4883-heading-line:1.42;
}

html{
  -webkit-text-size-adjust:100%;
  text-rendering:optimizeLegibility;
  font-synthesis-weight:none;
}

body,
body.rtl,
body.b4883-v8-clean,
button,input,select,textarea,
.v8-newsbar,.v8-header,.v8-menu,.v8-nav,.v8-footer,
.v9-content,.v9-page-hero,.v9-section,.v9-inline-cta,
.v101-page,.v906-page,.entry-content,.page-content,.site-content{
  font-family:var(--b4883-font-fa)!important;
  font-kerning:normal;
}

body{
  color:var(--b4883-type-text)!important;
  font-size:16.25px!important;
  line-height:var(--b4883-reading-line)!important;
  font-weight:450;
  letter-spacing:-.006em;
}

/* Latin/numeric islands: phone numbers, URLs, codes. */
[dir="ltr"],
[lang="en"],
.v8-phone-number,
.v906-phone,
.v906-mobile-cta small,
a[href^="tel:"],
a[href^="https://wa.me"],
.b4883-ltr,
code,kbd,pre{
  font-family:var(--b4883-font-latin)!important;
  letter-spacing:0!important;
  font-variant-numeric:tabular-nums;
  unicode-bidi:isolate;
}

/* Global Persian reading rhythm */
p,li,dd,dt,blockquote,
.v9-content p,.v9-content li,
.v101-page p,.v101-page li,
.entry-content p,.entry-content li,
.b4883-text,.b4883-lead,
.v8-section__head p,.v9-section__head p,
.v9-mini-grid p,.v9-step-grid p,
.premium-service-card p,.b4883-card p,
.contact-quick-card p,.ci-sub,
.v8-footer p,.v8-footer li{
  line-height:var(--b4883-reading-line)!important;
  color:var(--b4883-type-text);
}

/* Better headings: less fake-bold, better Persian density */
h1,h2,h3,h4,h5,h6,
.v8-hero h1,.v9-hero h1,
.v9-page-hero h1,.v906-page-header h1,
.v8-section__head h2,.v9-section__head h2,
.v9-content h2,.v101-page h2,.entry-content h2,
.sec-head h2,.section-title h2,
.premium-service-card h3,.b4883-card h3,
.v9-mini-grid h3,.v9-step-grid h3{
  font-family:var(--b4883-font-fa)!important;
  color:var(--b4883-type-ink)!important;
  line-height:var(--b4883-heading-line)!important;
  letter-spacing:-.025em!important;
  font-weight:850!important;
  text-wrap:balance;
}

.v8-hero h1,.v9-hero h1{
  font-size:clamp(34px,4.35vw,58px)!important;
  line-height:1.34!important;
  letter-spacing:-.035em!important;
  font-weight:900!important;
}

.v9-page-hero h1,.v906-page-header h1,.page-hero h1,.landing-hero h1,.v6-hero h1,.lg-hero h1{
  font-size:clamp(30px,3.55vw,48px)!important;
  line-height:1.42!important;
  font-weight:900!important;
}

.v8-section__head h2,.v9-section__head h2,.sec-head h2,.section-title h2{
  font-size:clamp(27px,2.8vw,40px)!important;
}

.v9-content h2,.v101-page h2,.entry-content h2{
  font-size:clamp(22px,2.1vw,31px)!important;
  margin-top:34px!important;
  margin-bottom:12px!important;
}

h3,.premium-service-card h3,.b4883-card h3,.v9-mini-grid h3,.v9-step-grid h3{
  font-size:clamp(18px,1.45vw,22px)!important;
}

/* Header/menu typography: cleaner, less bulky */
.v8-brand__text strong{
  font-size:clamp(16px,1.4vw,20px)!important;
  line-height:1.45!important;
  letter-spacing:-.026em!important;
  font-weight:900!important;
}
.v8-brand__text small{
  line-height:1.7!important;
  font-size:12.5px!important;
  font-weight:650!important;
}
.v8-nav a,.v8-menu a,
.menu a,.main-navigation a{
  font-weight:750!important;
  font-size:14.2px!important;
  line-height:1.55!important;
  letter-spacing:-.008em!important;
}
.v8-header__call,.v8-header__whatsapp,
.v8-mobile-cta a{
  font-weight:850!important;
}

/* Buttons and CTAs */
.v8-btn,.v9-btn,.b4883-btn,
.v9-inline-cta a,
button,input[type="submit"],.button,.wp-block-button__link{
  font-family:var(--b4883-font-fa)!important;
  font-weight:850!important;
  line-height:1.65!important;
  letter-spacing:-.01em!important;
}

/* FAQ and forms */
summary,.v9-faq-list summary,.b4883-faq summary{
  font-weight:850!important;
  line-height:1.85!important;
  letter-spacing:-.012em!important;
}
.v9-faq-list details p,.b4883-faq p{
  line-height:2.05!important;
}
input,textarea,select{
  font-size:15.5px!important;
  line-height:1.8!important;
}
::placeholder{
  color:#8190a4!important;
  opacity:1;
}

/* Long content pages: better reading width */
.v9-content,.v101-page,.entry-content,.page-content{
  font-size:16.45px!important;
}
.v9-content > p,.v101-page > p,.entry-content > p{
  margin-bottom:15px!important;
}

/* Newsbar: compact but readable */
.v8-newsbar__inner{
  font-size:14.2px!important;
  line-height:1.8!important;
  font-weight:650!important;
}
.v8-newsbar__inner strong{font-weight:900!important;}

/* Avoid bad wrapping in phone/CTA labels */
.v8-phone-number,.v906-phone,.v8-mobile-cta small,
.v8-header__call small,.v8-header__whatsapp small{
  white-space:nowrap!important;
}

/* Mobile typography tuning */
@media (max-width:782px){
  body{font-size:15.9px!important;line-height:1.98!important;}
  .v8-hero h1,.v9-hero h1{font-size:clamp(31px,8vw,39px)!important;line-height:1.42!important;}
  .v9-page-hero h1,.v906-page-header h1,.page-hero h1,.landing-hero h1,.v6-hero h1,.lg-hero h1{font-size:clamp(27px,7.4vw,36px)!important;line-height:1.5!important;}
  .v8-section__head h2,.v9-section__head h2,.sec-head h2,.section-title h2{font-size:clamp(24px,6.4vw,32px)!important;line-height:1.5!important;}
  .v8-nav a,.v8-menu a,.menu a,.main-navigation a{font-size:15px!important;line-height:1.7!important;}
  .v9-content,.v101-page,.entry-content,.page-content{font-size:15.95px!important;}
  p,li,.v9-content p,.v9-content li,.entry-content p,.entry-content li{line-height:2.03!important;}
}

@media (max-width:420px){
  body{font-size:15.6px!important;}
  .v8-brand__text strong{font-size:15.2px!important;}
  .v8-brand__text small{font-size:11.2px!important;}
  .v8-newsbar__inner{font-size:13.4px!important;}
  .v9-inline-cta strong{font-size:18.5px!important;line-height:1.65!important;}
}
