:root{--canvas:#f4f6fa;--paper:#fff;--ink:#101622;--muted:#5e6878;--faint:#647083;--line:#d8dee9;--line-strong:#b9c3d0;--brand:#3a4fd6;--brand-deep:#283aaf;--brand-soft:#e9ecff;--green:#1f9d6a;--green-soft:#e3f5ed;--amber:#d98217;--amber-soft:#fff1d8;--navy:#111a2b;--navy-2:#18243a;--navy-line:#2b3951;--radius:18px;--shadow:0 24px 70px rgba(24,36,62,.14);--wrap:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;color:var(--ink);background:linear-gradient(90deg,transparent 0,transparent calc(50% - 1px),rgba(58,79,214,.03) 50%,transparent calc(50% + 1px)),var(--canvas);font-family:Pretendard,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;line-height:1.65;word-break:keep-all;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
html:not([lang="ko"]) body{word-break:normal;overflow-wrap:break-word}
html[lang="zh-CN"] body{font-family:"Noto Sans SC",Pretendard,sans-serif}
html[lang="th"] body{font-family:"Noto Sans Thai",Pretendard,sans-serif;line-height:1.72}
html[lang="zh-CN"] :is(.hero h1,.section-head h2,.switch-side h3,.feature-copy h3,.browser-copy h2,.control-demo-copy h4,.api-copy h3,.self-copy h2,.cta-panel h2),
html[lang="th"] :is(.hero h1,.section-head h2,.switch-side h3,.feature-copy h3,.browser-copy h2,.control-demo-copy h4,.api-copy h3,.self-copy h2,.cta-panel h2){font-family:inherit;letter-spacing:-.035em}
a{color:inherit;text-decoration:none}
button{font:inherit}
svg{display:block}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.flag-symbols{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
:focus-visible{outline:3px solid rgba(58,79,214,.42);outline-offset:4px}
.skip-link{position:fixed;top:10px;left:10px;z-index:1000;padding:10px 14px;border-radius:8px;color:#fff;background:var(--brand);transform:translateY(-160%);transition:transform .2s}
.skip-link:focus{transform:translateY(0)}
.wrap{width:min(var(--wrap),calc(100% - 48px));margin:auto}
.section{padding:118px 0}
.section-tight{padding:88px 0}
.nav{position:sticky;top:0;z-index:100;background:rgba(244,246,250,.88);border-bottom:1px solid transparent;backdrop-filter:blur(16px);transition:.2s}
.nav.scrolled{border-color:var(--line);box-shadow:0 8px 25px rgba(25,38,66,.05)}
.nav-row{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:center;gap:11px;font-size:23px;font-weight:800;letter-spacing:-.04em}
.brand-mark{display:block;width:34px;height:34px;flex:0 0 34px;overflow:hidden;border:0;border-radius:9px;background:#0b0c0e;box-shadow:0 5px 14px rgba(25,38,66,.12)}
.brand-mark img{display:block;width:100%;height:100%;object-fit:cover}
.brand-mark svg{width:23px;height:23px}
.nav-links{display:flex;gap:clamp(14px,1.7vw,30px);margin-left:auto}
.nav-links a{color:var(--muted);font-size:14px;font-weight:600;white-space:nowrap;transition:color .2s}
@media(max-width:1360px){html:lang(vi) .nav-links{gap:12px}html:lang(vi) .nav-links a{font-size:12.5px}}
.nav-links a:hover{color:var(--brand)}
.nav-actions{display:flex;align-items:center;gap:10px}
.language-switcher{position:relative;z-index:2}
.language-trigger{min-width:66px;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 10px;border:1px solid var(--line-strong);border-radius:10px;color:var(--ink);background:rgba(255,255,255,.82);box-shadow:0 6px 18px rgba(25,38,66,.06);cursor:pointer;transition:border-color .2s,box-shadow .2s,background .2s}
.language-trigger:hover,.language-trigger[aria-expanded="true"]{border-color:var(--brand);background:#fff;box-shadow:0 9px 22px rgba(58,79,214,.13)}
.flag-icon{width:24px;height:16px;flex:0 0 24px;overflow:hidden;border-radius:3px;box-shadow:0 0 0 1px rgba(16,22,34,.14)}
.language-code{min-width:18px;font-family:"IBM Plex Mono",monospace;font-size:10px;font-weight:600;letter-spacing:.04em}
.language-caret{width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
.language-trigger[aria-expanded="true"] .language-caret{transform:translateY(2px) rotate(225deg)}
.language-panel{position:absolute;top:calc(100% + 12px);right:0;width:230px;padding:9px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.98);box-shadow:0 22px 55px rgba(25,38,66,.18);backdrop-filter:blur(16px)}
.language-panel:before{content:"";position:absolute;top:-6px;right:26px;width:10px;height:10px;border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fff;transform:rotate(45deg)}
.language-panel-title{display:block;padding:6px 9px 8px;color:var(--faint);font-size:11px;font-weight:700}
.language-options{display:grid;gap:3px}
.language-option{width:100%;min-height:42px;display:grid;grid-template-columns:26px 1fr 18px;align-items:center;gap:9px;padding:7px 9px;border:0;border-radius:9px;color:var(--ink);background:transparent;text-align:left;cursor:pointer;transition:color .16s,background .16s}
.language-option:hover{color:var(--brand);background:#f4f6ff}
.language-option[aria-pressed="true"]{color:var(--brand-deep);background:var(--brand-soft);font-weight:700}
.language-option .language-name{font-size:13px;line-height:1.25}
.language-option .language-check{color:transparent;font-size:12px;font-weight:800}
.language-option[aria-pressed="true"] .language-check{color:var(--brand)}
.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 19px;border:1px solid transparent;border-radius:9px;font-size:14px;font-weight:700;line-height:1;cursor:pointer;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px)}
.btn-primary{color:#fff;background:var(--brand);box-shadow:0 10px 24px rgba(58,79,214,.2)}
.btn-primary:hover{background:var(--brand-deep);box-shadow:0 14px 30px rgba(58,79,214,.27)}
.btn-secondary{border-color:var(--line-strong);background:rgba(255,255,255,.76)}
.btn-secondary:hover{color:var(--brand);border-color:var(--brand);background:#fff}
.btn-lg{min-height:54px;padding:0 24px;font-size:16px}
.btn-light{color:var(--navy);background:#fff}
.btn-light:hover{background:#eef1ff}
.btn-ghost{color:#fff;border-color:rgba(255,255,255,.34)}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.hamburger{display:none;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}
.hamburger span{display:block;width:18px;height:2px;margin:4px auto;border-radius:2px;background:var(--ink)}
.mobile-menu{padding:10px 24px 24px;border-top:1px solid var(--line);background:var(--canvas)}
.mobile-menu nav{display:grid}
.mobile-menu a:not(.btn){padding:12px 4px;border-bottom:1px solid var(--line);color:var(--muted);font-weight:600}
.mobile-menu .btn{margin-top:14px}
.hero{position:relative;overflow:hidden;padding:92px 0 80px}
.hero:before{content:"";position:absolute;top:-310px;left:-260px;width:620px;height:620px;border:1px solid rgba(58,79,214,.14);border-radius:50%;box-shadow:0 0 0 72px rgba(58,79,214,.025),0 0 0 144px rgba(58,79,214,.018);pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:68px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:19px;color:var(--brand);font-family:Pretendard,"IBM Plex Sans KR",sans-serif;font-size:12px;font-weight:700;line-height:1.45;letter-spacing:.02em}
.eyebrow:before{content:"";width:34px;height:2px;background:currentColor}
.hero h1{margin:0;font-family:"IBM Plex Sans KR",Pretendard,sans-serif;font-size:clamp(48px,5.2vw,74px);font-weight:700;line-height:1.1;letter-spacing:-.065em}
.hero h1>span{position:relative;display:inline-block;color:var(--brand)}
.hero h1>span:after{content:"";position:absolute;z-index:-1;left:2px;right:-2px;bottom:4px;height:12px;background:rgba(58,79,214,.12);transform:skewX(-12deg)}
.hero-copy>p:not(.hero-note){max-width:610px;margin:27px 0 0;color:var(--muted);font-size:18px;line-height:1.78}
.hero-copy strong{color:var(--ink)}
.hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:33px}
.hero-note{margin:19px 0 0!important;color:var(--faint)!important;font-size:13px!important}
.ops-board{position:relative;overflow:hidden;color:#eff4ff;background:var(--navy);border:1px solid #26344d;border-radius:22px;box-shadow:0 30px 80px rgba(17,26,43,.27)}
.ops-board:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:26px 26px;pointer-events:none}
.hero-shot{display:block;min-width:0;text-decoration:none;cursor:zoom-in}
.hero-shot:before{display:none}
.hero-shot>.hero-shot-image{display:block;width:100%;height:auto}
.hero-shot:focus-visible{outline:3px solid var(--brand);outline-offset:4px}
.hero-shot-brand{min-height:58px;display:flex;align-items:center;gap:11px;padding:0 16px;color:#fff;background:linear-gradient(90deg,#101622,#151c2a);border-bottom:1px solid #26344d}
.hero-shot-brand img{width:36px;height:36px;flex:0 0 auto;border-radius:10px}
.hero-shot-brand>span{display:flex;flex-direction:column;line-height:1.1}
.hero-shot-brand b{font-size:14px;letter-spacing:-.02em}
.hero-shot-brand small{margin-top:4px;color:#7f8da4;font-family:"IBM Plex Mono",monospace;font-size:8px;letter-spacing:.08em}
.hero-shot-brand em{margin-left:auto;color:#9ba8bc;font-family:"IBM Plex Mono",monospace;font-size:9px;font-style:normal;letter-spacing:.08em}
.ops-top,.ops-foot,.metrics,.ops-body{position:relative}
.ops-top{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--navy-line);font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.07em}
.ops-top>span{display:flex;align-items:center;gap:10px}
.ops-top i{width:8px;height:8px;border-radius:50%;background:#46cf93;box-shadow:0 0 0 5px rgba(70,207,147,.11)}
.ops-top em{color:#9cabc0;font-family:Pretendard,"IBM Plex Sans KR",sans-serif;font-size:10px;font-style:normal;letter-spacing:0}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--navy-line)}
.metrics>div{padding:15px 16px;border-right:1px solid var(--navy-line)}
.metrics>div:last-child{border:0}
.metrics small{display:block;color:#91a0b7;font-size:9px}
.metrics b{display:block;margin-top:3px;color:#fff;font-family:"IBM Plex Mono",monospace;font-size:22px;line-height:1.2}
.metrics .green b{color:#60dda2}
.metrics .amber b{color:#ffc66e}
.ops-body{display:grid;grid-template-columns:1.04fr .96fr;min-height:340px}
.device-list{padding:17px;border-right:1px solid var(--navy-line)}
.board-label{display:flex;justify-content:space-between;margin-bottom:10px;color:#8595ad;font-size:9px;letter-spacing:.08em}
.device{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:61px;margin-top:8px;padding:8px 9px;border:1px solid #2a3952;border-radius:9px;background:rgba(255,255,255,.025)}
.device.active{border-color:rgba(96,116,255,.68);background:rgba(58,79,214,.13)}
.phone{position:relative;width:27px;height:39px;border:2px solid #71809a;border-radius:5px}
.phone:before{content:"";position:absolute;top:3px;left:7px;width:9px;height:2px;border-radius:2px;background:#71809a}
.phone:after{content:"";position:absolute;left:3px;right:3px;bottom:4px;height:15px;border-radius:2px;background:linear-gradient(145deg,#34445e,#233047)}
.device p,.user p{min-width:0;margin:0}
.device p b,.user p b{display:block;overflow:hidden;color:#f8faff;font-family:"IBM Plex Mono",monospace;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.device p small,.user p small{display:block;overflow:hidden;margin-top:2px;color:#8c9bb2;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.device>em{display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border-radius:99px;font-family:"IBM Plex Mono",monospace;font-size:8px;font-style:normal;font-weight:600;white-space:nowrap}
.device>em:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.device .inuse{color:#92a0ff;background:rgba(91,107,227,.13)}
.device .online{color:#5bdaa0;background:rgba(50,190,126,.12)}
.device .offline{color:#9ba7b8;background:rgba(151,164,183,.1)}
.route{padding:17px}
.route-card{padding:14px;border:1px solid #2c3c56;border-radius:11px;background:rgba(255,255,255,.035)}
.route-head{display:flex;justify-content:space-between;color:#8e9db3;font-size:9px}
.route-head b{color:#ffc66e;font-family:"IBM Plex Mono",monospace}
.user{display:flex;align-items:center;gap:10px;margin-top:12px}
.user>i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#dbe0ff;background:#3447b8;font-family:"IBM Plex Mono",monospace;font-size:9px;font-style:normal}
.track{position:relative;height:72px;margin:13px 5px 5px;padding-left:25px;border-left:1px solid #41516a;color:#8999b0;font-size:9px}
.track span{position:absolute;left:14px}
.track span:first-child{top:-2px}
.track span:nth-child(2){bottom:-2px}
.track span:before{content:"";position:absolute;left:-21px;top:1px;width:11px;height:11px;border:2px solid #6d80ff;border-radius:50%;background:#3d4fba}
.track span:nth-child(2):before{border-color:#6e7c91;background:var(--navy-2)}
.track>i{position:absolute;left:-3px;top:10px;width:5px;height:5px;border-radius:50%;background:#98a5ff;box-shadow:0 0 12px #8191ff;animation:route 3.2s ease-in-out infinite}
.route-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;text-align:center;font-size:9px}
.route-buttons span,.route-buttons b{padding:8px;border:1px solid #35455f;border-radius:7px;font-weight:500}
.route-buttons b{color:#fff;border-color:#5264df;background:#3b4fc8}
.ops-foot{display:flex;justify-content:space-between;padding:10px 17px;border-top:1px solid var(--navy-line);color:#75859d;font-family:"IBM Plex Mono",monospace;font-size:8px}
.ops-foot span:last-child{font-family:Pretendard,"IBM Plex Sans KR",sans-serif;font-size:9px;letter-spacing:0}
@keyframes route{0%{transform:translateY(0);opacity:0}15%{opacity:1}80%{opacity:1}100%{transform:translateY(49px);opacity:0}}
.proof-bar{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.proof-bar>div{min-height:76px;display:flex;flex-direction:column;justify-content:center;padding:0 22px;border-right:1px solid var(--line)}
.proof-bar>div:first-child{padding-left:0}
.proof-bar>div:last-child{border:0}
.proof-bar b{font-size:14px}
.proof-bar span{margin-top:1px;color:var(--faint);font-size:12px}
.section-head{max-width:750px;margin-bottom:53px}
.section-head.center{margin-right:auto;margin-left:auto;text-align:center}
.section-head.center .eyebrow:after{content:"";width:34px;height:2px;background:currentColor}
.section-head h2{margin:0;font-family:"IBM Plex Sans KR",Pretendard,sans-serif;font-size:clamp(36px,4vw,54px);line-height:1.22;letter-spacing:-.055em}
.section-head>p{max-width:650px;margin:19px 0 0;color:var(--muted);font-size:17px;line-height:1.75}
.section-head.center>p{margin-right:auto;margin-left:auto}
.switch-section{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.switch-grid{display:grid;grid-template-columns:1fr 64px 1fr}
.switch-side{padding:44px 48px}
.switch-side.before{background:#f6f7f9}
.switch-side.after{background:#f3f5ff}
.switch-side>small{color:var(--faint);font-family:Pretendard,"IBM Plex Sans KR",sans-serif;font-size:12px;font-weight:600;letter-spacing:0}
.switch-side.after>small{color:var(--brand)}
.switch-side h3{margin:12px 0 24px;font-size:25px;line-height:1.35;letter-spacing:-.04em}
.switch-side ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.switch-side li{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}
.switch-side li:before{content:"×";display:grid;place-items:center;width:22px;height:22px;flex:0 0 auto;border:1px solid var(--line-strong);border-radius:50%;color:#718093}
.switch-side.after li{color:var(--ink)}
.switch-side.after li:before{content:"✓";color:#fff;border-color:var(--brand);background:var(--brand)}
.switch-arrow{display:grid;place-items:center;color:var(--brand);background:#fff;border-right:1px solid var(--line);border-left:1px solid var(--line);font-size:24px}
.feature-ledger{border-top:1px solid var(--line-strong)}
.feature-row{display:grid;grid-template-columns:100px minmax(240px,.65fr) minmax(0,1.55fr);gap:42px;align-items:center;min-height:245px;padding:42px 0;border-bottom:1px solid var(--line-strong)}
.feature-code{align-self:start;padding-top:7px;color:var(--brand);font-family:"IBM Plex Mono",monospace;font-size:10px;font-weight:600;letter-spacing:.1em}
.feature-copy h3{margin:0;font-size:30px;line-height:1.3;letter-spacing:-.045em}
.feature-copy p{margin:14px 0 0;color:var(--muted);font-size:15px;line-height:1.75}
.feature-ui{min-width:0;padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 14px 35px rgba(30,45,72,.07)}
.feature-ui.feature-shot{display:block;width:100%;max-width:560px;justify-self:end;padding:0;overflow:hidden;color:inherit;text-decoration:none;background:#10131b;border-color:#c9d2e1;box-shadow:0 18px 44px rgba(30,45,72,.12);transition:transform .2s ease,box-shadow .2s ease}
.feature-shot:hover{transform:translateY(-2px);box-shadow:0 22px 52px rgba(30,45,72,.17)}
.feature-shot:focus-visible{outline:3px solid var(--brand);outline-offset:4px}
.feature-shot img{display:block;width:100%;height:auto;background:#10131b}
.feature-shot-open{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border-top:1px solid var(--line);color:#56647b;background:#fff;font-size:11px;font-weight:700;letter-spacing:-.01em}
.feature-shot-open em{color:var(--brand);font-style:normal}
.ui-head{min-height:28px;display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}
.ui-head b{font-size:11px}
.ui-head span{color:var(--faint);font-family:Pretendard,"IBM Plex Sans KR",sans-serif;font-size:9px;letter-spacing:0}
.state-cells{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.state-cells>div{padding:10px;border-right:1px solid var(--line)}
.state-cells>div:last-child{border:0}
.state-cells small{display:block;color:var(--faint);font-size:9px}
.state-cells b{font-family:"IBM Plex Mono",monospace;font-size:15px}
.state-cells .ok b{color:var(--green)}
.state-cells .blue b{color:var(--brand)}
.mini-table,.history{margin-top:9px;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.mini-table>div{display:grid;grid-template-columns:1fr .9fr .7fr;align-items:center;min-height:32px;padding:0 9px;border-bottom:1px solid var(--line);font-size:9px}
.mini-table>div:first-child,.history>div:first-child{color:var(--faint);background:#f8f9fb}
.mini-table>div:last-child,.history>div:last-child{border:0}
.mini-table em{color:var(--green);font-style:normal}
.assign-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:9px}
.assign-grid>div{padding:11px;border:1px solid var(--line);border-radius:8px}
.assign-grid small{display:block;color:var(--faint);font-size:9px}
.assign-grid b{font-family:"IBM Plex Mono",monospace;font-size:10px}
.assign-grid p{margin:5px 0 0;color:var(--brand);font-family:"IBM Plex Mono",monospace;font-size:9px}
.assign-action{display:flex;justify-content:space-between;margin-top:9px;padding:9px 11px;border-radius:8px;color:#fff;background:var(--brand);font-size:9px}
.expiry-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.expiry-cards>div{padding:11px;border:1px solid var(--line);border-radius:8px}
.expiry-cards .hot{border-color:#efc17d;background:var(--amber-soft)}
.expiry-cards small,.expiry-cards b{display:block}
.expiry-cards small{color:var(--faint);font-size:9px}
.expiry-cards b{margin-top:3px;font-family:Pretendard,"IBM Plex Sans KR",sans-serif;font-size:10px}
.expiry-cards em{display:inline-block;margin-top:8px;padding:3px 6px;border-radius:99px;color:var(--amber);background:rgba(217,130,23,.11);font-family:"IBM Plex Mono",monospace;font-size:9px;font-style:normal}
.history>div{display:grid;grid-template-columns:.85fr 1.1fr .7fr .65fr;align-items:center;min-height:34px;padding:0 9px;border-bottom:1px solid var(--line);font-size:9px}
.history em{width:max-content;padding:3px 6px;border-radius:99px;color:var(--green);background:var(--green-soft);font-style:normal}
.history em.closed{color:#718093;background:#eef1f5}
.flow-section{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.flow-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px;align-items:start}
.flow-grid>.section-head{position:sticky;top:118px;margin:0}
.notice{margin-top:24px;padding:16px 18px;border-left:3px solid var(--brand);color:var(--muted);background:var(--brand-soft);font-size:13px}
.steps{border-top:1px solid var(--line-strong)}
.step{display:grid;grid-template-columns:60px 1fr;gap:22px;padding:35px 0;border-bottom:1px solid var(--line-strong)}
.step>i{display:grid;place-items:center;align-self:start;width:48px;height:48px;border:1px solid var(--line-strong);border-radius:50%;color:var(--brand);background:var(--canvas);font-family:"IBM Plex Mono",monospace;font-size:11px;font-style:normal;font-weight:600}
.step h3{margin:0;font-size:23px;letter-spacing:-.035em}
.step p{margin:9px 0 0;color:var(--muted);font-size:15px}
.step div>span{display:inline-block;margin-top:14px;padding:5px 8px;border-radius:5px;color:var(--brand);background:var(--brand-soft);font-size:10px;font-weight:600}
.browser-section{overflow:hidden}
.browser-shell{display:grid;grid-template-columns:.82fr 1.18fr;overflow:hidden;color:#fff;background:var(--navy);border-radius:22px;box-shadow:var(--shadow)}
.browser-copy{padding:60px 52px}
.browser-copy .eyebrow{color:#91a0ff}
.browser-copy h2{margin:0;font-size:clamp(34px,4vw,52px);line-height:1.25;letter-spacing:-.055em}
.browser-copy>p{margin:18px 0 0;color:#aeb8c9;font-size:16px;line-height:1.75}
.browser-copy ul{display:grid;gap:10px;margin:27px 0 0;padding:0;list-style:none}
.browser-copy li{display:flex;align-items:center;gap:9px;color:#e5eaf3;font-size:14px}
.browser-copy li:before{content:"✓";display:grid;place-items:center;width:21px;height:21px;border-radius:50%;color:var(--navy);background:#6be0a7;font-size:11px;font-weight:800}
.customer-window{align-self:end;min-height:482px;margin:52px 0 0 24px;color:var(--ink);background:#f7f8fb;border:1px solid #33415a;border-right:0;border-bottom:0;border-radius:17px 0 0 0;overflow:hidden}
.window-bar{height:44px;display:flex;align-items:center;gap:6px;padding:0 13px;border-bottom:1px solid var(--line);background:#fff}
.window-bar>i{width:8px;height:8px;border-radius:50%;background:#d5dae2}
.window-bar>span{flex:1;margin-left:7px;padding:6px 10px;border-radius:6px;color:var(--faint);background:#f1f3f6;font-family:"IBM Plex Mono",monospace;font-size:8px}
.window-body{display:grid;grid-template-columns:115px 1fr;min-height:438px}
.window-body aside{display:flex;flex-direction:column;gap:7px;padding:17px 10px;color:#9da8ba;background:#151f32}
.window-body aside b{margin:0 7px 8px;color:#fff;font-size:10px}
.window-body aside span{padding:8px;border-radius:6px;font-family:"IBM Plex Mono",monospace;font-size:8px}
.window-body aside .selected{color:#fff;background:#3447b8}
.window-main{padding:18px}
.window-main>p{display:flex;justify-content:space-between;margin:0;color:var(--faint);font-size:8px}
.window-main>p em{color:var(--green);font-style:normal}
.phone-view{width:174px;height:320px;margin:21px auto 0;padding:12px 8px;border:5px solid #202a3c;border-radius:24px;background:#111827;box-shadow:0 18px 35px rgba(23,34,54,.2)}
.phone-view>div{height:100%;padding-top:53px;border-radius:15px;background:linear-gradient(160deg,#5268e8,#7c53cb 48%,#ef8f72);text-align:center}
.phone-view b{display:block;color:#fff;font-family:"IBM Plex Sans KR",sans-serif;font-size:22px}
.phone-view span{display:inline-block;margin-top:13px;padding:5px 8px;border-radius:99px;color:#fff;background:rgba(17,26,43,.26);font-size:9px}
.controls-section{position:relative;overflow:hidden;padding:112px 0;color:#f5f7fb;background:#0d1119;border-top:1px solid #242c3b;border-bottom:1px solid #242c3b}
.controls-section:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:38px 38px;pointer-events:none}
.controls-section .wrap{position:relative}
.controls-section .section-head{max-width:790px}
.controls-section .eyebrow{color:#77a8ff}
.controls-section .section-head h2{color:#fff}
.controls-section .section-head>p{color:#aeb8c9}
.control-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.control-card{min-height:218px;padding:27px;border:1px solid #2a3243;border-radius:16px;background:#171c28;transition:transform .2s,border-color .2s,background .2s}
.control-card:hover{transform:translateY(-3px);border-color:#40517a;background:#1a2130}
.control-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid #345a83;border-radius:11px;color:#55a8ff;background:#172a41}
.control-icon svg{width:23px;height:23px}
.control-card h3{margin:20px 0 0;color:#fff;font-size:21px;letter-spacing:-.035em}
.control-card p{margin:10px 0 0;color:#aeb8c9;font-size:14px;line-height:1.75}
.controls-note{display:flex;align-items:flex-start;gap:10px;margin:24px 0 0;color:#93a0b5;font-size:12px}
.controls-note:before{content:"i";display:grid;place-items:center;width:19px;height:19px;flex:0 0 auto;border:1px solid #3b4b64;border-radius:50%;color:#8db7ff;font-family:"IBM Plex Mono",monospace;font-size:10px}
.control-demo-block{margin-top:44px;padding-top:0;border-top:1px solid #2a3243}
.control-demo-showcase{display:grid}
.control-demo-feature{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:56px;align-items:center;padding:58px 0;border-top:1px solid #2a3243}
.control-demo-feature:first-child{padding-top:48px;border-top:0}
.control-demo-feature:nth-child(even) .control-demo-copy{order:2}
.control-demo-feature:nth-child(even) .control-demo-window{order:1;justify-self:start}
.control-demo-copy{min-width:0}
.control-demo-copy h4{margin:0;color:#fff;font-size:29px;line-height:1.32;letter-spacing:-.045em}
.control-demo-copy p{margin:14px 0 0;color:#aeb8c9;font-size:14px;line-height:1.8}
.control-demo-copy strong{display:inline-flex;align-items:center;gap:8px;margin-top:20px;color:#dce8ff;font-size:12px}
.control-demo-copy strong:before{content:"";width:7px;height:7px;border-radius:50%;background:#55d995;box-shadow:0 0 0 5px rgba(85,217,149,.1)}
.control-demo-window{width:100%;max-width:680px;min-width:0;justify-self:end;margin:0;overflow:hidden;border:1px solid #303b50;border-radius:18px;background:#090d13;box-shadow:0 24px 54px rgba(0,0,0,.28)}
.control-demo-window picture,.control-demo-window img{display:block;width:100%}
.control-demo-window img{height:auto}
.api-panel{display:grid;grid-template-columns:.92fr 1.08fr;gap:48px;align-items:center;margin-top:28px;padding:42px;border:1px solid #2b3548;border-radius:18px;background:#111620}
.api-copy .feature-code{display:block;padding:0;color:#6eacff}
.api-copy h3{margin:13px 0 0;color:#fff;font-size:31px;letter-spacing:-.045em}
.api-copy>p{margin:13px 0 0;color:#aeb8c9;font-size:15px;line-height:1.75}
.api-points{display:grid;gap:10px;margin:22px 0 0;padding:0;list-style:none}
.api-points li{display:flex;align-items:flex-start;gap:9px;color:#dfe5ee;font-size:13px}
.api-points li:before{content:"✓";display:grid;place-items:center;width:19px;height:19px;flex:0 0 auto;border:1px solid #315c82;border-radius:6px;color:#69b2ff;background:#172a41;font-size:10px}
.api-console{overflow:hidden;border:1px solid #30394a;border-radius:13px;background:#090d13;box-shadow:0 18px 38px rgba(0,0,0,.22)}
.api-console-head{display:flex;align-items:center;gap:7px;height:44px;padding:0 16px;border-bottom:1px solid #293140;color:#758299;font-family:"IBM Plex Mono",monospace;font-size:9px}
.api-console-head i{width:9px;height:9px;border-radius:50%;background:#3a4354}
.api-console-head span{margin-left:5px;font-family:Pretendard,"IBM Plex Sans KR",sans-serif;font-size:10px;letter-spacing:0}
.api-console-body{padding:19px 20px 21px;font-family:"IBM Plex Mono",monospace;font-size:11px;line-height:1.85}
.api-console-body p{margin:0;color:#8d99ad;font-family:Pretendard,"IBM Plex Sans KR",sans-serif;font-size:11px;letter-spacing:0}
.api-console-body code{display:block;color:#cbd4e2;white-space:normal}
.api-console-body b{color:#69b2ff;font-weight:600}
.api-console-body em{color:#71d79f;font-style:normal}
.api-console-result{margin-top:13px;padding-top:13px;border-top:1px dashed #313949;color:#8c99ad;font-family:Pretendard,"IBM Plex Sans KR",sans-serif;font-size:11px;letter-spacing:0}
.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong)}
.capability-grid article{min-height:171px;padding:29px;border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}
.capability-grid small{color:var(--brand);font-family:"IBM Plex Mono",monospace;font-size:9px;font-weight:600;letter-spacing:.08em}
.capability-grid h3{margin:10px 0 0;font-size:21px;letter-spacing:-.035em}
.capability-grid p{margin:9px 0 0;color:var(--muted);font-size:14px;line-height:1.7}
.self-section{padding:26px 0 92px;background:#fff}
.self-panel{position:relative;overflow:hidden;display:grid;grid-template-columns:.92fr 1.08fr;border:1px solid var(--line-strong);border-radius:22px;background:linear-gradient(135deg,#f7f8ff 0,#fff 56%);box-shadow:0 24px 60px rgba(28,42,70,.09)}
.self-panel:before{content:"SELF";position:absolute;right:-34px;bottom:-92px;color:rgba(58,79,214,.045);font-family:"IBM Plex Sans KR",sans-serif;font-size:190px;font-weight:700;line-height:1}
.self-copy,.self-route{position:relative;padding:50px}
.self-copy{border-right:1px solid var(--line)}
.self-copy .eyebrow{margin-bottom:15px}
.self-copy h2{margin:0;font-size:clamp(33px,3.6vw,48px);line-height:1.25;letter-spacing:-.055em}
.self-copy>p{margin:18px 0 0;color:var(--muted);font-size:16px;line-height:1.75}
.self-price{display:flex;align-items:flex-end;gap:12px;margin-top:28px}
.self-price span{padding-bottom:8px;color:var(--muted);font-size:12px;font-weight:700}
.self-price s{padding-bottom:9px;color:var(--faint);font-size:15px;line-height:1;font-weight:700;letter-spacing:-.02em;text-decoration:line-through;text-decoration-thickness:1.5px}
.self-price i{padding-bottom:8px;margin:0 -2px;color:var(--faint);font-size:18px;line-height:1;font-style:normal;font-weight:700}
.self-price strong{color:var(--brand);font-family:"IBM Plex Sans KR",Pretendard,sans-serif;font-size:46px;line-height:1;font-weight:700;letter-spacing:-.055em}
.self-price em{padding-bottom:6px;color:var(--ink);font-size:16px;font-style:normal;font-weight:700}
.self-free{display:inline-flex;align-items:center;gap:8px;margin-top:15px;padding:8px 12px;border-radius:8px;color:#176b4c;background:var(--green-soft);font-size:12px;font-weight:700}
.self-free:before{content:"✓";display:grid;place-items:center;width:18px;height:18px;border-radius:50%;color:#fff;background:var(--green);font-size:10px}
.self-route{display:flex;flex-direction:column;justify-content:center}
.self-route h3{margin:0;font-size:15px}
.self-steps{display:grid;gap:12px;margin-top:18px}
.self-step{display:grid;grid-template-columns:34px 1fr;gap:13px;align-items:center;padding:13px 15px;border:1px solid var(--line);border-radius:11px;background:#fff}
.self-step i{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:#fff;background:var(--brand);font-family:"IBM Plex Mono",monospace;font-size:11px;font-style:normal;font-weight:600}
.self-step b{display:block;font-size:14px}
.self-step span{display:block;margin-top:2px;color:var(--faint);font-size:12px}
.self-route .btn{align-self:flex-start;margin-top:20px}
.self-disclaimer{margin:14px 0 0;color:var(--faint);font-size:11px}
.cta-section{padding:0 0 72px}
.cta-panel{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px;padding:62px;color:#fff;background:var(--brand);border-radius:22px}
.cta-panel:before{content:"M";position:absolute;top:-92px;right:260px;color:rgba(255,255,255,.055);font-family:"IBM Plex Sans KR",sans-serif;font-size:340px;font-weight:700;line-height:1}
.cta-panel>div{position:relative}
.cta-panel small{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.09em;opacity:.76}
.cta-panel h2{margin:11px 0 0;font-size:clamp(34px,4vw,51px);line-height:1.25;letter-spacing:-.055em}
.cta-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}
footer{padding:52px 0 31px;color:#aeb8c9;background:#0d1017;border-top:1px solid #272d3b}
.footer-grid{display:grid;grid-template-columns:1fr auto;gap:48px}
footer .brand{color:#fff}
footer .brand-mark{background:#0b0c0e;box-shadow:none}
.footer-grid p{margin:13px 0 0;color:#8995a8;font-size:13px}
.contact-group{min-width:144px}
.contact-label{display:block;margin-bottom:10px;color:#778399;font-size:12px;font-weight:600}
.contacts{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.contacts a{min-height:42px;display:inline-flex;align-items:center;gap:8px;padding:5px 14px 5px 6px;border:1px solid #303747;border-radius:999px;color:#f3f5f8;background:#191e29;font-size:13px;font-weight:700;transition:transform .2s,border-color .2s,background .2s}
.contacts a:hover{transform:translateY(-2px);border-color:#46526a;background:#202635}
.contacts a:focus-visible{outline-color:#fff;box-shadow:0 0 0 2px #0d1017,0 0 0 5px #80afff}
.contact-icon{display:grid;place-items:center;width:26px;height:26px;flex:0 0 auto;border-radius:50%}
.contact-icon.telegram{background:#2aabee}
.contact-icon.kakao{background:#fee500}
.contact-icon svg{width:18px;height:18px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:36px;padding-top:21px;border-top:1px solid #272d3b;color:#778399;font-size:11px}
.js .reveal{opacity:0;transform:translateY(18px)}
.js .reveal.in{opacity:1;transform:none;transition:opacity .62s,transform .62s cubic-bezier(.22,.7,.25,1)}
.js .delay-1.in{transition-delay:.08s}
.js .delay-2.in{transition-delay:.16s}
@media(max-width:960px){
 .nav-links,.nav-actions>.btn{display:none}.hamburger{display:block}
}
@media(max-width:1080px){
 .hero-grid{grid-template-columns:1fr;gap:52px}.hero-copy{max-width:780px}.ops-board{max-width:800px}
 .feature-row{grid-template-columns:80px minmax(220px,.72fr) minmax(0,1.28fr);gap:27px}.flow-grid{gap:54px}
 .browser-shell{grid-template-columns:1fr}.customer-window{width:min(720px,calc(100% - 32px));margin-left:auto}
 .control-grid{grid-template-columns:repeat(2,1fr)}.control-demo-feature{gap:34px}.api-panel{grid-template-columns:1fr;gap:30px}.self-panel{grid-template-columns:1fr}.self-copy{border-right:0;border-bottom:1px solid var(--line)}
 .cta-panel{grid-template-columns:1fr}.cta-actions{justify-content:flex-start}
}
@media(max-width:840px){
 .section{padding:92px 0}.nav-links,.nav-actions>.btn{display:none}.hamburger{display:block}
 .proof-bar{grid-template-columns:1fr}.proof-bar>div,.proof-bar>div:first-child{min-height:67px;padding:0;border-right:0;border-bottom:1px solid var(--line)}.proof-bar>div:last-child{border-bottom:0}
 .switch-grid{grid-template-columns:1fr}.switch-arrow{min-height:54px;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);transform:none}.switch-arrow{font-size:0}.switch-arrow:after{content:"↓";font-size:24px}
 .feature-row{grid-template-columns:75px 1fr;gap:23px}.feature-ui{grid-column:2}.feature-ui.feature-shot{max-width:none;justify-self:stretch}
 .flow-grid{grid-template-columns:1fr}.flow-grid>.section-head{position:static}.control-demo-feature{grid-template-columns:1fr;gap:24px;padding:46px 0}.control-demo-feature:nth-child(even) .control-demo-copy,.control-demo-feature:nth-child(even) .control-demo-window{order:initial}.control-demo-window,.control-demo-feature:nth-child(even) .control-demo-window{max-width:none;justify-self:stretch}
 .capability-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.contact-group{justify-self:start}
}
@media(max-width:640px){
 .wrap{width:min(100% - 32px,var(--wrap))}.nav-row{height:68px;gap:12px}.brand{font-size:21px}.nav-actions{gap:7px}.language-trigger{min-width:59px;height:40px;padding:0 8px}.language-panel{right:-48px;width:min(230px,calc(100vw - 24px))}.language-panel:before{right:74px}
 .hero{padding:65px 0 61px}.hero h1{font-size:clamp(42px,13vw,58px)}.hero-copy>p:not(.hero-note){font-size:16px}.hero-actions{display:grid}.hero-actions .btn{width:100%}
 .ops-board{border-radius:16px}.hero-shot-brand{min-height:48px;padding:0 11px}.hero-shot-brand img{width:29px;height:29px;border-radius:8px}.hero-shot-brand small{display:none}.hero-shot-brand em{font-size:8px}.metrics{grid-template-columns:repeat(2,1fr)}.metrics>div:nth-child(2){border-right:0}.metrics>div:nth-child(-n+2){border-bottom:1px solid var(--navy-line)}
 .ops-body{grid-template-columns:1fr}.device-list{border-right:0;border-bottom:1px solid var(--navy-line)}.route{padding-top:14px}
 .section-head{margin-bottom:38px}.section-head h2{font-size:37px}.section-head>p{font-size:15px}
 .switch-side{padding:33px 25px}.feature-row{grid-template-columns:1fr;min-height:0;padding:35px 0}.feature-code{padding:0}.feature-ui{grid-column:1}
 .state-cells{grid-template-columns:repeat(2,1fr)}.state-cells>div:nth-child(2){border-right:0}.state-cells>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
 .assign-grid,.expiry-cards{grid-template-columns:1fr}.flow-grid{gap:35px}.step{grid-template-columns:47px 1fr;gap:14px}.step>i{width:41px;height:41px}
 .browser-shell{border-radius:16px}.browser-copy{padding:43px 25px}.browser-copy h2{font-size:36px}
 .customer-window{width:calc(100% - 18px);min-height:410px}.window-body{grid-template-columns:86px 1fr;min-height:365px}.window-main{padding:12px}.phone-view{width:142px;height:272px}
 .controls-section{padding:86px 0}.control-grid{grid-template-columns:1fr}.control-card{min-height:0;padding:24px 21px}.control-demo-block{margin-top:32px;padding-top:0}.control-demo-feature{padding:38px 0}.control-demo-feature:first-child{padding-top:32px}.control-demo-copy h4{font-size:25px}.control-demo-window{border-radius:13px}.api-panel{padding:26px 21px}.api-copy h3{font-size:27px}.api-console-body{padding:17px 15px;font-size:10px}
 .capability-grid article{min-height:0;padding:25px 21px}.self-section{padding-bottom:70px}.self-panel{border-radius:16px}.self-copy,.self-route{padding:34px 24px}.self-copy h2{font-size:36px}.self-price{flex-wrap:wrap}.self-price strong{font-size:42px}
 .cta-section{padding-bottom:46px}.cta-panel{padding:43px 25px;border-radius:16px}.cta-panel h2{font-size:36px}.cta-actions{display:grid}.cta-actions .btn{width:100%}
 .footer-bottom{flex-direction:column}
}
@media(max-width:420px){
 .hero-shot-brand em{display:none}.ops-top{font-size:9px}.device-list,.route{padding:12px}.device{gap:7px;padding:7px}.device>em{padding:4px 5px;font-size:7px}
.mini-table>div,.history>div{font-size:9px}.window-body aside{display:none}.window-body{grid-template-columns:1fr}.api-console-body{font-size:9px}.self-copy h2{font-size:33px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}
}

/* --- v2 additions --- */
.hero-browser{position:relative;display:block;min-width:0;overflow:hidden;border:1px solid #c9d2e1;border-radius:20px;background:#0f1420;box-shadow:0 30px 80px rgba(17,26,43,.24);cursor:zoom-in;transition:transform .25s ease,box-shadow .25s ease}
.hero-browser:hover{transform:translateY(-3px);box-shadow:0 38px 90px rgba(17,26,43,.3)}
.hero-browser:focus-visible{outline:3px solid var(--brand);outline-offset:4px}
.hero-browser>.window-bar{height:48px;display:flex;align-items:center;gap:6px;padding:0 14px;border-bottom:1px solid #26344d;background:linear-gradient(90deg,#101622,#151c2a)}
.hero-browser>.window-bar>i{width:9px;height:9px;border-radius:50%;background:#3a4354}
.hero-browser>.window-bar>i:nth-child(1){background:#ff5f57}.hero-browser>.window-bar>i:nth-child(2){background:#febc2e}.hero-browser>.window-bar>i:nth-child(3){background:#28c840}
.hero-browser>.window-bar>span{flex:1;margin-left:8px;padding:7px 12px;border-radius:7px;color:#9ba8bc;background:rgba(255,255,255,.06);font-size:11px;letter-spacing:.01em}
.hero-browser>.window-bar>em{color:#60dda2;font-size:10px;font-style:normal;font-weight:700;letter-spacing:.06em}
.hero-browser>img{display:block;width:100%;height:auto}
.hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.hero-badges span{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid var(--line-strong);border-radius:999px;color:var(--muted);background:rgba(255,255,255,.82);font-size:12px;font-weight:700}
.hero-badges span:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(31,157,106,.12)}
.definition{max-width:860px;margin:44px auto 0;padding:22px 26px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:12px;background:#fff;color:var(--muted);font-size:15px;line-height:1.8}
.definition b{color:var(--ink)}
.compare-table{width:100%;margin-top:40px;border-collapse:separate;border-spacing:0;border:1px solid var(--line-strong);border-radius:14px;overflow:hidden;background:#fff;font-size:13px}
.compare-table th,.compare-table td{padding:13px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.compare-table thead th{color:var(--faint);background:#f8f9fb;font-size:11px;font-weight:700;letter-spacing:.02em}
.compare-table tbody tr:last-child td{border-bottom:0}
.compare-table th[scope=row]{color:var(--ink);font-weight:700;white-space:nowrap}
.compare-table tr.is-moclou{background:var(--brand-soft)}
.compare-table tr.is-moclou th[scope=row]{color:var(--brand-deep)}
.compare-table td.yes{color:var(--green);font-weight:700}
.compare-table td.no{color:#8a94a6}
.compare-wrap{overflow-x:auto}
.compare-note{margin:12px 0 0;color:var(--faint);font-size:12px}
.flow-grid .self-price{margin-top:26px}
.flow-grid .self-free{margin-right:8px}
.start-actions{display:flex;flex-wrap:wrap;gap:11px;padding-top:34px}
.btn-download{gap:7px}
.btn-download-icon{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:currentColor;color:inherit;font-size:12px;line-height:1}
.btn-primary .btn-download-icon{background:rgba(255,255,255,.22)}
.btn-secondary .btn-download-icon{background:var(--brand-soft);color:var(--brand)}
.btn-meta{margin-left:2px;padding-left:9px;border-left:1px solid currentColor;opacity:.62;font-size:12px;font-weight:600;letter-spacing:0}
.download-note{margin:12px 0 0;color:var(--faint);font-size:12px}
.pc-agent{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:30px;padding:22px 24px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
.pc-agent-label{color:var(--brand);font-size:12px;font-weight:700}
.pc-agent h3{margin:6px 0 0;font-size:19px;letter-spacing:-.03em}
.pc-agent p{margin:8px 0 0;color:var(--muted);font-size:14px}
.pc-agent .btn{flex:none}
@media(max-width:760px){.pc-agent{flex-direction:column;align-items:stretch}.pc-agent .btn{width:100%}}.rental-section{background:#fff;border-top:1px solid var(--line)}
.rental-section .section-head.center{margin-bottom:24px}
.faq-section{padding:96px 0}
.faq-list{max-width:860px;margin:0 auto;border-top:1px solid var(--line-strong)}
.faq-list details{border-bottom:1px solid var(--line-strong)}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 4px;cursor:pointer;list-style:none;font-size:18px;font-weight:700;letter-spacing:-.02em}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line-strong);border-radius:50%;color:var(--brand);font-size:18px;font-weight:500;transition:transform .2s}
.faq-list details[open] summary:after{transform:rotate(45deg)}
.faq-list p{margin:0;padding:0 4px 24px;color:var(--muted);font-size:15px;line-height:1.8}
@media(max-width:640px){
 .hero-browser{border-radius:15px}.hero-browser>.window-bar{height:42px;padding:0 11px}.hero-browser>.window-bar>em{display:none}.hero-badges{gap:6px}.hero-badges span{padding:7px 11px;font-size:11px}
 .definition{padding:18px;font-size:14px}.compare-table{font-size:12px}.compare-table th,.compare-table td{padding:11px 12px}
 .start-actions{display:grid}.start-actions .btn{width:100%}.faq-section{padding:72px 0}.faq-list summary{font-size:16px;padding:18px 2px}
}
.automation-section{background:var(--canvas);border-top:1px solid var(--line)}
.automation-section .section-head.center{margin-bottom:46px}
.automation-stage{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(280px,.68fr);gap:34px;align-items:stretch}
.automation-editor{display:flex;flex-direction:column;min-width:0;margin:0;overflow:hidden;border:1px solid #303b50;border-radius:18px;background:#090d13;box-shadow:0 24px 54px rgba(0,0,0,.22)}
.automation-editor .window-bar{flex:0 0 auto}
.automation-editor video{display:block;width:100%;height:auto;aspect-ratio:1600/760;background:#090d13}
.automation-cases{display:grid;grid-template-rows:repeat(3,1fr);gap:14px;margin:0;padding:0;list-style:none}
.automation-cases li{padding:22px 24px;border:1px solid var(--line-strong);border-radius:14px;background:var(--paper)}
.automation-cases small{color:var(--brand);font-size:11px;font-weight:700;letter-spacing:.06em}
.automation-cases h3{margin:8px 0 0;font-size:19px;line-height:1.35;letter-spacing:-.03em}
.automation-cases p{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.7}
.mcp-panel{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:44px;align-items:center;margin-top:34px;padding:44px 46px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow)}
.mcp-copy .eyebrow{margin-bottom:14px}
.mcp-copy h3{margin:0;font-family:"IBM Plex Sans KR",Pretendard,sans-serif;font-size:clamp(26px,2.6vw,34px);line-height:1.28;letter-spacing:-.045em}
.mcp-copy>p{margin:16px 0 0;color:var(--muted);font-size:15.5px;line-height:1.75}
.mcp-copy ul{display:grid;gap:9px;margin:20px 0 0;padding:0;list-style:none}
.mcp-copy li{position:relative;padding-left:22px;color:var(--ink);font-size:14px}
.mcp-copy li:before{content:"";position:absolute;left:0;top:9px;width:11px;height:6px;border:2px solid var(--brand);border-top:0;border-right:0;transform:rotate(-45deg)}
.mcp-copy .btn{margin-top:24px}
.mcp-chat{display:flex;flex-direction:column;gap:12px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#f2f4f9}
.mcp-chat-bar{display:flex;align-items:center;gap:9px;padding:0 2px 8px;border-bottom:1px solid var(--line);color:var(--faint);font-size:12px;font-weight:600}
.mcp-chat-bar i{width:9px;height:9px;border-radius:50%;background:var(--green)}
.mcp-msg{max-width:88%;padding:13px 15px;border-radius:14px;font-size:13.5px;line-height:1.6}
.mcp-msg p{margin:0}
.mcp-msg.user{align-self:flex-end;color:#fff;background:var(--brand);border-bottom-right-radius:4px}
.mcp-msg.ai{align-self:flex-start;color:var(--ink);background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
.mcp-step{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:start}
.mcp-step+.mcp-step{margin-top:9px!important;padding-top:9px;border-top:1px dashed var(--line)}
.mcp-step b{display:inline-flex;align-items:center;gap:6px;color:var(--brand);font-size:12.5px;white-space:nowrap}
.mcp-step b:before{content:"✓";display:grid;place-items:center;width:16px;height:16px;border-radius:50%;color:#fff;background:var(--green);font-size:10px}
.mcp-step span{color:var(--muted);font-size:12.5px}
.mcp-note{margin:0;padding:0 2px;color:var(--faint);font-size:11.5px;line-height:1.6}
@media(max-width:1080px){.automation-stage{grid-template-columns:1fr}.automation-cases{grid-template-rows:none;grid-template-columns:repeat(3,1fr)}.mcp-panel{grid-template-columns:1fr;gap:28px;padding:32px 28px}}
@media(max-width:760px){.automation-cases{grid-template-columns:1fr}.automation-editor{border-radius:13px}.mcp-panel{padding:24px 18px;margin-top:24px}.mcp-msg{max-width:100%}.mcp-step{grid-template-columns:1fr}}

/* --- 멀티 페이지 리뉴얼(2026-10): 페이지 내비·서브 히어로·제품 카드·영상 쇼케이스·FAQ 그룹 --- */
.nav-links a{position:relative}
.nav-links a[aria-current="page"]{color:var(--ink)}
.nav-links a[aria-current="page"]:after{content:"";position:absolute;left:0;right:0;bottom:-27px;height:2px;border-radius:2px;background:var(--brand)}
.mobile-menu a[aria-current="page"]:not(.btn){color:var(--brand)}
.page-hero{padding:84px 0 72px}
.page-hero h1{font-size:clamp(40px,4.5vw,64px)}
.page-hero .hero-grid{grid-template-columns:.92fr 1.08fr;gap:60px}
.page-hero.center{text-align:center}
.page-hero.center .hero-copy{max-width:820px;margin:0 auto}
.page-hero.center .hero-copy>p:not(.hero-note){margin-right:auto;margin-left:auto}
.page-hero.center .eyebrow:after{content:"";width:34px;height:2px;background:currentColor}
.page-hero.center .hero-actions,.page-hero.center .page-tabs{justify-content:center}
.page-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.page-tabs a{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 15px;border:1px solid var(--line-strong);border-radius:999px;color:var(--muted);background:rgba(255,255,255,.82);font-size:13px;font-weight:700;transition:color .2s,border-color .2s,background .2s}
.page-tabs a:hover{color:var(--brand);border-color:var(--brand);background:#fff}
.page-tabs a small{color:var(--faint);font-size:11px;font-weight:600}
.hero-browser.is-video{margin:0;cursor:default}
.hero-browser.is-video:hover{transform:none}
.hero-browser>video,.together-frame>video,.control-demo-window video,.product-media video{display:block;width:100%;height:auto;background:#090d13}
.together-section{padding:110px 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.together-frame{margin:0;overflow:hidden;border:1px solid #303b50;border-radius:20px;background:#090d13;box-shadow:var(--shadow)}
.together-frame>.window-bar{height:46px;display:flex;align-items:center;gap:6px;padding:0 14px;border-bottom:1px solid #26344d;background:linear-gradient(90deg,#101622,#151c2a)}
.together-frame>.window-bar>i{width:9px;height:9px;border-radius:50%;background:#3a4354}
.together-frame>.window-bar>span{flex:1;margin-left:8px;padding:7px 12px;border-radius:7px;color:#9ba8bc;background:rgba(255,255,255,.06);font-size:11px}
.together-frame>.window-bar>em{color:#60dda2;font-size:10px;font-style:normal;font-weight:700;letter-spacing:.06em}
.together-caption{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;margin:20px 0 0;padding:0;list-style:none;color:var(--muted);font-size:13px;font-weight:600}
.together-caption li{display:inline-flex;align-items:center;gap:8px}
.together-caption li:before{content:"";width:8px;height:8px;border-radius:2px;background:var(--brand)}
.together-caption li.pc:before{background:var(--green)}
.product-split{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:46px}
.product-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);box-shadow:0 18px 44px rgba(30,45,72,.08);transition:transform .2s,box-shadow .2s,border-color .2s}
.product-card:hover{transform:translateY(-3px);border-color:var(--brand);box-shadow:0 24px 56px rgba(30,45,72,.13)}
.product-card:focus-visible{outline:3px solid var(--brand);outline-offset:4px}
.product-media{position:relative;overflow:hidden;aspect-ratio:16/8.4;background:#0d1119;border-bottom:1px solid var(--line)}
.product-media img,.product-media video{width:100%;height:100%;object-fit:cover;object-position:top center}
.product-media>span{position:absolute;top:14px;left:14px;padding:6px 11px;border-radius:999px;color:#fff;background:rgba(13,17,25,.78);font-size:11px;font-weight:700;letter-spacing:.04em;backdrop-filter:blur(6px)}
.product-body{display:flex;flex:1;flex-direction:column;padding:30px 32px 32px}
.product-body small{color:var(--brand);font-size:12px;font-weight:700}
.product-body h3{margin:8px 0 0;font-family:"IBM Plex Sans KR",Pretendard,sans-serif;font-size:clamp(25px,2.4vw,31px);line-height:1.3;letter-spacing:-.045em}
.product-body p{margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.75}
.product-body ul{display:grid;gap:9px;margin:20px 0 0;padding:0;list-style:none}
.product-body li{position:relative;padding-left:22px;font-size:14px}
.product-body li:before{content:"";position:absolute;left:0;top:9px;width:11px;height:6px;border:2px solid var(--brand);border-top:0;border-right:0;transform:rotate(-45deg)}
.product-more{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:26px;color:var(--brand);font-size:14px;font-weight:800}
.product-more span{transition:transform .2s}
.product-card:hover .product-more span{transform:translateX(4px)}
.pc-showcase .control-demo-feature{grid-template-columns:minmax(250px,.62fr) minmax(0,1.38fr)}
.pc-showcase .control-demo-window{max-width:760px}
.pc-showcase .control-demo-feature:nth-child(even){grid-template-columns:minmax(0,1.38fr) minmax(250px,.62fr)}
.pc-usecases{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pc-usecases article{padding:28px;border:1px solid var(--line-strong);border-radius:16px;background:var(--paper)}
.pc-usecases small{color:var(--brand);font-size:11px;font-weight:700;letter-spacing:.06em}
.pc-usecases h3{margin:9px 0 0;font-size:20px;line-height:1.38;letter-spacing:-.035em}
.pc-usecases p{margin:10px 0 0;color:var(--muted);font-size:14px;line-height:1.75}
.faq-preview{max-width:860px;margin:0 auto}
.faq-preview .faq-list{max-width:none}
.faq-more{display:flex;justify-content:center;margin-top:30px}
.faq-cats{position:sticky;top:76px;z-index:20;padding:14px 0;background:rgba(244,246,250,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.faq-cats .page-tabs{justify-content:center;margin:0}
.faq-page{padding:64px 0 100px}
.faq-group{max-width:860px;margin:0 auto;padding-top:46px;scroll-margin-top:64px}
.faq-group:first-child{padding-top:0}
.faq-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:6px}
.faq-group-head h2{margin:0;font-family:"IBM Plex Sans KR",Pretendard,sans-serif;font-size:clamp(24px,2.4vw,30px);letter-spacing:-.045em}
.faq-group-head a{color:var(--brand);font-size:13px;font-weight:700;white-space:nowrap}
.faq-group .faq-list{max-width:none}
.next-pages{padding:0 0 72px}
.next-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.next-grid a{display:flex;flex-direction:column;gap:6px;padding:24px 26px;border:1px solid var(--line-strong);border-radius:16px;background:var(--paper);transition:transform .2s,border-color .2s}
.next-grid a:hover{transform:translateY(-2px);border-color:var(--brand)}
.next-grid small{color:var(--brand);font-size:11px;font-weight:700;letter-spacing:.06em}
.next-grid b{font-size:18px;letter-spacing:-.03em}
.next-grid span{color:var(--muted);font-size:13px}
.footer-pages{min-width:120px}
.footer-pages nav{display:grid;gap:9px}
.footer-pages a{color:#c3cad6;font-size:13px;font-weight:600}
.footer-pages a:hover{color:#fff}
.footer-grid.has-pages{grid-template-columns:1fr auto auto}
@media(max-width:1080px){.page-hero .hero-grid{grid-template-columns:1fr;gap:46px}.product-split{grid-template-columns:1fr}.pc-showcase .control-demo-feature{gap:34px}}
@media(max-width:840px){.pc-usecases,.next-grid{grid-template-columns:1fr}.footer-grid.has-pages{grid-template-columns:1fr}.pc-showcase .control-demo-feature,.pc-showcase .control-demo-feature:nth-child(even){grid-template-columns:1fr}.together-section{padding:84px 0}}
@media(max-width:640px){.page-hero{padding:58px 0 54px}.page-hero h1{font-size:clamp(36px,11vw,50px)}.page-tabs{gap:6px}.page-tabs a{min-height:36px;padding:0 12px;font-size:12px}.product-body{padding:24px 22px 26px}.together-frame{border-radius:14px}.together-frame>.window-bar>em{display:none}.faq-cats{top:68px}.faq-page{padding:44px 0 72px}.faq-group{scroll-margin-top:48px}}
.page-tabs a[aria-current="true"]{color:#fff;border-color:var(--brand);background:var(--brand)}.page-tabs a[aria-current="true"] small{color:rgba(255,255,255,.75)}
