@charset "UTF-8";
:root{font:14px/1.8 Arial,"Helvetica Neue","Yu Gothic",Meiryo,sans-serif;color:#141414;background:#f4f3ef;color-scheme:light;--paper:#f4f3ef;--ink:#141414;--muted:#66655f;--rule:#d5d4cf;--accent:#2455ed;--gutter:clamp(22px,4.6vw,64px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}figure,h1,h2,h3,p,dl,dd{margin:0}figure{min-width:0}img,video,iframe{max-width:100%}img{display:block;height:auto}button{color:inherit}button:disabled{cursor:wait}::selection{background:#d3d6df}
.shell{width:100%;max-width:1280px;margin-inline:auto;padding-inline:var(--gutter)}
.skip-link{position:absolute;top:10px;left:var(--gutter);z-index:20;transform:translateY(-160%);padding:8px 14px;color:var(--paper);background:var(--ink);font-size:12px}.skip-link:focus{transform:none}
.site-header{max-width:1280px;margin-inline:auto;padding:26px var(--gutter) 25px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:12px;line-height:1.5}.site-header>a{font-weight:500}.site-nav{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.site-nav a{color:var(--muted);text-underline-offset:5px}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink);text-decoration:underline}
.intro{padding-top:26px;padding-bottom:64px}.intro__copy{padding-bottom:24px}.intro h1{font-size:clamp(27px,3.4vw,42px);line-height:1.25;letter-spacing:-.035em;font-weight:500;text-wrap:balance}.intro__copy p{margin-top:10px;font-size:14px;line-height:1.7;color:#55544f}.intro__media{position:relative;background:#000;overflow:hidden;aspect-ratio:16/9}.intro__media img,.intro__media video{width:100%;height:100%;object-fit:cover}
.section{padding-block:38px 64px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;border-top:1px solid var(--rule);padding-top:20px;margin-bottom:26px}.section-head h2,.section-head>h1{font-size:21px;font-weight:500;line-height:1.5;letter-spacing:-.025em}.section-head p{font-size:11px;color:var(--muted)}
.works{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:4vw;row-gap:38px}.work-card{min-width:0}.work-card>a{display:block}.work-card__media{position:relative;background:#000;overflow:hidden;aspect-ratio:16/9}.work-card__media img,.work-card__media video{display:block;width:100%;height:100%;object-fit:cover}.work-card__body{padding-top:16px}.work-card__title,.work-card h2,.work-card h3{font-size:18px;line-height:1.45;font-weight:500;letter-spacing:-.02em;overflow-wrap:anywhere}.work-card__label{display:block;margin-top:8px;font-size:11px;color:var(--muted)}.work-card>a:hover .work-card__title,.work-card>a:hover h3{text-decoration:underline;text-underline-offset:4px}.work-card--featured .work-card__label{color:var(--ink)}
.play-badge{display:inline-flex;align-items:center;gap:8px;position:absolute;left:15px;bottom:15px;border:1px solid #aaa59c;border-radius:24px;background:var(--paper);color:var(--ink);padding:8px 13px;font-size:11px;line-height:1.5}.play-badge:before{content:"▶";font-size:9px}.media-caption{margin-top:9px;font-size:10px;line-height:1.7;color:var(--muted)}
.loop-poster{display:none!important}video[data-loop]{display:block}
/* The generated pages use description lists and small media wrappers. */
.section-head>span{font-size:11px;color:var(--muted)}.intro__copy .eyebrow{margin-top:0;margin-bottom:10px}.work-card__body .work-card__label{margin-top:0;margin-bottom:7px}
.about-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.6fr);gap:clamp(32px,6vw,90px);padding-block:34px 64px;border-top:1px solid var(--rule);margin-top:60px}.about-summary h2,.contact h2{font-size:20px;font-weight:500;margin-bottom:16px}.about-summary p{max-width:48em;font-size:13px;line-height:2.1;color:#55544f}.about-summary .text-link{margin-top:20px}.contact{min-width:0}.contact a{font-size:13px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:12px;text-decoration:underline;text-underline-offset:4px;line-height:1.7}.text-link:hover{color:#55544f}
.work-hero{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000;margin-top:12px}.work-hero>img,.work-hero>video{display:block;width:100%;height:100%;object-fit:cover}.work-heading{padding-block:32px 27px}.work-heading h1{max-width:32em;font-size:clamp(25px,3.1vw,36px);line-height:1.35;font-weight:500;letter-spacing:-.025em;text-wrap:balance}.eyebrow,.work-heading>.category,.work-heading>.work-card__label{font-size:11px;line-height:1.6;color:var(--muted);margin-bottom:12px}.work-heading h1+.eyebrow,.work-heading h1+.category{margin-top:12px;margin-bottom:0}.work-heading .concept,.concept{max-width:56em;margin-top:22px;color:#55544f;font-size:13px;line-height:2.1}.work-heading>p:last-child:not(.eyebrow):not(.category){max-width:56em;margin-top:20px;color:#55544f;font-size:13px;line-height:2.1}
.work-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-top:1px solid var(--rule);padding-block:22px 30px}.work-meta dt{font-size:10px;letter-spacing:.04em;color:var(--muted);margin-bottom:9px}.work-meta dd{font-size:12px;line-height:1.9;overflow-wrap:anywhere}.work-note{font-size:11px;line-height:1.9;color:var(--muted);max-width:70em;margin-bottom:20px}.work-body{padding-block:12px 58px}.work-body>p{font-size:13px;line-height:2.1;max-width:56em;color:#55544f}.work-body>.section-head{margin-top:48px}
.button-link{display:inline-flex;justify-content:center;align-items:center;gap:14px;min-height:46px;padding:12px 22px;border:1px solid var(--ink);border-radius:28px;background:var(--ink);color:var(--paper);font-size:12px;font-weight:500;line-height:1.6}.button-link:hover{background:#363632;border-color:#363632}.button-link--light{background:none;color:var(--ink)}.button-link--light:hover{background:#e7e6e0;border-color:var(--rule)}.play-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-block:20px 12px}.play-note{font-size:11px;line-height:1.9;color:var(--muted);margin-block:10px}
.media-player{position:relative;aspect-ratio:16/9;background:#080808;overflow:hidden;margin-block:22px 20px}.youtube-facade{display:block;position:relative;width:100%;height:100%;aspect-ratio:16/9;background:#080808;border:0;padding:0;text-align:center;color:#fff;overflow:hidden}.youtube-facade>img{display:block;width:100%;height:100%;object-fit:cover}.youtube-facade:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.13);pointer-events:none}.youtube-facade__label{display:inline-flex;justify-content:center;align-items:center;gap:12px;position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:30px;background:var(--paper);color:var(--ink);padding:13px 21px;font-size:12px;font-weight:500;white-space:nowrap;line-height:1.5}.youtube-facade__label:before{content:"▶";font-size:9px}.youtube-facade:hover .youtube-facade__label{background:#fff}.youtube-embed{display:block;width:100%;height:100%;aspect-ratio:16/9;border:0;background:#000}.media-fallback{padding-block:18px;font-size:12px;color:var(--muted)}
.how-item{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(26px,4vw,54px);padding-block:28px 36px;border-bottom:1px solid var(--rule)}.how-item:first-of-type{padding-top:6px}.how-item h2,.how-item h3{font-size:18px;line-height:1.6;font-weight:500;letter-spacing:-.02em;margin-bottom:14px}.how-item p{font-size:13px;line-height:2.1;color:#55544f;max-width:43em}.how-item figure img,.how-item>img{width:100%;height:auto;background:#111}.how-item .media-caption{font-size:10px}.how-images{display:grid;gap:18px}.related-work{margin-top:28px;font-size:12px;line-height:1.9}.related-work a{text-decoration:underline;text-underline-offset:4px}
.next-work{padding-block:28px 44px;border-top:1px solid var(--rule);display:flex;align-items:baseline;justify-content:space-between;gap:22px}.next-work>p,.next-work>span{font-size:11px;color:var(--muted)}.next-work a{font-size:18px;line-height:1.5;max-width:34em;text-align:right}.next-work a:hover{text-decoration:underline;text-underline-offset:5px}
.about-layout{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:clamp(34px,7vw,100px);align-items:start;padding-block:34px 56px}.about-layout h1{font-size:30px;line-height:1.4;font-weight:500;margin-bottom:28px;letter-spacing:-.025em}.about-layout p{font-size:13px;color:#55544f;line-height:2.1;margin-top:15px}.profile-photo{width:180px;height:180px;border-radius:50%;object-fit:cover}.profile-facts{display:grid;grid-template-columns:90px 1fr;gap:9px 20px;margin-block:28px}.profile-facts dt{font-size:11px;color:var(--muted)}.profile-facts dd{font-size:12px;overflow-wrap:anywhere}.skill-list,.career-list{list-style:none;margin:0;padding:0}.skill-list li,.career-list li{padding:18px 0;border-bottom:1px solid var(--rule);font-size:13px;line-height:2;color:#55544f}.skill-list strong{font-weight:500;color:var(--ink);display:block;margin-bottom:7px}.career-list time{display:inline-block;min-width:64px;color:var(--muted);font-size:12px}.about-section{padding-bottom:48px}.about-section h2{font-size:21px;font-weight:500;border-top:1px solid var(--rule);padding-top:20px;margin-bottom:6px}
.site-footer{max-width:1280px;margin-inline:auto;padding:22px var(--gutter) 28px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;align-items:baseline;gap:18px;font-size:11px;color:var(--muted);line-height:1.8}.site-footer a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.about-summary{display:block;border-top:0;margin-top:18px}.about-summary .section-head{margin-bottom:22px}.about-summary>.text-link{margin-top:20px}.contact-address{overflow-wrap:anywhere}
.work-hero{aspect-ratio:auto;overflow:visible;background:none}.work-hero>img,.work-hero>video{height:auto;aspect-ratio:16/9;background:#000}.work-hero>.media-caption{margin-top:9px}
.work-concept{max-width:56em;margin-top:22px;color:#55544f;font-size:13px;line-height:2.1}.how-item__images{display:grid;gap:18px}.how-item__images img{width:100%;height:auto;background:#111}
.play-launch{padding-block:4px 8px}.play-launch>p{font-size:11px;color:var(--muted);line-height:1.9;margin-top:10px}.play-launch .work-note{margin-block:14px}.play-launch>.text-link{display:flex;width:fit-content;margin-top:14px}
.youtube-facade__label:before{content:none}.youtube-facade__label>[aria-hidden=true]{font-size:9px}
.about-layout{grid-template-columns:180px minmax(0,1fr)}.about-copy>p:first-child{margin-top:0}.profile-details{margin-top:28px}.profile-details>div{display:grid;grid-template-columns:82px minmax(0,1fr);gap:18px;margin-top:11px}.profile-details dt{font-size:11px;color:var(--muted)}.profile-details dd{font-size:12px;overflow-wrap:anywhere}.profile-details a{text-decoration:underline;text-underline-offset:4px}
.skill-list>div{padding-block:18px;border-bottom:1px solid var(--rule)}.skill-list dt{font-size:13px;font-weight:500;margin-bottom:7px}.skill-list dd{font-size:13px;line-height:2;color:#55544f}.career-list li{display:flex;gap:18px}.career-list time{flex-shrink:0}
@media(max-width:760px){.site-header{padding-block:22px;gap:16px}.site-nav{gap:18px}.intro{padding-top:18px;padding-bottom:38px}.intro h1{font-size:32px}.works{gap:30px 24px}.work-card__title,.work-card h2,.work-card h3{font-size:16px}.section{padding-block:28px 42px}.about-summary{grid-template-columns:1fr;gap:32px;margin-top:42px;padding-block:28px 44px}.work-meta{grid-template-columns:1fr 1fr}.work-meta>div:last-child{grid-column:1/-1}.how-item{grid-template-columns:1fr;gap:20px}.about-layout{grid-template-columns:1fr 140px;gap:28px}.profile-photo{width:140px;height:140px}.site-footer{flex-wrap:wrap}}
@media(max-width:560px){.site-header{font-size:11px}.site-nav{gap:15px}.intro__copy{padding-bottom:20px}.intro h1{font-size:29px}.intro__copy p{font-size:12px}.works{grid-template-columns:1fr;gap:32px}.work-card__body{padding-top:13px}.work-card__title,.work-card h2,.work-card h3{font-size:18px}.section-head{margin-bottom:22px}.section-head h2{font-size:20px}.section-head p{font-size:10px}.about-summary{margin-top:38px}.work-heading{padding-block:25px 23px}.work-heading h1{font-size:25px}.work-meta{gap:18px}.work-meta dd{font-size:11px}.work-body{padding-bottom:40px}.work-heading .concept,.work-body>p,.how-item p,.about-layout p{font-size:12px}.how-item{padding-block:24px 28px}.how-item h2,.how-item h3{font-size:17px;margin-bottom:12px}.next-work{display:block;padding-block:24px 32px}.next-work a{display:block;margin-top:12px;font-size:17px;text-align:left}.about-layout{grid-template-columns:1fr;padding-top:18px;gap:28px}.about-layout h1{font-size:27px;margin-bottom:22px}.about-layout figure,.about-layout>.profile-photo{grid-row:1;justify-self:start}.profile-photo{width:128px;height:128px}.about-section{padding-bottom:34px}.skill-list li,.career-list li{font-size:12px}.site-footer{font-size:10px}.youtube-facade__label{font-size:11px;padding:12px 18px}.play-badge{left:12px;bottom:12px;font-size:10px;padding:7px 11px}.button-link{font-size:11px}}
@media(min-width:561px) and (max-width:760px){.about-layout{grid-template-columns:140px minmax(0,1fr)}}
@media(max-width:560px){.work-concept,.skill-list dd{font-size:12px}.profile-details>div{grid-template-columns:70px minmax(0,1fr);gap:12px}.career-list li{gap:8px}.section-head>span{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.loop-poster{display:block!important}video[data-loop]{display:none!important}}
