
:root {
  --ink-white: rgba(255,255,248,.96);
  --ink-cream: #f3e2b3;
  --ink-muted: rgba(239,234,218,.72);
}

body.home-v17 {
  margin: 0;
  min-height: 100vh;
  color: var(--ink-white);
  background: #050505 url("./assets/ink/home-bg-v17.webp") center top / 100% auto no-repeat;
  font-family: Inter, "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
  overflow-x: hidden;
}
body.home-v17::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.90) 0%, rgba(0,0,0,.66) 23%, rgba(0,0,0,.12) 48%, rgba(0,0,0,.26) 72%, rgba(0,0,0,.74) 100%),
    linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.02) 26%, rgba(0,0,0,.14) 72%, rgba(0,0,0,.56) 100%),
    radial-gradient(ellipse at 58% 22%, rgba(255,255,248,.18), transparent 30rem),
    radial-gradient(ellipse at 51% 51%, rgba(255,255,248,.12), transparent 40rem),
    repeating-linear-gradient(90deg, rgba(255,255,255,.012) 0 1px, transparent 1px 16px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.008) 0 1px, transparent 1px 16px);
}
body.home-v17::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at center, transparent 38%, rgba(0,0,0,.15) 100%);
}
.home-v17 a { color: inherit; text-decoration: none; }
.home-v17 button { font: inherit; }
.home-v17 .ink-page { position: relative; z-index: 1; min-height: 100vh; }
.home-v17 .ink-scroll { width: min(1500px, calc(100% - 64px)); margin: 0 auto; }

.home-v17 .ink-nav {
  position: sticky; top: 14px; z-index: 50;
  width: min(1460px, calc(100% - 72px));
  margin: 14px auto 0;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 11px 16px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 22px;
  background:
    radial-gradient(ellipse at 50% -180%, rgba(255,255,255,.12), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02) 36%, rgba(0,0,0,.14)),
    rgba(8,8,7,.58);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 16px 56px rgba(0,0,0,.38);
  backdrop-filter: blur(20px) saturate(112%);
  -webkit-backdrop-filter: blur(20px) saturate(112%);
}
.home-v17 .ink-brand { display: flex; align-items: center; gap: 12px; }
.home-v17 .ink-brand-mark {
  width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center;
  color: #17130d; font-weight: 900; background: linear-gradient(135deg, #fff7df, #d7bd82);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.68);
}
.home-v17 .ink-brand strong { display:block; font-size:15px; letter-spacing:.04em; }
.home-v17 .ink-brand em { display:block; margin-top:2px; color:rgba(239,234,218,.66); font-size:11px; font-style:normal; }
.home-v17 .ink-nav nav { display:flex; align-items:center; gap:24px; color:rgba(239,234,218,.74); font-size:13px; }
.home-v17 .ink-nav nav a:not(.ink-play):hover { color: #fff; }
.home-v17 .ink-play {
  padding: 10px 18px; border-radius: 999px; color:#19150e; font-weight:900;
  background: linear-gradient(135deg, rgba(255,249,230,.98), rgba(220,195,135,.96));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.74), 0 10px 28px rgba(0,0,0,.22);
}

.home-v17 .ink-hero {
  position: relative; min-height: 790px;
  display: grid; grid-template-columns: minmax(430px,.9fr) minmax(520px,1fr);
  align-items: center; gap: clamp(40px, 6vw, 90px);
  padding: 58px 0 100px;
}
.home-v17 .ink-hero::before {
  content:""; position:absolute; left:56%; top:43%; width:min(860px,64vw); height:520px;
  transform:translate(-50%,-50%); z-index:-1; pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(255,255,248,.18), transparent 40%),
    radial-gradient(ellipse at 50% 80%, rgba(255,255,248,.09), transparent 64%);
  filter: blur(56px);
}
.home-v17 .hero-copy-v16 { position: relative; padding-left: 24px; }
.home-v17 .hero-side-line {
  position:absolute; left:0; top:4px; width:1px; height:292px;
  background: linear-gradient(180deg, rgba(243,226,179,.86), rgba(243,226,179,.18), transparent);
}
.home-v17 .ink-kicker {
  margin:0 0 18px; color:var(--ink-cream); font-size:12px; letter-spacing:.34em; font-weight:800;
  text-shadow: 0 2px 18px rgba(0,0,0,.45);
}
.home-v17 .hero-copy-v16 h1 {
  margin:0; font-size: clamp(70px, 6vw, 112px); line-height:.92; letter-spacing:-.08em;
  color:#fffef7; text-shadow:0 14px 44px rgba(0,0,0,.55);
}
.home-v17 .hero-copy-v16 h1 span { display:block; }
.home-v17 .ink-lead {
  max-width: 640px; margin:26px 0 0; color:rgba(247,241,222,.82);
  line-height: 1.92; font-size: 15px; text-shadow:0 3px 18px rgba(0,0,0,.48);
}
.home-v17 .ink-actions { display:flex; gap:16px; margin-top:32px; flex-wrap:wrap; }
.home-v17 .ink-btn {
  min-width: 104px; border:1px solid rgba(255,255,255,.26); border-radius:999px; padding:12px 22px;
  color:rgba(255,255,248,.92); background:rgba(10,10,9,.28); cursor:pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 8px 24px rgba(0,0,0,.22);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
}
.home-v17 .ink-btn.primary {
  color:#17140f; font-weight:900; border-color: rgba(255,255,255,.70);
  background: linear-gradient(135deg, rgba(255,249,230,.98), rgba(222,200,145,.96));
}

.home-v17 .hero-ip-v16 {
  position:relative; min-height: 520px; display:block;
}
.home-v17 .hero-ip-v16::before {
  content:""; position:absolute; left:54%; top:45%; width:2px; height:360px; transform:translate(-50%,-50%);
  background: linear-gradient(180deg, transparent, rgba(255,255,255,.28), rgba(243,226,179,.12), transparent); opacity:.58;
}
.home-v17 .hero-ip-v16::after {
  content:""; position:absolute; left:54%; top:46%; width:220px; height:420px; transform:translate(-50%,-50%);
  background: radial-gradient(ellipse at center, rgba(255,255,245,.13), transparent 68%); filter: blur(28px);
}


.home-v17 .ip-glass {
  position:absolute; overflow:visible; min-height: 322px; border-radius: 34px; padding: 18px 28px 24px;
  display:flex; flex-direction:column; justify-content:flex-end;
  background: linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.06));
  backdrop-filter: blur(18px) saturate(128%);
  -webkit-backdrop-filter: blur(18px) saturate(128%);
  border:1px solid rgba(255,255,255,.22);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 18px 38px rgba(0,0,0,.18);
}
.home-v17 .ip-glass::before {
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background-position:center; background-repeat:no-repeat; background-size:100% 100%;
  filter: drop-shadow(0 16px 28px rgba(0,0,0,.18));
}
.home-v17 .ip-dark::before { background-image:url("./assets/ink/card-dark-v24.png"); opacity:.72; }
.home-v17 .ip-light::before { background-image:url("./assets/ink/card-light-v24.png"); opacity:.68; }
.home-v17 .ip-glass::after {
  content:""; position:absolute; inset:10px; z-index:1; pointer-events:none; border-radius:28px;
  background: linear-gradient(140deg, rgba(255,255,255,.26), rgba(255,255,255,.08) 34%, rgba(255,255,255,.03) 55%, rgba(255,255,255,.14) 100%);
  opacity:.7; mix-blend-mode:screen;
}

