:root{--ink:#1a1a2e;--sky:#0e2f55;--coral:#00b8d4;--white:#fff;--muted:#4b5563;--rule:#1a1a2e;--grid-gap:24px;--ease:cubic-bezier(.77, 0, .175, 1);--paper:#f5f4f0}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}html,body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;font-weight:400;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}img,svg{max-width:100%;height:auto;display:block}button{cursor:pointer;font-family:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--sky);outline-offset:3px}.skip{background:var(--ink);color:var(--paper);text-transform:uppercase;letter-spacing:.08em;z-index:100;padding:12px 18px;font-size:13px;font-weight:700;position:absolute;top:-100px;left:12px}.skip:focus{top:12px}.wrap{max-width:1440px;margin:0 auto;padding:0 48px}.grid-12{gap:var(--grid-gap);grid-template-columns:repeat(12,1fr);display:grid}.serif-accent{color:var(--sky);font-family:DM Serif Display,Georgia,serif;font-style:italic;font-weight:400}header.masthead{border-bottom:2px solid var(--rule);background:var(--paper);z-index:50;padding:18px 0 16px;position:sticky;top:0}.masthead .grid-12{align-items:center}.mast-logo{letter-spacing:-.01em;text-transform:uppercase;color:var(--ink);grid-column:1/span 4;align-items:center;gap:12px;min-height:44px;font-size:17px;font-weight:900;display:flex}.mast-logo img{width:36px;height:36px}.mast-logo .amp{color:var(--coral);font-weight:400}.mast-meta{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);grid-column:5/span 4;font-size:11px}.mast-nav{text-transform:uppercase;letter-spacing:.1em;grid-column:9/span 4;justify-content:flex-end;gap:28px;font-size:12px;font-weight:500;display:flex}.mast-nav a{border-bottom:1px solid #0000;align-items:center;min-height:44px;padding:10px 0;display:inline-flex}.mast-nav a:hover,.mast-nav a.current{border-bottom-color:var(--ink)}.mast-nav .cta{color:var(--sky);font-weight:700}.hamburger{border:2px solid var(--ink);background:0 0;grid-column:12;justify-self:end;width:44px;height:44px;padding:0;display:none;position:relative}.hamburger span{background:var(--ink);height:2px;transition:transform .25s,opacity .2s;display:block;position:absolute;left:8px;right:8px}.hamburger span:first-child{top:12px}.hamburger span:nth-child(2){top:19px}.hamburger span:nth-child(3){top:26px}.hamburger[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger[aria-expanded=true] span:nth-child(2){opacity:0}.hamburger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mnav{background:var(--paper);z-index:40;flex-direction:column;gap:4px;padding:90px 24px 24px;display:none;position:fixed;inset:0}.mnav[data-open=true]{display:flex}.mnav a{border-bottom:1px solid var(--rule);text-transform:uppercase;letter-spacing:.02em;min-height:44px;padding:18px 0;font-size:22px;font-weight:700;display:block}.mnav .cta{background:var(--sky);color:var(--white);text-align:center;border:none;margin-top:24px;padding:22px}section.hero{border-bottom:2px solid var(--rule);padding:56px 0 72px}.hero .eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);flex-wrap:wrap;grid-column:1/span 12;justify-content:space-between;gap:12px;margin-bottom:48px;font-size:11px;display:flex}.hero h1{letter-spacing:-.035em;color:var(--ink);grid-column:1/span 10;margin-bottom:48px;font-size:clamp(48px,8vw,120px);font-weight:900;line-height:.9}.hero h1 .ac{color:var(--sky);font-family:DM Serif Display,Georgia,serif;font-style:italic;font-weight:400}.hero .lead{grid-column:1/span 5;max-width:440px;font-size:17px;line-height:1.55}.hero .num-block{border-top:2px solid var(--ink);grid-column:7/span 3;padding-top:12px}.hero .num-block .n{letter-spacing:-.03em;font-size:clamp(44px,5vw,64px);font-weight:900;line-height:.9}.hero .num-block .l{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:8px;font-size:11px}.hero .cta-block{border-top:2px solid var(--ink);flex-direction:column;grid-column:10/span 3;padding-top:12px;display:flex}.hero .cta-block a.primary{background:var(--sky);color:var(--white);text-transform:uppercase;letter-spacing:.08em;text-align:center;min-height:44px;margin-top:12px;padding:20px;font-size:13px;font-weight:700;display:inline-block}.hero .cta-block a.primary:after{content:" →"}.hero .cta-block .sm{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px}.ticker{border-bottom:2px solid var(--rule);text-transform:uppercase;letter-spacing:.12em;padding:16px 0;font-size:12px;font-weight:500;overflow:hidden}.ticker .wrap{flex-wrap:wrap;gap:36px;display:flex}.ticker span{color:var(--muted)}.ticker span:before{content:"◆  ";color:var(--coral)}.sec-head{gap:var(--grid-gap);grid-column:1/span 12;grid-template-columns:repeat(12,1fr);margin-bottom:48px;display:grid}.sec-head .label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);grid-column:1/span 2;padding-top:6px;font-size:11px}.sec-head h2{letter-spacing:-.03em;color:var(--ink);grid-column:3/span 9;font-size:clamp(30px,5vw,64px);font-weight:900;line-height:.95}.sec-head h2 .ac{color:var(--sky);font-family:DM Serif Display,Georgia,serif;font-style:italic;font-weight:400}section.index,section.svc-list{border-bottom:2px solid var(--rule);padding:72px 0 40px}.svc-row{gap:var(--grid-gap);border-top:1px solid var(--rule);grid-column:1/span 12;grid-template-columns:80px 1fr 2fr 1fr 60px;align-items:start;padding:24px 0;transition:background .2s,color .2s;display:grid}.svc-row:last-of-type{border-bottom:1px solid var(--rule)}.svc-row .idx{font-size:13px;font-weight:700}.svc-row h3{letter-spacing:-.01em;font-size:22px;font-weight:700}.svc-row p{color:var(--muted);max-width:460px;font-size:14px}.svc-row .tags{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px;font-style:italic}.svc-row .arrow{text-align:right;font-size:24px;font-weight:300}.svc-row:hover{background:var(--ink);color:var(--paper)}.svc-row:hover p,.svc-row:hover .tags{color:#fffc}section.work-preview{border-bottom:2px solid var(--rule);padding:72px 0}.work-preview .featured{grid-column:1/span 8}.work-preview .featured .img{aspect-ratio:16/10;border:2px solid var(--ink);background:#1e3a5f url(/assets/img/frs.webp) 50%/cover;margin-bottom:16px}.work-preview .featured .cap{grid-template-columns:1fr auto;align-items:end;gap:16px;display:grid}.work-preview .featured h3{letter-spacing:-.02em;font-size:clamp(28px,3.5vw,40px);font-weight:900;line-height:1}.work-preview .featured .meta{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:11px}.work-preview .featured .blurb{color:var(--muted);max-width:560px;margin-top:14px;font-size:14px}.work-preview .side{flex-direction:column;grid-column:9/span 4;gap:32px;display:flex}.work-preview .side .item{border-top:2px solid var(--ink);padding-top:14px}.work-preview .side .item .no{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:8px;font-size:11px}.work-preview .side .item h4{letter-spacing:-.01em;margin-bottom:10px;font-size:20px;font-weight:700}.work-preview .side .item p{color:var(--muted);font-size:13px;line-height:1.55}.work-preview .side .item .t{aspect-ratio:16/10;border:1px solid var(--ink);background:#000 50%/cover;margin-bottom:10px}.work-preview .side .item.a .t{background-image:url(/assets/img/cybertruck.webp)}.work-preview .side .item.b .t{background-image:url(/assets/img/all-of-my-things-card.webp)}.view-full{text-align:center;grid-column:1/-1;margin-top:48px}.view-full a{border:2px solid var(--ink);text-transform:uppercase;letter-spacing:.08em;min-height:44px;padding:18px 32px;font-size:13px;font-weight:700;display:inline-block}.view-full a:hover{background:var(--ink);color:var(--paper)}section.stats{background:var(--sky);color:var(--white);border-bottom:2px solid var(--rule);padding:72px 0}.stats .lbl{text-transform:uppercase;letter-spacing:.12em;color:#fff9;grid-column:1/span 12;margin-bottom:32px;font-size:11px}.stats .item{border-top:2px solid var(--white);grid-column:span 3;padding-top:16px}.stats .item .n{letter-spacing:-.04em;font-size:clamp(48px,7vw,96px);font-weight:900;line-height:.9}.stats .item .l{text-transform:uppercase;letter-spacing:.08em;color:#fffc;max-width:220px;margin-top:8px;font-size:12px}.stats .item.accent .n{color:var(--coral)}section.process{border-bottom:2px solid var(--rule);padding:72px 0}.process .step{border-top:2px solid var(--ink);grid-column:span 3;padding-top:14px}.process .step .n{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:48px;font-size:11px;font-weight:700}.process .step h3{letter-spacing:-.01em;margin-bottom:10px;font-size:22px;font-weight:700}.process .step p{color:var(--muted);font-size:13px;line-height:1.55}section.cta{border-bottom:2px solid var(--rule);background:var(--paper);padding:96px 0 112px}.cta .label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);grid-column:1/span 12;margin-bottom:32px;font-size:11px}.cta h2{letter-spacing:-.04em;grid-column:1/span 12;margin-bottom:48px;font-size:clamp(48px,9vw,140px);font-weight:900;line-height:.88}.cta h2 .ac{color:var(--sky);font-family:DM Serif Display,Georgia,serif;font-style:italic;font-weight:400}.cta .meta{grid-column:1/span 5;max-width:420px;font-size:15px;line-height:1.55}.cta .btn-area{flex-direction:column;grid-column:8/span 5;gap:12px;display:flex}.cta .btn-area a{text-transform:uppercase;letter-spacing:.08em;border:2px solid var(--ink);text-align:center;min-height:44px;padding:22px 24px;font-size:14px;font-weight:700;display:block}.cta .btn-area a.p{background:var(--ink);color:var(--paper)}.cta .btn-area a.p:after{content:" →"}.cta .btn-area a.s:hover{background:var(--ink);color:var(--paper)}.page-hero{border-bottom:2px solid var(--rule);padding:56px 0}.page-hero .crumbs{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);grid-column:1/span 12;margin-bottom:40px;font-size:11px}.page-hero .crumbs a:hover{color:var(--ink)}.page-hero h1{letter-spacing:-.035em;color:var(--ink);grid-column:1/span 10;margin-bottom:40px;font-size:clamp(44px,8vw,110px);font-weight:900;line-height:.9}.page-hero h1 .ac{color:var(--sky);font-family:DM Serif Display,Georgia,serif;font-style:italic;font-weight:400}.page-hero .sub{color:var(--muted);grid-column:1/span 6;max-width:560px;font-size:17px;line-height:1.55}.page-hero .sub-right{grid-column:8/span 5;padding-top:4px}.work-filters{flex-wrap:wrap;gap:8px;display:flex}.work-filters button{border:1px solid var(--ink);text-transform:uppercase;letter-spacing:.08em;color:var(--ink);background:0 0;min-height:40px;padding:10px 14px;font-size:11px}.work-filters button.on{background:var(--ink);color:var(--paper)}.projects{border-bottom:2px solid var(--rule);padding:0 0 40px}.proj{gap:var(--grid-gap);border-top:1px solid var(--rule);grid-column:1/span 12;grid-template-columns:80px 5fr 4fr 2fr 60px;align-items:center;padding:36px 0;transition:background .25s,color .25s;display:grid}.proj:last-of-type{border-bottom:1px solid var(--rule)}.proj .idx{align-self:start;padding-top:6px;font-size:13px;font-weight:700}.proj .title h3{letter-spacing:-.02em;margin-bottom:8px;font-size:clamp(24px,3vw,38px);font-weight:900;line-height:.95}.proj .title .client{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:12px}.proj .desc{color:var(--muted);max-width:440px;font-size:14px;line-height:1.55}.proj .thumb{aspect-ratio:16/10;border:1px solid var(--ink);background:#1e3a5f 50%/cover}.proj.p1 .thumb{background-image:url(/assets/img/frs.webp)}.proj.p2 .thumb{background-image:url(/assets/img/cybertruck.webp)}.proj.p3 .thumb{background-image:url(/assets/img/all-of-my-things-card.webp)}.proj.p4 .thumb{background-image:url(/assets/img/podcast.jpg)}.proj.p5 .thumb{background-image:url(/assets/img/tort-museum.jpg)}.proj.p6 .thumb{background-image:url(/assets/img/photo2.jpg)}.proj .arrow{text-align:right;align-self:center;font-size:28px;font-weight:300}.proj:hover{background:var(--ink);color:var(--paper)}.proj:hover .desc,.proj:hover .title .client{color:#fffc}section.manifesto{border-bottom:2px solid var(--rule);padding:72px 0}.manifesto .label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);grid-column:1/span 2;padding-top:6px;font-size:11px}.manifesto .body{letter-spacing:-.015em;grid-column:3/span 9;max-width:900px;font-size:clamp(22px,2.5vw,32px);font-weight:400;line-height:1.35}.manifesto .body p+p{margin-top:1em}.manifesto .body em{color:var(--sky);font-family:DM Serif Display,Georgia,serif;font-style:italic}section.timeline{border-bottom:2px solid var(--rule);padding:72px 0}.tl-item{gap:var(--grid-gap);border-top:1px solid var(--rule);grid-column:1/span 12;grid-template-columns:120px 1fr 2fr;align-items:start;padding:28px 0;display:grid}.tl-item:last-of-type{border-bottom:1px solid var(--rule)}.tl-item .year{letter-spacing:-.01em;font-size:22px;font-weight:900}.tl-item h3{letter-spacing:-.01em;margin-bottom:4px;font-size:18px;font-weight:700}.tl-item p{color:var(--muted);max-width:540px;font-size:14px;line-height:1.55}section.articles{border-bottom:2px solid var(--rule);padding:0 0 40px}.article{gap:var(--grid-gap);border-top:1px solid var(--rule);grid-column:1/span 12;grid-template-columns:120px 1fr 2fr 60px;align-items:start;padding:36px 0;transition:background .2s,color .2s;display:grid}.article:last-of-type{border-bottom:1px solid var(--rule)}.article .date{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:11px}.article h3{letter-spacing:-.02em;margin-bottom:8px;font-size:clamp(22px,2.5vw,32px);font-weight:900;line-height:1}.article .cat{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:11px;font-style:italic}.article p{color:var(--muted);max-width:520px;font-size:14px;line-height:1.55}.article .arrow{text-align:right;font-size:24px;font-weight:300}.article:hover{background:var(--ink);color:var(--paper)}.article:hover .date,.article:hover .cat,.article:hover p{color:#fffc}section.contact-grid{border-bottom:2px solid var(--rule);padding:72px 0}.contact-form{grid-column:1/span 7;gap:20px;display:grid}.contact-form .field{gap:6px;display:grid}.contact-form label{text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:700}.contact-form input,.contact-form textarea,.contact-form select{border:2px solid var(--ink);background:var(--white);color:var(--ink);min-height:48px;padding:14px 16px;font-family:inherit;font-size:16px}.contact-form textarea{resize:vertical;min-height:160px}.contact-form button{background:var(--ink);color:var(--paper);border:2px solid var(--ink);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;min-height:48px;margin-top:12px;padding:20px;font-size:13px;font-weight:700;transition:opacity .15s}.contact-form .optional{text-transform:none;letter-spacing:0;color:var(--muted);font-size:10px;font-weight:400}.contact-info{flex-direction:column;grid-column:9/span 4;gap:28px;display:flex}.contact-info .block{border-top:2px solid var(--ink);padding-top:14px}.contact-info h4{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:8px;font-size:11px}.contact-info p{font-size:16px;line-height:1.5}.contact-info a{text-decoration:underline}footer{padding:48px 0 32px;font-size:12px}footer .grid-12{row-gap:40px}footer .brand{text-transform:uppercase;letter-spacing:-.01em;flex-direction:column;grid-column:1/span 4;gap:12px;font-size:15px;font-weight:900;display:flex}footer .brand .row{align-items:center;gap:10px;display:flex}footer .brand .row img{width:28px;height:28px}footer .brand .amp{color:var(--coral);font-weight:400}footer .brand p{text-transform:none;color:var(--muted);letter-spacing:0;max-width:280px;font-size:12px;font-weight:400;line-height:1.55}footer .col{grid-column:span 2}footer .col h5{text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px;font-size:11px}footer .col a{color:var(--muted);min-height:32px;padding:5px 0;font-size:12px;display:block}footer .col a:hover{color:var(--ink)}footer .bot{border-top:1px solid var(--rule);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);flex-wrap:wrap;grid-column:1/span 12;justify-content:space-between;gap:12px;padding-top:20px;font-size:11px;display:flex}@media (width<=1100px){.wrap{padding:0 32px}.mast-meta{display:none}.mast-nav{grid-column:5/span 8}}@media (width<=820px){.wrap{padding:0 20px}:root{--grid-gap:16px}.mast-logo{grid-column:1/span 8;font-size:15px}.mast-logo img{width:30px;height:30px}.mast-nav{display:none}.hamburger{grid-column:12;display:block}.hero{padding:40px 0 48px}.hero .eyebrow{margin-bottom:32px;font-size:10px}.hero h1{grid-column:1/-1;margin-bottom:32px}.hero .lead{grid-column:1/-1;margin-bottom:32px;font-size:16px}.hero .num-block,.hero .cta-block{grid-column:1/-1;margin-top:8px}.sec-head{margin-bottom:32px}.sec-head .label{grid-column:1/-1;margin-bottom:8px}.sec-head h2{grid-column:1/-1}section.index,section.svc-list,section.work-preview,section.process,section.manifesto,section.timeline,section.contact-grid,section.stats{padding:48px 0}section.cta{padding:64px 0 80px}.svc-row{grid-template-columns:40px 1fr;padding:20px 0}.svc-row h3{grid-column:2;font-size:20px}.svc-row p,.svc-row .tags,.svc-row .arrow{grid-column:2}.svc-row .arrow{text-align:left}.work-preview .featured,.work-preview .side{grid-column:1/-1}.work-preview .featured{margin-bottom:40px}.work-preview .featured .cap{grid-template-columns:1fr;gap:8px}.stats .item{grid-column:span 6}.process .step{grid-column:span 6;margin-bottom:16px}.process .step .n{margin-bottom:28px}.cta .meta,.cta .btn-area{grid-column:1/-1}.cta .btn-area{margin-top:16px}.page-hero{padding:40px 0}.page-hero h1{grid-column:1/-1;margin-bottom:28px}.page-hero .sub,.page-hero .sub-right{grid-column:1/-1}.page-hero .sub-right{margin-top:24px}.proj{grid-template-columns:40px 1fr;grid-template-areas:"idx title"".thumb"".desc"".arrow";gap:12px;padding:28px 0}.proj .idx{grid-area:idx;padding-top:2px}.proj .title{grid-area:title}.proj .thumb{grid-area:thumb;margin-top:12px}.proj .desc{grid-area:desc}.proj .arrow{text-align:left;grid-area:arrow}.manifesto .label{grid-column:1/-1;margin-bottom:16px}.manifesto .body{grid-column:1/-1;font-size:20px}.tl-item{grid-template-columns:80px 1fr}.tl-item p{grid-column:1/-1;margin-top:8px}.article{grid-template-columns:40px 1fr;grid-template-areas:"date date"".title"".desc"".arrow";gap:10px;padding:28px 0}.article .date{grid-area:date}.article .title-wrap{grid-area:title}.article p{grid-area:desc}.article .arrow{text-align:left;grid-area:arrow}.contact-form,.contact-info{grid-column:1/-1}.contact-info{margin-top:32px}footer .brand,footer .col{grid-column:1/-1}footer .bot{flex-direction:column}}@view-transition{navigation:auto}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}@keyframes ss-out-left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes ss-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes ss-out-right{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes ss-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}html:active-view-transition-type(forward)::view-transition-old(root){animation:ss-out-left .55s var(--ease) both}html:active-view-transition-type(forward)::view-transition-new(root){animation:ss-in-right .55s var(--ease) both}html:active-view-transition-type(backward)::view-transition-old(root){animation:ss-out-right .55s var(--ease) both}html:active-view-transition-type(backward)::view-transition-new(root){animation:ss-in-left .55s var(--ease) both}@media (prefers-reduced-motion:reduce){::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}}.page-hero .sub-right-note{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);border-top:2px solid var(--ink);padding-top:12px;font-size:13px}.founder{border-bottom:2px solid var(--rule);padding:72px 0}.founder .label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);grid-column:1/span 2;padding-top:6px;font-size:11px}.founder .photo{grid-column:3/span 4}.founder .photo img{aspect-ratio:4/5;object-fit:cover;border:2px solid var(--ink);width:100%}.founder .photo .cap{border-top:2px solid var(--ink);margin-top:0;padding:12px 0 0}.founder .photo .cap .nm{font-family:DM Serif Display,Georgia,serif;font-size:20px}.founder .photo .cap .ti{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-top:4px;font-size:11px}.founder .body{grid-column:8/span 5;font-size:16px;line-height:1.7}.founder .body h2{letter-spacing:-.025em;margin-bottom:24px;font-size:clamp(32px,4vw,52px);font-weight:900;line-height:.95}.founder .body h2 .ac{color:var(--sky);font-family:DM Serif Display,Georgia,serif;font-style:italic;font-weight:400}.founder .body p{color:var(--muted);margin-bottom:16px}.founder .body p strong{color:var(--ink)}.founder .body .sig{color:var(--ink);margin-top:24px;margin-bottom:24px;font-family:DM Serif Display,Georgia,serif;font-size:18px}@media (width<=820px){.founder .label,.founder .photo,.founder .body{grid-column:1/-1}.founder .photo{margin-bottom:32px}.founder .label{margin-bottom:16px}}
