@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600&display=swap";
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:Roboto,Menlo,Monaco,Consolas,Courier New,monospace}.portfolio-card{transition:transform .3s ease-in-out,box-shadow .3s ease-in-out}.portfolio-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #f49d7133!important}
:root{--bg-primary:#050816;--bg-secondary:#080d25;--bg-card:#ffffff0a;--accent-from:#ff5f6d;--accent-to:#ffc371;--accent-gradient:linear-gradient(135deg, #ff5f6d, #ffc371);--text-primary:#fff;--text-secondary:#94a3b8;--text-muted:#4b5563;--border:#ffffff14;--blur:blur(16px);--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--shadow:0 4px 24px #0006;--ease:.3s cubic-bezier(.4,0,.2,1)}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes pulse-ring{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes bounce-dot{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.4;transform:translateY(7px)}}@keyframes gradient-bg{0%,to{background-position:0%}50%{background-position:100%}}*{box-sizing:border-box;font-family:Inter,sans-serif}h1,h2,h3,h4,h5,h6{font-family:Space Grotesk,sans-serif}html{scroll-behavior:smooth}body{background:var(--bg-primary);overflow-x:hidden;color:#fff!important}p,span,a,li,td,th,label,div{color:inherit}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--accent-gradient);border-radius:3px}.container-fluid{background:var(--bg-primary);padding-left:0!important;padding-right:0!important}.section-wrap{color:#fff;max-width:1200px;margin:0 auto;padding:0 2rem}.gradient-text{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.section-label{letter-spacing:4px;text-transform:uppercase;margin-bottom:.75rem;font-size:.75rem;font-weight:600;display:block;color:var(--accent-from)!important}.section-heading{margin-bottom:1.5rem;font-size:clamp(2rem,4vw,2.8rem);font-weight:700;color:#fff!important}.hero-bio{max-width:500px;margin-bottom:2.5rem;font-size:1rem;line-height:1.85;color:var(--text-secondary)!important}.hero-role{min-height:2.8rem;margin-bottom:1.75rem;font-size:clamp(1.3rem,3vw,2rem);font-weight:600;color:var(--text-secondary)!important}.skill-name{transition:color var(--ease);margin:0;font-size:.82rem;font-weight:600;color:var(--text-secondary)!important;font-family:Space Grotesk,sans-serif!important}.port-title{background:var(--accent-gradient);-webkit-text-fill-color:transparent;text-align:center;-webkit-background-clip:text;background-clip:text;margin-bottom:.4rem;font-size:1.05rem;font-weight:700;display:block;font-family:Space Grotesk,sans-serif!important}.port-desc{flex:1;margin-bottom:1.25rem;font-size:.85rem;line-height:1.65;color:var(--text-secondary)!important}.about-bio p{margin-bottom:1rem;font-size:.97rem;line-height:1.9;color:var(--text-secondary)!important}.tl-title{margin:0 0 .2rem;font-size:.97rem;font-weight:600;color:#fff!important}.tl-org{margin:0;font-size:.82rem;font-weight:500;color:var(--accent-from)!important}.tl-period{margin:.15rem 0 0;font-size:.78rem;color:var(--text-muted)!important}.chip-label{text-transform:uppercase;letter-spacing:1px;font-size:.7rem;display:block;color:var(--text-muted)!important}.chip-value{font-size:.88rem;font-weight:500;color:var(--text-secondary)!important}.contact-chip:hover .chip-value{color:#fff!important}.footer-text{margin:0;font-size:.85rem;color:var(--text-muted)!important}.portfolio-nav{z-index:1000;transition:var(--ease);padding:1.2rem 2rem;position:fixed;top:0;left:0;right:0}.portfolio-nav.scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);background:#050816e0}.nav-inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.nav-logo{width:auto;height:38px}.nav-links{gap:2rem;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:var(--text-secondary);transition:color var(--ease);font-size:.9rem;font-weight:500;text-decoration:none;position:relative}.nav-links a:after{content:"";background:var(--accent-gradient);width:0;height:2px;transition:width var(--ease);border-radius:2px;position:absolute;bottom:-4px;left:0}.nav-links a:hover{color:#fff}.nav-links a:hover:after{width:100%}.nav-cta{background:var(--accent-gradient);transition:opacity var(--ease),transform var(--ease);border-radius:50px;padding:.55rem 1.4rem;font-size:.875rem;font-weight:600;display:inline-block;color:#fff!important;text-decoration:none!important}.nav-cta:hover{opacity:.82;transform:translateY(-1px)}.nav-toggler{border:1px solid var(--border);cursor:pointer;color:#fff;background:0 0;border-radius:6px;padding:.35rem .55rem;display:none}.nav-mobile{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);z-index:999;background:#050816f7;flex-direction:column;gap:1.25rem;padding:1.5rem 2rem;display:none;position:fixed;top:68px;left:0;right:0}.nav-mobile.open{display:flex}.nav-mobile a{color:var(--text-secondary);font-size:1.05rem;font-weight:500;text-decoration:none}.hero-section{background:var(--bg-primary);align-items:center;min-height:100vh;padding-top:130px;padding-bottom:80px;display:flex;position:relative;overflow:hidden}.hero-section:before{content:"";pointer-events:none;background:radial-gradient(circle,#ff5f6d12 0%,#0000 70%);border-radius:50%;width:700px;height:700px;position:absolute;top:-150px;left:-200px}.hero-section:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffc3710d 0%,#0000 70%);border-radius:50%;width:500px;height:500px;position:absolute;bottom:0;right:-100px}.hero-content{animation:.8s ease-out both fadeInLeft}.hero-greeting{letter-spacing:4px;text-transform:uppercase;color:var(--accent-from);margin-bottom:1rem;font-size:.85rem;font-weight:600;display:block}.hero-name{background:linear-gradient(135deg,#fff 0%,#ffffffbf 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:clamp(3rem,7vw,5.5rem);font-weight:800;line-height:1.05}.hero-role .rotating{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-actions{flex-wrap:wrap;gap:1rem;margin-bottom:2.5rem;display:flex}.btn-grad{background:var(--accent-gradient);color:#fff;transition:transform var(--ease),box-shadow var(--ease);border:none;border-radius:50px;align-items:center;gap:.5rem;padding:.9rem 2rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-grad:hover{color:#fff;text-decoration:none;transform:translateY(-2px);box-shadow:0 10px 28px #ff5f6d59}.btn-ghost{color:#fff;border:1px solid var(--border);transition:all var(--ease);background:0 0;border-radius:50px;align-items:center;gap:.5rem;padding:.9rem 2rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-ghost:hover{color:#fff;background:#ffffff12;border-color:#ffffff38;text-decoration:none;transform:translateY(-2px)}.hero-socials{gap:.85rem;display:flex}.hero-socials a{border:1px solid var(--border);width:42px;height:42px;color:var(--text-secondary);transition:all var(--ease);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex}.hero-socials a:hover{border-color:var(--accent-from);color:var(--accent-from);background:#ff5f6d1a;transform:translateY(-3px)}.hero-img-wrap{justify-content:center;animation:.8s ease-out .2s both fadeInRight;display:flex}.hero-ring{width:340px;height:340px;animation:6s ease-in-out infinite float;position:relative}.hero-ring:before{content:"";background:var(--accent-gradient);z-index:0;border-radius:50%;animation:3s ease-in-out infinite pulse-ring;position:absolute;inset:-6px}.hero-ring:after{content:"";background:var(--accent-gradient);opacity:.18;z-index:0;border-radius:50%;position:absolute;inset:-16px}.hero-ring img{object-fit:cover;z-index:1;border:4px solid var(--bg-primary);border-radius:50%;width:100%;height:100%;position:relative}.scroll-cue{color:var(--text-muted);letter-spacing:2px;text-transform:uppercase;flex-direction:column;align-items:center;gap:.4rem;font-size:.7rem;animation:1s ease-out 1s both fadeInUp;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-dot{background:var(--accent-gradient);border-radius:50%;width:6px;height:6px;animation:1.5s ease-in-out infinite bounce-dot}.section-sep{background:var(--accent-gradient);opacity:.15;height:1px}.about-section{background:var(--bg-secondary);padding:7rem 0}.about-row{align-items:stretch;display:flex}.about-photo{height:100%;min-height:400px;position:relative}.about-photo img{object-fit:cover;border-radius:var(--radius-lg);z-index:1;width:100%;height:100%;display:block;position:relative}.about-photo:before{content:"";background:var(--accent-gradient);border-radius:var(--radius-lg);opacity:.12;z-index:0;position:absolute;inset:0;transform:translate(14px,14px)}.about-bio p{color:var(--text-secondary);margin-bottom:1rem;font-size:.97rem;line-height:1.9}.section-heading{margin-bottom:1.5rem;font-size:clamp(2rem,4vw,2.8rem);font-weight:700}.timeline{padding-left:1.75rem;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom,var(--accent-from),var(--accent-to));opacity:.35;border-radius:2px;width:2px;position:absolute;top:4px;bottom:4px;left:0}.tl-item{margin-bottom:2rem;position:relative}.tl-item:before{content:"";background:var(--accent-gradient);border:2px solid var(--bg-secondary);border-radius:50%;width:12px;height:12px;position:absolute;top:.35rem;left:-1.75rem;transform:translate(-5px)}.tl-title{color:#fff;margin:0 0 .2rem;font-size:.97rem;font-weight:600}.tl-org{color:var(--accent-from);margin:0;font-size:.82rem;font-weight:500}.tl-period{color:var(--text-muted);margin:.15rem 0 0;font-size:.78rem}.skills-section{background:var(--bg-primary);padding:7rem 0}.skill-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);text-align:center;transition:all var(--ease);padding:1.5rem 1rem;position:relative;overflow:hidden}.skill-card:hover{transform:translateY(-6px)}.skill-icon-wrap{width:60px;height:60px;transition:transform var(--ease);background:#ffffffeb;border-radius:50%;justify-content:center;align-items:center;margin:0 auto .75rem;display:flex}.skill-card:hover .skill-icon-wrap{transform:scale(1.12)}.skill-card img{object-fit:contain;width:36px;height:36px;display:block}.skill-name{color:var(--text-secondary);transition:color var(--ease);margin:0;font-family:Space Grotesk,sans-serif;font-size:.82rem;font-weight:600}.skill-card:hover .skill-name{color:#fff}.portfolio-section{background:var(--bg-secondary);padding:7rem 0}.port-card{border:1px solid var(--border);border-radius:var(--radius-md);transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);background:#ffffff0a;flex-direction:column;height:100%;display:flex;overflow:hidden}.port-card:hover{border-color:#ff5f6d4d;transform:translateY(-8px);box-shadow:0 24px 48px #00000073}.port-img{object-fit:cover;width:100%;height:195px;display:block}.port-body{text-align:center;flex-direction:column;flex:1;align-items:center;padding:1.4rem;display:flex}.port-title{background:var(--accent-gradient);-webkit-text-fill-color:transparent;text-align:center;-webkit-background-clip:text;background-clip:text;width:100%;margin-bottom:.4rem;font-family:Space Grotesk,sans-serif;font-size:1.05rem;font-weight:700}.port-desc{color:var(--text-secondary);text-align:center;flex:1;margin-bottom:1.25rem;font-size:.85rem;line-height:1.65}.btn-visit{background:var(--accent-gradient);color:#fff;text-align:center;width:fit-content;transition:opacity var(--ease),transform var(--ease);border:none;border-radius:50px;margin:0 auto;padding:.6rem 1.5rem;font-size:.85rem;font-weight:600;text-decoration:none;display:block}.btn-visit:hover{opacity:.83;color:#fff;text-decoration:none;transform:translateY(-1px)}.pag-btn{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:all var(--ease);background:#ffffff0a;border-radius:50px;padding:.6rem 1.8rem;font-weight:500}.pag-btn:hover:not(:disabled){border-color:var(--accent-from);color:#fff;background:#ff5f6d14}.pag-btn:disabled{opacity:.3;cursor:not-allowed}.contact-section{background:var(--bg-primary);padding:7rem 0}.contact-chip{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--ease);background:#ffffff0a;align-items:center;gap:1rem;margin-bottom:.85rem;padding:1rem 1.25rem;text-decoration:none;display:flex}.contact-chip:hover{color:#fff;background:#ff5f6d0d;border-color:#ff5f6d66;text-decoration:none;transform:translate(5px)}.chip-icon{border-radius:var(--radius-sm);width:40px;height:40px;color:var(--accent-from);background:#ff5f6d1f;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chip-label{text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);font-size:.7rem;display:block}.chip-value{font-size:.88rem;font-weight:500}.contact-form-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:#ffffff08;padding:2.25rem}.form-row{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.f-input{border:1px solid var(--border);border-radius:var(--radius-sm);color:#fff;width:100%;transition:border-color var(--ease),box-shadow var(--ease);background:#ffffff0d;outline:none;padding:.8rem 1rem;font-size:.93rem}.f-input:focus{border-color:var(--accent-from);box-shadow:0 0 0 3px #ff5f6d1f}.f-input::placeholder{color:var(--text-muted)}textarea.f-input{resize:vertical;width:100%;min-height:130px;margin-bottom:1rem;display:block}.btn-send{background:var(--accent-gradient);color:#fff;cursor:pointer;width:100%;transition:opacity var(--ease),transform var(--ease);border:none;border-radius:50px;padding:1rem;font-size:1rem;font-weight:700}.btn-send:hover:not(:disabled){opacity:.83;transform:translateY(-2px)}.btn-send:disabled{opacity:.45;cursor:not-allowed}.contact-socials{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.soc-link{border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);transition:all var(--ease);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex}.soc-link:hover{border-color:var(--accent-from);color:var(--accent-from);background:#ff5f6d1a}.section-wrap,.section-wrap *{color:inherit}.f-input,.f-input:focus{color:#fff!important;background:#ffffff0d!important}.portfolio-footer{background:var(--bg-secondary);border-top:1px solid var(--border);text-align:center;padding:2.25rem 0}.footer-text{color:var(--text-muted);margin:0;font-size:.85rem}@media (max-width:991px){.nav-links,.nav-cta{display:none}.nav-toggler{align-items:center;display:flex}}@media (max-width:768px){.hero-section{padding-top:100px}.hero-ring{width:250px;height:250px}.about-section,.skills-section,.portfolio-section,.contact-section{padding:5rem 0}.form-row{grid-template-columns:1fr}.contact-form-wrap{padding:1.5rem}}@media (max-width:480px){.hero-ring{width:210px;height:210px}.hero-actions{flex-direction:column}.btn-grad,.btn-ghost{justify-content:center;width:100%}}
