/* The supplied forest GIF sits below the existing translucent BambiSMP surfaces. */
body::before,body.home-page::before{
  background:linear-gradient(rgba(255,249,252,.80),rgba(255,249,252,.86)),url('/assets/images/cozy-forest-background.gif') center center/cover no-repeat;
}

/* The short now lives in the original small server card. */
.hero-server-video-showcase{padding-bottom:24px}
.hero-server-video-showcase>.hero-server-video{display:block;width:100%;height:470px;aspect-ratio:9/16;border:0;border-radius:21px;background:#2f1a29}
.hero-server-video-showcase .hero-pvp-caption{left:0;top:0;margin-top:13px}
@media(max-width:1780px){
  .home-page .hero .hero-server-video-showcase{display:block;position:relative;top:auto;left:auto!important;width:min(300px,calc(100% - 42px));margin:26px auto 0;margin-left:auto!important;margin-right:auto!important}
}
@media(min-width:901px) and (max-width:1780px){
  .home-page .hero{display:grid;grid-template-columns:minmax(0,1fr) 300px minmax(300px,520px) minmax(0,1fr);column-gap:24px;align-items:start}
  .home-page .hero>.hero-stack{grid-column:1/-1;grid-row:1}
  .home-page .hero .hero-server-video-showcase{grid-column:2;grid-row:2;width:300px;margin:22px 0 0;margin-left:0!important;margin-right:0!important}
  .home-page .hero .discord-widget{grid-column:3;grid-row:2;width:100%;margin:22px 0 0}
}

/* Gallery page: familiar colors, with room for the images to lead. */
.gallery-page-hero{padding-bottom:48px}
.gallery-intro{text-align:center}
.gallery-intro .eyebrow{justify-content:center}
.gallery-intro .eyebrow::before{content:none}
.gallery-intro h1{margin:8px 0 10px}
.gallery-intro p{max-width:650px;margin:0 auto;color:#795c6c;font-size:17px}
.gallery-section{padding-top:40px}
.bambi-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;columns:auto}
.bambi-gallery-item{min-width:0;margin:0;aspect-ratio:4/3;border-width:7px;border-radius:24px;background:#f9e5ef}
.bambi-gallery-item:first-child{grid-column:span 2;aspect-ratio:16/7}
.bambi-gallery-item>a{display:block;width:100%;height:100%}
.bambi-gallery-item img{width:100%;height:100%;object-fit:cover}
.bambi-gallery-item figcaption{left:11px;right:auto;bottom:11px;padding:8px 12px;color:#613d51;font-size:13px}
.gallery-zoom{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:rgba(255,255,255,.9);color:#ad4c7e;font-size:20px;font-weight:800;box-shadow:0 4px 12px rgba(87,43,66,.13)}
.gallery-end-note{display:flex;flex-direction:column;align-items:center;gap:9px;margin:43px auto 0;text-align:center}
.gallery-end-note>span{color:#db83ae}
.gallery-end-note p{margin:0;color:#745568;font-weight:800}

/* The existing protected admin panel gains a gallery workspace. */
.admin-shortcuts{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin:0 0 28px}
.admin-shortcuts a{padding:9px 14px;border:1px solid #ecc5d9;border-radius:12px;background:rgba(255,255,255,.87);color:#945070;font-size:13px;font-weight:900}
.admin-shortcuts a:hover{background:#fff0f7}
.admin-work-section{max-width:940px;margin:0 auto 38px;scroll-margin-top:105px}
.admin-work-section>h2{margin:0;color:#613c51;font:750 clamp(26px,3vw,34px)/1.1 'Bricolage Grotesque',sans-serif}
.admin-work-section>p{margin:7px 0 19px;color:#886979}
.admin-gallery-form{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:25px;border-radius:22px}
.admin-gallery-form label:nth-of-type(3){grid-column:1/-1}
.admin-gallery-form button{justify-self:start}
.admin-gallery-list{display:grid;gap:10px;margin-top:20px}
.admin-gallery-item{display:grid;grid-template-columns:94px minmax(0,1fr) auto;align-items:center;gap:15px;padding:12px;border-radius:17px}
.admin-gallery-item img{width:94px;height:78px;object-fit:cover;border-radius:11px}
.admin-gallery-item strong{display:block;color:#634256;font-size:15px}
.admin-gallery-item small{display:block;color:#967387;font-size:12px;overflow-wrap:anywhere}
.admin-gallery-item form{margin:0}
.admin-gallery-empty{padding:16px;border:1px dashed #eabbd0;border-radius:14px;background:rgba(255,255,255,.68)}

@media(max-width:720px){
  .home-page .hero .hero-server-video-showcase{margin-top:22px}
  .gallery-page-hero{padding-top:45px}
  .bambi-gallery-grid{grid-template-columns:1fr;gap:15px}
  .bambi-gallery-item,.bambi-gallery-item:first-child{grid-column:auto;aspect-ratio:4/3}
  .admin-gallery-form{grid-template-columns:1fr;padding:18px}
  .admin-gallery-form label:nth-of-type(3){grid-column:auto}
  .admin-gallery-item{grid-template-columns:72px minmax(0,1fr);gap:10px}
  .admin-gallery-item img{width:72px;height:64px}
  .admin-gallery-item form{grid-column:1/-1}
  .admin-gallery-item form button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  body::before,body.home-page::before{background:linear-gradient(rgba(255,249,252,.80),rgba(255,249,252,.86)),url('/assets/images/modded/ribbits-village.png') center/cover no-repeat}
}
