#commit-title { margin-bottom: 64px; text-align: center; font-family: 'Archivo Black', sans-serif; text-transform: uppercase; letter-spacing: -0.02em; line-height: 1.1; }
.ct-line1 { font-size: clamp(36px, 4vw, 52px); color: var(--ink); opacity: 0; }
.ct-line2 { font-size: clamp(52px, 6vw, 80px); color: var(--accent); margin-top: 6px; opacity: 0; display: block; position: relative; }
.ct-line3 { font-size: clamp(28px, 3.5vw, 48px); color: var(--accent); margin-top: 10px; opacity: 0; }
@keyframes ctSlideLeft { from { opacity: 0; transform: translateX(-80px) skewX(-4deg); } to { opacity: 1; transform: translateX(0) skewX(0); } }
@keyframes ctStamp { 0% { opacity: 0; transform: translateY(-120px) scaleY(1.3); } 65% { opacity: 1; transform: translateY(8px) scaleY(0.95); } 80% { transform: translateY(-4px) scaleY(1.02); } 100% { opacity: 1; transform: translateY(0) scaleY(1); } }
@keyframes ctFadeUp { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: translateY(0); } }
@keyframes ctShock { 0% { opacity: 0.9; transform: translate(-50%, -50%) scale(0.2); } 60% { opacity: 0.35; transform: translate(-50%, -50%) scale(1.4); } 100% { opacity: 0; transform: translate(-50%, -50%) scale(2.2); } }
@keyframes ctGlow { 0%, 100% { text-shadow: none; } 30% { text-shadow: 0 0 40px rgba(200, 38, 42, 0.9), 0 0 80px rgba(200, 38, 42, 0.5); } }
.ct-line1.ct-active { animation: ctSlideLeft 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards; }
.ct-line2.ct-active { animation: ctStamp 0.55s cubic-bezier(0.22, 1, 0.36, 1) 0.45s forwards, ctGlow 0.9s ease 0.45s forwards; }
.ct-line3.ct-active { animation: ctFadeUp 0.6s ease 1.05s forwards; }
.ct-shockwave { position: absolute; top: 50%; left: 50%; width: 100%; height: 300%; border-radius: 50%; border: 4px solid rgba(200,38,42,0.7); pointer-events: none; opacity: 0; }
.ct-line2.ct-active .ct-shockwave { animation: ctShock 0.7s ease-out 0.48s forwards; }
