.timeline { position:relative; padding-left:0; }
    .timeline::before { content:''; position:absolute; left:32px; top:0; bottom:0; width:2px; background:linear-gradient(to bottom,var(--gold),var(--stone-200)); }
    .timeline-item { display:grid; grid-template-columns:64px 1fr; gap:32px; margin-bottom:64px; align-items:flex-start; position:relative; }
    .timeline-dot { width:64px; height:64px; border-radius:50%; background:var(--gold); display:flex; align-items:center; justify-content:center; flex-shrink:0; position:relative; z-index:1; box-shadow:0 0 0 6px rgba(201,169,110,.15); }
    .timeline-dot.accent { background:var(--accent); box-shadow:0 0 0 6px rgba(192,113,74,.15); }
    .timeline-dot span { font-family:'Playfair Display',serif; font-weight:700; color:#fff; font-size:1.1rem; }
    .timeline-content { background:#fff; border:1px solid var(--stone-200); border-radius:4px; padding:36px 32px; transition:all .3s; }
    .timeline-content:hover { box-shadow:0 12px 40px rgba(0,0,0,.08); border-color:var(--gold); }
    .tl-phase { font-size:.62rem; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:var(--gold); margin-bottom:10px; }
    .tl-title { font-family:'Playfair Display',serif; font-size:1.4rem; margin-bottom:12px; }
    .tl-body { color:var(--stone-600); line-height:1.8; font-size:.93rem; }
    .tl-body ul { margin-top:16px; list-style:none; padding:0; }
    .tl-body ul li { display:flex; gap:12px; margin-bottom:8px; }
    .tl-body ul li::before { content:'→'; color:var(--gold); font-size:.85rem; flex-shrink:0; margin-top:2px; }
    .principle-card { background:#fff; border:1px solid var(--stone-200); border-radius:4px; padding:40px 32px; text-align:center; transition:all .3s; }
    .principle-card:hover { box-shadow:0 16px 48px rgba(0,0,0,.09); transform:translateY(-4px); }
    .principle-icon { width:52px; height:52px; border-radius:50%; background:rgba(201,169,110,.1); display:flex; align-items:center; justify-content:center; margin:0 auto 20px; }
    .principle-icon svg { width:24px; height:24px; color:var(--gold); }
    @media(max-width:576px){ .timeline::before { display:none; } .timeline-item { grid-template-columns:1fr; } .timeline-dot { display:none; } }
