/* static-rebuild adjustments (not part of the original theme) */
/* the original served a pre-sized logo; constrain it so it can't overlap the nav */
.johannes-site-branding .johannes-logo,.johannes-site-branding img{height:36px;width:auto;display:block}
.johannes-site-branding{flex:0 0 auto}
.johannes-site-branding .site-title{margin:0;line-height:0}
.header-middle .container,.header-sticky-main .container{gap:28px}
.header-middle .slot-l,.header-sticky-main .slot-l{flex:0 0 auto;min-width:0}
.header-middle .slot-r,.header-sticky-main .slot-r{flex:1 1 auto;min-width:0;display:flex;justify-content:flex-end;align-items:center}
.header-middle .johannes-menu,.header-sticky-main .johannes-menu{flex-wrap:nowrap}
/* The menu labels are full category names, so the nav is wide. The original overlapped
   its own logo at desktop width; widen only the HEADER container (content keeps the
   theme's 1224px measure) and taper type between breakpoints so it never collides. */
@media (min-width:1400px){
  .header-middle .container,.header-sticky-main .container{max-width:1340px}
  .header-middle .johannes-menu>li>a,.header-sticky-main .johannes-menu>li>a{padding-left:10px;padding-right:10px;font-size:1.26rem}
}
@media (min-width:1050px) and (max-width:1399px){
  .johannes-site-branding img{height:30px}
  .header-middle .johannes-menu>li>a,.header-sticky-main .johannes-menu>li>a{padding-left:7px;padding-right:7px;font-size:1.1rem}
}
@media (min-width:900px) and (max-width:1049px){
  .johannes-site-branding img{height:26px}
  .header-middle .johannes-menu>li>a,.header-sticky-main .johannes-menu>li>a{padding-left:5px;padding-right:5px;font-size:1rem}
}
.johannes-post-col{margin-bottom:40px;display:flex}
.johannes-post-col .johannes-post{display:flex;flex-direction:column;width:100%}
.johannes-post-col .johannes-button{margin-top:auto;align-self:flex-start}
.johannes-post .entry-summary{margin:12px 0 18px;color:#6b7078}
.johannes-post .entry-title{margin:10px 0 6px}
.entry-media{display:block;margin-bottom:16px}
.entry-media img{width:100%;height:auto}
.rebuild-notice{padding:20px 24px;margin-bottom:32px;border-left:4px solid #f13b3b;background:#f2f3f3}
.rebuild-notice p{margin:0;font-size:1.5rem}
.rebuild-postnav{display:flex;justify-content:space-between;gap:24px;margin:56px 0 0;padding-top:28px;border-top:1px solid rgba(66,72,81,.15)}
.rebuild-postnav a{max-width:45%;font-family:'Roboto Slab',serif;line-height:1.4}
.rebuild-postnav a.next{text-align:right;margin-left:auto}
.rebuild-postnav span{display:block;font-family:'Open Sans',sans-serif;font-size:1.2rem;text-transform:uppercase;letter-spacing:.08em;color:#989da2;margin-bottom:6px}
.entry-content img{max-width:100%;height:auto}
.johannes-footer .johannes-copyright{padding:24px 0}
