:root{--amber: #e9b263;--steel: #7d8aa8;--cream: #efebe4;--charcoal: #141311;--bg: #f5f3ee;--surface: #fbfaf7;--text: #1a1917;--text-soft: rgb(26 25 23 / .7);--text-muted: rgb(26 25 23 / .46);--line: rgb(26 25 23 / .1);--line-strong: rgb(26 25 23 / .22);--accent: #e0a24c;--header-bg: rgb(245 243 238 / .72);--header-bg-solid: rgb(245 243 238 / .97);--panel-bg: rgb(251 250 247 / .7);--panel-bg-hover: rgb(255 255 255 / .92);--ghost-bg: rgb(245 243 238 / .75);--robot-fill: rgb(26 25 23 / .03);--glitch-blend: multiply;--glow: rgb(224 162 76 / .12);--font-sans: "Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--gutter: clamp(1.25rem, 4vw, 3rem);--max: 1240px;--radius: 8px;--ease: cubic-bezier(.22, 1, .36, 1);color-scheme:light}[data-theme=dark]{--bg: var(--charcoal);--surface: #1b1a17;--text: var(--cream);--text-soft: rgb(239 235 228 / .68);--text-muted: rgb(239 235 228 / .42);--line: rgb(239 235 228 / .1);--line-strong: rgb(239 235 228 / .22);--accent: var(--amber);--header-bg: rgb(20 19 17 / .6);--header-bg-solid: rgb(20 19 17 / .97);--panel-bg: rgb(20 19 17 / .55);--panel-bg-hover: rgb(27 26 23 / .9);--ghost-bg: rgb(20 19 17 / .75);--robot-fill: rgb(239 235 228 / .04);--glitch-blend: screen;--glow: rgb(233 178 99 / .09);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{min-height:100vh;font-family:var(--font-sans);font-size:1rem;line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:inherit}em{font-style:normal;color:var(--text-muted)}.accent{color:var(--accent)}::selection{background:var(--accent);color:var(--charcoal)}:focus-visible{outline:1px solid var(--accent);outline-offset:4px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.label{display:inline-flex;align-items:center;gap:.65rem;font-family:var(--font-mono);font-size:.82rem;font-weight:400;color:var(--text-soft)}.label:before{content:"";width:6px;height:6px;border-radius:1.5px;background:var(--accent)}.label__index{color:var(--text-muted)}[data-spotlight]{position:relative;isolation:isolate}[data-spotlight]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;border-radius:inherit;background:radial-gradient(320px circle at var(--spot-x, 50%) var(--spot-y, 50%),var(--glow),transparent 70%);opacity:0;transition:opacity .4s ease}[data-spotlight]:hover:after{opacity:1}.arrow{display:inline-block;font-family:var(--font-mono);transition:transform .4s var(--ease)}a:hover>.arrow{transform:translate(4px)}.field{position:fixed;top:0;left:0;width:100%;height:100vh;height:100lvh;z-index:-1;background:radial-gradient(70% 30% at 50% 55%,rgb(233 178 99 / .05),transparent 70%),radial-gradient(40% 35% at 80% 15%,rgb(233 178 99 / .07),transparent 70%),var(--bg)}.field__canvas{width:100%;height:100%;display:block;opacity:0;transition:opacity 1.6s ease}.field__canvas.is-ready{opacity:1}.header{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;height:4rem;padding:0 var(--gutter);border-bottom:1px solid var(--line);background:var(--header-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.brand{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;font-weight:500;font-size:.95rem;letter-spacing:-.01em}.brand__logo{height:15px;width:auto;color:var(--text)}.nav{display:flex;align-items:center;gap:.25rem;font-size:.92rem;font-weight:500}.nav a{padding:.5rem .8rem;border-radius:var(--radius);text-decoration:none;color:var(--text-soft);transition:color .2s ease,border-color .2s ease}.nav a:hover{color:var(--text)}.nav .nav__cta{color:var(--text);border:1px solid var(--line-strong)}.nav .nav__cta:hover{border-color:var(--accent)}.theme-toggle{display:grid;place-items:center;width:2.25rem;height:2.25rem;margin-left:.25rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:transparent;color:var(--text-soft);cursor:pointer;transition:color .2s ease,border-color .2s ease}.theme-toggle:hover{color:var(--text);border-color:var(--accent)}.page{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;gap:clamp(1.5rem,4vh,2.5rem);padding:7rem 0 4rem}.hero__title{font-size:clamp(2.9rem,9.4vw,8.25rem);font-weight:500;line-height:.98;letter-spacing:-.04em}.hero__line{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}.hero__line-inner{display:block}.glitch{position:relative;display:inline-block}.glitch .visually-hidden{-webkit-user-select:none;user-select:none}.glitch__layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;mix-blend-mode:var(--glitch-blend)}.glitch__layer--a{color:var(--amber)}.glitch__layer--b{color:var(--steel)}.js .glitch__layer--a{animation:glitch-a 6.5s steps(1,end) 2.4s infinite}.js .glitch__layer--b{animation:glitch-b 6.5s steps(1,end) 2.4s infinite}.glitch:hover .glitch__layer--a{animation:glitch-a .9s steps(1,end) -.86s infinite}.glitch:hover .glitch__layer--b{animation:glitch-b .9s steps(1,end) -.86s infinite}.hero__line--code{font-family:var(--font-mono);font-weight:500;font-size:.86em;letter-spacing:-.06em;word-spacing:-.3em}.hero__mark{position:absolute;top:calc(4rem + 5vh);right:0;width:min(30vw,420px);aspect-ratio:347 / 165;pointer-events:none}@media (max-width: 900px),(max-height: 720px){.hero__mark{display:none}}.hero__footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2rem;margin-top:clamp(.5rem,3vh,2rem);padding-top:1.75rem;border-top:1px solid var(--line)}.hero__lede{font-size:clamp(1rem,1.4vw,1.15rem);color:var(--text-soft);text-shadow:0 0 14px var(--bg),0 0 4px var(--bg)}.hero__actions{display:flex;gap:.75rem}.js .hero__footer{animation:rise 1s var(--ease) both}.js .hero__line-inner{animation:unmask 1.1s var(--ease) both}.js .hero__line--code .hero__line-inner{animation:none}.js .glitch__char{animation:type 1ms linear both;animation-delay:calc(.3s + var(--i) * 95ms)}.js .hero__line:nth-child(2) .hero__line-inner{animation-delay:1.05s}.js .hero__footer{animation-delay:1.3s}.js .hero__cursor{animation:cursor 1.1s steps(1,end) 2s infinite}.button{display:inline-flex;align-items:center;gap:.6rem;padding:.8rem 1.25rem;border-radius:var(--radius);font-size:.95rem;font-weight:500;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease}.button--primary{background:var(--text);color:var(--bg)}.button--primary:hover{background:var(--accent);color:var(--charcoal)}.button--ghost{border:1px solid var(--line-strong);background:var(--ghost-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text)}.button--ghost:hover{border-color:var(--text)}.about{padding:clamp(5rem,12vh,9rem) 0;display:grid;gap:clamp(3rem,6vw,4.5rem)}.about__intro{display:grid;gap:1.5rem;max-width:60rem}.section-title{font-size:clamp(1.9rem,4vw,3.25rem);font-weight:500;line-height:1.1;letter-spacing:-.03em;text-wrap:balance}.principles{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.principle{overflow:hidden;display:flex;flex-direction:column;gap:.5rem;padding:1.75rem 1.5rem 2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel-bg);transition:background .3s ease}.principle:hover{background:var(--panel-bg-hover)}.principle__index{margin-bottom:3rem;font-family:var(--font-mono);font-size:.82rem;color:var(--text-muted);transition:color .3s ease}.principle:hover .principle__index{color:var(--accent)}.principle__title{font-size:1.1rem;font-weight:500;letter-spacing:-.02em}.principle__text{font-size:.95rem;color:var(--text-soft)}.contact{display:grid;grid-template-columns:1.4fr 1fr;align-items:end;gap:2.5rem 4rem;padding:clamp(2rem,5vw,4rem);border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(70% 120% at 100% 0%,rgb(233 178 99 / .07),transparent 60%),var(--surface)}.contact__intro{display:grid;justify-items:start;gap:1.5rem}.contact__title{font-size:clamp(2rem,4.5vw,3.75rem);font-weight:500;line-height:1.06;letter-spacing:-.035em;text-wrap:balance}.contact__links{display:grid;gap:1.25rem}.contact__email-row{display:flex;align-items:center;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--line-strong);transition:border-color .2s ease}.contact__email-row:has(.contact__email:hover){border-color:var(--accent)}.contact__email{flex:1;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:500;letter-spacing:-.02em;text-decoration:none}.copy-button{flex:none;padding:.35rem .6rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:transparent;color:var(--text-soft);font-family:var(--font-mono);font-size:.78rem;cursor:pointer;transition:color .2s ease,border-color .2s ease}.copy-button:hover{color:var(--text);border-color:var(--text)}.contact__social{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:.85rem;color:var(--text-soft);text-decoration:none;transition:color .2s ease}.contact__social:hover{color:var(--text)}.robot{position:absolute;top:clamp(1.25rem,3vw,2.25rem);right:clamp(1.25rem,3vw,2.25rem);width:clamp(3rem,5vw,4.25rem);height:auto;color:var(--text-soft);pointer-events:none}.robot__shell{fill:var(--robot-fill)}.robot__eye,.robot__led{fill:var(--accent)}.robot__eye--wink{transform-box:fill-box;transform-origin:center;animation:wink 6s infinite}.robot__led{animation:led 3.2s ease-in-out infinite}.robot__wave{transform-box:fill-box;transform-origin:50% 8%}.contact:hover .robot__wave{animation:wave 1.2s var(--ease) 2}.footer{max-width:var(--max);margin:0 auto;padding:clamp(4rem,10vw,7rem) var(--gutter) 2.5rem}.footer__mark{display:block;width:100%;height:auto;margin-bottom:2rem;color:var(--text);opacity:.06;-webkit-mask-image:linear-gradient(to bottom,#000 30%,transparent);mask-image:linear-gradient(to bottom,#000 30%,transparent)}.footer__meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;font-family:var(--font-mono);font-size:.8rem;color:var(--text-muted)}.js [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--i, 0) * 70ms)}.js [data-reveal].is-visible{opacity:1;transform:none}@keyframes glitch-a{0%{opacity:0;transform:none;clip-path:inset(0 0 0 0)}95%{opacity:.85;transform:translate(-.03em);clip-path:inset(12% 0 58% 0)}96%{opacity:.85;transform:translate(.025em);clip-path:inset(62% 0 10% 0)}97%{opacity:.85;transform:translate(-.015em);clip-path:inset(38% 0 36% 0)}98%{opacity:0;transform:none;clip-path:inset(0 0 0 0)}}@keyframes glitch-b{0%{opacity:0;transform:none;clip-path:inset(0 0 0 0)}95%{opacity:.85;transform:translate(.03em);clip-path:inset(55% 0 18% 0)}96%{opacity:.85;transform:translate(-.02em);clip-path:inset(8% 0 70% 0)}97%{opacity:.85;transform:translate(.02em);clip-path:inset(30% 0 45% 0)}98%{opacity:0;transform:none;clip-path:inset(0 0 0 0)}}@keyframes wink{0%,90%,97%,to{transform:scaleY(1)}93%,94%{transform:scaleY(.12)}}@keyframes led{50%{opacity:.35}}@keyframes wave{25%{transform:rotate(-30deg)}60%{transform:rotate(10deg)}}@keyframes type{0%{opacity:0}}@keyframes cursor{50%{opacity:0}}@keyframes unmask{0%{transform:translateY(105%)}}@keyframes rise{0%{opacity:0;transform:translateY(20px)}}@media (max-width: 760px){.contact{grid-template-columns:1fr}}@media (max-width: 640px){.header,.button--ghost{background:var(--header-bg-solid);backdrop-filter:none;-webkit-backdrop-filter:none}.principle__index{margin-bottom:1.25rem}.brand__name{display:none}.hero__actions{width:100%}.hero__actions .button{flex:1;justify-content:center}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}}
