/* NAHC v8.12.16: Membertou hosting legacy editorial timeline.
   Additive, section-scoped styles. Preserves existing photography, animation,
   brand colours, header height and other sections. */
.heritage .heritage-heading { gap:clamp(22px,2vw,32px); }
/* Keep the 2027 year as plain brand-orange lettering, not a navy chip. */
.heritage .heritage-years .heritage-current { background:transparent; padding:0; display:inline; }
.heritage .heritage-intro {
  font-family:var(--body);
  font-size:clamp(16px,1.12vw,18px);
  line-height:1.72;
  letter-spacing:-.005em;
  color:var(--ink-2);
  max-width:410px;
  margin:0;
}
.heritage .heritage-inner { row-gap:clamp(80px,7.5vw,126px); }
.heritage .heritage-story {
  grid-column:1 / -1;
  min-width:0;
  margin-top:0;
}
.heritage .heritage-story-head {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid rgba(18,45,56,.25);
  padding-bottom:20px;
  margin-bottom:39px;
}
.heritage .heritage-story-eyebrow {
  margin:0;
  font-family:var(--display);
  font-size:clamp(22px,2.05vw,30px);
  line-height:1.2;
  font-weight:800;
  letter-spacing:-.038em;
  color:var(--ink);
}
.heritage .heritage-story-context {
  margin:0;
  font-size:clamp(14px,1.1vw,16px);
  font-weight:600;
  color:var(--ink-2);
  white-space:nowrap;
}
.heritage .heritage-milestones {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  list-style:none;
  margin:0;
  padding:0;
}
.heritage .heritage-milestones > li {
  position:relative;
  min-width:0;
  padding:0 clamp(26px,3vw,47px) 0;
  border-left:1px solid rgba(18,45,56,.19);
}
.heritage .heritage-milestones > li:first-child {
  border-left:0;
  padding-left:0;
}
.heritage .heritage-milestones > li:last-child { padding-right:0; }
.heritage .heritage-milestone-year {
  display:block;
  margin:0 0 15px;
  font-family:var(--display);
  font-size:clamp(33px,3.65vw,51px);
  font-weight:850;
  line-height:1;
  letter-spacing:-.06em;
  color:#173c4b;
  font-variant-numeric:lining-nums tabular-nums;
}
.heritage .heritage-milestone-next .heritage-milestone-year { color:#FF6720; }
.heritage .heritage-milestones h3 {
  font-family:var(--display);
  font-size:clamp(20px,1.55vw,24px);
  font-weight:750;
  letter-spacing:-.035em;
  line-height:1.25;
  color:var(--ink);
  margin:0 0 12px;
}
.heritage .heritage-milestones p {
  font-size:clamp(15px,1vw,17px);
  line-height:1.68;
  margin:0;
  max-width:355px;
  color:var(--ink-2);
}
.heritage .heritage-sources {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  column-gap:9px;
  row-gap:4px;
  font-size:13px;
  line-height:1.55;
  margin:42px 0 0;
  color:#45616d;
}
.heritage .heritage-sources a {
  color:#254c5c;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.heritage .heritage-sources a:hover { color:#122d38; text-decoration-thickness:2px; }
.heritage .heritage-sources a:focus-visible { outline:2px solid #122d38; outline-offset:3px; }
@media (max-width:1100px) {
  .heritage .heritage-inner { row-gap:90px; }
  .heritage .heritage-milestones > li { padding-left:27px; padding-right:27px; }
  .heritage .heritage-milestones > li:first-child { padding-left:0; }
  .heritage .heritage-milestones > li:last-child { padding-right:0; }
}
@media (max-width:850px) {
  .heritage .heritage-inner { row-gap:0; }
  .heritage .heritage-heading { gap:18px; }
  .heritage .heritage-intro { max-width:670px; }
  .heritage .heritage-story { margin-top:93px; }
  .heritage .heritage-story-head { margin-bottom:33px; }
}
@media (max-width:700px) {
  .heritage .heritage-story { margin-top:77px; }
  .heritage .heritage-story-head { display:block; padding-bottom:16px; margin-bottom:25px; }
  .heritage .heritage-story-context { margin-top:7px; white-space:normal; }
  .heritage .heritage-milestones { display:block; }
  .heritage .heritage-milestones > li {
    border-left:2px solid rgba(23,60,75,.23);
    padding:0 0 27px 25px;
    margin:0 0 28px 8px;
  }
  .heritage .heritage-milestones > li:first-child {
    border-left:2px solid rgba(23,60,75,.23);
    padding-left:25px;
  }
  .heritage .heritage-milestones > li:last-child {
    margin-bottom:0;
    padding:0 0 0 25px;
  }
  .heritage .heritage-milestones > li::before {
    content:'';
    position:absolute;
    width:10px;
    height:10px;
    border-radius:50%;
    left:-6px;
    top:10px;
    background:#173c4b;
    box-shadow:0 0 0 4px #e9f1f3;
  }
  .heritage .heritage-milestones > .heritage-milestone-next::before { background:#FF6720; }
  .heritage .heritage-milestone-year { font-size:36px; margin-bottom:10px; }
  .heritage .heritage-milestones h3 { font-size:22px; margin-bottom:8px; }
  .heritage .heritage-milestones p { max-width:540px; font-size:16px; }
  .heritage .heritage-sources { margin-top:39px; display:block; line-height:1.75; }
  .heritage .heritage-sources a { display:inline; }
  .heritage .heritage-sources span[aria-hidden=true] { margin:0 6px; }
}
