:root{--ink:#090a24;--blue:#363dd1;--paper:#f4f4f4;--ice:#98aee7;--red:#b82342;--muted:#b4b5cc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--ink);color:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #e6fb8a;outline-offset:5px}header{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff25;background:var(--ink);position:sticky;top:0;z-index:20}.logo{font-size:42px;font-weight:800;letter-spacing:-4px;line-height:1}.logo span{font-size:14px;vertical-align:top;letter-spacing:0;margin-left:5px}nav{display:flex;gap:30px;align-items:center;font-size:14px}.nav-contact{border:1px solid #ffffff55;padding:9px 18px;border-radius:30px}.hero{padding:64px 5vw 58px;display:grid;grid-template-columns:1.6fr 1fr;gap:45px;max-width:1600px;margin:auto}.eyebrow{font-size:13px;letter-spacing:.12em;font-weight:700;margin:0 0 23px}h1{font-size:clamp(54px,6.4vw,104px);line-height:1.01;letter-spacing:-.065em;font-weight:700;margin:32px 0}em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em}h1 em{color:var(--ice)}.intro{font-size:19px;line-height:1.6;max-width:570px;color:#d8d8e7}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:29px}.button{display:inline-block;border-radius:50px;padding:13px 24px;font-size:15px;font-weight:600}.light{background:var(--paper);color:var(--ink)}.textlink{font-size:15px;border-bottom:1px solid var(--ice);padding-bottom:3px}.hero-credit{color:var(--muted);font-size:14px;max-width:420px;margin-top:37px}.hero-credit strong{color:var(--paper);font-weight:500}.portrait-wrap{position:relative;align-self:start;margin-left:12px;background:var(--blue);margin-top:4px}.portrait-wrap img{width:100%;height:500px;object-fit:cover;object-position:50% 33%;display:block;filter:saturate(.8)}.photo-caption{padding:18px 23px;background:var(--blue)}.photo-caption span{display:block;font-size:12px;letter-spacing:.1em;margin-bottom:5px}.photo-caption strong{font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:27px}.vertical-label{position:absolute;right:-23px;top:30px;writing-mode:vertical-rl;font-size:12px;letter-spacing:.1em;color:var(--ice)}.credits-strip{padding:24px 5vw;background:var(--blue);display:flex;align-items:center;gap:35px}.credits-strip span{font-size:12px;letter-spacing:.15em;white-space:nowrap}.credits-strip p{margin:0;font-size:clamp(15px,1.6vw,22px);font-weight:500}.credits-strip i{padding:0 15px;color:#a4b3ff}.section{padding:90px 5vw;max-width:1600px;margin:0 auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:35px}.section-heading>p{max-width:325px;color:#666778;margin-bottom:5px}h2{font-size:clamp(40px,4.8vw,70px);line-height:1.07;letter-spacing:-.055em;margin:0;font-weight:600}.work{background:var(--paper);color:var(--ink);max-width:none}.work .eyebrow{color:var(--blue)}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:30px}.filters button{background:transparent;color:var(--ink);border:1px solid #c4c4ce;border-radius:30px;padding:10px 19px;font-size:14px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 22px}.project-card{border:0;padding:0;background:transparent;text-align:left;width:100%;color:var(--ink)}.project-cover{height:245px;padding:25px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .25s;position:relative}.project-cover .number{font-size:13px;letter-spacing:.13em}.cover-title{font-weight:700;font-size:clamp(28px,3.2vw,48px);line-height:1.07;letter-spacing:-.055em}.cover-title i{font-family:Georgia,serif;font-weight:400}.project-card:hover .project-cover{transform:translateY(-5px)}.blue{background:var(--blue);color:white}.pink{background:#e5b9c8}.lime{background:#dbea97}.navy{background:var(--ink);color:var(--ice)}.ice{background:var(--ice)}.red{background:var(--red);color:white}.cream{background:#dadbe4}.card-meta{display:flex;justify-content:space-between;align-items:start;gap:12px;padding-top:15px}.card-meta h3{font-size:20px;line-height:1.25;margin:0 0 5px;letter-spacing:-.03em}.card-meta p{font-size:14px;color:#5f6070;margin:0}.open-label{font-size:12px;white-space:nowrap;border-bottom:1px solid #999;align-self:start}.card-type{display:block;font-size:12px;letter-spacing:.08em;margin:12px 0 6px;color:#5f6070}.role-note{color:#6b6c7b;font-size:13px;margin:33px 0 0;max-width:790px}.notebook{max-width:none;border-bottom:1px solid #ffffff25}.notebook .section-heading>p{color:var(--muted)}.thinking-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:45px;margin-top:46px}.thinking-tabs{display:flex;flex-direction:column}.thinking-tabs button{background:none;color:var(--muted);border:0;border-bottom:1px solid #ffffff25;padding:24px 0;text-align:left;font-size:19px;display:flex;gap:22px;align-items:center}.thinking-tabs button span{font-size:12px;color:var(--ice)}.thinking-tabs button[aria-selected=true]{color:white}.thinking-tabs button[aria-selected=true] span{background:var(--blue);padding:6px;border-radius:50%}#thinking-panel{background:var(--blue);padding:38px;min-height:375px}#thinking-panel h3{font-family:Georgia,serif;font-size:clamp(32px,3vw,46px);font-weight:400;font-style:italic;line-height:1.2;margin:0 0 23px}#thinking-panel p{max-width:550px;color:#e4e6ff}#thinking-panel ul{padding-left:20px}#thinking-panel li{margin:14px 0}.prompt-note{font-size:13px;border-top:1px solid #ffffff50;padding-top:17px;margin-top:23px}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about-intro{font-size:22px;line-height:1.5;margin-top:33px}.about p:not(.about-intro){color:var(--muted)}.outline{border:1px solid #ffffff65;margin-top:20px}.about-index{padding-top:50px}.about-index h3{font-size:15px;letter-spacing:.03em;margin-bottom:28px}.about-index>div{padding:20px 0;border-top:1px solid #ffffff30}.about-index span{font-size:23px}.about-index p{margin:9px 0 0}.about-index .education{font-size:13px;margin-top:23px}.contact{background:var(--blue);max-width:none;text-align:center;padding-top:75px;padding-bottom:75px}.contact h2{font-size:clamp(50px,7vw,100px)}.email{display:inline-block;margin-top:35px;font-size:clamp(17px,2.3vw,30px);border-bottom:1px solid white;overflow-wrap:anywhere}.contact-links{display:flex;justify-content:center;flex-wrap:wrap;gap:26px;font-size:14px;margin-top:25px}footer{padding:28px 5vw;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.05em}dialog{border:0;background:var(--paper);color:var(--ink);width:min(900px,94vw);max-height:90vh;padding:0}dialog::backdrop{background:#030318cf;backdrop-filter:blur(8px)}.close{position:sticky;float:right;top:15px;right:20px;z-index:5;margin:15px 18px 0 0;border:1px solid #aaa;background:var(--paper);color:var(--ink);width:43px;height:43px;font-size:30px;line-height:1;border-radius:50%}.dialog-head{padding:45px 45px 35px;color:inherit}.dialog-head h2{font-size:clamp(38px,5vw,64px);margin:16px 0 20px}.dialog-head .eyebrow{margin:0}.dialog-role{font-size:15px;margin:0}.dialog-body{padding:35px 45px 45px}.dialog-body h3{font-size:12px;letter-spacing:.11em;color:var(--blue);margin:25px 0 9px}.dialog-body h3:first-child{margin-top:0}.dialog-body p{line-height:1.65;margin:0}.credit-list{list-style:none;padding:0;margin:0;display:flex;gap:8px;flex-wrap:wrap}.credit-list li{background:#e2e3ee;padding:6px 12px;border-radius:20px;font-size:13px}.creative-question{border-left:3px solid var(--blue);padding-left:20px;font-size:24px;font-family:Georgia,serif;font-style:italic;margin:30px 0 15px!important}.request-link{display:inline-block;padding:12px 18px;background:var(--ink);color:white;border-radius:30px;margin-top:26px;font-size:14px}.result{font-size:26px;color:var(--blue)}.media-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.media-links a{border:1px solid var(--ink);padding:10px 16px;border-radius:30px;font-size:14px}.embed{width:100%;aspect-ratio:16/9;border:0;margin-top:20px}.skip{position:fixed;left:15px;top:-80px;z-index:50;background:white;color:var(--ink);padding:12px}.skip:focus{top:15px}@media(min-width:1600px){.work,.notebook,.contact{padding-left:max(5vw,calc((100vw - 1440px)/2));padding-right:max(5vw,calc((100vw - 1440px)/2))}}@media(max-width:1000px){.hero{grid-template-columns:1.35fr 1fr;gap:30px}.portrait-wrap img{height:440px}.project-grid{grid-template-columns:repeat(2,1fr)}.cover-title{font-size:40px}.about{gap:40px}}@media(max-width:700px){header{height:75px;padding:0 6vw}.logo{font-size:35px}nav{gap:17px;font-size:13px}nav a:nth-child(3),.nav-contact{display:none}.hero{display:flex;flex-direction:column;padding:40px 6vw 45px;gap:32px}h1{font-size:57px;margin:20px 0}.intro{font-size:17px}.hero-credit{margin-top:25px}.portrait-wrap{margin:0 12px 0 0;max-width:420px;width:100%}.portrait-wrap img{height:380px;object-position:50% 32%}.credits-strip{display:block;padding:22px 6vw}.credits-strip p{margin-top:10px;font-size:16px;line-height:1.8}.credits-strip i{padding:0 6px}.section{padding:58px 6vw}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:25px}h2{font-size:43px}.project-grid{grid-template-columns:1fr;gap:28px}.project-cover{height:235px}.cover-title{font-size:48px}.thinking-layout{grid-template-columns:1fr;gap:27px;margin-top:25px}.thinking-tabs button{padding:15px 0;font-size:17px}#thinking-panel{padding:28px;min-height:360px}.about{grid-template-columns:1fr;gap:25px}.about-index{padding-top:0}.about-intro{font-size:20px}.contact h2{font-size:59px}.dialog-head{padding:40px 25px 28px}.dialog-body{padding:28px 25px 35px}footer{font-size:12px}.filters button{padding:9px 13px;font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.films{max-width:none;background:#10112e}.films .section-heading>p{color:var(--muted)}.film-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.film-card{border:1px solid #ffffff30;min-width:0}.film-card .embed{display:block;margin:0;background:#03030c}.film-details{padding:20px}.film-details h3{margin:0 0 8px;font-size:20px;letter-spacing:-.02em}.film-role{font-size:14px;color:var(--ice);margin:0}.film-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:18px;font-size:13px}.film-actions a{border-bottom:1px solid currentColor}.film-actions button{border:1px solid #ffffff60;background:none;color:inherit;font-size:13px;border-radius:20px;padding:7px 12px}.project-films{display:grid;gap:22px;margin-bottom:30px}.project-films .film-card{border-color:#cecfda}.project-films .film-role{color:var(--blue)}.project-films .film-actions button{display:none}dialog .film-details h3{font-size:19px;letter-spacing:0;color:var(--ink);margin-top:0}dialog .film-actions a{color:var(--ink)}@media(max-width:700px){.film-grid{grid-template-columns:1fr}nav{gap:13px}nav a[href="#notebook"],nav a[href="#about"]{display:none}.films .section-heading{margin-bottom:28px}}

/* Photocopied music-zine direction using the supplied CD background. */
body{background-color:var(--ink);background-image:linear-gradient(90deg,rgba(9,10,36,.86) 0%,rgba(9,10,36,.57) 48%,rgba(9,10,36,.30) 100%),url("assets/cd-background.jpg");background-size:cover;background-position:center;background-attachment:fixed}
header{background:rgba(9,10,36,.95);border-bottom:1px dashed #98aee765}
.logo{font-family:Georgia,serif;font-style:italic;letter-spacing:-3px;transform:rotate(-3deg)}
.eyebrow,.card-type,.number,.vertical-label,.photo-caption span{font-family:"Courier New",monospace;font-weight:700}
.hero{position:relative;min-height:680px;padding-top:70px;padding-bottom:65px}
.hero-copy{position:relative;z-index:1}
h1{font-weight:800;text-shadow:2px 2px 0 #090a2470}
h1 em{color:#d5ddff}
.hero .eyebrow{display:inline-block;padding:7px 11px;background:#f4f4f4;color:var(--ink);transform:rotate(-1.3deg);letter-spacing:.07em;font-size:12px}
.intro{color:#f0f0f7;text-shadow:0 1px 4px #090a24}
.hero-credit{color:#e0e2f3;text-shadow:0 1px 3px var(--ink)}
.button,.nav-contact{border-radius:2px}
.button.light{box-shadow:4px 4px 0 #98aee7;transform:rotate(-.6deg)}
.portrait-wrap{transform:rotate(2deg);border:9px solid #f4f4f4;box-shadow:9px 12px 0 rgba(9,10,36,.65);background:#f4f4f4;max-width:430px;justify-self:center;width:100%}
.portrait-wrap img{height:490px;object-position:50% 35%;filter:none}
.photo-caption{background:#f4f4f4;color:var(--ink);padding:18px 12px 13px}
.photo-caption strong{font-family:Georgia,serif;font-size:27px}
.photo-caption span{font-size:12px;letter-spacing:.02em}
.vertical-label{right:-33px;color:white;background:var(--ink);padding:8px 3px;font-size:12px}
.credits-strip{background:rgba(54,61,209,.95);border-top:1px dashed #ffffff80;border-bottom:1px dashed #ffffff80}
.work{background:rgba(244,244,244,.965);position:relative}
.project-cover{clip-path:polygon(0 1%,15% 0,31% 1%,46% 0,62% 1%,80% 0,100% 1%,99% 24%,100% 47%,99% 68%,100% 99%,81% 100%,65% 99%,44% 100%,26% 99%,0 100%,1% 74%,0 49%,1% 24%)}
.project-cover:after,#thinking-panel:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");mix-blend-mode:multiply}
.project-cover .number{align-self:start;background:rgba(244,244,244,.92);color:var(--ink);padding:4px 8px;transform:rotate(-2deg)}
.filters button{border-radius:2px;border-style:dashed}
.filters button.active{border-style:solid;box-shadow:3px 3px 0 #98aee7}
.notebook,.about{background:rgba(9,10,36,.90)}
.films{background:rgba(9,10,36,.94)}
.film-card{border:1px dashed #98aee770}
.film-details{background:#10112e}
dialog .film-details{background:var(--paper)}
#thinking-panel{position:relative;border:1px dashed #aebfff;box-shadow:7px 7px 0 #03041560}
#thinking-panel>*{position:relative;z-index:1}
.contact{background:rgba(54,61,209,.91);border-top:1px dashed #ffffff70}
footer{background:rgba(9,10,36,.94)}
.project-card:hover .project-cover{transform:translateY(-5px) rotate(-.6deg)}
.dialog-head{position:relative;border-bottom:1px dashed #090a2440}
@media(max-width:1000px){.portrait-wrap img{height:450px}.hero{min-height:auto}}
@media(max-width:700px){body{background-attachment:scroll;background-size:auto 900px;background-repeat:repeat-y;background-position:center top}.hero{padding-top:40px;padding-bottom:55px}.hero .eyebrow{font-size:12px;letter-spacing:0}.portrait-wrap{margin:5px 12px 5px 0;max-width:390px;align-self:center}.portrait-wrap img{height:440px;object-position:50% 32%}.hero-copy h1{font-size:54px}.vertical-label{right:-29px}.work{background:rgba(244,244,244,.98)}.about,.notebook{background:rgba(9,10,36,.95)}}
