:root{--fg:#1f2328;--muted:#59636e;--bg:#ffffff;--accent:#0b6e4f;--rule:#d1d9e0;--error:#cf222e}@media (prefers-color-scheme:dark){:root{--fg:#e6edf3;--muted:#9198a1;--bg:#0d1117;--accent:#3fb68b;--rule:#30363d;--error:#f85149}}body{margin:0 auto;max-width:42rem;padding:0 1rem 3rem;font:1.0625rem/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--fg);background:var(--bg)}header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0.5rem 1.5rem;padding:1.5rem 0 1rem;border-bottom:1px solid var(--rule);margin-bottom:2rem}header .logo{font-weight:700;font-size:1.25rem;color:var(--fg);text-decoration:none}nav a{margin-left:1rem;color:var(--muted);text-decoration:none}nav a:first-child{margin-left:0}nav a:hover{color:var(--accent)}a{color:var(--accent)}li{margin-bottom:0.5rem}form.contact{display:grid;gap:0.5rem;margin-top:1.5rem}form.contact label{display:grid;gap:0.375rem;font-weight:600}form.contact input,form.contact textarea{font:inherit;font-weight:400;color:var(--fg);background:var(--bg);border:1px solid var(--rule);border-radius:6px;padding:0.5rem 0.625rem}form.contact textarea{resize:vertical}form.contact input:focus,form.contact textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}form.contact [aria-invalid="true"],form.contact [aria-invalid="true"]:focus{border-color:var(--error);outline-color:var(--error)}form.contact :user-invalid{box-shadow:none}form.contact .error{height:1rem;margin-top:-0.125rem;font-size:0.75rem;line-height:1rem;font-weight:400;color:var(--error);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}form.contact button,button.cal{justify-self:start;font:inherit;font-weight:600;color:#ffffff;background:var(--accent);border:0;border-radius:6px;padding:0.625rem 1.5rem;cursor:pointer}form.contact button:hover,button.cal:hover{filter:brightness(1.1)}form.contact .hp{display:none}.gate{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:1rem}.gate p{flex-basis:100%;margin:0 0 0.25rem}.gate button{font:inherit;font-weight:600;color:var(--accent);background:transparent;border:1px solid var(--accent);border-radius:6px;padding:0.5rem 1.25rem;cursor:pointer}.gate button[aria-pressed="true"]{color:#ffffff;background:var(--accent)}h1{font-size:1.75rem;line-height:1.25;margin:0 0 1rem}