:root{
  --cream:#F4EDE0; --panel:#EDE4D2; --cocoa:#4A3F30; --camel:#B89968; --fawn:#7C6F59;
  --body:#6A5F4C; --rule:#DBD0BA; --umber:#2B2620; --ivory:#EFE6D4; --brass:#C2A367;
  --disp:'Cormorant Garamond',Georgia,serif; --sans:'Jost',system-ui,sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--cream);color:var(--body);font-family:var(--sans);font-weight:300;
  font-size:17px;line-height:1.85;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
h1,h2,h3{font-family:var(--disp);font-weight:500;color:var(--cocoa);margin:0;line-height:1.1;}
a{color:inherit;text-decoration:none;}
.wrap{max-width:1200px;margin:0 auto;padding:0 40px;}
.eyebrow{font-size:11px;letter-spacing:.30em;text-transform:uppercase;color:var(--camel);
  font-weight:300;margin:0 0 22px;}
.wm-wrap{display:inline-block;color:var(--cocoa);line-height:0;}
.link{font-size:12px;letter-spacing:.20em;text-transform:uppercase;color:var(--cocoa);
  border-bottom:0.5px solid var(--camel);padding-bottom:5px;display:inline-block;
  transition:color .3s,border-color .3s;}
.link:hover{color:var(--camel);}

/* NAV */
header{position:fixed;inset:0 0 auto 0;z-index:50;transition:background .4s,border-color .4s,padding .4s;
  border-bottom:0.5px solid transparent;}
header.solid{background:rgba(244,237,224,.92);backdrop-filter:blur(8px);border-color:var(--rule);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:26px 40px;}
header.solid .nav{padding:18px 40px;}
.brand{width:118px;color:var(--cocoa);transition:width .4s;}
.brand svg{width:100%;height:auto;display:block;}
header.solid .brand{width:104px;}
.menu{display:flex;gap:38px;align-items:center;}
.menu a{font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--cocoa);
  font-weight:300;transition:color .3s;}
.menu a:hover{color:var(--camel);}
.burger{display:none;background:none;border:none;color:var(--cocoa);font-size:20px;cursor:pointer;}

/* HERO */
.hero{min-height:100vh;display:grid;grid-template-columns:46% 54%;align-items:stretch;}
.hero-text{display:flex;flex-direction:column;justify-content:center;padding:120px 56px 80px 40px;}
.hero-sig{width:min(78%,420px);margin:0 0 30px;color:var(--cocoa);}
.hero-sig svg{width:100%;height:auto;display:block;}
.hero h1{font-size:clamp(34px,4.4vw,60px);letter-spacing:.005em;margin:0 0 26px;}
.hero h1 em{font-style:italic;}
.hero p{max-width:34ch;margin:0 0 40px;color:var(--body);}
.hero-img{position:relative;}
.hero-img .ph{height:100%;min-height:520px;border-left:0.5px solid var(--rule);}

/* IMAGERY */
.ph{position:relative;margin:0;min-height:280px;background:var(--panel) center/cover no-repeat;
  filter:saturate(.92) contrast(1.02);}
.ph::after{content:"";position:absolute;inset:0;background:rgba(74,63,48,.14);
  mix-blend-mode:multiply;pointer-events:none;}
.ph-cap{position:absolute;left:16px;bottom:12px;z-index:1;font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(244,237,224,.92);text-shadow:0 1px 3px rgba(0,0,0,.4);}

/* STATEMENT */
.statement{padding:140px 0;text-align:center;}
.statement h2{font-size:clamp(28px,3.4vw,44px);max-width:20ch;margin:0 auto;line-height:1.22;}
.statement h2 em{font-style:italic;color:var(--fawn);}
.rule-c{width:44px;height:0.6px;background:var(--camel);margin:40px auto 0;}

.sec-label{font-size:11px;letter-spacing:.30em;text-transform:uppercase;color:var(--camel);margin:0 0 8px;}

/* WORK */
.work{padding:40px 0 120px;}
.stream{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:56px 0;}
.stream.rev .s-media{order:2;}
.stream .ph{min-height:460px;}
.s-body h3{font-size:clamp(26px,3vw,40px);margin:14px 0 20px;}
.s-body p{max-width:38ch;margin:0 0 28px;}

/* CATALOGUE */
.catalogue{padding:120px 0;background:var(--panel);border-top:0.5px solid var(--rule);border-bottom:0.5px solid var(--rule);}
.cat-head{max-width:52ch;margin:0 0 64px;}
.cat-head h2{font-size:clamp(28px,3.4vw,44px);margin:12px 0 24px;}
.ateliers{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.atelier{text-align:center;}
.atelier .ph{min-height:250px;margin:0 0 16px;}
.atelier .a-name{font-family:var(--disp);font-size:19px;color:var(--cocoa);}
.atelier .a-loc{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--fawn);margin-top:4px;}
.cat-foot{margin-top:56px;font-family:var(--disp);font-style:italic;font-size:22px;color:var(--fawn);text-align:center;}

