/* About — editorial timeline (reference-style) */
.about-page{
  background:#f7f4ef;
  --about-blue:#19427D;
  --about-blue-light:#b5d4f2;
  --about-cream:#f7f4ef;
  --about-rule:#dddddd;
}

/* ── INTRO + TIMELINE OVERLAP ── */
.about-top{
  position:relative;
  max-width:1180px;
  margin:0 auto;
  padding:clamp(32px,4vw,52px) 5vw 0;
  --intro-height:clamp(480px,58vw,640px);
}

/* ── HERO ── */
.about-hero{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-rows:auto auto;
  width:100%;
  min-height:var(--intro-height);
  padding:0;
  overflow:visible;
  --hero-photo-w:min(100%,360px);
  --hero-photo-ratio:1.502;
  --hero-text-top:calc(var(--hero-photo-w) * var(--hero-photo-ratio) * 0.30);
  --hero-blurb-gap:max(8px,calc(clamp(20px,3vw,36px) - 1in));
}
.about-hero-title{
  grid-column:1 / 3;
  grid-row:1;
  font-family:'Alex Brush',cursive;
  font-size:clamp(64px,9vw,112px);
  font-weight:400;
  color:var(--about-blue);
  line-height:0.95;
  margin:var(--hero-text-top) 0 0;
  padding:0;
  z-index:4;
  justify-self:center;
  align-self:start;
  width:max-content;
  max-width:90%;
  text-align:center;
}
.about-hero-photo{
  grid-column:2;
  grid-row:1 / 3;
  justify-self:end;
  align-self:start;
  z-index:2;
  width:var(--hero-photo-w);
  max-width:min(100%,360px);
  margin:0;
  padding:clamp(12px,1.4vw,14px) clamp(12px,1.4vw,14px) clamp(22px,2.8vw,28px);
  box-shadow:0 10px 32px rgba(0,0,0,0.13),0 3px 10px rgba(0,0,0,0.08);
  transform:rotate(2.5deg);
  transform-origin:center top;
}
.about-hero-photo img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.about-hero-blurb{
  grid-column:1 / 3;
  grid-row:1;
  z-index:3;
  justify-self:end;
  align-self:start;
  text-align:right;
  max-width:min(100%,420px);
  font-size:clamp(15px,1.5vw,17px);
  font-weight:300;
  color:#555;
  line-height:1.75;
  margin:calc(var(--hero-text-top) + clamp(58px,7.5vw,102px)) calc(var(--hero-photo-w) + var(--hero-blurb-gap) * 6) 0 0;
  padding:0;
}

/* ── TIMELINE ── */
.timeline{
  position:relative;
  max-width:none;
  margin:calc(var(--intro-height) * -0.18) auto 0;
  padding:0 0 clamp(88px,10vw,120px);
}
.timeline > .tl-year:first-child{
  margin-top:clamp(-20px,-2.5vw,-10px);
}
.timeline > .tl-year--stack-left:first-child{
  --tl-lift:clamp(-18px,-2.2vw,-12px);
  padding-top:0;
}
.timeline > .tl-year--stack-left:first-child .tl-copy{
  margin-top:var(--tl-lift);
}
.timeline > .tl-year--stack-left:first-child .tl-marker{
  margin-top:calc(var(--wm-size) * 0.5 - 5px + var(--tl-lift));
}
.timeline::before{
  content:'';
  position:absolute;
  left:50%;
  top:0;
  bottom:0;
  width:2px;
  background:var(--about-blue);
  transform:translateX(-50%);
  z-index:1;
}

.tl-year{
  --wm-size:clamp(72px,11vw,150px);
  --tl-spine-gap:clamp(32px,4.5vw,52px);
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);
  gap:clamp(16px,2.5vw,32px);
  align-items:start;
  margin-bottom:clamp(18px,2.5vw,32px);
  min-height:0;
  overflow:visible;
}
.tl-year:nth-child(even){margin-top:clamp(-22px,-3vw,-12px);}
.tl-year--text-left,
.tl-year--text-right{margin-bottom:clamp(14px,2vw,22px);}
.tl-year:last-child{margin-bottom:0;}

.tl-marker{
  grid-column:2;
  grid-row:1;
  justify-self:center;
  align-self:start;
  width:10px;
  height:10px;
  background:var(--about-blue);
  transform:rotate(45deg);
  z-index:3;
  flex-shrink:0;
  margin-top:calc(var(--wm-size) * 0.62);
}

/* Copy column — watermark + text share one aligned column */
.tl-copy{
  --wm-size:inherit;
  position:relative;
  z-index:4;
  display:grid;
  grid-template-columns:minmax(0,max-content);
  width:max-content;
  max-width:min(360px,calc(100% - var(--tl-spine-gap)));
  overflow:visible;
  padding:0;
  box-sizing:border-box;
}
.tl-events,
.tl-kicker,
.tl-link{
  position:relative;
  z-index:1;
  text-align:inherit;
  grid-column:1;
}

.tl-year-watermark{
  grid-column:1;
  grid-row:1;
  position:relative;
  display:block;
  font-family:'Raleway',sans-serif;
  font-size:var(--wm-size);
  font-weight:300;
  letter-spacing:-2px;
  color:rgba(255,255,255,0.88);
  line-height:1;
  z-index:0;
  pointer-events:none;
  user-select:none;
  white-space:nowrap;
}

.tl-events{
  grid-row:1;
  width:100%;
  align-self:stretch;
  margin:calc(var(--wm-size) * 0.62) 0 0;
}
.tl-kicker,
.tl-link{
  width:100%;
}

/* All timeline text faces the center spine */
.tl-year--stack-left .tl-kicker,
.tl-year--stack-left .tl-link,
.tl-year--text-left .tl-kicker,
.tl-year--text-left .tl-link,
.tl-year--media-right .tl-kicker,
.tl-year--media-right .tl-link{
  text-align:right;
}
.tl-year--stack-right .tl-kicker,
.tl-year--stack-right .tl-link,
.tl-year--text-right .tl-kicker,
.tl-year--text-right .tl-link,
.tl-year--media-left .tl-kicker,
.tl-year--media-left .tl-link{
  text-align:left;
}

/* Media left: photos fan outward from spine (out of document flow) */
.tl-year--media-left .tl-media{
  position:absolute;
  top:0;
  right:calc(50% + 18px + var(--tl-spine-gap));
  z-index:2;
  width:max-content;
  max-width:calc(50% - 36px - var(--tl-spine-gap));
  margin:0;
  padding:0 clamp(16px,2vw,28px) 0 0;
}
.tl-year--media-left .tl-copy{
  grid-column:3;
  grid-row:1;
  justify-self:start;
  padding-left:var(--tl-spine-gap);
  padding-right:0;
  text-align:left;
}
.tl-year--media-left .tl-events{align-items:flex-start;}

