#home-page { display:none; }
html.landing-active { scroll-behavior:smooth; }
html.landing-active body { margin:0; overflow-x:hidden; background:#f3f6f2; color:#18382d; }
html.landing-active body > :not(#home-page):not(script) { display:none !important; }
html.landing-active #home-page { display:block !important; }

.home-page-shell, .home-page-shell *, .wura-clean-auth-brand, .wura-clean-auth-brand *, .wura-clean-auth-intro, .wura-clean-auth-intro * { box-sizing:border-box; }
.home-page-shell {
  --green-950:#073f2e; --green-850:#075d3c; --green-700:#0a874b;
  --gold:#e5bd55; --cream:#f7f5eb; --ink:#18382d; --muted:#5b6f66;
  min-height:100vh; color:var(--ink); background:#f3f6f2;
  font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif; line-height:1.75;
}
.home-page-shell img { display:block; max-width:100%; }
.home-page-shell a { color:inherit; }
.home-header { position:sticky; top:0; z-index:90; color:#fff; background:rgba(7,63,46,.98); border-bottom:3px solid var(--gold); }
.home-header-inner { width:min(1060px,calc(100% - 28px)); min-height:72px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.home-brand, .wura-app-brand { display:inline-flex; align-items:center; gap:11px; text-decoration:none; }
.home-brand-logo { width:54px; height:54px; object-fit:contain; flex:0 0 auto; }
.home-brand-text { display:grid; line-height:1.2; }
.home-brand-text strong { color:#fff; font-size:18px; }
.home-brand-text small { margin-top:4px; color:#d8eadf; font-size:11px; letter-spacing:.06em; }
.home-nav-login { padding:9px 15px; border:1px solid var(--gold); color:var(--gold)!important; text-decoration:none; font-weight:900; }

.home-main { width:min(900px,calc(100% - 28px)); margin:auto; padding:42px 0 72px; }
.home-intro, .story-copy { text-align:left; }
.home-intro { padding:22px 0 48px; }
.home-kicker { margin:0 0 8px; color:var(--green-700); font-weight:900; letter-spacing:.04em; }
.home-intro h1 { margin:0; color:var(--green-950); font-size:clamp(36px,6vw,66px); line-height:1.12; }
.home-lead { max-width:760px; margin:20px 0 24px; color:var(--muted); font-size:18px; }
.home-note { margin:12px 0 0; color:var(--muted); font-size:14px; }
.story-section { padding:48px 0 64px; border-top:1px solid #cdd9d0; text-align:center; }
.story-copy { max-width:760px; margin:0 auto 26px; }
.story-copy h2 { margin:0 0 12px; color:var(--green-950); font-size:clamp(28px,4.2vw,44px); line-height:1.25; }
.story-copy p:last-child { margin-bottom:0; color:var(--muted); font-size:17px; }
.home-poster { display:block; width:100%; margin:0 auto 22px; background:#fff; border:1px solid #b9c8bd; box-shadow:0 18px 44px rgba(7,63,46,.15); text-decoration:none; }
.home-poster img { width:100%; height:auto; }
.home-button { min-height:50px; display:inline-flex; align-items:center; justify-content:center; padding:12px 30px; border:2px solid var(--green-850); text-decoration:none; font-weight:950; letter-spacing:.03em; }
.home-button-primary { background:#c9483d; border-color:#c9483d; color:#fff!important; }
.home-button-outline { background:#fff; color:var(--green-850)!important; }
.home-footer { padding:24px max(16px,calc((100% - 1060px)/2)) 88px; background:#052f23; color:#dcebe0; text-align:center; }
.home-footer-row { min-height:34px; display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:8px 12px; }
.home-footer-topline { justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.14); padding-bottom:12px; margin-bottom:8px; }
.home-footer-product { display:inline-flex; align-items:center; gap:9px; text-decoration:none; }
.home-footer-product img { width:42px; height:42px; object-fit:contain; }
.home-footer-product strong { color:#fff; font-size:16px; }
.home-footer nav { display:flex; flex-wrap:wrap; justify-content:center; gap:9px 18px; }
.home-footer button, .home-footer a { appearance:none; border:0; padding:0; background:none; color:#fff; text-decoration:none; font:inherit; cursor:pointer; }
.home-footer button:hover, .home-footer a:hover { color:var(--gold); }
.home-footer-company, .home-footer-copyright { font-size:13px; }
.home-footer-copyright { color:#bcd0c3; }
.home-dialog { width:min(720px,calc(100% - 30px)); max-height:86vh; overflow:auto; border:0; border-radius:8px; padding:30px; color:var(--ink); box-shadow:0 24px 70px rgba(0,0,0,.28); }
.home-dialog::backdrop { background:rgba(0,0,0,.65); }
.home-dialog h2 { margin:0 0 18px; color:var(--green-950); }
.home-dialog h3 { margin:24px 0 8px; color:var(--green-950); font-size:17px; }
.home-dialog p, .home-dialog li { color:var(--muted); }
.home-dialog ul { padding-left:22px; }
.dialog-logo { width:76px; height:76px; object-fit:contain; margin:0 0 12px; }
.home-dialog form { float:right; }
.dialog-close { border:0; background:none; font-size:30px; cursor:pointer; }
.home-mobile-cta { display:none; }

/* 登入頁：保留原 Firebase / App 登入表單與事件，不搬移、不複製。 */
html.wura-auth-clean body { margin:0; overflow-x:hidden; background:#f3f6f2; }
.wura-auth-hidden-v7 { display:none !important; }
.wura-auth-branch-v7 { width:100%!important; max-width:none!important; flex:1 1 100%!important; margin:0!important; }
.wura-clean-auth-brand { width:min(960px,calc(100% - 28px)); margin:22px auto 0; display:flex; align-items:center; justify-content:space-between; gap:14px; }
.wura-clean-auth-brand a { display:inline-flex; align-items:center; gap:10px; color:#17382d; text-decoration:none; font-weight:900; }
.wura-clean-auth-brand img { width:52px; height:52px; object-fit:contain; }
.wura-clean-auth-home { color:#075d3c!important; font-size:14px; }
.wura-clean-auth-intro { width:min(560px,calc(100% - 28px)); margin:42px auto 0; text-align:center; }
.wura-clean-auth-intro h1 { margin:0; color:#073f2e; font-size:32px; line-height:1.25; }
.wura-clean-auth-intro p { margin:12px 0 22px; color:#5b6f66; }
.wura-auth-panel-v7 { width:min(560px,calc(100% - 28px))!important; max-width:560px!important; margin:0 auto 72px!important; padding:30px!important; background:#fff!important; border:1px solid #c8d5cb!important; box-shadow:0 18px 48px rgba(7,63,46,.14)!important; }
.wura-auth-panel-v7 input { max-width:100%!important; }
.wura-auth-panel-v7 button { max-width:100%; }
.wura-reset-label { display:inline-block; margin-top:10px; color:#075d3c!important; font-weight:800; }
.wura-app-brand { min-width:max-content; }
.wura-app-brand img { width:44px; height:44px; object-fit:contain; }
.wura-app-brand strong { color:inherit; font-size:16px; }

@media (max-width:760px) {
  .home-footer-topline { justify-content:center; }
  .home-footer-company [aria-hidden="true"] { display:none; }
  .home-footer-company span { width:100%; }
}
@media (max-width:640px) {
  .home-header-inner { min-height:66px; }
  .home-brand-logo { width:46px; height:46px; }
  .home-brand-text strong { font-size:15px; }
  .home-brand-text small { font-size:9px; }
  .home-nav-login { padding:8px 10px; font-size:13px; }
  .home-main { width:min(100% - 20px,680px); padding-top:22px; }
  .home-intro { padding-top:12px; }
  .home-lead, .story-copy p:last-child { font-size:16px; }
  .story-section { padding:34px 0 46px; }
  .home-button { width:100%; }
  .home-footer { padding-bottom:98px; }
  .home-footer-topline { display:grid; justify-items:center; }
  .home-footer-product { justify-content:center; }
  .wura-clean-auth-brand { margin-top:14px; }
  .wura-clean-auth-brand img { width:46px; height:46px; }
  .wura-clean-auth-intro { margin-top:28px; }
  .wura-clean-auth-intro h1 { font-size:27px; }
  .wura-auth-panel-v7 { padding:24px 18px!important; }
  .home-mobile-cta { position:fixed; left:12px; right:12px; bottom:10px; z-index:100; min-height:50px; display:flex; align-items:center; justify-content:center; background:#c9483d; color:#fff!important; text-decoration:none; font-weight:950; box-shadow:0 10px 28px rgba(0,0,0,.25); }
}

/* 會員區：隱藏會籍天數與方案文字，只保留低干擾入口。 */
.wura-member-plan-hidden-v7 { display:none !important; }
.wura-member-plan-link-v7 { display:inline-flex; align-items:center; justify-content:center; min-height:36px; padding:7px 12px; border:1px solid currentColor; border-radius:4px; color:inherit; text-decoration:none; font-size:13px; font-weight:850; white-space:nowrap; }
.wura-member-plan-link-v7:hover { opacity:.82; }
