@charset "utf-8";

@import url(https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap);

/* .th-layout-header (헤더 래퍼: position/top/left/z-index + 루트 width, 미지정 시 100%) */
.th-layout-header {
  position: fixed !important;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
}


/* header-mcp-N1 */
.header-mcp-N1 {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  padding-top: 0;
  padding-bottom: 0;
  font-family: var(--ff-ko2);
  letter-spacing: -0.012em;
  background: rgba(255, 255, 255, 0.78);
  backdrop-filter: saturate(180%) blur(1.4rem);
  border-bottom: 0.1rem solid #ececef
}

.header-mcp-N1 .header-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  width: 100%;
  min-height: 7rem;
  z-index: 100
}

.header-mcp-N1 .header-left {
  display: flex;
  align-items: center;
  gap: 1.1rem;
  flex-shrink: 0
}

.header-mcp-N1 .header-title a {
  display: block;
  height: 2.6rem
}

.header-mcp-N1 .header-title img {
  height: 100%;
  object-fit: contain;
  vertical-align: top;
  transition: filter 0.3s
}

.header-mcp-N1 .header-mcp-N1-badge {
  font-family: var(--ff-en5);
  font-weight: 700;
  font-size: 1.2rem;
  letter-spacing: 0.14em;
  color: #d91f29;
  background: #fcecec;
  padding: 0.4rem 0.9rem;
  border-radius: 0.6rem;
  flex-shrink: 0
}

.header-mcp-N1 .header-center {
  flex: 1;
  display: flex;
  justify-content: center
}

.header-mcp-N1 .header-gnblist {
  display: flex;
  align-items: center;
  gap: 3rem;
  margin: 0;
  padding: 0;
  list-style: none
}

.header-mcp-N1 .header-gnbitem {
  list-style: none
}

.header-mcp-N1 .header-gnblink {
  color: #505050;
  font-weight: 500;
  text-decoration: none;
  transition: color 0.15s
}

.header-mcp-N1 .header-gnblink:hover {
  color: #111114
}

.header-mcp-N1 .header-sublist {
  display: none
}

.header-mcp-N1 .header-right {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  flex-shrink: 0
}

.header-mcp-N1 .header-utils ul {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin: 0;
  padding: 0;
  list-style: none
}

.header-mcp-N1 .header-utils .button {
  list-style: none
}

.header-mcp-N1 .header-utils .allmenu {
  display: none;
  list-style: none
}

.header-mcp-N1 .btn-momenu,
.header-mcp-N1 .btn-allmenu {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
  width: 4rem;
  height: 4rem;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer
}

.header-mcp-N1 .ico-hamburger {
  display: block;
  width: 2.2rem;
  height: 0.2rem;
  background-color: #111114;
  transition: transform 0.3s ease, opacity 0.3s ease
}

.header-mcp-N1 .header-fullmenu {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  overflow-y: auto;
  background-color: #111114
}

.header-mcp-N1 .header-fullmenu.active {
  display: block
}

.header-mcp-N1 .fullmenu-wrapper {
  min-height: 100vh;
  padding: 8rem 4rem 4rem
}

.header-mcp-N1 .fullmenu-title a {
  display: block;
  height: 2.4rem
}

.header-mcp-N1 .fullmenu-title img {
  height: 100%;
  object-fit: contain;
  filter: brightness(0) invert(1)
}

.header-mcp-N1 .fullmenu-gnblist {
  margin: 4rem 0 0;
  padding: 0;
  list-style: none
}

.header-mcp-N1 .fullmenu-gnbitem {
  list-style: none;
  border-bottom: 0.1rem solid rgba(255, 255, 255, 0.12)
}

.header-mcp-N1 .fullmenu-gnblink {
  display: block;
  padding: 2rem 0;
  text-decoration: none;
  color: #ffffff
}

.header-mcp-N1 .fullmenu-sublist {
  display: none
}

.header-mcp-N1 .fullmenu-close {
  position: fixed;
  top: 2.4rem;
  right: 2.4rem;
  width: 4rem;
  height: 4rem;
  border: none;
  background: transparent;
  cursor: pointer
}

