.history-hero {
  padding-top: clamp(5rem, 9vw, 9rem);
  padding-bottom: clamp(3rem, 7vw, 6rem);
}

.history-hero h1 {
  max-width: 14ch;
  margin: 1rem 0 1.5rem;
  color: #083b55;
  font-family: "Editor Note", Georgia, serif;
  font-size: clamp(3.3rem, 8vw, 7.8rem);
  font-weight: 400;
  line-height: .88;
  letter-spacing: -.045em;
}

.history-hero h1 em { color: #65757f; font-weight: 400; }
.history-hero .lede { max-width: 65rem; font-size: clamp(1.15rem, 2vw, 1.55rem); line-height: 1.75; }

.history-proof {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin: 3rem 0;
  background: rgba(8, 59, 85, .22);
  border: 1px solid rgba(8, 59, 85, .22);
}

.history-proof div { display: grid; gap: .35rem; padding: 1.4rem; background: #f6f3eb; }
.history-proof strong { color: #083b55; font-family: "Editor Note", Georgia, serif; font-size: clamp(2.3rem, 5vw, 4.5rem); font-weight: 400; }
.history-proof span { color: #52626b; font-size: .78rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }

.year-nav { display: flex; flex-wrap: wrap; gap: .55rem; }
.year-nav a { border: 1px solid rgba(8, 59, 85, .3); border-radius: 99rem; padding: .6rem .95rem; color: #083b55; text-decoration: none; font-size: .84rem; font-weight: 700; }
.year-nav a:hover, .year-nav a:focus-visible { background: #083b55; color: #fff; }

.history-note { margin-bottom: 4rem; padding: clamp(2rem, 5vw, 4rem); background: #083b55; color: #f6f3eb; }
.history-note h2 { margin-top: 0; font-family: "Editor Note", Georgia, serif; font-size: clamp(2rem, 4vw, 3.7rem); font-weight: 400; }
.history-note p { max-width: 70rem; line-height: 1.8; }
.history-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.25rem; margin-top: 1.75rem; }
.history-note .text-link { color: #f6f3eb; }

.history-timeline { position: relative; }
.history-year { display: grid; grid-template-columns: minmax(12rem, .65fr) minmax(0, 1.35fr); gap: clamp(2rem, 6vw, 7rem); padding: clamp(3rem, 7vw, 7rem) 0; border-top: 1px solid rgba(8, 59, 85, .24); scroll-margin-top: 8rem; }
.history-year-heading h2 { margin: .15rem 0; color: #083b55; font-family: "Editor Note", Georgia, serif; font-size: clamp(4.8rem, 10vw, 9rem); font-weight: 400; line-height: .86; }
.history-label { max-width: 24rem; color: #62727b; font-size: .95rem; font-weight: 700; line-height: 1.5; text-transform: uppercase; }
.history-summary { margin-top: 0; color: #263d49; font-family: "Editor Note", Georgia, serif; font-size: clamp(1.8rem, 3.4vw, 3rem); line-height: 1.15; }
.history-places { display: grid; gap: .4rem; margin: 2rem 0; color: #576872; line-height: 1.8; }
.history-places strong { color: #083b55; font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; }
.history-records, .history-films ul { display: grid; gap: 0; margin: 1.5rem 0; padding: 0; list-style: none; border-top: 1px solid rgba(8, 59, 85, .2); }
.history-records a, .history-films li a { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(10rem, .8fr); gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgba(8, 59, 85, .2); color: #083b55; text-decoration: none; }
.history-records a:hover strong, .history-films li a:hover strong { text-decoration: underline; text-underline-offset: .2em; }
.history-records span, .history-films span { color: #66767e; font-size: .86rem; line-height: 1.55; }
.history-films { margin-top: 2rem; }
.history-films summary { cursor: pointer; color: #083b55; font-weight: 700; }
.history-gap { margin-bottom: 1.5rem; padding: clamp(2rem, 5vw, 4rem); border: 1px dashed rgba(8, 59, 85, .38); background: rgba(142, 173, 89, .08); }
.history-gap + .history-gap { border-top: 1px dashed rgba(8, 59, 85, .38); }
.history-cta { margin-top: 4rem; margin-bottom: 6rem; padding: clamp(2.5rem, 6vw, 5rem); background: #ece8df; }
.history-cta h2 { max-width: 17ch; color: #083b55; font-family: "Editor Note", Georgia, serif; font-size: clamp(2.4rem, 5vw, 4.5rem); font-weight: 400; line-height: 1; }
.history-inline-link { margin-top: 1.5rem; }

.history-portfolio-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 1.5rem;
  margin: -1rem 0 2.5rem;
}

.archive-browser {
  display: grid;
  gap: 1.35rem;
  margin-bottom: 4rem;
  padding: clamp(2rem, 5vw, 4rem);
  border: 1px solid rgba(8, 59, 85, .18);
  background: #ece8df;
}

.archive-browser h2 {
  max-width: 18ch;
  margin: .45rem 0 1rem;
  color: #083b55;
  font-family: "Editor Note", Georgia, serif;
  font-size: clamp(2.4rem, 5vw, 4.4rem);
  font-weight: 400;
  line-height: 1;
}

.archive-browser p { max-width: 65rem; color: #52626b; line-height: 1.7; }
.archive-search { display: grid; gap: .55rem; max-width: 52rem; }
.archive-search span { color: #083b55; font-size: .78rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.archive-search input {
  width: 100%;
  min-height: 3.5rem;
  border: 1px solid rgba(8, 59, 85, .28);
  border-radius: 0;
  padding: .8rem 1rem;
  background: #f8f5ee;
  color: #083b55;
  font: inherit;
}

.archive-filter-group { display: flex; flex-wrap: wrap; gap: .55rem; }
.archive-filter-group button {
  border: 1px solid rgba(8, 59, 85, .28);
  border-radius: 99rem;
  padding: .55rem .85rem;
  background: transparent;
  color: #083b55;
  font: inherit;
  font-size: .78rem;
  font-weight: 700;
  cursor: pointer;
}
.archive-filter-group button:hover,
.archive-filter-group button:focus-visible,
.archive-filter-group button.is-active { background: #083b55; color: #fff; }
.archive-result-count { margin: 0; font-size: .9rem; }

.archive-entries { display: grid; margin: 2rem 0; border-top: 1px solid rgba(8, 59, 85, .2); }
.archive-entry {
  display: grid;
  grid-template-columns: minmax(9rem, .38fr) minmax(0, 1fr);
  gap: clamp(1rem, 4vw, 3rem);
  padding: 1.35rem 0;
  border-bottom: 1px solid rgba(8, 59, 85, .2);
}
.archive-entry[hidden] { display: none; }
.archive-entry-date { display: grid; align-content: start; gap: .25rem; color: #083b55; font-weight: 700; }
.archive-entry-date small { color: #748188; font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; }
.archive-entry-main h3 { margin: 0; color: #083b55; font-family: "Editor Note", Georgia, serif; font-size: clamp(1.45rem, 2.5vw, 2.25rem); font-weight: 400; line-height: 1.05; }
.archive-location { margin: .4rem 0 0; color: #5d6d75; font-size: .9rem; }
.archive-chips { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .85rem; }
.archive-chips span { padding: .32rem .55rem; background: rgba(8, 59, 85, .08); color: #294856; font-size: .67rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.archive-links { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: .8rem; }
.archive-links a { color: #083b55; font-size: .82rem; font-weight: 700; text-underline-offset: .2em; }
.history-galleries summary { color: #56712c; }

@media (max-width: 760px) {
  .history-proof { grid-template-columns: 1fr; }
  .history-year { grid-template-columns: 1fr; gap: 1.5rem; }
  .history-year-heading h2 { font-size: 5.5rem; }
  .history-records a, .history-films li a { grid-template-columns: 1fr; gap: .35rem; }
  .history-gap { padding: 1.4rem; }
  .archive-entry { grid-template-columns: 1fr; gap: .55rem; }
}
