@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@600&family=DM+Mono:wght@400;500&family=Manrope:wght@400;700;800&display=swap');
:root{--paper:#f0ece3;--ink:#171717;--grid:rgba(23,23,23,.12)}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}body{min-height:100svh;margin:0;background:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:36px 36px;overflow-x:hidden}
.project-header{min-height:100svh;padding:clamp(90px,10vw,140px) clamp(28px,6vw,84px) 70px;display:grid;align-content:center;position:relative}.back{position:absolute;left:clamp(24px,5vw,70px);top:28px;color:inherit;text-decoration:none;font:500 11px DM Mono,monospace;letter-spacing:.12em}.kicker,.section-kicker{font:500 11px DM Mono,monospace;letter-spacing:.18em;margin:0 0 24px}.project-copy{width:min(670px,70vw)}h1{font-size:clamp(52px,9vw,125px);line-height:.88;letter-spacing:-.065em;margin:0 0 28px}.description{font-size:clamp(17px,2vw,24px);line-height:1.5;margin:0 0 30px}.dates{display:flex;gap:30px;border-top:1px solid;padding-top:16px;font:500 11px DM Mono,monospace;text-transform:uppercase}.dates span{display:grid;gap:5px}.dates small{opacity:.55}
.download{position:absolute;z-index:10;right:clamp(18px,5vw,70px);top:clamp(18px,5vw,54px);width:clamp(75px,10vw,125px);aspect-ratio:1;color:inherit;text-decoration:none;filter:drop-shadow(0 10px 8px rgba(0,0,0,.24));transition:transform .25s}.download:hover{transform:translateY(-6px)}.download img{width:100%;display:block}.download-label{position:absolute;left:22%;right:19%;top:51%;height:34%;display:grid;place-content:center;text-align:center;font:600 clamp(9px,1vw,13px)/.92 Caveat,cursive;color:#18243c}.download-label small{display:block;font-size:.58em;margin-top:3px}.download.is-leaving{pointer-events:none;animation:eject .72s cubic-bezier(.4,0,.8,.2) forwards}@keyframes eject{0%{transform:translateY(0)}30%{transform:translateY(-24px)}100%{transform:translateY(-120vh);opacity:0}}
.download-hint{position:absolute;z-index:8;right:clamp(105px,14vw,205px);top:clamp(82px,9vw,125px);width:clamp(150px,17vw,220px);color:#b6382e;transform:rotate(-5deg);pointer-events:none}.download-hint span{display:block;font:600 clamp(18px,2vw,27px)/1 Caveat,cursive;text-align:left}.download-hint svg{display:block;width:78%;height:auto;margin:-4px 0 0 auto;overflow:visible}.download-hint path{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.project-details{padding:clamp(60px,8vw,110px) clamp(28px,6vw,84px);border-top:1px solid;background:rgba(255,255,255,.4)}.details-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:clamp(40px,8vw,120px);max-width:1200px;margin:auto}.details-grid h2,.gallery h2{font-size:clamp(34px,5vw,68px);line-height:1;letter-spacing:-.04em;margin:0 0 25px}.body-copy{font-size:clamp(16px,1.6vw,20px);line-height:1.75}.facts{border-top:1px solid;margin:0}.facts div{padding:15px 0;border-bottom:1px solid}.facts dt{font:500 10px DM Mono,monospace;text-transform:uppercase;opacity:.55;margin-bottom:5px}.facts dd{margin:0;font-weight:700}.feature-list{padding-left:20px;line-height:1.8}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{border:1px solid;border-radius:99px;padding:7px 12px;font:500 10px DM Mono,monospace}
.gallery{max-width:1200px;margin:clamp(70px,10vw,130px) auto 0}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.photo{position:relative;width:100%;height:auto;border:1px solid;display:block;background:#d9d1c3;margin:0;overflow:visible}.photo:first-child{grid-column:1/-1}.photo img{display:block;width:100%;height:auto;max-height:none;object-fit:unset}.photo span{display:grid;min-height:260px;place-items:center;font:500 11px DM Mono,monospace;opacity:.55}.photo span:before{content:'＋ '}
@media(max-width:720px){.project-copy{width:100%}h1{font-size:clamp(48px,15vw,82px);max-width:80%}.download{width:82px;top:55px}.download-hint{right:100px;top:118px;width:145px}.download-hint span{font-size:18px}.details-grid,.gallery-grid{grid-template-columns:1fr}.photo:first-child{grid-column:auto}}@media(prefers-reduced-motion:reduce){.download.is-leaving{animation:none;opacity:0}}
