.project-public { background: var(--cream); }
.project-detail-shell { width: var(--container); margin: 0 auto; }
.project-public-main { overflow: hidden; }
.project-public-hero { position: relative; overflow: hidden; padding: 176px 0 82px; color: #fff; background: radial-gradient(circle at 78% 18%, rgba(255,77,18,.28), transparent 20%), linear-gradient(130deg, #070707, #151519); }
.project-public-hero::after { position: absolute; right: -8vw; bottom: -18vw; width: min(58vw, 850px); aspect-ratio: 1; content: ""; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; box-shadow: 0 0 0 50px rgba(255,255,255,.018), 0 0 0 100px rgba(255,255,255,.012); }
.project-public-hero .project-detail-shell { position: relative; z-index: 1; }
.project-back-link { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 34px; color: rgba(255,255,255,.67); font-size: 13px; font-weight: 800; transition: color .2s ease, transform .2s ease; }
.project-back-link:hover { color: #fff; transform: translateX(-3px); }
.project-back-link span { color: var(--orange); font-size: 20px; line-height: 1; }
.project-public-copy { max-width: 900px; }
.project-public-copy h1 { max-width: 940px; margin: 13px 0 17px; font-size: clamp(42px, 6vw, 86px); line-height: .95; letter-spacing: -.06em; }
.project-public-copy p { max-width: 680px; margin: 0; color: rgba(255,255,255,.72); font-size: clamp(16px, 1.6vw, 20px); }
.project-public-content { padding: clamp(54px, 8vw, 116px) 0; }
.project-public-viewer { position: relative; display: grid; place-items: center; min-height: 460px; overflow: hidden; border: 1px solid rgba(16,16,19,.09); border-radius: 30px; background: #111; box-shadow: 0 26px 72px rgba(0,0,0,.14); }
.project-public-viewer > img { width: 100%; max-height: min(75vh, 760px); object-fit: contain; }
.project-public-viewer > video { width: 100%; max-height: min(75vh, 760px); background: #030303; }
.project-public-video-download { position: absolute; right: 18px; bottom: 18px; z-index: 1; display: inline-flex; align-items: center; gap: 8px; padding: 11px 14px; border: 1px solid rgba(255,255,255,.25); border-radius: 10px; color: #fff; background: rgba(0,0,0,.62); backdrop-filter: blur(10px); font-size: 12px; font-weight: 800; }
.project-public-video-download:hover { background: var(--orange); }
.project-public-pdf { display: block; min-height: 720px; background: #edf0f4; }
.project-public-pdf iframe { display: block; width: 100%; height: 635px; border: 0; background: #fff; }
.project-public-pdf-tools { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 22px; color: var(--text); background: #fff; }
.project-public-pdf-tools > div:first-child { display: grid; gap: 3px; }
.project-public-pdf-tools span { color: var(--muted); font-size: 13px; }
.project-public-pdf-tools > div:last-child, .project-public-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.project-public-main-button, .project-public-quiet-button { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 17px; border: 1px solid transparent; border-radius: 999px; font-size: 13px; font-weight: 900; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.project-public-main-button { color: #fff; background: var(--orange); box-shadow: 0 12px 24px rgba(255,77,18,.24); }
.project-public-main-button:hover { color: #fff; background: #e7410b; transform: translateY(-2px); }
.project-public-quiet-button { border-color: rgba(16,16,19,.13); color: var(--text); background: #fff; }
.project-public-quiet-button:hover { color: var(--orange); border-color: rgba(255,77,18,.45); transform: translateY(-2px); }
.project-public-file { display: grid; justify-items: center; gap: 18px; padding: 64px; color: #fff; font-size: 21px; font-weight: 800; }
.project-public-footer-card { display: flex; align-items: center; justify-content: space-between; gap: 26px; margin-top: clamp(26px, 4vw, 48px); padding: clamp(24px, 3vw, 36px); border-radius: 24px; color: #fff; background: radial-gradient(circle at 88% 5%, rgba(255,255,255,.13), transparent 22%), linear-gradient(120deg, #101014, #25252a); box-shadow: 0 20px 45px rgba(0,0,0,.12); }
.project-public-footer-card > div:first-child { display: grid; gap: 6px; }
.project-public-footer-card span { color: var(--orange-2); font-size: 11px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.project-public-footer-card strong { max-width: 530px; font-size: clamp(21px, 2.4vw, 32px); line-height: 1.08; letter-spacing: -.035em; }
.project-public-footer-card .project-public-quiet-button { border-color: rgba(255,255,255,.2); color: #fff; background: rgba(255,255,255,.06); }
.project-public-footer-card .project-public-quiet-button:hover { color: #fff; background: rgba(255,255,255,.14); }
@media (max-width: 760px) { .project-public-hero { padding: 128px 0 60px; } .project-public-viewer { min-height: 300px; border-radius: 21px; } .project-public-pdf { min-height: 480px; } .project-public-pdf iframe { height: 420px; } .project-public-pdf-tools, .project-public-footer-card { align-items: flex-start; flex-direction: column; } .project-public-pdf-tools > div:last-child, .project-public-actions { width: 100%; } .project-public-pdf-tools a, .project-public-actions a { flex: 1 1 auto; } }
@media (max-width: 420px) { .project-public-hero { padding-top: 114px; } .project-public-copy h1 { font-size: 42px; } .project-public-viewer { min-height: 220px; } .project-public-pdf { min-height: 395px; } .project-public-pdf iframe { height: 335px; } .project-public-pdf-tools { padding: 16px; } .project-public-file { padding: 42px 20px; } }
