/* North Shore Junk Co. — design Link Flow, aprovado 22/08/2026 */

:root{
  --ink:#12140F; --ink-soft:#1C1F19; --ink-line:#2C3128;
  --lime:#8DC63F; --lime-deep:#63901F; --harbor:#2E4049;
  --paper:#F5F6F0; --paper-2:#EAECE2; --grey:#6E7466; --grey-2:#9AA091;
  --display: Impact, "Haettenschweiler", "Franklin Gothic Bold", "Arial Narrow", sans-serif;
  --body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Courier New", monospace;
}

*{ box-sizing:border-box; }
body{ margin:0; background:var(--paper); color:var(--ink); font-family:var(--body); font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased; }
img{ max-width:100%; height:auto; }
a{ color:var(--lime-deep); }

.nsj-wrap{ max-width:1080px; margin:0 auto; padding:0 40px; }

/* ---------- cabecalho ---------- */
.nsj-header{ background:var(--ink); color:var(--paper); border-bottom:3px solid var(--lime); position:relative; }
.nsj-hdr{ display:flex; align-items:center; gap:28px; padding:14px 40px; max-width:1080px; margin:0 auto; }
.nsj-logo{ display:flex; align-items:center; gap:11px; flex-shrink:0; text-decoration:none; }
.nsj-logo svg{ display:block; }
.nsj-logo .l1,.nsj-logo .l2{ font-family:var(--display); font-size:19px; letter-spacing:.03em; display:block; line-height:1; }
.nsj-logo .l1{ color:var(--paper); }
.nsj-logo .l2{ color:var(--lime); }
.nsj-logo .l3{ font-family:var(--mono); font-size:7.5px; letter-spacing:.16em; color:var(--grey-2); display:block; margin-top:3px; }
.nsj-nav{ display:flex; gap:22px; margin-left:auto; align-items:center; list-style:none; margin-block:0; padding:0; }
.nsj-nav li{ position:relative; }
.nsj-nav a{ color:var(--paper); text-decoration:none; font-size:13px; font-weight:600; letter-spacing:.02em; padding:6px 0; border-bottom:2px solid transparent; display:block; }
.nsj-nav a:hover,.nsj-nav a:focus-visible{ color:var(--lime); border-bottom-color:var(--lime); outline:none; }
.nsj-nav .menu-item-has-children>a::after{ content:" \25BE"; font-size:10px; color:var(--lime); }
.nsj-nav .sub-menu{
  position:absolute; top:calc(100% + 8px); left:-16px; z-index:20; display:none;
  background:var(--ink-soft); border:1px solid var(--ink-line); border-top:3px solid var(--lime);
  padding:10px 0; min-width:270px; list-style:none; margin:0; box-shadow:0 18px 40px rgba(0,0,0,.5);
}
.nsj-nav li:hover>.sub-menu,.nsj-nav li:focus-within>.sub-menu{ display:block; }
.nsj-nav .sub-menu a{ padding:7px 18px; border:0; white-space:nowrap; }
.nsj-nav .sub-menu a:hover{ background:rgba(141,198,63,.12); color:var(--lime); border:0; }

.nsj-btn{ display:inline-block; background:var(--lime); color:var(--ink); font-weight:800; font-size:13px; letter-spacing:.04em; text-transform:uppercase; padding:11px 18px; border-radius:3px; text-decoration:none; white-space:nowrap; border:2px solid var(--lime); cursor:pointer; font-family:var(--body); }
.nsj-btn:hover{ background:var(--lime-deep); border-color:var(--lime-deep); color:var(--paper); }
.nsj-btn-ghost{ background:transparent; color:var(--lime); border-color:var(--lime); }
.nsj-btn-ghost:hover{ background:var(--lime); color:var(--ink); }
.nsj-btn-dark{ background:var(--ink); color:var(--paper); border-color:var(--ink); }
.nsj-btn-dark:hover{ background:var(--ink-soft); border-color:var(--ink-soft); color:var(--lime); }
.nsj-btn-outline-dark{ background:transparent; color:var(--ink); border-color:var(--ink); }
.nsj-btn-outline-dark:hover{ background:var(--ink); color:var(--paper); }

.nsj-burger{ display:none; margin-left:auto; background:none; border:0; color:var(--paper); font-size:24px; cursor:pointer; }

