/* ===== Java Roque Archive — Credit / Session Project Pages ===== */
:root{
  --bg:#ffffff;
  --fg:#000000;
  --line:#000000;
  --gray:#666666;
  --mono:'JetBrains Mono','Courier New',monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--fg);
  font-family:var(--mono);
  font-size:16px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--fg)}
.wrap{max-width:880px;margin:0 auto;padding:48px 24px 120px}

.back-nav{
  display:inline-block;
  font-size:12px;
  letter-spacing:0.2em;
  text-transform:uppercase;
  text-decoration:none;
  color:var(--fg);
  border:1px solid var(--fg);
  padding:6px 12px;
  margin:0 8px 40px 0;
  transition:background .15s ease,color .15s ease;
}
.back-nav:hover{background:var(--fg);color:var(--bg)}

.masthead{border-bottom:1px solid var(--line);padding-bottom:32px;margin-bottom:40px}
.kicker{font-size:11px;letter-spacing:0.25em;text-transform:uppercase;color:var(--gray);margin-bottom:16px}
.masthead h1{
  font-size:clamp(28px,5vw,46px);
  margin:0 0 16px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.02em;
  line-height:1.1;
}
.masthead .subtitle{color:var(--gray);font-size:14px;max-width:620px;line-height:1.7;margin-bottom:24px}
.meta{display:flex;flex-wrap:wrap;gap:28px;font-size:12px;color:var(--gray)}
.meta strong{color:var(--fg)}

section{margin:56px 0}
section h2{
  font-size:16px;
  text-transform:uppercase;
  letter-spacing:0.07em;
  border-left:3px solid var(--fg);
  padding-left:14px;
  margin:0 0 20px;
  font-weight:600;
}
p{margin:14px 0}
strong{font-weight:600}

.role-box{
  background:#f5f5f5;
  border:1px solid var(--line);
  border-left:3px solid var(--fg);
  padding:20px 24px;
  margin:24px 0;
}
.role-label{font-size:10px;text-transform:uppercase;letter-spacing:0.2em;color:var(--gray);margin-bottom:12px}
.role-box p{margin:0;font-size:14px}

.embed-wrap{border:1px solid var(--line);background:#000;margin:24px 0;overflow:hidden}
.embed-wrap iframe{display:block;width:100%;border:0}
.embed-16x9{position:relative;padding-top:56.25%;height:0}
.embed-16x9 iframe{position:absolute;top:0;left:0;width:100%;height:100%}

.cta-row{margin:24px 0}
.cta-btn{
  display:inline-block;
  font-size:12px;
  letter-spacing:0.15em;
  text-transform:uppercase;
  text-decoration:none;
  color:var(--bg);
  background:var(--fg);
  border:1px solid var(--fg);
  padding:12px 22px;
  transition:opacity .15s ease;
}
.cta-btn:hover{opacity:0.75}

.unreleased{
  border:1px dashed var(--gray);
  padding:18px 22px;
  font-size:12px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--gray);
  margin:24px 0;
}

footer.page-footer{
  border-top:1px solid var(--line);
  margin-top:80px;
  padding-top:28px;
  font-size:12px;
}
footer.page-footer a{text-decoration:none;color:var(--gray)}
footer.page-footer a:hover{color:var(--fg)}
