div.svelte-b3tj2i,a.svelte-b3tj2i,img.svelte-b3tj2i,ul.svelte-b3tj2i,li.svelte-b3tj2i{font-size:100%;font:inherit;vertical-align:baseline;border:0;margin:0;padding:0}a.svelte-b3tj2i{color:inherit;text-decoration:none}ul.svelte-b3tj2i{list-style:none}img.svelte-b3tj2i{max-width:100%;display:block}.button.svelte-b3tj2i{border:1px solid var(--primary);border-radius:var(--radius-sm);transition:background-color var(--transition), color var(--transition), box-shadow var(--transition);cursor:pointer;align-items:center;padding:8px 16px;font-weight:500;display:inline-flex}.button.svelte-b3tj2i:hover{background-color:var(--primary-op);color:var(--primary);box-shadow:0 0 14px #c470db26}.project-list.svelte-b3tj2i{grid-template-columns:repeat(3,1fr);align-items:start;gap:20px;width:100%;display:grid}@media (width<=1024px){.project-list.svelte-b3tj2i{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}.project.svelte-b3tj2i{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--background-card);height:100%;transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);flex-direction:column;display:flex;overflow:hidden}.project.svelte-b3tj2i:hover{box-shadow:var(--shadow-glow);border-color:#c470db4d;transform:translateY(-5px)}.img-container.svelte-b3tj2i{aspect-ratio:16/9;background-color:#1a1d23;justify-content:center;align-items:center;display:flex;overflow:hidden}.project__image.svelte-b3tj2i{object-fit:cover;width:100%;height:100%;transition:transform .4s cubic-bezier(.4,0,.2,1)}.project.svelte-b3tj2i:hover .project__image:where(.svelte-b3tj2i){transform:scale(1.04)}.project__techs.svelte-b3tj2i{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;padding:10px 12px;display:flex}.project__tech.svelte-b3tj2i{background-color:var(--primary-op);color:var(--primary);text-transform:capitalize;white-space:nowrap;border:1px solid #c470db33;border-radius:999px;padding:2px 10px;font-size:.78em}.project__content.svelte-b3tj2i{flex-direction:column;flex:1;padding:16px;display:flex}.project__name.svelte-b3tj2i{text-transform:capitalize;margin-bottom:10px;font-size:1.2rem;font-weight:600}.project__description.svelte-b3tj2i{color:var(--gray);flex:1;margin-bottom:20px;font-size:.9rem;line-height:1.65}.project__links.svelte-b3tj2i{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}div.svelte-3dm6e2,h2.svelte-3dm6e2,ul.svelte-3dm6e2,li.svelte-3dm6e2,section.svelte-3dm6e2{font-size:100%;font:inherit;vertical-align:baseline;border:0;margin:0;padding:0}ul.svelte-3dm6e2{list-style:none}.h2.svelte-3dm6e2{font-size:28px;font-weight:600;display:inline-block;position:relative}.h2.svelte-3dm6e2:before{content:"#";color:var(--primary)}.h2.svelte-3dm6e2:after{content:"";background:linear-gradient(to right, var(--primary), transparent);width:8vw;min-width:40px;height:1px;display:block;position:absolute;top:50%;right:-16px;transform:translate(calc(100% + 16px),-50%)}.skills__header.svelte-3dm6e2{flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:40px;display:flex}.skills.svelte-3dm6e2{width:100%}.skills__list.svelte-3dm6e2{grid-template-columns:repeat(4,1fr);align-items:start;gap:16px;display:grid}@media (width<=768px){.skills__list.svelte-3dm6e2{grid-template-columns:repeat(2,1fr)}}@media (width<=500px){.skills__list.svelte-3dm6e2{grid-template-columns:1fr}}.skill-block.svelte-3dm6e2{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--background-card);transition:border-color var(--transition), box-shadow var(--transition);overflow:hidden}.skill-block.svelte-3dm6e2:hover{border-color:#c470db40;box-shadow:0 4px 20px #0b0c0f59}.skill-block__name.svelte-3dm6e2{border-bottom:1px solid var(--border);background-color:#22262f;padding:10px 12px;font-size:.9rem;font-weight:600}.skill-block__list.svelte-3dm6e2{flex-flow:wrap;gap:6px;padding:12px;display:flex}.skill-block__skill.svelte-3dm6e2{border:1px solid var(--border);color:var(--gray);transition:background-color var(--transition), border-color var(--transition), color var(--transition);cursor:default;border-radius:999px;padding:3px 10px;font-size:.8em;display:inline-flex}.skill-block__skill.svelte-3dm6e2:hover{background-color:var(--primary-op);color:var(--primary);border-color:#c470db66}div.svelte-1d0wj5w,h2.svelte-1d0wj5w,h3.svelte-1d0wj5w,p.svelte-1d0wj5w,form.svelte-1d0wj5w,label.svelte-1d0wj5w,section.svelte-1d0wj5w{font-size:100%;font:inherit;vertical-align:baseline;border:0;margin:0;padding:0}.h2.svelte-1d0wj5w{font-size:28px;font-weight:600;display:inline-block;position:relative}.h2.svelte-1d0wj5w:before{content:"#";color:var(--primary)}.h2.svelte-1d0wj5w:after{content:"";background:linear-gradient(to right, var(--primary), transparent);width:8vw;min-width:40px;height:1px;display:block;position:absolute;top:50%;right:-16px;transform:translate(calc(100% + 16px),-50%)}.contacts.svelte-1d0wj5w{width:100%}.contacts__content.svelte-1d0wj5w{flex-flow:wrap;justify-content:space-between;align-items:flex-start;gap:40px;margin-top:40px;display:flex}.contact-info.svelte-1d0wj5w{flex:1;min-width:240px;max-width:340px}.contacts__description.svelte-1d0wj5w{color:var(--gray);font-size:.95rem;line-height:1.75}.contacts__media.svelte-1d0wj5w{border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--background-card);flex:1;min-width:280px;padding:24px}.contacts__title.svelte-1d0wj5w{margin-bottom:20px;font-size:1rem;font-weight:600}input.svelte-1d0wj5w,textarea.svelte-1d0wj5w{font:inherit}.input-group.svelte-1d0wj5w{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.input-group.svelte-1d0wj5w label:where(.svelte-1d0wj5w){color:var(--gray);letter-spacing:.03em;font-size:.8rem}.form-input.svelte-1d0wj5w{color:var(--white);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;transition:border-color var(--transition), box-shadow var(--transition);background-color:#1e2129;outline:none;padding:10px 14px;font-family:inherit;font-size:.875rem}.form-input.svelte-1d0wj5w::placeholder{color:#9ca4b473}.form-input.svelte-1d0wj5w:focus{border-color:var(--primary);box-shadow:0 0 0 3px #c470db1f}.send-message.svelte-1d0wj5w{border:1px solid var(--primary);border-radius:var(--radius-sm);width:100%;color:var(--primary);background-color:var(--primary-op);cursor:pointer;height:44px;transition:background-color var(--transition), box-shadow var(--transition);margin-top:4px;font-family:inherit;font-size:.9rem;font-weight:600}.send-message.svelte-1d0wj5w:hover{background-color:#c470db2e;box-shadow:0 0 20px #c470db2e}
