/* Shared column edges and a single content-to-footer gap. */
body{--content-footer-gap:16px;--public-column-max:600px;--public-column-width:min(var(--public-column-max),calc(100% - 30px))}
body:not(.home-page) main.page{box-sizing:border-box;width:var(--public-column-width);max-width:none;padding-inline:0;padding-bottom:0;margin-bottom:0}
body:not(.home-page) main.page>:last-child{margin-bottom:0}
body:not(.home-page) .site-footer{width:var(--public-column-width);max-width:none;margin-top:var(--content-footer-gap);margin-bottom:24px;margin-inline:auto}
body.home-page{--home-column-width:var(--public-column-width)}
body.home-page .content-stack{width:var(--home-column-width)}
body.home-page .site-footer{width:var(--home-column-width);max-width:none;margin:var(--content-footer-gap) auto 0}
@media(min-width:600px){
 body:has(.desktop-sidebar),body.has-public-nav{--public-column-width:min(var(--public-column-max),calc(100% - 165px))}
 body:not(.home-page):has(.desktop-sidebar) main.page,body.has-public-nav main.page,
 body:not(.home-page):has(.desktop-sidebar) .site-footer,body.has-public-nav .site-footer{margin-left:calc(117px + (100% - 117px)/2);margin-right:0;transform:translateX(-50%)}
 body.home-page{--home-column-width:var(--public-column-width);gap:var(--content-footer-gap)}
 body.home-page:has(.desktop-sidebar) .site-footer{width:var(--home-column-width);margin-top:0!important;margin-bottom:0!important}
 .home-page .site-footer__brand{gap:8px}.home-page .site-footer__brand b{font-size:10px;letter-spacing:.04em}.home-page .site-footer__brand small{display:none}
 .home-page .site-footer__mark,.home-page .site-footer__mark img{width:28px;height:28px;flex-basis:28px}
 .home-page .site-footer__links{gap:0}.home-page .site-footer__links a{padding:8px 6px;font-size:10px}
}
@media(max-width:599px){
 body{--public-column-max:372px}
 body.home-page .content-stack{min-height:0;padding-bottom:0;justify-content:flex-start}
 body.home-page .invite-list{padding:0}
 body:not(.home-page) .site-footer{margin-bottom:0}
}
@media(max-width:390px){body{--public-column-width:min(320px,calc(100% - 20px))}}
@media(min-width:600px) and (max-width:850px){
 body:not(.home-page) .site-footer{grid-template-columns:minmax(0,1fr);gap:14px}
 body:not(.home-page) .site-footer__links{flex-wrap:wrap;gap:4px}
 body:not(.home-page) .site-footer__links a{padding:8px}
 body:not(.home-page) .site-footer__meta{flex-wrap:wrap}
}
