| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="UTF-8"> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| <title>Vintage Portfolio</title> |
| <script src="https://cdn.tailwindcss.com"></script> |
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> |
| <style> |
| @import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Old+Standard+TT:wght@400;700&display=swap'); |
| |
| body { |
| font-family: 'Old Standard TT', serif; |
| background-color: #f5f5f5; |
| color: #333; |
| background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1IiBoZWlnaHQ9IjUiPgo8cmVjdCB3aWR0aD0iNSIgaGVpZ2h0PSI1IiBmaWxsPSIjZmZmIj48L3JlY3Q+CjxwYXRoIGQ9Ik0wIDVMNSAwWk02IDRMNCA2Wk0tMSAxTDEgLTFaIiBzdHJva2U9IiNlMWUxZTEiIHN0cm9rZS13aWR0aD0iMSI+PC9wYXRoPgo8L3N2Zz4='); |
| } |
| |
| .vintage-border { |
| border: 8px solid transparent; |
| border-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><rect x="0" y="0" width="100" height="100" fill="none" stroke="%23d4af37" stroke-width="8"/></svg>') 8; |
| } |
| |
| .vintage-card { |
| background: rgba(255, 253, 245, 0.9); |
| box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); |
| transition: all 0.3s ease; |
| border-top: 3px solid #d4af37; |
| } |
| |
| .vintage-card:hover { |
| transform: translateY(-5px); |
| box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15); |
| } |
| |
| .vintage-title { |
| font-family: 'Playfair Display', serif; |
| position: relative; |
| display: inline-block; |
| } |
| |
| .vintage-title:after { |
| content: ''; |
| position: absolute; |
| width: 100%; |
| height: 2px; |
| bottom: -5px; |
| left: 0; |
| background-color: #d4af37; |
| transform: scaleX(0); |
| transition: transform 0.3s ease; |
| } |
| |
| .vintage-title:hover:after { |
| transform: scaleX(1); |
| } |
| |
| .sepia-filter { |
| filter: sepia(30%) contrast(110%) brightness(90%); |
| } |
| |
| .vintage-button { |
| background: linear-gradient(to bottom, #f5f5f5, #e0e0e0); |
| border: 1px solid #d4af37; |
| color: #333; |
| padding: 8px 20px; |
| font-family: 'Old Standard TT', serif; |
| position: relative; |
| overflow: hidden; |
| transition: all 0.3s ease; |
| } |
| |
| .vintage-button:hover { |
| background: linear-gradient(to bottom, #e0e0e0, #d0d0d0); |
| color: #000; |
| box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); |
| } |
| |
| .vintage-button:active { |
| transform: translateY(1px); |
| } |
| |
| .vintage-nav { |
| background: rgba(255, 253, 245, 0.95); |
| box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); |
| } |
| |
| .vintage-nav-link { |
| position: relative; |
| } |
| |
| .vintage-nav-link:after { |
| content: ''; |
| position: absolute; |
| width: 0; |
| height: 2px; |
| bottom: 0; |
| left: 0; |
| background-color: #d4af37; |
| transition: width 0.3s ease; |
| } |
| |
| .vintage-nav-link:hover:after { |
| width: 100%; |
| } |
| |
| .timeline-item { |
| position: relative; |
| padding-left: 30px; |
| margin-bottom: 30px; |
| } |
| |
| .timeline-item:before { |
| content: ''; |
| position: absolute; |
| left: 0; |
| top: 5px; |
| width: 15px; |
| height: 15px; |
| border-radius: 50%; |
| background: #d4af37; |
| border: 3px solid #f5f5f5; |
| } |
| |
| .timeline-item:after { |
| content: ''; |
| position: absolute; |
| left: 7px; |
| top: 20px; |
| width: 1px; |
| height: calc(100% - 20px); |
| background: #d4af37; |
| } |
| |
| .timeline-item:last-child:after { |
| display: none; |
| } |
| </style> |
| </head> |
| <body class="antialiased"> |
| |
| <nav class="vintage-nav fixed w-full z-10"> |
| <div class="container mx-auto px-6 py-4"> |
| <div class="flex items-center justify-between"> |
| <div class="text-2xl font-bold text-gray-800 vintage-title">JAMES WILKERSON</div> |
| <div class="hidden md:flex space-x-8"> |
| <a href="#home" class="vintage-nav-link text-gray-700 hover:text-gray-900">Home</a> |
| <a href="#about" class="vintage-nav-link text-gray-700 hover:text-gray-900">About</a> |
| <a href="#portfolio" class="vintage-nav-link text-gray-700 hover:text-gray-900">Portfolio</a> |
| <a href="#experience" class="vintage-nav-link text-gray-700 hover:text-gray-900">Experience</a> |
| <a href="#contact" class="vintage-nav-link text-gray-700 hover:text-gray-900">Contact</a> |
| </div> |
| <div class="md:hidden"> |
| <button class="text-gray-700 focus:outline-none"> |
| <i class="fas fa-bars text-2xl"></i> |
| </button> |
| </div> |
| </div> |
| </div> |
| </nav> |
|
|
| |
| <section id="home" class="pt-32 pb-20 px-6"> |
| <div class="container mx-auto vintage-border p-8 bg-white bg-opacity-90"> |
| <div class="flex flex-col md:flex-row items-center"> |
| <div class="md:w-1/2 mb-10 md:mb-0"> |
| <img src="https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?ixlib=rb-1.2.1&auto=format&fit=crop&w=634&q=80" |
| alt="Portrait" |
| class="w-64 h-64 object-cover rounded-full sepia-filter mx-auto md:mx-0 border-4 border-double border-gray-300"> |
| </div> |
| <div class="md:w-1/2 md:pl-12 text-center md:text-left"> |
| <h1 class="text-4xl md:text-5xl font-bold mb-4 vintage-title">James Wilkerson</h1> |
| <h2 class="text-2xl md:text-3xl mb-6 text-gray-600">Vintage Photographer & Designer</h2> |
| <p class="text-lg mb-8 leading-relaxed">Capturing timeless moments with a classic touch. Specializing in film photography, retro design, and creating memories that last generations.</p> |
| <div class="flex space-x-4 justify-center md:justify-start"> |
| <a href="#portfolio" class="vintage-button">View Work</a> |
| <a href="#contact" class="vintage-button">Hire Me</a> |
| </div> |
| </div> |
| </div> |
| </div> |
| </section> |
|
|
| |
| <section id="about" class="py-20 px-6 bg-gray-100 bg-opacity-50"> |
| <div class="container mx-auto"> |
| <h2 class="text-3xl font-bold text-center mb-16 vintage-title">About Me</h2> |
| <div class="flex flex-col md:flex-row"> |
| <div class="md:w-1/2 mb-10 md:mb-0 md:pr-10"> |
| <div class="vintage-card p-8 h-full"> |
| <h3 class="text-2xl font-bold mb-4 text-gray-800">My Story</h3> |
| <p class="mb-4 leading-relaxed">Born and raised in a small coastal town, I developed an early appreciation for the beauty in everyday moments. My grandfather's old Leica camera was my first love, sparking a passion that would shape my life.</p> |
| <p class="mb-4 leading-relaxed">After studying fine arts at the Rhode Island School of Design, I spent a decade traveling the world, documenting cultures and landscapes with my trusted film cameras.</p> |
| <p class="leading-relaxed">Today, I blend traditional techniques with modern sensibilities to create work that feels both nostalgic and fresh.</p> |
| </div> |
| </div> |
| <div class="md:w-1/2 md:pl-10"> |
| <div class="vintage-card p-8 h-full"> |
| <h3 class="text-2xl font-bold mb-6 text-gray-800">My Skills</h3> |
| <div class="mb-6"> |
| <h4 class="text-lg font-semibold mb-2">Film Photography</h4> |
| <div class="w-full bg-gray-200 rounded-full h-2.5"> |
| <div class="bg-amber-700 h-2.5 rounded-full" style="width: 95%"></div> |
| </div> |
| </div> |
| <div class="mb-6"> |
| <h4 class="text-lg font-semibold mb-2">Darkroom Processing</h4> |
| <div class="w-full bg-gray-200 rounded-full h-2.5"> |
| <div class="bg-amber-700 h-2.5 rounded-full" style="width: 90%"></div> |
| </div> |
| </div> |
| <div class="mb-6"> |
| <h4 class="text-lg font-semibold mb-2">Vintage Retouching</h4> |
| <div class="w-full bg-gray-200 rounded-full h-2.5"> |
| <div class="bg-amber-700 h-2.5 rounded-full" style="width: 85%"></div> |
| </div> |
| </div> |
| <div class="mb-6"> |
| <h4 class="text-lg font-semibold mb-2">Analog Design</h4> |
| <div class="w-full bg-gray-200 rounded-full h-2.5"> |
| <div class="bg-amber-700 h-2.5 rounded-full" style="width: 80%"></div> |
| </div> |
| </div> |
| <div> |
| <h4 class="text-lg font-semibold mb-2">Typography</h4> |
| <div class="w-full bg-gray-200 rounded-full h-2.5"> |
| <div class="bg-amber-700 h-2.5 rounded-full" style="width: 75%"></div> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| </section> |
|
|
| |
| <section id="portfolio" class="py-20 px-6"> |
| <div class="container mx-auto"> |
| <h2 class="text-3xl font-bold text-center mb-16 vintage-title">My Portfolio</h2> |
| <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8"> |
| |
| <div class="vintage-card overflow-hidden"> |
| <img src="https://images.unsplash.com/photo-1506744038136-46273834b3fb?ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80" |
| alt="Mountain Landscape" |
| class="w-full h-64 object-cover sepia-filter hover:sepia-0 transition-all duration-500"> |
| <div class="p-6"> |
| <h3 class="text-xl font-bold mb-2">Alpine Memories</h3> |
| <p class="text-gray-600 mb-4">35mm film, 2019</p> |
| <p class="text-gray-700">Captured during a summer trek through the Swiss Alps using Kodak Portra 400.</p> |
| </div> |
| </div> |
| |
| |
| <div class="vintage-card overflow-hidden"> |
| <img src="https://images.unsplash.com/photo-1519125323398-675f0ddb6308?ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80" |
| alt="Urban Portrait" |
| class="w-full h-64 object-cover sepia-filter hover:sepia-0 transition-all duration-500"> |
| <div class="p-6"> |
| <h3 class="text-xl font-bold mb-2">Metropolitan Souls</h3> |
| <p class="text-gray-600 mb-4">Medium format, 2020</p> |
| <p class="text-gray-700">A series of portraits shot on Ilford HP5 in downtown Chicago.</p> |
| </div> |
| </div> |
| |
| |
| <div class="vintage-card overflow-hidden"> |
| <img src="https://images.unsplash.com/photo-1501785888041-af3ef285b470?ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80" |
| alt="Seaside" |
| class="w-full h-64 object-cover sepia-filter hover:sepia-0 transition-all duration-500"> |
| <div class="p-6"> |
| <h3 class="text-xl font-bold mb-2">Coastal Reverie</h3> |
| <p class="text-gray-600 mb-4">Large format, 2018</p> |
| <p class="text-gray-700">Long exposure seascapes captured at dawn using a 4x5 field camera.</p> |
| </div> |
| </div> |
| |
| |
| <div class="vintage-card overflow-hidden"> |
| <img src="https://images.unsplash.com/photo-1470071459604-3b5ec3a7fe05?ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80" |
| alt="Forest" |
| class="w-full h-64 object-cover sepia-filter hover:sepia-0 transition-all duration-500"> |
| <div class="p-6"> |
| <h3 class="text-xl font-bold mb-2">Enchanted Woods</h3> |
| <p class="text-gray-600 mb-4">Infrared film, 2021</p> |
| <p class="text-gray-700">Experimental infrared photography in the Pacific Northwest rainforests.</p> |
| </div> |
| </div> |
| |
| |
| <div class="vintage-card overflow-hidden"> |
| <img src="https://images.unsplash.com/photo-1496568816309-51d7c20e3b21?ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80" |
| alt="Desert" |
| class="w-full h-64 object-cover sepia-filter hover:sepia-0 transition-all duration-500"> |
| <div class="p-6"> |
| <h3 class="text-xl font-bold mb-2">Desert Solitude</h3> |
| <p class="text-gray-600 mb-4">Polaroid, 2017</p> |
| <p class="text-gray-700">Instant film experiments in the Arizona desert using expired Polaroid stock.</p> |
| </div> |
| </div> |
| |
| |
| <div class="vintage-card overflow-hidden"> |
| <img src="https://images.unsplash.com/photo-1472214103451-9374bd1c798e?ixlib=rb-1.2.1&auto=format&fit=crop&w=1350&q=80" |
| alt="Rock Formation" |
| class="w-full h-64 object-cover sepia-filter hover:sepia-0 transition-all duration-500"> |
| <div class="p-6"> |
| <h3 class="text-xl font-bold mb-2">Geological Time</h3> |
| <p class="text-gray-600 mb-4">Digital with film emulation, 2022</p> |
| <p class="text-gray-700">Blending digital capture with traditional darkroom techniques for unique textures.</p> |
| </div> |
| </div> |
| </div> |
| </div> |
| </section> |
|
|
| |
| <section id="experience" class="py-20 px-6 bg-gray-100 bg-opacity-50"> |
| <div class="container mx-auto"> |
| <h2 class="text-3xl font-bold text-center mb-16 vintage-title">My Journey</h2> |
| <div class="max-w-3xl mx-auto"> |
| <div class="timeline-item"> |
| <div class="vintage-card p-6"> |
| <h3 class="text-xl font-bold mb-2">Freelance Photographer</h3> |
| <p class="text-gray-600 mb-2">2018 - Present</p> |
| <p class="text-gray-700">Working with clients worldwide to create bespoke photographic projects, from editorial assignments to personal commissions.</p> |
| </div> |
| </div> |
| <div class="timeline-item"> |
| <div class="vintage-card p-6"> |
| <h3 class="text-xl font-bold mb-2">Lead Designer at Retrospect Studio</h3> |
| <p class="text-gray-600 mb-2">2014 - 2018</p> |
| <p class="text-gray-700">Directed creative projects for clients seeking vintage-inspired branding and packaging design solutions.</p> |
| </div> |
| </div> |
| <div class="timeline-item"> |
| <div class="vintage-card p-6"> |
| <h3 class="text-xl font-bold mb-2">Photography Instructor</h3> |
| <p class="text-gray-600 mb-2">2012 - 2014</p> |
| <p class="text-gray-700">Taught traditional darkroom techniques and film photography at the New England School of Art.</p> |
| </div> |
| </div> |
| <div class="timeline-item"> |
| <div class="vintage-card p-6"> |
| <h3 class="text-xl font-bold mb-2">Assistant Curator</h3> |
| <p class="text-gray-600 mb-2">2008 - 2012</p> |
| <p class="text-gray-700">Worked at the Museum of Photographic Arts, helping to organize exhibitions of 20th century photography.</p> |
| </div> |
| </div> |
| </div> |
| </div> |
| </section> |
|
|
| |
| <section id="contact" class="py-20 px-6"> |
| <div class="container mx-auto"> |
| <h2 class="text-3xl font-bold text-center mb-16 vintage-title">Get In Touch</h2> |
| <div class="flex flex-col md:flex-row"> |
| <div class="md:w-1/2 mb-10 md:mb-0 md:pr-10"> |
| <div class="vintage-card p-8 h-full"> |
| <h3 class="text-2xl font-bold mb-6 text-gray-800">Contact Information</h3> |
| <div class="mb-6 flex items-start"> |
| <i class="fas fa-map-marker-alt text-amber-700 mt-1 mr-4"></i> |
| <div> |
| <h4 class="font-semibold">Address</h4> |
| <p class="text-gray-700">123 Vintage Lane, Portland, OR 97204</p> |
| </div> |
| </div> |
| <div class="mb-6 flex items-start"> |
| <i class="fas fa-envelope text-amber-700 mt-1 mr-4"></i> |
| <div> |
| <h4 class="font-semibold">Email</h4> |
| <p class="text-gray-700">hello@jameswilkerson.com</p> |
| </div> |
| </div> |
| <div class="mb-6 flex items-start"> |
| <i class="fas fa-phone text-amber-700 mt-1 mr-4"></i> |
| <div> |
| <h4 class="font-semibold">Phone</h4> |
| <p class="text-gray-700">(503) 555-0192</p> |
| </div> |
| </div> |
| <div class="flex space-x-4 mt-8"> |
| <a href="#" class="text-gray-700 hover:text-amber-700"><i class="fab fa-instagram text-2xl"></i></a> |
| <a href="#" class="text-gray-700 hover:text-amber-700"><i class="fab fa-twitter text-2xl"></i></a> |
| <a href="#" class="text-gray-700 hover:text-amber-700"><i class="fab fa-behance text-2xl"></i></a> |
| <a href="#" class="text-gray-700 hover:text-amber-700"><i class="fab fa-pinterest text-2xl"></i></a> |
| </div> |
| </div> |
| </div> |
| <div class="md:w-1/2 md:pl-10"> |
| <div class="vintage-card p-8 h-full"> |
| <h3 class="text-2xl font-bold mb-6 text-gray-800">Send Me a Message</h3> |
| <form> |
| <div class="mb-6"> |
| <label for="name" class="block text-gray-700 mb-2">Your Name</label> |
| <input type="text" id="name" class="w-full px-4 py-2 border border-gray-300 focus:outline-none focus:border-amber-500 bg-white bg-opacity-50"> |
| </div> |
| <div class="mb-6"> |
| <label for="email" class="block text-gray-700 mb-2">Your Email</label> |
| <input type="email" id="email" class="w-full px-4 py-2 border border-gray-300 focus:outline-none focus:border-amber-500 bg-white bg-opacity-50"> |
| </div> |
| <div class="mb-6"> |
| <label for="subject" class="block text-gray-700 mb-2">Subject</label> |
| <input type="text" id="subject" class="w-full px-4 py-2 border border-gray-300 focus:outline-none focus:border-amber-500 bg-white bg-opacity-50"> |
| </div> |
| <div class="mb-6"> |
| <label for="message" class="block text-gray-700 mb-2">Your Message</label> |
| <textarea id="message" rows="4" class="w-full px-4 py-2 border border-gray-300 focus:outline-none focus:border-amber-500 bg-white bg-opacity-50"></textarea> |
| </div> |
| <button type="submit" class="vintage-button w-full py-3">Send Message</button> |
| </form> |
| </div> |
| </div> |
| </div> |
| </div> |
| </section> |
|
|
| |
| <footer class="bg-gray-800 text-white py-8 px-6"> |
| <div class="container mx-auto"> |
| <div class="flex flex-col md:flex-row justify-between items-center"> |
| <div class="mb-4 md:mb-0"> |
| <p>© 2023 James Wilkerson. All rights reserved.</p> |
| </div> |
| <div class="flex space-x-6"> |
| <a href="#" class="hover:text-amber-400">Privacy Policy</a> |
| <a href="#" class="hover:text-amber-400">Terms of Service</a> |
| <a href="#home" class="hover:text-amber-400">Back to Top</a> |
| </div> |
| </div> |
| </div> |
| </footer> |
|
|
| <script> |
| |
| document.querySelectorAll('a[href^="#"]').forEach(anchor => { |
| anchor.addEventListener('click', function (e) { |
| e.preventDefault(); |
| |
| document.querySelector(this.getAttribute('href')).scrollIntoView({ |
| behavior: 'smooth' |
| }); |
| }); |
| }); |
| |
| |
| |
| const mobileMenuButton = document.querySelector('.md\\:hidden button'); |
| mobileMenuButton.addEventListener('click', function() { |
| alert('Mobile menu would open here in a full implementation'); |
| }); |
| |
| |
| const portfolioItems = document.querySelectorAll('.vintage-card'); |
| portfolioItems.forEach(item => { |
| const img = item.querySelector('img'); |
| if (img) { |
| item.addEventListener('mouseenter', () => { |
| img.classList.remove('sepia-filter'); |
| img.classList.add('sepia-0'); |
| }); |
| |
| item.addEventListener('mouseleave', () => { |
| img.classList.add('sepia-filter'); |
| img.classList.remove('sepia-0'); |
| }); |
| } |
| }); |
| </script> |
| <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - <a href="https://enzostvs-deepsite.hf.space?remix=Kus669/kus" style="color: #fff;text-decoration: underline;" target="_blank" >🧬 Remix</a></p></body> |
| </html> |