:root{
  /* Base — near-black, cool cast */
  --bg:#07090E;--bg-1:#0B0E15;--bg-2:#11151E;--surf:#161B26;--surf-2:#1C222F;
  /* Ink — emphasis comes from brightness, not hue */
  --fg:#EDEFF4;--fg-2:#C2C8D4;--fg-3:#8B93A3;--fg-4:#787F8E;--fg-5:#4B525E;
  --line:#1C2129;--line-2:#282E38;
  /* Single signal accent */
  --blue:#5C7CFA;--blue-2:#8DA3FC;--blue-dim:rgba(92,124,250,.13);--blue-glow:rgba(92,124,250,.32);
  /* Emphasis = near-white (primary CTAs, key figures) */
  --orange:#EDEFF4;--orange-2:#EDEFF4;--orange-dim:rgba(237,239,244,.07);
  --cyan:#5EC8D8;--violet:#9B8CFA;--mint:#5FCFA4;
  /* Type */
  --sans:'Pretendard','Pretendard Variable',-apple-system,'Apple SD Gothic Neo',system-ui,sans-serif;
  --mono:'JetBrains Mono','D2Coding',ui-monospace,monospace;
  --r1:6px;--r2:10px;--r3:16px;--r4:24px;--rp:999px;
  --e:cubic-bezier(.22,1,.36,1);
}
[data-accent="cyan"]{--blue:#3FC6D6;--blue-2:#7FDCE7;--blue-dim:rgba(63,198,214,.13);--blue-glow:rgba(63,198,214,.32)}
[data-accent="violet"]{--blue:#8B7CF6;--blue-2:#B3A6FA;--blue-dim:rgba(139,124,246,.13);--blue-glow:rgba(139,124,246,.32)}
[data-accent="slate"]{--blue:#93A0B8;--blue-2:#BAC4D4;--blue-dim:rgba(147,160,184,.13);--blue-glow:rgba(147,160,184,.30)}
[data-mode="light"]{--bg:#FAFAFC;--bg-1:#F3F4F8;--bg-2:#ECEEF4;--surf:#FFFFFF;--surf-2:#F6F7FB;--fg:#080A10;--fg-2:#2A2F3C;--fg-3:#585F72;--fg-4:#666D7D;--fg-5:#8A90A0;--line:#E3E6EE;--line-2:#D0D5E1;--orange:#0F1420;--orange-2:#0F1420;--orange-dim:rgba(15,20,32,.06)}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
@media(max-width:1039px){html{scroll-padding-top:76px}}
body{margin:0;word-break:keep-all;overflow-wrap:break-word;font-family:var(--sans);background:var(--bg);color:var(--fg);line-height:1.55;letter-spacing:-.008em;-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","tnum";transition:background-color .3s var(--e),color .3s var(--e)}
img{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:rgba(92,124,250,.18)}
a:hover{color:var(--blue-2)}

/* Keyboard focus — visible on every interactive element */
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}
.btn:focus-visible{outline-offset:3px}

/* Skip to content */
.skip{position:fixed;top:10px;left:50%;transform:translate(-50%,-160%);z-index:200;padding:11px 20px;background:var(--fg);color:var(--bg);border-radius:var(--rp);font-size:13.5px;font-weight:600;transition:transform .2s var(--e)}
.skip:focus{transform:translate(-50%,0);color:var(--bg)}
::selection{background:var(--blue);color:#fff}

.wrap{width:100%;max-width:1280px;margin:0 auto;padding:0 22px}
@media(min-width:900px){.wrap{padding:0 44px}}
.sec{padding:88px 0;position:relative}
@media(min-width:900px){.sec{padding:132px 0}}

/* Section header */
.shead{margin-bottom:56px}
@media(min-width:900px){.shead{display:grid;grid-template-columns:200px 1fr;gap:64px;margin-bottom:80px;align-items:start}}
.slab{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--fg-4);margin-bottom:16px}
@media(min-width:900px){.slab{margin-bottom:0;padding-top:10px}}
.slab::before{content:'';width:24px;height:1px;background:var(--blue)}
.stitle{font-size:clamp(30px,4.2vw,54px);font-weight:700;letter-spacing:-.04em;line-height:1.06;margin:0;text-wrap:balance}
.stitle em{font-style:normal;color:var(--blue)}
.stitle .o{color:var(--blue-2)}
.slead{font-size:clamp(15px,1.4vw,17.5px);line-height:1.65;color:var(--fg-3);margin:20px 0 0;max-width:58ch;text-wrap:pretty}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 22px;border-radius:var(--rp);font-size:14px;font-weight:600;white-space:nowrap;border:1px solid transparent;transition:all .22s var(--e)}
.b-pri{background:var(--fg);color:var(--bg)}
.b-pri:hover,.b-pri:focus-visible{color:var(--bg);background:#FFFFFF;transform:translateY(-2px);box-shadow:0 12px 32px -12px rgba(237,239,244,.28)}
[data-mode="light"] .b-pri:hover,[data-mode="light"] .b-pri:focus-visible{background:#000000;color:#FFFFFF}
.b-sec{background:var(--blue);color:#fff}
.b-sec:hover,.b-sec:focus-visible{color:#fff;transform:translateY(-2px);box-shadow:0 10px 30px -10px var(--blue-glow)}
.b-out{border-color:var(--line-2);color:var(--fg)}
.b-out:hover,.b-out:focus-visible{color:var(--fg);border-color:var(--fg-3);background:var(--surf)}
.b-arr svg{transition:transform .22s var(--e)}
.b-arr:hover svg{transform:translate(3px,-3px)}

/* Reveal */
.rv{opacity:0;transform:translateY(18px);transition:opacity .8s var(--e),transform .8s var(--e);transition-delay:var(--d,0ms)}
.rv.in{opacity:1;transform:none}

/* Chips / tags */
.tag{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:var(--r1);background:var(--blue-dim);color:var(--blue-2)}
.tag-o{background:var(--orange-dim);color:var(--fg-2)}

@keyframes mq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes puls{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.5)}}
@keyframes dash{to{stroke-dashoffset:-1000}}
@keyframes flt{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important}}
