@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&display=swap");:root{--paper:#f5f0e6;--ink:#252b22;--moss:#344733;--rust:#a94931;--ochre:#c99631;--line:#c9c0af;--serif:"Fraunces",Georgia,serif;--sans:"DM Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;width:100%;height:100%;object-fit:cover}.header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:10;background:rgba(245,240,230,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{display:flex;flex-direction:column;font-family:var(--serif);line-height:.95;font-weight:500;font-size:25px;letter-spacing:-.05em}.brand small{font:10px/1.4 var(--sans);letter-spacing:.14em;margin-top:5px}.header nav{display:flex;align-items:center;gap:24px;font:11px var(--sans);letter-spacing:.04em;text-transform:uppercase}.header nav a{padding:12px 2px;border-bottom:1px solid transparent;transition:border-color .2s}.header nav a:hover{border-color:var(--rust)}.button,.nav-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:13px 20px;border:1px solid var(--ink);font:11px var(--sans);letter-spacing:.06em;text-transform:uppercase;transition:background .2s,color .2s,transform .2s}.nav-cta{min-height:40px;padding:10px 14px}.button.dark{background:var(--ink);color:var(--paper)}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button:hover{background:var(--rust);border-color:var(--rust);color:#fff;transform:translateY(-2px)}.button:active{transform:translateY(0) scale(.98)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--ochre);outline-offset:3px}.hero{min-height:calc(100vh - 84px);display:grid;grid-template-columns:minmax(0,1fr) minmax(480px,1.1fr);overflow:hidden}.hero-copy{padding:clamp(56px,10vw,150px) 6vw 80px;align-self:center}.eyebrow{font:11px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--rust);margin:0 0 20px}.hero h1,.page-hero h1{font-size:clamp(3.7rem,7vw,7.8rem);line-height:.9;letter-spacing:-.075em;font-weight:500;margin:0;max-width:8.2ch;text-wrap:balance}.lede{max-width:38rem;margin:32px 0;font-size:clamp(1.05rem,1.5vw,1.32rem)}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-art{height:calc(100vh - 84px);min-height:620px;background:#d8d0c1;position:relative;padding:5.5vw 6vw 5.5vw 2vw}.hero-art picture{display:block;height:100%;filter:saturate(.92) contrast(1.04)}.hero-art img{object-fit:contain}.archive-note{position:absolute;bottom:6vw;left:7%;font:10px/1.6 var(--sans);letter-spacing:.08em;padding:11px;background:var(--paper);transform:rotate(-3deg)}.proof{padding:25px 5vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:32px;justify-content:space-between;align-items:center;font:11px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.04em}.proof p{margin:0;color:var(--rust)}.split,.split-top{display:grid;grid-template-columns:1fr 1fr;grid-gap:8vw;gap:8vw;align-items:center;padding:clamp(85px,11vw,160px) 10vw}.client-section h2,.collections h2,.dark-panel h2,.process h2,.product h2,.routes h2,.split h2{font-size:clamp(2.6rem,4.6vw,5.3rem);font-weight:500;letter-spacing:-.07em;line-height:.95;margin:0 0 25px;text-wrap:balance}.split p,.story p{max-width:39rem}.art-frame{background:#e8e0d2;padding:25px;min-height:400px}.art-frame picture{display:block;height:100%}.art-frame img{object-fit:contain}.tilt{transform:rotate(2deg)}.text-link{font:11px var(--sans);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:5px}.text-link span{margin-left:10px;color:var(--rust)}.collections{padding:clamp(85px,11vw,160px) 5vw;background:#ded8cb}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line)}.collection{min-height:420px;background:var(--paper);display:grid;grid-template-rows:1fr auto;position:relative;overflow:hidden}.collection picture{min-height:290px;background:#e9e2d4;padding:18px}.collection img{object-fit:contain;transition:transform .5s}.collection:hover img{transform:scale(1.045)}.collection>div{padding:22px 25px 26px}.collection h2,.collection h3{font-size:1.65rem;line-height:1;margin:0 0 8px;font-weight:500;letter-spacing:-.05em}.collection p{margin:0;font-size:1rem;line-height:1.4}.collection>span{position:absolute;right:18px;bottom:19px;color:var(--rust)}.full{margin:0 5vw 10vw}.routes{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:8vw;gap:8vw;padding:clamp(85px,11vw,160px) 10vw}.route-list{border-top:1px solid var(--ink)}.route-list a{display:grid;grid-template-columns:1.05fr 1fr;grid-gap:20px;gap:20px;padding:24px 0;border-bottom:1px solid var(--ink);transition:padding .2s,color .2s}.route-list a:hover{padding-left:12px;color:var(--rust)}.route-list b{font-size:1.4rem;line-height:1.15;font-weight:500}.route-list span{font-size:1rem}.dark-panel{background:var(--moss);color:var(--paper)}.dark-panel .eyebrow{color:#e8c475}.closing{padding:clamp(65px,9vw,130px) 10vw}.centered{text-align:center;padding:120px 8vw}.centered h2{max-width:14ch;margin-inline:auto}.page-hero{padding:clamp(80px,13vw,180px) 10vw 90px;max-width:1100px}.page-hero>p:not(.eyebrow){max-width:46rem;margin-top:30px;font-size:1.22rem}.page-hero.compact{padding-bottom:50px}.split-top{padding-top:110px}.process{padding:clamp(85px,11vw,150px) 10vw}.steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:35px;gap:35px;border-top:1px solid var(--ink);margin-top:45px}.steps>div{padding-top:20px}.steps b{font:11px var(--sans);color:var(--rust)}.steps h3{font-size:1.7rem;letter-spacing:-.05em;font-weight:500;margin:15px 0 8px}.steps p{font-size:1rem;margin:0}.gallery{columns:330px 3;gap:16px;padding:0 5vw 100px}.gallery-item{display:inline-block;width:100%;page-break-inside:avoid;break-inside:avoid;margin:0 0 16px;background:#e5ddce;padding:12px}.gallery-item picture{display:block}.gallery-item img{height:auto;object-fit:contain}.archive-cta{padding:70px 8vw;text-align:center;border-top:1px solid var(--line)}.archive-cta h2{font-size:clamp(2.4rem,4vw,4.5rem);font-weight:500;letter-spacing:-.06em;margin:0 0 25px}.story{padding-top:40px}.story p{font-size:1.25rem}.client-section{padding:100px 10vw;background:#ded8cb}.client-section h2{max-width:700px}.client-section p:last-child{font:14px/2.2 var(--sans);letter-spacing:.03em;max-width:1000px}.product{padding:40px 10vw 120px}.product h2{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.contact-wrap{display:grid;grid-template-columns:1.25fr .75fr;grid-gap:8vw;gap:8vw;padding:40px 10vw 130px}.contact-form{display:grid;grid-gap:20px;gap:20px}.contact-form label{display:grid;grid-gap:8px;gap:8px;font:11px var(--sans);letter-spacing:.04em;text-transform:uppercase}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:0;background:transparent;padding:14px;font:18px var(--serif);color:var(--ink)}.contact-form textarea{min-height:150px;resize:vertical}.contact-form .button{justify-self:start}.form-status{margin:0;color:var(--rust)}.email-link{font-size:clamp(1.2rem,2vw,2rem);line-height:1.1;border-bottom:1px solid}.contact-wrap aside p:last-child{font-size:1rem;margin-top:30px}.legal{max-width:760px;padding:130px 10vw}.legal h1,.not-found h1{font-size:clamp(3rem,6vw,6rem);line-height:.95;font-weight:500;letter-spacing:-.07em}.not-found{padding:170px 10vw;text-align:center}.not-found h1{margin:0 auto 24px;max-width:12ch}.not-found .button{margin-top:15px}.footer{display:grid;grid-template-columns:2fr 1fr 1fr auto;grid-gap:40px;gap:40px;background:var(--ink);color:var(--paper);padding:65px 5vw 40px}.footer p{font-size:1rem;max-width:23rem}.footer .brand{font-size:29px}.footer-links{display:flex;flex-direction:column;align-items:start;gap:8px;font-size:1rem}.footer-links a{border-bottom:1px solid transparent}.footer-links a:hover{border-color:#e8c475}.theo{align-self:end;display:block;width:38px}.theo img{height:auto}.portrait-form{margin-top:30px}.portrait-enquiry{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:8vw;gap:8vw;padding:clamp(75px,10vw,130px) 10vw;background:#ded8cb;border-top:1px solid var(--line)}.portrait-enquiry h2{font-size:clamp(2.6rem,4.5vw,5rem);line-height:.95;letter-spacing:-.07em;font-weight:500;margin:0 0 22px;text-wrap:balance}.portrait-enquiry>div>p:last-child{max-width:30rem;margin-bottom:0}@media(max-width:900px){.header{padding:0 5vw}.header nav{gap:12px}.header nav a:not(.nav-cta){display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:80px 8vw 55px}.hero h1,.page-hero h1{font-size:clamp(3.4rem,13vw,5.5rem)}.hero-art{height:65vw;min-height:420px;padding:35px}.archive-note{left:8%;bottom:8%}.proof{display:block;padding:20px 8vw}.proof div{margin-top:8px;font-size:9px}.contact-wrap,.portrait-enquiry,.routes,.split,.split-top{grid-template-columns:1fr;padding-left:8vw;padding-right:8vw}.split,.split-top{gap:45px}.portrait-enquiry{gap:32px}.art-frame{min-height:310px}.collection-grid{grid-template-columns:1fr 1fr}.collection{min-height:340px}.collection picture{min-height:220px}.section-head{align-items:start;gap:20px;flex-direction:column}.routes{gap:45px}.footer{grid-template-columns:1fr 1fr}.footer>div:first-child{grid-column:1/-1}.theo{grid-column:2;justify-self:end}.gallery{columns:240px 2}.product{padding-left:8vw;padding-right:8vw}}@media(max-width:560px){body{font-size:17px}.header{height:70px}.brand{font-size:21px}.header nav{font-size:10px}.hero{min-height:auto}.hero-copy{padding-top:60px}.hero-art{height:92vw;min-height:350px;padding:20px}.hero h1{font-size:clamp(3.4rem,15vw,4.6rem)}.proof div{line-height:1.7}.contact-wrap,.routes,.split,.split-top{padding-top:75px;padding-bottom:75px}.collections{padding:75px 5vw}.collection-grid{grid-template-columns:1fr}.full{margin-inline:5vw}.collection{min-height:360px}.route-list a{gap:6px}.footer,.route-list a{grid-template-columns:1fr}.footer{padding:50px 8vw}.footer>div:first-child,.theo{grid-column:auto}.theo{justify-self:start}.gallery{column-count:1;padding:0 5vw 60px}.steps{grid-template-columns:1fr;gap:5px}.page-hero{padding:85px 8vw 50px}.contact-wrap{gap:50px}.art-frame{padding:15px}.client-section,.closing,.product{padding:75px 8vw}.centered{padding:90px 8vw}}@media(prefers-reduced-motion:no-preference){.hero-copy>*{animation:rise .7s both}.hero-copy h1{animation-delay:.08s}.hero-copy .lede{animation-delay:.16s}.hero-copy .actions{animation-delay:.24s}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.page-hero{padding-top:clamp(40px,5vw,72px)}.about-hero{max-width:none;grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr)}.about-hero .art-frame{width:100%;max-width:500px;justify-self:end}@media (max-width:900px){.about-hero{grid-template-columns:1fr}.about-hero .art-frame{justify-self:stretch;max-width:none}}@media (max-width:560px){.page-hero{padding-top:40px}}.client-section{background:#fff}.client-logos{display:block;width:100%;margin-top:clamp(45px,6vw,90px)}.client-logos img{height:auto;object-fit:contain}.collection-contact{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-gap:8vw;gap:8vw;padding:clamp(75px,10vw,130px) 10vw;background:#ded8cb;border-top:1px solid var(--line)}.collection-contact h2{max-width:8ch;margin:0 0 22px;font-size:clamp(2.6rem,4.5vw,5rem);font-weight:500;line-height:.95;letter-spacing:-.07em;text-wrap:balance}.collection-contact>div>p:last-child{max-width:30rem;margin-bottom:0}.collection-contact .contact-form{margin-top:30px}@media(max-width:900px){.collection-contact{grid-template-columns:1fr;gap:32px;padding-left:8vw;padding-right:8vw}.collection-contact .contact-form{margin-top:0}}@media(min-width:901px){.page-hero.split-top{max-width:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}