.building-progress-page{background-color:var(--color-background);min-height:100vh;padding:120px 20px 60px}.building-progress-header{text-align:center;margin-bottom:60px}.building-progress-header h1{font-family:var(--font-heading);color:var(--color-text-dark);margin-bottom:16px;font-size:3rem}.building-progress-header .subtitle{font-family:var(--font-body);color:var(--color-text-muted);font-size:1.2rem}.timeline-container{max-width:1000px;margin:0 auto;padding:20px 0}.no-events{text-align:center;color:var(--color-text-muted);background-color:#fff;border-radius:12px;padding:40px;box-shadow:0 4px 20px #0000000d}.timeline{max-width:1000px;margin:0 auto;position:relative}.timeline:after{content:"";background-color:var(--color-primary-light);border-radius:2px;width:4px;margin-left:-2px;position:absolute;top:0;bottom:0;left:50%}.timeline-item{background-color:inherit;box-sizing:border-box;width:50%;margin-bottom:40px;padding:10px 40px;position:relative}.timeline-item.left{left:0}.timeline-item.right{left:50%}.timeline-marker{border:4px solid var(--color-primary);z-index:1;background-color:#fff;border-radius:50%;width:24px;height:24px;position:absolute;top:20px;right:-12px;box-shadow:0 2px 8px #0000001a}.timeline-item.right .timeline-marker{left:-12px}.timeline-content{background-color:#fff;border-radius:16px;padding:30px;transition:transform .3s,box-shadow .3s;position:relative;box-shadow:0 8px 30px #00000014}.timeline-content:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0000001f}.timeline-date{background-color:var(--color-primary-light);color:var(--color-primary-dark);border-radius:20px;margin-bottom:12px;padding:6px 12px;font-size:.9rem;font-weight:600;display:inline-block}.timeline-title{font-family:var(--font-heading);color:var(--color-text-dark);margin-bottom:16px;font-size:1.5rem}.timeline-desc{color:var(--color-text);margin-bottom:20px;line-height:1.6}.timeline-desc p{margin-bottom:10px}.timeline-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:20px;display:grid}.timeline-photo{aspect-ratio:4/3;border-radius:8px;position:relative;overflow:hidden}.timeline-photo img{width:100%;height:100%;transition:transform .3s}.timeline-photo:hover img{transform:scale(1.05)}@media screen and (max-width:768px){.timeline:after{left:31px}.timeline-item{width:100%;padding-left:70px;padding-right:25px}.timeline-item.left,.timeline-item.right{left:0}.timeline-item.left .timeline-marker,.timeline-item.right .timeline-marker{left:19px}.timeline-content{padding:20px}}
