biohazard-web-old/project.html
2025-10-02 16:01:12 -06:00

148 lines
4.0 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Project — Biohazard VFX</title>
<meta name="viewport" content="width=device-width,initial-scale=1">
<link rel="stylesheet" href="css/styles.css">
<style>
#project.content-block {
max-width: 2000px;
margin: 0 auto;
padding: 12vh var(--gutter-x) 8vh;
font-family: "SpaceMono", monospace;
color: var(--acid);
text-shadow: 0 0 2px var(--acid);
border-bottom: 1px solid var(--graphite);
background: none;
min-height: 60vh;
}
.project-title {
font-family: "ArchiveCond", sans-serif;
font-size: 1.8rem;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--hot);
margin-bottom: 1.2rem;
margin-top: 0;
text-align: center;
text-shadow: 0 0 2px var(--acid);
}
.project-embed {
width: 100%;
aspect-ratio: 16/9;
max-height: 70vh;
border: 0;
border-radius: 8px;
background: #181818;
box-shadow: 0 4px 18px rgba(0,0,0,0.28);
margin-bottom: 2.5rem;
display: block;
}
.project-section {
margin-top: 2.5rem;
background: var(--graphite);
border-radius: 8px;
box-shadow: 0 2px 10px rgba(0,0,0,0.18);
padding: 2rem 1.5rem 1.2rem;
color: var(--acid);
font-family: "SpaceMono", monospace;
max-width: 1200px;
margin-left: auto;
margin-right: auto;
}
.project-section h2 {
font-family: "ArchiveCond", sans-serif;
font-size: 1.1rem;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--hot);
margin-bottom: 0.7rem;
margin-top: 0;
text-align: left;
}
.project-section p {
font-size: 1rem;
color: var(--acid);
opacity: 0.88;
margin: 0;
line-height: 1.5;
padding-left: 0.2em;
}
@media (max-width: 900px) {
#project.content-block {
padding: 7vh var(--gutter-x) 3vh;
}
.project-section {
padding: 1.2rem 0.7rem 0.7rem;
}
}
@media (max-width: 600px) {
#project.content-block {
padding: 4vh 8px 2vh;
font-size: 1rem;
}
.project-title {
font-size: 1.2rem;
}
}
</style>
</head>
<body>
<div id="nav-placeholder"></div>
<main id="project" class="content-block">
<a href="index.html#projects" class="back-btn">
← Back to Projects
</a>
</main>
<div id="socials-placeholder"></div>
<footer>
<p>© 2025 Biohazard VFX. All Rights Reserved.</p>
</footer>
<script src="js/ui.js" defer></script>
<script src="js/project.js"></script>
<script>
// Inject nav fragment
fetch('fragments/nav.html')
.then(r => r.text())
.then(html => {
document.getElementById('nav-placeholder').outerHTML = html;
});
// Inject socials fragment
fetch('fragments/socials.html')
.then(r => r.text())
.then(html => {
document.getElementById('socials-placeholder').outerHTML = html;
});
// Enhance project.js output for new style
document.addEventListener('DOMContentLoaded', function() {
const container = document.getElementById('project');
// Wait for project.js to populate
const observer = new MutationObserver(() => {
// Style the title
const h1 = container.querySelector('h1');
if (h1) {
h1.className = 'project-title';
}
// Style the embed
const iframe = container.querySelector('iframe');
if (iframe) {
iframe.className = 'project-embed';
}
// Style info/credits
['info', 'credits'].forEach(id => {
const sec = container.querySelector(`#${id}`);
if (sec) {
sec.className = 'project-section';
const h2 = sec.querySelector('h2');
if (h2) h2.className = '';
}
});
});
observer.observe(container, { childList: true, subtree: true });
});
</script>
</body>
</html>