@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root{
  --ink:#191410;
  --cream:#f2eadf;
  --paper:#fbf7f1;
  --rust:#a84f2f;
  --line:rgba(25,20,16,.16);
  --max:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}
img,video{display:block;width:100%;height:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
.grain{position:fixed;inset:0;pointer-events:none;opacity:.045;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
.nav{position:absolute;z-index:10;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:24px 4vw;color:white}
.brand{font-weight:600;letter-spacing:.08em;display:flex;align-items:center;gap:10px}
.brand .logo-badge{width:38px;height:38px;border-radius:50%;overflow:hidden;display:block;flex:none;background:#a84f2f}
.brand .logo-badge img{width:100%;height:100%;object-fit:cover;filter:none;opacity:1}
.brand>span:last-child{font-size:13px;letter-spacing:.12em}
.nav nav{display:flex;gap:28px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.nav-cta{border:1px solid rgba(255,255,255,.55);padding:11px 16px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.hero{height:100svh;min-height:680px;position:relative;background:#21170f;color:white;overflow:hidden}
.hero-video{position:absolute;inset:0;object-position:center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,9,6,.72),rgba(12,9,6,.12) 65%,rgba(12,9,6,.38))}
.hero-content{position:absolute;left:7vw;bottom:12vh;max-width:650px}
.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;opacity:.68;margin:0 0 20px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;font-weight:500}
h1{font-size:clamp(64px,9vw,140px);line-height:.87;letter-spacing:-.055em;margin-bottom:30px}
em{font-style:italic}
.hero-copy{font-size:16px;line-height:1.55;max-width:420px;color:rgba(255,255,255,.82)}
.button{display:inline-flex;gap:22px;align-items:center;margin-top:18px;padding:14px 20px;border:1px solid currentColor;text-transform:uppercase;letter-spacing:.1em;font-size:10px}
.button.light{color:white}
.button.disabled{opacity:.42;cursor:not-allowed;background:transparent}
.hero-note{position:absolute;bottom:26px;right:4vw;font-size:9px;letter-spacing:.16em;opacity:.55}
.statement{max-width:1100px;margin:auto;padding:150px 6vw 140px}
.statement h2{font-size:clamp(42px,6vw,78px);line-height:1.02;letter-spacing:-.035em;max-width:900px}
.body-copy{max-width:600px;font-size:16px;line-height:1.7;color:#5e554d}
.edition{padding:90px 4vw 130px;background:#efe4d5}
.section-head{max-width:var(--max);margin:0 auto 44px;display:flex;justify-content:space-between;align-items:flex-end}
.section-head h2{font-size:clamp(48px,7vw,88px);line-height:.9;margin:0;letter-spacing:-.045em}
.status{font-size:9px;letter-spacing:.16em;border:1px solid var(--line);padding:9px 12px}
.feature-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.3fr .7fr;gap:20px}
.feature-image{height:760px}
.feature-copy{padding:60px 5vw 40px;display:flex;flex-direction:column;justify-content:center}
.edition-number{font-size:10px;letter-spacing:.16em;opacity:.55}
.feature-copy h3{font-size:clamp(38px,5vw,68px);line-height:.98;margin:20px 0 26px}
.feature-copy p{font-size:15px;line-height:1.7;color:#5f554c;max-width:450px}
.line{width:100%;height:1px;background:var(--line);margin:28px 0}
.micro{font-size:9px!important;letter-spacing:.15em;text-transform:uppercase}
.mosaic{max-width:var(--max);margin:20px auto 0;display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:20px}
.mosaic img{height:520px}
.film{display:none}
.film:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.5),transparent 70%)}
.film-caption{position:absolute;z-index:2;left:7vw;bottom:9vh}
.film-caption h2{font-size:clamp(58px,8vw,110px);line-height:.88;margin:0}
.story{display:grid;grid-template-columns:1fr 1fr;max-width:var(--max);margin:auto;min-height:760px}
.story-image{height:800px}
.story-copy{padding:12vw 8vw;display:flex;flex-direction:column;justify-content:center}
.story-copy h2{font-size:clamp(46px,5.5vw,76px);line-height:1;margin-bottom:30px}
.story-copy p{max-width:470px;line-height:1.7;color:#5e554d}
.signature{margin-top:45px;font-family:"Playfair Display",Georgia,serif;font-size:25px}
.signature small{font-family:"DM Sans",Arial,sans-serif;font-size:9px;letter-spacing:.14em}
.process{background:#191410;color:#f4ece2;padding:120px 6vw}
.process .section-head{margin-bottom:70px}
.process .eyebrow{opacity:.5}
.steps{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2)}
.steps article{padding:34px 30px 30px 0;border-right:1px solid rgba(255,255,255,.2);margin-right:30px}
.steps article:last-child{border:0;margin:0}
.steps span{font-size:10px;letter-spacing:.16em;opacity:.45}
.steps h3{font-size:42px;margin:35px 0 16px}
.steps p{max-width:300px;line-height:1.65;color:rgba(244,236,226,.62);font-size:14px}
.next{padding:140px 6vw;background:#c76842;text-align:center}
.next-inner{max-width:720px;margin:auto}
.next h2{font-size:clamp(65px,9vw,120px);line-height:.85;margin:0 0 28px}
.next p{font-size:16px;line-height:1.6}
.next .muted{opacity:.62;font-size:13px}
footer{background:#191410;color:#f4ece2;padding:30px 4vw;display:grid;grid-template-columns:1fr 1fr 1fr;font-size:9px;letter-spacing:.14em}
.footer-note{text-align:center;opacity:.5}
.footer-year{text-align:right;opacity:.5}

@media(max-width:800px){
  .nav{padding:18px 5vw}
  .nav nav{display:none}
  .nav-cta{padding:9px 12px}
  .hero{min-height:620px}
  .hero-content{left:7vw;right:7vw;bottom:10vh}
  h1{font-size:17vw}
  .hero-copy{font-size:14px}
  .statement{padding:95px 7vw}
  .statement h2{font-size:44px}
  .edition{padding:70px 5vw 90px}
  .section-head{align-items:flex-start;gap:20px}
  .feature-grid{grid-template-columns:1fr}
  .feature-image{height:540px}
  .feature-copy{padding:50px 2vw 30px}
  .mosaic{grid-template-columns:1fr 1fr}
  .mosaic img{height:320px}
  .mosaic img:last-child{grid-column:1/-1;height:460px}
  .film{height:70vh;min-height:500px}
  .story{grid-template-columns:1fr}
  .story-image{height:650px}
  .story-copy{padding:90px 8vw}
  .process{padding:90px 7vw}
  .steps{grid-template-columns:1fr}
  .steps article{border-right:0;border-bottom:1px solid rgba(255,255,255,.2);padding:28px 0;margin:0}
  footer{grid-template-columns:1fr;gap:14px}
  .footer-note,.footer-year{text-align:left}
}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}
.reveal.show{opacity:1;transform:none}

.about{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;background:var(--paper)}
.about-image{height:820px}
.about-copy{padding:10vw 8vw;display:flex;flex-direction:column;justify-content:center}
.about-copy h2{font-size:clamp(58px,7vw,100px);line-height:.86;letter-spacing:-.05em;margin:0 0 22px}
.about-copy .role{font-size:10px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:32px;opacity:.55}
.about-copy p{max-width:500px;font-size:15px;line-height:1.75;color:#5e554d}
.founder-sign{margin-top:32px;font-family:"Playfair Display",Georgia,serif;font-size:24px;line-height:1.15}
.founder-sign small{font-family:"DM Sans",Arial,sans-serif;font-size:9px;letter-spacing:.14em;color:#5e554d}
@media(max-width:800px){
  .about{grid-template-columns:1fr}
  .about-image{height:650px}
  .about-copy{padding:80px 8vw}
}

.about-image{background:#000}
.about-image img{background:#000}

.video-library{padding:120px 4vw 130px;background:#f7f0e7}
.video-intro{max-width:var(--max);margin:0 auto 55px}
.video-intro h2{font-size:clamp(48px,6vw,80px);line-height:.95;margin:0;letter-spacing:-.04em}
.video-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.video-card{margin:0}
.video-card video{width:100%;height:520px;object-fit:cover;background:#17130f}
.video-label{display:flex;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}
.video-label span{font-size:9px;letter-spacing:.16em;opacity:.5}
.video-label strong{font-family:"Playfair Display",Georgia,serif;font-weight:500;font-size:24px}
@media(max-width:800px){
  .video-library{padding:90px 5vw}
  .video-grid{grid-template-columns:1fr}
  .video-card video{height:460px}
}
