/*
Theme Name: Zealancy Child
Template: hello-elementor
Version: 1.0.0
Description: Child theme for the Team Zealancy careers landing page.
*/

:root{
  --paper:#F4F1E9; --surface:#FBF9F3; --ink:#191521; --muted:#6C6575;
  --line:rgba(25,21,33,.13); --line-strong:rgba(25,21,33,.26);
  --purple:#5D2DB0; --purple-deep:#48219A; --purple-lift:#B79BEA; --purple-soft:#ECE4FA;
  --black:#141019; --cream:#F1EEE6; --muted-d:rgba(241,238,230,.62); --line-d:rgba(241,238,230,.16);
  --maxw:1140px;
}
body.page-template-page-careers{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:"Inter",system-ui,sans-serif;
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
body.page-template-page-careers a{color:inherit;text-decoration:none}
body.page-template-page-careers a:hover{color:inherit;text-decoration:none}
body.page-template-page-careers .wrap{max-width:var(--maxw);margin:0 auto;padding:0 30px}
body.page-template-page-careers h1,
body.page-template-page-careers h2,
body.page-template-page-careers h3{font-family:"Fraunces",Georgia,serif;font-weight:500;margin:0;line-height:1.05;letter-spacing:-.015em}
body.page-template-page-careers em{font-style:italic;color:var(--purple);font-weight:500}
body.page-template-page-careers .label{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--purple)}
body.page-template-page-careers :focus-visible{outline:2px solid var(--purple);outline-offset:3px}
body.page-template-page-careers .btn,
body.page-template-page-careers .btn:visited,
body.page-template-page-careers .btn:focus,
body.page-template-page-careers .btn:active{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  font-size:13.5px!important;
  font-weight:600!important;
  padding:13px 24px!important;
  border-radius:999px!important;
  background:var(--purple)!important;
  color:#fff!important;
  border:1px solid var(--purple)!important;
  cursor:pointer!important;
  text-decoration:none!important;
  box-shadow:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  transition:transform .15s,background .2s!important;
}
body.page-template-page-careers .btn:hover,
body.page-template-page-careers .btn:focus-visible,
body.page-template-page-careers .btn:focus{
  background:var(--purple-deep)!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
  opacity:1!important;
}
body.page-template-page-careers .btn.sm{padding:10px 18px!important;font-size:12px!important}
body.page-template-page-careers .sbtn,
body.page-template-page-careers .sbtn:visited,
body.page-template-page-careers .sbtn:focus,
body.page-template-page-careers .sbtn:active{
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  font-size:12px!important;
  font-weight:500!important;
  letter-spacing:.04em!important;
  color:var(--ink)!important;
  border:1px solid var(--line-strong)!important;
  border-radius:999px!important;
  padding:12px 20px!important;
  text-decoration:none!important;
  box-shadow:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  transition:background .2s,color .2s,transform .15s!important;
}
body.page-template-page-careers .sbtn:hover,
body.page-template-page-careers .sbtn:focus-visible,
body.page-template-page-careers .sbtn:focus{background:var(--ink)!important;color:var(--paper)!important;border-color:var(--ink)!important;transform:translateY(-1px)!important}
body.page-template-page-careers .sbtn svg{width:15px;height:15px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
.btn:hover{background:var(--purple-deep);transform:translateY(-1px)}
.btn.sm{padding:10px 18px;font-size:12px}
.sbtn{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--ink);border:1px solid var(--line-strong);border-radius:999px;padding:12px 20px;transition:background .2s,color .2s,transform .15s}
.sbtn:hover{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:translateY(-1px)}
.sbtn svg{width:15px;height:15px}
.bar{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.bar .row{display:flex;align-items:center;justify-content:space-between;height:68px}
.wordmark{font-family:"Fraunces",serif;font-weight:600;font-size:23px}
.wordmark .dot{color:var(--purple)}
.hero{padding:34px 0 26px;text-align:center}
.hero .label{display:inline-block;margin-bottom:12px}
.hero h1{font-size:clamp(34px,5.4vw,58px)}
.media{position:relative;border-radius:18px;overflow:hidden;background:#0c0912}
.media .grade{position:absolute;inset:0}
.media .play{position:absolute;inset:0;margin:auto;width:60px;height:60px;border-radius:50%;background:#fff;display:grid;place-items:center;z-index:2;box-shadow:0 8px 30px -8px rgba(0,0,0,.5);transition:transform .2s}
.media .play::after{content:"";width:0;height:0;border-left:15px solid var(--purple);border-top:9px solid transparent;border-bottom:9px solid transparent;margin-left:4px}
.media:hover .play{transform:scale(1.06)}
.media .cap{position:absolute;left:16px;bottom:14px;z-index:2;color:rgba(255,255,255,.9);font-size:12px;font-weight:500}
.hero-media{margin-top:22px;aspect-ratio:16/8;cursor:pointer}
.cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.g-royal{background:linear-gradient(150deg,#2a1550,#5d2db0 94%)}
.g-plum{background:linear-gradient(150deg,#1c1226,#40265c 94%)}
.g-ink{background:linear-gradient(150deg,#141018,#2e2740 94%)}
.g-violet{background:linear-gradient(150deg,#221641,#4b2a8f 94%)}
.g-dusk{background:linear-gradient(150deg,#171320,#3a2b52 94%)}
.g-slate{background:linear-gradient(150deg,#121319,#2b3040 94%)}
.chapter{display:flex;align-items:center;gap:16px;margin-bottom:46px}
.chapter .cnum{font-family:"Fraunces",serif;font-style:italic;font-size:20px;color:var(--purple)}
.chapter .clab{font-family:"Fraunces",serif;font-size:clamp(22px,2.8vw,30px)}
.chapter .cline{flex:1;height:1px;background:var(--line-strong)}
.dark .chapter .clab{color:var(--cream)}
.dark .chapter .cline{background:var(--line-d)}
.section{padding:100px 0;border-top:1px solid var(--line)}
.dark{background:var(--black);color:var(--cream);padding:100px 0;border-top:none}
.dark .label{color:var(--purple-lift)}
.sec-head{max-width:700px;margin-bottom:46px}
.sec-head .label{display:inline-block;margin-bottom:16px}
.sec-head h2{font-size:clamp(34px,5.4vw,56px)}
.sec-head p{color:var(--muted);margin-top:16px;font-size:17px;max-width:600px}
.dark .sec-head p{color:var(--muted-d)}
.cat{display:grid;grid-template-columns:.9fr 1.6fr;gap:48px;padding:56px 0;border-top:1px solid var(--line)}
.cat:first-of-type{border-top:none;padding-top:0}
.cat .num{font-family:"Fraunces",serif;font-size:20px;color:var(--purple)}
.cat h3{font-size:clamp(26px,3.6vw,38px);margin-top:8px}
.cat .cd{color:var(--muted);font-size:15.5px;margin-top:14px;max-width:34ch}
.cases{display:flex;flex-direction:column;gap:16px}
.case{background:var(--black);color:var(--cream);border-radius:18px;padding:22px 24px 16px;transition:box-shadow .3s}
.case:hover{box-shadow:0 20px 44px -24px rgba(93,45,176,.6)}
.case .chead{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:8px}
.case .who{display:flex;align-items:center;gap:12px}
.case .pfp{width:42px;height:42px;border-radius:50%;flex:none}
.case .cn{font-family:"Fraunces",serif;font-size:19px;font-weight:500}
.case .ch{font-size:12.5px;color:var(--muted-d)}
.case .subs{font-family:"Fraunces",serif;font-size:19px;white-space:nowrap}
.case .subs span{font-size:12px;color:var(--muted-d);font-family:"Inter",sans-serif;margin-left:5px}
.case svg{display:block;width:100%;height:78px}
.case .axis{display:flex;justify-content:space-between;font-size:11px;color:var(--muted-d);margin-top:4px}
.more{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-align:center;padding-top:6px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:38px}
.stat .sv{font-family:"Fraunces",serif;font-size:clamp(30px,4.4vw,46px);color:var(--cream);line-height:1}
.stat .sl{font-size:13px;color:var(--muted-d);margin-top:8px}
.ladder{margin-top:46px;border-top:1px solid var(--line-d)}
.rung{display:flex;gap:20px;padding:20px 0;border-bottom:1px solid var(--line-d);align-items:baseline}
.rung .rn{font-family:"Fraunces",serif;font-style:italic;color:var(--purple-lift);font-size:18px;flex:none;width:34px}
.rung .rt{font-size:16.5px;color:var(--cream)}
.voice-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:30px;margin-bottom:20px}
.voice-head .vt{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.voice-nav{display:flex;gap:8px}
.voice-nav button{width:38px;height:38px;border:1px solid var(--line-strong);background:transparent;color:var(--ink);cursor:pointer;font-size:16px;border-radius:50%;transition:background .2s}
.voice-nav button:hover{background:var(--surface)}
.voice-scroller{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px}
.voice-scroller::-webkit-scrollbar{display:none}
.voice{flex:0 0 calc((100% - 32px)/3);scroll-snap-align:start;scroll-snap-stop:always;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s}
.voice:hover{transform:translateY(-3px);box-shadow:0 18px 36px -24px rgba(25,21,33,.4)}
.voice .vid{position:relative;aspect-ratio:9/12}
.voice .vid .play{position:absolute;inset:0;margin:auto;width:48px;height:48px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 8px 22px -8px rgba(0,0,0,.5)}
.voice .vid .play::after{content:"";width:0;height:0;border-left:12px solid var(--purple);border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}
.voice .vid .play{transition:transform .2s}
.voice:hover .vid .play{transform:scale(1.08)}
.voice .vb{padding:14px 16px 16px}
.voice .vn{font-family:"Fraunces",serif;font-size:18px}
.voice .vr{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--purple);margin-top:3px}
.voice .vq{font-size:13px;color:var(--muted);margin-top:9px;line-height:1.45}
.perks{display:grid;grid-template-columns:1fr 1fr;column-gap:64px}
.perk{display:flex;gap:18px;padding:28px 0;border-top:1px solid var(--line);align-items:flex-start}
.perk .pico{flex:none;color:var(--purple);margin-top:2px}
.perk h3{font-size:22px;margin-bottom:6px}
.perk p{color:var(--muted);font-size:14.5px;margin:0;line-height:1.5}
.studio{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}
.studio > .media{aspect-ratio:16/11}
.studio .media .grade{transition:transform .5s ease}
.studio .media:hover .grade{transform:scale(1.05)}
.studio .stack{display:grid;grid-template-rows:1fr 1fr;gap:16px}
.lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.lcard{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;transition:border-color .2s,transform .2s,box-shadow .2s}
.lcard:hover{border-color:var(--purple);transform:translateY(-3px);box-shadow:0 18px 40px -26px rgba(93,45,176,.42)}
.lcard .lk{display:inline-block;transition:transform .2s}
.lcard:hover .lk{transform:translateX(3px)}
.lcard .ph{width:88px;height:88px;border-radius:16px;margin-bottom:18px}
.lcard .ln{font-family:"Fraunces",serif;font-size:24px}
.lcard .lr{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--purple);margin:6px 0 14px;font-weight:600}
.lcard p{color:var(--muted);font-size:14.5px;margin:0 0 18px;line-height:1.55}
.lcard .lk{font-size:12.5px;font-weight:600;color:var(--ink);border-bottom:1.5px solid var(--purple);padding-bottom:2px}
.lcard .lk:hover{opacity:.7}
.rgroup{margin-bottom:34px}
.rgroup .gl{display:flex;align-items:baseline;gap:14px;margin-bottom:16px}
.rgroup .gl .gn{font-family:"Fraunces",serif;font-size:22px}
.rgroup .gl .cnt{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.card{display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:26px;border:1px solid var(--line);border-radius:16px;background:var(--surface);transition:border-color .2s,transform .2s,box-shadow .2s;min-height:150px}
.card:hover{border-color:var(--purple);transform:translateY(-2px);box-shadow:0 16px 34px -22px rgba(93,45,176,.5)}
.card .ct{font-family:"Fraunces",serif;font-size:23px;line-height:1.1}
.card .cm{color:var(--muted);font-size:13.5px;margin-top:6px}
.card .foot{display:flex;align-items:center;justify-content:space-between;gap:12px}
.card.open{grid-column:1 / -1;flex-direction:row;align-items:center;border:1px dashed var(--purple);background:linear-gradient(120deg,var(--purple-soft),transparent 70%);min-height:auto}
.card.open .ct{font-style:italic;color:var(--purple-deep)}
.hiring{margin-top:44px;padding:24px 28px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.hiring .hs{font-family:"Fraunces",serif;font-size:19px}
.hiring .hp{color:var(--muted);font-size:14px;margin-top:6px}
footer{background:var(--black);color:var(--cream);padding:96px 0 44px}
footer h2{font-size:clamp(38px,6.5vw,76px);max-width:12ch}
footer h2 em{color:var(--purple-lift)}
.fcta{margin-top:32px}
.fmeta{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:24px;margin-top:80px;padding-top:26px;border-top:1px solid var(--line-d)}
.fsoc{display:flex;gap:12px}
.fsoc a{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--cream);border:1px solid var(--line-d);border-radius:999px;padding:10px 16px;transition:background .2s}
.fsoc a:hover{background:rgba(255,255,255,.08)}
.fbottom{color:var(--muted-d);font-size:12px;display:flex;gap:18px;flex-wrap:wrap}
.fbottom a{color:var(--muted-d)}
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none!important;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(8px);border-top:1px solid var(--line)}
.sticky .btn{width:100%;justify-content:center}
body.page-template-page-careers .sticky{display:none!important}
@media (max-width:900px){
  .cat{grid-template-columns:1fr;gap:26px;padding:44px 0}
  .lead-grid{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr;gap:26px}
}
@media (max-width:860px){
  .studio{grid-template-columns:1fr}
  .perks{grid-template-columns:1fr;column-gap:0}
  .perk:nth-child(2){border-top:1px solid var(--line)}
  .cards{grid-template-columns:1fr}
  .card.open{flex-direction:column;align-items:flex-start}
}
@media (max-width:640px){
  .wrap{padding:0 20px}
  .bar .btn{padding:10px 16px;font-size:12px}
  .section,.dark,footer{padding:64px 0}
  .hero{padding:22px 0 18px}
  .hero-media{aspect-ratio:16/10;margin-top:16px}
  .voice-nav{display:none}
  body.page-template-page-careers .sticky{display:block!important}
  body{padding-bottom:74px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media (min-width:861px) and (prefers-reduced-motion:no-preference){
  .reveal.pre{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
  .reveal.pre.in{opacity:1;transform:none}
}
@media (max-width:999px){.voice{flex-basis:calc((100% - 16px)/2)}}
@media (max-width:639px){.voice{flex-basis:100%}}
