@font-face{font-family:Bodoni;src:url('assets/bodoni.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--paper:#eeeae2;--ink:#0b0b0b;--blood:#790b12;--serif:Bodoni,'Bodoni MT',Didot,Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:3vw}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #a6252b;outline-offset:7px}.skip{position:fixed;top:10px;left:10px;z-index:50;padding:12px;background:white;transform:translateY(-180%)}.skip:focus{transform:none}.world{width:100%;position:relative;isolation:isolate;background:var(--paper) url('assets/world.webp') center top/100% 100% no-repeat;overflow:hidden}.hero{height:65vw;position:relative}.header{position:relative;z-index:3;display:flex;align-items:center;gap:3.2vw;padding:2.5vw 3.4vw}.wordmark{font-size:2.1vw;letter-spacing:.27em;font-weight:bold;white-space:nowrap}.header nav{border-left:1px solid #333;display:flex;gap:3.5vw;padding-left:3.6vw}.header nav a{font-size:1.05vw;letter-spacing:.23em;padding:7px 0;position:relative}.header nav a:after{content:'';position:absolute;height:2px;background:var(--blood);bottom:0;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .25s}.header nav a:hover:after{transform:scaleX(1)}.hero-copy{position:absolute;left:2.7%;top:13%;width:52%;z-index:2}h1,h2,p{margin:0}h1{font-family:var(--serif);font-size:15.4vw;line-height:.95;letter-spacing:-.07em;font-weight:700;transform:scaleX(.9);transform-origin:left;width:112%}.tagline{font-family:var(--serif);font-size:4.2vw;line-height:1.06;letter-spacing:-.048em;margin-top:2.8vw}.actions{display:flex;gap:1.5vw;margin-top:2.8vw;width:100%}.action{font-family:Georgia,serif;font-size:1.6vw;font-weight:700;min-height:6.5vw;padding:1.5vw 1.7vw;display:inline-flex;align-items:center;justify-content:center;gap:.8vw;white-space:nowrap;box-shadow:0 5px 8px #0005;transition:transform .25s,box-shadow .25s;position:relative;border:1px solid #e2dacf}.primary{background:#770d10 url('assets/red.webp') center/cover;color:#fff6e9}.secondary{background:#f3eee5 url('assets/paper.webp') center/cover}.action img{width:2.5vw;height:2.5vw;object-fit:contain;filter:grayscale(1) brightness(0)}.action span{font-size:2.2vw;line-height:1}.action:hover{transform:translateY(-4px);box-shadow:0 9px 18px #0005}.link-status{margin-top:1vw;font-size:1.15vw;color:var(--blood);min-height:1.5em}.card-signature{position:absolute;left:18%;top:77%;font-size:2.8vw;letter-spacing:.14em;transform:rotate(-12deg);pointer-events:none}.about{height:36vw;position:relative;scroll-margin-top:0}.about-copy{position:absolute;left:3.3%;top:13%;width:49%}h2{font-family:var(--serif);font-size:6.1vw;line-height:.95;letter-spacing:-.055em}.about-copy p{font-size:1.85vw;line-height:1.4;margin-top:2vw;max-width:45vw}.gallery{position:relative;height:49vw;color:#f8f0e4}.gallery>h2{position:absolute;left:3.3%;top:16%;font-size:6.4vw}.photographs{position:absolute;left:34%;top:0;width:62%;height:82%}.photo{--angle:0deg;position:absolute;margin:0;width:43%;height:83%;padding:1.05vw 1.05vw 4.3vw;background:var(--paper) url('assets/paper.webp') center/cover;box-shadow:0 12px 25px #0007;transform:rotate(var(--angle));transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,filter .35s;outline:0;cursor:default;will-change:transform}.photo-one{--angle:8deg;left:0;top:10%;z-index:2}.photo-two{--angle:-9deg;left:36%;top:-5%;height:67%;z-index:1}.photo-three{--angle:10deg;left:55%;top:42%;height:67%;z-index:3}.photo-image{width:100%;height:100%;background-image:url('assets/archive.webp');background-size:300% 100%;background-repeat:no-repeat}.scene-one{background-position:0% center}.scene-two{background-position:50% center}.scene-three{background-position:100% center}.photo:hover,.photo:focus-visible{transform:translateY(-16px) rotate(0deg) scale(1.035);box-shadow:0 22px 34px #0008,0 0 24px 5px #fff8;z-index:5;filter:brightness(1.04)}footer{position:absolute;bottom:3.3vw;left:0;right:0;text-align:center}footer .wordmark{font-size:1.9vw;letter-spacing:.45em}
@media(min-width:1700px){.link-status{font-size:18px}}
@media(max-width:700px){html{scroll-padding-top:24px}.world{background:none;overflow:hidden}.hero{height:940px;background:var(--paper) url('assets/hero-mobile.webp') center bottom/cover no-repeat}.header{padding:24px 20px;justify-content:space-between;gap:18px}.wordmark{font-size:18px;letter-spacing:.2em}.header nav{gap:20px;padding-left:18px}.header nav a{font-size:12px;letter-spacing:.12em}.hero-copy{left:6%;top:94px;width:88%}h1{font-size:19.6vw;transform:none;width:100%;letter-spacing:-.068em}.tagline{font-size:7.2vw;margin-top:20px;line-height:1.1}.actions{gap:12px;margin-top:25px;flex-wrap:wrap}.action{font-size:14px;min-height:54px;padding:14px 17px;gap:10px}.action img{width:23px;height:23px}.action span{font-size:26px}.link-status{font-size:14px;margin-top:12px}.card-signature{font-size:24px;left:15%;top:auto;bottom:93px}.about{height:530px;background:var(--paper) url('assets/about-mobile.webp') center bottom/cover no-repeat;margin-top:-2px}.about-copy{left:6%;top:40px;width:88%}h2{font-size:10vw}.about-copy p{font-size:17px;max-width:82%;margin-top:20px}.gallery{height:800px;background:#64080e url('assets/red.webp') center/cover;margin-top:-2px}.gallery>h2{top:30px;left:6%;font-size:14vw;z-index:4}.photographs{left:12%;top:195px;width:80%;height:480px}.photo{padding:10px 10px 38px;width:57%;height:64%}.photo-one{left:-3%;top:1%}.photo-two{left:43%;top:-13%;height:55%}.photo-three{left:32%;top:48%;height:58%}footer{bottom:33px}footer .wordmark{font-size:19px}.photo:hover,.photo:focus-visible{transform:translateY(-10px) rotate(0) scale(1.02)}}
@media(max-width:360px){.header{padding:20px 14px}.header nav{gap:12px;padding-left:12px}.wordmark{font-size:16px}.action{font-size:12px;padding:13px 12px}.hero{height:880px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.photo:hover,.photo:focus-visible{transform:rotate(var(--angle));box-shadow:0 0 20px 4px #fff8}.action:hover{transform:none}}
/* Original reference artwork is split into independent scene layers. */
.world{background:#eeeae2 url('assets/paper.webp') repeat;background-size:640px 70px}
.hero{background:none;z-index:2}
.hero-art{position:absolute;right:0;top:0;width:46.29vw;height:60.06vw;background:url('assets/hero-art.webp') center/100% 100% no-repeat;mask-image:linear-gradient(to right,transparent,#000 13%)}
.hero-seam{position:absolute;left:0;top:43.945vw;width:100%;height:23.438vw;background:url('assets/hero-seam.webp') center/100% 100% no-repeat;z-index:1;pointer-events:none;mask-image:linear-gradient(to bottom,transparent,#000 13%,#000 94%,transparent)}
.about-art{position:absolute;right:0;top:-3.96vw;width:48.05vw;height:35.156vw;background:url('assets/about-art.webp') center/100% 100% no-repeat;mask-image:linear-gradient(to right,transparent,#000 10%)}
.about-seam{position:absolute;bottom:-2vw;left:0;right:0;height:11.14vw;background:url('assets/about-seam.webp') left top/100% 100% no-repeat;z-index:2;pointer-events:none}
.about-copy{z-index:3}
.gallery{background:#690a0e url('assets/red.webp') center/cover;z-index:1}
.photographs{z-index:3}
@media(max-width:700px){
 .world{background-size:640px 70px}.hero{height:960px;background:none}
 .hero-art{top:320px;right:0;width:90%;height:590px;background-size:cover;background-position:center top;mask-image:linear-gradient(to bottom,transparent,#000 7%,#000 89%,transparent)}
 .hero-seam{top:auto;bottom:-15px;height:230px;background-size:auto 230px;background-position:25% bottom;mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 93%,transparent)}
 .hero-copy{top:100px}.about{height:600px;background:none;z-index:2}
 .about-art{top:170px;right:-10%;width:90%;height:400px;background-size:contain;background-position:center;mask-image:linear-gradient(to right,transparent,#000 12%)}
 .about-seam{height:90px;bottom:-4px;background-size:100% 100%}.about-copy{top:35px}.gallery{height:810px}
}
/* Final reference alignment and small-screen typography. */
h1{font-size:13.4vw;transform:scaleX(.73);width:138%;height:15vw}
.about h2{font-size:5.7vw;white-space:nowrap;transform:scaleX(.83);transform-origin:left;width:120%}
.about-copy p{font-size:1.65vw;max-width:48vw;width:48vw}
.about-seam{height:7.031vw;bottom:-1vw}
.photo{background-size:320px 35px}
@media(max-width:700px){
 h1{font-size:16.2vw;transform:scaleX(.94);width:106%;height:auto}
 .hero-art{width:100%;height:540px;top:345px;right:0;background-size:100% auto;background-position:center top;mask-image:linear-gradient(to bottom,transparent,#000 7%,#000 90%,transparent)}
 .about h2{font-size:10vw;width:120%;transform:scaleX(.86)}
 .about-copy p{font-size:17px;width:88%;max-width:88%}
 .about-art{mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 93%,transparent)}
 .about-seam{height:65px;bottom:-1px}
}
.hero-art{width:44.531vw}
.about-art{mask-image:linear-gradient(to right,transparent,#000 12%),linear-gradient(to bottom,transparent,#000 5%,#000 86%,transparent);mask-composite:intersect}
.about-seam{mask-image:linear-gradient(to bottom,#000 80%,transparent)}
.gallery{background-size:560px 340px}
@media(max-width:700px){.hero-art{width:100%}.about-art{top:140px;right:-5%;width:105%;height:440px;background-size:100% auto;mask-image:linear-gradient(to right,transparent,#000 10%),linear-gradient(to bottom,transparent,#000 14%,#000 78%,transparent);mask-composite:intersect}.gallery{background-size:560px 340px}}
.about{background:linear-gradient(to bottom,transparent calc(100% - 5vw),#690a0e calc(100% - 4vw))}
@media(max-width:700px){.about{background:linear-gradient(to bottom,transparent calc(100% - 40px),#690a0e calc(100% - 30px))}.about-art{top:190px;height:340px;background-size:100% 100%;mask-image:linear-gradient(to right,transparent,#000 8%),linear-gradient(to bottom,transparent,#000 12%,#000 85%,transparent);mask-composite:intersect}}
.gallery{background-size:cover;z-index:3}
.header nav a{font-size:clamp(12px,1.05vw,20px)}
.action{font-size:clamp(12px,1.6vw,32px)}
@media(max-width:700px){.action{font-size:14px}.header nav a{font-size:12px}}