/* Stacked left — copy above photos, both on left of spine (2001) */
.tl-year--stack-left{
  --tl-spine-gap:clamp(20px,3vw,32px);
  margin-top:0;
}
.tl-year--stack-left .tl-copy{
  grid-column:1;
  grid-row:1;
  justify-self:end;
  align-self:start;
  text-align:right;
  padding-right:var(--tl-spine-gap);
  padding-left:0;
  z-index:2;
}
.tl-year--stack-left .tl-events{
  align-items:flex-end;
  margin-top:calc(var(--wm-size) * 0.50);
}
.tl-year--stack-left .tl-media{
  position:relative;
  top:auto;
  right:auto;
  left:auto;
  grid-column:1;
  grid-row:1;
  justify-self:end;
  align-self:start;
  width:max-content;
  max-width:calc(100% - var(--tl-spine-gap));
  margin:calc(var(--wm-size) * 0.50 + clamp(40px,4.5vw,56px)) 0 0;
  padding:0;
  z-index:1;
}
.tl-year--stack-left .tl-photo-group{
  flex-direction:row-reverse;
  justify-content:flex-start;
  padding:0 clamp(8px,1vw,12px) 0 0;
  margin-top:0;
}
.tl-year--stack-left .tl-photo-group .tl-photo + .tl-photo{
  margin-left:0;
  margin-right:clamp(-56px,-14vw,-40px);
}
.tl-year--stack-left .tl-photo-group .tl-photo:nth-child(1){transform:rotate(-4deg);}
.tl-year--stack-left .tl-photo-group .tl-photo:nth-child(2){transform:rotate(3deg);}
.tl-year--stack-left .tl-photo-group .tl-photo:nth-child(3){transform:rotate(-2.5deg);}
.tl-year--stack-left .tl-photo-group--tiered{
  flex-direction:column;
  align-items:center;
  flex-wrap:nowrap;
}
.tl-year--stack-left .tl-photo-group--tiered .tl-photo-pair{
  display:flex;
  flex-direction:row-reverse;
  justify-content:flex-start;
}
.tl-year--stack-left .tl-photo-group--tiered .tl-photo-pair .tl-photo + .tl-photo{
  margin-left:0;
  margin-right:clamp(-56px,-14vw,-40px);
}
.tl-year--stack-left .tl-photo-group--tiered .tl-photo-pair .tl-photo:nth-child(1){transform:rotate(-4deg);}
.tl-year--stack-left .tl-photo-group--tiered .tl-photo-pair .tl-photo:nth-child(2){transform:rotate(3deg);}
.tl-year--stack-left .tl-photo-group--tiered .tl-photo-pair .tl-photo{
  position:relative;
  z-index:1;
}
.tl-year--stack-left .tl-photo-group--tiered .tl-photo-pair + .tl-photo-pair{
  position:relative;
  margin-top:clamp(-36px,-5.5vw,-20px);
  z-index:2;
}
.tl-year--stack-left .tl-photo-group--tiered > .tl-photo{
  position:relative;
  margin-top:clamp(-36px,-5.5vw,-20px);
  transform:rotate(-2.5deg);
  z-index:3;
}
.tl-year--stack-left .tl-marker{
  grid-row:1;
  align-self:start;
  margin-top:calc(var(--wm-size) * 0.5 - 5px);
}

/* Stacked left split — photos above and below copy (2016) */
.tl-year--stack-left.tl-year--split-photos{
  row-gap:0;
  --split-above-h:clamp(140px,17vw,200px);
  --stack-tight-gap:clamp(2px,0.4vw,6px);
  --split-copy-pull:clamp(5px,0.7vw,12px);
  --text-photo-gap:calc(clamp(88px,10vw,120px) + clamp(40px,4.5vw,56px));
}
.tl-year--stack-left.tl-year--split-photos .tl-media--above{
  grid-column:1;
  grid-row:1;
  justify-self:end;
  align-self:start;
  width:max-content;
  max-width:calc(100% - var(--tl-spine-gap));
  margin:clamp(-34px,-3.4vw,-26px) 0 0;
  padding:0;
  z-index:2;
}
.tl-year--stack-left.tl-year--split-photos .tl-media--above .tl-photo-group{
  flex-direction:row-reverse;
  justify-content:flex-start;
  padding:0 clamp(8px,1vw,12px) 0 0;
}
.tl-year--stack-left.tl-year--split-photos .tl-media--above .tl-photo-group .tl-photo + .tl-photo,
.tl-year--stack-left.tl-year--split-photos .tl-media--below .tl-photo-group .tl-photo + .tl-photo{
  margin-left:0;
  margin-right:clamp(-42px,-10.5vw,-28px);
}
.tl-year--stack-left.tl-year--split-photos .tl-copy{
  grid-column:1;
  grid-row:1;
  justify-self:end;
  text-align:right;
  padding-right:var(--tl-spine-gap);
  padding-left:0;
  margin-top:calc(var(--split-above-h) - var(--split-copy-pull) + var(--stack-tight-gap));
  z-index:2;
}
.tl-year--stack-left.tl-year--split-photos .tl-events{
  align-items:flex-end;
}
.tl-year--stack-left.tl-year--split-photos .tl-media--below{
  grid-column:1;
  grid-row:1;
  justify-self:end;
  align-self:start;
  width:max-content;
  max-width:calc(100% - var(--tl-spine-gap));
  margin:calc(var(--split-above-h) - var(--split-copy-pull) + var(--stack-tight-gap) + var(--wm-size) * 0.50 + var(--text-photo-gap)) 0 0;
  padding:0;
  z-index:1;
}
.tl-year--stack-left.tl-year--split-photos .tl-media--below .tl-photo-group{
  flex-direction:row-reverse;
  justify-content:flex-start;
  padding:0 clamp(8px,1vw,12px) 0 0;
}
.tl-year--stack-left.tl-year--split-photos .tl-media--below .tl-photo-group--tiered{
  flex-direction:column;
  align-items:center;
  flex-wrap:nowrap;
}
.tl-year--stack-left.tl-year--split-photos .tl-marker{
  grid-row:1;
  margin-top:calc(var(--split-above-h) - var(--split-copy-pull) + var(--stack-tight-gap) + var(--wm-size) * 0.5 - 5px);
}