.header-mcp-N1 .fullmenu-close::before,
.header-mcp-N1 .fullmenu-close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.4rem;
  height: 0.2rem;
  background: #fff
}

.header-mcp-N1 .fullmenu-close::before {
  transform: translate(-50%, -50%) rotate(45deg)
}

.header-mcp-N1 .fullmenu-close::after {
  transform: translate(-50%, -50%) rotate(-45deg)
}

@media (max-width: 992px) {
  .header-mcp-N1 .header-center {
    display: none
  }

  .header-mcp-N1 .header-utils .allmenu {
    display: block
  }

  .header-mcp-N1 .btn-momenu {
    display: flex
  }

  .header-mcp-N1 {}
}

@media (min-width: 993px) {
  .header-mcp-N1 .btn-momenu {
    display: none !important
  }
}
/* hero-mcp-N1 */

.hero-mcp-N1 {
  position: relative;
  overflow: hidden;
  padding-top: 9.6rem;
  padding-bottom: 7.6rem;
  background: linear-gradient(180deg, #fff 0%, #faf8f5 100%);
  font-family: var(--ff-ko2);
  letter-spacing: -0.012em
}

.hero-mcp-N1 .h1,
.hero-mcp-N1 .p1,
.hero-mcp-N1 .p3 {
  font-family: inherit
}

.hero-mcp-N1::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: radial-gradient(70rem 38rem at 78% -8%, rgba(217, 31, 41, 0.07), transparent 60%);
  pointer-events: none
}

.hero-mcp-N1::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 0.5;
  background-image: linear-gradient(#ececef 0.1rem, transparent 0.1rem), linear-gradient(90deg, #ececef 0.1rem, transparent 0.1rem);
  background-size: 6.4rem 6.4rem;
  mask-image: radial-gradient(64rem 44rem at 50% 30%, #000, transparent 75%);
  pointer-events: none
}

.hero-mcp-N1 .contents-inner {
  position: relative;
  z-index: 2
}

.hero-mcp-N1-mouse-glow {
  position: absolute;
  width: 42rem;
  height: 42rem;
  margin-left: -21rem;
  margin-top: -21rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(217, 31, 41, 0.18) 0%, rgba(217, 31, 41, 0.06) 40%, transparent 70%);
  pointer-events: none;
  z-index: 1;
  mix-blend-mode: screen;
  opacity: 0;
  transition: opacity 0.4s
}

.hero-mcp-N1.is-active .hero-mcp-N1-mouse-glow {
  opacity: 1
}

.hero-mcp-N1-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 5.6rem;
  align-items: center
}

.hero-mcp-N1-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.3rem;
  font-weight: 600;
  color: #505050;
  background: #fff;
  border: 0.1rem solid #dddfe4;
  border-radius: 999rem;
  padding: 0.6rem 1.4rem 0.6rem 0.8rem;
  margin-bottom: 2.6rem
}

.hero-mcp-N1-pip {
  display: inline-flex;
  align-items: center;
  font-family: var(--ff-en5);
  font-weight: 700;
  font-size: 1.1rem;
  letter-spacing: 0.1em;
  color: #d91f29;
  background: #fcecec;
  padding: 0.3rem 0.9rem;
  border-radius: 999rem;
  text-transform: uppercase
}

.hero-mcp-N1-title {
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -0.04em;
  margin-bottom: 2.4rem
}

.hero-mcp-N1-hl {
  color: #d91f29
}

.hero-mcp-N1-lead {
  color: #505050;
  line-height: 1.75;
  max-width: 52rem;
  margin-bottom: 3.4rem
}

.hero-mcp-N1-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
  align-items: center;
  margin-bottom: 4.6rem
}

.hero-mcp-N1-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.9rem;
  font-weight: 600;
  font-size: 1.5rem;
  padding: 1.3rem 2.2rem;
  border-radius: 1.1rem;
  border: 0.1rem solid transparent;
  transition: 0.16s
}

.hero-mcp-N1-btn-primary {
  background: #d91f29;
  color: #fff;
  box-shadow: 0 1.2rem 2.8rem -1.4rem rgba(217, 31, 41, 0.65)
}

