:root {
  --page: #e9edf5; --surface: #fbfcff; --surface-soft: #f2f5fa; --ink: #0b0d13;
  --muted: #5e6572; --line: #dfe4ed; --accent: #397bed; --radius: 18px;
  --pill: 999px; --header: 78px; --wrap: 1180px;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--header) + 18px); }
body { overflow-x: hidden; font-family: Inter, Arial, sans-serif; color: var(--ink); background: var(--page); line-height: 1.5; }
img { display: block; max-width: 100%; } a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; } ul { list-style: none; }
.wrap { width: min(var(--wrap), calc(100% - 32px)); margin-inline: auto; }
h1, h2 { font-weight: 700; letter-spacing: -.065em; line-height: .98; }
h1 { font-size: clamp(46px, 6vw, 84px); } h2 { font-size: clamp(38px, 4.7vw, 62px); margin-bottom: 20px; }
h3 { font-size: 17px; line-height: 1.1; margin-bottom: 8px; }
.eyebrow { margin-bottom: 14px; color: #69717f; font-size: 10px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; }
.lead { max-width: 45ch; color: var(--muted); font-size: 15px; }
.btn { display: inline-flex; height: 48px; align-items: center; justify-content: center; gap: 9px; padding: 0 22px; border-radius: var(--pill); font-size: 13px; font-weight: 600; transition: transform .2s ease, box-shadow .2s ease; }
.btn:hover { box-shadow: 0 9px 18px rgba(12,17,27,.16); transform: translateY(-2px); } .btn--dark { color: #fff; background: var(--ink); }
.link { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 600; }
.play { position: relative; width: 25px; height: 25px; border: 1px solid var(--ink); border-radius: 50%; }
.play::after { position: absolute; top: 7px; left: 9px; content: ''; border-width: 5px 0 5px 7px; border-style: solid; border-color: transparent transparent transparent currentColor; }

.header { position: sticky; z-index: 20; top: 12px; width: min(var(--wrap), calc(100% - 32px)); height: var(--header); margin: 12px auto 0; border: 1px solid rgba(220,226,237,.8); border-radius: 16px; background: rgba(255,255,255,.85); box-shadow: 0 8px 24px rgba(31,43,62,.07); backdrop-filter: blur(18px); }
.header__inner { display: flex; align-items: center; gap: 28px; height: 100%; }
.logo { display: inline-flex; align-items: center; gap: 9px; margin-right: auto; font-size: 11px; font-weight: 700; letter-spacing: .29em; white-space: nowrap; }
.logo img { width: 34px; height: 34px; object-fit: cover; border: 1px solid #e1e6ee; border-radius: 50%; background: #fff; } .nav { display: none; gap: 24px; }
.nav a { color: #343b47; font-size: 13px; font-weight: 600; transition: color .2s ease; } .nav a:hover { color: var(--accent); }
.header__buy { display: none; height: 42px; padding-inline: 22px; font-size: 13px; }
.burger { display: grid; width: 42px; height: 42px; place-content: center; gap: 6px; } .burger span { display: block; width: 19px; height: 1.5px; background: var(--ink); }
.nav.is-open { position: absolute; top: calc(100% + 8px); right: 0; left: 0; display: flex; flex-direction: column; gap: 14px; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.98); box-shadow: 0 15px 30px rgba(19,28,43,.14); }

.section, .home { width: min(calc(var(--wrap) + 2px), calc(100% - 32px)); margin: 18px auto 0; padding: clamp(56px, 8vw, 106px) 0; border: 1px solid rgba(218,224,234,.95); border-radius: var(--radius); background: var(--surface); box-shadow: 0 14px 30px rgba(33,47,69,.05); }
.section--gray { background: #f5f7fb; } .home { min-height: 670px; padding-top: clamp(74px, 10vw, 130px); overflow: hidden; }
.home__grid, .device__grid, .features__grid, .faq__grid { display: grid; gap: 42px; }
.home__grid > *, .device__grid > *, .features__grid > *, .faq__grid > * { min-width: 0; }
.home__copy { position: relative; z-index: 2; }
.home__copy > p:not(.eyebrow) { max-width: 43ch; margin: 23px 0 30px; color: var(--muted); font-size: 15px; overflow-wrap: anywhere; }
.home__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; }
.home__chips { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 48px; color: #27303d; font-size: 10px; font-weight: 650; }
.home__chips li { display: flex; min-height: 42px; align-items: center; gap: 9px; padding: 7px 9px; border: 1px solid #e4e8ef; border-radius: 10px; background: rgba(255,255,255,.66); }
.home__chips img { width: 24px; height: 24px; flex: 0 0 auto; padding: 4px; object-fit: contain; border-radius: 7px; background: #edf4ff; }
.home__visual { position: relative; min-height: 360px; }
.home__side { position: absolute; z-index: 2; right: 8px; bottom: -4px; color: #8d96a7; font-size: 10px; font-weight: 700; letter-spacing: .2em; line-height: 1.55; text-align: right; }

.product-stage { position: relative; display: grid; min-height: 100%; overflow: hidden; place-items: center; border: 1px solid #e6eaf1; border-radius: 15px; background: radial-gradient(circle at 75% 25%, #fff 0 8%, transparent 42%), linear-gradient(145deg, #e7ebf3, #f8f9fc 48%, #dbe2ed); isolation: isolate; }
.product-stage::after { position: absolute; z-index: -1; right: -18%; bottom: -28%; width: 105%; height: 50%; border-radius: 50%; background: rgba(95,111,136,.18); content: ''; filter: blur(22px); transform: rotate(-7deg); }
.stage-glow { position: absolute; z-index: -1; top: 16%; right: 10%; width: 56%; aspect-ratio: 1; border-radius: 50%; background: rgba(255,255,255,.8); filter: blur(28px); }
.device-model { position: relative; z-index: 1; width: 72%; aspect-ratio: 1.72; padding: 6% 5%; border: 8px solid #161b25; border-radius: 12% / 18%; background: linear-gradient(145deg, #313946, #080a0f 48%, #242b36); box-shadow: -18px 24px 22px rgba(16,22,32,.3), inset 2px 2px 1px rgba(255,255,255,.15), inset -4px -4px 8px rgba(0,0,0,.7); transform: rotate(-18deg) skewX(-2deg); }
.device-model::before { position: absolute; top: 17%; left: -5%; width: 5%; height: 51%; border-radius: 4px 0 0 4px; background: #0a0c10; content: ''; }
.device-model__screen { display: grid; width: 100%; height: 100%; place-items: center; overflow: hidden; border: 2px solid #06070a; border-radius: 7% / 13%; background: radial-gradient(circle at 50% 42%, #273e65 0, #0e1725 29%, #05070b 73%); box-shadow: inset 0 0 15px rgba(84,144,255,.2); }
.device-model__screen img { width: 27%; filter: grayscale(1) contrast(1.9) brightness(3.2); opacity: .95; }
.device-model__screen span { position: absolute; bottom: 18%; color: #f5f7fb; font-size: clamp(6px, .75vw, 10px); font-weight: 600; letter-spacing: .34em; }
.device-model__port, .device-model__key { position: absolute; bottom: -8%; display: block; height: 8%; border: 2px solid #020305; border-radius: 4px; background: #252c37; }
.device-model__port { left: 39%; width: 19%; } .device-model__key { left: 64%; width: 9%; } .device-model__key--small { left: 76%; width: 5%; }
.product-stage--hero { height: 100%; min-height: 430px; } .device-model--hero { width: 90%; transform: rotate(-18deg) translateY(5%); }

.device__copy .lead { margin-bottom: 27px; } .product-stage--device { min-height: 330px; } .device-model--device { width: 84%; transform: rotate(-23deg) translate(2%, 2%); }
.specs { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin-top: 54px; padding-top: 30px; border-top: 1px solid var(--line); }
.specs article { padding-left: 13px; border-left: 1px solid #d8dee9; } .specs b { display: block; margin-bottom: 4px; font-size: 18px; letter-spacing: -.04em; } .specs span { color: var(--muted); font-size: 10px; }

.features__head { margin-bottom: 34px; } .product-stage--detail { min-height: 330px; background: linear-gradient(145deg, #111720, #38495e); } .product-stage--detail::after { bottom: -20%; background: rgba(0,0,0,.55); } .device-model--detail { width: 110%; transform: rotate(-7deg) translate(-10%, 18%); }
.feature-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; } .feature-cards li { min-height: 165px; padding: 18px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.74); } .feature-cards p { color: var(--muted); font-size: 11px; line-height: 1.45; }
.icon-blue { display: grid; width: 38px; height: 38px; margin-bottom: 15px; place-items: center; border: 1px solid #deebff; border-radius: 11px; color: var(--accent); background: #eff5ff; box-shadow: 0 5px 12px rgba(58,123,237,.09); }
.icon-blue img { width: 23px; height: 23px; object-fit: contain; }

.filters { display: flex; flex-wrap: wrap; gap: 7px; margin: 25px 0 24px; } .filters button { height: 34px; padding: 0 13px; border-radius: var(--pill); color: var(--muted); font-size: 10px; font-weight: 600; } .filters button.is-active { color: #fff; background: var(--ink); }
.gallery-frame { position: relative; display: grid; min-height: 150px; overflow: hidden; place-items: center; border-radius: 11px; background: #e3e8f0; }
.gallery-frame--main { min-height: clamp(260px, 40vw, 410px); background: linear-gradient(150deg, #e5e9f0, #f8f9fb 52%, #cbd3df); } .device-model--gallery { width: min(67%, 640px); transform: rotate(-8deg) translate(6%, 3%); }
.gallery__row { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 10px; } .gallery-frame--side { background: linear-gradient(140deg, #202733, #677385); } .device-model--thumb { width: 120%; transform: rotate(67deg) translate(10%, 3%); }
.gallery-frame--ui { background: #151b25; } .ui-card { display: grid; width: 62%; aspect-ratio: .82; gap: 8%; padding: 13%; border-radius: 8px; background: #1e2b41; box-shadow: 0 10px 18px #05070d; } .ui-card span { border-radius: 3px; background: linear-gradient(90deg, #4b8eff 30%, #2e3f59 30%); } .ui-card b { align-self: end; color: #c1d8ff; font-size: 8px; letter-spacing: .16em; }
.gallery-frame--pack { background: linear-gradient(150deg, #d5dbe5, #f6f7f9); } .package-box { display: grid; width: 58%; aspect-ratio: .72; place-items: center; border: 1px solid #1c2129; border-radius: 3px; background: linear-gradient(140deg, #313943, #07090d); box-shadow: 10px 13px 17px rgba(17,24,34,.25); transform: rotate(-8deg); } .package-box span { color: white; font-size: 8px; letter-spacing: .26em; }
.gallery-frame--acc { background: linear-gradient(145deg, #121720, #525f71); } .cable { width: 55%; aspect-ratio: 1; border: 11px solid #0a0d12; border-radius: 50%; box-shadow: inset 0 0 0 2px #536071; } .adapter { position: absolute; right: 17%; bottom: 21%; width: 28%; height: 18%; border-radius: 5px; background: #0b0e14; transform: rotate(-25deg); }
.gallery__nav { display: flex; justify-content: flex-end; gap: 7px; margin-top: 14px; } .circle-btn { width: 35px; height: 35px; border-radius: 50%; color: #fff; background: var(--ink); }
.socials a, .footer__social a { display: inline-flex; height: 34px; align-items: center; padding: 0 12px; border: 1px solid var(--line); border-radius: var(--pill); background: #fff; font-size: 10px; font-weight: 600; }

.section--community { background: #f2f5fa; }
.section--community .eyebrow { color: #697a95; }
.section--community .lead { color: var(--muted); }
.community { display: grid; gap: 38px; align-items: end; }
.community__intro h2 { max-width: 11ch; }
.community__links { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.community-link { display: flex; min-height: 122px; flex-direction: column; justify-content: space-between; padding: 18px; border: 1px solid #dfe5ef; border-radius: 12px; background: rgba(255,255,255,.72); transition: transform .2s ease, border-color .2s ease; }
.community-link:hover { border-color: #b7cdef; transform: translateY(-3px); }
.community-link b { font-size: 15px; letter-spacing: -.02em; }
.community-link span { display: flex; align-items: end; justify-content: space-between; color: #748096; font-size: 10px; }
.community-link i { color: var(--ink); font-size: 16px; font-style: normal; }

.downloads-page { min-height: 100vh; }
.downloads-hero { padding-top: clamp(70px, 11vw, 130px); padding-bottom: clamp(42px, 7vw, 78px); }
.downloads-hero__grid { display: grid; gap: 42px; align-items: center; }
.downloads-hero h1 { margin-bottom: 18px; }
.downloads-hero .lead { margin-bottom: 28px; }
.downloads-status { display: flex; align-items: center; gap: 9px; color: #4c607c; font-size: 12px; font-weight: 600; }
.downloads-status::before { width: 8px; height: 8px; border-radius: 50%; background: #f0a92e; content: ''; box-shadow: 0 0 0 4px #fff2d6; }
.downloads-visual { display: grid; min-height: 330px; place-items: center; overflow: hidden; border: 1px solid #e2e8f1; border-radius: 16px; background: linear-gradient(145deg, #e9eef6, #fbfcff 48%, #dce4ef); }
.download-file { width: min(78%, 390px); padding: 25px; border: 1px solid #1d2735; border-radius: 12px; background: linear-gradient(140deg, #303b4d, #0b0f16); box-shadow: 14px 20px 28px rgba(19,31,49,.22); transform: rotate(-7deg); }
.download-file__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 48px; color: #d7e2f5; font-size: 10px; letter-spacing: .18em; }
.download-file__mark { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 10px; color: #e8f0ff; background: #1b2a40; font-size: 18px; }
.download-file__name { display: block; margin-top: 16px; color: #fff; font-size: 16px; font-weight: 650; }
.download-file__meta { display: block; margin-top: 5px; color: #9ca9bb; font-size: 10px; }
.download-content { display: grid; gap: 16px; padding-bottom: clamp(42px, 7vw, 78px); }
.download-card { padding: clamp(24px, 4vw, 38px); border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.download-card h2 { font-size: clamp(26px, 3vw, 40px); }
.firmware-card { display: grid; gap: 22px; }
.firmware-card__info { display: flex; align-items: flex-start; gap: 16px; }
.firmware-card__icon { display: grid; width: 46px; height: 46px; flex: 0 0 auto; place-items: center; border-radius: 12px; color: var(--accent); background: #eef5ff; font-size: 19px; }
.firmware-card__info p, .download-card > p { color: var(--muted); font-size: 13px; }
.firmware-card__info strong { display: block; margin-bottom: 3px; font-size: 15px; }
.btn[aria-disabled="true"] { color: #8993a2; background: #e9edf3; pointer-events: none; }
.instructions { counter-reset: install; display: grid; gap: 0; margin-top: 20px; }
.instructions li { position: relative; min-height: 65px; padding: 0 0 18px 51px; color: var(--muted); font-size: 13px; }
.instructions li::before { position: absolute; left: 0; top: -2px; display: grid; width: 31px; height: 31px; place-items: center; border: 1px solid #cdd7e5; border-radius: 50%; color: var(--ink); background: #fff; content: counter(install); counter-increment: install; font-size: 11px; font-weight: 700; }
.instructions li:not(:last-child)::after { position: absolute; top: 32px; bottom: 0; left: 15px; width: 1px; background: #dce3ed; content: ''; }
.instructions b { color: var(--ink); }
.download-note { padding: 16px 18px; border-radius: 11px; color: #657080; background: #f1f4f8; font-size: 12px; }

.accordion { margin-top: 29px; border-top: 1px solid var(--line); } .acc { border-bottom: 1px solid var(--line); } .acc__btn { display: flex; width: 100%; align-items: center; justify-content: space-between; padding: 16px 0; text-align: left; font-size: 13px; font-weight: 600; } .acc__btn span { color: #7b8493; font-size: 20px; font-weight: 400; transition: transform .2s ease; } .acc__body { display: none; padding: 0 0 17px; color: var(--muted); font-size: 12px; } .acc.is-open .acc__body { display: block; } .acc.is-open .acc__btn span { transform: rotate(45deg); }
.faq-card { height: fit-content; padding: 21px; border: 1px solid var(--line); border-radius: 14px; background: #fff; text-align: center; } .faq-media { width: 100%; aspect-ratio: 1.2; margin-bottom: 20px; overflow: hidden; border-radius: 10px; background: #fff; } .faq-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; } .faq-card p { margin-bottom: 17px; font-size: 16px; font-weight: 700; line-height: 1.25; }

.preorder { max-width: 710px; padding: 5px 0; text-align: center; } .preorder__logo { display: grid; width: 70px; height: 70px; margin: 0 auto 25px; place-items: center; border: 1px solid var(--line); border-radius: 19px; background: #fff; } .preorder__logo img { width: 39px; height: 39px; } .preorder h2 { margin-bottom: 12px; } .preorder__lead { margin: 14px auto 28px; } .preorder__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 16px 23px; margin-bottom: 17px; } .preorder__note { color: var(--muted); font-size: 11px; }
.footer { width: min(calc(var(--wrap) + 2px), calc(100% - 32px)); margin: 18px auto 24px; padding: 28px 0; border: 1px solid rgba(218,224,234,.95); border-radius: var(--radius); background: var(--surface); } .footer__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 28px; } .footer nav { display: flex; flex-wrap: wrap; gap: 15px; } .footer nav a { color: #4b5360; font-size: 13px; font-weight: 600; } .footer__social { display: flex; flex-wrap: wrap; gap: 12px; } .footer__social a { display: grid; width: 42px; height: 42px; place-items: center; padding: 0; border: 1px solid var(--line); border-radius: 50%; color: #303946; transition: color .2s ease, border-color .2s ease, transform .2s ease; } .footer__social a:hover { border-color: #a9c6f5; color: var(--accent); transform: translateY(-2px); } .footer__social svg { width: 20px; height: 20px; fill: currentColor; }

@media (min-width: 720px) { .wrap, .header { width: min(var(--wrap), calc(100% - 72px)); } .section, .home, .footer { width: min(calc(var(--wrap) + 2px), calc(100% - 72px)); } .burger { display: none; } .nav, .header__buy { display: inline-flex; } .home__chips, .specs { grid-template-columns: repeat(4, 1fr); } .gallery__row { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 900px) { .home__grid { grid-template-columns: .93fr 1.07fr; align-items: center; } .device__grid { grid-template-columns: .86fr 1.14fr; align-items: center; } .features__grid { grid-template-columns: .68fr 1.32fr; align-items: stretch; } .faq__grid { grid-template-columns: 1.3fr .7fr; align-items: start; } .faq-card { margin-top: 10px; } .feature-cards { grid-template-columns: repeat(3, 1fr); } .community { grid-template-columns: .82fr 1.18fr; } .downloads-hero__grid { grid-template-columns: .9fr 1.1fr; } .download-content { grid-template-columns: .85fr 1.15fr; align-items: start; } }
@media (max-width: 719px) { .header, .section, .home, .footer { width: calc(100vw - 32px); max-width: calc(100vw - 32px); } .wrap { width: calc(100% - 32px); max-width: none; min-width: 0; } .header { top: 7px; height: 66px; margin-top: 7px; } .home { min-height: 0; } .logo { font-size: 10px; letter-spacing: .21em; } .home__visual { min-height: 320px; } .product-stage--hero { min-height: 320px; } .footer__inner { justify-content: flex-start; } .downloads-hero__grid, .download-content, .download-card, .firmware-card__info { min-width: 0; } .downloads-hero .lead, .firmware-card__info p, .instructions li { overflow-wrap: anywhere; } }

.ph-photo { display: grid; place-items: center; align-content: center; gap: 9px; width: min(86%, 410px); margin: auto; padding: 30px 18px; text-align: center; color: #3b4657; background: rgba(255,255,255,.88); border: 1.7px dashed #98a4b6; border-radius: 14px; box-shadow: 0 6px 18px rgba(16,24,40,.06); }
.ph-photo svg { width: 36px; height: 36px; opacity: .6; color: #73819a; }
.ph-photo b { color: #101a2b; font-size: clamp(15px, 2.2vw, 21px); font-weight: 800; letter-spacing: -.01em; line-height: 1; }
.ph-photo span { color: #69768a; font-size: 10px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.product-stage .ph-photo, .gallery-frame .ph-photo { z-index: 1; }

@media (min-width: 900px) {
  .device__grid { grid-template-columns: 1.07fr .93fr; }
  .device__grid .device__copy { order: 2; }
  .device__grid .product-stage--device { order: 1; }
}

.product-stage, .product-stage--detail,
.gallery-frame, .gallery-frame--main,
.gallery-frame--side, .gallery-frame--ui,
.gallery-frame--pack, .gallery-frame--acc {
  background: #eef1f7 !important;
}
.product-stage::after, .stage-glow { display: none !important; }

@media (min-width: 900px) {
  .features__grid { grid-template-columns: 1fr .72fr !important; }
  .features__grid .product-stage--detail { order: 2; }
  .features__grid .feature-cards { order: 1; }
}
@media (max-width: 899px) {
  .features__grid { grid-template-columns: 1fr !important; }
  .features__grid .product-stage--detail { order: 2; }
}

@media (max-width: 899px) {
  .features__grid .product-stage--detail,
  .features__grid .feature-cards { order: 0; }
}

/* Мобильный подвал: ровное выравнивание по центру + крупнее иконки соцсетей */
@media (max-width: 719px) {
  .footer { padding: 22px 0 20px; }
  .footer__inner { flex-direction: column; align-items: center; justify-content: center; gap: 16px; text-align: center; }
  .footer .logo { margin-right: 0; justify-content: center; }
  .footer nav { justify-content: center; gap: 11px 18px; }
  .footer__social { justify-content: center; gap: 12px; }
  .footer__social a { width: 42px; height: 42px; }
  .footer__social svg { width: 20px; height: 20px; }
}