.home-v17 .ip-dark { left:8px; top:118px; width:230px; color:#fffef8; z-index:2; }
.home-v17 .ip-light { right:4px; top:26px; width:260px; color:#1f1b15; z-index:3; }
.home-v17 .ip-glass > * { position:relative; z-index:2; }
.home-v17 .ip-no { position:absolute; top:24px; left:30px; color:var(--ink-cream); font-weight:900; letter-spacing:.17em; font-size:17px; text-shadow:0 2px 10px rgba(0,0,0,.15); }
.home-v17 .ip-light .ip-no { color:#6a552a; }
.home-v17 .ip-orb { width:120px; height:120px; border-radius:50%; margin:2px auto 34px; position:relative; }
.home-v17 .black-orb { background: radial-gradient(circle at 38% 36%, rgba(255,255,255,.14), transparent 12px), radial-gradient(circle at 64% 36%, rgba(255,255,255,.14), transparent 12px), linear-gradient(145deg,#2b2b29,#040404); box-shadow: inset -10px -18px 28px rgba(0,0,0,.74), 0 18px 40px rgba(0,0,0,.34); }
.home-v17 .white-orb { background: radial-gradient(circle at 38% 36%, rgba(0,0,0,.09), transparent 12px), radial-gradient(circle at 64% 36%, rgba(0,0,0,.09), transparent 12px), linear-gradient(145deg,#fffdf1,#ddd1b8); box-shadow: inset -10px -18px 28px rgba(150,120,64,.12), 0 18px 40px rgba(255,255,255,.12); opacity:.9; }
.home-v17 .ip-orb::after { content:""; position:absolute; left:34%; top:62%; width:34%; height:8px; border-radius:99px; background:currentColor; opacity:.28; }
.home-v17 .ip-glass h2 { margin:0 0 10px; font-size:31px; letter-spacing:-.04em; text-shadow:0 3px 18px rgba(0,0,0,.20); }
.home-v17 .ip-glass p { margin:0; line-height:1.74; font-size:15px; }
.home-v17 .ip-dark p { color:rgba(239,234,218,.82); text-shadow:0 2px 12px rgba(0,0,0,.22); }
.home-v17 .ip-light p { color:rgba(34,30,24,.78); text-shadow:0 2px 12px rgba(255,255,255,.12); }


.home-v17 .portfolio-section { position:relative; padding: 96px 0 112px; }
.home-v17 .portfolio-section::before {
  content:""; position:absolute; left:50%; top:62px; transform:translateX(-50%); z-index:-1;
  width:min(1180px,86vw); height:320px;
  background: radial-gradient(ellipse at center, rgba(255,255,246,.16), rgba(255,255,246,.05) 40%, transparent 78%);
  filter: blur(56px); opacity:.9;
}
.home-v17 .section-heading-v16, .home-v17 .section-heading-v15 { text-align:center; max-width:900px; margin:0 auto 44px; }
.home-v17 .section-heading-v16 p, .home-v17 .section-heading-v15 p { margin:0 0 12px; color:var(--ink-cream); font-weight:900; letter-spacing:.33em; font-size:12px; }
.home-v17 .section-heading-v16 h2, .home-v17 .section-heading-v15 h2 { margin:0; color:#fffef8; font-size:clamp(34px,4vw,56px); line-height:1.05; letter-spacing:-.055em; text-shadow:0 8px 34px rgba(0,0,0,.42); }
.home-v17 .section-heading-v16 span, .home-v17 .section-heading-v15 span { display:block; margin:16px auto 0; max-width:780px; color:rgba(239,234,218,.72); line-height:1.82; }

.home-v17 .structure-row { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }


.home-v17 .mist-card {
  position:relative;
  min-height: 150px;
  padding: 24px 34px 26px;
  border-radius: 30px;
  overflow:visible;
  background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.05));
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 12px 26px rgba(0,0,0,.16);
  backdrop-filter: blur(16px) saturate(124%);
  -webkit-backdrop-filter: blur(16px) saturate(124%);
}
.home-v17 .mist-card::before {
  content:"";
  position:absolute;
  inset: 10px 12px 12px;
  z-index:0;
  pointer-events:none;
  border-radius: 28px;
  background: linear-gradient(145deg, rgba(255,255,255,.20), rgba(255,255,255,.03) 40%, rgba(255,255,255,.11) 100%);
  opacity:.55;
}
.home-v17 .mist-card::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:url("./assets/ink/card-strip-v24.png") center/100% 100% no-repeat;
  opacity:.68;
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.12));
}

.home-v17 .mist-card > * { position:relative; z-index:2; }
.home-v17 .mist-card h3 {
  margin: 13px 0 8px;
  font-size: 25px;
  letter-spacing:-.04em;
  color:#fffef8;
  text-shadow:0 4px 16px rgba(0,0,0,.24);
}
.home-v17 .mist-card p {
  margin:0;
  color:rgba(243,239,228,.90);
  line-height:1.72;
  text-shadow:0 3px 10px rgba(0,0,0,.18);
}
.home-v17 .mist-card b {
  display:block;
  color:var(--ink-cream);
  font-size:14px;
  letter-spacing:.17em;
}
.home-v17 .structure-row .mist-card:nth-child(2) { transform: translateY(4px); }
.home-v17 .structure-row .mist-card:nth-child(3) { transform: translateY(0); }

.home-v17 .gallery-collage-v16 {
  display:grid; grid-template-columns: 1.25fr 1fr 1fr; grid-auto-rows:255px; gap:24px; align-items:stretch;
}
.home-v17 .art-card { position:relative; border-radius:22px; padding:10px; margin:0; overflow:hidden; background:rgba(18,18,16,.18); border:1px solid rgba(255,255,255,.14); box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 16px 40px rgba(0,0,0,.24); }
.home-v17 .art-card::before { content:""; position:absolute; inset:0; pointer-events:none; background:url("./assets/ink/card-strip-v17.webp") center/100% 100% no-repeat; opacity:.09; }
.home-v17 .art-card .gallery-thumb { display:block; width:100%; height:calc(100% - 34px); padding:0; border:0; border-radius:16px; overflow:hidden; background:rgba(255,255,255,.10); cursor:pointer; }
.home-v17 .art-card img { width:100%; height:100%; object-fit:cover; display:block; transition: transform .32s ease; }
.home-v17 .art-card:hover img { transform:scale(1.03); }
.home-v17 .art-card figcaption { margin:11px 4px 2px; color:rgba(239,234,218,.78); font-size:13px; text-align:center; }
.home-v17 .art-feature { grid-row: span 2; }
.home-v17 .light-art { background: rgba(255,255,255,.08); }

.home-v17 .culture-row-v16 { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.home-v17 .compact-heading { margin-bottom:40px; }
.home-v17 .culture-row-v16 .mist-card { min-height: 144px; }

.home-v17 .ink-footer {
  width:min(1500px, calc(100% - 64px)); margin:12px auto 0; padding:34px 0 42px; display:flex; justify-content:space-between; gap:18px;
  color:rgba(239,234,218,.66); border-top:1px solid rgba(255,255,255,.16);
}
.home-v17 .modal { background:rgba(0,0,0,.56); backdrop-filter: blur(12px); -webkit-backdrop-filter:blur(12px); }
.home-v17 .modal-card { background:rgba(30,30,27,.78); color:#fffef8; border-color:rgba(255,255,255,.34); }
.home-v17 .image-lightbox { background:rgba(0,0,0,.78); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); }

@media (max-width: 1080px) {
  body.home-v17 { background-size: auto 100%; }
  .home-v17 .ink-scroll { width:min(100% - 36px, 920px); }
  .home-v17 .ink-nav { width: calc(100% - 36px); align-items:flex-start; flex-direction:column; }
  .home-v17 .ink-nav nav { width:100%; overflow-x:auto; padding-bottom:2px; }
  .home-v17 .ink-hero { grid-template-columns:1fr; min-height:auto; padding-top:66px; }
  .home-v17 .hero-ip-v16 { min-height: 430px; }
  .home-v17 .ip-dark { left:0; top:110px; width:220px; }
  .home-v17 .ip-light { right:0; top:20px; width:236px; }
  .home-v17 .hero-ip-v16 { min-height:430px; }
  .home-v17 .structure-row, .home-v17 .culture-row-v16 { grid-template-columns:repeat(2,1fr); }
  .home-v17 .gallery-collage-v16 { grid-template-columns: repeat(2, 1fr); grid-auto-rows:260px; }
  .home-v17 .art-feature { grid-row: span 1; }
}
@media (max-width: 640px) {
  .home-v17 .ink-scroll, .home-v17 .ink-footer { width:calc(100% - 28px); }
  .home-v17 .hero-copy-v16 { padding-left:18px; }
  .home-v17 .hero-copy-v16 h1 { font-size:clamp(48px,16vw,72px); }
  .home-v17 .hero-ip-v16, .home-v17 .structure-row, .home-v17 .gallery-collage-v16, .home-v17 .culture-row-v16 { grid-template-columns:1fr; }
  .home-v17 .hero-ip-v16::before, .home-v17 .hero-ip-v16::after { display:none; }
  .home-v17 .ip-dark, .home-v17 .ip-light { margin:0; }
  .home-v17 .gallery-collage-v16 { grid-auto-rows:260px; }
  .home-v17 .ink-footer { flex-direction:column; }
}

.home-v17 .art-card { background: transparent; border: 1px solid rgba(255,255,255,.10); box-shadow: 0 10px 24px rgba(0,0,0,.18); }
.home-v17 .art-card::before { opacity:.05; }


.home-v17 .ip-glass::after { display:none; }
.home-v17 .ip-dark::before { opacity: .90; }
.home-v17 .ip-light::before { opacity: .88; }
.home-v17 .ip-glass h2,
.home-v17 .ip-glass p,
.home-v17 .mist-card h3,
.home-v17 .mist-card p {
  max-width: 88%;
}
.home-v17 .structure-row .mist-card h3,
.home-v17 .structure-row .mist-card p {
  max-width: 92%;
}
/* rules22：进一步去掉薄膜感，结构条幅只保留边缘纹理与极轻雾化 */
.home-v17 .mist-card {
  padding: 22px 30px 24px;
}
.home-v17 .mist-card h3 {
  margin: 10px 0 8px;
}

/* rules23：替换为透明中心的真实边框素材 */

/* rules24: use user-cut transparent PNG assets */
.home-v17 .ip-glass::before{background-size:100% 100%;}
.home-v17 .mist-card::after{background-size:100% 100%;}

/* rules26: 用户抠图素材接入 —— CSS 毛玻璃做主体，PNG 只做墨迹边框与高光 */
.home-v17 .ip-glass,
.home-v17 .mist-card {
  isolation: isolate;
  overflow: visible;
}

.home-v17 .ip-glass {
  border-radius: 34px;
  border: 1px solid rgba(255,255,255,.24);
  background:
    radial-gradient(ellipse at 20% 8%, rgba(255,255,255,.18), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.105), rgba(255,255,255,.045) 45%, rgba(0,0,0,.10));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -1px 0 rgba(0,0,0,.22),
    0 20px 46px rgba(0,0,0,.26);
  backdrop-filter: blur(22px) saturate(126%);
  -webkit-backdrop-filter: blur(22px) saturate(126%);
}

.home-v17 .ip-dark {
  background:
    radial-gradient(circle at 52% 18%, rgba(255,255,255,.06), transparent 30%),
    linear-gradient(145deg, rgba(18,18,17,.56), rgba(8,8,8,.30) 58%, rgba(0,0,0,.44));
  border-color: rgba(255,255,255,.22);
}

.home-v17 .ip-light {
  background:
    radial-gradient(circle at 44% 12%, rgba(255,255,255,.34), transparent 36%),
    linear-gradient(145deg, rgba(255,255,248,.28), rgba(255,255,255,.15) 54%, rgba(210,205,190,.12));
  border-color: rgba(255,255,255,.42);
}

.home-v17 .ip-glass::before {
  content: "";
  position: absolute;
  inset: -18px;
  z-index: 3;
  pointer-events: none;
  border-radius: 42px;
  background: url("./assets/ink/card-border-v26.png") center / 100% 100% no-repeat;
  opacity: .86;
  filter: drop-shadow(0 18px 30px rgba(0,0,0,.24));
}

.home-v17 .ip-glass::after {
  content: "";
  display: block;
  position: absolute;
  inset: -2px;
  z-index: 2;
  pointer-events: none;
  border-radius: 36px;
  background: url("./assets/ink/glass-shine-v26.png") center / 100% 100% no-repeat;
  opacity: .34;
  mix-blend-mode: screen;
}

.home-v17 .ip-light::before { opacity: .72; }
.home-v17 .ip-light::after { opacity: .26; }
.home-v17 .ip-dark::before { opacity: .88; }
.home-v17 .ip-dark::after { opacity: .38; }

.home-v17 .ip-glass > * {
  position: relative;
  z-index: 4;
}

.home-v17 .mist-card {
  border-radius: 30px;
  border: 1px solid rgba(255,255,255,.20);
  background:
    radial-gradient(ellipse at 18% 0%, rgba(255,255,255,.16), transparent 46%),
    linear-gradient(145deg, rgba(255,255,255,.105), rgba(255,255,255,.045) 48%, rgba(0,0,0,.08));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    inset 0 -1px 0 rgba(0,0,0,.16),
    0 14px 30px rgba(0,0,0,.18);
  backdrop-filter: blur(18px) saturate(126%);
  -webkit-backdrop-filter: blur(18px) saturate(126%);
}

.home-v17 .mist-card::before {
  content: "";
  position: absolute;
  inset: 6px 8px;
  z-index: 0;
  pointer-events: none;
  border-radius: 26px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.22), rgba(255,255,255,.035) 40%, rgba(255,255,255,.12)),
    radial-gradient(ellipse at 80% 105%, rgba(255,255,255,.16), transparent 52%);
  opacity: .48;
  mix-blend-mode: screen;
}

.home-v17 .mist-card::after {
  content: "";
  position: absolute;
  inset: -13px -17px;
  z-index: 1;
  pointer-events: none;
  border-radius: 38px;
  background: url("./assets/ink/card-strip-border-v26.png") center / 100% 100% no-repeat;
  opacity: .70;
  filter: drop-shadow(0 12px 22px rgba(0,0,0,.16));
}

.home-v17 .mist-card > * {
  position: relative;
  z-index: 2;
}

.home-v17 .culture-row-v16 .mist-card::after { opacity: .56; }
.home-v17 .structure-row .mist-card::after { opacity: .68; }


/* rules27：第二轮精修 —— 减弱组件感，增强雾化玻璃与背景融合 */
.home-v17 .ink-hero {
  gap: clamp(56px, 7vw, 118px);
}
.home-v17 .hero-copy-v16 {
  max-width: 640px;
}
.home-v17 .ink-lead {
  max-width: 560px;
}
.home-v17 .hero-ip-v16 {
  min-height: 560px;
}
.home-v17 .hero-ip-v16::before {
  left: 56%;
  top: 45%;
  opacity: .34;
  height: 338px;
}
.home-v17 .hero-ip-v16::after {
  left: 56%;
  top: 45%;
  width: 300px;
  height: 470px;
  background:
    radial-gradient(ellipse at center, rgba(255,255,245,.16), transparent 52%),
    radial-gradient(ellipse at center, rgba(255,255,245,.08), transparent 76%);
  filter: blur(34px);
  opacity: .82;
}

.home-v17 .ip-glass {
  min-height: 314px;
  padding: 22px 28px 28px;
  border-radius: 36px;
  border: 1px solid rgba(255,255,255,.18);
  background:
    radial-gradient(ellipse at 18% 8%, rgba(255,255,255,.12), transparent 38%),
    radial-gradient(ellipse at 74% 92%, rgba(255,255,255,.06), transparent 36%),
    linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.035) 46%, rgba(0,0,0,.08));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -1px 0 rgba(0,0,0,.16),
    0 14px 30px rgba(0,0,0,.20),
    0 0 34px rgba(255,255,255,.06);
  backdrop-filter: blur(24px) saturate(112%);
  -webkit-backdrop-filter: blur(24px) saturate(112%);
}
.home-v17 .ip-dark {
  left: 6px;
  top: 132px;
  width: 222px;
  transform: rotate(-2deg);
  background:
    radial-gradient(circle at 50% 16%, rgba(255,255,255,.04), transparent 30%),
    linear-gradient(145deg, rgba(18,18,17,.42), rgba(10,10,10,.24) 58%, rgba(0,0,0,.36));
  border-color: rgba(255,255,255,.18);
}
.home-v17 .ip-light {
  right: 6px;
  top: 18px;
  width: 252px;
  transform: rotate(1.2deg);
  background:
    radial-gradient(circle at 42% 12%, rgba(255,255,255,.22), transparent 34%),
    linear-gradient(145deg, rgba(255,255,248,.16), rgba(255,255,255,.10) 56%, rgba(210,205,190,.08));
  border-color: rgba(255,255,255,.30);
}
.home-v17 .ip-glass::before {
  inset: -18px;
  opacity: .44;
  filter: drop-shadow(0 14px 24px rgba(0,0,0,.16));
}
.home-v17 .ip-dark::before { opacity: .42; }
.home-v17 .ip-light::before { opacity: .36; }
.home-v17 .ip-glass::after {
  inset: -4px;
  opacity: .19;
  border-radius: 40px;
  background-size: 102% 102%;
}
.home-v17 .ip-dark::after { opacity: .20; }
.home-v17 .ip-light::after { opacity: .16; }
.home-v17 .ip-no {
  top: 22px;
  left: 28px;
  font-size: 15px;
  opacity: .9;
}
.home-v17 .ip-orb {
  width: 116px;
  height: 116px;
  margin: 4px auto 28px;
}
.home-v17 .ip-glass h2 {
  margin: 0 0 10px;
  font-size: 29px;
  max-width: 84%;
}
.home-v17 .ip-glass p {
  font-size: 14px;
  line-height: 1.68;
  max-width: 84%;
}
.home-v17 .ip-dark p { color: rgba(239,234,218,.76); }
.home-v17 .ip-light p { color: rgba(38,34,28,.70); }

