/* SajResearch "clean and light" look (Style 1). Loaded last on every page, so it only restyles:
   white top bar, light page headers, navy text, teal and orange accents, Outfit + Instrument Serif. */
:root{--display:"Instrument Serif",Georgia,serif;--body:"Outfit",system-ui,sans-serif;--s1-bar:#FFFFFF;--s1-head:#FAFBFC;--s1-ink:#0E1B2C;--s1-ink2:#3B4A5E;--s1-line:#E7ECF2;--s1-chip:#F1F5F8;--s1-teal:#0F6B73;--s1-tealsoft:#E7F6F1}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--s1-bar:#10212A;--s1-head:#0C1A1F;--s1-ink:#E6F0F1;--s1-ink2:#A9BEC4;--s1-line:#24404A;--s1-chip:#18303A;--s1-teal:#7FD6C2;--s1-tealsoft:#173A3B}}
:root[data-theme="dark"]{--s1-bar:#10212A;--s1-head:#0C1A1F;--s1-ink:#E6F0F1;--s1-ink2:#A9BEC4;--s1-line:#24404A;--s1-chip:#18303A;--s1-teal:#7FD6C2;--s1-tealsoft:#173A3B}
body{font-family:var(--body)}
h1,h2{font-weight:400!important;letter-spacing:0!important}
h1 em,h2 em{font-style:italic}

/* ---------- homepage, guide and departments: light hero ---------- */
header.hero{background:var(--s1-head)!important;color:var(--s1-ink)!important;padding-bottom:48px!important}
header.hero::after,header.hero::before{display:none!important}
header.hero .logo .s,.s1-bar .logo .s{color:var(--s1-ink)!important}header.hero .logo .r,header.hero .logo>span,.s1-bar .logo .r,.s1-bar .logo>span{color:#F07B53!important}
header.hero .logo>span>.s,.s1-bar .logo>span>.s{color:var(--s1-ink)!important}
header.hero nav a,.s1-bar nav a{color:var(--s1-ink2)!important}
header.hero nav a.btn.ghost,.s1-bar nav a.btn.ghost{background:#F07B53!important;color:#fff!important;border:0!important;box-shadow:0 8px 18px -8px rgba(240,123,83,.7)}
header.hero nav a.nl.admin,.s1-bar nav a.nl.admin{color:#fff!important}
header.hero h1{color:var(--s1-ink)}header.hero h1 em{color:var(--s1-teal)!important}
header.hero .lead,header.hero>.w>p{color:var(--s1-ink2)!important}
header.hero .eyebrow{background:var(--s1-tealsoft)!important;border-color:transparent!important;color:var(--s1-teal)!important}
header.hero .trust{color:var(--s1-ink2)!important}header.hero .trust b{color:var(--s1-ink)!important}
header.hero .btn.ghost{background:var(--s1-bar)!important;color:var(--s1-ink)!important;border:1.5px solid var(--s1-line)!important}
header.hero .vis{border:1px solid var(--s1-line);box-shadow:0 30px 60px -30px rgba(14,27,44,.3)!important}
header.hero .float{border:1px solid var(--s1-line)}
header.hero h1{font-size:clamp(44px,6vw,76px)!important;line-height:1!important}
header.hero .hgrid h1 .big{margin-top:6px}
/* homepage cards no longer sit on a dark band */
.groups{margin-top:8px!important;box-shadow:none!important;border:1px solid var(--s1-line)}
.hero{padding-bottom:48px}
/* guide road and department search on the light hero */
header.hero .road a{background:var(--s1-bar)!important;color:var(--s1-ink)!important;border:1px solid var(--s1-line)!important}
header.hero .road a b{background:var(--s1-tealsoft)!important;color:var(--s1-teal)!important}
header.hero .find input{background:var(--s1-bar)!important;color:var(--s1-ink)!important;border:1.5px solid var(--s1-line)!important}
.contact{background:var(--s1-ink)!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .contact{background:#13262D!important;border:1px solid var(--s1-line)}}
:root[data-theme="dark"] .contact{background:#13262D!important;border:1px solid var(--s1-line)}

/* ---------- tool pages: white top bar and light title ---------- */
body[data-tone] .top{background:var(--s1-head)!important;color:var(--s1-ink)!important;padding-bottom:40px!important;border-bottom:1px solid var(--s1-line)}

body[data-tone] .logo{color:#F07B53!important}body[data-tone] .logo .s{color:var(--s1-ink)!important}
body[data-tone] .streams{background:var(--s1-chip)!important;border-color:var(--s1-line)!important}
body[data-tone] .streams a,body[data-tone] .streams span{color:var(--s1-ink2)!important}
body[data-tone] .streams a:hover{color:var(--s1-ink)!important;background:var(--s1-bar)}
body[data-tone] .streams .on{background:var(--s1-teal)!important;color:#fff!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) body[data-tone] .streams .on{color:#0C1A1F!important}}
:root[data-theme="dark"] body[data-tone] .streams .on{color:#0C1A1F!important}
body[data-tone] .streams small{background:var(--s1-line)!important}
body[data-tone] .toplinks a{color:var(--s1-ink2)!important}body[data-tone] .toplinks a:hover{color:var(--s1-ink)!important}
body[data-tone] .toplinks a.signin{background:#F07B53!important;color:#fff!important}
body[data-tone] .acct{color:var(--s1-ink2)!important}
body[data-tone] .acct .chip{background:#FDF3DD!important;color:#93600F!important;border-color:#F3D9A4!important}
body[data-tone] .title h1{color:var(--s1-ink);font-size:40px!important}
body[data-tone] .title p{color:var(--s1-ink2)!important}
body[data-tone] .top .badge{background:var(--s1-bar)!important;color:var(--s1-ink2)!important;border-color:var(--s1-line)!important}
body[data-tone] .steptag{background:var(--tone-soft)!important;border-color:var(--tone-line)!important;color:var(--tone)!important}
body[data-tone] .steptag:hover{border-color:var(--tone)!important}
body[data-tone] .top .btn,body[data-tone] .top button.ghost{color:var(--s1-ink)}
/* the first card no longer needs to overlap a dark band */
body[data-tone] .top+*{margin-top:0}

/* motto in the same serif */
.motto p,.motto-s{font-family:var(--display)!important;font-weight:400!important}
header.hero .hgrid{padding-top:28px!important}
/* the model picture and its floating boxes stay white in dark mode too */
header.hero .float{background:#fff!important;color:#10242B!important}
header.hero .vis span[style*="mint-soft"]{background:#E3F5F0!important;color:#0B3C49!important}
footer.sf{background:#0E1B2C!important}
@media (max-width:720px){header.hero nav a.btn.ghost,.s1-bar nav a.btn.ghost{display:none!important}}
body[data-tone] .top .tright .pill,body[data-tone] .top .tright .badge{background:var(--s1-bar)!important;color:var(--s1-ink2)!important;border:1px solid var(--s1-line)!important;font-size:13px!important;padding:5px 12px!important}
body[data-tone] .top .snote{color:var(--s1-ink2)!important}
body[data-tone] .top #dataBadge{background:var(--s1-bar)!important;color:var(--s1-ink2)!important;border-color:var(--s1-line)!important}
body[data-tone] .top #dataBadge.ok{background:var(--s1-tealsoft)!important;color:var(--s1-teal)!important;border-color:var(--s1-teal)!important}

/* sticky top bar: assistant.js moves the page's menu bar into .s1-bar, the first child of <body> */
html{scroll-padding-top:84px}
.s1-bar{position:sticky;top:0;z-index:60;background:var(--s1-bar);border-bottom:1px solid var(--s1-line);transition:box-shadow .2s}
.s1-bar.scrolled{box-shadow:0 8px 24px -16px rgba(14,27,44,.45)}
.s1-in{max-width:1240px;margin:0 auto;padding:0 32px}
.s1-bar nav{padding:12px 0!important}
body[data-tone] .s1-in{max-width:1500px;padding:0 max(16px,env(safe-area-inset-left,0px))}
body[data-tone] .s1-bar .bar{padding:10px 0}
body[data-tone] .s1-bar .logo{font-weight:800;font-size:20px}
@media (max-width:720px){.s1-in{padding:0 16px}.s1-bar nav{padding:8px 0!important}}
@media (max-width:1100px){body[data-tone] .s1-bar .bar{flex-wrap:wrap;row-gap:8px}body[data-tone] .s1-bar .streams{order:3;flex:1 1 100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}body[data-tone] .s1-bar .streams::-webkit-scrollbar{display:none}body[data-tone] .s1-bar .streams a,body[data-tone] .s1-bar .streams span{white-space:nowrap}}
@media (prefers-reduced-motion:reduce){.s1-bar{transition:none}}
@media (max-width:560px){body[data-tone] .s1-bar .toplinks a:not(.signin){display:none}body[data-tone] .s1-bar .bar{row-gap:6px;padding:8px 0}body[data-tone] .s1-bar .streams a,body[data-tone] .s1-bar .streams span{padding:6px 11px}}
/* launch offer banner: deep teal band, orange FREE tag, white button */
#promoTop,#promoBar{display:flex!important;align-items:center;flex-wrap:wrap;gap:10px 14px;background:linear-gradient(100deg,#0B3C49 0%,#0F6B73 60%,#11807F 100%)!important;color:#E6F4F1!important;border:0!important;border-left:0!important;border-radius:16px!important;padding:14px 18px!important;font-family:var(--body);font-size:16px!important;line-height:1.45;box-shadow:0 14px 30px -18px rgba(11,60,73,.8);position:relative;overflow:hidden}
#promoTop[hidden],#promoBar[hidden]{display:none!important}
#promoTop::before,#promoBar::before{content:"FREE";flex:none;background:#F07B53;color:#fff;font-weight:800;font-size:13px;letter-spacing:.12em;padding:6px 12px;border-radius:99px;box-shadow:0 6px 14px -6px rgba(240,123,83,.9)}
#promoTop::after,#promoBar::after{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(127,214,194,.35),transparent 70%);pointer-events:none}
#promoTop b,#promoBar b{color:#fff!important;font-weight:700;font-size:17px}
#promoTop a{margin-left:auto;background:#fff;color:#0B3C49!important;text-decoration:none!important;font-weight:700;padding:9px 18px;border-radius:12px;white-space:nowrap;position:relative;z-index:1}
#promoTop a:hover{background:#FDEBE4}
#promoBar a{color:#fff!important}
@media (max-width:560px){#promoTop a{margin-left:0}#promoTop b,#promoBar b{font-size:16px}}
