:root{--ink:#2c2b29;--paper:#f4f3ef;--muted:#b4b0a8;--line:#d5d3cc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,summary{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a37e41;outline-offset:6px}header{height:90px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper);border-bottom:1px solid #ffffff25}.logo{width:140px;height:45px;object-fit:contain}nav{display:flex;gap:35px;font-size:13px}.pill{border:1px solid #ffffff70;border-radius:30px;padding:14px 22px;font-size:13px;display:flex;gap:28px}.pill:hover{background:var(--paper);color:var(--ink)}.hero{background:var(--ink);color:var(--paper);padding:40px 5% 24px}.hero-top,.hero-bottom,.hero-caption{display:flex;justify-content:space-between;align-items:center}.eyebrow,.edition,.hero-caption{font-size:10px;letter-spacing:.13em;line-height:1.5}.edition{color:var(--muted)}h1{font-size:clamp(64px,8.8vw,140px);font-weight:400;letter-spacing:-.065em;line-height:.98;margin:65px 0 32px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em}h1 em{color:#c4c0b6}.hero-bottom{margin-bottom:46px}.hero-bottom p{font-size:16px;line-height:1.5}.circle{width:58px;height:58px;border:1px solid #ffffff60;border-radius:50%;display:grid;place-items:center;font-size:25px}.circle:hover{background:var(--paper);color:var(--ink)}.hero-images{display:grid;grid-template-columns:1fr 1.4fr 1fr 1.2fr;gap:12px;height:310px}.hero-images img{width:100%;height:100%;object-fit:cover;min-width:0}.hero-images img:nth-child(2){object-position:center}.hero-caption{margin-top:20px;color:var(--muted)}.section{padding:110px 5%}.intro{display:grid;grid-template-columns:1fr 3fr;gap:30px;border-bottom:1px solid var(--line)}h2{font-weight:400;font-size:clamp(38px,4.5vw,70px);letter-spacing:-.05em;line-height:1.08;margin:0 0 35px}.intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:25px}.intro-copy p{font-size:16px;line-height:1.7;margin:0}.intro-copy p:last-child{font-size:14px;color:#64615a}.text-link{display:inline-block;font-size:13px;border-bottom:1px solid;padding-bottom:8px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-head h2{margin:22px 0 0}.section-head>p{font-size:14px;line-height:1.6;color:#64615a}.filters{display:flex;gap:9px;flex-wrap:wrap;margin:45px 0 35px}.filters button{background:transparent;border:1px solid #bcb9b0;border-radius:30px;padding:11px 20px;cursor:pointer;font-size:12px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 28px}.project{display:block;background:none;border:0;text-align:left;padding:0;cursor:pointer;color:inherit;width:100%}.project[hidden]{display:none}.project-picture{overflow:hidden;background:#dfddd7;aspect-ratio:1.35}.project-picture img{height:100%;width:100%;object-fit:cover;display:block;transition:transform .5s}.project:hover img{transform:scale(1.035)}.project-meta{display:flex;justify-content:space-between;align-items:start;gap:20px;padding-top:17px}.project h3{font-size:23px;font-weight:400;letter-spacing:-.03em;margin:0 0 8px}.project p{font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin:0;color:#716c62}.project-meta>span{font-size:25px}.films{background:#e8e6e0}.film-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.film-grid figure{margin:0}.film-grid video{display:block;width:100%;aspect-ratio:9/14;object-fit:cover;background:var(--ink)}figcaption{padding-top:16px;font-size:14px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}figcaption span{font-size:9px;color:#716c62;letter-spacing:.06em}.services{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:7%}.services h2{margin-top:25px}.service-intro{font-size:14px;line-height:1.7;color:#c1bdb5}.service-list details{border-top:1px solid #ffffff40}.service-list details:last-child{border-bottom:1px solid #ffffff40}.service-list summary{cursor:pointer;list-style:none;display:flex;gap:22px;align-items:center;font-size:23px;padding:26px 0}.service-list summary::-webkit-details-marker{display:none}.service-list summary span{font-size:10px;color:#b6b1a8}.service-list summary b{font-size:20px;font-weight:400;margin-left:auto}.service-list details[open] b{transform:rotate(45deg)}.service-list details p{padding:0 25px 25px 37px;font-size:14px;line-height:1.7;color:#c1bdb5;margin:0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:60px}.steps article{border-top:1px solid #aaa69c;padding-top:25px}.steps span{font-family:Georgia,serif;font-style:italic;font-size:35px;color:#8b857b}.steps h3{font-weight:400;font-size:20px;margin:32px 0 15px}.steps p{font-size:14px;line-height:1.7;color:#6c675e}.contact{border-top:1px solid var(--line);background:#dedbd3}.contact h2{font-size:clamp(50px,7.5vw,120px);margin:45px 0 55px}.contact h2>span{float:right;font-family:Arial,sans-serif}.contact-bottom{display:flex;justify-content:space-between;gap:30px;align-items:end}.contact-bottom p{font-size:14px;line-height:1.7}.contact-bottom>div{display:flex;flex-direction:column;align-items:start;gap:18px}.email{font-size:clamp(14px,1.6vw,25px);border-bottom:1px solid;padding-bottom:9px;overflow-wrap:anywhere}.phone{font-size:13px}footer{background:var(--ink);color:var(--paper);padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>a{font-size:10px;color:#c1bdb5}dialog{border:0;background:var(--paper);padding:0;width:min(900px,90vw);max-height:90vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#000b}dialog>img{width:100%;height:340px;object-fit:contain;background:#e2dfd8;display:block}.close{position:absolute;top:12px;right:12px;border:0;border-radius:50%;width:40px;height:40px;background:var(--ink);color:white;font-size:25px;cursor:pointer}.dialog-copy{padding:35px}.dialog-copy h2{font-size:40px;margin:15px 0}.dialog-copy>p:not(.eyebrow){line-height:1.7;font-size:16px}.skip{position:absolute;top:-100px;left:20px;background:white;color:black;z-index:50;padding:15px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(min-width:1500px){.hero-images{height:390px}}@media(max-width:850px){header{height:75px}nav{gap:18px;font-size:12px}.logo{width:110px}.hero{padding-top:25px}.edition{display:none}h1{margin-top:45px}.hero-images{height:240px;grid-template-columns:1fr 1fr 1fr}.hero-images img:last-child{display:none}.section{padding:75px 6%}.intro{grid-template-columns:1fr}.intro-copy{gap:25px}.services{grid-template-columns:1fr;gap:30px}.steps{grid-template-columns:1fr 1fr;gap:35px}.film-grid{gap:14px}figcaption{font-size:12px}.contact-bottom{display:block}.contact-bottom>div{margin-top:30px}.section-head>p{max-width:190px}footer{flex-wrap:wrap}}@media(max-width:540px){header{padding:0 6%}nav{display:none}.pill{padding:11px 15px;font-size:12px}.hero{padding:25px 6% 20px}.hero-top .eyebrow{font-size:8px}h1{font-size:clamp(45px,10.8vw,62px);line-height:1.05;margin:40px 0 24px}.hero-bottom{margin-bottom:25px}.hero-bottom p{font-size:12px}.circle{width:42px;height:42px}.hero-images{height:210px;grid-template-columns:1fr 1fr;gap:9px}.hero-images img:nth-child(3){display:none}.hero-caption{font-size:7px;gap:20px}.intro-copy{grid-template-columns:1fr;gap:20px}h2{font-size:37px}.section-head{display:block}.section-head>p{max-width:none;margin-top:25px}.filters{gap:7px;margin-top:30px}.filters button{font-size:11px;padding:10px 13px}.project-grid{grid-template-columns:1fr;gap:30px}.project h3{font-size:21px}.film-grid{grid-template-columns:1fr;gap:35px}.film-grid video{aspect-ratio:9/13;max-height:550px}.steps{gap:22px}.steps h3{font-size:17px;margin-top:20px}.steps p{font-size:12px}.contact h2{font-size:47px;letter-spacing:-.065em}.contact h2>span{font-size:35px}.contact-bottom p{font-size:12px}footer{gap:18px}footer p{width:100%;order:3;margin:0}dialog>img{height:220px}.dialog-copy{padding:25px}.dialog-copy h2{font-size:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-picture img{transition:none}}
