/* FASTO — Recent posts (compact) */
.fasto-posts{ max-width: 900px; margin: 1rem auto; padding: 0 1rem; }
.fasto-posts .fp-list{ display:flex; flex-direction:column; gap:.55rem; }

/* each row: slim, glassy */
.fasto-posts .fp-item{
  display:block;
  padding:.70rem 1rem;
  border:1px solid var(--fasto-border);
  background:var(--fasto-card);
  border-radius:12px;
  text-decoration:none;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.fasto-posts .fp-item:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,.06);
  box-shadow: 0 8px 18px rgba(0,0,0,.22);
}

.fasto-posts .fp-title{
  font-weight:700; letter-spacing:.2px;
  font-size: clamp(15px, 2.6vw, 18px);
  color:#eaf7ff;
}
.fasto-posts .fp-meta{
  margin-top:2px; font-size:.9rem; color:#9fc4d9;
}
.fasto-posts .fp-meta span{ opacity:.7; margin-left:.35rem; }

/* empty state */
.fasto-posts .fp-empty{
  padding: .9rem 1rem; border:1px dashed var(--fasto-border);
  border-radius:12px; text-align:center; opacity:.8;
}

/* CTA wrapper (reuse your fasto-btn from global) */
.fasto-posts .fp-actions{ margin-top:.9rem; display:flex; justify-content:center; }
.fasto-posts .fasto-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.72rem 1.15rem; border-radius:999px; font-weight:800; letter-spacing:.2px;
  color:#061018; text-decoration:none;
  background: linear-gradient(135deg, #3ad3ff, #7b5bff);
  box-shadow: 0 10px 24px rgba(122,92,255,.28), inset 0 0 0 1px rgba(255,255,255,.25);
  transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.fasto-posts .fasto-btn:hover{ transform: translateY(-1px); box-shadow: 0 14px 30px rgba(122,92,255,.38), inset 0 0 0 1px rgba(255,255,255,.35); }

/* small screens: keep rows slim, edge-to-edge helper if you add class="edge" in Divi */
@media (max-width: 680px){
  .fasto-posts.edge{ margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
  .fasto-posts .fp-item{ border-radius: 10px; }
}


/* Heading above list (if provided) */
.fasto-posts .fp-heading{ margin:0 0 .6rem; }

/* Badge group (top-right overlay) */
.fasto-posts .fp-item{ position:relative; overflow:hidden; }
.fasto-posts .fp-badges{
  position:absolute; top:8px; right:10px;
  display:flex; gap:.35rem;
  opacity:.75; transition:opacity .2s ease, transform .2s ease;
}
.fasto-posts .fp-item:hover .fp-badges{ opacity:1; }

/* Individual badge pill */
.fasto-posts .fp-badge{
  font-size:.75rem;
  font-weight:600;         /* lighter than 800 */
  text-transform:capitalize; /* instead of UPPERCASE */
  letter-spacing:.2px;     /* less harsh */
  line-height:1.2;
  padding:.3rem .65rem;
  border-radius:999px;
  color:#061018;
  background:linear-gradient(135deg, #E7EEF6, #CFE0F5);
  border:1px solid rgba(255,255,255,.3);
  box-shadow: 0 1px 6px rgba(0,0,0,.12);
}


/* Optional category colors by slug — tweak to your palette */
.fasto-posts .fp-badge.fp-cat-uncategorized{ background:linear-gradient(135deg,#bcdcff,#79b6ff); }
.fasto-posts .fp-badge.fp-cat-blog,
.fasto-posts .fp-badge.fp-cat-article{ background:linear-gradient(135deg,#ffd8b8,#ffb27a); }
.fasto-posts .fp-badge.fp-cat-updates{ background:linear-gradient(135deg,#b8ffe2,#7affc2); }

/* Meta inline dot */
.fasto-posts .fp-dot{ opacity:.5; margin:0 .35rem; }
.fasto-posts .fp-read{ opacity:.85; }

.fasto-posts .fp-heading{
  text-align:center;
  font-size:1.8rem;
  font-weight:700;
  margin-bottom:1.2rem;
}

.fasto-posts .fp-item:hover .fp-badge{
  transform:scale(1.05);
  transition:transform .15s ease;
}



/* let chips render outside the card */
.fasto-posts .fp-item{ position:relative; overflow:visible; }

/* reserve space so long titles never sit under the chip */
.fasto-posts .fp-title{ padding-right:4.5rem; }
@media (max-width:680px){
  .fasto-posts .fp-title{ padding-right:3.6rem; }
}

/* float the badge slightly outside the top‑right corner */
.fasto-posts .fp-badges{
  position:absolute;
  top:-10px;               /* up and out */
  right:-8px;
  display:flex; flex-wrap:wrap; gap:.35rem;
  opacity:.9;
  z-index:2;
}

/* chip styling (soft) + don’t block taps */
.fasto-posts .fp-badge{
  font-size:.75rem; font-weight:600; text-transform:capitalize; letter-spacing:.2px;
  line-height:1.2; padding:.3rem .65rem; border-radius:999px;
  color:#061018; background:linear-gradient(135deg,#E7EEF6,#CFE0F5);
  border:1px solid rgba(255,255,255,.3); box-shadow:0 1px 6px rgba(0,0,0,.12);
  pointer-events:none;
}

/* a touch smaller on phones */
@media (max-width:680px){
  .fasto-posts .fp-badge{ transform:scale(.95); }
}


