/* ============================================================
   平台首頁　設計統一　2026-09-20
   ------------------------------------------------------------
   前一支 ui-refresh 是在修缺陷（間距壞掉、字太小、被裁切）。
   這一支才是設計：建立一套共用的視覺語言，讓整頁看起來是同一個
   人做的，而不是各區塊各長各的。

   建立的規則：
     圓角      一律 12px（原本 18 / 10 / 0 三種混用）
     卡片      白底 + 1px 邊框 + 極淡陰影，hover 才加深
     字級階層  主角(價格) 32 / 標題 26 / 內文 15 / 附註 13
     強調色    #1F6F68 一色到底，不再出現第二種藍
     區塊節奏  上下 72px，標題與內容 24px
   ============================================================ */

:root {
    --d-ink:        #111827;   /* 主文字 */
    --d-ink-2:      #4b5563;   /* 次要文字 */
    --d-ink-3:      #8b95a3;   /* 附註 */
    --d-line:       #e5e8ec;   /* 分隔線 */
    --d-line-2:     #d3d9e0;   /* hover 邊框 */
    --d-brand:      #1f6f68;   /* 品牌強調 */
    --d-brand-ink:  #12554f;   /* 深一階 */
    --d-brand-bg:   #eef6f5;   /* 品牌淺底 */
    --d-surface:    #ffffff;
    --d-surface-2:  #f7f9fa;
    --d-radius:     12px;
    --d-shadow:     0 1px 2px rgba(17,24,39,.04);
    --d-shadow-up:  0 10px 28px rgba(17,24,39,.10);
}

/* ============================================================
   一、卡片系統：全站一種卡片，不要每區一個樣
   ============================================================ */
.alert.alert-inline,
.cetalive-upgrade-card,
.cetalive-feature-mini,
.icon-box.icon-box-side,
.product.product-border {
    border-radius: var(--d-radius) !important;
    border: 1px solid var(--d-line) !important;
    background: var(--d-surface) !important;
    box-shadow: var(--d-shadow) !important;
    transition: border-color .2s ease, box-shadow .25s ease, transform .25s ease !important;
}

.alert.alert-inline:hover,
.icon-box.icon-box-side:hover,
.product.product-border:hover {
    border-color: var(--d-line-2) !important;
    box-shadow: var(--d-shadow-up) !important;
    transform: translateY(-2px);
}

/* ============================================================
   二、「頂級規格 親民價格」橫幅重新設計
   原本：灰塊 + 黑斜切 + 虛線外框 + 跑馬燈，四種裝飾疊在一起，
         文字還被按鈕裁掉。改成一條乾淨的深色 CTA 帶。
   ============================================================ */
.banner.banner-simple {
    background: linear-gradient(120deg, #17211c 0%, #1f2d27 55%, #1f6f68 100%) !important;
    border: 0 !important;
    border-radius: var(--d-radius) !important;
    padding: 20px 26px !important;
    overflow: hidden;
}

.banner.banner-simple .banner-content {
    display: flex !important;
    align-items: center !important;
    gap: 22px;
    flex-wrap: nowrap;
    position: relative;
}

/* 原本的裝飾：5px 白虛線外框 + 一塊 70px 旋轉的白斜切，
   兩個都是偽元素畫的，疊在深色底上很雜，直接拿掉 */
.banner.banner-simple .banner-content:before,
.banner.banner-simple .banner-content:after {
    display: none !important;
    content: none !important;
}

.banner.banner-simple .banner-subtitle:before {
    display: none !important;
    content: none !important;
}

/* 左側標語：拿掉灰底方塊與斜線 */
.banner.banner-simple .banner-subtitle {
    background: none !important;
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    letter-spacing: .02em !important;
    white-space: nowrap;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 auto;
    position: relative;
    padding-right: 22px !important;
}

/* 標語與跑馬燈之間的分隔線（蓋掉原本那塊白斜切） */
.banner.banner-simple .banner-subtitle:after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    right: 0 !important;
    left: auto !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 1px !important;
    height: 20px !important;
    border: 0 !important;
    background: rgba(255, 255, 255, .3) !important;
}

.banner.banner-simple .banner-subtitle span {
    background: none !important;
    padding: 0 !important;
}

/* 中間跑馬燈：不要斜體、不要超大字，是輔助資訊不是主角 */
.banner.banner-simple .banner-title {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0 !important;
    font-style: normal !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
    color: rgba(255, 255, 255, .88) !important;
    text-transform: none !important;
}

.banner.banner-simple .banner-title strong {
    font-weight: 500 !important;
}

/* 右側按鈕：不要被文字擠到 */
.banner.banner-simple .btn {
    flex: 0 0 auto;
    margin: 0 !important;
    background: #fff !important;
    color: var(--d-brand-ink) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
    padding: 10px 20px !important;
    min-height: 0 !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .18);
}

.banner.banner-simple .btn:hover {
    background: var(--d-brand-bg) !important;
    color: var(--d-brand-ink) !important;
}

@media (max-width: 991px) {
    .banner.banner-simple .banner-content {
        flex-wrap: wrap;
        gap: 12px;
    }
    .banner.banner-simple .banner-subtitle {
        width: 100%;
        padding-right: 0 !important;
        font-size: 15px !important;
    }
    .banner.banner-simple .banner-subtitle:after { display: none; }
    .banner.banner-simple .banner-title { width: 100%; font-size: 13px !important; }
    .banner.banner-simple .btn { width: auto; }
}

/* ============================================================
   三、價格區：這是賣東西的地方，要有方案感
   ============================================================ */