/* Stacked right split — brand photos above copy, travel photos below (2015) */
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand{
  row-gap:0;
  --brand-above-h:clamp(140px,17vw,200px);
  --stack-tight-gap:clamp(2px,0.4vw,6px);
  --brand-copy-pull:clamp(36px,4.5vw,52px);
  --brand-events-h:clamp(128px,15vw,188px);
  --text-photo-gap:clamp(14px,1.6vw,22px);
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-media--above{
  grid-column:3;
  grid-row:1;
  justify-self:start;
  align-self:start;
  width:max-content;
  max-width:calc(100% - var(--tl-spine-gap));
  margin:0;
  padding:0;
  z-index:2;
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-media--above .tl-photo-group{
  flex-direction:row;
  justify-content:flex-start;
  padding:0 0 0 clamp(8px,1vw,12px);
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-media--above .tl-photo-group .tl-photo + .tl-photo{
  margin-left:clamp(-20px,-5vw,-8px);
  margin-right:0;
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-copy{
  grid-column:3;
  grid-row:1;
  justify-self:start;
  text-align:left;
  padding-left:var(--tl-spine-gap);
  padding-right:0;
  margin-top:calc(var(--brand-above-h) - var(--brand-copy-pull) + var(--stack-tight-gap));
  z-index:2;
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-events{
  align-items:flex-start;
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-media--below{
  grid-column:3;
  grid-row:1;
  justify-self:start;
  align-self:start;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  width:max-content;
  max-width:calc(100% - var(--tl-spine-gap));
  margin:calc(var(--brand-above-h) - var(--brand-copy-pull) + var(--stack-tight-gap) + var(--wm-size) * 0.50 + var(--brand-events-h) + var(--text-photo-gap)) 0 0;
  padding:0;
  z-index:1;
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-media--below > .tl-photo{
  position:relative;
  z-index:5;
  margin:clamp(-36px,-5vw,-24px) 0 0 clamp(24px,5vw,48px);
  transform:rotate(-2.5deg);
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-media--below .tl-photo-group{
  flex-direction:row;
  justify-content:flex-start;
  padding:0 0 0 clamp(8px,1vw,12px);
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-media--below .tl-photo--fan-front{
  position:relative;
  z-index:4;
}
.tl-year--stack-right.tl-year--split-photos.tl-year--split-brand .tl-marker{
  grid-row:1;
  margin-top:calc(var(--brand-above-h) - var(--brand-copy-pull) + var(--stack-tight-gap) + var(--wm-size) * 0.5 - 5px);
}

/* Stacked right — copy above photos, both on right of spine (2003) */
.tl-year--stack-right{
  --tl-spine-gap:clamp(20px,3vw,32px);
}
.tl-year--stack-right .tl-copy{
  grid-column:3;
  grid-row:1;
  justify-self:start;
  align-self:start;
  text-align:left;
  padding-left:var(--tl-spine-gap);
  padding-right:0;
  z-index:2;
}
.tl-year--stack-right .tl-events{
  align-items:flex-start;
  margin-top:calc(var(--wm-size) * 0.50);
}
.tl-year--stack-right .tl-media{
  position:relative;
  top:auto;
  right:auto;
  left:auto;
  grid-column:3;
  grid-row:1;
  justify-self:start;
  align-self:start;
  width:max-content;
  max-width:calc(100% - var(--tl-spine-gap));
  margin:calc(var(--wm-size) * 0.50 + clamp(40px,4.5vw,56px)) 0 0;
  padding:0;
  z-index:1;
}
.tl-year--stack-right .tl-photo-group{
  flex-direction:row;
  justify-content:flex-start;
  padding:0 0 0 clamp(8px,1vw,12px);
  margin-top:0;
}
.tl-year--stack-right .tl-photo-group .tl-photo + .tl-photo{
  margin-left:clamp(-56px,-14vw,-40px);
  margin-right:0;
}
.tl-year--stack-right .tl-photo-group .tl-photo:nth-child(1){transform:rotate(4deg);}
.tl-year--stack-right .tl-photo-group .tl-photo:nth-child(2){transform:rotate(-3deg);}
.tl-year--stack-right .tl-photo-group .tl-photo:nth-child(3){transform:rotate(2.5deg);}
.tl-year--stack-right .tl-photo-group--tiered-top{
  flex-direction:column;
  align-items:center;
  flex-wrap:nowrap;
}
.tl-year--stack-right .tl-photo-group--tiered-top > .tl-photo{
  position:relative;
  z-index:3;
  width:clamp(200px,26vw,300px);
  margin-bottom:clamp(-44px,-6vw,-28px);
  transform:rotate(2.5deg);
}
.tl-year--stack-right .tl-photo-group--tiered-top .tl-photo-pair{
  display:flex;
  flex-direction:row;
  justify-content:flex-start;
  position:relative;
  z-index:1;
}
.tl-year--stack-right .tl-photo-group--tiered-top .tl-photo-pair .tl-photo + .tl-photo{
  margin-left:clamp(-56px,-14vw,-40px);
  margin-right:0;
}
.tl-year--stack-right .tl-photo-group--tiered-top .tl-photo-pair .tl-photo:nth-child(1){transform:rotate(4deg);}
.tl-year--stack-right .tl-photo-group--tiered-top .tl-photo-pair .tl-photo:nth-child(2){transform:rotate(-3deg);}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand){
  row-gap:0;
  --grad-photo-w:clamp(144px,17.6vw,208px);
  --grad-photo-h:calc(var(--grad-photo-w) + 31px);
  --stack-tight-gap:clamp(2px,0.4vw,6px);
  --grad-copy-pull:clamp(40px,5vw,56px);
  --text-photo-gap:calc(clamp(56px,6.5vw,76px) + clamp(4px,0.5vw,8px));
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-media--above{
  grid-column:3;
  grid-row:1;
  justify-self:center;
  align-self:start;
  width:max-content;
  max-width:calc(100% - var(--tl-spine-gap));
  margin:0;
  padding:0;
  z-index:2;
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-media--above .tl-photo{
  width:var(--grad-photo-w);
  padding:11px 11px 20px;
  background:#fff;
  box-shadow:0 10px 32px rgba(0,0,0,0.13),0 3px 10px rgba(0,0,0,0.08);
  overflow:visible;
  line-height:0;
  transform:rotate(2.5deg);
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-media--above .tl-photo-crop{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  overflow:hidden;
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-media--above .tl-photo-crop img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:42% 72%;
  transform:scale(1.45);
  transform-origin:42% 72%;
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-copy{
  grid-column:3;
  grid-row:1;
  justify-self:start;
  text-align:left;
  padding-left:var(--tl-spine-gap);
  padding-right:0;
  margin-top:calc(var(--grad-photo-h) - var(--grad-copy-pull) + var(--stack-tight-gap));
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-events{
  align-items:flex-start;
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-media--below{
  grid-column:3;
  grid-row:1;
  justify-self:center;
  align-self:start;
  width:max-content;
  max-width:calc(100% - var(--tl-spine-gap));
  margin:calc(var(--grad-photo-h) - var(--grad-copy-pull) + var(--stack-tight-gap) + var(--wm-size) * 0.50 + var(--text-photo-gap) + clamp(6px,0.6vw,10px)) 0 0;
  padding:0;
  z-index:1;
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-media--below .tl-photo-group{
  padding:0;
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-media--below .tl-photo--fan-front{
  position:relative;
  z-index:3;
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-events li{
  padding:6px 0;
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-events li:last-child{
  padding-bottom:0;
}
.tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-marker{
  grid-row:1;
  margin-top:calc(var(--grad-photo-h) - var(--grad-copy-pull) + var(--stack-tight-gap) + var(--wm-size) * 0.5 - 5px);
}

.tl-year--stack-right .tl-marker{
  grid-row:1;
  align-self:start;
  margin-top:calc(var(--wm-size) * 0.5 - 5px);
}

/* Media right: photos fan outward from spine */
.tl-year--media-right .tl-media{
  position:absolute;
  top:0;
  left:calc(50% + 18px + var(--tl-spine-gap));
  z-index:2;
  width:max-content;
  max-width:calc(50% - 36px - var(--tl-spine-gap));
  margin:0;
  padding:0 0 0 clamp(16px,2vw,28px);
}
.tl-year--media-right .tl-copy{
  grid-column:1;
  grid-row:1;
  justify-self:end;
  text-align:right;
  padding-top:0;
  padding-right:var(--tl-spine-gap);
  padding-left:0;
}
.tl-year--media-right .tl-events{align-items:flex-end;}

/* Text-only years — copy on one side of spine */
.tl-year--text-left .tl-copy{
  grid-column:1;
  grid-row:1;
  justify-self:end;
  text-align:right;
  padding-right:var(--tl-spine-gap);
  padding-left:0;
}
.tl-year--text-right .tl-copy{
  grid-column:3;
  grid-row:1;
  justify-self:start;
  text-align:left;
  padding-left:var(--tl-spine-gap);
  padding-right:0;
}
.tl-year--text-left .tl-events{align-items:flex-end;}
.tl-year--text-right .tl-events{align-items:flex-start;}

/* 2003 — vertically center on 2001 photo cluster */
.tl-year--stack-left + .tl-year--text-right{
  --tl-photo-half:clamp(75px,10vw,110px);
  --tl-copy-half:calc(var(--wm-size) * 0.42 + clamp(22px,2.8vw,38px));
  margin-top:calc(clamp(-22px,-3vw,-12px) - var(--tl-photo-half) - var(--tl-copy-half));
}

/* 2006 — photos in flow just below text */
.tl-year--text-right + .tl-year--stack-left{
  margin-top:clamp(36px,4.5vw,64px);
  grid-template-rows:auto auto;
  row-gap:clamp(4px,0.5vw,8px);
}
.tl-year--text-right + .tl-year--stack-left .tl-copy{
  grid-row:1;
}
.tl-year--text-right + .tl-year--stack-left .tl-marker{
  grid-row:1;
}
.tl-year--text-right + .tl-year--stack-left .tl-media{
  grid-row:2;
  margin-top:0;
}

/* 2007 — pull up toward 2003 (close half the right-column gap) */
.tl-year--stack-left:not(.tl-year--split-photos) + .tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand){
  --tl-photo-half:clamp(140px,18vw,210px);
  --tl-copy-half:calc(var(--wm-size) * 0.42 + clamp(28px,3.5vw,42px));
  --tl-2007-up:clamp(56px,7vw,112px);
  margin-top:calc(clamp(-22px,-3vw,-12px) - var(--tl-photo-half) - var(--tl-copy-half) - clamp(48px,6vw,72px) - clamp(32px,4vw,48px) - var(--tl-2007-up));
}

/* 2008 — sit just below 2006 photo cluster on the left */
.tl-year--stack-left + .tl-year--stack-right.tl-year--split-photos + .tl-year--stack-left{
  --tl-2007-height:clamp(400px,50vw,580px);
  --tl-2007-pull:calc(clamp(-22px,-3vw,-12px) - clamp(140px,18vw,210px) - calc(var(--wm-size) * 0.42 + clamp(28px,3.5vw,42px)) - clamp(48px,6vw,72px) - clamp(32px,4vw,48px) - clamp(56px,7vw,112px));
  --tl-2008-up:clamp(56px,7vw,112px);
  margin-top:calc(clamp(8px,1vw,16px) - var(--tl-2007-pull) - var(--tl-2007-height) - var(--tl-2008-up));
}
.tl-year--stack-left + .tl-year--stack-right.tl-year--split-photos + .tl-year--stack-left .tl-media{
  justify-self:end;
  margin:calc(var(--wm-size) * 0.50 + clamp(52px,6vw,72px)) 0 0;
  padding:0 var(--tl-spine-gap) 0 0;
}

/* 2009 — pull up toward 2008; copy sits just above portrait */
.tl-year--stack-left + .tl-year--stack-right:not(.tl-year--split-photos){
  --tl-2008-photo-w:clamp(200px,26vw,320px);
  --tl-2008-photo-offset:calc(var(--wm-size) * 0.50 + clamp(40px,4.5vw,56px));
  --tl-2008-photo-h:calc(20px + var(--tl-2008-photo-w) * 0.667);
  --tl-2008-block-h:calc(var(--tl-2008-photo-offset) + var(--tl-2008-photo-h));
  --tl-2009-up:clamp(56px,7vw,112px);
  --tl-2009-events-h:clamp(84px,10vw,120px);
  --tl-2009-text-gap:clamp(12px,1.4vw,18px);
  --tl-2009-margin:calc(var(--tl-2008-photo-offset) + var(--tl-2008-photo-h) * 0.5 - var(--tl-2008-block-h) - clamp(18px,2.5vw,32px) - var(--tl-2009-up));
  margin-top:var(--tl-2009-margin);
}
.tl-year--stack-left + .tl-year--stack-right:not(.tl-year--split-photos) .tl-media{
  justify-self:start;
  padding:0;
  margin-top:calc(var(--wm-size) * 0.50 + var(--tl-2009-events-h) + var(--tl-2009-text-gap) + clamp(12px,1.2vw,16px));
  margin-left:clamp(28px,4vw,48px);
}

/* 2014 — start just below the 2008 block */
.tl-year--stack-right:not(.tl-year--split-photos) + .tl-year--stack-left{
  --tl-2008-photo-w:clamp(200px,26vw,320px);
  --tl-2008-photo-offset:calc(var(--wm-size) * 0.50 + clamp(40px,4.5vw,56px));
  --tl-2008-photo-h:calc(20px + var(--tl-2008-photo-w) * 0.667);
  --tl-2008-block-h:calc(var(--tl-2008-photo-offset) + var(--tl-2008-photo-h));
  --tl-2009-photo-w:clamp(160px,20vw,240px);
  --tl-2009-photo-h:calc(20px + var(--tl-2009-photo-w) * 1.333);
  --tl-2009-up:clamp(56px,7vw,112px);
  --tl-2009-events-h:clamp(84px,10vw,120px);
  --tl-2009-text-gap:clamp(12px,1.4vw,18px);
  --tl-2009-block-h:calc(var(--wm-size) * 0.50 + var(--tl-2009-events-h) + var(--tl-2009-text-gap) + var(--tl-2009-photo-h));
  --tl-2009-margin:calc(var(--tl-2008-photo-offset) + var(--tl-2008-photo-h) * 0.5 - var(--tl-2008-block-h) - clamp(18px,2.5vw,32px) - var(--tl-2009-up));
  --tl-2014-up:clamp(20px,2.5vw,32px);
  margin-top:calc(clamp(8px,1vw,14px) - var(--tl-2009-margin) - var(--tl-2009-block-h) - var(--tl-2014-up));
}
.tl-year--stack-right:not(.tl-year--split-photos) + .tl-year--stack-left .tl-copy{
  justify-self:end;
  text-align:right;
  padding-right:var(--tl-spine-gap);
  padding-left:0;
}
.tl-year--stack-right:not(.tl-year--split-photos) + .tl-year--stack-left .tl-events{
  align-items:flex-end;
}
.tl-year--stack-right:not(.tl-year--split-photos) + .tl-year--stack-left .tl-media{
  justify-self:end;
  margin-top:calc(var(--wm-size) + clamp(8px,1vw,14px));
  padding:0;
  margin-right:clamp(20px,3vw,40px);
}

/* 2015 — sit just below the 2009 portrait photo on the right */
.tl-year--stack-right:not(.tl-year--split-photos) + .tl-year--stack-left + .tl-year--stack-right.tl-year--split-brand{
  --tl-2008-photo-w:clamp(200px,26vw,320px);
  --tl-2008-photo-offset:calc(var(--wm-size) * 0.50 + clamp(40px,4.5vw,56px));
  --tl-2008-photo-h:calc(20px + var(--tl-2008-photo-w) * 0.667);
  --tl-2008-block-h:calc(var(--tl-2008-photo-offset) + var(--tl-2008-photo-h));
  --tl-2009-photo-w:clamp(160px,20vw,240px);
  --tl-2009-photo-h:calc(20px + var(--tl-2009-photo-w) * 1.333);
  --tl-2009-up:clamp(56px,7vw,112px);
  --tl-2009-events-h:clamp(84px,10vw,120px);
  --tl-2009-text-gap:clamp(12px,1.4vw,18px);
  --tl-2009-block-h:calc(var(--wm-size) * 0.50 + var(--tl-2009-events-h) + var(--tl-2009-text-gap) + var(--tl-2009-photo-h));
  --tl-2009-margin:calc(var(--tl-2008-photo-offset) + var(--tl-2008-photo-h) * 0.5 - var(--tl-2008-block-h) - clamp(18px,2.5vw,32px) - var(--tl-2009-up));
  --tl-2014-photo-w:clamp(160px,20vw,240px);
  --tl-2014-photo-h:calc(20px + var(--tl-2014-photo-w) * 1.333);
  --tl-2014-block-h:calc(var(--wm-size) + clamp(8px,1vw,14px) + var(--tl-2014-photo-h));
  --tl-2014-up:clamp(20px,2.5vw,32px);
  --tl-2014-margin:calc(clamp(8px,1vw,14px) - var(--tl-2009-margin) - var(--tl-2009-block-h) - var(--tl-2014-up));
  margin-top:calc(clamp(8px,1vw,14px) - var(--tl-2014-margin) - var(--tl-2014-block-h));
}

/* 2016 — document flow: truck → text → tiered photos; sit just below 2014 photo */
.tl-year--stack-left + .tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left.tl-year--split-photos{
  --tl-2008-photo-w:clamp(200px,26vw,320px);
  --tl-2008-photo-offset:calc(var(--wm-size) * 0.50 + clamp(40px,4.5vw,56px));
  --tl-2008-photo-h:calc(20px + var(--tl-2008-photo-w) * 0.667);
  --tl-2008-block-h:calc(var(--tl-2008-photo-offset) + var(--tl-2008-photo-h));
  --tl-2009-photo-w:clamp(160px,20vw,240px);
  --tl-2009-photo-h:calc(20px + var(--tl-2009-photo-w) * 1.333);
  --tl-2009-up:clamp(56px,7vw,112px);
  --tl-2009-events-h:clamp(84px,10vw,120px);
  --tl-2009-text-gap:clamp(12px,1.4vw,18px);
  --tl-2009-block-h:calc(var(--wm-size) * 0.50 + var(--tl-2009-events-h) + var(--tl-2009-text-gap) + var(--tl-2009-photo-h));
  --tl-2009-margin:calc(var(--tl-2008-photo-offset) + var(--tl-2008-photo-h) * 0.5 - var(--tl-2008-block-h) - clamp(18px,2.5vw,32px) - var(--tl-2009-up));
  --tl-2014-photo-w:clamp(160px,20vw,240px);
  --tl-2014-photo-h:calc(20px + var(--tl-2014-photo-w) * 1.333);
  --tl-2014-block-h:calc(var(--wm-size) + clamp(8px,1vw,14px) + var(--tl-2014-photo-h));
  --tl-2014-up:clamp(20px,2.5vw,32px);
  --tl-2014-margin:calc(clamp(8px,1vw,14px) - var(--tl-2009-margin) - var(--tl-2009-block-h) - var(--tl-2014-up));
  --tl-2015-margin:calc(clamp(8px,1vw,14px) - var(--tl-2014-margin) - var(--tl-2014-block-h));
  --brand-above-h:clamp(140px,17vw,200px);
  --stack-tight-gap:clamp(2px,0.4vw,6px);
  --brand-copy-pull:clamp(36px,4.5vw,52px);
  --brand-events-h:clamp(128px,15vw,188px);
  --text-photo-gap:clamp(14px,1.6vw,22px);
  --tl-2015-below-offset:calc(var(--brand-above-h) - var(--brand-copy-pull) + var(--stack-tight-gap) + var(--wm-size) * 0.50 + var(--brand-events-h) + var(--text-photo-gap));
  --tl-2015-photo-stack-h:clamp(220px,28vw,340px);
  --tl-2015-block-h:calc(var(--tl-2015-below-offset) + var(--tl-2015-photo-stack-h));
  --tl-2016-gap:clamp(8px,1vw,14px);
  --tl-2016-up:clamp(40px,5vw,72px);
  --tl-2016-truck-offset:clamp(56px,7vw,112px);
  --tl-2016-row-gap:clamp(0px,0vw,2px);
  margin-top:calc(var(--tl-2016-gap) - var(--tl-2015-margin) - var(--tl-2015-block-h) - var(--tl-2016-up));
  margin-bottom:clamp(28px,3.5vw,48px);
  grid-template-rows:auto auto auto;
  row-gap:var(--tl-2016-row-gap);
}
.tl-year--stack-left + .tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left.tl-year--split-photos .tl-media--above{
  grid-column:1;
  grid-row:1;
  justify-self:end;
  align-self:start;
  margin:var(--tl-2016-truck-offset) clamp(20px,3vw,40px) 0 0;
  padding:0 clamp(8px,1vw,12px) 0 0;
  z-index:2;
}
.tl-year--stack-left + .tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left.tl-year--split-photos .tl-copy{
  grid-column:1;
  grid-row:2;
  justify-self:end;
  margin-top:clamp(-6px,-0.6vw,-2px);
  z-index:2;
}
.tl-year--stack-left + .tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left.tl-year--split-photos .tl-marker{
  grid-row:2;
  margin-top:calc(var(--wm-size) * 0.5 - 5px);
}
.tl-year--stack-left + .tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left.tl-year--split-photos .tl-media--below{
  grid-column:1;
  grid-row:3;
  justify-self:end;
  align-self:start;
  margin:0 clamp(20px,3vw,40px) 0 0;
  z-index:1;
}
.tl-year--stack-left + .tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left.tl-year--split-photos .tl-media--below .tl-photo-group--tiered .tl-photo-pair{
  position:relative;
  z-index:2;
}
.tl-year--stack-left + .tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left.tl-year--split-photos .tl-media--below .tl-photo-group--tiered > .tl-photo{
  margin-top:clamp(-40px,-5.5vw,-24px);
  transform:rotate(-2.5deg);
  z-index:0;
}

/* 2017 — nudge photos toward center spine (halfway) */
.tl-year--stack-left.tl-year--split-photos + .tl-year--stack-right .tl-media{
  margin-left:clamp(-9px,-1.1vw,-5px);
}
.tl-year--stack-left.tl-year--split-photos + .tl-year--stack-right .tl-photo-group{
  padding-left:clamp(4px,0.5vw,6px);
}

/* 2018 — pull up below 2017 */
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left{
  --tl-2018-gap:clamp(8px,1vw,14px);
  --tl-2018-up:clamp(112px,14vw,180px);
  margin-top:calc(var(--tl-2018-gap) - var(--tl-2018-up));
}

/* 2020 — halfway between prior pull and below 2017 image */
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right{
  --tl-2018-gap:clamp(8px,1vw,14px);
  --tl-2018-up:clamp(112px,14vw,180px);
  --tl-2018-margin:calc(var(--tl-2018-gap) - var(--tl-2018-up));
  --tl-2018-photo-w:clamp(200px,26vw,320px);
  --tl-2018-photo-h:calc(31px + var(--tl-2018-photo-w) * 1.333);
  --tl-2018-block-h:calc(var(--wm-size) * 0.50 + clamp(40px,4.5vw,56px) + var(--tl-2018-photo-h));
  --tl-2020-gap:clamp(8px,1vw,14px);
  --tl-2020-up:clamp(72px,9vw,120px);
  --tl-2020-margin-old:calc(var(--tl-2020-gap) - var(--tl-2020-up));
  --tl-2020-margin-new:calc(var(--tl-2020-gap) - var(--tl-2018-margin) - var(--tl-2018-block-h));
  --tl-2020-up-nudge:clamp(16px,2vw,28px);
  margin-top:calc((var(--tl-2020-margin-old) + var(--tl-2020-margin-new)) / 2 - var(--tl-2020-up-nudge));
}
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right .tl-media{
  margin-left:clamp(-9px,-1.1vw,-5px);
}
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right .tl-photo-group{
  padding-left:clamp(4px,0.5vw,6px);
}

/* 2022 — pull up below 2020; photo below text */
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left{
  --tl-2022-gap:clamp(8px,1vw,14px);
  --tl-2022-up:clamp(88px,10vw,140px);
  margin-top:calc(var(--tl-2022-gap) - var(--tl-2022-up));
  grid-template-rows:auto auto;
  row-gap:clamp(4px,0.5vw,8px);
}
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left .tl-copy,
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left .tl-marker{
  grid-row:1;
}
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left .tl-media{
  grid-row:2;
  margin-top:0;
}

/* 2023 — start midway down the 2022 photo */
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--text-right{
  --tl-2022-row-gap:clamp(4px,0.5vw,8px);
  --tl-2022-events-h:clamp(40px,4.5vw,56px);
  --tl-2022-photo-w:clamp(160px,20vw,240px);
  --tl-2022-photo-h:calc(31px + var(--tl-2022-photo-w) * 1.25);
  --tl-2022-copy-h:calc(var(--wm-size) * 0.50 + var(--tl-2022-events-h));
  --tl-2022-block-h:calc(var(--tl-2022-copy-h) + var(--tl-2022-row-gap) + var(--tl-2022-photo-h));
  --tl-2023-gap:clamp(8px,1vw,14px);
  --tl-2023-up:clamp(16px,2vw,28px);
  --tl-2023-margin:calc(var(--tl-2023-gap) + var(--tl-2022-copy-h) + var(--tl-2022-row-gap) + var(--tl-2022-photo-h) * 0.25 - var(--tl-2022-block-h) - clamp(18px,2.5vw,32px) - var(--tl-2023-up));
  margin-top:var(--tl-2023-margin);
}
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--text-right .tl-copy{
  padding-left:clamp(18px,2.5vw,32px);
}

/* 2025 — start below the 2022 photo */
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--text-right + .tl-year--text-left{
  --tl-2022-row-gap:clamp(4px,0.5vw,8px);
  --tl-2022-events-h:clamp(40px,4.5vw,56px);
  --tl-2022-photo-w:clamp(160px,20vw,240px);
  --tl-2022-photo-h:calc(31px + var(--tl-2022-photo-w) * 1.25);
  --tl-2022-copy-h:calc(var(--wm-size) * 0.50 + var(--tl-2022-events-h));
  --tl-2022-block-h:calc(var(--tl-2022-copy-h) + var(--tl-2022-row-gap) + var(--tl-2022-photo-h));
  --tl-2023-gap:clamp(8px,1vw,14px);
  --tl-2023-up:clamp(16px,2vw,28px);
  --tl-2023-margin:calc(var(--tl-2023-gap) + var(--tl-2022-copy-h) + var(--tl-2022-row-gap) + var(--tl-2022-photo-h) * 0.25 - var(--tl-2022-block-h) - clamp(18px,2.5vw,32px) - var(--tl-2023-up));
  --tl-2023-events-h:clamp(40px,4.5vw,56px);
  --tl-2023-block-h:calc(var(--wm-size) * 0.50 + var(--tl-2023-events-h));
  --tl-2025-gap:clamp(8px,1vw,14px);
  --tl-2025-year-margin:clamp(18px,2.5vw,32px);
  --tl-2025-margin:calc(var(--tl-2025-gap) - var(--tl-2023-margin) - var(--tl-2023-block-h) - var(--tl-2025-year-margin));
  margin-top:var(--tl-2025-margin);
}

/* 2026 — start just below 2023; photo above text */
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--text-right + .tl-year--text-left + .tl-year--stack-right.tl-year--photo-above{
  --tl-2022-row-gap:clamp(4px,0.5vw,8px);
  --tl-2022-events-h:clamp(40px,4.5vw,56px);
  --tl-2022-photo-w:clamp(160px,20vw,240px);
  --tl-2022-photo-h:calc(31px + var(--tl-2022-photo-w) * 1.25);
  --tl-2022-copy-h:calc(var(--wm-size) * 0.50 + var(--tl-2022-events-h));
  --tl-2022-block-h:calc(var(--tl-2022-copy-h) + var(--tl-2022-row-gap) + var(--tl-2022-photo-h));
  --tl-2023-gap:clamp(8px,1vw,14px);
  --tl-2023-up:clamp(16px,2vw,28px);
  --tl-2023-margin:calc(var(--tl-2023-gap) + var(--tl-2022-copy-h) + var(--tl-2022-row-gap) + var(--tl-2022-photo-h) * 0.25 - var(--tl-2022-block-h) - clamp(18px,2.5vw,32px) - var(--tl-2023-up));
  --tl-2023-events-h:clamp(40px,4.5vw,56px);
  --tl-2023-block-h:calc(var(--wm-size) * 0.50 + var(--tl-2023-events-h));
  --tl-2025-gap:clamp(8px,1vw,14px);
  --tl-2025-year-margin:clamp(18px,2.5vw,32px);
  --tl-2025-events-h:clamp(40px,4.5vw,56px);
  --tl-2025-block-h:calc(var(--wm-size) * 0.50 + var(--tl-2025-events-h));
  --tl-2025-margin:calc(var(--tl-2025-gap) - var(--tl-2023-margin) - var(--tl-2023-block-h) - var(--tl-2025-year-margin));
  --tl-2026-gap:clamp(4px,0.5vw,8px);
  --tl-2026-year-margin:clamp(14px,2vw,22px);
  margin-top:calc(var(--tl-2026-gap) - var(--tl-2025-margin) - var(--tl-2025-block-h) - var(--tl-2026-year-margin));
  grid-template-rows:auto auto;
  row-gap:0;
}
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--text-right + .tl-year--text-left + .tl-year--stack-right.tl-year--photo-above .tl-media{
  grid-row:1;
  margin-top:clamp(16px,2vw,24px);
  margin-bottom:clamp(4px,0.5vw,8px);
  margin-left:clamp(4px,0.9vw,14px);
}
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--text-right + .tl-year--text-left + .tl-year--stack-right.tl-year--photo-above .tl-copy,
.tl-year--stack-right.tl-year--split-brand + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--stack-right + .tl-year--stack-left + .tl-year--text-right + .tl-year--text-left + .tl-year--stack-right.tl-year--photo-above .tl-marker{
  grid-row:2;
  margin-top:clamp(-4px,-0.5vw,0px);
}

.tl-events{
  list-style:none;
  padding:0;
  display:flex;
  flex-direction:column;
}
.tl-events li{
  font-size:11px;
  font-weight:500;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#2a2a2a;
  line-height:1.45;
  padding:8px 0;
  border-bottom:1px solid var(--about-rule);
  width:100%;
  overflow-wrap:break-word;
  text-align:inherit;
}
.tl-events li:last-child{border-bottom:none;}
.tl-events a{
  color:var(--about-blue);
  text-decoration:underline;
  text-underline-offset:2px;
}
.tl-events a:hover{opacity:0.7;}

.tl-kicker{
  font-family:'Alex Brush',cursive;
  font-size:clamp(20px,2.6vw,28px);
  font-weight:400;
  color:var(--about-blue);
  margin:8px 0 0;
  line-height:1.25;
  letter-spacing:0.5px;
  text-align:inherit;
}

.tl-link{
  display:inline-block;
  margin-top:10px;
  font-size:11px;
}

/* ── PHOTOS ── */
.tl-media{
  position:relative;
  z-index:2;
  max-width:min(100%,420px);
  overflow:visible;
}
.tl-year--media-left .tl-photo-group{
  flex-direction:row-reverse;
  justify-content:flex-start;
  margin-left:0;
  padding-right:clamp(16px,2vw,28px);
}
.tl-year--media-right .tl-photo-group{
  flex-direction:row;
  justify-content:flex-start;
  margin-right:0;
  padding-left:clamp(16px,2vw,28px);
}

.tl-photo{
  flex:0 0 auto;
  background:#fff;
  padding:10px;
  box-shadow:0 4px 18px rgba(0,0,0,0.1);
  line-height:0;
  position:relative;
}
.tl-photo img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.tl-photo-crop--portrait-80{
  display:block;
  width:100%;
  aspect-ratio:3/4;
  overflow:hidden;
}
.tl-photo-crop--portrait-80 img{
  display:block;
  width:100%;
  height:125%;
  object-fit:cover;
  object-position:top center;
}

.tl-photo-group{
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:0;
  max-width:none;
  width:max-content;
  padding:10px 6px;
  overflow:visible;
}
.tl-photo-group .tl-photo--portrait{width:clamp(130px,16vw,200px);}
.tl-photo-group .tl-photo--landscape{width:clamp(165px,20vw,250px);}
.tl-photo-group .tl-photo--square{width:clamp(110px,13vw,165px);}
.tl-photo-group:has(.tl-photo:nth-child(4)) .tl-photo--portrait{width:clamp(110px,13vw,175px);}
.tl-photo-group:has(.tl-photo:nth-child(4)) .tl-photo--landscape{width:clamp(140px,16vw,210px);}
.tl-photo-group:has(.tl-photo:nth-child(4)) .tl-photo--square{width:clamp(95px,11vw,145px);}
.tl-photo-group:has(.tl-photo:nth-child(4)) .tl-photo + .tl-photo{
  margin-left:clamp(-44px,-11vw,-32px);
}
.tl-year--media-left .tl-photo-group:has(.tl-photo:nth-child(4)) .tl-photo + .tl-photo{
  margin-left:0;
  margin-right:clamp(-44px,-11vw,-32px);
}
.tl-photo--portrait{width:clamp(160px,20vw,240px);}
.about-hero-photo.tl-photo--portrait{
  width:var(--hero-photo-w);
  max-width:min(100%,360px);
}
.tl-photo--landscape{width:clamp(200px,26vw,320px);}
.tl-photo--square{width:clamp(140px,18vw,200px);}

.tl-photo--logo{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
}
.tl-photo--logo img{
  width:auto;
  max-width:100%;
  max-height:140px;
}

.tl-photo--route-map{
  background:#fff;
}
.tl-photo--route-map img{
  display:block;
  width:100%;
  background:#fff;
  object-fit:contain;
}

.tl-photo--placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  aspect-ratio:3/2;
  min-width:clamp(140px,16vw,210px);
  background:#ebe6df;
  border:1px dashed #c9c0b5;
  box-shadow:0 4px 18px rgba(0,0,0,0.06);
}
.tl-photo-placeholder{
  font-size:10px;
  font-weight:500;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:#9a9085;
  text-align:center;
  padding:0 12px;
  line-height:1.4;
}

/* Grouped photos — scrapbook fan overlap */
.tl-photo-group .tl-photo{
  padding:11px 11px 20px;
  box-shadow:0 10px 32px rgba(0,0,0,0.13),0 3px 10px rgba(0,0,0,0.08);
  transform-origin:center center;
}
.tl-photo-group .tl-photo + .tl-photo{
  margin-left:clamp(-56px,-14vw,-40px);
  margin-top:0;
}
.tl-photo-group .tl-photo:nth-child(1){
  z-index:1;
  transform:rotate(-4deg);
}
.tl-photo-group .tl-photo:nth-child(2){
  z-index:2;
  transform:rotate(3.5deg);
}
.tl-photo-group .tl-photo:nth-child(3){
  z-index:3;
  transform:rotate(-3deg);
}
.tl-photo-group .tl-photo:nth-child(4){
  z-index:4;
  transform:rotate(4deg);
}
.tl-photo-group .tl-photo:nth-child(5){
  z-index:5;
  transform:rotate(-2.5deg);
}
.tl-photo-group .tl-photo:nth-child(6){
  z-index:6;
  transform:rotate(3deg);
}

.tl-year--media-left .tl-photo-group .tl-photo + .tl-photo{
  margin-left:0;
  margin-right:clamp(-56px,-14vw,-40px);
}
.tl-year--media-left .tl-photo-group .tl-photo:nth-child(1){transform:rotate(-4deg);}
.tl-year--media-left .tl-photo-group .tl-photo:nth-child(2){transform:rotate(3deg);}
.tl-year--media-left .tl-photo-group .tl-photo:nth-child(3){transform:rotate(-2.5deg);}
.tl-year--media-left .tl-photo-group .tl-photo:nth-child(4){transform:rotate(3.5deg);}
.tl-year--media-left .tl-photo-group .tl-photo:nth-child(5){transform:rotate(-2deg);}
.tl-year--media-left .tl-photo-group .tl-photo:nth-child(6){transform:rotate(2.5deg);}

.tl-year--media-right .tl-photo-group{
  flex-direction:row;
  flex-wrap:nowrap;
}
.tl-year--media-right .tl-photo-group .tl-photo + .tl-photo{
  margin-left:clamp(-56px,-14vw,-40px);
  margin-right:0;
}
.tl-year--media-right .tl-photo-group .tl-photo:nth-child(1){transform:rotate(4deg);}
.tl-year--media-right .tl-photo-group .tl-photo:nth-child(2){transform:rotate(-3deg);}
.tl-year--media-right .tl-photo-group .tl-photo:nth-child(3){transform:rotate(2.5deg);}
.tl-year--media-right .tl-photo-group .tl-photo:nth-child(4){transform:rotate(-3.5deg);}
.tl-year--media-right .tl-photo-group .tl-photo:nth-child(5){transform:rotate(2deg);}
.tl-year--media-right .tl-photo-group .tl-photo:nth-child(6){transform:rotate(-2.5deg);}
.tl-year--media-right .tl-photo-group:has(.tl-photo:nth-child(4)) .tl-photo + .tl-photo{
  margin-left:clamp(-44px,-11vw,-32px);
}

/* ── MOBILE: vertical timeline, no overlaps ── */
@media(max-width:900px){
  .about-top{
    --intro-height:auto;
    padding:clamp(28px,5vw,44px) 5vw 0;
  }

  .about-hero{
    display:flex;
    flex-direction:column;
    align-items:center;
    min-height:0;
    margin-bottom:clamp(32px,6vw,48px);
  }
  .about-hero-title{
    margin:0;
    width:100%;
    max-width:100%;
    font-size:clamp(52px,13vw,72px);
    text-align:center;
    justify-self:center;
  }
  .about-hero-photo,
  .about-hero-photo.tl-photo--portrait{
    position:relative;
    grid-column:auto;
    grid-row:auto;
    margin:clamp(16px,4vw,24px) auto 0;
    max-width:min(100%,280px);
    transform:rotate(2.5deg);
  }
  .about-hero-blurb{
    grid-column:auto;
    grid-row:auto;
    justify-self:center;
    text-align:center;
    max-width:min(100%,480px);
    margin:clamp(16px,4vw,24px) auto 0;
    padding:0;
  }

  .timeline{
    margin-top:0;
    padding:0 0 clamp(64px,10vw,88px);
  }
  .timeline::before{
    left:18px;
    transform:none;
  }
  .timeline > .tl-year:first-child,
  .timeline > .tl-year--stack-left:first-child{
    margin-top:0;
    padding-top:0;
  }
  .timeline > .tl-year--stack-left:first-child .tl-copy,
  .timeline > .tl-year--stack-left:first-child .tl-marker{
    margin-top:0;
  }

  .about-page .timeline > .tl-year{
    --wm-size:clamp(64px,17vw,96px);
    display:flex;
    flex-direction:column;
    align-items:stretch;
    position:relative;
    padding:0 0 0 44px;
    margin:0 0 clamp(28px,6vw,40px) !important;
    min-height:0;
    overflow:visible;
    grid-template-columns:none;
    grid-template-rows:none;
    row-gap:0;
  }
  .about-page .timeline > .tl-year:nth-child(even){
    margin-top:0 !important;
  }

  .about-page .timeline .tl-marker{
    position:absolute;
    left:13px;
    top:calc(var(--wm-size) * 0.5 - 5px);
    grid-column:auto;
    grid-row:auto;
    margin:0 !important;
    align-self:auto;
  }

  .about-page .timeline .tl-copy{
    position:relative;
    grid-column:auto !important;
    grid-row:auto !important;
    justify-self:stretch !important;
    align-self:auto !important;
    width:100%;
    max-width:100%;
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
    z-index:2;
  }
  .about-page .timeline .tl-events{
    align-items:stretch !important;
    margin-top:calc(var(--wm-size) * 0.55) !important;
  }
  .about-page .timeline .tl-events li{
    text-align:left !important;
  }
  .about-page .timeline .tl-kicker,
  .about-page .timeline .tl-link{
    text-align:left !important;
  }

  .about-page .timeline .tl-media,
  .about-page .timeline .tl-media--above,
  .about-page .timeline .tl-media--below{
    position:relative !important;
    top:auto !important;
    right:auto !important;
    left:auto !important;
    grid-column:auto !important;
    grid-row:auto !important;
    justify-self:stretch !important;
    align-self:auto !important;
    width:100%;
    max-width:100%;
    margin:clamp(14px,3.5vw,20px) 0 0 !important;
    padding:0 !important;
    z-index:1;
  }
  .about-page .timeline .tl-media--above{
    margin-top:0 !important;
  }
  .about-page .timeline .tl-media--below{
    margin-top:clamp(14px,3.5vw,20px) !important;
  }
  .about-page .timeline .tl-media--below > .tl-photo{
    margin:clamp(12px,3vw,16px) auto 0 !important;
    transform:none !important;
  }

  .about-page .timeline .tl-photo-group,
  .about-page .timeline .tl-photo-group--tiered,
  .about-page .timeline .tl-photo-group--tiered-top{
    display:flex !important;
    flex-direction:column !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:clamp(12px,3vw,16px);
    width:100%;
    max-width:100%;
    padding:0 !important;
    margin:0 !important;
  }
  .about-page .timeline .tl-photo-group .tl-photo-pair{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:clamp(12px,3vw,16px);
    width:100%;
    margin:0 !important;
  }
  .about-page .timeline .tl-photo-group .tl-photo,
  .about-page .timeline .tl-photo-group .tl-photo-pair .tl-photo,
  .about-page .timeline .tl-photo-group--tiered > .tl-photo,
  .about-page .timeline .tl-photo-group--tiered-top > .tl-photo,
  .about-page .timeline .tl-media > .tl-photo{
    position:relative !important;
    flex:0 0 auto;
    width:min(100%,280px) !important;
    max-width:100%;
    margin:0 auto !important;
    transform:none !important;
    z-index:auto;
  }
  .about-page .timeline .tl-photo-group .tl-photo + .tl-photo,
  .about-page .timeline .tl-photo-group .tl-photo-pair .tl-photo + .tl-photo,
  .about-page .timeline .tl-year--stack-left .tl-photo-group .tl-photo + .tl-photo,
  .about-page .timeline .tl-year--stack-right .tl-photo-group .tl-photo + .tl-photo,
  .about-page .timeline .tl-year--media-left .tl-photo-group .tl-photo + .tl-photo,
  .about-page .timeline .tl-year--media-right .tl-photo-group .tl-photo + .tl-photo{
    margin:0 auto !important;
  }
  .about-page .timeline .tl-photo--portrait,
  .about-page .timeline .tl-photo--landscape,
  .about-page .timeline .tl-photo--square,
  .about-page .timeline .tl-photo-group .tl-photo--portrait,
  .about-page .timeline .tl-photo-group .tl-photo--landscape,
  .about-page .timeline .tl-photo-group .tl-photo--square,
  .about-page .timeline .tl-photo-group:has(.tl-photo:nth-child(4)) .tl-photo--portrait,
  .about-page .timeline .tl-photo-group:has(.tl-photo:nth-child(4)) .tl-photo--landscape,
  .about-page .timeline .tl-photo-group:has(.tl-photo:nth-child(4)) .tl-photo--square{
    width:min(100%,280px) !important;
    max-width:100%;
  }
  .about-page .timeline .tl-photo--logo img{
    max-height:120px;
  }
  .about-page .timeline .tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-media--above .tl-photo{
    width:min(100%,220px) !important;
    transform:none !important;
  }
  .about-page .timeline .tl-year--stack-right.tl-year--split-photos:not(.tl-year--split-brand) .tl-media--above .tl-photo-crop img{
    transform:scale(1.15);
    transform-origin:center center;
  }
}

