/* Careers page styles converted from careers-01.html. */
.page-careers main .h2{
  font-size:var(--type-h2);
  line-height:1.08;
  letter-spacing:-0.018em;
}
.page-careers main .lead{
  font-size:clamp(18px,1.5vw,21px);
  line-height:1.55;
}

.page-careers .careers-hero{
  --header-height:114px;
  --hero-peek:clamp(80px,9vh,128px);
  --hero-stage-width:clamp(380px,calc(28px + 33vw),680px);
  --hero-content-gap:clamp(40px,4vw,64px);
  position:relative;
  display:flex;
  align-items:center;
  min-height:560px;
  min-height:clamp(560px,calc(100vh - var(--header-height) - var(--hero-peek)),900px);
  min-height:clamp(560px,calc(100dvh - var(--header-height) - var(--hero-peek)),900px);
  overflow:hidden;
  background:#fff;
}
.page-careers .careers-hero__glow{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(62% 70% at 14% 10%,rgba(0,129,74,.13) 0%,rgba(0,129,74,.055) 38%,transparent 68%),
    radial-gradient(50% 58% at 52% 90%,rgba(172,212,0,.075) 0%,rgba(242,228,0,.032) 48%,transparent 74%);
}
.page-careers .careers-hero__wrap{
  position:relative;
  z-index:2;
  width:100%;
  padding-top:clamp(48px,5vw,72px);
  padding-right:var(--edge);
  padding-bottom:clamp(48px,5vw,72px);
  padding-left:max(var(--edge),calc((100% - var(--maxw)) / 2));
}
.page-careers .careers-hero__inner{
  position:relative;
  z-index:2;
  max-width:calc(100% - var(--hero-stage-width) - var(--hero-content-gap));
  text-align:left;
}
.page-careers .careers-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:22px;
}
.page-careers .careers-eyebrow__mark{
  display:block;
  width:11px;
  height:auto;
  flex:none;
}
.page-careers .careers-hero__title{
  margin:0 0 28px;
  color:var(--ink);
  font-family:var(--serif);
  font-size:clamp(50px,5.2vw,72px);
  font-weight:400;
  line-height:1.05;
  letter-spacing:0;
  text-wrap:balance;
}
.page-careers .careers-hero__title span{
  color:var(--green-ink);
  font-style:italic;
}
.page-careers .careers-hero__lead{
  width:100%;
  max-width:none;
  margin:0;
  color:var(--muted);
  font-size:clamp(18px,1.5vw,20px);
}
.page-careers .careers-hero__proof{
  position:absolute;
  top:clamp(20px,3vw,32px);
  left:max(var(--edge),calc((100% - var(--maxw)) / 2));
  z-index:2;
  display:flex;
  align-items:center;
  gap:20px;
}
.page-careers .careers-hero__proof img{
  display:block;
  width:auto;
  height:200px;
  margin-top:-30px;
}
.page-careers .careers-hero__stage{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  z-index:1;
  width:var(--hero-stage-width);
  overflow:hidden;
  pointer-events:none;
}
.page-careers .careers-hero__image{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 10%;
  animation:careersHeroPhotoDrift 13s ease-in-out infinite;
}
@keyframes careersHeroPhotoDrift{
  0%,100%{transform:scale(1);}
  50%{transform:scale(1.018);}
}

