html[data-portal="vagas"]{--accent:#35c28b;--accent-strong:#1ea66f}
:root{
  --navy:#071a33;--navy-2:#0a2345;--navy-3:#10315c;--blue:#2f7cf6;--green:#35c28b;
  --accent:#4b8dff;--accent-strong:#2f7cf6;--bg:#061426;--bg-soft:#091c35;--surface:#0b2444;
  --surface-2:#0f2d53;--surface-3:#143965;--ink:#f5f8ff;--muted:#aebed3;--line:rgba(255,255,255,.11);
  --line-strong:rgba(255,255,255,.18);--white:#fff;--shadow:0 18px 45px rgba(0,0,0,.26);--max:1280px;
  color-scheme:dark
}
html[data-theme="light"]{
  --navy:#0a2d58;--navy-2:#123c70;--navy-3:#1a4f8d;--blue:#1664d9;--accent:#1664d9;--accent-strong:#0e52bd;
  --bg:#f4f7fb;--bg-soft:#edf3fa;--surface:#fff;--surface-2:#f7f9fc;--surface-3:#eef4fb;
  --ink:#152338;--muted:#607189;--line:#d9e2ec;--line-strong:#c7d4e2;--shadow:0 16px 38px rgba(18,44,78,.10);
  color-scheme:light
}
html[data-theme="light"][data-portal="vagas"]{--accent:#147a5a;--accent-strong:#0e684b}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;transition:background .2s ease,color .2s ease}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.shell{width:min(calc(100% - 40px),var(--max));margin:auto}
.top{position:sticky;top:0;z-index:30;background:rgba(7,26,51,.96);border-top:4px solid var(--accent);border-bottom:1px solid var(--line);box-shadow:0 10px 30px rgba(0,0,0,.16);backdrop-filter:blur(14px)}html[data-theme="light"] .top{background:rgba(255,255,255,.96)}.top-main{min-height:80px;display:grid;grid-template-columns:auto minmax(280px,620px) auto;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:12px;font-weight:900;color:var(--ink);white-space:nowrap}.brand img{width:54px;height:42px;object-fit:contain;filter:brightness(0) invert(1);opacity:.97}html[data-theme="light"] .brand img{filter:none}.brand span{display:grid;line-height:1.05}.brand small{margin-top:4px;color:var(--accent);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}.search{display:flex;align-items:center;gap:8px;padding:6px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px}.search input{min-width:0;flex:1;border:0;outline:0;background:transparent;padding:9px 10px;color:var(--ink)}.search input::placeholder{color:var(--muted)}.search button{border:0;padding:10px 15px;color:#fff;background:var(--accent-strong);border-radius:7px;font-weight:800;cursor:pointer}.top-actions{display:flex;align-items:center;gap:14px;font-size:.84rem;font-weight:800;white-space:nowrap}.top-actions a,.theme-toggle{color:var(--ink)}.top-actions .account-link{padding:10px 14px;color:#071a33;background:#fff;border-radius:9px}.theme-toggle{border:1px solid var(--line-strong);padding:9px 12px;background:var(--surface-2);border-radius:9px;cursor:pointer;font-weight:850}.theme-toggle:hover{border-color:var(--accent);color:var(--accent)}
.category-bar{border-bottom:1px solid var(--line);background:var(--surface)}.category-scroll{display:flex;gap:25px;overflow:auto;scrollbar-width:none}.category-scroll::-webkit-scrollbar{display:none}.category-scroll a{padding:12px 0;border-bottom:3px solid transparent;font-size:.83rem;font-weight:800;white-space:nowrap}.category-scroll a:hover{color:var(--accent);border-color:var(--accent)}
.hero{padding:38px 0 24px;background:linear-gradient(180deg,var(--bg-soft),var(--bg))}.hero-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr);gap:38px}.eyebrow{color:var(--accent);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.hero h1{max-width:900px;margin:8px 0 12px;color:var(--ink);font-size:clamp(2.2rem,5vw,4.7rem);line-height:.98;letter-spacing:-.045em}.hero p{max-width:780px;margin:0;color:var(--muted);font-size:1.04rem}.hero-note{align-self:end;padding:19px 22px;border-left:5px solid var(--accent);background:var(--surface);box-shadow:var(--shadow)}.hero-note strong{display:block;color:var(--ink)}.hero-note span{color:var(--muted);font-size:.86rem}
.ad{min-height:88px;display:grid;place-items:center;margin:18px 0 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;background:var(--surface)}
.lead{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.7fr);gap:32px;padding:22px 0 42px}.lead-main{min-width:0}.media{position:relative;display:block;aspect-ratio:16/8.8;overflow:hidden;background:linear-gradient(135deg,var(--navy-2),var(--surface-3));border:1px solid var(--line);box-shadow:var(--shadow)}.media img{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center;display:block}.media-placeholder{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;color:rgba(255,255,255,.9);font-size:clamp(2rem,5vw,4rem);font-weight:900;letter-spacing:-.05em}.lead-main .meta,.story .meta,.job-row .meta,.article-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;color:var(--muted);font-size:.76rem}.lead-main h2{margin:10px 0 10px;color:var(--ink);font-size:clamp(2rem,4vw,3.4rem);line-height:1.02;letter-spacing:-.035em}.lead-main p{margin:0;color:var(--muted);font-size:1rem}.lead-side{border-top:3px solid var(--accent)}.side-item{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.side-thumb{display:block;aspect-ratio:16/10;overflow:hidden;border-radius:8px;background:var(--surface-2)}.side-thumb img{width:100%;height:100%;display:block;object-fit:contain;object-position:center}.side-item span,.story span,.job-row .tag{color:var(--accent);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.side-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.side-meta time{color:var(--muted);font-size:.7rem;font-weight:700}.side-meta time::before{content:"•";margin-right:7px;color:var(--line-strong)}.side-item h3{margin:6px 0 0;color:var(--ink);font-size:1.04rem;line-height:1.2}
.section{padding:40px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px;padding-bottom:12px;border-bottom:3px solid var(--accent)}.section-head h2{margin:0;color:var(--ink);font-size:clamp(1.7rem,3vw,2.5rem);letter-spacing:-.025em}.section-head a{color:var(--accent);font-size:.84rem;font-weight:850}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:42px}.story-list{display:grid}.story{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;padding:22px 0;border-bottom:1px solid var(--line)}.story-thumb{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--surface-2);border:1px solid var(--line);border-radius:10px}.story-thumb img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}.story h3{margin:5px 0 7px;color:var(--ink);font-size:1.32rem;line-height:1.15}.story p{margin:0;color:var(--muted);font-size:.9rem}.sidebar{display:grid;align-content:start;gap:24px}.side-card{padding:20px;border-top:3px solid var(--accent);border-bottom:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.side-card h3{margin:0 0 12px;color:var(--ink);font-size:1.1rem}.side-links{display:grid}.side-links a{padding:9px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:.86rem}.side-links a:hover{color:var(--accent)}.whatsapp{padding:22px;color:#fff;background:linear-gradient(145deg,#0a2f2a,#0b5541);border:1px solid rgba(85,223,155,.2);box-shadow:var(--shadow)}.whatsapp h3{margin:0 0 8px}.whatsapp p{margin:0 0 14px;color:#c8ddd5;font-size:.86rem}.whatsapp a{display:inline-flex;padding:10px 14px;color:#09281c;background:#55df9b;font-weight:900;border-radius:8px}
.jobs-search{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;margin-top:22px}.jobs-search input{width:100%;min-height:48px;padding:12px 13px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px}.jobs-search input::placeholder{color:var(--muted)}.jobs-search button{border:0;padding:0 24px;color:#fff;background:var(--accent-strong);font-weight:900;cursor:pointer;border-radius:8px}.job-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.job-feature{overflow:hidden;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:12px}.job-feature-media{display:block;aspect-ratio:16/9;overflow:hidden;background:#fff}.job-feature-media img{width:100%;height:100%;display:block;object-fit:contain;object-position:center}.job-feature-copy{display:grid;gap:9px;padding:18px 20px 20px}.job-feature h3{margin:0;color:var(--ink);font-size:1.25rem;line-height:1.15}.job-feature p{margin:0;color:var(--muted);font-size:.86rem}.job-feature-workplace{color:var(--accent)!important;font-weight:850}.job-list{display:grid}.job-row{display:grid;grid-template-columns:168px minmax(0,1fr) auto;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);align-items:center}.job-thumb{display:block;aspect-ratio:16/10;overflow:hidden;border-radius:10px;border:1px solid var(--line);background:var(--surface-2)}.job-thumb img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}.job-row h3{margin:6px 0 7px;color:var(--ink);font-size:1.25rem;line-height:1.18}.job-row p{margin:0;color:var(--muted);font-size:.88rem}.job-row>a{align-self:center;padding:10px 14px;border:1px solid var(--accent);color:var(--accent);font-size:.8rem;font-weight:900;border-radius:8px}.job-row>a:hover{color:#fff;background:var(--accent)}
.article{width:min(calc(100% - 40px),900px);margin:0 auto;padding:46px 0 72px}.article h1{margin:10px 0 12px;color:var(--ink);font-size:clamp(2.1rem,5vw,4rem);line-height:1.02;letter-spacing:-.04em}.article-lead{color:var(--muted);font-size:1.08rem}.article .media{margin-top:26px;aspect-ratio:16/9;background:var(--surface-2)}.article-body{margin-top:30px;color:var(--ink);font-size:1rem;line-height:1.82}.article-body h2{margin:34px 0 12px;color:var(--ink);font-size:1.6rem}.article-body h3{margin:28px 0 10px;color:var(--ink)}.article-body p,.article-body li{color:var(--muted)}.article-body ul{padding-left:22px}.article-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.primary-link{display:inline-flex;padding:12px 18px;color:#fff;background:var(--accent-strong);font-weight:900;border-radius:8px}.secondary-link{display:inline-flex;padding:12px 18px;border:1px solid var(--accent);color:var(--accent);font-weight:900;border-radius:8px}.empty{padding:55px 0;text-align:center;color:var(--muted)}.empty h2{color:var(--ink)}
.footer{margin-top:56px;color:#d7e2ef;background:#041226;border-top:1px solid var(--line)}html[data-theme="light"] .footer{background:#08284f}.footer-grid{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:42px;padding:46px 0}.footer h3{margin:0 0 12px;color:#fff}.footer p{max-width:400px;color:#b9c8d9;font-size:.88rem}.footer nav{display:grid;align-content:start;gap:8px}.footer nav strong{margin-bottom:4px;color:#fff}.footer nav a{color:#cbd8e6;font-size:.84rem}.footer-bottom{padding:17px 0;border-top:1px solid rgba(255,255,255,.13);color:#aebed0;font-size:.78rem}.loading{min-height:45vh;display:grid;place-items:center;color:var(--muted)}
@media(max-width:1120px){.top-main{grid-template-columns:auto 1fr}.top-actions{grid-column:1/-1;justify-content:flex-end;padding-bottom:12px}.content-layout{grid-template-columns:minmax(0,1fr) 290px}}
@media(max-width:1000px){.hero-grid,.lead,.content-layout{grid-template-columns:1fr}.lead-side{display:grid;grid-template-columns:repeat(2,1fr);gap:0 24px}.sidebar{grid-template-columns:repeat(2,1fr)}.job-highlights{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-grid nav:last-child{grid-column:2/4}.jobs-search{grid-template-columns:1fr 1fr}.job-row{grid-template-columns:150px minmax(0,1fr)}.job-row>a{grid-column:2;justify-self:start}}
@media(max-width:720px){.shell{width:min(calc(100% - 28px),var(--max))}.top{position:relative}.top-main{min-height:68px;grid-template-columns:1fr}.brand{justify-content:center;padding-top:10px}.search{margin-bottom:4px}.top-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-bottom:12px}.top-actions a,.theme-toggle{text-align:center;padding:9px 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2)}.top-actions .account-link{grid-column:1/-1;background:#fff;color:#071a33}.category-scroll{gap:20px}.hero{padding-top:27px}.hero-grid{gap:18px}.hero h1{font-size:2.7rem}.lead{gap:22px}.lead-side{grid-template-columns:1fr}.side-item{grid-template-columns:96px minmax(0,1fr)}.story{grid-template-columns:1fr}.story-thumb{aspect-ratio:16/8.7}.content-layout{gap:28px}.sidebar{grid-template-columns:1fr}.jobs-search{grid-template-columns:1fr}.jobs-search button{min-height:48px}.job-highlights{grid-template-columns:1fr}.job-row{grid-template-columns:112px minmax(0,1fr);gap:14px}.job-row>a{grid-column:2;justify-self:start}.footer-grid{grid-template-columns:1fr}.footer-grid nav:last-child{grid-column:auto}.article{width:min(calc(100% - 28px),900px)}}
@media(max-width:520px){.job-row{grid-template-columns:1fr}.job-row>a{grid-column:1}.job-thumb{aspect-ratio:16/8}.top-actions{grid-template-columns:1fr}.top-actions .account-link{grid-column:auto}.side-item{grid-template-columns:92px minmax(0,1fr)}}

/* Community UI v5: authenticated actions, modal, forms and comments. */
.contribute-link{border:1px solid #2f7cf6;padding:10px 14px;color:#fff;background:#1769d9;border-radius:9px;font-weight:800;cursor:pointer}.community-open{overflow:hidden}.community-modal[hidden]{display:none}.community-modal{position:fixed;z-index:12000;inset:0;display:grid;place-items:center;padding:20px}.community-modal__backdrop{position:absolute;inset:0;background:rgba(2,10,24,.82)}.community-dialog{position:relative;z-index:1;width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:30px;border:1px solid #294a73;border-radius:20px;color:#f6f9ff;background:#071a33;box-shadow:0 32px 90px rgba(0,0,0,.55)}.community-close{position:absolute;top:13px;right:15px;width:38px;height:38px;border:1px solid #35557d;border-radius:10px;color:#fff;background:#102f58;font-size:26px;cursor:pointer}.community-auth,.community-account,.community-submit,.community-success{display:grid;gap:16px}.community-auth h2,.community-account h2,.community-submit h2,.community-success h2{margin:0;font-size:2rem}.community-auth p,.community-account p,.community-submit p,.community-success p{margin:0;color:#b8cae3}.community-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:5px;background:#06172d;border-radius:12px}.community-tabs button{min-height:42px;border:0;border-radius:9px;color:#aebed3;background:transparent;font-weight:800;cursor:pointer}.community-tabs button.is-active{color:#fff;background:#153e70}.community-auth form,.community-submit form{display:grid;gap:13px}.community-auth label,.community-submit label,.comment-form label{display:grid;gap:7px;color:#c7d5e7;font-size:.82rem;font-weight:800}.community-auth input,.community-submit input,.community-submit select,.community-submit textarea,.comment-form textarea{width:100%;box-sizing:border-box;border:1px solid #294a73;border-radius:10px;padding:12px 13px;color:#f7faff;background:#06172d;outline:none;font:inherit}.community-auth input:focus,.community-submit input:focus,.community-submit select:focus,.community-submit textarea:focus,.comment-form textarea:focus{border-color:#4b8dff}.community-submit textarea{min-height:120px;resize:vertical}.community-submit .community-content-field{min-height:280px}.community-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.community-primary,.community-secondary{min-height:44px;border-radius:10px;padding:0 16px;font-weight:900;cursor:pointer}.community-primary{border:0;color:#fff;background:#1769d9}.community-secondary{border:1px solid #35557d;color:#eaf2ff;background:#102c50}.community-feedback{padding:11px 13px;border:1px solid #9b6d1d;border-radius:10px;color:#ffe0a3;background:#4b3309;font-size:.86rem}.community-comments{margin-top:46px;padding-top:32px;border-top:1px solid var(--line)}.community-comments__head{margin-bottom:18px}.community-comments__head h2{margin:5px 0 0;font-size:1.8rem}.community-comments__loading,.community-comments__empty{color:var(--muted)}.comment-list{display:grid;gap:13px;margin-bottom:22px}.comment{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.comment-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#1769d9;font-weight:900}.comment header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.comment header span{color:var(--muted);font-size:.74rem}.comment p{margin:7px 0 0;color:var(--muted);white-space:pre-wrap}.comment-form{display:grid;gap:10px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.comment-form textarea{min-height:110px;resize:vertical;color:var(--ink);background:var(--bg-soft)}.comment-form .community-primary{justify-self:start}.comment-login{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px dashed var(--line-strong);border-radius:13px}.comment-login p{margin:0;color:var(--muted)}@media(max-width:720px){.community-modal{padding:10px}.community-dialog{max-height:calc(100vh - 20px);padding:25px 16px}.community-form-grid{grid-template-columns:1fr}.community-submit .community-content-field{min-height:220px}.comment{grid-template-columns:36px minmax(0,1fr)}.comment-avatar{width:36px;height:36px}.comment-login{align-items:stretch;flex-direction:column}.top-actions .contribute-link{grid-column:1/-1;width:100%}}

/* Keep the server-rendered contribution button hidden until auth is restored. */
#community-create-button {
  display: none !important;
}

.top-actions {
  width: auto !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

.top-actions .account-link,
.top-actions .contribute-link,
.top-actions .community-v2-header-create {
  min-width: 0 !important;
  width: auto !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 14px !important;
  border-radius: 10px !important;
  font-size: .8rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}

.top-actions .account-link {
  color: #eaf2ff !important;
  background: rgba(255,255,255,.045) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
}

.top-actions .contribute-link,
.top-actions .community-v2-header-create {
  color: #fff !important;
  background: linear-gradient(180deg, #3c86fb 0%, #2e72e8 100%) !important;
  border: 1px solid #4b91ff !important;
  box-shadow: 0 6px 16px rgba(47,124,246,.2) !important;
}

html[data-portal="vagas"] .top-actions .contribute-link,
html[data-portal="vagas"] .top-actions .community-v2-header-create {
  background: linear-gradient(180deg, #31c792 0%, #25ae7d 100%) !important;
  border-color: #42d7a3 !important;
  box-shadow: 0 6px 16px rgba(39,185,133,.18) !important;
}

html[data-theme="light"] .top-actions .account-link {
  color: #123b68 !important;
  background: #f7faff !important;
  border-color: #d7e1ed !important;
}

.top-actions [hidden] {
  display: none !important;
}

@media (min-width: 721px) and (max-width: 1120px) {
  .top-main {
    flex-wrap: wrap !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .brand {
    width: 112px !important;
    min-width: 112px !important;
  }

  .search,
  #header-search {
    width: auto !important;
    flex: 1 1 360px !important;
  }

  .top-actions {
    width: 100% !important;
    justify-content: flex-end !important;
    padding-bottom: 0 !important;
  }
}

@media (max-width: 720px) {
  .top-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .search,
  #header-search {
    width: 100% !important;
    margin: 0 !important;
  }

  .top-actions {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 8px !important;
    padding-bottom: 0 !important;
  }

  .top-actions .account-link,
  .top-actions .contribute-link,
  .top-actions .community-v2-header-create {
    grid-column: auto !important;
    width: 100% !important;
  }
}

@media (max-width: 520px) {
  .top-actions {
    grid-template-columns: 42px minmax(0, 1fr) !important;
  }

  .top-actions .contribute-link,
  .top-actions .community-v2-header-create {
    grid-column: 1 / -1 !important;
  }
}


/* Cabeçalho dos portais: logo limpa, busca compacta e tema animado. */
.brand > span {
  display: none !important;
}

/* Header sem faixas coloridas e com acabamento mais limpo. */
.top {
  border-top: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, .065) !important;
  background: linear-gradient(180deg, #071a35 0%, #06172f 100%) !important;
  box-shadow: 0 10px 34px rgba(0, 0, 0, .10) !important;
}

html[data-theme="light"] .top {
  background: rgba(255, 255, 255, .96) !important;
  border-bottom-color: rgba(10, 45, 88, .09) !important;
  box-shadow: 0 8px 26px rgba(25, 55, 91, .06) !important;
}

.category-bar {
  border-top: 0 !important;
  box-shadow: none !important;
}

/* Logo à esquerda e busca + tema agrupados à direita. */
.top-main {
  position: relative;
  min-height: 86px !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.brand {
  width: 142px;
  min-width: 142px;
  height: 74px;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  overflow: visible;
}

.brand img {
  width: 108px !important;
  height: 72px !important;
  max-width: none !important;
  object-fit: contain !important;
  opacity: 1 !important;
  transform: scale(1.32) !important;
  transform-origin: center !important;
  filter: saturate(1.55) contrast(1.22) brightness(1.16)
    drop-shadow(0 3px 8px rgba(0, 0, 0, .20)) !important;
}

html[data-theme="light"] .brand img {
  filter: saturate(1.45) contrast(1.18) brightness(.98)
    drop-shadow(0 3px 7px rgba(8, 40, 79, .13)) !important;
}

/* Pesquisa alinhada ao canto direito, sem aparência de barra pesada. */
.search,
#header-search {
  width: min(100%, 500px) !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin: 0 0 0 auto !important;
  padding: 4px !important;
  background: rgba(255, 255, 255, .035) !important;
  border: 1px solid rgba(255, 255, 255, .085) !important;
  border-radius: 14px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease !important;
}

html[data-theme="light"] .search,
html[data-theme="light"] #header-search {
  background: #f8fbff !important;
  border-color: #dce5f0 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8) !important;
}

.search input,
#header-search input {
  min-width: 0 !important;
  height: 40px !important;
  flex: 1 !important;
  padding: 0 13px !important;
  color: var(--ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 10px !important;
  outline: 0 !important;
  box-shadow: none !important;
}

.search input::placeholder,
#header-search input::placeholder {
  color: var(--muted) !important;
  opacity: .86;
}

.search:focus-within,
#header-search:focus-within {
  background: rgba(255,255,255,.055) !important;
  border-color: rgba(91, 150, 255, .46) !important;
  box-shadow: 0 0 0 3px rgba(75, 141, 255, .085) !important;
}

html[data-theme="light"] .search:focus-within,
html[data-theme="light"] #header-search:focus-within {
  background: #fff !important;
}

.search button,
#header-search button {
  height: 38px !important;
  min-width: 88px !important;
  padding: 0 15px !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: #fff !important;
  background: linear-gradient(180deg, #3c86fb 0%, #2e72e8 100%) !important;
  font-size: .79rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-shadow: 0 5px 13px rgba(47, 124, 246, .16) !important;
  transition: transform .16s ease, filter .16s ease, box-shadow .16s ease !important;
}

html[data-portal="vagas"] .search button,
html[data-portal="vagas"] #header-search button {
  background: linear-gradient(180deg, #31c792 0%, #25ae7d 100%) !important;
  box-shadow: 0 5px 13px rgba(39, 185, 133, .15) !important;
}

.search button:hover,
#header-search button:hover {
  transform: translateY(-1px);
  filter: brightness(1.06);
  box-shadow: 0 8px 17px rgba(47, 124, 246, .20) !important;
}

html[data-portal="vagas"] .search button:hover,
html[data-portal="vagas"] #header-search button:hover {
  box-shadow: 0 8px 17px rgba(39, 185, 133, .18) !important;
}

.top-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 46px !important;
  min-width: 46px !important;
  gap: 0 !important;
  padding: 0 !important;
}

.top-actions > a {
  display: none !important;
}

/* Theme toggle: dois ícones sobrepostos para uma troca suave e centralizada. */
.theme-toggle {
  position: relative !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  display: block !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #dbe8ff !important;
  background: rgba(255, 255, 255, .025) !important;
  border: 1px solid rgba(255, 255, 255, .105) !important;
  border-radius: 12px !important;
  font-size: 0 !important;
  line-height: 1 !important;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
  transition: transform .22s ease, background .22s ease, border-color .22s ease, color .22s ease, box-shadow .22s ease !important;
}

.theme-toggle::before,
.theme-toggle::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 19px;
  height: 19px;
  display: block;
  background-color: currentColor;
  transform-origin: center;
  pointer-events: none;
  transition: opacity .28s ease, transform .34s cubic-bezier(.2,.8,.2,1) !important;
}

