@font-face{font-family:Montserrat;src:url(/assets/Montserrat-VariableFont_wght-i02rBV5P.ttf);font-weight:200 800}@font-face{font-family:Outfit;src:url(/assets/Outfit-VariableFont_wght-vXxiUg8D.ttf);font-weight:100 900}@font-face{font-family:Fraunces;src:url(/assets/Fraunces-Italic-DR5riGUD.woff2) format("woff2");font-style:italic;font-weight:300 600;font-display:swap}@font-face{font-family:Roboto;src:url(/assets/Roboto-Black-qr0G-G-3.ttf)}@font-face{font-family:FAregular;src:url(/assets/fa-regular-CXjIVIxJ.woff2)}@font-face{font-family:FAbrands;src:url(/assets/fa-brands-rBZOKPDu.woff2)}.ReactModal__Content{transform:scale(.1);transition:.1s ease-in-out .2s}.ReactModal__Content--after-open{transform:scale(1)}.ReactModal__Content--before-close{transform:scale(.1)}.ReactModal__Overlay{opacity:0;transition:.25s ease-in-out}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}.modal-indicator,.modal-close-btn{display:block;position:fixed;top:2.5rem;right:2.5rem;font-size:2rem;font-weight:600;line-height:3.1rem;z-index:10000;color:#00bfff;width:3rem;height:3rem;border-radius:.5rem;background-color:#ffffff1a;opacity:0;transition:opacity .5s linear}.modal{top:2.5rem;bottom:2.5rem;left:2.5rem;right:2.5rem;position:absolute;background-color:#000;border-radius:5rem;overflow:hidden}.modal:focus,.modal:active{outline:none!important;box-shadow:none!important}.modal-overlay{top:0;bottom:0;left:0;right:0;position:fixed;z-index:1000;background-color:#191919d9}@media (hover: hover){.modal-close-btn:hover{color:#000;background-color:#00bfff;cursor:pointer}}.modal-indicator{left:2.5rem;top:calc(100dvh - 5rem);width:fit-content;background-color:transparent;opacity:0}.modal .modal-loading{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.modal .modal-loading>img{transform-origin:50% 50%;width:15lvh;transition:transform .5s ease;animation:bounce 1.5s cubic-bezier(.28,.84,.42,1) infinite}@media (orientation: portrait){.modal .modal-loading>img{width:15lvw}}@keyframes button-pulsing{0%,40%,to{transform:scale(1)}20%{transform:scale(1.15)}}@keyframes eyes-shifting{10%,40%{transform:rotate(-2deg) translate(0)}0%,30%,50%,to{transform:rotate(-2deg) translate(-12.5%)}20%{transform:rotate(-2deg) translate(12.5%)}}@keyframes hand-wave{0%{transform:rotate(40deg)}to{transform:rotate(-10deg)}}@keyframes ringing{20%{transform:rotate(0)}21%{transform:rotate(10deg)}22%{transform:rotate(-10deg)}23%{transform:rotate(12deg)}24%{transform:rotate(-12deg)}25%{transform:rotate(12deg)}26%{transform:rotate(-12deg)}28%{transform:rotate(10deg)}30%{transform:rotate(-10deg)}32%{transform:rotate(5deg)}34%{transform:rotate(-5deg)}36%{transform:rotate(2deg)}38%{transform:rotate(0)}}@keyframes rocking{0%,to{transform:rotate(7deg)}50%{transform:rotate(-7deg)}}@keyframes bouncing{0%,to{transform:translateY(0);color:#fff}16.67%{transform:translateY(15px);color:#00bfff}33.34%{transform:translateY(0);color:#00bfff}50%{transform:translateY(15px);color:#000}66.66%{transform:translateY(0);color:#000}83.4%{transform:translateY(15px);color:#fff}}@keyframes bouncing-shadow{0%,16.67%,33.34%,83.4%,to{text-shadow:3px 3px 0 #000,-3px 3px 0 #000,-3px -3px 0 #000,3px -3px 0 #000}50%,66.66%{text-shadow:3px 3px 0 #fff,-3px 3px 0 #fff,-3px -3px 0 #fff,3px -3px 0 #fff}}@keyframes menu-button-pulsing{0%,40%,to{transform:scale(1);color:#fff;background-color:#00bfff}20%{transform:scale(1.15);color:#00bfff;background-color:#fff}}@keyframes anchor-title-pulsing{0%,80%,to{transform:scale(1)}90%{transform:scale(1.15)}}@keyframes clickable-pulsing{0%,80%,to{transform:scale(1);color:#fff}90%{transform:scale(1.15);color:#00bfff}}@keyframes gradient-loading{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}:root{font-family:Outfit,Montserrat,Roboto,Arial,sans-serif;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{font-family:Outfit,Montserrat,sans-serif;font-size:16px;font-style:normal;margin:0;padding:0;-webkit-font-smoothing:subpixel-antialiased;max-width:100%;color:#fff;-webkit-user-select:none;user-select:none}@media (max-width: 1400px) and (orientation: landscape){html,body{font-size:15px}}@media (max-width: 1300px){html,body{font-size:1vw}}@media (max-width: 1300px) and (min-aspect-ratio: 2 / 1) and (orientation: landscape){html,body{font-size:.7vw}}@media (min-width: 501px) and (max-width: 850px) and (orientation: portrait){html,body{font-size:1.5vw}}@media (max-width: 500px) and (orientation: portrait){html,body{font-size:2vw}}@media (max-width: 358px) and (orientation: portrait){html,body{font-size:7.2px}}body{background:#000}button,input[type=submit],input[type=reset]{background:none;color:inherit;border:none;padding:0;font:inherit;cursor:pointer;outline:inherit;line-height:normal}a{text-decoration:none;color:inherit}*{box-sizing:border-box}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-button{width:0;height:0}*::-webkit-scrollbar-thumb{background:#039ccf;border:none;border-radius:2px}*::-webkit-scrollbar-thumb:hover{background:#00bfff}*::-webkit-scrollbar-thumb:active{background:#00bfff}*::-webkit-scrollbar-track{background:#0d0d0d;border:none;border-radius:2px}*::-webkit-scrollbar-track:hover{background:#0d0d0d}*::-webkit-scrollbar-track:active{background:#0d0d0d}*::-webkit-scrollbar-corner{background:transparent}.deep-sky-blue{color:#00bfff}.big{font-size:6rem;font-weight:400}.small{font-size:2rem;font-weight:200}body{overflow:hidden}.video-background-wrapper{position:fixed;top:0;left:0;width:100vw;height:100lvh;z-index:0}.video-background-wrapper:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:40%;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.25),rgba(0,0,0,.5),rgba(0,0,0,.75));pointer-events:none;z-index:2}.video-background-wrapper .video-background,.video-background-wrapper .scroll-video-background{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.video-background-wrapper .video-background{opacity:.85;transition:opacity 1s ease-in-out;z-index:1}.video-background-wrapper .video-background.fade-out{opacity:0}.app-wrapper{position:relative;z-index:1;width:100%}#app{display:block;max-width:1440px;min-width:360px;margin-left:auto;margin-right:auto;left:0;right:0;position:absolute;padding:0 10px}#app .pages{display:block;font-size:2rem;font-weight:600;line-height:4.5rem}#about-me{margin-left:auto;margin-right:auto;width:90%}#about-me .watermark{width:100%;font-size:12rem;font-weight:200;line-height:1;letter-spacing:.15em;text-transform:uppercase;color:#88c8f0;opacity:.85;text-align:center;pointer-events:none}@media (max-width: 500px) and (orientation: portrait){#about-me .watermark{font-size:20vw}}#about-me .slides-container{overflow:hidden}#about-me .slides-container>div{display:flex;align-items:center;width:300%;height:100%}#about-me .slides-container>div .slide{display:flex;justify-content:center;width:100%;padding:0}#about-me .slides-container>div .slide .slide-content{margin:1rem}#about-me .slides-container>div .slide .slide-content .big{text-shadow:0 2px 12px rgba(0,0,0,.5),0 0 30px rgba(0,0,0,.2)}#about-me .slides-container>div .slide .slide-content .small{text-shadow:0 1px 4px rgba(0,0,0,.4)}#about-me .slides-container a{display:inline}#about-me .slides-container a img{height:7rem;padding:1rem;vertical-align:middle;background-color:#fff;border-radius:2rem;transition:.5s ease-in-out;animation:button-pulsing 3s ease-in-out infinite}@media (hover: hover){#about-me .slides-container a img:hover{transform-origin:50% 50%;scale:1.25;animation-play-state:paused}}#about-me .slides-container .hobbies div{width:100%;text-align:center}#about-me .slides-container .hobbies button{margin-left:auto;margin-right:auto;padding:1rem 2rem;vertical-align:middle;background:#88c8f02e;backdrop-filter:blur(8px) saturate(1.15);-webkit-backdrop-filter:blur(8px) saturate(1.15);border:1px solid rgba(136,200,240,.2);border-radius:.5rem;transition:all .25s ease;animation:button-pulsing 3s ease-in-out infinite;font-size:1.5rem}@media (hover: hover){#about-me .slides-container .hobbies button:hover{transform-origin:50% 50%;scale:1.1;background:#88c8f040;border-color:#88c8f059;box-shadow:0 4px 16px #88c8f01a;animation:none}}#back-to-top{display:flex;justify-content:center;position:fixed;bottom:2rem;right:2rem;z-index:2;flex-flow:row;visibility:hidden;opacity:0}@media (hover: hover){#back-to-top:hover{opacity:1!important}}#back-to-top a{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:10pt;border-radius:20pt;font-family:FAregular;font-size:10pt;opacity:.6;transition:opacity .2s ease-out,color .2s ease-out;color:#fff}@media (hover: hover){#back-to-top a:hover{opacity:1;color:#00bfff}}#back-to-top svg{position:sticky;transform:rotate(-90deg)}#back-to-top svg circle{stroke:#ffffff26;stroke-width:1.5px;stroke-linecap:round;fill:#ffffff0f}#back-to-top .progress-bar{stroke:url(#grad);stroke-width:2px;transition:stroke-dashoffset 0s ease-in-out}#contact-me{margin-left:auto;margin-right:auto;width:90%}#contact-me .watermark{width:100%;font-size:clamp(7rem,14lvw,12rem);font-weight:200;line-height:1;letter-spacing:.15em;text-transform:uppercase;color:#88c8f0;opacity:.85;text-align:center;pointer-events:none}@media (max-width: 500px) and (orientation: portrait){#contact-me .watermark{font-size:7rem}}#contact-me .contact-eyebrow{margin:0;font-size:clamp(13px,12.4px + .1875vw,16px);font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:#ffd4b8;text-align:center;text-shadow:0 0 8px rgba(0,0,0,.5),0 0 16px rgba(0,0,0,.3),0 1px 3px rgba(0,0,0,.45)}#contact-me .contact-display{margin-left:auto;margin-right:auto;margin-top:clamp(12px,1vw,14px);font-family:Outfit,sans-serif;font-weight:200;font-size:clamp(36px,30.4px + 1.75vw,64px);letter-spacing:-.01em;line-height:1.1;color:#fff;text-align:center;text-shadow:0 0 20px rgba(0,0,0,.45),0 0 40px rgba(0,0,0,.3),0 3px 8px rgba(0,0,0,.42)}#contact-me .contact-display em{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:400;color:#ffd4b8}#contact-me .contact-intro{margin-left:auto;margin-right:auto;margin-top:clamp(18px,1.5vw,20px);font-family:Outfit,sans-serif;font-weight:300;font-size:clamp(18px,17.2px + .25vw,22px);line-height:1.6;color:#ffffffd1;text-align:center;text-shadow:0 0 14px rgba(0,0,0,.5),0 0 28px rgba(0,0,0,.32),0 2px 6px rgba(0,0,0,.45)}#contact-me .contact-intro .wave{display:inline-block;transform-origin:70% 70%;animation:contact-wave 2.6s ease-in-out infinite}#contact-me .contact-intro .email-link{color:#88c8f0;border-bottom:1px dashed rgba(136,200,240,.5);padding-bottom:1px;text-decoration:none;transition:color .2s ease,border-color .2s ease}@media (hover: hover){#contact-me .contact-intro .email-link:hover{color:#ffd4b8;border-bottom-color:#ffd4b899}}#contact-me .contact-intro .email-cluster{white-space:nowrap}#contact-me .contact-intro .copy-email{color:#ffffff8c;opacity:1;font-size:clamp(14px,13.4px + .1875vw,17px);vertical-align:baseline;text-shadow:0 0 8px rgba(0,0,0,.5),0 0 16px rgba(0,0,0,.3),0 1px 3px rgba(0,0,0,.45);transition:color .2s ease,transform .2s ease}@media (hover: hover){#contact-me .contact-intro .copy-email:hover{color:#ffd4b8;opacity:1;transform:translateY(-1px)}}#contact-me .contact-intro .copy-email.copied{color:#ffd4b8}#contact-me .contact-intro .copy-email.error{color:#ff7a7a}#contact-me .form-card{margin-left:auto;margin-right:auto;position:relative;width:100%;max-width:800px;margin-top:clamp(40px,4vw,52px);padding:clamp(20px,2.5vw,36px) clamp(18px,2.25vw,36px) clamp(18px,2vw,32px);line-height:normal;background:#0f0f2380;backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.12);border-radius:clamp(14px,1.25vw,20px);box-shadow:0 6px 20px #0000002e,inset 0 1px #ffffff14;transition:box-shadow .4s ease}#contact-me .form-card.is-sending{animation:card-pulse 2.4s ease-in-out infinite}#contact-me .form-card .form-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:clamp(180px,28vw,320px);height:auto;opacity:.025;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0}#contact-me .form-card form{position:relative;z-index:1;display:flex;flex-direction:column;gap:clamp(16px,1.4vw,22px)}#contact-me .form-card .field{position:relative}#contact-me .form-card .field input,#contact-me .form-card .field textarea{width:100%;padding:1.5em 2.4em .55em .85em;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:.6em;outline:none;font-family:Outfit,sans-serif;font-weight:300;font-size:clamp(15px,13.4px + .25vw,18px);line-height:1.2;color:#fff;caret-color:#ffd4b8;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease}@media (hover: hover){#contact-me .form-card .field input:hover:not(:focus),#contact-me .form-card .field textarea:hover:not(:focus){background:#ffffff14;transform:translateY(-1px);box-shadow:0 4px 14px #00000026,0 0 16px #ffd4b814}}#contact-me .form-card .field textarea{min-height:9em;resize:vertical;line-height:1.5}#contact-me .form-card .field input::placeholder,#contact-me .form-card .field textarea::placeholder{color:transparent}#contact-me .form-card .field label{position:absolute;top:1em;left:.95em;font-family:Outfit,sans-serif;font-size:clamp(15px,13.4px + .25vw,18px);font-weight:300;color:#ffffff8c;pointer-events:none;transform-origin:left top;transition:transform .2s ease,color .2s ease,letter-spacing .2s ease,font-weight .2s ease}#contact-me .form-card .field input:focus+label,#contact-me .form-card .field input:not(:placeholder-shown)+label,#contact-me .form-card .field textarea:focus+label,#contact-me .form-card .field textarea:not(:placeholder-shown)+label{transform:translate(-.05em,-.7em) scale(.72);color:#ffd4b8;font-weight:500;letter-spacing:.18em;text-transform:uppercase}#contact-me .form-card .field input:focus,#contact-me .form-card .field textarea:focus{border-color:#ffd4b873;background:#ffffff14;box-shadow:0 0 0 3px #ffd4b81a,0 6px 18px #0000002e}#contact-me .form-card .field .status{position:absolute;top:1.35em;right:.85em;width:1.5em;height:1.5em;display:inline-flex;align-items:center;justify-content:center;font-family:FAregular;font-size:clamp(13px,11px + .15vw,15px);border-radius:50%;opacity:0;transform:scale(.6);transition:opacity .25s ease,transform .25s ease,background .25s ease,box-shadow .25s ease,color .25s ease;pointer-events:none}#contact-me .form-card .field.is-valid input,#contact-me .form-card .field.is-valid textarea{border-color:#88c8f04d}#contact-me .form-card .field.is-valid .status{opacity:1;transform:scale(1);background:#88c8f029;color:#88c8f0;box-shadow:0 0 14px #88c8f040}#contact-me .form-card .field.is-invalid input,#contact-me .form-card .field.is-invalid textarea{border-color:#ff7a7a73}#contact-me .form-card .field.is-invalid .status{opacity:1;transform:scale(1);background:#ff7a7a29;color:#ff7a7a;box-shadow:0 0 14px #ff7a7a40}#contact-me .form-card .field .error-msg{display:block;font-family:Outfit,sans-serif;font-weight:300;font-size:clamp(11px,10px + .15vw,13px);line-height:1;letter-spacing:.04em;color:#ff7a7a;text-shadow:0 1px 4px rgba(0,0,0,.5);margin-top:0;max-height:0;opacity:0;overflow:hidden;transition:max-height .3s ease,opacity .25s ease,margin-top .25s ease}#contact-me .form-card .field.is-invalid .error-msg{max-height:1.4em;opacity:1;margin-top:.5em}#contact-me .form-card .form-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.5rem;flex-wrap:wrap}#contact-me .form-card .send-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.55em;padding:.85em 1.9em;background:#ffd4b829;backdrop-filter:blur(14px) saturate(1.25);-webkit-backdrop-filter:blur(14px) saturate(1.25);border:1px solid rgba(255,212,184,.4);border-radius:999px;color:#ffd4b8;font-family:Fraunces,Georgia,serif;font-weight:300;font-style:italic;font-size:clamp(15px,13.4px + .25vw,18px);letter-spacing:.04em;box-shadow:0 6px 20px #0000002e,inset 0 1px #ffffff14;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease;cursor:pointer;overflow:visible}@media (hover: hover){#contact-me .form-card .send-btn:hover:not(:disabled){background:#ffd4b847;border-color:#ffd4b899;color:#fff;box-shadow:0 6px 20px #0000002e,0 0 28px #ffd4b847,inset 0 1px #ffffff1f;transform:translateY(-1px)}}#contact-me .form-card .send-btn:active:not(:disabled){transform:translateY(0)}#contact-me .form-card .send-btn:disabled{cursor:not-allowed}#contact-me .form-card .send-btn .icon-slot{position:relative;width:1em;height:1em;display:inline-flex;align-items:center;justify-content:center}#contact-me .form-card .send-btn .plane{position:absolute;top:0;right:0;bottom:0;left:0;display:inline-flex;align-items:center;justify-content:center;font-family:FAregular;font-size:1em;transition:opacity .25s ease}#contact-me .form-card .send-btn .spinner{position:absolute;top:0;right:0;bottom:0;left:0;width:1em;height:1em;border-radius:50%;border:2px solid rgba(255,212,184,.25);border-top-color:#ffd4b8;animation:spin .7s linear infinite;opacity:0;transition:opacity .25s ease}#contact-me .form-card .send-btn.is-loading .spinner{opacity:1}#contact-me .form-card .send-btn.is-flying .plane{animation:plane-takeoff .85s cubic-bezier(.32,.05,.2,1) forwards}#contact-me .form-card .send-btn.is-flying .spinner{opacity:0;animation:spin .7s linear infinite,spinner-fade-in .35s ease .45s forwards}#contact-me .form-card .send-btn.plane-return .plane{animation:plane-return .45s cubic-bezier(.2,.8,.3,1) forwards}#contact-me .form-card .form-message{flex:0 1 auto;font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(13px,11px + .2vw,16px);line-height:1.4;color:#ffffffd9;text-align:right;text-shadow:0 1px 4px rgba(0,0,0,.4);opacity:0;transform:translate(.4rem);transition:opacity .4s ease,transform .4s ease}#contact-me .form-card .form-message.show{opacity:1;transform:translate(0)}#contact-me .form-card .form-message.error{color:#ff7a7a}#contact-me .form-card .form-message.success{color:#ffd4b8}@media (max-width: 500px) and (orientation: portrait){#contact-me .form-card .form-actions{flex-direction:column;align-items:stretch}#contact-me .form-card .send-btn{justify-content:center}#contact-me .form-card .form-message{text-align:center}}#contact-me .social-media{margin-left:auto;margin-right:auto;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(24px,2.4vw,40px);margin-top:clamp(40px,5vw,80px);margin-bottom:clamp(40px,5vw,80px);width:100%}#contact-me .social-media a,#contact-me .social-media button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:clamp(72px,60px + 1.5vw,84px);height:clamp(72px,60px + 1.5vw,84px);background:#0f0f2347;backdrop-filter:blur(14px) saturate(1.25);-webkit-backdrop-filter:blur(14px) saturate(1.25);border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#ffffffd9;font-family:FAbrands;font-size:clamp(27px,22.5px + .6vw,33px);box-shadow:0 6px 20px #0000002e,inset 0 1px #ffffff14;transition:background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease;-webkit-font-smoothing:antialiased;cursor:pointer}@media (hover: hover){#contact-me .social-media a:hover,#contact-me .social-media button:hover{background:#88c8f02e;border-color:#88c8f073;color:#88c8f0;transform:translateY(-3px);box-shadow:0 8px 22px #00000038,0 0 22px #88c8f033,inset 0 1px #ffffff1a}#contact-me .social-media a:hover span,#contact-me .social-media button:hover span{opacity:1;transform:translate(-50%)}}#contact-me .social-media a.inactive,#contact-me .social-media button.inactive{cursor:default}@media (hover: hover){#contact-me .social-media a.inactive:hover,#contact-me .social-media button.inactive:hover{background:#ffd4b82e;border-color:#ffd4b873;color:#ffd4b8;box-shadow:0 8px 22px #00000038,0 0 22px #ffd4b833,inset 0 1px #ffffff1a}}#contact-me .social-media a.inactive span,#contact-me .social-media button.inactive span{color:#ffd4b8;border-color:#ffd4b84d}#contact-me .social-media a span,#contact-me .social-media button span{position:absolute;bottom:calc(100% + clamp(8px,.6vw,14px));left:50%;transform:translate(-50%,.3rem);line-height:1;padding:clamp(10px,.95vw,15px) clamp(18px,1.6vw,26px);background:#0f0f23a6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(136,200,240,.3);border-radius:5px;font-family:Outfit,sans-serif;font-size:clamp(11px,10px + .15vw,13px);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#88c8f0;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}#contact-me .social-media .linkedin:before{content:""}#contact-me .social-media .github:before{content:""}#contact-me .social-media .instagram:before{content:""}#contact-me .recaptcha{display:flex;position:relative;margin:5rem 0;place-content:center}@media (max-width: 500px){#contact-me .recaptcha{transform:scale(.8)}}@keyframes contact-wave{0%,60%,to{transform:rotate(0)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}}@keyframes card-pulse{0%,to{box-shadow:0 6px 20px #0000002e,inset 0 1px #ffffff14,0 0 #ffd4b800}50%{box-shadow:0 6px 20px #0000002e,inset 0 1px #ffffff14,0 0 44px 4px #ffd4b838}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes spinner-fade-in{to{opacity:1}}@keyframes plane-takeoff{0%{transform:translate(0) rotate(0) scale(1);opacity:1;text-shadow:0 0 0 rgba(255,212,184,0)}15%{transform:translate(.15em,-.15em) rotate(-6deg) scale(1);opacity:1;text-shadow:-3px 2px 4px rgba(255,212,184,.55)}55%{transform:translate(2.4em,-1.4em) rotate(-20deg) scale(.95);opacity:.85;text-shadow:-6px 4px 6px rgba(255,212,184,.55),-14px 9px 12px rgba(255,212,184,.3),-22px 14px 18px rgba(255,212,184,.15)}to{transform:translate(6.5em,-3.2em) rotate(-30deg) scale(.6);opacity:0;text-shadow:-10px 6px 10px rgba(255,212,184,0),-22px 14px 18px rgba(255,212,184,0),-34px 22px 26px rgba(255,212,184,0)}}@keyframes plane-return{0%{transform:translate(.4em,-.6em) rotate(-12deg) scale(.85);opacity:0;text-shadow:none}to{transform:translate(0) rotate(0) scale(1);opacity:1;text-shadow:none}}.copy-email{position:relative;font-family:inherit;padding:5px;color:#fff;opacity:.75;transition:color .2s ease,opacity .15s ease-out}.copy-email .copy-icon{font-family:FAregular}@media (hover: hover){.copy-email:hover{color:#ffd4b8;opacity:1}}.copy-email.copied{color:#ffd4b8;opacity:1}.copy-email.error{color:#ff7a7a;opacity:1}#expertise{margin-left:auto;margin-right:auto;width:90%}#expertise .watermark{width:100%;font-size:clamp(7rem,14lvw,12rem);font-weight:200;line-height:1;letter-spacing:.15em;text-transform:uppercase;color:#88c8f0;opacity:.85;text-align:center;pointer-events:none}@media (max-width: 500px) and (orientation: portrait){#expertise .watermark{font-size:7rem}}#expertise .big{line-height:6rem}#expertise .expertise-content-stage{position:relative}#expertise .expertise-content-pin{height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:4vh 1rem}#expertise .role-banner{flex:0 0 auto;text-align:center}#expertise .role-banner .pretitle{font-size:clamp(12px,1.5rem,16px);font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:#88c8f0;margin-bottom:1rem;text-shadow:0 2px 4px rgba(0,0,0,.7)}#expertise .role-banner .cycling-stage{position:relative;height:clamp(4rem,8lvw,6rem);display:flex;align-items:center;justify-content:center}#expertise .role-banner .cycling-stage .cycling-role{position:absolute;font-family:Outfit,sans-serif;font-weight:200;font-size:clamp(2.5rem,10lvw,10rem);letter-spacing:.06em;text-transform:uppercase;line-height:1;color:#fff;opacity:0;white-space:nowrap;text-shadow:0 3px 6px rgba(0,0,0,.6),0 0 30px rgba(0,0,0,.2)}#expertise .role-banner .cycling-stage .cycling-role.ice{color:#88c8f0}#expertise .role-banner .cycling-stage .cycling-role.peach{color:#ffd4b8}#expertise .role-banner .role-counter{margin-top:1rem;font-family:Fraunces,Georgia,serif;font-style:italic;font-size:clamp(16px,1.5rem,20px);color:#ffffffb3;text-shadow:0 2px 4px rgba(0,0,0,.7)}#expertise .role-banner .role-counter .now{color:#88c8f0;font-weight:500}#expertise .role-banner .role-counter .of{opacity:.5}#expertise .scene-container{flex:0 0 auto;width:100%;max-width:1100px;margin:0 auto;display:grid;grid-template-areas:"stack";grid-template-columns:minmax(0,1fr)}#expertise .scene{grid-area:stack;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-width:0;opacity:0;pointer-events:none;transition:opacity .5s ease,transform .5s ease;transform:translateY(8px)}#expertise .scene.active{opacity:1;pointer-events:auto;transform:translateY(0)}#expertise .scene-eyebrow{font-size:clamp(12px,1.25rem,20px);font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:#ffd4b8;margin-bottom:1.25rem;text-shadow:0 2px 4px rgba(0,0,0,.7)}#expertise .scene-eyebrow.center{text-align:center}#expertise .scene-card{width:100%;max-width:800px;padding:1.75rem 1.5rem;background:#3d3d4d6b;backdrop-filter:blur(28px) saturate(1.3);-webkit-backdrop-filter:blur(28px) saturate(1.3);border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;line-height:2rem;overflow:hidden}#expertise .rail-roles{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;max-width:100%}#expertise .rail-roles li{display:inline-flex;align-items:baseline;gap:.45rem;padding:.55rem 2rem;background:#0f0f2333;backdrop-filter:blur(14px) saturate(1.25);-webkit-backdrop-filter:blur(14px) saturate(1.25);border:1px solid rgba(255,255,255,.14);border-radius:2rem;font-size:clamp(14px,.95rem,16px);line-height:4.5rem;color:#ffffffd9;box-shadow:0 6px 20px #0000002e,inset 0 1px #ffffff14;transition:all .3s ease}#expertise .rail-roles li .num{font-family:Fraunces,Georgia,serif;font-style:italic;color:#ffffff59;font-size:.78rem;font-size:clamp(12px,.78rem,14px);transition:color .3s ease}#expertise .rail-roles li.active{color:#ffd4b8;font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:500;background:#ffd4b824;border-color:#ffd4b859;box-shadow:0 6px 20px #0000002e,0 0 24px #ffd4b82e,inset 0 1px #ffd4b824}#expertise .rail-roles li.active .num{color:#ffd4b8}#expertise .scene-track .rail-stats{display:flex;width:100%;max-width:800px;gap:4rem;align-items:flex-start;justify-content:center;margin:1rem auto 0}#expertise .scene-track .rail-stats .stat{flex:1 1 0;min-width:0;text-align:center;padding:2rem;background:#0f0f234d;backdrop-filter:blur(8px) saturate(1.3);-webkit-backdrop-filter:blur(8px) saturate(1.3);border:1px solid rgba(136,200,240,.12);border-radius:1.25rem;box-shadow:0 8px 10px #00000059,inset 0 1px #ffffff14}#expertise .scene-track .rail-stats .stat .n{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(60px,7vw,5.5rem);color:#88c8f0;line-height:1;letter-spacing:-.02em;text-shadow:0 3px 6px rgba(0,0,0,.6),0 0 30px rgba(0,0,0,.2)}#expertise .scene-track .rail-stats .stat .n sup{font-size:.45em;vertical-align:super;opacity:.75}#expertise .scene-track .rail-stats .stat .l{font-size:clamp(10px,.7rem,12px);font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#ffffffb3;margin-top:.6rem;text-shadow:0 2px 4px rgba(0,0,0,.7)}#expertise .scene-track .scene-closing{margin-top:2.5rem;font-family:Fraunces,Georgia,serif;font-style:italic;font-size:clamp(16px,1.25rem,20px);color:#ffffffb3;text-align:center;line-height:1.5;text-shadow:0 1px 4px rgba(0,0,0,.4)}#expertise .rail-stack{display:flex;flex-direction:column;gap:.6rem;width:100%}#expertise .rail-stack .marquee-row{width:100%;overflow:hidden;mask-image:linear-gradient(to right,transparent 0%,black 7%,black 93%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 7%,black 93%,transparent 100%)}#expertise .rail-stack .marquee-track{display:flex;gap:.6rem;width:max-content;will-change:transform}#expertise .rail-stack .chip{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:.55rem .65rem;background:#0f0f2333;backdrop-filter:blur(14px) saturate(1.25);-webkit-backdrop-filter:blur(14px) saturate(1.25);border:1px solid rgba(255,255,255,.14);border-radius:.75rem;box-shadow:0 6px 20px #0000002e,inset 0 1px #ffffff14;transition:background .25s ease,border-color .25s ease}@media (hover: hover){#expertise .rail-stack .chip:hover{background:#88c8f024;border-color:#88c8f059}}#expertise .rail-stack .chip img{width:50px;height:50px;object-fit:contain;opacity:.9}@media (max-width: 500px) and (orientation: portrait){#expertise .role-banner{margin:1.25rem auto 1rem}#expertise .role-banner .pretitle{font-size:1.5rem}#expertise .role-banner .cycling-stage{height:clamp(11lvw,12vw,5rem)}#expertise .role-banner .cycling-stage .cycling-role{font-size:11lvw;letter-spacing:.04em}#expertise .role-banner .role-counter{font-size:2rem}#expertise .scene-card{width:95%;padding:1.5rem 1.25rem;margin:0}#expertise .scene-roles{width:100%;max-width:30rem;margin:0 auto;padding:.25rem 1.25rem;background:#0f0f2333;backdrop-filter:blur(14px) saturate(1.25);-webkit-backdrop-filter:blur(14px) saturate(1.25);border:1px solid rgba(255,255,255,.14);border-radius:1rem;box-shadow:0 6px 20px #0000002e,inset 0 1px #ffffff14}#expertise .scene-roles .scene-eyebrow{margin-bottom:0;padding:.7rem 0;font-size:1.3rem;text-align:center;border-bottom:1px dashed rgba(255,255,255,.15)}#expertise .rail-roles{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;width:100%;max-width:none;margin:0;padding:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:0;box-shadow:none}#expertise .rail-roles li{display:flex;align-items:baseline;gap:.65rem;padding:.7rem 0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:0;box-shadow:none;font-size:1.8rem;line-height:2}#expertise .rail-roles li:not(:last-child){border-bottom:1px dashed rgba(255,255,255,.1)}#expertise .rail-roles li .num{font-size:1.4rem;width:2.5rem;flex-shrink:0}#expertise .rail-roles li.active{background:transparent;box-shadow:none}#expertise .scene-track .rail-stats{gap:1.25rem;flex-wrap:wrap}#expertise .scene-track .rail-stats .stat .n{font-size:clamp(50px,7vw,5.5rem)}#expertise .scene-track .rail-stats .stat .l{font-size:clamp(8.5px,1.2rem,12px)}#expertise .scene-track .scene-closing{margin-top:1.5rem;font-size:2rem}#expertise .rail-stack,#expertise .rail-stack .marquee-track{gap:.4rem}#expertise .rail-stack .chip{padding:.4rem .45rem;border-radius:.6rem}#expertise .rail-stack .chip img{width:34px;height:34px}}#frontpage{display:block;position:relative;height:100dvh;font-family:Montserrat,Roboto,Arial,sans-serif;width:100%}#frontpage .portrait-bg{margin-left:auto;margin-right:auto;top:50%;transform:translateY(-50%);position:relative;width:81.25rem;height:80dvh;min-height:768px;max-height:850px;background-image:url(/assets/portrait_sunglasses_0.8-DHvdUJHD.webp);background-position:top right;background-size:contain;background-repeat:no-repeat;clip-path:polygon(0 200%,100% 200%,100% 0,0 0);opacity:1}@media (max-width: 1300px){#frontpage .portrait-bg{height:52.25vw;min-height:initial}}@media (max-width: 1300px) and (min-aspect-ratio: 2 / 1) and (orientation: landscape){#frontpage .portrait-bg{width:67vw;height:40vw}}@media (min-width: 501px) and (max-width: 850px) and (orientation: portrait){#frontpage .portrait-bg{height:150vw;max-height:600px;width:initial;transform:translateY(-72.5%)}}@media (max-width: 500px) and (orientation: portrait){#frontpage .portrait-bg{height:150vw;max-height:600px;width:initial;background-position:right -14rem top 0;background-size:50rem;transform:translateY(-53.25%)}}#frontpage .animate-pupils{animation:eyes-shifting 5s ease-out infinite}#frontpage h1{font-weight:500}#frontpage .text-group{position:relative;top:8.35rem;padding:10px;clip-path:polygon(0 200%,100% 200%,100% 0,0 0);opacity:1}#frontpage .full-name-with-dots{display:block;height:9.38rem;padding-left:.94rem}#frontpage .full-name-with-dots-portrait{display:none}#frontpage .full-name{position:absolute;padding:0;margin:0 0 0 .94rem;font-size:9.5rem;letter-spacing:-.15rem;clip-path:polygon(-20% 0,100% 0,100% 100%,-20% 100%)}#frontpage .full-name>span{display:inline-block}#frontpage .full-name.half-opaque .nameChar,#frontpage .full-name.half-opaque .nameCharDots,#frontpage .full-name.half-opaque .lastNameChar,#frontpage .full-name-with-dots-portrait .full-name:not(.dots) .nameChar,#frontpage .full-name-with-dots-portrait .full-name:not(.dots) .nameCharDots,#frontpage .full-name-with-dots-portrait .full-name:not(.dots) .lastNameChar{text-shadow:0 0 10px #000,0 0 10px #000,0 0 10px #000}#frontpage .dots{height:3.65rem;overflow:hidden;color:#00bfff}#frontpage .title{position:relative;height:17.2rem;top:2.7rem;margin:5px 0;padding:0}#frontpage .half-opaque{opacity:.5}#frontpage .bg-deep-sky-blue{padding:0 .63rem .63rem;margin-left:-.63rem;background-color:#00bfff!important}#frontpage .developer{padding:.63rem;margin-left:-.63rem}#frontpage .sub-title{position:relative;top:4.4rem;margin-left:5px}#frontpage .sub-title h3,#frontpage .sub-title .emoji{margin:0;display:inline-block;font-weight:500;font-size:2rem}#frontpage .sub-title .emoji{vertical-align:text-bottom;padding-left:10px;transform-origin:50% 100%;animation:rocking 2.5s ease-in-out 2s infinite}#frontpage .arrow-container{display:inline-block;position:absolute;height:8rem;right:16.5rem;bottom:-4rem;padding:.75rem;font-size:10rem;font-weight:700;animation:bouncing ease-in-out 6s infinite;overflow:hidden}@media (hover: hover){#frontpage .arrow-container:hover{animation-play-state:paused}}#frontpage #arrow{text-shadow:3px 3px 0 #000,-3px 3px 0 #000,-3px -3px 0 #000,3px -3px 0 #000;display:inline-flex;position:relative;height:6.5rem;top:-4rem;line-height:5.75rem;cursor:pointer;overflow:hidden;-webkit-user-select:none;user-select:none;animation:bouncing-shadow ease-in-out 6s infinite;transition:transform .5s ease-in-out,opacity .5s ease-in-out;opacity:.85}@media (hover: hover){#frontpage #arrow:hover{opacity:1;transform:scale(1.25);animation-play-state:paused}#frontpage #arrow:hover:active{cursor:grabbing;animation-play-state:paused;transition:transform .1s ease;transform:scale(.9)}}@media (min-width: 501px) and (max-width: 850px) and (orientation: portrait){#frontpage .text-group{top:172px;padding-left:0;margin-left:2.5rem}#frontpage .full-name-with-dots{display:none}#frontpage .full-name-with-dots-portrait{display:block;height:16.5rem;padding-left:.5rem}#frontpage .full-name{font-size:12rem}#frontpage .dots{height:5rem}#frontpage .last-name{height:8rem;top:13.5rem;left:12.25rem;line-height:5.75rem;overflow:hidden}#frontpage .title{top:3.5rem}#frontpage .title .typist{font-size:10.75rem;line-height:12rem}#frontpage .title .typist-done:after{display:none}#frontpage .sub-title{top:13rem;margin-left:.5em}#frontpage .sub-title h3{font-weight:600}#frontpage .sub-title .emoji{line-height:2rem;font-size:3rem}#frontpage .arrow-container{height:10rem;width:10rem;bottom:-22.5rem;left:25.25rem}#frontpage #arrow{height:8rem;top:-1.5rem;left:-.25rem;line-height:5.5rem;font-size:15rem}}@media (min-width: 751px) and (max-width: 850px) and (orientation: portrait){#frontpage .text-group{top:100px}#frontpage .arrow-container{height:8rem;width:8rem;bottom:-20rem;left:26.1rem}#frontpage #arrow{height:8rem;top:-3rem;left:-.25rem;line-height:5.5rem;font-size:12rem}}@media (max-width: 500px) and (orientation: portrait){#frontpage .text-group{top:18.5rem;padding-left:0;margin-left:.98rem}#frontpage .full-name-with-dots{display:none}#frontpage .full-name-with-dots-portrait{display:block;height:21.5rem;padding-left:.5rem}#frontpage .full-name{font-size:15.5rem}#frontpage .dots{height:5.75rem}#frontpage .last-name{height:10rem;top:17.5rem;left:15.75rem;line-height:7rem;overflow:hidden}#frontpage .title .typist-done:after{display:none}#frontpage .sub-title{top:6.5rem;margin-left:.5em}#frontpage .sub-title h3{font-size:2.2rem;font-weight:600}#frontpage .sub-title .emoji{position:absolute;top:-1rem;right:-.75rem;font-size:3rem}#frontpage .arrow-container{width:8rem;bottom:-14.5rem;left:18.75rem}#frontpage #arrow{height:8rem;top:-3rem;left:-.25rem;line-height:5.5rem;font-size:12rem}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes blink-out{0%,40%,80%{opacity:1}20%,60%,to{opacity:0}}.typist{display:inline-block;position:relative;line-height:8.8rem;letter-spacing:.12rem;font-size:7.5rem;font-weight:800;white-space:pre-wrap}@media (max-width: 850px) and (orientation: portrait){.typist{font-size:8.13rem;line-height:9.81rem}}.typist:after{display:inline-block;position:relative;height:1.275em;width:.1em;content:"";color:#fff;vertical-align:top;border-right:.25em solid #fff;opacity:1;animation:blink 1s linear infinite;transition:border-right-color .5s ease}.typist-done:after{opacity:0;animation:blink-out 2s linear 1}#intro{display:flex;justify-content:center;align-items:center;height:100lvh;position:relative}#intro .intro-content{margin-left:auto;margin-right:auto;width:90%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}#intro .intro-statement{font-size:3rem;font-weight:400;line-height:1.5;text-shadow:0 2px 12px rgba(0,0,0,.5),0 0 30px rgba(0,0,0,.2);margin-bottom:3rem;text-wrap:balance}#intro .intro-statement .typist{font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:normal;white-space:normal}#intro .intro-statement .emphasis{font-weight:700}#intro .intro-statement em{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:400}#intro .intro-statement .accent{color:#88c8f0}#intro .intro-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:4rem}#intro .intro-nav a{display:inline-block;opacity:0;padding:.35rem 1.5rem;background:#88c8f02e;backdrop-filter:blur(8px) saturate(1.15);-webkit-backdrop-filter:blur(8px) saturate(1.15);border:1px solid rgba(136,200,240,.2);border-radius:.5rem;color:#fff;text-decoration:none;font-size:1.1rem;font-weight:600;line-height:normal;letter-spacing:.02em;transition:all .25s ease;text-shadow:0 1px 4px rgba(0,0,0,.4)}@media (hover: hover){#intro .intro-nav a:hover{background:#88c8f040;border-color:#88c8f059;transform:translateY(-2px);box-shadow:0 4px 16px #88c8f01a}}@media (max-width: 1300px){#intro .intro-nav{gap:1rem}#intro .intro-nav a{font-size:12pt}}@media (max-width: 500px) and (orientation: portrait){#intro .intro-nav{flex-direction:column;width:80%}}#intro .scroll-indicator{display:flex;flex-direction:column;align-items:center;opacity:0;gap:.5rem;position:absolute;bottom:3rem}#intro .scroll-indicator .scroll-label{font-size:6.5pt;font-weight:400;color:#ffffff59;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 1px 4px rgba(0,0,0,.4)}#intro .scroll-indicator .scroll-arrow{width:1px;height:2rem;background:linear-gradient(to bottom,rgba(255,255,255,.35),transparent);animation:intro-scroll-bob 2s ease-in-out infinite}@keyframes intro-scroll-bob{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(6px);opacity:.5}}.nav-pill{display:none;position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:50;align-items:center;gap:.6rem;padding:.3rem .5rem .3rem .45rem;background:#ffffff14;backdrop-filter:blur(28px) saturate(1.15);-webkit-backdrop-filter:blur(28px) saturate(1.15);border:1px solid rgba(255,255,255,.12);border-radius:3rem;transition:box-shadow .4s ease,border-color .4s ease}@media (hover: hover){.nav-pill:hover{border-color:#00bfff33;box-shadow:0 0 20px #00bfff14,0 4px 16px #00000026}}.nav-pill:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;border-radius:inherit;background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.07) 46%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.07) 54%,transparent 58%);background-size:300% 100%;background-position:100% 0;opacity:0;pointer-events:none;z-index:1}.nav-pill.shimmer:before{animation:pill-shimmer 1s .1s ease-out forwards}.nav-pill .logo{display:flex;align-items:center;opacity:.8;transition:opacity .25s}@media (hover: hover){.nav-pill .logo:hover{opacity:1}}.nav-pill .logo img{height:22px;width:auto;padding:2px;display:block}.nav-pill .pill-divider{width:1px;height:1rem;background:#ffffff26;flex-shrink:0}.ham-btn{display:flex;align-items:center;justify-content:center;cursor:pointer;padding:.15rem;border-radius:50%;transition:background .25s;background:none;border:none}@media (hover: hover){.ham-btn:hover{background:#ffffff14}}.ham-btn .ham{height:24px;width:24px;cursor:pointer;-webkit-user-select:none;user-select:none}.ham-btn .ham .line{fill:none;stroke:#fff;stroke-width:5.5;stroke-linecap:round;transition:stroke .3s ease}.ham-btn .ham .top,.ham-btn .ham .bottom{transform-origin:50% 50%;transform:scaleX(.75);transition:transform .25s ease-in-out,stroke-dasharray .4s ease-in-out,stroke-dashoffset .4s ease-in-out,stroke .3s ease}.ham-btn .ham .top{stroke-dasharray:40 139}.ham-btn .ham .bottom{stroke-dasharray:40 180}@media (hover: hover){.ham-btn:hover .ham .line{stroke:#00bfff}.ham-btn:hover .ham .top,.ham-btn:hover .ham .bottom{transform:scaleX(1)}}.ham-btn.active .ham{transform:rotate(45deg)}.ham-btn.active .ham .top{stroke-dashoffset:-98px;transform:scaleX(1)}.ham-btn.active .ham .bottom{stroke-dashoffset:-138px;transform:scaleX(1)}.menu-overlay{position:fixed;top:0;right:0;bottom:0;width:42%;min-width:320px;max-width:520px;z-index:40;background:#ffffff0f;backdrop-filter:blur(32px) saturate(1.15);-webkit-backdrop-filter:blur(32px) saturate(1.15);border-left:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;justify-content:center;padding:3rem;transform:translate(100%);opacity:0;pointer-events:none}.menu-overlay .menu-content a{display:block;text-decoration:none;font-size:3lvh;font-weight:500;color:#ffffffb3;padding:1lvh 0;letter-spacing:-.01em}.menu-overlay .menu-content a:before{content:"";display:inline-block;width:0;height:1px;background:#00bfff;vertical-align:middle;margin-right:0;transition:width .25s ease,margin-right .25s ease}@media (hover: hover){.menu-overlay .menu-content a:hover{color:#fff;transform:translate(2lvh)}.menu-overlay .menu-content a:hover:before{width:3lvh;margin-right:2lvh}}.menu-overlay .menu-header{margin-bottom:3lvh;display:flex;flex-direction:column;align-items:center}.menu-overlay .menu-header .menu-logo{height:8lvh;width:auto;opacity:.9;margin-bottom:1lvh}.menu-overlay .menu-header .menu-email{font-size:1.5lvh;font-weight:400;color:#ffffffb3;position:relative;white-space:nowrap}.menu-overlay .menu-header .menu-email a{color:#88c8f0;border-bottom:1px dashed rgba(136,200,240,.5);padding-bottom:1px;text-decoration:none;transition:color .2s ease,border-color .2s ease}@media (hover: hover){.menu-overlay .menu-header .menu-email a:hover{color:#ffd4b8;border-bottom-color:#ffd4b899}}.menu-overlay .menu-divider{width:100%;height:1px;background:#ffffff1a;margin-bottom:3lvh;transform-origin:center center}@media (max-width: 1024px){.menu-overlay{width:100%;min-width:unset;max-width:unset;padding:5rem 3rem;align-items:center}.menu-overlay .menu-divider{max-width:60%}.menu-overlay .menu-content{align-self:center}}@media (max-width: 767px){.menu-overlay{padding:4rem 2rem}.menu-overlay .menu-content a{font-size:2.5lvh}}.menu-scrim{position:fixed;top:0;left:0;right:0;bottom:0;z-index:39;background:#0000004d;opacity:0;pointer-events:none}@keyframes pill-shimmer{0%{opacity:1;background-position:100% 0}70%{opacity:1;background-position:-100% 0}to{opacity:0;background-position:-100% 0}}.page{margin-bottom:15rem;-webkit-user-select:text;user-select:text}.page div.full-width{width:100%}.page div h1{font-size:3.5rem;font-weight:800;opacity:1}#projects{margin-left:auto;margin-right:auto;width:90%}#projects .watermark{width:100%;font-size:clamp(7rem,14lvw,12rem);font-weight:200;line-height:1;letter-spacing:.15em;text-transform:uppercase;color:#88c8f0;opacity:.85;text-align:center;pointer-events:none}@media (max-width: 500px) and (orientation: portrait){#projects .watermark{font-size:7rem}}#projects .projects{position:relative;width:100%}#projects .projects-grid{display:grid;grid-template-columns:minmax(320px,1fr) 1.4fr;gap:4rem;align-items:start;padding:2.5rem 2.5rem 3rem;background:#3d3d4d36;backdrop-filter:blur(14px) saturate(1.15);-webkit-backdrop-filter:blur(14px) saturate(1.15);border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;box-shadow:0 6px 20px #0000002e,inset 0 1px #ffffff14}#projects .ix-section-eyebrow{font-size:clamp(10.82px,.85rem,13.6px);font-weight:600;line-height:1;letter-spacing:.32em;color:#88c8f0;text-transform:uppercase;margin-bottom:.8rem;text-shadow:0 2px 4px rgba(0,0,0,.7)}#projects .ix-section-title{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:300;font-size:clamp(19.1px,1.5rem,24px);line-height:1.2;letter-spacing:-.01em;margin-bottom:2rem;text-shadow:0 2px 12px rgba(0,0,0,.5),0 0 30px rgba(0,0,0,.2);color:#fff}#projects .ix-list{list-style:none;padding:0 0 0 1rem;margin:0;border-top:1px solid rgba(255,255,255,.1)}#projects .ix-list li{border-bottom:1px solid rgba(255,255,255,.08)}#projects .ix-list .row{display:flex;align-items:baseline;width:100%;text-align:left;padding:.85rem .25rem;gap:1rem;line-height:1;transition:padding .3s ease;position:relative;color:#ffffffd9;text-shadow:0 1px 4px rgba(0,0,0,.4)}#projects .ix-list .row:before{content:"";position:absolute;left:-1.5rem;top:50%;transform:translateY(-50%);width:0;height:2px;background:#88c8f0;border-radius:2px;transition:width .4s ease,box-shadow .4s ease}#projects .ix-list .thumb{display:none}#projects .ix-list .meta{flex:1;display:flex;align-items:baseline;justify-content:space-between;gap:1rem;min-width:0}#projects .ix-list .name{font-family:Outfit,sans-serif;font-weight:400;font-size:clamp(14.65px,1.15rem,18.4px);line-height:1.15;letter-spacing:-.005em;transition:color .3s ease,font-style .3s ease,font-weight .3s ease;color:#fff}#projects .ix-list .year-line{font-size:clamp(9.93px,.78rem,12.48px);font-weight:400;line-height:1;color:#ffffff73;letter-spacing:.12em;flex-shrink:0}#projects .ix-list .chev{display:none}#projects .ix-list li.active .row{padding-left:2.5rem}#projects .ix-list li.active .row:before{width:2rem;box-shadow:0 0 12px #88c8f08c,0 0 24px #88c8f040}#projects .ix-list li.active .name{color:#88c8f0;font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:500}@media (hover: hover){#projects .ix-list .row:hover .name{color:#88c8f0}}#projects .ix-list .reveal{max-height:0;overflow:hidden}#projects .ix-preview{position:relative;aspect-ratio:16/10;border-radius:1rem;overflow:hidden;background:#0f0f2380;border:1px solid rgba(255,255,255,.12);box-shadow:0 16px 40px #00000073}#projects .ix-preview .frame{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transform:scale(1.02);transition:opacity .5s ease,transform .7s ease}#projects .ix-preview .frame.active{opacity:1;transform:scale(1)}#projects .ix-preview .frame img{width:100%;height:100%;object-fit:cover}#projects .ix-preview .frame .overlay{position:absolute;inset:auto 0 0 0;padding:1.1rem 1.4rem;background:linear-gradient(to top,rgba(15,15,35,.92),transparent);z-index:2}#projects .ix-preview .frame .overlay .role{font-size:clamp(8.28px,.65rem,10.4px);font-weight:600;line-height:1;letter-spacing:.32em;color:#88c8f0;text-transform:uppercase;margin-bottom:.35rem;text-shadow:0 2px 4px rgba(0,0,0,.7)}#projects .ix-preview .frame .overlay .name{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(17.83px,1.4rem,22.4px);line-height:1.1;letter-spacing:-.01em;text-shadow:0 2px 4px rgba(0,0,0,.7)}#projects .ix-preview .frame .overlay .year-line{font-size:clamp(9.93px,.78rem,12.48px);line-height:1;color:#ffffffa6;margin-top:.25rem;letter-spacing:.05em}@media (max-width: 767px) and (orientation: portrait){#projects .projects-grid{grid-template-columns:1fr;gap:0;padding:1.5rem 1.25rem 2rem}#projects .ix-preview{display:none}#projects .ix-section-eyebrow{text-align:center;font-size:1.5rem;margin-bottom:.4rem}#projects .ix-section-title{text-align:center;font-size:2rem}#projects .ix-list .row{display:grid;grid-template-columns:8.4rem 1fr auto;gap:1.25rem;align-items:center;padding:.7rem .25rem}#projects .ix-list .row:before{display:none}#projects .ix-list .thumb{display:block;width:8.4rem;height:5.6rem;border-radius:.8rem;overflow:hidden;flex-shrink:0;transition:transform .4s ease,box-shadow .4s ease}#projects .ix-list .thumb img{width:100%;height:100%;object-fit:cover}#projects .ix-list .meta{flex-direction:column;align-items:flex-start;justify-content:center;gap:.15rem}#projects .ix-list .name{font-size:1.85rem;line-height:1.65}#projects .ix-list .year-line{font-size:1.3rem;color:#ffffff80;letter-spacing:.08em}#projects .ix-list .chev{display:block;margin-right:.5rem;font-size:2rem;color:#88c8f0;opacity:.7;text-align:center;width:1rem;flex-shrink:0;transition:transform .4s ease,opacity .4s ease}#projects .ix-list li.active .row{padding-left:.25rem}#projects .ix-list li.active .name{color:#fff;font-style:normal;font-weight:400}#projects .ix-list li.open .row{background:#88c8f00d}#projects .ix-list li.open .thumb{transform:scale(1.08);box-shadow:0 4px 14px #00000073}#projects .ix-list li.open .name{color:#88c8f0;font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:500}#projects .ix-list li.open .chev{transform:rotate(90deg);opacity:1}#projects .ix-list .reveal{transition:max-height .5s cubic-bezier(.6,0,.2,1)}#projects .ix-list li.open .reveal{max-height:26rem}#projects .ix-list .reveal-inner{padding:.5rem .25rem 1.1rem}#projects .ix-list .hero-link{display:block;width:100%;padding:0;background:none;border:none;text-align:left;cursor:pointer}#projects .ix-list .hero-image{position:relative;width:100%;aspect-ratio:16/10;border-radius:.75rem;overflow:hidden;box-shadow:0 10px 28px #00000080;margin-bottom:.8rem;transition:transform .4s ease,box-shadow .4s ease}#projects .ix-list .hero-image img{width:100%;height:100%;object-fit:cover}#projects .ix-list .hero-link:active .hero-image{transform:scale(.985);box-shadow:0 6px 18px #0000008c}#projects .ix-list .open-cue{position:absolute;top:.7rem;right:.7rem;display:flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;border-radius:999px;background:#0f0f2366;backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);border:1px solid rgba(255,255,255,.15);box-shadow:0 4px 12px #00000059,inset 0 1px #ffffff14;color:#88c8f0;pointer-events:none}#projects .ix-list .open-cue svg{width:1.4rem;height:1.4rem}#projects .ix-list .role-line{font-size:1rem;font-weight:600;letter-spacing:.32em;color:#88c8f0;text-transform:uppercase;margin-bottom:.4rem}#projects .ix-list .desc{font-size:1.15rem;color:#ffffffb8;line-height:1.55;font-weight:300}}
