section[id] {
    scroll-margin-top: calc(var(--header-height, 80px) + 56px);
}

/* Scroll Animation Utilities */
.fade-up-element {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1), transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.fade-up-element.is-visible {
    opacity: 1;
    transform: translateY(0);
}


/* Reset and Base Styles */
/* Hero Banner Section */
.business-hero {
    height: 480px;
    width: 100%;
    background: url('../../images/about/img-banner.png') no-repeat center center;
    background-size: cover;
    position: relative;
}


/* Page Sub Nav */
.business-nav {
    width: 100%;
    height: 56px;
    background: radial-gradient(circle at 50% 100%, #0a6ccb 0%, #051243 100%);
    box-shadow: 0px 0px 20px 0px rgba(83, 85, 86, 0.1);
    display: flex;
    justify-content: center;
    position: sticky;
    top: var(--header-height, 80px);
    z-index: 1000;
}

.business-nav a.nav-link {
    color: #FFFFFF;
    text-decoration: none;
    font-size: 14px;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    box-sizing: border-box;
    transition: all 0.3s ease;
    position: relative;
    line-height: normal;
}

.nav-text {
    display: block;
    white-space: nowrap;
}

.nav-icon {
    display: none; /* 未选中时完全不占据空间 */
    width: 10px;   /* 轻度调大一点，匹配设计稿比例 */
    height: auto;
    margin-top: 2px;
}

.business-nav a.nav-link.active .nav-icon {
    display: block; /* 选中时参与 Flex 居中计算 */
}

/* NTT Group About Section */
.business-divider {
    width: 1px;
    height: 40px;
    background: #051243;
    opacity: 0.4;
}

.business-cards-item  {
    width: 327px;
    height: 168px;
}

.cards-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(265deg, #1892EE 5.11%, #0032D6 93.64%);
    opacity: 0;
    pointer-events: none;
    z-index: 1;
}

/* hover态和选中态遮罩显示 */
.business-cards-item:hover .cards-overlay,
.business-cards-item.active .cards-overlay {
    opacity: 0.8;
}

/* 卡片底部标签层 */
.cards-label {
    z-index: 2;
    transition: all 0.3s ease;
}

.cards-subtitle {
    display: none;
    font-size: 14px;
    font-weight: 400;
    margin-top: 4px;
    opacity: 0.9;
}

/* hover态和选中态显示副标题 */
.business-cards-item:hover .cards-subtitle,
.business-cards-item.active .cards-subtitle {
    display: block;
}

/* 箭头图标 */
.cards-arrow {
    width: 28px;
    height: 28px;
    object-fit: contain;
    transform: rotate(-90deg); /* 默认：右箭头 */
    transition: transform 0.3s;
}

/* 仅选中态箭头变为向下，hover不改变箭头方向 */
.business-cards-item.active .cards-arrow {
    transform: rotate(0deg); /* 选中：下箭头 */
}

/* 全球评価 - 一排三个卡片 */
.evaluation-card {
    padding: 24px;
}

.evaluation-icon {
    width: 84px;
    height: 84px;
    object-fit: contain;
}

.business-area-icon {
    width: 84px;
    height: 84px;
    object-fit: contain;
}



/* Business Areas Grid - 使用 Grid 实现标准的 2x2 布局 */
.business-areas-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}



/* ==============================================
   Custom History Timeline Graphic
   ============================================== */
.history-timeline-scroll-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.history-timeline-graphic {
    padding: 76px 19px 126px 13px;
}

.history-timeline-line {
    position: absolute;
    left: 40px;
    right: 40px;
    height: 1px;
    border-top: 1px dashed #61A1D2;
    z-index: 1;

}

.timeline-node {
    position: relative;
    z-index: 2;
    flex-shrink: 0;
}

.node-circle {
    background: #FFF;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border: 12px solid #C0D8EB;
    width: 144px;
    height: 144px;
}
.node-sm .node-circle {
   border: 6px solid #C0D8EB;
   width: 64px;
   height: 64px;
}
.node-lg .node-circle {
   border: 18px solid #C0D8EB;
   width: 218px;
   height: 218px;
}

