body.csri-chrome{
--c-concrete-5:#0d0d0d;--c-concrete-10:#1a1a1a;--c-concrete-20:#333333;--c-concrete-35:#595959;--c-concrete-55:#8c8c8c;--c-concrete-70:#b3b3b3;--c-concrete-85:#d9d9d9;--c-concrete-95:#f2f2f2;--c-concrete-98:#fafafa;--c-concrete-100:#ffffff;
--c-azure-20:#1c304a;--c-azure-30:#2a486f;--c-azure-40:#386094;--c-azure-50:#4678b9;--c-azure-65:#7ea0ce;--c-azure-78:#aec4e0;--c-azure-90:#dae4f1;--c-azure-95:#edf1f8;
--c-moss-25:#295729;--c-moss-35:#397939;--c-moss-44:#489948;--c-moss-55:#63b663;--c-moss-70:#97ce97;--c-moss-90:#dcefdc;--c-moss-95:#eef7ee;
--c-lime-45:#b7cc19;--c-lime-56:#d2e637;--c-lime-70:#e0ee77;--c-lime-85:#f0f7bb;--c-lime-93:#f8fbdf;
--c-cobalt-20:#003166;--c-cobalt-30:#004a99;--c-cobalt-45:#006fe6;--c-cobalt-50:#007bff;--c-cobalt-60:#3396ff;--c-cobalt-90:#cce5ff;--c-cobalt-95:#e5f2ff;
--c-verdigris-19:#0c5540;--c-verdigris-32:#148f6c;--c-verdigris-45:#1dc998;--c-verdigris-55:#36e2b2;--c-verdigris-90:#d2f9ee;--c-verdigris-95:#e9fcf6;
--c-brass-45:#e2b203;--c-brass-55:#fccb1d;--c-brass-65:#fcd74f;--c-brass-75:#fde281;--c-brass-90:#fef4cd;
--c-terracotta-55:#f97a1f;--c-terracotta-65:#fb9851;--c-terracotta-75:#fcb583;--c-terracotta-90:#fee1cd;
--c-slate-7:#070a1d;--c-slate-12:#0c1232;--c-slate-20:#131e53;--c-slate-30:#1d2d7c;--c-slate-45:#2c43ba;--c-slate-55:#455dd3;--c-slate-90:#d6dbf5;--c-slate-95:#eaedfa;
--c-oat-85:#e8dbc9;--c-oat-90:#f0e7db;--c-oat-93:#f4eee6;--c-oat-96:#f9f5f1;

/* ---------- Tokens: typography ---------- */
--font-serif:"Source Serif 4",Charter,"Iowan Old Style","Calisto MT",Georgia,serif;
--font-sans:"Public Sans",Inter,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
--font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
--type-base:1rem;--type-n3:0.7023rem;--type-n2:0.7901rem;--type-n1:0.8889rem;--type-0:1.0000rem;--type-1:1.1250rem;--type-2:1.2656rem;--type-3:1.4238rem;--type-4:1.6018rem;--type-5:1.8020rem;--type-6:2.0273rem;--type-7:2.2807rem;--type-8:2.5658rem;--type-9:2.8865rem;--type-10:3.2473rem;--type-11:3.6532rem;--type-12:4.1099rem;--type-13:4.6236rem;
--leading-tight:1.1;--leading-upper:1.2;--leading-mid:1.35;--leading-lower:1.55;
--tracking-label:0.09em;--tracking-tight:-0.015em;--measure:34rem;

/* ---------- Tokens: spacing, shape, motion ---------- */
--sp-3xs:2px;--sp-2xs:4px;--sp-xs:6px;--sp-s:10px;--sp-m:16px;--sp-l:26px;--sp-xl:42px;--sp-2xl:68px;--sp-3xl:110px;--sp-4xl:178px;
--motion-fast:0.13s ease-in-out;--motion-hover:0.35s cubic-bezier(.2,.7,.3,1);--shape-notch:42px;--radius:0;

/* ---------- Semantics (light) ---------- */
--surface:var(--c-oat-96);--surface-raised:var(--c-concrete-100);--surface-sunken:var(--c-oat-93);--surface-inverse:var(--c-slate-7);
--text-primary:var(--c-concrete-10);--text-secondary:var(--c-concrete-35);--text-inverse:var(--c-oat-93);--text-accent:var(--c-azure-40);--on-accent:var(--c-concrete-100);
--eyebrow:var(--c-azure-40);--dropcap:var(--c-azure-40);--link:var(--c-azure-30);
--rule-hairline:0.0625rem solid var(--c-concrete-85);--rule-emphasised:0.0625rem solid var(--c-concrete-10);--rule-heavy:0.25rem solid var(--c-concrete-10);--rule-accent:0.25rem solid var(--c-azure-50);
--focus-ring:var(--c-azure-50);
}

