/* =========================================================
   v3.1 — RESIDENCIES / VENUES
   ========================================================= */
.residencies-section{
  background:
    radial-gradient(circle at 8% 20%,rgba(0,199,242,.08),transparent 26%),
    radial-gradient(circle at 92% 78%,rgba(255,0,109,.08),transparent 25%),
    #070709;
}
.residency-group + .residency-group{margin-top:44px}
.residency-group-label{
  margin-bottom:16px;
  color:#f4f4f6;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:900;
  font-size:.78rem;
}
.residency-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.residency-card{
  display:flex;
  flex-direction:column;
  min-height:260px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,#101014,#08080a);
  overflow:hidden;
  transition:.2s ease;
}
.residency-card:hover{
  transform:translateY(-3px);
  border-color:rgba(0,199,242,.42);
}
.residency-card-past:hover{
  border-color:rgba(255,0,109,.42);
}
.residency-main-link{
  display:flex;
  flex-direction:column;
  flex:1;
  min-height:0;
}
.residency-logo{
  height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(255,255,255,.025);
  border-bottom:1px solid var(--line);
}
.residency-logo img{
  width:100%;
  height:100%;
  max-width:190px;
  max-height:95px;
  object-fit:contain;
  filter:grayscale(1) brightness(1.8);
  transition:.2s ease;
}
.residency-card:hover .residency-logo img{
  filter:grayscale(0) brightness(1);
}
.residency-logo span{
  font-family:Impact,"Arial Narrow",sans-serif;
  text-transform:uppercase;
  text-align:center;
  font-size:clamp(1.6rem,2.8vw,2.6rem);
  line-height:1;
}
.residency-info{padding:18px 18px 14px}
.residency-info h3{
  margin:0 0 6px;
  font-size:1.25rem;
}
.residency-info p{
  margin:0;
  color:var(--muted);
  font-size:.88rem;
}
.residency-years{
  margin-top:8px;
  color:var(--cyan);
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:.72rem;
  font-weight:900;
}
.residency-card-past .residency-years{color:var(--magenta)}
.residency-links{
  display:flex;
  gap:1px;
  margin-top:auto;
  border-top:1px solid var(--line);
  background:var(--line);
}
.residency-links a{
  flex:1;
  padding:10px 8px;
  background:#09090b;
  text-align:center;
  color:#dcdce1;
  font-weight:900;
  font-size:.7rem;
  letter-spacing:.1em;
  transition:.2s ease;
}
.residency-links a:hover{
  background:#101016;
  color:var(--cyan);
}

@media (max-width:1000px){
  .residency-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:720px){
  .residency-grid{grid-template-columns:repeat(2,1fr)}
  .residency-card{min-height:220px}
  .residency-logo{height:120px;padding:18px}
  .residency-info{padding:14px}
  .residency-info h3{font-size:1rem}
}
@media (max-width:430px){
  .residency-grid{grid-template-columns:1fr}
}


