:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#5d5544;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--paper:#f8f3e7;--paper-soft:#f1ead8;--paper-deep:#eae0cb;--ink:#37322a;--ink-soft:#5d5544;--ink-mute:#8a8071;--tea:#b07a4d;--tea-deep:#94613a;--tea-wash:#efe4d0;--line:#e5dcc7;--shadow-soft:0 24px 60px #78644612;background:#f8f3e7;font-family:Inter,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.7}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{min-height:100%;margin:0}body{color:#5d5544;background:radial-gradient(circle at 18% 10%,#efe2c933 0%,#0000 34%),radial-gradient(circle at 85% 90%,#ece2cc33 0%,#0000 30%),linear-gradient(170deg,#f9f4e9 0%,#f3ecdb 60%,#ede3cc 100%)}::selection{color:#37322a;background:#eaded0}.app{width:min(1120px,92vw);margin:0 auto;padding:96px 0 56px}main{gap:30px;display:grid}.petals{pointer-events:none;z-index:2;position:fixed;inset:0;overflow:hidden}.petal{top:-12vh;left:var(--left);width:var(--size);height:var(--size);background:radial-gradient(circle at 30% 30%, var(--petal-a) 0%, var(--petal-b) 100%);opacity:var(--opacity);animation:petal-fall var(--duration) linear var(--delay) infinite;will-change:transform;border-radius:62% 12%;position:absolute}@keyframes petal-fall{0%{transform:translate(0,0)rotate(0)}20%{transform:translate(3.5vw,24vh)rotate(120deg)}40%{transform:translate(-2.5vw,48vh)rotate(220deg)}60%{transform:translate(2.5vw,72vh)rotate(300deg)}80%{transform:translate(-1.5vw,96vh)rotate(360deg)}to{transform:translateY(120vh)rotate(420deg)}}@media (prefers-reduced-motion:reduce){.petal{opacity:0;animation:none}}.navbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:50;background:#f8f2e4d1;border:1px solid #e2d6bfb3;border-radius:999px;justify-content:space-between;align-items:center;width:min(1120px,92vw);padding:10px 26px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.brand{color:#37322a;letter-spacing:.16em;text-transform:uppercase;font-size:.95rem;font-weight:600;text-decoration:none;transition:color .4s}.brand:hover{color:#94613a}.nav-links{gap:28px;display:flex}.nav-links a{color:#857a66;font-size:.92rem;text-decoration:none;transition:color .4s}.nav-links a:hover{color:#94613a}section{box-shadow:var(--shadow-soft);background:linear-gradient(160deg,#fdf8eee6,#f8f2e5b3);border:1px solid #e5dcc799;border-radius:28px;padding:64px clamp(24px,6vw,72px)}.hero{isolation:isolate;flex-direction:column;justify-content:center;gap:12px;min-height:clamp(440px,74vh,640px);padding-top:clamp(30px,4vw,44px);padding-bottom:clamp(30px,4vw,44px);display:flex;position:relative;overflow:hidden}.hero:before{content:"";border-radius:inherit;z-index:0;background-image:linear-gradient(97deg,#f9f4e9fa 0%,#f9f4e9e0 38%,#f4ecdb99 64%,#eee3cd61 100%),url(/project-images/Vagabond.jpg),url(/project-images/MYPFP.jpg);background-position:0 0,70% 30%,86% 22%;background-size:cover;position:absolute;inset:0}.hero:after{content:"";border-radius:inherit;z-index:0;background:radial-gradient(circle at 74% 34%,#dfc6a438 0%,#dfc6a41a 28%,#0000 52%);position:absolute;inset:0}.hero>*{z-index:1;position:relative}.eyebrow{color:#a3723f;letter-spacing:.22em;text-transform:uppercase;margin:0;font-size:.82rem}.hero h1{letter-spacing:.01em;color:#332e26;max-width:880px;margin:0;font-family:Georgia,Iowan Old Style,Palatino Linotype,serif;font-size:clamp(1.8rem,4.6vw,3rem);font-weight:500;line-height:1.25}.highlight{color:#a3723f}.hero-copy{color:#625a48;max-width:620px;margin:0;font-size:1rem}.hero-buttons{flex-wrap:wrap;gap:12px;margin-top:10px;display:flex}.social-links{gap:12px;margin-top:14px;display:flex}.social-link{color:#8a7d68;background:#fcf7edbf;border:1px solid #e0d4bde6;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;transition:color .4s,border-color .4s,transform .4s;display:inline-flex}.social-link svg{fill:currentColor;width:19px;height:19px}.social-link:hover{color:#94613a;border-color:#c9a276;transform:translateY(-2px)}.btn{cursor:pointer;border:none;border-radius:999px;padding:11px 24px;font-weight:500;text-decoration:none;transition:background .4s,color .4s,border-color .4s,box-shadow .4s,transform .4s}.btn-primary{color:#faf5ea;background:linear-gradient(135deg,#bd7f4f,#9c6238);box-shadow:0 12px 28px #9c704438}.btn-secondary{color:#6e6553;background:#fcf7edbf;border:1px solid #d9ccb5e6}.btn:hover{transform:translateY(-1px)}.btn-primary:hover{box-shadow:0 16px 34px #9c70444d}.btn-secondary:hover{color:#94613a;border-color:#c9a276}.btn:disabled{opacity:.7;cursor:not-allowed;transform:none}h2{letter-spacing:.01em;color:#332e26;margin-top:0;margin-bottom:22px;font-family:Georgia,Iowan Old Style,Palatino Linotype,serif;font-size:clamp(1.5rem,3.4vw,2rem);font-weight:500}.about p{color:#625a48;margin:0}.about p+p{margin-top:16px}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.experience-list{gap:16px;display:grid}.experience-card{background:#fcf7edb8;border:1px solid #e5dcc7b3;border-radius:18px;padding:20px 22px}.experience-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.experience-head h3{margin:0;font-size:1.05rem;font-weight:600}.experience-head p{color:#8a8071;margin:0;font-size:.88rem}.experience-meta{color:#94613a;margin:8px 0 12px;font-weight:500}.experience-card ul{color:#5d5544;gap:8px;margin:0;padding-left:20px;display:grid}.skill-card{text-align:center;color:#5d5544;background:#fcf7edad;border:1px solid #e5dcc7cc;border-radius:14px;padding:13px;font-weight:500;transition:border-color .4s,color .4s}.skill-card:hover{color:#94613a;border-color:#d3b284}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;display:grid}.project-card{background:#fcf7edb8;border:1px solid #e5dcc7bf;border-radius:20px;flex-direction:column;padding:20px;transition:border-color .4s,box-shadow .4s;display:flex}.project-card:hover{border-color:#c9a276cc;box-shadow:0 18px 40px #7864461a}.project-card-link{color:inherit;text-decoration:none}.project-card-link h3{transition:color .4s}.project-card-link:hover h3{color:#94613a}.project-image{object-fit:cover;background:#ece2cc;border-radius:14px;width:100%;height:170px;margin-bottom:14px}.project-card h3{margin:0 0 10px}.project-card p{color:#625a48;margin:0 0 14px}.tech-stack{flex-wrap:wrap;gap:8px;display:flex}.tech-tag{color:#8a6543;background:#efe4d0;border-radius:999px;padding:5px 12px;font-size:.78rem}.project-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.project-actions .btn{padding:8px 16px;font-size:.88rem}.project-detail{max-width:820px;margin:0 auto}.project-back{color:#94613a;margin-bottom:20px;font-size:.92rem;text-decoration:none;transition:color .3s;display:inline-block}.project-back:hover{color:#7a4e2c}.project-detail-tagline{color:#8a8071;margin:0 0 12px;font-size:1.05rem}.project-detail-actions{flex-wrap:wrap;gap:10px;margin:18px 0 24px;display:flex}.project-detail h3{margin:28px 0 10px;font-size:1.1rem;font-weight:600}.project-detail-media{object-fit:cover;background:#ece2cc;border-radius:16px;width:100%;max-height:480px;margin-top:24px}.project-detail-copy{color:#625a48;margin:0}.project-detail-highlights{color:#5d5544;gap:8px;margin:0;padding-left:20px;display:grid}.project-pagination{border-top:1px solid #e5dcc7e6;flex-wrap:wrap;justify-content:space-between;gap:14px;margin-top:44px;padding-top:24px;display:flex}.project-page-link{color:#94613a;gap:2px;font-weight:500;text-decoration:none;transition:color .3s;display:grid}.project-page-link:hover{color:#7a4e2c}.project-page-link span{color:#37322a;font-size:.92rem;font-weight:400}form{gap:14px;max-width:620px;display:grid}.contact-status{margin:4px 0 0;font-size:.95rem}.contact-status-success{color:#6f8f63}.contact-status-error{color:#b06a52}input,textarea{color:#37322a;width:100%;font:inherit;background:#fdf8eebf;border:1px solid #e0d4bde6;border-radius:14px;padding:13px 16px;transition:border-color .4s,box-shadow .4s}input::placeholder,textarea::placeholder{color:#a49b88}input:focus,textarea:focus{border-color:#c9a276;outline:none;box-shadow:0 0 0 3px #c9a2762e}textarea{resize:vertical}@media (width<=760px){.navbar{border-radius:20px;flex-direction:column;align-items:flex-start;gap:8px;padding:12px 18px;top:10px}.app{padding-top:118px}section{padding:40px 20px}.hero:before{background-position:0 0,62%,74%}}
