/* Preserve Vesora's editorial typography, warm accent and square panel edges. */
.blog-share { display:flex; align-items:center; flex-wrap:wrap; gap:12px 20px; margin:32px 0 24px; padding:12px 20px; background:#f1e3c6; color:#2b1e0e; }
.blog-share__label { font-size:1.15rem; }
.blog-share__links { display:flex; flex-wrap:wrap; gap:8px; }
.blog-share__link { display:grid; place-items:center; width:44px; height:44px; color:#fff; background:#242424; border-radius:3px; text-decoration:none; }
.blog-share__link .fi { display:inline-flex; font-size:22px; }
.blog-share__link--facebook { background:#3b5998; }
.blog-share__link--linkedin { background:#0077a5; }
.blog-share__link--pinterest { background:#bd081c; }
.blog-share__link--whatsapp { background:#157c42; }
.blog-share__link--reddit { background:#b83200; }
.blog-share__link:hover { color:#fff; filter:brightness(.85); }
.blog-author { border:1px solid var(--color-line,#d1d1d1); padding:24px; margin-bottom:32px; }
.blog-author h2, .blog-comments h2 { margin:0 0 24px; font-size:clamp(1.35rem,2vw,1.8rem); line-height:1.3; letter-spacing:0; }
.blog-author h2 { text-transform:uppercase; }
.blog-author__body { display:grid; grid-template-columns:112px minmax(0,1fr); gap:24px; align-items:start; }
.blog-author__photo, .blog-author__initial { width:112px; height:112px; border-radius:50%; object-fit:cover; }
.blog-author__initial { display:grid; place-items:center; background:#f1e3c6; color:#79553b; font-size:2.5rem; }
.blog-author__copy { min-width:0; overflow-wrap:anywhere; }
.blog-author h3 { margin:0 0 10px; font-size:1.35rem; line-height:1.4; }
.blog-author__bio { color:#575757; font-size:1rem; line-height:1.8; }
.blog-author__bio p { margin:0 0 12px; }
.blog-author__bio a, .blog-author__copy p a { text-decoration:underline; }
.blog-author__social { display:flex; justify-content:flex-end; gap:8px; }
.blog-author__social:empty { display:none; }
.blog-author__social a { display:grid; place-items:center; width:44px; height:44px; border:1px solid #79553b; border-radius:50%; color:#79553b; text-decoration:none; }
.blog-comments { margin-top:32px; scroll-margin-top:140px; overflow-wrap:anywhere; }
.blog-comments .comment-list, .blog-comments .children { list-style:none; margin:0; padding:0; }
.blog-comments .children { margin-left:clamp(12px,3vw,40px); }
.blog-comments .comment-body { position:relative; margin-bottom:24px; padding:0 0 24px 76px; border-bottom:1px solid #ddd; }
.blog-comments .comment-author .avatar { position:absolute; left:0; top:0; border-radius:50%; width:56px; height:56px; }
.blog-comments .comment-author { font-size:1.05rem; }
.blog-comments .comment-metadata { margin-top:4px; font-size:.85rem; color:#79553b; }
.blog-comments .comment-content { font-size:1rem; line-height:1.8; }
.blog-comments .comment-content p { margin:12px 0; }
.blog-comments .comment-content img { max-width:100%; height:auto; }
.blog-comments .comment-awaiting-moderation { color:#79553b; font-size:.95rem; }
.blog-comments .reply { text-align:right; }
.blog-comments .reply a { display:inline-flex; min-height:44px; align-items:center; text-decoration:underline; color:#79553b; }
.blog-comments .comment-respond { padding:clamp(18px,3vw,32px); margin:24px 0; background:#f4f4f4; scroll-margin-top:140px; }
.blog-comments .comment-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 24px; }
.blog-comments .comment-form > * { grid-column:1 / -1; min-width:0; margin:0; }
.blog-comments .comment-form-author, .blog-comments .comment-form-email { grid-column:auto; }
.blog-comments label { display:block; margin-bottom:8px; font-size:1rem; color:#242424; }
.blog-comments input[type="text"], .blog-comments input[type="email"], .blog-comments textarea { display:block; width:100%; max-width:100%; border:1px solid #999; border-radius:0; padding:12px; font:inherit; color:#242424; background:#fff; }
.blog-comments textarea { min-height:160px; resize:vertical; }
.blog-comments .comment-form-cookies-consent { display:flex; align-items:flex-start; gap:10px; }
.blog-comments .comment-form-cookies-consent input { flex:none; margin-top:5px; width:18px; height:18px; }
.blog-comments .comment-form-cookies-consent label { margin:0; }
.blog-comments .submit { min-height:48px; border:1px solid #79553b; border-radius:0; padding:12px 24px; font:inherit; background:#79553b; color:#fff; cursor:pointer; }
.blog-comments .submit:hover { background:#2b1e0e; }
.blog-comments #cancel-comment-reply-link { display:inline-block; font-size:.95rem; margin-left:16px; text-decoration:underline; }
.blog-comments .comment-notes, .blog-comments .logged-in-as, .blog-comments__empty, .blog-comments .no-comments { font-size:.95rem; line-height:1.6; }
.blog-comments .nav-links { display:flex; gap:16px; flex-wrap:wrap; margin:24px 0; }
.blog-share a:focus-visible, .blog-author a:focus-visible, .blog-comments :is(a,input,textarea):focus-visible { outline:2px solid #79553b; outline-offset:3px; }
@media(max-width:600px) {
  .blog-author__body { grid-template-columns:minmax(0,1fr); gap:16px; }
  .blog-author__photo, .blog-author__initial { width:88px; height:88px; }
  .blog-comments .comment-form { grid-template-columns:minmax(0,1fr); }
  .blog-comments .comment-body { padding-left:0; }
  .blog-comments .comment-author .avatar { position:static; display:inline-block; vertical-align:middle; margin:0 8px 8px 0; width:40px; height:40px; }
  .blog-share { padding:12px; }
}