.timeline-node .node-circle::before {
    content: '';
    position: absolute;
    top: -24px; left: -24px; right: -24px; bottom: -24px;
    border: 1px dashed #61A1D2;
    border-radius: 50%;
    pointer-events: none;
    background: #f2f7fb;
    z-index: -1;
}

.timeline-node.node-sm .node-circle::before {
    top: -12px; left: -12px; right: -12px; bottom: -12px;
}


.timeline-node.node-lg .node-circle::before {
    top: -36px; left: -36px; right: -36px; bottom: -36px;
}

.timeline-label {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 3;
}

.timeline-label.top {
    bottom: calc(100% + 12px);
}

.timeline-label.bottom {
    top: calc(100% + 12px);
}
.timeline-node.node-sm .timeline-label.top {
    bottom: calc(100% + 6px);
}


.timeline-label .line {
    width: 1px;
    border-left: 1px dotted #61A1D2;
}

.timeline-label.top .line {
    height: 38px;
}

.timeline-label.bottom .line {
    height: 38px;
}

.timeline-node.node-sm .timeline-label.top .line {
    height: 82px;
}


.timeline-label .dot-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.timeline-label .dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: linear-gradient(265deg, #1892EE 5.11%, #0032D6 93.64%);
}

.timeline-label .text {
    position: absolute;
    left: calc(100% + 12px);
    top: -8px; /* 通过计算：行高 28px 的一半 = 14px，圆点 12px 的一半 = 6px，14 - 6 = 8px */
    transform: none; /* 去除 translateY 使得圆点对齐文本第一行 */
    white-space: nowrap;
    color: #051243;
    font-size: 18px;
    font-weight: 500;
    line-height: 28px;
}

/* Strengths & CEO Section Shared Background */
.business-strengths {
    padding-top: 80px;
    padding-bottom: 204px;
    background: linear-gradient(265deg, rgba(24, 146, 238, 0.1) 5.11%, rgba(0, 50, 214, 0.1) 93.64%);
}

.strengths-tab-list {
    width: 480px;
    background: #e7eff7;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.tab-item {
    height: 80px;
    display: flex;
    align-items: center;
    padding-left: 48px;
    color: #051243;
    font-size: 18px;
    font-weight: 500;
    line-height: 32px; 
    background: #fff;
    cursor: pointer;
}

.tab-item:hover,
.tab-item.active {
    background: linear-gradient(265deg, #1892EE 5.11%, #0032D6 93.64%);
    color: #FFF;
}

.strengths-tabs-container {
    height: 332px; /* 4 * 80px + 3 * 4px gap */
}

.strengths-tab-content {
    width: 544px;
    height: 100%;
    overflow: hidden;
}

.content-item {
    display: none;
    flex-direction: column;
    height: 100%;
    position: relative;
}

/* 强制 jQuery 显示时使用 flex 布局 */
.content-item[style*="display: block"],
.content-item[style*="display: inline-block"] {
    display: flex !important;
}

.img-strength {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.content-item > div.bg-f2f7fb {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2;
    background-color: rgba(242, 247, 251, 0.95); /* 略带透明度效果更好，如果不需要可以自行改回 */
}


/* CEO Message Section */
.business-ceo {
    margin-top: -100px;
    margin-bottom: -100px;
    background: #fff;
    border-radius: 120px;
    border: 1px solid #0032D6;
    box-shadow: 0 0 20px 0 rgba(83, 85, 86, 0.10);
    padding: 80px 100px 64px;
    background-image: 
        linear-gradient(rgba(0, 104, 182, 0.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 104, 182, 0.05) 1px, transparent 1px);
    background-size: 24px 24px;
    overflow: hidden;
    position: relative;
    z-index: 2;
}


.ceo-quote-icon {
    position: absolute;
    top: 0;
    right: 0;
    width: 168px;
    transform: translateX(100%);
}

.ceo-text-content p {
    color:  #051243;
    font-size: 18px;
    line-height: 28px;
}

.ceo-sign-img {
    width: 127px;
    height: 82px;
    object-fit: contain;
}






/* Custom Bullet List */
.dot-radius {
    position: relative;
    padding-left: 15px;
}

.dot-radius::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 6px;
    height: 6px;
    background-color: #051243;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
}

/* Specific Dot for Stats Row (Vertical Centering) */
.dot-stats {
    position: relative;
    padding-left: 16px;
}

.dot-stats::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -3px;
    width: 6px;
    height: 6px;
    background-color: #051243;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
}


