@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/dm-sans-latin-400-normal.0471snlmja818.woff2)format("woff2"),url(../media/dm-sans-latin-400-normal.40quu04grbhf8.woff)format("woff")}
@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/dm-sans-latin-500-normal.0brn-8r9pdr2e.woff2)format("woff2"),url(../media/dm-sans-latin-500-normal.0jcw8phz0eanr.woff)format("woff")}
@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/dm-sans-latin-600-normal.0oone78si629l.woff2)format("woff2"),url(../media/dm-sans-latin-600-normal.40ad7xuawyzt9.woff)format("woff")}
@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(../media/instrument-serif-latin-400-normal.3_vslfxq_--4i.woff2)format("woff2"),url(../media/instrument-serif-latin-400-normal.2maraz2ovyahx.woff)format("woff")}
@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(../media/instrument-serif-latin-400-italic.1bk2-9tco4m7m.woff2)format("woff2"),url(../media/instrument-serif-latin-400-italic.3_-8f-v73506e.woff)format("woff")}
html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
:root{--ink:#172b40;--paper:#eaf3ff;--muted:#506579;--accent:#35658d;--line:#172b403b;--surface:#f5f9ff;--surface-blue:#d9eafa;--surface-deep:#bdd7ef;--highlight:#fbfdff;--nav-surface:#eaf3fff5;--ambient-primary:#eaf3ff;--ambient-secondary:#d4e8fb;--ambient-accent:#bdd6ee;--mood-detail:#386c96;--project-blue:#a4c9e9;--project-soft:#d2e3f1;--project-grid:#172b401f;--art-rule:#172b4052;--shadow:#172b4026;--serif:"Instrument Serif", Georgia, serif;--sans:"DM Sans", Arial, sans-serif;--mono:"Courier New", monospace;--gutter:clamp(24px, 4.3vw, 90px)}*{box-sizing:border-box}html{scroll-padding-top:96px}body{background:var(--paper);color:var(--ink);isolation:isolate;font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}::selection{background:var(--surface-deep);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:7px}input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}em{font-family:var(--serif);font-weight:400}h2{letter-spacing:-.065em;font-size:clamp(50px,7.5vw,120px);line-height:.99}p{line-height:1.65}.mono,.eyebrow,.section-label,.discipline,.experience-meta,.experience-context,.education-kind,.education-date,.expertise-subtitle,.expertise-index,.footer-line{font-family:var(--mono);letter-spacing:.055em;font-size:12px}.section{padding:120px var(--gutter)}.section-label{align-items:center;gap:28px;margin-bottom:88px;display:flex}.label-line{opacity:.3;background:currentColor;flex:1;height:1px}.section-label>span:last-child:not(.label-line){text-align:right}.skip-link{top:10px;left:var(--gutter);background:var(--paper);color:var(--ink);z-index:200;padding:12px 20px;position:fixed;transform:translateY(-180%)}.skip-link:focus{transform:none}.text-link{border-bottom:1px solid;align-items:center;gap:30px;padding:13px 0;font-size:14px;display:inline-flex}.link-plus{font-size:23px;font-weight:400;line-height:1;transition:transform .4s}.text-link:hover .link-plus{transform:rotate(90deg)}.text-link:hover{color:var(--accent)}.navigation{z-index:80;height:82px;padding:0 var(--gutter);background:var(--nav-surface);color:var(--ink);border-bottom:1px solid var(--line);align-items:center;gap:32px;display:flex;position:fixed;inset:0 0 auto}.wordmark{letter-spacing:-.055em;font-size:27px;font-weight:600;line-height:1}.wordmark span{color:var(--accent)}.nav-links{align-items:center;gap:28px;margin:auto;display:flex}.nav-links a,.nav-contact{font-size:14px;position:relative}.nav-links a:after{content:"";background:var(--accent);transform-origin:0;height:1px;transition:transform .3s;position:absolute;bottom:-7px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover:after,.nav-links a[aria-current]:after{transform:scaleX(1)}.nav-contact{align-items:center;gap:12px;display:flex}.github-icon{fill:currentColor;width:16px;height:16px}.menu-button{background:0 0;border:0;padding:12px 0;display:none}.reading-progress{background:var(--mood-detail);transform-origin:0;height:2px;position:absolute;inset:auto 0 -1px;transform:scaleX(0)}.hero{isolation:isolate;height:auto;position:relative}.hero-stage{height:auto;min-height:max(740px,100svh);padding:118px var(--gutter) 26px;flex-direction:column;display:flex;position:relative;top:0;overflow:hidden}.hero-topline{color:var(--muted);justify-content:space-between;gap:24px;display:flex}.local-clock{white-space:nowrap;font-variant-numeric:tabular-nums;gap:10px;display:inline-flex}.hero-title-wrap{margin:auto 0;position:relative}.hero-title-caption{color:var(--accent);margin-bottom:22px;display:block}.hero-name{letter-spacing:-.075em;font-size:clamp(80px,16.9vw,340px);line-height:.81}.hero-name-row{justify-content:space-between;align-items:baseline;display:flex;position:relative}.hero-name-row .split-text{white-space:nowrap}.hero-last{margin-top:25px}.hero-karol{letter-spacing:-.04em;align-self:center;margin-left:24px;font-size:clamp(45px,5vw,100px)}.hero-asterisk{letter-spacing:0;color:var(--accent);align-self:center;margin-left:20px;font-size:7.5vw;font-weight:400}.split-char{display:inline-block}.hero-reveal{flex-direction:column;justify-content:center;align-items:center;margin-top:56px;display:flex;position:relative}.hero-reveal>.mono{color:var(--accent);margin-bottom:25px}.hero-reveal p{text-align:center;letter-spacing:-.055em;font-size:clamp(40px,6.7vw,110px);line-height:1.05}.motion-hero .hero{height:180svh}.motion-hero .hero-stage{height:100svh;position:sticky}.motion-hero .hero-reveal{visibility:hidden;opacity:0;margin:0;position:absolute;inset:0}.hero-bottom{grid-template-columns:1fr 1fr auto;align-items:end;gap:40px;margin-top:auto;display:grid}.hero-bottom p{color:var(--muted);font-size:14px}.scroll-cue{align-items:center;gap:16px;min-height:44px;display:flex}.scroll-track{border:1px solid var(--line);border-radius:12px;width:17px;height:39px;display:inline-block;position:relative}.scroll-track span{background:var(--accent);width:1px;height:11px;position:absolute;top:8px;left:7px}.hero-edge{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;margin-top:32px;padding-top:17px;display:flex}.about{border-top:1px solid var(--line);background:0 0;padding-top:100px}.about-statement{grid-template-columns:1fr 3fr;align-items:start;display:grid}.about-marker{font-family:var(--serif);letter-spacing:-.09em;color:var(--accent);font-size:clamp(50px,7vw,112px);font-style:italic;line-height:1}.about-statement h2{font-size:clamp(60px,8.6vw,150px);line-height:1.05}.about-statement h2 em{color:var(--accent)}.about-bottom{grid-template-columns:1fr 1fr;gap:80px;margin-top:95px;display:grid}.about-bottom>.mono{color:var(--muted);align-self:end}.about-copy{max-width:580px}.about-copy p+p{margin-top:25px}.about-copy .text-link{margin-top:22px}.technical{background:color-mix(in srgb, var(--surface) 82%, transparent);color:var(--ink)}.technical-intro{justify-content:space-between;align-items:end;gap:50px;margin-bottom:85px;display:flex}.technical-intro p{max-width:340px;font-size:16px}.technical-row{border-top:1px solid var(--line);grid-template-columns:100px 1fr 120px;align-items:center;gap:30px;padding:35px 0;transition:padding .4s,color .4s;display:grid;position:relative}.technical-category{text-transform:uppercase;margin-bottom:10px;display:block}.technical-row h3{letter-spacing:-.055em;font-size:clamp(43px,5vw,80px);line-height:1.08}.technical-mark{font-family:var(--mono);opacity:.45;text-align:right;font-size:50px;transition:opacity .4s,transform .4s}.technical-index{align-self:start;padding-top:7px}.skill-divider{opacity:.35}.technical-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:28px;display:flex}.technical .text-link:hover{color:var(--accent)}.experience{background:0 0}.experience-heading{justify-content:space-between;align-items:end;gap:50px;margin-bottom:65px;display:flex}.experience-heading p{max-width:380px;color:var(--muted)}.experience-layout{grid-template-columns:1fr 2fr;gap:8vw;display:grid}.experience-aside{align-self:start;padding-top:25px;position:sticky;top:135px}.experience-aside>p{letter-spacing:-.05em;margin-top:26px;font-size:clamp(32px,3.7vw,60px);line-height:1.1}.experience-aside>p em{color:var(--accent)}.timeline-rail{background:var(--line);width:1px;height:110px;margin:35px 0}.timeline-rail span{background:var(--accent);width:1px;height:100%;display:block}.aside-note{color:var(--muted);font-size:14px}.experience-row{border-top:1px solid var(--line);grid-template-columns:155px 1fr;gap:35px;padding:34px 0;display:grid}.experience-meta{color:var(--muted);flex-direction:column;gap:15px;line-height:1.6;display:flex}.experience-index{color:var(--accent);font-size:17px}.current-label{border:1px solid var(--line);color:var(--ink);align-self:start;padding:2px 7px;font-size:12px;display:inline-flex}.discipline{color:var(--accent);margin-bottom:15px;display:block}.experience-content h3{letter-spacing:-.04em;font-size:clamp(22px,2.5vw,38px);line-height:1.14}.role{margin-top:12px;font-size:16px}.experience-description{color:var(--muted);margin-top:18px;font-size:16px}.experience-context{color:var(--muted);margin-top:17px;display:block}.experience-end{border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.05em;color:var(--muted);justify-content:space-between;margin-top:25px;padding-top:24px;font-size:12px;display:flex}.expertise{background:color-mix(in srgb, var(--surface-blue) 90%, transparent);color:var(--ink);padding-bottom:0;overflow:hidden}.expertise-intro{justify-content:space-between;align-items:end;gap:40px;margin-bottom:75px;display:flex}.expertise-intro p{max-width:270px}.expertise-item{border-top:1px solid var(--line)}.expertise-item:last-child{border-bottom:1px solid var(--line)}.expertise-item summary{cursor:pointer;grid-template-columns:75px 1fr 300px 30px;align-items:center;gap:20px;padding:27px 0;list-style:none;display:grid}.expertise-item summary::-webkit-details-marker{display:none}.expertise-item h3{letter-spacing:-.055em;font-size:clamp(30px,4.5vw,70px);line-height:1.15}.expertise-subtitle{max-width:220px;font-size:12px}.disclosure-symbol{width:21px;height:21px;position:relative}.disclosure-symbol:before,.disclosure-symbol:after{content:"";background:currentColor;height:1px;transition:transform .3s;position:absolute;top:10px;left:0;right:0}.disclosure-symbol:after{transform:rotate(90deg)}details[open] .disclosure-symbol:after{transform:rotate(0)}.expertise-detail{max-width:850px;padding:0 45px 35px 95px}.expertise-detail p{font-size:16px}.type-ribbon{margin:95px calc(-1 * var(--gutter)) 0;border-top:1px solid var(--line);padding:35px 0}.ribbon-track{letter-spacing:-.055em;gap:25px;width:max-content;font-size:clamp(50px,8vw,120px);line-height:1.1;display:flex}.ribbon-track span{white-space:nowrap}.education{background:color-mix(in srgb, var(--surface) 88%, transparent);color:var(--ink)}.education-title{justify-content:space-between;align-items:center;margin-bottom:75px;display:flex}.education-mark{font-family:var(--serif);letter-spacing:-.1em;color:var(--accent);margin-right:6vw;font-size:clamp(130px,18vw,300px);line-height:.8}.education-row{border-top:1px solid var(--line);grid-template-columns:1fr 2fr auto;gap:35px;padding:32px 0;display:grid}.education-kind{padding-top:7px}.education-row h3{letter-spacing:-.045em;margin-bottom:17px;font-size:clamp(25px,3vw,43px);line-height:1.15}.education-row p{font-size:16px}.education-row p span{opacity:.65}.education-date{text-align:right;padding-top:7px}.resume-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:40px;padding-top:25px;display:flex}.resume-row p{font-family:var(--serif);font-size:34px}.education .text-link:hover{color:var(--accent)}.contact{background:0 0;padding-bottom:26px}.contact h2{letter-spacing:-.07em;font-size:clamp(60px,10.5vw,170px);line-height:.98}.contact-line{display:block}.contact-line em{color:var(--accent)}.contact-bottom{justify-content:space-between;align-items:end;gap:50px;margin-top:75px;display:flex}.contact-intro{color:var(--muted);margin-bottom:28px;font-size:16px}.contact-email{letter-spacing:-.045em;border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding-bottom:8px;font-size:clamp(16px,2.6vw,40px);display:inline-block}.contact-email:hover{color:var(--accent)}.copy-row{align-items:center;gap:18px;margin-top:22px;display:flex}.copy-button{background:0 0;border:0;align-items:center;gap:12px;padding:10px 0;font-size:14px;display:flex}.copy-row [role=status]{color:var(--accent);font-size:12px}.copy-icon{width:11px;height:13px;box-shadow:3px -3px var(--paper), 4px -4px currentColor;border:1px solid;display:inline-block}.contact-location .eyebrow{color:var(--muted)}.contact-location p{letter-spacing:-.03em;margin-top:15px;font-size:32px;line-height:1.12}.contact-links{gap:28px;margin-top:28px;display:flex}.footer-line{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;margin-top:90px;padding-top:24px;display:flex}.footer-line .text-link{border:0;padding:0;font-size:12px}.footer-line a:hover{color:var(--accent)}.footer-meta{text-align:center;gap:6px;display:grid}.footer-signature{color:var(--muted);letter-spacing:.015em;white-space:nowrap;font-size:11px;line-height:1.4}.footer-heart{transform-origin:50%;font-size:12px;line-height:1;display:inline-block}.footer-signature:hover .footer-heart,.footer-signature:focus-within .footer-heart{animation:.38s ease-out signature-heart}@keyframes signature-heart{0%,to{transform:scale(1)}45%{transform:scale(1.08)}}.footer-lenis{align-items:center;gap:4px;transition:color .18s;display:inline-flex;position:relative}.footer-lenis:after{content:"";transform-origin:0;background:currentColor;height:1px;transition:transform .18s;position:absolute;bottom:-2px;left:0;right:14px;transform:scaleX(0)}.footer-arrow{opacity:.55;transition:transform .18s,opacity .18s}.footer-lenis:is(:hover,:focus-visible):after{transform:scaleX(1)}.footer-lenis:is(:hover,:focus-visible) .footer-arrow{opacity:1;transform:translate(1px,-1px)}.footer-lenis:focus-visible{outline-offset:4px;border-radius:2px}.cursor{z-index:120;pointer-events:none;background:var(--mood-detail);width:10px;height:10px;color:var(--highlight);font-family:var(--mono);letter-spacing:.02em;opacity:0;border-radius:50%;justify-content:center;align-items:center;font-size:12px;transition:width .25s,height .25s,opacity .2s;display:none;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor[data-active=true]{width:75px;height:75px}.cursor-label{opacity:0}.cursor[data-active=true] .cursor-label{opacity:1}@media (hover:hover) and (pointer:fine){.technical-row:hover{padding-left:15px}.technical-row:hover .technical-mark{opacity:1;transform:translate(-10px)}}@media (min-width:1000px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.cursor{display:flex}}@media (min-width:1800px){.section,.hero-stage{padding-left:max(var(--gutter), calc((100vw - 1650px) / 2));padding-right:max(var(--gutter), calc((100vw - 1650px) / 2))}.hero-name{font-size:300px}}@media (max-width:1100px){.nav-links{gap:18px}.navigation{gap:20px}.hero-name{font-size:16.4vw}.hero-stage{min-height:max(690px,100svh)}.experience-layout{grid-template-columns:1fr 2.6fr;gap:40px}.experience-row{grid-template-columns:115px 1fr;gap:25px}.expertise-item summary{grid-template-columns:55px 1fr 230px 25px}.expertise-detail{padding-left:75px}.education-row{grid-template-columns:190px 1fr 140px;gap:25px}}@media (max-width:800px){html{scroll-padding-top:80px}.navigation{justify-content:space-between;gap:24px;height:70px}.menu-button{align-items:center;gap:13px;margin-left:auto;font-size:14px;display:flex}.menu-symbol{width:20px;height:16px;position:relative}.menu-symbol i{background:currentColor;width:20px;height:1px;transition:transform .3s;position:absolute;top:4px;left:0}.menu-symbol i+i{top:11px}.menu-symbol.open i{transform:translateY(3px)rotate(45deg)}.menu-symbol.open i+i{transform:translateY(-4px)rotate(-45deg)}.nav-links{padding:30px var(--gutter) 35px;background:var(--paper);border-bottom:1px solid var(--line);display:none;position:absolute;top:69px;left:0;right:0}.nav-links.open{flex-direction:column;align-items:start;gap:18px;display:flex}.nav-links a{font-size:24px}.nav-contact{font-size:12px}.section{padding:85px var(--gutter)}.section-label{gap:18px;margin-bottom:60px;font-size:12px}.section-label>span:last-child:not(.label-line){display:none}.hero{height:auto}.hero-stage{height:auto;min-height:max(620px,100svh);padding-top:108px;padding-bottom:23px;position:relative}.hero-topline{font-size:12px}.hero-topline>span:nth-child(2){display:none}.hero-name{font-size:16.8vw}.hero-last{margin-top:24px}.hero-title-caption{max-width:260px;margin-bottom:32px;font-size:12px;line-height:1.8}.hero-name-row{display:block}.hero-karol{text-align:right;margin-top:14px;margin-right:3vw;font-size:9vw;display:block}.hero-asterisk{font-size:10vw;position:absolute;top:-18px;right:0}.hero-last>.split-text{display:block}.hero-bottom{grid-template-columns:1fr auto;gap:20px}.hero-bottom p{grid-area:1/1/auto/-1;font-size:14px}.hero-bottom .text-link{font-size:12px}.scroll-cue{gap:12px;font-size:12px}.hero-edge{margin-top:20px;padding-top:15px;font-size:12px}.hero-reveal{margin-top:40px}.hero-reveal>.mono{margin-bottom:18px}.hero-reveal p{font-size:clamp(28px,7.8vw,60px)}.about-statement{grid-template-columns:1fr;gap:40px}.about-marker{font-size:45px}.about-statement h2{font-size:clamp(50px,9.3vw,83px);line-height:1.04}.about-bottom{grid-template-columns:1fr;gap:35px;margin-top:50px}.about-bottom>.mono{display:none}.about-copy p{font-size:16px}.technical-intro{margin-bottom:50px;display:block}.technical-intro p{margin-top:30px}.technical-row{grid-template-columns:40px 1fr 55px;gap:16px;padding:28px 0}.technical-row h3{font-size:clamp(35px,6.8vw,56px)}.technical-category{letter-spacing:0;font-size:12px}.technical-mark{font-size:24px}.technical-foot>.mono{font-size:12px}.technical-foot .text-link{gap:15px;font-size:12px}.experience-heading{margin-bottom:48px;display:block}.experience-heading p{margin-top:30px}.experience-layout{display:block}.experience-aside{display:none}.experience-row{grid-template-columns:1fr;gap:23px;padding:30px 0}.experience-meta{flex-flow:wrap;align-items:center;gap:18px}.experience-content h3{font-size:28px}.experience-end{font-size:12px}.expertise{padding-bottom:0}.expertise-intro{margin-bottom:50px;display:block}.expertise-intro p{max-width:none;margin-top:30px}.expertise-intro p br{display:none}.expertise-item summary{grid-template-columns:30px 1fr 22px;gap:12px;padding:25px 0}.expertise-item h3{font-size:clamp(29px,6.3vw,48px)}.expertise-subtitle{display:none}.expertise-detail{padding:0 30px 27px 42px}.type-ribbon{margin-top:60px;padding:27px 0}.education-title{margin-bottom:50px}.education-mark{margin-right:0;font-size:130px}.education-row{grid-template-columns:1fr;gap:16px;padding:29px 0}.education-date{text-align:left;padding:0}.education-row h3{margin-bottom:15px;font-size:29px}.resume-row p{font-size:25px}.resume-row .text-link{gap:18px;font-size:12px}.contact{padding-bottom:25px}.contact h2{font-size:clamp(46px,9.5vw,82px);line-height:1.05}.contact-bottom{margin-top:50px;display:block}.contact-email{letter-spacing:-.025em;font-size:clamp(16px,3.9vw,28px)}.contact-location{margin-top:48px}.contact-location p{font-size:27px}.footer-line{flex-wrap:wrap;gap:22px;margin-top:60px;font-size:12px}.footer-name{flex:80%}.footer-line .text-link{font-size:12px}.footer-meta{text-align:left}.desktop-break{display:none}.cursor{display:none!important}}@media (prefers-reduced-motion:reduce){.footer-heart,.footer-lenis:is(:hover,:focus-visible) .footer-arrow{transform:none}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.hero{height:auto}.hero-stage{position:relative}.cursor{display:none!important}}.work{background:0 0}.work-intro{padding-bottom:65px;position:relative}.work-intro>p{right:var(--gutter);color:var(--muted);font-size:16px;position:absolute;bottom:72px}.project-panel{padding:0 var(--gutter) 100px}.project-art{isolation:isolate;background:var(--project-blue);height:clamp(400px,49vw,820px);color:var(--ink);grid-template-rows:1fr auto;padding:30px 35px;display:grid;position:relative;overflow:hidden}.project-art-bottom{z-index:3;border-top:1px solid var(--art-rule);justify-content:space-between;gap:25px;padding-top:18px;font-size:12px;display:flex;position:relative}.project-art-word{font-size:clamp(220px,34vw,600px);font-family:var(--serif);letter-spacing:-.12em;text-align:center;z-index:2;place-self:center;margin-right:.08em;font-style:italic;line-height:.75;position:relative}.project-art-grid{background-image:linear-gradient(var(--project-grid) 1px, transparent 1px), linear-gradient(90deg, var(--project-grid) 1px, transparent 1px);z-index:1;background-size:64px 64px;position:absolute;inset:0;transform:rotate(-12deg)scale(1.4)}.spoticraft .project-art{background:var(--project-soft);color:var(--ink)}.spoticraft .project-art-word{font-family:var(--sans);letter-spacing:-.085em;font-size:clamp(230px,35vw,650px);font-style:normal;font-weight:500}.spoticraft .project-art-grid{background-image:repeating-linear-gradient(90deg, transparent 0, transparent 30px, var(--project-grid) 31px, var(--project-grid) 32px);background-size:auto;transform:rotate(12deg)scale(1.4)}.project-heading{border-bottom:1px solid var(--line);align-items:center;gap:30px;padding:27px 0;display:flex}.project-heading h3{letter-spacing:-.06em;font-size:clamp(48px,7.4vw,120px);line-height:1.1}.project-number{color:var(--muted);align-self:start;padding-top:16px}.project-source{flex-shrink:0;margin-left:auto}.project-details{grid-template-columns:1fr 1fr;gap:8vw;padding-top:40px;display:grid}.project-statement{letter-spacing:-.045em;font-size:clamp(30px,3.7vw,58px);line-height:1.15}.project-statement>span{display:block}.project-statement em{color:var(--accent)}.project-description{color:var(--muted);max-width:580px;font-size:16px}.project-technologies{flex-wrap:wrap;gap:10px;margin:25px 0 20px;padding:0;list-style:none;display:flex}.project-technologies li{font-family:var(--mono);border:1px solid var(--line);border-radius:0;padding:5px 10px;font-size:12px}.project-detail{color:var(--muted);font-size:12px;line-height:1.8}@media (hover:hover) and (pointer:fine){.project-art:hover .project-art-grid{opacity:.5;transition:opacity .5s}.project-art-word{transition:letter-spacing .6s}.project-art:hover .project-art-word{letter-spacing:-.09em}}@media (max-width:800px){.work-intro{padding-bottom:50px}.work-intro>p{margin-top:30px;position:static}.project-panel{padding-bottom:75px}.project-art{height:390px;padding:20px}.project-art-bottom{letter-spacing:0;font-size:12px}.project-art-word,.spoticraft .project-art-word{font-size:250px}.project-heading{flex-wrap:wrap;gap:14px;padding:23px 0}.project-heading h3{font-size:clamp(39px,8vw,65px)}.project-number{padding-top:7px;font-size:12px}.project-source{gap:15px;margin-left:auto;font-size:12px}.project-details{padding-top:27px;display:block}.project-statement{margin-bottom:25px;font-size:34px}.project-description{font-size:16px}.project-technologies{margin:22px 0 17px}.project-detail{font-size:12px}}@media (max-width:420px){.footer-line{column-gap:6px}.footer-line .back-top{gap:4px}.hero-topline{gap:12px;font-size:11px}.project-heading{column-gap:12px}.project-source{border-bottom:0;justify-content:space-between;width:100%;margin-top:5px;padding:10px 0}.project-art{height:320px}.project-art-word,.spoticraft .project-art-word{font-size:210px}}
.ambient-background{z-index:-1;pointer-events:none;background:var(--ambient-primary);position:fixed;inset:0;overflow:hidden}.ambient-light{background:radial-gradient(ellipse at 86% 12%, color-mix(in srgb, var(--ambient-secondary) 85%, transparent), transparent 64%), radial-gradient(ellipse at 8% 85%, color-mix(in srgb, var(--ambient-accent) 55%, transparent), transparent 65%), linear-gradient(125deg, color-mix(in srgb, var(--highlight) 60%, transparent), transparent 75%);position:absolute;inset:0}.ambient-grain{opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='currentColor' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E");position:absolute;inset:0}.project-art:after{content:"";pointer-events:none;background:radial-gradient(ellipse at 100% 0%, color-mix(in srgb, var(--ambient-accent) 24%, transparent), transparent 70%);z-index:0;position:absolute;inset:0}.music{border-top:1px solid var(--line)}.music-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:90px;display:flex}.music-heading h2 em{color:var(--accent)}.music-mood{color:var(--muted);text-align:right;padding-bottom:6px}.music-mood span{font-family:var(--serif);letter-spacing:-.025em;color:var(--ink);margin-top:12px;font-size:35px;font-style:italic;display:block}.music-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);align-items:center;gap:clamp(45px,9vw,150px);display:grid}.music-art-reveal{max-width:560px;margin:0}.music-art-object{aspect-ratio:1;isolation:isolate;box-shadow:14px 18px 45px -18px var(--shadow);transition:transform .75s cubic-bezier(.2,.7,.3,1);position:relative;transform:rotate(-2deg)}.music-art-object:before{content:"";z-index:-1;background:var(--surface-deep);border:1px solid var(--line);position:absolute;inset:7px -7px -7px 7px}.music-cover,.music-cover-placeholder{aspect-ratio:1;width:100%;height:100%;display:block}.music-cover{object-fit:cover}.music-cover-placeholder{background:linear-gradient(145deg, var(--surface), var(--project-blue));border:1px solid var(--line);color:var(--ink);padding:7%;position:relative;overflow:hidden}.music-cover-top,.music-cover-bottom{z-index:2;font-size:clamp(9px,.85vw,12px);position:absolute;left:7%;right:7%}.music-cover-top{top:7%}.music-cover-bottom{border-top:1px solid var(--art-rule);justify-content:space-between;gap:20px;padding-top:15px;display:flex;bottom:7%}.music-cover-orbit{border:1px solid var(--art-rule);border-radius:50%;width:72%;height:72%;position:absolute;top:22%;left:45%}.music-cover-window{background:linear-gradient(175deg, var(--highlight), var(--surface-blue) 65%, var(--project-blue));border:1px solid var(--line);border-radius:50% 50% 0 0;width:38%;height:64%;position:absolute;top:19%;right:11%}.music-cover-word{z-index:1;letter-spacing:-.075em;font-size:clamp(55px,6.8vw,112px);line-height:.95;position:absolute;top:28%;left:9%}.music-cover-word em{color:var(--accent);margin-left:14%}.music-art-reveal figcaption{color:var(--muted);letter-spacing:.03em;margin-top:30px;font-size:10px}.music-track-top{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:20px;padding-top:22px;display:flex}.music-title{font-family:var(--serif);letter-spacing:-.055em;overflow-wrap:anywhere;margin:26px 0 9px;font-size:clamp(65px,7.8vw,125px);font-style:italic;line-height:1.1}.music-artist{text-transform:uppercase;color:var(--muted)}.music-seek{margin-top:42px}.music-range{appearance:none;cursor:pointer;background:linear-gradient(to right, var(--mood-detail) var(--range-progress,0%), var(--line) var(--range-progress,0%)) center / 100% 2px no-repeat;width:100%;height:44px;margin:0;padding:0;display:block}.music-range::-webkit-slider-thumb{appearance:none;border:1px solid var(--highlight);background:var(--mood-detail);border-radius:50%;width:12px;height:12px}.music-range::-moz-range-thumb{border:1px solid var(--highlight);background:var(--mood-detail);border-radius:50%;width:12px;height:12px}.music-range:disabled{cursor:default}.music-range:disabled::-webkit-slider-thumb{background:var(--muted)}.music-time{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;display:flex}.music-transport{justify-content:center;align-items:center;gap:28px;padding:28px 0;display:flex}.music-play{background:var(--ink);width:98px;height:98px;color:var(--highlight);border:1px solid var(--ink);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:6px;transition:transform .3s,background .3s;display:flex}.music-play svg{fill:currentColor;width:25px;height:25px}.music-play .mono{font-size:10px}.music-play:not(:disabled):hover{background:var(--accent);transform:scale(1.045)}.music-play:disabled{background:var(--surface-blue);color:var(--muted);border-color:var(--line);cursor:default}.music-skip,.music-mute{background:0 0;border:0;place-items:center;width:48px;height:48px;padding:12px;display:grid}.music-skip svg{fill:currentColor;width:22px;height:22px}.music-mute svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.music-skip:disabled,.music-mute:disabled{opacity:.4;cursor:default}.music-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding-top:12px;display:flex}.music-status{color:var(--muted);font-size:11px}.music-volume{flex-shrink:0;align-items:center;width:150px;display:flex}.music-volume .music-range{width:90px}.music-note{color:var(--muted);margin-top:18px;font-size:13px}.music-equalizer{height:22px;color:var(--mood-detail);align-items:center;gap:3px;display:flex}.music-equalizer i{background:currentColor;width:2px;height:18px;transition:transform .5s;transform:scaleY(.18)}.is-playing .music-equalizer i{animation:1.15s ease-in-out infinite alternate equalizer}.is-playing .music-equalizer i:nth-child(2){animation-delay:-.7s}.is-playing .music-equalizer i:nth-child(3){animation-delay:-.3s}.is-playing .music-equalizer i:nth-child(4){animation-delay:-.95s}.is-playing .music-equalizer i:nth-child(5){animation-delay:-.5s}.is-playing .music-art-object{animation:5.5s ease-in-out infinite alternate artwork-breathe}@keyframes equalizer{0%{transform:scaleY(.24)}to{transform:scaleY(.85)}}@keyframes artwork-breathe{0%{transform:rotate(-2deg)scale(1)}to{transform:rotate(-1.5deg)scale(1.012)}}.mini-player{border-left:1px solid var(--line);width:245px;color:var(--ink);align-items:center;gap:12px;padding:0 0 0 18px;display:flex}.mini-indicator{border:1px solid var(--mood-detail);border-radius:50%;flex-shrink:0;width:6px;height:6px}.mini-indicator.active{background:var(--mood-detail)}.mini-track{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.mini-track .mono{color:var(--muted);font-size:9px}.mini-track>span:last-child{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.mini-track small{color:var(--muted);font-size:12px}.mini-play{border:1px solid var(--line);background:0 0;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.mini-play svg{fill:currentColor;width:20px;height:20px}.music-dock:empty{display:none}.navigation:has(.mini-player){gap:22px}.navigation:has(.mini-player) .nav-links{gap:18px}.navigation:has(.mini-player) .nav-links a{font-size:12px}.navigation:has(.mini-player) .nav-contact{gap:0;font-size:0}@media (max-width:1000px){.mini-player{width:220px}.music-layout{gap:45px}.music-bottom{flex-direction:column;align-items:start;gap:4px}}@media (max-width:800px){.navigation:has(.mini-player) .nav-links a{font-size:24px}.music-heading{gap:24px;margin-bottom:55px}.music-mood{font-size:10px}.music-mood span{font-size:27px}.music-layout{grid-template-columns:1fr;gap:50px}.music-art-reveal{width:min(100%,400px);margin:0 auto}.music-cover-word{font-size:clamp(62px,16vw,95px)}.music-cover-top,.music-cover-bottom{font-size:10px}.music-art-reveal figcaption{margin-top:22px;font-size:9px}.music-title{margin-top:18px;font-size:clamp(65px,16vw,100px)}.music-seek{margin-top:24px}.music-transport{padding:24px 0}.music-bottom{flex-direction:row;align-items:center;gap:14px}.music-status{max-width:140px;font-size:10px;line-height:1.6}.music-volume{width:125px}.music-volume .music-range{width:75px}.music-dock:has(.mini-player){position:absolute;top:100%;left:0;right:0}.mini-player{width:100%;padding:10px var(--gutter);background:var(--nav-surface);border-left:0;border-bottom:1px solid var(--line)}.navigation:has(.nav-links.open) .music-dock{display:none}html.music-mini-visible{scroll-padding-top:164px}.music-mini-visible .hero-stage{padding-top:170px}}@media (max-width:420px){.music-heading{display:block}.music-mood{text-align:left;align-items:baseline;gap:16px;margin-top:25px;display:flex}.music-mood span{margin:0}}@media (prefers-reduced-motion:reduce){.music-art-object,.music-play,.music-equalizer i{transition:none}.is-playing .music-art-object,.is-playing .music-equalizer i{animation:none}.is-playing .music-equalizer i{transform:scaleY(.5)}.is-playing .music-equalizer i:nth-child(2n){transform:scaleY(.8)}}
