.hero__overlay svg { display:block; width:100%; height:82px; }
.site-hero-bubble { position:relative; z-index:2; display:flex; flex-direction:column; align-items:center; min-width:190px; padding:14px 40px; border:0; border-radius:50px; background:white; box-shadow:0 2px 9px #0002; font:inherit; cursor:copy; }
.site-hero-bubble .h4 { font-family:Merriweather,serif; }
.site-hero-bubble .minecraft-version-badge { position:absolute; right:-16px; top:-18px; bottom:auto; padding:5px 18px; border-radius:20px; background:#fff; color:#575757; box-shadow:0 2px 4px #0002; font-family:Merriweather,serif; font-size:.8rem; white-space:nowrap; transform:rotate(20deg); }
.site-menu-toggle { display:none; padding:10px 14px; border:1px solid currentColor; background:transparent; color:inherit; font:inherit; }
.top-bar__logo .logo { color:#171717; }
.has-hero .top-bar__logo .logo { color:#fff; }
.has-hero .navigation__item a, .has-hero .site-menu-toggle { color:#fff; }
.site-meta { color:#575757; font-size:.85rem; text-align:center; }
.article-list { display:grid; grid-template-columns:minmax(0,1fr); gap:30px; margin:30px 0; }
.article-list .listed-article { display:grid!important; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); align-items:start; column-gap:28px; padding:0 0 20px; min-width:0; }
.article-list .listed-article:not(.listed-article--has-cover) { grid-template-columns:minmax(0,1fr); }
.listed-article__cover { grid-column:1; display:block; align-self:start; margin-top:20px; }
.listed-article__body { grid-column:2; display:flex; flex-direction:column; min-width:0; }
.article-list .listed-article:not(.listed-article--has-cover) .listed-article__body { grid-column:1; }
.listed-article__date { margin:0; font-family:Merriweather,Times New Roman,serif; font-size:.9rem; line-height:1.1; }
.article-list .listed-article h3 { margin:0 0 10px; font-size:1.45rem; line-height:1.25; }
.listed-article__excerpt { grid-area:excerpt; margin:0 0 12px; }
.listed-article__actions { grid-area:actions; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; }
.listed-article__author { margin:0; color:#575757; }
.listed-article__read-more { flex:0 0 auto; }
.listed-article img, .projects__item img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:5px; }
.listed-article h3 { margin:0 0 5px; }
.listed-article h3 a { color:inherit; text-decoration:none; }
.listed-article .site-meta { text-align:left; }
.site-info-bubbles { display:grid; max-width:460px; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; margin:40px auto 70px; }
.site-info-bubble { padding:16px; text-align:center; border:0; border-radius:0; background:transparent; box-shadow:none; }
.site-info-bubble--with-background { border-radius:5px; background:#f4f4f4; }
.site-info-bubble--stacked { display:flex; flex-direction:column; align-items:center; justify-content:center; }
.site-info-bubble h2 { margin-top:0; font-size:1.45rem; }
.site-info-bubble__icon { display:block; max-width:45px; max-height:45px; margin:0 auto 8px; }
.site-info-bubble__link, .site-info-bubble__copy { color:inherit; text-decoration:underline; text-underline-offset:.15em; }
.site-info-bubble__copy { padding:0; border:0; background:transparent; appearance:none; font:inherit; cursor:copy; }
.site-info-bubble__link:focus-visible, .site-info-bubble__copy:focus-visible { outline:2px solid currentColor; outline-offset:3px; border-radius:2px; }
.site-visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.site-center { text-align:center; }
.site-subpages { margin-top:40px; }
.site-gallery { position:relative; margin:24px 0; }
.site-gallery__stage { position:relative; aspect-ratio:1920 / 1017; overflow:hidden; border-radius:5px; background:transparent; }
.site-gallery__stage [data-gallery-slide] { position:absolute; inset:0; display:none; width:100%; height:100%; object-fit:contain; }
.site-gallery__stage [data-gallery-slide].is-active { display:block; }
.site-gallery button { position:absolute; top:50%; transform:translateY(-50%); border:0; background:#171717aa; color:white; font-size:2rem; width:45px; height:60px; cursor:pointer; }
.site-gallery [data-gallery-prev] { left:0; }
.site-gallery [data-gallery-next] { right:0; }
.project__contributors-list li { display:flex; flex-direction:column; align-items:center; line-height:1.25; }
.project__contributors-list li>img { width:64px; height:64px; object-fit:contain; }
.project header.project__header { grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; align-items:stretch; margin:24px 0 30px; }
.project__date { min-height:76px; padding:14px 18px; border-radius:5px; background:#f5f5f5; font-size:.9rem; }
.project__date .project__date-label { font-size:.78rem; line-height:1.35; color:#575757; }
.project__date time { display:block; margin-top:5px; font-size:1.05rem; font-weight:600; line-height:1.35; color:#171717; }
.project header.project__header .project__status { display:flex; grid-column:auto; align-items:center; justify-content:center; min-height:76px; margin:0; padding:12px 18px; text-align:center; }
.project__sidebar { align-self:start; padding:20px; border:1px solid #e5e5e5; border-radius:5px; background:#f5f5f5; }
.team-members { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:20px; list-style:none; padding:0; }
.team-members__team-member { padding:20px; background:#f5f5f5; border-radius:5px; text-align:center; }
.team-members__name { width:100%; margin:0 0 4px; text-align:center; }
.team-members__job { width:100%; margin:0 0 12px; color:#575757; font-size:.82rem; line-height:1.35; text-align:center; }
.site-faq details { padding:14px 0; border-bottom:1px solid #ddd; }
.site-faq summary { cursor:pointer; font-family:Merriweather,serif; font-size:1.2rem; }
.site-project-team { margin-top:20px; }
.site-pagination { display:flex; justify-content:center; align-items:center; gap:8px; margin:30px 0; }
.site-pagination__link, .site-pagination__current { display:inline-flex; width:40px; height:40px; align-items:center; justify-content:center; border:1px solid #dedede; border-radius:50%; background:#f7f7f7; color:#575757; line-height:1; text-decoration:none; }
.site-pagination__link:hover, .site-pagination__link:focus-visible { border-color:#aaa; background:#fff; }
.site-pagination__link:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
.site-pagination__current { border-color:#bdbdbd; background:#fff; color:#171717; font-weight:600; }
.site-pagination__link--previous, .site-pagination__link--next { font-size:1.45rem; }
.site-honeypot { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.footer__logo .logo { height:70px; color:#575757; }
.breadcrumb { margin-bottom:24px; color:#575757; font-size:.85rem; }
.breadcrumb a { color:inherit; font-size:inherit; line-height:inherit; }
@media (max-width:1023px) {
  .site-menu-toggle { display:block; }
  .navigation__list { display:none!important; position:absolute; right:20px; top:75px; min-width:190px; padding:10px!important; background:#171717; color:#fff; box-shadow:0 6px 18px #0004; z-index:12; }
  .navigation__list.is-open { display:block!important; }
  .navigation__item { display:block; margin:0!important; }
  .navigation__item a { display:block; padding:10px; color:#fff!important; }
}


/* Local presentation fixes: tidy navigation, galleries, and footer. */
@media (min-width: 1024px) {
  .top-bar > .container { gap: clamp(16px, 2.5vw, 36px); }
  .top-bar__logo { flex: 0 0 auto; margin-right: 0; }
  .navigation--top { display: flex; flex: 1 1 auto; justify-content: flex-end; min-width: 0; }
  .navigation--top .navigation__list { align-items: center; flex-wrap: nowrap; gap: clamp(12px, 1.5vw, 22px); }
  .navigation--top .navigation__item { margin-right: 0; white-space: nowrap; }
  .navigation--top .navigation__item a { font-size: clamp(.95rem, 1.1vw, 1.1rem); }
}
.footer__top { justify-content: space-between; gap: 28px; }
.footer__identity { display:flex; flex:0 0 auto; align-items:center; gap:12px; }
.footer__logo { margin-right: 0; }
.footer__social-icons { flex: 0 0 auto; align-items: center; gap: 12px; margin: 0; }
.footer__social-icon { margin: 0; }
.footer__social-icon a { display: grid; width: 42px; height: 42px; place-items: center; }
.footer__social-icon .icon { display: block; width: 28px; height: 28px; fill: currentColor; color: #575757; }
.footer__social-icon .icon-instagram { fill: none; }
.footer__bottom-text { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 20px; }
.footer__bottom-text > span { display: flex; gap: 12px; }
.navigation--footer { flex:1 1 auto; min-width:0; }
.navigation--footer .navigation__list { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px 18px; margin:0; padding:0; list-style:none; }
.navigation--footer .navigation__item { margin:0; }
.footer .navigation--footer .navigation__item a { color:#575757; -webkit-filter:none; filter:none; text-shadow:none; text-decoration:none; }
.navigation--footer .navigation__item a:hover, .navigation--footer .navigation__item a:focus-visible { text-decoration:underline; text-underline-offset:.15em; }
@media (max-width: 767px) {
  .article-list .listed-article { grid-template-columns:minmax(0,1fr); }
  .listed-article__cover { margin:0 0 14px; }
  .article-list .listed-article .listed-article__body { grid-column:1; }
  .footer__top { flex-direction: column; align-items:center; gap: 16px; }
  .footer__identity { flex-direction:column; gap:4px; }
  .navigation--footer { width:100%; }
  .navigation--footer .navigation__list { justify-content:center; gap:8px 14px; }
  .footer__bottom-text { flex-direction: column; justify-content: center; text-align: center; }
}
