/* Home page styles */
.tiles{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:var(--gap);
  max-width:var(--max);
  margin:-4rem auto 0;
  padding:0 1.2rem;
}
.tile{
  position:relative;
  background:var(--card);
  border-radius:var(--rad);
  box-shadow:0 4px 12px rgba(0,0,0,.05);
  padding:6rem 1.6rem 1.8rem;
  text-align:center;
  overflow:hidden;
}
@media(prefers-reduced-motion:no-preference){
  .tile{transition:.3s}
  .tile:hover{transform:translateY(-4px)}
}
.tile h2{font-size:2.4rem;margin-bottom:.6rem}
.tile p{color:var(--muted)}
.tile::before{
  content:attr(data-emoji);
  position:absolute;
  font-size:6rem;
  opacity:.07;
  left:50%;
  top:20%;
  transform:translateX(-50%);
}

.today{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:var(--gap);
  max-width:var(--max);
  margin:4rem auto 0;
  padding:0 1.2rem;
}
.widget{
  background:var(--card);
  border-radius:var(--rad);
  box-shadow:0 4px 12px rgba(0,0,0,.04);
  padding:var(--gap) 1.6rem;
  display:flex;
  flex-direction:column;
  gap:1rem;
}
.widget h3{font-size:2rem;margin-bottom:1rem}
.widget-action{margin-top:auto;font-weight:600}
.widget-action a{display:inline-flex;align-items:center;gap:.4em}
.widget-action a::after{content:"\2192";font-size:1.2em;line-height:1;transition:transform .2s}
.widget-action a:hover::after{transform:translateX(3px)}
.sign-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:.8rem;padding:0;list-style:none}
.sign-grid a{display:flex;flex-direction:column;align-items:center;font-size:1.3rem;padding:.6rem;border-radius:var(--rad)}
.sign-grid img{width:40px;height:40px;margin-bottom:.4rem}
/* Force 3x4 grid on small screens */
@media (max-width: 480px){
  .today .sign-grid{grid-template-columns:repeat(4,1fr)}
}

.latest{max-width:var(--max);margin:4rem auto;padding:0 1.2rem}
.article-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.6rem}
.article-card{background:var(--card);border-radius:var(--rad);box-shadow:0 2px 8px rgba(0,0,0,.05);display:flex;flex-direction:column;overflow:hidden}
@media(prefers-reduced-motion:no-preference){
  .article-card{transition:transform .25s}
  .article-card:hover{transform:translateY(-4px)}
}
.article-card img{height:160px;width:100%;object-fit:cover}
.article-card .article-link{display:flex;flex-direction:column}
.article-card h3{padding:1.4rem 1.4rem 0}
.article-card .article-meta{padding:0 1.4rem 1.6rem}
.article-card h3{font-size:1.8rem;margin-bottom:.6rem}
.article-meta{font-size:1.3rem;color:var(--muted)}