/* Lua crescente mais limpa e geometricamente centralizada. */
.theme-toggle::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20.18 14.79A8.5 8.5 0 0 1 9.21 3.82a8.5 8.5 0 1 0 10.97 10.97Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20.18 14.79A8.5 8.5 0 0 1 9.21 3.82a8.5 8.5 0 1 0 10.97 10.97Z'/%3E%3C/svg%3E") center / contain no-repeat;
  opacity: 1;
  transform: translate(-50%, -50%) rotate(0deg) scale(1);
}

/* Sol radial moderno. */
.theme-toggle::after {
  width: 20px;
  height: 20px;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 7.25A4.75 4.75 0 1 0 12 16.75 4.75 4.75 0 0 0 12 7.25Zm0-6.25a1 1 0 0 1 1 1v2a1 1 0 1 1-2 0V2a1 1 0 0 1 1-1Zm0 18a1 1 0 0 1 1 1v2a1 1 0 1 1-2 0v-2a1 1 0 0 1 1-1ZM1 12a1 1 0 0 1 1-1h2a1 1 0 1 1 0 2H2a1 1 0 0 1-1-1Zm18 0a1 1 0 0 1 1-1h2a1 1 0 1 1 0 2h-2a1 1 0 0 1-1-1ZM4.22 4.22a1 1 0 0 1 1.42 0l1.41 1.42a1 1 0 0 1-1.41 1.41L4.22 5.64a1 1 0 0 1 0-1.42Zm12.73 12.73a1 1 0 0 1 1.41 0l1.42 1.41a1 1 0 0 1-1.42 1.42l-1.41-1.42a1 1 0 0 1 0-1.41Zm2.83-12.73a1 1 0 0 1 0 1.42l-1.42 1.41a1 1 0 1 1-1.41-1.41l1.41-1.42a1 1 0 0 1 1.42 0ZM7.05 16.95a1 1 0 0 1 0 1.41l-1.41 1.42a1 1 0 0 1-1.42-1.42l1.42-1.41a1 1 0 0 1 1.41 0Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 7.25A4.75 4.75 0 1 0 12 16.75 4.75 4.75 0 0 0 12 7.25Zm0-6.25a1 1 0 0 1 1 1v2a1 1 0 1 1-2 0V2a1 1 0 0 1 1-1Zm0 18a1 1 0 0 1 1 1v2a1 1 0 1 1-2 0v-2a1 1 0 0 1 1-1ZM1 12a1 1 0 0 1 1-1h2a1 1 0 1 1 0 2H2a1 1 0 0 1-1-1Zm18 0a1 1 0 0 1 1-1h2a1 1 0 1 1 0 2h-2a1 1 0 0 1-1-1ZM4.22 4.22a1 1 0 0 1 1.42 0l1.41 1.42a1 1 0 0 1-1.41 1.41L4.22 5.64a1 1 0 0 1 0-1.42Zm12.73 12.73a1 1 0 0 1 1.41 0l1.42 1.41a1 1 0 0 1-1.42 1.42l-1.41-1.42a1 1 0 0 1 0-1.41Zm2.83-12.73a1 1 0 0 1 0 1.42l-1.42 1.41a1 1 0 1 1-1.41-1.41l1.41-1.42a1 1 0 0 1 1.42 0ZM7.05 16.95a1 1 0 0 1 0 1.41l-1.41 1.42a1 1 0 0 1-1.42-1.42l1.42-1.41a1 1 0 0 1 1.41 0Z'/%3E%3C/svg%3E") center / contain no-repeat;
  opacity: 0;
  transform: translate(-50%, -50%) rotate(-115deg) scale(.55);
}

