/**
 * NAS HR Jobs — front-end styles.
 *
 * Every colour reads from the NAS HR theme's design tokens, with the same
 * value hard-coded as a fallback so the plugin still looks right on another
 * theme. Contrast pairs match the theme's verified AA combinations.
 */

.nashr-jobs-wrap{
  width:100%;
  max-width:var(--maxw,1200px);
  margin-inline:auto;
  padding-inline:var(--gutter,clamp(20px,5vw,48px));
}
.nashr-section{padding-block:var(--section-y,clamp(56px,8vw,110px));}
.nashr-section--alt{background:var(--cream,#E3D5C9);}

/* Fallback banner when the theme has no page-hero of its own */
.nashr-jobs-hero{
  background:var(--charcoal,#413F41);
  color:var(--on-dark,#D9CBBB);
  padding-block:clamp(46px,6vw,78px);
}
.nashr-jobs-hero h1{color:var(--cream-light,#F6F1EA);margin:0 0 14px;}
.nashr-eyebrow{
  font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold-bright,#C9B186);margin:0 0 12px;
}

/* -------------------------------------------------- filters */
.nashr-filters{
  background:var(--cream,#E3D5C9);
  border:1px solid var(--rule,#C5AE8B);
  padding:clamp(16px,2vw,24px);
  margin-bottom:28px;
}
.nashr-filters__grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  align-items:end;
}
@media(max-width:900px){.nashr-filters__grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.nashr-filters__grid{grid-template-columns:1fr;}}
.nashr-field--action{display:flex;gap:14px;align-items:center;}
.nashr-clear{font-size:13.5px;font-weight:600;color:var(--bronze-deep,#6D5A37);}

.nashr-count{
  font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--bronze-deep,#6D5A37);margin:0 0 18px;
}

/* -------------------------------------------------- job rows */
.nashr-joblist{display:flex;flex-direction:column;gap:0;margin-bottom:36px;}
.nashr-job{
  display:flex;gap:clamp(18px,3vw,36px);align-items:flex-start;
  justify-content:space-between;
  padding:22px 0;
  border-top:1px solid var(--rule,#C5AE8B);
}
.nashr-job:last-child{border-bottom:1px solid var(--rule,#C5AE8B);}
.nashr-job__main{flex:1 1 auto;min-width:0;}
.nashr-job__title{
  font-size:clamp(19px,2vw,24px);font-weight:700;letter-spacing:-.01em;
  margin:0 0 8px;line-height:1.25;
}
.nashr-job__title a{color:var(--charcoal,#413F41);text-decoration:none;}
.nashr-job__title a:hover,.nashr-job__title a:focus{color:var(--bronze-deep,#6D5A37);}
.nashr-job__meta{
  display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 8px;
  font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  color:var(--bronze-deep,#6D5A37);
}
.nashr-job__meta span:not(:last-child)::after{content:' ·';margin-left:16px;opacity:.5;}
.nashr-job__excerpt{margin:0;font-size:14.5px;line-height:1.6;color:#5A5450;max-width:70ch;}
.nashr-job__side{
  flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:10px;
  text-align:right;
}
.nashr-job__salary{font-size:14px;font-weight:700;color:var(--charcoal,#413F41);}
@media(max-width:680px){
  .nashr-job{flex-direction:column;}
  .nashr-job__side{align-items:flex-start;text-align:left;flex-direction:row;flex-wrap:wrap;align-items:center;}
}

.nashr-tag{
  display:inline-block;padding:4px 12px;
  background:var(--charcoal,#413F41);color:var(--cream-light,#F6F1EA);
  font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
}

/* -------------------------------------------------- single job */
.nashr-job-layout{display:grid;grid-template-columns:1fr 340px;gap:clamp(28px,4vw,56px);align-items:start;}
@media(max-width:960px){.nashr-job-layout{grid-template-columns:1fr;}}
.nashr-prose{font-size:16.5px;line-height:1.7;}
.nashr-prose>*+*{margin-top:1.05em;}
.nashr-list{margin:0 0 1.4em;padding-left:1.15em;}
.nashr-list li{margin-bottom:.45em;line-height:1.6;}
.nashr-list li::marker{color:var(--gold,#B7975D);}
.nashr-apply-heading{margin-top:1.6em;}

.nashr-card{
  background:#fff;
  border:1px solid var(--rule-soft,#DECFBA);
  border-top:3px solid var(--gold,#B7975D);
  padding:clamp(20px,2.4vw,28px);
  margin-bottom:22px;
}
.nashr-card--quiet{background:var(--cream,#E3D5C9);border-top-color:var(--bronze,#806A41);}
.nashr-card__title{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--bronze-deep,#6D5A37);margin:0 0 14px;}
.nashr-dl{margin:0 0 18px;}
.nashr-dl dt{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--bronze-deep,#6D5A37);margin-top:12px;}
.nashr-dl dd{margin:3px 0 0;font-size:15px;font-weight:600;color:var(--charcoal,#413F41);}

.nashr-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,3vw,40px);margin-top:20px;padding-top:30px;border-top:2px solid var(--charcoal,#413F41);}
@media(max-width:720px){.nashr-split{grid-template-columns:1fr;}}
.nashr-split__col h2{font-size:clamp(20px,2.2vw,26px);margin:0 0 10px;}
.nashr-split__col p{margin:0 0 16px;font-size:15px;line-height:1.6;}

.nashr-empty{
  padding:clamp(28px,4vw,48px);
  background:var(--cream,#E3D5C9);
  border:1px solid var(--rule,#C5AE8B);
  margin-bottom:32px;
}
.nashr-empty h2{margin-top:0;}

/* -------------------------------------------------- forms */
.nashr-form{margin:0 0 8px;}
.nashr-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;}
@media(max-width:620px){.nashr-form__grid{grid-template-columns:1fr;}}
.nashr-form__legend{
  font-size:clamp(19px,2vw,24px);margin:1.6em 0 .5em;
  padding-bottom:10px;border-bottom:2px solid var(--charcoal,#413F41);
}
.nashr-form__legend:first-of-type{margin-top:0;}
.nashr-field{margin-bottom:18px;}
.nashr-field label{
  display:block;font-size:13px;font-weight:600;letter-spacing:.04em;
  margin-bottom:7px;color:var(--charcoal,#413F41);
}
.nashr-field input[type=text],
.nashr-field input[type=email],
.nashr-field input[type=tel],
.nashr-field input[type=date],
.nashr-field input[type=file],
.nashr-field textarea,
.nashr-field select{
  width:100%;padding:13px 15px;font:inherit;font-size:15px;
  color:var(--charcoal,#413F41);background:#fff;
  border:1px solid var(--rule,#C5AE8B);border-radius:2px;
}
.nashr-field input:focus,.nashr-field textarea:focus,.nashr-field select:focus{
  border-color:var(--gold,#B7975D);
  outline:2px solid rgba(183,151,93,.35);outline-offset:0;
}
.nashr-field input[type=file]{padding:11px;background:#fff;cursor:pointer;}
.nashr-field--check label{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:14.5px;line-height:1.55;}
.nashr-field--check input{margin-top:3px;flex:none;width:auto;}
.nashr-req{color:#A3342E;}
.nashr-hint{font-size:13px;color:#6E6660;margin:6px 0 0;line-height:1.5;}
.nashr-hint--legal{margin-top:16px;max-width:72ch;}

/* Honeypot — never visible to a person, never announced to a screen reader */
.nashr-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;}

.nashr-btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 28px;font:inherit;font-size:14px;font-weight:600;letter-spacing:.04em;
  border:2px solid var(--charcoal,#413F41);
  background:var(--charcoal,#413F41);color:var(--cream-light,#F6F1EA);
  border-radius:2px;cursor:pointer;text-decoration:none;
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.nashr-btn:hover,.nashr-btn:focus{
  background:var(--gold,#B7975D);border-color:var(--gold,#B7975D);
  color:var(--ink-on-gold,#332F30);
}
.nashr-btn--small{padding:9px 18px;font-size:13px;}
.nashr-btn--block{display:flex;justify-content:center;width:100%;}
.nashr-btn--ghost{background:transparent;color:var(--charcoal,#413F41);}
.nashr-btn--ghost:hover,.nashr-btn--ghost:focus{background:var(--charcoal,#413F41);color:var(--cream-light,#F6F1EA);}

/* -------------------------------------------------- notices */
.nashr-notice{
  padding:16px 20px;margin:0 0 24px;
  border-left:4px solid var(--gold,#B7975D);
  background:var(--cream,#E3D5C9);
  font-size:15px;line-height:1.6;color:var(--charcoal,#413F41);
}
.nashr-notice--success{border-left-color:#2F6F4E;background:#EAF3ED;}
.nashr-notice--error{border-left-color:#A3342E;background:#F8ECEB;}
.nashr-notice--warning{border-left-color:#B07A1E;background:#FBF2E2;}

.nashr-pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}
.nashr-pagination .page-numbers{
  padding:8px 14px;border:1px solid var(--rule,#C5AE8B);
  font-size:14px;font-weight:600;text-decoration:none;color:var(--charcoal,#413F41);
}
.nashr-pagination .current{
  background:var(--charcoal,#413F41);color:var(--cream-light,#F6F1EA);
  border-color:var(--charcoal,#413F41);
}
