@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400&family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400&family=Plus+Jakarta+Sans:wght@400;500;600&family=Noto+Sans+Thai:wght@400;500&display=swap');
:root{--red:#af292d;--ink:#252522;--muted:#73716c;--line:#dedbd5;--paper:#fff;--soft:#f5f3ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.8 'Plus Jakarta Sans','Noto Sans Thai',sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.04}h1{font-size:clamp(54px,6.5vw,96px)}h2{font-size:clamp(42px,4.8vw,66px)}h3{font-size:34px}p+p{margin-top:16px}.wrap{max-width:1272px;margin:auto;padding:0 44px}.header{height:110px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);gap:30px}.nav{display:flex;gap:24px;font-size:11px}.nav a{padding:8px 0}.nav a[aria-current=page]{color:var(--red);border-bottom:1px solid var(--red)}.brand{display:flex;align-items:center;gap:10px}.brand img{width:37px;height:45px;object-fit:contain}.brand strong{font-weight:500;font-size:19px;letter-spacing:-.7px;line-height:1.1;display:block}.brand small{display:block;font-size:8px;letter-spacing:2.8px;margin-top:5px}.header-contact{justify-self:end;font-size:11px}.arrow{color:var(--red);margin-left:14px}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--red);margin-bottom:22px}.hero{position:relative;min-height:550px;display:flex;align-items:center;background:#161b1c;color:white;overflow:hidden}.hero>img{position:absolute;inset:0;height:100%;object-position:center 48%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.1))}.hero-content{position:relative;z-index:1;width:100%;padding-top:75px;padding-bottom:70px}.hero .eyebrow{color:#fff9}.hero h1{max-width:650px}.hero em{font-weight:400}.hero p{max-width:430px;margin:22px 0 30px;color:#e4e1dc}.text-link{display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:7px;font-size:12px}.hero-credit{position:absolute;z-index:1;bottom:18px;right:44px;font-size:8px;color:#ddd}.index{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding-top:38px;padding-bottom:40px}.index a{border-top:1px solid var(--line);padding-top:15px;display:grid;grid-template-columns:24px 1fr 15px;gap:12px}.index small{color:var(--red);font-size:9px}.index b{font-weight:400;font-size:13px}.index span{font-size:10px;color:var(--muted);display:block}.section{padding-top:85px;padding-bottom:85px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:100px}.intro h2{max-width:520px}.prose{max-width:590px;color:#5f5d58}.prose .text-link{margin-top:28px;color:var(--ink)}.rule{border-top:1px solid var(--line)}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:38px;gap:30px}.muted{color:var(--muted)}.photo-row{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-bottom:80px}.photo-row:nth-child(even) .photo{order:2}.photo-row:last-child{margin-bottom:0}.photo img{aspect-ratio:1.2}.caption{font-size:9px;color:var(--muted);margin-top:9px}.photo-row h2{margin-bottom:26px}.photo-row p{color:#65615b}.detail-list{list-style:none;padding:0;margin:28px 0 0}.detail-list li{border-top:1px solid var(--line);padding:17px 0}.detail-list b{font-weight:500;color:var(--ink);display:block;margin-bottom:4px}.detail-list span{font-size:12px;color:var(--muted)}.page-head{padding:70px 0 65px}.page-head h1{max-width:880px}.page-head p{max-width:620px;margin-top:26px;color:var(--muted)}.soft{background:var(--soft)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:40px}.steps>div{border-top:1px solid var(--line);padding-top:20px}.steps h3{margin:15px 0}.steps p{color:var(--muted);font-size:12px}.number{font-size:10px;color:var(--red)}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px}.work-grid img{aspect-ratio:1.6}.work-grid h3{margin:19px 0 7px}.work-grid .wide{grid-column:1/-1}.work-grid .wide img{aspect-ratio:2.25}.credits{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding:38px 0;border-top:1px solid var(--line)}.credits h3{font-size:30px}.credit-list{display:flex;flex-wrap:wrap;gap:10px 24px;line-height:2}.founder{display:grid;grid-template-columns:220px 1fr;gap:80px;border-top:1px solid var(--line);padding:55px 0}.monogram{background:var(--soft);min-height:260px;display:flex;align-items:center;justify-content:center;flex-direction:column;font:72px 'Cormorant Garamond',serif;color:var(--red)}.monogram small{font:8px 'Plus Jakarta Sans',sans-serif;letter-spacing:2px;color:var(--muted);margin-top:15px}.founder h2{margin-bottom:25px}.founder .prose{max-width:760px}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:100px}.contact-email{font-size:clamp(18px,2.9vw,37px);border-bottom:1px solid var(--line);padding:22px 0;display:block;overflow-wrap:anywhere}.contact-grid h3{margin-bottom:20px}.contact-block{margin-bottom:35px}.contact-block .eyebrow{margin-bottom:10px}.cta{display:flex;justify-content:space-between;align-items:end;gap:40px}.cta h2{max-width:700px}.footer{padding:48px 0 22px;background:#f5f3ef}.footer-top{display:flex;justify-content:space-between;gap:35px;padding-bottom:40px}.footer-links{display:flex;gap:25px;flex-wrap:wrap;font-size:11px}.legal{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;font-size:9px;color:var(--muted)}.note{font-size:11px;color:var(--muted);max-width:660px}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;z-index:50;padding:12px} @media(max-width:1000px){.header{grid-template-columns:1fr auto;height:auto;padding:20px 0}.brand{grid-row:1;grid-column:1}.header-contact{grid-row:1;grid-column:2}.nav{grid-column:1/-1;grid-row:2;justify-content:space-between}.intro,.photo-row,.contact-grid{gap:40px}.founder{gap:40px;grid-template-columns:170px 1fr}.index{gap:16px}.hero{min-height:510px}}@media(max-width:640px){.wrap{padding-left:24px;padding-right:24px}.header{gap:18px}.nav{gap:12px;font-size:10px}.brand strong{font-size:17px}.hero{min-height:540px}.hero h1{font-size:60px}.hero>img{object-position:65%}.hero-content{padding-top:65px;padding-bottom:65px}.hero-credit{right:24px;font-size:7px}.index{grid-template-columns:1fr 1fr;padding-top:28px;padding-bottom:28px;gap:25px}.section{padding-top:58px;padding-bottom:58px}.intro,.photo-row,.contact-grid{grid-template-columns:1fr;gap:30px}.photo-row{margin-bottom:55px}.photo-row:nth-child(even) .photo{order:0}.page-head{padding:50px 0}.page-head h1{font-size:58px}.steps{grid-template-columns:1fr 1fr;gap:28px}.work-grid{grid-template-columns:1fr;gap:34px}.work-grid .wide{grid-column:auto}.work-grid .wide img{aspect-ratio:1.6}.credits{grid-template-columns:1fr;gap:20px}.founder{grid-template-columns:1fr;gap:25px;padding:35px 0}.monogram{min-height:170px}.cta,.footer-top,.legal{flex-direction:column;align-items:start}.section-title{align-items:start;flex-direction:column;gap:20px}.footer-top{display:flex}.contact-grid{gap:50px}}
@media(min-width:1001px){.hero h1{max-width:840px;font-size:84px}}

/* Shared centered logo and a single navigation row. */
.header{height:auto;min-height:262px;grid-template-columns:1fr auto 1fr;grid-template-rows:208px 54px;gap:0 24px;padding:0}
.header .brand{grid-column:2;grid-row:1;justify-self:center}
.brand img{width:164px;height:192px;object-fit:contain}
.header .nav{grid-column:1/-1;grid-row:2;justify-content:space-between;align-self:stretch;align-items:center}
.header .header-contact{grid-column:3;grid-row:1;justify-self:end}
.footer .brand img{width:144px;height:168px}
.text-link{gap:0}
@media(max-width:640px){.header{min-height:246px;grid-template-rows:196px 50px;grid-template-columns:1fr auto 1fr;gap:0 10px}.header .brand img{width:152px;height:184px}.header-contact{font-size:9px;max-width:82px;text-align:right}.header .nav{font-size:10px;gap:10px}}

/* Screenshot revisions: compact masthead, social links, larger navigation. */
.header{min-height:244px;grid-template-rows:160px 30px 54px;position:relative}
.header .brand{align-self:start}
.header .nav{grid-row:3;font-size:14.3px}
.header-social{grid-column:3;grid-row:2;justify-self:end;display:flex;align-items:center;gap:12px;font-size:11px;white-space:nowrap}
.header-social span{color:var(--line)}
.footer .brand img{width:100.8px;height:117.6px}
@media(max-width:640px){.header{min-height:232px;grid-template-rows:154px 28px 50px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.header .nav{font-size:13px;gap:8px}.header-social{grid-column:1/-1;font-size:10px;gap:10px}}

/* A restrained typewriter accent; display and reading fonts remain unchanged. */
.nav,.footer-links,.eyebrow,.header-social,.contact-email,.contact-block>p{font-family:'IBM Plex Mono','Noto Sans Thai',monospace;font-weight:400}
.contact-email{font-size:clamp(18px,2.1vw,28px)}

/* Carry the typewriter voice through all reading text. */
body{font-family:'IBM Plex Mono','Noto Sans Thai',monospace;font-weight:400;line-height:1.85}
.prose p{line-height:1.95}
.detail-list b{font-weight:400}
.hero p{max-width:510px}

/* Photo update draft. */
.hero:after{background:linear-gradient(90deg,rgba(0,0,0,.42),rgba(0,0,0,.04))}
.photo-row .photo img,.work-grid .photo img{aspect-ratio:16/9}
.thumbnail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.thumbnail-grid figure{margin:0;overflow:hidden;background:var(--soft)}
.thumbnail-grid img{width:100%;aspect-ratio:16/9;object-fit:cover}
@media(max-width:640px){.thumbnail-grid{grid-template-columns:1fr;gap:20px}}

/* Keep the complete masthead visible while scrolling. */
body>.wrap:has(>.header){position:sticky;top:0;z-index:40;background:var(--paper);max-width:none;box-shadow:0 1px 0 var(--line)}
body>.wrap>.header{max-width:1184px;margin-inline:auto}
html{scroll-padding-top:260px}
@media(max-width:640px){html{scroll-padding-top:248px}}

/* Compact footer and compositor-driven mobile masthead. */
.footer{padding-top:22px;padding-bottom:18px}
.footer-top{padding-bottom:14px;gap:20px}
@media(max-width:640px){
 body>.wrap:has(>.header){transform:translateY(calc(-77px * var(--header-progress,0)));will-change:transform}
 .header{min-height:0;grid-template-rows:154px 28px 50px}
 .header .brand img{width:152px;height:184px;transform-origin:center top;transform:translateY(calc(77px * var(--header-progress,0))) scale(calc(1 - .5 * var(--header-progress,0)));will-change:transform}
 html{scroll-padding-top:248px}
 .footer-top{gap:16px;padding-bottom:16px}
}
