/* Be Future Ready Foundation: Careers. Same palette as the main site: forest green, antique gold, mint, ivory. */
:root{
  --forest-950:#07211A;--forest-900:#0B2E22;--forest-800:#114330;--forest-700:#1A5A40;
  --gold:#C9A04A;--gold-hi:#E2C277;--gold-deep:#80621E;
  --mint-100:#EEF5EF;--mint-200:#DCEBDF;--ivory:#F8F7F1;--paper:#fff;
  --ink:#122219;--ink-soft:#435448;--on-dark:#EEF3EC;--on-dark-soft:#B9CABD;
  --line:rgba(18,34,25,.14);--line-dark:rgba(238,243,236,.16);
  --err:#8A1F1F;--err-bg:#FBE9E7;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);--wrap:1160px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:var(--sans);font-size:1.0625rem;line-height:1.65;color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
::selection{background:var(--gold-hi);color:var(--forest-950)}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
.wrap{width:min(var(--wrap),100% - 32px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:var(--forest-950);padding:10px 16px;border-radius:4px;z-index:100;font-weight:600}
.skip:focus{left:16px}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.015em;text-wrap:balance}
h2{font-size:clamp(1.9rem,3.6vw,3rem)}
h3{font-size:1.4rem;font-weight:500}
p{text-wrap:pretty;max-width:66ch}
.lede{font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.6;color:var(--ink-soft)}
.eyebrow{font:600 .8rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-hi);margin-bottom:18px}
.eyebrow.dark{color:var(--gold-deep)}
.head{margin-bottom:40px}.head h2{max-width:20ch}.head .lede{margin-top:16px}

/* buttons */
.btn{font:600 .98rem/1 var(--sans);letter-spacing:.01em;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 28px;border-radius:2px;border:1px solid transparent;background:transparent;cursor:pointer;text-decoration:none;transition:background .3s,color .3s,border-color .3s}
.btn.sm{padding:11px 20px;font-size:.92rem}
.btn.gold{background:var(--gold);color:var(--forest-950)}.btn.gold:hover{background:var(--gold-hi)}
.btn.ghost{border-color:rgba(238,243,236,.45);color:var(--on-dark)}.btn.ghost:hover{border-color:var(--gold-hi);color:var(--gold-hi)}
.btn.outline{border-color:var(--gold);color:var(--gold-hi)}.btn.outline:hover{background:var(--gold);color:var(--forest-950)}
.btn.gold-dark{background:var(--forest-900);color:var(--ivory)}.btn.gold-dark:hover{background:var(--forest-700)}
.btn.line{border-color:var(--forest-900);color:var(--forest-900)}.btn.line:hover{background:var(--forest-900);color:var(--ivory)}
.btn.wide{width:100%}
.btn[disabled]{opacity:.6;cursor:progress}

/* header */
#top{position:sticky;top:0;z-index:50;background:var(--forest-950);border-bottom:1px solid var(--line-dark)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--on-dark)}
.brand img{width:54px;height:auto}
.brand span{display:flex;flex-direction:column;line-height:1.1}
.brand b{font:500 1.3rem/1.1 var(--serif);letter-spacing:-.01em}
.brand small{font:500 .72rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-hi);margin-top:3px}
#menu{display:flex;align-items:center;gap:30px;list-style:none}
#menu a:not(.btn){text-decoration:none;font-size:.95rem;color:var(--on-dark-soft);transition:color .2s}
#menu a:not(.btn):hover{color:var(--gold-hi)}
.burger{display:none;background:none;border:1px solid var(--line-dark);color:var(--on-dark);font:600 .9rem var(--sans);padding:9px 16px;border-radius:2px;cursor:pointer}

