/* Always Encrypted — shared header, mega menus and mobile drawer.
   One file for every page; markup is built by /assets/ae-nav.js.
   Colours are hard values (not page tokens) so the header looks the same on
   pages whose own :root differs. */
#ae-head{position:sticky;top:0;z-index:1500;font-family:"IBM Plex Sans",system-ui,sans-serif;color:#F2EEE4;-webkit-font-smoothing:antialiased}
#ae-head *,#ae-head *::before,#ae-head *::after,.aed *,.aed *::before,.aed *::after{box-sizing:border-box}
#ae-head svg,.aed svg{display:inline-block;max-width:none}
.aeh-bar{position:relative;background:rgba(10,10,12,.94);-webkit-backdrop-filter:saturate(140%) blur(14px);backdrop-filter:saturate(140%) blur(14px)}
/* gold hairline that brightens toward the centre */
.aeh-bar::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,rgba(201,162,75,0) 0%,rgba(201,162,75,.55) 18%,#D4AF6A 50%,rgba(201,162,75,.55) 82%,rgba(201,162,75,0) 100%)}
.aeh-in{max-width:1320px;margin:0 auto;height:68px;padding:0 24px;display:flex;align-items:center;gap:18px}
.aeh-brand{flex:0 0 auto;display:flex;align-items:center;gap:11px;color:#F2EEE4;text-decoration:none;font-family:"Newsreader",Georgia,serif;font-size:19px;letter-spacing:.01em;white-space:nowrap}
.aeh-brand img{width:30px;height:30px;object-fit:contain}
.aeh-brand:hover{color:#fff}
.aeh-nav{flex:1 1 auto;min-width:0;align-self:stretch;display:flex;justify-content:center}
.aeh-top{list-style:none;margin:0;padding:0;display:flex;align-items:stretch;gap:2px}
.aeh-li{display:flex;align-items:center}
.aeh-trig{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 13px;border:0;border-radius:999px;background:none;color:#cfc8b8;font:600 12px/1 "IBM Plex Sans",system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:color .18s,background-color .18s}
.aeh-trig .aeh-ti{width:17px;height:17px;color:#C9A24B;transition:color .18s}
.aeh-trig .aeh-ti svg,.aeh-ic svg,.aed svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.aeh-car{width:10px;height:10px;opacity:.7;transition:transform .22s}
.aeh-car svg{width:10px;height:10px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.aeh-trig:hover,.aeh-trig[aria-expanded=true]{color:#F2EEE4;background:rgba(201,162,75,.10)}
.aeh-trig:hover .aeh-ti,.aeh-trig[aria-expanded=true] .aeh-ti{color:#D4AF6A}
.aeh-trig[aria-expanded=true] .aeh-car{transform:rotate(180deg)}
.aeh-li.is-cur>.aeh-trig{color:#F2EEE4;position:relative}
.aeh-li.is-cur>.aeh-trig::after{content:"";position:absolute;left:50%;bottom:4px;width:18px;height:2px;margin-left:-9px;border-radius:2px;background:#C9A24B}
.aeh-trig:focus-visible,.aeh-cta:focus-visible,.aeh-brand:focus-visible,.aeh-burger:focus-visible,.aeh-panel a:focus-visible,.aed a:focus-visible,.aed button:focus-visible{outline:2px solid #D4AF6A;outline-offset:3px}
/* live dot */
.ae-live{display:inline-flex;align-items:center;gap:6px;font:500 9.5px/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.16em;color:#6FE3A8;padding:3px 7px 3px 6px;border:1px solid rgba(111,227,168,.38);border-radius:999px;background:rgba(111,227,168,.07)}
.ae-live i{position:relative;width:6px;height:6px;border-radius:50%;background:#6FE3A8;box-shadow:0 0 8px #6FE3A8}
.ae-live i::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid #6FE3A8;animation:aeLive 1.8s ease-out infinite}
@keyframes aeLive{0%{transform:scale(.4);opacity:.9}100%{transform:scale(1.8);opacity:0}}
/* CTAs */
.aeh-util{flex:0 0 auto;display:flex;align-items:center;gap:10px}
.aeh-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border-radius:999px;font:600 12px/1 "IBM Plex Sans",system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:box-shadow .25s,transform .25s,background-color .25s,color .25s}
.aeh-cta svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.aeh-cta.ghost{color:#D4AF6A;border:1px solid rgba(212,175,106,.6);box-shadow:0 0 0 0 rgba(212,175,106,0),inset 0 0 12px rgba(212,175,106,.06)}
.aeh-cta.ghost:hover{color:#F2EEE4;border-color:#D4AF6A;box-shadow:0 0 18px rgba(212,175,106,.28),inset 0 0 14px rgba(212,175,106,.12)}
.aeh-cta.solid{color:#14110b;background:linear-gradient(135deg,#D9B873 0%,#C9A24B 55%,#B08A38 100%);box-shadow:0 0 0 1px rgba(242,214,150,.35) inset,0 6px 22px rgba(201,162,75,.32),0 0 32px rgba(201,162,75,.18)}
.aeh-cta.solid:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(255,232,180,.55) inset,0 8px 28px rgba(201,162,75,.45),0 0 44px rgba(201,162,75,.28)}
.aeh-burger{display:none;margin-left:auto;width:46px;height:46px;border-radius:12px;border:1px solid rgba(212,175,106,.35);background:rgba(201,162,75,.06);cursor:pointer;position:relative;padding:0}
.aeh-burger span{position:absolute;left:13px;right:13px;height:1.5px;background:#D4AF6A;border-radius:2px}
.aeh-burger span:nth-child(1){top:16px}.aeh-burger span:nth-child(2){top:22px;right:19px}.aeh-burger span:nth-child(3){top:28px}

/* mega panels */
.aeh-panel{position:absolute;left:0;right:0;top:100%;padding:12px 24px 0;visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .2s ease,transform .24s cubic-bezier(.2,.7,.2,1),visibility 0s linear .24s}
.aeh-panel.open{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition:opacity .2s ease,transform .24s cubic-bezier(.2,.7,.2,1)}
.aeh-pin{max-width:1220px;margin:0 auto;display:grid;grid-template-columns:268px minmax(0,1fr) 300px;gap:10px;padding:10px;border-radius:20px;background:#101014;border:1px solid rgba(212,175,106,.22);box-shadow:0 34px 80px rgba(0,0,0,.65),0 0 0 1px rgba(0,0,0,.6)}
.aeh-intro{position:relative;overflow:hidden;border-radius:14px;padding:24px 22px 20px;display:flex;flex-direction:column;background:#0c0c10;background-image:linear-gradient(rgba(212,175,106,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,106,.07) 1px,transparent 1px);background-size:22px 22px;border:1px solid rgba(212,175,106,.12)}
.aeh-eb{align-self:flex-start;font:500 10.5px/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase;color:#6FE3A8;padding:5px 8px;border:1px solid rgba(111,227,168,.3);border-radius:4px;margin-bottom:16px}
.aeh-pt{font:400 25px/1.18 "Newsreader",Georgia,serif;color:#F2EEE4;margin:0 0 10px;letter-spacing:-.005em}
.aeh-px{font-size:14px;line-height:1.6;color:#b5aea0;margin:0 0 18px;flex:1}
.aeh-tl{font-size:13.5px;font-weight:600;color:#D4AF6A;text-decoration:none}
.aeh-tl:hover{color:#F2EEE4}
.aeh-links{list-style:none;margin:0;padding:8px 4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 6px;align-content:start}
.aeh-links a{display:flex;gap:13px;align-items:flex-start;padding:12px;border-radius:12px;color:inherit;text-decoration:none;transition:background-color .15s}
.aeh-links a:hover{background:rgba(212,175,106,.07)}
.aeh-links a:hover .aeh-ic{border-color:rgba(212,175,106,.55);color:#D4AF6A}
.aeh-links a[aria-current] strong{color:#D4AF6A}
.aeh-ic{flex:0 0 40px;height:40px;border-radius:10px;padding:9px;color:#6FE3A8;background:rgba(111,227,168,.06);border:1px solid rgba(111,227,168,.18);transition:color .15s,border-color .15s}
.aeh-links strong{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:500;color:#F2EEE4;line-height:1.3}
.aeh-links small{display:block;font-size:12.5px;line-height:1.45;color:#8f897c;margin-top:3px}
.aeh-ext{font:400 13px/1 "IBM Plex Sans",sans-serif;color:#8f897c}
.aeh-links a:hover .aeh-ext{color:#D4AF6A}
.aeh-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.aeh-feat{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:264px;border-radius:14px;overflow:hidden;background:#07080a;text-decoration:none;color:#F2EEE4;border:1px solid rgba(212,175,106,.16)}
.aeh-feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78;transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .4s}
.aeh-feat:hover img{transform:scale(1.04);opacity:.9}
.aeh-feat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,8,10,0) 30%,rgba(7,8,10,.95) 100%)}
.aeh-fc{position:relative;z-index:1;padding:18px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.aeh-chip{font:500 10px/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:#14110b;background:#C9A24B;border-radius:3px;padding:4px 7px}
.aeh-ft{font:400 19px/1.25 "Newsreader",Georgia,serif}
.aeh-fg{font-size:13px;font-weight:600;color:#D4AF6A}

/* noscript fallback */
.aeh-ns{display:flex;flex-wrap:wrap;gap:6px 16px;padding:12px 18px;background:#0A0A0C;border-bottom:1px solid rgba(212,175,106,.4)}
.aeh-ns a{color:#D4AF6A;font:500 13px/1.6 "IBM Plex Sans",sans-serif}

/* tighter desktop widths */
@media (max-width:1240px){.aeh-in{gap:12px;padding:0 18px}.aeh-trig{padding:0 10px;letter-spacing:.11em}.aeh-cta{padding:0 14px}.aeh-pin{grid-template-columns:236px minmax(0,1fr) 260px}}
@media (max-width:1180px){.aeh-trig .aeh-ti{display:none}#ae-head .aeh-brand span{display:none}.aeh-cta.ghost{width:42px;padding:0}.aeh-cta.ghost .aeh-cl{display:none}}
@media (max-width:1080px){.aeh-in{gap:8px}.aeh-trig{padding:0 9px;letter-spacing:.08em;gap:6px}.aeh-cta.solid{padding:0 14px;letter-spacing:.08em}}

/* mobile: <=991px */
@media (max-width:991px){
 .aeh-in{height:62px;padding:0 12px 0 16px}
 .aeh-nav,.aeh-util{display:none}
 .aeh-burger{display:block}
 .aeh-panel{display:none}
 #ae-head .aeh-brand span{display:inline}
}
@media (max-width:360px){.aeh-brand{font-size:17px}.aeh-brand img{width:26px;height:26px}}

/* drawer */
.aed{position:fixed;inset:0;z-index:2147482950;visibility:hidden;pointer-events:none}
.aed.open{visibility:visible;pointer-events:auto}
.aed-scrim{position:absolute;inset:0;background:rgba(4,4,6,.66);opacity:0;transition:opacity .3s ease}
.aed.open .aed-scrim{opacity:1}
.aed-sheet{position:absolute;top:0;right:0;bottom:0;width:min(440px,100%);display:flex;flex-direction:column;background:#0A0A0C;background-image:radial-gradient(120% 60% at 100% 0%,rgba(201,162,75,.14),rgba(201,162,75,0) 60%);border-left:1px solid rgba(212,175,106,.3);color:#F2EEE4;font-family:"IBM Plex Sans",system-ui,sans-serif;transform:translateX(100%);transition:transform .34s cubic-bezier(.2,.7,.2,1);overflow:hidden}
.aed.open .aed-sheet{transform:none}
.aed-top{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;height:62px;padding:0 12px 0 16px;border-bottom:1px solid rgba(212,175,106,.22)}
.aed-x{width:46px;height:46px;border-radius:12px;border:1px solid rgba(212,175,106,.35);background:rgba(201,162,75,.06);cursor:pointer;position:relative;padding:0}
.aed-x i{position:absolute;left:14px;right:14px;top:22px;height:1.5px;background:#D4AF6A;border-radius:2px}
.aed-x i:nth-child(1){transform:rotate(45deg)}.aed-x i:nth-child(2){transform:rotate(-45deg)}
.aed-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px 16px 28px}
.aed-k{font:500 10.5px/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#8f897c;margin:0 0 10px;display:flex;align-items:center;gap:10px}
.aed-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.aed-tile{position:relative;display:flex;flex-direction:column;gap:10px;min-height:112px;padding:12px 11px;border-radius:14px;text-decoration:none;color:#F2EEE4;background:linear-gradient(180deg,rgba(111,227,168,.07),rgba(111,227,168,.02));border:1px solid rgba(111,227,168,.26);overflow:hidden}
.aed-tile .aed-ti{width:30px;height:30px;color:#6FE3A8}
.aed-tile strong{font-size:14px;font-weight:600;line-height:1.25}
.aed-tile small{font:500 9.5px/1.3 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:#8fcfb2}
.aed-tile .ae-live{position:absolute;top:10px;right:9px;padding:3px 5px}
.aed-tile:active{background:rgba(111,227,168,.12)}
.aed-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding:12px 14px;border-radius:12px;border:1px solid rgba(212,175,106,.22);color:#F2EEE4;text-decoration:none;font-size:14.5px}
.aed-nav span{display:flex;align-items:center;gap:10px}
.aed-nav svg{width:18px;height:18px;color:#D4AF6A}
.aed-grp{margin-top:18px;border-top:1px solid rgba(212,175,106,.18)}
.aed-row{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:56px;padding:0 2px;border:0;background:none;color:#F2EEE4;font:400 23px/1.1 "Newsreader",Georgia,serif;text-align:left;cursor:pointer}
.aed-row em{font:500 10.5px/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.16em;color:#C9A24B;font-style:normal;margin-right:12px}
.aed-row b{flex:0 0 32px;height:32px;border-radius:50%;border:1px solid rgba(212,175,106,.4);position:relative}
.aed-row b::before,.aed-row b::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:1.5px;background:#D4AF6A;transform:translate(-50%,-50%);transition:transform .25s}
.aed-row b::after{transform:translate(-50%,-50%) rotate(90deg)}
.aed-row[aria-expanded=true] b::after{transform:translate(-50%,-50%) rotate(0)}
.aed-sub{list-style:none;margin:0;padding:0 0 10px;display:grid;gap:2px}
.aed-sub[hidden]{display:none}
.aed-sub a{display:flex;align-items:center;gap:12px;min-height:48px;padding:6px 10px;border-radius:10px;color:#dcd5c6;text-decoration:none;font-size:15.5px}
.aed-sub a:active,.aed-sub a:hover{background:rgba(212,175,106,.08);color:#F2EEE4}
.aed-sub a[aria-current]{color:#D4AF6A}
.aed-sub .aeh-ic{flex:0 0 34px;height:34px;padding:7px;border-radius:9px}
.aed-sub small{display:block;font-size:12px;color:#8f897c;margin-top:1px}
.aed-ctas{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
.aed-ctas .aeh-cta{height:52px;padding:0 10px;font-size:12px}
.aed-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;padding-top:16px;border-top:1px solid rgba(212,175,106,.18);font-size:13px;color:#8f897c}
.aed-foot a{color:#D4AF6A;text-decoration:none;overflow-wrap:anywhere}
.aed-lang{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:999px;border:1px solid rgba(212,175,106,.5);background:rgba(16,16,20,.9);color:#D4AF6A;font:600 13px/1 "IBM Plex Sans",sans-serif;cursor:pointer}
.aed-lang svg{width:15px;height:15px}
@media (max-width:359px){.aed-tiles{grid-template-columns:1fr}.aed-tile{min-height:0;flex-direction:row;align-items:center}.aed-tile strong{margin-top:0}.aed-tile .ae-live{position:static;margin-left:auto}.aed-ctas{grid-template-columns:1fr}}
html.aed-lock,html.aed-lock body{overflow:hidden}

@media (prefers-reduced-motion:reduce){
 #ae-head *,#ae-head *::before,#ae-head *::after,.aed,.aed *,.aed *::before,.aed *::after{transition:none!important;animation:none!important}
 .aeh-feat:hover img{transform:none}
}

/* site-wide mobile guards (zero specificity via :where, so every page rule still wins) */
:where(img,video,canvas,iframe,svg){max-width:100%}
:where(img,video){height:auto}
:where(pre,code){white-space:pre-wrap;overflow-wrap:anywhere}
:where(table){max-width:100%}
:where(td,th,p,li,h1,h2,h3,a){overflow-wrap:break-word}
:where(main,section,footer){overflow-x:clip}
#aeLangChip{max-width:calc(100vw - 32px)}
#aeLangMenu{max-width:calc(100vw - 32px)}
