@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-Thin.ttf") format("truetype");
font-weight: 100;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-ThinItalic.ttf") format("truetype");
font-weight: 100;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-ExtraLight.ttf") format("truetype");
font-weight: 200;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-ExtraLightItalic.ttf") format("truetype");
font-weight: 200;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-Light.ttf") format("truetype");
font-weight: 300;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-LightItalic.ttf") format("truetype");
font-weight: 300;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-Regular.ttf") format("truetype");
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-Italic.ttf") format("truetype");
font-weight: 400;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-Medium.ttf") format("truetype");
font-weight: 500;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-MediumItalic.ttf") format("truetype");
font-weight: 500;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-SemiBold.ttf") format("truetype");
font-weight: 600;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-SemiBoldItalic.ttf") format("truetype");
font-weight: 600;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-Bold.ttf") format("truetype");
font-weight: 700;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "IBM Plex SC";
src: url("IBMPlexSans_SemiCondensed-BoldItalic.ttf") format("truetype");
font-weight: 700;
font-style: italic;
font-display: swap;
}
* {
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
}
body {
margin: 0;
background: #050505;
color: #f5f3ef;
font-family: "IBM Plex SC", Arial, sans-serif;
}
.page4 {
min-height: 100vh;
min-height: 100dvh;
padding: 32px clamp(20px, 5vw, 70px);
background: #050505;
}
.detail-header {
display: flex;
justify-content: space-between;
align-items: center;
padding-bottom: 20px;
border-bottom: 1px solid rgba(255,255,255,.2);
}
.back-button,
.page-label {
color: rgba(255,255,255,.65);
font-size: 10px;
letter-spacing: .15em;
text-decoration: none;
}
.back-button:hover {
color: white;
}
.project-heading {
display: flex;
justify-content: space-between;
align-items: end;
gap: 30px;
padding: 35px 0 15px;
}
.project-number,
.project-category,
.label {
color: rgba(255,255,255,.45);
font-size: 9px;
letter-spacing: .15em;
}
.project-number {
margin-bottom: 8px;
}
.project-heading h1 {
margin: 0;
font-size: clamp(42px, 7vw, 90px);
font-weight: 400;
line-height: .9;
letter-spacing: -.04em;
}
.project-category {
margin: 0;
}
.video-grid-container {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
width: 100%;
}
.video-item {
display: flex;
flex-direction: column;
align-items: center;
gap: 10px;
}
.video-wrapper {
position: relative;
width: fit-content;
max-width: 100%;
max-height: 78vh;
background: #111;
overflow: hidden;
}
.grid-video {
display: block;
height: 100%;
width: auto;
max-width: 100%;
max-height: 78vh;
object-fit: contain;
background: #111;
}
.play-btn {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
background: rgba(0,0,0,.25);
border: none;
cursor: pointer;
padding: 0;
transition: background .2s ease;
}
.play-btn:hover {
background: rgba(0,0,0,.4);
}
.play-btn svg {
width: 56px;
height: 56px;
}
.play-btn.is-hidden {
display: none;
}
.video-controls-bar {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
color: rgba(255,255,255,.65);
font-size: 9px;
letter-spacing: .1em;
text-transform: uppercase;
}
.quality-select {
background: transparent;
border: 1px solid rgba(255,255,255,.4);
color: inherit;
font: inherit;
font-size: 9px;
letter-spacing: .1em;
text-transform: uppercase;
padding: 4px 8px;
cursor: pointer;
}
.project-info {
display: grid;
grid-template-columns: 1.5fr 1fr;
gap: 50px;
padding-top: 25px;
}
.description p:last-child {
max-width: 650px;
margin: 0;
color: rgba(255,255,255,.65);
font-size: 12px;
line-height: 1.5;
}
.credits {
border-top: 1px solid rgba(255,255,255,.2);
}
.credit-row {
display: flex;
justify-content: space-between;
gap: 20px;
padding: 12px 0;
border-bottom: 1px solid rgba(255,255,255,.12);
}
.credit-row span {
color: rgba(255,255,255,.4);
font-size: 9px;
}
.credit-row strong {
font-size: 9px;
font-weight: 600;
letter-spacing: .08em;
text-align: right;
}
@media (max-width: 700px) {
.project-heading {
display: block;
}
.project-category {
margin-top: 15px;
}
.project-info {
grid-template-columns: 1fr;
gap: 30px;
}
.video-grid-container {
grid-template-columns: 1fr;
gap: 16px;
}
.credit-row {
display: grid;
grid-template-columns: 80px 1fr;
}
.credit-row strong {
text-align: left;
}
}