.home-v17 .portfolio-section {
  padding: 92px 0 108px;
}
.home-v17 .section-heading-v16 {
  margin-bottom: 50px;
}
.home-v17 .section-heading-v16 span,
.home-v17 .section-heading-v15 span {
  opacity: .88;
}

.home-v17 .structure-row {
  gap: 34px;
  align-items: start;
}
.home-v17 .mist-card {
  min-height: 126px;
  padding: 18px 28px 20px;
  border-radius: 32px;
  border: 1px solid rgba(255,255,255,.15);
  background:
    radial-gradient(ellipse at 18% 0%, rgba(255,255,255,.11), transparent 46%),
    radial-gradient(ellipse at 78% 100%, rgba(255,255,255,.06), transparent 46%),
    linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.03) 50%, rgba(0,0,0,.06));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    inset 0 -1px 0 rgba(0,0,0,.10),
    0 10px 24px rgba(0,0,0,.16),
    0 0 30px rgba(255,255,255,.04);
  backdrop-filter: blur(20px) saturate(114%);
  -webkit-backdrop-filter: blur(20px) saturate(114%);
}
.home-v17 .mist-card::before {
  inset: 8px 10px;
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.026) 42%, rgba(255,255,255,.08)),
    radial-gradient(ellipse at 84% 112%, rgba(255,255,255,.12), transparent 48%);
  opacity: .34;
}
.home-v17 .mist-card::after {
  inset: -11px -15px;
  opacity: .50;
  border-radius: 38px;
  filter: drop-shadow(0 8px 16px rgba(0,0,0,.12));
}
.home-v17 .structure-row .mist-card:nth-child(1) {
  transform: translateY(4px);
}
.home-v17 .structure-row .mist-card:nth-child(2) {
  transform: translateY(10px);
}
.home-v17 .structure-row .mist-card:nth-child(3) {
  transform: translateY(6px);
}
.home-v17 .structure-row .mist-card:nth-child(1)::before { opacity: .40; }
.home-v17 .structure-row .mist-card:nth-child(2)::before { opacity: .30; }
.home-v17 .structure-row .mist-card:nth-child(3)::before { opacity: .24; }
.home-v17 .structure-row .mist-card:nth-child(1)::after { opacity: .56; }
.home-v17 .structure-row .mist-card:nth-child(2)::after { opacity: .48; }
.home-v17 .structure-row .mist-card:nth-child(3)::after { opacity: .44; }
.home-v17 .mist-card b {
  position: relative;
  font-size: 13px;
}
.home-v17 .mist-card h3 {
  margin: 8px 0 6px;
  font-size: 22px;
  max-width: 90%;
}
.home-v17 .mist-card p {
  font-size: 14px;
  line-height: 1.62;
  color: rgba(243,239,228,.78);
  max-width: 92%;
}
.home-v17 .culture-row-v16 .mist-card {
  min-height: 132px;
}

@media (max-width: 1080px) {
  .home-v17 .ip-dark {
    left: 0;
    top: 118px;
    width: 214px;
  }
  .home-v17 .ip-light {
    right: 0;
    top: 16px;
    width: 228px;
  }
  .home-v17 .structure-row {
    gap: 24px;
  }
}

@media (max-width: 640px) {
  .home-v17 .hero-copy-v16 {
    max-width: none;
  }
  .home-v17 .ip-dark,
  .home-v17 .ip-light {
    transform: none;
  }
  .home-v17 .structure-row .mist-card:nth-child(1),
  .home-v17 .structure-row .mist-card:nth-child(2),
  .home-v17 .structure-row .mist-card:nth-child(3) {
    transform: none;
  }
}


/* rules28：补回参考图的轻量 SVG 装饰，并收紧上半区节奏 */
.home-v17 .ink-hero {
  min-height: 748px;
  gap: clamp(34px, 4.2vw, 74px);
  padding: 48px 0 82px;
}
.home-v17 .ink-hero::before {
  left: 58%;
  top: 42%;
  width: min(760px, 58vw);
  height: 480px;
  opacity: .82;
}
.home-v17 .ink-hero::after {
  content: "";
  position: absolute;
  right: 2%;
  top: 56px;
  width: min(760px, 52vw);
  height: min(520px, 44vw);
  background: url("./assets/ink/hero-decor-v28.svg") right top / contain no-repeat;
  opacity: .52;
  pointer-events: none;
  z-index: 0;
}
.home-v17 .hero-copy-v16 {
  max-width: 610px;
}
.home-v17 .hero-ip-v16 {
  min-height: 500px;
}
.home-v17 .hero-ip-v16::before {
  left: 53%;
  top: 44%;
  height: 320px;
  opacity: .24;
}
.home-v17 .hero-ip-v16::after {
  left: 53%;
  top: 44%;
  width: 252px;
  height: 400px;
  opacity: .62;
  filter: blur(28px);
}

