*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{background-color:#faf7f4;color:#6b6472;font-family:Inter,system-ui,sans-serif;overflow-x:hidden}::selection{background-color:#f2d7d9;color:#a07d80}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#faf7f4}::-webkit-scrollbar-thumb{background:#edd5d5;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#c9a4a7}:root{--cream:#faf7f4;--blush:#f2d7d9;--petal:#edd5d5;--mauve:#c9a4a7;--mauve-dark:#a07d80;--smoke:#6b6472;--smoke-light:#9b92a0;--white:#fff;--font-display:"Playfair Display",Georgia,serif;--font-sans:"Inter",system-ui,sans-serif;--font-mono:"JetBrains Mono",monospace}.section{padding:7rem 1.5rem}.section-inner{margin:0 auto;max-width:72rem}.section-label{color:#c9a4a7;color:var(--mauve);display:block;font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.2em;margin-bottom:.75rem;text-transform:uppercase}.section-title{color:#6b6472;color:var(--smoke);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.25rem);font-weight:600;letter-spacing:-.01em;line-height:1.2}.glass{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#ffffff8c;border:1px solid #c9a4a740}.glass-card{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fff9;border:1px solid #edd5d580;border-radius:1.5rem;box-shadow:0 4px 24px #c9a4a71f,inset 0 1px 0 #fff9;transition:box-shadow .3s ease,transform .3s ease}.glass-card:hover{box-shadow:0 8px 40px #c9a4a738,inset 0 1px 0 #ffffffb3;transform:translateY(-4px)}.btn-primary{align-items:center;background:#c9a4a7;background:var(--mauve);border:none;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:.875rem;font-weight:500;gap:.5rem;letter-spacing:.01em;padding:.75rem 1.75rem;text-decoration:none;transition:background .25s ease,box-shadow .25s ease,transform .2s ease}.btn-primary:hover{background:#a07d80;background:var(--mauve-dark);box-shadow:0 8px 24px #a07d8059;transform:translateY(-1px)}.btn-outline{align-items:center;background:#0000;border:1.5px solid #edd5d5;border:1.5px solid var(--petal);border-radius:999px;color:#a07d80;color:var(--mauve-dark);cursor:pointer;display:inline-flex;font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:.875rem;font-weight:500;gap:.5rem;letter-spacing:.01em;padding:.75rem 1.75rem;text-decoration:none;transition:background .25s ease,color .25s ease,transform .2s ease}.btn-outline:hover{background:#f2d7d9;background:var(--blush);border-color:#c9a4a7;border-color:var(--mauve);transform:translateY(-1px)}@keyframes underlineDraw{0%{width:0}to{width:100%}}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes badgePop{0%{opacity:0;transform:scale(.9) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.anim-underline{animation:underlineDraw .9s cubic-bezier(.22,1,.36,1) .4s both}.anim-fade-up{animation:fadeUp .7s cubic-bezier(.22,1,.36,1) both}.anim-fade-up-1{animation:fadeUp .7s cubic-bezier(.22,1,.36,1) .15s both}.anim-fade-up-2{animation:fadeUp .7s cubic-bezier(.22,1,.36,1) .3s both}.anim-fade-up-3{animation:fadeUp .7s cubic-bezier(.22,1,.36,1) .45s both}.anim-fade-in{animation:fadeIn .6s ease .8s both}.anim-badge-pop{animation:badgePop .6s cubic-bezier(.22,1,.36,1) .6s both}.anim-float{animation:float 4s ease-in-out infinite}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.navbar{background:#0000;left:0;padding:1.25rem 0;position:fixed;right:0;top:0;transition:all .5s ease;z-index:50}.navbar.scrolled{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#ffffff8c;border-bottom:1px solid #c9a4a740;box-shadow:0 2px 16px #c9a4a71a;padding:.75rem 0}.navbar-inner{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:72rem;padding:0 1.5rem}.navbar-logo{color:#a07d80;color:var(--mauve-dark);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:1.1rem;font-weight:600;letter-spacing:-.01em;-webkit-user-select:none;user-select:none}.navbar-logo span{color:#c9a4a7;color:var(--mauve);font-style:italic;font-weight:400}.navbar-links{align-items:center;display:flex;gap:2rem;list-style:none}.navbar-links button{background:none;border:none;color:#6b6472;color:var(--smoke);cursor:pointer;font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:.9rem;letter-spacing:.01em;transition:color .2s ease}.navbar-links button:hover{color:#a07d80;color:var(--mauve-dark)}.navbar-cta{display:inline-flex}.navbar-toggle{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;padding:.5rem}.navbar-toggle span{background:#6b6472;background:var(--smoke);display:block;height:1.5px;transform-origin:center;transition:all .3s ease;width:22px}.navbar-toggle.open span:first-child{transform:rotate(45deg) translate(5px,5px)}.navbar-toggle.open span:nth-child(2){opacity:0}.navbar-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.navbar-mobile-menu{max-height:0;opacity:0;overflow:hidden;transition:max-height .4s ease,opacity .4s ease}.navbar-mobile-menu.open{max-height:300px;opacity:1}.navbar-mobile-inner{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff8c;border-top:1px solid #c9a4a740;display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem}.navbar-mobile-inner button{background:none;border:none;color:#6b6472;color:var(--smoke);cursor:pointer;font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:.9rem;text-align:left}.hero{background:#faf7f4;background:var(--cream);display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.hero-orb-1{background:radial-gradient(circle,#f2d7d973 0,#0000 70%);height:600px;right:-8rem;top:-8rem;width:600px}.hero-orb-1,.hero-orb-2{border-radius:50%;pointer-events:none;position:absolute}.hero-orb-2{background:radial-gradient(circle,#edd5d559 0,#0000 70%);bottom:0;height:500px;left:-10rem;width:500px}.hero-inner{margin:0 auto;max-width:72rem;padding:8rem 1.5rem 5rem;position:relative;width:100%;z-index:10}.hero-badge{align-items:center;border-radius:999px;display:inline-flex;gap:.5rem;margin-bottom:2.5rem;padding:.5rem 1rem}.hero-badge svg{color:#c9a4a7;color:var(--mauve);flex-shrink:0}.hero-heading-wrap{margin-bottom:2rem}.hero-eyebrow{margin-bottom:1rem}.hero-title{color:#6b6472;color:var(--smoke);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:clamp(3rem,8vw,6rem);font-weight:600;letter-spacing:-.02em;line-height:1.04}.hero-title-accent{color:#c9a4a7;color:var(--mauve);display:inline-block;font-style:italic;position:relative}.hero-underline{background:#f2d7d9;background:var(--blush);border-radius:999px;bottom:.05em;height:3px;left:0;position:absolute;width:100%}.hero-tagline{color:#9b92a0;color:var(--smoke-light);font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.7;margin-bottom:3rem;max-width:34rem}.hero-cta-row{flex-wrap:wrap;gap:1rem;margin-bottom:4rem}.hero-cta-row,.hero-socials{align-items:center;display:flex}.hero-socials{gap:1.25rem}.hero-socials a{color:#9b92a0;color:var(--smoke-light);display:inline-flex;transition:color .2s ease}.hero-socials a:hover{color:#a07d80;color:var(--mauve-dark)}.hero-social-divider{background:#edd5d5;background:var(--petal);height:1px;width:2rem}.hero-email{color:#9b92a0;color:var(--smoke-light);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.75rem;text-decoration:none;transition:color .2s ease}.hero-email:hover{color:#c9a4a7;color:var(--mauve)}.hero-scroll-indicator{align-items:center;bottom:2.5rem;display:flex;flex-direction:column;gap:.5rem;left:50%;opacity:.6;position:absolute;transform:translateX(-50%)}.hero-scroll-indicator svg{color:#c9a4a7;color:var(--mauve)}.about-header{margin-bottom:4rem}.about-grid{grid-gap:4rem;align-items:start;display:grid;gap:4rem;grid-template-columns:1fr 1fr}.about-text p{color:#6b6472;color:var(--smoke);font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:1.05rem;line-height:1.85;margin-bottom:1.5rem}.about-text p:last-child{margin-bottom:0}.about-highlight{color:#a07d80;color:var(--mauve-dark);font-weight:500}.about-cards{display:flex;flex-direction:column;gap:1rem}.about-card{display:flex;gap:1.25rem;padding:1.5rem}.about-card-icon{align-items:center;background:#f2d7d9;background:var(--blush);border-radius:.75rem;display:flex;flex-shrink:0;height:2.5rem;justify-content:center;width:2.5rem}.about-card-icon svg{color:#a07d80;color:var(--mauve-dark)}.about-card-title{color:#9b92a0;color:var(--smoke-light);font-size:.7rem;font-weight:600;letter-spacing:.1em;margin-bottom:.35rem;text-transform:uppercase}.about-card-body,.about-card-title{font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans)}.about-card-body{color:#6b6472;color:var(--smoke);font-size:.9rem;line-height:1.6}.skills-section{background:#f2d7d91f}.skills-header{margin-bottom:4rem}.skills-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.skill-category{padding:2rem}.skill-category-header{align-items:center;display:flex;gap:.75rem;margin-bottom:2rem}.skill-category-icon{align-items:center;background:#f2d7d9;background:var(--blush);border-radius:.75rem;display:flex;flex-shrink:0;height:2.25rem;justify-content:center;width:2.25rem}.skill-category-icon svg{color:#a07d80;color:var(--mauve-dark)}.skill-category-title{color:#6b6472;color:var(--smoke);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:1.1rem;font-weight:600}.skill-tags{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none}.skill-tag{background:#ffffffb3;border:1px solid #edd5d5;border:1px solid var(--petal);border-radius:999px;color:#6b6472;color:var(--smoke);cursor:default;font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.02em;padding:.4rem .75rem;transition:all .2s ease;-webkit-user-select:none;user-select:none}.skill-tag:hover{background:#f2d7d9;background:var(--blush);border-color:#c9a4a7;border-color:var(--mauve);color:#a07d80;color:var(--mauve-dark)}.projects-header{margin-bottom:4rem}.projects-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(3,1fr)}.project-card{display:flex;flex-direction:column;overflow:hidden;position:relative}.project-card.featured{grid-column:span 1}.project-featured-badge{align-items:center;background:#c9a4a71a;border:1px solid #c9a4a733;border-radius:999px;display:flex;gap:.35rem;padding:.25rem .65rem;position:absolute;right:1.25rem;top:1.25rem}.project-featured-badge svg{color:#c9a4a7;color:var(--mauve)}.project-featured-badge span{font-size:.6rem}.project-card-inner{display:flex;flex:1 1;flex-direction:column;gap:1rem;padding:1.75rem}.project-title{color:#6b6472;color:var(--smoke);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:1.3rem;font-weight:600;line-height:1.3}.project-divider{background:#edd5d5;background:var(--petal);border-radius:999px;height:1.5px;width:2.5rem}.project-description{color:#9b92a0;color:var(--smoke-light);flex:1 1;font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:.88rem;line-height:1.75}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.25rem}.project-tag{background:#f2d7d999;border:1px solid #edd5d5;border:1px solid var(--petal);border-radius:999px;color:#a07d80;color:var(--mauve-dark);font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.68rem;padding:.3rem .65rem}.project-link{align-items:center;align-self:flex-start;color:#9b92a0;color:var(--smoke-light);display:inline-flex;font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:.75rem;font-weight:500;gap:.5rem;margin-top:.5rem;text-decoration:none;transition:color .2s ease}.project-link:hover{color:#a07d80;color:var(--mauve-dark)}.projects-more{display:flex;justify-content:center;margin-top:3.5rem}.projects-more a{align-items:center;display:inline-flex;gap:.75rem}.contact-section{background:#f2d7d91f}.contact-header{margin-bottom:4rem;text-align:center}.contact-header p.section-sub{color:#9b92a0;color:var(--smoke-light);font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:1rem;line-height:1.6;margin-left:auto;margin-right:auto;margin-top:1rem;max-width:28rem}.contact-card{gap:2rem;margin:0 auto;max-width:34rem;padding:2.5rem}.contact-card,.contact-email-block{align-items:center;display:flex;flex-direction:column}.contact-email-block{gap:.75rem;text-align:center}.contact-email-icon{align-items:center;background:#f2d7d9;background:var(--blush);border-radius:1rem;display:flex;height:3rem;justify-content:center;width:3rem}.contact-email-icon svg{color:#a07d80;color:var(--mauve-dark)}.contact-email-block a{color:#6b6472;color:var(--smoke);font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:1.05rem;font-weight:500;text-decoration:none;transition:color .2s ease}.contact-email-block a:hover{color:#a07d80;color:var(--mauve-dark)}.contact-divider{background:#edd5d5;background:var(--petal);height:1px;width:100%}.contact-socials{display:flex;gap:1.25rem}.contact-social-link{align-items:center;color:#9b92a0;color:var(--smoke-light);display:flex;font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:.875rem;font-weight:500;gap:.6rem;text-decoration:none;transition:color .2s ease}.contact-social-link:hover{color:#a07d80;color:var(--mauve-dark)}.contact-social-link .arrow-icon{opacity:0;transition:opacity .2s ease}.contact-social-link:hover .arrow-icon{opacity:1}.contact-social-divider{align-self:center;background:#edd5d5;background:var(--petal);height:1.25rem;width:1px}.contact-card .btn-primary{justify-content:center;width:100%}.footer{border-top:1px solid #edd5d580;padding:2rem 1.5rem}.footer-inner{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin:0 auto;max-width:72rem}.footer-logo{color:#9b92a0;color:var(--smoke-light);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-size:.9rem;font-style:italic}.footer-copy{color:#9b92a099;font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.02em}.footer-top-link{color:#9b92a0;color:var(--smoke-light);font-family:Inter,system-ui,sans-serif;font-family:var(--font-sans);font-size:.75rem;text-decoration:none;transition:color .2s ease}.footer-top-link:hover{color:#c9a4a7;color:var(--mauve)}@media (max-width:786px){.section{padding:4rem 1.25rem}.section-title{font-size:1.6rem}.navbar-cta,.navbar-links{display:none}.navbar-toggle{display:flex}.navbar-inner{padding:0 1.25rem}.hero-inner{padding:6.5rem 1.25rem 4rem}.hero-title{font-size:clamp(2.25rem,11vw,3.25rem)}.hero-tagline{font-size:1rem;max-width:100%}.hero-cta-row{align-items:stretch;flex-direction:column;gap:.75rem}.hero-cta-row a{justify-content:center;width:100%}.hero-socials{flex-wrap:wrap}.hero-orb-1,.hero-orb-2{height:320px;width:320px}.hero-scroll-indicator{display:none}.about-grid{gap:2.5rem;grid-template-columns:1fr}.about-text p{font-size:.98rem;line-height:1.75}.about-card{padding:1.25rem}.skills-grid{gap:1.25rem;grid-template-columns:1fr}.skill-category{padding:1.5rem}.projects-grid{gap:1.25rem;grid-template-columns:1fr}.project-card.featured{grid-column:span 1}.project-card-inner{padding:1.5rem}.project-featured-badge{right:1rem;top:1rem}.contact-card{padding:1.75rem 1.25rem}.contact-socials{align-items:center;flex-direction:column;gap:1rem}.contact-social-divider{height:1px;width:2rem}.footer-inner{flex-direction:column;gap:.5rem;text-align:center}}@media (max-width:380px){.hero-title{font-size:2rem}.navbar-logo{font-size:1rem}.section{padding:3rem 1rem}}
/*# sourceMappingURL=main.3f956077.css.map*/