alan-edler-ledgers/films/beam-count/index.html
2026-07-19 22:11:59 +00:00

89 lines
4.0 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html><head>
<meta name="description" content="OCTOBER 1984 KENTUCKY WAREHOUSE STEEL BEAM COUNT: 412 ONE SHORT NOVEMBER 1984 SHIPMENT DELAYED 411 THE LEDGER WAS WRONG DECEMBER 1984 ZERO-FRACTURE…"><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:"Courier New",monospace}
#root{position:relative;width:1920px;height:1080px;overflow:hidden}
.clip{position:absolute;inset:0;display:grid;place-items:center;text-align:center}
.ledger-line{color:#a8b5c7;font-size:48px;line-height:1.4;margin:10px 0}
.error-mark{color:#ff3b3b;font-size:48px;font-weight:bold}
.protocol-seal{color:#4ade80;border:3px solid #4ade80;padding:30px;border-radius:12px;background:rgba(74,222,128,0.1)}
.date-stamp{position:absolute;top:40px;left:40px;color:#6b7280;font-size:24px}
.location{position:absolute;top:40px;right:40px;color:#6b7280;font-size:24px}
</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 tracks (REQUIRED for voice) -->
<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>
<audio id="bgm" src="audio/music.mp3" data-start="0" data-volume="0.12"></audio>
<!-- SCENE 1: THE ERROR (015s) -->
<section id="s1" class="clip" data-start="0" data-duration="15" data-track-index="1">
<div class="date-stamp">OCTOBER 1984</div>
<div class="location">KENTUCKY WAREHOUSE</div>
<div class="ledger-line">STEEL BEAM COUNT:</div>
<div class="ledger-line error-mark" id="s1-count">412</div>
<div class="ledger-line" style="opacity:0" id="s1-note">ONE SHORT</div>
</section>
<!-- SCENE 2: THE DISCOVERY (1530s) -->
<section id="s2" class="clip" data-start="15" data-duration="15" data-track-index="1">
<div class="date-stamp">NOVEMBER 1984</div>
<div class="location">SHIPMENT DELAYED</div>
<div class="ledger-line" style="opacity:0" id="s2-count">411</div>
<div class="ledger-line error-mark" id="s2-truth">THE LEDGER WAS WRONG</div>
</section>
<!-- SCENE 3: THE PROTOCOL (3045s) -->
<section id="s3" class="clip" data-start="30" data-duration="15" data-track-index="1">
<div class="date-stamp">DECEMBER 1984</div>
<div class="location">ZERO-FRACTURE COVENANT</div>
<div class="protocol-seal" id="s3-seal">
<div class="ledger-line">COUNT TWICE</div>
<div class="ledger-line">VERIFY ONCE</div>
<div class="ledger-line" style="font-size:24px;margin-top:20px">ERROR = LESSON</div>
</div>
</section>
</div>
<script>
window.__timelines = window.__timelines || {};
const tl = gsap.timeline({ paused: true });
// SCENE 1: Error appears, then corrects to reveal the truth
tl.to("#s1-count", { opacity: 1, duration: 1.5, ease: "power2.inOut" }, 0.5);
tl.to("#s1-count", { color: "#ff3b3b", duration: 0.8 }, 4.0);
tl.to("#s1-note", { opacity: 1, y: 0, duration: 1.2 }, 5.5);
tl.to("#s1-count", { opacity: 0, duration: 0.6 }, 13.0);
// SCENE 2: Truth revealed
tl.to("#s2-count", { opacity: 1, duration: 1.2 }, 16.0);
tl.to("#s2-truth", { opacity: 1, y: 0, duration: 1.5 }, 18.0);
tl.to("#s2-count", { color: "#4ade80", duration: 0.8 }, 22.0);
tl.to(".clip#s2", { opacity: 0, duration: 0.6 }, 29.0);
// SCENE 3: Protocol forged
tl.to("#s3-seal", {
scale: 0.8,
opacity: 0,
duration: 0.1
}, 30.0);
tl.to("#s3-seal", {
scale: 1,
opacity: 1,
duration: 2.0,
ease: "expo.out"
}, 31.0);
tl.to("#s3-seal div:nth-child(1)", { opacity: 1, duration: 0.8 }, 33.0);
tl.to("#s3-seal div:nth-child(2)", { opacity: 1, duration: 0.8 }, 36.0);
tl.to("#s3-seal div:nth-child(3)", { opacity: 1, duration: 0.8 }, 39.0);
window.__timelines["main"] = tl;
</script>
</body></html>