:root{--white:#fff;--soft:#f0f0f0;--ink:#0b0b0b;--muted:#696969}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:16px "DM Sans",sans-serif}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}.nav{height:78px;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;background:rgba(255,255,255,.93);backdrop-filter:blur(14px);border-bottom:1px solid #e4e4e4}.brand img{width:76px;height:45px;object-fit:cover}.nav nav{display:flex;align-items:center;gap:2rem;font-size:.88rem}.nav nav a:hover{opacity:.5}.pill{border:1px solid;padding:.7rem 1rem;border-radius:99px}.menu{display:none;border:0;background:transparent;font:500 .9rem "DM Sans"}.hero{height:calc(100vh - 78px);min-height:660px;position:relative;overflow:hidden;background:#f5f5f5;display:flex;align-items:center;padding:6vw}.hero-art{position:absolute;inset:0;background:url('olm-background.png') center/cover no-repeat}.hero-copy{position:relative;z-index:2;width:min(760px,62vw)}.kicker,.label{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:600}.hero h1,.section-heading h2,.contact h2{font:600 clamp(4.2rem,8.6vw,8.7rem)/.86 "Playfair Display",serif;letter-spacing:-.055em;margin:2.6rem 0}.hero h1 i,.section-heading h2 i,.contact h2 i{font-weight:500}.lead{max-width:580px;font-size:1.18rem;line-height:1.6}.actions{display:flex;align-items:center;gap:2rem;margin-top:2.5rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;border-radius:99px;padding:1rem 1.25rem;font-weight:500}.dark{background:#0b0b0b;color:white}.text-link{font-size:.9rem;border-bottom:1px solid}.side-note{position:absolute;right:2vw;bottom:4vw;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem}.about,.services,.work{padding:9rem 5vw}.label span{color:#999;margin-right:1rem}.about{display:grid;grid-template-columns:1fr 3fr;gap:2rem}.about-copy .big{font:500 clamp(2.5rem,4.8vw,5rem)/1.04 "Playfair Display";letter-spacing:-.035em;margin:0}.about-small{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:760px;margin:4rem 0 5rem auto;line-height:1.7;color:#454545}.video-wrap{grid-column:2;position:relative;background:#111}.video-wrap video{width:100%;max-height:650px;object-fit:cover}.video-wrap span{position:absolute;left:1rem;bottom:1rem;background:white;padding:.7rem 1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.services{background:#0b0b0b;color:white}.label.light{color:#aaa}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:3rem;margin:4rem 0 6rem}.section-heading h2{font-size:clamp(3.5rem,7vw,7rem);margin:0}.section-heading>p{max-width:370px;color:#777;line-height:1.6}.services .section-heading>p{color:#aaa}.service-list{border-top:1px solid #444}.service-list article{display:grid;grid-template-columns:70px 1.15fr 1fr 30px;gap:1rem;align-items:center;padding:2rem 0;border-bottom:1px solid #444;transition:.25s}.service-list article:hover{padding-left:1rem;background:#171717}.service-list b{font-size:.7rem;color:#888}.service-list h3{font:500 clamp(1.35rem,2.2vw,2.1rem) "Playfair Display";margin:0}.service-list p{color:#999;line-height:1.5;margin:0}.service-list article>span{font-size:1.3rem}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.case{aspect-ratio:4/5;display:flex;flex-direction:column;align-items:center;justify-content:center;filter:grayscale(1);transition:.4s}.work-grid article:hover .case{filter:grayscale(0);transform:translateY(-8px)}.case span{font:600 clamp(1.6rem,3.5vw,3.8rem) "Playfair Display"}.case small{letter-spacing:.28em;margin-top:.35rem}.alima{background:#d9d9d9}.brass{background:#aaa;color:white}.wool{background:#e8e8e8;color:#555}.work-grid h3{font:500 1.3rem "Playfair Display";margin:1.2rem 0 .3rem}.work-grid p{color:#777;font-size:.85rem;margin:0}.contact{padding:10rem 5vw;background:#dcdcdc;text-align:center}.contact h2{font-size:clamp(3.5rem,8vw,8rem);margin:3rem 0}.contact-actions{display:flex;flex-direction:column;align-items:center;gap:1.3rem}.light-button{background:white}.phone{border-bottom:1px solid}.contact a:hover{opacity:.6}footer{background:#080808;color:white;padding:3rem 5vw;display:flex;align-items:flex-end;justify-content:space-between;min-height:180px}footer img{width:82px;filter:invert(1)}footer p{font-size:.8rem;color:#888;margin:0}
@media(max-width:760px){.nav{height:68px}.menu{display:block}.nav nav{display:none;position:absolute;top:68px;left:0;right:0;padding:2rem 5vw;background:white;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ddd}.nav nav.open{display:flex}.hero{height:auto;min-height:calc(100vh - 68px);padding:14vh 6vw 8vh;align-items:flex-end}.hero-art{background-position:61% center;opacity:.7}.hero-copy{width:100%}.hero h1{font-size:clamp(3.4rem,16vw,5.7rem)}.lead{font-size:1rem;max-width:90%}.actions{align-items:flex-start;flex-direction:column;gap:1.3rem}.side-note{display:none}.about,.services,.work{padding:6rem 6vw}.about{grid-template-columns:1fr}.about-copy{margin-top:2rem}.about-small{grid-template-columns:1fr;gap:1rem;margin-top:3rem}.video-wrap{grid-column:1}.section-heading{display:block;margin:3rem 0 4rem}.section-heading h2{font-size:clamp(3.2rem,14vw,5rem)}.section-heading>p{margin-top:2rem}.service-list article{grid-template-columns:40px 1fr 22px}.service-list p{grid-column:2/4}.work-grid{grid-template-columns:1fr}.work-grid article{margin-bottom:2rem}.contact{padding:7rem 6vw}.contact h2{font-size:clamp(3.5rem,14vw,5.3rem)}.light-button{font-size:.8rem;gap:.7rem}footer{align-items:flex-start;flex-direction:column;gap:1.2rem;min-height:220px}}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(245,245,245,.96),rgba(245,245,245,.68) 44%,rgba(245,245,245,.1))}.logo-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #ddd;border-left:1px solid #ddd}.client{aspect-ratio:1;background:#fff;border:0;border-right:1px solid #ddd;border-bottom:1px solid #ddd;padding:1.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .25s}.client:hover,.client:focus-visible{background:#eee}.client img{width:100%;height:100%;object-fit:contain;filter:grayscale(1);transition:.25s}.client:hover img,.client:focus-visible img{filter:grayscale(0);transform:scale(1.04)}.client-dialog{width:min(600px,calc(100% - 2rem));border:0;padding:3rem;box-shadow:0 20px 80px rgba(0,0,0,.25)}.client-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}.client-dialog img{width:180px;height:130px;object-fit:contain;margin:0 auto 2.5rem}.client-dialog h3{font:500 2.7rem/1.05 "Playfair Display";margin:1rem 0}.dialog-work{font-size:1.08rem;line-height:1.65;color:#555}.dialog-close{position:absolute;right:1rem;top:1rem;border:0;background:#eee;border-radius:50%;width:40px;height:40px;font-size:1.5rem;cursor:pointer}@media(max-width:760px){.hero-shade{background:linear-gradient(0deg,rgba(245,245,245,.97),rgba(245,245,245,.3))}.logo-grid{grid-template-columns:repeat(2,1fr)}.client{padding:1rem}.client-dialog{padding:2rem}}
