/* Aini · brand refinement. Existing content and photographic direction preserved. */
body.brand-refined{--refine-ink:#30271f;--refine-brass:#967242;--refine-line:rgba(151,119,71,.26);font-kerning:normal}
body.brand-refined .site-head{padding-block:1.05rem}
body.brand-refined .site-head>.container{max-width:1440px;padding-inline:clamp(20px,4vw,64px);gap:1.5rem}
body.brand-refined .site-head.scrolled{padding-block:.75rem;box-shadow:0 1px 0 var(--refine-line)}
body.brand-refined .site-head.scrolled::before,
body.brand-refined .site-head.solid::before{background:rgba(250,247,240,.97);opacity:1}
body.brand-refined .site-head:not(.solid):not(.scrolled)::before{opacity:1;background:linear-gradient(180deg,rgba(24,17,13,.78),rgba(24,17,13,.45));backdrop-filter:blur(6px)}
body.brand-refined .site-head .brand-mark{width:56px;height:56px}
body.brand-refined .site-head.scrolled .brand-mark{width:48px;height:48px}
body.brand-refined .site-head .brand-word-en{height:31px}
body.brand-refined .site-head .brand-word-zh{height:10px}
body.brand-refined .site-head.scrolled .brand-word-en{height:28px}
body.brand-refined .site-head.scrolled .brand-word-zh{height:9.5px}
body.brand-refined .site-head .nav a.navlink{font-weight:400;transition:color .25s;letter-spacing:.12em}
body.brand-refined .site-head.scrolled .nav a.navlink,
body.brand-refined .site-head.solid .nav a.navlink{color:#40362b!important}
body.brand-refined .site-head.scrolled .nav a.navlink.active,
body.brand-refined .site-head.solid .nav a.navlink.active{color:#866232!important}
body.brand-refined .site-head .nav a.navlink::after{bottom:-.1rem;height:1px;background:#b18b51}
body.brand-refined .site-head .head-cta{gap:1rem;flex-shrink:0}
body.brand-refined .site-head .lang-pill{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:0;font-size:.72rem;font-weight:500;letter-spacing:.1em;padding:.6rem}
body.brand-refined .site-head.scrolled .lang-pill,
body.brand-refined .site-head.solid .lang-pill{color:#40362b!important;border-color:#b89563!important}
body.brand-refined .site-head.scrolled .burger span,
body.brand-refined .site-head.solid .burger span{background:#40362b!important}
body.brand-refined .site-head.scrolled .btn--book,
body.brand-refined .site-head.solid .btn--book{color:#3a2c1e;background:transparent;border-color:#ad8b57}
body.brand-refined .btn{min-height:48px;max-width:100%;white-space:normal;justify-content:center;text-align:center;border-radius:1px;letter-spacing:.14em;font-size:.79rem;font-weight:500;padding:.95rem 1.7rem;box-shadow:none}
body.brand-refined.zh .btn{font-size:.85rem;letter-spacing:.2em}
body.brand-refined .btn--solid{background:#bd9b61;border-color:#bd9b61;color:#261c12}
body.brand-refined .btn--solid:hover{background:#d0b17a;border-color:#d0b17a;color:#261c12}
body.brand-refined .site-head .btn--book{min-height:44px;padding:.7rem 1.4rem;font-size:.73rem}
body.brand-refined .textlink,body.brand-refined .director-link{letter-spacing:.14em;line-height:1.7}
body.brand-refined .site-foot{position:relative;background:#1b140f;padding:clamp(4.5rem,7vw,7rem) 0 2rem;color:#d6c9ba}
body.brand-refined .site-foot::before{content:"";position:absolute;inset:0 clamp(20px,4vw,64px) auto;height:1px;background:rgba(190,155,97,.3)}
body.brand-refined .site-foot>.container{max-width:1360px;padding-inline:clamp(20px,4vw,64px)}
body.brand-refined .site-foot .foot-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,.7fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);padding-bottom:3.5rem}
body.brand-refined .site-foot .brand-mark{width:72px;height:72px}
body.brand-refined .site-foot .brand-word-en{height:38px;width:auto}
body.brand-refined .site-foot .brand-word-zh{height:12px;width:auto}
body.brand-refined .site-foot .foot-tagline{font-size:.96rem;line-height:1.85;max-width:27em;margin-top:1.6rem;color:#c7ae86;letter-spacing:.015em}
body.brand-refined .site-foot h4{font:500 .75rem/1.5 var(--sans);letter-spacing:.19em;color:#ceb17e;margin-bottom:1.35rem}
body.brand-refined .site-foot li{font-size:.91rem;line-height:1.85;font-weight:400;color:#dbcebd}
body.brand-refined .site-foot li a{display:inline-block;padding:.22rem 0;transition:color .25s}
body.brand-refined .site-foot li a:hover{color:#ead1a3}
body.brand-refined .site-foot .disclaimer{font-size:.8rem;line-height:1.95;font-weight:400;color:#b6a99b;max-width:80em;padding:2rem 0;margin:0;border-top:1px solid rgba(202,178,139,.16)}
body.brand-refined .site-foot .foot-bottom{gap:1rem;flex-wrap:wrap;padding-top:1.5rem;border-color:rgba(202,178,139,.16);font-size:.75rem;letter-spacing:.035em;color:#b6a99b}
body.brand-refined :where(a,button,summary):focus-visible{outline:2px solid #ac874d;outline-offset:5px}
body.brand-refined .site-foot :where(a,button):focus-visible{outline-color:#e2c894}
@media(min-width:1201px){
 body.brand-refined:not(.large-type) .site-head .nav{gap:clamp(1rem,1.7vw,1.7rem)}
 body.brand-refined:not(.large-type) .site-head .nav a.navlink{font-size:.75rem}
 body.brand-refined.zh:not(.large-type) .site-head .nav a.navlink{font-size:.86rem;letter-spacing:.19em}
}
@media(max-width:1200px){
 body.brand-refined .site-head .head-cta .btn--book{display:none}
 body.brand-refined .site-head>.container{gap:1rem}
 body.brand-refined.nav-open.home-director .site-head .nav a.navlink{color:#f4eadc!important}
 body.brand-refined.nav-open.home-director .site-head .nav a.navlink.active{color:#d4b178!important}
 body.brand-refined.nav-open.home-director .site-head .lang-pill{color:#f4eadc!important;border-color:#b4915f}
 body.brand-refined.nav-open.home-director .site-head .burger span{background:#f4eadc!important}
 body.brand-refined.nav-open:not(.home-director) .site-head .burger span{background:#40362b!important}
 body.brand-refined.nav-open:not(.home-director) .site-head .lang-pill{color:#40362b!important}
 body.brand-refined .site-head .nav a.navlink{min-height:44px}
}
@media(max-width:760px){
 body.brand-refined .site-head{padding-block:.9rem}
 body.brand-refined .site-head.scrolled{padding-block:.65rem}
 body.brand-refined .site-head .brand-mark{width:44px;height:44px}
 body.brand-refined .site-head.scrolled .brand-mark{width:40px;height:40px}
 body.brand-refined .site-head .brand-word-en,body.brand-refined .site-head.scrolled .brand-word-en{height:25px}
 body.brand-refined .site-head .brand-word-zh,body.brand-refined .site-head.scrolled .brand-word-zh{height:9px}
 body.brand-refined .site-head .head-cta{gap:.65rem}
 body.brand-refined .site-foot .foot-grid{grid-template-columns:1fr 1fr;gap:2.5rem 1.5rem;padding-bottom:2.5rem}
 body.brand-refined .site-foot .foot-grid>div:first-child{grid-column:1/-1}
 body.brand-refined .site-foot .brand-mark{width:62px;height:62px}
 body.brand-refined .site-foot .brand-word-en{height:32px}
 body.brand-refined .site-foot .brand-word-zh{height:11px}
 body.brand-refined .site-foot li{font-size:.86rem}
 body.brand-refined .site-foot li a{min-height:44px;padding:.45rem 0}
 body.brand-refined .site-foot .disclaimer{font-size:.78rem;line-height:1.9}
}
@media(max-width:380px){
 body.brand-refined .site-head>.container{padding-inline:16px;gap:.5rem}
 body.brand-refined .site-head .brand{gap:.35rem}
 body.brand-refined .site-head .brand-mark{width:36px;height:36px}
 body.brand-refined .site-head .brand-word-en,body.brand-refined .site-head.scrolled .brand-word-en{height:22px}
 body.brand-refined .site-head .brand-word-zh,body.brand-refined .site-head.scrolled .brand-word-zh{height:8px}
 body.brand-refined .site-head .head-cta{gap:.4rem}
 body.brand-refined .site-foot .foot-grid{grid-template-columns:1fr}
 body.brand-refined .btn{padding:.9rem 1.2rem}
}
body.brand-refined.large-type .site-foot .foot-grid{grid-template-columns:1fr}
body.brand-refined.large-type .site-foot .foot-grid>div:first-child{grid-column:auto}
/* Enlarged text uses the same accessible menu on every page, at every width. */
body.brand-refined.large-type .site-head>.container{flex-wrap:nowrap;gap:16px}
body.brand-refined.large-type .site-head .head-cta{gap:12px}
body.brand-refined.large-type .site-head .head-cta .btn--book{display:none}
body.brand-refined.large-type .site-head .burger{display:block;flex-shrink:0}
body.brand-refined.large-type .site-head .lang-pill{padding:8px;min-width:44px;min-height:44px}
body.brand-refined.large-type .site-head .nav{position:fixed;inset:0;z-index:110;width:auto;height:100dvh;min-height:0;order:initial;display:flex;flex-flow:column nowrap;align-items:center;justify-content:safe center;gap:clamp(6px,2.3vh,22px);padding:100px 24px 32px;background:#f6f2e9;overflow-y:auto;overscroll-behavior:contain;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-12px)}
body.brand-refined.large-type.home-director .site-head .nav{background:#1b130f}
body.brand-refined.large-type.nav-open .site-head .nav{visibility:visible;opacity:1;pointer-events:auto;transform:none}
body.brand-refined.large-type .site-head .nav a.navlink{font-size:1rem;line-height:1.5;min-height:44px;display:flex;align-items:center;letter-spacing:.08em;max-width:100%;white-space:normal;text-align:center}
body.brand-refined.large-type.nav-open .site-head{transform:none}
body.brand-refined.large-type.nav-open .site-head .brand{position:relative;z-index:120}
body.brand-refined.large-type.nav-open.home-director .site-head .nav a.navlink,
body.brand-refined.large-type.nav-open.home-director .site-head .lang-pill{color:#f4eadc!important}
body.brand-refined.large-type.nav-open.home-director .site-head .nav a.navlink.active{color:#d4b178!important}
body.brand-refined.large-type.nav-open.home-director .site-head .burger span{background:#f4eadc!important}
body.brand-refined.large-type.nav-open:not(.home-director) .site-head .burger span{background:#40362b!important}
body.brand-refined.large-type.nav-open:not(.home-director) .site-head .nav a.navlink,
body.brand-refined.large-type.nav-open:not(.home-director) .site-head .lang-pill{color:#40362b!important}
body.brand-refined.large-type.nav-open:not(.home-director) .site-head .nav a.navlink.active{color:#866232!important}
@media(max-width:620px){
 body.brand-refined.large-type .site-head>.container{gap:10px;padding-inline:16px}
 body.brand-refined.large-type .site-head .brand{gap:6px;min-width:0}
 body.brand-refined.large-type .site-head .brand-mark{width:36px;height:36px}
 body.brand-refined.large-type .site-head .brand-word-en{height:22px}
 body.brand-refined.large-type .site-head .brand-word-zh{height:8px}
 body.brand-refined.large-type .site-head .head-cta{gap:8px}
}
@media(prefers-reduced-motion:reduce){
 body.brand-refined .btn,body.brand-refined .site-head,body.brand-refined .nav a,body.brand-refined .site-foot a{transition:none}
}
