:root{
  --parch:#F3E7CF; --ink:#3B2A1E; --wine:#5B1A1A;
  --gold:#C9A24B; --olive:#4A5D3A; --lapis:#2F4B7C;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:64px}
body{background:var(--parch);color:var(--ink);line-height:1.8;
  font-family:"Noto Serif TC","Songti TC",Georgia,serif}
a{color:inherit;text-decoration:none}

/* 導覽列 */
.nav{position:fixed;top:0;left:0;right:0;height:64px;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 5%;background:var(--wine);color:var(--parch);
  border-bottom:3px double var(--gold)}
.brand{font-size:1.4rem;letter-spacing:.2em;color:var(--gold)}
.nav nav{display:flex;gap:2rem}
.nav nav a{padding:.2rem 0;border-bottom:2px solid transparent}
.nav nav a:hover{border-color:var(--gold)}
#nav-toggle{display:none}
.burger{display:none;font-size:1.6rem;cursor:pointer;color:var(--gold)}

/* 輪播 */
.carousel{position:relative;margin-top:64px;overflow:hidden;
  height:min(70vh,560px);border-bottom:3px double var(--gold)}
.carousel input{position:absolute;opacity:0;pointer-events:none}
.track{display:flex;height:100%;transition:transform .6s ease}
.slide{position:relative;min-width:100%;display:flex;
  align-items:center;justify-content:center;padding:0 12%}
.slide h2{color:var(--parch);font-size:clamp(1.6rem,4vw,3rem);
  letter-spacing:.15em;text-align:center;
  border:3px double var(--gold);padding:1rem 2rem;background:rgba(59,42,30,.45)}
.slide.a{background:linear-gradient(135deg,#5B1A1A,#8a3b2b 60%,#C9A24B)}
.slide.b{background:linear-gradient(135deg,#2F4B7C,#4A5D3A 70%,#C9A24B)}
.slide.c{background:linear-gradient(135deg,#3B2A1E,#5B1A1A 60%,#4A5D3A)}
#s1:checked ~ .track{transform:translateX(0)}
#s2:checked ~ .track{transform:translateX(-100%)}
#s3:checked ~ .track{transform:translateX(-200%)}
.arrow{position:absolute;top:50%;transform:translateY(-50%);
  font-size:3rem;color:var(--gold);cursor:pointer;padding:0 1rem;user-select:none}
.arrow.l{left:1%} .arrow.r{right:1%}
.dots{position:absolute;bottom:16px;left:0;right:0;display:flex;justify-content:center;gap:12px}
.dots label{width:14px;height:14px;border:2px solid var(--gold);border-radius:50%;cursor:pointer}
#s1:checked ~ .dots label:nth-child(1),
#s2:checked ~ .dots label:nth-child(2),
#s3:checked ~ .dots label:nth-child(3){background:var(--gold)}
#s1:focus-visible ~ .dots label:nth-child(1),
#s2:focus-visible ~ .dots label:nth-child(2),
#s3:focus-visible ~ .dots label:nth-child(3){outline:2px solid var(--parch)}

/* 區塊 */
section{padding:4.5rem 8%}
section.carousel{padding:0}
section.alt{background:var(--olive);color:var(--parch)}
section h2{text-align:center;font-size:2rem;letter-spacing:.3em;margin-bottom:2.8rem}
section h2::after{content:"";display:block;width:90px;height:3px;
  margin:.7rem auto 0;background:var(--gold)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;
  max-width:1100px;margin:0 auto}
.two{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;
  max-width:1000px;margin:0 auto;align-items:start}

/* 商品卡片 */
article{text-align:center}
article h3{margin:1rem 0 .2rem;color:var(--wine)}
article b{color:var(--lapis)}
.pic{height:200px;border:3px double var(--gold);outline:6px solid var(--parch);
  transition:transform .3s ease;position:relative}
.p1{background:linear-gradient(135deg,#3B2A1E,#8a5a3b)}
.p2{background:linear-gradient(135deg,#2a1a10,#5B1A1A)}
.p3{background:linear-gradient(135deg,#5B1A1A,#C9A24B)}
.p4{background:linear-gradient(135deg,#C9A24B,#f0d9a0)}
.p5{background:linear-gradient(135deg,#4A5D3A,#C9A24B)}
.p6{background:linear-gradient(135deg,#2F4B7C,#4A5D3A)}

/* 評論與留言 */
.links{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-bottom:2.5rem}
.btn{display:inline-block;padding:.6rem 1.6rem;background:var(--wine);color:var(--gold);
  border:3px double var(--gold);transition:transform .3s ease;position:relative}
blockquote{padding:1.2rem 1.4rem;border:3px double var(--gold);
  background:rgba(243,231,207,.6);color:var(--ink);
  transition:transform .3s ease;position:relative;margin-bottom:1rem}
blockquote cite{display:block;margin-top:.5rem;font-size:.9rem;color:var(--wine)}
.map{min-height:220px;display:flex;align-items:center;justify-content:center;
  border:3px double var(--gold);background:rgba(243,231,207,.15)}
.form{display:flex;flex-direction:column;gap:1rem}
.form input,.form textarea{padding:.8rem;font:inherit;color:var(--ink);
  background:var(--parch);border:3px double var(--gold)}
.form button{padding:.7rem;font:inherit;cursor:pointer;
  background:var(--wine);color:var(--gold);border:3px double var(--gold)}
.form button:hover{background:#7a2626}

/* 頁尾 */
footer{background:var(--wine);color:var(--parch);text-align:center;
  padding:2rem 5%;border-top:3px double var(--gold)}
footer small{color:var(--gold)}

/* 滑鼠移上去放大 1.5 倍（僅限有滑鼠的裝置） */
@media (hover:hover){
  .pic:hover,.btn:hover,blockquote:hover{transform:scale(1.5);z-index:10}
}

/* 手機與平板 */
@media (max-width:900px){
  .grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:768px){
  .burger{display:block}
  .nav nav{display:none;position:absolute;top:64px;left:0;right:0;
    flex-direction:column;gap:0;background:var(--wine);
    border-bottom:3px double var(--gold)}
  .nav nav a{padding:1rem 5%}
  #nav-toggle:checked ~ nav{display:flex}
  .grid,.two{grid-template-columns:1fr}
  section{padding:3rem 6%}
  .slide{padding:0 8%}
  .arrow{font-size:2rem}
}
@media (prefers-reduced-motion:reduce){
  .track,.pic,.btn,blockquote{transition:none}
  html{scroll-behavior:auto}
}
