@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#101112;--surface:#191b1d;--text:#f2f2eb;--muted:#b0b1ac;--line:#353739;--accent:#d7f578}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--text);font:17px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:6px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:500;line-height:1.12;letter-spacing:-.045em}p{color:var(--muted)}.wrap{max-width:1400px;margin:auto;padding:0 64px}.skip{position:fixed;left:20px;top:-100px;background:var(--accent);color:#101112;padding:12px;z-index:100}.skip:focus{top:12px}header{background:#101112f5;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:96px;gap:30px}.brand{display:flex;align-items:center;gap:14px;font-size:16px;font-weight:600}.monogram{display:grid;place-items:center;width:38px;height:38px;border:1px solid #6e7269;border-radius:50%;font-size:14px;letter-spacing:-2px;padding-right:2px}.navlinks{display:flex;align-items:center;gap:34px;font-size:14px}.navlinks .contact{border:1px solid #666a5b;border-radius:30px;padding:9px 20px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:600;color:var(--accent)}.hero{padding:90px 0 72px}.hero-top{display:flex;justify-content:space-between;gap:20px}.location{font-size:13px;color:var(--muted)}h1{font-size:clamp(48px,6.5vw,94px);max-width:1080px;margin-top:28px}.hero h1 span{color:var(--accent)}.hero-bottom{margin-top:38px;display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.hero-bottom p{max-width:610px;font-size:19px}.pill{display:inline-block;background:var(--accent);color:#111511;border:1px solid var(--accent);border-radius:30px;padding:13px 26px;font-size:14px;font-weight:700;white-space:nowrap}.pill:hover{background:#edffc0;color:#111}.trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}.trust small{font-size:12px;color:var(--muted);max-width:120px;line-height:1.5}.trust strong{font-family:Manrope,sans-serif;font-size:18px;font-weight:600;letter-spacing:-.03em}.section{padding:92px 0}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:36px}.section-head h2{font-size:45px}.section-head p{font-size:14px;max-width:280px}.section-no{color:var(--accent);font-size:12px;letter-spacing:.1em;margin-bottom:14px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:52px 28px}.project-media{aspect-ratio:1.5;background:#222829;overflow:hidden;border-radius:4px;position:relative;display:grid;place-items:center}.project-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.project:hover .project-media img{transform:scale(1.025)}.project:first-child .project-media{background:#dedbd5}.project:nth-child(2) .project-media{background:#c9d6d9}.project-meta{display:flex;justify-content:space-between;gap:12px;margin:22px 0 9px;color:var(--muted);font-size:12px}.project h3{font-size:28px;letter-spacing:-.035em;max-width:500px}.project p{font-size:15px;margin-top:14px;max-width:510px}.project .read{display:inline-block;font-size:13px;border-bottom:1px solid #6d7261;margin-top:20px;padding-bottom:3px}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.55fr;gap:80px}.about h2{font-size:50px;max-width:380px}.about-copy>p{font-size:21px;color:var(--text)}.about-copy>p+p{font-size:17px;color:var(--muted);margin-top:22px}.capabilities{margin-top:36px}.capability{display:grid;grid-template-columns:42px 1fr;border-top:1px solid var(--line);padding:22px 0}.capability span{font-size:12px;color:var(--accent)}.capability h3{font-size:19px;letter-spacing:-.02em}.capability p{font-size:15px;margin-top:9px}.contact-section{padding:72px 0 90px;border-top:1px solid var(--line)}.contact-section h2{font-size:clamp(40px,5vw,70px);margin:18px 0 24px;max-width:900px}.contact-section p{max-width:600px;margin-bottom:28px}.footer{border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}.footer a{text-decoration:underline;text-underline-offset:4px}.case-hero{padding:68px 0 50px}.back{font-size:14px;display:inline-block;border-bottom:1px solid var(--line);margin-bottom:44px}.case-hero h1{font-size:clamp(42px,5vw,72px);max-width:1000px;margin:18px 0 26px}.case-intro{max-width:820px;font-size:21px}.facts{margin-top:38px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:24px;border-top:1px solid var(--line);padding-top:24px}.facts dt{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.facts dd{margin:7px 0 0;font-size:15px}.case-banner{background:#222829;border-radius:4px;overflow:hidden}.case-banner img{width:100%;max-height:660px;object-fit:contain}.caption{font-size:13px;color:var(--muted);margin-top:12px;max-width:900px}.case-body{display:grid;grid-template-columns:210px 1fr;gap:64px;padding:70px 0}.contents{font-size:14px;align-self:start;position:sticky;top:28px;display:flex;flex-direction:column;gap:15px}.contents span{color:var(--muted);font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}.case-section{margin-bottom:60px;max-width:870px}.case-section h2{font-size:35px;margin-bottom:24px}.case-section p+p{margin-top:20px}.case-section h3{font-size:22px;margin:30px 0 14px}.case-section li{color:var(--muted);margin-bottom:13px}.case-section ul{padding-left:22px}.case-section figure{margin:32px 0}.case-section figure img{background:#232729;border-radius:4px;width:100%}.next-case{border-top:1px solid var(--line);padding:35px 0 65px}.next-case h2{font-size:30px;margin-top:14px}.accent{color:var(--accent)}@media(min-width:1600px){.wrap{max-width:1510px}}@media(max-width:900px){.wrap{padding:0 30px}.hero{padding-top:60px}.hero-bottom{align-items:start;flex-direction:column}.trust{justify-content:flex-start;gap:24px}.trust small{max-width:none;width:100%}.about{gap:35px;grid-template-columns:1fr 1.3fr}.case-body{grid-template-columns:150px 1fr;gap:32px}}@media(max-width:600px){.wrap{padding:0 22px}.nav{min-height:80px;gap:15px}.brand{font-size:14px;gap:9px}.navlinks{gap:16px;font-size:13px}.navlinks .contact{display:none}.hero{padding:46px 0}.hero-top{flex-direction:column;gap:10px}.location{font-size:12px}h1{font-size:48px;margin-top:24px}.hero-bottom{margin-top:27px;gap:26px}.hero-bottom p{font-size:17px}.trust strong{font-size:15px}.section{padding:60px 0}.section-head{align-items:start;flex-direction:column;gap:16px}.section-head h2{font-size:36px}.grid{grid-template-columns:1fr;gap:40px}.project h3{font-size:26px}.project-meta{margin-top:18px}.about{display:block}.about h2{font-size:40px;margin-bottom:28px}.about-copy>p{font-size:19px}.footer{flex-direction:column;gap:10px}.facts{grid-template-columns:1fr;gap:16px}.case-body{display:block;padding-top:42px}.contents{position:static;flex-direction:row;flex-wrap:wrap;padding-bottom:28px;margin-bottom:36px;border-bottom:1px solid var(--line);gap:16px}.contents span{width:100%}.case-intro{font-size:18px}.case-section h2{font-size:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.project:last-child .project-media{background:#eef1f0}.project:last-child .project-media img{object-fit:contain;padding:24px}.case-banner a{display:block}.case-section figure a{display:block}.case-banner a:focus-visible,.case-section figure a:focus-visible{outline-offset:-4px}
.project-fcac{grid-column:1/-1;display:block}.project-fcac>a{display:grid;grid-template-columns:1.35fr 1fr;column-gap:42px}.project-fcac .project-media{grid-row:1/6;aspect-ratio:1.5;background:#cbd1d2!important;padding:28px 36px 0;align-items:start}.project-fcac .project-media img{object-fit:cover;object-position:top;width:100%;height:100%;border:5px solid #2b3035;border-bottom:0;border-radius:8px 8px 0 0}.project-fcac .project-meta{margin-top:28px}.project-fcac h3{font-size:clamp(30px,3vw,43px);align-self:center}.project-fcac .read{justify-self:start;align-self:start;margin-bottom:25px}.case-fcac .case-banner{padding:36px;background:#cbd1d2}.case-fcac .case-banner img{max-height:none;height:auto;border:7px solid #252b30;border-radius:10px}.case-fcac .case-banner a{max-width:970px;margin:auto}.case-fcac .case-section{max-width:none}.fcac-evidence{margin-top:48px}.evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.case-section .evidence-item{margin:28px 0 0;min-width:0}.artifact-frame{background:#e0e5e6;border:1px solid #454b50;border-radius:7px;overflow:hidden}.frame-bar{display:block;padding:9px 14px;background:#252b30;color:#ddd;font:11px/1.5 Arial,sans-serif;letter-spacing:.1em}.case-section .artifact-frame img{border-radius:0;background:#e0e5e6;object-fit:contain;object-position:top;width:100%;height:310px;padding:12px}.evidence-item figcaption{padding-top:14px}.evidence-item figcaption strong{font-size:16px;font-weight:500}.evidence-item figcaption p{font-size:14px;margin-top:6px}.more-evidence{margin-top:32px;border-top:1px solid var(--line);padding-top:24px}.more-evidence summary{cursor:pointer;font-size:16px;color:var(--accent);padding:10px 0}.more-evidence summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}@media(max-width:900px){.project-fcac>a{column-gap:24px}.project-fcac .project-media{padding:18px 18px 0;height:100%;aspect-ratio:auto}.case-fcac .case-banner{padding:18px}.evidence-grid{grid-template-columns:1fr}}@media(max-width:600px){.project-fcac>a{display:block}.project-fcac .project-media{aspect-ratio:1.5;height:auto}.project-fcac h3{font-size:30px}.project-fcac .read{margin-bottom:0}.case-fcac .case-banner{padding:12px}.case-fcac .case-banner img{border-width:3px}.case-section .artifact-frame img{height:350px}}
