body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--bg:#f7f3ee;--bg-alt:#fff;--surface:#fffdf9;--border:#e7dfd5;--text:#1f1f1f;--text-muted:#5c5c5c;--primary:#bf5700;--primary-dark:#8a3f00;--accent:#333f48;--shadow:0 14px 32px #00000014;--shadow-soft:0 8px 20px #0000000f;--glow:0 18px 40px #bf57001f;--radius:14px;--font-body:"Source Sans 3",sans-serif;--font-display:"Libre Baskerville",serif}*{box-sizing:border-box;scroll-behavior:smooth}body{font-feature-settings:"liga" 1,"kern" 1;background-color:#f7f3ee;background-color:var(--bg);background-image:radial-gradient(circle at top right,#bf570014,#0000 55%),radial-gradient(circle at 10% 15%,#333f480f,#0000 50%),linear-gradient(180deg,#f9f5f0,#efe7df);color:#1f1f1f;color:var(--text);color-scheme:light;font-family:Source Sans\ 3,sans-serif;font-family:var(--font-body);line-height:1.7;margin:0;min-height:100vh;text-rendering:optimizeLegibility}body.theme-dark{--bg:#070a12;--bg-alt:#0b1220;--surface:#0b1220eb;--border:#e7dfd529;--text:#ffffffeb;--text-muted:#e9eef7b8;--primary:#ff7a1a;--primary-dark:#ff9a52;--accent:#ffffffdb;--shadow:0 18px 46px #00000073;--shadow-soft:0 10px 26px #00000059;--glow:0 18px 44px #ff7a1a29;background-image:radial-gradient(circle at 85% 10%,#ff7a1a29,#0000 55%),radial-gradient(circle at 10% 15%,#38bdf81f,#0000 55%),linear-gradient(180deg,#070a12,#05070e);color-scheme:dark}a{color:inherit}:focus-visible{border-radius:12px;outline:3px solid #bf570059;outline-offset:3px}body.theme-dark :focus-visible{outline:3px solid #ff7a1a61}header.hero{background:linear-gradient(120deg,#bf57001f,#333f4814),radial-gradient(circle at 15% 20%,#bf57002e,#0000 60%);border-bottom:1px solid #e7dfd5;border-bottom:1px solid var(--border);padding:100px 20px 86px}body.theme-dark header.hero{background:radial-gradient(circle at 18% 20%,#ff7a1a2e,#0000 60%),radial-gradient(circle at 75% 25%,#38bdf829,#0000 58%),linear-gradient(120deg,#ff7a1a14,#38bdf80f)}.hero-inner{margin:0 auto;max-width:1180px;padding:0 24px}.hero-kicker{color:#bf5700;color:var(--primary);font-size:.9rem;font-weight:700;letter-spacing:.16em;margin:0 0 10px;text-transform:uppercase}.hero-name{color:#1f1f1f;color:var(--text);font-family:Libre Baskerville,serif;font-family:var(--font-display);font-size:clamp(2.6rem,4vw,3.4rem);font-weight:700;letter-spacing:.6px;margin:0}.hero-about{color:#5c5c5c;color:var(--text-muted);font-size:1.05rem;margin:24px 0 0;max-width:700px;padding:0}.hero-about .quote{color:#333f48;color:var(--accent);font-style:italic;font-weight:600;margin-top:16px}.hero-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.chip{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff8c;border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:999px;box-shadow:0 8px 20px #0000000f;box-shadow:var(--shadow-soft);color:#1f1f1f;color:var(--text);display:inline-flex;font-size:.95rem;font-weight:650;gap:10px;padding:10px 12px}body.theme-dark .chip{background:#0b12208c}.chip-accent{background:linear-gradient(90deg,#bf570029,#333f4814);border-color:#bf570059}body.theme-dark .chip-accent{background:linear-gradient(90deg,#ff7a1a29,#38bdf814);border-color:#ff7a1a59}.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{align-items:center;border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:12px;display:inline-flex;font-weight:750;justify-content:center;letter-spacing:.2px;padding:12px 16px;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.btn:hover{box-shadow:0 18px 40px #bf57001f;box-shadow:var(--glow);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(90deg,#bf5700eb,#bf5700b8);border-color:#bf570059;color:#fff}body.theme-dark .btn-primary{background:linear-gradient(90deg,#ff7a1aeb,#ff7a1ab3);border-color:#ff7a1a59}.btn-ghost{background:#ffffff8c}body.theme-dark .btn-ghost{background:#0b12208c}.nav-shell{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f3eeb3;border-bottom:1px solid #e7dfd5;border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:50}body.theme-dark .nav-shell{background:#070a12b3}.scroll-progress{background:#0000000f;height:2px}body.theme-dark .scroll-progress{background:#ffffff14}.scroll-progress-bar{background:linear-gradient(90deg,#bf5700,#38bdf859);background:linear-gradient(90deg,var(--primary),#38bdf859);height:2px;transform-origin:0 50%}.nav{display:flex;gap:16px;justify-content:space-between;margin:0 auto;max-width:1180px;padding:12px 24px;position:relative}.nav,.nav-brand{align-items:center}.nav-brand{display:inline-flex;gap:12px;text-decoration:none}.nav-mark{background:linear-gradient(135deg,#bf5700f2,#333f48bf);border-radius:12px;box-shadow:0 8px 20px #0000000f;box-shadow:var(--shadow-soft);color:#fff;display:grid;font-weight:900;height:40px;letter-spacing:.5px;place-items:center;width:40px}body.theme-dark .nav-mark{background:linear-gradient(135deg,#ff7a1af2,#38bdf88c)}.nav-name{color:#1f1f1f;color:var(--text);font-weight:800;letter-spacing:.2px}.nav-links{align-items:center;display:flex;gap:10px}.nav-link{border-radius:10px;color:#5c5c5c;color:var(--text-muted);font-weight:750;padding:8px 10px;position:relative;text-decoration:none;transition:color .15s ease,background .15s ease}.nav-link:hover{background:#ffffff8c;color:#1f1f1f;color:var(--text)}body.theme-dark .nav-link:hover{background:#0b12208c}.nav-link.active{color:#1f1f1f;color:var(--text)}.nav-link.active:after{background:linear-gradient(90deg,#bf5700,#bf570040);background:linear-gradient(90deg,var(--primary),#bf570040);border-radius:999px;bottom:6px;content:"";height:2px;left:10px;position:absolute;right:10px}body.theme-dark .nav-link.active:after{background:linear-gradient(90deg,#bf5700,#38bdf840);background:linear-gradient(90deg,var(--primary),#38bdf840)}.theme-toggle{align-items:center;background:#ffffff8c;border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:12px;color:#1f1f1f;color:var(--text);cursor:pointer;display:inline-flex;font-weight:800;gap:10px;padding:9px 12px;transition:transform .15s ease,box-shadow .15s ease}body.theme-dark .theme-toggle{background:#0b12208c}.theme-toggle:hover{box-shadow:0 8px 20px #0000000f;box-shadow:var(--shadow-soft);transform:translateY(-1px)}.theme-label{font-size:.95rem}.nav-burger{background:#ffffff8c;border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:12px;cursor:pointer;display:none;height:44px;width:44px}body.theme-dark .nav-burger{background:#0b12208c}.nav-burger span{background:#1f1f1f;background:var(--text);border-radius:999px;display:block;height:2px;margin:4px auto;opacity:.85;width:18px}@media (max-width:860px){.nav-burger{display:inline-block}.nav-links,.nav-name{display:none}.nav-links{align-items:stretch;background:#f7f3eed9;border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:16px;box-shadow:0 14px 32px #00000014;box-shadow:var(--shadow);flex-direction:column;gap:8px;left:16px;padding:12px;position:absolute;right:16px;top:62px}body.theme-dark .nav-links{background:#070a12d9}.nav-links.open{display:flex}.nav-link{padding:12px}.theme-toggle{justify-content:center;padding:12px}}.container{margin:0 auto;max-width:1180px;padding:40px 24px 90px}section{margin-top:88px;scroll-margin-top:90px}.fade-in{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto}.fade-in{opacity:1;transform:none}.btn,.fade-in,.project-card,.work-entry{transition:none}}#about h2,#contact h2,#projects h2,#resume h2,#work h2{color:#333f48;color:var(--accent);font-family:Libre Baskerville,serif;font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.3rem);font-weight:700;letter-spacing:.8px;margin-bottom:24px;position:relative;text-align:left}.about-title{font-family:Libre Baskerville,serif;font-family:var(--font-display);font-size:clamp(2.4rem,4.2vw,3.2rem);letter-spacing:.6px;margin-bottom:18px}#about h2:after,#contact h2:after,#projects h2:after,#resume h2:after,#work h2:after{background:linear-gradient(90deg,#bf5700,#bf570033);background:linear-gradient(90deg,var(--primary),#bf570033);border-radius:999px;content:"";display:block;height:3px;margin-top:10px;width:52px}.about-container{align-items:center;display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between}.about-text{flex:1 1 360px;max-width:620px}.about-text p{font-size:1.08rem;margin-bottom:14px}.about-intro,.about-text p{color:#1f1f1f;color:var(--text)}.about-intro{border-bottom:2px solid #bf570040;font-size:1.12rem;letter-spacing:.2px;margin-bottom:16px;padding-bottom:10px}.about-actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 10px}.about-text .quote{color:#bf5700;color:var(--primary);font-size:1.05rem;font-style:italic;font-weight:600;margin-top:16px}.about-photo{aspect-ratio:1/1;background:#fffdf9;background:var(--surface);border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:50%;box-shadow:0 14px 32px #00000014;box-shadow:var(--shadow);flex:0 0 240px;max-width:240px;overflow:hidden}.about-photo img{display:block;height:100%;object-fit:cover;width:100%}.work-entry{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffdf9;background:var(--surface);border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);box-shadow:0 8px 20px #0000000f;box-shadow:var(--shadow-soft);display:flex;gap:24px;margin-bottom:24px;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.work-entry:hover{box-shadow:0 18px 40px #bf57001f;box-shadow:var(--glow);transform:translateY(-2px)}.company-logo{background-color:#fff;border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:12px;height:96px;object-fit:contain;padding:10px;width:96px}.work-info h3{color:#1f1f1f;color:var(--text);font-size:1.2rem;font-weight:700;letter-spacing:.2px;margin:0 0 8px}.work-info h4{color:#bf5700;color:var(--primary);font-weight:600;letter-spacing:.3px;margin:0 0 6px}.work-dates{color:#5c5c5c;color:var(--text-muted);font-size:.95rem;margin-bottom:12px}.company-name-link{color:inherit;text-decoration:none}.company-name-link:hover h3{color:#bf5700;color:var(--primary)}.project-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.project-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffdf9;background:var(--surface);border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);box-shadow:0 8px 20px #0000000f;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;height:100%;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.project-card:hover{box-shadow:0 18px 40px #bf57001f;box-shadow:var(--glow);transform:translateY(-3px)}.project-thumb-wrapper{align-items:center;display:flex;justify-content:center;min-height:190px}.project-thumb{border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:12px;height:180px;margin-bottom:14px;object-fit:cover;width:100%}.project-card h3{color:#1f1f1f;color:var(--text);font-weight:700;letter-spacing:.2px;margin:0 0 8px;min-height:2.6em}.tech-used{color:#bf5700;color:var(--primary);font-size:.95rem;font-weight:600;letter-spacing:1px;margin-bottom:10px;min-height:2.2em;text-transform:uppercase}.project-badges{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 12px}.badge{align-items:center;background:#ffffff8c;border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:999px;color:#1f1f1f;color:var(--text);display:inline-flex;font-size:.85rem;font-weight:750;letter-spacing:.2px;padding:6px 10px}body.theme-dark .badge{background:#0b12208c}.project-desc{flex:1 1}.project-links{margin-top:auto;padding-top:10px}.project-links a{color:#bf5700;color:var(--primary);font-weight:600;margin-right:12px;text-decoration:none;transition:color .2s ease}.project-links a:hover{color:#8a3f00;color:var(--primary-dark);text-decoration:underline}.resume-embed iframe{background:#fffdf9;background:var(--surface);border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);box-shadow:0 8px 20px #0000000f;box-shadow:var(--shadow-soft);margin-bottom:15px}.download-link a{background-color:#bf5700;background-color:var(--primary);border-radius:10px;color:#fff;display:inline-block;font-weight:600;padding:10px 18px;text-decoration:none;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}.download-link a:hover{background-color:#8a3f00;background-color:var(--primary-dark);box-shadow:0 18px 40px #bf57001f;box-shadow:var(--glow);transform:translateY(-1px)}#contact form{display:flex;flex-direction:column;gap:14px;margin:0 0 30px;max-width:520px}#contact input,#contact textarea{background-color:#fff;border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:10px;color:#1f1f1f;color:var(--text);font-family:Source Sans\ 3,sans-serif;font-family:var(--font-body);font-size:1rem;padding:12px 14px;transition:border-color .2s ease,box-shadow .2s ease}#contact input:focus,#contact textarea:focus{border-color:#bf5700;border-color:var(--primary);box-shadow:0 0 0 3px #bf570033;outline:none}#contact button{background-color:#bf5700;background-color:var(--primary);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 16px;transition:background-color .2s ease,transform .2s ease}#contact button:hover{background-color:#8a3f00;background-color:var(--primary-dark);transform:translateY(-1px)}.social-links{display:flex;gap:18px;margin-top:10px;text-align:left}.social-link{align-items:center;background:#fff9;border:1px solid #e7dfd5;border:1px solid var(--border);border-radius:16px;box-shadow:0 8px 20px #0000000f;box-shadow:var(--shadow-soft);color:#1f1f1f;color:var(--text);display:inline-flex;height:52px;justify-content:center;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;width:52px}body.theme-dark .social-link{background:#0b12208c}.social-link i{font-size:1.25rem}.social-link:hover{box-shadow:0 18px 40px #bf57001f;box-shadow:var(--glow);filter:saturate(1.15);transform:translateY(-2px)}.social-link.github{background:linear-gradient(135deg,#111827e6,#374151bf);border-color:#ffffff1f;color:#ffffffeb}.social-link.linkedin{background:linear-gradient(135deg,#2563ebeb,#3b82f6b3);border-color:#2563eb40;color:#fffffff2}.social-link.email{background:linear-gradient(135deg,#bf5700eb,#f59e0bbf);border-color:#bf570047;color:#fffffff2}@media (max-width:768px){header.hero{text-align:left}.about-container{align-items:flex-start;flex-direction:column}.about-photo{max-width:100%}.work-entry{align-items:flex-start;flex-direction:column}.company-logo{height:80px;width:80px}}
/*# sourceMappingURL=main.f71a80f7.css.map*/