.hero-mcp-N1-btn-primary:hover {
  background: #b3151e;
  transform: translateY(-0.1rem);
  color: #fff
}

.hero-mcp-N1-btn-ghost {
  background: #fff;
  border-color: #dddfe4;
  color: #111114
}

.hero-mcp-N1-btn-ghost:hover {
  border-color: #111114
}

.hero-mcp-N1-ico-arrow {
  display: block;
  width: 1.7rem;
  height: 1.7rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") no-repeat center/contain
}

.hero-mcp-N1-btn-ghost .hero-mcp-N1-ico-arrow {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111114' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E")
}

.hero-mcp-N1-cstrip {
  display: flex;
  align-items: center;
  gap: 1.4rem;
  flex-wrap: wrap
}

.hero-mcp-N1-cl {
  color: #7a7d86;
  font-weight: 500
}

.hero-mcp-N1-clogos {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap
}

.hero-mcp-N1-client {
  display: inline-flex;
  align-items: center;
  gap: 0.9rem;
  background: #fff;
  border: 0.1rem solid #ececef;
  border-radius: 1rem;
  padding: 0.7rem 1.3rem 0.7rem 0.9rem;
  font-size: 1.35rem;
  font-weight: 600;
  color: #505050;
  white-space: nowrap;
  flex-shrink: 0
}

.hero-mcp-N1-client-img {
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 0.6rem;
  object-fit: cover;
  flex-shrink: 0;
  display: block
}

.hero-mcp-N1-guide {
  padding: 0.7rem 1.6rem;
  font-size: 1.35rem;
  flex-shrink: 0
}

.hero-mcp-N1-hcard {
  background: #fff;
  border: 0.1rem solid #ececef;
  border-radius: 1.8rem;
  overflow: hidden;
  box-shadow: 0 3.2rem 7rem -4.2rem rgba(20, 21, 30, 0.4)
}

.hero-mcp-N1-hcard-top {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 1.4rem 1.8rem;
  border-bottom: 0.1rem solid #ececef;
  background: #faf8f5
}

.hero-mcp-N1-dot {
  width: 1.1rem;
  height: 1.1rem;
  border-radius: 50%;
  display: inline-block
}

.hero-mcp-N1-dot-red {
  background: #ff5f57
}

.hero-mcp-N1-dot-yellow {
  background: #febc2e
}

.hero-mcp-N1-dot-green {
  background: #28c840
}

.hero-mcp-N1-hcard-lab {
  margin-left: 0.8rem;
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 1.2rem;
  color: #7a7d86
}

.hero-mcp-N1-hcard-body {
  padding: 2.2rem 2rem
}

.hero-mcp-N1-hcard-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.7rem
}

.hero-mcp-N1-hcard-k {
  font-size: 1.2rem;
  font-weight: 700;
  color: #7a7d86;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-family: var(--ff-en5)
}

.hero-mcp-N1-hcard-st {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 1.25rem;
  font-weight: 600;
  color: #1c8a52
}

.hero-mcp-N1-hcard-dot {
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 50%;
  background: #1fb567;
  box-shadow: 0 0 0 0.3rem rgba(31, 181, 103, 0.18)
}

.hero-mcp-N1-urlbox {
  display: flex;
  align-items: stretch;
  border: 0.1rem solid #dddfe4;
  border-radius: 1.1rem;
  overflow: hidden;
  background: #faf8f5
}

.hero-mcp-N1-server-url {
  flex: 1;
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 1.35rem;
  font-weight: 500;
  color: #111114;
  padding: 1.3rem 1.4rem;
  overflow-x: auto;
  white-space: nowrap
}

.hero-mcp-N1-copy-btn {
  border: none;
  border-left: 0.1rem solid #dddfe4;
  background: #fff;
  cursor: pointer;
  padding: 0 1.5rem;
  color: #505050;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 1.3rem;
  font-weight: 600;
  transition: 0.15s
}

.hero-mcp-N1-copy-btn:hover,
.hero-mcp-N1-copy-btn.is-ok {
  background: #d91f29;
  color: #fff;
  border-color: #d91f29
}

