@font-face{font-family:"Open Sans";src:url("assets/open-sans-latin-wght-normal.woff2") format("woff2");font-style:normal;font-weight:300 800;font-display:swap}
@font-face{font-family:"Montserrat";src:url("assets/montserrat-latin-wght-normal.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:root{--navy:#192a6b;--navy-deep:#111d4a;--accent:#1670c0;--cyan:#00e0ec;--purple:#7132ce;--ink:#333f5b;--muted:#48536c;--blue:#005ca9;--line:#dce2ed;--soft:#f5f7fc;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;font-family:"Open Sans",Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.35}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #db9b00;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Montserrat,Arial,sans-serif;line-height:1.12;color:var(--navy);font-weight:700}h1{max-width:620px}h1 span,h2 span{color:var(--accent)}h2{margin-bottom:20px}h3{line-height:1.22}p+p{margin-top:16px}.container{width:min(1160px,calc(100% - 64px));margin-inline:auto}.section{padding:80px 0}section[id]{scroll-margin-top:104px}.eyebrow{line-height:1.5;font-weight:700;text-transform:uppercase;letter-spacing:1.6px;color:var(--accent);margin-bottom:16px}.lead{max-width:520px;color:var(--muted);margin-top:24px}.button{min-height:48px;padding:11px 24px;display:inline-flex;align-items:center;justify-content:center;border:2px solid transparent;border-radius:9px;font-weight:600;line-height:1.35;text-align:center;transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.primary{background:var(--navy);color:white}.primary:hover{background:var(--navy-deep)}.secondary{color:var(--navy);border-color:var(--navy);background:white}.secondary:hover{background:#eef1fb}.light{background:#a6f0f4;color:var(--navy)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.text-link{display:inline-flex;gap:12px;align-items:center;min-height:44px;color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:5px}.skip{position:fixed;top:8px;left:8px;z-index:100;background:white;padding:12px;transform:translateY(-160%)}.skip:focus{transform:none}.header{position:sticky;top:0;background:#fff;z-index:30;border-bottom:1px solid #e9ecf2}.header-inner{height:80px;display:flex;align-items:center;gap:25px}.brand{margin-right:auto;flex-shrink:0}.brand img{width:178px}.navigation{display:flex;align-items:center;gap:24px}.navigation a{min-height:44px;display:flex;align-items:center;color:var(--navy);font-weight:500}.navigation a:hover{text-decoration:underline;text-underline-offset:6px}.header-cta{padding-inline:20px}.menu-toggle{display:none}.hero{background:#f6f6fb url('assets/textura-fundo.webp') center/cover}.hero-grid{min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;gap:26px;align-items:center}.hero-copy{padding:46px 0}.hero-art{height:620px;display:flex;justify-content:center;align-items:flex-end;overflow:hidden}.students{height:590px;width:auto;max-width:100%;object-fit:contain;object-position:bottom}.intro-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:100px;align-items:center}.intro-grid>div>p:not(.eyebrow){max-width:620px;color:var(--muted)}.section-heading{max-width:760px;margin-bottom:36px}.section-heading>p:not(.eyebrow){color:var(--muted);max-width:650px}.track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.track-card{background:var(--accent);color:#fff;padding:26px 23px 30px;border-radius:var(--radius)}.track-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.track-number{font-family:Montserrat,Arial,sans-serif;opacity:.7}.track-card h3{color:white;min-height:58px;margin-bottom:16px}.track-card p{line-height:1.7}.track-controls{display:none}.reveal-ready{opacity:0;transform:translateY(20px);transition:opacity .55s ease,transform .55s ease}.reveal-ready.in-view{opacity:1;transform:none}
@media(max-width:1100px){.header-inner{gap:16px}.navigation{gap:16px}.brand img{width:145px}.hero-grid{min-height:600px}.hero-art{height:570px}.students{height:540px}.intro-grid{gap:45px}.track-card{padding:24px 18px}}
@media(max-width:900px){.container{width:calc(100% - 40px)}.header-inner{height:72px}.navigation{display:none;position:absolute;top:72px;left:0;right:0;background:white;padding:12px 20px 20px;border-bottom:1px solid var(--line);box-shadow:0 14px 20px #192a6b14}.navigation.open{display:grid;gap:0}.navigation a{min-height:48px;border-bottom:1px solid #eef0f6}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;flex-shrink:0;border:0;background:transparent;border-radius:8px;color:var(--navy)}.menu-toggle span{width:22px;height:2px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.header-cta{margin-left:auto}.hero-grid{gap:10px;min-height:570px}.hero-art{height:540px}.students{height:500px}.track{gap:12px}.track-card{padding:22px 16px}}
@media(max-width:600px){html{scroll-padding-top:88px}.container{width:calc(100% - 40px)}.header-inner{height:68px;gap:10px}.brand img{width:125px}.header-cta{padding:8px 12px;min-height:44px}.menu-toggle{width:44px}.navigation{top:68px}.section{padding:52px 0}section[id]{scroll-margin-top:88px}h2{margin-bottom:18px}.eyebrow{letter-spacing:1.2px;margin-bottom:12px}.hero-grid{grid-template-columns:1fr;gap:0;min-height:0}.hero-copy{padding:34px 0 12px}.lead{line-height:1.65;margin-top:18px}.actions{margin-top:24px;gap:10px}.actions .button{padding-inline:16px;flex:1}.hero-art{height:330px;align-items:flex-end}.students{height:345px;width:auto}.intro-grid{grid-template-columns:1fr;gap:20px}.section-heading{margin-bottom:28px}.track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:14px;border-radius:var(--radius);overscroll-behavior-x:contain}.track::-webkit-scrollbar{display:none}.track-card{flex:0 0 100%;scroll-snap-align:start;padding:26px;min-width:0}.track-top{margin-bottom:26px}.track-card h3{min-height:0;margin-bottom:16px}.track-card p{min-height:77px}.track-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:20px}.round-button{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--navy);line-height:1}.track-counter{color:var(--muted);min-width:46px;text-align:center}.reveal-ready{transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}.button:hover{transform:none}}

@media(max-width:600px){.actions{display:grid;grid-template-columns:1fr}.actions .button{min-height:48px;padding:11px 16px}}


.reveal-ready{opacity:1;transform:none;transition:none}.reveal-ready.in-view{animation:section-enter .55s ease both}@keyframes section-enter{from{opacity:.25;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.reveal-ready.in-view{animation:none}}


/* Hero: elementos de marca e composição com a foto fora do box. */
.hero{position:relative;isolation:isolate;z-index:1}
.hero h1{position:relative;isolation:isolate}
.hero-title{position:relative;z-index:1;display:block;color:var(--navy)}

.hero .actions .button{min-width:250px;min-height:60px;padding:15px 38px;border-radius:12px;box-shadow:0 10px 24px #192a6b30}
.hero .actions .button:hover{box-shadow:0 13px 28px #192a6b45;transform:translateY(-3px)}
.hero-art{position:relative;overflow:visible;isolation:isolate}
.hero-art .students{position:absolute;bottom:-65px;height:690px;max-width:none;z-index:2}
.hero-shape{display:block;position:absolute;width:299px;height:299px;border-radius:20px;pointer-events:none;z-index:1;will-change:transform}
.shape-blue{background:#00b9ff33;top:90px;left:0;animation:hero-blue-sway 2s ease-in-out infinite alternate}
.shape-peach{background:#ffaa8678;bottom:10px;right:0;animation:hero-peach-sway 2s ease-in-out infinite alternate}
@keyframes hero-blue-sway{from{transform:rotate(0deg)}to{transform:rotate(-10deg)}}
@keyframes hero-peach-sway{from{transform:rotate(0deg)}to{transform:rotate(10deg)}}
@media(min-width:901px) and (max-width:1100px){.hero-art .students{height:630px;bottom:-60px}.hero-shape{width:250px;height:250px}.shape-blue{left:0}}
@media(min-width:601px) and (max-width:900px){.hero-art .students{height:560px;max-width:100%;bottom:-45px}.hero-shape{width:210px;height:210px}.hero .actions .button{min-width:220px}}
@media(max-width:600px){.hero h1{max-width:380px}.hero .actions .button{min-width:0;width:100%;min-height:56px;padding:14px 24px}.hero-art{height:330px;margin-top:16px}.hero-art .students{height:380px;bottom:-45px;max-width:none}.hero-shape{width:190px;height:190px;border-radius:14px}.shape-blue{left:2px;top:22px}.shape-peach{right:2px;bottom:8px}#programa{padding-top:85px}}
@media(prefers-reduced-motion:reduce){.hero-shape{animation:none;will-change:auto}}

/* Blocos proporcionais à coluna, agrupados atrás da foto; foto maior e vazando para a próxima seção. */
.hero-shape{width:60%;height:auto;aspect-ratio:1;border-radius:24px}
.shape-blue{top:6%;left:4%}
.shape-peach{right:0;bottom:4%;width:50%}
.hero-art .students{height:720px;bottom:-95px}
@media(min-width:901px) and (max-width:1100px){.hero-art .students{height:665px;bottom:-85px}}
@media(min-width:601px) and (max-width:900px){.hero-art .students{height:580px;bottom:-65px}.shape-blue{top:30%}}
@media(max-width:600px){.hero-shape{max-width:230px;border-radius:18px}.shape-blue{left:calc(50% - 165px)}.shape-peach{right:calc(50% - 175px);max-width:185px}.hero-art .students{height:400px;bottom:-60px}#programa{padding-top:128px}}

/* Topbar: seção atual, linha sob os links e separação só depois de rolar. */
.header{background:transparent;border-bottom:1px solid transparent;transition:background .2s,border-color .2s}
.header.scrolled,.header:has(.navigation.open){background:#fffffff2;backdrop-filter:blur(10px)}
.header.scrolled{border-bottom-color:var(--line)}
.scroll-progress{position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--accent);transform:scaleX(var(--progress,0));transform-origin:left;pointer-events:none}
.navigation a{transition:color .18s}
.navigation a:hover{text-decoration:none;color:var(--accent)}
.navigation a[aria-current]{color:var(--accent)}
.header-cta{gap:22px}
.header-cta:hover{transform:none}
.header-cta:active{transform:translateY(1px)}
@media(min-width:901px){.header-inner{height:94px;gap:32px}.brand img{width:156px}.navigation{gap:6px}.navigation .nav-vagas{display:none}.navigation a{position:relative;padding:0 12px;font-weight:600;color:var(--navy)}.navigation a:after{content:'';position:absolute;left:12px;right:12px;bottom:7px;height:2px;border-radius:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.navigation a:hover:after,.navigation a[aria-current]:after{transform:scaleX(1)}.header-cta{min-height:47px;margin-left:32px;padding:6px 18px}}
@media(max-width:900px){.header-inner{height:74px}.header-cta{display:none}.menu-toggle{margin-left:auto;margin-right:-11px}.menu-toggle span{height:1.5px}.navigation{top:74px;background:#fff;padding:8px 20px 24px;box-shadow:0 18px 30px #192a6b14}.navigation.open{animation:menu-in .2s ease both}.navigation a{min-height:50px;font-weight:600;border-bottom:0}}
@keyframes menu-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.navigation.open{animation:none}}

/* Escala tipográfica: todos os tamanhos da página saem destes tokens. */
:root{--text-xs:13px;--text-sm:14px;--text-base:16px;--text-lg:18px;--title-sm:20px;--title-md:24px;--title-lg:36px;--title-xl:64px}
body{font-size:var(--text-base)}
strong{font-weight:600}
h1{font-size:var(--title-xl);letter-spacing:-.02em}
h2{font-size:var(--title-lg);letter-spacing:-.015em}
h3{font-size:var(--title-sm)}
.eyebrow{font-size:var(--text-xs);font-weight:600}
.lead,.hero .actions .button{font-size:var(--text-lg)}
.button,.navigation a,.text-link{font-size:var(--text-base)}.track-card p,.track-counter{font-size:var(--text-sm)}
.track-number,.round-button{font-size:var(--title-md)}
.header-cta{font-size:var(--text-sm)}
@media(max-width:1100px){:root{--title-xl:54px}}
@media(max-width:1000px){:root{--title-xl:48px}}
@media(max-width:900px){:root{--title-xl:42px;--title-lg:32px}.navigation a{font-size:var(--text-lg)}}
@media(max-width:600px){:root{--title-xl:38px;--title-lg:28px}}

/* Montserrat é mais larga: a trilha usa duas colunas em telas médias; o hero não gera rolagem lateral. */
.hero{overflow-x:clip}
/* O fundo do hero sobe para trás da topbar transparente. */
:root{--header-h:95px}
@media(max-width:900px){:root{--header-h:75px}}
.hero{margin-top:calc(var(--header-h)*-1);padding-top:var(--header-h)}
.hero-title span{display:block}
h1,h2,h3{text-wrap:balance}

/* Hero: coluna de texto. Título em três linhas e grifo na marca. */
.hero h1{line-height:1.08;letter-spacing:-.025em}
.hero-title span{width:fit-content;margin-top:.04em;background:linear-gradient(var(--cyan),var(--cyan)) left 90%/100% .2em no-repeat}

.hero .lead{max-width:500px;margin-top:22px;color:var(--ink);text-wrap:pretty}
.hero .actions{margin-top:32px}
.hero .actions .button{gap:16px;border-radius:9px}
@media(min-width:601px) and (max-width:1000px){.track{grid-template-columns:repeat(2,minmax(0,1fr))}.track-card h3{min-height:0}}

/* Programa: texto e foguete em cima, três destaques na largura toda. */
.intro-grid{grid-template-columns:1.2fr .8fr;gap:64px}
.intro-grid .text-link{margin-top:12px}
.rocket-art{position:relative;isolation:isolate;width:100%;max-width:400px;height:400px;justify-self:end}
.rocket-art:before{content:'';position:absolute;z-index:-1;top:50%;left:50%;width:min(100%,328px);aspect-ratio:1;border-radius:50%;background:#e3eefa;transform:translate(-50%,-50%)}
.rocket{position:absolute;left:50%;bottom:0;height:380px;width:auto;max-width:none;transform:translateX(-50%) rotate(12deg)}
@media(min-width:601px){#programa{padding-top:164px}}
.benefit-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:48px 0 0;padding:0}
.benefit-list li{padding:28px;border-radius:var(--radius);background:var(--soft)}
.benefit-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:12px;background:#e3eefa;color:var(--accent);margin-bottom:18px}
.benefit-list h3{margin-bottom:8px}
.benefit-list p{color:var(--muted)}
@media(max-width:600px){.rocket-art:before{width:min(100%,246px)}}
@media(min-width:601px) and (max-width:900px){.rocket-art:before{width:min(100%,279px)}}
@media(max-width:900px){.intro-grid{gap:32px}.rocket-art{height:340px}.rocket{height:330px}.benefit-list li{padding:22px}}
@media(max-width:600px){.intro-grid{grid-template-columns:1fr;gap:28px}.rocket-art{height:300px;max-width:320px;justify-self:center}.rocket{height:320px}.benefit-list{grid-template-columns:1fr;gap:14px;margin-top:32px}.benefit-list li{display:grid;grid-template-columns:52px 1fr;gap:0 16px;padding:20px}.benefit-mark{grid-row:span 2;margin:0}}

.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* Mentoria: faixa de destaque e três blocos iguais. */
.mentor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mentor-tile{display:flex;flex-direction:column;padding:28px;border-radius:var(--radius);background:var(--soft)}
.mentor-tile .benefit-mark{margin-bottom:22px}
.mentor-tile h3{margin:0 0 8px}
.mentor-tile p{color:var(--muted)}
.mentor-feature{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-column:1/-1;grid-template-columns:52px 1fr;gap:2px 20px;align-items:center;padding:28px 32px;background:var(--navy)}
.mentor-feature:after{content:'';position:absolute;z-index:-1;top:-90px;right:-90px;width:280px;aspect-ratio:1;border-radius:50%;background:#ffffff12}
.mentor-feature .benefit-mark{grid-row:span 2;margin:0;background:#ffffff1f;color:#fff}
.mentor-feature h3{margin:0;font-size:var(--title-md);color:#fff}
.mentor-feature p{color:#e3e7f5}
@media(max-width:900px){.mentor-grid{gap:14px}.mentor-tile{padding:22px}.mentor-feature{padding:24px}}
@media(max-width:600px){.mentor-grid{grid-template-columns:1fr}.mentor-tile{display:grid;grid-template-columns:52px 1fr;gap:0 16px;padding:20px}.mentor-tile .benefit-mark{grid-row:span 2;margin:0}.mentor-feature:after{top:-110px;right:-110px;width:220px}}

/* Prêmio: faixa roxa de ponta a ponta com a foto apoiada na base e saindo por cima. */
.prize{padding:72px 0;background:#f6f6fb url('assets/textura-fundo.webp') center/cover;overflow-x:clip}
.prize-panel{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:32px;color:var(--ink)}
.prize-copy p:not(.eyebrow){max-width:600px}
.prize-note{font-weight:600}
.prize-copy .text-link{margin-top:10px}
.prize-figure{position:relative;isolation:isolate}
.prize-figure:before{content:'';position:absolute;z-index:-1;bottom:-72px;left:50%;width:360px;aspect-ratio:1;border-radius:50%;background:#00e0ec33;transform:translateX(-50%)}
.prize-art{position:absolute;bottom:-72px;left:50%;height:510px;width:auto;max-width:none;transform:translateX(-50%)}
@media(max-width:1100px){.prize-panel{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.prize-figure:before{width:300px}.prize-art{height:480px}}
@media(max-width:1000px){.prize-art{height:430px}}
@media(max-width:900px){.prize{padding:56px 0 0}.prize-panel{grid-template-columns:1fr;gap:24px}.prize-figure{height:340px;overflow:hidden}.prize-figure:before{bottom:-40px;width:320px}.prize-art{bottom:0;height:340px}}
@media(max-width:600px){.prize{padding-top:48px}.prize-figure{height:300px}.prize-figure:before{bottom:-30px;width:270px}.prize-art{height:300px}}

/* Trilha: degraus que sobem e escurecem a cada etapa. */
.track-card{display:flex;flex-direction:column;padding:26px;background:var(--step-bg);color:var(--step-text)}
.track-card{--step-bg:#eef3fa;--step-text:var(--ink);--step-title:var(--navy);--step-mark:#fff;--step-icon:var(--accent)}
.track-card:nth-child(4){--step-bg:var(--purple);--step-text:#fff;--step-title:#fff;--step-mark:#ffffff26;--step-icon:#fff}
.track-card h3{min-height:0;margin:0 0 10px;color:var(--step-title)}
.track-top{margin-bottom:24px}
.track-card .benefit-mark{margin:0;background:var(--step-mark);color:var(--step-icon)}
.track-number{font-weight:600}
.track-card p{margin-top:0}
@media(min-width:1181px){.track-card h3{margin-top:auto}.track-card:nth-child(1){margin-top:96px}.track-card:nth-child(2){margin-top:64px}.track-card:nth-child(3){margin-top:32px}}
@media(min-width:601px) and (max-width:1180px){.track{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Etapas: linha do tempo vertical em faixa azul-marinho, com a foto apoiada na base e saindo por cima. */
.selection{padding:88px 0;background:var(--navy);overflow-x:clip}
.selection-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:48px}
.selection-heading{margin-bottom:36px}
.selection .eyebrow{color:var(--cyan)}
.selection h2{color:#fff}
.selection-heading p:not(.eyebrow){max-width:560px;color:#d5dbef}
.steps{list-style:none;margin:0;padding:0}
.steps li{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:0 18px;padding-bottom:20px}
.steps li:last-child{padding-bottom:0}
.steps li:not(:last-child):after{content:'';position:absolute;top:44px;bottom:0;left:21px;width:2px;background:#ffffff2e}
.step-number{display:grid;place-items:center;width:44px;height:44px;border:2px solid #ffffff4d;border-radius:50%;color:#fff;font-weight:600;font-size:var(--text-base)}
.steps li:last-child .step-number{border-color:var(--accent);background:var(--accent)}
.steps h3{margin:0 0 2px;color:#fff}
.steps p{font-size:var(--text-sm);color:#d5dbef}
.selection-figure{position:relative;isolation:isolate}
.selection-figure:before{content:'';position:absolute;z-index:-1;bottom:-88px;left:50%;width:400px;aspect-ratio:1;border-radius:50%;background:#ffffff14;transform:translateX(-50%)}
.astronaut{position:absolute;bottom:-88px;left:50%;height:740px;width:auto;max-width:none;transform:translateX(-50%)}
@media(max-width:1100px){.selection-figure:before{width:320px}.astronaut{height:700px}}
@media(max-width:900px){.selection{padding:64px 0 0}.selection-grid{grid-template-columns:1fr;gap:28px}.selection-figure{height:400px;overflow:hidden}.selection-figure:before{bottom:-60px;width:340px}.astronaut{position:static;display:block;height:560px;margin:0 auto;transform:none}}
@media(max-width:600px){.selection{padding-top:52px}.selection-figure{height:350px}.selection-figure:before{width:290px}.astronaut{height:480px}}

/* Vagas: lista de cards em largura total, com busca e paginação. */
.jobs{background:var(--soft)}
.jobs-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:36px}
.jobs-heading h2{margin:0}
.jobs-heading>p{max-width:300px;color:var(--muted)}
.job-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.job-search{position:relative;width:280px;max-width:100%;color:var(--muted)}
.job-search svg{position:absolute;top:14px;left:14px;pointer-events:none}
.job-filter{width:100%;height:48px;padding:0 40px 0 44px;border:1px solid #cdd4e1;border-radius:9px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23526078' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E") right 14px center no-repeat;color:var(--ink);font:inherit;font-size:var(--text-sm);appearance:none;cursor:pointer}
.job-filter:focus-visible{outline:3px solid #db9b00;outline-offset:2px}
.job-count,.job-status{font-size:var(--text-sm);color:var(--muted)}
.job-list{display:grid;gap:18px}
.job-card{padding:30px 32px 24px;border:1px solid var(--line);border-top:3px solid var(--cyan);border-radius:12px;background:#fff}
.job-tag{font-size:var(--text-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}
.job-card h3{margin:10px 0 18px;font-size:var(--title-md)}
.job-meta svg{flex-shrink:0;color:var(--accent)}
.job-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
.job-actions .button{font-size:var(--text-sm)}
.job-apply{gap:22px}
.job-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}
.job-pages{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.job-pages button{width:44px;height:44px;border:1px solid #cdd4e1;border-radius:9px;background:#fff;color:var(--navy);font-size:var(--text-sm);font-weight:600;transition:background .18s}
.job-pages button:hover{background:#e3eefa}
.job-pages button[aria-current]{border-color:var(--accent);background:var(--accent);color:#fff}
@media(max-width:900px){.jobs-heading{flex-direction:column;align-items:flex-start;gap:14px}.jobs-heading>p{max-width:560px}}
@media(max-width:600px){.job-card{padding:22px 20px 20px}.job-card h3{font-size:var(--title-sm)}.job-actions{flex-direction:column;align-items:stretch}.job-buttons{flex-direction:column-reverse}.job-actions .button{width:100%}.job-search{flex:1;width:auto}}

/* Vagas: detalhes expansíveis dentro do card. */
.job-buttons{display:flex;gap:14px}
.job-toggle{display:inline-flex;align-items:center;gap:18px;min-height:44px;padding:0;border:0;background:none;color:var(--navy);font-size:var(--text-sm);font-weight:600}
.job-toggle:hover span{text-decoration:underline;text-underline-offset:4px}
.job-toggle i{font-style:normal;color:var(--accent);transition:transform .25s ease}
.job-toggle[aria-expanded=true] i{transform:rotate(180deg)}
.job-details{display:grid;grid-template-rows:0fr;visibility:hidden;opacity:0;transition:grid-template-rows .4s ease,opacity .3s ease,visibility .4s}
.job-details.open{grid-template-rows:1fr;visibility:visible;opacity:1}
.job-details-inner{min-height:0;overflow:hidden}
.job-details.open .job-details-inner{overflow:visible}
.job-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0 0;padding-top:4px;border-top:1px solid var(--line)}
.job-detail-item{padding:18px 20px;border-bottom:1px solid var(--line)}
.job-detail-item dt{font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.job-detail-item dd{margin:4px 0 0;color:var(--navy);font-size:var(--text-sm);font-weight:600}
.job-details h4{margin:24px 0 10px;font-family:Montserrat,Arial,sans-serif;font-size:var(--text-base);font-weight:700;color:var(--navy)}
.job-details ul{margin:0;padding-left:18px;color:var(--muted);font-size:var(--text-sm)}
.job-details li+li{margin-top:6px}
.job-details-inner>p{color:var(--muted);font-size:var(--text-sm)}
@media(max-width:900px){.job-details-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.job-details-grid{grid-template-columns:1fr}.job-detail-item{padding:14px 0}.job-toggle{justify-content:space-between}}

/* Vagas: dados em colunas fixas para comparar os cards de cima a baixo. */
.job-meta{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,1.5fr);margin:0;padding:0}
.job-meta li{display:flex;align-items:flex-start;gap:12px;min-width:0;padding-right:24px}
.job-meta li+li{padding-left:24px;border-left:1px solid var(--line)}
.job-meta svg{margin-top:2px}
.job-meta small,.job-meta em{display:block;color:var(--muted);font-size:var(--text-xs);font-style:normal}
.job-meta strong{display:block;margin-top:2px;color:var(--navy);font-size:var(--text-base);line-height:1.3}
.job-meta li:nth-child(2) strong{font-size:var(--text-lg)}
@media(max-width:900px){.job-meta li{padding-right:14px}.job-meta li+li{padding-left:14px}}
@media(max-width:700px){.job-meta{grid-template-columns:1fr;gap:12px}.job-meta li,.job-meta li+li{padding:0;border-left:0}}

/* Dúvidas frequentes: título à esquerda e perguntas expansíveis à direita. */
.faq-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:88px;align-items:center}
.faq-intro>p:last-child{max-width:320px;color:var(--muted)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list details:first-child{border-top:1px solid var(--line)}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0;color:var(--navy);font-family:Montserrat,Arial,sans-serif;font-size:var(--text-lg);font-weight:600;line-height:1.3;list-style:none;cursor:pointer}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:hover{color:var(--accent)}
.faq-list summary:focus-visible{outline:3px solid #db9b00;outline-offset:2px}
.faq-list summary span{flex-shrink:0;color:var(--accent);font-size:var(--title-md);font-weight:400;line-height:1;transition:transform .2s ease}
.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list details p{padding-bottom:26px;color:var(--muted)}

/* Rodapé. O logo do Sistema FIEP aparece em branco sobre o fundo escuro. */
.site-footer{padding:34px 0;border-top:4px solid var(--cyan);background:var(--navy);color:#fff}
.site-footer-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.site-footer-logo{width:156px;filter:brightness(0) invert(1)}
.iel-link{display:inline-flex;align-items:center;gap:14px;color:#d5dbef;font-size:var(--text-xs)}
.iel-link img{height:50px;width:auto}
.iel-link:hover{color:#fff}
.top-link{display:inline-flex;align-items:center;gap:12px;justify-self:end;min-height:44px;color:#d5dbef;font-size:var(--text-xs);font-weight:600}
.top-link span{font-size:var(--title-sm);font-weight:400}
.top-link:hover{color:#fff}
@media(max-width:900px){.faq-grid{grid-template-columns:1fr;gap:32px}.faq-list summary{padding:22px 0}}
@media(max-width:760px){.site-footer-inner{grid-template-columns:1fr;gap:12px}.iel-link{justify-self:start;max-width:100%}.top-link{justify-self:start}}
.navigation a,.header-cta{white-space:nowrap}
@media(min-width:901px) and (max-width:1000px){.header-inner{gap:12px}.navigation{gap:0}.navigation a{padding:0 8px;font-size:var(--text-sm)}.navigation a:after{left:8px;right:8px}.header-cta{margin-left:8px;padding-inline:14px}}

/* Respiro: margens laterais e espaço entre seções saem destes valores. */
:root{--gutter:32px;--section-y:112px}
@media(max-width:1100px){:root{--section-y:96px}}
@media(max-width:900px){:root{--gutter:20px;--section-y:80px}}
@media(max-width:600px){:root{--section-y:64px}}
.container{width:min(1200px,calc(100% - var(--gutter)*2))}
.section{padding:var(--section-y) 0}
@media(min-width:601px){#programa{padding-top:calc(var(--section-y) + 84px)}}
@media(max-width:600px){#programa{padding-top:128px}}
.section-heading,.jobs-heading{margin-bottom:48px}
.benefit-list{gap:24px;margin-top:64px}
.benefit-list li{padding:32px}
.mentor-grid,.track{gap:24px}
.mentor-tile{padding:32px}
.mentor-feature{padding:32px 36px}
.track-card{padding:30px}
.job-list{gap:24px}
.job-card{padding:36px 40px 28px}
.job-toolbar{margin-bottom:28px}
.faq-grid{gap:104px}
.site-footer{padding:44px 0}
/* Faixas com foto: padding próprio e foto maior, para ela continuar saindo por cima. */
@media(min-width:901px){.prize{padding:80px 0}.prize-figure:before,.prize-art{bottom:-80px}.prize-art{height:540px}.selection{padding:100px 0}.selection-figure:before,.astronaut{bottom:-100px}.astronaut{height:764px}}
@media(min-width:901px) and (max-width:1100px){.prize-art{height:520px}.selection{padding:88px 0}.selection-figure:before,.astronaut{bottom:-88px}.astronaut{height:700px}}
@media(min-width:901px) and (max-width:1000px){.prize-art{height:470px}}
@media(max-width:760px){.mentor-grid{grid-template-columns:1fr}}
@media(max-width:900px){.prize,.selection{padding:var(--section-y) 0 0}.faq-grid{gap:40px}.benefit-list{margin-top:48px;gap:16px}.benefit-list li,.mentor-tile{padding:26px}.mentor-grid,.track{gap:16px}.track-card{padding:26px}.job-card{padding:30px 28px 24px}}
@media(max-width:600px){.benefit-list li,.mentor-tile{padding:24px}.job-card{padding:26px 22px 22px}.job-list{gap:18px}}

/* Paleta do Sistema FIEP: marinho e azul como base, ciano como acento. O roxo fica só em dois detalhes. */
.primary svg{color:var(--cyan)}
.hero-title span{padding-bottom:.08em;background-size:100% .09em;background-position:left bottom}
/* Destaques: títulos em roxo e traço em ciano. */
h1 .hero-title span,h2 span{color:var(--purple)}
.shape-blue{background:#00e0ec38}
.shape-peach{background:#1670c030}
.rocket-art:before{background:#d6f9fb}
.selection .eyebrow{color:var(--cyan)}
.steps li:last-child .step-number{border-color:var(--cyan);background:var(--cyan);color:var(--navy)}
.navigation a:after{background:var(--cyan)}
.benefit-list li:nth-child(1) .benefit-mark,.mentor-tile:nth-child(2) .benefit-mark{background:#e3eefa;color:var(--accent)}
.benefit-list li:nth-child(2) .benefit-mark,.mentor-tile:nth-child(3) .benefit-mark{background:#d6f9fb;color:#00707a}
.benefit-list li:nth-child(3) .benefit-mark,.mentor-tile:nth-child(4) .benefit-mark{background:#efe8fb;color:var(--purple)}
.job-pages button[aria-current]{border-color:var(--navy);background:var(--navy)}
.job-pages button:hover{background:#e3eefa}
.job-pages button[aria-current]:hover{background:var(--navy-deep)}
.site-footer{background:var(--navy-deep)}

/* Casas: faixa em degradê com quatro cards brancos. Logos com a mesma altura. */
.houses{background:linear-gradient(115deg,var(--navy-deep) 0%,var(--navy) 45%,var(--accent) 100%);color:#fff}
.houses-grid{display:grid;gap:48px}
.houses-panel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:0 64px;align-items:end}
.houses-panel .eyebrow{grid-column:1/-1;color:var(--cyan)}
.houses-panel h2{margin:0;color:#fff}
.house-list{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;padding:0}
.house-list li{display:flex;min-width:0}
.house-row{display:flex;flex-direction:column;flex:1;min-width:0;padding:32px 28px 24px;border-radius:var(--radius);background:#fff;color:var(--ink);transition:translate .2s ease,box-shadow .2s ease}
.house-logo{height:26px;width:auto;max-width:100%;object-fit:contain;object-position:left center;margin-bottom:26px}
.house-row p{flex:1;margin-bottom:24px;color:var(--muted)}
.house-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--line);color:var(--navy);font-size:var(--text-sm);font-weight:600}
.house-arrow{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:#e3eefa;color:var(--accent);transition:background .18s,color .18s}
.house-row:hover{translate:0 -4px;box-shadow:0 16px 32px #0a123a4d}
.house-row:hover .house-arrow{background:var(--navy);color:#fff}
.house-row:focus-visible{outline-color:var(--cyan);outline-offset:3px}
@media(max-width:1180px){.house-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.houses-panel{grid-template-columns:1fr;gap:14px}.houses-grid{gap:36px}.house-list{gap:16px}}
@media(max-width:600px){.house-list{grid-template-columns:1fr}.house-row{padding:24px 22px 18px}.house-logo{height:24px;margin-bottom:18px}.house-row p{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.house-row:hover{translate:none}}

/* Movimento: entrada ao rolar, em cascata, e microinterações. Tudo fica desligado com movimento reduzido. */
:root{--ease-out:cubic-bezier(.2,.7,.2,1)}
.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out),translate .2s ease,box-shadow .2s ease;transition-delay:var(--delay,0ms),var(--delay,0ms),0ms,0ms}
.reveal-ready.in-view{opacity:1;transform:none;animation:none}
.hero-copy>*{animation:hero-in .7s var(--ease-out) both}
.hero-copy>:nth-child(2){animation-delay:.08s}
.hero-copy>:nth-child(3){animation-delay:.16s}
.hero-copy>:nth-child(4){animation-delay:.24s}
.hero-art .students{animation:hero-photo .9s var(--ease-out) .1s both}
@keyframes hero-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes hero-photo{from{opacity:0;translate:0 26px}to{opacity:1;translate:0 0}}
.rocket{transform:translateX(-50%) translateY(var(--lift,0)) rotate(12deg);transition:transform .25s linear}
.steps li.reveal-ready:after{transform:scaleY(0);transform-origin:top;transition:transform .5s var(--ease-out) calc(var(--delay,0ms) + .25s)}
.steps li.in-view:after{transform:none}
.step-number{transition:background .2s,border-color .2s,scale .2s}
.steps li:hover .step-number{scale:1.08}
.button{transition:background .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s}
.button svg{transition:translate .2s var(--ease-out)}
.button:hover svg{translate:2px -2px}
.button:active,.hero .actions .button:active{transform:scale(.98)}
.text-link{transition:color .18s,text-underline-offset .18s}
.text-link:hover{color:var(--navy);text-underline-offset:7px}
.benefit-list li:hover,.mentor-tile:hover,.track-card:hover{translate:0 -4px;box-shadow:0 14px 28px #192a6b14}
.benefit-mark{transition:scale .2s var(--ease-out),rotate .2s var(--ease-out)}
.benefit-list li:hover .benefit-mark,.mentor-tile:hover .benefit-mark,.track-card:hover .benefit-mark{scale:1.08;rotate:-4deg}
.house-arrow svg{transition:translate .2s var(--ease-out)}
.house-row:hover .house-arrow svg{translate:2px -2px}
.house-logo{transition:scale .2s var(--ease-out);transform-origin:left center}
.house-row:hover .house-logo{scale:1.03}
.job-card{transition:opacity .6s var(--ease-out),transform .6s var(--ease-out),box-shadow .2s ease,border-color .2s ease}
.job-card:hover{box-shadow:0 12px 26px #192a6b12}
.job-toggle:hover i{translate:0 2px}
.job-toggle i{display:inline-block;transition:transform .25s ease,translate .2s ease}
.job-filter{transition:border-color .18s,box-shadow .18s}
.job-filter:hover{border-color:var(--accent)}
.job-pages button{transition:background .18s,border-color .18s,scale .15s}
.job-pages button:active{scale:.94}
.faq-list summary{transition:color .18s}
.faq-list details[open] p{animation:faq-in .3s var(--ease-out)}
@keyframes faq-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.top-link span{transition:translate .2s var(--ease-out)}
.top-link:hover span{translate:0 -3px}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.benefit-list li:hover,.mentor-tile:hover,.track-card:hover,.button:hover svg,.house-row:hover .house-arrow svg,.job-toggle:hover i,.top-link:hover span{translate:none}.steps li:hover .step-number,.benefit-list li:hover .benefit-mark,.mentor-tile:hover .benefit-mark,.track-card:hover .benefit-mark,.house-row:hover .house-logo{scale:none;rotate:none}.button:active,.hero .actions .button:active{transform:none}}

/* Traço do título riscado ao abrir a página e flutuação suave do foguete. */
.hero-title span{animation:title-stroke .8s cubic-bezier(.65,0,.35,1) .65s both}
@keyframes title-stroke{from{background-size:0 .09em}}
.rocket{animation:rocket-float 1.8s ease-in-out infinite alternate}
@keyframes rocket-float{from{translate:0 5px}to{translate:2px -7px}}

/* Etapas: a foto é larga; fica presa à margem direita para não cortar o braço. */
@media(min-width:901px){.astronaut{left:auto;right:-30px;transform:none}.selection-figure:before{left:auto;right:30px;transform:none}}
@media(max-width:900px){.astronaut{margin:0 0 0 50%;transform:translateX(-50%)}}
@media(max-width:400px){.astronaut{height:410px}}

/* Prêmio: a foto termina na borda direita do arquivo; o esmaecido esconde o corte reto do braço. */
.prize-art{-webkit-mask-image:linear-gradient(to left,transparent,#000 6%);mask-image:linear-gradient(to left,transparent,#000 6%)}

/* Trilha: as barras crescem da base, em sequência. O clip revela sem deformar o texto. */
.track-card{transition:translate .2s ease,box-shadow .2s ease}
.track.reveal-ready{opacity:1;transform:none}
.track.reveal-ready:not(.in-view) .track-card{clip-path:inset(100% 0 0 0)}
.track.in-view .track-card{animation:bar-grow .8s cubic-bezier(.2,.7,.2,1) backwards}
.track.in-view .track-card:nth-child(2){animation-delay:.14s}
.track.in-view .track-card:nth-child(3){animation-delay:.28s}
.track.in-view .track-card:nth-child(4){animation-delay:.42s}
@keyframes bar-grow{from{clip-path:inset(100% 0 0 0 round 18px)}to{clip-path:inset(0 0 0 0 round 18px)}}

/* Modal da vaga compartilhada. */
#job-dialog{width:min(720px,calc(100% - 24px));max-height:calc(100dvh - 40px);padding:28px 36px 36px;border:0;border-radius:var(--radius);background:#fff;color:var(--ink);overscroll-behavior:contain}
#job-dialog[open]{animation:dialog-in .28s var(--ease-out)}
#job-dialog::backdrop{background:#111d4a99;backdrop-filter:blur(3px)}
@keyframes dialog-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;margin-bottom:24px;border-bottom:1px solid var(--line)}
.dialog-head .eyebrow{margin:0}
.dialog-close{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);font-size:var(--title-md);line-height:1;transition:background .18s}
.dialog-close:hover{background:#e3eefa}
#job-dialog h2{margin-bottom:20px;font-size:var(--title-md)}
#dialog-content>p{color:var(--muted)}
.dialog-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0;padding:6px 20px;border-radius:12px;background:var(--soft)}
.dialog-facts div{padding:14px 0}
.dialog-facts div:not(:nth-last-child(-n+1)){border-bottom:1px solid var(--line)}
.dialog-facts dt{font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.dialog-facts dd{margin:4px 0 0;color:var(--navy);font-size:var(--text-sm);font-weight:600}
#job-dialog h3{margin:26px 0 10px;font-size:var(--text-base)}
#job-dialog ul{margin:0;padding-left:18px;color:var(--muted);font-size:var(--text-sm)}
#job-dialog li+li{margin-top:6px}
.dialog-bottom{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.dialog-bottom .button{gap:22px;font-size:var(--text-sm)}
@media(max-width:600px){#job-dialog{padding:20px 20px 24px}.dialog-facts{grid-template-columns:1fr;padding:4px 16px}.dialog-bottom .button{width:100%}}

/* Etapas: fundo claro e suave, com textos escuros. */
.selection{background:#e8f1fb linear-gradient(115deg,#e8f1fb 0%,#e4f7fa 100%)}
.selection .eyebrow{color:#125fa6}
.selection h2{color:var(--navy)}
.selection-heading p:not(.eyebrow),.steps p{color:var(--ink)}
.steps h3{color:var(--navy)}
.step-number{border-color:#a9bde0;background:#fff;color:var(--navy)}
.steps li:not(:last-child):after{background:#b9cae6}
.steps li:last-child .step-number{border-color:var(--navy);background:var(--navy);color:#fff}
.selection-figure:before{background:#00e0ec2e}

/* Estados da consulta de vagas, preservando a grade existente. */
.jobs-state{grid-column:1/-1;padding:40px 20px;text-align:center;color:var(--muted,#526078)}.jobs-state .button{margin-top:20px}.job-application-unavailable{font-size:14px;padding:12px 0}.job-filter:disabled{opacity:.6;cursor:wait}

/* Vagas: logo da casa e nome da empresa no topo do card. */
.job-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.job-brand{display:flex;align-items:center;gap:16px;min-width:0}
.job-logo{flex-shrink:0;width:auto;height:26px}
.job-company{min-width:0;padding-left:16px;border-left:1px solid var(--line);color:var(--navy);font-size:var(--text-sm);font-weight:600;line-height:1.3}
.job-head .job-tag{flex-shrink:0}
.job-card h3{margin-top:18px}
#dialog-content>.job-brand{margin-bottom:18px}
#dialog-content .job-company{margin:0;color:var(--navy)}
@media(max-width:600px){.job-head{align-items:flex-start}.job-brand{flex-direction:column;align-items:flex-start;gap:10px}.job-logo{height:24px}.job-company{padding-left:0;border-left:0}}

/* Vagas: card limpo, com logo pequeno e dados em colunas fixas. */
.job-card{padding:26px 32px 20px;border:1px solid var(--line);border-radius:14px}
.job-card:hover{border-color:#c3d3ea}
.job-head{gap:12px;padding-bottom:0;border-bottom:0}
.job-brand{gap:10px}
.job-logo{height:16px}
.job-company{padding-left:10px;color:var(--muted);font-size:var(--text-xs);font-weight:500}
.job-head .job-tag{padding:3px 10px;border-radius:999px;background:#e3eefa;color:var(--navy);font-size:var(--text-xs);font-weight:600;letter-spacing:0;text-transform:none}
.job-card h3{margin:12px 0 18px;font-size:var(--title-sm)}
.job-meta{grid-template-columns:minmax(0,1.1fr) minmax(0,.7fr) minmax(0,1.7fr);gap:0 28px}
.job-meta li,.job-meta li+li{display:block;padding:0;border-left:0}
.job-meta small{margin-bottom:2px}
.job-meta strong,.job-meta li:nth-child(2) strong{display:inline;margin:0;font-size:var(--text-base);font-weight:600}
.job-meta em{display:inline;margin-left:6px}
.job-actions{margin-top:18px;padding-top:14px}
.job-actions .button{min-height:42px;padding-block:6px}
.job-actions .job-share{border-width:1px;border-color:var(--line)}
.job-actions .job-share:hover{border-color:var(--navy);background:#fff}
#dialog-content>.job-brand{margin-bottom:12px}
@media(max-width:900px){.job-meta{grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:14px 20px}.job-meta li:nth-child(3){grid-column:1/-1}}
@media(max-width:600px){.job-card{padding:22px 20px 18px}.job-head{align-items:center}.job-brand{flex-direction:row;align-items:center;gap:10px}.job-logo{height:15px}.job-company{padding-left:10px;border-left:1px solid var(--line)}.job-meta em{display:block;margin-left:0}.job-actions{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 12px}.job-buttons{display:contents}.job-actions .job-share{order:1;width:auto;padding-inline:14px}.job-apply,.job-application-unavailable{order:2;grid-column:1/-1}.job-actions .job-apply{width:100%}.job-toggle{justify-content:flex-start;gap:12px}}

/* Vagas: ordenação e data de publicação. */
.job-toolbar{flex-wrap:wrap}
.job-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;min-width:0}
.job-sort{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:var(--text-sm)}
.job-sort label{white-space:nowrap}
.job-order{width:170px;padding-left:14px}
.job-filter:disabled{cursor:default;opacity:.6}
.job-date{margin-left:auto;color:var(--muted);font-size:var(--text-xs);white-space:nowrap}
@media(max-width:600px){.job-controls{width:100%}.job-search{flex:1 1 100%}.job-sort{flex:1}.job-order{flex:1;width:auto}.job-head{flex-wrap:wrap;gap:6px 12px}.job-date{order:3;width:100%;margin-left:0}}

/* Vagas: filtro por casa e alinhamento do cabeçalho do card. */
.job-head p{margin:0}
.job-head .job-date{margin-left:auto}
.job-house .job-order{width:170px}
@media(max-width:600px){.job-house{flex:1 1 100%}.job-house .job-order{width:100%}.job-head .job-date{margin-left:0}}

/* Vagas: aviso para períodos sem vagas e filtros sem resultado. */
.job-toolbar[hidden]{display:none}
.jobs-empty{display:grid;justify-items:center;gap:0;padding:56px 32px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:center}
.jobs-empty .benefit-mark{margin-bottom:18px}
.jobs-empty h3{margin:0 0 8px;font-size:var(--title-md)}
.jobs-empty p{max-width:460px;color:var(--muted)}
.jobs-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px}
.jobs-empty-actions .button{gap:18px}
@media(max-width:600px){.jobs-empty{padding:40px 22px}}
@media(max-width:600px){.jobs-empty-actions,.jobs-empty-actions .button{width:100%}}
