astro-component-kit 0.0.1 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +218 -119
- package/package.json +28 -55
- package/src/components/index.ts +207 -0
- package/src/components/lib/AnimatedGalaxy.astro +185 -0
- package/src/components/lib/Galaxy3D.astro +308 -0
- package/src/components/lib/GlassNavbar.astro +13 -11
- package/src/components/lib/LogoWithGalaxy.astro +63 -0
- package/src/components/lib/buttons/3dPushButton.astro +9 -0
- package/src/components/lib/buttons/AnimatedIconButton.astro +10 -0
- package/src/components/lib/buttons/BorderDrawButton.astro +9 -0
- package/src/components/lib/buttons/CyberpunkButton.astro +10 -0
- package/src/components/lib/buttons/DoubleBorderButton.astro +9 -0
- package/src/components/lib/buttons/GhostOutlineButton.astro +10 -0
- package/src/components/lib/buttons/GlassButton.astro +13 -32
- package/src/components/lib/buttons/GlowButton.astro +9 -0
- package/src/components/lib/buttons/LiquidButton.astro +9 -0
- package/src/components/lib/buttons/LoadingButton.astro +10 -0
- package/src/components/lib/buttons/MagneticButton.astro +10 -0
- package/src/components/lib/buttons/MinimalPillButton.astro +9 -0
- package/src/components/lib/buttons/NeumorphicButton.astro +10 -0
- package/src/components/lib/buttons/PulseButton.astro +10 -0
- package/src/components/lib/buttons/RetroArcadeButton.astro +9 -0
- package/src/components/lib/buttons/RetroShadowButton.astro +9 -0
- package/src/components/lib/buttons/ShimmerButton.astro +9 -0
- package/src/components/lib/buttons/ShinyButton.astro +9 -0
- package/src/components/lib/buttons/TiltGlowButton.astro +10 -0
- package/src/components/lib/cards/BlogHorizontalCard.astro +46 -13
- package/src/components/lib/cards/CyberFeatureCard.astro +50 -6
- package/src/components/lib/cards/EcommerceProductCard.astro +69 -16
- package/src/components/lib/cards/GlassCard.astro +8 -0
- package/src/components/lib/cards/GlassEventCard.astro +53 -12
- package/src/components/lib/cards/GlowPortfolioCard.astro +46 -9
- package/src/components/lib/cards/InteractiveTiltCard.astro +47 -7
- package/src/components/lib/cards/KanbanItemCard.astro +40 -9
- package/src/components/lib/cards/MinimalLinkCard.astro +37 -7
- package/src/components/lib/cards/MusicPlayerMini.astro +54 -14
- package/src/components/lib/cards/NeumorphicCard.astro +32 -2
- package/src/components/lib/cards/NotificationCard.astro +44 -9
- package/src/components/lib/cards/PricingCard.astro +47 -9
- package/src/components/lib/cards/ProfileCard.astro +50 -11
- package/src/components/lib/cards/RetroGameCard.astro +37 -9
- package/src/components/lib/cards/StatCard.astro +43 -8
- package/src/components/lib/cards/TaskKanbanCard.astro +50 -11
- package/src/components/lib/cards/TestimonialCardClean.astro +43 -12
- package/src/components/lib/cards/WeatherWidgetCard.astro +36 -10
- package/src/components/lib/feedback/AnimatedCheckmark.astro +58 -9
- package/src/components/lib/feedback/Badge.astro +47 -12
- package/src/components/lib/feedback/CircleProgress.astro +56 -13
- package/src/components/lib/feedback/ConfettiFeedback.astro +74 -11
- package/src/components/lib/feedback/CyberGlitchAlert.astro +69 -6
- package/src/components/lib/feedback/EmptyStateCard.astro +55 -7
- package/src/components/lib/feedback/GlassAlert.astro +59 -13
- package/src/components/lib/feedback/GlassModal.astro +99 -14
- package/src/components/lib/feedback/GlassProgress.astro +39 -5
- package/src/components/lib/feedback/IndicatorBadgeMinimal.astro +56 -3
- package/src/components/lib/feedback/NeonSpinner.astro +40 -3
- package/src/components/lib/feedback/PulseDot.astro +51 -7
- package/src/components/lib/feedback/RatingPill.astro +38 -8
- package/src/components/lib/feedback/ShakeErrorGroup.astro +44 -3
- package/src/components/lib/feedback/SimpleTooltip.astro +53 -4
- package/src/components/lib/feedback/SkeletonList.astro +59 -13
- package/src/components/lib/feedback/Spotlight.astro +49 -4
- package/src/components/lib/feedback/StepProgress.astro +96 -9
- package/src/components/lib/feedback/ToastNotif.astro +60 -6
- package/src/components/lib/feedback/TypingIndicator.astro +52 -7
- package/src/components/lib/forms/AnimatedInput.astro +47 -5
- package/src/components/lib/forms/ChipInput.astro +116 -8
- package/src/components/lib/forms/ColorPickerInput.astro +53 -6
- package/src/components/lib/forms/CurrencyInput.astro +59 -6
- package/src/components/lib/forms/CustomRadioGroup.astro +61 -9
- package/src/components/lib/forms/CyberpunkCheckbox.astro +64 -8
- package/src/components/lib/forms/DragDropUpload.astro +87 -7
- package/src/components/lib/forms/ErrorInput.astro +31 -4
- package/src/components/lib/forms/FloatingPassword.astro +48 -10
- package/src/components/lib/forms/FormGroupVertical.astro +63 -9
- package/src/components/lib/forms/GlassSlider.astro +84 -3
- package/src/components/lib/forms/GlassTextarea.astro +39 -6
- package/src/components/lib/forms/ModernSelect.astro +66 -10
- package/src/components/lib/forms/NeumorphicSwitch.astro +54 -26
- package/src/components/lib/forms/OTPInput.astro +84 -12
- package/src/components/lib/forms/RatingStars.astro +66 -10
- package/src/components/lib/forms/SearchReveal.astro +44 -6
- package/src/components/lib/forms/SegmentedControl.astro +61 -7
- package/src/components/lib/forms/SimpleFileInput.astro +57 -6
- package/src/components/lib/forms/StepperInput.astro +101 -9
- package/src/components/lib/layout/FeatureHero.astro +70 -6
- package/src/components/lib/layout/FooterCenteredMinimal.astro +5 -2
- package/src/components/lib/navigation/GlassNavbar.astro +10 -5
- package/src/components/lib/navigation/MinimalSidebar.astro +6 -3
- package/src/components/lib/navigation/SimpleFooterGlass.astro +6 -2
- package/src/components/lib/overlays/SplashIntroOverlay.astro +6 -3
- package/src/components/lib/sections/ButtonsShowcase.astro +182 -0
- package/src/components/lib/sections/CardsShowcase.astro +376 -0
- package/src/components/lib/sections/DataShowcase.astro +329 -0
- package/src/components/lib/sections/FeedbackShowcase.astro +320 -0
- package/src/components/lib/sections/FormsShowcase.astro +347 -0
- package/src/components/lib/sections/HeroGlass.astro +202 -0
- package/src/components/lib/sections/HeroGradient.astro +143 -0
- package/src/components/lib/sections/HeroSplit.astro +210 -0
- package/src/components/lib/sections/LayoutShowcase.astro +317 -0
- package/src/components/lib/sections/NavigationShowcase.astro +285 -0
- package/src/components/lib/sections/OverlaysShowcase.astro +373 -0
- package/src/components/lib/sections/TypographyShowcase.astro +239 -0
- package/src/components/lib/sections/index.ts +6 -0
- package/src/components/types.d.ts +6 -0
- package/{dist → src}/styles/global.css +5 -5
- package/dist/AnimatedInput.astro +0 -82
- package/dist/Badge.astro +0 -52
- package/dist/GlassButton.astro +0 -87
- package/dist/GlassCard.astro +0 -72
- package/dist/GlassNavbar.astro +0 -65
- package/dist/GlowButton.astro +0 -60
- package/dist/buttons/3dPushButton.astro +0 -136
- package/dist/buttons/AnimatedIconButton.astro +0 -146
- package/dist/buttons/BorderDrawButton.astro +0 -112
- package/dist/buttons/CyberpunkButton.astro +0 -148
- package/dist/buttons/DoubleBorderButton.astro +0 -131
- package/dist/buttons/GhostOutlineButton.astro +0 -109
- package/dist/buttons/GlassButton.astro +0 -165
- package/dist/buttons/GlowButton.astro +0 -119
- package/dist/buttons/LiquidButton.astro +0 -167
- package/dist/buttons/LoadingButton.astro +0 -148
- package/dist/buttons/MagneticButton.astro +0 -134
- package/dist/buttons/MinimalPillButton.astro +0 -102
- package/dist/buttons/NeumorphicButton.astro +0 -158
- package/dist/buttons/PulseButton.astro +0 -111
- package/dist/buttons/RetroArcadeButton.astro +0 -105
- package/dist/buttons/RetroShadowButton.astro +0 -82
- package/dist/buttons/ShimmerButton.astro +0 -113
- package/dist/buttons/ShinyButton.astro +0 -121
- package/dist/buttons/TiltGlowButton.astro +0 -145
- package/dist/buttons/index.mjs +0 -19
- package/dist/buttons/index.ts +0 -19
- package/dist/cards/BlogHorizontalCard.astro +0 -18
- package/dist/cards/CyberFeatureCard.astro +0 -12
- package/dist/cards/EcommerceProductCard.astro +0 -24
- package/dist/cards/GlassCard.astro +0 -17
- package/dist/cards/GlassEventCard.astro +0 -19
- package/dist/cards/GlowPortfolioCard.astro +0 -16
- package/dist/cards/InteractiveTiltCard.astro +0 -25
- package/dist/cards/KanbanItemCard.astro +0 -15
- package/dist/cards/MinimalLinkCard.astro +0 -12
- package/dist/cards/MusicPlayerMini.astro +0 -21
- package/dist/cards/NeumorphicCard.astro +0 -6
- package/dist/cards/NotificationCard.astro +0 -15
- package/dist/cards/PricingCard.astro +0 -17
- package/dist/cards/ProfileCard.astro +0 -17
- package/dist/cards/RetroGameCard.astro +0 -15
- package/dist/cards/StatCard.astro +0 -15
- package/dist/cards/TaskKanbanCard.astro +0 -18
- package/dist/cards/TestimonialCardClean.astro +0 -20
- package/dist/cards/WeatherWidgetCard.astro +0 -17
- package/dist/cards/index.mjs +0 -19
- package/dist/cards/index.ts +0 -19
- package/dist/data/AccordionGroupGlass.astro +0 -21
- package/dist/data/AvatarGroupStack.astro +0 -15
- package/dist/data/CalendarGridView.astro +0 -18
- package/dist/data/DataChipsGroup.astro +0 -16
- package/dist/data/DescriptionListHoriz.astro +0 -14
- package/dist/data/FileTreeView.astro +0 -22
- package/dist/data/GanttChartMinimal.astro +0 -12
- package/dist/data/GlassTable.astro +0 -23
- package/dist/data/KeyValuePillGroup.astro +0 -12
- package/dist/data/PriceCompareTable.astro +0 -22
- package/dist/data/ProgressListSmall.astro +0 -17
- package/dist/data/RatingBreakdownBar.astro +0 -13
- package/dist/data/SparklineStatCard.astro +0 -16
- package/dist/data/StatsGridDashboard.astro +0 -16
- package/dist/data/StepperDataVertical.astro +0 -15
- package/dist/data/TagCloudData.astro +0 -14
- package/dist/data/TimelineHorizSteps.astro +0 -18
- package/dist/data/TreeItemInteractive.astro +0 -18
- package/dist/data/UserDirectoryItem.astro +0 -15
- package/dist/data/VerticalTimeline.astro +0 -21
- package/dist/data/index.mjs +0 -20
- package/dist/data/index.ts +0 -20
- package/dist/feedback/AnimatedCheckmark.astro +0 -13
- package/dist/feedback/Badge.astro +0 -19
- package/dist/feedback/CircleProgress.astro +0 -22
- package/dist/feedback/ConfettiFeedback.astro +0 -18
- package/dist/feedback/CyberGlitchAlert.astro +0 -11
- package/dist/feedback/EmptyStateCard.astro +0 -13
- package/dist/feedback/GlassAlert.astro +0 -20
- package/dist/feedback/GlassModal.astro +0 -19
- package/dist/feedback/GlassProgress.astro +0 -10
- package/dist/feedback/IndicatorBadgeMinimal.astro +0 -10
- package/dist/feedback/NeonSpinner.astro +0 -7
- package/dist/feedback/PulseDot.astro +0 -12
- package/dist/feedback/RatingPill.astro +0 -13
- package/dist/feedback/ShakeErrorGroup.astro +0 -7
- package/dist/feedback/SimpleTooltip.astro +0 -10
- package/dist/feedback/SkeletonList.astro +0 -20
- package/dist/feedback/Spotlight.astro +0 -9
- package/dist/feedback/StepProgress.astro +0 -14
- package/dist/feedback/ToastNotif.astro +0 -11
- package/dist/feedback/TypingIndicator.astro +0 -12
- package/dist/feedback/index.mjs +0 -20
- package/dist/feedback/index.ts +0 -20
- package/dist/forms/AnimatedInput.astro +0 -16
- package/dist/forms/ChipInput.astro +0 -13
- package/dist/forms/ColorPickerInput.astro +0 -13
- package/dist/forms/CurrencyInput.astro +0 -11
- package/dist/forms/CustomRadioGroup.astro +0 -13
- package/dist/forms/CyberpunkCheckbox.astro +0 -15
- package/dist/forms/DragDropUpload.astro +0 -12
- package/dist/forms/ErrorInput.astro +0 -11
- package/dist/forms/FloatingPassword.astro +0 -20
- package/dist/forms/FormGroupVertical.astro +0 -14
- package/dist/forms/GlassSlider.astro +0 -7
- package/dist/forms/GlassTextarea.astro +0 -14
- package/dist/forms/ModernSelect.astro +0 -16
- package/dist/forms/NeumorphicSwitch.astro +0 -55
- package/dist/forms/OTPInput.astro +0 -22
- package/dist/forms/RatingStars.astro +0 -15
- package/dist/forms/SearchReveal.astro +0 -13
- package/dist/forms/SegmentedControl.astro +0 -13
- package/dist/forms/SimpleFileInput.astro +0 -11
- package/dist/forms/StepperInput.astro +0 -14
- package/dist/forms/index.mjs +0 -20
- package/dist/forms/index.ts +0 -20
- package/dist/index.js +0 -1
- package/dist/index.mjs +0 -1
- package/dist/layout/BentoGrid3.astro +0 -14
- package/dist/layout/CenterFixedBox.astro +0 -6
- package/dist/layout/CenteredContainer.astro +0 -8
- package/dist/layout/ClusterHorizontal.astro +0 -6
- package/dist/layout/FeatureHero.astro +0 -17
- package/dist/layout/FooterCenteredMinimal.astro +0 -11
- package/dist/layout/FullBleedSection.astro +0 -6
- package/dist/layout/GalleryGrid4.astro +0 -7
- package/dist/layout/GlassCardGrid.astro +0 -6
- package/dist/layout/GlassSectionHeader.astro +0 -15
- package/dist/layout/LandingSectionSplit.astro +0 -13
- package/dist/layout/MasonryGrid.astro +0 -7
- package/dist/layout/MinimalFooterGrid.astro +0 -20
- package/dist/layout/ScrollSnapSection.astro +0 -7
- package/dist/layout/SectionDividerText.astro +0 -7
- package/dist/layout/SidebarLayoutWrapper.astro +0 -11
- package/dist/layout/SplitScreenLayout.astro +0 -11
- package/dist/layout/StepLayoutVertical.astro +0 -21
- package/dist/layout/StickySidebarWrapper.astro +0 -10
- package/dist/layout/VerticalStack.astro +0 -8
- package/dist/layout/index.mjs +0 -20
- package/dist/layout/index.ts +0 -20
- package/dist/navigation/AnchorSideNav.astro +0 -13
- package/dist/navigation/BottomNavMobile.astro +0 -13
- package/dist/navigation/BreadcrumbsMinimal.astro +0 -16
- package/dist/navigation/BurgerMorphIcon.astro +0 -12
- package/dist/navigation/CommandPaletteUI.astro +0 -17
- package/dist/navigation/DotNavigationSlider.astro +0 -13
- package/dist/navigation/FloatingTabBar.astro +0 -12
- package/dist/navigation/GlassNavbar.astro +0 -19
- package/dist/navigation/LangSwitcherPill.astro +0 -17
- package/dist/navigation/MegaMenuGlass.astro +0 -25
- package/dist/navigation/MinimalSidebar.astro +0 -18
- package/dist/navigation/PaginationGlass.astro +0 -20
- package/dist/navigation/PaginationInfiniteUI.astro +0 -11
- package/dist/navigation/RadialIconMenu.astro +0 -15
- package/dist/navigation/RetroArcadeMenu.astro +0 -12
- package/dist/navigation/ScrollProgressTop.astro +0 -15
- package/dist/navigation/SimpleFooterGlass.astro +0 -21
- package/dist/navigation/TabUnderline.astro +0 -14
- package/dist/navigation/UserProfileNav.astro +0 -21
- package/dist/navigation/VerticalTabs.astro +0 -14
- package/dist/navigation/index.mjs +0 -20
- package/dist/navigation/index.ts +0 -20
- package/dist/overlays/AgeVerificationOverlay.astro +0 -20
- package/dist/overlays/BackdropBlurMask.astro +0 -6
- package/dist/overlays/BottomSheetMobile.astro +0 -16
- package/dist/overlays/CommandDialog.astro +0 -19
- package/dist/overlays/ContextMenuOverlay.astro +0 -17
- package/dist/overlays/CookieBannerGlass.astro +0 -14
- package/dist/overlays/ExitIntentOverlay.astro +0 -19
- package/dist/overlays/FloatingTrayActions.astro +0 -13
- package/dist/overlays/HelpBubbleOverlay.astro +0 -11
- package/dist/overlays/LightboxOverlay.astro +0 -13
- package/dist/overlays/LoadingOverlayFull.astro +0 -10
- package/dist/overlays/MobileNavOverlay.astro +0 -18
- package/dist/overlays/OverlayModal.astro +0 -24
- package/dist/overlays/PopoverMenuGlass.astro +0 -17
- package/dist/overlays/SearchOverlayFullscreen.astro +0 -15
- package/dist/overlays/SideDrawerRight.astro +0 -16
- package/dist/overlays/SplashIntroOverlay.astro +0 -11
- package/dist/overlays/SpotlightIndicator.astro +0 -6
- package/dist/overlays/ToastStackOverlay.astro +0 -12
- package/dist/overlays/TooltipActionTray.astro +0 -14
- package/dist/overlays/index.mjs +0 -20
- package/dist/overlays/index.ts +0 -20
- package/dist/typography/AnimatedUnderlineLink.astro +0 -10
- package/dist/typography/BackgroundClipMask.astro +0 -7
- package/dist/typography/CodeInlineGlass.astro +0 -6
- package/dist/typography/CyberpunkGlitchText.astro +0 -20
- package/dist/typography/DropCapParagraph.astro +0 -7
- package/dist/typography/FadedVerticalText.astro +0 -6
- package/dist/typography/FloatingTextLabel.astro +0 -10
- package/dist/typography/GlassBlockQuote.astro +0 -13
- package/dist/typography/GlassTextReveal.astro +0 -7
- package/dist/typography/GradientHeading.astro +0 -9
- package/dist/typography/GradientUnderlineLink.astro +0 -7
- package/dist/typography/KbdIndicator.astro +0 -6
- package/dist/typography/LetterSpacingWide.astro +0 -6
- package/dist/typography/MinimalListMarkers.astro +0 -10
- package/dist/typography/MonospaceStatLine.astro +0 -6
- package/dist/typography/NeonTextHighlight.astro +0 -6
- package/dist/typography/ShadowRevealText.astro +0 -7
- package/dist/typography/StrokeHeadingOutline.astro +0 -8
- package/dist/typography/Text3DLayer.astro +0 -7
- package/dist/typography/TypewriterText.astro +0 -15
- package/dist/typography/index.mjs +0 -20
- package/dist/typography/index.ts +0 -20
- package/dist/utilities/AspectRatioBox.astro +0 -11
- package/dist/utilities/BackgroundDotPattern.astro +0 -6
- package/dist/utilities/CircularMask.astro +0 -7
- package/dist/utilities/ClickRippleWrapper.astro +0 -7
- package/dist/utilities/FadeInWrapper.astro +0 -11
- package/dist/utilities/FixedRatioImage.astro +0 -7
- package/dist/utilities/GlassBlurLayer.astro +0 -6
- package/dist/utilities/GradientBorderMask.astro +0 -7
- package/dist/utilities/HoverLift.astro +0 -7
- package/dist/utilities/ResponsiveSpacer.astro +0 -15
- package/dist/utilities/ResponsiveVisToggle.astro +0 -11
- package/dist/utilities/ScrollLockParent.astro +0 -11
- package/dist/utilities/ScrollMarginTarget.astro +0 -10
- package/dist/utilities/SlideUpReveal.astro +0 -7
- package/dist/utilities/SmoothAnchorLink.astro +0 -22
- package/dist/utilities/StackLayering.astro +0 -12
- package/dist/utilities/StickyObserver.astro +0 -8
- package/dist/utilities/TextTruncate.astro +0 -10
- package/dist/utilities/TruncateSingleLine.astro +0 -6
- package/dist/utilities/VisuallyHidden.astro +0 -6
- package/dist/utilities/index.mjs +0 -20
- package/dist/utilities/index.ts +0 -20
- package/src/components/lib/utilities/AspectRatioBox.astro +0 -11
- package/src/components/lib/utilities/BackgroundDotPattern.astro +0 -6
- package/src/components/lib/utilities/CircularMask.astro +0 -7
- package/src/components/lib/utilities/ClickRippleWrapper.astro +0 -7
- package/src/components/lib/utilities/FadeInWrapper.astro +0 -11
- package/src/components/lib/utilities/FixedRatioImage.astro +0 -7
- package/src/components/lib/utilities/GlassBlurLayer.astro +0 -6
- package/src/components/lib/utilities/GradientBorderMask.astro +0 -7
- package/src/components/lib/utilities/HoverLift.astro +0 -7
- package/src/components/lib/utilities/ResponsiveSpacer.astro +0 -15
- package/src/components/lib/utilities/ResponsiveVisToggle.astro +0 -11
- package/src/components/lib/utilities/ScrollLockParent.astro +0 -11
- package/src/components/lib/utilities/ScrollMarginTarget.astro +0 -10
- package/src/components/lib/utilities/SlideUpReveal.astro +0 -7
- package/src/components/lib/utilities/SmoothAnchorLink.astro +0 -22
- package/src/components/lib/utilities/StackLayering.astro +0 -12
- package/src/components/lib/utilities/StickyObserver.astro +0 -8
- package/src/components/lib/utilities/TextTruncate.astro +0 -10
- package/src/components/lib/utilities/TruncateSingleLine.astro +0 -6
- package/src/components/lib/utilities/VisuallyHidden.astro +0 -6
- package/src/components/lib/utilities/index.ts +0 -20
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
---
|
|
2
|
+
// HeroGlass.astro — Centered hero with glassmorphism card overlay
|
|
3
|
+
interface Props {
|
|
4
|
+
title?: string;
|
|
5
|
+
subtitle?: string;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
const {
|
|
9
|
+
title = "Your Complete Component Library",
|
|
10
|
+
subtitle = "Build stunning landing pages and apps with 200+ accessible, responsive, and customizable components.",
|
|
11
|
+
} = Astro.props;
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
<section class="hero-glass">
|
|
15
|
+
<div class="hero-glass__bg" aria-hidden="true">
|
|
16
|
+
<div class="hero-glass__orb hero-glass__orb--1"></div>
|
|
17
|
+
<div class="hero-glass__orb hero-glass__orb--2"></div>
|
|
18
|
+
<div class="hero-glass__orb hero-glass__orb--3"></div>
|
|
19
|
+
</div>
|
|
20
|
+
<div class="container">
|
|
21
|
+
<div class="hero-glass__card">
|
|
22
|
+
<h1 class="hero-glass__title">{title}</h1>
|
|
23
|
+
<p class="hero-glass__subtitle">{subtitle}</p>
|
|
24
|
+
<div class="hero-glass__actions">
|
|
25
|
+
<button class="hero-glass__btn hero-glass__btn--primary">
|
|
26
|
+
Get Started Free
|
|
27
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
|
|
28
|
+
</button>
|
|
29
|
+
<button class="hero-glass__btn hero-glass__btn--secondary">
|
|
30
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polygon points="5 3 19 12 5 21 5 3"/></svg>
|
|
31
|
+
Watch Demo
|
|
32
|
+
</button>
|
|
33
|
+
</div>
|
|
34
|
+
<div class="hero-glass__trust">
|
|
35
|
+
<span>Trusted by 5,000+ developers</span>
|
|
36
|
+
<div class="hero-glass__avatars">
|
|
37
|
+
<span class="hero-glass__avatar">A</span>
|
|
38
|
+
<span class="hero-glass__avatar">B</span>
|
|
39
|
+
<span class="hero-glass__avatar">C</span>
|
|
40
|
+
<span class="hero-glass__avatar">D</span>
|
|
41
|
+
<span class="hero-glass__avatar hero-glass__avatar--more">+</span>
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
</section>
|
|
47
|
+
|
|
48
|
+
<style>
|
|
49
|
+
.hero-glass {
|
|
50
|
+
position: relative;
|
|
51
|
+
min-height: 90vh;
|
|
52
|
+
display: flex;
|
|
53
|
+
align-items: center;
|
|
54
|
+
justify-content: center;
|
|
55
|
+
padding: var(--sp-8) var(--sp-6);
|
|
56
|
+
overflow: hidden;
|
|
57
|
+
}
|
|
58
|
+
.hero-glass__bg {
|
|
59
|
+
position: absolute;
|
|
60
|
+
inset: 0;
|
|
61
|
+
background: radial-gradient(ellipse at 20% 50%, rgba(184,134,11,0.12) 0%, transparent 50%),
|
|
62
|
+
radial-gradient(ellipse at 80% 20%, rgba(184,134,11,0.08) 0%, transparent 50%),
|
|
63
|
+
radial-gradient(ellipse at 50% 80%, rgba(184,134,11,0.06) 0%, transparent 50%);
|
|
64
|
+
}
|
|
65
|
+
.hero-glass__orb {
|
|
66
|
+
position: absolute;
|
|
67
|
+
border-radius: 50%;
|
|
68
|
+
filter: blur(80px);
|
|
69
|
+
animation: orbFloat 10s ease-in-out infinite alternate;
|
|
70
|
+
}
|
|
71
|
+
.hero-glass__orb--1 {
|
|
72
|
+
width: 400px; height: 400px;
|
|
73
|
+
top: 10%; left: 15%;
|
|
74
|
+
background: rgba(184,134,11,0.15);
|
|
75
|
+
}
|
|
76
|
+
.hero-glass__orb--2 {
|
|
77
|
+
width: 300px; height: 300px;
|
|
78
|
+
top: 40%; right: 10%;
|
|
79
|
+
background: rgba(184,134,11,0.1);
|
|
80
|
+
animation-delay: 2s;
|
|
81
|
+
}
|
|
82
|
+
.hero-glass__orb--3 {
|
|
83
|
+
width: 250px; height: 250px;
|
|
84
|
+
bottom: 15%; left: 40%;
|
|
85
|
+
background: rgba(184,134,11,0.08);
|
|
86
|
+
animation-delay: 4s;
|
|
87
|
+
}
|
|
88
|
+
@keyframes orbFloat {
|
|
89
|
+
0% { transform: translate(0, 0) scale(1); }
|
|
90
|
+
50% { transform: translate(20px, -15px) scale(1.05); }
|
|
91
|
+
100% { transform: translate(-10px, 10px) scale(0.95); }
|
|
92
|
+
}
|
|
93
|
+
.hero-glass__card {
|
|
94
|
+
position: relative;
|
|
95
|
+
z-index: 1;
|
|
96
|
+
max-width: 700px;
|
|
97
|
+
margin: 0 auto;
|
|
98
|
+
padding: var(--sp-8);
|
|
99
|
+
background: rgba(10, 10, 10, 0.6);
|
|
100
|
+
backdrop-filter: blur(24px);
|
|
101
|
+
-webkit-backdrop-filter: blur(24px);
|
|
102
|
+
border: 1px solid rgba(255,255,255,0.1);
|
|
103
|
+
border-radius: var(--r-xl);
|
|
104
|
+
box-shadow: 0 24px 80px rgba(0,0,0,0.5),
|
|
105
|
+
inset 0 1px 0 rgba(255,255,255,0.05);
|
|
106
|
+
display: flex;
|
|
107
|
+
flex-direction: column;
|
|
108
|
+
align-items: center;
|
|
109
|
+
gap: var(--sp-6);
|
|
110
|
+
}
|
|
111
|
+
.hero-glass__title {
|
|
112
|
+
font-size: clamp(2rem, 4vw, 3rem);
|
|
113
|
+
font-weight: 900;
|
|
114
|
+
color: var(--c-text-1);
|
|
115
|
+
letter-spacing: -0.03em;
|
|
116
|
+
line-height: 1.1;
|
|
117
|
+
margin: 0;
|
|
118
|
+
text-align: center;
|
|
119
|
+
}
|
|
120
|
+
.hero-glass__subtitle {
|
|
121
|
+
font-size: 1.05rem;
|
|
122
|
+
color: var(--c-text-2);
|
|
123
|
+
line-height: 1.6;
|
|
124
|
+
margin: 0;
|
|
125
|
+
text-align: center;
|
|
126
|
+
max-width: 500px;
|
|
127
|
+
}
|
|
128
|
+
.hero-glass__actions {
|
|
129
|
+
display: flex;
|
|
130
|
+
gap: var(--sp-4);
|
|
131
|
+
flex-wrap: wrap;
|
|
132
|
+
justify-content: center;
|
|
133
|
+
margin-top: var(--sp-4);
|
|
134
|
+
}
|
|
135
|
+
.hero-glass__btn {
|
|
136
|
+
display: inline-flex;
|
|
137
|
+
align-items: center;
|
|
138
|
+
gap: var(--sp-2);
|
|
139
|
+
padding: 0.8rem 1.6rem;
|
|
140
|
+
font-size: 0.9rem;
|
|
141
|
+
font-weight: 600;
|
|
142
|
+
font-family: var(--font-sans);
|
|
143
|
+
border-radius: var(--r-md);
|
|
144
|
+
cursor: pointer;
|
|
145
|
+
transition: all 0.25s ease;
|
|
146
|
+
}
|
|
147
|
+
.hero-glass__btn--primary {
|
|
148
|
+
background: linear-gradient(135deg, var(--c-primary-light), var(--c-primary));
|
|
149
|
+
color: #0a0a0a;
|
|
150
|
+
border: none;
|
|
151
|
+
box-shadow: 0 4px 20px rgba(184,134,11,0.3);
|
|
152
|
+
}
|
|
153
|
+
.hero-glass__btn--primary:hover {
|
|
154
|
+
transform: translateY(-2px);
|
|
155
|
+
box-shadow: 0 8px 30px rgba(184,134,11,0.45);
|
|
156
|
+
}
|
|
157
|
+
.hero-glass__btn--secondary {
|
|
158
|
+
background: rgba(255,255,255,0.05);
|
|
159
|
+
color: var(--c-text-1);
|
|
160
|
+
border: 1px solid rgba(255,255,255,0.12);
|
|
161
|
+
}
|
|
162
|
+
.hero-glass__btn--secondary:hover {
|
|
163
|
+
background: rgba(255,255,255,0.1);
|
|
164
|
+
border-color: rgba(184,134,11,0.3);
|
|
165
|
+
transform: translateY(-2px);
|
|
166
|
+
}
|
|
167
|
+
.hero-glass__trust {
|
|
168
|
+
display: flex;
|
|
169
|
+
align-items: center;
|
|
170
|
+
gap: var(--sp-3);
|
|
171
|
+
font-size: 0.8rem;
|
|
172
|
+
color: var(--c-text-3);
|
|
173
|
+
padding-top: var(--sp-3);
|
|
174
|
+
border-top: 1px solid rgba(255,255,255,0.06);
|
|
175
|
+
}
|
|
176
|
+
.hero-glass__avatars { display: flex; }
|
|
177
|
+
.hero-glass__avatar {
|
|
178
|
+
width: 28px; height: 28px;
|
|
179
|
+
border-radius: 50%;
|
|
180
|
+
background: linear-gradient(135deg, var(--c-primary), var(--c-primary-light));
|
|
181
|
+
color: #0a0a0a;
|
|
182
|
+
display: flex;
|
|
183
|
+
align-items: center;
|
|
184
|
+
justify-content: center;
|
|
185
|
+
font-size: 0.65rem;
|
|
186
|
+
font-weight: 700;
|
|
187
|
+
border: 2px solid rgba(10,10,10,0.8);
|
|
188
|
+
margin-left: -8px;
|
|
189
|
+
}
|
|
190
|
+
.hero-glass__avatar:first-child { margin-left: 0; }
|
|
191
|
+
.hero-glass__avatar--more {
|
|
192
|
+
background: rgba(255,255,255,0.1);
|
|
193
|
+
color: var(--c-text-3);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
@media (max-width: 640px) {
|
|
197
|
+
.hero-glass { min-height: 75vh; padding: var(--sp-8) var(--sp-4); }
|
|
198
|
+
.hero-glass__card { padding: var(--sp-6); }
|
|
199
|
+
.hero-glass__actions { flex-direction: column; width: 100%; max-width: 260px; }
|
|
200
|
+
.hero-glass__btn { width: 100%; justify-content: center; }
|
|
201
|
+
}
|
|
202
|
+
</style>
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
---
|
|
2
|
+
// HeroGradient.astro — Full-screen hero with animated gradient background
|
|
3
|
+
interface Props {
|
|
4
|
+
title?: string;
|
|
5
|
+
subtitle?: string;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
const {
|
|
9
|
+
title = "Build Beautiful Interfaces",
|
|
10
|
+
subtitle = "Premium open-source UI components for Astro. Copy, paste, and ship faster.",
|
|
11
|
+
} = Astro.props;
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
<section class="hero-gradient">
|
|
15
|
+
<div class="hero-gradient__bg" aria-hidden="true"></div>
|
|
16
|
+
<div class="hero-gradient__content">
|
|
17
|
+
<span class="hero-gradient__badge">⚡ 200+ Components</span>
|
|
18
|
+
<h1 class="hero-gradient__title">{title}</h1>
|
|
19
|
+
<p class="hero-gradient__subtitle">{subtitle}</p>
|
|
20
|
+
<div class="hero-gradient__actions">
|
|
21
|
+
<button class="hero-btn hero-btn--primary">
|
|
22
|
+
Get Started
|
|
23
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
|
|
24
|
+
</button>
|
|
25
|
+
<button class="hero-btn hero-btn--glass">
|
|
26
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77 5.44 5.44 0 0 0 3.5 8.53a5.44 5.44 0 0 0-.09 2.61 3.37 3.37 0 0 0-.94 2.61s3.3 1.19 6.44 1.54"/><path d="M9 19c0 2.3 1.8 4.2 4 4.2s4-1.9 4-4.2"/></svg>
|
|
27
|
+
View on GitHub
|
|
28
|
+
</button>
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
</section>
|
|
32
|
+
|
|
33
|
+
<style>
|
|
34
|
+
.hero-gradient {
|
|
35
|
+
position: relative;
|
|
36
|
+
min-height: 90vh;
|
|
37
|
+
display: flex;
|
|
38
|
+
align-items: center;
|
|
39
|
+
justify-content: center;
|
|
40
|
+
overflow: hidden;
|
|
41
|
+
padding: var(--sp-12) var(--sp-6);
|
|
42
|
+
}
|
|
43
|
+
.hero-gradient__bg {
|
|
44
|
+
position: absolute;
|
|
45
|
+
inset: 0;
|
|
46
|
+
background: linear-gradient(
|
|
47
|
+
135deg,
|
|
48
|
+
rgba(184, 134, 11, 0.25) 0%,
|
|
49
|
+
transparent 40%,
|
|
50
|
+
transparent 60%,
|
|
51
|
+
rgba(184, 134, 11, 0.15) 100%
|
|
52
|
+
);
|
|
53
|
+
animation: gradientShift 8s ease-in-out infinite alternate;
|
|
54
|
+
}
|
|
55
|
+
@keyframes gradientShift {
|
|
56
|
+
0% { opacity: 0.6; transform: scale(1); }
|
|
57
|
+
100% { opacity: 1; transform: scale(1.1); }
|
|
58
|
+
}
|
|
59
|
+
.hero-gradient__content {
|
|
60
|
+
position: relative;
|
|
61
|
+
z-index: 1;
|
|
62
|
+
display: flex;
|
|
63
|
+
flex-direction: column;
|
|
64
|
+
align-items: center;
|
|
65
|
+
gap: var(--sp-6);
|
|
66
|
+
text-align: center;
|
|
67
|
+
max-width: 800px;
|
|
68
|
+
}
|
|
69
|
+
.hero-gradient__badge {
|
|
70
|
+
display: inline-block;
|
|
71
|
+
padding: 0.4rem 1rem;
|
|
72
|
+
font-size: 0.8rem;
|
|
73
|
+
font-weight: 700;
|
|
74
|
+
text-transform: uppercase;
|
|
75
|
+
letter-spacing: 0.08em;
|
|
76
|
+
color: var(--c-primary-light);
|
|
77
|
+
background: rgba(184,134,11,0.12);
|
|
78
|
+
border: 1px solid rgba(184,134,11,0.3);
|
|
79
|
+
border-radius: var(--r-full);
|
|
80
|
+
}
|
|
81
|
+
.hero-gradient__title {
|
|
82
|
+
font-size: clamp(2.5rem, 5vw, 4rem);
|
|
83
|
+
font-weight: 900;
|
|
84
|
+
color: var(--c-text-1);
|
|
85
|
+
letter-spacing: -0.03em;
|
|
86
|
+
line-height: 1.1;
|
|
87
|
+
margin: 0;
|
|
88
|
+
}
|
|
89
|
+
.hero-gradient__subtitle {
|
|
90
|
+
font-size: clamp(1rem, 2vw, 1.2rem);
|
|
91
|
+
color: var(--c-text-2);
|
|
92
|
+
line-height: 1.6;
|
|
93
|
+
max-width: 550px;
|
|
94
|
+
margin: 0;
|
|
95
|
+
}
|
|
96
|
+
.hero-gradient__actions {
|
|
97
|
+
display: flex;
|
|
98
|
+
gap: var(--sp-4);
|
|
99
|
+
flex-wrap: wrap;
|
|
100
|
+
justify-content: center;
|
|
101
|
+
margin-top: var(--sp-2);
|
|
102
|
+
}
|
|
103
|
+
.hero-btn {
|
|
104
|
+
display: inline-flex;
|
|
105
|
+
align-items: center;
|
|
106
|
+
gap: var(--sp-2);
|
|
107
|
+
padding: 0.85rem 1.8rem;
|
|
108
|
+
font-size: 0.95rem;
|
|
109
|
+
font-weight: 600;
|
|
110
|
+
font-family: var(--font-sans);
|
|
111
|
+
border: none;
|
|
112
|
+
border-radius: var(--r-md);
|
|
113
|
+
cursor: pointer;
|
|
114
|
+
transition: all 0.25s ease;
|
|
115
|
+
text-decoration: none;
|
|
116
|
+
}
|
|
117
|
+
.hero-btn--primary {
|
|
118
|
+
background: linear-gradient(135deg, var(--c-primary-light), var(--c-primary));
|
|
119
|
+
color: #0a0a0a;
|
|
120
|
+
box-shadow: 0 4px 24px rgba(184,134,11,0.3);
|
|
121
|
+
}
|
|
122
|
+
.hero-btn--primary:hover {
|
|
123
|
+
transform: translateY(-2px);
|
|
124
|
+
box-shadow: 0 8px 32px rgba(184,134,11,0.45);
|
|
125
|
+
}
|
|
126
|
+
.hero-btn--glass {
|
|
127
|
+
background: rgba(255,255,255,0.05);
|
|
128
|
+
backdrop-filter: blur(12px);
|
|
129
|
+
color: var(--c-text-1);
|
|
130
|
+
border: 1px solid rgba(255,255,255,0.12);
|
|
131
|
+
}
|
|
132
|
+
.hero-btn--glass:hover {
|
|
133
|
+
background: rgba(255,255,255,0.1);
|
|
134
|
+
border-color: rgba(184,134,11,0.3);
|
|
135
|
+
transform: translateY(-2px);
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
@media (max-width: 640px) {
|
|
139
|
+
.hero-gradient { min-height: 70vh; padding: var(--sp-8) var(--sp-4); }
|
|
140
|
+
.hero-gradient__actions { flex-direction: column; width: 100%; max-width: 280px; }
|
|
141
|
+
.hero-btn { width: 100%; justify-content: center; }
|
|
142
|
+
}
|
|
143
|
+
</style>
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
---
|
|
2
|
+
// HeroSplit.astro — Split-screen hero with image/media side
|
|
3
|
+
interface Props {
|
|
4
|
+
title?: string;
|
|
5
|
+
subtitle?: string;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
const {
|
|
9
|
+
title = "Ship Faster with Premium Components",
|
|
10
|
+
subtitle = "Stop building from scratch. Use production-ready, accessible, and responsive components.",
|
|
11
|
+
} = Astro.props;
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
<section class="hero-split">
|
|
15
|
+
<div class="hero-split__content">
|
|
16
|
+
<span class="hero-split__badge">Open Source · MIT</span>
|
|
17
|
+
<h1 class="hero-split__title">{title}</h1>
|
|
18
|
+
<p class="hero-split__subtitle">{subtitle}</p>
|
|
19
|
+
<div class="hero-split__actions">
|
|
20
|
+
<button class="hero-split__btn hero-split__btn--primary">
|
|
21
|
+
Start Building
|
|
22
|
+
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5"><path d="M5 12h14M12 5l7 7-7 7"/></svg>
|
|
23
|
+
</button>
|
|
24
|
+
<button class="hero-split__btn hero-split__btn--ghost">
|
|
25
|
+
Documentation
|
|
26
|
+
</button>
|
|
27
|
+
</div>
|
|
28
|
+
<div class="hero-split__stats">
|
|
29
|
+
<div class="hero-split__stat">
|
|
30
|
+
<span class="hero-split__stat-num">200+</span>
|
|
31
|
+
<span class="hero-split__stat-label">Components</span>
|
|
32
|
+
</div>
|
|
33
|
+
<div class="hero-split__stat">
|
|
34
|
+
<span class="hero-split__stat-num">10K+</span>
|
|
35
|
+
<span class="hero-split__stat-label">Downloads</span>
|
|
36
|
+
</div>
|
|
37
|
+
<div class="hero-split__stat">
|
|
38
|
+
<span class="hero-split__stat-num">5K+</span>
|
|
39
|
+
<span class="hero-split__stat-label">Stars</span>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
<div class="hero-split__visual" aria-hidden="true">
|
|
44
|
+
<div class="hero-split__visual-inner">
|
|
45
|
+
<div class="hero-split__mock-card">
|
|
46
|
+
<div class="hero-split__mock-body">
|
|
47
|
+
<div class="hero-split__mock-line hero-split__mock-line--wide"></div>
|
|
48
|
+
<div class="hero-split__mock-line hero-split__mock-line--medium"></div>
|
|
49
|
+
<div class="hero-split__mock-line hero-split__mock-line--short"></div>
|
|
50
|
+
<div class="hero-split__mock-grid">
|
|
51
|
+
<div class="hero-split__mock-box"></div>
|
|
52
|
+
<div class="hero-split__mock-box"></div>
|
|
53
|
+
<div class="hero-split__mock-box"></div>
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
</section>
|
|
60
|
+
|
|
61
|
+
<style>
|
|
62
|
+
.hero-split {
|
|
63
|
+
display: grid;
|
|
64
|
+
grid-template-columns: 1fr 1fr;
|
|
65
|
+
gap: var(--sp-12);
|
|
66
|
+
align-items: center;
|
|
67
|
+
min-height: 85vh;
|
|
68
|
+
padding: var(--sp-12) var(--sp-8);
|
|
69
|
+
position: relative;
|
|
70
|
+
}
|
|
71
|
+
.hero-split__content {
|
|
72
|
+
display: flex;
|
|
73
|
+
flex-direction: column;
|
|
74
|
+
gap: var(--sp-6);
|
|
75
|
+
max-width: 560px;
|
|
76
|
+
}
|
|
77
|
+
.hero-split__badge {
|
|
78
|
+
display: inline-block;
|
|
79
|
+
width: fit-content;
|
|
80
|
+
padding: 0.35rem 0.8rem;
|
|
81
|
+
font-size: 0.7rem;
|
|
82
|
+
font-weight: 700;
|
|
83
|
+
text-transform: uppercase;
|
|
84
|
+
letter-spacing: 0.1em;
|
|
85
|
+
color: var(--c-primary-light);
|
|
86
|
+
background: rgba(184,134,11,0.1);
|
|
87
|
+
border: 1px solid rgba(184,134,11,0.25);
|
|
88
|
+
border-radius: var(--r-full);
|
|
89
|
+
}
|
|
90
|
+
.hero-split__title {
|
|
91
|
+
font-size: clamp(2rem, 4vw, 3.2rem);
|
|
92
|
+
font-weight: 900;
|
|
93
|
+
color: var(--c-text-1);
|
|
94
|
+
letter-spacing: -0.03em;
|
|
95
|
+
line-height: 1.1;
|
|
96
|
+
margin: 0;
|
|
97
|
+
}
|
|
98
|
+
.hero-split__subtitle {
|
|
99
|
+
font-size: 1.05rem;
|
|
100
|
+
color: var(--c-text-2);
|
|
101
|
+
line-height: 1.6;
|
|
102
|
+
margin: 0;
|
|
103
|
+
}
|
|
104
|
+
.hero-split__actions {
|
|
105
|
+
display: flex;
|
|
106
|
+
gap: var(--sp-4);
|
|
107
|
+
flex-wrap: wrap;
|
|
108
|
+
margin-top: var(--sp-4);
|
|
109
|
+
}
|
|
110
|
+
.hero-split__btn {
|
|
111
|
+
display: inline-flex;
|
|
112
|
+
align-items: center;
|
|
113
|
+
gap: var(--sp-2);
|
|
114
|
+
padding: 0.75rem 1.5rem;
|
|
115
|
+
font-size: 0.9rem;
|
|
116
|
+
font-weight: 600;
|
|
117
|
+
font-family: var(--font-sans);
|
|
118
|
+
border-radius: var(--r-md);
|
|
119
|
+
cursor: pointer;
|
|
120
|
+
transition: all 0.25s ease;
|
|
121
|
+
text-decoration: none;
|
|
122
|
+
}
|
|
123
|
+
.hero-split__btn--primary {
|
|
124
|
+
background: linear-gradient(135deg, var(--c-primary-light), var(--c-primary));
|
|
125
|
+
color: #0a0a0a;
|
|
126
|
+
border: none;
|
|
127
|
+
box-shadow: 0 4px 20px rgba(184,134,11,0.25);
|
|
128
|
+
}
|
|
129
|
+
.hero-split__btn--primary:hover {
|
|
130
|
+
transform: translateY(-2px);
|
|
131
|
+
box-shadow: 0 8px 30px rgba(184,134,11,0.4);
|
|
132
|
+
}
|
|
133
|
+
.hero-split__btn--ghost {
|
|
134
|
+
background: transparent;
|
|
135
|
+
color: var(--c-text-2);
|
|
136
|
+
border: 1px solid var(--c-border);
|
|
137
|
+
}
|
|
138
|
+
.hero-split__btn--ghost:hover {
|
|
139
|
+
color: var(--c-text-1);
|
|
140
|
+
border-color: var(--c-primary-light);
|
|
141
|
+
}
|
|
142
|
+
.hero-split__stats {
|
|
143
|
+
display: flex;
|
|
144
|
+
gap: var(--sp-6);
|
|
145
|
+
margin-top: var(--sp-2);
|
|
146
|
+
padding-top: var(--sp-5);
|
|
147
|
+
border-top: 1px solid var(--c-border);
|
|
148
|
+
}
|
|
149
|
+
.hero-split__stat { display: flex; flex-direction: column; gap: 2px; }
|
|
150
|
+
.hero-split__stat-num {
|
|
151
|
+
font-size: 1.5rem;
|
|
152
|
+
font-weight: 800;
|
|
153
|
+
color: var(--c-primary-light);
|
|
154
|
+
}
|
|
155
|
+
.hero-split__stat-label {
|
|
156
|
+
font-size: 0.8rem;
|
|
157
|
+
color: var(--c-text-3);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/* Visual side */
|
|
161
|
+
.hero-split__visual {
|
|
162
|
+
display: flex;
|
|
163
|
+
align-items: center;
|
|
164
|
+
justify-content: center;
|
|
165
|
+
}
|
|
166
|
+
.hero-split__visual-inner {
|
|
167
|
+
width: 100%;
|
|
168
|
+
max-width: 500px;
|
|
169
|
+
}
|
|
170
|
+
.hero-split__mock-card {
|
|
171
|
+
background: rgba(255,255,255,0.03);
|
|
172
|
+
border: 1px solid var(--c-border);
|
|
173
|
+
border-radius: var(--r-lg);
|
|
174
|
+
overflow: hidden;
|
|
175
|
+
box-shadow: 0 20px 60px rgba(0,0,0,0.4);
|
|
176
|
+
}
|
|
177
|
+
.hero-split__mock-body { padding: var(--sp-5); }
|
|
178
|
+
.hero-split__mock-line {
|
|
179
|
+
height: 8px;
|
|
180
|
+
border-radius: 4px;
|
|
181
|
+
background: rgba(255,255,255,0.06);
|
|
182
|
+
margin-bottom: var(--sp-3);
|
|
183
|
+
}
|
|
184
|
+
.hero-split__mock-line--wide { width: 80%; }
|
|
185
|
+
.hero-split__mock-line--medium { width: 60%; }
|
|
186
|
+
.hero-split__mock-line--short { width: 40%; }
|
|
187
|
+
.hero-split__mock-grid {
|
|
188
|
+
display: grid;
|
|
189
|
+
grid-template-columns: repeat(3, 1fr);
|
|
190
|
+
gap: var(--sp-3);
|
|
191
|
+
margin-top: var(--sp-4);
|
|
192
|
+
}
|
|
193
|
+
.hero-split__mock-box {
|
|
194
|
+
height: 60px;
|
|
195
|
+
border-radius: var(--r-sm);
|
|
196
|
+
background: rgba(184,134,11,0.08);
|
|
197
|
+
border: 1px solid rgba(184,134,11,0.15);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
@media (max-width: 768px) {
|
|
201
|
+
.hero-split {
|
|
202
|
+
grid-template-columns: 1fr;
|
|
203
|
+
gap: var(--sp-8);
|
|
204
|
+
padding: var(--sp-8) var(--sp-4);
|
|
205
|
+
}
|
|
206
|
+
.hero-split__visual { order: -1; }
|
|
207
|
+
.hero-split__visual-inner { max-width: 100%; }
|
|
208
|
+
.hero-split__stats { gap: var(--sp-4); }
|
|
209
|
+
}
|
|
210
|
+
</style>
|