/* First-party controls. Browser zoom and operating-system colours remain usable. */
.ig-a11y-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:9px 11px;border:1px solid #d48a36;border-radius:999px;background:#fff8ed;color:#824207;font:600 12px/1.4 system-ui,-apple-system,"Segoe UI","Noto Sans",sans-serif;white-space:nowrap;flex-shrink:0;cursor:pointer}
.ig-a11y-trigger[hidden],.ig-a11y-active-dot[hidden]{display:none!important}
.ig-a11y-trigger:hover{background:#ffebcf;border-color:#a85b0b;color:#703606}
.ig-a11y-trigger>svg{flex-shrink:0}
.ig-a11y-active-dot{position:absolute;top:1px;right:2px;width:9px;height:9px;border-radius:50%;background:#934a08;border:2px solid #fff}
html.ig-a11y-open{overflow:hidden;scrollbar-gutter:stable}
.ig-a11y-panel{position:fixed;inset:0 0 0 auto;margin:0;width:min(450px,100%);max-width:100%;height:100%;height:100dvh;max-height:100dvh;padding:0;border:0;border-left:1px solid #d7dce1;border-radius:0;background:#fff;color:#1c2531;overflow:auto;overscroll-behavior:contain;box-shadow:-15px 0 50px #192b2420;font:16px/1.5 system-ui,-apple-system,"Segoe UI","Noto Sans TC","PingFang TC",sans-serif;text-align:left;letter-spacing:normal;word-spacing:normal}
.ig-a11y-panel:not([open]){display:none}
.ig-a11y-panel::backdrop{background:#10202c99}
.ig-a11y-panel *{box-sizing:border-box}
.ig-a11y-panel button,.ig-a11y-panel input,.ig-a11y-panel select{font-family:inherit;cursor:pointer}
.ig-a11y-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 24px;background:#fff6e9;border-bottom:1px solid #d7dce1;font-size:13px;font-weight:650}
.ig-a11y-close{display:inline-flex;align-items:center;justify-content:center;width:44px;min-height:44px;padding:0;flex-shrink:0;border:1px solid #c6ccd3;border-radius:50%;background:#fff;color:#1c2531}
.ig-a11y-body{padding:25px 24px 30px}
.ig-a11y-panel .ig-a11y-body h2{margin:0 0 12px;font-size:28px!important;line-height:1.3;letter-spacing:-.02em;overflow-wrap:anywhere}
.ig-a11y-panel h2::after{content:none!important;display:none!important}
.ig-a11y-body>p{margin:0 0 20px;font-size:15px;line-height:1.65}
.ig-a11y-panel .ig-a11y-preset{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border:1px solid #924606;border-radius:8px;background:#924606;color:#fff;font-size:15px;font-weight:600;line-height:1.45;text-align:left}
.ig-a11y-body .ig-a11y-hint{margin:10px 0 24px;font-size:13px;line-height:1.65}
.ig-a11y-size{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #d7dce1;padding:22px 0;font-size:15px;font-weight:600}
.ig-a11y-size select{width:auto;min-width:105px;min-height:44px;padding:9px 12px;border:1px solid #697584;border-radius:6px;background:#fff;color:#1c2531;font-size:16px}
.ig-a11y-colours{min-width:0;margin:0 0 24px;padding:0;border:0}
.ig-a11y-colours legend{margin-bottom:12px;font-size:15px;font-weight:600}
.ig-a11y-colours>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ig-a11y-colour-option{display:flex;align-items:center;gap:7px;min-height:54px;padding:10px 8px;border:1px solid #bfc7d1;border-radius:8px;cursor:pointer;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.ig-a11y-colour-option:has(input:checked){border:2px solid #924606;padding:9px 7px;background:#fff6e9}
.ig-a11y-panel input{accent-color:#924606;flex-shrink:0;width:18px;height:18px;margin:0;padding:0}
.ig-a11y-switch{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:58px;padding:15px 0;border-top:1px solid #d7dce1;font-size:15px;line-height:1.5;cursor:pointer}
.ig-a11y-switch input{width:24px;height:24px}
.ig-a11y-switch:has(input:checked)>span{font-weight:650}
.ig-a11y-switch:has(input:disabled){cursor:default}
.ig-a11y-switch input:disabled{cursor:default}
.ig-a11y-body .ig-a11y-privacy{padding-top:22px;border-top:1px solid #d7dce1;margin-bottom:12px;font-size:13px}
.ig-a11y-body .ig-a11y-status{margin:0 0 15px;color:#824207;font-size:13px}
.ig-a11y-status:empty{display:none}
.ig-a11y-actions{display:flex;flex-wrap:wrap;gap:10px}
.ig-a11y-actions button{flex:1;min-height:46px;padding:10px 14px;border:1px solid #697584;border-radius:7px;background:#fff;color:#1c2531;font-size:14px;line-height:1.5}
.ig-a11y-actions .ig-a11y-done{background:#924606;border-color:#924606;color:#fff}
.ig-a11y-panel .ig-a11y-help{display:inline-block;margin-top:20px;color:#824207;font-size:13px;line-height:1.65;text-decoration:underline;text-underline-offset:4px}
html[data-ig-a11y-contrast] :focus-visible{outline:3px solid #924606;outline-offset:4px}
.ig-a11y-panel :focus-visible{outline-offset:3px}

/* Position the control after the main navigation, at the far right on desktop. */
@media(min-width:980px){
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head-row>.site-header-bar,
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head-row .site-header-end{display:contents}
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head-row>.brand{order:0}
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head-row>.site-header-bar>.brand{order:0}
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head-row>.site-nav{order:1;margin-left:auto;min-width:0}
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head-row .ig-a11y-trigger{order:2}
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head-row{gap:16px}
}
@media(min-width:980px) and (max-width:1279px){
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head-row{gap:8px}
 .site-head .ig-a11y-trigger>span{display:none}
 .site-head .ig-a11y-trigger{padding:9px}
}
@media(max-width:600px){.ig-a11y-trigger>span{display:none}.ig-a11y-trigger{padding:9px}.site-head .site-header-end{gap:6px}.site-head .site-header-bar{gap:8px}.offer-header .topbar{gap:8px 16px}}
@media(max-width:379px){
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head .brand img{width:90px}
 body:is(.site-hk-zh,.site-hk-en,.site-hk-cn) .site-head .header-mobile-cta{max-width:min(100px,calc(100vw - 230px));min-height:44px;padding:7px 8px;font-size:.72rem;white-space:normal;text-align:center;overflow:visible}
}
@media(max-width:430px){.ig-a11y-body{padding:23px 20px}.ig-a11y-heading{padding:12px 20px}.ig-a11y-colours>div{grid-template-columns:1fr}.ig-a11y-colour-option{min-height:44px}.ig-a11y-actions{flex-direction:column}}
.offer-footer .languages{display:flex;flex-wrap:wrap;align-items:center;border-left:0;padding-left:0;gap:14px;margin-block:24px}
.offer-footer .languages a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid currentColor;border-radius:6px}

/* Computed base sizes allow both fixed-pixel and relative text to reflow. */
html[data-ig-a11y-text] :is(main,main *,.site-footer,.site-footer *,.offer-footer,.offer-footer *):not(svg):not(svg *){font-size:calc(var(--ig-a11y-font-base,16px) * var(--ig-a11y-text-factor,1))!important}
html:is([data-ig-a11y-text],[data-ig-a11y-spacing]) :is(main,.site-footer,.offer-footer){overflow-wrap:anywhere}
html:is([data-ig-a11y-text],[data-ig-a11y-spacing]) :is(.hero-grid,.page-hero-grid,.offer-hero.article-hero,.offer-detail-grid,.first-step){grid-template-columns:minmax(0,1fr)!important}
html:is([data-ig-a11y-text],[data-ig-a11y-spacing]) :is(.hero-copy,.page-hero-copy,.card,.section-card,.footer-panel,.field){min-width:0;max-width:100%}
html:is([data-ig-a11y-text],[data-ig-a11y-spacing]) :is(.hero-actions,.actions,.btn-row,.footer-meta){flex-wrap:wrap}
html:is([data-ig-a11y-text],[data-ig-a11y-spacing]) :is(main,.site-footer,.offer-footer) :is(a,button,label){white-space:normal}
html[data-ig-a11y-text] :is(.offer-cards,.ig-platform-list){grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
@media(max-width:760px){html:is([data-ig-a11y-text],[data-ig-a11y-spacing]) :is(.footer-main-panels,.form-grid,.card-grid,.section-grid){grid-template-columns:minmax(0,1fr)!important}}
html[data-ig-a11y-spacing] :is(main,.site-footer,.offer-footer) :is(p,li,a,button,label,input,select,textarea,summary,h1,h2,h3,h4,legend,td,th){letter-spacing:.12em!important;word-spacing:.16em!important}
html[data-ig-a11y-lines] :is(main,.site-footer,.offer-footer) :is(p,li,td,th,label,summary,button,input,select,textarea){line-height:1.85!important}
html[data-ig-a11y-lines] :is(main,.site-footer,.offer-footer) p{margin-bottom:2em!important}
html[data-ig-a11y-lines] :is(main,.site-footer,.offer-footer) :is(h1,h2,h3,h4){line-height:1.5!important}
html[data-ig-a11y-links] a{text-decoration:underline!important;text-underline-offset:.2em;text-decoration-thickness:max(1px,.07em)}
html[data-ig-a11y-motion],html[data-ig-a11y-motion] *,html[data-ig-a11y-motion] *::before,html[data-ig-a11y-motion] *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){html,*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Hide only deliberate decorative assets. Content photos and client logos remain. */
html[data-ig-a11y-images] :is(.hero-art,.home-capability-visual,.offer-art,.offer-visual,.hero-visual--ai-economics-home,.ai-outcome-card__media,.ai-economics-split__media,.editorial-figure:has(img[src*="/assets/img/editorial/"]),[data-ig-a11y-decorative],img[aria-hidden="true"]){display:none!important}
html[data-ig-a11y-images] :is(.offer-hero,.hero-grid):has(.hero-art,.offer-art,.offer-visual,.hero-visual--ai-economics-home){grid-template-columns:minmax(0,1fr)!important}
html[data-ig-a11y-pointer],html[data-ig-a11y-pointer] *{cursor:url("/assets/accessibility-pointer.svg") 4 3,auto!important}
html[data-ig-a11y-pointer] :is(input:not([type="checkbox"]):not([type="radio"]),textarea,[contenteditable="true"]){cursor:text!important}

html[data-ig-a11y-contrast="light"]{--ig-a11y-bg:#fff;--ig-a11y-fg:#121923;--ig-a11y-link:#733300;--ig-a11y-border:#536172;color-scheme:light}
html[data-ig-a11y-contrast="dark"]{--ig-a11y-bg:#111a24;--ig-a11y-fg:#f6f8fb;--ig-a11y-link:#ffd19a;--ig-a11y-border:#a5b5c5;color-scheme:dark}
/* The unused ID branch supplies enough specificity to override legacy page-level
   !important themes. Actual activation always uses the validated root attributes. */
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]){--text:var(--ig-a11y-fg);--ink:var(--ig-a11y-fg);--muted:var(--ig-a11y-fg);--surface:var(--ig-a11y-bg);--bg:var(--ig-a11y-bg);--paper:var(--ig-a11y-bg);--line:var(--ig-a11y-border);--brand:var(--ig-a11y-link);--brand-dark:var(--ig-a11y-link);--orange:var(--ig-a11y-link);--footer-bg:var(--ig-a11y-bg);--footer-text:var(--ig-a11y-fg)}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body{background:var(--ig-a11y-bg)!important;color:var(--ig-a11y-fg)!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body *:not(svg):not(svg *){color:var(--ig-a11y-fg)!important;background-color:transparent!important;background-image:none!important;border-color:var(--ig-a11y-border)!important;text-shadow:none!important;box-shadow:none!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body *::before,
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body *::after{color:var(--ig-a11y-fg)!important;background-color:transparent!important;background-image:none!important;border-color:var(--ig-a11y-border)!important;text-shadow:none!important;box-shadow:none!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body :is(.site-head,.site-header-bar,.site-nav,.subnav-panel,.offer-header,.ig-a11y-panel,.ig-a11y-heading,.ig-a11y-trigger,.whatsapp-float,select,option,input,textarea):not(svg):not(svg *){background-color:var(--ig-a11y-bg)!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body a:not(svg):not(svg *),
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body a:not(svg):not(svg *) *:not(svg):not(svg *){color:var(--ig-a11y-link)!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body :is(button,.btn,.button,.nav-cta):not(svg):not(svg *){border:1px solid var(--ig-a11y-fg)!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body .menu-toggle span:not(.sr-only):not(svg):not(svg *){background-color:var(--ig-a11y-fg)!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body .ig-a11y-active-dot:not(svg):not(svg *){background-color:var(--ig-a11y-link)!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) .ig-a11y-colour-option:has(input:checked){outline:2px solid var(--ig-a11y-link)}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) :focus-visible{outline-color:var(--ig-a11y-link)!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="light"],[data-ig-a11y-contrast="dark"]) body :is(.ig-a11y-trigger,.ig-a11y-close,.nav-caret,.contact-icon-svg):not(svg *){color:var(--ig-a11y-fg)!important}
html:is(#ig-a11y-contrast-root,[data-ig-a11y-contrast="dark"])[data-ig-a11y-contrast="dark"] body :is(.brand img,.logo-card img):not(svg):not(svg *){background-color:#fff!important;border-radius:4px}
@media(forced-colors:active){.ig-a11y-panel{border:1px solid CanvasText}.ig-a11y-colour-option:has(input:checked){outline:2px solid Highlight}.ig-a11y-active-dot{background:Highlight}html[data-ig-a11y-contrast]{--ig-a11y-bg:Canvas;--ig-a11y-fg:CanvasText;--ig-a11y-link:LinkText;--ig-a11y-border:CanvasText}}
@media print{.ig-a11y-trigger,.ig-a11y-panel{display:none!important}html.ig-a11y-open{overflow:visible}}
