:root{--paper:#f5f3ed;--surface:#eaeae1;--ink:#282b25;--muted:#62665c;--line:#d1d5c9;--accent:#9e452e;--font:"DM Sans Variable", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:18px;line-height:1.65}body,button,input,select,textarea{font-family:var(--font)}button,input,select,textarea{font-size:1rem}button,a,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}img,svg{max-width:100%;display:block}img{height:auto}picture{display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance;font-weight:500;line-height:1.16}h1{letter-spacing:-.055em;font-size:clamp(2.6rem,6.3vw,5rem)}h2{letter-spacing:-.045em;font-size:clamp(2rem,4vw,3rem)}h3{letter-spacing:-.025em;font-size:1.4rem}p+p{margin-top:1.2em}::selection{color:#282b25;background:#e4c8ae}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}.shell{width:min(1184px,100% - 40px);margin-inline:auto}.section{padding-block:64px}.narrow{max-width:720px}.narrow h2{margin-bottom:24px}.narrow .text-link{margin-top:26px}.skip-link{background:var(--ink);color:#fff;z-index:100;padding:12px 18px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.site-header{background:var(--paper);border-bottom:1px solid var(--line);z-index:20;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;min-height:76px;display:flex}.wordmark{letter-spacing:-.07em;align-items:baseline;gap:5px;font-size:43px;font-weight:750;line-height:1;text-decoration:none;display:inline-flex}.pixel{background:var(--accent);width:7px;height:7px;display:inline-block}.desktop-nav{display:none}.mobile-menu summary{border:1px solid #a7ad9e;border-radius:2px;align-items:center;gap:15px;min-height:46px;padding-inline:14px;font-size:16px;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.menu-lines{flex-direction:column;gap:5px;display:flex}.menu-lines i{background:currentColor;width:17px;height:1px;display:block}.mobile-menu[open] summary{background:var(--ink);color:var(--paper)}.mobile-menu nav{background:var(--paper);border-bottom:1px solid var(--line);padding:12px 20px 24px;position:absolute;top:100%;left:0;right:0;box-shadow:0 16px 20px #222b2210}.mobile-menu nav a{border-bottom:1px solid var(--line);padding:15px 6px;font-size:21px;text-decoration:none;display:block}.eyebrow{letter-spacing:.035em;align-items:center;gap:10px;margin-bottom:22px;font-size:14px;font-weight:550;line-height:1.5;display:flex}.mini-pixel{background:var(--accent);flex-shrink:0;width:7px;height:7px}.lead{color:#52594d;max-width:650px;font-size:18px;line-height:1.7}.button{border:1px solid var(--ink);background:var(--ink);min-height:52px;color:var(--paper);text-align:center;border-radius:2px;justify-content:center;align-items:center;padding:13px 22px;font-size:16px;font-weight:500;line-height:1.5;text-decoration:none;transition:background .16s;display:inline-flex}.button:hover{background:#454d3e;border-color:#454d3e;text-decoration:none}.button-outline{color:var(--ink);background:0 0}.button-outline:hover{color:var(--ink);border-color:var(--ink);background:#e0e4d7}.button-light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button-light:hover{color:var(--ink);background:#e1e4d4;border-color:#e1e4d4}.text-link{background:0 0;border:0;border-bottom:1px solid;padding:0 0 3px;font-size:16px;line-height:1.5;text-decoration:none;display:inline-block}.text-link:hover{border-bottom-width:2px;text-decoration:none}.home-hero{gap:36px;padding-block:45px 56px;display:grid}.home-hero h1{max-width:14ch;margin-bottom:26px}.home-hero h1 span{color:var(--accent);margin-top:.12em;display:block}.hero-copy .lead{max-width:470px}.hero-copy .button{margin-top:28px}.hero-audience{color:var(--muted);margin-top:20px;font-size:14px}.hero-image img{aspect-ratio:5/4;object-fit:cover;width:100%}figcaption,.caption{color:var(--muted);margin-top:13px;font-size:14px;line-height:1.65}.section-heading{gap:23px;margin-bottom:36px;display:grid}.section-heading>p{max-width:440px;color:var(--muted)}.work-section{border-top:1px solid var(--line)}.project-grid{gap:68px;display:grid}.project-card-link{text-decoration:none;display:block}.project-card-copy{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;display:flex}.project-card-link:hover :is(h2,h3){text-underline-offset:.15em;text-decoration:underline 1px}.project-card-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 12px;padding-block:20px 12px;font-size:14px;line-height:1.5;display:flex}.status-label{color:#4e5b44;border:1px solid #bcc5b3;border-radius:2px;padding:3px 8px}.project-card :is(h2,h3){font-size:29px}.project-card :is(h2,h3) span{letter-spacing:-.02em;margin-top:8px;font-size:20px;font-weight:400;line-height:1.35;display:block}.project-card .text-link{flex-shrink:0;margin-top:18px}.project-views{background:var(--project-bg);grid-template-columns:.85fr 1fr;align-items:start;gap:25px 20px;padding:24px 20px 30px;display:grid}.project-view{min-width:0}.project-view figcaption{color:#26394a;margin:0 0 12px;font-size:14px;line-height:1.5}.project-view-desktop{grid-column:1/-1}.project-view img{width:100%;height:auto;display:block}.project-browser{background:#fff;border:1px solid #26394a55;border-radius:5px 5px 0 0;box-shadow:0 5px 15px #1020300a}.project-browser-bar{background:#fafafa;border-bottom:1px solid #26394a22;border-radius:4px 4px 0 0;align-items:center;gap:5px;height:22px;padding-inline:8px;display:flex}.project-browser-bar i{background:#87929a;border-radius:50%;width:4px;height:4px}.project-phone{background:#fff;border:1px solid #26394a77;border-radius:14px;max-width:230px;padding:5px}.project-phone img{border-radius:9px}.project-paper{border:1px solid #26394a22;box-shadow:3px 8px 18px #10203016}.soft-section{background:var(--surface)}.services-intro{gap:40px;display:grid}.section-intro{color:#535b4c;max-width:410px;margin-block:24px}.service-list article{border-top:1px solid #bfc8b5;padding-block:24px}.service-list article:last-child{padding-bottom:0}.service-list article h3{margin-bottom:14px}.service-list article p{color:#535b4c}.attitude{align-items:center;gap:38px;display:grid}.attitude figure img{aspect-ratio:5/4;object-fit:cover;object-position:65% center;width:100%}.attitude h2{margin-bottom:25px}.attitude p:not(.eyebrow):not(.statement){color:#535b4c}.attitude .statement{margin-top:27px;font-weight:500}.process-preview{gap:38px;display:grid}.process-preview>div>p:not(.eyebrow){color:#535b4c;max-width:450px;margin-block:24px}.process-mini{margin:0;padding:0;list-style:none}.process-mini li{border-top:1px solid #bfc8b5;gap:20px;padding-block:23px;display:flex}.process-mini li>span{color:#56644a;padding-top:3px;font-size:15px;font-weight:500}.process-mini h3{margin-bottom:9px}.process-mini p{color:#535b4c}.contact-band{color:var(--paper);background:#30382b;padding-block:54px}.contact-band-inner{align-items:center;gap:28px;display:grid}.contact-band h2{max-width:650px;margin-bottom:20px}.contact-band p:not(.eyebrow){color:#d8dfcd;max-width:600px}.contact-band .button{justify-self:start}.site-footer{padding-block:40px 24px}.footer-main{flex-wrap:wrap;align-items:center;gap:22px 28px;padding-bottom:32px;display:flex}.footer-main>p{font-size:15px;line-height:1.5}.footer-contact{width:100%;font-size:17px}.footer-bottom{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:18px;padding-top:22px;font-size:14px;display:flex}.footer-bottom nav{flex-wrap:wrap;gap:12px 22px;display:flex}.page-intro{padding-block:43px 45px}.page-intro h1{max-width:1000px;margin-bottom:26px}.page-intro .lead{max-width:750px}.intro-note{color:var(--muted);max-width:700px;margin-top:25px;font-size:15px}.portfolio-page{padding-top:10px}.intro-actions{flex-wrap:wrap;align-items:center;gap:22px;margin-top:28px;display:flex}.copy-status{color:var(--muted);margin-top:15px;font-size:15px}.breadcrumb{margin-bottom:28px;font-size:15px}.project-intro h1{font-size:clamp(3.5rem,9vw,7rem)}.project-intro h1>span{letter-spacing:-.035em;margin-top:14px;font-size:clamp(1.7rem,3.1vw,2.5rem);display:block}.case-cover{padding-block:26px}.case-cover img{border:1px solid #222b221a;width:100%}.case-cover figcaption{margin-top:17px}.case-brief,.case-detail{gap:27px;display:grid}.case-brief h3{margin-bottom:15px}.case-brief p+h3{margin-top:32px}.case-brief p,.case-detail>div>p{color:#535b4c}.plain-tags{flex-wrap:wrap;gap:10px;margin-top:30px;padding:0;list-style:none;display:flex}.plain-tags li{border:1px solid #bdc7b3;padding:6px 10px;font-size:14px}.case-photo img{aspect-ratio:3/2;object-fit:cover;width:100%}.large-copy{font-size:20px;line-height:1.65}.case-detail .button{margin-top:28px}.material-section{align-items:center;gap:36px;display:grid}.material-section figure{width:100%;max-width:440px;margin-inline:auto}.material-section figure img{border:1px solid #282b2520;width:100%;box-shadow:0 14px 35px #28301d0f}.material-section h2{margin-bottom:25px}.material-section .button{margin-top:25px}.before-figure{max-width:950px;margin-top:35px}.before-figure img{border:1px solid var(--line);width:100%}.next-project{border-top:1px solid var(--line);padding-block:30px 50px}.next-project p{color:var(--muted);margin-bottom:13px;font-size:14px}.next-project a{font-size:24px;line-height:1.4}.service-jump{flex-wrap:wrap;gap:10px 28px;padding-block:15px 30px;display:flex}.service-jump a{font-size:17px}.service-detail{border-top:1px solid var(--line);gap:30px;scroll-margin-top:70px;display:grid}.service-detail>div>p{color:#535b4c;margin-top:25px}.service-detail h3{margin-bottom:20px}.check-list{margin:0;padding:0;list-style:none}.check-list li{border-bottom:1px solid #c7cebd;padding:13px 0 13px 21px;position:relative}.check-list li:before{content:"";background:#6d7c5d;width:5px;height:5px;position:absolute;top:25px;left:0}.service-note{font-size:15px}.roadmap{padding-bottom:45px}.roadmap-step{border-top:1px solid var(--line);gap:23px;padding-block:32px 42px;display:grid}.step-marker{align-items:center;gap:15px;display:flex}.step-marker>span{border:1px solid #aab59d;flex-shrink:0;place-items:center;width:43px;height:43px;font-size:16px;display:grid}.step-marker>p{font-size:15px;font-weight:500}.roadmap-content h2{font-size:clamp(1.8rem,3vw,2.5rem)}.step-lead{color:#535b4c;margin-top:19px}.responsibilities{gap:23px;margin-top:28px;display:grid}.responsibilities h3,.outcome h3{letter-spacing:0;margin-bottom:10px;font-size:17px;font-weight:600}.responsibilities p{color:#535b4c}.outcome{background:#e9ecdf;margin-top:28px;padding:23px}.faq-layout{gap:30px;display:grid}.faq-list{border-top:1px solid #bfc8b5}.faq-list details{border-bottom:1px solid #bfc8b5}.faq-list summary{padding:22px 26px 22px 0;font-size:19px;font-weight:500;line-height:1.5;list-style:none;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";font-size:25px;font-weight:400;position:absolute;top:20px;right:0}.faq-list details[open] summary:after{content:"−"}.faq-list details p{color:#535b4c;padding-bottom:23px}.contact-layout{gap:40px;padding-top:0;display:grid}.contact-layout aside>p{margin-top:23px}.contact-layout .contact-email{color:var(--accent);overflow-wrap:anywhere;font-size:23px}.notice{background:#e9e9de;border-left:3px solid #8b967c;margin-block:28px;padding:24px}.notice p{margin-top:9px;font-size:16px}.notice h2{font-size:24px}.inquiry-form{gap:22px;display:grid}label{gap:9px;font-size:16px;font-weight:500;display:grid}input,select,textarea{width:100%;color:var(--ink);background:#fbfaf7;border:1px solid #a8b29b;border-radius:2px;padding:13px 14px;font-weight:400;line-height:1.5}input::placeholder,textarea::placeholder{color:#71766b}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline-offset:2px;outline:2px solid #78886b}.form-privacy{color:var(--muted);font-size:14px}.inquiry-form .button{justify-self:start}.inquiry-result h2{margin-bottom:20px}.inquiry-result>p:not(.eyebrow){margin-bottom:23px}.inquiry-result>label{margin-top:25px}.legal-page{max-width:780px;padding-block:50px 80px}.legal-page h1{margin-bottom:30px;font-size:clamp(2.5rem,6vw,4rem)}.legal-page h2{margin-block:35px 16px;font-size:26px}.legal-page .notice h2{margin-top:0}.legal-page .text-link{margin-top:28px}@media (width>=700px){body{font-size:18px}.shell{width:min(1184px,100% - 72px)}.section{padding-block:90px}.project-grid{gap:84px}.project-views{gap:30px;padding:34px}.responsibilities{grid-template-columns:1fr 1fr;gap:30px}.contact-band{padding-block:70px}.footer-contact{width:auto;margin-left:auto}.page-intro{padding-block:60px}.portfolio-page{padding-top:0}.case-cover{padding-block:40px}.case-photo img{aspect-ratio:16/9}.material-section{grid-template-columns:.9fr 1.1fr;gap:65px}.material-section figure{max-width:380px}.roadmap-step{padding-block:45px 55px}.step-marker>p{font-size:16px}.service-jump{padding-bottom:40px}.contact-layout{padding-top:0}}@media (width>=950px){.header-inner{min-height:92px}.wordmark{font-size:48px}.mobile-menu{display:none}.desktop-nav{align-items:center;gap:30px;display:flex}.desktop-nav a{padding-block:12px;font-size:16px;text-decoration:none}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{text-underline-offset:.4em;text-decoration:underline}.desktop-nav a.nav-contact{border:1px solid #9ea992;padding-inline:19px}.home-hero{grid-template-columns:1fr 1fr;align-items:center;gap:55px;padding-block:75px}.home-hero h1{font-size:clamp(3.4rem,5.5vw,4.8rem)}.hero-image{flex-direction:column;align-self:stretch;display:flex}.hero-image picture{flex:1}.hero-image img{object-position:58% center;height:100%;min-height:520px}.hero-image figcaption{margin-top:14px}.lead{font-size:19px}.section-heading{grid-template-columns:1.3fr 1fr;align-items:end;gap:80px;margin-bottom:45px}.services-intro,.process-preview{grid-template-columns:1fr 1.1fr;gap:100px}.attitude{grid-template-columns:1fr 1fr;gap:80px}.attitude figure img{aspect-ratio:4/5}.contact-band-inner{grid-template-columns:1fr auto;gap:65px}.case-brief,.case-detail{grid-template-columns:.85fr 1.15fr;gap:100px}.case-detail h2{max-width:450px}.service-detail{grid-template-columns:1fr 1fr;gap:100px}.roadmap-step{grid-template-columns:240px 1fr;gap:70px}.step-marker{align-items:flex-start;padding-top:3px}.step-marker>p{max-width:160px;padding-top:7px}.faq-layout{grid-template-columns:1fr 1.1fr;gap:80px}.contact-layout{grid-template-columns:.9fr 1.1fr;gap:90px}}@media (width<=699px){.desktop-break{display:none}.project-card-meta{display:block}.project-card-meta .status-label{margin-top:9px;display:inline-block}.intro-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.case-open-demo{margin-top:28px}.case-detail .check-list{margin-top:22px}.case-application{margin-top:40px}.case-application img{border:1px solid #c4c9bb;width:100%}.roadmap-scope{max-width:900px;padding-block:0 45px}.roadmap-scope p{color:var(--muted)}.roadmap-work-details{border-top:1px solid var(--line);margin-top:26px}.roadmap-work-details summary{padding:20px 30px 20px 0;font-size:17px;font-weight:500;line-height:1.5;list-style:none;position:relative}.roadmap-work-details summary::-webkit-details-marker{display:none}.roadmap-work-details summary:after{content:"+";font-size:25px;position:absolute;top:17px;right:0}.roadmap-work-details[open] summary:after{content:"−"}.roadmap-work-details .responsibilities{margin-top:8px}.roadmap-decision{border-left:2px solid #a5b197;margin-top:25px;padding:0 0 0 20px}.roadmap-decision h3{letter-spacing:0;margin-bottom:10px;font-size:17px}.roadmap-decision p{color:var(--muted)}.hero-actions{flex-wrap:wrap;align-items:center;gap:22px;margin-top:28px;display:flex}.hero-actions .button{margin-top:0}.contact-email-link{border-bottom:1px solid;margin-top:25px;text-decoration:none;display:inline-block}.mail-explanation{color:var(--muted);font-size:15px}.contact-after{border-top:1px solid var(--line);margin-top:35px;padding-top:25px}.contact-after h3{font-size:21px}.contact-after p{margin-top:15px;font-size:16px}.contact-helper>h2{margin-bottom:18px;font-size:30px}.contact-helper-intro{color:var(--muted);margin-bottom:28px;font-size:16px}.optional-label{color:var(--muted);font-size:14px;font-weight:400}@media (width>=950px){.project-views{grid-template-columns:minmax(0,6.2fr) minmax(0,1.55fr) minmax(0,2.25fr);align-items:center;gap:26px;padding:40px 34px}.project-view-desktop{grid-column:auto}.project-view figcaption{margin-bottom:16px}.home-hero h1{max-width:18ch;font-size:clamp(3rem,4.35vw,4.2rem);line-height:1.08}}@media (width<=400px){.project-views{gap:22px 15px;padding:20px 14px 24px}}@media (width>=950px){.project-views[data-tall=true]{grid-template-columns:minmax(0,4.9fr) minmax(0,2.1fr) minmax(0,3fr)}}
