
:root{--bg:#f4f2ec;--ink:#151512;--line:#b9b6ad;--muted:#69675f}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}img{display:block;width:100%}
header{position:fixed;z-index:30;top:0;left:0;width:100%;padding:18px 24px;display:flex;justify-content:space-between;align-items:center;background:rgba(244,242,236,.84);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.08)}
.brand{font-weight:700;font-size:13px;letter-spacing:.09em}.nav{display:flex;gap:22px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
main{padding-top:52px}.hero{min-height:calc(100vh - 52px);position:relative;background:#ddd}.hero img{height:calc(100vh - 52px);object-fit:cover}
.hero-title{position:absolute;left:24px;bottom:24px;color:#fff;font-size:clamp(48px,9vw,140px);line-height:.82;letter-spacing:-.065em}
.manifesto{padding:12vw 7vw;display:grid;grid-template-columns:1.15fr .85fr;gap:9vw}.manifesto h1{font-size:clamp(38px,5.8vw,86px);line-height:.93;letter-spacing:-.055em;margin:0}.manifesto p{font-size:18px;line-height:1.55;margin:0;max-width:600px}
.section{padding:0 24px 120px}.rule{border-top:1px solid var(--line);padding-top:10px;margin-bottom:28px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.card{grid-column:span 6;margin-bottom:55px}.card:nth-child(3n+1){grid-column:span 7}.card:nth-child(3n+2){grid-column:span 5}
.card img{aspect-ratio:4/3;object-fit:cover}.meta{display:flex;justify-content:space-between;gap:15px;padding-top:9px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.wip{background:#e7e3d8;padding-top:90px}.wip .card img{filter:saturate(.9)}
.studio{padding:12vw 7vw;display:grid;grid-template-columns:1fr 1fr;gap:9vw}.studio h2{font-size:clamp(44px,6vw,90px);line-height:.9;letter-spacing:-.055em;margin:0}.studio p{font-size:18px;line-height:1.55;margin:0 0 28px}.portrait{aspect-ratio:4/5;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-top:35px}
.press{padding:0 24px 120px}.press-row{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;border-top:1px solid var(--line);padding:13px 0;font-size:13px}.press-row:last-child{border-bottom:1px solid var(--line)}
.contact{padding:8vw 24px 40px}.contact h2{font-size:clamp(70px,13vw,190px);letter-spacing:-.075em;line-height:.8;margin:0 0 70px}.contactline{border-top:1px solid var(--line);padding-top:10px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.09em;text-transform:uppercase}
.project-head{padding:9vw 24px 40px;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw}.project-head h1{font-size:clamp(60px,10vw,150px);line-height:.8;letter-spacing:-.07em;margin:0}.project-info{align-self:end}.project-info p{font-size:16px;line-height:1.55;max-width:520px}.facts{margin-top:25px;border-top:1px solid var(--line)}.fact{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:8px 0;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.gallery{padding:0 24px 100px}.gallery img{margin-bottom:24px;max-height:92vh;object-fit:cover}.gallery .pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.back{padding:0 24px 50px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
footer{padding:50px 24px 20px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:760px){header{padding:15px 14px}.nav{gap:11px;font-size:9px}.hero-title{left:14px;bottom:18px}.manifesto,.studio,.project-head{grid-template-columns:1fr;padding:90px 14px;gap:45px}.section,.press,.gallery,.back,.contact{padding-left:14px;padding-right:14px}.grid{display:block}.card{margin-bottom:42px}.press-row{grid-template-columns:1fr auto}.press-row span:nth-child(2){display:none}.contactline{flex-direction:column;gap:18px}.gallery .pair{grid-template-columns:1fr;gap:0}.project-head h1{font-size:17vw}}

@font-face{
  font-family:'Nersans';
  src:url('assets/nersans-one-regular.otf') format('opentype');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
body{font-family:'Nersans',Arial,Helvetica,sans-serif}
.brand{font-weight:400}
.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.card,.card:nth-child(3n+1),.card:nth-child(3n+2){grid-column:auto;margin-bottom:48px}
.card img{aspect-ratio:4/3;object-fit:cover}
.meta{font-size:12px;padding-top:11px}
.press{padding-top:55px;padding-bottom:150px}
.press .rule{margin-bottom:0}
.press-row{
  grid-template-columns:1.15fr 1.85fr auto;
  padding:22px 0;
  font-size:16px;
  align-items:center
}
.press-row strong{font-weight:400;font-size:24px;letter-spacing:-.02em}
.contact{padding-top:70px;padding-bottom:50px}
.contact h2{
  font-size:clamp(34px,5vw,68px);
  line-height:1;
  letter-spacing:-.045em;
  margin:0 0 45px
}
.placeholder-card{
  aspect-ratio:4/3;
  border:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:20px;
  color:var(--muted);
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase
}
@media(max-width:760px){
  .grid{display:grid;grid-template-columns:1fr;gap:0}
  .press-row{grid-template-columns:1fr auto;font-size:13px}
  .press-row strong{font-size:19px}
}

/* V4 — hierarchy + RAL 1020 inspired olive */
:root{--ral1020:#9A8F43}

/* Top navigation / identity */
header{color:var(--ral1020)}
.brand{font-weight:400}
.nav a{font-weight:400}

/* Typographic hierarchy: Nersans stays regular by default */
body{font-weight:400}
h1,h2,.hero-title,.project-head h1{font-weight:400}
.manifesto h1{font-weight:400}
.rule{font-weight:400}
.meta span:first-child{font-weight:400}
.meta span:last-child{font-weight:400;color:var(--muted)}
.project-info strong,.studio strong{font-weight:400}

/* Press: title has emphasis through size, not bold */
.press-row strong{font-weight:400}

/* V5 — bird mark in fixed header */
.brand{display:flex;align-items:center;gap:10px}
.brand-logo{display:block;width:31px;height:31px;object-fit:contain}
@media(max-width:760px){.brand{gap:7px}.brand-logo{width:26px;height:26px}}

/* V6 — taller header, studio mark, address, Instagram icon */
header{
  padding:34px 24px;
}
main{
  padding-top:100px;
}
.hero{
  min-height:calc(100vh - 100px);
}
.hero img{
  height:calc(100vh - 100px);
}
.studio-heading{
  display:flex;
  align-items:center;
  gap:22px;
}
.studio-logo{
  width:72px;
  height:72px;
  object-fit:contain;
  flex:0 0 auto;
}
.studio-address{
  margin-top:46px !important;
  font-size:15px !important;
  line-height:1.55 !important;
}
.contactline{
  align-items:flex-start;
  gap:40px;
}
.contactline > span{
  line-height:1.55;
}
.instagram-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.instagram-icon{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
}
@media(max-width:760px){
  header{padding:24px 14px}
  main{padding-top:78px}
  .hero{min-height:calc(100vh - 78px)}
  .hero img{height:calc(100vh - 78px)}
  .studio-heading{gap:14px}
  .studio-logo{width:48px;height:48px}
  .contactline{gap:22px}
}

/* V7 — icon-only header + founder story */
.brand-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:64px;
  height:64px;
}
.brand-icon img{
  width:64px;
  height:64px;
  object-fit:contain;
}
.founder{
  margin-bottom:46px !important;
}
.founder strong{
  font-weight:400;
  font-size:21px;
}
.founder span{
  display:inline-block;
  margin-top:6px;
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--muted);
}
.origin-story{
  max-width:620px;
}
.origin-story p{
  font-size:17px;
  line-height:1.6;
  margin:0 0 22px;
}
.origin-story strong{
  font-weight:400;
}
.signature{
  font-size:13px !important;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-top:8px !important;
}
.archive-rounds{
  display:flex;
  align-items:flex-start;
  gap:26px;
  margin:42px 0 50px;
}
.archive-rounds figure{
  margin:0;
}
.archive-rounds figure:first-child{
  transform:translateY(10px);
}
.archive-rounds img{
  width:132px;
  height:132px;
  border-radius:50%;
  object-fit:cover;
  filter:grayscale(1);
}
.archive-rounds figure:nth-child(2) img{
  width:108px;
  height:108px;
}
.archive-rounds figcaption{
  margin-top:8px;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted);
  max-width:132px;
}
@media(max-width:760px){
  .brand-icon,.brand-icon img{
    width:48px;
    height:48px;
  }
  .archive-rounds{
    gap:18px;
    margin-top:34px;
  }
  .archive-rounds img{
    width:104px;
    height:104px;
  }
  .archive-rounds figure:nth-child(2) img{
    width:88px;
    height:88px;
  }
}

/* V8 corrections */
header .brand.brand-icon{
  display:flex !important;
  align-items:center;
  justify-content:flex-start;
  width:64px;
  height:64px;
  overflow:visible;
}
header .brand.brand-icon .brand-logo{
  display:block;
  width:64px;
  height:64px;
  object-fit:contain;
}
.archive-pair{
  display:flex;
  align-items:flex-end;
  gap:18px;
  margin:38px 0 50px;
}
.archive-pair figure{
  margin:0;
}
.archive-pair img{
  display:block;
  width:190px;
  height:132px;
  object-fit:cover;
  filter:grayscale(1);
}
.archive-pair .archive-small img{
  width:145px;
  height:100px;
}
.archive-pair figcaption{
  margin-top:7px;
  font-size:10px;
  line-height:1.3;
  letter-spacing:.07em;
  text-transform:uppercase;
  color:var(--muted);
}
@media(max-width:760px){
  header .brand.brand-icon,
  header .brand.brand-icon .brand-logo{
    width:48px;
    height:48px;
  }
  .archive-pair{
    gap:12px;
    align-items:flex-start;
  }
  .archive-pair img{
    width:148px;
    height:103px;
  }
  .archive-pair .archive-small img{
    width:112px;
    height:78px;
  }
}

/* V9 — archive alignment + header inset */
header{
  padding-left:64px;
  padding-right:64px;
}
.archive-block{
  margin:38px 0 50px;
}
.archive-block .archive-pair{
  display:flex;
  align-items:flex-start;
  gap:18px;
  margin:0;
}
.archive-block .archive-pair figure{
  margin:0;
}
.archive-block .archive-pair img,
.archive-block .archive-pair .archive-small img{
  display:block;
  width:168px;
  height:116px;
  object-fit:cover;
  filter:grayscale(1);
}
.archive-block .archive-caption{
  margin:9px 0 0;
  font-size:10px;
  line-height:1.3;
  letter-spacing:.07em;
  text-transform:uppercase;
  color:var(--muted);
}
@media(max-width:760px){
  header{
    padding-left:22px;
    padding-right:22px;
  }
  .archive-block .archive-pair{
    gap:10px;
  }
  .archive-block .archive-pair img,
  .archive-block .archive-pair .archive-small img{
    width:calc((100vw - 54px)/2);
    height:auto;
    aspect-ratio:1.45/1;
    object-fit:cover;
  }
}