.hero-mcp-N1-ico-copy {
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  flex-shrink: 0;
  background: url(../icons/ico_copy_gray.svg) no-repeat center/contain
}

.hero-mcp-N1-copy-btn:hover .hero-mcp-N1-ico-copy {
  background-image: url(../icons/ico_copy_white.svg)
}

.hero-mcp-N1-meta {
  display: flex;
  gap: 2.2rem;
  margin-top: 1.8rem;
  padding-top: 1.8rem;
  border-top: 0.1rem solid #ececef
}

.hero-mcp-N1-meta div {
  flex: 1
}

.hero-mcp-N1-meta-n {
  font-family: var(--ff-en5);
  font-weight: 800;
  font-size: 2.4rem;
  color: #111114;
  line-height: 1
}

.hero-mcp-N1-meta-l {
  color: #7a7d86;
  margin-top: 0.5rem
}

@media (max-width: 900px) {
  .hero-mcp-N1-grid {
    grid-template-columns: 1fr;
    gap: 4.4rem
  }
}
/* connect-mcp-N1 */
.connect-mcp-N1 {
  position: relative;
  overflow: hidden;
  padding-top: 8.8rem;
  padding-bottom: 8.8rem;
  background: #faf8f5;
  border-top: 0.1rem solid #ececef;
  border-bottom: 0.1rem solid #ececef;
  font-family: var(--ff-ko2);
  letter-spacing: -0.012em
}

.connect-mcp-N1 .h2,
.connect-mcp-N1 .p1,
.connect-mcp-N1 .p2,
.connect-mcp-N1 .p3 {
  font-family: inherit
}

.connect-mcp-N1-head {
  max-width: 68rem;
  margin: 0 auto 5.2rem;
  text-align: center
}

.connect-mcp-N1-eyebrow {
  font-family: var(--ff-en5);
  font-weight: 700;
  font-size: 1.2rem;
  letter-spacing: 0.22em;
  color: #d91f29;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 1.4rem
}

.connect-mcp-N1-title {
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1.18;
  margin-bottom: 1.4rem
}

.connect-mcp-N1-desc {
  color: #505050;
  line-height: 1.7
}

.connect-mcp-N1-card {
  max-width: 96rem;
  margin: 0 auto;
  background: #fff;
  border: 0.1rem solid #ececef;
  border-radius: 2.2rem;
  overflow: hidden;
  box-shadow: 0 3.6rem 8rem -5rem rgba(20, 21, 30, 0.36)
}

.connect-mcp-N1-tabs {
  display: flex;
  background: #f3f1ec;
  padding: 0.7rem;
  gap: 0.6rem
}

.connect-mcp-N1-tab {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 1.4rem;
  cursor: pointer;
  border: none;
  background: transparent;
  border-radius: 1.3rem;
  font-family: inherit;
  font-size: 1.55rem;
  font-weight: 600;
  color: #7a7d86;
  transition: 0.16s;
  min-height: auto;
  height: auto;
  line-height: 1.2;
  white-space: nowrap
}

.connect-mcp-N1-tab-img {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 0.7rem;
  object-fit: cover;
  flex-shrink: 0;
  display: block
}

.connect-mcp-N1-tab.is-active {
  background: #fff;
  color: #111114;
  box-shadow: 0 0.6rem 1.8rem -1rem rgba(20, 21, 30, 0.3)
}

.connect-mcp-N1-panel {
  display: none;
  padding: 4rem;
  grid-template-columns: 1fr 0.92fr;
  gap: 4.2rem
}

.connect-mcp-N1-panel.is-active {
  display: grid
}

.connect-mcp-N1-steps {
  list-style: none
}

.connect-mcp-N1-steps li {
  position: relative;
  padding: 0 0 2.4rem 4.6rem
}

.connect-mcp-N1-steps li:last-child {
  padding-bottom: 0
}

.connect-mcp-N1-num {
  position: absolute;
  left: 0;
  top: -0.1rem;
  width: 3rem;
  height: 3rem;
  border-radius: 0.9rem;
  background: #111114;
  color: #fff;
  font-family: var(--ff-en5);
  font-weight: 700;
  font-size: 1.4rem;
  display: flex;
  align-items: center;
  justify-content: center
}

