:root{--paper:#f4f1e9;--ink:#171715;--red:#e80109;--blue:#0035cb;--pink:#ea50ad}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Poppins,Arial,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.skip{position:fixed;top:-80px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}header{display:flex;align-items:center;justify-content:space-between;margin:0 4%;height:125px;border-bottom:1px solid #aaa69e}.wordmark{font-family:Anton,Impact,sans-serif;font-size:24px;line-height:.95;position:relative;letter-spacing:-.8px}.wordmark span{font-family:Arial;font-size:12px;position:absolute;right:-17px;top:0}.header-note{margin-left:auto;margin-right:8%;font-size:11px;line-height:1.6}#menu-button{align-self:flex-start;border:0;background:var(--red);color:var(--paper);padding:28px 24px 24px;min-width:135px;display:flex;gap:30px;align-items:center;font-weight:600}#menu-button span{font-size:26px}dialog{border:0;background:var(--red);color:var(--paper);width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:8%;margin:0}dialog::backdrop{background:#e80109}dialog nav{display:flex;flex-direction:column;gap:12px;margin-top:7vh}dialog nav a{font-family:Anton,Impact,sans-serif;font-size:clamp(32px,6vw,90px);line-height:1.2;letter-spacing:-1px}dialog nav a:hover{color:var(--ink)}dialog sup{font-family:Poppins;font-size:14px;vertical-align:top;line-height:3}#close-menu{position:absolute;right:5%;top:35px;background:transparent;border:0;color:inherit}dialog>p{margin-top:50px}.hero{padding:30px 4% 0}.eyebrow{font-size:10px;font-weight:500;letter-spacing:1.5px}.hero>.eyebrow{display:flex;justify-content:space-between}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Anton,Impact,'Arial Narrow',sans-serif;font-weight:400}h1{font-size:clamp(54px,9.9vw,165px);letter-spacing:-.035em;line-height:1.05;margin:48px 0 24px}.say{color:var(--blue);position:relative}.asterisk{display:inline-block;color:var(--red);font-family:Arial;font-size:.8em;margin-left:30px;vertical-align:top}.hero-bottom{display:flex;justify-content:space-between;align-items:center;margin-bottom:45px;gap:20px}.hero-bottom p{font-size:13px;line-height:1.7;margin:0}.text-link{font-size:11px;font-weight:600;border-bottom:1px solid;padding-bottom:6px}.text-link span{font-size:22px;margin-left:32px}.handwritten{font-family:'Homemade Apple',cursive;font-size:17px;line-height:1.8;color:var(--blue);transform:rotate(-5deg);display:inline-block}.reel-wrap{position:relative;background:#111}.reel-wrap video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain}.reel-label{background:var(--ink);color:var(--paper);display:flex;justify-content:space-between;padding:14px 18px;font-size:9px;letter-spacing:1.5px}.section{padding:100px 4%}.section-heading{position:relative;margin-bottom:45px}.section-heading h2{font-size:clamp(48px,7vw,106px);letter-spacing:-2px;line-height:1.1;margin:22px 0}.section-heading>p{position:absolute;right:0;bottom:0;font-size:12px;line-height:1.8}.small-star{font-family:Arial;color:var(--red);font-size:.75em;margin-left:25px}.projects{border-top:1px solid var(--ink)}details{border-bottom:1px solid var(--ink)}summary{list-style:none}summary::-webkit-details-marker{display:none}.projects summary{display:grid;grid-template-columns:60px 1fr 210px 40px;align-items:center;padding:25px 0;gap:10px}.index{font-size:11px}.projects h3{font-size:clamp(27px,3.6vw,54px);margin:0;letter-spacing:-.7px}.project-type{font-size:10px;letter-spacing:1px}.plus{font-size:27px;justify-self:end}.projects summary:hover h3{color:var(--blue)}details[open] .plus{transform:rotate(45deg)}.project-detail{padding:5px 8% 30px;display:grid;grid-template-columns:1fr 1fr;gap:40px}.project-detail>p:last-child{max-width:500px;line-height:1.9;font-size:13px}.services{background:var(--blue);color:var(--paper)}.services .section-heading .handwritten{color:var(--paper);position:absolute;right:20px;bottom:20px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-image{overflow:hidden;background:var(--pink);aspect-ratio:1}.service img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.7,.3,1)}.service:hover img,.service:focus-visible img{transform:scale(1.06) rotate(-2deg)}.service-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff70;margin-top:20px;padding-bottom:12px}.service h3{font-size:23px;margin:0}.service-title span{font-size:23px}.service>p{font-size:11px;line-height:1.8;margin-top:14px;max-width:240px}.process{display:grid;grid-template-columns:1fr 1fr;gap:9%;border-bottom:1px solid #b2afa8}.process h2{font-size:clamp(38px,4.3vw,68px);line-height:1.1;letter-spacing:-1px;margin:25px 0 35px}.process ol{list-style:none;margin:0;padding:0}.process li{display:flex;gap:30px;padding:24px 0;border-top:1px solid}.process li>span{color:var(--blue);font-size:12px}.process h3{font-size:24px;margin-bottom:8px}.process p{font-size:12px;line-height:1.9;max-width:400px;margin-bottom:0}.practice{background:var(--pink);overflow:hidden}.practice h2{font-size:clamp(65px,11vw,160px);line-height:1.03;letter-spacing:-3px;position:relative;margin:35px 0}.practice h2>span:first-child{margin-left:15%}.orbit{font-family:Arial;color:var(--blue);position:absolute;right:4%;top:-15px;font-size:1.6em}.practice-intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin:35px 0 40px}.practice-intro>p:first-child{font-family:Anton;font-size:28px;max-width:300px}.practice-intro>p:last-child{font-size:13px;line-height:1.9}.art-list{display:grid;grid-template-columns:1fr 1fr;column-gap:7%}.art-list details{border-top:1px solid;border-bottom:0}.art-list summary{font-family:Anton;font-size:28px;padding:22px 0;display:flex;justify-content:space-between}.art-list p{line-height:1.8;max-width:450px;font-size:12px;padding-bottom:15px}.about{display:grid;grid-template-columns:1fr 2fr;gap:5%}.about h2{font-size:clamp(43px,5vw,76px);line-height:1.15;letter-spacing:-1px}.about h2 span{color:var(--blue)}.about p{font-size:16px;line-height:1.9;max-width:650px;margin-bottom:25px}.about .eyebrow{padding-top:10px}.contact{background:var(--red);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact h2{font-size:clamp(65px,8vw,118px);letter-spacing:-2px;line-height:1;margin:30px 0}.contact h2 span{color:var(--ink)}.contact-intro>p{font-size:13px;line-height:1.8}.contact .handwritten{color:var(--paper);margin:20px 0 0 45%}form{padding-top:5px}label{display:block;font-size:11px;margin-bottom:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}input,textarea,select{display:block;width:100%;border:0;border-bottom:1px solid #ffffff80;background:transparent;color:var(--paper);border-radius:0;padding:13px 0;font-size:12px;resize:vertical}input::placeholder,textarea::placeholder{color:#ffffffb0}select option{color:var(--ink);background:var(--paper)}.submit{border:0;background:var(--paper);color:var(--ink);width:100%;text-align:left;display:flex;justify-content:space-between;padding:18px;font-size:11px;font-weight:600}.submit:hover{background:var(--ink);color:var(--paper)}.form-note{font-size:10px;line-height:1.7;margin-top:12px}#form-status{font-size:12px}footer{display:flex;justify-content:space-between;align-items:center;padding:40px 4%;gap:20px}footer span,footer>a:last-child{font-size:9px;letter-spacing:1px}
@media(min-width:1600px){body{max-width:1900px;margin:auto}}@media(max-width:900px){.hero-bottom .handwritten{display:none}.service-grid{grid-template-columns:1fr 1fr;gap:30px}.projects summary{grid-template-columns:35px 1fr 130px 25px}.project-type{font-size:8px}.section-heading>p{position:static}.orbit{right:0;font-size:1.1em}.about{grid-template-columns:1fr}.contact{gap:6%}.header-note{margin-right:7%}}@media(max-width:600px){header{height:95px}.wordmark{font-size:20px}.header-note{display:none}#menu-button{padding:20px 15px;min-width:110px;font-size:11px}.hero{padding-top:25px}.hero>.eyebrow{font-size:8px}.hero>.eyebrow span:last-child{display:none}h1{font-size:13vw;margin-top:30px;letter-spacing:-1px}.asterisk{margin-left:10px}.hero-bottom{align-items:flex-start;flex-direction:column;margin-bottom:30px;gap:20px}.hero-bottom p{font-size:11px}.section{padding:65px 5%}.section-heading h2{font-size:12vw;letter-spacing:-1px}.section-heading{margin-bottom:30px}.projects summary{grid-template-columns:25px 1fr 25px;padding:22px 0}.projects h3{font-size:28px}.project-type{display:none}.project-detail{padding:0 6% 20px;grid-template-columns:1fr;gap:5px}.project-detail .handwritten{font-size:14px}.service-grid{gap:24px 14px}.service h3{font-size:19px}.service>p{font-size:10px}.services .section-heading .handwritten{position:static;font-size:14px}.process{grid-template-columns:1fr;gap:40px}.practice h2{font-size:16vw;letter-spacing:-1px}.practice h2>span:first-child{margin-left:7%}.orbit{font-size:.8em;top:-10px;right:2%}.practice-intro{grid-template-columns:1fr;gap:12px}.art-list{grid-template-columns:1fr}.art-list summary{font-size:25px}.about p{font-size:14px}.about .handwritten{font-size:13px}.contact{grid-template-columns:1fr;gap:35px}.contact h2{font-size:20vw}.contact .handwritten{display:none}footer{flex-wrap:wrap;padding:30px 5%}footer span{width:100%;order:3}.reel-label{font-size:7px;padding:10px}.form-row{gap:15px}dialog nav{margin-top:18vh}dialog nav a{font-size:9vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.service:hover img,.service:focus-visible img{transform:none}}
/* Dream hero — October 2026 */
:root{--blue:#0137cd;--pink:#ec58a8;--red:#e90109}header{background:#050505;color:white;margin:0;padding:0 4%;height:100px;border:0}.wordmark{font-size:20px;letter-spacing:0}.dream-hero{background:#050505;color:#fff;min-height:calc(100svh - 100px);display:grid;grid-template-columns:46% 54%;align-items:center;padding:40px 4% 0;position:relative;overflow:hidden}.hero-copy{z-index:2;padding-bottom:50px}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.4px;color:#aaa}.hero-copy h1{font-size:clamp(37px,4.4vw,76px);line-height:1.08;letter-spacing:-.02em;margin:25px 0}.hero-copy>p{font-size:12px;line-height:1.9;color:#bdbdbd;margin:20px 0 26px}.play-reel{border:0;border-bottom:1px solid #777;background:none;color:white;padding:12px 0;font-size:12px;font-weight:600;display:flex;gap:55px;align-items:center}.play-reel span{font-size:26px;transition:transform .25s}.play-reel:hover span{transform:translate(4px,-4px)}.dream-stage{position:relative;aspect-ratio:1.12;margin-left:-5%;align-self:center}.dream-stage>video{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}.dream-caption{font-family:'Homemade Apple',cursive;font-size:clamp(18px,2.2vw,38px);line-height:1.9;position:absolute;top:30%;left:17%;width:78%;color:#fff;mix-blend-mode:difference;transform:rotate(-7deg);text-align:center;pointer-events:none}.dream-star{position:absolute;width:17%;left:2%;top:20%;animation:star-turn 18s linear infinite}.motion-toggle{position:absolute;right:4%;bottom:6%;background:#050505c9;color:#ddd;border:1px solid #555;padding:8px 12px;font-size:8px;letter-spacing:1px}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #333;padding:20px 0;font-size:9px;letter-spacing:1px;color:#a5a5a5}.hero-foot a{color:#fff}#reel-modal{background:#050505;padding:4vw;color:white;align-content:center}#reel-modal::backdrop{background:#000e}#reel-modal video{display:block;width:100%;max-height:80dvh;object-fit:contain}.reel-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;font-size:11px;letter-spacing:1px}#close-reel{background:none;border:1px solid #777;color:#fff;padding:10px 18px}@keyframes star-turn{to{transform:rotate(360deg)}}.motion-paused .dream-star{animation-play-state:paused}@media(max-width:700px){header{height:80px}.dream-hero{display:flex;flex-direction:column;padding:30px 6% 0;min-height:0}.hero-copy{width:100%;padding-bottom:0}.hero-copy h1{font-size:clamp(36px,8.5vw,58px);margin-top:20px}.hero-copy>p{font-size:11px}.dream-stage{width:112%;margin:0;aspect-ratio:1.4}.dream-caption{font-size:clamp(18px,4.6vw,28px)}.hero-foot{width:100%;font-size:8px;gap:20px}.hero-foot>span{max-width:50%}.header-note{display:none}.cursor-hand{display:none!important}}@media(prefers-reduced-motion:reduce){.dream-star{animation:none}.cursor-hand{display:none!important}body.hand-cursor,body.hand-cursor a,body.hand-cursor button,body.hand-cursor summary{cursor:auto}}

/* Inline showreel and simplified header */
header .wordmark{font-size:clamp(28px,3.1vw,46px)}header #menu-button{margin-left:auto}
.inline-reel{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:14px}.inline-reel[hidden]{display:none}.inline-reel video{width:100%;aspect-ratio:16/9;object-fit:contain;background:#000}.inline-reel #back-to-loop{align-self:flex-end;background:none;border:1px solid #555;color:#ddd;padding:8px 12px;font-size:9px;letter-spacing:1px}.showing-reel>#cloud-loop,.showing-reel>.dream-caption,.showing-reel>.dream-star,.showing-reel>.motion-toggle{display:none}#menu nav{margin-top:10vh}#menu nav a{font-size:clamp(28px,6vw,85px)}@media(max-width:700px){header .wordmark{font-size:28px}.dream-stage.showing-reel{aspect-ratio:1.4}#menu nav{margin-top:14vh}#menu nav a{font-size:8vw}}

/* Caption rests on the small foreground clouds. */
.dream-caption{top:60%;left:58%;width:40%;margin:0;font-size:clamp(12px,1.22vw,21px);line-height:1.85;transform:rotate(7deg);color:#171717;mix-blend-mode:normal}@media(max-width:700px){.dream-caption{top:63%;font-size:clamp(10px,2.65vw,17px)}}

/* Paper menu and a larger media stage. */
header #menu-button{position:relative;isolation:isolate;background:transparent;width:172px;min-width:172px;height:116px;padding:22px 28px 37px;justify-content:center;gap:22px;z-index:5}header #menu-button::before{content:"";position:absolute;inset:-5px -6px 0;background:url('assets/menu-paper-red.png') center/100% 100% no-repeat;z-index:-1}header #menu-button:hover::before{transform:translateY(3px)}
.dream-hero{grid-template-columns:38% 62%;padding:12px 3% 0;column-gap:0;min-height:calc(100svh - 100px)}.hero-copy{padding-bottom:24px}.hero-copy h1{font-size:clamp(36px,3.8vw,66px)}.dream-stage{width:109%;margin-left:-6%;aspect-ratio:1.6}.dream-caption{top:67%;font-size:clamp(13px,1.5vw,24px)}.dream-star{width:12%;left:-3%;top:23%;z-index:3}.motion-toggle{bottom:0;right:2%}.hero-foot{margin-top:16px}.inline-reel{gap:8px}.inline-reel #back-to-loop{font-size:8px}
@media(max-width:700px){header #menu-button{width:128px;min-width:128px;height:92px;padding:15px 18px 28px;gap:18px}.dream-hero{padding:26px 6% 0;min-height:0}.hero-copy h1{font-size:clamp(36px,8.5vw,58px)}.dream-stage,.dream-stage.showing-reel{width:112%;margin:20px 0 0;aspect-ratio:1.6}.dream-star{left:2%;top:20%;width:13%}.dream-caption{top:67%;font-size:clamp(10px,2.65vw,17px)}.hero-foot{margin-top:25px}}

.hero-foot{justify-content:flex-end}
/* Selected work: moving covers and project pages */
.work-section{padding:80px 0 70px;background:var(--paper);overflow:hidden}.work-heading{display:flex;justify-content:space-between;align-items:center;padding:0 4%;gap:24px;margin-bottom:35px}.work-heading h2{font-family:Anton,sans-serif;font-size:clamp(40px,6.5vw,100px);font-weight:400;line-height:1;margin:0;letter-spacing:-.025em}.work-heading h2 a:hover{color:var(--blue)}.rail-controls{display:flex;align-items:center;gap:12px}.rail-controls button{border:0;border-bottom:1px solid #888;background:none;padding:10px;font-size:12px}.rail-controls button:first-child,.rail-controls button:last-child{font-size:22px}.work-rail{overflow-x:auto;scrollbar-width:none;padding:5px 0 20px}.work-rail::-webkit-scrollbar{display:none}.rail-track,.rail-group{display:flex;width:max-content}.rail-group{gap:24px;padding-right:24px}.work-card{display:block;width:clamp(270px,32vw,520px);flex:none}.work-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}.card-title{display:flex;justify-content:space-between;align-items:center;margin:16px 0 8px;padding-right:4px}.card-title h3{font-family:Anton,sans-serif;font-size:clamp(24px,2.5vw,38px);font-weight:400;margin:0}.card-title>span{font-size:26px}.work-card p{font-size:10px;line-height:1.7;margin:0 0 15px;max-width:95%}.view-project{font-size:10px;border-bottom:1px solid;padding-bottom:4px}.work-card:hover .card-title,.work-card:focus-visible .card-title{color:var(--blue)}.portfolio-page header{background:var(--paper);color:var(--ink);height:115px;border-bottom:1px solid #bbb}.archive-back{font-size:11px}.archive-page,.case-page{padding:55px 4% 0}.archive-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.archive-title h1,.case-heading h1{font-family:Anton,sans-serif;font-size:clamp(48px,8vw,120px);line-height:1.1;letter-spacing:-.02em;margin:25px 0;font-weight:400}.archive-title>a,.case-heading>a{font-size:11px}.archive-videos{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:35px 0 75px}.archive-videos video{width:100%;aspect-ratio:16/9;object-fit:contain;background:#050505}.archive-videos h2{font:26px Anton,sans-serif;margin-top:12px}.archive-subtitle{font:40px Anton,sans-serif}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px 25px;margin-bottom:80px}.archive-grid .work-card{width:100%}.case-heading>p{font-size:12px;line-height:1.8;margin-bottom:35px}.case-cover{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain;background:#080808}.case-copy{max-width:1100px;margin:70px auto}.case-block{display:grid;grid-template-columns:35% 1fr;gap:7%;border-top:1px solid #bfbcb4;padding:36px 0}.case-block h2{font-family:Anton,sans-serif;font-size:clamp(23px,2.8vw,38px);font-weight:400;line-height:1.2;margin:0}.case-block p{font-size:15px;line-height:1.9;margin:0 0 18px}.next-project{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid;padding:40px 0}.next-project span{font-size:11px}.next-project strong{font:clamp(25px,4vw,60px) Anton,sans-serif}.portfolio-page footer{border-top:1px solid #bbb;font-size:11px}@media(max-width:700px){.work-section{padding:55px 0}.work-heading{align-items:flex-start;flex-direction:column;gap:15px}.rail-controls{align-self:flex-end}.work-card{width:78vw}.rail-group{gap:16px;padding-right:16px}.archive-title{align-items:flex-start;flex-direction:column}.archive-grid{grid-template-columns:1fr}.archive-videos{grid-template-columns:1fr;gap:30px;margin-bottom:50px}.case-block{grid-template-columns:1fr;gap:20px}.case-copy{margin:40px auto}.case-block p{font-size:14px}.portfolio-page header .wordmark{font-size:25px}.archive-back{font-size:9px}.next-project{align-items:flex-start;flex-direction:column}}
/* Keep fractional animation progress outside scrollLeft (Safari rounds it). */
.work-rail{scroll-behavior:auto!important}
.case-video{aspect-ratio:16/9;width:100%;height:min(75vh,760px);max-height:none;object-fit:contain;background:#050505}
.animation-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:25px 0 15px}.animation-controls button{background:none;border:0;border-bottom:1px solid;padding:10px 0;font-size:12px}.animation-controls span{font-size:11px}.animation-carousel{position:relative;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:24px;scrollbar-width:thin;scrollbar-color:#0137cd transparent;margin-bottom:65px;padding-bottom:20px}.animation-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always}.animation-slide video{display:block;width:100%;height:min(65vh,700px);object-fit:contain;background:#050505}.animation-label{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 0}.animation-label h2{font:clamp(26px,4vw,50px) Anton,sans-serif;margin:0}.animation-label p{font-size:11px;text-align:right;line-height:1.7;max-width:50%}.archive-subtitle{margin:45px 0 25px}@media(max-width:700px){.animation-slide video{height:60svh}.animation-label{display:block}.animation-label p{text-align:left;max-width:100%;font-size:10px}.animation-controls button{font-size:10px}.case-video{height:65svh}.animation-carousel{gap:16px}}

/* What I do: one pink section with four services. */
#services{background:#ec58a8;color:#171715}#services .handwritten{color:#171715}#services .service-image{background:#ec58a8}#services .service-title{border-color:#17171555}#services .service>p{font-size:13px;line-height:1.7;max-width:32ch}#services .service:focus-visible{outline-color:#0137cd}#brief{scroll-margin-top:40px}
@media(max-width:600px){#services .service>p{font-size:12px}}

.service-video{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}

/* Numbered section headers and expanded hero typography. */
#services{background:#0137cd;color:#fff}
#services .handwritten{color:#fff}#services .service-title{border-color:#ffffff70}#services .service:focus-visible{outline-color:#fff}
.numbered-heading{display:flex;justify-content:space-between;align-items:center;gap:32px;width:100%;margin:0 0 48px;grid-column:1/-1}
.numbered-heading h2,.section .numbered-heading h2{font:400 clamp(38px,5.8vw,110px)/1.1 Anton,Impact,sans-serif;letter-spacing:-.025em;margin:0;color:inherit}
.numbered-heading .handwritten,#services .numbered-heading .handwritten{position:static;flex-shrink:0;text-align:right;font-size:clamp(12px,1.3vw,20px);line-height:1.9;max-width:25%;color:inherit}
.work-heading.numbered-heading{margin-bottom:35px}
#rail-pause{font-family:'Homemade Apple',cursive;font-size:clamp(15px,1.5vw,23px);padding:10px 12px;white-space:nowrap}
.process{grid-template-columns:1fr 1fr;row-gap:0}.process-intro{padding-top:24px}
.about{grid-template-columns:1fr;gap:0}.about-copy{margin-left:35%;max-width:750px}.about-copy h3{font-size:clamp(35px,4.3vw,65px);line-height:1.1;margin:0 0 30px}.about-copy h3 span{color:var(--blue)}
.contact{row-gap:0}.contact-intro h3{font-size:clamp(55px,7vw,110px);line-height:1;letter-spacing:-2px;margin:25px 0 30px}.contact-intro h3 span{color:var(--ink)}
body:not(.portfolio-page)>header{height:clamp(145px,12vw,230px);align-items:center;padding:15px 3% 22px}
body:not(.portfolio-page)>header .wordmark{font-size:clamp(65px,8.5vw,162px);line-height:1;letter-spacing:-.025em;white-space:nowrap}
.dream-hero{grid-template-columns:40% 60%;min-height:0;padding-top:30px;padding-bottom:20px}
.hero-copy h1{font-size:clamp(38px,4.5vw,85px);line-height:1.07;margin:12px 0 30px}
.hero-copy>p{font-size:clamp(12px,1vw,17px);max-width:90%}.hero-copy .play-reel{font-size:clamp(12px,1vw,16px);margin-top:30px}
.dream-stage{width:106%;margin-left:-3%}
@media(max-width:900px){.numbered-heading{gap:20px}.numbered-heading .handwritten{max-width:28%;font-size:12px}.about-copy{margin-left:20%}}
@media(max-width:700px){body:not(.portfolio-page)>header{height:auto;min-height:110px;padding:20px 5%;gap:15px}body:not(.portfolio-page)>header .wordmark{font-size:clamp(29px,6.9vw,48px);white-space:normal}body:not(.portfolio-page)>header #menu-button{width:105px;min-width:105px;height:80px;margin-top:-20px;padding:15px 12px 28px;gap:10px}.dream-hero{padding:20px 6%}.hero-copy h1{font-size:clamp(38px,8.8vw,62px)}.hero-copy>p{font-size:12px}.dream-stage{width:112%;margin:20px 0 0}.numbered-heading,.work-heading.numbered-heading{flex-direction:column;align-items:flex-start;gap:22px;margin-bottom:35px}.numbered-heading h2,.section .numbered-heading h2{font-size:clamp(31px,7.9vw,55px)}.numbered-heading .handwritten,#services .numbered-heading .handwritten{align-self:flex-end;max-width:80%;font-size:13px}.process{grid-template-columns:1fr;row-gap:25px}.process-intro{padding:0 0 15px}.about-copy{margin-left:0}.contact{row-gap:25px}.contact>.numbered-heading .handwritten{display:block;margin:0}.contact-intro h3{font-size:18vw}}
.numbered-heading .handwritten{margin:0}
/* Hero: shared alignment, balanced type scale and a contained video column. */
body:not(.portfolio-page)>header{height:auto;min-height:0;padding:28px 3% 34px;align-items:center;gap:40px}
body:not(.portfolio-page)>header .wordmark{font-size:clamp(64px,8.2vw,156px);line-height:1;letter-spacing:-.018em}
body:not(.portfolio-page)>header #menu-button{align-self:center;margin-top:0;flex-shrink:0}
.dream-hero{grid-template-columns:minmax(0,38fr) minmax(0,62fr);column-gap:3vw;align-items:center;padding:24px 3% 20px}
.hero-copy{min-width:0;padding:0 0 18px}
.hero-copy h1{font-size:clamp(32px,4.05vw,77px);line-height:1.1;letter-spacing:-.018em;margin:0 0 26px}
.hero-copy>p{font-size:clamp(12px,1.05vw,16px);line-height:1.75;max-width:34ch;margin:0 0 30px;color:#d0d0d0}
.hero-copy .play-reel{font-size:clamp(12px,.95vw,15px);line-height:1.3;letter-spacing:.035em;margin:0;min-height:48px;width:clamp(180px,15vw,250px);justify-content:space-between;gap:20px;padding:10px 0}
.dream-stage,.dream-stage.showing-reel{width:100%;margin:0;aspect-ratio:16/10;align-self:center}
.dream-star{width:12%;left:-6%;top:23%}
.dream-caption{font-size:clamp(12px,1.35vw,22px);line-height:1.8;left:59%;width:39%;top:67%}
.dream-hero .hero-foot{margin-top:32px;padding:18px 0 8px}
@media(min-width:1900px){.hero-copy h1{font-size:77px}}
@media(max-width:900px) and (min-width:701px){body:not(.portfolio-page)>header{padding-top:24px;padding-bottom:28px;gap:24px}body:not(.portfolio-page)>header .wordmark{font-size:8vw}body:not(.portfolio-page)>header #menu-button{width:135px;min-width:135px;height:95px;padding:20px;gap:15px}.hero-copy h1{font-size:4vw}.hero-copy>p{font-size:12px}.dream-hero{column-gap:3vw}.dream-caption{font-size:1.4vw}}
@media(max-width:700px){body:not(.portfolio-page)>header{padding:20px 5% 18px;gap:16px}body:not(.portfolio-page)>header .wordmark{font-size:clamp(25px,6.8vw,47px);white-space:nowrap}body:not(.portfolio-page)>header #menu-button{width:90px;min-width:90px;height:70px;padding:12px 10px 22px;gap:8px;font-size:10px}.dream-hero{padding:22px 5% 18px;gap:0}.hero-copy{padding:0;width:100%}.hero-copy h1{font-size:clamp(31px,8.2vw,56px);line-height:1.1;margin-bottom:24px}.hero-copy>p{font-size:13px;line-height:1.7;max-width:35ch;margin-bottom:22px}.hero-copy .play-reel{font-size:12px;width:190px}.dream-stage,.dream-stage.showing-reel{width:100%;margin:30px 0 0;aspect-ratio:16/10}.dream-star{left:-2%;width:12%;top:22%}.dream-caption{font-size:clamp(10px,2.55vw,17px)}.dream-hero .hero-foot{margin-top:28px}}
@media(min-width:701px){.hero-copy>p{max-width:95%}}
/* Align the visible paper edges with the capital letters in the name. */
body:not(.portfolio-page)>header #menu-button{height:var(--name-cap-height,90px);min-height:0;padding:0 24px;transform:translateY(var(--name-cap-offset,0px));align-self:center}
body:not(.portfolio-page)>header #menu-button::before{inset:0;background-size:100% 154.135%;background-position:center 53.241%;transform:none}
@media(max-width:700px){body:not(.portfolio-page)>header #menu-button{padding:0 10px}}

/* A compact four-step process, with the practical terms visible below. */
#process{display:block;background:#ec58a8;color:#171715;border:0}
#process .process-lead{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:0 0 42px}
#process .process-lead p{font-size:15px;line-height:1.6;max-width:470px;margin:0}
#process .process-lead a{flex-shrink:0}
#process .process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}
#process .process-steps li{display:block;border:0;padding:0;position:relative;min-width:0}
#process .step-number{display:flex;align-items:center;gap:22px;color:inherit;font:34px Anton,sans-serif;margin-bottom:24px}
#process .step-number::after{content:"";height:1px;flex:1;background:#17171560}
#process .process-steps li:last-child .step-number::after{display:none}
#process .process-steps h3{font-size:26px;margin:0 0 12px}
#process .process-steps p{font-size:13px;line-height:1.75;margin:0;max-width:none}
#process .process-steps strong{display:block;font:500 12px/1.7 Poppins,sans-serif;margin-top:12px}
#process .process-terms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:40px;padding-top:28px;border-top:1px solid #17171560}
#process .process-terms h3{font:400 19px/1.3 Anton,sans-serif;margin:0 0 10px}
#process .process-terms p{font-size:12px;line-height:1.75;max-width:none;margin:0}
#process .process-footnote{font-size:10px;margin:24px 0 0;max-width:none;opacity:.75}
@media(max-width:900px){#process .process-steps,#process .process-terms{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}#process .process-lead{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:500px){#process .process-steps,#process .process-terms{grid-template-columns:1fr;gap:26px}#process .process-steps li{display:grid;grid-template-columns:40px 1fr;gap:18px}#process .step-number{font-size:28px;align-self:start;margin:0}#process .step-number::after{display:none}#process .process-steps h3{font-size:24px}#process .process-lead p{font-size:14px}#process .process-terms{margin-top:32px;padding-top:24px}}
#process{background:#fff}
#practice.art-section{background:#ec58a8;padding:80px 0 70px;overflow:hidden}
#practice .numbered-heading h2{font-size:clamp(32px,4.9vw,93px)}
.art-rail{overflow-x:auto;scrollbar-width:none;padding:5px 0 24px;scroll-behavior:auto!important}.art-rail::-webkit-scrollbar{display:none}
.art-card{width:clamp(240px,26vw,410px)}.art-card img{aspect-ratio:3/4;object-fit:contain}
.art-card .art-kind{font-size:10px;margin-bottom:9px}.art-card .art-teaser{font-size:12px;line-height:1.7;max-width:32ch;margin-bottom:20px}
#art-pause{font-family:'Homemade Apple',cursive;font-size:clamp(15px,1.5vw,23px);white-space:nowrap}
.art-archive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin:40px 0 80px}.art-archive-grid .art-card{width:100%}
.art-detail{padding:55px 4% 0}.art-project-heading{margin-bottom:65px}.art-project-heading>p:first-child{font-size:11px;letter-spacing:.05em}.art-project-heading h1{font-size:clamp(55px,9vw,150px);margin:20px 0 28px;line-height:1.05}.art-deck{font-size:clamp(17px,1.7vw,25px);line-height:1.65;max-width:650px}
.art-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:9%;margin-bottom:90px}.art-feature-cover,.art-feature-video{display:block;width:100%;max-height:85vh;object-fit:contain}.art-feature-video{background:#080808}.art-story{max-width:500px}.art-story h2,.dream-story h2{font-size:clamp(25px,3vw,43px);line-height:1.2;margin-bottom:22px}.art-story p,.dream-story p{font-size:15px;line-height:1.85}.art-story .art-credit{font-size:11px;margin-top:35px}
.dreams-page .art-project-heading{max-width:1000px}.dreams-composition{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:38px 25px;align-items:start;margin:0 auto 100px;max-width:1550px}
.dream-piece{margin:0}.dream-piece img{display:block;width:100%;height:auto}.dream-piece a{display:block}.dream-piece a:hover{outline:2px solid var(--blue);outline-offset:8px}.dream-story{max-width:450px}.dream-story .handwritten{margin:0 0 30px;color:var(--blue)}
.dream-main{grid-column:6/12;grid-row:1}.story-origin{grid-column:1/5;grid-row:1;padding-top:13%}
.dream-one{grid-column:1/5;grid-row:2;margin-top:-35px}.dream-two{grid-column:6/9;grid-row:2;margin-top:70px}.dream-three{grid-column:10/13;grid-row:2;margin-top:190px}
.story-fracture{grid-column:2/6;grid-row:3;padding-top:35px}.dream-wide{grid-column:7/13;grid-row:3;margin-top:40px}
.dream-square{grid-column:1/7;grid-row:4;margin-top:0}.story-characters{grid-column:9/13;grid-row:4;padding-top:70px}
.dream-exhibition{grid-column:4/13;grid-row:5;margin:50px 0 0}.dream-exhibition video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#080808}.dream-exhibition figcaption{font-size:11px;margin-top:12px}.story-exhibition{grid-column:1/4;grid-row:5;margin-top:90px}
.dream-eight{grid-column:2/6;grid-row:6;margin-top:80px}.dream-nine{grid-column:8/13;grid-row:6;margin-top:180px}.story-acceptance{grid-column:2/7;grid-row:7;margin-top:-70px;padding-bottom:10px}
@media(max-width:1000px){.art-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dreams-composition{gap:30px 18px}.dream-story p{font-size:13px}.story-characters{padding-top:20px}.story-exhibition{grid-column:1/5}.dream-exhibition{grid-column:5/13}.story-acceptance{margin-top:0}}
@media(max-width:700px){#practice.art-section{padding:55px 0}.art-card{width:70vw}#practice .numbered-heading h2{font-size:7.4vw}.art-archive-grid{gap:35px 18px}.art-archive-grid .card-title h3{font-size:23px}.art-detail{padding:35px 5% 0}.art-project-heading{margin-bottom:35px}.art-feature{grid-template-columns:1fr;gap:35px}.art-story{max-width:none}.dreams-composition{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px;margin-bottom:55px}.dreams-composition>*{grid-row:auto;grid-column:auto;margin:0;padding:0}.dreams-composition .story-origin{grid-column:1/-1;grid-row:1}.dreams-composition .dream-main{grid-column:2;grid-row:2}.dreams-composition .dream-one{grid-column:1;grid-row:2;margin-top:55px}.dreams-composition .dream-two{grid-column:1}.dreams-composition .dream-three{grid-column:2;margin-top:55px}.dreams-composition .dream-story{grid-column:1/-1;max-width:520px}.dreams-composition .dream-wide,.dreams-composition .dream-exhibition{grid-column:1/-1}.dreams-composition .dream-square{grid-column:1/-1;width:85%}.dreams-composition .dream-eight{grid-column:1}.dreams-composition .dream-nine{grid-column:2;margin-top:50px}.dream-story p{font-size:14px}.dream-story h2{font-size:29px}.dream-story .handwritten{margin:10px 0 20px}.art-project-heading h1{font-size:clamp(43px,10vw,70px)}}
@media(max-width:400px){.art-archive-grid{grid-template-columns:1fr}}
.dream-film{grid-column:2/12;grid-row:4;margin:0 0 30px}.dream-film video,.dubai-composition video,.dubai-composition img{display:block;width:100%;height:auto}.dream-film figcaption,.dubai-composition figcaption{font-size:11px;margin-top:12px}.dream-square{grid-row:5}.story-characters{grid-row:5}.dream-exhibition,.story-exhibition{grid-row:6}.dream-eight,.dream-nine{grid-row:7}.story-acceptance{grid-row:8}.dubai-composition{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:35px 28px;margin:100px 0 120px;align-items:start}.dubai-composition figure{margin:0}.dubai-story{grid-column:1/6;grid-row:1;padding-top:40px}.dubai-photo-one{grid-column:7/13;grid-row:1}.dubai-clip-one{grid-column:1/4;grid-row:2;margin-top:70px!important}.dubai-photo-two{grid-column:5/10;grid-row:2}.dubai-clip-two{grid-column:10/13;grid-row:2;margin-top:180px!important}.dubai-gallery{grid-column:5/10;grid-row:3;margin-top:30px!important}
@media(max-width:700px){.dreams-composition .dream-film{grid-column:1/-1;grid-row:auto}.dreams-composition .dream-square,.dreams-composition .story-characters,.dreams-composition .dream-exhibition,.dreams-composition .story-exhibition,.dreams-composition .dream-eight,.dreams-composition .dream-nine,.dreams-composition .story-acceptance{grid-row:auto}.dubai-composition{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 15px;margin:65px 0}.dubai-composition>*{grid-row:auto!important;grid-column:auto;margin:0!important;padding:0}.dubai-story,.dubai-photo-one{grid-column:1/-1}.dubai-photo-two{grid-column:2}.dubai-clip-one{grid-column:1}.dubai-clip-two{grid-column:1}.dubai-gallery{grid-column:2;margin-top:60px!important}}
.offf-composition{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:50px 30px;align-items:start;margin-bottom:100px}.offf-composition figure{margin:0}.offf-composition video,.offf-composition img{display:block;width:100%;height:auto}.offf-composition figcaption{font-size:11px;margin-top:12px}.offf-main{grid-column:1/-1}.offf-main video{background:#000}.offf-story{grid-column:2/7;grid-row:2;padding-top:50px}.offf-cover{grid-column:9/13;grid-row:2;margin-top:80px!important}.offf-live{grid-column:1/10;grid-row:3}.offf-public{grid-column:8/13;grid-row:4;padding-top:40px}.offf-credits{grid-column:1/7;grid-row:4;margin-top:90px!important}.offf-credit{grid-column:1/-1}.offf-story .handwritten{display:block;margin-bottom:35px}
@media(max-width:700px){.offf-composition{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 18px}.offf-composition>*{grid-row:auto;grid-column:1/-1;margin:0!important;padding:0}.offf-composition .offf-cover{grid-column:2}.offf-composition .offf-story{grid-column:1/-1}.offf-composition .offf-credits{grid-column:1/-1}.offf-page .art-project-heading h1{font-size:clamp(40px,9vw,70px)}}
.animal-composition,.gotcha-composition{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:55px 30px;align-items:start;margin-bottom:100px}.animal-composition figure,.gotcha-composition figure{margin:0}.animal-composition img,.gotcha-composition video{display:block;width:100%;height:auto}.animal-composition figcaption,.gotcha-composition figcaption{font-size:11px;margin-top:12px}.animal-composition .handwritten,.gotcha-composition .handwritten{display:block;margin-bottom:32px}.animal-intro{grid-column:1/6;grid-row:1;padding-top:50px}.animal-cat{grid-column:7/12;grid-row:1}.animal-geometry{grid-column:8/13;grid-row:2;padding-top:70px}.animal-sheep{grid-column:1/7;grid-row:2;margin-top:50px!important}.animal-chick{grid-column:6/12;grid-row:3;margin-top:35px!important}.animal-rhythm{grid-column:1/5;grid-row:3;padding-top:100px}.animal-credit{grid-column:1/-1}.gotcha-film{grid-column:1/7;grid-row:1}.gotcha-story{grid-column:8/13;grid-row:1;padding-top:80px}.gotcha-room{grid-column:2/6;grid-row:2;padding-top:100px}.gotcha-exhibition{grid-column:8/12;grid-row:2;margin-top:45px!important}.gotcha-credit{grid-column:1/-1}.gotcha-film video{max-height:85vh;object-fit:contain;background:#111}
@media(max-width:700px){.animal-composition,.gotcha-composition{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 18px}.animal-composition>*,.gotcha-composition>*{grid-column:1/-1;grid-row:auto;padding:0;margin:0!important}.animal-composition .animal-cat{grid-column:2}.animal-composition .animal-chick{grid-column:1/-1;width:80%}.gotcha-composition .gotcha-exhibition{grid-column:1/-1;width:85%;justify-self:end}.art-story p{font-size:14px}}
.animal-zebra{grid-column:6/12;grid-row:3;margin-top:35px!important}.animal-zebra video{display:block;width:100%;height:auto}.animal-cubism{grid-column:1/5;grid-row:3;padding-top:90px}.animal-composition .animal-chick{grid-column:1/6;grid-row:4}.animal-composition .animal-rhythm{grid-column:7/13;grid-row:4;padding-top:60px}.animal-ending{grid-column:3/10;grid-row:5;max-width:650px}.animal-credit{grid-row:6}
@media(max-width:700px){.animal-composition .animal-zebra{grid-column:2;grid-row:auto;margin:0!important}.animal-composition .animal-cubism,.animal-composition .animal-chick,.animal-composition .animal-rhythm,.animal-composition .animal-ending,.animal-composition .animal-credit{grid-column:1/-1;grid-row:auto;padding:0}.animal-composition .animal-chick{width:85%}}
.dreams-introduction{display:grid;grid-template-columns:1fr 1fr;gap:8%;max-width:1050px;margin:0 0 95px;font-size:16px;line-height:1.85}.dreams-page .dream-stage{border-top:1px solid #aaa;padding:35px 0 85px}.stage-heading{display:flex;align-items:baseline;gap:25px;margin-bottom:35px}.stage-heading>span{font-family:Anton,sans-serif;font-size:30px;color:#0137cd}.stage-heading h2{font-size:clamp(32px,4.4vw,68px);line-height:1.15;margin:0}.stage-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;align-items:start;margin:0 0 50px}.stage-intro>p{font-size:15px;line-height:1.85;margin:0;max-width:440px}.stage-quote{margin:0;padding:0;border:0}.stage-quote p{font-size:clamp(18px,1.8vw,27px);line-height:1.5;margin:0 0 15px}.stage-quote cite{font-size:12px;font-style:normal}.stage-artworks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;align-items:start}.stage-artworks figure{margin:0}.stage-artworks img{display:block;width:100%;height:auto}.stage-artworks figure:nth-child(2){margin-top:65px}.stage-artworks figure:nth-child(3){margin-top:130px}.hell-artworks{grid-template-columns:1.3fr 1fr;gap:8%}.hell-artworks figure:nth-child(2){margin-top:110px}.dream-show{border-top:1px solid #aaa;display:grid;grid-template-columns:1fr 2fr;gap:50px 7%;padding-top:60px;margin:0 0 100px}.dream-show figure{margin:0}.dream-show video{width:100%;height:auto;display:block}.dream-show figcaption{font-size:11px;margin-top:12px}.dream-show .dream-invitation{grid-column:1/3;width:80%;justify-self:center;margin-top:20px}
@media(max-width:700px){.dreams-introduction,.stage-intro{grid-template-columns:1fr;gap:22px}.dreams-introduction{margin-bottom:50px;font-size:14px}.stage-heading{gap:15px}.stage-heading h2{font-size:32px}.stage-intro{margin-bottom:30px}.stage-artworks{gap:12px}.stage-artworks figure:nth-child(2){margin-top:30px}.stage-artworks figure:nth-child(3){margin-top:60px}.hell-artworks{grid-template-columns:1fr 1fr;gap:15px}.hell-artworks figure:nth-child(2){margin-top:50px}.dreams-page .dream-stage{padding-bottom:50px}.dream-show{grid-template-columns:1fr;gap:30px}.dream-show .dream-invitation{grid-column:auto;width:100%}.stage-quote p{font-size:19px}}
#about{background:#e90109;color:#fff;display:block;overflow:hidden;padding-bottom:80px}#about .numbered-heading{margin-bottom:40px}#about .numbered-heading .handwritten{color:#fff}.about-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}#about .about-copy{margin:0;max-width:620px;padding:0}#about .about-copy p{font-size:clamp(15px,1.35vw,21px);line-height:1.85;margin:0 0 25px}#about .about-copy .about-lead{font-size:clamp(23px,2.4vw,37px);line-height:1.45;margin-bottom:35px}.portrait-wrap{min-width:0}.portrait-playground{position:relative;width:100%;aspect-ratio:1260/1720;isolation:isolate;touch-action:pan-y;user-select:none;-webkit-user-select:none}.portrait-base{position:absolute;left:10.6349%;top:1.1047%;width:86.1905%;height:97.7907%;pointer-events:none}.portrait-piece{position:absolute;padding:0;border:0;background:none;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;z-index:2;min-width:0;box-shadow:none!important}.portrait-piece img{width:100%;height:100%;display:block;pointer-events:none;user-select:none;-webkit-user-drag:none}.portrait-piece:focus-visible{outline:2px dashed #fff;outline-offset:5px}.portrait-piece.is-dragging{cursor:grabbing;filter:drop-shadow(0 5px 6px #0003)}.portrait-caption{position:absolute;left:27%;top:86%;color:#0137cd;font-family:'Homemade Apple',cursive;font-size:clamp(12px,1.5vw,23px);line-height:1.7;transform:rotate(-3deg);pointer-events:none;z-index:1}.portrait-caption svg{position:absolute;left:105%;top:-24%;width:65px;height:70px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.portrait-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:14px 3% 0 10%;font-size:10px;color:#fff}.portrait-toolbar button{background:none;color:inherit;border:0;border-bottom:1px solid #fff8;padding:8px 0;font-size:12px}.portrait-toolbar button:hover{border-color:white}
@media(max-width:700px){.about-layout{grid-template-columns:1fr;gap:35px}#about .about-copy{grid-row:1}#about .about-copy .about-lead{font-size:25px;margin-bottom:25px}#about .about-copy p{font-size:14px}.portrait-wrap{max-width:550px;width:100%;justify-self:center}.portrait-caption{font-size:clamp(13px,3.3vw,20px)}.portrait-caption svg{width:45px;height:55px}.portrait-toolbar{font-size:9px}}
#contact{background:#080808;color:#fff;grid-template-columns:.9fr 1.1fr;gap:55px 8%;align-items:start}#contact .numbered-heading{grid-column:1/-1;margin-bottom:0}#contact .numbered-heading h2{font-size:clamp(30px,4.2vw,70px)}#contact .handwritten{color:#fff}#contact .contact-intro h3{font-size:clamp(55px,6.2vw,105px);line-height:1.12;margin:0 0 28px}#contact .contact-intro h3 span{color:#e90109}#contact .contact-intro>p{font-size:clamp(17px,1.6vw,24px)}#contact form{display:flex;flex-direction:column;gap:25px}#contact form>label,#contact .form-row>label{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#fff}#contact input:not([type=checkbox]),#contact textarea{width:100%;border:0;border-bottom:1px solid #777;background:transparent;color:#fff;padding:13px 0;font-size:14px;border-radius:0;outline-offset:5px}#contact input::placeholder,#contact textarea::placeholder{color:#aaa;opacity:1}#contact input:focus-visible,#contact textarea:focus-visible{outline:2px solid #ec58a8}#contact .brief-choices{margin:0;padding:0;border:0;min-width:0}#contact .brief-choices legend{padding:0;margin-bottom:15px;font-size:13px}#contact .brief-choices>div{display:grid;grid-template-columns:1fr 1fr;gap:13px 20px}#contact .brief-choices label{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.5;cursor:pointer}#contact .brief-choices input{appearance:none;flex:0 0 17px;width:17px;height:17px;margin:1px 0 0;border:1px solid #aaa;border-radius:0;background:none;display:grid;place-content:center;cursor:pointer}#contact .brief-choices input:checked{background:#e90109;border-color:#e90109}#contact .brief-choices input:checked:after{content:'✓';color:#fff;font-size:13px}#contact .submit{color:#fff;background:none;border:0;border-top:1px solid #777;border-bottom:1px solid #777;padding:22px 0;margin:0;display:flex;justify-content:space-between;align-items:center;font-size:23px}#contact .submit span{color:#e90109;font-size:34px}#contact .submit:hover{color:#ec58a8}#contact .form-note,#contact #form-status{margin:0;font-size:11px;color:#bbb;line-height:1.6}#contact #form-status:empty{display:none}.hello-block{margin-top:75px}.hello-block p{font-size:13px;margin-bottom:12px}.hello-block a{display:inline-block;font-size:15px;border-bottom:1px solid #777;padding-bottom:8px}.hello-block a span{display:block;font-size:13px;margin-top:6px}
@media(max-width:700px){#contact{grid-template-columns:1fr;gap:35px}#contact .contact-intro h3{font-size:17vw}#contact .hello-block{margin-top:30px}#contact .brief-choices>div{gap:14px}#contact .numbered-heading h2{font-size:clamp(28px,7vw,44px)}#contact .form-row{grid-template-columns:1fr;gap:25px}}
#contact .brief-choices input{padding:0;min-height:17px;max-height:17px;height:17px;min-width:17px;max-width:17px}
.hello-block .contact-instagram{display:block;width:fit-content;margin-top:28px}.footer-social{display:flex;gap:25px;flex-wrap:wrap;font-size:12px}.footer-social a:hover{text-decoration:underline}
/* The paper tab opens a compact navigation panel on hover or tap. */
#menu{position:fixed;left:auto;bottom:auto;width:min(620px,92vw);height:auto;max-height:calc(100dvh - 130px);overflow:auto;margin:0;padding:24px 35px 28px;background:#e90109;color:#fff;z-index:1000;box-shadow:0 18px 30px #0003;transform-origin:top right}#menu[open]{animation:menu-unfold .2s ease-out}#menu nav{margin:40px 0 0;gap:12px}#menu nav a{font-size:clamp(23px,3vw,43px);letter-spacing:0;display:flex;justify-content:space-between;gap:20px}#menu nav a:hover,#menu nav a:focus-visible{color:#171715}#menu sup{font-size:11px;line-height:2}#menu #close-menu{position:absolute;top:18px;right:25px;background:none;border:0;color:inherit;padding:5px;font-size:11px}#menu>p{margin:25px 0 0;font-size:11px}#menu-button[aria-expanded=true] span{transform:rotate(45deg)}#menu-button span{transition:transform .2s}@keyframes menu-unfold{from{opacity:0;transform:scaleY(.86) translateY(-8px)}to{opacity:1;transform:none}}
#about .about-copy .about-signoff{font-family:'Homemade Apple',cursive;font-size:clamp(19px,1.9vw,29px);line-height:1.75;max-width:420px;margin:40px 0 0 9%;transform:rotate(-4deg);color:#fff}.portrait-caption{left:15%;top:86%;width:77%;text-align:center;font-size:clamp(17px,1.9vw,30px);line-height:1.65;transform:rotate(-2deg)}.portrait-caption svg{left:87%;top:-30%;width:45px;height:55px}
#contact .contact-intro h3{letter-spacing:-.025em;line-height:1.13;margin:0 0 32px}#contact .contact-intro h3 .brief-last-line{display:inline-flex;align-items:baseline;gap:.045em;color:#fff;white-space:nowrap}#contact .contact-intro h3 .brief-question{display:inline-block;color:#e90109;font-size:.94em;line-height:1;transform:translateY(.015em);letter-spacing:0}#contact .form-row{gap:28px}#contact .brief-choices>div{row-gap:16px}#contact .hello-block{margin-top:60px}
@media(max-width:700px){#menu{padding:22px 25px;max-height:calc(100dvh - 110px)}#menu nav{margin-top:32px}#menu nav a{font-size:clamp(22px,5.8vw,34px)}#about .about-copy .about-signoff{font-size:21px;margin:30px 0 0 8%}.portrait-caption{font-size:clamp(16px,4.1vw,25px)}.portrait-caption svg{width:32px;height:42px;left:88%}#contact .contact-intro h3{font-size:16vw}#contact .hello-block{margin-top:30px}}
@media(prefers-reduced-motion:reduce){#menu[open]{animation:none}}

/* Full-screen navigation, opened from the paper tab. */
#menu{inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;padding:clamp(65px,9vh,100px) 7vw 35px;box-shadow:none;overscroll-behavior:contain}
#menu[open]{display:flex;flex-direction:column;animation:menu-fullscreen .35s cubic-bezier(.2,.7,.3,1)}
#menu nav{margin:0;gap:clamp(10px,2vh,22px);width:100%;flex:1;justify-content:center}
#menu nav a{font-size:clamp(30px,min(6.8vw,8vh),104px);line-height:1.1;letter-spacing:-.015em;transition:color .15s}
#menu nav a:hover,#menu nav a:focus-visible,#menu #close-menu:hover,#menu #close-menu:focus-visible,header #menu-button:hover{color:#0137cd}
#menu sup{font-size:13px;line-height:2}
#menu #close-menu{top:25px;right:6vw;font-size:14px;padding:12px}
#menu>p{margin:25px 0 0;font-size:12px}
@keyframes menu-fullscreen{from{clip-path:inset(0 0 100% 80%)}to{clip-path:inset(0)}}
.animation-label{align-items:flex-start}.animation-label>div{min-width:0}.animation-label .animation-context{max-width:none;text-align:left;font-size:clamp(14px,1.4vw,19px);margin:8px 0 0}.animation-label .animation-credits{flex-shrink:0;margin:8px 0 0}
@media(max-width:700px){#menu{padding:75px 6vw 30px}#menu nav a{font-size:clamp(26px,min(7vw,7vh),48px)}#menu sup{font-size:10px}#menu>p{font-size:10px}.animation-label .animation-credits{margin-top:15px}}
@media(prefers-reduced-motion:reduce){#menu[open]{animation:none}#menu nav a{transition:none}}
/* Align the inline player to the visible top of the headline. */
.dream-hero{align-items:start;overflow:visible}
.dream-hero>.dream-stage{overflow:visible;align-self:start}
.dream-hero>.dream-stage.showing-reel{aspect-ratio:auto;padding-top:var(--hero-cap-top,8px)}
.dream-hero .inline-reel{position:relative;inset:auto;justify-content:flex-start}
.dream-hero .inline-reel video{display:block;flex:none;height:auto;aspect-ratio:16/9;object-fit:contain}
.dream-hero #reel:focus:not(:focus-visible){outline:none}
.dream-hero #cloud-loop{object-fit:contain;mix-blend-mode:screen}
@media(max-width:700px){.dream-hero>.dream-stage.showing-reel{padding-top:0}}
/* Wider cloud field, while the showreel retains its aligned column. */
@media(min-width:701px){
 .dream-hero>.dream-stage:not(.showing-reel){width:112%;margin-left:-12%;aspect-ratio:16/10}
 .dream-hero .dream-star{width:17%;left:-2%;top:3%}
}
@media(max-width:700px){.dream-hero .dream-star{width:17%;left:0;top:6%}}
@media(hover:hover) and (pointer:fine){
 html,body,body *,body *::before,body *::after{cursor:url('assets/hand-cursor.png') 14 1,auto!important}
 body input:not([type=checkbox]),body textarea,[contenteditable=true]{cursor:text!important}
 hover-word{display:inline-block;position:relative;transform-origin:center 65%;transition:transform .14s ease,color .14s ease,text-shadow .14s ease}
 hover-word:hover{color:#0137cd;transform:scale(1.08) translateY(-1px);text-shadow:0 2px 1px #0002;z-index:1}
 #services hover-word:hover{color:#0137cd;text-shadow:0 0 2px #fff,0 0 5px #fff}
}
@media(prefers-reduced-motion:reduce){hover-word{transition:none}hover-word:hover{transform:none}}

@media(min-width:701px){.dream-hero .dream-star{top:-2%}}
.dreams-hero-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:6%;align-items:center;margin-bottom:65px}
.dreams-hero-layout .art-project-heading{margin-bottom:0;min-width:0}
.dreams-hero-layout h1{font-size:clamp(54px,7.4vw,135px)}
.dreams-hero-film{margin:0;min-width:0}
.dreams-hero-film video{display:block;width:100%;max-height:70vh;object-fit:contain;background:#050505}
.dreams-hero-film figcaption{margin-top:12px;font-size:11px}
@media(max-width:700px){.dreams-hero-layout{grid-template-columns:1fr;gap:30px;margin-bottom:40px}.dreams-hero-layout h1{font-size:clamp(48px,12vw,84px)}.dreams-hero-film video{max-height:65vh}}
/* A centred, symmetric introduction beneath the animation. */
.dreams-hero-layout{display:flex;flex-direction:column;align-items:center;gap:40px;max-width:1100px;margin:0 auto 45px;text-align:center}
.dreams-hero-film{width:100%}
.dreams-hero-film video{width:100%;height:auto;max-height:none;aspect-ratio:16/9}
.dreams-hero-film figcaption{text-align:center}
.dreams-hero-layout .art-project-heading{width:100%;text-align:center}
.dreams-hero-layout .art-project-heading h1{margin-left:auto;margin-right:auto;font-size:clamp(48px,7vw,110px)}
.dreams-hero-layout .art-deck{margin-left:auto;margin-right:auto;max-width:750px}
.dreams-page>.dreams-introduction{max-width:1100px;margin:0 auto 85px;grid-template-columns:1fr 1fr;gap:6%}
@media(max-width:700px){.dreams-hero-layout{gap:26px;margin-bottom:30px}.dreams-page>.dreams-introduction{grid-template-columns:1fr;gap:20px;margin-bottom:50px}}
/* Kostelle: the same editorial rhythm as the artistic projects. */
.kostelle-content{max-width:1450px;margin:70px auto}.kostelle-opening{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start;margin-bottom:100px}.kostelle-opening .art-deck{margin:0;max-width:540px}.kostelle-page h2{font-weight:400}.kostelle-chapter{border-top:1px solid #aaa;padding:35px 0 85px}.kostelle-chapter .stage-heading{margin-bottom:8px}.kostelle-subtitle{font-size:12px;margin:0 0 65px}.kostelle-letter-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;margin-bottom:70px}.kostelle-letter{margin:0;transform:rotate(-3deg);padding:15px}.kostelle-letter p{font-family:'Homemade Apple',cursive;color:#0137cd;font-size:clamp(20px,2.15vw,32px);line-height:1.95;margin:0 0 22px}.kostelle-letter cite{font-style:normal;font-size:11px}.kostelle-page figure{margin:0;min-width:0}.kostelle-page figure img,.kostelle-page figure video{display:block;width:100%;height:auto;object-fit:contain}.kostelle-page figcaption{font-size:11px;line-height:1.6;margin-top:12px}.kostelle-motion-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:start;margin-bottom:100px}.kostelle-motion-grid figure:nth-child(2){margin-top:100px}.kostelle-language{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;align-items:center;margin-bottom:80px}.kostelle-references{display:grid;grid-template-columns:.65fr 1fr;gap:22px;align-items:center}.kostelle-print-grid,.kostelle-banner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4%;align-items:start}.kostelle-print-grid figure:nth-child(2),.kostelle-banner-grid figure:nth-child(2){margin-top:65px}.kostelle-print-grid figure:nth-child(3){margin-top:130px}.kostelle-madrid-intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-bottom:60px}.kostelle-madrid-intro>h2{font-size:clamp(30px,4vw,62px);line-height:1.2;margin:0}.kostelle-banner-grid{margin-bottom:100px}.kostelle-show-grid{display:grid;grid-template-columns:1fr .85fr;gap:14%;max-width:1050px;margin:0 auto}.kostelle-show-grid figure:nth-child(2){margin-top:110px}.kostelle-show-grid video{max-height:80vh}.kostelle-page .case-cover{max-height:85vh}
@media(max-width:700px){.kostelle-content{margin-top:40px}.kostelle-opening,.kostelle-letter-grid,.kostelle-language,.kostelle-madrid-intro{grid-template-columns:1fr;gap:28px;margin-bottom:45px}.kostelle-subtitle{margin-bottom:35px}.kostelle-letter{padding:15px 10px}.kostelle-motion-grid{gap:18px;margin-bottom:50px}.kostelle-motion-grid figure:nth-child(2){margin-top:40px}.kostelle-print-grid,.kostelle-banner-grid{gap:12px}.kostelle-print-grid figure:nth-child(2),.kostelle-banner-grid figure:nth-child(2){margin-top:30px}.kostelle-print-grid figure:nth-child(3){margin-top:60px}.kostelle-page figcaption{font-size:9px}.kostelle-chapter{padding-bottom:45px}.kostelle-banner-grid{margin-bottom:50px}.kostelle-show-grid{gap:20px}.kostelle-show-grid figure:nth-child(2){margin-top:55px}.kostelle-references{max-width:480px}.kostelle-show-grid video{max-height:none}}
.kostelle-moodboard{display:grid;grid-template-columns:.8fr 1.1fr .8fr .8fr;gap:18px;align-items:center;margin:0 0 70px}.kostelle-moodboard p{grid-column:1/-1;font-size:11px;margin:0}.kostelle-moodboard figure:nth-child(even){padding-top:35px}@media(max-width:700px){.kostelle-moodboard{gap:10px;margin-bottom:40px}.kostelle-moodboard figure:nth-child(even){padding-top:20px}.kostelle-moodboard p{font-size:9px}}
