@charset "UTF-8";
/* Cinematic presentation shared by the portfolio and course catalogue. */
.cinematic-site{--light-warm:221,214,194;--light-cool:190,207,220;--motion-ease:cubic-bezier(.19,1,.22,1)}
.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:100;pointer-events:none;background:#ffffff05}.scroll-progress>span{display:block;width:100%;height:100%;background:#e5dfc9;box-shadow:0 0 12px #dfd3b680;transform:scaleX(var(--page-progress,0));transform-origin:left}
.motion-toggle{position:fixed;right:18px;bottom:18px;z-index:60;width:32px;height:32px;border:1px solid #ffffff38;background:#101214b8;backdrop-filter:blur(12px);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#c7c9c3;transition:border-color .3s,background .3s}.motion-toggle:hover{background:#2a2d2e;border-color:#b4b8b5}.motion-toggle svg{width:13px;height:13px}.motion-toggle[aria-pressed=false]{color:#888f91}
.scene-lights{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;mix-blend-mode:screen}.scene-orb{position:absolute;display:block;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(var(--light-cool),.32),rgba(var(--light-cool),.08) 33%,transparent 68%);width:58vw;max-width:1000px;left:45%;top:1%;transform:translate3d(var(--glow-x,0px),var(--glow-y,0px),0);opacity:.7}.scene-orb--warm{width:46vw;left:11%;top:43%;background:radial-gradient(circle,rgba(var(--light-warm),.17),transparent 65%);opacity:.5}.scene-beam{position:absolute;display:block;width:125%;height:46%;left:12%;bottom:-7%;background:linear-gradient(146deg,transparent 34%,rgba(var(--light-cool),.015) 41%,rgba(var(--light-cool),.14) 49%,rgba(var(--light-cool),.035) 57%,transparent 65%);transform-origin:75% 50%;mask-image:radial-gradient(ellipse at center,#000 10%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at center,#000 10%,transparent 70%);opacity:.65}.scene-horizon{position:absolute;display:block;width:73%;height:1px;left:19%;bottom:13%;background:linear-gradient(90deg,transparent,#d9d6c580,transparent);box-shadow:0 0 22px 4px #cad3d51c;opacity:.5}
.motion-on .scene-orb{animation:ambient-breathe 12s ease-in-out infinite alternate}.motion-on .scene-orb--warm{animation:ambient-warm 15s ease-in-out infinite alternate}.motion-on .scene-beam{animation:light-sweep 16s ease-in-out infinite alternate}.motion-on .scene-horizon{animation:horizon-light 9s ease-in-out infinite alternate}
@keyframes ambient-breathe{from{opacity:.3;scale:.94}to{opacity:.85;scale:1.12}}@keyframes ambient-warm{from{opacity:.28;translate:-4% 0}to{opacity:.7;translate:5% -4%}}@keyframes light-sweep{from{rotate:-6deg;opacity:.25}to{rotate:6deg;opacity:.8}}@keyframes horizon-light{from{opacity:.2;scale:.92 1}to{opacity:.65;scale:1.07 1}}
.hero .hero-image{z-index:0;transform:translate3d(var(--photo-x,0px),var(--photo-y,0px),0) scale(var(--photo-scale,1.025));transform-origin:70% 50%;will-change:transform}.hero .hero-shade{z-index:1;background:linear-gradient(90deg,#05060735 15%,transparent 68%),linear-gradient(0deg,#08090a 0%,transparent 28%,transparent 85%,#08090a33)}.hero .scene-lights{z-index:2}.hero .hero-copy,.hero .hero-achievements{z-index:3}.hero .hero-bottom{z-index:4}.hero-copy{top:47%;width:59%;transform:translate3d(0,calc(-50% + var(--hero-copy-drift,0px)),0);opacity:var(--hero-copy-opacity,1)}.hero h1{display:flex;gap:.14em;align-items:baseline;font-size:clamp(48px,5.8vw,100px);line-height:1.03;letter-spacing:-3.5px;background:linear-gradient(115deg,#a8aaa4 0%,#e5e4db 20%,#fff 28%,#b3b5ae 42%,#f4f2e7 65%,#a3a79e 85%,#dddccd);background-size:230% 100%;background-clip:text;-webkit-background-clip:text;color:transparent}.hero h1>span{display:block}.hero-bio{max-width:415px;font-size:15px;line-height:1.65;margin-top:27px}.hero-copy>.eyebrow{color:#bdbdb1;letter-spacing:2.4px;font-size:9px;margin-bottom:23px}.hero .button{margin-top:30px;background:#1618192b;backdrop-filter:blur(8px)}.hero-achievements{max-width:none;border-top-color:#e3e1c929;padding-top:23px}.achievement-icon{color:#d7cfb6;filter:drop-shadow(0 0 8px #d6c99f26)}.achievement-badge strong{font-size:30px}.badge-label{color:#aab0b0}.motion-on .hero h1,.motion-on .courses-hero h1{animation:metal-sheen 14s ease-in-out infinite alternate}.motion-on .hero .hero-image{animation:portrait-illuminate 1.8s ease-out both}.motion-on .scroll-link span,.motion-on .courses-hero-bottom>a>span{animation:scroll-cue 3.2s ease-in-out infinite}
@keyframes metal-sheen{from{background-position:0% 50%}to{background-position:100% 50%}}@keyframes portrait-illuminate{from{filter:brightness(.65)}to{filter:brightness(.98)}}@keyframes scroll-cue{0%,65%,100%{translate:0 0;opacity:.7}80%{translate:0 5px;opacity:1}}
.motion-on [data-hero-item]{animation:hero-arrive 1.2s var(--motion-ease) both;animation-delay:var(--entry-delay,0ms)}@keyframes hero-arrive{from{opacity:0;transform:translate3d(0,24px,0);filter:blur(4px)}to{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}}
.motion-ready.motion-on [data-reveal]{opacity:0;transform:translate3d(0,28px,0);filter:blur(2px);transition:opacity 1s var(--motion-ease),transform 1.15s var(--motion-ease),filter .85s ease;transition-delay:var(--reveal-delay,0ms)}.motion-ready.motion-on [data-reveal].is-visible{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
.button{position:relative;isolation:isolate;overflow:hidden;transition:background .35s,color .35s,border-color .35s,box-shadow .4s,transform .4s}.button:before{content:"";position:absolute;inset:-80% -45%;background:linear-gradient(110deg,transparent 38%,#ffffff35 50%,transparent 61%);transform:translateX(-95%) skewX(-10deg);transition:transform .8s ease;z-index:-1;pointer-events:none}.button:hover:before,.button:focus-visible:before{transform:translateX(95%) skewX(-10deg)}.button:hover{box-shadow:0 0 30px #f0e9ce12;transform:translateY(-2px)}.button span{transition:transform .35s}.button:hover span{transform:translate(2px,-2px)}.text-link,.experience-link,.course-detail-link{transition:color .3s,border-color .3s}.text-link:hover,.experience-link:hover,.course-detail-link:hover{color:#fff;border-color:#d9dfd8}.section-label{position:relative}.section-label:after{content:"";position:absolute;left:0;bottom:-1px;width:30%;height:1px;background:linear-gradient(90deg,#d4ccaf90,transparent);transform-origin:left;transition:width 1.2s var(--motion-ease)}.section-pad:hover>.section-label:after{width:60%}
.glow-surface{isolation:isolate}.glow-surface:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at var(--surface-x,50%) var(--surface-y,45%),rgba(var(--light-cool),.11),transparent 62%);opacity:.65;transition:opacity .6s}.glow-surface:hover:before{opacity:1}.site-preview-frame{position:relative;z-index:1;transition:transform .8s var(--motion-ease),border-color .5s,box-shadow .8s;box-shadow:0 35px 80px #0007}.site-preview-frame:hover{transform:perspective(1100px) rotateY(-2deg) translateY(-6px);box-shadow:0 35px 85px #0009,0 0 30px #d6d7cb14}.boosted-preview{background:radial-gradient(ellipse at 50% 45%,#2b3033,#111416 70%)}.project-panel{animation:project-arrive .75s var(--motion-ease)}@keyframes project-arrive{from{opacity:.25;transform:translate3d(0,14px,0)}to{opacity:1;transform:translate3d(0,0,0)}}.project-tabs button[aria-selected=true]:after{box-shadow:0 0 14px #d5cfaf70}.media-stage{overflow:hidden}.media-stage>img{transition:transform 1.3s var(--motion-ease),filter 1.3s;transform-origin:50% 40%}.media-stage:hover>img{transform:scale(1.025);filter:saturate(.85)}.media-caption{position:relative;z-index:1;background:#08090a}.camera-visual>img{transition:transform 1.3s var(--motion-ease)}.camera-visual:hover>img{transform:scale(1.025)}
.cinema{height:108svh;min-height:700px;background:#08090a}.cinema>img{position:absolute;top:-8%;height:116%;transform:translate3d(0,var(--cinema-y,0px),0) scale(var(--cinema-scale,1.05));will-change:transform;filter:saturate(.18) brightness(.55)}.cinema:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(132deg,transparent 40%,#dce5e60c 48%,transparent 64%);mix-blend-mode:screen}.cinema-shade{z-index:1}.cinema-copy,.photo-caption{z-index:3}.cinema h2{font-size:clamp(40px,5.2vw,90px);letter-spacing:-2.6px}.cinema-copy .button{backdrop-filter:blur(10px);background:#08090a26}.awards{background:radial-gradient(ellipse at 5% 15%,#212423 0%,#0d0f10 38%,#090b0c 70%);color:var(--text)}.awards .section-label{border-color:var(--line);color:#858f90}.awards .section-label>span:first-child{color:#c0c5bf}.awards-photo img{filter:saturate(.28);border:1px solid #ffffff12}.awards-photo>span,.awards-copy>.eyebrow{color:#8c9695}.award-row,.archive,.experience,.experience-nav{border-color:var(--line)}.award-row p,.experience-heading>p{color:#adb5b5}.award-row .muted{color:#858f91}.experience-jump{border-color:var(--line);color:#c4cdc8}.experience-heading .eyebrow,.experience-group-heading>span{color:#899694}.experience-nav a{color:#a7b2b2}.experience-nav a:hover{color:#f5f7ef}.experience-list li{border-color:#ffffff20}.experience-list p{color:#9da9ab}.experience-year{color:#7f9294}.experience-link{color:#c0c9c5;border-color:#8b969066}.experience-group-heading h3{color:#e6ebe6}.contact{background:radial-gradient(ellipse at var(--contact-light-x,50%) 90%,#2c3030 0%,#111516 32%,#08090a 70%)}
.courses-hero{background:#07090a}.courses-hero-light{background:radial-gradient(ellipse at 76% 42%,#2c3134 0%,#13171a 33%,#080a0b 70%)}.courses-hero .scene-lights{z-index:0}.courses-hero-copy{z-index:3;transform:translate3d(0,var(--hero-copy-drift,0px),0);opacity:var(--hero-copy-opacity,1)}.courses-hero h1{font-size:clamp(56px,6.5vw,112px);background:linear-gradient(115deg,#a8aaa4 0%,#f3f0e3 22%,#fff 30%,#a8b0ac 46%,#e9e7dc 65%,#a5a69f 85%,#dddccd);background-size:230% 100%;background-clip:text;-webkit-background-clip:text}.courses-hero-art{perspective:1000px;transform-style:preserve-3d;transform:translate3d(var(--art-x,0px),var(--art-y,0px),0) rotateY(var(--art-rotate,0deg));will-change:transform}.courses-hero-art img{filter:saturate(.7) brightness(.9) contrast(1.05) drop-shadow(0 35px 30px #000a) drop-shadow(0 0 35px #dde8e312)}.motion-on .hero-course-ai{animation:course-ai-float 9s ease-in-out infinite alternate}.motion-on .hero-course-film{animation:course-film-float 11s ease-in-out infinite alternate}.courses-hero .scene-beam{left:-10%;bottom:-2%;width:155%;height:65%;opacity:.8}.courses-hero .scene-horizon{bottom:9%;left:45%;width:53%}.courses-hero .scene-orb--warm{left:25%;top:16%;opacity:.5}
@keyframes course-ai-float{from{transform:translateY(6px) rotate(-5deg)}to{transform:translateY(-10px) rotate(-3deg)}}@keyframes course-film-float{from{transform:translateY(-5px) rotate(3deg)}to{transform:translateY(10px) rotate(1.8deg)}}
.course-jumps>a{transition:background .5s}.course-jumps>a:hover{background:linear-gradient(0deg,#e5ead60c,transparent)}.course-product-art{perspective:1100px;isolation:isolate}.course-product-art:after{content:"";position:absolute;bottom:4%;left:15%;right:15%;height:23%;z-index:0;background:radial-gradient(ellipse,#e2e2cd24,transparent 65%);transform:perspective(700px) rotateX(66deg);pointer-events:none}.course-product-art>img{transform:translate3d(0,var(--stage-shift,0px),0) rotateY(var(--stage-tilt,0deg));filter:saturate(.78) brightness(.93) drop-shadow(0 35px 25px #0009) drop-shadow(0 0 35px #d7e2d309);will-change:transform}.ai-product{background:radial-gradient(ellipse at 52% 42%,#2c3328 0%,#0e1210 48%,#080a09 78%)}.film-product{background:radial-gradient(ellipse at 50% 42%,#2b2632 0%,#14131a 44%,#0c0e10 76%)}.film-block{background:#0c0e10}.course-product-copy>h2{font-size:clamp(38px,4.2vw,68px)}.course-benefits{gap:50px}.course-benefits article>span{color:#b5bba8}.course-status>span{box-shadow:0 0 9px #d7dd9c55}.premium-section{background:radial-gradient(ellipse at 73% 38%,#252a2b,#0c0f11 65%);color:#e9eeeb}.premium-section .section-label{border-color:var(--line);color:#879393}.premium-section .section-label>span:first-child{color:#c2c8bd}.premium-grid .eyebrow{color:var(--accent)}.premium-grid p:not(.eyebrow){color:#a7b4b5}.premium-grid figure>img{filter:saturate(.72) drop-shadow(0 30px 30px #0008);transform:translate3d(0,var(--stage-shift,0px),0) rotateY(var(--stage-tilt,0deg));will-change:transform}.premium-grid figcaption{color:#829594}.premium-section .button-dark{background:#e2e5d9;color:#101514}.premium-section .button-dark:hover{background:#fff}.course-community strong,.satisfaction strong,.course-facts strong{font-variant-numeric:tabular-nums}.author-photo{overflow:hidden}.author-photo>img{transform:translate3d(0,var(--author-y,0px),0) scale(1.04);will-change:transform}.courses-bottom{background:radial-gradient(ellipse at 50% 100%,#31383a,#0d1012 48%,#08090a 75%)}
@media(min-width:1000px){.course-product{min-height:85svh;align-items:start}.course-product-art{position:sticky;top:105px;align-self:start;min-height:68svh}.course-product-copy{padding-top:65px;padding-bottom:65px}.course-product-art>img{width:100%;max-width:820px}.course-product-reverse .course-product-art{grid-row:1;grid-column:2}.course-product-reverse .course-product-copy{grid-row:1;grid-column:1}}
@media(min-width:701px){.hero{min-height:760px}.projects{padding-left:0;padding-right:0;background:#090b0c}.projects>.section-label,.projects>.section-heading,.projects>.project-tabs{margin-left:var(--pad);margin-right:var(--pad)}.project-panel{grid-template-columns:1.35fr 1fr;min-height:72svh}.project-visual{min-height:72svh}.project-copy{background:transparent;padding:clamp(35px,5vw,85px)}.project-copy h3{font-size:clamp(37px,4vw,66px)}.project-tabs{gap:50px}.projects>.section-heading{margin-top:55px;margin-bottom:40px}.hero .hero-index{margin-right:0}}
@media(min-width:701px) and (max-height:740px){.hero-copy{top:44%}.hero h1{font-size:clamp(43px,5.8vw,81px)}.hero-bio{font-size:14px;max-width:400px}.hero-copy>.eyebrow{margin-bottom:23px}.courses-hero-copy{padding-top:145px}.courses-hero h1{font-size:clamp(52px,6vw,90px)}}
@media(max-width:1000px) and (min-width:701px){.hero h1{font-size:5.7vw;letter-spacing:-2px}.hero-copy{width:61%}.hero-bio{font-size:13px;max-width:340px}.project-panel{grid-template-columns:1.1fr 1fr}.project-copy{padding:32px}.cinema h2{font-size:55px}}
@media(max-width:700px){.hero-copy{top:auto;bottom:190px;width:auto;transform:translate3d(0,var(--hero-copy-drift,0px),0)}.hero h1{display:block;font-size:clamp(60px,17vw,106px);line-height:.91;letter-spacing:-3px}.hero h1>span+span{margin-top:4px}.hero-copy>.eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:16px}.hero-bio{font-size:14px;max-width:330px;margin-top:19px}.hero .button{margin-top:23px}.hero .hero-shade{background:linear-gradient(0deg,#08090a 9%,#08090af5 24%,#08090a55 53%,transparent 73%,#08090a66 100%)}.hero-achievements{padding-top:18px}.achievement-badge strong{font-size:23px}.hero .hero-image{transform-origin:72% 35%;will-change:auto}.scene-orb{width:110vw;left:20%;top:7%;opacity:.5}.scene-orb--warm{width:110vw;left:-25%;top:28%;opacity:.35}.scene-beam{width:180%;height:40%;left:-25%;bottom:20%;opacity:.25}.scene-horizon{bottom:12%;width:88%;left:6%;opacity:.2}.motion-toggle{width:28px;height:28px;right:11px;bottom:11px;background:#131719cc}.hero-bottom{padding-right:20px}.cinema{height:92svh;min-height:660px}.cinema h2{font-size:39px;letter-spacing:-1.5px}.cinema>img{will-change:auto}.experience-list li:first-child{border-color:#ffffff20}.course-product-copy>h2{font-size:39px}.course-benefits{gap:26px}.courses-hero h1{font-size:clamp(44px,12.3vw,80px);letter-spacing:-2px}.courses-hero-art{will-change:auto}.courses-hero-art img{filter:saturate(.8) brightness(.94) drop-shadow(0 20px 22px #0009)}.courses-hero .scene-orb{top:4%;left:10%;width:120vw}.courses-hero .scene-orb--warm{left:-12%;top:12%}.courses-hero .scene-beam{bottom:43%;height:44%;left:-30%;width:170%}.courses-hero .scene-horizon{bottom:53%;left:10%;width:85%}.motion-on .hero-course-ai{animation-name:course-ai-float-mobile}.motion-on .hero-course-film{animation-name:course-film-float-mobile}.course-product-art>img,.premium-grid figure>img,.author-photo>img{will-change:auto}.site-preview-frame:hover{transform:none}.button:hover{transform:none}.courses-hero-bottom{padding-right:20px}.product-caption{font-size:6px}.satisfaction strong{font-size:52px}.cinematic-site .footer{padding-bottom:55px}}
@keyframes course-ai-float-mobile{from{transform:translateY(3px) rotate(-5deg)}to{transform:translateY(-5px) rotate(-3deg)}}@keyframes course-film-float-mobile{from{transform:translateY(-3px) rotate(3deg)}to{transform:translateY(5px) rotate(2deg)}}
@media(max-width:360px){.hero-bio{font-size:13px}.achievement-badge strong{font-size:21px}.courses-hero h1{font-size:43px;letter-spacing:-1.8px}.course-product-copy>h2{font-size:35px}.satisfaction strong{font-size:43px}}
.motion-off *, .motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off [data-reveal],.motion-off [data-hero-item]{opacity:1!important;filter:none!important;transform:none!important}.motion-off .hero-image,.motion-off .courses-hero-art,.motion-off .course-product-art>img,.motion-off .premium-grid figure>img{transform:none!important;filter:none}.motion-off .hero-copy{opacity:1!important}.motion-off .site-preview-frame:hover,.motion-off .camera-visual:hover>img,.motion-off .media-stage:hover>img{transform:none}.motion-off .scene-orb{opacity:.42}.motion-off .scene-orb--warm{opacity:.25}.motion-off .scene-beam{opacity:.3}
@media(prefers-reduced-motion:reduce){.cinematic-site *,.cinematic-site *:before,.cinematic-site *:after{animation:none!important;transition:none!important}.motion-ready [data-reveal],.motion-ready [data-hero-item]{opacity:1!important;filter:none!important;transform:none!important}.hero .hero-image,.courses-hero-art,.course-product-art>img,.premium-grid figure>img{transform:none!important}.cinematic-site{scroll-behavior:auto}.hero-copy{opacity:1!important}}

/* Italic glyphs extend beyond their advance width; keep the final R inside the gradient paint area. */
.hero h1>span:last-child{padding-right:.18em}
