@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap";:root{--bg: #ffffff;--bg-elevated: #f8f8f8;--text: #0b0b0b;--text-muted: #5d5d63;--accent: #3a165c;--border: #e7e7ea;--geo-1: rgba(25, 9, 38, .18);--geo-2: rgba(70, 70, 78, .2);--geo-3: rgba(15, 15, 18, .16);--geo-4: rgba(255, 255, 255, .12);--shadow-soft: 0 8px 24px rgba(0, 0, 0, .08);--shadow-card: 0 12px 32px rgba(0, 0, 0, .08);--radius-lg: 20px;--radius-md: 14px}[data-theme=dark]{--bg: #0d0d10;--bg-elevated: #15151b;--text: #f5f5f6;--text-muted: #c2c4cc;--accent: #4b1f73;--border: #26262d;--geo-1: rgba(74, 43, 104, .3);--geo-2: rgba(120, 120, 130, .24);--geo-3: rgba(0, 0, 0, .35);--geo-4: rgba(255, 255, 255, .08);--shadow-soft: 0 10px 30px rgba(0, 0, 0, .45);--shadow-card: 0 14px 36px rgba(0, 0, 0, .55)}@font-face{font-family:DroplineRegular;src:url(/assets/DroplineRegular-Wpegz-DIicCAbC.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);font-family:Poppins,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(600px circle at 10% 15%,rgba(58,22,92,.08),transparent 60%),radial-gradient(500px circle at 85% 20%,rgba(58,22,92,.06),transparent 55%),radial-gradient(700px circle at 80% 80%,rgba(58,22,92,.05),transparent 60%);pointer-events:none}[data-theme=dark] body:before{background:radial-gradient(600px circle at 10% 15%,rgba(75,31,115,.16),transparent 60%),radial-gradient(500px circle at 85% 20%,rgba(75,31,115,.12),transparent 55%),radial-gradient(700px circle at 80% 80%,rgba(75,31,115,.1),transparent 60%)}html{scroll-behavior:smooth}section{padding:6rem 0;position:relative;isolation:isolate}section+section{margin-top:2.5rem}section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 0 48%,rgba(0,0,0,.2) 55%,rgba(0,0,0,.7) 100%),linear-gradient(135deg,var(--geo-1) 0 25%,transparent 25% 50%,var(--geo-2) 50% 75%,transparent 75% 100%),linear-gradient(45deg,var(--geo-3) 0 25%,transparent 25% 50%,var(--geo-4) 50% 75%,transparent 75% 100%);background-size:100% 100%,220px 220px,220px 220px;background-position:0 0,left top,left 110px;opacity:.7;pointer-events:none;z-index:-1;clip-path:polygon(42% 0,100% 0,100% 100%,58% 100%);transform-origin:center}section:nth-of-type(2n):before{transform:scaleX(-1)}@media(max-width:900px){section{padding:3rem 0}section+section{margin-top:1.5rem}}.container{width:min(1400px,92%);margin:0 auto}.section-divider{width:64px;height:2px;background:var(--border);margin:1.2rem auto 0;border-radius:999px}a{color:inherit}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.app{background-color:var(--bg)}.scroll-to-top{position:fixed;bottom:24px;right:24px;background-color:var(--bg-elevated);color:var(--text);padding:10px 16px;border-radius:999px;text-decoration:none;font-size:14px;border:1px solid var(--border);box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease}.scroll-to-top:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);color:var(--accent)}.scroll-link{color:var(--text);text-decoration:none;letter-spacing:.2px}.navbar{position:sticky;top:0;z-index:1000;padding:1rem 0;background:transparent}.navbar .container{display:flex;align-items:center;justify-content:center}.navbar-inner{width:min(900px,92%);background-color:var(--bg);border:1px solid var(--border);border-radius:999px;padding:.65rem 1.6rem;box-shadow:0 10px 30px #00000014;display:flex;align-items:center;justify-content:center;gap:2rem}.navbar-brand{display:flex;flex-direction:column;gap:2px}.navbar-name{font-size:1.4rem;font-weight:400;color:var(--text);font-family:DroplineRegular,sans-serif}.navbar-title{font-size:.75rem;color:var(--text-muted);letter-spacing:1px;text-transform:uppercase}.navbar-actions{display:flex;align-items:center;gap:.9rem;position:relative}.navbar-menu{display:flex;align-items:center;gap:1.6rem}.nav-link{color:var(--text);font-weight:500;text-decoration:none;font-size:.9rem;position:relative;transition:color .2s ease}.nav-link:after{content:"";position:absolute;left:0;bottom:-6px;height:2px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.nav-link:hover{color:var(--accent)}.nav-link:hover:after,.nav-link.active:after,.nav-link[aria-current=page]:after{transform:scaleX(1)}.nav-link.active,.nav-link[aria-current=page]{color:var(--accent)}.navbar-contact{display:none}.theme-toggle{border:1px solid var(--border);background:transparent;color:var(--text);border-radius:999px;padding:.4rem .6rem;cursor:pointer;transition:border-color .2s ease,color .2s ease}.theme-toggle:hover{border-color:var(--accent);color:var(--accent)}.mobile-menu-btn{display:none;background:none;border:none;color:var(--text);font-size:1.4rem;cursor:pointer}.hero{padding:10rem 0 8rem;background:radial-gradient(600px circle at 12% 10%,rgba(58,22,92,.08),transparent 60%),var(--bg);min-height:86vh;display:flex;align-items:center;position:relative;overflow:hidden;isolation:isolate;margin-bottom:2.5rem}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 0 48%,rgba(0,0,0,.2) 55%,rgba(0,0,0,.7) 100%),linear-gradient(135deg,var(--geo-1) 0 25%,transparent 25% 50%,var(--geo-2) 50% 75%,transparent 75% 100%),linear-gradient(45deg,var(--geo-3) 0 25%,transparent 25% 50%,var(--geo-4) 50% 75%,transparent 75% 100%);background-size:100% 100%,220px 220px,220px 220px;background-position:0 0,right top,right 110px;opacity:.7;pointer-events:none;z-index:-1;clip-path:polygon(42% 0,100% 0,100% 100%,58% 100%)}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='1' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");opacity:.15;pointer-events:none;mix-blend-mode:soft-light;z-index:-1}.hero-content{width:70%;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2.6rem;align-items:center;position:relative;margin:0 auto;z-index:1}.hero-content:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,rgba(58,22,92,.08),rgba(58,22,92,.08) 1px,transparent 1px,transparent 22px);opacity:.25;pointer-events:none;-webkit-mask-image:radial-gradient(circle at 55% 50%,rgba(0,0,0,.7) 0%,rgba(0,0,0,.4) 35%,transparent 70%);mask-image:radial-gradient(circle at 55% 50%,rgba(0,0,0,.7) 0%,rgba(0,0,0,.4) 35%,transparent 70%)}.hero-text{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .75rem;border-radius:999px;border:1px solid var(--border);color:var(--text);font-size:.85rem;letter-spacing:.3px;margin-bottom:1.2rem}.hero-status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px #3a165c66}.hero-name{font-size:clamp(3rem,5.4vw,4.6rem);font-weight:700;line-height:1.02;letter-spacing:-1px;margin:0 0 .6rem;animation:slideIn .7s ease forwards;opacity:0}.hero-name span{display:block;position:relative;width:fit-content}.hero-name span:after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:3px;background:var(--accent);opacity:.6}.hero-role{font-size:1.15rem;font-weight:500;color:var(--text);margin-bottom:1.2rem}.hero-description{color:var(--text-muted);line-height:1.8;margin-bottom:2.6rem;max-width:520px;animation:fadeIn .9s ease forwards;opacity:0;animation-delay:.15s}.hero-actions{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}.hero-cta{background:var(--text);color:var(--bg);border-radius:999px;padding:.85rem 1.6rem;text-decoration:none;font-weight:500;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}.hero-cta:hover{transform:translateY(-2px);background-color:var(--accent);color:#fff;box-shadow:0 12px 24px #3a165c40}.hero-socials{display:flex;align-items:center;gap:.8rem}.hero-socials a{width:40px;height:40px;border-radius:999px;border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;color:var(--text);transition:border-color .2s ease,color .2s ease,transform .2s ease}.hero-socials a:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.hero-media{position:relative;display:flex;justify-content:center;align-items:center}.hero-glow{position:absolute;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(58,22,92,.32),transparent 65%);filter:blur(12px);z-index:0}.hero-avatar{width:300px;height:300px;object-fit:cover;border-radius:28px;border:1px solid var(--border);position:relative;z-index:1;animation:float 7s ease-in-out infinite}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media(max-width:900px){.navbar-inner{width:min(760px,92%)}.navbar-menu{gap:1rem}.hero-content{grid-template-columns:1fr}}@media(min-width:900px){.hero-identity{flex-direction:row;justify-content:center;text-align:left}}@media(max-width:770px){.navbar-inner{padding:.6rem 1.2rem}.navbar-menu{position:absolute;top:100%;right:0;width:min(320px,90vw);background:var(--bg);flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem 1.2rem;border:1px solid var(--border);border-radius:20px;max-height:0;opacity:0;overflow:hidden;pointer-events:none;transition:max-height .3s ease,opacity .3s ease;box-shadow:0 12px 30px #0000001f}.navbar-menu.open{max-height:320px;opacity:1;pointer-events:auto}.mobile-menu-btn{display:inline-flex}.hero{padding:9rem 0 6rem;min-height:auto}.hero-avatar{width:260px;height:260px}}@media(max-width:520px){.hero-text{order:1}.hero-media{order:2}.hero-identity{grid-template-columns:1fr;grid-template-areas:"text" "image"}.hero-avatar{width:230px;height:230px}}.services-section{padding:6rem 0;background-color:var(--bg);--geo-1: rgba(66, 24, 110, .28);--geo-2: rgba(110, 110, 118, .22);--geo-3: rgba(8, 8, 10, .2);--geo-4: rgba(255, 255, 255, .12)}.services-section:before{background:none;opacity:0}.services-section .section-title{font-size:clamp(2rem,3vw,3rem);font-weight:600;color:var(--text);text-align:left;margin-bottom:.4rem}.services-section .section-subtitle{text-align:left;color:var(--text-muted);margin-bottom:2.4rem}.skills-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:2rem;margin-top:2rem;max-width:880px}.skill-card{background-color:var(--bg-elevated);padding:1.8rem 2.2rem;border-radius:var(--radius-md);border:1px solid var(--border);width:100%;transition:transform .3s ease,border-color .3s ease}.skill-card:hover{transform:translateY(-4px);border-color:var(--accent)}.skill-card-header{margin-bottom:1rem;display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.skill-title{font-size:1.4rem;font-weight:600;margin-bottom:.6rem;color:var(--text)}.skill-description{color:var(--text-muted);margin-bottom:.8rem;line-height:1.7}.skill-chips{display:flex;flex-wrap:wrap;gap:.7rem}.skill-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .85rem;border-radius:999px;border:1px solid var(--border);color:var(--text-muted);font-size:.9rem;transition:border-color .2s ease,color .2s ease,transform .2s ease}.skill-chip-icon{color:var(--accent);display:inline-flex;font-size:1rem}.skill-chip:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}@media(min-width:900px){.skills-grid{grid-template-columns:repeat(2,1fr);max-width:100%}}@media(max-width:640px){.services-section{padding:3rem 0}.skills-grid{margin-top:1.25rem;gap:1.25rem}.skill-card{padding:1.4rem 1.6rem}.skill-title{font-size:1.2rem}}.portfolio-section{padding:6rem 0;background-color:var(--bg);--geo-1: rgba(76, 32, 128, .3);--geo-2: rgba(125, 125, 135, .22);--geo-3: rgba(0, 0, 0, .26);--geo-4: rgba(255, 255, 255, .1)}.portfolio-section:before{transform:scaleX(1)}.portfolio-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:2.4rem;margin-top:3rem}.portfolio-item{background-color:var(--bg-elevated);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);transition:transform .3s ease,border-color .3s ease}.portfolio-item:hover{transform:translateY(-6px);border-color:var(--accent)}.portfolio-section .section-title{font-size:clamp(2rem,3vw,3rem);font-weight:600;color:var(--text);text-align:left;margin-bottom:.6rem}.placeholder-image{height:200px;background:linear-gradient(120deg,#8a94a31f,#8a94a30a),var(--bg);display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-weight:500;letter-spacing:.6px}.portfolio-info{padding:1.6rem 1.8rem}.portfolio-title{font-size:1.3rem;font-weight:600;color:var(--text);margin-bottom:.6rem}.portfolio-meta{display:flex;gap:.6rem;color:var(--text-muted);font-size:.85rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:.8rem}.portfolio-description{color:var(--text-muted);line-height:1.6;margin-bottom:1rem}.portfolio-tags{display:flex;flex-wrap:wrap;gap:.5rem}.portfolio-tag{padding:.35rem .7rem;border-radius:999px;border:1px solid var(--border);color:var(--text-muted);font-size:.75rem;background:var(--bg);transition:border-color .2s ease,color .2s ease}.portfolio-tag:hover{border-color:var(--accent);color:var(--accent)}@media(min-width:640px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.portfolio-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.portfolio-section{padding:3rem 0}.portfolio-grid{margin-top:1.5rem;gap:1.5rem}.portfolio-info{padding:1.2rem 1.4rem}.placeholder-image{height:160px}}.footer{background-color:var(--bg);color:var(--text);padding:5rem 0 0;margin-top:2.5rem}.contact-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:3rem;align-items:start;margin-bottom:3rem}.contact-pane{display:flex;flex-direction:column;gap:2.5rem}.contact-block{display:flex;flex-direction:column;gap:.9rem}.contact-underline{width:36px;height:2px;background-color:var(--accent)}.contact-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.9rem}.contact-list li{display:flex;align-items:center;gap:.75rem;color:var(--text-muted)}.contact-icon{color:var(--accent)}.contact-link{color:inherit;text-decoration:none}.contact-link:hover{color:var(--text)}.contact-socials{display:flex;gap:.9rem}.contact-socials a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--border);color:var(--text);background-color:var(--bg-elevated);transition:transform .2s ease,border-color .2s ease,color .2s ease}.contact-socials a:hover{transform:translateY(-2px);border-color:var(--accent);color:var(--accent)}.contact-dialog{max-width:none;margin:0;background-color:var(--bg-elevated);border:1px solid var(--border);border-radius:20px;padding:2.5rem;box-shadow:var(--shadow-soft);animation:dialogIn .35s ease both}.contact-title{font-size:1.5rem;font-weight:600;margin:0}.contact-subtitle{color:var(--text-muted);margin-bottom:2rem;line-height:1.6}.contact-form{display:flex;flex-direction:column;gap:1.4rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{font-size:.9rem;color:var(--text-muted)}.form-field input,.form-field textarea{background:transparent;border:1px solid transparent;border-bottom:1px solid var(--border);padding:.6rem 0;color:var(--text);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--text-muted)}.form-field input:focus,.form-field textarea:focus{outline:none;border-bottom-color:var(--accent);box-shadow:0 8px 20px #3a165c14}.contact-button{align-self:flex-start;background:var(--text);color:var(--bg);border:none;border-radius:999px;padding:.85rem 1.6rem;font-size:.95rem;font-weight:500;cursor:pointer;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}.contact-button:hover{transform:translateY(-2px);background-color:var(--accent);box-shadow:0 12px 24px #3a165c33}.contact-button:disabled{cursor:not-allowed;opacity:.7;transform:none;box-shadow:none}.form-status{margin:0;font-size:.9rem}.form-status.success{color:#1b7f4a}.form-status.error{color:#c03b3b}.footer-bottom{padding:1.5rem 0;border-top:1px solid var(--border);text-align:center;font-size:.85rem;color:var(--text-muted)}@keyframes dialogIn{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:640px){.footer{margin-top:1.5rem}.contact-dialog{padding:2rem 1.6rem}.contact-button{width:100%;text-align:center}}@media(max-width:900px){.footer{padding-top:3rem}.contact-section{grid-template-columns:1fr;gap:1.75rem;margin-bottom:2rem}.contact-dialog{order:1}.contact-pane{order:2}}