.home-v17 .ip-dark {
  left: 4px;
  top: 118px;
  width: 226px;
}
.home-v17 .ip-light {
  right: 8px;
  top: 34px;
  width: 248px;
}
.home-v17 .ip-glass {
  min-height: 320px;
  padding: 22px 28px 26px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -1px 0 rgba(0,0,0,.14),
    0 12px 24px rgba(0,0,0,.18),
    0 0 26px rgba(255,255,255,.05);
}
.home-v17 .ip-glass::before {
  opacity: .50;
}
.home-v17 .ip-dark::before { opacity: .48; }
.home-v17 .ip-light::before { opacity: .42; }
.home-v17 .ip-glass::after {
  opacity: .16;
}
.home-v17 .ip-dark::after { opacity: .18; }
.home-v17 .ip-light::after { opacity: .14; }

.home-v17 .portfolio-section {
  padding: 84px 0 96px;
}
.home-v17 .section-heading-v16,
.home-v17 .section-heading-v15 {
  position: relative;
  margin-bottom: 38px;
  padding-top: 22px;
}
.home-v17 .section-heading-v16::before,
.home-v17 .section-heading-v15::before {
  content: "";
  display: block;
  width: min(420px, 80%);
  height: 46px;
  margin: 0 auto 14px;
  background: url("./assets/ink/section-decor-v28.svg") center / contain no-repeat;
  opacity: .62;
}
.home-v17 .section-heading-v16 h2,
.home-v17 .section-heading-v15 h2 {
  text-shadow: 0 6px 24px rgba(0,0,0,.34);
}
.home-v17 .section-heading-v16 span,
.home-v17 .section-heading-v15 span {
  margin-top: 12px;
}

.home-v17 .structure-row {
  gap: 28px;
}
.home-v17 .mist-card {
  min-height: 128px;
  position: relative;
}
.home-v17 .mist-card .svg-corner,
.home-v17 .ip-glass .svg-corner { display:none; }
.home-v17 .mist-card > * { z-index: 3; }
.home-v17 .mist-card::before {
  opacity: .28;
}
.home-v17 .mist-card::after {
  opacity: .54;
}
.home-v17 .mist-card h3 {
  font-size: 23px;
}
.home-v17 .mist-card::marker { display:none; }
.home-v17 .mist-card > b::after {
  content: "";
  position: absolute;
  top: -14px;
  left: -18px;
  width: 112px;
  height: 84px;
  background: url("./assets/ink/card-corner-v28.svg") left top / contain no-repeat;
  opacity: .44;
  pointer-events: none;
  z-index: -1;
}
.home-v17 .structure-row .mist-card:nth-child(1)::before { opacity: .34; }
.home-v17 .structure-row .mist-card:nth-child(2)::before { opacity: .26; }
.home-v17 .structure-row .mist-card:nth-child(3)::before { opacity: .22; }
.home-v17 .structure-row .mist-card:nth-child(1)::after { opacity: .58; }
.home-v17 .structure-row .mist-card:nth-child(2)::after { opacity: .50; }
.home-v17 .structure-row .mist-card:nth-child(3)::after { opacity: .46; }
.home-v17 .structure-row .mist-card:nth-child(1) { transform: translateY(2px); }
.home-v17 .structure-row .mist-card:nth-child(2) { transform: translateY(8px); }
.home-v17 .structure-row .mist-card:nth-child(3) { transform: translateY(4px); }

.home-v17 .gallery-section-v16,
.home-v17 .culture-section-v16 {
  padding-top: 88px;
}

@media (max-width: 1080px) {
  .home-v17 .ink-hero {
    gap: 28px;
    padding-top: 58px;
  }
  .home-v17 .ink-hero::after {
    right: -2%;
    top: 72px;
    width: min(620px, 64vw);
    opacity: .42;
  }
  .home-v17 .hero-ip-v16 {
    min-height: 430px;
  }
  .home-v17 .ip-dark { top: 112px; }
  .home-v17 .ip-light { top: 22px; }
}

@media (max-width: 640px) {
  .home-v17 .ink-hero::after,
  .home-v17 .section-heading-v16::before,
  .home-v17 .section-heading-v15::before,
  .home-v17 .mist-card > b::after {
    display: none;
  }
}


/* rules29：补玻璃高光、双棋中间文字、8个墨迹装饰、背景与字体再设计 */
body.home-v17 {
  background: #050505 url("./assets/ink/home-bg-v29.png") 52% 0 / 100% auto no-repeat fixed;
}
body.home-v17::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,.84) 0%, rgba(0,0,0,.56) 22%, rgba(0,0,0,.08) 49%, rgba(0,0,0,.18) 74%, rgba(0,0,0,.64) 100%),
    linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.02) 22%, rgba(0,0,0,.08) 68%, rgba(0,0,0,.44) 100%),
    radial-gradient(ellipse at 56% 18%, rgba(255,255,248,.22), transparent 32rem),
    radial-gradient(ellipse at 50% 54%, rgba(255,255,248,.08), transparent 44rem),
    repeating-linear-gradient(90deg, rgba(255,255,255,.010) 0 1px, transparent 1px 16px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.007) 0 1px, transparent 1px 16px);
}
body.home-v17::after {
  background: radial-gradient(ellipse at center, transparent 42%, rgba(0,0,0,.16) 100%);
}
.home-v17 .ink-page { position: relative; }
.home-v17 .ink-nav,
.home-v17 .ink-scroll,
.home-v17 .ink-footer { position: relative; z-index: 2; }

.home-v17 .page-accents {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  overflow: hidden;
}
.home-v17 .ink-acc {
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  mix-blend-mode: screen;
  opacity: .14;
  filter: blur(.2px);
}
.home-v17 .ink-a1 { left: -36px; top: 188px; width: 174px; height: 196px; background-image: url("./assets/ink/acc-1.png"); opacity: .18; }
.home-v17 .ink-a2 { left: 52%; top: 168px; width: 112px; height: 210px; background-image: url("./assets/ink/acc-2.png"); opacity: .16; }
.home-v17 .ink-a3 { right: -16px; top: 150px; width: 184px; height: 188px; background-image: url("./assets/ink/acc-3.png"); opacity: .16; }
.home-v17 .ink-a4 { left: 24px; top: 706px; width: 242px; height: 172px; background-image: url("./assets/ink/acc-4.png"); opacity: .12; }
.home-v17 .ink-a5 { right: 36px; top: 1010px; width: 204px; height: 172px; background-image: url("./assets/ink/acc-5.png"); opacity: .11; }
.home-v17 .ink-a6 { left: -18px; top: 1332px; width: 122px; height: 284px; background-image: url("./assets/ink/acc-6.png"); opacity: .12; }
.home-v17 .ink-a7 { right: 156px; top: 1540px; width: 236px; height: 240px; background-image: url("./assets/ink/acc-7.png"); opacity: .09; }
.home-v17 .ink-a8 { right: -14px; top: 1840px; width: 150px; height: 168px; background-image: url("./assets/ink/acc-8.png"); opacity: .12; }

.home-v17 .ink-kicker {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0 12px 0 0;
  font-weight: 700;
  letter-spacing: .28em;
}
.home-v17 .ink-kicker::before,
.home-v17 .ink-kicker::after {
  content: "";
  display: block;
}
.home-v17 .ink-kicker::before {
  width: 44px;
  height: 1px;
  background: linear-gradient(90deg, rgba(243,226,179,0), rgba(243,226,179,.76));
}
.home-v17 .ink-title {
  position: relative;
}
.home-v17 .ink-title span {
  position: relative;
  display: block;
  line-height: .88;
}
.home-v17 .ink-title span:first-child { margin-left: -.02em; }
.home-v17 .ink-title span:last-child { margin-left: .18em; }
.home-v17 .ink-title span::after {
  content: attr(data-text);
  position: absolute;
  inset: 0;
  z-index: -1;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255,255,255,.14);
  transform: translate(6px, 5px);
  opacity: .9;
}
.home-v17 .hero-copy-v16 h1 {
  letter-spacing: -.08em;
  text-shadow: 0 10px 30px rgba(0,0,0,.36);
}
.home-v17 .hero-copy-v16 h1::after {
  content: "BLACK & WHITE / DUAL IP";
  position: absolute;
  left: .2em;
  bottom: -.52em;
  font-size: 15px;
  letter-spacing: .42em;
  color: rgba(243,226,179,.58);
  font-weight: 700;
}

.home-v17 .ink-hero {
  min-height: 760px;
  gap: clamp(36px, 5vw, 88px);
  padding: 52px 0 96px;
}
.home-v17 .hero-copy-v16 {
  max-width: 630px;
}
.home-v17 .hero-ip-v16 {
  min-height: 532px;
}
.home-v17 .hero-ip-v16::before {
  left: 52%;
  top: 44%;
  height: 310px;
  opacity: .18;
}
.home-v17 .hero-ip-v16::after {
  left: 52%;
  top: 43%;
  width: 290px;
  height: 360px;
  opacity: .28;
}
.home-v17 .duality-copy {
  position: absolute;
  left: 53%;
  top: 43%;
  width: 180px;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 6;
}
.home-v17 .duality-copy::before,
.home-v17 .duality-copy::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  background: linear-gradient(180deg, rgba(243,226,179,.4), rgba(255,255,255,.04));
}
.home-v17 .duality-copy::before { top: -90px; height: 72px; }
.home-v17 .duality-copy::after { bottom: -88px; height: 66px; }
.home-v17 .duality-en {
  display: block;
  color: rgba(243,226,179,.74);
  font-size: 11px;
  letter-spacing: .36em;
  margin-bottom: 8px;
}
.home-v17 .duality-copy strong {
  display: block;
  font-size: 28px;
  line-height: 1.04;
  letter-spacing: .08em;
  color: rgba(255,255,248,.92);
  text-shadow: 0 5px 18px rgba(0,0,0,.28);
}
.home-v17 .duality-copy em {
  display: block;
  margin-top: 8px;
  font-style: normal;
  font-size: 12px;
  line-height: 1.6;
  color: rgba(239,234,218,.70);
}

