/* ajustes v41 */
/* 1) Como trabalhamos: todos os passos em uma linha */
.steps{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:8px!important}
.steps li{padding:12px 6px!important;font-size:clamp(11px,1.35vw,20px)!important;overflow-wrap:normal!important;word-break:normal!important}
.steps li:last-child:nth-child(odd){grid-column:auto!important;width:auto!important;justify-self:stretch!important}
@media(max-width:559px){
.steps{display:flex!important;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:8px;-webkit-overflow-scrolling:touch}
.steps li{flex:0 0 112px;scroll-snap-align:start;font-size:19px!important}
.steps li:last-child:nth-child(odd){width:auto!important}
}
/* 2) Idioma visivel ao lado do menu (tablet e celular) */
@media(max-width:1180px){
header .wrap>.dd.lang{width:auto!important;margin-left:auto;margin-right:10px;flex:0 0 auto}
header .wrap>.dd.lang .ddb{font-size:15px;border:1px solid var(--line);border-radius:6px;padding:8px 10px;color:#fff;line-height:1.1}
header .wrap>.dd.lang .sub{position:absolute!important;right:0!important;left:auto!important;top:100%!important;margin-top:12px!important;background:var(--navy)!important;border:1px solid var(--line)!important;padding:8px!important;min-width:190px!important;z-index:40;border-radius:6px!important}
}
/* 3) Pulso dos botoes mesmo com "remover animacoes" ativo */
@media(prefers-reduced-motion:reduce){a.btn[href="entre-em-contato.html"],#ct-btn{animation:neopulse 2.8s ease-out infinite!important}}
/* 4) Titulos amarelos dos cards centralizados */
.ctrl .pnl p.sub3,.ctrl .pnl .sub3{text-align:center!important;align-self:stretch;width:100%}
/* 5) Portfolio: sem botoes de filtro */
#pfil{display:none!important}
/* 6) Assessoria (cards movidos) e pagina Compra e venda */
#assessoria section.grey .btn{display:inline-block!important;width:auto!important;margin:0!important}
#assessoria section.grey .opt.main .btn{flex:0 0 auto}
.est .wrap{text-align:center}
.est .wrap .lead,.est .wrap .lead2b{margin-left:auto;margin-right:auto;text-align:center}
.est .ctas2{display:flex;justify-content:center;align-items:stretch;flex-wrap:wrap;gap:16px}
.est .ctas2 .pop{flex:0 1 460px;width:100%;max-width:460px;position:relative}
.est .ctas2 .pop>.btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:72px;height:100%;text-align:center;box-sizing:border-box}
.est .ctas2 .popm{left:0;right:0;text-align:center}
#estruturas section.grey h2.t{text-align:center}
.est .wrap h2.t{margin-left:auto;margin-right:auto;text-align:center;max-width:900px}
/* 7) Assessoria: titulo centralizado, botao abaixo e 3 cards na mesma linha */
#assessoria .opt.main.assess{display:flex!important;background:none!important;border:0!important;box-shadow:none!important;padding:0!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center;gap:22px!important;margin-bottom:34px}
#assessoria .opt.main.assess p{white-space:normal!important;text-align:center!important;max-width:880px!important;flex:0 0 auto!important;font:700 clamp(26px,3.4vw,44px)/1.1 'Barlow Condensed',sans-serif!important;letter-spacing:.01em;text-transform:uppercase;color:var(--navy)!important}
#assessoria .opt.main.assess p b{font-weight:800}
#assessoria .grid.g2{margin-top:0!important}
@media(min-width:861px){#assessoria .grid.g2{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px}}
#assessoria .grid.g2 .opt{display:flex;flex-direction:column}
#assessoria .grid.g2 .opt .btn{margin-top:auto!important;align-self:flex-start}
#assessoria .grid.g2 .opt p{margin-bottom:18px}
#assessoria .opt.main.assess .btn{align-self:center!important}
/* 8) Compra e venda: botoes lado a lado (empilha so em tela muito estreita) */
@media(min-width:600px){
.est .ctas2{flex-wrap:nowrap!important}
.est .ctas2 .pop{flex:1 1 0!important;min-width:0;max-width:460px;width:auto!important}
.est .ctas2 .pop>.btn{font-size:clamp(12px,1.5vw,17px);padding-left:14px;padding-right:14px}
}
/* 9) Faixas em branco menores acima e abaixo */
#resolver{padding-top:40px!important;padding-bottom:28px!important}
#assessoria section.grey{padding-top:28px!important;padding-bottom:44px!important}
@media(max-width:860px){#resolver{padding-top:32px!important;padding-bottom:20px!important}#assessoria section.grey{padding-top:20px!important;padding-bottom:36px!important}}
/* 10) Fundo (silhueta) em "Estruturas, negocios e decisoes" e "Preciso da NEO SYSTEM PLAN" + logo centralizado */
#resolver,#assessoria section.grey,#estruturas section.grey{background:linear-gradient(rgba(244,246,250,.84),rgba(244,246,250,.80)),url(obras/fundo-estruturas.jpg) center/cover no-repeat!important}
.lgc{position:relative;display:block;width:clamp(210px,24vw,300px);margin:0 auto 30px}
.lgc img{position:relative;z-index:1;display:block;width:100%;height:auto}
.lgc::before{content:"";position:absolute;inset:0;background:url(logo-nome.png) center/100% 100% no-repeat;filter:drop-shadow(0 2px 2px rgba(2,15,28,.95)) drop-shadow(0 0 4px rgba(2,15,28,.7));z-index:0}
@media(max-width:860px){.lgc{width:min(240px,64vw)}}
/* 11) Pagina Contato + parceiro unificada */
#contato .lgc{margin-bottom:26px}
#contato>.ph.ctthead{padding-bottom:26px!important}
#contato .ph .wrap>h2.t{text-align:center;margin:6px 0 18px;color:var(--navy)}
#contato #ct-dados .t{display:none}
#parceiro.pcta{padding:60px 0 80px}
@media(max-width:860px){#parceiro.pcta{padding:44px 0 70px}}
#parceiro .ptxt{font:500 clamp(20px,2.4vw,28px)/1.3 'Barlow Condensed','Barlow',sans-serif;text-transform:none;letter-spacing:.01em;color:#4a5b6c;text-align:center;margin:0 auto 22px;max-width:760px}
#parceiro .duo{margin-top:0}
/* 12) Azul noturno nos botoes e cards (no lugar do quase preto) */
:root{--noturno:#061a3b;--noturno2:#0b2858}
.btn.nv,.opt.main .btn{background:var(--noturno);border-color:var(--noturno);color:#fff}
.btn.nv:hover,.opt.main .btn:hover{background:var(--yellow);border-color:var(--yellow);color:var(--noturno)}
.opt,.tcard,.pcard,.prot,.fup,.toast,.pcar-b,.pnl{background:var(--noturno)}
.ctrl .pnl{background:rgba(6,26,59,.88)}
#contato .soc a,#contato .ctthead .soc a{background:var(--noturno);border-color:var(--noturno)}
.pfil button.on,.pfil button:hover{background:var(--noturno)}
.tile,.tower li,.dp .flow li,.flow li{background:#0a2652}
/* 13) Rodape: link da Politica de Privacidade + pagina da politica */
footer .fpol{margin-top:18px;font-size:14px}
footer .fpol a{color:var(--gray);text-decoration:underline;text-underline-offset:3px}
footer .fpol a:hover{color:var(--yellow)}
.pol{padding:56px 0 70px}
.pol .wrap{max-width:860px}
.pol h1.t{text-align:left;font-size:clamp(32px,5vw,50px);margin-bottom:6px}
.pol .polup{color:#5a6b7c;font-size:14px;margin-bottom:22px}
.pol h2{font:700 clamp(21px,2.4vw,26px)/1.2 'Barlow Condensed',sans-serif;text-transform:uppercase;color:var(--navy);margin:28px 0 8px;letter-spacing:.02em}
.pol p,.pol li{color:#1b2a3a;line-height:1.65;font-size:16px;text-align:left}
.pol p{margin:0 0 12px}.pol ul{margin:0 0 12px;padding-left:22px}.pol li{margin-bottom:6px}
.pol a:not(.btn){color:var(--noturno);text-decoration:underline}
@media(max-width:860px){footer{padding-bottom:96px}}

/* 14) Cards da Assessoria: tudo centralizado */
#assessoria .opt:not(.main){text-align:center!important;align-items:center!important}
#assessoria .opt:not(.main) h3,#assessoria .opt:not(.main) p{text-align:center!important;width:100%}
#assessoria .opt:not(.main) .btn,#assessoria .opt:not(.main) button{align-self:center!important;margin-left:auto;margin-right:auto}

/* 15) Fundo do Portfolio */
.pfwrap,#portfolio{background:linear-gradient(rgba(244,246,250,.84),rgba(244,246,250,.80)),url(obras/portfolio-fundo.jpg) center/cover no-repeat!important}
#portfolio,#portfolio>section,#contato{background:none!important}

/* 16) Solucoes: cards compactos e centralizados */
.ctrl .tri{align-items:start!important}
.ctrl .lp{height:auto!important}
.ctrl .lp .pnl{flex:0 0 auto!important;height:auto!important;text-align:center}
.ctrl .lp .pnl .in{flex:0 0 auto!important;align-items:center;text-align:center;padding:18px 20px 20px!important}
.ctrl .lp .pnl .in .sb{margin-bottom:12px}
.ctrl .lp .pnl .in .sub3{margin-top:0!important;padding-top:0!important}

/* 17) Compra e venda: lista suspensa sobre a pagina de baixo, botoes mais acima */
.est{overflow-x:clip!important;overflow-y:visible!important;padding-top:70px!important;padding-bottom:110px!important}
.est .ctas2{margin-top:-18px}
.est .popm{z-index:30}
@media(max-width:860px){.est{padding-top:56px!important;padding-bottom:120px!important}}

/* 18) Solucoes: sem "base de notebook"; filete delicado; imagem e card com a mesma largura */
.ctrl .lap{width:100%!important;max-width:none!important;margin:0!important}
.ctrl .lap .scr{border-radius:12px 12px 0 0;border:1px solid rgba(120,190,255,.28);border-bottom:0;padding:0;box-shadow:none;background:#06162a;overflow:hidden}
.ctrl .lap .scr img{border-radius:0;width:100%}
.ctrl .lap .base{display:none!important}
.ctrl .lp .pnl{border-radius:0 0 12px 12px!important;border-top:1px solid rgba(255,198,26,.45)!important;padding-top:0!important}
@media(max-width:1000px){.ctrl .lp{max-width:520px}}

/* 19) Home: cards Construir/Ampliar/Desmontar compactos e centralizados */
#assessoria .grid.g2 .opt{padding:16px 18px 18px!important;text-align:center!important;align-items:center!important}
#assessoria .grid.g2 .opt h3{font-size:clamp(22px,2.2vw,28px)!important;margin-bottom:6px!important;text-align:center!important;width:100%}
#assessoria .grid.g2 .opt p{flex:0 0 auto!important;margin-bottom:14px!important;text-align:center!important;width:100%;font-size:15.5px}
#assessoria .grid.g2 .opt .btn,#assessoria .grid.g2 .opt button{align-self:center!important;margin:auto auto 0!important}
#assessoria .grid.g2{margin-top:6px!important}
#assessoria .opt.main.assess{padding-bottom:8px!important}
.exp25 .e25 .ctas{display:flex;justify-content:center}

/* 20) Botao "Quero uma assessoria" sobre a planta que os dois estao olhando (so em tela larga) */
@media(min-width:861px){
 .exp25{position:relative}
 .exp25 .e25 .ctas{position:absolute!important;left:calc(73% + 50px);bottom:-7.5%;transform:translateX(-50%);margin:0!important;width:auto;z-index:6;display:block}
 .exp25 .e25 .ctas .btn{box-shadow:0 8px 22px rgba(0,0,0,.45);white-space:nowrap}
}

/* 21) Home: cards Construir/Ampliar/Desmontar so com texto (sem fundo azul) */
#assessoria .grid.g2 .opt{background:none!important;border:0!important;box-shadow:none!important;padding:6px 14px 10px!important}
#assessoria .grid.g2 .opt h3{color:#061a3b!important;display:inline-block;width:auto!important;background:linear-gradient(transparent 62%,#ffc61a 62%);padding:0 8px;text-shadow:0 1px 0 rgba(255,255,255,.6)}
#assessoria .grid.g2 .opt p{color:#0b1e3a!important;font-weight:500;text-shadow:0 1px 0 rgba(255,255,255,.65)}
#assessoria .grid.g2 .opt{align-items:center!important}

/* 22) Portfolio: menos area branca sob os textos dos cards */
#obras .pc:not(.ba) figcaption{min-height:0!important;padding:12px 18px 14px!important}

/* 23) Rodape em colunas */
footer{padding:22px 0!important}
footer .fgrid{display:flex;align-items:center;justify-content:space-between;gap:0}
footer .fcol{padding:0 28px}
footer .fc-logo{padding-left:0}
footer .fc-pol{padding-right:0}
footer .fdiv{width:1px;align-self:stretch;background:rgba(255,255,255,.16);margin:2px 0}
footer .flogo{height:54px;margin-bottom:6px}
footer .fsub{margin:0;font-size:13px}
footer .fc-cl,footer .fc-soc{display:flex;flex-direction:column;gap:9px}
footer .fc-cl a,footer .fc-soc a{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:15px;line-height:1.2}
footer .fc-cl a:hover,footer .fc-soc a:hover{color:var(--yellow)}
footer .fc-soc a{display:none}
footer .fc-soc a[data-ok]{display:flex}
footer .fc-pol a{color:var(--gray);text-decoration:underline;text-underline-offset:3px;font-size:14px;white-space:nowrap}
footer .fc-pol a:hover{color:var(--yellow)}
footer .ic{width:20px;height:20px;flex:0 0 auto;stroke:var(--yellow);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:860px){
 footer .fgrid{flex-direction:column;align-items:center;text-align:center;gap:16px}
 footer .fcol{padding:0}
 footer .fdiv{width:70%;height:1px;align-self:center;margin:0}
 footer .fc-logo{display:flex;flex-direction:column;align-items:center}
 footer .fc-cl,footer .fc-soc{align-items:flex-start}
 footer{padding-bottom:30px!important}
}

/* 24) Cabecalho e rodape em azul noturno */
header,header#topo{background:var(--noturno)!important;border-bottom-color:rgba(120,160,230,.18)!important}
footer{background:var(--noturno)!important}
@media(max-width:1180px){nav{background:var(--noturno)!important}}
footer .ic{margin:0!important}
#assessoria .grid.g2 .opt h3{background:none!important;padding:0!important;display:block!important;text-align:center}
#assessoria .grid.g2 .opt h3::after{content:"";display:block;width:56px;height:4px;background:#ffc61a;margin:8px auto 0;border-radius:2px}

/* ===== 25) Fundo claro unico + legibilidade em todo o site ===== */
:root{--fundo-claro:linear-gradient(rgba(244,246,250,.88),rgba(244,246,250,.85)),url(obras/fundo-estruturas.jpg) center/cover no-repeat}
#resolver,#assessoria section.grey,.est,.exp25{background:var(--fundo-claro)!important}
.pfwrap,#portfolio{background:linear-gradient(rgba(244,246,250,.88),rgba(244,246,250,.85)),url(obras/portfolio-fundo.jpg) center/cover no-repeat!important}
#portfolio,#portfolio>section,#contato{background:none!important}
/* Como funciona: sem foto */
#estruturas section.grey{background:#f4f6fa!important}
/* textos escuros e nitidos sobre o fundo claro */
#resolver,#assessoria section.grey,.est,.exp25,.pfwrap{color:#0b1e3a}
#resolver h2,#resolver .t,.est h2.t,.exp25 .t,#assessoria .opt.main.assess p,#estruturas section.grey h2.t{color:#061a3b!important;text-shadow:0 1px 0 rgba(255,255,255,.7)}
#resolver .lead,.est .lead,.exp25 .lead,.pfwrap .lead,#contato .ptxt{color:#1b2b40!important;text-shadow:0 1px 0 rgba(255,255,255,.7)}
#contato .ptxt{font-weight:500}
.btn{text-shadow:none}

/* Conhecemos o mercado: fundo claro e foto fundida na lateral */
.exp25{position:relative;overflow:hidden}
.exp25::after{content:"";position:absolute;top:0;right:0;bottom:0;width:54%;z-index:1;pointer-events:none;background:var(--ph) right center/cover no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 42%),linear-gradient(180deg,transparent 0,#000 24%,#000 76%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 42%),linear-gradient(180deg,transparent 0,#000 24%,#000 76%,transparent 100%);mask-composite:intersect}
.exp25 .wrap{position:relative;z-index:2}
.exp25 .tp li{color:#061a3b;text-shadow:0 1px 0 rgba(255,255,255,.7)}
.exp25 .ctas .btn.y{box-shadow:0 8px 22px rgba(2,15,28,.35)}
@media(max-width:860px){
 .exp25{padding-top:360px!important}
 .exp25::after{width:100%;height:320px;bottom:auto;background-position:70% top;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 28%,#000 50%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 28%,#000 50%,transparent 100%);-webkit-mask-composite:source-over;mask-composite:add}
}

/* Compra e venda: fundo claro, textos equilibrados */
.est::after{display:none!important}
.est .wrap h2.t{font-size:clamp(30px,3.5vw,46px)!important;line-height:1.1;margin-bottom:14px}
.est .wrap .lead2b{color:#061a3b!important;font-size:clamp(19px,2vw,25px)!important;line-height:1.25;margin:0 auto 12px;text-shadow:0 1px 0 rgba(255,255,255,.7)}
.est .wrap .lead{font-size:clamp(16px,1.5vw,19px);max-width:680px;margin:0 auto 26px}
.est .btn.ghost{background:transparent;border:2px solid #061a3b;color:#061a3b}
.est .btn.ghost:hover{background:#061a3b;color:#fff}
/* 26 botao comprar com fundo */
.ctas2 .btn.ghost,.est .btn.ghost{background:var(--noturno)!important;color:#fff!important;border:2px solid var(--noturno)!important;text-shadow:none!important;box-shadow:0 6px 16px rgba(6,26,59,.3)}
.ctas2 .btn.ghost:hover,.est .btn.ghost:hover{background:#ffc61a!important;color:#061a3b!important;border-color:#ffc61a!important}
/* 27 cards Solucoes: texto sobre a imagem */
.ctrl .lp{position:relative;overflow:hidden;border-radius:14px;border:1px solid rgba(120,190,255,.28);box-shadow:0 14px 34px rgba(0,0,0,.4);background:#06162a}
.ctrl .lap{margin:0!important}
.ctrl .lap .scr{border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important}
.ctrl .lap .scr img{aspect-ratio:4/3.1;width:100%;object-fit:cover;display:block}
.ctrl .lp .pnl{position:absolute!important;left:0;right:0;bottom:0;height:auto!important;border:0!important;border-radius:0!important;border-top:0!important;padding:0!important;-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(180deg,rgba(3,12,28,0) 0,rgba(3,12,28,.82) 38%,rgba(3,12,28,.96) 100%)!important}
.ctrl .lp .pnl .in{padding:64px 18px 18px!important}
.ctrl .lp .pnl h3{font-size:clamp(21px,2.1vw,28px)!important;white-space:normal!important;line-height:1.05;text-align:center;color:var(--yellow);text-shadow:0 2px 8px rgba(0,0,0,.7);margin:0 0 8px!important}
.ctrl .lp .pnl .sub3{color:#fff!important;font-size:clamp(15px,1.4vw,18px)!important;line-height:1.25;text-shadow:0 2px 6px rgba(0,0,0,.8);letter-spacing:.03em}
.ctrl .lp .pnl .sub3 b{color:var(--yellow)}
.ctrl .lp .pnl{z-index:3}
/* 28 separacao entre secoes da Home */
.exp25{margin-bottom:0;border-bottom:0;box-shadow:none}
.exp25{background:linear-gradient(180deg,rgba(244,246,250,0) calc(100% - 180px),rgba(244,246,250,.7) 100%),var(--fundo-claro)!important}
#assessoria{padding-top:44px;background:linear-gradient(180deg,rgba(244,246,250,.7) 0,rgba(244,246,250,0) 150px),var(--fundo-claro)!important}
#assessoria section.grey{background:none!important}
/* 29 menu compacto em telas medias + logo do rodape centralizado */
@media(min-width:1181px) and (max-width:1320px){header nav a{white-space:nowrap}header nav{gap:14px!important;font-size:14.5px!important}header nav a,header nav .ddb{font-size:14.5px!important}header .wrap{gap:12px}header .wrap>a img{max-height:54px;width:auto}}
footer .fc-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
footer .fc-logo img{margin:0 auto}
footer .fc-logo *{text-align:center}
/* 30 destaque do texto Conectamos */
.est .wrap .lead{font-size:clamp(20px,2.1vw,27px)!important;font-weight:600;line-height:1.35;max-width:820px!important;color:#061a3b!important;margin:0 auto 30px!important}
/* 31 icones oficiais das redes */
footer .fc-soc .bi,.fc-soc .bi{width:26px;height:26px;flex:0 0 26px;margin:0!important;fill:none;stroke:none;display:block}
.soc .bi{width:24px;height:24px;display:block;margin:0}
