/* ==========================================================================
   LICI — what's-new feed styles (pairs with js/feed.js)
   Uses the variables from style.css; the value after each comma is a fallback.
   Cards reuse the existing .post, .featured and .bloggrid styles.
   ========================================================================== */

[data-feed][hidden], section[hidden]{ display:none !important; }

/* ---------- "New" tag ---------- */
.feed-new{
  display:inline-block; margin-left:.8em; padding:.38em .62em .34em;
  background:var(--accent,#6b1f1a); color:var(--ondark,#f3ece1);
  font-size:10px; font-weight:700; letter-spacing:.18em; line-height:1; text-transform:uppercase;
  border-radius:2px; vertical-align:.12em; white-space:nowrap;
}

/* ---------- homepage: bar under the masthead (only while something is new) ---------- */
.feed-bar{ position:relative; z-index:3; background:var(--accent,#6b1f1a); }
.feed-bar a{
  display:flex; align-items:center; gap:10px 18px; padding-block:14px;
  color:#fff; text-decoration:none; min-width:0;
  transition:background .3s var(--ease,ease);
}
.feed-bar .feed-new{ margin-left:0; background:var(--ondark,#f3ece1); color:var(--accent,#6b1f1a); }
.feed-bar .fb-k{
  font-size:11px; letter-spacing:.2em; text-transform:uppercase; font-weight:700;
  color:var(--rose,#e9c9b8); white-space:nowrap;
}
.feed-bar .fb-t{
  flex:1 1 auto; min-width:0; font-size:15px; font-weight:700; letter-spacing:-.005em;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.feed-bar .fb-go{
  font-size:11.5px; letter-spacing:.16em; text-transform:uppercase; font-weight:700;
  color:var(--rose,#e9c9b8); white-space:nowrap; transition:transform .3s var(--ease,ease);
}
.feed-bar:hover{ background:var(--accent2,#8a2c24); }
.feed-bar a:hover .fb-t{ text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.feed-bar a:hover .fb-go{ transform:translateX(4px); }
.feed-item{ animation:feed-in .6s var(--ease,ease) backwards; }
@keyframes feed-in{ from{ opacity:0; transform:translateY(-6px); } }
@media (max-width:640px){
  .feed-bar a{ flex-wrap:wrap; padding-block:12px 14px; }
  .feed-bar .fb-t{ flex-basis:100%; white-space:normal; display:-webkit-box;
    -webkit-line-clamp:2; -webkit-box-orient:vertical; line-height:1.35; }
  .feed-bar .fb-go{ display:none; }
}

/* ---------- cards (homepage Latest, blog grid, featured) ---------- */
.post .pdate .feed-new, .featured .pdate .feed-new{ margin-left:.7em; }
.feed-sum{
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
/* no image, or the image file is missing: a typographic plate */
.pimg.plate{
  position:relative; display:flex; align-items:flex-end; padding:22px 24px;
  background:var(--wash,#fbf7ef); border-bottom:1px solid var(--hair,#d9cfc0);
}
.pimg.plate::before{
  content:""; position:absolute; top:22px; left:24px; width:34px; height:3px; background:var(--accent,#6b1f1a);
}
.pimg.plate::after{
  content:""; position:absolute; top:18px; right:20px; width:44px; height:58px; opacity:.08;
  background:url("../assets/lici.svg") no-repeat center / contain;
}
.pimg.plate .pl-k{
  font-size:clamp(22px,2.4vw,30px); font-weight:700; letter-spacing:-.01em; line-height:1.05;
  color:var(--accent,#6b1f1a);
}
.featured .pimg.plate{ padding:34px 36px; }
.featured .pimg.plate::before{ top:34px; left:36px; }
.featured .pimg.plate .pl-k{ font-size:clamp(30px,3.6vw,46px); }

/* ---------- dated rows (blog News, programmes announcements) ---------- */
.feed-rows{ border-top:1px solid var(--hair,#d9cfc0); }
.feed-row{
  display:grid; grid-template-columns:190px 150px 1fr; gap:0 28px;
  padding:26px 0; border-bottom:1px solid var(--hair,#d9cfc0);
  color:inherit; text-decoration:none;
}
.feed-row .fr-d{ font-size:13px; color:var(--muted,#6f655a); letter-spacing:.02em; padding-top:3px; }
.feed-row .fr-d .feed-new{ display:table; margin:.7em 0 0; }
.feed-row .fr-k{
  font-size:11.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--accent,#6b1f1a); padding-top:4px;
}
.feed-row h3{ font-size:20px; font-weight:700; line-height:1.3; color:var(--ink,#1a1714); }
.feed-row p{ margin-top:8px; font-size:14.5px; color:var(--muted,#6f655a); line-height:1.6; font-weight:300; max-width:66ch; }
.feed-row .fr-until{
  display:inline-block; margin-top:12px; padding-left:9px; border-left:2px solid var(--accent,#6b1f1a);
  font-size:12px; letter-spacing:.06em; color:var(--accent,#6b1f1a);
}
.feed-row:hover h3{ text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
@media (max-width:860px){
  .feed-row{ grid-template-columns:1fr; gap:6px; padding:22px 0; }
  .feed-row .fr-d .feed-new{ display:inline-block; margin:0 0 0 .7em; }
}

/* ---------- nav: dot beside a section with something new ---------- */
nav.main a .feed-dot, .menu-btn .feed-dot{
  display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--rose,#e9c9b8);
}
nav.main a .feed-dot{ position:absolute; top:3px; right:-9px; }         /* sits off the word: no reflow */
.menu-btn .feed-dot{ margin-left:.6em; vertical-align:middle; position:relative; top:-1px; }
@media (max-width:860px){
  nav.main a .feed-dot{ position:relative; top:-2px; right:auto; margin-left:.6em; vertical-align:middle; }
}
.feed-sr{
  position:absolute; width:1px; height:1px; overflow:hidden; white-space:nowrap;
  clip:rect(0 0 0 0); clip-path:inset(50%);
}

/* ---------- messages (empty list, load failure, no JavaScript) ---------- */
.feed-msg{ padding:26px 0; color:var(--muted,#6f655a); font-size:15px; max-width:60ch; font-weight:300; }

@media (prefers-reduced-motion:reduce){ .feed-item{ animation:none; } }