.theme-toggle:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, .065) !important;
  border-color: rgba(126, 168, 230, .30) !important;
  transform: translateY(-1px) scale(1.025);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 7px 18px rgba(0,0,0,.10) !important;
}

.theme-toggle:active {
  transform: scale(.96);
}

.theme-toggle:focus-visible {
  outline: 3px solid rgba(75, 141, 255, .24);
  outline-offset: 3px;
}

html[data-theme="light"] .theme-toggle {
  color: #27507b !important;
  background: #f7faff !important;
  border-color: #d7e1ed !important;
  box-shadow: inset 0 1px 0 #fff !important;
}

html[data-theme="light"] .theme-toggle::before {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(110deg) scale(.55);
}

html[data-theme="light"] .theme-toggle::after {
  opacity: 1;
  transform: translate(-50%, -50%) rotate(0deg) scale(1);
}

html[data-theme="light"] .theme-toggle:hover {
  color: #155bc0 !important;
  background: #fff !important;
  border-color: #b9cbe0 !important;
  box-shadow: 0 7px 18px rgba(27,68,116,.09) !important;
}

/* Remove os cartões de contagem do hero. */
.hero-note {
  display: none !important;
}

.hero-grid {
  grid-template-columns: minmax(0, 1fr) !important;
}

@media (max-width: 1120px) {
  .brand {
    width: 124px;
    min-width: 124px;
  }

  .search,
  #header-search {
    width: min(100%, 460px) !important;
  }
}

