@font-face{font-family:Manrope;src:url(assets/manrope-regular.ttf) format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope-medium.ttf) format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope-semibold.ttf) format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope-bold.ttf) format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope-extrabold.ttf) format('truetype');font-weight:800;font-display:swap}
@font-face{font-family:'Plex Mono';src:url(assets/plex-mono.ttf) format('truetype');font-weight:400;font-display:swap}
:root{--paper:#f8f7f3;--surface:#fffefa;--ink:#242622;--muted:#62645e;--line:#ddded5;--accent:#b84d2e;--accent-light:#f1dfd3;--sage:#e7eae1;--dark:#222923;--radius:16px;--max:1240px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.7 Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img,svg{max-width:100%}img{display:block;height:auto}button svg,a svg{flex-shrink:0}::selection{background:#e4bca1;color:#20251f}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}a,button{touch-action:manipulation}p,h1,h2,h3,h4{margin:0}h1,h2,h3{font-weight:600;line-height:1.12;letter-spacing:-.055em}p+p{margin-top:18px}.wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.mono,.eyebrow,.label{font-family:'Plex Mono',monospace;font-size:11px;line-height:1.7;letter-spacing:.1em;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:13px}.eyebrow:before{content:'';width:24px;height:1px;background:currentColor}.muted{color:var(--muted)}.accent{color:var(--accent)}.section{padding-block:112px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:48px}.section-head h2{font-size:clamp(36px,4.2vw,56px);max-width:700px;margin-top:18px}.section-head p{max-width:370px;color:var(--muted);font-size:16px}.arrow{width:20px;height:20px;display:inline-block;vertical-align:middle}.skip{position:fixed;top:-70px;left:12px;background:var(--ink);color:white;padding:12px 20px;z-index:100}.skip:focus{top:8px}.site-header{position:sticky;top:0;z-index:30;background:rgba(248,247,243,.94);border-bottom:1px solid transparent;backdrop-filter:blur(20px);transition:border .25s}.site-header.scrolled{border-color:var(--line)}.nav{height:90px;display:flex;align-items:center;gap:44px}.wordmark{display:flex;align-items:center;gap:13px;margin-right:auto}.monogram{display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;width:42px;height:42px;font-size:16px;font-weight:800;letter-spacing:-2px;padding-right:2px}.wordmark-name{font-size:13px;font-weight:700;letter-spacing:-.02em}.wordmark-name span{display:block;color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;margin-top:-2px}.nav-links{display:flex;gap:29px;font-size:13px;align-items:center}.nav-links a{position:relative}.nav-links a:after{content:'';height:1px;position:absolute;bottom:-5px;left:0;right:100%;background:var(--accent);transition:right .2s}.nav-links a:hover:after,.nav-links a[aria-current=true]:after{right:0}.nav-resume{border:1px solid var(--line);border-radius:50px;padding:9px 17px;display:flex;gap:12px;align-items:center;font-size:12px}.nav-resume:hover{border-color:var(--ink)}.menu-toggle{display:none;border:1px solid var(--line);background:none;border-radius:50%;width:42px;height:42px;padding:10px}.menu-toggle span{display:block;width:19px;height:1px;background:var(--ink);margin:5px auto}.hero{padding-top:67px;padding-bottom:65px;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:10px;align-items:center}.hero .eyebrow{color:var(--accent);font-size:10px}.hero h1{font-size:clamp(57px,6.3vw,86px);line-height:1.08;margin-top:25px;letter-spacing:-.065em;position:relative;z-index:1}.hero h1 em{font-style:normal;color:var(--accent)}.hero-copy{font-size:16px;color:var(--muted);max-width:450px;margin-top:29px;line-height:1.85}.hero-copy strong{color:var(--ink);font-weight:600}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:33px}.button{border:0;background:var(--ink);color:var(--paper);padding:15px 23px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:30px;font-size:13px;font-weight:600;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:var(--accent);transform:translateY(-2px)}.button.outline{background:transparent;border:1px solid var(--line);color:var(--ink)}.button.outline:hover{border-color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:16px;font-size:13px;font-weight:600}.text-link:hover{color:var(--accent)}.hero-art{position:relative;min-width:0;display:grid;place-items:center;aspect-ratio:1;isolation:isolate}.hero-art:before{content:'';position:absolute;inset:7% 3% 3%;z-index:-1;background:radial-gradient(circle,#e6e8dd 0,transparent 68%)}.hero-art svg{width:100%;overflow:visible}.orbit{transform-origin:300px 280px;animation:orbit 85s linear infinite}.packet{stroke-dasharray:8 200;animation:packet 9s linear infinite}.floating{animation:float 7s ease-in-out infinite}.hero-art-foot{position:absolute;bottom:0;width:90%;display:flex;justify-content:space-between;color:var(--muted);font-size:9px}.availability{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.04em}.status-dot{width:7px;height:7px;background:#56805b;border-radius:50%;display:inline-block;box-shadow:0 0 0 4px #56805b13}.hero-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:45px;padding-top:25px;border-top:1px solid var(--line)}.hero-bottom .place{font-size:11px;color:var(--muted);display:flex;gap:10px;align-items:center}.hero-bottom .scroll{display:flex;align-items:center;gap:15px;font-size:10px;color:var(--muted)}.proof-strip{border-block:1px solid var(--line);background:var(--sage);padding:33px 0}.proof-grid{display:grid;grid-template-columns:1.05fr 1.05fr 1fr 1.1fr}.proof-item{padding-inline:30px;border-right:1px solid #cdd2c6;display:flex;align-items:center;gap:16px}.proof-item:first-child{padding-left:0}.proof-item:last-child{border:0}.proof-item strong{font-size:34px;line-height:1.2;font-weight:600;letter-spacing:-.06em;white-space:nowrap}.proof-item span{font-size:10px;line-height:1.65;letter-spacing:.04em;text-transform:uppercase;color:#5a6457}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 28px}.project{min-width:0}.project.featured{grid-column:1/-1}.project-heading{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;padding:35px 0 28px}.project-heading h3{font-size:38px;margin-bottom:12px}.project-heading p{font-size:15px;color:var(--muted);max-width:440px}.project-number{font-size:11px;color:var(--accent);display:block;margin-bottom:13px}.project-link-title{display:flex;align-items:center;gap:20px}.round-arrow{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--line);border-radius:50%;transition:transform .3s,background .3s}.project a:hover .round-arrow{transform:rotate(45deg);background:var(--ink);color:var(--paper);border-color:var(--ink)}.project-stage{display:block;border-radius:var(--radius);overflow:hidden;position:relative;transition:transform .35s}.project-stage:hover{transform:translateY(-4px)}.project-stage.collabrium{background:#e7e8dd;padding:54px 64px 0}.project-stage.collabrium:before{content:'COLLABRIUM / CONNECTED WORKSPACE';font-family:'Plex Mono',monospace;font-size:9px;letter-spacing:.16em;display:block;margin-bottom:22px;color:#53604c}.browser-frame{border:1px solid #c4cbbf;border-radius:10px 10px 0 0;background:white;overflow:hidden;box-shadow:0 8px 45px #2a3e3a18}.browser-bar{height:28px;background:#f7f8f5;border-bottom:1px solid #e7e8e2;display:flex;align-items:center;padding:0 11px;gap:5px}.browser-bar i{display:block;width:5px;height:5px;background:#c8cec2;border-radius:50%}.browser-bar span{margin-left:auto;margin-right:auto;color:#7b8476;font:8px 'Plex Mono',monospace;letter-spacing:.03em;padding-right:22px}.project-stage img{width:100%}.project-footer{padding-top:19px;display:flex;justify-content:space-between;gap:25px;font-size:11px;line-height:1.6;color:var(--muted)}.tags{display:flex;gap:8px;flex-wrap:wrap}.tag{display:inline-block;font-size:10px;letter-spacing:.025em;border:1px solid var(--line);border-radius:40px;padding:5px 11px;white-space:nowrap}.project-art{aspect-ratio:1.65;display:grid;place-items:center;padding:20px}.project-art svg{width:100%;height:100%}.project-art.actify{background:#eadfd5}.project-art.hotel{background:#dfe6e8}.project-small-head{padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.project-small-head h3{font-size:29px}.project-small-head .project-number{margin:0 0 9px}.project>p{color:var(--muted);font-size:14px;max-width:480px;margin-top:15px}.project .project-footer .tags{gap:6px}.engineering{background:var(--dark);color:#f3f3e9;position:relative;overflow:hidden}.engineering .eyebrow{color:#c5b7a0}.engineering .section-head p{color:#b8c0b6}.engineering .section-head h2{max-width:720px}.engine-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start;margin-top:60px}.engine-tabs{display:grid;gap:0;max-width:480px}.engine-tab{background:none;color:#c1c7bd;border:0;border-top:1px solid #ffffff20;text-align:left;padding:23px 6px;display:grid;grid-template-columns:28px 1fr 16px;gap:18px;align-items:center;transition:color .2s}.engine-tab:last-child{border-bottom:1px solid #ffffff20}.engine-tab>span:first-child{font:10px 'Plex Mono',monospace;color:#9da895}.engine-tab strong{font-size:18px;font-weight:500;display:block}.engine-tab small{font-size:12px;display:block;color:#9ca794;margin-top:7px;max-width:290px;line-height:1.65}.engine-tab[aria-selected=true]{color:#fff4e7}.engine-tab[aria-selected=true]>span:first-child{color:#e4ac84}.engine-tab[aria-selected=true] .arrow{color:#e4ac84;transform:translateX(4px)}.code-window{background:#18201b;border:1px solid #b7c3b226;border-radius:11px;overflow:hidden;min-height:400px}.code-header{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 23px;border-bottom:1px solid #ffffff13;font:10px 'Plex Mono',monospace;color:#adbaa5}.code-header span:last-child{color:#e3ae86}.code-window pre{margin:0;padding:27px 25px;font:12px/1.85 'Plex Mono',monospace;overflow-x:auto;white-space:pre;color:#d9e0d2;min-height:227px;tab-size:2}.code-window code .keyword{color:#c3a7c9}.code-window code .string{color:#d5bc8d}.code-window code .comment{color:#839c7e}.code-note{padding:17px 25px 23px;border-top:1px solid #ffffff10;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:11px;color:#aebba4}.code-note a{display:flex;align-items:center;gap:10px;white-space:nowrap;color:#e6b48f}.engine-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:48px;padding-top:29px;border-top:1px solid #ffffff20}.engine-bottom p{font-size:13px;max-width:570px;color:#b9c3b1}.engine-bottom .text-link{color:#edd0b2;white-space:nowrap}.toolkit{padding:58px 0 0}.toolkit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.toolkit-group{border-top:1px solid var(--line);padding-top:20px}.toolkit-group h3{font-size:15px;letter-spacing:-.02em;margin-bottom:12px}.toolkit-group p{color:var(--muted);font-size:12px;line-height:1.9;max-width:240px}.about{background:#efeee7}.about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:90px}.about-intro h2{font-size:clamp(37px,4.3vw,57px);margin:22px 0 30px}.about-intro>p{color:var(--muted);font-size:15px;line-height:1.9}.about-intro strong{color:var(--ink);font-weight:600}.about-mark{font-size:90px;line-height:1;letter-spacing:-.085em;font-weight:700;color:#c5c6b7;margin-top:40px}.about-mark span{color:var(--accent)}.timeline-label{margin-bottom:28px}.timeline-item{position:relative;border-top:1px solid #cfd0c5;padding:25px 0 27px}.timeline-top{display:flex;gap:15px;align-items:flex-start;justify-content:space-between}.timeline-item h3{font-size:18px;letter-spacing:-.025em;line-height:1.4}.timeline-item time{font:9px/1.8 'Plex Mono',monospace;color:var(--muted);text-align:right;white-space:nowrap}.timeline-item .company{font-size:12px;margin-top:4px;color:var(--accent)}.timeline-item>p{font-size:13px;color:var(--muted);margin-top:14px;line-height:1.85}.learning-note{margin-top:28px;padding:19px 22px;background:#e2e4d8;border-radius:6px;font-size:12px;line-height:1.8;color:#59604e}.learning-note strong{color:#303a2b;display:block;font-size:13px;margin-bottom:5px}.recognition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.recognition-card{border:1px solid var(--line);border-radius:10px;padding:29px 29px 25px;position:relative}.recognition-card .rank{font-size:56px;line-height:1;letter-spacing:-.07em;font-weight:500;margin:32px 0 19px}.recognition-card .rank sup{font-size:18px;margin-left:2px;vertical-align:super;letter-spacing:-.02em}.recognition-card h3{font-size:17px;line-height:1.45;letter-spacing:-.03em;max-width:240px}.recognition-card p{font-size:12px;color:var(--muted);margin-top:12px;line-height:1.85}.recognition-card .mini-link{font-size:11px;margin-top:27px;display:flex;align-items:center;justify-content:space-between;color:var(--accent)}.recognition-card.academic{background:var(--sage);border-color:transparent}.recognition-card .label{font-size:9px}.practice-row{margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:24px}.practice-card{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:20px 3px;gap:20px}.practice-card strong{font-size:34px;letter-spacing:-.06em;font-weight:500;white-space:nowrap}.practice-card span{font-size:12px;color:var(--muted);line-height:1.7}.practice-card .platform{font-size:13px;display:block;color:var(--ink);font-weight:600}.practice-card .arrow{color:var(--accent)}.chapters{margin-top:55px}.chapters summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 0;border-block:1px solid var(--line);font-size:14px;list-style:none}.chapters summary::-webkit-details-marker{display:none}.chapters summary:after{content:'+';font-size:25px;font-weight:400}.chapters[open] summary:after{content:'−'}.chapter-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 55px;padding:30px 0}.chapter{border-bottom:1px solid var(--line);padding-bottom:19px;display:grid;grid-template-columns:45px 1fr;gap:20px}.chapter time{font:10px/1.8 'Plex Mono',monospace;color:var(--accent)}.chapter strong{display:block;font-size:13px;font-weight:600}.chapter p{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.8}.writing{padding-top:92px}.writing-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.article-link{display:block;border-top:1px solid var(--line);padding:25px 0;transition:color .2s}.article-link .label{font-size:9px;color:var(--accent)}.article-link h3{font-size:23px;line-height:1.35;letter-spacing:-.04em;margin-top:14px;display:flex;justify-content:space-between;gap:30px}.article-link p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:13px;max-width:480px}.article-link:hover h3{color:var(--accent)}.contact{background:var(--accent);color:#fff5e9;padding:84px 0 60px}.contact .eyebrow{color:#fff3e8}.contact-grid{display:flex;align-items:flex-end;justify-content:space-between;gap:60px}.contact h2{font-size:clamp(49px,6.9vw,92px);margin:23px 0 22px;max-width:780px}.contact p{font-size:14px;color:#fff3e8;max-width:500px}.contact-actions{display:grid;gap:12px;min-width:225px;padding-bottom:7px}.contact .button{background:#fff4e7;color:#542b1e;gap:55px;padding:18px 23px}.contact .button:hover{background:#fffaf4}.contact .copy-email{border:1px solid #f4d4bc70;background:none;color:#fff2e5;border-radius:5px;padding:13px 17px;font-size:11px;display:flex;align-items:center;justify-content:space-between;gap:20px}.contact .copy-email:hover{background:#ffffff12}.contact-socials{display:flex;align-items:center;gap:29px;margin-top:60px;padding-top:24px;border-top:1px solid #ffdbc34d}.contact-socials a{display:flex;align-items:center;gap:8px;font-size:12px}.contact-socials a:hover{text-decoration:underline;text-underline-offset:5px}.contact-socials .location{margin-left:auto;font:9px 'Plex Mono',monospace;letter-spacing:.08em;color:#fff3e8}.footer{padding:22px 0;background:var(--paper)}.footer .wrap{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.footer a{display:flex;align-items:center;gap:8px}.footer a:hover{color:var(--accent)}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:var(--paper);padding:11px 22px;font-size:12px;border-radius:30px;z-index:80;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;box-shadow:0 5px 20px #0002}.toast.visible{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}.reveal{opacity:1}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.js .reveal.visible{opacity:1;transform:none}.case-hero{padding:55px 0 57px}.breadcrumb{display:flex;align-items:center;gap:12px;font:10px 'Plex Mono',monospace;color:var(--muted);margin-bottom:43px}.breadcrumb a:hover{color:var(--accent)}.case-hero .eyebrow{color:var(--accent)}.case-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin:24px 0}.case-title-row h1{font-size:clamp(56px,8vw,100px);line-height:1.05}.case-subtitle{font-size:24px;line-height:1.5;letter-spacing:-.04em;color:var(--muted);max-width:750px}.case-hero .lede{font-size:16px;color:var(--muted);max-width:720px;margin-top:22px;line-height:1.9}.case-meta{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;margin-top:40px;border-top:1px solid var(--line);padding-top:23px}.case-meta dt{font:9px 'Plex Mono',monospace;text-transform:uppercase;color:var(--muted);letter-spacing:.1em}.case-meta dd{margin:9px 0 0;font-size:13px;font-weight:500}.case-cover{background:#e7e8dd;border-radius:var(--radius);padding:45px 50px 0;overflow:hidden}.case-cover.illustration{padding:25px;max-height:590px}.case-cover.illustration svg{max-height:520px;width:100%}.case-cover.actify{background:#eadfd5}.case-cover.hotel{background:#dfe6e8}.image-caption{font-size:10px;color:var(--muted);padding:13px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}.case-content{display:grid;grid-template-columns:210px 1fr;gap:70px;padding-top:85px;padding-bottom:90px;align-items:start}.case-sidebar{position:sticky;top:130px}.case-sidebar .label{font-size:9px;color:var(--muted);margin-bottom:19px}.case-sidebar a{display:block;font-size:12px;color:var(--muted);border-left:1px solid var(--line);padding:10px 0 10px 18px}.case-sidebar a:hover{color:var(--accent);border-color:var(--accent)}.case-sidebar .stack-list{padding:22px 0 0;margin-top:25px;border-top:1px solid var(--line)}.case-sidebar .stack-list .tags{gap:7px}.case-body{min-width:0}.case-section+.case-section{margin-top:70px}.case-section h2{font-size:33px;margin-bottom:23px}.case-section>p,.case-section>ul{font-size:15px;color:var(--muted);line-height:1.95}.case-section ul{padding-left:20px}.case-section li+li{margin-top:11px}.case-section strong{font-weight:600;color:var(--ink)}.case-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.case-stat{background:var(--sage);padding:23px 20px;border-radius:7px}.case-stat strong{display:block;font-size:31px;font-weight:500;letter-spacing:-.06em;line-height:1.2}.case-stat span{display:block;font-size:10px;line-height:1.7;color:var(--muted);margin-top:9px}.decision{border-top:1px solid var(--line);padding:25px 0;display:grid;grid-template-columns:35px 1fr;gap:17px}.decision>.mono{color:var(--accent);font-size:10px}.decision h3{font-size:18px;line-height:1.4;letter-spacing:-.03em;margin-bottom:12px}.decision p{font-size:13px;color:var(--muted);line-height:1.9}.source-link{display:inline-flex;align-items:center;gap:10px;font-size:10px;color:var(--accent);margin-top:15px;text-decoration:underline;text-underline-offset:5px}.architecture-diagram{padding:30px;background:#eeeee7;border-radius:9px;margin:30px 0;overflow:hidden}.architecture-diagram svg{width:100%;height:auto;display:block}.case-callout{background:var(--accent-light);border-left:2px solid var(--accent);padding:23px 25px;margin-top:25px;font-size:13px;line-height:1.85;color:#785140}.case-callout strong{color:#663b29;display:block;margin-bottom:6px}.gallery{display:grid;gap:24px;margin-top:28px}.gallery-item{margin:0}.image-zoom{padding:0;border:1px solid var(--line);border-radius:8px;background:white;width:100%;display:block;overflow:hidden;position:relative}.image-zoom img{width:100%;transition:transform .5s}.image-zoom:hover img{transform:scale(1.015)}.image-zoom:after{content:'↗';display:grid;place-items:center;position:absolute;right:12px;bottom:12px;width:33px;height:33px;border-radius:50%;background:var(--ink);color:white;font-size:18px}.gallery figcaption{font-size:11px;color:var(--muted);margin-top:9px}.case-code{border-radius:8px;background:#222923;margin:25px 0;overflow:hidden}.case-code pre{padding:25px;margin:0;color:#d5ddcc;font:11px/1.9 'Plex Mono',monospace;overflow-x:auto}.case-code .label{display:block;padding:14px 23px;border-bottom:1px solid #ffffff20;color:#a7b39e;font-size:9px}.source-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:26px}.source-grid a{border:1px solid var(--line);border-radius:6px;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:11px;overflow-wrap:anywhere;transition:border .2s}.source-grid a:hover{border-color:var(--accent);color:var(--accent)}.next-project{border-top:1px solid var(--line);padding:45px 0 65px}.next-project a{display:flex;align-items:center;justify-content:space-between;gap:40px}.next-project .label{color:var(--muted);font-size:9px}.next-project h2{font-size:clamp(34px,5vw,60px);margin-top:15px}.next-project .round-arrow{width:64px;height:64px}.lightbox{border:0;padding:15px;background:transparent;width:min(97vw,1850px);max-width:none;max-height:96vh;overflow:auto;position:fixed;color:white}.lightbox::backdrop{background:#141912eF;backdrop-filter:blur(8px)}.lightbox .close-lightbox{position:sticky;top:0;display:flex;align-items:center;justify-content:center;margin:0 0 15px auto;border:1px solid #ffffff50;color:white;background:#263023;border-radius:50%;height:42px;width:42px;font-size:24px;z-index:1}.lightbox img{width:100%;height:auto;border-radius:7px}.lightbox p{font-size:12px;margin-top:15px;text-align:center;color:#d6ddce}.lightbox-open{overflow:hidden}.not-found{min-height:65vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:60px 0}.not-found h1{font-size:75px;margin:20px 0}.not-found p{margin-bottom:25px;color:var(--muted)}
@keyframes orbit{to{transform:rotate(360deg)}}@keyframes packet{to{stroke-dashoffset:-416}}@keyframes float{50%{transform:translateY(-9px)}}
@media(min-width:1600px){.hero{padding-block:90px}.hero-art{max-height:600px}.hero h1{font-size:90px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{padding-top:45px}.hero-grid{gap:0}.hero h1{font-size:clamp(52px,6.6vw,74px)}.hero-copy{font-size:14px;max-width:400px}.hero-art-foot{font-size:8px}.proof-item{gap:12px;padding-inline:20px}.proof-item strong{font-size:30px}.proof-item span{font-size:9px}.engine-layout{gap:35px}.about-grid{gap:50px}.code-window pre{font-size:10px}.section{padding-block:90px}.case-content{grid-template-columns:170px 1fr;gap:40px}.contact h2{font-size:65px}}
@media(max-width:800px){.nav{gap:25px;height:78px}.nav-links{gap:20px;font-size:12px}.nav-resume{font-size:11px;padding:8px 12px;gap:7px}.wordmark-name{font-size:12px}.wordmark-name span{font-size:8px}.hero h1{font-size:55px}.hero-grid{grid-template-columns:1fr .85fr}.hero-art{margin-left:-35px;width:calc(100% + 35px)}.hero-actions{gap:18px}.hero-copy{font-size:14px}.button{gap:20px;padding:14px 18px}.hero .eyebrow{font-size:8px;gap:8px}.hero-art-foot{display:none}.hero-bottom{margin-top:35px}.proof-grid{grid-template-columns:1fr 1fr;gap:30px}.proof-item{padding-inline:20px}.proof-item:nth-child(2){border:0}.proof-item:nth-child(3){padding-left:0}.proof-item strong{font-size:32px}.section-head{gap:25px}.section-head p{font-size:13px;max-width:260px}.project-heading{gap:30px}.project-heading h3{font-size:33px}.project-heading p{font-size:13px}.project-stage.collabrium{padding:30px 30px 0}.project-footer{flex-direction:column;gap:13px}.project-small-head h3{font-size:24px}.project>p{font-size:13px}.project-art{padding:12px}.engine-layout{grid-template-columns:1fr;gap:35px;margin-top:35px}.engine-tabs{max-width:none;grid-template-columns:repeat(3,1fr)}.engine-tab{grid-template-columns:1fr;padding:19px 12px;gap:9px;border-bottom:1px solid #ffffff20}.engine-tab strong{font-size:15px}.engine-tab small{font-size:11px}.engine-tab>.arrow{display:none}.code-window pre{font-size:12px}.code-window{min-height:370px}.toolkit-grid{grid-template-columns:1fr 1fr;gap:30px}.about-grid{grid-template-columns:1fr;gap:50px}.about-intro{max-width:600px}.about-mark{display:none}.recognition-card{padding:22px 20px}.recognition-card h3{font-size:15px}.recognition-card .rank{font-size:48px}.recognition-card p{font-size:11px}.chapter-grid{gap:24px}.contact-grid{display:block}.contact h2{max-width:650px}.contact-actions{display:flex;align-items:stretch;margin-top:35px;gap:15px;min-width:0}.contact .button{gap:35px}.contact .copy-email{padding-inline:20px}.case-content{display:block;padding-top:55px}.case-sidebar{position:static;display:flex;flex-wrap:wrap;gap:0 18px;padding-bottom:30px;margin-bottom:40px;border-bottom:1px solid var(--line)}.case-sidebar>.label{width:100%;margin-bottom:10px}.case-sidebar>a{padding:6px 0;border:0}.case-sidebar .stack-list{display:none}.case-title-row h1{font-size:70px}.case-title-row{align-items:center}.case-subtitle{font-size:21px}.case-cover{padding:25px 25px 0}.case-hero .lede{font-size:14px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.site-header{backdrop-filter:blur(12px)}.nav{height:74px;gap:12px}.wordmark{gap:10px}.monogram{width:36px;height:36px;font-size:14px}.wordmark-name{font-size:12px}.menu-toggle{display:block;flex-shrink:0}.nav-resume{font-size:10px;padding:8px 11px;gap:8px}.nav-resume .arrow{width:14px;height:14px}.nav-links{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:20px 25px 27px;flex-direction:column;align-items:flex-start;gap:22px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #23251f0a;font-size:16px}.nav-links.open{display:flex}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.hero{padding-top:35px;padding-bottom:28px}.hero-grid{grid-template-columns:1fr;gap:0}.hero .eyebrow{font-size:9px}.hero h1{font-size:clamp(40px,12vw,68px);margin-top:22px;line-height:1.08;letter-spacing:-.06em}.hero-copy{font-size:14px;max-width:390px;margin-top:25px}.hero-actions{margin-top:26px;gap:23px}.hero-actions .button{font-size:12px;padding:15px 19px;gap:25px}.hero-actions .text-link{font-size:12px}.hero-art{margin:5px auto -5px;width:min(100%,430px);aspect-ratio:1.15}.hero-art svg{height:100%;width:100%}.hero-bottom{margin-top:8px;padding-top:19px;gap:20px}.hero-bottom .place{font-size:9px;gap:6px}.hero-bottom .scroll{display:none}.availability{font-size:8px;gap:7px}.proof-strip{padding:27px 0}.proof-grid{gap:23px 15px}.proof-item{gap:13px;padding-inline:15px}.proof-item strong{font-size:29px}.proof-item span{font-size:8px;letter-spacing:.02em}.section{padding-block:66px}.section-head{display:block;margin-bottom:30px}.section-head h2{font-size:36px;margin-top:17px}.section-head p{font-size:13px;max-width:430px;margin-top:21px}.eyebrow{font-size:10px}.work-grid{grid-template-columns:1fr;gap:35px}.project.featured{grid-column:auto}.project-heading{grid-template-columns:1fr;gap:15px;padding:10px 0 23px}.project-heading h3{font-size:32px;margin-bottom:3px}.project-heading p{font-size:13px;max-width:430px}.project-number{font-size:10px;margin-bottom:9px}.project-stage.collabrium{padding:22px 15px 0;border-radius:11px}.project-stage.collabrium:before{font-size:7px;letter-spacing:.08em;margin-bottom:15px}.browser-frame{border-radius:5px 5px 0 0}.browser-bar{height:20px;padding:0 8px;gap:3px}.browser-bar i{width:4px;height:4px}.browser-bar span{font-size:6px}.project-footer{padding-top:16px;font-size:10px;gap:12px}.tag{font-size:9px;padding:4px 9px}.project-art{aspect-ratio:1.7;padding:20px;border-radius:11px}.project-small-head{padding-top:20px}.project-small-head h3{font-size:28px}.project>p{font-size:13px;margin-top:13px}.round-arrow{width:37px;height:37px}.engine-layout{gap:27px}.engine-tab{padding:16px 5px;gap:10px}.engine-tab strong{font-size:12px;line-height:1.6;letter-spacing:-.02em}.engine-tab small{display:none}.engine-tab>span:first-child{font-size:9px}.code-header{padding:15px 16px;font-size:8px;gap:8px}.code-window{min-height:0}.code-window pre{font-size:9px;line-height:1.95;padding:23px 16px;min-height:220px}.code-note{padding:16px;display:block;font-size:10px;line-height:1.8}.code-note a{margin-top:12px;font-size:10px}.engine-bottom{display:block;margin-top:30px;padding-top:22px}.engine-bottom p{font-size:12px}.engine-bottom .text-link{margin-top:20px;font-size:12px}.toolkit{padding-top:38px}.toolkit-grid{gap:26px 20px}.toolkit-group h3{font-size:13px}.toolkit-group p{font-size:11px;line-height:1.85}.about-grid{gap:40px}.about-intro h2{font-size:37px;margin-bottom:23px}.about-intro>p{font-size:14px}.timeline-top{gap:15px}.timeline-item h3{font-size:16px}.timeline-item time{font-size:8px}.timeline-item>p{font-size:12px}.recognition-grid{grid-template-columns:1fr}.recognition-card{padding:25px;display:grid;grid-template-columns:85px 1fr;gap:12px 20px;align-items:center}.recognition-card .label{grid-column:1/-1}.recognition-card .rank{grid-column:1;grid-row:2/4;font-size:52px;margin:15px 0}.recognition-card h3{font-size:17px;max-width:none;margin-top:5px}.recognition-card p{font-size:12px;margin:0}.recognition-card .mini-link{grid-column:1/-1;margin-top:13px;padding-top:13px;border-top:1px solid #d7dcd0}.practice-row{gap:17px}.practice-card{display:block;padding:10px 0 18px}.practice-card strong{font-size:33px;display:block;margin-bottom:5px}.practice-card .platform{font-size:12px}.practice-card span{font-size:10px}.practice-card>.arrow{display:none}.chapters{margin-top:30px}.chapters summary{font-size:12px}.chapter-grid{grid-template-columns:1fr;gap:19px;padding:22px 0}.chapter{grid-template-columns:40px 1fr;gap:18px}.writing{padding-top:66px}.writing-grid{grid-template-columns:1fr;gap:0}.article-link{padding-block:23px}.article-link h3{font-size:21px}.article-link p{font-size:12px}.contact{padding:58px 0 33px}.contact h2{font-size:49px;letter-spacing:-.06em;line-height:1.12;margin-top:22px}.contact p{font-size:13px}.contact-actions{display:grid;margin-top:28px}.contact .button{justify-content:space-between;font-size:13px;padding:16px 20px}.contact .copy-email{font-size:10px;padding:13px 16px;justify-content:space-between}.contact-socials{gap:23px;margin-top:35px;padding-top:23px;flex-wrap:wrap}.contact-socials a{font-size:11px}.contact-socials .location{width:100%;margin:0;padding-top:5px;font-size:8px}.footer .wrap{font-size:8px;gap:12px}.footer{padding:18px 0}.footer .arrow{width:12px;height:12px}.case-hero{padding-top:28px;padding-bottom:35px}.breadcrumb{font-size:9px;margin-bottom:28px}.case-title-row{display:block;margin:18px 0}.case-title-row h1{font-size:clamp(43px,11vw,66px);overflow-wrap:anywhere}.case-title-row .button{margin-top:23px;font-size:11px;padding:12px 17px}.case-subtitle{font-size:20px;line-height:1.5}.case-hero .lede{font-size:13px;margin-top:18px}.case-meta{grid-template-columns:1fr 1fr;gap:22px 20px;margin-top:28px;padding-top:20px}.case-meta>div:last-child{grid-column:1/-1}.case-meta dd{font-size:12px;margin-top:7px}.case-meta dt{font-size:8px}.case-cover{padding:18px 12px 0;border-radius:9px}.case-cover.illustration{padding:13px}.image-caption{font-size:8px;gap:15px;line-height:1.7}.case-content{padding-block:35px 55px}.case-sidebar{gap:0 15px;padding-bottom:20px;margin-bottom:35px}.case-sidebar>a{font-size:10px}.case-sidebar>.label{font-size:8px}.case-section h2{font-size:29px;margin-bottom:20px}.case-section>p,.case-section>ul{font-size:13px;line-height:1.95}.case-section+.case-section{margin-top:45px}.case-stat-grid{gap:9px;margin-top:23px}.case-stat{padding:19px 13px}.case-stat strong{font-size:26px}.case-stat span{font-size:9px}.decision{grid-template-columns:25px 1fr;gap:10px;padding-block:22px}.decision h3{font-size:17px}.decision p{font-size:12px}.architecture-diagram{padding:15px 8px;margin-block:22px}.source-link{font-size:9px}.case-callout{font-size:12px;padding:19px 20px}.source-grid{grid-template-columns:1fr}.source-grid a{font-size:10px;padding:16px}.case-code pre{font-size:9px;padding:19px}.next-project{padding-block:35px 45px}.next-project h2{font-size:37px}.next-project .round-arrow{width:48px;height:48px;flex-shrink:0}.toast{font-size:10px;max-width:90vw;text-align:center}.not-found h1{font-size:60px}.not-found p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.project-stage:hover,.button:hover{transform:none}}
@media print{.site-header,.hero-art,.hero-bottom,.hero-actions,.contact-actions,.code-window,.case-sidebar,.next-project,.lightbox,.toast{display:none}.wrap{width:100%}.section{padding:25px 0}body{font-size:11px;background:white;color:black}.hero h1{font-size:40px}.hero{padding:25px 0}.project-stage{break-inside:avoid}.contact{background:white;color:black;padding:25px 0}.contact h2{font-size:35px}.contact p,.contact .eyebrow{color:#333}.contact-socials{margin-top:20px}.engineering{background:#f2f2ef;color:black}.proof-strip{padding:20px 0}.reveal{opacity:1!important;transform:none!important}}


/* Expanded source explorer and the Collabrium project archive. */
.engine-controls{margin:0 0 30px;padding-top:8px}
.story-filters{display:flex;flex-wrap:wrap;gap:8px}
.story-filter{display:flex;align-items:center;gap:13px;padding:8px 14px;border:1px solid #75866c6b;border-radius:30px;background:transparent;color:#cbd5c1;font-size:11px;line-height:1.7;transition:background .2s,color .2s}
.story-filter span{font:9px 'Plex Mono',monospace;opacity:.7}
.story-filter[aria-pressed=true]{background:#e5b08b;border-color:#e5b08b;color:#253121}
.story-filter:hover{border-color:#e5b08b}
.story-count{color:#bdc9b3;font-size:9px;margin-top:15px}
.engineering-explorer{margin-top:0;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:45px}
.engineering-explorer>div{min-width:0}
.engineering-explorer .engine-tabs{display:block;width:100%;min-width:0;max-width:100%;max-height:670px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#7c8d6d #202a20;padding-right:13px}
.engineering-explorer .engine-tab{width:100%;padding:18px 5px;gap:14px;grid-template-columns:28px minmax(0,1fr) 16px}
.engineering-explorer .engine-tab>span{min-width:0;overflow-wrap:anywhere}
.engineering-explorer .engine-tab strong{font-size:15px;line-height:1.55}
.engineering-explorer .engine-tab small{font-size:11px;line-height:1.8;margin-top:5px}
.engineering-explorer .engine-tab[aria-selected=true]{background:#ffffff05}
.engine-navigation-hint{font-size:10px;color:#b5c0aa;line-height:1.8;margin-top:14px}
.engine-panels{position:sticky;top:115px;min-width:0;max-width:100%}
.engineering-panel{min-height:645px;min-width:0;max-width:100%}
.engineering-panel .code-header{flex-wrap:wrap}
.engineering-panel .code-header>span{min-width:0;overflow-wrap:anywhere}
.engineering-panel pre{min-width:0;max-width:100%}
.engineering-panel .code-note{flex-wrap:wrap}
.engineering-panel .code-note a{white-space:normal}
.code-context{padding:24px 25px 5px}
.code-context .label{font-size:8px;color:#d9b997}
.code-context h3{font-size:25px;line-height:1.3;letter-spacing:-.04em;margin:9px 0 17px}
.code-context p{font-size:14px;line-height:1.9;color:#c0cbb6}
.code-purpose{padding:14px 17px;background:#a5b88f0c;border-left:1px solid #c4a17c;color:#bac8ae;font-size:12px;line-height:1.9;margin-top:20px}
.code-purpose strong{display:block;color:#e1c1a2;font-size:10px;font-weight:500;margin-bottom:5px}
.engineering-panel pre{min-height:170px;font-size:12px;line-height:1.95;padding-top:23px}
.code-window code .keyword,.case-code code .keyword{color:#d3afda}
.code-window code .string,.case-code code .string{color:#e0bd8e}
.code-window code .comment,.case-code code .comment{color:#a1b991}
.code-window code .number,.case-code code .number{color:#a9d2d2}
.engineering-panel .code-note{font-size:9px;gap:15px}
.engineering-panel .code-note a{font-size:10px}
.tap-entry .tags{margin-top:17px}
.tap-entry .tag{font-size:9px;background:#efebe1;border-color:#ddd9cc}
.decision-group{margin-top:36px}
.decision-group>h3{font-size:20px;line-height:1.4;letter-spacing:-.035em;margin:0 0 20px}
.decision-detail{border-top:1px solid var(--line)}
.decision-detail:last-child{border-bottom:1px solid var(--line)}
.decision-detail summary{display:grid;grid-template-columns:28px 1fr 20px;align-items:center;gap:16px;padding:21px 0;cursor:pointer;list-style:none}
.decision-detail summary::-webkit-details-marker{display:none}
.decision-index{color:var(--accent);font-size:10px}
.decision-detail summary strong{font-size:15px;line-height:1.5;letter-spacing:-.02em;display:block;font-weight:500}
.decision-detail summary small{display:block;font-size:10px;color:var(--muted);margin-top:6px;line-height:1.6}
.decision-toggle{font-size:23px;color:var(--accent);text-align:center;transition:transform .2s}
.decision-detail[open] .decision-toggle{transform:rotate(45deg)}
.decision-body{padding:0 22px 27px 44px}
.decision-body p{font-size:13px;line-height:1.95;color:var(--muted)}
.decision-body .decision-effect{background:var(--sage);border-radius:6px;padding:15px 18px;margin-top:18px;font-size:12px}
.decision-effect strong{display:block;font-size:11px;margin-bottom:5px}
.showcase-subhead{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin:45px 0 23px}
.showcase-subhead .label{color:var(--accent);font-size:9px}
.showcase-subhead h3{font-size:26px;line-height:1.4;letter-spacing:-.04em;margin-top:10px}
.showcase-subhead .text-link{font-size:11px}
.demo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:26px}
.demo-card{min-width:0}
.video-frame{position:relative;background:#283126;border-radius:10px;overflow:hidden;border:1px solid var(--line);isolation:isolate}
.video-frame video{display:block;width:100%;height:auto;aspect-ratio:16/9;max-width:100%;background:#222923}
.video-duration{position:absolute;right:10px;top:10px;padding:3px 7px;border-radius:4px;background:#20281fe8;color:#f7f3e7;font-size:8px;pointer-events:none;transition:opacity .2s}
.is-playing .video-duration{opacity:0}
.demo-card-body{padding-top:17px}
.demo-card-body .label{font-size:8px;color:var(--accent)}
.demo-card h3{font-size:19px;line-height:1.4;letter-spacing:-.035em;margin-top:8px}
.demo-card p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:10px}
.media-footnote{font-size:10px!important;line-height:1.8!important;color:var(--muted)!important;margin-top:16px!important}
.screen-choices{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.screen-choice{padding:8px 13px;border-radius:30px;background:transparent;border:1px solid var(--line);font-size:10px;line-height:1.7}
.screen-choice[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.screen-choice:hover{border-color:var(--ink)}
.screen-panel{margin:0}
.screen-panel figcaption{display:flex;gap:22px;align-items:flex-start;padding:17px 2px 0;line-height:1.8}
.screen-panel figcaption strong{font-size:13px;white-space:nowrap;font-weight:600}
.screen-panel figcaption span{font-size:12px;color:var(--muted)}
.screen-explorer .image-zoom{border-radius:10px}
.resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:25px}
.resource-card{display:grid;grid-template-columns:105px 1fr;gap:24px;padding:25px;background:#efeee6;border:1px solid #e0e1d7;border-radius:10px;min-width:0}
.resource-preview{display:flex;align-items:center;justify-content:center;min-width:0;background:#e5e4d9;border-radius:6px;padding:8px;overflow:hidden}
.resource-preview img{width:100%;height:auto;max-height:150px;object-fit:contain;box-shadow:0 3px 9px #28322514}
.resource-card .label{font-size:8px;color:var(--accent)}
.resource-card h3{font-size:19px;line-height:1.35;letter-spacing:-.035em;margin-top:9px}
.resource-card p{font-size:11px;line-height:1.85;color:var(--muted);margin-top:11px}
.resource-action{display:flex;align-items:center;gap:10px;font-size:10px;margin-top:18px;font-weight:600}
.resource-action>span{margin-left:auto;color:var(--muted);font-size:9px;white-space:nowrap;font-weight:400}
.resource-action .arrow{width:15px;height:15px}
.resource-action:hover{color:var(--accent)}
.build-notes{margin-top:50px;padding-top:30px;border-top:1px solid var(--line)}
.build-notes>.label{color:var(--muted);font-size:9px}
.build-notes .writing-grid{gap:35px}
.build-notes .article-link{border-top:0}
.build-notes .article-link h3{font-size:20px}
.case-body .demo-grid{grid-template-columns:1fr;gap:32px}
.case-body .demo-card h3{font-size:21px}
.case-body .demo-card p{font-size:13px;max-width:650px}
.case-body .resource-grid{grid-template-columns:1fr}
.case-body .resource-preview{max-height:165px}
.case-body .resource-card{grid-template-columns:115px 1fr}
.promo-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:27px}
.promo-card{margin:0;min-width:0}
.promo-card .image-zoom{background:#eceee7}
.promo-card .image-zoom img{width:100%;height:auto;object-fit:contain}
.promo-card figcaption{padding:13px 2px 0}
.promo-card figcaption strong{font-size:12px;display:block;font-weight:600}
.promo-card figcaption span{font-size:11px;display:block;color:var(--muted);line-height:1.8;margin-top:5px}
@media(max-width:1100px){.engineering-explorer{gap:30px;grid-template-columns:minmax(265px,.78fr) minmax(0,1.22fr)}.code-context{padding:22px 22px 5px}.demo-grid{gap:18px}.demo-card h3{font-size:17px}.resource-card{grid-template-columns:85px 1fr;gap:18px;padding:22px}.resource-card h3{font-size:17px}}
@media(max-width:800px){.engineering-explorer{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.engine-panels{position:static}.engineering-explorer .engine-tabs{display:flex;max-height:none;overflow-y:hidden;overflow-x:auto;padding-right:0;padding-bottom:8px;scroll-snap-type:x proximity;gap:0}.engineering-explorer .engine-tab{flex:0 0 220px;min-width:220px;display:grid;grid-template-columns:1fr;border-block:1px solid #ffffff20;padding:14px 16px;gap:6px;scroll-snap-align:start}.engineering-explorer .engine-tab strong{font-size:14px}.engineering-explorer .engine-tab small{display:block;font-size:10px}.engineering-explorer .engine-tab>.arrow{display:none}.engineering-panel{min-height:580px}.engineering-panel pre{font-size:11px}.engine-navigation-hint{margin-top:7px}.engine-controls{margin-bottom:22px}.story-filter{font-size:10px;gap:9px;padding:7px 12px}.demo-grid{grid-template-columns:1fr;gap:29px}.demo-card{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center}.demo-card-body{padding:0}.demo-card h3{font-size:20px}.demo-card p{font-size:12px}.case-body .demo-card{display:block}.case-body .demo-card-body{padding-top:17px}.resource-grid{grid-template-columns:1fr}.resource-card{grid-template-columns:90px 1fr}.resource-preview{max-height:155px}.showcase-subhead h3{font-size:25px}.screen-panel figcaption{gap:18px}.screen-panel figcaption span{font-size:11px}}
@media(max-width:600px){.engine-controls{padding-top:0}.story-filters{gap:7px}.story-filter{padding:6px 10px;font-size:9px;gap:8px}.story-filter span{font-size:8px}.story-count{font-size:8px;margin-top:13px}.engineering-explorer{gap:23px}.engineering-explorer .engine-tab{flex-basis:188px;min-width:188px;padding:13px 13px;gap:7px}.engineering-explorer .engine-tab strong{font-size:12px}.engineering-explorer .engine-tab small{font-size:10px;line-height:1.7}.engine-navigation-hint{font-size:9px}.engineering-panel{min-height:0}.code-context{padding:21px 17px 2px}.code-context h3{font-size:23px}.code-context p{font-size:12px}.code-context .label{font-size:8px}.code-purpose{font-size:11px;padding:12px 14px;margin-top:17px}.engineering-panel pre{font-size:10px;line-height:1.9;min-height:150px;padding:20px 17px}.engineering-panel .code-note{padding:15px 17px;font-size:9px}.engineering-panel .code-note a{font-size:10px}.tap-entry .tag{font-size:8px}.decision-group{margin-top:30px}.decision-group>h3{font-size:19px;margin-bottom:15px}.decision-detail summary{grid-template-columns:22px 1fr 18px;gap:10px;padding:19px 0}.decision-detail summary strong{font-size:14px;line-height:1.6}.decision-detail summary small{font-size:9px;line-height:1.8}.decision-index{font-size:9px}.decision-body{padding:0 0 22px 32px}.decision-body p{font-size:12px;line-height:1.95}.decision-body .decision-effect{font-size:11px;padding:12px 14px}.showcase-subhead{margin-top:37px;display:block}.showcase-subhead h3{font-size:25px;margin-top:8px}.showcase-subhead>.text-link{margin-top:16px;font-size:11px}.showcase-subhead .label{font-size:8px}.demo-grid{gap:29px}.demo-card{display:block}.demo-card-body{padding-top:15px}.demo-card h3{font-size:21px}.demo-card p{font-size:12px;margin-top:9px}.demo-card-body .label{font-size:8px}.media-footnote{font-size:9px!important;line-height:1.9!important}.screen-choices{gap:6px;margin-bottom:14px}.screen-choice{font-size:9px;padding:6px 10px}.screen-panel figcaption{display:block;padding-top:12px}.screen-panel figcaption strong{font-size:12px}.screen-panel figcaption span{display:block;margin-top:5px;font-size:11px;line-height:1.9}.resource-card{padding:19px;grid-template-columns:70px 1fr;gap:17px}.resource-card h3{font-size:17px;margin-top:8px}.resource-card .label{font-size:8px}.resource-card p{font-size:10px;line-height:1.9}.resource-action{font-size:10px;gap:8px;flex-wrap:wrap;margin-top:15px}.resource-action>span{font-size:8px}.resource-action .arrow{width:13px;height:13px}.resource-preview{padding:6px;max-height:135px}.build-notes{margin-top:35px;padding-top:23px}.build-notes>.label{font-size:8px}.build-notes .writing-grid{gap:0}.build-notes .article-link h3{font-size:20px}.case-body .resource-card{grid-template-columns:70px 1fr}.case-body .resource-preview{max-height:140px}.promo-gallery{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:90%;overflow-x:auto;scroll-snap-type:x mandatory;gap:15px;padding-bottom:12px}.promo-card{scroll-snap-align:start}.promo-card figcaption strong{font-size:12px}.promo-card figcaption span{font-size:10px}}

/* Portfolio archive and portrait */
.hero-portrait{margin:0;position:relative;max-width:430px;justify-self:end;width:100%;padding:14px;background:#ebe8df;border-radius:180px 180px 8px 8px;transform:rotate(2deg)}
.hero-portrait img{display:block;width:100%;height:460px;object-fit:cover;object-position:center 22%;border-radius:170px 170px 4px 4px}
.hero-portrait figcaption{display:flex;justify-content:space-between;gap:12px;padding:14px 4px 3px;font-size:12px}.hero-portrait figcaption .mono{font-size:10px}
.archive-group{border-top:1px solid var(--line,#d9d9d0);padding:18px 0}.archive-group summary{display:flex;justify-content:space-between;gap:16px;cursor:pointer;list-style:none}.archive-group summary:before{content:'+';font-size:20px}.archive-group[open] summary:before{content:'−'}.archive-group summary strong{flex:1}.archive-group summary span{font-size:12px;color:#62645e}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}.archive-grid figure{margin:0;min-width:0}.archive-grid img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#e8e8e0}.archive-grid figcaption{font-size:12px;line-height:1.5;margin-top:8px;overflow-wrap:anywhere}.archive-all-link{margin-top:24px}.linkedin-series{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.series-link{display:flex;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid #d6d7cf;text-decoration:none;color:inherit}.series-link>span:nth-child(2){flex:1}.series-link .mono{color:#b84d2e}.series-link:hover{color:#b84d2e}
@media(max-width:760px){.hero-portrait{justify-self:center;max-width:340px;margin-top:25px}.hero-portrait img{height:390px}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.linkedin-series{grid-template-columns:1fr}}
@media(max-width:440px){.archive-grid{grid-template-columns:1fr}}

.presentation-download{padding-top:160px;padding-bottom:140px;max-width:900px}.presentation-download .eyebrow{margin-top:60px}.presentation-download h1{font-size:clamp(38px,6vw,76px);line-height:1.1;margin:20px 0}.presentation-download p{max-width:620px;line-height:1.7;margin:25px 0}.presentation-download button:disabled{opacity:.65;cursor:progress}

.project-stage.collabrium-overview{background:#edf0e4;padding:28px 30px;aspect-ratio:2/1;overflow:hidden}.project-stage.collabrium-overview>svg{display:block;width:100%;height:100%;object-fit:contain}.screen-choices{row-gap:10px}.screen-panel .image-zoom{width:100%;background:#fff}.screen-panel .image-zoom>img{width:100%;height:auto;max-height:760px;object-fit:contain}@media(max-width:600px){.project-stage.collabrium-overview{padding:12px 4px;aspect-ratio:1.8/1}.screen-choices{gap:7px}.screen-choice{font-size:10px;line-height:1.5;padding:8px 11px}}
