/* === Burlesque Bits → Pulp-style front grid === */
:root{
  --bb-bg:#000;
  --bb-fg:#eee;
  --bb-sub:#cfcfcf;
  --bb-pink:#ff3b6e;
  --bb-rule:#2a2a2a;
}
body { background: var(--bb-bg); color: var(--bb-fg); }

/* Typography */
h1,h2,h3 { font-family: "capitol", sans-serif; letter-spacing: .02em; }
.bb-kicker, .elementor-post__excerpt { font-family: "courier", monospace; color: var(--bb-sub); }
.elementor-post__title a { text-transform: uppercase; text-decoration: none; }

/* Grid spacing (Elementor Posts) */
.elementor-widget-posts .elementor-posts-container { gap: 28px 24px; }
.elementor-post { background: #0e0e0e; border: 1px solid var(--bb-rule); }

/* Featured image aspect + overlay ribbon */
.elementor-post__thumbnail {
  position: relative;
  overflow: hidden;
  background: #111; /* helps frame transparent or mismatched aspect images */
}
.elementor-post__thumbnail img {
  /* === CHOOSE ONE OPTION BELOW === */

  /* === Option 1: Uniform Cropped Portraits (3:4 like magazine covers) === */
  aspect-ratio: 3/4;
  object-fit: cover;

  /* === Option 2: Preserve Full Image (show entire image, may leave gaps) === */
  /* aspect-ratio: auto; */
  /* object-fit: contain; */

  width: 100%;
  height: auto;
  display: block;
}

/* Category ribbon (if used) */
.bb-cat-ribbon {
  position:absolute; top:10px; left:-8px; background: var(--bb-pink); color:#000;
  font: 600 12px/1 "capitol", sans-serif; text-transform: uppercase;
  padding:6px 10px; clip-path: polygon(8px 0, 100% 0, 100% 100%, 8px 100%, 0 50%);
}

/* Card content */
.elementor-post__text { padding: 14px 16px 16px; }
.elementor-post__title {
  margin: 4px 0 8px;
  font-weight: 800;
  font-size: 20px;
  line-height: 1.2;
}
.elementor-post__excerpt {
  margin: 0 0 10px;
  font-size: 14px;
}

/* Meta row (date + tags) */
.bb-meta { display:flex; flex-wrap:wrap; gap:8px 10px; align-items:center; font-family: "courier", monospace; }
.bb-date {
  font-size:12px; color:#111; background: var(--bb-fg); padding:2px 8px; border-radius: 999px;
  text-transform: uppercase; letter-spacing:.04em;
}
.bb-tags a {
  font-size:12px; color: var(--bb-sub);
  padding:2px 6px;
  border:1px solid var(--bb-rule);
  border-radius:999px;
}
.bb-tags a:hover { color:#fff; border-color: var(--bb-pink); }

/* “Next/Older” nav strip (archive pages) */
.bb-archive-nav {
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin: 28px 0;
}
.bb-archive-nav a {
  color:#fff;
  border:1px solid var(--bb-rule);
  padding:10px 14px;
  text-decoration:none;
}
.bb-archive-nav a:hover { border-color: var(--bb-pink); }

/* Mobile tweaks */
@media (max-width: 767px){
  .elementor-widget-posts .elementor-posts-container { gap: 22px; }
  .elementor-post__title { font-size: 18px; }
}