@media (max-width: 720px) {
  .top-main {
    min-height: 76px !important;
    gap: 9px !important;
  }

  .brand {
    width: 92px;
    min-width: 92px;
    height: 66px;
  }

  .brand img {
    width: 82px !important;
    height: 60px !important;
    transform: scale(1.24) !important;
  }

  .search,
  #header-search {
    width: 100% !important;
    padding: 3px !important;
    border-radius: 11px !important;
  }

  .search input,
  #header-search input {
    height: 36px !important;
    padding: 0 9px !important;
    font-size: .77rem !important;
  }

  .search button,
  #header-search button {
    min-width: 72px !important;
    height: 34px !important;
    padding: 0 9px !important;
    font-size: .72rem !important;
  }

  .top-actions {
    width: 40px !important;
    min-width: 40px !important;
  }

  .theme-toggle {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    border-radius: 10px !important;
  }
}

@media (max-width: 520px) {
  .brand {
    width: 76px;
    min-width: 76px;
  }

  .brand img {
    width: 70px !important;
    height: 54px !important;
  }

  .search button,
  #header-search button {
    min-width: 40px !important;
    width: 40px !important;
    padding: 0 !important;
    font-size: 0 !important;
    position: relative;
  }

  .search button::before,
  #header-search button::before {
    content: "";
    width: 16px;
    height: 16px;
    display: block;
    margin: auto;
    background-color: #fff;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
  }
}

