:root {
  --orbit-green: #12b76a;
  --orbit-green-hot: #36dd86;
  --orbit-ink: #18211c;
  --orbit-muted: #68736c;
  --orbit-paper: #f4f5ef;
  --orbit-card: #ffffff;
  --orbit-line: #dfe3db;
  --orbit-dark: #17231d;
}

.world-switch {
  position: fixed;
  z-index: 10020;
  top: 14px;
  left: 50%;
  width: min(342px, calc(100vw - 28px));
  height: 48px;
  padding: 4px;
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  border: 1px solid color-mix(in srgb, var(--primary) 28%, rgba(255,255,255,.12));
  border-radius: 14px;
  background: rgba(8,11,20,.9);
  box-shadow: 0 12px 38px rgba(0,0,0,.32), inset 0 1px rgba(255,255,255,.05);
  color: var(--text-muted);
  font-family: "Space Grotesk", system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  cursor: pointer;
  isolation: isolate;
  touch-action: manipulation;
  transition: background .45s, border-color .45s, box-shadow .45s, color .45s;
}

.world-switch::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 4px auto 4px 4px;
  width: calc(50% - 4px);
  border-radius: 10px;
  background: linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 68%,white));
  box-shadow: 0 5px 18px color-mix(in srgb,var(--primary) 25%,transparent);
  transition: transform .66s cubic-bezier(.22,1,.36,1), background .4s, box-shadow .4s;
}

