/* Careers extends the shared Causally tokens and primitives in ../styles.css. */
.careers-page{min-height:100vh;--career-status-open:rgb(51,69,87)}

.careers-hero{
  padding:100px 40px 40px;
}
.careers-hero__panel{
  position:relative;isolation:isolate;overflow:hidden;
  width:100%;max-width:var(--maxw-wide);min-height:760px;margin-inline:auto;
  border-radius:var(--radius-hero);padding:150px 48px 48px;
  background:
    radial-gradient(60% 85% at 86% 50%,rgba(211,227,240,.72),transparent 67%),
    radial-gradient(42% 58% at 70% 72%,rgba(253,217,203,.44),transparent 72%),
    linear-gradient(180deg,var(--surface) 0%,rgba(255,253,250,.55) 100%);
}
.careers-hero__content{
  position:relative;z-index:2;width:720px;max-width:62%;
  display:flex;flex-direction:column;align-items:flex-start;
}
.careers-hero .display{text-align:left;margin-top:30px;text-wrap:balance}
.careers-hero .lede{text-align:left;margin:24px 0 0;max-width:590px}

.careers-hero__art{
  position:absolute;z-index:0;right:-40px;top:74px;
  width:690px;height:560px;
  filter:drop-shadow(0 30px 60px rgba(51,69,87,.08));
}
.careers-orbit{
  position:absolute;left:50%;top:50%;translate:-50% -50%;
  border:1px solid rgba(51,69,87,.19);border-radius:50%;
  transform:rotate(-18deg);
}
.careers-orbit::after{
  content:"";position:absolute;width:9px;height:9px;border-radius:50%;
  background:var(--surface);border:1px solid rgba(51,69,87,.25);
  box-shadow:0 6px 18px rgba(51,69,87,.14);
}
.careers-orbit--one{width:540px;height:224px}
.careers-orbit--one::after{right:58px;top:24px}
.careers-orbit--two{width:390px;height:390px;transform:rotate(28deg)}
.careers-orbit--two::after{left:36px;bottom:70px}
.careers-orbit--three{width:250px;height:460px;transform:rotate(68deg)}
.careers-orbit--three::after{right:25px;bottom:82px}
.careers-orbit__core{
  position:absolute;left:50%;top:50%;translate:-50% -50%;
  width:140px;height:140px;border-radius:50%;
  background:
    radial-gradient(circle at 38% 35%,rgba(255,255,255,.95),transparent 24%),
    linear-gradient(145deg,rgba(211,227,240,.94),rgba(240,231,243,.88) 48%,rgba(253,217,203,.8));
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.62),
    0 30px 80px rgba(80,92,106,.18);
}

.apply-card{
  position:absolute;z-index:3;left:48px;right:48px;bottom:48px;
  display:flex;align-items:flex-end;justify-content:space-between;gap:40px;
  padding:28px 32px;border:1px solid rgba(255,255,255,.48);border-radius:20px;
  background:rgba(255,253,250,.68);
  -webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);
  box-shadow:0 24px 70px -54px rgba(43,43,43,.48);
}
.apply-card__copy{max-width:760px}
.apply-card__eyebrow{
  font-size:11px;line-height:16px;font-weight:500;text-transform:uppercase;
  letter-spacing:.06em;color:var(--gray);
}
.apply-card__title{
  margin-top:8px;font-family:var(--font-display);font-size:25px;line-height:1.2;
  font-weight:400;letter-spacing:-.03em;
}
.apply-card__body,.apply-card__location{
  margin-top:8px;font-size:14px;line-height:20px;color:var(--text-2);
}
.apply-card__location{font-size:12px;line-height:18px;color:var(--gray)}
.apply-card .pill{flex:none}

.openings{padding-bottom:120px}
.openings__head{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,400px);
  align-items:end;gap:56px;
}
.openings__head .h2{margin-top:24px;max-width:680px}
.openings__lede{padding-bottom:4px}

