.mobile-menu-open{overflow:hidden}
.ham{min-width:44px;min-height:44px;align-items:center;justify-content:center;cursor:pointer;touch-action:manipulation;position:relative;z-index:201}
.ham span{width:28px;pointer-events:none}
.mob-close{min-width:44px;min-height:44px;cursor:pointer;touch-action:manipulation}
.mbn-ai{border:0;background:transparent;font:inherit;cursor:pointer;color:var(--gold-primary,#8D6E63);touch-action:manipulation}
.mbn-ai .mbn-ico{display:flex;align-items:center;justify-content:center}
.award-img-wrapper:has(img[data-award-key="award3"]){
  background:linear-gradient(145deg,#efe4d7 0%,#faf6f0 52%,#e7d7c5 100%);
}
.award-img-wrapper img[data-award-key="award3"]{
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center;
  padding:8px;
}
@media(max-width:700px){
  .mobile-bottom-nav{display:flex}
  .mobile-bottom-nav~.sticky-cta{display:none}
  .ai-panel{max-height:calc(100dvh - 18px);padding-bottom:max(8px,env(safe-area-inset-bottom))}
  .ai-panel-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
}

/* V156：手機底部操作列一致化，AI 顧問改為與主要按鈕相同的實心質感 */
@media(max-width:900px){
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}
  .mobile-bottom-nav{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:stretch;
    gap:7px;
    padding:9px max(10px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));
    background:rgba(250,247,242,.94);
    border-top:1px solid rgba(141,110,99,.18);
    box-shadow:0 -10px 30px rgba(43,32,20,.12);
    -webkit-backdrop-filter:blur(18px) saturate(1.15);
    backdrop-filter:blur(18px) saturate(1.15);
  }
  .mobile-bottom-nav .mbn-item{
    min-width:0;
    height:54px;
    padding:0 6px;
    margin:0;
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:center;
    gap:0;
    border:1px solid transparent;
    border-radius:14px;
    font:700 14px/1.2 var(--sans,"Noto Sans TC",sans-serif);
    letter-spacing:.04em;
    text-align:center;
    text-decoration:none;
    white-space:nowrap;
    cursor:pointer;
    box-sizing:border-box;
    -webkit-appearance:none;
    appearance:none;
    -webkit-tap-highlight-color:transparent;
    touch-action:manipulation;
    transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
  }
  .mobile-bottom-nav .mbn-ico{display:none!important}
  .mobile-bottom-nav .mbn-call{
    color:#fff;
    background:linear-gradient(145deg,#8d7567 0%,#735c50 100%);
    border-color:rgba(101,79,67,.25);
    box-shadow:0 5px 14px rgba(115,92,80,.22),inset 0 1px rgba(255,255,255,.18);
  }
  .mobile-bottom-nav .mbn-line{
    color:#6f584b;
    background:linear-gradient(145deg,#fffdf9 0%,#f3ebe2 100%);
    border-color:#bda490;
    box-shadow:0 5px 14px rgba(93,71,57,.10),inset 0 1px rgba(255,255,255,.9);
  }
  .mobile-bottom-nav .mbn-ai{
    color:#fff;
    background:linear-gradient(145deg,#bd9978 0%,#92705d 100%);
    border-color:rgba(126,91,70,.22);
    box-shadow:0 5px 14px rgba(141,110,99,.24),inset 0 1px rgba(255,255,255,.24);
  }
  .mobile-bottom-nav .mbn-primary{
    color:#6f584b;
    background:linear-gradient(145deg,#fffdf9 0%,#f3ebe2 100%);
    border-color:#bda490;
    box-shadow:0 5px 14px rgba(93,71,57,.10),inset 0 1px rgba(255,255,255,.9);
  }
  .mobile-bottom-nav .mbn-item:active{transform:translateY(1px) scale(.97);filter:brightness(.96)}
  .mobile-bottom-nav .mbn-item:focus-visible{outline:3px solid rgba(199,161,122,.5);outline-offset:2px}
  .mobile-bottom-nav~.sticky-cta{display:none!important}
}
@media(max-width:390px){
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .mobile-bottom-nav{gap:5px;padding-top:7px;padding-bottom:calc(7px + env(safe-area-inset-bottom))}
  .mobile-bottom-nav .mbn-item{height:52px;padding:0 3px;border-radius:12px;font-size:12.5px;letter-spacing:.01em}
}

/* V154：手機版服務現場輪播可靠顯示與觸控最佳化 */
@media(max-width:900px){
  #live-service{display:block!important;visibility:visible!important;overflow:visible}
  #live-service .live-service-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%;gap:18px}
  #live-service .live-video-box,#live-service .live-photo-carousel{display:block!important;width:100%;min-width:0}
  #live-service .live-photo-carousel{visibility:visible!important;opacity:1!important;aspect-ratio:16/9;min-height:clamp(206px,56.25vw,420px);background:#e9dfd3;isolation:isolate;touch-action:pan-y}
  #live-service .lpc-stage{display:block!important;position:absolute!important;inset:0!important;min-height:100%}
  #live-service .lpc-slide{display:block!important;visibility:hidden;width:100%!important;height:100%!important}
  #live-service .lpc-slide.active{visibility:visible!important;opacity:1!important}
  #live-service .lpc-nav{display:flex!important;width:44px;height:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
  #live-service .lpc-dot{width:10px;height:10px;min-width:10px;touch-action:manipulation}
  #live-service .lpc-label{max-width:calc(100% - 32px);white-space:normal;line-height:1.35}
}
@media(max-width:480px){
  #live-service .container{padding-left:16px;padding-right:16px}
  #live-service .live-photo-carousel{border-radius:16px;min-height:calc((100vw - 32px) * .5625)}
  #live-service .lpc-prev{left:8px}
  #live-service .lpc-next{right:8px}
}

/* V160：小型筆電與橫向平板提早切換行動選單，避免導覽擠壓或換行。 */
@media(max-width:1100px){
  .nav-links,.mega-menu{display:none!important}
  .ham{display:flex!important}
  .nav-ph-mobile{display:flex}
  .nav-in{justify-content:flex-start;gap:12px;padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
  .ham{order:1}
  .nav-logo{order:2;margin-right:auto}
  .nav-ph-mobile{order:3}
}

/* V160：手機、平板與瀏海／動態島安全區。 */
@media(max-width:900px){
  .honor-banner{font-size:clamp(15px,3.7vw,18px);line-height:1.7;padding:10px max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left))}
  .topbar{font-size:clamp(14px,3.5vw,16px);line-height:1.65;padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
  .mob-menu{padding-top:max(76px,calc(56px + env(safe-area-inset-top)));padding-left:max(28px,env(safe-area-inset-left));padding-right:max(28px,env(safe-area-inset-right));padding-bottom:max(32px,env(safe-area-inset-bottom))}
  .ai-panel{max-height:calc(100dvh - max(12px,env(safe-area-inset-top)))!important}
  .ai-panel-footer{padding-bottom:max(14px,env(safe-area-inset-bottom))}
  input,select,textarea{font-size:16px}
  .btn,button,a{scroll-margin-top:96px}
}

@media(min-width:701px) and (max-width:1100px){
  .ai-panel{width:min(460px,calc(100vw - 40px));right:20px;bottom:92px;max-height:calc(100dvh - 112px)}
}

@media(max-width:360px){
  .mobile-bottom-nav{gap:4px;padding-left:6px;padding-right:6px}
  .mobile-bottom-nav .mbn-item{font-size:11.5px;letter-spacing:0;padding-left:2px;padding-right:2px}
}

@media(hover:none){
  .mobile-bottom-nav .mbn-item:hover{transform:none}
}