.home-v17 .ip-glass {
  border-radius: 36px;
  border: 1px solid rgba(255,255,255,.22);
  background:
    radial-gradient(ellipse at 18% 12%, rgba(255,255,255,.16), transparent 38%),
    radial-gradient(ellipse at 84% 86%, rgba(255,255,255,.08), transparent 30%),
    linear-gradient(150deg, rgba(255,255,255,.10), rgba(255,255,255,.04) 44%, rgba(0,0,0,.08));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -1px 0 rgba(0,0,0,.12),
    0 18px 32px rgba(0,0,0,.18),
    0 0 40px rgba(255,255,255,.05);
  backdrop-filter: blur(26px) saturate(114%);
  -webkit-backdrop-filter: blur(26px) saturate(114%);
}
.home-v17 .ip-dark {
  left: 8px;
  top: 112px;
  width: 230px;
  background:
    radial-gradient(circle at 28% 14%, rgba(255,255,255,.09), transparent 26%),
    radial-gradient(circle at 76% 82%, rgba(255,255,255,.06), transparent 24%),
    linear-gradient(150deg, rgba(20,20,18,.42), rgba(10,10,10,.24) 55%, rgba(0,0,0,.38));
}
.home-v17 .ip-light {
  right: 6px;
  top: 30px;
  width: 256px;
  background:
    radial-gradient(circle at 26% 10%, rgba(255,255,255,.28), transparent 28%),
    radial-gradient(circle at 80% 84%, rgba(255,255,255,.10), transparent 24%),
    linear-gradient(150deg, rgba(255,255,248,.20), rgba(255,255,255,.11) 56%, rgba(210,205,190,.10));
}
.home-v17 .ip-glass::before {
  inset: -18px;
  opacity: .52;
  filter: drop-shadow(0 12px 22px rgba(0,0,0,.14));
}
.home-v17 .ip-glass::after {
  inset: -1px;
  border-radius: 37px;
  background:
    radial-gradient(circle at 18% 9%, rgba(255,255,255,.40), transparent 18%),
    linear-gradient(115deg, rgba(255,255,255,.28) 0%, rgba(255,255,255,.08) 24%, rgba(255,255,255,0) 42%),
    linear-gradient(182deg, rgba(255,255,255,.06), transparent 32%, rgba(255,255,255,.10) 100%),
    url("./assets/ink/glass-shine-v26.png") center / 100% 100% no-repeat;
  opacity: .28;
  mix-blend-mode: screen;
}
.home-v17 .ip-dark::after { opacity: .26; }
.home-v17 .ip-light::after { opacity: .32; }
.home-v17 .ip-glass h2 {
  font-size: 34px;
  letter-spacing: -.06em;
  text-shadow: 0 5px 16px rgba(0,0,0,.18);
}
.home-v17 .ip-glass p {
  font-size: 14px;
  line-height: 1.7;
}

.home-v17 .structure-row {
  gap: 30px;
}
.home-v17 .mist-card {
  min-height: 132px;
  padding: 18px 26px 20px;
  border: 1px solid rgba(255,255,255,.17);
  background:
    radial-gradient(ellipse at 18% 10%, rgba(255,255,255,.14), transparent 40%),
    radial-gradient(ellipse at 76% 88%, rgba(255,255,255,.06), transparent 32%),
    linear-gradient(150deg, rgba(255,255,255,.08), rgba(255,255,255,.03) 54%, rgba(0,0,0,.06));
  backdrop-filter: blur(22px) saturate(110%);
  -webkit-backdrop-filter: blur(22px) saturate(110%);
}
.home-v17 .mist-card::before {
  opacity: .26;
  background:
    linear-gradient(122deg, rgba(255,255,255,.18), rgba(255,255,255,.03) 34%, rgba(255,255,255,.10) 100%),
    radial-gradient(ellipse at 84% 106%, rgba(255,255,255,.12), transparent 52%);
}
.home-v17 .mist-card::after {
  opacity: .58;
}
.home-v17 .mist-card h3 {
  font-size: 24px;
  letter-spacing: -.05em;
}
.home-v17 .mist-card p {
  font-size: 13px;
  line-height: 1.66;
}

.home-v17 .section-heading-v16 h2,
.home-v17 .section-heading-v15 h2 {
  position: relative;
  display: inline-block;
  padding: 0 .18em;
  letter-spacing: -.06em;
}
.home-v17 .section-heading-v16 h2::after,
.home-v17 .section-heading-v15 h2::after {
  content: attr(data-text);
  display:none;
}
.home-v17 .section-heading-v16 p,
.home-v17 .section-heading-v15 p {
  letter-spacing: .34em;
}

.home-v17 .art-card {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.home-v17 .culture-row-v16 .mist-card {
  min-height: 128px;
}

@media (max-width: 1080px) {
  body.home-v17 { background-position: 56% 0; background-size: auto 100%; }
  .home-v17 .ink-hero { gap: 28px; }
  .home-v17 .duality-copy { left: 50%; top: 42%; width: 160px; }
  .home-v17 .ip-dark { left: 0; top: 110px; }
  .home-v17 .ip-light { right: 0; top: 24px; }
  .home-v17 .page-accents { display:none; }
}
@media (max-width: 640px) {
  body.home-v17 { background-size: auto 100%; background-position: center top; }
  .home-v17 .hero-copy-v16 h1::after,
  .home-v17 .duality-copy,
  .home-v17 .hero-ip-v16::before,
  .home-v17 .hero-ip-v16::after { display:none; }
  .home-v17 .ink-title span:last-child { margin-left: 0; }
  .home-v17 .ink-title span::after { transform: translate(4px, 4px); }
}


/* rules30：对齐参考图二，强化反光、装饰与统一字体系统 */
:root {
  --ink-title-font: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", sans-serif;
  --ink-serif-font: "STSong", "Songti SC", "Noto Serif SC", serif;
}
body.home-v17 {
  background-position: 55% 0;
  background-size: auto 100%;
}
.home-v17 .page-accents {
  z-index: 2;
}
.home-v17 .ink-scroll,
.home-v17 .portfolio-section,
.home-v17 .ink-hero {
  position: relative;
  z-index: 3;
}
.home-v17 .ink-acc {
  mix-blend-mode: normal;
  opacity: .28;
  filter: blur(0);
}
.home-v17 .ink-a1 { left: 72px; top: 116px; width: 124px; height: 142px; opacity: .18; }
.home-v17 .ink-a2 { left: 56.5%; top: 96px; width: 88px; height: 164px; opacity: .24; }
.home-v17 .ink-a3 { right: 100px; top: 84px; width: 146px; height: 138px; opacity: .22; }
.home-v17 .ink-a4 { left: 220px; top: 650px; width: 186px; height: 132px; opacity: .14; }
.home-v17 .ink-a5 { right: 94px; top: 874px; width: 182px; height: 154px; opacity: .14; }
.home-v17 .ink-a6 { left: 108px; top: 1410px; width: 112px; height: 238px; opacity: .14; }
.home-v17 .ink-a7 { right: 168px; top: 1310px; width: 208px; height: 208px; opacity: .11; }
.home-v17 .ink-a8 { right: 24px; top: 1690px; width: 124px; height: 132px; opacity: .15; }
.home-v17 .ink-a9 { left: 32px; top: 1760px; width: 112px; height: 92px; background-image: url("./assets/ink/acc-9.png"); opacity: .14; }

.home-v17 .ink-kicker,
.home-v17 .section-heading-v16 p,
.home-v17 .section-heading-v15 p,
.home-v17 .duality-en,
.home-v17 .ip-no,
.home-v17 .mist-card b {
  font-family: var(--ink-title-font);
  letter-spacing: .28em;
  text-transform: uppercase;
}
.home-v17 .hero-copy-v16 h1,
.home-v17 .section-heading-v16 h2,
.home-v17 .section-heading-v15 h2,
.home-v17 .ip-glass h2,
.home-v17 .mist-card h3 {
  font-family: var(--ink-title-font);
}
.home-v17 .ink-lead,
.home-v17 .section-heading-v16 span,
.home-v17 .section-heading-v15 span,
.home-v17 .ip-glass p,
.home-v17 .mist-card p,
.home-v17 .duality-copy em,
.home-v17 .art-card span,
.home-v17 .art-card small,
.home-v17 .culture-row-v16 .mist-card p {
  font-family: var(--ink-serif-font);
}

.home-v17 .hero-copy-v16 h1 {
  font-size: clamp(78px, 8vw, 110px);
  line-height: .86;
  letter-spacing: -.08em;
}
.home-v17 .ink-title span::after {
  -webkit-text-stroke: 1.4px rgba(255,255,255,.17);
  transform: translate(6px, 6px);
  opacity: .78;
}
.home-v17 .hero-copy-v16 h1::after {
  font-size: 12px;
  letter-spacing: .38em;
  bottom: -1.2em;
  color: rgba(243,226,179,.68);
}
.home-v17 .ink-lead {
  max-width: 560px;
  font-size: 16px;
  line-height: 1.8;
  color: rgba(239,234,218,.88);
}
.home-v17 .section-heading-v16 p,
.home-v17 .section-heading-v15 p {
  font-size: 11px;
  color: rgba(243,226,179,.82);
}
.home-v17 .section-heading-v16 h2,
.home-v17 .section-heading-v15 h2 {
  font-size: clamp(46px, 4.6vw, 64px);
  line-height: .98;
  letter-spacing: -.06em;
  text-shadow: 0 8px 24px rgba(0,0,0,.28);
}
.home-v17 .section-heading-v16 span,
.home-v17 .section-heading-v15 span {
  font-size: 14px;
  line-height: 1.8;
  color: rgba(239,234,218,.7);
}

.home-v17 .duality-copy {
  left: 52%;
  top: 47%;
  width: 136px;
}
.home-v17 .duality-copy::before { top: -78px; height: 58px; opacity: .8; }
.home-v17 .duality-copy::after { bottom: -72px; height: 52px; opacity: .72; }
.home-v17 .duality-en {
  font-size: 10px;
  color: rgba(243,226,179,.76);
  margin-bottom: 10px;
}
.home-v17 .duality-copy strong {
  font-family: var(--ink-title-font);
  font-size: 26px;
  letter-spacing: .08em;
  text-shadow: 0 4px 16px rgba(0,0,0,.24);
}
.home-v17 .duality-copy em {
  margin-top: 6px;
  font-size: 13px;
  color: rgba(239,234,218,.72);
  letter-spacing: .16em;
}

.home-v17 .ip-glass {
  overflow: hidden;
}
.home-v17 .ip-glass::after {
  inset: -2px;
  border-radius: 38px;
  background:
    radial-gradient(ellipse at 18% 12%, rgba(255,255,255,.78) 0%, rgba(255,255,255,.36) 10%, rgba(255,255,255,0) 34%),
    radial-gradient(ellipse at 86% 88%, rgba(255,255,255,.52) 0%, rgba(255,255,255,.18) 12%, rgba(255,255,255,0) 30%),
    linear-gradient(120deg, rgba(255,255,255,.38) 0%, rgba(255,255,255,.09) 18%, rgba(255,255,255,0) 34%),
    linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,0) 32%, rgba(255,255,255,.12) 100%),
    url("./assets/ink/glass-shine-v26.png") center / 100% 100% no-repeat;
  opacity: .52;
  mix-blend-mode: screen;
}
.home-v17 .ip-glass::before {
  opacity: .62;
  filter: drop-shadow(0 12px 20px rgba(0,0,0,.12));
}
.home-v17 .ip-dark::after {
  opacity: .42;
}
.home-v17 .ip-light::after {
  opacity: .62;
}
.home-v17 .ip-glass h2 {
  font-size: 28px;
  letter-spacing: -.04em;
}
.home-v17 .ip-glass p {
  max-width: 78%;
  font-size: 13px;
  line-height: 1.72;
}
.home-v17 .ip-dark {
  top: 96px;
}
.home-v17 .ip-light {
  top: 28px;
}
.home-v17 .black-orb { box-shadow: inset -10px -18px 28px rgba(0,0,0,.78), 0 18px 40px rgba(0,0,0,.26), 0 0 18px rgba(255,255,255,.06); }
.home-v17 .white-orb { box-shadow: inset -10px -18px 28px rgba(150,120,64,.14), 0 18px 40px rgba(255,255,255,.16), 0 0 18px rgba(255,255,255,.18); }

