:root{--color-paper:#f8f1e7;--color-surface:#fffaf3;--color-ink:#352922;--color-muted:#74655b;--color-clay:#b65c45;--color-clay-dark:#914632;--color-leaf:#49735b;--color-line:#e7d8ca;--shadow:0 16px 40px rgba(75,49,35,.10);--radius:24px;--max:1120px;font-family:"Noto Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;color:var(--color-ink);background:var(--color-paper);line-height:1.65}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:clip;background:radial-gradient(circle at 85% 5%,#f8eadf 0,transparent 24rem),var(--color-paper)}img{display:block;max-width:100%;height:auto}a{color:inherit}button,a{touch-action:manipulation}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:20;background:#fff;padding:.75rem 1rem}.skip-link:focus{top:1rem}.demo-banner{padding:.55rem 1rem;text-align:center;background:var(--color-leaf);color:#fff;font-weight:700;font-size:.9rem}.site-header{max-width:var(--max);margin:auto;padding:1rem clamp(1rem,4vw,2rem);display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.brand strong,.brand small{display:block}.brand small{color:var(--color-muted);font-size:.72rem}.site-header nav{display:flex;gap:1.25rem}.site-header nav a{text-decoration:none;font-weight:700}.site-header nav a:hover{text-decoration:underline;text-underline-offset:.35rem}main{max-width:var(--max);margin:auto;padding:0 clamp(1rem,4vw,2rem) 5rem}.hero{min-height:66vh;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:clamp(2rem,6vw,5rem);padding:4rem 0 5rem}.eyebrow{margin:0 0 .5rem;color:var(--color-leaf);font-size:.86rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.section-intro{margin:0 0 .75rem;max-width:42rem;color:var(--color-muted);font-size:1rem}.hero h1,.section h2{font-family:Georgia,"Songti SC","STSong",serif;line-height:1.12}.hero h1{margin:.4rem 0 1.25rem;font-size:clamp(2.7rem,7vw,5.8rem);font-weight:600}.hero>div>p:not(.eyebrow){max-width:42rem;font-size:1.08rem}.hero-note{padding:2rem;border:1px solid var(--color-line);border-radius:50% 50% 42% 58%;background:rgba(255,250,243,.78);box-shadow:var(--shadow);text-align:center;transform:rotate(2deg)}.hero-note span{color:var(--color-clay);font-size:3rem}.actions,.contact-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.button,.step-tabs button,.text-button{min-height:52px;border:1px solid transparent;border-radius:999px;padding:.8rem 1.2rem;font:inherit;font-weight:800;cursor:pointer}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.primary{background:var(--color-clay);color:#fff}.primary:hover{background:var(--color-clay-dark)}.secondary,.step-tabs button{border-color:var(--color-line);background:var(--color-surface);color:var(--color-ink)}.section{padding:4.5rem 0;border-top:1px solid var(--color-line)}.section-heading{margin-bottom:1.5rem}.section-heading.row{display:flex;align-items:end;justify-content:space-between;gap:1rem}.section h2{margin:.25rem 0;font-size:clamp(2rem,4.5vw,3.5rem);font-weight:600}.schedule-card,.step-detail,.category-card,.why-box{border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-surface);box-shadow:0 8px 28px rgba(75,49,35,.06)}.schedule-card{position:relative;padding:1.35rem 1.5rem;margin:.8rem 0;overflow:hidden}.schedule-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--status,var(--color-leaf))}.schedule-card.confirmed{--status:var(--color-leaf)}.schedule-card.expected{--status:#c29045}.schedule-card.changed{--status:var(--color-clay)}.status{display:inline-flex;padding:.2rem .65rem;border-radius:999px;background:#edf4ef;color:var(--color-leaf);font-size:.82rem;font-weight:800}.empty-state{padding:2rem;text-align:center;border:1px dashed var(--color-line);border-radius:var(--radius)}.story{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,7vw,6rem);align-items:center}.story-visual{aspect-ratio:1;display:grid;place-content:center;text-align:center;border-radius:44% 56% 55% 45%;background:#ecd2bf;color:var(--color-clay-dark)}.story-visual span,.story-visual strong{display:block}.story-visual strong{font-family:Georgia,serif;font-size:clamp(4rem,10vw,8rem);line-height:.9}.text-button{padding-left:0;background:transparent;color:var(--color-clay-dark);text-decoration:underline;text-underline-offset:.35rem}.step-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.step-tabs button[aria-selected="true"]{background:var(--color-leaf);color:#fff}.step-detail{min-height:9rem;margin-top:1rem;padding:1.5rem}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.category-card{padding:1.4rem}.category-card h3{margin-top:0}.product{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}.product-image{padding:1rem;background:#e9e0d4;border-radius:var(--radius);overflow:hidden}.product-image img{border-radius:calc(var(--radius) - 8px);aspect-ratio:898/906;object-fit:contain}.why-box{padding:1.25rem 1.4rem;margin:1.25rem 0;border-left:6px solid var(--color-clay)}.channel-note{color:var(--color-muted);font-size:.9rem}footer{padding:2rem;text-align:center;background:#3f352f;color:#f8f1e7}.toast{position:fixed;left:50%;bottom:1.25rem;z-index:10;max-width:min(90vw,34rem);transform:translateX(-50%);padding:.85rem 1rem;border-radius:14px;background:#2f2925;color:#fff;box-shadow:var(--shadow)}.reveal{opacity:1;transform:none}.button:active,.category-card:active,.schedule-card:active{transform:scale(.985)}:focus-visible{outline:3px solid #2d6f91;outline-offset:4px}
.motion-ready .reveal{opacity:0;transform:translateY(18px);transition:opacity .45s ease,transform .45s ease}.motion-ready .reveal.is-visible{opacity:1;transform:none}
@media (hover: hover){.category-card,.schedule-card,.product-image{transition:transform .2s ease,box-shadow .2s ease}.category-card:hover,.schedule-card:hover,.product-image:hover{transform:translateY(-4px);box-shadow:var(--shadow)}}
@media (max-width:800px){.site-header{align-items:flex-start}.hero,.story,.product{grid-template-columns:1fr}.hero{min-height:auto;padding:3rem 0}.hero-note{max-width:19rem;margin:auto}.card-grid{grid-template-columns:repeat(2,1fr)}.step-tabs{grid-template-columns:1fr}.section-heading.row{align-items:center}.actions .button,.contact-actions .button{flex:1 1 100%}}
@media (max-width:480px){.hero h1{font-size:2.65rem}.card-grid{grid-template-columns:1fr}.section{padding:3.5rem 0}.schedule-card{padding:1.2rem}.brand small{max-width:14rem}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.motion-ready .reveal{opacity:1;transform:none}.category-card:hover,.schedule-card:hover,.product-image:hover,.button:active,.category-card:active,.schedule-card:active{transform:none}}
.brand-logo{display:block;width:52px;height:52px;flex:0 0 52px;object-fit:contain;border-radius:50%;background:transparent}
.home-event-identity{font-weight:750;font-size:clamp(1.35rem,3vw,1.7rem);line-height:1.35;overflow-wrap:normal;word-break:keep-all}.home-change-note{border-left:3px solid var(--color-clay);padding-left:1rem;font-weight:650}#home-schedule-alerts:not(:empty){margin-top:1.5rem}#home-schedule-status{color:var(--color-muted)}[hidden]{display:none!important}
.hero h1,.hero-note p{white-space:pre-line}#product-entry{max-width:52rem}#product-entry h2{font-size:clamp(1.7rem,4vw,2.5rem)}
html[lang="en"] .hero h1{font-size:clamp(2.65rem,4.8vw,4.5rem);max-width:18ch;line-height:1.1}

/* Until verified photography is supplied, keep the introduction compact and honest. */
.hero{min-height:0;grid-template-columns:1fr;gap:0;padding:2.25rem 0 2.75rem;max-width:54rem}
.hero h1,html[lang="en"] .hero h1{font-size:clamp(2rem,3.8vw,3.25rem);line-height:1.2;max-width:27ch;text-wrap:balance;white-space:normal}
html[lang="zh"] .hero h1{max-width:none}
.hero .actions{margin-top:1.25rem}
#next-stop{padding-top:2rem;padding-bottom:2.5rem}
@media(max-width:480px){.hero{padding:1.4rem 0 2rem}.hero h1,html[lang="en"] .hero h1{font-size:2rem;line-height:1.2}.hero>div>p:not(.eyebrow){font-size:1rem}.hero .button{min-height:48px;padding:.65rem 1rem}.hero .actions{gap:.6rem}}

.home-find-us-entry{white-space:nowrap}
.home-calendar-preview{display:none;padding:1rem;border:1px solid var(--color-line);border-radius:18px;background:var(--color-surface);box-shadow:0 8px 28px rgba(75,49,35,.06)}
.home-calendar-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.7rem;color:var(--color-ink)}
.home-calendar-preview-heading a{color:var(--color-clay-dark);font-weight:850}
.home-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem;min-width:0}
.home-calendar-weekday{padding:.2rem 0;color:var(--color-muted);font-size:.7rem;font-weight:850;text-align:center}
.home-calendar-cell{display:flex;min-height:3.4rem;min-width:0;flex-direction:column;align-items:center;justify-content:flex-start;gap:.12rem;padding:.25rem .14rem;color:var(--color-ink);background:#fffdf9;border:1px solid var(--color-line);border-radius:8px;text-decoration:none;text-align:center}
.home-calendar-cell strong{font-size:1rem;line-height:1.2}
.home-calendar-cell span{display:-webkit-box;max-width:100%;overflow:hidden;color:var(--color-muted);font-size:.6rem;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.home-calendar-cell-event{border-color:var(--color-line);background:#fffdf9}
.home-calendar-cell-event span{color:var(--color-ink);font-weight:750}
.home-calendar-cell-unpublished{border-style:dashed;background:#fffdf9}
.home-calendar-cell[aria-current="date"]{background:#f0f5ed;border-color:var(--color-leaf)}
.home-calendar-cell[aria-current="date"] strong,
.home-calendar-cell[aria-current="date"] span{color:var(--color-ink)}
.home-calendar-cell-empty{visibility:hidden;border-color:transparent;background:transparent}
.home-calendar-preview-note{margin:.7rem 0 0;color:var(--color-muted);font-size:.78rem}
.home-calendar-scroll{min-width:0}
.home-calendar-scroll-hint{display:none}
/* The compact month preview is the homepage schedule view at every width. */
.home-calendar-preview:not([hidden]){display:block}
@media(min-width:761px){
  .home-calendar-preview{padding:1.25rem}
  .home-calendar-grid{gap:.4rem}
  .home-calendar-weekday{font-size:.85rem}
  .home-calendar-cell{min-height:5.25rem;padding:.6rem .35rem;gap:.3rem}
  .home-calendar-cell strong{font-size:1.4rem}
  .home-calendar-cell span{font-size:.875rem;line-height:1.3}
}
@media(max-width:760px){
  .home-calendar-scroll{overflow-x:clip;padding-bottom:0}
  .home-calendar-scroll-hint{display:none}
  .home-calendar-grid{min-width:0;gap:.25rem}
  .home-calendar-cell{min-height:3.4rem;padding:.25rem .14rem;gap:.12rem}
  .home-calendar-cell strong{font-size:1rem}
  .home-calendar-cell span{display:-webkit-box;overflow:hidden;font-size:.6rem;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:3}
  .section-heading.row{align-items:flex-start;flex-wrap:wrap}
  .section-heading.row .home-find-us-entry{order:3;flex:1 1 100%;min-height:48px}




}