.job-list{
  position:relative;margin-top:64px;padding-left:42px;
  display:flex;flex-direction:column;gap:20px;
}
.job-list::before{
  content:"";position:absolute;left:8px;top:38px;bottom:38px;width:1px;
  background:linear-gradient(180deg,transparent,rgba(43,43,43,.22) 8%,rgba(43,43,43,.22) 92%,transparent);
}
.job-list__state{
  min-height:100px;padding:34px 0;font-size:14px;line-height:20px;color:var(--gray);
}
.job-row{position:relative}
.job-row::before{
  content:"";position:absolute;left:-42px;top:45px;width:42px;height:1px;
  background:rgba(43,43,43,.22);
  transform:scaleX(.72);transform-origin:right center;
  transition:transform .42s cubic-bezier(.16,1,.3,1),background .28s ease;
}
.job-row::after{
  content:"";position:absolute;left:-39px;top:41px;width:9px;height:9px;
  border-radius:50%;background:var(--bg);border:2px solid rgba(43,43,43,.36);
  transition:background .28s ease,border-color .28s ease,transform .42s cubic-bezier(.16,1,.3,1);
}
.job-row:has(.job-card[open])::before{background:var(--career-status-open);transform:scaleX(1)}
.job-row:has(.job-card[open])::after{
  background:var(--career-status-open);border-color:var(--career-status-open);transform:scale(1.2);
}
.job-card{
  position:relative;overflow:hidden;width:100%;
  border:1px solid var(--surface-border);border-radius:var(--radius-card);
  background:var(--surface);
  box-shadow:0 24px 58px -54px rgba(43,43,43,.58);
  transition:border-color .28s ease,box-shadow .42s cubic-bezier(.16,1,.3,1);
}
.job-card[open]{
  border-color:rgba(51,69,87,.16);
  box-shadow:0 34px 72px -56px rgba(43,43,43,.64);
}
.job-card__summary{
  min-height:92px;padding:22px 26px;
  display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:28px;
  list-style:none;cursor:pointer;
}
.job-card__summary:focus-visible{outline:2px solid var(--text);outline-offset:-4px;border-radius:18px}
.job-card__heading{min-width:0}
.job-card__direction{
  font-size:11px;line-height:16px;font-weight:500;text-transform:uppercase;
  letter-spacing:.055em;color:var(--gray);
}
.job-card__title{
  margin-top:5px;font-family:var(--font-display);font-size:24px;line-height:1.2;
  font-weight:400;letter-spacing:-.025em;
}
.job-card__status{
  display:inline-flex;align-items:center;gap:7px;
  padding:7px 11px;border-radius:999px;background:var(--card-beige);
  font-size:11px;line-height:16px;font-weight:500;color:var(--text-2);
}
.job-card__status::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--career-status-open)}
.job-card--closed .job-card__status::before{background:var(--gray)}
.job-card__toggle{
  width:42px;height:42px;border-radius:50%;background:var(--card-beige);
  display:flex;align-items:center;justify-content:center;color:var(--text);
  transition:background .2s ease,transform .35s cubic-bezier(.16,1,.3,1);
}
.job-card__toggle svg{width:18px;height:18px}
.job-card[open] .job-card__toggle{transform:rotate(45deg);background:var(--pastel-blue)}
.job-card__content{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;
  margin:0 26px;padding:30px 0 34px;border-top:1px solid rgba(0,0,0,.08);
}
.job-card__section-title{
  font-size:13px;line-height:19px;font-weight:500;color:var(--text);
}
.job-card__list{margin:14px 0 0;padding:0;list-style:none}
.job-card__list li{
  position:relative;padding-left:16px;font-size:14px;line-height:21px;color:var(--text-2);
}
.job-card__list li+li{margin-top:10px}
.job-card__list li::before{
  content:"";position:absolute;left:0;top:9px;width:5px;height:5px;border-radius:50%;
  background:rgba(51,69,87,.58);
}
.job-card--closed{opacity:.66}

.principles-section{padding:0 var(--gutter) 120px}
.principles-panel{
  border-radius:var(--radius-panel);padding:72px;
  display:grid;grid-template-columns:minmax(240px,.8fr) 2fr;gap:72px;
}
.principles-panel__index,.principle__num{
  font-family:var(--font-display);font-size:13px;line-height:18px;color:var(--gray);
}
.principles-panel__intro .h3{margin-top:18px;max-width:300px}
.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.principle{padding-left:18px;border-left:1px solid rgba(0,0,0,.1)}
.principle .h4{margin-top:44px}
.principle .body{margin-top:12px}

@media (max-width:1199.98px){
  .careers-hero{padding-inline:var(--gutter)}
  .careers-hero__panel{padding:130px 36px 36px;min-height:780px}
  .careers-hero__content{max-width:72%}
  .careers-hero__art{right:-160px;opacity:.8}
  .apply-card{left:36px;right:36px;bottom:36px}
  .principles-panel{padding:56px 40px;grid-template-columns:1fr;gap:48px}
  .principles-panel__intro .h3{max-width:none}
}

@media (max-width:809.98px){
  .careers-hero{padding:100px 20px 20px}
  .careers-hero__panel{min-height:0;padding:92px 20px 20px}
  .careers-hero__content{max-width:none;width:auto}
  .careers-hero .display{font-size:42px}
  .careers-hero__art{right:-230px;top:-30px;width:560px;height:460px;opacity:.46}
  .apply-card{
    position:relative;left:auto;right:auto;bottom:auto;margin-top:110px;
    flex-direction:column;align-items:flex-start;gap:24px;padding:24px;
  }
  .apply-card .pill{width:100%}
  .openings{padding-bottom:80px}
  .openings__head{grid-template-columns:1fr;gap:24px}
  .job-list{margin-top:40px;padding-left:24px;gap:14px}
  .job-list::before{left:5px}
  .job-row::before{left:-24px;width:24px}
  .job-row::after{left:-22px}
  .job-card__summary{padding:20px;grid-template-columns:minmax(0,1fr) auto;gap:16px}
  .job-card__status{grid-column:1;grid-row:2;justify-self:start}
  .job-card__toggle{grid-column:2;grid-row:1 / span 2}
  .job-card__title{font-size:21px}
  .job-card__content{grid-template-columns:1fr;gap:28px;margin:0 20px;padding:26px 0 30px}
  .principles-section{padding-bottom:80px}
  .principles-panel{padding:36px 24px;gap:36px}
  .principles-grid{grid-template-columns:1fr;gap:32px}
  .principle .h4{margin-top:20px}
}

@media (prefers-reduced-motion:reduce){
  .job-card{height:auto!important}
}
