.hub-page{color:#0f172a;min-height:100vh;font-family:var(--font-body,"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);background-color:#f8fafc;flex-direction:column;display:flex;overflow-x:hidden}.tf-container{box-sizing:border-box;width:100%;max-width:1440px;margin:0 auto;padding:0 32px}.hub-hero{color:#0f172a;background:#fafbfc;border-bottom:1px solid #e2e8f0;padding:48px 0 40px}.hub-hero-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:#1848b0;margin-bottom:10px;font-size:11px;font-weight:800;display:block}.hub-hero-title{font-family:var(--font-heading,"Plus Jakarta Sans", -apple-system, sans-serif);letter-spacing:-.03em;color:#0f172a;margin:0 0 12px;font-size:clamp(26px,4vw,40px);font-weight:800;line-height:1.18}.hub-hero-desc{color:#475569;max-width:820px;margin:0 0 20px;font-size:15.5px;line-height:1.6}.hub-hero-meta-bar{border-top:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:20px;padding:14px 0 0;display:flex}.hub-meta-item{color:#475569;align-items:center;gap:8px;font-size:13.5px;display:inline-flex}.hub-meta-item strong{color:#0f172a;font-weight:700}.hub-meta-sep{color:#cbd5e1;-webkit-user-select:none;user-select:none;font-size:13px}.hub-modalities-strip{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.hub-modality-btn{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.hub-modality-btn:hover{color:#00186b;background:#f1f5f9;border-color:#00186b}.hub-modality-btn .hub-btn-tag{color:#1848b0;font-size:11px;font-weight:700}.hub-main{flex:1;padding:48px 0 80px}.hub-section{margin-bottom:56px}.hub-section-hdr{border-bottom:2px solid #e2e8f0;margin-bottom:24px;padding-bottom:12px}.hub-section-tag{text-transform:uppercase;letter-spacing:.12em;color:#1848b0;margin-bottom:4px;font-size:11px;font-weight:800;display:block}.hub-section-title{font-family:var(--font-heading,"Plus Jakarta Sans", -apple-system, sans-serif);color:#0f172a;letter-spacing:-.02em;margin:0 0 6px;font-size:22px;font-weight:800}.hub-section-sub{color:#64748b;max-width:860px;margin:0;font-size:14.5px;line-height:1.5}.hub-grid-compact{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.hub-compact-card{color:#1e293b;box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:13px 16px;text-decoration:none;transition:all .15s;display:flex}.hub-compact-card:hover{border-color:#00186b;transform:translateY(-1px);box-shadow:0 2px 8px #00186b0f}.hub-compact-left{align-items:center;gap:8px;min-width:0;display:flex}.hub-compact-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.hub-compact-badge{letter-spacing:.04em;text-transform:uppercase;color:#00186b;white-space:nowrap;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:4px;flex-shrink:0;padding:2px 7px;font-size:10.5px;font-weight:700}.hub-jobs-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (max-width:1080px){.hub-jobs-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.hub-jobs-grid{grid-template-columns:1fr}}.hub-job-card{box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;justify-content:space-between;padding:24px;transition:border-color .15s,box-shadow .15s;display:flex}.hub-job-card:hover{border-color:#00186b;box-shadow:0 4px 16px #00186b0f}.hub-job-card__head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.hub-job-card__badge{text-transform:uppercase;letter-spacing:.08em;color:#00186b;align-items:center;gap:6px;font-size:11.5px;font-weight:800;display:inline-flex}.hub-job-card__date{color:#64748b;font-size:12px;font-weight:500}.hub-job-card__title{margin:0 0 8px;font-size:16.5px;font-weight:800;line-height:1.3}.hub-job-card__title a{color:#0f172a;text-decoration:none}.hub-job-card__title a:hover{color:#1848b0}.hub-job-card__company{color:#475569;margin-bottom:10px;font-size:13px;font-weight:600}.hub-job-card__desc{color:#64748b;margin:0 0 18px;font-size:13.5px;line-height:1.5}.hub-job-card__foot{border-top:1px solid #f1f5f9;flex-direction:column;gap:12px;padding-top:16px;display:flex}.hub-job-card__salary-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.hub-job-card__salary-label{text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-size:11px;font-weight:700}.hub-job-card__salary-val{color:#00186b;font-size:14.5px;font-weight:800}.hub-job-card__btn{color:#fff;box-sizing:border-box;white-space:nowrap;background:#00186b;border-radius:6px;justify-content:center;align-items:center;width:100%;min-height:42px;padding:10px 16px;font-size:13.5px;font-weight:700;text-decoration:none;transition:background .15s;display:flex}.hub-job-card__btn:hover{background:#1848b0}.hub-cluster-box{box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-top:24px;padding:32px}.hub-cluster-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;display:grid}.hub-cluster-col h3{text-transform:uppercase;letter-spacing:.06em;color:#00186b;margin:0 0 14px;font-size:14px;font-weight:800}.hub-cluster-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.hub-cluster-list li a{color:#1848b0;align-items:center;gap:6px;font-size:13.5px;font-weight:500;text-decoration:none;transition:color .15s;display:inline-flex}.hub-cluster-list li a:hover{color:#00186b;text-decoration:underline}.hub-cluster-list li a:before{content:"→";color:#64748b;font-size:12px}@media (max-width:768px){.tf-container{padding:0 16px}.hub-hero{padding:32px 0 24px}.hub-main{padding:32px 0 60px}.hub-grid-compact{grid-template-columns:1fr}.hub-cluster-box{padding:20px 16px}}
