/* GlobalHireZone / responsive presentation built on the approved semantic tokens. */
:root { --site-max: 1200px; --heading-font: 'Plus Jakarta Sans',system-ui,sans-serif; --body-font: Inter,system-ui,sans-serif; }
*,:before,:after { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:110px; }
body { margin:0; font-family:var(--body-font); color:var(--ghz-fg); background:var(--ghz-bg); font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased; }
img { max-width:100%; height:auto; }
button,input,textarea,select { font:inherit; }
button,a,input,textarea,select { -webkit-tap-highlight-color:transparent; }
a { color:var(--ghz-tab-active); text-decoration:none; }
a:hover { text-decoration:underline; text-underline-offset:4px; }
button { cursor:pointer; }
h1,h2,h3,h4,h5,h6 { font-family:var(--heading-font); font-weight:700; line-height:1.2; letter-spacing:-.035em; margin:0 0 20px; }
h1 { font-size:clamp(36px,4vw,58px); }
h2 { font-size:clamp(28px,3vw,38px); }
h3 { font-size:20px; font-weight:600; letter-spacing:-.02em; }
p { margin:0 0 20px; }
:focus-visible { outline:3px solid var(--ghz-focus); outline-offset:4px; }
.container { width:min(var(--site-max),calc(100% - 64px)); margin-inline:auto; }
.ghz-icon { width:22px; height:22px; flex-shrink:0; display:inline-block; vertical-align:middle; }
.muted { color:var(--ghz-muted); }
.small { font-size:14px; }
.text-accent { color:var(--ghz-tab-active); }
.sr-only,.skip-link:not(:focus) { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link:focus { position:fixed; top:12px; left:12px; z-index:200; background:var(--ghz-primary); color:var(--ghz-primary-fg); padding:14px 20px; border-radius:8px; }
.site-header { background:var(--ghz-nav); color:var(--ghz-nav-fg); border-bottom:1px solid var(--ghz-border); position:sticky; top:0; z-index:60; }
.admin-bar .site-header { top:32px; }
.header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:88px; position:relative; }
.brand { display:inline-flex; align-items:center; gap:10px; color:var(--ghz-nav-fg); font-family:var(--heading-font); font-size:23px; font-weight:700; letter-spacing:-1px; white-space:nowrap; }
.brand:hover { text-decoration:none; }
.brand img { width:42px; height:42px; }
.brand-highlight { color:var(--ghz-tab-active); }
.custom-logo-link { display:block; max-width:260px; }
.custom-logo { max-height:58px; width:auto; }
.primary-navigation { display:flex; gap:24px; align-items:center; font-size:14px; font-weight:500; }
.primary-navigation a { color:var(--ghz-nav-fg); display:inline-flex; align-items:center; min-height:44px; }
.primary-navigation a:hover,.primary-navigation a[aria-current=page],.primary-navigation .current-menu-item>a { color:var(--ghz-tab-active); text-decoration:none; }
.primary-navigation ul { list-style:none; padding:0; margin:0; display:flex; gap:24px; }
.primary-navigation li { position:relative; }
.primary-navigation .sub-menu { display:none; position:absolute; min-width:210px; top:100%; left:0; background:var(--ghz-dropdown); border:1px solid var(--ghz-border); border-radius:12px; padding:12px; box-shadow:var(--ghz-shadow-md); }
.primary-navigation li:hover>.sub-menu,.primary-navigation li:focus-within>.sub-menu { display:block; }
.primary-navigation .sub-menu a { padding:6px 12px; width:100%; }
.header-actions { display:flex; gap:18px; align-items:center; }
.sign-in { color:var(--ghz-nav-fg); font-size:14px; font-weight:600; white-space:nowrap; min-height:44px; display:flex; align-items:center; }
.icon-button { display:inline-grid; place-items:center; width:44px; height:44px; padding:10px; color:var(--ghz-fg); background:transparent; border:1px solid var(--ghz-border); border-radius:10px; }
.icon-button:hover { background:var(--ghz-surface-subtle); }
.theme-sun { display:none; }
[data-theme=dark] .theme-sun { display:inline-block; }
[data-theme=dark] .theme-moon { display:none; }
.mobile-toggle,.mobile-auth { display:none; }
.button { min-height:48px; border:1px solid transparent; display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:12px 22px; font-size:14px; font-weight:600; line-height:1.4; border-radius:10px; text-decoration:none!important; transition:background 160ms,box-shadow 160ms; }
.button-primary { background:var(--ghz-primary); color:var(--ghz-primary-fg); box-shadow:var(--ghz-shadow-sm); }
.button-primary:hover { background:var(--ghz-primary-hover); }
.button-primary:active { background:var(--ghz-primary-active); }
.button-secondary { background:var(--ghz-surface); color:var(--ghz-fg); border-color:var(--ghz-control-border); }
.button-secondary:hover { background:var(--ghz-secondary); }
.button-small { min-height:44px; padding:10px 16px; }
.full-width { width:100%; }
.button-row { display:flex; gap:12px; flex-wrap:wrap; }
.eyebrow { display:inline-flex; align-items:center; gap:9px; font-size:11px; letter-spacing:1.65px; color:var(--ghz-tab-active); font-weight:700; margin-bottom:22px; line-height:1.5; }
.status-dot { display:block; width:7px; height:7px; border-radius:50%; background:currentColor; }
.hero { padding:68px 0 24px; position:relative; overflow:hidden; background:var(--ghz-bg); }
.hero-grid { display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:64px; }
.hero h1 { font-size:clamp(44px,5.4vw,70px); line-height:1.08; letter-spacing:-.055em; margin-bottom:26px; }
.hero-description { font-size:18px; line-height:1.75; max-width:490px; color:var(--ghz-muted); }
.hero-links { display:flex; gap:24px; color:var(--ghz-muted); font-size:12px; margin-top:30px; flex-wrap:wrap; }
.hero-links>span { display:flex; align-items:center; gap:7px; }
.hero-links .ghz-icon { width:16px; color:var(--ghz-success-fg); }
.hero-visual { min-height:438px; position:relative; display:grid; place-items:center; }
.orbital { position:absolute; width:400px; height:400px; border:1px solid var(--ghz-border); border-radius:50%; transform:rotate(-25deg); }
.orbital-two { width:480px; height:272px; transform:rotate(-38deg); }
.visual-main { display:flex; align-items:center; flex-direction:column; justify-content:center; text-align:center; padding:24px; width:280px; min-height:332px; background:var(--ghz-card); border:1px solid var(--ghz-border); border-radius:28px; box-shadow:var(--ghz-shadow-lg); transform:rotate(-4deg); position:relative; z-index:2; }
.visual-eyebrow { color:var(--ghz-muted); font-size:9px; font-weight:600; letter-spacing:2px; }
.visual-main img { width:112px; height:112px; margin:20px 0 8px; }
.visual-main strong { font-family:var(--heading-font); font-size:30px; line-height:1.12; letter-spacing:-1.2px; }
.visual-caption { font-size:11px; line-height:1.6; color:var(--ghz-muted); margin-top:18px; }
.floating-note { position:absolute; z-index:3; display:flex; align-items:center; gap:12px; padding:14px 18px; background:var(--ghz-card); box-shadow:var(--ghz-shadow-md); border:1px solid var(--ghz-border); border-radius:14px; }
.floating-note strong { display:block; font-size:12px; font-weight:600; }
.floating-note div>span { display:block; font-size:10px; color:var(--ghz-muted); }
.note-icon { display:grid; place-items:center; width:38px; height:38px; border-radius:10px; color:var(--ghz-info-fg); background:var(--ghz-info-bg); }
.note-success { color:var(--ghz-success-fg); background:var(--ghz-success-bg); }
.note-top { top:34px; right:-12px; transform:rotate(4deg); }
.note-bottom { bottom:35px; left:-28px; transform:rotate(3deg); }
.visual-node { position:absolute; height:12px; width:12px; border-radius:50%; background:var(--ghz-accent); border:3px solid var(--ghz-bg); z-index:1; }
.node-one { top:64px; left:86px; }.node-two { bottom:68px; right:48px; }.node-three { top:225px; right:8px; width:8px; height:8px; }
.connection-line { position:absolute; width:300px; border-top:1px solid var(--ghz-border); transform:rotate(25deg); }.line-two { transform:rotate(-50deg); }
.hero-search { margin-top:42px; }
.job-search { background:var(--ghz-card); border:1px solid var(--ghz-border); border-radius:14px; display:flex; align-items:center; padding:12px; box-shadow:var(--ghz-shadow-md); gap:12px; }
.search-field { display:flex; gap:14px; align-items:center; flex:1; padding:6px 12px; }
.search-field:nth-child(2) { border-left:1px solid var(--ghz-border); }
.search-field>.ghz-icon { color:var(--ghz-muted); }
.search-field label { display:grid; gap:3px; width:100%; }
.search-field label>span { font-size:10px; color:var(--ghz-muted); font-weight:500; }
.search-field input { background:transparent; border:0; min-height:32px; padding:0; font-size:14px; width:100%; color:var(--ghz-fg); border-radius:3px; }
.search-field input::placeholder { color:var(--ghz-placeholder); opacity:1; }
.job-search>.button { min-height:56px; min-width:152px; }
.popular-searches { display:flex; align-items:center; gap:16px; font-size:11px; padding:18px 0 8px; flex-wrap:wrap; }
.popular-searches>span { color:var(--ghz-muted); }
.popular-searches a { color:var(--ghz-fg); background:var(--ghz-surface-subtle); border:1px solid var(--ghz-border); padding:5px 10px; border-radius:6px; display:inline-flex; align-items:center; min-height:32px; gap:8px; }
.popular-searches .ghz-icon { width:12px; }
.principles { border-block:1px solid var(--ghz-border); background:var(--ghz-surface); padding:26px 0; }
.principles-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
.principles-grid>div { display:flex; align-items:center; gap:16px; }
.principles-grid .ghz-icon { width:30px; height:30px; color:var(--ghz-tab-active); }
.principles-grid span { color:var(--ghz-muted); font-size:11px; }
.principles-grid strong { display:block; font-size:13px; font-weight:600; margin-bottom:2px; color:var(--ghz-fg); }
.section { padding:72px 0; }
.section-soft { background:var(--ghz-surface-subtle); border-block:1px solid var(--ghz-border); }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:32px; }
.section-heading h2 { margin-bottom:12px; }
.section-heading .eyebrow { margin-bottom:14px; }
.section-heading p { margin:0; font-size:14px; }
.text-link { color:var(--ghz-tab-active); font-size:13px; font-weight:600; display:inline-flex; align-items:center; gap:8px; min-height:44px; white-space:nowrap; }
.text-link .ghz-icon { width:18px; }
.job-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.job-card { border:1px solid var(--ghz-border); background:var(--ghz-card); border-radius:16px; padding:24px; box-shadow:var(--ghz-shadow-sm); transition:box-shadow 160ms,border-color 160ms; }
.job-card:hover { box-shadow:var(--ghz-shadow-md); border-color:var(--ghz-control-border); }
.company-row { display:flex; align-items:center; gap:10px; font-size:11px; color:var(--ghz-muted); margin-bottom:22px; }
.company-row>span:nth-child(2) { overflow-wrap:anywhere; }
.company-avatar { display:grid; place-items:center; width:40px; height:40px; flex-shrink:0; border-radius:10px; background:var(--ghz-secondary); color:var(--ghz-secondary-fg); font-family:var(--heading-font); font-weight:700; font-size:14px; text-transform:uppercase; }
.posted-date { margin-left:auto; white-space:nowrap; font-size:10px; }
.job-card h3 { font-size:18px; line-height:1.4; margin-bottom:12px; }
.job-card h3 a { color:var(--ghz-fg); }
.job-location { color:var(--ghz-muted); display:flex; align-items:center; gap:6px; font-size:12px; margin-bottom:18px; }
.job-location .ghz-icon { width:15px; height:15px; }
.job-tags { display:flex; gap:8px; flex-wrap:wrap; }
.badge { display:inline-flex; align-items:center; font-size:11px; font-weight:600; padding:4px 10px; border-radius:6px; line-height:1.5; }
.badge-info { background:var(--ghz-info-bg); color:var(--ghz-info-fg); }
.badge-success { background:var(--ghz-success-bg); color:var(--ghz-success-fg); }
.badge-warning { background:var(--ghz-warning-bg); color:var(--ghz-warning-fg); }
.badge-error { background:var(--ghz-error-bg); color:var(--ghz-error-fg); }
.job-card-bottom { display:flex; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid var(--ghz-border); margin-top:22px; padding-top:14px; }
.salary { font-size:11px; color:var(--ghz-muted); }
.job-view { display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--ghz-control-border); border-radius:10px; background:var(--ghz-nav-active); color:var(--ghz-tab-active); }
.job-view:hover { background:var(--ghz-secondary-hover); }
.empty-state { background:var(--ghz-card); border:1px solid var(--ghz-border); border-radius:16px; display:flex; align-items:center; gap:24px; padding:38px; }
.empty-state>div { flex:1; }
.empty-state h3 { margin-bottom:10px; }
.empty-state p { margin:0; color:var(--ghz-muted); font-size:14px; max-width:660px; }
.empty-icon { width:64px; height:64px; border-radius:16px; display:grid; place-items:center; background:var(--ghz-info-bg); color:var(--ghz-info-fg); flex-shrink:0; }
.empty-icon .ghz-icon { width:28px; height:28px; }
.empty-vertical { flex-direction:column; text-align:center; padding:64px 32px; }
.category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.category-card,.feature-card { background:var(--ghz-card); color:var(--ghz-fg); padding:28px; border:1px solid var(--ghz-border); border-radius:14px; }
.category-card:hover { text-decoration:none; border-color:var(--ghz-control-border); box-shadow:var(--ghz-shadow-sm); }
.category-icon { display:grid; place-items:center; width:48px; height:48px; color:var(--ghz-tab-active); background:var(--ghz-tab-active-bg); border-radius:12px; margin-bottom:24px; }
.category-card h3 { font-size:16px; margin-bottom:10px; }
.category-card>span:last-child { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:11px; color:var(--ghz-muted); }
.category-card>span:last-child .ghz-icon { width:16px; }
.steps-layout { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
.steps-layout .muted { font-size:14px; }
.steps-list { display:grid; gap:28px; }
.step { display:flex; gap:22px; }
.step>span { font-family:var(--heading-font); color:var(--ghz-tab-active); display:grid; place-items:center; width:50px; height:50px; border-radius:50%; background:var(--ghz-tab-active-bg); flex-shrink:0; font-size:14px; font-weight:700; }
.step h3 { font-size:18px; margin:2px 0 7px; }
.step p { margin:0; }
.employer-section { padding-top:0; }
.employer-cta { background:var(--ghz-sidebar); color:var(--ghz-sidebar-fg); padding:60px; border-radius:24px; display:grid; grid-template-columns:1.5fr 1fr; align-items:center; position:relative; overflow:hidden; }
.eyebrow.inverse { color:#38BDF8; margin-bottom:18px; }
.employer-cta h2 { font-size:clamp(30px,3.8vw,44px); letter-spacing:-.04em; }
.employer-cta p { color:var(--ghz-sidebar-muted); font-size:14px; max-width:420px; margin-bottom:28px; }
.button-cyan { background:#38BDF8; color:#102A43; }
.button-cyan:hover { background:#7DD3FC; }
.cta-link { color:var(--ghz-sidebar-fg); font-size:13px; margin-left:24px; display:inline-block; min-height:44px; padding-top:12px; }
.cta-art { display:grid; place-items:center; position:relative; }
.cta-art img { width:180px; height:180px; position:relative; z-index:2; }
.cta-art:before,.cta-art:after { content:''; position:absolute; width:270px; height:270px; border:1px solid #29465F; border-radius:50%; }
.cta-art:after { width:330px; height:150px; transform:rotate(-35deg); }
.cta-art>span { position:absolute; width:10px; height:10px; background:#38BDF8; border-radius:50%; top:0; right:50px; }
.site-footer { background:var(--ghz-surface); border-top:1px solid var(--ghz-border); padding:54px 0 22px; }
.footer-main { display:grid; grid-template-columns:1.8fr 1fr 1fr 1fr; gap:44px; padding-bottom:40px; }
.footer-brand .brand { font-size:22px; }
.footer-brand p { font-size:12px; color:var(--ghz-muted); margin:14px 0 0; }
.footer-main h3 { font-family:var(--body-font); font-size:12px; letter-spacing:0; margin:8px 0 16px; font-weight:600; }
.footer-main>div:not(:first-child)>a { display:block; color:var(--ghz-muted); font-size:12px; margin-bottom:10px; padding-block:4px; }
.footer-main ul { list-style:none; margin:0; padding:0; }
.footer-main li a { color:var(--ghz-muted); font-size:12px; display:block; padding-block:7px; }
.footer-bottom { display:flex; justify-content:space-between; border-top:1px solid var(--ghz-border); padding-top:20px; color:var(--ghz-muted); font-size:11px; }
.footer-bottom>span:last-child { display:flex; align-items:center; gap:8px; }
.footer-bottom .ghz-icon { width:14px; height:14px; }
.page-hero { padding:54px 0 48px; background:var(--ghz-surface-subtle); border-bottom:1px solid var(--ghz-border); }
.page-hero h1 { max-width:960px; }
.page-hero .eyebrow { margin-bottom:14px; }
.page-hero .job-search { margin-top:28px; }
.jobs-layout { display:grid; grid-template-columns:260px 1fr; gap:32px; align-items:start; }
.filter-panel { background:var(--ghz-card); border:1px solid var(--ghz-border); border-radius:16px; padding:24px; }
.filter-panel h2 { font-size:18px; margin-bottom:24px; }
.filter-panel .field { margin-bottom:22px; }
.field { display:grid; gap:8px; font-size:14px; margin-bottom:24px; }
.field>span { font-size:13px; font-weight:600; }
.field input,.field select,.field textarea { background:var(--ghz-input); color:var(--ghz-input-fg); border:1px solid var(--ghz-control-border); border-radius:8px; padding:12px 14px; min-height:48px; width:100%; }
.field textarea { resize:vertical; }
.field input::placeholder,.field textarea::placeholder { color:var(--ghz-placeholder); opacity:1; }
.field small { font-size:12px; }
.checkbox-label { display:flex; align-items:center; gap:10px; font-size:13px; min-height:44px; margin-bottom:20px; }
.checkbox-label input { width:18px; height:18px; accent-color:var(--ghz-primary); }
.filter-reset { display:block; text-align:center; font-size:12px; padding:12px; }
.filter-tip { margin-top:24px; background:var(--ghz-info-bg); color:var(--ghz-info-fg); padding:20px; border-radius:10px; }
.filter-tip h3 { font-size:15px; margin:10px 0; }
.filter-tip p { font-size:12px; margin:0; }
.results-heading,.workspace-top { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:24px; }
.results-heading h2 { font-size:20px; margin:0; }
.job-grid-results { grid-template-columns:repeat(2,minmax(0,1fr)); }
.pagination { display:flex; gap:8px; margin-top:32px; flex-wrap:wrap; }
.pagination .page-numbers { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:8px 14px; background:var(--ghz-card); border:1px solid var(--ghz-control-border); border-radius:8px; font-size:13px; color:var(--ghz-fg); }
.pagination .current { color:var(--ghz-primary-fg); background:var(--ghz-primary); border-color:var(--ghz-primary); }
.pagination .dots { border-color:transparent; background:transparent; }
.detail-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:32px; align-items:start; }
.content-card,.apply-panel,.employer-intro-card { padding:36px; background:var(--ghz-card); border:1px solid var(--ghz-border); border-radius:16px; }
.content-card h2,.apply-panel h2 { font-size:24px; }
.apply-panel { position:sticky; top:120px; padding:28px; }
.apply-panel p { font-size:14px; }
.apply-panel dt { color:var(--ghz-muted); font-size:12px; }
.apply-panel dd { margin:4px 0 24px; font-weight:600; font-size:14px; }
.application-tip { margin-top:24px; border-top:1px solid var(--ghz-border); padding-top:24px; }
.application-tip>.ghz-icon { color:var(--ghz-tab-active); margin-bottom:12px; }
.back-link { display:inline-block; color:var(--ghz-muted); font-size:13px; margin-bottom:24px; min-height:44px; }
.job-detail-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.job-detail-heading h1 { font-size:clamp(30px,3vw,44px); }
.job-detail-meta { display:flex; gap:24px; font-size:13px; color:var(--ghz-muted); flex-wrap:wrap; }
.job-detail-meta>span { display:flex; gap:8px; align-items:center; }
.job-detail-meta .ghz-icon { width:18px; }
.prose { max-width:850px; overflow-wrap:anywhere; }
.prose h2 { margin-top:36px; }.prose>h2:first-child { margin-top:0; }
.prose h3 { margin-top:28px; }
.prose a { text-decoration:underline; }
.prose li { margin-bottom:10px; }
.prose blockquote { border-left:3px solid var(--ghz-primary); margin:28px 0; padding:12px 24px; background:var(--ghz-surface-subtle); }
.prose table { width:100%; border-collapse:collapse; }.prose td,.prose th { padding:12px; border:1px solid var(--ghz-border); }
.prose pre { max-width:100%; overflow:auto; padding:20px; background:var(--ghz-surface-subtle); border-radius:10px; }
.prose iframe,.prose video { max-width:100%; }
.split-intro,.two-column { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.split-intro { align-items:center; gap:64px; }
.employer-intro-card { padding:42px; }
.employer-intro-card h2 { font-size:28px; }
.check-list { list-style:none; padding:0; margin:0; display:grid; gap:18px; }
.check-list li { display:flex; align-items:flex-start; gap:10px; color:var(--ghz-muted); font-size:13px; }
.check-list .ghz-icon { color:var(--ghz-success-fg); width:18px; height:18px; margin-top:3px; }
.feature-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.feature-card p { font-size:14px; }
.process-list { padding-left:22px; margin-block:24px; }.process-list li { padding-left:10px; margin-bottom:28px; }.process-list li::marker { color:var(--ghz-tab-active); font-weight:700; }.process-list h3 { margin-bottom:12px; }.process-list p { font-size:14px; }
.alert { padding:16px 20px; border:1px solid; border-radius:10px; margin-bottom:24px; font-size:14px; display:flex; gap:12px; align-items:flex-start; }
.alert-error { color:var(--ghz-error-fg); background:var(--ghz-error-bg); border-color:var(--ghz-error-border); }
.alert-success { color:var(--ghz-success-fg); background:var(--ghz-success-bg); border-color:var(--ghz-success-border); }
.alert-warning { color:var(--ghz-warning-fg); background:var(--ghz-warning-bg); border-color:var(--ghz-warning-border); }
.alert-info { color:var(--ghz-info-fg); background:var(--ghz-info-bg); border-color:var(--ghz-info-border); }
.table-wrap { overflow-x:auto; padding:0; }.workspace-table { width:100%; border-collapse:collapse; min-width:600px; font-size:14px; }.workspace-table th { background:var(--ghz-table-head); font-size:12px; }.workspace-table td,.workspace-table th { padding:18px 24px; text-align:left; border-bottom:1px solid var(--ghz-border); }.workspace-table tbody tr:last-child td { border:0; }.workspace-table tr:hover td { background:var(--ghz-table-hover); }.table-company { display:block; margin-top:6px; }
.card-title { font-size:24px; margin-top:14px; }.card-title a { color:var(--ghz-fg); }
.wp-block-button__link,input[type=submit],.job-manager-form input[type=submit] { background:var(--ghz-primary); color:var(--ghz-primary-fg); border:0; border-radius:10px; min-height:48px; padding:12px 22px; font-weight:600; cursor:pointer; }
.job-manager-form input[type=text],.job-manager-form input[type=email],.job-manager-form input[type=url],.job-manager-form select,.job-manager-form textarea { border:1px solid var(--ghz-control-border); color:var(--ghz-input-fg); background:var(--ghz-input); border-radius:8px; min-height:44px; padding:10px 12px; width:100%; }
.job-manager-form fieldset { border:0; padding:0; margin:0 0 24px; }.job-manager-form label { font-weight:600; display:block; margin-bottom:8px; }.job-manager-message { background:var(--ghz-success-bg); color:var(--ghz-success-fg); border:1px solid var(--ghz-success-border); padding:16px; border-radius:10px; }.job-manager-error { background:var(--ghz-error-bg); color:var(--ghz-error-fg); border:1px solid var(--ghz-error-border); padding:16px; border-radius:10px; }.job-manager-jobs { width:100%; border-collapse:collapse; }.job-manager-jobs td,.job-manager-jobs th { border-bottom:1px solid var(--ghz-border); padding:16px; text-align:left; }
.alignwide { max-width:1100px; }.alignfull { max-width:100%; }.wp-caption-text { color:var(--ghz-muted); font-size:13px; }.screen-reader-text { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }.comment-list { padding-left:20px; }.comment-respond input:not([type=submit],[type=checkbox]),.comment-respond textarea { width:100%; border:1px solid var(--ghz-control-border); border-radius:8px; padding:12px; color:var(--ghz-input-fg); background:var(--ghz-input); }
@media(max-width:1100px) { .header-inner { gap:16px; }.brand { font-size:20px; }.primary-navigation,.primary-navigation ul { gap:16px; }.header-actions { gap:12px; }.header-actions .button { padding-inline:12px; }.hero-grid { gap:32px; }.note-top { right:0; }.note-bottom { left:0; }.orbital-two { width:400px; }.footer-main { gap:24px; }.footer-brand .brand { font-size:19px; } }
@media(max-width:960px) { .header-actions .sign-in { display:none; }.hero-grid { gap:20px; grid-template-columns:1.1fr 1fr; }.hero h1 { font-size:54px; }.hero-visual { transform:scale(.85); transform-origin:center; }.hero-description { font-size:16px; }.job-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.steps-layout { gap:48px; }.employer-cta { padding:42px; }.footer-main { grid-template-columns:2fr 1fr 1fr; }.footer-main>div:last-child { grid-column:2; }.jobs-layout { grid-template-columns:220px 1fr; gap:22px; }.job-grid-results { grid-template-columns:1fr; }.detail-layout { grid-template-columns:minmax(0,1fr) 290px; gap:22px; }.split-intro { gap:32px; }.feature-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.feature-card { padding:24px; } }
@media(max-width:782px) { .admin-bar .site-header { top:46px; } }
@media(max-width:820px) { .container { width:calc(100% - 40px); }.header-inner { min-height:74px; gap:12px; }.brand { font-size:20px; gap:8px; }.brand img { width:34px; height:34px; }.header-actions { margin-left:auto; }.header-actions .button { display:none; }.has-js .mobile-toggle { display:inline-grid; order:3; }.header-actions { order:2; }.primary-navigation { position:absolute; top:100%; left:-20px; width:calc(100% + 40px); display:flex; flex-direction:column; align-items:stretch; background:var(--ghz-nav); padding:16px 24px; border-bottom:1px solid var(--ghz-border); box-shadow:var(--ghz-shadow-md); max-height:70vh; overflow-y:auto; }.has-js .primary-navigation { display:none; }.has-js .primary-navigation.is-open { display:flex; }.primary-navigation ul { flex-direction:column; gap:0; }.primary-navigation .sub-menu { display:block; position:static; border:0; box-shadow:none; padding:0 16px; }.primary-navigation>a,.primary-navigation ul a { padding:8px; }.mobile-auth { display:block!important; border-top:1px solid var(--ghz-border); margin-top:8px; }.hero { padding-top:44px; }.hero-grid { grid-template-columns:1fr; gap:20px; }.hero h1 { font-size:clamp(46px,9vw,64px); }.hero-description { max-width:500px; }.hero-visual { min-height:340px; transform:scale(.85); margin-block:-10px; }.hero-search { margin-top:20px; }.job-search { flex-direction:column; align-items:stretch; padding:14px; gap:10px; }.search-field { padding:8px; }.search-field:nth-child(2) { border-left:0; border-top:1px solid var(--ghz-border); padding-top:16px; }.job-search>.button { min-height:48px; }.popular-searches { gap:10px; }.principles-grid { gap:16px; grid-template-columns:1fr; }.principles { padding-block:24px; }.principles-grid>div { gap:14px; }.principles-grid strong { font-size:14px; }.principles-grid span { font-size:12px; }.section { padding:48px 0; }.section-heading { align-items:start; flex-direction:column; gap:16px; }.job-grid { grid-template-columns:1fr; }.empty-state { flex-direction:column; text-align:center; padding:28px; }.empty-state>.button { width:100%; }.category-card { padding:22px; }.steps-layout { grid-template-columns:1fr; gap:36px; }.employer-section { padding-top:0; }.employer-cta { padding:32px; grid-template-columns:1fr; }.cta-art { display:none; }.cta-link { margin-left:14px; }.footer-main { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }.footer-brand { grid-column:1/-1; }.footer-main>div:last-child { grid-column:auto; }.footer-bottom { flex-direction:column; gap:12px; }.jobs-layout,.detail-layout { grid-template-columns:1fr; }.filter-panel { padding:22px; }.filter-tip { display:none; }.filter-panel form { display:grid; grid-template-columns:1fr 1fr; gap:10px 20px; align-items:center; }.filter-panel .field,.filter-panel .checkbox-label { margin:0; }.filter-panel h2 { margin-bottom:18px; }.apply-panel { position:static; }.content-card { padding:26px; }.split-intro,.two-column { grid-template-columns:1fr; gap:28px; }.feature-grid { grid-template-columns:1fr; }.page-hero { padding-block:36px; }.page-hero h1 { font-size:clamp(34px,7vw,46px); }.job-detail-heading { flex-direction:column; align-items:start; }.workspace-top { align-items:start; }.workspace-top h2 { font-size:24px; }.empty-vertical { padding:42px 24px; } }
@media(max-width:400px) { .brand { font-size:18px; }.brand img { width:30px; height:30px; }.header-inner { gap:8px; }.category-grid { grid-template-columns:1fr; }.hero-links { gap:12px; }.filter-panel form { grid-template-columns:1fr; }.workspace-top { flex-direction:column; }.employer-cta { padding:24px; }.cta-link { display:block; margin:10px 0 0; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,::before,::after { transition:none!important; animation:none!important; } }
@media print { .site-header,.site-footer,.hero-visual,.job-search,.filter-panel,.button { display:none!important; } body { background:white; color:black; }.container { width:100%; }.detail-layout { display:block; }.content-card,.apply-panel { border:0; }.section { padding-block:20px; } }

@media(max-width:820px) { html:not(.has-js) .header-inner { flex-wrap:wrap; } html:not(.has-js) .primary-navigation { position:static; width:100%; order:4; border:0; box-shadow:none; max-height:none; } html:not(.has-js) .theme-toggle { display:none; } }
/* Account navigation and owner-only workspace controls. */
.account-link { font-size:12px; color:var(--ghz-tab-active); min-height:44px; display:inline-flex; align-items:center; white-space:nowrap; }
.workspace-actions { display:flex; gap:8px; flex-wrap:wrap; }
.workspace-actions form { margin:0; }
.workspace-actions .button { font-size:12px; padding-inline:12px; white-space:nowrap; }
.workspace-table { min-width:760px; }
@media(max-width:1100px) { .header-actions>.account-link { display:none; } }
@media(min-width:821px) and (max-width:1100px) { .header-actions>.button { display:none; } .header-actions>.logout-link { display:inline-flex; } .header-actions>.sign-in { display:flex; } }
.premium-top { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.premium-top p { margin:0; }
.premium-lock>h2 { margin-top:24px; }
.premium-lock .feature-grid { margin-block:32px; }
.permission-label { align-items:flex-start; }
.permission-label input { margin-top:4px; flex-shrink:0; }
.form-divider { display:flex; align-items:center; gap:16px; font-size:12px; color:var(--ghz-muted); margin-bottom:24px; }
.form-divider:before,.form-divider:after { content:''; flex:1; border-top:1px solid var(--ghz-border); }
.ai-progress { margin-top:18px; }
.ai-results { margin-top:56px; }
#ai-report-content { display:grid; gap:24px; }
#ai-report-content li { margin-bottom:12px; font-size:14px; }
.requirement-row { border-top:1px solid var(--ghz-border); padding-block:24px; }
.requirement-row h4 { font-size:16px; margin-bottom:12px; letter-spacing:0; }
.requirement-row blockquote { margin:16px 0; padding:14px 18px; background:var(--ghz-surface-subtle); border-left:3px solid var(--ghz-focus); font-size:14px; }
.requirement-row p { margin:16px 0 0; }
.premium-workspace { margin-bottom:28px; padding:24px; display:flex; align-items:center; justify-content:space-between; gap:20px; background:var(--ghz-info-bg); color:var(--ghz-info-fg); border:1px solid var(--ghz-info-border); border-radius:14px; }
.premium-workspace h2 { font-size:20px; margin:8px 0; }.premium-workspace p { font-size:13px; margin:0; }
[hidden] { display:none!important; }
@media(max-width:760px) { .premium-top,.premium-workspace { flex-direction:column; align-items:start; } }

/* Premium employer AI promotion. */
.ai-promotion { background:var(--ghz-surface-subtle); }
.ai-promotion-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:64px; align-items:center; }
.ai-promotion-copy h2 { margin-top:16px; }
.ai-promotion-actions { display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.ai-promotion-note { margin-top:18px; }
.ai-review-preview { background:var(--ghz-card); color:var(--ghz-card-fg); border:1px solid var(--ghz-border); border-radius:24px; padding:32px; box-shadow:var(--ghz-shadow-md); }
.ai-review-preview-header { display:flex; align-items:center; gap:16px; padding-bottom:24px; border-bottom:1px solid var(--ghz-border); }
.ai-review-preview-header .category-icon { margin:0; flex-shrink:0; }
.ai-review-preview-header h3 { font-size:18px; margin:0 0 4px; }
.ai-review-workflow { list-style:none; padding:0; margin:28px 0; display:grid; gap:24px; }
.ai-review-workflow li { display:flex; gap:16px; align-items:flex-start; }
.ai-workflow-number { display:grid; place-items:center; width:36px; height:36px; flex-shrink:0; border-radius:50%; background:var(--ghz-tab-active-bg); color:var(--ghz-tab-active); font-size:12px; font-weight:700; }
.ai-review-workflow strong { font-size:15px; }
.ai-review-workflow p { margin:6px 0 0; color:var(--ghz-muted); font-size:14px; }
.ai-preview-footer { display:flex; align-items:center; gap:10px; border-top:1px solid var(--ghz-border); padding-top:20px; color:var(--ghz-muted); font-size:13px; }
.ai-preview-footer .ghz-icon { flex-shrink:0; }
.ai-promotion-features { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:48px; }
.ai-promotion-feature { padding:28px; border:1px solid var(--ghz-border); border-radius:16px; background:var(--ghz-card); color:var(--ghz-card-fg); }
.ai-promotion-feature h3 { font-size:18px; margin:0 0 10px; }
.ai-promotion-feature p { font-size:14px; margin:0; }
@media(max-width:960px) { .ai-promotion-grid { grid-template-columns:1fr; gap:32px; } }
@media(max-width:640px) { .ai-promotion-features { grid-template-columns:1fr; margin-top:32px; gap:16px; } .ai-review-preview { padding:24px; } .ai-promotion-actions { align-items:flex-start; flex-direction:column; } .ai-promotion-actions .button { width:100%; } }

.ghz-salary-fields { border:1px solid var(--ghz-border); border-radius:12px; margin:24px 0; padding:20px; }
.ghz-salary-fields legend { padding:0 8px; font-weight:600; }
.ghz-salary-fields [hidden] { display:none !important; }

/* Compact navigation: wordmark, messages and one account disclosure. */
.header-actions { gap:12px; }
.header-messages { position:relative; text-decoration:none; flex-shrink:0; }
.header-messages:hover { text-decoration:none; }
.message-count { position:absolute; top:-5px; right:-6px; min-width:20px; height:20px; padding:0 4px; border-radius:20px; display:grid; place-items:center; background:var(--ghz-primary); color:var(--ghz-primary-fg); font-size:10px; font-weight:700; line-height:1; border:2px solid var(--ghz-nav); }
.message-count[hidden] { display:none; }
.profile-menu { position:relative; }
.profile-toggle { cursor:pointer; list-style:none; }
.profile-toggle::-webkit-details-marker { display:none; }
.profile-menu[open] .profile-toggle { background:var(--ghz-surface-subtle); border-color:var(--ghz-control-border); }
.profile-dropdown { position:absolute; top:calc(100% + 12px); right:0; width:260px; max-width:calc(100vw - 32px); padding:12px; border:1px solid var(--ghz-border); border-radius:14px; background:var(--ghz-dropdown); color:var(--ghz-dropdown-fg); box-shadow:var(--ghz-shadow-md); z-index:65; }
.profile-dropdown>a,.profile-theme { display:flex; align-items:center; gap:10px; min-height:44px; padding:10px 12px; width:100%; border:0; border-radius:8px; background:transparent; color:var(--ghz-dropdown-fg); font:inherit; font-size:14px; text-decoration:none; text-align:left; }
.profile-dropdown>a:hover,.profile-theme:hover { background:var(--ghz-surface-subtle); text-decoration:none; }
.profile-name { display:block; padding:8px 12px 14px; margin-bottom:4px; border-bottom:1px solid var(--ghz-border); font-weight:600; overflow-wrap:anywhere; }
.profile-dropdown .profile-signout { border-top:1px solid var(--ghz-border); margin-top:4px; border-radius:0 0 8px 8px; }
.profile-theme .ghz-icon { flex-shrink:0; }
.profile-dropdown .profile-post-job { display:none; }
@media(max-width:1100px) { .profile-dropdown .profile-post-job { display:flex; } }
@media(max-width:820px) { .header-actions { gap:8px; }.header-inner { gap:8px; } }
@media(max-width:400px) { .site-header .container { width:calc(100% - 24px); }.site-header .brand { font-size:16px; letter-spacing:-.7px; }.header-actions { gap:4px; }.header-inner { gap:4px; } }
/* A single set of account controls moves into the mobile navigation. */
.primary-navigation .header-messages { display:inline-grid; }
.primary-navigation .header-post-job { color:var(--ghz-primary-fg); }
.header-message-label,.profile-label { display:none; }
@media(max-width:820px) {
  .primary-navigation .header-actions { margin:12px 0 0; padding-top:12px; border-top:1px solid var(--ghz-border); flex-direction:column; align-items:stretch; gap:8px; }
  .primary-navigation .header-messages { display:flex; align-items:center; justify-content:flex-start; gap:12px; width:100%; height:auto; padding:10px 12px; border:0; border-radius:8px; }
  .primary-navigation .header-messages .message-count { position:static; margin-left:auto; }
  .header-message-label,.profile-label { display:inline; }
  .profile-menu { width:100%; }
  .profile-toggle { display:flex; align-items:center; justify-content:flex-start; gap:12px; width:100%; height:auto; padding:10px 12px; border:0; }
  .profile-dropdown { position:static; width:100%; max-width:none; box-shadow:none; margin-top:8px; }
  .profile-dropdown>a { padding:10px 12px; }
}

.how-it-works-columns { align-items:start; }
