/* Banner 僅調整文字層級，不改變場景、卡牆、圖片、動畫及高度。 */
.solutions_redesign .solutions_bento h1 { font-size: clamp(46px, 5.9vw, 116px); font-weight: 600; line-height: 1.04; letter-spacing: -.065em; margin-bottom: 28px; }
.solutions_redesign .solutions_title_small { font-size: .65em; font-weight: 350; line-height: 1.18; letter-spacing: -.055em; color: #009da6; margin-top: .13em; }
.solutions_redesign .solutions_bento_lead { font-weight: 600; font-size: clamp(18px, 1.5vw, 28px); line-height: 1.65; letter-spacing: .035em; margin-bottom: 20px; }
.solutions_redesign .solutions_bento_description { max-width: 100%; font-size: clamp(16px, 1.05vw, 19px); line-height: 2; color: #607e89; }
@media (max-width: 1199px) {
    .solutions_redesign .solutions_bento h1 { font-size: 6.05vw; }
    .solutions_redesign .solutions_bento_lead { font-size:19px; }
    .solutions_redesign .solutions_bento_description { font-size:14px; }
}
@media (max-width: 700px) {
    .solutions_redesign .solutions_bento h1 { font-size: clamp(41px, 12.4vw, 82px); }
    .solutions_redesign .solutions_bento_lead { font-size:19px; }
    .solutions_redesign .solutions_bento_description { font-size:14px; }
    .solutions_redesign .solutions_bento_description br { display: none; }
}

/* 方案內容使用獨立作用域，冰白紙色與所有版型都不會影響 Header 或 Footer。 */
.solutions_redesign .solution_scenarios { padding-block: clamp(70px, 6vw, 112px) 30px; background: #f4fafc; }
.solutions_section_heading { display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 44px; }
.solutions_section_heading .digital_eyebrow { color: #608591; font-size:12px; margin-bottom: 20px; letter-spacing: .14em; }
.solutions_section_heading h2 { font-size: clamp(29px, 2.7vw, 46px); color: #163f50; letter-spacing: .055em; line-height: 1.4; font-weight: 500; margin-bottom: 15px; }
.solutions_section_heading p:last-child { font-size:16px; line-height: 1.9; color: #718991; letter-spacing: .055em; margin-bottom: 0; }
.solutions_outline_link { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; gap: 35px; min-height: 47px; border: 1px solid #96b4bf; border-radius: 50px; padding: 10px 24px; font-size:14px; font-weight: 500; letter-spacing: .07em; color: #285566; transition: border-color .25s, background .25s; }
.solutions_outline_link > span { color: #008e98; font-size:22px; }
.solutions_outline_link:hover { background: #e6f4f5; border-color: #00a8a8; }
@media (max-width: 700px) {
    .solutions_redesign .solution_scenarios { padding: 60px 22px 22px; }
    .solutions_section_heading { align-items: start; flex-direction: column; gap: 23px; margin-bottom: 30px; }
    .solutions_section_heading .digital_eyebrow { font-size:11px; margin-bottom: 14px; }
    .solutions_section_heading h2 { font-size:32px; }
    .solutions_section_heading p:last-child { font-size:14px; }
    .solutions_outline_link { min-height: 44px; padding: 9px 18px; font-size:13px; }
}

/* 四乘二服務入口保留 CMS 中文、英文與摘要，展開內容另成完整閱讀面板。 */
.solutions_overview_grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.solutions_overview_card { min-width: 0; padding: clamp(23px, 2vw, 35px); border-radius: 17px; border: 1px solid #eaf2f5; background: linear-gradient(145deg, #ffffffd9, #f9fcfddd); box-shadow: 0 10px 28px #21485805; transition: transform .35s, border-color .35s, box-shadow .35s; }
.solutions_overview_top { display: flex; align-items: center; gap: 12px; margin-bottom: 29px; }
.solutions_overview_icon { display: grid; place-items: center; width: 47px; height: 47px; color: #087d8c; border-radius: 13px; background: radial-gradient(circle, #00a8a811, #00a8a800 72%); transition: background .35s, filter .35s; }
.solutions_overview_icon svg { width: 31px; height: 31px; stroke-width: 1.25; }
.solutions_overview_number { margin-left: auto; font-size:12px; letter-spacing: .05em; color: #9db6bd; }
.solutions_overview_arrow { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 50%; background: #eaf5f7; color: #138792; font-size:22px; line-height: 1; transition: transform .3s, background .3s; }
.solutions_overview_card h3 { font-size: clamp(20px, 1.4vw, 25px); color: #20495c; font-weight: 600; line-height: 1.55; margin: 0 0 4px; letter-spacing: .015em; }
.solutions_overview_english { display: block; color: #6a8793; font-size:13px; line-height: 1.6; margin-bottom: 18px; }
.solutions_overview_card > p { color: #748b94; font-size:14px; line-height: 1.85; margin: 0; }
.solutions_overview_card:is(:hover, :focus-visible), .solutions_overview_card[aria-expanded='true'] { border-color: #49b9c0; box-shadow: 0 12px 25px #0f4c5c0d; transform: translateY(-5px); }
.solutions_overview_card:is(:hover, :focus-visible) .solutions_overview_icon { background: #dff5f2; filter: drop-shadow(0 0 5px #2dd4bf25); }
.solutions_overview_card:is(:hover, :focus-visible) .solutions_overview_arrow { transform: translateX(3px); background: #d3eeee; }
@media (max-width: 1100px) { .solutions_overview_grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; } .solutions_overview_card { padding: 27px; } .solutions_overview_card h3 { font-size:22px; } }
@media (max-width: 700px) {
    .solutions_overview_grid { gap: 12px; }
    .solutions_overview_card { padding: 19px 15px; border-radius: 13px; }
    .solutions_overview_top { gap: 5px; margin-bottom: 18px; }
    .solutions_overview_icon { width: 32px; height: 35px; }
    .solutions_overview_icon svg { width: 27px; height: 27px; }
    .solutions_overview_number { font-size:11px; }
    .solutions_overview_arrow { width: 23px; height: 23px; font-size:20px; }
    .solutions_overview_card h3 { font-size:18px; }
    .solutions_overview_english { font-size:12px; margin-bottom: 13px; }
    .solutions_overview_card > p { font-size:13px; }
}
@media (max-width: 350px) { .solutions_overview_grid { grid-template-columns: 1fr; } .solutions_overview_card { padding: 23px; } .solutions_overview_top { margin-bottom: 15px; } }

/* 原有詳情、功能、圖片與案例完全沿用，JavaScript 只控制面板與卡片狀態。 */
.solutions_redesign .solution_scenario_list { margin-top: 28px; }
.solutions_content_ready .solution_scenario:not([open]) { display: none; }
.solutions_redesign .solution_scenario { border: 1px solid #d8e9ee; border-radius: 20px; background: #fff; padding: 0 35px; scroll-margin-top: 35px; margin-bottom: 15px; }
.solutions_redesign .solution_scenario[open] { box-shadow: 0 18px 50px #0f4c5c06; }
.solutions_redesign .solution_scenario summary { gap: 24px; padding-block: 27px; }
.solutions_redesign .solution_scenario_name > strong { font-size: clamp(23px, 2.1vw, 34px); }
.solutions_redesign .solution_scenario_name > small { font-size:12px; }
.solutions_redesign .solution_scenario_body { padding: 15px 0 32px; }
.solutions_redesign .solution_scenario_intro { font-size:17px; line-height: 2; max-width: 900px; margin-bottom: 40px; }
.solutions_redesign .solution_strategy_flow { gap: 25px; }
.solutions_redesign .solution_scenario_image { border-radius: 14px; }
.solutions_detail_close { display: flex; align-items: center; gap: 40px; margin: 0 auto 28px; border: 1px solid #b7cfd5; border-radius: 30px; padding: 9px 23px; min-height: 44px; color: #315d6c; background: #f6fbfc; font-size:14px !important; cursor: pointer; }
.solutions_detail_close[hidden] { display: none; }
.solutions_detail_close:hover { background: #e6f6f5; }
@media (max-width: 700px) {
    .solutions_redesign .solution_scenario { padding-inline: 20px; border-radius: 15px; }
    .solutions_redesign .solution_scenario summary { gap: 10px; }
    .solutions_redesign .solution_scenario_name > strong { font-size:22px; }
    .solutions_redesign .solution_scenario_name > small { font-size:11px; }
    .solutions_redesign .solution_scenario_intro { font-size:15px; }
    .solutions_redesign .solution_strategy_flow { grid-template-columns: 1fr; }
}

/* 保留既有系統整合互動，收納為延伸閱讀，讓主要價格段落維持設計稿的節奏。 */
.solutions_architecture_wrap { padding: 0 var(--digital_gutter) 35px; background: #f4fafc; }
.solutions_architecture_extra > summary { display: flex; justify-content: space-between; gap: 20px; align-items: center; padding: 19px 0; border-block: 1px solid #e4eef1; color: #567886; cursor: pointer; list-style: none; font-size:14px; letter-spacing: .03em; }
.solutions_architecture_extra > summary::-webkit-details-marker { display: none; }
.solutions_architecture_extra > summary > span:first-child { color: #879fa8; }
.solutions_architecture_extra > summary i { font-style: normal; color: #009da6; margin-left: 20px; }
.solutions_redesign .solutions_architecture_extra .solution_architecture { padding: 42px 28px; border-radius: 15px; background: #edf6f8; }
.solutions_redesign .solutions_architecture_extra h2 { font-size: clamp(24px, 2.3vw, 38px); }
.solutions_redesign .solutions_architecture_extra .digital_eyebrow { font-size:11px; }
@media (max-width: 700px) { .solutions_architecture_wrap { padding-inline: 22px; padding-bottom: 12px; } .solutions_architecture_extra > summary { font-size:13px; } .solutions_architecture_extra > summary > span:first-child { display: none; } .solutions_redesign .solutions_architecture_extra .solution_architecture { padding: 25px 20px; } }
@media (prefers-reduced-motion: reduce) { .solutions_overview_card, .solutions_overview_icon, .solutions_overview_arrow, .solutions_outline_link { transition: none; } .solutions_overview_card:is(:hover, :focus-visible), .solutions_overview_card[aria-expanded='true'] { transform: none; } }
