/* =========================================================
   PAGE TITLE / GENERIC PAGE LAYOUT
========================================================= */
.pa-page-title{margin-bottom:28px;}
.pa-page-title h1{font-size:clamp(26px,4vw,38px);}
.pa-page-thumb{border-radius:var(--pa-radius-lg);overflow:hidden;margin-bottom:28px;}
.pa-page-layout{max-width:820px;margin:0 auto;}
.pa-entry-content{font-size:16px;line-height:1.8;color:var(--pa-ink);}
.pa-entry-content h2{margin-top:1.6em;}
.pa-entry-content ul,.pa-entry-content ol{padding-left:1.4em;margin-bottom:1em;}
.pa-entry-content img{border-radius:var(--pa-radius);}
.pa-page-links{margin-top:24px;font-weight:600;}

/* =========================================================
   BLOG
========================================================= */
.pa-blog-layout{
  display:grid;
  grid-template-columns:1fr 300px;
  gap:40px;
  align-items:start;
}
.pa-post-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:24px;
}
.pa-post-card{
  background:var(--pa-paper);
  border:1px solid var(--pa-border);
  border-radius:var(--pa-radius);
  overflow:hidden;
  transition:box-shadow .2s ease, transform .2s ease;
}
.pa-post-card:hover{box-shadow:var(--pa-shadow-lg);transform:translateY(-3px);}
.pa-post-card__thumb img{aspect-ratio:16/10;object-fit:cover;width:100%;}
.pa-post-card__body{padding:18px;}
.pa-post-card__title{font-size:17px;margin-bottom:6px;}
.pa-post-card__title a{color:var(--pa-ink);}
.pa-post-card__title a:hover{color:var(--pa-primary);}
.pa-post-card__meta{font-size:12px;color:var(--pa-ink-soft);margin-bottom:10px;}
.pa-post-card__excerpt{font-size:14px;color:var(--pa-ink-soft);}

.pa-sidebar{
  background:var(--pa-paper);
  border:1px solid var(--pa-border);
  border-radius:var(--pa-radius);
  padding:20px;
}

.pa-pagination{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:32px;
}
.pa-pagination .page-numbers{
  display:flex;align-items:center;justify-content:center;
  min-width:38px;height:38px;padding:0 10px;
  border-radius:8px;border:1px solid var(--pa-border);
  font-size:14px;font-weight:600;color:var(--pa-ink);
  background:var(--pa-paper);
}
.pa-pagination .page-numbers.current,
.pa-pagination .page-numbers:hover{background:var(--pa-primary);color:#fff;border-color:var(--pa-primary);}

@media(max-width:900px){
  .pa-blog-layout{grid-template-columns:1fr;}
  .pa-post-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:560px){
  .pa-post-grid{grid-template-columns:1fr;}
}

/* =========================================================
   CONTACT PAGE
========================================================= */
.pa-contact-layout{
  display:grid;
  grid-template-columns:1fr 1.3fr;
  gap:40px;
  align-items:start;
}
.pa-contact-info{
  background:var(--pa-accent);
  color:#fff;
  padding:32px;
  border-radius:var(--pa-radius-lg);
}
.pa-contact-info h2{color:#fff;}
.pa-contact-info p{color:rgba(255,255,255,.75);}
.pa-contact-info__list{list-style:none;padding:0;margin:20px 0 24px;display:flex;flex-direction:column;gap:14px;}
.pa-contact-info__list strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--pa-accent-2);margin-bottom:2px;}
.pa-contact-info__list a,.pa-contact-info__list span{color:#fff;font-size:14.5px;}
.pa-contact-info .pa-social-links{margin-top:22px;}
.pa-contact-form-wrap{
  background:var(--pa-paper);
  border:1px solid var(--pa-border);
  border-radius:var(--pa-radius-lg);
  padding:32px;
}
.pa-contact-form-hint{
  font-size:13px;
  color:var(--pa-ink-soft);
  background:var(--pa-bg-alt);
  padding:14px 16px;
  border-radius:var(--pa-radius-sm);
  margin-top:16px;
}
@media(max-width:860px){
  .pa-contact-layout{grid-template-columns:1fr;}
}

/* =========================================================
   404
========================================================= */
.pa-404{text-align:center;padding:90px 20px;}
.pa-404__inner{max-width:520px;margin:0 auto;}
.pa-404__code{
  font-family:var(--pa-font-display);
  font-size:96px;
  font-weight:800;
  color:var(--pa-primary-light);
  -webkit-text-stroke:2px var(--pa-primary);
  margin:0;
  line-height:1;
}
.pa-404__actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:24px 0;}
.pa-404__search{max-width:420px;margin:0 auto;}

/* =========================================================
   COMMENTS
========================================================= */
.pa-comments{margin-top:48px;padding-top:32px;border-top:1px solid var(--pa-border);}
.comment-list{list-style:none;padding:0;}
.comment-list li{margin-bottom:20px;}
#respond input[type="text"],
#respond input[type="email"],
#respond input[type="url"],
#respond textarea{
  width:100%;
  padding:11px 14px;
  border:1px solid var(--pa-border);
  border-radius:var(--pa-radius-sm);
  margin-bottom:12px;
}
#respond .form-submit input{
  padding:12px 24px;
  background:var(--pa-primary);
  color:#fff;
  border:none;
  border-radius:999px;
  font-weight:600;
  cursor:pointer;
}
