/*
Theme Name: Vagas em Cláudio MG
Author: Robson Adeilton
Description: Tema acolhedor e comunitário para o portal Vagas em Cláudio MG. Integração nativa com o plugin Conecta Vagas Core.
Version: 3.4.3
Requires at least: 6.4
Tested up to: 7.0
Requires PHP: 8.0
Text Domain: conecta-vagas
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* Ritmo visual compacto: preserva a hierarquia sem áreas vazias excessivas. */
.cv-section{padding:72px 0}
.cv-section-heading{margin-bottom:26px}
.cv-section-heading--center{margin-bottom:36px}
.cv-steps-grid article{min-height:0;padding:26px}
.cv-steps-grid h3{margin-top:18px}
.cv-candidate-cta{padding:56px 0}
.cv-candidate-cta__inner{gap:40px}
.cv-employer-grid{gap:64px}
.cv-page-header,.cv-job-hero{padding:26px 0}
.cv-content-wrap{padding:30px 0}
.cv-job-layout{gap:26px}
.cv-job-content{padding:28px}
.cv-job-apply{padding:24px}
.cv-job-apply>h2{margin-bottom:18px}
.cv-job-details{margin-bottom:22px}
.cv-site-footer{padding-top:48px}
.cv-footer-grid{gap:36px}
.cv-footer-bottom{margin-top:38px}

@media(max-width:760px){
  .cv-section{padding:52px 0}
  .cv-page-header,.cv-job-hero{padding:22px 0}
  .cv-content-wrap{padding:24px 0}
  .cv-candidate-cta{padding:44px 0}
  .cv-footer-grid{gap:28px}
}

:root{
  --cv-primary:#103d32;--cv-primary-strong:#082f27;--cv-accent:#0e7259;--cv-accent-strong:#075b47;
  --cv-mint:#ddf4ea;--cv-cream:#fff9ef;--cv-coral:#f47d67;--cv-ink:#103d32;--cv-muted:#5e6d67;
  --cv-border:#d9e5df;--cv-surface:#fff;--cv-soft:#f3fbf7;--cv-radius:16px;
  --cv-shadow:0 16px 40px rgba(16,61,50,.11);--cv-container:1600px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cv-cream);color:var(--cv-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}a{color:inherit;text-underline-offset:3px}button,input,select,textarea{font:inherit}button,.button{cursor:pointer}.cv-container{width:min(calc(100% - 80px),var(--cv-container));margin-inline:auto}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.screen-reader-text:focus{clip:auto!important;clip-path:none;height:auto;width:auto;z-index:100000}:focus-visible{outline:3px solid color-mix(in srgb,var(--cv-coral) 72%,white);outline-offset:3px}h1,h2,h3{color:var(--cv-ink);line-height:1.1;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,5vw,4.35rem)}h2{font-size:clamp(2rem,4vw,3.15rem)}h3{font-size:1.2rem}p{margin:0 0 1.2em}

