/* 色彩變數與基礎設定 */
:root { --pm-ivory:#fffaf0; --pm-ivory-2:#f6efdf; --pm-paper:#fffdf8; --pm-ink:#172033; --pm-ink-2:#253044; --pm-muted:#646b78; --pm-soft:#e8d6aa; --pm-gold:#c9a84c; --pm-gold-2:#a8751c; --pm-gold-dark:#745015; --pm-line:rgba(201,168,76,.34); --pm-green:#477462; --pm-blue:#426c85; --pm-coral:#b86457; --pm-shadow:0 18px 48px rgba(95,70,26,.12); --pm-shadow-hover:0 24px 56px rgba(95,70,26,.17); --pm-grad-gold:linear-gradient(135deg,#e2c97b 0%,#c9a84c 52%,#9d7426 100%); --pm-grad-title:linear-gradient(135deg,#ad8328 0%,#765016 100%); --pm-grad-soft:linear-gradient(180deg,#fffdf8 0%,#f6efdf 100%); --pm-hero-scrim:linear-gradient(90deg,rgba(255,250,240,.98) 0%,rgba(255,250,240,.92) 35%,rgba(255,250,240,.68) 48%,rgba(255,250,240,.12) 67%,rgba(255,250,240,0) 100%); }
html { scroll-behavior:smooth; }
* { box-sizing:border-box; }
body.home-page { margin:0; color:var(--pm-ink); background:var(--pm-ivory); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; line-height:1.6; overflow-x:hidden; }
a { text-decoration:none; }
a:focus-visible,button:focus-visible,select:focus-visible { outline:3px solid rgba(201,168,76,.48); outline-offset:3px; }
.z-10 { z-index:10; }

/* 首頁導覽 */
.home-nav { z-index:20; border-bottom:1px solid rgba(201,168,76,.2); background:rgba(255,253,248,.84); backdrop-filter:blur(16px); }
.home-nav .container { min-height:78px; }
.home-brand { gap:12px; color:var(--pm-ink); }
.home-brand:hover { color:var(--pm-ink); }
.home-brand img { object-fit:contain; }
.home-brand span { display:flex; flex-direction:column; line-height:1.15; }
.home-brand strong { font-size:18px; font-weight:900; }
.home-brand small { max-width:260px; margin-top:4px; color:var(--pm-muted); font-size:11px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.home-nav-links { gap:28px; }
.home-nav-links a { position:relative; color:var(--pm-ink-2); font-size:14px; font-weight:700; transition:color .2s ease; }
.home-nav-links a::after { content:""; position:absolute; right:0; bottom:-8px; left:0; height:2px; background:var(--pm-gold); transform:scaleX(0); transform-origin:center; transition:transform .2s ease; }
.home-nav-links a:hover { color:var(--pm-gold-dark); }
.home-nav-links a:hover::after { transform:scaleX(1); }
.home-nav-links a[aria-current="page"] { color:var(--pm-gold-dark); }
.home-nav-links a[aria-current="page"]::after { transform:scaleX(1); }
.home-nav-cta { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; padding:10px 16px; border:1px solid transparent; border-radius:8px; cursor:pointer; color:var(--pm-ink); background:var(--pm-grad-gold); box-shadow:0 10px 24px rgba(157,116,38,.2); font-size:14px; font-weight:900; transition:transform .2s ease,box-shadow .2s ease; }
.home-nav-cta:hover { color:var(--pm-ink); transform:translateY(-1px); box-shadow:0 14px 28px rgba(157,116,38,.28); }

/* 首頁首屏 */
.pm-hero { min-height:640px; height:min(780px,82vh); color:var(--pm-ink); background-color:var(--pm-ivory); background-image:var(--pm-hero-scrim),url('../skin/img/index-hero-ai-v2.webp'); background-position:center center; background-size:cover; border-bottom:1px solid var(--pm-line); }
.hero-backdrop { pointer-events:none; background:linear-gradient(180deg,rgba(23,32,51,.02) 0%,transparent 40%,rgba(255,250,240,.24) 100%); }
.hero-shell { padding-top:128px; padding-bottom:74px; }
.eyebrow { max-width:100%; min-height:38px; color:var(--pm-gold-dark); background:rgba(255,253,248,.84); border:1px solid var(--pm-line); border-radius:999px; padding:7px 13px 7px 8px; font-weight:800; box-shadow:0 10px 28px rgba(80,58,18,.08); backdrop-filter:blur(10px); }
.eyebrow-mark { display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; border-radius:50%; color:var(--pm-ink); background:var(--pm-grad-gold); font-size:11px; }
.eyebrow-divider { width:1px; height:16px; background:var(--pm-line); }
.eyebrow small { max-width:330px; color:var(--pm-muted); font-size:12px; font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.hero-title { max-width:700px; color:var(--pm-ink); font-size:68px; line-height:1.06; letter-spacing:0; text-wrap:balance; }
.gradient-text { color:transparent; background:var(--pm-grad-title); -webkit-background-clip:text; background-clip:text; }
.hero-copy { max-width:610px; color:#535b68; font-size:19px !important; line-height:1.8; text-wrap:pretty; }
.pm-btn { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:13px 22px; border:1px solid transparent; border-radius:8px; cursor:pointer; font-size:16px; font-weight:800; transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease; }
.pm-btn:hover { transform:translateY(-2px); }
.pm-btn-primary { position:relative; z-index:1; pointer-events:auto; color:var(--pm-ink); background:var(--pm-grad-gold); box-shadow:0 16px 34px rgba(157,116,38,.25); }
.pm-btn-primary:hover { color:var(--pm-ink); box-shadow:0 20px 40px rgba(157,116,38,.32); }
.pm-btn-secondary { color:var(--pm-gold-dark); background:rgba(255,253,248,.82); border-color:var(--pm-line); backdrop-filter:blur(10px); }
.pm-btn-secondary:hover { color:var(--pm-gold-dark); background:#fffdf8; border-color:rgba(201,168,76,.58); }
.hero-proof { display:grid; grid-template-columns:repeat(3,minmax(108px,1fr)); width:max-content; max-width:100%; margin-top:32px; border:1px solid var(--pm-line); border-radius:8px; background:rgba(255,253,248,.78); box-shadow:0 14px 34px rgba(80,58,18,.08); backdrop-filter:blur(10px); }
.hero-proof div { min-width:126px; padding:14px 18px; }
.hero-proof div+div { border-left:1px solid var(--pm-line); }
.hero-proof strong { display:block; color:var(--pm-gold-dark); font-size:23px; line-height:1.1; font-weight:900; font-variant-numeric:tabular-nums; }
.hero-proof span { display:block; margin-top:6px; color:var(--pm-muted); font-size:11px; line-height:1.35; font-weight:800; }
.hero-scroll { position:absolute; bottom:24px; left:12px; color:var(--pm-muted); font-size:12px; font-weight:700; }
.hero-scroll i { color:var(--pm-gold-dark); }

/* 區塊共用 */
.bg-dark-gradient,.bg-darker,.hero-bg { background:var(--pm-ivory) !important; }
.border-secondary { border-color:var(--pm-line) !important; }
.text-white { color:var(--pm-ink) !important; }
.text-primary { color:var(--pm-gold-dark) !important; }
.text-success { color:var(--pm-green) !important; }
.opacity-50,.opacity-75 { opacity:1 !important; color:var(--pm-muted) !important; }
.section-kicker { color:var(--pm-gold-dark); font-size:12px; font-weight:900; text-transform:uppercase; }
.section-title { color:var(--pm-ink); font-size:40px; line-height:1.2; letter-spacing:0; text-wrap:balance; }
.section-copy { max-width:640px; color:var(--pm-muted); font-size:17px; line-height:1.75; text-wrap:pretty; }
.badge { border-radius:8px !important; }
.card { border-radius:8px !important; }
.bg-glass { color:var(--pm-ink) !important; background:var(--pm-paper) !important; border:1px solid var(--pm-line) !important; box-shadow:0 12px 34px rgba(95,70,26,.07); }
.border-white-10 { border-color:var(--pm-line) !important; }
.hover-lift { transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.hover-lift:hover { transform:translateY(-3px); border-color:rgba(201,168,76,.56) !important; box-shadow:var(--pm-shadow-hover); }
.tracking-wider { letter-spacing:0; }

/* 支援平台 */
.platforms-section { padding:58px 0 64px; background:var(--pm-paper) !important; }
.platforms-section .text-center { margin-bottom:30px !important; }
.platforms-section .section-title { font-size:30px; }
.platform-list { display:grid !important; grid-template-columns:repeat(5,1fr); max-width:980px; margin:0 auto; border:1px solid var(--pm-line); border-radius:8px; background:var(--pm-ivory); box-shadow:0 10px 30px rgba(95,70,26,.06); overflow:hidden; }
.platform-item { justify-content:center; min-height:72px; padding:14px 18px; }
.platform-item+.platform-item { border-left:1px solid var(--pm-line); }
.platform-icon { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border:1px solid rgba(201,168,76,.22); border-radius:8px; background:#fff; }
.platform-icon img { object-fit:contain; }

/* 系統畫面輪播 */
.showcase-section { background:var(--pm-paper); }
.showcase-heading { max-width:1120px; }
.product-showcase { max-width:1180px; margin:0 auto; }
.showcase-toolbar { min-height:52px; margin-bottom:12px; }
.showcase-total { display:inline-flex; align-items:center; gap:9px; color:var(--pm-muted); font-size:13px; }
.showcase-total i { color:var(--pm-gold-dark); }
.showcase-total strong { color:var(--pm-ink); font-size:17px; font-variant-numeric:tabular-nums; }
.showcase-controls { gap:8px; }
.showcase-control { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:1px solid var(--pm-line); border-radius:8px; color:var(--pm-gold-dark); background:var(--pm-ivory); cursor:pointer; transition:background .2s ease,border-color .2s ease,color .2s ease; }
.showcase-control:hover { color:var(--pm-ink); border-color:rgba(201,168,76,.62); background:rgba(201,168,76,.12); }
.showcase-stage { border:1px solid var(--pm-line); border-radius:8px; background:var(--pm-ink); box-shadow:var(--pm-shadow); overflow:hidden; }
.showcase-stage .carousel-item { transition:transform .3s ease-in-out; }
.showcase-figure { background:var(--pm-paper); }
.showcase-image { height:auto; aspect-ratio:1600/766; object-fit:cover; background:var(--pm-ivory-2); }
.showcase-caption { min-height:62px; padding:13px 18px; border-top:1px solid var(--pm-line); background:var(--pm-paper); }
.showcase-caption>span { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; margin-right:12px; border-radius:8px; color:var(--pm-ink); background:var(--pm-grad-gold); font-size:12px; font-weight:900; font-variant-numeric:tabular-nums; }
.showcase-caption h3 { margin:0; color:var(--pm-ink); font-size:17px; line-height:1.35; font-weight:900; }
.showcase-thumbnails { position:static; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin:14px 0 0; padding:0; }
.showcase-thumbnails [data-bs-target] { width:auto; height:auto; margin:0; padding:6px; border:1px solid var(--pm-ink); border-radius:8px; background:var(--pm-ink); box-sizing:border-box; text-indent:0; opacity:1; cursor:pointer; transition:border-color .2s ease,box-shadow .2s ease,background .2s ease; }
.showcase-thumbnail img { display:block; width:100%; aspect-ratio:320/153; border-radius:4px; object-fit:cover; opacity:.72; transition:opacity .2s ease; }
.showcase-thumbnail span { display:block; padding:8px 4px 3px; color:rgba(255,250,240,.72); font-size:12px; line-height:1.35; font-weight:800; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.showcase-thumbnails .active { border-color:rgba(201,168,76,.9); background:var(--pm-ink); box-shadow:0 0 0 2px rgba(201,168,76,.18); }
.showcase-thumbnails .active img { opacity:1; }
.showcase-thumbnails .active span { color:var(--pm-gold-dark); }

/* 核心功能 */
.features-section { background:var(--pm-ivory) !important; }
.section-heading { max-width:1120px; }
.feature-card { position:relative; border-left:0 !important; border-radius:0 8px 8px 0 !important; overflow:hidden; }
.feature-card::before { content:""; position:absolute; inset:0 auto 0 0; width:4px; border-radius:0; background:var(--pm-grad-gold); }
.feature-card .card-body { padding:30px !important; }
.feature-card h4 { color:var(--pm-ink); font-size:20px !important; }
.feature-card p { color:var(--pm-muted); font-size:14px; line-height:1.75; }
.feature-icon { width:48px; height:48px; border:1px solid currentColor; border-radius:8px; font-size:20px; }
.feature-icon.is-gold { color:var(--pm-gold-dark); background:rgba(201,168,76,.1); }
.feature-icon.is-green { color:var(--pm-green); background:rgba(71,116,98,.1); }
.feature-icon.is-coral { color:var(--pm-coral); background:rgba(184,100,87,.1); }
.feature-icon.is-blue { color:var(--pm-blue); background:rgba(66,108,133,.1); }

/* 成效數據 */
.stats-band { background:var(--pm-ink) !important; border-color:rgba(232,214,170,.16) !important; }
.stats-band::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(201,168,76,.08),transparent 34%,rgba(71,116,98,.08)); pointer-events:none; }
.stats-band .text-white { color:var(--pm-ivory) !important; }
.stats-band .opacity-50 { color:rgba(255,250,240,.64) !important; }
.stats-band .gradient-text { background:linear-gradient(135deg,#f1db96,#c9a84c); -webkit-background-clip:text; background-clip:text; }

/* 使用情境 */
.solutions-section { background:var(--pm-ivory-2) !important; }
.solution-card { position:relative; overflow:hidden; }
.solution-card::before { content:""; position:absolute; top:0; right:0; left:0; height:3px; background:var(--pm-grad-gold); }
.solution-card .card-body { padding:30px !important; }
.solution-card h3 { color:var(--pm-ink) !important; font-size:22px !important; }
.solution-list { gap:0 !important; }
.solution-list li { min-height:46px; padding:10px 0; border-top:1px solid rgba(201,168,76,.18); }
.solution-list li:first-child { border-top:0; }
.solution-list span:last-child { color:var(--pm-muted) !important; font-size:14px; }
.solution-check { display:inline-flex; flex:0 0 auto; align-items:center; justify-content:center; width:24px; height:24px; border-radius:50%; color:var(--pm-green); background:rgba(71,116,98,.1); font-size:11px; }

/* 行動呼籲 */
.cta-section { background:#202a3a; border-color:rgba(232,214,170,.18) !important; }
.cta-section .container { max-width:820px; }
.cta-kicker { color:#e2c97b; font-size:13px; font-weight:900; }
.cta-title { color:var(--pm-ivory) !important; font-size:46px; line-height:1.2; letter-spacing:0; text-wrap:balance; }
.cta-copy { color:rgba(255,250,240,.72) !important; font-size:18px; line-height:1.75; }
.cta-section .pm-btn-secondary { color:var(--pm-ivory); background:rgba(255,255,255,.04); border-color:rgba(232,214,170,.42); }
.cta-section .pm-btn-secondary:hover { color:#fff; background:rgba(255,255,255,.1); border-color:rgba(232,214,170,.7); }
.cta-section .opacity-50 { color:rgba(255,250,240,.5) !important; }

/* 頁尾覆寫 */
.home-page .bg-footer { background:#111722 !important; border-top-color:rgba(234,219,184,.2) !important; }
.home-page .bg-footer .text-white,.home-page .bg-footer a,.home-page .bg-footer p,.home-page .bg-footer span,.home-page .bg-footer select { color:#fffaf0 !important; }
.home-page .bg-footer .text-white-50,.home-page .bg-footer .fa-globe,.home-page .bg-footer .fa-chevron-down { color:rgba(255,250,240,.58) !important; }

/* 動畫與版面調整 */
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; } }
@media (max-width:1199px) { .home-nav-links { gap:18px; } .hero-title { font-size:58px; } }
@media (max-width:991px) { .pm-hero { height:auto; min-height:730px; background-image:linear-gradient(90deg,rgba(255,250,240,.98) 0%,rgba(255,250,240,.92) 52%,rgba(255,250,240,.45) 78%,rgba(255,250,240,.2) 100%),url('../skin/img/index-hero-ai-v2.webp'); background-position:62% center; } .hero-shell { padding-top:136px; padding-bottom:72px; } .hero-title { max-width:650px; margin-right:auto; margin-left:auto; font-size:54px; } .hero-copy { margin-right:auto !important; margin-left:auto !important; } .hero-proof { margin-right:auto; margin-left:auto; } .section-heading { text-align:center; } .section-heading .section-copy { margin-right:auto; margin-left:auto; } .platform-list { grid-template-columns:repeat(3,1fr); } .platform-item:nth-child(4) { border-left:0; border-top:1px solid var(--pm-line); } .platform-item:nth-child(5) { border-top:1px solid var(--pm-line); } .showcase-thumbnails { grid-template-columns:repeat(6,160px); justify-content:start; padding:2px 2px 10px; overflow-x:auto; scroll-snap-type:x proximity; } .showcase-thumbnail { scroll-snap-align:start; } }
@media (max-width:767px) { .home-nav .container { min-height:70px; } .home-brand small { display:none; } .home-brand strong { font-size:16px; } .home-nav-cta { min-height:42px; padding:9px 12px; font-size:13px; } .pm-hero { min-height:700px; background-position:68% center; } .hero-shell { padding-top:116px; padding-bottom:56px; } .hero-title { font-size:44px; } .hero-copy { font-size:17px !important; } .eyebrow small,.eyebrow-divider { display:none; } .hero-proof { grid-template-columns:repeat(3,1fr); width:100%; } .hero-proof div { min-width:0; padding:12px 8px; } .hero-proof strong { font-size:20px; } .hero-proof span { font-size:10px; } .section-title { font-size:32px; } .platforms-section { padding:48px 0; } .platform-list { grid-template-columns:repeat(2,1fr); } .platform-item:nth-child(n) { border-top:0; border-left:0; } .platform-item:nth-child(even) { border-left:1px solid var(--pm-line); } .platform-item:nth-child(n+3) { border-top:1px solid var(--pm-line); } .platform-item:last-child { grid-column:1 / -1; } .showcase-toolbar { min-height:48px; } .showcase-caption { min-height:56px; padding:10px 12px; } .showcase-caption>span { width:32px; height:32px; margin-right:10px; } .showcase-caption h3 { font-size:15px; } .showcase-thumbnails { grid-template-columns:repeat(6,148px); } .feature-card .card-body,.solution-card .card-body { padding:24px !important; } .cta-title { font-size:36px; } }
