diff --git a/src/app/globals.css b/src/app/globals.css index ab9fa88..46d9fd3 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -1,53 +1,53 @@ @import "tailwindcss"; :root { - --background: 0 0% 100%; - --foreground: 0 0% 3.9%; - --card: 0 0% 100%; - --card-foreground: 0 0% 3.9%; - --popover: 0 0% 100%; - --popover-foreground: 0 0% 3.9%; - --primary: 0 0% 9%; - --primary-foreground: 0 0% 98%; - --secondary: 0 0% 96.1%; - --secondary-foreground: 0 0% 9%; - --muted: 0 0% 96.1%; - --muted-foreground: 0 0% 45.1%; - --accent: 0 0% 96.1%; - --accent-foreground: 0 0% 9%; - --destructive: 0 84.2% 60.2%; - --destructive-foreground: 0 0% 98%; - --border: 0 0% 89.8%; - --input: 0 0% 89.8%; - --ring: 0 0% 3.9%; - --chart-1: 12 76% 61%; - --chart-2: 173 58% 39%; - --chart-3: 197 37% 24%; - --chart-4: 43 74% 66%; - --chart-5: 27 87% 67%; - --radius: 0.5rem; -} - -.dark { - --background: 0 0% 3.9%; + --background: 0 0% 0%; --foreground: 0 0% 98%; --card: 0 0% 3.9%; --card-foreground: 0 0% 98%; --popover: 0 0% 3.9%; --popover-foreground: 0 0% 98%; - --primary: 0 0% 98%; + --primary: 188 100% 50%; --primary-foreground: 0 0% 9%; --secondary: 0 0% 14.9%; --secondary-foreground: 0 0% 98%; --muted: 0 0% 14.9%; --muted-foreground: 0 0% 63.9%; - --accent: 0 0% 14.9%; - --accent-foreground: 0 0% 98%; + --accent: 188 100% 50%; + --accent-foreground: 0 0% 9%; --destructive: 0 62.8% 30.6%; --destructive-foreground: 0 0% 98%; --border: 0 0% 14.9%; --input: 0 0% 14.9%; - --ring: 0 0% 83.1%; + --ring: 188 100% 50%; + --chart-1: 220 70% 50%; + --chart-2: 160 60% 45%; + --chart-3: 30 80% 55%; + --chart-4: 280 65% 60%; + --chart-5: 340 75% 55%; + --radius: 0.5rem; +} + +.dark { + --background: 0 0% 0%; + --foreground: 0 0% 98%; + --card: 0 0% 3.9%; + --card-foreground: 0 0% 98%; + --popover: 0 0% 3.9%; + --popover-foreground: 0 0% 98%; + --primary: 188 100% 50%; + --primary-foreground: 0 0% 9%; + --secondary: 0 0% 14.9%; + --secondary-foreground: 0 0% 98%; + --muted: 0 0% 14.9%; + --muted-foreground: 0 0% 63.9%; + --accent: 188 100% 50%; + --accent-foreground: 0 0% 9%; + --destructive: 0 62.8% 30.6%; + --destructive-foreground: 0 0% 98%; + --border: 0 0% 14.9%; + --input: 0 0% 14.9%; + --ring: 188 100% 50%; --chart-1: 220 70% 50%; --chart-2: 160 60% 45%; --chart-3: 30 80% 55%; @@ -58,6 +58,7 @@ @theme inline { --font-sans: var(--font-geist-sans); --font-mono: var(--font-geist-mono); + --font-brand: var(--font-bebas); --color-background: hsl(var(--background)); --color-foreground: hsl(var(--foreground)); --color-border: hsl(var(--border)); @@ -68,3 +69,10 @@ body { color: hsl(var(--foreground)); font-family: var(--font-sans), Arial, Helvetica, sans-serif; } + +.font-brand { + font-family: var(--font-brand), var(--font-sans), Arial, Helvetica, sans-serif; + font-weight: 900; + letter-spacing: 0.02em; + text-transform: uppercase; +} diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 31c6159..ab8a9d2 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,5 +1,5 @@ import type { Metadata } from "next"; -import { Geist, Geist_Mono } from "next/font/google"; +import { Geist, Geist_Mono, Bebas_Neue } from "next/font/google"; import "./globals.css"; import { Navigation } from "@/components/Navigation"; import { Footer } from "@/components/Footer"; @@ -18,6 +18,14 @@ const geistMono = Geist_Mono({ preload: true, }); +const bebasNeue = Bebas_Neue({ + variable: "--font-bebas", + subsets: ["latin"], + weight: "400", + display: "swap", + preload: true, +}); + export const metadata: Metadata = { title: "Biohazard VFX - Professional Visual Effects Studio", description: "Creating stunning visual effects for film, television, and digital media. Expert VFX, motion graphics, compositing, and 3D animation services.", @@ -55,7 +63,7 @@ export default function RootLayout({ }; return ( - + @@ -65,7 +73,7 @@ export default function RootLayout({ />
diff --git a/src/app/page.tsx b/src/app/page.tsx index 69aaba7..313a29d 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -1,131 +1,22 @@ -import Link from "next/link"; import { Hero } from "@/components/Hero"; -import { VideoPlayer } from "@/components/VideoPlayer"; -import { ProjectCard } from "@/components/ProjectCard"; -import { Button } from "@/components/ui/button"; -import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"; -import { Separator } from "@/components/ui/separator"; -import { projects, studioReel } from "@/data/projects"; -import { Sparkles, Zap, Award } from "lucide-react"; +import { ClientLogoGrid } from "@/components/ClientLogoGrid"; +import { ProjectShowcase } from "@/components/ProjectShowcase"; +import { MissionSection } from "@/components/MissionSection"; +import { ContactSection } from "@/components/ContactSection"; +import { BrandingSection } from "@/components/BrandingSection"; +import { projects } from "@/data/projects"; export default function Home() { const featuredProjects = projects.filter((p) => p.featured); return ( <> - - - {/* Studio Reel Section */} -
-
-

- Our Studio Reel -

-

- A showcase of our best work from the past year -

-
-
- -
-
- - - - {/* Featured Projects Section */} -
-
-

- Featured Projects -

-

- A selection of our recent work across film, commercial, and digital media -

-
-
- {featuredProjects.map((project) => ( - - ))} -
-
- -
-
- - - - {/* Capabilities Section */} -
-
-

- Our Capabilities -

-

- Comprehensive visual effects services backed by years of industry experience -

-
-
- - - - Industry-Leading Technology - - Utilizing the latest tools and techniques to deliver photorealistic VFX that seamlessly integrate with your footage. - - - - - - - Fast Turnaround - - Efficient pipeline and experienced team ensure your project stays on schedule without compromising quality. - - - - - - - Award-Winning Team - - Our artists have contributed to numerous award-winning productions across film and television. - - - -
-
- - {/* CTA Section */} -
- - -

- Ready to Bring Your Vision to Life? -

-

- Let's discuss your project and how we can help you create something extraordinary. -

-
- - -
-
-
-
+ + + + + + ); } diff --git a/src/components/BrandingSection.tsx b/src/components/BrandingSection.tsx new file mode 100644 index 0000000..f781507 --- /dev/null +++ b/src/components/BrandingSection.tsx @@ -0,0 +1,13 @@ +export function BrandingSection() { + return ( +
+
+
+

+ BIOHAZARD. +

+
+
+
+ ); +} diff --git a/src/components/ClientLogoGrid.tsx b/src/components/ClientLogoGrid.tsx new file mode 100644 index 0000000..26451ef --- /dev/null +++ b/src/components/ClientLogoGrid.tsx @@ -0,0 +1,29 @@ +export function ClientLogoGrid() { + const clientLogos = [ + "Vercel", "NEXT", "scale", "APOLLO", "Calcom", "Linear", + "knock", "FLOX", "trunk", "Replay", "Graphite", "spiral", + "haastes", "CURSOR", "KREA", "Harvey", "ElevenLabs", "Black Forest Labs", + "Superplastic", "Triplicate", "SOLANA", "Basement", "MY BEAST", "EDGELORD", + "VIRTUAL REALITY", "VIVID", "SHADCN", "KARMA", "G" + ]; + + return ( +
+
+

+ Trusted by basement. +

+
+ {clientLogos.map((logo, index) => ( +
+ {logo} +
+ ))} +
+
+
+ ); +} diff --git a/src/components/ContactSection.tsx b/src/components/ContactSection.tsx new file mode 100644 index 0000000..f9292df --- /dev/null +++ b/src/components/ContactSection.tsx @@ -0,0 +1,20 @@ +export function ContactSection() { + return ( +
+
+ {/* Hatched bar */} +
+
+
contact
+

Let's make an impact together.

+ + hello@basement.studio + +
+
+
+ ); +} diff --git a/src/components/Footer.tsx b/src/components/Footer.tsx index 03c7ca1..cd2ef36 100644 --- a/src/components/Footer.tsx +++ b/src/components/Footer.tsx @@ -4,81 +4,31 @@ import { Separator } from "@/components/ui/separator"; export function Footer() { const currentYear = new Date().getFullYear(); + const footerLinks = [ + { href: "/", label: "Home" }, + { href: "/services", label: "Services" }, + { href: "/portfolio", label: "Showcase" }, + { href: "/about", label: "People" }, + { href: "#", label: "Blog" }, + { href: "#", label: "Lab" }, + { href: "/contact", label: "Contact Us" }, + ]; + return ( -
-
-
-
-

Biohazard VFX

-

- Creating stunning visual effects for film, television, and digital media. -

-
- -
-

Navigation

-
    -
  • - - Home - -
  • -
  • - - About - -
  • -
  • - - Services - -
  • -
  • - - Portfolio - -
  • -
-
- -
-

Services

-
    -
  • Visual Effects
  • -
  • Motion Graphics
  • -
  • Compositing
  • -
  • 3D Animation
  • -
-
- -
-

Contact

-
    -
  • - - Get in Touch - -
  • -
  • info@biohazardvfx.com
  • -
-
-
- - - -
-

- © {currentYear} Biohazard VFX. All rights reserved. -

-
- - Privacy Policy +
+
+
+ {footerLinks.map((link) => ( + + {link.label} - - Terms of Service - -
+ ))}
+

© {currentYear} Basement

); diff --git a/src/components/Hero.tsx b/src/components/Hero.tsx index c746768..a926bdb 100644 --- a/src/components/Hero.tsx +++ b/src/components/Hero.tsx @@ -1,40 +1,39 @@ -import Link from "next/link"; -import { Button } from "@/components/ui/button"; - interface HeroProps { - title: string; - subtitle: string; - ctaText?: string; - ctaLink?: string; - secondaryCtaText?: string; - secondaryCtaLink?: string; + videoSrc?: string; } -export function Hero({ - title, - subtitle, - ctaText = "View Portfolio", - ctaLink = "/portfolio", - secondaryCtaText = "Get in Touch", - secondaryCtaLink = "/contact", -}: HeroProps) { +export function Hero({ videoSrc = "/hero-video.mp4" }: HeroProps) { return ( -
-
-

- {title} -

-

- {subtitle} -

-
-
- - +
+ {/* Video Background */} + + + {/* Gradient + dark overlay to match mockup */} +
+ + {/* Content bottom-aligned */} +
+
+
+

+ A digital studio & branding powerhouse +
+ making cool shit that performs. +

+

+ We partner with the world's most ambitious brands to create powerful brands to unlock their full potential. We go beyond design to create compelling, strategic brand image. +

+
+
); diff --git a/src/components/MissionSection.tsx b/src/components/MissionSection.tsx new file mode 100644 index 0000000..884f702 --- /dev/null +++ b/src/components/MissionSection.tsx @@ -0,0 +1,43 @@ +export function MissionSection() { + return ( +
+
+
+

+ We're here to create the extraordinary. No shortcuts, just bold, precision-engineered work that elevates the game & leaves a mark. +

+
+ +
+
+

Website & Features

+

+ From sleek landing pages to complex web applications, we create responsive, user-friendly websites that look great and function flawlessly on any device. +

+
+ +
+

Visual Branding

+

+ From logo identities to comprehensive brand guidelines, we build brands that tell a story, resonate with audiences, and stand out in the market. +

+
+ +
+

UI/UX Design

+

+ We craft intuitive and engaging user interfaces that prioritize usability and accessibility, ensuring a seamless and enjoyable experience for every user. +

+
+ +
+

Marketing & Growth

+

+ From social media campaigns to SEO optimization, we develop strategies that drive traffic, generate leads, and boost conversions for your business. +

+
+
+
+
+ ); +} diff --git a/src/components/Navigation.tsx b/src/components/Navigation.tsx index 65b3f09..e5db3cc 100644 --- a/src/components/Navigation.tsx +++ b/src/components/Navigation.tsx @@ -22,10 +22,10 @@ export function Navigation() { ]; return ( -
+
- Biohazard VFX + basement. @@ -33,7 +33,7 @@ export function Navigation() { {navItems.map((item) => ( - + {item.label} diff --git a/src/components/ProjectShowcase.tsx b/src/components/ProjectShowcase.tsx new file mode 100644 index 0000000..2294f90 --- /dev/null +++ b/src/components/ProjectShowcase.tsx @@ -0,0 +1,41 @@ +import { Project } from "@/data/projects"; + +interface ProjectShowcaseProps { + projects: Project[]; +} + +export function ProjectShowcase({ projects }: ProjectShowcaseProps) { + return ( +
+
+

Featured Projects

+ +
+ {projects.map((project) => ( +
+ {/* Image left */} +
+
+ {project.title} +
+
+ {/* Right-side label and description */} +
+
+
{project.title}
+
+

+ {project.description} +

+
+
+ ))} +
+
+
+ ); +} diff --git a/src/data/projects.ts b/src/data/projects.ts index dc7a5b5..ea8c36d 100644 --- a/src/data/projects.ts +++ b/src/data/projects.ts @@ -13,47 +13,47 @@ export interface Project { export const projects: Project[] = [ { id: "1", - title: "Cinematic VFX Breakdown", - description: "High-end visual effects for feature film production", - category: "Film", + title: "Wound Shop", + description: "Partnering with Wound Shop means building the fastest, most performant websites. We craft beautiful, responsive designs that make for an enjoyable user experience.", + category: "Web Development", thumbnailUrl: "https://images.unsplash.com/photo-1536440136628-849c177e76a1?w=800&q=80", videoUrl: "https://www.youtube.com/embed/dQw4w9WgXcQ", aspectRatio: 16 / 9, featured: true, - tags: ["VFX", "Film", "CGI"], + tags: ["Web", "Development", "Design"], }, { id: "2", - title: "Commercial Product Spot", - description: "Stunning product visualization and motion graphics", - category: "Commercial", + title: "Daylight", + description: "A bold vision needs a strong launch. We crafted a dynamic brand identity for Daylight, ensuring it captured their innovative spirit and stood out in a crowded market, establishing a fresh, modern, and trustworthy presence.", + category: "Branding", thumbnailUrl: "https://images.unsplash.com/photo-1492691527719-9d1e07e534b4?w=800&q=80", videoUrl: "https://www.youtube.com/embed/dQw4w9WgXcQ", aspectRatio: 1, featured: true, - tags: ["Commercial", "Motion Graphics"], + tags: ["Branding", "Identity", "Launch"], }, { id: "3", - title: "Music Video Effects", - description: "Creative visual effects for music production", - category: "Music Video", + title: "KidSuper", + description: "Working with KidSuper, we developed a vibrant and playful brand identity that reflects their unique approach to fashion. Our designs brought their creative vision to life, ensuring a cohesive and memorable brand experience.", + category: "Fashion", thumbnailUrl: "https://images.unsplash.com/photo-1511379938547-c1f69419868d?w=800&q=80", videoUrl: "https://www.youtube.com/embed/dQw4w9WgXcQ", aspectRatio: 9 / 16, featured: true, - tags: ["Music Video", "Creative"], + tags: ["Fashion", "Creative", "Brand"], }, { id: "4", - title: "Sci-Fi Environment Design", - description: "Futuristic world building and environment creation", - category: "Film", + title: "Shop MrBeast", + description: "The world's biggest YouTuber needed a storefront that could keep up. We built a robust e-commerce platform for MrBeast, handling massive traffic and ensuring a seamless shopping experience for his millions of fans.", + category: "E-commerce", thumbnailUrl: "https://images.unsplash.com/photo-1451187580459-43490279c0fa?w=800&q=80", videoUrl: "https://www.youtube.com/embed/dQw4w9WgXcQ", aspectRatio: 21 / 9, - featured: false, - tags: ["VFX", "Environment", "3D"], + featured: true, + tags: ["E-commerce", "Platform", "Scale"], }, { id: "5",