.elementor-kit-9{--e-global-color-primary:#121110;--e-global-color-secondary:#5E5A55;--e-global-color-text:#121110;--e-global-color-accent:#A19C95;--e-global-color-grafite:#1E1C1A;--e-global-color-papel:#EFEFEF;--e-global-color-branco:#FFFFFF;--e-global-color-gelo:#F3F1ED;--e-global-color-linho:#E4E1DC;--e-global-color-prosa:#3B3937;--e-global-color-nevoa:#F4F3F1;--e-global-typography-primary-font-family:"Geist";--e-global-typography-primary-font-size:40px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:1.05em;--e-global-typography-primary-letter-spacing:-0.035em;--e-global-typography-secondary-font-family:"Geist";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-secondary-letter-spacing:-0.02em;--e-global-typography-text-font-family:"Geist";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-family:"Geist";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:1.2em;--e-global-typography-tgigante-font-family:"Geist";--e-global-typography-tgigante-font-size:clamp(64px,11vw,168px);--e-global-typography-tgigante-font-weight:400;--e-global-typography-tgigante-line-height:1.02em;--e-global-typography-tgigante-letter-spacing:-0.035em;--e-global-typography-tpagina-font-family:"Geist";--e-global-typography-tpagina-font-size:clamp(72px,12vw,184px);--e-global-typography-tpagina-font-weight:400;--e-global-typography-tpagina-line-height:0.9em;--e-global-typography-tpagina-letter-spacing:-0.055em;--e-global-typography-tlogos-font-family:"Geist";--e-global-typography-tlogos-font-size:clamp(88px,21vw,330px);--e-global-typography-tlogos-font-weight:300;--e-global-typography-tlogos-line-height:0.85em;--e-global-typography-tlogos-letter-spacing:-0.04em;--e-global-typography-tcase-font-family:"Geist";--e-global-typography-tcase-font-size:clamp(80px,15vw,240px);--e-global-typography-tcase-font-weight:300;--e-global-typography-tcase-line-height:0.88em;--e-global-typography-tcase-letter-spacing:-0.055em;--e-global-typography-thero-font-family:"Geist";--e-global-typography-thero-font-size:clamp(34px,4.4vw,68px);--e-global-typography-thero-font-weight:400;--e-global-typography-thero-line-height:1.02em;--e-global-typography-thero-letter-spacing:-0.035em;--e-global-typography-tmanifesto-font-family:"Geist";--e-global-typography-tmanifesto-font-size:clamp(34px,5.4vw,80px);--e-global-typography-tmanifesto-font-weight:400;--e-global-typography-tmanifesto-line-height:1em;--e-global-typography-tmanifesto-letter-spacing:-0.035em;--e-global-typography-tgrande-font-family:"Geist";--e-global-typography-tgrande-font-size:clamp(48px,7vw,104px);--e-global-typography-tgrande-font-weight:400;--e-global-typography-tgrande-line-height:1em;--e-global-typography-tgrande-letter-spacing:-0.045em;--e-global-typography-tsecaoxl-font-family:"Geist";--e-global-typography-tsecaoxl-font-size:clamp(40px,6vw,92px);--e-global-typography-tsecaoxl-font-weight:400;--e-global-typography-tsecaoxl-line-height:1.02em;--e-global-typography-tsecaoxl-letter-spacing:-0.035em;--e-global-typography-tsecao-font-family:"Geist";--e-global-typography-tsecao-font-size:clamp(40px,5vw,76px);--e-global-typography-tsecao-font-weight:400;--e-global-typography-tsecao-line-height:1.02em;--e-global-typography-tsecao-letter-spacing:-0.035em;--e-global-typography-tfino-font-family:"Geist";--e-global-typography-tfino-font-size:clamp(48px,6.4vw,100px);--e-global-typography-tfino-font-weight:300;--e-global-typography-tfino-line-height:0.95em;--e-global-typography-tfino-letter-spacing:-0.045em;--e-global-typography-tlead-font-family:"Geist";--e-global-typography-tlead-font-size:clamp(32px,4.6vw,68px);--e-global-typography-tlead-font-weight:400;--e-global-typography-tlead-line-height:1.08em;--e-global-typography-tlead-letter-spacing:-0.035em;--e-global-typography-tmedio-font-family:"Geist";--e-global-typography-tmedio-font-size:clamp(34px,4.4vw,64px);--e-global-typography-tmedio-font-weight:400;--e-global-typography-tmedio-line-height:1.04em;--e-global-typography-tmedio-letter-spacing:-0.04em;--e-global-typography-tmedio2-font-family:"Geist";--e-global-typography-tmedio2-font-size:clamp(32px,4vw,58px);--e-global-typography-tmedio2-font-weight:400;--e-global-typography-tmedio2-line-height:1.05em;--e-global-typography-tmedio2-letter-spacing:-0.04em;--e-global-typography-tbloco-font-family:"Geist";--e-global-typography-tbloco-font-size:clamp(26px,2.6vw,38px);--e-global-typography-tbloco-font-weight:400;--e-global-typography-tbloco-line-height:1.1em;--e-global-typography-tbloco-letter-spacing:-0.035em;--e-global-typography-tnumero-font-family:"Geist";--e-global-typography-tnumero-font-size:clamp(40px,4.4vw,64px);--e-global-typography-tnumero-font-weight:500;--e-global-typography-tnumero-line-height:1em;--e-global-typography-tnumero-letter-spacing:-0.035em;--e-global-typography-tnumerog-font-family:"Geist";--e-global-typography-tnumerog-font-size:clamp(56px,7.5vw,112px);--e-global-typography-tnumerog-font-weight:400;--e-global-typography-tnumerog-line-height:0.9em;--e-global-typography-tnumerog-letter-spacing:-0.045em;--e-global-typography-tcard-font-family:"Geist";--e-global-typography-tcard-font-size:clamp(22px,2vw,28px);--e-global-typography-tcard-font-weight:500;--e-global-typography-tcard-line-height:1.1em;--e-global-typography-tcard-letter-spacing:-0.03em;--e-global-typography-titem-font-family:"Geist";--e-global-typography-titem-font-size:22px;--e-global-typography-titem-font-weight:500;--e-global-typography-titem-line-height:1.2em;--e-global-typography-titem-letter-spacing:-0.03em;--e-global-typography-tpeq-font-family:"Geist";--e-global-typography-tpeq-font-size:17px;--e-global-typography-tpeq-font-weight:500;--e-global-typography-tpeq-line-height:1.3em;--e-global-typography-tpeq-letter-spacing:-0.02em;--e-global-typography-tintro-font-family:"Geist";--e-global-typography-tintro-font-size:clamp(17px,1.4vw,20px);--e-global-typography-tintro-font-weight:400;--e-global-typography-tintro-line-height:1.45em;--e-global-typography-tapoio-font-family:"Geist";--e-global-typography-tapoio-font-size:15px;--e-global-typography-tapoio-font-weight:400;--e-global-typography-tapoio-line-height:1.6em;--e-global-typography-tartigo-font-family:"Geist";--e-global-typography-tartigo-font-size:18px;--e-global-typography-tartigo-font-weight:400;--e-global-typography-tartigo-line-height:1.7em;--e-global-typography-tpequeno-font-family:"Geist";--e-global-typography-tpequeno-font-size:14px;--e-global-typography-tpequeno-font-weight:400;--e-global-typography-tpequeno-line-height:1.5em;--e-global-typography-tlegenda-font-family:"Geist";--e-global-typography-tlegenda-font-size:12.5px;--e-global-typography-tlegenda-font-weight:400;--e-global-typography-tlegenda-line-height:1.4em;--e-global-typography-ttag-font-family:"Geist";--e-global-typography-ttag-font-size:13px;--e-global-typography-ttag-font-weight:500;--e-global-typography-ttag-line-height:1.4em;--e-global-typography-trotulo-font-family:"Geist";--e-global-typography-trotulo-font-size:12px;--e-global-typography-trotulo-font-weight:500;--e-global-typography-trotulo-text-transform:uppercase;--e-global-typography-trotulo-line-height:1.4em;--e-global-typography-trotulo-letter-spacing:0.14em;background-color:var( --e-global-color-papel );color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1216px;}.e-con{--container-max-width:1216px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1366px){.elementor-kit-9{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:900px){.elementor-kit-9{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:560px){.elementor-kit-9{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================
   NOP · CSS GLOBAL (Configurações do site → CSS personalizado)
   Só o que o painel do Elementor não faz sozinho: efeitos de
   hover, pseudo-elementos, cards dos Loops e ajustes de widgets.
   Cores e fontes vêm das Cores/Tipografias globais do Kit:
   mude lá e tudo aqui acompanha.
   ========================================================= */
body{
  --deep:var(--e-global-color-primary);      /* Carvão */
  --deep-2:var(--e-global-color-grafite);    /* Grafite */
  --sky:var(--e-global-color-accent);        /* Areia */
  --ice:var(--e-global-color-gelo);          /* texto claro */
  --paper:var(--e-global-color-papel);       /* fundo do site */
  --white:var(--e-global-color-branco);
  --ink:var(--e-global-color-text);          /* texto principal */
  --muted:var(--e-global-color-secondary);   /* Pedra */
  --line:rgba(18,17,16,.09);
  --line-dark:rgba(243,241,237,.12);
  --radius:18px;
  --radius-sm:12px;
  --gutter:clamp(16px,4vw,56px);
  --ease:cubic-bezier(.2,.7,.1,1);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
html{scroll-behavior:smooth}
body a{text-decoration:none}
.elementor img{display:block}
.elementor-widget-text-editor p:last-child,.elementor-widget-text-editor ul:last-child,.elementor-widget-text-editor ol:last-child{margin-bottom:0}
.elementor-widget-text-editor p{margin:0}
.elementor-widget-text-editor p + p{margin-top:var(--p-gap,16px)}
.elementor-heading-title a{color:inherit}
.nop-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* segunda cor dentro de títulos (<span> no texto): Areia/Pedra */
.nop-soft span{color:var(--sky)}
.nop-soft-muted span{color:var(--muted)}
/* Rótulo das seções (classe nop-tag): texto simples, sem colchetes */

/* ---------- Entrada ao rolar (Animação de entrada "Fade In Up" do Elementor, mais curta) ---------- */
@keyframes fadeInUp{from{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:none}}
.elementor-element.animated{animation-duration:.9s;animation-timing-function:var(--ease)}
.elementor-element.animated.animated-slow{animation-duration:1.4s}
.elementor-element.animated.animated-fast{animation-duration:.6s}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .elementor-invisible{visibility:visible!important;opacity:1!important}
}

/* =========================================================
   BOTÕES — widget Botão + classe
   nop-btn (escuro) · nop-btn--light · nop-btn--ghost · nop-btn--sm
   O ícone escolhido no painel vira a bolinha que gira no hover.
   ========================================================= */
.nop-btn .elementor-button{display:inline-flex;align-items:center;padding:7px 7px 7px 22px;border-radius:999px;background:var(--ink);color:#fff;font-family:var(--e-global-typography-text-font-family),system-ui,sans-serif;font-size:15px;font-weight:500;line-height:1.2;letter-spacing:0;transition:transform .4s var(--ease),background-color .3s,color .3s}
.nop-btn .elementor-button:hover,.nop-btn .elementor-button:focus{color:#fff;background:var(--ink)}
.nop-btn .elementor-button-content-wrapper{align-items:center;gap:14px}
.nop-btn .elementor-button-icon{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--ink);transition:transform .4s var(--ease)}
.nop-btn .elementor-button-icon svg{width:16px;height:16px;fill:none;stroke:currentColor}
.nop-btn .elementor-button-icon svg [fill="currentColor"]{fill:currentColor;stroke:none}
.nop-btn .elementor-button:hover .elementor-button-icon{transform:rotate(-45deg)}
.nop-btn.nop-btn--wa .elementor-button:hover .elementor-button-icon{transform:none}
.nop-btn--light .elementor-button,.nop-btn--light .elementor-button:hover,.nop-btn--light .elementor-button:focus{background:var(--white);color:var(--ink)}
.nop-btn--light .elementor-button-icon{background:var(--ink);color:#fff}
.nop-btn--ghost .elementor-button,.nop-btn--ghost .elementor-button:focus{padding:14px 22px;background:transparent;color:var(--ice);border:1px solid rgba(243,241,237,.25)}
.nop-btn--ghost .elementor-button:hover{background:rgba(255,255,255,.08);color:var(--ice)}
/* palavras gigantes com letras que sobem (classe nop-split + Código personalizado) */
.nop-split .elementor-heading-title{display:flex;justify-content:space-between;overflow:hidden}
.nop-split .elementor-heading-title span{display:inline-block;transform:translateY(105%);transition:transform 1.1s var(--ease)}
.nop-split .elementor-heading-title.in span{transform:none}
.nop-btn--sm .elementor-button{font-size:14px;padding:5px 5px 5px 18px}
.nop-btn--sm .elementor-button-content-wrapper{gap:12px}
.nop-btn--sm .elementor-button-icon{width:32px;height:32px}
/* link com sublinhado e seta */
.nop-link .elementor-button{padding:0 0 2px;background:none;border-radius:0;border-bottom:1px solid currentColor;color:var(--ink);font-size:14px;font-weight:500}
.nop-link .elementor-button:hover,.nop-link .elementor-button:focus{background:none;color:var(--ink)}
.nop-link .elementor-button-content-wrapper{gap:8px}
.nop-link .elementor-button-icon svg{width:14px;height:14px;fill:none;stroke:currentColor}

/* =========================================================
   CABEÇALHO (Theme Builder → Cabeçalho)
   Variáveis permitem a versão escura (página Logos e cases de logo):
   essas páginas redefinem --nav-* no CSS da página.
   ========================================================= */
body{--nav-bg:var(--paper);--nav-fg:var(--ink);--nav-logo-filter:none;--nav-line:var(--line)}
.nop-header{position:fixed!important;inset:0 0 auto 0;z-index:50;background:var(--nav-bg);color:var(--nav-fg);transition:box-shadow .3s}
.admin-bar .nop-header{top:32px}
@media (max-width:782px){.admin-bar .nop-header{top:46px}}
/* linha fina embaixo do cabeçalho: sempre visível (antes só aparecia ao rolar) */
.nop-header,.nop-header.scrolled{box-shadow:0 1px 0 var(--nav-line)}
.nop-header > .e-con-inner{position:static}
.nop-header .nop-logo img{width:84px;height:auto;filter:var(--nav-logo-filter)}
/* links centralizados na página (posicionados em relação ao cabeçalho) */
.nop-header .nop-nav{position:absolute!important;left:50%;top:50%;transform:translate(-50%,-50%);width:auto!important;max-width:none}
.nop-header .nop-nav .elementor-nav-menu--main .elementor-nav-menu{gap:clamp(24px,7.6vw,125px)}
.nop-header .nop-nav .elementor-item{padding:0!important;color:var(--nav-fg)!important;font-size:15px;font-weight:500;line-height:1.5}
.nop-header .nop-nav .elementor-item::after{bottom:-6px!important;height:1.5px!important;background-color:currentColor!important;left:0;right:0}
.nop-header .nop-nav .e--pointer-underline .elementor-item::after{transform-origin:left}
.nop-header .nop-nav .elementor-nav-menu--main .elementor-item.elementor-item-active::after,.nop-header .nop-nav .elementor-nav-menu--main .elementor-item:hover::after{opacity:1;transform:scaleX(1)}
.nop-header .nop-nav .elementor-nav-menu--main .elementor-item::after{opacity:1;width:auto;transform:scaleX(0);transition:transform .35s var(--ease)!important}
.nop-menu-btn .elementor-button{width:44px;height:44px;padding:0;border-radius:50%;border:1px solid var(--nav-line);background:var(--white);color:var(--ink);display:grid;place-items:center}
.nop-menu-btn .elementor-button:hover,.nop-menu-btn .elementor-button:focus{background:var(--white);color:var(--ink)}
.nop-menu-btn .elementor-button-icon svg{width:22px;height:22px;fill:none;stroke:currentColor}
.nop-menu-btn .elementor-button-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* versão escura */
.nop-header .nop-btn .elementor-button{background:var(--nav-btn-bg,var(--ink));color:var(--nav-btn-fg,#fff)}
.nop-header .nop-btn .elementor-button-icon{background:var(--nav-btn-dot-bg,var(--paper));color:var(--nav-btn-dot-fg,var(--ink))}
.nop-header .nop-menu-btn .elementor-button{background:var(--nav-menu-bg,var(--white));color:var(--nav-fg)}

/* menu do celular (Off-canvas): tela cheia carvão descendo do topo */
.nop-mobile-menu .e-off-canvas__main{width:100%!important;height:100%!important;max-width:none;background:var(--deep)!important;color:var(--ice)}
.nop-mobile-menu .e-off-canvas__content{height:100%}
.nop-mobile-menu .e-off-canvas__overlay{background:transparent!important}
.nop-mobile-menu .nop-mobile-links .elementor-item{padding:0!important;color:var(--ice)!important;font-family:var(--e-global-typography-text-font-family),sans-serif;font-size:clamp(36px,10vw,64px);font-weight:500;letter-spacing:-.04em;line-height:1.2}
.nop-mobile-menu .nop-mobile-links .elementor-item::after{display:none}
.nop-mobile-menu .nop-mobile-cta .elementor-heading-title{font-size:clamp(36px,10vw,64px);font-weight:500;letter-spacing:-.04em;line-height:1.2}
.nop-mobile-top{position:absolute!important;top:14px;right:var(--gutter);width:auto!important}
.nop-mobile-close .elementor-button{background:transparent;border:1px solid var(--line-dark);color:var(--ice);width:44px;height:44px;border-radius:50%;padding:0;display:grid;place-items:center}
.nop-mobile-close .elementor-button:hover{background:transparent;color:var(--ice)}
.nop-mobile-close .elementor-button-icon svg{width:22px;height:22px;fill:none;stroke:currentColor}
.nop-mobile-close .elementor-button-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* =========================================================
   RODAPÉ (Theme Builder → Rodapé)
   ========================================================= */
.nop-foot{position:relative;overflow:hidden;border-top:1px solid var(--line-dark)}
.nop-mail .elementor-heading-title{display:inline-flex;border-bottom:1px solid var(--line-dark);padding:0 48px 10px 0}
.nop-msg strong,.nop-msg b{color:var(--ice);font-weight:500}
.nop-sign-ico{width:38px!important;height:38px;border-radius:50%;background:var(--deep-2);display:grid!important;place-items:center}
.nop-sign-ico .elementor-icon{font-size:16px;color:var(--sky)}
.nop-sign-ico .elementor-icon svg{width:16px;height:16px;fill:currentColor}
.nop-sign small{display:block;color:rgba(243,241,237,.5);font-size:12.5px}
.nop-bignav .elementor-nav-menu--main .elementor-nav-menu{gap:10px}
.nop-bignav .elementor-item{padding:0!important;color:var(--ice)!important;font-weight:400;letter-spacing:-.048em;font-size:clamp(26px,2vw,32px);line-height:1.6;transition:color .3s}
.nop-bignav .elementor-item:hover,.nop-bignav .elementor-item.elementor-item-active{color:var(--sky)!important}
.nop-bignav .elementor-item::after,.nop-bignav .elementor-item::before{display:none}
@media (min-width:901px){.nop-bignav{padding:9px 0 0 18px}}
@media (max-width:900px){.nop-bignav{margin-top:36px!important}}
/* o Elementor troca a altura de linha dos links no hover (20px) e o menu "pulava": altura fixa e só a cor anima */
.nop-bignav .elementor-item,.nop-bignav .elementor-item:hover,.nop-bignav .elementor-item:focus{line-height:1.6!important;padding:0!important;transition:color .3s!important}
.nop-header .nop-nav .elementor-item,.nop-header .nop-nav .elementor-item:hover,.nop-header .nop-nav .elementor-item:focus{line-height:1.5!important;padding:0!important}
.nop-mobile-menu .nop-mobile-links .elementor-item,.nop-mobile-menu .nop-mobile-links .elementor-item:hover,.nop-mobile-menu .nop-mobile-links .elementor-item:focus{line-height:1.2!important;padding:0!important}
/* respiro entre o e-mail e o texto do rodapé */
.nop-msg{margin-top:clamp(18px,2vw,24px)!important}
.nop-social .elementor-social-icon{background:transparent!important;padding:0;transition:opacity .3s}
.nop-social .elementor-social-icon:hover{opacity:.6}
.nop-social .elementor-social-icon svg{fill:var(--ice)}

/* =========================================================
   RÓTULOS, CHIPS E FILTROS
   ========================================================= */
.nop-eyebrow-dot .elementor-heading-title{display:inline-flex;align-items:center;gap:8px}
.nop-eyebrow-dot .elementor-heading-title::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
/* Filtro de taxonomia (chips) */
.nop-chips .e-filter{display:flex;flex-wrap:wrap;gap:8px}
.nop-chips .e-filter-item{padding:10px 18px!important;border-radius:99px!important;background:var(--white)!important;border:0!important;font-family:inherit;font-size:14px!important;font-weight:500;line-height:1.5;color:var(--muted)!important;cursor:pointer;transition:background .3s,color .3s}
.nop-chips .e-filter-item:hover{color:var(--ink)!important}
.nop-chips .e-filter-item[aria-pressed=true]{background:var(--ink)!important;color:#fff!important}
.nop-chips .e-filter-item small{margin-left:6px;opacity:.6;font-size:12px}
.nop-chips--paper .e-filter-item{background:var(--paper)!important}
.nop-chips--paper .e-filter-item[aria-pressed=true]{background:var(--ink)!important}

/* =========================================================
   CARD DE PROJETO (Loop → "Card de projeto")
   aba + print da página que "rola" no hover
   ========================================================= */
.nop-proj{display:flex;flex-direction:column;gap:6px;color:inherit}
.nop-proj-tab{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;padding:14px 20px!important;border-radius:14px;background:var(--white)}
.nop-proj-tab .elementor-heading-title{display:flex;gap:12px;align-items:baseline}
.nop-proj-tab .nop-proj-seg{font-size:12.5px;color:var(--muted)}
.nop-dots{display:flex;gap:4px;width:auto!important}
.nop-dots::before,.nop-dots::after,.nop-dots i{content:"";width:7px;height:7px;border-radius:50%;background:#D6D2CC;transition:background .3s}
.nop-dots i{display:block}
.nop-proj:hover .nop-dots::before,.nop-proj:hover .nop-dots::after,.nop-proj:hover .nop-dots i{background:var(--ink)}
.nop-proj-img{position:relative;aspect-ratio:4/3;border-radius:14px;overflow:hidden;isolation:isolate;background:var(--white)}
.nop-proj-img .nop-shot{position:absolute;inset:0 0 auto 0;width:100%}
.nop-proj-img .nop-shot img{width:100%;height:auto;max-width:none;transition:transform 1s var(--ease);will-change:transform}
.nop-proj:hover .nop-proj-img .nop-shot img{transform:translateY(var(--shift,0));transition:transform 7s cubic-bezier(.45,.05,.55,.95)}
.nop-proj-info{position:absolute!important;left:16px;right:16px;bottom:16px;z-index:4;width:auto!important;display:flex!important;flex-direction:row!important;justify-content:space-between;align-items:center;gap:12px;padding:14px 14px 14px 20px!important;border-radius:12px;background:var(--white);box-shadow:0 1px 0 var(--line);transform:translateY(calc(100% + 20px));transition:transform .5s var(--ease)}
.nop-proj:hover .nop-proj-info,.nop-proj:focus-visible .nop-proj-info{transform:none}
.nop-proj-info .nop-go{flex:none;width:40px!important;height:40px;border-radius:50%;background:var(--ink);color:#fff;display:grid!important;place-items:center}
.nop-proj-info .nop-go .elementor-icon{color:#fff;font-size:16px}
.nop-proj-info .nop-go svg{width:16px;height:16px;fill:none;stroke:currentColor}
@media (max-width:900px){.nop-proj-info{transform:none}}
/* variante simples (Mais projetos): fundo papel e leve subida da imagem */
.nop-proj--paper .nop-proj-tab,.nop-proj--paper .nop-proj-img{background:var(--paper)}

/* =========================================================
   CARD DE ARTIGO (Loop → "Card de artigo")
   ========================================================= */
.nop-post{display:flex;flex-direction:column;height:100%;border-radius:var(--radius);background:var(--white);overflow:hidden;color:inherit}
.nop-posts--paper .nop-post{background:var(--paper)}
.nop-post .nop-post-meta{display:flex!important;flex-direction:row!important;gap:10px;font-size:12.5px}
.nop-post-th{position:relative;margin-top:auto;aspect-ratio:4/3;overflow:hidden;background:var(--deep)}
.nop-post-th .elementor-widget-theme-post-featured-image,.nop-post-th .elementor-widget-image{position:absolute;inset:0}
.nop-post-th img{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;transition:transform 1s var(--ease)}
.nop-post:hover .nop-post-th img{transform:scale(1.05)}
.nop-post-plus{position:absolute!important;right:16px;bottom:16px;z-index:2;width:36px!important;height:36px;border-radius:50%;background:var(--ice);color:var(--ink);display:grid!important;place-items:center;transition:transform .45s var(--ease)}
.nop-post-plus .elementor-icon{color:var(--ink);font-size:14px}
.nop-post-plus svg{width:14px;height:14px;fill:none;stroke:currentColor}
.nop-post:hover .nop-post-plus{transform:rotate(90deg)}
/* capa tipográfica para artigos sem imagem destacada: carvão + estrela */
.nop-post-cover{position:absolute!important;inset:0;display:flex!important;flex-direction:column!important;justify-content:space-between;padding:20px 22px!important;color:var(--ice)}
.nop-post-cover .nop-star-bg{position:absolute;right:-12%;top:50%;width:62%!important;transform:translateY(-50%);transition:transform 1.2s var(--ease);z-index:0}
.nop-post-cover .nop-star-bg .elementor-icon{display:block;color:var(--deep-2)}
.nop-post-cover .nop-star-bg svg{width:100%;height:auto;fill:currentColor}
.nop-post:hover .nop-post-cover .nop-star-bg{transform:translateY(-50%) rotate(45deg)}
.nop-post-cover > .elementor-element{position:relative;z-index:1}
.e-loop-item.has-post-thumbnail .nop-post-cover{display:none!important}
.e-loop-item:not(.has-post-thumbnail) .nop-post-th .elementor-widget-theme-post-featured-image{display:none}

/* =========================================================
   TILE DE LOGO (Loop → "Tile de logo")
   ========================================================= */
.nop-tile{display:flex;flex-direction:column;gap:10px;color:var(--ice)}
.nop-tile-ph{position:relative;overflow:hidden;border-radius:4px;background:var(--deep-2);aspect-ratio:4/3}
.nop-tile-ph .elementor-widget-theme-post-featured-image{position:absolute;inset:0}
.nop-tile-ph img{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;transition:transform 1.4s var(--ease)}
.nop-tile:hover .nop-tile-ph img{transform:scale(1.04)}
.nop-tile-go{position:absolute!important;right:14px;top:14px;z-index:2;width:auto!important;opacity:0;transform:translateY(-6px);transition:all .45s var(--ease)}
.nop-tile-go .elementor-heading-title{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:99px;background:var(--ice);color:var(--ink);font-size:12.5px;font-weight:500}
.nop-tile-go .elementor-heading-title::after{content:"";width:12px;height:12px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M8 7h9v9'/%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='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M8 7h9v9'/%3E%3C/svg%3E") center/contain no-repeat}
.nop-tile:hover .nop-tile-go{opacity:1;transform:none}
.nop-tile-cap{display:flex!important;flex-direction:row!important;justify-content:space-between;gap:12px;font-size:13px}
.nop-tile-cap .elementor-heading-title{font-size:13px}
.nop-tile-num{counter-increment:nop-logo}
.nop-tile-num .elementor-heading-title::before{content:"0" counter(nop-logo,decimal-leading-zero) " — "}
.nop-tiles{counter-reset:nop-logo}

/* =========================================================
   LOOP GRID: remove espaços padrão
   ========================================================= */
.elementor-widget-loop-grid .e-loop-item > .e-con{height:100%}
.elementor-widget-loop-grid .e-load-more-anchor,.elementor-widget-loop-grid .elementor-pagination{margin-top:40px}
.nop-pagination .elementor-pagination{display:flex;justify-content:center;gap:8px;font-size:14px;font-weight:500}
.nop-pagination .elementor-pagination .page-numbers{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 14px;border-radius:99px;background:var(--paper);color:var(--muted)}
.nop-pagination .elementor-pagination .page-numbers.current{background:var(--ink);color:#fff}
.nop-pagination .elementor-pagination a.page-numbers:hover{color:var(--ink)}

/* =========================================================
   PERGUNTAS (widget Accordion aninhado)
   ========================================================= */
.nop-faq .e-n-accordion-item{border-bottom:1px solid var(--line)}
.nop-faq .e-n-accordion-item-title{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0!important;border:0!important;background:none!important;cursor:pointer;list-style:none}
.nop-faq .e-n-accordion-item-title::-webkit-details-marker{display:none}
.nop-faq .e-n-accordion-item-title-text{font-weight:500;font-size:clamp(18px,1.6vw,22px);letter-spacing:-.02em;line-height:1.3;color:var(--ink)}
.nop-faq .e-n-accordion-item-title-header{flex:1}
.nop-faq .e-n-accordion-item-title-icon{flex:none;min-width:34px;width:34px;height:34px;border-radius:50%;background:var(--paper);color:var(--ink);display:grid!important;place-items:center;transition:transform .4s var(--ease),background .3s,color .3s}
.nop-faq .e-n-accordion-item-title-icon span{display:grid;place-items:center}
.nop-faq .e-n-accordion-item-title-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4}
.nop-faq .e-n-accordion-item-title-icon .e-opened{display:none!important}
.nop-faq .e-n-accordion-item-title-icon .e-closed{display:grid!important}
.nop-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon{transform:rotate(45deg);background:var(--ink);color:#fff}
.nop-faq .e-n-accordion-item > .e-con{padding:0 50px 24px 0!important;border:0!important;background:none!important}
.nop-faq .e-n-accordion-item > .e-con p{color:var(--muted)}
/* versão escura (página Logos) */
.nop-faq--dark .e-n-accordion-item{border-bottom-color:var(--line-dark)}
.nop-faq--dark .e-n-accordion-item-title{padding:22px 0!important}
.nop-faq--dark .e-n-accordion-item-title-text{color:var(--ice);font-weight:400;font-size:clamp(16px,1.3vw,19px);letter-spacing:0}
.nop-faq--dark .e-n-accordion-item-title-icon{width:30px;height:30px;background:transparent;border:1px solid var(--line-dark);color:var(--ice)}
.nop-faq--dark .e-n-accordion-item[open] .e-n-accordion-item-title-icon{background:var(--ice);color:var(--ink)}
.nop-faq--dark .e-n-accordion-item > .e-con{padding:0 48px 22px 0!important}
.nop-faq--dark .e-n-accordion-item > .e-con p{color:rgba(243,241,237,.65);font-size:15px}

/* ---------- Grade "3 colunas": rótulo à esquerda, conteúdo nas duas da direita ---------- */
@media (min-width:901px){
  .nop-grid3{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;column-gap:clamp(16px,2vw,28px)!important}
  .nop-grid3 > .nop-span2{grid-column:2 / span 2}
  .nop-grid3 > .nop-col2{grid-column:2}
  .nop-grid3 > .nop-col3{grid-column:3}
  .nop-grid3--insights{grid-template-columns:286fr 902fr!important}
  .nop-grid3--insights > .nop-span2{grid-column:2}
}

/* o widget Off-canvas fica fora do fluxo do cabeçalho (o painel é fixo em tela cheia) */
.nop-header > .e-con-inner > .elementor-widget-off-canvas{position:absolute!important;width:0!important;height:0;overflow:visible}

.nop-header .nop-logo{flex:none}

@media (max-width:600px){.admin-bar .nop-header{top:0}}

.nop-chips .e-filter{justify-content:flex-start!important}
/* celular: filtros (chips) numa linha só; se não couber, a linha rola de lado */
@media (max-width:560px){
  .nop-chips .e-filter{flex-wrap:nowrap!important;gap:5px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .nop-chips .e-filter::-webkit-scrollbar{display:none}
  .nop-chips .e-filter-item{flex:none;padding:9px 10px!important;font-size:12.5px!important;white-space:nowrap}.nop-chips .e-filter-item small{margin-left:4px}
}
/* pontos do slider no celular (gerados pelo código "Interações do site" para .nop-slider-m) */
.nop-dots-nav{display:none}
@media (max-width:767px){
  .nop-dots-nav{display:flex;justify-content:center;gap:14px;margin-top:18px}
  .nop-dots-nav[hidden]{display:none}
  .nop-dots-nav button{width:7px;height:7px;padding:0;border:0;border-radius:99px;background:rgba(18,17,16,.18);cursor:pointer;transition:width .35s var(--ease),background .35s;position:relative}.nop-dots-nav button::after{content:"";position:absolute;inset:-9px -6px}
  .nop-dots-nav button.on{width:22px;background:var(--ink)}
}
/* Loop Grid sempre com largura definida: numa coluna flex o Chrome calculava a altura com a largura "encolhida"
   e os cards com proporção fixa (ex.: grade de logos no celular) invadiam a seção seguinte */
.elementor-widget-loop-grid{width:100%}

/* ---------- Celular: botões ocupam a largura toda (texto à esquerda, ícone à direita) ---------- */
@media (max-width:560px){
  .e-con:has(> .nop-btn){flex-wrap:wrap!important}
  .nop-btn:not(.nop-menu-btn),.elementor-widget-form .elementor-field-type-submit{width:100%!important;max-width:100%!important;flex:1 1 100%!important}
  .nop-btn:not(.nop-menu-btn) .elementor-button-wrapper,.nop-btn:not(.nop-menu-btn) .elementor-button,.elementor-widget-form .elementor-field-type-submit .elementor-button{width:100%}
  .nop-btn:not(.nop-menu-btn) .elementor-button{justify-content:space-between;padding-block:9px}
  .nop-btn:not(.nop-menu-btn) .elementor-button-content-wrapper{width:100%;justify-content:space-between}
  .nop-btn--ghost .elementor-button{justify-content:center;padding:18px 22px!important}
  .nop-btn--ghost .elementor-button-content-wrapper{justify-content:center}
  .nop-btn--ghost .elementor-button-text{flex-grow:0}
  /* card de projeto: nome e segmento em linha corrida; resumo abaixo do print, sem cobrir a imagem */
  .nop-proj-tab > .e-con{flex-wrap:wrap!important;column-gap:10px!important;row-gap:0!important;align-items:baseline!important;min-width:0}
  .nop-proj-tab > .e-con > .elementor-widget-heading{flex:0 0 auto;max-width:100%}
  .nop-proj-img{aspect-ratio:auto;display:flex!important;flex-direction:column}
  .nop-proj-img .nop-shot{position:relative!important;height:clamp(200px,58vw,240px);overflow:hidden}
  .nop-proj-info{position:relative!important;left:auto;right:auto;bottom:auto;margin:0!important;border-radius:0;box-shadow:none;border-top:1px solid var(--line);transform:none}
  /* no cabeçalho continua compacto */
  .nop-header .nop-btn{width:auto!important;flex:none!important}
  .nop-header .nop-btn .elementor-button,.nop-header .nop-btn .elementor-button-content-wrapper{width:auto}
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Geist';
	font-style: normal;
	font-weight: 200;
	font-display: swap;
	src: url('https://nopagencia.com.br/wp-content/uploads/2026/09/geist-variavel-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Geist';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('https://nopagencia.com.br/wp-content/uploads/2026/09/geist-variavel-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Geist';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('https://nopagencia.com.br/wp-content/uploads/2026/09/geist-variavel-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Geist';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('https://nopagencia.com.br/wp-content/uploads/2026/09/geist-variavel-latin.woff2') format('woff2');
}
@font-face {
	font-family: 'Geist';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('https://nopagencia.com.br/wp-content/uploads/2026/09/geist-variavel-latin.woff2') format('woff2');
}
/* End Custom Fonts CSS */