@import "https://fonts.googleapis.com/css2?family=League+Gothic&family=Rajdhani:wght@400;500;600&display=swap";:root{color:#111;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--display:"League Gothic", Impact, "Arial Narrow", sans-serif;--interface:"Rajdhani", "Arial Narrow", sans-serif;--columns:12;--gutter:20px;--margin:40px;--type-display-xl:64px;--type-display-lg:54px;--type-interface-lg:29px;--type-interface-md:20px;--type-reading:16px;--type-label:14px;--type-caption:12px;background:#fff;font-family:SF Mono,SFMono-Regular,Menlo,Consolas,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline-offset:6px;outline:2px solid #111}p,h1,h2,h3,dl,dd{margin:0}h1,h2,h3{font-weight:400}button,input{font:inherit}::selection{color:#fff;background:#111}section[id]{scroll-margin-top:24px}@media (width>=1600px){:root{--margin:48px}}@media (width<=1199px){:root{--columns:6;--gutter:16px;--margin:24px;--type-display-xl:52px;--type-display-lg:46px;--type-interface-lg:24px;--type-interface-md:18px;--type-reading:15px;--type-label:13px;--type-caption:11px}}@media (width<=767px){:root{--columns:4;--gutter:12px;--margin:20px;--type-display-xl:46px;--type-display-lg:42px;--type-interface-lg:26px;--type-interface-md:16px;--type-reading:14px;--type-label:12px;--type-caption:11px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}img,video{max-width:100%;display:block}.shell{width:min(calc(100% - var(--margin) * 2), 1600px);margin-inline:auto}.page{min-height:100svh}.pointer-glow-page{--page-glow:radial-gradient(ellipse var(--glow-width,290px) var(--glow-height,290px) at var(--glow-x,50%) var(--glow-y,50%), hsl(var(--glow-hue,220) 95% 60% / var(--glow-opacity,0)), transparent 82%), radial-gradient(245px circle at var(--glow-middle-x,50%) var(--glow-middle-y,50%), hsl(calc(var(--glow-hue,220) + 12) 92% 61% / var(--glow-middle-opacity,0)), transparent 82%), radial-gradient(190px circle at var(--glow-tail-x,50%) var(--glow-tail-y,50%), hsl(calc(var(--glow-hue,220) + 24) 90% 64% / var(--glow-tail-opacity,0)), transparent 85%);background-image:var(--page-glow);background-attachment:fixed}.home-page .selected-work{background-image:var(--page-glow);background-attachment:fixed}.site-header{min-height:70px;font:500 var(--type-interface-md)/1.2 var(--interface);border-bottom:1px solid #555;justify-content:space-between;align-items:center;display:flex}.primary-nav{align-items:center;gap:48px;display:flex}.site-header a{padding-block:16px}.site-header a:hover,.intro-contact a:hover,.footer-links a:hover{text-underline-offset:5px;text-decoration:underline}.home-intro{grid-template-columns:repeat(var(--columns), minmax(0, 1fr));column-gap:var(--gutter);grid-template-rows:auto 1fr auto;min-height:384px;padding-top:48px;padding-bottom:28px;display:grid;position:relative}.intro-title{grid-column:1/6}.intro-title h1{font:400 var(--type-display-xl)/1 var(--display);margin-bottom:12px}.intro-title>p{font:500 var(--type-interface-md)/1.3 var(--interface)}.intro-contact{text-align:right;font:500 var(--type-interface-md)/1.4 var(--interface);flex-direction:column;grid-column:10/13;align-items:flex-end;display:flex}.intro-contact a{width:fit-content}.intro-name{font:500 24px/1.4 var(--interface);grid-area:2/1/auto/5;align-self:center;padding-block:32px}.intro-statement{text-align:right;grid-area:2/9/auto/13;align-self:end;padding-bottom:40px;font-size:16px;line-height:1.25}.intro-role{border-bottom:1px solid #555;grid-area:3/1/auto/4;padding-bottom:16px;font-size:15px;font-weight:600;line-height:1.4}.intro-role br{display:none}.scroll-cue{grid-area:3/9/auto/13;place-self:center end;font-size:15px}.scroll-cue span{margin-left:8px}.section-heading{align-items:center;gap:16px;margin-block:24px 28px;display:flex}.section-heading h2{font-size:var(--type-reading);line-height:1.4}.square{background:#111;flex-shrink:0;width:9px;height:9px;display:inline-block}.selected-work{background:#fff;position:sticky}.work-layout{grid-template-columns:repeat(var(--columns), minmax(0, 1fr));gap:var(--gutter);align-items:start;display:grid}.active-preview{grid-column:span 6;min-width:0}.active-preview-cover{display:block;position:relative;overflow:hidden}.active-preview-cover.is-locked .media-placeholder img{filter:blur(24px);transform:scale(1.12)}.active-preview-cover.is-locked:after{content:"";background:#00000047;position:absolute;inset:0}.preview-lock-label{z-index:1;color:#fff;text-shadow:0 1px 8px #0000008c;font:600 var(--type-interface-md)/1.2 var(--interface);letter-spacing:.12em;place-items:center;display:grid;position:absolute;inset:0}.media-placeholder{background:#d9d9d9;width:100%;overflow:hidden}.media-placeholder img{object-fit:cover;width:100%;height:100%}.media-placeholder.case-image{aspect-ratio:auto;background:#fff;border:1px solid #b8b8b8;height:auto}.media-placeholder.case-image img{object-fit:contain;height:auto}.case-section-01 .case-media-card{width:min(100%,820px);margin-inline:auto}.project-page-bloom .case-section-01 .case-media-card{width:100%;margin-inline:0}.media-placeholder.case-visual-placeholder{aspect-ratio:1.65;background:#dedede;border:1px solid #b8b8b8;place-items:center;height:auto;min-height:300px;padding:24px;display:grid}.media-placeholder.case-visual-placeholder>span{color:#5a5a5a;text-align:center;font-size:var(--type-caption);line-height:1.4;display:block}.media-placeholder>span{display:none}.media-preview{aspect-ratio:5/3}.preview-meta{justify-content:space-between;gap:16px;margin-top:12px;font-size:11px;line-height:1.5;display:flex}.project-list{grid-column:span 6;align-self:center;min-width:0;margin:0;padding:0;list-style:none}.project-row{width:100%;min-height:94px;color:inherit;text-align:left;font:400 var(--type-interface-lg)/1.15 var(--interface);background:0 0;border:0;border-bottom:1px solid #555;grid-template-columns:48px minmax(0,1fr) 40px;align-items:center;gap:16px;padding:10px 8px;transition:background .18s;display:grid}.project-row:hover,.project-row:focus-visible{background:#e1e1e129}.project-row.is-active,.project-row.is-active:hover,.project-row.is-active:focus-visible{background:#e1e1e14d}.project-row.is-locked{cursor:default}.project-title{overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:8px 16px;display:flex}.project-status{font:600 var(--type-caption)/1.2 var(--interface);letter-spacing:.08em}.project-arrow{font:300 45px/1 var(--interface);justify-self:end;transition:transform .18s}.project-row:not(.is-locked):hover .project-arrow{transform:translate(3px,-3px)}.snapshots{z-index:1;margin-top:32px;scroll-margin-top:0;position:relative}.snapshot-sticky{background:#fff;flex-direction:column;justify-content:flex-start;padding-top:32px;display:flex;position:sticky;top:0}.snapshot-sticky .section-heading{margin-top:0}.snapshot-viewport{overscroll-behavior-inline:contain;scrollbar-color:#111 transparent;scrollbar-width:thin;overflow-x:auto}.snapshot-viewport:focus-visible{outline-offset:-1px;outline:1px solid #111}.snapshot-viewport::-webkit-scrollbar{height:4px}.snapshot-viewport::-webkit-scrollbar-thumb{background:#111}.snapshot-rail{--snapshot-content:min(calc(100vw - var(--margin) * 2), 1600px);--snapshot-edge:max(var(--margin), calc((100vw - 1600px) / 2));--snapshot-unit:calc((var(--snapshot-content) - 11 * var(--gutter)) / 12);--snapshot-height:min(54svh, 480px);grid-auto-flow:column;grid-template-rows:var(--snapshot-height);column-gap:var(--gutter);width:max-content;min-width:100%;padding:8px var(--snapshot-edge) 24px;row-gap:16px;display:grid}.snapshot-card{grid-template-rows:minmax(0,1fr) auto;row-gap:16px;min-width:0;min-height:0;display:grid}.snapshot-card p{font-size:var(--type-caption);overflow-wrap:anywhere;line-height:1.5}.snapshot-card .media-placeholder{border:1px solid #b8b8b8;grid-row:1;height:100%;min-height:0}.snapshot-card p{grid-row:2}.snapshot-card.caption-top{grid-template-rows:auto minmax(0,1fr)}.snapshot-card.caption-top .media-placeholder{grid-row:2}.snapshot-card.caption-top p{grid-row:1;align-self:start}.snapshot-card.caption-side{grid-template-rows:minmax(0,1fr);grid-template-columns:20px minmax(0,1fr);column-gap:8px}.snapshot-card.caption-side .media-placeholder{grid-area:1/2}.snapshot-card.caption-side p{writing-mode:vertical-rl;grid-area:1/1;place-self:stretch start;max-height:100%;transform:rotate(180deg)}.snapshot-wide,.snapshot-medium{width:calc(5 * var(--snapshot-unit) + 4 * var(--gutter))}.snapshot-portrait,.snapshot-tall,.snapshot-square{width:calc(3 * var(--snapshot-unit) + 2 * var(--gutter))}.snapshot-ai-trip-assistant-01 img{object-position:right center;transform-origin:50%;transform:scale(1.45)}.snapshot-ai-trip-assistant-02 img{object-position:left top;transform-origin:0 0;transform:scale(1.45)}.snapshot-rontopmake-website-01 img{object-position:center top}.site-footer{font:500 16px/1.4 var(--interface);border-top:1px solid #555;justify-content:space-between;gap:24px;margin-top:80px;padding-block:16px 32px;display:flex}.footer-links{gap:24px;display:flex}.home-page .site-footer{margin-top:40px}.case-hero{grid-template-columns:repeat(var(--columns), minmax(0, 1fr));gap:24px var(--gutter);margin-bottom:48px;padding-top:8px;display:grid}.case-title{grid-area:1/1/auto/7;padding-top:40px;padding-right:24px}.case-index{display:none}.case-title h1{font:400 var(--type-display-xl)/1.08 var(--display);margin-bottom:16px}.case-title>p{max-width:52ch;font-size:var(--type-reading);line-height:1.5}.case-website-link{width:fit-content;font:600 var(--type-interface-md)/1.2 var(--interface);border-bottom:1px solid;align-items:center;gap:10px;margin-top:24px;padding-bottom:5px;display:inline-flex}.case-website-link:hover{color:#e50019}.case-meta{font-size:var(--type-reading);grid-column:1/7;grid-template-columns:repeat(3,minmax(0,1fr));align-self:end;padding-bottom:8px;line-height:1.5;display:grid}.case-meta>div{border-left:1px solid #888;padding-inline:24px}.case-meta>div:first-child{border:0;padding-left:0}.case-meta dt{margin-bottom:8px;font-weight:600}.case-meta dd{overflow-wrap:anywhere}.media-hero{aspect-ratio:1.98;grid-area:1/7/3/13}.media-hero img{transform:scale(1.16)}.project-page-rontopmake-website .media-hero{aspect-ratio:auto;height:100%;min-height:0}.project-page-rontopmake-website .media-hero img{object-fit:cover;object-position:left center;transform:none}.project-page-rontopmake-website .case-section-03 .case-image{max-height:760px;overflow:hidden}.project-page-rontopmake-website .case-section-03 .case-image img{width:100%}.project-page-rontopmake-website .case-image-dialog[open]{text-align:center;display:block}.project-page-rontopmake-website .case-image-dialog img{max-width:min(100%,900px);max-height:none}.project-page-bloom .media-hero{aspect-ratio:1.55;background:#f8f7fc}.project-page-bloom .media-hero img{object-fit:cover;transform:none}.project-page-ai-trip-assistant .media-hero{aspect-ratio:1198/678}.project-page-ai-trip-assistant .media-hero img{object-fit:cover;transform:none}.case-section{grid-template-columns:repeat(var(--columns), minmax(0, 1fr));column-gap:var(--gutter);border-top:1px solid #d4d4d4;align-items:start;margin-bottom:48px;padding-top:24px;display:grid}.case-section-kicker{font-size:var(--type-caption);letter-spacing:.08em;border-bottom:1px solid #b8b8b8;grid-column:1/-1;align-items:center;gap:14px;margin-bottom:20px;padding-bottom:10px;display:flex}.case-section-kicker i{background:#e2e2e2;width:100%;height:1px;display:block}.chapter-card{border:1px solid #888;grid-column:span 2;min-height:280px;padding:16px 12px}.chapter-card strong{font:400 var(--type-display-lg)/1 var(--display)}.chapter-card h2{font:400 var(--type-interface-lg)/1.15 var(--display);margin-top:24px}.case-content{min-width:0;font-size:var(--type-reading);grid-column:span 8;line-height:1.55}.case-content h3{font-size:var(--type-interface-md);margin-bottom:20px;font-weight:500;line-height:1.35}.case-content>p{max-width:84ch;margin-bottom:16px}.case-inline-media{gap:var(--gutter);grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:start;margin:40px auto;display:grid}.case-content blockquote{color:#666;border-left:1px solid #aaa;margin:32px 0 24px;padding:16px 24px;font-style:italic}.section-marker{font-size:var(--type-caption);border-bottom:1px solid #888;grid-column:span 2;justify-self:end;align-items:center;gap:10px;padding-bottom:12px;line-height:1.5;display:flex}.section-marker .square{width:6px;height:6px}.case-media-grid{gap:var(--gutter);margin-top:24px;display:grid}.case-section-02 .case-media-grid,.case-section-03 .case-media-grid{grid-template-columns:1fr;row-gap:40px}.case-section-02 .media-placeholder.case-image,.case-section-03 .media-placeholder.case-image{aspect-ratio:auto}.media-case{aspect-ratio:1.65}.case-media-card{min-width:0;margin:0}.case-media-intro{max-width:84ch;margin-bottom:16px}.case-image-trigger{width:100%;text-align:inherit;cursor:zoom-in;background:0 0;border:0;padding:0;display:block}.case-image-trigger:focus-visible{outline-offset:3px;outline:2px solid #111}.case-expandable-visual{max-height:min(68vh,620px);position:relative;overflow:hidden}.project-page-ai-trip-assistant .case-expandable-visual:not(.is-expanded){max-height:min(58vh,420px)}.case-expandable-visual:not(.is-expanded):after{content:"";pointer-events:none;background:linear-gradient(#0000,#fff);height:90px;position:absolute;inset:auto 0 0}.case-expandable-visual.is-expanded{max-height:none}.case-expand-toggle{color:#111;text-align:left;cursor:pointer;width:100%;font-size:var(--type-caption);background:#fff;border:0;border-bottom:1px solid #888;justify-content:space-between;align-items:center;gap:20px;padding:14px 0;font-weight:600;line-height:1.4;display:flex}.case-expand-toggle:hover{color:#555}.case-expand-toggle:focus-visible{outline-offset:3px;outline:2px solid #111}.case-image-dialog{background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:16px;position:fixed;inset:0;overflow:auto}.case-image-dialog[open]{place-items:center;display:grid}.case-image-dialog::backdrop{background:#000000e0}.case-image-dialog img{object-fit:contain;cursor:zoom-out;width:auto;max-width:calc(100vw - 32px);height:auto;max-height:calc(100dvh - 32px);display:block}.case-image-close{color:#fff;width:40px;height:40px;font:24px/1 var(--interface);cursor:pointer;background:#000000b3;border:1px solid #fff;border-radius:50%;position:fixed;top:16px;right:24px}.case-image-close:focus-visible{outline-offset:3px;outline:2px solid #fff}.case-media-card figcaption{font-size:var(--type-caption);gap:5px;margin-top:10px;line-height:1.45;display:grid}.case-media-card figcaption strong{letter-spacing:.04em;font-weight:600}.case-media-card figcaption span{color:#555}.case-video-card{min-width:0;margin:0}.case-video-frame{aspect-ratio:1750/1378;background:#e7e7e7;overflow:hidden}.case-video-frame video{object-fit:cover;width:100%;height:100%}.case-video-card figcaption{font-size:var(--type-caption);gap:5px;margin-top:10px;line-height:1.45;display:grid}.case-video-card figcaption strong{letter-spacing:.04em;font-weight:600}.case-video-card figcaption b{color:#111;font-size:1.05em;font-weight:600}.case-video-card figcaption span{color:#555}.case-media-group{margin-top:32px}.case-media-group:first-child{margin-top:24px}.case-media-group h4{font-size:var(--type-caption);letter-spacing:.08em;margin:0 0 12px;font-weight:600}.media-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.media-count-2 .media-case{aspect-ratio:1.65}.media-count-8{grid-template-columns:repeat(2,minmax(0,1fr))}.next-project{border-top:1px solid #555;margin:96px 0 48px;padding-top:24px}.next-project>span{font-size:var(--type-caption)}.next-project a{font:400 40px/1.2 var(--interface);justify-content:space-between;gap:20px;margin-top:16px;display:flex}.harness-title{margin-block:64px}.harness-title p{margin-bottom:24px;font-size:14px}.harness-title h1{font:400 80px/1 var(--display)}.harness-section{border-top:1px solid #555;padding-block:24px 48px}.harness-section h2{margin-bottom:24px;font-size:14px}.grid-specimen{gap:var(--gutter);display:grid}.grid-specimen span{text-align:center;background:#ddd;min-height:180px;padding-top:16px;font-size:12px}.grid-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-tablet,.grid-mobile{display:none}.type-specimens p{overflow-wrap:anywhere;margin-top:24px}.type-display{font:400 56px/1.1 var(--display)}.type-interface{font:400 36px/1.2 var(--interface)}.type-reading{font-size:16px;line-height:1.5}@media (width>=1500px){.project-row{min-height:105px}}@media (width<=1199px){.intro-title{grid-column:1/4}.intro-contact{grid-column:5/7}.intro-name{grid-column:1/3}.intro-statement,.scroll-cue{grid-column:4/7}.intro-role{grid-column:1/3}.active-preview,.project-list{grid-column:span 3}.project-row{font-size:var(--type-interface-lg);grid-template-columns:30px minmax(0,1fr) 30px;gap:8px;min-height:82px}.snapshot-rail{--snapshot-unit:calc((var(--snapshot-content) - 5 * var(--gutter)) / 6);--snapshot-height:min(48svh, 380px)}.snapshot-wide,.snapshot-medium{width:calc(4 * var(--snapshot-unit) + 3 * var(--gutter))}.snapshot-portrait,.snapshot-tall,.snapshot-square{width:calc(2 * var(--snapshot-unit) + var(--gutter))}.case-title,.case-meta{grid-column:1/4}.case-title h1{font-size:var(--type-display-xl)}.media-hero{grid-column:4/7;min-height:260px}.case-meta{font-size:var(--type-reading)}.case-meta>div{padding-inline:8px}.chapter-card{grid-area:1/1/3;min-height:230px;padding:12px 8px}.chapter-card h2{font-size:var(--type-interface-lg)}.case-section-kicker{grid-row:1}.chapter-card{grid-row:2/4}.case-content{grid-area:3/2/auto/7}.case-inline-media{grid-template-columns:1fr}.case-inline-media .case-media-card:first-child{width:min(100%,560px);margin-inline:auto}.section-marker{grid-area:2/2/auto/7;justify-self:start;margin-bottom:20px}.grid-desktop{display:none}.grid-tablet{display:block}}@media (width<=767px){.project-page-ai-trip-assistant .case-expandable-visual:not(.is-expanded){max-height:min(48vh,300px)}.site-header{min-height:62px;font-size:var(--type-interface-md)}.primary-nav{gap:20px}.home-intro{grid-template-rows:auto auto auto auto;row-gap:24px;min-height:420px;padding-top:36px}.intro-title{grid-column:1/4}.intro-title h1{font-size:var(--type-display-xl)}.intro-title>p{font-size:var(--type-interface-md)}.intro-contact{font-size:var(--type-interface-md);grid-column:4}.intro-name{grid-area:2/1/auto/3;padding:0;font-size:22px}.intro-statement{grid-area:3/2/auto/5;padding:0;font-size:13px}.intro-role{grid-area:4/1/auto/3;font-size:12px}.intro-role br{display:initial}.scroll-cue{text-align:right;grid-area:4/3/auto/5;font-size:11px}.section-heading{gap:12px;margin-bottom:20px}.section-heading h2{font-size:var(--type-reading)}.active-preview,.project-list{grid-column:1/-1}.project-row{min-height:80px;font-size:var(--type-interface-lg);grid-template-columns:32px minmax(0,1fr) 28px;padding-inline:0}.project-arrow{font-size:36px}.snapshot-rail{--snapshot-unit:calc((var(--snapshot-content) - 3 * var(--gutter)) / 4);--snapshot-height:min(42svh, 320px)}.snapshot-wide,.snapshot-medium{width:var(--snapshot-content)}.snapshot-portrait,.snapshot-tall,.snapshot-square{width:calc(3 * var(--snapshot-unit) + 2 * var(--gutter))}.site-footer{flex-wrap:wrap;gap:16px;margin-top:64px;font-size:13px}.case-hero{margin-bottom:40px;padding-top:32px}.case-title{grid-area:1/1/auto/-1;padding:0}.case-title h1{font-size:var(--type-display-xl)}.case-title>p{font-size:var(--type-reading)}.case-meta{font-size:var(--type-reading);grid-area:2/1/auto/-1;padding-block:8px}.media-hero{grid-area:3/1/auto/-1;min-height:0}.project-page-rontopmake-website .media-hero{aspect-ratio:2728/1568;height:auto}.case-section-01 .case-media-card{width:100%}.case-section{row-gap:20px;margin-bottom:48px}.case-section-kicker{grid-row:1;margin-bottom:0}.chapter-card{border:none;border-top:1px solid #555;grid-area:2/1/auto/-1;align-items:start;gap:20px;min-height:0;padding:20px 0 0;display:flex}.chapter-card strong{font-size:var(--type-display-lg)}.chapter-card h2{font-size:var(--type-interface-lg);max-width:22ch;margin:0}.section-marker{grid-area:3/1/auto/-1;margin:0}.case-content{font-size:var(--type-reading);grid-area:4/1/auto/-1}.case-content h3{font-size:var(--type-interface-md)}.case-content blockquote{margin-block:24px;padding:8px 16px}.media-count-2,.media-count-8{grid-template-columns:1fr}.next-project{margin-top:64px}.next-project a{font-size:30px}.grid-tablet{display:none}.grid-mobile{display:block}.harness-title h1{font-size:64px}.type-display{font-size:40px}}
