/* ============================================================
   HOME: Garry Today block
   ============================================================ */

.card--today{
  display:flex;
  flex-direction:column;
}

.home-today__head{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  margin-bottom:20px;
  gap:16px;
}
.home-today__head h3{
  font-family:var(--font-heading, 'Cormorant Garamond', serif);
  font-size:24px;
  margin:6px 0 0;
  color:var(--cream);
}
.home-today__head a{
  font-size:13px;
  color:var(--saffron);
  text-decoration:none;
  white-space:nowrap;
  transition:.2s;
}
.home-today__head a:hover{
  color:var(--amber);
}

.home-today__grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:16px;
}

.home-today-note{
  padding:18px 20px;
  background:var(--card-bg);
  border:1px solid var(--border-base);
  border-left:3px solid var(--amber);
  border-radius:0 14px 14px 0;
  transition:.3s;
}
.home-today-note:hover{
  border-left-color:var(--saffron);
  transform:translateX(3px);
}
.home-today-note__meta{
  display:flex;
  gap:12px;
  align-items:center;
  margin-bottom:10px;
  font-size:10px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.home-today-note__tod{
  color:var(--saffron);
}
.home-today-note__meta time{
  margin-left:auto;
  color:var(--muted);
  letter-spacing:.05em;
  text-transform:none;
  font-size:11px;
}
.home-today-note p{
  margin:0;
  font-family:var(--font-heading, 'Cormorant Garamond', serif);
  font-size:16px;
  line-height:1.5;
  color:var(--cream);
}

/* ============================================================
   HOME: News row
   ============================================================ */

.home-news{
  max-width:1440px;
  margin:64px auto 0;
  padding:0 var(--pad);
}

.home-news__head{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  margin-bottom:24px;
  gap:16px;
}
.home-news__head h2{
  font-family:var(--font-heading, 'Cormorant Garamond', serif);
  font-size:28px;
  margin:0;
  color:var(--cream);
}
.home-news__head a{
  font-size:13px;
  color:var(--saffron);
  text-decoration:none;
  white-space:nowrap;
  transition:.2s;
}
.home-news__head a:hover{
  color:var(--amber);
}

.home-news__grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:20px;
}

.home-news-card{
  padding:22px;
  background:var(--card-bg);
  border:1px solid var(--border-base);
  border-radius:18px;
  display:flex;
  flex-direction:column;
  gap:10px;
  transition:.3s;
}
.home-news-card:hover{
  border-color:var(--border-strong);
  transform:translateY(-3px);
}
.home-news-card__tag{
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--amber);
}
.home-news-card h3{
  font-family:var(--font-heading, 'Cormorant Garamond', serif);
  font-size:18px;
  line-height:1.25;
  margin:0;
  color:var(--cream);
}
.home-news-card__excerpt{
  font-size:13px;
  line-height:1.5;
  color:var(--muted);
  margin:0;
}
.home-news-card__garry{
  margin-top:auto;
  padding-top:12px;
  border-top:1px dashed var(--border-soft);
  font-size:13px;
}
.home-news-card__garry span{
  display:block;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--saffron);
  margin-bottom:4px;
}
.home-news-card__garry em{
  font-family:var(--font-heading, 'Cormorant Garamond', serif);
  font-style:italic;
  color:var(--cream);
  line-height:1.4;
  display:block;
}
.home-news-card__link{
  font-size:12px;
  color:var(--saffron);
  text-decoration:none;
  align-self:flex-start;
  margin-top:8px;
  transition:.2s;
}
.home-news-card__link:hover{
  color:var(--amber);
}

.home-empty{
  grid-column:1/-1;
  text-align:center;
  padding:32px 20px;
  color:var(--muted);
  font-style:italic;
  font-size:13px;
}

@media (max-width:1100px){
  .home-today__grid{grid-template-columns:repeat(2,1fr)}
  .home-news__grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:680px){
  .home-today__grid{grid-template-columns:1fr}
  .home-news__grid{grid-template-columns:1fr}
  .home-news{margin-top:40px}
  .home-news__head{flex-direction:column;align-items:flex-start;gap:8px}
}