andres-cruz-bronx-triage/films/bronx-logistics/index.html

60 lines
3.5 KiB
HTML
Raw Permalink Normal View History

2026-08-18 12:43:17 +02:00
<!doctype html>
<html><head>
<meta name="description" content="Navigating the borough like a pro courier"><meta charset="UTF-8"/>
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
<style>
body{margin:0;background:#0b0f14;color:#fff;font-family:Inter,system-ui,sans-serif}
#root{position:relative;width:1920px;height:1080px;overflow:hidden}
.clip{position:absolute;inset:0;display:grid;place-items:center}
.bg{position:absolute;inset:0;z-index:-1}
.bg img{width:100%;height:100%;object-fit:cover}
h1{font-size:3.5rem;font-weight:800;text-shadow:2px 2px 4px rgba(0,0,0,0.8);text-align:center}
p{font-size:1.8rem;max-width:80%;text-align:center;text-shadow:1px 1px 2px rgba(0,0,0,0.8)}
.street-art{background:linear-gradient(45deg,#ff6b6b,#4ecdc4);color:white;padding:2rem;border-radius:10px}
.basketball{background:linear-gradient(45deg,#45b7d1,#f9ca24);color:white;padding:2rem;border-radius:10px}
</style> <script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
</head>
<body>
<div id="root" data-composition-id="main" data-start="0" data-width="1920" data-height="1080" data-duration="45">
<audio id="bgm" src="audio/music.mp3" data-start="0" data-volume="0.15"></audio>
<audio id="voice-s1" src="audio/s1.wav" data-start="0"></audio>
<audio id="voice-s2" src="audio/s2.wav" data-start="15"></audio>
<audio id="voice-s3" src="audio/s3.wav" data-start="30"></audio>
<section id="s1" class="clip" data-start="0" data-duration="15" data-track-index="1">
<div class="bg"><img src="https://images.pexels.com/photos/31646238/pexels-photo-31646238.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="Bronx cityscape"></div>
<div class="street-art">
<h1 id="s1-title">Bronx Logistics</h1>
<p id="s1-text">Navigating the borough like a pro courier</p>
</div>
</section>
<section id="s2" class="clip" data-start="15" data-duration="15" data-track-index="1">
<div class="bg"><img src="https://pixabay.com/get/g3f88008faf1f59f96d20afbdac15cccd3ffb55644df8ff9667d15461fed9ae70dc1f8bb19d0264bb7c9a4f3c107d920275d160be3d9e642b07088cd0bfbd9474_1280.jpg" alt="Bronx street art"></div>
<div class="street-art">
<h1 id="s2-title">Street Art & Routes</h1>
<p id="s2-text">From Grand Concourse to hidden murals</p>
</div>
</section>
<section id="s3" class="clip" data-start="30" data-duration="15" data-track-index="1">
<div class="bg"><img src="https://images.pexels.com/photos/6185461/pexels-photo-6185461.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="Bronx basketball"></div>
<div class="basketball">
<h1 id="s3-title">Community & Basketball</h1>
<p id="s3-text">The heartbeat of the Bronx</p>
</div>
</section>
</div>
<script>
window.__timelines = window.__timelines || {};
const tl = gsap.timeline({ paused: true });
tl.to("#s1-title", { opacity: 1, y: 0, duration: 0.6, ease: "power3.out" }, 0.2);
tl.to("#s1-text", { opacity: 1, y: 0, duration: 0.6, ease: "power3.out" }, 0.5);
tl.to("#s2-title", { opacity: 1, y: 0, duration: 0.6, ease: "power3.out" }, 15.2);
tl.to("#s2-text", { opacity: 1, y: 0, duration: 0.6, ease: "power3.out" }, 15.5);
tl.to("#s3-title", { opacity: 1, y: 0, duration: 0.6, ease: "power3.out" }, 30.2);
tl.to("#s3-text", { opacity: 1, y: 0, duration: 0.6, ease: "power3.out" }, 30.5);
window.__timelines["main"] = tl;
</script>
</body></html>