arthur-ibay-site/films/negros-fruit-dove/index.html
2026-08-20 23:40:19 +00:00

88 lines
5.9 KiB
HTML

<!doctype html>
<html><head>
<meta name="description" content="Negros Fruit Dove — a short conservation film about Ptilinopus arcanus">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta property="og:title" content="The Hidden Dove — Negros Fruit Dove">
<meta property="og:description" content="A 60-second field note on a critically endangered bird known from a single Philippine island.">
<meta charset="UTF-8"/>
<title>Negros Fruit Dove — The Hidden Dove</title>
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
<style>
body{margin:0;background:#0b0f14;color:#f2ead8;font-family:Georgia,'Times New Roman',serif}
#root{position:relative;width:1920px;height:1080px;overflow:hidden;background:#10160f}
.clip{position:absolute;inset:0;display:grid;place-items:center;padding:0 160px;box-sizing:border-box}
.bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.3;filter:saturate(.7)}
.kicker{font-family:'Courier New',monospace;text-transform:uppercase;letter-spacing:.3em;font-size:30px;color:#b9a87c;margin-bottom:30px}
h1{font-size:88px;font-weight:700;margin:0;text-align:center;color:#f2ead8;text-shadow:0 4px 40px rgba(0,0,0,.6)}
h2{font-size:58px;font-weight:400;margin:0;text-align:center;color:#e6d9b6;line-height:1.35}
.small{font-family:'Courier New',monospace;font-size:26px;color:#b9a87c;margin-top:34px;text-align:center}
.factline{font-family:'Courier New',monospace;font-size:28px;color:#cfc29a;border-top:1px solid #b9a87c;padding-top:28px;margin-top:28px;text-align:center}
.stat{font-family:'Courier New',monospace;font-size:96px;font-weight:700;color:#cdb47a;line-height:1}
.stattxt{font-family:'Courier New',monospace;font-size:32px;color:#e6d9b6;margin-top:22px;text-align:center}
.credit{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-family:'Courier New',monospace;font-size:24px;color:#8a7a55;letter-spacing:.12em}
</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="60">
<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="32"></audio>
<audio id="voice-s4" src="audio/s4.wav" data-start="47"></audio>
<audio id="bgm" src="audio/music.mp3" data-start="0" data-volume="0.14"></audio>
<section id="s1" class="clip" data-start="0" data-duration="15" data-track-index="1">
<div class="bg" style="background-image:url('https://images.pexels.com/photos/20858541/pexels-photo-20858541.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940')"></div>
<div style="text-align:center;position:relative;z-index:2">
<div class="kicker">Conservation field note · no. 1</div>
<h1 id="s1-title">The Hidden Dove</h1>
<h2 id="s1-sub">Ptilinopus arcanus, Negros fruit dove</h2>
</div>
</section>
<section id="s2" class="clip" data-start="15" data-duration="17" data-track-index="1">
<div class="bg" style="background-color:#0b1410"></div>
<div style="position:relative;z-index:2;text-align:center">
<div class="stat" id="s2-num">Critically&nbsp;Endangered</div>
<div class="stattxt" id="s2-txt">Endemic to a single island<br>known to science from a handful of specimens</div>
<div class="factline" id="s2-fact">Habitat cleared for sugarcane · hunting pressure</div>
</div>
</section>
<section id="s3" class="clip" data-start="32" data-duration="15" data-track-index="1">
<div class="bg" style="background-image:url('https://images.pexels.com/photos/14013575/pexels-photo-14013575.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940')"></div>
<div style="position:relative;z-index:2;text-align:center">
<h2 id="s3-txt">Recovery isn't a fence.<br>It's native figs and rattan planted back<br>into shade-crop farms.</h2>
<div class="small" id="s3-note">Community reforestation · guard patrols · corridor habitat</div>
</div>
</section>
<section id="s4" class="clip" data-start="47" data-duration="13" data-track-index="1">
<div class="bg" style="background-color:#10160f"></div>
<div style="position:relative;z-index:2;text-align:center">
<h2 id="s4-txt">Small steady steps,<br>like scrubbing a garden corner.</h2>
<div class="small" id="s4-note">The dove's forest is the margin worth keeping wild.</div>
</div>
</section>
<div class="credit">Arthur Ibay · 4ort.mov</div>
</div>
<script>
window.__timelines = window.__timelines || {};
const tl = gsap.timeline({ paused: true });
tl.from("#s1-title", { opacity: 0, y: 40, duration: 1, ease: "power3.out" }, 0.4);
tl.from("#s1-sub", { opacity: 0, y: 20, duration: 0.8, ease: "power2.out" }, 1.1);
tl.from(".kicker", { opacity: 0, letterSpacing: "0.6em", duration: 1, ease: "power2.out" }, 0.2);
tl.fromTo(".bg", { scale: 1.12 }, { scale: 1, duration: 12, ease: "none" }, 0);
tl.from("#s2-num", { opacity: 0, scale: 0.9, duration: 0.9, ease: "power3.out" }, 15.6);
tl.from("#s2-txt", { opacity: 0, y: 24, duration: 0.8, ease: "power2.out" }, 16.2);
tl.from("#s2-fact", { opacity: 0, duration: 0.7 }, 16.8);
tl.fromTo(".bg", { scale: 1.1 }, { scale: 1, duration: 14, ease: "none" }, 15);
tl.from("#s3-txt", { opacity: 0, y: 30, duration: 0.9, ease: "power3.out" }, 32.8);
tl.from("#s3-note", { opacity: 0, duration: 0.7 }, 33.6);
tl.fromTo(".bg", { scale: 1.12 }, { scale: 1, duration: 13, ease: "none" }, 32);
tl.from("#s4-txt", { opacity: 0, y: 26, duration: 0.9, ease: "power3.out" }, 47.8);
tl.from("#s4-note", { opacity: 0, duration: 0.7 }, 48.6);
window.__timelines["main"] = tl;
</script>
</body></html>