38780-vm/assets/css/custom.css
2026-02-26 11:49:01 +00:00

575 lines
13 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:root {
--bg-light: #ffffff;
--bg-alt: #f8fafc;
--surface: #ffffff;
--accent: #0066FF;
--accent-soft: rgba(0, 102, 255, 0.08);
--text-main: #0f172a;
--text-muted: #64748b;
--glass: rgba(255, 255, 255, 0.7);
--glass-border: rgba(0, 0, 0, 0.05);
--card-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
--card-shadow-hover: 0 25px 50px rgba(0, 102, 255, 0.1);
}
body {
background-color: var(--bg-light);
color: var(--text-main);
font-family: 'Inter', "PingFang SC", "Microsoft YaHei", sans-serif;
line-height: 1.7;
overflow-x: hidden;
}
/* 导航栏优化 */
.navbar {
padding: 1rem 0;
transition: all 0.3s;
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(10px);
height: 80px;
display: flex;
align-items: center;
}
.navbar.scrolled {
padding: 0.5rem 0;
height: 70px;
box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}
/* LOGO 浮动动效与极致发光 */
@keyframes logo-float {
0%, 100% { transform: translateY(0) rotate(0deg); }
50% { transform: translateY(-5px) rotate(1deg); }
}
.navbar-brand {
display: inline-flex;
align-items: center;
text-decoration: none;
transition: all 0.3s;
}
.navbar-brand img {
height: 60px;
width: auto;
object-fit: contain;
background: transparent !important;
filter: brightness(1.2) drop-shadow(0 0 5px rgba(0, 102, 255, 0.3));
transition: all 0.4s;
animation: logo-float 3s ease-in-out infinite;
z-index: 2;
display: block;
}
.navbar.scrolled .navbar-brand img {
height: 50px;
}
/* 智域科技 个性动态字体 */
.brand-text-dynamic {
display: flex;
align-items: center;
font-family: 'Ma Shan Zheng', cursive;
font-size: 2.2rem;
font-weight: 400;
letter-spacing: 0.05em;
margin-left: 5px;
}
.navbar.scrolled .brand-text-dynamic {
font-size: 1.8rem;
}
.brand-text-dynamic span {
display: inline-block;
animation: char-float 2.5s ease-in-out infinite;
text-shadow: 2px 2px 4px rgba(0,0,0,0.05);
}
@keyframes char-float {
0%, 100% { transform: translateY(0) scale(1); filter: brightness(1); }
50% { transform: translateY(-8px) scale(1.1); filter: brightness(1.2); }
}
.brand-text-dynamic .char-1 { color: #0066FF; animation-delay: 0s; }
.brand-text-dynamic .char-2 { color: #28a745; animation-delay: 0.2s; }
.brand-text-dynamic .char-3 { color: #fd7e14; animation-delay: 0.4s; }
.brand-text-dynamic .char-4 { color: #dc3545; animation-delay: 0.6s; }
/* 英雄首屏字体与布局 */
.hero-section {
padding-top: 160px;
padding-bottom: 100px;
}
.hero-title {
font-size: clamp(2.5rem, 6vw, 4rem);
font-weight: 850;
line-height: 1.1;
margin-bottom: 1.5rem;
}
.lead {
font-size: 1.35rem;
font-weight: 400;
}
/* 渐变文本 */
.text-gradient {
background: linear-gradient(135deg, #0f172a 0%, #0066FF 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
/* Section 样式 */
.section-title {
font-size: clamp(2rem, 5vw, 2.5rem);
font-weight: 800;
margin-bottom: 3.5rem;
text-align: left;
}
.section-subtitle {
display: block;
font-size: 0.9rem;
font-weight: 700;
color: var(--accent);
text-transform: uppercase;
letter-spacing: 0.15em;
margin-bottom: 1rem;
text-align: left;
}
/* 布局网格系统 */
.grid-4 {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 1.5rem;
}
.grid-6 {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 1.5rem;
}
/* 卡片通用样式 */
.tech-card {
background: var(--surface);
border: 1px solid var(--glass-border);
border-radius: 24px;
padding: 2.25rem;
transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
height: 100%;
position: relative;
display: flex;
flex-direction: column;
}
.tech-card:hover {
transform: translateY(-12px);
box-shadow: var(--card-shadow-hover);
border-color: rgba(0, 102, 255, 0.1);
}
/* 多彩图标容器 */
.icon-box-colorful {
width: 64px;
height: 64px;
border-radius: 18px;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.75rem;
margin-bottom: 1.5rem;
transition: 0.4s;
}
/* 合作伙伴网格 */
.partners-grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 1.5rem;
}
.partner-item {
background: #fff;
border: 1px solid var(--glass-border);
border-radius: 16px;
padding: 1.5rem 1rem;
text-align: left;
transition: all 0.3s;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 0.75rem;
}
/* 轮播图优化 - 修复为填满区域 */
.hero-carousel {
border-radius: 40px;
overflow: hidden;
background: #000;
position: relative;
height: 480px; /* 增加高度以对齐左侧文字 */
}
.hero-carousel .carousel-inner,
.hero-carousel .carousel-item {
height: 100%;
}
.hero-carousel .carousel-item {
position: relative;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
}
/* 移除之前的模糊背景效果,直接填满 */
.hero-carousel .carousel-item::before {
display: none;
}
/* 核心图片展示 - 填满且无缝隙 */
.hero-carousel .carousel-item img {
width: 100%;
height: 100%;
object-fit: cover; /* 关键:填满区域,不留空白 */
position: relative;
z-index: 2;
transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hero-carousel:hover .carousel-item img {
transform: scale(1.05);
}
/* Caption 玻璃态设计 */
.glass-panel {
background: rgba(255, 255, 255, 0.88) !important;
backdrop-filter: blur(12px);
border: 1px solid rgba(255, 255, 255, 0.4) !important;
border-radius: 16px !important;
box-shadow: 0 15px 35px rgba(0,0,0,0.12) !important;
color: #0f172a !important;
width: fit-content;
left: 25px !important;
right: auto !important;
bottom: 25px !important;
padding: 10px 18px !important;
z-index: 3;
opacity: 0.95;
}
/* 项目案例卡片 */
.case-card {
border-radius: 24px;
overflow: hidden;
background: #fff;
border: 1px solid var(--glass-border);
transition: all 0.5s;
height: 100%;
}
.case-image-wrapper {
position: relative;
height: 240px;
overflow: hidden;
}
.case-image {
width: 100%;
height: 100%;
object-fit: cover;
transition: 0.8s;
}
/* 悬浮按钮 */
.floating-controls {
position: fixed;
right: 30px;
bottom: 30px;
display: flex;
flex-direction: column;
gap: 15px;
z-index: 9999;
}
.float-btn {
width: 55px;
height: 55px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.5rem;
color: white;
box-shadow: 0 10px 25px rgba(0,0,0,0.15);
transition: 0.3s;
text-decoration: none;
cursor: pointer;
border: none;
}
.float-btn-tg { background: #229ED9; }
.float-btn-wx { background: #07C160; }
.float-btn-up { background: var(--accent); opacity: 0; visibility: hidden; }
.float-btn-up.visible { opacity: 1; visibility: visible; }
.float-btn:hover {
transform: scale(1.1) translateY(-5px);
color: white;
}
/* 微信模态框深度美化 */
.modal-content {
background: var(--bg-light);
}
.qr-code-wrapper {
transition: all 0.3s;
border: 1px solid rgba(0,0,0,0.03);
}
.qr-code-wrapper:hover {
transform: scale(1.02);
box-shadow: 0 15px 30px rgba(0,0,0,0.05) !important;
}
.x-small {
font-size: 0.7rem;
}
/* 响应式调整 */
@media (max-width: 1200px) {
.grid-4 { grid-template-columns: repeat(2, 1fr); }
.grid-6 { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 992px) {
.partners-grid { grid-template-columns: repeat(3, 1fr); }
.hero-carousel { height: 400px; }
.hero-section { padding-top: 120px; }
}
@media (max-width: 768px) {
.grid-4, .grid-6 { grid-template-columns: 1fr; }
.hero-title { font-size: 2.2rem; }
.navbar { height: auto; padding: 0.75rem 0; }
.hero-carousel { height: 300px; }
.brand-text-dynamic { font-size: 1.5rem; }
}
/* 手机端底部菜单样式 */
.mobile-bottom-nav {
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: #ffffff !important; /* 强制白色背景,防止内容透出 */
display: flex;
justify-content: space-around;
align-items: center;
padding: 12px 0 calc(12px + env(safe-area-inset-bottom)); /* 增加内边距 */
box-shadow: 0 -10px 30px rgba(0,0,0,0.08); /* 加强阴影,使其层次感更强 */
z-index: 999999; /* 极致的 z-index确保不被任何元素遮挡 */
border-top: 1px solid rgba(0,0,0,0.05);
display: none; /* 默认隐藏,仅在手机端显示 */
pointer-events: auto;
}
.mobile-nav-item {
display: flex;
flex-direction: column;
align-items: center;
text-decoration: none;
color: var(--text-muted);
font-size: 0.75rem; /* 稍微调大字体 */
font-weight: 700; /* 加粗字体 */
transition: 0.3s;
flex: 1;
}
.mobile-nav-item i {
font-size: 1.5rem; /* 稍微调大图标 */
margin-bottom: 4px;
}
.mobile-nav-item.active, .mobile-nav-item:active {
color: var(--accent);
}
.mobile-nav-item.highlight {
color: var(--accent);
}
/* 手机端布局深度优化 */
@media (max-width: 768px) {
.mobile-bottom-nav {
display: flex;
}
body {
padding-bottom: 90px; /* 增加底部留空,确保内容不被遮挡 */
}
.hero-section {
padding-top: 100px;
padding-bottom: 40px;
text-align: left;
}
.hero-title {
font-size: 1.85rem;
margin-bottom: 1rem;
}
.hero-section .lead {
font-size: 1rem;
margin-bottom: 2rem;
padding: 0 10px;
}
.hero-section .d-flex {
justify-content: center;
flex-direction: column;
gap: 12px !important;
}
.hero-section .btn {
width: 100%;
padding: 12px;
}
.section-title {
font-size: 1.6rem;
margin-bottom: 2.5rem;
}
/* 手机端网格优化2列显示更美观 */
.grid-4 {
grid-template-columns: repeat(2, 1fr) !important;
gap: 12px;
}
.grid-6 {
grid-template-columns: repeat(3, 1fr) !important;
gap: 10px;
}
.tech-card {
padding: 1.25rem !important;
border-radius: 18px;
}
.tech-card i {
font-size: 1.8rem !important;
}
.tech-card h6 {
font-size: 0.85rem;
}
/* 核心服务卡片内边距缩小 */
#core-services .tech-card {
flex-direction: column !important;
text-align: left;
padding: 1rem !important;
}
#core-services .icon-box-colorful {
margin: 0 auto 10px !important;
}
/* 承接业务范围卡片 */
#scope .tech-card {
padding: 12px 8px !important;
}
#scope .tech-card span {
font-size: 0.75rem;
line-height: 1.2;
}
/* 合作伙伴 */
.partners-grid {
grid-template-columns: repeat(3, 1fr) !important;
gap: 10px;
}
.partner-item {
padding: 1rem 0.5rem;
}
.partner-icon {
font-size: 1.6rem !important;
}
.partner-name {
font-size: 0.7rem !important;
}
/* 隐藏部分冗余的悬浮按钮 */
.floating-controls {
bottom: 110px; /* 进一步上移,防止与菜单冲突 */
right: 20px;
}
.float-btn {
width: 48px;
height: 48px;
font-size: 1.2rem;
}
/* 案例卡片高度调整 */
.case-image-wrapper {
height: 180px;
}
/* 交付标准 */
#delivery .grid-4 {
grid-template-columns: 1fr !important;
}
}
/* Mobile View Switching Logic (Jump Pages Effect) */
@media (max-width: 767px) {
/* DEFAULT: Hide sections that don't belong to the current view */
/* View: Home - Show Hero, Services, Scope, Capabilities, Tech, Partners */
body.view-home #cases,
body.view-home #pricing,
body.view-home #delivery,
body.view-home .footer-cta {
display: none !important;
}
/* View: Works - Show only Cases */
body.view-works .hero-section,
body.view-works #core-services,
body.view-works #scope,
body.view-works #capabilities,
body.view-works #tech,
body.view-works #partners,
body.view-works #pricing,
body.view-works #delivery,
body.view-works .footer-cta {
display: none !important;
}
/* View: Pricing - Show Pricing and Delivery */
body.view-pricing .hero-section,
body.view-pricing #core-services,
body.view-pricing #scope,
body.view-pricing #capabilities,
body.view-pricing #tech,
body.view-pricing #partners,
body.view-pricing #cases,
body.view-pricing .footer-cta {
display: none !important;
}
}