*{box-sizing:border-box;margin:0;padding:0}img,picture,video,canvas,svg{max-width:100%;display:block}html{scroll-behavior:smooth}body{color:#9810fa;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fce7f3;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}body:has(.header__nav.is-open){overflow:hidden}h1,.h1{font-size:clamp(3.75rem,2.958rem + 3.38vw,6rem);font-weight:800;line-height:1.1}h2,.h2{font-size:clamp(3rem,2.736rem + 1.127vw,3.75rem);font-weight:800;line-height:1.1}h3,.h3{font-size:clamp(1.5rem,1.368rem + .563vw,1.875rem);font-weight:800;line-height:1.1}h4,.h4{font-size:clamp(1rem,.956rem + .188vw,1.125rem);font-weight:800;line-height:1.1}label,.label{font-size:clamp(1rem,.956rem + .188vw,1.125rem);font-weight:700;line-height:1.1}p{font-size:clamp(1rem,.956rem + .188vw,1.125rem)}.p-mini{font-size:.875rem;line-height:20px}.p-nano{font-size:.75rem;font-weight:700;line-height:20px}a{color:currentColor;text-decoration:none}button,.button{cursor:pointer;appearance:none;font-family:inherit;font-size:clamp(1rem,.956rem + .188vw,1.125rem);font-weight:500;line-height:1.1}ul{list-style:none}input,.input{font-family:inherit;font-size:clamp(1rem,.956rem + .188vw,1.125rem);font-weight:400;line-height:1.1}.container{width:100%;max-width:1320px;margin:0 auto;padding-inline:4.44%}@media (width<=768px){.container{padding-inline:16px}}.resize-animation-stopper *{transition:none!important;animation:none!important}:focus:not(:focus-visible){outline:none}:focus-visible{outline-offset:6px;border-radius:8px;outline:3px solid #c084fc}::selection{color:#fff;background-color:#f472b6}::selection{color:#fff;background-color:#f472b6}.header{z-index:100;background-color:#fff;border-bottom:4px solid #d8b4fe;width:100%;transition:transform .4s ease-in-out,background-color .3s;position:fixed;top:0;left:0;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.header.headroom--unpinned{transform:translateY(-100%)}.header.headroom--pinned{transform:translateY(0)}.header__wrapper{justify-content:space-between;align-items:center;padding:16px 24px;display:flex}@media (width<=768px){.header__wrapper{padding-inline:0}}.header__logo{align-items:center;gap:8px;font-size:clamp(1.5rem,1.368rem + .563vw,1.875rem);font-weight:700;display:flex}.header__icon{transform-origin:50%;transform-box:fill-box;animation:15s linear infinite spin}.header__owner{background:linear-gradient(90deg,#c084fc,#f472b6,#60a5fa);color:#0000;-webkit-background-clip:text;background-clip:text}.header__toggle{cursor:pointer;z-index:101;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:30px;height:21px;display:none}@media (width<=768px){.header__toggle{display:flex}}.header__toggle span{background-color:#9810fa;border-radius:10px;width:100%;height:3px;transition:all .3s ease-in-out;display:block}.header__toggle.is-open span:first-child{transform:translateY(9px)rotate(45deg)}.header__toggle.is-open span:nth-child(2){opacity:0;width:0}.header__toggle.is-open span:nth-child(3){transform:translateY(-9px)rotate(-45deg)}@media (width<=768px){.header__nav{padding-inline:24px;opacity:0;visibility:hidden;background:#fff;border-bottom:4px solid #d8b4fe;width:100%;padding-bottom:16px;transition:all .4s ease-in-out;position:absolute;top:100%;left:0;transform:translateY(-20px);box-shadow:0 25px 25px #0000001a}.header__nav.is-open{opacity:1;visibility:visible;transform:translateY(0)}}.header__list{gap:32px;list-style:none;display:flex}@media (width<=768px){.header__list{flex-direction:column;gap:24px}}.header__link{color:#9810fa;font-size:clamp(1rem,.956rem + .188vw,1.125rem);font-weight:500;text-decoration:none;transition:color .2s ease-in-out,transform .2s ease-in-out;display:inline-block}.header__link:hover{color:#f6339a;transform:translateY(-3px)scale(1.1)}.header__link.active{color:#db2777;font-weight:700}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero{background:linear-gradient(to bottom right,#fce7f3,#dbeafe);align-items:center;min-height:100svh;padding-block:80px;display:flex;position:relative}.hero__wrapper{text-align:center;justify-content:center;align-items:center;display:flex}.hero__content{z-index:2;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.hero__title{background:linear-gradient(270deg,#3b82f6,#f6339a);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 4px #00000026);-webkit-background-clip:text;margin-bottom:8px}.hero__description{max-width:600px;margin-bottom:16px}.hero__cta{color:#fff;background:linear-gradient(90deg,#c084fc,#f472b6);border-radius:50px;gap:8px;padding:16px 40px;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 10px 20px #a855f74d}@media (hover:hover) and (pointer:fine){.hero__cta:hover{background:linear-gradient(90deg,#a855f7,#f6339a);transform:rotate(5deg)scale(1.2);box-shadow:0 15px 25px #a855f766}}.hero__decorations{pointer-events:none;z-index:1;opacity:.5;position:absolute;inset:0}.hero__shape{width:40px;height:auto;position:absolute}.hero__shape--1{top:80px;left:40px}.hero__shape--2{top:160px;right:80px}.hero__shape--3{bottom:160px;left:80px}.hero__shape--4{bottom:80px;right:160px}.hero__shape--5{top:240px;left:360px}@media (width<=768px){.hero__shape--5{left:125px}}.projects{background:linear-gradient(to bottom right,#fdf2f8,#eff6ff);padding-block:80px;overflow:hidden}.projects__wrapper{flex-direction:column;justify-content:center;align-items:center;gap:64px;display:flex}.projects__header{text-align:center;flex-direction:column;gap:16px;display:flex}.projects__title{background:linear-gradient(270deg,#3b82f6,#f6339a);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 4px #00000026);-webkit-background-clip:text;padding-bottom:8px}.projects__subtitle{font-weight:500}.projects__grid{grid-template-columns:repeat(auto-fit,minmax(315px,1fr));gap:32px;display:grid}.projects__card{background-color:#fff;border:4px solid #d8b4fe;border-radius:24px;flex-direction:column;transition:border-color .2s ease-in-out;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 25px -5px #00000026}@media (hover:hover) and (pointer:fine){.projects__card:hover{border-color:#f472b6}.projects__card:hover .project-card__image{transform:scale(1.1)}}.project-card__image{aspect-ratio:350/225;width:100%;transition:transform .4s ease-in-out}.project-card__image-wrapper{position:relative;overflow:hidden}.project-card__image-wrapper:after{content:"";background:linear-gradient(#fff0 0%,#e9d5ff66 100%);width:100%;height:100%;position:absolute;top:0;left:0}.project-card__content{flex-direction:column;flex:1;justify-content:space-between;gap:16px;padding:24px;display:flex}.project-card__title{margin-bottom:8px}.project-card__tags{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.project-card__tag{background:linear-gradient(90deg,#e9d5ff,#fbcfe8);border-radius:50px;padding:4px 16px}.project-card__link{align-items:center;gap:4px;font-weight:700;display:flex}.project-card__link:after{content:"";z-index:1;position:absolute;inset:0}.project-card__link--demo{color:#db2777}.skills{background:linear-gradient(to bottom right,#eff6ff,#fdf2f8);padding-block:80px}.skills__wrapper{flex-direction:column;justify-content:center;align-items:center;gap:64px;display:flex}.skills__header{text-align:center;flex-direction:column;gap:16px;display:flex}.skills__title{background:linear-gradient(270deg,#f6339a,#3b82f6);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 4px #00000026);-webkit-background-clip:text;padding-bottom:8px}.skills__subtitle{font-weight:500}.skills__grid{grid-template-columns:repeat(auto-fit,minmax(315px,1fr));gap:32px;width:100%;display:grid}.skill-card{background-color:#fff;border:4px solid #93c5fd;border-radius:24px;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;padding:24px;transition:border-color .2s ease-in-out;display:flex;box-shadow:0 20px 25px -5px #00000026}@media (hover:hover) and (pointer:fine){.skill-card:hover{border-color:#f472b6}.skill-card:hover .skill-card__icon-wrapper{transform:rotate(360deg)}}.skill-card__icon{width:32px;height:32px}.skill-card__icon-wrapper{background:linear-gradient(to top left,#f472b6,#c084fc);border-radius:16px;margin-bottom:8px;padding:16px;transition:transform .6s ease-in-out;box-shadow:0 10px 15px -3px #00000026}.about{background:linear-gradient(to bottom right,#fdf2f8,#eff6ff);padding-block:80px}.about__wrapper{flex-direction:column;justify-content:center;align-items:center;gap:64px;display:flex}.about__header{text-align:center;flex-direction:column;gap:16px;display:flex}.about__title{background:linear-gradient(270deg,#3b82f6,#f6339a);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 4px #00000026);-webkit-background-clip:text;padding-bottom:8px}.about__subtitle{font-weight:500}.about__content{flex-direction:column;justify-content:center;align-items:flex-start;gap:32px;display:flex}.about__bio{background-color:#fff;border:4px solid #d8b4fe;border-radius:24px;flex-direction:column;gap:16px;padding:32px;display:flex;box-shadow:0 20px 25px -5px #00000026}.about__bio>p{font-weight:500;line-height:29px}.about__grid{grid-template-columns:repeat(3,1fr);gap:24px;width:100%;display:grid}@media (width<=768px){.about__grid{grid-template-columns:1fr}}.about-card{text-align:center;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex;box-shadow:0 20px 25px -5px #00000026}.about-card__icon{width:32px;height:32px}.about-card__icon-wrapper{border-radius:16px;margin-bottom:8px;padding:16px;box-shadow:0 10px 15px -3px #00000026}.about-card--pink{background:linear-gradient(to bottom right,#fce7f3,#f3e8ff);border:4px solid #f9a8d4}.about-card--pink .about-card__icon-wrapper{background:linear-gradient(to top left,#c084fc,#f472b6)}.about-card--purple{background:linear-gradient(to bottom right,#f3e8ff,#dbeafe);border:4px solid #d8b4fe}.about-card--purple .about-card__icon-wrapper{background:linear-gradient(to top left,#60a5fa,#c084fc)}.about-card--blue{background:linear-gradient(to bottom right,#dbeafe,#fce7f3);border:4px solid #93c5fd}.about-card--blue .about-card__icon-wrapper{background:linear-gradient(to top left,#f472b6,#60a5fa)}.contact{background:linear-gradient(to top left,#fce7f3,#f3e8ff);border-top:4px solid #d8b4fe;padding-block:40px}.contact__wrapper{flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.contact__header{text-align:center;flex-direction:column;gap:16px;display:flex}.contact__title{background:linear-gradient(270deg,#a855f7,#f6339a);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 4px #00000026);-webkit-background-clip:text;padding-bottom:8px}.contact__subtitle{margin-bottom:8px;font-weight:500}.contact__socials{justify-content:center;align-items:center;gap:24px;width:100%;margin-bottom:16px;display:flex}.contact__socials-btn{border-radius:16px;padding:16px;transition:transform .4s cubic-bezier(.175,.885,.32,1.275);display:block;box-shadow:0 10px 15px -3px #00000026}@media (hover:hover) and (pointer:fine){.contact__socials-btn:hover{transform:translateY(-10px)scale(1.2)rotate(360deg)}}.contact__socials-btn--pink{background:linear-gradient(to top left,#f472b6,#c084fc)}.contact__socials-btn--purple{background:linear-gradient(to top left,#60a5fa,#f472b6)}.contact__socials-btn--blue{background:linear-gradient(to top left,#c084fc,#60a5fa)}.contact__socials-icon{width:32px;height:32px}.contact__copyright{font-weight:500}
