/* Author page styles - /author/*.html (bio header, posts grid, CTA) */

.author-hero { background: #fff; padding: 3.25rem 0 1.5rem; }
.author-avatar { width: 122px; height: 122px; border-radius: 50%; margin: 0 auto 1.35rem; background: #1D2C50; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.author-avatar img { max-width: 74px; height: auto; }
.author-name { font-weight: 800; color: #1D2C50; margin: 0 0 .5rem; font-size: 2.3rem; }
.author-meta-line { color: #6b7a8d; font-weight: 600; margin: 0 0 1.1rem; font-size: .95rem; }
.author-meta-line .dot { margin: 0 .5rem; color: #c2ccd6; }
.author-bio { color: #52616f; line-height: 1.75; max-width: 720px; margin: 0 auto; }

.author-posts { background: #fff; padding: 2rem 0 4rem; }
.ap-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem 1.75rem; }
.ap-card { display: flex; flex-direction: column; }
.ap-img-wrap { display: block; border-radius: 12px; overflow: hidden; background: #eef2f6; }
.ap-img-wrap img { width: 100%; height: auto; display: block; }
.ap-meta { font-size: .8rem; margin: .95rem 0 .45rem; }
.ap-author { color: #dc2b14; font-weight: 700; text-decoration: none; }
.ap-meta time { color: #8a9aac; font-weight: 600; }
.ap-dot { color: #c2ccd6; }
.ap-title { font-size: 1.14rem; font-weight: 800; line-height: 1.34; margin: 0 0 .55rem; }
.ap-title a { color: #1D2C50; text-decoration: none; }
.ap-card:hover .ap-title a { color: #dc2b14; }
.ap-excerpt { color: #52616f; font-size: .9rem; line-height: 1.6; margin: 0 0 .9rem; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ap-tag { align-self: flex-start; margin-top: auto; display: inline-block; border: 1px solid #cdd6e0; color: #1D2C50; font-size: .74rem; font-weight: 600; padding: .32rem .85rem; border-radius: 999px; text-decoration: none; }
.ap-tag:hover { border-color: #dc2b14; color: #dc2b14; }
@media (max-width: 991px) { .ap-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575px) { .ap-grid { grid-template-columns: 1fr; } .author-name { font-size: 1.9rem; } }

/* ---- Subscribe box (fleetx-style) ---- */
.author-subscribe { background: #fff; padding: .5rem 0 4rem; }
.subscribe-box { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem 2.5rem; flex-wrap: wrap; background: #fff; border: 2px solid #1D2C50; border-radius: 16px; padding: 1.85rem 2.4rem; }
.subscribe-text { flex: 1 1 280px; }
.subscribe-title { font-weight: 800; color: #1D2C50; margin: 0 0 .35rem; font-size: 2rem; }
.subscribe-sub { color: #52616f; margin: 0; font-size: .95rem; }
.subscribe-form { display: flex; align-items: center; gap: .65rem; flex-wrap: wrap; }
.subscribe-input { border: 1px solid #d1d9e0; border-radius: 999px; padding: .72rem 1.2rem; font-size: .92rem; color: #1D2C50; min-width: 190px; outline: none; background: #fff; }
.subscribe-input::placeholder { color: #8a9aac; }
.subscribe-input:focus { border-color: #1D2C50; box-shadow: 0 0 0 3px rgba(29,44,80,.12); }
.subscribe-btn { border: none; background: #dc2b14; color: #fff; font-weight: 700; border-radius: 999px; padding: .74rem 1.75rem; cursor: pointer; transition: background .18s ease; }
.subscribe-btn:hover { background: #b51f0f; }
@media (max-width: 767px) {
  .subscribe-box { flex-direction: column; align-items: stretch; text-align: center; }
  .subscribe-form { justify-content: center; }
  .subscribe-input { flex: 1 1 100%; }
  .subscribe-btn { width: 100%; }
}