.section-title {
    font-size: 24px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    color: var(--d-ink) !important;
    margin-bottom: 20px !important;
    padding-bottom: 0 !important;
    border: 0 !important;
    letter-spacing: -.01em !important;
}

.section-title:after { display: none !important; }

.section-title em,
.section-title small {
    display: inline-block;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 600 !important;
    color: var(--d-ink-3) !important;
    background: var(--d-surface-2);
    border: 1px solid var(--d-line);
    border-radius: 999px;
    padding: 3px 10px;
    margin-left: 10px;
    vertical-align: middle;
}

/* 四張卡統一白底，用邊框與強調色做層次，不要一半灰一半白 */
.alert.alert-message.alert-light.alert-inline {
    background: var(--d-surface) !important;
}

.alert.alert-inline {
    padding: 22px 20px !important;
}

/* 方案名稱 */
.pricing-title h1 {
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: var(--d-ink-2) !important;
    margin: 0 0 6px !important;
    letter-spacing: 0 !important;
    white-space: nowrap;
}

.pricing-title h1 em {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: var(--d-ink-3) !important;
    font-style: normal !important;
    margin-left: 3px;
}

/* 價格才是主角 */
.pricing-prize h4 {
    font-size: 32px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    color: var(--d-ink) !important;
    margin: 0 0 14px !important;
    letter-spacing: -.02em !important;
    white-space: nowrap;
}

.pricing-prize h4 em {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--d-ink-3) !important;
    font-style: normal !important;
    margin-left: 4px;
}

/* 說明文字：弱化，不要跟價格搶 */
.pricing-button {
    font-size: 13px !important;
    line-height: 1.6 !important;
    color: var(--d-ink-3) !important;
    padding-top: 14px !important;
    border-top: 1px solid var(--d-line);
    margin: 0 !important;
}

/* 主推方案：用強調色標出來，不是只有一個小紅標 */
.alert.alert-inline:has(.label-sale) {
    border-color: var(--d-brand) !important;
    box-shadow: 0 0 0 1px var(--d-brand), var(--d-shadow) !important;
}

.alert.alert-inline:has(.label-sale) .pricing-prize h4 {
    color: var(--d-brand) !important;
}

.product-label-group {
    top: 14px !important;
    right: 14px !important;
    left: auto !important;
}

.product-label.label-sale {
    background: var(--d-brand) !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 11px !important;
    letter-spacing: .02em;
}

@media (max-width: 767px) {
    .section-title { font-size: 20px !important; margin-bottom: 14px !important; }
    .section-title em,
    .section-title small { display: block; width: fit-content; margin: 8px 0 0; }
    .alert.alert-inline { padding: 16px 14px !important; }
    .pricing-title h1 { font-size: 16px !important; }
    .pricing-prize h4 { font-size: 23px !important; margin-bottom: 10px !important; }
    .pricing-button { font-size: 12px !important; padding-top: 10px !important; }
}

/* ============================================================
   四、CetAlive 區塊：藍色寫在 PHP 的 inline style 裡，
       這裡把它拉回同一個色系
   ============================================================ */
.cetalive-upgrade-card {
    background: linear-gradient(135deg, #fbfdfd 0%, #f2f8f7 100%) !important;
    border-color: rgba(31, 111, 104, .16) !important;
    border-radius: var(--d-radius) !important;
    padding: 26px !important;
}

.cetalive-upgrade-card:before {
    background: radial-gradient(circle, rgba(31, 111, 104, .14), rgba(31, 111, 104, 0) 70%) !important;
}

.cetalive-upgrade-eyebrow { color: var(--d-brand) !important; }
.cetalive-upgrade-title   { color: var(--d-ink) !important; font-size: 22px !important; }
.cetalive-upgrade-desc    { color: var(--d-ink-2) !important; }

.cetalive-feature-mini {
    background: #fff !important;
    border-color: var(--d-line) !important;
    border-radius: 10px !important;
}

.cetalive-feature-mini strong { color: var(--d-brand) !important; }
.cetalive-feature-mini span   { color: var(--d-ink-2) !important; }

.cetalive-upgrade-btn,
.cetalive-cta-btn {
    background: var(--d-brand) !important;
    box-shadow: 0 6px 18px rgba(31, 111, 104, .25) !important;
    border-radius: 999px !important;
}

.cetalive-upgrade-btn:hover,
.cetalive-cta-btn:hover {
    background: var(--d-brand-ink) !important;
    box-shadow: 0 10px 24px rgba(31, 111, 104, .32) !important;
}

.cetalive-cta-pill {
    background: var(--d-brand-bg) !important;
    color: var(--d-brand) !important;
    border-color: rgba(31, 111, 104, .18) !important;
}

/* ============================================================
   五、服務入口：四個一排，圖示不要比字大三倍
   ============================================================ */
.icon-box.icon-box-side {
    padding: 18px 16px !important;
    margin: 0 6px !important;
}

.icon-box.icon-box-side .icon-box-icon {
    color: var(--d-brand) !important;
    font-size: 30px !important;
}

.icon-box-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--d-ink) !important;
    margin-bottom: 4px !important;
}

.icon-box-content .btn {
    color: var(--d-brand) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

/* ============================================================
   六、區塊節奏：段落之間的呼吸一致
   ============================================================ */
.grey-section { background: var(--d-surface-2) !important; }

section.container,
.grey-section > .container {
    padding-top: 8px;
    padding-bottom: 8px;
}

.mb-60 { margin-bottom: 44px !important; }

@media (max-width: 767px) {
    .mb-60 { margin-bottom: 26px !important; }
}