/* hero */
.hero{background:radial-gradient(1100px 520px at 85% -10%,rgba(201,160,74,.16),transparent 60%),var(--forest-950);color:var(--on-dark);padding:clamp(56px,9vw,112px) 0 clamp(48px,7vw,80px)}
.hero-in{display:flex;flex-direction:column;align-items:flex-start}
.hero h1{font-size:clamp(2.5rem,6.4vw,5rem);max-width:15ch;color:var(--ivory)}
.hero h1 em{font-style:italic;color:var(--gold-hi)}
.hero .lede{color:var(--on-dark-soft);margin-top:24px;max-width:58ch}
.cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.collab-band{width:100%;margin-top:clamp(48px,7vw,80px);padding-top:30px;border-top:1px solid var(--line-dark);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 48px;align-items:center}
.collab-text{font:400 clamp(1.1rem,1.7vw,1.4rem)/1.4 var(--serif);color:var(--on-dark)}
.collab-text b{font-weight:500;color:var(--gold-hi)}
.collab-logos{max-width:100%;display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.logo-card{min-width:0;background:#fff;border-radius:4px;padding:10px 18px;display:flex;align-items:center;justify-content:center;height:96px;box-shadow:0 1px 0 rgba(255,255,255,.08)}
.logo-card img{height:100%;width:auto;max-width:220px;object-fit:contain}

/* sections */
section{padding:clamp(60px,8vw,104px) 0}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--ink)}
.grid3 article{padding:30px 32px 10px 0}
.grid3 article+article{padding-left:32px;border-left:1px solid var(--line)}
.num{font:500 .95rem var(--sans);color:var(--gold-deep);letter-spacing:.1em}
.grid3 h3{margin:14px 0 10px}.grid3 p{color:var(--ink-soft)}

.roles{background:var(--mint-100)}
.rolegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.role{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:32px;display:flex;flex-direction:column;transition:border-color .3s,box-shadow .3s}
.role:hover{border-color:var(--gold);box-shadow:0 14px 34px -22px rgba(7,33,26,.35)}
.tags{display:flex;gap:8px;margin-bottom:16px}
.tags span{font:600 .72rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--forest-800);background:var(--mint-200);padding:6px 10px;border-radius:99px}
.role h3{font-size:1.7rem;margin-bottom:8px}
.role>p{color:var(--ink-soft)}
.role h4{font:600 .8rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep);margin:22px 0 8px}
.role ul{list-style:none}
.role li{position:relative;padding-left:20px;margin:5px 0;font-size:.98rem;color:var(--ink)}
.role li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:1px;background:var(--gold-deep)}
.role .btn{margin-top:auto;align-self:flex-start}
.role ul+h4+ul{margin-bottom:28px}
.aside{margin-top:30px;color:var(--ink-soft);font-size:.98rem}

.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;counter-reset:s}
.steps li{border-top:1px solid var(--ink);padding-top:22px}
.steps span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--forest-900);color:var(--gold-hi);font:500 1rem var(--sans);margin-bottom:16px}
.steps h3{margin-bottom:6px}.steps p{color:var(--ink-soft)}