.connect-mcp-N1-steps li::after {
  content: "";
  position: absolute;
  left: 1.45rem;
  top: 3.4rem;
  bottom: 0.6rem;
  width: 0.15rem;
  background: #dddfe4
}

.connect-mcp-N1-steps li:last-child::after {
  display: none
}

.connect-mcp-N1-st-t {
  font-weight: 700;
  font-size: 1.55rem;
  margin-bottom: 0.3rem;
  letter-spacing: -0.02em
}

.connect-mcp-N1-st-d {
  color: #505050;
  line-height: 1.62
}

.connect-mcp-N1-st-d kbd {
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 1.2rem;
  background: #f3f1ec;
  border: 0.1rem solid #dddfe4;
  border-radius: 0.5rem;
  padding: 0.15rem 0.7rem;
  color: #111114
}

.connect-mcp-N1-em {
  color: #d91f29;
  font-weight: 600
}

.connect-mcp-N1-side {
  align-self: start
}

.connect-mcp-N1-dl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  width: 100%;
  background: #111114;
  color: #fff;
  border-radius: 1.3rem;
  padding: 1.6rem;
  font-size: 1.55rem;
  font-weight: 700;
  transition: 0.16s
}

.connect-mcp-N1-dl:hover {
  background: #d91f29;
  transform: translateY(-0.1rem)
}

.connect-mcp-N1-dl-img {
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 0.6rem;
  object-fit: cover;
  flex-shrink: 0;
  display: block
}

.connect-mcp-N1-or {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin: 1.8rem 0;
  color: #a4a7b0;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0.08em
}

.connect-mcp-N1-or::before,
.connect-mcp-N1-or::after {
  content: "";
  flex: 1;
  height: 0.1rem;
  background: #ececef
}

.connect-mcp-N1-code-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #0f1116;
  border-radius: 1.2rem 1.2rem 0 0;
  padding: 1.1rem 1.4rem
}

.connect-mcp-N1-fn {
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 1.2rem;
  color: #9aa0b2
}

.connect-mcp-N1-code-copy {
  background: transparent;
  border: 0.1rem solid #2c3040;
  color: #cdd1dd;
  cursor: pointer;
  font-size: 1.15rem;
  font-weight: 600;
  padding: 0.5rem 1rem;
  border-radius: 0.7rem;
  transition: 0.15s
}

.connect-mcp-N1-code-copy.is-ok {
  color: #74e2a3;
  border-color: #2c6647
}

.connect-mcp-N1-pre {
  margin: 0;
  background: #16181f;
  border-radius: 0 0 1.2rem 1.2rem;
  padding: 1.6rem 1.8rem;
  overflow: visible;
  font-size: inherit
}

.connect-mcp-N1-code {
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 1.25rem;
  line-height: 1.75;
  color: #e7e9f0;
  white-space: pre
}

.connect-mcp-N1-hint {
  margin-top: 1.4rem;
  color: #7a7d86;
  line-height: 1.6
}

.connect-mcp-N1-hint-spaced {
  margin-top: 1.8rem
}

.connect-mcp-N1-note {
  max-width: 96rem;
  margin: 2.4rem auto 0;
  display: flex;
  gap: 1.3rem;
  align-items: flex-start;
  background: #fcecec;
  border: 0.1rem solid #f4d4d3;
  border-radius: 1.4rem;
  padding: 1.7rem 2rem;
  color: #505050;
  line-height: 1.62
}

.connect-mcp-N1-ni {
  flex: 0 0 auto;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 0.8rem;
  background: #d91f29;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.4rem
}

@media (max-width: 780px) {
  .connect-mcp-N1-panel.is-active {
    grid-template-columns: 1fr;
    gap: 3rem
  }

  .connect-mcp-N1-panel {
    padding: 2.8rem
  }
}
/* features-mcp-N1 */
.features-mcp-N1 {
  position: relative;
  overflow: hidden;
  padding-top: 8.8rem;
  padding-bottom: 8.8rem;
  background: #fff;
  font-family: var(--ff-ko2);
  letter-spacing: -0.012em
}

