/* 木禾小餐館｜自訂 CSS */
:root{--ink:#21352f;--green:#0b2b24;--green-soft:#234a40;--grain:#ff5b1a;--paper:#fffdf8;--canvas:#ebe7dd;--line:rgba(23,63,53,.18);--muted:#6e756f;--shadow:0 28px 80px rgba(40,49,44,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:74px}body{margin:0;color:var(--ink);background:radial-gradient(circle at 20% 0%,rgba(184,138,75,.1),transparent 34rem),var(--canvas);font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;font-size:16px;line-height:1.72}button,a{font:inherit}a{color:inherit}.page{width:min(1120px,calc(100% - 2rem));margin:2rem auto 4rem;background:var(--paper);border:1px solid rgba(23,63,53,.1);box-shadow:var(--shadow)}
.masthead{position:relative;overflow:hidden;padding:clamp(2.2rem,6vw,5.2rem);border-bottom:1px solid var(--line)}.masthead::after{content:"";position:absolute;width:24rem;height:24rem;right:-12rem;top:-13rem;border:1px solid rgba(184,138,75,.45);border-radius:50%;box-shadow:0 0 0 2.8rem rgba(184,138,75,.04),0 0 0 5.6rem rgba(184,138,75,.03);pointer-events:none}.brand-block{position:relative;z-index:1;padding-right:3rem}.wordmark{display:inline-block}.wordmark::before{content:"";display:block;width:4.5rem;height:.48rem;margin-bottom:1.25rem;border-radius:999px;background:var(--grain)}.eyebrow{margin:0 0 .8rem;color:var(--grain);font-size:.78rem;font-weight:700;letter-spacing:.24em}h1{margin:0;font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(2.7rem,8vw,5.6rem);font-weight:600;letter-spacing:.08em;line-height:1.05}.english{margin:.65rem 0 0;color:var(--green-soft);letter-spacing:.19em;font-size:.85rem}.tagline{margin:1.8rem 0 0;max-width:30rem;font-family:"Noto Serif TC",serif;font-size:1.06rem}.hours{position:relative;z-index:1;padding-left:1.5rem;border-left:1px solid var(--line)}.hours p{margin:.25rem 0}.hours strong{display:block;margin-bottom:.6rem;color:var(--green);letter-spacing:.12em}.social-links{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.25rem}.social-links a{display:inline-flex;align-items:center;min-height:42px;padding:.45rem .8rem;color:var(--green);text-decoration:none;border:1px solid var(--line);border-radius:999px;transition:.2s}.social-links a:hover{color:#fff;background:var(--green);border-color:var(--green)}
.specials{background:var(--line);border-bottom:1px solid var(--line)}.special-card{padding:clamp(1.7rem,4vw,3rem);background:#f8f4ea}.special-card+.special-card{border-left:1px solid var(--line)}.special-card:nth-child(2){background:var(--green);color:#f8f4ea}.special-card .kicker{margin:0 0 .45rem;color:var(--grain);font-size:.76rem;font-weight:700;letter-spacing:.18em}.special-card h2{margin:0 0 .8rem;font-family:"Noto Serif TC",serif;font-size:clamp(1.45rem,3vw,2.1rem);line-height:1.3}.special-card p{margin:.28rem 0}.special-card .price{margin-top:1rem;font-size:1.25rem;font-weight:800;letter-spacing:.04em}
.category-nav{display:flex;gap:.55rem;overflow-x:auto;padding:1rem clamp(1.2rem,4vw,3rem);border-bottom:1px solid var(--line);scrollbar-width:thin}.category-nav a{flex:0 0 auto;padding:.35rem .75rem;text-decoration:none;border:1px solid var(--line);border-radius:999px;font-size:.9rem}.category-nav a:hover{color:#fff;background:var(--green)}
.menu-wrap{padding:clamp(2rem,6vw,5rem)}.menu-grid{align-items:start}.menu-section{scroll-margin-top:5.5rem;break-inside:avoid}.menu-section h2{display:flex;align-items:baseline;gap:.8rem;margin:0 0 1.4rem;padding-bottom:.65rem;border-bottom:1px solid var(--green);font-family:"Noto Serif TC",serif;font-size:1.45rem}.menu-section h2 span{color:var(--muted);font-family:inherit;font-size:.72rem;font-weight:400;letter-spacing:.12em}.menu-item{margin-bottom:1.1rem;break-inside:avoid}.item-top{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:baseline}.item-top h3{margin:0;font-size:1rem;font-weight:700;line-height:1.45}.item-top .amount{color:var(--green);font-weight:800;white-space:nowrap}.menu-item .en{margin:.12rem 0 0;color:var(--grain);font-family:Georgia,serif;font-size:.74rem;font-style:italic;line-height:1.4}.menu-item .desc{margin:.3rem 0 0;color:var(--muted);font-size:.88rem;line-height:1.62}.wait{display:inline-block;margin-left:.4rem;color:#8a6940;font-size:.76rem;font-family:sans-serif;font-weight:500}
.menu-item.expandable{border-bottom:1px solid rgba(23,63,53,.08)}.menu-item-trigger{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:0 0 .25rem;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.menu-item-trigger:hover h3{color:var(--grain)}.menu-item-trigger:focus-visible{outline:2px solid var(--grain);outline-offset:5px}.menu-item-summary{flex:1;min-width:0}.expand-icon{flex:0 0 auto;width:24px;height:24px;margin-top:.05rem;position:relative;display:block;color:var(--muted);transition:transform .22s ease}.expand-icon::before,.expand-icon::after{content:"";position:absolute;top:9px;width:8px;height:1px;background:currentColor;transition:background-color .22s ease}.expand-icon::before{right:11px;transform:rotate(45deg)}.expand-icon::after{right:6px;transform:rotate(-45deg)}.menu-item.is-open .expand-icon{transform:rotate(180deg);color:var(--green)}.menu-detail{overflow:hidden;padding:.45rem 2.7rem 1.05rem 0}.menu-detail[hidden]{display:none}.menu-detail .desc{margin:0}
.drinks{display:grid;grid-template-columns:1fr 1fr;gap:.65rem 1.5rem}.drink{display:grid;grid-template-columns:1fr auto;gap:.7rem;padding-bottom:.45rem;border-bottom:1px dotted var(--line);font-size:.9rem}.notice{padding:clamp(2rem,5vw,4rem);color:#f8f4ea;background:var(--green)}.notice h2{margin:0;padding-right:1.5rem;font-family:"Noto Serif TC",serif;font-size:1.55rem}.notice ul{columns:2;column-gap:2.5rem;margin:0;padding-left:1.15rem}.notice li{break-inside:avoid;margin-bottom:.55rem;color:rgba(255,255,255,.84);font-size:.88rem}footer{display:flex;justify-content:space-between;gap:2rem;padding:1.4rem clamp(2rem,5vw,4rem);color:var(--muted);background:#f8f4ea;font-size:.82rem}footer a{text-decoration:none}
@media(max-width:760px){html{scroll-padding-top:62px}.page{width:100%;margin:0;border:0;box-shadow:none}.masthead{padding-top:3rem}.brand-block{padding-right:0}.wordmark{display:block}.hours{padding:1.2rem 0 0;border-left:0;border-top:1px solid var(--line)}.special-card+.special-card{border-top:1px solid var(--line);border-left:0}.notice h2{padding-right:0}.notice ul{columns:1}footer{flex-direction:column;gap:.3rem}.menu-wrap{padding:2rem 1.25rem 4rem}.menu-section{scroll-margin-top:4.5rem}.menu-section h2{font-size:1.3rem}.item-top h3{font-size:.98rem}.menu-item .desc{font-size:.84rem}.drinks{grid-template-columns:1fr}.menu-detail{padding-right:2rem}}
@media print{@page{size:A4;margin:11mm}body{color:#111;background:#fff;font-size:10pt}.page{width:auto;margin:0;border:0;box-shadow:none}.masthead{display:grid!important;grid-template-columns:1.35fr .65fr;margin:0;padding:8mm 6mm}h1{font-size:34pt}.specials{display:grid!important;grid-template-columns:1fr 1fr;margin:0}.special-card{padding:6mm}.menu-wrap{padding:9mm 6mm}.menu-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:8mm 12mm;margin:0}.menu-item{margin-bottom:3.5mm}.menu-item .desc{font-size:7.8pt}.notice{display:grid!important;grid-template-columns:.7fr 1.3fr;margin:0;padding:7mm 6mm}.notice ul{columns:2}footer{padding:4mm 6mm}}


/* ===== 2026-09 dining intro / editorial feature layout ===== */
.dining-intro{width:100%;border-bottom:1px solid var(--line);background:var(--paper);overflow:hidden}
.dine-rules{display:grid;grid-template-columns:180px minmax(0,1fr);gap:2.5rem;padding:1.7rem clamp(1.5rem,4vw,3rem);background:#f3efe4;border-bottom:1px solid var(--line)}
.dine-rules-heading{align-self:start;padding-right:1.25rem;border-right:1px solid var(--line)}
.dine-kicker{margin:0 0 .3rem;color:var(--grain);font-family:Georgia,serif;font-size:.7rem;font-weight:700;letter-spacing:.18em;line-height:1.3}
.dine-rules-heading h2{margin:0;font-family:"Noto Serif TC","Songti TC",serif;font-size:1.45rem;line-height:1.25;white-space:nowrap;word-break:keep-all}
.dine-rule-group{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.dine-rule{min-width:0}
.dine-rule strong{display:block;margin:0 0 .35rem;color:var(--green);font-size:.92rem;line-height:1.5;white-space:nowrap;word-break:keep-all}
.dine-rule p{margin:.08rem 0;color:var(--muted);font-size:.83rem;line-height:1.55}
.dinner-rule{padding-left:2rem;border-left:1px solid var(--line)}

.specials{display:grid!important;grid-template-columns:1fr 1fr;width:100%;margin:0!important;padding:0!important;gap:0;background:var(--line);border:0}
.special-card{position:relative;display:flex!important;flex-direction:column;min-width:0!important;width:auto!important;max-width:none!important;flex:none!important;margin:0!important;padding:2.6rem clamp(1.8rem,4vw,3.2rem)!important;border:0!important;overflow:hidden}
.special-card+.special-card{border-left:1px solid rgba(255,255,255,.16)!important}
.special-card:nth-child(2){background:var(--green);color:#f8f4ea}
.special-card .kicker{margin:0 0 .65rem;color:var(--grain);font-size:.72rem;font-weight:700;letter-spacing:.2em;line-height:1.3}
.special-card h2{margin:0 0 .7rem;max-width:100%;font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(1.65rem,3vw,2.25rem);line-height:1.3;word-break:keep-all;overflow-wrap:normal}
.special-card p{word-break:keep-all;overflow-wrap:normal}
.lunch-card{background:#f8f4ea}
.lunch-card::after{content:"";position:absolute;right:-4rem;top:-4rem;width:11rem;height:11rem;border:1px solid rgba(184,138,75,.3);border-radius:50%;box-shadow:0 0 0 1.5rem rgba(184,138,75,.04),0 0 0 3rem rgba(184,138,75,.025);pointer-events:none}
.lunch-lead{margin:.15rem 0 0;font-size:.94rem;color:var(--ink)}
.lunch-note{margin:.35rem 0 1.5rem!important;color:var(--muted);font-size:.8rem;letter-spacing:.02em}
.lunch-set{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.25rem;margin-top:auto;padding:1rem 1.1rem 1.05rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.set-kicker{margin:0 0 .15rem!important;color:var(--grain)!important;font-size:.66rem!important;font-weight:700;letter-spacing:.16em;line-height:1.3}
.lunch-set h3{margin:0;font-family:"Noto Serif TC",serif;font-size:1.02rem;line-height:1.35}
.lunch-set p:last-child{margin:.2rem 0 0!important;color:var(--muted);font-size:.78rem;line-height:1.5}
.lunch-set .price{margin:0!important;white-space:nowrap;font-size:1.35rem}

.couple-card{background:var(--green);justify-content:flex-start}
.couple-card h2{margin-bottom:1rem}
.couple-menu{display:flex;flex-direction:column;gap:.58rem;max-width:24rem;margin:.1rem 0 1rem}
.couple-menu span{position:relative;padding-left:1rem;color:rgba(255,255,255,.9);font-size:.88rem;line-height:1.5}
.couple-menu span::before{content:"";position:absolute;left:0;top:.65em;width:4px;height:4px;border-radius:50%;background:var(--grain);transform:translateY(-50%)}
.couple-note{margin:auto 0 0!important;padding-top:1rem;border-top:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.58);font-size:.76rem;letter-spacing:.04em}
.couple-card .price{margin:.35rem 0 0!important;font-size:1.45rem;line-height:1.2}
.couple-break{display:none}

@media(max-width:900px){
  .dine-rules{grid-template-columns:1fr;gap:1rem}
  .dine-rules-heading{padding:0 0 .8rem;border-right:0;border-bottom:1px solid var(--line)}
  .dine-rule-group{gap:1.25rem}
  .dinner-rule{padding-left:1.25rem}
  .special-card{padding:2.2rem 1.8rem!important}
}
@media(max-width:760px){
  .dine-rules{padding:1.35rem 1.25rem}
  .dine-rules-heading h2{font-size:1.35rem}
  .dine-rule-group{grid-template-columns:1fr;gap:.85rem}
  .dine-rule strong{white-space:normal}
  .dinner-rule{padding:.85rem 0 0;border-left:0;border-top:1px solid var(--line)}
  .specials{grid-template-columns:1fr!important}
  .special-card{padding:2rem 1.25rem!important}
  .special-card+.special-card{border-left:0!important;border-top:1px solid rgba(255,255,255,.16)!important}
  .special-card h2{font-size:1.7rem;line-height:1.4}
  .lunch-set{grid-template-columns:1fr auto;align-items:end;gap:.8rem}
  .lunch-set .price{font-size:1.2rem}
  .couple-menu{max-width:none}
}
@media print{
  .dining-intro{border-bottom:0}
  .dine-rules{display:grid!important;grid-template-columns:.6fr 1.4fr;padding:5mm 6mm}
  .dine-rule-group{grid-template-columns:1fr 1fr}
  .specials{display:grid!important;grid-template-columns:1fr 1fr}
  .special-card{padding:6mm!important}
}


/* V3：推薦區與用餐須知分離，避免色塊視覺連成一體 */
.specials{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);
  gap:1rem;
  margin:0 0 2.5rem;
  background:transparent;
  border:0;
}
.special-card{
  min-width:0;
  padding:clamp(2rem,4vw,3.2rem);
  border:1px solid rgba(23,63,53,.12);
  border-radius:18px;
  box-shadow:0 14px 35px rgba(40,49,44,.06);
}
.special-card+.special-card{border-left:1px solid rgba(23,63,53,.12);}
.lunch-card{background:#f4efe3;color:var(--ink);}
.special-card.couple-card{background:#31584f;color:#f8f4ea;}
.special-card .kicker{color:var(--grain);}
.special-card h2{max-width:22em;}
.lunch-set{background:rgba(255,255,255,.7);border-color:rgba(23,63,53,.12);}
.couple-menu span{border-bottom-color:rgba(255,255,255,.22);}
.couple-note{color:rgba(255,255,255,.68);}
.special-card .price{font-size:1.3rem;}
.notice{margin-top:0;border-radius:0;background:var(--green);}
@media(max-width:760px){
  .specials{grid-template-columns:1fr;gap:1rem;margin-bottom:2rem;}
  .special-card{border-radius:15px;}
}

/* V4：推薦區等寬相連；與用餐須知之間保留留白 */
.specials{
  grid-template-columns:1fr 1fr;
  gap:0;
  margin:0 0 3rem;
}
.special-card+.special-card{
  border-left:1px solid rgba(23,63,53,.12);
}
@media(max-width:760px){
  .specials{
    grid-template-columns:1fr;
    gap:0;
    margin-bottom:2.5rem;
  }
  .special-card+.special-card{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.18);
  }
}

/* V5：推薦區與用餐須知之間加入真正的獨立留白
   使用 padding 保留間距，不受 Bootstrap .row 負 margin 影響。 */
.specials{
  margin-bottom:0 !important;
  padding-bottom:3rem !important;
}
.notice{
  margin-top:0 !important;
}
@media(max-width:760px){
  .specials{
    padding-bottom:2.5rem !important;
  }
}

/* ===== V7：依「評論分析與改善建議」重新整理菜單閱讀架構 ===== */
.how-to-order{
  display:grid;
  grid-template-columns: minmax(230px,.75fr) minmax(0,1.65fr);
  gap:2.5rem;
  padding:2.25rem clamp(1.5rem,4vw,3rem);
  background:#fffaf1;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.how-order-heading{padding-right:2rem;border-right:1px solid var(--line)}
.how-order-heading h2{margin:0;font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.45;color:var(--ink)}
.order-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.order-step{display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:start}
.order-num{font-family:Georgia,serif;color:var(--grain);font-size:.72rem;font-weight:700;letter-spacing:.08em;padding-top:.15rem}
.order-step strong{display:block;margin-bottom:.2rem;color:var(--green);font-size:.92rem;line-height:1.45}
.order-step p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.6}

.featured-wrap{padding:3.5rem clamp(1.25rem,4vw,3rem) 4rem;background:var(--paper)}
.featured-heading{max-width:1120px;margin:0 auto 1.25rem}
.featured-heading h2{margin:0;font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(1.55rem,2.6vw,2rem);line-height:1.35;color:var(--ink)}
.featured-heading>p:last-child{margin:.3rem 0 0;color:var(--muted);font-size:.85rem}
.featured-wrap .specials{max-width:1120px;margin:0 auto!important;padding:0!important;display:grid!important;grid-template-columns:1fr 1fr;gap:0;background:transparent}
.featured-wrap .special-card{min-height:360px;padding:2.7rem clamp(1.8rem,4vw,3.25rem)!important;border:1px solid rgba(23,63,53,.12)!important;border-radius:0!important;box-shadow:none!important}
.featured-wrap .special-card:first-child{border-radius:10px 0 0 10px!important}
.featured-wrap .special-card:last-child{border-radius:0 10px 10px 0!important}
.featured-wrap .special-card+.special-card{border-left:0!important}
.featured-wrap .lunch-card{background:#f4f0e5;color:var(--ink)}
.featured-wrap .couple-card{background:#dce7e1;color:var(--green)}
.featured-wrap .special-card .kicker{margin-bottom:.65rem;color:var(--grain)}
.featured-wrap .special-card h2{max-width:26em;margin-bottom:.8rem;color:inherit}
.featured-wrap .lunch-lead{color:var(--ink)}
.featured-wrap .lunch-note{color:var(--muted)}
.featured-wrap .lunch-set{background:rgba(255,255,255,.72);border-color:rgba(23,63,53,.12)}
.featured-wrap .couple-menu span{color:var(--green);padding-left:1rem}
.featured-wrap .couple-menu span::before{background:var(--grain)}
.featured-wrap .couple-note{color:rgba(33,53,47,.68);border-color:rgba(23,63,53,.18)}
.featured-wrap .couple-card .price{color:var(--green)}

/* 重新建立「主菜 → 主食 → 前菜 → 加購 → 飲品」的閱讀順序 */
.menu-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem 4.5rem;margin:0!important}
.menu-grid>.menu-section,
.menu-grid>.col{width:auto!important;max-width:none!important;flex:none!important;padding:0!important}
.menu-grid>#mains{grid-column:1/-1;order:-1}
.menu-grid>#pasta{order:1}
.menu-grid>#start{order:2}
.menu-grid>.col:not(.menu-section){order:3}
.menu-section .section-intro{margin:-.75rem 0 1.35rem;color:var(--muted);font-size:.82rem;line-height:1.6}
.menu-grid>#mains{padding-bottom:2rem!important;border-bottom:1px solid var(--line)}
.menu-grid>#mains .menu-item{max-width:none}
.menu-grid>#mains .menu-item-trigger{padding-bottom:.45rem}
.menu-grid>#mains .menu-item{margin-bottom:1.25rem}

/* 用餐須知獨立成另一個段落 */
.notice{margin-top:0!important;border-radius:0!important}

@media(max-width:900px){
  .how-to-order{grid-template-columns:1fr;gap:1.25rem}
  .how-order-heading{padding:0 0 1rem;border-right:0;border-bottom:1px solid var(--line)}
  .order-steps{gap:1rem}
  .featured-wrap{padding-top:2.75rem}
}
@media(max-width:760px){
  .how-to-order{padding:1.5rem 1.25rem}
  .order-steps{grid-template-columns:1fr;gap:.9rem}
  .featured-wrap{padding:2.5rem 1.25rem 3rem}
  .featured-wrap .specials{grid-template-columns:1fr!important}
  .featured-wrap .special-card{min-height:auto;padding:2rem 1.25rem!important}
  .featured-wrap .special-card:first-child{border-radius:10px 10px 0 0!important}
  .featured-wrap .special-card:last-child{border-radius:0 0 10px 10px!important}
  .featured-wrap .special-card+.special-card{border-left:1px solid rgba(23,63,53,.12)!important;border-top:0!important}
  .menu-grid{grid-template-columns:1fr;gap:2.75rem}
  .menu-grid>#mains{grid-column:auto;padding-bottom:1.25rem!important}
  .menu-grid>#pasta,.menu-grid>#start,.menu-grid>.col:not(.menu-section){order:initial}
}

@media print{
  .how-to-order{display:grid!important;grid-template-columns:.75fr 1.65fr;padding:5mm 6mm}
  .order-steps{grid-template-columns:repeat(3,1fr)}
  .featured-wrap{padding:6mm}
  .featured-wrap .specials{display:grid!important;grid-template-columns:1fr 1fr}
  .featured-wrap .special-card{min-height:auto;padding:6mm!important}
  .menu-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:8mm 12mm}
  .menu-grid>#mains{grid-column:1/-1}
}

.featured-wrap .special-card:nth-child(2){background:#dce7e1!important;color:var(--green)!important}

/* ===== V8：HOW TO ENJOY｜今天想怎麼吃？ ===== */
.how-to-enjoy{
  margin:0;
  padding:clamp(2rem,4vw,3rem) clamp(1.25rem,4vw,3rem) clamp(2.25rem,4vw,3.25rem);
  background:#fffdf8;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.enjoy-heading{max-width:1120px;margin:0 auto 1.5rem}
.enjoy-heading h2{
  margin:0;
  font-family:"Noto Serif TC","Songti TC",serif;
  font-size:clamp(1.55rem,3vw,2rem);
  line-height:1.35;
  color:var(--ink);
}
.enjoy-heading>p:last-child{margin:.35rem 0 0;color:var(--muted);font-size:.86rem}
.enjoy-options{
  max-width:1120px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.enjoy-option{
  min-height:155px;
  padding:1.25rem 1.25rem 1.35rem;
  background:#faf7ef;
  border:1px solid rgba(23,63,53,.12);
  border-radius:14px;
}
.enjoy-num{
  display:grid;
  place-items:center;
  width:29px;height:29px;
  margin-bottom:.8rem;
  border-radius:50%;
  background:var(--green);
  color:#fffdf8;
  font-family:Georgia,serif;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.03em;
}
.enjoy-option h3{
  margin:0 0 .35rem;
  font-family:"Noto Serif TC","Songti TC",serif;
  font-size:1.12rem;
  line-height:1.4;
}
.enjoy-option p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.65}

/* V8：推薦區與 HOW TO ENJOY 保持清楚段落層級 */
.featured-wrap{border-top:1px solid rgba(23,63,53,.08)}

@media(max-width:900px){
  .enjoy-options{gap:.85rem}
}
@media(max-width:760px){
  .how-to-enjoy{padding:1.75rem 1.25rem 2.25rem}
  .enjoy-heading{margin-bottom:1.15rem}
  .enjoy-options{grid-template-columns:1fr;gap:.75rem}
  .enjoy-option{min-height:auto;padding:1rem 1.1rem 1.1rem}
  .enjoy-num{margin-bottom:.55rem}
}
@media print{
  .how-to-enjoy{padding:5mm 6mm}
  .enjoy-options{grid-template-columns:repeat(3,1fr)}
  .enjoy-option{min-height:auto;padding:4mm}
}


/* ===== V10 · 木禾定位重整 ===== */
.positioning-note{padding:clamp(1.5rem,3vw,2.4rem) clamp(1.2rem,4vw,3rem);background:var(--paper);border-bottom:1px solid var(--line);text-align:center}.positioning-note .positioning-kicker{margin:0 0 .45rem;color:var(--grain);font-family:Georgia,serif;font-size:.72rem;letter-spacing:.18em;font-weight:700}.positioning-note h2{margin:0;color:var(--ink);font-family:"Noto Serif TC",serif;font-size:clamp(1.35rem,2.5vw,1.85rem);font-weight:500}.positioning-note p:last-child{margin:.45rem 0 0;color:var(--muted);font-size:.88rem}
.menu-v10 .how-to-enjoy{margin-top:0}.menu-v10 .featured-wrap{margin-top:clamp(2rem,4vw,3.5rem)}
.menu-v10 .featured-heading{max-width:1120px;margin:0 auto 1.2rem;padding:0 clamp(1.2rem,4vw,3rem)}
.menu-v10 .specials{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:10px;overflow:hidden}.menu-v10 .special-card{min-width:0;border-radius:0!important;box-shadow:none!important}.menu-v10 .special-card+.special-card{border-left:1px solid rgba(23,63,53,.14)}
.menu-v10 .lunch-card{background:#f4f0e5!important;color:var(--ink)!important}.menu-v10 .couple-card{background:#dce7e1!important;color:var(--ink)!important}.menu-v10 .couple-card .price,.menu-v10 .lunch-card .price{color:var(--green)}
.menu-v10 .menu-wrap{padding-top:clamp(2.5rem,6vw,5rem)}
.menu-v10 .menu-section h2{font-size:clamp(1.5rem,2.6vw,1.85rem)}
.menu-v10 #mains h2{font-size:clamp(1.7rem,3vw,2.15rem)}
.menu-v10 .section-intro{margin:-.75rem 0 1.5rem;color:var(--muted);font-size:.9rem;line-height:1.6}
.menu-v10 #mains{grid-column:1 / -1;padding-bottom:clamp(2rem,4vw,3.5rem);border-bottom:1px solid var(--line)}
.menu-v10 #mains .menu-item{padding-right:1rem}
.menu-v10 #pasta,#start,#set,#drinks{scroll-margin-top:5.5rem}
.menu-v10 .notice{margin-top:clamp(3.5rem,6vw,5rem)!important}
@media (max-width:760px){.menu-v10 .specials{grid-template-columns:1fr}.menu-v10 .special-card+.special-card{border-left:0;border-top:1px solid rgba(23,63,53,.14)}.menu-v10 #mains{grid-column:auto}.menu-v10 .positioning-note{text-align:left}}

/* Seasonal small dishes */
.seasonal-feature{margin:0 clamp(2rem,6vw,5rem) clamp(2.5rem,6vw,5rem);padding:clamp(2rem,4vw,3rem);background:#f1eee4;border:1px solid rgba(23,63,53,.12);border-radius:12px;position:relative;overflow:hidden}
.seasonal-feature::after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(23,63,53,.1);border-radius:50%;right:-70px;top:-90px}
.seasonal-copy{max-width:720px;position:relative;z-index:1}
.seasonal-feature .kicker{margin:0 0 .45rem;color:var(--grain);font-size:.74rem;font-weight:700;letter-spacing:.18em}
.seasonal-feature h2{margin:0 0 .65rem;font-family:"Noto Serif TC",serif;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.3;color:var(--ink)}
.seasonal-feature p{margin:.35rem 0;color:var(--ink);line-height:1.7}
.seasonal-feature .seasonal-note{margin-top:1rem;color:var(--muted);font-size:.86rem}
@media(max-width:760px){.seasonal-feature{margin:0 1.2rem 2.5rem;padding:1.6rem 1.35rem}.seasonal-feature::after{width:130px;height:130px;right:-65px;top:-65px}}

/* Seasonal special item */
.seasonal-item{margin-top:1.25rem;padding:1.25rem 1.35rem;border:1px solid rgba(23,63,53,.14);background:rgba(255,253,248,.58)}
.seasonal-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem}
.seasonal-item h3{margin:0;font-size:1.05rem;line-height:1.5;font-weight:700}
.seasonal-item .en{margin:.2rem 0 0;color:var(--grain);font-family:Georgia,serif;font-size:.78rem;font-style:italic;line-height:1.45}
.seasonal-item .desc{margin:.7rem 0 0;color:var(--muted);font-size:.9rem;line-height:1.65}
.seasonal-price{flex:0 0 auto;color:var(--green);font-size:1.12rem;font-weight:800;white-space:nowrap}
.seasonal-price span{font-size:.78rem;font-weight:600;color:var(--grain);letter-spacing:.02em}
@media(max-width:760px){.seasonal-item-head{display:block}.seasonal-price{margin-top:.65rem}}


/* V13｜手機點餐體驗精修 */
.category-nav .nav-link{
  color:var(--green)!important;
  background:var(--paper)!important;
  border:1px solid var(--line);
  border-radius:10px;
  padding:.55rem .85rem;
  line-height:1.4;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
.category-nav .nav-link:hover,
.category-nav .nav-link:focus-visible,
.category-nav .nav-link.active{
  color:#fffdf8!important;
  background:var(--green)!important;
  border-color:var(--green);
}
.category-nav{overscroll-behavior-x:contain;scroll-snap-type:x proximity}
.category-nav .nav-link{scroll-snap-align:start}
.enjoy-option[role="link"]{cursor:pointer;transition:transform .18s ease,border-color .18s ease,background-color .18s ease}
.enjoy-option[role="link"]:hover,
.enjoy-option[role="link"]:focus-visible{border-color:rgba(255,91,26,.55);background:#fffaf1;outline:none}
.enjoy-option[role="link"]:focus-visible{box-shadow:0 0 0 3px rgba(255,91,26,.14)}
.dine-rule-group{grid-template-columns:repeat(2,minmax(0,1fr))}
.holiday-rule{padding-top:1rem;border-top:1px solid var(--line)}
@media(max-width:760px){
 .category-nav{gap:.5rem;padding:1rem 1.25rem}
 .category-nav .nav-link{font-size:.9rem;white-space:nowrap}
 .dine-rule-group{grid-template-columns:1fr;gap:1rem}
 .dine-rule strong{white-space:normal}
 .dinner-rule,.holiday-rule{padding:1rem 0 0;border-left:0;border-top:1px solid var(--line)}
 .enjoy-option{min-height:0}
}


/* QR 菜單使用說明：掃碼後先理解點餐流程，維持木禾米白與墨綠視覺 */
.masthead .qr-order-guide{flex:0 0 100%;width:100%;margin:1.4rem 0 0;padding:1.1rem 1.35rem;grid-template-columns:76px minmax(0,1fr);gap:1.2rem;border-radius:12px}
.qr-order-guide{display:grid;grid-template-columns:112px minmax(0,1fr);gap:clamp(1.1rem,3vw,2.2rem);align-items:center;margin:clamp(1.2rem,3vw,2rem) clamp(1.2rem,4vw,3rem) 0;padding:clamp(1.2rem,3vw,2rem);background:#f6f1e7;border:1px solid rgba(23,63,53,.13);border-radius:14px}
.qr-guide-mark{min-height:104px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;color:var(--green);background:#e4e6da;border-radius:10px;font-family:Georgia,serif;font-size:.68rem;letter-spacing:.18em}
.qr-guide-line{display:block;width:34px;height:1px;background:#a7ad9c}
.qr-guide-copy{min-width:0}
.qr-guide-kicker{margin:0 0 .35rem;color:#8a6940;font-size:.68rem;font-weight:700;letter-spacing:.13em;line-height:1.5}
.qr-guide-copy h2{margin:0 0 .55rem;color:var(--green);font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(1.25rem,2.5vw,1.8rem);font-weight:600;line-height:1.4;letter-spacing:.035em}
.qr-guide-description{margin:0;color:var(--ink);font-size:.92rem;line-height:1.7}
.qr-guide-description strong{font-weight:700}
.qr-guide-action{display:flex;align-items:flex-start;gap:.55rem;margin:.65rem 0 0;color:#a84e28;font-size:.92rem;font-weight:700;line-height:1.6}
.qr-guide-dot{flex:0 0 7px;width:7px;height:7px;margin-top:.55rem;border-radius:50%;background:var(--grain)}
@media(max-width:760px){.masthead .qr-order-guide{margin:1.2rem 0 0;padding:1rem 1.05rem;grid-template-columns:1fr;gap:.7rem}.masthead .qr-guide-mark{display:none}.masthead .qr-guide-copy h2{font-size:1.25rem}.masthead .qr-guide-description,.masthead .qr-guide-action{font-size:.86rem}}
@media(max-width:560px){.qr-order-guide{grid-template-columns:1fr;gap:.9rem;margin:1rem 1rem 0;padding:1.1rem 1.15rem;border-radius:12px}.qr-guide-mark{display:none}.qr-guide-kicker{font-size:.62rem}.qr-guide-copy h2{font-size:1.35rem;margin-bottom:.45rem}.qr-guide-description,.qr-guide-action{font-size:.88rem}}
@media print{.qr-order-guide{break-inside:avoid;margin:5mm 6mm 0;padding:5mm;grid-template-columns:25mm 1fr}.qr-guide-mark{min-height:22mm}}


/* V16: 將掃碼點餐引導整合至品牌區，取代原品牌標語區塊 */
.masthead .brand-block .qr-order-guide--brand{display:block;width:100%;margin:1.35rem 0 0;padding:1rem 1.1rem;background:#f6f1e7;border:1px solid rgba(23,63,53,.13);border-radius:12px}
.masthead .brand-block .qr-order-guide--brand .qr-guide-kicker{margin:0 0 .35rem;font-size:.66rem;letter-spacing:.1em}
.masthead .brand-block .qr-order-guide--brand .qr-guide-description{font-size:.88rem;line-height:1.6}
.masthead .brand-block .qr-order-guide--brand .qr-guide-action{margin:.45rem 0 0;font-size:.88rem;line-height:1.55}
@media(max-width:760px){.masthead .brand-block .qr-order-guide--brand{margin:1.1rem 0 0;padding:.9rem 1rem}.masthead .brand-block .qr-order-guide--brand .qr-guide-description,.masthead .brand-block .qr-order-guide--brand .qr-guide-action{font-size:.84rem}}


/* V17｜品牌理念獨立置於用餐須知上方；分類列隨頁面正常捲動 */
.brand-story-block{
  margin:clamp(2.5rem,5vw,4.5rem) clamp(1.2rem,4vw,3rem) 0;
  padding:clamp(2rem,4vw,3.2rem) 1rem clamp(2.1rem,4vw,3.3rem);
  text-align:center;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,rgba(246,241,231,.58),rgba(255,253,248,.2));
}
.brand-story-kicker{margin:0 0 .8rem;color:var(--green-soft);font-family:Georgia,serif;font-size:.78rem;font-weight:700;letter-spacing:.24em}
.brand-story-block h2{margin:0;color:var(--green);font-family:"Noto Serif TC","Songti TC",serif;font-size:clamp(1.45rem,3vw,2rem);font-weight:600;letter-spacing:.12em;line-height:1.5}
.brand-story-copy{margin:.75rem 0 .2rem;color:var(--ink);font-family:"Noto Serif TC","Songti TC",serif;font-size:1rem;letter-spacing:.04em}
.brand-story-en{margin:0;color:var(--muted);font-family:Georgia,serif;font-size:.88rem;font-style:italic;letter-spacing:.08em}
.category-nav{position:sticky!important;top:0!important;z-index:1000!important;background:var(--paper,#fffdf8);box-shadow:0 6px 18px rgba(33,53,47,.08)}
@media(max-width:760px){.brand-story-block{margin:2.4rem 1rem 0;padding:1.8rem .5rem 2rem}.brand-story-copy{font-size:.94rem}.brand-story-en{font-size:.82rem}}
@media print{.brand-story-block{break-inside:avoid;margin-top:10mm}}

/* V20｜限定小料理區塊間距微調：上方保留呼吸感，下方更貼近主菜 */
.menu-v10 .seasonal-feature{margin-top:1.25rem;margin-bottom:.75rem}
.menu-v10 .menu-wrap{padding-top:.5rem}
@media(max-width:760px){
  .menu-v10 .seasonal-feature{margin:1rem 1rem .5rem;padding:1.35rem 1.15rem}
  .menu-v10 .menu-wrap{padding-top:.35rem}
}
