/* Deliberately scoped to the public header, leaving reader navigation alone. */
.mp-header:has(> nav[data-mega-menu]) { gap:24px; flex-wrap:wrap; }
.mp-header:has(> nav[data-mega-menu]:not([data-mega-ready])) { position:relative; }
.mp-header:has(> nav[data-mega-menu]) > .mp-menu { display:none; }
.mp-header:has(> nav[data-mega-menu][data-mega-ready]) { flex-wrap:nowrap; }
.mp-header > nav.mp-header-shortcuts { display:none; }
.mp-header-shortcut-icon { display:none; flex:none; color:#bd9a6d; }
@media(min-width:1280px) {
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts { display:flex; position:static; flex:1 1 auto; align-items:center; justify-content:center; gap:clamp(16px,1.5vw,26px); width:auto; min-width:0; margin:0; padding:0; order:0; border:0; background:none; }
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a { position:relative; flex:none; display:inline-flex; align-items:center; gap:8px; min-height:46px; padding:10px 0; color:#d3c9bc; font-size:15px; font-weight:500; line-height:1.5; white-space:nowrap; border:0; transition:color .18s ease; }
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a::after { content:''; position:absolute; left:0; right:0; bottom:4px; height:1px; background:#c99a62; transform:scaleX(0); transform-origin:left; transition:transform .18s ease; }
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a:is(:hover,:focus-visible,[aria-current]) { color:#f0c99b; }
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a:is(:hover,:focus-visible,[aria-current])::after { transform:scaleX(1); }
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a:focus-visible { outline:2px solid #e6b77f; outline-offset:4px; border-radius:2px; }
 html[lang="en-HK"] .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts { gap:clamp(16px,1.4vw,24px); }
 html[lang="en-HK"] .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a { font-size:14px; }
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts + .mp-menu { margin-left:0; }
}
@media(min-width:1500px) {
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts { gap:clamp(28px,2.7vw,52px); }
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a { gap:10px; font-size:16px; }
 html[lang="en-HK"] .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts { gap:28px; }
 html[lang="en-HK"] .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a { font-size:15px; }
 .mp-header > nav.mp-header-shortcuts .mp-header-shortcut-icon { display:block; }
}
.mp-header:has(> nav[data-mega-menu]) > .mp-menu { display:inline-flex; flex-shrink:0; align-items:center; justify-content:center; gap:8px; order:1; margin-left:auto; min-height:46px; min-width:88px; padding:9px 14px; background:#d5b17a20; color:#efd4aa; border:1px solid #c6a06b80; border-radius:6px; box-shadow:inset 0 1px 0 #fff8e906; font-size:15px; font-weight:500; line-height:1.4; white-space:nowrap; transition:background .16s ease,border-color .16s ease,color .16s ease; }
.mp-header:has(> nav[data-mega-menu]) > .mp-menu:hover { border-color:#d4b17b; background:#d5b17a30; color:#ffe1b4; }
.mp-header:has(> nav[data-mega-menu]) > .mp-menu:focus-visible { outline:3px solid #ffe1a5; outline-offset:3px; }
.mp-header > .mp-menu .mp-menu-symbol { display:block; width:16px; height:16px; flex:none; }
.mp-header:has(> nav[data-mega-menu]) > .mp-menu::after { content:''; flex:none; width:7px; height:7px; border-right:1px solid currentColor; border-bottom:1px solid currentColor; transform:rotate(45deg) translateY(-2px); transition:transform .16s ease; }
.mp-header:has(> nav[data-mega-menu]) > .mp-menu[aria-expanded="true"] { border-color:#dbb479; background:#d5b17a36; color:#ffe1b4; }
.mp-header:has(> nav[data-mega-menu]) > .mp-menu[aria-expanded="true"]::after { transform:rotate(225deg) translateY(-2px); }
.mp-header:has(> nav[data-mega-menu]) > .mp-header-actions { order:2; width:auto; }
.mp-header > nav[data-mega-menu] { display:block; position:relative; inset:auto; order:3; flex-basis:100%; width:100%; min-width:0; margin:0; padding:0; background:#20201f; border:1px solid #ffffff20; border-top:2px solid #ac8252; border-radius:0; color:#eee9e1; text-align:left; backdrop-filter:none; }
.mp-header > nav[data-mega-menu][data-mega-ready] { position:absolute; top:100%; left:0; right:0; width:100%; max-height:var(--mp-mega-available,calc(100dvh - 112px)); overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; scrollbar-width:thin; scrollbar-color:#8c7458 #20201f; box-shadow:0 28px 48px #0006; animation:mp-mega-reveal .16s ease-out; }
.mp-header > nav[data-mega-menu][hidden] { display:none!important; }
.mp-header nav[data-mega-menu] .mp-mega-inner { width:min(1520px,100%); margin:auto; padding:18px clamp(24px,4vw,64px); }
.mp-header nav[data-mega-menu] .mp-mega-intro { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-bottom:16px; border-bottom:1px solid #ffffff18; }
.mp-header nav[data-mega-menu] .mp-mega-eyebrow { display:block; color:#bd976d; font:11px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace; letter-spacing:.12em; }
.mp-header nav[data-mega-menu] .mp-mega-intro p { margin:7px 0 0; color:#ded6cb; font-size:18px; line-height:1.5; }
.mp-header nav[data-mega-menu] .mp-mega-top-actions { display:flex; align-items:center; gap:16px; }
.mp-header nav[data-mega-menu] .mp-mega-home { display:inline-flex; align-items:center; min-height:44px; padding:8px; white-space:nowrap; font-size:14px; color:#c8beb0; border:0; }
.mp-header nav[data-mega-menu] .mp-mega-close { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; min-width:44px; padding:9px 12px; font:inherit; font-size:13px; line-height:1.4; border:1px solid #ffffff2b; border-radius:5px; color:#ddd4c8; background:#ffffff03; }
.mp-header nav[data-mega-menu] .mp-mega-close:hover { border-color:#b9956c; color:#f5cc9c; }
.mp-header nav[data-mega-menu] .mp-mega-groups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; padding-top:18px; }
.mp-header nav[data-mega-menu] .mp-mega-group { min-width:0; padding:0; border:0; background:none; }
.mp-header nav[data-mega-menu] .mp-mega-group-heading { display:flex; align-items:center; gap:12px; min-height:36px; list-style:none; cursor:default; padding:0; }
.mp-header nav[data-mega-menu] .mp-mega-group-heading::-webkit-details-marker { display:none; }
.mp-header nav[data-mega-menu] .mp-mega-group-heading::after { content:none; }
.mp-header nav[data-mega-menu] .mp-mega-group-heading h2 { margin:0; color:#f0e8dd; font-size:20px; font-weight:600; line-height:1.4; letter-spacing:0; }
.mp-header nav[data-mega-menu] .mp-mega-group-number { color:#b38d5b; font:15px/1 ui-monospace,SFMono-Regular,Consolas,monospace; }
.mp-header nav[data-mega-menu] .mp-mega-group-toggle { display:none; margin-left:auto; color:#b89870; font-size:24px; font-weight:300; }
.mp-header nav[data-mega-menu] .mp-mega-group-intro { margin:6px 0 12px; color:#b3aca1; font-size:13px; line-height:1.6; }
.mp-header nav[data-mega-menu] .mp-mega-links { display:grid; gap:3px; }
.mp-header nav[data-mega-menu] a.mp-mega-link { display:block; min-height:56px; margin:0; padding:7px 11px; color:#e5dfd6; white-space:normal; overflow-wrap:anywhere; border:1px solid transparent; border-radius:5px; line-height:1.5; transition:background .14s ease,border-color .14s ease; }
.mp-header nav[data-mega-menu] a.mp-mega-link:hover { background:#b88e5820; border-color:#b88e582b; color:#ffe0ba; }
.mp-header nav[data-mega-menu] a.mp-mega-link[aria-current="page"] { color:#f0c494; background:#ba8d5520; border-color:#ba8d5540; }
.mp-header nav[data-mega-menu] .mp-mega-link-label { display:flex; align-items:center; justify-content:space-between; gap:14px; font-size:16px; font-weight:600; }
.mp-header nav[data-mega-menu] .mp-mega-link-arrow { font-size:13px; color:#a89478; font-weight:400; }
.mp-header nav[data-mega-menu] .mp-mega-link-description { display:block; margin-top:4px; color:#b5aea4; font-size:13px; font-weight:400; line-height:1.5; }
.mp-header nav[data-mega-menu] a.mp-mega-featured { min-height:68px; padding:10px 12px; margin-bottom:4px; background:linear-gradient(120deg,#b7905b1c,#b7905b08); border-color:#b995624d; }
.mp-header nav[data-mega-menu] a.mp-mega-featured .mp-mega-link-label { color:#f0c996; }
.mp-header nav[data-mega-menu] a.mp-mega-whitepaper { margin-top:5px; border-color:#b995623d; background:#b9956206; }
.mp-header nav[data-mega-menu] .mp-mega-secondary-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 8px; padding-top:10px; margin-top:7px; border-top:1px solid #ffffff14; }
.mp-header nav[data-mega-menu] a.mp-mega-secondary-link { display:flex; align-items:center; min-height:44px; padding:7px 10px; background:#ffffff03; border-color:#ffffff17; }
.mp-header nav[data-mega-menu] a.mp-mega-secondary-link .mp-mega-link-label { width:100%; gap:8px; font-size:14px; font-weight:500; }
.mp-header nav[data-mega-menu] a.mp-mega-link:is(.mp-mega-featured,.mp-mega-whitepaper,.mp-mega-secondary-link):hover { background:#b88e5820; border-color:#bb956366; }
.mp-header nav[data-mega-menu] a.mp-mega-link[aria-current="page"] { border-color:#ca9e67; }
.mp-header nav[data-mega-menu] .mp-mega-bottom { display:flex; flex-wrap:wrap; align-items:center; gap:12px 28px; margin-top:16px; padding-top:14px; border-top:1px solid #ffffff18; }
.mp-header nav[data-mega-menu] .mp-mega-bottom > a { display:inline-flex; flex-wrap:wrap; align-items:center; gap:4px 8px; min-height:44px; padding:8px 0; font-size:13px; line-height:1.5; color:#bdb4a7; white-space:normal; border:0; }
.mp-header nav[data-mega-menu] .mp-mega-bottom > a:hover { color:#f1c99b; }
.mp-header nav[data-mega-menu] .mp-mega-bottom > a span { color:#e0bc90; }
.mp-header nav[data-mega-menu] .mp-mega-bottom > a.mp-mega-contact { margin-left:auto; padding:10px 16px; min-height:46px; border:1px solid #c19359; border-radius:5px; background:#c1935912; color:#efd0a7; font-size:14px; }
.mp-header nav[data-mega-menu] :is(a,button,summary):focus-visible { outline:2px solid #e6b77f; outline-offset:3px; }
/* Body overflow would create a new scroll container and unpin the sticky header. */
html.mp-mega-open { overflow:hidden; overscroll-behavior:none; scrollbar-gutter:stable; }
@keyframes mp-mega-reveal { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:none; } }
@media(max-width:900px) {
 .mp-header nav[data-mega-menu] .mp-mega-inner { padding:20px 24px 24px; }
 .mp-header nav[data-mega-menu] .mp-mega-groups { grid-template-columns:minmax(0,1fr); gap:0; padding-top:10px; }
 .mp-header nav[data-mega-menu] .mp-mega-group { border-bottom:1px solid #ffffff18; }
 .mp-header nav[data-mega-menu] .mp-mega-group-heading { min-height:64px; padding:15px 0; cursor:pointer; }
 .mp-header nav[data-mega-menu] .mp-mega-group-heading h2 { font-size:20px; }
 .mp-header nav[data-mega-menu] .mp-mega-group-toggle { display:block; }
 .mp-header nav[data-mega-menu] .mp-mega-group[open] .mp-mega-group-toggle { transform:rotate(45deg); }
 .mp-header nav[data-mega-menu] .mp-mega-group-content { padding:0 0 18px 28px; }
 .mp-header nav[data-mega-menu] .mp-mega-group-intro { margin-top:0; }
 .mp-header nav[data-mega-menu] .mp-mega-bottom { margin-top:12px; padding-top:10px; gap:8px 20px; }
 .mp-header nav[data-mega-menu] .mp-mega-bottom > a.mp-mega-contact { margin-left:0; }
}
@media(min-width:901px) {
 .mp-header nav[data-mega-menu] .mp-mega-group + .mp-mega-group { border-left:1px solid #ffffff12; padding-left:24px; }
}
@media(max-width:600px) {
 .mp-header:has(> nav[data-mega-menu][data-mega-ready]) { flex-wrap:wrap; gap:12px; }
 .mp-header:has(> nav[data-mega-menu]) > .mp-header-actions { flex-basis:100%; width:100%; justify-content:space-between; }
 .mp-header:has(> nav[data-mega-menu]) > .mp-menu { min-width:78px; padding:9px 10px; font-size:14px; }
 .mp-header nav[data-mega-menu] .mp-mega-inner { padding:18px 20px 24px; }
 .mp-header nav[data-mega-menu] .mp-mega-intro { gap:12px; padding-bottom:16px; align-items:flex-start; }
 .mp-header nav[data-mega-menu] .mp-mega-intro p { font-size:16px; }
 .mp-header nav[data-mega-menu] .mp-mega-top-actions { gap:4px; }
 .mp-header nav[data-mega-menu] .mp-mega-close { padding:10px; }
 .mp-header nav[data-mega-menu] .mp-mega-close > span { display:none; }
 .mp-header nav[data-mega-menu] .mp-mega-eyebrow { font-size:10px; }
 .mp-header nav[data-mega-menu] .mp-mega-bottom { align-items:flex-start; flex-direction:column; }
}
@media(max-width:420px) {
 .mp-header nav[data-mega-menu] .mp-mega-secondary-links { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:360px) {
 .mp-header:has(> nav[data-mega-menu]) > .mp-brand img { width:128px; }
 html[lang="en-HK"] .mp-header:has(> nav[data-mega-menu]) > .mp-brand img { width:96px; }
}
@media(prefers-reduced-motion:reduce) {
 .mp-header > nav[data-mega-menu][data-mega-ready] { animation:none; }
 .mp-header:has(> nav[data-mega-menu]) > .mp-menu,
 .mp-header:has(> nav[data-mega-menu]) > .mp-menu::after,
 .mp-header nav[data-mega-menu] a.mp-mega-link,
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a,
 .mp-header:has(> nav[data-mega-menu]) > nav.mp-header-shortcuts a::after { transition:none; }
}
@media print {
 .mp-header > nav[data-mega-menu], .mp-header > nav.mp-header-shortcuts, .mp-header:has(> nav[data-mega-menu]) > .mp-menu { display:none!important; }
}

/* Reserve the enhanced header's layout before deferred scripts run.
   Without scripting, the ordinary navigation links stay in document flow. */
@media(scripting:enabled) {
 .mp-header:has(> nav[data-mega-menu]:not([data-mega-ready])) { position:sticky; flex-wrap:nowrap; }
 .mp-header > nav[data-mega-menu]:not([data-mega-ready]) { display:none; }
 .mp-site > .mp-threat-ticker + .mp-header:has(> nav[data-mega-menu]) { top:var(--mp-ticker-height); }
}
@media(scripting:enabled) and (max-width:600px) {
 .mp-header:has(> nav[data-mega-menu]:not([data-mega-ready])) { flex-wrap:wrap; gap:12px; }
}
@media(scripting:none) {
 .mp-header:has(> nav[data-mega-menu]) > .mp-menu { display:none; }
}

/* Keep the logo and menu pinned; reveal language and enquiry actions on open. */
@media screen and (max-width:760px), screen and (max-width:1100px) and (max-height:500px) {
 html.mp-mobile-compact .mp-site > .mp-threat-ticker { transform:translateY(-100%); visibility:hidden; pointer-events:none; }
 html.mp-mobile-compact .mp-site > .mp-header:has(> nav[data-mega-ready]) { top:0; padding-block:6px; min-height:58px; }
 html.mp-mobile-compact:not(.mp-mega-open) .mp-site > .mp-header > .mp-header-actions { display:none; }
 html.mp-mobile-compact .mp-site > .mp-header > .mp-brand img { width:128px; }
 html[lang="en-HK"].mp-mobile-compact .mp-site > .mp-header > .mp-brand img { width:96px; }
}
/* Keep phone actions easy to tap without increasing the two-row header. */
@media(max-width:760px){
 .mp-site .mp-header .mp-language-switch .mp-lang{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px;font-size:13px}
 .mp-site .mp-header .mp-header-cta{display:inline-flex;align-items:center;min-height:44px}
 .mp-site .mp-header>.mp-brand{display:flex;align-items:center;min-height:44px}
}
@media(max-width:600px){
 .mp-site .mp-header:has(> nav[data-mega-menu]){padding-block:8px;row-gap:4px}
}
@media(prefers-reduced-motion:reduce) {
 .mp-site > .mp-threat-ticker,
 .mp-site > .mp-header:has(> nav[data-mega-ready]) { transition:none; }
}
