
      :root{
        --cream:#F7F1E7;
        --cream-2:#FBF7EF;
        --paper:#FFFDF8;
        --ink:#2F453C;
        --ink-soft:#34473B;
        --body:#37463D;
        --muted:#5C6E58;
        --sage:#97A48B;
        --sage-deep:#5C6E58;
        --sage-soft:#E4E9DC;
        --gold:#DFA050;
        --gold-deep:#B57E35;
        --clay:#C08552;
        --mist:#A9C2CF;
        --mist-soft:#E3ECF1;
        --line:rgba(47,69,60,.18);
        --line-soft:rgba(47,69,60,.1);
        --card-shadow:0 1px 2px rgba(47,69,60,.05),0 12px 32px -18px rgba(47,69,60,.22);
        --header-bg:rgba(247,241,231,.92);
        --input-bg:#FFFDF8;
        --danger:#A4442E;
        color-scheme:light;
      }
      /* 色彩釘為淺色：深色模式下重宣告同一套淺底深字色票，文字保持清楚可讀 */
      @media (prefers-color-scheme: dark){
        :root{
          --cream:#F7F1E7;--cream-2:#FBF7EF;--paper:#FFFDF8;
          --ink:#2F453C;--ink-soft:#34473B;--body:#37463D;--muted:#5C6E58;
          --sage:#97A48B;--sage-deep:#5C6E58;--sage-soft:#E4E9DC;
          --gold:#DFA050;--gold-deep:#B57E35;--clay:#C08552;
          --mist:#A9C2CF;--mist-soft:#E3ECF1;
          --line:rgba(47,69,60,.18);--line-soft:rgba(47,69,60,.1);
          --card-shadow:0 1px 2px rgba(47,69,60,.05),0 12px 32px -18px rgba(47,69,60,.22);
          --header-bg:rgba(247,241,231,.92);--input-bg:#FFFDF8;--danger:#A4442E;
          color-scheme:light;
        }
      }
      *{box-sizing:border-box}
      html{scroll-behavior:smooth}
      @media (prefers-reduced-motion: reduce){
        html{scroll-behavior:auto}
        *{animation:none!important;transition:none!important}
      }
      body{
        margin:0;background:var(--cream);color:var(--body);
        font-family:"Noto Sans TC",system-ui,sans-serif;font-weight:400;
        font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased;
      }
      h1,h2,h3,.serif{font-family:"Noto Serif TC",serif;color:var(--ink)}
      .display{font-family:"Noto Serif Display","Noto Serif TC",serif}
      a{color:var(--clay);text-decoration:none}
      a:hover{text-decoration:underline}
      img{max-width:100%;display:block}
      .wrap{max-width:1140px;margin:0 auto;padding:0 clamp(20px,4vw,44px)}
      section{padding:clamp(52px,7.5vw,88px) 0;scroll-margin-top:72px}
      .kicker{
        font-family:"Noto Serif Display","Noto Sans TC",sans-serif;
        font-size:.72rem;letter-spacing:.34em;text-transform:uppercase;
        color:var(--clay);font-weight:500;margin:0 0 14px;
      }
      .sec-head{max-width:720px;margin:0 auto clamp(28px,4vw,44px);text-align:center}
      .sec-head h2{font-size:clamp(1.55rem,3.4vw,2.15rem);font-weight:700;line-height:1.3;margin:0 0 12px;text-wrap:balance}
      .sec-head p{margin:0 auto;color:var(--ink-soft);font-size:.98rem;line-height:1.85;max-width:36em;text-align:justify;text-justify:inter-ideograph}
      .hairline{border:0;border-top:1px solid var(--line);margin:0}
      :focus-visible{outline:2px solid var(--gold-deep);outline-offset:2px}

      /* ---------- header ---------- */
      header.site{
        position:sticky;top:0;z-index:60;background:var(--header-bg);
        backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
        border-bottom:1px solid var(--line);
      }
      .site-in{display:flex;align-items:center;gap:12px 18px;padding-top:16px;padding-bottom:14px;flex-wrap:wrap}
      .brand{display:flex;align-items:center;gap:12px;color:var(--ink);min-width:0}
      .brand:hover{text-decoration:none}
      .brand-text{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
      .brand .brand-logo{width:46px;height:46px;flex:none;display:block;object-fit:contain}
      .brand .en{font-family:"Noto Serif Display","Noto Serif TC",serif;font-style:italic;font-size:.98rem;font-weight:500;letter-spacing:.02em;line-height:1.2;color:var(--gold-deep);white-space:nowrap}
      .brand .zh{font-family:"Noto Serif TC",serif;font-weight:900;font-size:1.45rem;letter-spacing:.14em;line-height:1;white-space:nowrap;color:var(--ink)}
      .brand .cat{font-family:"Noto Serif TC",serif;font-weight:900;font-size:1.45rem;letter-spacing:.14em;line-height:1;color:var(--ink)}
      .prep{
        margin-left:auto;flex:none;
        font-size:.68rem;letter-spacing:.18em;border:1px solid var(--gold);
        color:var(--ink);font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap;
      }
      .burger{
        display:none;margin-left:auto;flex:none;width:42px;height:42px;border-radius:12px;
        border:1px solid rgba(151,164,139,.55);cursor:pointer;color:var(--ink);
        background:linear-gradient(180deg,#FFFDF8 0%,#FBF5E9 100%);
        align-items:center;justify-content:center;
      }
      .burger svg{width:20px;height:20px}
      nav.main{order:3;width:100%;display:flex;gap:6px;flex-wrap:nowrap}
      nav.main a{
        flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:4px;height:48px;
        color:var(--ink);font-size:.9375rem;font-weight:500;letter-spacing:.02em;
        padding:0 2px;border:1px solid rgba(151,164,139,.55);border-radius:13px;white-space:nowrap;
        background:linear-gradient(180deg,#FFFDF8 0%,#FBF5E9 100%);
        box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 0 0 1px rgba(223,160,80,.07),0 1px 2px rgba(47,69,60,.06),0 8px 16px -10px rgba(47,69,60,.30);
        transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease,color .18s ease;
        -webkit-tap-highlight-color:transparent;
      }
      nav.main a .nav-ic{width:16px;height:16px;flex:none;color:var(--gold-deep)}
      nav.main a:hover{
        color:var(--gold-deep);text-decoration:none;border-color:var(--gold);
        background:linear-gradient(180deg,#FFFFFF 0%,#FCF3E2 100%);
        box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 0 0 1px rgba(223,160,80,.14),0 2px 4px rgba(47,69,60,.07),0 12px 22px -10px rgba(47,69,60,.38);
        transform:translateY(-1px);
      }
      nav.main a:active{transform:translateY(0) scale(.98)}
      nav.main a.cta{
        flex-grow:1.6;height:52px;border-radius:14px;color:var(--cream);font-weight:600;letter-spacing:.06em;font-size:1.02rem;gap:7px;
        background:linear-gradient(180deg,#38564A 0%,#2F453C 55%,#253931 100%);
        border:1px solid rgba(181,126,53,.75);
        box-shadow:inset 0 1px 0 rgba(223,160,80,.55),inset 0 0 0 1px rgba(223,160,80,.12),0 2px 4px rgba(47,69,60,.18),0 14px 26px -12px rgba(47,69,60,.55);
      }
      nav.main a.cta .nav-ic{color:var(--gold);width:18px;height:18px}
      nav.main a.cta:hover{color:#fff;border-color:var(--gold);background:linear-gradient(180deg,#3E5F51 0%,#334F44 55%,#2A4038 100%)}

      /* ---------- drawer (mobile) ---------- */
      .drawer-veil{
        position:fixed;inset:0;background:rgba(35,50,43,.45);z-index:80;
        opacity:0;pointer-events:none;transition:opacity .25s ease;
      }
      .drawer-veil.open{opacity:1;pointer-events:auto}
      .drawer{
        position:fixed;top:0;right:0;z-index:90;height:100dvh;width:min(320px,84vw);
        background:var(--cream-2);border-left:1px solid var(--line);
        box-shadow:-18px 0 40px -18px rgba(47,69,60,.35);
        transform:translateX(102%);transition:transform .28s ease;
        display:flex;flex-direction:column;
      }
      .drawer.open{transform:translateX(0)}
      .drawer-head{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--line-soft)}
      .drawer-head .zh{font-family:"Noto Serif TC",serif;font-weight:900;font-size:1.15rem;letter-spacing:.12em;line-height:1;color:var(--ink)}
      .drawer-head .cat{font-family:"Noto Serif TC",serif;font-weight:900;font-size:1.15rem;letter-spacing:.12em;line-height:1;color:var(--ink)}
      .drawer-head .drawer-logo{width:38px;height:38px;flex:none;display:block;object-fit:contain}
      .drawer-head .drawer-brand{display:flex;flex-direction:column;gap:3px}
      .drawer-head .brandline{display:flex;align-items:center}
      .drawer-head .en{font-family:"Noto Serif Display","Noto Serif TC",serif;font-style:italic;font-size:.8rem;font-weight:500;letter-spacing:.02em;line-height:1.2;color:var(--gold-deep);white-space:nowrap}
      .drawer-close{
        margin-left:auto;width:38px;height:38px;border-radius:10px;cursor:pointer;
        border:1px solid var(--line);background:var(--paper);color:var(--ink);
        display:flex;align-items:center;justify-content:center;font-size:1.05rem;line-height:1;
      }
      .drawer nav{flex:1;overflow-y:auto;padding:10px 14px}
      .drawer nav a{
        display:flex;align-items:center;gap:10px;min-height:58px;padding:8px 10px;
        color:var(--ink);font-size:1rem;font-weight:500;border-bottom:1px solid var(--line-soft);
      }
      .drawer nav a:last-child{border-bottom:0}
      .drawer nav a .nav-ic{width:18px;height:18px;flex:none;color:var(--gold-deep)}
      .drawer nav a:hover{text-decoration:none;color:var(--gold-deep)}
      .drawer-foot{padding:14px;border-top:1px solid var(--line);background:var(--cream-2)}
      .drawer-foot a{
        display:flex;align-items:center;justify-content:center;gap:8px;height:54px;border-radius:14px;
        color:var(--cream);font-weight:600;letter-spacing:.06em;font-size:1.05rem;
        background:linear-gradient(180deg,#38564A 0%,#2F453C 55%,#253931 100%);
        border:1px solid rgba(181,126,53,.75);
      }
      .drawer-foot a:hover{text-decoration:none;color:#fff}
      @media (max-width:860px){
        .site-in{flex-wrap:nowrap;padding-top:10px;padding-bottom:10px;min-height:58px}
        .brand{gap:10px}
        .brand-text{gap:3px}
        .brand .brand-logo{width:40px;height:40px}
        .brand .zh,.brand .cat{font-size:1.22rem;letter-spacing:.1em}
        .brand .en{font-size:.84rem}
        .prep{display:none}
        nav.main{display:none}
        .burger{display:flex}
      }

      /* ---------- hero ---------- */
      .hero{padding:clamp(44px,6vw,76px) 0 clamp(52px,7vw,84px);position:relative;overflow:hidden}
      .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,52px);align-items:center}
      .hero .kicker{font-size:.8rem;letter-spacing:.42em}
      .hero h1{
        font-size:clamp(2.1rem,4.8vw,3.1rem);font-weight:900;line-height:1.24;
        margin:0 0 20px;letter-spacing:.01em;text-wrap:balance;
      }
      .hero h1 .accent{color:var(--gold-deep)}
      .hero .sub{font-size:clamp(1rem,1.5vw,1.0625rem);line-height:1.9;color:var(--ink-soft);margin:0 auto 16px;max-width:36em;text-align:justify;text-justify:inter-ideograph}
      .hero .sub strong{color:var(--ink);font-weight:500}
      .hero .note{font-size:.88rem;color:var(--muted);line-height:1.85;margin:0 auto 28px;max-width:36em;text-align:justify;text-justify:inter-ideograph}
      .cta-row{display:flex;gap:14px;flex-wrap:wrap}
      .btn{
        display:inline-flex;align-items:center;gap:9px;cursor:pointer;
        font-family:"Noto Sans TC",sans-serif;font-size:.95rem;font-weight:500;letter-spacing:.08em;
        padding:14px 28px;border-radius:2px;border:1px solid var(--ink);
        transition:background .2s,color .2s,border-color .2s;
      }
      .btn-gold{background:var(--gold);border-color:var(--gold);color:#2F2A1E}
      .btn-gold:hover{background:var(--gold-deep);border-color:var(--gold-deep);color:#fff;text-decoration:none}
      .btn-ghost{background:transparent;color:var(--ink)}
      .btn-ghost:hover{background:var(--ink);color:var(--cream);text-decoration:none}
      .hero-fig{position:relative}
      .hero-fig img{
        width:100%;height:100%;max-height:560px;object-fit:cover;border-radius:6px;
        -webkit-mask-image:linear-gradient(to right,transparent 0,#000 10%),linear-gradient(to top,transparent 0,#000 8%);
        -webkit-mask-composite:source-in;mask-composite:intersect;
        mask-image:linear-gradient(to right,transparent 0,#000 10%),linear-gradient(to top,transparent 0,#000 8%);
      }
      .hero-fig figcaption{font-size:.8rem;color:var(--muted);margin-top:10px;text-align:left}
      @media (max-width:860px){
        .hero-grid{grid-template-columns:1fr}
        .hero-fig img{max-height:420px}
        .cta-row .btn{flex:1;justify-content:center}
      }

      /* ---------- cards & grids ---------- */
      .grid{display:grid;gap:18px}
      .grid-3{grid-template-columns:repeat(3,1fr)}
      .grid-2{grid-template-columns:repeat(2,1fr)}
      @media (max-width:980px){.grid-3{grid-template-columns:repeat(2,1fr)}}
      @media (max-width:640px){.grid-3,.grid-2{grid-template-columns:1fr}}
      .card{
        background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;
        box-shadow:var(--card-shadow);padding:26px 24px;display:flex;flex-direction:column;gap:8px;
      }
      .card .ic{
        width:46px;height:46px;border-radius:50%;flex:none;
        background:var(--sage-soft);color:var(--sage-deep);
        display:flex;align-items:center;justify-content:center;margin-bottom:4px;
      }
      .card .ic svg{width:23px;height:23px}
      .card .ic.gold{background:#F6E8D2;color:var(--gold-deep)}
      .card .ic.mist{background:var(--mist-soft);color:#4E7186}
      .card .ic.clay{background:#F3E2D3;color:var(--clay)}
      .card h3{font-size:1.18rem;font-weight:700;line-height:1.4;margin:0}
      .card p{margin:0;font-size:.93rem;line-height:1.8;color:var(--ink-soft)}
      .card .go{margin-top:auto;padding-top:10px;font-size:.86rem;font-weight:500;color:var(--gold-deep)}
      a.card{color:inherit}
      a.card:hover{text-decoration:none;border-color:var(--gold)}
      .badge{
        display:inline-flex;align-items:center;gap:5px;font-size:.7rem;font-weight:700;letter-spacing:.1em;
        padding:2px 9px;border-radius:999px;border:1px solid var(--gold);color:var(--gold-deep);background:#FBF3E2;
        white-space:nowrap;
      }
      .badge.sage{border-color:var(--sage);color:var(--sage-deep);background:var(--sage-soft)}
      .badge.mist{border-color:var(--mist);color:#4E7186;background:var(--mist-soft)}
      .tag{
        display:inline-block;font-size:.74rem;line-height:1.5;padding:2px 9px;border-radius:999px;
        border:1px solid var(--line);color:var(--ink-soft);background:var(--cream-2);
      }
      .tag.warn{border-color:#D8A48F;color:var(--danger);background:#F8ECE5}
      .tags{display:flex;flex-wrap:wrap;gap:6px}

      /* ---------- shop wall ---------- */
      .shop-card{padding:0;overflow:hidden;gap:0}
      .shop-card .ph{aspect-ratio:4/3;overflow:hidden;background:var(--sage-soft)}
      .shop-card .ph img{width:100%;height:100%;object-fit:cover}
      .shop-card .ph-none{display:flex;align-items:center;justify-content:center;color:var(--sage-deep)}
      .shop-card .ph-none svg{width:52px;height:52px;opacity:.65}
      .shop-card .bd{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
      .shop-card .row1{display:flex;align-items:flex-start;gap:10px}
      .shop-card h3{flex:1}
      .shop-card .kind{font-size:.8rem;color:var(--muted);letter-spacing:.06em}
      .shop-card .price{margin-top:auto;padding-top:8px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
      .shop-card .price b{font-family:"Noto Serif TC",serif;font-size:1.12rem;color:var(--ink)}
      .shop-card .price span{font-size:.78rem;color:var(--muted)}
      .shop-card .check{font-size:.76rem;color:var(--muted)}
      .wall-note{max-width:720px;margin:26px auto 0;text-align:center;font-size:.86rem;color:var(--muted);line-height:1.85}

      /* ---------- trust band ---------- */
      .trust{background:var(--ink);color:var(--cream)}
      .trust .grid{gap:0}
      .trust-item{padding:8px 26px;border-left:1px solid rgba(247,241,231,.22)}
      .trust-item:first-child{border-left:0;padding-left:0}
      .trust-item .ic{width:42px;height:42px;border-radius:50%;background:rgba(223,160,80,.16);color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:10px}
      .trust-item .ic svg{width:21px;height:21px}
      .trust-item h3{color:var(--cream);font-size:1.05rem;margin:0 0 6px}
      .trust-item p{margin:0;font-size:.87rem;line-height:1.8;color:rgba(247,241,231,.82)}
      .trust-grid{grid-template-columns:repeat(5,1fr)}
      .steps-grid{grid-template-columns:repeat(5,1fr)}
      @media (max-width:1100px){
        .trust-grid{grid-template-columns:repeat(2,1fr)}
        .steps-grid{grid-template-columns:repeat(3,1fr)}
        .trust-item{border-left:0;padding:14px 10px}
      }
      @media (max-width:640px){.steps-grid{grid-template-columns:repeat(2,1fr)}}
      @media (max-width:560px){.trust-grid{grid-template-columns:1fr}.steps-grid{grid-template-columns:1fr}}

      /* ---------- fit checker ---------- */
      .fit-box{background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;box-shadow:var(--card-shadow);padding:clamp(22px,3.4vw,36px)}
      .fit-opts{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:8px}
      .fit-opt{
        display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;cursor:pointer;
        border:1px solid rgba(151,164,139,.6);background:linear-gradient(180deg,#FFFDF8,#FBF5E9);
        color:var(--ink);font-size:.93rem;font-weight:500;transition:all .15s ease;
      }
      .fit-opt input{
        appearance:none;-webkit-appearance:none;width:13px;height:13px;border-radius:50%;flex:none;margin:0;cursor:pointer;
        border:1.5px solid var(--sage-deep);background:transparent;
      }
      .fit-opt:has(input:checked){background:var(--ink);border-color:var(--ink);color:var(--cream)}
      .fit-opt:has(input:checked) input{background:var(--gold);border-color:var(--gold)}
      .fit-opt input:focus-visible{outline:2px solid var(--gold-deep);outline-offset:2px}
      .fit-hint{font-size:.85rem;color:var(--muted);margin:6px 0 0}
      .fit-result{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
      @media (max-width:640px){.fit-result{grid-template-columns:1fr}}
      .fit-col{border-radius:6px;padding:20px 22px;border:1px solid var(--line-soft)}
      .fit-col.ok{background:#F1F4EA}
      .fit-col.no{background:#F9EFE7}
      .fit-col h3{font-size:1.02rem;margin:0 0 10px;display:flex;align-items:center;gap:8px}
      .fit-col ul{margin:0;padding:0;list-style:none}
      .fit-col li{font-size:.9rem;line-height:1.75;color:var(--ink-soft);padding:7px 0;border-top:1px dashed var(--line-soft)}
      .fit-col li:first-child{border-top:0;padding-top:0}
      .fit-col li b{color:var(--ink);font-weight:600}
      .fit-empty{grid-column:1/-1;text-align:center;color:var(--muted);font-size:.92rem;padding:18px 0 4px}
      .fit-disclaimer{
        margin-top:22px;padding:14px 18px;border:1px solid var(--gold);border-radius:6px;background:#FBF3E2;
        font-size:.88rem;line-height:1.85;color:var(--ink-soft);
      }
      .fit-disclaimer b{color:var(--ink)}

      /* ---------- hospital / steps ---------- */
      .hosp-card dl{margin:4px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:.9rem}
      .hosp-card dt{color:var(--muted);white-space:nowrap}
      .hosp-card dd{margin:0;color:var(--ink-soft)}
      .step-card .num{
        font-family:"Noto Serif Display",serif;font-weight:300;font-size:2rem;line-height:1;color:var(--gold-deep);margin-bottom:2px;
      }

      /* ---------- expandable long cards ---------- */
      .xcard .more{display:none;margin-top:6px;border-top:1px dashed var(--line);padding-top:12px}
      .xcard.open .more{display:block}
      .xcard .more p{margin:0 0 10px}
      .xcard .more p:last-child{margin-bottom:0}
      .xcard .more ul{margin:0 0 10px;padding-left:1.2em}
      .xcard .more li{font-size:.93rem;line-height:1.8;color:var(--ink-soft);margin-bottom:4px}
      .toggle{
        margin-top:auto;padding-top:12px;background:none;border:0;cursor:pointer;text-align:left;
        font-family:"Noto Sans TC",sans-serif;font-size:.9rem;font-weight:600;color:var(--gold-deep);letter-spacing:.04em;
      }
      .toggle:hover{text-decoration:underline}

      /* ---------- fees ---------- */
      .fee-list{display:flex;flex-direction:column;gap:14px;max-width:860px;margin:0 auto}
      .fee-row{
        background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;box-shadow:var(--card-shadow);
        padding:22px 26px;display:grid;grid-template-columns:1fr auto;gap:6px 22px;align-items:center;
      }
      .fee-row h3{font-size:1.08rem;margin:0}
      .fee-row p{margin:4px 0 0;font-size:.9rem;color:var(--ink-soft);line-height:1.8}
      .fee-row .amt{font-family:"Noto Serif TC",serif;font-weight:700;font-size:1.25rem;color:var(--ink);white-space:nowrap;text-align:right}
      .fee-row .amt small{display:block;font-family:"Noto Sans TC",sans-serif;font-weight:400;font-size:.76rem;color:var(--muted)}
      @media (max-width:640px){.fee-row{grid-template-columns:1fr}.fee-row .amt{text-align:left}}

      /* ---------- forms ---------- */
      .form-box{background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;box-shadow:var(--card-shadow);padding:clamp(22px,3.4vw,38px);max-width:860px;margin:0 auto}
      .f-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}
      @media (max-width:640px){.f-grid{grid-template-columns:1fr}}
      .f-field{display:flex;flex-direction:column;gap:6px}
      .f-field.full{grid-column:1/-1}
      .f-field label{font-size:.88rem;font-weight:600;color:var(--ink);letter-spacing:.03em}
      .f-field label .req{color:var(--danger);font-weight:700}
      .f-field input,.f-field select,.f-field textarea{
        font-family:"Noto Sans TC",sans-serif;font-size:.95rem;color:var(--ink);
        background:var(--input-bg);border:1px solid var(--line);border-radius:4px;
        padding:11px 13px;line-height:1.6;width:100%;
      }
      .f-field textarea{resize:vertical;min-height:88px}
      .f-field .hint{font-size:.78rem;color:var(--muted);line-height:1.6}
      .f-checks{display:flex;flex-wrap:wrap;gap:8px}
      .f-checks label{
        display:inline-flex;align-items:center;gap:6px;font-size:.88rem;font-weight:400;color:var(--ink-soft);
        border:1px solid var(--line);border-radius:999px;padding:6px 13px;cursor:pointer;background:var(--cream-2);
      }
      .f-checks input{accent-color:var(--ink);width:auto}
      .f-submit{margin-top:22px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
      .f-done{
        display:none;margin-top:18px;padding:14px 18px;border-radius:6px;
        border:1px solid var(--sage);background:var(--sage-soft);color:var(--ink-soft);font-size:.9rem;line-height:1.8;
      }
      .f-done.show{display:block}
      .f-done b{color:var(--ink)}
      .disclose{
        max-width:860px;margin:18px auto 0;padding:14px 18px;border:1px dashed var(--clay);border-radius:6px;
        font-size:.86rem;line-height:1.85;color:var(--ink-soft);background:rgba(192,133,82,.06);
      }
      .stage-note{display:flex;gap:14px;max-width:860px;margin:0 auto 20px}
      .stage{
        flex:1;background:var(--cream-2);border:1px solid var(--line-soft);border-radius:6px;padding:18px 20px;
      }
      .stage .n{font-family:"Noto Serif Display",serif;font-size:.78rem;letter-spacing:.24em;color:var(--gold-deep);margin:0 0 6px}
      .stage h3{font-size:1.02rem;margin:0 0 6px}
      .stage p{margin:0;font-size:.88rem;color:var(--ink-soft);line-height:1.8}
      @media (max-width:640px){.stage-note{flex-direction:column}}

      /* ---------- legal / footer ---------- */
      .legal-list{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:0}
      .legal-list li{list-style:none}
      .legal-list ul{margin:0;padding:0}
      .legal-item{display:flex;gap:14px;padding:16px 4px;border-top:1px solid var(--line-soft)}
      .legal-item:first-child{border-top:0}
      .legal-item svg{width:20px;height:20px;flex:none;color:var(--gold-deep);margin-top:5px}
      .legal-item h3{font-size:1rem;margin:0 0 4px}
      .legal-item p{margin:0;font-size:.9rem;color:var(--ink-soft);line-height:1.85}
      footer.site{background:var(--ink);color:rgba(247,241,231,.85);padding:52px 0 40px}
      footer.site .f-brand{display:flex;align-items:center;gap:12px;margin-bottom:16px}
      footer.site .logo-slot{width:38px;height:38px;border-radius:50%;border:1px solid var(--gold);background:var(--cream-2);display:flex;align-items:center;justify-content:center;flex:none;overflow:hidden}
      footer.site .logo-slot img{width:88%;height:88%;object-fit:contain;display:block}
      footer.site .zh{font-family:"Noto Serif TC",serif;font-weight:900;font-size:1.3rem;letter-spacing:.14em;color:var(--cream)}
      footer.site .sep{display:inline-block;width:1px;height:1em;background:rgba(247,241,231,.3);margin:0 .55em;vertical-align:-.1em}
      footer.site .cat{font-family:"Noto Serif TC",serif;font-weight:900;font-size:1.3rem;letter-spacing:.14em;color:var(--gold)}
      footer.site .fr{font-family:"Noto Serif Display",serif;font-style:italic;letter-spacing:.18em;font-size:.8rem;color:rgba(247,241,231,.65)}
      footer.site p{font-size:.88rem;line-height:1.9;margin:0 0 10px;max-width:44em}
      footer.site a{color:var(--gold)}
      footer.site .fine{border-top:1px solid rgba(247,241,231,.2);margin-top:26px;padding-top:18px;font-size:.78rem;color:rgba(247,241,231,.6)}

      /* ---------- clarity additions ---------- */
      .hero-plain{font-family:"Noto Serif TC",serif;font-size:clamp(1.12rem,2vw,1.3rem);font-weight:700;line-height:1.65;color:var(--ink);margin:0 0 14px}
      .hero-plain em{font-style:normal;color:var(--gold-deep)}
      .dual-cta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 10px;max-width:560px}
      .dual-cta a{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:16px 18px;border-radius:8px;text-decoration:none}
      .dual-cta a:hover{text-decoration:none}
      .dual-cta .t{font-size:1.12rem;font-weight:700;letter-spacing:.03em}
      .dual-cta .d{font-size:.84rem;line-height:1.6;font-weight:400;opacity:.88}
      .dual-a{background:var(--ink);color:var(--cream);border:1px solid var(--ink)}
      .dual-a:hover{background:#24382F;color:#fff}
      .dual-b{background:var(--paper);color:var(--ink);border:1.5px solid var(--gold-deep)}
      .dual-b:hover{border-color:var(--gold);background:#FFF9EC}
      .reassure{font-size:.86rem;color:var(--muted);line-height:1.7;margin:4px 0 0}
      @media (max-width:560px){.dual-cta{grid-template-columns:1fr}}
      .steps-band{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
      @media (max-width:760px){.steps-band{grid-template-columns:1fr}}
      .step-band-item{background:var(--ink);color:var(--cream);border-radius:8px;padding:20px 22px}
      .step-band-item .n{font-family:"Noto Serif Display",serif;font-size:.78rem;letter-spacing:.22em;color:var(--gold);margin:0 0 6px}
      .step-band-item h3{color:var(--cream);margin:0 0 6px;font-size:1.08rem}
      .step-band-item p{margin:0;font-size:.9rem;line-height:1.75;color:rgba(247,241,231,.86)}
      .step-band-item .time{display:inline-block;margin-top:10px;font-size:.76rem;border:1px solid rgba(247,241,231,.4);padding:1px 9px;border-radius:999px}
      .gloss-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
      @media (max-width:860px){.gloss-grid{grid-template-columns:repeat(2,1fr)}}
      @media (max-width:560px){.gloss-grid{grid-template-columns:1fr}}
      .gloss{background:var(--cream-2);border:1px solid var(--line-soft);border-radius:6px;padding:16px 18px}
      .gloss h3{font-size:1rem;margin:0 0 4px}
      .gloss p{margin:0;font-size:.9rem;color:var(--ink-soft);line-height:1.75}
      .gloss .eq{color:var(--gold-deep);font-weight:700}
      .faq-list{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
      .faq-list details{background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;box-shadow:var(--card-shadow);padding:0 22px}
      .faq-list summary{cursor:pointer;font-family:"Noto Serif TC",serif;font-weight:700;color:var(--ink);font-size:1rem;padding:16px 0;list-style:none}
      .faq-list summary::-webkit-details-marker{display:none}
      .faq-list summary::after{content:"＋";float:right;color:var(--gold-deep)}
      .faq-list details[open ] summary::after{content:"－"}
      .faq-list details p{margin:0 0 16px;font-size:.93rem;line-height:1.85;color:var(--ink-soft)}
      .faq-cat{max-width:860px;margin:26px auto 12px;font-family:"Noto Serif TC",serif;font-weight:700;color:var(--ink);font-size:1.08rem}
      .faq-cat:first-of-type{margin-top:0}
      .wizard-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}
      .wizard-progress .wp{display:flex;align-items:center;justify-content:center;height:52px;padding:0 6px;border-radius:999px;border:1px solid var(--line);font-family:"Noto Serif TC",serif;font-size:.92rem;font-weight:700;letter-spacing:.08em;white-space:nowrap;text-align:center;color:var(--muted);background:var(--cream-2)}
      .wizard-progress .wp.on{background:var(--ink);color:var(--cream);border-color:var(--ink);box-shadow:inset 0 0 0 1px rgba(223,160,80,.45)}
      .wizard-progress .wp.done{background:var(--sage-soft);color:var(--sage-deep);border-color:var(--sage)}
      @media (max-width:640px){
        .wizard-progress{grid-template-columns:repeat(2,1fr)}
        .wizard-progress .wp{height:48px;font-size:.85rem;letter-spacing:.05em}
      }
      .wstep{display:none}
      .wstep.on{display:block}
      .wstep h3{font-size:1.18rem;margin:0 0 4px}
      .wstep .wsub{font-size:.9rem;color:var(--muted);margin:0 0 18px;line-height:1.75}
      .wnav{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap;align-items:center}
      .wnav .sp{flex:1}
      .choice-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
      @media (max-width:700px){.choice-cards{grid-template-columns:1fr}}
      .choice-card{border:1.5px solid var(--line);border-radius:8px;padding:16px 18px;cursor:pointer;background:var(--cream-2);display:block}
      .choice-card:has(input:checked){border-color:var(--ink);background:var(--sage-soft)}
      .choice-card input{accent-color:var(--ink)}
      .choice-card .ct{font-family:"Noto Serif TC",serif;font-weight:700;color:var(--ink);display:block;margin:6px 0 2px}
      .choice-card .cd{font-size:.87rem;color:var(--ink-soft);line-height:1.7;display:block}
      .choice-2{grid-template-columns:repeat(2,1fr)}
      @media (max-width:700px){.choice-2{grid-template-columns:1fr}}
      .summary-box{background:var(--cream-2);border:1px solid var(--line);border-radius:6px;padding:18px 20px;font-size:.92rem;line-height:1.9;color:var(--ink-soft);white-space:pre-wrap;word-break:break-word}
      .calc-box{max-width:860px;margin:16px auto 0;background:#FBF3E2;border:1px solid var(--gold);border-radius:6px;padding:18px 22px;font-size:.93rem;line-height:1.85;color:var(--ink-soft)}
      .calc-box b{color:var(--ink)}
      .float-cta{position:fixed;left:0;right:0;bottom:0;z-index:65;display:none;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(247,241,231,.97);border-top:1px solid var(--line);backdrop-filter:blur(8px);transform:translateY(110%);transition:transform .25s ease}
      .float-cta.show{transform:translateY(0)}
      .float-cta a{flex:1;text-align:center;padding:13px 8px;border-radius:10px;font-weight:700;font-size:.98rem;letter-spacing:.04em}
      .float-cta a:hover{text-decoration:none}
      .float-cta .fa{background:var(--ink);color:var(--cream)}
      .float-cta .fb{background:var(--paper);color:var(--ink);border:1.5px solid var(--gold-deep)}
      @media (max-width:860px){.float-cta{display:flex}footer.site{padding-bottom:110px}}
      .stage2{display:none;margin-top:18px;border-top:1px dashed var(--line);padding-top:18px}
      .stage2.open{display:block}
      .fit-mini{margin-top:14px;padding:12px 16px;border-radius:6px;background:#F1F4EA;border:1px solid var(--sage);font-size:.88rem;line-height:1.8;color:var(--ink-soft);display:none}
      .fit-mini.show{display:block}
      /* ---------- vendor tiers & wine zone ---------- */
      .tier-card ul{margin:6px 0 0;padding-left:1.15em}
      .tier-card li{font-size:.9rem;line-height:1.75;color:var(--ink-soft);margin-bottom:3px}
      .tier-card li b{color:var(--ink);font-weight:600}
      .wine-zone{background:#F6EDE3}
      .wine-banner{
        background:#5C241E;color:#FBF3E4;border:2px solid #3E1712;border-radius:8px;
        padding:clamp(18px,3vw,28px) clamp(16px,3vw,32px);text-align:center;margin:0 0 22px;
      }
      .wine-banner .wb-main{
        font-family:"Noto Serif TC",serif;font-weight:900;letter-spacing:.14em;
        font-size:clamp(1.45rem,4.2vw,2.1rem);line-height:1.45;margin:0;
      }
      .wine-banner .wb-sub{margin:8px 0 0;font-size:clamp(.92rem,2vw,1.02rem);line-height:1.8;color:#F3DFC8}
      .wine-rule{background:var(--paper);border:1px solid #D8A48F;border-radius:6px;padding:18px 22px;font-size:.93rem;line-height:1.85;color:var(--ink-soft)}
      .wine-rule b{color:var(--ink)}
      .wine-card .meta{font-size:.88rem;color:var(--ink-soft);line-height:1.8;margin:0}
      .wine-card .meta b{color:var(--ink);font-weight:600}
      .cat-note{display:none;margin-top:14px;padding:12px 16px;border-radius:6px;font-size:.88rem;line-height:1.8}
      .cat-note.show{display:block}
      .cat-note.b{background:#FBF3E2;border:1px solid var(--gold);color:var(--ink-soft)}
      .cat-note.c{background:#F8ECE5;border:1px solid #D8A48F;color:var(--ink-soft)}
      .cat-note.a{background:#F1F4EA;border:1px solid var(--sage);color:var(--ink-soft)}
      .cat-note.p{background:#F1F4EA;border:1px solid var(--sage);color:var(--ink-soft)}
      /* ---------- pharmacy window ---------- */
      .pharmacy-zone{background:#EEF2E7}
      .ph-fields{display:none;margin-top:18px;border:1px solid var(--sage);border-radius:6px;background:#F4F7EE;padding:20px 22px}
      .ph-fields.open{display:block}
      .ph-fields h3{font-size:1.05rem;margin:0 0 4px}
      .kind2{display:flex;flex-direction:column;gap:8px;width:100%}
      .kind-group{border:1px solid var(--line-soft);border-radius:6px;background:var(--paper);overflow:hidden}
      .kind-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;background:var(--cream-2);border:0;cursor:pointer;font-family:"Noto Serif TC",serif;font-size:.95rem;font-weight:700;color:var(--ink);letter-spacing:.04em;text-align:left}
      .kind-head .kind-arrow{color:var(--gold-deep);font-weight:700;flex:none}
      .kind-group .kind-body{display:none;padding:12px 14px 13px;border-top:1px dashed var(--line-soft)}
      .kind-group.open .kind-body{display:block}
      .kind-group.open .kind-head{background:var(--sage-soft)}
      select[multiple].town-multi{min-height:104px}
      .hero-marks{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0 4px;max-width:560px}
      .hero-marks .hm{border:1px solid var(--line);border-radius:6px;background:rgba(255,253,248,.75);padding:9px 10px;text-align:center;font-family:"Noto Serif TC",serif;font-size:.82rem;font-weight:700;color:var(--ink);letter-spacing:.05em;line-height:1.5}
      .hero-marks .hm small{display:block;font-family:"Noto Sans TC",sans-serif;font-weight:400;font-size:.72rem;color:var(--muted);letter-spacing:.02em;margin-top:2px}
      .hero-marks .hm svg{width:23px;height:23px;display:block;margin:0 auto 5px;color:var(--gold-deep)}
      .hero-marks .hm.sage svg{color:var(--sage-deep)}
      .hero-marks .hm.mist svg{color:#4E7186}
      .hero-marks .hm.clay svg{color:var(--clay)}
      @media (max-width:560px){.hero-marks{grid-template-columns:repeat(2,1fr)}}
      /* hero 事實徽章列（等格 grid 定版：與上方圖示小卡同寬、同 gap、同卡面語言；桌機 3 欄×2 列、手機 2 欄×3 列） */
      .hero-facts{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:8px;margin:14px 0 0;max-width:560px}
      .hero-facts .hf{display:block;text-align:center;font-size:.8rem;font-weight:500;letter-spacing:.02em;color:var(--ink-soft);border:1px solid var(--line);border-radius:6px;padding:11px 10px 10px;background:rgba(255,253,248,.75);line-height:1.55}
      .hero-facts .hf svg{width:20px;height:20px;display:block;margin:0 auto 5px;color:var(--gold-deep)}
      .hero-facts .hf a{color:var(--gold-deep);font-weight:600}
      @media (max-width:560px){.hero-facts{grid-template-columns:repeat(2,1fr)}}
      /* 怎麼運作：圖示流程 */
      .flow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:960px;margin:0 auto}
      .flow-step{position:relative;text-align:center;background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;box-shadow:var(--card-shadow);padding:24px 14px 18px}
      .flow-step .fic{width:48px;height:48px;border-radius:50%;background:var(--sage-soft);color:var(--sage-deep);display:flex;align-items:center;justify-content:center;margin:0 auto 10px}
      .flow-step .fic svg{width:24px;height:24px}
      .flow-step .fic.gold{background:#F6E8D2;color:var(--gold-deep)}
      .flow-step .fic.mist{background:var(--mist-soft);color:#4E7186}
      .flow-step .fic.clay{background:#F3E2D3;color:var(--clay)}
      .flow-step .fn{font-family:"Noto Serif Display",serif;font-size:.7rem;letter-spacing:.24em;color:var(--gold-deep);margin:0 0 4px}
      .flow-step h3{font-size:1.02rem;font-weight:700;margin:0 0 4px;line-height:1.4}
      .flow-step p{margin:0;font-size:.8rem;color:var(--muted);line-height:1.6}
      .flow-step:not(:last-child)::after{content:"→";position:absolute;right:-13px;top:42px;z-index:2;color:var(--gold-deep);font-size:1rem;font-weight:700}
      @media (max-width:760px){
        .flow{grid-template-columns:repeat(2,1fr)}
        .flow-step::after{display:none}
      }
      /* 關於我們：初衷長文版式 */
      .about-body{max-width:700px;margin:0 auto}
      .about-body p{margin:0 0 14px;font-size:.98rem;line-height:1.95;color:var(--ink-soft);text-align:justify;text-justify:inter-ideograph}
      .about-body p strong{color:var(--ink);font-weight:500}
      .about-body h3{font-size:1.12rem;font-weight:700;margin:28px 0 10px;letter-spacing:.04em}
      .about-body h3:first-child{margin-top:0}
      .ph-fields .doc-list{margin:8px 0 0;padding-left:1.15em}
      .ph-fields .doc-list li{font-size:.9rem;line-height:1.75;color:var(--ink-soft)}
      /* ---------- product ↔ shop matching ---------- */
      .shops-intro{max-width:34em}
      .shops-points{
        display:grid;grid-template-columns:repeat(3,1fr);gap:12px;
        max-width:960px;margin:0 auto clamp(24px,3.4vw,34px);text-align:left;
      }
      .shops-point{
        background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;
        box-shadow:var(--card-shadow);padding:18px 20px 16px;
      }
      .shops-point .sp-num{
        font-family:"Noto Serif Display",serif;font-size:.72rem;font-weight:500;
        letter-spacing:.28em;color:var(--gold-deep);display:block;margin-bottom:6px;
      }
      .shops-point h3{font-size:1rem;font-weight:700;line-height:1.4;margin:0 0 5px}
      .shops-point p{margin:0;font-size:.88rem;line-height:1.75;color:var(--ink-soft)}
      @media (max-width:760px){.shops-points{grid-template-columns:1fr}}
      .prod-filter{
        display:grid;grid-template-columns:repeat(6,1fr);gap:10px;
        max-width:960px;margin:0 auto 12px;
      }
      .prod-filter button{
        width:100%;height:48px;padding:0 6px;border-radius:999px;cursor:pointer;
        display:flex;align-items:center;justify-content:center;text-align:center;
        font-family:"Noto Sans TC",sans-serif;font-size:.9rem;font-weight:500;letter-spacing:.04em;line-height:1.3;white-space:nowrap;
        border:1px solid rgba(151,164,139,.6);background:linear-gradient(180deg,#FFFDF8,#FBF5E9);
        color:var(--ink);transition:all .15s ease;
      }
      .prod-filter button.on{background:var(--ink);border-color:var(--ink);color:var(--cream)}
      @media (max-width:860px){
        .prod-filter{grid-template-columns:repeat(3,1fr)}
        .prod-filter button{height:46px;font-size:.86rem;letter-spacing:.02em}
      }
      @media (max-width:520px){
        .prod-filter{grid-template-columns:repeat(2,1fr)}
        .prod-filter button{height:46px}
      }
      .pf-note{font-size:.86rem;color:var(--muted);margin:0 auto 18px;line-height:1.7;text-align:center;max-width:960px}
      .shop-prods{margin-top:12px;border-top:1px dashed var(--line-soft);padding-top:10px}
      .shop-prods .sp-label{font-size:.76rem;color:var(--muted);letter-spacing:.06em;display:block;margin-bottom:6px}
      .bring-btn{
        align-self:flex-start;margin-top:12px;cursor:pointer;background:none;
        border:1px solid var(--gold-deep);color:var(--gold-deep);border-radius:999px;
        font-family:"Noto Sans TC",sans-serif;font-size:.88rem;font-weight:600;letter-spacing:.04em;
        padding:8px 16px;transition:background .15s ease,color .15s ease;
      }
      .bring-btn:hover{background:#FBF3E2;color:var(--ink)}

      /* ---------- app 安裝與推播卡 ---------- */
      .app-card{max-width:860px;margin:0 auto;background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;box-shadow:var(--card-shadow);padding:clamp(22px,3.4vw,36px)}
      .app-card .app-head{display:flex;align-items:center;gap:14px;margin-bottom:6px}
      .app-card .app-ic{width:48px;height:48px;border-radius:50%;flex:none;background:#F6E8D2;color:var(--gold-deep);display:flex;align-items:center;justify-content:center}
      .app-card .app-ic svg{width:24px;height:24px}
      .app-card h3{font-size:1.18rem;font-weight:700;line-height:1.4;margin:0}
      .app-card p{margin:0 0 10px;font-size:.93rem;line-height:1.85;color:var(--ink-soft)}
      .app-card p:last-child{margin-bottom:0}
      .app-actions{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 4px}
      .app-actions .btn{justify-content:center}
      .app-status{font-size:.88rem;line-height:1.75;color:var(--sage-deep);font-weight:600;margin:10px 0 0;display:none}
      .app-status.show{display:block}
      .app-steps{margin:10px 0 0;padding:14px 18px;border:1px dashed var(--line);border-radius:6px;background:var(--cream-2);font-size:.9rem;line-height:1.85;color:var(--ink-soft);display:none}
      .app-steps.show{display:block}
      .app-steps b{color:var(--ink)}
      .app-steps ol{margin:6px 0 0;padding-left:1.3em}
      .app-steps li{margin-bottom:2px}

      /* ---------- 圖示重點列（取代成段引言） ---------- */
      .icon-points{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:960px;margin:0 auto clamp(24px,3.4vw,34px)}
      .icon-points.c3{grid-template-columns:repeat(3,1fr)}
      .icon-point{background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;box-shadow:var(--card-shadow);padding:18px 18px 15px}
      .icon-point .ic{width:42px;height:42px;border-radius:50%;flex:none;background:var(--sage-soft);color:var(--sage-deep);display:flex;align-items:center;justify-content:center;margin-bottom:8px}
      .icon-point .ic svg{width:21px;height:21px}
      .icon-point .ic.gold{background:#F6E8D2;color:var(--gold-deep)}
      .icon-point .ic.mist{background:var(--mist-soft);color:#4E7186}
      .icon-point .ic.clay{background:#F3E2D3;color:var(--clay)}
      .icon-point h3{font-size:1rem;font-weight:700;line-height:1.4;margin:0 0 4px}
      .icon-point p{margin:0;font-size:.86rem;line-height:1.7;color:var(--ink-soft)}
      .icon-point p a{font-weight:600}
      @media (max-width:860px){.icon-points,.icon-points.c3{grid-template-columns:repeat(2,1fr)}}
      @media (max-width:480px){.icon-points,.icon-points.c3{grid-template-columns:1fr}}
      .more-box{max-width:860px;margin:0 auto clamp(24px,3.4vw,34px);text-align:left}
      .more-box>h3{font-size:1.05rem}

      /* ---------- back to top ---------- */
      .to-top{
        position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:70;
        width:52px;height:52px;border-radius:50%;cursor:pointer;padding:0;
        display:flex;align-items:center;justify-content:center;
        background:var(--cream-2);
        border:1px solid var(--gold);
        box-shadow:0 2px 6px rgba(47,69,60,.12),0 14px 30px -12px rgba(47,69,60,.35);
        opacity:0;visibility:hidden;transform:translateY(10px);pointer-events:none;
        transition:opacity .25s ease,transform .25s ease,visibility .25s ease,background .2s ease;
        -webkit-tap-highlight-color:transparent;
      }
      .to-top.show{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
      .to-top img{width:78%;height:78%;object-fit:contain;flex:none;pointer-events:none}
      .to-top:hover{background:#fff}
      /* 手機版底部有浮動入口列，回頂鈕抬到該列上方，不與「店家申請」重疊 */
      @media (max-width:860px){.to-top{bottom:calc(88px + env(safe-area-inset-bottom))}}
      @media print{.to-top,header.site,.drawer,.drawer-veil{display:none!important}}
    