:root{--espresso:#2d1b12;--coffee:#5a3825;--latte:#efe2d0;--cream:#fbf6ef;--caramel:#c58b55;--sage:#69785f;--ink:#231f1c;--muted:#77695f;--line:rgba(45,27,18,.14);--shadow:0 24px 70px rgba(45,27,18,.14);--radius:28px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",Arial,sans-serif;background:var(--cream);color:var(--ink);line-height:1.75;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}.eyebrow{letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:800;color:var(--caramel)}.btn{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:13px 22px;font-weight:800;border:1px solid transparent;transition:.25s ease;cursor:pointer}.btn.primary{background:var(--espresso);color:#fff;box-shadow:0 12px 25px rgba(45,27,18,.22)}.btn.secondary{border-color:rgba(45,27,18,.22);color:var(--espresso);background:rgba(255,255,255,.68);backdrop-filter:blur(10px)}.btn.light{background:#fff;color:var(--espresso)}.btn:hover{transform:translateY(-2px)}.nav{position:fixed;top:0;left:0;right:0;z-index:10;background:rgba(251,246,239,.82);backdrop-filter:blur(20px);border-bottom:1px solid rgba(45,27,18,.08)}.nav-inner{height:74px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-weight:900;color:var(--espresso);letter-spacing:.08em}.brand-mark{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--espresso),var(--caramel));display:grid;place-items:center;color:#fff;font-size:18px;box-shadow:0 10px 24px rgba(45,27,18,.2)}.nav-links{display:flex;gap:20px;font-size:14px;color:var(--coffee);align-items:center}.nav-links a.active{color:var(--espresso);font-weight:900}.cart-pill{border:1px solid var(--line);border-radius:999px;padding:8px 13px;background:#fff9}.hero{min-height:78vh;position:relative;display:grid;align-items:center;padding:128px 0 74px;overflow:hidden;color:#fff}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,27,18,.76),rgba(45,27,18,.42),rgba(45,27,18,.10)),var(--hero-img) center/cover;z-index:-2}.hero:after{content:"";position:absolute;right:-10vw;bottom:-20vw;width:55vw;height:55vw;border-radius:50%;background:rgba(197,139,85,.22);filter:blur(20px);z-index:-1}.hero-card{width:min(760px,100%);padding-top:20px}.hero h1{font-size:clamp(42px,6vw,84px);line-height:1.08;margin:18px 0 22px;letter-spacing:.06em;font-weight:900}.hero p{font-size:clamp(17px,2vw,23px);color:rgba(255,255,255,.86);max-width:700px;margin:0 0 34px}.hero-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.stat{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);border-radius:22px;padding:16px 18px;min-width:146px;backdrop-filter:blur(14px)}.stat strong{display:block;font-size:25px;color:#fff;line-height:1.1}.stat span{font-size:13px;color:rgba(255,255,255,.76)}section{padding:92px 0}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:end;margin-bottom:40px}.section-head h2{font-size:clamp(32px,4vw,56px);line-height:1.16;margin:10px 0 0;color:var(--espresso);letter-spacing:.04em}.section-head p{color:var(--muted);font-size:17px;margin:0}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:0 18px 45px rgba(45,27,18,.08)}.card h3{font-size:25px;color:var(--coffee);margin:0 0 10px}.card p{color:var(--muted);margin:0}.photo-card{min-height:480px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:var(--photo) center/cover}.cream{background:linear-gradient(180deg,#fff7eb,var(--latte))}.dark{background:var(--espresso);color:#fff;position:relative;overflow:hidden}.dark .section-head h2,.dark .section-head p{color:#fff}.dark .section-head p{opacity:.78}.dark .card{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.15);backdrop-filter:blur(10px)}.dark .card h3{color:#fff}.dark .card p{color:rgba(255,255,255,.75)}.step{background:#fff;border-radius:26px;padding:28px;border:1px solid rgba(45,27,18,.1)}.step .num{font-size:13px;letter-spacing:.12em;color:var(--caramel);font-weight:900}.step h3{margin:16px 0 8px;color:var(--espresso);font-size:24px}.step p{margin:0;color:var(--muted)}.timeline{margin-top:26px;background:rgba(255,255,255,.62);border:1px solid rgba(45,27,18,.12);border-radius:26px;padding:24px;display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center}.date-box{border-radius:20px;background:#fff;padding:20px;border:1px solid rgba(45,27,18,.08)}.date-box b{display:block;color:var(--espresso);font-size:22px}.date-box span{color:var(--muted);font-size:14px}.arrow{font-size:28px;color:var(--caramel);font-weight:900}.product{position:relative;background:#fff;border-radius:32px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}.product-img{height:330px;background:center/cover}.beans{background-image:url('https://images.unsplash.com/photo-1514432324607-a09d9b4aefdd?auto=format&fit=crop&w=1100&q=85')}.drip{background-image:url('https://images.unsplash.com/photo-1517701604599-bb29b565090c?auto=format&fit=crop&w=1100&q=85')}.product-body{padding:30px}.tag{display:inline-flex;border-radius:999px;background:#f4eadb;color:var(--coffee);padding:6px 12px;font-size:13px;font-weight:800}.product h3{font-size:30px;margin:16px 0 8px;color:var(--espresso)}.product p{color:var(--muted);margin:0 0 22px}.product ul{padding-left:20px;color:var(--coffee);margin:0 0 24px}.table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 16px 35px rgba(45,27,18,.07)}.table th,.table td{text-align:left;padding:16px 20px;border-bottom:1px solid var(--line)}.table tr:last-child th,.table tr:last-child td{border-bottom:0}.table th{width:32%;color:var(--coffee);background:#fffaf3}.article{background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:0 18px 45px rgba(45,27,18,.08)}.article-img{height:320px;background:var(--article-img) center/cover}.article-body{padding:28px}.article h3{font-size:29px;color:var(--espresso);margin:12px 0}.article p{color:var(--muted);margin:0}.cta{padding:88px 0;background:linear-gradient(135deg,var(--coffee),var(--espresso));color:#fff;text-align:center}.cta h2{font-size:clamp(34px,5vw,62px);margin:0 0 18px}.cta p{margin:0 auto 28px;max-width:720px;color:rgba(255,255,255,.76);font-size:18px}footer{padding:34px 0;background:#1e130d;color:rgba(255,255,255,.66)}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}.footer-inner b{color:#fff}.footer-brand,.footer-links a{color:rgba(255,255,255,.84);transition:.25s ease}.footer-links{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.footer-links span{color:rgba(255,255,255,.32)}.footer-links a:hover{color:#fff;transform:translateY(-1px)}.modal{position:fixed;inset:0;background:rgba(30,19,13,.62);display:none;align-items:center;justify-content:center;z-index:20;padding:20px}.modal.active{display:flex}.modal-card{width:min(520px,100%);background:#fff;border-radius:30px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.3)}.modal-card h3{margin:0 0 12px;color:var(--espresso);font-size:28px}.modal-card p{color:var(--muted)}.field{display:grid;gap:6px;margin:14px 0}.field label{font-weight:800;color:var(--coffee);font-size:14px}.field input,.field select{border:1px solid rgba(45,27,18,.18);border-radius:14px;padding:13px 14px;font:inherit;background:#fff}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}@media(max-width:980px){.nav-links{display:none}.section-head,.grid-2{grid-template-columns:1fr}.grid-3,.grid-4{grid-template-columns:1fr 1fr}.photo-card{min-height:340px}.timeline{grid-template-columns:1fr}.arrow{transform:rotate(90deg);text-align:center}}@media(max-width:620px){.container{width:min(100% - 28px,var(--max))}.hero h1{letter-spacing:.03em}.grid-3,.grid-4{grid-template-columns:1fr}.hero-stats{display:grid}.product-img{height:250px}.section-head h2{font-size:34px}}

.hidden{display:none!important}.nav-action{border:1px solid var(--line);border-radius:999px;background:#fff9;color:var(--espresso);font-weight:900;padding:8px 13px;cursor:pointer}.nav-action.ghost{background:transparent}.member-chip{border-radius:999px;background:#f4eadb;color:var(--coffee);font-size:13px;font-weight:900;padding:8px 13px}.cart-summary{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow)}.cart-item{display:grid;grid-template-columns:1fr auto;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.cart-item:last-child{border-bottom:0}.cart-item h3{margin:0 0 4px;color:var(--espresso);font-size:24px}.cart-item p{margin:0;color:var(--muted)}.cart-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;margin-top:22px}.qty-control{display:flex;gap:8px;align-items:center;justify-content:flex-end}.qty-control button{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;font-weight:900}.price{font-weight:900;color:var(--coffee);font-size:18px;text-align:right}.summary-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}.summary-row.total{font-size:24px;font-weight:900;color:var(--espresso);border-bottom:0}.form-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 18px 45px rgba(45,27,18,.08)}.form-panel h3{margin:0 0 18px;color:var(--espresso);font-size:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field textarea{border:1px solid rgba(45,27,18,.18);border-radius:14px;padding:13px 14px;font:inherit;background:#fff;min-height:92px}.checkout-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:start}.success-box{text-align:center;background:#fff;border:1px solid var(--line);border-radius:34px;padding:54px 34px;box-shadow:var(--shadow)}.success-icon{width:88px;height:88px;margin:0 auto 20px;border-radius:50%;background:linear-gradient(135deg,var(--sage),var(--caramel));display:grid;place-items:center;color:#fff;font-size:42px;font-weight:900}.success-box h2{font-size:clamp(34px,5vw,58px);line-height:1.18;margin:0 0 18px;color:var(--espresso)}.success-box p{color:var(--muted);font-size:18px;margin:0 auto 28px;max-width:680px}.notice{border:1px solid rgba(197,139,85,.3);background:#fff7eb;border-radius:20px;padding:18px;color:var(--coffee)}
@media(max-width:980px){.checkout-layout{grid-template-columns:1fr}.nav-links{gap:10px}.form-grid{grid-template-columns:1fr}}


/* v9 cart alignment fix */
.cart-item{
  grid-template-columns:minmax(0,1fr) 180px 150px;
  align-items:center;
  column-gap:28px;
}
.cart-product{min-width:0;}
.cart-item .qty-control{
  justify-content:center;
  align-self:center;
}
.cart-item .price{
  align-self:center;
  text-align:right;
  white-space:nowrap;
}
@media(max-width:760px){
  .cart-item{
    grid-template-columns:1fr;
    row-gap:14px;
  }
  .cart-item .qty-control{justify-content:flex-start;}
  .cart-item .price{text-align:left;}
}


/* v10 member login and member center */
.social-login-stack{display:grid;gap:12px;margin:18px 0}.social-login{width:100%;border:1px solid var(--line);border-radius:16px;padding:14px 16px;background:#fff;color:var(--espresso);font-weight:900;cursor:pointer;text-align:center;transition:.25s ease}.social-login:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(45,27,18,.10)}.social-login.facebook{border-color:#d6e3ff}.social-login.google{border-color:#eadfce}.social-login.apple{background:#1e130d;color:#fff}.divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:13px}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.member-layout{display:grid;grid-template-columns:1fr;gap:24px}.muted-text{color:var(--muted);margin-top:-6px}.table-wrap{width:100%;overflow-x:auto}.order-table th{width:auto}.order-table td span{color:var(--muted);font-size:13px}.nav-action.hidden{display:none!important}@media(max-width:1100px){.nav-links{gap:12px;font-size:13px}.nav-action,.cart-pill{padding:7px 10px}}

/* v11: footer link font size aligned with header nav links */
.footer-links{font-size:14px;}
.footer-links a{font-size:14px;}
.auth-hint{display:block;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.5}.social-login-stack #googleSignInButton{display:grid;gap:6px}.social-login-stack #googleSignInButton>div{margin:0 auto}.member-login-meta{font-size:13px;color:var(--muted);margin-top:8px}

.mini-hero{min-height:52vh}.auth-hint{display:block;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.5}.social-login-stack #googleSignInButton{display:grid;gap:6px}.member-login-meta{font-size:13px;color:var(--muted);margin-top:8px}


/* v14 site business model update */
.business-table th:nth-child(1), .business-table td:nth-child(1){width:13%;font-weight:900;color:var(--espresso)}
.business-table th:nth-child(2), .business-table td:nth-child(2){width:18%;font-weight:800;color:var(--coffee)}
.business-table ol{margin:0;padding-left:22px}.business-table p{margin:0 0 6px}.table-wrap{width:100%;overflow-x:auto}.mini-hero{min-height:52vh}
@media(max-width:760px){.business-table{min-width:760px}.nav-links{gap:10px}}