.business-history {
    background: url('../../images/about/img-history-bg.png') no-repeat center center;
    background-size: cover;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.business-history-card{
    padding-top: 186px;
    padding-bottom: 96px;
}
.history-swiper {
    padding-bottom: 20px;
}

.timeline-item {
    height: auto !important;
}

.timeline-year {
    height: 64px;
    color: #FFF;
    font-size: 28px; /* 略微调小字号，确保 7 列布局下长年份不溢出 */
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    /* Chevron shape: fixed 30px length for consistency */
    clip-path: polygon(0% 0%, calc(100% - 30px) 0%, 100% 50%, calc(100% - 30px) 100%, 0% 100%, 30px 50%);
    margin-bottom: 40px;
    padding: 0 10px 0 24px; /* 压缩内边距，为文字腾出空间 */
    transition: background-color 0.3s;
}

/* First item has straight left edge */
.timeline-item:first-child .timeline-year {
    clip-path: polygon(0% 0%, calc(100% - 30px) 0%, 100% 50%, calc(100% - 30px) 100%, 0% 100%);
    padding-left: 10px;
}

/* 渐变色效果 - 反转顺序并增加透明度 (0.85) */
.timeline-item:nth-child(1) .timeline-year { background: rgba(0, 50, 214, 0.8); z-index: 7; }
.timeline-item:nth-child(2) .timeline-year { background: rgba(4, 66, 218, 0.8); z-index: 6; }
.timeline-item:nth-child(3) .timeline-year { background: rgba(8, 82, 222, 0.8); z-index: 5; }
.timeline-item:nth-child(4) .timeline-year { background: rgba(12, 98, 226, 0.8); z-index: 4; }
.timeline-item:nth-child(5) .timeline-year { background: rgba(16, 114, 230, 0.8); z-index: 3; }
.timeline-item:nth-child(6) .timeline-year { background: rgba(20, 130, 234, 0.8); z-index: 2; }
.timeline-item:nth-child(7) .timeline-year { background: rgba(24, 146, 238, 0.8); z-index: 1; }

/* Last item has straight right edge to close the bar */
.timeline-item:last-child .timeline-year {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 30px 50%);
    padding-right: 20px;
}


.timeline-content {
    border-right: 2px solid #fff;
    padding: 24px 16px 0 48px;
    min-height: 200px;
    margin-top: 10px;
    width: 0;
    min-width: 100%;
    word-break: break-all;
}

/* 最后一项没有右边框 */
.timeline-item:last-child .timeline-content {
    border-right: none;
}

.timeline-content p {
    line-height: 24px;
    color: #fff;
    font-weight: 500;
    font-size: 18px;
    margin-bottom: 12px;
    white-space: normal; /* 确保内容可以换行 */
}
.timeline-content p span {
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    line-height: 24px;
}


.timeline-nav-container {
    max-width: 1040px; /* 适当增加一点以容纳 48px 按钮 */
    margin: 88px auto 0;
    display: flex;
    align-items: center;
    padding: 0 16px;
}

