:root{--bg: #0b0d12;--ink: #f4f1ea;--muted: #9a958c;--accent: #f5b942;--line: rgba(244, 241, 234, .12);--radius: 10px;--font-display: "Instrument Serif", serif;--font-body: "Outfit", sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font-body);color:var(--ink);background:var(--bg)}a{color:inherit;text-decoration:none}code{color:var(--accent);font-size:.9em}.app{min-height:100vh;position:relative;display:flex;flex-direction:column}.wash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 55% 40% at 50% -10%,rgba(245,185,66,.22),transparent 60%),radial-gradient(ellipse 40% 30% at 100% 60%,rgba(245,185,66,.06),transparent 50%),linear-gradient(180deg,#0b0d12,#12151c)}.top{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1.05rem 1.4rem;border-bottom:1px solid var(--line)}.brand{font-family:var(--font-display);font-size:1.55rem}nav{display:flex;gap:1rem;color:var(--muted);font-size:.9rem}nav a:hover{color:var(--accent)}.meta{color:var(--muted);font-size:.85rem}main{width:min(720px,100%);margin:0 auto;padding:2.5rem 1.2rem 3rem;flex:1}.foot{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem 1.4rem;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.kicker{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:600}h1{font-family:var(--font-display);font-weight:400;font-size:clamp(2.3rem,6vw,3.6rem);margin:.4rem 0 1rem;line-height:1.05}h3{margin:0 0 .35rem;font-size:1.05rem}.lede{color:var(--muted);max-width:34rem;line-height:1.55}.hint{color:var(--muted);font-size:.92rem;margin:-.4rem 0 1rem}.input{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--ink);font:inherit;font-size:1.25rem;padding:.85rem 0;outline:none}.input:focus{border-bottom-color:var(--accent)}.btn{background:var(--accent);color:#1a1408;border:0;border-radius:999px;padding:.85rem 1.3rem;font-weight:700;font:inherit;cursor:pointer}.btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}.cta-row{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.4rem}.err{color:#ff7a6a}.muted{color:var(--muted);margin-top:1rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;margin-top:2rem}@media(max-width:720px){.grid-3{grid-template-columns:1fr}}.card{border:1px solid var(--line);border-radius:var(--radius);padding:1rem;background:#ffffff05}.card p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.45}.review{list-style:none;padding:0;display:grid;gap:.75rem;margin:1.2rem 0}.review li{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line)}.review span{color:var(--muted)}.resume{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin:1.5rem 0 0;padding:.85rem 1rem;border:1px solid var(--line);border-radius:var(--radius);color:var(--muted)}.resume button{background:transparent;border:1px solid var(--accent);color:var(--accent);border-radius:999px;padding:.45rem .85rem;cursor:pointer;font:inherit}.progress{display:flex;gap:.4rem;margin-bottom:1.5rem}.progress span{flex:1;height:4px;border-radius:99px;background:#f4f1ea1f}.progress span.on{background:var(--accent)}.method{color:var(--muted);display:grid;gap:.55rem;margin:1.2rem 0 1.5rem;padding-left:1.1rem}.hero{padding-top:.5rem}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rise{animation:rise .48s ease both}
