<?xml version="1.0" encoding="UTF-16"?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-16"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="referrer" content="strict-origin-when-cross-origin"> <title>Ye Olde Rock Shop - The Workbench</title> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet"> <style> :root { --bg: #0f0f0f; --surface: #1a1a1a; --border: #2a2a2a; --text: #f0f0f0; --text-muted: #888; --accent: white; } * { margin: 0; padding: 0; box-sizing: border-box; } html { scroll-behavior: smooth; scroll-padding-top: 6rem; } body { font-family: 'Outfit', sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; overflow-x: hidden; } body::before { content: ''; position: fixed; inset: 0; background-image: linear-gradient(rgba(42, 42, 42, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(42, 42, 42, 0.03) 1px, transparent 1px); background-size: 64px 64px; pointer-events: none; z-index: 0; } nav { position: fixed; top: 0; left: 0; right: 0; padding: 1.25rem 2rem; display: flex; justify-content: space-between; align-items: center; z-index: 100; background: linear-gradient(to bottom, var(--bg) 60%, transparent); border-bottom: 1px solid rgba(255, 255, 255, 0.06); transition: background 0.3s; } nav.scrolled { background: rgba(15, 15, 15, 0.9); backdrop-filter: blur(12px); } .logo { font-weight: 700; font-size: 1.35rem; letter-spacing: -0.02em; color: var(--accent); text-decoration: none; display: inline-grid; grid-template: 1fr / 1fr; white-space: nowrap; } .logo span { grid-area: 1 / 1; transition: opacity 0.25s ease, transform 0.25s ease; } .logo-hover { opacity: 0; transform: translateY(0.35em); } .logo:hover .logo-default, .logo:focus-visible .logo-default { opacity: 0; transform: translateY(-0.35em); } .logo:hover .logo-hover, .logo:focus-visible .logo-hover { opacity: 1; transform: translateY(0); } .nav-links { display: flex; gap: 2rem; list-style: none; } .nav-links a { color: var(--text-muted); text-decoration: none; font-weight: 500; font-size: 0.95rem; transition: color 0.2s; } .nav-links a:hover { color: var(--accent); } main { padding-top: 5rem; position: relative; z-index: 1; } .content-row + .content-row { border-top: 1px solid var(--border); } .content-row { padding: 3rem 0; } .row-title { font-size: clamp(1.35rem, 1.5vw, 1.75rem); font-weight: 600; letter-spacing: -0.02em; margin-bottom: 1.5rem; padding: 0 2rem; color: var(--accent); } .video-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; padding: 0 5rem; } .grid-item .video-thumb { width: 100%; height: 350px; border-radius: 10px; display: block; border: 1px solid var(--border); cursor: pointer; background: #000; position: relative; overflow: hidden; } .grid-item .video-thumb video { width: 100%; height: 100%; border: 0; display: block; object-fit: cover; pointer-events: none; background: #000; } .grid-item .video-thumb::after { content: '¶%'; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 64px; height: 64px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.35); display: flex; align-items: center; justify-content: center; font-size: 1.35rem; color: var(--text); background: rgba(0, 0, 0, 0.45); padding-left: 4px; z-index: 1; opacity: 0; transition: opacity 0.2s; } .grid-item .video-thumb:hover::after { opacity: 1; } .grid-item .video-label { margin-top: 0.65rem; font-size: 0.9rem; color: var(--text-muted); line-height: 1.35; } .lightbox-overlay { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.25); display: flex; align-items: center; justify-content: center; z-index: 200; opacity: 0; pointer-events: none; transition: opacity 0.25s ease-out; } .lightbox-overlay.active { opacity: 1; pointer-events: auto; } .lightbox-stage { position: relative; display: flex; align-items: center; justify-content: center; max-width: 96vw; max-height: 92vh; } .lightbox-content { position: relative; display: grid; place-items: center; } .lightbox-content > .lightbox-image, .lightbox-content > .lightbox-video-wrapper, .lightbox-content > .lightbox-native-video { grid-area: 1 / 1; } .lightbox-image, .lightbox-video-wrapper, .lightbox-native-video { display: none; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6); border-radius: 12px; border: 1px solid var(--border); background: #000; } .lightbox-image { width: 840px; max-width: min(840px, 90vw); max-height: 85vh; object-fit: contain; } .lightbox-video-wrapper, .lightbox-native-video { width: min(960px, 90vw); max-height: 85vh; aspect-ratio: 16 / 9; overflow: hidden; } .lightbox-video { width: 100%; height: 100%; border: 0; display: block; } .lightbox-overlay.active .lightbox-image.is-active, .lightbox-overlay.active .lightbox-video-wrapper.is-active, .lightbox-overlay.active .lightbox-native-video.is-active { display: block; } .lightbox-nav-btn { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border-radius: 50%; background: rgba(26, 26, 26, 0.92); border: 1px solid var(--border); color: var(--text); cursor: pointer; display: none; align-items: center; justify-content: center; font-size: 1.35rem; z-index: 5; } .lightbox-overlay.active .lightbox-nav-btn.is-visible { display: flex; } .lightbox-nav-btn:hover { background: var(--accent); color: var(--bg); border-color: var(--accent); } .lightbox-nav-btn.hidden { opacity: 0; pointer-events: none; } .lightbox-nav-btn.prev { left: 0.75rem; } .lightbox-nav-btn.next { right: 0.75rem; } footer { padding: 2.5rem 0; border-top: 1px solid var(--border); margin-top: 1rem; position: relative; z-index: 1; } footer .container { max-width: 1100px; margin: 0 auto; padding: 0 2rem; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem; } footer .logo { font-size: 1.1rem; } .footer-links { display: flex; gap: 2rem; list-style: none; } .footer-links a { color: var(--text-muted); text-decoration: none; font-size: 0.9rem; } .footer-links a:hover { color: var(--accent); } .copyright { color: var(--text-muted); font-size: 0.85rem; } @media (max-width: 640px) { .nav-links { display: none; } .video-grid { grid-template-columns: 1fr; } .grid-item .video-thumb { height: 300px; } footer .container { flex-direction: column; text-align: center; } } </style> </head> <body> <nav id="nav"> <a href="index.html" class="logo"> <span class="logo-default">YE OLDE ROCK SHOP</span> <span class="logo-hover">JASON E. SARROW</span> </a> <ul class="nav-links"> <li><a href="#the-workbench">The Workbench</a></li> <li><a href="#field-trips">Field Trips</a></li> </ul> </nav> <main> <section class="content-row" id="the-workbench"> <h2 class="row-title">The Workbench</h2> <div class="video-grid gallery-track"> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/63daa9c202024ddd8e7c6ca18ddec012.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/63daa9c202024ddd8e7c6ca18ddec012.mp4" title="Peterson Mountain Goodies"></video></div><p class="video-label">Peterson Mountain Goodies</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/e0c2a63a9bac4595b447e4e5cb1aaa10.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/e0c2a63a9bac4595b447e4e5cb1aaa10.mp4" title="Shark's Teeth"></video></div><p class="video-label">Shark's Teeth</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/dd90bbe98e59413586cacf1f117394e1.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/dd90bbe98e59413586cacf1f117394e1.mp4" title="Lapis Leaves"></video></div><p class="video-label">Lapis Leaves</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/81b9478f55af4f3b880352bb7699231e.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/81b9478f55af4f3b880352bb7699231e.mp4" title="Smokey Quartz Peterson Mountain Raw Points"></video></div><p class="video-label">Smokey Quartz Peterson Mountain Raw Points</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/80c6a7bbe881447698ea2070cbcd17de.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/80c6a7bbe881447698ea2070cbcd17de.mp4" title="Smokey Quartz Peterson Mountain Jewelry Wraps"></video></div><p class="video-label">Smokey Quartz Peterson Mountain Jewelry Wraps</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/8471e2a95c324891a450c8ac48585e63.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/8471e2a95c324891a450c8ac48585e63.mp4" title="Four Peaks Amethyst"></video></div><p class="video-label">Four Peaks Amethyst from the Mazatza! Mountains Arizona</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/f9d30667047d48b8a0af2022e978f826.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/f9d30667047d48b8a0af2022e978f826.mp4" title="Quartz Mining Trip"></video></div><p class="video-label">Quartz Mining Trip, Mount Ida Arkansas</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/0f117402aedc460ebcdfea55535fedfa.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/0f117402aedc460ebcdfea55535fedfa.mp4" title="Columbian Golden Amber"></video></div><p class="video-label">60 million year old Columbian Golden Amber</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/5b7ab5c674b14c02bf5a0955d66f1048.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/5b7ab5c674b14c02bf5a0955d66f1048.mp4" title="Turquoise"></video></div><p class="video-label">Turquoise</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/614b49b2381f4fdcb0eaca61cf09d8bf.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/614b49b2381f4fdcb0eaca61cf09d8bf.mp4" title="Antler and Bone"></video></div><p class="video-label">Antler &amp; Bone</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/55a75fac66304c64a471c108dba90eba.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/55a75fac66304c64a471c108dba90eba.mp4" title="Carnelian"></video></div><p class="video-label">Carnelian</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/c72d408f91354319a9ab119d0009365d.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/c72d408f91354319a9ab119d0009365d.mp4" title="Jade"></video></div><p class="video-label">Jade</p></div> </div> </section> <section class="content-row" id="field-trips"> <h2 class="row-title">Field Trips</h2> <div class="video-grid gallery-track"> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/e834c24e8c4745e39de9d66831ae53b9.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/e834c24e8c4745e39de9d66831ae53b9.mp4" title="Gem Faire, Costa Mesa CA"></video></div><p class="video-label">Gem Faire, Costa Mesa CA</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/37629b46703343eebc14c98884361066.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/37629b46703343eebc14c98884361066.mp4" title="L.A. Comic Con"></video></div><p class="video-label">L.A. Comic Con</p></div> <div class="grid-item"><div class="video-thumb" data-video-url="https://cdn.shopify.com/videos/c/o/v/ca11ca6aa1ce4fcb93802b7bfe2536f2.mp4"><video muted playsinline preload="metadata" src="https://cdn.shopify.com/videos/c/o/v/ca11ca6aa1ce4fcb93802b7bfe2536f2.mp4" title="Peterson Mountain Dig"></video></div><p class="video-label">Peterson Mountain Dig</p></div> </div> </section> <footer> <div class="container"> <a href="#" class="logo">Ye Olde Rock Shop</a> <ul class="footer-links"> <li><a href="index.html">Portfolio</a></li> <li><a href="https://oneofakindbyicp.com/blogs/the-workbench">One Of A Kind By ICP</a></li> <li><a href="https://oneofakindbyicp.com/blogs/field-trips">Field Trips</a></li> </ul> <span class="copyright">© 2026 Ye Olde Rock Shop</span> </div> </footer> </main> <div class="lightbox-overlay" id="lightboxOverlay"> <div class="lightbox-stage"> <div class="lightbox-content"> <button type="button" class="lightbox-nav-btn prev" id="lightboxPrev" aria-label="Previous item">9 </button> <button type="button" class="lightbox-nav-btn next" id="lightboxNext" aria-label="Next item">: </button> <img class="lightbox-image" id="lightboxImage" alt=""> <div class="lightbox-video-wrapper" id="lightboxVideoWrapper"> <iframe class="lightbox-video" id="lightboxVideo" src="" title="Video player" allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> </div> <video class="lightbox-native-video" id="lightboxNativeVideo" controls playsinline></video> </div> </div> </div> <script> const nav = document.getElementById('nav'); window.addEventListener('scroll', () => nav.classList.toggle('scrolled', window.scrollY > 50)); document.querySelectorAll('.video-thumb video').forEach(video => { const pauseThumb = () => { video.pause(); if (video.duration && !Number.isNaN(video.duration)) { video.currentTime = Math.min(0.5, video.duration); } }; video.addEventListener('loadeddata', pauseThumb, { once: true }); video.addEventListener('play', () => { if (!video.closest('.lightbox-overlay')?.classList.contains('active')) { video.pause(); } }); }); const lightboxOverlay = document.getElementById('lightboxOverlay'); const lightboxImage = document.getElementById('lightboxImage'); const lightboxVideoWrapper = document.getElementById('lightboxVideoWrapper'); const lightboxVideo = document.getElementById('lightboxVideo'); const lightboxNativeVideo = document.getElementById('lightboxNativeVideo'); function resetLightboxMedia() { lightboxImage.classList.remove('is-active'); lightboxImage.src = ''; lightboxVideoWrapper.classList.remove('is-active'); lightboxVideo.src = ''; lightboxNativeVideo.classList.remove('is-active'); lightboxNativeVideo.pause(); lightboxNativeVideo.src = ''; } function isShopifyVideo(url) { return /cdn\.shopify\.com\/videos\//i.test(url || ''); } if (lightboxOverlay) { const lightboxPrev = document.getElementById('lightboxPrev'); const lightboxNext = document.getElementById('lightboxNext'); let lightboxItems = []; let lightboxIndex = -1; function updateLightboxNavButtons() { const hasMultiple = lightboxItems.length > 1; lightboxPrev.classList.toggle('is-visible', hasMultiple); lightboxNext.classList.toggle('is-visible', hasMultiple); lightboxPrev.classList.toggle('hidden', lightboxIndex <= 0); lightboxNext.classList.toggle('hidden', lightboxIndex >= lightboxItems.length - 1); } function closeLightbox() { lightboxOverlay.classList.remove('active'); resetLightboxMedia(); lightboxItems = []; lightboxIndex = -1; lightboxPrev.classList.remove('is-visible'); lightboxNext.classList.remove('is-visible'); } function showLightboxItem(index) { if (index < 0 || index >= lightboxItems.length) return; const mediaEl = lightboxItems[index]; lightboxIndex = index; resetLightboxMedia(); updateLightboxNavButtons(); const videoUrl = mediaEl.dataset.videoUrl; if (videoUrl) { lightboxNativeVideo.classList.add('is-active'); lightboxNativeVideo.src = videoUrl; } lightboxOverlay.classList.add('active'); } function openLightboxFromMedia(mediaEl) { const track = mediaEl.closest('.gallery-track'); if (!track) return; lightboxItems = Array.from(track.querySelectorAll('[data-video-url]')); const index = lightboxItems.indexOf(mediaEl); if (index === -1) return; showLightboxItem(index); } document.querySelectorAll('[data-video-url].video-thumb').forEach(el => { el.addEventListener('click', () => openLightboxFromMedia(el)); }); lightboxPrev.addEventListener('click', (e) => { e.stopPropagation(); showLightboxItem(lightboxIndex - 1); }); lightboxNext.addEventListener('click', (e) => { e.stopPropagation(); showLightboxItem(lightboxIndex + 1); }); lightboxOverlay.addEventListener('click', closeLightbox); document.querySelector('.lightbox-stage').addEventListener('click', (e) => e.stopPropagation()); document.addEventListener('keydown', (e) => { if (!lightboxOverlay.classList.contains('active')) return; if (e.key === 'ArrowLeft') { e.preventDefault(); showLightboxItem(lightboxIndex - 1); } if (e.key === 'ArrowRight') { e.preventDefault(); showLightboxItem(lightboxIndex + 1); } if (e.key === 'Escape') closeLightbox(); }); } </script> </body> </html>