article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}*,:after,:before{box-sizing:border-box}:root{font-size:16px;--color-text:#e0e0e0;--color-text-secondary:#5e6262;--color-bg:#151616;--color-link:#5e6262;--color-link-hover:#e0e0e0;--color-date:#e0e0e0}body{color:var(--color-text);background-color:var(--color-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,SF Pro Display,system-ui,sans-serif;font-weight:200;font-size:1.1rem;line-height:1.7;letter-spacing:.3px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}.js .loading:before{top:0;left:0;width:100%;height:100%;background:var(--color-bg)}.js .loading:after,.js .loading:before{content:"";position:fixed;z-index:100000}.js .loading:after{top:50%;left:50%;width:60px;height:60px;margin:-30px 0 0 -30px;pointer-events:none;border-radius:50%;opacity:.4;background:var(--color-link);animation:loaderAnim .7s linear infinite alternate forwards}@keyframes loaderAnim{to{opacity:1;transform:scale3d(.5,.5,1)}}a{text-decoration:none;color:var(--color-link);outline:none}a:focus,a:hover{color:var(--color-link-hover);outline:none}#container{width:100vw;height:100vh;left:0;top:0;position:fixed;z-index:-1}canvas{display:block}.frame{padding:3rem 5vw;text-align:center;position:relative;z-index:1000}.frame__deco{margin-top:10vh}.frame__title{font-size:1rem;margin:0 0 1rem;font-weight:400}.frame__links{display:inline}.frame__links a{display:inline-block;margin:0 1rem 1rem}@media screen and (min-width:53em){.frame{position:fixed;text-align:left;z-index:10000;top:0;left:0;display:grid;align-content:space-between;width:100%;max-width:none;height:100vh;padding:3rem 4rem;pointer-events:none;grid-template-columns:40% 20% 40%;grid-template-rows:auto auto auto;grid-template-areas:"deco demos demos" "... ... ..." "title title credits"}.frame__deco{justify-self:start;margin:0}.frame__title-wrap{grid-area:title;display:flex;justify-content:end}.frame__title{margin:0 8vw 0 0}.frame__links a{pointer-events:auto;margin:0 0 0 1rem}.frame__links a:not(:last-child):after{content:"|";color:var(--color-text);opacity:.1;margin:0 0 0 1rem}}.oracle-container{position:relative;min-height:100vh;overflow-y:auto}.oracle-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle at center,rgba(247,37,133,.04) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(181,23,158,.03) 0,transparent 30%),radial-gradient(circle at 20% 80%,rgba(58,12,163,.03) 0,transparent 30%),radial-gradient(circle at 60% 70%,rgba(76,201,240,.02) 0,transparent 40%);z-index:-2;animation:oracleGlow 8s ease-in-out infinite alternate}@keyframes oracleGlow{0%{opacity:.4;transform:scale(1)}50%{opacity:.6;transform:scale(1.02)}to{opacity:.4;transform:scale(1)}}.oracle-title{position:fixed;top:3rem;left:50%;transform:translateX(-50%);font-size:3.5rem;font-weight:100;letter-spacing:3px;background:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;animation:oraclePulse 4s ease-in-out infinite;transition:all .3s ease;z-index:1000}@keyframes oraclePulse{0%,to{filter:drop-shadow(0 0 20px rgba(247,37,133,.5))}50%{filter:drop-shadow(0 0 35px rgba(181,23,158,.8)) drop-shadow(0 0 50px rgba(76,201,240,.4))}}.oracle-interface{position:fixed;top:0;left:0;width:100vw;height:100vh;flex-direction:column;z-index:100;padding:8rem 2rem 4rem}.oracle-interface,.oracle-prompt{display:flex;justify-content:center;align-items:center}.oracle-prompt{height:100%}.oracle-cursor-container{text-align:center;font-size:1.2rem;color:var(--color-text)}.oracle-initial-text{opacity:.7;font-style:italic}.oracle-cursor{font-size:1.5rem;background:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-left:.2rem;opacity:0;transition:opacity .3s cubic-bezier(.4,0,.2,1);filter:drop-shadow(0 0 15px rgba(247,37,133,.6))}.oracle-cursor.visible{opacity:1;animation:cursorGlow .3s ease-in}@keyframes cursorGlow{0%{filter:drop-shadow(0 0 15px rgba(247,37,133,.6))}to{filter:drop-shadow(0 0 25px rgba(181,23,158,.9)) drop-shadow(0 0 35px rgba(76,201,240,.4))}}.oracle-messages{flex:1;width:100%;max-width:900px;overflow-y:auto;padding:2rem 0;display:flex;flex-direction:column;gap:3rem;position:relative;scrollbar-width:none;-ms-overflow-style:none}.oracle-messages::-webkit-scrollbar{display:none}.oracle-messages:after{content:"";position:fixed;right:1.5rem;top:50%;transform:translateY(-50%);width:4px;height:50vh;background:linear-gradient(180deg,transparent,rgba(247,37,133,.6) 20%,rgba(76,201,240,.8) 50%,rgba(181,23,158,.6) 80%,transparent);border-radius:2px;opacity:.8;transition:all .3s ease;pointer-events:none;z-index:1000;box-shadow:0 0 10px rgba(247,37,133,.3)}.oracle-messages:hover:after{opacity:1;width:6px;box-shadow:0 0 15px rgba(247,37,133,.5)}.oracle-message{text-align:center;animation:messageFloat .8s cubic-bezier(.2,0,.2,1);transform:translateY(0)}@keyframes messageFloat{0%{opacity:0;transform:translateY(40px) scale(.9);filter:blur(3px)}30%{opacity:.6;transform:translateY(-5px) scale(1.02);filter:blur(1px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.oracle-message--user{color:var(--color-text-secondary);font-style:italic}.oracle-message--user .message-prefix{color:#F72585;text-shadow:0 0 10px rgba(247,37,133,.8),0 0 20px rgba(247,37,133,.4)}.oracle-message--oracle{color:var(--color-text)}.message-prefix,.oracle-message--oracle .message-prefix{color:#4CC9F0;text-shadow:0 0 10px rgba(76,201,240,.8),0 0 20px rgba(76,201,240,.4)}.message-prefix{display:block;font-size:1rem;font-weight:600;margin-bottom:.8rem;opacity:1;letter-spacing:.5px}.message-text{font-size:1.3rem;font-weight:200;line-height:1.8;letter-spacing:.5px;max-width:700px;margin:0 auto}.oracle-message--oracle .message-text{filter:drop-shadow(0 0 10px rgba(247,37,133,.2))}.oracle-typing{text-align:center;color:var(--color-text-secondary)}.typing-indicator{display:inline-flex;gap:.3rem;margin-left:.5rem}.typing-indicator span{width:4px;height:4px;border-radius:50%;background:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0);animation:typingDot 1.4s infinite}.typing-indicator span:first-child{animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{opacity:.3;transform:scale(1) translateY(0)}30%{opacity:1;transform:scale(1.4) translateY(-2px);box-shadow:0 0 8px rgba(247,37,133,.6),0 0 12px rgba(181,23,158,.4)}}.oracle-input-form{width:100%;position:relative}.oracle-input{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(247,37,133,.3);color:var(--color-text);font-size:1.2rem;padding:1rem 0;text-align:center;outline:none;font-family:inherit;transition:all .4s cubic-bezier(.4,0,.2,1);transform:translateY(0)}.oracle-input:focus{border-image:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0) 1;border-bottom:2px solid;filter:drop-shadow(0 0 15px rgba(247,37,133,.4));transform:translateY(-2px);box-shadow:0 8px 25px rgba(181,23,158,.1)}.oracle-input::placeholder{color:transparent}.oracle-input:disabled{opacity:.5}.oracle-messages::-webkit-scrollbar{width:4px}.oracle-messages::-webkit-scrollbar-track{background:transparent}.oracle-messages::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#F72585,#B5179E 50%,#7209B7);border-radius:2px}.oracle-messages::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#B5179E,#7209B7 50%,#3A0CA3)}.oracle-tagline{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%);font-size:1rem;font-weight:200;color:var(--color-text-secondary);opacity:.6;text-align:center;letter-spacing:2px;transition:opacity .3s ease}.oracle-tagline:hover{opacity:1}@media screen and (max-width:768px){.oracle-cursor-container,.oracle-input{font-size:1rem}.message-text{font-size:1.1rem}.oracle-title{font-size:2.5rem;top:2rem;letter-spacing:2px}.oracle-tagline{font-size:.9rem;bottom:1.5rem;letter-spacing:1px}.oracle-interface{padding:6rem 1rem 3rem}.oracle-messages:after{right:1rem;height:40vh;width:3px}}.message-content{width:100%}.text-response{max-width:600px;margin:0 auto}.text-content{margin-bottom:1rem}.response-links{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0;justify-content:center}.response-link{background:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0);color:white;padding:.5rem 1rem;border-radius:20px;text-decoration:none;font-size:.9rem;font-weight:500;transition:all .3s ease;border:2px solid transparent}.response-link:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(247,37,133,.3);border-color:rgba(255,255,255,.2)}.code-block{margin:1.5rem 0;background:rgba(0,0,0,.3);border-radius:8px;overflow:hidden;border:1px solid rgba(247,37,133,.2)}.code-title{background:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0);color:white;padding:.5rem 1rem;font-size:.8rem;font-weight:600}.code-block pre{margin:0;padding:1rem;background:transparent;color:#e0e0e0;font-family:Monaco,Consolas,monospace;font-size:.85rem;line-height:1.5;overflow-x:auto}.portfolio-response{max-width:800px;margin:0 auto}.response-title{background:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.5rem;font-weight:700;margin-bottom:1rem;text-align:center}.response-description{text-align:center;margin-bottom:2rem;opacity:.9}.portfolio-category{margin-bottom:2rem}.category-title{color:#4CC9F0;font-size:1.2rem;margin-bottom:1rem;text-align:center}.projects-grid{display:grid;gap:1.5rem}.project-card{background:rgba(0,0,0,.1);border:none;border-radius:20px;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;backdrop-filter:blur(10px);box-shadow:0 8px 32px rgba(0,0,0,.3)}.project-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 16px 40px rgba(247,37,133,.2),0 0 60px rgba(76,201,240,.1)}.project-card.expanded{box-shadow:0 12px 40px rgba(76,201,240,.25),0 0 80px rgba(247,37,133,.1);backdrop-filter:blur(15px)}.project-image-container{position:relative;width:100%;height:200px;overflow:hidden;background:linear-gradient(135deg,rgba(247,37,133,.1),rgba(76,201,240,.1))}.project-image{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.project-card:hover .project-image{transform:scale(1.08)}.project-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.7));display:flex;align-items:flex-end;padding:1rem;opacity:0;transition:opacity .3s ease}.project-card:hover .project-overlay{opacity:1}.project-meta{display:flex;gap:1rem}.meta-item{background:rgba(0,0,0,.8);color:white;padding:.3rem .6rem;border-radius:12px;font-size:.75rem;font-weight:500;backdrop-filter:blur(10px)}.project-content{padding:1.5rem}.project-title{color:#4CC9F0;font-size:1.1rem;margin-bottom:.5rem}.project-description{margin-bottom:1rem;opacity:.9}.project-technologies{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tech-tag{background:linear-gradient(45deg,#7209B7,#3A0CA3);color:white;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:500}.project-highlights{margin-bottom:1rem}.highlight{font-size:.9rem;margin-bottom:.3rem;opacity:.8}.highlight-more{font-size:.85rem;color:#4CC9F0;opacity:.8;font-style:italic;margin-top:.3rem}.expanded-content{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(247,37,133,.2);animation:expandIn .4s ease-out}@keyframes expandIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.detail-section{margin-bottom:1.5rem}.detail-title{color:#4CC9F0;font-size:1rem;font-weight:600;margin-bottom:.8rem;display:flex;align-items:center}.detail-title:before{content:"";width:3px;height:16px;background:linear-gradient(180deg,#F72585,#4CC9F0);margin-right:.5rem;border-radius:2px}.detail-text{opacity:.9;line-height:1.6;margin-bottom:1rem}.detail-list{list-style:none;padding:0;margin:0}.detail-list li{padding:.5rem 0 .5rem 1.2rem;position:relative;opacity:.9;line-height:1.5}.detail-list.challenges li:before{content:"⚡";position:absolute;left:0;color:#F72585}.detail-list.solutions li:before{content:"💡";position:absolute;left:0;color:#4361EE}.detail-list.results li:before{content:"🎯";position:absolute;left:0;color:#4CC9F0}.project-actions{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;gap:1rem}.expand-button{background:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0);color:white;border:none;padding:.6rem 1.2rem;border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.expand-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(247,37,133,.3)}.project-links{display:flex;gap:.8rem}.project-link{background:transparent;border:1px solid #4cc9f0;color:#4CC9F0;padding:.4rem .8rem;border-radius:16px;text-decoration:none;font-size:.8rem;transition:all .3s ease;white-space:nowrap}.project-link:hover{background:#4CC9F0;color:var(--color-bg);transform:translateY(-1px)}@media screen and (max-width:768px){.project-actions{flex-direction:column;align-items:stretch}.project-links{justify-content:center}.project-image-container{height:150px}.expand-button{width:100%}}.contact-response{max-width:500px;margin:0 auto}.contact-form{margin-top:1.5rem}.form-field{margin-bottom:1.5rem}.field-label{display:block;margin-bottom:.5rem;font-weight:500;color:#4CC9F0}.required{color:#F72585;margin-left:.2rem}.field-input{width:100%;background:rgba(0,0,0,.3);border:1px solid rgba(247,37,133,.3);border-radius:8px;padding:.8rem;color:var(--color-text);font-family:inherit;transition:all .3s ease}.field-input:focus{outline:none;border-image:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0) 1;border-width:2px;box-shadow:0 0 15px rgba(247,37,133,.2)}.field-input::placeholder{color:var(--color-text-secondary);opacity:.7}.submit-button{width:100%;background:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0);color:white;border:none;padding:1rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px rgba(247,37,133,.3)}.submit-button:disabled{opacity:.7;cursor:not-allowed}.success-message{text-align:center;padding:2rem}.success-icon{font-size:3rem;margin-bottom:1rem}.meeting-response{max-width:500px;margin:0 auto}.meeting-card{background:rgba(0,0,0,.2);border:1px solid rgba(76,201,240,.3);border-radius:16px;padding:2rem;margin:1.5rem 0;backdrop-filter:blur(10px);transition:all .3s ease}.meeting-card:hover{border-color:rgba(76,201,240,.6);box-shadow:0 8px 25px rgba(76,201,240,.15)}.meeting-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.meeting-title{color:#4CC9F0;font-size:1.3rem;font-weight:600;margin:0}.meeting-badge{background:linear-gradient(45deg,#4CC9F0,#4361EE);color:white;padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.meeting-details{text-align:left}.meeting-duration{color:#F72585;font-weight:500;margin-bottom:.8rem;font-size:1rem}.meeting-description{opacity:.9;line-height:1.6;margin:0}.book-button{width:100%;background:linear-gradient(88.29deg,#F72585 1.07%,#B5179E 19.1%,#7209B7 38.68%,#3A0CA3 58.78%,#4361EE 78.36%,#4CC9F0);color:white;border:none;padding:1rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin:1.5rem 0}.book-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(247,37,133,.3)}.additional-info{background:rgba(0,0,0,.2);border-radius:8px;padding:1rem;margin-top:1rem}.additional-info h4{color:#4CC9F0;margin-bottom:.8rem}.additional-info ul{list-style:none;padding:0}.additional-info li{padding:.3rem 0;opacity:.9}.additional-info li:before{content:"→ ";color:#F72585;font-weight:700}