@font-face { font-family:"Noto Sans CJK SC"; src:url("./NotoSansCJKsc-Regular.otf") format("opentype"); font-style:normal; font-weight:400; font-display:swap; }
@font-face { font-family:"Noto Sans CJK SC"; src:url("./NotoSansCJKsc-Bold.otf") format("opentype"); font-style:normal; font-weight:700 900; font-display:swap; }

:root { --ink:#122236; --muted:#667386; --line:#dce3ea; --blue:#0877e8; --blue-dark:#075bb4; --pale:#f2f7fc; --warm:#f7f5f0; --paper:#fff; }
* { box-sizing:border-box; }
[hidden] { display:none!important; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
.topbar { position:sticky; z-index:20; top:0; height:68px; padding:0 max(24px,calc((100vw - 1180px)/2)); display:flex; align-items:center; justify-content:flex-end; background:rgba(255,255,255,.94); border-bottom:1px solid rgba(220,227,234,.9); backdrop-filter:blur(12px); }
.brand { display:flex; align-items:center; gap:11px; font-size:14px; font-weight:700; letter-spacing:.02em; }
.brand-mark { width:18px; height:18px; border:5px solid var(--blue); border-radius:50%; position:relative; }
.brand-mark:after { content:""; position:absolute; width:7px; height:7px; background:#58b947; right:-9px; bottom:-7px; border-radius:1px; }
nav { display:flex; gap:30px; font-size:14px; color:#526174; }
nav a:hover { color:var(--blue); }
.hero { min-height:650px; padding:104px max(24px,calc((100vw - 1180px)/2)) 88px; display:grid; grid-template-columns:minmax(0,.94fr) minmax(500px,1.06fr); align-items:center; gap:56px; background:linear-gradient(90deg,rgba(8,119,232,.055) 1px,transparent 1px) 0 0/84px 84px,linear-gradient(rgba(8,119,232,.055) 1px,transparent 1px) 0 0/84px 84px,linear-gradient(135deg,#f8fbff 0%,#fff 54%,#eef6ff 100%); }
.eyebrow,.section-title>p,.delivery-copy>p { margin:0 0 20px; color:var(--blue); font-size:13px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.hero h1 { margin:0; font-size:clamp(52px,5.3vw,76px); line-height:1.08; letter-spacing:-.055em; font-weight:750; }
.hero-copy { max-width:700px; margin:34px 0 0; color:#546478; font-size:19px; line-height:1.9; }
.hero-actions { display:flex; gap:12px; margin-top:42px; }
.button { min-height:46px; padding:0 22px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--line); font-size:14px; font-weight:700; transition:.2s ease; }
.button.primary { color:white; background:var(--blue); border-color:var(--blue); }
.button.primary:hover { background:var(--blue-dark); }
.button.ghost { background:white; }
.button.ghost:hover { border-color:var(--blue); color:var(--blue); }
.product-stage { position:relative; min-height:500px; isolation:isolate; }
.product-stage:before { content:""; position:absolute; inset:6% 3% 4% 1%; z-index:-2; border-radius:48%; background:radial-gradient(circle at 55% 45%,rgba(65,160,244,.2),rgba(219,238,255,.42) 45%,rgba(255,255,255,0) 72%); filter:blur(8px); }
.hero-media { position:absolute; overflow:hidden; background:white; box-shadow:0 28px 70px rgba(25,67,105,.18); will-change:transform; }
.hero-media img { width:100%; height:100%; display:block; object-fit:cover; }
.hero-media-platform { z-index:1; width:78%; height:300px; left:4%; top:62px; border-radius:24px; animation:float-platform 8s ease-in-out infinite; }
.hero-media-platform img { object-position:center top; }
.hero-media-video { z-index:3; width:55%; height:146px; left:2%; bottom:26px; border-radius:18px; animation:float-video 7s ease-in-out infinite; }
.hero-media-interaction { z-index:2; width:31%; height:330px; right:2%; top:24px; border-radius:28px; box-shadow:0 30px 80px rgba(28,67,105,.22); animation:float-phone 9s ease-in-out infinite; }
.hero-media-interaction img { object-position:center top; }
.hero-orbit { position:absolute; z-index:-1; border:1px solid rgba(8,119,232,.16); border-radius:50%; }
.orbit-one { width:420px; height:180px; right:2%; bottom:24px; transform:rotate(-18deg); }
.orbit-two { width:260px; height:260px; left:23%; top:10px; opacity:.5; }
@keyframes float-platform { 0%,100% { transform:translate3d(0,0,0) rotate(-.5deg); } 50% { transform:translate3d(0,-7px,0) rotate(0); } }
@keyframes float-video { 0%,100% { transform:translate3d(0,0,0) rotate(1.2deg); } 50% { transform:translate3d(6px,5px,0) rotate(.2deg); } }
@keyframes float-phone { 0%,100% { transform:translate3d(0,0,0) rotate(1deg); } 50% { transform:translate3d(-5px,-9px,0) rotate(0); } }
.overview,.catalog,.scenes,.buy,.delivery { padding:110px max(24px,calc((100vw - 1180px)/2)); }
.section-title h2 { margin:0; font-size:clamp(17px,2vw,25px); line-height:1.22; letter-spacing:-.035em; font-weight:720; }
.delivery-copy h2 { margin:0; font-size:clamp(34px,4vw,50px); line-height:1.22; letter-spacing:-.035em; font-weight:720; }
.way-showcase { display:grid; grid-template-columns:.92fr 1.08fr; min-height:500px; gap:56px; margin-top:60px; overflow:visible; }
.way-list { padding:4px 0; border-top:1px solid var(--ink); }
.way-card { position:relative; min-height:150px; padding:25px 36px 24px 18px; display:grid; grid-template-columns:38px 1fr 25px; gap:18px; align-items:start; border-bottom:1px solid var(--line); cursor:pointer; transition:transform .35s ease,color .35s ease,padding .35s ease; outline:none; }
.way-card:last-child { border-bottom:0; }
.way-card:before { content:""; position:absolute; width:2px; left:0; top:27px; bottom:27px; background:var(--blue); transform:scaleY(0); transform-origin:center; transition:transform .3s ease; }
.way-card:hover,.way-card.active,.way-card:focus-visible { transform:translateX(8px); padding-left:24px; }
.way-card:hover:before,.way-card.active:before,.way-card:focus-visible:before { transform:scaleY(1); }
.way-card>span { padding-top:7px; color:var(--blue); font-size:12px; font-weight:700; }
.way-card h3 { margin:0 0 8px; font-size:24px; }
.way-card strong { display:block; color:#27445f; font-size:14px; }
.way-card p { margin:13px 0 0; max-width:470px; color:var(--muted); font-size:13px; line-height:1.7; }
.way-card>b { align-self:center; color:#9bb1c7; font-size:18px; font-weight:400; transition:transform .3s ease,color .3s ease; }
.way-card:hover>b,.way-card.active>b { transform:translateX(7px); color:var(--blue); }
.way-preview { padding:4px 0 0; display:flex; flex-direction:column; align-self:stretch; transform:translateX(0); }
.preview-head,.preview-foot { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.preview-head { margin:0 4px 16px; }
.preview-head span { color:var(--blue); font-size:12px; font-weight:700; letter-spacing:.08em; }
.preview-head strong { font-size:15px; }
.preview-media { position:relative; flex:1; min-height:370px; padding:0; overflow:hidden; border-radius:26px; background:radial-gradient(circle at 70% 25%,#f6fbff,#e8f3fd 56%,#f8fbfe); box-shadow:0 30px 80px rgba(37,75,110,.13); animation:preview-in .42s ease both; }
.preview-media img { width:100%; height:100%; display:block; object-fit:cover; }
.platform-preview { object-position:center top; }
.video-wall { height:100%; position:relative; }
.video-wall figure { position:absolute; width:86%; height:54%; margin:0; overflow:hidden; border-radius:20px; box-shadow:0 24px 60px rgba(27,63,96,.2); }
.video-wall figure:first-child { left:5%; top:7%; transform:rotate(-1.2deg); }
.video-wall figure:last-child { right:4%; bottom:7%; transform:rotate(1.2deg); }
.video-wall figure img { width:100%; height:100%; object-fit:cover; }
.interactive-pair { height:100%; position:relative; }
.interactive-pair:before { content:""; position:absolute; width:330px; height:330px; left:50%; top:50%; transform:translate(-50%,-50%); border-radius:50%; background:rgba(68,158,239,.13); filter:blur(2px); }
.interactive-pair figure { position:absolute; width:38%; height:90%; margin:0; overflow:hidden; border-radius:24px; background:white; box-shadow:0 28px 60px rgba(27,64,98,.18); }
.interactive-pair figure:first-child { left:15%; bottom:-5%; transform:rotate(-3deg); }
.interactive-pair figure:last-child { right:14%; top:-5%; transform:rotate(3deg); }
.interactive-pair img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.preview-foot { margin-top:17px; color:#526174; font-size:13px; }
.preview-foot a { color:var(--blue); font-weight:700; }
@keyframes preview-in { from { opacity:.25; transform:translateX(28px); } to { opacity:1; transform:translateX(0); } }
.supply-map { margin-top:60px; border-top:1px solid var(--ink); }
.supply-row { display:grid; grid-template-columns:190px 1fr; align-items:stretch; border-bottom:1px solid var(--line); }
.supply-row>strong { padding:29px 20px 29px 0; display:flex; align-items:center; font-size:17px; }
.supply-row>div { padding:20px 0 20px 28px; border-left:1px solid var(--line); display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.supply-row span { padding:10px 14px; background:var(--pale); color:#244461; font-size:14px; }
.supply-row.support span { background:var(--warm); color:#4d4a43; }
.catalog { background:#f7f9fb; }
.split-title { display:flex; align-items:end; justify-content:space-between; gap:60px; }
.section-note { width:420px; margin:0 0 4px; color:var(--muted); font-size:15px; line-height:1.8; }
.price-groups { margin-top:60px; border-top:1px solid var(--ink); }
.price-group { display:grid; grid-template-columns:300px 1fr; border-bottom:1px solid var(--line); }
.price-group-head { padding:34px 42px 34px 0; display:flex; gap:18px; align-items:flex-start; }
.price-group-head>span { color:var(--blue); font-size:12px; font-weight:700; padding-top:7px; }
.price-group-head h3 { margin:0; font-size:24px; }
.price-group-head p { margin:10px 0 0; color:var(--muted); font-size:13px; line-height:1.6; }
.price-products { border-left:1px solid var(--line); }
.price-product { min-height:128px; padding:27px 0 25px 34px; display:grid; grid-template-columns:1fr 190px; align-items:start; gap:30px; border-bottom:1px solid var(--line); }
.price-product:last-child { border-bottom:0; }
.price-product h4 { margin:0; font-size:18px; }
.price-product p { margin:9px 0 6px; color:#4f6073; font-size:14px; line-height:1.65; }
.price-product small { color:#8a96a5; font-size:12px; }
.price-product>strong { color:var(--blue); font-size:20px; text-align:right; white-space:nowrap; }
.addon-strip { margin-top:26px; min-height:88px; padding:18px 22px; display:grid; grid-template-columns:90px 1fr 100px; gap:20px; align-items:center; background:white; border:1px solid var(--line); }
.addon-strip>span { color:var(--muted); font-size:13px; }
.addon-strip>div { display:flex; flex-wrap:wrap; gap:8px; }
.addon-strip strong { padding:8px 10px; background:var(--pale); color:#35516a; font-size:12px; font-weight:600; }
.addon-strip em { color:var(--blue); font-size:13px; font-style:normal; font-weight:700; text-align:right; }
.product-list { margin-top:60px; border-top:1px solid var(--ink); }
.product { min-height:210px; padding:34px 0; display:grid; grid-template-columns:310px minmax(220px,.8fr) minmax(360px,1.2fr); gap:45px; align-items:start; border-bottom:1px solid var(--line); }
.product-head { display:grid; grid-template-columns:42px 1fr; gap:12px; align-items:start; }
.product-head>span { color:var(--blue); font-size:12px; font-weight:700; padding-top:7px; }
.product h3 { margin:0; font-size:24px; line-height:1.35; }
.product-line { margin:0; font-size:17px; line-height:1.75; color:#354a61; }
.product dl { margin:0; }
.product dl>div { display:grid; grid-template-columns:75px 1fr; gap:14px; margin-bottom:11px; font-size:13px; line-height:1.65; }
.product dt { color:#8a96a5; }
.product dd { margin:0; color:#435367; }
.scene-table { margin-top:60px; border-top:1px solid var(--ink); }
.scene-row { min-height:76px; display:grid; grid-template-columns:.8fr 1.5fr .7fr; align-items:center; gap:30px; border-bottom:1px solid var(--line); font-size:14px; }
.scene-row strong { font-size:16px; }
.scene-row span { line-height:1.6; color:#4d5d70; }
.scene-header { min-height:54px; font-size:12px; font-weight:700; color:#8a96a5; }
.scene-header span { color:#8a96a5; }
.buy { background:#f7f9fb; }
.buy-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:60px; border-top:1px solid var(--ink); border-bottom:1px solid var(--line); }
.buy-grid article { min-height:300px; padding:34px 32px 30px; border-right:1px solid var(--line); }
.buy-grid article:first-child { padding-left:0; }
.buy-grid article:last-child { border-right:0; }
.buy-grid span { color:var(--blue); font-size:12px; font-weight:700; }
.buy-grid h3 { margin:15px 0 22px; font-size:20px; }
.buy-grid p { min-height:100px; margin:0; color:var(--muted); font-size:15px; line-height:1.8; }
.buy-grid strong { font-size:14px; }
.price-strip { min-height:90px; display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.price-strip>span { margin-right:auto; color:var(--muted); font-size:13px; }
.price-strip strong { font-size:15px; }
.price-strip i { color:#9ba6b3; font-style:normal; }
.delivery { background:var(--paper); display:grid; grid-template-columns:.85fr 1.15fr; column-gap:100px; }
.delivery ul { margin:0; padding:0; list-style:none; border-top:1px solid var(--ink); }
.delivery li { padding:18px 0; border-bottom:1px solid var(--line); color:#42546a; font-size:15px; }
.delivery-flow { grid-column:1/-1; margin-top:70px; padding:28px 30px; display:flex; align-items:center; justify-content:space-between; background:var(--pale); font-size:14px; }
.delivery-flow b { color:var(--blue); font-weight:400; }
footer { padding:75px max(24px,calc((100vw - 1180px)/2)); display:flex; align-items:end; justify-content:space-between; gap:40px; color:white; background:#0877e8; }
footer p { margin:0 0 12px; color:#ddecff; font-size:14px; }
footer h2 { max-width:780px; margin:0; font-size:clamp(26px,3.2vw,42px); line-height:1.35; letter-spacing:-.03em; }
footer .button.primary { border-color:rgba(255,255,255,.6); white-space:nowrap; }
footer .button.primary:hover { background:white; color:var(--blue); }

/* Compact product presentation */
.catalog,.scenes,.buy { padding:88px max(24px,calc((100vw - 1180px)/2)); }
.compact-title { max-width:720px; }
.compact-title>p { margin-bottom:14px; }
.product-tabs { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin-top:42px; }
.product-tabs button { min-width:0; min-height:104px; padding:18px 16px; display:flex; flex-direction:column; align-items:flex-start; color:var(--ink); text-align:left; border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.78); cursor:pointer; transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease; }
.product-tabs button:hover,.product-tabs button.active { transform:translateY(-3px); border-color:rgba(8,119,232,.45); background:white; box-shadow:0 16px 38px rgba(31,72,108,.1); }
.product-tabs button>span { color:var(--blue); font-size:11px; font-weight:700; }
.product-tabs button strong { display:block; margin-top:9px; font-size:15px; line-height:1.35; }
.product-tabs button small { display:block; margin-top:6px; color:var(--muted); font-size:12px; line-height:1.5; }
/* margin-top:auto 把资费顶到卡片底部：5 个标签由 grid 拉成等高，价格就能对齐成一行 */
.product-tabs button em { margin-top:auto; padding-top:12px; color:var(--blue); font-size:13px; font-style:normal; font-weight:700; white-space:nowrap; }
.product-panel { min-height:410px; margin-top:18px; display:grid; grid-template-columns:1.08fr .92fr; overflow:hidden; border:1px solid var(--line); border-radius:28px; background:white; box-shadow:0 28px 70px rgba(31,72,108,.09); animation:panel-in .38s ease both; }
.product-visual { position:relative; min-height:410px; overflow:hidden; background:radial-gradient(circle at 70% 30%,#f8fcff,#e5f1fc 62%,#f6fafe); }
.product-visual>img { position:absolute; display:block; object-fit:cover; box-shadow:0 22px 54px rgba(24,62,96,.18); }
/* 0/1/4 单张横版，2 双横版错位，3 双竖版对倾 */
.product-visual-0>img,.product-visual-1>img,.product-visual-4>img { width:84%; height:78%; left:8%; top:11%; border-radius:28px; object-position:center; transform:rotate(-1deg); }
.product-visual-2>img:first-child { width:80%; height:56%; left:6%; top:8%; border-radius:22px; transform:rotate(-1.5deg); }
.product-visual-2>img:last-child { width:74%; height:52%; right:5%; bottom:7%; border-radius:22px; transform:rotate(1.5deg); }
.product-visual-3>img:first-child { width:42%; height:88%; left:12%; bottom:-3%; border-radius:28px; object-position:center top; transform:rotate(-3deg); }
.product-visual-3>img:last-child { width:42%; height:88%; right:12%; top:-3%; border-radius:28px; object-position:center top; transform:rotate(3deg); }
.product-options { padding:28px 30px; }
.panel-head { min-height:34px; display:flex; justify-content:space-between; gap:20px; color:var(--muted); font-size:12px; }
.panel-head a { color:var(--blue); font-weight:700; }
.product-option { border-top:1px solid var(--line); }
.product-option summary { min-height:68px; display:grid; grid-template-columns:1fr auto; gap:20px; align-items:center; list-style:none; cursor:pointer; }
.product-option summary::-webkit-details-marker { display:none; }
.product-option summary strong { font-size:16px; }
.product-option summary em { color:var(--blue); font-size:16px; font-style:normal; font-weight:700; white-space:nowrap; }
.product-option summary strong:after { content:"＋"; margin-left:10px; color:#9aa9b8; font-size:13px; font-weight:400; }
.product-option[open] summary strong:after { content:"－"; }
.product-option>div { padding:0 90px 16px 0; animation:detail-in .25s ease both; }
.product-option p { margin:0 0 5px; color:#526174; font-size:13px; line-height:1.6; }
.product-option ul { margin:0 0 8px; padding-left:17px; color:#526174; font-size:13px; line-height:1.6; }
.product-option li { margin-bottom:3px; }
.product-option li::marker { color:#9aa9b8; }
.product-option small { color:#8a96a5; font-size:11px; }
.price-note { margin:16px 0 0; color:#8a96a5; font-size:11px; }
.scenes { background:white; }
.scene-explorer { min-height:430px; margin-top:42px; display:grid; grid-template-columns:.72fr 1.28fr; gap:18px; }
.scene-tabs { padding:8px 0; border-top:1px solid var(--ink); }
.scene-tabs button { position:relative; width:100%; min-height:66px; padding:0 16px; display:grid; grid-template-columns:34px 1fr 20px; gap:12px; align-items:center; color:var(--ink); text-align:left; border:0; border-bottom:1px solid var(--line); background:transparent; cursor:pointer; transition:padding .25s ease,color .25s ease,background .25s ease; }
.scene-tabs button:before { content:""; position:absolute; left:0; top:14px; bottom:14px; width:2px; background:var(--blue); transform:scaleY(0); transition:transform .25s ease; }
.scene-tabs button:hover,.scene-tabs button.active { padding-left:22px; color:var(--blue); background:linear-gradient(90deg,rgba(8,119,232,.06),transparent); }
.scene-tabs button:hover:before,.scene-tabs button.active:before { transform:scaleY(1); }
.scene-tabs button span { color:#8ea0b2; font-size:10px; }
.scene-tabs button strong { font-size:15px; }
.scene-tabs button b { color:#9aa9b8; font-weight:400; }
.scene-preview { position:relative; min-height:430px; overflow:hidden; border-radius:28px; background:#eaf4fd; box-shadow:0 28px 72px rgba(31,72,108,.13); animation:panel-in .38s ease both; }
.scene-preview>img { width:100%; height:100%; display:block; object-fit:cover; object-position:center top; transition:transform .7s ease; }
.scene-preview:hover>img { transform:scale(1.025); }
.scene-caption { position:absolute; inset:auto 0 0; z-index:2; padding:92px 32px 28px; color:white; background:linear-gradient(transparent,rgba(5,22,39,.88)); }
.scene-caption>span { font-size:12px; color:#bcdcff; }
.scene-caption h3 { margin:8px 0 6px; font-size:28px; }
.scene-caption p { margin:0; color:#d4dfeb; font-size:13px; }
.scene-play { position:absolute; right:30px; bottom:31px; padding:10px 16px; display:inline-flex; align-items:center; gap:7px; color:white; font-family:inherit; font-size:12px; font-weight:700; border:1px solid rgba(255,255,255,.55); border-radius:999px; background:rgba(255,255,255,.1); cursor:pointer; transition:.2s ease; }
.scene-play:before { content:""; width:0; height:0; border-style:solid; border-width:5px 0 5px 8px; border-color:transparent transparent transparent white; }
.scene-play:hover { color:var(--ink); background:white; }
.scene-play:hover:before { border-left-color:var(--ink); }
/* 播放器直接盖在预览框里。预览图用 visibility 藏而不是 display:none：
   框只有 min-height，靠图撑高，display:none 会让框塌回 min-height、布局跳一下 */
.scene-video { position:absolute; inset:0; z-index:3; width:100%; height:100%; display:block; background:#04121f; object-fit:contain; }
.scene-preview[data-playing]>img { visibility:hidden; }
.scene-preview[data-playing] .scene-caption { display:none; }
.scene-close { position:absolute; z-index:4; right:14px; top:14px; width:34px; height:34px; display:grid; place-items:center; color:white; font-family:inherit; font-size:20px; line-height:1; border:0; border-radius:50%; background:rgba(5,22,39,.62); cursor:pointer; transition:.2s ease; }
.scene-close:hover { background:rgba(5,22,39,.9); }
.scene-fallback { grid-column:1/-1; margin:18px 0 0; padding:12px 16px; border:1px solid #f0c8c4; border-radius:12px; background:#fdf4f3; color:#a33227; font-size:13px; }
.scene-fallback a { font-weight:700; text-decoration:underline; }
.scene-fallback-note { margin-left:6px; font-style:normal; color:#7a6a43; }
/* 04 展厅、06 文旅用的是竖版截图（0.56:1、0.45:1），在 1.73:1 的框里 cover 只能露出顶部一条。
   改成整图完整显示（高度与另外 4 个一致），两侧空出来的地方用同一张图模糊垫底补满。
   用 position:absolute+inset:0 定框：.scene-preview 只有 min-height 没有 height，
   靠 height:100% 让图自己算宽度在部分引擎下解析不出来，会退回原始像素尺寸铺满并被裁掉 */
.scene-preview.is-portrait:before { content:""; position:absolute; inset:-6%; z-index:0; background:var(--shot,none) center/cover no-repeat; filter:blur(20px) brightness(.9) saturate(1.05); }
.scene-preview.is-portrait>img { position:absolute; inset:0; z-index:1; width:100%; height:100%; margin:0; object-fit:contain; object-position:center; }
.buy { background:#f7f9fb; }
.buy-grid { margin-top:42px; }
.buy-grid article { min-height:175px; padding:28px 30px; }
.buy-grid article:first-child { padding-left:0; }
.buy-grid h3 { margin:12px 0 14px; font-size:20px; }
.buy-grid p { min-height:0; margin:0; font-size:13px; }
.custom-service { margin-top:22px; border:1px solid var(--line); border-radius:18px; background:white; }
.custom-service summary { min-height:72px; padding:0 24px; display:flex; align-items:center; justify-content:space-between; gap:30px; list-style:none; cursor:pointer; }
.custom-service summary::-webkit-details-marker { display:none; }
.custom-service summary span { font-size:17px; font-weight:700; }
.custom-service summary strong { color:var(--blue); font-size:13px; }
.custom-service>div { padding:0 24px 22px; display:flex; flex-wrap:wrap; gap:8px; animation:detail-in .25s ease both; }
.custom-service>div span { padding:9px 12px; color:#35516a; background:var(--pale); border-radius:999px; font-size:12px; }
.inquiry { margin-top:22px; padding:26px 24px; border:1px solid var(--line); border-radius:18px; background:white; }
.inquiry-head { display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
.inquiry-head span { font-size:17px; font-weight:700; }
.inquiry-head strong { color:var(--muted); font-size:13px; font-weight:400; }
.inquiry-grid { margin-top:20px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.inquiry-grid label { display:flex; flex-direction:column; gap:7px; color:#35516a; font-size:12px; }
.inquiry-grid .inquiry-wide { grid-column:1/-1; }
.inquiry-grid input,.inquiry-grid select,.inquiry-grid textarea { padding:12px 14px; color:var(--ink); border:1px solid var(--line); border-radius:12px; background:var(--paper); font:inherit; font-size:14px; transition:.2s ease; }
.inquiry-grid textarea { resize:vertical; }
.inquiry-grid input:focus,.inquiry-grid select:focus,.inquiry-grid textarea:focus { outline:none; border-color:var(--blue); box-shadow:0 0 0 3px rgba(8,119,232,.12); }
.inquiry-grid input[aria-invalid="true"] { border-color:#d5453b; }
.inquiry-actions { margin-top:20px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.inquiry-actions button[disabled] { opacity:.6; cursor:progress; }
.inquiry-status { margin:0; font-size:13px; color:var(--muted); }
.inquiry-status[data-state="ok"] { color:#1a7f4b; }
.inquiry-status[data-state="error"] { color:#d5453b; }
@keyframes panel-in { from { opacity:.45; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes detail-in { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:translateY(0); } }
@media (max-width:900px) {
  nav { display:none; }
  .hero { grid-template-columns:1fr; gap:54px; padding-top:78px; }
  .product-stage { width:100%; max-width:660px; min-height:480px; }
  .split-title { align-items:start; flex-direction:column; gap:22px; }
  .section-note { width:auto; max-width:600px; }
  .way-showcase { grid-template-columns:1fr; }
  .way-card { transform:none!important; padding-right:22px; }
  .way-preview { min-height:470px; margin-left:0; border-top:1px solid var(--line); border-left:0; }
  .price-group { grid-template-columns:230px 1fr; }
  .product { grid-template-columns:1fr 1fr; gap:24px 40px; }
  .product dl { grid-column:2; }
  .delivery { grid-template-columns:1fr; gap:50px; }
  .delivery-flow { grid-column:auto; }
}
@media (max-width:640px) {
  .topbar { height:60px; }
  .brand { font-size:13px; }
  .hero { min-height:0; padding-top:68px; padding-bottom:66px; }
  .hero h1 { font-size:46px; }
  .hero-copy { font-size:16px; }
  .hero-actions { flex-direction:column; align-items:stretch; }
  .product-stage { min-height:385px; }
  .hero-media-platform { width:82%; height:225px; left:2%; top:48px; border-radius:18px; }
  .hero-media-video { width:60%; height:108px; left:0; bottom:25px; border-radius:14px; }
  .hero-media-interaction { width:34%; height:250px; right:0; top:20px; border-radius:22px; }
  .overview,.catalog,.scenes,.buy,.delivery { padding-top:76px; padding-bottom:76px; }
  .supply-row { grid-template-columns:1fr; }
  .supply-row>strong { padding:22px 0 8px; }
  .supply-row>div { padding:12px 0 22px; border-left:0; }
  .price-group { grid-template-columns:1fr; }
  .price-group-head { padding:28px 0 20px; }
  .price-products { border-left:0; }
  .price-product { padding:22px 0; grid-template-columns:1fr; gap:14px; }
  .price-product>strong { text-align:left; }
  .addon-strip { grid-template-columns:1fr; }
  .addon-strip em { text-align:left; }
  .product { grid-template-columns:1fr; gap:18px; }
  .product dl { grid-column:auto; }
  .scene-header { display:none; }
  .scene-row { grid-template-columns:1fr; gap:8px; padding:22px 0; }
  .buy-grid { grid-template-columns:1fr; }
  .buy-grid article,.buy-grid article:first-child { min-height:0; padding:28px 0; border-right:0; border-bottom:1px solid var(--line); }
  .buy-grid p { min-height:0; margin-bottom:24px; }
  .way-showcase { overflow:visible; }
  .way-list { padding-bottom:0; }
  .way-card { grid-template-columns:28px 1fr 18px; gap:12px; padding:22px 10px; }
  .way-card p { font-size:12px; }
  .way-preview { min-height:0; padding-top:18px; }
  .preview-media { min-height:260px; }
  .video-wall { min-height:250px; }
  .interactive-pair figure { width:42%; border-radius:16px; }
  .preview-foot { align-items:flex-start; flex-direction:column; gap:8px; }
  .delivery-flow { align-items:flex-start; flex-direction:column; gap:10px; }
  .delivery-flow b { transform:rotate(90deg); margin-left:22px; }
  footer { align-items:stretch; flex-direction:column; }
}
/* 产品区改为两 tab：价格隐去，AI智作平台，＋ 凸显 */
.product-tabs { grid-template-columns:repeat(2,1fr); }
.product-tabs button { min-height:118px; justify-content:center; }
.product-tabs button>span { font-size:12px; }
.product-tabs button strong { font-size:18px; margin-top:10px; }
.product-tabs button small { font-size:13px; margin-top:8px; }
.product-visual-single>img { width:84%; height:82%; left:8%; top:9%; border-radius:26px; object-fit:cover; object-position:center top; transform:rotate(-1deg); }
.product-ribbon { position:absolute; z-index:2; top:22px; left:22px; padding:8px 14px; color:#fff; font-size:12px; font-weight:700; letter-spacing:.04em; border-radius:999px; background:var(--blue); box-shadow:0 8px 20px rgba(8,119,232,.35); }
.pgroup-head { min-height:34px; display:flex; align-items:baseline; gap:14px; color:var(--muted); font-size:12px; }
.pgroup-head strong { color:var(--blue); font-size:14px; }
.pgroup-head-mt { margin-top:34px; padding-top:22px; border-top:1px solid var(--line); }
.pitem { border-top:1px solid var(--line); padding:22px 0 6px; }
.pitem header { display:flex; align-items:flex-start; gap:14px; cursor:pointer; }
/* 默认收起的子项（如简易版/完整版）：只留标题，点标题展开 */
.pitem.collapsed { padding-bottom:22px; }
.pitem.collapsed > p,
.pitem.collapsed > ul,
.pitem.collapsed > .pitem-desc,
.pitem.collapsed > .pitem-foot { display:none; }
.pitem.collapsed .plus { transform:rotate(45deg); }
.pitem h4 { margin:0; font-size:17px; line-height:1.5; }
.plus { flex:none; width:28px; height:28px; display:inline-grid; place-items:center; color:#fff; font-size:17px; font-weight:700; line-height:1; border-radius:9px; background:var(--blue); box-shadow:0 6px 16px rgba(8,119,232,.35); transition:.2s ease; }
.pitem:hover .plus { transform:rotate(90deg); background:var(--blue-dark); }
.pitem p { margin:10px 0 6px; color:#526174; font-size:13px; line-height:1.7; }
.pitem > ul { margin:4px 0 0; padding-left:17px; color:#526174; font-size:13px; line-height:1.7; }
.pitem li { margin-bottom:3px; }
.pitem li::marker { color:#9aa9b8; }
.pitem-desc { margin:8px 0 2px; }
.pitem-foot { margin-top:10px; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; color:var(--muted); font-size:12px; }
.pitem-foot a { color:var(--blue); font-weight:700; }
.contact-note { margin:20px 0 4px; color:#8a96a5; font-size:11px; }
/* 场景轮播控件（demo01 多个视频） */
.scene-car { position:absolute; z-index:4; left:16px; top:16px; display:flex; align-items:center; gap:8px; color:#fff; }
.scene-car button { width:30px; height:30px; display:grid; place-items:center; color:#fff; font:inherit; font-size:15px; line-height:1; border:1px solid rgba(255,255,255,.5); border-radius:50%; background:rgba(5,22,39,.55); cursor:pointer; transition:.2s ease; }
.scene-car button:hover { background:rgba(5,22,39,.9); }
.scene-car span { padding:4px 10px; font-size:12px; border-radius:999px; background:rgba(5,22,39,.55); white-space:nowrap; }

@media (max-width:900px) {
  .product-tabs { grid-template-columns:repeat(2,1fr); }
  .product-panel { grid-template-columns:1fr; }
  .product-visual { min-height:360px; }
  .scene-explorer { grid-template-columns:1fr; }
  .scene-tabs { display:grid; grid-template-columns:1fr 1fr; border-top:0; gap:8px; }
  .scene-tabs button { min-height:58px; border:1px solid var(--line); border-radius:12px; }
  .scene-tabs button:before { display:none; }
  .scene-preview { min-height:420px; }
}
@media (max-width:640px) {
  .catalog,.scenes,.buy { padding-top:68px; padding-bottom:68px; }
  .product-tabs { margin-top:30px; grid-template-columns:1fr; }
  .product-tabs button { min-height:0; padding:16px; }
  /* 单列时卡片没有等高约束，资费不用再顶到底部 */
  .product-tabs button em { margin-top:8px; padding-top:0; }
  .product-panel { min-height:0; border-radius:20px; }
  .product-visual { min-height:260px; }
  .product-options { padding:20px; }
  .product-option>div { padding-right:0; }
  .scene-explorer { margin-top:30px; }
  .scene-tabs { grid-template-columns:1fr; }
  .scene-preview { min-height:360px; border-radius:20px; }
  .scene-caption { padding:82px 20px 20px; }
  .scene-caption h3 { font-size:24px; }
  .scene-play { position:static; display:inline-flex; margin-top:16px; }
  .buy-grid article,.buy-grid article:first-child { padding:22px 0; }
  .custom-service summary { padding:0 18px; }
  .inquiry { padding:20px 18px; }
  .inquiry-grid { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
