:root{
  --max-width:1100px;
  --muted:#7a7a7a;
  --accent:#111111;
  --soft:#f3f3f3;
  --border:#e6e6e6;
  --radius:8px;
  --container-padding:32px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: "Vazirmatn", "Tahoma", "Arial", sans-serif;
  background:#fff;
  color:var(--accent);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

.wrap{
  max-width:var(--max-width);
  margin:40px auto;
  padding:0 var(--container-padding);
}

/* breadcrumb */
.breadcrumb{
  font-size:13px;
  color:var(--muted);
  margin-bottom:12px;
}
.breadcrumb a{color:var(--muted); text-decoration:none}

/* title block */
#blogContent h1.title{
  margin: 2rem 0 1.125rem;
  font-size: 2rem;
  font-weight:700;
}

#blogContent .meta{
  display:flex;
  gap:1.125rem;
  align-items:center;
  margin-bottom:1.5rem;
  flex-wrap:wrap;
}

#blogContent .author{
  display:flex;
  gap:12px;
  align-items:center;
}

#blogContent .author .avatar{
  width:48px;
  height:48px;
  border-radius:50%;
  background:linear-gradient(180deg,#eee,#ddd);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--muted);
  font-weight:700;
}

#blogContent .meta .info{
    font-size: 0.825rem;
     color: var(--muted)
}

#blogContent .meta .info b{
    color:var(--accent);
    font-weight:600;
}

/* hero image */
#blogContent .hero{
  margin:1.125rem 0 3rem;
  width:100%;
  height:20rem;
  border-radius:var(--border-radius-lg);
  background:linear-gradient(#e6e6e6,#dcdcdc);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#9a9a9a;
  border:1px solid var(--border);
  overflow: hidden;
}

/* content area */
.content{
  max-width:880px;
  margin:0 auto 60px;
}

.content .section-title{
  font-size:1.5rem;
  font-weight:700;
  margin:2rem 0;
}

.content p{
    margin:0 0 14px;
    color:#333;
    font-size:15px
}

.content figure{
  margin:1rem 0;
  background:var(--soft);
  border:1px solid var(--border);
  padding:1.5rem;
  border-radius:var(--border-radius-lg);
  overflow: hidden;
  aspect-ratio: 16/9; 
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.content figure video{
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: var(--border-radius-lg);
}

.content figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--border-radius-lg);
}

.content figcaption{
  margin-top:0.5rem;
  font-size:0.75rem;
  color:var(--muted);
}

.content .lead{
  color:#333;
}

.content .blockquote{
  border-right:0.25rem solid #e0e0e0;
  padding:1rem;
  margin:1rem 0;
  background:#fafafa;
  font-style:italic;
  color:#555;
}

/* conclusion */
.content .conclusion{
    margin-top:1.25rem;
}

/* share & tags */
.content .post-actions{
  display:flex;
  gap:1rem;
  align-items:center;
  margin-top:1.5rem;
  border-top:1px solid var(--border);
  padding-top:1.125rem;
}

.content .tags{
    display:flex;
    gap:0.5rem;
    flex-wrap:wrap
}

.content .tags .tag{
  border:1px solid var(--border);
  padding:0.5rem 0.75rem;
  font-size:0.75rem;
  border-radius:var(--border-radius-lg);
  background:#fff;
  color:#333;
}

/* author footer */
.content .author-footer{
  display:flex;
  gap:1rem;
  align-items:center;
  margin:2rem 0;
  border-top:1px solid var(--border);
  padding-top:1.25rem;
}

.content .author-footer .meta{
    margin:0
}

/* newsletter */
.newsletter{
  background:#f9f9f9;
  padding:2rem;
  border-radius:var(--border-radius-lg);
  text-align:center;
  margin:3rem 0;
  border:1px solid var(--border);
}
.newsletter h3{
    margin:0 0 0.5rem;
    font-size:1.25rem
}

.newsletter p{
    color:var(--muted); 
    margin:0 0 1rem
}

.newsletter form{
    display:flex; 
    gap:0.5rem;
    justify-content:center; 
    align-items:center;
    flex-wrap:wrap;
}

.newsletter input[type="email"]{
  padding:1rem;
  border:1px solid var(--border);
  border-radius:var(--border-radius-lg);
  min-width:17.5rem;
  outline:none;
}

.newsletter button{
  padding:0.75rem 1.125rem;
  border-radius:var(--border-radius-lg);
  border:0;
  background:#111;
  color:#fff;
  cursor:pointer;
}

/* small screens */
@media (max-width:900px){
  .grid{grid-template-columns:repeat(2,1fr)}
  .hero{height:240px}
}
@media (max-width:600px){
  .wrap{margin:24px 12px}
  .grid{grid-template-columns:1fr}
  .social{margin-left:0}
  .meta{flex-direction:column; align-items:flex-start}
  .author-footer{flex-direction:column; align-items:flex-start}
  .post-actions{flex-direction:column; align-items:flex-start}
}