.blog-public__card { overflow: hidden; }
.blog-public__card--horizontal { background: #fff; display: grid; grid-template-columns: minmax(12rem, 40%) 1fr; }
.blog-public__card-media { border-radius: .75rem; min-height: 100%; overflow: hidden; }
.blog-public__card--horizontal .blog-public__cover { height: 100%; transition: transform .3s ease; width: 100%; }
.blog-public__card--horizontal:hover .blog-public__cover, .blog-public__card--horizontal:focus-within .blog-public__cover { transform: scale(1.04); }
.blog-public__card-body { padding: 1.5rem; }
.blog-public__card-summary { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.blog-public__tags { display:flex; flex-wrap:wrap; gap:.4rem; }
.blog-public__card .blog-public__tags .badge { background: var(--site-btn-light); border-radius: 20px; color: var(--site-btn-light-text); padding: 10px 15px; text-decoration: none; }
.blog-public__card .blog-public__tags .badge:hover, .blog-public__card .blog-public__tags .badge:focus { background: var(--site-btn-light-hover); color: var(--site-btn-light-text); }
.blog-public__cover { aspect-ratio: 16 / 9; object-fit: cover; }
.blog-public__date { color: var(--site-text-secondary, #555); font-size: .875rem; }
.blog-public__post { max-width: 820px; }
.blog-public__post-cover { width: 100%; max-height: 480px; object-fit: cover; border-radius: .5rem; }
.blog-public__content { font-size: 1.0625rem; line-height: 1.75; }
.blog-public__content h2, .blog-public__content h3, .blog-public__content h4 { margin-top: 1.75rem; }
.blog-public__content blockquote { border-left: .25rem solid var(--site-bg-primary, #0d6efd); margin: 1.5rem 0; padding-left: 1rem; }
.blog-public__content ul, .blog-public__content ol { padding-left: 1.5rem; }
.blog-public__content hr { border: 0; border-top: 1px solid currentColor; margin: 2rem 0; opacity: .2; }
.blog-public__content figure { margin: 1.5rem 0; }
.blog-public__content figure img { display: block; height: auto; max-width: 100%; }
.blog-public__content figcaption { color: var(--site-text-secondary, #555); font-size: .875rem; margin-top: .5rem; }
.blog-public__sidebar-inner { position: sticky; top: 1.5rem; }
.blog-public__tag-sidebar { border: 1px solid rgba(0, 0, 0, .1); border-radius: .75rem; padding: 1.5rem; }
.blog-public__tag-list { display: flex; flex-wrap: wrap; gap: .5rem; }
.blog-public__tag-list a { background: var(--site-bg-light, #f8f9fa); border-radius: 999px; color: inherit; font-size: .875rem; padding: .45rem .75rem; text-decoration: none; }
.blog-public__tag-list a:hover, .blog-public__tag-list a:focus { background: var(--site-bg-primary, #0d6efd); color: #fff; }
.blog-public__share { align-items: center; display: flex; flex-wrap: wrap; gap: .75rem; }
.blog-public__share h2 { margin: 0; }
.blog-public__published { margin-right:auto; display:grid; gap:.1rem; }
.blog-public__published span { font-size:.8125rem; }
.blog-public__published time { font-weight:400; }
.blog-public__share-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem; }
.blog-public__share-links { display: flex; flex-wrap: wrap; gap: .5rem; }
.blog-public__share-link { align-items: center; background: var(--site-btn-secondary); border: 1px solid var(--site-btn-secondary); border-radius: 50%; color: var(--site-btn-secondary-text); display: inline-flex; height: 2.5rem; justify-content: center; text-decoration: none; width: 2.5rem; }
.blog-public__share-link:hover, .blog-public__share-link:focus { background: var(--site-btn-secondary-hover); border-color: var(--site-btn-secondary-hover); color: var(--site-btn-secondary-text); }
.blog-public__related { border-top: 1px solid rgba(0, 0, 0, .12); margin-top: 3rem; padding-top: 2rem; }
.blog-contact-cta { background: var(--site-bg-light, #f8f9fa); border: 1px solid rgba(0, 0, 0, .1); border-radius: .75rem; color: var(--site-text, #212529); }
.blog-contact-cta--card { margin-top: 2rem; padding: 1.5rem; }
.blog-contact-cta__eyebrow { color: var(--site-bg-primary, #0d6efd); font-size: .8125rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.blog-contact-cta__button { align-items: center; display: inline-flex; gap: .5rem; justify-content: center; min-height: 2.75rem; }
.blog-public__mobile-action { bottom: calc(env(safe-area-inset-bottom) + .75rem); left: .75rem; position: fixed; right: .75rem; z-index: 1020; }
.blog-contact-cta--bar { box-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .16); padding: .5rem; }
.blog-contact-cta--bar .blog-contact-cta__button { width: 100%; }
@media (max-width: 991.98px) { .blog-public__post { max-width: 820px; margin: 0 auto; padding-bottom: 4.5rem; } .blog-public__sidebar-inner { position: static; } .blog-public__card--horizontal { grid-template-columns:1fr; } .blog-public__card--horizontal .blog-public__cover { aspect-ratio:16/9; height:auto; } .blog-public__share-actions { width:100%; } }
