.contact-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.contact-modal{background:var(--white);border:1.5px solid var(--pink-300);border-radius:24px;width:320px;box-shadow:0 8px 30px #fc64ab26;position:relative;padding:2rem;text-align:center}.contact-modal .close-btn{position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:50%;border:none;background:var(--pink-100);color:var(--pink-500);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.contact-modal .close-btn:hover{background:var(--pink-500);color:var(--white)}.contact-modal .close-btn svg{width:16px;height:16px}.contact-modal .modal-title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;color:var(--pink-500);margin-bottom:1.5rem}.contact-modal .contact-links{display:flex;flex-direction:column;gap:.75rem}.contact-modal .contact-link{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.875rem 1.5rem;background:var(--white);border:2px solid var(--pink-300);border-radius:999px;text-decoration:none;color:var(--pink-500);font-weight:600;font-size:.9rem;transition:all .2s ease}.contact-modal .contact-link:hover{background:var(--pink-500);border-color:var(--pink-500);color:var(--white)}.contact-modal .contact-link:hover svg{color:var(--white)}.contact-modal .contact-link svg{width:18px;height:18px;color:var(--pink-500);flex-shrink:0;transition:color .2s ease}.nav-container{position:fixed;top:1.5rem;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;padding:.7rem 2.5rem;max-width:1100px;width:calc(100% - 3rem);background:#ffffffbf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:50px;border:1px solid rgba(252,100,171,.3);box-shadow:0 4px 20px #0000000d;z-index:100;transition:transform .3s ease,opacity .3s ease}.nav-container.nav-hidden{transform:translate(-50%) translateY(-120%);opacity:0;pointer-events:none}.nav-logo a{text-decoration:none}.logo-text{font-family:Plus Jakarta Sans,sans-serif;font-size:2.1rem;font-weight:800;color:var(--pink-500)}.nav-links{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:2.5rem}.nav-button{margin-left:auto}.nav-links a{text-decoration:none;color:var(--black);font-size:1.1rem;font-weight:500;transition:color .2s}.nav-links a:hover{color:var(--pink-500)}.contact-btn{background:var(--pink-500);color:#fff;border:none;padding:.7rem 1.5rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.contact-btn:hover{background:var(--pink-700);transform:scale(1.02)}.mobile-menu-btn{display:none;background:none;border:none;cursor:pointer}.hamburger{width:24px;height:20px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.hamburger span{display:block;height:2px;width:100%;background-color:var(--black);transition:all .3s ease}.hamburger.open span:nth-child(1){transform:translateY(9px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.mobile-menu{display:none}@media(max-width:768px){.nav-container{padding:.6rem 1rem}.nav-links,.nav-button{display:none}.mobile-menu-btn{display:block}.mobile-menu{display:none}.mobile-menu.open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;margin-top:.5rem;padding:1rem;gap:1rem;align-items:center}.mobile-menu a{text-decoration:none;color:var(--black);font-size:1rem;font-weight:500}.mobile-menu a:hover{color:var(--pink-500)}}.home-container{width:100%;max-width:1200px;margin:0 auto;padding:1rem;padding-top:100px;display:flex;flex-direction:column;justify-content:flex-start;padding-bottom:0;position:relative;overflow:hidden}.blob{position:fixed;border-radius:50%;filter:blur(60px);opacity:.4;pointer-events:none;z-index:-1}.blob-1{width:600px;height:600px;background:var(--pink-300);top:-150px;right:-100px}.blob-2{width:500px;height:500px;background:var(--pink-200);bottom:30%;left:-150px}.blob-3{width:450px;height:450px;background:var(--pink-400);bottom:-100px;right:10%}.blob-4{width:400px;height:400px;background:var(--pink-200);top:40%;right:-100px}.blob-5{width:350px;height:350px;background:var(--pink-300);top:15%;left:5%}.blob-6{width:300px;height:300px;background:var(--pink-400);bottom:15%;left:25%}.hero{min-height:80vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:4rem 2rem}.hero-name{font-size:5.5rem;font-weight:800;color:var(--black);margin-bottom:.5rem;font-family:var(--font-display)}.hero-title{font-size:2rem;font-weight:800;color:var(--pink-500);margin-bottom:1.5rem;font-family:var(--font-display)}.hero-desc{font-size:1.25rem;line-height:1.7;color:var(--gray-700);max-width:550px;margin-bottom:2.5rem}.social-links{display:flex;gap:1rem;justify-content:center}.social-link{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;background:var(--white);border:2px solid var(--pink-300);color:var(--pink-500);transition:all .2s ease}.social-link:hover{background:var(--pink-500);color:var(--white);transform:translateY(-2px)}.social-link svg{width:22px;height:22px}.scroll-indicator{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:var(--gray-700);font-size:1.1rem;font-weight:600;margin-bottom:3rem;animation:bounce 2s infinite;text-decoration:none;cursor:pointer;transition:color .2s ease,opacity .3s ease}.scroll-indicator.hidden{opacity:0;pointer-events:none}.scroll-indicator svg{width:24px;height:24px}.scroll-indicator:hover{color:var(--pink-500)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.hero-section,.hero-content,.hero-description,.hero-social-links{display:none}.title-section h1:nth-child(1){color:#355c7d;font-family:Poppins,sans-serif;font-weight:600;font-size:28px;margin:0 auto;padding:0;text-align:center;white-space:nowrap;overflow:hidden;width:240px;animation:type 2s steps(40,end) forwards}.title-section h1:nth-child(2){opacity:0;font-family:Plus Jakarta Sans,sans-serif;margin:0;padding:0;text-align:left;background:linear-gradient(to right,#ec0f76,#ec75b4,#f191be);font-weight:600;font-size:120px;width:400px;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;overflow:hidden;border-right:3px solid transparent;animation:shring-animation 2.2s steps(40,end) 2s forwards,blink .5s step-end 6 normal 4.2s forwards}.title-section{display:flex;flex-direction:column;flex-shrink:0;width:450px;min-width:450px}.home-text{margin-top:0;width:500px;flex-shrink:0;opacity:0;animation:fadeIn 1s ease-in 4.2s forwards;border:px dashed black}.home-text h2{color:#2c2e30;margin-bottom:1.5rem;font-size:2.2rem;font-family:Plus Jakarta Sans,sans-serif;font-weight:600}.home-text p{color:#555;line-height:1.8;margin-bottom:1.2rem;font-size:1.15rem;max-width:550px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes type{0%{width:0}1%,99%{border-right:1px solid #ec0f76}to{width:240px;border-right:none}}@keyframes shring-animation{0%{width:0;opacity:0}to{width:400px;opacity:1}}@keyframes blink{0%{border-right-color:#ec0f76}50%{border-right-color:transparent}to{border-right-color:transparent}}@media(max-width:768px){.home-container{padding:1.5rem 1rem 0}.hero-container{padding:2rem 0 1.5rem;min-height:60vh}.hero-name{font-size:3rem}.hero-title{font-size:1.5rem}.home-title{flex-direction:column;gap:2rem}.title-section{width:100%;min-width:auto}.home-text{width:100%}.currently-working-container{padding:2rem 1rem;margin:0 1rem 2rem}.currently-working-container h2{font-size:2rem}.current-projects{grid-template-columns:1fr}.about-cards-row{flex-direction:column;align-items:center}.about-card{max-width:100%}.skills-row{flex-direction:column}.projects-grid{grid-template-columns:1fr}.carousel-wrapper{gap:.75rem}.carousel-btn{width:40px;height:40px}.carousel-btn svg{width:18px;height:18px}.card{width:100%;max-width:320px}}.about-section,.projects-section{padding:3rem 0;scroll-margin-top:80px}.about-section{scroll-margin-top:120px;padding-top:0rem;margin-top:-2rem;min-height:100vh;padding-bottom:6rem}.projects-section{scroll-margin-top:50px;min-height:calc(100vh - 20px);position:relative;padding-bottom:6rem}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{font-size:2.75rem;color:var(--pink-500);font-family:Plus Jakarta Sans,sans-serif;font-weight:700}.about-cards-row{display:flex;flex-direction:row;gap:1.25rem;justify-content:center;margin-bottom:2rem;max-width:1020px;margin-left:auto;margin-right:auto}.about-card{flex:1;max-width:320px;padding:2rem 1.75rem;text-align:left;background-color:#fff;border:1.5px solid rgba(252,100,171,.3);box-shadow:0 4px 15px #fc64ab14;border-radius:12px;min-height:280px;transition:all .3s ease}.about-card:hover{transform:scale(1.03);box-shadow:0 12px 30px #fc64ab26}.about-card-title{font-family:Plus Jakarta Sans,sans-serif;font-weight:700;padding-bottom:.9rem;font-size:1.25rem;color:var(--pink-500)}.about-card p{line-height:1.9;font-size:1rem;color:var(--gray-700)}.skills-container{background:var(--pink-100);border:1.5px solid rgba(252,100,171,.3);border-radius:16px;padding:1rem 2rem;display:flex;flex-direction:column;gap:.6rem;max-width:1020px;margin:0 auto}.skills-category{text-align:center}.skills-label{font-size:.89rem;text-transform:uppercase;letter-spacing:.15em;color:var(--pink-500);margin-bottom:.6rem;font-weight:600}.skills-pills{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.tech-pill{padding:.3rem 1.1rem;border-radius:999px;border:1px solid var(--pink-300);background:var(--white);font-size:.9rem;font-weight:400;color:var(--gray-800);transition:transform .12s ease,background-color .12s ease}.tech-pill:hover{transform:translateY(-2px);background-color:var(--pink-500);color:#fff}.about-content-wrapper{display:flex;flex-direction:column;gap:2rem}.about-content{padding:2rem;text-align:left;background-color:#fff;border:2px solid rgba(252,100,171,.3);box-shadow:0 8px 20px #fc64ab1a;border-radius:12px;max-width:800px;margin:0 auto}.about-content-title{font-family:Plus Jakarta Sans,sans-serif;font-weight:700;padding-bottom:.5rem;font-size:1.8rem;color:var(--pink-500)}.about-content p{line-height:1.7;color:var(--gray-800);padding-bottom:1rem;font-size:1.1rem}.skills-row{display:flex;flex-direction:row;gap:1.5rem;justify-content:center;flex-wrap:wrap}.skills-card{flex:1;min-width:200px;max-width:280px;background-color:#fff;border:2px solid rgba(252,100,171,.3);border-radius:12px;padding:1.5rem;text-align:left;box-shadow:0 8px 20px #fc64ab1a}.section-title{font-family:Plus Jakarta Sans,sans-serif;font-weight:600;font-size:1.2rem;margin-bottom:.75rem}.skills-card ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.5rem}.skills-card li{padding:.25rem .6rem;border-radius:999px;background:var(--pink-500);font-size:.85rem;font-weight:500;color:#fff}.current-projects-wrapper,.completed-projects-wrapper{margin-bottom:3rem}.current-projects-wrapper h3,.completed-projects-wrapper h3{font-size:1.5rem;color:var(--gray-800);margin-bottom:1.5rem;text-align:center;font-family:Plus Jakarta Sans,sans-serif}.current-projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;max-width:900px;margin:0 auto}.current-project{background:#fff;border:2px solid rgba(252,100,171,.3);border-radius:12px;padding:1.5rem;box-shadow:0 8px 20px #fc64ab1a}.current-project h4{font-size:1.2rem;color:var(--pink-500);margin-bottom:.75rem;font-family:Plus Jakarta Sans,sans-serif}.current-project p{color:var(--gray-800);line-height:1.6;margin-bottom:.75rem}.project-links a{color:var(--pink-500);text-decoration:none}.project-links a:hover{text-decoration:underline}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.tech-tag{padding:.2rem .6rem;border-radius:999px;background:var(--pink-100);border:1px solid var(--pink-300);font-size:.8rem;color:var(--pink-700)}.carousel-wrapper{display:flex;flex-direction:column;align-items:center;width:100%;max-width:700px;margin:0 auto}.carousel-card{display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.carousel-nav{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:1.5rem}.carousel-btn{background:transparent;border:none;color:var(--pink-500);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s ease,transform .2s ease;padding:.5rem;line-height:1;margin:0;flex-shrink:0}.carousel-btn:hover{color:var(--pink-700);transform:scale(1.15)}.carousel-btn svg{width:28px;height:28px;display:block}.carousel-dots{display:flex;justify-content:center;gap:.6rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dot{width:10px;height:10px;border-radius:50%;background:var(--pink-100);border:1.5px solid var(--pink-300);transition:all .2s ease;cursor:pointer}.dot:hover{background:var(--pink-300)}.dot.active{background:var(--pink-500);border-color:var(--pink-500);transform:scale(1.1)}.carousel-counter{text-align:center;margin-top:1rem;font-size:.8rem;color:var(--gray-500);font-family:var(--font-mono)}.projects-footer{display:flex;justify-content:center;gap:1.5rem;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.footer-link{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;background:var(--white);border:2px solid var(--pink-300);color:var(--pink-500);transition:all .2s ease}.footer-link:hover{background:var(--pink-500);color:var(--white);transform:translateY(-2px)}.footer-link svg{width:22px;height:22px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1000px;margin:0 auto}.card{background:var(--white);border:1.5px solid var(--pink-300);border-radius:16px;display:flex;overflow:hidden;box-shadow:0 8px 30px #fc64ab26;height:420px;width:auto;min-width:400px;max-width:600px;transition:all .3s ease}.card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #fc64ab2e;border-color:var(--pink-300)}.accent{width:5px;background:linear-gradient(180deg,var(--pink-500),var(--pink-100));flex-shrink:0}.card-body{padding:1.75rem;flex:1;display:flex;flex-direction:column}.card-title{font-family:var(--font-display);font-size:1.3rem;font-weight:700;color:var(--black);margin-bottom:.6rem}.card-desc{font-size:.88rem;color:var(--gray-700);line-height:1.6;margin-bottom:1rem}.highlights{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.highlight{font-size:.7rem;font-weight:600;color:var(--pink-500);font-family:var(--font-mono)}.highlight:before{content:"✦ "}.features{margin-bottom:1rem}.feature{font-size:.82rem;color:var(--gray-700);line-height:1.6;padding:.12rem 0}.feature:before{content:"→ ";color:var(--pink-500);font-weight:600}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;margin-top:auto}.tech-tag{display:inline-block;background-color:var(--pink-100);color:#ec0f76;border:1px solid var(--pink-300);padding:.25rem .75rem;border-radius:999px;font-size:.85rem;font-weight:500}.card-links{display:flex;gap:1.25rem}.card-link{color:var(--pink-500);text-decoration:none;font-weight:600;font-size:.82rem;transition:all .2s ease}.card-link:hover{color:var(--pink-700)}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex-grow:1}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{height:100%}:root{--pink-100: #fce9f3;--pink-300: #f8a4d8;--pink-500: #fc64ab;--pink-700: #d84a94;--purple-300: #c2a1ff;--purple-500: #8a5bff;--gray-100: #f5f5f7;--gray-300: #e5e5e5;--gray-700: #5a5a5a;--gray-800: #2c2e30;--black: #1b1b1d;--white: #ffffff;--bg-main: #ffffff;--text-main: var(--black);--text-accent: var(--pink-500);--font-display: "Plus Jakarta Sans", sans-serif;--font-header: "Plus Jakarta Sans", sans-serif;--font-header-small: "Nunito Sans", sans-serif;--font-body: "Poppins", sans-serif;--max-width: 1120px}body{font-family:var(--font-body);color:var(--text-main);line-height:1.6;background-color:var(--bg-main);background-image:linear-gradient(to right,var(--gray-300) 1px,transparent 1px),linear-gradient(to bottom,var(--gray-300) 1px,transparent 1px);background-size:40px 40px;overflow-x:hidden}h1,h2,h3{font-family:var(--font-display);font-weight:600;color:var(--text-main)}fonts{--font-sora: "Sora", sans-serif;--font-manrope: "Manrope", sans-serif;--font--ibm-plex-sans: "IBM Plex Sans", sans-serif;--font-nunito: "Nunito", sans-serif;--font-nunito-sans: "Nunito Sans", sans-serif;--font-syne: "Syne", sans-serif;--font-bricolage-grotesque: "Bricolage Grotesque", sans-serif;--font-lato: "Lato", sans-serif;--font-noto-sans: "Noto Sans", sans-serif;--font-plus-jakarta-sans: "Plus Jakarta Sans", sans-serif;--font-darker-grotesque: "Darker Grotesque", sans-serif;--font-ibm-plex-sans: "IBM Plex Sans", sans-serif;--font-heading: "Stack Sans Notch", sans-serif;--font-stack-sans-headline: "Stack Sans Headline", sans-serif;--font-stack-sans-text: "Stack Sans Text", sans-serif;--font-montserrat: "Montserrat", sans-serif;--font-rubik: "Rubik", sans-serif;--font-space-grotesk: "Space Grotesk", sans-serif;--font-roboto: "Roboto", sans-serif;--font-roboto-flex: "Roboto Flex", sans-serif;--font-roboto-mono: "Roboto Mono", sans-serif;--font-poppins: "Poppins", sans-serif;--font-inter: "Inter", sans-serif;--font-quicksand: "Quicksand", sans-serif;--font-bitcount-prop-single: "Bitcount Prop Single", system-ui}
