/* Local behavior for preserved Wix server-rendered pages. */
html { scroll-behavior: smooth; }
body { --scrollbar-width: 15px; }
button, summary { cursor: pointer; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid #c7b477; outline-offset: 4px; }
.static-menu-host { overflow: visible !important; z-index: 50 !important; }
.static-nav { font: 14px/1.4 helvetica-w01-light, sans-serif; color: #fff; }
.static-nav ul { display: flex; align-items: center; justify-content: center; list-style: none; padding: 0; margin: 0; gap: 28px; }
.static-nav li { position: relative; }
.static-nav a, .static-nav summary { display: block; text-decoration: none; color: #fff; white-space: nowrap; padding: 12px 0; }
.static-menu-host > .static-nav > ul { gap: 0; }
.static-menu-host > .static-nav > ul > li { flex: 0 0 58px; }
.static-menu-host > .static-nav > ul > li > a,
.static-menu-host > .static-nav > ul > li > details > summary { height: 50px; line-height: 50px; padding: 0; text-align: center; }
.static-nav summary { list-style: none; }
.static-nav summary::-webkit-details-marker { display: none; }
.static-nav a:hover, .static-nav summary:hover, .static-nav [aria-current=page] { color: #c7b477; }
.static-nav details > .static-nav { position: absolute; top: 100%; left: -16px; min-width: 154px; background: #292929; padding: 8px 16px; box-shadow: 0 6px 16px #0004; z-index: 100; }
.static-nav details > .static-nav ul { display: block; }
.static-nav details > .static-nav a { padding: 8px 0; }
.static-hero { position: relative; display: block; overflow: hidden; width: 100% !important; left: 0 !important; margin-left: 0 !important; background: #292929; }
.static-hero-slides, .static-hero-slides img { width: 100%; height: 100%; }
.static-hero-slides { position: absolute; inset: 0; }
.static-hero-slides img { position: absolute; inset: 0; object-fit: cover; object-position: center; opacity: 0; transition: opacity 1s linear; pointer-events: none; }
.static-hero-slides img.is-active { opacity: 1; }
.static-hero button { position: absolute; z-index: 2; color: white; background: #0005; border: 0; }
.carousel-prev, .carousel-next { top: 45%; font-size: 40px; padding: 4px 14px; }
.carousel-prev { left: 16px; } .carousel-next { right: 16px; }
.carousel-pause { right: 16px; bottom: 16px; padding: 7px 12px; font-size: 12px; }
[hidden], [data-static-slide][hidden] { display: none !important; }
[data-biography] [data-testid=slidesWrapper] { position: relative; }
.static-service { box-sizing: border-box; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; width: 100%; height: 100%; min-height: 140px; padding: 24px; background: #f1eee7; color: #35322c; font: 16px/1.9 Arial, 'Microsoft JhengHei', sans-serif; overflow: auto; }
.static-service h2 { font-size: 24px; margin-bottom: 16px; }
.static-service p { margin: 6px 0; }
.static-service a { color: #78424a; text-decoration: underline; }
.static-video { width: 100%; height: 100%; object-fit: contain; background: #171717; }
/* A quiet welcome replaces the contact panel's two Wix hover/form faces. */
#comp-jldycys8.contact-welcome { box-sizing: border-box; height: 420px; display: flex; align-items: center; isolation: isolate; overflow: hidden; background: #e3e6dc; }
.contact-welcome-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; z-index: -2; }
.contact-welcome::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(246, 246, 238, .92), rgba(246, 246, 238, .76) 35%, rgba(246, 246, 238, 0) 72%); }
.contact-welcome-copy { padding: 48px 64px; color: #353b32; font-family: 'Songti TC', 'Noto Serif TC', PMingLiU, serif; }
.contact-welcome-copy::before { content: ''; display: block; width: 44px; height: 1px; margin-bottom: 26px; background: #9b854b; }
.contact-welcome-copy h2 { margin: 0 0 20px; font-size: 28px; line-height: 1.5; font-weight: 400; letter-spacing: .12em; }
.contact-welcome-copy p { margin: 0; font-size: 19px; line-height: 2; letter-spacing: .06em; }
.contact-welcome-copy a { display: inline-block; margin-top: 28px; padding: 8px 0; border-bottom: 1px solid #9b854b; color: #4d4838; font-size: 16px; line-height: 1.5; letter-spacing: .08em; text-decoration: none; }
.contact-welcome-copy a:hover { color: #743f47; border-color: currentColor; }
.contact-welcome-copy a span { margin-left: 8px; }
/* Remove fixed Wix spacer rows from the contact page and keep a natural footer gap. */
#uckg7 { min-height: 0 !important; }
[data-mesh-id="Containeruckg7inlineContent-gridContainer"] { min-height: 0 !important; grid-template-rows: repeat(5, min-content) !important; }
[data-mesh-id="Containeruckg7inlineContent-wedge-7"], #comp-jm6034h8 { display: none !important; }
#comp-jm2c8duj { margin-bottom: 0 !important; }
#comp-jm2cjo7t { margin-bottom: -73px !important; }
#comp-jle00izh { margin-bottom: 0 !important; }
#comp-jle00mf0 { margin-bottom: 32px !important; }
/* Wix's desktop canvas is retained; narrow viewports get a scaled, readable canvas. */
@media (max-width: 980px) {
  body { min-width: 0 !important; }
  #SITE_CONTAINER { width: 980px; zoom: calc((100vw - 15px) / 980px); }
  #SITE_HEADER, #SITE_FOOTER, #PAGES_CONTAINER { min-width: 980px !important; }
  #comp-jlgkf3f7 { left: 20px !important; }
  .static-nav ul { gap: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .static-hero-slides img { transition: none; }
}