.features-mcp-N1 .h2,
.features-mcp-N1 .h5,
.features-mcp-N1 .p1,
.features-mcp-N1 .p3 {
  font-family: inherit
}

.features-mcp-N1-head {
  max-width: 68rem;
  margin: 0 auto 5.2rem;
  text-align: center
}

.features-mcp-N1-eyebrow {
  font-family: var(--ff-en5);
  font-weight: 700;
  font-size: 1.2rem;
  letter-spacing: 0.22em;
  color: #d91f29;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 1.4rem
}

.features-mcp-N1-title {
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1.18;
  margin-bottom: 1.4rem
}

.features-mcp-N1-desc {
  color: #505050;
  line-height: 1.7
}

.features-mcp-N1-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem
}

.features-mcp-N1-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 0.1rem solid #ececef;
  border-radius: 1.8rem;
  padding: 2.6rem 2.4rem;
  transition: transform 0.18s, box-shadow 0.18s, border-color 0.18s
}

.features-mcp-N1-card:hover {
  transform: translateY(-0.4rem);
  box-shadow: 0 2.6rem 5rem -3.4rem rgba(20, 21, 30, 0.3);
  border-color: #dddfe4
}

.features-mcp-N1-ic {
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 1.2rem;
  background: #f3f1ec;
  color: #111114;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.6rem;
  transition: background 0.18s, color 0.18s
}

.features-mcp-N1-card:hover .features-mcp-N1-ic {
  background: #fcecec;
  color: #d91f29
}

.features-mcp-N1-svg {
  display: block;
  width: 2.2rem;
  height: 2.2rem;
  background: currentColor;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center
}

.features-mcp-N1-svg-book {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M4 19.5A2.5 2.5 0 0 1 6.5 17H20'/%3E%3Cpath d='M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z'/%3E%3C/svg%3E")
}

.features-mcp-N1-svg-box {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M3 7l9-4 9 4-9 4-9-4z'/%3E%3Cpath d='M3 7v10l9 4 9-4V7'/%3E%3Cpath d='M12 11v10'/%3E%3C/svg%3E")
}

.features-mcp-N1-svg-palette {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Ccircle cx='13.5' cy='6.5' r='2.5'/%3E%3Ccircle cx='17.5' cy='10.5' r='2.5'/%3E%3Ccircle cx='8.5' cy='7.5' r='2.5'/%3E%3Ccircle cx='6.5' cy='12.5' r='2.5'/%3E%3Cpath d='M12 2a10 10 0 0 0 0 20 2 2 0 0 0 2-2 2 2 0 0 1 2-2h2a4 4 0 0 0 4-4 10 10 0 0 0-10-10z'/%3E%3C/svg%3E")
}

.features-mcp-N1-svg-layout {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 9h18M3 15h18'/%3E%3C/svg%3E")
}

.features-mcp-N1-svg-video {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Crect x='2' y='6' width='14' height='12' rx='2'/%3E%3Cpath d='M16 9l5-3v12l-5-3'/%3E%3C/svg%3E")
}

.features-mcp-N1-svg-board {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Cpath d='M7 8h10M7 12h10M7 16h6'/%3E%3C/svg%3E")
}

.features-mcp-N1-svg-form {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Crect x='4' y='3' width='16' height='18' rx='2'/%3E%3Cpath d='M8 8h8M8 12h8M8 16h4'/%3E%3C/svg%3E")
}

.features-mcp-N1-svg-image {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Ccircle cx='9' cy='9' r='2'/%3E%3Cpath d='m21 15-5-5L5 21'/%3E%3C/svg%3E")
}

.features-mcp-N1-svg-search {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E")
}

.features-mcp-N1-name {
  font-weight: 700;
  margin-bottom: 0.7rem
}

.features-mcp-N1-text {
  color: #505050;
  line-height: 1.6;
  margin-bottom: 1.6rem
}

.features-mcp-N1-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-bottom: 1.8rem
}

