*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',sans-serif;background:#F5F5F5;color:#1A1A1A;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Montserrat',sans-serif}

/* Timeline */
.tl-wrap{position:relative;padding-left:2.5rem}
.tl-line{position:absolute;left:18px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,#800000,#FFD700 60%,transparent)}
.tl-dot{position:absolute;left:-2rem;top:.3rem;width:12px;height:12px;border-radius:50%;background:#800000;border:2.5px solid #fff;box-shadow:0 0 0 2px #800000;flex-shrink:0}
.tl-dot-gold{position:absolute;left:-2rem;top:.3rem;width:12px;height:12px;border-radius:50%;background:#FFD700;border:2.5px solid #fff;box-shadow:0 0 0 2px #FFD700;flex-shrink:0}
.tl-dot-big{position:absolute;left:-2.15rem;top:.2rem;width:14px;height:14px;border-radius:50%;background:#800000;border:3px solid #fff;box-shadow:0 0 0 3px #800000}
.tl-item{position:relative;margin-bottom:1.8rem;padding-left:.2rem}
.tl-item:last-child{margin-bottom:0}

/* Cards */
.clift{transition:transform .2s,box-shadow .2s}
.clift:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.1)}

/* Film card */
.film-card{background:#fff;border-radius:12px;border:1px solid #E5E5E5;padding:1rem;transition:all .2s;cursor:default}
.film-card:hover{border-color:#800000;background:#FFF5F5;transform:translateY(-2px)}

/* Quote block */
.quote-block{border-left:4px solid #800000;padding:1rem 1.5rem;background:#FFF5F5;border-radius:0 12px 12px 0;font-style:italic}

/* Stat chip */
.stat-chip{background:#fff;border:1px solid #E5E5E5;border-radius:12px;padding:1rem 1.2rem;text-align:center}

/* Award badge */
.award-item{display:flex;align-items:flex-start;gap:.8rem;padding:.9rem 1rem;border-radius:10px;background:#fff;border:1px solid #E5E5E5;margin-bottom:.5rem}
.award-item:last-child{margin-bottom:0}

/* Section nav (sticky sidebar) */
.bio-nav-link{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:8px;font-family:'Inter',sans-serif;font-size:.78rem;font-weight:600;color:#717171;text-decoration:none;transition:all .15s}
.bio-nav-link:hover,.bio-nav-link.active{background:#FFF5F5;color:#800000}
.bio-nav-link.active{border-left:3px solid #800000;padding-left:.55rem}

/* Reveal */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.reveal.show{opacity:1;transform:translateY(0)}

/* Nav */
.nav-link{position:relative;transition:color .18s}
.nav-link:hover{color:#800000}
.has-dd:hover .dd-menu{opacity:1;visibility:visible;transform:translateY(0)}
.dd-menu{opacity:0;visibility:hidden;transform:translateY(-6px);transition:all .2s;z-index:200}

/* Progress bar */
.prog{height:6px;background:#E5E5E5;border-radius:99px;overflow:hidden;margin-top:.4rem}
.prog-fill{height:100%;background:linear-gradient(90deg,#800000,#FFD700);border-radius:99px;transition:width 1s ease}

/* Scrollbar */
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-thumb{background:#E5E5E5;border-radius:3px}
