/* NewsJob24 — palette tokens (light values from the Stitch export; dark variant is ours) */
:root {
  --c-background: 250 248 255;
  --c-on-primary-container: 255 251 255;
  --c-surface-dim: 210 217 244;
  --c-tertiary-fixed: 194 232 255;
  --c-on-primary: 255 255 255;
  --c-surface-container-low: 242 243 255;
  --c-surface-bright: 250 248 255;
  --c-on-tertiary-fixed-variant: 0 77 104;
  --c-on-secondary-fixed-variant: 96 65 0;
  --c-primary-fixed-dim: 255 181 160;
  --c-outline: 146 111 102;
  --c-on-surface-variant: 93 64 56;
  --c-surface-container-lowest: 255 255 255;
  --c-on-secondary-container: 106 72 0;
  --c-tertiary-container: 0 126 167;
  --c-surface-variant: 218 226 253;
  --c-on-secondary: 255 255 255;
  --c-primary-fixed: 255 219 209;
  --c-surface-container-highest: 218 226 253;
  --c-secondary-fixed: 255 222 172;
  --c-surface: 250 248 255;
  --c-on-background: 19 27 46;
  --c-error: 186 26 26;
  --c-tertiary-fixed-dim: 119 209 255;
  --c-on-tertiary: 255 255 255;
  --c-on-tertiary-container: 251 252 255;
  --c-on-surface: 19 27 46;
  --c-on-primary-fixed: 59 9 0;
  --c-primary-container: 216 57 0;
  --c-on-tertiary-fixed: 0 30 44;
  --c-error-container: 255 218 214;
  --c-secondary: 126 87 0;
  --c-surface-container-high: 226 231 255;
  --c-outline-variant: 231 189 178;
  --c-inverse-on-surface: 238 240 255;
  --c-on-error: 255 255 255;
  --c-secondary-fixed-dim: 255 186 56;
  --c-tertiary: 0 99 133;
  --c-surface-tint: 177 45 0;
  --c-on-primary-fixed-variant: 135 32 0;
  --c-inverse-surface: 40 48 68;
  --c-on-secondary-fixed: 40 25 0;
  --c-primary: 173 44 0;
  --c-on-error-container: 147 0 10;
  --c-inverse-primary: 255 181 160;
  --c-secondary-container: 254 179 0;
  --c-surface-container: 234 237 255;
  --c-success: 4 120 87;
  --c-success-container: 209 250 229;
  --c-rose: 190 18 60;
  --c-rose-container: 255 228 230;
  --c-ink: 15 23 42;
  --c-white-fixed: 255 255 255;
}
html { color-scheme: light; }
html.dark {
  --c-surface: 16 19 33;
  --c-background: 16 19 33;
  --c-surface-bright: 16 19 33;
  --c-surface-dim: 10 12 22;
  --c-surface-container-lowest: 22 26 44;
  --c-surface-container-low: 26 31 52;
  --c-surface-container: 33 39 64;
  --c-surface-container-high: 42 49 78;
  --c-surface-container-highest: 52 60 94;
  --c-surface-variant: 52 60 94;
  --c-on-surface: 236 239 252;
  --c-on-background: 236 239 252;
  --c-on-surface-variant: 198 190 186;
  --c-outline: 160 140 133;
  --c-outline-variant: 74 60 58;
  --c-primary: 255 142 108;
  --c-on-primary: 60 10 0;
  --c-primary-container: 216 57 0;
  --c-on-primary-container: 255 251 255;
  --c-primary-fixed: 92 30 10;
  --c-primary-fixed-dim: 255 181 160;
  --c-on-primary-fixed: 255 219 209;
  --c-on-primary-fixed-variant: 255 181 160;
  --c-inverse-primary: 173 44 0;
  --c-surface-tint: 255 181 160;
  --c-secondary: 255 186 56;
  --c-on-secondary: 40 25 0;
  --c-secondary-container: 254 179 0;
  --c-on-secondary-container: 96 65 0;
  --c-secondary-fixed: 78 54 0;
  --c-secondary-fixed-dim: 255 186 56;
  --c-on-secondary-fixed: 255 222 172;
  --c-on-secondary-fixed-variant: 255 222 172;
  --c-tertiary: 119 209 255;
  --c-on-tertiary: 0 30 44;
  --c-tertiary-container: 0 126 167;
  --c-on-tertiary-container: 251 252 255;
  --c-tertiary-fixed: 0 66 90;
  --c-tertiary-fixed-dim: 119 209 255;
  --c-on-tertiary-fixed: 194 232 255;
  --c-on-tertiary-fixed-variant: 194 232 255;
  --c-error: 255 150 140;
  --c-on-error: 105 0 5;
  --c-error-container: 120 20 20;
  --c-on-error-container: 255 218 214;
  --c-inverse-surface: 226 231 255;
  --c-inverse-on-surface: 40 48 68;
  --c-success: 52 211 153;
  --c-success-container: 6 78 59;
  --c-rose: 251 113 133;
  --c-rose-container: 76 5 25;
  color-scheme: dark;
}
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { overflow-x: hidden; font-family: "Plus Jakarta Sans", sans-serif; }
.no-scrollbar { scrollbar-width: none; } .no-scrollbar::-webkit-scrollbar { display: none; }
.material-symbols-outlined { font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24; line-height: 1; user-select: none; }
.icon-fill { font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24; }
.pb-safe { padding-bottom: env(safe-area-inset-bottom, 0px); }
.stretched::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.above-stretch { position: relative; z-index: 2; }
.lift { transition: transform .2s, box-shadow .2s; box-shadow: 0 2px 4px -1px rgb(15 23 42 / .05), 0 1px 2px -1px rgb(15 23 42 / .03); }
.lift:hover { transform: translateY(-2px); box-shadow: 0 8px 16px -4px rgb(255 69 0 / .14), 0 2px 4px -2px rgb(15 23 42 / .06); }
.line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.line-clamp-3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
:focus-visible { outline: 2px solid rgb(var(--c-primary)); outline-offset: 2px; }
::selection { background: rgb(var(--c-secondary-fixed)); color: rgb(var(--c-on-secondary-fixed)); }
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.marquee { display: inline-flex; animation: marquee 70s linear infinite; }
.marquee:hover { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { .marquee { animation: none; } .animate-ping, .animate-pulse { animation: none !important; } * { scroll-behavior: auto !important; } }
.fade-edge { -webkit-mask-image: linear-gradient(90deg, #000 92%, transparent); mask-image: linear-gradient(90deg, #000 92%, transparent); }
/* Article / job body typography */
.prose-article { font-size: 17px; line-height: 29px; color: rgb(var(--c-on-surface)); }
.prose-article > * + * { margin-top: 1.1em; }
.prose-article h2 { font-family: "Outfit", sans-serif; font-size: 26px; line-height: 32px; font-weight: 700; margin-top: 1.9em; letter-spacing: -0.015em; scroll-margin-top: 150px; }
.prose-article h3 { font-family: "Outfit", sans-serif; font-size: 20px; line-height: 26px; font-weight: 600; margin-top: 1.5em; scroll-margin-top: 150px; }
.prose-article ul, .prose-article ol { padding-left: 1.4em; }
.prose-article ul { list-style: disc; } .prose-article ol { list-style: decimal; }
.prose-article li { margin-top: .45em; padding-left: .2em; } .prose-article li::marker { color: rgb(var(--c-primary)); font-weight: 800; }
.prose-article strong { font-weight: 700; }
.prose-article blockquote { border-left: 4px solid rgb(var(--c-secondary-container)); background: rgb(var(--c-secondary-fixed) / .5); padding: 16px 20px; border-radius: 0 .75rem .75rem 0; font-size: 18px; line-height: 28px; font-weight: 600; }
.prose-article a { color: rgb(var(--c-tertiary)); text-decoration: underline; }
@media (max-width: 767px) { .prose-article { font-size: 16px; line-height: 27px; } .prose-article h2 { font-size: 22px; line-height: 28px; } }