.home-v17 .mist-card {
  overflow: hidden;
}
.home-v17 .mist-card::before {
  opacity: .36;
  background:
    radial-gradient(ellipse at 18% 14%, rgba(255,255,255,.42), transparent 26%),
    radial-gradient(ellipse at 84% 84%, rgba(255,255,255,.22), transparent 22%),
    linear-gradient(118deg, rgba(255,255,255,.28), rgba(255,255,255,.05) 26%, rgba(255,255,255,0) 48%);
}
.home-v17 .mist-card::after {
  opacity: .60;
  filter: drop-shadow(0 10px 16px rgba(0,0,0,.10));
}
.home-v17 .mist-card h3 {
  font-size: 21px;
  letter-spacing: -.03em;
}
.home-v17 .mist-card p {
  font-size: 12px;
  line-height: 1.68;
}
.home-v17 .mist-card b {
  font-size: 11px;
  color: rgba(243,226,179,.96);
}

.home-v17 .art-card {
  background: rgba(255,255,255,.09);
  border-color: rgba(255,255,255,.16);
}
.home-v17 .art-card span,
.home-v17 .art-card small {
  color: rgba(239,234,218,.78);
}

@media (max-width: 1080px) {
  .home-v17 .page-accents { display: none; }
  .home-v17 .duality-copy {
    left: 50%;
    top: 45%;
  }
}
@media (max-width: 640px) {
  .home-v17 .hero-copy-v16 h1 {
    font-size: clamp(58px, 16vw, 84px);
  }
  .home-v17 .section-heading-v16 h2,
  .home-v17 .section-heading-v15 h2 {
    font-size: 40px;
  }
}


/* rules31：回退重搭，向参考图二靠拢 */
body.home-v17 {
  background: #050505 url("./assets/ink/home-bg-v16.webp") center top / cover no-repeat fixed;
}
body.home-v17::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.74) 22%, rgba(0,0,0,.14) 49%, rgba(0,0,0,.20) 69%, rgba(0,0,0,.70) 100%),
    linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.02) 32%, rgba(0,0,0,.16) 72%, rgba(0,0,0,.48) 100%),
    radial-gradient(ellipse at 58% 26%, rgba(255,255,248,.22), transparent 42%),
    radial-gradient(ellipse at 54% 62%, rgba(255,255,248,.10), transparent 52%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.010) 0 1px, transparent 1px 16px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.008) 0 1px, transparent 1px 16px);
}
body.home-v17::after {
  background: radial-gradient(ellipse at center, transparent 34%, rgba(0,0,0,.24) 100%);
}
.home-v17 .page-accents { z-index: 1; }
.home-v17 .ink-acc {
  mix-blend-mode: screen;
  opacity: .22;
}
.home-v17 .ink-a1 { left: 18px; top: 170px; width: 142px; height: 160px; opacity: .16; }
.home-v17 .ink-a2 { left: 57%; top: 110px; width: 88px; height: 166px; opacity: .14; }
.home-v17 .ink-a3 { right: 16px; top: 126px; width: 150px; height: 148px; opacity: .16; }
.home-v17 .ink-a4 { left: 10px; top: 780px; width: 180px; height: 134px; opacity: .12; }
.home-v17 .ink-a5 { right: 42px; top: 920px; width: 210px; height: 186px; opacity: .12; }
.home-v17 .ink-a6 { left: 0; top: 1550px; width: 96px; height: 230px; opacity: .11; }
.home-v17 .ink-a7 { right: 100px; top: 1520px; width: 214px; height: 216px; opacity: .10; }
.home-v17 .ink-a8 { right: 0; top: 1960px; width: 124px; height: 132px; opacity: .12; }
.home-v17 .ink-a9 { left: 44px; top: 1950px; width: 100px; height: 78px; opacity: .12; }

.home-v17 .ink-hero {
  min-height: 700px;
  gap: clamp(42px, 4vw, 70px);
  padding: 54px 0 74px;
}
.home-v17 .hero-copy-v16 {
  max-width: 610px;
}
.home-v17 .hero-ip-v16 {
  min-height: 470px;
}
.home-v17 .hero-ip-v16::before {
  left: 54%; top: 45%; width: 420px; height: 260px;
  opacity: .16;
  filter: blur(32px);
}
.home-v17 .hero-ip-v16::after {
  left: 54%; top: 45%; width: 260px; height: 340px;
  opacity: .18;
  filter: blur(20px);
}
.home-v17 .ink-hero::after {
  opacity: .22;
}

.home-v17 .hero-copy-v16 h1 {
  font-size: clamp(72px, 7.2vw, 98px);
  line-height: .9;
  letter-spacing: -.06em;
  text-shadow: 0 8px 20px rgba(0,0,0,.28);
}
.home-v17 .ink-title span::after {
  -webkit-text-stroke: 1px rgba(255,255,255,.12);
  transform: translate(4px, 4px);
  opacity: .52;
}
.home-v17 .hero-copy-v16 h1::after {
  content: none;
}
.home-v17 .ink-kicker {
  font-size: 11px;
  letter-spacing: .3em;
  color: rgba(243,226,179,.84);
}
.home-v17 .ink-lead {
  max-width: 560px;
  font-size: 15px;
  line-height: 1.75;
  color: rgba(239,234,218,.86);
}

.home-v17 .ip-glass {
  min-height: 300px;
  padding: 22px 28px 24px;
  border-radius: 34px;
  border: 1px solid rgba(255,255,255,.20);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -1px 0 rgba(0,0,0,.14),
    0 16px 28px rgba(0,0,0,.18);
  backdrop-filter: blur(24px) saturate(114%);
  -webkit-backdrop-filter: blur(24px) saturate(114%);
}
.home-v17 .ip-dark {
  left: 0; top: 112px; width: 212px; transform: rotate(-2deg);
}
.home-v17 .ip-light {
  right: 0; top: 20px; width: 228px; transform: rotate(1.2deg);
}
.home-v17 .ip-glass::before {
  opacity: .48;
}
.home-v17 .ip-glass::after {
  inset: -1px;
  border-radius: 34px;
  background:
    radial-gradient(ellipse at 16% 10%, rgba(255,255,255,.68) 0%, rgba(255,255,255,.24) 12%, rgba(255,255,255,0) 28%),
    radial-gradient(ellipse at 86% 88%, rgba(255,255,255,.48) 0%, rgba(255,255,255,.16) 10%, rgba(255,255,255,0) 26%),
    linear-gradient(120deg, rgba(255,255,255,.32) 0%, rgba(255,255,255,.08) 16%, rgba(255,255,255,0) 28%),
    linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,0) 30%, rgba(255,255,255,.10) 100%),
    url("./assets/ink/glass-shine-v26.png") center/100% 100% no-repeat;
  opacity: .42;
  mix-blend-mode: screen;
}
.home-v17 .ip-light::after { opacity: .54; }
.home-v17 .ip-dark::after { opacity: .34; }
.home-v17 .ip-glass h2 {
  font-size: 30px;
  letter-spacing: -.04em;
}
.home-v17 .ip-glass p {
  max-width: 82%;
  font-size: 13px;
  line-height: 1.66;
}
.home-v17 .ip-no {
  font-size: 13px;
  color: rgba(243,226,179,.86);
}
.home-v17 .ip-orb { width: 110px; height: 110px; margin: 4px auto 24px; }

.home-v17 .duality-copy {
  left: 54%;
  top: 44%;
  width: 112px;
  transform: translate(-50%, -50%);
}
.home-v17 .duality-copy::before,
.home-v17 .duality-copy::after {
  width: 1px;
  background: linear-gradient(180deg, rgba(243,226,179,.36), rgba(255,255,255,.02));
}
.home-v17 .duality-copy::before { top: -60px; height: 42px; }
.home-v17 .duality-copy::after { bottom: -56px; height: 38px; }
.home-v17 .duality-en {
  font-size: 9px;
  letter-spacing: .34em;
  margin-bottom: 8px;
  color: rgba(243,226,179,.70);
}
.home-v17 .duality-copy strong {
  font-size: 20px;
  letter-spacing: .06em;
  line-height: 1.15;
}
.home-v17 .duality-copy em {
  font-size: 11px;
  letter-spacing: .12em;
  color: rgba(239,234,218,.64);
}

