@font-face{font-family:'Nunito Sans';font-style:italic;font-weight:200 1000;font-stretch:100%;font-display:swap;src:url(/fonts/nunito-sans-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Nunito Sans';font-style:italic;font-weight:200 1000;font-stretch:100%;font-display:swap;src:url(/fonts/nunito-sans-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:200 1000;font-stretch:100%;font-display:swap;src:url(/fonts/nunito-sans-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:200 1000;font-stretch:100%;font-display:swap;src:url(/fonts/nunito-sans-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:rgba(0, 0, 0, .9);--text:rgba(255, 255, 255, .87);--muted:rgba(255, 255, 255, .7);--blue:#008DDA;--pink:#FF2DF1;--yellow:#FFFF00;--grad-blue:linear-gradient(135deg, #008DDA, #caecff);--grad-silver:linear-gradient(135deg, #eaeaea, #373737);--container:1200px;--header-h:42px;--radius-lg:20px;--radius-xl:28px;--shadow:6px 4px 4px 2px rgba(255, 255, 255, .2);--shadow-left:-6px 4px 4px 2px rgba(255, 255, 255, .2);--t-fade:.3s;--t-slide:.6s;--ease-slide:cubic-bezier(.25, .8, .25, 1)}.highlight-brilliant{background:linear-gradient(90deg,rgba(0,0,0,.65) 0,rgba(0,0,0,.65) 30%,var(--blue) 38%,var(--pink) 44%,silver 50%,silver 52%,var(--yellow) 58%,rgba(0,0,0,.65) 66%,rgba(0,0,0,.65) 100%);background-size:400% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:brilliantShimmer 10s infinite;animation-delay:-6s}@keyframes brilliantShimmer{0%,50%{background-position:100% 0;animation-timing-function:cubic-bezier(0.2,0.6,0.4,1)}100%,65%{background-position:0 0}}*,::after,::before{box-sizing:border-box}body,html{height:100%}html{overflow-x:hidden;scrollbar-gutter:stable both-edges}body{margin:0;padding-top:0!important;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;color:var(--text);background:var(--bg) url("/images/themlines.webp") top left/auto repeat;font-family:"Nunito Sans",sans-serif}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-40px;left:0;z-index:10000;padding:8px 16px;background:var(--blue);color:#fff;transition:top .3s ease}.skip-link:focus{top:0}#page-transition{position:fixed;inset:0;z-index:9999;background:var(--bg);pointer-events:none;transform:translateX(-100%);transition:transform var(--t-slide) var(--ease-slide);will-change:transform}#page-transition.enter{transform:translateX(0)}main{flex:1 0 auto;display:flex;justify-content:center;opacity:1;transition:opacity var(--t-fade) ease}body.is-loading main{opacity:0}body.is-leaving main{opacity:0;visibility:hidden}@media (prefers-reduced-motion:reduce){#page-transition,main{transition:none}}h1,h2,h3,h4,h5,h6{margin:0 0 .5em;font-weight:700;line-height:1.2}p{margin:0 0 1em}small{color:var(--muted);font-size:.875rem}a{color:var(--yellow);text-decoration:none}a:hover{color:rgba(255,45,241,.75)}.section_left h1,.section_right h1{font-size:clamp(2.2rem, 5vw, 3rem);font-weight:800;line-height:1.05;margin:0 0 1rem;color:#fff;text-transform:lowercase;letter-spacing:-.015em;text-shadow:0 2px 12px rgba(0,0,0,.35),0 0 18px rgba(0,141,218,.35)}.section_left li,.section_left p,.section_right li,.section_right p{color:rgba(0,0,0,.65)}.section_left a:not(.mb-submit),.section_right a:not(.mb-submit){color:rgba(255,45,241,.75)}.section_left a:not(.mb-submit):hover,.section_right a:not(.mb-submit):hover{color:var(--yellow)}.site-header{position:sticky;top:0;z-index:9999;width:100%;height:var(--header-h);min-height:var(--header-h);contain:layout style;backdrop-filter:saturate(140%) blur(6px);-webkit-backdrop-filter:saturate(140%) blur(6px)}.header-grid>.nav{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;width:100%}.header-title{justify-self:center;display:flex;align-items:center;min-width:0}.header-title canvas,.header-title img{max-width:clamp(120px,30vw,200px);height:auto}.pages,.socials{min-width:0;display:flex;align-items:center;gap:clamp(.35rem,1.5vw,.75rem);flex-wrap:nowrap}.pages{justify-self:start;padding-left:.5rem}.socials{justify-self:end;padding-right:.5rem}.pages a,.socials a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.pages img,.socials img{width:clamp(20px,5vw,28px);height:auto;display:block}.pages a:hover img,.socials a:hover img{opacity:.7;transition:opacity .15s ease}.desktop-only{display:flex}#main-container,#main_container{max-width:var(--container);margin:0 auto;padding:0 1rem}.page-contact main{align-items:center}#main-container>.logo-solo,#main_container>.logo-solo{margin:0 auto}.logo-solo{width:min(100%,600px);aspect-ratio:1/1;contain:layout;position:relative}#mb_logo_static{width:100%;height:100%;object-fit:contain}#mb_logo_riv{width:100%;height:100%;display:block}.section_container{display:flex;justify-content:start;margin:2%}.section_left,.section_right{z-index:1;width:80%;min-height:300px;font-size:1.2rem;margin:2rem auto;border:1px solid rgba(255,255,255,.8);border-radius:var(--radius-lg)}.section_left{padding:1.75rem 12% 2rem 2rem;background:linear-gradient(135deg,rgba(0,141,218,.65),rgba(202,236,255,.55));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-left)}.section_right{padding:2rem 2rem 2rem 12%;background:linear-gradient(135deg,rgba(234,234,234,.55),rgba(55,55,55,.45));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow)}.section_box_left,.section_box_right{z-index:2;width:40%;height:80%}.section_box_left{margin:0 -10% -10% 0}.section_box_right{margin:0 0 -10% -10%}.section_left,.section_right{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.section_left:hover,.section_right:hover{transform:translateY(-4px)}.section_left:hover{box-shadow:var(--shadow-left),0 0 30px rgba(0,141,218,.35);border-color:rgba(0,141,218,.6)}.section_right:hover{box-shadow:var(--shadow),0 0 30px rgba(255,255,255,.25);border-color:#fff}.section_left,.section_right{position:relative;overflow:visible}.section_left::before,.section_right::before{content:'';position:absolute;inset:-2px;border-radius:calc(var(--radius-lg) + 2px);padding:2px;background:linear-gradient(var(--gradient-angle,135deg),var(--blue),var(--pink),var(--yellow),var(--blue));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s ease;pointer-events:none}.section_left:hover::before,.section_right:hover::before{opacity:1;animation:gradient-rotate 4s linear infinite}@keyframes gradient-rotate{0%{--gradient-angle:0deg}100%{--gradient-angle:360deg}}@property --gradient-angle{syntax:'<angle>';initial-value:135deg;inherits:false}.section_box_left,.section_box_right{position:relative}.section_box_left::after,.section_box_right::after{content:'';position:absolute;inset:-20%;background:radial-gradient(circle at center,rgba(0,141,218,.3) 0,rgba(255,45,241,.15) 40%,transparent 70%);z-index:-1;pointer-events:none;opacity:.7;filter:blur(20px);animation:glow-pulse 3s ease-in-out infinite alternate}@keyframes glow-pulse{0%{opacity:.5;transform:scale(.95)}100%{opacity:.8;transform:scale(1.05)}}.footer{margin-top:auto;width:100%;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem 1rem .5rem;border-top:1px solid rgba(255,255,255,.12);backdrop-filter:saturate(140%) blur(6px);-webkit-backdrop-filter:saturate(140%) blur(6px)}.footer-nav{display:flex;justify-content:center;gap:1.5rem;font-size:.85rem;font-weight:600}.footer-nav a{color:var(--text);text-decoration:none;padding:.5rem .75rem;min-height:44px;display:inline-flex;align-items:center;transition:color .2s ease}.footer-nav a:hover{color:rgba(255,45,241,.75)}.footer-nav a.is-active{color:var(--blue)}.footer-social{display:flex;gap:1rem}.footer-social a{display:flex;align-items:center;justify-content:center;opacity:.8;transition:opacity .2s ease,transform .2s ease}.footer-social a:hover{opacity:1;transform:scale(1.1)}.footer-social img{width:20px;height:20px}.footer-info{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;font-size:.75rem;opacity:.6}.footer-info a{color:var(--blue);text-decoration:none;padding:.35rem .5rem}.footer-info a:hover{color:rgba(255,45,241,.75)}img{display:block;max-width:100%;height:auto}.logo,.section_image{width:100%;height:auto;object-fit:cover}button,input,textarea{font-size:16px;max-width:100%}#contact-form{margin-top:1.25rem;padding:1.25rem;display:grid;gap:1rem;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.5);background:var(--grad-silver);backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%);box-shadow:0 12px 28px rgba(0,0,0,.25)}#contact-form .form-field{display:grid;gap:.35rem}#contact-form input,#contact-form textarea{width:100%;padding:.85rem .9rem;border-radius:14px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.685);color:rgba(0,0,0,.95);font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}#contact-form textarea{resize:vertical;min-height:9rem}#contact-form input:focus,#contact-form textarea:focus{outline:0;border-color:var(--yellow);box-shadow:0 0 0 3px rgba(255,255,0,.25)}.mb-submit{appearance:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:200px;height:50px;margin:1.25rem auto 0;padding:0 1.5rem;font-family:"Nunito Sans",sans-serif;font-size:.95rem;font-weight:600;letter-spacing:.02em;text-align:center;text-transform:lowercase;text-decoration:none;color:silver;border-radius:999px;border:1px solid rgba(234,234,234,.45);background:linear-gradient(135deg,#111 0,#222 40%,#000 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 8px 18px rgba(0,0,0,.35);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,color .15s ease}.mb-submit:hover{color:var(--blue);transform:translateY(-1px);border-color:rgba(234,234,234,.75);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 0 0 2px rgba(255,45,241,.35),0 12px 26px rgba(0,0,0,.45)}.mb-submit:active{transform:translateY(1px);box-shadow:inset 0 2px 6px rgba(0,0,0,.6),0 4px 10px rgba(0,0,0,.4)}.mb-submit:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(255,45,241,.55),inset 0 1px 0 rgba(255,255,255,.2)}.mb-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 4px 8px rgba(0,0,0,.25)}.portfolio-slider{width:100%;max-width:var(--container);margin:2rem auto;padding:0}.portfolio-heading{font-size:1rem;font-weight:600;letter-spacing:.15em;color:var(--blue);margin:0 0 1.25rem 1rem}.portfolio-wrapper{display:flex;flex-direction:column;align-items:stretch;padding:0 .5rem}.portfolio-nav-buttons{display:inline-flex;align-items:center;gap:.5rem}.portfolio-nav{flex:0 0 auto;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--text);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.portfolio-nav:hover{background:rgba(255,45,241,.15);border-color:rgba(255,45,241,.25);color:rgba(255,45,241,.25)}.portfolio-nav:active{transform:scale(.95)}.portfolio-track{flex:1;display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding:.5rem 0;scrollbar-width:none;-ms-overflow-style:none}.portfolio-track::-webkit-scrollbar{display:none}.portfolio-card{flex:0 0 calc((100% - 2.5rem)/ 3);min-width:240px;aspect-ratio:4/3;scroll-snap-align:start;border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(0,141,218,.2),rgba(255,45,241,.15));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-decoration:none;color:var(--text);overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease}.portfolio-card::after{content:"";position:absolute;inset:0;border-radius:inherit;border:1px solid rgba(255,255,255,.3);pointer-events:none;z-index:2;transition:border-color .3s ease}.portfolio-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(255,45,241,.25),0 0 20px rgba(255,45,241,.15);color:var(--text)}.portfolio-card:hover::after{border-color:rgba(255,45,241,.25)}.portfolio-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.portfolio-card-inner{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:1.25rem;background:linear-gradient(to top,rgba(0,0,0,.85) 0,rgba(0,0,0,.4) 40%,transparent 100%)}.portfolio-card h3{margin:0 0 .25rem;font-size:clamp(1.1rem, 3vw, 1.35rem);font-weight:700;color:#fff;text-transform:lowercase}.portfolio-card p{margin:0;font-size:.85rem;color:var(--muted)}.portfolio-page{max-width:900px;margin:0 auto;padding:2rem 1.5rem 4rem}.portfolio-hero{text-align:center;margin-bottom:3rem;padding:2rem 0}.portfolio-hero h1{font-size:clamp(2.5rem, 8vw, 4rem);font-weight:800;margin:0 0 .5rem}.portfolio-hero img{display:block;max-width:100%;width:500px;height:auto;margin:0 auto;border-radius:var(--radius-lg)}.portfolio-hero h1 span{display:inline-block;color:transparent;background:linear-gradient(120deg,rgba(0,141,218,.85) 0,rgba(202,236,255,.55) 45%,rgba(234,234,234,.85) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.portfolio-hero .tagline{font-size:1.25rem;color:var(--muted);margin:0 0 1.5rem}.portfolio-hero .visit-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:rgba(255,255,255,.095);border:1px solid silver;border-radius:999px;color:silver;font-weight:600;transition:all .2s ease}.portfolio-hero .visit-link:hover{border-color:rgba(255,45,241,.25);color:rgba(255,45,241,.75)}.portfolio-section{margin-bottom:3rem}.section-label{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--blue);margin:0 0 1rem}.portfolio-section p{font-size:1.1rem;line-height:1.7;color:var(--text);margin:0 0 1rem}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.tech-card{padding:1rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-lg);text-align:center;transition:border-color .2s ease}.tech-card:hover{border-color:rgba(255,45,241,.25)}.tech-card strong{display:block;color:#fff;margin-bottom:.25rem}.tech-card span{font-size:.85rem;color:var(--muted)}.process-list{list-style:none;padding:0;margin:0;counter-reset:process}.process-list li{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.25rem;counter-increment:process}.process-list li::before{content:counter(process);flex:0 0 2rem;height:2rem;display:flex;align-items:center;justify-content:center;background:rgba(255,45,241,.25);color:#fff;font-weight:700;font-size:.85rem;border-radius:50%}.process-list li span{color:var(--text);line-height:1.6;padding-top:.25rem}.screenshot-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1rem}.screenshot-card{border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.15);background:rgba(0,0,0,.3)}.screenshot-card img{width:100%;height:auto;display:block}.screenshot-card figcaption{padding:.75rem 1rem;font-size:.85rem;color:var(--muted);text-align:center}.portfolio-back{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:2rem;color:var(--muted);font-size:.9rem;transition:color .2s ease}.portfolio-back:hover{color:rgba(255,45,241,.75)}.home-stack{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:1rem;padding-bottom:2rem}@media (max-width:900px){.section_container{flex-direction:column;align-items:center}.section_left,.section_right{width:95%;margin:1rem auto}.section_box_left,.section_box_right{width:60%;margin:-2rem auto 1rem;height:auto}.portfolio-card{flex:0 0 calc((100% - 1.25rem)/ 2);min-width:200px}}@media (max-width:768px){.desktop-only{display:none!important}.header-grid>.nav{display:flex;justify-content:center;align-items:center}.header-title{flex:1;justify-content:center}.header-title canvas,.header-title img{max-width:min(70vw,280px);height:auto}:root{--header-h:56px}}@media (max-width:600px){#main-container,#main_container{padding:0 .75rem}.section_left,.section_right{width:100%;min-height:auto;padding:1.5rem;font-size:1rem;margin:.5rem 0}.section_box_left,.section_box_right{display:none}.logo-solo{width:min(85vw,400px)}.footer{padding:.5rem .5rem .35rem;gap:.35rem}.footer-nav{gap:1rem;font-size:.8rem}.footer-info{font-size:.7rem;gap:.4rem}#contact-form{margin-left:auto;margin-right:auto}.portfolio-wrapper{padding:0}.portfolio-nav{display:none}.portfolio-track{gap:1rem;padding:.5rem 1rem}.portfolio-card{flex:0 0 85%;min-width:0}.portfolio-heading{margin-left:1rem}.portfolio-page{padding:1.5rem 1rem 3rem}.portfolio-hero h1{font-size:clamp(2rem, 10vw, 2.5rem)}.portfolio-hero .tagline{font-size:1rem}.portfolio-hero img{width:100%;max-width:320px}.portfolio-section p{font-size:1rem}.screenshot-gallery,.tech-grid{grid-template-columns:1fr}.process-list li{gap:.75rem;margin-bottom:1rem}.section_left h1,.section_right h1{font-size:clamp(1.75rem, 6vw, 2.2rem)}h1{font-size:clamp(1.5rem, 6vw, 2rem)}h2{font-size:clamp(1.25rem, 5vw, 1.5rem)}h3{font-size:clamp(1rem, 4vw, 1.25rem)}}@media (max-width:450px){:root{--header-h:64px}.pages{transform:scale(.9);transform-origin:left center;gap:.5rem}.socials{transform:scale(.9);transform-origin:right center;gap:.35rem}}@media (max-width:400px){.section_left,.section_right{padding:1.25rem 1rem}.logo-solo{width:min(90vw,300px)}.portfolio-card h3{font-size:1rem}.portfolio-card p{font-size:.75rem}.portfolio-card-inner{padding:1rem}#contact-form{padding:1rem}#contact-form input,#contact-form textarea{padding:.75rem}.mb-submit{width:100%;max-width:200px}}@media (max-height:500px) and (orientation:landscape){.logo-solo{width:min(50vh,300px)}.home-stack{padding-top:.5rem;padding-bottom:1rem}}.scroll-reveal,.scroll-reveal-left,.scroll-reveal-right,.scroll-reveal-scale{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out}.scroll-reveal-scale{transition-duration:.5s}.scroll-reveal{transform:translateY(30px)}.scroll-reveal-left{transform:translateX(-40px)}.scroll-reveal-right{transform:translateX(40px)}.scroll-reveal-scale{transform:scale(.9)}.scroll-reveal:nth-child(2){transition-delay:0.1s}.scroll-reveal:nth-child(3){transition-delay:0.2s}.scroll-reveal:nth-child(4){transition-delay:0.3s}.scroll-reveal-left.revealed,.scroll-reveal-right.revealed,.scroll-reveal-scale.revealed,.scroll-reveal.revealed{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.scroll-reveal,.scroll-reveal-left,.scroll-reveal-right,.scroll-reveal-scale{opacity:1;transform:none;transition:none}}