/* XiaoBai Theme 1.1.0 enhancements */
.theme-toggle{width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.04);color:var(--text);display:grid;place-items:center;cursor:pointer;font-size:20px;transition:.25s}.theme-toggle:hover{border-color:rgba(99,231,255,.45);transform:translateY(-2px)}
.planet{width:164px;height:164px;border-radius:38px;text-align:center;overflow:hidden}.planet img{width:100%;height:100%;object-fit:cover}.planet b{font-size:29px;line-height:1.1;letter-spacing:-1px}.planet small{margin-top:9px}.chip{padding:9px 12px;font-size:11px;white-space:nowrap;will-change:transform;transform:translateZ(0)}.c1{top:34px;left:52px}.c2{top:82px;right:-4px}.c3{bottom:78px;left:-8px}.c4{bottom:32px;right:28px}.c5{top:158px;left:-28px;animation-delay:-.7s}.c6{top:198px;right:-38px;animation-delay:-1.7s}.c7{bottom:160px;left:-32px;animation-delay:-2.7s}.c8{bottom:126px;right:-38px;animation-delay:-3.7s}.d5{top:50%;right:-5px}.d6{bottom:90px;left:20px}.method-intro{max-width:560px!important;line-height:1.9;text-wrap:pretty}.police-record{display:inline-flex!important;visibility:visible!important;opacity:1!important}.police-record img{display:block!important;width:18px!important;height:18px!important;min-width:18px;object-fit:contain}.icp-record,.police-record{min-height:24px}
@media(prefers-reduced-motion:reduce){.orbit{animation:spin 45s linear infinite!important}.orbit.two{animation-direction:reverse!important}.chip{animation:float 9s ease-in-out infinite!important}}
html[data-theme="light"]{--bg:#f4f5f7;--panel:#fff;--text:#10131a;--muted:#5f6878;--line:rgba(9,15,28,.13);--cyan:#087f9c;--blue:#315fda;--purple:#7047cf;--green:#137a46}html[data-theme="light"] body{background:#f4f5f7;color:var(--text)}html[data-theme="light"] body:before{background:radial-gradient(800px 500px at 12% 5%,rgba(49,95,218,.1),transparent 60%),radial-gradient(650px 500px at 92% 18%,rgba(112,71,207,.08),transparent 58%)}html[data-theme="light"] body:after{background-image:linear-gradient(rgba(9,15,28,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(9,15,28,.045) 1px,transparent 1px)}html[data-theme="light"] .nav{background:rgba(250,251,253,.86)}html[data-theme="light"] .links,html[data-theme="light"] .proof,html[data-theme="light"] .platform-row,html[data-theme="light"] .foot-desc,html[data-theme="light"] .foot-col a,html[data-theme="light"] .copyright{color:#5e6878}html[data-theme="light"] .btn,html[data-theme="light"] .theme-toggle,html[data-theme="light"] .card,html[data-theme="light"] .post-card,html[data-theme="light"] .article-row,html[data-theme="light"] .path article{background:rgba(255,255,255,.78);color:#10131a}html[data-theme="light"] .btn.primary{color:#061018}html[data-theme="light"] .planet{background:linear-gradient(145deg,rgba(49,95,218,.1),rgba(112,71,207,.04)),#fff}html[data-theme="light"] .chip{background:rgba(255,255,255,.94);color:#172033;box-shadow:0 12px 35px rgba(30,44,70,.12)}html[data-theme="light"] .mobile-nav.open{background:#fff}html[data-theme="light"] .footer{background:rgba(255,255,255,.48)}
@media(max-width:620px){.theme-toggle{width:38px;height:38px}.hero-visual{height:430px;margin-top:10px}.orbit{width:310px;height:310px;animation:spin 28s linear infinite!important;animation-play-state:running!important;transform:translateZ(0)}.orbit.two{width:230px;height:230px;animation:spin 23s linear infinite reverse!important}.planet{width:142px;height:142px;border-radius:32px}.planet b{font-size:24px}.planet small{font-size:11px}.chip{font-size:9px;padding:7px 9px;animation:float 7s ease-in-out infinite!important;animation-play-state:running!important}.c1{top:38px;left:18px}.c2{top:78px;right:2px}.c3{bottom:72px;left:0}.c4{bottom:32px;right:12px}.c5{top:154px;left:-4px}.c6{top:190px;right:-6px}.c7{bottom:150px;left:-2px}.c8{bottom:118px;right:-7px}.method-intro{max-width:none!important;line-height:1.85}.copyright{align-items:flex-start;flex-direction:column}.filings{display:flex!important;align-items:flex-start!important;flex-direction:column!important;gap:10px!important}.filings>i{display:none}.police-record{display:inline-flex!important;color:#8793a8}}

/* 1.2.0 compact mobile rhythm, adaptive headings and animated data particles */
.dot{animation:dotPulse 2.8s ease-in-out infinite;will-change:transform,opacity}.d7{top:12%;left:18%}.d8{top:18%;right:22%;animation-delay:-.4s}.d9{top:48%;left:-4px;animation-delay:-.8s}.d10{top:60%;right:-3px;animation-delay:-1.2s}.d11{bottom:18%;left:24%;animation-delay:-1.6s}.d12{bottom:10%;right:20%;animation-delay:-2s}@keyframes dotPulse{0%,100%{opacity:.45;transform:scale(.72)}50%{opacity:1;transform:scale(1.35);box-shadow:0 0 26px var(--cyan)}}
@media(max-width:620px){section{padding:58px 0}.hero{padding-top:46px;padding-bottom:24px}.hero h1{font-size:clamp(29px,8.2vw,35px)!important;line-height:1.23!important;letter-spacing:-1.2px!important;max-width:100%}.hero h1 span{display:block;white-space:nowrap!important;word-break:keep-all;overflow-wrap:normal}.lead{font-size:15px;line-height:1.8}.service{min-height:0!important;padding:22px!important}.service h3{margin:16px 0 7px}.service-grid{gap:13px}.method{padding-top:58px!important}.section-head{margin-bottom:28px!important;gap:18px}.section-head h2{font-size:clamp(29px,8.5vw,36px);line-height:1.25}.path article{padding:24px}.path h3{margin:22px 0 7px}.hero-visual{height:410px}.dot{width:9px;height:9px;animation:dotPulse 2.2s ease-in-out infinite!important}.d7{top:8%;left:25%}.d8{top:14%;right:24%}.d9{top:46%;left:0}.d10{top:56%;right:0}.d11{bottom:14%;left:22%}.d12{bottom:8%;right:25%}}

/* 1.3.0 footer conversion column */
.foot-grid{grid-template-columns:1.7fr repeat(4,1fr);gap:34px}.foot-note{display:block;color:#7f8ba0;font-size:13px;margin:8px 0}.contact-col a:first-of-type{color:var(--cyan)}html[data-theme="light"] .foot-note{color:#5e6878}@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}.foot-grid>div:first-child{grid-column:1/-1}}@media(max-width:620px){.foot-grid{grid-template-columns:1fr 1fr!important;gap:30px 24px}.foot-grid>div:first-child{grid-column:1/-1}.contact-col{display:block}.foot-note{font-size:12px}}

/* 1.4.0 cohesive cross-border 3D illustrations */
.sprite{display:block;background-image:url('../images/crossborder-sprites.png');background-repeat:no-repeat;background-size:300% 300%}.s1{background-position:0 0}.s2{background-position:50% 0}.s3{background-position:100% 0}.s4{background-position:0 50%}.s5{background-position:50% 50%}.s6{background-position:100% 50%}.s7{background-position:0 100%}.s8{background-position:50% 100%}.s9{background-position:100% 100%}.service{position:relative}.scene-art{position:absolute;right:24px;top:22px;width:116px;height:90px;filter:drop-shadow(0 12px 18px rgba(17,50,110,.16));transition:transform .35s ease}.service:hover .scene-art{transform:translateY(-5px) scale(1.03)}.service.wide .scene-art{width:148px;height:108px}.service h3,.service p,.service .tags{position:relative;z-index:1}.path article{position:relative}.path-art{position:absolute;right:22px;top:22px;width:78px;height:66px;filter:drop-shadow(0 9px 14px rgba(17,50,110,.14))}html[data-theme="light"] .scene-art,html[data-theme="light"] .path-art{filter:drop-shadow(0 10px 15px rgba(42,66,110,.12))}@media(max-width:900px){.scene-art{width:104px;height:80px}.service.wide .scene-art{width:120px;height:90px}}@media(max-width:620px){.scene-art{right:16px;top:15px;width:82px;height:64px}.service.wide .scene-art{width:88px;height:68px}.path-art{right:15px;top:15px;width:66px;height:56px}.service h3{max-width:70%}.path h3{max-width:72%}}

/* 1.4.1 accessible light-mode contrast */
html[data-theme="light"] .eyebrow{color:#075f73!important;background:rgba(8,127,156,.08)!important;border-color:rgba(8,127,156,.28)!important}html[data-theme="light"] .eyebrow i{background:#087f9c;box-shadow:0 0 0 6px rgba(8,127,156,.1)}html[data-theme="light"] .platform-list b{color:#263449!important;background:rgba(255,255,255,.82)!important;border-color:rgba(38,52,73,.2)!important}html[data-theme="light"] .platform-list b:hover{color:#101827!important;background:#fff!important;border-color:rgba(8,127,156,.42)!important}html[data-theme="light"] .platform-row>span{color:#566378!important}html[data-theme="light"] .brand small{color:#657188!important}html[data-theme="light"] .lead,html[data-theme="light"] .section-head p,html[data-theme="light"] .service p,html[data-theme="light"] .path p,html[data-theme="light"] .post-copy p,html[data-theme="light"] .article-row p{color:#536074!important}html[data-theme="light"] .tags span{color:#425066!important;background:rgba(39,55,82,.07)!important}html[data-theme="light"] .kicker,html[data-theme="light"] .path span,html[data-theme="light"] .post-copy small{color:#08728c!important}html[data-theme="light"] .foot-col b{color:#131a26!important}html[data-theme="light"] .icp-record,html[data-theme="light"] .police-record{color:#566378!important}

/* 1.5.0 controlled heading lines, CTA alignment and centered mobile footer */
.services-heading span{display:block;white-space:nowrap}.cta-box h2{max-width:900px!important;margin:12px auto 0!important;text-align:center!important}.academy-heading{max-width:820px!important;text-wrap:balance}@media(max-width:620px){.services-heading span{white-space:normal}.services-heading{font-size:clamp(30px,8.7vw,37px)!important}.academy-heading{font-size:clamp(29px,8.2vw,35px)!important;line-height:1.32!important;text-wrap:balance}.cta-box h2{font-size:clamp(30px,8.5vw,38px)!important;line-height:1.28!important;text-align:center!important}.footer .copyright{width:100%;align-items:center!important;text-align:center!important}.footer .filings{width:100%;align-items:center!important;text-align:center!important}.footer .police-record{justify-content:center!important}.footer .icp-record{display:block;text-align:center}}

/* 1.6.0 denser mobile content and balanced grids */
html[data-theme="light"] .cta-box{background:linear-gradient(135deg,#d9ebf7 0%,#e5e3f6 100%)!important;border-color:rgba(40,92,140,.22)!important}html[data-theme="light"] .cta-box p{color:#394a61!important}html[data-theme="light"] .cta-box .kicker{color:#086a82!important}.cta-box p{color:#c7d1e1}.proof{flex-wrap:wrap}@media(max-width:620px){.proof{display:grid!important;grid-template-columns:1fr 1fr;gap:12px 16px!important;font-size:14px!important;line-height:1.55;margin-top:28px!important}.proof span{display:flex;align-items:flex-start}.platform-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:10px!important}.platform-list b{width:100%;min-width:0;justify-content:flex-start;padding-right:8px!important}.platforms{padding:20px 0 28px}.cta-box p{font-size:15px;line-height:1.75}.foot-grid{align-items:start}.foot-col a,.foot-note{min-height:24px;margin:7px 0!important}.footer .copyright{margin-top:24px!important;padding-top:22px!important}.footer{padding-bottom:24px}}

/* 1.6.1 readable pasted article content in both color modes */
.prose{color:#d8e0ed;line-height:1.9}.prose :where(p,li,dt,dd,figcaption,td,th){color:inherit!important}.prose :where(p,li,dt,dd,figcaption,td,th,h1,h2,h3,h4,h5,h6) span[style*="color"]{color:inherit!important}.prose :where(h1,h2,h3,h4,h5,h6){color:#f5f8ff!important}.prose :where(strong,b){color:#fff!important}.prose a{color:#63e7ff!important;text-decoration-color:rgba(99,231,255,.42)}.prose blockquote{color:#c5d0df!important;border-left-color:#4ed9f6;background:rgba(99,231,255,.055)}.prose mark{color:#fff!important;border-radius:.22em;padding:.05em .18em}.prose :where(code,kbd){color:#b9f5ff}.prose :where(th){color:#f4f7fc!important}.prose :where(td,th){border-color:rgba(255,255,255,.14)}
html[data-theme="light"] .prose{color:#36445a}html[data-theme="light"] .prose :where(h1,h2,h3,h4,h5,h6){color:#101827!important}html[data-theme="light"] .prose :where(strong,b){color:#111827!important}html[data-theme="light"] .prose a{color:#075f9b!important;text-decoration-color:rgba(7,95,155,.38)}html[data-theme="light"] .prose blockquote{color:#46566d!important;border-left-color:#087f9c;background:rgba(8,127,156,.07)}html[data-theme="light"] .prose :where(code,kbd){color:#075f73}html[data-theme="light"] .prose :where(th){color:#152033!important}html[data-theme="light"] .prose :where(td,th){border-color:rgba(15,23,42,.16)}

/* 1.6.2 prevent iOS/mobile browsers from creating scroll space after footer */
@media(max-width:620px){html,body{height:auto!important;min-height:0!important}body{padding-bottom:0!important;overscroll-behavior-y:none}.footer{height:auto!important;min-height:0!important;margin-bottom:0!important;padding-bottom:max(20px,env(safe-area-inset-bottom))!important}.footer>.wrap{height:auto!important;min-height:0!important}.footer+search-modal,body>search-modal{display:none!important;width:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}body:before,body:after{inset:0 0 auto!important;width:100vw;height:100dvh;max-height:100dvh}}

/* 1.6.3 hard mobile document-end clamp, calculated from the real footer bottom */
@media(max-width:620px){html.xb-mobile-page-clamped{height:var(--xb-mobile-page-end)!important;max-height:var(--xb-mobile-page-end)!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important}html.xb-mobile-page-clamped body{height:var(--xb-mobile-page-end)!important;max-height:var(--xb-mobile-page-end)!important;min-height:0!important;overflow-x:hidden!important;overflow-y:clip!important}html.xb-mobile-page-clamped body>footer:last-of-type{contain:layout paint}}

/* 1.6.4 self-contained police filing badge; no external image dependency */
.police-badge{position:relative;display:inline-grid!important;place-items:center;width:18px;height:20px;min-width:18px;border-radius:45% 45% 52% 52%;background:linear-gradient(145deg,#f8ca45 0 18%,#d92f2f 19% 72%,#9e151f 73%);border:1px solid #e9ae2c;box-shadow:inset 0 0 0 2px rgba(255,213,79,.5),0 1px 3px rgba(0,0,0,.2);color:#ffe989!important;font-size:9px!important;font-weight:900!important;line-height:1!important;text-align:center}.police-badge:after{content:"";position:absolute;left:4px;right:4px;bottom:-3px;height:4px;border-radius:0 0 50% 50%;background:#d9a724}

/* 1.6.5 centered mobile footer navigation cards */
@media(max-width:620px){.footer .foot-grid{gap:14px!important}.footer .foot-grid>.foot-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;padding:17px 8px 14px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:linear-gradient(145deg,rgba(99,231,255,.055),rgba(162,107,255,.035));text-align:center}.footer .foot-grid>.foot-col>b{display:block;width:100%;margin:0 0 7px;padding:7px 5px;border-radius:10px;background:rgba(255,255,255,.055);color:#f4f7ff!important;text-align:center}.footer .foot-col a,.footer .foot-note{width:100%;min-height:28px;margin:3px 0!important;text-align:center}.footer .contact-col a:first-of-type{color:var(--cyan)!important}html[data-theme="light"] .footer .foot-grid>.foot-col{border-color:rgba(15,23,42,.13);background:linear-gradient(145deg,rgba(49,95,218,.055),rgba(112,71,207,.035))}html[data-theme="light"] .footer .foot-grid>.foot-col>b{background:rgba(15,23,42,.055);color:#111827!important}}