.cv-site-header{position:sticky;z-index:100;top:0;background:rgba(255,249,239,.96);border-bottom:1px solid rgba(16,61,50,.08);backdrop-filter:blur(16px)}.admin-bar .cv-site-header{top:32px}.cv-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:28px}.cv-brand,.custom-logo-link{display:inline-flex;align-items:center;gap:13px;color:var(--cv-ink);font-size:1.45rem;font-weight:850;letter-spacing:-.04em;text-decoration:none}.custom-logo{display:block;max-height:54px;width:auto}.cv-brand-mark{display:inline-flex;flex:0 0 auto;width:42px;height:42px;color:var(--cv-accent)}.cv-brand-mark svg{width:100%;height:100%;display:block}.cv-header-actions,.cv-primary-nav ul{display:flex;align-items:center}.cv-header-actions{gap:24px}.cv-primary-nav ul{gap:38px;padding:0;margin:0;list-style:none}.cv-primary-nav a{position:relative;color:var(--cv-ink);font-size:.95rem;font-weight:700;text-decoration:none}.cv-primary-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--cv-accent);transition:right .2s ease}.cv-primary-nav a:hover::after{right:0}.cv-menu-toggle{display:none;padding:8px;border:1px solid var(--cv-border);border-radius:10px;background:transparent;color:var(--cv-ink)}
.cv-button,.wp-element-button,input[type=submit]{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:9px;padding:10px 22px;border:1px solid var(--cv-accent);border-radius:12px;background:var(--cv-accent);color:#fff;font-weight:800;text-decoration:none;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.cv-button:hover,.wp-element-button:hover,input[type=submit]:hover{background:var(--cv-accent-strong);border-color:var(--cv-accent-strong);color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(14,114,89,.2)}.cv-button--outline-dark{background:rgba(255,255,255,.35);border-color:var(--cv-accent);color:var(--cv-ink)}.cv-button--cream{background:var(--cv-cream);border-color:var(--cv-cream);color:var(--cv-ink)}.cv-button--cream:hover{background:#fff;border-color:#fff;color:var(--cv-ink)}.cv-button--outline{background:transparent;border-color:rgba(255,255,255,.45)}

.cv-hero{position:relative;overflow:hidden;min-height:624px;background:radial-gradient(circle at 68% 36%,rgba(221,244,234,.7),transparent 28%),linear-gradient(120deg,var(--cv-cream),#fffdf8)}.cv-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:30px;min-height:624px}.cv-hero-copy{padding:62px 0 64px}.cv-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--cv-accent);font-size:.77rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.cv-eyebrow i{display:block;width:26px;height:2px;background:var(--cv-coral)}.cv-hero h1{max-width:760px;margin:0;font-size:clamp(2.9rem,4.4vw,4.35rem);line-height:1.04;letter-spacing:-.055em}.cv-hero-copy>p{margin:22px 0 26px;color:var(--cv-muted);font-size:1.22rem}.cv-hero-search{position:relative;z-index:5;display:grid;grid-template-columns:1.35fr .9fr auto;width:min(790px,112%);padding:10px;background:#fff;border:1px solid rgba(16,61,50,.08);border-radius:16px;box-shadow:var(--cv-shadow)}.cv-search-field{display:flex;align-items:center;gap:10px;padding:0 16px;border-right:1px solid var(--cv-border)}.cv-search-field>span{color:var(--cv-accent);font-size:1.7rem}.cv-search-field input,.cv-search-field select{width:100%;min-height:48px;border:0;outline:0;background:transparent;color:var(--cv-ink)}.cv-resume-link{margin-top:20px}.cv-hero-trust{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px;color:var(--cv-muted);font-size:.8rem;font-weight:700}.cv-hero-visual{position:relative;align-self:stretch;min-height:610px}.cv-hero-visual>img{position:absolute;z-index:3;right:-28px;bottom:0;width:min(660px,115%);max-height:590px;object-fit:contain;object-position:bottom;filter:drop-shadow(0 25px 28px rgba(16,61,50,.14))}.cv-visual-blob{position:absolute;z-index:1;right:-60px;top:72px;width:580px;height:500px;border-radius:48% 52% 28% 72%/43% 40% 60% 57%;background:linear-gradient(145deg,#dff4e9,#c8eadb);transform:rotate(-7deg)}.cv-visual-ring{position:absolute;z-index:1;right:8px;top:126px;width:470px;height:350px;border:2px solid rgba(14,114,89,.72);border-radius:50%;transform:rotate(-18deg)}.cv-visual-sun{position:absolute;z-index:2;right:-78px;top:178px;width:220px;height:220px;border-radius:50%;background:var(--cv-coral);box-shadow:-36px 56px 0 var(--cv-accent)}.cv-opportunity-card{position:absolute;z-index:5;left:16px;bottom:76px;display:flex;align-items:center;gap:12px;padding:14px 18px;background:rgba(255,255,255,.95);border:1px solid rgba(16,61,50,.08);border-radius:14px;box-shadow:0 15px 35px rgba(16,61,50,.14)}.cv-opportunity-card>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--cv-mint);color:var(--cv-accent);font-weight:900}.cv-opportunity-card div{display:flex;flex-direction:column}.cv-opportunity-card small{color:var(--cv-muted)}.cv-hero-dots{position:absolute;left:47%;bottom:34px;width:7px;height:7px;border-radius:50%;background:#a3d8c6;box-shadow:28px 0 #a3d8c6,56px 0 #a3d8c6,84px 0 #a3d8c6,0 28px #a3d8c6,28px 28px #a3d8c6,56px 28px #a3d8c6,84px 28px #a3d8c6;opacity:.65}

.cv-section{padding:92px 0}.cv-section--jobs{background:var(--cv-soft);border-top:1px solid rgba(16,61,50,.06)}.cv-section-heading{max-width:760px;margin-bottom:32px}.cv-section-heading h2{margin:0}.cv-section-heading>p{color:var(--cv-muted);font-size:1.08rem}.cv-section-heading--row{display:flex;max-width:none;align-items:flex-end;justify-content:space-between;gap:30px}.cv-section-heading--row>a{color:var(--cv-accent);font-weight:800;text-decoration:none}.cv-section-heading--center{margin:0 auto 48px;text-align:center}.cv-section-heading--center .cv-eyebrow{justify-content:center}.cv-steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cv-steps-grid article{position:relative;min-height:250px;padding:32px;background:#fff;border:1px solid rgba(16,61,50,.09);border-radius:20px}.cv-step-number{position:absolute;right:24px;top:20px;color:#d5e8df;font-size:2.25rem;font-weight:900}.cv-step-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:var(--cv-mint);color:var(--cv-accent);font-size:1.75rem}.cv-steps-grid article:nth-child(2) .cv-step-icon{background:#ffe7df;color:#df604b}.cv-steps-grid h3{margin:24px 0 10px}.cv-steps-grid p{margin:0;color:var(--cv-muted)}.cv-candidate-cta{padding:72px 0;background:var(--cv-accent);color:#fff}.cv-candidate-cta__inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:60px}.cv-candidate-cta__inner>div{max-width:850px}.cv-candidate-cta h2{margin:0;color:#fff}.cv-candidate-cta p{margin:18px 0 0;color:rgba(255,255,255,.8);font-size:1.08rem}.cv-eyebrow--light{color:#fff}.cv-employer-section{background:#fff}.cv-employer-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:90px}.cv-employer-grid>div:first-child>h2{margin:0}.cv-employer-grid>div:first-child>p{margin:20px 0 28px;color:var(--cv-muted);font-size:1.08rem}.cv-employer-features{display:grid;gap:16px}.cv-employer-features article{display:grid;grid-template-columns:56px 1fr;gap:18px;padding:22px;border:1px solid var(--cv-border);border-radius:16px;background:#fbfefa}.cv-employer-features article>span{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background:var(--cv-mint);color:var(--cv-accent);font-size:1.5rem}.cv-employer-features h3{margin:2px 0 5px}.cv-employer-features p{margin:0;color:var(--cv-muted)}.cv-empty{padding:36px;background:#fff;border:1px dashed var(--cv-border);border-radius:16px;text-align:center}

.cv-page-header,.cv-job-hero{padding:30px 0;background:linear-gradient(125deg,#eff9f4,var(--cv-cream));border-bottom:1px solid var(--cv-border)}.cv-page-header h1,.cv-job-hero h1{margin:6px 0 0;font-size:clamp(2rem,4vw,2.9rem)}.cv-job-hero p{margin:12px 0 0;color:var(--cv-muted);font-size:1.08rem}.cv-breadcrumbs{color:var(--cv-muted);font-size:.84rem}.cv-breadcrumbs a{color:var(--cv-accent)}.cv-content-wrap{padding:34px 0;background:#fff}.cv-content{max-width:850px}.cv-prose{max-width:880px}.cv-prose h2{margin:1.5em 0 .6em;font-size:1.85rem}.cv-prose h3{margin-top:1.5em}.cv-prose p,.cv-prose li{color:#40534d}.cv-prose a{color:var(--cv-accent)}.cv-job-layout{display:grid;grid-template-columns:minmax(0,1fr) 430px;align-items:start;gap:34px}.cv-job-content,.cv-job-apply{background:#fff;border:1px solid var(--cv-border);border-radius:20px;box-shadow:0 10px 32px rgba(16,61,50,.06)}.cv-job-content{padding:32px}.cv-job-apply{position:sticky;top:112px;padding:28px}.cv-job-apply>h2{margin:0 0 22px;font-size:1.85rem}.cv-job-details{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:28px}.cv-job-detail{display:flex;flex-direction:column;padding:14px;background:var(--cv-soft);border-radius:12px}.cv-job-detail strong{color:var(--cv-accent);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.cv-job-detail span{margin-top:4px;font-weight:700}

.cv-site-footer{padding:64px 0 24px;background:#0a3028;color:#fff}.cv-footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:50px}.cv-brand--footer{color:#fff;font-size:1.15rem}.cv-brand--footer .cv-brand-mark{color:#fff}.cv-footer-grid>div:first-child p{max-width:350px;margin-top:18px;color:rgba(255,255,255,.65)}.cv-footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:12px;color:rgba(255,255,255,.68)}.cv-footer-grid h3{margin:0 0 5px;color:#fff;font-size:1rem}.cv-footer-grid a{color:inherit;text-decoration:none}.cv-footer-grid a:hover{color:#fff}.cv-footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:52px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.55);font-size:.8rem}

@media(max-width:1100px){.cv-container{width:min(calc(100% - 40px),940px)}.cv-header-inner{min-height:76px}.cv-brand{font-size:1.18rem}.cv-header-cta{display:none}.cv-primary-nav ul{gap:20px}.cv-hero-grid{grid-template-columns:1fr;padding-top:20px}.cv-hero-copy{padding-bottom:0}.cv-hero-search{width:100%}.cv-hero-visual{min-height:500px}.cv-hero-visual>img{right:6%;max-height:490px}.cv-visual-blob{right:5%;width:520px;height:430px}.cv-job-layout{grid-template-columns:1fr}.cv-job-apply{position:static}.cv-employer-grid{gap:50px}}
@media(max-width:760px){.admin-bar .cv-site-header{top:46px}.cv-container{width:min(calc(100% - 28px),620px)}.cv-header-inner{min-height:72px}.cv-brand{font-size:1rem;gap:9px}.cv-brand-mark{width:36px;height:36px}.cv-menu-toggle{display:block}.cv-primary-nav{display:none;position:absolute;top:72px;left:14px;right:14px;padding:16px;background:#fff;border:1px solid var(--cv-border);border-radius:16px;box-shadow:var(--cv-shadow)}.cv-primary-nav.is-open{display:block}.cv-primary-nav ul{flex-direction:column;align-items:stretch;gap:4px}.cv-primary-nav a{display:block;padding:10px;text-align:center}.cv-hero{min-height:auto}.cv-hero-grid{min-height:auto}.cv-hero-copy{padding-top:42px}.cv-hero h1{font-size:clamp(2.5rem,12vw,3.5rem)}.cv-hero-copy>p{font-size:1.05rem}.cv-hero-search{grid-template-columns:1fr;gap:7px;padding:8px}.cv-search-field{border-right:0;border-bottom:1px solid var(--cv-border)}.cv-resume-link{width:100%}.cv-hero-visual{min-height:420px}.cv-hero-visual>img{right:-22%;width:125%;max-height:430px}.cv-visual-blob{top:24px;right:-28%;width:120%;height:370px}.cv-visual-ring{top:48px;right:-10%;width:100%;height:285px}.cv-visual-sun{right:-86px;top:110px;width:170px;height:170px}.cv-opportunity-card{left:0;bottom:24px}.cv-section{padding:70px 0}.cv-section-heading--row{align-items:flex-start;flex-direction:column}.cv-steps-grid,.cv-employer-grid,.cv-candidate-cta__inner{grid-template-columns:1fr;gap:32px}.cv-button--cream{width:100%}.cv-footer-grid{grid-template-columns:1fr 1fr}.cv-footer-grid>div:first-child{grid-column:1/-1}.cv-footer-bottom{flex-direction:column}.cv-job-details{grid-template-columns:1fr}.cv-job-content,.cv-job-apply{padding:22px}}

/* Ajustes finais de densidade visual (devem permanecer após as regras base). */
.cv-section{padding:72px 0}.cv-section-heading{margin-bottom:26px}.cv-section-heading--center{margin-bottom:36px}.cv-steps-grid article{min-height:0;padding:26px}.cv-steps-grid h3{margin-top:18px}.cv-candidate-cta{padding:56px 0}.cv-candidate-cta__inner{gap:40px}.cv-employer-grid{gap:64px}.cv-page-header,.cv-job-hero{padding:42px 0}.cv-content-wrap{padding:54px 0}.cv-job-layout{gap:26px}.cv-job-content{padding:28px}.cv-job-apply{padding:24px}.cv-job-apply>h2{margin-bottom:18px}.cv-job-details{margin-bottom:22px}.cv-site-footer{padding-top:48px}.cv-footer-grid{gap:36px}.cv-footer-bottom{margin-top:38px}
@media(max-width:760px){.cv-section{padding:52px 0}.cv-page-header,.cv-job-hero{padding:34px 0}.cv-content-wrap{padding:38px 0}.cv-candidate-cta{padding:44px 0}.cv-footer-grid{gap:28px}.cv-job-content,.cv-job-apply{padding:20px}}
.cv-icon{width:1.15em;height:1.15em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.cv-step-icon .cv-icon,.cv-employer-features .cv-icon{width:26px;height:26px}
.cv-job-share{align-items:center;color:var(--cv-accent);display:inline-flex;font-size:.86rem;font-weight:800;gap:7px;margin-bottom:16px;text-decoration:none}.cv-related-jobs{background:var(--cv-soft)}.cv-mobile-apply{display:none}
.cv-job-contact{align-items:center;background:#1faf5e;border:1px solid #1faf5e;border-radius:12px;color:#fff;display:flex;font-size:1rem;font-weight:800;gap:9px;justify-content:center;margin-bottom:18px;min-height:52px;padding:12px 18px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.cv-job-contact:hover{color:#fff;transform:translateY(-2px);box-shadow:0 10px 24px rgba(31,175,94,.28)}.cv-job-contact .cv-icon{width:1.35em;height:1.35em}
.cv-faq{background:var(--cv-soft)}.cv-faq-list{display:grid;gap:12px;margin:0 auto;max-width:880px}.cv-faq-list details{background:#fff;border:1px solid var(--cv-border);border-radius:14px;padding:0 20px}.cv-faq-list summary{cursor:pointer;font-weight:800;padding:18px 34px 18px 0;position:relative}.cv-faq-list summary::after{content:'+';color:var(--cv-accent);font-size:1.5rem;position:absolute;right:0;top:12px}.cv-faq-list details[open] summary::after{content:'−'}.cv-faq-list p{color:var(--cv-muted);margin:0;padding:0 0 18px}
/* FAQ do shortcode [cvg_faq] (landing pages de SEO): mesmo visual do FAQ da home. */
.cvg-faq{margin:36px 0}.cvg-faq h2{margin-bottom:16px}.cvg-faq-item{background:#fff;border:1px solid var(--cv-border);border-radius:14px;margin-bottom:12px;padding:0 20px}.cvg-faq-item summary{cursor:pointer;font-weight:800;padding:18px 34px 18px 0;position:relative;list-style:none}.cvg-faq-item summary::-webkit-details-marker{display:none}.cvg-faq-item summary::after{content:'+';color:var(--cv-accent);font-size:1.5rem;position:absolute;right:0;top:12px}.cvg-faq-item[open] summary::after{content:'−'}.cvg-faq-item p{color:var(--cv-muted);margin:0;padding:0 0 18px}
[data-theme=dark] .cvg-faq-item{background:var(--cv-surface)}
@media(max-width:760px){body.single-cvg_job{padding-bottom:74px}.cv-mobile-apply{align-items:center;background:#fff;border-top:1px solid var(--cv-border);bottom:0;display:flex;gap:10px;left:0;padding:10px 14px;position:fixed;right:0;z-index:120}.cv-mobile-apply .cv-button{flex:1}.cv-mobile-share{align-items:center;border:1px solid var(--cv-border);border-radius:12px;color:var(--cv-accent);display:flex;height:50px;justify-content:center;width:50px}}
@media(max-width:470px){.cv-footer-grid{grid-template-columns:1fr}.cv-footer-grid>div:first-child{grid-column:auto}}
/* Rodapé: acomoda a nova coluna "Vagas por cidade" quando presente. */
@media(min-width:761px){.cv-footer-grid:has(>div:nth-child(5)){grid-template-columns:1.5fr repeat(4,minmax(0,1fr));gap:36px}}

/* Botão flutuante do WhatsApp (grupo de vagas). */
.cv-whatsapp-float{align-items:center;background:#1faf5e;border-radius:999px;bottom:20px;box-shadow:0 12px 30px rgba(16,61,50,.28);color:#fff;display:inline-flex;font-size:.92rem;font-weight:800;gap:10px;left:16px;padding:13px 20px 13px 16px;position:fixed;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease;z-index:130}
.cv-whatsapp-float:hover{box-shadow:0 16px 34px rgba(16,61,50,.34);color:#fff;transform:translateY(-2px)}
.cv-whatsapp-float__icon{height:1.4em;width:1.4em}
@media(max-width:760px){
  .cv-whatsapp-float{font-size:.86rem;padding:12px 16px 12px 14px}
  /* Na vaga, o rodapé fixo de candidatura tem prioridade: o botão sobe. */
  .cv-whatsapp-float--job{bottom:84px}
}

/* Redes sociais no rodapé. */
.cv-footer-social{display:flex;flex-wrap:wrap;gap:16px;margin-top:18px}
.cv-footer-social a{align-items:center;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:rgba(255,255,255,.85);display:inline-flex;font-size:.85rem;font-weight:700;gap:8px;padding:8px 16px;text-decoration:none}
.cv-footer-social a:hover{background:rgba(255,255,255,.08);color:#fff}

/* Botão de alternância de tema (claro/escuro). */
.cv-theme-toggle{align-items:center;background:transparent;border:1px solid var(--cv-border);border-radius:12px;color:var(--cv-ink);display:inline-flex;height:44px;justify-content:center;padding:0;transition:background .18s ease,border-color .18s ease;width:44px}
.cv-theme-toggle:hover{background:var(--cv-soft);border-color:var(--cv-accent)}
.cv-theme-toggle__moon{display:none}
[data-theme=dark] .cv-theme-toggle__sun{display:none}
[data-theme=dark] .cv-theme-toggle__moon{display:block}

/* ===== Modo escuro ===== */
html[data-theme=dark],html[data-theme=dark]:root{
  --cv-primary:#e8f5ef;--cv-primary-strong:#ffffff;--cv-accent:#3fd6a8;--cv-accent-strong:#5fe6bc;
  --cv-mint:#12362d;--cv-cream:#0c1f1a;--cv-coral:#f88e79;--cv-ink:#e8f1ed;--cv-muted:#9db3ac;
  --cv-border:#26433b;--cv-surface:#12211d;--cv-soft:#132a24;--cv-card:#14231f;
  --cv-shadow:0 16px 40px rgba(0,0,0,.4);
}
[data-theme=dark] body{background:var(--cv-cream);color:var(--cv-ink)}
[data-theme=dark] .cv-site-header{background:rgba(12,31,26,.94);border-bottom-color:var(--cv-border)}
[data-theme=dark] .cv-hero{background:radial-gradient(circle at 68% 36%,rgba(18,54,45,.7),transparent 30%),linear-gradient(120deg,#0c1f1a,#102923)}
[data-theme=dark] .cv-hero-search{background:var(--cv-surface);border-color:var(--cv-border)}
[data-theme=dark] .cv-visual-blob{background:linear-gradient(145deg,#12362d,#0f2b24)}
[data-theme=dark] .cv-section--jobs,[data-theme=dark] .cv-faq,[data-theme=dark] .cv-related-jobs{background:var(--cv-soft);border-top-color:var(--cv-border)}
[data-theme=dark] .cv-employer-section{background:var(--cv-cream) !important}
[data-theme=dark] .cv-candidate-cta{background:linear-gradient(120deg,#102923,#0c1f1a) !important;border-top:1px solid var(--cv-border);border-bottom:1px solid var(--cv-border)}
[data-theme=dark] .cv-candidate-cta h2{color:var(--cv-primary-strong) !important}
[data-theme=dark] .cv-candidate-cta p{color:var(--cv-muted) !important}
[data-theme=dark] .cv-candidate-cta .cv-button--cream{background:var(--cv-accent) !important;border-color:var(--cv-accent);color:#04120d !important}
[data-theme=dark] .cv-candidate-cta .cv-button--cream:hover{background:var(--cv-accent-strong) !important;border-color:var(--cv-accent-strong);color:#04120d !important}
[data-theme=dark] .cv-steps-grid article,[data-theme=dark] .cv-faq-list details,[data-theme=dark] .cv-job-content,[data-theme=dark] .cv-job-apply,[data-theme=dark] .cvg-job-card,[data-theme=dark] .cv-employer-features article{background:var(--cv-card) !important;border-color:var(--cv-border) !important}
[data-theme=dark] .cv-employer-features article h3{color:var(--cv-primary) !important}
[data-theme=dark] .cv-employer-features article p{color:var(--cv-muted) !important}
[data-theme=dark] .cv-page-header,[data-theme=dark] .cv-job-hero{background:linear-gradient(125deg,#102923,#0c1f1a) !important;border-bottom-color:var(--cv-border)}
[data-theme=dark] .cv-content-wrap{background:var(--cv-cream)}
[data-theme=dark] .cv-prose p,[data-theme=dark] .cv-prose li{color:var(--cv-muted)}
[data-theme=dark] .cv-primary-nav{background:var(--cv-surface);border-color:var(--cv-border)}
[data-theme=dark] .cv-mobile-apply{background:var(--cv-surface);border-top-color:var(--cv-border)}
[data-theme=dark] .cv-menu-toggle,[data-theme=dark] .cv-theme-toggle{color:var(--cv-ink)}
/* Botões e CTA escura já usam verde da marca — mantêm bom contraste no escuro. */
[data-theme=dark] .cv-button--outline-dark{background:rgba(255,255,255,.06);color:var(--cv-ink)}
[data-theme=dark] .cvg-company-avatar{background:var(--cv-soft);color:var(--cv-accent-strong)}
[data-theme=dark] .cv-opportunity-card{background:var(--cv-card);border-color:var(--cv-border);box-shadow:0 15px 35px rgba(0,0,0,.4)}
[data-theme=dark] .cv-opportunity-card strong{color:var(--cv-ink)}
[data-theme=dark] .cv-opportunity-card>span{background:var(--cv-soft);color:var(--cv-accent-strong)}

@media(max-width:1100px){.cv-theme-toggle{height:40px;width:40px}}

.cv-alert-wrap{margin-top:36px}

/* ===== Blog: listagem em cards ===== */
.cv-page-header__lead{color:var(--cv-muted);margin:10px 0 0;max-width:620px}
.cv-blog-grid{display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:8px}
.cv-blog-card{background:var(--cv-card,#fff);border:1px solid var(--cv-border);border-radius:18px;display:flex;flex-direction:column;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.cv-blog-card:hover{border-color:var(--cv-accent);box-shadow:var(--cv-shadow,0 18px 45px rgba(16,42,67,.09));transform:translateY(-3px)}
.cv-blog-card__media{aspect-ratio:16/10;background:var(--cv-soft);display:block;overflow:hidden}
.cv-blog-card__media img{height:100%;object-fit:cover;width:100%}
.cv-blog-card__placeholder{align-items:center;color:var(--cv-accent);display:flex;height:100%;justify-content:center}
.cv-blog-card__placeholder .cv-brand-mark{height:56px;width:56px}
.cv-blog-card__body{display:flex;flex:1;flex-direction:column;gap:8px;padding:20px}
.cv-blog-card__cat{color:var(--cv-accent-strong);font-size:.76rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.cv-blog-card__body h2{font-size:1.22rem;line-height:1.25;margin:0}
.cv-blog-card__body h2 a{color:var(--cv-primary);text-decoration:none}
.cv-blog-card__body p{color:var(--cv-muted);font-size:.94rem;margin:0}
.cv-blog-card__foot{align-items:center;border-top:1px solid var(--cv-border);display:flex;justify-content:space-between;margin-top:auto;padding-top:13px}
.cv-blog-card__foot time{color:var(--cv-muted);font-size:.8rem}
.cv-pagination{margin-top:32px}
.cv-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.cv-pagination a,.cv-pagination span{border:1px solid var(--cv-border);border-radius:10px;color:var(--cv-primary);padding:8px 14px;text-decoration:none}
.cv-pagination .current{background:var(--cv-accent);border-color:var(--cv-accent);color:#fff}
.cv-empty{color:var(--cv-muted);padding:40px 0;text-align:center}

/* ===== Blog: artigo individual ===== */
.cv-article-header__inner{max-width:760px}
.cv-article-header .cv-eyebrow{display:inline-block;text-decoration:none}
.cv-article-meta{color:var(--cv-muted);font-size:.9rem;margin:12px 0 0}
.cv-article-layout{display:grid;gap:40px;grid-template-columns:minmax(0,1fr) 300px}
.cv-article-figure{border-radius:16px;margin:0 0 24px;overflow:hidden}
.cv-article-figure img{display:block;height:auto;width:100%}
.cv-article-cta{align-self:start;background:var(--cv-soft);border:1px solid var(--cv-border);border-radius:18px;display:flex;flex-direction:column;gap:12px;padding:24px;position:sticky;top:96px}
.cv-article-cta h2{font-size:1.2rem;margin:0}
.cv-article-cta p{color:var(--cv-muted);font-size:.92rem;margin:0}
.cv-button--ghost{background:transparent;border:1px solid var(--cv-accent);color:var(--cv-accent-strong)}
@media(max-width:900px){.cv-blog-grid{grid-template-columns:repeat(2,1fr)}.cv-article-layout{grid-template-columns:1fr}.cv-article-cta{position:static}}
@media(max-width:560px){.cv-blog-grid{grid-template-columns:1fr}}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
