/* Verso visual system: precise borders, compact controls and light surfaces. */
:root{--line:#d9dcdd;--sand:#f0f1f0;--muted:#626a6c}
body,body:has(.portal-redesign){background:#f7f8f7}
header{background:#fff;border-bottom:1px solid #d9dcdd}
.btn,header .btn,.portal-redesign .btn,.contract-option span,.salary-quick a,.obs-quick>a{border-radius:5px!important;box-shadow:none!important;min-height:46px;font-weight:600}
.btn.light{border-color:#b9bfc0;background:transparent}
.btn.orange{background:#e3562b;border-color:#e3562b}
.btn:hover,.portal-redesign .btn:hover{transform:none;box-shadow:none;filter:brightness(.95)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #e3562b;outline-offset:4px}
.eyebrow,.sample-top,.demo-category,.demo-label,.badge{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:500;letter-spacing:1.2px}
.card,.journey-choice,.demo-offer,.obs-panel,.obs-metric,.obs-role-search,.obs-filters,.salary-home-strip,.profile-save,.requirement-editor,.portal-offers .empty{border-radius:5px;box-shadow:none}
body:has(.portal-redesign) main.wrap{padding-top:24px}
.portal-redesign .portal-hero{background:#101719;color:#f5f7f6;border:1px solid #273336;border-radius:6px;padding:48px;gap:52px;position:relative;overflow:hidden;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:40px 40px}
.portal-redesign .portal-hero>div{position:relative}
.portal-redesign .portal-hero h1{font-weight:500;font-size:clamp(44px,4.8vw,67px);letter-spacing:-2.8px;line-height:1.06}
.portal-redesign .portal-hero>div>p{color:#c3ccce;font-size:17px;line-height:1.7}
.portal-redesign .portal-hero>div>.sub{color:#99a7aa;font-size:12px}
.portal-redesign .portal-hero .eyebrow{font-size:10px;color:#ee9679;letter-spacing:1.5px;border-left:2px solid #e3562b;padding-left:12px;line-height:1.6}
.portal-redesign .portal-hero .btn.light{color:#e9efef;border-color:#697779}
.portal-redesign .portal-fit{color:#172022;background:#fafcfb;border:1px solid #536263;border-radius:5px;box-shadow:none;padding:24px}
.portal-redesign .portal-fit .btn.light{color:#172022;border-color:#94a2a3;background:white}
.portal-redesign .sample-top{font-size:10px;color:#465658;letter-spacing:1.2px;border-bottom:1px solid #d9e0df;padding-bottom:18px}
.portal-redesign .sample-top small{font-family:Satoshi,sans-serif;font-size:11px;letter-spacing:0;color:#566466}
.portal-redesign .sample-icon{border-radius:4px;background:#142326;color:#fff;width:35px;height:35px;font-size:22px}
.portal-redesign .sample-role p{font-size:12px;color:#566466}
.portal-redesign .sample-role h2{font-size:27px;font-weight:600}
.portal-redesign .sample-tag{border:1px solid #d4dedd;background:#eef3f2;border-radius:3px;font-size:10px}
.portal-redesign .sample-salary strong{font-variant-numeric:tabular-nums;font-size:27px;letter-spacing:-1px}
.portal-redesign .sample-salary>span{font-size:11px;color:#576466}
.portal-redesign .sample-match{border-radius:3px;background:#eef5f0;border:1px solid #d0dfd4;border-left:3px solid #4e745b;padding:16px}
.portal-redesign .sample-match-title{font-size:13px}.portal-redesign .sample-match p,.portal-redesign .sample-check{font-size:12px}.portal-redesign .sample-note{color:#647274;font-size:10px}
.portal-heading{border-top:1px solid #cbd2d2;padding-top:24px;margin-top:30px}
.portal-heading .eyebrow{font-size:10px}.portal-heading h2{font-size:32px;font-weight:500}
.portal-offers .empty{background:#edf1f0;border:1px solid #d8e0de;padding:26px}
.salary-home-strip{border-radius:5px;background:#e9edeb;border:1px solid #cbd5d1;box-shadow:none}
.demo-offer{border:1px solid #ced6d4;border-top:2px solid #263c3d;border-radius:4px;background:#fff}
.demo-fit,.sample-tag,.demo-label{border-radius:3px}.demo-label{font-size:10px}
.reciprocal-table{border-radius:4px;border:1px solid #d0d8d6}.reciprocal-row{border-color:#d0d8d6}
.journey-choice{border:1px solid #d1d8d6;border-radius:4px}.journey-choice.dark{background:#101719}
footer{border-top:1px solid #cbd3d1}
@media(max-width:950px){.portal-redesign .portal-hero{padding:30px;gap:28px}.portal-redesign .portal-hero h1{font-size:49px}}
@media(max-width:800px){.portal-redesign .portal-hero{grid-template-columns:1fr;padding:28px 22px}.portal-redesign .portal-fit{box-shadow:none;margin:0}.portal-redesign .portal-hero h1{font-size:clamp(39px,7.6vw,55px);letter-spacing:-1.7px}.portal-redesign .portal-hero .actions{display:flex;flex-wrap:wrap}.portal-redesign .portal-hero .actions .btn{width:100%;margin:0}.portal-heading h2{font-size:28px}body:has(.portal-redesign) main.wrap{padding-top:18px}}
/* Light hero variant: contrast concentrated in the product preview. */
.portal-redesign .portal-hero{background:#f7f8f7;background-image:none;color:#142024;border-color:transparent;padding-left:30px;padding-right:30px}
.portal-redesign .portal-hero>div>p{color:#455357}
.portal-redesign .portal-hero>div>.sub{color:#637176}
.portal-redesign .portal-hero .eyebrow{color:#a34729}
.portal-redesign .portal-hero>div .btn.light{color:#1c2b30;border-color:#94a0a3}
.portal-redesign .portal-fit{background:#111c20;color:#edf3f3;border-color:#26393e}
.portal-redesign .sample-top{color:#becdce;border-color:#34474c}
.portal-redesign .sample-top small,.portal-redesign .sample-role p,.portal-redesign .sample-salary>span{color:#afc0c4}
.portal-redesign .sample-icon{background:#e3562b;color:#fff}
.portal-redesign .sample-tag{background:#1c2c31;border-color:#3c5056;color:#d5e0e2}
.portal-redesign .sample-salary{border-color:#34474c}
.portal-redesign .sample-match{background:#eaf2ed;border-color:#c3d7cb;border-left-color:#64816d;color:#203c2d}
.portal-redesign .sample-match p{color:#40594a}
.portal-redesign .portal-fit .btn.light{background:transparent;color:#edf3f3;border-color:#71858c}
.portal-redesign .sample-note{color:#afc0c4}
@media(max-width:800px){.portal-redesign .portal-hero{padding:14px 0 26px}}

.obs-rotating-title .obs-role-line{display:flex;align-items:baseline;min-height:1.16em;gap:.08em}.obs-rotating-title [data-rotating-profession]{display:inline-block;overflow-wrap:anywhere}.obs-rotating-title{min-height:2.3em}.salary-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:650px){.obs-rotating-title .obs-role-line{min-height:2.25em}.obs-rotating-title{font-size:clamp(32px,8vw,46px);letter-spacing:-1.4px}}
/* Company demo: the same light technical interface as the public site. */
.demo-intro{max-width:900px;margin:35px 0}.demo-intro h1{font-size:clamp(36px,5vw,64px);line-height:1.07}.demo-workspace{display:grid;grid-template-columns:310px minmax(0,1fr);gap:28px;align-items:start}.demo-settings{position:sticky;top:20px}.demo-settings label{display:block;margin:20px 0;font-size:13px}.demo-settings select{margin-top:8px;width:100%}.demo-summary{display:flex;justify-content:space-between;gap:20px;border-top:3px solid #171b22;border-bottom:1px solid #d9dde3;padding:22px 0}.demo-summary h2{margin:10px 0}.demo-total{font-size:64px;line-height:1.1}.demo-total small{display:block;font-size:12px;font-weight:400;white-space:nowrap}.demo-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.demo-tabs .btn{font-size:12px;padding:10px 12px}.demo-person{margin:16px 0}.demo-person-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.demo-person-heading h3{margin:8px 0}.demo-person details{border-top:1px solid #dde1e6;padding:16px 0}.demo-person summary{cursor:pointer;font-weight:600}.demo-person p{overflow-wrap:anywhere}.demo-next{margin-top:30px;background:#edf0f4}.demo-settings .sub,.demo-results>.sub{font-size:12px}@media(max-width:850px){.demo-workspace{grid-template-columns:1fr}.demo-settings{position:static}.demo-person-heading{align-items:start;flex-direction:column}.demo-intro{margin:25px 0}}
/* A public first reading, followed by a private candidate space. */
.career-hero{max-width:860px;margin:35px 0}.career-hero h1{font-size:clamp(36px,5vw,62px);line-height:1.08}.career-hero em{font-style:normal;color:#df542b}.career-hero>p{max-width:690px}.career-start{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:32px;align-items:start}.career-start form label,.career-import label{display:block;margin:22px 0;font-weight:600}.career-start input:not([type=checkbox]),.career-start textarea,.career-import input,.career-import textarea{display:block;width:100%;margin-top:8px;font-weight:400}.career-start section[hidden]{display:none}.career-how{padding:24px;border-top:2px solid #171b22}.career-how li{margin:18px 0;line-height:1.6}.career-entry{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #dadde2;border-left:3px solid #e3562b;padding:25px;margin:28px 0;background:#fff;border-radius:5px}.career-entry h2{font-size:25px;margin:8px 0}.career-entry p{margin:8px 0;max-width:690px}.career-entry>.btn{flex-shrink:0}.career-directions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.career-directions h3{font-size:26px;line-height:1.15}.career-directions h4{font-size:15px;margin:22px 0 6px}.career-directions details,.career-import{border-top:1px solid #ddd;padding:18px 0}.career-directions summary,.career-import summary{cursor:pointer;font-weight:600}.career-directions blockquote{border-left:2px solid #e3562b;margin:18px 0;padding-left:15px}.career-save{margin-top:25px}.career-save .actions{flex-wrap:wrap}.career-save .sub{max-width:800px}.career-reading{margin:30px 0}.career-reading>p{max-width:900px}.career-import form{max-width:800px}.career-directions p{overflow-wrap:anywhere}.career-directions .badge{white-space:normal}.career-start .check-field{font-weight:400}@media(max-width:950px){.career-directions{grid-template-columns:1fr}.career-start{grid-template-columns:1fr}.career-how{padding:20px 0}.career-entry{align-items:flex-start;flex-direction:column}.career-hero{margin-top:24px}}
.career-inline{display:inline-block;margin-top:8px;font-weight:600;color:#b8401c}

/* Keep explanatory copy legible on the home panel. */
.portal-fit > p,.portal-fit li p{color:#d5dddd}.portal-fit .eyebrow{color:#ff956e}.portal-fit ol{padding-left:20px}.portal-fit li{padding:12px 0}.portal-fit li p{margin-bottom:0}

/* Editorial pages: readable articles, the same technical visual language. */
.blog-index-head{max-width:850px;padding:75px 0 42px}.blog-index-head h1{font-size:clamp(48px,7vw,88px);line-height:1.04;letter-spacing:-.045em}.blog-index-head h1 em{color:#E3562B;font-style:normal}.blog-index-head>p{font-size:21px;max-width:680px}.blog-index-head .sub{font-size:16px}.blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:70px}.blog-card{display:flex;flex-direction:column;padding:32px}.blog-card h2{font-size:29px;line-height:1.2;margin-top:18px}.blog-card h2 a{color:inherit;text-decoration:none}.blog-card h2 a:hover{text-decoration:underline;text-underline-offset:5px}.blog-card-bottom{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-top:auto;padding-top:22px;border-top:1px solid #ddd}.blog-card-bottom span{font-size:14px;color:#626262}.blog-card-bottom a{color:#ac3515;font-weight:600}.blog-breadcrumb{padding-top:35px;font-size:14px;color:#666;display:flex;gap:9px}.blog-breadcrumb a{color:#ac3515}.blog-article{max-width:870px;margin:45px auto 65px}.blog-article-head{display:block;padding:0 0 30px;border:0;border-bottom:1px solid #ddd;background:none;position:static}.blog-article-head h1{font-size:clamp(34px,4.7vw,59px);line-height:1.08;letter-spacing:-.035em;margin:22px 0}.blog-description{font-size:21px;line-height:1.5;color:#555}.blog-meta{display:flex;gap:12px 24px;flex-wrap:wrap;color:#666;font-size:14px;padding-top:14px}.blog-prose{max-width:730px;margin:35px auto;font-size:18px;line-height:1.8}.blog-prose p{margin:0 0 23px;color:#343434}.blog-prose .blog-lead{font-size:23px;line-height:1.55;color:#151515}.blog-prose h2{font-size:29px;line-height:1.22;letter-spacing:-.02em;margin:42px 0 18px}.blog-prose li{margin-bottom:14px}.blog-table{overflow-x:auto;margin:30px 0}.blog-table table{border-collapse:collapse;width:100%;min-width:440px;font-size:16px}.blog-table caption{text-align:left;font-weight:600;margin-bottom:12px}.blog-table th,.blog-table td{text-align:left;vertical-align:top;padding:15px;border-bottom:1px solid #d4d4d4}.blog-table th{background:#EDE7E1}.blog-cite{font-size:13px;vertical-align:super;color:#ac3515;margin-left:3px}.blog-sources{border-top:1px solid #ccc;margin-top:40px;padding-top:8px;font-size:15px}.blog-sources h2{font-size:21px}.blog-sources a{color:#9b3218;overflow-wrap:anywhere}.blog-sources p{font-size:14px;color:#666}.blog-tool{border-left:3px solid #E3562B;padding:15px 22px;margin-top:35px;background:#EDE7E1}.blog-tool .btn{white-space:normal;margin-top:12px}.blog-related>h2{font-size:28px;margin-bottom:25px}.blog-sources li{scroll-margin-top:25px}@media(max-width:760px){.blog-grid{grid-template-columns:1fr}.blog-card{padding:24px}.blog-card h2{font-size:25px}.blog-index-head{padding-top:42px}.blog-article{margin-top:30px}.blog-prose{font-size:17px}.blog-prose .blog-lead{font-size:21px}.blog-prose h2{font-size:25px}.blog-description{font-size:19px}.blog-tool{padding:15px}.blog-breadcrumb{flex-wrap:wrap}}

.external-card h3 a{color:inherit;text-decoration:none}.external-card h3 a:hover{text-decoration:underline}.external-pay{display:flex;flex-direction:column;gap:4px;margin:18px 0}.external-pay strong{font-size:26px;color:#111}.external-pay span{font-size:13px;color:#616161}.external-card .eyebrow{color:#a43b20}.external-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;align-items:end;padding:24px;background:#EDE7E1;border-radius:5px}.external-filters label{display:flex;flex-direction:column;gap:8px}.external-filters .check-field{flex-direction:row;align-items:center}.external-grid>[hidden]{display:none!important}.external-detail{max-width:900px}.external-detail>p{max-width:760px}.external-detail .external-pay strong{font-size:36px}.external-opportunities .portal-heading{align-items:start}.external-opportunities .portal-heading p{max-width:780px}@media(max-width:760px){.external-filters{grid-template-columns:1fr}.external-detail .external-pay strong{font-size:29px}}
/* Home: keep text comfortably inside the dark panels at every width. */
.portal-redesign .portal-fit{padding:36px;min-width:0}
.portal-redesign .portal-fit>:first-child,.reciprocal-home>:first-child{margin-top:0}
.portal-redesign .portal-fit>:last-child,.reciprocal-home>:last-child{margin-bottom:0}
.portal-redesign .portal-fit ol{margin:24px 0;padding-left:0;list-style:none}
.portal-redesign .portal-fit li{padding:16px 0}
.section.reciprocal-home{padding:48px}
.reciprocal-row>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:800px){.portal-redesign .portal-fit{padding:28px}.section.reciprocal-home{padding:32px 26px}}
@media(max-width:480px){.portal-redesign .portal-fit{padding:26px 24px}.section.reciprocal-home{padding:28px 24px}}
/* Reciprocal table: inset cell text from its own border, not only the panel. */
.reciprocal-home .reciprocal-table{overflow:hidden;min-width:0}
.reciprocal-home .reciprocal-row{padding:23px 24px;gap:24px}
.reciprocal-home .reciprocal-titles{padding:18px 24px}
@media(max-width:700px){.reciprocal-home .reciprocal-row{padding:20px 18px;gap:14px}.reciprocal-home .reciprocal-titles{padding:16px 18px}}
.admin-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px}.admin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.admin-metrics strong{display:block;font-size:46px;line-height:1.2;margin-top:15px;color:#111}.admin-metrics span{color:#555}.admin-table{overflow:auto;border:1px solid #d9dedd;border-radius:5px}.admin-table table{border-collapse:collapse;width:100%;min-width:620px}.admin-table th,.admin-table td{text-align:left;padding:18px 22px;border-bottom:1px solid #d9dedd}.admin-table th{background:#ede7e1}.admin-table tr:last-child td{border-bottom:0}@media(max-width:700px){.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-metrics .card{padding:20px}.admin-metrics strong{font-size:34px}}
.admin-privacy{max-width:980px}.admin-privacy h3{margin-top:32px;line-height:1.4}.admin-privacy p{max-width:850px}.admin-privacy a{text-decoration:underline}.admin-table th{white-space:nowrap}