.swiper-button-prev-custom,
.swiper-button-next-custom {
    width: 48px;
    height: 48px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.swiper-button-prev-custom img,
.swiper-button-next-custom img {
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.rotate-180 {
    transform: rotate(180deg);
}

.history-scrollbar {
    flex: 1;
    height: 4px !important;
    background: rgba(255, 255, 255, 0.34) !important;
    position: relative !important;
    margin: 0 40px; /* 通过左右间距控制进度条与按钮的距离 */
    display: block !important; /* 强制显示，防止 Swiper 锁定隐藏 */
}

/* 即使没有滚动内容，也保持按钮可见（变淡） */
.swiper-button-disabled {
    cursor: default !important;
    pointer-events: none !important;
}

/* 强制即使没有滚动内容，也将控件锁定为可见状态（此时滑块为100%宽度） */
.history-scrollbar.swiper-scrollbar-lock,
.history-next.swiper-button-lock,
.history-prev.swiper-button-lock {
    display: flex !important;
}

/* 进度条特殊显示逻辑 */
.history-scrollbar.swiper-scrollbar-lock {
    display: block !important;
}

.history-scrollbar .swiper-scrollbar-drag {
    background: #FFF !important;
    height: 4px !important;
}

/* ========== 拠点情報 Map Section ========== */
.business-map {
    padding: 52px 0 80px;
    background: url('../../images/about/img-map-bg.png') no-repeat center center;
    background-size: cover;
}

.map-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 0;
}

/* 左侧详情面板 */
.map-detail-panel {
    width: 360px;
    flex-shrink: 0;
    background: #fff;
    position: absolute;
    left: 10px;
    top: 30%;
    z-index: 10;
    padding-top: 4px;
    overflow: hidden;
}

.map-detail-panel::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(265deg, #1892EE 5.11%, #0032D6 93.64%);
    z-index: 2;
}

.map-detail-image {
    width: 100%;
    height: 120px;
    overflow: hidden;
}

.map-detail-info {
    padding: 32px 24px 48px;
}

.map-detail-pin {
    width: 57px;
}

/* 地图容器 */
.map-container {
    flex: 1;
    margin-left: 40px;
}

.map-image {
    display: block;
}

/* 城市标注 */
.map-marker {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    z-index: 5;
    transform: translate(-50%, -50%);
}

/* 标签在图标左侧 */
.map-marker.label-left {
    flex-direction: row-reverse;
}

.marker-icon {
    width: 28px;
    height: 36px;
    flex-shrink: 0;
    background: url('../../images/about/icon-position.png') no-repeat center center;
    background-size: contain;
    transition: transform 0.3s, background-color 0.3s;
}

.marker-label {
    color: #FFF;
    font-size: 14px;
    font-weight: 400;
    line-height: normal;
    padding: 8px 12px;
    background: #051243;
    border-radius: 12px;
    white-space: nowrap;
    transition: background-color 0.3s, box-shadow 0.3s;
}

/* hover / active 态 - 图标放大 + 换图 */
.map-marker:hover .marker-icon,
.map-marker.active .marker-icon {
    transform: scale(1.1);
    background-image: url('../../images/about/icon-position-active.png');
}

.map-marker:hover .marker-label,
.map-marker.active .marker-label {
    box-shadow: 0 0 1px 1px #0032D6, 0 0 15px 0 #0032D6;
}

/* ==============================================
   Responsive - Tablet (max-width: 1200px)
   ============================================== */
@media (max-width: 1200px) {
    .section-max {
        padding-left: 24px;
        padding-right: 24px;
    }

    /* Hero */
    .business-hero {
        height: clamp(280px, 40vw, 480px);
    }

    /* Nav - horizontal scroll */
    .business-nav .section-max {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        gap: 8px;
        padding-left: 16px;
        padding-right: 16px;
    }

    .business-nav a.nav-link {
        white-space: nowrap;
        padding: 0 12px;
    }

    /* Business About */
    .business-about h2 {
        font-size: 28px !important;
        line-height: 40px !important;
    }

    /* Business Cards - Maintain 3 in a row on tablets */
    .business-cards {
        gap: 16px;
        flex-wrap: wrap; /* 允许必要时换行，但通过宽度控制一行三个 */
        justify-content: space-between;
    }

    .business-cards-item {
        width: calc(33.33% - 11px); 
        flex: none;
        height: 160px;
    }

    /* Strengths Tabs */
    .strengths-tab-list {
        width: 280px;
    }

    .strengths-tab-content {
        flex: 1;
        width: auto;
    }

    .tab-item {
        padding-left: 24px;
        font-size: 16px;
        height: 70px;
        line-height: 24px;
    }

    .strengths-tabs-container {
        height: 292px; /* 4 × 70px tabs + 3 × 4px gaps */
    }

    /* CEO */
    .business-ceo {
        border-radius: 80px;
        padding: 60px 48px;
        margin-top: -80px;
        margin-bottom: -80px;
    }

    /* Map */
    .map-detail-panel {
        width: 280px;
    }

    .map-container {
        margin-left: 20px;
    }

    .marker-label {
        font-size: 12px;
        padding: 5px 8px;
    }

    .marker-icon {
        width: 22px;
        height: 28px;
    }
}


/* ==============================================
   Responsive - Mobile (max-width: 768px)
   ============================================== */
@media (max-width: 768px) {
    .font-32 {
        font-size: 24px !important;
    }
    .font-24 {
        font-size: 18px !important;
    }
    .section-max {
        padding-left: 16px;
        padding-right: 16px;
    }

    /* Hero */
    .business-hero {
        height: clamp(200px, 50vw, 320px);
    }

    .business-hero h1 {
        font-size: 32px !important;
    }

    .business-nav {
        height: 48px;
    }

    .business-nav .section-max {
        padding-left: 10px;
        padding-right: 10px;
        gap: 0;
    }

    .business-nav a.nav-link {
        font-size: 12px;
        padding: 0 8px;
    }

    .nav-icon {
        width: 8px;
    }

    .business-about h2 {
        font-size: 24px !important;
        line-height: 32px !important;
    }

    .business-about p {
        font-size: 14px !important;
        margin-top: 16px !important;
        line-height: 24px !important;
    }

    /* 统计项保持居中 */
    .business-about .d-flex.justify-center {
        flex-direction: column;
        align-items: center !important; 
        gap: 20px;
    }
    
    .business-about .flex-column:not(.cards-label *) {
        align-items: center;
    }

    /* 卡片内部文字左对齐 */
    .cards-label .flex-column {
        align-items: flex-start !important;
    }

    /* 时间轴缩略显示，防止节点重叠 */
    .history-timeline-graphic {
        min-width: 1100px;
        zoom: 0.6;
        padding-bottom: 240px; 
    }

    .business-divider {
        display: none;
    }

    /* Business Cards - Switch to 1 per row on mobile */
    .business-cards {
        flex-direction: column; /* 手机端一排一个 */
        gap: 16px;
        margin-top: 32px;
        overflow-x: hidden; /* 防止内容撑开页面 */
    }

    .business-cards-item {
        width: 100% !important; /* 占满整行 */
        height: 160px;
        flex: none;
    }

    /* Details Panel & Evaluation Cards */
    .details-panel {
        padding-top: 40px;
        padding-bottom: 40px !important;
    }

    /* Mobile specific style when panel is moved into card list */
    .details-panel.is-mobile-active {
        background-color: #f2f7fb;
        padding-left: 16px;
        padding-right: 16px;
        position: relative;
        width: 100%;
        box-sizing: border-box;
        overflow-x: hidden; /* 自身不滚动，让内部 wrapper 滚动 */
    }
    
    .details-panel.is-mobile-active .history-timeline-scroll-wrapper {
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        display: block;
        min-width: 0;
    }

    .details-panel p {
        font-size: 14px !important;
        padding: 0 10px;
    }

    .business-areas-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 32px;
    }

    .business-area-card {
        padding: 20px !important;
    }

    .evaluation-cards {
        flex-direction: column !important; /* 强制手机端一排一个 */
        gap: 16px !important;
        overflow-x: visible;
        padding-bottom: 0;
    }

    .evaluation-card {
        width: 100% !important;
        flex: none;
        padding: 24px !important;
        box-sizing: border-box;
    }

    .evaluation-icon {
        width: 64px;
        height: 64px;
    }

    /* Strengths Section - Title on new line */
    .business-strengths {
        padding-top: 48px;
        padding-bottom: 120px;
    }

    .business-strengths .d-flex.justify-between {
        flex-direction: column; /* 标题另起一行 */
        gap: 20px;
    }

    .dot-stats {
        margin-bottom: 12px;
    }

    .strengths-tabs-container {
        flex-direction: column;
        height: auto;
    }

   
    /* Mobile Accordion Styles */
    .strengths-accordion {
        margin-top: 24px;
        display: block !important;
    }
    .strengths-tabs-container {
        display: none !important;
    }

    .accordion-item {
        background: #fff;
        margin-bottom: 4px; /* 减小标题块之间的间距 */
        border-radius: 0;   /* 严格参考设计图：无圆角 */
        overflow: hidden;
        box-shadow: none;   /* 严格参考设计图：无阴影 */
    }

    .accordion-header {
        padding: 12px; /* 参考图：上下 12px，左右 30px */
        cursor: pointer;
        background: #fff;
        transition: all 0.3s ease;
        border-bottom: 1px solid #f0f0f0;
    }

    .accordion-item.active .accordion-header {
        background: linear-gradient(265deg, #1892EE 5.11%, #0032D6 93.64%);
        border-bottom: none;
    }

    .accordion-header .header-text {
        font-size: 18px;    /* 参考图：18px */
        font-weight: 500;   /* 参考图：500 */
        line-height: 32px;  /* 参考图：32px */
        color: #051243;
    }

    .accordion-item.active .accordion-header .header-text {
        color: #fff;
    }

    .accordion-icon {
        width: 8px;
        height: auto;
        transition: transform 0.3s ease;
        filter: brightness(0.2);
        transform: rotate(-90deg); /* 默认折叠状态：箭头指向右侧 */
    }

    .accordion-item.active .accordion-icon {
        transform: rotate(0deg); /* 展开状态：箭头指向下方 */
        filter: brightness(0) invert(1);
    }

    .accordion-content {
        background: #fff;
        position: relative;
        overflow: hidden;
        /* 移除固定 height: 216px !important，否则 slideDown 无法计算高度导致动画丢失 */
        display: none; 
    }

    /* 确保图片撑起容器高度，且不压缩变形 */
    .accordion-content img {
        display: block;
        width: 100%;
        height: 216px !important; /* 参考：固定高度 216px */
        object-fit: cover;        /* 裁剪填充，保持宽高比 */
        object-position: top;     /* 严格参考：从上往下裁剪，优先保留顶部内容 */
    }

    .content-text {
        position: absolute; /* 核心：盖在图片上 */
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 2;
        padding: 16px 20px !important;
        background: rgba(242, 247, 251, 0.84); /* 浅蓝色半透明背景，确保文字看清 */
        font-size: 14px;
        color: #051243;
        line-height: 1.6;
        backdrop-filter: blur(4px); /* 磨砂玻璃效果，增加高级感 */
    }

    /* CEO Section */
    .business-ceo {
        margin-top: -40px;
        margin-bottom: -40px;
        border-radius: 40px;
        padding: 40px 24px 32px;
    }

    .ceo-text-content p {
        font-size: 14px;
        line-height: 24px;
    }

    .ceo-quote-icon { width: 80px; }

    /* History */
    .timeline-year {
        font-size: 16px;
        height: 40px;
        padding: 0 8px 0 16px;
        margin-bottom: 20px;
        clip-path: polygon(0% 0%, calc(100% - 15px) 0%, 100% 50%, calc(100% - 15px) 100%, 0% 100%, 15px 50%);
    }

    .timeline-item:first-child .timeline-year {
        padding-left: 8px;
    }

    .timeline-content { min-height: 120px; }

    /* Map Section - stacked layout */
    .business-map {
        padding: 32px 0 84px;
    }

    .business-map h2 {
        font-size: 24px !important;
        margin-top: 40px !important;
        margin-bottom: 16px;
    }

    .map-wrapper {
        flex-direction: column;
        gap: 16px;
    }

    .map-detail-panel {
        position: relative;
        width: 100%;
        left: 0;
        top: 0;
        display: flex;
        flex-direction: row;
        order: 2;
    }

    .map-detail-image {
        width: 140px;
        height: auto;
        flex-shrink: 0;
    }

    .map-detail-info {
        padding: 16px;
        flex: 1;
    }

    .map-detail-info h3 {
        font-size: 18px !important;
    }

    .map-detail-info p {
        font-size: 14px !important;
    }

    .map-detail-pin {
        width: 40px;
    }

    .map-container {
        margin-left: 0;
        order: 1;
    }

    .marker-label {
        font-size: 11px;
        padding: 4px 6px;
        border-radius: 8px;
    }

    .marker-icon {
        width: 18px;
        height: 24px;
    }

    .map-marker {
        gap: 3px;
    }
}