.features-mcp-N1-chip {
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 1.15rem;
  font-weight: 500;
  color: #333850;
  background: #faf8f5;
  border: 0.1rem solid #ececef;
  border-radius: 0.6rem;
  padding: 0.3rem 0.8rem
}

.features-mcp-N1-ex {
  margin-top: auto;
  border-top: 0.1rem dashed #dddfe4;
  padding-top: 1.5rem
}

.features-mcp-N1-exl {
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #d91f29;
  font-family: var(--ff-en5);
  margin-bottom: 0.9rem
}

.features-mcp-N1-ex ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.8rem
}

.features-mcp-N1-ex li {
  position: relative;
  padding-left: 1.8rem;
  font-size: 1.35rem;
  color: #111114;
  line-height: 1.5;
  font-weight: 500
}

.features-mcp-N1-ex li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.8rem;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background: #d91f29
}

@media (max-width: 880px) {
  .features-mcp-N1-grid {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media (max-width: 560px) {
  .features-mcp-N1-grid {
    grid-template-columns: 1fr
  }
}
/* tools-mcp-N1 */
.tools-mcp-N1 {
  position: relative;
  overflow: hidden;
  padding-top: 8.8rem;
  padding-bottom: 8.8rem;
  background: #faf8f5;
  border-top: 0.1rem solid #ececef;
  border-bottom: 0.1rem solid #ececef;
  font-family: var(--ff-ko2);
  letter-spacing: -0.012em
}

.tools-mcp-N1 .h2,
.tools-mcp-N1 .h5,
.tools-mcp-N1 .p1 {
  font-family: inherit
}

.tools-mcp-N1-head {
  max-width: 68rem;
  margin: 0 auto 5.2rem;
  text-align: center
}

.tools-mcp-N1-eyebrow {
  font-family: var(--ff-en5);
  font-weight: 700;
  font-size: 1.2rem;
  letter-spacing: 0.22em;
  color: #d91f29;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 1.4rem
}

.tools-mcp-N1-title {
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1.18;
  margin-bottom: 1.4rem
}

.tools-mcp-N1-desc {
  color: #505050;
  line-height: 1.7
}

.tools-mcp-N1-box {
  max-width: 96rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem
}

.tools-mcp-N1-tbox {
  background: #fff;
  border: 0.1rem solid #ececef;
  border-radius: 1.8rem;
  overflow: hidden
}

.tools-mcp-N1-tbox-title {
  display: flex;
  align-items: center;
  gap: 1.1rem;
  padding: 1.8rem 2.2rem;
  border-bottom: 0.1rem solid #ececef;
  font-weight: 700
}

.tools-mcp-N1-cnt {
  margin-left: auto;
  font-family: var(--ff-en5);
  font-weight: 700;
  font-size: 1.3rem;
  color: #a4a7b0
}

.tools-mcp-N1-badge {
  font-size: 1.1rem;
  font-weight: 700;
  padding: 0.3rem 0.9rem;
  border-radius: 999rem;
  letter-spacing: 0.02em
}

.tools-mcp-N1-badge-read {
  background: #e9f0ff;
  color: #2563d9
}

.tools-mcp-N1-badge-write {
  background: #e3f5ea;
  color: #1c8a52
}

.tools-mcp-N1-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  padding: 2rem 2.2rem
}

.tools-mcp-N1-chip {
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 1.25rem;
  color: #333850;
  background: #faf8f5;
  border: 0.1rem solid #dddfe4;
  border-radius: 0.8rem;
  padding: 0.6rem 1.1rem
}

@media (max-width: 680px) {
  .tools-mcp-N1-box {
    grid-template-columns: 1fr
  }
}
/* clients-mcp-N1 */
.clients-mcp-N1 {
  position: relative;
  overflow: hidden;
  padding-top: 8.8rem;
  padding-bottom: 8.8rem;
  background: #111114;
  font-family: var(--ff-ko2);
  letter-spacing: -0.012em
}

.clients-mcp-N1 .h2,
.clients-mcp-N1 .h4,
.clients-mcp-N1 .p1,
.clients-mcp-N1 .p2 {
  font-family: inherit
}

.clients-mcp-N1-glow {
  position: absolute;
  top: -20rem;
  left: 50%;
  width: 80rem;
  height: 40rem;
  margin-left: -40rem;
  background: radial-gradient(ellipse, rgba(217, 31, 41, 0.22) 0%, transparent 70%);
  pointer-events: none
}

.clients-mcp-N1 .contents-inner {
  position: relative;
  z-index: 1
}

.clients-mcp-N1-head {
  max-width: 68rem;
  margin: 0 auto 5.2rem;
  text-align: center
}

.clients-mcp-N1-eyebrow {
  font-family: var(--ff-en5);
  font-weight: 700;
  font-size: 1.2rem;
  letter-spacing: 0.22em;
  color: #d91f29;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 1.4rem
}

.clients-mcp-N1-title {
  color: #fff;
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1.18;
  margin-bottom: 1.4rem
}

.clients-mcp-N1-desc {
  color: #a4a7b0;
  line-height: 1.7
}

.clients-mcp-N1-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem
}

