/**
 * Shortcode [ritus_latest_grid] — layout A griglia 3 colonne.
 * Stile autonomo: non dipende da .ritus-blog-wrap, carica solo nelle pagine
 * che usano lo shortcode. Prefissato .ritus-latest-grid per evitare
 * conflitti con temi.
 */
.ritus-latest-grid{
  --rlg-red:#8b1a1a;
  --rlg-carbone:#2c2c2c;
  --rlg-font:#7a7a7a;
  --rlg-avorio:#f0edea;
  --rlg-border:#E0D9D2;
  --rlg-white:#fff;

  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:20px;
  font-family:'Montserrat',system-ui,sans-serif;
  margin:24px 0;
}
.ritus-latest-grid *{box-sizing:border-box}

.ritus-latest-grid .rlg-card{
  background:var(--rlg-white);
  border:1px solid var(--rlg-border);
  border-radius:14px;
  overflow:hidden;
  text-decoration:none;
  color:inherit;
  display:flex;flex-direction:column;
  transition:all .2s ease;
}
.ritus-latest-grid .rlg-card:hover{
  border-color:var(--rlg-red);
  transform:translateY(-2px);
  text-decoration:none;
}

.ritus-latest-grid .rlg-cover{
  aspect-ratio:16/10;
  background:linear-gradient(135deg,var(--rlg-avorio) 0%,#e6ddd3 100%);
  background-size:cover;
  background-position:center;
  position:relative;
}
.ritus-latest-grid .rlg-cover::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.15));
}

.ritus-latest-grid .rlg-body{
  padding:20px 22px 22px;
  display:flex;flex-direction:column;flex:1;
}
.ritus-latest-grid .rlg-cat{
  font-size:10.5px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--rlg-red);
  margin-bottom:10px;
}
.ritus-latest-grid .rlg-title{
  font-size:17px;font-weight:800;color:var(--rlg-carbone);
  line-height:1.3;letter-spacing:-.005em;
  margin:0 0 16px;
}
.ritus-latest-grid .rlg-meta{
  font-size:12px;color:var(--rlg-font);font-weight:500;
  margin-top:auto;
  display:inline-flex;align-items:center;gap:6px;
}
.ritus-latest-grid .rlg-meta svg{
  width:14px;height:14px;stroke:currentColor;flex-shrink:0;
}

@media (max-width:900px){
  .ritus-latest-grid{grid-template-columns:1fr;gap:16px}
}
