@import url('/assets/aperture-global-v221.css');
/* Aperture Research Works v222: approved separate 35-icon navy/white family. */
:root{--ap-navy:#123A63;--ap-ink:#13263A;--ap-paper:#FFFFFF;--ap-soft:#F4F7FB;--ap-muted:#4A5B6C;}
.ap-v222-h1-icon{display:inline-block;width:54px;height:54px;margin:0 13px 8px 0;vertical-align:middle;border-radius:10px;object-fit:contain;flex-shrink:0;box-shadow:0 0 0 1px #d5e0eb}
.ap-v222-icon{width:56px;height:56px;max-width:100%;display:inline-block;object-fit:contain;border-radius:10px;flex:none}
.ap-v222-tile-icon{width:64px;height:64px;display:inline-block;border-radius:10px;object-fit:contain;flex:none}
.ap-v222-card-head{display:flex;gap:14px;align-items:center;margin-bottom:12px}.ap-v222-card-head h3{margin:0}
.ap-v222-site-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0 40px}
.ap-v222-site-links article{padding:24px;background:#fff;border:1px solid #c9d4e0;border-radius:13px;color:#13263A}
.ap-v222-site-links article :is(p,h2,h3){color:#13263A!important}
.ap-v222-site-links article p{color:#4A5B6C!important}
.ap-v222-linkbutton{display:inline-block;padding:11px 18px;border-radius:7px;font-weight:700;text-decoration:none;background:#123A63;color:#fff!important;border:2px solid #123A63}
.ap-v222-linkbutton:hover{background:#0e2f50;color:#fff!important}
.ap-v222-person-strip{background:#eaf1f8;color:#13263A;border-top:1px solid #c9d4e0;border-bottom:1px solid #c9d4e0;padding:22px 0}
.ap-v222-person-strip .inner{max-width:1180px;width:calc(100% - 38px);margin:auto;display:flex;gap:22px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.ap-v222-person-strip p{margin:4px 0 0;color:#4A5B6C!important}.ap-v222-person-strip strong{color:#13263A!important}
.ap-v222-person-strip a{color:#123A63!important;font-weight:700}
.ap-v222-site-version{position:fixed;right:14px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:81;font:700 12px system-ui,sans-serif;padding:3px 8px;border-radius:6px;background:#fff;color:#13263A;border:1px solid #b8c7d7;pointer-events:none}
body .site-build-badge{display:none!important}
/* Keep named partner logos and corporate mark unchanged. */
@media(max-width:720px){.ap-v222-site-links{grid-template-columns:1fr}.ap-v222-h1-icon{width:44px;height:44px}.ap-v222-person-strip .inner{display:block}}
@media print{.ap-v222-site-version{display:none}}

/* v222 additional client-approved text policy (2026-10-12): EVERY web page.
   On light surfaces, ALL visible editorial and interactive text is Aperture navy;
   on dark surfaces it is white. No PDF files are touched by this stylesheet.
   A complementary local JS resolver handles mixed legacy styles and nested panels. */
:root,html,body {
 --ap-navy-text:#123A63;
 --ink:#123A63;
 --ink-soft:#123A63;
 --muted:#123A63;
 --text:#123A63;
 --text-primary:#123A63;
 --text-secondary:#123A63;
 --ap-ink:#123A63;
 --ap-muted:#123A63;
 --rf-ink:#123A63;
 --rf-muted:#123A63;
 color:#123A63;
}
body :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,span,small,strong,em,b,i,label,legend,summary,figcaption,blockquote,cite,th,td,time,code,pre,option,output,address,a,button,select,textarea,input,div[role="button"],.rf-eyebrow,.eyebrow,.kicker,.subhead,.muted,.helper,.hint,.placeholder,.caption){color:#123A63!important}
body :is(input,textarea,select){color:#123A63!important}
body :is(input,textarea)::placeholder{color:#123A63!important;opacity:1!important}
body :is(.dark,.dark-panel,.dark-section,.dark-band,.hero-dark,.cta,.rf-blue,.rf-footer,.research-difference,.ba-readiness-card,.navy,.bg-navy,.bg-dark,.site-footer-dark,[data-theme="dark"],[data-surface="dark"]) :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,span,small,strong,em,b,i,label,legend,summary,figcaption,blockquote,th,td,time,code,pre,output,address,a,button){color:#FFFFFF!important}
body :is(.dark,.dark-panel,.dark-section,.dark-band,.hero-dark,.cta,.rf-blue,.rf-footer,.research-difference,.ba-readiness-card,.navy,.bg-navy,.bg-dark,.site-footer-dark,[data-theme="dark"],[data-surface="dark"]) :is(.card,.rf-panel,.panel,.surface,.paper,.light-panel,.white-card,.form-card,.ba-tile,.ba-offer,.ba-step,.offer-card,.price-card,.toolform,.member-card,.ap-v222-site-links article,.rf-staged) :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,span,small,strong,em,b,i,label,legend,summary,figcaption,blockquote,th,td,time,code,pre,output,address,a,button){color:#123A63!important}
/* Content text inside navy buttons, links and dark interactive controls remains white. */
body :is(a,button,input[type="submit"],input[type="button"],.btn,.button,.rf-action,.rf-nav-cta,.ap-v222-linkbutton,.ba-button,.action-primary,.primary-action):is(.btn,.button,.rf-action,.rf-nav-cta,.ap-v222-linkbutton,.ba-button,.action-primary,.primary-action,[type="submit"],[type="button"]) {background-color:#123A63;color:#FFFFFF!important}
body :is(a,button):is(.secondary,.light,.outline,.rf-action.secondary,.ba-outline,.btn-outline) {background-color:#FFFFFF;color:#123A63!important}
/* Guard explicitly light pills, highlighted captions, version and muted text from legacy near-black tokens. */
body :is(.ap-v222-site-version,.site-build-badge,.rf-panel,.rf-staged,.ap-v222-person-strip,.rf-tool,.rf-field,.rf-mast,table,thead,tbody) {color:#123A63!important}
/* White lettering on navy feature sections and on navy buttons is determined by the actual effective background. */