/* ---------- hero ---------- */
.nsj-hero{
  background: linear-gradient(to bottom, rgba(18,20,15,.88), rgba(18,20,15,.94)), radial-gradient(1100px 380px at 78% 0%, var(--harbor), transparent 70%);
  background-color:var(--ink); color:var(--paper); padding:56px 0 48px;
}
.nsj-hero-split{ display:grid; grid-template-columns:1.15fr .85fr; gap:40px; align-items:center; }
/* trava: o wpautop cria <p> vazio entre blocos e ele rouba uma celula do grid */
.nsj-hero-split > p:empty, .nsj-grid3 > p:empty, .nsj-ba > p:empty,
.nsj-prices > p:empty, .nsj-pair > p:empty, .nsj-contact > p:empty{ display:none; }
.nsj-hero-split img{ border-radius:3px; display:block; width:100%; height:100%; object-fit:cover; }
.nsj-eyebrow{ font-family:var(--mono); font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--lime); margin:0 0 14px; }
.nsj-hero h1{ font-family:var(--display); font-weight:400; font-size:clamp(34px,5vw,58px); line-height:.98; letter-spacing:.005em; margin:0 0 18px; max-width:18ch; text-wrap:balance; text-transform:uppercase; color:var(--paper); }
.nsj-hero h1 em{ font-style:normal; color:var(--lime); }
.nsj-lede{ font-size:17px; line-height:1.65; max-width:56ch; color:#D9DDD1; margin:0 0 26px; }
.nsj-lede strong{ color:var(--paper); }
.nsj-cta-row{ display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.nsj-trust{ display:flex; gap:26px; flex-wrap:wrap; margin-top:34px; padding-top:20px; border-top:1px solid var(--ink-line); font-size:13px; color:var(--grey-2); }
.nsj-trust span{ display:flex; align-items:center; gap:8px; }
.nsj-trust i{ color:var(--lime); font-weight:800; font-style:normal; }

/* ---------- herói claro (home) ----------
   O caminhao e verde-escuro; sobre o fundo quase preto a dobra ficava pesada.
   Fundo branco com um leve halo verde, e TODO texto/botao invertido junto,
   senao sobra texto claro sobre fundo claro. */
.nsj-hero.nsj-hero-lt{
  background: radial-gradient(1100px 420px at 78% 0%, rgba(141,198,63,.12), transparent 70%), #FFFFFF;
  background-color:#FFFFFF; color:var(--ink); border-bottom:1px solid #E2E5DA;
}
.nsj-hero-lt h1{ color:var(--ink); }
.nsj-hero-lt h1 em{ color:var(--lime-deep); }
.nsj-hero-lt .nsj-eyebrow{ color:var(--lime-deep); }
.nsj-hero-lt .nsj-lede{ color:#3A3F34; }
.nsj-hero-lt .nsj-lede strong{ color:var(--ink); }
.nsj-hero-lt .nsj-trust{ color:var(--grey); border-top-color:#DDE0D4; }
.nsj-hero-lt .nsj-trust i{ color:var(--lime-deep); }
.nsj-hero-lt .nsj-ph{ background:rgba(141,198,63,.06); }
/* foto do heroi: preenche a coluna, igual ao molde das paginas de servico */
.nsj-hero-shot{ margin:0; }
.nsj-hero-shot img{ display:block; width:100%; height:330px; object-fit:cover; border-radius:3px; }
@media (max-width:880px){ .nsj-hero-shot img{ height:240px; } }
.nsj-hero-lt .nsj-ph span{ color:var(--grey); }

/* ---------- faixa de credenciais (spec 5.2) ----------
   Tarja preta com os itens passando em verde. Pausa no hover.
   O bloco global de prefers-reduced-motion no fim do arquivo ja mata a animacao;
   aqui so garantimos que o conteudo continue legivel quando ela nao roda. */
.nsj-ticker{
  background:var(--ink); border-bottom:3px solid var(--lime);
  overflow:hidden; height:78px; display:flex; align-items:center;
}
.nsj-ticker-track{ display:flex; width:max-content; animation:nsj-scroll 52s linear infinite; }
.nsj-ticker:hover .nsj-ticker-track,
.nsj-ticker:focus-within .nsj-ticker-track{ animation-play-state:paused; }
.nsj-ticker-set{ display:flex; align-items:center; list-style:none; margin:0; padding:0; }
.nsj-ticker-set li{
  display:flex; align-items:center; gap:11px; white-space:nowrap; padding:0 26px;
  color:var(--lime); font-family:var(--mono); font-size:12.5px; letter-spacing:.12em; text-transform:uppercase;
}
.nsj-ticker-set li::before{ content:"\2022"; color:#3A4433; font-size:15px; }
.nsj-ticker-set li:first-child::before{ content:none; }
.nsj-ticker-set b{ color:var(--paper); font-weight:400; }
.nsj-ticker a{ color:var(--lime); text-decoration:none; border-bottom:1px solid rgba(141,198,63,.45); }
.nsj-ticker a:hover,.nsj-ticker a:focus-visible{ color:var(--paper); border-bottom-color:var(--paper); }
@keyframes nsj-scroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce){
  .nsj-ticker{ height:auto; overflow-x:auto; }
  .nsj-ticker-track{ animation:none; }
  .nsj-ticker-set + .nsj-ticker-set{ display:none; }
  .nsj-ticker-set{ flex-wrap:wrap; gap:6px 0; padding:14px 20px; }
}
@media (max-width:880px){ .nsj-ticker{ height:66px; } .nsj-ticker-set li{ font-size:11.5px; padding:0 18px; } }

/* ---------- secoes ---------- */
.nsj-band{ padding:52px 0; }
.nsj-band-alt{ background:var(--paper-2); }
.nsj-band-dark{ background:var(--ink); color:var(--paper); }
.nsj-band h2,.nsj-band-dark h2{ font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:clamp(26px,3.2vw,36px); line-height:1.05; letter-spacing:.01em; margin:0 0 8px; text-wrap:balance; }
.nsj-band-dark h2{ color:var(--paper); }
.nsj-note{ color:var(--grey); font-size:15px; margin:0 0 30px; max-width:60ch; }
.nsj-band-dark .nsj-note{ color:var(--grey-2); }

.nsj-grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.nsj-card{ background:#fff; border:1px solid #D9DCD0; border-top:3px solid var(--lime); padding:0 0 18px; display:flex; flex-direction:column; }
.nsj-card figure{ margin:0 0 14px; }
.nsj-card figure img{ display:block; width:100%; height:172px; object-fit:cover; }
.nsj-card h3{ font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:19px; line-height:1.1; letter-spacing:.02em; margin:0 20px 7px; }
.nsj-card p{ margin:0 20px; font-size:14px; color:var(--grey); line-height:1.55; }
.nsj-card .more{ display:inline-block; margin:12px 20px 0; font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--lime-deep); text-decoration:none; }
.nsj-card .more:hover{ text-decoration:underline; }

.nsj-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.nsj-step{ padding-top:16px; border-top:2px solid var(--lime); }
.nsj-step .n{ font-family:var(--mono); font-size:11px; letter-spacing:.14em; color:var(--lime); display:block; margin-bottom:8px; }
.nsj-step h3{ font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:20px; margin:0 0 6px; letter-spacing:.02em; }
.nsj-step p{ margin:0; font-size:14px; color:var(--grey-2); }

/* ---------- garantias ---------- */
.nsj-guarantees{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.nsj-g{ background:var(--ink-soft); border:1px solid var(--ink-line); border-left:3px solid var(--lime); padding:20px; }
.nsj-g svg{ width:26px; height:26px; display:block; margin-bottom:12px; }
.nsj-g h3{ font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:19px; letter-spacing:.02em; margin:0 0 7px; color:var(--paper); }
.nsj-g p{ margin:0; font-size:14px; color:#C9CEC0; line-height:1.55; }
.nsj-g .kicker{ display:inline-block; margin-top:12px; background:var(--lime); color:var(--ink); font-family:var(--mono); font-size:11px; font-weight:700; letter-spacing:.06em; padding:4px 9px; border-radius:2px; text-transform:uppercase; }

.nsj-strip{ display:grid; grid-template-columns:repeat(5,1fr); border:1px solid #D9DCD0; background:#fff; }
.nsj-strip div{ padding:16px; border-right:1px solid #E4E7DB; }
.nsj-strip div:last-child{ border-right:0; }
.nsj-strip b{ display:block; font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:15px; letter-spacing:.02em; color:var(--ink); margin-bottom:5px; line-height:1.15; }
.nsj-strip span{ font-size:12.5px; color:var(--grey); line-height:1.45; display:block; }
.nsj-strip i{ color:var(--lime-deep); font-style:normal; }

/* ---------- preco ---------- */
.nsj-prices{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:22px; }
.nsj-price{ background:#fff; border:1px solid #D9DCD0; padding:22px 20px; }
.nsj-price .lvl{ font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--grey); margin-bottom:10px; }
.nsj-price .fig{ font-family:var(--display); font-size:34px; line-height:1; color:var(--ink); letter-spacing:.01em; }
.nsj-price p{ font-size:13.5px; color:var(--grey); margin:10px 0 0; }
.nsj-bar{ height:8px; background:var(--paper-2); margin-top:14px; border-radius:2px; overflow:hidden; }
.nsj-bar i{ display:block; height:100%; background:var(--lime); }
.nsj-pend{ display:inline-block; border:1px dashed var(--lime); color:var(--lime-deep); font-family:var(--mono); font-size:10.5px; letter-spacing:.06em; padding:1px 7px; border-radius:3px; text-transform:uppercase; }

/* ---------- cidades ---------- */
.nsj-cities{ display:flex; flex-wrap:wrap; gap:8px; }
.nsj-cities a{ background:var(--ink-soft); color:var(--paper); text-decoration:none; border:1px solid var(--ink-line); border-radius:3px; padding:9px 14px; font-size:13.5px; font-weight:600; }
.nsj-cities a:hover{ border-color:var(--lime); color:var(--lime); }
.nsj-cities a.home-city{ background:var(--lime); color:var(--ink); border-color:var(--lime); }

/* ---------- antes e depois / equipe ---------- */
.nsj-ba{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.nsj-pair{ display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.nsj-ph{ border:1px dashed var(--lime); background:rgba(141,198,63,.05); min-height:150px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:16px; gap:5px; }
.nsj-ph b{ font-family:var(--mono); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--lime-deep); }
.nsj-ph span{ font-size:12.5px; color:var(--grey); max-width:32ch; line-height:1.4; }
.nsj-cap{ font-size:13px; color:var(--grey); margin:8px 0 0; }
/* antes/depois com foto de verdade */
.nsj-ba-2{ grid-template-columns:repeat(2,1fr); }
.nsj-shot{ margin:0; position:relative; }
.nsj-shot img{ display:block; width:100%; aspect-ratio:1/1; object-fit:cover; }
.nsj-shot figcaption{
  position:absolute; left:0; top:0; background:var(--ink); color:var(--paper);
  font-family:var(--mono); font-size:10px; letter-spacing:.14em; text-transform:uppercase; padding:4px 9px;
}
.nsj-shot.is-after figcaption{ background:var(--lime); color:var(--ink); }
/* galeria de fotos reais do servico */
.nsj-galeria{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.nsj-galeria figure{ margin:0; }
.nsj-galeria button{ display:block; width:100%; padding:0; border:0; background:none; cursor:zoom-in; }
.nsj-galeria img{ display:block; width:100%; aspect-ratio:1/1; object-fit:cover; }
.nsj-galeria button:focus-visible{ outline:3px solid var(--lime); outline-offset:2px; }
@media (max-width:880px){ .nsj-galeria{ grid-template-columns:repeat(2,1fr); } }
/* gatilho do lightbox: botao de verdade, para teclado e leitor de tela */
.nsj-shot button{ display:block; width:100%; padding:0; border:0; background:none; cursor:zoom-in; position:relative; }
.nsj-shot button:focus-visible{ outline:3px solid var(--lime); outline-offset:2px; }
.nsj-shot button::after{
  content:"\2922"; position:absolute; right:8px; bottom:8px; width:30px; height:30px; line-height:30px;
  text-align:center; background:rgba(18,20,15,.72); color:var(--paper); font-size:15px; border-radius:3px;
  opacity:0; transition:opacity .2s;
}
.nsj-shot button:hover::after,.nsj-shot button:focus-visible::after{ opacity:1; }

/* lightbox */
.nsj-lb{ position:fixed; inset:0; z-index:9999; background:rgba(9,10,8,.94); display:none; align-items:center; justify-content:center; }
.nsj-lb[open],.nsj-lb.is-on{ display:flex; }
.nsj-lb img{ max-width:92vw; max-height:82vh; object-fit:contain; display:block; }
.nsj-lb figcaption{ color:var(--paper); font-size:14px; text-align:center; margin-top:14px; max-width:70ch; padding:0 20px; }
.nsj-lb .nsj-lb-inner{ display:flex; flex-direction:column; align-items:center; }
.nsj-lb button{
  position:absolute; background:rgba(245,246,240,.10); color:var(--paper); border:1px solid rgba(245,246,240,.28);
  width:48px; height:48px; border-radius:50%; font-size:22px; line-height:1; cursor:pointer;
}
.nsj-lb button:hover{ background:var(--lime); color:var(--ink); border-color:var(--lime); }
.nsj-lb button:focus-visible{ outline:3px solid var(--lime); outline-offset:2px; }
.nsj-lb-close{ top:18px; right:18px; }
.nsj-lb-prev{ left:18px; top:50%; transform:translateY(-50%); }
.nsj-lb-next{ right:18px; top:50%; transform:translateY(-50%); }
@media (max-width:880px){
  .nsj-lb-prev{ left:10px; } .nsj-lb-next{ right:10px; }
  .nsj-lb img{ max-width:96vw; max-height:70vh; }
}
@media (max-width:880px){ .nsj-ba-2{ grid-template-columns:1fr; } }
.nsj-crew{ display:grid; grid-template-columns:1fr 1fr; gap:36px; align-items:center; }
.nsj-crew .nsj-ph{ min-height:250px; }

/* ---------- avaliacoes / faq ---------- */
.nsj-rev{ background:#fff; border:1px solid #D9DCD0; padding:20px; }
.nsj-rev .stars{ color:var(--lime); font-size:14px; letter-spacing:.14em; margin-bottom:10px; }
.nsj-rev p{ margin:0 0 14px; font-size:14px; color:var(--grey); font-style:italic; }
.nsj-rev .who{ font-family:var(--mono); font-size:11px; color:var(--grey-2); letter-spacing:.06em; }

.nsj-faq{ border-top:1px solid #D9DCD0; }
.nsj-faq .q{ border-bottom:1px solid #D9DCD0; padding:16px 0; }
.nsj-faq h3{ font-size:16px; margin:0 0 6px; font-weight:800; color:var(--ink); display:flex; gap:10px; align-items:baseline; }
.nsj-faq h3::before{ content:"+"; color:var(--lime); font-family:var(--display); font-size:20px; line-height:1; }
.nsj-faq p{ margin:0 0 0 22px; font-size:14.5px; color:var(--grey); max-width:70ch; }

/* ---------- cta e rodape ---------- */
.nsj-cta{ background:var(--lime); color:var(--ink); padding:40px 0; }
.nsj-cta .nsj-wrap{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.nsj-cta h2{ margin:0; max-width:20ch; font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:clamp(24px,3vw,34px); }
.nsj-cta p{ margin:6px 0 0; font-size:15px; color:#2B3A15; max-width:44ch; }

.nsj-footer{ background:var(--ink); color:var(--grey-2); padding:44px 0 26px; border-top:3px solid var(--lime); }
.nsj-foot{ display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:32px; }
.nsj-foot h4{ font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--lime); margin:0 0 12px; font-weight:400; }
.nsj-foot p,.nsj-foot a{ font-size:14px; color:var(--grey-2); text-decoration:none; display:block; margin:0 0 6px; }
.nsj-foot a:hover{ color:var(--lime); }
.nsj-foot address{ font-style:normal; line-height:1.7; }
.nsj-foot address strong{ color:var(--paper); }
.nsj-foot-bottom{ margin-top:30px; padding-top:18px; border-top:1px solid var(--ink-line); font-family:var(--mono); font-size:11px; color:#5B6154; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }

/* ---------- formulario ---------- */
.nsj-contact{ display:grid; grid-template-columns:1.25fr 1fr; gap:40px; align-items:start; }
.nsj-form{ background:#fff; border:1px solid #D9DCD0; border-top:3px solid var(--lime); padding:26px; }
.nsj-frow{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.nsj-field{ display:flex; flex-direction:column; gap:6px; margin-bottom:14px; }
.nsj-field label{ font-family:var(--mono); font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--grey); }
.nsj-field .req{ color:#C0392B; }
.nsj-field input,.nsj-field textarea,.nsj-field select{ font-family:var(--body); font-size:15px; color:var(--ink); border:1px solid #C9CDBF; border-radius:3px; padding:11px 12px; background:#FCFCF9; width:100%; }
.nsj-field input:focus,.nsj-field textarea:focus,.nsj-field select:focus{ outline:2px solid var(--lime); outline-offset:1px; border-color:var(--lime); }
.nsj-field .hint{ font-size:12px; color:var(--grey-2); }
.nsj-side h3{ font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:20px; margin:0 0 8px; letter-spacing:.02em; }
.nsj-side p,.nsj-side a{ font-size:15px; color:var(--grey); margin:0 0 4px; display:block; text-decoration:none; }
.nsj-side a:hover{ color:var(--lime-deep); }
.nsj-bigtel{ font-family:var(--display); font-size:30px; color:var(--ink); letter-spacing:.02em; display:block; margin-bottom:6px; }
.nsj-block{ margin-bottom:26px; }

/* ---------- responsivo ---------- */
@media (max-width:880px){
  .nsj-grid3,.nsj-steps,.nsj-guarantees,.nsj-prices,.nsj-foot,.nsj-ba,.nsj-crew,.nsj-hero-split,.nsj-contact,.nsj-frow{ grid-template-columns:1fr; }
  .nsj-strip{ grid-template-columns:1fr; }
  .nsj-strip div{ border-right:0; border-bottom:1px solid #E4E7DB; }
  .nsj-wrap,.nsj-hdr{ padding-left:22px; padding-right:22px; }
  .nsj-nav{ display:none; width:100%; flex-direction:column; align-items:flex-start; gap:0; order:3; padding-bottom:10px; }
  .nsj-nav.open{ display:flex; }
  .nsj-nav .sub-menu{ position:static; display:block; border:0; box-shadow:none; padding:0 0 0 14px; min-width:0; background:transparent; }
  .nsj-burger{ display:block; }
  .nsj-hdr{ flex-wrap:wrap; gap:14px; }
  .nsj-cta .nsj-wrap{ flex-direction:column; align-items:flex-start; }
}
/* ---------- destaque, formulario, mapa ---------- */
.nsj-callout{ background:var(--paper-2); border-left:3px solid var(--lime); padding:16px 18px; margin:22px 0; font-size:15px; color:#3A3F34; }
.nsj-callout strong{ color:var(--ink); }
.nsj-kicker{ display:inline-block; background:var(--lime); color:var(--ink); font-family:var(--mono); font-size:11px; font-weight:700; letter-spacing:.06em; padding:4px 9px; border-radius:2px; text-transform:uppercase; margin-left:6px; }
/* o seletor .nsj-field label tambem pega este rotulo; reverter o visual de etiqueta */
.nsj-field label.nsj-drop{ border:1px dashed #B9BFAC; border-radius:4px; padding:18px; text-align:center; background:#FCFCF9; cursor:pointer; display:block; font-family:var(--body); font-size:13.5px; letter-spacing:normal; text-transform:none; color:var(--grey); line-height:1.5; }
.nsj-drop b{ color:var(--lime-deep); }
.nsj-drop.has-file{ border-style:solid; border-color:var(--lime); }
.nsj-form button.nsj-btn{ width:100%; text-align:center; padding:14px 18px; font-size:14px; }
.nsj-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.nsj-map{ border:1px solid #D9DCD0; margin-top:8px; }
.nsj-map iframe{ display:block; width:100%; height:190px; border:0; }
.nsj-notice{ border-left:3px solid var(--lime); background:#fff; border:1px solid #D9DCD0; border-left:3px solid var(--lime); padding:16px 18px; margin:0 0 20px; font-size:15px; }
.nsj-notice.err{ border-left-color:#C0392B; }

@media (prefers-reduced-motion:reduce){ *{ transition:none !important; animation:none !important; } }