/* form */
.apply{background:var(--forest-950);color:var(--on-dark)}
.applywrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,80px);align-items:start}
.apply h2{color:var(--ivory)}
.apply .lede{color:var(--on-dark-soft);margin-top:16px}
.apply .eyebrow.dark{color:var(--gold-hi)}
.apply-intro{position:sticky;top:104px}
.ticks{list-style:none;margin-top:28px;color:var(--on-dark-soft);font-size:.98rem}
.ticks li{position:relative;padding-left:26px;margin:8px 0}
.ticks li::before{content:"";position:absolute;left:2px;top:.55em;width:10px;height:6px;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.ticks a{color:var(--gold-hi)}
.card{background:var(--ivory);color:var(--ink);border-radius:4px;padding:clamp(24px,4vw,40px)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}
.f.full{grid-column:1/-1}
.f label{display:block;font:600 .9rem/1.3 var(--sans);margin-bottom:7px}
.opt{font-weight:400;color:var(--ink-soft)}
input,select,textarea{width:100%;font:400 1rem/1.4 var(--sans);color:var(--ink);background:var(--paper);border:1px solid rgba(18,34,25,.3);border-radius:2px;padding:13px 14px;transition:border-color .2s,box-shadow .2s}
textarea{resize:vertical;min-height:110px}
input:hover,select:hover,textarea:hover{border-color:var(--forest-700)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--forest-700);box-shadow:0 0 0 3px rgba(201,160,74,.45)}
input[type=file]{padding:10px;background:var(--mint-100);border-style:dashed;cursor:pointer}
input[type=file]::file-selector-button{font:600 .88rem var(--sans);background:var(--forest-900);color:var(--ivory);border:0;border-radius:2px;padding:9px 16px;margin-right:12px;cursor:pointer}
.invalid{border-color:var(--err)!important}
.check{display:flex;gap:12px;align-items:flex-start}
.check input{width:20px;height:20px;margin-top:3px;flex:none;accent-color:var(--forest-900)}
.check label{font-weight:400;font-size:.95rem;margin:0;color:var(--ink-soft)}
.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.errors{background:var(--err-bg);color:var(--err);border-left:3px solid var(--err);padding:12px 16px;margin:20px 0 0;font-size:.95rem}
.errors ul{margin-left:18px}
#submit{margin-top:24px}
.done{text-align:center;padding:24px 8px}
.done:focus{outline:none}
.check-mark{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--forest-900);color:var(--gold-hi);margin-bottom:20px}
.done h3{font-size:2rem;margin-bottom:12px}
.done p{margin-inline:auto;color:var(--ink-soft)}
.done .small{font-size:.88rem;margin:14px auto 24px}
.done b{color:var(--ink)}

/* partners */
.partners{border-top:1px solid var(--line)}
.pgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.pgrid article{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:32px;display:flex;flex-direction:column;gap:14px}
.pgrid .mark{height:110px;display:flex;align-items:center}
.pgrid .mark img{height:100%;width:auto;max-width:100%;object-fit:contain;object-position:left}
.pgrid p{color:var(--ink-soft)}
.link{font-weight:600;font-size:.95rem;color:var(--forest-800);text-underline-offset:4px;margin-top:auto}
.link:hover{color:var(--gold-deep)}

/* footer */
footer{background:var(--forest-950);color:var(--on-dark-soft);padding:56px 0 40px;font-size:.95rem}
.fgrid2{display:grid;grid-template-columns:2fr 1fr;gap:40px}
footer .brand{margin-bottom:16px}
footer p{max-width:52ch}
.fh{font:600 .78rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-hi);margin-bottom:14px}
footer ul{list-style:none}footer li{margin:7px 0}
footer a{text-decoration:none}footer a:hover{color:var(--gold-hi)}
.legal{margin-top:40px;padding-top:22px;border-top:1px solid var(--line-dark);display:flex;flex-direction:column;gap:10px;font-size:.82rem}
.legal .tm{max-width:none;opacity:.8}

@media (max-width:900px){
  .grid3,.steps,.rolegrid,.pgrid,.applywrap,.fgrid2{grid-template-columns:1fr}
  .grid3 article,.grid3 article+article{padding:24px 0 10px;border-left:0}
  .grid3 article+article{border-top:1px solid var(--line)}
  .apply-intro{position:static}
  .collab-band{grid-template-columns:1fr}
  .burger{display:block}
  #menu{display:none;position:absolute;left:0;right:0;top:76px;background:var(--forest-950);flex-direction:column;align-items:flex-start;gap:0;padding:8px 16px 20px;border-bottom:1px solid var(--line-dark)}
  #menu.open{display:flex}
  #menu li{width:100%;padding:12px 0;border-bottom:1px solid var(--line-dark)}
  #menu li:last-child{border:0;padding-top:16px}
}
@media (max-width:560px){
  .fgrid{grid-template-columns:1fr}
  .logo-card{height:84px}
  .role{padding:24px}
  .brand b{font-size:1.15rem}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
