/* Route-scoped overrides with source-equivalent selector specificity. */

body:where(.theme-cense) {
  --color-accent:#5a3fb0;
  --color-accent-hover:#48318f;
  --color-accent-muted:rgba(90,63,176,.09);
  --color-accent-glow:rgba(90,63,176,.16);
  background:#f6f4fb;
}
:where(.theme-cense) .cense-mark { width:1.3em; height:1.3em; color:var(--color-accent); flex:none; }
:where(.theme-cense) .section-tint { background:#efeaf8; }
:where(.theme-cense) .hero { background:radial-gradient(120% 85% at 82% 8%, rgba(90,63,176,.06), transparent 58%); }
:where(.theme-cense) .hero__grid { display:none; }
:where(.theme-cense) .cta-band { background:#5a3fb0; }
:where(.theme-cense) .cta-band .eyebrow { color:rgba(255,255,255,.72); }
:where(.theme-cense) .cta-band .btn-accent { background:#fff; color:#5a3fb0; }
:where(.theme-cense) .cta-band .btn-accent:hover { background:rgba(255,255,255,.9); box-shadow:none; transform:none; }
:where(.theme-cense) .legal-footer { background:#5a3fb0; border-top-color:rgba(255,255,255,.2); }
:where(.theme-cense) .legal-footer .copy { color:#fff; }
:where(.theme-cense) .legal-footer .copy a { color:#fff; text-decoration:underline; }
:where(.theme-cense) .legal-footer .disclaimer { color:rgba(255,255,255,.62); }

body:where(.theme-integrated-or) {
  --color-accent:#0f766e;
  --color-accent-hover:#0c5e58;
  --color-accent-muted:rgba(15,118,110,.10);
  --color-accent-glow:rgba(15,118,110,.16);
  background:#eef5f3;
}
:where(.theme-integrated-or) .ior-mark { width:1.3em; height:1.3em; color:var(--color-accent); flex:none; }
:where(.theme-integrated-or) .section-tint { background:#e4efec; }
:where(.theme-integrated-or) .hero { background:radial-gradient(120% 88% at 84% 6%, rgba(15,118,110,.06), transparent 58%); }
:where(.theme-integrated-or) .hero__grid { display:none; }
:where(.theme-integrated-or) .cta-band { background:#0f766e; }
:where(.theme-integrated-or) .cta-band .eyebrow { color:rgba(255,255,255,.72); }
:where(.theme-integrated-or) .cta-band .btn-accent { background:#fff; color:#0f766e; }
:where(.theme-integrated-or) .cta-band .btn-accent:hover { background:rgba(255,255,255,.9); box-shadow:none; transform:none; }
:where(.theme-integrated-or) .legal-footer { background:#0f766e; border-top-color:rgba(255,255,255,.2); }
:where(.theme-integrated-or) .legal-footer .copy { color:#fff; }
:where(.theme-integrated-or) .legal-footer .copy a { color:#fff; text-decoration:underline; }
:where(.theme-integrated-or) .legal-footer .disclaimer { color:rgba(255,255,255,.62); }

body:where(.theme-veris) {
  --color-accent:#2b57e0;
  --color-accent-hover:#1f43c0;
  --color-accent-muted:rgba(43,87,224,.09);
  --color-accent-glow:rgba(43,87,224,.16);
  --font-family:'Sora', -apple-system, BlinkMacSystemFont, sans-serif;
  background:#f5f7fd;
}
:where(.theme-veris) .veris-mark { width:1.3em; height:1.3em; color:var(--color-accent); flex:none; }
:where(.theme-veris) .section-tint { background:#eceffb; }
:where(.theme-veris) .hero { background:radial-gradient(120% 85% at 82% 8%, rgba(43,87,224,.06), transparent 58%); }
:where(.theme-veris) .hero__grid { display:none; }
:where(.theme-veris) .cta-band { background:#2b57e0; }
:where(.theme-veris) .cta-band .eyebrow { color:rgba(255,255,255,.72); }
:where(.theme-veris) .cta-band .btn-accent { background:#fff; color:#2b57e0; }
:where(.theme-veris) .cta-band .btn-accent:hover { background:rgba(255,255,255,.9); box-shadow:none; transform:none; }
:where(.theme-veris) .legal-footer { background:#2b57e0; border-top-color:rgba(255,255,255,.2); }
:where(.theme-veris) .legal-footer .copy { color:#fff; }
:where(.theme-veris) .legal-footer .disclaimer { color:rgba(255,255,255,.62); }

body:where(.theme-movendi) {
  --color-accent:#243a72;
  --color-accent-hover:#1a2c5a;
  --color-accent-muted:rgba(36,58,114,.10);
  --color-accent-glow:rgba(36,58,114,.18);
  --font-family:'Source Serif 4', Georgia, 'Times New Roman', serif;
  --font-family-mono:'IBM Plex Mono', ui-monospace, SFMono-Regular, monospace;
  background:#ffffff url("/assets/movendi/images/background.png") center/cover no-repeat fixed;
}
:where(.theme-movendi) .site-nav__logo { align-items:center; gap:.6rem; }
:where(.theme-movendi) .site-nav__brand { gap:1.25rem; align-items:center; }
:where(.theme-movendi) .site-nav__meta { letter-spacing:.22em; }
:where(.theme-movendi) .footer-brand__mark { display:inline-flex; align-items:center; gap:.6rem; }
:where(.theme-movendi) .mov-glyph { font-family:'STIX Two Text', Georgia, 'Times New Roman', serif; font-weight:400; font-size:1.55em; line-height:1; position:relative; top:.08em; }
:where(.theme-movendi) .mov-word { font-family:var(--font-family-mono); font-weight:400; letter-spacing:.28em; text-transform:uppercase; font-size:.82em; }
:where(.theme-movendi) .dim { color:var(--color-text-gray); }
:where(.theme-movendi) .careers-cta { display:flex; align-items:center; }
:where(.theme-movendi) .careers-cta .btn { margin-top:0; }
:where(.theme-movendi) .hero__headline { max-width:none; }
:where(.theme-movendi) .hero__sub { max-width:72ch; }
:where(.theme-movendi) .sec-title { max-width:none; }
:where(.theme-movendi) .sec-lead { max-width:74ch; }
:where(.theme-movendi) .sec-body { max-width:74ch; }
:where(.theme-movendi) .cta-band h2 { max-width:none; }
:where(.theme-movendi) .cta-band p { max-width:72ch; }
:where(.theme-movendi) .section-tint { background:#f5f6fa; }
:where(.theme-movendi) .hero { background:radial-gradient(120% 90% at 85% 6%, rgba(36,58,114,.10), transparent 55%); }
:where(.theme-movendi) .hero__grid { display:none; }
:where(.theme-movendi) .cta-band { background:#243a72; }
:where(.theme-movendi) .cta-band .eyebrow { color:rgba(255,255,255,.72); }
:where(.theme-movendi) .cta-band .btn-accent { background:#fff; color:#243a72; }
:where(.theme-movendi) .cta-band .btn-accent:hover { background:rgba(255,255,255,.9); box-shadow:none; transform:none; }
:where(.theme-movendi) .legal-footer { background:#243a72; border-top-color:rgba(255,255,255,.18); }
:where(.theme-movendi) .legal-footer .copy { color:#fff; }
:where(.theme-movendi) .legal-footer .disclaimer { color:rgba(255,255,255,.6); }
:where(.theme-movendi) .legal-footer .footer-brand__mark { color:#fff; }
:where(.theme-movendi) .legal-footer .footer-brand__tag { color:rgba(255,255,255,.8); }
:where(.theme-movendi) .legal-footer .legal-links a { color:rgba(255,255,255,.85); }
:where(.theme-movendi) .legal-footer .legal-links a:hover { color:#fff; }

html:has(body.not-found-body) {
  background:#ECEFF1;
  scroll-behavior:auto;
  scrollbar-gutter:auto;
}
body.not-found-body {
  background:#ECEFF1;
  color:rgba(0,0,0,0.87);
  font-family:Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:auto;
  -moz-osx-font-smoothing:auto;
  margin:0;
  padding:0;
}
body.not-found-body *,
body.not-found-body *::before,
body.not-found-body *::after { box-sizing:content-box; }
#message { background:white; max-width:360px; margin:100px auto 16px; padding:32px 24px 16px; border-radius:3px; box-shadow:0 1px 3px rgba(0,0,0,0.12),0 1px 2px rgba(0,0,0,0.24); }
#message h1,
#message h2,
#message h3 { font-family:inherit; letter-spacing:normal; line-height:normal; }
#message h3 { color:#888; font-weight:normal; font-size:16px; margin:16px 0 12px; }
#message h2 { color:#ffa100; font-weight:bold; font-size:16px; margin:0 0 8px; }
#message h1 { font-size:22px; font-weight:300; color:rgba(0,0,0,0.6); margin:0 0 16px; }
#message p { line-height:140%; margin:16px 0 24px; font-size:14px; }
#message a { display:block; text-align:center; background:#039be5; text-transform:uppercase; text-decoration:none; color:white; padding:16px; border-radius:4px; box-shadow:0 1px 3px rgba(0,0,0,0.12),0 1px 2px rgba(0,0,0,0.24); }
#load { color:rgba(0,0,0,0.4); text-align:center; font-size:13px; }
@media (max-width:600px) {
  html:has(body.not-found-body) { background:white; }
  body.not-found-body,
  #message { margin-top:0; background:white; box-shadow:none; }
  body.not-found-body { border-top:16px solid #ffa100; }
}
