{"product_id":"rayneo-io-polar-night-with-charging-case-bundle","title":"RayNeo iO AI Glasses + Charging Case (Polar Night) | 33g, Invisible AI Display","description":"\n\u003c!-- ======================= SHOPIFY DESCRIPTION START ======================= --\u003e\n\u003cstyle\u003e\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Barlow+Condensed:wght@500;600;700;800\u0026family=Barlow:wght@400;500;600\u0026display=swap');\n\n\/* ---------- TOKENS (re-theme here) ---------- *\/\n.rioc{\n  --ink:#09090b; --ink-2:#0e1316; --ink-3:#1a2024; --line:#2B3033; --charcoal:#2B3033;\n  --text:#ecebe6; --muted:#9a998f; --dim:#6b6a63;\n  \/* Drone Nerds brand palette *\/\n  --red:#D92211; --red-2:#BF1E0F; --red-3:#99180C; --red-4:#590E07;\n  --blue:#1A98C9; --blue-l:#3BB0E0; --teal:#105E7C; --teal-2:#0D4B63; --navy:#082E3D; --green:#07B376;\n  \/* heat tokens drive the hero bloom; now brand reds with a hot white core *\/\n  --heat-0:#082E3D; --heat-1:#0D4B63; --heat-2:#105E7C; --heat-3:#1A98C9; --heat-4:#3BB0E0; --heat-5:#DFF3FA;\n  --accent:var(--red);\n  --brand:var(--blue-l);\n  --sans:'Barlow', system-ui, -apple-system, 'Segoe UI', sans-serif;\n  --cond:'Barlow Condensed', 'Arial Narrow', Impact, sans-serif;\n  --pad:clamp(20px, 4vw, 56px);\n}\n\n\/* ---------- THEME CONTAINER OVERRIDE ----------\n   Theme caps .container at 1290px. :has() scopes this to only the container\n   holding this block. If the theme uses a different class, change .container here. *\/\n.container:has(.rioc){ max-width:1400px; }\n\n\/* ---------- BASE ---------- *\/\n.rioc{ font-family:var(--sans); color:var(--text); background:var(--ink); line-height:1.5; -webkit-font-smoothing:antialiased;\n  margin:0 auto; max-width:1400px; overflow:clip; border-radius:4px; }\n.rioc *, .rioc *::before, .rioc *::after{ box-sizing:border-box; }\n.rioc img, .rioc video{ max-width:100%; display:block; }\n.rioc h2, .rioc h3, .rioc h4, .rioc p, .rioc ul, .rioc ol, .rioc dl, .rioc dd, .rioc figure{ margin:0; }\n.rioc ul, .rioc ol{ margin:0 !important; padding:0 !important; list-style:none !important; }\n.rioc li{ margin:0 !important; padding-left:0; list-style:none !important; }\n.rioc li::marker{ content:none; }\n.rioc a{ color:inherit; }\n.rioc .wrap{ padding:0 var(--pad); }\n\n\/* ---------- HERO ---------- *\/\n.rioc-hero{ position:relative; isolation:isolate; min-height:min(92vh, 820px); display:flex; align-items:flex-end; padding:clamp(72px,12vw,160px) 0 clamp(36px,5vw,64px); }\n.rioc-hero .media{ position:absolute; inset:0; z-index:-2; }\n.rioc-hero .media \u003e *{ width:100%; height:100%; aspect-ratio:auto; object-fit:cover; }\n.rioc-hero .media .rioc-ph{ position:absolute; inset:0; aspect-ratio:auto; border:0; align-items:start; padding-top:28px; }\n.rioc-hero::before{ \/* heat bloom *\/\n  content:\"\"; position:absolute; inset:-30% -10% auto; height:140%; z-index:-1; pointer-events:none;\n  background:radial-gradient(ellipse 55% 48% at 72% 42%, var(--heat-5) 0%, var(--heat-4) 8%, var(--heat-3) 20%, var(--heat-2) 36%, var(--heat-1) 54%, var(--heat-0) 72%, transparent 86%);\n  filter:blur(28px) saturate(1.15); opacity:.7; mix-blend-mode:screen;\n  animation:rioc-breathe 14s ease-in-out infinite alternate;\n}\n.rioc-hero::after{ \/* vignette + scanlines *\/\n  content:\"\"; position:absolute; inset:0; z-index:-1; pointer-events:none;\n  background:linear-gradient(to bottom, rgba(9,9,11,.72), rgba(9,9,11,.5) 45%, var(--ink) 94%),\n             linear-gradient(90deg, rgba(9,9,11,.55), transparent 70%),\n             repeating-linear-gradient(0deg, rgba(255,255,255,.03) 0 1px, transparent 1px 4px);\n}\n.rioc-hero .wrap{ position:relative; width:100%; }\n.rioc-hero .kicker{ font:600 15px\/1 var(--cond); letter-spacing:.12em; color:var(--green); display:flex; align-items:center; gap:12px; }\n.rioc-hero .kicker::before{ content:\"\"; width:28px; height:2px; background:var(--green); }\n.rioc-hero h2{ font:800 clamp(60px, 12vw, 148px)\/.88 var(--cond); letter-spacing:-.02em; text-transform:uppercase; margin-top:18px;\n  background:linear-gradient(180deg, #fff 30%, #d9d7cf 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }\n.rioc-hero h2 span{ display:block; color:var(--brand); -webkit-text-fill-color:var(--brand); font-weight:500; font-size:.4em; letter-spacing:.01em; margin-top:10px; }\n.rioc-hero .lede{ max-width:64ch; margin-top:26px; font-size:clamp(17px,1.6vw,20px); color:var(--muted); }\n.rioc-hero .lede strong{ color:var(--text); font-weight:600; }\n\n\/* KPI band with count-up *\/\n@property --rioc-n { syntax:'\u003cinteger\u003e'; inherits:true; initial-value:0; }\n.rioc-stats{ display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-top:clamp(32px,5vw,56px); backdrop-filter:blur(6px); }\n.rioc-stats \u003e div{ padding:20px 0; border-left:1px solid var(--line); padding-left:20px; }\n.rioc-stats \u003e div:first-child{ border-left:0; padding-left:0; }\n.rioc-stats b{ display:block; font:700 clamp(40px,5vw,64px)\/1 var(--cond); letter-spacing:-.02em; }\n.rioc-stats b.n{ position:relative; } .rioc-stats b.n .v{ display:inline-block; }\n.rioc-stats b small{ font-size:.42em; color:var(--muted); font-weight:600; margin-left:4px; letter-spacing:0; }\n.rioc-stats \u003e div \u003e span{ display:block; color:var(--muted); font-size:14px; margin-top:6px; }\n\n\/* ---------- MARQUEE ---------- *\/\n.rioc-marq{ overflow:hidden; border-bottom:1px solid var(--line); background:var(--navy); padding:14px 0; }\n.rioc-marq .track{ display:flex; width:max-content; animation:rioc-marq 46s linear infinite; }\n.rioc-marq ul{ display:flex; gap:0; }\n.rioc-marq li{ font:600 14px\/1 var(--cond); letter-spacing:.14em; text-transform:uppercase; color:var(--muted); padding:0 26px; display:flex; align-items:center; gap:26px; white-space:nowrap; }\n.rioc-marq li::after{ content:\"\"; width:6px; height:6px; background:var(--accent); transform:rotate(45deg); }\n\n\/* ---------- SECTION CHROME ---------- *\/\n.rioc-sec{ padding:clamp(56px,8vw,104px) 0; border-top:1px solid var(--line); }\n.rioc-sec header{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:24px 48px; align-items:end; margin-bottom:clamp(32px,4vw,56px); }\n.rioc-sec header h3{ font:700 clamp(34px,5vw,60px)\/.95 var(--cond); letter-spacing:-.015em; text-transform:uppercase; }\n.rioc-sec header p{ color:var(--muted); font-size:17px; max-width:52ch; }\n.rioc-sec.bleed{ padding-top:0; }\n.rioc-sec.alt{ background:linear-gradient(180deg, var(--navy), #061f2a); }\n\n\/* ---------- MEDIA SLOTS (placeholders; swap for \u003cimg\u003e\/\u003cvideo\u003e) ---------- *\/\n.rioc-ph{ position:relative; display:grid; place-items:center; text-align:center; padding:20px; border:1px dashed rgba(236,235,230,.28); aspect-ratio:16\/9;\n  background:linear-gradient(135deg, #15151a, #0e0e12 60%, #1a1116),\n             repeating-linear-gradient(90deg, rgba(255,255,255,.03) 0 1px, transparent 1px 40px),\n             repeating-linear-gradient(0deg, rgba(255,255,255,.03) 0 1px, transparent 1px 40px);\n  background-blend-mode:normal, overlay, overlay; }\n.rioc-ph figcaption{ font:500 13px\/1.45 var(--sans); color:var(--muted); max-width:38ch; }\n.rioc-ph figcaption b{ display:block; font:700 13px\/1 var(--cond); letter-spacing:.14em; text-transform:uppercase; color:var(--accent); margin-bottom:8px; }\n.rioc-ph.r-21x9{ aspect-ratio:21\/9; } .rioc-ph.r-4x5{ aspect-ratio:4\/5; } .rioc-ph.r-1x1{ aspect-ratio:1; } .rioc-ph.r-3x2{ aspect-ratio:3\/2; }\n.rioc-media{ width:100%; height:auto; aspect-ratio:16\/9; object-fit:cover; display:block; background:var(--ink-2); } \/* real \u003cimg\u003e\/\u003cvideo\u003e in a slot *\/\n.rioc-media.r-21x9{ aspect-ratio:21\/9; } .rioc-media.r-4x5{ aspect-ratio:4\/5; } .rioc-media.r-1x1{ aspect-ratio:1; } .rioc-media.r-3x2{ aspect-ratio:3\/2; }\n.rioc-full{ margin:0 calc(-1 * var(--pad)); } \/* full-bleed inside .wrap *\/\n\n\/* ---------- SENSOR ARRAY ---------- *\/\n.rioc-array{ display:grid; grid-template-columns:repeat(6,1fr); gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-array li{ background:var(--ink-2); padding:22px 18px 20px; position:relative; min-height:230px; display:flex; flex-direction:column; }\n.rioc-array li::before{ content:\"\"; position:absolute; top:0; left:0; right:0; height:3px; background:var(--c,var(--muted)); }\n.rioc-array .name{ font:600 15px\/1.2 var(--cond); letter-spacing:.06em; text-transform:uppercase; color:var(--muted); }\n.rioc-array .big{ font:800 clamp(34px,3.6vw,46px)\/1 var(--cond); margin:14px 0 6px; letter-spacing:-.02em; }\n.rioc-array .big small{ font-size:.45em; color:var(--muted); font-weight:600; }\n.rioc-array .sub{ color:var(--muted); font-size:13.5px; margin-top:auto; }\n.rioc-array .sub b{ color:var(--text); font-weight:600; }\n.rioc-gimbal-shot{ margin-top:2px; }\n\n.rioc-array--4{ grid-template-columns:repeat(4,1fr); }\n\n\/* ---------- ZOOM LADDER ---------- *\/\n.rioc-zoom{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:center; }\n.rioc-ladder{ position:relative; aspect-ratio:4\/3; border:1px solid var(--line); overflow:clip; background:radial-gradient(circle at 50% 50%, #26262d 0, #16161b 60%, #0f0f13 100%); }\n.rioc-ladder .bg{ position:absolute; inset:0; font-size:0; line-height:0; } \/* optional real photo behind the frames *\/\n.rioc-ladder .bg .rioc-ph{ position:absolute; inset:0; aspect-ratio:auto; border:0; align-items:end; justify-items:start; text-align:left; }\n.rioc-ladder::before{ content:\"\"; position:absolute; inset:0; pointer-events:none; background:\n  repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 48px),\n  repeating-linear-gradient(0deg, rgba(255,255,255,.04) 0 1px, transparent 1px 48px); }\n.rioc-ladder .f{ position:absolute; border:1.5px solid; display:flex; align-items:flex-start; justify-content:space-between; padding:8px 10px; font:600 13px\/1 var(--cond); letter-spacing:.08em; text-transform:uppercase; }\n.rioc-ladder .f24{ inset:6% 6%; border-color:rgba(236,235,230,.4); color:rgba(236,235,230,.75); }\n.rioc-ladder .f70{ inset:27% 29%; border-color:var(--red); color:var(--red); }\n.rioc-ladder .f168{ inset:40.5% 41.5%; border-color:var(--brand); color:var(--brand); animation:rioc-pulse 3.6s ease-in-out infinite; }\n.rioc-ladder .cross{ font-size:0; line-height:0; position:absolute; left:50%; top:50%; width:18px; height:18px; transform:translate(-50%,-50%); }\n.rioc-ladder .cross::before, .rioc-ladder .cross::after{ content:\"\"; position:absolute; background:var(--heat-5); }\n.rioc-ladder .cross::before{ left:50%; top:0; bottom:0; width:1px; transform:translateX(-.5px); }\n.rioc-ladder .cross::after{ top:50%; left:0; right:0; height:1px; transform:translateY(-.5px); }\n.rioc-zoom ol{ display:grid; gap:18px; }\n.rioc-zoom ol li{ display:grid; grid-template-columns:92px 1fr; gap:18px; align-items:baseline; padding-bottom:18px; border-bottom:1px solid var(--line); }\n.rioc-zoom ol li:last-child{ border-bottom:0; }\n.rioc-zoom ol b{ font:800 44px\/1 var(--cond); letter-spacing:-.02em; }\n.rioc-zoom ol b small{ font-size:.42em; font-weight:600; color:var(--muted); }\n.rioc-zoom ol h4{ font:600 18px\/1.2 var(--sans); }\n.rioc-zoom ol p{ color:var(--muted); font-size:15px; margin-top:4px; }\n.rioc-zoom .l24 b{ color:var(--text);} .rioc-zoom .l70 b{ color:var(--red);} .rioc-zoom .l168 b{ color:var(--brand);}\n\n\/* ---------- THERMAL ---------- *\/\n@property --rioc-cut { syntax:'\u003cpercentage\u003e'; inherits:false; initial-value:50%; }\n.rioc-split{ position:relative; aspect-ratio:16\/9; border:1px solid var(--line); overflow:hidden; --rioc-cut:50%; }\n.rioc-split .vis, .rioc-split .ir{ position:absolute; inset:0; }\n.rioc-split .vis .rioc-ph, .rioc-split .ir .rioc-ph, .rioc-split .rioc-media{ position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto; border:0; }\n.rioc-split .vis .rioc-ph{ background:linear-gradient(180deg,#3b4350 0,#1f242b 50%,#0e1013 100%); }\n.rioc-split .ir{ clip-path:inset(0 0 0 var(--rioc-cut)); }\n.rioc-split .ir .rioc-ph{ background:\n   repeating-linear-gradient(90deg, rgba(59,176,224,.12) 0 1px, transparent 1px 28px),\n   repeating-linear-gradient(0deg, rgba(59,176,224,.12) 0 1px, transparent 1px 28px),\n   linear-gradient(160deg, #0b2a38, #061a24 60%, #04111a); }\n.rioc-split .ir::before{ content:\"\"; position:absolute; inset:0; background:repeating-linear-gradient(0deg, rgba(0,0,0,.18) 0 1px, transparent 1px 3px); pointer-events:none; }\n.rioc-split .ir::after{ content:none; position:absolute; left:0; right:0; top:-20%; height:20%; background:linear-gradient(to bottom, transparent, rgba(223,243,250,.18), transparent); animation:rioc-scan 5.5s linear infinite; }\n.rioc-split .handle{ font-size:0; line-height:0; position:absolute; top:0; bottom:0; left:var(--rioc-cut); width:2px; background:var(--heat-5); transform:translateX(-1px); box-shadow:0 0 18px rgba(255,255,255,.5); }\n.rioc-split .handle::after{ content:\"3D\"; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:44px; height:44px; border-radius:50%; background:var(--heat-5); color:#1a0f00; display:grid; place-items:center; font:800 13px\/1 var(--cond); letter-spacing:.1em; }\n.rioc-split .hud{ position:absolute; font:600 12px\/1.3 var(--cond); letter-spacing:.1em; text-transform:uppercase; color:rgba(255,247,214,.9); background:rgba(9,9,11,.5); padding:5px 7px; }\n.rioc-split .hud.tl{ top:12px; left:14px; } .rioc-split .hud.tr{ top:12px; right:14px; text-align:right; }\n.rioc-split .hud.bl{ bottom:12px; left:14px; } .rioc-split .hud.br{ bottom:12px; right:14px; text-align:right; }\n.rioc-bar{ font-size:0; line-height:0; height:14px; margin-top:14px; background:linear-gradient(90deg, #000 0, #2b0a3d 14%, #8a1c3a 34%, #e0472a 54%, #ff9a1f 72%, #ffe66b 88%, #fff7d6); border:1px solid var(--line); }\n.rioc-bar + div{ display:flex; justify-content:space-between; font:600 12px\/1 var(--cond); letter-spacing:.1em; color:var(--muted); margin-top:8px; }\n.rioc-therm-grid{ display:grid; grid-template-columns:repeat(10,1fr); gap:2px; background:var(--line); border:1px solid var(--line); margin-top:32px; }\n.rioc-therm-grid li{ background:rgba(13,75,99,.35); padding:20px 18px; grid-column:span 2; }\n.rioc-therm-grid b{ display:block; font:700 30px\/1 var(--cond); color:var(--brand); letter-spacing:-.02em; }\n.rioc-therm-grid h4{ font:600 16px\/1.25 var(--sans); margin-top:10px; }\n.rioc-therm-grid p{ color:var(--muted); font-size:14px; margin-top:6px; }\n\n\/* ---------- MISSIONS ---------- *\/\n.rioc-missions{ display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-missions li{ background:var(--ink); display:flex; flex-direction:column; }\n.rioc-missions .shot{ aspect-ratio:4\/5; overflow:hidden; }\n.rioc-missions .shot .rioc-ph, .rioc-missions .shot .rioc-media{ aspect-ratio:4\/5; border:0; border-bottom:1px solid var(--line); }\n.rioc-missions .body{ padding:22px 20px 24px; display:flex; flex-direction:column; flex:1; }\n.rioc-missions h4{ font:700 26px\/1 var(--cond); text-transform:uppercase; letter-spacing:-.01em; }\n.rioc-missions p{ color:var(--muted); font-size:15px; margin-top:12px; }\n.rioc-missions .uses{ margin-top:auto; padding-top:18px; display:flex; flex-wrap:wrap; gap:6px; }\n.rioc-missions .uses span{ font:600 12.5px\/1 var(--cond); letter-spacing:.06em; text-transform:uppercase; color:var(--text); border:1px solid var(--line); padding:7px 9px; }\n\n\/* ---------- FLIGHT (safety \/ transmission) ---------- *\/\n.rioc-flight{ display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:0; border:1px solid var(--line); }\n.rioc-flight .shot{ position:relative; min-height:360px; } .rioc-flight .shot .rioc-ph, .rioc-flight .shot .rioc-media{ position:absolute; inset:0; height:100%; aspect-ratio:auto; min-height:360px; border:0; }\n.rioc-flight ul{ display:grid; }\n.rioc-flight li{ padding:22px 24px; border-top:1px solid var(--line); background:var(--ink-2); display:grid; grid-template-columns:auto 1fr; gap:18px; align-items:baseline; }\n.rioc-flight li:first-child{ border-top:0; }\n.rioc-flight b{ font:800 34px\/1 var(--cond); color:var(--red); letter-spacing:-.02em; min-width:84px; }\n.rioc-flight b small{ font-size:.42em; color:var(--muted); font-weight:600; }\n.rioc-flight h4{ font:600 17px\/1.25 var(--sans); }\n.rioc-flight p{ color:var(--muted); font-size:14.5px; margin-top:4px; }\n\n\/* ---------- COMPARE ---------- *\/\n.rioc-vs table{ width:100%; border-collapse:collapse; font-size:15px; }\n.rioc-vs th, .rioc-vs td{ text-align:left; padding:14px 12px; border-bottom:1px solid var(--line); vertical-align:top; }\n.rioc-vs th{ font:700 15px\/1 var(--cond); letter-spacing:.08em; text-transform:uppercase; color:#d8e6ec; background:var(--teal-2); }\n.rioc-vs th:nth-child(2){ color:var(--brand); }\n.rioc-vs td:first-child{ color:var(--muted); width:28%; }\n.rioc-vs td:nth-child(2){ color:var(--text); font-weight:500; }\n.rioc-vs td:nth-child(3){ color:var(--muted); }\n.rioc-vs .scroll{ overflow-x:auto; }\n.rioc-vs .verdict{ margin-top:22px; padding:18px 20px; border-left:3px solid var(--red); color:var(--muted); font-size:15.5px; background:var(--ink-2); }\n.rioc-vs .verdict b{ color:var(--text); }\n.rioc-vs th a{ color:inherit; text-decoration:none; border-bottom:1px solid currentColor; }\n.rioc-vs .alt-link{ margin-top:16px; font-size:15px; }\n.rioc-vs .alt-link a{ color:var(--brand); font-weight:600; text-decoration:none; }\n.rioc-vs .alt-link a:hover{ color:var(--heat-5); }\n\n\/* ---------- SPEC PLATE ---------- *\/\n.rioc-spec{ display:grid; grid-template-columns:repeat(3,1fr); gap:0 40px; }\n.rioc-spec dt{ font:700 14px\/1 var(--cond); letter-spacing:.1em; text-transform:uppercase; color:var(--red); padding:24px 0 10px; border-bottom:1px solid var(--line); margin-bottom:6px; }\n.rioc-spec dd{ display:flex; justify-content:space-between; gap:16px; padding:9px 0; border-bottom:1px solid rgba(42,42,49,.6); font-size:14.5px; }\n.rioc-spec dd span{ color:var(--muted); }\n.rioc-spec dd b{ font-weight:500; text-align:right; }\n\n\/* ---------- IN THE BOX ---------- *\/\n.rioc-boxwrap{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-boxwrap .shot{ position:relative; min-height:320px; } .rioc-boxwrap .shot .rioc-ph, .rioc-boxwrap .shot .rioc-media{ position:absolute; inset:0; height:100%; aspect-ratio:auto; min-height:320px; border:0; object-fit:contain; background:#fff; padding:2px; }\n.rioc-boxzoom{ position:absolute; inset:0; display:block; cursor:zoom-in; }\n.rioc-boxzoom span{ position:absolute; right:10px; bottom:10px; z-index:1; font:700 11px\/1 var(--cond); letter-spacing:.12em; text-transform:uppercase; color:#fff; background:rgba(10,12,15,.78); padding:7px 10px; border-radius:3px; pointer-events:none; }\n.rioc-boxzoom:hover span{ background:var(--brand); }\n.rioc-box{ display:grid; grid-template-columns:1fr 1fr; gap:2px; background:var(--line); }\n.rioc-box li{ background:var(--ink-2); padding:14px 18px; font-size:14.5px; display:flex; justify-content:space-between; gap:12px; }\n.rioc-box li b{ color:var(--muted); font:600 14px\/1.6 var(--cond); letter-spacing:.06em; }\n\n\/* ---------- ACCESSORIES ---------- *\/\n.rioc-acc{ display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-acc li{ background:var(--ink); display:flex; flex-direction:column; }\n.rioc-acc .shot .rioc-ph, .rioc-acc .shot .rioc-media{ aspect-ratio:1; border:0; border-bottom:1px solid var(--line); background:#fff; object-fit:contain; padding:10px; }\n.rioc-acc .body{ padding:18px 18px 20px; display:flex; flex-direction:column; flex:1; }\n.rioc-acc .tag{ font:600 12px\/1 var(--cond); letter-spacing:.12em; text-transform:uppercase; color:var(--blue-l); }\n.rioc-acc li.key .tag{ color:var(--green); }\n.rioc-acc h4{ font:600 17px\/1.25 var(--sans); margin-top:8px; }\n.rioc-acc p{ color:var(--muted); font-size:14px; margin-top:6px; }\n.rioc-acc a{ margin-top:auto; padding-top:16px; text-decoration:none; font:700 14px\/1 var(--cond); letter-spacing:.1em; text-transform:uppercase; color:var(--brand); display:inline-flex; gap:8px; align-items:center; }\n.rioc-acc a::after{ content:\"→\"; transition:transform .2s; } .rioc-acc a:hover{ color:var(--green); } .rioc-acc a:hover::after{ transform:translateX(4px); }\n.rioc-acc li.key{ background:var(--ink-2); box-shadow:inset 0 3px 0 var(--green); }\n\n\/* ---------- SOFTWARE \/ WORKFLOW ---------- *\/\n.rioc-flow{ display:grid; grid-template-columns:repeat(4,1fr); gap:0; counter-reset:step; position:relative; }\n.rioc-flow::before{ content:\"\"; position:absolute; left:0; right:0; top:22px; height:1px; background:linear-gradient(90deg, var(--teal), var(--blue), var(--teal)); opacity:.8; }\n.rioc-flow li{ padding:0 24px 0 0; position:relative; counter-increment:step; }\n.rioc-flow li::before{ content:counter(step,decimal-leading-zero); display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:var(--navy); border:1.5px solid var(--red); font:700 15px\/1 var(--cond); color:var(--brand); position:relative; z-index:1; }\n.rioc-flow .stage{ font:600 13px\/1 var(--cond); letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin-top:20px; }\n.rioc-flow h4{ font:700 26px\/1 var(--cond); margin-top:8px; letter-spacing:-.01em; }\n.rioc-flow p{ color:var(--muted); font-size:14.5px; margin-top:10px; max-width:30ch; }\n.rioc-flow ul{ margin-top:14px; display:grid; gap:6px; }\n.rioc-flow ul li{ counter-increment:none; padding:0; font-size:13.5px; color:var(--text); display:flex; gap:8px; }\n.rioc-flow ul li::before{ content:\"\"; width:6px; height:6px; border-radius:0; border:0; background:var(--red); transform:rotate(45deg); margin-top:7px; flex:none; position:static; display:block; }\n.rioc-soft-shot{ margin-top:40px; }\n\n\/* ---------- DOWNLOADS ---------- *\/\n.rioc-dl{ display:grid; grid-template-columns:1fr 1fr; gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-dl a{ background:var(--ink); padding:20px 22px; text-decoration:none; display:grid; grid-template-columns:52px 1fr auto; gap:16px; align-items:center; transition:background .2s; }\n.rioc-dl a:hover{ background:var(--teal-2); }\n.rioc-dl .type{ font:800 12px\/1 var(--cond); letter-spacing:.1em; color:#fff; background:var(--red); padding:7px 0; text-align:center; }\n.rioc-dl .type.ext{ background:transparent; color:var(--brand); border:1.5px solid var(--red); }\n.rioc-dl h4{ font:600 16px\/1.25 var(--sans); }\n.rioc-dl p{ color:var(--muted); font-size:13.5px; margin-top:3px; }\n.rioc-dl .arrow{ font:600 22px\/1 var(--cond); color:var(--brand); }\n.rioc-dl-note{ margin-top:16px; color:var(--dim); font-size:13.5px; }\n\n\/* ---------- FAQ (native \u003cdetails\u003e, no JS) ---------- *\/\n.rioc-faq details{ border-top:1px solid var(--line); }\n.rioc-faq details:last-child{ border-bottom:1px solid var(--line); }\n.rioc-faq summary{ list-style:none; cursor:pointer; padding:20px 0; display:grid; grid-template-columns:1fr auto; gap:20px; align-items:center; font:600 18px\/1.3 var(--sans); }\n.rioc-faq summary::-webkit-details-marker{ display:none; }\n.rioc-faq summary::after{ content:\"+\"; font:600 28px\/1 var(--cond); color:var(--accent); transition:transform .25s; }\n.rioc-faq details[open] summary::after{ transform:rotate(45deg); }\n.rioc-faq summary:focus-visible{ outline:2px solid var(--brand); outline-offset:4px; }\n.rioc-faq details p{ color:var(--muted); font-size:15.5px; padding:0 0 22px; max-width:70ch; }\n\n\/* ---------- DRONE NERDS ---------- *\/\n.rioc-dn{ background:linear-gradient(180deg, var(--navy), var(--ink)); }\n.rioc-dn .grid{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:40px; align-items:start; }\n.rioc-dn h3{ font:800 clamp(40px,6vw,76px)\/.92 var(--cond); text-transform:uppercase; letter-spacing:-.02em; }\n.rioc-dn h3 span{ color:var(--brand); }\n.rioc-dn .pitch{ color:var(--muted); font-size:17px; max-width:48ch; margin-top:20px; }\n.rioc-dn ul li{ padding:18px 0; border-top:1px solid var(--line); display:grid; grid-template-columns:34px 1fr; gap:14px; }\n.rioc-dn ul li::before{ content:\"\"; width:22px; height:22px; margin-top:2px; border:1.5px solid var(--green); border-radius:50%;\n  background:linear-gradient(var(--green),var(--green)) center\/10px 1.5px no-repeat, linear-gradient(var(--green),var(--green)) center\/1.5px 10px no-repeat; }\n.rioc-dn ul h4{ font:600 17px\/1.25 var(--sans); }\n.rioc-dn ul p{ color:var(--muted); font-size:14.5px; margin-top:4px; }\n.rioc-dn .cta{ display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }\n.rioc-dn .cta a, .rioc-dn .cta .rioc-quote{ background:none; cursor:pointer; font-family:var(--cond); text-decoration:none; font:700 16px\/1 var(--cond); letter-spacing:.08em; text-transform:uppercase; padding:16px 22px; border:1.5px solid var(--red); color:var(--text); transition:background .2s, color .2s; }\n.rioc-dn .cta a.pri{ background:var(--red); border-color:var(--red); color:#fff; }\n.rioc-dn .cta a:hover, .rioc-dn .cta .rioc-quote:hover{ background:var(--red-2); color:#fff; border-color:var(--red-2); }\n.rioc-dn .cta a:focus-visible, .rioc-dn .cta .rioc-quote:focus-visible{ outline:2px solid var(--brand); outline-offset:3px; }\n.rioc-dn .shot{ margin-top:28px; }\n\n\/* ---------- MOTION ---------- *\/\n@keyframes rioc-breathe{ from{ transform:scale(1) translate(0,0);} to{ transform:scale(1.08) translate(-3%,2%);} }\n@keyframes rioc-pulse{ 0%,100%{ box-shadow:0 0 0 0 rgba(255,230,107,0);} 50%{ box-shadow:0 0 0 6px rgba(59,176,224,.14), 0 0 36px rgba(59,176,224,.3);} }\n@keyframes rioc-scan{ to{ transform:translateY(600%);} }\n@keyframes rioc-marq{ to{ transform:translateX(-50%);} }\n@keyframes rioc-in{ from{ opacity:0; transform:translateY(28px);} to{ opacity:1; transform:none;} }\n@keyframes rioc-count{ from{ --rioc-n:0; opacity:1; } 99%{ opacity:1; } to{ opacity:0; } }\n@keyframes rioc-zoomin{ from{ opacity:0; transform:scale(1.9);} to{ opacity:1; transform:none;} }\n@keyframes rioc-wipe{ from{ --rioc-cut:100%; } to{ --rioc-cut:50%; } }\n@keyframes rioc-rise{ from{ opacity:0; transform:translateY(56px);} to{ opacity:1; transform:none;} }\n\n\/* a) hero sequence: scroll-driven where supported, page-load elsewhere *\/\n.rioc-hero .kicker, .rioc-hero h2, .rioc-hero .lede, .rioc-stats \u003e div{ animation:rioc-in .9s cubic-bezier(.2,.7,.2,1) both; }\n.rioc-hero .kicker{ animation-delay:.1s; } .rioc-hero h2{ animation-delay:.25s; } .rioc-hero .lede{ animation-delay:.45s; }\n.rioc-stats \u003e div:nth-child(1){ animation-delay:.6s; } .rioc-stats \u003e div:nth-child(2){ animation-delay:.72s; }\n.rioc-stats \u003e div:nth-child(3){ animation-delay:.84s; } .rioc-stats \u003e div:nth-child(4){ animation-delay:.96s; }\n@supports (animation-timeline: view()) and (counter-reset: riocn var(--rioc-n)) {\n  .rioc-stats b.n .v{ animation:rioc-hide 1.8s step-end both; animation-delay:inherit; }\n  .rioc-stats b.n::before{ counter-reset:riocn var(--rioc-n); content:counter(riocn); position:absolute; left:0; top:0; animation:rioc-count 1.8s cubic-bezier(.1,.6,.2,1) both; animation-delay:inherit; }\n}\n@supports (animation-timeline: view()) {\n  \/* text and KPI tiles rise as the hero scrolls into view *\/\n  .rioc-hero .kicker, .rioc-hero h2, .rioc-hero .lede, .rioc-stats \u003e div{ animation:rioc-in linear both; animation-timeline:view(); animation-delay:0s; }\n  .rioc-hero .kicker{ animation-range:entry 0% entry 35%; } .rioc-hero h2{ animation-range:entry 0% entry 45%; } .rioc-hero .lede{ animation-range:entry 0% entry 55%; }\n  .rioc-stats \u003e div:nth-child(1){ animation-range:entry 0% entry 40%; } .rioc-stats \u003e div:nth-child(2){ animation-range:entry 0% entry 50%; }\n  .rioc-stats \u003e div:nth-child(3){ animation-range:entry 0% entry 60%; } .rioc-stats \u003e div:nth-child(4){ animation-range:entry 0% entry 70%; }\n  \/* KPI numbers count up as the band enters, then hand off to the real text *\/\n  .rioc-stats b.n .v{ animation:rioc-hide linear both; animation-timeline:view(); animation-range:entry 0% entry 90%; animation-delay:0s; }\n  .rioc-stats b.n::before{ animation:rioc-count linear both; animation-timeline:view(); animation-range:entry 0% entry 90%; animation-delay:0s; }\n}\n@keyframes rioc-hide{ from{ opacity:0; } 99%{ opacity:0; } to{ opacity:1; } }\n\n\/* b) scroll-driven (progressively enhanced) *\/\n@supports (animation-timeline: view()) {\n  .rioc-sec header, .rioc-flight, .rioc-array, .rioc-missions li, .rioc-therm-grid li, .rioc-boxwrap, .rioc-acc li, .rioc-flow \u003e li, .rioc-dl a{ animation:rioc-rise linear both; animation-timeline:view(); animation-range:entry 0% entry 45%; }\n  .rioc-missions li:nth-child(2){ animation-range:entry 10% entry 50%; } .rioc-missions li:nth-child(3){ animation-range:entry 20% entry 60%; } .rioc-missions li:nth-child(4){ animation-range:entry 30% entry 70%; }\n  .rioc-ladder .f70{ animation:rioc-zoomin linear both; animation-timeline:view(); animation-range:entry 30% cover 45%; }\n  .rioc-ladder .f168{ animation:rioc-zoomin linear both, rioc-pulse 3.6s ease-in-out infinite; animation-timeline:view(), auto; animation-range:entry 45% cover 60%, normal; }\n  .rioc-split{ animation:rioc-wipe linear both; animation-timeline:view(); animation-range:entry 20% cover 55%; }\n}\n\n@media (prefers-reduced-motion: reduce){\n  .rioc *, .rioc *::before, .rioc *::after{ animation:none !important; transition:none !important; }\n  .rioc-stats b.n::before{ display:none; }\n}\n\n\/* ---------- RESPONSIVE ---------- *\/\n@media (max-width:980px){ .rioc-acc{ grid-template-columns:1fr 1fr; } .rioc-flow{ grid-template-columns:1fr 1fr; gap:36px 0; } .rioc-flow::before{ display:none; } }\n@media (max-width:980px){ .rioc-array, .rioc-array--4{ grid-template-columns:repeat(2,1fr); } .rioc-therm-grid{ grid-template-columns:repeat(6,1fr); } .rioc-therm-grid li:nth-child(n+4){ grid-column:span 3; } }\n@media (max-width:900px){ .rioc-missions{ grid-template-columns:1fr 1fr; } .rioc-spec{ grid-template-columns:1fr 1fr; } }\n@media (max-width:860px){ .rioc-zoom, .rioc-dn .grid, .rioc-flight, .rioc-boxwrap{ grid-template-columns:1fr; } .rioc-flight .shot, .rioc-boxwrap .shot{ min-height:0; aspect-ratio:16\/9; } .rioc-flight .shot .rioc-ph, .rioc-boxwrap .shot .rioc-ph, .rioc-flight .shot .rioc-media, .rioc-boxwrap .shot .rioc-media{ min-height:0; } }\n@media (max-width:760px){\n  .rioc-sec header{ grid-template-columns:1fr; }\n  \/* full-bleed on phones: escape the theme container gutters *\/\n  .rioc{ width:100vw; max-width:100vw; position:relative; left:50%; margin-left:-50vw; margin-right:-50vw; border-radius:0; }\n}\n@media (max-width:720px){ .rioc-stats{ grid-template-columns:1fr 1fr; } .rioc-stats \u003e div:nth-child(3){ border-left:0; padding-left:0; } .rioc-stats \u003e div:nth-child(n+3){ border-top:1px solid var(--line); } .rioc-hero{ min-height:0; padding-top:150px; } }\n@media (max-width:560px){\n  .rioc-array, .rioc-array--4{ grid-template-columns:repeat(2,1fr); } .rioc-array li{ min-height:0; padding:18px 14px; }\n  .rioc-therm-grid{ grid-template-columns:1fr 1fr; } .rioc-therm-grid li, .rioc-therm-grid li:nth-child(n+4){ grid-column:span 1; } .rioc-therm-grid li:last-child{ grid-column:1\/-1; }\n  .rioc-ladder .f168{ inset:37% 36%; font-size:11px; } .rioc-ladder .f70{ font-size:11px; }\n  \/* compare table -\u003e stacked cards *\/\n  .rioc-vs thead{ display:none; } .rioc-vs table, .rioc-vs tbody, .rioc-vs tr, .rioc-vs td{ display:block; width:auto; }\n  .rioc-vs tr{ border-bottom:1px solid var(--line); padding:14px 0; } .rioc-vs td{ border:0; padding:3px 0; }\n  .rioc-vs td:first-child{ width:auto; font:700 13px\/1 var(--cond); letter-spacing:.1em; text-transform:uppercase; color:var(--red); padding-bottom:8px; }\n  .rioc-vs td:nth-child(2)::before{ content:'iO + Charging Case  '; font:700 12px\/1 var(--cond); letter-spacing:.1em; color:var(--brand); }\n  .rioc-vs td:nth-child(3)::before{ content:'iO  '; font:700 12px\/1 var(--cond); letter-spacing:.1em; color:var(--muted); }\n  .rioc-vs td:nth-child(4)::before{ content:'X3 Pro  '; font:700 12px\/1 var(--cond); letter-spacing:.1em; color:var(--muted); }\n  .rioc-missions{ grid-template-columns:1fr; } .rioc-missions .shot, .rioc-missions .shot .rioc-ph, .rioc-missions .shot .rioc-media{ aspect-ratio:16\/9; }\n  .rioc-acc{ grid-template-columns:1fr 1fr; } .rioc-acc .body{ padding:14px; } .rioc-acc h4{ font-size:15px; } .rioc-acc p{ font-size:13px; } .rioc-acc a{ font-size:12px; letter-spacing:.06em; }\n  .rioc-flow{ grid-template-columns:1fr; } .rioc-dl{ grid-template-columns:1fr; } .rioc-dl a{ grid-template-columns:48px 1fr auto; padding:16px; }\n  .rioc-spec{ grid-template-columns:1fr; } .rioc-box{ grid-template-columns:1fr; }\n  .rioc-zoom ol li{ grid-template-columns:72px 1fr; } .rioc-zoom ol b{ font-size:36px; }\n  .rioc-split .hud.tr, .rioc-split .hud.br{ display:none; }\n  .rioc-dn .cta a{ width:100%; text-align:center; }\n}\n\n.rioc-array--4{ grid-template-columns:repeat(4,1fr); }\n.rioc-vid{ width:100%; aspect-ratio:16\/9; object-fit:cover; display:block; border:1px solid var(--line); background:#000; }\n.rioc-vid.r-21x9{ aspect-ratio:21\/9; }\n.rioc-mounts{ display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:var(--line); border:1px solid var(--line); margin-top:28px; }\n.rioc-mounts li{ background:var(--ink); padding:22px 20px; }\n.rioc-mounts .tag{ font:600 12px\/1 var(--cond); letter-spacing:.14em; text-transform:uppercase; color:var(--green); }\n.rioc-mounts h4{ font:800 22px\/1.05 var(--cond); letter-spacing:-.01em; margin:10px 0 8px; }\n.rioc-mounts p{ color:var(--muted); font-size:14px; margin:0; }\n.rioc-note{ margin-top:18px; padding:16px 18px; border-left:3px solid var(--blue-l); background:var(--ink-2); color:var(--muted); font-size:14.5px; }\n.rioc-note b{ color:var(--text); }\n@media (max-width:980px){ .rioc-array--4, .rioc-mounts{ grid-template-columns:repeat(2,1fr); } }\n\/* ---------- GT MAX ADDITIONS ---------- *\/\n.rioc-cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-cards li{ background:var(--ink); display:flex; flex-direction:column; }\n.rioc-cards .shot{ aspect-ratio:16\/10; overflow:hidden; border-bottom:1px solid var(--line); background:var(--ink-2); }\n.rioc-cards .shot img, .rioc-cards .shot video{ width:100%; height:100%; object-fit:cover; display:block; }\n.rioc-cards .body{ padding:20px 22px 24px; }\n.rioc-cards .tag{ font:600 12px\/1 var(--cond); letter-spacing:.14em; text-transform:uppercase; color:var(--green); }\n.rioc-cards h4{ font:800 clamp(24px,2.8vw,32px)\/1 var(--cond); letter-spacing:-.01em; margin:8px 0 6px; text-transform:uppercase; }\n.rioc-cards p{ color:var(--muted); font-size:14.5px; margin:0; }\n.rioc-size{ display:grid; grid-template-columns:repeat(2,1fr); gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-size \u003e div{ background:var(--ink); padding:24px 22px; position:relative; }\n.rioc-size \u003e div.on{ background:var(--ink-2); box-shadow:inset 0 3px 0 var(--green); }\n.rioc-size b{ display:block; font:800 54px\/1 var(--cond); letter-spacing:-.02em; color:var(--muted); }\n.rioc-size .on b{ color:var(--brand); }\n.rioc-size span{ display:block; font:700 15px\/1.2 var(--cond); letter-spacing:.06em; text-transform:uppercase; margin-top:10px; }\n.rioc-size small{ display:block; color:var(--muted); font-size:13.5px; margin-top:6px; }\n.rioc-size .here{ position:absolute; top:16px; right:16px; font:700 11px\/1 var(--cond); letter-spacing:.12em; text-transform:uppercase; color:#04140d; background:var(--green); padding:6px 8px; }\n.rioc-size a{ color:var(--brand); font:700 14px\/1 var(--cond); letter-spacing:.08em; text-transform:uppercase; text-decoration:none; display:inline-block; margin-top:12px; }\n.rioc-size a:hover{ color:var(--green); }\n.rioc-ipd{ margin-top:18px; display:grid; grid-template-columns:1fr auto; gap:18px; align-items:center; padding:18px 20px; border-left:3px solid var(--blue-l); background:var(--ink-2); color:var(--muted); font-size:14.5px; }\n.rioc-ipd b{ color:var(--text); }\n.rioc-ipd a{ white-space:nowrap; text-decoration:none; font:700 15px\/1 var(--cond); letter-spacing:.08em; text-transform:uppercase; padding:14px 18px; border:1.5px solid var(--blue-l); color:var(--text); }\n.rioc-ipd a:hover{ background:var(--teal-2); }\n.rioc-compat{ display:grid; grid-template-columns:repeat(2,1fr); gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-compat \u003e div{ background:var(--ink); padding:24px 22px; }\n.rioc-compat .tag{ font:600 12px\/1 var(--cond); letter-spacing:.14em; text-transform:uppercase; color:var(--green); }\n.rioc-compat h4{ font:800 clamp(24px,2.8vw,32px)\/1 var(--cond); margin:8px 0 14px; text-transform:uppercase; letter-spacing:-.01em; }\n.rioc-compat li{ padding:11px 0; border-top:1px solid var(--line); font-size:15px; }\n.rioc-compat li small{ display:block; color:var(--muted); font-size:13.5px; margin-top:3px; }\n.rioc-compat-note{ margin-top:14px; color:var(--muted); font-size:13.5px; }\n.rioc-kit{ display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-kit li{ background:var(--ink); padding:22px; }\n.rioc-kit .qty{ font:800 40px\/1 var(--cond); color:var(--brand); }\n.rioc-kit .qty small{ font-size:.45em; color:var(--muted); margin-left:4px; }\n.rioc-kit h4{ font:600 18px\/1.25 var(--sans); margin-top:8px; }\n.rioc-kit p{ color:var(--muted); font-size:14.5px; margin-top:6px; }\n.rioc-reviews{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }\n.rioc-reviews a{ display:block; text-decoration:none; color:var(--text); border:1px solid var(--line); background:var(--ink); transition:border-color .2s; }\n.rioc-reviews a:hover{ border-color:var(--brand); }\n.rioc-reviews .shot{ position:relative; aspect-ratio:16\/9; overflow:hidden; background:#000; }\n.rioc-reviews .shot img{ width:100%; height:100%; object-fit:cover; display:block; opacity:.85; }\n.rioc-reviews .shot::after{ content:\"▶\"; position:absolute; inset:0; display:grid; place-items:center; font-size:34px; color:#fff; text-shadow:0 2px 12px rgba(0,0,0,.6); }\n.rioc-reviews .body{ padding:14px 16px 16px; }\n.rioc-reviews h4{ font:600 15.5px\/1.3 var(--sans); }\n.rioc-reviews span{ display:block; color:var(--muted); font-size:13px; margin-top:6px; }\n@media (max-width:1100px){ .rioc-kit{ grid-template-columns:repeat(2,1fr); } }\n@media (max-width:860px){ .rioc-cards, .rioc-size, .rioc-compat, .rioc-kit, .rioc-reviews{ grid-template-columns:1fr; } .rioc-ipd{ grid-template-columns:1fr; } }\n.rioc-player{ background:#000; cursor:pointer; }\n.rioc-cards .shot{ position:relative; }\n.rioc-cardzoom{ display:block; width:100%; height:100%; }\n.rioc-cardzoom span{ position:absolute; right:12px; bottom:12px; z-index:1; background:rgba(9,9,11,.82); color:#fff; font:600 12px\/1 var(--cond); letter-spacing:.08em; text-transform:uppercase; padding:8px 10px; border-radius:8px; transition:background .2s; }\n.rioc-cardzoom:hover span{ background:var(--brand); }\n.rioc-twocol{ display:grid; grid-template-columns:1fr 1fr; gap:2px; background:var(--line); border:1px solid var(--line); }\n.rioc-twocol \u003e div{ background:var(--ink); padding:24px 26px; }\n.rioc-twocol h4{ font:800 22px\/1.1 var(--cond); text-transform:uppercase; margin:0 0 8px; color:#fff; }\n.rioc-twocol p{ margin:0; color:var(--muted); font-size:15px; line-height:1.55; }\n@media (max-width:760px){ .rioc-twocol{ grid-template-columns:1fr; } }\n.rioc-playwrap{ position:relative; overflow:hidden; background:#000; border:1px solid var(--line); aspect-ratio:21\/9; }\n@media (max-width:640px){ .rioc-playwrap{ aspect-ratio:16\/9; } }\n.rioc-playwrap .rioc-player{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }\n.rioc-playbtn{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; border:0; cursor:pointer; color:#fff;\n  background:linear-gradient(180deg, rgba(9,9,11,.15), rgba(9,9,11,.55)); transition:background .2s; font:inherit; }\n.rioc-playbtn:hover{ background:linear-gradient(180deg, rgba(9,9,11,.05), rgba(9,9,11,.45)); }\n.rioc-playbtn i{ width:92px; height:92px; border-radius:50%; background:rgba(255,255,255,.95); box-shadow:0 10px 40px rgba(0,0,0,.45); position:relative; transition:transform .2s; }\n.rioc-playbtn i::after{ content:\"\"; position:absolute; left:52%; top:50%; transform:translate(-50%,-50%); border-style:solid; border-width:16px 0 16px 26px; border-color:transparent transparent transparent #09090b; }\n.rioc-playbtn:hover i{ transform:scale(1.07); }\n.rioc-playbtn span{ font:700 15px\/1 var(--cond); letter-spacing:.14em; text-transform:uppercase; background:rgba(9,9,11,.75); padding:10px 14px; border-radius:8px; }\n.rioc-playwrap.is-playing .rioc-playbtn{ display:none; }\n@media (max-width:640px){ .rioc-playbtn i{ width:68px; height:68px; } .rioc-playbtn i::after{ border-width:12px 0 12px 19px; } }\n.rioc-lb{ position:fixed; inset:0; z-index:99999; display:none; align-items:center; justify-content:center; background:rgba(5,5,7,.92); cursor:zoom-out; padding:24px; }\n.rioc-lb.open{ display:flex; }\n.rioc-lb img{ max-width:min(94vw,1800px); max-height:90vh; width:auto; height:auto; object-fit:contain; box-shadow:0 20px 60px rgba(0,0,0,.6); }\n.rioc-lb button{ position:absolute; top:16px; right:18px; width:44px; height:44px; border:1px solid rgba(255,255,255,.4); border-radius:8px; background:rgba(9,9,11,.7); color:#fff; font-size:22px; line-height:1; cursor:pointer; }\n\u003c\/style\u003e\n\n\u003csection class=\"rioc\"\u003e\n\u003c!-- ==== SECTION: HERO ==== --\u003e\n  \u003cdiv class=\"rioc-hero\"\u003e\n    \u003cdiv class=\"media\"\u003e\u003cvideo class=\"rioc-media\" autoplay muted loop playsinline preload=\"metadata\" poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0761\/3556\/3580\/files\/kv_3.webp?v=1794421065\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/3e129ad0033142539d0e80a19cbc2370.mp4\" aria-label=\"RayNeo iO AI smart glasses\"\u003e\u003c\/video\u003e\u003c\/div\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cdiv class=\"kicker\"\u003eRayNeo · iO AI Glasses · Charging Case Bundle · Polar Night\u003c\/div\u003e\n      \u003ch2\u003eRayNeo iO \u003cspan\u003eYour next glasses think ahead.\u003c\/span\u003e\n\u003c\/h2\u003e\n      \u003cp class=\"lede\"\u003e33-gram AI glasses with an invisible display. A 33-inch-equivalent transparent screen floats in your view for AI answers, live captions and translation in 55 languages, notes and notifications, so your phone stays in your pocket. No camera, up to two days of everyday use, and IP54 for daily life. This bundle adds the eyewear charging case, which tops up your iO up to five full times on the go.\u003c\/p\u003e\n      \u003cdiv class=\"rioc-stats\"\u003e\n        \u003cdiv\u003e\n\u003cb class=\"n\" style=\"--rioc-n:33\"\u003e\u003cspan class=\"v\"\u003e33\u003c\/span\u003e\u003csmall\u003eg\u003c\/small\u003e\u003c\/b\u003e\u003cspan\u003eUltra-light frame\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv\u003e\n\u003cb class=\"n\" style=\"--rioc-n:33\"\u003e\u003cspan class=\"v\"\u003e33\u003c\/span\u003e\u003csmall\u003ein\u003c\/small\u003e\u003c\/b\u003e\u003cspan\u003eTransparent display (equivalent)\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv\u003e\n\u003cb class=\"n\" style=\"--rioc-n:55\"\u003e\u003cspan class=\"v\"\u003e55\u003c\/span\u003e\u003csmall\u003elanguages\u003c\/small\u003e\u003c\/b\u003e\u003cspan\u003eLive captions and translation\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv\u003e\n\u003cb class=\"n\" style=\"--rioc-n:5\"\u003e\u003cspan class=\"v\"\u003e5\u003c\/span\u003e\u003csmall\u003e×\u003c\/small\u003e\u003c\/b\u003e\u003cspan\u003eFull recharges from the case\u003c\/span\u003e\n\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: MARQUEE ==== --\u003e\n  \u003cdiv class=\"rioc-marq\" aria-hidden=\"true\"\u003e\n    \u003cdiv class=\"track\"\u003e\n      \u003cul\u003e\n\u003cli\u003eLive translation\u003c\/li\u003e\n\u003cli\u003eMeeting notes\u003c\/li\u003e\n\u003cli\u003eTeleprompter\u003c\/li\u003e\n\u003cli\u003eNotifications\u003c\/li\u003e\n\u003cli\u003eGemini\u003c\/li\u003e\n\u003cli\u003eLifelog\u003c\/li\u003e\n\u003cli\u003eTravel\u003c\/li\u003e\n\u003cli\u003ePresentations\u003c\/li\u003e\n\u003cli\u003eNo camera\u003c\/li\u003e\n\u003c\/ul\u003e\n      \u003cul\u003e\n\u003cli\u003eLive translation\u003c\/li\u003e\n\u003cli\u003eMeeting notes\u003c\/li\u003e\n\u003cli\u003eTeleprompter\u003c\/li\u003e\n\u003cli\u003eNotifications\u003c\/li\u003e\n\u003cli\u003eGemini\u003c\/li\u003e\n\u003cli\u003eLifelog\u003c\/li\u003e\n\u003cli\u003eTravel\u003c\/li\u003e\n\u003cli\u003ePresentations\u003c\/li\u003e\n\u003cli\u003eNo camera\u003c\/li\u003e\n\u003c\/ul\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: DISPLAY ==== --\u003e\n  \u003cdiv class=\"rioc-sec\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cheader\u003e\n        \u003ch3\u003e\"Hey, RayNeo.\"\u003cbr\u003eAnswers in your view.\u003c\/h3\u003e\n        \u003cp\u003eAn all-day voice assistant on a display only you can see. Ask a question, manage your day and stay connected, completely hands-free.\u003c\/p\u003e\n      \u003c\/header\u003e\n      \u003cul class=\"rioc-array rioc-array--4\"\u003e\n        \u003cli style=\"--c:var(--brand)\"\u003e\n\u003cdiv class=\"name\"\u003eDisplay\u003c\/div\u003e\n\u003cdiv class=\"big\"\u003e33\u003csmall\u003ein\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"sub\"\u003e\n\u003cb\u003eEquivalent at 2 m\u003c\/b\u003e · binocular MicroLED\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli style=\"--c:var(--teal)\"\u003e\n\u003cdiv class=\"name\"\u003eTransparency\u003c\/div\u003e\n\u003cdiv class=\"big\"\u003e97\u003csmall\u003e%\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"sub\"\u003e\n\u003cb\u003eBlue Lake waveguide\u003c\/b\u003e · looks like glasses\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli style=\"--c:var(--green)\"\u003e\n\u003cdiv class=\"name\"\u003eBrightness\u003c\/div\u003e\n\u003cdiv class=\"big\"\u003e1300\u003csmall\u003enits\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"sub\"\u003e\n\u003cb\u003eAt eye level\u003c\/b\u003e · monochrome green\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli style=\"--c:#ecebe6\"\u003e\n\u003cdiv class=\"name\"\u003eField of view\u003c\/div\u003e\n\u003cdiv class=\"big\"\u003e23.5\u003csmall\u003e°\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"sub\"\u003e\n\u003cb\u003eHeads-up\u003c\/b\u003e · no looking down\u003c\/div\u003e\n\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cdiv class=\"rioc-playwrap r-21x9 rioc-gimbal-shot\"\u003e\n        \u003cvideo class=\"rioc-media rioc-player\" id=\"rioc-vid\" controls playsinline preload=\"metadata\" poster=\"https:\/\/www.dronenerds.com\/cdn\/shop\/files\/4_0320e3cc-1ea0-480e-973c-c9f86a9e129e.webp?v=1794421431\u0026amp;width=2000\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/62b8b15f6e7a48eb8b29a92092c7fc85.mp4\" aria-label=\"RayNeo iO video\"\u003e\u003c\/video\u003e\n        \u003cbutton type=\"button\" class=\"rioc-playbtn\" id=\"rioc-playbtn\" aria-label=\"Play the RayNeo iO video\"\u003e\u003ci aria-hidden=\"true\"\u003e\u003c\/i\u003e\u003cspan\u003eWatch the video\u003c\/span\u003e\u003c\/button\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: AI ==== --\u003e\n  \u003cdiv class=\"rioc-sec alt\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cheader\u003e\n        \u003ch3\u003eTranslate, remember,\u003cbr\u003epresent.\u003c\/h3\u003e\n        \u003cp\u003eThe features people actually use every day, running on the glasses and your phone.\u003c\/p\u003e\n      \u003c\/header\u003e\n      \u003cul class=\"rioc-cards\"\u003e\n        \u003cli\u003e\n\u003cdiv class=\"shot\"\u003e\u003ca class=\"rioc-cardzoom\" href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0761\/3556\/3580\/files\/AI_-2.webp?v=1794421065\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open image full size\"\u003e\u003cimg class=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0761\/3556\/3580\/files\/AI_-2.webp?v=1794421065\" alt=\"Live captions and translation on RayNeo iO\" loading=\"lazy\"\u003e\u003cspan\u003eEnlarge ⤢\u003c\/span\u003e\u003c\/a\u003e\u003c\/div\u003e\n\u003cdiv class=\"body\"\u003e\n\u003cspan class=\"tag\"\u003e55 languages\u003c\/span\u003e\u003ch4\u003eLive translation\u003c\/h4\u003e\n\u003cp\u003eCaptions and translations across 55 languages and 109 accents appear on the lens, synced with the speaker.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli\u003e\n\u003cdiv class=\"shot\"\u003e\u003ca class=\"rioc-cardzoom\" href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0761\/3556\/3580\/files\/AI_-3.webp?v=1794421065\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open image full size\"\u003e\u003cimg class=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0761\/3556\/3580\/files\/AI_-3.webp?v=1794421065\" alt=\"RayNeo iO invisible teleprompter\" loading=\"lazy\"\u003e\u003cspan\u003eEnlarge ⤢\u003c\/span\u003e\u003c\/a\u003e\u003c\/div\u003e\n\u003cdiv class=\"body\"\u003e\n\u003cspan class=\"tag\"\u003eTeleprompter\u003c\/span\u003e\u003ch4\u003eInvisible teleprompter\u003c\/h4\u003e\n\u003cp\u003eYour script lives on the lens and scrolls with your speaking rhythm.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli\u003e\n\u003cdiv class=\"shot\"\u003e\u003ca class=\"rioc-cardzoom\" href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0761\/3556\/3580\/files\/AI_-3_cec2d91c-0e54-4620-8769-f61b26d3a0ef.webp?v=1794421065\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open image full size\"\u003e\u003cimg class=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0761\/3556\/3580\/files\/AI_-3_cec2d91c-0e54-4620-8769-f61b26d3a0ef.webp?v=1794421065\" alt=\"RayNeo iO meeting notes\" loading=\"lazy\"\u003e\u003cspan\u003eEnlarge ⤢\u003c\/span\u003e\u003c\/a\u003e\u003c\/div\u003e\n\u003cdiv class=\"body\"\u003e\n\u003cspan class=\"tag\"\u003eOne tap\u003c\/span\u003e\u003ch4\u003eMeeting notes\u003c\/h4\u003e\n\u003cp\u003eA 4-mic array and bone-conduction sensor capture your voice; press the Smart Crown to highlight key moments.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cdiv class=\"rioc-twocol\" style=\"margin-top:28px\"\u003e\n        \u003cdiv\u003e\n\u003ch4\u003eChoose your AI\u003c\/h4\u003e\n\u003cp\u003eRayNeo AI and Gemini are included free. Other models, including ChatGPT, DeepSeek, Kimi and Qwen, need a VIP subscription (unlimited multi-model access is US$9.99\/month).\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv\u003e\n\u003ch4\u003eLifelog and dashboard\u003c\/h4\u003e\n\u003cp\u003eAll-day audio capture turns your day into a timeline with action items and summaries, and a heads-up dashboard shows schedules, weather and notifications at a glance.\u003c\/p\u003e\n\u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: PRIVACY ==== --\u003e\n  \u003cdiv class=\"rioc-sec\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cheader\u003e\n        \u003ch3\u003eNo camera.\u003cbr\u003ePrivacy by design.\u003c\/h3\u003e\n        \u003cp\u003eSmart assistance without the worry of unwanted recording, for you and the people around you.\u003c\/p\u003e\n      \u003c\/header\u003e\n      \u003cdiv class=\"rioc-flight\"\u003e\n        \u003cdiv class=\"shot\"\u003e\u003cimg class=\"rioc-media\" src=\"https:\/\/www.dronenerds.com\/cdn\/shop\/files\/pc_625140f7-a950-4962-8386-05f31ed72fc0.webp?v=1794421065\u0026amp;width=1600\" alt=\"RayNeo iO privacy by design, no camera\" loading=\"lazy\" style=\"object-fit:cover\"\u003e\u003c\/div\u003e\n        \u003cul\u003e\n          \u003cli\u003e\n\u003cb\u003e0\u003c\/b\u003e\u003cdiv\u003e\n\u003ch4\u003eCameras\u003c\/h4\u003e\n\u003cp\u003eDesigned without a camera, so there's no question of being recorded.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n          \u003cli\u003e\n\u003cb\u003eLocal\u003c\/b\u003e\u003cdiv\u003e\n\u003ch4\u003eAnonymized on-device\u003c\/h4\u003e\n\u003cp\u003eSystem data is anonymized on the glasses before it leaves them, built on Privacy by Design and GDPR principles.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n          \u003cli\u003e\n\u003cb\u003eLED\u003c\/b\u003e\u003cdiv\u003e\n\u003ch4\u003ePrivacy indicator\u003c\/h4\u003e\n\u003cp\u003eA visible light shows when key features are active.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003c\/ul\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: GLASSES ==== --\u003e\n  \u003cdiv class=\"rioc-sec alt\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cheader\u003e\n        \u003ch3\u003eFirst, a great\u003cbr\u003epair of glasses.\u003c\/h3\u003e\n        \u003cp\u003eA classic Crown Panto frame in magnesium-aluminum alloy with titanium temples, light enough to forget you're wearing it.\u003c\/p\u003e\n      \u003c\/header\u003e\n      \u003cul class=\"rioc-therm-grid\"\u003e\n        \u003cli\u003e\n\u003cb\u003e33 g\u003c\/b\u003e\u003ch4\u003eAll-day comfort\u003c\/h4\u003e\n\u003cp\u003eLighter than many everyday frames.\u003c\/p\u003e\n\u003c\/li\u003e\n        \u003cli\u003e\n\u003cb\u003e2 days\u003c\/b\u003e\u003ch4\u003eBattery, plus the case\u003c\/h4\u003e\n\u003cp\u003eUp to 48 hours typical use; the 2,000 mAh case adds up to five full recharges.\u003c\/p\u003e\n\u003c\/li\u003e\n        \u003cli\u003e\n\u003cb\u003eIP54\u003c\/b\u003e\u003ch4\u003eDust and water\u003c\/h4\u003e\n\u003cp\u003eReady for splashes, sweat and dust.\u003c\/p\u003e\n\u003c\/li\u003e\n        \u003cli\u003e\n\u003cb\u003eRx\u003c\/b\u003e\u003ch4\u003ePrescription ready\u003c\/h4\u003e\n\u003cp\u003eThe waveguide works with custom prescription lenses.\u003c\/p\u003e\n\u003c\/li\u003e\n        \u003cli\u003e\n\u003cb\u003eBT 5.4\u003c\/b\u003e\u003ch4\u003eiPhone and Android\u003c\/h4\u003e\n\u003cp\u003eBluetooth 5.4, MFi certified.\u003c\/p\u003e\n\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cimg class=\"rioc-media r-21x9\" src=\"https:\/\/www.dronenerds.com\/cdn\/shop\/files\/1_bfc18338-11a1-4ddf-b09c-a8b287e73e81.webp?v=1794421431\u0026amp;width=2000\" alt=\"RayNeo iO Crown Panto frame\" loading=\"lazy\" style=\"margin-top:28px\"\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: REVIEWS ==== --\u003e\n  \u003cdiv class=\"rioc-sec\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cheader\u003e\n        \u003ch3\u003eWhat reviewers\u003cbr\u003eare saying.\u003c\/h3\u003e\n        \u003cp\u003eIndependent video reviews. Each opens on YouTube in a new tab.\u003c\/p\u003e\n      \u003c\/header\u003e\n      \u003cdiv class=\"rioc-reviews\"\u003e\n        \u003ca href=\"https:\/\/www.youtube.com\/watch?v=NW5xUGRXQV4\" target=\"_blank\" rel=\"noopener\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg src=\"https:\/\/img.youtube.com\/vi\/NW5xUGRXQV4\/hqdefault.jpg\" alt=\"BMF Media RayNeo iO review\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"body\"\u003e\n\u003ch4\u003eThe most practical smart glasses yet?\u003c\/h4\u003e\n\u003cspan\u003eBMF Media\u003c\/span\u003e\n\u003c\/div\u003e\u003c\/a\u003e\n        \u003ca href=\"https:\/\/www.youtube.com\/watch?v=qYd25vua3mw\" target=\"_blank\" rel=\"noopener\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg src=\"https:\/\/img.youtube.com\/vi\/qYd25vua3mw\/hqdefault.jpg\" alt=\"Jeff Springer RayNeo iO review\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"body\"\u003e\n\u003ch4\u003eSmart glasses that look like glasses\u003c\/h4\u003e\n\u003cspan\u003eJeff Springer\u003c\/span\u003e\n\u003c\/div\u003e\u003c\/a\u003e\n        \u003ca href=\"https:\/\/www.youtube.com\/watch?v=dgiEgQj8THc\" target=\"_blank\" rel=\"noopener\"\u003e\u003cdiv class=\"shot\"\u003e\u003cimg src=\"https:\/\/img.youtube.com\/vi\/dgiEgQj8THc\/hqdefault.jpg\" alt=\"Able And His Table RayNeo iO review\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"body\"\u003e\n\u003ch4\u003eCan they replace my phone all day?\u003c\/h4\u003e\n\u003cspan\u003eAble And His Table\u003c\/span\u003e\n\u003c\/div\u003e\u003c\/a\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: COMPARE ==== --\u003e\n  \u003cdiv class=\"rioc-sec alt rioc-vs\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cheader\u003e\n        \u003ch3\u003eWhich RayNeo glasses?\u003c\/h3\u003e\n        \u003cp\u003eiO is lightweight everyday AI with privacy built in. X3 Pro is full-color AR with a camera.\u003c\/p\u003e\n      \u003c\/header\u003e\n      \u003cdiv class=\"scroll\"\u003e\n        \u003ctable\u003e\n          \u003cthead\u003e\u003ctr\u003e\n\u003cth\u003eSpec\u003c\/th\u003e\n\u003cth\u003eiO + Charging Case\u003c\/th\u003e\n\u003cth\u003e\u003ca href=\"https:\/\/www.dronenerds.com\/products\/rayneo-io-plano-lens-black\"\u003eiO →\u003c\/a\u003e\u003c\/th\u003e\n\u003cth\u003e\u003ca href=\"https:\/\/www.dronenerds.com\/products\/rayneo-x3-pro\"\u003eX3 Pro →\u003c\/a\u003e\u003c\/th\u003e\n\u003c\/tr\u003e\u003c\/thead\u003e\n          \u003ctbody\u003e\n            \u003ctr\u003e\n\u003ctd\u003eBest for\u003c\/td\u003e\n\u003ctd\u003eEveryday AI, more time between charges\u003c\/td\u003e\n\u003ctd\u003eEveryday AI and productivity\u003c\/td\u003e\n\u003ctd\u003eImmersive AR and spatial computing\u003c\/td\u003e\n\u003c\/tr\u003e\n            \u003ctr\u003e\n\u003ctd\u003eWeight\u003c\/td\u003e\n\u003ctd\u003e33 g\u003c\/td\u003e\n\u003ctd\u003e33 g\u003c\/td\u003e\n\u003ctd\u003e76 g\u003c\/td\u003e\n\u003c\/tr\u003e\n            \u003ctr\u003e\n\u003ctd\u003eDisplay\u003c\/td\u003e\n\u003ctd\u003eMonochrome green MicroLED\u003c\/td\u003e\n\u003ctd\u003eMonochrome green MicroLED\u003c\/td\u003e\n\u003ctd\u003eFull-color MicroLED\u003c\/td\u003e\n\u003c\/tr\u003e\n            \u003ctr\u003e\n\u003ctd\u003eField of view\u003c\/td\u003e\n\u003ctd\u003e23.5°\u003c\/td\u003e\n\u003ctd\u003e23.5°\u003c\/td\u003e\n\u003ctd\u003e30°\u003c\/td\u003e\n\u003c\/tr\u003e\n            \u003ctr\u003e\n\u003ctd\u003eCamera\u003c\/td\u003e\n\u003ctd\u003eNone\u003c\/td\u003e\n\u003ctd\u003eNone\u003c\/td\u003e\n\u003ctd\u003eYes\u003c\/td\u003e\n\u003c\/tr\u003e\n            \u003ctr\u003e\n\u003ctd\u003eCharging case\u003c\/td\u003e\n\u003ctd\u003eIncluded, 2,000 mAh\u003c\/td\u003e\n\u003ctd\u003eNot included\u003c\/td\u003e\n\u003ctd\u003eNot included\u003c\/td\u003e\n\u003c\/tr\u003e\n          \u003c\/tbody\u003e\n        \u003c\/table\u003e\n      \u003c\/div\u003e\n      \u003cp class=\"verdict\"\u003e\u003cb\u003eRule of thumb:\u003c\/b\u003e away from a charger for days, or traveling? This bundle. Charging every night anyway? iO on its own. Want full-color AR, a camera and spatial apps? X3 Pro.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: SPEC PLATE ==== --\u003e\n  \u003cdiv class=\"rioc-sec\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cheader\u003e\n        \u003ch3\u003eSpecifications\u003c\/h3\u003e\n        \u003cp\u003eManufacturer figures from RayNeo. Battery life varies with usage, features and display time.\u003c\/p\u003e\n      \u003c\/header\u003e\n      \u003cdiv class=\"rioc-spec\"\u003e\n        \u003cdl\u003e\n          \u003cdt\u003eDisplay\u003c\/dt\u003e\n          \u003cdd\u003e\n\u003cspan\u003eType\u003c\/span\u003e\u003cb\u003eBinocular MicroLED + diffractive waveguide\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eOptical engine\u003c\/span\u003e\u003cb\u003eFirefly Nano, 0.085 cc\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eScreen\u003c\/span\u003e\u003cb\u003e33\" equivalent at 2 m\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eColor\u003c\/span\u003e\u003cb\u003eMonochrome (green)\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eField of view\u003c\/span\u003e\u003cb\u003e23.5°\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eBrightness\u003c\/span\u003e\u003cb\u003e1,300 nits at eye level\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eTransparency\u003c\/span\u003e\u003cb\u003e97%\u003c\/b\u003e\n\u003c\/dd\u003e\n        \u003c\/dl\u003e\n        \u003cdl\u003e\n          \u003cdt\u003eFrame and input\u003c\/dt\u003e\n          \u003cdd\u003e\n\u003cspan\u003eWeight\u003c\/span\u003e\u003cb\u003e33 g\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eFrame\u003c\/span\u003e\u003cb\u003eCrown Panto, magnesium-aluminum alloy\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eTemples\u003c\/span\u003e\u003cb\u003eTitanium alloy\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eProtection\u003c\/span\u003e\u003cb\u003eIP54\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eInput\u003c\/span\u003e\u003cb\u003eSmart Crown, voice, head gestures\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eAudio input\u003c\/span\u003e\u003cb\u003e4-mic array + bone conduction\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eCamera\u003c\/span\u003e\u003cb\u003eNone\u003c\/b\u003e\n\u003c\/dd\u003e\n        \u003c\/dl\u003e\n        \u003cdl\u003e\n          \u003cdt\u003eBattery and connectivity\u003c\/dt\u003e\n          \u003cdd\u003e\n\u003cspan\u003eBattery\u003c\/span\u003e\u003cb\u003e240 mAh\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eTypical use\u003c\/span\u003e\u003cb\u003eUp to 48 hours\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eContinuous recording\u003c\/span\u003e\u003cb\u003e18 hours\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eContinuous translation\u003c\/span\u003e\u003cb\u003e6.2 hours\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eConnectivity\u003c\/span\u003e\u003cb\u003eBluetooth 5.4, MFi certified\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eColor\u003c\/span\u003e\u003cb\u003ePolar Night (grey)\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eCharging case\u003c\/span\u003e\u003cb\u003e2,000 mAh, up to 5 full recharges\u003c\/b\u003e\n\u003c\/dd\u003e\n          \u003cdd\u003e\n\u003cspan\u003eSKU\u003c\/span\u003e\u003cb\u003eARGF30-2A4FEU11\u003c\/b\u003e\n\u003c\/dd\u003e\n        \u003c\/dl\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: IN THE BOX ==== --\u003e\n  \u003cdiv class=\"rioc-sec alt\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cheader\u003e\n        \u003ch3\u003eIn the box\u003c\/h3\u003e\n        \u003cp\u003eRayNeo iO with charging case, plano (non-prescription) lenses.\u003c\/p\u003e\n      \u003c\/header\u003e\n      \u003cdiv class=\"rioc-boxwrap\"\u003e\n        \u003cdiv class=\"shot\"\u003e\u003ca class=\"rioc-boxzoom\" href=\"https:\/\/www.dronenerds.com\/cdn\/shop\/files\/iO_35d556fc-4a3b-459f-838b-dd37aad44fc3.webp?v=1794422701\" target=\"_blank\" rel=\"noopener\" aria-label=\"Open the in-the-box image full size\"\u003e\u003cimg class=\"rioc-media\" src=\"https:\/\/www.dronenerds.com\/cdn\/shop\/files\/iO_35d556fc-4a3b-459f-838b-dd37aad44fc3.webp?v=1794422701\" alt=\"RayNeo iO with charging case\" loading=\"lazy\"\u003e\u003cspan\u003eEnlarge ⤢\u003c\/span\u003e\u003c\/a\u003e\u003c\/div\u003e\n        \u003cul class=\"rioc-box\"\u003e\n          \u003cli\u003eRayNeo iO AI glasses\u003cb\u003e×1\u003c\/b\u003e\n\u003c\/li\u003e\n          \u003cli\u003eEyewear charging case (2,000 mAh)\u003cb\u003e×1\u003c\/b\u003e\n\u003c\/li\u003e\n          \u003cli\u003eEyewear charging clip (USB-C)\u003cb\u003e×1\u003c\/b\u003e\n\u003c\/li\u003e\n          \u003cli\u003eNose pad kit\u003cb\u003e×1\u003c\/b\u003e\n\u003c\/li\u003e\n          \u003cli\u003eSilicone temple tips\u003cb\u003e×1\u003c\/b\u003e\n\u003c\/li\u003e\n        \u003c\/ul\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: FAQ ==== --\u003e\n  \u003cdiv class=\"rioc-sec rioc-faq\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cheader\u003e\n        \u003ch3\u003eQuestions we get\u003cbr\u003eabout iO.\u003c\/h3\u003e\n        \u003cp\u003eStraight answers before you order.\u003c\/p\u003e\n      \u003c\/header\u003e\n      \u003cdetails\u003e\u003csummary\u003eDoes RayNeo iO have a camera?\u003c\/summary\u003e\u003cp\u003eNo. iO is designed without a camera, so there are no concerns about unwanted recording for you or the people around you.\u003c\/p\u003e\u003c\/details\u003e\n      \u003cdetails\u003e\u003csummary\u003eWhat can I see on the display?\u003c\/summary\u003e\u003cp\u003eAI responses, notifications, schedules, weather, live captions and translations, and teleprompter text, on a transparent display that floats in your view.\u003c\/p\u003e\u003c\/details\u003e\n      \u003cdetails\u003e\u003csummary\u003eWhich AI assistants does it work with?\u003c\/summary\u003e\u003cp\u003eRayNeo AI and Gemini are included free. Other models, such as ChatGPT, DeepSeek, Kimi and Qwen, require a VIP subscription; unlimited multi-model access is US$9.99 a month.\u003c\/p\u003e\u003c\/details\u003e\n      \u003cdetails\u003e\u003csummary\u003eHow long does the battery last?\u003c\/summary\u003e\u003cp\u003eUp to two days of typical use (48 hours). Continuous translation runs about 6.2 hours and continuous recording about 18 hours. The included charging case tops the glasses up to five full times.\u003c\/p\u003e\u003c\/details\u003e\n      \u003cdetails\u003e\u003csummary\u003eCan I get it with prescription lenses?\u003c\/summary\u003e\u003cp\u003eYes. iO supports custom prescription lenses. This listing is the plano (non-prescription) version.\u003c\/p\u003e\u003c\/details\u003e\n      \u003cdetails\u003e\u003csummary\u003eIs it waterproof?\u003c\/summary\u003e\u003cp\u003eIt's rated IP54 for dust and splashes, not for swimming or submersion. Resistance can decrease with normal wear.\u003c\/p\u003e\u003c\/details\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003c!-- ==== SECTION: DRONE NERDS ==== --\u003e\n  \u003cdiv class=\"rioc-sec rioc-dn\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cdiv class=\"grid\"\u003e\n        \u003cdiv\u003e\n          \u003ch3\u003eBought from people\u003cbr\u003ewho \u003cspan\u003euse them.\u003c\/span\u003e\n\u003c\/h3\u003e\n          \u003cp class=\"pitch\"\u003eQuestions about features, apps or prescription inserts? Call us and talk to someone who has worn them.\u003c\/p\u003e\n          \u003cdiv class=\"cta\"\u003e\n            \u003ca class=\"pri\" href=\"tel:7867087807\"\u003eTalk to an expert\u003c\/a\u003e\n            \u003ca href=\"javascript:void(0)\" class=\"rioc-quote\" data-modal-opener=\"PopupModal-requestQuote\" data-title=\"RayNeo iO AI Glasses with Charging Case (Polar Night)\" data-sku=\"ARGF30-2A4FEU11\" data-dealerlogo=\"\/\/www.dronenerds.com\/cdn\/shop\/files\/About_Us_Banner.png?width=100\"\u003eAsk a question\u003c\/a\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cul\u003e\n          \u003cli\u003e\u003cdiv\u003e\n\u003ch4\u003eFactory-new US stock\u003c\/h4\u003e\n\u003cp\u003eFull manufacturer warranty, ships from the USA.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/li\u003e\n          \u003cli\u003e\u003cdiv\u003e\n\u003ch4\u003eFast shipping\u003c\/h4\u003e\n\u003cp\u003eShips from South Florida.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/li\u003e\n          \u003cli\u003e\u003cdiv\u003e\n\u003ch4\u003eReal people on the phone\u003c\/h4\u003e\n\u003cp\u003eCall 786-708-7807.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/li\u003e\n        \u003c\/ul\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c!-- ==== \/SECTION ==== --\u003e\n\n\u003cscript\u003e\n(function(){var v=document.getElementById('rioc-vid'),b=document.getElementById('rioc-playbtn');if(!v||!b)return;var w=v.parentNode;\nb.addEventListener('click',function(){w.classList.add('is-playing');var p=v.play();if(p\u0026\u0026p.catch)p.catch(function(){});});\nv.addEventListener('play',function(){w.classList.add('is-playing');});\nv.addEventListener('ended',function(){w.classList.remove('is-playing');});})();\n\u003c\/script\u003e\n\u003cscript\u003e\n(function(){\n  var root=document.querySelector('.rioc'); if(!root) return;\n  var lb=document.createElement('div'); lb.className='rioc-lb'; lb.setAttribute('role','dialog'); lb.setAttribute('aria-modal','true');\n  lb.innerHTML='\u003cbutton type=\"button\" aria-label=\"Close\"\u003e\\u2715\u003c\/button\u003e\u003cimg alt=\"\"\u003e';\n  document.body.appendChild(lb); var im=lb.querySelector('img');\n  function close(){ lb.classList.remove('open'); im.removeAttribute('src'); }\n  lb.addEventListener('click',close);\n  document.addEventListener('keydown',function(e){ if(e.key==='Escape'\u0026\u0026lb.classList.contains('open')) close(); });\n  root.addEventListener('click',function(e){\n    var a=e.target.closest('a.rioc-cardzoom, a.rioc-boxzoom'); if(!a) return;\n    e.preventDefault(); var src=a.getAttribute('href'); if(src.indexOf('width=')\u003c0) src+=(src.indexOf('?')\u003c0?'?':'\u0026')+'width=1800';\n    var i=a.querySelector('img'); im.alt=i?i.alt:''; im.src=src; lb.classList.add('open'); lb.querySelector('button').focus();\n  });\n})();\n\u003c\/script\u003e\n\u003c\/section\u003e\n\u003c!-- ======================== SHOPIFY DESCRIPTION END ======================== --\u003e","brand":"RayNeo","offers":[{"title":"Default Title","offer_id":68067181265212,"sku":"ARGF30-2A4FEU11","price":504.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0761\/3556\/3580\/files\/iO_35d556fc-4a3b-459f-838b-dd37aad44fc3.webp?v=1794422701","url":"https:\/\/www.dronenerds.com\/products\/rayneo-io-polar-night-with-charging-case-bundle","provider":"Drone Nerds","version":"1.0","type":"link"}