@font-face {
  font-family: "Source Han Serif SC VF";
  src: url("assets/fonts/SourceHanSerifSC-Portfolio.woff2") format("woff2");
  font-style: normal;
  font-weight: 250 900;
  font-display: swap;
}

:root {
  --section-rule: rgba(34, 30, 24, .15);
  --section-gap: clamp(88px, 12vh, 150px);
  --page-pad: clamp(28px, 6vw, 100px);
  --warm-ink: #292722;
  --warm-white: #f4efe8;
}

[hidden] { display: none !important; }
html:not(.is-kimi-deep) .kimi-only { display: none !important; }
html.is-kimi-deep .main-only,
html.is-kimi-deep .hero,
html.is-kimi-deep #about,
html.is-kimi-deep #amap,
html.is-kimi-deep #oula,
html.is-kimi-deep #oula-natal,
html.is-kimi-deep #atlas { display: none !important; }

.kimi-overview {
  --kimi-surface: #f5f3ee;
  --kimi-panel: #faf8f3;
  --kimi-ink: #1d1b16;
  --kimi-accent: #da7756;
  --kimi-muted: #777168;
  --kimi-line: rgba(29, 27, 22, .14);
  position: relative;
  min-height: 100svh;
  padding: clamp(86px, 10vh, 118px) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(340px, .76fr) minmax(640px, 1.24fr);
  align-items: center;
  gap: clamp(42px, 6vw, 96px);
  overflow: hidden;
  border-top: 1px solid var(--section-rule);
  color: var(--kimi-ink);
  background: var(--kimi-surface);
  font-family: "Source Han Serif SC VF", "Noto Serif SC", serif;
}
.kimi-overview:before {
  content: ""; position: absolute; inset: 0; opacity: .42; pointer-events: none;
  background-image: linear-gradient(rgba(55,48,38,.035) 1px,transparent 1px), linear-gradient(90deg,rgba(55,48,38,.035) 1px,transparent 1px);
  background-size: 30px 30px; mask-image: linear-gradient(90deg,#000,transparent 90%);
}
.kimi-overview-copy,.kimi-overview-product{position:relative;z-index:1}.kimi-overview-copy>p:first-child{margin:0 0 20px;color:var(--kimi-accent);font-size:11px;font-weight:650;letter-spacing:.14em}
.kimi-overview-copy h2{margin:0;font:520 clamp(64px,7vw,108px)/1.05 "Source Han Serif SC VF","Noto Serif SC",serif}.kimi-overview-copy>p:not(:first-child){max-width:520px;margin:20px 0;color:var(--kimi-muted);font:480 14px/1.85 "Source Han Serif SC VF","Noto Serif SC",serif}.kimi-overview-copy .kimi-overview-role{margin:18px 0 0;color:var(--kimi-ink);font-size:clamp(20px,2vw,28px);font-weight:560}
.kimi-overview-facts{display:grid;border-top:1px solid var(--kimi-line)}.kimi-overview-facts span{padding:13px 0;border-bottom:1px solid var(--kimi-line);font-weight:620}
.kimi-overview-copy>a{display:inline-flex;align-items:center;gap:42px;margin-top:30px;padding:14px 0;border-bottom:1px solid var(--kimi-accent);color:var(--kimi-accent);font-weight:650}.kimi-overview-copy>a span{transition:transform .3s var(--ease)}.kimi-overview-copy>a:hover span{transform:translateX(6px)}
.kimi-overview-product{height:min(68vh,650px);min-height:540px;border:1px solid var(--kimi-line);border-radius:4px;background:var(--kimi-panel);box-shadow:0 24px 64px rgba(54,44,33,.07);overflow:hidden}
.kimi-overview-product:after{content:"";position:absolute;inset:76px 0 0;pointer-events:none;opacity:.48;background-image:linear-gradient(rgba(29,27,22,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(29,27,22,.035) 1px,transparent 1px);background-size:32px 32px}
.kimi-overview-product>header{position:relative;z-index:3;height:76px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--kimi-line);background:rgba(250,248,243,.96);color:var(--kimi-ink)}.kimi-overview-product>header>div{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:10px}.kimi-overview-product>header i{grid-row:1 / 3;width:8px;height:8px;border-radius:50%;background:var(--kimi-accent);box-shadow:0 0 0 5px rgba(218,119,86,.10)}.kimi-overview-product>header b{font:620 15px "Source Han Serif SC VF","Noto Serif SC",serif}.kimi-overview-product>header small{margin-top:2px;color:var(--kimi-muted);font-size:8px}
.kimi-overview-product>header nav{height:100%;display:flex;gap:4px}.kimi-overview-product>header button{position:relative;min-width:78px;padding:18px 10px 14px;border:0;background:transparent;color:var(--kimi-muted);font:600 10px "Source Han Serif SC VF","Noto Serif SC",serif;text-align:left}.kimi-overview-product>header button:before{content:attr(data-kimi-order);display:block;margin-bottom:4px;color:#a39c92;font:500 8px/1 "SFMono-Regular",ui-monospace,Menlo,monospace}.kimi-overview-product>header button:after{content:"";position:absolute;left:10px;bottom:0;width:0;height:2px;background:var(--kimi-accent);transition:width .28s var(--ease)}.kimi-overview-product>header button:hover,.kimi-overview-product>header button:focus-visible,.kimi-overview-product>header button.is-active{color:var(--kimi-ink)}.kimi-overview-product>header button.is-active:before{color:var(--kimi-accent)}.kimi-overview-product>header button.is-active:after{width:38px}
.kimi-preview{position:relative;z-index:2;height:calc(100% - 76px);padding:clamp(28px,3.5vw,48px);animation:kimi-preview-in .38s var(--ease)}@keyframes kimi-preview-in{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
.kimi-preview-title{display:grid;grid-template-columns:112px minmax(0,1fr) auto;align-items:start;gap:22px;padding-bottom:24px;border-bottom:1px solid var(--kimi-line)}.kimi-preview-title span{color:var(--kimi-accent);font:600 9px "SFMono-Regular",ui-monospace,Menlo,monospace}.kimi-preview-title h3{margin:0;font:580 clamp(24px,2.35vw,36px)/1.42 "Source Han Serif SC VF","Noto Serif SC",serif}.kimi-preview-title p{margin:4px 0 0;color:var(--kimi-muted);font-size:9px;white-space:nowrap}
.kimi-search-flow{position:relative;display:grid;grid-template-columns:1fr 34px 1.15fr 34px 1fr;align-items:center;gap:10px;margin-top:40px}.kimi-search-flow:before{content:"";position:absolute;left:7%;right:7%;top:50%;height:1px;background:var(--kimi-accent);transform:scaleX(0);transform-origin:left;animation:kimi-line-draw .75s .12s var(--ease) forwards}.kimi-search-flow article{position:relative;z-index:1;min-height:118px;padding:20px;border:1px solid var(--kimi-line);border-radius:3px;background:rgba(250,248,243,.94);box-shadow:0 10px 30px rgba(45,37,29,.035);display:flex;flex-direction:column;justify-content:center;gap:9px;animation:kimi-node-rise .45s both}.kimi-search-flow article:nth-of-type(2){border-color:var(--kimi-accent);background:#f8eee8;animation-delay:.08s}.kimi-search-flow article:nth-of-type(3){animation-delay:.16s}.kimi-search-flow small{color:var(--kimi-accent);font:500 8px "SFMono-Regular",ui-monospace,Menlo,monospace}.kimi-search-flow b{font:600 15px "Source Han Serif SC VF","Noto Serif SC",serif}.kimi-search-flow span{color:var(--kimi-muted);font:500 8px "SFMono-Regular",ui-monospace,Menlo,monospace}.kimi-search-flow>i{position:relative;z-index:2;width:24px;height:24px;margin:auto;border:1px solid var(--kimi-accent);border-radius:50%;background:var(--kimi-panel);color:var(--kimi-accent);display:grid;place-items:center;text-align:center;font-style:normal}
.kimi-preview-result{display:flex;align-items:center;gap:10px;margin-top:26px}.kimi-preview-result b{margin-right:auto;font:600 14px "Source Han Serif SC VF","Noto Serif SC",serif}.kimi-preview-result span{padding:7px 9px;border-left:2px solid rgba(218,119,86,.42);background:rgba(218,119,86,.06);color:var(--kimi-muted);font-size:8px}
.kimi-platform-flow{position:relative;display:grid;grid-template-columns:repeat(3,1fr) 30px 1.4fr;align-items:stretch;gap:12px;margin-top:42px}.kimi-platform-flow:before{content:"";position:absolute;left:8%;right:8%;top:50%;height:1px;background:var(--kimi-accent);transform:scaleX(0);transform-origin:left;animation:kimi-line-draw .75s .12s var(--ease) forwards}.kimi-platform-flow article{position:relative;z-index:1;min-height:150px;padding:22px;border:1px solid var(--kimi-line);border-radius:3px;background:rgba(250,248,243,.94);display:flex;flex-direction:column;justify-content:center;gap:11px;animation:kimi-node-rise .45s both}.kimi-platform-flow article:nth-of-type(2){animation-delay:.06s}.kimi-platform-flow article:nth-of-type(3){animation-delay:.12s}.kimi-platform-flow article:not(.is-result):before{content:"配置";color:var(--kimi-accent);font:500 8px "SFMono-Regular",ui-monospace,Menlo,monospace}.kimi-platform-flow b{font:600 17px "Source Han Serif SC VF","Noto Serif SC",serif}.kimi-platform-flow span,.kimi-platform-flow small{color:var(--kimi-muted);font-size:9px}.kimi-platform-flow>i{position:relative;z-index:2;align-self:center;color:var(--kimi-accent);font-style:normal}.kimi-platform-flow .is-result{border-color:var(--kimi-accent);background:#f8eee8;animation-delay:.2s}
.kimi-automation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:42px}.kimi-automation-grid article{position:relative;min-height:190px;padding:25px;border:1px solid var(--kimi-line);border-radius:3px;background:rgba(250,248,243,.94);display:flex;flex-direction:column;gap:18px;animation:kimi-node-rise .45s both}.kimi-automation-grid article:nth-child(2){margin-top:12px;animation-delay:.08s}.kimi-automation-grid article:nth-child(3){animation-delay:.16s}.kimi-automation-grid article:before{content:"";position:absolute;left:24px;top:0;width:36px;height:2px;background:var(--kimi-accent)}.kimi-automation-grid span{color:var(--kimi-accent);font:500 8px "SFMono-Regular",ui-monospace,Menlo,monospace}.kimi-automation-grid b{font:600 18px/1.55 "Source Han Serif SC VF","Noto Serif SC",serif}.kimi-automation-grid small{margin-top:auto;color:var(--kimi-muted);font:500 8px "SFMono-Regular",ui-monospace,Menlo,monospace}
@keyframes kimi-line-draw{to{transform:scaleX(1)}}
@keyframes kimi-node-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

.kimi-deep-intro{min-height:66svh;padding:130px var(--page-pad) 86px;display:grid;align-content:center;background:var(--warm-ink);color:var(--warm-white)}.kimi-deep-intro>a{position:absolute;left:var(--page-pad);top:112px;color:#aaa49b;font-size:11px}.kimi-deep-intro>p:first-of-type{margin:0 0 18px;color:var(--accent);font-size:11px;font-weight:600;letter-spacing:.14em}.kimi-deep-intro h1{max-width:1100px;margin:0;font:500 clamp(48px,6vw,88px)/1.25 "Noto Serif SC",serif}.kimi-deep-intro>p:last-of-type{max-width:760px;margin:24px 0 34px;color:#bdb7ae;font:500 14px/1.8 "Noto Serif SC",serif}.kimi-deep-intro nav{display:flex;flex-wrap:wrap;gap:12px}.kimi-deep-intro nav a{padding:10px 14px;border:1px solid rgba(255,255,255,.2);font-size:10px}.kimi-deep-intro nav a:hover,.kimi-deep-intro nav a:focus-visible{border-color:var(--accent);color:var(--accent)}

.work-index {
  min-height: 74svh;
  padding: clamp(96px, 13vh, 150px) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(420px, 1.2fr);
  align-items: center;
  gap: clamp(50px, 9vw, 150px);
  background: var(--warm-ink);
  color: var(--warm-white);
}

.work-index-copy > p,
.chapter-transition > div:first-child > p {
  margin: 0 0 22px;
  color: var(--accent);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .14em;
}

.work-index h2,
.chapter-transition h2 {
  margin: 0;
  font: 500 clamp(42px, 5vw, 78px)/1.32 "Noto Serif SC", serif;
}

[data-transition-line] {
  display: block;
  width: min(210px, 70%);
  height: 1px;
  margin-top: 38px;
  background: var(--accent);
  transform: scaleX(var(--transition-progress, 0));
  transform-origin: left;
  transition: transform 1s var(--ease);
}

.work-index nav { border-top: 1px solid rgba(255,255,255,.2); }
.work-index nav a {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) auto;
  align-items: center;
  min-height: 92px;
  border-bottom: 1px solid rgba(255,255,255,.2);
  transition: padding .35s var(--ease), color .3s ease;
}
.work-index nav a:hover,
.work-index nav a:focus-visible { padding-left: 14px; color: #ff754b; }
.work-index nav b { color: var(--accent); font-size: 11px; }
.work-index nav span { font: 500 clamp(20px, 2vw, 30px) var(--serif); }
.work-index nav small { color: #aaa59d; font-size: 10px; }

.chapter-transition {
  position: relative;
  min-height: 70svh;
  padding: var(--section-gap) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .85fr);
  align-content: center;
  align-items: center;
  gap: clamp(42px, 8vw, 130px);
  overflow: hidden;
  border-top: 1px solid var(--section-rule);
  background: #f5f3ee;
}
.chapter-transition:before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .42;
  background-image: linear-gradient(rgba(55,48,38,.035) 1px,transparent 1px), linear-gradient(90deg,rgba(55,48,38,.035) 1px,transparent 1px);
  background-size: 30px 30px;
  mask-image: linear-gradient(90deg, #000, transparent 86%);
}
.chapter-transition > * { position: relative; z-index: 1; }
.ops-transition nav { border-top: 1px solid var(--line); }
.ops-transition nav a {
  min-height: 78px;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  align-items: center;
  border-bottom: 1px solid var(--line);
  transition: padding .3s var(--ease), color .3s;
}
.ops-transition nav a:hover,
.ops-transition nav a:focus-visible,
.ops-transition nav a[aria-current="location"] { padding-left: 12px; color: var(--accent); }
.ops-transition nav b { color: var(--accent); font-size: 11px; }
.ops-transition nav span { font: 600 21px "Noto Serif SC", serif; }
.ops-transition nav small { color: var(--muted); font-size: 10px; }

.integrated-case { border-top: 1px solid var(--section-rule); }
.message-case.integrated-case,
.price-monitor-case.integrated-case { margin: 0; }

.amap-main-case {
  position: relative;
  min-height: 100svh;
  padding: clamp(90px, 11vh, 130px) var(--page-pad);
  display: grid;
  grid-template-columns: minmax(330px, .78fr) minmax(620px, 1.22fr);
  align-items: center;
  gap: clamp(42px, 6vw, 100px);
  overflow: hidden;
  border-top: 1px solid var(--section-rule);
  background: #f5f3ee;
}
.amap-main-case:before {
  content: ""; position: absolute; inset: 0; opacity: .42; pointer-events: none;
  background-image: linear-gradient(rgba(55,48,38,.035) 1px,transparent 1px), linear-gradient(90deg,rgba(55,48,38,.035) 1px,transparent 1px);
  background-size: 30px 30px; mask-image: linear-gradient(90deg,#000,transparent 90%);
}
.amap-main-copy,.amap-embed{position:relative;z-index:1}.amap-main-copy>p:first-child{margin:0 0 22px;color:var(--accent);font-size:11px;font-weight:600;letter-spacing:.14em}
.amap-main-copy h2{margin:0;font:520 clamp(64px,7vw,108px)/1.05 "Source Han Serif SC VF","Noto Serif SC",serif}
.amap-main-copy>p:not(:first-child){max-width:520px;margin:20px 0;color:var(--muted);font:480 14px/1.85 "Source Han Serif SC VF","Noto Serif SC",serif}.amap-main-copy .amap-main-role{margin:18px 0 0;color:#1d1b16;font-size:clamp(20px,2vw,28px);font-weight:560}
.amap-main-copy > div { display: grid; gap: 0; border-top: 1px solid var(--line); }
.amap-main-copy > div span { padding: 14px 0; border-bottom: 1px solid var(--line); font-weight: 600; }
.amap-main-copy a {
  display: inline-flex;
  align-items: center;
  gap: 42px;
  margin-top: 34px;
  padding: 14px 0;
  border-bottom: 1px solid var(--accent);
  color: var(--accent);
  font-weight: 600;
}
.amap-main-copy a span { transition: transform .3s var(--ease); }
.amap-main-copy a:hover span { transform: translateX(6px); }
.amap-main-copy small { display: block; margin-top: 14px; color: #9a948b; font-size: 10px; }
.amap-embed{height:min(78vh,820px);min-height:650px;border:1px solid var(--line);background:rgba(248,245,239,.62);box-shadow:0 26px 70px rgba(52,43,33,.08)}
.amap-embed iframe{width:100%;height:100%;display:block;border:0}

@media (max-width: 900px) {
  .work-index,
  .chapter-transition { grid-template-columns: 1fr; }
  .work-index { min-height: auto; gap: 58px; }
  .chapter-transition { min-height: auto; gap: 54px; }
  .amap-main-case{grid-template-columns:1fr;padding-block:90px}.amap-embed{min-height:720px}
  .kimi-overview{grid-template-columns:1fr;padding-block:90px}.kimi-overview-product{min-height:620px}.kimi-preview-title{grid-template-columns:1fr}.kimi-preview-title p{white-space:normal}
}

@media (min-width: 901px) and (max-height: 780px) {
  .kimi-overview { padding-top: 58px; padding-bottom: 18px; }
  .kimi-overview-copy > p:first-child { margin-bottom: 10px; }
  .kimi-overview-copy h2 { font-size: clamp(62px, 6vw, 84px); line-height: 1.05; }
  .kimi-overview-copy > p:not(:first-child) { margin: 12px 0; font-size: 11px; line-height: 1.7; }
  .kimi-overview-copy .kimi-overview-role { margin-top: 12px; font-size: 20px; }
  .kimi-overview-facts span { padding: 8px 0; font-size: 12px; }
  .kimi-overview-copy > a { margin-top: 16px; padding: 10px 0; }
  .kimi-overview-product { height: min(calc(100svh - 96px), 560px); min-height: 0; }
  .kimi-preview { padding: 28px 34px; }
  .kimi-preview-title { padding-bottom: 18px; }
  .kimi-preview-title h3 { font-size: clamp(22px, 2.2vw, 31px); }
  .kimi-search-flow,.kimi-platform-flow,.kimi-automation-grid { margin-top: 26px; }
  .kimi-search-flow article { min-height: 94px; }
  .kimi-platform-flow article { min-height: 120px; }
  .kimi-automation-grid article { min-height: 150px; }
}

@media (max-width: 600px) {
  :root { --section-gap: 78px; --page-pad: 20px; }
  .work-index { padding: 82px 20px; }
  .work-index h2,
  .chapter-transition h2 { font-size: 38px; }
  .work-index nav a { grid-template-columns: 38px 1fr; min-height: 82px; }
  .work-index nav small { grid-column: 2; margin-top: -18px; }
  .chapter-transition { padding: 82px 20px; }
  .ops-transition nav a { grid-template-columns: 34px 1fr; }
  .ops-transition nav small { grid-column: 2; margin-top: -16px; }
  .amap-main-case{padding:82px 20px}.amap-main-copy h2{font-size:64px}.amap-main-copy .amap-main-role{font-size:20px}.amap-embed{height:720px;min-height:0}
  .kimi-overview{padding:82px 20px}.kimi-overview-copy h2{font-size:38px}.kimi-overview-product{height:680px;min-height:0}.kimi-overview-product>header{height:122px;padding:16px;align-items:flex-start;flex-direction:column}.kimi-overview-product>header nav{width:100%;min-height:48px}.kimi-overview-product>header button{flex:1;min-width:0;padding:8px 5px 10px}.kimi-overview-product>header button:after{left:5px}.kimi-preview{height:calc(100% - 122px);padding:24px 18px}.kimi-search-flow,.kimi-platform-flow{grid-template-columns:1fr}.kimi-search-flow:before,.kimi-platform-flow:before{display:none}.kimi-search-flow>i,.kimi-platform-flow>i{transform:rotate(90deg)}.kimi-search-flow article{min-height:78px}.kimi-preview-result{display:none}.kimi-platform-flow article{min-height:76px}.kimi-automation-grid{grid-template-columns:1fr;margin-top:24px}.kimi-automation-grid article{min-height:112px;border-right:0;border-bottom:1px solid var(--kimi-line)}.kimi-automation-grid article:nth-child(2){margin-top:0}.kimi-deep-intro{padding:120px 20px 70px}.kimi-deep-intro>a{left:20px;top:90px}.kimi-deep-intro h1{font-size:42px}
  .kimi-overview-copy h2{font-size:64px}.kimi-overview-copy .kimi-overview-role{font-size:20px}
}

@media (prefers-reduced-motion: reduce) {
  [data-transition-line] { transform: scaleX(1); transition: none; }
  .kimi-preview,.kimi-search-flow:before,.kimi-platform-flow:before,.kimi-search-flow article,.kimi-platform-flow article,.kimi-automation-grid article{animation:none}
}

@media (min-width:901px) and (max-width:1100px) {
  .work-index { grid-template-columns: 1fr; min-height: auto; gap: 58px; }
  .work-index-copy { max-width: 760px; }
}
