/* Diocesan Timeline — scoped styles */
.dt-wrap{
  --dt-navy:#0b1e3f;
  --dt-navy-soft:#122a55;
  --dt-gold:#b8892b;
  --dt-gold-soft:#d9b366;
  --dt-ivory:#f7f3ea;
  --dt-cream:#efe8d8;
  --dt-line:rgba(184,137,43,.28);
  --dt-text:#1a1f2e;
  --dt-muted:#5b6478;
  font-family: Georgia, "Times New Roman", serif;
  color:var(--dt-text);
  background:var(--dt-ivory);
  padding:clamp(24px,4vw,56px) clamp(16px,4vw,40px);
  border-radius:6px;
}
.dt-wrap *{box-sizing:border-box;}
.dt-header{text-align:center;max-width:720px;margin:0 auto clamp(24px,3vw,40px);}
.dt-eyebrow{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--dt-gold);font-weight:700;margin:0 0 .75rem;
}
.dt-title{
  font-size:clamp(1.9rem,4vw,2.75rem);
  line-height:1.1;margin:0 0 .75rem;color:var(--dt-navy);font-weight:600;
}
.dt-sub{margin:0;color:var(--dt-muted);font-size:1.02rem;line-height:1.55;}

/* Filters */
.dt-filters{
  display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;
  margin:0 auto clamp(24px,3vw,36px);max-width:780px;
}
.dt-filter{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
  padding:.55rem .95rem;border:1px solid var(--dt-line);background:transparent;
  color:var(--dt-navy);border-radius:999px;cursor:pointer;
  transition:background .18s,color .18s,border-color .18s;
}
.dt-filter:hover{border-color:var(--dt-gold);color:var(--dt-gold);}
.dt-filter.is-active{background:var(--dt-navy);color:var(--dt-ivory);border-color:var(--dt-navy);}
.dt-count{
  display:inline-block;margin-left:.35rem;padding:0 .4rem;border-radius:999px;
  background:rgba(0,0,0,.08);font-size:.68rem;
}
.dt-filter.is-active .dt-count{background:rgba(255,255,255,.18);}

/* List / rail */
.dt-list{
  list-style:none;padding:0;margin:0 auto;max-width:900px;
  position:relative;
}
.dt-list::before{
  content:"";position:absolute;left:14px;top:8px;bottom:8px;
  width:2px;background:linear-gradient(to bottom,var(--dt-gold-soft),var(--dt-line));
}
@media (min-width:720px){
  .dt-list::before{left:22px;}
}

.dt-item{position:relative;margin:0 0 .5rem;}
.dt-item.is-hidden{display:none;}

.dt-item__head{
  display:grid;
  grid-template-columns:36px auto 1fr auto;
  align-items:baseline;gap:.75rem 1rem;
  width:100%;text-align:left;background:transparent;border:0;
  padding:1rem 1rem 1rem 0;cursor:pointer;
  border-bottom:1px solid var(--dt-line);
  color:var(--dt-navy);font-family:inherit;
}
@media (min-width:720px){
  .dt-item__head{grid-template-columns:52px 110px 1fr auto;padding:1.1rem 1rem;}
}
.dt-item__head:hover{background:rgba(184,137,43,.06);}
.dt-item__head:focus-visible{outline:2px solid var(--dt-gold);outline-offset:2px;}

.dt-dot{
  grid-column:1;justify-self:center;align-self:center;
  width:14px;height:14px;border-radius:50%;background:var(--dt-gold);
  box-shadow:0 0 0 4px var(--dt-ivory), 0 0 0 5px var(--dt-line);
  transition:transform .18s,background .18s;
}
.dt-item[aria-expanded="true"] .dt-dot,
.dt-item__head[aria-expanded="true"] .dt-dot{background:var(--dt-navy);transform:scale(1.15);}

.dt-year{
  grid-column:2;font-weight:700;font-size:1.15rem;color:var(--dt-navy);
  letter-spacing:.02em;white-space:nowrap;
}
@media (min-width:720px){.dt-year{font-size:1.3rem;}}

.dt-item__meta{grid-column:3;display:flex;flex-direction:column;gap:.15rem;min-width:0;}
.dt-date{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dt-gold);font-weight:700;
}
.dt-item__title{font-size:1.02rem;line-height:1.45;color:var(--dt-text);font-weight:500;}

.dt-chev{
  grid-column:4;align-self:center;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:1.4rem;line-height:1;color:var(--dt-gold);font-weight:300;
  transition:transform .25s ease;
}
.dt-item__head[aria-expanded="true"] .dt-chev{transform:rotate(45deg);}

.dt-item__body{
  padding:0 1rem 1.25rem calc(36px + 1rem);
  color:var(--dt-text);line-height:1.7;font-size:1.02rem;
  animation:dtFade .25s ease;
}
@media (min-width:720px){
  .dt-item__body{padding:0 1rem 1.5rem calc(52px + 110px + 1rem);}
}
.dt-item__body p{margin:0;}

@keyframes dtFade{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:none;}}

@media (prefers-reduced-motion:reduce){
  .dt-item__body,.dt-chev,.dt-dot,.dt-filter{transition:none;animation:none;}
}

/* --- Images -------------------------------------------------- */
.dt-item.has-image .dt-item__head{
  grid-template-columns:36px 56px auto 1fr auto;
}
@media (min-width:720px){
  .dt-item.has-image .dt-item__head{
    grid-template-columns:52px 72px 110px 1fr auto;
  }
}
.dt-thumb{
  grid-column:2;align-self:center;
  width:52px;height:52px;border-radius:50%;overflow:hidden;
  background:var(--dt-cream);
  box-shadow:0 0 0 2px var(--dt-ivory), 0 0 0 3px var(--dt-line);
}
@media (min-width:720px){.dt-thumb{width:64px;height:64px;}}
.dt-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.dt-item.has-image .dt-year{grid-column:3;}
.dt-item.has-image .dt-item__meta{grid-column:4;}
.dt-item.has-image .dt-chev{grid-column:5;}

.dt-figure{
  margin:0 0 1rem;max-width:520px;
  background:var(--dt-cream);border:1px solid var(--dt-line);border-radius:4px;
  overflow:hidden;
}
.dt-figure img{width:100%;height:auto;display:block;}
.dt-figure figcaption{
  padding:.6rem .85rem;font-size:.82rem;color:var(--dt-muted);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  border-top:1px solid var(--dt-line);background:#fff;
}
