:root{
    --ink:#1d1d1f;
    --ink-2:#2d2d2f;
    --ink-soft:#48484a;
    --brand:#1a51a3;
    --brand-deep:#123d7d;
    --accent:#2e93dd;
    --accent-deep:#1f7cc4;
    --paper:#f5f5f7;
    --paper-2:#ffffff;
    --card:rgba(255,255,255,.85);
    --line:rgba(0,0,0,.08);
    --line-strong:rgba(0,0,0,.14);
    --text:#1d1d1f;
    --text-soft:#6e6e73;
    --on-dark:#f5f5f7;
    --on-dark-soft:rgba(245,245,247,.75);
    --shadow-sm:0 1px 3px rgba(0,0,0,.04), 0 4px 16px rgba(0,0,0,.05);
    --shadow-md:0 4px 24px rgba(0,0,0,.09);
    --shadow-lg:0 20px 60px rgba(0,0,0,.14);
    --r-lg:22px;
    --r-md:16px;
    --r-sm:10px;
    --maxw:1200px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  html,body{max-width:100%;overflow-x:hidden;overflow-x:clip;}
  body{
    margin:0;
    font-family:"Noto Sans TC", system-ui, sans-serif;
    color:var(--text);
    background:var(--paper);
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
  }
  h1,h2,h3,h4,p{margin:0;}
  a{color:inherit;text-decoration:none;}
  button{font-family:inherit;cursor:pointer;}
  img{display:block;max-width:100%;}
  ::selection{background:var(--accent);color:var(--ink);}
  .skip-link{position:fixed;top:12px;left:12px;z-index:999;background:var(--ink);color:#fff;border-radius:999px;padding:10px 16px;font-weight:700;transform:translateY(-72px);transition:transform .15s ease;}
  .skip-link:focus{transform:none;}
  :focus-visible{outline:3px solid rgba(46,147,221,.9);outline-offset:3px;}
  .btn:focus-visible,.chip:focus-visible,.qa button.q:focus-visible,.modal-head .x:focus-visible,.dl-card:focus-visible{outline:3px solid rgba(46,147,221,.9);outline-offset:3px;}

  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
  .eyebrow{
    font-family:"Space Grotesk", sans-serif;
    font-weight:600;
    letter-spacing:.22em;
    text-transform:uppercase;
    font-size:12.5px;
    display:inline-flex;align-items:center;gap:9px;
  }
  .eyebrow::before{content:"";width:22px;height:2px;background:var(--accent);display:inline-block;border-radius:2px;}
  .num-font{font-family:"Space Grotesk", sans-serif;font-feature-settings:"tnum";}

  /* ---------- buttons ---------- */
  .btn{
    display:inline-flex;align-items:center;gap:10px;
    border:none;border-radius:999px;
    font-weight:700;font-size:16px;
    padding:15px 28px;
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
    white-space:nowrap;
  }
  .btn-accent{background:var(--accent-deep);color:#fff;box-shadow:0 6px 20px rgba(31,124,196,.30);}
  .btn-accent:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(26,81,163,.34);background:var(--brand);}
  .btn-accent:active,.btn-brand:active,.btn-dark:active,.btn-line:active{transform:translateY(0);}
  .btn-ghost{background:transparent;color:var(--on-dark);border:1.5px solid rgba(234,241,251,.32);}
  .btn-ghost:hover{border-color:var(--accent);color:#fff;}
  .btn-dark{background:var(--ink);color:var(--on-dark);}
  .btn-dark:hover{transform:translateY(-2px);background:var(--ink-2);}
  .btn .arrow{transition:transform .2s ease;}
  .btn:hover .arrow{transform:translateX(4px);}

  /* ---------- header ---------- */
  .topbar{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.80);backdrop-filter:blur(28px) saturate(200%);-webkit-backdrop-filter:blur(28px) saturate(200%);border-bottom:1px solid rgba(0,0,0,.06);}
  .topbar-inner{display:flex;align-items:center;justify-content:space-between;height:68px;}
  .logo{display:flex;align-items:center;gap:11px;color:var(--on-dark);}
  .logo-mark{width:34px;height:34px;flex:none;}
  .logo-txt{line-height:1;}
  .logo-txt b{font-family:"Space Grotesk",sans-serif;font-size:20px;font-weight:700;letter-spacing:.01em;display:block;}
  .logo-txt span{font-size:11px;letter-spacing:.3em;color:var(--on-dark-soft);font-weight:500;white-space:nowrap;}
  .topnav{display:flex;align-items:center;gap:30px;}
  .topnav a{color:var(--text);font-size:14.5px;font-weight:500;transition:color .15s;}
  .topnav a:hover{color:var(--brand);}
  .topnav a:focus-visible{border-radius:999px;outline:3px solid rgba(46,147,221,.9);outline-offset:5px;}
  .topbar .btn{padding:11px 22px;font-size:14.5px;}
  .btn-brand{background:var(--brand);color:#fff;box-shadow:0 6px 20px rgba(26,81,163,.24);}
  .btn-brand:hover{transform:translateY(-2px);background:#1c5ab4;box-shadow:0 12px 28px rgba(26,81,163,.42);}
  .logo-img{height:34px;width:auto;display:block;}
  .foot-logo{height:30px;width:auto;display:block;filter:none;opacity:.8;}
  .cover{width:100%;height:100%;object-fit:cover;display:block;}
  .logo-sub{display:flex;flex-direction:column;line-height:1.2;padding-left:12px;margin-left:4px;border-left:1px solid var(--line-strong);}
  .logo-sub b{font-size:14px;font-weight:800;color:var(--ink);white-space:nowrap;}
  .logo-sub small{font-size:11px;color:var(--text-soft);white-space:nowrap;}
  .btn-line{background:#fff;color:var(--ink);border:1.5px solid var(--line-strong);}
  .btn-line:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px);}

  /* ---------- hero ---------- */
  .hero{position:relative;background:var(--ink);color:var(--on-dark);overflow:hidden;}
  .hero-bg{position:absolute;inset:0;z-index:0;}
  .hero-bg .ph-stripes{position:absolute;inset:0;opacity:.5;}
  .hero-bg::after{content:"";position:absolute;inset:0;background:
    radial-gradient(120% 90% at 80% -10%, rgba(26,81,163,.55), transparent 55%),
    linear-gradient(180deg, rgba(11,21,38,.72) 0%, rgba(11,21,38,.92) 60%, var(--ink) 100%);}
  .hero-inner{position:relative;z-index:2;padding:78px 28px 0;}
  .hero-top{max-width:760px;}
  .hero h1{font-size:clamp(34px,5vw,60px);font-weight:900;line-height:1.08;letter-spacing:-.01em;margin-top:20px;}
  .hero h1 em{font-style:normal;color:var(--accent);}
  .hero-sub{font-size:18px;line-height:1.7;color:var(--on-dark-soft);margin-top:22px;max-width:560px;}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px;}

  .benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:54px;}
  .bcard{
    position:relative;background:rgba(234,241,251,.055);border:1px solid rgba(234,241,251,.12);
    border-radius:var(--r-md);padding:24px 22px 22px;backdrop-filter:blur(6px);
    transition:transform .2s ease, border-color .2s ease, background .2s ease;
  }
  .bcard:hover{transform:translateY(-3px);border-color:rgba(46,147,221,.5);background:rgba(234,241,251,.08);}
  .bcard .tag{position:absolute;top:-12px;left:22px;background:var(--accent);color:#082744;font-size:12px;font-weight:700;padding:5px 13px;border-radius:999px;letter-spacing:.02em;white-space:nowrap;}
  .bcard h3{font-size:21px;font-weight:900;margin-top:10px;letter-spacing:.01em;}
  .bcard p{font-size:14px;line-height:1.65;color:var(--on-dark-soft);margin-top:9px;}
  .bcard .big{font-family:"Space Grotesk",sans-serif;font-size:13px;color:var(--accent);font-weight:600;letter-spacing:.04em;margin-bottom:2px;}

  .trustbar{position:relative;z-index:2;margin-top:56px;border-top:1px solid rgba(234,241,251,.12);}
  .trustbar ul{list-style:none;margin:0;padding:18px 0;display:flex;flex-wrap:wrap;gap:8px 34px;justify-content:center;}
  .trustbar li{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--on-dark-soft);font-weight:500;}
  .trustbar li .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none;}

  /* ---------- accent sub-nav ---------- */
  .subnav{background:var(--accent);color:#082744;}
  .subnav-inner{display:flex;align-items:center;gap:8px;height:50px;font-weight:700;font-size:14.5px;}
  .subnav-inner .crumb{display:flex;align-items:center;gap:8px;opacity:.78;}
  .subnav-inner .sep{opacity:.4;}
  .subnav-inner .spacer{flex:1;}
  .subnav-inner a.go{display:inline-flex;align-items:center;gap:7px;background:var(--ink);color:#fff;padding:8px 18px;border-radius:999px;font-size:13.5px;}

  /* ---------- section base ---------- */
  section{position:relative;}
  .sec-pad{padding:88px 0;}
  .sec-head{text-align:center;max-width:680px;margin:0 auto 46px;}
  .sec-head .eyebrow{justify-content:center;color:var(--brand);}
  .sec-head h2{font-size:clamp(28px,3.4vw,40px);font-weight:900;line-height:1.15;margin-top:14px;letter-spacing:.005em;}
  .sec-head h2 em{font-style:normal;color:var(--brand);}
  .sec-head p{color:var(--text-soft);font-size:16px;line-height:1.7;margin-top:14px;}

  /* ---------- communities ---------- */
  .comm{background:var(--paper);}
  .count-line{text-align:center;font-size:clamp(24px,3vw,34px);font-weight:900;margin-bottom:8px;}
  .count-line b{font-family:"Space Grotesk",sans-serif;color:var(--accent-deep);font-size:1.35em;}
  .filters{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:30px 0 36px;}
  .chip{border:1.5px solid var(--line-strong);background:#fff;color:var(--text);border-radius:999px;padding:9px 20px;font-size:14px;font-weight:600;transition:all .16s;}
  .chip:hover{border-color:var(--brand);color:var(--brand);}
  .chip.active{background:var(--ink);color:var(--on-dark);border-color:var(--ink);}

  .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
  .ccard{background:var(--card);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--line);transition:transform .2s ease, box-shadow .2s ease;display:flex;flex-direction:column;}
  .ccard:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
  .ccard .thumb{position:relative;aspect-ratio:4/3;overflow:hidden;}
  .ccard .thumb .units{position:absolute;top:12px;right:12px;background:rgba(11,21,38,.86);color:#fff;font-size:12.5px;font-weight:700;padding:6px 12px;border-radius:999px;display:flex;align-items:center;gap:6px;}
  .ccard .status{position:absolute;top:12px;left:12px;background:var(--accent);color:#082744;font-size:11.5px;font-weight:700;padding:5px 11px;border-radius:999px;}
  .ccard .cbody{padding:18px 18px 20px;display:flex;flex-direction:column;gap:4px;flex:1;}
  .ccard .cbody h3{font-size:19px;font-weight:900;}
  .ccard .cbody .meta{font-size:13.5px;color:var(--text-soft);display:flex;align-items:center;gap:7px;}
  .ccard .cbody .join{margin-top:14px;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;background:var(--paper-2);color:var(--ink);border:none;border-radius:999px;padding:11px 18px;font-weight:700;font-size:14px;transition:all .16s;}
  .ccard .cbody .join:hover{background:var(--brand);color:#fff;}
  .ccard .cbody .join .arrow{transition:transform .18s;}
  .ccard .cbody .join:hover .arrow{transform:translateX(3px);}

  .pager{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:38px;}
  .pager button{min-width:42px;height:42px;border-radius:11px;border:1.5px solid var(--line-strong);background:#fff;font-weight:700;font-size:15px;color:var(--text);transition:all .15s;padding:0 14px;}
  .pager button:hover:not(:disabled){border-color:var(--brand);color:var(--brand);}
  .pager button.active{background:var(--ink);color:#fff;border-color:var(--ink);}
  .pager button:disabled{opacity:.4;cursor:not-allowed;}

  /* ---------- advantages ---------- */
  .adv{background:var(--paper-2);color:var(--text);overflow:hidden;}
  .adv-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;}
  .adv-photo{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:5/6;box-shadow:var(--shadow-lg);}
  .adv-roof{position:absolute;top:-22px;right:-10px;width:96px;z-index:3;}
  .adv-list{display:flex;flex-direction:column;gap:26px;margin-top:30px;}
  .adv-item{display:flex;gap:18px;}
  .adv-item .n{font-family:"Space Grotesk",sans-serif;font-size:15px;font-weight:700;color:var(--accent);border:1.5px solid rgba(46,147,221,.5);border-radius:10px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;flex:none;}
  .adv-item h3{font-size:20px;font-weight:900;}
  .adv-item p{font-size:15px;line-height:1.7;color:var(--text-soft);margin-top:6px;}

  /* ---------- features ---------- */
  .feat{background:var(--paper-2);}
  .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 46px;margin-top:8px;}
  .fitem{padding:26px 0;border-top:1.5px solid var(--line);}
  .fitem .fn{font-family:"Space Grotesk",sans-serif;font-size:40px;font-weight:700;color:var(--brand);line-height:1;letter-spacing:-.02em;}
  .fitem h3{font-size:19px;font-weight:900;margin-top:14px;}
  .fitem p{font-size:14.5px;line-height:1.72;color:var(--text-soft);margin-top:9px;}

  /* ---------- briefing ---------- */
  .brief{position:relative;background:linear-gradient(150deg,#e8f2ff 0%,#f3f8ff 55%,#f8fbff 100%);color:var(--text);overflow:hidden;}
  .brief-bg{position:absolute;inset:0;opacity:.16;z-index:0;}
  .brief-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
  .brief h2{font-size:clamp(28px,3.6vw,42px);font-weight:900;line-height:1.12;}
  .brief h2 em{font-style:normal;color:var(--accent);}
  .brief-list{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:14px;}
  .brief-list li{display:flex;gap:14px;align-items:flex-start;font-size:16px;line-height:1.55;}
  .brief-list .k{flex:none;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#082744;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:14px;margin-top:1px;}
  .brief-list b{color:var(--ink);font-weight:700;}
  .brief-card{background:rgba(255,255,255,.82);border:1px solid rgba(0,0,0,.07);border-radius:var(--r-lg);padding:34px;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 12px 48px rgba(0,0,0,.10);}
  .brief-card .price-row{display:flex;align-items:baseline;gap:10px;}
  .brief-card .price{font-family:"Space Grotesk",sans-serif;font-size:64px;font-weight:700;color:var(--brand);line-height:1;}
  .brief-card .price-cap{font-size:16px;color:var(--text-soft);}
  .brief-card .price-sub{font-size:15px;color:var(--text-soft);margin-top:8px;}
  .brief-card .btn{width:100%;justify-content:center;margin-top:24px;}
  .brief-card .fineprint{font-size:12.5px;color:var(--text-soft);text-align:center;margin-top:14px;}

  /* ---------- faq ---------- */
  .faq{background:var(--paper);}
  .faq-wrap{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
  .qa{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;transition:box-shadow .2s, border-color .2s;}
  .qa.open{box-shadow:var(--shadow-sm);border-color:var(--brand);}
  .qa button.q{width:100%;display:flex;align-items:center;gap:16px;text-align:left;background:none;border:none;padding:22px 24px;font-size:17px;font-weight:700;color:var(--text);}
  .qa .qmark{flex:none;width:30px;height:30px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:15px;}
  .qa .chev{margin-left:auto;flex:none;transition:transform .25s ease;color:var(--brand);}
  .qa.open .chev{transform:rotate(180deg);}
  .qa .a{overflow:hidden;transition:height .28s ease;height:0;}
  .qa .a-inner{padding:0 24px 24px 70px;font-size:15px;line-height:1.78;color:var(--text-soft);}
  .qa .a-inner a{color:var(--brand);font-weight:700;border-bottom:1px solid var(--brand);}

  /* ---------- footer ---------- */
  .foot{background:#f5f5f7;color:#6e6e73;}
  .foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px;padding-top:64px;padding-bottom:48px;}
  .foot h4{color:var(--ink);font-size:14px;font-weight:700;letter-spacing:.04em;margin-bottom:16px;}
  .foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;font-size:14px;}
  .foot ul a:hover{color:var(--ink);}
  .foot .brand-col p{font-size:14px;line-height:1.7;margin-top:16px;max-width:280px;}
  .foot .contact b{color:var(--ink);font-weight:500;}
  .foot-bottom{border-top:1px solid rgba(0,0,0,.08);padding-top:22px;padding-bottom:22px;display:flex;justify-content:space-between;align-items:center;font-size:12.5px;gap:16px;flex-wrap:wrap;}
  .foot-badges{display:flex;gap:14px;align-items:center;opacity:.38;font-family:"Space Grotesk",sans-serif;letter-spacing:.1em;font-size:11px;}

  /* ---------- placeholder image ---------- */
  .ph{position:relative;width:100%;height:100%;background:repeating-linear-gradient(135deg,#d2dae6 0 14px,#c6d0df 14px 28px);display:flex;align-items:center;justify-content:center;}
  .ph.dark{background:repeating-linear-gradient(135deg,#16273f 0 14px,#101f33 14px 28px);}
  .ph .ph-label{font-family:"Space Grotesk","Space Mono",monospace;font-size:12px;letter-spacing:.1em;color:rgba(11,21,38,.5);background:rgba(255,255,255,.7);padding:6px 12px;border-radius:6px;font-weight:600;text-transform:uppercase;}
  .ph.dark .ph-label{color:rgba(234,241,251,.62);background:rgba(11,21,38,.45);}

  /* ---------- modal ---------- */
  .modal-overlay{position:fixed;inset:0;background:rgba(8,24,25,.62);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .22s;}
  .modal-overlay.show{opacity:1;pointer-events:auto;}
  .modal{background:#fff;border-radius:var(--r-lg);width:100%;max-width:480px;box-shadow:var(--shadow-lg);transform:translateY(14px) scale(.98);transition:transform .26s cubic-bezier(.2,.8,.2,1);overflow:hidden;max-height:92vh;overflow-y:auto;}
  .modal-overlay.show .modal{transform:none;}
  .modal-head{background:rgba(247,251,255,.98);backdrop-filter:blur(28px);color:var(--ink);padding:26px 28px;position:relative;border-bottom:1px solid rgba(0,0,0,.07);}
  .modal-head .eyebrow{color:var(--brand);}
  .modal-head h3{font-size:23px;font-weight:900;margin-top:10px;color:var(--ink);}
  .modal-head p{font-size:13.5px;color:var(--text-soft);margin-top:6px;}
  .modal-head .x{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:50%;background:rgba(0,0,0,.06);border:none;color:var(--ink);font-size:20px;display:flex;align-items:center;justify-content:center;transition:background .15s;}
  .modal-head .x:hover{background:rgba(0,0,0,.12);}
  .modal-body{padding:26px 28px 30px;}
  .field{margin-bottom:16px;}
  .field label{display:block;font-size:13.5px;font-weight:700;margin-bottom:7px;}
  .field label .req{color:#c0392b;}
  .field input, .field select{width:100%;border:1.5px solid var(--line-strong);border-radius:10px;padding:13px 14px;font-size:15px;font-family:inherit;color:var(--text);background:#fff;transition:border-color .15s;}
  .field input:focus, .field select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px rgba(46,147,221,.16);}
  .field.err input, .field.err select{border-color:#c0392b;}
  .field .msg{font-size:12px;color:#c0392b;margin-top:5px;display:none;}
  .field.err .msg{display:block;}
  .modal .btn{width:100%;justify-content:center;margin-top:8px;}
  .modal-success{padding:46px 28px;text-align:center;}
  .modal-success .check{width:66px;height:66px;border-radius:50%;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;font-size:32px;}
  .modal-success h3{font-size:23px;font-weight:900;}
  .modal-success p{color:var(--text-soft);margin-top:10px;font-size:15px;line-height:1.6;}

  .empty-state{background:#fff;border:1px dashed var(--line-strong);border-radius:var(--r-md);padding:22px 24px;color:var(--text-soft);font-size:14.5px;line-height:1.7;}

  /* ---------- reveal ---------- */
  .reveal{opacity:1;transform:none;}
  @media (prefers-reduced-motion: no-preference){
    .reveal{animation:revealUp .7s cubic-bezier(.2,.75,.2,1) both;}
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
  }
  @keyframes revealUp{from{transform:translateY(20px);} to{transform:none;}}

  /* ---------- responsive ---------- */
  @media (max-width:1040px){
    .benefits{grid-template-columns:1fr;}
    .grid3{grid-template-columns:repeat(2,1fr);}
    .adv-grid{grid-template-columns:1fr;gap:36px;}
    .adv-photo{aspect-ratio:16/10;max-width:520px;}
    .feat-grid{grid-template-columns:repeat(2,1fr);gap:0 36px;}
    .brief-inner{grid-template-columns:1fr;gap:32px;}
    .foot-top{grid-template-columns:1fr 1fr;gap:30px;}
    .topnav{display:none;}
  }
  @media (max-width:980px){
    body.detail-page{padding-bottom:calc(78px + env(safe-area-inset-bottom));}
  }
  @media (max-width:600px){
    .wrap{padding:0 18px;max-width:100%;overflow-x:hidden;}
    .sec-pad{padding:60px 0;overflow-x:hidden;}
    .grid3{grid-template-columns:1fr;}
    .feat-grid{grid-template-columns:1fr;}
    .foot-top{grid-template-columns:1fr;}
    .trustbar ul{gap:8px 18px;}
    .subnav{display:none;}
    .hero-inner{padding:48px 18px 0;}
    .topbar-inner{height:56px;gap:8px;}
    .topbar .btn{padding:9px 14px;font-size:13px;}
    .logo-img{height:28px;}
    .logo-sub{display:none;}
    .modal-overlay{align-items:flex-end;padding:12px;}
    .modal{max-height:calc(100dvh - 24px);border-radius:18px;}
    .modal-head{padding:24px 72px 20px 22px;}
    .modal-body{padding:22px;}
    .qa button.q{align-items:flex-start;padding:20px 18px;font-size:15.5px;gap:12px;}
    .qa .a-inner{padding:0 18px 22px 60px;}
    /* price card mobile */
    .brief-card{padding:24px 18px;}
    .brief-card .price{font-size:48px;}
    .brief-card .price-cap{font-size:14px;}
    /* FAQ mobile */
    .qa .qmark{width:26px;height:26px;font-size:13px;}
    /* features mobile - 不截斷文字 */
    .fitem{padding:18px 0;max-width:100%;}
    .fitem .fn{font-size:32px;}
    .fitem h3{font-size:17px;white-space:normal;word-break:break-word;}
    .fitem p{font-size:13px;white-space:normal;word-break:break-word;overflow:visible;text-overflow:unset;-webkit-line-clamp:unset;display:block;line-height:1.7;}
    /* advantages mobile */
    .adv-item .n{width:36px;height:36px;font-size:13px;}
    .adv-item h3{font-size:18px;}
    .adv-item p{font-size:14px;}
    /* hero h1 mobile */
    .hero h1{font-size:26px;}
    .sec-head h2{font-size:22px;}
    /* 表格 mobile - 水平滾動 */
    .pt-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -18px;padding:0 18px;}
    .pt-table table{min-width:100%;width:max-content;font-size:13px;}
    .pt-table th,.pt-table td{padding:10px 8px;white-space:normal;word-break:break-word;min-width:80px;}
    .pt-table td:last-child{min-width:100px;max-width:140px;}
    /* 下載卡片 mobile */
    .dl-grid{display:grid;grid-template-columns:1fr;gap:16px;max-width:100%;}
    .dl-card{max-width:100%;width:100%;overflow:hidden;}
    .dl-card img,.dl-card .ph{max-width:100%;width:100%;height:auto;}
    /* 通用卡片防溢出 */
    .bcard,.ccard{max-width:100%;overflow:hidden;}
    .bcard p,.ccard p{white-space:normal;word-break:break-word;}
    img{max-width:100%;height:auto;}
  }
  @media (max-width:400px){
    .wrap{padding:0 14px;}
    .topbar .btn{padding:7px 12px;font-size:12px;}
    .hero h1{font-size:24px;}
    .brief-card .price{font-size:40px;}
  }
