/* IF Lançamentos · estilo do site (o CSS da biblioteca do mapa está em vendor/maplibre-gl/).
   Deixe este arquivo ao lado do index.html: os endereços img/ e fontes/ daqui valem para os dois. */
:root{color-scheme:light}body{margin:0}[hidden]{display:none!important}
@font-face{font-family:'Inter';src:url(fontes/inter.woff2) format('woff2');font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:'Montserrat';src:url(fontes/montserrat.woff2) format('woff2');font-weight:400 800;font-style:normal;font-display:swap}
:root{
  /* a central de lançamento da IF, clara: fundo branco, creme, grafite e ouro; a malha e as cantoneiras da apresentação
     aprovada. A abertura, a decolagem e a faixa de chamada ficam escuras (classe .escuro), como peças de destaque. */
  --branco:#FFFFFF; --creme:#F7F5F0; --creme-fundo:#F2EEE6; --grafite:#151514; --grafite-2:#1C1B1A;
  --ouro:#B58A3C; --ouro-claro:#E3CB93; --ouro-escuro:#8A6526;
  --ouro-grad:linear-gradient(100deg,#C99A47 0%,#ECD9A8 46%,#B58A3C 100%);
  --ouro-grad-escuro:linear-gradient(100deg,#9C7430 0%,#C99A47 52%,#8A6526 100%);
  --mola:cubic-bezier(.34,1.45,.5,1); --suave:cubic-bezier(.2,.8,.2,1);
  --f:'Inter','Helvetica Neue',Arial,sans-serif; --f-dest:'Montserrat','Inter',Arial,sans-serif;
  /* a Montserrat no lugar da fonte fina (pedido de 14/10/2026): o peso da linha de cima dos títulos, dos números das
     etapas e dos números grandes sai daqui (Regular 400 ou Bold 700); a linha de baixo dos títulos fica em ExtraBold */
  --peso-fino:400; --peso-num:400; --peso-forte:800;
  --sombra:0 24px 50px -34px rgba(21,21,21,.32);
  color-scheme:light;
}
/* os tons do texto mudam sozinhos dentro das peças escuras */
.if{--t1:#151515;--t2:rgba(21,21,21,.7);--t3:rgba(21,21,21,.52);--acento:var(--ouro-escuro);--linha:rgba(21,21,21,.1)}
.escuro{--t1:#F7F5F0;--t2:rgba(247,245,240,.74);--t3:rgba(247,245,240,.5);--acento:var(--ouro-claro);--linha:rgba(247,245,240,.09);color:var(--t1)}
html,body{background:var(--branco)}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{overflow-x:clip}
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.if [hidden]{display:none!important}
.if{color:var(--t1);font:400 16px/1.55 var(--f);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;background:var(--branco)}
.if *,.if *::before,.if *::after{box-sizing:border-box}
.if :where(h1,h2,h3,p,ul,ol,figure){margin:0}
.if :where(ul,ol){padding:0;list-style:none}
.if :where(a){color:inherit;text-decoration:none}
.if :where(button){font:inherit;color:inherit;cursor:pointer}
.if :focus-visible{outline:2px solid var(--ouro);outline-offset:3px}
.ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.fog{display:block;width:100%;height:100%;fill:currentColor;overflow:visible}
.simb{display:block;background:var(--simb-escuro) center/contain no-repeat}
.escuro .simb{background-image:var(--simb-claro)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.confira{font-style:normal;font-weight:700;font-size:10.5px;letter-spacing:.04em;color:var(--acento)}
.fonte{font-size:12px;line-height:1.6;color:var(--t3)}
.fonte a{text-decoration:underline;text-underline-offset:2px;text-decoration-color:var(--linha)}

/* peças de base */
.faixa{width:100%;max-width:1320px;margin-inline:auto;padding-inline:clamp(16px,4vw,48px)}
.secao{position:relative;padding-block:clamp(56px,6.5vw,92px)}
.malha{position:relative;isolation:isolate}
.malha::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(rgba(21,21,21,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(21,21,21,.05) 1px,transparent 1px);
  background-size:72px 72px;background-position:center top;
  -webkit-mask-image:radial-gradient(ellipse 75% 65% at 50% 45%,#000 15%,transparent 72%);mask-image:radial-gradient(ellipse 75% 65% at 50% 45%,#000 15%,transparent 72%)}
/* cartão claro (creme, sem borda); dentro das peças escuras, o vidro escuro de antes */
.vidro{background:linear-gradient(165deg,#FBFAF7,#F3F0E9);box-shadow:inset 0 1px 0 #FFFFFF,var(--sombra)}
.escuro .vidro,.vidro.escuro{background:linear-gradient(165deg,rgba(247,245,240,.09),rgba(247,245,240,.025));-webkit-backdrop-filter:blur(20px) saturate(1.2);
  backdrop-filter:blur(20px) saturate(1.2);box-shadow:inset 0 1px 0 rgba(247,245,240,.1),0 30px 70px -36px rgba(0,0,0,.95)}
.rotulo{display:inline-flex;align-items:center;gap:12px;font:600 11.5px/1.3 var(--f);letter-spacing:.24em;text-transform:uppercase;color:var(--acento)}
.titulo{font-size:clamp(38px,5.2vw,70px);line-height:.98;letter-spacing:-.04em;font-weight:400;text-wrap:balance}
.titulo .it{display:block;margin-bottom:.04em;padding-bottom:.04em;font-family:var(--f-dest);font-weight:var(--peso-fino);font-size:1em;letter-spacing:-.035em;
  background:var(--ouro-grad-escuro);-webkit-background-clip:text;background-clip:text;color:transparent}
.titulo b{display:block;font-family:var(--f-dest);font-weight:var(--peso-forte);background:linear-gradient(180deg,#151515 0%,#3A3833 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.escuro .titulo .it{background:none;color:var(--ouro-claro)}
.escuro .titulo b{background-image:linear-gradient(180deg,#FFFFFF 0%,#E7E1D3 100%)}
.secao-topo{display:grid;gap:20px;max-width:760px;margin-bottom:clamp(36px,5vw,64px)}
.secao-sub{max-width:56ch;font-size:17px;line-height:1.65;color:var(--t2)}
.botoes{display:flex;flex-wrap:wrap;gap:12px}
.botao{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:14px;height:58px;padding:0 7px 0 26px;border:0;border-radius:999px;
  font:700 15px/1 var(--f);white-space:nowrap;cursor:pointer;transition:transform .45s var(--mola),box-shadow .35s,background-color .25s}
.botao-ouro{color:#141414;background:var(--ouro-grad);box-shadow:0 18px 38px -18px rgba(181,138,60,.7),inset 0 1px 0 rgba(255,255,255,.5)}
.botao-ouro:hover{transform:translateY(-2px);box-shadow:0 26px 50px -18px rgba(181,138,60,.85),inset 0 1px 0 rgba(255,255,255,.5)}
.botao .bola{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#141414;color:var(--ouro-claro);transition:transform .45s var(--mola)}
.botao:hover .bola{transform:rotate(-14deg) scale(1.06)}
.botao-vidro{padding:0 26px;color:var(--t1);background:rgba(21,21,21,.06);box-shadow:inset 0 0 0 1px rgba(21,21,21,.07)}
.botao-vidro:hover{background:rgba(21,21,21,.1);transform:translateY(-2px)}
.botao-vidro:has(.bola){padding-right:7px}
.botao-vidro .bola{background:#141414;color:var(--ouro-claro)}
.escuro .botao-vidro{background:rgba(247,245,240,.08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 rgba(247,245,240,.12)}
.escuro .botao-vidro:hover{background:rgba(247,245,240,.14)}

/* a barra de navegação: vidro escuro sobre a abertura, vidro branco depois de rolar */
.nav{position:fixed;top:14px;left:50%;z-index:60;transform:translateX(-50%);display:flex;align-items:center;gap:20px;width:min(1280px,calc(100% - 24px));
  padding:7px 7px 7px 20px;border-radius:999px;transition:background-color .3s,box-shadow .3s,color .3s;color:var(--creme)}
.nav.vidro{background:linear-gradient(165deg,rgba(247,245,240,.1),rgba(247,245,240,.03));-webkit-backdrop-filter:blur(20px) saturate(1.2);backdrop-filter:blur(20px) saturate(1.2);
  box-shadow:inset 0 1px 0 rgba(247,245,240,.12)}
.nav-simbolo{display:grid;place-items:center;flex:none}
.nav-simbolo .simb{width:56px;height:37px;background-image:var(--simb-claro)}
.nav-links{display:flex;gap:2px;margin-left:auto}
.nav-links a{padding:11px 15px;border-radius:999px;font-size:14px;font-weight:500;color:rgba(247,245,240,.78);transition:color .25s,background-color .25s}
.nav-links a:hover,.nav-links a.ativo{color:var(--creme);background:rgba(247,245,240,.1)}
.nav .botao{height:48px;padding-left:20px;font-size:14px}
.nav .botao .bola{width:36px;height:36px}
.nav.vidro.rolou{background:rgba(255,255,255,.86);color:#151515;box-shadow:inset 0 0 0 1px rgba(21,21,21,.06),0 14px 34px -16px rgba(21,21,21,.3)}
.nav.rolou .nav-simbolo .simb{background-image:var(--simb-escuro)}
.nav.rolou .nav-links a{color:rgba(21,21,21,.68)}
.nav.rolou .nav-links a:hover,.nav.rolou .nav-links a.ativo{color:#151515;background:rgba(21,21,21,.06)}
/* o botão do menu (só no tablet e no celular): abre as páginas numa lista branca embaixo da barra */
.nav-menu{display:none;align-items:center;gap:8px;height:44px;padding:0 16px 0 12px;margin-left:auto;border:0;border-radius:999px;
  background:rgba(247,245,240,.1);color:inherit;font:600 14px/1 var(--f)}
.nav.rolou .nav-menu{background:rgba(21,21,21,.06)}
.nav-menu .i-fechar,.nav.aberto .nav-menu .i-abrir{display:none}
.nav.aberto .nav-menu .i-fechar{display:block}

/* as páginas (r5.js mostra uma de cada vez); nas páginas internas, a primeira seção desce para a barra não cobrir o título */
.pagina:not([data-pagina="inicio"]) > .secao:first-child{padding-top:clamp(128px,13vw,172px)}
@keyframes entrar{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:no-preference){.pagina.entrando{animation:entrar .55s var(--suave) both}}

/* o início: resumos que levam às páginas */
.secao-topo-acao{display:flex;align-items:flex-end;justify-content:space-between;gap:24px 48px;flex-wrap:wrap;max-width:none}
.secao-topo-texto{display:grid;gap:20px;max-width:760px}
.estatisticas-linha{grid-template-columns:repeat(3,minmax(0,1fr))}
.estatisticas-linha .estat{--n:clamp(48px,4.6vw,72px);grid-template-columns:minmax(0,1fr);align-content:start;gap:12px}
.quem-resumo{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:clamp(32px,5vw,80px);align-items:center}
.quem-resumo-texto{display:grid;gap:22px}
.quem-resumo .quem-resumo-numeros{grid-template-columns:minmax(0,1fr);gap:10px}
.quem-resumo .quem-resumo-numeros li{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:16px;padding:18px 22px;background:linear-gradient(165deg,#FBFAF7,#F3F0E9);
  box-shadow:inset 0 1px 0 #FFFFFF,var(--sombra)}

/* abertura: um cartão escuro com a foto de drone do Real Village, o marco nas ruas abertas e a telemetria */
.heroi{position:relative;isolation:isolate;overflow:hidden;min-height:max(680px,calc(100svh - 10px));margin:10px 10px 0;border-radius:32px;background:var(--grafite);
  display:flex;flex-direction:column;justify-content:flex-end}
.heroi-foto{position:absolute;inset:0;z-index:-3;background:#151413 var(--f-heroi) 50% 100%/cover}
.heroi::before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:
  radial-gradient(120% 95% at 0% 0%,rgba(10,10,10,.94) 0%,rgba(10,10,10,.82) 34%,rgba(10,10,10,.34) 60%,rgba(10,10,10,0) 78%),
  linear-gradient(0deg,rgba(10,10,10,.92) 0%,rgba(10,10,10,.5) 9%,rgba(10,10,10,0) 26%),
  linear-gradient(270deg,rgba(10,10,10,.5) 0%,rgba(10,10,10,0) 30%)}
.heroi-conteudo{position:relative;z-index:2;width:100%;max-width:1320px;margin-inline:auto;padding:150px clamp(16px,4vw,48px) 52px;
  display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:48px;align-items:end}
.heroi-texto{display:grid;gap:26px;max-width:640px;align-self:start}
.heroi .titulo{font-size:clamp(44px,5.4vw,78px)}
.heroi-sub{max-width:47ch;font-size:17.5px;line-height:1.6;color:var(--t2)}
.telemetria{display:grid;gap:10px}
.telemetria li{position:relative;display:grid;gap:6px;padding:18px 22px;border-radius:22px}
.telemetria b,.estat-num,.rede-num b,.vgv-num b,.evento-num b{font-family:var(--f-dest);font-weight:var(--peso-num);letter-spacing:-.04em;line-height:.95;font-variant-numeric:tabular-nums}
.telemetria b{font-size:40px}
.telemetria b small,.vgv-num b small{font-size:15px;font-weight:600;letter-spacing:0;color:var(--acento)}
.telemetria span{font:600 10.5px/1.35 var(--f);letter-spacing:.18em;text-transform:uppercase;color:var(--t3)}
.marco{position:absolute;z-index:1;left:0;top:0;width:0;height:0;pointer-events:none}
.marco-ponto{position:absolute;left:-9px;top:-9px;width:18px;height:18px;border-radius:50%;background:var(--ouro-claro);box-shadow:0 0 0 5px rgba(227,203,147,.25)}
.marco-ponto::after{content:"";position:absolute;inset:-10px;border-radius:50%;border:1.5px solid var(--ouro-claro);opacity:0}
.marco-linha{position:absolute;left:0;top:0;width:64px;height:1.5px;background:var(--ouro-grad);transform-origin:left center;transform:rotate(-28deg)}
.marco-rotulo{position:absolute;left:54px;top:-58px;display:grid;gap:3px;padding:10px 16px 11px;border-radius:16px;white-space:nowrap}
.escuro .marco-rotulo.vidro{background:linear-gradient(165deg,rgba(14,14,13,.84),rgba(14,14,13,.7))}
.marco-rotulo b{font-size:14px;font-weight:700}
.marco-rotulo span{font:600 10px/1.3 var(--f);letter-spacing:.16em;text-transform:uppercase;color:var(--ouro-claro)}
.marco-rotulo span i{font-style:normal}
/* o marco escolhe o lado do rótulo que não cobre o texto; sem lado livre, ele some (r5.js) */
.marco[data-lado="esq"] .marco-linha{transform:rotate(-152deg)}
.marco[data-lado="esq"] .marco-rotulo{left:auto;right:54px}
.marco[data-lado="cima"] .marco-linha{width:34px;transform:rotate(-90deg)}
.marco[data-lado="cima"] .marco-rotulo{left:0;top:auto;bottom:32px;transform:translateX(-50%)}
.marco[data-lado="baixo"] .marco-linha{transform:rotate(28deg)}
.marco[data-lado="baixo"] .marco-rotulo{top:6px}
.marco[data-lado="baixo-esq"] .marco-linha{transform:rotate(152deg)}
.marco[data-lado="baixo-esq"] .marco-rotulo{left:auto;right:54px;top:6px}

/* quem somos: o texto que apresenta a IF e a ficha da empresa (cartão creme com as cantoneiras, como um documento) */
.quem{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5.5vw,84px);align-items:center}
.quem-texto{display:grid;gap:22px}
.quem-texto .titulo{font-size:clamp(38px,4.8vw,66px)}
.quem-corpo{display:grid;gap:16px;max-width:62ch}
.quem-corpo p{font-size:16.5px;line-height:1.72;color:var(--t2)}
.quem-corpo b{font-weight:700;color:var(--t1)}
.ficha-if{display:grid;gap:22px;padding:30px 30px 26px;border-radius:30px}
.ficha-topo{display:flex;align-items:center;justify-content:space-between;gap:16px}
.ficha-topo .simb{width:62px;height:41px}
.ficha-numeros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ficha-numeros li{display:grid;gap:8px;padding:16px 16px 14px;border-radius:18px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(21,21,21,.05)}
.ficha-numeros b{font-size:clamp(32px,3.1vw,44px);font-family:var(--f-dest);font-weight:var(--peso-num);letter-spacing:-.04em;line-height:.95;font-variant-numeric:tabular-nums;
  background:var(--ouro-grad-escuro);-webkit-background-clip:text;background-clip:text;color:transparent}
.ficha-numeros span{font:600 10.5px/1.35 var(--f);letter-spacing:.16em;text-transform:uppercase;color:var(--t3)}
.ficha-dados{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 20px;margin:0}
.ficha-dados dt,.ficha-dados dd{padding:12px 0;border-top:1px solid var(--linha)}
.ficha-dados dt{font:600 10.5px/1.75 var(--f);letter-spacing:.16em;text-transform:uppercase;color:var(--t3)}
.ficha-dados dd{margin:0;font-size:14.5px;font-weight:600;line-height:1.5;color:var(--t1);overflow-wrap:anywhere}
.ficha-dados a{color:var(--ouro-escuro);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(138,101,38,.35)}
.ficha-nota{font-size:12.5px;font-weight:500;color:var(--t3);white-space:nowrap}

/* o que a IF faz */
.servicos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;counter-reset:s}
.servico{display:flex;flex-direction:column;gap:12px;padding:26px;border-radius:26px;
  background:linear-gradient(170deg,#FBFAF7,#F3F0E9);box-shadow:inset 0 1px 0 #FFFFFF,var(--sombra);
  transition:transform .45s var(--mola),box-shadow .3s}
.servico:hover{transform:translateY(-4px);box-shadow:inset 0 1px 0 #FFFFFF,0 30px 60px -34px rgba(21,21,21,.42)}
.servico-topo{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.servico-num{font-family:var(--f-dest);font-weight:var(--peso-num);font-size:34px;letter-spacing:-.03em;line-height:.9;color:var(--ouro)}
.servico-ico{display:grid;place-items:center;width:48px;height:48px;flex:none;border-radius:15px;background:rgba(181,138,60,.14);color:var(--ouro-escuro)}
.servico h3{font-size:19px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.servico p{font-size:14.5px;line-height:1.55;color:var(--t2)}
.faixa-chamada{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;flex-wrap:wrap;margin-top:18px;padding:14px 14px 14px 30px;border-radius:999px;
  background:linear-gradient(165deg,#1E1D1B,#121211);box-shadow:0 26px 50px -30px rgba(21,21,21,.55)}
.faixa-chamada p{font-size:16px;color:var(--t2)}
.faixa-chamada b{color:var(--t1);font-weight:700}

/* resultados */
.resultados{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:16px;align-items:stretch}
.resultados-esq{display:grid;gap:14px;align-content:start}
.estatisticas{display:grid;gap:14px}
.estat{--n:clamp(54px,5.6vw,86px);display:grid;grid-template-columns:calc(var(--n) * 3) minmax(0,1fr);align-items:center;gap:22px;padding:26px 30px;border-radius:26px}
.estat-num{font-size:var(--n);white-space:nowrap;background:var(--ouro-grad-escuro);-webkit-background-clip:text;background-clip:text;color:transparent}
.estat-num small{font-size:.28em;font-weight:700;letter-spacing:0}
.estat p{font-size:16px;line-height:1.5;color:var(--t2)}
.vgv{display:grid;gap:16px;padding:24px 30px 28px;border-radius:26px}
.vgv-num{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.vgv-num b{font-size:46px}
.vgv-num span{font-size:14.5px;color:var(--t2)}
.vgv-num span b{font-size:14.5px;font-weight:700;letter-spacing:0;color:var(--t1)}
.hachura{display:block;height:12px;border-radius:999px;background:rgba(21,21,21,.08);overflow:hidden}
.hachura span{display:block;width:var(--p);height:100%;border-radius:999px;background:repeating-linear-gradient(135deg,var(--ouro) 0 4px,var(--ouro-claro) 4px 8px)}
/* a decolagem (peça escura): cada lançamento é o foguete da IF voando até o percentual vendido */
.decolagem{display:flex;flex-direction:column;gap:18px;padding:30px 30px 26px;border-radius:30px;
  background:linear-gradient(165deg,#1E1D1B 0%,#121211 100%);box-shadow:0 40px 80px -44px rgba(21,21,21,.6)}
.dec-topo{display:grid;gap:6px}
.dec-topo h3{font-size:22px;font-weight:800;letter-spacing:-.025em}
.dec-topo p{font-size:13px;color:var(--t3)}
.dec-pista{display:grid;gap:2px;margin-block:auto}
.dec{display:grid;grid-template-columns:96px minmax(0,1fr) 48px;align-items:center;gap:12px;height:46px}
.dec-nome{font-size:13px;font-weight:600;color:var(--t2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .2s}
.dec-nome:hover{color:var(--t1)}
.dec-trilho{position:relative;height:100%}
.dec-trilho::before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;border-radius:2px;background:rgba(247,245,240,.09)}
.dec-rastro{position:absolute;left:0;top:50%;height:4px;margin-top:-2px;width:max(0px,calc(var(--p) * 1% - 40px));border-radius:999px;
  background:linear-gradient(90deg,rgba(181,138,60,0),var(--ouro) 60%,var(--ouro-claro));box-shadow:0 0 14px rgba(181,138,60,.35)}
.dec-voo{position:absolute;z-index:1;top:50%;left:calc(var(--p) * 1%);width:46px;height:21px;margin-top:-10.5px;transform:translateX(-100%)}
.dec-voo .fog{position:absolute;left:50%;top:50%;width:21px;height:46px;color:var(--creme);transform:translate(-50%,-50%) rotate(90deg)}
.dec.chegou .dec-voo .fog{color:var(--ouro-claro)}
.dec-pct{text-align:right;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}
.dec-breve .dec-voo{left:4px;width:18px;height:40px;margin-top:-22px;transform:none;--chama:transparent}
.dec-breve .dec-voo .fog{width:18px;height:40px;color:rgba(247,245,240,.45);transform:translate(-50%,-50%)}
.dec-breve .dec-voo::after{content:"";position:absolute;left:-7px;right:-7px;bottom:-3px;height:3px;border-radius:2px;background:var(--ouro)}
.dec-espera{position:absolute;left:34px;top:50%;transform:translateY(-50%);font-size:11px;font-weight:600;color:var(--t3);white-space:nowrap}
.dec-breve .dec-trilho::before{left:126px}
.dec-breve .dec-pct{font-size:11px;color:var(--t3);white-space:nowrap}
.decolagem.prep .dec:not(.dec-breve) .dec-voo{left:46px;transition:none}
.decolagem.prep .dec-rastro{width:0;transition:none}
.decolagem.voando .dec-voo{transition:left 1.8s cubic-bezier(.55,0,.15,1) calc(var(--i) * 90ms + .2s)}
.decolagem.voando .dec-rastro{transition:width 1.8s cubic-bezier(.55,0,.15,1) calc(var(--i) * 90ms + .2s)}

/* a rede */
.rede{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);grid-template-areas:"evento um dois" "evento plantao plantao";gap:14px}
.evento{grid-area:evento;display:flex;flex-direction:column;gap:16px;padding:30px;border-radius:30px;color:#141414;
  background:linear-gradient(150deg,#D6B26E 0%,#B58A3C 55%,#9C7430 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 40px 80px -44px rgba(181,138,60,.7)}
.rotulo-escuro{color:rgba(20,20,20,.7)}
.evento-pontos{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;max-width:300px;margin-top:6px}
.evento-pontos i{aspect-ratio:1;border-radius:50%;box-shadow:inset 0 0 0 1.5px rgba(20,20,20,.35)}
.evento-pontos i.c{background:#141414;box-shadow:none}
.evento-num{display:flex;align-items:baseline;gap:12px;margin-top:auto}
.evento-num b{font-size:clamp(64px,7vw,96px)}
.evento-num small{font-size:15px;font-weight:700}
.evento-txt{max-width:34ch;font-size:15px;line-height:1.5;color:rgba(20,20,20,.78)}
.rede-num{display:flex;flex-direction:column;gap:12px;padding:28px;border-radius:28px}
.rede-num:nth-of-type(2){grid-area:um}
.rede-num:nth-of-type(3){grid-area:dois}
.rede-ico{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:rgba(181,138,60,.14);color:var(--acento)}
.rede-num b{margin-top:auto;font-size:clamp(56px,5.6vw,80px)}
.rede-num p{font-size:15px;color:var(--t2)}
.rede-plantao{grid-area:plantao;display:flex;align-items:center;gap:20px;padding:24px 28px;border-radius:28px}
.rede-plantao b{display:block;font-size:19px;font-weight:700;letter-spacing:-.02em}
.rede-plantao p{font-size:15px;color:var(--t2)}

/* reservas em tempo real */
.reservas{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:64px;align-items:center}
.reservas-texto{display:grid;gap:20px}
.reservas-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px}
.reservas-lista li{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:var(--creme);font-size:14.5px;font-weight:600}
.reservas-lista .ico{color:var(--acento)}
.celular-palco{position:relative;display:grid;justify-items:center;gap:18px;padding-block:20px}
.celular{position:relative;width:min(320px,100%);aspect-ratio:9/18.5;padding:11px;border-radius:46px;
  background:linear-gradient(160deg,#34322E,#141413 60%);box-shadow:inset 0 0 0 1.5px rgba(247,245,240,.14),inset 0 0 0 7px #0C0C0B,0 60px 100px -46px rgba(21,21,21,.55),0 0 0 1px rgba(0,0,0,.6)}
.celular::before{content:"";position:absolute;left:50%;top:20px;z-index:2;width:92px;height:26px;margin-left:-46px;border-radius:999px;background:#050505}
.celular-tela{display:flex;flex-direction:column;gap:10px;height:100%;padding:58px 12px 14px;border-radius:36px;background:#141414;color:var(--creme);overflow:hidden}
.celular-topo{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-inline:6px}
.celular-topo span{font:600 10px/1 var(--f);letter-spacing:.16em;text-transform:uppercase;color:rgba(247,245,240,.5)}
.celular-topo b{font-size:15px;font-weight:800}
.celular-tela img{flex:1;min-height:0;width:100%;object-fit:cover;object-position:42% 50%;border-radius:14px;background:#161616}
.celular-legenda{display:flex;flex-wrap:wrap;gap:6px 12px;padding-inline:6px;font-size:11px;font-weight:600;color:rgba(247,245,240,.74)}
.celular-legenda li{display:inline-flex;align-items:center;gap:6px}
.celular-legenda i{width:10px;height:10px;border-radius:3px}
.celular-legenda i[data-s="v"]{background:var(--ouro)}
.celular-legenda i[data-s="d"]{background:var(--creme)}
.celular-legenda i[data-s="n"]{background:#3A3833}
/* a demonstração do sistema (pedido de 14/10/2026): os dois prints do sistema dentro do celular. O dedo toca em
   "Satélite", no canto de baixo do print, e a tela troca para o print do satélite; depois toca em "Mapa" e volta. Em laço,
   enquanto a demonstração está à vista (com movimento reduzido, só o toque de quem visita) */
.cel-print{display:block;padding:0;background:#F3F4F6}
.cel-prints{position:relative;width:100%;aspect-ratio:1320/2868}
.cel-prints img{position:absolute;inset:0;display:block;width:100%;height:100%}
.cel-print-sat{opacity:0;transition:opacity .55s var(--suave)}
.demo-sistema[data-vista="satelite"] .cel-print-sat{opacity:1}
/* a miniatura do print (Satélite ou Mapa) fica nesse ponto: o toque de quem visita e o dedo da demonstração */
.dm-toque{position:absolute;z-index:2;left:3%;top:76.8%;width:19.4%;height:8.9%;padding:0;border:0;border-radius:12px;background:none;cursor:pointer}
.dm-toque:focus-visible{outline:2px solid var(--ouro);outline-offset:2px}
.dm-dedo{position:absolute;z-index:3;left:12.65%;top:81.24%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.6) 0 38%,rgba(255,255,255,.2) 39% 100%);
  box-shadow:0 0 0 2px rgba(255,255,255,.9),0 8px 18px rgba(0,0,0,.4);opacity:0;pointer-events:none}
.demo-sistema.tocando .dm-dedo{animation:toque .9s var(--suave) both}
@keyframes toque{0%{opacity:0;transform:translate(34px,-40px) scale(1.15)}38%{opacity:1;transform:translate(0,0) scale(1)}
  55%{opacity:1;transform:scale(.78)}72%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.3)}}
.flutua{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:10px;padding:12px 18px 12px 14px;border-radius:999px;font-size:13.5px;font-weight:700;white-space:nowrap}
.flutua.vidro{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#151515;box-shadow:0 18px 36px -16px rgba(21,21,21,.4)}
.flutua .ico{width:18px;height:18px;padding:3px;border-radius:50%;box-sizing:content-box;background:var(--ouro);color:#141414}
.flutua.f1{left:max(-12px,calc(50% - 250px));top:30%}
.flutua.f2{right:max(-12px,calc(50% - 250px));top:58%}

/* os lançamentos: a vitrine e o mapa */
.vitrine{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.vit{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:12px;
  aspect-ratio:4/5;padding:16px;border:0;border-radius:28px;background:var(--grafite);color:var(--creme);text-align:left;
  box-shadow:0 30px 60px -38px rgba(21,21,21,.6);transition:transform .5s var(--mola)}
.vit:hover{transform:translateY(-5px)}
.vit-foto{position:absolute;inset:0;z-index:-2;background:var(--f) 50% 50%/cover;transition:transform .9s var(--suave)}
.vit::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(10,10,10,.55) 0%,rgba(10,10,10,0) 24%,rgba(10,10,10,0) 40%,rgba(10,10,10,.62) 66%,rgba(10,10,10,.94) 100%)}
.vit:hover .vit-foto{transform:scale(1.07)}
.vit-topo{display:flex;align-items:center;justify-content:space-between;gap:8px}
.vit-num{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(10,10,10,.45);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  font-style:normal;font-weight:700;font-size:13px;color:var(--creme)}
.vit-num .ico{width:17px;height:17px;color:var(--ouro-claro)}
.selo{display:inline-flex;align-items:center;height:27px;padding:0 12px;border-radius:999px;font-style:normal;font-size:11px;font-weight:700;white-space:nowrap;
  color:var(--creme);background:rgba(10,10,10,.42);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px rgba(247,245,240,.2)}
.selo[data-g="vendido"]{background:var(--ouro-grad);color:#141414;box-shadow:none}
.selo[data-g="breve"]{background-image:repeating-linear-gradient(135deg,rgba(247,245,240,.14) 0 3px,transparent 3px 7px)}
.vit-meio{flex:1;display:grid;place-items:center;align-content:center;gap:6px;min-height:0}
.vit-base{display:grid;gap:9px}
.vit-linha1{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;min-height:44px}
.selo-logo{--k:1;display:block;flex:none;box-sizing:content-box;width:calc(var(--lw) * var(--k) * 1px);height:calc(50px * var(--k));
  padding:calc(8px * var(--k)) calc(12px * var(--k));border-radius:calc(16px * var(--k));background:var(--l) center/contain no-repeat content-box,var(--creme)}
.vit-logo{--k:.95}
.vit-logo.grande{--k:1.3}
.vit-nome{font-size:21px;font-weight:800;letter-spacing:-.03em;line-height:1.05;text-wrap:balance}
.vit-ir{display:grid;place-items:center;width:40px;height:40px;margin-left:auto;border-radius:50%;flex:none;background:rgba(247,245,240,.14);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--creme);transition:background-color .25s,color .25s,transform .35s var(--mola)}
.vit-ir .ico{width:18px;height:18px}
.vit:hover .vit-ir{background:var(--ouro-claro);color:#141414;transform:rotate(45deg)}
.vit-onde{font-size:12.5px;line-height:1.35;color:rgba(247,245,240,.78)}
.vit-pct{display:flex;align-items:center;gap:10px;font-size:12.5px;color:rgba(247,245,240,.82);white-space:nowrap}
.vit-pct b{font-size:14px;color:var(--creme)}
.vit-barra{position:relative;flex:1;height:4px;border-radius:9px;background:rgba(247,245,240,.2)}
.vit-barra i{position:absolute;inset:0 auto 0 0;width:var(--p);border-radius:9px;background:var(--ouro-grad)}
.vit.sem-foto{background:var(--grafite-2)}
.vit.sem-foto .vit-foto{background:
  repeating-linear-gradient(78deg,rgba(247,245,240,.055) 0 1px,transparent 1px 36px),
  repeating-linear-gradient(168deg,rgba(247,245,240,.055) 0 1px,transparent 1px 24px),
  linear-gradient(180deg,#22211F 0%,#151514 100%)}
.vit.sem-foto::before{background:linear-gradient(180deg,rgba(10,10,10,0) 50%,rgba(10,10,10,.55) 100%)}
.vit-dias{display:flex;align-items:baseline;gap:6px;color:var(--ouro-claro);line-height:.8}
.vit-dias b{font-family:var(--f-dest);font-weight:var(--peso-num);font-size:120px;letter-spacing:-.04em}
.vit-dias span{font-family:var(--f-dest);font-size:36px}
.vit-dias-txt{font-size:12.5px;font-weight:600;color:rgba(247,245,240,.72);text-align:center}
.vit-breve .vit-foto{background:repeating-linear-gradient(90deg,rgba(247,245,240,.045) 0 1px,transparent 1px 28px),linear-gradient(180deg,#141413 0%,#211F1C 100%)}
.vit-plataforma{position:relative;display:grid;justify-items:center;padding-top:8px}
.vit-plataforma .fog{width:44px;height:100px;color:var(--creme);--chama:transparent;transition:transform .7s cubic-bezier(.3,0,.2,1)}
.vit-base-pad{display:block;width:96px;height:6px;margin-top:4px;border-radius:3px;background:linear-gradient(90deg,transparent,var(--ouro) 20% 80%,transparent)}
/* "initial" no lugar de url(#fog-grad): o fill do foguete cai no url(#fog-grad) de reserva, escrito no próprio
   HTML, e o degradê não depende de o navegador aceitar uma referência #id vinda de um arquivo CSS separado */
.vit-breve:hover .vit-plataforma .fog{transform:translateY(-12px);--chama:initial}

/* o palco do mapa: mapa claro da marca (ou satélite) e o painel de vidro branco */
.palco{position:relative;height:min(720px,calc(100svh - 120px));min-height:600px;margin-top:16px;border-radius:32px;overflow:hidden;background:var(--creme-fundo);
  box-shadow:inset 0 0 0 1px rgba(21,21,21,.06),0 50px 100px -60px rgba(21,21,21,.5)}
.mapa-cartao{position:absolute;inset:0;isolation:isolate}
.mapa-vivo,.mapa-desenho{position:absolute;inset:0}
.mapa-vivo{font-family:var(--f)}
.mapa-vivo .maplibregl-canvas{outline:none}
.mapa-cartao.desenho .mapa-vivo{display:none}
.mapa-espera{position:absolute;inset:0;z-index:4;display:none;place-items:center;align-content:center;gap:14px;font-size:13px;font-weight:600;color:var(--t3);background:var(--creme-fundo)}
.mapa-espera span{width:12px;height:12px;border-radius:50%;background:var(--ouro)}
.mapa-cartao.carregando .mapa-espera{display:grid}
.mapa-aviso{position:absolute;z-index:5;left:calc(50% + 190px);top:18px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;max-width:calc(100% - 420px);
  padding:7px 7px 7px 14px;border-radius:16px;background:#151515;color:var(--creme);box-shadow:0 14px 30px -10px rgba(21,21,21,.45);white-space:nowrap}
.mapa-aviso b{font-size:14px;font-weight:800;letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis}
.mapa-zoom{position:absolute;right:18px;bottom:18px;z-index:5;display:grid;gap:8px}
.mapa-zoom button{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#151515;
  box-shadow:0 8px 20px -8px rgba(21,21,21,.35);transition:background-color .25s,transform .3s var(--mola)}
.mapa-zoom button:hover{background:#FFFFFF;transform:scale(1.06)}
.mapa-zoom button[data-zoom="0"] .ico{width:17px;height:17px}
.mapa-cartao.carregando .mapa-zoom{visibility:hidden}
/* a escolha entre o mapa da marca e o satélite (pedido de 14/10/2026, como no sistema de reservas): uma miniatura no canto
   de baixo do mapa, que mostra a outra vista; no satélite, ela mostra o mapa. Só no mapa vivo (o desenho de reserva não
   tem satélite) */
.mapa-miniatura{position:absolute;z-index:5;left:392px;bottom:18px;display:block;width:76px;height:76px;padding:0;border:0;border-radius:18px;overflow:hidden;
  background:#B9C3A6;box-shadow:0 0 0 3px #FFFFFF,0 14px 30px -10px rgba(21,21,21,.55);transition:transform .35s var(--mola),box-shadow .25s}
.mapa-miniatura:hover{transform:scale(1.05)}
.mm-foto{position:absolute;inset:0;background:var(--mm-mapa) center/cover no-repeat}
.mapa-cartao[data-vista="mapa"] .mm-foto{background:var(--mm-sat,#B9C3A6) center/cover no-repeat}
.mm-nome{position:absolute;left:0;right:0;bottom:0;padding:16px 4px 6px;font:700 11.5px/1 var(--f);color:#FFFFFF;text-align:center;
  background:linear-gradient(0deg,rgba(10,10,10,.72),rgba(10,10,10,0))}
.mapa-cartao[data-vista="satelite"] .mm-nome{color:#151515;background:linear-gradient(0deg,rgba(255,255,255,.92),rgba(255,255,255,0))}
.mapa-cartao.desenho .mapa-miniatura,.mapa-cartao.desenho .mapa-legenda{display:none}
.mapa-cartao.carregando .mapa-miniatura{visibility:hidden}
/* a legenda da situação dos lotes: aparece quando há lotes com situação à vista */
.mapa-legenda{position:absolute;z-index:5;top:18px;right:18px;display:grid;gap:6px;padding:10px 14px 9px;border-radius:16px;
  background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 28px -12px rgba(21,21,21,.35)}
.mapa-legenda ul{display:flex;flex-wrap:wrap;gap:5px 13px;font-size:12px;font-weight:600;color:#151515}
.mapa-legenda li{display:inline-flex;align-items:center;gap:6px}
.mapa-legenda i{width:11px;height:11px;border-radius:3px}
.mapa-legenda i[data-s="v"]{background:var(--ouro)}
.mapa-legenda i[data-s="r"]{background:var(--ouro-claro)}
.mapa-legenda i[data-s="d"]{background:#FFFFFF;box-shadow:inset 0 0 0 1.5px var(--ouro-escuro)}
.mapa-legenda i[data-s="n"]{background:#B3AC9F}
.mapa-cartao[data-vista="satelite"] .mapa-legenda i[data-s="d"]{background:var(--creme)}
.mapa-cartao[data-vista="satelite"] .mapa-legenda i[data-s="n"]{background:#3A3833}
.mapa-legenda small{font-size:10.5px;font-weight:500;color:rgba(21,21,21,.6)}
.mp-lote{fill:rgba(181,138,60,.5);stroke:var(--ouro);stroke-width:1;vector-effect:non-scaling-stroke}
.painel{position:absolute;z-index:5;left:16px;top:16px;bottom:16px;width:360px;display:flex;flex-direction:column;gap:12px;padding:12px;border-radius:24px;overflow:auto;scrollbar-width:thin}
.painel.vidro{background:linear-gradient(165deg,rgba(255,255,255,.93),rgba(255,255,255,.84));-webkit-backdrop-filter:blur(20px) saturate(1.15);backdrop-filter:blur(20px) saturate(1.15);
  box-shadow:0 26px 60px -30px rgba(21,21,21,.45)}
.detalhe{display:flex;flex-direction:column;gap:11px}
.d-capa{position:relative;overflow:hidden;height:140px;flex:none;border-radius:16px;background:#2A2926 var(--f) 50% 55%/cover;color:var(--creme)}
.d-capa::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,10,.55) 0%,rgba(10,10,10,0) 55%)}
.d-capa.sem-foto{height:110px;background:repeating-linear-gradient(78deg,rgba(247,245,240,.06) 0 1px,transparent 1px 36px),repeating-linear-gradient(168deg,rgba(247,245,240,.06) 0 1px,transparent 1px 24px),#232220}
.d-capa .selo-logo{position:absolute;z-index:1;left:10px;bottom:10px;--k:.66}
.d-capa-num{position:absolute;z-index:1;right:10px;top:10px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;
  background:rgba(10,10,10,.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:12.5px;font-weight:700}
.d-capa-num .ico{width:16px;height:16px;color:var(--ouro-claro)}
.d-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-inline:4px}
.d-topo small{display:block;margin-bottom:2px;font:600 10px/1.3 var(--f);letter-spacing:.16em;text-transform:uppercase;color:var(--acento)}
.d-topo h3{font-size:24px;font-weight:800;letter-spacing:-.03em;line-height:1.08}
.d-topo .selo{color:#151515;background:rgba(21,21,21,.05);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:inset 0 0 0 1px rgba(21,21,21,.14)}
.d-topo .selo[data-g="vendido"]{background:var(--ouro-grad);box-shadow:none}
.d-topo .selo[data-g="breve"]{background-image:repeating-linear-gradient(135deg,rgba(21,21,21,.08) 0 3px,transparent 3px 7px)}
.d-dados{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 16px;padding:14px 16px;border-radius:16px;background:var(--creme)}
.d-dados small{font-size:11.5px;color:var(--t3);align-self:center}
.d-dados b{font-size:13.5px;font-weight:600;line-height:1.35}
.d-pct{display:flex;align-items:center;gap:12px;padding-inline:4px}
.d-pct b{font-size:30px;font-family:var(--f-dest);font-weight:var(--peso-num);letter-spacing:-.04em;line-height:1}
.d-pct .vit-barra{height:6px;background:rgba(21,21,21,.1)}
.detalhe .botao{height:50px;font-size:14px;padding-left:20px;align-self:stretch;justify-content:space-between}
.detalhe .botao .bola{width:38px;height:38px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:12px;border-top:1px solid var(--linha)}
.chip{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 12px 0 5px;border:0;border-radius:999px;background:rgba(21,21,21,.05);
  color:rgba(21,21,21,.72);font-size:12.5px;font-weight:600;transition:background-color .25s,color .25s}
.chip i{display:grid;place-items:center;min-width:26px;height:26px;padding:0 4px;border-radius:999px;background:rgba(21,21,21,.06);font-style:normal;font-size:11px;font-weight:700;color:var(--ouro-escuro)}
.chip i .ico{width:13px;height:13px}
.chip:hover{color:#151515;background:rgba(21,21,21,.09)}
.chip[aria-pressed="true"]{background:#151515;color:var(--creme)}
.chip[aria-pressed="true"] i{background:var(--ouro);color:#141414}
.mk{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer}
.mk:focus-visible{outline:2px solid #151515;outline-offset:2px}
.mk-bola{position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--ouro);color:#141414;
  font:800 11px/1 var(--f);box-shadow:0 0 0 5px rgba(181,138,60,.22),0 6px 14px rgba(21,21,21,.3);transition:background-color .25s,transform .25s}
.mk:hover .mk-bola{background:var(--ouro-claro)}
.mk-onda{position:absolute;inset:3px;border-radius:50%;border:1.5px solid var(--ouro);opacity:0;pointer-events:none}
.mk-nome{position:absolute;top:50%;left:calc(100% + 4px);transform:translateY(-50%);font:700 12.5px/1 var(--f);color:#151515;white-space:nowrap;pointer-events:none;
  text-shadow:0 0 2px #FFFFFF,0 0 5px #FFFFFF,0 0 9px #FFFFFF;transition:opacity .2s}
.mk-nome.esquerda{left:auto;right:calc(100% + 4px)}
/* a ficha do pino escolhido: o r5.js escolhe o lado livre (data-ficha) e quanto ela corre para caber (--desloca), e a seta
   continua apontando para o pino (--seta) */
.mk-ficha{--desloca:0px;--seta:0px;position:absolute;left:50%;bottom:calc(100% + 16px);display:none;align-items:center;gap:10px;padding:7px 8px 7px 7px;border-radius:16px;
  background:#FFFFFF;color:#141414;white-space:nowrap;box-shadow:0 14px 30px -8px rgba(21,21,21,.35);pointer-events:none;transform:translateX(calc(-50% + var(--desloca)))}
.mk-ficha::after{content:"";position:absolute;left:calc(50% + var(--seta) - 7px);bottom:-6px;width:14px;height:14px;border-radius:3px;background:#FFFFFF;transform:rotate(45deg)}
.mk[data-ficha="baixo"] .mk-ficha{bottom:auto;top:calc(100% + 16px)}
.mk[data-ficha="baixo"] .mk-ficha::after{bottom:auto;top:-6px}
.mk[data-ficha="dir"] .mk-ficha,.mk[data-ficha="esq"] .mk-ficha{bottom:auto;top:50%;transform:translateY(calc(-50% + var(--desloca)))}
.mk[data-ficha="dir"] .mk-ficha{left:calc(100% + 16px)}
.mk[data-ficha="esq"] .mk-ficha{left:auto;right:calc(100% + 16px)}
.mk[data-ficha="dir"] .mk-ficha::after,.mk[data-ficha="esq"] .mk-ficha::after{bottom:auto;top:calc(50% + var(--seta) - 7px)}
.mk[data-ficha="dir"] .mk-ficha::after{left:-6px}
.mk[data-ficha="esq"] .mk-ficha::after{left:auto;right:-6px}
.mk-ficha b,.mapa-ficha b{padding-left:6px;font-size:14px;font-weight:800;letter-spacing:-.015em}
.mk-ficha .selo-logo,.mapa-ficha .selo-logo{--k:.62;padding-block:2px;background-color:transparent}
.mk.ativo{z-index:5}
.mk.ativo .mk-bola{background:#151515;color:var(--creme);transform:scale(1.12)}
.mk.ativo .mk-nome{opacity:0}
.mk.ativo .mk-ficha{display:flex}
/* sem lado livre para a ficha (no celular, com todos os pinos à vista), o pino escolhido mostra o nome; o painel tem o resto */
.mk.ativo[data-ficha="nao"] .mk-ficha{display:none}
.mk.ativo[data-ficha="nao"] .mk-nome{opacity:1}
.selo-claro{display:inline-flex;align-items:center;height:28px;padding:0 11px;border-radius:999px;background:#ECE7DC;font-style:normal;font-size:11.5px;font-weight:700;color:#141414}
.selo-claro[data-g="vendido"]{background:var(--ouro)}
/* as outras fases de um loteamento em fases (a fase em vendas tem o pino): um rótulo em cada uma, só de perto */
.mk-fase{display:none;align-items:center;gap:9px;padding:4px 4px 4px 13px;border-radius:999px;background:#FFFFFF;color:#141414;white-space:nowrap;
  font:800 13.5px/1 var(--f);letter-spacing:-.015em;pointer-events:none;box-shadow:0 12px 26px -10px rgba(21,21,21,.42)}
.mk-fase .selo-claro{height:25px;padding:0 10px;font-size:11px;letter-spacing:0}
.mk-fase.visivel{display:flex}
.mapa-vivo .maplibregl-ctrl-bottom-left{left:auto;right:76px;z-index:2;max-width:calc(100% - 570px)}
.mapa-vivo .maplibregl-ctrl-attrib{margin:0 0 18px 0!important;background:rgba(255,255,255,.88);color:rgba(21,21,21,.66);font:500 10.5px/1.5 var(--f);border-radius:12px}
.mapa-vivo .maplibregl-ctrl-attrib a{color:rgba(21,21,21,.82)}
.mapa-vivo .maplibregl-ctrl-attrib-button{background-color:rgba(255,255,255,.95);border-radius:12px}
.mapa-vivo .maplibregl-cooperative-gesture-screen{font:600 15px/1.4 var(--f);background:rgba(21,21,21,.55);padding:20px;text-align:center}
/* o desenho de reserva (sem internet ou sem WebGL), com a malha do IBGE: claro como o mapa vivo */
.mapa-foz{position:absolute;inset:0;width:100%;height:100%;display:block}
.mp-fora{fill:#E9E5DC}
.mp-foz{fill:#FBFAF6}
.mp-grade path{stroke:rgba(21,21,21,.06);stroke-width:1}
.mp-coord{font:500 9.5px var(--f);fill:rgba(21,21,21,.4);letter-spacing:.04em}
.mp-rio{fill:none;stroke:#C9DCEB;stroke-width:15;stroke-linejoin:round;stroke-linecap:round}
.mp-fronteira{fill:none;stroke:var(--ouro);stroke-width:1.2;stroke-dasharray:6 5;opacity:.8}
.mp-foz-nome{font:500 40px var(--f-dest);fill:rgba(21,21,21,.12);letter-spacing:-.01em}
.mp-pais{font:700 12px var(--f);letter-spacing:.42em;fill:rgba(138,101,38,.75)}
.mp-rio-nome{font:italic 500 12px var(--f);fill:#5D7F9C;letter-spacing:.04em}
.mp-marco path{fill:var(--ouro)}
.mp-marco text{font:600 10px var(--f);fill:rgba(21,21,21,.62)}
.mp-norte path{fill:rgba(21,21,21,.6)}
.mp-norte text{font:700 10px var(--f);fill:rgba(21,21,21,.6)}
.pino{cursor:pointer;outline:none}
.pino-onda{fill:none;stroke:var(--ouro);stroke-width:1.5;opacity:0}
.pino-anel{fill:rgba(181,138,60,.22);transition:fill .3s}
.pino-bola{fill:var(--ouro);transition:fill .3s}
.pino-num{font:800 11px var(--f);fill:#141414;pointer-events:none;transition:fill .3s}
.pino-nome{font:700 12.5px var(--f);fill:#151515;paint-order:stroke;stroke:#FFFFFF;stroke-width:4px;stroke-linejoin:round;pointer-events:none;transition:opacity .25s}
.pino:hover .pino-bola,.pino:focus-visible .pino-bola{fill:var(--ouro-claro)}
.pino.ativo .pino-bola{fill:#151515}
.pino.ativo .pino-num{fill:var(--creme)}
.pino.ativo .pino-anel{fill:rgba(21,21,21,.12)}
.pino.ativo .pino-nome{opacity:0}
.pino.ativo.sem-ficha .pino-nome{opacity:1}
/* a ficha do desenho: o r5.js põe o canto dela no lado livre do pino; a seta aponta para o pino */
.mapa-ficha{--seta:0px;position:absolute;left:0;top:0;z-index:3;display:flex;align-items:center;gap:10px;padding:7px 8px 7px 7px;border-radius:16px;
  background:#FFFFFF;color:#141414;white-space:nowrap;box-shadow:0 12px 30px -8px rgba(21,21,21,.35);pointer-events:none}
.mapa-ficha::after{content:"";position:absolute;left:calc(50% + var(--seta) - 7px);bottom:-6px;width:14px;height:14px;border-radius:3px;background:#FFFFFF;transform:rotate(45deg)}
.mapa-ficha[data-ficha="baixo"]::after{bottom:auto;top:-6px}
.mapa-ficha[data-ficha="dir"]::after,.mapa-ficha[data-ficha="esq"]::after{bottom:auto;top:calc(50% + var(--seta) - 7px)}
.mapa-ficha[data-ficha="dir"]::after{left:-6px}
.mapa-ficha[data-ficha="esq"]::after{left:auto;right:-6px}
#lancamentos .fonte{margin-top:16px}
#lancamentos .fonte .confira{margin-left:4px}

/* para corretores */
.corretores{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:64px;align-items:center}
.corretores-texto{display:grid;gap:26px}
.beneficios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.beneficios li{display:flex;align-items:flex-start;gap:14px;padding:18px;border-radius:20px;background:var(--creme)}
.ben-ico{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:13px;background:rgba(181,138,60,.14);color:var(--acento)}
.beneficios b{display:block;font-size:15px;font-weight:700;letter-spacing:-.01em}
.beneficios small{display:block;margin-top:3px;font-size:13.5px;line-height:1.45;color:var(--t2)}
.materiais{display:grid;gap:16px;justify-items:center}
.miniaturas{display:flex;justify-content:center;align-items:center;width:100%;min-height:380px;padding:20px 10px}
.miniaturas img{position:relative;width:min(36%,230px);height:auto;aspect-ratio:4/5;object-fit:cover;margin:0 -3%;border-radius:18px;
  box-shadow:0 30px 60px -26px rgba(21,21,21,.5);transition:transform .5s var(--mola)}
.miniaturas img:nth-child(1){transform:rotate(-8deg) translateY(18px)}
.miniaturas img:nth-child(2){z-index:1;transform:translateY(-10px) scale(1.06)}
.miniaturas img:nth-child(3){transform:rotate(8deg) translateY(18px)}
.materiais:hover .miniaturas img:nth-child(1){transform:rotate(-11deg) translate(-14px,20px)}
.materiais:hover .miniaturas img:nth-child(3){transform:rotate(11deg) translate(14px,20px)}

/* o chamado final: cartão creme com a malha, as cantoneiras e o foguete grafite */
.chamada{display:grid;justify-items:center;gap:22px;padding:clamp(56px,8vw,104px) clamp(20px,5vw,64px);border-radius:40px;text-align:center;overflow:hidden;
  background:linear-gradient(180deg,#FAF8F3 0%,#F2EEE5 100%);box-shadow:inset 0 1px 0 #FFFFFF,0 40px 80px -56px rgba(21,21,21,.45)}
.chamada .rotulo{justify-content:center}
.chamada .titulo{max-width:16ch}
.chamada .secao-sub{margin-inline:auto}
.chamada .botoes{justify-content:center}
.chamada-foguete{display:block;width:46px;height:105px;color:#151515;margin-bottom:6px}
.chamada-nota{font-size:14px;color:var(--t3)}
.chamada-nota a{color:var(--ouro-escuro);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(138,101,38,.35)}

.rodape{padding-block:0 40px}
.rodape-dentro{display:flex;align-items:center;gap:28px;flex-wrap:wrap;padding:28px 32px;border-radius:32px;background:var(--creme);font-size:14px;color:var(--t2)}
.rodape .simb{width:84px;height:55px}
.rodape p{line-height:1.7}
.rodape .rodape-dir{margin-left:auto;text-align:right}
.rodape a{display:inline-flex;align-items:center;gap:6px;color:var(--ouro-escuro)}
.rodape a .ico{width:16px;height:16px}
.rodape-nav{display:flex;flex-wrap:wrap;gap:8px 22px;width:100%;padding-top:18px;border-top:1px solid var(--linha);font-size:13.5px}
.rodape .rodape-nav a{color:var(--t2)}
.rodape .rodape-nav a:hover{color:var(--t1)}

.zap-flutua{position:fixed;right:18px;bottom:18px;z-index:55;display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--ouro-grad);color:#141414;
  box-shadow:0 18px 40px -14px rgba(181,138,60,.75),inset 0 1px 0 rgba(255,255,255,.5);transform:scale(0);transition:transform .5s var(--mola)}
.zap-flutua .ico{width:26px;height:26px;stroke-width:1.8}
.zap-flutua.visivel{transform:scale(1)}
.zap-flutua:hover{transform:scale(1.07)}

/* as abas do celular (pedido de 14/10/2026, como as do sistema de reservas): fixas no pé da tela, só no celular */
.abas,.abas-mais{display:none}

/* aparecer ao rolar: de baixo, com um quique leve */
.js [data-surge]{opacity:0;transform:translateY(30px)}
.js [data-surge].visivel{opacity:1;transform:none;transition:opacity .8s var(--suave),transform 1s var(--mola)}
.js .servicos [data-surge].visivel,.js .vitrine [data-surge].visivel,.js .beneficios [data-surge].visivel{transition-delay:calc(var(--k,0) * 70ms)}

@keyframes onda{0%{opacity:.85;transform:scale(1)}100%{opacity:0;transform:scale(2.3)}}
@keyframes espera{0%{box-shadow:0 0 0 0 rgba(181,138,60,.55)}100%{box-shadow:0 0 0 18px rgba(181,138,60,0)}}
@keyframes flutuar{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes decolar{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes subir{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:no-preference){
  .pino.ativo .pino-onda{animation:onda 1.8s ease-out infinite;transform-box:fill-box;transform-origin:center}
  .mk.ativo .mk-onda,.marco-ponto::after{animation:onda 2s ease-out infinite}
  .mapa-espera span{animation:espera 1.4s ease-out infinite}
  .flutua.f1{animation:flutuar 6s ease-in-out infinite}
  .flutua.f2{animation:flutuar 7s ease-in-out -2.5s infinite}
  .chamada-foguete{animation:decolar 3.4s ease-in-out infinite}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.if *,.if *::before,.if *::after{transition:none!important;animation:none!important}
  .js [data-surge]{opacity:1;transform:none}}

/* telas menores */
@media (max-width:1180px){
  .servicos{grid-template-columns:repeat(2,minmax(0,1fr))}
  .resultados{grid-template-columns:minmax(0,1fr)}
  .vitrine{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nav-links a{padding:11px 11px}
}
@media (max-width:980px){
  .nav-menu{display:inline-flex}
  .nav-links{display:none;position:absolute;left:0;right:0;top:calc(100% + 8px);flex-direction:column;gap:2px;margin:0;padding:10px;border-radius:26px;
    background:#FFFFFF;box-shadow:0 30px 60px -24px rgba(21,21,21,.45),inset 0 0 0 1px rgba(21,21,21,.05)}
  .nav.aberto .nav-links{display:flex}
  .nav .nav-links a{padding:15px 18px;border-radius:18px;font-size:16px;color:rgba(21,21,21,.72)}
  .nav .nav-links a:hover,.nav .nav-links a.ativo{color:#151515;background:rgba(21,21,21,.06)}
  .estatisticas-linha{grid-template-columns:minmax(0,1fr)}
  .estatisticas-linha .estat{grid-template-columns:calc(var(--n) * 3) minmax(0,1fr);align-items:center}
  .quem-resumo{grid-template-columns:minmax(0,1fr)}
  .quem-resumo .quem-resumo-numeros{grid-template-columns:repeat(3,minmax(0,1fr))}
  .quem-resumo .quem-resumo-numeros li{grid-template-columns:minmax(0,1fr);gap:8px}
  .heroi-conteudo{grid-template-columns:minmax(0,1fr);gap:28px}
  .telemetria{grid-template-columns:repeat(4,minmax(0,1fr))}
  .rede{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"evento evento" "um dois" "plantao plantao"}
  .reservas,.corretores{grid-template-columns:minmax(0,1fr);gap:40px}
  .quem{grid-template-columns:minmax(0,1fr);gap:36px}
  .palco{height:auto;min-height:0;overflow:visible;background:none;box-shadow:none;border-radius:0}
  .mapa-cartao{position:relative;height:520px;border-radius:28px;overflow:hidden;background:var(--creme-fundo);box-shadow:inset 0 0 0 1px rgba(21,21,21,.06)}
  .painel{position:relative;inset:auto;width:auto;margin-top:12px;overflow:visible}
  .painel.vidro{background:var(--creme);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
  .d-dados{background:#FFFFFF}
  .mapa-aviso{left:50%;max-width:calc(100% - 32px)}
  .mapa-vivo .maplibregl-ctrl-bottom-left{max-width:calc(100% - 172px)}
  .mapa-miniatura{left:14px;bottom:14px}
  .detalhe{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
  .d-capa{grid-row:span 3;height:100%;min-height:200px}
}
@media (max-width:720px){
  html{scroll-padding-top:84px}
  .nav{top:10px;gap:8px;padding:6px 6px 6px 14px}
  /* no celular, as abas de baixo abrem as páginas: o menu de cima e o botão flutuante saem */
  .nav .nav-menu,.nav .nav-links,.nav.aberto .nav-links{display:none}
  .nav .nav-zap{margin-left:auto}
  .zap-flutua{display:none}
  .if{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}
  .abas{position:fixed;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:58;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;
    height:64px;padding:5px;border-radius:24px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(20px) saturate(1.2);backdrop-filter:blur(20px) saturate(1.2);
    box-shadow:0 18px 40px -14px rgba(21,21,21,.45),inset 0 0 0 1px rgba(21,21,21,.05)}
  .aba{display:grid;justify-items:center;align-content:center;gap:4px;min-width:0;padding:0;border:0;border-radius:19px;background:none;
    color:rgba(21,21,21,.58);font:600 clamp(9px,2.6vw,10.5px)/1.1 var(--f);letter-spacing:-.015em;text-align:center;transition:background-color .25s,color .25s}
  .aba span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .aba .ico{width:22px;height:22px;stroke-width:1.7}
  .aba.ativo{color:#151515;background:rgba(181,138,60,.15)}
  .aba.ativo .ico{color:var(--ouro-escuro)}
  .abas-mais{position:fixed;left:8px;right:8px;bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:57;display:grid;gap:4px;padding:10px;border-radius:24px;
    background:#FFFFFF;box-shadow:0 26px 60px -20px rgba(21,21,21,.5),inset 0 0 0 1px rgba(21,21,21,.05)}
  .abas-mais a{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:18px;font-size:16px;font-weight:600;color:#151515}
  .abas-mais a.ativo,.abas-mais a:hover{background:rgba(21,21,21,.05)}
  .abas-mais a > .ico{margin-left:auto;width:18px;height:18px;color:var(--t3)}
  .abas-mais-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:rgba(181,138,60,.14);color:var(--ouro-escuro)}
  .abas-mais .botao{margin-top:6px;justify-content:space-between}
  @media (prefers-reduced-motion:no-preference){.abas-mais:not([hidden]){animation:subir .3s var(--suave) both}}
  .quem-resumo .quem-resumo-numeros li{padding:14px 12px 12px}
  .nav-simbolo .simb{width:48px;height:32px}
  .nav .botao{height:44px;padding-left:16px;font-size:13.5px}
  .nav .botao .bola{width:34px;height:34px}
  .heroi{display:block;min-height:0;margin:8px 8px 0;border-radius:28px}
  .heroi-foto{bottom:auto;height:min(100svh,780px);background-position:30% 100%}
  .heroi::before{bottom:auto;height:min(100svh,780px);background:
    linear-gradient(180deg,rgba(10,10,10,.94) 0%,rgba(10,10,10,.82) 40%,rgba(10,10,10,.25) 62%,rgba(10,10,10,0) 74%,rgba(10,10,10,.65) 92%,#151514 100%)}
  .heroi-conteudo{padding-top:108px;padding-bottom:20px}
  .heroi-texto{min-height:calc(min(100svh,780px) - 132px);align-content:start;gap:22px}
  .heroi .titulo{font-size:42px}
  .heroi-sub{font-size:16px}
  .botoes .botao{flex:1 1 auto}
  .botao-ouro{justify-content:space-between}
  .telemetria{grid-template-columns:repeat(2,minmax(0,1fr))}
  .telemetria li{padding:16px}
  .telemetria b{font-size:32px}
  .marco-rotulo span i{display:none}
  .titulo{font-size:40px}
  .secao{padding-block:72px}
  .secao-sub{font-size:16px}
  .quem-corpo p{font-size:16px}
  .ficha-if{gap:18px;padding:22px 18px 16px;border-radius:26px}
  .ficha-numeros{gap:8px}
  .ficha-numeros li{padding:14px 12px 12px;border-radius:16px}
  .ficha-numeros b{font-size:32px}
  .ficha-numeros span{font-size:9.5px;letter-spacing:.12em}
  .ficha-dados{gap:0 14px}
  .servicos{grid-template-columns:minmax(0,1fr);gap:10px}
  .servico{min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ico tit" "ico txt";column-gap:16px;row-gap:4px;padding:20px}
  .servico-num{display:none}
  .servico-topo{display:contents}
  .servico-ico{grid-area:ico}
  .servico h3{grid-area:tit;align-self:center;font-size:17px}
  .servico p{grid-area:txt;font-size:14px}
  .faixa-chamada{border-radius:26px;padding:20px}
  .faixa-chamada .botao{flex:1 1 100%}
  .estat{grid-template-columns:minmax(0,1fr);gap:8px;padding:22px}
  .decolagem{padding:24px 18px 20px}
  .dec{grid-template-columns:84px minmax(0,1fr) 44px;gap:8px;height:42px}
  .rede{grid-template-columns:minmax(0,1fr);grid-template-areas:"evento" "um" "dois" "plantao"}
  .reservas-lista{grid-template-columns:minmax(0,1fr)}
  .flutua.f1{left:4px}
  .flutua.f2{right:4px}
  .vitrine{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:80%;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;margin-inline:-16px;padding:0 16px 30px;scroll-padding-inline:16px;scrollbar-width:none}
  .vitrine::-webkit-scrollbar{display:none}
  .vit{scroll-snap-align:start;border-radius:26px}
  .mapa-cartao{height:460px;border-radius:24px}
  /* no celular, o zoom vira uma fileira no canto de baixo e os créditos (i) ficam ao lado dela: sobra o mapa para os pinos */
  .mapa-zoom{right:12px;bottom:12px;grid-auto-flow:column;gap:6px}
  .mapa-zoom button{width:40px;height:40px}
  .mapa-vivo .maplibregl-ctrl-bottom-left{right:150px;max-width:calc(100% - 162px)}
  .mapa-vivo .maplibregl-ctrl-attrib{margin:0 0 20px 0!important}
  .mapa-miniatura{left:12px;bottom:12px;width:62px;height:62px;border-radius:15px}
  .mm-nome{padding:14px 3px 5px;font-size:10.5px}
  .mapa-legenda{top:12px;right:auto;left:12px;max-width:calc(100% - 24px);padding:8px 11px 7px;border-radius:14px}
  .mapa-legenda ul{gap:4px 10px;font-size:11px}
  .mapa-legenda small{font-size:10px}
  .mapa-aviso{left:12px;top:12px;transform:none;max-width:calc(100% - 24px);flex-wrap:wrap;white-space:normal}
  .mapa-legenda:not([hidden]) ~ .mapa-aviso,.mapa-cartao:has(.mapa-legenda:not([hidden])) .mapa-aviso{top:88px}
  .painel{padding:10px;border-radius:24px}
  .detalhe{display:flex;align-items:stretch}
  .d-capa{grid-row:auto;height:160px;min-height:0}
  .beneficios{grid-template-columns:minmax(0,1fr)}
  .miniaturas{min-height:260px}
  .chamada{border-radius:30px}
  .rodape-dentro{padding:24px 22px;border-radius:26px}
  .rodape .rodape-dir{margin-left:0;text-align:left}
  .mp-coord{display:none}
  .mp-pais{font-size:16px}
  .mp-rio-nome{font-size:15px}
  .mp-foz-nome{font-size:54px}
  .mp-dentro{transform:scale(1.45)}
}
:root{--peso-num:700}

/* ===== a página do sistema (pedido de 16/10/2026): o Reservas Aqui, o sistema que a IF usa com os corretores e o
   empreendedor. Os prints são do sistema; nas telas com pessoas (reservas, propostas, clientes, ranking), a tela foi
   refeita aqui com nomes fictícios, para não expor dados de clientes e corretores */
.nav-vivo{display:inline-block;width:7px;height:7px;margin-left:7px;border-radius:50%;background:#22C55E;vertical-align:2px;box-shadow:0 0 0 3px rgba(34,197,94,.2)}
.ao-vivo{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 13px 0 11px;border-radius:999px;background:rgba(34,197,94,.12);color:#15803D;
  font:700 11.5px/1 var(--f);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.ao-vivo i{position:relative;width:8px;height:8px;border-radius:50%;background:#22C55E}
.ao-vivo i::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid #22C55E;opacity:0}
.escuro .ao-vivo{background:rgba(34,197,94,.16);color:#86EFAC}
@media (prefers-reduced-motion:no-preference){.ao-vivo i::after,.nav-vivo{animation:onda 2s ease-out infinite}.nav-vivo{animation:pulsa 2s ease-out infinite}}
@keyframes pulsa{0%{box-shadow:0 0 0 0 rgba(34,197,94,.5)}100%{box-shadow:0 0 0 8px rgba(34,197,94,0)}}

/* a janela do navegador em volta dos prints */
.janela{position:relative;overflow:hidden;border-radius:22px;background:#FFFFFF;box-shadow:0 0 0 1px rgba(21,21,21,.08),0 50px 90px -50px rgba(21,21,21,.5)}
.janela-barra{display:flex;align-items:center;gap:12px;height:44px;padding:0 16px;background:#F4F2EE;border-bottom:1px solid rgba(21,21,21,.07)}
.janela-barra > span:first-child{display:flex;gap:6px}
.janela-barra > span:first-child i{width:10px;height:10px;border-radius:50%;background:rgba(21,21,21,.16)}
.janela-url{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;height:28px;max-width:420px;margin-inline:auto;padding:0 14px;border-radius:999px;
  background:#FFFFFF;font:600 12px/1 var(--f);color:rgba(21,21,21,.55);white-space:nowrap;overflow:hidden}
.janela-url img{width:18px;height:auto}
.janela-barra .ao-vivo{height:24px;font-size:10px}
.janela > img,.janela-tela img{display:block;width:100%;height:auto}
.legenda-print{margin-top:12px;font-size:12.5px;color:var(--t3)}

/* topo do sistema */
.sis-topo{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:center;margin-bottom:clamp(36px,5vw,60px)}
.sis-topo-texto{display:grid;gap:22px}
.sis-cartao{display:grid;gap:18px;padding:26px;border-radius:30px}
.sis-marca{display:flex;align-items:center;gap:14px}
.sis-marca img{width:64px;height:auto}
.sis-marca b{display:block;font:800 22px/1.05 var(--f-dest);letter-spacing:-.03em}
.sis-marca small{display:block;margin-top:3px;font-size:12.5px;color:var(--t3)}
.sis-marca .ao-vivo{margin-left:auto}
.sis-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sis-kpis li{display:grid;gap:8px;padding:16px 16px 14px;border-radius:18px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(21,21,21,.05)}
.sis-kpis b{white-space:nowrap;font:var(--peso-num) clamp(28px,2.6vw,38px)/.95 var(--f-dest);letter-spacing:-.04em;font-variant-numeric:tabular-nums;
  background:var(--ouro-grad-escuro);-webkit-background-clip:text;background-clip:text;color:transparent}
.sis-kpis b small{font-size:.42em;font-weight:700;letter-spacing:0}
.sis-kpis span{font:600 10.5px/1.35 var(--f);letter-spacing:.14em;text-transform:uppercase;color:var(--t3)}
.sis-nota{font-size:12px;color:var(--t3)}

/* blocos com texto de um lado e a demonstração do outro */
.sis-bloco{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,5vw,72px);align-items:center}
.sis-bloco.inverte{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.sis-bloco.inverte > :first-child{order:2}
.sis-texto{display:grid;gap:20px;align-content:start}
.passos{display:grid;gap:10px;counter-reset:p}
.passos li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:16px 18px;border-radius:20px;background:var(--creme)}
.passos li::before{counter-increment:p;content:counter(p);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#151515;color:var(--ouro-claro);font:800 14px/1 var(--f)}
.passos b{display:block;font-size:15.5px;font-weight:700;letter-spacing:-.01em}
.passos small{display:block;margin-top:3px;font-size:14px;line-height:1.5;color:var(--t2)}

/* a demonstração da localização: o satélite do Real Village e o ponto azul do corretor andando pelas ruas */
.gps{position:relative;overflow:hidden;border-radius:28px;background:#1F2A1C;box-shadow:0 50px 90px -46px rgba(21,21,21,.6)}
.gps-topo{position:absolute;z-index:3;left:14px;right:14px;top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.gps-topo span{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.94);color:#151515;font:700 12.5px/1 var(--f);
  box-shadow:0 10px 24px -10px rgba(0,0,0,.5)}
.gps-topo .ico{width:16px;height:16px;color:#2563EB}
.gps-mapa{position:relative;aspect-ratio:780/600}
.gps-mapa > img{position:absolute;inset:0;width:100%;height:100%;display:block}
.gps-voce{position:absolute;z-index:2;left:0;top:0;width:0;height:0}
.gps-voce::before{content:"";position:absolute;left:-22px;top:-22px;width:44px;height:44px;border-radius:50%;background:rgba(37,99,235,.22);border:1px solid rgba(37,99,235,.45)}
.gps-voce::after{content:"";position:absolute;left:-8px;top:-8px;width:16px;height:16px;border-radius:50%;background:#2563EB;box-shadow:0 0 0 3px #FFFFFF,0 4px 10px rgba(0,0,0,.5)}
.gps-ficha{position:absolute;z-index:3;left:14px;right:14px;bottom:14px;display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:20px;background:rgba(255,255,255,.96);color:#151515;
  box-shadow:0 18px 40px -14px rgba(0,0,0,.6);transition:transform .35s var(--mola)}
.gps-ficha.troca{transform:scale(1.025)}
.gps-ficha-ico{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:14px;background:#EFF6FF;color:#2563EB}
.gps-ficha-ico .ico{width:20px;height:20px}
.gps-ficha small{display:block;font:600 10.5px/1.3 var(--f);letter-spacing:.14em;text-transform:uppercase;color:rgba(21,21,21,.5)}
.gps-ficha b{display:block;font-size:17px;font-weight:800;letter-spacing:-.02em}
.gps-ficha em{display:block;font-style:normal;font-size:12.5px;color:rgba(21,21,21,.62)}
.gps-ficha .pl{margin-left:auto}

/* os rótulos de situação, nas cores do sistema */
.pl{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font:700 11.5px/1 var(--f);white-space:nowrap;background:#F1F5F9;color:#475569}
.pl::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.pl[data-s="d"]{background:#ECFDF5;color:#059669}
.pl[data-s="v"]{background:#FEF2F2;color:#DC2626}
.pl[data-s="r"]{background:#FEFCE8;color:#A16207}
.pl[data-s="p"]{background:#FFF7ED;color:#EA580C}
.pl[data-s="b"]{background:#F1F5F9;color:#64748B}
.pl[data-s="c"]{background:#EFF6FF;color:#2563EB}
.pl[data-s="ok"]{background:#ECFDF5;color:#059669}
.pl[data-s="pend"]{background:#FFFBEB;color:#B45309}
.pl[data-s="ia"]{background:#F5F3FF;color:#7C3AED}
.pl.sem::before{display:none}
.legenda-lotes{display:flex;flex-wrap:wrap;gap:8px}

/* as abas dos prints e o mapa em alta */
.sis-abas{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.sis-aba{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:0;border-radius:999px;background:rgba(21,21,21,.05);color:rgba(21,21,21,.72);
  font:600 13.5px/1 var(--f);transition:background-color .25s,color .25s}
.sis-aba:hover{background:rgba(21,21,21,.09);color:#151515}
.sis-aba[aria-selected="true"]{background:#151515;color:var(--creme)}
.sis-aba .ico{width:16px;height:16px}
.sis-paineis{position:relative;display:grid}
.sis-paineis > img{display:block;width:100%;height:auto}
.sis-paineis > *{grid-area:1/1;transition:opacity .5s var(--suave)}
.sis-paineis > [hidden]{display:block!important;opacity:0;pointer-events:none;visibility:hidden}
.zoom-caixa{position:relative;height:min(640px,72svh);overflow:auto;border-radius:0 0 22px 22px;background:#FBFBFA;cursor:grab;overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-x pan-y}
.zoom-caixa.arrastando{cursor:grabbing}
.zoom-caixa img{display:block;max-width:none;height:auto;margin:auto;user-select:none;-webkit-user-drag:none}
.zoom-botoes{position:absolute;z-index:3;right:14px;bottom:14px;display:flex;gap:6px}
.zoom-botoes button{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:#151515;color:var(--creme);box-shadow:0 10px 22px -8px rgba(0,0,0,.5)}
.zoom-botoes button .ico{width:18px;height:18px}
.zoom-dica{position:absolute;z-index:3;left:14px;bottom:14px;padding:8px 12px;border-radius:12px;background:rgba(21,21,21,.82);color:var(--creme);font:600 12px/1.3 var(--f);pointer-events:none;transition:opacity .4s}
.zoom-dica.some{opacity:0}
.janela .zoom-paineis{position:relative}

/* o processo: os passos à esquerda e a tela do sistema à direita */
.processo{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,56px);align-items:start}
.etapas{display:grid;gap:8px}
.etapa{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;width:100%;padding:16px 18px;border:0;border-radius:20px;background:transparent;text-align:left;
  transition:background-color .3s}
.etapa:hover{background:rgba(21,21,21,.035)}
.etapa[aria-selected="true"]{background:var(--creme);box-shadow:inset 0 1px 0 #FFFFFF,var(--sombra)}
.etapa-num{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:rgba(21,21,21,.06);color:rgba(21,21,21,.6);font:800 14px/1 var(--f);transition:background-color .3s,color .3s}
.etapa[aria-selected="true"] .etapa-num{background:#151515;color:var(--ouro-claro)}
.etapa b{display:block;font-size:16px;font-weight:700;letter-spacing:-.015em}
.etapa small{display:block;margin-top:4px;font-size:13.5px;line-height:1.5;color:var(--t2)}
.etapa .barra-tempo{position:absolute;left:18px;right:18px;bottom:8px;height:2px;border-radius:2px;background:rgba(21,21,21,.06);overflow:hidden;opacity:0}
.etapa[aria-selected="true"] .barra-tempo{opacity:1}
.etapa .barra-tempo i{display:block;height:100%;width:0;background:var(--ouro)}
.processo.rodando .etapa[aria-selected="true"] .barra-tempo i{animation:enche var(--tempo,7s) linear forwards}
@keyframes enche{to{width:100%}}
.processo-tela{position:sticky;top:110px}

/* ===== as telas refeitas do sistema (nomes fictícios), no visual do Reservas Aqui ===== */
.sx{--sx-t1:#0F172A;--sx-t2:#475569;--sx-t3:#94A3B8;--sx-linha:#E2E8F0;color:var(--sx-t1);font:400 13px/1.45 var(--f);background:#F8FAFC;text-align:left}
.sx-app{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:520px}
.sx-lado{display:flex;flex-direction:column;gap:2px;padding:16px 10px;background:#FFFFFF;border-right:1px solid var(--sx-linha)}
.sx-lado img{width:62px;height:auto;margin:2px auto 14px}
.sx-lado span{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:9px;font-size:12px;color:var(--sx-t2)}
.sx-lado span.on{color:#2563EB;background:#EFF6FF;font-weight:600}
.sx-lado .ico{width:15px;height:15px}
.sx-corpo{min-width:0;padding:20px}
.sx-tela{display:none}
.sx-tela.on{display:block}
@media (prefers-reduced-motion:no-preference){.sx-tela.on{animation:entrar .45s var(--suave) both}}
.sx h4{margin:0;font-size:19px;font-weight:600;letter-spacing:-.02em}
.sx-sub{margin:2px 0 14px;font-size:12px;color:var(--sx-t2)}
.sx-card{padding:14px;border-radius:12px;background:#FFFFFF;box-shadow:0 0 0 1px var(--sx-linha),0 6px 16px -12px rgba(15,23,42,.25)}
.sx-card + .sx-card{margin-top:10px}
.sx-alerta{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;margin-bottom:12px;border-radius:10px;background:#FFFBEB;box-shadow:inset 0 0 0 1px #FCD34D;color:#B45309;font-size:12px}
.sx-alerta b{display:block;font-weight:600}
.sx-alerta .ico{width:16px;height:16px;flex:none;margin-top:1px}
.sx-reserva{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px}
.sx-relogio{display:grid;place-items:center;align-content:center;gap:4px;border-radius:10px;background:#FFF7ED;color:#D97706;font:700 13px/1 ui-monospace,Menlo,monospace}
.sx-relogio .ico{width:18px;height:18px}
.sx-relogio.calmo{background:#F8FAFC;color:var(--sx-t1)}
.sx-linha1{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px;font-weight:600}
.sx-mono{font:500 11.5px/1.4 ui-monospace,Menlo,monospace;color:var(--sx-t2)}
.sx-pessoa{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:12px;color:var(--sx-t3)}
.sx-pessoa b{font-weight:500;color:var(--sx-t1)}
.sx-pessoa .ico{width:13px;height:13px}
.sx-botoes{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.sx-bt{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border-radius:8px;background:#FFFFFF;box-shadow:inset 0 0 0 1px var(--sx-linha);font-size:12px;font-weight:500;color:var(--sx-t1)}
.sx-bt .ico{width:14px;height:14px}
.sx-bt.esc{background:#0F172A;color:#FFFFFF;box-shadow:none}
.sx-bt.ia{color:#7C3AED;box-shadow:inset 0 0 0 1px #C4B5FD}
.sx-bt.verm{color:#DC2626;background:none;box-shadow:none}
.sx-fila{margin-top:12px;padding:10px 12px;border-radius:10px;background:#F8FAFC;box-shadow:inset 0 0 0 1px var(--sx-linha)}
.sx-fila p{margin:0 0 6px;font-size:11.5px;font-weight:600;color:#2563EB}
.sx-fila li{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:11.5px;color:var(--sx-t2)}
.sx-fila li b{font-weight:500;color:var(--sx-t1)}
.sx-fila li span{margin-left:auto;font-size:11px;color:var(--sx-t3)}
.sx-grade{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px}
.sx-grade.duas{grid-template-columns:repeat(2,minmax(0,1fr))}
.sx-grade small{display:block;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--sx-t3)}
.sx-grade b{display:block;font-weight:500;font-size:12.5px}
.sx-grade b.m{font:500 12px/1.4 ui-monospace,Menlo,monospace}
.sx-sep{height:1px;margin:12px 0;background:var(--sx-linha)}
.sx-topo-acao{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.sx-ia{padding:12px;border-radius:10px;background:#F8FAFC;box-shadow:inset 0 0 0 1px var(--sx-linha);font-size:12px;color:var(--sx-t2)}
.sx-ia p{margin:0 0 8px}
.sx-ia p:first-child{font-weight:700;color:var(--sx-t1)}
.sx-docs{display:grid;gap:8px;margin-top:10px}
.sx-doc{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:#F0FDF4;box-shadow:inset 0 0 0 1px #86EFAC}
.sx-doc .ico{width:16px;height:16px;color:#059669;flex:none}
.sx-doc b{font-weight:500;font-size:12.5px}
.sx-doc span{display:block;font-size:11px;color:var(--sx-t3)}
.sx-doc .pl{margin-left:auto}
.sx-kanban{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.sx-col{display:grid;gap:8px;align-content:start;min-width:0}
.sx-col-topo{padding:9px 10px;border-radius:10px;background:#FFFFFF;box-shadow:0 0 0 1px var(--sx-linha)}
.sx-col-topo b{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600}
.sx-col-topo b i{width:7px;height:7px;border-radius:50%;background:var(--c,#94A3B8)}
.sx-col-topo b span{margin-left:auto;padding:1px 7px;border-radius:999px;background:#F1F5F9;font:600 11px/1.5 ui-monospace,Menlo,monospace}
.sx-col-topo small{display:block;margin-top:2px;font-size:10.5px;color:var(--sx-t3)}
.sx-vazio{padding:18px 0;text-align:center;font-size:11.5px;color:var(--sx-t3)}
.sx-mini{padding:10px;border-radius:10px;background:#FFFFFF;box-shadow:0 0 0 1px var(--sx-linha)}
.sx-mini .sx-linha1{font-size:12.5px}
.sx-mini .pl{height:20px;margin-left:auto;font-size:10.5px;padding:0 7px}
.sx-mini p{margin:4px 0 0;font-size:11px;line-height:1.35;color:var(--sx-t2)}
.sx-mini p + p{color:var(--sx-t3)}
.sx-mini div:last-child{display:flex;justify-content:space-between;margin-top:6px;font-size:11px;font-weight:600}
.sx-mini div:last-child span{font-weight:400;color:var(--sx-t3)}
.sx-anexo{display:flex;align-items:center;gap:10px;padding:12px;border-radius:10px;background:#FFFFFF;box-shadow:inset 0 0 0 1px var(--sx-linha)}
.sx-anexo + .sx-anexo{margin-top:8px}
.sx-anexo .ico{width:18px;height:18px;color:var(--sx-t2);flex:none}
.sx-anexo b{font-weight:500}
.sx-anexo span{display:block;font-size:11px;color:var(--sx-t3)}
.sx-anexo .pl{margin-left:auto}
.sx-titulo-sec{margin:14px 0 8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sx-t2)}
.sx-fim{display:flex;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;border-radius:12px;background:#ECFDF5;color:#065F46;font-size:12.5px}
.sx-fim .ico{width:20px;height:20px;flex:none}

/* o ranking e os desafios */
.ranking{padding:20px;border-radius:26px}
.rk-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.rk-topo b{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:800;letter-spacing:-.02em}
.rk-topo b .ico{color:var(--ouro)}
.rk-topo small{display:block;margin-top:2px;font-size:12px;color:#059669}
.rk-podio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end}
.rk-p{display:grid;justify-items:center;gap:6px;padding:16px 10px 14px;border-radius:18px;background:#FFFFFF;text-align:center;box-shadow:inset 0 0 0 1px rgba(21,21,21,.06)}
.rk-p.um{padding-top:24px;box-shadow:inset 0 0 0 2px var(--ouro);background:linear-gradient(180deg,#FFFBF2,#FFFFFF)}
.rk-p .rk-av{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#151515;color:var(--ouro-claro);font:800 16px/1 var(--f)}
.rk-p.um .rk-av{width:62px;height:62px;background:var(--ouro-grad);color:#151515}
.rk-p .rk-pos{font:800 20px/1 var(--f-dest);color:var(--ouro-escuro)}
.rk-p b{font-size:12.5px;font-weight:700;line-height:1.2}
.rk-p span{font-size:10.5px;color:var(--t3);line-height:1.25}
.rk-p strong{font:800 19px/1 var(--f-dest);letter-spacing:-.03em}
.rk-p strong small{font-size:11px;font-weight:600}
.rk-lista{margin-top:10px;display:grid;gap:4px}
.rk-lista li{display:grid;grid-template-columns:28px 30px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border-radius:12px;background:#FFFFFF;font-size:12.5px}
.rk-lista li > span:first-child{color:var(--t3);font-weight:600}
.rk-lista i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#E8E3D8;font-style:normal;font-size:10.5px;font-weight:800}
.rk-lista b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rk-lista b small{display:block;font-weight:400;font-size:11px;color:var(--t3)}
.rk-lista em{font:600 12px/1 ui-monospace,Menlo,monospace;font-style:normal}
.rede-sis{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:16px;align-items:start}
.desafio-cartao{display:grid;gap:12px;padding:12px;border-radius:26px}
.desafio-cartao img{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 0 0 1px rgba(21,21,21,.06)}
.desafio-cartao p{padding:0 6px 4px;font-size:13.5px;line-height:1.5;color:var(--t2)}
.desafio-cartao p b{color:var(--t1)}

/* gestão do empreendedor */
.gestao-grade{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:16px;margin-top:16px;align-items:start}
.gestao-lista{display:grid;gap:10px}
.gestao-lista li{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border-radius:20px;background:var(--creme)}
.gestao-lista b{display:block;font-size:15px;font-weight:700}
.gestao-lista small{display:block;margin-top:2px;font-size:13.5px;line-height:1.45;color:var(--t2)}
.bilhao{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:16px;padding:22px 26px;border-radius:26px;background:linear-gradient(165deg,#1E1D1B,#121211);color:var(--creme)}
.bilhao b{font:var(--peso-num) clamp(40px,4.4vw,60px)/1 var(--f-dest);letter-spacing:-.04em;background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.bilhao p{flex:1;min-width:240px;font-size:15px;line-height:1.55;color:rgba(247,245,240,.78)}
.bilhao p strong{color:var(--creme)}

/* a chamada do sistema no início */
.sis-chamada{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,4.5vw,64px);align-items:center}
.sis-chamada-texto{display:grid;gap:20px}
.sis-chamada .janela{transform:perspective(1600px) rotateY(-6deg) rotateX(2deg);transition:transform .8s var(--suave)}
.sis-chamada:hover .janela{transform:none}
.mini-kpis{display:flex;flex-wrap:wrap;gap:8px}
.mini-kpis li{display:inline-flex;align-items:baseline;gap:6px;padding:10px 14px;border-radius:14px;background:var(--creme);font-size:13px;color:var(--t2)}
.mini-kpis b{font-size:16px;font-weight:800;color:var(--t1);letter-spacing:-.02em}

@media (max-width:1180px){
  .nav-links a{padding:11px 9px;font-size:13.5px}
}
@media (max-width:980px){
  .sis-topo,.sis-bloco,.sis-bloco.inverte,.processo,.rede-sis,.gestao-grade,.sis-chamada{grid-template-columns:minmax(0,1fr)}
  .sis-bloco.inverte > :first-child{order:0}
  .processo-tela{position:relative;top:0}
  .etapas{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  .etapa{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center;padding:12px 6px 16px}
  .etapa small{display:none}
  .etapa b{font-size:12.5px}
  .sis-chamada .janela{transform:none}
}
@media (max-width:720px){
  .sx-app{grid-template-columns:minmax(0,1fr);min-height:0}
  .sx-lado{display:none}
  .sx-corpo{padding:14px}
  .sx-reserva{grid-template-columns:minmax(0,1fr)}
  .sx-relogio{grid-auto-flow:column;justify-content:start;padding:8px 10px}
  .sx-grade{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sx-kanban{grid-template-columns:repeat(4,minmax(170px,1fr))}
  .etapa-num{width:32px;height:32px;font-size:13px}
  .etapa b{font-size:11px}
  .janela{border-radius:18px}
  .janela-barra{height:38px;padding:0 12px}
  .janela-barra > span:first-child{display:none}
  .zoom-caixa{height:62svh}
  .gps{border-radius:22px}
  .gps-topo{position:static;padding:12px 12px 0}
  .gps-ficha{position:static;margin:0 12px 12px}
  .gps-ficha b{font-size:15px}
  .rk-podio{gap:6px}
  .rk-p{padding:12px 6px}
  .rk-av{width:42px;height:42px;font-size:13px}
  .rk-p.um .rk-av{width:50px;height:50px}
  .rk-p strong{font-size:16px}
  .sis-kpis b{font-size:24px}
  .sis-kpis span{font-size:9.5px;letter-spacing:.1em}
  .zoom-dica{display:none}
  .rk-p .rk-av{width:42px;height:42px;font-size:13px}
}

/* a ficha de reserva (print do sistema) sobre o creme */
.reserva-print{position:relative;display:grid;justify-items:center;gap:14px;padding:clamp(24px,4vw,48px) 16px;border-radius:32px;background:linear-gradient(165deg,#FBFAF7,#F1EDE4);
  box-shadow:inset 0 1px 0 #FFFFFF,var(--sombra)}
.reserva-print img{display:block;width:min(100%,400px);height:auto;border-radius:20px;box-shadow:0 0 0 1px rgba(21,21,21,.06),0 40px 70px -36px rgba(21,21,21,.55)}
.reserva-print .flutua.f1{left:max(8px,calc(50% - 280px));top:22%}
.reserva-print .flutua.f2{right:max(8px,calc(50% - 280px));top:62%}
.reserva-print .legenda-print{margin:0;text-align:center}

/* o satélite que reserva: toque no lote abre a ficha de reserva do sistema (demonstração) */
.gps-mapa{cursor:pointer}
.gps-dica{animation:none}
@media (prefers-reduced-motion:no-preference){.gps-dica{animation:flutuar 4s ease-in-out infinite}}
.gps-reservar{height:32px;margin-left:8px;padding:0 14px;border:0;border-radius:10px;background:#0F172A;color:#FFFFFF;font:600 12.5px/1 var(--f);white-space:nowrap}
.gps-reservar:hover{background:#1E293B}
.gps-ficha .pl{margin-left:auto}
.gps-pino{position:absolute;z-index:2;width:0;height:0}
.gps-pino::before{content:"";position:absolute;left:-13px;top:-13px;width:26px;height:26px;border-radius:50%;border:2.5px solid #FFFFFF;box-shadow:0 0 0 2px #0F172A,0 6px 14px rgba(0,0,0,.5)}
.gps-pino.reservado::before{background:rgba(250,204,21,.85)}
.gps-pino::after{content:attr(data-nome);position:absolute;left:18px;top:-14px;padding:5px 9px;border-radius:9px;background:#FFFFFF;color:#0F172A;font:700 11.5px/1.2 var(--f);white-space:nowrap;
  box-shadow:0 8px 18px -6px rgba(0,0,0,.5)}
.gps-pino:not([data-nome])::after{display:none}
.rz-fundo{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:16px;background:rgba(15,23,42,.42);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
@media (prefers-reduced-motion:no-preference){.rz-fundo:not([hidden]) .rz{animation:entrar .35s var(--suave) both}}
.rz{width:min(420px,100%);max-height:calc(100svh - 32px);overflow:auto;border-radius:20px;background:#FFFFFF;box-shadow:0 40px 80px -30px rgba(0,0,0,.55)}
.rz-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:18px 18px 14px;background:#F8FAFC;border-bottom:1px solid var(--sx-linha)}
.rz-topo h4{display:inline;margin-right:8px;font-size:17px}
.rz-pls{display:inline-flex;gap:6px;vertical-align:2px}
.rz-x{display:grid;place-items:center;width:34px;height:34px;flex:none;border:0;border-radius:10px;background:none;color:var(--sx-t2)}
.rz-x:hover{background:#EEF2F7}
.rz-corpo{display:grid;gap:12px;padding:16px 18px}
.rz-pix{padding:10px 12px;border-radius:10px;background:#EEF2FF;box-shadow:inset 0 0 0 1.5px #3B82F6}
.rz-pix small,.rz-duas small,.rz-cond small{display:block;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#2563EB}
.rz-pix b{font:600 13px/1.6 ui-monospace,Menlo,monospace}
.rz-duas{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rz-duas > div{padding:10px 12px;border-radius:10px;background:#F8FAFC}
.rz-duas small,.rz-cond small{color:var(--sx-t3)}
.rz-duas b{font:600 13px/1.6 ui-monospace,Menlo,monospace}
.rz-cond{padding:10px 12px;border-radius:10px;background:#F8FAFC}
.rz-cond p{display:flex;justify-content:space-between;gap:10px;margin:6px 0 0;font-size:12.5px}
.rz-cond p span{color:var(--sx-t2)}
.rz-cond p b{font-weight:500}
.rz-cliente{display:grid;gap:8px;padding:12px;border-radius:12px;box-shadow:0 0 0 1px var(--sx-linha),0 6px 16px -12px rgba(15,23,42,.25)}
.rz-cliente label{font-size:12px;color:var(--sx-t2)}
.rz-busca{display:flex;align-items:center;gap:8px;height:42px;padding:0 12px;border-radius:10px;box-shadow:inset 0 0 0 1px #CBD5E1;color:var(--sx-t3)}
.rz-busca:focus-within{box-shadow:inset 0 0 0 2px #3B82F6}
.rz-busca .ico{width:16px;height:16px}
.rz-busca input{flex:1;min-width:0;height:100%;border:0;outline:0;background:none;font:500 14px/1 var(--f);color:var(--sx-t1)}
.rz-aviso{font-size:11.5px;color:var(--sx-t3)}
.rz-cliente.erro .rz-aviso{color:#DC2626}
.rz-botoes{display:flex;justify-content:flex-end;gap:8px}
.rz-botoes .sx-bt{height:38px;padding:0 16px;border:0;font-size:13px;cursor:pointer}
.rz-ok:disabled{background:#94A3B8;cursor:not-allowed}
.rz-feito{justify-items:center;text-align:center;padding-top:24px}
.rz-check{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#FEF9C3;color:#A16207}
.rz-check .ico{width:28px;height:28px;stroke-width:2.2}
.rz-feito > b{font-size:19px;font-weight:700}
.rz-feito-txt{margin:0;font-size:14px}
.rz-feito-sub{margin:0;font-size:12.5px;color:var(--sx-t2);max-width:32ch}
.rz-cron{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;background:#FFF7ED;color:#D97706;font:700 16px/1 ui-monospace,Menlo,monospace}
.rz-cron .ico{width:18px;height:18px}
.rz-feito .rz-botoes{justify-content:center;width:100%}
.rz-nota{margin:0;padding:0 18px 16px;font-size:11px;color:var(--sx-t3)}
.rz-bloq{padding:12px;border-radius:12px;background:#FEF2F2;color:#B91C1C;font-size:12.5px}
@media (max-width:720px){.gps-reservar{height:30px;padding:0 10px}.gps-ficha{flex-wrap:wrap}.gps-dica{display:none!important}}
.if .rz-busca input:focus-visible{outline:none}

/* o vídeo de drone de fundo na abertura: entra por cima da foto quando começa a tocar; o marco do Real Village sai */
.heroi-video{position:absolute;inset:0;z-index:-3;display:block;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s var(--suave);pointer-events:none}
.heroi.com-video .heroi-video{opacity:1;filter:brightness(.78) saturate(1.05)}
.heroi.com-video .marco{display:none!important}
@media (max-width:720px){.heroi-video{bottom:auto;height:min(100svh,780px);object-position:30% 50%}}

.if{--f-heroi:url("img/heroi.jpg");--f-jardim-nova-italia:url("img/foto-jardim-nova-italia.jpg");--f-bem-viver:url("img/foto-bem-viver.jpg");--f-ecoparque:url("img/foto-ecoparque.jpg");--f-estancia-legendaria:url("img/foto-estancia-legendaria.jpg");--f-vila-rossato:url("img/foto-vila-rossato.jpg");--f-villa-bella:url("img/foto-villa-bella.jpg");--f-real-village:url("img/foto-real-village.jpg");--l-jardim-nova-italia:url("img/logo-jardim-nova-italia.png");--l-bem-viver:url("img/logo-bem-viver.png");--l-ecoparque:url("img/logo-ecoparque.png");--l-estancia-legendaria:url("img/logo-estancia-legendaria.png");--l-villa-bella:url("img/logo-villa-bella.png");--l-real-village:url("img/logo-real-village.png");--simb-claro:url("img/simbolo-if-claro.svg");--simb-escuro:url("img/simbolo-if-escuro.svg");--mm-mapa:url("img/miniatura-mapa.svg")}
