/* 好運器首頁原創圖像系統 v1 — warm hug-line, 2026-07-15 */
.home-page {
  --hy-cream: #fff8ee;
  --hy-coral: #f47c6c;
  --hy-gold: #f3b84b;
  --hy-teal: #2d8c88;
  --hy-navy: #17324d;
  --hy-paper: #fffdf9;
  --hy-line: #eadfce;
}

/* Font Awesome 功能符號改為好運器自有 Hug-line SVG；品牌商標圖示不覆寫。 */
.home-page :is(i.fas, i.fa-solid):is(
  .fa-house,.fa-box,.fa-box-open,.fa-boxes,.fa-cubes,.fa-file-invoice-dollar,
  .fa-money-bill-wave,.fa-dollar-sign,.fa-search-dollar,.fa-magnifying-glass,.fa-search,
  .fa-user,.fa-user-circle,.fa-user-plus,.fa-truck,.fa-truck-fast,.fa-barcode,
  .fa-warehouse,.fa-copy,.fa-check,.fa-check-circle,.fa-ship,.fa-plane,
  .fa-plane-arrival,.fa-plane-departure,.fa-building,.fa-calculator,.fa-document,
  .fa-file-signature,.fa-book-open,.fa-balance-scale,.fa-weight-hanging,.fa-headset,
  .fa-life-ring,.fa-camera,.fa-id-card,.fa-passport,.fa-shield-alt,.fa-info-circle,
  .fa-globe,.fa-globe-asia,.fa-gavel,.fa-ruler-combined,.fa-drafting-compass,
  .fa-magic,.fa-robot,.fa-rocket,.fa-plug,.fa-arrow-right,.fa-circle-chevron-right,
  .fa-external-link-alt,.fa-ellipsis-vertical,.fa-right-to-bracket,.fa-right-from-bracket
) {
  display: inline-block;
  flex: 0 0 auto;
  width: 1.18em;
  height: 1.18em;
  font-size: inherit;
  line-height: 1;
  vertical-align: -0.16em;
  background-color: currentColor;
  -webkit-mask-image: var(--hy-icon);
  mask-image: var(--hy-icon);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
.home-page :is(i.fas, i.fa-solid):is(
  .fa-house,.fa-box,.fa-box-open,.fa-boxes,.fa-cubes,.fa-file-invoice-dollar,
  .fa-money-bill-wave,.fa-dollar-sign,.fa-search-dollar,.fa-magnifying-glass,.fa-search,
  .fa-user,.fa-user-circle,.fa-user-plus,.fa-truck,.fa-truck-fast,.fa-barcode,
  .fa-warehouse,.fa-copy,.fa-check,.fa-check-circle,.fa-ship,.fa-plane,
  .fa-plane-arrival,.fa-plane-departure,.fa-building,.fa-calculator,.fa-document,
  .fa-file-signature,.fa-book-open,.fa-balance-scale,.fa-weight-hanging,.fa-headset,
  .fa-life-ring,.fa-camera,.fa-id-card,.fa-passport,.fa-shield-alt,.fa-info-circle,
  .fa-globe,.fa-globe-asia,.fa-gavel,.fa-ruler-combined,.fa-drafting-compass,
  .fa-magic,.fa-robot,.fa-rocket,.fa-plug,.fa-arrow-right,.fa-circle-chevron-right,
  .fa-external-link-alt,.fa-ellipsis-vertical,.fa-right-to-bracket,.fa-right-from-bracket
)::before { content: none !important; }

.home-page :is(.fa-house) { --hy-icon: url('/images/icons/hug-line/home.png'); }
.home-page :is(.fa-box,.fa-box-open,.fa-boxes,.fa-cubes) { --hy-icon: url('/images/icons/hug-line/parcel.png'); }
.home-page :is(.fa-file-invoice-dollar,.fa-money-bill-wave,.fa-dollar-sign,.fa-search-dollar) { --hy-icon: url('/images/icons/hug-line/receipt.png'); }
.home-page :is(.fa-magnifying-glass,.fa-search) { --hy-icon: url('/images/icons/hug-line/search.png'); }
.home-page :is(.fa-user,.fa-user-circle,.fa-user-plus) { --hy-icon: url('/images/icons/hug-line/person.png'); }
.home-page :is(.fa-truck,.fa-truck-fast,.fa-rocket,.fa-plug) { --hy-icon: url('/images/icons/hug-line/truck.png'); }
.home-page .fa-barcode { --hy-icon: url('/images/icons/hug-line/barcode.png'); }
.home-page .fa-warehouse { --hy-icon: url('/images/icons/hug-line/warehouse.png'); }
.home-page .fa-copy { --hy-icon: url('/images/icons/hug-line/copy.png'); }
.home-page :is(.fa-check,.fa-check-circle) { --hy-icon: url('/images/icons/hug-line/check.png'); }
.home-page .fa-ship { --hy-icon: url('/images/icons/hug-line/ship.png'); }
.home-page :is(.fa-plane,.fa-plane-arrival,.fa-plane-departure) { --hy-icon: url('/images/icons/hug-line/plane.png'); }
.home-page .fa-building { --hy-icon: url('/images/icons/hug-line/building.png'); }
.home-page .fa-calculator { --hy-icon: url('/images/icons/hug-line/calculator.png'); }
.home-page :is(.fa-document,.fa-file-signature,.fa-book-open,.fa-passport) { --hy-icon: url('/images/icons/hug-line/document.png'); }
.home-page :is(.fa-balance-scale,.fa-weight-hanging) { --hy-icon: url('/images/icons/hug-line/scale.png'); }
.home-page :is(.fa-headset,.fa-life-ring) { --hy-icon: url('/images/icons/hug-line/headset.png'); }
.home-page .fa-camera { --hy-icon: url('/images/icons/hug-line/camera.png'); }
.home-page .fa-id-card { --hy-icon: url('/images/icons/hug-line/id-card.png'); }
.home-page .fa-shield-alt { --hy-icon: url('/images/icons/hug-line/shield.png'); }
.home-page .fa-info-circle { --hy-icon: url('/images/icons/hug-line/info.png'); }
.home-page :is(.fa-globe,.fa-globe-asia) { --hy-icon: url('/images/icons/hug-line/globe.png'); }
.home-page .fa-gavel { --hy-icon: url('/images/icons/hug-line/gavel.png'); }
.home-page :is(.fa-ruler-combined,.fa-drafting-compass) { --hy-icon: url('/images/icons/hug-line/ruler.png'); }
.home-page :is(.fa-magic,.fa-robot) { --hy-icon: url('/images/icons/hug-line/spark.png'); }
.home-page :is(.fa-arrow-right,.fa-circle-chevron-right,.fa-external-link-alt,.fa-right-to-bracket,.fa-right-from-bracket) { --hy-icon: url('/images/icons/hug-line/arrow.png'); }
.home-page .fa-ellipsis-vertical { --hy-icon: url('/images/icons/hug-line/menu.png'); }

/* 信任牆：保留新版正確位置，改為更溫暖、可掃讀的卡片語言。 */
.home-page .trust-wall {
  background:
    radial-gradient(circle at 14% 8%, rgba(243,184,75,.13), transparent 26rem),
    linear-gradient(180deg, var(--hy-cream), #fff 86%);
  border-color: var(--hy-line);
}
.home-page .trust-wall__eyebrow {
  color: #176d69;
  background: #effaf6;
  border-color: #b9e7da;
}
.home-page .trust-wall__title { color: var(--hy-navy); }
.home-page .trust-wall__lead { color: #667085; }
.home-page .trust-wall__grid { gap: 14px; }
.home-page .trust-wall__card {
  border-color: var(--hy-line);
  border-radius: 20px;
  background: rgba(255,253,249,.96);
  box-shadow: 0 10px 26px -20px rgba(23,50,77,.42);
}
.home-page .trust-wall__card:hover {
  border-color: #e7bd80;
  box-shadow: 0 16px 34px -22px rgba(23,50,77,.46);
}
.home-page .trust-wall__icon {
  width: 46px;
  height: 46px;
  border-radius: 15px;
  font-size: 1.18rem;
}
.home-page .trust-wall__card:nth-child(1) .trust-wall__icon { color: #b84e45; background: #fff0ec; }
.home-page .trust-wall__card:nth-child(2) .trust-wall__icon { color: #94640a; background: #fff6d9; }
.home-page .trust-wall__card:nth-child(3) .trust-wall__icon { color: #176d69; background: #eaf8f5; }
.home-page .trust-wall__card:nth-child(4) .trust-wall__icon { color: #315b84; background: #edf5fc; }
.home-page .trust-wall__h { color: var(--hy-navy); }
.home-page .trust-wall__p { color: #536173; }
.home-page .trust-wall__p a,
.home-page .trust-wall__btn--link { color: #176d69; }
.home-page .trust-wall__btn--primary {
  background: linear-gradient(135deg, #de685a, var(--hy-coral));
  box-shadow: 0 8px 20px -10px rgba(190,75,62,.72);
}
.home-page .trust-wall__btn--ghost {
  color: #176d69;
  background: #f4fcf9;
  border-color: #b9e7da;
}

/* 收藏活動沿用功能，只縮小手機佔位；原創透明吉祥物不再需要白底。 */
.home-page .hb-hide-seek__card img,
.home-page .hb-hide-seek-dialog__mascot {
  background: linear-gradient(145deg, #fff8ee, #fffdf9);
}
.home-page .hb-hide-seek__card {
  border-color: var(--hy-line);
  border-radius: 18px;
  background: rgba(255,253,249,.97);
  box-shadow: 0 16px 36px -18px rgba(23,50,77,.55);
}
.home-page .hb-hide-seek__day { background: var(--hy-teal); }
.home-page .hb-hide-seek__status { color: #176d69; background: #eaf8f5; }

@media (max-width: 680px) {
  .home-page .trust-wall { padding: 1.8rem .85rem; }
  .home-page .trust-wall__header { margin-bottom: 1.15rem; }
  .home-page .trust-wall__grid { gap: 10px; }
  .home-page .trust-wall__card {
    display: grid;
    grid-template-columns: 48px minmax(0,1fr);
    grid-template-rows: auto auto;
    column-gap: 12px;
    row-gap: 4px;
    align-items: start;
    padding: .95rem;
    border-radius: 17px;
  }
  .home-page .trust-wall__icon { grid-row: 1 / 3; margin: 0; }
  .home-page .trust-wall__h { grid-column: 2; margin: 1px 0 0; }
  .home-page .trust-wall__p { grid-column: 2; font-size: .82rem; }

  .home-page .hb-hide-seek { right: 12px; bottom: calc(212px + env(safe-area-inset-bottom, 0px)); }
  .home-page .hb-hide-seek__card {
    display: block;
    width: 48px;
    min-width: 48px;
    min-height: 48px;
    padding: 4px;
    border-radius: 16px;
  }
  .home-page .hb-hide-seek__card img { width: 38px; border-radius: 12px; }
  .home-page .hb-hide-seek__day {
    position: absolute;
    top: -9px;
    left: 1px;
    min-height: 16px;
    padding: 2px 4px;
    font-size: 8px;
    box-shadow: 0 4px 10px rgba(23,50,77,.18);
  }
  .home-page .hb-hide-seek__status { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .home-page .trust-wall__card,
  .home-page .trust-wall__btn { transition: none; }
}
