@import"https://fonts.googleapis.com/css2?family=Lexend:wght@400;500;600;700&display=swap";:root{--chalet-green: #4a5e36;--sage-light: #e9f5e5;--sage-main: #d0e4c9;--sage-deep: #5a7747;--deep-olive: #2c3a24;--text-primary: #1a1f1a;--text-muted: #4a5547;--text-dark: #0d110c;--text-medium: #2e382b;--surface-glass: rgba(233, 245, 229, .8);--surface-glass-strong: rgba(255, 255, 255, .9);--surface-solid: #f7faf6;--border-soft: rgba(74, 94, 54, .15);--border-strong: rgba(74, 94, 54, .3);--blur: blur(12px);--shadow-soft: 0 8px 30px rgba(74, 94, 54, .15);--accent-main: var(--chalet-green);--accent-soft: var(--sage-main);--accent-deep: var(--sage-deep)}*,*:after,*:before{box-sizing:border-box}*{margin:0;padding:0;font-family:Lexend,sans-serif;scroll-behavior:smooth}body{min-height:100vh;background:linear-gradient(180deg,var(--sage-light),var(--surface-solid));color:var(--text-primary)}.nav{position:fixed;top:1rem;left:50%;transform:translate(-50%);background:var(--surface-glass);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--border-soft);border-radius:14px;box-shadow:var(--shadow-soft);z-index:100}.nav ul{list-style:none;display:flex;gap:1.5rem;padding:.75rem 1.5rem}.nav ul li a{text-decoration:none;color:var(--text-medium);font-size:1rem;font-weight:600;padding:.4rem .75rem;border-radius:8px;transition:background .3s ease,color .3s ease}.nav ul li a:hover{background:#4a5e3626;color:var(--text-dark)}.hero{min-height:90vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:1.2rem;padding:2rem}.hero h1{font-size:3rem;color:var(--text-dark);font-weight:700;letter-spacing:-.5px}.hero p{max-width:600px;margin-inline:auto;color:var(--text-muted);font-size:1.1rem;line-height:1.6}.hero .btn{margin-top:1rem;background:var(--accent-main);color:#fff;padding:.75rem 1.5rem;border-radius:999px;text-decoration:none;font-weight:600;box-shadow:0 10px 25px #4a5e3640;transition:transform .3s ease,box-shadow .3s ease,background .3s ease}.hero .btn:hover{transform:translateY(-1px);box-shadow:0 14px 40px #4a5e3659;background:var(--accent-deep)}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(to right,rgba(74,94,54,.08) 2.5px,transparent 2.5px),linear-gradient(to bottom,rgba(74,94,54,.08) 2.5px,transparent 2.5px);background-size:40px 40px;opacity:.3;pointer-events:none;z-index:1;transition:opacity .3s ease}.hero:hover:before{opacity:.6}main{padding:2rem 5rem;display:flex;flex-direction:column;align-items:center;width:100%}.projects{padding:5rem;text-align:center;width:100%}.projects h2{font-size:2.2rem;margin-bottom:.75rem;color:var(--text-dark);font-weight:700}.projects p{color:var(--text-muted);max-width:700px;margin:0 auto;line-height:1.6}.project-grid{margin-top:2.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.project-card{position:relative;background:var(--surface-glass);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--border-soft);border-radius:18px;padding:1.75rem;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:.8rem;transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{transform:translateY(-1px);box-shadow:0 18px 40px #4a5e3633;background:var(--surface-glass-strong)}.project-card img{width:42px;opacity:.9;filter:brightness(.8) contrast(1.2)}.project-card h3{color:var(--text-dark);font-weight:600;font-size:1.25rem}.project-card p{font-size:.95rem;color:var(--text-muted);line-height:1.5;text-align:left}.project-card .tech{align-self:flex-start;font-size:.8rem;font-weight:600;color:var(--text-dark);background:#d0e4c9b3;padding:.25rem .6rem;border-radius:999px;border:1px solid var(--border-soft)}.project-card .github-link{position:absolute;bottom:1.25rem;right:1.25rem;font-size:1.8rem;color:var(--text-medium);opacity:.8;transition:transform .25s ease,color .25s ease,opacity .25s ease}.project-card:hover .github-link{opacity:1;color:var(--text-dark);transform:translateY(-2px)}.project-card{opacity:0;transform:translateY(20px);transition:transform .6s ease,opacity .6s ease}.project-card.visible{opacity:1;transform:translateY(0)}.about{padding:6rem 1.5rem;width:100%}.about-content{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center}.about-text h2{font-size:2.2rem;margin-bottom:1rem;color:var(--text-dark);font-weight:700}.about-text p{color:var(--text-muted);margin-bottom:1rem;line-height:1.6}@media(max-width:768px){.about-content{grid-template-columns:1fr;text-align:center}}.profile-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:1.5rem;padding:2rem;border-radius:1.25rem;background:var(--surface-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-soft);box-shadow:var(--shadow-soft)}.avatar{width:72px;height:72px;border-radius:50%;border:2px solid var(--accent-main);display:grid;place-items:center;background:var(--surface-solid)}.avatar img{width:60px;height:60px;border-radius:50%;object-fit:cover}.profile-card .title{align-self:center;font-size:1.2rem;font-weight:600;color:var(--text-dark)}.contacts{list-style:none;grid-column:1 / -1;display:flex;justify-content:space-between;gap:.75rem;padding:.75rem 1.25rem;border-radius:999px;background:#d0e4c966;border:1px solid var(--border-soft)}.contacts a{font-size:1.3rem;color:var(--text-medium);opacity:.8;transition:transform .2s ease,color .2s ease,opacity .2s ease}.contacts a:hover{transform:translateY(-2px);color:var(--text-dark);opacity:1}.footer{padding:2rem;text-align:center;background:var(--surface-glass);border-top:1px solid var(--border-soft);margin-top:3rem;width:100%;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);box-shadow:var(--shadow-soft)}.footer p{color:var(--text-muted);margin-bottom:.5rem;font-size:1rem}.footer a{color:var(--text-dark);text-decoration:none;font-weight:600;transition:color .3s ease}.footer a:hover{color:var(--accent-main);text-decoration:underline}
