:root{--bg:#05070c;--bg-deep:#020308;--navy:#0a1424;--navy-mid:#122038;--ink:#e8eef8;--muted:#8fa0b8;--cyan:#3ad4e8;--cyan-dim:#1a8a9a;--gold:#c9a227;--gold-bright:#e6c65a;--charcoal:#1a1e26;--letter:#d4c4a8;--letter-ink:#1c1812;--letter-fold:#b8a888;--danger:#d45a5a;--radius-sm:4px;--font-display:"Archivo", "Segoe UI", sans-serif;--font-body:"Sora", "Segoe UI", sans-serif;--ease-out:cubic-bezier(.22, 1, .36, 1);--max:68rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{min-height:100vh;font-family:var(--font-body);color:var(--ink);background:radial-gradient(ellipse 80% 50% at 70% 10%, #12304873, transparent 55%), radial-gradient(ellipse 60% 40% at 10% 80%, #0a1e3259, transparent 50%), linear-gradient(180deg, var(--bg-deep) 0%, var(--bg) 40%, var(--navy) 100%);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;font-weight:400;line-height:1.6}#root{min-height:100vh}img{max-width:100%;display:block}a{color:var(--cyan);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--gold-bright)}button,input,textarea{font:inherit}:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.circuit-bg{pointer-events:none;z-index:0;opacity:.55;position:fixed;inset:0;overflow:hidden;-webkit-mask-image:radial-gradient(75% 70% at 55% 28%,#000 15%,#0000 78%);mask-image:radial-gradient(75% 70% at 55% 28%,#000 15%,#0000 78%)}.circuit-svg{width:100%;height:100%;display:block}.trace{fill:none;stroke:url(#traceGold);stroke-width:1.15px;stroke-linecap:round;stroke-linejoin:round;opacity:.45}.trace-pulse{fill:none;stroke:#e6c65a;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:14 220;opacity:.75;filter:drop-shadow(0 0 3px #e6c65a73);animation:9s linear infinite trace-run}.trace-pulse.delay-1{animation-delay:-1.4s}.trace-pulse.delay-2{animation-delay:-2.8s}.trace-pulse.delay-3{animation-delay:-4.2s}.trace-pulse.delay-4{animation-delay:-5.6s}.trace-pulse.delay-5{animation-delay:-7s}.node-group circle{opacity:.55;animation:4.5s ease-in-out infinite node-glow}.node-group circle:nth-child(odd){animation-delay:-1.5s}@keyframes trace-run{to{stroke-dashoffset:-234px}}@keyframes node-glow{0%,to{opacity:.35}50%{opacity:.85}}@media (prefers-reduced-motion:reduce){.trace-pulse,.node-group circle{animation:none}.trace-pulse{opacity:.35;stroke-dasharray:none}}.page{z-index:1;position:relative}.section{width:min(100% - 2.5rem, var(--max));margin-inline:auto;padding-block:4.5rem}.section-label{font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:.85rem;font-size:.75rem;font-weight:600;display:block}.section h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:0 0 1rem;font-size:clamp(1.75rem,3vw,2.35rem);font-weight:700}.section p{color:var(--muted);max-width:40rem;margin:0 0 1rem}.hero{place-items:center;min-height:100svh;padding:3rem 1.25rem 4rem;display:grid;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 62% 42%,#3ad4e814,#0000 35%),radial-gradient(circle at 55% 48%,#c9a2270f,#0000 40%);position:absolute;inset:0}.hero-inner{text-align:center;justify-items:center;gap:1.25rem;width:min(100%,36rem);display:grid;position:relative}.brand{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);text-shadow:0 0 40px #3ad4e826;margin:0;font-size:clamp(2.1rem,6vw,3.4rem);font-weight:700;line-height:1.05}.tagline{color:var(--muted);max-width:28rem;margin:0;font-size:clamp(.95rem,2vw,1.1rem)}.cta-row{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.5rem;display:flex}.btn{appearance:none;border-radius:var(--radius-sm);font-family:var(--font-display);letter-spacing:.04em;cursor:pointer;transition:transform .25s var(--ease-out), background .25s ease, border-color .25s ease, color .25s ease, box-shadow .25s ease;border:1px solid #0000;padding:.7rem 1.25rem;font-size:.9rem;font-weight:600}.btn:active{transform:translateY(1px)}.btn-primary{background:linear-gradient(135deg, var(--gold) 0%, #a8861a 100%);color:#120e06;box-shadow:0 0 24px #c9a22740}.btn-primary:hover{filter:brightness(1.06);box-shadow:0 0 32px #c9a22766}.btn-ghost{color:var(--cyan);background:0 0;border-color:#3ad4e859}.btn-ghost:hover{border-color:var(--cyan);background:#3ad4e814}.logo-stage{aspect-ratio:1;width:min(78vw,22rem);margin-bottom:.5rem;position:relative}.logo-glow{filter:blur(12px);background:radial-gradient(circle,#3ad4e838,#0000 65%);border-radius:50%;animation:4.5s ease-in-out infinite breathe;position:absolute;inset:8%}.logo-ring{border:1px solid #c9a22733;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 40px #00000080,0 0 50px #3ad4e814}.logo-img{object-fit:contain;z-index:1;filter:drop-shadow(0 0 18px #3ad4e833);border-radius:50%;width:100%;height:100%;position:relative}.logo-circuits{z-index:2;pointer-events:none;opacity:.85;mix-blend-mode:screen;position:absolute;inset:6%}.logo-circuits line{stroke:var(--gold-bright);stroke-width:1.2px;stroke-linecap:round;opacity:.55}.logo-circuits circle{fill:var(--gold-bright);opacity:.7}.circuit-pulse{stroke-dasharray:6 120;animation:3.8s linear infinite circuit-flow}@keyframes breathe{0%,to{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}@keyframes circuit-flow{to{stroke-dashoffset:-126px}}@media (prefers-reduced-motion:reduce){.logo-glow{opacity:.7;animation:none}.circuit-pulse{animation:none}}.circuit-rule{width:min(100% - 2.5rem, var(--max));background:linear-gradient(90deg,#0000,#c9a22726 15%,#c9a2278c 50%,#c9a22726 85%,#0000);height:1px;margin:0 auto;position:relative}.circuit-rule:after{content:"";background:var(--gold);border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 10px #c9a22799}.project-list{border-top:1px solid #c9a22733;gap:0;margin-top:2rem;display:grid}.project-list .project-row{opacity:.72;transition:opacity .45s var(--ease-out), transform .45s var(--ease-out), background .25s ease, padding-left .3s var(--ease-out);transform:translateY(6px)}.project-list.is-ready .project-row{opacity:1;transform:translateY(0)}.project-list.is-ready .project-row:first-child{transition-delay:20ms}.project-list.is-ready .project-row:nth-child(2){transition-delay:60ms}.project-list.is-ready .project-row:nth-child(3){transition-delay:.1s}.project-list.is-ready .project-row:nth-child(4){transition-delay:.14s}.project-list.is-ready .project-row:nth-child(5){transition-delay:.18s}.project-list.is-ready .project-row:nth-child(6){transition-delay:.22s}.project-list.is-ready .project-row:nth-child(n+7){transition-delay:.26s}@media (prefers-reduced-motion:reduce){.project-list .project-row,.project-list.is-ready .project-row{opacity:1;transition:none;transform:none}}.project-row{color:inherit;border-bottom:1px solid #c9a22733;grid-template-columns:1fr auto;align-items:center;gap:1rem 2rem;padding:1.75rem 0;text-decoration:none;display:grid}.project-row:hover{background:linear-gradient(90deg,#3ad4e80d,#0000 60%);padding-left:.5rem}.project-list.is-ready .project-row:hover{transition-delay:0s}.project-row h3{font-family:var(--font-display);color:var(--ink);margin:0 0 .35rem;font-size:1.35rem;font-weight:700}.project-row p{max-width:36rem;margin:0}.project-cta{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);white-space:nowrap;font-size:.8rem;font-weight:600}@media (width<=640px){.project-row{grid-template-columns:1fr}}.contact-stage{perspective:1400px;place-items:center;min-height:32rem;display:grid;position:relative;overflow:hidden}.letter-shell{width:min(100%,28rem);transform-style:preserve-3d;z-index:2;position:relative}.envelope{z-index:2;cursor:pointer;text-align:center;width:min(100%,22rem);animation:envelope-in .55s var(--ease-out);background:linear-gradient(160deg,#2a241c 0%,#1a1612 100%);border:1px solid #c9a22759;border-radius:2px;padding:1.5rem 1.25rem;position:relative;box-shadow:0 20px 50px #00000073,inset 0 1px #ffffff0a}@keyframes envelope-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}.envelope-seal{background:radial-gradient(circle at 35% 30%, #e6c65a, var(--gold) 45%, #7a5c12);width:3rem;height:3rem;font-family:var(--font-display);color:#1a1408;border-radius:50%;place-items:center;margin:0 auto 1rem;font-size:.85rem;font-weight:700;display:grid;box-shadow:0 0 16px #c9a22759}.envelope p{color:var(--letter);max-width:none;margin:0}.envelope-hint{font-size:.85rem;color:var(--gold)!important;margin-top:.75rem!important}.letter{background:linear-gradient(180deg, #e8dcc4 0%, var(--letter) 40%, #cbb896 100%);color:var(--letter-ink);transform-origin:50%;transform-style:preserve-3d;will-change:transform, width, height, opacity;border-radius:2px;padding:1.5rem 1.35rem 1.25rem;position:relative;overflow:visible;box-shadow:0 24px 60px #00000080}.letter.is-packing{overflow:hidden}.letter.is-packing .letter-form{pointer-events:none}.letter-fold{pointer-events:none;z-index:3;backface-visibility:hidden;transform-style:preserve-3d;position:absolute;left:0;right:0}.letter-fold-top{background:linear-gradient(180deg, #e4d6b6 0%, #d9c9a8 40%, var(--letter-fold) 100%);transform-origin:top;border-bottom:1px solid #3c2d1438;height:52%;top:0;box-shadow:0 10px 18px #281e0a2e}.letter-fold-bottom{background:linear-gradient(0deg, #c4b28e 0%, var(--letter-fold) 55%, #d2c29e 100%);transform-origin:bottom;border-top:1px solid #3c2d1438;height:52%;bottom:0;box-shadow:0 -10px 18px #281e0a2e}.letter-fold-crease{pointer-events:none;z-index:2;background:#503c1e33;height:1px;position:absolute;left:8%;right:8%}.letter-fold-crease-mid{top:50%}.letter-form{z-index:1;gap:.85rem;display:grid;position:relative}.letter label{letter-spacing:.04em;text-transform:uppercase;color:#4a3c28;gap:.35rem;font-size:.8rem;font-weight:600;display:grid}.letter input,.letter textarea{width:100%;color:var(--letter-ink);resize:vertical;background:#fffcf5a6;border:1px solid #3c2d1440;border-radius:2px;padding:.65rem .75rem}.letter textarea{min-height:7rem}.letter .btn-send{color:var(--letter);background:#2a2114;border:1px solid #c9a22780;justify-self:start}.letter .btn-send:hover:not(:disabled){background:#3a2e1a}.letter .btn-send:disabled{opacity:.55;cursor:wait}.hp{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-status{max-width:none;min-height:1.25rem;margin:0;font-size:.9rem}.form-status.error{color:var(--danger)}.form-status.ok{color:#2d5a2d}.contact-success{z-index:4;text-align:center;color:var(--cyan);font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;pointer-events:none;animation:envelope-in .4s var(--ease-out);margin:0;font-size:.8rem;position:absolute;top:1rem;left:50%;transform:translate(-50%)}.courier{z-index:6;pointer-events:none;opacity:0;will-change:transform, opacity;width:200px;height:160px;position:absolute;top:0;left:0}.courier-svg{width:100%;height:100%;display:block;overflow:visible}.courier-packet{z-index:7;opacity:0;pointer-events:none;will-change:transform, opacity;background:linear-gradient(145deg,#efe4cc 0%,#d4c4a8 55%,#b8a888 100%);border:1px solid #5a461e73;border-radius:2px;width:44px;height:28px;position:absolute;top:0;left:0;box-shadow:0 4px 10px #00000059,inset 0 0 0 1px #ffffff26}.courier-packet:after{content:"";background:radial-gradient(circle at 35% 30%,#e6c65a,#c9a227 60%,#7a5c12);border-radius:50%;position:absolute;inset:28% 34%;box-shadow:0 0 6px #c9a22773}.site-footer{text-align:center;color:var(--muted);letter-spacing:.06em;padding:2.5rem 1.25rem 3rem;font-size:.8rem}.site-footer p{max-width:none;margin:0 auto}