@media (prefers-reduced-motion: reduce) {
  .theme-toggle,
  .theme-toggle::before,
  .theme-toggle::after,
  .search,
  #header-search,
  .search button,
  #header-search button {
    transition: none !important;
  }
}


/* Hero inicial minimalista: uma frase central por portal, com mais presença horizontal. */
.home-hero-centered {
  display: grid;
  place-items: center;
  text-align: center;
  padding-inline: clamp(20px, 5vw, 86px) !important;
}

.home-hero-centered .home-hero-copy {
  width: min(100%, 1180px);
  margin-inline: auto;
  text-align: center;
}

.home-hero-centered .home-hero-copy h1 {
  max-width: 1120px;
  margin: 0 auto !important;
  font-size: clamp(2.2rem, 4.35vw, 4.35rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.042em !important;
  text-wrap: balance;
}

html[data-portal="blog"] .home-hero-centered .hero-grid {
  width: 100%;
  justify-items: center;
}

html[data-portal="vagas"] .home-hero-centered > .shell {
  width: min(100%, 1200px);
  display: flex;
  flex-direction: column;
  align-items: center;
}

html[data-portal="vagas"] .home-hero-centered .jobs-search {
  width: min(100%, 980px);
  margin: 30px auto 0;
}

@media (min-width: 1180px) {
  .home-hero-centered .home-hero-copy h1 {
    white-space: normal;
  }
}

@media (max-width: 720px) {
  .home-hero-centered {
    padding-inline: 18px !important;
  }

  .home-hero-centered .home-hero-copy h1 {
    max-width: 100%;
    font-size: clamp(2rem, 9.2vw, 3.1rem) !important;
    line-height: 1.04 !important;
  }

  html[data-portal="vagas"] .home-hero-centered .jobs-search {
    width: 100%;
    margin-top: 22px;
  }
}


/* Cabeçalho unificado dos portais Styzen — última camada do bundle. */
.category-bar{display:none!important}
.top{position:sticky!important;top:0;z-index:1000!important}
.top-main{
  width:min(calc(100% - 24px),1520px)!important;
  max-width:1520px!important;
  min-height:74px!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:0!important
}
.top-main .brand{
  width:66px!important;min-width:66px!important;height:64px!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  margin:0!important;overflow:visible!important
}
.top-main .brand img{
  width:58px!important;height:52px!important;max-width:58px!important;
  object-fit:contain!important;transform:none!important;
  filter:saturate(1.35) contrast(1.12) brightness(1.1) drop-shadow(0 3px 7px rgba(0,0,0,.18))!important
}
html[data-theme="light"] .top-main .brand img{filter:saturate(1.2) contrast(1.06) drop-shadow(0 3px 7px rgba(8,40,79,.1))!important}
.top-navigation{min-width:0;flex:1;display:flex;align-items:center;gap:12px}
.primary-menu{min-width:0;display:flex;align-items:center;gap:3px;white-space:nowrap}
.primary-menu>a,.nav-dropdown__trigger{
  min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:5px;
  padding:0 10px;border:1px solid transparent;border-radius:9px;color:var(--ink);
  background:transparent;font-size:.78rem;font-weight:820;line-height:1;cursor:pointer;
  transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease
}
.primary-menu>a:hover,.nav-dropdown__trigger:hover,.nav-dropdown:focus-within>.nav-dropdown__trigger{
  color:var(--ink);background:var(--surface-2);border-color:var(--line-strong);
  transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.16)
}
.menu-section.is-active,.menu-section[aria-current="page"]{
  color:var(--ink)!important;background:var(--surface-2)!important;
  border-color:var(--line-strong)!important;box-shadow:inset 0 -2px rgba(255,255,255,.2)!important
}
.nav-dropdown{position:relative}
.nav-dropdown__trigger span{font-size:.64rem;transition:transform .18s ease}
.nav-dropdown.is-open>.nav-dropdown__trigger span,.nav-dropdown:focus-within>.nav-dropdown__trigger span{transform:rotate(180deg)}
.nav-dropdown__menu{
  position:absolute;left:0;top:calc(100% + 8px);z-index:1100;width:260px;
  display:none;padding:8px;border:1px solid var(--line-strong);border-radius:13px;
  background:var(--surface);box-shadow:0 22px 55px rgba(0,0,0,.34)
}
.nav-dropdown--news .nav-dropdown__menu{width:285px;columns:2;column-gap:6px}
.nav-dropdown:hover>.nav-dropdown__menu,.nav-dropdown:focus-within>.nav-dropdown__menu,.nav-dropdown.is-open>.nav-dropdown__menu{display:block}
.nav-dropdown__menu a{
  display:flex;align-items:center;min-height:38px;padding:8px 10px;border-radius:8px;
  color:var(--muted);font-size:.78rem;font-weight:720;break-inside:avoid
}
.nav-dropdown__menu a:hover,.nav-dropdown__menu a:focus-visible{color:var(--ink);background:var(--surface-2);outline:none}
.top-tools{min-width:0;margin-left:auto;display:flex;align-items:center;gap:7px}
.top-tools .search,.top-tools #header-search{
  width:230px!important;max-width:230px!important;min-width:150px!important;
  flex:0 1 230px!important;margin:0!important;padding:3px!important;border-radius:11px!important
}
.top-tools .search input,.top-tools #header-search input{
  width:100%!important;min-width:0!important;height:36px!important;padding:0 9px!important;font-size:.75rem!important
}
.top-tools .search button,.top-tools #header-search button{
  min-width:73px!important;width:auto!important;height:34px!important;padding:0 10px!important;font-size:.72rem!important;
  color:var(--ink)!important;background:var(--surface-2)!important;border:1px solid var(--line-strong)!important;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease!important
}
.top-tools .search button:hover,.top-tools #header-search button:hover{
  background:var(--surface-3)!important;border-color:rgba(255,255,255,.28)!important;
  transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.16)
}
.top-tools .theme-toggle{
  width:auto!important;min-width:104px!important;height:42px!important;display:inline-flex!important;
  align-items:center!important;justify-content:flex-end!important;padding:0 11px 0 34px!important;
  font-size:.72rem!important;font-weight:820!important;white-space:nowrap;
  color:var(--ink)!important;background:var(--surface-2)!important;border-color:var(--line-strong)!important;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease!important
}
.top-tools .theme-toggle::before,.top-tools .theme-toggle::after{left:18px!important}
.top-tools .account-link{
  min-width:68px;height:42px;display:inline-flex;align-items:center;justify-content:center;
  padding:0 13px;border:1px solid var(--line-strong);border-radius:10px;
  color:var(--ink);background:var(--surface-2);font-size:.77rem;font-weight:850;white-space:nowrap;cursor:pointer;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease
}
html[data-theme="light"] .top-tools .account-link{color:#17385f;background:#f6f9fd;border-color:#cfdae7}
.top-tools .theme-toggle:hover,.top-tools .account-link:hover{
  color:var(--ink);background:var(--surface-3)!important;border-color:rgba(255,255,255,.28)!important;
  transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.16)
}
.menu-toggle{display:none;width:44px;height:42px;margin-left:auto;padding:9px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-2);cursor:pointer}
.menu-toggle span{display:block;height:2px;margin:4px 0;border-radius:2px;background:var(--ink);transition:transform .18s ease,opacity .18s ease}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* Destaque principal do Blog sem a antiga coluna lateral. */
.lead.lead--single{grid-template-columns:minmax(0,1fr)!important}
.lead.lead--single .lead-main{width:100%;max-width:none}
.lead.lead--single .media{aspect-ratio:16/8.2}

