/* ── HERO ── */
.hero { position:relative; z-index:10; padding:10rem 3rem 4rem; max-width:900px; margin:0 auto; }
.hero-title { font-size:clamp(3.5rem,9vw,7rem); font-weight:800; line-height:0.9; letter-spacing:-0.04em; opacity:0; transform:translateY(24px); animation:fadeUp 0.9s cubic-bezier(0.16,1,0.3,1) forwards 0.5s; }
.hero-intro { margin-top:2rem; font-family:'DM Mono',monospace; font-size:clamp(0.75rem,1.6vw,0.95rem); color:var(--muted2); line-height:1.8; max-width:520px; opacity:0; transform:translateY(12px); animation:fadeUp 0.7s ease forwards 0.8s; }

/* ── SECTIONS ── */
.section { position:relative; z-index:10; max-width:900px; margin:0 auto; padding:4rem 3rem; border-top:1px solid var(--border2); }
.section-header { display:flex; align-items:baseline; gap:1rem; margin-bottom:3rem; }
.section-tag { font-family:'DM Mono',monospace; font-size:11px; color:var(--accent); letter-spacing:0.1em; }
.section-title { font-size:clamp(1.5rem,3vw,2.2rem); font-weight:800; letter-spacing:-0.02em; }

/* ── TIMELINE ── */
.timeline { display:flex; flex-direction:column; }
.timeline-item { display:grid; grid-template-columns:140px 1fr; gap:0 2rem; padding-bottom:3rem; }
.timeline-left { padding-top:4px; text-align:right; }
.timeline-year { font-family:'DM Mono',monospace; font-size:11px; color:var(--muted2); letter-spacing:0.06em; white-space:nowrap; }
.timeline-right { position:relative; padding-left:1.5rem; border-left:1px solid var(--border2); }
.timeline-dot { position:absolute; left:-5px; top:4px; width:8px; height:8px; border-radius:50%; background:var(--accent); box-shadow:0 0 10px rgba(0,245,160,0.4); }
.timeline-tag { font-family:'DM Mono',monospace; font-size:10px; color:var(--accent); letter-spacing:0.1em; text-transform:uppercase; border:1px solid rgba(0,245,160,0.3); padding:3px 10px; display:inline-block; margin-bottom:0.75rem; }
.timeline-title { font-size:1rem; font-weight:700; color:var(--text); margin-bottom:0.25rem; line-height:1.4; }
.timeline-place { font-family:'DM Mono',monospace; font-size:11px; color:var(--accent2); margin-bottom:0.75rem; letter-spacing:0.04em; }
.timeline-desc { font-size:14px; color:var(--muted2); line-height:1.8; }

/* ── MOTIVATION ── */
.motivation-block { display:flex; flex-direction:column; gap:2rem; }
.motivation-quote { position:relative; background:var(--surface); border:1px solid rgba(0,245,160,0.15); border-left:3px solid var(--accent); padding:2rem 2rem 2rem 3rem; }
.quote-mark { position:absolute; top:0.5rem; left:1rem; font-size:4rem; font-weight:800; color:var(--accent); opacity:0.3; line-height:1; }
.motivation-quote p { font-size:1rem; color:var(--text); line-height:1.9; font-style:italic; }
.motivation-text { font-size:14px; color:var(--muted2); line-height:1.9; }

/* ── HOBBIES ── */
.hobbies-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; }
.hobby-card { background:var(--surface); border:1px solid var(--border2); padding:1.5rem; display:flex; flex-direction:column; gap:0.75rem; transition:border-color 0.2s,transform 0.2s; }
.hobby-card:hover { border-color:rgba(0,245,160,0.25); transform:translateY(-3px); }
.hobby-icon { color:var(--accent); width:48px; height:48px; background:rgba(0,245,160,0.08); display:flex; align-items:center; justify-content:center; }
.hobby-name { font-size:14px; font-weight:700; color:var(--text); }
.hobby-desc { font-family:'DM Mono',monospace; font-size:11px; color:var(--muted2); line-height:1.7; }

/* ── RESPONSIVE ── */
@media (max-width:700px) {
    .hero { padding:8rem 1.5rem 3rem; }
    .section { padding:2rem 1.5rem 3rem; }
    .timeline-item { grid-template-columns:1fr; }
    .timeline-left { text-align:left; }
}