/* Mobile-first refinements loaded after desktop styles. */
@media (max-width:760px){
  html{-webkit-text-size-adjust:100%;scroll-padding-top:72px}
  body{overflow-x:hidden}
  .shell{width:min(calc(100% - 32px),var(--shell))}
  a,button,input,select,textarea{touch-action:manipulation}
  button,.icon-button,.mobile-nav{min-height:44px}

  .topbar{height:auto;min-height:32px}
  .topbar-inner{min-height:32px;padding:6px 0}
  .shipping-note{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
  .top-links{display:none}

  .site-header{height:64px;position:sticky;top:0;z-index:80;background:#fff}
  .header-inner{height:64px;grid-template-columns:minmax(0,1fr) 44px 40px;gap:4px;position:relative}
  .logo{min-width:0;overflow:hidden}
  .logo strong{font-size:20px;letter-spacing:.12em;white-space:nowrap}
  .logo small{font-size:7px;letter-spacing:.26em;margin-top:6px;white-space:nowrap}
  .mobile-nav{display:block;grid-column:2;width:44px;height:44px;padding:7px}
  .header-actions{grid-column:3;gap:0}
  .icon-button{width:40px;height:44px}
  .main-nav{display:none;position:absolute;left:-16px;right:-16px;top:64px;z-index:90;max-height:calc(100dvh - 64px);overflow-y:auto;flex-direction:column;align-items:stretch;gap:0;padding:8px 16px 18px;background:#fff;border-top:1px solid #eee9e5;border-bottom:1px solid #ddd6d0;box-shadow:0 16px 34px rgba(40,33,28,.12)}
  .main-nav.open{display:flex}
  .main-nav i{display:none}
  .main-nav a{padding:14px 4px;border-bottom:1px solid #eee9e5;font-size:15px}
  .main-nav a:last-of-type{border-bottom:0}
  .main-nav a:after{display:none}

  .hero{height:500px}
  .hero-image{object-position:center 50%}
  .hero-overlay{background:linear-gradient(180deg,rgba(248,246,242,.08) 0%,rgba(248,246,242,.55) 48%,rgba(248,246,242,.97) 78%,#f8f6f2 100%)}
  .hero-content{align-items:flex-end;padding-bottom:52px}
  .hero-copy{width:100%;margin:0}
  .hero-copy h1{font-size:clamp(31px,9vw,38px);line-height:1.24;letter-spacing:.025em}
  .hero-copy p{font-size:15px;line-height:1.75;margin-top:15px}
  .hero-copy a{min-height:48px;margin-top:22px;padding:0 22px}
  .hero-arrow{display:none}
  .hero-dots{bottom:18px}

  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-item{justify-content:flex-start;gap:10px;padding:15px 9px;min-width:0}
  .service-item:nth-child(2):after{display:none}
  .service-item:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .service-item svg{width:28px;height:28px;flex:0 0 auto}
  .service-item strong{font-size:13px}
  .service-item span{font-size:10px;white-space:normal;line-height:1.45}

  .category-section,.guide-section,.inspiration,.about{padding:48px 0}
  .section-title.centered{margin-bottom:24px}
  .section-title h2,.inspiration h2,.about h2,.member h2{font-size:28px;line-height:1.35}
  .section-title.split{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:22px}
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .category-card div{padding:13px 8px 15px}
  .category-card strong{font-size:15px}
  .category-card span{font-size:11px;line-height:1.5}
  .content-grid{gap:18px}
  .content-card-body{padding:18px 18px 20px}
  .content-card h3{font-size:19px;line-height:1.5}
  .content-card p{font-size:13px;line-height:1.75}
  .content-card-meta{gap:8px;font-size:10px;flex-wrap:wrap}

  .inspiration-inner{grid-template-columns:1fr;gap:24px}
  .inspiration-inner>img{height:260px}
  .inspiration-inner>div{padding-right:0}
  .inspiration h2{font-size:30px}
  .inspiration p:not(:first-child){font-size:14px;line-height:1.9;margin:18px 0 22px}
  .about-inner{grid-template-columns:1fr;gap:28px}
  .about-copy{grid-template-columns:1fr;gap:18px;padding-top:0}
  .member{padding:36px 0}
  .member-inner{grid-template-columns:1fr;gap:20px}
  .member form{flex-direction:column}
  .member input,.member button{width:100%;height:48px}
  footer{padding:44px 0}
  .footer-inner{grid-template-columns:1fr 1fr;gap:30px 20px}
  .footer-brand{grid-column:1/-1}

  .page-hero-simple{padding:46px 0 40px}
  .page-hero h1,.category-hero h1{font-size:32px;line-height:1.3}
  .page-hero span,.category-hero span{font-size:14px;line-height:1.75}
  .category-hero-inner{gap:22px;padding-block:32px}
  .category-hero-inner img{height:auto;aspect-ratio:1.45/1}
  .content-list-section{padding:42px 0 58px}
  .filter-row{flex-wrap:nowrap;overflow-x:auto;padding:2px 0 7px;scrollbar-width:none}
  .filter-row::-webkit-scrollbar{display:none}
  .filter-row button{flex:0 0 auto;min-height:40px;padding:9px 14px}
  .article-tools{gap:12px;margin:22px 0}
  .article-tools input{height:46px;font-size:16px}

  .article-breadcrumb{padding-top:16px;font-size:11px;gap:6px}
  .article-header{gap:20px;padding-block:26px 30px}
  .article-header h1{font-size:clamp(28px,8vw,34px);line-height:1.32;margin-bottom:16px;overflow-wrap:anywhere}
  .article-header-copy>p{font-size:15px;line-height:1.8;margin-bottom:18px}
  .article-header img{height:auto;aspect-ratio:1.4/1;object-fit:cover}
  .article-meta{gap:8px 12px;font-size:10px;line-height:1.5}
  .article-layout{gap:0;padding-bottom:58px}
  .article-aside{display:none}
  .article-body{font-size:16px;line-height:1.88;min-width:0;overflow-wrap:anywhere}
  .article-body p{margin-bottom:18px}
  .article-body h2{font-size:23px;line-height:1.42;margin:42px 0 18px;padding:14px 18px 14px 18px;box-shadow:inset 4px 0 0 #8d6f60}
  .article-body h2::after{display:none}
  .article-body h3{font-family:"Noto Serif TC","Songti TC",serif;font-size:20px;line-height:1.45;margin:32px 0 14px}
  .article-body ul,.article-body ol{padding-left:1.25em;margin-bottom:21px}
  .article-body li{margin:.38em 0}
  .article-note{padding:16px 17px;margin:24px 0}
  .article-body img{width:100%;height:auto;margin-inline:auto}
  .article-body table{margin:24px 0 30px;border-radius:0;scrollbar-width:thin;overscroll-behavior-inline:contain}
  .article-body th,.article-body td{min-width:128px;padding:11px 12px;font-size:13px;line-height:1.6}
  .article-body th:first-child{position:sticky;left:0;z-index:3;background:#3a332f}
  .article-body td:first-child{position:sticky;left:0;z-index:2;background:#fff}
  .article-body tbody tr:nth-child(even) td:first-child{background:#f8f4f0}
  .related-section{padding:48px 0}

  .search-box{width:calc(100% - 24px);margin:72px auto 0;padding:18px}
  .search-box input{font-size:16px;padding-right:64px}
  .search-box>button{right:20px;top:34px}
  .search-box [data-global-search-results] a{align-items:flex-start;flex-direction:column;gap:5px}
  .not-found{padding:40px 18px}
  .not-found h1{font-size:30px}
}

@media (max-width:420px){
  .shell{width:min(calc(100% - 26px),var(--shell))}
  .header-inner{grid-template-columns:minmax(0,1fr) 42px 38px}
  .logo strong{font-size:18px;letter-spacing:.1em}
  .logo small{font-size:6.5px;letter-spacing:.2em}
  .main-nav{left:-13px;right:-13px}
  .hero{height:470px}
  .hero-content{padding-bottom:48px}
  .hero-copy h1{font-size:30px}
  .service-item{padding:13px 7px}
  .service-item svg{width:24px;height:24px}
  .category-grid{gap:9px}
  .category-card strong{font-size:14px}
  .category-card span{font-size:10px}
  .page-hero h1,.category-hero h1{font-size:29px}
  .article-header h1{font-size:28px}
  .article-body h2{font-size:22px;padding:13px 15px}
  .article-body th,.article-body td{min-width:118px;padding:10px;font-size:12.5px}
  .footer-inner{grid-template-columns:1fr}
  .footer-brand{grid-column:auto}
}
