Replace hero mockup with auto-rotating screenshot carousel

- Swap static dashboard card for 3-slide image carousel in hero section
- Slides auto-advance every 4.5s, pause on hover, support manual prev/next and dot navigation
- Add carousel CSS with fade transition, dot indicators, and glow border treatment
- Add carousel JS with goTo/prev/next/auto-rotate logic
- Images expected at img/screenshot-dashboard.png, img/screenshot-cashflow.png, img/screenshot-capital.png

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-09 14:42:05 -04:00
parent e2a1790c75
commit 4f99e8c71a
3 changed files with 167 additions and 34 deletions

View File

@@ -623,6 +623,103 @@ body {
color: var(--gray-700);
}
/* ---- Screenshot Carousel ---- */
.screenshot-carousel {
width: 100%;
max-width: 900px;
margin: 60px auto 0;
padding: 0 24px;
}
.carousel-frame {
border-radius: var(--radius-lg);
overflow: hidden;
border: 1px solid rgba(255,255,255,0.1);
box-shadow: 0 0 80px rgba(79,70,229,0.25), var(--shadow-lg);
background: var(--gray-800);
position: relative;
}
.carousel-slides {
position: relative;
width: 100%;
}
.carousel-slide {
display: none;
flex-direction: column;
}
.carousel-slide.active {
display: flex;
}
.carousel-slide img {
width: 100%;
height: auto;
display: block;
border-radius: var(--radius-lg) var(--radius-lg) 0 0;
}
.slide-caption {
padding: 12px 18px;
font-size: 12px;
font-weight: 600;
color: var(--gray-500);
letter-spacing: 0.04em;
text-align: center;
background: var(--gray-800);
border-top: 1px solid rgba(255,255,255,0.06);
}
.carousel-controls {
display: flex;
align-items: center;
justify-content: center;
gap: 16px;
margin-top: 18px;
}
.carousel-btn {
background: rgba(255,255,255,0.06);
border: 1px solid rgba(255,255,255,0.1);
color: var(--gray-400);
width: 36px;
height: 36px;
border-radius: 50%;
cursor: pointer;
font-size: 16px;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.15s;
flex-shrink: 0;
}
.carousel-btn:hover {
background: rgba(79,70,229,0.25);
border-color: rgba(79,70,229,0.5);
color: #fff;
}
.carousel-dots {
display: flex;
gap: 8px;
align-items: center;
}
.carousel-dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--gray-700);
cursor: pointer;
transition: all 0.2s;
}
.carousel-dot.active {
background: var(--blue);
width: 22px;
border-radius: 4px;
}
/* Fade transition */
.carousel-slide {
opacity: 0;
transition: opacity 0.4s ease;
}
.carousel-slide.active {
opacity: 1;
}
/* ---- Request Quote pricing ---- */
.price-amount--quote {
font-size: 32px;