diff --git a/src/assets/img/invest - 副本.png b/src/assets/img/invest - 副本.png new file mode 100644 index 0000000..14d3099 Binary files /dev/null and b/src/assets/img/invest - 副本.png differ diff --git a/src/assets/img/invest.png b/src/assets/img/invest.png index 14d3099..88b1e35 100644 Binary files a/src/assets/img/invest.png and b/src/assets/img/invest.png differ diff --git a/src/components/CaseLogo.vue b/src/components/CaseLogo.vue index 2bb4524..3ef4317 100644 --- a/src/components/CaseLogo.vue +++ b/src/components/CaseLogo.vue @@ -1,41 +1,10 @@ + + diff --git a/src/components/Footer.vue b/src/components/Footer.vue index 405b486..dd56926 100644 --- a/src/components/Footer.vue +++ b/src/components/Footer.vue @@ -1,23 +1,64 @@ diff --git a/src/components/Header.vue b/src/components/Header.vue index 9c78c11..6377ff1 100644 --- a/src/components/Header.vue +++ b/src/components/Header.vue @@ -1,36 +1,52 @@ + - diff --git a/src/views/callus.vue b/src/views/callus.vue index 31c154f..837b37a 100644 --- a/src/views/callus.vue +++ b/src/views/callus.vue @@ -1,498 +1,110 @@ + - diff --git a/src/views/less/home-page.less b/src/views/less/home-page.less index 5d77e73..5bcbf24 100644 --- a/src/views/less/home-page.less +++ b/src/views/less/home-page.less @@ -1,594 +1,1853 @@ -.home-page { +.site-page { overflow-x: hidden; - .banner { - text-align: center; - padding: 200px 20px 180px; - background: url('../img/zhichou-banner.jpg') center no-repeat; - background-size: cover; - position: relative; - overflow: hidden; - min-height: 500px; - display: flex; - align-items: center; - justify-content: center; - - // 增强的渐变遮罩 - .banner-overlay { - position: absolute; - top: 0; left: 0; right: 0; bottom: 0; - background: linear-gradient(135deg, - rgba(13,38,56,0.75) 0%, - rgba(53,163,186,0.6) 50%, - rgba(13,38,56,0.75) 100%); - pointer-events: none; - z-index: 1; - } - - .banner-content { - position: relative; - z-index: 2; - max-width: 1200px; - margin: 0 auto; - padding: 40px 30px; - background: rgba(13, 38, 56, 0.4); - border-radius: 20px; - backdrop-filter: blur(10px); - border: 1px solid rgba(255, 255, 255, 0.1); - - h1 { - color: #fff; - font-size: 56px; - font-weight: 700; - margin: 0 0 40px; - text-shadow: 0 4px 20px rgba(0,0,0,0.4); - letter-spacing: 2px; - } - - .banner-slogans { - display: flex; - flex-wrap: nowrap; - justify-content: center; - gap: 15px; - margin: 30px 0; - - h2 { - color: #fff; - font-size: 24px; - font-weight: 500; - margin: 0; - padding: 12px 20px; - background: rgba(255,255,255,0.15); - border-radius: 8px; - backdrop-filter: blur(10px); - text-shadow: 0 2px 8px rgba(0,0,0,0.3); - transition: all 0.3s ease; - white-space: nowrap; - - &:hover { - background: rgba(255,255,255,0.25); - transform: translateY(-2px); - } - } - } - - .banner-subtitle { - color: rgba(255,255,255,0.95); - font-size: 18px; - margin-top: 40px; - text-shadow: 0 2px 10px rgba(0,0,0,0.3); - letter-spacing: 1px; - } - } - } - .nav { - padding-left: 0; - list-style: none; - max-width: 1400px; - margin: 20px auto 0 auto; - display: flex; - justify-content: center; - flex-wrap: wrap; - a { - margin: 17px; - width: 280px; - color: #32ADC6; - text-align: center; - display: block; - padding: 60px 0 40px 0; - border: 1px solid #32ADC6; - position: relative; - cursor: pointer; - transition: all 0.3s ease; - border-radius: 12px; - - &:hover { - text-decoration: none; - transform: translateY(-5px); - box-shadow: 0 10px 30px rgba(0,0,0,0.15); - .watermark { - color: #fff !important; - } - .zui-logo { - display: none; - } - .zui-logo.mobile { - display: block; - } - } - &.zhichou { - color: #35A3BA; - border-color: #35A3BA; - } - &.zhichou:hover { - color: #fff; - background: linear-gradient(135deg, #35A3BA 0%, #2891A6 100%); - border-color: #35A3BA; - } - &.health { - color: #6AC2B5; - border-color: #6AC2B5; - } - &.health:hover { - color: #fff; - background: linear-gradient(135deg, #6AC2B5 0%, #4FAD9E 100%); - border-color: #6AC2B5; - } - &.imaotai { - color: #9B59B6; - border-color: #9B59B6; - } - &.imaotai:hover { - color: #fff; - background: linear-gradient(135deg, #9B59B6 0%, #8E44AD 100%); - border-color: #9B59B6; - } - &.iot { - color: #FF6B35; - border-color: #FF6B35; - } - &.iot:hover { - color: #fff; - background: linear-gradient(135deg, #FF6B35 0%, #E85A2A 100%); - border-color: #FF6B35; - } - .watermark { - top: 0; - left: 0; - opacity: .1; - font-size: 70px; - line-height: 70px; - position: absolute; - &.blue { - color: #35A3BA; - } - &.green { - color: #6AC2B5; - } - &.purple { - color: #9B59B6; - } - &.orange { - color: #FF6B35; - } - } - .zui-logo { - display: block; - margin: 0 auto; - } - .zui-logo.mobile { - display: none; - } - h3 { - font-size: 24px; - margin-top: 15px; - } - p { - font-size: 18px; - margin-top: 14px; - } - } - } - .join-zhichou { - color: #32ADC6; - font-size: 16px; - text-align: center; - width: 100%; - display: block; - margin: 30px 0 165px 0; - } - .service { - padding: 50px 20px 40px; - text-align: center; - background: linear-gradient(180deg, #f8fffe 0%, #fff 100%); - position: relative; - overflow: hidden; - - // 背景装饰 - &::before { - content: ''; - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); - width: 800px; - height: 800px; - background: radial-gradient(circle, rgba(53, 163, 186, 0.03) 0%, transparent 70%); - pointer-events: none; - } - - .service-content { - position: relative; - z-index: 1; - } - - h1 { - color: #35A3BA; - font-size: 38px; - line-height: 1.6; - margin: 0; - font-weight: 600; - } - - h3 { - color: #666; - font-size: 20px; - margin-top: 20px; - font-weight: 400; - letter-spacing: 0.5px; - } - - .service-highlight { - display: inline-flex; - align-items: center; - gap: 10px; - margin-top: 40px; - padding: 16px 32px; - background: linear-gradient(135deg, #FF6B35 0%, #FF8C61 100%); - border-radius: 50px; - box-shadow: 0 4px 15px rgba(255, 107, 53, 0.3); - transition: all 0.3s ease; - - .highlight-icon { - font-size: 24px; - animation: sparkle 2s infinite; - } - - .highlight-text { - color: #fff; - font-size: 20px; - font-weight: 600; - letter-spacing: 1px; - } - - &:hover { - transform: scale(1.05); - box-shadow: 0 6px 20px rgba(255, 107, 53, 0.4); - } - } - } - - @keyframes sparkle { - 0%, 100% { transform: scale(1); opacity: 1; } - 50% { transform: scale(1.2); opacity: 0.8; } + color: #e8fbff; + background: + radial-gradient(circle at 20% 8%, rgba(50, 214, 255, .14), transparent 28%), + radial-gradient(circle at 82% 18%, rgba(89, 255, 198, .1), transparent 24%), + linear-gradient(180deg, #030914 0%, #06111f 48%, #020812 100%); + + button { + font-family: inherit; } - .apply-hr { + a { + text-decoration: none; + } +} + +.tech-grid { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + background-image: + linear-gradient(rgba(94, 224, 255, .085) 1px, transparent 1px), + linear-gradient(90deg, rgba(94, 224, 255, .085) 1px, transparent 1px); + background-size: 54px 54px; + opacity: .86; + animation: gridMove 24s linear infinite; +} + +.scan-line { + position: absolute; + left: 0; + right: 0; + top: 18%; + height: 180px; + pointer-events: none; + background: linear-gradient(180deg, transparent, rgba(107, 238, 255, .08), transparent); + animation: scanMove 7s ease-in-out infinite; +} + +.eyebrow, +.section-title > span, +.architecture-copy > span, +.site-cta span, +.sub-hero__content > span, +.panel-tag, +.qr-card span, +.download-card__content > span, +.resource-contact span { + display: inline-block; + color: #6be8ff; + font-size: 12px; + font-weight: 800; + letter-spacing: 3px; + text-transform: uppercase; +} + +.hero-section { + min-height: calc(100vh - 76px); + position: relative; + overflow: hidden; + background: + radial-gradient(circle at 18% 28%, rgba(82, 228, 255, .16), transparent 30%), + radial-gradient(circle at 68% 38%, rgba(142, 255, 207, .09), transparent 24%), + linear-gradient(105deg, rgba(2, 8, 18, .98) 0%, rgba(3, 22, 40, .9) 52%, rgba(1, 7, 18, .98) 100%); + + &:after { + content: ''; + position: absolute; + left: 0; + right: 0; + bottom: 0; + height: 170px; + background: linear-gradient(180deg, transparent, #030914); + } +} + +.hero-shell { + width: calc(100% - 48px); + max-width: 1240px; + min-height: calc(100vh - 76px); + margin: 0 auto; + padding: 58px 0 82px; + position: relative; + z-index: 1; + display: grid; + grid-template-columns: minmax(0, 1fr) 540px; + gap: 64px; + align-items: center; +} + +.hero-copy h1 { + margin: 18px 0 22px; + color: #ffffff; + font-size: 78px; + line-height: 1.02; + font-weight: 900; + letter-spacing: 0; + text-shadow: 0 0 42px rgba(72, 225, 255, .28); +} + +.hero-lead { + max-width: 680px; + margin: 0; + color: #c7ddeb; + font-size: 20px; + line-height: 1.9; +} + +.hero-actions { + display: flex; + gap: 16px; + margin-top: 36px; + flex-wrap: wrap; +} + +.action-primary, +.action-secondary, +.site-cta button, +.resource-contact button, +.contact-info-panel button { + height: 50px; + padding: 0 28px; + position: relative; + overflow: hidden; + border-radius: 8px; + border: 1px solid rgba(107, 232, 255, .48); + cursor: pointer; + font-size: 15px; + font-weight: 800; + letter-spacing: .5px; + transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease; +} + +.action-primary, +.site-cta button, +.resource-contact button, +.contact-info-panel button { + color: #02111f; + background: linear-gradient(135deg, #6be8ff 0%, #8effcf 100%); + box-shadow: 0 20px 42px rgba(54, 218, 255, .28); +} + +.action-secondary { + color: #eaffff; + background: rgba(255, 255, 255, .06); + backdrop-filter: blur(14px); +} + +.action-primary:hover, +.action-secondary:hover, +.site-cta button:hover, +.resource-contact button:hover, +.contact-info-panel button:hover { + transform: translateY(-2px); + box-shadow: 0 24px 56px rgba(54, 218, 255, .28); +} + +.metric-strip { + max-width: 610px; + margin-top: 48px; + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 14px; + + div { + min-height: 94px; + padding: 20px 18px; + border: 1px solid rgba(107, 232, 255, .2); + border-radius: 8px; + background: linear-gradient(180deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .025)); + box-shadow: 0 16px 44px rgba(0, 0, 0, .18); + } + + strong { + display: block; color: #fff; - text-align: center; - background: linear-gradient(135deg, #1e3c72 0%, #2a5298 50%, #7e22ce 100%); - padding: 60px 20px; - position: relative; - overflow: hidden; - - // 动态网格背景 - &::before { + font-size: 32px; + line-height: 1; + text-shadow: 0 0 22px rgba(107, 232, 255, .35); + } + + span { + display: block; + margin-top: 10px; + color: #95b6c6; + font-size: 13px; + } +} + +.hero-console { + height: 590px; + position: relative; +} + +.console-frame { + width: 530px; + position: absolute; + right: 0; + top: 44px; + padding: 18px; + border: 1px solid rgba(107, 232, 255, .28); + border-radius: 8px; + background: + linear-gradient(145deg, rgba(6, 26, 46, .92), rgba(2, 10, 24, .96)); + box-shadow: + 0 34px 110px rgba(0, 0, 0, .48), + 0 0 60px rgba(42, 211, 255, .12), + inset 0 1px 0 rgba(255, 255, 255, .1); + backdrop-filter: blur(18px); + + &:before, + &:after { + content: ''; + position: absolute; + width: 68px; + height: 68px; + border-color: rgba(109, 232, 255, .6); + border-style: solid; + pointer-events: none; + } + + &:before { + top: -1px; + left: -1px; + border-width: 1px 0 0 1px; + } + + &:after { + right: -1px; + bottom: -1px; + border-width: 0 1px 1px 0; + } +} + +.console-head { + height: 32px; + display: flex; + align-items: center; + gap: 7px; + + span { + width: 8px; + height: 8px; + border-radius: 50%; + background: #6be8ff; + box-shadow: 0 0 14px rgba(107, 232, 255, .8); + } + + b { + margin-left: auto; + color: #7eefff; + font-size: 11px; + letter-spacing: 2px; + } +} + +.command-layout { + margin-top: 10px; + display: grid; + grid-template-columns: minmax(0, 1fr) 156px; + gap: 14px; +} + +.ops-map { + height: 310px; + position: relative; + overflow: hidden; + border: 1px solid rgba(107, 232, 255, .16); + border-radius: 8px; + background: + radial-gradient(circle at 50% 50%, rgba(81, 228, 255, .16), transparent 34%), + linear-gradient(rgba(107, 232, 255, .06) 1px, transparent 1px), + linear-gradient(90deg, rgba(107, 232, 255, .06) 1px, transparent 1px), + rgba(1, 9, 22, .82); + background-size: auto, 28px 28px, 28px 28px, auto; + + &:before { + content: ''; + position: absolute; + left: 50%; + top: 50%; + width: 1px; + height: 122%; + background: linear-gradient(180deg, transparent, rgba(107, 232, 255, .36), transparent); + transform: translate(-50%, -50%) rotate(42deg); + } + + &:after { + content: ''; + position: absolute; + left: 50%; + top: 50%; + width: 1px; + height: 122%; + background: linear-gradient(180deg, transparent, rgba(142, 255, 207, .26), transparent); + transform: translate(-50%, -50%) rotate(-42deg); + } +} + +.ops-ring { + position: absolute; + left: 50%; + top: 50%; + border: 1px solid rgba(107, 232, 255, .2); + border-radius: 50%; + transform: translate(-50%, -50%); + box-shadow: 0 0 42px rgba(38, 201, 255, .08); +} + +.ring-one { + width: 230px; + height: 230px; +} + +.ring-two { + width: 142px; + height: 142px; + border-color: rgba(142, 255, 207, .24); +} + +.ops-line { + position: absolute; + height: 1px; + background: linear-gradient(90deg, transparent, rgba(107, 232, 255, .4), transparent); + transform-origin: center; +} + +.line-one { + width: 252px; + left: 0; + top: 94px; + transform: rotate(15deg); +} + +.line-two { + width: 260px; + right: 0; + bottom: 92px; + transform: rotate(-18deg); +} + +.line-three { + width: 300px; + left: 24px; + top: 206px; + transform: rotate(0deg); +} + +.ops-core { + width: 126px; + height: 126px; + position: absolute; + left: 50%; + top: 50%; + z-index: 2; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + border: 1px solid rgba(128, 246, 255, .56); + border-radius: 50%; + background: + radial-gradient(circle at 50% 38%, rgba(111, 237, 255, .36), transparent 38%), + radial-gradient(circle, #103c57 0%, #071827 72%); + box-shadow: 0 0 62px rgba(54, 218, 255, .25), inset 0 0 24px rgba(107, 232, 255, .12); + transform: translate(-50%, -50%); + + b { + color: #fff; + font-size: 34px; + letter-spacing: 2px; + } + + span { + margin-top: 8px; + color: #8ff4ff; + font-size: 12px; + font-weight: 700; + } +} + +.ops-node { + min-width: 86px; + min-height: 52px; + padding: 10px 12px; + position: absolute; + z-index: 3; + border: 1px solid rgba(107, 232, 255, .24); + border-radius: 8px; + background: rgba(8, 28, 48, .92); + box-shadow: 0 16px 34px rgba(0, 0, 0, .24), 0 0 22px rgba(54, 218, 255, .08); + + span { + display: block; + color: #87deee; + font-size: 12px; + } + + strong { + display: block; + margin-top: 6px; + color: #fff; + font-size: 18px; + } +} + +.node-light { left: 22px; top: 34px; } +.node-inspect { right: 22px; top: 42px; } +.node-energy { left: 28px; bottom: 36px; } +.node-alert { right: 28px; bottom: 34px; } + +.status-rail { + display: grid; + grid-template-columns: 1fr; + gap: 10px; +} + +.status-tile { + min-height: 96px; + padding: 14px; + position: relative; + overflow: hidden; + border: 1px solid rgba(107, 232, 255, .16); + border-radius: 8px; + background: linear-gradient(180deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .028)); + + span { + display: block; + color: #86dff0; + font-size: 12px; + font-weight: 700; + } + + strong { + display: block; + margin-top: 10px; + color: #fff; + font-size: 20px; + letter-spacing: .4px; + } + + i { + position: absolute; + left: 14px; + right: 14px; + bottom: 12px; + height: 3px; + border-radius: 999px; + background: linear-gradient(90deg, #6be8ff, #8effcf); + box-shadow: 0 0 18px rgba(107, 232, 255, .38); + } +} + +.telemetry-panel { + margin-top: 14px; + padding: 14px; + border: 1px solid rgba(107, 232, 255, .14); + border-radius: 8px; + background: rgba(1, 8, 20, .72); +} + +.telemetry-title { + display: flex; + align-items: center; + justify-content: space-between; + margin-bottom: 12px; + + span { + color: #d9f8ff; + font-size: 13px; + font-weight: 700; + } + + strong { + color: #6be8ff; + font-size: 11px; + letter-spacing: 2px; + } +} + +.signal-board { + height: 74px; + display: flex; + align-items: end; + gap: 9px; + border-radius: 8px; + background: linear-gradient(180deg, rgba(107, 232, 255, .05), rgba(255, 255, 255, .02)); + + div { + flex: 1; + min-width: 7px; + border-radius: 4px 4px 0 0; + background: linear-gradient(180deg, #8effcf, #34d7ff); + box-shadow: 0 0 18px rgba(52, 215, 255, .3); + } +} + +.module-dock { + margin-top: 14px; + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 10px; + + div { + min-height: 66px; + padding: 12px 14px; + border: 1px solid rgba(107, 232, 255, .14); + border-radius: 8px; + background: rgba(255, 255, 255, .05); + } + + span { + display: block; + color: #6be8ff; + font-size: 11px; + font-weight: 800; + letter-spacing: 1px; + } + + strong { + display: block; + margin-top: 8px; + color: #fff; + font-size: 14px; + } +} + +.section-block { + padding: 100px 24px; + position: relative; +} + +.service-block, +.scene-block, +.resource-console { + background: + radial-gradient(circle at 8% 10%, rgba(71, 225, 255, .08), transparent 24%), + linear-gradient(180deg, #06111f, #030914); +} + +.section-title { + max-width: 780px; + margin: 0 auto 52px; + text-align: center; + + h2 { + margin: 14px 0 14px; + color: #ffffff; + font-size: 42px; + line-height: 1.25; + text-shadow: 0 0 28px rgba(72, 225, 255, .14); + } + + p { + margin: 0; + color: #9ab8c8; + font-size: 17px; + line-height: 1.8; + } +} + +.service-grid { + max-width: 1240px; + margin: 0 auto; + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 24px; +} + +.tech-card { + min-height: 500px; + padding: 22px; + position: relative; + overflow: hidden; + border: 1px solid rgba(107, 232, 255, .16); + border-radius: 8px; + background: + linear-gradient(145deg, rgba(12, 35, 55, .86), rgba(4, 13, 28, .95)); + box-shadow: 0 24px 70px rgba(0, 0, 0, .26); + cursor: pointer; + transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease; + + &:before { + content: ''; + position: absolute; + top: -120px; + right: -120px; + width: 260px; + height: 260px; + background: radial-gradient(circle, rgba(73, 226, 255, .18), transparent 68%); + } + + &:after { + content: ''; + position: absolute; + left: 0; + right: 0; + top: 0; + height: 2px; + background: linear-gradient(90deg, transparent, #69e8ff, transparent); + opacity: .58; + } + + &:hover { + transform: translateY(-8px); + border-color: rgba(107, 232, 255, .42); + box-shadow: 0 34px 92px rgba(0, 0, 0, .34), 0 0 40px rgba(52, 215, 255, .12); + } + + button { + height: 42px; + margin-top: 22px; + padding: 0 20px; + color: #e8feff; + border: 1px solid rgba(107, 232, 255, .28); + border-radius: 8px; + background: rgba(255, 255, 255, .06); + cursor: pointer; + font-weight: 800; + } +} + +.tech-card__media { + height: 190px; + padding: 18px; + display: flex; + align-items: center; + justify-content: center; + border-radius: 8px; + border: 1px solid rgba(107, 232, 255, .12); + overflow: hidden; + position: relative; + background: + radial-gradient(circle at 50% 42%, rgba(107, 232, 255, .13), transparent 44%), + linear-gradient(rgba(107, 232, 255, .055) 1px, transparent 1px), + linear-gradient(90deg, rgba(107, 232, 255, .055) 1px, transparent 1px), + rgba(255, 255, 255, .04); + background-size: auto, 22px 22px, 22px 22px, auto; + + &:before { + content: ''; + position: absolute; + left: 24px; + right: 24px; + top: 50%; + height: 1px; + background: linear-gradient(90deg, transparent, rgba(107, 232, 255, .36), transparent); + } +} + +.service-orbit { + width: 148px; + height: 148px; + position: relative; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(107, 232, 255, .42); + border-radius: 50%; + background: + radial-gradient(circle at 50% 45%, rgba(107, 232, 255, .34), transparent 46%), + radial-gradient(circle, rgba(7, 42, 64, .98), rgba(3, 13, 28, .96)); + box-shadow: 0 0 48px rgba(52, 215, 255, .16), inset 0 0 22px rgba(107, 232, 255, .12); + + &:before, + &:after { + content: ''; + position: absolute; + border-radius: 50%; + pointer-events: none; + } + + &:before { + inset: -16px; + border: 1px solid rgba(107, 232, 255, .18); + border-left-color: rgba(142, 255, 207, .52); + border-bottom-color: transparent; + transform: rotate(-24deg); + } + + &:after { + inset: 18px; + border: 1px dashed rgba(142, 255, 207, .26); + } +} + +.orbit-halo { + position: absolute; + pointer-events: none; + border-radius: 50%; +} + +.orbit-halo--outer { + inset: -30px; + border: 1px solid rgba(107, 232, 255, .12); +} + +.orbit-halo--inner { + inset: 34px; + border: 1px solid rgba(255, 255, 255, .08); +} + +.service-glyph, +.download-glyph { + width: 94px; + height: 94px; + position: relative; + z-index: 2; + border: 1px solid rgba(107, 232, 255, .25); + border-radius: 8px; + background: + linear-gradient(rgba(107, 232, 255, .08) 1px, transparent 1px), + linear-gradient(90deg, rgba(107, 232, 255, .08) 1px, transparent 1px), + rgba(1, 10, 24, .66); + background-size: 16px 16px; + box-shadow: inset 0 0 24px rgba(107, 232, 255, .08); +} + +.glyph-mark { + position: absolute; + left: 50%; + top: 50%; + z-index: 3; + color: #fff; + font-size: 34px; + font-weight: 900; + line-height: 1; + letter-spacing: 0; + text-shadow: 0 0 22px rgba(107, 232, 255, .44); + transform: translate(-50%, -50%); +} + +.glyph-line { + position: absolute; + z-index: 2; + height: 2px; + border-radius: 999px; + background: linear-gradient(90deg, rgba(107, 232, 255, .15), #6be8ff, rgba(142, 255, 207, .7)); + box-shadow: 0 0 14px rgba(107, 232, 255, .36); +} + +.glyph-line--one { + width: 58px; + left: 18px; + top: 64px; + transform: rotate(-24deg); +} + +.glyph-line--two { + width: 42px; + left: 14px; + top: 40px; + opacity: .65; +} + +.glyph-line--three { + width: 36px; + right: 13px; + bottom: 22px; + opacity: .55; +} + +.glyph-node { + width: 9px; + height: 9px; + position: absolute; + z-index: 4; + border-radius: 50%; + background: #8effcf; + box-shadow: 0 0 16px rgba(142, 255, 207, .82); +} + +.glyph-node--one { left: 15px; bottom: 22px; } +.glyph-node--two { left: 42px; top: 29px; } +.glyph-node--three { right: 16px; top: 51px; } + +.orbit-caption { + min-width: 64px; + height: 24px; + position: absolute; + left: 50%; + bottom: -10px; + z-index: 4; + display: inline-flex; + align-items: center; + justify-content: center; + padding: 0 10px; + border: 1px solid rgba(107, 232, 255, .26); + border-radius: 6px; + color: #9cf4ff; + background: rgba(3, 13, 28, .94); + font-size: 10px; + font-weight: 900; + letter-spacing: 1.5px; + transform: translateX(-50%); +} + +.service-orbit--health { + background: + radial-gradient(circle at 50% 45%, rgba(142, 255, 207, .3), transparent 46%), + radial-gradient(circle, rgba(8, 54, 56, .98), rgba(3, 13, 28, .96)); + + .glyph-mark { + top: 38%; + font-size: 30px; + } + + .service-glyph { + border-radius: 50%; + } + + .glyph-line--one { + width: 66px; + left: 14px; + top: 50px; + clip-path: polygon(0 42%, 18% 42%, 26% 8%, 36% 82%, 48% 28%, 58% 42%, 100% 42%, 100% 58%, 56% 58%, 48% 45%, 36% 100%, 26% 25%, 20% 58%, 0 58%); + height: 22px; + background: #8effcf; + transform: none; + } + + .glyph-line--two, + .glyph-line--three { + display: none; + } + + .glyph-node--one { left: 24px; top: 24px; } + .glyph-node--two { right: 23px; top: 24px; left: auto; } + .glyph-node--three { right: 42px; bottom: 18px; top: auto; } +} + +.service-orbit--accounting, +.download-symbol--asset { + .service-glyph, + .download-glyph { + &:before { content: ''; + width: 10px; + height: 20px; position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-image: - linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px), - linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px); - background-size: 50px 50px; - animation: gridMove 20s linear infinite; - pointer-events: none; + left: 22px; + bottom: 23px; + z-index: 2; + border-radius: 4px 4px 1px 1px; + background: linear-gradient(180deg, #8effcf, #42ddff); + box-shadow: + 18px -10px 0 rgba(107, 232, 255, .86), + 36px -22px 0 rgba(142, 255, 207, .72); + opacity: .82; } - - // 发光圆圈装饰 - &::after { + + &:after { content: ''; + height: 1px; + position: absolute; + left: 16px; + right: 16px; + bottom: 22px; + z-index: 2; + background: linear-gradient(90deg, transparent, rgba(107, 232, 255, .62), transparent); + } + } + + .glyph-mark { + top: 27px; + font-size: 21px; + opacity: .9; + } + + .glyph-line--one { + width: 66px; + left: 14px; + top: 68px; + height: 2px; + transform: rotate(-23deg); + } + + .glyph-line--two { + width: 54px; + left: 20px; + top: 76px; + opacity: .36; + } + + .glyph-line--three { + width: 42px; + right: 18px; + bottom: 52px; + opacity: .28; + } + + .glyph-node--one { left: 17px; bottom: 27px; } + .glyph-node--two { left: 47px; top: 50px; } + .glyph-node--three { right: 14px; top: 42px; } +} + +.service-orbit--iot { + .service-glyph { + border-radius: 50%; + + &:before { + content: ''; + width: 36px; + height: 36px; position: absolute; - top: 50%; left: 50%; - transform: translate(-50%, -50%); - width: 600px; - height: 600px; - background: radial-gradient(circle, rgba(139, 92, 246, 0.15) 0%, transparent 70%); + top: 50%; + z-index: 2; + border: 1px solid rgba(142, 255, 207, .48); border-radius: 50%; - animation: pulse 4s ease-in-out infinite; - pointer-events: none; + background: radial-gradient(circle, rgba(142, 255, 207, .2), rgba(4, 24, 40, .85)); + box-shadow: 0 0 24px rgba(142, 255, 207, .22); + transform: translate(-50%, -50%); } - - .apply-hr-content { - position: relative; + + &:after { + content: ''; + width: 72px; + height: 72px; + position: absolute; + left: 50%; + top: 50%; z-index: 1; - } - - h2 { - font-size: 42px; - margin: 0; - line-height: 1.6; - display: flex; - align-items: center; - justify-content: center; - flex-wrap: wrap; - gap: 20px; - - .apply-title { - font-weight: 700; - letter-spacing: 3px; - text-shadow: 0 0 20px rgba(139, 92, 246, 0.5), 0 0 40px rgba(139, 92, 246, 0.3); - background: linear-gradient(90deg, #fff 0%, #e0e7ff 50%, #fff 100%); - background-size: 200% auto; - -webkit-background-clip: text; - -webkit-text-fill-color: transparent; - background-clip: text; - animation: shimmer 3s linear infinite; - } - - .apply-tag { - display: inline-block; - padding: 8px 24px; - background: rgba(255, 255, 255, 0.08); - border-radius: 25px; - font-size: 18px; - font-weight: 500; - backdrop-filter: blur(10px); - border: 1px solid rgba(139, 92, 246, 0.4); - box-shadow: 0 4px 15px rgba(139, 92, 246, 0.2), - inset 0 1px 0 rgba(255, 255, 255, 0.1); - transition: all 0.3s ease; - position: relative; - overflow: hidden; - - &::before { - content: ''; - position: absolute; - top: 0; - left: -100%; - width: 100%; - height: 100%; - background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent); - transition: left 0.5s ease; - } - - &:hover { - background: rgba(139, 92, 246, 0.25); - border-color: rgba(139, 92, 246, 0.6); - transform: translateY(-3px); - box-shadow: 0 6px 20px rgba(139, 92, 246, 0.4), - inset 0 1px 0 rgba(255, 255, 255, 0.2); - - &::before { - left: 100%; - } - } - } - } - - h4 { - font-size: 16px; - font-weight: 300; - margin-top: 25px; - opacity: 0.9; - letter-spacing: 1.5px; - line-height: 1.8; - text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3); + border: 1px dashed rgba(107, 232, 255, .24); + border-radius: 50%; + transform: translate(-50%, -50%); } } - - @keyframes gridMove { - 0% { transform: translate(0, 0); } - 100% { transform: translate(50px, 50px); } + + .glyph-mark { + font-size: 18px; + letter-spacing: 1px; } - - @keyframes pulse { - 0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.5; } - 50% { transform: translate(-50%, -50%) scale(1.1); opacity: 0.8; } + + .glyph-line--one { + width: 58px; + left: 18px; + top: 46px; + transform: none; } - - @keyframes shimmer { - 0% { background-position: 0% center; } - 100% { background-position: 200% center; } + + .glyph-line--two { + width: 42px; + left: 26px; + top: 55px; + transform: rotate(38deg); } - .features { - background: #DEF0EF; - padding: 50px 0; - ul{ - max-width: 500px; - margin: 0 auto; - li { - margin-top: 20px; - padding: 10px 0 10px 100px; - position: relative; - img { - width: 80px; - top: 5px; - left: 0; - right: 10px; - position: absolute; - } - h4 { - font-size: 25px; - font-weight: bold; - } - p { - font-size: 25px; - font-weight: normal; - } - } + + .glyph-line--three { + width: 42px; + right: 24px; + bottom: 41px; + transform: rotate(-38deg); + } + + .glyph-node--one { left: 13px; top: 42px; } + .glyph-node--two { right: 13px; top: 42px; left: auto; } + .glyph-node--three { left: 42px; bottom: 13px; top: auto; } +} + +.tech-card__body { + position: relative; + z-index: 1; + + span { + display: block; + margin-top: 24px; + color: #6be8ff; + font-size: 11px; + font-weight: 800; + letter-spacing: 2px; + } + + h3 { + margin: 12px 0; + color: #fff; + font-size: 24px; + } + + p { + min-height: 82px; + margin: 0; + color: #abc6d4; + font-size: 15px; + line-height: 1.75; + } + + ul { + margin: 24px 0 0; + padding: 0; + list-style: none; + } + + li { + position: relative; + margin-top: 11px; + padding-left: 18px; + color: #d4edf5; + font-size: 14px; + } + + li:before { + content: ''; + width: 7px; + height: 7px; + position: absolute; + left: 0; + top: 8px; + border-radius: 50%; + background: #6be8ff; + box-shadow: 0 0 12px rgba(107, 232, 255, .8); + } +} + +.architecture-section { + padding: 104px 24px; + background: + radial-gradient(circle at 88% 32%, rgba(82, 228, 255, .13), transparent 28%), + radial-gradient(circle at 12% 72%, rgba(142, 255, 207, .08), transparent 24%), + linear-gradient(135deg, rgba(3, 9, 20, .98), rgba(6, 32, 52, .92)); +} + +.architecture-shell { + max-width: 1240px; + margin: 0 auto; + display: grid; + grid-template-columns: minmax(0, 1fr) 500px; + gap: 72px; + align-items: center; +} + +.architecture-copy { + h2 { + margin: 16px 0; + color: #fff; + font-size: 42px; + line-height: 1.3; + } + + p { + margin: 0; + color: #adc6d3; + font-size: 17px; + line-height: 1.85; + } +} + +.architecture-list { + margin-top: 34px; + display: grid; + gap: 14px; + + div { + padding: 18px 20px; + border: 1px solid rgba(107, 232, 255, .16); + border-radius: 8px; + background: rgba(255, 255, 255, .055); + } + + strong { + display: block; + color: #fff; + font-size: 17px; + } + + span { + display: block; + margin-top: 8px; + color: #9eb8c8; + line-height: 1.7; + } +} + +.node-map { + min-height: 470px; + position: relative; + border: 1px solid rgba(107, 232, 255, .22); + border-radius: 8px; + background: + linear-gradient(rgba(107, 232, 255, .06) 1px, transparent 1px), + linear-gradient(90deg, rgba(107, 232, 255, .06) 1px, transparent 1px), + rgba(0, 8, 20, .58); + background-size: 44px 44px; + box-shadow: inset 0 0 70px rgba(52, 215, 255, .08); +} + +.node-core { + width: 156px; + height: 156px; + position: absolute; + left: 50%; + top: 50%; + transform: translate(-50%, -50%); + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + border: 1px solid rgba(107, 232, 255, .5); + border-radius: 50%; + background: radial-gradient(circle, #123f58 0%, #071827 72%); + box-shadow: 0 0 66px rgba(52, 215, 255, .25); + + b { + color: #fff; + font-size: 34px; + letter-spacing: 2px; + } + + span { + margin-top: 6px; + color: #7ff1ff; + font-size: 12px; + } +} + +.node-item { + position: absolute; + min-width: 110px; + height: 44px; + padding: 0 14px; + display: flex; + align-items: center; + justify-content: center; + color: #eaffff; + border: 1px solid rgba(107, 232, 255, .28); + border-radius: 8px; + background: rgba(255, 255, 255, .08); + box-shadow: 0 14px 30px rgba(0, 0, 0, .24); +} + +.node-item:nth-child(2) { left: 36px; top: 62px; } +.node-item:nth-child(3) { right: 34px; top: 70px; } +.node-item:nth-child(4) { left: 26px; top: 208px; } +.node-item:nth-child(5) { right: 26px; top: 214px; } +.node-item:nth-child(6) { left: 70px; bottom: 58px; } +.node-item:nth-child(7) { right: 62px; bottom: 54px; } + +.scene-grid { + max-width: 1240px; + margin: 0 auto; + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 16px; +} + +.scene-card { + min-height: 250px; + padding: 28px 22px; + border: 1px solid rgba(107, 232, 255, .14); + border-radius: 8px; + background: linear-gradient(180deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .025)); + + > span { + color: #6be8ff; + font-weight: 900; + letter-spacing: 2px; + } + + h3 { + margin: 24px 0 12px; + color: #fff; + font-size: 22px; + } + + p { + margin: 0; + color: #9eb8c8; + line-height: 1.76; + } +} + +.site-cta, +.resource-contact { + width: calc(100% - 48px); + max-width: 1240px; + margin: 0 auto 96px; + padding: 52px 56px; + position: relative; + z-index: 2; + display: flex; + align-items: center; + justify-content: space-between; + gap: 34px; + border: 1px solid rgba(107, 232, 255, .24); + border-radius: 8px; + background: + linear-gradient(135deg, rgba(9, 45, 67, .94), rgba(4, 18, 34, .96)); + box-shadow: 0 28px 82px rgba(0, 0, 0, .3); + + h2 { + margin: 12px 0; + color: #fff; + font-size: 34px; + } + + p { + max-width: 740px; + margin: 0; + color: #b8d2df; + line-height: 1.78; + } + + button { + flex: 0 0 auto; + } +} + +.sub-hero { + min-height: 360px; + position: relative; + overflow: hidden; + display: flex; + align-items: center; + background: + radial-gradient(circle at 18% 26%, rgba(82, 228, 255, .14), transparent 30%), + radial-gradient(circle at 82% 22%, rgba(142, 255, 207, .08), transparent 24%), + linear-gradient(105deg, rgba(2, 8, 18, .97), rgba(4, 31, 52, .88)); + + &:after { + content: ''; + position: absolute; + left: 0; + right: 0; + bottom: 0; + height: 120px; + background: linear-gradient(180deg, transparent, #030914); + } +} + +.resource-hero { + background: + radial-gradient(circle at 16% 28%, rgba(82, 228, 255, .14), transparent 30%), + radial-gradient(circle at 74% 20%, rgba(107, 232, 255, .08), transparent 28%), + linear-gradient(105deg, rgba(2, 8, 18, .97), rgba(4, 31, 52, .88)); +} + +.sub-hero__content { + width: calc(100% - 48px); + max-width: 1180px; + margin: 0 auto; + position: relative; + z-index: 1; + + h1 { + margin: 16px 0 16px; + color: #fff; + font-size: 56px; + line-height: 1.15; + text-shadow: 0 0 34px rgba(72, 225, 255, .24); + } + + p { + max-width: 760px; + margin: 0; + color: #bfd7e4; + font-size: 18px; + line-height: 1.86; + } +} + +.contact-console { + padding: 92px 24px 34px; + display: grid; + grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr); + gap: 24px; + max-width: 1240px; + margin: 0 auto; +} + +.contact-flow-panel, +.contact-info-panel, +.qr-card, +.download-card { + border: 1px solid rgba(107, 232, 255, .16); + border-radius: 8px; + background: linear-gradient(145deg, rgba(9, 32, 52, .88), rgba(3, 12, 27, .96)); + box-shadow: 0 24px 68px rgba(0, 0, 0, .28); +} + +.contact-flow-panel, +.contact-info-panel { + padding: 34px; + + h2 { + margin: 14px 0 28px; + color: #fff; + font-size: 30px; + } +} + +.flow-grid { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 14px; +} + +.flow-node { + min-height: 188px; + padding: 24px 20px; + border: 1px solid rgba(107, 232, 255, .14); + border-radius: 8px; + background: rgba(255, 255, 255, .045); + + b { + display: inline-flex; + width: 42px; + height: 42px; + align-items: center; + justify-content: center; + color: #03111e; + border-radius: 8px; + background: linear-gradient(135deg, #6be8ff, #8effcf); + } + + strong { + display: block; + margin-top: 22px; + color: #fff; + font-size: 20px; + } + + span { + display: block; + margin-top: 10px; + color: #9eb8c8; + line-height: 1.7; + } +} + +.contact-info-panel { + align-self: stretch; + + .contact-line { + padding: 18px 0; + border-top: 1px solid rgba(107, 232, 255, .12); + + span { + display: block; + color: #7edff1; + font-size: 13px; + font-weight: 800; + letter-spacing: 2px; } + + strong { + display: block; + margin-top: 8px; + color: #fff; + font-size: 22px; + } + } + + button { + width: 100%; + margin-top: 22px; + } +} + +.qr-section { + max-width: 1240px; + margin: 0 auto; + padding: 30px 24px 102px; + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 24px; +} + +.qr-card { + padding: 28px; + display: grid; + grid-template-columns: 190px minmax(0, 1fr); + gap: 28px; + align-items: center; + + h3 { + margin: 12px 0; + color: #fff; + font-size: 26px; + } + + p { + margin: 0; + color: #9eb8c8; + line-height: 1.75; + } +} + +.qr-image { + padding: 12px; + border: 1px solid rgba(107, 232, 255, .22); + border-radius: 8px; + background: rgba(255, 255, 255, .92); + box-shadow: 0 18px 44px rgba(0, 0, 0, .24); + + img { + width: 100%; + display: block; + border-radius: 6px; + } +} + +.resource-console { + padding: 96px 24px 42px; +} + +.download-grid { + max-width: 1100px; + margin: 0 auto; + display: grid; + grid-template-columns: 1fr; + gap: 24px; +} + +.download-card { + min-height: 270px; + overflow: hidden; + display: grid; + grid-template-columns: 280px minmax(0, 1fr); +} + +.download-card__media { + padding: 34px; + display: flex; + align-items: center; + justify-content: center; + border-right: 1px solid rgba(107, 232, 255, .12); + overflow: hidden; + position: relative; + background: + radial-gradient(circle at 50% 50%, rgba(107, 232, 255, .12), transparent 42%), + linear-gradient(rgba(107, 232, 255, .055) 1px, transparent 1px), + linear-gradient(90deg, rgba(107, 232, 255, .055) 1px, transparent 1px), + rgba(255, 255, 255, .04); + background-size: auto, 22px 22px, 22px 22px, auto; + +} + +.download-symbol { + width: 166px; + height: 166px; + position: relative; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(107, 232, 255, .42); + border-radius: 8px; + background: + linear-gradient(rgba(107, 232, 255, .08) 1px, transparent 1px), + linear-gradient(90deg, rgba(107, 232, 255, .08) 1px, transparent 1px), + radial-gradient(circle at 50% 45%, rgba(107, 232, 255, .26), transparent 44%), + rgba(3, 13, 28, .92); + background-size: 18px 18px, 18px 18px, auto, auto; + box-shadow: 0 0 42px rgba(52, 215, 255, .14), inset 0 0 24px rgba(107, 232, 255, .1); + transition: transform .24s ease, border-color .24s ease; + + &:before { + content: ''; + position: absolute; + inset: 18px; + border: 1px dashed rgba(142, 255, 207, .22); + border-radius: 50%; + } + + &:after { + content: ''; + width: 94px; + height: 94px; + position: absolute; + border: 1px solid rgba(107, 232, 255, .18); + border-radius: 50%; + } +} + +.download-symbol__corner { + width: 34px; + height: 34px; + position: absolute; + z-index: 3; + border-color: rgba(107, 232, 255, .58); + border-style: solid; +} + +.download-symbol__corner--one { + left: -1px; + top: -1px; + border-width: 1px 0 0 1px; +} + +.download-symbol__corner--two { + right: -1px; + bottom: -1px; + border-width: 0 1px 1px 0; +} + +.download-glyph { + width: 104px; + height: 104px; +} + +.download-symbol__label { + min-width: 74px; + height: 24px; + position: absolute; + left: 50%; + bottom: 18px; + z-index: 4; + display: inline-flex; + align-items: center; + justify-content: center; + padding: 0 10px; + border: 1px solid rgba(107, 232, 255, .24); + border-radius: 6px; + color: #9cf4ff; + background: rgba(3, 13, 28, .92); + font-size: 10px; + font-weight: 900; + letter-spacing: 1.5px; + transform: translateX(-50%); +} + +.download-symbol--health { + background: + linear-gradient(rgba(142, 255, 207, .08) 1px, transparent 1px), + linear-gradient(90deg, rgba(142, 255, 207, .08) 1px, transparent 1px), + radial-gradient(circle at 50% 45%, rgba(142, 255, 207, .22), transparent 44%), + rgba(3, 13, 28, .92); + + .download-glyph { + border-radius: 50%; + } + + .glyph-line--one { + width: 72px; + left: 16px; + top: 52px; + clip-path: polygon(0 42%, 18% 42%, 26% 8%, 36% 82%, 48% 28%, 58% 42%, 100% 42%, 100% 58%, 56% 58%, 48% 45%, 36% 100%, 26% 25%, 20% 58%, 0 58%); + height: 24px; + background: #8effcf; + transform: none; + } + + .glyph-line--two, + .glyph-line--three { + display: none; + } + + .glyph-node--one { left: 28px; top: 27px; } + .glyph-node--two { right: 28px; top: 27px; left: auto; } + .glyph-node--three { left: 48px; bottom: 19px; top: auto; } +} + +.download-card:hover .download-symbol { + transform: translateY(-4px) scale(1.02); + border-color: rgba(107, 232, 255, .62); +} + +.download-card__content { + padding: 36px; + + h3 { + margin: 12px 0 10px; + color: #fff; + font-size: 28px; + } + + p { + margin: 0; + color: #9eb8c8; + line-height: 1.75; + } +} + +.download-actions { + margin-top: 28px; + display: flex; + flex-wrap: wrap; + gap: 12px; +} + +.download-link { + min-height: 44px; + padding: 0 16px; + display: inline-flex; + align-items: center; + gap: 10px; + color: #dffbff; + border: 1px solid rgba(107, 232, 255, .18); + border-radius: 8px; + background: rgba(255, 255, 255, .055); + transition: transform .22s ease, border-color .22s ease, background .22s ease; + + i { + min-width: 38px; + height: 24px; + display: inline-flex; + align-items: center; + justify-content: center; + color: #03111e; + border-radius: 6px; + background: linear-gradient(135deg, #6be8ff, #8effcf); + font-style: normal; + font-size: 11px; + font-weight: 900; + } + + &:hover { + color: #fff; + border-color: rgba(107, 232, 255, .5); + background: rgba(24, 94, 124, .42); + transform: translateY(-2px); + } +} + +@keyframes gridMove { + 0% { transform: translate(0, 0); } + 100% { transform: translate(54px, 54px); } +} + +@keyframes scanMove { + 0%, 100% { transform: translateY(-80px); opacity: .2; } + 50% { transform: translateY(210px); opacity: .75; } +} + +@media (max-width: 1120px) { + .hero-shell, + .architecture-shell, + .contact-console { + grid-template-columns: 1fr; + } + + .hero-console { + width: 100%; + max-width: 560px; + height: 580px; + margin: 0 auto; + } + + .console-frame { + left: 50%; + right: auto; + transform: translateX(-50%); + } + + .service-grid, + .scene-grid { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + + .qr-section { + grid-template-columns: 1fr; } } @media (max-width: 768px) { - .home-page { - overflow-x: hidden; - width: 100%; - .banner { - padding: 80px 15px 60px; - min-height: 400px; - - .banner-content { - padding: 30px 20px; - margin: 0 10px; - - h1 { - font-size: 32px; - margin: 0 0 25px; - letter-spacing: 1px; - } - - .banner-slogans { - flex-direction: column; - gap: 12px; - - h2 { - font-size: 18px; - padding: 10px 20px; - } - } - - .banner-subtitle { - font-size: 14px; - margin-top: 25px; - } - } - } - .nav { - margin: 20px auto 0 auto; - padding: 0 15px; - a { - float: none; - width: 100%; - max-width: 300px; - margin: 15px auto; - padding: 25px 15px; - &.zhichou { - color: #fff; - background: linear-gradient(135deg, #35A3BA 0%, #2891A6 100%); - } - &.health { - color: #fff; - background: linear-gradient(135deg, #6AC2B5 0%, #4FAD9E 100%); - } - &.imaotai { - color: #fff; - background: linear-gradient(135deg, #9B59B6 0%, #8E44AD 100%); - } - &.iot { - color: #fff; - background: linear-gradient(135deg, #FF6B35 0%, #E85A2A 100%); - } - .watermark { - color: #fff !important; - font-size: 50px; - } - .zui-logo { - width: 100px; - display: none; - } - .zui-logo.mobile { - display: block; - } - h3 { - font-size: 16px; - margin-top: 10px; - } - h4 { - font-size: 12px; - } - } - } - .join-zhichou { - margin: 0 0 30px 0; - } - .service{ - padding: 40px 15px; - - h1{ - font-size: 20px; - line-height: 1.6; - } - h3{ - font-size: 15px; - line-height: 1.5; - margin-top: 15px; - } - - .service-highlight { - margin-top: 30px; - padding: 12px 24px; - - .highlight-icon { - font-size: 20px; - } - - .highlight-text { - font-size: 16px; - } - } - } - .features{ - padding: 25px 15px; - ul{ - max-width: 100%; - padding: 0 10px; - li{ - margin-top: 15px; - padding-left: 50px; - img{ - width: 40px; - } - h4{ - font-size: 16px; - } - p{ - font-size: 13px; - } - } - } - } + .hero-section { + min-height: auto; + } - .apply-hr{ - padding: 45px 15px; - - h2{ - font-size: 24px; - line-height: 1.6; - flex-direction: column; - gap: 12px; - - .apply-title { - letter-spacing: 2px; - font-size: 26px; - } - - .apply-tag { - font-size: 16px; - padding: 6px 20px; - } - } - h4{ - font-size: 14px; - line-height: 1.8; - margin-top: 20px; - } - } - .apply-hr-form{ - padding: 20px 15px; + .hero-shell { + width: calc(100% - 32px); + min-height: auto; + padding: 52px 0 64px; + gap: 38px; + } + + .hero-copy h1 { + font-size: 44px; + } + + .hero-lead, + .sub-hero__content p { + font-size: 16px; + line-height: 1.75; + } + + .hero-actions, + .download-actions { + flex-direction: column; + } + + .action-primary, + .action-secondary, + .site-cta button, + .resource-contact button { + width: 100%; + } + + .metric-strip, + .service-grid, + .scene-grid, + .flow-grid, + .qr-section { + grid-template-columns: 1fr; + } + + .hero-console { + height: auto; + max-width: 100%; + } + + .console-frame { + position: relative; + left: auto; + top: auto; + width: auto; + transform: none; + } + + .command-layout { + grid-template-columns: 1fr; + } + + .ops-map { + height: 300px; + } + + .status-rail, + .module-dock { + grid-template-columns: 1fr; + } + + .status-tile { + min-height: 76px; + } + + .section-block, + .architecture-section, + .resource-console { + padding: 68px 16px; + } + + .section-title h2, + .architecture-copy h2 { + font-size: 30px; + } + + .tech-card { + min-height: auto; + } + + .tech-card__body p { + min-height: auto; + } + + .node-map { + min-height: auto; + padding: 22px; + display: grid; + grid-template-columns: 1fr; + gap: 12px; + } + + .node-core, + .node-item { + position: static; + width: auto; + height: auto; + min-height: 50px; + transform: none; + border-radius: 8px; + } + + .node-core { + padding: 24px; + } + + .site-cta, + .resource-contact { + width: auto; + margin: 0 16px 72px; + padding: 34px 24px; + flex-direction: column; + align-items: flex-start; + + h2 { + font-size: 28px; } } + + .sub-hero { + min-height: 300px; + } + + .sub-hero__content { + width: calc(100% - 32px); + + h1 { + font-size: 38px; + } + } + + .contact-console { + padding: 64px 16px 24px; + } + + .contact-flow-panel, + .contact-info-panel, + .qr-card { + padding: 24px; + } + + .qr-card { + grid-template-columns: 1fr; + } + + .qr-image { + max-width: 210px; + } + + .download-card { + grid-template-columns: 1fr; + } + + .download-card__media { + border-right: 0; + border-bottom: 1px solid rgba(107, 232, 255, .12); + } + + .download-card__content { + padding: 26px; + } + + .download-link { + width: 100%; + } +} + +@media (max-width: 480px) { + .hero-copy h1 { + font-size: 38px; + } + + .section-title h2, + .architecture-copy h2, + .contact-flow-panel h2, + .contact-info-panel h2 { + font-size: 26px; + } + + .metric-strip div, + .tech-card, + .flow-node, + .download-card__content { + padding: 22px; + } + + .download-card__media { + padding: 28px; + } } diff --git a/src/views/resource.vue b/src/views/resource.vue index b4c615d..b43fbe2 100644 --- a/src/views/resource.vue +++ b/src/views/resource.vue @@ -1,544 +1,134 @@ + -