/* Finders inherits the site's Newsreader typography and DM Sans navigation. */
body.products-page,body.finders-page{background:#f6f5f0;color:#10243d}
body.products-page::before,body.finders-page::before{display:none}
.eyebrow{display:block;font-size:13px;font-weight:600;letter-spacing:.13em;line-height:1.6}
.product-hero{background:#071630;color:#fff;padding:78px 0 86px}
.product-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}
.product-hero .eyebrow{color:#ffc329;margin-bottom:26px}
.product-hero h1{font-size:clamp(45px,5.5vw,76px);line-height:1.04;font-weight:500;letter-spacing:-.045em}
.product-hero p{font-size:21px;line-height:1.6;color:#c9d3e3;margin:26px 0 30px;max-width:580px}
.product-logo{padding:8px;background:#fff;border-radius:5px 5px 60px 5px;overflow:hidden;box-shadow:20px 20px 0 #102a4b}
.product-logo img{width:100%;height:auto}
.finder-button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:13px 21px;border-radius:5px;border:1px solid #173654;background:#10243d;color:#fff;cursor:pointer;font-size:17px;line-height:1.25;min-height:46px}
.product-hero .finder-button{background:#ffc329;border-color:#ffc329;color:#10243d}
.finder-button.secondary{background:transparent;color:#10243d;border-color:#ccd3da}
.finder-button.small{font-size:15px;padding:9px 14px;min-height:40px}
.finder-button:disabled{opacity:.55;cursor:not-allowed}
.product-note{display:block;font-size:14px;color:#b9c7d8;margin-top:14px}
.product-intro{padding-top:72px;padding-bottom:80px}
.product-intro>.eyebrow{color:#52647b}
.product-intro>h2{font-weight:500;font-size:48px;line-height:1.1;margin:20px 0 40px}
.product-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.product-pillars article{border-top:1px solid #c9cdd1;padding-top:22px}
.product-pillars article>span{font-size:13px;color:#566980;letter-spacing:.06em}
.product-pillars h3{font-size:27px;line-height:1.15;margin:20px 0 14px;font-weight:500}
.product-pillars p{font-size:18px;color:#596574}
.preview-strip{background:#ece9df;border-bottom:1px solid #dcd9ce;padding:10px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px;color:#48576a}
.preview-strip button{background:none;border:0;color:#10243d;text-decoration:underline;white-space:nowrap;cursor:pointer;font-size:14px;min-height:32px}
.portal-shell{max-width:1500px;margin:auto;display:grid;grid-template-columns:244px minmax(0,1fr);min-height:780px}
.portal-sidebar{border-right:1px solid #dde0dc;padding:28px 22px;display:flex;flex-direction:column;background:#fdfcf8}
.portal-identity img{width:152px;height:152px;object-fit:contain;margin:-8px auto 0}
.portal-identity>span{display:block;text-align:center;font-size:12px;letter-spacing:.08em;color:#66768a;margin-top:-9px;margin-bottom:28px}
.role-label{font-size:13px;color:#627083;margin-bottom:7px}
.portal-sidebar select{width:100%;background:#fff;border:1px solid #cbd1d6;border-radius:5px;padding:10px;color:#10243d;font-size:16px}
#portalNav{display:flex;flex-direction:column;gap:5px;margin-top:24px}
#portalNav button{border:0;background:transparent;color:#617083;text-align:left;min-height:46px;padding:11px 14px;border-radius:5px;font-size:17px;cursor:pointer;display:flex;align-items:center;gap:12px}
#portalNav button[aria-current="page"]{color:#fff;background:#10243d}
#portalNav button span{width:20px;text-align:center;font-size:18px}
.sidebar-note{border-top:1px solid #dde0dc;margin-top:32px;padding-top:24px;font-size:15px}
.trust-icon{display:block;color:#226c54;margin-bottom:8px;font-size:23px}
.sidebar-note b{font-weight:500}.sidebar-note p{font-size:14px;color:#6b7786;margin-top:9px;line-height:1.5}
.help-trigger{margin-top:auto;padding:36px 0 0;background:none;border:0;text-align:left;color:#52677e;font-size:16px;cursor:pointer}
.portal-content{padding:38px 42px 64px;min-width:0}
.workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}
.workspace-heading .eyebrow{font-size:12px;color:#718096;margin-bottom:8px}
.workspace-heading h1{font-size:42px;line-height:1.08;font-weight:500;letter-spacing:-.03em}
.workspace-heading p{font-size:17px;color:#687587;margin-top:12px}
.avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#e6eadf;font-size:16px;flex-shrink:0;border:4px solid #fff}
.welcome-banner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;background:#10243d;color:#fff;border-radius:7px 7px 40px 7px;padding:28px 30px;margin-bottom:26px;position:relative;overflow:hidden}
.welcome-banner .eyebrow{color:#ffc329;font-size:12px}
.welcome-banner h2{font-size:31px;font-weight:500;margin:10px 0;line-height:1.14}
.welcome-banner p{color:#cbd4df;font-size:16px;max-width:560px}
.welcome-banner .banner-art{font-size:62px;line-height:1;color:#ffc329;border:1px solid #718096;border-radius:50%;width:92px;height:92px;display:grid;place-items:center;transform:rotate(-18deg)}
.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:32px}
.stat-card{background:#fffefa;border:1px solid #e0e2dd;border-radius:6px;padding:18px 20px}
.stat-card>span{font-size:14px;color:#697689}.stat-card strong{display:block;font-size:33px;font-weight:500;line-height:1.2;margin-top:10px}.stat-card small{display:block;font-size:13px;color:#6a7a8c;margin-top:6px}
.section-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 17px}.section-bar h2{font-size:26px;font-weight:500}.text-button{padding:8px 0;border:0;background:none;color:#235bc4;font-size:16px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.search-row{display:grid;grid-template-columns:minmax(0,1fr) 160px 150px;gap:12px;margin-bottom:18px}
.portal-content input,.portal-content select,.portal-content textarea,dialog input,dialog select,dialog textarea{width:100%;min-width:0;background:#fffefa;border:1px solid #ccd3d9;border-radius:5px;padding:12px;color:#10243d;font-size:16px;min-height:46px}
.search-row label>span{display:block;font-size:13px;color:#627083;margin-bottom:5px}
.job-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.job-card{border:1px solid #dce0da;background:#fffefa;border-radius:7px;padding:22px;display:flex;flex-direction:column}
.job-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px}.company-mark{width:39px;height:39px;display:grid;place-items:center;background:#e8eef1;border-radius:8px;color:#245269;font-weight:600;font-size:17px}.bookmark{background:transparent;border:1px solid #d5dcd9;color:#60738b;border-radius:50%;width:34px;height:34px;font-size:21px;cursor:pointer}.bookmark[aria-pressed="true"]{color:#ae7200;background:#fff0c9;border-color:#dbb34e}
.job-card h3{font-size:25px;font-weight:500;line-height:1.15}.job-card .company-name{font-size:15px;color:#68778b;margin-top:8px}.job-meta{display:flex;gap:7px;flex-wrap:wrap;margin:17px 0}.tag,.status{display:inline-block;padding:4px 9px;background:#eef1ed;border-radius:4px;color:#506553;font-size:12px;line-height:1.4}.tag.blue,.status.blue{background:#e9effa;color:#315999}.tag.gold,.status.gold{background:#fbf0d6;color:#85621d}.status.gray{background:#eceef0;color:#607083}
.job-card-bottom{border-top:1px solid #e9e9e1;margin-top:auto;padding-top:17px;display:flex;justify-content:space-between;align-items:center;gap:8px}.salary{font-size:18px}.salary small{font-size:12px;color:#6c7788;display:block}
.card{background:#fffefa;border:1px solid #dce0da;border-radius:7px;padding:25px;margin-bottom:18px}.card h2,.card h3{font-weight:500;font-size:26px;line-height:1.2;margin-bottom:12px}.card p{color:#627083;font-size:17px}.card .finder-button{margin-top:14px}.muted{color:#647488;font-size:15px}.notice{padding:14px 18px;border-left:3px solid #d5a432;background:#f8f0dc;color:#6a552b;font-size:16px;margin:0 0 20px}.notice.good{background:#eaf2e9;border-color:#46784d;color:#365c3d}
.profile-grid,.two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field-group{display:grid;gap:14px}.field-group label{display:block;font-size:15px;color:#516174}.field-group label input,.field-group label select,.field-group label textarea{display:block;margin-top:6px}.field-group textarea{min-height:100px;resize:vertical}.field-group .check-label{display:flex;align-items:center;gap:10px}.check-label input{width:18px;height:18px;min-height:0}.record-list{margin:0}.record-list div{padding:13px 0;border-bottom:1px solid #e5e8e0}.record-list dt{font-size:13px;color:#788696}.record-list dd{font-size:18px;margin:5px 0 0}.table-wrap{overflow-x:auto;border:1px solid #dce0da;border-radius:6px;background:#fffefa}table{width:100%;border-collapse:collapse;font-size:16px;text-align:left}th{font-size:12px;letter-spacing:.035em;color:#68798b;font-weight:500;background:#efeee7}td,th{padding:16px 18px;border-bottom:1px solid #e5e7e0}td .text-button{font-size:14px;white-space:nowrap}td small{display:block;color:#728094}.timeline{list-style:none;padding:0;margin:22px 0}.timeline li{position:relative;padding:0 0 23px 27px;border-left:1px solid #cdd9cf;margin-left:7px;color:#667b6b}.timeline li::before{content:'';position:absolute;left:-5px;top:7px;width:9px;height:9px;border-radius:50%;background:#418366}.timeline li:last-child{border:0;padding-bottom:0}.timeline b{color:#10243d;font-weight:500;display:block;font-size:19px}.timeline small{font-size:14px}.empty-state{text-align:center;padding:48px 20px;border:1px dashed #bdc9d4;border-radius:7px;grid-column:1/-1}.empty-state h2{font-size:27px;font-weight:500}.empty-state p{color:#6a7787;margin:12px 0}.inline-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.package-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.package-grid .card{padding:18px}.package-grid ul{padding-left:18px;color:#64748b;font-size:15px}.package-grid .active-plan{border-color:#245bc0;box-shadow:0 0 0 1px #245bc0}.package-grid h3{font-size:24px}.package-grid button{width:100%}
#portalDialog{width:min(660px,calc(100% - 32px));max-height:90vh;overflow:auto;background:#fdfcf8;color:#10243d;border:1px solid #d3d9de;border-radius:9px;padding:28px;box-shadow:0 30px 100px #0004}#portalDialog::backdrop{background:#07163099;backdrop-filter:blur(3px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.dialog-top>button{border:0;background:#e9ece9;width:35px;height:35px;border-radius:50%;font-size:25px;cursor:pointer;color:#10243d}#dialogBody h2{font-size:33px;line-height:1.12;font-weight:500;margin-bottom:15px}#dialogBody p{color:#5b6c80;margin:12px 0;font-size:17px}#dialogBody h3{font-size:21px;margin-top:20px;font-weight:500}#dialogBody .salary{font-size:25px;margin-top:18px}.portal-toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:1000;padding:15px 22px;border-radius:6px;background:#10243d;color:#fff;box-shadow:0 5px 24px #0003;max-width:calc(100% - 32px);font-size:17px}.portal-toast[hidden]{display:none}
.finders-page footer,.products-page footer{background:#071630;color:#fff;border:0}
.finders-page :focus-visible,.products-page :focus-visible{outline:3px solid #3676dc;outline-offset:3px}
@media(min-width:1500px){.portal-shell{border-left:1px solid #dde0dc;border-right:1px solid #dde0dc}}
@media(max-width:1100px){.portal-content{padding:30px 24px}.portal-shell{grid-template-columns:215px minmax(0,1fr)}.portal-sidebar{padding:24px 16px}.package-grid{grid-template-columns:repeat(2,1fr)}.search-row{grid-template-columns:1fr 130px 120px}.product-grid{gap:40px}}
@media(max-width:760px){.product-grid{grid-template-columns:1fr}.product-hero{padding:48px 0}.product-logo{max-width:400px;margin:10px auto;width:100%}.product-pillars{grid-template-columns:1fr}.product-intro{padding-top:48px;padding-bottom:48px}.portal-shell{display:block}.portal-sidebar{border-right:0;border-bottom:1px solid #dce0da;padding:16px 20px;display:grid;grid-template-columns:auto 1fr;column-gap:18px}.portal-identity{grid-row:1/3}.portal-identity img{width:85px;height:85px;margin:0}.portal-identity>span{display:none}.role-label{align-self:end}.sidebar-note,.help-trigger{display:none}#portalNav{grid-column:1/-1;flex-direction:row;overflow:auto;margin-top:12px;padding-bottom:3px;gap:4px}#portalNav button{white-space:nowrap;font-size:15px;min-height:42px;padding:10px}#portalNav button span{display:none}.portal-content{padding:28px 20px 48px}.preview-strip{padding:10px 20px;align-items:flex-start;font-size:12px}.preview-strip button{font-size:12px}.workspace-heading h1{font-size:35px}.workspace-heading p{font-size:16px}.welcome-banner{padding:24px}.welcome-banner h2{font-size:28px}.banner-art{display:none!important}.welcome-banner{grid-template-columns:1fr}.stat-grid{gap:8px}.stat-card{padding:14px 12px}.stat-card>span{font-size:12px}.stat-card strong{font-size:27px}.stat-card small{font-size:12px}.search-row{grid-template-columns:1fr 1fr}.search-row label:first-child{grid-column:1/-1}.profile-grid,.two-columns{grid-template-columns:1fr}.job-card{padding:20px}.job-card h3{font-size:24px}}
@media(max-width:480px){.job-grid{grid-template-columns:1fr}.package-grid{grid-template-columns:1fr}.workspace-heading .avatar{display:none}.product-hero h1{font-size:46px}.stat-card small{line-height:1.3}.section-bar{align-items:baseline}.section-bar h2{font-size:24px}.job-card-bottom{gap:12px}#portalDialog{padding:22px}.inline-actions .finder-button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Keep the shared gold labels legible on light portal surfaces. */
body.finders-page .workspace-heading .eyebrow,
body.finders-page .dialog-top .eyebrow,
body.products-page .product-intro>.eyebrow{color:#52647b;-webkit-text-fill-color:#52647b;border-color:#52647b}
body.finders-page .workspace-heading .eyebrow{margin-bottom:12px}
body.finders-page .welcome-banner .eyebrow{margin-bottom:12px}
body.finders-page .dialog-top .eyebrow{margin-bottom:0}
/* Standalone Finders portal and authenticated account entry. */
[hidden]{display:none!important}
body.finders-page .finders-header nav.wrap{max-width:1390px;padding-inline:24px;gap:22px;display:flex;justify-content:space-between;height:94px}
.finders-wordmark{display:flex;align-items:center;gap:14px;color:#10243d;font-size:25px;font-weight:600;line-height:1.2}
.finders-wordmark img{width:78px;height:78px;object-fit:contain;border-radius:50%;border:2px solid #1a3f6f}
.finders-wordmark small{display:block;font-size:17px;font-weight:400;letter-spacing:.01em;margin-top:1px;color:#1a3f6f}.finders-home-link{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:10px 16px;border:1px solid #d7dee5;border-radius:999px;background:#fff;color:#344c68;font-family:"DM Sans",sans-serif;font-size:15px;font-weight:500;line-height:1.2;text-decoration:none;white-space:nowrap;transition:background .18s ease,border-color .18s ease}
.finders-home-link:hover{background:#edf2f6;border-color:#aebdcd;color:#10243d}
.finders-home-link:focus-visible{outline:2px solid #315f9e;outline-offset:4px}
.finders-home-link svg{width:16px;height:16px;flex-shrink:0}
.finders-auth{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;padding-top:64px;padding-bottom:80px;align-items:start;min-height:750px}
.auth-story{padding-top:28px;display:flex;flex-direction:column;gap:24px}
body.finders-page .auth-story>h1,body.finders-page .auth-story>p{margin:0}
.auth-story h1{font-size:clamp(45px,5vw,68px);line-height:1.06;font-weight:500;letter-spacing:-.045em}
.auth-story>p{font-size:21px;line-height:1.6;color:#66758a;margin:28px 0;max-width:510px}
.auth-story img{width:210px;height:210px;object-fit:contain;border-radius:8px;mix-blend-mode:multiply}
.auth-story>a{display:block;margin-top:18px;color:#315f9e;font-size:18px}
body.finders-page .auth-story .eyebrow{font-size:14px;color:#52647b;-webkit-text-fill-color:#52647b;border-color:#52647b;margin:0}
.auth-card{padding:35px;margin-top:5px}.auth-card h2{font-size:35px}.auth-card>p{margin-bottom:24px}.auth-card .field-group{gap:18px}.auth-card .finder-button{margin-top:0}.auth-card .auth-footnote{font-size:14px;line-height:1.6;margin:20px 0 0;color:#6b7786}
.auth-card input,.auth-card select{width:100%;padding:12px;border:1px solid #ccd3d9;border-radius:5px;background:#fffefa;color:#10243d;font-size:17px;min-height:46px}
.auth-card input[type="checkbox"]{width:18px;min-width:18px;min-height:18px;height:18px;margin:0}.auth-card .check-label{font-size:14px;align-items:flex-start}
.portal-account{display:flex;flex-direction:column;gap:10px;padding:6px 4px 18px}.portal-account strong{font-size:21px;font-weight:500;overflow-wrap:anywhere}.portal-account>span:last-child{font-size:13px;color:#68778b}.portal-account .avatar{margin-bottom:4px}
.portal-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;color:#6a7787;font-size:13px;margin-bottom:15px}
.finders-page .portal-content .finder-button[disabled]{opacity:.5}.finder-error{color:#a52931;font-size:15px;margin:12px 0;line-height:1.5}
.document-list{list-style:none;padding:0;margin:14px 0}.document-list li{padding:12px 0;border-bottom:1px solid #e1e5df;overflow-wrap:anywhere}.document-list a{color:#315f9e;text-decoration:underline}.document-list small{display:block;color:#68778b}
.finders-page .auth-card .notice{font-size:17px;margin:15px 0 20px}.account-review{border-left:3px solid #cfa33e}
.auth-card #authTitle{margin-bottom:-4px}
.auth-card #authIntro{font-size:19px;margin-top:0}
.auth-card #loginForm>label{font-size:17px}
@media(max-width:760px){.finders-auth{grid-template-columns:1fr;padding-top:38px;gap:30px}.auth-story img{display:none}.auth-story>p{font-size:19px;margin:20px 0}.auth-story>a{display:none}.auth-card{padding:26px}.finders-wordmark{font-size:21px}.finders-wordmark small{display:none}.finders-wordmark img{width:58px;height:58px}.finders-home-link{font-size:13px;padding:9px 11px;gap:6px}.finders-header #signOut{font-size:13px;padding:8px;min-height:36px}body.finders-page .finders-header nav.wrap{height:76px;gap:10px}.portal-account{grid-column:1/-1;display:grid;grid-template-columns:42px 1fr;column-gap:12px;padding:0}.portal-account .avatar{grid-row:1/3;width:40px;height:40px}.portal-account strong{font-size:18px}.portal-account>span:last-child{font-size:12px}.portal-account{row-gap:0}.finders-page .portal-tools{margin-bottom:18px}.auth-story h1{font-size:46px}.finders-page .portal-sidebar #portalNav{margin-top:15px}}

/* Student placement overview. */
.student-overview .workspace-heading h1{font-size:42px}
.student-overview .workspace-heading p{font-size:19px}
.student-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}
.student-metrics>button{text-align:left;padding:20px;background:#fff;border:1px solid #dce2e7;border-radius:12px;color:#10243d;cursor:pointer;font-family:"DM Sans",sans-serif}
.student-metrics>button:hover{border-color:#315f9e;background:#f5f8fc}
.student-metrics>button:focus-visible{outline:2px solid #315f9e;outline-offset:3px}
.student-metrics span,.student-metrics small{display:block;font-size:16px;color:#66758a}
.student-metrics strong{display:block;font-size:28px;margin:10px 0;font-weight:600}
.student-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:22px;align-items:start}
.student-columns>div,.student-columns>aside{min-width:0}
.student-overview .card{border-radius:12px;margin-bottom:22px;padding:24px;background:#fff}
.student-overview .section-bar{gap:12px;flex-wrap:wrap;margin-bottom:16px}
.student-overview .card h2{font-family:"DM Sans",sans-serif;font-size:22px;font-weight:600}
.student-overview .card h3{font-family:"DM Sans",sans-serif;font-size:18px;font-weight:600;line-height:1.5;margin:0}
.student-overview .card p{font-size:16px;line-height:1.6;margin:6px 0;color:#66758a}
.student-overview .card small{font-size:14px;color:#66758a}
.student-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-top:1px solid #edf0f3}
.student-row>div{min-width:0}.student-row .finder-button{flex-shrink:0}
.student-readiness label{display:block;font-size:13px;margin-top:20px}
.student-readiness progress{display:block;width:100%;height:9px;accent-color:#315f9e;margin:12px 0 20px}
.student-readiness ul{list-style:none;padding:0;margin:0 0 22px}
.student-readiness li{display:flex;gap:10px;align-items:center;font-size:15px;padding:9px 0}
.student-readiness li span{font-size:12px;border-radius:4px;padding:4px 6px;min-width:62px;text-align:center}
.step-done{color:#276344;background:#eaf5ee}.step-pending{color:#816321;background:#fff4d9}
.student-readiness .finder-button{width:100%}
.student-update{padding:16px 0;border-top:1px solid #edf0f3}
@media(max-width:1100px){.student-columns{grid-template-columns:1fr}.student-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.student-overview .card{padding:18px}.student-metrics{gap:10px}.student-metrics>button{padding:14px}.student-row{align-items:flex-start;flex-direction:column}}

.header-profile{margin-left:auto;width:44px;height:44px;flex:0 0 44px;border:1px solid #c5d3e2;border-radius:50%;background:#e8eff7;color:#173654;font:600 14px "DM Sans",sans-serif;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.header-profile:hover{background:#d9e5f3;border-color:#315f9e}
.header-profile:focus-visible{outline:2px solid #315f9e;outline-offset:4px}
.profile-accessible{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Job listings: consistent typography and structured role information. */
.job-grid{grid-template-columns:minmax(0,1fr);gap:0;border:1px solid #dce2e7;border-radius:6px;background:#fff;overflow:hidden}
.job-card{padding:26px 28px;background:#fff;border:0;border-bottom:1px solid #e3e7eb;border-radius:0;gap:0;font-family:"DM Sans",sans-serif}
.job-card:last-child{border-bottom:0}
.job-listing-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.job-card .job-employer{font-size:16px;font-weight:500;color:#617084;margin:0 0 7px}
.job-card h3,.student-overview .job-card h3{font-family:"DM Sans",sans-serif;font-size:20px;line-height:1.4;font-weight:600;letter-spacing:-.02em;margin:0;color:#142b43}
.job-save{flex-shrink:0;border:1px solid #d5dde5;border-radius:4px;background:#fff;color:#42556b;font:500 14px "DM Sans",sans-serif;min-height:36px;padding:7px 12px;cursor:pointer}
.job-save[aria-pressed="true"]{background:#edf1f5;border-color:#99aabd;color:#203e5c}
.job-save:hover{background:#f1f4f7}.job-save:focus-visible{outline:2px solid #315f9e;outline-offset:3px}
.job-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:22px 0 18px}
.job-facts dt{font-size:15px;font-weight:500;color:#778392;margin-bottom:5px}
.job-facts dd{margin:0;font-size:16px;line-height:1.5;color:#35475b;overflow-wrap:anywhere}
.job-card .job-summary,.student-overview .job-card .job-summary{font-size:16px;line-height:1.7;color:#667386;margin:0 0 22px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.job-listing-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:18px;border-top:1px solid #edf0f3}
.job-card .job-compensation,.student-overview .job-card .job-compensation{margin:0;color:#233b53;font-size:14px;font-weight:600}
.job-compensation span{font-size:12px;font-weight:400;color:#6b7888}
.job-card .job-deadline,.student-overview .job-card .job-deadline{font-size:11px;color:#748090;margin:6px 0 0}
.job-listing-footer .finder-button{font-family:"DM Sans",sans-serif;font-size:12px;font-weight:500;border:1px solid #203c59;border-radius:4px;color:#fff;background:#203c59;padding:10px 16px;min-height:38px;flex-shrink:0}
.job-listing-footer .finder-button:hover{background:#142c45}
.student-overview .job-grid{margin-top:20px}
.student-overview .job-card{padding:22px 20px}
@media(max-width:600px){.job-card,.student-overview .job-card{padding:20px 16px}.job-card h3,.student-overview .job-card h3{font-size:18px}.job-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.job-listing-footer{align-items:flex-start;flex-direction:column}.job-listing-footer .finder-button{width:100%}}

.search-row{grid-template-columns:minmax(0,380px) auto;align-items:end;justify-content:start}
@media(max-width:760px){.search-row label:first-child{grid-column:auto}}
@media(max-width:480px){.search-row{grid-template-columns:1fr}.search-row>.text-button{justify-self:start}}

.job-actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0;min-width:108px}
.job-actions .finder-button{font-family:"DM Sans",sans-serif;font-size:14px;font-weight:500;border:1px solid #203c59;border-radius:4px;color:#fff;background:#203c59;padding:10px 14px;min-height:36px}
.job-actions .finder-button:hover{background:#142c45}
@media(max-width:480px){.job-listing-heading{gap:12px}.job-actions{min-width:96px}}

#workspace:has(#jobSearch) .workspace-heading p{font-size:19px}
#workspace .search-row label>span{font-size:16px}
@media(max-width:760px){#workspace:has(#jobSearch) .workspace-heading p{font-size:18px}}

.portal-sidebar #signOut{margin-top:16px;align-self:flex-start;min-height:40px}
@media(max-width:760px){.portal-sidebar .help-trigger{display:block;grid-column:1/-1;padding-top:18px;margin-top:0}.portal-sidebar #signOut{grid-column:1/-1;justify-self:start;margin-top:10px}}

/* Keep navigation visible while the workspace scrolls. */
body.finders-page:has(#portalShell:not([hidden])){height:100dvh;overflow:hidden;display:flex;flex-direction:column}
body.finders-page:has(#portalShell:not([hidden]))>header{position:relative;top:auto;flex-shrink:0}
body.finders-page:has(#portalShell:not([hidden]))>footer{display:none}
body.finders-page #portalShell:not([hidden]){flex:1;min-height:0;width:100%;margin:0 auto;overflow:hidden}
#portalShell .portal-content,#portalShell .portal-sidebar{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#9aaabc #edf0f3}
#portalShell .portal-content:focus-visible{outline:2px solid #315f9e;outline-offset:-2px}
@media(max-width:760px){body.finders-page #portalShell:not([hidden]){display:flex;flex-direction:column}#portalShell .portal-sidebar{flex-shrink:0;max-height:35dvh}#portalShell .portal-content{flex:1;min-height:0}}

.student-overview .text-button{font-size:17px}
.student-overview .student-row .status{font-size:14px}
.student-overview .job-card .job-employer{font-size:16px}
@media(max-width:760px){.student-overview .workspace-heading h1{font-size:35px}.student-overview .workspace-heading p{font-size:18px}}

.finders-auth .login-product-intro{grid-column:1/-1;width:100%;padding:40px 0 30px;border-top:1px solid #d7dee5}
body.finders-page .login-product-intro>.eyebrow{font-size:14px;color:#52647b;-webkit-text-fill-color:#52647b;border-color:#52647b}

.application-filters{display:grid;grid-template-columns:minmax(0,380px) minmax(150px,220px);gap:20px;margin:26px 0;font:15px "DM Sans",sans-serif;color:#52647b}
.application-filters input,.application-filters select{display:block;margin-top:8px}
.application-list{border:1px solid #dce2e7;border-radius:6px;background:#fff;overflow:hidden}
.application-row{display:grid;grid-template-columns:minmax(0,1fr) 130px 130px auto;gap:20px;align-items:center;padding:22px 24px;border-bottom:1px solid #e5e9ed;font-family:"DM Sans",sans-serif}
.application-row:last-child{border-bottom:0}
.application-role{min-width:0}.application-role h2{font:600 17px/1.45 "DM Sans",sans-serif;color:#142b43;overflow-wrap:anywhere}
.application-role p{font-size:15px;color:#66758a;margin-top:6px}
.application-row .status{font-size:13px}.application-updated{font-size:13px;color:#52647b}
.application-updated span,.application-updated time{display:block}.application-updated span{font-size:14px;color:#778392;margin-bottom:5px}
.application-row .finder-button{font:500 13px "DM Sans",sans-serif;border-radius:4px;white-space:nowrap}
.application-pagination{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:20px 0;font:14px "DM Sans",sans-serif;color:#52647b}
.application-pagination>div{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
@media(max-width:1100px){.application-row{grid-template-columns:minmax(0,1fr) auto}.application-updated{grid-column:1}}
@media(max-width:480px){.application-filters{grid-template-columns:1fr}.application-row{padding:18px 16px;gap:14px}.application-pagination>div{gap:10px}}

.application-status{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:7px 10px;border:1px solid var(--status-border,#dce2e8);border-radius:6px;background:var(--status-bg,#f4f6f8);color:var(--status-text,#4e6073);font:500 13px/1.4 "DM Sans",sans-serif;white-space:nowrap}
.application-status-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:currentColor}
.application-status--review{--status-bg:#faf6ec;--status-border:#e9dec1;--status-text:#786023}
.application-status--shortlisted{--status-bg:#edf4fa;--status-border:#d1e1ed;--status-text:#2e5a7a}
.application-status--interview{--status-bg:#f2eff8;--status-border:#ded6eb;--status-text:#624782}
.application-status--offer{--status-bg:#edf5ef;--status-border:#cfe2d5;--status-text:#2e6441}
.application-status--closed{--status-bg:#f7f0ef;--status-border:#e8d8d5;--status-text:#84534a}
.application-row{grid-template-columns:minmax(0,1fr) 150px 130px auto}
#applicationStatus{border-radius:6px;background-color:#fff;border-color:#d5dde5;color:#344c63;font-family:"DM Sans",sans-serif;font-size:15px}
#applicationStatus:focus-visible{outline:2px solid #315f9e;outline-offset:2px}
@media(max-width:1100px){.application-row{grid-template-columns:minmax(0,1fr) auto}}

.status-filter{position:relative;margin-top:8px;font:15px "DM Sans",sans-serif}
.status-filter summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:46px;padding:12px 14px;border:1px solid #ccd3d9;border-radius:6px;background:#fff;color:#344c63;cursor:pointer}
.status-filter summary::-webkit-details-marker{display:none}
.status-filter summary:hover{border-color:#8ea2b6}
.status-filter[open] summary{border-color:#315f9e}
.status-filter[open] summary svg{transform:rotate(180deg)}
.status-filter-options{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:20;padding:5px;border:1px solid #dce2e8;border-radius:8px;background:#fff;box-shadow:0 8px 24px #10243d18;max-height:280px;overflow-y:auto}
.status-filter-options button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 10px;border:0;border-radius:4px;background:transparent;color:#42556b;text-align:left;font:14px "DM Sans",sans-serif;cursor:pointer}
.status-filter-options button:hover{background:#f3f6f9}
.status-filter-options button[aria-pressed="true"]{background:#edf3f9;color:#203e5c;font-weight:600}
.status-filter-count{font-size:12px;color:#6c7e90;font-variant-numeric:tabular-nums}
.status-filter summary:focus-visible,.status-filter-options button:focus-visible{outline:2px solid #315f9e;outline-offset:2px}

.academic-profile,.resume-studio{background:#fff;border-radius:8px}
.academic-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0 8px}
.academic-fields dt{font:14px "DM Sans",sans-serif;color:#68778b;margin-bottom:8px}
.academic-fields dd{font:500 16px/1.5 "DM Sans",sans-serif;margin:0;color:#20384f;overflow-wrap:anywhere}
.resume-workbench{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:28px;align-items:start}
.resume-templates{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.resume-templates legend{font:500 15px "DM Sans",sans-serif;margin-bottom:12px}
.resume-templates label{cursor:pointer;border:1px solid #d7dfe6;border-radius:6px;padding:12px 8px;background:#fff}
.resume-templates label:has(input:checked){border-color:#315f9e;background:#f0f5fa}
.portal-content .resume-templates input{width:16px;min-height:16px;height:16px;margin:0 0 8px;accent-color:#315f9e}
.resume-templates strong,.resume-templates small{display:block;font-family:"DM Sans",sans-serif}
.resume-templates strong{font-size:15px}.resume-templates small{font-size:13px;line-height:1.4;margin-top:4px;color:#68778b}
.resume-preview{min-width:0;background:#eef1f4;padding:16px;border-radius:6px}
.resume-preview-label{display:block;font:11px "DM Sans",sans-serif;letter-spacing:.1em;color:#52647b;margin-bottom:12px}
.resume-preview iframe{display:block;width:100%;height:760px;background:#fff;border:1px solid #dce2e7}
.resume-buttons{display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:1100px){.resume-workbench{grid-template-columns:1fr}.academic-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.academic-fields{grid-template-columns:1fr}.resume-preview{padding:8px}.resume-preview iframe{height:620px}}

.support-form-container{max-width:800px;margin:28px 0}
.support-request{background:#fff;border:1px solid #dce2e8;border-radius:8px;overflow:hidden;font-family:"DM Sans",sans-serif}
.support-request-heading{padding:28px 32px 24px;border-bottom:1px solid #e8edf1}
.support-request-heading h2{font:600 23px/1.3 "DM Sans",sans-serif;color:#17324d;margin:0 0 10px}
.support-request-heading p{font-size:16px;line-height:1.6;color:#66758a;margin:0}
.support-request-form{padding:28px 32px 0}
.support-request-form>label{display:block;font-size:15px;font-weight:500;line-height:1.5;color:#344c63;margin-bottom:9px}
.portal-content .support-request-form input,.portal-content .support-request-form textarea{display:block;background:#fff;border:1px solid #cbd5df;border-radius:6px;font:16px/1.6 "DM Sans",sans-serif;padding:12px 14px}
.portal-content .support-request-form input{margin-bottom:24px}
.portal-content .support-request-form textarea{min-height:180px;resize:vertical}
.support-request-form input::placeholder,.support-request-form textarea::placeholder{color:#8592a1}
.support-request-form input:focus-visible,.support-request-form textarea:focus-visible{outline:2px solid #315f9e;outline-offset:2px}
.support-field-hint{font-size:15px;line-height:1.5;color:#728092;margin:10px 0 24px}
.support-request-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e8edf1;padding:22px 0}
.support-request-footer p{font-size:15px;line-height:1.5;color:#66758a;margin:0}
.support-request-footer .finder-button{font:500 15px "DM Sans",sans-serif;min-height:44px;padding:12px 22px;border-radius:5px;white-space:nowrap}
@media(max-width:480px){.support-request-heading{padding:24px 20px}.support-request-form{padding:24px 20px 0}.support-request-footer{flex-direction:column;align-items:flex-start}.support-request-footer .finder-button{width:100%}}

.announcements-workspace{max-width:1040px;margin:0 auto;font-family:"DM Sans",sans-serif}
body.finders-page .announcements-workspace .announcements-title{position:static;background:transparent;border:0;padding:0 0 30px;box-shadow:none;backdrop-filter:none}
.announcements-title h1{font:600 30px/1.25 "DM Sans",sans-serif;letter-spacing:-.025em;color:#182e43;margin:0 0 10px}
.announcements-title p{font:400 16px/1.6 "DM Sans",sans-serif;color:#687788;margin:0}
.announcement-feed{border-top:1px solid #cdd5dd}
.announcement-entry{padding:26px 0;border-bottom:1px solid #dce2e7}
.announcement-entry-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px}
.announcement-entry h2{font:600 17px/1.5 "DM Sans",sans-serif;color:#233b51;letter-spacing:0;margin:0}
.announcement-entry time{flex-shrink:0;font:400 13px/1.5 "DM Sans",sans-serif;color:#718091;font-variant-numeric:tabular-nums}
.announcement-entry>p{font:400 15px/1.75 "DM Sans",sans-serif;color:#526477;max-width:760px;margin:9px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.announcements-empty{padding:28px 0;color:#687788;font-size:15px}
@media(max-width:600px){.announcement-entry-heading{flex-direction:column;gap:5px}.announcements-title h1{font-size:27px}.announcement-entry{padding:22px 0}}

.notice-controls{display:flex;gap:22px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin-bottom:24px}
.notice-controls>label{font-size:14px;color:#526477;flex:1;max-width:420px;min-width:200px}.notice-controls input{margin-top:8px}
.notice-filters{display:flex;gap:4px;border-bottom:1px solid #dce2e7}.notice-filters button{background:none;border:0;border-bottom:2px solid transparent;padding:12px 14px;font:14px "DM Sans",sans-serif;color:#687788;cursor:pointer}.notice-filters button[aria-pressed="true"]{border-color:#203e5c;color:#203e5c;font-weight:600}
.notice-title{display:flex;align-items:center;gap:10px;padding:0;border:0;background:none;text-align:left;font:600 17px/1.5 "DM Sans",sans-serif;color:#233b51;cursor:pointer}
.notice-unread{width:6px;height:6px;background:#315f9e;border-radius:50%;flex-shrink:0}
.announcement-entry .notice-excerpt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.announcement-entry>.text-button{font:14px "DM Sans",sans-serif;margin-top:10px}
.notice-original{border-bottom:1px solid #dce2e7;padding-bottom:20px;margin-bottom:20px}.notice-conversation article{border-left:2px solid #dce2e7;padding:0 0 8px 16px;margin:20px 0}.notice-conversation article>div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.notice-conversation p{white-space:pre-wrap;overflow-wrap:anywhere}.notice-conversation small,.notice-original small{font-size:12px;color:#687788}
.notice-filters button:focus-visible,.notice-title:focus-visible{outline:2px solid #315f9e;outline-offset:3px}

/* Compact portal footer after removing the secondary row. */
body.finders-page > footer{padding:22px 0}
.finders-page > footer .footer-top{margin-bottom:0;gap:10px 24px}
@media(max-width:600px){body.finders-page > footer{padding:18px 0}.finders-page > footer .footer-top{gap:8px}}

/* Profile document upload */
.profile-documents{padding:30px!important;overflow:hidden}
.documents-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}
.documents-eyebrow{font:600 10px/1.5 "DM Sans",sans-serif;letter-spacing:.14em;color:#8a692d}
.profile-documents .documents-heading h2{font:600 25px/1.3 "DM Sans",sans-serif;letter-spacing:-.025em;margin:7px 0 8px;color:#20384e}
.profile-documents .documents-heading p{margin:0;color:#718091;font-size:14px;line-height:1.6}
.documents-format{flex-shrink:0;padding:7px 11px;border:1px solid #e4e8eb;border-radius:6px;color:#687788;font:500 12px/1.5 "DM Sans",sans-serif}
.documents-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px}
.documents-upload{gap:20px!important;min-width:0}
.document-types{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}
.document-types legend{padding:0;margin-bottom:12px;font:600 13px/1.5 "DM Sans",sans-serif;color:#334b61}
.profile-documents .document-types label{position:relative;display:flex;flex-direction:row;align-items:flex-start;gap:9px;padding:14px 12px;border:1px solid #dfe5eb;border-radius:8px;cursor:pointer;background:#fff}
.profile-documents .document-types label:has(input:checked){border-color:#365a78;background:#f2f6f9;box-shadow:0 0 0 1px #365a78}
.profile-documents .document-types input{width:15px;height:15px;min-height:0;margin:3px 0 0;accent-color:#294e6c;flex-shrink:0}
.document-types strong{display:block;font:600 13px/1.5 "DM Sans",sans-serif;color:#294258}
.document-types small{display:block;font:400 11px/1.6 "DM Sans",sans-serif;color:#718091;margin-top:4px}
.document-picker{padding:24px 20px;text-align:center;border:1px dashed #b8c8d5;border-radius:10px;background:#fafcfd}
.document-upload-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#eaf0f5;color:#315774;font:24px/1 "DM Sans",sans-serif;margin:0 auto 12px}
.profile-documents .document-picker label{display:block;font:600 14px/1.5 "DM Sans",sans-serif;color:#294258}
.profile-documents .document-picker p{font-size:12px;line-height:1.5;color:#718091;margin:6px 0 16px}
.profile-documents .document-picker input{display:block;max-width:100%;width:100%;min-height:42px;padding:4px;border:0;background:transparent;font:12px "DM Sans",sans-serif;color:#536a7e}
.document-picker input::file-selector-button{background:#fff;border:1px solid #cbd7e1;border-radius:6px;padding:10px 14px;margin-right:12px;color:#294258;font:600 12px "DM Sans",sans-serif;cursor:pointer}
.documents-upload>.finder-button{justify-self:start;gap:24px;background:#203e58;color:#fff;border-radius:6px;font:500 13px "DM Sans",sans-serif;min-height:44px;padding:12px 20px}
.documents-library{border-left:1px solid #e6ebef;padding-left:30px;min-width:0}
.documents-library-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}
.documents-library-heading h3{font:600 13px/1.5 "DM Sans",sans-serif;color:#334b61;margin:0}
.documents-library-heading>span{display:grid;place-items:center;min-width:24px;height:24px;background:#eef2f5;border-radius:6px;color:#657a8e;font:500 12px "DM Sans",sans-serif}
.documents-empty{text-align:center;padding:56px 12px 30px;color:#96a7b7}
.documents-empty svg{margin-bottom:18px}
.documents-empty h4{font:500 14px/1.5 "DM Sans",sans-serif;color:#4b6277;margin:0 0 8px}
.profile-documents .documents-empty p{font:400 13px/1.7 "DM Sans",sans-serif;max-width:235px;margin:0 auto;color:#7c8c9b}
.documents-library .document-list{padding:0;list-style:none;margin-top:18px}
.documents-library .document-list li{display:grid;gap:6px;padding:16px 0;border-bottom:1px solid #e6ebef;overflow-wrap:anywhere}
.documents-library .document-list a{font:500 14px/1.5 "DM Sans",sans-serif;color:#294e6c}
.documents-library .document-list small{font-size:12px;color:#718091}
.profile-documents input:focus-visible{outline:2px solid #365a78;outline-offset:4px}
@media(max-width:900px){.documents-layout{grid-template-columns:1fr}.documents-library{border-left:0;border-top:1px solid #e6ebef;padding:22px 0 0}.documents-empty{padding:28px 12px}}
@media(max-width:540px){.profile-documents{padding:22px 18px!important}.documents-heading{align-items:flex-start;flex-direction:column;gap:12px}.document-types{grid-template-columns:1fr}.documents-upload>.finder-button{width:100%;justify-content:center}.document-picker{padding:20px 12px}}

/* School verification and student résumé workspace. */
.builder-section-heading{display:flex;align-items:flex-start;gap:16px;margin-bottom:28px}
.builder-step{display:grid;place-items:center;flex:none;width:38px;height:38px;border:1px solid #dce4eb;border-radius:10px;color:#6a7e91;font:500 12px "DM Sans",sans-serif;background:#f7f9fb}
.builder-section-heading>div{flex:1}.builder-section-heading h2{font:600 23px/1.3 "DM Sans",sans-serif!important;letter-spacing:-.025em;margin:0 0 8px!important;color:#20384e}.builder-section-heading p{margin:0!important;font:14px/1.6 "DM Sans",sans-serif;color:#738395}
.school-details,.resume-builder-section{padding:30px!important;margin-bottom:28px}
.school-identity{background:#f5f8fa;border:1px solid #e4ebf0;border-radius:8px;padding:18px 20px;margin-bottom:24px}.school-identity>span{display:block;font:600 10px/1.5 "DM Sans",sans-serif;letter-spacing:.12em;color:#748697;margin-bottom:5px}.school-identity strong{font:600 16px/1.5 "DM Sans",sans-serif;color:#294258}.school-identity p{margin:4px 0 0!important;font-size:13px;color:#748697}
.school-form-grid,.resume-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px;border:0;padding:0;margin:0;min-width:0}.school-form-grid:disabled{opacity:.7}.school-form-grid label,.resume-editor label{font:500 13px/1.5 "DM Sans",sans-serif;color:#3e566d}.school-form-grid input,.school-form-grid select,.resume-editor input,.resume-editor select,.resume-editor textarea{margin-top:7px;border-radius:6px;border:1px solid #d5dfe7;background:#fff;padding:12px;font:400 14px/1.5 "DM Sans",sans-serif;color:#233c53}.resume-editor textarea{min-height:110px;resize:vertical}.school-form-grid .check-label{display:flex;align-items:center;gap:9px}.school-form-grid .check-label input,.resume-editor .check-label input{width:16px;height:16px;min-height:16px;margin:0;accent-color:#315774}
.school-submit{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:20px;margin-top:5px;border-top:1px solid #e6ebf0}.school-submit p{max-width:430px;margin:0;font-size:13px;line-height:1.6;color:#748697}.school-submit .finder-button{flex-shrink:0}.school-review-note{background:#fff8e9;border-left:3px solid #c6a25b;padding:12px 16px;font:13px/1.6 "DM Sans",sans-serif;color:#795d28;white-space:pre-wrap;overflow-wrap:anywhere}
.resume-builder-section .resume-workbench{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}.resume-editor{min-width:0}.resume-editor .field-group{gap:22px}.school-template-policy{padding-bottom:22px;border-bottom:1px solid #e5ebf0}.school-template-policy small{display:block;margin-top:9px;font:12px/1.5 "DM Sans",sans-serif;color:#7a8a99}.resume-editor-group{display:grid;gap:16px}.resume-editor-group h3,.resume-evidence h3{font:600 15px/1.5 "DM Sans",sans-serif;color:#294258;margin:0}.builder-field-note{font:12px/1.6 "DM Sans",sans-serif!important;color:#7a8a99!important;margin:0!important}.resume-editor .check-label{display:flex;flex-direction:row;align-items:center;gap:9px}
.resume-builder-section .finder-button,.school-details .finder-button{font:500 13px/1.5 "DM Sans",sans-serif;border-radius:6px;min-height:44px;padding:11px 18px;gap:15px}.resume-builder-section .finder-button:not(.secondary),.school-details .finder-button{background:#233f58;color:#fff}.finder-button:disabled{opacity:.5;cursor:not-allowed}
.resume-builder-section .resume-preview{position:sticky;top:20px;padding:18px;background:#edf1f4;border:1px solid #e1e7ed;border-radius:10px;display:grid;gap:16px}.resume-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.resume-preview-toolbar .resume-preview-label{margin:0}.resume-preview-toolbar .text-button{font:12px "DM Sans",sans-serif;color:#49657d}.resume-builder-section .resume-preview iframe{height:720px;box-shadow:0 7px 18px #263d5110}.resume-preview>.finder-button{justify-content:center}
.resume-evidence{border:1px solid #dce5ed;border-radius:8px;padding:20px;margin-top:28px;background:#f9fbfc}.evidence-title{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.evidence-title>span{font:500 10px "DM Sans",sans-serif;color:#61798c;border:1px solid #d7e2e9;background:#eef4f7;border-radius:4px;padding:5px 8px}.resume-evidence>p{font:13px/1.7 "DM Sans",sans-serif;color:#6d8192;margin:12px 0 18px}.evidence-upload{display:grid;gap:12px}.evidence-upload label{font-size:12px}.evidence-upload label small{display:block;font-size:11px;color:#8393a1;margin-top:4px}.evidence-upload input[type=file]{width:100%;min-width:0;border:1px dashed #bdcdd9;background:#fff;padding:12px;font-size:12px}.evidence-upload input::file-selector-button{border:1px solid #cbd7e1;border-radius:4px;background:#f4f7f9;color:#294258;padding:8px;margin-right:10px}.evidence-upload button{justify-self:start}.evidence-receipts{padding:0;margin:16px 0 0;list-style:none}.evidence-receipts li{display:grid;gap:4px;padding:10px 0;border-top:1px solid #e2e9ee;overflow-wrap:anywhere;font-size:13px}.evidence-receipts small{font-size:11px;color:#7a8a99}.resume-evidence .evidence-empty{font-size:12px;margin-bottom:0}
.resume-application-file{border-top:1px solid #d5dfe7;padding-top:16px;font:13px/1.6 "DM Sans",sans-serif;color:#607689}.resume-application-file summary{cursor:pointer;font-weight:500}.resume-application-file .field-group{margin-top:16px}
#portalDialog:has(.resume-full-preview){width:min(920px,95vw);max-width:920px}.resume-download-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.resume-download-bar p{font-size:13px;color:#6c8091}.resume-full-preview{display:block;border:1px solid #dde4ea;width:100%;height:70vh;background:#fff}.records-subheading{margin:32px 0 20px;font-size:22px}
@media(max-width:1100px){.resume-builder-section .resume-workbench{grid-template-columns:1fr}.resume-builder-section .resume-preview{position:static}}
@media(max-width:640px){.school-details,.resume-builder-section{padding:22px 18px!important}.school-form-grid,.resume-field-grid{grid-template-columns:1fr}.builder-section-heading{gap:10px;flex-wrap:wrap}.builder-section-heading>.status{margin-left:48px}.school-submit,.resume-download-bar{align-items:stretch;flex-direction:column;gap:14px}.school-submit .finder-button{justify-content:center}.resume-builder-section .resume-preview{padding:10px}.resume-builder-section .resume-workbench{gap:24px}.resume-buttons>.finder-button{flex:1}}

/* Separate editor and résumé preview pages. */
.resume-builder-section .resume-workbench{grid-template-columns:minmax(0,1fr);max-width:900px;margin:0 auto}
.resume-preview-page{max-width:1000px;margin:0 auto;padding:28px!important}
.resume-preview-page .workspace-heading h1{font-size:46px}
.resume-preview-page .workspace-heading p{font-size:19px}
.resume-preview-page .resume-full-preview{height:1000px;max-height:none;box-shadow:0 8px 24px #263d5110}
.resume-preview-page .resume-download-bar p{font-size:17px;color:#4e6376}
.resume-preview-page .resume-download-bar small{font:16px/1.5 "DM Sans",sans-serif;color:#6a7e91}
.resume-preview-page .resume-application-file{margin-top:24px;font-size:15px}
.resume-preview-page .resume-application-file summary{font-size:16px}
@media(max-width:640px){.resume-preview-page{padding:16px!important}.resume-preview-page .resume-full-preview{height:75vh;min-height:500px}.resume-preview-page .resume-buttons .finder-button{flex:1;justify-content:center}}

/* Comfortable school inputs and clearly defined dropdown controls. */
.school-details .school-form-grid{gap:22px 24px}
.school-details .school-form-grid>label{font-size:14px;line-height:1.5;color:#354e65}
.school-details .school-form-grid input:not([type="checkbox"]),
.school-details .school-form-grid select,
.resume-editor select{
 min-height:54px;padding:14px 16px;border:1px solid #bdccd9;border-radius:10px;
 background-color:#fff;color:#203b52;font-size:16px;line-height:1.5;
 box-shadow:0 2px 4px rgba(25,51,75,.035);transition:border-color .15s,box-shadow .15s,background-color .15s;
}
.school-details .school-form-grid select,.resume-editor select{
 appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:58px;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2335516b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"),linear-gradient(to left,#eef3f7 0,#eef3f7 46px,transparent 46px);
 background-repeat:no-repeat;background-position:right 15px center,right center;background-size:18px 18px,100% 100%;
}
.school-details .school-form-grid input:not([type="checkbox"]):hover:not(:disabled),
.school-details .school-form-grid select:hover:not(:disabled),.resume-editor select:hover:not(:disabled){border-color:#829fb6;background-color:#fcfdff}
.school-details .school-form-grid input:not([type="checkbox"]):focus-visible,
.school-details .school-form-grid select:focus-visible,.resume-editor select:focus-visible{outline:0;border-color:#3c6586;box-shadow:0 0 0 4px rgba(60,101,134,.13)}
.school-details .school-form-grid select:disabled,.resume-editor select:disabled{cursor:not-allowed}
@media(prefers-reduced-motion:reduce){.school-details .school-form-grid input,.school-details .school-form-grid select,.resume-editor select{transition:none}}

.school-details .school-submit .finder-button{font-size:15px}

.school-details .school-submit p{font-size:15px}
.school-details .builder-section-heading p{font-size:16px}
.school-details .builder-section-heading>.status{font-size:14px;line-height:1.5}

.school-details .school-identity>span{font-size:12px}
.school-details .school-identity strong{font-size:18px}
.school-details .school-identity p{font-size:15px}

/* Education verification status. */
.school-details .education-status-row{display:flex;justify-content:flex-end;margin-bottom:24px}
.school-details .education-status{display:inline-flex;align-items:center;gap:9px;padding:9px 15px;border:1px solid #d5dfe8;border-radius:999px;background:#f3f6f9;color:#526b80;font:500 14px/1.4 "DM Sans",sans-serif;box-shadow:0 2px 4px rgba(28,53,76,.03)}
.education-status-dot{width:7px;height:7px;flex:none;border-radius:50%;background:currentColor;opacity:.8}
.school-details .education-status.is-pending{background:#fff8e9;border-color:#ebd9b0;color:#88662b}
.school-details .education-status.is-returned{background:#fff2eb;border-color:#edd4c5;color:#985d3a}
.school-details .education-status.is-verified{background:#eef7f1;border-color:#cce3d4;color:#3d7457}

/* Readable typography throughout the résumé editor. */
#workspace:has(.resume-builder-section),
#workspace:has(.resume-builder-section) *{font-family:"Newsreader",Georgia,serif!important}
#workspace:has(.resume-builder-section) .workspace-heading h1{font-weight:600;line-height:1.2;color:#183249}
#workspace:has(.resume-builder-section) .workspace-heading p{font-size:18px;line-height:1.65;color:#4e6376}
.resume-builder-section .builder-section-heading h2{font-size:26px!important;line-height:1.35!important}
.resume-builder-section .builder-section-heading p{font-size:17px;line-height:1.65;color:#4e6376}
.resume-builder-section .resume-editor-group h3,.resume-builder-section .resume-evidence h3{font-size:19px;line-height:1.5;color:#233e55}
.resume-builder-section .resume-editor label{font-size:16px;font-weight:500;line-height:1.5;color:#304b62}
.resume-builder-section .resume-editor input,.resume-builder-section .resume-editor textarea,.resume-builder-section .resume-editor select{font-size:16px;line-height:1.6;color:#203b52}
.resume-builder-section .school-template-policy small,
.resume-builder-section .builder-field-note{font-size:15px!important;line-height:1.7!important;color:#526779!important}
.resume-builder-section .finder-button{font-size:16px;font-weight:500;min-height:48px}
.resume-builder-section .resume-evidence>p{font-size:16px;line-height:1.75;color:#4e6376}
.resume-builder-section .evidence-title>span{font-size:13px;line-height:1.5;color:#3f5c71;padding:6px 10px}
.resume-builder-section .evidence-upload label small,.resume-builder-section .evidence-receipts small{font-size:14px;line-height:1.6;color:#526779}
.resume-builder-section .evidence-upload input[type=file],.resume-builder-section .evidence-upload input::file-selector-button{font-size:15px}
.resume-builder-section .evidence-receipts li{font-size:15px;line-height:1.6}
.resume-builder-section .resume-evidence .evidence-empty{font-size:15px;line-height:1.7;color:#526779}
.resume-builder-section .resume-editor-group{gap:18px}
@media(max-width:640px){#workspace:has(.resume-builder-section) .workspace-heading h1{font-size:32px}.resume-builder-section .builder-section-heading h2{font-size:24px!important}}

/* Individual résumé entries and evidence beside the relevant role. */
.resume-repeat-section,.resume-skills{border-top:1px solid #e0e7ed;padding-top:26px;display:grid;gap:16px}
.resume-repeat-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.resume-repeat-heading h3,.resume-skills h3{margin:0;font-size:21px;line-height:1.4;color:#233e55;font-weight:600}
.resume-add{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #b8cbd9;border-radius:8px;padding:10px 14px;min-height:44px;background:#f5f9fc;color:#294c68;font-size:16px;font-weight:500;cursor:pointer}
.resume-add>span{font-size:22px;line-height:1}.resume-add:hover{background:#eaf2f8;border-color:#809eb5}
.resume-entry-list{display:grid;gap:22px;min-width:0}
.resume-entry{min-width:0;border:1px solid #d5e0e8;border-radius:12px;padding:22px;background:#fff;display:grid;gap:18px;margin:0}
.resume-entry legend{font-size:16px;font-weight:600;color:#426079;padding:0 8px}
.resume-entry-toolbar{display:flex;justify-content:flex-end;margin-top:-8px;margin-bottom:-4px}
.resume-remove{border:0;background:transparent;color:#945344;text-decoration:underline;text-underline-offset:3px;padding:6px 0;min-height:36px;font-size:15px;cursor:pointer}
.entry-evidence{border-top:1px solid #e0e8ee;padding:18px;margin-top:4px;border-radius:8px;background:#f5f8fb;display:grid;gap:12px}
.entry-evidence-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.entry-evidence-heading strong{font-size:16px;font-weight:600;color:#304e66}
.entry-evidence-heading>span{font-size:13px;padding:5px 9px;border-radius:5px;border:1px solid #cfdee8;background:#edf3f7;color:#44637a}
.entry-evidence>p{margin:0;font-size:15px;line-height:1.65;color:#536b7e}
.entry-evidence label small{display:block;font-size:14px;line-height:1.5;color:#586f82;margin:4px 0 8px}
.entry-evidence input[type=file]{background:white;border:1px dashed #b5c9d8;padding:12px;font-size:15px;max-width:100%}
.entry-evidence input::file-selector-button{background:#f2f6fa;border:1px solid #c4d4e0;border-radius:6px;padding:9px 12px;margin-right:10px;font-family:inherit;font-size:15px;color:#31516a;cursor:pointer}
.entry-evidence>.finder-button{justify-self:start}.entry-evidence .evidence-receipts{margin:0}
.entry-evidence .evidence-receipts:empty{display:none}
.entry-evidence .evidence-receipts li{font-size:15px;line-height:1.5;color:#324f66}.entry-evidence .evidence-receipts small{font-size:13px;color:#566e80}
.resume-skill-input{display:flex;align-items:center;gap:12px}.resume-skill-input input{flex:1;margin-top:0!important}.resume-skill-input button{flex:none}
#resumeSkills{display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0;list-style:none}
.resume-skill{display:inline-flex;align-items:center;gap:8px;padding:5px 5px 5px 14px;border:1px solid #cddde8;border-radius:999px;background:#f0f5f9;color:#2d4e68;font-size:16px;line-height:1.5;max-width:100%}
.resume-skill>span{overflow-wrap:anywhere}.resume-skill button{border:0;border-radius:50%;width:34px;height:34px;flex:none;background:transparent;color:#55738a;font-size:24px;line-height:1;cursor:pointer}.resume-skill button:hover{background:#dce8f1;color:#223e55}
.resume-add:focus-visible,.resume-remove:focus-visible,.resume-skill button:focus-visible{outline:2px solid #3c6586;outline-offset:3px}
@media(max-width:640px){.resume-entry{padding:16px 12px}.entry-evidence{padding:14px 12px}.resume-repeat-heading{align-items:flex-start;flex-direction:column}.resume-skill-input{align-items:stretch;flex-direction:column}.entry-evidence>.finder-button{width:100%;justify-content:center}}

.finders-header nav{position:relative}.header-profile{overflow:hidden}.header-profile img{width:100%;height:100%;object-fit:cover}.account-menu{position:absolute;right:0;top:calc(100% - 8px);z-index:100;width:230px;padding:8px;background:#fff;border:1px solid #d7dee5;border-radius:12px;box-shadow:0 12px 32px #10243d26}.account-menu button{display:block;width:100%;padding:12px 14px;background:none;border:0;border-radius:6px;text-align:left;color:#173654;font:15px "DM Sans",sans-serif;cursor:pointer}.account-menu button:hover,.account-menu button:focus-visible{background:#edf2f6}.account-menu button:last-child{border-top:1px solid #e1e7ed;border-radius:0;margin-top:4px}.account-details{display:grid;gap:12px}.account-details dt{font-weight:600}.account-details dd{margin:0 0 8px;overflow-wrap:anywhere}

/* Compact account popups. */
#portalDialog:has(.account-details,#accountSettingsForm,#accountPictureForm){width:min(420px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:22px;border:1px solid #e0e6eb;border-radius:16px;background:#fff;box-shadow:0 20px 70px #07163033}
#portalDialog:has(.account-details,#accountSettingsForm,#accountPictureForm) .dialog-top{margin-bottom:10px}
#portalDialog:has(.account-details,#accountSettingsForm,#accountPictureForm) .dialog-top .eyebrow{font-size:10px;letter-spacing:.12em}
#portalDialog:has(.account-details,#accountSettingsForm,#accountPictureForm) .dialog-top>button{width:32px;height:32px;font-size:22px;background:#f0f3f6}
#portalDialog:has(.account-details,#accountSettingsForm,#accountPictureForm) h2{font-size:27px;margin:0 0 16px}
#portalDialog:has(.account-details,#accountSettingsForm,#accountPictureForm) p{font:13px/1.55 "DM Sans",sans-serif;margin:0;overflow-wrap:anywhere}
#portalDialog:has(#accountSettingsForm,#accountPictureForm) .field-group{gap:14px}
#portalDialog:has(#accountSettingsForm,#accountPictureForm) label{font:500 13px/1.5 "DM Sans",sans-serif;gap:6px}
#portalDialog:has(#accountSettingsForm,#accountPictureForm) input{font:14px/1.4 "DM Sans",sans-serif;min-height:42px;padding:10px 12px;border-radius:8px;background:#fafbfc}
#portalDialog:has(#accountSettingsForm,#accountPictureForm) .finder-button{font:500 14px/1.3 "DM Sans",sans-serif;min-height:42px;padding:10px 16px;border-radius:8px;margin-top:2px}
#accountPictureForm input[type=file]{padding:8px;font-size:12px}
#accountPictureForm input::file-selector-button{border:0;border-radius:5px;background:#e9eff5;color:#173654;padding:7px 9px;margin-right:8px;font:500 12px "DM Sans",sans-serif;cursor:pointer}
#dialogBody .account-details{gap:0;margin:0;font:16px/1.5 "DM Sans",sans-serif}
#dialogBody .account-details>div{padding:9px 0;border-bottom:1px solid #edf0f3}
#dialogBody .account-details>div:first-child{padding-top:0}
#dialogBody .account-details>div:last-child{border:0;padding-bottom:0}
#dialogBody .account-details dt{font-size:13px;font-weight:500;color:#6a7e91;margin-bottom:2px}
#dialogBody .account-details dd{margin:0;color:#173654}

#portalDialog:has(.account-details,#accountSettingsForm,#accountPictureForm) #dialogError{font-size:15px;line-height:1.55;margin-top:14px}

.resume-order{margin:0 0 22px;padding:16px 18px;background:#f7f9fb;border:1px solid #e0e6ed;border-radius:10px;font:16px/1.5 "DM Sans",sans-serif}.resume-order summary{font-weight:600;cursor:pointer;color:#173654}.resume-order p{font-size:15px;color:#60748a;margin:12px 0}.resume-order ol{padding:0;margin:8px 0 16px;list-style:none}.resume-order li,.resume-order-fixed{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #e3e9ef}.resume-order-fixed{font-weight:600}.resume-order-fixed span{font-size:13px;color:#667b90;background:#e8edf3;border-radius:4px;padding:3px 7px}.resume-order li>div{display:flex;gap:6px}.resume-order li button{width:34px;height:34px;background:#fff;border:1px solid #cbd7e2;border-radius:6px;color:#173654;font-size:18px;cursor:pointer}.resume-order li button:disabled{opacity:.35;cursor:default}.resume-order li button:focus-visible{outline:2px solid #315f9e;outline-offset:2px}

.resume-order li button.resume-section-toggle{width:auto;padding:0 10px;font:500 13px "DM Sans",sans-serif}.resume-section-hidden{display:block;font-size:12px;color:#6a7e91;font-weight:400}@media(max-width:540px){.resume-order li{flex-wrap:wrap}.resume-order li>div{margin-left:auto}}

/* Clear, spacious registration dropdowns. */
.auth-card #signupRole,
.auth-card #signupInstitutionCountry,
.auth-card #signupInstitution {
  appearance: none;
  -webkit-appearance: none;
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 54px;
  height: 54px;
  padding: 13px 46px 13px 15px;
  border: 2px solid #8fa7bd;
  border-radius: 8px;
  background-color: #f8fafc;
  background-image:
    linear-gradient(45deg, transparent 50%, #294d70 50%),
    linear-gradient(135deg, #294d70 50%, transparent 50%);
  background-position:
    calc(100% - 22px) 24px,
    calc(100% - 16px) 24px;
  background-size: 6px 6px;
  background-repeat: no-repeat;
  color: #10243d;
  font: 500 16px/1.4 "DM Sans", sans-serif;
  cursor: pointer;
  box-shadow: 0 2px 4px #1736540a;
}.auth-card #signupRole:hover,.auth-card #signupInstitution:hover{border-color:#557b9d;background-color:#fff}
.auth-card #signupRole:focus-visible,.auth-card #signupInstitution:focus-visible{outline:3px solid #315f9e33;outline-offset:2px;border-color:#315f9e}
@media(forced-colors:active){.auth-card #signupRole,.auth-card #signupInstitution{appearance:auto;background-image:none}}

/* Alumni overview. */
.alumni-overview{max-width:1100px;margin:0 auto;display:grid;gap:24px}
.alumni-intro{padding:30px 32px;background:#fff;border:1px solid #dce5f4;border-top:3px solid #0845d6;border-radius:12px;color:#031b3e}
body.finders-page .alumni-intro .eyebrow{font:500 12px/1.5 "DM Sans",sans-serif;letter-spacing:.1em;color:#0845d6;-webkit-text-fill-color:#0845d6;border-color:#0845d6;background:transparent;margin:0 0 14px}
.alumni-intro h1{font-size:clamp(30px,3.3vw,42px);font-weight:500;line-height:1.15;margin:0 0 12px;color:#031b3e}
.alumni-intro p{font:16px/1.6 "DM Sans",sans-serif;color:#526580;max-width:600px;margin:0}
.alumni-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.alumni-metrics button{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:20px 22px;background:#fff;border:1px solid #e0e6eb;border-radius:10px;text-align:left;color:#173654;cursor:pointer}
.alumni-metrics button:hover{border-color:#8fa7bd;background:#fafcfe}
.alumni-metrics button:focus-visible{outline:2px solid #315f9e;outline-offset:3px}
.alumni-metrics span{font:14px/1.4 "DM Sans",sans-serif;color:#60748a}
.alumni-metrics strong{font:500 25px/1.3 "DM Sans",sans-serif}
.alumni-opportunities{padding:24px;background:#fff;border:1px solid #e0e6eb;border-radius:12px}
.alumni-opportunities .section-bar{margin:0 0 20px;gap:16px;flex-wrap:wrap}
.alumni-opportunities h2{font:600 20px/1.4 "DM Sans",sans-serif;margin:0}
.alumni-opportunities .text-button{font-size:15px}
.alumni-empty{padding:30px 20px;background:#f7f9fb;border-radius:8px;text-align:center}
.alumni-empty h3{font:500 17px/1.5 "DM Sans",sans-serif;margin:0 0 6px;color:#344c68}
.alumni-empty p{font:14px/1.6 "DM Sans",sans-serif;margin:0;color:#6a7e91}
@media(max-width:600px){.alumni-overview{gap:18px}.alumni-intro{padding:24px}.alumni-metrics{gap:10px}.alumni-metrics button{padding:16px 12px}.alumni-metrics strong{font-size:20px}.alumni-opportunities{padding:20px}}
@media(max-width:380px){.alumni-metrics{grid-template-columns:1fr}.alumni-metrics button{flex-direction:row;align-items:center;justify-content:space-between}}

body.finders-page .alumni-intro{--signal:#0845d6;--cyan:#0845d6;--ink:#031b3e;background:#fff;color:#031b3e}
body.finders-page .alumni-intro h1{color:#031b3e;-webkit-text-fill-color:#031b3e}
body.finders-page .alumni-intro p{color:#526580;-webkit-text-fill-color:#526580}

/* Actions beside the live résumé document. */
.portal-shell:has(.resume-preview-page){max-width:1700px}
.resume-preview-page{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px;align-items:start;max-width:none;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
.resume-preview-actions{min-width:0;padding:20px;background:#fff;border:1px solid #e0e6ed;border-radius:12px}
.resume-preview-actions .resume-download-bar{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin-bottom:20px}
.resume-preview-actions .resume-download-bar small{display:block;margin-top:8px}
.resume-preview-actions .resume-buttons{display:grid;grid-template-columns:1fr;gap:8px}
.resume-preview-actions .resume-buttons .finder-button{width:100%;justify-content:center}
.resume-preview-actions .resume-order{padding:16px 0 0;margin:0;background:transparent;border:0;border-top:1px solid #e0e6ed;border-radius:0}
.resume-preview-actions .resume-order li{flex-wrap:wrap;gap:8px}
.resume-preview-actions .resume-order li>div{margin-left:auto}
.resume-preview-document{min-width:0;position:sticky;top:20px;padding:12px;background:#edf1f6;border:1px solid #dce4ed;border-radius:12px}
.resume-preview-page .resume-full-preview{height:calc(100dvh - 110px);min-height:600px;max-height:none;border:1px solid #d5dee8}
@media(max-width:1050px){.resume-preview-page{grid-template-columns:1fr;padding:0!important}.resume-preview-document{position:static}.resume-preview-actions .resume-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.resume-preview-actions .resume-order li{flex-wrap:nowrap}.resume-preview-page .resume-full-preview{height:80dvh;min-height:500px}}
@media(max-width:480px){.resume-preview-actions{padding:16px}.resume-preview-actions .resume-order li{flex-wrap:wrap}.resume-preview-document{padding:6px}.resume-preview-actions .resume-buttons{grid-template-columns:1fr}}

.membership-pricing{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;margin:24px 0}.membership-pricing>div{padding:22px;background:#f7f9fc;border:1px solid #dce5f4;border-radius:10px}.membership-pricing>div>span{display:block;font:500 15px "DM Sans",sans-serif;color:#526580}.membership-pricing strong{display:block;font:600 32px/1.3 "DM Sans",sans-serif;color:#031b3e;margin:10px 0}.membership-pricing strong small{font-size:15px;font-weight:400}.membership-pricing p,.alumni-membership>p{font:16px/1.6 "DM Sans",sans-serif;color:#526580}.membership-pricing dl{font:14px/1.5 "DM Sans",sans-serif;margin:16px 0 0}.membership-pricing dl>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid #dce5f4}.membership-pricing dd{margin:0;white-space:nowrap;font-weight:600}@media(max-width:700px){.membership-pricing{grid-template-columns:1fr}}

/* Employer hiring overview. */
.employer-overview{max-width:1200px;margin:auto;display:grid;gap:24px}.employer-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:#fff;border:1px solid #dce5f4;border-top:3px solid #0845d6;border-radius:12px}.employer-intro>div{max-width:640px}body.finders-page .employer-intro .eyebrow{font:500 12px/1.5 "DM Sans",sans-serif;color:#0845d6;-webkit-text-fill-color:#0845d6;border-color:#0845d6;margin:0 0 14px}.employer-intro h1{font-size:clamp(30px,3vw,40px);line-height:1.15;font-weight:500;color:#031b3e;margin:0 0 12px}.employer-intro p{font:16px/1.6 "DM Sans",sans-serif;color:#526580;margin:0}.employer-intro>.finder-button{flex-shrink:0;background:#0845d6;border-color:#0845d6;color:#fff;font-size:15px;padding:12px 16px}.employer-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.employer-metrics button{display:grid;gap:12px;text-align:left;background:#fff;border:1px solid #e0e6ed;padding:20px;border-radius:10px;cursor:pointer}.employer-metrics span{font:14px/1.5 "DM Sans",sans-serif;color:#526580}.employer-metrics strong{font:600 29px "DM Sans",sans-serif;color:#031b3e}.employer-metrics button:hover{border-color:#0845d6}.employer-columns{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.employer-main,.employer-side{display:grid;gap:24px}.employer-card{padding:24px;background:#fff;border:1px solid #e0e6ed;border-radius:12px;min-width:0}.employer-card h2,.employer-review h2{font:600 19px/1.4 "DM Sans",sans-serif;margin:0 0 16px;color:#031b3e}.employer-card .section-bar{gap:12px;flex-wrap:wrap;margin-bottom:18px}.employer-card .section-bar h2{margin:0}.employer-card .text-button{font-size:14px;color:#0845d6}.employer-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-top:1px solid #e7edf3}.employer-row h3,.employer-empty h3,.employer-company{font:500 16px/1.5 "DM Sans",sans-serif;color:#173654;margin:0 0 5px;overflow-wrap:anywhere}.employer-card p,.employer-review p{font:14px/1.6 "DM Sans",sans-serif;color:#60748a;margin:6px 0 14px}.employer-row small{font:12px "DM Sans",sans-serif;color:#60748a}.employer-empty{background:#f7f9fc;padding:24px;border-radius:8px}.employer-empty p{margin:0}.employer-shortcut{display:block;width:100%;text-align:left;background:none;border:0;border-top:1px solid #e7edf3;padding:14px 0;color:#0845d6;font:14px/1.5 "DM Sans",sans-serif;cursor:pointer}.employer-review{padding:22px;border:1px solid #dce5f4;background:#f0f5ff;border-radius:10px}.employer-review p{margin:0}.employer-overview button:focus-visible{outline:2px solid #0845d6;outline-offset:3px}@media(max-width:1200px){.employer-intro{align-items:flex-start;flex-direction:column}.employer-columns{grid-template-columns:1fr}.employer-side{grid-template-columns:repeat(2,minmax(0,1fr))}.employer-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){.employer-side{grid-template-columns:1fr}.employer-intro,.employer-card{padding:20px}.employer-row{flex-wrap:wrap}.employer-metrics button{padding:16px}.employer-empty{padding:18px}}

.candidate-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin-bottom:22px}.candidate-filters input,.candidate-filters select{min-height:46px}#portalDialog .field-group select{
 min-height:54px;padding:14px 52px 14px 16px;border:1px solid #bdccd9;border-radius:10px;
 background-color:#fff;color:#203b52;font:400 16px/1.5 "DM Sans",sans-serif;
 box-shadow:0 2px 4px rgba(25,51,75,.035);transition:border-color .15s,box-shadow .15s;
 appearance:none;-webkit-appearance:none;cursor:pointer;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2335516b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"),linear-gradient(to left,#eef3f7 0,#eef3f7 46px,transparent 46px);
 background-repeat:no-repeat;background-position:right 15px center,right center;background-size:18px 18px,100% 100%;
}
#portalDialog .field-group select:hover:not(:disabled){border-color:#829fb6;background-color:#fcfdff}
#portalDialog .field-group select:focus-visible{outline:0;border-color:#3c6586;box-shadow:0 0 0 4px rgba(60,101,134,.13)}
#jobPayFields{margin:0;padding:16px;border:1px solid #dce5f4;border-radius:8px}#jobPayFields:disabled{opacity:.5}@media(max-width:700px){.candidate-filters{grid-template-columns:1fr}}

.candidate-filters #candidateJob,.candidate-filters #candidateStage{min-height:52px;height:52px;padding:12px 38px 12px 14px;border:2px solid #8fa7bd;border-radius:8px;background-color:#f8fafc;font:400 16px/1.4 "DM Sans",sans-serif;color:#10243d;cursor:pointer}
.candidate-filters #candidateJob:focus-visible,.candidate-filters #candidateStage:focus-visible{outline:3px solid #0845d633;outline-offset:2px;border-color:#0845d6}

/* Consistent Finders welcome colours across account types. */
body.finders-page .employer-intro{--signal:#0845d6;--cyan:#0845d6;--ink:#031b3e;background:#fff;color:#031b3e;border-color:#10243d;border-top-color:#10243d}
body.finders-page .employer-intro h1,body.finders-page .student-overview .workspace-heading h1{color:#031b3e;-webkit-text-fill-color:#031b3e}
body.finders-page .employer-intro p,body.finders-page .student-overview .workspace-heading p{color:#526580;-webkit-text-fill-color:#526580}
body.finders-page .employer-intro>.finder-button{background:#10243d;border-color:#173654;color:#fff;-webkit-text-fill-color:#fff}
body.finders-page .employer-intro>.finder-button:hover{background:#173654;border-color:#173654}

.finders-header .account-menu{right:24px}
@media(max-width:760px){body.finders-page .finders-header nav.wrap{padding-inline:20px}.finders-header .account-menu{right:20px}}

.employer-side .status{font-size:14px}
.employer-side .employer-card h2{font-size:20px}
.employer-side .employer-card p,.employer-side .employer-card .text-button,.employer-side .employer-shortcut{font-size:16px}

.employer-main .employer-card h2{font-size:20px}
.employer-main .employer-card .text-button{font-size:16px}
.employer-main .employer-empty h3{font-size:18px}
.employer-main .employer-empty p{font-size:16px}

/* Shared summary-card font sizes for all three dashboards. */
.student-metrics span,.alumni-metrics span,.employer-metrics span{font-size:16px}
.student-metrics strong,.alumni-metrics strong,.employer-metrics strong{font-size:28px}

/* Staff access and accountable actions. */
[data-login="admin"] .finders-auth{align-items:start}
[data-login="admin"] .auth-story h1{font-size:clamp(38px,4.5vw,62px)}
[data-login="admin"] .auth-story>p{font-size:19px;line-height:1.6;margin:22px 0}
.staff-role-list{display:grid;gap:18px;margin-top:28px}
.staff-role-list article{display:flex;gap:16px;border-top:1px solid #dce0da;padding-top:18px}
.staff-role-list article>span{color:#8a6a29;font-size:13px;padding-top:4px}
.staff-role-list h3{font:500 19px/1.4 "DM Sans",sans-serif;letter-spacing:0}
.staff-role-list p{font-size:16px;line-height:1.6;color:#627083;margin:5px 0 0}
.staff-identity{display:flex;gap:10px 16px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #dce0da;padding-bottom:16px;margin-bottom:28px;font-size:16px}
.staff-identity span{background:#eaf0f5;color:#294d70;border-radius:4px;padding:5px 9px;font-size:14px}
.staff-identity small{color:#627083}

.staff-preview-banner{padding:16px 5%;background:#fff3d6;border-bottom:1px solid #dac385;color:#59441c;font:14px/1.6 "DM Sans",sans-serif}.staff-preview-banner nav{display:flex;gap:20px;flex-wrap:wrap;margin-top:8px}.staff-preview-banner a{color:#183e66;text-decoration:underline}

/* Match staff workspaces to the readable account dashboard typography. */
.staff-dashboard #workspace{font-size:17px;line-height:1.6}
.staff-dashboard #workspace .workspace-heading p{font-size:18px;line-height:1.65}
.staff-dashboard #workspace .card p{font-size:17px;line-height:1.65}
.staff-dashboard #workspace .stat-card>span{font-size:16px;line-height:1.5}
.staff-dashboard #workspace .stat-card strong{font-size:28px;line-height:1.3}
.staff-dashboard #workspace .stat-card small{font-size:15px;line-height:1.6}
.staff-dashboard .staff-identity{font-size:18px}
.staff-dashboard .staff-identity span,.staff-dashboard .staff-identity small{font-size:16px;line-height:1.5;overflow-wrap:anywhere}
.staff-dashboard .portal-sidebar #portalNav button{font-size:17px;line-height:1.5;min-height:46px}
.staff-dashboard .sidebar-note,.staff-dashboard .sidebar-note p{font-size:16px;line-height:1.6}
.staff-dashboard #workspace table{font-size:17px;line-height:1.6}
.staff-dashboard #workspace th{font-size:16px;line-height:1.5}
.staff-dashboard #workspace td small{font-size:15px;line-height:1.6;overflow-wrap:anywhere}
.staff-dashboard #workspace .status{font-size:15px;line-height:1.5}
.staff-dashboard #workspace .finder-button,.staff-dashboard #workspace .text-button{font-size:16px;line-height:1.5;min-height:44px}
.staff-dashboard #workspace .muted,.staff-dashboard #workspace .record-list dt{font-size:16px;line-height:1.6}
.staff-dashboard #workspace .eyebrow{font-size:14px;line-height:1.5}
.staff-dashboard #portalDialog p,.staff-dashboard #portalDialog li,.staff-dashboard #portalDialog dd{font-size:17px;line-height:1.65}
.staff-dashboard #portalDialog label,.staff-dashboard #portalDialog dt,.staff-dashboard #portalDialog small{font-size:16px;line-height:1.6}
.staff-dashboard #portalDialog input,.staff-dashboard #portalDialog textarea,.staff-dashboard #portalDialog .field-group select,.staff-dashboard #portalDialog .finder-button,.staff-dashboard #portalDialog .text-button{font-size:16px;line-height:1.5}
@media(max-width:760px){.staff-dashboard #workspace .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-dashboard .staff-identity{align-items:flex-start}}
@media(max-width:480px){.staff-dashboard #workspace .stat-grid{grid-template-columns:1fr}}
/* Registration email guidance */
.auth-card #signupNote:not([hidden]){
  display:block;
  width:100%;
  margin:0;
  font-size:16px;
  line-height:1.5;
  color:#647488;
}
#institutionCountryLabel{
  font-size:16px;
}
#institutionCountryLabel{
  font-size:16px;
}

#institutionLabel{
  display:block;
  margin-top:18px;
}
#registrationConsent .check-label{
  font-size:16px;
  line-height:1.5;
}
.institution-help {
  margin-top: 8px;
}
.institution-help span {
  display: block;
  margin-top: 2px;
  line-height: 1.27;
}
.institution-help span {
  display: block;
  margin-top: 2px;
  line-height: 1.2;
  color: #667085;
}

.institution-help a {
  color: #2563eb;
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 500;
}

.institution-help a:hover {
  color: #1d4ed8;
}
/* ============================================================
   FINDERS — STRONGER TEXT CONTRAST
============================================================ */

/* Login */
body.finders-page .auth-story > p,
body.finders-page .auth-card > p,
body.finders-page .auth-card .muted,
body.finders-page .auth-card .field-hint,
body.finders-page .auth-card .auth-footnote,
body.finders-page .auth-card .check-label {
  color: #4f6074;
}

/* Dashboard secondary text */
body.finders-page .workspace-heading p,
body.finders-page .card p,
body.finders-page .muted,
body.finders-page .portal-tools,
body.finders-page .portal-account > span:last-child,
body.finders-page .sidebar-note p,
body.finders-page .job-card .job-employer,
body.finders-page .job-card .job-summary,
body.finders-page .application-role p,
body.finders-page .application-updated,
body.finders-page td small {
  color: #4f6074;
}

/* Form labels */
body.finders-page .field-group label,
body.finders-page .search-row label > span,
body.finders-page .application-filters,
body.finders-page .role-label {
  color: #42546a;
}

/* Small supporting text */
body.finders-page .stat-card > span,
body.finders-page .stat-card small,
body.finders-page .record-list dt,
body.finders-page .job-deadline,
body.finders-page .salary small {
  color: #536579;
}
/* Login */
body.finders-page .auth-story > p,
body.finders-page .auth-card > p,
body.finders-page .auth-card .muted,
body.finders-page .auth-card .field-hint,
body.finders-page .auth-card .auth-footnote,
body.finders-page .auth-card .check-label {
  color: #35485e;
}

/* Dashboard secondary text */
body.finders-page .workspace-heading p,
body.finders-page .card p,
body.finders-page .muted,
body.finders-page .portal-tools,
body.finders-page .portal-account > span:last-child,
body.finders-page .sidebar-note p,
body.finders-page .job-card .job-employer,
body.finders-page .job-card .job-summary,
body.finders-page .application-role p,
body.finders-page .application-updated,
body.finders-page td small {
  color: #35485e;
}

/* Form labels */
body.finders-page .field-group label,
body.finders-page .search-row label > span,
body.finders-page .application-filters,
body.finders-page .role-label {
  color: #2f4359;
}

/* Small supporting text */
body.finders-page .stat-card > span,
body.finders-page .stat-card small,
body.finders-page .record-list dt,
body.finders-page .job-deadline,
body.finders-page .salary small {
  color: #40546a;
}
/* =========================================================
   STANDARD DROPDOWNS — SAFARI + CHROME
   ========================================================= */

select {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;

  display: block;
  width: 100%;
  height: 48px;

  padding: 0 44px 0 14px;

  font-family: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 48px;

  color: #182637;
  background-color: #ffffff;

  border: 1px solid #cbd3db;
  border-radius: 6px;

  background-image:
    linear-gradient(45deg, transparent 50%, #182637 50%),
    linear-gradient(135deg, #182637 50%, transparent 50%);

  background-position:
    calc(100% - 18px) 21px,
    calc(100% - 13px) 21px;

  background-size: 5px 5px;
  background-repeat: no-repeat;

  box-sizing: border-box;
  cursor: pointer;
}

select:focus {
  outline: none;
  border-color: #182637;
}
/* Country dropdown — match Partner institution exactly */
#signupInstitutionCountry {
  -webkit-appearance: none;
  appearance: none;

  width: 100%;
  min-height: 56px;

  padding: 0 48px 0 16px;

  font: inherit;
  font-size: 16px;

  color: #182637;
  background-color: #ffffff;

  border: 1px solid #b8c5d1;
  border-radius: 8px;

  box-sizing: border-box;
  cursor: pointer;

  /* Dropdown arrow */
  background-image:
    linear-gradient(45deg, transparent 50%, #183b63 50%),
    linear-gradient(135deg, #183b63 50%, transparent 50%);

  background-position:
    calc(100% - 20px) 50%,
    calc(100% - 15px) 50%;

  background-size: 5px 5px;
  background-repeat: no-repeat;
}

#signupInstitutionCountry:focus {
  outline: none;
  border-color: #2f6fbb;
}