@font-face{font-family:Fallens Display;src:url(../fakturozrout-assets/display-latin.woff2) format('woff2');font-weight:800;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF}
@font-face{font-family:Fallens Display;src:url(../fakturozrout-assets/display-latin-ext.woff2) format('woff2');font-weight:800;font-display:swap;unicode-range:U+0100-02FF,U+0300-036F,U+1E00-1EFF}
:root{color-scheme:dark;--bg:#000;--surface:#0b0b0b;--card:#131313;--line:#2a2a2a;--green:#39ff14;--muted:#b0b0b0;--display:'Fallens Display',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:#f4f6f1;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--green);outline-offset:6px}a:hover{color:var(--green)}::selection{background:var(--green);color:#000}.wrap{max-width:1440px;padding-inline:64px;margin-inline:auto}.skip{position:absolute;top:-80px;left:20px;background:var(--green);color:#000;padding:12px;z-index:10}.skip:focus{top:10px}.header{display:flex;align-items:center;justify-content:space-between;min-height:116px;gap:24px}.brand{display:flex;align-items:center;gap:14px;font-size:23px;font-weight:900;line-height:1.15;letter-spacing:1px}.brand img{border-radius:50%;object-fit:contain}.brand small{display:block;color:var(--muted);font:9px/2.4 monospace;letter-spacing:1.1px}.header nav{white-space:nowrap;display:flex;gap:36px;font-size:13px}.header nav a:last-child{color:var(--green)}.hero{padding-top:46px}.hero-top,.flight-head,.flight-footer{display:flex;justify-content:space-between;gap:16px}.eyebrow,.coordinate,.flight-head,.flight-footer,.tool-no,.console-header,.unit-label,.range-notes,.energy-result>span,.notes-grid article>span{font:11px/1.6 monospace;letter-spacing:1.3px}.eyebrow{margin:0;color:var(--green)}.coordinate{color:#828a7f}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);vertical-align:middle;margin-right:8px;box-shadow:0 0 14px #39ff1477}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:800;letter-spacing:-.065em;line-height:.98}h1{font-size:clamp(70px,9.7vw,140px);margin:38px 0 32px}h1 span{color:var(--green)}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px}.hero-bottom p{font-size:18px;line-height:1.55;color:var(--muted);margin:0}.hero-bottom strong{color:white;font-weight:400}.button{display:inline-flex;align-items:center;gap:26px;background:var(--green);color:#071005;padding:15px 23px;border:1px solid var(--green);min-height:76px;transition:background .2s,transform .2s}.button:hover{color:#000;background:#b0ff9f;transform:translateY(-3px)}.button small{display:block;font:9px/1.5 monospace;letter-spacing:1px}.button span:nth-child(2){font-size:22px;font-weight:700;line-height:1.3}.play-symbol{font-size:25px}.flight{position:relative;margin-top:54px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.flight-head{color:#a0aa9a;padding-top:18px}.flight-head span:last-child{color:#7f8b78}.flight-svg{display:block;width:100%;height:auto;min-height:150px;overflow:visible}.graph-grid path{stroke:#20251e;stroke-width:1;fill:none}.trajectory{fill:none;stroke:url(#trail);stroke-width:3}.trajectory-shadow{fill:none;stroke:#39ff14;stroke-width:12;opacity:.07}.bb{filter:drop-shadow(0 0 8px #39ff14)}.plot-label{fill:#aabca1;font:10px monospace;letter-spacing:2px}.flight-footer{color:#889481;padding:4px 0 18px}.ticker{display:flex;justify-content:space-around;gap:30px;padding:27px 24px;margin-top:45px;background:var(--green);color:#061003;flex-wrap:wrap;font:800 13px/1.2 var(--display);letter-spacing:1px}.toolkit{padding-block:104px 110px}.section-heading{display:grid;grid-template-columns:1fr 1.5fr;gap:25px}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2,.lab h2,.notes-heading h2{font-size:clamp(44px,4.8vw,68px);margin-bottom:54px}.section-heading h2 span,.lab h2 span,.notes-heading h2 span{color:#7f897a}.section-heading>p:last-child{justify-self:end;align-self:center;color:var(--muted);max-width:330px}.tool-row{display:grid;grid-template-columns:.4fr 1.3fr 1.6fr .25fr;gap:30px;align-items:center;padding-block:32px;border-top:1px solid var(--line)}.tool-no{color:var(--green)}.tool-row h3{font:800 clamp(24px,2.4vw,34px)/1.2 var(--display);letter-spacing:-1.2px;margin:0}.tool-row p{color:var(--muted);font-size:14px;margin:0;max-width:440px}.tool-glyph{font-size:42px;color:var(--green);justify-self:end}.lab{background:var(--surface);border-block:1px solid var(--line)}.lab-layout{padding-block:100px;display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.lab-copy .eyebrow{margin-bottom:28px}.lab h2{margin-bottom:30px}.lab-copy>p:not(.eyebrow){color:var(--muted);max-width:410px}.lab-copy .lab-note{font-size:14px;margin-top:26px}.text-link{font-size:13px;color:var(--green);display:inline-block;margin-top:8px;border-bottom:1px solid #39ff1455;padding-bottom:5px}.console{min-width:0;background:#080a07;border:1px solid #3c4837;box-shadow:0 16px 60px #0005}.console-header{display:flex;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--line);font-size:10px}.console-header>span:last-child{color:var(--green)}fieldset{border:0;margin:0;padding:30px 28px 0;min-width:0}legend{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.input-label{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;margin-bottom:16px}.input-label output{font:24px/1 monospace}.input-label output small{font-size:12px;color:var(--muted)}input[type=range]{width:100%;accent-color:var(--green);margin:0;cursor:pointer;min-height:30px}.range-notes{display:flex;justify-content:space-between;color:#899382;font-size:9px}.weight-label{margin-top:30px}.unit-label{font-size:9px;color:#899382}.weights{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.weights label{position:relative;cursor:pointer}.weights input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.weights span{display:block;text-align:center;font:14px monospace;padding:13px 4px;border:1px solid #36402f;background:#12160f}.weights input:checked+span{color:#081003;background:var(--green);border-color:var(--green)}.weights input:focus-visible+span{outline:2px solid #fff;outline-offset:3px}.weights input:disabled+span{cursor:default}.energy-result{border-top:1px solid var(--line);margin:30px 28px 0;padding-top:25px}.energy-result>span{color:#b7c1b0;font-size:9px}.energy-result output{display:block;font:800 clamp(60px,6vw,80px)/1.2 var(--display);letter-spacing:-4px;color:var(--green);margin:5px 0}.energy-result output small{font:24px monospace;letter-spacing:0}.energy-result p{color:#899382;font:12px monospace;margin-bottom:18px}.console-note{padding:0 28px 24px;color:#a2ac9b;font-size:11px;line-height:1.6;margin-bottom:0}.field-notes{padding-block:100px}.notes-heading{display:flex;justify-content:space-between;gap:32px;align-items:center;margin-top:28px}.notes-heading>p{color:var(--muted);font-size:14px}.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.notes-grid article{border-top:1px solid var(--line);padding-top:22px}.notes-grid article>span{color:var(--green);font-size:10px}.notes-grid h3{font-size:20px;letter-spacing:-.5px;margin:20px 0 12px}.notes-grid p{color:var(--muted);font-size:14px;max-width:320px}.download{padding-block:64px 80px;border-top:1px solid var(--line)}.download-brand{display:flex;align-items:center;gap:24px;margin-bottom:32px}.download-brand img{width:72px;height:72px;border-radius:50%}.download h2{font-size:clamp(45px,6.2vw,88px);margin-bottom:40px}.download h2 span{color:var(--green)}.download-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px}.download-bottom p{font-size:17px;margin:0}.download-bottom p span{color:var(--muted);font-size:12px}.footer{border-top:1px solid var(--line);padding-block:28px 34px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;font-size:12px}.footer>div{display:flex;gap:24px;flex-wrap:wrap}.footer>p{width:100%;font:10px monospace;color:#8d9886;margin:0}.footer>a{color:var(--green)}
@media(min-width:1600px){.wrap{padding-inline:80px}}
@media(max-width:1000px){.wrap{padding-inline:36px}.lab-layout{gap:45px}.tool-row{grid-template-columns:.35fr 1fr 1.4fr .2fr;gap:18px}.hero{padding-top:28px}.header{min-height:100px}.section-heading h2{font-size:52px}.notes-grid{gap:24px}}
@media(max-width:700px){.wrap{padding-inline:24px}.header{min-height:94px;gap:12px}.brand{font-size:19px;gap:9px}.brand img{width:38px;height:38px}.brand small{font-size:7px}.header nav{gap:15px;font-size:12px}.header nav a:first-child{display:none}.hero-top .coordinate{display:none}.eyebrow{font-size:9px;letter-spacing:1px}h1{font-size:clamp(50px,11.3vw,80px);margin:30px 0}.hero-bottom{align-items:flex-start;flex-direction:column;gap:28px}.hero-bottom p{font-size:16px}.button{gap:20px;padding:13px 20px;min-height:70px}.button span:nth-child(2){font-size:20px}.flight{margin-top:34px}.flight-head,.flight-footer{font-size:8px;letter-spacing:.4px}.flight-head span:last-child{max-width:100px;text-align:right}.flight-footer span:last-child{display:none}.flight-svg{min-height:120px}.ticker{margin-top:30px;padding-block:19px;gap:20px;font-size:10px}.ticker span:last-child{display:none}.toolkit{padding-block:65px}.section-heading{display:block}.section-heading .eyebrow{margin-bottom:22px}.section-heading h2,.lab h2,.notes-heading h2{font-size:44px;margin-bottom:24px}.section-heading>p:last-child{margin-bottom:36px}.tool-row{grid-template-columns:44px 1fr 28px;gap:12px;padding-block:25px}.tool-row h3{font-size:27px}.tool-row p{grid-column:2/4;font-size:13px}.tool-row p{grid-row:2}.tool-row .tool-glyph{grid-column:3;grid-row:1;font-size:28px}.lab-layout{grid-template-columns:1fr;padding-block:64px;gap:35px}.lab-copy>p:not(.eyebrow){font-size:14px}.console{max-width:460px;width:100%;justify-self:center}.field-notes{padding-block:64px}.notes-heading{display:block}.notes-heading>p{margin-bottom:32px}.notes-grid{grid-template-columns:1fr;gap:15px}.notes-grid article{padding-top:20px}.notes-grid h3{margin-top:13px}.notes-grid p{max-width:none}.download{padding-block:45px 55px}.download-brand{gap:15px}.download-brand img{width:60px;height:60px}.download h2{font-size:clamp(33px,7.7vw,53px);line-height:1.06;letter-spacing:-.06em}.download-bottom{flex-direction:column;align-items:flex-start;gap:25px}.footer{gap:20px;font-size:11px}.footer>div{gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.app-gallery{display:grid;grid-template-columns:1.05fr .9fr .9fr;gap:36px;align-items:center;padding-bottom:110px}.app-gallery h2{font-size:clamp(34px,3.3vw,48px);margin:26px 0}.app-gallery h2 span{color:#7f897a}.gallery-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:300px}.gallery-copy .gallery-note{font-size:11px!important;margin-top:28px}.app-gallery figure{margin:0;min-width:0}.app-gallery figure:last-child{padding-top:75px}.app-gallery img{display:block;width:100%;height:auto;border:1px solid #25331f}.app-gallery a{display:block}.app-gallery figcaption{font:9px/1.5 monospace;letter-spacing:1.1px;padding-top:16px;color:#a6b19e}.trajectory{stroke-dasharray:1600;stroke-dashoffset:0;animation:trace 1.8s ease-out both}@keyframes trace{from{stroke-dashoffset:1600}to{stroke-dashoffset:0}}
@media(max-width:900px){.app-gallery{grid-template-columns:1fr 1fr;gap:24px}.gallery-copy{grid-column:1/-1}.app-gallery h2{font-size:44px}.gallery-copy>p:not(.eyebrow){max-width:500px}.app-gallery figure:last-child{padding-top:0}}
@media(max-width:700px){.app-gallery{gap:16px;padding-bottom:65px}.app-gallery h2{font-size:40px}.app-gallery figcaption{font-size:8px;letter-spacing:0}}
@media(prefers-reduced-motion:reduce){.trajectory{animation:none}}
/* Motion layer: flight instrumentation, depth, and scroll choreography. */
.reading-progress{position:fixed;inset:0 0 auto;height:2px;background:var(--green);z-index:30;transform:scaleX(0);transform-origin:left;box-shadow:0 0 14px #39ff14}
.hero{position:relative;isolation:isolate}.hero::before{content:'';position:absolute;inset:30px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 80% 50%,#39ff140c,transparent 65%)}
.hero h1{animation:hero-arrive .95s cubic-bezier(.16,1,.3,1) both}.hero h1>span{display:inline-block;text-shadow:0 0 65px #39ff1429}.hero-bottom{animation:hero-arrive 1.2s cubic-bezier(.16,1,.3,1) both}
.flight{overflow:hidden;background:radial-gradient(ellipse at 75% 55%,#39ff140a,transparent 65%)}.flight-svg{position:relative;z-index:1}.trajectory{animation:none;stroke-dasharray:none;stroke-width:2;opacity:.5}.trajectory-shadow{stroke-width:18;opacity:.04}.shot-trail{fill:none;stroke:#9dff7e;stroke-width:3;stroke-linecap:round;stroke-dasharray:0 2000;filter:drop-shadow(0 0 6px #39ff14)}.flight-round{filter:drop-shadow(0 0 10px #39ff14)}.flight-head,.flight-footer{position:relative;z-index:2}.flight-head>span:last-child{min-width:140px;text-align:right}.scan-beam{position:absolute;inset:25px auto 110px 0;width:15%;pointer-events:none;background:linear-gradient(90deg,transparent,#39ff1408);border-right:1px solid #39ff1426;animation:scan-field 5s linear infinite}.impact{opacity:0;stroke:var(--green);fill:none}.has-impact .impact{opacity:1}.has-impact .impact-ring{animation:impact-wave .9s ease-out both;transform-box:fill-box;transform-origin:center}.flight-controls{display:flex;align-items:center;gap:28px;padding:22px 0;border-top:1px solid var(--line);position:relative;z-index:2}.flight-controls[hidden]{display:none}.fire-button{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:46px;padding:12px 20px;color:#061103;background:var(--green);border:1px solid var(--green);font:800 11px monospace;letter-spacing:1px;cursor:pointer;transition:box-shadow .2s,background .2s}.fire-button:hover{background:#b0ff9f;box-shadow:0 0 35px #39ff1433}.fire-button>span:first-child{font-size:22px;line-height:1}.hop-control{display:flex;align-items:center;gap:20px;font:9px monospace;letter-spacing:1px;color:#a8b89f;flex:1}.hop-control input{max-width:160px;min-width:70px}.motion-toggle{color:#c2cbbd;background:none;border:1px solid #3b4536;padding:10px 12px;font:10px monospace;cursor:pointer;min-height:42px}.motion-toggle:hover{border-color:var(--green);color:var(--green)}.motion-toggle:disabled{cursor:default;color:#899382}.visual-note{font:10px/1.6 monospace;color:#92a188;margin:0 0 16px}
.ticker{overflow:hidden;display:block;padding:25px 0;transform:rotate(-1deg);margin-inline:0}.ticker-track{display:flex;width:max-content;animation:ticker-travel 25s linear infinite}.ticker-track>div{display:flex;flex-shrink:0;align-items:center;gap:70px;padding-right:70px}.ticker span{white-space:nowrap}.tool-row{transition:background .35s,padding .35s}.tool-row:hover{background:#39ff1405;padding-inline:15px}.tool-glyph{transition:transform .4s cubic-bezier(.16,1,.3,1),text-shadow .3s}.tool-row:hover .tool-glyph{transform:rotate(-12deg) scale(1.2);text-shadow:0 0 22px #39ff14}.app-gallery figure{perspective:1000px}.app-gallery figure a{transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .3s ease-out,filter .4s;will-change:auto}.app-gallery figure a:hover{filter:drop-shadow(0 15px 30px #39ff1415)}.console{transition:box-shadow .5s,border-color .5s}.console:focus-within{box-shadow:0 0 50px #39ff1410;border-color:#39ff1466}.download{position:relative;isolation:isolate}.download::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 100%,#39ff1410,transparent 70%)}
.reveal{opacity:0;transform:translateY(36px);transition:opacity .8s ease var(--reveal-delay,0ms),transform 1s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms)}.reveal.is-revealed{opacity:1;transform:none}
@keyframes hero-arrive{from{opacity:0;transform:translateY(35px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes scan-field{from{left:-20%}to{left:110%}}
@keyframes impact-wave{from{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(7)}}
@keyframes ticker-travel{to{transform:translateX(-50%)}}
html[data-motion=paused] .ticker-track,html[data-motion=paused] .scan-beam{animation-play-state:paused}html[data-motion=paused] .reveal{opacity:1;transform:none;transition:none}html[data-motion=paused] .app-gallery figure a{transform:none}html[data-motion=paused] .impact-ring{animation:none}
@media(max-width:1000px){.flight-controls{gap:16px}.hop-control{gap:12px}.hop-control input{max-width:110px}}
@media(max-width:700px){.flight-controls{flex-wrap:wrap;gap:14px;padding-block:18px}.fire-button{flex:1;gap:12px;font-size:10px;padding-inline:14px}.motion-toggle{font-size:9px}.hop-control{order:3;flex-basis:100%;justify-content:space-between}.hop-control input{max-width:45%;width:45%}.flight-head>span:last-child{min-width:100px}.visual-note{font-size:9px;max-width:260px}.ticker-track>div{gap:38px;padding-right:38px}.ticker span:last-child{display:inline}.tool-row:hover{padding-inline:0}.scan-beam{bottom:180px}.reveal{transform:translateY(22px)}}
@media(max-width:360px){.header nav a:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.app-gallery figure a{transform:none!important}.scan-beam{display:none}.hero h1,.hero-bottom{animation:none}.ticker-track{animation:none}.impact-ring{animation:none}.tool-row:hover .tool-glyph{transform:none}}
.hero-orb{position:absolute;right:5%;top:190px;width:260px;height:260px;z-index:-1;pointer-events:none;opacity:.85}.orb-body{position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle at 32% 27%,#fff 0,#b4bbb1 4%,#51574e 12%,#1d231a 27%,#030502 60%,#182712 74%,#39ff1455 82%,#040903 85%);box-shadow:inset -6px -9px 24px #39ff1426,1px 2px 0 #6a945455,0 20px 60px #39ff1414;animation:orb-float 5s ease-in-out infinite}.orb-rings{position:absolute;inset:0;border:1px dashed #39ff1466;border-radius:50%;transform:rotateX(55deg) rotateZ(-30deg);animation:orb-orbit 18s linear infinite}.orb-rings::after{content:'';position:absolute;inset:18px;border:1px solid #39ff1422;border-radius:50%}.orb-rings::before{content:'';position:absolute;left:50%;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 16px var(--green)}.hero-orb>span{position:absolute;bottom:-15px;left:0;right:0;text-align:center;font:8px monospace;letter-spacing:3px;color:#859e77}.ticker{transform:none;clip-path:polygon(0 5%,100% 0,100% 95%,0 100%);padding-block:30px}
@keyframes orb-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes orb-orbit{to{transform:rotateX(55deg) rotateZ(330deg)}}
html[data-motion=paused] .hero-orb *,html[data-motion=paused] .hero-orb *::before,.hero[data-visible=false] .hero-orb *,.flight[data-visible=false] .scan-beam,.ticker[data-visible=false] .ticker-track{animation-play-state:paused}
@media(max-width:1100px){.hero-orb{width:210px;height:210px;right:4%;top:110px;opacity:.9}}
@media(max-width:700px){.hero-orb{display:none}}
@media(prefers-reduced-motion:reduce){.hero-orb *{animation:none}}

@media(max-width:360px){.fire-button{gap:8px;padding-inline:10px;font-size:9px;white-space:nowrap}.fire-button>span:last-child{display:none}.motion-toggle{padding-inline:9px}}
/* Lower-page motion: scanner gallery, energy spectrum, and final target lock. */
.app-gallery figure{--float-direction:1}.app-gallery figure:last-child{--float-direction:-1}.app-gallery figure a{position:relative;isolation:isolate;transform:translateY(calc(var(--gallery-drift,0px) * var(--float-direction))) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .4s ease-out,filter .4s}.app-gallery figure a::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:2;border:1px solid #39ff1422;background:linear-gradient(var(--green),var(--green)) left top/18px 2px no-repeat,linear-gradient(var(--green),var(--green)) left top/2px 18px no-repeat,linear-gradient(var(--green),var(--green)) right bottom/18px 2px no-repeat,linear-gradient(var(--green),var(--green)) right bottom/2px 18px no-repeat}.app-gallery figure a::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(180deg,transparent 0%,transparent 44%,#39ff1408 49%,#9dff7e55 50%,transparent 50.3%,transparent 100%);background-size:100% 240%;animation:gallery-scan 6s ease-in-out infinite;opacity:.65}.app-gallery figure:last-child a::after{animation-delay:-3s}
@keyframes gallery-scan{0%,15%{background-position:0 130%;opacity:0}25%{opacity:.7}75%{opacity:.7}90%,100%{background-position:0 -30%;opacity:0}}
.energy-spectrum{margin:28px 28px 0;border-top:1px solid #273121;padding-top:17px}.spectrum-heading{display:flex;justify-content:space-between;gap:10px;font:8px/1.6 monospace;letter-spacing:.6px;color:#91a186}.spectrum-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;height:115px;padding:14px 0 22px;background:repeating-linear-gradient(to top,transparent 0,transparent 23px,#39ff140a 24px,transparent 25px)}.spectrum-bars>div{position:relative;isolation:isolate;min-width:0;border-bottom:1px solid #394a2f}.spectrum-bars small{position:absolute;top:calc(100% + 7px);left:0;right:0;text-align:center;font:9px monospace;color:#899d7c;white-space:nowrap}.spectrum-bar{position:absolute;inset:0 18%;transform:scaleY(var(--bar-level));transform-origin:bottom;background:linear-gradient(to top,#39ff1426,#67a64a);transition:transform .65s cubic-bezier(.16,1,.3,1),background .3s,box-shadow .3s}.spectrum-bars [data-selected=true] .spectrum-bar{background:linear-gradient(to top,#39ff1455,#39ff14);box-shadow:0 0 18px #39ff1433}.spectrum-bars [data-selected=true] small{color:var(--green)}.energy-result{margin-top:18px}.energy-result output{transform-origin:left center}
.download{overflow:hidden}.download-reticle{position:absolute;width:290px;height:290px;right:3%;top:35px;z-index:-1;pointer-events:none;fill:none;stroke:var(--green);stroke-width:.7;opacity:.15;transition:opacity .6s,transform .8s}.reticle-orbit{transform-origin:120px 120px;animation:target-orbit 28s linear infinite}.reticle-lock{animation:target-breathe 4s ease-in-out infinite;transform-origin:120px 120px}.download:hover .download-reticle,.download:focus-within .download-reticle{opacity:.35;transform:rotate(-8deg)}.download .button{position:relative;overflow:hidden}.download .button::after{content:'';position:absolute;inset:-100% auto -100% -50%;width:30%;background:linear-gradient(90deg,transparent,#fff6,transparent);transform:skewX(-20deg);pointer-events:none}.download .button:hover::after,.download .button:focus-visible::after{animation:cta-glint .7s ease-out both}.footer-motion{font-size:9px;padding:5px 10px;min-height:32px}.footer-motion[hidden]{display:none}
@keyframes target-orbit{to{transform:rotate(360deg)}}@keyframes target-breathe{0%,100%{opacity:.5;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}@keyframes cta-glint{to{left:150%}}
.app-gallery[data-visible=false] figure a::after,.download[data-visible=false] .download-reticle *{animation-play-state:paused}html[data-motion=paused] .app-gallery figure a::after,html[data-motion=paused] .download-reticle *{animation-play-state:paused}html[data-motion=paused] .spectrum-bar{transition:none}html[data-motion=paused] .download .button::after{animation:none}
@media(max-width:700px){.app-gallery figure a{transform:translateY(calc(var(--gallery-drift,0px) * var(--float-direction) * .4))}.energy-spectrum{margin-inline:28px}.spectrum-heading{font-size:7px;letter-spacing:0}.spectrum-bars{gap:8px;height:105px}.spectrum-bars small{font-size:8px}.download-reticle{width:210px;height:210px;right:-50px;top:35px;opacity:.13}}
@media(prefers-reduced-motion:reduce){.app-gallery figure a{transform:none!important}.app-gallery figure a::after{display:none}.spectrum-bar{transition:none}.download-reticle *{animation:none}.download .button::after{animation:none!important}.download:hover .download-reticle,.download:focus-within .download-reticle{transform:none}}

/* Keep rotated decorative bounds inside the hero at tablet widths. */
.hero{overflow:clip}
