@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Fraunces:opsz,wght@9..144,600;9..144,700;9..144,800&display=swap";:root{--bg-primary: #f6f1e8;--bg-secondary: #efe7db;--bg-surface: rgba(255, 255, 255, .72);--text-primary: #101828;--text-secondary: #475467;--accent: #9a3412;--accent-hover: #7c2d12;--accent-warm: #b45309;--accent-rose: #c2410c;--accent-teal: #0f766e;--accent-glow: 0 0 20px rgba(154, 52, 18, .16);--focus-ring: #b45309;--nav-height: 70px;--transition-fast: .2s ease;--transition-medium: .3s ease}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Manrope,Segoe UI,sans-serif;background:radial-gradient(circle at top left,rgba(180,83,9,.12),transparent 28%),radial-gradient(circle at top right,rgba(15,118,110,.14),transparent 26%),linear-gradient(180deg,#f8f3ea,#f4ecdf 52%,#f6f1e8);color:var(--text-primary);line-height:1.7;-webkit-font-smoothing:antialiased}h1,h2,h3,.nav-logo,.section-title{font-family:Fraunces,Georgia,serif}a{text-decoration:none;color:inherit;transition:color var(--transition-fast)}a:hover{color:var(--accent)}ul{list-style:none}button{font-family:inherit;cursor:pointer}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-secondary);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#334155}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.section{padding:5rem 0}.navbar{position:fixed;top:0;left:0;width:100%;height:var(--nav-height);z-index:1000;transition:all var(--transition-medium);border-bottom:1px solid transparent}.navbar.scrolled{background:#f8f3ead6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(16,24,40,.08);box-shadow:0 4px 30px #1018280f}.nav-content{display:flex;justify-content:space-between;align-items:center;height:100%}.nav-logo{font-size:1.5rem;font-weight:800;color:var(--text-primary);letter-spacing:-.5px}.nav-links{display:flex;gap:2rem}.nav-btn{background:none;border:none;color:var(--text-secondary);font-size:.95rem;font-weight:500;text-transform:capitalize;transition:all var(--transition-fast);padding:.5rem 1rem;border-radius:6px}.nav-btn:hover{color:var(--text-primary);background:#9a341214}.btn{display:inline-block;padding:.8rem 1.6rem;border-radius:6px;font-weight:600;transition:all var(--transition-medium);text-decoration:none}.btn-primary{background:linear-gradient(135deg,#9a3412,#c2410c);color:#fffaf4;box-shadow:0 10px 24px #9a34123d}.btn-primary:hover{background:linear-gradient(135deg,#7c2d12,#9a3412);box-shadow:0 12px 30px #9a34124d;transform:translateY(-2px)}.btn-secondary{background:#ffffff8c;color:var(--text-primary);border:1px solid rgba(16,24,40,.14);margin-left:1rem}.btn-secondary:hover{background:#9a341214;border-color:#9a341247}.hero{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:3rem;padding:7.5rem 0 4.5rem;position:relative}.hero:before{content:"";position:absolute;width:420px;height:420px;right:-6%;top:5%;border-radius:50%;background:radial-gradient(circle,#9a34122e,#9a341200);filter:blur(10px);pointer-events:none}.hero-left{position:relative;z-index:2}.hero-kicker{display:inline-block;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;color:var(--accent);border:1px solid rgba(154,52,18,.18);border-radius:999px;padding:.35rem .85rem;margin-bottom:1.2rem;background:#ffffff80}.hero h1{font-size:clamp(2.5rem,5vw,4.6rem);font-weight:800;margin-bottom:1rem;line-height:1.02;letter-spacing:-.03em;background:linear-gradient(140deg,#111827 10%,#374151 52%,#9a3412);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:clamp(1.1rem,2.2vw,1.65rem);color:#1f2937;margin-bottom:1rem;max-width:40ch;line-height:1.35;font-weight:600}.hero-intro{font-size:1.04rem;color:var(--text-secondary);max-width:52ch;margin-bottom:2.2rem}.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem}.hero-cta .btn-secondary{margin-left:0}.hero-tags{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.6rem}.hero-tags span{padding:.42rem .85rem;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.02em;color:#344054;border:1px solid rgba(16,24,40,.1);background:#ffffffa8}.hero-right{min-height:440px;position:relative;display:flex;align-items:center;justify-content:center;z-index:1}.hero-cursor-glow{position:absolute;width:290px;height:290px;border-radius:50%;background:radial-gradient(circle,#9a341247,#9a341200);filter:blur(18px);animation:hoverGlow 7s ease-in-out infinite;pointer-events:none}.hero-window{width:min(100%,480px);border-radius:18px;border:1px solid rgba(16,24,40,.08);background:linear-gradient(155deg,#fffc,#f4ecdfd6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 24px 50px #1018281a,inset 0 1px #ffffff80;overflow:hidden;animation:floatWindow 6s ease-in-out infinite}.window-topbar{display:flex;align-items:center;gap:.45rem;padding:.85rem 1rem;border-bottom:1px solid rgba(16,24,40,.08);background:#fff6}.window-topbar span{width:10px;height:10px;border-radius:50%}.window-topbar span:nth-child(1){background:#fb5f57}.window-topbar span:nth-child(2){background:#fdbf2f}.window-topbar span:nth-child(3){background:#2cc840}.window-topbar p{margin-left:.5rem;color:#475467;font-size:.78rem;letter-spacing:.03em}.window-body{padding:1.25rem 1rem 1.5rem}.code-line{height:11px;border-radius:999px;margin-bottom:.8rem;background:linear-gradient(90deg,#9a341294,#0f766e2e);animation:codePulse 2.8s ease-in-out infinite}.code-line.w-50{width:50%}.code-line.w-60{width:60%}.code-line.w-74{width:74%}.code-line.w-80{width:80%}.code-line.w-92{width:92%}.floating-card{position:absolute;border-radius:14px;padding:.9rem 1rem;min-width:165px;border:1px solid rgba(16,24,40,.08);background:linear-gradient(160deg,#ffffffd1,#f4ecdfe6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 12px 26px #10182814}.floating-card h3{font-size:1.06rem;margin:.2rem 0}.card-label{color:var(--accent);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.floating-card small{color:var(--text-secondary);font-size:.75rem}.analytics-card{top:6%;left:-6%;animation:floatCardA 7.4s ease-in-out infinite}.ship-card{right:-5%;bottom:8%;animation:floatCardB 6.2s ease-in-out infinite}.design-card{left:6%;bottom:-10%;animation:floatCardC 8.3s ease-in-out infinite}.section-title{font-size:2.6rem;font-weight:800;letter-spacing:-.03em;margin-bottom:2rem;text-align:center;background:linear-gradient(135deg,#111827 0%,var(--accent) 55%,var(--accent-warm) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.skills-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-top:2rem}.skill-card{background:linear-gradient(180deg,#fffc,#f4ecdfe6);padding:1rem 2rem;border-radius:12px;font-weight:600;border:1px solid rgba(16,24,40,.08);transition:all var(--transition-fast);cursor:default}.skill-card:hover{border-color:#9a341242;box-shadow:0 14px 32px #1018281f;transform:translateY(-5px);color:var(--accent)}.projects-carousel-section{max-width:100%}.projects-carousel-controls{display:flex;justify-content:flex-end;gap:.75rem;margin:0 0 1rem}.carousel-arrow{width:2.75rem;height:2.75rem;border-radius:999px;border:1px solid rgba(16,24,40,.12);background:#ffffffb8;color:var(--text-primary);font-size:1.05rem;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.carousel-arrow:hover{transform:translateY(-2px) scale(1.03);border-color:#9a34123d;background:#9a341214;box-shadow:0 10px 22px #10182814}.projects-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(320px,78%);gap:1.5rem;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.projects-carousel::-webkit-scrollbar{display:none}.projects-carousel-slide{scroll-snap-align:start;opacity:.72;transform:scale(.96) translateY(8px);transition:transform .42s ease,opacity .42s ease}.projects-carousel-slide.active{opacity:1;transform:scale(1) translateY(0)}.projects-carousel .project-card{height:100%;min-height:100%}.projects-carousel-slide.active .project-card{animation:projectReveal .7s ease}.projects-carousel-dots{display:flex;justify-content:center;gap:.55rem;margin-top:1.2rem}.carousel-dot{width:.7rem;height:.7rem;border-radius:999px;border:none;background:#1018282e;transition:transform var(--transition-fast),background var(--transition-fast),width var(--transition-fast)}.carousel-dot.active{width:1.6rem;background:var(--accent)}.carousel-dot:hover{transform:scale(1.1)}@keyframes projectReveal{0%{opacity:.78;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.project-card{background:linear-gradient(180deg,#ffffffd1,#f4ecdfeb);border-radius:16px;overflow:hidden;border:1px solid rgba(16,24,40,.08);transition:all var(--transition-medium);display:flex;flex-direction:column;justify-content:space-between;padding:2rem;box-shadow:inset 0 1px #ffffff80}.project-card:hover{transform:translateY(-8px);border-color:#9a341238;box-shadow:0 10px 40px #1018281f}.project-content h3{font-size:1.5rem;margin-bottom:.5rem;color:var(--text-primary)}.project-content p{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.95rem}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-tag{background:#9a341214;color:var(--accent);font-size:.75rem;padding:.25rem .75rem;border-radius:20px;font-weight:500}.project-links{display:flex;gap:1rem}.btn-link{font-size:.9rem;font-weight:600;color:var(--text-primary);border-bottom:1px solid transparent}.btn-link:hover{color:var(--accent);border-bottom-color:var(--accent)}.footer{text-align:center;padding:4rem 0;margin-top:4rem;border-top:1px solid rgba(16,24,40,.08);color:var(--text-secondary);font-size:.9rem}.footer-note{margin-top:.45rem;font-size:.82rem;color:#475467d1}.about-card{background:linear-gradient(180deg,#fffc,#f4ecdfeb);padding:3rem;border-radius:16px;max-width:800px;margin:0 auto;text-align:center;border:1px solid rgba(16,24,40,.08);font-size:1.1rem;line-height:1.8;color:var(--text-secondary);box-shadow:0 10px 30px #10182814}.about-card strong{color:var(--accent);font-weight:600}.contact-container{text-align:center;max-width:600px;margin:0 auto}.contact-text{color:var(--text-secondary);font-size:1.2rem;margin-bottom:2.5rem}.contact-info a{color:var(--accent)}a:focus-visible,button:focus-visible,.btn:focus-visible,.nav-btn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:8px}.contact-links{display:flex;justify-content:center;gap:1.5rem}@keyframes hoverGlow{0%,to{transform:translate(-8%,-8%) scale(.95);opacity:.55}50%{transform:translate(16%,14%) scale(1.1);opacity:.85}}@keyframes floatWindow{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes floatCardA{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-11px) rotate(2deg)}}@keyframes floatCardB{0%,to{transform:translateY(0) rotate(2deg)}50%{transform:translateY(8px) rotate(-1deg)}}@keyframes floatCardC{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes codePulse{0%,to{opacity:.85}50%{opacity:.4}}.experience-card{background:linear-gradient(180deg,#ffffffd1,#f4ecdfeb);padding:2.5rem;border-radius:16px;max-width:900px;margin:0 auto;border:1px solid rgba(16,24,40,.08);box-shadow:0 10px 30px #10182814}.exp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:1rem}.exp-header h3{font-size:1.5rem;color:var(--text-primary)}.exp-header .company{color:var(--accent);font-weight:700;font-size:1.2rem}.exp-header .duration{color:var(--text-secondary);font-size:.9rem;background:#9a341214;padding:.25rem .75rem;border-radius:20px}.exp-description{list-style:disc;padding-left:1.5rem;color:var(--text-secondary);font-size:1.05rem;line-height:1.8}.exp-description li{margin-bottom:.5rem}.exp-description strong{color:var(--accent)}.about-list{list-style:disc;padding-left:1.5rem;color:var(--text-secondary)}.about-list li{margin-bottom:.5rem}.mobile-menu-btn{display:none}@media(max-width:768px){:root{--nav-height: 60px}.container{padding:0 1.5rem;overflow-x:hidden}.navbar{padding:0;height:var(--nav-height)}.nav-content{flex-direction:row;justify-content:space-between;height:100%}.mobile-menu-btn{display:block;background:none;border:none;cursor:pointer;z-index:1001;padding:10px}.hamburger{display:block;width:25px;height:2px;background:var(--text-primary);position:relative;transition:all .3s ease-in-out}.hamburger:before,.hamburger:after{content:"";position:absolute;width:25px;height:2px;background:var(--text-primary);transition:all .3s ease-in-out;left:0}.hamburger:before{top:-8px}.hamburger:after{top:8px}.hamburger.open{background:transparent}.hamburger.open:before{transform:rotate(45deg);top:0}.hamburger.open:after{transform:rotate(-45deg);top:0}.nav-links{position:fixed;top:0;left:0;width:100%;height:100vh;background:#f8f3eafa;flex-direction:column;justify-content:center;align-items:center;gap:2rem;transform:translate(100%);transition:transform .3s ease-in-out;z-index:1000}.nav-links.active{transform:translate(0)}.nav-btn{font-size:1.5rem;padding:1rem}.hero{grid-template-columns:1fr;gap:2rem;padding:7rem 0 3rem}.hero:before{width:280px;height:280px;right:-18%;top:4%}.hero-left{text-align:left}.hero h1{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}.hero-intro{font-size:.98rem}.hero-cta{flex-direction:column;align-items:stretch}.hero-cta .btn{width:100%;text-align:center}.hero-right{min-height:390px;margin-top:.6rem}.hero-window{width:100%;max-width:420px}.floating-card{min-width:150px;padding:.75rem .85rem}.analytics-card{left:-1%;top:2%}.ship-card{right:-1%;bottom:10%}.design-card{left:2%;bottom:-6%}.footer{padding:3rem 1.5rem;font-size:.85rem;word-break:break-word}body{overflow-x:hidden}.projects-grid,.skills-grid{width:100%}.projects-carousel-controls{justify-content:center}.projects-carousel{grid-auto-columns:100%;gap:1rem}.projects-carousel-slide{opacity:.82}.section{padding:3rem 0}.section-title{font-size:2rem;margin-bottom:2rem}.about-card,.experience-card,.project-card{padding:1.5rem}.exp-header{flex-direction:column;align-items:flex-start;gap:.5rem}.exp-header .duration{align-self:flex-start}.skills-grid{gap:1rem}.contact-links{flex-direction:column;width:100%;align-items:stretch;gap:1rem}.contact-links .btn{display:block;width:100%;margin-left:0;text-align:center}.contact-info{font-size:.95rem}}.fade-in-section{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out;will-change:opacity,visibility}.fade-in-section.is-visible{opacity:1;transform:none}.background-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-1;background:var(--bg-primary);overflow:hidden}.background-container:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:50px 50px;-webkit-mask-image:radial-gradient(circle at center,black 60%,transparent 100%);mask-image:radial-gradient(circle at center,black 60%,transparent 100%)}.background-container:after{content:"";position:absolute;width:1200px;height:1200px;background:radial-gradient(circle,rgba(52,211,153,.12) 0%,transparent 32%),radial-gradient(circle,rgba(245,158,11,.1) 18%,transparent 52%),radial-gradient(circle,rgba(167,243,208,.08) 35%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);filter:blur(80px);animation:pulse-glow 10s infinite ease-in-out alternate}@keyframes pulse-glow{0%{transform:translate(-50%,-50%) scale(.8);opacity:.5}to{transform:translate(-50%,-50%) scale(1.2);opacity:.8}}