.page-careers .careers-visual-stage{
  position:relative;
  overflow:hidden;
  padding:12px;
  border:1px solid rgba(15,24,34,.06);
  border-radius:12px;
  background:
    radial-gradient(circle at 90% 85%,rgba(242,228,0,.06),transparent 34%),
    radial-gradient(circle at 6% 10%,rgba(0,171,82,.03),transparent 26%),
    linear-gradient(115deg,#fff 0%,#fbfdfb 54%,#fffbe7 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
}
.page-careers .careers-visual-surface{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  padding:clamp(10px,1.4vw,16px);
  overflow:hidden;
  border:1px solid rgba(15,24,34,.08);
  border-radius:14px;
  background:#fff;
  box-shadow:0 2px 5px rgba(15,24,34,.035),0 16px 34px -22px rgba(15,24,34,.18);
}

.page-careers .careers-openings{
  background:
    radial-gradient(64% 70% at 78% 6%,rgba(0,171,82,.16),transparent 66%),
    radial-gradient(44% 50% at 8% 94%,rgba(172,212,0,.10),transparent 68%),
    linear-gradient(180deg,#f7fcfa 0%,#fff 60%);
}
.page-careers .careers-openings__intro{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  align-items:center;
  column-gap:clamp(48px,5.5vw,80px);
  margin-bottom:clamp(48px,5.2vw,64px);
}
.page-careers .careers-openings__intro .h2{margin-bottom:18px;}
.page-careers .careers-openings__stage{height:clamp(200px,19vw,260px);}
.page-careers .careers-openings__illustration,
.page-careers .careers-join__illustration{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.page-careers .careers-jobs{border-top:1px solid var(--line);}
.page-careers .careers-job{
  display:grid;
  grid-template-columns:1.4fr .9fr auto;
  align-items:center;
  gap:20px;
  padding:26px 0;
  border-bottom:1px solid var(--line);
}
.page-careers .careers-job__role h3{
  margin:0 0 6px;
  color:var(--ink);
  font-family:var(--sans);
  font-size:19px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:0;
}
.page-careers .careers-job__experience{
  color:var(--muted-2);
  font-size:14.5px;
}
.page-careers .careers-job__location{
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--ink);
  font-size:15px;
}
.page-careers .careers-job__flag{font-size:17px;line-height:1;}
.page-careers .careers-job__remote{
  width:17px;
  height:17px;
  flex:none;
  color:var(--green-ink);
}
.page-careers .careers-job__apply{
  display:inline-flex;
  align-items:center;
  justify-self:end;
  gap:6px;
  color:var(--ink);
  font-size:14.5px;
  font-weight:700;
  white-space:nowrap;
}
.page-careers .careers-job__apply svg{
  width:13px;
  height:13px;
  transition:transform 200ms var(--ease);
}
.page-careers .careers-job:hover .careers-job__apply svg{transform:translate(2px,-2px);}

.page-careers .careers-join{
  background:
    radial-gradient(54% 58% at 10% 6%,rgba(0,171,82,.11),transparent 64%),
    radial-gradient(46% 52% at 94% 92%,rgba(172,212,0,.10),transparent 66%),
    linear-gradient(180deg,#fff 0%,#f3f8f4 52%,#fff 100%);
}
.page-careers .careers-join__grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  align-items:center;
  column-gap:clamp(56px,6vw,96px);
}
.page-careers .careers-join .h2 span{
  color:var(--green-ink);
  font-style:italic;
}
.page-careers .careers-join__stage{
  height:clamp(220px,20vw,280px);
  margin-top:clamp(28px,3vw,36px);
}
.page-careers .careers-join__copy p{color:var(--muted);}
.page-careers .careers-join__copy p + p{margin-top:16px;}
.page-careers .careers-join__action{margin-top:clamp(24px,2.8vw,30px);}
.page-careers .careers-join .btn--ghost{
  color:var(--green-ink);
  border-color:var(--line-2);
}
.page-careers .careers-join .btn--ghost:hover{
  border-color:var(--g-200);
  background:var(--g-025);
}
.page-careers .careers-join .btn--ghost svg{width:17px;height:17px;}

@media (min-width:768px){
  .page-careers .careers-visual-stage{padding:16px;border-radius:14px;}
}
@media (min-width:1024px){
  .page-careers .careers-visual-stage{padding:20px;border-radius:16px;}
}
@media (max-width:960px){
  .page-careers .careers-hero{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    min-height:0;
    overflow:visible;
  }
  .page-careers .careers-hero__wrap{
    order:1;
    padding:clamp(56px,9vw,84px) var(--edge) 0;
  }
  .page-careers .careers-hero__stage{
    position:relative;
    top:auto;
    right:auto;
    bottom:auto;
    order:2;
    width:100%;
    height:clamp(260px,68vw,330px);
    margin-top:32px;
  }
  .page-careers .careers-hero__inner{max-width:100%;margin-top:0;}
  .page-careers .careers-hero__title{margin-bottom:24px;}
  .page-careers .careers-hero__lead{margin-bottom:34px;}
  .page-careers .careers-hero__image{object-position:50% 8%;}
  .page-careers .careers-hero__proof{
    position:static;
    display:flex;
    margin:0 0 28px;
    gap:16px;
  }
  .page-careers .careers-hero__proof img{height:100px;}
  .page-careers .careers-job{
    grid-template-columns:1fr auto;
    grid-template-areas:"role apply" "location apply";
    row-gap:8px;
  }
  .page-careers .careers-job__role{grid-area:role;}
  .page-careers .careers-job__location{grid-area:location;}
  .page-careers .careers-job__apply{grid-area:apply;align-self:start;}
}
@media (max-width:767px){
  .page-careers .careers-openings__intro{grid-template-columns:1fr;row-gap:32px;}
  .page-careers .careers-join__grid{grid-template-columns:1fr;row-gap:0;}
  .page-careers .careers-visual-surface{border-radius:12px;}
}
@media (max-width:520px){
  .page-careers .careers-job{
    grid-template-columns:1fr;
    grid-template-areas:"role" "location" "apply";
    row-gap:10px;
  }
  .page-careers .careers-job__apply{justify-self:start;}
}
@media (max-width:480px){
  .page-careers .careers-hero__title{font-size:clamp(34px,9.3vw,41px);line-height:1.08;}
}
@media (prefers-reduced-motion:reduce){
  .page-careers .careers-hero__image{animation:none;}
}