.home-v17 .section-heading-v16::before,
.home-v17 .section-heading-v15::before {
  opacity: .42;
}
.home-v17 .section-heading-v16 p,
.home-v17 .section-heading-v15 p {
  font-size: 10px;
  letter-spacing: .34em;
  color: rgba(243,226,179,.76);
}
.home-v17 .section-heading-v16 h2,
.home-v17 .section-heading-v15 h2 {
  font-size: clamp(42px, 4vw, 56px);
  line-height: 1.02;
  letter-spacing: -.05em;
}
.home-v17 .section-heading-v16 span,
.home-v17 .section-heading-v15 span {
  font-size: 14px;
  line-height: 1.72;
  color: rgba(239,234,218,.66);
}

.home-v17 .structure-row { gap: 28px; }
.home-v17 .mist-card {
  min-height: 120px;
  padding: 18px 26px 18px;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.15);
  background:
    radial-gradient(ellipse at 18% 14%, rgba(255,255,255,.18), transparent 24%),
    radial-gradient(ellipse at 84% 84%, rgba(255,255,255,.10), transparent 24%),
    linear-gradient(150deg, rgba(255,255,255,.08), rgba(255,255,255,.03) 54%, rgba(0,0,0,.06));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 -1px 0 rgba(0,0,0,.10),
    0 10px 18px rgba(0,0,0,.14);
  backdrop-filter: blur(18px) saturate(108%);
  -webkit-backdrop-filter: blur(18px) saturate(108%);
}
.home-v17 .mist-card::before {
  opacity: .28;
  background:
    linear-gradient(118deg, rgba(255,255,255,.24), rgba(255,255,255,.06) 26%, rgba(255,255,255,0) 44%),
    radial-gradient(ellipse at 84% 106%, rgba(255,255,255,.12), transparent 52%);
}
.home-v17 .mist-card::after {
  opacity: .50;
}
.home-v17 .mist-card h3 {
  font-size: 22px;
  letter-spacing: -.04em;
}
.home-v17 .mist-card p {
  font-size: 13px;
  line-height: 1.6;
  color: rgba(243,239,228,.74);
}
.home-v17 .mist-card b {
  font-size: 11px;
  color: rgba(243,226,179,.92);
}
.home-v17 .structure-row .mist-card:nth-child(1) { transform: translateY(0); }
.home-v17 .structure-row .mist-card:nth-child(2) { transform: translateY(6px); }
.home-v17 .structure-row .mist-card:nth-child(3) { transform: translateY(0); }

@media (max-width: 1080px) {
  body.home-v17 { background-position: center top; background-size: cover; }
  .home-v17 .page-accents { display: none; }
  .home-v17 .hero-ip-v16 { min-height: 420px; }
  .home-v17 .ip-dark { top: 100px; width: 202px; }
  .home-v17 .ip-light { top: 18px; width: 216px; }
  .home-v17 .duality-copy { left: 52%; top: 42%; }
}
@media (max-width: 640px) {
  .home-v17 .ink-hero { min-height: auto; padding: 46px 0 56px; }
  .home-v17 .hero-copy-v16 h1 { font-size: clamp(58px, 16vw, 82px); }
  .home-v17 .duality-copy,
  .home-v17 .hero-ip-v16::before,
  .home-v17 .hero-ip-v16::after { display: none; }
}


/* rules32：九个拆分装饰回归到文字框边缘，背景恢复长卷滚动，文字以排版微调为主 */
body.home-v17 {
  background: #050505 url("./assets/ink/home-bg-v16.webp") center top / 100% auto no-repeat;
  background-attachment: scroll;
}
body.home-v17::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,.90) 0%, rgba(0,0,0,.72) 20%, rgba(0,0,0,.16) 48%, rgba(0,0,0,.20) 70%, rgba(0,0,0,.72) 100%),
    linear-gradient(180deg, rgba(0,0,0,.04) 0%, rgba(0,0,0,.02) 28%, rgba(0,0,0,.14) 66%, rgba(0,0,0,.42) 100%),
    radial-gradient(ellipse at 58% 22%, rgba(255,255,248,.18), transparent 40%),
    radial-gradient(ellipse at 54% 58%, rgba(255,255,248,.08), transparent 52%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.010) 0 1px, transparent 1px 16px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.007) 0 1px, transparent 1px 16px);
}
.home-v17 .page-accents { display: none; }

/* 文字排版：减少特效，改为稳一点的版式调整 */
.home-v17 .hero-copy-v16 {
  max-width: 620px;
}
.home-v17 .hero-copy-v16 h1 {
  font-size: clamp(76px, 7.2vw, 96px);
  line-height: .88;
  letter-spacing: -.065em;
  margin: 18px 0 24px;
}
.home-v17 .ink-title span:first-child,
.home-v17 .ink-title span:last-child {
  margin-left: 0;
}
.home-v17 .ink-title span::after {
  -webkit-text-stroke: 1px rgba(255,255,255,.10);
  transform: translate(4px, 4px);
  opacity: .46;
}
.home-v17 .ink-lead {
  max-width: 560px;
  font-size: 15px;
  line-height: 1.82;
  color: rgba(239,234,218,.86);
}
.home-v17 .section-heading-v16 h2,
.home-v17 .section-heading-v15 h2 {
  font-size: clamp(44px, 4vw, 58px);
  line-height: 1;
  letter-spacing: -.05em;
}
.home-v17 .section-heading-v16 span,
.home-v17 .section-heading-v15 span {
  font-size: 14px;
  line-height: 1.76;
}
.home-v17 .duality-copy {
  left: 54%;
  top: 44%;
  width: 110px;
}
.home-v17 .duality-copy strong {
  font-size: 19px;
  letter-spacing: .04em;
}
.home-v17 .duality-copy em {
  font-size: 10px;
  letter-spacing: .18em;
}

/* 英雄双卡：继续保留玻璃，并把拆分装饰挂到卡边 */
.home-v17 .ip-dark::before {
  inset: -16px;
  background:
    url("./assets/ink/acc-1.png") left -6px top -4px / 64px auto no-repeat,
    url("./assets/ink/card-border-v26.png") center / 100% 100% no-repeat;
  opacity: .55;
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.12));
}
.home-v17 .ip-light::before {
  inset: -16px;
  background:
    url("./assets/ink/acc-2.png") right -2px top -2px / 74px auto no-repeat,
    url("./assets/ink/card-border-v26.png") center / 100% 100% no-repeat;
  opacity: .56;
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.12));
}
.home-v17 .ip-glass::after {
  opacity: .46;
}
.home-v17 .ip-light::after { opacity: .56; }
.home-v17 .ip-dark::after { opacity: .38; }

/* 顶部三个框：每个框挂一个拆分装饰 */
.home-v17 .structure-row .mist-card:nth-child(1)::after {
  inset: -11px -15px;
  background:
    url("./assets/ink/acc-3.png") left 8px top 4px / 92px auto no-repeat,
    url("./assets/ink/card-strip-border-v26.png") center / 100% 100% no-repeat;
  opacity: .60;
}
.home-v17 .structure-row .mist-card:nth-child(2)::after {
  inset: -11px -15px;
  background:
    url("./assets/ink/acc-4.png") center top -4px / 92px auto no-repeat,
    url("./assets/ink/card-strip-border-v26.png") center / 100% 100% no-repeat;
  opacity: .58;
}
.home-v17 .structure-row .mist-card:nth-child(3)::after {
  inset: -11px -15px;
  background:
    url("./assets/ink/acc-5.png") right 12px top 4px / 96px auto no-repeat,
    url("./assets/ink/card-strip-border-v26.png") center / 100% 100% no-repeat;
  opacity: .58;
}

/* 底部四个文字框：对应剩余四个拆分装饰 */
.home-v17 .culture-row-v16 .mist-card:nth-child(1)::after {
  inset: -11px -15px;
  background:
    url("./assets/ink/acc-6.png") left 10px top 2px / 52px auto no-repeat,
    url("./assets/ink/card-strip-border-v26.png") center / 100% 100% no-repeat;
  opacity: .54;
}
.home-v17 .culture-row-v16 .mist-card:nth-child(2)::after {
  inset: -11px -15px;
  background:
    url("./assets/ink/acc-7.png") center top -8px / 78px auto no-repeat,
    url("./assets/ink/card-strip-border-v26.png") center / 100% 100% no-repeat;
  opacity: .54;
}
.home-v17 .culture-row-v16 .mist-card:nth-child(3)::after {
  inset: -11px -15px;
  background:
    url("./assets/ink/acc-8.png") right 12px top 0 / 56px auto no-repeat,
    url("./assets/ink/card-strip-border-v26.png") center / 100% 100% no-repeat;
  opacity: .54;
}
.home-v17 .culture-row-v16 .mist-card:nth-child(4)::after {
  inset: -11px -15px;
  background:
    url("./assets/ink/acc-9.png") right 18px bottom 2px / 48px auto no-repeat,
    url("./assets/ink/card-strip-border-v26.png") center / 100% 100% no-repeat;
  opacity: .54;
}

/* 文字框细调，保持参考图的横条感觉 */
.home-v17 .mist-card {
  min-height: 122px;
  padding: 18px 26px 18px;
}
.home-v17 .mist-card h3 {
  margin: 8px 0 6px;
  font-size: 22px;
}
.home-v17 .mist-card p {
  max-width: 92%;
  font-size: 13px;
  line-height: 1.62;
}
.home-v17 .culture-row-v16 .mist-card {
  min-height: 124px;
}

@media (max-width: 1080px) {
  body.home-v17 {
    background-size: cover;
    background-position: center top;
  }
}
@media (max-width: 640px) {
  body.home-v17 {
    background-size: cover;
  }
  .home-v17 .duality-copy,
  .home-v17 .hero-ip-v16::before,
  .home-v17 .hero-ip-v16::after { display:none; }
}


/* rules33：使用用户上传的 8 张透明装饰图，作为独立元素挂在文字框边缘 */
body.home-v17 {
  background: #050505 url("./assets/ink/home-bg-v16.webp") center top / 100% auto no-repeat;
  background-attachment: scroll;
}
.home-v17 .page-accents {
  display: none !important;
}

/* 先取消上一版把装饰塞进边框背景的做法 */
.home-v17 .structure-row .mist-card::after,
.home-v17 .culture-row-v16 .mist-card::after {
  background: url("./assets/ink/card-strip-border-v26.png") center / 100% 100% no-repeat;
}
.home-v17 .ip-dark::before,
.home-v17 .ip-light::before {
  background: url("./assets/ink/card-border-v26.png") center / 100% 100% no-repeat;
}

