.language-picker{display:inline-flex;position:relative;align-items:center}
.language-picker select{min-width:112px;min-height:40px;padding:8px 32px 8px 13px;border:1px solid rgba(171,190,217,.24);border-radius:999px;color:#f0f3f9;background:#10141c;font-family:inherit;font-size:.82rem;font-weight:600;line-height:1.2;cursor:pointer}
.language-picker option{color:#f0f3f9;background:#10141c}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){
  .wrap{width:min(calc(100% - 36px),520px);max-width:520px}
  .nav{gap:8px}
  .nav{position:relative}
  .nav-toggle{display:inline-flex}
  .nav-links{display:none;position:absolute;top:calc(100% - 4px);right:0;z-index:20;width:min(290px,calc(100vw - 36px));min-width:0;align-items:stretch;gap:4px;padding:12px;border:1px solid rgba(171,190,217,.18);border-radius:16px;background:rgba(12,16,24,.98);box-shadow:0 18px 48px rgba(0,0,0,.42)}
  .nav-links.is-open{display:flex;flex-direction:column}
  .nav-links>a:not(.nav-contact){display:block;padding:11px 12px;border-radius:9px}
  .nav-links>a:not(.nav-contact):hover{background:rgba(255,255,255,.05)}
  .language-picker{padding:8px 10px}
  .nav-contact{display:block!important;margin-top:4px;text-align:center}
  .language-picker select{min-width:100px;min-height:38px;padding:7px 27px 7px 11px;font-size:.75rem}
  .nav-contact{padding:8px 10px;font-size:.72rem;white-space:nowrap}
  .app-grid{width:calc(100% - 12px);min-width:0;margin-inline:auto}
  .app-card{width:100%;max-width:430px;min-width:0;justify-self:center;box-sizing:border-box}
  .app-visual,.app-info,.app-description,.app-actions{max-width:100%;min-width:0}
  .app-description{overflow-wrap:anywhere}
}
@media(max-width:380px){
  .wrap{width:calc(100% - 28px)}
  .brand{gap:6px;font-size:.78rem}
  .brand-mark{width:30px;height:30px}
  .language-picker select{min-width:96px}
  .app-grid{width:calc(100% - 10px)}
}
.nav-toggle{display:none;align-items:center;gap:8px;min-height:40px;padding:8px 11px;border:1px solid rgba(171,190,217,.24);border-radius:12px;color:#f0f3f9;background:#10141c;font-family:inherit;font-size:.82rem;font-weight:600;line-height:1.1;cursor:pointer}
.nav-toggle:focus-visible,.nav-links a:focus-visible,.language-picker select:focus-visible{outline:2px solid #31d8ca;outline-offset:3px}
.nav-toggle-icon{display:grid;gap:4px;width:17px}
.nav-toggle-icon i{display:block;height:2px;border-radius:2px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
.nav-toggle[aria-expanded=true] .nav-toggle-icon i:first-child{transform:translateY(6px) rotate(45deg)}
.nav-toggle[aria-expanded=true] .nav-toggle-icon i:nth-child(2){opacity:0}
.nav-toggle[aria-expanded=true] .nav-toggle-icon i:last-child{transform:translateY(-6px) rotate(-45deg)}
@media(prefers-reduced-motion:reduce){.nav-toggle-icon i{transition:none}}
@media(max-width:700px){.nav-toggle{display:inline-flex}}
html[dir=rtl] .app-card,html[dir=rtl] .approach-card,html[dir=rtl] .detail-copy{text-align:right}
html[dir=rtl] .app-info{flex-direction:row-reverse}
html[dir=rtl] .app-actions .button{flex-direction:row-reverse}
html[dir=rtl] .contact-email,html[dir=rtl] .brand,html[dir=rtl] .app-title-wrap h3{direction:ltr}
.hero-glow .glow-orbit{border-style:dashed;animation:jervis-orbit 16s linear infinite}
.hero-glow .orbit-two{border-style:dotted;animation-duration:23s;animation-direction:reverse}
.hero-glow .orbit-one::after,.hero-glow .orbit-two::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#35dccc;box-shadow:0 0 14px 3px #28dcca72}
.hero-glow .orbit-one::after{top:14%;left:50%}
.hero-glow .orbit-two::after{right:15%;bottom:23%;width:6px;height:6px;background:#b493ff;box-shadow:0 0 12px 3px #9778ff70}
.hero-glow .glow-core{isolation:isolate}
.hero-glow .glow-letter{position:relative;z-index:1}
.hero-glow .glow-star{position:absolute;z-index:2;top:-6px;right:-5px;color:#e8ffff;font-size:1.05rem;line-height:1;text-shadow:0 0 8px #fff,0 0 18px #48d9ed;animation:jervis-star 2.8s ease-in-out infinite alternate}
@keyframes jervis-orbit{to{transform:rotate(360deg)}}
@keyframes jervis-star{from{opacity:.62;transform:scale(.85) rotate(-8deg)}to{opacity:1;transform:scale(1.08) rotate(8deg)}}

.hero-glow.rex-orb{display:block;background:transparent}
.rex-orb-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
.rex-orb-logo{position:absolute;z-index:1;top:50%;left:50%;width:30%;aspect-ratio:1;display:grid;place-items:center;transform:translate(-50%,-50%);border:1px solid rgba(72,221,210,.35);border-radius:28%;color:#061116;background:linear-gradient(135deg,#19dbc5,#28afe0 55%,#9562f3);box-shadow:0 0 40px rgba(46,193,217,.28),0 0 70px rgba(46,193,217,.13);font-size:clamp(2.25rem,5.5vw,3.4rem);font-weight:950;line-height:1}
.rex-orb-letter{position:relative;z-index:1}
.rex-orb-star{position:absolute;top:5%;right:7%;color:#e8ffff;font-size:.43em;line-height:1;text-shadow:0 0 8px #fff,0 0 18px #48d9ed}
@media(max-width:700px){.rex-orb-logo{font-size:2.25rem}}

/* Keep the promotional artwork intact at every viewport width. */
.app-visual{height:auto;aspect-ratio:4/3}
.app-visual img{object-position:center}
