:root{--ink:#1e1e1c;--paper:#f8f8f5;--red:#ef5b52;--muted:#737572;--line:#dfdfd9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 'Helvetica Neue',Helvetica,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}header{height:112px;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:white;padding:0 5%;position:relative;z-index:2}.logo{display:flex;align-items:baseline;font-size:27px;letter-spacing:-1.2px;line-height:1;font-weight:700}.logo span{font-weight:400;margin-left:5px}.logo i{font-style:normal;color:var(--red);font-size:42px;margin-left:1px}.header-actions{display:flex;align-items:center;gap:30px}.talk-link{font-size:11px;font-weight:600;letter-spacing:2px;border-bottom:1px solid #93938d;padding-bottom:7px}.menu-toggle{width:45px;height:45px;border:0;border-radius:50%;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.menu-toggle span{width:17px;height:1px;background:var(--ink)}.menu-toggle span:last-child{width:12px;align-self:center;margin-left:5px}.hero{position:relative;background:var(--ink);color:white;padding:50px 12.5% 105px;min-height:660px;overflow:hidden}.hero-inner{position:relative;z-index:1;max-width:850px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:3px;color:var(--red);margin-bottom:35px}.hero h1{font-size:clamp(48px,6vw,84px);line-height:1.12;font-weight:600;letter-spacing:-2.4px;margin:0 0 30px;max-width:800px}.hero h1 span{white-space:nowrap}.hero p{font-size:19px;line-height:1.85;max-width:475px;color:#cdcdc7;font-weight:300;margin:0 0 35px}.circle-link{display:inline-flex;align-items:center;gap:15px;font-size:10px;font-weight:600;letter-spacing:2px}.circle-link .circle{width:49px;height:49px;display:grid;place-content:center;background:#2c2d2d;border-radius:50%;font-size:20px;letter-spacing:0;font-weight:400;transition:background .3s,transform .3s}.circle-link:hover .circle{background:var(--red);color:white;transform:rotate(45deg)}.hero-art{position:absolute;right:3%;top:-120px;width:550px;height:820px;pointer-events:none}.hero-art>span{font-weight:700;font-size:760px;line-height:1;color:#27282a;position:absolute;right:0;top:-60px;letter-spacing:-60px}.orbit{position:absolute;width:720px;height:720px;border:1px solid #3d3e3c;border-radius:50%;right:-190px;top:-200px;opacity:.5}.crosses{position:absolute;right:90px;top:400px;font:10px/2 monospace;letter-spacing:8px;color:#d7d7d2;transform:rotate(12deg)}.scroll-cue{position:absolute;right:5%;bottom:65px;font-size:9px;letter-spacing:3px;writing-mode:vertical-rl;color:#c7c7c1}.scroll-cue span{margin-top:22px;font-size:25px}.work-section{padding:100px 12.5% 105px;background:#fff}.section-top h2{font-size:54px;font-weight:600;line-height:1.1;letter-spacing:-1.8px;margin:0 0 20px}.section-top h2 span{color:var(--red)}.section-top p{font-size:17px;font-weight:300;color:#60635f;margin:0}.filters{display:flex;gap:25px;margin:30px 0 50px}.filters button{border:0;border-bottom:1px solid transparent;background:none;padding:7px 0;font-size:11px;color:#777}.filters .active{color:var(--ink);border-color:#b83b35}.grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 65px}.project{border:0;background:none;text-align:left;padding:0;align-self:start;width:100%}.project:nth-child(even){margin-top:90px}.picture{height:410px;padding:28px;position:relative;display:flex;align-items:center;justify-content:center;background:#dceff0;overflow:hidden}.project:nth-child(2) .picture{background:#e7e4e0}.project:nth-child(3) .picture{background:#29262f}.project:nth-child(4) .picture{background:#dcdced}.picture img{width:100%;height:100%;object-fit:contain;transition:transform .6s}.project:hover .picture img{transform:scale(1.045)}.project-hover{position:absolute;right:20px;bottom:20px;display:grid;place-content:center;width:48px;height:48px;border-radius:50%;background:var(--ink);color:white;font-size:24px;opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s}.project:hover .project-hover,.project:focus-visible .project-hover{opacity:1;transform:none}.project-copy{padding-top:20px}.project small{font-size:10px;letter-spacing:1px;color:var(--muted)}.project-meta{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:9px}.project h3{font-size:27px;font-weight:500;letter-spacing:-.9px;line-height:1.2;margin:0}.project .arrow{font-size:23px;color:#b83b35}.project p{font-size:13px;line-height:1.7;color:#6b6e69;margin:15px 0 0;max-width:390px}.about{background:var(--paper);padding:105px 12.5%;display:grid;grid-template-columns:1.3fr 1fr;gap:100px}.about .eyebrow{color:#b83b35}.about h2{font-size:66px;font-weight:600;letter-spacing:-2px;line-height:1.05;margin:0 0 35px}.about p{font-size:15px;line-height:1.9;color:#656861;margin:0 0 23px}.about-sidebar{padding-top:61px}.about-sidebar h3{font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;border-top:1px solid #d3d4ce;padding-top:20px;margin:0 0 20px}.about-sidebar h3:not(:first-child){margin-top:35px}.about-sidebar p{font-size:14px}.skills{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 35px}.skills span{border:1px solid #d3d4ce;padding:7px 10px;font-size:10px;border-radius:0}.text-link{font-size:10px;letter-spacing:1px;font-weight:500;text-transform:uppercase;border-bottom:1px solid;padding-bottom:7px}.text-link:hover{color:#b83b35}.contact{background:var(--ink);color:white;padding:100px 12.5%;position:relative;overflow:hidden}.contact h2{font-size:clamp(42px,4.8vw,68px);line-height:1.15;letter-spacing:-1.8px;font-weight:500;margin:0 0 40px}.contact h2 span{color:#f1f1eb}.contact-email{display:block;font-size:14px;font-weight:300;color:#bbbeb6;margin-top:30px;overflow-wrap:anywhere}.contact:after{content:'+';position:absolute;right:12%;top:120px;font-size:60px;line-height:1;font-weight:200;color:var(--red)}footer{background:var(--ink);color:#92958b;display:flex;justify-content:space-between;gap:20px;padding:25px 5%;border-top:1px solid #3a3b37;font-size:10px}dialog{background:white;color:var(--ink);border:0;width:min(1100px,94vw);max-height:94vh;padding:50px}dialog::backdrop{background:#121310cf;backdrop-filter:blur(5px)}.close{position:sticky;top:0;float:right;background:var(--ink);color:white;border:0;border-radius:25px;padding:12px 20px;font-size:11px;z-index:2}.detail-head{clear:both;padding-top:20px}.detail-head h2{font-size:50px;font-weight:600;letter-spacing:-1.7px;line-height:1.1;margin:20px 0}.detail-head .eyebrow{color:#b83b35}.detail-head h3{font-size:24px;font-weight:400}.detail-head p,.process p{font-size:15px;line-height:1.9;max-width:770px}.detail-head small{font-size:11px;color:var(--muted)}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:35px 0}.gallery button{border:0;background:#f1f2ee;padding:18px}.gallery img{width:100%;height:330px;object-fit:contain}.gallery button.expanded{grid-column:1/-1}.gallery button.expanded img{height:auto;max-height:85vh}.process{border-top:1px solid var(--line);padding-top:25px}.process h3{font-size:25px;font-weight:500}#menu{background:var(--ink);color:white;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:90px 12.5% 50px}#menu .eyebrow{margin-bottom:40px}.menu-close{position:absolute;right:5%;top:35px;width:45px;height:45px;border:0;border-radius:50%;background:var(--paper);color:var(--ink);font-size:29px;font-weight:300}#menu nav{display:flex;flex-direction:column;gap:10px;max-width:600px}#menu nav>a{font-size:clamp(35px,5vw,62px);font-weight:500;letter-spacing:-1.3px;display:flex;justify-content:space-between;align-items:center}#menu nav>a:hover{color:var(--red)}#menu nav span{font-size:10px;letter-spacing:2px;font-weight:400}.menu-email{display:inline-block;font-size:14px;color:#bbbeb6;margin-top:50px}.skip{position:fixed;top:-100px}.skip:focus{top:5px;left:5px;background:white;color:var(--ink);padding:15px;z-index:20}:focus-visible{outline:3px solid var(--red);outline-offset:5px}@media(max-width:1000px){.hero{padding-left:9%;padding-right:9%;min-height:600px}.hero h1{font-size:66px}.hero-art{right:-160px;opacity:.65}.work-section,.about,.contact{padding-left:9%;padding-right:9%}.grid{gap:50px 35px}.picture{height:350px;padding:20px}.about{gap:55px}.about h2{font-size:56px}.project h3{font-size:23px}}@media(max-width:600px){header{height:90px;padding:0 6%}.logo{font-size:23px}.header-actions{gap:18px}.talk-link{font-size:9px;letter-spacing:1.5px}.menu-toggle{width:38px;height:38px}.hero{padding:38px 6% 70px;min-height:585px}.hero .eyebrow{font-size:8px;letter-spacing:2.3px;margin-bottom:30px}.hero h1{font-size:43px;letter-spacing:-1.5px;line-height:1.14;margin-bottom:25px}.hero p{font-size:16px;line-height:1.8;max-width:300px;margin-bottom:30px}.hero-art{right:-220px;top:-80px;opacity:.5}.crosses{right:210px;top:505px}.scroll-cue{display:none}.circle-link{font-size:9px;letter-spacing:1.6px;gap:13px}.circle-link .circle{width:43px;height:43px}.work-section{padding:55px 6%}.section-top h2{font-size:36px;letter-spacing:-1px}.section-top p{font-size:15px;max-width:280px}.filters{gap:24px;margin:23px 0 30px}.grid{grid-template-columns:1fr;gap:36px}.project:nth-child(even){margin-top:0}.picture{height:355px}.project h3{font-size:26px}.project p{font-size:13px}.about{padding:55px 6%;grid-template-columns:1fr;gap:15px}.about h2{font-size:52px}.about p{font-size:14px}.about-sidebar{padding-top:15px}.contact{padding:65px 6%}.contact .eyebrow{font-size:8px;letter-spacing:1.8px}.contact h2{font-size:36px;letter-spacing:-1.1px;max-width:330px}.contact:after{right:6%;top:40px;font-size:30px}.contact-email{font-size:12px}footer{padding:24px 6%;flex-wrap:wrap;font-size:9px;line-height:1.7}dialog{padding:25px}.detail-head h2{font-size:35px}.gallery{grid-template-columns:1fr}.gallery img{height:280px}#menu{padding:90px 8% 40px}#menu nav>a{font-size:45px}.menu-email{font-size:12px}}@media(max-width:360px){.hero h1{font-size:38px}.logo{font-size:20px}.talk-link{font-size:8px}.contact h2{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.picture img,.project-hover,.circle-link .circle{transition:none}}