/* 独立装饰层：真的挂到文字框上，不再和背景/边框混在一起 */
.home-v17 .card-decor {
  position: absolute;
  display: block;
  pointer-events: none;
  z-index: 3;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  mix-blend-mode: screen;
  filter: drop-shadow(0 4px 10px rgba(0,0,0,.10));
}
.home-v17 .mist-card > b,
.home-v17 .mist-card > h3,
.home-v17 .mist-card > p {
  position: relative;
  z-index: 4;
}

/* 中间黑白对弈：用竖向笔触作为弱连接 */
.home-v17 .duality-copy {
  width: 116px;
}
.home-v17 .duality-copy .decor-mid {
  width: 72px;
  height: 132px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -52%);
  background-image: url("./assets/ink/user-decor-4.png");
  opacity: .22;
  z-index: -1;
}
.home-v17 .duality-copy strong {
  font-size: 18px;
  letter-spacing: .06em;
}
.home-v17 .duality-copy em {
  font-size: 10px;
  letter-spacing: .18em;
}

/* 结构区三个横框：图5 / 图3 / 图2 */
.home-v17 .structure-row .decor-struct-1 {
  width: 156px;
  height: 92px;
  left: -16px;
  top: -28px;
  background-image: url("./assets/ink/user-decor-5.png");
  opacity: .34;
}
.home-v17 .structure-row .decor-struct-2 {
  width: 118px;
  height: 116px;
  left: 38%;
  top: -44px;
  transform: translateX(-50%) rotate(-5deg);
  background-image: url("./assets/ink/user-decor-3.png");
  opacity: .28;
}
.home-v17 .structure-row .decor-struct-3 {
  width: 122px;
  height: 108px;
  right: -22px;
  top: -42px;
  transform: rotate(8deg);
  background-image: url("./assets/ink/user-decor-2.png");
  opacity: .32;
}

/* 文化区四个小框：图1 / 图7 / 图8 / 图6 */
.home-v17 .culture-row-v16 .decor-culture-1 {
  width: 78px;
  height: 76px;
  left: -18px;
  top: -28px;
  background-image: url("./assets/ink/user-decor-1.png");
  opacity: .32;
}
.home-v17 .culture-row-v16 .decor-culture-2 {
  width: 86px;
  height: 82px;
  right: -16px;
  top: -28px;
  background-image: url("./assets/ink/user-decor-7.png");
  opacity: .30;
}
.home-v17 .culture-row-v16 .decor-culture-3 {
  width: 54px;
  height: 104px;
  right: -12px;
  top: -26px;
  background-image: url("./assets/ink/user-decor-8.png");
  opacity: .30;
}
.home-v17 .culture-row-v16 .decor-culture-4 {
  width: 116px;
  height: 72px;
  right: -22px;
  top: -24px;
  background-image: url("./assets/ink/user-decor-6.png");
  opacity: .28;
}

/* 文字排版微调：更接近参考图的“设计说明块”，不再靠夸张特效 */
.home-v17 .hero-copy-v16 h1 {
  font-size: clamp(72px, 7vw, 92px);
  line-height: .9;
  letter-spacing: -.058em;
}
.home-v17 .ink-title span::after {
  opacity: .34;
  transform: translate(3px, 3px);
}
.home-v17 .ink-lead {
  max-width: 560px;
  line-height: 1.82;
}
.home-v17 .section-heading-v16 h2,
.home-v17 .section-heading-v15 h2 {
  letter-spacing: -.052em;
}
.home-v17 .mist-card {
  overflow: visible;
}
.home-v17 .mist-card::after {
  opacity: .48;
}
.home-v17 .structure-row .mist-card::after {
  opacity: .50;
}
.home-v17 .culture-row-v16 .mist-card::after {
  opacity: .42;
}

@media (max-width: 1080px) {
  .home-v17 .card-decor {
    opacity: .18 !important;
  }
}
@media (max-width: 640px) {
  .home-v17 .card-decor {
    display: none;
  }
}


/* rules34：增强装饰可见度、重新贴边、文字排版整理、中轴文案竖排 */
body.home-v17 {
  background-attachment: scroll;
  background-position: center top;
}

/* 左侧主文案：以排版调整为主 */
.home-v17 .hero-copy-v16 {
  max-width: 610px;
}
.home-v17 .hero-copy-v16 h1 {
  font-size: clamp(74px, 7vw, 94px);
  line-height: .86;
  letter-spacing: -.072em;
  margin: 18px 0 22px;
}
.home-v17 .ink-title span:first-child { margin-left: -.01em; }
.home-v17 .ink-title span:last-child { margin-left: .02em; }
.home-v17 .ink-title span::after {
  opacity: .38;
  transform: translate(4px, 4px);
}
.home-v17 .ink-kicker {
  font-size: 11px;
  letter-spacing: .32em;
  gap: 12px;
}
.home-v17 .ink-lead {
  max-width: 565px;
  font-size: 15px;
  line-height: 1.9;
  letter-spacing: .01em;
  color: rgba(240,235,220,.88);
}
.home-v17 .hero-cta-v16 {
  margin-top: 26px;
  gap: 14px;
}

/* 中轴文案：改成竖排，更大，更像设计节点 */
.home-v17 .duality-copy {
  left: 54.1%;
  top: 42.8%;
  width: 78px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
}
.home-v17 .duality-copy::before { top: -64px; height: 48px; opacity: .78; }
.home-v17 .duality-copy::after { bottom: -60px; height: 44px; opacity: .74; }
.home-v17 .duality-copy .decor-mid {
  width: 84px;
  height: 148px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background-image: url("./assets/ink/user-decor-4.webp");
  background-size: 76% auto;
  opacity: .32;
  z-index: -1;
}
.home-v17 .duality-en {
  font-size: 9px;
  letter-spacing: .28em;
  margin-bottom: 0;
  white-space: nowrap;
}
.home-v17 .duality-copy strong {
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: 29px;
  line-height: 1;
  letter-spacing: .1em;
  color: rgba(255,255,248,.96);
  text-shadow: 0 6px 16px rgba(0,0,0,.24);
}
.home-v17 .duality-copy em {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-size: 10px;
  letter-spacing: .18em;
  color: rgba(243,226,179,.72);
}

/* 英雄卡整体再亮一点，玻璃高光明确一些 */
.home-v17 .ip-glass::after {
  opacity: .52;
}
.home-v17 .ip-dark::after { opacity: .44; }
.home-v17 .ip-light::after { opacity: .64; }
.home-v17 .ip-glass h2 {
  letter-spacing: -.05em;
}
.home-v17 .ip-glass p {
  line-height: 1.72;
}

/* 文字框字阶重整 */
.home-v17 .mist-card {
  min-height: 126px;
  padding: 18px 26px 18px;
}
.home-v17 .mist-card > b {
  font-size: 11px;
  letter-spacing: .28em;
  color: rgba(243,226,179,.98);
}
.home-v17 .mist-card > h3 {
  margin: 9px 0 8px;
  font-size: 23px;
  line-height: 1.06;
  letter-spacing: -.04em;
}
.home-v17 .mist-card > p {
  max-width: 88%;
  font-size: 12.5px;
  line-height: 1.7;
  color: rgba(242,238,228,.75);
}
.home-v17 .structure-row .mist-card > p { max-width: 90%; }
.home-v17 .culture-row-v16 .mist-card > p { max-width: 92%; }
.home-v17 .mist-card::after { opacity: .54; }

/* 装饰图：提高可见度，直接贴在框边做覆盖，而不是漂在旁边 */
.home-v17 .card-decor {
  mix-blend-mode: normal;
  filter: drop-shadow(0 5px 10px rgba(0,0,0,.10));
}

/* 三个结构框：图5 / 图3 / 图2 */
.home-v17 .structure-row .decor-struct-1 {
  width: 188px;
  height: 106px;
  left: -6px;
  top: -18px;
  background-image: url("./assets/ink/user-decor-5.webp");
  opacity: .52;
}
.home-v17 .structure-row .decor-struct-2 {
  width: 138px;
  height: 128px;
  left: 43%;
  top: -26px;
  transform: translateX(-50%) rotate(-4deg);
  background-image: url("./assets/ink/user-decor-3.webp");
  opacity: .44;
}
.home-v17 .structure-row .decor-struct-3 {
  width: 152px;
  height: 124px;
  right: -10px;
  top: -24px;
  transform: rotate(7deg);
  background-image: url("./assets/ink/user-decor-2.webp");
  opacity: .48;
}

/* 四个文化框：图1 / 图7 / 图8 / 图6 */
.home-v17 .culture-row-v16 .decor-culture-1 {
  width: 92px;
  height: 90px;
  left: -8px;
  top: -24px;
  background-image: url("./assets/ink/user-decor-1.webp");
  opacity: .48;
}
.home-v17 .culture-row-v16 .decor-culture-2 {
  width: 96px;
  height: 92px;
  right: -8px;
  top: -24px;
  background-image: url("./assets/ink/user-decor-7.webp");
  opacity: .46;
}
.home-v17 .culture-row-v16 .decor-culture-3 {
  width: 64px;
  height: 126px;
  right: -6px;
  top: -24px;
  background-image: url("./assets/ink/user-decor-8.webp");
  opacity: .46;
}
.home-v17 .culture-row-v16 .decor-culture-4 {
  width: 132px;
  height: 76px;
  right: -10px;
  top: -18px;
  background-image: url("./assets/ink/user-decor-6.webp");
  opacity: .44;
}

/* 结构卡整体位置更像参考图，减少“松散感” */
.home-v17 .structure-row {
  gap: 26px;
}
.home-v17 .structure-row .mist-card:nth-child(2) {
  transform: translateY(4px);
}
.home-v17 .structure-row .mist-card:nth-child(3) {
  transform: translateY(0);
}

@media (max-width: 1080px) {
  .home-v17 .card-decor {
    opacity: .24 !important;
  }
  .home-v17 .duality-copy {
    left: 52.2%;
    top: 42%;
  }
}
@media (max-width: 640px) {
  .home-v17 .duality-copy,
  .home-v17 .card-decor {
    display: none;
  }
}
