GSAP for all animations, 3x slower, brighter city images

- Added GSAP 3.12.5 from CDN
- Card stagger entrance now uses gsap.fromTo with 0.6s duration, 0.09 stagger
- Carousel slide uses gsap.timeline: old slides out right (3s), new slides
  in from right (3s), label slides in (2.5s after 0.3s offset)
- All animations use power2.out easing
- Image brightness: opacity 0.12→0.25, filter brightness(1.15) saturate(1.1)
- ::after overlay changed from solid midnight @ 0.6 to gradient
  (midnight→transparent @ 0.5) — brighter image with smooth falloff
This commit is contained in:
2026-08-19 22:23:28 +00:00
parent e2e37e18b4
commit 5e315cee0e
3 changed files with 22 additions and 37 deletions
+4 -21
View File
@@ -112,8 +112,8 @@ img { max-width: 100%; height: auto; vertical-align: middle; }
content: '';
position: absolute;
inset: 0;
background: var(--midnight);
opacity: 0.6;
background: linear-gradient(135deg, var(--midnight) 50%, rgba(13,27,46,0.4) 100%);
opacity: 0.5;
z-index: 0;
}
.hero-bg {
@@ -128,21 +128,8 @@ img { max-width: 100%; height: auto; vertical-align: middle; }
background-size: cover;
background-position: center;
background-repeat: no-repeat;
opacity: 0.12;
transition: transform 1s cubic-bezier(0.16, 1, 0.3, 1);
will-change: transform;
}
.hero-bg-slide.old {
transform: translateX(0);
}
.hero-bg-slide.old.out {
transform: translateX(100%);
}
.hero-bg-slide.new {
transform: translateX(100%);
}
.hero-bg-slide.new.in {
transform: translateX(0);
opacity: 0.25;
filter: brightness(1.15) saturate(1.1);
}
.hero .container { position: relative; z-index: 1; flex: 1; display: flex; flex-direction: column; justify-content: center; }
.hero-kicker {
@@ -417,14 +404,10 @@ img { max-width: 100%; height: auto; vertical-align: middle; }
font-size: 0.9rem;
z-index: 2;
transform: translateX(150%);
transition: transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
white-space: nowrap;
backdrop-filter: blur(6px);
pointer-events: none;
}
.hero-city-label.visible {
transform: translateX(0);
}
.hero-city-label strong {
color: var(--brass-bright);
font-weight: 400;