:root{--paper:#f4f4f4;--ink:#292b2d;--muted:#66696c;--accent:#bd4816;--line:#dcdcdc;--green:#303235;--serif:Georgia,'Times New Roman',serif;--tint:#e9e9e9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin:0 0 22px}h1,h2,h3{line-height:1.08;letter-spacing:-.045em;font-weight:550}h1{font-size:clamp(46px,5.7vw,82px)}h2{font-size:clamp(34px,4vw,56px)}h3{font-size:28px}h1 em,h2 em{font-family:var(--serif);font-weight:400;color:var(--accent)}p{color:var(--muted)}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.eyebrow{display:block;font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.15em;margin-bottom:26px;text-decoration:none;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:var(--accent);color:white;padding:15px 24px;text-decoration:none;border:1px solid var(--accent);border-radius:5px;font-weight:600;font-size:14px;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#b64516;transform:translateY(-2px)}.button.light{background:var(--paper);color:var(--green);border-color:var(--paper)}.arrow-link,.quiet-link{font-size:14px;font-weight:600}.arrow-link{text-decoration:none;display:inline-flex;align-items:center;gap:35px;border-bottom:1px solid;padding-bottom:7px}.arrow-link:hover{color:var(--accent)}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:20px;background:white;padding:16px;z-index:100}.site-header{border-bottom:1px solid var(--line);position:relative;z-index:20;background:var(--paper)}.header-inner{width:min(1344px,calc(100% - 96px));margin:auto;display:flex;align-items:center;justify-content:space-between;min-height:100px}.brand{display:inline-flex;flex-direction:column;text-decoration:none;line-height:1}.brand-name{font-size:41px;font-weight:800;letter-spacing:-.065em}.brand-name>span{color:var(--accent)}.brand small{font-size:8px;letter-spacing:.23em;margin-top:7px}.desktop-nav{display:flex;align-items:center;gap:32px}.desktop-nav a{text-decoration:none;font-size:13px;font-weight:550}.desktop-nav a:hover{color:var(--accent)}.desktop-nav .nav-contact{border:1px solid var(--line);padding:10px 20px;border-radius:4px}.menu-toggle,.mobile-nav{display:none}.studio-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center;padding-block:70px 76px}.studio-hero h1{font-size:clamp(48px,5.2vw,76px);max-width:660px}.hero-copy>p{max-width:470px;font-size:18px;line-height:1.65}.live-dot{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;margin-right:8px}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:32px}.hero-note{display:flex;gap:24px;margin-top:45px;font-size:11px;color:var(--muted)}.hero-note span+span{border-left:1px solid var(--line);padding-left:24px}.hero-showcase{background:#e7e7e7;position:relative;height:590px;overflow:hidden;border-radius:6px;text-decoration:none}.showcase-caption,.showcase-bottom{position:absolute;left:28px;right:28px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.09em}.showcase-caption{top:24px}.showcase-bottom{bottom:24px;font-size:13px;letter-spacing:0}.showcase-bottom span{font-size:23px}.hero-phone{position:absolute;width:47%;max-height:460px;object-fit:contain;filter:drop-shadow(0 20px 15px #292b2d22)}.phone-back{left:10%;top:106px;transform:rotate(-11deg)}.phone-front{right:10%;top:68px;transform:rotate(8deg)}.studio-strip{border-block:1px solid var(--line)}.studio-strip>.wrap{display:flex;justify-content:space-between;gap:20px;padding-block:22px;font-size:12px;color:var(--muted)}.studio-strip span:first-child{color:var(--ink);font-weight:600}.selected-work{padding-block:100px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:55px}.section-heading h2,.section-heading h1{margin-bottom:0}.section-heading>p{max-width:380px;margin-bottom:0}.work-row{display:grid;grid-template-columns:1fr 1.2fr;min-height:520px;background:#eee;margin-bottom:30px;overflow:hidden;border-radius:6px}.work-copy{padding:62px 48px;display:flex;flex-direction:column;align-items:start;justify-content:center}.work-copy h2,.work-copy h3{font-size:clamp(36px,4vw,52px);margin-bottom:17px}.work-copy h2 a,.work-copy h3 a{text-decoration:none}.work-copy .eyebrow{font-size:10px;margin-bottom:30px}.work-copy .work-headline{color:var(--ink);font-size:21px;line-height:1.35;margin-bottom:14px;max-width:300px}.work-copy>p:not(.work-headline){max-width:340px;font-size:15px}.work-copy .arrow-link{margin-top:17px}.work-visual{position:relative;background:var(--tint);display:flex;justify-content:center;align-items:center;overflow:hidden;padding:42px;min-height:520px}.work-visual img{height:430px;width:auto;max-width:85%;object-fit:contain;filter:drop-shadow(0 18px 14px #292b2d20);transition:transform .4s}.work-visual:hover img{transform:translateY(-7px) rotate(2deg)}.visual-arrow{position:absolute;right:25px;bottom:25px;width:42px;height:42px;display:grid;place-items:center;background:#ffffffaa;border-radius:50%;font-size:22px}.team-up{--tint:#e7e7e7}.nibble-comics{--tint:#e9dfcb}.last-nite{--tint:#dcdced}.check-in-friends{--tint:#e8dff0}.tickettac{--tint:#dce9ef}.studio-services{padding-block:100px;background:#eaeaea}.service-list>a{display:grid;grid-template-columns:50px 1fr 1fr 30px;align-items:center;gap:28px;padding:34px 0;border-top:1px solid #d3d3d3;text-decoration:none}.service-list>a:last-child{border-bottom:1px solid #d3d3d3}.service-list h3,.service-list p{margin:0}.service-list h3{font-size:28px}.service-list p{font-size:15px;max-width:360px}.service-list>a>span{font-size:12px;color:var(--muted)}.service-list>a>span:last-child{font-size:28px}.service-list>a:hover h3{color:var(--accent)}.studio-note{padding-block:110px;max-width:820px;text-align:center}.studio-note p{max-width:620px;margin-inline:auto;font-size:18px}.contact-band{background:var(--green);color:var(--paper);padding-block:85px}.contact-band>.wrap{position:relative}.contact-band .eyebrow{color:#d3d3d3}.contact-band h2{font-size:clamp(48px,6vw,82px)}.contact-band h2 em{color:#ff985e}.contact-band .button{position:absolute;right:0;bottom:12px}.site-footer{padding:60px max(48px,calc((100vw - 1240px)/2)) 25px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:35px}.footer-top{padding-bottom:45px}.footer-top p{font-size:14px}.footer-top>div{display:flex;flex-direction:column;font-size:14px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:11px}.footer-bottom nav{display:flex;gap:25px}.footer-bottom a{text-decoration:none}.page-intro{padding-block:85px 60px}.page-intro p{max-width:610px;font-size:19px}.portfolio-work{padding-top:0}.portfolio-work .work-row:nth-child(even){grid-template-columns:1.2fr 1fr}.portfolio-work .work-row:nth-child(even) .work-copy{order:2}.lab-note{padding:45px 0 0;border-top:1px solid var(--line);margin-top:50px}.product-hero{background:var(--tint);padding-block:65px}.product-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.product-name{font-size:18px;color:var(--ink);font-weight:600;margin-top:48px}.product-hero h1{font-size:clamp(48px,5.7vw,80px)}.product-summary{max-width:500px;font-size:19px}.product-category{display:block;font-size:12px;margin-block:25px}.product-hero-screen{display:flex;justify-content:center}.product-hero-screen img{height:590px;max-width:100%;object-fit:contain;filter:drop-shadow(0 24px 18px #292b2d20)}.product-story{display:grid;grid-template-columns:1fr 2fr;gap:80px;padding-block:95px;border-bottom:1px solid var(--line)}.product-story p{font-size:clamp(22px,2.3vw,31px);line-height:1.5;color:var(--ink);margin:0}.product-features{padding-top:80px}.product-feature{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;margin-bottom:85px}.feature-screen{background:var(--tint);padding:50px;display:flex;justify-content:center;border-radius:6px}.project-page.tickettac .feature-screen{background:transparent;padding:0}.feature-screen img{height:480px;object-fit:contain;filter:drop-shadow(0 16px 12px #292b2d22)}.feature-copy{max-width:440px}.feature-number{color:var(--accent);display:block;font-size:12px;margin-bottom:30px}.feature-copy p{font-size:18px}.product-feature:nth-child(even) .feature-screen{order:2}.product-end{text-align:center;padding-block:35px 100px}.product-end .quiet-link{display:block;margin-top:25px}.more-work{padding-block:60px;border-top:1px solid var(--line)}.more-work-list{display:grid;grid-template-columns:1fr 1fr;gap:50px}.more-work-list a{text-decoration:none}.more-work-list span{font-size:11px;color:var(--muted)}.more-work-list h3{margin-top:15px}.more-work-list p{max-width:420px}.hero.interior-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center;padding-block:80px}.hero-art{display:flex;justify-content:center}.hero-art img{max-height:300px;width:auto}.timeline{padding-block:35px 80px}.timeline-row{display:grid;grid-template-columns:240px 1fr;gap:70px;padding-block:55px;border-top:1px solid var(--line)}.timeline-image img{width:220px;border-radius:6px}.timeline-row p{max-width:720px}.values{padding-block:60px 100px}.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:55px}.value-grid img{width:70px;height:70px;object-fit:contain;margin-bottom:25px}.value-grid h3{font-size:25px}.prose,.privacy-page{max-width:900px;padding-block:70px 100px}.prose h2,.privacy-page h2{font-size:32px;margin-top:40px}.prose h3{font-size:25px}.privacy-page a{overflow-wrap:anywhere}.service-cta{text-align:center}.contact-section{padding-bottom:100px}.contact-form{max-width:750px;display:grid;gap:20px}.contact-form input,.contact-form textarea,.editorial-form input,.editorial-form textarea,.editorial-form select,.search-label input{width:100%;padding:14px 16px;border:1px solid #d3d3d3;background:#ffffff;color:var(--ink);border-radius:4px;font:inherit}.contact-form textarea{resize:vertical}.contact-form label span{display:block;font-size:12px;margin-bottom:6px}.trap{position:absolute;left:-9999px}.form-status,.save-success{color:#245e3a}.events-frame{width:100%;height:100vh;border:0}.journal{padding-bottom:90px}.journal-row{display:grid;grid-template-columns:160px 1fr;gap:50px;padding-block:42px;border-top:1px solid var(--line)}.journal-date{font-size:12px;color:var(--muted);padding-top:8px}.journal-row h2{font-size:32px;max-width:800px;line-height:1.25}.journal-row h2 a{text-decoration:none}.journal-row p{max-width:750px}.pagination{display:flex;gap:12px;margin-top:35px}.pagination a{display:grid;place-items:center;min-width:40px;height:40px;text-decoration:none;border:1px solid var(--line);border-radius:50%}.pagination a[aria-current]{background:var(--green);color:white}.blog-post{max-width:850px;padding-block:75px 100px}.blog-post>h1{font-size:clamp(38px,4.5vw,62px);overflow-wrap:anywhere}.meta{font-size:12px;border-bottom:1px solid var(--line);padding-block:5px 30px;margin-bottom:45px}.post-content{font-size:17px;line-height:1.85;overflow-wrap:anywhere}.post-content h1{font-size:42px}.post-content h2{font-size:32px;margin-top:45px}.post-content h3{font-size:26px;margin-top:35px}.post-content h4,.post-content h5,.post-content h6{font-size:21px;margin-block:30px 15px}.post-content p{color:#505255}.post-content li{margin-bottom:8px}.post-content img{max-height:650px;object-fit:contain;margin:25px auto}.post-content blockquote{border-left:3px solid var(--accent);padding:12px 24px;margin:30px 0;background:#ededed;color:var(--ink)}.post-content code{font:13px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;background:#e6e6e6;padding:3px 6px;border-radius:3px}.code-block{background:#242629;color:#ededed;border-radius:6px;overflow:hidden;margin-block:28px}.code-label{font:11px ui-monospace,monospace;color:#c6c6c6;padding:12px 20px;border-bottom:1px solid #ffffff18;display:flex;justify-content:space-between}.code-label button{background:none;color:inherit;border:0;font:inherit;cursor:pointer}.code-block pre{overflow-x:auto;margin:0;padding:22px;white-space:pre;tab-size:4}.code-block code{padding:0;background:none;color:inherit;border-radius:0;overflow-wrap:normal}.article-end{margin-top:60px;padding-top:35px;border-top:1px solid var(--line)}.article-end p{font-size:25px;color:var(--ink)}.login-panel{max-width:480px;margin:85px auto;padding:0 25px}.login-panel h1{font-size:47px}.editorial-form{display:grid;gap:24px}.editorial-form label,.search-label{font-size:12px;font-weight:600;display:block}.editorial-form label input,.editorial-form label textarea,.editorial-form label select{display:block;margin-top:8px;font-weight:400;font-size:15px}.editorial-form label small{font-size:11px;color:var(--muted);font-weight:400}.editorial-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-block:25px;margin-bottom:55px;font-size:13px}.editorial-top a{text-decoration:none}.text-button{background:none;border:0;color:var(--ink);text-decoration:underline;cursor:pointer;font-size:13px}.editorial-dashboard,.editorial-editor{padding-bottom:90px}.editorial-dashboard h1,.editorial-editor h1{font-size:48px}.editorial-row{display:grid;grid-template-columns:1fr 100px 25px;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);text-decoration:none}.editorial-row strong{font-weight:550}.editorial-row small{display:block;color:var(--muted);font-size:11px}.status{font-size:11px;padding:4px 10px;border-radius:15px;text-align:center}.status.published{background:#dce9d9}.status.draft{background:#eee1c5}.search-label{max-width:460px;margin-bottom:30px}.search-label input{margin-top:7px}.editor-meta{display:grid;grid-template-columns:2fr 1fr;gap:25px}.editor-toolbar{display:flex;flex-wrap:wrap;gap:5px;padding:10px;background:#e8e8e8;border:1px solid var(--line);border-radius:5px}.editor-toolbar button{font-size:12px;padding:7px 10px;background:var(--paper);border:1px solid var(--line);border-radius:3px;cursor:pointer}.editor-toolbar button:hover{background:#ddd}.editor-panes{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:start}.editor-label{font-size:12px;font-weight:600}.editor-panes textarea{font:13px/1.7 ui-monospace,monospace!important;resize:vertical;min-height:600px;tab-size:4}.editor-panes>section{min-width:0}.editor-panes .post-content{padding:25px;background:white;border:1px solid var(--line);border-radius:4px;margin-top:8px;min-height:600px;max-height:900px;overflow:auto}.editor-panes .post-content h1{font-size:34px}.editor-help{font-size:12px;max-width:800px}.editor-save{position:sticky;bottom:0;background:var(--paper);border-top:1px solid var(--line);padding:16px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.editor-save span{font-size:12px;color:var(--muted)}.form-error{color:#a73627}.save-success{background:#e1ebdc;padding:12px 20px;border-radius:4px}.store-link{display:inline-block;max-width:180px}#preview-status{font-size:12px;margin:0;color:var(--muted)}[hidden]{display:none!important}
@media(min-width:1500px){.hero-showcase{height:620px}.hero-phone{max-height:490px}}
@media(max-width:1000px){.wrap,.header-inner{width:calc(100% - 56px)}.desktop-nav{gap:18px}.studio-hero{gap:30px}.hero-showcase{height:480px}.hero-phone{top:90px;max-height:330px}.phone-front{top:70px}.work-copy{padding:38px 30px}.work-row,.work-visual{min-height:470px}.work-visual img{height:370px}.product-hero-grid{gap:40px}.product-hero-screen img{height:480px}.product-feature{gap:45px}.feature-screen{padding:30px}.feature-screen img{height:420px}.service-list>a{grid-template-columns:30px 1fr 1fr 20px;gap:20px}.site-footer{padding-inline:28px}}
@media(max-width:700px){.wrap,.header-inner{width:calc(100% - 40px)}.header-inner{min-height:82px}.brand-name{font-size:35px}.brand small{font-size:7px}.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;gap:7px;background:none;border:0;padding:14px}.menu-toggle span{width:24px;height:2px;background:var(--ink)}.mobile-nav:not([hidden]){display:grid;padding:16px 20px 25px;border-top:1px solid var(--line);background:var(--paper);position:absolute;left:0;right:0;box-shadow:0 12px 15px #292b2d10}.mobile-nav a{padding:10px 0;text-decoration:none}.studio-hero{grid-template-columns:1fr;padding-block:45px;gap:38px}.studio-hero h1{font-size:clamp(42px,11vw,64px)}.hero-copy>p{font-size:17px}.hero-actions{gap:20px}.hero-note{margin-top:28px}.hero-showcase{height:460px}.hero-phone{height:350px;max-height:none;top:65px;width:43%}.phone-back{top:90px;left:14%}.phone-front{right:14%}.studio-strip>.wrap{display:grid;grid-template-columns:1fr 1fr;font-size:11px;gap:14px}.selected-work{padding-block:55px}.section-heading{display:block;margin-bottom:35px}.section-heading>.arrow-link,.section-heading>p,.section-heading>.button{margin-top:25px}.work-row,.portfolio-work .work-row:nth-child(even){grid-template-columns:1fr}.work-copy{padding:35px 28px}.work-copy h2,.work-copy h3{font-size:39px}.work-copy .eyebrow{margin-bottom:20px}.work-visual{min-height:410px;padding:25px}.work-visual img{height:360px}.portfolio-work .work-row:nth-child(even) .work-copy{order:0}.studio-services{padding-block:60px}.service-list>a{grid-template-columns:25px 1fr 20px;gap:16px}.service-list h3{font-size:23px}.service-list p{grid-column:2;grid-row:2;font-size:14px}.service-list>a>span:last-child{grid-column:3;grid-row:1}.studio-note{padding-block:65px}.studio-note p{font-size:16px}.contact-band{padding-block:55px}.contact-band .button{position:static;margin-top:10px}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:25px}.footer-top p{font-size:12px}.footer-top>div{grid-column:1/-1;font-size:14px}.footer-bottom{display:block}.footer-bottom nav{margin-top:18px;flex-wrap:wrap;gap:18px}.site-footer{padding:45px 20px 25px}.page-intro{padding-block:50px 35px}.page-intro p{font-size:17px}.portfolio-work{padding-top:0}.product-hero{padding-block:35px}.product-hero-grid{grid-template-columns:1fr;gap:35px}.product-name{margin-top:30px}.product-hero h1{font-size:52px}.product-summary{font-size:17px}.product-hero-screen img{height:430px}.product-story{grid-template-columns:1fr;gap:8px;padding-block:50px}.product-story p{font-size:23px}.product-features{padding-top:45px}.product-feature{grid-template-columns:1fr;gap:30px;margin-bottom:50px}.product-feature:nth-child(even) .feature-screen{order:0}.feature-screen img{height:390px}.feature-number{margin-bottom:18px}.feature-copy p{font-size:16px}.product-end{padding-block:20px 55px}.more-work{padding-block:40px}.more-work-list{grid-template-columns:1fr;gap:25px}.hero.interior-hero{grid-template-columns:1fr;gap:30px;padding-block:50px}.hero-art img{max-height:220px}.timeline-row{grid-template-columns:1fr;gap:25px;padding-block:35px}.timeline-image img{width:180px}.value-grid{grid-template-columns:1fr;gap:30px}.values{padding-block:30px 60px}.journal-row{grid-template-columns:1fr;gap:12px;padding-block:30px}.journal-row h2{font-size:27px}.blog-post{padding-block:45px 60px}.post-content{font-size:16px}.post-content h2{font-size:28px}.editorial-dashboard h1,.editorial-editor h1{font-size:37px}.editorial-row{grid-template-columns:1fr 80px;gap:12px}.editorial-row>span:last-child{display:none}.editorial-row strong{font-size:14px}.editorial-row small{overflow-wrap:anywhere}.editor-meta,.editor-panes{grid-template-columns:1fr}.editor-panes textarea{min-height:380px}.editor-panes .post-content{min-height:250px;max-height:600px}.editorial-top{margin-bottom:35px}.editor-save{align-items:center}.editor-save .button{padding:12px 16px}.login-panel{margin-block:55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.service-details{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:100px}.service-details article{border-top:1px solid var(--line);padding-top:35px}.service-details h2{font-size:38px}.team-stories{padding-bottom:80px}.team-stories article{display:grid;grid-template-columns:300px 1fr;gap:80px;align-items:center;border-top:1px solid var(--line);padding-block:55px}.team-stories img{width:100%;border-radius:5px}.team-stories h2{font-size:42px}.team-stories p{max-width:680px}.principles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;margin-top:55px}.principles article>span{color:var(--accent);font-size:12px;display:block;margin-bottom:22px}.principles h3{font-size:26px}@media(max-width:700px){.service-details,.team-stories article,.principles{grid-template-columns:1fr;gap:30px}.service-details{padding-bottom:60px}.team-stories img{max-width:230px}.team-stories article{padding-block:35px}.team-stories h2{font-size:34px}.principles{gap:25px}}
/* Keep the product screenshots clear of the showcase captions at every size. */
.hero-phone{max-height:385px}.phone-back{top:110px}.phone-front{top:85px}@media(min-width:1500px){.hero-phone{max-height:420px}}@media(max-width:1000px) and (min-width:701px){.hero-phone{max-height:300px}.phone-back{top:90px}.phone-front{top:70px}}@media(max-width:700px){.hero-phone{height:300px;max-height:300px}.phone-back{top:85px}.phone-front{top:65px}}
.access-page{width:min(700px,calc(100% - 40px));margin:70px auto 100px}.access-page .button{margin:10px 10px 15px 0}.access-page input{font:inherit;padding:12px;border:1px solid var(--line);border-radius:4px}button:disabled{opacity:.65;cursor:wait}

/* Product cards: quiet tints, original app identities and a consistent footer. */
.brand-logo{width:178px;height:auto}.footer-top .brand-logo{width:162px}
.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.project-card{display:flex;flex-direction:column;min-width:0;padding:28px 24px 24px;border:1px solid #dbdddf;border-radius:24px;background:#eeeef1;transition:transform .2s,border-color .2s}
.project-card:hover{transform:translateY(-4px);border-color:#d58b67}
.header-actions{display:flex;align-items:center;gap:16px;margin-left:auto}
.site-language-switcher{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid #dedee4;border-radius:10px;background:#ededf2;flex-shrink:0}
.site-language-switcher a{display:inline-grid;place-items:center;min-width:32px;min-height:30px;padding:0 4px;border-radius:7px;color:#666972;text-decoration:none;font-size:.71rem;font-weight:800;letter-spacing:.03em;line-height:1}
.site-language-switcher a:hover,.site-language-switcher a.active{background:#fff;color:var(--accent);box-shadow:0 1px 4px #23263016}
.site-language-switcher a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:1100px){.desktop-nav{gap:18px}.header-actions{gap:10px}}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;gap:7px;background:none;border:0;padding:14px}.menu-toggle span{width:24px;height:2px;background:var(--ink)}.mobile-nav:not([hidden]){display:grid;padding:16px 20px 25px;border-top:1px solid var(--line);gap:12px}.mobile-nav a{padding:10px 0;text-decoration:none}.site-language-switcher a{min-width:29px;min-height:29px}}
@media(max-width:600px){.header-inner{gap:8px}.header-actions{gap:8px}.site-language-switcher{padding:2px}.site-language-switcher a{min-width:25px;min-height:27px;font-size:.65rem}}
.project-card.sabores-del-pais{background:#f0eeea}.project-card.team-up{background:#eaf0ed}.project-card.check-in-friends{background:#eeebf2}.project-card.last-nite{background:#e9edf3}.project-card.nibble-comics{background:#f2ece6}.project-card.tickettac{background:#e9edf0}
.project-card-heading{display:block;text-decoration:none}.project-card-heading:hover h3{color:var(--accent)}
.app-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:#fff;border-radius:21px;overflow:hidden;margin-bottom:28px;box-shadow:0 8px 20px #00000004}
.app-icon img{width:100%;height:100%;object-fit:contain}.sabores-del-pais .app-icon img{padding:10px}.last-nite .app-icon{background:#202846}
.app-monogram{font-size:25px;letter-spacing:-.06em;font-weight:700;color:var(--accent)}
.project-card .eyebrow{font-size:10px;letter-spacing:.08em;margin-bottom:20px;min-height:30px}
.project-card h3{font-size:25px;font-weight:700;letter-spacing:-.04em;line-height:1.2;margin-bottom:22px}
.project-card>p{font-size:15px;line-height:1.8;margin-bottom:38px}
.card-link{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:auto;padding-top:18px;border-top:1px solid #d5d8d9;font-size:13px;font-weight:700;text-decoration:none}.card-link span{font-size:23px;color:var(--accent)}.card-link:hover{color:var(--accent)}
.product-hero{background:#e9e9e9}.feature-screen{background:#e9e9e9}.contact-band .button{color:var(--ink)}
@media(max-width:1050px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{padding:30px}.project-card .eyebrow{min-height:0}.project-card h3{font-size:28px}}
@media(max-width:600px){.project-grid{grid-template-columns:1fr;gap:18px}.project-card{padding:28px;border-radius:23px}.project-card>p{margin-bottom:30px}.brand-logo{width:150px}.footer-top .brand-logo{width:140px}}

.product-identity{display:flex;justify-content:center;padding:45px}.product-identity img{width:220px;height:220px;object-fit:contain;background:white;border-radius:48px;padding:28px}
/* The featured card uses the same soft mint as the smaller Team’Up card. */
.hero-showcase{background:#eaf0ed;border:1px solid #dbdddf;border-radius:36px}
.showcase-caption{align-items:flex-start;gap:20px}
.showcase-caption>span{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700;letter-spacing:.13em}
.showcase-caption small{font-size:9px;font-weight:500;letter-spacing:.09em;color:var(--muted)}
.showcase-caption strong{font-size:clamp(25px,2.3vw,34px);font-weight:700;line-height:1;letter-spacing:-.045em;white-space:nowrap}
@media(max-width:700px){.hero-showcase{border-radius:28px}.showcase-caption strong{font-size:27px}}
/* Highlight.js is loaded only on pages with fenced code. */
.code-block{background:#0d1117}
.code-block code.hljs{display:block;background:transparent;padding:0}
.code-language-control{display:inline-flex;align-items:center;gap:8px;padding:0 8px;font-size:12px;font-weight:600;color:var(--ink)}
.code-language-control select{max-width:150px;padding:6px 9px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);font-size:12px}

/* Each product carries one soft tint through its cards and detail page. */
.project-card{background:var(--project-tint,#eeeef1)}
.project-card .app-monogram{color:var(--project-accent,var(--accent));font-size:clamp(22px,2vw,27px)}
.project-card:hover{border-color:var(--project-accent,var(--accent))}
.development-work{padding-top:35px}
.development-work .section-heading{margin-bottom:38px}
.project-card-heading:hover h3,.project-card .card-link span{color:var(--project-accent,var(--accent))}
.project-page .product-hero,.project-page .feature-screen{background:var(--project-tint,#e9e9e9)}
.project-page .feature-number{color:var(--project-accent,var(--accent))}
.project-page .feature-screen{border:1px solid #292b2d0d;border-radius:30px}
.project-page.elecciones-espanolas .development-badge{margin:0 0 18px}
.project-page.tickettac .product-hero-screen img{background:#e4f3ec}
.project-page.tickettac .feature-screen{background:#e4f3ec;padding:24px}
.project-page .more-work-list a{border-radius:24px;padding:28px;background:#ebebeb}
.development-badge{display:inline-flex;align-items:center;align-self:flex-start;margin:0 0 18px;padding:5px 11px;border:1px solid color-mix(in srgb,var(--project-accent,var(--accent)) 32%,transparent);border-radius:999px;color:var(--project-accent,var(--accent));font-size:11px;font-weight:700;letter-spacing:.04em}
.product-hero .development-badge{margin:15px 0 0}
.product-identity-placeholder{align-items:center;justify-content:center;width:min(100%,370px);aspect-ratio:1;margin:auto;border:1px solid #ffffffa3;border-radius:35%;background:#ffffff8a;color:var(--project-accent,var(--accent));font-size:clamp(90px,12vw,160px);font-weight:700;letter-spacing:-.08em}
.nibble-comics .app-icon{background:transparent;border-radius:0;overflow:visible}
.nibble-comics .app-icon img{padding:0;border-radius:0}
.project-page.sabores-del-pais .product-hero-screen img{width:min(100%,520px);height:auto;filter:none}
.project-page.sabores-del-pais .feature-screen{min-height:500px}
.project-page.sabores-del-pais .feature-screen img{width:min(100%,300px);height:auto;max-height:300px;filter:none}
.last-nite .app-icon{background:linear-gradient(145deg,#4b5062,#202846)}
.last-nite .app-icon img{transform:scale(1.2)}
.teamup-web{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;margin-bottom:90px;padding:48px;border-radius:30px;background:var(--project-tint)}
.teamup-web h2{max-width:480px}.teamup-web p{max-width:480px}
.teamup-web-graphic{min-height:330px;display:flex;flex-direction:column;justify-content:space-between;padding:30px;border:1px solid #aecdc0;border-radius:23px;background:#f8fbf9;box-shadow:0 16px 35px #2b695114}
.teamup-web-graphic>span{font-size:11px;font-weight:700;letter-spacing:.16em;color:#407463}
.teamup-web-graphic>div{display:grid;gap:10px}.teamup-web-graphic b{display:block;padding:13px 17px;border-radius:10px;background:#e4efea;font-size:18px;font-weight:600}
.teamup-web-graphic i{font-size:12px;font-style:normal;color:#557568}
@media(max-width:700px){.project-page .feature-screen{border-radius:24px}.project-page.sabores-del-pais .feature-screen{min-height:350px}.project-page.sabores-del-pais .feature-screen img{max-height:230px}}
@media(max-width:700px){.teamup-web{grid-template-columns:1fr;gap:20px;padding:30px;margin-bottom:55px;border-radius:24px}.teamup-web-graphic{min-height:250px}}

/* Product pages: tighter type, shorter sections and clear actions. */
.project-page .product-hero{padding:34px 0 56px}
.project-page .product-back{margin-bottom:26px;font-size:10px}
.project-page .product-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:64px;min-height:420px}
.project-page .product-hero-copy{max-width:550px}
.project-page .product-category{font-size:10px;line-height:1.4;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--project-accent);margin:0 0 12px}
.project-page .product-name{font-size:15px;line-height:1.4;font-weight:700;margin:0 0 12px}
.project-page .product-hero h1{font-size:clamp(35px,3.6vw,52px);line-height:1.08;letter-spacing:-.045em;max-width:610px;margin:0 0 17px}
.project-page .product-summary{font-size:16px;line-height:1.65;max-width:480px;margin:0}
.project-page .product-hero-screen img{width:100%;height:auto;max-height:380px;object-fit:contain}
.project-page .product-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.project-page .product-actions:empty{display:none}
.project-page .button{padding:12px 18px;border-radius:10px;font-size:13px;gap:10px;background:var(--project-accent);border-color:var(--project-accent)}
.project-page .button:hover{filter:brightness(.94)}
.project-page .product-secondary{background:transparent;color:var(--project-accent);border-color:color-mix(in srgb,var(--project-accent) 43%,transparent)}
.project-page .product-secondary:hover{background:#ffffff70}
.project-page .product-story{grid-template-columns:190px minmax(0,1fr);gap:48px;max-width:1050px;padding:55px 0 60px}
.project-page .product-story .eyebrow{margin:6px 0 0}
.project-page .product-story p{font-size:17px;line-height:1.75;letter-spacing:0;max-width:760px}
.project-page .product-features{padding-top:60px}
.project-page .product-features-heading{margin-bottom:32px}
.project-page .product-features-heading .eyebrow{margin-bottom:10px}
.project-page .product-features-heading h2{font-size:clamp(27px,2.6vw,36px);margin:0}
.project-page .product-feature{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;min-height:370px;margin-bottom:24px;padding:24px;border:1px solid #e1e1e1;border-radius:30px}
.project-page .feature-screen{min-height:320px;padding:24px;border-radius:22px}
.project-page .feature-screen img{height:290px;max-width:100%;object-fit:contain}
.project-page .feature-copy{max-width:430px;padding:18px 8px}
.project-page .feature-number{font-size:11px;font-weight:700;letter-spacing:.08em;margin-bottom:20px}
.project-page .feature-copy h3{font-size:clamp(23px,2.2vw,30px);margin-bottom:13px}
.project-page .feature-copy p{font-size:16px;line-height:1.65}
.project-page .product-feature:nth-child(even) .feature-screen{order:0}
.project-page .product-end{display:flex;align-items:center;justify-content:space-between;gap:35px;text-align:left;margin-top:45px;padding:37px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.project-page .product-end .eyebrow{margin-bottom:10px}
.project-page .product-end h2{font-size:clamp(24px,2.5vw,34px);margin:0}
.project-page .product-end-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.project-page .product-end .quiet-link{margin:0 0 0 10px;font-size:12px}
.project-page .more-work{padding:45px 0 80px}
.project-page .more-work-list{gap:16px}
.project-page .more-work-list a{padding:24px;border-radius:20px}
.project-page .more-work-list h3{font-size:22px;margin:10px 0}
.project-page .more-work-list p{font-size:14px;line-height:1.6;margin:0}
.project-page.sabores-del-pais .product-hero-screen img{width:min(100%,500px);max-height:340px}
.project-page.sabores-del-pais .feature-screen{min-height:320px}
.project-page.sabores-del-pais .feature-screen img{width:auto;height:290px;max-height:290px}
.project-page .product-identity{align-items:center}
.project-page .product-identity-placeholder{width:min(100%,280px)}

/* Team’Up is one product, with two access points. */
.project-page.team-up .product-hero{background:linear-gradient(120deg,#eaf0ed,#edf3f1)}
.teamup-platforms{padding:68px 0 74px;border-bottom:1px solid var(--line)}
.platform-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:14px 50px;align-items:end;margin-bottom:27px}
.platform-heading .eyebrow{grid-column:1/-1;margin-bottom:0}
.platform-heading h2{font-size:clamp(28px,3vw,40px);max-width:650px;margin:0}
.platform-heading p{font-size:15px;line-height:1.7;max-width:455px;margin:0 0 3px}
.platform-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.platform-card{display:flex;flex-direction:column;padding:28px;border:1px solid #d9e3dd;border-radius:26px;background:#f7faf8;min-width:0}
.platform-card:nth-child(2){background:#edf3ef}
.platform-number{font-size:10px;font-weight:700;letter-spacing:.13em;color:#407463}
.platform-art{height:158px;margin:20px 0 24px;border-radius:17px;background:#e7f1ed;overflow:hidden}
.platform-browser{width:100%;max-width:390px;margin-left:auto;margin-right:auto;border:1px solid #d5e5dd;background:#fff;box-shadow:0 11px 30px #2b695114;transform:rotate(-2deg)}
.platform-browser>span{display:flex;align-items:center;gap:5px;height:25px;padding:0 13px;border-bottom:1px solid #e7eae8}
.platform-browser i{display:block;width:5px;height:5px;border-radius:50%;background:#a5cfc2}
.platform-browser>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:30px 18px}
.platform-browser b{display:grid;place-items:center;min-height:53px;background:#e4efea;border-radius:9px;font-size:11px;color:#4d7566}
.platform-phone{display:grid;place-items:center;background:radial-gradient(circle at center,#f7faf8 0 33%,#dcebe3 70%)}
.platform-phone img{width:86px;height:86px;object-fit:contain}
.platform-card h3{font-size:23px;margin:0 0 8px}
.platform-card p{font-size:14px;line-height:1.65;margin:0 0 25px;max-width:390px}
.platform-link{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:auto;padding-top:15px;border-top:1px solid #cfded5;text-decoration:none;font-size:13px;font-weight:700;color:#317765}
.platform-link span{font-size:22px;line-height:1}
.platform-link:hover{text-decoration:underline}
@media(max-width:800px){.project-page .product-hero-grid{gap:30px;min-height:0}.project-page .product-story{grid-template-columns:1fr;gap:10px}.project-page .product-feature{gap:20px}.platform-heading{grid-template-columns:1fr}.platform-heading .eyebrow{grid-column:auto}}
@media(max-width:650px){.project-page .product-hero{padding:24px 0 38px}.project-page .product-hero-grid{grid-template-columns:1fr}.project-page .product-hero h1{font-size:clamp(34px,9vw,46px)}.project-page .product-hero-screen img{max-height:300px}.project-page .product-story{padding:42px 0}.project-page .product-story p{font-size:16px}.project-page .product-features{padding-top:45px}.project-page .product-feature{grid-template-columns:1fr;padding:15px;margin-bottom:15px}.project-page .product-feature:nth-child(even) .feature-screen{order:0}.project-page .feature-screen{min-height:260px}.project-page .feature-screen img{height:245px}.project-page .feature-copy{padding:13px 7px 8px}.project-page .product-end{display:block}.project-page .product-end-actions{justify-content:flex-start;margin-top:20px}.platform-grid{grid-template-columns:1fr}.teamup-platforms{padding:48px 0}.platform-card{padding:22px}.platform-art{height:130px}}

/* Clear routes through the portfolio and a compact studio origin story. */
.portfolio-intro{padding-bottom:58px}
.portfolio-intro p{max-width:760px}
.portfolio-jump{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}
.portfolio-jump a{border:1px solid var(--line);border-radius:999px;padding:9px 16px;font-size:12px;font-weight:650;text-decoration:none;transition:background .2s,border-color .2s}
.portfolio-jump a:hover{background:#e9e9e9;border-color:var(--accent)}
.portfolio-section{border-top:1px solid var(--line);padding-block:70px 86px}
.portfolio-section .section-heading{display:block}
.portfolio-section .section-heading h2{white-space:nowrap}
.portfolio-section .section-heading>p{max-width:680px;line-height:1.65;margin-top:28px}
.portfolio-section .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.portfolio-section:first-of-type .project-card{min-height:345px}
.studio-origin{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-top:1px solid var(--line);padding-block:48px 75px}
.studio-origin .eyebrow{margin-top:10px}
.studio-origin p{max-width:650px;font-size:18px}
.showcase-bottom{gap:20px;align-items:end;line-height:1.25}
.showcase-bottom>span{flex:none}
@media(max-width:1050px){.portfolio-section .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.portfolio-intro{padding-bottom:42px}.portfolio-section{padding-block:48px 58px}.portfolio-section .section-heading>p{margin-top:22px}.studio-origin{grid-template-columns:1fr;gap:12px;padding-block:35px 60px}.studio-origin p{font-size:16px}.showcase-bottom{font-size:11px}}
@media(max-width:600px){.portfolio-section .section-heading h2{white-space:normal}.portfolio-section .project-grid{grid-template-columns:1fr}}

/* Nibble Events uses the mark and palette of events.nibbledev.com. */
.events-app .app-icon.app-monogram{position:relative;background:#5ad0cb;color:#113139;font-size:0}
.events-app .app-icon.app-monogram::before{content:"n";position:absolute;left:47%;top:48%;transform:translate(-50%,-53%);font:800 48px/1 "Space Grotesk",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.09em}
.events-app .app-icon.app-monogram::after{content:".";position:absolute;left:calc(47% + 14px);top:48%;transform:translateY(-53%);font:800 48px/1 "Space Grotesk",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.09em}
.project-page.events-app .product-hero{background:#f6faf9}
.project-page.events-app .feature-screen{background:#e4f2f1}
.events-brand-panel{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:34px;overflow:hidden;border-radius:30px;background:#173139;color:#fff;box-shadow:0 20px 35px #1731391f}
.events-brand-lockup{display:flex;align-items:center;gap:18px;font:500 clamp(25px,3vw,41px)/1 "Space Grotesk",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.04em;white-space:nowrap}
.events-brand-lockup strong{font-weight:800}
.events-brand-mark{display:grid;place-items:center;width:76px;height:76px;flex:none;border-radius:22px;background:#5ad0cb;color:#113139;font-size:39px;font-weight:800;letter-spacing:-.09em}
.events-brand-rule{display:flex;align-items:center;gap:9px}
.events-brand-rule span{height:5px;width:52px;border-radius:99px;background:#5ad0cb}
.events-brand-rule span:nth-child(2){width:26px;opacity:.5}
.events-brand-rule span:nth-child(3){width:12px;opacity:.25}
@media(max-width:650px){.events-brand-panel{min-height:260px;border-radius:24px}.events-brand-lockup{gap:12px;font-size:clamp(22px,6vw,30px)}.events-brand-mark{width:58px;height:58px;border-radius:17px;font-size:31px}}
