*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }

:root {
    --navy: #0b1020;
    --navy-2: #111a32;
    --navy-3: #172441;
    --blue: #1677ff;
    --blue-deep: #0759ce;
    --cyan: #22d3ee;
    --paper: #f4f7fb;
    --white: #ffffff;
    --ink: #111a2f;
    --muted: #5f6d83;
    --line: #dce4ef;
    --dark-line: rgba(255, 255, 255, 0.13);
    --shadow: 0 28px 80px rgba(21, 43, 81, 0.16);
    --radius: 24px;
    --shell: 1200px;
}

html { min-width: 320px; scroll-behavior: smooth; }
body {
    min-width: 320px;
    min-height: 100vh;
    overflow-x: hidden;
    background: var(--navy);
    color: var(--ink);
    font-family: Inter, Aptos, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.6;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

a { color: inherit; }
img { display: block; max-width: 100%; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

.shell { width: min(var(--shell), calc(100% - 48px)); margin-inline: auto; }
.section { position: relative; padding: 128px 0; }
.section-light { background: var(--paper); }
.section-dark, .section-ink, .section-blue, .final-section { color: var(--white); }
.section-ink { background: var(--navy); }
.section-blue { background: linear-gradient(135deg, #0c2c64 0%, #0c4ca4 48%, #0a275b 100%); }

.sr-only {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

.skip-link {
    position: fixed; z-index: 1000; left: 16px; top: 14px; padding: 10px 16px;
    transform: translateY(-160%); border-radius: 10px; background: var(--white);
    color: var(--navy); font-weight: 800; text-decoration: none;
}
.skip-link:focus { transform: none; }

:focus-visible { outline: 3px solid var(--cyan); outline-offset: 4px; }

.site-header {
    position: fixed; inset: 0 0 auto; z-index: 100;
    border-bottom: 1px solid transparent;
    background: linear-gradient(180deg, rgba(8, 13, 28, 0.88), rgba(8, 13, 28, 0));
    transition: background 180ms ease, border-color 180ms ease, backdrop-filter 180ms ease;
}
.site-header.is-scrolled {
    border-color: var(--dark-line);
    background: rgba(8, 13, 28, 0.86);
    backdrop-filter: blur(18px) saturate(150%);
}
.header-inner { min-height: 84px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.veyra-brand { display: inline-flex; align-items: center; gap: 11px; color: var(--white); text-decoration: none; }
.veyra-brand img { width: auto; height: 66px; max-width: 128px; padding: 5px 9px; border-radius: 13px; background: rgba(255,255,255,.97); object-fit: contain; box-shadow: 0 10px 30px rgba(0,0,0,.18); }
.logo-fallback {
    width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid rgba(34, 211, 238, 0.5);
    border-radius: 14px; background: linear-gradient(135deg, var(--blue), var(--cyan));
    color: var(--white); font-size: 1.35rem; font-weight: 900; box-shadow: 0 12px 28px rgba(22, 119, 255, 0.3);
}
.brand-words { display: grid; line-height: 1; }
.brand-words strong { font-size: 1.15rem; letter-spacing: -0.03em; }
.brand-words small { margin-top: 4px; color: rgba(255, 255, 255, 0.58); font-size: 0.66rem; font-weight: 800; letter-spacing: 0.17em; text-transform: uppercase; }

.primary-nav { display: flex; align-items: center; gap: 28px; }
.primary-nav a { color: rgba(255, 255, 255, 0.72); font-size: 0.88rem; font-weight: 700; text-decoration: none; transition: color 160ms ease; }
.primary-nav a:hover { color: var(--white); }
.primary-nav .nav-cta { padding: 11px 17px; border: 1px solid rgba(34, 211, 238, 0.38); border-radius: 999px; background: rgba(34, 211, 238, 0.08); color: #baf6ff; }
.menu-toggle { display: none; width: 44px; height: 44px; border: 0; border-radius: 12px; background: rgba(255,255,255,.08); }
.menu-toggle > span:not(.sr-only) { display: block; width: 20px; height: 2px; margin: 4px auto; border-radius: 2px; background: var(--white); }

.hero {
    min-height: 940px; display: grid; align-items: center; isolation: isolate;
    overflow: hidden; background: var(--navy); padding: 150px 0 110px;
}
.hero::after {
    content: ""; position: absolute; z-index: -1; inset: auto 0 0; height: 240px;
    background: linear-gradient(transparent, var(--navy)); pointer-events: none;
}
.hero-backdrop {
    position: absolute; z-index: -3; inset: 0;
    background: radial-gradient(circle at 76% 40%, rgba(22,119,255,.28), transparent 34%), linear-gradient(120deg, #070b17, #0b1020 60%, #071428);
}
.hero-grid {
    position: absolute; z-index: -2; inset: 0; opacity: .24;
    background-image: linear-gradient(rgba(34,211,238,.1) 1px, transparent 1px), linear-gradient(90deg, rgba(34,211,238,.08) 1px, transparent 1px);
    background-size: 88px 88px;
    mask-image: linear-gradient(90deg, #000, transparent 75%);
}
.hero-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(540px, 1.1fr); align-items: center; gap: 54px; }
.hero-copy { position: relative; z-index: 2; }
.eyebrow, .kicker {
    color: var(--blue); font-size: .73rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase;
}
.eyebrow { display: flex; align-items: center; gap: 10px; color: #a8b9d3; }
.eyebrow span { width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 7px rgba(34,211,238,.1), 0 0 22px rgba(34,211,238,.6); }
.hero h1 { max-width: 720px; margin-top: 24px; color: var(--white); font-size: clamp(4rem, 7vw, 7.2rem); line-height: .91; letter-spacing: -.075em; }
.hero h1 em, .final-content h2 em { color: transparent; font-style: normal; -webkit-text-stroke: 1.5px rgba(255,255,255,.76); }
.hero-lead { max-width: 660px; margin-top: 30px; color: rgba(255,255,255,.68); font-size: clamp(1.05rem, 1.35vw, 1.24rem); }
.hero-actions, .download-actions, .final-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 34px; }
.button {
    min-height: 52px; display: inline-flex; align-items: center; justify-content: center; gap: 12px;
    padding: 0 22px; border: 1px solid transparent; border-radius: 12px; cursor: pointer;
    font-weight: 850; text-decoration: none; transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}
.button:hover { transform: translateY(-2px); }
.button-primary { background: linear-gradient(135deg, var(--blue), #2694ff); color: var(--white); box-shadow: 0 17px 40px rgba(22,119,255,.3); }
.button-ghost { border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.055); color: var(--white); }
.button-white { background: var(--white); color: #0a3c85; }
.button-outline-white { border-color: rgba(255,255,255,.33); color: var(--white); }
.button-disabled { cursor: not-allowed; background: rgba(255,255,255,.11); color: rgba(255,255,255,.62); }
.button-disabled:hover { transform: none; }
.hero-status { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 36px; color: rgba(255,255,255,.52); font-size: .8rem; }
.hero-status strong { color: rgba(255,255,255,.88); }
.status-dot, .release-dot { width: 8px; height: 8px; border-radius: 50%; background: #43e59c; box-shadow: 0 0 0 6px rgba(67,229,156,.1); }
.hero-visual { position: relative; width: 820px; max-width: none; margin-left: -120px; }
.hero-visual::before { content: ""; position: absolute; z-index: -1; inset: 14% 10%; border-radius: 50%; background: var(--blue); filter: blur(90px); opacity: .25; }
.hero-visual img { width: 100%; border-radius: 28px; box-shadow: 0 40px 110px rgba(0,0,0,.43); }
.hero-visual figcaption, .journey-visual figcaption { margin-top: 12px; color: rgba(255,255,255,.46); font-size: .73rem; text-align: right; }
.scroll-cue { position: absolute; bottom: 32px; left: 50%; display: flex; align-items: center; gap: 10px; transform: translateX(-50%); color: rgba(255,255,255,.48); font-size: .72rem; font-weight: 700; text-decoration: none; text-transform: uppercase; letter-spacing: .12em; }
.scroll-cue span { width: 1px; height: 30px; background: linear-gradient(var(--cyan), transparent); animation: scroll-line 1.8s ease-in-out infinite; }

.section-heading { margin-bottom: 62px; }
.split-heading { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); align-items: end; gap: 72px; }
.section-heading h2, .purpose-layout h2, .faq-layout h2 { margin-top: 14px; font-size: clamp(2.8rem, 5vw, 5.5rem); line-height: .98; letter-spacing: -.065em; text-wrap: balance; }
.section-heading > p, .purpose-layout p, .faq-layout > div > p { color: var(--muted); font-size: 1.03rem; }
.split-heading > p { max-width: 470px; justify-self: end; }
.inverse h2 { color: var(--white); }
.inverse > p { color: rgba(255,255,255,.63); }
.kicker-cyan { color: var(--cyan); }

.product-stage { position: relative; margin-top: 56px; padding: 3.8vw; border-radius: 34px; overflow: hidden; background: radial-gradient(circle at 50% 100%, rgba(34,211,238,.28), transparent 42%), linear-gradient(145deg, #081226, #102b58); box-shadow: var(--shadow); }
.window-chrome { max-width: 1010px; margin: auto; overflow: hidden; border: 1px solid rgba(255,255,255,.24); border-radius: 18px; background: #f9fbff; box-shadow: 0 32px 80px rgba(0,0,0,.35); transform: perspective(1400px) rotateX(1deg); }
.window-titlebar { height: 56px; display: flex; align-items: center; gap: 11px; padding: 0 18px; border-bottom: 1px solid #dce4f0; color: var(--ink); background: rgba(255,255,255,.9); }
.window-titlebar strong { font-size: .9rem; }
.window-mark { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; background: linear-gradient(135deg,var(--blue),var(--cyan)); color: white; font-weight: 900; }
.window-state { margin-left: 16px; display: flex; align-items: center; gap: 7px; color: #627087; font-size: .72rem; }
.window-state i { width: 7px; height: 7px; border-radius: 50%; background: #39ce8a; }
.window-controls { margin-left: auto; color: #6c7990; word-spacing: 13px; }
.window-body { min-height: 410px; display: grid; grid-template-columns: 140px 1fr; position: relative; }
.window-sidebar { padding: 24px 15px; border-right: 1px solid #e1e8f2; background: #f2f6fb; }
.sidebar-pill { display: block; margin-bottom: 8px; padding: 10px 12px; border-radius: 8px; color: #738096; font-size: .72rem; font-weight: 750; }
.sidebar-pill.is-active { background: var(--blue); color: white; box-shadow: 0 10px 25px rgba(22,119,255,.22); }
.window-content { min-width: 0; display: grid; grid-template-columns: 1fr 85px 1fr; align-items: center; gap: 18px; padding: 40px; }
.device-card { min-width: 0; padding: 28px; border: 1px solid #dce5f1; border-radius: 16px; background: white; box-shadow: 0 15px 40px rgba(34,62,106,.1); }
.device-card > span { color: #7a879a; font-size: .72rem; }
.device-card strong { display: block; margin: 11px 0; color: #12213a; font-size: clamp(1.1rem,2vw,1.6rem); white-space: nowrap; }
.device-card small { color: #8591a3; }
.device-card button { width: 100%; margin-top: 13px; padding: 10px; border: 0; border-radius: 8px; background: var(--blue); color: white; font-size: .7rem; font-weight: 800; }
.connection-pulse { height: 2px; position: relative; background: linear-gradient(90deg,var(--blue),var(--cyan)); }
.connection-pulse::before, .connection-pulse::after, .connection-pulse span { content: ""; position: absolute; top: 50%; width: 10px; height: 10px; border-radius: 50%; background: var(--cyan); transform: translateY(-50%); box-shadow: 0 0 17px var(--cyan); }
.connection-pulse::before { left: -4px; }.connection-pulse::after { right: -4px; }.connection-pulse span { left: 40%; animation: link-pulse 2s linear infinite; }
.window-toolbar { position: absolute; right: 32px; bottom: 24px; display: flex; gap: 7px; padding: 8px; border: 1px solid #dce5f0; border-radius: 10px; background: white; box-shadow: 0 10px 26px rgba(20,44,85,.12); }
.window-toolbar span { padding: 6px 10px; border-radius: 7px; background: #f0f5fb; color: #627087; font-size: .62rem; font-weight: 750; }
.demo-label { position: absolute; right: 22px; bottom: 18px; color: rgba(255,255,255,.55); font-size: .65rem; text-transform: uppercase; letter-spacing: .1em; }

.feature-grid { display: grid; grid-template-columns: 1.15fr .925fr .925fr; gap: 18px; margin-top: 22px; }
.feature { min-height: 360px; position: relative; padding: 34px; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: white; }
.feature::after { content: ""; position: absolute; width: 160px; height: 160px; right: -60px; bottom: -70px; border-radius: 50%; background: rgba(22,119,255,.08); }
.feature-number { color: #93a2b7; font-size: .72rem; font-weight: 900; }
.feature-icon { width: 76px; height: 76px; margin: 34px 0 38px; border: 1px solid rgba(22,119,255,.25); border-radius: 21px; background: linear-gradient(145deg,rgba(22,119,255,.12),rgba(34,211,238,.06)); position: relative; }
.screen-icon::before { content:""; position:absolute; inset:17px 13px 24px; border:3px solid var(--blue); border-radius:5px; box-shadow: 0 17px 0 -7px var(--cyan); }
.transfer-icon::before, .transfer-icon::after { content:""; position:absolute; width:27px; height:34px; border:2px solid var(--blue); border-radius:5px; top:20px; }
.transfer-icon::before { left:12px; }.transfer-icon::after { right:12px; border-color:var(--cyan); }
.history-icon::before { content:""; position:absolute; inset:17px; border:3px solid var(--blue); border-radius:50%; }
.history-icon::after { content:""; position:absolute; width:15px; height:3px; left:38px; top:37px; background:var(--cyan); transform:rotate(-35deg); transform-origin:left; }
.feature h3 { max-width: 290px; font-size: 1.4rem; line-height: 1.1; letter-spacing: -.03em; }
.feature p { margin-top: 14px; color: var(--muted); font-size: .93rem; }
.feature small { display: block; margin-top: 22px; color: var(--blue); font-weight: 800; }

.connection-layout { display: grid; grid-template-columns: .62fr 1.38fr; gap: 70px; align-items: start; }
.compact { position: sticky; top: 130px; }
.compact h2 { color: white; }
.compact p { margin-top: 24px; color: rgba(255,255,255,.56); }
.tour { min-width: 0; }
.tour-visual { min-height:450px; position:relative; display:grid; grid-template-columns:minmax(160px,1fr) minmax(110px,.7fr) minmax(160px,1fr); align-items:center; gap:0; padding:55px 46px 112px; border:1px solid rgba(255,255,255,.15); border-radius:28px; background:radial-gradient(circle at 50% 44%,rgba(22,119,255,.2),transparent 35%),linear-gradient(145deg,rgba(18,27,49,.96),rgba(8,14,29,.98)); box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 30px 80px rgba(0,0,0,.2); overflow:hidden; isolation:isolate; }
.tour-visual::before { content:""; position:absolute; z-index:-1; width:420px; height:420px; left:50%; top:42%; border-radius:50%; background:rgba(22,119,255,.13); filter:blur(75px); transform:translate(-50%,-50%) scale(.7); opacity:.5; transition:transform 900ms ease,opacity 900ms ease; }
.tour-stage-grid { position:absolute; z-index:-1; inset:0; opacity:.26; background-image:linear-gradient(rgba(90,153,244,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(90,153,244,.08) 1px,transparent 1px); background-size:34px 34px; mask-image:radial-gradient(circle at 50% 45%,#000,transparent 72%); }
.tour-halo { position:absolute; z-index:-1; left:50%; top:43%; width:220px; aspect-ratio:1; transform:translate(-50%,-50%); pointer-events:none; }
.tour-halo i { position:absolute; inset:0; border:1px solid rgba(34,211,238,.13); border-radius:50%; opacity:.35; }
.tour-halo i:nth-child(2) { inset:25px; }.tour-halo i:nth-child(3) { inset:50px; }
.tour-playback { position:absolute; z-index:10; top:16px; right:17px; display:flex; align-items:center; gap:7px; padding:7px 10px; border:1px solid rgba(255,255,255,.12); border-radius:999px; background:rgba(5,13,29,.5); color:rgba(255,255,255,.55); cursor:pointer; font-size:.55rem; font-weight:750; letter-spacing:.04em; }
.tour-playback i { width:6px; height:6px; border-radius:50%; background:#56e4ac; box-shadow:0 0 9px rgba(86,228,172,.7); }
.tour-playback[aria-pressed="false"] i { border:1px solid rgba(255,255,255,.45); background:transparent; box-shadow:none; }

.tour-device { min-width:0; position:relative; z-index:3; overflow:hidden; border:1px solid rgba(142,180,235,.32); border-radius:18px; background:linear-gradient(155deg,rgba(38,56,91,.98),rgba(15,25,45,.98)); box-shadow:0 25px 60px rgba(0,0,0,.32); transition:transform 600ms cubic-bezier(.2,.8,.2,1),border-color 500ms ease,box-shadow 500ms ease; }
.tour-window-bar { height:30px; display:flex; align-items:center; gap:5px; padding:0 10px; border-bottom:1px solid rgba(255,255,255,.09); background:rgba(255,255,255,.035); }
.tour-window-bar > span { width:5px; height:5px; border-radius:50%; background:rgba(255,255,255,.24); }
.tour-window-bar small { margin-left:auto; color:rgba(255,255,255,.36); font-size:.51rem; }
.tour-device-body { min-height:166px; display:flex; flex-direction:column; align-items:center; padding:20px 14px 17px; text-align:center; }
.tour-device-id { width:54px; height:54px; display:grid; place-items:center; position:relative; border:1px solid rgba(255,255,255,.2); border-radius:17px; background:linear-gradient(135deg,#1682ff,#24d6ed); color:white; font-size:1.35rem; font-weight:900; box-shadow:0 14px 35px rgba(22,119,255,.28); }
.tour-device-id::after { content:""; position:absolute; inset:-7px; border:1px solid rgba(34,211,238,.18); border-radius:22px; opacity:0; }
.tour-device-body > strong { margin-top:12px; font-size:.79rem; }
.tour-device-status { display:flex; align-items:center; gap:6px; margin-top:3px; color:rgba(255,255,255,.48); font-size:.58rem; }
.tour-device-status i { width:5px; height:5px; border-radius:50%; background:#56e4ac; box-shadow:0 0 9px rgba(86,228,172,.8); }
.tour-code { width:100%; display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:15px; padding:8px 10px; border:1px solid rgba(255,255,255,.08); border-radius:9px; background:rgba(0,0,0,.13); opacity:.38; transition:opacity 450ms ease,border-color 450ms ease,transform 450ms ease; }
.tour-code span { color:rgba(255,255,255,.4); font-size:.5rem; }.tour-code b { color:#dffbff; font-size:.58rem; letter-spacing:.08em; }

.tour-bridge { height:110px; position:relative; z-index:4; }
.bridge-track { position:absolute; left:0; right:0; top:50%; height:2px; overflow:hidden; background:rgba(105,151,215,.22); transform:translateY(-50%); }
.bridge-track::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#1677ff,#22d3ee,#1677ff); background-size:200% 100%; transform:scaleX(0); transform-origin:left; box-shadow:0 0 16px rgba(34,211,238,.8); transition:transform 800ms cubic-bezier(.25,.8,.25,1); }
.bridge-core { width:60px; height:60px; display:grid; place-items:center; position:absolute; left:50%; top:50%; border:1px solid rgba(142,230,255,.24); border-radius:50%; background:#101d36; box-shadow:0 0 0 10px rgba(22,119,255,.07),0 15px 35px rgba(0,0,0,.3); transform:translate(-50%,-50%) scale(.84); transition:transform 600ms cubic-bezier(.2,.8,.2,1),border-color 500ms ease,box-shadow 500ms ease; }
.bridge-core span { width:19px; height:15px; position:relative; border:2px solid rgba(180,214,255,.6); border-radius:4px; transition:border-color 400ms ease,background 400ms ease; }
.bridge-core span::before { content:""; position:absolute; width:11px; height:9px; left:2px; top:-10px; border:2px solid rgba(180,214,255,.6); border-bottom:0; border-radius:8px 8px 0 0; }
.bridge-core span::after { content:""; position:absolute; width:3px; height:5px; left:6px; top:4px; border-radius:2px; background:rgba(180,214,255,.65); }
.data-packet { width:8px; height:8px; position:absolute; z-index:2; left:4px; top:50%; border:2px solid #b5f7ff; border-radius:2px; background:#22d3ee; box-shadow:0 0 13px #22d3ee; opacity:0; transform:translateY(-50%) rotate(45deg); }
.packet-two { animation-delay:.42s !important; }.packet-three { animation-delay:.84s !important; }

.permission-card { width:min(270px,46%); position:absolute; z-index:8; top:50%; right:31px; padding:16px; border:1px solid rgba(255,255,255,.2); border-radius:15px; background:rgba(17,28,50,.94); box-shadow:0 24px 60px rgba(0,0,0,.4); backdrop-filter:blur(18px); opacity:0; pointer-events:none; transform:translateY(-34%) translateX(24px) scale(.92); transition:opacity 400ms ease,transform 600ms cubic-bezier(.2,.9,.2,1); }
.permission-request,.permission-approved { display:flex; align-items:center; gap:11px; }
.permission-mark { width:35px; height:35px; display:grid; place-items:center; flex:0 0 auto; border-radius:10px; background:linear-gradient(135deg,var(--blue),var(--cyan)); font-size:.8rem; font-weight:900; }
.permission-request small,.permission-approved small { display:block; color:#7feaf8; font-size:.54rem; text-transform:uppercase; letter-spacing:.09em; }.permission-request strong,.permission-approved strong { display:block; margin-top:2px; font-size:.7rem; }
.permission-actions { display:grid; grid-template-columns:1fr 1.25fr; gap:7px; margin-top:13px; }.permission-actions span,.permission-actions strong { padding:7px; border-radius:7px; font-size:.58rem; text-align:center; }.permission-actions span { background:rgba(255,255,255,.07); color:rgba(255,255,255,.55); }.permission-actions strong { background:var(--blue); }
.permission-approved { display:none; }.permission-approved > i { width:35px; height:35px; position:relative; flex:0 0 auto; border-radius:50%; background:#3ad59a; box-shadow:0 0 0 7px rgba(58,213,154,.09); }.permission-approved > i::after { content:""; position:absolute; width:12px; height:6px; left:10px; top:12px; border-left:2px solid white; border-bottom:2px solid white; transform:rotate(-45deg); }

.session-tools { position:absolute; z-index:7; left:50%; bottom:68px; display:flex; gap:5px; padding:7px; border:1px solid rgba(255,255,255,.16); border-radius:12px; background:rgba(14,25,45,.9); box-shadow:0 18px 45px rgba(0,0,0,.35); opacity:0; transform:translate(-50%,18px) scale(.94); transition:opacity 450ms ease,transform 550ms cubic-bezier(.2,.9,.2,1); }
.session-tools span { padding:7px 10px; border-radius:7px; background:rgba(255,255,255,.055); color:rgba(255,255,255,.68); font-size:.56rem; font-weight:750; }
.tour-message { position:absolute; z-index:9; inset:auto 32px 23px; color:rgba(255,255,255,.62); font-size:.76rem; text-align:center; transition:opacity 180ms ease,transform 180ms ease; }

.tour-visual[data-tour-visual="1"] .tour-device { animation:tour-device-enter 720ms cubic-bezier(.2,.8,.2,1) both; }
.tour-visual[data-tour-visual="1"] .device-right { animation-delay:130ms; }
.tour-visual[data-tour-visual="1"] .tour-code { opacity:.75; }
.tour-visual[data-tour-visual="1"] .tour-device-id::after { animation:id-pulse 2.2s ease-out infinite; }
.tour-visual[data-tour-visual="2"]::before,.tour-visual[data-tour-visual="3"]::before { opacity:.9; transform:translate(-50%,-50%) scale(1); }
.tour-visual[data-tour-visual="2"] .bridge-track::before,.tour-visual[data-tour-visual="3"] .bridge-track::before { transform:scaleX(1); animation:bridge-flow 2.6s linear infinite; }
.tour-visual[data-tour-visual="2"] .data-packet { animation:packet-travel 1.55s cubic-bezier(.2,.6,.3,1) infinite; }
.tour-visual[data-tour-visual="2"] .device-right { border-color:rgba(34,211,238,.6); box-shadow:0 25px 70px rgba(0,0,0,.35),0 0 35px rgba(34,211,238,.12); transform:translateY(-5px); }
.tour-visual[data-tour-visual="2"] .permission-card { opacity:1; transform:translateY(-34%) translateX(0) scale(1); }
.tour-visual[data-tour-visual="2"] .bridge-core { border-color:rgba(34,211,238,.55); transform:translate(-50%,-50%) scale(1); }
.tour-visual[data-tour-visual="3"] .tour-device { border-color:rgba(86,228,172,.5); transform:translateY(-5px); box-shadow:0 25px 70px rgba(0,0,0,.36),0 0 40px rgba(86,228,172,.1); }
.tour-visual[data-tour-visual="3"] .bridge-core { border-color:rgba(86,228,172,.7); transform:translate(-50%,-50%) scale(1); box-shadow:0 0 0 12px rgba(86,228,172,.08),0 0 38px rgba(86,228,172,.23); }
.tour-visual[data-tour-visual="3"] .bridge-core span { border-color:#56e4ac; background:rgba(86,228,172,.12); }.tour-visual[data-tour-visual="3"] .bridge-core span::before { border-color:#56e4ac; }.tour-visual[data-tour-visual="3"] .bridge-core span::after { background:#56e4ac; }
.tour-visual[data-tour-visual="3"] .permission-card { opacity:1; transform:translateY(-34%) translateX(0) scale(1); animation:permission-finish 1.1s ease 1.2s forwards; }
.tour-visual[data-tour-visual="3"] .permission-request,.tour-visual[data-tour-visual="3"] .permission-actions { display:none; }.tour-visual[data-tour-visual="3"] .permission-approved { display:flex; }
.tour-visual[data-tour-visual="3"] .session-tools { opacity:1; transform:translate(-50%,0) scale(1); transition-delay:500ms; }
.tour-visual[data-tour-visual="3"] .tour-halo i { animation:halo-ring 2.8s ease-out infinite; }.tour-visual[data-tour-visual="3"] .tour-halo i:nth-child(2){animation-delay:.35s}.tour-visual[data-tour-visual="3"] .tour-halo i:nth-child(3){animation-delay:.7s}
.tour-tabs { margin-top: 20px; display: grid; gap: 10px; }
.tour-tab { width:100%; position:relative; display:grid; grid-template-columns:44px 1fr; column-gap:14px; padding:18px; overflow:hidden; border:1px solid var(--dark-line); border-radius:16px; background:rgba(255,255,255,.035); color:white; cursor:pointer; text-align:left; transition:border-color 250ms ease,background 250ms ease,transform 250ms ease; }
.tour-tab::after { content:""; position:absolute; left:0; bottom:0; width:100%; height:2px; background:linear-gradient(90deg,var(--blue),var(--cyan)); transform:scaleX(0); transform-origin:left; }
.tour-tab > span { grid-row: span 2; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; background: rgba(255,255,255,.08); color: var(--cyan); font-weight: 900; }
.tour-tab strong { font-size: .95rem; }.tour-tab small { margin-top: 2px; color: rgba(255,255,255,.5); }
.tour-tab:hover { transform:translateX(4px); }.tour-tab.is-active { border-color:rgba(34,211,238,.55); background:rgba(22,119,255,.12); }.tour[data-tour-playing="true"] .tour-tab.is-active::after { animation:tour-tab-progress 5s linear forwards; }
.tour-note { margin-top: 22px; padding-left: 18px; border-left: 2px solid var(--cyan); color: rgba(255,255,255,.53); font-size: .8rem; }

.story-intro { max-width: 850px; }
.story-intro blockquote { margin-top: 20px; font-size: clamp(2.8rem, 5.8vw, 6.4rem); line-height: .97; letter-spacing: -.07em; font-weight: 800; }
.story-intro > p:not(.kicker) { max-width: 690px; margin-top: 25px; color: var(--muted); font-size: 1.04rem; }
.journey-visual { margin-top: 70px; }
.journey-visual img { width: 100%; border-radius: 26px; box-shadow: var(--shadow); }
.journey-visual figcaption { color: #78869b; }
.timeline { list-style: none; padding: 0; margin-top: 72px; display: grid; grid-template-columns: repeat(4,1fr); position: relative; }
.timeline::before { content:""; position:absolute; top:22px; left:7%; right:7%; height:2px; background: linear-gradient(90deg,var(--blue),var(--cyan)); }
.timeline li { position: relative; padding-right: 28px; }
.timeline li > span { width: 46px; height: 46px; position: relative; z-index: 1; display:grid; place-items:center; border:6px solid var(--paper); border-radius:50%; background:var(--blue); color:white; font-size:.68rem; font-weight:900; }
.timeline li div { margin-top: 23px; }.timeline strong { font-size: 1rem; }.timeline p { margin-top: 8px; color:var(--muted); font-size:.83rem; }

.development-section { overflow:hidden; isolation:isolate; background:radial-gradient(circle at 82% 10%,rgba(34,211,238,.13),transparent 25%),radial-gradient(circle at 6% 62%,rgba(22,119,255,.22),transparent 32%),linear-gradient(145deg,#06142f 0%,#0a2e68 54%,#071b3e 100%); }
.development-section::before { content:""; position:absolute; z-index:-1; inset:0; opacity:.28; pointer-events:none; background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(90deg,#000,transparent 78%); }
.development-intro { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr); gap:90px; align-items:end; }
.development-intro h2 { max-width:780px; margin-top:17px; color:white; font-size:clamp(3.4rem,5.6vw,5.6rem); line-height:.94; letter-spacing:-.067em; }
.development-intro h2 em { color:#a9f4ff; font-style:normal; }
.development-intro-copy > p { color:rgba(255,255,255,.67); font-size:1.02rem; }
.collaboration-badge { width:max-content; max-width:100%; margin-top:28px; display:flex; align-items:center; gap:10px; padding:10px 14px 10px 11px; border:1px solid rgba(255,255,255,.15); border-radius:999px; background:rgba(255,255,255,.065); color:rgba(255,255,255,.75); font-size:.69rem; text-transform:uppercase; letter-spacing:.06em; }
.collaboration-badge span { width:8px; height:8px; flex:0 0 auto; border-radius:50%; background:#55e6b0; box-shadow:0 0 0 5px rgba(85,230,176,.1),0 0 18px rgba(85,230,176,.5); }
.collaboration-badge i { color:var(--cyan); font-style:normal; }
.collaboration-badge strong { font-weight:800; }

.development-cycle { margin-top:72px; padding:26px 30px 30px; border:1px solid rgba(255,255,255,.15); border-radius:24px; background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.035)); box-shadow:0 28px 80px rgba(0,0,0,.18); backdrop-filter:blur(12px); }
.cycle-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-bottom:23px; border-bottom:1px solid rgba(255,255,255,.11); }
.cycle-heading strong { font-size:.78rem; text-transform:uppercase; letter-spacing:.12em; }
.cycle-heading small { color:rgba(255,255,255,.48); }
.development-cycle ol { list-style:none; position:relative; display:grid; grid-template-columns:repeat(5,1fr); gap:20px; padding:27px 0 0; }
.development-cycle ol::before { content:""; position:absolute; top:46px; left:20px; right:calc(20% - 20px); height:1px; background:linear-gradient(90deg,rgba(34,211,238,.85),rgba(34,211,238,.18)); }
.development-cycle li { position:relative; z-index:1; }
.development-cycle li > span { width:40px; height:40px; display:grid; place-items:center; border:1px solid rgba(116,238,255,.45); border-radius:50%; background:#0b3776; color:#aaf5ff; box-shadow:0 0 0 8px #103c79; font-size:.65rem; font-weight:900; }
.development-cycle li div { min-width:0; margin-top:18px; }
.development-cycle li strong,.development-cycle li small { display:block; }
.development-cycle li strong { font-size:.9rem; }
.development-cycle li small { margin-top:1px; color:rgba(255,255,255,.48); font-size:.68rem; white-space:nowrap; }

.development-log-heading { margin:80px 0 26px; display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:60px; }
.development-log-heading span { display:block; color:var(--cyan); font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.14em; }
.development-log-heading strong { display:block; max-width:570px; margin-top:8px; font-size:clamp(1.55rem,2.4vw,2.3rem); line-height:1.12; letter-spacing:-.035em; }
.development-log-heading p { max-width:440px; justify-self:end; color:rgba(255,255,255,.52); font-size:.88rem; }
.development-cases { display:grid; grid-template-columns:repeat(12,1fr); gap:16px; }
.development-case { position:relative; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:22px; background:linear-gradient(145deg,rgba(5,21,49,.78),rgba(8,36,78,.62)); box-shadow:0 24px 70px rgba(0,0,0,.13); }
.development-case::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(120deg,rgba(255,255,255,.04),transparent 36%); }
.development-case-featured { grid-column:span 7; grid-row:span 2; min-height:512px; padding:34px; }
.development-case-compact { grid-column:span 5; min-height:248px; padding:29px 30px; }
.case-meta { display:flex; align-items:center; justify-content:space-between; gap:18px; color:#8eeffc; font-size:.66rem; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.case-meta small { padding:6px 9px; border:1px solid rgba(85,230,176,.2); border-radius:999px; background:rgba(85,230,176,.08); color:#7ce5ba; font-size:.57rem; letter-spacing:.06em; }
.case-meta small.is-progress { border-color:rgba(255,198,93,.2); background:rgba(255,198,93,.08); color:#ffd589; }
.development-case h3 { color:white; letter-spacing:-.035em; line-height:1.08; }
.development-case-featured h3 { max-width:550px; margin-top:28px; font-size:clamp(2rem,3.5vw,3.1rem); }
.development-case-compact h3 { max-width:480px; margin-top:24px; font-size:1.45rem; }
.development-case > p { color:rgba(255,255,255,.57); }
.development-case-featured > p { max-width:620px; margin-top:16px; font-size:.91rem; }
.development-case-compact > p { margin-top:13px; font-size:.82rem; }
.signal-visual { height:132px; position:relative; margin:28px 0 24px; overflow:hidden; border:1px solid rgba(255,255,255,.08); border-radius:14px; background:rgba(0,0,0,.12); }
.signal-grid { position:absolute; inset:0; opacity:.35; background-image:linear-gradient(rgba(255,255,255,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.075) 1px,transparent 1px); background-size:40px 32px; }
.signal-visual svg { width:100%; height:100%; position:relative; z-index:1; }
.signal-label { position:absolute; z-index:2; bottom:8px; color:rgba(255,255,255,.38); font-size:.56rem; letter-spacing:.06em; text-transform:uppercase; }
.signal-label-left { left:12px; }.signal-label-right { right:12px; }
.case-decision { display:grid; grid-template-columns:110px 1fr; gap:17px; padding-top:21px; border-top:1px solid rgba(255,255,255,.11); }
.case-decision span,.case-foot span { color:#83eefa; font-size:.62rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.case-decision p { color:rgba(255,255,255,.76); font-size:.83rem; }
.case-foot { position:absolute; left:30px; right:30px; bottom:25px; display:flex; align-items:center; gap:13px; }
.case-foot i { height:1px; flex:1; background:rgba(255,255,255,.12); }
.case-foot strong { color:rgba(255,255,255,.72); font-size:.68rem; text-transform:uppercase; letter-spacing:.07em; }

.tech-stack { margin-top:16px; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid rgba(255,255,255,.13); border-radius:20px; overflow:hidden; background:rgba(3,14,33,.25); }
.tech-stack div { min-height:126px; position:relative; padding:25px 24px; border-right:1px solid rgba(255,255,255,.11); }
.tech-stack div:last-child { border-right:0; }
.tech-stack span { position:absolute; top:20px; right:20px; color:rgba(255,255,255,.18); font-size:.62rem; font-weight:900; }
.tech-stack small { display:block; color:#80e9f7; font-size:.63rem; text-transform:uppercase; letter-spacing:.09em; }
.tech-stack strong { display:block; max-width:220px; margin-top:15px; font-size:.86rem; line-height:1.4; }

.purpose-section { padding-block: 150px; }
.purpose-layout { display:grid; grid-template-columns:.45fr 1fr; gap:90px; align-items:start; }
.purpose-layout div { max-width:780px; }.purpose-layout h2 { margin-top:0; }.purpose-layout div p { max-width:680px; margin-top:25px; font-size:1.08rem; }
.trust-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.trust-grid article { min-height:280px; padding:30px; border:1px solid var(--dark-line); border-radius:20px; background:rgba(255,255,255,.035); }
.trust-grid span { color:var(--cyan); font-size:.7rem; font-weight:900; }.trust-grid h3 { margin-top:55px; font-size:1.3rem; }.trust-grid p { margin-top:12px; color:rgba(255,255,255,.58); font-size:.9rem; }
.security-note { margin-top:18px; display:grid; grid-template-columns:.4fr 1fr; gap:40px; padding:28px 30px; border:1px solid rgba(34,211,238,.25); border-radius:18px; background:rgba(22,119,255,.08); }
.security-note p { color:rgba(255,255,255,.62); font-size:.86rem; }

.roadmap-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.roadmap-card { min-height:350px; padding:31px; border:1px solid var(--line); border-radius:22px; background:white; box-shadow:0 14px 40px rgba(21,43,81,.07); }
.roadmap-card > span { display:inline-flex; padding:7px 10px; border-radius:999px; font-size:.65rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.is-current > span { background:#dff9ee; color:#148558; }.is-testing > span { background:#e2efff; color:#1262c2; }.is-research > span { background:#eef0f4; color:#647086; }
.roadmap-card h3 { margin-top:55px; font-size:1.45rem; }.roadmap-card ul { list-style:none; padding:0; margin-top:24px; display:grid; gap:12px; color:var(--muted); font-size:.88rem; }
.roadmap-card li { position:relative; padding-left:18px; }.roadmap-card li::before { content:""; position:absolute; left:0; top:.65em; width:6px; height:6px; border-radius:50%; background:var(--blue); }

.download-section { background:linear-gradient(135deg,#0759ce,#0c78de 60%,#08a8c7); }
.download-panel { display:grid; grid-template-columns:1fr 430px; align-items:center; gap:70px; }
.download-copy h2 { max-width:700px; margin-top:16px; font-size:clamp(3rem,5.5vw,6rem); line-height:.96; letter-spacing:-.07em; color:white; }
.download-copy > p:not(.kicker) { max-width:610px; margin-top:24px; color:rgba(255,255,255,.72); }
.release-card { padding:28px; border:1px solid rgba(255,255,255,.24); border-radius:22px; background:rgba(6,32,83,.36); color:white; box-shadow:0 30px 70px rgba(0,0,0,.17); backdrop-filter:blur(14px); }
.release-card > div:first-child { display:flex; align-items:center; gap:12px; }.release-card dl { margin-top:28px; }.release-card dl div { display:flex; justify-content:space-between; gap:20px; padding:12px 0; border-bottom:1px solid rgba(255,255,255,.13); }
.release-card dt { color:rgba(255,255,255,.52); }.release-card dd { max-width:250px; overflow-wrap:anywhere; text-align:right; font-weight:700; }
.faq-layout { display:grid; grid-template-columns:.55fr 1fr; gap:90px; align-items:start; }.faq-layout > div:first-child { position:sticky; top:130px; }.faq-layout > div > p:not(.kicker) { margin-top:22px; }
.faq-list { border-top:1px solid #ccd7e5; }.faq-list details { border-bottom:1px solid #ccd7e5; }.faq-list summary { position:relative; padding:24px 54px 24px 0; cursor:pointer; list-style:none; font-weight:800; }.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:"+"; position:absolute; right:8px; top:19px; color:var(--blue); font-size:1.5rem; font-weight:400; }.faq-list details[open] summary::after { content:"−"; }
.faq-list details p { max-width:690px; padding:0 55px 24px 0; color:var(--muted); }

.final-section { min-height:900px; display:grid; align-items:center; overflow:hidden; background:radial-gradient(circle at 72% 40%,rgba(22,119,255,.32),transparent 25%),linear-gradient(145deg,#070b17,var(--navy)); text-align:center; }
.final-orbit { position:absolute; width:680px; height:680px; left:50%; top:50%; border:1px solid rgba(34,211,238,.15); border-radius:50%; transform:translate(-50%,-50%); box-shadow:0 0 0 110px rgba(34,211,238,.025),0 0 0 220px rgba(22,119,255,.025); }
.final-content { position:relative; }.final-content h2 { margin-top:18px; color:white; font-size:clamp(4rem,9vw,9rem); line-height:.83; letter-spacing:-.08em; }.final-content > p:not(.kicker):not(.copy-status) { max-width:650px; margin:35px auto 0; color:rgba(255,255,255,.62); }
.idea-questions { max-width:850px; list-style:none; padding:0; margin:46px auto 0; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; text-align:left; }
.idea-questions li { min-height:150px; padding:22px; border:1px solid var(--dark-line); border-radius:17px; background:rgba(255,255,255,.045); font-weight:750; }.idea-questions span { display:block; margin-bottom:26px; color:var(--cyan); font-size:.68rem; }
.final-actions { justify-content:center; }.copy-status { min-height:26px; margin-top:15px; color:#9eeeff; }.final-line { display:block; margin-top:60px; color:rgba(255,255,255,.45); font-size:.85rem; font-weight:600; }

.site-footer { padding:38px 0; border-top:1px solid var(--dark-line); background:#070b15; color:white; }.footer-inner { display:grid; grid-template-columns:1fr 1fr 1fr; align-items:center; gap:30px; }.footer-inner > p { color:rgba(255,255,255,.47); font-size:.78rem; text-align:center; }.footer-inner > div { display:flex; flex-direction:column; align-items:flex-end; gap:4px; color:rgba(255,255,255,.5); font-size:.72rem; }.footer-inner a { text-decoration:none; }

@keyframes scroll-line { 0%,100%{opacity:.3;transform:scaleY(.65)} 50%{opacity:1;transform:scaleY(1)} }
@keyframes link-pulse { from{left:0} to{left:95%} }
@keyframes tour-device-enter { from{opacity:0;transform:translateY(18px) scale(.96)} to{opacity:1;transform:none} }
@keyframes id-pulse { 0%{opacity:.8;transform:scale(.82)} 70%,100%{opacity:0;transform:scale(1.28)} }
@keyframes bridge-flow { to{background-position:-200% 0} }
@keyframes packet-travel { 0%{left:4px;opacity:0} 12%{opacity:1} 82%{opacity:1} 100%{left:calc(100% - 12px);opacity:0} }
@keyframes permission-finish { 0%,62%{opacity:1;transform:translateY(-34%) scale(1)} 100%{opacity:0;transform:translateY(-58%) scale(.96)} }
@keyframes halo-ring { 0%{opacity:.5;transform:scale(.58)} 100%{opacity:0;transform:scale(1.45)} }
@keyframes tour-tab-progress { from{transform:scaleX(0)} to{transform:scaleX(1)} }

@media (max-width: 1050px) {
    .primary-nav { gap:18px; }.primary-nav a { font-size:.78rem; }
    .hero-layout { grid-template-columns:1fr; }.hero { padding-top:150px; }.hero-copy { max-width:780px; }
    .hero-visual { width:100%; max-width:920px; margin:10px 0 0 auto; }
    .feature-grid { grid-template-columns:1fr 1fr; }.feature-large { grid-column:1/-1; min-height:300px; }
    .connection-layout, .download-panel { grid-template-columns:1fr; }.compact, .faq-layout > div:first-child { position:static; }
    .compact { max-width:650px; }.download-panel { gap:45px; }.release-card { max-width:620px; }
    .development-intro { gap:50px; }.development-case-featured { grid-column:1/-1; grid-row:auto; }.development-case-compact { grid-column:span 6; min-height:275px; }
    .tech-stack { grid-template-columns:1fr 1fr; }.tech-stack div:nth-child(2){border-right:0}.tech-stack div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.13)}
}

@media (max-width: 820px) {
    .shell { width:min(100% - 32px,var(--shell)); }.section { padding:92px 0; }
    .menu-toggle { display:block; }
    .primary-nav { position:absolute; top:72px; left:16px; right:16px; display:none; align-items:stretch; gap:0; padding:12px; border:1px solid var(--dark-line); border-radius:17px; background:rgba(8,13,28,.97); box-shadow:0 20px 50px rgba(0,0,0,.35); }
    .primary-nav.is-open { display:grid; }.primary-nav a { padding:14px; border-radius:10px; font-size:.9rem; }.primary-nav .nav-cta { margin-top:5px; text-align:center; }
    .header-inner { min-height:72px; }.veyra-brand img { height:58px; max-width:110px; }.logo-fallback { width:42px;height:42px; }
    .hero { min-height:auto; padding:125px 0 90px; }.hero h1 { font-size:clamp(3.5rem,14vw,6rem); }.hero-layout { gap:50px; }.hero-visual figcaption { text-align:left; }.scroll-cue { display:none; }
    .split-heading, .purpose-layout, .faq-layout { grid-template-columns:1fr; gap:28px; }.split-heading > p { max-width:650px; justify-self:start; }
    .section-heading { margin-bottom:42px; }.section-heading h2, .purpose-layout h2, .faq-layout h2 { font-size:clamp(2.8rem,10vw,4.8rem); }
    .product-stage { padding:24px; }.window-body { grid-template-columns:100px 1fr; }.window-content { grid-template-columns:1fr; padding:28px 28px 85px; }.connection-pulse { width:2px; height:50px; justify-self:center; background:linear-gradient(var(--blue),var(--cyan)); }.window-toolbar { left:126px; right:25px; overflow:auto; }.window-state { display:none; }
    .timeline { grid-template-columns:1fr; gap:0; }.timeline::before { left:22px; right:auto; top:0; bottom:0; width:2px; height:auto; }.timeline li { display:grid; grid-template-columns:47px 1fr; gap:20px; padding:0 0 35px; }.timeline li div { margin:4px 0 0; }
    .development-intro { grid-template-columns:1fr; gap:30px; }.development-intro-copy { max-width:650px; }.development-cycle { margin-top:52px; }.cycle-heading { align-items:flex-start; flex-direction:column; gap:5px; }
    .development-cycle ol { grid-template-columns:1fr; gap:0; padding-top:24px; }.development-cycle ol::before { top:24px; bottom:24px; left:19px; right:auto; width:1px; height:auto; }.development-cycle li { display:grid; grid-template-columns:40px 1fr; align-items:center; gap:12px; padding-bottom:24px; }.development-cycle li:last-child { padding-bottom:0; }.development-cycle li div { margin-top:0; }.development-cycle li small { white-space:normal; }
    .development-log-heading { margin-top:62px; grid-template-columns:1fr; gap:18px; }.development-log-heading p { justify-self:start; }.development-case-featured,.development-case-compact { grid-column:1/-1; }.development-case-compact { min-height:260px; }
    .trust-grid, .roadmap-grid { grid-template-columns:1fr; }.security-note { grid-template-columns:1fr; gap:10px; }
    .idea-questions { grid-template-columns:1fr; }.idea-questions li { min-height:110px; }.final-section { min-height:auto; }.final-orbit { width:520px;height:520px; }
    .footer-inner { grid-template-columns:1fr; text-align:center; }.footer-inner .veyra-brand { justify-self:center; }.footer-inner > div { align-items:center; }
}

@media (max-width: 620px) {
    .shell { width:min(100% - 24px,var(--shell)); }.section { padding:78px 0; }
    .hero h1 { font-size:clamp(3.15rem,16vw,4.5rem); }.hero-lead { font-size:1rem; }.eyebrow { align-items:flex-start; font-size:.65rem; }
    .hero-actions, .download-actions, .final-actions { display:grid; }.button { width:100%; }.hero-status { gap:8px; }
    .hero-visual img { border-radius:17px; }.product-stage { margin-inline:-12px; padding:12px; border-radius:18px; }
    .window-titlebar { height:48px; padding:0 11px; }.window-titlebar strong { font-size:.72rem; }.window-controls { font-size:.7rem; word-spacing:5px; }
    .window-body { min-height:430px; grid-template-columns:1fr; }.window-sidebar { display:flex; gap:5px; padding:10px; border-right:0; border-bottom:1px solid #e1e8f2; overflow:auto; }.sidebar-pill { margin:0; padding:7px 9px; white-space:nowrap; }
    .window-content { padding:20px 18px 75px; gap:10px; }.device-card { padding:18px; }.connection-pulse { height:28px; }.window-toolbar { left:10px; right:10px; bottom:12px; }.demo-label { display:none; }
    .feature-grid { grid-template-columns:1fr; }.feature-large { grid-column:auto; }.feature { min-height:320px; padding:26px; }
    .tour-visual { min-height:400px; grid-template-columns:minmax(95px,1fr) 58px minmax(95px,1fr); padding:48px 11px 104px; border-radius:21px; }.tour-window-bar { height:25px; padding-inline:7px; }.tour-window-bar small { display:none; }.tour-device-body { min-height:137px; padding:15px 7px 13px; }.tour-device-id { width:42px; height:42px; border-radius:13px; font-size:1.05rem; }.tour-device-body > strong { font-size:.65rem; }.tour-device-status { font-size:.49rem; }.tour-code { display:none; }.tour-bridge { height:82px; }.bridge-core { width:46px; height:46px; }.bridge-core span { transform:scale(.8); }.permission-card { width:calc(100% - 34px); top:48%; right:17px; }.tour-visual[data-tour-visual="2"] .permission-card,.tour-visual[data-tour-visual="3"] .permission-card { transform:translateY(-34%) translateX(0) scale(1); }.session-tools { bottom:62px; }.session-tools span { padding:6px 7px; font-size:.5rem; }.tour-message { inset:auto 13px 17px; font-size:.68rem; }.tour-playback { top:11px; right:11px; }
    .tour-tab { grid-template-columns:40px 1fr; padding:14px; }.tour-tab small { line-height:1.35; }
    .story-intro blockquote { font-size:clamp(2.7rem,14vw,4.4rem); }.journey-visual { margin-top:46px; }.journey-visual img { min-height:230px; object-fit:cover; object-position:center; }
    .development-intro h2 { font-size:clamp(3rem,14vw,4.5rem); }.collaboration-badge { width:100%; flex-wrap:wrap; border-radius:16px; }.development-cycle { padding:22px 20px 24px; border-radius:19px; }.development-case-featured,.development-case-compact { min-height:auto; padding:25px 22px; }.development-case-featured h3 { font-size:2rem; }.development-case-compact h3 { font-size:1.3rem; }.case-meta { align-items:flex-start; }.case-meta small { text-align:right; }.case-decision { grid-template-columns:1fr; gap:8px; }.case-foot { position:static; margin-top:24px; }.signal-visual { height:115px; }
    .tech-stack { grid-template-columns:1fr; }.tech-stack div, .tech-stack div:nth-child(2) { min-height:110px; border-right:0; border-bottom:1px solid rgba(255,255,255,.13); }.tech-stack div:last-child { border-bottom:0; }
    .trust-grid article, .roadmap-card { min-height:auto; }.trust-grid h3, .roadmap-card h3 { margin-top:34px; }
    .release-card { padding:22px; }.release-card dl div { align-items:flex-start; }.release-card dd { max-width:60%; }
    .final-content h2 { font-size:clamp(3.8rem,18vw,6rem); }.final-line { margin-top:42px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    .tour-playback { display:none; }
    *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}