/* ---------- Foxiz integration: one responsive header at every width ---------- */
body.csri-chrome-header .header-template-inner{display:block!important}
body.csri-chrome-header #header-mobile,body.csri-chrome-header .header-mobile{display:none!important}
body.csri-chrome-header #site-header{background:var(--surface);box-shadow:none;border:0}
body.csri-chrome-footer .footer-wrap{padding:0!important;background:none!important;border:0!important}
body.csri-chrome-footer .footer-wrap:before{display:none!important}
body.csri-chrome-footer .csri-page{padding-bottom:0}

/* ---------- Elementor shells ---------- */
body.csri-chrome .csri-header,body.csri-chrome .csri-footer{font-family:var(--font-serif);color:var(--text-primary);-webkit-font-smoothing:antialiased}
body.csri-chrome .csri-header *,body.csri-chrome .csri-footer *{box-sizing:border-box}
body.csri-chrome .csri-header .e-con.csri-e,body.csri-chrome .csri-footer .e-con.csri-e,body.csri-chrome .csri-header.e-con.csri-e,body.csri-chrome .csri-footer.e-con.csri-e{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px}
body.csri-chrome .csri-header .elementor-widget-container,body.csri-chrome .csri-footer .elementor-widget-container{margin:0;padding:0}
body.csri-chrome .csri-header .elementor-shortcode,body.csri-chrome .csri-footer .elementor-shortcode{display:contents}
body.csri-chrome .csri-header .e-con.csri-wrap,body.csri-chrome .csri-footer .e-con.csri-wrap{max-width:76rem;width:100%;margin-inline:auto;padding-inline:var(--sp-m)}
@media (min-width:768px){body.csri-chrome .csri-header .e-con.csri-wrap,body.csri-chrome .csri-footer .e-con.csri-wrap{padding-inline:var(--sp-l)}}
@media (min-width:1280px){body.csri-chrome .csri-header .e-con.csri-wrap,body.csri-chrome .csri-footer .e-con.csri-wrap{padding-inline:var(--sp-xl)}}
body.csri-chrome .csri-header{background:var(--surface)}

/* ---------- Shared atoms (header/footer only, so page styles keep control of page content) ---------- */
body.csri-chrome .csri-header .csri-wrap,body.csri-chrome .csri-footer .csri-wrap{max-width:76rem;margin:0 auto;padding-inline:var(--sp-m)}
@media (min-width:768px){body.csri-chrome .csri-header .csri-wrap,body.csri-chrome .csri-footer .csri-wrap{padding-inline:var(--sp-l)}}
@media (min-width:1280px){body.csri-chrome .csri-header .csri-wrap,body.csri-chrome .csri-footer .csri-wrap{padding-inline:var(--sp-xl)}}
body.csri-chrome .csri-header .csri-sr,body.csri-chrome .csri-footer .csri-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
body.csri-chrome .csri-header .csri-meta{font-family:var(--font-mono);font-size:var(--type-n1);color:var(--text-secondary);letter-spacing:.02em;font-style:normal}
body.csri-chrome .csri-header .csri-btn{display:inline-block;font-family:var(--font-sans);font-size:var(--type-0);font-weight:500;line-height:var(--leading-mid);padding:var(--sp-s) var(--sp-l);border:.0625rem solid transparent;border-radius:0;text-decoration:none;cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast);white-space:nowrap}

/* ---------- Utility bar ---------- */
body.csri-chrome .csri-utility{background:var(--surface-inverse);color:var(--text-inverse)}
body.csri-chrome .csri-utility .csri-wrap{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-m);min-height:40px;flex-wrap:wrap}
body.csri-chrome .csri-utility nav{display:flex;gap:var(--sp-l);flex-wrap:wrap}
body.csri-chrome .csri-utility a{font-family:var(--font-mono);font-size:var(--type-n2);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-inverse);text-decoration:none;display:inline-flex;align-items:center;gap:var(--sp-xs);line-height:1.2;white-space:nowrap}
body.csri-chrome .csri-utility a:hover{color:var(--c-lime-56)}
body.csri-chrome .csri-utility .csri-util-actions{display:flex;align-items:center;gap:var(--sp-m)}
body.csri-chrome .csri-utility a.csri-btn{font-family:var(--font-mono);font-size:var(--type-n2);letter-spacing:var(--tracking-label);text-transform:uppercase;padding:var(--sp-xs) var(--sp-m);background:var(--c-lime-56);color:var(--c-slate-7)}
body.csri-chrome .csri-utility a.csri-btn:hover{background:var(--text-inverse);color:var(--surface-inverse)}

