@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,200..800&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fff;--text:#121212;--text-muted:#3d3d3d;--accent-pink:#f6085a;--accent-blue:#0830f6;--accent-black:#121212;--footer-muted:#9394a5;--gap:16px;--project-gap:80px;--project-inner-gap:24px}[data-theme=dark]{--bg:#0b0b0b;--text:#fff;--text-muted:#a0a0a0;--accent-pink:#f6085a;--accent-blue:#0830f6;--accent-black:#1a1a1a;--footer-muted:#636375}::selection{color:#121212;background:#fac31d}body{background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;zoom:.85;font-family:Bricolage Grotesque,sans-serif;line-height:1.5;transition:background-color .4s,color .4s}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.page-wrapper{padding-left:64px;padding-right:64px}@media (width<=1024px){.page-wrapper{padding-left:32px;padding-right:32px}}@media (width<=640px){.page-wrapper{padding-left:16px;padding-right:16px}}.header{z-index:100;background-color:#0000;height:80px;transition:background-color .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s;position:sticky;top:0}.header-scrolled,[data-theme=dark] .header-scrolled{background-color:var(--bg)}.desktop-only{display:flex!important}.mobile-only{display:none!important}@media (width<=1024px){.desktop-only{display:none!important}.mobile-only{display:flex!important}}.menu-trigger{cursor:pointer;z-index:2000;color:var(--text);padding:8px}.mobile-menu-close{cursor:pointer;color:var(--text);padding:8px;position:absolute;top:40px;right:40px}.mobile-menu-overlay{background:var(--bg);z-index:1500;box-sizing:border-box;flex-direction:column;width:100%;height:100dvh;padding:120px 40px 60px;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.mobile-menu-content{flex-direction:column;flex:1;justify-content:space-between;display:flex}.mobile-nav{flex-direction:column;gap:32px;display:flex}.mobile-nav a{color:var(--text);letter-spacing:-.02em;font-size:35px;font-weight:500;text-decoration:none}.mobile-controls{border-top:1px solid #0000000d;flex-direction:column;gap:24px;margin-top:60px;padding-top:40px;display:flex}[data-theme=dark] .mobile-controls{border-color:#ffffff0d}.mobile-control-item{text-transform:uppercase;letter-spacing:.05em;cursor:pointer;justify-content:space-between;align-items:center;font-size:18px;font-weight:600;display:flex}.mobile-socials{color:var(--text);opacity:1;gap:32px;margin-top:60px;display:flex}.mobile-socials a{color:inherit}.header-inner{justify-content:space-between;align-items:center;height:100%;padding:0 64px;display:flex}.header-actions-group{align-items:center;gap:8px;display:flex}.lang-toggle,.theme-toggle{cursor:pointer;color:var(--text);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;font-family:inherit;transition:opacity .2s;display:flex}.lang-toggle{min-width:40px;font-size:14px;font-weight:600}.lang-toggle:hover,.theme-toggle:hover{opacity:.6}.nav-center{position:absolute;left:50%;transform:translate(-50%)}.logo-area{align-items:center;gap:12px;font-size:20px;font-weight:600;display:flex}.nav-links{align-items:center;gap:40px;list-style:none;display:flex}.nav-links a{color:var(--text);font-size:18px;font-weight:400;transition:opacity .2s}.nav-links a:hover{opacity:.6}.nav-links a.nav-active{text-underline-offset:8px;text-decoration:underline}@media (width<=1024px){.header-inner{padding:0 32px}}@media (width<=640px){.header-inner{padding:0 16px}.nav-links{display:none}}.hero{flex-direction:column;justify-content:flex-end;height:635px;padding:0 64px;display:flex}@media (width<=640px){.hero{padding:0 16px}}.hero-content{padding-bottom:48px}.hero-title{margin-bottom:16px;font-size:128px;font-weight:700;line-height:1.1}.hero-description{max-width:840px;font-size:32px;font-weight:400;line-height:1.2}@media (width<=1200px){.hero-title{font-size:80px}.hero-description{font-size:24px}}@media (width<=768px){.hero-title{font-size:80px}.hero-description{font-size:32px}}@media (width<=640px){.hero-title{font-size:48px}.hero-description{font-size:32px}}.projects{margin-top:60px;padding-bottom:120px}.projects-list{gap:var(--project-gap);flex-direction:column;display:flex}.project-item{gap:var(--project-inner-gap);cursor:pointer;flex-direction:column;display:flex;position:relative}.project-image{border-radius:0;width:100%;transition:transform .3s}.project-image.large{height:703px}.project-image.medium{height:590px}.project-image.small{height:480px}.project-waykout{background-color:var(--accent-pink);justify-content:center;align-items:center;display:flex;overflow:hidden}.balloon{filter:drop-shadow(0 20px 30px #00000026);width:240px;height:auto;animation:4s ease-in-out infinite floatBalloon}@media (width<=640px){.balloon{width:132px}.hide-mobile-soul{display:none!important}}.project-coming-soon{color:#fff;z-index:10;letter-spacing:.02em;background-color:#121212;border-radius:100px;padding:6px 14px;font-size:14px;font-weight:500;position:absolute;top:32px;right:32px}@keyframes floatBalloon{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-30px)rotate(2deg)}}.project-xnorb{background-color:#121212;background-image:url(/original-ds.webp);background-position:50%;background-repeat:no-repeat;background-size:cover}.project-staymyway{background-color:var(--accent-blue);justify-content:center;align-items:center;display:flex}.lock{filter:drop-shadow(0 15px 25px #0000001a);width:120px;height:auto;animation:5s ease-in-out infinite floatLock}@keyframes floatLock{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.project-celiams,.project-displaynote{background-color:var(--accent-black)}.project-row{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.project-row .project-item:last-child{margin-top:100px}.project-title{color:var(--text);font-size:32px;font-weight:500;line-height:1.2}@media (width<=1024px){.project-row{gap:var(--project-gap);grid-template-columns:1fr}.project-row .project-item:last-child{margin-top:0}.project-image.large,.project-image.medium,.project-image.small{aspect-ratio:16/9;height:auto}.project-title{font-size:24px}}@media (width<=640px){.projects-list,.project-row{gap:24px}.project-image.large{aspect-ratio:1}}.lab{margin-top:120px;padding-bottom:120px}.lab-intro{color:var(--text);max-width:975px;margin-bottom:64px;font-size:48px;font-weight:500;line-height:1.2}.lab-grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.lab-item{flex-direction:column;gap:16px;display:flex}@media (width>=1024px){.lab-item:nth-child(2),.lab-item:nth-child(4){margin-top:40px}}.lab-image{background-color:#121212;border-radius:0;justify-content:center;align-items:center;height:379px;display:flex;position:relative;overflow:hidden}.lab-badge{color:#fff;text-transform:none;z-index:10;background-color:#7e37f0;border:1px solid #ffffff1a;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:500;position:absolute;top:16px;right:16px}.lab-meta{align-items:center;gap:16px;margin-top:16px;display:flex}.lab-meta .lab-badge{position:static}.lab-community-link{color:var(--text);text-underline-offset:4px;align-items:center;gap:6px;margin-top:12px;font-size:14px;font-weight:600;text-decoration:underline;transition:opacity .2s;display:flex}.lab-community-link:hover{opacity:.7}.lab-badge-resource{color:#fff;background-color:#cc6200;border:1px solid #ffffff1a}.lab-video-asset{object-fit:contain;object-position:center;width:80%;height:auto}.lab-asset-cover{object-fit:cover;object-position:center;width:100%;height:100%}.lab-text{color:var(--text);font-size:24px;font-weight:400;line-height:1.4}[data-theme=dark] .lab-image{background-color:#101010}[data-theme=dark] .lab-item:nth-child(2) .lab-image,[data-theme=dark] .lab-item:nth-child(4) .lab-image{background-color:#121212}@media (width<=1200px){.lab-intro{font-size:36px}.lab-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.lab-grid{grid-template-columns:1fr;gap:0}.lab-item{margin-bottom:64px}.lab-item:last-child{margin-bottom:0}.lab-image{height:250px}}.skills{margin-top:120px;margin-bottom:240px}@media (width<=640px){.projects{padding-bottom:40px}.project-coming-soon{top:16px;right:16px}.project-image.large,.project-image.medium{aspect-ratio:1}.project-xnorb{background-size:cover}.lab{padding-bottom:80px}.skills{margin-bottom:80px}.lab-video-asset{object-fit:contain;width:95%;height:95%}}.about-text-content p{color:var(--text);margin-bottom:32px;font-size:24px;font-weight:400;line-height:1.4}.about-h1{color:var(--text);max-width:975px;margin-bottom:64px;font-size:48px;font-weight:500;line-height:1.2}.skills-intro{color:var(--text);max-width:975px;margin-bottom:34px;font-size:48px;font-weight:500;line-height:1.2}.skills-list{color:var(--text);max-width:1285px;font-size:36px;font-weight:300;line-height:1.4}@media (width<=1200px){.skills-intro{font-size:36px}.skills-list{font-size:24px}}.footer{padding-top:80px;padding-bottom:80px}.footer-divider{background:#0000001a;width:25%;height:1px;margin:64px 0}[data-theme=dark] .footer-divider{background:#ffffff1a}.footer-contact{color:var(--text);font-size:72px;line-height:1.1}.footer-email-area{margin-top:40px}.footer-email{font-size:72px;transition:opacity .2s;text-decoration:none!important}.footer-email:hover{opacity:.6}@media (width<=768px){.footer-email{font-size:32px}.footer-contact{font-size:42px}}.footer-regular{opacity:.9;font-weight:400}.footer-bold{font-weight:700}.footer-contact a{text-decoration:none;transition:opacity .2s}.footer-contact a:hover{opacity:.6}.soul-page{background-color:var(--bg);color:var(--text);flex-direction:column;height:calc(100vh - 80px);display:flex;overflow:hidden}.soul-hero{flex:1;padding:88px 64px 160px;overflow-y:auto}.soul-hero::-webkit-scrollbar{width:6px}.soul-hero::-webkit-scrollbar-track{background:0 0}.soul-hero::-webkit-scrollbar-thumb{background:#80808033;border-radius:10px}.soul-hero::-webkit-scrollbar-thumb:hover{background:#80808066}.soul-content{flex-direction:column;gap:60px;max-width:1134px;display:flex}.soul-greeting{flex-direction:column;gap:34px;display:flex}.greeting-text{color:var(--text);font-family:Bricolage Grotesque,sans-serif;font-size:48px;font-weight:500;line-height:1.1}.suggestion-pills{flex-wrap:wrap;gap:10px;display:flex}.suggestion-pill{background:var(--bg);border:1px solid var(--text);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:999px;padding:8px 12px;font-family:inherit;font-size:24px;font-weight:300;transition:all .2s}.suggestion-pill:hover{background:var(--text);color:var(--bg)}.chat-history{flex-direction:column;gap:60px;display:flex}.chat-row{align-items:flex-start;gap:82px;display:flex}.role-indicator{flex-shrink:0;align-items:center;gap:12px;width:120px;display:flex}.role-indicator .dot{background:var(--text);border-radius:50%;width:12px;height:12px}.role-name{color:var(--text);font-size:24px;font-weight:300}.message-text{color:var(--text);white-space:pre-wrap;max-width:975px;font-size:32px;font-weight:500;line-height:1.3}.cv-link{color:var(--text);text-underline-offset:4px;text-decoration:underline;transition:opacity .2s}.cv-link:hover{opacity:.7}.message-with-image{flex-direction:column;gap:16px;display:flex}.chat-image{border-radius:8px;width:100%;max-width:400px;height:auto}.table-container{background:var(--bg);border:1px solid #0000000d;border-radius:8px;width:100%;margin:24px 0;overflow-x:auto}[data-theme=dark] .table-container{border:1px solid #ffffff1a}.soul-table{border-collapse:collapse;text-align:left;width:100%;font-size:18px}.soul-table th,.soul-table td{border-bottom:1px solid #0000000d;padding:16px 20px}[data-theme=dark] .soul-table th,[data-theme=dark] .soul-table td{border-bottom:1px solid #ffffff0d}.soul-table th{color:var(--text);text-transform:uppercase;letter-spacing:.05em;background:#00000005;font-size:14px;font-weight:600}[data-theme=dark] .soul-table th{background:#ffffff05}.soul-table td{color:var(--text);opacity:.9}.soul-table tr:last-child td{border-bottom:none}.soul-table strong{color:var(--text);font-weight:600}.soul-input-area{background:var(--bg);z-index:1000;border-top:1px solid #8080801a;width:100%;padding:40px 64px;position:fixed;bottom:0;left:0}.input-form{align-items:flex-start;gap:82px;max-width:1134px;display:flex}.input-container{flex:1;align-items:center;gap:24px;display:flex;position:relative}.custom-caret{background-color:var(--text);pointer-events:none;width:1px;height:32px;animation:1s step-end infinite caret-blink;position:absolute;top:50%;left:0;transform:translateY(-50%)}.custom-caret.hidden{display:none}@keyframes caret-blink{0%,to{opacity:1}50%{opacity:0}}.input-form input{color:var(--text);caret-color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:0 0 0 12px;font-family:inherit;font-size:32px;font-weight:500}.input-form input::placeholder{color:var(--text);opacity:.4;font-style:italic}.typing-bubbles{align-items:center;gap:6px;height:32px;display:flex}.typing-bubbles .bubble{background-color:var(--text);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both bubble-bounce}.typing-bubbles .bubble:first-child{animation-delay:-.32s}.typing-bubbles .bubble:nth-child(2){animation-delay:-.16s}@keyframes bubble-bounce{0%,80%,to{opacity:.3;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.send-btn{background:var(--text);color:var(--bg);cursor:pointer;border:none;padding:12px 24px;font-family:inherit;font-size:16px;font-weight:600;transition:opacity .2s}.send-btn:hover{opacity:.8}.send-btn:disabled{opacity:.1}.about-page{background:var(--bg);padding-top:88px;padding-bottom:160px}.about-container-simple{max-width:900px;margin:0 auto;padding:0 32px}.about-image-hero{width:100%;margin:100px 0;display:block;position:relative;border-radius:0!important;overflow:visible!important}.about-main-img{width:100%;height:auto;display:block;border-radius:0!important}@media (width>=1100px){.about-main-img{position:relative;left:50%;transform:translate(-50%);width:1100px!important;min-width:1100px!important}}.about-text-content{flex-direction:column;gap:40px;display:flex}.about-text-content p{color:var(--text);letter-spacing:-.01em;font-size:24px;font-weight:300;line-height:34px}.about-text-content strong{font-weight:600}.about-extra-section{width:100%}.section-title-small{text-transform:uppercase;letter-spacing:.1em;opacity:.4;margin-bottom:32px;font-size:14px;font-weight:600}.books-table-wrapper{width:100%}.books-table{border-collapse:collapse;width:100%}.books-table tr{border-bottom:1px solid #0000000d}[data-theme=dark] .books-table tr{border-bottom-color:#ffffff0d}.books-table td{padding:20px 0;font-size:18px}.book-title{width:40%;font-weight:500}.book-author{opacity:.6;width:30%}.book-tag{text-align:right;width:30%}.book-tag span{text-transform:uppercase;letter-spacing:.05em;background:#00000008;border-radius:100px;padding:4px 12px;font-size:12px;font-weight:600}[data-theme=dark] .book-tag span{background:#ffffff08}.spotify-embed-wrapper{filter:grayscale()opacity(.8);margin-top:24px;transition:filter .3s}.spotify-embed-wrapper:hover{filter:grayscale(0)opacity()}.project-detail-page{background:var(--bg);padding-top:40px}.back-btn{color:var(--text);opacity:.5;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;margin-bottom:48px;font-size:14px;font-weight:600;transition:opacity .3s;display:flex}.back-btn:hover{opacity:1}.project-detail-title-large{letter-spacing:-.04em;margin-bottom:64px;font-size:120px;font-weight:500;line-height:.9}.project-meta-inline{border-top:1px solid #0000000d;border-bottom:1px solid #0000000d;gap:80px;margin:64px 0 120px;padding:48px 0;display:flex}[data-theme=dark] .project-meta-inline{border-color:#ffffff0d}.meta-item{flex-direction:column;gap:4px;display:flex}.meta-label{text-transform:uppercase;opacity:.3;font-size:12px;font-weight:600}.meta-value{font-size:18px;font-weight:400}.project-intro-section{padding:120px 0}.project-intro-text{max-width:900px;margin-bottom:64px;font-size:48px;font-weight:400;line-height:1.1}.project-description-text{opacity:.7;max-width:800px;font-size:24px;font-weight:300;line-height:1.5}.project-content-blocks{padding-bottom:160px}.content-block{margin-bottom:120px}.text-block-inner{max-width:800px}.block-title{margin-bottom:8px;font-size:32px;font-weight:500}.block-subtitle{text-transform:uppercase;letter-spacing:.1em;opacity:.4;margin-bottom:24px;font-size:14px;font-weight:600}.block-content{opacity:.8;font-size:22px;font-weight:300;line-height:1.6}.quote-block-wrapper{border-top:1px solid #0000000d;border-bottom:1px solid #0000000d;padding:80px 0}[data-theme=dark] .quote-block-wrapper{border-color:#ffffff0d}.project-quote{max-width:800px;font-size:40px;font-style:italic;font-weight:400;line-height:1.2}.image-block-wrapper{border-radius:24px;width:100%;overflow:hidden}.block-img-single{width:100%;height:auto;display:block}.image-grid-wrapper{grid-template-columns:1fr 1fr;gap:32px;display:grid}.block-img-grid{border-radius:16px;width:100%;height:auto;display:block}@media (width<=1024px){.project-header-grid{grid-template-columns:1fr;gap:32px}.project-detail-title{font-size:56px}.project-intro-text{font-size:32px}.image-grid-wrapper{grid-template-columns:1fr}.soul-hero{padding-bottom:160px;padding-left:32px;padding-right:32px}.chat-row{flex-direction:column;gap:24px}.role-indicator{width:auto}.greeting-text{font-size:32px}.message-text,.input-form input{font-size:24px}.soul-input-area{padding:24px 32px}.input-form{flex-direction:row;align-items:center;gap:16px}.input-form .role-indicator{display:none}}@media (width<=640px){.soul-hero{padding-left:16px;padding-right:16px}.soul-input-area{padding:16px}}.floating-like-container{z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;bottom:40px;right:40px}.particles-wrapper,.heart-particle{pointer-events:none;position:absolute}.like-button{background:var(--bg);border:1px solid var(--border);cursor:pointer;-webkit-backdrop-filter:blur(8px);border-radius:100px;align-items:center;gap:12px;padding:12px 24px;display:flex;transform:translateZ(0);box-shadow:0 8px 32px #0000001a}[data-theme=dark] .like-button{background:#151515;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}.like-button:active{-webkit-backdrop-filter:none;backdrop-filter:none}.like-button.liked{border-color:var(--accent-pink);background:var(--bg)}[data-theme=dark] .like-button.liked{background:#151515}.heart-icon{transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.like-button:hover .heart-icon{transform:scale(1.15)}.like-count{font-variant-numeric:tabular-nums;color:var(--text);font-size:16px;font-weight:700}@media (width<=768px){.floating-like-container{bottom:24px;right:24px}.like-button{padding:10px 20px}}
