/* optional */


/* Animated background */
    .bg-anim {
      position: fixed;
      inset: 0;
      pointer-events: none;
      z-index: -1;
      background:
        radial-gradient(1200px 600px at 10% 10%, rgba(255,198,0,0.18), transparent 60%),
        radial-gradient(900px 500px at 90% 20%, rgba(181,76,255,0.12), transparent 65%),
        radial-gradient(900px 500px at 20% 90%, rgba(0,183,235,0.10), transparent 65%),
        linear-gradient(to bottom, #000 0%, #0b0b0c 45%, #141414 100%);
      filter: saturate(1.05);
    }
    .glow-dot {
      position: fixed;
      width: 520px;
      height: 520px;
      margin-left: -260px;
      margin-top: -260px;
      border-radius: 999px;
      pointer-events: none;
      z-index: -1;
      background: radial-gradient(circle, rgba(255,198,0,0.16), transparent 55%);
      filter: blur(6px);
      transform: translate3d(-9999px,-9999px,0);
      transition: transform 0.03s linear;
    }
    @media (prefers-reduced-motion: reduce){
      .glow-dot{ display:none; }
    }

/* Base layout */
html, body{
  height: 100%;
}
body{
  color: #fff;
}

/* Dropdown fixes */
details { position: relative; }
details > summary { list-style: none; cursor: pointer; }
details > summary::-webkit-details-marker { display:none; }
.dropdown-menu{
  position: absolute;
  right: 0;
  margin-top: .5rem;
  z-index: 99999;
}
header{ position: sticky; top:0; z-index: 99998; }

/* ===== Fixed-size blueprint cards ===== */
.bp-card{
  height: 440px;               /* card fixed height */
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.bp-media{
  height: 190px;               /* fixed image section */
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.bp-media img{
  width: 100%;
  height: 100%;
  object-fit: contain;         /* change to cover if you want crop */
  object-position: center;
}

.bp-body{
  flex: 1;
  display: flex;
  flex-direction: column;
}

.bp-title{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
}

.bp-desc{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 3;
}

/* footer pinned bottom (works with the existing spacer + footer block) */
.bp-footer{
  margin-top: auto;
}