/* ---------- Brand row ---------- */
body.csri-chrome .e-con.csri-brandrow,body.csri-chrome .csri-brandrow{display:grid!important;grid-template-columns:auto 1fr auto;align-items:end;gap:var(--sp-l);padding-block:var(--sp-l) var(--sp-m)}
body.csri-chrome .csri-logo,body.csri-chrome .csri-logo .elementor-widget-container{width:max-content!important;max-width:none!important;flex:none}
body.csri-chrome .csri-logo a{display:inline-block;line-height:0}
body.csri-chrome .csri-logo img{height:72px!important;width:auto!important;max-width:none!important;display:block}
body.csri-chrome .csri-tagline,body.csri-chrome .csri-tagline .elementor-widget-container{font-family:var(--font-serif);font-style:italic;font-size:var(--type-1);color:var(--text-secondary);line-height:var(--leading-mid);padding-bottom:var(--sp-2xs)}
body.csri-chrome .csri-tagline p{margin:0}
body.csri-chrome .csri-tagline .csri-meta{display:inline-block;margin-top:var(--sp-3xs)}
body.csri-chrome .csri-search{display:flex;align-items:center;border-bottom:var(--rule-emphasised);min-width:14rem;margin:0}
body.csri-chrome .csri-search input[type=search]{flex:1;border:0;background:transparent;font-family:var(--font-sans);font-size:var(--type-0);padding:var(--sp-xs) 0;color:var(--text-primary);outline:none;min-width:0;box-shadow:none;border-radius:0;height:auto;line-height:var(--leading-mid);-webkit-appearance:none;appearance:none}
body.csri-chrome .csri-search input::placeholder{color:var(--text-secondary);opacity:1}
body.csri-chrome .csri-search button{border:0;background:transparent;font-family:var(--font-mono);font-size:var(--type-n2);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-accent);cursor:pointer;padding:0 0 0 var(--sp-s);box-shadow:none;border-radius:0;min-height:0;height:auto;line-height:1.2}
body.csri-chrome .csri-search button:hover{color:var(--text-primary);background:transparent}

/* ---------- Section nav ---------- */
body.csri-chrome .csri-nav{border-top:var(--rule-hairline);border-bottom:var(--rule-heavy);background:var(--surface)}
body.csri-chrome .csri-nav ul{display:flex;gap:var(--sp-l);list-style:none;margin:0;padding:var(--sp-s) 0;overflow-x:auto;scrollbar-width:none}
body.csri-chrome .csri-nav ul::-webkit-scrollbar{display:none}
body.csri-chrome .csri-nav li{margin:0;padding:0;list-style:none}
body.csri-chrome .csri-nav a{font-family:var(--font-sans);font-size:var(--type-0);font-weight:400;color:var(--text-primary);text-decoration:none;white-space:nowrap;padding-bottom:2px;border-bottom:2px solid transparent;transition:var(--motion-fast);line-height:var(--leading-mid)}
body.csri-chrome .csri-nav a:hover,body.csri-chrome .csri-nav a[aria-current]{color:var(--text-accent);border-bottom-color:var(--text-accent)}
@media (max-width:767px){body.csri-chrome .e-con.csri-brandrow,body.csri-chrome .csri-brandrow{grid-template-columns:1fr;align-items:start;gap:var(--sp-m)}body.csri-chrome .csri-tagline{display:none}body.csri-chrome .csri-logo img{height:56px!important}body.csri-chrome .csri-search{min-width:0}body.csri-chrome .csri-utility nav{display:none}body.csri-chrome .csri-utility .csri-wrap{justify-content:flex-end}body.csri-chrome .csri-utility .csri-util-actions{gap:var(--sp-s)}}

/* ---------- Footer ---------- */
body.csri-chrome .csri-footer{margin-top:var(--sp-3xl);background:var(--surface-inverse);color:var(--text-inverse);border-top:var(--rule-accent)}
body.csri-chrome .e-con.csri-footer-grid,body.csri-chrome .csri-footer-grid{display:grid!important;grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:var(--sp-xl);padding-block:var(--sp-2xl) var(--sp-xl)}
body.csri-chrome .csri-footer .csri-logo img{height:64px!important;padding:var(--sp-xs) var(--sp-s);background:var(--c-oat-96)}
body.csri-chrome .csri-footer-about,body.csri-chrome .csri-footer-about p{font-family:var(--font-serif);font-size:var(--type-0);line-height:var(--leading-lower);color:var(--c-oat-85);max-width:30rem}
body.csri-chrome .csri-footer-about p{margin:var(--sp-m) 0 0}
body.csri-chrome .csri-footer h4{font-family:var(--font-mono);font-size:var(--type-n1);font-weight:500;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--c-lime-56);margin:0 0 var(--sp-s);line-height:1.2}
body.csri-chrome .csri-footer ul{list-style:none;margin:0;padding:0}
body.csri-chrome .csri-footer li{border-top:.0625rem solid var(--c-slate-20);padding:var(--sp-xs) 0;margin:0;list-style:none;font-size:var(--type-n1);line-height:var(--leading-mid)}
body.csri-chrome .csri-footer a{font-family:var(--font-sans);font-size:var(--type-n1);color:var(--text-inverse);text-decoration:none}
body.csri-chrome .csri-footer a:hover{color:var(--c-lime-56)}
body.csri-chrome .csri-footer .csri-legal,body.csri-chrome .csri-footer .csri-legal p{grid-column:1/-1;font-family:var(--font-mono);font-size:var(--type-n2);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--c-oat-85);margin:0}
body.csri-chrome .csri-footer .csri-legal{border-top:.0625rem solid var(--c-slate-20);padding-top:var(--sp-m)}
@media (max-width:767px){body.csri-chrome .e-con.csri-footer-grid,body.csri-chrome .csri-footer-grid{grid-template-columns:1fr}}