.clients-mcp-N1-card {
  display: flex;
  flex-direction: column;
  background: #1a1a1f;
  border: 0.1rem solid #2a2a32;
  border-radius: 1.8rem;
  padding: 2.8rem 2.4rem;
  transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s
}

.clients-mcp-N1-card:hover {
  transform: translateY(-0.4rem);
  border-color: #3a3a44;
  box-shadow: 0 2rem 4rem -2rem rgba(217, 31, 41, 0.25)
}

.clients-mcp-N1-icon {
  display: block;
  width: 4.8rem;
  height: 4.8rem;
  margin-bottom: 1.8rem;
  border-radius: 1.2rem;
  object-fit: cover
}

.clients-mcp-N1-name {
  color: #fff;
  font-weight: 700;
  margin-bottom: 1rem
}

.clients-mcp-N1-text {
  color: #a4a7b0;
  line-height: 1.65;
  margin-bottom: 2.4rem;
  flex: 1
}

.clients-mcp-N1-links {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: auto
}

.clients-mcp-N1-link {
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  padding: 1rem 1.6rem;
  font-size: 1.4rem;
  font-weight: 600;
  color: #fff;
  border: 0.1rem solid rgba(255, 255, 255, 0.35);
  border-radius: 0.8rem;
  transition: border-color 0.15s, background 0.15s
}

.clients-mcp-N1-link:hover {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.7);
  background: rgba(255, 255, 255, 0.06)
}

.clients-mcp-N1-ext {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  flex-shrink: 0;
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxwYXRoIGQ9Ik05LjY3IDZWOEgxNC4yNTZMNiAxNi4yNTZMNy40MTQgMTcuNjdMMTUuNjcgOS40MTRWMTRIMTcuNjdWNkg5LjY3WiIgZmlsbD0id2hpdGUiLz4NCjwvc3ZnPg0K") no-repeat center/contain
}

@media (max-width: 880px) {
  .clients-mcp-N1-grid {
    grid-template-columns: 1fr
  }
}
/* footer-mcp-N1 */
.footer-mcp-N1 {
  background: #23263a;
  color: #cbcdd8;
  padding-top: 6rem;
  padding-bottom: 4.4rem;
  font-family: var(--ff-ko2);
  letter-spacing: -0.012em
}

.footer-mcp-N1 .p3 {
  font-family: inherit
}

.footer-mcp-N1 .footer-top {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.4rem;
  text-align: center;
  margin-bottom: 2.4rem
}

.footer-mcp-N1 .footer-logo img {
  height: 2.4rem;
  filter: brightness(0) invert(1);
  opacity: 0.95
}

.footer-mcp-N1-links {
  display: flex;
  gap: 2.6rem;
  flex-wrap: wrap;
  justify-content: center
}

.footer-mcp-N1-links a {
  color: #cbcdd8;
  font-size: 1.45rem;
  transition: color 0.15s
}

.footer-mcp-N1-links a:hover {
  color: #fff
}

.footer-mcp-N1 .footer-bottom {
  text-align: center
}

.footer-mcp-N1 .footer-txt {
  color: #787c90
}

.footer-mcp-N1 .footer-txt a {
  color: #fff;
  opacity: 0.8
}