:root{
  --ts-bg:            #f8f8f8;
  --ts-surface:       #FAFBFC;
  --ts-text:           #1F2937;
  --ts-text-strong:    #262626;
  --ts-muted:          #6B7280;
  --ts-border:         #EDF0F4;
  --ts-border-strong:  #E2E6EC;

  --ts-primary:        #22274D;
  --ts-primary-600:    #2F5BC4;
  --ts-primary-soft:   #EEF3FE;

  --ts-accent:         #E08A45;
  --ts-accent-soft:    #FCF1E6;

  --ts-positive:       #2F9E74;
  --ts-positive-soft:  #E9F7F1;

  --ts-negative:       #D96D6D;
  --ts-negative-soft:  #FDEFEF;

  --ts-quote-accent:   #E15C5C;

  --ts-radius-sm: 10px;
  --ts-radius-md: 16px;
  --ts-radius-lg: 22px;
  --ts-radius-pill: 999px;

  --ts-shadow-xs: 0 1px 2px rgba(16,22,31,.04);
  --ts-shadow-sm: 0 4px 16px rgba(16,22,31,.06);
  --ts-shadow-md: 0 8px 28px rgba(16,22,31,.08);

  --ts-font-base:    'IRANYekan', Tahoma, sans-serif;
  --ts-font-heading: var(--ts-font-base);
  --ts-font-body:    var(--ts-font-base);
  --ts-container: 1180px;
}

/* -------------------------------------------------------------------------
   Base / Typography
   ------------------------------------------------------------------------- */
html{ scroll-behavior: auto; overflow-x: hidden; }
body{
  font-family: var(--ts-font-body);
  color: var(--ts-text);
  background: var(--ts-bg);
  line-height: 1.8;
  font-size: 16px;
  overflow-x: hidden;
  overflow-wrap: break-word;
  word-break: break-word;
}
img, svg, video, iframe{ max-width: 100%; }
h1,h2,h3,h4,h5,h6{ font-family: var(--ts-font-heading); color: var(--ts-text-strong); line-height:1.5; margin:0 0 .6em; }
p{ margin:0 0 1.2em; }
a{ color: var(--ts-primary); text-decoration: none; }
a:hover{ text-decoration: none; }
:focus-visible{ outline: 2px solid var(--ts-primary); outline-offset: 2px; }

/* header  */

.header-top-bar{
   background-color: #f1f1f1;
   min-height: 52px;
   border-bottom-left-radius: 18px;
   border-bottom-right-radius: 18px;
}

.header-logo img{
   height: 50px;
   width: auto;
   object-fit: contain;
}

.header-menu ul{
   display: flex;
   gap: 20px;
}
.header-menu > ul>  li{
   display: flex;
   justify-content: center;
   align-items: center;
   position: relative;
}
.header-menu ul li a{
   color: var(--ts-text-strong);
   display: inline-block;
   font-size: 14px;
   transition: all 300ms;
   padding: 5px 17px;
   text-align: center;
}
.header-menu > ul > li:first-of-type::before{
   position: absolute;
   content: '';
   width: 13px;
   height: 3px;
   border-radius: 20px;
   background-color: var(--ts-primary);
   top: 56%;
   transform: translateY(-50%);
   right: 0;
}
.header-menu ul li a:hover{
   background-color: var(--ts-primary);
   border-radius: 20px;
   color: #fff !important;

}
.header-contact-txt span{
   color: var(--ts-primary);
   font-weight: 800;
   display: block;
   text-align: left;
}

.header-search{
   width: 43px;
   height: 43px;
   display: flex;
   justify-content: center;
   align-items: center;
   border-radius: 50%;
   cursor: pointer;
   background-color: var(--ts-primary);
   border: none;
   outline: none;
}

.menu-toggler{
   cursor: pointer;
   border: none;
   overflow: unset;
   background: transparent;
}

.post-item{
   background-color: #fff;
   border-radius: 14px;
   box-shadow: 0 0 10px 4px #eeeeee2f;
   padding: 20px;
   display: flex;
   flex-direction: column;
   height: 100%;
}
.post-item img{
   border-radius: 14px;
   width: 100%;
   height: 220px;
   object-fit: cover;
   flex-shrink: 0;
}
.post-item-content{
   display: flex;
   flex-direction: column;
}
.post-item-title,.post-item-footer{
   flex-shrink: 0;
}
.post-item-content,.post-item-excerpt{
   height: 100%;
}
.post-item-excerpt p{
   font-size: 14px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
   line-height: 24px;
}
.post-item-title{
   font-size: 17px;
   font-weight: 800;
   margin-top: 15px;
   display: block;
   margin-bottom: 6px;
}
.archive-title{
   font-size: 32px;
   font-weight: 800;
   text-align: center;
}

.blog{
   margin-top: 50px;
}
.post-item-footer svg{
   width: 16px;
   height: 16px;
   vertical-align: -4px;
}
.post-item-footer span{
   font-size: 12px;
}
.post-item-footer{
   flex-wrap: wrap;
   gap: 8px 12px;
}
.post-item-footer > span{
   white-space: nowrap;
}

.load-more-post-wrapper{
   margin-top: 70px;
   text-align: center;
}

.load-more-post{
   display: inline-flex;
   padding: 10px 32px;
   color: #fff;
   background-color: var(--ts-primary);
   border-radius: 12px;
   border: none;
   outline: none;
}

@media(max-width:992px){
   .load-more-post-wrapper{
      margin-top: 40px;
   }
   .blog{
      margin-top: 20px;
   }
   .archive-title {
      font-size: 24px;
   }
}

.ts-toc__title::before{
	display:none !important
}
