/* story.css */
.s-about { padding: 100px 0; background: var(--cream); }
.s-about .section-title,.s-about .section-eyebrow,.s-about .about-text { color: var(--dark); }
.s-about .section-eyebrow { color: var(--gold-dark); }
.about-grid { display: grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:center; }
.about-lead { font-size:1.1rem; font-weight:500; color:var(--dark); line-height:1.9; margin-bottom:1.2rem; }
.about-body { font-size:.95rem; color:var(--mid); line-height:2; margin-bottom:1rem; }
.about-stats { display:flex; gap:2.5rem; margin-top:2.5rem; padding-top:2rem; border-top:1px solid rgba(160,120,64,.2); }
.stat-item { display:flex; flex-direction:column; gap:.3rem; }
.stat-num { font-family:var(--font-display); font-size:2.4rem; font-weight:300; color:var(--gold-dark); line-height:1; }
.stat-label { font-size:.75rem; letter-spacing:.12em; color:var(--grey); }
.about-img-frame { position:relative; overflow:hidden; }
.about-img-frame img { width:100%; height:500px; object-fit:cover; filter:sepia(15%) brightness(.9); transition:transform .8s,filter .8s; }
.about-img-frame:hover img { transform:scale(1.04); filter:sepia(5%) brightness(1); }
.about-img-caption { position:absolute; bottom:0; left:0; right:0; display:flex; justify-content:center; align-items:center; gap:.8rem; padding:1rem; background:linear-gradient(transparent,rgba(0,0,0,.6)); color:var(--gold-pale); font-size:.72rem; letter-spacing:.25em; text-transform:uppercase; }
.about-quote { margin-top:1.5rem; padding:1.5rem; border-left:2px solid var(--gold-dark); background:rgba(201,169,110,.06); }
.about-quote p { font-family:var(--font-display); font-style:italic; font-size:1.1rem; color:var(--dark); }
.about-quote cite { display:block; margin-top:.5rem; font-size:.78rem; letter-spacing:.2em; color:var(--gold-dark); }

/* Timeline */
.s-timeline { padding:100px 0; background:var(--dark); }
.tl-wrap { max-width:1100px; margin:3rem auto 0; padding:0 2rem; }
.tl-item { display:grid; grid-template-columns:160px 36px 1fr; opacity:0; transform:translateY(20px); transition:opacity .6s,transform .6s; }
.tl-item.visible { opacity:1; transform:translateY(0); }
.tl-yr-col { padding:2rem 1.5rem 2rem 0; text-align:right; display:flex; flex-direction:column; align-items:flex-end; padding-top:2.2rem; }
.tl-yr { font-family:var(--font-display); font-size:1.9rem; font-weight:300; color:var(--gold); line-height:1; }
.tl-yr.golden { background:linear-gradient(135deg,var(--gold-light),var(--gold)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-weight:500; }
.tl-yr-sub { font-size:.68rem; letter-spacing:.2em; color:var(--grey); margin-top:.3rem; }
.tl-conn { display:flex; flex-direction:column; align-items:center; padding-top:2.4rem; }
.tl-dot { width:12px; height:12px; border-radius:50%; background:var(--dark); border:2px solid var(--gold); flex-shrink:0; z-index:1; transition:background var(--transition),box-shadow var(--transition); }
.tl-dot.golden-dot { background:var(--gold); box-shadow:0 0 16px rgba(201,169,110,.6); }
.tl-item:hover .tl-dot { background:var(--gold); box-shadow:0 0 12px rgba(201,169,110,.5); }
.tl-line { flex:1; width:1px; background:linear-gradient(to bottom,var(--gold),rgba(201,169,110,.1)); margin-top:4px; }
.tl-item.last .tl-line { display:none; }
.tl-body { padding:1.5rem 0 2.5rem 2rem; }
.tl-card { background:rgba(255,255,255,.03); border:1px solid rgba(201,169,110,.12); border-left:3px solid rgba(201,169,110,.3); padding:1.8rem 2rem; transition:border-color var(--transition),background var(--transition),box-shadow var(--transition); }
.tl-card:hover { background:rgba(201,169,110,.05); border-left-color:var(--gold); box-shadow:var(--shadow-gold); }
.tl-card.highlight { background:rgba(201,169,110,.06); border-left-color:var(--gold); border-color:rgba(201,169,110,.25); }
.tl-card.future { border-style:dashed; border-left-style:solid; border-left-color:var(--gold); border-color:rgba(201,169,110,.25); }
.tl-card h3 { font-family:var(--font-serif); font-size:1.05rem; font-weight:500; color:var(--gold-light); letter-spacing:.1em; margin-bottom:.8rem; }
.tl-card p { font-size:.9rem; color:var(--light-grey); line-height:1.95; }
.tl-card blockquote { margin-top:.8rem; padding:.8rem 1.2rem; border-left:2px solid var(--gold); font-family:var(--font-display); font-style:italic; font-size:1rem; color:var(--gold-pale); background:rgba(201,169,110,.06); }
.future-pulse { display:flex; gap:.4rem; margin-top:1rem; }
.future-pulse span { width:8px; height:8px; border-radius:50%; background:var(--gold); animation:pulse 1.4s ease-in-out infinite; }
.future-pulse span:nth-child(2){animation-delay:.2s} .future-pulse span:nth-child(3){animation-delay:.4s}
@keyframes pulse{0%,100%{opacity:.2;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}

@media(max-width:900px){
  .about-grid{grid-template-columns:1fr;gap:3rem;}
  .tl-item{grid-template-columns:100px 28px 1fr;}
}
@media(max-width:600px){
  .tl-item{grid-template-columns:0 28px 1fr;}
  .tl-yr-col{display:none;}
}