.world-switch[aria-checked="true"] {
  border-color: #d7dcd4;
  background: rgba(255,255,255,.92);
  color: #68736c;
  box-shadow: 0 12px 38px rgba(35,48,40,.14), inset 0 1px #fff;
}
.world-switch[aria-checked="true"]::before {
  transform: translateX(100%);
  background: linear-gradient(135deg,#16b96c,#4ae191);
  box-shadow: 0 6px 18px rgba(18,183,106,.25);
}
.world-switch__option { display:inline-flex; align-items:center; justify-content:center; gap:7px; height:100%; transition:color .3s; user-select:none; }
.world-switch__option:first-child,
.world-switch[aria-checked="true"] .world-switch__option:last-child { color:#061016; }
.world-switch[aria-checked="true"] .world-switch__option:first-child { color:#78827b; }
.world-switch svg { width:15px; height:15px; }
.world-switch:focus-visible { outline:3px solid #17231d; outline-offset:3px; }

.world-portal { position:fixed; z-index:10010; inset:0; pointer-events:none; visibility:hidden; overflow:hidden; isolation:isolate; }
.world-portal::before {
  content:"";
  position:absolute;
  z-index:1;
  inset:-8%;
  background:
    radial-gradient(ellipse 72% 88% at 14% 24%,rgba(0,212,255,.22),transparent 60%),
    radial-gradient(ellipse 76% 92% at 86% 72%,rgba(18,183,106,.38),transparent 64%),
    radial-gradient(ellipse 55% 65% at 52% 48%,rgba(25,68,78,.66),rgba(5,12,15,.94) 72%),
    #03070a;
  opacity:0;
  transform:scale(1.06) translate3d(0,0,0);
}
.world-portal::after {
  content:"";
  position:absolute;
  z-index:4;
  inset:-10%;
  background:
    radial-gradient(circle at 28% 35%,rgba(0,212,255,.28),transparent 34%),
    radial-gradient(circle at 72% 58%,rgba(54,221,134,.32),transparent 38%),
    radial-gradient(circle at 54% 42%,rgba(124,58,237,.12),transparent 44%),
    linear-gradient(135deg,rgba(1,11,15,.86),rgba(4,25,22,.9));
  background-blend-mode:screen,screen,screen,normal;
  box-shadow:inset 0 0 140px rgba(0,0,0,.84);
  mix-blend-mode:screen;
  opacity:0;
  transform:scale(1.04) translate3d(-6px,3px,0);
}
.world-portal__warp { position:absolute; z-index:0; inset:-4%; backdrop-filter:contrast(1.18) saturate(.48) hue-rotate(8deg); -webkit-backdrop-filter:contrast(1.18) saturate(.48) hue-rotate(8deg); opacity:0; }
.world-portal__noise { position:absolute; z-index:3; inset:-18%; opacity:0; mix-blend-mode:screen; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E"); background-size:180px 180px; }
.world-portal__scan { position:absolute; z-index:5; inset:-20px 0; opacity:0; background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.055) 3px 4px,transparent 4px 7px); mix-blend-mode:overlay; }
.world-portal.is-crossing { visibility:visible; }
.world-portal.is-crossing::before { animation:global-atmosphere 1.46s cubic-bezier(.45,0,.25,1) both; }
.world-portal.is-crossing::after { animation:chromatic-field 1.46s ease-in-out both; }
.world-portal.is-crossing .world-portal__warp { animation:analog-warp 1.46s ease-in-out both; }
.world-portal.is-crossing .world-portal__noise { animation:analog-noise 1.46s ease-in-out both; }
.world-portal.is-crossing .world-portal__scan { animation:scan-drift 1.46s linear both; }
body.world-crossing #root,body.world-crossing .publish-world { animation:reality-recompose 1.46s cubic-bezier(.45,0,.25,1) both; transform-origin:50% 50%; }
@keyframes global-atmosphere { 0%,100%{opacity:0;transform:scale(1.06) translate3d(0,0,0)} 18%{opacity:.3} 44%,59%{opacity:1;transform:scale(1) translate3d(0,0,0)} 80%{opacity:.2} }
@keyframes chromatic-field { 0%,100%{opacity:0;transform:scale(1.04) translate3d(-6px,3px,0)} 22%{opacity:.16;transform:scale(1.025) translate3d(5px,-3px,0)} 43%{opacity:.46;transform:scale(1.008) translate3d(-5px,4px,0)} 51%,59%{opacity:.64;transform:scale(1) translate3d(4px,-2px,0)} 78%{opacity:.12;transform:scale(1.02) translate3d(-2px,2px,0)} }
@keyframes analog-warp { 0%,100%{opacity:0;transform:scale(1)} 20%{opacity:.45;transform:scale(1.01,.988) skewX(.18deg)} 45%,61%{opacity:1;transform:scale(.99,1.016) skewX(-.25deg)} 80%{opacity:.2;transform:scale(1.004,.997)} }
@keyframes analog-noise { 0%,100%{opacity:0;transform:translate3d(0,0,0)} 22%{opacity:.07;transform:translate3d(-2%,1%,0)} 44%,62%{opacity:.2;transform:translate3d(2%,-1%,0)} 80%{opacity:.05;transform:translate3d(-1%,1%,0)} }
@keyframes scan-drift { 0%,100%{opacity:0;transform:translateY(-10px)} 20%{opacity:.18} 44%,63%{opacity:.5;transform:translateY(12px)} 82%{opacity:.1} }
@keyframes reality-recompose { 0%,100%{opacity:1;filter:none;transform:none} 20%{opacity:.94;filter:saturate(.7) contrast(1.05);transform:scale(1.004,.997)} 45%{opacity:.36;filter:saturate(.28) contrast(1.2) blur(1.2px);transform:scale(.992,1.008) skewX(-.12deg)} 51%,59%{opacity:.16;filter:saturate(.18) contrast(1.28) blur(1.8px);transform:scale(1.008,.99) skewX(.12deg)} 80%{opacity:.9;filter:saturate(.82);transform:scale(.999,1.002)} }

.publish-world {
  position:fixed;
  z-index:10000;
  inset:0;
  overflow:auto;
  overscroll-behavior:contain;
  background:var(--orbit-paper);
  color:var(--orbit-ink);
  font-family:"DM Sans",system-ui,sans-serif;
  opacity:0;
  visibility:hidden;
  transform:scale(.975) rotateX(1.5deg);
  transform-origin:50% 0;
  transition:opacity .38s ease,transform .6s cubic-bezier(.22,1,.36,1),visibility 0s linear .6s;
}
.publish-world:focus { outline:none; }
.publish-world::-webkit-scrollbar { width:7px; }
.publish-world::-webkit-scrollbar-track { background:#edf0e8; }
.publish-world::-webkit-scrollbar-thumb { background:var(--orbit-green); border-radius:4px; }
body.publish-active { overflow:hidden; }
body.publish-active .publish-world { opacity:1; visibility:visible; transform:none; transition-delay:0s; }

.orbit-shell { width:min(1180px,calc(100% - 40px)); margin:0 auto; }
.orbit-header { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:22px; border-bottom:1px solid var(--orbit-line); }
.orbit-brand-slot { display:flex; align-items:center; gap:10px; min-width:80px; color:var(--orbit-ink); font-family:"Space Grotesk",sans-serif; font-size:17px; font-weight:800; }
.orbit-brand-slot > img { max-height:36px; width:auto; }
.orbit-brand-slot > span { flex-shrink:0; }
.orbit-header__meta { margin-right:4px; color:var(--orbit-muted); font-size:12px; }

.orbit-tabs { display:flex; gap:8px; padding:18px 0 22px; overflow-x:auto; scrollbar-width:none; }
.orbit-tabs::-webkit-scrollbar { display:none; }
.orbit-tab { flex:0 0 auto; padding:9px 16px; border:1px solid var(--orbit-line); border-radius:999px; background:rgba(255,255,255,.55); color:var(--orbit-muted); font-family:"Space Grotesk",sans-serif; font-size:12px; font-weight:700; transition:.2s; }
.orbit-tab:hover { border-color:#aab3aa; color:var(--orbit-ink); }
.orbit-tab--active { border-color:var(--orbit-dark); background:var(--orbit-dark); color:white; }
.orbit-tab:focus-visible,.orbit-cta:focus-visible { outline:3px solid var(--orbit-green); outline-offset:3px; }

.orbit-feature { position:relative; min-height:430px; display:grid; grid-template-columns:1.05fr .95fr; overflow:hidden; border-radius:28px; background:#c7f5d9; box-shadow:0 18px 50px rgba(34,65,46,.09); }
.orbit-feature__copy { position:relative; z-index:2; padding:clamp(40px,6vw,72px); }
.orbit-kicker { display:inline-flex; align-items:center; gap:8px; margin-bottom:26px; font-family:"Space Grotesk",sans-serif; font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.orbit-kicker::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--orbit-green); box-shadow:0 0 0 5px rgba(18,183,106,.12); }
.orbit-feature h1 { max-width:620px; margin:0 0 18px; font-family:"Space Grotesk",sans-serif; font-size:clamp(2.25rem,5vw,4.6rem); line-height:.96; letter-spacing:-.055em; font-weight:800; }
.orbit-feature__lead { max-width:600px; margin:0 0 27px; color:#44554a; font-size:clamp(.98rem,1.5vw,1.1rem); line-height:1.7; }
.orbit-cta { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:48px; padding:0 21px; border-radius:11px; background:var(--orbit-dark); color:#fff; font-family:"Space Grotesk",sans-serif; font-size:14px; font-weight:800; transition:transform .2s,box-shadow .2s; }
.orbit-cta:hover { transform:translateY(-2px); box-shadow:0 12px 25px rgba(23,35,29,.18); }

.orbit-feature__visual { position:relative; min-height:360px; overflow:hidden; }
.orbit-orb { position:absolute; width:420px; height:420px; right:-78px; top:-52px; border-radius:50%; background:var(--orbit-green-hot); box-shadow:inset 0 0 0 70px rgba(255,255,255,.13),0 0 0 35px rgba(255,255,255,.12); }
.orbit-device { position:absolute; z-index:2; width:210px; height:330px; right:78px; top:54px; padding:14px; border:9px solid var(--orbit-dark); border-radius:34px; background:#f7faf5; transform:rotate(7deg); box-shadow:0 35px 55px rgba(23,35,29,.22); }
.orbit-device::before { content:""; display:block; width:42%; height:6px; margin:0 auto 20px; border-radius:5px; background:#c9cec8; }
.orbit-device__tile { height:112px; border-radius:18px; background:linear-gradient(135deg,var(--orbit-dark),#2e4639); }
.orbit-device__line { height:8px; margin-top:15px; border-radius:5px; background:#d8ded6; }
.orbit-device__line:nth-child(3) { width:72%; }
.orbit-device__price { margin-top:24px; color:var(--orbit-green); font-family:"Space Grotesk",sans-serif; font-size:28px; font-weight:800; letter-spacing:-.04em; }

.orbit-section { padding:62px 0 14px; scroll-margin-top:76px; }
.orbit-section__head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:24px; }
.orbit-section__head h2 { margin:0 0 5px; font-family:"Space Grotesk",sans-serif; font-size:clamp(1.6rem,3vw,2.35rem); line-height:1.1; letter-spacing:-.035em; }
.orbit-section__head p { margin:0; color:var(--orbit-muted); font-size:14px; }
.orbit-section__index { color:var(--orbit-muted); font-family:"Space Grotesk",sans-serif; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }

.orbit-rail { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.orbit-promo { position:relative; min-height:270px; overflow:hidden; padding:28px; border-radius:22px; background:var(--orbit-dark); color:#fff; }
.orbit-promo:nth-child(2) { background:#253b31; }
.orbit-promo:nth-child(3) { background:#0d6040; }
.orbit-promo__tag { display:inline-flex; padding:6px 9px; border:1px solid rgba(255,255,255,.18); border-radius:999px; color:#c4d1c9; font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.orbit-promo h3 { max-width:250px; margin:48px 0 10px; font-family:"Space Grotesk",sans-serif; font-size:clamp(1.35rem,2vw,1.85rem); line-height:1.08; letter-spacing:-.035em; }
.orbit-promo p { max-width:290px; margin:0; color:#b8c6be; font-size:13.5px; line-height:1.6; }
.orbit-promo__big { position:absolute; right:20px; bottom:11px; color:rgba(255,255,255,.09); font-family:"Space Grotesk",sans-serif; font-size:75px; font-weight:800; letter-spacing:-.07em; }

.orbit-catalog { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; counter-reset:orbit-step; }
.orbit-item { counter-increment:orbit-step; min-height:230px; padding:26px; border:1px solid var(--orbit-line); border-radius:20px; background:var(--orbit-card); box-shadow:0 10px 25px rgba(35,48,40,.04); }
.orbit-item::before { content:"0" counter(orbit-step); display:grid; place-items:center; width:34px; height:34px; margin-bottom:44px; border-radius:10px; background:#e0f8e9; color:#09844b; font-family:"Space Grotesk",sans-serif; font-size:11px; font-weight:800; }
.orbit-item h3 { margin:0 0 8px; font-family:"Space Grotesk",sans-serif; font-size:17px; }
.orbit-item p { margin:0; color:var(--orbit-muted); font-size:13.5px; line-height:1.65; }

.orbit-terms { display:grid; grid-template-columns:repeat(2,1fr); border:1px solid var(--orbit-line); border-radius:24px; overflow:hidden; background:var(--orbit-card); }
.orbit-term { min-height:170px; padding:26px; border-right:1px solid var(--orbit-line); border-bottom:1px solid var(--orbit-line); }
.orbit-term:nth-child(2n) { border-right:0; }
.orbit-term:nth-last-child(-n+2) { border-bottom:0; }
.orbit-term__icon { display:grid; place-items:center; width:32px; height:32px; margin-bottom:23px; border-radius:10px; background:#eff2ec; color:var(--orbit-muted); font-family:"Space Grotesk",sans-serif; font-size:13px; font-weight:800; }
.orbit-term strong { display:block; margin-bottom:7px; font-family:"Space Grotesk",sans-serif; font-size:14px; }
.orbit-term p { margin:0; color:var(--orbit-muted); font-size:13.5px; line-height:1.65; }
.orbit-own { margin-top:15px; display:grid; grid-template-columns:.7fr 1.3fr; gap:30px; align-items:center; padding:34px; border-radius:22px; background:#dff8e9; }
.orbit-own__badge { color:#087844; font-family:"Space Grotesk",sans-serif; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.orbit-own p { margin:0; color:#385044; font-size:14px; line-height:1.7; }
.orbit-footer { padding:56px 0 96px; color:var(--orbit-muted); font-size:12px; text-align:center; }

@media (max-width:850px) {
  .world-switch { top:10px; }
  .orbit-header { min-height:118px; padding-top:62px; }
  .orbit-header__meta { display:none; }
  .orbit-feature { grid-template-columns:1fr; }
  .orbit-feature__visual { min-height:320px; }
  .orbit-device { left:50%; right:auto; transform:translateX(-50%) rotate(5deg); }
  .orbit-orb { left:50%; right:auto; transform:translateX(-50%); }
  .orbit-rail,.orbit-catalog { grid-template-columns:1fr; }
  .orbit-promo { min-height:230px; }
  .orbit-item { min-height:0; }
  .orbit-item::before { margin-bottom:28px; }
  .orbit-own { grid-template-columns:1fr; gap:12px; }
}

@media (max-width:560px) {
  .orbit-shell { width:min(100% - 24px,1180px); }
  .world-switch { font-size:11px; }
  .world-switch svg { display:none; }
  .orbit-feature { border-radius:21px; }
  .orbit-feature__copy { padding:34px 24px 30px; }
  .orbit-feature__visual { min-height:285px; }
  .orbit-device { width:178px; height:280px; top:28px; }
  .orbit-orb { width:330px; height:330px; top:-14px; }
  .orbit-section { padding-top:48px; }
  .orbit-section__index { display:none; }
  .orbit-terms { grid-template-columns:1fr; }
  .orbit-term,.orbit-term:nth-child(2n),.orbit-term:nth-last-child(-n+2) { min-height:0; border-right:0; border-bottom:1px solid var(--orbit-line); }
  .orbit-term:last-child { border-bottom:0; }
}

@media (prefers-reduced-motion:reduce) {
  .world-switch,.world-switch::before,.publish-world,.orbit-cta { transition-duration:.01ms!important; }
  body.world-crossing #root,body.world-crossing .publish-world,.world-portal.is-crossing::before,.world-portal.is-crossing::after,.world-portal.is-crossing .world-portal__warp,.world-portal.is-crossing .world-portal__noise,.world-portal.is-crossing .world-portal__scan { animation:none!important; }
  .world-portal.is-crossing { visibility:hidden; }
  .world-portal__warp { backdrop-filter:none; -webkit-backdrop-filter:none; }
}
