@font-face{font-family:B612;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/b612-regular.woff2) format("woff2")}@font-face{font-family:B612;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/b612-bold.woff2) format("woff2")}@font-face{font-family:B612 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/b612mono-regular.woff2) format("woff2")}:root{--bg:#F4F7FB;--panel:#FFFFFF;--panel-2:#EBF1F8;--line:#D4DEEA;--line-strong:#B9C8DA;--text:#16283E;--muted:#51637C;--faint:#5C6F88;--route:#C22D96;--route-soft:#C22D9622;--cyan:#0C6E92;--amber:#8A5606;--amber-bg:#F5E8D3;--green:#1E8A5A;--shadow:0 1px 2px #16283e14, 0 8px 24px #16283e0f}@media(prefers-color-scheme:dark){:root{--bg:#0A1120;--panel:#101A2C;--panel-2:#0D1626;--line:#223049;--line-strong:#31445F;--text:#E8EEF8;--muted:#93A3BD;--faint:#8595AD;--route:#E863C0;--route-soft:#E863C022;--cyan:#54C6EA;--amber:#F0A93B;--amber-bg:#2A2210;--green:#46D68C;--shadow:0 1px 2px #00000040, 0 10px 30px #00000030}}:root[data-theme=dark]{--bg:#0A1120;--panel:#101A2C;--panel-2:#0D1626;--line:#223049;--line-strong:#31445F;--text:#E8EEF8;--muted:#93A3BD;--faint:#8595AD;--route:#E863C0;--route-soft:#E863C022;--cyan:#54C6EA;--amber:#F0A93B;--amber-bg:#2A2210;--green:#46D68C;--shadow:0 1px 2px #00000040, 0 10px 30px #00000030}:root[data-theme=light]{--bg:#F4F7FB;--panel:#FFFFFF;--panel-2:#EBF1F8;--line:#D4DEEA;--line-strong:#B9C8DA;--text:#16283E;--muted:#51637C;--faint:#5C6F88;--route:#C22D96;--route-soft:#C22D9622;--cyan:#0C6E92;--amber:#8A5606;--amber-bg:#F5E8D3;--green:#1E8A5A;--shadow:0 1px 2px #16283e14, 0 8px 24px #16283e0f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:400 16.5px/1.65 B612,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.mono{font-family:B612 Mono,monospace}a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:2px solid var(--route);outline-offset:3px;border-radius:2px}h1,h2,h3{line-height:1.15;text-wrap:balance;margin:0}p{margin:0}.wrap{max-width:1080px;margin:0 auto;padding:0 24px}nav{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.nav-in{display:flex;align-items:center;gap:28px;height:60px}.brand{display:flex;align-items:baseline;gap:10px;color:var(--text);font-weight:700;letter-spacing:.06em;font-size:15px}.brand:hover{text-decoration:none}.brand .vr{font-family:B612 Mono,monospace;font-weight:400;font-size:11px;color:var(--route);border:1px solid var(--route);padding:1px 6px;border-radius:3px;letter-spacing:.1em}.nav-links{display:flex;gap:22px;margin-left:auto;font-size:13.5px}.nav-links a{color:var(--muted)}.nav-links a:hover{color:var(--text);text-decoration:none}@media(max-width:720px){.nav-links{display:none}}.eyebrow{font-family:B612 Mono,monospace;font-size:11.5px;letter-spacing:.22em;color:var(--faint);text-transform:uppercase;display:flex;align-items:center;gap:12px}.eyebrow:before{content:"";width:22px;height:1px;background:var(--route)}.sec{padding-top:88px}.sec-head{display:flex;flex-direction:column;gap:14px;max-width:640px;margin-bottom:44px}.sec-head h1,.sec-head h2{font-size:clamp(26px,3.4vw,34px);font-weight:700}.sec-head .lead{color:var(--muted)}header{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero{padding-top:96px;position:relative}.hero .eyebrow{margin-bottom:22px}.hero h1{font-size:clamp(38px,6vw,60px);font-weight:700;letter-spacing:-.01em;max-width:13ch}.hero .sub{margin-top:22px;max-width:56ch;font-size:18px;color:var(--muted)}.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 22px;border-radius:6px;font-size:15px;font-weight:700;border:1px solid transparent}.btn:hover{text-decoration:none}.btn-route{background:var(--route);color:#fff}.btn-route:hover{filter:brightness(1.08)}.btn-ghost{border-color:var(--line-strong);color:var(--text)}.btn-ghost:hover{border-color:var(--cyan);color:var(--cyan)}.vr-note{margin-top:56px;padding:14px 0 26px;display:flex;gap:14px;align-items:baseline;color:var(--faint);font-size:13px;max-width:62ch}.vr-note b{font-family:B612 Mono,monospace;font-weight:400;color:var(--route);white-space:nowrap;letter-spacing:.08em}.routewrap{margin-top:-8px}.routewrap svg{display:block;width:100%;height:110px}.route-line{fill:none;stroke:var(--route);stroke-width:2;stroke-dasharray:9 7}.route-draw{stroke-dashoffset:0}@media(prefers-reduced-motion:no-preference){.route-draw{animation:draw 2.4s ease-out}@keyframes draw{0%{stroke-dashoffset:640}to{stroke-dashoffset:0}}}.wpt{fill:none;stroke:var(--cyan);stroke-width:1.6}.wpt-label{font-family:B612 Mono,monospace;font-size:10px;letter-spacing:.14em;fill:var(--faint)}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:26px 24px;box-shadow:var(--shadow)}.card h3{font-size:17px;margin-bottom:10px}.card p{font-size:14.5px;color:var(--muted)}.card .tag-mono{font-family:B612 Mono,monospace;font-size:10.5px;letter-spacing:.18em;color:var(--cyan);display:block;margin-bottom:14px}.case{background:var(--panel-2);border-block:1px solid var(--line);margin-top:88px;padding-bottom:88px}.case .sec{padding-top:80px}.diagram{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:34px 28px 30px;box-shadow:var(--shadow);margin-bottom:22px}.clients{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.client{border:1px solid var(--line-strong);border-radius:6px;padding:12px 14px;text-align:center;background:var(--bg)}.client .cs{font-family:B612 Mono,monospace;font-size:10px;letter-spacing:.16em;color:var(--route);display:block;margin-bottom:4px}.client .nm{font-size:13px;font-weight:700}.trunk{display:flex;justify-content:center}.trunk span{width:1px;height:26px;background:var(--line-strong)}.apibar{border:1.5px solid var(--route);border-radius:6px;padding:13px 18px;text-align:center;background:var(--route-soft)}.apibar .nm{font-weight:700;font-size:14.5px}.apibar .dt{font-family:B612 Mono,monospace;font-size:11px;color:var(--muted);letter-spacing:.08em;margin-top:2px;display:block}.periph{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:16px}.periph span{font-family:B612 Mono,monospace;font-size:10.5px;letter-spacing:.1em;color:var(--faint);border:1px dashed var(--line-strong);border-radius:99px;padding:4px 12px}.apps{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}.app-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.app-card .top{display:flex;align-items:center;justify-content:space-between;gap:10px}.app-card .cs{font-family:B612 Mono,monospace;font-size:10.5px;letter-spacing:.16em;color:var(--route)}.app-card h3{font-size:16.5px}.app-card p{font-size:14px;color:var(--muted);flex:1}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips span{font-family:B612 Mono,monospace;font-size:10px;letter-spacing:.06em;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:4px;padding:3px 8px}.numbers{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-top:88px}.numbers>div{background:var(--panel);padding:22px 20px}.numbers b{display:block;font-family:B612 Mono,monospace;font-weight:400;font-size:26px;color:var(--text);font-variant-numeric:tabular-nums}.numbers small{color:var(--muted);font-size:12.5px;line-height:1.4;display:block;margin-top:4px}.prin{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:18px}.prin article{border-top:2px solid var(--amber);background:var(--panel);border-inline:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0 0 8px 8px;padding:22px 24px}.prin .ann{font-family:B612 Mono,monospace;font-size:10.5px;letter-spacing:.2em;color:var(--amber);background:var(--amber-bg);display:inline-block;padding:2px 8px;border-radius:3px;margin-bottom:12px}.prin h3{font-size:16px;margin-bottom:8px}.prin p{font-size:14px;color:var(--muted)}.mob{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}@media(max-width:820px){.mob{grid-template-columns:1fr}}.feat{display:flex;flex-direction:column;gap:16px;margin-top:26px}.feat li{list-style:none;display:flex;gap:14px;font-size:14.5px;color:var(--muted)}.feat li:before{content:"◆";color:var(--route);font-size:10px;line-height:2.2}.feat b{color:var(--text);font-weight:700}.badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.badge{display:inline-flex;flex-direction:column;justify-content:center;border:1px solid var(--line-strong);border-radius:8px;padding:8px 18px;line-height:1.25;color:var(--text)}.badge:hover{text-decoration:none;border-color:var(--cyan)}.badge small{font-size:10px;color:var(--faint);letter-spacing:.06em}.badge span{font-weight:700;font-size:14.5px}.phone{justify-self:center;width:250px;border:1px solid var(--line-strong);border-radius:34px;padding:12px;background:var(--panel);box-shadow:var(--shadow)}.screen{border-radius:24px;background:var(--panel-2);border:1px solid var(--line);overflow:hidden}.scr-top{padding:16px 16px 12px;border-bottom:1px solid var(--line)}.scr-top .t{font-size:13px;font-weight:700}.scr-top .d{font-family:B612 Mono,monospace;font-size:10px;color:var(--faint);letter-spacing:.1em}.lesson{margin:10px 12px;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--route);border-radius:6px}.lesson .tt{font-size:12px;font-weight:700}.lesson .mm{font-family:B612 Mono,monospace;font-size:10px;color:var(--muted)}.lesson.ok{border-left-color:var(--green)}.scr-note{margin:0 12px 14px;padding:9px 12px;border-radius:6px;background:var(--amber-bg);font-size:10.5px;color:var(--amber);font-family:B612 Mono,monospace;letter-spacing:.04em}.about{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}@media(max-width:820px){.about{grid-template-columns:1fr}}.about .col p+p{margin-top:14px}.about p{color:var(--muted);font-size:15px}.about b{color:var(--text)}.contact{margin-top:88px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:48px 40px;box-shadow:var(--shadow);display:flex;flex-wrap:wrap;gap:30px;align-items:center;justify-content:space-between}.contact h2{font-size:clamp(22px,3vw,28px)}.contact p{color:var(--muted);margin-top:8px;max-width:46ch}footer{margin-top:88px;border-top:1px solid var(--line);padding:30px 0 44px;color:var(--faint);font-size:12.5px}.foot-in{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between}.foot-in .mono{letter-spacing:.1em}.contact{align-items:flex-start}.contact-intro{flex:1 1 280px}.contact-intro .alt-mail{margin-top:18px;font-size:13.5px;color:var(--faint)}.cform{flex:1 1 340px;display:flex;flex-direction:column;gap:14px}.cform label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:var(--muted)}.cform input,.cform textarea{font:inherit;font-size:15px;color:var(--text);background:var(--bg);border:1px solid var(--line-strong);border-radius:6px;padding:10px 12px;resize:vertical}.cform input:focus-visible,.cform textarea:focus-visible{outline:2px solid var(--route);outline-offset:1px}.cform .privacy-note{font-size:12px;color:var(--faint)}.cform button{align-self:flex-start;cursor:pointer;font-family:inherit}.form-fout{color:var(--amber);background:var(--amber-bg);border-radius:6px;padding:10px 14px;font-size:13.5px}.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}.privacy-body{max-width:640px;display:flex;flex-direction:column;gap:10px}.privacy-body h3{font-size:16.5px;margin-top:22px}.privacy-body p{color:var(--muted);font-size:15px}main p a,.privacy-body a,.foot-in a{text-decoration:underline;text-underline-offset:2px}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:22px}.step{border-left:2px solid var(--line-strong);padding-left:16px}.step .ph{font-family:B612 Mono,monospace;font-size:10.5px;letter-spacing:.18em;color:var(--route)}.step h3{font-size:15.5px;margin:8px 0 6px}.step p{font-size:13.5px;color:var(--muted)}.lang-switch{font-family:B612 Mono,monospace;font-size:11px;letter-spacing:.12em;color:var(--muted);border:1px solid var(--line-strong);border-radius:4px;padding:3px 9px;margin-left:14px}.lang-switch:hover{color:var(--cyan);border-color:var(--cyan);text-decoration:none}@media(max-width:720px){.lang-switch{margin-left:auto}}.faq-list{display:flex;flex-direction:column;gap:12px;max-width:720px}.faq-item{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.faq-item summary{cursor:pointer;padding:18px 22px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-family:B612 Mono,monospace;color:var(--route);font-size:18px;flex-shrink:0}.faq-item[open] summary:after{content:"−"}.faq-item summary h2{font-size:16px;font-weight:700;margin:0}.faq-item>p{padding:0 22px 20px;color:var(--muted);font-size:14.5px;max-width:65ch;margin:0}.notice{background:var(--amber-bg);color:var(--amber);border-radius:8px;padding:16px 20px;font-size:14px;line-height:1.55;max-width:72ch}.notice b{font-weight:700}.app-icon{width:112px;height:112px;border-radius:22.37%;box-shadow:var(--shadow);display:block;margin-bottom:22px}.shots{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:20px;max-width:960px}.shots figure{margin:0;display:flex;flex-direction:column;gap:10px}.shots img{width:100%;height:auto;border:1px solid var(--line-strong);border-radius:18px;box-shadow:var(--shadow)}.shots figcaption{font-size:12.5px;color:var(--muted);line-height:1.45}