/* Três notícias em destaque no mesmo padrão visual das vagas. */
.editorial-highlights .job-feature-copy{align-content:start;min-height:126px}
.editorial-highlights .editorial-feature__meta{display:flex;flex-wrap:wrap;gap:7px;color:var(--muted);font-size:.72rem;font-weight:780}
.editorial-highlights .editorial-feature__meta span:first-child{color:var(--accent);text-transform:uppercase;letter-spacing:.04em}
.editorial-highlights .job-feature h3{font-size:1.12rem}

/* Concursos. */
.contest-hero .hero-grid{align-items:end}
.contest-toolbar{
  display:grid;grid-template-columns:minmax(220px,1fr) 180px 150px auto;
  gap:10px;margin-top:22px
}
.contest-toolbar input,.contest-toolbar select{
  width:100%;min-height:48px;padding:11px 12px;border:1px solid var(--line);
  border-radius:9px;color:var(--ink);background:var(--surface);outline:none
}
.contest-toolbar input:focus,.contest-toolbar select:focus{border-color:var(--accent)}
.contest-toolbar button{
  min-height:48px;padding:0 20px;border:0;border-radius:9px;color:#fff;
  background:var(--accent-strong);font-weight:900;cursor:pointer
}
.contest-contribute{margin-top:16px;background:transparent;cursor:pointer}
.contest-summary{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:20px}
.contest-summary a{
  display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border:1px solid var(--line);
  border-radius:999px;color:var(--muted);background:var(--surface);font-size:.8rem;font-weight:800
}
.contest-summary a.is-active{color:#fff;border-color:var(--accent);background:var(--accent-strong)}
.contest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.contest-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:var(--shadow)}
.contest-card__media{display:block;aspect-ratio:16/9;overflow:hidden;background:#fff}
.contest-card__media img{width:100%;height:100%;display:block;object-fit:contain;object-position:center}
.contest-card__body{display:grid;gap:11px;padding:19px}
.contest-card__top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.contest-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.68rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.contest-status--open{color:#071f16;background:#55dfa4}
.contest-status--expected{color:#071a33;background:#74b0ff}
.contest-status--closed{color:#f1f5fb;background:#52647a}
.contest-card__location{color:var(--muted);font-size:.74rem;font-weight:750}
.contest-card h3{margin:0;color:var(--ink);font-size:1.23rem;line-height:1.18}
.contest-card p{margin:0;color:var(--muted);font-size:.86rem}
.contest-card__facts{display:flex;flex-wrap:wrap;gap:7px}
.contest-card__facts span{padding:5px 8px;border-radius:7px;color:var(--muted);background:var(--bg-soft);font-size:.72rem}
.contest-card__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:3px}
.contest-card__actions a{display:inline-flex;align-items:center;min-height:39px;padding:0 12px;border-radius:8px;font-size:.78rem;font-weight:900}
.contest-card__actions a:first-child{color:#fff;background:var(--accent-strong)}
.contest-card__actions a+ a{color:var(--accent);border:1px solid var(--accent)}
.contest-empty{grid-column:1/-1;padding:48px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line-strong);border-radius:13px}

/* Catálogo público de cursos. */
.course-hero .hero-grid{align-items:end}
.course-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}
.course-overview__item{display:grid;justify-items:center;gap:7px;padding:18px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);text-align:center;box-shadow:var(--shadow)}
.course-overview__icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:var(--ink);background:var(--surface-3);font-size:1rem;font-weight:900}
.course-overview__item strong{color:var(--ink);font-size:.8rem}
.course-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 230px auto;gap:10px;margin-top:22px}
.course-toolbar input,.course-toolbar select{width:100%;min-height:48px;padding:11px 12px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:var(--surface);outline:none}
.course-toolbar input:focus,.course-toolbar select:focus{border-color:var(--line-strong);box-shadow:0 0 0 3px rgba(255,255,255,.05)}
.course-toolbar button{min-height:48px;padding:0 20px;border:1px solid var(--line-strong);border-radius:9px;color:var(--ink);background:var(--surface-2);font-weight:900;cursor:pointer;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.course-toolbar button:hover{transform:translateY(-1px);background:var(--surface-3);box-shadow:0 8px 20px rgba(0,0,0,.16)}
.course-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.course-card{min-width:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:var(--shadow);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.course-card:hover{transform:translateY(-3px);border-color:var(--line-strong);box-shadow:0 20px 42px rgba(0,0,0,.24)}
.course-card__media{display:block;aspect-ratio:16/9;overflow:hidden;background:#fff}
.course-card__media img{width:100%;height:100%;display:block;object-fit:contain;object-position:center}
.course-card__body{display:flex;flex:1;flex-direction:column;gap:10px;padding:16px}
.course-card__meta{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.course-card__meta span:first-child{color:var(--accent)}
.course-card h3{margin:0;color:var(--ink);font-size:1.02rem;line-height:1.2}
.course-card p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.5}
.course-card__provider{font-weight:800;color:var(--ink)!important}
.course-card__action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin-top:auto;padding:0 13px;border:1px solid var(--line-strong);border-radius:8px;color:var(--ink);background:var(--surface-2);font-size:.78rem;font-weight:900;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.course-card__action:hover{transform:translateY(-1px);background:var(--surface-3);box-shadow:0 8px 20px rgba(0,0,0,.16)}

@media(max-width:1220px) and (min-width:1101px){
  .top-main{gap:8px!important}
  .primary-menu>a,.nav-dropdown__trigger{padding-inline:7px;font-size:.72rem}
  .top-tools{gap:5px}
  .top-tools .search,.top-tools #header-search{width:190px!important;max-width:190px!important;flex-basis:190px!important}
  .top-tools .theme-toggle{min-width:42px!important;width:42px!important;padding:0!important;font-size:0!important}
  .top-tools .theme-toggle::before,.top-tools .theme-toggle::after{left:50%!important}
}
@media(max-width:1100px){
  .top-main{min-height:70px!important;flex-wrap:wrap!important;padding:0!important}
  .top-main .brand{width:70px!important;min-width:70px!important;height:66px!important}
  .menu-toggle{display:block}
  .top-navigation{
    order:3;width:100%;flex:none;display:none;align-items:stretch;gap:12px;
    max-height:calc(100vh - 78px);overflow:auto;padding:8px 0 16px;border-top:1px solid var(--line)
  }
  .top-navigation.is-open{display:flex;flex-direction:column}
  .primary-menu{display:grid;gap:4px;white-space:normal}
  .primary-menu>a,.nav-dropdown__trigger{width:100%;justify-content:space-between;min-height:44px;padding:0 12px;font-size:.84rem}
  .nav-dropdown__menu,.nav-dropdown--news .nav-dropdown__menu{
    position:static;width:100%;columns:auto;margin:4px 0 6px;padding:6px;box-shadow:none;background:var(--bg-soft)
  }
  .nav-dropdown:hover>.nav-dropdown__menu{display:none}
  .nav-dropdown:not(.is-open):focus-within>.nav-dropdown__menu{display:none}
  .nav-dropdown.is-open>.nav-dropdown__menu{display:block}
  .top-tools{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;margin:0}
  .top-tools .search,.top-tools #header-search{width:100%!important;max-width:none!important;min-width:0!important;flex:none!important}
  .top-tools .theme-toggle{min-width:104px!important}
  .contest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .course-overview,.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .top{position:sticky!important}
  .top-main{width:min(calc(100% - 28px),var(--max))!important}
  .top-main .brand{width:64px!important;min-width:64px!important;height:62px!important}
  .top-main .brand img{width:54px!important;height:49px!important}
  .top-tools{grid-template-columns:1fr 1fr}
  .top-tools .search,.top-tools #header-search{grid-column:1/-1}
  .top-tools .theme-toggle,.top-tools .account-link{width:100%!important;min-width:0!important}
  .contest-toolbar{grid-template-columns:1fr}
  .contest-grid{grid-template-columns:1fr}
  .course-overview,.course-grid,.course-toolbar{grid-template-columns:1fr}
  .lead.lead--single .media{aspect-ratio:16/9}
}
@media(prefers-reduced-motion:reduce){.menu-toggle span,.nav-dropdown__trigger span,.primary-menu>a,.top-tools button,.course-card,.course-card__action,.course-toolbar button{transition:none!important}.primary-menu>a:hover,.nav-dropdown__trigger:hover,.top-tools button:hover,.course-card:hover,.course-card__action:hover,.course-toolbar button:hover{transform:none!important}}



/* Community UI v5: authenticated actions, modal, forms and comments. */
.contribute-link{border:1px solid #2f7cf6;padding:10px 14px;color:#fff;background:#1769d9;border-radius:9px;font-weight:800;cursor:pointer}.community-open{overflow:hidden}.community-modal[hidden]{display:none}.community-modal{position:fixed;z-index:12000;inset:0;display:grid;place-items:center;padding:20px}.community-modal__backdrop{position:absolute;inset:0;background:rgba(2,10,24,.82)}.community-dialog{position:relative;z-index:1;width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:30px;border:1px solid #294a73;border-radius:20px;color:#f6f9ff;background:#071a33;box-shadow:0 32px 90px rgba(0,0,0,.55)}.community-close{position:absolute;top:13px;right:15px;width:38px;height:38px;border:1px solid #35557d;border-radius:10px;color:#fff;background:#102f58;font-size:26px;cursor:pointer}.community-auth,.community-account,.community-submit,.community-success{display:grid;gap:16px}.community-auth h2,.community-account h2,.community-submit h2,.community-success h2{margin:0;font-size:2rem}.community-auth p,.community-account p,.community-submit p,.community-success p{margin:0;color:#b8cae3}.community-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:5px;background:#06172d;border-radius:12px}.community-tabs button{min-height:42px;border:0;border-radius:9px;color:#aebed3;background:transparent;font-weight:800;cursor:pointer}.community-tabs button.is-active{color:#fff;background:#153e70}.community-auth form,.community-submit form{display:grid;gap:13px}.community-auth label,.community-submit label,.comment-form label{display:grid;gap:7px;color:#c7d5e7;font-size:.82rem;font-weight:800}.community-auth input,.community-submit input,.community-submit select,.community-submit textarea,.comment-form textarea{width:100%;box-sizing:border-box;border:1px solid #294a73;border-radius:10px;padding:12px 13px;color:#f7faff;background:#06172d;outline:none;font:inherit}.community-auth input:focus,.community-submit input:focus,.community-submit select:focus,.community-submit textarea:focus,.comment-form textarea:focus{border-color:#4b8dff}.community-submit textarea{min-height:120px;resize:vertical}.community-submit .community-content-field{min-height:280px}.community-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.community-primary,.community-secondary{min-height:44px;border-radius:10px;padding:0 16px;font-weight:900;cursor:pointer}.community-primary{border:0;color:#fff;background:#1769d9}.community-secondary{border:1px solid #35557d;color:#eaf2ff;background:#102c50}.community-feedback{padding:11px 13px;border:1px solid #9b6d1d;border-radius:10px;color:#ffe0a3;background:#4b3309;font-size:.86rem}.community-comments{margin-top:46px;padding-top:32px;border-top:1px solid var(--line)}.community-comments__head{margin-bottom:18px}.community-comments__head h2{margin:5px 0 0;font-size:1.8rem}.community-comments__loading,.community-comments__empty{color:var(--muted)}.comment-list{display:grid;gap:13px;margin-bottom:22px}.comment{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.comment-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#1769d9;font-weight:900}.comment header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.comment header span{color:var(--muted);font-size:.74rem}.comment p{margin:7px 0 0;color:var(--muted);white-space:pre-wrap}.comment-form{display:grid;gap:10px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.comment-form textarea{min-height:110px;resize:vertical;color:var(--ink);background:var(--bg-soft)}.comment-form .community-primary{justify-self:start}.comment-login{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px dashed var(--line-strong);border-radius:13px}.comment-login p{margin:0;color:var(--muted)}@media(max-width:720px){.community-modal{padding:10px}.community-dialog{max-height:calc(100vh - 20px);padding:25px 16px}.community-form-grid{grid-template-columns:1fr}.community-submit .community-content-field{min-height:220px}.comment{grid-template-columns:36px minmax(0,1fr)}.comment-avatar{width:36px;height:36px}.comment-login{align-items:stretch;flex-direction:column}.top-actions .contribute-link{grid-column:1/-1;width:100%}}

/* Keep the server-rendered contribution button hidden until auth is restored. */
#community-create-button {
  display: none !important;
}

.top-actions {
  width: auto !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

.top-actions .account-link,
.top-actions .contribute-link,
.top-actions .community-v2-header-create {
  min-width: 0 !important;
  width: auto !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 14px !important;
  border-radius: 10px !important;
  font-size: .8rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}

.top-actions .account-link {
  color: #eaf2ff !important;
  background: rgba(255,255,255,.045) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
}

.top-actions .contribute-link,
.top-actions .community-v2-header-create {
  color: #fff !important;
  background: linear-gradient(180deg, #3c86fb 0%, #2e72e8 100%) !important;
  border: 1px solid #4b91ff !important;
  box-shadow: 0 6px 16px rgba(47,124,246,.2) !important;
}

html[data-portal="vagas"] .top-actions .contribute-link,
html[data-portal="vagas"] .top-actions .community-v2-header-create {
  background: linear-gradient(180deg, #31c792 0%, #25ae7d 100%) !important;
  border-color: #42d7a3 !important;
  box-shadow: 0 6px 16px rgba(39,185,133,.18) !important;
}

html[data-theme="light"] .top-actions .account-link {
  color: #123b68 !important;
  background: #f7faff !important;
  border-color: #d7e1ed !important;
}

.top-actions [hidden] {
  display: none !important;
}

@media (min-width: 721px) and (max-width: 1120px) {
  .top-main {
    flex-wrap: wrap !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .brand {
    width: 112px !important;
    min-width: 112px !important;
  }

  .search,
  #header-search {
    width: auto !important;
    flex: 1 1 360px !important;
  }

  .top-actions {
    width: 100% !important;
    justify-content: flex-end !important;
    padding-bottom: 0 !important;
  }
}

@media (max-width: 720px) {
  .top-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .search,
  #header-search {
    width: 100% !important;
    margin: 0 !important;
  }

  .top-actions {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 8px !important;
    padding-bottom: 0 !important;
  }

  .top-actions .account-link,
  .top-actions .contribute-link,
  .top-actions .community-v2-header-create {
    grid-column: auto !important;
    width: 100% !important;
  }
}

@media (max-width: 520px) {
  .top-actions {
    grid-template-columns: 42px minmax(0, 1fr) !important;
  }

  .top-actions .contribute-link,
  .top-actions .community-v2-header-create {
    grid-column: 1 / -1 !important;
  }
}

