Comet Q (GL-RMQ1) All-in-One USB Remote KVM with Wi-Fi 6
.tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review { display: flex; flex-wrap: wrap; } .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-rev iew .tiny-slider-item-beta-tester-review { padding: 0 1rem; vertical-align: middle; display: inline-flex; } @media (max-width: 1440px) { .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review { transform: translateX(0); } } @media (max-width: 991px) { .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review { vertical-align: top; } } .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review .tiny-slider-review-card { display: flex; height: 100%; } .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review .tiny-slider-review-card .row { background-color: #ffffff; margin: 0; align-items: center; } @media (max-width: 991px) { .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review .tiny-slider-review-card .row { align-items: flex-start; } } @media (max-width: 768px) { .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review .tiny-slider-review-card .row { margin-right: 0; } } .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review .tiny-slider-review-card .row .card-image { height: 100%; } @media (max-width: 991px) { .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review .tiny-slider-review-card .row .card-image { height: auto; } } .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review .tiny-slider-review-card .row .card-image img { width: 100%; height: 100%; object-fit: cover; border-radius: 15px 0 0 15px; } @media (max-width: 991px) { .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review .tiny-slider-review-card .row .card-image img { border-radius: 15px 15px 0 0; width: 100%; height: auto; } } .tiny-slider-container-beta-tester-review .tiny-slider-beta-tester-review .tiny-slider-item-beta-tester-review .tiny-slider-review-card .row p { font-size: 1.1rem; } .rmq1-main-container { --rmq1: #1D77FF; } .rmq1-main-container .bg-rmq1 { background-color: #10153b; } .rmq1-main-container .text-rmq1 { color: var(--rmq1); } .rmq1-main-container .text-rmq1-grey { color: #cbd5f5; } .rmq1-main-container .rmq1-text-gradient { background: linear-gradient(90deg, rgb(70, 180, 246) 8%, rgb(69, 147, 255) 43%, rgb(79, 213, 237) 71%, rgb(208, 217, 255) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; /* For Firefox */ background-clip: text; color: transparent; } .rmq1-main-container .pass-one { font-family: Roboto, sans-serif; font-weight: 700; border-radius: 28px; padding-top: 20px; padding-bottom: 20px; padding-left: 44px; padding-right: 44px; height: 55px; font-size: 0.95rem; width: 100%; cursor: pointer; display: block; border: 1px solid rgba(37, 198, 182, 0.3); background: rgba(37, 198, 182, 0.12); color: rgb(37, 198, 182); text-transform: uppercase; letter-spacing: 0.08em; padding: 0.95rem 1rem; } .rmq1-main-container .pass-one:hover { background: rgba(37, 198, 182, 0.22); border-color: rgba(37, 198, 182, 0.5); color: #ffffff; } @media (max-width: 768px) { .rmq1-main-container .pass-one { font-size: 0.85rem; padding: 0px; display: flex; align-items: center; justify-content: center; } } .rmq1-main-container .pass-two { font-family: Roboto, sans-serif; font-weight: bold; border-radius: 40px; padding-top: 20px; padding-bottom: 20px; padding-left: 44px; padding-right: 44px; height: 55px; width: 100%; cursor: pointer; display: block; border: 1px solid rgba(34, 128, 229, 0.3); background: rgba(34, 128, 229, 0.12); color: rgb(34, 128, 229); text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.95rem; padding: 0.95rem 1rem; } @media (max-width: 768px) { .rmq1-main-container .pass-two { font-size: 0.85rem; padding: 0px; display: flex; align-items: center; justify-content: center; } } .rmq1-main-container .pass-two:hover { background: rgba(34, 128, 229, 0.22); border-color: rgba(34, 128, 229, 0.5); color: #ffffff; } .rmq1-main-container .show-now-button.disabled { cursor: not-allowed; pointer-events: default; } .rmq1-main-container .btn-round-rmq1 { background-color: var(--rmq1); color: #fff; border-radius: 50px; padding: 1rem 2rem; text-transform: uppercase; font-weight: bold; } @media (max-width: 768px) { .rmq1-main-container .btn-round-rmq1 { min-height: 50px; padding: 12px 2rem; text-transform: uppercase; font-weight: bold; } } .rmq1-main-container .btn-round-rmq1:hover { background-color: #1163dd; } .rmq1-main-container .rmq1-rotating-word { display: inline-block; overflow: hidden; vertical-align: bottom; position: relative; } .rmq1-main-container .rmq1-rotating-word .rmq1-word-inner { display: inline-block; animation: rmq1SlideUp 0.65s cubic-bezier(0.16, 1, 0.3, 1) forwards; will-change: transform, opacity; background: linear-gradient(90deg, #46b4f6 8%, #4593ff 43%, #4fd5ed 71%, #d0d9ff 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; } @keyframes rmq1SlideUp { from { transform: translateY(110%); opacity: 0; } to { transform: translateY(0); opacity: 1; } } @keyframes rmq1SlideOut { from { transform: translateY(0); opacity: 1; } to { transform: translateY(-110%); opacity: 0; } } .rmq1-main-container .rmq1-rotating-word .rmq1-word-inner.slide-out { animation: rmq1SlideOut 0.5s cubic-bezier(0.7, 0, 0.84, 0) forwards; } .rmq1-main-container .btn-vip-gradient { background: linear-gradient(135deg, #f5a623 0%, #f7b923 50%, #ffc629 100%); color: #1a1a1a; border-radius: 50px; padding: 0.8rem 2.5rem; text-transform: uppercase; font-weight: 700; font-size: 1.05rem; letter-spacing: 0.5px; display: inline-flex; align-items: center; gap: 0.6rem; transition: all 0.3s ease; box-shadow: 0 8px 24px rgba(245, 166, 35, 0.35); } @media (max-width: 768px) { .rmq1-main-container .btn-vip-gradient { min-height: 50px; border-radius: 50px; padding: 0.7rem 2rem; font-size: 0.95rem; text-transform: uppercase; font-weight: 700; } } .rmq1-main-container .btn-vip-gradient:hover { background: linear-gradient(135deg, #f7b923 0%, #ffc629 50%, #ffd93b 100%); color: #1a1a1a; box-shadow: 0 12px 32px rgba(245, 166, 35, 0.45); transform: translateY(-2px); } .rmq1-main-container .btn-kickstarter { background-color: rgb(46, 191, 112); border: 1px solid rgb(46, 191, 112); color: #ffffff; border-radius: 50px; padding: 0.8rem 2.5rem; text-transform: uppercase; font-weight: 700; font-size: 1.05rem; letter-spacing: 0.5px; display: inline-flex; align-items: center; gap: 0.6rem; transition: all 0.3s ease; box-shadow: 0 8px 24px rgba(46, 191, 112, 0.25); } @media (max-width: 768px) { .rmq1-main-container .btn-kickstarter { min-height: 50px; border-radius: 50px; padding: 0.7rem 2rem; font-size: 0.95rem; text-transform: uppercase; font-weight: 700; } } .rmq1-main-container .btn-kickstarter:hover { background-color: rgb(36, 155, 92); border-color: rgb(36, 155, 92); box-shadow: 0 12px 32px rgba(46, 191, 112, 0.35); transform: translateY(-2px); } .rmq1-main-container .vip-bolt { font-size: 1.3em; line-height: 1; } .rmq1-main-container #mc_embed_shell { display: flex; justify-content: center; } .rmq1-main-container #mc_embed_shell input { border: medium none; color: gray; font-size: 16px; padding: 8px 25px; width: auto; height: 50px; border-radius: 25px 0px 0px 25px; } @media (max-width: 575.98px) { .rmq1-main-container #mc_embed_shell input { width: 100%; height: 40px; font-size: 13px; } } .rmq1-main-container #mc_embed_shell input.email { background: rgba(10, 19, 48, 0.52); border: 1px solid rgba(255, 255, 255, 0.2); color: rgba(255, 255, 255, 0.92); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05); } .rmq1-main-container #mc_embed_shell input.email::placeholder { color: rgba(255, 255, 255, 0.62); } .rmq1-main-container #mc_embed_shell input.email:focus { background: rgba(10, 19, 48, 0.68); border-color: rgba(71, 131, 255, 0.75); box-shadow: 0 0 0 3px rgba(71, 131, 255, 0.14); outline: none; } @media (max-width: 575.98px) { .rmq1-main-container #mc_embed_shell input.email { font-size: 13px; } } .rmq1-main-container #mc_embed_shell input[type=submit] { background-color: var(--rmq1); } .rmq1-main-container #mc_embed_shell input[type=submit]:hover { background-color: #085bd6; } .rmq1-main-container #mc_embed_shell input[type=submit] { text-align: center; transition: 0.5s; background-size: 200% auto; font-weight: bold; color: white; border-radius: 0 25px 25px 0; display: block; margin: 0; } .rmq1-main-container #mc_embed_shell #mc-embedded-subscribe-form { width: auto; justify-content: start; } @media (max-width: 767.98px) { .rmq1-main-container #mc_embed_shell #mc-embedded-subscribe-form { margin: auto; justify-content: center; } } .rmq1-main-container #mc_embed_shell input[type=submit]:hover { background-position: right center; /* change the direction of the change here */ color: #fff; text-decoration: none; } .rmq1-main-container .top-banner { min-height: 80vh; background-size: cover; background-repeat: no-repeat; background-position: center center; background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/rmq1_hero_banner_v2.jpg"); } @supports (min-height: 80svh) { .rmq1-main-container .top-banner { min-height: 80svh; } } @media (min-width: 992px) { .rmq1-main-container .top-banner .container { min-height: inherit; display: flex; align-items: center; } .rmq1-main-container .top-banner .row { width: 100%; } } @media (max-width: 991px) { .rmq1-main-container .top-banner { height: auto; min-height: 100vh; padding: 1rem 0 1.5rem; background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/rmq1_hero_banner_mobile_v2.jpg"); background-position: center top; } @supports (min-height: 100svh) { .rmq1-main-container .top-banner { min-height: 100svh; } } .rmq1-main-container .top-banner .container, .rmq1-main-container .top-banner .row { min-height: inherit; } .rmq1-main-container .top-banner .row.align-items-center { align-items: flex-start !important; } .rmq1-main-container .top-banner .top-banner-content { max-width: 32rem; padding-top: 0.5rem; } .rmq1-main-container .top-banner .top-banner-content #mc_embed_shell { justify-content: flex-start !important; } .rmq1-main-container .top-banner .top-banner-content #mc_embed_shell #mc-embedded-subscribe-form { justify-content: flex-start !important; margin: 0 !important; } } .rmq1-main-container .top-banner .top-banner-content { text-align: left; } .rmq1-main-container .top-banner .rmq1-kickstarter-status { align-items: center; background: rgba(11, 36, 26, 0.88); border: 2px solid rgba(0, 168, 89, 0.68); border-radius: 999px; box-shadow: inset 0 0 0 1px rgba(91, 255, 158, 0.06); display: inline-flex; gap: 1.15rem; margin-bottom: 1.35rem; padding: 0.9rem 1.25rem; } .rmq1-main-container .top-banner .rmq1-kickstarter-status-label { background: #12c85f; border-radius: 0.55rem; color: #ffffff; font-size: 0.75rem; font-weight: 900; letter-spacing: 0.06em; line-height: 1; padding: 0.8rem 0.95rem; text-transform: uppercase; } .rmq1-main-container .top-banner .rmq1-kickstarter-status-dot { background: #3aca76; border-radius: 999px; flex: 0 0 auto; height: 0.55rem; width: 0.55rem; } .rmq1-main-container .top-banner .rmq1-kickstarter-status-text { color: #3fe287; font-size: 0.75rem; font-weight: 900; letter-spacing: 0.08em; line-height: 1; text-transform: uppercase; } .rmq1-main-container .top-banner .top-banner-content #mc_embed_shell { justify-content: flex-start; } .rmq1-main-container .top-banner .top-banner-content #mc-embedded-subscribe-form { justify-content: flex-start; margin: 0; } .rmq1-main-container .top-banner .bg-img { position: absolute; } .rmq1-main-container .top-banner .bg-img img { object-fit: cover; } @media (max-width: 768px) { .rmq1-main-container .top-banner .row { padding-top: 1.25rem; } } .rmq1-main-container .top-banner .row .d-flex img { max-height: 94px; } @media (max-width: 576px) { .rmq1-main-container .top-banner .row .d-flex img { max-height: 70px; } } .rmq1-main-container .top-banner .row .d-flex img.glinet-logo { max-height: 62px; padding: 0 0 0.45rem 0.5rem; } @media (max-width: 576px) { .rmq1-main-container .top-banner .row .d-flex img.glinet-logo { max-height: 43px; padding: 0 0 0.15rem 0.5rem; } } @media (max-width: 768px) { .rmq1-main-container .top-banner .rmq1-kickstarter-status { gap: 0.75rem; margin-bottom: 0.85rem; padding: 0.6rem 0.85rem; } .rmq1-main-container .top-banner .rmq1-kickstarter-status-label { font-size: 0.75rem; padding: 0.55rem 0.72rem; } .rmq1-main-container .top-banner .rmq1-kickstarter-status-text { font-size: 0.82rem; } } .rmq1-main-container .top-banner h1 { font-size: 2.75rem; } @media (max-width: 768px) { .rmq1-main-container .top-banner h1 { font-size: 1.65rem; line-height: 1.15; margin-bottom: 0.75rem; } } @media (max-width: 768px) { .rmq1-main-container .top-banner p { font-size: 0.95rem; line-height: 1.5; margin-bottom: 0.55rem; } } .rmq1-main-container .ks-badge { width: 235px; padding: 10px 0 0 0; } @media (max-width: 768px) { .rmq1-main-container .ks-badge { width: 200px; padding-top: 0; } } .rmq1-main-container .rmq1-metrics-strip-section { background-color: #0b0f17; } .rmq1-main-container .rmq1-metrics-strip { border-bottom: 1px solid rgba(255, 255, 255, 0.08); border-top: 1px solid rgba(255, 255, 255, 0.08); display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 auto; max-width: 100%; } .rmq1-main-container .rmq1-metric-item { align-items: center; display: flex; flex-direction: column; justify-content: center; min-height: 180px; padding: 2rem 1.25rem; position: relative; text-align: center; } .rmq1-main-container .rmq1-metric-item:not(:last-child)::after { background: rgba(255, 255, 255, 0.09); content: ""; height: 64px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 1px; } .rmq1-main-container .rmq1-metric-value { font-size: 2.9rem; font-weight: 600; letter-spacing: -0.03em; line-height: 1; margin-bottom: 0.5rem; } .rmq1-main-container .rmq1-metric-label { color: rgba(255, 255, 255, 0.58); font-size: 0.95rem; font-weight: 700; line-height: 1.4; } .rmq1-main-container .rmq1-overview-row { padding: 4rem 0; } .rmq1-main-container .rmq1-overview-card { background: #000; border: 1px solid rgba(120, 150, 216, 0.3); border-radius: 1.6rem; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02), 0 14px 34px rgba(5, 10, 24, 0.2); padding: 2.2rem 2.4rem; } .rmq1-main-container .rmq1-supporter-wall-img { display: inline-block; width: 55%; } @media (min-width: 992px) { .rmq1-main-container .rmq1-supporter-wall-img { max-width: 24rem; } } .rmq1-main-container .rmq1-highlight-grid { display: grid; gap: 0.75rem; width: 100%; } .rmq1-main-container .rmq1-highlight-card { background-repeat: no-repeat; background-size: cover; border: 1px solid #233057; border-radius: 1.25rem; overflow: hidden; padding: 1.2rem; position: relative; } .rmq1-main-container .rmq1-highlight-card::before { background: radial-gradient(ellipse 200% 180% at 0% 0%, rgba(60, 127, 228, 0.4) 0%, rgba(60, 127, 228, 0.1) 38%, transparent 68%); border-radius: inherit; content: ""; inset: 0; pointer-events: none; position: absolute; z-index: 0; } .rmq1-main-container .rmq1-highlight-card h3 { font-size: 1.5rem; font-weight: 700; line-height: 1.35; margin: 0; position: relative; z-index: 1; } @media (max-width: 1200px) { .rmq1-main-container .rmq1-highlight-card h3 { font-size: 1.2rem; } } @media (max-width: 991.98px) { .rmq1-main-container .rmq1-highlight-card { padding: 1.1rem; } } @media (max-width: 767.98px) { .rmq1-main-container .rmq1-highlight-card { padding: 1rem; } .rmq1-main-container .rmq1-highlight-card h3 { font-size: 1.2rem; } } .rmq1-main-container .rmq1-highlight-card--1 { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/highlights_offline-sleep-mode.jpg"); background-position: bottom center; } .rmq1-main-container .rmq1-highlight-card--2 { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/highlights_touchscreen.jpg"); background-position: bottom center; } .rmq1-main-container .rmq1-highlight-card--3 { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/highlights-wi-fi-6.jpg"); background-position: center right; } .rmq1-main-container .rmq1-highlight-card--4 { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/highlights_512mb.jpg"); background-position: center right; } .rmq1-main-container .rmq1-highlight-card--5 { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/highlights_hardware.jpg"); background-position: top right; } .rmq1-main-container .rmq1-highlight-card--6 { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/highlights_dual-core.jpg"); background-position: top right; } .rmq1-main-container .rmq1-highlight-card--7 { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/highlights_cross-device.jpg"); background-position: bottom center; } .rmq1-main-container .rmq1-highlight-card--8 { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/highlights_type-c.jpg"); background-position: bottom right; } .rmq1-main-container .rmq1-highlight-card--9 { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/highlights_tailscale-and-zerotier-support.jpg"); background-position: bottom right; } .rmq1-main-container .rmq1-highlight-card--3, .rmq1-main-container .rmq1-highlight-card--4 { align-items: center; background-position: center; display: flex; justify-content: center; text-align: center; } .rmq1-main-container .rmq1-highlight-card--3 h3, .rmq1-main-container .rmq1-highlight-card--4 h3 { font-size: 2.15rem; } @media (max-width: 1200px) { .rmq1-main-container .rmq1-highlight-card--3 h3, .rmq1-main-container .rmq1-highlight-card--4 h3 { font-size: 1.75rem; } } @media (max-width: 767.98px) { .rmq1-main-container .rmq1-highlight-card--3 h3, .rmq1-main-container .rmq1-highlight-card--4 h3 { font-size: 1.5rem; } } @media (min-width: 992px) { .rmq1-main-container .rmq1-highlight-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: repeat(4, minmax(6.5rem, 1fr)); min-height: 46rem; } .rmq1-main-container .rmq1-highlight-card--1 { grid-column: 1/3; grid-row: 1/3; } .rmq1-main-container .rmq1-highlight-card--2 { grid-column: 3/4; grid-row: 1/3; } .rmq1-main-container .rmq1-highlight-card--3 { grid-column: 4/5; grid-row: 1/2; } .rmq1-main-container .rmq1-highlight-card--4 { grid-column: 4/5; grid-row: 2/3; } .rmq1-main-container .rmq1-highlight-card--5 { grid-column: 1/2; grid-row: 3/4; } .rmq1-main-container .rmq1-highlight-card--6 { grid-column: 1/2; grid-row: 4/5; } .rmq1-main-container .rmq1-highlight-card--7 { grid-column: 2/3; grid-row: 3/5; } .rmq1-main-container .rmq1-highlight-card--8, .rmq1-main-container .rmq1-highlight-card--9 { grid-row: 3/5; } .rmq1-main-container .rmq1-highlight-card--8 { grid-column: 3/4; } .rmq1-main-container .rmq1-highlight-card--9 { grid-column: 4/5; } } @media (min-width: 768px) and (max-width: 991.98px) { .rmq1-main-container .rmq1-highlight-grid { grid-auto-rows: minmax(6rem, auto); grid-template-columns: repeat(6, minmax(0, 1fr)); min-height: 50rem; } .rmq1-main-container .rmq1-highlight-card--1 { grid-column: 1/5; grid-row: 1; min-height: 13rem; } .rmq1-main-container .rmq1-highlight-card--2 { grid-column: 5/7; grid-row: 1; min-height: 8.5rem; } .rmq1-main-container .rmq1-highlight-card--5 { grid-column: 1/3; grid-row: 2; } .rmq1-main-container .rmq1-highlight-card--6 { grid-column: 1/3; grid-row: 3; } .rmq1-main-container .rmq1-highlight-card--7 { grid-column: 3/5; grid-row: 2/4; } .rmq1-main-container .rmq1-highlight-card--3 { grid-column: 5/7; grid-row: 2; } .rmq1-main-container .rmq1-highlight-card--4 { grid-column: 5/7; grid-row: 3; } .rmq1-main-container .rmq1-highlight-card--8, .rmq1-main-container .rmq1-highlight-card--9 { grid-row: 4; min-height: 7.5rem; } .rmq1-main-container .rmq1-highlight-card--8 { grid-column: 1/4; } .rmq1-main-container .rmq1-highlight-card--9 { grid-column: 4/7; } } @media (max-width: 767.98px) { .rmq1-main-container .rmq1-highlight-grid { grid-auto-rows: minmax(5.5rem, auto); grid-template-columns: repeat(2, minmax(0, 1fr)); } .rmq1-main-container .rmq1-highlight-card { min-height: 9rem; } .rmq1-main-container .rmq1-highlight-card--1 { grid-column: 1/-1; grid-row: 1; background-position: center calc(100% + 15px); } .rmq1-main-container .rmq1-highlight-card--2 { grid-column: 1/2; grid-row: 2/4; } .rmq1-main-container .rmq1-highlight-card--3 { grid-column: 1/2; grid-row: 6; } .rmq1-main-container .rmq1-highlight-card--4 { grid-column: 2/3; grid-row: 6; } .rmq1-main-container .rmq1-highlight-card--5 { grid-column: 1/2; grid-row: 4; } .rmq1-main-container .rmq1-highlight-card--6 { grid-column: 1/2; grid-row: 5; } .rmq1-main-container .rmq1-highlight-card--7 { grid-column: 2/3; grid-row: 4/6; } .rmq1-main-container .rmq1-highlight-card--8 { grid-column: 2/3; grid-row: 2; } .rmq1-main-container .rmq1-highlight-card--9 { grid-column: 2/3; grid-row: 3; } } .rmq1-main-container .rmq1-connect-card { background: radial-gradient(circle at 50% 46%, rgba(57, 112, 255, 0.18), transparent 34%), linear-gradient(180deg, #10192f 0%, #0d1425 100%); border: 1px solid rgba(122, 146, 197, 0.28); border-radius: 2rem; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02); padding: 2rem; } .rmq1-main-container .rmq1-connect-eyebrow { color: #46B4F6; display: inline-block; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.18em; margin-bottom: 0.75rem; text-transform: uppercase; } .rmq1-main-container .rmq1-connect-flow { align-items: center; display: grid; gap: 1rem; grid-template-columns: minmax(110px, 0.9fr) auto minmax(0, 2fr); margin-bottom: 2rem; min-width: 0; } .rmq1-main-container .rmq1-connect-group { align-items: stretch; background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 1.4rem; display: grid; gap: 0.85rem; grid-template-columns: minmax(140px, 0.95fr) auto minmax(0, 1fr); min-width: 0; padding: 0.85rem; width: 100%; } .rmq1-main-container .rmq1-connect-targets { align-items: center; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 1.4rem; display: flex; flex-direction: column; gap: 0.5rem; justify-content: center; min-height: 204px; min-width: 0; padding: 1.25rem 1rem; text-align: center; } .rmq1-main-container .rmq1-targets-list { list-style: none; padding: 0; margin: 0 0 0.75rem 0; display: flex; flex-direction: column; gap: 0.4rem; width: 100%; } .rmq1-main-container .rmq1-targets-list li { color: rgba(255, 255, 255, 0.85); display: flex; align-items: center; gap: 0.6rem; font-size: 0.95rem; line-height: 1.4; } .rmq1-main-container .rmq1-targets-list i { color: #2890ff; font-size: 0.9rem; min-width: 20px; } .rmq1-main-container .rmq1-connect-device { align-items: center; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 1.4rem; display: flex; flex-direction: column; justify-content: center; min-height: 168px; min-width: 0; padding: 1.25rem 1rem; text-align: center; } .rmq1-main-container .rmq1-connect-device-core { background: linear-gradient(180deg, rgba(45, 72, 141, 0.95) 0%, rgba(37, 57, 109, 0.95) 100%); border: 2px solid rgba(50, 140, 255, 0.7); box-shadow: 0 0 28px rgba(25, 93, 255, 0.22); min-height: 204px; } .rmq1-main-container .rmq1-connect-device-target.is-active { background: rgba(28, 57, 103, 0.62); border-color: rgba(50, 140, 255, 0.7); } .rmq1-main-container .rmq1-connect-device-target { background: transparent; border: 0; border-radius: 1rem; min-height: 130px; } .rmq1-main-container .rmq1-connect-icon { align-items: center; color: #ffffff; display: inline-flex; font-size: 1.5rem; height: 2.5rem; justify-content: center; margin-bottom: 1rem; width: 2.5rem; } .rmq1-main-container .rmq1-connect-product { filter: drop-shadow(0 8px 16px rgba(10, 22, 55, 0.35)); margin-bottom: 1rem; max-width: 72px; width: 100%; } .rmq1-main-container .rmq1-connect-arrow { align-items: center; align-self: center; color: #1f83ff; display: flex; font-size: 2.1rem; font-weight: 700; justify-content: center; line-height: 1; text-align: center; } .rmq1-main-container .rmq1-connect-note { align-items: flex-start; background: rgba(13, 74, 54, 0.42); border: 1px solid rgba(43, 184, 118, 0.38); border-radius: 1.25rem; color: #77efad; display: flex; gap: 1rem; padding: 1.25rem 1.35rem; } .rmq1-main-container .rmq1-connect-note-icon { align-items: center; background: rgba(102, 255, 190, 0.1); border-radius: 999px; color: #7ef3b8; display: inline-flex; flex: 0 0 auto; font-size: 1.25rem; height: 2.5rem; justify-content: center; width: 2.5rem; } .rmq1-main-container .rmq1-connect-note p { color: #83efb7; font-size: 1rem; line-height: 1.65; margin-bottom: 0; } .rmq1-main-container .rmq1-audience-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 3rem; text-align: left; } .rmq1-main-container .rmq1-compat-card { background: linear-gradient(180deg, rgba(17, 25, 47, 0.98) 0%, rgba(13, 20, 38, 0.98) 100%); border: 1px solid rgba(87, 110, 160, 0.28); border-radius: 1.6rem; padding: 1.75rem 2rem; } .rmq1-main-container .rmq1-audience-card { background: linear-gradient(180deg, rgba(17, 25, 47, 0.98) 0%, rgba(13, 20, 38, 0.98) 100%); border: 1px solid rgba(87, 110, 160, 0.28); border-radius: 1.6rem; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02); display: flex; flex-direction: column; min-height: 328px; padding: 2rem 1.8rem; } .rmq1-main-container .rmq1-audience-icon { align-self: flex-start; align-items: center; color: #ffffff; display: inline-flex; font-size: 1.55rem; justify-content: center; margin-bottom: 1.5rem; } .rmq1-main-container .rmq1-audience-icon-image img { display: block; height: 4.25rem; width: 4.25rem; } .rmq1-main-container .rmq1-audience-card h3 { color: #ffffff; font-size: 1.2rem; font-weight: 700; line-height: 1.35; margin-bottom: 0.9rem; } .rmq1-main-container .rmq1-audience-card p { color: rgba(214, 221, 236, 0.82); font-size: 0.98rem; line-height: 1.85; margin-bottom: 1.4rem; } .rmq1-main-container .rmq1-audience-tag { align-self: flex-start; background: rgba(17, 55, 121, 0.38); border: 1px solid rgba(39, 123, 255, 0.4); border-radius: 0.45rem; color: #65a9ff; font-size: 0.82rem; font-weight: 700; letter-spacing: 0.06em; line-height: 1; margin-top: auto; padding: 0.5rem 0.72rem; } .rmq1-main-container .rmq1-steps { display: grid; gap: 2.5rem; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 3rem auto 0; max-width: 1440px; position: relative; } .rmq1-main-container .rmq1-steps::before { background: linear-gradient(90deg, rgba(22, 114, 255, 0) 0%, rgba(22, 114, 255, 0.65) 14%, rgba(22, 114, 255, 0.65) 86%, rgba(22, 114, 255, 0) 100%); content: ""; height: 1px; left: calc(16.666% + 3rem); position: absolute; right: calc(16.666% + 3rem); top: 2.5rem; } .rmq1-main-container .rmq1-step { color: #d7dbeb; padding: 0 1.25rem; position: relative; z-index: 1; } .rmq1-main-container .rmq1-step-number { align-items: center; background: linear-gradient(180deg, #2e86ff 0%, #5874f3 100%); border-radius: 999px; box-shadow: 0 0 32px rgba(36, 126, 255, 0.3); color: #ffffff; display: inline-flex; font-size: 1.75rem; font-weight: 800; height: 4.5rem; justify-content: center; margin-bottom: 2rem; width: 4.5rem; } @media (max-width: 1199px) { .rmq1-main-container .rmq1-metric-item { min-height: 164px; padding: 1.75rem 1rem; } .rmq1-main-container .rmq1-metric-value { font-size: 2.45rem; } .rmq1-main-container .rmq1-connect-flow { grid-template-columns: minmax(100px, 0.85fr) auto minmax(0, 1.8fr); } .rmq1-main-container .rmq1-connect-group { grid-template-columns: minmax(125px, 0.9fr) auto minmax(0, 1fr); } .rmq1-main-container .rmq1-connect-device h3 { font-size: 1.15rem; } .rmq1-main-container .rmq1-audience-card { min-height: 350px; padding: 1.7rem 1.45rem; } .rmq1-main-container .rmq1-audience-card h3 { font-size: 1.08rem; } .rmq1-main-container .rmq1-audience-card p { font-size: 0.94rem; line-height: 1.75; } .rmq1-main-container .rmq1-step-number { font-size: 2.2rem; height: 5.75rem; margin-bottom: 1.85rem; width: 5.75rem; } } @media (max-width: 991px) { .rmq1-main-container .rmq1-metrics-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rmq1-main-container .rmq1-metric-item:nth-child(2)::after { display: none; } .rmq1-main-container .rmq1-overview-row { padding: 3rem 0; } .rmq1-main-container .rmq1-overview-card { border-radius: 1.35rem; padding: 1.7rem 1.45rem; } .rmq1-main-container .rmq1-connect-flow { gap: 1.1rem; grid-template-columns: 1fr; } .rmq1-main-container .rmq1-connect-group { grid-template-columns: 1fr; } .rmq1-main-container .rmq1-connect-arrow { transform: rotate(90deg); } .rmq1-main-container .rmq1-audience-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rmq1-main-container .rmq1-steps { gap: 2rem; grid-template-columns: 1fr; margin-top: 3rem; max-width: 680px; } .rmq1-main-container .rmq1-steps::before { display: none; } .rmq1-main-container .rmq1-step { padding: 0; } .rmq1-main-container .rmq1-step-number { margin-bottom: 1.5rem; } } @media (max-width: 575px) { .rmq1-main-container .rmq1-metrics-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rmq1-main-container .rmq1-metric-item { min-height: 128px; padding: 1.5rem 1rem; } .rmq1-main-container .rmq1-metric-item:not(:last-child)::after { bottom: auto; height: 64px; left: auto; right: 0; top: 50%; transform: translateY(-50%); width: 1px; } .rmq1-main-container .rmq1-metric-item:nth-child(2)::after { display: none; } .rmq1-main-container .rmq1-metric-item:nth-child(-n+2) { border-bottom: 1px solid rgba(255, 255, 255, 0.09); } .rmq1-main-container .rmq1-metric-value { font-size: 2.15rem; } .rmq1-main-container .rmq1-metric-label { font-size: 0.9rem; } .rmq1-main-container .rmq1-connect-card { border-radius: 1.5rem; padding: 1.5rem; } .rmq1-main-container .rmq1-connect-eyebrow { font-size: 0.8rem; margin-bottom: 1.5rem; } .rmq1-main-container .rmq1-connect-device, .rmq1-main-container .rmq1-connect-device-core { min-height: 150px; } .rmq1-main-container .rmq1-connect-note { padding: 1rem; } .rmq1-main-container .rmq1-audience-grid { grid-template-columns: 1fr; } .rmq1-main-container .rmq1-audience-card { min-height: auto; padding: 1.5rem 1.25rem; } .rmq1-main-container .rmq1-audience-icon { font-size: 1.35rem; } .rmq1-main-container .rmq1-audience-icon-image img { height: 1.7rem; width: 1.7rem; } .rmq1-main-container .rmq1-audience-card h3 { font-size: 1.05rem; } .rmq1-main-container .rmq1-audience-card p { font-size: 0.95rem; line-height: 1.7; } .rmq1-main-container .rmq1-steps { gap: 2.5rem; } .rmq1-main-container .rmq1-step-number { font-size: 1.9rem; height: 4.75rem; width: 4.75rem; } .rmq1-main-container .rmq1-step h3 { font-size: 1.2rem; } .rmq1-main-container .rmq1-step p { font-size: 0.98rem; line-height: 1.6; } } .rmq1-main-container { /* 视频轮播样式 */ } .rmq1-main-container .rmq1-video-carousel { color: #000; width: 100%; overflow: hidden; } .rmq1-main-container .rmq1-video-carousel .rmq1-container { width: 100%; text-align: center; } .rmq1-main-container .rmq1-video-carousel .rmq1-header h2 { margin-bottom: 10px; } .rmq1-main-container .rmq1-video-carousel { /* 轮播主体 */ } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-wrapper { position: relative; width: 100%; display: flex; align-items: center; justify-content: center; overflow: visible; padding: 20px 0; cursor: grab; } @media (max-width: 992px) { .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-wrapper { padding: 0; } } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-wrapper:active { cursor: grabbing; } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-container { display: flex; align-items: center; justify-content: center; width: 100%; height: auto; min-height: 400px; position: relative; } @media (max-width: 992px) { .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-container { min-height: auto; } } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item { position: absolute; width: 60%; aspect-ratio: 16/9; border-radius: 15px; overflow: hidden; transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.8s ease; opacity: 0; transform: translateX(0); z-index: 1; user-select: none; } .rmq1-main-container .rmq1-video-carousel { /* 内部容器,用于裁剪圆角 */ } .rmq1-main-container .rmq1-video-carousel .media-inner { width: 100%; height: 100%; border-radius: 15px; overflow: hidden; position: relative; z-index: 1; } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item.active { opacity: 1; z-index: 10; transform: translateX(0); } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item.prev { opacity: 0.4; transform: translateX(-105%); z-index: 5; } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item.next { opacity: 0.4; transform: translateX(105%); z-index: 5; } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item.hidden-left { opacity: 0; transform: translateX(-200%); } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item.hidden-right { opacity: 0; transform: translateX(200%); } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item video, .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item img { width: 100%; height: 100%; object-fit: cover; display: block; } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item img { transform: scale(1.01); } .rmq1-main-container .rmq1-video-carousel { /* 导航按钮 */ } .rmq1-main-container .rmq1-video-carousel .nav-btn { position: absolute; top: 50%; transform: translateY(-50%); background: rgba(255, 255, 255, 0.7); border: none; width: 4vw; height: 4vw; min-width: 40px; min-height: 40px; max-width: 60px; max-height: 60px; border-radius: 50%; color: #333; cursor: pointer; z-index: 30; display: flex; align-items: center; justify-content: center; transition: all 0.3s ease; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); } .rmq1-main-container .rmq1-video-carousel .nav-btn:hover { background: #fff; transform: translateY(-50%) scale(1.1); } .rmq1-main-container .rmq1-video-carousel .nav-btn:focus { outline: none; } .rmq1-main-container .rmq1-video-carousel .nav-btn svg { width: 50%; height: 50%; } .rmq1-main-container .rmq1-video-carousel .nav-btn.hidden { opacity: 0; pointer-events: none; } .rmq1-main-container .rmq1-video-carousel .prev-btn { left: calc(20% + 20px); } .rmq1-main-container .rmq1-video-carousel .next-btn { right: calc(20% + 20px); } .rmq1-main-container .rmq1-video-carousel { /* 播放/暂停按钮 */ } .rmq1-main-container .rmq1-video-carousel .rmq1-play-pause-btn { position: absolute; bottom: 20px; right: 20px; background: rgba(0, 0, 0, 0.5); border: none; width: 44px; height: 44px; border-radius: 50%; color: white; cursor: pointer; z-index: 20; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s; } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item.active .rmq1-play-pause-btn { opacity: 1; } .rmq1-main-container .rmq1-video-carousel { /* 图片项隐藏播放按钮 */ } .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item.is-image .rmq1-play-pause-btn { display: none !important; } .rmq1-main-container .rmq1-video-carousel .rmq1-play-pause-btn:focus { outline: none; } .rmq1-main-container .rmq1-video-carousel .rmq1-play-pause-btn svg { position: absolute; top: 0; left: 0; transform: rotate(-90deg); } .rmq1-main-container .rmq1-video-carousel .rmq1-progress-ring-circle { transition: stroke-dashoffset 0.1s linear; stroke: #fff; stroke-width: 2; fill: transparent; stroke-dasharray: 125.6; stroke-dashoffset: 125.6; } .rmq1-main-container .rmq1-video-carousel .bg-ring-circle { stroke: rgba(255, 255, 255, 0.3); stroke-width: 2; fill: transparent; } .rmq1-main-container .rmq1-video-carousel .rmq1-icon { position: relative; z-index: 2; font-size: 16px; } .rmq1-main-container .rmq1-video-carousel { /* 底部控制区 */ } .rmq1-main-container .rmq1-video-carousel .controls-footer { margin-top: 20px; display: flex; flex-direction: column; align-items: center; width: 100%; } .rmq1-main-container .rmq1-video-carousel .progress-container { display: flex; gap: 15px; width: 60%; height: 4px; margin-bottom: 30px; } .rmq1-main-container .rmq1-video-carousel .progress-bar { flex: 1; background: #e0e0e0; border-radius: 2px; cursor: pointer; transition: background 0.3s; } .rmq1-main-container .rmq1-video-carousel .progress-bar.active { background: var(--rmq1); } .rmq1-main-container .rmq1-video-carousel { /* 文案展示区域 */ } .rmq1-main-container .rmq1-video-carousel .text-display-container { width: 60%; min-height: 100px; text-align: left; } .rmq1-main-container .rmq1-video-carousel .rmq1-text-content { display: none; animation: fadeIn 0.5s ease forwards; } .rmq1-main-container .rmq1-video-carousel .rmq1-text-content.active { display: block; } .rmq1-main-container .rmq1-video-carousel .rmq1-text-content h5 { margin-bottom: 10px; } .rmq1-main-container .rmq1-video-carousel .rmq1-text-content p { margin: 0; } @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } .rmq1-main-container .rmq1-video-carousel { /* 移动端适配 */ } @media (max-width: 768px) { .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item { width: 85%; aspect-ratio: 1/0.91; } .rmq1-main-container .rmq1-video-carousel .prev-btn { left: calc(7.5% + 10px); } .rmq1-main-container .rmq1-video-carousel .next-btn { right: calc(7.5% + 10px); } .rmq1-main-container .rmq1-video-carousel .progress-container, .rmq1-main-container .rmq1-video-carousel .text-display-container { width: 85%; } .rmq1-main-container .rmq1-video-carousel .rmq1-text-content p { font-size: 1rem; } } @media (max-width: 991px) and (min-width: 768px) { .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item { width: 70%; aspect-ratio: 16/9; } .rmq1-main-container .rmq1-video-carousel .prev-btn { left: calc(15% + 10px); } .rmq1-main-container .rmq1-video-carousel .next-btn { right: calc(15% + 10px); } .rmq1-main-container .rmq1-video-carousel .progress-container, .rmq1-main-container .rmq1-video-carousel .text-display-container { width: 70%; } .rmq1-main-container .rmq1-video-carousel .rmq1-text-content p { font-size: 1rem; } } @media (max-width: 1400px) and (min-width: 991px) { .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item { width: 70%; aspect-ratio: 16/9; } .rmq1-main-container .rmq1-video-carousel .prev-btn { left: calc(15% + 10px); } .rmq1-main-container .rmq1-video-carousel .next-btn { right: calc(15% + 10px); } .rmq1-main-container .rmq1-video-carousel .progress-container, .rmq1-main-container .rmq1-video-carousel .text-display-container { width: 70%; } .rmq1-main-container .rmq1-video-carousel .rmq1-text-content p { font-size: 1rem; } } @media (min-width: 1400px) { .rmq1-main-container .rmq1-video-carousel .rmq1-carousel-item { width: 45%; aspect-ratio: 16/9; } .rmq1-main-container .rmq1-video-carousel .prev-btn { left: calc(27.5% + 20px); } .rmq1-main-container .rmq1-video-carousel .next-btn { right: calc(27.5% + 20px); } .rmq1-main-container .rmq1-video-carousel .progress-container, .rmq1-main-container .rmq1-video-carousel .text-display-container { width: 45%; } } .rmq1-main-container .table { color: #e0e0e0; /* ensure text is white */ } .rmq1-main-container .table td, .rmq1-main-container .table th { border-top: 1px solid rgba(255, 255, 255, 0.2); } .rmq1-main-container .vip-section { background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.1)), url("https://static.gl-inet.com/www/images/products/gl-rmq1/rmq1_vip-bg.jpg"); background-size: cover; background-position: center center; background-repeat: no-repeat; } @media (max-width: 768px) { .rmq1-main-container .vip-section { background-position: center top; } } .rmq1-main-container .vip-highlight-card { margin: 0 auto; padding: 5rem 2rem; } @media (max-width: 768px) { .rmq1-main-container .vip-highlight-card { border-radius: 1.25rem; padding: 2.25rem 1.15rem; } } .rmq1-main-container .vip-disclaimer { color: rgba(255, 255, 255, 0.55); font-size: 0.85rem; } .rmq1-main-container { /* Optional softer text */ } .rmq1-main-container .text-light-50 { color: rgba(255, 255, 255, 0.7); } .rmq1-main-container .rmq1-vip-icon-badge { display: inline-flex; align-items: center; justify-content: center; width: 25px; height: 25px; border-radius: 8px; background-color: rgb(139, 163, 199); padding: 18px; margin-right: 8px; } .rmq1-main-container .rmq1-vip-card { background: linear-gradient(180deg, #06102a 0%, #030a1d 100%); border: 1px solid rgba(140, 163, 199, 0.25) !important; border-radius: 30px !important; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02), 0 20px 40px rgba(0, 0, 0, 0.25); padding-bottom: 32px; } .rmq1-main-container .rmq1-vip-card .card-header { border-bottom: 1px solid rgba(140, 163, 199, 0.2) !important; padding: 1.75rem 2rem 1.25rem; margin-bottom: 0; } .rmq1-main-container .rmq1-vip-card .card-header h4, .rmq1-main-container .rmq1-vip-card .card-header h5 { letter-spacing: 0.06em; text-transform: uppercase; font-weight: 700 !important; color: #aebdde; margin-bottom: 1rem; display: flex; align-items: center; } .rmq1-main-container .rmq1-vip-card .card-header p { color: #8d97ab; padding-top: 8px; font-weight: 500; margin-bottom: 0; } .rmq1-main-container .rmq1-vip-card .card-body { padding: 1.5rem 2rem 1.25rem; } .rmq1-main-container .rmq1-vip-card .card-body p { color: #b7c0d2; margin-bottom: 0.9rem; line-height: 1.45; } .rmq1-main-container .rmq1-vip-card .card-body p i { min-width: 32px; width: 32px; height: 32px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(113, 140, 183, 0.18); color: #97b0d8; margin-top: -2px; } .rmq1-main-container .rmq1-vip-card .card-body p b, .rmq1-main-container .rmq1-vip-card .fa-circle-check, .rmq1-main-container .rmq1-vip-card .fa-circle-xmark { color: #97b0d8; } .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper { position: relative; } @media (min-width: 992px) { .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper { border-bottom: none; border-left: 1px solid #cbd5f5; padding-left: 20px; } } .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav { display: flex; flex-direction: row; } @media (min-width: 992px) { .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav { flex-direction: column; } } .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav-item { cursor: pointer; opacity: 0.4; transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1); padding-bottom: 15px; } @media (min-width: 992px) { .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav-item { padding-bottom: 0; } } @media (max-width: 991px) { .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav-item { display: none; } .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav-item.active { display: block; } } .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav-item.active { opacity: 1; } .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav-item .description-box { max-height: 0; overflow: hidden; transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1); } @media (max-width: 991px) { .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav-item .description-box { text-align: center; transition: none; } } .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .feature-nav-item:hover { opacity: 1; } .rmq1-main-container .rmq1-feature-switcher .feature-nav-wrapper .nav-indicator { position: absolute; background: var(--rmq1); /* 使用 cubic-bezier 让滑动更具“高级感”,时长 0.4s 左右最佳 */ transition: transform 0.3s ease, height 0.4s cubic-bezier(0.4, 0, 0.2, 1), width 0.4s cubic-bezier(0.4, 0, 0.2, 1); z-index: 2; width: 2px; left: -1px; top: 0; } .rmq1-main-container .rmq1-feature-switcher .description-box .description { color: #cbd5f5; } .rmq1-main-container .rmq1-feature-switcher .image-viewer { position: relative; aspect-ratio: 16/9; } .rmq1-main-container .rmq1-feature-switcher .image-viewer .feature-img { position: absolute; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 0.8s ease; } .rmq1-main-container .rmq1-feature-switcher .image-viewer .feature-img.active { opacity: 1; z-index: 1; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper { overflow: hidden; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-container { overflow-x: auto; scrollbar-width: none; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-container::-webkit-scrollbar { display: none; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-container { -webkit-overflow-scrolling: touch; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-wrapper { width: 100%; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-wrapper .mb-tabs-scroll-area { overflow-x: auto; scrollbar-width: none; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-wrapper .mb-tabs-scroll-area::-webkit-scrollbar { display: none; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-wrapper .mb-tabs-scroll-area { -webkit-overflow-scrolling: touch; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-wrapper .mb-tabs { display: flex; flex-wrap: nowrap; width: max-content; position: relative; padding: 0 10px; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-wrapper .mb-tabs .mb-tab { padding: 12px 10px; color: #666; cursor: pointer; white-space: nowrap; transition: color 0.3s; border-bottom: 1px solid #333; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-wrapper .mb-tabs .mb-tab.active { color: #fff; } .rmq1-main-container .rmq1-feature-switcher .mb-tabs-wrapper .mb-tabs-wrapper .mb-tabs .mb-tab-indicator { position: absolute; bottom: 0; left: 0; height: 2px; background: #fff; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); } .rmq1-main-container .rmq1-scenarios { margin: auto; /* Image */ } .rmq1-main-container .rmq1-scenarios .scenarios-image img { width: 100%; display: block; } .rmq1-main-container .rmq1-scenarios .scenarios-image { position: relative; width: 100%; aspect-ratio: 16/9; overflow: hidden; border-radius: 12px; } .rmq1-main-container .rmq1-scenarios .scenarios-image .scene-img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 0.5s ease-in-out; z-index: 1; } .rmq1-main-container .rmq1-scenarios .scenarios-image .scene-img.active { opacity: 1; z-index: 2; } .rmq1-main-container .rmq1-scenarios { /* Tabs */ } .rmq1-main-container .rmq1-scenarios .scenarios-tabs { display: flex; justify-content: center; gap: 12px; position: sticky; top: 0; z-index: 10; padding-top: 25px; } .rmq1-main-container .rmq1-scenarios .scenarios-tabs .tab.active { color: #fff; } .rmq1-main-container .rmq1-scenarios .scenarios-tabs { width: 100%; margin-top: 2rem; } .rmq1-main-container .rmq1-scenarios .scenarios-tabs .scenarios-tabs-wrapper { overflow-x: auto; scrollbar-width: none; } .rmq1-main-container .rmq1-scenarios .scenarios-tabs .scenarios-tabs-wrapper::-webkit-scrollbar { display: none; } .rmq1-main-container .rmq1-scenarios .scenarios-tabs .scenarios-tabs-wrapper { -webkit-overflow-scrolling: touch; padding: 10px 0; } .rmq1-main-container .rmq1-scenarios .scenarios-tabs .scenarios-tabs-bg { position: relative; display: flex; flex-wrap: nowrap; width: max-content; background-color: #060626; border-radius: 50px; padding: 5px; margin: 0 auto; z-index: 1; } .rmq1-main-container .rmq1-scenarios .scenarios-tabs .scenarios-tabs-bg .tab-sliding-indicator { position: absolute; top: 5px; left: 0; height: calc(100% - 10px); background-color: var(--rmq1); border-radius: 40px; z-index: 0; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); width: var(--indicator-width, 0); transform: translateX(var(--indicator-left, 0)); } .rmq1-main-container .rmq1-scenarios .scenarios-tabs .tab { position: relative; z-index: 2; background: transparent !important; border: none; color: #888; padding: 10px 25px; font-weight: 600; transition: color 0.3s; white-space: nowrap; border-radius: 40px; outline: none !important; } .rmq1-main-container .rmq1-scenarios .scenarios-tabs .tab.active { color: #fff; } .rmq1-main-container .rmq1-scenarios { /* Content */ } .rmq1-main-container .rmq1-scenarios .scenarios-content { margin-top: 28px; text-align: center; } .rmq1-main-container .rmq1-scenarios .tab-content { display: none; } .rmq1-main-container .rmq1-scenarios .tab-content.active { display: block; } .rmq1-main-container .rmq1-scenarios { /* Background container */ } .rmq1-main-container .rmq1-scenarios .scenarios-tabs-bg { display: inline-flex; gap: 8px; background: #2d2d2d; /* 👈 background color */ border-radius: 999px; /* pill */ } .rmq1-main-container .rmq1-scenarios { /* Tabs */ } .rmq1-main-container .rmq1-scenarios .scenarios-tabs-bg .tab { padding: 8px 20px; border-radius: 999px; border: none; background: transparent; color: #a1a1a1; cursor: pointer; font-weight: 500; } .rmq1-main-container .rmq1-vip-insider { --rmq1-accent: #25c6b6; } .rmq1-main-container .rmq1-vip-insider .card-header h4, .rmq1-main-container .rmq1-vip-insider .card-header h5 { color: #25c6b6; } .rmq1-main-container .rmq1-vip-insider .rmq1-vip-icon-badge { background-color: rgba(37, 198, 182, 0.18); color: #25c6b6; } .rmq1-main-container .rmq1-vip-insider .card-body p i { background: rgba(37, 198, 182, 0.18); color: var(--rmq1-accent); } .rmq1-main-container .rmq1-vip-insider .card-body p i.rmq1-vip-check-icon { background: rgba(37, 198, 182, 0.14); color: #25c6b6; } .rmq1-main-container .rmq1-vip-insider .card-body p b, .rmq1-main-container .rmq1-vip-insider .card-body p .font-weight-bold { color: #25c6b6; } .rmq1-main-container .rmq1-vip-insider .rmq1-vip-cta { border-color: rgba(37, 198, 182, 0.3); background: rgba(37, 198, 182, 0.12); color: #25c6b6; } .rmq1-main-container .rmq1-vip-insider .rmq1-vip-cta:hover, .rmq1-main-container .rmq1-vip-insider .rmq1-vip-cta:focus { background: rgba(37, 198, 182, 0.22); border-color: rgba(37, 198, 182, 0.5); } .rmq1-main-container .rmq1-vip-early-supporter { --rmq1-accent: #2280e5; } .rmq1-main-container .rmq1-vip-early-supporter .card-header h4, .rmq1-main-container .rmq1-vip-early-supporter .card-header h5 { color: #2280e5; } .rmq1-main-container .rmq1-vip-early-supporter .rmq1-vip-icon-badge { background-color: rgba(34, 128, 229, 0.18); color: #2280e5; } .rmq1-main-container .rmq1-vip-early-supporter .card-body p i { background: rgba(34, 128, 229, 0.18); color: var(--rmq1-accent); } .rmq1-main-container .rmq1-vip-early-supporter .card-body p i.rmq1-vip-check-icon { background: rgba(34, 128, 229, 0.14); color: #2280e5; } .rmq1-main-container .rmq1-vip-early-supporter .card-body p b, .rmq1-main-container .rmq1-vip-early-supporter .card-body p .font-weight-bold { color: #2280e5; } .rmq1-main-container .rmq1-vip-early-supporter .rmq1-vip-cta { border-color: rgba(34, 128, 229, 0.3); background: rgba(34, 128, 229, 0.12); color: #2280e5; } .rmq1-main-container .rmq1-vip-early-supporter .rmq1-vip-cta:hover, .rmq1-main-container .rmq1-vip-early-supporter .rmq1-vip-cta:focus { background: rgba(34, 128, 229, 0.22); border-color: rgba(34, 128, 229, 0.5); } .rmq1-main-container .rmq1-vip-founder { --rmq1-accent: #2280e5; } .rmq1-main-container .rmq1-vip-founder .card-header h4, .rmq1-main-container .rmq1-vip-founder .card-header h5 { color: #2280e5; } .rmq1-main-container .rmq1-vip-founder .rmq1-vip-icon-badge { background-color: rgba(34, 128, 229, 0.18); color: #2280e5; } .rmq1-main-container .rmq1-vip-founder .card-body p i { background: rgba(34, 128, 229, 0.18); color: var(--rmq1-accent); } .rmq1-main-container .rmq1-vip-founder .card-body p i.rmq1-vip-check-icon { background: rgba(34, 128, 229, 0.14); color: #2280e5; } .rmq1-main-container .rmq1-vip-founder .card-body p b, .rmq1-main-container .rmq1-vip-founder .card-body p .font-weight-bold { color: #2280e5; } .rmq1-main-container .rmq1-vip-founder .rmq1-vip-cta { border-color: rgba(34, 128, 229, 0.3); background: rgba(34, 128, 229, 0.12); color: #2280e5; } .rmq1-main-container .rmq1-vip-founder .rmq1-vip-cta:hover, .rmq1-main-container .rmq1-vip-founder .rmq1-vip-cta:focus { background: rgba(34, 128, 229, 0.22); border-color: rgba(34, 128, 229, 0.5); } .rmq1-main-container .rmq1-vip-card .card-body p i.fa-circle-check, .rmq1-main-container .rmq1-vip-card .card-body p i.fa-circle-xmark { min-width: auto; width: auto; height: auto; border-radius: 0; background: transparent; margin-top: 0; } .rmq1-main-container .rmq1-vip-card .card-body p i.rmq1-vip-check-icon { min-width: 20px; width: 20px; height: 20px; font-size: 0.62rem; margin-top: -1px; } .rmq1-main-container .rmq1-vip-card .card-body p i.fa-circle-xmark { color: #8d97ab; opacity: 0.5; } .rmq1-main-container .rmq1-vip-table-wrap { border: 1px solid rgba(140, 163, 199, 0.25); border-radius: 15px; background: #06102a; overflow: hidden; box-shadow: 0 24px 80px rgba(0, 0, 0, 0.28); } @media (max-width: 991px) { .rmq1-main-container .rmq1-vip-table-wrap { overflow-x: auto; } } .rmq1-main-container .rmq1-vip-table { margin-bottom: 0; } .rmq1-main-container .rmq1-vip-table th, .rmq1-main-container .rmq1-vip-table td { padding: 1.4rem 1.25rem; vertical-align: top; border-color: rgba(140, 163, 199, 0.14); background: transparent; } .rmq1-main-container .rmq1-vip-table thead th { border-bottom-width: 1px; background: rgba(255, 255, 255, 0.02); } .rmq1-main-container .rmq1-vip-table thead th:first-child, .rmq1-main-container .rmq1-vip-table tbody th { width: 24%; min-width: 180px; color: #e8eefc; font-weight: 700; } .rmq1-main-container .rmq1-vip-table tbody td { color: #cbd5f5; text-align: center; } .rmq1-main-container .rmq1-vip-table .rmq1-vip-insider, .rmq1-main-container .rmq1-vip-table .rmq1-vip-founder { width: 38%; } .rmq1-main-container .rmq1-vip-table-tier { display: flex; flex-direction: column; gap: 0.45rem; text-align: center; } .rmq1-main-container .rmq1-vip-table-tier small { color: #8d97ab; font-size: 0.88rem; } .rmq1-main-container .rmq1-vip-table-title { display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; font-size: 1.15rem; font-weight: 700; color: #f1f5ff; } .rmq1-main-container .rmq1-vip-table .shopify-buy__btn-wrapper { margin-top: 0 !important; } .rmq1-main-container .rmq1-vip-table td .shopify-buy__btn { min-height: 55px; } .rmq1-main-container .rmq1-tier-founder { color: #2280e5; font-weight: 700; } .rmq1-main-container .rmq1-tier-founder .rmq1-vip-icon-badge { background-color: rgba(34, 128, 229, 0.18); color: #2280e5; } .rmq1-main-container .rmq1-tier-insider { color: #25c6b6; font-weight: 700; } .rmq1-main-container .rmq1-tier-insider .rmq1-vip-icon-badge { background-color: rgba(37, 198, 182, 0.18); color: #25c6b6; } @media (max-width: 991px) { .rmq1-main-container .rmq1-vip-table { min-width: 720px; } } @media (max-width: 767px) { .rmq1-main-container .rmq1-vip-table-wrap { overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; } .rmq1-main-container .rmq1-vip-table { min-width: 0; } .rmq1-main-container .rmq1-vip-table thead { display: none; } .rmq1-main-container .rmq1-vip-table tbody, .rmq1-main-container .rmq1-vip-table tr, .rmq1-main-container .rmq1-vip-table th, .rmq1-main-container .rmq1-vip-table td { display: block; width: 100%; } .rmq1-main-container .rmq1-vip-table tbody tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; margin: 0; } .rmq1-main-container .rmq1-vip-table tbody th { grid-column: 1/-1; width: auto; min-width: 0; padding: 2rem 0 1.25rem; text-align: center; border-top: 1px solid rgba(140, 163, 199, 0.22); border-bottom: 0; font-size: 1.35rem; line-height: 1.25; } .rmq1-main-container .rmq1-vip-table tbody tr:first-child th { padding-top: 1.5rem; } .rmq1-main-container .rmq1-vip-table tbody td { min-width: 0; padding: 0 1rem 2rem; text-align: center; border-top: 0; } .rmq1-main-container .rmq1-vip-table tbody td::before { display: block; width: 100%; margin: 0 auto 0.85rem; padding-top: 1.45rem; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; background-position: center top; background-repeat: no-repeat; background-size: 0.95rem 0.95rem; } .rmq1-main-container .rmq1-vip-table tbody td:nth-of-type(1) { border-right: 1px solid rgba(140, 163, 199, 0.12); } .rmq1-main-container .rmq1-vip-table tbody td:nth-of-type(1)::before { content: "Insider"; color: #25c6b6; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2325c6b6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 2.75 2.86 5.8 6.4.93-4.63 4.51 1.09 6.37L12 17.35 6.28 20.36l1.09-6.37-4.63-4.51 6.4-.93L12 2.75Z'/%3E%3C/svg%3E"); } .rmq1-main-container .rmq1-vip-table tbody td:nth-of-type(2)::before { content: "Backer Club"; color: #2280e5; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232280e5' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 18.5h14l-1.5-9-3.9 3-2.6-5-2.6 5-3.9-3L5 18.5Z'/%3E%3Cpath d='M8 21h8'/%3E%3C/svg%3E"); } .rmq1-main-container .rmq1-vip-table td.rmq1-vip-insider, .rmq1-main-container .rmq1-vip-table td.rmq1-vip-founder { width: auto; } .rmq1-main-container .rmq1-vip-table td .shopify-buy__btn { min-height: 52px; } } .rmq1-main-container .rmq1-vip-price { font-size: 2.5rem; line-height: 1; color: #f1f5ff; margin-bottom: 0; } .rmq1-main-container .rmq1-vip-cta { display: block; width: calc(100% - 4rem); margin: 0 2rem 2rem !important; border-radius: 28px; border: 1px solid rgba(186, 201, 226, 0.2); background: rgba(116, 131, 163, 0.2); color: #dbe2f0; text-transform: uppercase; letter-spacing: 0.08em; font-weight: 700; font-size: 0.95rem; padding: 0.95rem 1rem; } .rmq1-main-container .rmq1-vip-cta:hover, .rmq1-main-container .rmq1-vip-cta:focus { background: rgba(133, 151, 188, 0.3); border-color: rgba(186, 201, 226, 0.35); color: #eef3ff; } .rmq1-main-container .vip-offers-top-banner { height: 80vh; background-size: cover; background-repeat: no-repeat; background-position: center center; background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/rmq1_hero_banner_v4.jpg"); } @media (max-width: 991px) { .rmq1-main-container .vip-offers-top-banner { background-image: url("https://static.gl-inet.com/www/images/products/gl-rmq1/rmq1_hero_banner_mobile_v4.jpg"); background-position: center center; } } .rmq1-main-container .vip-offers-top-banner .bg-img { position: absolute; } .rmq1-main-container .vip-offers-top-banner .bg-img img { object-fit: cover; } .rmq1-main-container .vip-offers-top-banner .row { padding-top: 8vh; } @media (max-width: 768px) { .rmq1-main-container .vip-offers-top-banner .row { padding-top: 5rem; } } .rmq1-main-container .vip-offers-top-banner h1 { font-size: 5rem; } @media (max-width: 768px) { .rmq1-main-container .vip-offers-top-banner h1 { font-size: 1.8rem; } } .rmq1-main-container .timeline-section { padding: 80px 0; position: relative; } .rmq1-main-container .timeline { position: relative; max-width: 1100px; margin: auto; } @media (max-width: 768px) { .rmq1-main-container .timeline { margin-left: 5px; } } .rmq1-main-container { /* CENTER LINE */ } .rmq1-main-container .timeline::after { content: ""; position: absolute; width: 2px; background: rgb(57, 70, 253); top: 0; bottom: 0; left: 50%; transform: translateX(-50%); box-shadow: 0 0 10px rgb(57, 70, 253); } .rmq1-main-container { /* ITEM */ } .rmq1-main-container .timeline-item { padding: 20px 40px; position: relative; width: 50%; } .rmq1-main-container { /* LEFT */ } .rmq1-main-container .timeline-item.left { left: 0; text-align: right; } .rmq1-main-container { /* RIGHT */ } .rmq1-main-container .timeline-item.right { left: 50%; } .rmq1-main-container { /* DOT */ } .rmq1-main-container .timeline-item::after { content: ""; position: absolute; width: 18px; height: 18px; background: #020817; border: 2px solid rgb(57, 70, 253); top: 30px; border-radius: 50%; z-index: 1; box-shadow: 0 0 8px rgb(57, 70, 253); } .rmq1-main-container .timeline-item.left::after { right: -9px; } .rmq1-main-container .timeline-item.right::after { left: -9px; } .rmq1-main-container { /* CARD */ } .rmq1-main-container .timeline-item .content { padding: 20px; background: rgba(10, 20, 60, 0.6); border: 1px solid rgba(57, 70, 253, 0.3); border-radius: 10px; backdrop-filter: blur(6px); margin-left: 0px; } .rmq1-main-container { /* BADGE */ } .rmq1-main-container .badge-time { display: inline-block; margin-bottom: 10px; padding: 5px 10px; font-size: 12px; background: rgba(57, 70, 253, 0.15); color: #00eaff; border-radius: 4px; letter-spacing: 1px; } .rmq1-main-container { /* TITLE */ } .rmq1-main-container .timeline h4 { color: #ffffff; margin-bottom: 10px; } .rmq1-main-container { /* RESPONSIVE */ } @media (max-width: 768px) { .rmq1-main-container .timeline::after { left: 20px; } .rmq1-main-container .timeline-item { width: 100%; padding-left: 60px; padding-right: 20px; } .rmq1-main-container .timeline-item.right { left: 0; } .rmq1-main-container .timeline-item.left { text-align: left; } .rmq1-main-container .timeline-item::after { left: 11px; } } .rmq1-main-container .timeline-item::after { content: "\f521"; /* crown icon */ font-family: "Font Awesome 6 Pro"; font-weight: 400; /* regular */ position: absolute; width: 48px; height: 48px; background: #020817; border: 2px solid rgb(57, 70, 253); top: 25px; border-radius: 50%; z-index: 1; /* center icon */ display: flex; align-items: center; justify-content: center; /* icon style */ color: #00eaff; font-size: 14px; /* glow */ box-shadow: 0 0 8px rgb(57, 70, 253), 0 0 12px rgba(57, 70, 253, 0.5); } @media (max-width: 768px) { .rmq1-main-container .timeline-item::after { width: 42px; height: 42px; } } .rmq1-main-container .timeline-item.left::after { right: -24px; } @media (max-width: 768px) { .rmq1-main-container .timeline-item.left::after { right: auto; left: 0px; } } .rmq1-main-container .timeline-item.right::after { left: -24px; } @media (max-width: 768px) { .rmq1-main-container .timeline-item.right::after { left: 0px; } } .rmq1-main-container { /* VIP Reservation */ } .rmq1-main-container .timeline-item:nth-child(1)::after { content: "\f521"; /* crown */ } .rmq1-main-container { /* Confirmation */ } .rmq1-main-container .timeline-item:nth-child(2)::after { content: "\f772"; /* envelope */ } .rmq1-main-container { /* Launch */ } .rmq1-main-container .timeline-item:nth-child(3)::after { content: "\f1ea"; /* newspaper */ } .rmq1-main-container .timeline-item:nth-child(4)::after { content: "\f135"; /* rocket */ } .rmq1-main-container .timeline-item:nth-child(5)::after { content: "\f48b"; /* shipping */ } .rmq1-main-container .timeline-item:nth-child(6)::after { content: "\f54e"; /* store */ } .rmq1-main-container .faq .accordion { background-color: #06102a; border: 1px solid rgba(140, 163, 199, 0.25) !important; } .rmq1-main-container .rmq1-comparison { margin-top: 1rem; } .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-groups>div, .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-products>div { align-self: stretch; padding: 1.05rem 1.25rem; } @media (max-width: 991.98px) { .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-groups>div, .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-products>div { padding: 1rem 0.75rem; } } .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-head-label { background-color: transparent; padding: 0; } .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-group-glinet { background-color: rgba(17, 55, 121, 0.58); text-align: center; } .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-group-others { background-color: rgba(17, 55, 121, 0.38); text-align: center; } .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-product-cell { background-color: rgba(255, 255, 255, 0.04); } @media (max-width: 1200px) { .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-product-cell h3 { font-size: 1.25rem; line-height: 1.3; } } .rmq1-main-container .rmq1-comparison .rmq1-comparison-head .rmq1-comparison-product-img { max-width: 140px; } .rmq1-main-container .rmq1-comparison .rmq1-comparison-detail:nth-child(odd of .rmq1-comparison-detail) { background-color: rgba(255, 255, 255, 0.04); } .rmq1-main-container .rmq1-comparison .rmq1-comparison-detail>div { align-self: center; padding: 1.05rem 1.25rem; } .rmq1-main-container .rmq1-comparison .rmq1-comparison-detail>.col-4 { text-align: center; } @media (max-width: 991.98px) { .rmq1-main-container .rmq1-comparison .rmq1-comparison-detail>div { align-self: flex-start; padding: 1.75rem 0.75rem; } } .rmq1-main-container .rmq1-comparison .rmq1-comparison-detail>div .fa-check { color: #46b4f6; } .rmq1-main-container .rmq1-comparison .rmq1-comparison-detail>div .fa-hyphen { color: #8d97ab; } .rmq1-main-container .rmq1-comparison-vs { margin-top: 1rem; } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-header { margin-left: 0; margin-right: 0; margin-bottom: 0; } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-header>div { align-self: stretch; padding: 0.85rem 1.25rem; } @media (max-width: 991.98px) { .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-header>div { padding: 1rem 0.75rem; } } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-header .rmq1-comparison-vs-product-cell { background-color: transparent; } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-header .rmq1-comparison-vs-vs-cell { background-color: transparent; } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-header .rmq1-comparison-product-img { max-width: 180px; } @media (max-width: 1200px) { .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-header h3 { font-size: 1.25rem; line-height: 1.3; } } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail:nth-child(odd of .rmq1-comparison-vs-detail) { background-color: rgba(255, 255, 255, 0.04); } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail>div { padding: 1.05rem 1.25rem; } @media (max-width: 991.98px) { .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail>div { align-self: flex-start; padding: 1.75rem 0.75rem; } } @media (min-width: 992px) { .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail>div { align-self: stretch; display: flex; align-items: center; justify-content: center; text-align: center; } } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail>div p { margin-bottom: 0; } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail>div .fa-check { color: #46b4f6; } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail>div .fa-hyphen { color: #8d97ab; } @media (min-width: 992px) { .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail .rmq1-comparison-vs-value-cell { background-color: rgba(255, 255, 255, 0.02); } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail .rmq1-comparison-vs-label-cell { background-color: rgba(17, 55, 121, 0.38); } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail:nth-child(odd of .rmq1-comparison-vs-detail) .rmq1-comparison-vs-value-cell { background-color: rgba(255, 255, 255, 0.04); } .rmq1-main-container .rmq1-comparison-vs .rmq1-comparison-vs-detail:nth-child(odd of .rmq1-comparison-vs-detail) .rmq1-comparison-vs-label-cell { background-color: rgba(17, 55, 121, 0.58); } } .rmq1-main-container .terms-card { background-color: #06102a; border: 1px solid rgba(140, 163, 199, 0.25) !important; } .rmq1-main-container .terms-card li { color: #cbd5f5; } /* THANK YOU PAGE */ .rmq1-thankyou-container .rmq1-thank-you { font-size: 8rem; } @media (max-width: 768px) { .rmq1-thankyou-container .rmq1-thank-you { font-size: 3.5rem; } } .rmq1-thankyou-container .rmq1-text-gradient { background: linear-gradient(to right, #c9c9ff 0%, #95d3ff 51%, #d8d8ff 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; /* For Firefox */ background-clip: text; color: transparent; } The World's First KVM That Controls Laptops. From Your Browser. (function () { var words = ["Phones", "Macs", "Laptops"]; var el = document.getElementById("rmq1-rotating-text"); var idx = 0; function showWord(word) { var inner = document.createElement("span"); inner.className = "rmq1-word-inner"; inner.textContent = word; el.innerHTML = ""; el.appendChild(inner); } function cycleWord() { var inner = el.querySelector(".rmq1-word-inner"); if (inner) { inner.classList.add("slide-out"); setTimeout(function () { idx = (idx + 1) % words.length; showWord(words[idx]); }, 500); } else { idx = (idx + 1) % words.length; showWord(words[idx]); } } showWord(words[idx]); setInterval(cycleWord, 2800); })(); Plug Comet Q into your iPhone, Mac mini, or laptop, open a browser on your Windows/iOS device, and you're in control in seconds. No driver to configure. No setup hassle. Wi-Fi 6 802.11 ax Dual-Band 1.8" Built-in Touchscreen 78.5g Ultra-Light Design One USB-C cable for setup VIP ACCESS CLOSED Comet Q Supporter Wall For the supporters who were there from the start. Comet Q VIP Pass holders received priority purchase access and recognition on the official Supporter Wall. VIEW THE SUPPORTER WALL /* 基础容器 */ .product-nav { background-color: #eeeeee; position: sticky; top: 0px; z-index: 999; } /* 内部容器 */ .product-nav .product-nav-container { overflow-x: auto; -ms-overflow-style: none; /* IE and Edge */ scrollbar-width: none; /* Firefox */ } /* 隐藏 Chrome/Safari/Webkit 滚动条 */ .product-nav .product-nav-container::-webkit-scrollbar { display: none; } @media (max-width: 768px) { .product-nav .product-nav-container { overflow-x: inherit; } } /* 导航内容区域 */ .product-nav .product-nav-container .product-nav-content { display: flex; flex-direction: row; justify-content: left; align-items: center; white-space: nowrap; } @media (max-width: 768px) { .product-nav .product-nav-container .product-nav-content { overflow-x: auto; -ms-overflow-style: none; scrollbar-width: none; } .product-nav .product-nav-container .product-nav-content::-webkit-scrollbar { display: none; } } /* 导航项目 */ .product-nav .product-nav-container .product-nav-content .product-nav-item { color: #6c757d; height: -moz-fit-content; height: fit-content; padding: 0.75rem 1.5rem; background: none !important; border-bottom: 2px solid transparent; } @media (max-width: 991px) { .product-nav .product-nav-container .product-nav-content .product-nav-item { padding: 0.75rem 1rem !important; } } @media (max-width: 768px) { .product-nav .product-nav-container .product-nav-content .product-nav-item { padding: 0.75rem 1rem !important; } } /* 悬停状态 */ .product-nav .product-nav-container .product-nav-content .product-nav-item:hover { color: #3dc1cf; transition: 0.3s ease; } /* 激活状态 */ .product-nav .product-nav-container .product-nav-content .product-nav-item.active { color: #3dc1cf; border-color: #3dc1cf; } .product-nav .product-nav-wrapper { overflow: visible; } .product-nav .product-nav-wrapper ul, .product-nav .product-nav-wrapper li { list-style-type: none; margin: 0; padding: 0; unicode-bidi: normal; } .product-nav .product-nav-content { overflow-x: auto; scrollbar-width: none; display: flex; } .product-nav .product-nav-content .product-nav-item { margin: 0 0 !important; padding: 0.75rem 1.5rem !important; cursor: pointer; color: #444; background: inherit; border-bottom: 2px solid transparent; } @media (max-width: 768px) { .product-nav .product-nav-content .product-nav-item { padding: 0.75rem 1rem 0.75rem 0 !important; } } .product-nav .product-nav-content .product-nav-item.active, .product-nav .product-nav-content .sub-menu.hover1 { color: #3dc1cf; border-color: #3dc1cf; } .product-nav .dropdown-menu { background-color: #EEE; margin: -1px 0 0 !important; width: 100%; border: none; float: inherit; overflow: hidden; } .product-nav .dropdown-menu > div { overflow-x: visible; scrollbar-width: none; display: flex; margin: 0 auto; padding: 0.25rem 1rem 0.75rem 2rem; } @media (max-width: 768px) { .product-nav .dropdown-menu > div { overflow-x: auto; padding: 0.25rem 1rem 0.75rem; } } .product-nav .dropdown-menu .btn { font-size: 1rem; font-weight: 400; text-transform: inherit; padding: 0.25rem 1rem !important; color: #6c757d; border: 1px solid #6c757d; margin-right: 0.5rem; min-width: fit-content; } .product-nav .dropdown-menu .btn.active, .product-nav .dropdown-menu .btn:hover { color: #3dc1cf; border-color: #3dc1cf !important; background-color: rgba(61, 193, 207, 0.031372549); } @media (max-width: 768px) { .product-nav .dropdown-menu .btn { font-size: 14px; min-height: inherit; } } Highlight Features Reviews Specs let currentModel = '' window.addEventListener("scroll", function () { document.querySelectorAll(".product-nav-section").forEach((section) => { let sectionTop = section.offsetTop; if (pageYOffset >= sectionTop - 163) { currentModel = section.getAttribute("id"); } }); // 先移除所有 active class document.querySelectorAll(".product-nav-item").forEach((item) => { item.classList.remove("active"); }); // 移除所有 hover1 class document.querySelectorAll(".sub-menu").forEach((toggle) => { toggle.classList.remove("hover1"); }); // 先隐藏所有 dropdown-menu document.querySelectorAll(".dropdown-menu").forEach((dropdown) => { dropdown.style.display = "none"; }); // 查找并激活当前的 nav item const currentNavItem = document.querySelector(`.product-nav-item.${currentModel}`); if (currentNavItem) { currentNavItem.classList.add("active"); // 检查是否在 dropdown-menu 内 (结构: li.dropdown-menu > div.container-md > a.product-nav-item) const containerDiv = currentNavItem.parentElement; const dropdownMenu = containerDiv ? containerDiv.parentElement : null; if (dropdownMenu && dropdownMenu.classList.contains("dropdown-menu")) { // 获取 dropdown-menu 的 data-dropdown-menu 值 const dropdownMenuValue = dropdownMenu.dataset.dropdownMenu; if (dropdownMenuValue) { // 显示当前匹配的 dropdown-menu dropdownMenu.style.display = "flex"; // 在 product-nav-wrapper 下找到匹配的 sub-menu 并添加 active const parentNavItem = document.querySelector(`.product-nav-wrapper .sub-menu[data-dropdown-menu="${dropdownMenuValue}"]`); if (parentNavItem) { parentNavItem.classList.add("active"); } // 自动滚动到 active 的项,使其居中显示 setTimeout(() => { const activeItem = currentNavItem; const scrollContainer = dropdownMenu.querySelector('.container-md'); if (scrollContainer) { const containerWidth = scrollContainer.offsetWidth; const itemOffsetLeft = activeItem.offsetLeft; const itemWidth = activeItem.offsetWidth; // 计算滚动位置,使 active 项居中 const scrollPosition = itemOffsetLeft - (containerWidth / 2) + (itemWidth / 2); scrollContainer.scrollTo({ left: scrollPosition, behavior: 'smooth' }); } }, 50); } } } }); // 点击切换处理 - 不影响 active class document.querySelectorAll('.sub-menu').forEach(toggle => { const menuId = toggle.dataset.dropdownMenu; const targetMenu = document.querySelector(`.dropdown-menu[data-dropdown-menu="${menuId}"]`); if (!targetMenu) return; // 点击切换显示/隐藏 toggle.addEventListener('click', (e) => { e.preventDefault(); const isVisible = targetMenu.style.display === 'flex'; // 先隐藏所有 dropdown-menu document.querySelectorAll('.dropdown-menu').forEach(menu => { menu.style.display = 'none'; }); // 移除所有 toggle 的 hover1 class document.querySelectorAll('.sub-menu').forEach(t => { t.classList.remove('hover1'); }); // 如果当前是隐藏状态,则显示;如果是显示状态,则保持隐藏 if (!isVisible) { targetMenu.style.display = 'flex'; toggle.classList.add('hover1'); } }); }); Offline & Sleep Mode Access Intuitive 1.8" Touchscreen Wi-Fi 6 512 MB NAND Hardware-Level Security & Control Dual-core ARM Cortex-A53 Cross-Device & OS Compatibility All-in-One Type-C Connectivity Tailscale & ZeroTier Support What is Comet Q? One Cable. Full Remote Control. From Anywhere. Comet Q is a palm-sized device you plug into your mobile phones, Mac mini, or any laptops via USB-C. The moment it's connected, you can open a browser and take full control of that device. No software to install. No complicated network setup. The built-in 1.8" touchscreen allows quick setup, check status, and trigger actions right on the unit itself. It's the first KVM in the world that supports iPhones— meaning you can unlock, tap, swipe, and fully operate an iOS device from a Windows desktop, something previously impossible. Comet Q works with any device whose USB-C port supports DisplayPort Alt Mode for video output. This includes, but not limited to: iPhones: iPhone 15 and newer (excluding iPhone 16e, 17e and iPhone Air) iPads: All iPad Pro (2018 and newer), iPad Air (4th generation and newer), iPad mini (6th generation and newer), and iPad (10th generation and newer) Android phones (Samsung as example): Samsung Galaxy S8 and newer, Galaxy Note 8 and newer, Galaxy Z Fold/Flip series, and Galaxy Tab S series Laptops & mini PCs: Most models with a USB-C port that supports video output, including MacBooks, Mac mini, and most modern Windows laptops Don't see your device above? See this guide to check if your device supports DP Alt Mode. SET UP IN MINUTES Three Steps to Full Remote Control No driver install. No complicated setup. Just connect, power, and take control from your browser. 1 Connect via Built-in USB-C Use the built-in USB-C cable to connect Comet Q to the device you want to control. For everyday use, Comet Q draws power directly from that device. 2 Power It Externally When Needed For long-hour operation, or when the controlled device has only one USB-C port and also needs charging, plug external power into Comet Q’s second USB-C port. 3 Control from Any Browser Comet Q connects to a nearby Wi-Fi network so you can access its admin panel remotely from any device, on any OS. Even if the controlled device is offline or restarting, control stays with Comet Q. Browser or Software. Zero Subscription Fee. Every feature you need is packed into a compact device that fits in your pocket. ▶ ▶ ▶ ▶ ▶ ▶ One Cable Does It All A single USB-C cable carries video, data, and power simultaneously. No HDMI dongle or USB hub. Plug in Comet Q and you're ready. A built-in USB-C passthrough port keeps your device charging while you work. Works When the Device Is Asleep, Locked, or Offline Comet Q operates at the hardware level. Stay in full control even if the controlled device is logged out, asleep, or offline. This feature enables a seamless workflow even with a laptop lid closed. Control Any Device, Regardless of OS Access from a laptop or desktop? Open any browser and you're ready. Controlling from your phone or tablet? Download the Comet Q app for the best experience. Check out app here. Hardware-Level Security Comet Q operates at the hardware level, ensuring any active session ends the moment Comet Q is disconnected. No residual access, no background processes left running. 1.8" Touchscreen Setup Right on the Device The circular touchscreen on Comet Q's face means you can complete the initial setup without opening a laptop. Everything is self-explanatory from the moment it's in your hand. Tailscale & ZeroTier Support Built-in support for Tailscale and ZeroTier lets you access your devices securely over the internet. const wrapper = document.getElementById("carouselWrapper"); const container = document.getElementById("carouselContainer"); const items = document.querySelectorAll(".rmq1-carousel-item"); const textContents = document.querySelectorAll(".rmq1-text-content"); const prevBtn = document.getElementById("prevBtn"); const nextBtn = document.getElementById("nextBtn"); const progressContainer = document.getElementById("progressContainer"); let currentIndex = 0; let isPlaying = true; let imageCurrentTime = 0; const IMAGE_DURATION = 4000; // 图片播放时长 4 秒 const PAUSE_DELAY = 1000; // 暂停延迟 1 秒 const radius = 20; const circumference = 2 * Math.PI * radius; let lastTimestamp = 0; let isPausing = false; // 是否处于暂停延迟状态 let pauseStartTime = 0; // 暂停开始时间 // 初始化进度条 items.forEach((_, index) => { const bar = document.createElement("div"); bar.className = "progress-bar"; bar.addEventListener("click", () => goToSlide(index)); progressContainer.appendChild(bar); }); const progressBars = document.querySelectorAll(".progress-bar"); function updateCarousel() { imageCurrentTime = 0; // 重置图片播放时间 lastTimestamp = performance.now(); isPausing = false; // 重置暂停延迟状态 pauseStartTime = 0; // 切换时强制恢复播放状态 isPlaying = true; updatePlayPauseIcons("II"); items.forEach((item, index) => { item.classList.remove("active", "prev", "next", "hidden-left", "hidden-right"); const video = item.querySelector("video"); if (index === currentIndex) { item.classList.add("active"); if (video) { video.currentTime = 0; video.play(); // 强制播放 } // 无论视频还是图片,都开始进度更新循环 requestAnimationFrame(updateProgressLoop); } else { if (video) { video.pause(); video.currentTime = 0; } if (index === currentIndex - 1) { item.classList.add("prev"); } else if (index === currentIndex + 1) { item.classList.add("next"); } else if (index < currentIndex) { item.classList.add("hidden-left"); } else { item.classList.add("hidden-right"); } } }); // 更新文案 textContents.forEach((content, index) => { content.classList.toggle("active", index === currentIndex); }); progressBars.forEach((bar, index) => { bar.classList.toggle("active", index === currentIndex); }); prevBtn.classList.toggle("hidden", currentIndex === 0); nextBtn.classList.toggle("hidden", currentIndex === items.length - 1); // 动态调整容器高度 const activeItem = items[currentIndex]; if (activeItem) { container.style.height = activeItem.offsetHeight + "px"; } } window.addEventListener('resize', updateCarousel); function updatePlayPauseIcons(text) { const icons = document.querySelectorAll(".rmq1-icon"); icons.forEach((icon) => (icon.textContent = text)); } function goToSlide(index) { if (currentIndex === index) return; currentIndex = index; updateCarousel(); } function nextSlide() { if (currentIndex < items.length - 1) { currentIndex++; updateCarousel(); } else { // 如果到最后一张,停止播放 isPlaying = false; updatePlayPauseIcons("▶"); const video = items[currentIndex].querySelector("video"); if (video) video.pause(); } } function prevSlide() { if (currentIndex > 0) { currentIndex--; updateCarousel(); } } function updateProgressLoop(timestamp) { if (!lastTimestamp) lastTimestamp = timestamp; const deltaTime = timestamp - lastTimestamp; lastTimestamp = timestamp; const activeItem = items[currentIndex]; if (!activeItem) return; const video = activeItem.querySelector("video"); const circle = activeItem.querySelector(".rmq1-progress-ring-circle"); let percent = 0; if (video) { // 视频逻辑 if (video.duration) { percent = video.currentTime / video.duration; } } else { // 图片逻辑 if (isPlaying) { if (isPausing) { // 暂停延迟期间,保持进度条满状态 const pauseElapsed = timestamp - pauseStartTime; if (pauseElapsed >= PAUSE_DELAY) { isPausing = false; updatePlayPauseIcons("▶"); nextSlide(); return; // 切换后会开启新的循环 } percent = 1; // 保持进度条满状态 } else { imageCurrentTime += deltaTime; if (imageCurrentTime >= IMAGE_DURATION) { imageCurrentTime = IMAGE_DURATION; // 进入暂停延迟状态 isPausing = true; pauseStartTime = timestamp; updatePlayPauseIcons("▶"); } percent = imageCurrentTime / IMAGE_DURATION; } } else { percent = imageCurrentTime / IMAGE_DURATION; } } // 更新进度环 if (circle) { const offset = circumference - percent * circumference; circle.style.strokeDashoffset = offset; } if (isPlaying) { requestAnimationFrame(updateProgressLoop); } } function togglePlay() { isPlaying = !isPlaying; const activeItem = items[currentIndex]; const video = activeItem.querySelector("video"); if (isPlaying) { if (video) video.play(); updatePlayPauseIcons("II"); lastTimestamp = performance.now(); requestAnimationFrame(updateProgressLoop); } else { if (video) video.pause(); updatePlayPauseIcons("▶"); } } // 拖拽功能 let startX = 0; let isDragging = false; wrapper.addEventListener("mousedown", dragStart); wrapper.addEventListener("touchstart", dragStart); wrapper.addEventListener("mousemove", dragMove); wrapper.addEventListener("touchmove", dragMove); wrapper.addEventListener("mouseup", dragEnd); wrapper.addEventListener("touchend", dragEnd); wrapper.addEventListener("mouseleave", dragEnd); function dragStart(e) { isDragging = true; startX = getPositionX(e); } function dragMove(e) { if (!isDragging) return; } function dragEnd(e) { if (!isDragging) return; isDragging = false; const endX = getPositionX(e); const diff = endX - startX; if (diff > 50) { prevSlide(); } else if (diff < -50) { nextSlide(); } } function getPositionX(e) { return e.type.includes("mouse") ? e.pageX : e.touches[0].clientX; } // 视频播放结束逻辑 items.forEach((item, index) => { const video = item.querySelector("video"); if (video) { video.onended = () => { if (index === currentIndex) { // 视频播放完成后,等待2秒再切换 isPausing = true; pauseStartTime = performance.now(); updatePlayPauseIcons("▶"); requestAnimationFrame(waitAndNextSlide); } }; } }); // 视频结束后等待并切换到下一张 function waitAndNextSlide(timestamp) { if (!isPausing) return; const pauseElapsed = timestamp - pauseStartTime; if (pauseElapsed >= PAUSE_DELAY) { isPausing = false; updatePlayPauseIcons("▶"); nextSlide(); } else { requestAnimationFrame(waitAndNextSlide); } } // 按钮点击 nextBtn.addEventListener("click", (e) => { e.stopPropagation(); nextSlide(); }); prevBtn.addEventListener("click", (e) => { e.stopPropagation(); prevSlide(); }); items.forEach((item) => { const btn = item.querySelector(".rmq1-play-pause-btn"); if (btn) { btn.addEventListener("click", (e) => { e.stopPropagation(); togglePlay(); }); } item.addEventListener("click", (e) => { if (item.classList.contains("prev")) prevSlide(); if (item.classList.contains("next")) nextSlide(); }); }); // 初始化逻辑:使用 Intersection Observer 监听模块可见性 let hasInitialized = false; // 记录是否已经进行了首次初始化 const observerOptions = { root: null, rootMargin: '0px', threshold: 0.5 // 50% 可见即视为进入 }; const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { // 进入可视区域 if (!hasInitialized) { updateCarousel(); hasInitialized = true; } else { // 如果已经初始化过,且当前是暂停状态,则恢复播放 if (!isPlaying) { togglePlay(); } } } else { // 移出可视区域 // 如果当前正在播放,则暂停 if (hasInitialized && isPlaying) { togglePlay(); } } }); }, observerOptions); const targetSection = document.querySelector('.rmq1-video-carousel'); if (targetSection) { observer.observe(targetSection); } else { setTimeout(updateCarousel, 100); } Why Needs This Why Do I Need a KVM for Mobile Devices? Managing a mobile device remotely has always been a challenge. Traditional KVMs work great for computers, but phones and tablets have always been left out. If something goes wrong, you either need to be physically present or accept that there's simply no simple solution built for the job. Comet Q changes that. By connecting directly through the USB-C port, Comet Q gives you true hardware-level control over your iPhone, iPad, or Android device — providing you the option to control everything from a browser, on any device, any operating system. That means you can control an iPhone from a Windows PC, a MacBook from an Android tablet, or an iPad from a Linux machine. The combination no longer matters. This opens up possibilities that simply weren't possible before: Developers can remotely manage test devices, run builds, and debug without being at their desk. IT teams can maintain and troubleshoot a fleet of mobile devices from a single interface Content creators can control a dedicated streaming or recording device from anywhere in the room Power users can manage a secondary device without ever picking it up Children living away from home can remotely help their parents with everyday tech frustrations — setting up online shopping accounts, clearing storage, updating apps, fixing broken Wi-Fi settings, navigating confusing system menus, or simply showing them how to video call — all without needing to be in the same room, city, or country Whether you're managing one device or many, Comet Q gives you the kind of control over mobile hardware that was previously reserved for desktop and server environments. Toal System Control Touchscreen Interface Browser-Based Access Touchscreen Interface The built-in touchscreen with an intuitive graphical user interface, lets you easily view and manage features that are important like connecting to a Wi-Fi network, and enabling or disabling the Cloud Service. Browser-Based Access Access and control your Comet Q from any browser at glkvm.com. This maximizes convenience, without needing to install any applications to make sure you always have access to your Comet Q. document.addEventListener('DOMContentLoaded', () => { const container = document.querySelector('.rmq1-feature-switcher'); if (!container) return; const navItems = container.querySelectorAll('.feature-nav-item'); // 电脑端项 const mbTabs = container.querySelectorAll('.mb-tab'); // 手机端标签 const imgs = container.querySelectorAll('.feature-img'); // 联动图片 const pcIndicator = container.querySelector('.nav-indicator'); // 电脑端竖线 const mbIndicator = container.querySelector('.mb-tab-indicator'); // 手机端横线 let currentIndex = 0; let autoTimer = null; const updateUI = (index) => { currentIndex = index; // 1. 同步所有 active 状态 navItems.forEach((item, i) => { const isActive = i === index; item.classList.toggle('active', isActive); // 电脑端描述文字展开/折叠 const descBox = item.querySelector('.description-box'); if (descBox) descBox.style.maxHeight = isActive ? descBox.scrollHeight + 'px' : '0px'; }); mbTabs.forEach((tab, i) => tab.classList.toggle('active', i === index)); imgs.forEach((img, i) => img.classList.toggle('active', i === index)); // 2. 电脑端竖线白条逻辑 (纵向滑动) const activeNavItem = navItems[index]; if (activeNavItem && pcIndicator) { pcIndicator.style.height = `${activeNavItem.offsetHeight}px`; pcIndicator.style.transform = `translateY(${activeNavItem.offsetTop}px)`; } // 3. 手机端底部白条逻辑 (横向滑动) const activeTab = mbTabs[index]; if (activeTab && mbIndicator) { mbIndicator.style.width = `${activeTab.offsetWidth}px`; mbIndicator.style.transform = `translateX(${activeTab.offsetLeft}px)`; // 手机端自动滚动逻辑:让选中的项滚到视野中间 const scrollArea = activeTab.closest('.mb-tabs-scroll-area'); if (scrollArea) { const targetScroll = activeTab.offsetLeft - (scrollArea.offsetWidth / 2) + (activeTab.offsetWidth / 2); scrollArea.scrollTo({ left: targetScroll, behavior: 'smooth' }); } } }; // 【重要】:使用 ResizeObserver 监听 PC 端高度变化 // 因为文字展开是动态的,白条高度需要实时跟随 if (window.ResizeObserver && pcIndicator) { const ro = new ResizeObserver(() => { const activeNavItem = navItems[currentIndex]; if (activeNavItem) { pcIndicator.style.height = `${activeNavItem.offsetHeight}px`; pcIndicator.style.transform = `translateY(${activeNavItem.offsetTop}px)`; } }); navItems.forEach(item => ro.observe(item)); } const startAutoPlay = () => { clearInterval(autoTimer); autoTimer = setInterval(() => { updateUI((currentIndex + 1) % navItems.length); }, 5000); }; // 绑定点击:电脑端和手机端 [navItems, mbTabs].forEach(group => { group.forEach((el, idx) => { el.addEventListener('click', () => { updateUI(idx); startAutoPlay(); }); }); }); // 窗口改变大小时重新定位 window.addEventListener('resize', () => updateUI(currentIndex)); // 初始运行 updateUI(0); startAutoPlay(); }); Dedicated App for the Full Experience While browser access covers most use cases, some interactions — particularly touch gestures and precise input — are better handled natively. The GLKVM app is built to fill that gap, delivering a smoother, more responsive experience where the browser falls short. The app is especially recommended when using a mobile device as the controller, such as operating a laptop from an iPad, where touch compatibility in a browser can be limiting. Available on Windows, macOS, App Store, and Google Play, the GLKVM app also lets you manage all your GL.iNet Comet devices in one place — no need to connect to each one individually. Preset Wi-Fi Device Sharing Feature Multi-Device Management 2-Factor Authentication WireGuard VPN Wake on LAN Comet Q lets you save and preset Wi-Fi credentials before sending the device to someone else. Set it up at home, ship it to your parents, and all they need to do is plug it in — no calls asking for help setting it up. True plug and play. Need to give someone else access? Comet Q lets you securely share device access with multiple users, each connecting through their own individual account. This mitigate the risk of security compromises from shared passwords. Every user connects independently via browser or the GLKVM app, making it ideal for team collaboration, remote tech support, training sessions, and handoffs between colleagues. With Multi-device Management, users can view multiple Windows, macOS, and Linux computer screens simultaneously. This feature supports dynamic viewing, full-screen display, and customizable split-screen layouts, allowing administrators to monitor several devices in real time, including server errors and anomalies, without switching between computers. We’ve also added cross-screen mouse and keyboard control, enabling users to seamlessly switch between multiple computers using just one set of peripherals for a smooth, efficient workflow. Comet Q is built with security at every layer. Two-Factor Authentication (2FA) lets you pair your preferred authenticator app for an added layer of account protection. Set a 4-digit PIN to lock Comet Q's touchscreen and prevent unauthorized physical access. At the same time, a one-time dynamic code is generated on demand when binding Comet Q to your account — a significantly more secure approach than relying on a fixed, preset device ID that anyone could potentially intercept or guess. With Wake on LAN functionality, you can bring your connected mobile devices out of sleep or standby mode remotely. Please note: WoL requires the connected device to be in a low-power sleep state; it cannot remotely power on a device that is completely turned off or dead. Comparison Comet Q VS Traditional KVM GL.iNet Products Others Comet Q (GL-RMQ1) Other KVM Traditional KVM Display Max. Resolution Max. Resolution 2K QHD @ 60FPS Max. Resolution 1080p @ 60FPS Max. Resolution 1080p @ 60FPS Touchscreen Touchscreen 1.8" Touchscreen 1.69" Touchscreen Varies Latency Latency ~80ms (incl. Wi-Fi) Latency 30–60 ms Latency 100ms Two Way Audio Two Way Audio Two Way Audio Two Way Audio Varies System & Connectivity Processor Processor Dual-core ARM Cortex-A53 Processor Single-core ARM Cortex-A7 Processor Single-core Memory Memory LPDDR4 512MB Memory DDR3L 256MB Memory Varies (1–8GB) Storage Storage 512MB Nand Storage SD Card Storage SD Card Wi-Fi Wi-Fi Wi-Fi 6 Wi-Fi Wi-Fi Control Mobile Devices Control Mobile Devices iPhone & iPad Control Mobile Devices Control Mobile Devices Power Passthrough Power Passthrough Power Passthrough Power Passthrough Cross OS Compatibility Cross OS Compatibility Cross OS Compatibility Cross OS Compatibility Sleep Mode Access Sleep Mode Access Sleep Mode Access Sleep Mode Access File Transfer File Transfer File Transfer File Transfer Wake on Lan Wake on Lan Wake on Lan Wake on Lan Cloud Management & Access Cloud Management & Access Cloud Management & Access Cloud Management & Access Browser-based Control Browser-based Control Browser-based Control Browser-based Control One-Time Purchase One-Time Purchase One-Time Purchase One-Time Purchase GLKVM App GLKVM App GLKVM App GLKVM App Security 2 Factor Authentication 2 Factor Authentication 2 Factor Authentication 2 Factor Authentication Dynamic Binding Code Dynamic Binding Code Dynamic Binding Code Dynamic Binding Code Built-in Tailscale Built-in Tailscale Built-in Tailscale Built-in Tailscale Build-in ZeroTier Build-in ZeroTier Build-in ZeroTier Build-in ZeroTier Self-hosted Option Self-hosted Option Self-hosted Option Self-hosted Option Screen Poassword Protection Screen Poassword Protection Screen Poassword Protection Screen Poassword Protection Option for Double Approval Option for Double Approval Option for Double Approval Option for Double Approval Comet Q VS Remote Control Software Comet Q VS Remote Control Software Offline & Sleep Mode Access Offline & Sleep Mode Access Offline & Sleep Mode Access Cross OS & Device Compatibility Cross OS & Device Compatibility Cross OS & Device Compatibility Zero-Install Setup Zero-Install Setup Zero-Install Setup One-Time Purchase One-Time Purchase One-Time Purchase Professional Tech Press Insights Some use cases could certainly be handled through scrcpy software in combination with VNC or Raspberry Pi Connect remote access software, but it’s not quite as easy as asking someone to connect the “remote access clock” to the USB-C port of their phone or tablet.. It's been an absolute game-changer, letting me manage my server without being physically in front of it, and the best part is that I can do it from anywhere with an internet connection. Product Reviews from Youtubers Comet Q (GL-RMQ1) Reviews What the heck even is this thing?? Gl.iNet Comet Q Revealed - A Remote 1 USB KVM for Your Phone, iPad, Macbook and PC Comet Q: USB C Control All your Devices. Remote access windows Linux Ubuntu Android and iPhone A Buyer's Guide to KVMs - Get It Right, FIRST TIME! (with AliExpress) What is this Comet Q? Remote Access to ANY DEVICE! - GL.iNET Comet Pro Remote KVM This Tiny Device Just Changed My Home Lab Forever | GLiNet Comet Q — First Look & Hands-on GL.iNet Comet Q + Comet X: The Kickstarter KVM Deal You Should Know About View More What Beta Testers are Saying slide 2 to 4 of 7 This device is best suited to be utilized in a doctor's office where the majority of devices consist of MacBook Air and iPad Pro 12.9. Doctors and nurses do not have the patience or time to provide detailed explanations or remote walkthroughs to the IT department. With Comet Q, once provisioned, staff can connect Comet Q to the MacBook or iPad to enable the IT department to remotely configure or troubleshoot issues. @Rubenel IT Support for Clinics and Law Offices The Comet Q is a fantastic little device that has been incredibly useful for my app development workflow, saving me a significant amount of time. As a huge bonus, it even allowed me to effortlessly access a smartphone with a broken screen. @fifux540 Accessing a Broken-Screen Phone Great device. Small. I love the orange sleeve for protection and for visibility. Tucking away the cable underneath is a great touch for storage and to prevent damage. @G3Castle Tested with iPhone 17 & Microsoft Surface Laptop 4 This is my first KVM device in my Homelab. Super easy to setup and I was up and running in under 5 minutes. A great device with lots of potential uses - especially with laptops. @mikecurlvaa Tested with Geekom GT1 Mega / Windows 11 & Windows 25 H2 Great new product with great potential for modern Remote KVM applications with very high resolution. Includes USB-C pass-through power for mobile devices. @sd24 Tested with Samsung S21 Ultra & Samsung S24 Ultra The integrated USB-C cable is especially convenient, eliminating the need to carry or locate additional cables. The display is excellent-bright, sharp, and highly responsive to touch input. @cloudgenki Tested with iPhone 15, iPhone 17 Pro Max & GMKtec NucBox K8 The connection was very easy... it could also be connected to smartphones and iPads. In the case of the Galaxy S23U, it was also very convenient to test in a Dex environment. @projecty Tested with Surface Pro 12” Gen 1 & Dell Pro 14 (2025) This device is best suited to be utilized in a doctor's office where the majority of devices consist of MacBook Air and iPad Pro 12.9. Doctors and nurses do not have the patience or time to provide detailed explanations or remote walkthroughs to the IT department. With Comet Q, once provisioned, staff can connect Comet Q to the MacBook or iPad to enable the IT department to remotely configure or troubleshoot issues. @Rubenel IT Support for Clinics and Law Offices The Comet Q is a fantastic little device that has been incredibly useful for my app development workflow, saving me a significant amount of time. As a huge bonus, it even allowed me to effortlessly access a smartphone with a broken screen. @fifux540 Accessing a Broken-Screen Phone Great device. Small. I love the orange sleeve for protection and for visibility. Tucking away the cable underneath is a great touch for storage and to prevent damage. @G3Castle Tested with iPhone 17 & Microsoft Surface Laptop 4 This is my first KVM device in my Homelab. Super easy to setup and I was up and running in under 5 minutes. A great device with lots of potential uses - especially with laptops. @mikecurlvaa Tested with Geekom GT1 Mega / Windows 11 & Windows 25 H2 document.addEventListener('DOMContentLoaded', () => { const bgContainer = document.querySelector('.scenarios-tabs-bg'); const scrollWrapper = document.querySelector('.scenarios-tabs-wrapper'); const tabs = document.querySelectorAll('.rmq1-scenarios .tab'); const imgs = document.querySelectorAll('.rmq1-scenarios .scene-img'); // 假设用了叠加法 const contents = document.querySelectorAll('.rmq1-scenarios .tab-content'); // 更新滑块位置并自动居中 const updateTabUI = (activeTab) => { if (!activeTab) return; // 1. 计算滑块位置 const tabWidth = activeTab.offsetWidth; const tabLeft = activeTab.offsetLeft; bgContainer.style.setProperty('--indicator-width', `${tabWidth}px`); bgContainer.style.setProperty('--indicator-left', `${tabLeft}px`); // 2. 手机端自动居中逻辑 (关键修复) if (scrollWrapper) { // 计算目标滚动位置:Tab 的左偏移 - (容器的一半) + (Tab宽度的一半) const containerWidth = scrollWrapper.offsetWidth; const targetScroll = tabLeft - (containerWidth / 2) + (tabWidth / 2); scrollWrapper.scrollTo({ left: targetScroll, behavior: 'smooth' // 平滑滚动 }); } }; tabs.forEach(tab => { tab.addEventListener('click', () => { const target = tab.getAttribute('data-tab'); // 状态切换 tabs.forEach(t => t.classList.remove('active')); tab.classList.add('active'); updateTabUI(tab); // 图片和文字内容联动 if (imgs.length > 0) { imgs.forEach(img => { img.classList.toggle('active', img.getAttribute('data-target') === target); }); } contents.forEach(content => { content.classList.toggle('active', content.id === target); }); }); }); // 初始化位置 const initialActive = document.querySelector('.rmq1-scenarios .tab.active'); if (initialActive) { setTimeout(() => updateTabUI(initialActive), 200); } // 窗口大小改变时重置 window.addEventListener('resize', () => { const currentActive = document.querySelector('.rmq1-scenarios .tab.active'); updateTabUI(currentActive); }); }); document.addEventListener('DOMContentLoaded', function () { const pillLinks = document.querySelectorAll('a[data-toggle="pill"][data-target]'); console.log(pillLinks); pillLinks.forEach(function (link) { link.addEventListener('click', function (e) { const targetIds = this.dataset.target.split(', '); console.log(targetIds); document.querySelectorAll('.tab-pane').forEach(panel => { panel.classList.remove('active', 'show'); }); targetIds.forEach(function (id) { const panel = document.querySelector(id); if (panel) { panel.classList.add('active', 'show'); } }); }); }); }); Technical Specifications Interface 1 x USB Type-C (power passthrough) 1 x USB Type-C Cable (support DP Alt Mode) Operating System Buildroot CPU ARM Cortex, quad-core Memory / Storage LPDDR4 512 MB / NAND 512 MB Display Screen 1.8 in, touchscreen Wi-Fi Protocol IEEE 802.11 a/b/g/n/ac/ax Wi-Fi Speed 5 GHz: 286 Mbps 2.4 GHz: 286 Mbps Antennas 1 x internal Wi-Fi antenna Resolution 2K QHD@60FPS Power Input Type-C PD, 5V/3A Dimension Tools & Downloadables Datasheet | Firmware | App | Unboxing | Tutorials | Media Kit