:root{--bg:#F5F2EC;--ink:#191918;--muted:#75716c;--rule:#d6d0c7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,a{font:inherit;color:inherit}button{border:0;background:none;cursor:pointer}a{text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid #2839c9;outline-offset:5px}.shell{max-width:1550px;min-height:100dvh;margin:auto;padding:33px clamp(23px,5.2vw,92px) 22px;display:flex;flex-direction:column}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:30px}.wordmark{padding:0;text-align:left;font:600 clamp(23px,2.65vw,39px)/1.15 'Fraunces',Georgia,serif;letter-spacing:-.055em}.wordmark span{display:block;font:400 11px/1.8 'DM Sans',sans-serif;letter-spacing:0;margin-top:5px;color:var(--muted)}nav{display:flex;gap:clamp(12px,2.7vw,42px);align-items:center;padding-top:8px;flex-wrap:wrap}nav button,nav a{padding:0;font-size:12px;white-space:nowrap}nav button:hover,nav a:hover{text-decoration:underline;text-underline-offset:4px}#langToggle{margin-left:12px;font-weight:700}#langToggle span{opacity:.35}.view{display:none}.view.active{display:block}.work-area{display:grid;grid-template-columns:43% 57%;align-items:center;gap:12px;min-height:min(710px,calc(100dvh - 190px));padding-top:52px;padding-bottom:45px}.left{align-self:center;padding-right:7%;}.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#888078;margin:0 0 17px}.left h1{font:600 clamp(40px,5vw,76px)/1.06 'Fraunces',Georgia,serif;letter-spacing:-.055em;margin:0 0 45px}.about-layout h1{font:600 clamp(40px,5vw,76px)/1.06 'DM Sans',Arial,sans-serif;letter-spacing:-.055em;margin:0 0 45px}.work-list{display:flex;flex-direction:column;gap:0;max-width:410px}.category{display:flex;gap:16px;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--rule);padding:13px 0;text-align:left;width:100%;transition:padding .2s}.category:hover,.category.selected{padding-left:9px}.category .num{font-size:10px;color:#8b857f}.category .name{flex:1;font:600 clamp(10px,1vw,13px)/1.3 'DM Sans',Arial,sans-serif;letter-spacing:.055em;text-transform:uppercase}.category .plus{font-size:15px}.smallnote{margin-top:40px;font-size:11px;color:var(--muted)}.right{min-width:0}.hero{width:100%;height:auto;aspect-ratio:1.62/1;object-fit:cover;display:block;filter:contrast(1.03)}.image-caption{font-size:10px;color:#6e6964;display:flex;justify-content:space-between;margin-top:12px;gap:18px}.project-preview{border-top:1px solid var(--rule);padding-top:12px}.project-preview h2{font:500 24px 'DM Sans',Arial,sans-serif;margin:0 0 8px}.project-preview p{font-size:12px;line-height:1.7;max-width:470px}.preview-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:20px}.preview-gallery button{padding:0;overflow:hidden;aspect-ratio:.74}.preview-gallery img{height:100%;width:100%;object-fit:cover;transition:transform .35s}.preview-gallery button:hover img{transform:scale(1.055)}.case-buttons{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.case-buttons button{border:1px solid var(--rule);padding:10px 12px;text-align:left;font-size:11px}.case-buttons button:hover{background:#eae5dc}footer{margin-top:auto;padding-top:14px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:12px;color:#78736d;font-size:10px}.about-layout{min-height:calc(100dvh - 205px);display:grid;grid-template-columns:1fr 1fr;gap:14%;align-items:center}.about-layout h1{font-size:clamp(35px,4.5vw,67px)}.about-copy p{font-size:15px;line-height:1.9;max-width:420px}.email-link{display:inline-block;margin:30px 0 5px;border-bottom:1px solid}.fine{color:var(--muted);font-size:11px!important}.hidden{display:none!important}.overlay{position:fixed;inset:0;background:rgba(19,18,18,.88);z-index:10;padding:clamp(10px,3vw,30px);display:flex;align-items:center;justify-content:center}.gallery-frame{background:var(--bg);width:min(1040px,100%);height:min(900px,95dvh);display:flex;flex-direction:column;padding:clamp(15px,2.5vw,35px)}.gallery-top{display:flex;justify-content:space-between;align-items:flex-start}.gallery-top h2{font:500 24px 'DM Sans',Arial,sans-serif;margin:0 0 12px}.gallery-top .eyebrow{margin:0 0 3px}.close{font-size:35px;line-height:1}.gallery-imagewrap{display:flex;flex:1;min-height:0;align-items:center;justify-content:space-between;gap:10px}.gallery-imagewrap img{height:100%;max-height:100%;min-width:0;width:auto;max-width:calc(100% - 90px);object-fit:contain}.arrow{font-size:35px;padding:5px 9px}.gallery-bottom{display:flex;justify-content:space-between;gap:15px;margin-top:14px;font-size:11px;color:#666}@media(max-width:780px){.shell{padding:22px 22px 18px}.topbar{flex-wrap:wrap}.wordmark{font-size:26px}nav{width:100%;gap:22px;justify-content:space-between}.work-area{display:flex;flex-direction:column;align-items:stretch;gap:30px;padding-top:65px;padding-bottom:40px;min-height:unset}.left{padding-right:0;width:100%}.left h1{margin-bottom:27px}.work-list{max-width:none}.hero{aspect-ratio:1.55/1}.smallnote{margin-top:22px}.about-layout{display:block;min-height:unset;padding:75px 0 80px}.about-layout h1{margin-bottom:30px}.preview-gallery{gap:6px}.gallery-frame{height:95dvh}.gallery-top h2{font-size:18px}.gallery-bottom{flex-wrap:wrap}.gallery-imagewrap img{max-width:calc(100% - 68px)}footer{font-size:9px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.social-grid{display:grid;gap:0;margin-top:26px;border-top:1px solid var(--rule)}.social-client{display:flex;justify-content:space-between;width:100%;border-bottom:1px solid var(--rule);text-align:left;padding:15px 4px;font-size:12px;font-weight:600;letter-spacing:.075em;text-transform:uppercase}.social-client:hover{padding-left:10px;background:#eae5dc}.client-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--rule);margin-top:24px;padding-top:15px;font-size:13px;text-transform:uppercase;letter-spacing:.07em;font-weight:600}.client-heading button{font-size:24px}.muted-placeholder{color:var(--muted)}