/* APPROACH */
.approach{padding:130px 0;}
.appr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px;margin-top:56px;}
.movement .m-num{font-family:var(--disp);font-size:15px;color:var(--camel);letter-spacing:.1em;
  padding-bottom:16px;border-bottom:0.5px solid var(--rule);margin-bottom:22px;}
.movement h3{font-size:24px;margin:0 0 14px;}
.movement p{font-size:15.5px;margin:0;}

/* IDA */
.ida{position:relative;padding:160px 0;text-align:center;color:var(--ivory);
  background:var(--umber) center/cover no-repeat;overflow:hidden;}
.ida::before{content:"";position:absolute;inset:0;background:rgba(30,26,21,.74);}
.ida .wrap{position:relative;z-index:1;}
.ida .eyebrow{color:var(--brass);}
.ida-sig{width:min(60%,320px);margin:0 auto 6px;color:var(--ivory);}
.ida-sig svg{width:100%;height:auto;display:block;}
.ida h2{color:var(--ivory);font-size:clamp(30px,4vw,52px);font-style:italic;font-weight:400;margin:0 0 24px;}
.ida p{max-width:30ch;margin:0 auto;color:#D3C7AF;}
.ida .rule-c{background:var(--brass);}

/* ENQUIRE */
.enquire{padding:130px 0;}
.enq-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
.enq-left h2{font-size:clamp(30px,3.8vw,50px);margin:14px 0 28px;}
.enq-left p{max-width:34ch;margin:0 0 32px;}
.enq-mail{font-family:var(--disp);font-style:italic;font-size:24px;color:var(--cocoa);
  border-bottom:0.5px solid var(--camel);padding-bottom:6px;}
.field{margin-bottom:26px;}
.field label{display:block;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--fawn);margin-bottom:10px;}
.field input,.field textarea{width:100%;background:transparent;border:none;border-bottom:0.5px solid var(--rule);
  padding:10px 0;font-family:var(--sans);font-weight:300;font-size:16px;color:var(--cocoa);transition:border-color .3s;}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--camel);}
.field textarea{resize:vertical;min-height:80px;}
.btn{background:var(--cocoa);color:var(--cream);border:none;font-family:var(--sans);font-weight:300;
  font-size:12px;letter-spacing:.22em;text-transform:uppercase;padding:16px 34px;cursor:pointer;transition:background .3s;}
.btn:hover{background:var(--camel);}

/* FOOTER */
footer{background:var(--panel);border-top:0.5px solid var(--rule);padding:80px 0 48px;text-align:center;}
.foot-sig{width:150px;margin:0 auto 18px;color:var(--cocoa);}
.foot-sig svg{width:100%;height:auto;display:block;}
.foot-line{font-family:var(--disp);font-style:italic;font-size:18px;color:var(--fawn);margin-bottom:36px;}
.foot-nav{display:flex;gap:34px;justify-content:center;margin-bottom:44px;flex-wrap:wrap;}
.foot-nav a{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--cocoa);transition:color .3s;}
.foot-nav a:hover{color:var(--camel);}
.credit{font-size:10px;letter-spacing:.20em;text-transform:uppercase;color:var(--fawn);}

.reveal{opacity:0;transform:translateY(22px);transition:opacity 1s ease,transform 1s ease;}
.reveal.in{opacity:1;transform:none;}

@media(max-width:900px){
  .wrap{padding:0 26px;}
  .menu{display:none;} .burger{display:block;}
  header.open .menu{display:flex;position:absolute;top:100%;right:0;left:0;flex-direction:column;
    gap:22px;background:var(--cream);padding:28px 26px;border-bottom:0.5px solid var(--rule);}
  .hero{grid-template-columns:1fr;min-height:auto;}
  .hero-text{padding:130px 26px 60px;}
  .hero-img .ph{min-height:64vh;border-left:none;border-top:0.5px solid var(--rule);}
  .stream,.enq-grid{grid-template-columns:1fr;gap:32px;padding:36px 0;}
  .stream.rev .s-media{order:0;}
  .ateliers{grid-template-columns:1fr 1fr;gap:20px;}
  .appr-grid{grid-template-columns:1fr;gap:36px;}
  .statement,.approach,.enquire,.catalogue,.ida{padding:90px 0;}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto;} .reveal{opacity:1;transform:none;transition:none;}}

/* enquiry success state */
.enq-thanks{font-family:var(--disp);font-style:italic;font-size:22px;color:var(--fawn);}
